:root {
  --block-section-pad: 110px;
  --section-padding: 110px;
  --content-padding: 40px;

  --gradient-luxe: linear-gradient(
    135deg,
    hsl(36 30% 97%) 0%,
    hsl(32 22% 92%) 50%,
    hsl(35 30% 88%) 100%
  );
  --gradient-ink: linear-gradient(
    180deg,
    hsl(270 10% 8%) 0%,
    hsl(290 14% 14%) 100%
  );
  --gradient-gold: linear-gradient(
    135deg,
    hsl(35 50% 75%) 0%,
    hsl(35 42% 60%) 50%,
    hsl(28 40% 52%) 100%
  );

  --gradient-gold-hover: linear-gradient(
    135deg,
    hsl(28 40% 52%) 0%,
    hsl(35 42% 60%) 50%,
    hsl(35 50% 75%) 100%
  );

  --gradient-veil: linear-gradient(
    180deg,
    hsl(36 30% 97% / 0) 0%,
    hsl(36 30% 97% / 0.85) 60%,
    hsl(36 30% 97%) 100%
  );
  --shadow-soft:
    0 1px 2px hsl(270 10% 8% / 0.04), 0 12px 40px -12px hsl(290 12% 30% / 0.12);
  --shadow-elevated: 0 30px 80px -30px hsl(290 14% 18% / 0.25);
  --shadow-gold: 0 20px 60px -20px hsl(35 42% 50% / 0.35);
  --transition-elegant: cubic-bezier(0.22, 1, 0.36, 1);
}

@media (max-width: 767px) {
  :root {
    --section-padding: 70px;
    --block-section-pad: 70px;
    --content-padding: 30px;
  }
}

/*Colors*/

.bg-gradient-luxe {
  background: var(--gradient-luxe);
}

.bg-gradient-ink {
  background: var(--gradient-ink);
}

.bg-gradient-gold {
  background: var(--gradient-gold);
}

.bg-gradient-veil {
  background: var(--gradient-veil);
}

.color-gold {
  color: var(--e-global-color-644d5a5) !important;
}

/*Animations*/

/*Font styles*/

.font-italic {
  font-style: italic !important;
}

/*sections*/

.gpc-c-section {
  padding: var(--block-section-pad) var(--content-padding) !important;
}

.gpc-c-section--top {
  padding: var(--block-section-pad) var(--content-padding) 0
    var(--content-padding) !important;
}

.ibc-section-top {
  padding-top: var(--section-padding) !important;
}

.ibc-section-bot {
  padding-bottom: var(--section-padding) !important;
}

.ibc-section {
  padding-top: var(--section-padding) !important;
  padding-bottom: var(--section-padding) !important;
}

/*Buttons*/

.gpc-btn-gradient-gold .elementor-button {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid transparent !important;
  background: var(--gradient-gold) !important;
  background-image: var(--gradient-gold) !important;
  transition:
    color 0.5s var(--transition-elegant),
    border-color 0.5s var(--transition-elegant),
    box-shadow 0.5s var(--transition-elegant),
    background 0.5s var(--transition-elegant) !important;
}

/* Overlay hover */
.gpc-btn-gradient-gold .elementor-button::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--gradient-gold-hover) !important;
  background-image: var(--gradient-gold) !important;
  opacity: 0 !important;
  transition: opacity 0.5s var(--transition-elegant) !important;
  z-index: 0 !important;
}

.gpc-btn-gradient-gold .elementor-button:hover::before {
  opacity: 1 !important;
}

.gpc-btn-gradient-gold .elementor-button:hover {
  border-color: transparent !important;
  box-shadow: var(--shadow-gold) !important;
}

/* Garantir que o conteúdo fica acima do overlay */
.gpc-btn-gradient-gold .elementor-button-content-wrapper,
.gpc-btn-gradient-gold .elementor-button-text,
.gpc-btn-gradient-gold .elementor-button-icon {
  position: relative !important;
  z-index: 1 !important;
}

/* Animação do ícone */
.gpc-btn-gradient-gold .elementor-button-icon {
  transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.gpc-btn-gradient-gold .elementor-button:hover .elementor-button-icon {
  transform: translateX(5px) !important;
}

.gpc-btn-outline-dark .elementor-button {
  position: relative;
  overflow: hidden;
}

.gpc-btn-outline-dark .elementor-button {
  border: 1px solid var(--e-global-color-2f70507);
  background-color: transparent;
  transition:
    background 500ms ease-out,
    color 500ms ease-out;
}

.gpc-btn-outline-dark .elementor-button:hover {
  background-color: var(--e-global-color-2f70507);
}

.gpc-btn-outline-dark .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  background: linear-gradient(
    to right,
    transparent,
    rgba(255, 255, 255, 0.1),
    transparent
  );
  transition: transform 1000ms ease-out;
}

.gpc-btn-outline-dark .elementor-button:hover::before {
  transform: translateX(100%);
}

/*Header*/

.gpc-header-menu {
  position: relative;
  background-color: var(--e-global-color-609125c);
}

.gpc-header-menu.is-sticky {
  position: fixed !important;
  top: 0;
  left: 0;
  z-index: 999;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  backdrop-filter: saturate(180%) blur(20px);
  width: 100%;
  box-shadow: 0px 4px 40px 1px rgba(0, 0, 0, 0.1);
}

.gpc-mobile-menu .elementor-nav-menu--dropdown .elementor-sub-item {
  font-size: 12px !important;
  font-family: var(--e-global-typography-bc819cc-font-family) !important;
  font-weight: 500 !important;
  letter-spacing: 1px !important;
  padding: 7px 0 7px 20px !important;
  text-transform: uppercase !important;
}

/*Custom widgets*/

@media (min-width: 992px) {
  .gpc-hb {
    border-left: 1px solid var(--e-global-color-2f70507);
  }
}

@media (max-width: 767px) {
  .gpc-hb {
    border-top: 1px solid var(--e-global-color-2f70507);
  }
}

@media (min-width: 767px) {
  .ibc-metodo .tad-desc {
    max-width: 550px;
  }
}

.ibc-metodo-card:hover .elementor-divider__text {
  color: var(--e-global-color-644d5a5) !important;
}

@media (min-width: 767px) {
  .gpc-lb {
    border-left: 1px solid var(--e-global-color-2f70507);
  }
}
.gpc-bb {
  border-bottom: 1px solid var(--e-global-color-2f70507);
}

@media (max-width: 767px) {
  .gpc-bbm {
    border-bottom: 1px solid var(--e-global-color-2f70507);
  }
}

.gpc-check-list ul,
.gpc-times-list ul,
.gpc-line-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.gpc-check-list ul li,
.gpc-times-list ul li,
.gpc-line-list ul li {
  position: relative;
  margin-bottom: 15px;
}

.gpc-line-list ul li {
  padding-left: 40px;
}

.gpc-check-list ul li,
.gpc-times-list ul li {
  padding-left: 25px;
}

.gpc-line-list ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 20px;
  height: 1px;
  background-color: #c7a27a;
}

.gpc-check-list ul li::before,
.gpc-times-list ul li::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 1px;
  color: var(--e-global-color-644d5a5);
}

.gpc-check-list ul li::before {
  content: "\f00c";
}

.gpc-times-list ul li::before {
  content: "\f00d";
}

.gpc-tad-counter .elementor-widget-container ol {
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: tad-counter;
}

.gpc-tad-counter .elementor-widget-container ol li {
  counter-increment: tad-counter;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 14px 0;
}

.gpc-tad-counter .elementor-widget-container ol li:last-child {
  border-bottom: none;
}

.gpc-tad-counter .elementor-widget-container ol li::before {
  content: counter(tad-counter, decimal-leading-zero);
  font-size: 25px;
  font-weight: 400;
  font-family: var(--e-global-typography-70c76f6-font-family);
  color: var(--e-global-color-3344475);
  letter-spacing: 0.04em;
  min-width: 20px;
  line-height: 1;
  flex-shrink: 0;
}

.gpc-testimonial-card .lucide-quote {
  stroke: var(--e-global-color-644d5a5);
}

.swiper-slide:not(.swiper-slide-active) .gpc-testimonial-card {
  border-left: 1px solid var(--e-global-color-2f70507) !important;
}

/**  Footer **/

/*Start Footer*/

.site-footer .elementor-tab-content {
  display: block !important;
}

.site-footer .elementor-toggle-item {
  pointer-events: none;
}

.site-footer .elementor-toggle-icon {
  display: none !important;
}

@media (max-width: 767px) {
  .site-footer .elementor-toggle-item {
    pointer-events: auto;
  }

  .site-footer .elementor-toggle-title {
    pointer-events: auto;
    cursor: pointer;
  }

  .site-footer .elementor-toggle-icon {
    display: flex !important;
  }

  .site-footer .elementor-tab-content {
    display: none !important;
  }

  .site-footer .elementor-tab-title.elementor-active + .elementor-tab-content {
    display: block !important;
  }
}

.site-footer .elementor-toggle-title {
  text-decoration: none;
  position: relative;
  font-size: 15px;
}

.site-footer .elementor-toggle .elementor-tab-content {
  padding: 0px 10px;
  font-size: 13px;
}

.site-footer ul li,
.site-footer ul a {
  color: var(--e-global-color-d1d130c) !important;
}

.site-footer ul a {
  font-size: 13px;
  pointer-events: auto;
}
.site-footer ul a:hover {
  color: var(--e-global-color-644d5a5) !important;
}
.site-footer ul {
  margin: 0px;
}

.site-footer li {
  list-style: none;
  line-height: 28px;
}

@media (max-width: 767px) {
  .site-footer .elementor-button {
    width: 100% !important;
  }
}

.site-footer .footer-credits p {
  margin: 0px !important;
}

.gpc-social-menu a i {
  background: var(--gradient-gold);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.site-footer .gpc-social-menu a:hover i {
  background: var(--gradient-luxe);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.contactos .gpc-social-menu a:hover i {
  background: var(--e-global-color-4616774);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

/*Responsivo*/

@media (max-width: 767px) {
  .site-footer .elementor-toggle-title {
    font-size: 14px !important;
  }

  .site-footer .elementor-element-populated {
    padding: 0px !important;
  }
}

/*Form button*/

.gpc-consultas-form .frm_button_submit {
  position: relative !important;
  overflow: hidden !important;
  background: var(--gradient-gold) !important;
  transition:
    color 0.5s var(--transition-elegant),
    border-color 0.5s var(--transition-elegant),
    box-shadow 0.5s var(--transition-elegant) !important;
  font-family: "Inter", Sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1rem;
  letter-spacing: 0.18em;
}

.gpc-consultas-form .frm_button_submit::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  transform: translateX(-100%) !important;
  background: linear-gradient(
    to right,
    transparent,
    rgba(255, 255, 255, 0.1),
    transparent
  ) !important;
  transition: transform 1000ms ease-out !important;
}

.gpc-consultas-form .frm_button_submit:hover {
  background: var(--gradient-gold-hover) !important;
  border-color: transparent !important;
  box-shadow: var(--shadow-gold) !important;
}

.gpc-consultas-form .frm_button_submit:hover::before {
  transform: translateX(100%) !important;
}

.gpc-consultas-form .frm_opt_container a {
  color: var(--e-global-color-primary);
}

.gpc-consultas-form .frm_opt_container a:hover {
  color: var(--e-global-color-3344475);
}
