.main-frame {
  width: 100%;
  height: auto;
  position: relative;
  background-color: var(--color-white-solid);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-0) var(--padding-0) 0.1px;
  box-sizing: border-box;
  line-height: normal;
  letter-spacing: normal;
}
.header-parent {
  flex-direction: column;
  text-align: left;
  font-size: var(--font-size-14);
  color: var(--color-azure-15);
  font-family: var(--font-family-Font-1);
}
.container,
.header,
.header-parent {
  align-self: stretch;
  display: flex;
  align-items: flex-start;
}
.header {
  flex-direction: column;
}
.container {
  justify-content: center;
  padding: var(--padding-12) var(--padding-0);
  position: relative;
  isolation: isolate;
}
.overlayoverlayblur {
  height: 100%;
  width: 100%;
  position: absolute;
  margin: 0 !important;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  backdrop-filter: blur(4px);
  background-color: var(--color-white-60);
  z-index: 0;
  flex-shrink: 0;
}
.container2,
.nav {
  align-self: stretch;
  display: flex;
}
.nav {
  width: 1200px;
  flex-direction: column;
  align-items: flex-start;
  z-index: 1;
  flex-shrink: 0;
}
.container2 {
  align-items: center;
  gap: 281.7px;
}
.link {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex-shrink: 0;
}
.container-icon {
  width: 167px;
  height: 26px;
  position: relative;
}
.list {
  display: flex;
  align-items: center;
  gap: var(--line-height-24);
  flex-shrink: 0;
}
.container3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.container4 {
  display: flex;
  align-items: center;
}
.link-imveis {
  position: relative;
  line-height: var(--line-height-20);
  font-weight: var(--font-weight-600);
  color: inherit;
  text-decoration: none;
}
.svgmargin {
  height: var(--height-16);
  width: var(--width-20);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-0) var(--padding-0) var(--padding-0) var(--padding-4);
  box-sizing: border-box;
}
.frame-icon,
.svg {
  width: var(--width-16);
}
.svg {
  height: var(--height-16);
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.frame-icon {
  flex: 1;
  position: relative;
  max-height: 100%;
}
.container13 {
  cursor: pointer;
  border: 0;
  padding: var(--padding-01);
  background-color: transparent;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-decoration: none;
}
.link2 {
  background-color: var(--color-azure-15);
  display: flex;
  align-items: center;
  padding: var(--padding-10) var(--padding-16);
  gap: var(--item-spacing-10);
}
.svg-icon {
  height: var(--height-16);
  width: 14px;
  position: relative;
}
.client-area-text {
  position: relative;
  font-size: var(--font-size-14);
  line-height: var(--line-height-20);
  font-weight: var(--font-weight-600);
  font-family: var(--font-family-Font-1);
  color: var(--color-white-solid);
  text-align: left;
}
.container15,
.list2 {
  display: flex;
  align-items: center;
}
.container15 {
  align-self: stretch;
  background-color: var(--Neutral-1000);
  justify-content: flex-end;
  padding-top: 16px;
  padding-bottom: 16px;
  color: var(--color-white-solid);
  font-family: Montserrat;
}
.list2 {
  gap: var(--line-height-24);
  width: 1200px;
  margin: auto;
  justify-content: flex-end;
}
.container16 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: var(--color-darksalmon-100);
}

@media screen and (min-width: 926px) {
  .subnav-sticky-wrap {
    position: relative;
    z-index: 30;
    align-self: stretch;
  }

  .subnav-sticky-wrap.is-fixed .container15 {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 30;
    max-width: 100%;
    box-sizing: border-box;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  }

  .container15 .subnav-item .link-imveis2 {
    color: var(--color-white-solid);
  }

  .container15 .subnav-item.is-active .link-imveis2 {
    color: var(--color-darksalmon-100);
  }

  #progresso-obra,
  #sua-historia,
  #beneficios,
  #life-style,
  #book,
  #fotos,
  #apartamento,
  #fale-conosco {
    scroll-margin-top: var(--subnav-offset, 72px);
  }
}

.link-imveis2 {
  position: relative;
  line-height: var(--line-height-20);
  color: inherit;
  text-decoration: none;
}

.menu-toggle {
  display: none;
  align-items: center;
  gap: 10px;
  border: 0;
  background: transparent;
  color: var(--color-azure-15);
  font: inherit;
  font-weight: 600;
  text-transform: lowercase;
  cursor: pointer;
}

.menu-toggle-icon {
  display: block;
  width: 22px;
  height: 18px;
  flex-shrink: 0;
  border: 0;
  object-fit: contain;
  pointer-events: none;
}

.mobile-menu-panel {
  position: fixed;
  inset: 0;
  background: rgba(247, 248, 250, 0.96);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 999;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-8px);
  transition: opacity 0.2s ease, transform 0.2s ease;
  padding: 24px 20px;
}

.mobile-menu-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 40px;
}

.mobile-menu-close {
  border: 0;
  background: transparent;
  color: var(--Neutral-800);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font: inherit;
  font-size: 32px;
  line-height: 1;
}

.mobile-menu-close span:first-child {
  font-size: 28px;
  line-height: 1;
}

.mobile-menu-links {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 20px;
  margin-top: 120px;
}

.mobile-menu-links a {
  color: var(--Neutral-800);
  font-size: 36px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
}

.mobile-client-area {
  margin-top: 12px;
  background: var(--Neutral-800);
  color: #fff !important;
  padding: 12px 20px;
  border-radius: 4px;
}

body.mobile-menu-open {
  overflow: hidden;
}

body.mobile-menu-open .mobile-menu-panel {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.whatsapp-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 130;
  background: rgba(0, 0, 0, 0.72);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

/* Modal global de mensagem (substitui alert) — acima dos modais de lead */
.terranoa-message-modal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  box-sizing: border-box;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}
.terranoa-message-modal[aria-hidden="false"] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
body.terranoa-message-modal-open {
  overflow: hidden;
}
.terranoa-message-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.55);
}
.terranoa-message-modal__box {
  position: relative;
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  background: #fff;
  border-radius: 20px;
  padding: 24px 28px 28px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
  box-sizing: border-box;
  font-family: var(--font-family-Font-1), "Inter", sans-serif;
}
.terranoa-message-modal__title {
  margin: 0 0 12px;
  font-size: 18px;
  font-weight: 700;
  color: #1d2433;
  line-height: 1.25;
}
.terranoa-message-modal__text {
  margin: 0 0 22px;
  font-size: 16px;
  line-height: 1.5;
  color: rgba(29, 36, 51, 0.88);
}
.terranoa-message-modal__btn {
  display: block;
  width: 100%;
  padding: 12px 20px;
  border: 0;
  border-radius: 68px;
  background-color: var(--Primary-950-Default);
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.terranoa-message-modal__btn:hover {
  filter: brightness(1.06);
}
.terranoa-message-modal__btn:focus-visible {
  outline: 2px solid #1d2433;
  outline-offset: 2px;
}

.whatsapp-modal-card {
  width: 800px;
  max-height: 90vh;
  background: #f7f7f9;
  border-radius: 48px;
  padding: 20px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 25px;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}

.whatsapp-modal-card > .whatsapp-modal-media,
.whatsapp-modal-card > .whatsapp-modal-success-media,
.whatsapp-modal-card > .whatsapp-modal-form-wrap {
  flex: 1 1 0;
  min-width: 0;
}

.whatsapp-modal-close {
  position: absolute;
  top: 38px;
  left: 38px;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.15);
  color: #fff;
  font-size: 28px;
  cursor: pointer;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.whatsapp-modal-media {
  overflow: hidden;
  position: relative;
  border-radius: 36px;
  min-height: 0;
}

.whatsapp-modal-media--youtube {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0a0a0a;
  width: 340px;
}

.whatsapp-modal-yt-embed {
  position: relative;
  width: 340px;
  max-width: 100%;
  aspect-ratio: 9 / 16;
  height: auto;

  margin: 0 auto;
  overflow: hidden;
  border-radius: 36px;
  background: #000;
  flex-shrink: 1;
}

.whatsapp-modal-yt-embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

.whatsapp-modal-media video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.whatsapp-modal-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  position: absolute;
}

.whatsapp-modal-success-media {
  display: none;
  width: 100%;
  border-radius: 36px;
  overflow: hidden;
  position: relative;
}

.whatsapp-modal-success-media > img:first-child {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.whatsapp-success-logo {
  position: absolute;
  left: 34px;
  bottom: 34px;
  width: 166px;
  height: auto;
}

.whatsapp-modal-form-wrap {
  width: 100%;
  min-width: 0;
  background: #fff;
  border-radius: 36px;
  padding: 32px 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 24px;
  font-family: var(--font-poppins), var(--font-family-Font-1), sans-serif;
  overflow: auto;
  box-sizing: border-box;
}

.whatsapp-modal-text h2 {
  margin: 0 0 14px;
  color: #1d2433;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
  font-family: var(--font-family-Font-1), sans-serif;
}

.whatsapp-modal-text p {
  margin: 0;
  color: rgba(29, 36, 51, 0.8);
  font-size: 14px;
  letter-spacing: 0.02em;
  line-height: 1.4;
  font-family: var(--font-family-Font-1), sans-serif;
}

.whatsapp-modal-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 20px;
}


/* Estado do modal pós-envio (regra global, não dependente de breakpoint) */
.whatsapp-modal-form-state {
  width: 100%;
}

.whatsapp-modal-form-state-success {
  display: none;
  height: 100%;
  min-height: 100%;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  text-align: left;
  gap: 16px;
}

.whatsapp-modal-form-wrap:not(.is-success) .whatsapp-modal-form-state-default {
  display: block;
}

.whatsapp-modal-form-wrap:not(.is-success) .whatsapp-modal-form-state-success {
  display: none;
}

.whatsapp-modal-form-wrap.is-success .whatsapp-modal-form-state-default {
  display: none;
}

.whatsapp-modal-form-wrap.is-success .whatsapp-modal-form-state-success {
  display: flex;
}

.whatsapp-modal-card.is-success .whatsapp-modal-media {
  display: none;
}

.whatsapp-modal-card.is-success .whatsapp-modal-success-media {
  display: block;
}

.whatsapp-modal-form label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #1d2433;
  font-size: 16px;
  font-weight: 600;
  line-height: 16px;
  letter-spacing: 0.02em;
  font-family: var(--font-family-Font-1), sans-serif;
}

.whatsapp-modal-form input[type="text"],
.whatsapp-modal-form input[type="tel"],
.whatsapp-modal-form input[type="email"] {
  border: 1px solid #e1e6ef;
  border-radius: 68px;
  padding: 8px 16px;
  color: rgba(29, 36, 51, 0.8);
  font-family: var(--font-family-Font-1), sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.whatsapp-modal-form label.terranoa-invalid > input[type="text"],
.whatsapp-modal-form label.terranoa-invalid > input[type="tel"],
.whatsapp-modal-form label.terranoa-invalid > input[type="email"] {
  border-color: #c62828;
  box-shadow: 0 0 0 1px rgba(198, 40, 40, 0.15);
}

.whatsapp-modal-form .terranoa-modal-field-error {
  display: block;
  color: #b00020;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  margin-top: 4px;
}

.whatsapp-modal-form .terranoa-modal-field-error[hidden] {
  display: none !important;
}

.whatsapp-consent.terranoa-invalid {
  flex-wrap: wrap;
}

.whatsapp-consent .terranoa-modal-field-error {
  flex: 1 1 100%;
  margin-top: 6px;
  margin-left: 0;
}

.whatsapp-consent {
  flex-direction: row !important;
  align-items: flex-start;
  gap: 8px !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
  margin-top: 4px;
}

.whatsapp-consent input {
  margin-top: 4px;
}

.whatsapp-submit-button {
  border: 0;
  border-radius: 48px;
  background: #002145;
  color: #fff;
  font-family: var(--font-family-Font-1), sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 16px;
  padding: 19px;
  cursor: pointer;
  margin-top: 8px;
  width: 100%;
  box-sizing: border-box;
}

/* Forca o CTA secundario do estado de sucesso em verde */
.whatsapp-modal-form-state-success .whatsapp-success-button {
  background: #25d366 !important;
  color: #fff !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px;
}

.whatsapp-modal-form-state-success .whatsapp-success-button img {
  height: 24px;
  width: auto;
  display: block;
}

body.whatsapp-modal-open {
  overflow: hidden;
}

body.whatsapp-modal-open .whatsapp-modal-overlay[aria-hidden="false"] {
  opacity: 1;
  pointer-events: auto;
}
.intro-section-parent {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  isolation: isolate;
  max-width: 100%;
}
.intro-section,
.vector-icon {
  max-width: 100%;
  overflow: hidden;
}
.intro-section {
  width: 100%;
  background: linear-gradient(97.47deg, #3e160f, #561b13);
  display: flex;
  align-items: flex-start;
  padding: 64px var(--padding-384) var(--padding-0);
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  text-align: left;
  font-size: var(--fs-18);
  color: var(--color-white-solid);
  font-family: Montserrat;
}
.vector-icon {
  height: 220px;
  width: 44.27%;
  right: 45.89%;
  bottom: -13px;
  left: 9.84%;
}
.vector-icon,
.vector-icon2,
.visual-icon {
  position: absolute;
  margin: 0 !important;
  flex-shrink: 0;
}
.vector-icon2 {
  height: 220px;
  width: 44.27%;
  right: 1.61%;
  bottom: 50px;
  left: 54.11%;
  max-width: 100%;
  overflow: hidden;
}
.visual-icon {
  width: 743px;
  top: 137px;
  left: 972px;
  border-radius: 56px;
  max-height: 100%;
  object-fit: cover;
  z-index: 1;
}
.vector-wrapper {
  margin-left: -1435px;
  width: 2106px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 315px var(--padding-0) var(--padding-0);
  box-sizing: border-box;
  max-width: 183%;
  flex-shrink: 0;
}
.vector-icon3 {
  width: 1436px;
  position: relative;
  max-height: 100%;
  flex-shrink: 0;
  z-index: 1;
}
.section-tagline-wrapper {
  width: 671px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 135px var(--padding-20) var(--padding-0) var(--padding-0);
  box-sizing: border-box;
  max-width: 100%;
  flex-shrink: 0;
  margin-left: -671px;
  position: relative;
}
.section-tagline {
  width: 583px;
  height: 22px;
  position: relative;
  text-transform: uppercase;
  display: inline-block;
  flex-shrink: 0;
}
.na-sua-natureza {
  color: var(--color-darksalmon-100);
}
.intro-paragraph-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 157.1px var(--padding-0) var(--padding-0);
  margin-left: -671px;
  position: relative;
  flex-shrink: 0;
  font-size: 55.3px;
}
.intro-paragraph {
  width: 672px;
  height: 120px;
  position: relative;
  line-height: 59.9px;
  display: inline-block;
  flex-shrink: 0;
  z-index: 4;
}
.container-wrapper,
.container32 {
  box-sizing: border-box;
  display: flex;
  flex-shrink: 0;
}
.container-wrapper {
  width: 671px;
  flex-direction: column;
  align-items: flex-start;
  padding: 62px var(--padding-0) var(--padding-0);
  max-width: 100%;
  margin-left: -671px;
  position: relative;
  font-size: var(--fs-12);
  color: var(--color-darksalmon-100);
  font-family: var(--font-poppins);
}
.container32 {
  width: 310px;
  border-radius: 16777200px;
  background-color: var(--color-sienna-500);
  border: 1px solid var(--color-sienna-400);
  align-items: center;
  padding: var(--padding-5) var(--padding-15) var(--padding-5) var(--padding-16);
  z-index: 7;
  display: inline-block;
}
.location-text {
  position: relative;
  letter-spacing: var(--ls-1_2);
  text-transform: uppercase;
  font-weight: 600;
}
.o-terrano-um-condomnio-clu-wrapper {
  width: 866px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 305px var(--padding-20) var(--padding-0) var(--padding-0);
  box-sizing: border-box;
  max-width: 100%;
  flex-shrink: 0;
  margin-left: -671px;
  position: relative;
  font-size: var(--fs-16);
  color: var(--color-gray-1200);
}
.o-terrano {
  max-width: 468px;
  height: var(--height-60);
  position: relative;
  font-weight: 300;
  display: inline-block;
  flex-shrink: 0;
}
.container-container {
  width: 1174px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 470px var(--padding-0) var(--padding-0);
  box-sizing: border-box;
  max-width: 102%;
  flex-shrink: 0;
  margin-left: -671px;
  position: relative;
  z-index: 6;
  font-size: var(--fs-20);
  font-family: var(--font-poppins);
}
.container33,
.icon-section {
  display: flex;
  align-items: center;
}
.container33 {
  width: 760px;
  border-radius: var(--br-16) var(--br-16) var(--br-0) var(--br-0);
  background: rgba(125, 138, 155, 0.36);
  border-radius: 16px 16px 0px 0px;
  justify-content: space-between;
  padding: var(--padding-32);
  box-sizing: border-box;
  gap: var(--gap-20);
  flex-shrink: 0;
  max-width: 100%;
  position: relative;
  z-index: 7;
  border: solid 1px rgba(125, 138, 155, 0.36);


    background:
    radial-gradient(
      circle at 45% 50%,
      rgba(0, 170, 255, 0.55),
      transparent 26%
    ),
    radial-gradient(
      circle at 20% 50%,
      rgba(80, 10, 5, 0.8),
      transparent 38%
    );
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.icon-section {
  width: 158px;
  flex-direction: column;
  gap: 3.7px;
}
.group-icon {
  width: 87.9px;
  height: 22.6px;
  position: relative;
  object-fit: cover;
}
.vector-icon4 {
  width: 158px;
  height: 24.4px;
  position: relative;
}
.feature-icons {
  display: flex;
  align-items: center;
  gap: var(--gap-16);
  max-width: 100%;
}
.container34 {
  width: 137px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.icon-text {
  margin: 0;
  position: relative;
  font-size: inherit;
  line-height: var(--lh-32);
  font-weight: 700;
  font-family: inherit;
}
.icon-text2 {
  position: relative;
  font-size: var(--fs-12);
  line-height: var(--lh-20);
  color: var(--color-white-60);
}
.container-hero-fotos {
  width: 714px;
  margin: 0 !important;
  position: absolute;
  top: -72px;
  left: 1021px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 625px 171px 442px;
  box-sizing: border-box;
  background-image: url(./public/Sem-Ti-tulo-2-1@2x.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  max-width: 100%;
  z-index: 3;
  flex-shrink: 0;
}
.predio-hero {
  width: 714px;
  position: relative;
  max-height: 100%;
  object-fit: cover;
  display: none;
  flex-shrink: 0;
}
.arrow {
  border-radius: var(--br-999);
  background-color: var(--color-brown);
  display: flex;
  align-items: center;
  padding: var(--padding-16);
  flex-shrink: 0;
}
.arrow-icon {
  height: var(--height-24);
  width: var(--width-24);
  position: relative;
  object-fit: contain;
}
.lettering-hero {
  width: 947px;
  position: absolute;
  max-height: 100%;
  flex-shrink: 0;
  z-index: 2;
  left: 1099px;
}
.lettering-hero-mob {
  display: none;
}
.identificationblock {
  align-self: stretch;
  background-color: var(--color-whitesmoke-100);

  grid-template-columns: 1fr 1fr;
  grid-template-areas:
    "text bars"
    "btn  bars";
  grid-template-rows: auto 1fr;
  align-items: start;
  box-sizing: border-box;
  column-gap: 122px;
  row-gap: var(--gap-32);
  max-width: 100%;
  z-index: 1;
  padding-top: 80px;
  padding-bottom: 80px;
}
.identificationblock > .container38 { grid-area: text; }
.identificationblock > .container39 { grid-area: bars; }
.identificationblock > .button-container { grid-area: btn; align-self: start; }
.container38,
.text-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.container38 {
  flex: 1;
  justify-content: center;
  gap: var(--gap-32);
  min-width: 303px;
  text-align: left;
  font-size: var(--fs-12);
  color: var(--color-sienna-100);
  font-family: Montserrat;
}
.text-block {
  width: 466px;
  gap: var(--gap-16);
}
.identification-text {
  align-self: stretch;
  position: relative;
  letter-spacing: var(--ls-1_2);
  line-height: var(--lh-16);
  text-transform: uppercase;
  font-weight: 600;
}
.details-block {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-16);
  font-size: var(--fs-36);
  color: var(--color-gray-200);
}
.condomnio-clube {
  color: var(--color-sienna-100);
}
.pessoas-com-perfis {
  align-self: stretch;
  position: relative;
  font-size: var(--fs-18);
  line-height: 29.3px;
  color: var(--color-dimgray-200);
}
.button-container {
  cursor: pointer;
  border: 0;
  padding: var(--padding-01);
  background-color: transparent;
  display: flex;
  align-items: flex-start;
}
.regular-button {
  width: 270px;
  border-radius: var(--br-48);
  background-color: var(--Primary-950-Default);
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--padding-16) 56px;
  box-sizing: border-box;
  gap: var(--gap-8);
}
.regular-button-mobile
{
  display: none;
}
.placeholder-icon {
  height: var(--height-16);
  width: var(--width-16);
  position: relative;
  display: none;
  flex-shrink: 0;
}
.container39,
.download-button-text {
  position: relative;
  font-family: Montserrat;
}
.download-button-text {
  font-size: var(--fs-16);
  letter-spacing: 0.02em;
  line-height: var(--lh-16);
  font-weight: 600;
  color: var(--color-white-solid);
  text-align: center;
  flex-shrink: 0;
}
.container39 {
  width: 564px;
  border-radius: var(--br-24);
  background-color: var(--color-white-solid);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-40);
  box-sizing: border-box;
  isolation: isolate;
  gap: var(--gap-16);
  max-width: 100%;
  text-align: left;
  font-size: var(--fs-14);
  color: var(--TextIcon-Primary-Black);
}
.progress-bar,
.progress-container {
  align-self: stretch;
  display: flex;
  align-items: center;
}
.progress-bar {
  border-radius: var(--br-16);
  flex-direction: column;
  gap: var(--gap-8);
  z-index: 0;
  flex-shrink: 0;
}
.progress-container {
  justify-content: space-between;
  gap: var(--gap-20);
}
.progress-label {
  position: relative;
  line-height: var(--lh-20);
}
.bar,
.progress-bar2 {
  height: var(--height-12);
}
.bar {
  align-self: stretch;
  position: relative;
  border-radius: var(--br-32);
  background-color: var(--Primary-500);
  overflow: hidden;
  flex-shrink: 0;
}
.progress-bar2 {
  position: absolute;
  top: 0;
  left: 327px;
  background-color: var(--Neutral-300);
  width: 157px;
}
.progress-bar3 {
  align-self: stretch;
  border-radius: var(--br-16);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap-8);
  z-index: 1;
  flex-shrink: 0;
}
.progress-bar4 {
  position: absolute;
  top: 0;
  left: 293px;
  background-color: var(--Neutral-300);
  width: 191px;
  height: var(--height-12);
}
.progress-bar5 {
  align-self: stretch;
  border-radius: var(--br-16);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap-8);
  z-index: 2;
  flex-shrink: 0;
}
.progress-bar6 {
  position: absolute;
  top: 0;
  left: 414px;
  background-color: var(--Neutral-300);
  width: 70px;
  height: var(--height-12);
}
.progress-bar7 {
  align-self: stretch;
  border-radius: var(--br-16);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap-8);
  z-index: 3;
  flex-shrink: 0;
}
.progress-bar8 {
  position: absolute;
  top: 0;
  left: 391px;
  background-color: var(--Neutral-300);
  width: 93px;
  height: var(--height-12);
}
.progress-bar9 {
  align-self: stretch;
  border-radius: var(--br-16);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap-8);
  z-index: 4;
  flex-shrink: 0;
}
.progress-bar {
  --progress: 1;
}
.progress-bar3 {
  --progress: 0.9986;
}
.progress-bar5 {
  --progress: 0.9944;
}
.progress-bar7 {
  --progress: 0.7113;
}
.progress-bar9 {
  --progress: 0.8539;
}
.bar5,
.progress-bar10 {
  height: var(--height-12);
}
.bar5 {
  align-self: stretch;
  position: relative;
  border-radius: var(--br-32);
  background-color: var(--Success-600);
  overflow: hidden;
  flex-shrink: 0;
}
.progress-bar10 {
  position: absolute;
  top: 0;
  left: 410px;
  background-color: var(--Neutral-300);
  width: 74px;
}
.container40 {
  width: 173px;
  margin: 0 !important;
  position: absolute;
  top: -16px;
  right: 30px;
  border-radius: 16777200px;
  background-color: var(--color-saddlebrown);
  display: flex;
  align-items: center;
  padding: var(--padding-7) 17px;
  box-sizing: border-box;
  white-space: nowrap;
  z-index: 5;
  flex-shrink: 0;
  font-size: var(--fs-12);
  color: var(--color-white-solid);
  font-family: var(--font-poppins);
}
.location-text2 {
  flex: 1;
  position: relative;
  letter-spacing: 1.15px;
  text-transform: uppercase;
  font-weight: 600;
}
.container41,
.identification-block {
  align-self: stretch;
  flex-direction: column;
  max-width: 100%;
}
.identification-block {
  background-color: var(--color-seashell);
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  gap: var(--gap-32);
  z-index: 2;
  padding-top: 72px;
  padding-bottom: 72px;
}
.container-identification-all
{
  width: 1150px;
  margin: auto;
}
.container41 {
  height: 148px;
  padding: 5.5px var(--padding-0) var(--padding-0);
  gap: var(--gap-14);
  text-align: center;
  font-size: var(--fs-12);
  color: var(--color-sienna-100);
  font-family: Montserrat;
  margin-bottom: 30px;
}
.container41,
.identification-prompt,
.identification-prompt-wrapper {
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
}
.identification-prompt-wrapper {
  width: 1087.5px;
  justify-content: center;
  padding: var(--padding-0) var(--padding-20);
  max-width: 100%;
}
.identification-prompt {
  height: var(--height-16);
  width: 147.1px;
  padding: 0.5px var(--padding-0) var(--padding-0);
}
.top-identification-text {
  margin-left: -4px;
  height: var(--height-16);
  width: 158px;
  position: relative;
  letter-spacing: var(--ls-1_2);
  line-height: var(--lh-16);
  text-transform: uppercase;
  font-weight: 600;
  display: inline-block;
  flex-shrink: 0;
}
.heading {
  height: var(--height-40);
  display: flex;
  align-items: flex-start;
  padding: 1.5px 280px var(--padding-0);
  box-sizing: border-box;
  font-size: var(--fs-36);
  color: var(--color-gray-200);
}
.heading-text {
  margin: 0;
  height: var(--height-40);
  width: 527px;
  position: relative;
  font-size: inherit;
  line-height: var(--lh-40);
  font-weight: 700;
  font-family: inherit;
  display: inline-block;
}
.paragraph,
.paragraph-wrapper {
  display: flex;
  align-items: flex-start;
}
.paragraph-wrapper {
  width: 1088px;
  justify-content: center;
  padding: var(--padding-0) var(--padding-20);
  box-sizing: border-box;
  max-width: 100%;
  font-size: var(--fs-18);
  color: var(--color-dimgray-200);
}
.paragraph {
  padding: 0.5px var(--padding-10) var(--padding-0) 11px;
}
.intro-text {
  height: 59px;
  width: 650px;
  position: relative;
  line-height: 29.3px;
  display: inline-block;
  flex-shrink: 0;
}
.identification-container {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: var(--gap-24);
}
.identification-text-container {
  align-self: stretch;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  align-content: center;
  gap: var(--gap-24);
  text-align: left;
  font-size: var(--fs-24);
  color: var(--color-gray-200);
  font-family: Montserrat;
}
.identification-card {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  min-width: 367px;
  border-radius: var(--br-16);
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}
@media (hover: hover) and (pointer: fine) {
  #sua-historia .identification-card:hover {
    transform: translateY(-6px) scale(1.015);
    box-shadow: 0 18px 36px rgba(17, 24, 39, 0.18);
  }
}
.card-image-icon {
  align-self: stretch;
  height: 196px;
  border-radius: var(--br-16) var(--br-16) var(--br-0) var(--br-0);
  max-width: 100%;
  overflow: hidden;
  flex-shrink: 0;
  object-fit: cover;
}
.card-text-container {
  border-radius: var(--br-0) var(--br-0) var(--br-16) var(--br-16);
  background-color: var(--color-white-solid);
  border: var(--border-1);
  overflow: hidden;
  padding: var(--padding-22) var(--padding-23);
}
.card-text-container,
.identification-description {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-14);
}
.card-title {
  margin: 0;
  position: relative;
  font-size: inherit;
  line-height: var(--lh-24);
  font-weight: 600;
  font-family: Montserrat;
}
.card-description,
.card-subtitle {
  position: relative;
  font-size: 14px;
  font-family: Montserrat;
  font-weight: 400;
  color: var(--color-dimgray-200);
}
.card-subtitle {
  line-height: var(--lh-20);
  font-weight: 600;
  color: var(--color-sienna-100);
}
/* Carrossel "Sua história" — oculto no desktop */
.historia-carousel-viewport,
.historia-carousel-dots {
  display: none;
}

/* Mapa Terraço mobile — oculto no desktop */
.terraco-carousel-viewport,
.terraco-pan-viewport {
  display: none;
}
.terraco-pan-viewport {
  width: 100%;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
}
.terraco-pan-scroll {
  width: 100%;
  overflow: auto;
  border-radius: 24px 0 0 24px;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  touch-action: pan-x pan-y;
  cursor: grab;
}
.terraco-pan-scroll:active {
  cursor: grabbing;
}
.terraco-pan-image {
  display: block;
  width: 1152px;
  max-width: none;
  height: auto;
}
.terraco-pan-hint {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  font-family: var(--font-poppins);
  font-size: 13px;
  line-height: 1.3;
  color: #6e6e71;
  text-align: center;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.terraco-pan-hint__icon {
  display: inline-flex;
  align-items: center;
  gap: 2px;
}
.terraco-pan-hint__icon img {
  width: 14px;
  height: 14px;
  display: block;
  opacity: 0.65;
}
.terraco-pan-hint__icon img:first-child {
  transform: rotate(180deg);
}
.terraco-pan-hint.is-hidden {
  opacity: 0;
  visibility: hidden;
}

/* Carrossel mobile de Proximidades — oculto no desktop via especificidade dupla */
.identificationblock2 .prox-mobile-viewport,
.identificationblock2 .prox-mobile-nav {
  display: none;
}

/* Slides do carrossel mobile de proximidades */
.prox-mobile-viewport {
  width: 100%;
  overflow: hidden;
  cursor: grab;
}
.prox-mobile-track {
  display: flex;
  gap: 10px;
  transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform;
}
.prox-mob-slide {
  flex: 0 0 calc(100% - 28px);
  width: calc(100% - 28px);
  min-width: 0;
  border-radius: 16px;
  overflow: hidden;
  flex-shrink: 0;
  position: relative;
}
.prox-mob-slide img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 16px;
}

.call-to-action-button {
  cursor: pointer;
  border: 0;
  padding: var(--padding-16) 56px;
  background-color: var(--Primary-950-Default);
  width: 368px;
  border-radius: var(--br-48);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  gap: var(--gap-8);
  margin: auto;
  margin-top: 30px;
}
.features-column,
.features-row,
.identificationblock2 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.identificationblock2 {
  background-color: var(--color-white-solid);
  justify-content: center;
  padding: 88px var(--padding-384);
  gap: var(--gap-32);
  z-index: 3;
  text-align: center;
  font-size: var(--fs-36);
  color: var(--color-gray-200);
  font-family: Montserrat;
}
.features-column,
.features-row {
  gap: var(--gap-48);
}
.features-row {
  justify-content: flex-end;
  gap: var(--gap-16);
}
.contato-title
{
 font-size: 24px !important;
 width: 218px !important;
 margin-left: 0px !important;
}
.preencha-o-formulrio
{
  width: 268px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}
.feature-title {
  margin: 0;
  align-self: stretch;
  position: relative;
  font-size: inherit;
  line-height: var(--lh-40);
  font-weight: 700;
  font-family: inherit;
}
.feature-title-diferenca, .feature-title-clube
{
  margin: 0;
  align-self: stretch;
  position: relative;
  font-size: inherit;
  line-height: var(--lh-40);
  font-weight: 700;
  font-family: inherit;
  margin: auto;

}
.feature-title-clube
{
  margin: 0;
  align-self: stretch;
  position: relative;
  font-size: inherit;
  line-height: var(--lh-40);
  font-weight: 700;
  font-family: inherit;
  margin: auto;
  max-width: 600px;
}
.feature-description {
  position: relative;
  font-size: var(--fs-16);
  line-height: var(--lh-24);
  color: var(--TextIcon-Disabled-Black);
  text-align: left;
}
.features-image-row {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  gap: var(--gap-24);
}
.features-carousel-viewport {
  align-self: stretch;
  overflow: hidden;
  cursor: grab;
  user-select: none;
}

.features-carousel-viewport.is-dragging {
  cursor: grabbing;
}
.features-carousel-track {
  flex-wrap: nowrap;
  align-content: initial;
  justify-content: flex-start;
  transition: transform 0.35s ease;
  will-change: transform;
}
.features-carousel-track.slick-slider {
  display: block;
  margin: 0;
  transition: none;
  will-change: auto;
}
.features-carousel-track.slick-slider .slick-list {
  overflow: hidden;
  padding: 0 !important;
}
.features-carousel-track.slick-slider .slick-track {
  display: flex !important;
  margin-left: 0;
  margin-right: 0;
}
.features-carousel-track.slick-slider .slick-slide {
  height: auto;
  width: 270px;
  margin-right: var(--gap-24);
  padding: 0;
  box-sizing: border-box;
}
.features-carousel-track.slick-slider .slick-slide > div {
  height: 100%;
}
.features-carousel-track.slick-slider .features-carousel-slide {
  flex: none;
  width: 270px;
  min-width: 270px;
  max-width: 270px;
  height: 569px;
  min-height: 569px;
}
.identificationblock2 .features-carousel-track .features-carousel-slide.img2 {
  display: block;
  flex: none;
  width: 320px;
  min-width: 320px;
  max-width: none;
  padding: 0;
  gap: 0;
  background: none;
}

.features-carousel-viewport.is-dragging .features-carousel-track {
  transition: none;
}
.features-carousel-slide {
  flex: 0 0 calc((100% - (var(--gap-24) * 3)) / 4);
  max-width: none;
  position: relative;
  padding: 0;
  gap: 0;
  align-items: stretch;
}
.img {
  height: 480px;
  flex: 1;
  border-radius: var(--br-16);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 29.7px var(--padding-16) 37px;
  box-sizing: border-box;
  gap: 296.3px;
  background-image: url(./public/img@3x.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  min-width: 248px;
  max-width: var(--max-w-270);
  text-align: left;
  font-size: var(--fs-16);
  color: var(--color-white-solid);
  font-family: var(--font-lato);
}
.feature-image-label {
  border-radius: var(--br-50);
  background-color: var(--color-gray-1100);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--padding-10) var(--padding-8);
}
.feature-image-label2 {
  position: relative;
  font-weight: 900;
}
.image-descriptions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-6);
  font-family: Montserrat;
}
.feature-image-description,
.feature-image-description2 {
  width: var(--width-224);
  height: var(--height-48);
  position: relative;
  line-height: var(--lh-24);
  display: inline-block;
}
.feature-image-description2 {
  height: var(--height-24);
}
.img2 {
  height: 480px;
  flex: 1;
  border-radius: var(--br-16);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 29.7px var(--padding-16) var(--padding-16);
  box-sizing: border-box;
  gap: 323.3px;
  background-image: url(./public/img@3x.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  min-width: 248px;
  max-width: var(--max-w-270);
  text-align: left;
  font-size: var(--fs-16);
  color: var(--color-white-solid);
  font-family: var(--font-lato);
}
.features-carousel-slide-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.feature-image-description3 {
  width: var(--width-224);
  height: var(--height-72);
  position: relative;
  line-height: var(--lh-24);
  display: inline-block;
  font-family: Montserrat;
}
.container42 {
  width: auto;
  max-width: 100%;
  border-radius: 90px;
  background-color: var(--color-whitesmoke-200);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 12px;
  box-sizing: border-box;
  gap: 10px;
}
.left-arrow-container {
  width: var(--width-40);
  height: var(--height-40);
  position: relative;
  border-radius: var(--br-999);
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.left-arrow-container img {
  width: 24px;
  height: 24px;
  display: block;
}

.carousel-prev-icon.is-arrow {
  transform: rotate(180deg);
}
.right-arrow-container,
.vertical-line {
  position: relative;
  border-radius: var(--br-999);
  overflow: hidden;
  flex-shrink: 0;
}
.vertical-line {
  height: var(--height-8);
  width: 14px;
  background-color: var(--color-dimgray-100);
  transition: width 0.25s ease;
}
.right-arrow-container {
  height: var(--height-40);
  width: var(--width-40);
  background-color: var(--color-white-solid);
  border: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.pagination-dots-container .inactive-dot.is-active {
  background-color: var(--color-dimgray-100);
  width: 32px;
}
.container42 .pagination-dots-container {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  flex-wrap: nowrap;
  overflow: hidden;
}

.container42 .inactive-dot {
  width: 8px;
  height: 8px;
  background-color: #7d7d84;
  opacity: 0.95;
}

.container42 .pagination-dots-container .inactive-dot.is-active {
  width: 14px;
}
.container42 .pagination-dots-container .slick-dots {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.container42 .pagination-dots-container .slick-dots li {
  margin: 0;
  line-height: 0;
}
.container42 .pagination-dots-container .slick-dots li button {
  border: 0;
  background: transparent;
  padding: 0;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
}
.container42 .pagination-dots-container .slick-dots li.slick-active .inactive-dot {
  width: 14px;
  background-color: var(--color-dimgray-100);
}

/* Prox mobile (Slick): dots padrão — pill no slide atual */
.container42.prox-mobile-nav .pagination-dots-container .slick-dots li .inactive-dot {
  transition: width 0.25s ease, background-color 0.25s ease, opacity 0.25s ease;
}

.container42.prox-mobile-nav .pagination-dots-container:has(.slick-dots) .vertical-line {
  display: none !important;
}

.container42.prox-mobile-nav .left-arrow-container,
.container42.prox-mobile-nav .right-arrow-container {
  width: var(--width-40);
  height: var(--height-40);
  background-color: var(--color-white-solid);
  border-radius: var(--br-999);
  overflow: hidden;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.container42.prox-mobile-nav .left-arrow-icon,
.container42.prox-mobile-nav .right-arrow-icon {
  width: var(--width-24);
  height: var(--width-24);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.container42.prox-mobile-nav .prox-mob-prev-icon,
.container42.prox-mobile-nav .prox-mob-next-icon {
  width: 24px;
  height: 24px;
  display: block;
}

.container42.prox-mobile-nav .prox-mob-prev-icon.is-arrow {
  transform: rotate(180deg);
}

.container42.prox-mobile-nav .prox-mob-prev-icon.is-lock,
.container42.prox-mobile-nav .prox-mob-next-icon.is-lock {
  width: 24px;
  height: 24px;
}

/* Prox desktop (Slick): dot ativo padrão — pill no slide atual */
.container42.prox-desktop-nav .pagination-dots-container {
  justify-content: flex-start;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  max-width: auto;
}
.container42.prox-desktop-nav .pagination-dots-container::-webkit-scrollbar {
  display: none;
}
.container42.prox-desktop-nav .pagination-dots-container .slick-dots {
  flex-wrap: nowrap;
}
.container42.prox-desktop-nav .pagination-dots-container .slick-dots li .inactive-dot {
  transition: width 0.25s ease, background-color 0.25s ease, opacity 0.25s ease;
}

.container42.prox-desktop-nav .pagination-dots-container:has(.slick-dots) .vertical-line {
  display: none !important;
}

.left-arrow-container[aria-disabled="true"],
.right-arrow-container[aria-disabled="true"] {

  cursor: not-allowed;
}
.differentials,
.why-section {
  align-self: stretch;
  display: flex;
  flex-direction: column;
}
.differentials {
  background-color: var(--color-gray-200);
  align-items: flex-start;
  gap: 49px;
  z-index: 4;
  text-align: left;
  font-size: var(--fs-16);
  color: var(--color-white-solid);
  font-family: Montserrat;
  padding-bottom: 80px;
  padding-top: 80px;
}
.why-section {
  align-items: center;
  gap: var(--gap-20);
  text-align: center;
  font-size: var(--fs-14);
  color: var(--color-darksalmon-100);
  font-family: var(--font-poppins);
}
.section-heading {
  position: relative;
  letter-spacing: var(--ls-1_2);
  line-height: var(--lh-16);
  text-transform: uppercase;
  font-weight: 600;
}
.why-section-text-container {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-12);
  font-size: var(--fs-36);
  color: var(--color-white-solid);
  font-family: Montserrat;
}
.no-qualquer {
  align-self: stretch;
  position: relative;
  font-size: var(--fs-18);
  line-height: var(--lh-28);
  color: var(--color-white-60);
}
.container44,
.container45 {
  align-self: stretch;
  display: flex;
}
.container44 {
  border-radius: var(--br-16);
  border: 1px solid var(--color-gray-1000);
  overflow: hidden;
  flex-direction: column;
  align-items: flex-start;

}
.container45 {
  background-color: var(--color-gray-900);
  overflow-x: auto;
  align-items: center;
  text-align: center;
  color: var(--color-gray-800);
  font-family: var(--font-poppins);
}
.comparison-section,
.container46 {
  display: flex;
  align-items: flex-start;
}
.comparison-section {
  width: var(--width-319_3);
  flex-shrink: 0;
  flex-direction: column;
  text-align: left;
}
.container46 {
  align-self: stretch;
  height: 56px;
  padding: var(--padding-16) var(--padding-24);
  box-sizing: border-box;
}
.feature-display {
  flex: 1;
  position: relative;
  line-height: var(--lh-20);
  font-weight: 500;
}
.container47 {
  align-self: stretch;
  flex: 1;
  border-left: 1px solid var(--color-gray-1000);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 17px 105px;
  color: var(--color-darksalmon-300);
}
.feature-details {
  position: relative;
  line-height: var(--lh-20);
  font-weight: 600;
}
.container48,
.container49 {
  display: flex;
  align-items: center;
}
.container48 {
  flex: 0.8727;
  background-color: var(--color-sienna-500);
  border-left: 1px solid var(--color-gray-1000);
  justify-content: center;
  padding: 17px 118px;
  color: var(--color-darksalmon-100);
}
.container49 {
  align-self: stretch;
  background-color: var(--color-gray-700);
  border-top: var(--border-11);
  row-gap: var(--gap-20);
}
.container50,
.container51 {
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
.container50 {
  height: var(--height-52);
  width: var(--width-319_3);
  padding: var(--padding-16) var(--padding-24);
}
.container51 {
  align-self: stretch;
  flex: 1;
  border-left: var(--border-12);
  justify-content: center;
  padding: var(--padding-0) var(--padding-149);
  min-width: var(--min-w-270);
}
.xicon {
  height: var(--height-20);
  width: var(--width-20);
  position: relative;
}
.container52,
.container53 {
  align-self: stretch;
  display: flex;
  align-items: center;
}
.container52 {
  flex: 1;
  background-color: var(--color-sienna-300);
  border-left: var(--border-12);
  box-sizing: border-box;
  justify-content: center;
  padding: var(--padding-0) var(--padding-149);
  min-width: var(--min-w-270);
}
.container53 {
  border-top: var(--border-11);
  row-gap: var(--gap-20);
}
.container68 {
  height: var(--height-52);
  flex: 1;
  background-color: var(--color-sienna-300);
  border-left: var(--border-12);
  box-sizing: border-box;
  justify-content: center;
  padding: var(--padding-0) var(--padding-149);
  min-width: var(--min-w-270);
}
.container68,
.container69,
.container70 {
  display: flex;
  align-items: center;
}
.container69 {
  align-self: stretch;
  border-top: var(--border-11);
  overflow-x: auto;
}
.container70 {
  height: var(--height-52);
  width: var(--width-319_3);
  flex-shrink: 0;
  padding: var(--padding-16) var(--padding-23);
  box-sizing: border-box;
}
.container71,
.container72 {
  flex: 1;
  border-left: var(--border-12);
  justify-content: center;
  padding: var(--padding-0) var(--padding-149);
}
.container71 {
  align-self: stretch;
  display: flex;
  align-items: center;
}
.container72 {
  height: var(--height-52);
  background-color: var(--color-sienna-300);
  box-sizing: border-box;
}
.container72,
.container73,
.container74 {
  display: flex;
  align-items: center;
}
.container73 {
  align-self: stretch;
  background-color: var(--color-gray-700);
  border-top: var(--border-11);
  overflow-x: auto;
}
.container74 {
  height: var(--height-52);
  width: var(--width-319_3);
  flex-shrink: 0;
  padding: var(--padding-16) var(--padding-24);
  box-sizing: border-box;
}

/* Tabela de benefícios (container44) reestruturada em linhas e colunas */
.container44 {
  width: 1150px;
  max-width: 100%;
  align-self: center;
}
.container44 > .container45 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 270px 270px;
  width: 100%;
  overflow: hidden;
}
.container44 > .container45 > * {
  min-width: 0;
}
.container44 > .container45 .comparison-section,
.container44 > .container45 .container47,
.container44 > .container45 .container48 {
  width: auto;
  flex: initial;
  padding: 16px 24px;
  min-height: 56px;
  box-sizing: border-box;
}
.container44 > .container45 .comparison-section {
  text-align: left;
}
.container44 > .container45 .container46 {
  width: 100%;
  height: auto;
  padding: 0;
}
.container44 > .container45 .feature-display {
  color: var(--color-white-solid);
}
.container44 > .container45 .container47,
.container44 > .container45 .container48 {
  justify-content: center;
}
.container44 > div:not(.container45) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 270px 270px;
  align-items: stretch;
  width: 100%;
}
.container44 > div:not(.container45) > div {
  min-width: 0;
  display: flex;
  align-items: center;
  min-height: 52px;
  box-sizing: border-box;
}
.container44 > div:not(.container45) > div:first-child {
  justify-content: flex-start;
  padding: 12px 24px;
}
.container44 > div:not(.container45) > div:first-child .progress-label {
  text-align: left;
}
.container44 > div:not(.container45) > div:nth-child(2),
.container44 > div:not(.container45) > div:nth-child(3) {
  justify-content: center;
  padding: 12px 16px;
}
.container44 > div:not(.container45) > .container50,
.container44 > div:not(.container45) > .container70,
.container44 > div:not(.container45) > .container74 {
  width: auto;
  height: auto;
  flex: initial;
}
.container44 > div:not(.container45) > .container51,
.container44 > div:not(.container45) > .container52,
.container44 > div:not(.container45) > .container68,
.container44 > div:not(.container45) > .container71,
.container44 > div:not(.container45) > .container72 {
  flex: initial;
  min-width: 0;
}
.terrano-padro-acima {
  align-self: stretch;
  position: relative;
  line-height: var(--lh-20);
  font-family: var(--font-poppins);
  color: var(--color-gray-800);
  text-align: center;
}
.container89,
.natureconcept {
  display: flex;
  box-sizing: border-box;
  max-width: 100%;
}
.natureconcept {
  align-self: stretch;
  background-color: var(--color-seashell);
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-64);
  text-align: left;
  font-size: var(--fs-12);
  color: var(--color-darksalmon-100);
  font-family: var(--font-poppins);
  padding-top: 80px;
  padding-bottom: 80px;
}

.container89 {
  width: 1152px;
  height: 600px;
  border-radius: var(--br-24);
  overflow: hidden;
  flex-shrink: 0;
  align-items: flex-end;
  padding: var(--padding-96);
  background-image: url(./public/foto-natureza.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  margin: auto;
}
.concept-section,
.concept-text-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.concept-section {
  width: 762px;
  gap: 18px;
  max-width: 100%;
}
.concept-text-container {
  align-self: stretch;
  gap: var(--gap-24);
  text-align: left;
  font-size: var(--fs-48);
  color: var(--color-white-solid);
  font-family: var(--font-poppins);
}
.subheading2 {
  margin: 0;
  font-size: inherit;
  line-height: var(--lh-40);
  font-weight: 700;
  font-family: inherit;
}
.no-terrano-voc,
.subheading2,
.subheading3 {
  align-self: stretch;
  position: relative;
}
.subheading3 {
  margin: 0;
  font-size: inherit;
  line-height: var(--lh-40);
  font-weight: 700;
  font-family: inherit;
  color: var(--color-darkseagreen);
}
.no-terrano-voc {
  font-size: var(--fs-18);
  color: var(--color-gray-1200);
}
.feature-section-parent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-30);
  max-width: 100%;
  margin: auto;
}
.container90,
.feature-section {
  display: flex;
  align-items: center;
  max-width: 100%;
}
.feature-section {
  gap: var(--gap-24);
  text-align: center;
  font-size: var(--fs-20);
  color: var(--color-gray-200);
  font-family: var(--font-poppins);
}
.container90 {
  width: 368px;
  flex-direction: column;
  gap: var(--gap-14);
}
.grass-24dp-e3e3e3-1-icon {
  width: var(--width-40);
  position: relative;
  max-height: 100%;
}
.feature-title2 {
  margin: 0;
  align-self: stretch;
  height: var(--height-28);
  position: relative;
  font-size: inherit;
  line-height: var(--lh-28);
  font-weight: 600;
  font-family: inherit;
  display: inline-block;
}
.jardins-paisagsticos-reas {
  align-self: stretch;
  position: relative;
  font-size: var(--fs-16);
  line-height: var(--lh-26);
  color: var(--color-dimgray-200);
}
.card-subtitle5,
.feature-title3 {
  position: relative;
  font-weight: 600;
}
.card-subtitle5 {
  align-self: stretch;
  font-size: var(--fs-14);
  line-height: var(--lh-20);
  font-family: Montserrat;
  color: var(--color-sienna-100);
}
.feature-section-parent .card-subtitle5 {
  cursor: pointer;
}
.feature-title3 {
  margin: 0;
  width: 321px;
  height: var(--height-28);
  font-size: inherit;
  line-height: var(--lh-28);
  font-family: inherit;
  display: inline-block;
}
.container93 {
  width: 1152px;
  border-radius: var(--br-16);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 100%;
  margin: auto;
}
.differentials2,
.image-terrao-jardim-do-terra {
  align-self: stretch;
  position: relative;
  max-width: 100%;
}
.image-terrao-jardim-do-terra {
  height: 384px;
  overflow: hidden;
  flex-shrink: 0;
  object-fit: cover;
}
.differentials2 {
  height: 1080px;
  background: linear-gradient(113.66deg, #451811, var(--color-brown));
  display: flex;
  align-items: flex-start;
  justify-content: center;
  box-sizing: border-box;
  isolation: isolate;
  text-align: left;
  font-size: var(--fs-20);
  color: var(--color-white-solid);
  font-family: var(--font-poppins);
  padding-top: 80px;
  padding-bottom: 80px;
}
.differentials2 .column-left 
{
  width: 50%;
  height: 100%; 
}
.differentials2 .column-right 
{
  width: 50%;
  height: 100%; 
}
.container-diferencial2 
{
  width: 1150px;
  margin: auto;
  display: flex;
}
.copiar-1-icon {
  width: 564px;
  margin: 0 !important;
  top: 122px;
  left: 482px;
  border-radius: 67.8px;
  max-height: 100%;
  object-fit: cover;
  flex-shrink: 0;
}
.section-subheading {
  margin: 0;
  height: 30px;
  width: 565px;
  position: relative;
  font-size: inherit;
  font-weight: 400;
  font-family: inherit;
  display: inline-block;
  flex-shrink: 0;
  z-index: 1;
}
.section-heading-wrapper {
  width: 614px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  box-sizing: border-box;
  max-width: 100%;
  position: relative;
  flex-shrink: 0;
  font-size: 89.2px;
}
.section-heading2 {
  width: 565px;
  height: 155px;
  position: relative;
  line-height: 77.4px;
  font-weight: 600;
  display: inline-block;
  flex-shrink: 0;
  z-index: 1;
}
.book-download-section,
.lead-acquisition {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  box-sizing: border-box;
  flex-shrink: 0;
  max-width: 100%;
}
.lead-acquisition {
  width: 663px;
  position: relative;
  margin-left: -90px;
}
.book-download-section {
  margin: 0;
  width: 465px;
  border-radius: var(--br-24);
  background-color: var(--color-white-solid);
  padding: 56px var(--padding-32);
  gap: var(--gap-20);
}
.label {
  align-self: stretch;
  height: var(--height-24);
  position: relative;
  flex-shrink: 0;
}
.label2 {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: flex-start;
  gap: var(--gap-4);
  flex-shrink: 0;
}
.input-label {
  position: relative;
  font-size: var(--fs-16);
  letter-spacing: 0.02em;
  line-height: var(--lh-16);
  font-weight: 600;
  font-family: Montserrat;
  color: var(--TextIcon-Primary-Black);
  text-align: left;
}
.help-icon {
  height: var(--height-16);
  width: var(--width-16);
  position: relative;
  display: none;
}
.optional {
  position: absolute;
  top: 0;
  right: -2px;
  font-size: var(--fs-12);
  line-height: var(--lh-16);
  font-family: Montserrat;
  color: var(--TextIcon-Secondary-Black);
  text-align: center;
  display: none;
  flex-shrink: 0;
}
.field-flexible,
.text11 {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.field-flexible {
  align-self: stretch;
  border-radius: 68px;
  background-color: var(--color-white-solid);
  border: var(--border-2);
  padding: var(--padding-8) var(--padding-16);
  gap: var(--gap-8);
}
.text11 {
  width: 100%;
  border: 0;
  outline: 0;
  background-color: transparent;
  flex: 1;
  font-family: Montserrat;
  font-size: var(--fs-16);
  color: var(--TextIcon-Secondary-Black);
}
.hint {
  width: var(--width-300);
  display: none;
  align-items: flex-start;
  flex-shrink: 0;
}
.hint-text {
  flex: 1;
  position: relative;
  font-size: var(--fs-12);
  line-height: var(--lh-16);
  font-family: Montserrat;
  color: var(--TextIcon-Secondary-Black);
  text-align: left;
}
.info-parent,
.message {
  border-radius: var(--br-4);
}
.message {
  width: var(--width-300);
  display: none;
  align-items: flex-end;
  padding: var(--padding-4) var(--padding-0) var(--padding-0);
  box-sizing: border-box;
  flex-shrink: 0;
}
.lead-acquisition .message.terranoa-book-error-row.terranoa-show-error {
  display: flex !important;
  align-items: flex-end;
}
.field-flexible.terranoa-invalid {
  border-color: #c62828 !important;
  box-shadow: 0 0 0 1px rgba(198, 40, 40, 0.2);
}
.info-parent {
  flex: 1;
  background-color: var(--Primary-100);
  display: flex;
  align-items: flex-start;
  padding: var(--padding-4);
  gap: var(--gap-4);
}
.info-icon {
  height: var(--height-16);
  width: var(--width-16);
  position: relative;
}
.message-text {
  width: 272px;
  position: relative;
  font-size: var(--fs-12);
  line-height: var(--lh-16);
  font-family: Montserrat;
  color: var(--TextIcon-Primary-Black);
  text-align: left;
  display: inline-block;
  flex-shrink: 0;
}
.error-parent {
  flex: 1;
  border-radius: var(--br-4);
  background-color: var(--Danger-100);
  display: flex;
  align-items: flex-start;
  padding: var(--padding-4);
  gap: var(--gap-4);
}
.input-label2,
.message-text2 {
  position: relative;
  line-height: var(--lh-16);
  font-family: Montserrat;
  color: var(--TextIcon-Primary-Black);
  text-align: left;
}
.message-text2 {
  flex: 1;
  font-size: var(--fs-12);
}
.input-label2 {
  font-size: var(--fs-16);
  letter-spacing: 0.02em;
  font-weight: 600;
  flex-shrink: 0;
}
.regular-button2 {
  cursor: pointer;
  border: 0;
  padding: var(--padding-16);
  background-color: var(--Primary-950-Default);
  align-self: stretch;
  border-radius: var(--br-48);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--gap-8);
}
.legal-reminder {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 44px;
  margin-bottom: 44px;
  margin-left: 30px;
  position: relative;
  flex-shrink: 0;
  font-size: var(--fs-16);
}
.information-message {
  width: 369px;
  height: var(--height-48);
  position: relative;
  display: inline-block;
  flex-shrink: 0;
}
.page {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: var(--Neutral-900);
  gap: var(--gap-40);
  z-index: 7;
  text-align: left;
  font-size: var(--fs-16);
  color: var(--TextIcon-Disabled-Black);
  font-family: Montserrat;
}
.page,
.subtitle-container,
.title-container {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.title-container {
  gap: 13px;
  text-align: center;
  font-size: var(--fs-12);
  color: var(--color-darksalmon-100);
  font-family: var(--font-poppins);
}
.subtitle-container {
  gap: var(--gap-16);
  font-size: var(--fs-36);
  color: var(--color-white-solid);
}
.button,
.tab {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-16);
}
.tab {
  cursor: pointer;
  border: 0;
  padding: var(--padding-10) var(--padding-16);
  background-color: var(--Primary-700);
  border-radius: var(--br-8);
  align-items: center;
  gap: var(--gap-8);
  flex-shrink: 0;
}
.placeholder-icon16,
.tab-name {
  position: relative;
  flex-shrink: 0;
}
.placeholder-icon16 {
  height: var(--height-20);
  width: var(--width-20);
  display: none;
}
.tab-name {
  font-size: var(--fs-16);
  letter-spacing: 0.02em;
  line-height: var(--lh-16);
  font-weight: 600;
  font-family: Montserrat;
  color: var(--color-white-solid);
  text-align: left;
}
.tab2 {
  border-radius: var(--br-8);
  display: flex;
  align-items: center;
  padding: var(--padding-10) var(--padding-16);
  gap: var(--gap-8);
  flex-shrink: 0;
  color: var(--color-white-60);
}
.tab-name2 {
  position: relative;
  letter-spacing: 0.02em;
  line-height: var(--lh-16);
  font-weight: 600;
  flex-shrink: 0;
}
/* Abas reais #fotos: ativo/inativo segue .is-active (não fixo em .tab/.tab2) */
#fotos .fotos-tabs .fotos-tab {
  font: inherit;
  text-align: left;
  border: 0;
  cursor: pointer;
  border-radius: var(--br-8);
  display: flex;
  align-items: center;
  padding: var(--padding-10) var(--padding-16);
  gap: var(--gap-8);
  flex-shrink: 0;
  background-color: transparent;
  color: var(--color-white-60);
}
#fotos .fotos-tabs .fotos-tab.is-active {
  background-color: var(--Primary-700);
  color: var(--color-white-solid);
}
#fotos .fotos-tabs .fotos-tab .tab-name,
#fotos .fotos-tabs .fotos-tab .tab-name2 {
  font-size: var(--fs-16);
  letter-spacing: 0.02em;
  line-height: var(--lh-16);
  font-weight: 600;
  font-family: Montserrat, sans-serif;
  color: inherit;
  text-align: left;
}

/* Painéis do clube: largura da viewport (align-items:center da .page causava max-content gigante no Slick) */
#fotos .fotos-tab-panel {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  align-self: stretch;
  box-sizing: border-box;
}

#fotos .club-carousel-mobile-viewport {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

#fotos .club-carousel-mobile-track {
  max-width: 100%;
}

/* Desktop #fotos: viewport + barra de paginação centrados (painel é stretch, não flex) */
#fotos .club-carousel-viewport,
#fotos .pagination-container--club {
  margin-left: auto;
  margin-right: auto;
}
.tab3 {
  color: var(--color-white-60);
}
.tab3,
.tab4 {
  border-radius: var(--br-8);
  display: none;
  align-items: center;
  padding: var(--padding-10) var(--padding-16);
  gap: var(--gap-8);
  flex-shrink: 0;
}
.tab-name4 {
  position: relative;
  letter-spacing: 0.02em;
  line-height: var(--lh-16);
  font-weight: 600;
}
.images-container {
  align-self: stretch;
  display: flex;
  align-items: flex-start;
  gap: var(--gap-40);
}
.image,
.image-text-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  box-sizing: border-box;
}
.image {
  height: 536.9px;
  flex: 1;
  border-radius: var(--br-24);
  overflow: hidden;
  padding: 375px 277px var(--padding-0) var(--padding-0);
  background-image: url(./public/Image@3x.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  min-width: 515px;
  text-align: left;
  font-size: var(--fs-12);
  color: var(--color-white-solid);
  font-family: var(--font-poppins);
}
.image-text-container {
  width: 515.1px;
  height: 161.5px;
  padding: 33.5px var(--padding-32) var(--padding-32);
  gap: var(--gap-10);
}
.image-highlight-container {
  border-radius: 16777200px;
  background-color: var(--color-sienna-100);
  display: flex;
  align-items: flex-start;
  padding: 4.5px var(--padding-6) 3.5px var(--padding-12);
}
.image-highlight {
  height: var(--height-16);
  width: 79px;
  position: relative;
  line-height: var(--lh-16);
  font-weight: 600;
  display: inline-block;
}
.image-title-container {
  width: 451.1px;
  height: var(--height-32);
  display: flex;
  align-items: flex-start;
  padding: 1px var(--padding-0) var(--padding-0);
  box-sizing: border-box;
  font-size: var(--fs-24);
}
.image-title {
  margin: 0;
  height: var(--height-32);
  width: 295px;
  position: relative;
  font-size: inherit;
  line-height: var(--lh-32);
  font-weight: 700;
  font-family: inherit;
  display: inline-block;
}
.image-subtext-container {
  display: flex;
  align-items: flex-start;
  font-size: var(--fs-14);
  color: var(--color-gray-1200);
}
.club-carousel-viewport {
  width: 1136px;
  max-width: 100%;
  align-self: center;
  overflow: hidden;
  cursor: grab;
  user-select: none;
}

.club-carousel-viewport.is-dragging {
  cursor: grabbing;
}

.club-carousel-track {
  display: flex;
  align-items: stretch;
  gap: 24px;
  transition: transform 0.35s ease;
  will-change: transform;
}

.club-carousel-track.slick-slider {
  display: block;
  margin: 0;
  transition: none;
  will-change: auto;
}
.club-carousel-track.slick-slider .slick-list {
  overflow: hidden;
  padding: 0 !important;
}
.club-carousel-track.slick-slider .slick-track {
  display: flex !important;
  margin-left: 0;
  margin-right: 0;
}
.club-carousel-track.slick-slider .slick-slide {
  height: auto;
  padding: 0;
  margin-right: 24px;
}
.club-carousel-track.slick-slider .slick-slide > div {
  height: 100%;
}

.club-carousel-viewport.is-dragging .club-carousel-track {
  transition: none;
}

.club-carousel-slide {
  height: 537px;
  border-radius: var(--br-24);
  overflow: hidden;
  flex: 0 0 auto;
  display: flex;
}

.club-carousel-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  flex-shrink: 0;
}

.club-carousel-slide--full {
  width: 792px;
}

.club-carousel-slide--pre {
  width: 320px;
}
.image-icon {
  height: 537px;
  width: 320px;
  border-radius: var(--br-24);
  object-fit: cover;
}
.pagination-container {
  align-self: stretch;
  border-radius: 90px;
  background-color: var(--Neutral-800);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--padding-24);
  gap: var(--gap-20);
  margin-top: 20px;
}
.left-arrow-button {
  height: 56px;
  width: 56px;
  position: relative;
  border-radius: var(--br-999);
}
.pagination-dots-container {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-8);
}
.inactive-dot,
.right-arrow-button {
  position: relative;
  border-radius: var(--br-999);
  overflow: hidden;
  flex-shrink: 0;
}
.inactive-dot {
  height: var(--height-8);
  width: var(--width-8);
  background-color: var(--color-dimgray-100);
}
.right-arrow-button {
  height: 56px;
  width: 56px;
  background-color: var(--color-gray-1100);
}

.pagination-container--club {
  background-color: rgba(255, 255, 255, 0.06);
  padding: 16px;
  width: 1136px;
  max-width: 100%;
  align-self: center;
  box-sizing: border-box;
}
/* Reflexo interno estilo .btn-4 — setas do carrossel club (desktop + mobile) */
.pagination-container--club .left-arrow-container,
.pagination-container--club .right-arrow-container {
  position: relative;
  width: 56px;
  height: 56px;
  overflow: hidden;
  flex-shrink: 0;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-sizing: border-box;
  isolation: isolate;
  box-shadow: none;
  transition: box-shadow 0.4s ease;
}

.pagination-container--club .left-arrow-container > *,
.pagination-container--club .right-arrow-container > * {
  position: relative;
  z-index: 20;
}

.pagination-container--club .left-arrow-container::after,
.pagination-container--club .right-arrow-container::after {
  background: #fff;
  content: "";
  height: 155px;
  left: -75px;
  opacity: 0.2;
  position: absolute;
  top: -50px;
  transform: rotate(35deg);
  transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
  width: 50px;
  z-index: -10;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine) {
  .pagination-container--club .left-arrow-container:not([aria-disabled="true"]):hover,
  .pagination-container--club .right-arrow-container:not([aria-disabled="true"]):hover,
  .pagination-container--club-mobile .left-arrow-container:not([aria-disabled="true"]):hover,
  .pagination-container--club-mobile .right-arrow-container:not([aria-disabled="true"]):hover {
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.2),
      inset 0 0 18px rgba(255, 255, 255, 0.06),
      inset 0 -6px 16px rgba(255, 255, 255, 0.04);
  }

  .pagination-container--club .left-arrow-container:not([aria-disabled="true"]):hover::after,
  .pagination-container--club .right-arrow-container:not([aria-disabled="true"]):hover::after,
  .pagination-container--club-mobile .left-arrow-container:not([aria-disabled="true"]):hover::after,
  .pagination-container--club-mobile .right-arrow-container:not([aria-disabled="true"]):hover::after {
    left: 120%;
    transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
  }
}

.pagination-container--club-mobile .left-arrow-container,
.pagination-container--club-mobile .right-arrow-container {
  position: relative;
  overflow: hidden;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-sizing: border-box;
  isolation: isolate;
  box-shadow: none;
  transition: box-shadow 0.4s ease;
}

.pagination-container--club-mobile .left-arrow-container > *,
.pagination-container--club-mobile .right-arrow-container > * {
  position: relative;
  z-index: 20;
}

.pagination-container--club-mobile .left-arrow-container::after,
.pagination-container--club-mobile .right-arrow-container::after {
  background: #fff;
  content: "";
  height: 155px;
  left: -75px;
  opacity: 0.2;
  position: absolute;
  top: -50px;
  transform: rotate(35deg);
  transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
  width: 50px;
  z-index: -10;
  pointer-events: none;
}

/* Mobile clube: anular .right-arrow-container { background: branco } global — ícones escuros no fundo escuro */
.pagination-container--club-mobile .left-arrow-container,
.pagination-container--club-mobile .right-arrow-container {
  width: 56px;
  height: 56px;
  background: transparent !important;
  background-color: transparent !important;
}

.club-carousel-dots {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  flex: 1;
  min-width: 0;
  flex-wrap: wrap;
  overflow: visible;
}

.club-carousel-dots .inactive-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background-color: rgba(218, 222, 230, 0.62);
}

.club-carousel-dots .inactive-dot.is-active {
  width: 14px;
  background-color: rgba(218, 222, 230, 0.9);
}

.club-carousel-dots .vertical-line {
  display: none !important;
}

.club-carousel-dots .slick-dots {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 7px;
  flex: 1;
  min-width: 0;
}
.club-carousel-dots .slick-dots li {
  margin: 0;
  line-height: 0;
}
.club-carousel-dots .slick-dots li button {
  border: 0;
  background: transparent;
  padding: 0;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
}
.club-carousel-dots .slick-dots li .inactive-dot {
  transition: width 0.25s ease, background-color 0.25s ease;
}

.club-carousel-dots .slick-dots li.slick-active .inactive-dot {
  width: 14px;
  background-color: rgba(218, 222, 230, 0.9);
}

.club-carousel-prev-icon.is-arrow {
  transform: rotate(180deg);
}

.club-carousel-prev .club-carousel-prev-icon,
.club-carousel-next .club-carousel-next-icon {
  width: 56px;
  height: 56px;
  display: block;
  object-fit: contain;
}

.club-carousel-prev[aria-disabled="true"],
.club-carousel-next[aria-disabled="true"] {
  background: transparent;
}

.club-carousel-prev:not([aria-disabled="true"]),
.club-carousel-next:not([aria-disabled="true"]) {
  background: transparent;
}

.club-carousel-prev .right-arrow-icon,
.club-carousel-next .right-arrow-icon {
  position: static;
  width: 56px;
  height: 56px;
  overflow: visible;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.club-carousel-mobile-viewport,
.pagination-container--club-mobile {
  display: none;
}

.club-carousel-mobile-viewport {
  align-self: stretch;
  overflow: hidden;
  cursor: grab;
}
.club-carousel-mobile-viewport:active {
  cursor: grabbing;
}

.club-carousel-mobile-track {
  display: flex;
  gap: 12px;
  transition: transform 0.35s ease;
  will-change: transform;
}

/* Com Slick ativo: mesma ideia do .club-carousel-track desktop — faixa horizontal */
.club-carousel-mobile-track.slick-slider {
  display: block;
  margin: 0;
  transition: none;
  will-change: auto;
}

.club-carousel-mobile-track.slick-slider .slick-list {
  overflow: hidden;
  margin: 0;
  padding: 0 !important;
}

/* Não forçar flex no .slick-track: o Slick usa floats; flex quebrava o cálculo de larguras dos slides */
.club-carousel-mobile-track.slick-slider .slick-track {
  display: block;
  margin-left: 0;
  margin-right: 0;
}

.club-carousel-mobile-track.slick-slider .slick-slide {
  height: auto;
  padding: 0;
  box-sizing: border-box;
}

.club-carousel-mobile-viewport .slick-slide > div {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.club-mobile-slide {
  flex-shrink: 0;
  min-width: 0;
}

.club-mobile-image {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 320 / 510;
  min-height: 0;
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}

.club-mobile-image img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}

.club-mobile-prev-icon.is-arrow {
  transform: rotate(180deg);
}

/* Mesmos PNGs que o desktop (.club-carousel-prev-icon): preencher o círculo 56px */
.club-mobile-prev .club-mobile-prev-icon,
.club-mobile-next .club-mobile-next-icon {
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  object-fit: contain;
}

.pagination-container--club-mobile .club-mobile-next .club-mobile-next-icon.expanded-icon {
  width: 56px;
  height: 56px;
  max-height: none;
}

.club-mobile-prev[aria-disabled="true"],
.club-mobile-next[aria-disabled="true"] {
  background: transparent;
}

.club-mobile-prev:not([aria-disabled="true"]),
.club-mobile-next:not([aria-disabled="true"]) {
  background: var(--color-white-solid);
}

.club-mobile-prev .right-arrow-icon,
.club-mobile-next .right-arrow-icon {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
}

.club-mobile-dots {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  flex: 1;
  min-width: 0;
  flex-wrap: wrap;
  overflow: visible;
}

.club-mobile-dots .inactive-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background-color: rgba(218, 222, 230, 0.62);
}

.club-mobile-dots .inactive-dot.is-active {
  width: 14px;
  background-color: rgba(218, 222, 230, 0.9);
}

.club-mobile-dots .vertical-line {
  display: none !important;
}

.club-mobile-dots .slick-dots {
  justify-content: center;
  flex-wrap: wrap;
  flex: 1;
  min-width: 0;
}

.club-mobile-dots .slick-dots li .inactive-dot {
  transition: width 0.25s ease, background-color 0.25s ease;
}

.club-mobile-dots .slick-dots li.slick-active .inactive-dot {
  width: 14px;
  background-color: rgba(218, 222, 230, 0.9);
}

@media screen and (max-width: 450px) {
  .product2-tabs-carousel-viewport .slick-slide
  {
    display: flex !important;
  }
  .identification-prompt-wrapper
  {
    justify-content: left;
    padding: 0;
    width: 100%;
  }
  .section-tagline 
  {
    font-size: 14px !important;
  }
  .text-block 
  {
    width: 100%;
  }
  .pessoas-com-perfis
  {
    font-size: 16px !important;
    line-height: 100%;
  }
  .lettering-hero
  {
    display: none;
  }
  .lettering-hero-mob 
  {
    position: absolute;
  }
}
@media screen and (max-width: 925px) {
  .club-carousel-viewport,
  .pagination-container--club:not(.pagination-container--club-mobile) {
    display: none;
  }

  /* Block: flex no viewport quebrava o layout interno do Slick (slides em coluna) */
  .club-carousel-mobile-viewport {
    display: block;
    width: 100%;
  }

  .pagination-container--club-mobile {
    display: flex;
    margin-top: 12px;
    padding: 12px;
  }
}

.right-arrow-icon {

  width: var(--width-24);

}
.product,
.subtitle2,
.title2 {
  display: flex;
  flex-direction: column;
}
.product {
  align-self: stretch;
  background-color: var(--color-seashell);
  overflow: hidden;
  align-items: flex-start;
  padding-top: 80px;
  padding-bottom: 80px;
  position: relative;
  isolation: isolate;
  gap: var(--gap-10);
  z-index: 8;
  text-align: center;
  font-size: var(--fs-12);
  color: var(--color-sienna-100);
  font-family: var(--font-poppins);
}
.subtitle2,
.title2 {
  align-items: center;
}
.title2 {
  align-self: stretch;
  gap: var(--gap-48);
  z-index: 0;
}
.subtitle2 {
  width: 564px;
  gap: var(--gap-14);
}
.description2 {
  margin: 0;
  align-self: stretch;
  position: relative;
  font-size: var(--fs-36);
  line-height: var(--lh-40);
  font-weight: 700;
  font-family: inherit;
  color: var(--color-gray-200);
}
.image2,
.plantas-inteligentes-acabamen {
  align-self: stretch;
  color: var(--color-dimgray-200);
}
.plantas-inteligentes-acabamen {
  position: relative;
  font-size: var(--fs-16);
}
.image2 {
  display: flex;
  align-items: center;
  gap: var(--gap-24);
  text-align: left;
  font-size: var(--fs-14);
  font-family: var(--font-poppins);
  max-width: 1150px;
  width: 100%;
  margin: auto;
}
.container-icon2 {

  flex: 1;
  border-radius: var(--br-24);
  max-width: 100%;
  overflow: hidden;
  object-fit: cover;
  min-width: 366px;
}
.container94,
.container95 {
  box-sizing: border-box;
  display: flex;
}
.container94 {
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-20) var(--padding-0);
  gap: var(--gap-16);
  min-width: 366px;
}
.container95 {
  width: 100%;
  height: 56px;
  border-radius: 12px;
  background-color: var(--color-white-solid);
  border: var(--border-1);
  align-items: center;
  justify-content: space-between;
  padding: var(--padding-14) var(--padding-20);
  gap: var(--gap-20);
}
.option-title,
.option-title-mobile {
  position: relative;
  letter-spacing: 0.35px;
  line-height: var(--lh-20);
  text-transform: uppercase;
  font-weight: 600;
}
.option-title-mobile {
  display: none;
}
.room-type-container-parent {
  display: flex;
  align-items: center;
  gap: var(--gap-24);
  text-align: center;
  color: var(--color-gray-200);
}
.room-type-container {
  display: flex;
  align-items: center;
  gap: var(--gap-8);
}
.meeting-room-32dp-002145-1-icon {
  width: var(--width-24);
  position: relative;
  max-height: 100%;
}
.room-size-parent {
  display: flex;
  align-items: center;
  gap: var(--gap-8);
  font-size: var(--fs-12);
  color: var(--color-dimgray-200);
}
.room-size {
  position: relative;
  line-height: var(--lh-16);
}
.container109--mobile-clone {
  display: none;
}
.image2-wrapper {
  position: relative;
  width: 50%;
  height: 100%;
}
.container94
{
  width: 50%;
  height: 100%;

}

.container96 {
  width: 100%;
  border-radius: var(--br-24);
  background-color: var(--color-white-solid);
  border: var(--border-1);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-content: start;
  gap: var(--gap-16);
  padding-left: var(--padding-24);
  padding-right: var(--padding-24);
  padding-top: var(--padding-24);
  padding-bottom: var(--padding-24);
  overflow: auto;
  color: var(--color-gray-200);
  box-sizing: border-box;
}
.container97 {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-12);
  grid-column: 1;
  grid-row: 1;
}
.design-services-24dp-e3e3e3-1-icon {
  width: var(--width-32);
  position: relative;
  max-height: 100%;
}
.container98 {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-6);
  min-width: var(--min-w-133);
}
.feature-detail,
.feature-name {
  align-self: stretch;
  position: relative;
}
.feature-name {
  line-height: var(--lh-20);
  font-weight: 600;
}
.feature-detail {
  line-height: var(--lh-16_5);
  color: var(--TextIcon-Secondary-Black);
}
.container101,
.container103,
.container99 {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-12);
  grid-column: 1;
  grid-row: 2;
}
.container101,
.container103 {
  grid-column: 2;
  grid-row: 1;
}
.container103 {
  grid-row: 2;
}
.container105 {
  gap: var(--gap-12);
  grid-column: 1;
  grid-row: 3;
}
.container105,
.container107,
.container109 {
  display: flex;
  align-items: flex-start;
}
.container107 {
  gap: var(--gap-12);
  grid-column: 2;
  grid-row: 3;
}
.container109 {
  width: 172.6px;
  margin: 0 !important;
  position: absolute;
  top: -53.4px;
  left: 74.5px;
  box-shadow:
    0 29.4px 36.7px -7.34px rgba(0, 0, 0, 0.1),
    0 11.7px 14.7px -8.81px rgba(0, 0, 0, 0.1);
  border-radius: 17.6px;
  border-radius: 17.613px;
  background: linear-gradient(110deg, #1B1F27 31.12%, #C4603A 208.78%);
  box-shadow: 0 29.354px 36.693px -7.339px rgba(0, 0, 0, 0.10), 0 11.742px 14.677px -8.806px rgba(0, 0, 0, 0.10);
  flex-direction: column;
  padding: 20px 20px 20px 20px;
  box-sizing: border-box;

  z-index: 1;
  text-align: left;
  font-size: 17.6px;
  color: var(--color-white-solid);
}
.feature-detail7,
.feature-name7 {
  position: relative;
  font-weight: 500;
}
.feature-detail7 {
  margin: 0;
  margin-top: -10px;
  font-size: 26.4px;
  font-weight: 700;
  font-family: inherit;
  color: var(--color-sienna-100);
}
.product2 {
  align-self: stretch;
  background-color: var(--color-white-solid);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  z-index: 9;
  text-align: left;
  font-size: var(--fs-14);
  color: var(--color-white-solid);
  font-family: var(--font-poppins);
  background-image: url('./public/pattern_light.png');
  background-position: bottom left;
  background-repeat: no-repeat;
  padding-top: 100px;
  padding-bottom: 100px;
}
.container-tour 
{
  width: 1150px;
  margin: auto;
}
.component-1 {
  width: 1150px;
  max-width: 100%;
  min-height: 570px;
  height: auto;
  box-shadow: var(--Elevation-400);
  border-radius: var(--br-32);
  background: linear-gradient(
    100deg,
    rgba(27, 31, 39, 1) 40%,
    rgba(196, 96, 58, 1) 100%
  );
  display: flex;
  flex-direction: column;
  align-items: stretch;
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  gap: 0;
}

.product2-body {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  flex: 1;
  gap: 32px;
  min-height: 0;
}

/* Desktop: menu flutuante sobre o painel; tour em tela cheia por baixo */
@media screen and (min-width: 926px) {
  .product2 .features-details {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 5;
    width: 270px;
    justify-content: center;
    pointer-events: none;
    padding-left: 30px;
    box-sizing: border-box;
  }

  .product2 .features-details .feature-list {
    pointer-events: auto;
  }

  .product2-panels-side {
    flex: 1;
    width: 100%;
    min-width: 0;
  }

  /* Coluna da lista (270px) + mesmo respiro que o gap do flex original (32px) */
  .product2-panel:not(.product2-panel--tour) {
    padding-left: calc(270px + 32px);
    padding-right: 30px;
    box-sizing: border-box;
  }

  .product2-tour-stage {
    min-height: clamp(300px, 48vh, 560px);
  }
}

.product2-panels-side {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  gap: 20px;
}

.product2-panels {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 280px;
  box-sizing: border-box;
  padding: 0;
  overflow: visible;
  background: transparent;
  border: none;
  border-radius: 0;
}

.product2-panel {
  display: none;
  margin: 0;
  flex: 1;
  min-height: 0;
}

.product2-panel.is-active {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.product2-panel[hidden] {
  display: none !important;
}

.product2-panel-text {
  margin: 0;
  color: rgba(255, 255, 255, 0.92);
  font-size: var(--fs-16);
  line-height: 1.5;
  max-width: 520px;
  padding: 4px 0 0;
}

.product2-tour-stage {
  position: relative;
  flex: 1;
  width: 100%;
  min-height: clamp(240px, 38vw, 480px);
  border-radius: 16px;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.45);
}

.product2-tour-poster {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.product2-tour-thumb {
  position: absolute;
  inset: 0;
  background-image: url("https://my.matterport.com/api/v1/player/models/LxYCevcinoc/thumb?width=1920&dpr=2");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.product2-tour-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  width: 72px;
  height: 72px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 50%;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.5);
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.product2-tour-play:hover {
  background: rgba(196, 96, 58, 0.92);
}

.product2-tour-play:active {
  transform: translate(-50%, -50%) scale(0.96);
}

.product2-tour-play:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.9);
  outline-offset: 4px;
}

.product2-tour-play-icon {
  display: block;
  width: 0;
  height: 0;
  margin-left: 5px;
  border-style: solid;
  border-width: 14px 0 14px 22px;
  border-color: transparent transparent transparent #fff;
}

.product2-tour-video-embed {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  border-radius: 16px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
}

.product2-tour-video-embed iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.product2-panel-image {
  display: block;
  width: 100%;
  max-width: 435px;
  height: auto;
  object-fit: contain;
  object-position: center top;
  border-radius: 12px;
  margin: auto;
}

.product2-clube-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.product2-clube-card {
  min-height: 104px;
  border-radius: 10px;
  background: linear-gradient(
    140deg,
    rgba(196, 96, 58, 1) 0%,
    rgba(176, 84, 51, 1) 45%,
    rgba(144, 69, 43, 1) 100%
  );
  border: 1px solid rgba(255, 255, 255, 0.08);
  padding: 10px 12px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6px;
  color: #fff;
  font-family: var(--font-poppins);
  font-size: 13px;
  font-weight: 600;
  line-height: 18px;
  letter-spacing: 0;
}

.product2-clube-card .feature-icon {
  width: 16px;
  height: 16px;
  border-radius: 999px;
}

.product2-clube-card span {
  display: block;
}

.product2-panels-side .feature-footer {
  width: 243px;
  max-width: 100%;
  align-self: flex-end;
  margin-top: auto;
}

.product2-tab {
  font: inherit;
  color: var(--color-white-solid);
  -webkit-appearance: none;
  appearance: none;
  text-align: left;
  width: 80%;
  box-sizing: border-box;
  cursor: pointer;
}

.product2-tab.feature-item:not(.is-active),
.product2-tab.feature-item2:not(.is-active),
.product2-tab.feature-item3:not(.is-active) {
  background-color: rgba(27, 31, 39, 0.4) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.product2-tab.feature-item.is-active,
.product2-tab.feature-item2.is-active,
.product2-tab.feature-item3.is-active {
  background-color: rgba(196, 96, 58, 0.95) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.product2-tab-text-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 1;
  min-width: 0;
  gap: 8px;
}

.product2-tab-badge {
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 4px 8px;
  border-radius: 999px;
  background-color: #000;
  color: #fff;
}

/* Carrossel de tabs mobile – escondido no desktop */
.product2-tabs-carousel-viewport {
  display: none;
}

@media screen and (max-width: 925px) {
  .product2 {
    align-items: stretch;
  }

  .product2 > .container-tour {
    width: 100%;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
  }

  .product2 .component-1 {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: clamp(300px, 52vh, 480px);
  }

  .product2-body {
    flex-direction: column;
    flex: 1;
    min-height: 0;
  }

  .product2-panels-side {
    flex: 1;
    min-height: 0;
  }

  .product2-panels {
    flex: 1;
    min-height: 0;
  }

  .product2-panel:not(.product2-panel--tour) {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }

  .product2-panel.is-active:has(.product2-clube-grid) {
    justify-content: center;
    padding-block: 10px;
    box-sizing: border-box;
  }

  .product2-clube-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
  }

  .product2-clube-card {
    min-height: 86px;
    padding: 8px 10px;
    border-radius: 8px;
    gap: 4px;
    font-size: 12px;
    line-height: 16px;
  }

  .product2-clube-card .feature-icon {
    width: 14px;
    height: 14px;
  }

  /* Esconde menu interno de tabs no mobile */
  .product2 .features-details {
    display: none !important;
  }

  /* Carrossel externo de tabs */
  .product2-tabs-carousel-viewport {
    display: block;
    width: 100%;
    overflow: hidden;
    margin-bottom: 16px;
    padding-left: 20px;
    box-sizing: border-box;
  }

  .product2-tabs-carousel-track {
    display: flex;
    gap: 12px;
    transition: transform 0.35s ease;
    will-change: transform;
    cursor: grab;
    padding: 4px 2px;
  }

  .product2-tabs-carousel-track:active {
    cursor: grabbing;
  }

  .product2-carousel-tab {
    flex-shrink: 0;
    /* width set by JS */
    font: inherit;
    color: var(--color-white-solid);
    -webkit-appearance: none;
    appearance: none;
    text-align: left;
    box-sizing: border-box;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    background-color: rgba(27, 31, 39, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.12);
    white-space: nowrap;
    transition: background-color 0.2s ease, border-color 0.2s ease;
  }

  .product2-carousel-tab.is-active,
  .product2-carousel-tab.aba-ativa {
    background-color: rgba(196, 96, 58, 0.95) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
  }

  .product2-carousel-tab .feature-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
  }

  .product2-carousel-tab .feature-details {
    font-size: 14px;
    font-weight: 600;
  }
}

.feature-list,
.features-details {
  width: 270px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex-shrink: 0;
}
.features-details {
  min-height: 0;
  justify-content: center;
  padding: 0;
  box-sizing: border-box;
  z-index: 0;
}
.feature-list {
  gap: var(--gap-16);
}
.feature-item {
  align-self: stretch;
  border-radius: var(--br-100);
  background-color: var(--color-sienna-200);
  border: 1px solid var(--color-coral);
  overflow: hidden;
  display: flex;
  align-items: center;
  padding: var(--padding-16) var(--padding-24);
  gap: var(--gap-8);
}
.feature-icon {
  height: var(--height-24);
  width: var(--width-24);
  position: relative;
  border-radius: var(--br-42);
}
.feature-item2 {
  cursor: pointer;
  border: 0;
  padding: var(--padding-16) var(--padding-24);
  background-color: var(--color-gray-1100);
  align-self: stretch;
  border-radius: var(--br-100);
  overflow: hidden;
}
.feature-footer,
.feature-item2,
.feature-item3 {
  display: flex;
  align-items: center;
  gap: var(--gap-8);
}
.feature-item3 {
  align-self: stretch;
  border-radius: var(--br-100);
  background-color: var(--color-gray-1100);
  overflow: hidden;
  padding: var(--padding-16) var(--padding-24);
}
.feature-footer {
  width: 243px;
  flex-direction: column;
  justify-content: center;
  z-index: 1;
  text-align: center;
  font-size: 19.1px;
  font-family: var(--font-bebas-neue);
}
.footer-icon {
  width: 243px;
  position: relative;
  max-height: 100%;
}
.feature-name13 {
  align-self: stretch;
  position: relative;
  letter-spacing: 4.39px;
  line-height: 17.5px;
}
.badge {
  cursor: pointer;
  border: 0;
  padding: var(--padding-10);
  background-color: var(--Neutral-1000);
  width: 101px;
  margin: 0 !important;
  position: absolute;
  top: 265px;
  left: 297px;
  border-radius: var(--br-999);
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  z-index: 2;
}
.conditions,
.esgotado {
  font-family: var(--font-poppins);
}
.esgotado {
  position: relative;
  font-size: var(--fs-14);
  line-height: var(--lh-20);
  font-weight: 600;
  color: var(--color-white-solid);
  text-align: left;
}
.conditions {
  align-self: stretch;
  background: linear-gradient(135deg, var(--color-sienna-100), #8b3a2a);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  z-index: 10;
  padding-top: 80px;
  padding-bottom: 80px;
  text-align: center;
  font-size: var(--fs-12);
  color: var(--color-white-60);
}
.condies-de-pagamento-parent,
.condition-layout {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: auto;
}
.condition-layout {
  width: 1152px;
  gap: var(--gap-32);
}
.condies-de-pagamento-parent {
  width: 855px;
  gap: 13px;
}
.planejamos-cada-detalhe {
  align-self: stretch;
  position: relative;
  font-size: var(--fs-18);
  line-height: var(--lh-28);
  color: var(--color-gray-1200);
}
.container110,
.payment-cards {
  align-self: stretch;
  display: flex;
}
.payment-cards {
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  gap: var(--gap-24);
  text-align: left;
  font-size: var(--fs-18);
  color: var(--color-white-solid);
  font-family: var(--font-poppins);
}
.container110 {
  flex: 1;
  border-radius: var(--br-24);
  background-color: var(--color-gray-1000);
  border: 1px solid var(--color-gray-600);
  box-sizing: border-box;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-22) var(--padding-23);
  gap: var(--gap-14);
  min-width: 202px;
  max-width: var(--max-w-270);
}
.payments-32dp-002145-1-icon {
  width: var(--width-40);
  height: var(--height-40);
  position: relative;
}
.at-100-financiado-parent {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-8);
}
.at-100-financiado {
  align-self: stretch;
  position: relative;
  line-height: var(--lh-28);
  font-weight: 600;
}
.entrada-facilitada-parcelas {
  align-self: stretch;
  position: relative;
  font-size: var(--fs-14);
  color: var(--color-gray-500);
}
.entrada-facilitada-parcelas .payment-card-lead-link {
  color: inherit;
  font: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.entrada-facilitada-parcelas .payment-card-lead-link:hover {
  text-decoration-thickness: 2px;
}
.container113 {
  align-self: stretch;
  flex: 1;
  border-radius: var(--br-24);
  background-color: var(--color-gray-1000);
  border: 1px solid var(--color-gray-600);
  box-sizing: border-box;
  flex-direction: column;
  padding: var(--padding-24) var(--padding-23);
  gap: var(--gap-14);
  min-width: 202px;
  max-width: var(--max-w-270);
}
/* Dots ocultos no desktop */
.payment-cards-dots {
  display: none;
}

/* FAQ mobile controls — ocultos no desktop */
.faq-mobile-controls {
  display: none;
}
.faq-body {
  display: none;
}
.faq-body:not([hidden]) {
  display: block;
  padding: 4px 0 8px;
  font-size: var(--fs-14);
  line-height: 1.6;
  color: #555;
  font-family: var(--font-poppins);
}
.faq-body p {
  margin: 0;
}
.faq-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap-20);
  background: none;
  border: none;
  cursor: pointer;
  font: inherit;
  text-align: left;
  padding: 0;
  box-sizing: border-box;
}
.faq-trigger .title14 {
  flex: 1;
}
.faq-trigger .button2 {
  flex-shrink: 0;
}
.faq-chevron {
  transition: transform 0.25s ease;
}
.faq-trigger[aria-expanded="true"] .faq-chevron {
  transform: rotate(90deg);
}

.container113,
.content,
.layout-25 {
  display: flex;
  align-items: flex-start;
}
.layout-25 {
  width: 100%;
  background-color: var(--color-white-solid);
  overflow: hidden;
  box-sizing: border-box;
  gap: var(--gap-40);
  max-width: 100%;
  z-index: 11;
  padding-top: 80px;
  padding-bottom: 80px;
}
.container-vocação
{
  width: 1150px;
  margin: auto;
  display: flex;
  flex-direction: row;

}
.content {
  width: 305px;
  flex-direction: column;
  gap: 112px;
  text-align: left;
  font-size: var(--fs-48);
  color: var(--TextIcon-Primary-Black);
  font-family: var(--font-lato);
  margin-right: 40px;
}
.heading2 {
  margin: 0;
  align-self: stretch;
  position: relative;
  font-size: inherit;
  line-height: var(--lh-48);
  font-family: inherit;
}
.i {
  font-weight: 900;
}
.text14 {
  align-self: stretch;
  position: relative;
  font-size: var(--fs-18);
}
.vector-icon7 {
  width: 246.3px;
  height: 38.5px;
  position: relative;
}
.highlight-image-column {
  width: 650px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: var(--gap-24);
  max-width: 100%;
  text-align: center;
  font-size: var(--fs-40);
  color: var(--color-white-solid);
  font-family: var(--font-lato);
}
.highlight-image-row {
  width: 650px;
  height: 360px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap-20);
}
.foto {
  height: 360px;
  width: 313px;
  border-radius: var(--br-32);
  display: flex;
  align-items: flex-end;
  padding: var(--padding-40) var(--padding-28) var(--padding-40) 29px;
  box-sizing: border-box;
  background-image: url(./public/foto@3x.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
}
.list-item {
  width: 256px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap-8);
}
.dine-heart-24dp-e3e3e3-fill0-w-parent {
  border-radius: var(--br-50);
  background-color: var(--color-gray-1100);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--padding-8) var(--padding-24);
  gap: var(--gap-10);
}
.number,
.text15 {
  position: relative;
}
.number {
  margin: 0;
  font-size: inherit;
  line-height: 120%;
  font-weight: 900;
  font-family: inherit;
}
.text15 {
  align-self: stretch;
  font-size: var(--fs-16);
}
.foto2,
.highlight-image {
  border-radius: var(--br-32);
  display: flex;
  box-sizing: border-box;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
}
.foto2 {
  height: 360px;
  width: 313px;
  align-items: flex-end;
  padding: var(--padding-40) var(--padding-28) var(--padding-40) 29px;
  background-image: url(./public/foto1@3x.png);
}
.highlight-image {
  align-self: stretch;
  height: 260px;
  align-items: flex-start;
  padding: 188.7px var(--padding-16) 15.3px;
  position: relative;
  isolation: isolate;
  background-image: url(./public/Highlight-Image@3x.png);
  max-width: 100%;
  font-size: 142.6px;
  color: var(--color-tan);
  font-family: var(--font-rock-salt);
}
.number3 {
  margin: 0 !important;
  height: 161px;
  width: 220px;
  position: absolute;
  top: calc(50% + 22.7px);
  left: calc(50% + 139px);
  font-size: inherit;
  letter-spacing: -0.63px;
  line-height: 160.1px;
  font-weight: 400;
  font-family: inherit;
  display: inline-block;
  flex-shrink: 0;
}
.highlight-stats-row {
  width: 433px;
  border-radius: var(--br-50);
  background-color: var(--color-gray-1100);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--padding-8) var(--padding-24);
  box-sizing: border-box;
  gap: var(--gap-10);
  max-width: 100%;
  z-index: 1;
  flex-shrink: 0;
  text-align: left;
  font-size: var(--fs-24);
  color: var(--color-white-solid);
  font-family: var(--font-lato);
}
.number4 {
  margin: 0;
  flex: 1;
  position: relative;
  font-size: inherit;
  letter-spacing: -0.01px;
  line-height: 120%;
  font-weight: 900;
  font-family: inherit;
}
.d-o-primeiro-passo-fale-com-parent,
.footer-container {
  display: flex;
  max-width: 100%;
  z-index: 2;
  width: 50%;
  align-items: flex-end;
  padding-top: 200px;
}
.footer-container {
  height: 856px;
  overflow: hidden;
  flex-shrink: 0;
  box-sizing: border-box;
  background-image: url(./public/Footer-Container@3x.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  text-align: left;
  font-size: var(--fs-36);
  color: var(--color-white-solid);
  font-family: var(--font-poppins);
  width: 100%;
  display: flex;
}
.d-o-primeiro-passo-fale-com-parent {
  flex-direction: column;
  height: 100%;
}
.fale-com-um {
  color: var(--color-darksalmon-200);
}
.preencha-o-formulrio {
  align-self: stretch;
  position: relative;
  font-size: var(--fs-14);
  color: var(--color-gray-400);
}
.content-panel,
.content3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 3px var(--padding-0) var(--padding-0);
  box-sizing: border-box;
  max-width: 100%;
}
.content3 {
  width: 456px;
  border-radius: var(--br-24);
  background-color: var(--color-white-solid);
  border: 1px solid var(--Neutral-200);
  padding: 30px var(--padding-31);
}
.footer-form-container,
.footer-form-fields-container,
.form,
.input-field {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.form {
  margin: 0;
  gap: var(--gap-40);
}
.footer-form-container,
.footer-form-fields-container,
.input-field {
  gap: var(--gap-24);
}
.footer-form-fields-container,
.input-field {
  gap: var(--gap-16);
}
.input-field {
  gap: var(--Space-200);
}
.description3,
.label7 {
  position: relative;
  font-size: var(--fs-16);
  line-height: 140%;
  font-family: var(--font-inter);
  text-align: left;
  flex-shrink: 0;
}
.label7 {
  align-self: stretch;
  color: var(--color-gray-300);
}
.description3 {
  width: 240px;
  color: var(--color-gray-100);
  display: none;
}
.input {
  align-self: stretch;
  border-radius: var(--Radius-200);
  background-color: var(--color-white-solid);
  border: var(--Stroke-Border) solid var(--color-gainsboro-200);
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
  align-items: center;
  padding: var(--Space-300) var(--Space-400);
  min-width: 120px;
  flex-shrink: 0;
}
.error,
.value {
  position: relative;
  font-size: var(--fs-16);
  font-family: var(--font-inter);
  color: var(--color-gray-300);
  text-align: left;
}
.value {
  width: 100%;
  border: 0;
  outline: 0;
  background-color: transparent;
  flex: 1;
  line-height: 100%;
  display: inline-block;
}
.error {
  line-height: 140%;
  display: none;
  flex-shrink: 0;
}
.input-field.terranoa-has-error .input {
  border-color: #c62828;
  box-shadow: 0 0 0 1px rgba(198, 40, 40, 0.12);
}
.input-field.terranoa-has-error .error {
  display: block !important;
  color: #b00020;
  font-size: 13px;
  font-weight: 500;
}
.checkbox {
  align-self: stretch;
  display: flex;
  align-items: center;
}
.label10 {
  flex: 1;
  position: relative;
  font-size: var(--Text-Sizes-Text-Small);
  line-height: 150%;
  font-family: var(--font-lato);
  color: var(--Color-Neutral-Darkest);
  text-align: left;
}
.termos {
  text-decoration: underline;
}
.footer-submit-button {
  cursor: pointer;
  border: 0;
  padding: var(--padding-01);
  background-color: transparent;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.regular-button3 {
  align-self: stretch;
  border-radius: 36px;
  background-color: var(--Primary-950);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--padding-16);
  gap: var(--gap-8);
}
.button-label {
  position: relative;
  font-size: var(--fs-16);
  letter-spacing: 0.02em;
  line-height: var(--lh-16);
  font-weight: 600;
  font-family: var(--font-lato);
  color: var(--color-white-solid);
  text-align: center;
  flex-shrink: 0;
}
.conditions2 {
  align-self: stretch;
  background-color: var(--color-whitesmoke-100);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-72) var(--padding-384);
  box-sizing: border-box;
  gap: var(--gap-24);
  max-width: 100%;
  z-index: 13;
  text-align: left;
  font-size: var(--fs-12);
  color: var(--TextIcon-Primary-Black);
  font-family: Montserrat;
}
.tire-suas-dvidas {
  margin: 0;
  align-self: stretch;
  position: relative;
  font-size: var(--fs-36);
  line-height: var(--lh-40);
  font-weight: 700;
  font-family: var(--font-poppins);
}
.hint4 {
  width: var(--width-300);
  display: none;
  align-items: flex-start;
  color: var(--TextIcon-Secondary-Black);
}
.hint-text4 {
  flex: 1;
  position: relative;
  line-height: var(--lh-16);
}
.message7 {
  width: var(--width-300);
  border-radius: var(--br-4);
  display: none;
  align-items: flex-end;
  padding: var(--padding-4) var(--padding-0) var(--padding-0);
  box-sizing: border-box;
}
.message-text7 {
  width: 272px;
  position: relative;
  line-height: var(--lh-16);
  display: inline-block;
  flex-shrink: 0;
}
.right-arrow-container-parent {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap-20);
  font-size: var(--fs-14);
  color: var(--TextIcon-Disabled-Black);
}
.right-arrow-container2 {
  border-radius: var(--br-999);
  background-color: var(--Neutral-300);
  overflow: hidden;
  display: flex;
  align-items: center;
  padding: var(--padding-12);
}
.arrow3 {
  height: var(--height-12);
  width: var(--width-12);
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
}
.expanded-icon {
  position: relative;
  height: 63.33%;
  width: 65%;
  overflow: hidden;
  max-height: 100%;
}
.accordions,
.accordions-parent {
  display: flex;
  align-items: center;
  gap: var(--gap-8);
}
.accordions {
  cursor: pointer;
  border: var(--border-2);
  padding: var(--padding-6) var(--padding-15);
  background-color: var(--color-white-solid);
  border-radius: var(--br-86);
  gap: var(--gap-16);
}
.title3 {
  position: relative;
  font-size: var(--fs-14);
  line-height: var(--lh-20);
  font-family: Montserrat;
  color: var(--TextIcon-Disabled-Black);
  text-align: left;
  display: inline-block;
  max-width: var(--max-w-650);
}
.accordions2 {
  cursor: pointer;
  border: 0;
  padding: var(--padding-8) var(--padding-16);
  background-color: var(--Primary-950-Default);
  border-radius: var(--br-86);
  display: flex;
  align-items: center;
  gap: var(--gap-16);
}
.title5 {
  position: relative;
  font-size: var(--fs-14);
  line-height: var(--lh-20);
  display: inline-block;
  font-family: Montserrat;
  color: var(--color-white-solid);
  text-align: left;
  max-width: var(--max-w-650);
}
.accordions3 {
  border-radius: var(--br-86);
  background-color: var(--color-white-solid);
  border: var(--border-2);
  display: flex;
  align-items: center;
  padding: var(--padding-6) var(--padding-15);
  gap: var(--gap-16);
}
.title12,
.title7 {
  position: relative;
  line-height: var(--lh-20);
  display: inline-block;
  max-width: var(--max-w-650);
}
.title12 {
  width: 100%;
  border: 0;
  outline: 0;
  font-family: Montserrat;
  font-size: var(--fs-14);
  background-color: transparent;
  height: var(--height-20);
  color: var(--TextIcon-Disabled-Black);
  text-align: left;
  min-width: 10px;
  padding: var(--padding-01);
}
.accordions6 {
  cursor: pointer;
  border: var(--border-2);
  padding: var(--padding-6) var(--padding-15);
  background-color: var(--color-white-solid);
  border-radius: var(--br-86);
  display: flex;
  align-items: center;
}
.accordions6:hover {
  background-color: var(--color-gainsboro-100);
  border: 1px solid var(--color-lightgray);
  box-sizing: border-box;
}
.container-block {
  flex-direction: column;
  align-items: flex-start;
  font-size: var(--fs-16);
  color: var(--Colors-Neutrals-Neutral-800);
}
.accordions-container,
.accordions7,
.container-block {
  align-self: stretch;
  display: flex;
  max-width: 100%;
}
.accordions-container {
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-8);
}

/* Pills de tópico — FAQ (desktop) */
.conditions2 .faq-topic-pill {
  cursor: pointer;
  font: inherit;
  font-family: Montserrat, sans-serif;
  display: flex;
  align-items: center;
  gap: var(--gap-16);
  border-radius: var(--br-86);
  padding: var(--padding-6) var(--padding-15);
  border: var(--border-2);
  background-color: var(--color-white-solid);
  color: var(--TextIcon-Disabled-Black);
  flex-shrink: 0;
}

.conditions2 .faq-topic-pill .faq-topic-label,
.conditions2 .faq-topic-pill .faq-topic-count {
  font-size: var(--fs-14);
  line-height: var(--lh-20);
  text-align: left;
}

.conditions2 .faq-topic-pill .faq-topic-count {
  opacity: 0.85;
}

.conditions2 .faq-topic-pill.is-active,
.conditions2 .faq-topic-pill[aria-pressed="true"] {
  border: 0;
  padding: var(--padding-8) var(--padding-16);
  background-color: var(--Primary-950-Default);
  color: var(--color-white-solid);
}

.conditions2 .faq-topic-pill.is-active .faq-topic-count,
.conditions2 .faq-topic-pill[aria-pressed="true"] .faq-topic-count {
  opacity: 1;
  color: var(--color-white-solid);
}

.conditions2 .faq-empty-state {
  display: none;
  width: 100%;
  padding: 24px 16px;
  text-align: center;
  font-family: Montserrat, sans-serif;
  font-size: var(--fs-16);
  color: var(--TextIcon-Disabled-Black);
  border-radius: var(--br-16);
  border: var(--border-2);
  background: var(--color-white-solid);
  box-sizing: border-box;
}

.conditions2 .faq-empty-state.is-visible {
  display: block;
}

/* Carrossel horizontal de tópicos — FAQ desktop */
.conditions2 .faq-carousel-btn {
  flex-shrink: 0;
  align-self: stretch;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  font: inherit;
}

.conditions2 .faq-carousel-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.conditions2 .faq-topics-carousel-viewport {
  flex: 1;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  scroll-snap-type: x proximity;
}

.conditions2 .faq-topics-carousel-viewport::-webkit-scrollbar {
  display: none;
}

.conditions2 .faq-topics-carousel-track.accordions-parent {
  flex-wrap: nowrap;
  width: max-content;
  min-height: 44px;
}

.conditions2 .faq-topics-carousel-track .faq-topic-pill {
  scroll-snap-align: start;
}

.accordions7 {
  box-shadow: var(--Shadows-Neutrals-No2);
  border-radius: var(--br-16);
  background-color: var(--Colors-Neutrals-White);
  border: var(--border-3);
  box-sizing: border-box;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  padding: var(--padding-14) var(--padding-24);
  gap: 0;
}

/* Filtro FAQ: .accordions7 usa display:flex e anula [hidden] do UA — restaurar ocultação */
#faq-accordions-container > .accordions7[hidden] {
  display: none !important;
}
.title14 {
  position: relative;
  line-height: var(--lh-24);
  display: inline-block;
  max-width: var(--max-w-650);
}
.button2 {
  box-shadow: var(--Shadows-Neutrals-No1);
  border-radius: var(--br-100);
  background-color: var(--Colors-Neutrals-Neutral-300);
  display: flex;
  align-items: center;
  padding: var(--padding-7);
}
.line-roundedchevron-right {
  height: var(--height-20_4);
  width: var(--width-20_4);
  position: relative;
}
.footer-3 {
  width: 1920px;
  background-color: var(--color-white-solid);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--padding-80) var(--padding-384);
  box-sizing: border-box;
  gap: 80px;
  max-width: 100%;
  z-index: 14;
  text-align: left;
  font-size: var(--fs-16);
  color: var(--TextIcon-Primary-Black);
  font-family: var(--font-lato);
}
.column,
.content4 {
  display: flex;
  align-items: flex-start;
  max-width: 100%;
}
.content4 {
  align-self: stretch;
  gap: var(--gap-64);
  text-align: left;
  font-size: var(--fs-16);
  color: var(--TextIcon-Primary-Black);
  font-family: var(--font-lato);
}
.column {
  width: 417px;
  overflow: hidden;
  flex-shrink: 0;
  flex-direction: column;
  gap: var(--gap-32);
}
.logoe9634be6-1-icon {
  width: 173px;
  position: relative;
  max-height: 100%;
}
.content6 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-4);
}
.heading3 {
  align-self: stretch;
  position: relative;
  line-height: var(--lh-24);
}
.social-links {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-12);
}
.social-links a {
  display: inline-flex;
  line-height: 0;
}
.social-icon-instagram {
  height: var(--height-24);
  width: var(--width-24);
  position: relative;
}
.column2,
.credits,
.link-list {
  display: flex;
  align-items: flex-start;
}
.column2 {
  flex: 1;
  overflow: hidden;
  gap: var(--gap-24);
  min-width: 436px;
}
.credits,
.link-list {
  flex-direction: column;
}
.link-list {
  flex: 1;
  gap: var(--gap-12);
  min-width: 112px;
  max-width: 150px;
}
.footer-3 .link-list a {
  text-decoration: none;
  color: inherit;
}

/* Rodapé legal — Prefeitura + botão; texto no modal */
.legal-footer {
  align-self: stretch;
  width: 100%;
  max-width: min(100%, 1152px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  box-sizing: border-box;
  padding-block: 8px 4px;
}

.legal-footer__prefeitura-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  max-width: min(100%, 460px);
}

.legal-footer__selos-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 12px 16px;
  width: 100%;
}

.legal-footer__prefeitura-logo {
  width: 100%;
  max-width: min(200px, calc(50% - 8px));
  height: auto;
  display: block;
  object-fit: contain;
}

.legal-footer__prefeitura-logo--hmp {
  max-width: min(220px, calc(50% - 8px));
}

.legal-footer__legal-btn {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  font-family: var(--font-lato), system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #1a1a1a;
  background: #fff;
  border: 1px solid #1a1a1a;
  border-radius: 10px;
  padding: 12px 22px;
  min-width: 200px;
  width: 100%;
  max-width: 260px;
  text-align: center;
  line-height: 1.2;
  box-sizing: border-box;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.legal-footer__legal-btn:hover {
  background-color: #f5f5f5;
}

.legal-footer__legal-btn:focus-visible {
  outline: 2px solid #002145;
  outline-offset: 2px;
}

@media screen and (max-width: 520px) {
  .legal-footer__selos-row {
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 8px;
  }

  .legal-footer__prefeitura-logo,
  .legal-footer__prefeitura-logo--hmp {
    flex: 1 1 0;
    width: auto;
    max-width: calc(50% - 4px);
  }
}

/* Modal texto legal */
.legal-text-modal {
  position: fixed;
  inset: 0;
  z-index: 140;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  box-sizing: border-box;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.legal-text-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.legal-text-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  cursor: pointer;
}

.legal-text-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(640px, 100%);
  max-height: min(85vh, 720px);
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.22);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-sizing: border-box;
}

.legal-text-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border-bottom: 1px solid #e5e5e5;
  flex-shrink: 0;
}

.legal-text-modal__title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: #111;
  font-family: var(--font-lato), system-ui, sans-serif;
}

.legal-text-modal__close {
  border: none;
  background: transparent;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  color: #111;
  padding: 4px 10px;
  border-radius: 8px;
  flex-shrink: 0;
}

.legal-text-modal__close:hover {
  background: #f0f0f0;
}

.legal-text-modal__body {
  padding: 18px 20px 24px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box;
}

.legal-text-modal__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: #444;
  text-align: left;
  font-family: var(--font-lato), system-ui, sans-serif;
}

.credits {
  gap: var(--gap-32);
}
.credits,
.divider,
.row {
  align-self: stretch;
}
.divider {
  height: 1px;
  position: relative;
  background-color: var(--Neutral-300);
}
.row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--gap-20);
}
.text20 {
  position: relative;
  line-height: var(--lh-24);
}
.footer-links {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-24);
}
.cookies-settings,
.link16 {
  position: relative;
  text-decoration: underline;
  flex-shrink: 0;
}
.link16 {
  line-height: var(--lh-24);
  font-weight: 700;
  color: inherit;
}
.cookies-settings {
  font-size: var(--fs-14);
  line-height: 150%;
  display: none;
  font-family: var(--font-roboto);
  color: var(--Color-Neutral-Darkest);
}
.button-icon {
  cursor: pointer;
  border: 0;
  padding: var(--padding-01);
  background-color: transparent;
  width: 188.4px;
  height: var(--height-60);
  position: fixed;
  margin: 0 !important;
  bottom: 20px;
  right: 20px;
  top: auto;
  box-shadow:
    0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -4px rgba(0, 0, 0, 0.1);
  border-radius: 16777200px;
  z-index: 120;
}

.button-icon img {
  width: 100%;
  height: 100%;
  display: block;
}
@media screen and (max-width: 1875px) {
  .identificationblock {
    column-gap: 61px;
  }
  .container39 {
    min-width: 0;
  }
  .features-image-row {
    justify-content: center;
    grid-template-columns: repeat(2, minmax(202px, 351px));
  }
  .natureconcept {
    height: auto;
  }

  .content {
    flex: 1;
    gap: 40px;
  }


}
@media screen and (max-width: 1400px) {
  .main-frame {
    height: auto;
  }
  .container2 {
    gap: 141px;
  }
  .container15 {
    padding-left: var(--padding-192);
    padding-right: var(--padding-192);
    box-sizing: border-box;
  }
  .intro-section {
    height: auto;
  }
  .container33 {
    flex-wrap: wrap;
  }
  .identificationblock {
    column-gap: 61px;
    padding-left: var(--padding-192);
    padding-right: var(--padding-192);
    box-sizing: border-box;
  }
  .identification-block {
    padding: var(--padding-47) var(--padding-192);
    box-sizing: border-box;
  }
  .heading {
    padding-left: 140px;
    padding-right: 140px;
    box-sizing: border-box;
  }
  .identification-card {
    min-width: 100%;
  }
  .identificationblock2 {
    padding-left: var(--padding-192);
    padding-right: var(--padding-192);
    box-sizing: border-box;
  }
  .differentials {
    padding: var(--padding-47) var(--padding-192);
    box-sizing: border-box;
  }
  .container49 {
    flex-wrap: wrap;
  }
  .container51,
  .container52 {
    flex: 1;
  }
  .container53 {
    flex-wrap: wrap;
  }
  .container68 {
    flex: 1;
  }
  .natureconcept {
    gap: var(--gap-32);
    padding: 73px var(--padding-192);
    box-sizing: border-box;
  }
  .container89 {
    padding-left: var(--padding-48);
    padding-right: var(--padding-48);
    box-sizing: border-box;
  }
  .differentials2 {
    padding-left: 216px;
    padding-right: 216px;
    box-sizing: border-box;
  }
  .page {
    padding: 77px var(--padding-192);
    box-sizing: border-box;
  }
  .images-container {
    flex-wrap: wrap;
  }
  .image {
    min-width: 100%;
  }
  .image-icon {
    flex: 1;
  }
  .product {
    padding-left: var(--padding-192);
    padding-right: var(--padding-192);
    box-sizing: border-box;
  }

  .container-icon2,
  .container94 {
    min-width: 100%;
  }
  .conditions,
  .layout-25,
  .product2 {
    padding-left: var(--padding-192);
    padding-right: var(--padding-192);
    box-sizing: border-box;
  }

  .content-panel,
  .d-o-primeiro-passo-fale-com-parent {
    min-width: 100%;
  }
  .conditions2 {
    padding-left: var(--padding-192);
    padding-right: var(--padding-192);
    box-sizing: border-box;
  }
  .accordions-parent {
    flex-wrap: wrap;
  }
  .footer-3 {
    gap: var(--gap-40);
    padding-left: var(--padding-192);
    padding-right: var(--padding-192);
    box-sizing: border-box;
  }
  .content4 {
    gap: var(--gap-32);
    flex-wrap: wrap;
  }
  .column {
    flex: 1;
  }
  .column,
  .column2 {
    min-width: 100%;
  }
}
@media screen and (max-width: 925px) {
  .button-icon {
    right: 16px;
    bottom: 16px;
    height: 52px;
    width: 170px;
  }

  .whatsapp-modal-overlay {
    padding: 14px;
  }

  .whatsapp-modal-card {
    border-radius: 20px;
    padding: 10px;
    
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 10px;
    max-height: 92vh;
    overflow: auto;
  }

.whatsapp-modal-form-state {
  width: 100%;
}

.whatsapp-modal-form-state-success {
  display: none;
  height: 100%;
  min-height: 100%;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  text-align: left;
  gap: 16px;
}

.whatsapp-modal-form-wrap.is-success .whatsapp-modal-form-state-default {
  display: none;
}

.whatsapp-modal-form-wrap.is-success .whatsapp-modal-form-state-success {
  display: flex;
}

.whatsapp-modal-card.is-success .whatsapp-modal-media {
  display: none;
}

.whatsapp-modal-card.is-success .whatsapp-modal-success-media {
  display: block;
}

.whatsapp-success-check {
  width: 115px;
  height: 97px;
  object-fit: contain;
}

.whatsapp-modal-form-state-success h3 {
  margin: 0;
  color: #1d2433;
  font-family: var(--font-family-Font-1), sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 39px;
  letter-spacing: 0;
}

.whatsapp-modal-form-state-success p {
  margin: 0;
  color: rgba(29, 36, 51, 0.8);
  font-family: var(--font-family-Font-1), sans-serif;
  font-size: 16px;
  line-height: 1.35;
  letter-spacing: 0.02em;
}

.whatsapp-success-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  text-decoration: none;
  background: #25d366;
}

.whatsapp-success-actions {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.whatsapp-continue-browsing {
  background: #002145;
}

.whatsapp-success-actions .whatsapp-submit-button,
.whatsapp-success-actions .whatsapp-success-button {
  width: 100%;
  min-height: 56px;
  border-radius: 48px;
  white-space: nowrap;
  text-decoration: none;
  font-family: var(--font-family-Font-1), sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 16px;
  letter-spacing: 0.02em;
}

.whatsapp-success-actions .whatsapp-success-button {
  background: #25d366;
  color: #fff;
}

  .whatsapp-modal-close {
    top: 10px;
    left: 10px;
    width: 36px;
    height: 36px;
    font-size: 24px;
  }

  .whatsapp-modal-media {
    width: 100%;
    height: 210px;
    border-radius: 16px;
  }

  .whatsapp-modal-success-media {
    height: 210px;
    border-radius: 16px;
  }

  .whatsapp-modal-media,
  .whatsapp-modal-success-media {
    display: none !important;
  }

  .whatsapp-modal-form-wrap {
    min-width: 0;
    border-radius: 16px;
    padding: 18px 14px;
    gap: 14px;
  }

  .whatsapp-modal-form-state-success h3 {
    color: #1d2433;
    font-family: var(--font-family-Font-1), sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 39px;
    letter-spacing: 0;
  }

  .whatsapp-modal-form-state-success p {
    font-size: 14px;
  }

  .whatsapp-success-logo {
    left: 16px;
    bottom: 16px;
    width: 130px;
  }

  .whatsapp-modal-text h2 {
    font-size: 22px;
    line-height: 1.15;
  }

  .whatsapp-modal-text p {
    font-size: 13px;
    line-height: 1.35;
  }

  .whatsapp-modal-form label {
    font-size: 14px;
  }

  .whatsapp-modal-form input[type="text"],
  .whatsapp-modal-form input[type="tel"],
  .whatsapp-modal-form input[type="email"] {
    padding: 7px 14px;
    font-size: 13px;
    line-height: 20px;
  }

  .whatsapp-consent {
    font-size: 12px !important;
    line-height: 1.3 !important;
  }

  .whatsapp-submit-button {
    font-size: 14px;
    padding: 14px;
    min-height: 48px;
  }

  #whatsapp-modal .whatsapp-modal-card {
    width: 100%;
    max-width: 304px;
    border-radius: 16px;
    padding: 12px;
    gap: 0;
    background: #f7f7f9;
    position: relative;
  }

  #whatsapp-modal .whatsapp-modal-card::before {
    content: "";
    display: block;
    width: 38px;
    height: 5px;
    border-radius: 999px;
    background: #dde3ea;
    margin: -6px auto 10px;
  }

  #whatsapp-modal .whatsapp-modal-close,
  #whatsapp-modal .whatsapp-modal-media,
  #whatsapp-modal .whatsapp-modal-success-media {
    display: none !important;
  }

  #whatsapp-modal .whatsapp-modal-form-wrap {
    background: transparent;
    border-radius: 0;
    padding: 0;
    overflow: visible;
  }

  #whatsapp-modal .whatsapp-modal-form {
    margin-top: 12px;
    gap: 8px;
  }

  #whatsapp-modal .whatsapp-modal-text h2 {
    font-size: 20px;
    line-height: 1.15;
    margin-bottom: 8px;
  }

  #whatsapp-modal .whatsapp-modal-text p {
    font-size: 11px;
    line-height: 1.25;
  }

  #whatsapp-modal .whatsapp-modal-form label {
    font-size: 0;
    line-height: 0;
    gap: 0;
  }

  #whatsapp-modal .whatsapp-modal-form input[type="text"],
  #whatsapp-modal .whatsapp-modal-form input[type="tel"],
  #whatsapp-modal .whatsapp-modal-form input[type="email"] {
    font-size: 13px;
    margin-top: 8px;
  }

  #whatsapp-modal .whatsapp-consent {
    font-size: 12px !important;
    line-height: 1.25 !important;
    gap: 8px !important;
    margin-top: 6px;
  }

  #whatsapp-modal .whatsapp-submit-button {
    margin-top: 6px;
  }

  .container {
    padding: 12px 20px;
    overflow: visible;
  }
  .nav {
    width: 100%;
    max-width: 100%;
  }
  .list {
    display: none;
  }
  .container15 {
    display: none;
  }
  .menu-toggle {
    display: inline-flex;
    z-index: 2;
  }
  .container2 {
    justify-content: space-between;
    gap: 12px;
    width: 100%;
  }
  .link {
    flex: 1;
  }
  .container-icon {
    width: 154px;
    height: auto;
    max-width: 100%;
  }
  .header-parent {
    position: relative;
    z-index: 20;
  }
  .container15 {
    padding-left: var(--padding-96);
    padding-right: var(--padding-96);
    box-sizing: border-box;
  }
  .intro-paragraph {
    font-size: 44px;
    line-height: var(--lh-48);
  }
  .feature-icons {
    flex-wrap: wrap;
  }
  .identificationblock {
    display: flex;
    flex-direction: column;
    gap: var(--gap-30);
    padding: 52px var(--padding-96);
    box-sizing: border-box;
  }
  .identificationblock > .container38 { order: 1; width: 100%; }
  .identificationblock > .container39 { order: 2; width: 100%; }
  .identificationblock > .button-container { order: 3; width: 100%; }
  .container38 {
    gap: var(--gap-16);
  }
  .identification-block {
    gap: var(--gap-16);
    padding: 16px;
    padding-top: 30px;
    padding-bottom: 30px;
    box-sizing: border-box;
  }
  .identification-block .identification-container {
    display: none;
  }

  /* ── Carrossel mobile "Sua história" ── */
  .historia-carousel-viewport {
    display: block;
    align-self: stretch;
    width: 100%;
    overflow: hidden;
    cursor: grab;
  }
  /* Peek do slide seguinte (padding direito > esquerdo) */
  .historia-carousel-viewport .slick-list {
    padding: 0 40px 0 20px !important;
    box-sizing: border-box;
  }
  .historia-carousel-viewport .slick-slide {
    width: 320px !important;
    margin-right: 14px;
    box-sizing: border-box;
  }
  .historia-carousel-track {
    display: flex;
    gap: 16px;
    transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    will-change: transform;
    padding: 4px 4px 8px;
  }
  .historia-carousel-slide {
    flex: 0 0 320px;
    width: 320px;
    min-width: 0;
    box-sizing: border-box;
  }
  .historia-carousel-slide .identification-card {
    width: 320px;
    height: 552px;
    min-width: 0;
    flex: none;
    box-sizing: border-box;
    justify-content: flex-start;
    overflow: hidden;
    /* Slick move o trilho com translate3d — texto dentro de camada composta
       pode renderizar mais “duro”; suavização ajuda em WebKit/macOS e mobile */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .historia-carousel-slide .card-image-icon {
    width: 320px;
    height: 320px;
    max-width: none;
    flex-shrink: 0;
    border-radius: 16px 16px 0 0;
    object-fit: cover;
  }
  .historia-carousel-slide .card-text-container {
    flex: 1 1 auto;
    min-height: 0;
    border-radius: 0 0 16px 16px;
    box-sizing: border-box;

  }
  .historia-carousel-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 4px 0 8px;
    margin-top: 20px;
  }
  .historia-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #c8c8c8;
    cursor: pointer;
    transition: background 0.2s, transform 0.2s, width 0.2s;
    display: inline-block;
  }
  .historia-dot.is-active {
    background: #1b2a4a;
    width: 24px;
    border-radius: 4px;
  }

  .heading {
    padding-left: 70px;
    padding-right: 70px;
    box-sizing: border-box;
  }
  .heading-text {
    font-size: var(--fs-29);
    line-height: var(--lh-32);
  }
  .identificationblock2 {
    gap: var(--gap-16);
    padding: 32px 20px 40px;
    box-sizing: border-box;
    align-items: stretch;
  }

  /* Trocar carrossel desktop → mobile */
  .identificationblock2 .prox-desktop-viewport,
  .identificationblock2 .prox-desktop-nav {
    display: none;
  }
  .identificationblock2 .prox-mobile-viewport {
    display: block;
    align-self: stretch;
  }
  .identificationblock2 .prox-mobile-nav {
    display: flex;
  }
  .identificationblock2 .features-column,
  .identificationblock2 .features-row {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  .identificationblock2 .feature-title,
  .identificationblock2 .feature-description {
    text-align: center;
  }
  .identificationblock2 .feature-description {
    max-width: 100%;
  }
  .identificationblock2 .features-carousel-viewport {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .identificationblock2 .features-carousel-track {
    column-gap: 10px;
    row-gap: 0;
  }
  .features-column {
    gap: var(--gap-24);
  }
  .feature-title {
    font-size: var(--fs-22);
    line-height: var(--lh-32);
  }
  .features-image-row {
    grid-template-columns: minmax(202px, 1fr);
  }
  .identificationblock2 .container42 {

    max-width: 100%;
    margin-right: 20px;
  }
  .img,
  .img2 {
    padding-top: var(--padding-20);
    padding-bottom: var(--padding-24);
    box-sizing: border-box;
  }
  .img2 {
    padding-bottom: var(--padding-20);
  }
  .differentials,
  .natureconcept {
    gap: var(--gap-24);
    padding: 40px 20px;
    box-sizing: border-box;
  }

  /* ── Mapa Terraço mobile ── */
  .terraco-desktop-img {
    display: none;
  }
  .terraco-pan-viewport {
    display: flex;
    align-self: stretch;
  }
  .terraco-pan-scroll {
    border-radius: 24px 0 0 24px;
  }

  /* ── Tabela de benefícios mobile ── */
  .differentials {
    padding: 40px 20px;
    box-sizing: border-box;
  }
  .container44 {
    overflow-x: hidden;
    align-self: stretch;
    width: 100%;
  }
  .container44 > .container45,
  .container44 > div:not(.container45) {
    grid-template-columns: minmax(0, 1.6fr) minmax(84px, 1fr) minmax(84px, 1fr);
  }
  .container45 {
    overflow-x: visible;
    flex-wrap: nowrap;
    align-self: stretch;
    width: 100%;
  }
  .comparison-section {
    width: auto !important;
    flex: 2 !important;
    min-width: 0 !important;
  }
  .container47 {
    flex: 1 !important;
    padding: 10px 6px !important;
    min-width: 0 !important;
    justify-content: center;
  }
  .container48 {
    flex: 1 !important;
    padding: 10px 6px !important;
    min-width: 0 !important;
    justify-content: center;
  }
  .container50,
  .container70,
  .container74 {
    width: auto !important;
    flex: 2 !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 8px 12px !important;
    box-sizing: border-box;
  }
  .container51,
  .container52,
  .container68,
  .container71,
  .container72 {
    min-width: 0 !important;
    flex: 1 !important;
    padding: 8px 4px !important;
    justify-content: center;
  }
  .container49,
  .container53,
  .container69,
  .container73 {
    overflow-x: visible;
    flex-wrap: nowrap;
    align-self: stretch;
    width: 100%;
    row-gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .container44 > div:not(.container45) {
    row-gap: 0 !important;
  }
  .container44 > div:not(.container45) > div {
    min-height: 46px;
  }
  .container44 .progress-label {
    margin: 0;
  }
  .natureconcept {
    gap: var(--gap-16);
    padding: 40px 0px 40px 20px;
  }
  .natureconcept .container89 {
    width: 100%;
    height: auto;
    min-height: 480px;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
    background-image: url(./public/foto-natureza.png);
    background-position: center top;
  }
  .natureconcept .subheading2,
  .natureconcept .subheading3 {
    font-size: 26px;
    line-height: 1.15;
  }
  .natureconcept .no-terrano-voc {
    font-size: 14px;
    line-height: 1.45;
  }
  .natureconcept .identification-text {
    font-size: 10px;
  }
  .differentials2 {
    padding-left: 108px;
    padding-right: 108px;
    box-sizing: border-box;
  }
  .section-heading2 {
    font-size: 45px;
    line-height: 46px;
  }
  .page {
    padding: 40px 20px;
    box-sizing: border-box;
  }

  .image {
    padding-top: 244px;
    padding-right: 138px;
    box-sizing: border-box;
  }
  .pagination-container {
    flex-wrap: wrap;
  }
  .product {
    padding: 40px 20px;
    box-sizing: border-box;
    align-items: stretch;
    position: relative;
  }
  .title2 {
    gap: 20px;
  }
  .subtitle2 {
    width: 100%;
    align-items: flex-start;
    text-align: left;
  }
  .description2 {
    font-size: var(--fs-29);
    line-height: var(--lh-32);
    text-align: left;
  }



  .container109--mobile-clone {
    display: flex;
    position: absolute;
    bottom: 16px;
    left: 16px;
    top: auto;
    right: auto;
    margin: 0 !important;
    z-index: 2;
  }

  .container94 {
    width: 100%;
    min-width: 0;
    flex: none;
    padding: 16px 0 0;
  }
  .container95 {
    width: 100%;
    height: auto;
    border-radius: 12px;
    flex-direction: column;
    align-items: flex-start;
    padding: 12px 16px;
    gap: 8px;
  }
  .room-type-container-parent {
    flex-wrap: wrap;
    gap: 12px;
  }
  .container96 {
    grid-template-columns: 1fr;
    padding: 16px;
  }
  .container97,
  .container99,
  .container101,
  .container103,
  .container105,
  .container107 {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  .conditions {
    padding: 32px 20px;
    box-sizing: border-box;
  }
  /* Sem padding horizontal na secção: o tour em vídeo fica full-bleed; respiro só nos outros painéis */
  .product2 {
    padding: 40px 0;
    box-sizing: border-box;
  }
  .condition-layout {
    gap: var(--gap-16);
    width: 100%;
  }
  .condies-de-pagamento-parent {
    width: 100%;
    text-align: left;
    align-items: flex-start;
  }

  /* Carrossel de cards de condições no mobile */
  .payment-cards-carousel-viewport {
    width: 100%;
    overflow: hidden;
  }

  .payment-cards {
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    transition: transform 0.35s ease;
    will-change: transform;
    cursor: grab;
  }

  .payment-cards:active {
    cursor: grabbing;
  }

  .container110,
  .container113 {
    flex: 0 0 270px !important;
    width: 270px !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 222px !important;
    box-sizing: border-box;
  }

  .payment-cards-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: 7px;
    margin-top: 16px;
  }
  .layout-25 {
    flex-direction: column;
    gap: 24px;
    padding: 40px 20px;
    box-sizing: border-box;
  }
  .layout-25 > .content {
    width: 100%;
    gap: 24px;
  }
  .layout-25 > .content .footer-form-container {
    gap: 12px;
  }
  .vector-icon7 {
    width: 160px;
    height: auto;
  }
  .highlight-image-column {
    width: 100%;
    overflow: hidden;
    margin-top: 20px;
  }
  .highlight-image-row {
    width: 100%;
    max-width: 100%;
    height: auto;
    gap: 12px;
    overflow: hidden;
  }
  .foto,
  .foto2 {
    flex: 1 1 0;
    min-width: 0;
    width: 0 !important;
    height: 175px;
    border-radius: 16px;
    padding: 12px;
    box-sizing: border-box;
  }
  .highlight-image {
    height: 175px;
    padding: 100px 16px 12px;
    border-radius: 16px;
  }
  .number3 {
    font-size: 57px;
    line-height: 64px;
    top: calc(50% + 10px);
    left: calc(50% + 60px);
  }
  .highlight-stats-row {
    width: auto;
    max-width: 100%;
  }
  .heading2 {
    font-size: 32px;
    line-height: 38px;
  }
  .number {
    font-size: var(--fs-32);
    line-height: 38px;
  }


  .d-o-primeiro-passo-fale-com-parent {
    width: 100% !important;
    min-width: 0 !important;
    flex: unset !important;
    padding: 40px 24px 0;
    box-sizing: border-box;
    /* ocupa espaço até o card flutuar por cima */

  }

  .content-panel {
    width: 100% !important;
    min-width: 0 !important;
    flex: unset !important;
    padding: 0 !important;
    position: absolute !important;
    bottom: -24px !important;
    left: 0 !important;
    right: 0 !important;
  }

  .content3 {
    width: 100% !important;
    border-radius: 20px !important;
    border: none !important;
    box-shadow: 0 -4px 32px rgba(0,0,0,0.12) !important;
    padding: 28px 20px 32px !important;
    gap: 20px;
    box-sizing: border-box;
  }

  .form {
    gap: 24px;
  }

  .footer-submit-button .regular-button3 {
    background-color: #0a2258 !important;
    border-radius: 12px !important;
    padding: 16px !important;
    justify-content: center !important;
    gap: 8px !important;
  }

  .footer-submit-button .button-label {
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 600 !important;
  }
  .conditions2 {
    padding: 40px 20px;
    box-sizing: border-box;
  }
  .tire-suas-dvidas {
    font-size: 32px;
    line-height: var(--lh-40);
  }
  .title12,
  .title3,
  .title5,
  .title7 {
    max-width: 100%;
  }

  /* Esconde filtro desktop no mobile */
  .right-arrow-container-parent {
    display: none !important;
  }

  /* Controles mobile do FAQ */
  .faq-mobile-controls {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
  }

  .faq-search-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 999px;
    padding: 12px 16px;
    box-sizing: border-box;
    width: 100%;
  }

  .faq-search-icon {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    color: #666;
  }

  .faq-search-input {
    border: none;
    outline: none;
    background: transparent;
    font-size: 14px;
    font-family: var(--font-poppins);
    color: #333;
    width: 100%;
  }

  .faq-search-input::placeholder {
    color: #999;
  }

  .faq-category-select {
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 14px center;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 12px 40px 12px 16px;
    font-size: 14px;
    font-family: var(--font-poppins);
    color: #333;
    box-sizing: border-box;
    cursor: pointer;
  }

  /* Accordion items */
  .accordions7 {
    flex-direction: column;
    flex-wrap: nowrap;
    padding: 0 !important;
    gap: 0 !important;
  }

  .faq-trigger {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: none;
    border: none;
    cursor: pointer;
    font: inherit;
    text-align: left;
    padding: 16px 20px;
    box-sizing: border-box;
  }

  .faq-trigger .title14 {
    flex: 1;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.4;
    color: var(--Colors-Neutrals-Neutral-800);
  }

  .faq-trigger .button2 {
    flex-shrink: 0;
  }

  .faq-chevron {
    transition: transform 0.25s ease;
  }

  .faq-trigger[aria-expanded="true"] .faq-chevron {
    transform: rotate(90deg);
  }



  .faq-body p {
    margin: 0;
  }

  .title14 {
    max-width: 100%;
  }
  .footer-3 {
    gap: var(--gap-20);
    padding: 52px 20px;
    box-sizing: border-box;
  }
  .content4 {
    gap: var(--gap-16);
  }
  .column2 {
    flex-wrap: wrap;
    flex-direction: column;
  }
  .credits {
    gap: var(--gap-16);
  }
  .row {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 450px) {
  .content-panel
  {
    width: 90% !important;
    margin: auto !important;
    bottom: unset !important;
    position: relative !important;
  }
  .conditions
  {
    padding-top: 50px;
    padding-bottom: 50px;
    padding-right: 0px;
  }
  .planejamos-cada-detalhe
  {
    font-size: 18px;
    font-weight: 400;
  }
  .button-icon {
    right: 12px;
    bottom: 12px;
    width: 160px;
    height: 50px;
  }

  .whatsapp-modal-media {
    height: 210px;
  }

  .whatsapp-modal-text h2 {
    font-size: 28px;
  }

  .container {
    padding: 10px 12px;
  }
  .nav {
    width: 100%;
    max-width: 100%;
  }
  .container2 {
    width: 100%;
    gap: 8px;
  }
  .container-icon {
    width: 140px;
  }
  .container15 {
    display: none;
  }
  .mobile-menu-links {
    gap: 16px;
    margin-top: 80px;
  }
  .mobile-menu-links a {
    font-size: 24px;
  }
  .mobile-menu-close {
    font-size: 28px;
  }
  .mobile-menu-close span:first-child {
    font-size: 24px;
  }
  .container2 {
    gap: 8px;
  }
  .container15 {
    padding-left: var(--padding-20);
    padding-right: var(--padding-20);
    box-sizing: border-box;
  }
  .intro-paragraph {
    font-size: 33px;
    line-height: 36px;
  }
  .icon-text {
    font-size: var(--fs-16);
    line-height: var(--lh-26);
  }
  .identificationblock {
    gap: 20px;
    padding: 36px var(--padding-20);
    box-sizing: border-box;
  }
  .button-container {
    gap: var(--gap-16);
  }
  .regular-button {
    padding-left: var(--padding-20);
    padding-right: var(--padding-20);
    box-sizing: border-box;
    margin: auto;
  }
  .progress-container {
    flex-wrap: wrap;
  }
  .heading {
    padding-left: 0;
    padding-right:0;
    box-sizing: border-box;
    text-align: left;
    height: auto;
  }
  .top-identification-text
  {
    margin-left: 0;
  }
  .heading-text {
    font-size: 32px;
    line-height: 40px;
    width: 100%;
    height: auto;
  }
  .intro-text 
  {
    font-size: 18px;
    width: 100%;
    text-align: left;
    line-height: 100%;
    height: auto;
  }
  .container41
  {
    height: auto;
    gap: 0;
    padding-right: 20px;
  }
  .paragraph 
  {
    padding: 0;
    margin-top: 15px;
  }
  .card-title {
    font-size: 24px;
    line-height: 24px;
  }
  .call-to-action-button {
    padding-left: var(--padding-20);
    padding-right: var(--padding-20);
    box-sizing: border-box;
  }
  .identificationblock2 {
    padding: 28px 20px 36px;
    box-sizing: border-box;
    padding-left: 20px;
    padding-right: 0;
  }
  .feature-title {
    font-size: 36px;
    line-height: 40px;
    
  }
  .img {
    gap: 148px;
  }
  .img2 {
    gap: 162px;
  }
  .container47,
  .container48,
  .container51,
  .container52,
  .container68,
  .container71,
  .container72 {
    padding: 8px 4px !important;
    min-width: 0 !important;
    box-sizing: border-box;
  }
  .natureconcept .container89 {
    padding-top: 62px;
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 62px;
    box-sizing: border-box;
    height: 600px;
  }
  .natureconcept .subheading2,
  .natureconcept .subheading3 {
    font-size: 22px;
    line-height: 1.2;
  }
  .natureconcept .no-terrano-voc {
    font-size: 13px;
    line-height: 1.4;
  }
  .feature-title2,
  .feature-title3 {
    font-size: var(--fs-16);
    line-height: var(--lh-22);
  }
  .differentials2 {
    padding-left: var(--padding-20);
    padding-right: var(--padding-20);
    box-sizing: border-box;
  }
  .section-subheading {
    font-size: var(--fs-16);
    text-align: center;
  }
  .section-heading2 {
    font-size: 27px;
    line-height: 31px;
    text-align: center;
  }
  .image {
    padding-right: var(--padding-20);
    box-sizing: border-box;
  }
  .image-title {
    font-size: var(--fs-19);
    line-height: var(--lh-26);
  }
  .pagination-dots-container {
    flex-wrap: wrap;
  }
  .pagination-dots-container .inactive-dot {
    width: 8px;
  }
  .description2 {
    font-size: 36px;
    line-height: 36px;
    text-align: center;
  }
  .container95 {
    height: auto;
  }
  .container101,
  .container103,
  .container105,
  .container107,
  .container97,
  .container99,
  .room-type-container-parent {
    flex-wrap: wrap;
  }
  .feature-detail7 {
    font-size: 21px;
  }
  .product2 {
    padding-top: var(--padding-47);
    padding-bottom: var(--padding-47);
    box-sizing: border-box;
    padding-left: 20px;
    padding-right: 20px;
  }
  .layout-25 {
    padding: 52px 16px 52px 16px;
    box-sizing: border-box;
  }
  .layout-25 > .content {
    gap: 20px;
  }
  .heading2,
  .number {
    font-size: 36px;
    line-height: 36px;
  }
  .number {
    font-size: var(--fs-24);
  }
  .foto,
  .foto2 {
    height: 155px;
  }
  .highlight-image {
    height: 155px;
    padding: 90px 12px 12px;
  }
  .number3 {
    font-size: var(--fs-36);
    line-height: 52px;
    left: calc(50% + 40px);
  }
  .number4 {
    font-size: var(--fs-16);
  }
  .content3 {
    padding-top: var(--padding-20);
    padding-bottom: var(--padding-20);
    box-sizing: border-box;
  }
  #fotos .fotos-tabs .fotos-tab .tab-name2  {
    font-size: 15px ;
  }
  .content3,
  .form {
    gap: var(--gap-20);
    margin-top: 30px;
  }
  .conditions2 {
    padding-top: var(--padding-31);
    padding-bottom: var(--padding-31);
    box-sizing: border-box;
  }
  .tire-suas-dvidas {
    font-size: var(--fs-22);
    line-height: var(--lh-24);
  }
  .column {
    gap: var(--gap-16);
  }
    .image2 
  {
    gap: 0;
    flex-direction: column;
  }
  .container-vocação 
  {
    max-width: 100%;
    flex-direction: column;
  }
  .image2-wrapper
  {
    width: 100%;
    height: 358px;
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    border: solid 2px rgba(196, 96, 58, 1);
  }
  .container109
  {
    position: absolute;
    bottom: 15px;
    left: 15px;
    top: unset;
  }
  .identification-block
  {
    padding-right: 0px;
  }
  .container42.prox-mobile-nav .prox-mob-prev-icon,
  .container42.prox-mobile-nav .prox-mob-next-icon
  {
    width: 24px;
    height: 24px;
  }
  .option-title-mobile
  {
    display: block;
  }
  .left-arrow-container
  {
    background-color: #ffffff;
  }
  .identification-text 
  {
    text-align: left;
  }

}


@media screen and (max-width: 925px) {
  .intro-section {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: 22px 18px 26px;
    overflow: hidden;
  }

  .vector-icon,
  .vector-icon2,
  .vector-wrapper {
    display: none;
  }

  .visual-icon {
    display: none !important;
  }

  .section-tagline-wrapper,
  .intro-paragraph-wrapper,
  .container-wrapper,
  .o-terrano-um-condomnio-clu-wrapper,
  .container-container {
    width: 100%;
    margin-left: 0;
    padding: 0;
    max-width: 100%;
  }

  .container-wrapper {
    order: 1;
  }

  .section-tagline-wrapper {
    order: 2;
  }

  .intro-paragraph-wrapper {
    order: 3;
  }

  .o-terrano-um-condomnio-clu-wrapper {
    order: 4;
  }

  .container-hero-fotos {
    order: 5;
  }

  .container-container {
    order: 6;
  }

  .section-tagline {
    width: 100%;
    height: auto;
    font-size: 30px;
    line-height: 1.25;
    text-transform: uppercase;
  }

  .intro-paragraph-wrapper {
    font-size: 0;
  }

  .intro-paragraph {
    width: 100%;
    height: auto;
    font-size: clamp(44px, 11vw, 62px);
    line-height: 0.95;
  }

  .container32 {
    width: auto;
    max-width: 100%;
    border-radius: 999px;
    padding: 6px 14px;
  }

  .location-text {
    font-size: 11px;
    letter-spacing: 1.2px;
  }

  .o-terrano {
    width: 100%;
    height: auto;
    font-size: 14px;
    line-height: 1.3;
    color: rgba(255, 255, 255, 0.8);
  }

  .container-hero-fotos {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: 420px;
    margin: 10px 0 0 !important;
    padding: 0;
    border-radius: 20px 20px 0 0;
    background-image:
      url(./public/Visual@2x.png);
    background-size: contain, cover;
    background-position: center bottom, right center;
    background-repeat: no-repeat, no-repeat;
    z-index: 1;
    display: block;
    box-sizing: border-box;
    overflow: hidden;
  }


  .arrow {
    display: none;
  }

  .container-container {
    position: relative;
    width: 100%;
    margin-top: -12px;
    margin-left: 0;
    padding: 0;
    z-index: 4;
  }

  .container33 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    border-radius: 0 0 20px 20px;
    padding: 12px 14px 20px;
    gap: 12px;
    flex-wrap: nowrap;
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(8px);
  }

  .icon-section {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    position: static;
  }

  .group-icon {
    width: 56px;
    height: auto;
  }

  .vector-icon4 {
    width: 126px;
    height: auto;
  }

  .feature-icons > :last-child {
    display: none;
  }

  .feature-icons {
    flex: 1;
    width: 100%;
    gap: 6px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .container34,
  .container3 {
    width: auto;
    min-width: 0;
  }

  .icon-text {
    font-size: 16px;
    line-height: 1.15;
  }

  .icon-text2 {
    font-size: 10px;
    line-height: 1.25;
  }

}
@media screen and (max-width: 1920px) and (min-width: 1500px) {
  .intro-section 
  {
    padding-right: 0px;
  }
.container-container 
{
  width: 100%;
}
}
@media screen and (max-width: 1500px) and (min-width: 450px) {
  .container15
  {
    padding-right: 180px;
  }

  /* ── Intro: reset do layout de 1920px para viewports intermediários ── */
  .feature-title-diferenca
  {
    max-width: 510px; 
  }
  .footer-3
  {
        padding: 80px 200px;
  }
  .conditions2
  {
    padding: 118px 300px;
  }
  .contato-title, .preencha-o-formulrio
  {
    width: 100% !important;
  }


  .highlight-image
  {
    width: 650px;
  }
  .conditions
  {
    padding: 80px 200px;
  }
  .product
  {
    padding: 80px 200px;
  }

  .copiar-1-icon
  {
    left: 302px;
  }
  .differentials2 
  {
    padding: 190px 270px;
  }
  .natureconcept 
  {
    padding: 112px 180px;
  }
  .differentials
  {
    padding: var(--padding-72) 220px;
  }
  .identificationblock2
  {
    padding: 88px 220px;
  }
  #sua-historia
  {
    padding: var(--padding-72) 200px;
  }
  .product2
  {
    padding: 112px 285px;
  }
  #progresso-obra
  {
    padding: var(--padding-80) 220px;
  }
  .container-hero-fotos
  {
    top: -122px;
    left: 911px !important;
  }
  .intro-section {
    width: 100% !important;
    display: block !important;
    position: relative !important;
    padding: 48px clamp(32px, 15vw, 160px) 56px !important;
    box-sizing: border-box !important;
    min-height: 81vh;
    overflow: hidden;
  }

  /* Elementos decorativos fixos em px absoluto — esconde */

  .vector-icon2,
  .vector-wrapper {
    display: none !important;
  }
  .vector-icon
  {
    left: 4.84%;
  }
  /* Building image: posiciona no lado direito */
  .visual-icon {
    display: block !important;
    position: absolute !important;
    width: min(54vw, 750px) !important;
    height: auto !important;
    top: clamp(60px, 5vw, 100px) !important;
    left: auto !important;
    right: clamp(16px, 2.5vw, 56px) !important;
    border-radius: 40px !important;
    object-fit: cover !important;
    z-index: 1 !important;
    max-height: none !important;
    right: 0px !important;
  }

  /* Lettering "TERRANO" no canto direito */
  .lettering-hero {
    position: absolute !important;
    top: 0px !important;
    left: 1010px !important;
    width: 50% !important;
    z-index: 2 !important;
  }
  .vector-icon3
  {
    width: 100% !important;
    display: block !important;
  }
  .vector-wrapper
  {
    display: block !important;
    position: absolute;
    width: 50% !important;
    left: 0px !important;
    display: block !important;
    position: absolute;
    width: 50% !important;
    left: 900px !important;
    top: 80px;
  }
  /* ── Blocos de texto: remove margens negativas e stacks verticalmente ── */
  .section-tagline-wrapper,
  .intro-paragraph-wrapper,
  .container-wrapper,
  .o-terrano-um-condomnio-clu-wrapper,
  .container-container {
    display: block !important;
    width: auto !important;
    max-width: min(52%, 680px) !important;
    margin-left: 0 !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 4;
    flex-shrink: unset;
  }

  .section-tagline-wrapper {
    margin-top: 18px !important;
  }

  .section-tagline {
    width: auto !important;
    height: auto !important;
  }

  .intro-paragraph-wrapper {
    margin-top: 12px !important;
    font-size: 55.3px !important;
  }

  .intro-paragraph {
    width: 110% !important;
    height: auto !important;
    font-size: clamp(36px, 3.8vw, 58px) !important;
    line-height: 1.03 !important;
  }

  .container-wrapper {
    margin-top: 22px !important;
  }

  .container32 {
    width: auto !important;
  }

  .o-terrano-um-condomnio-clu-wrapper {
    margin-top: 18px !important;
  }

  .o-terrano {
    width: 100% !important;
    height: auto !important;
  }

  .container-container {
    max-width: min(58%, 760px) !important;
    margin-top: 26px !important;
    position: absolute !important;
    bottom: 0;
    left: 50%;
    margin-left: -360px !important;
  }

  .container33 {
    width: 100% !important;
    padding: 20px 22px !important;
    flex-wrap: wrap;
  }

  /* Seta visível no canto do card */
  .arrow {
    display: flex !important;
  }

  .lettering-hero-mob {
    display: none !important;
  }
}


@media screen and (max-width: 925px) {
  .differentials2 {
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 14px;
    padding: 0 0 40px;
  }



  .section-subheading {
    width: 100%;
    height: auto;
    margin-top: 4px;
    padding: 0 20px;
    font-size: 14px;
    line-height: 1.4;
    color: rgba(255,255,255,0.75);
    font-weight: 400;
  }

  .section-heading-wrapper,
  .lead-acquisition,
  .legal-reminder {
    width: 100%;
    margin-left: 0;
    padding: 0;
  }


  .section-heading2 {
    width: 100%;
    height: auto;
    font-size: clamp(40px, 11vw, 60px);
    line-height: 1;
  }

  .legal-reminder {
    order: 3;
    margin-top: 0;
    padding: 0 20px;
  }

  .information-message {
    width: 100%;
    height: auto;
    font-size: 16px;
    line-height: 1.5;
    color: rgba(255,255,255,0.85);
  }



  .book-download-section {
    width: 100%;
    max-width: 100%;
    border-radius: 20px;
    padding: 24px 20px;
    gap: 16px;
    background-color: #fff;
  }

  .book-download-section .header {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .book-download-section .label {
    height: auto;
  }

  .book-download-section .label2 {
    position: static;
  }

  .book-download-section .input-label,
  .book-download-section .input-label2 {
    font-size: 14px;
    font-weight: 600;
    color: #1a1a1a;
  }

  .book-download-section .field-flexible {
    border-radius: 999px;
    padding: 12px 16px;
    background-color: #f5f5f5;
    border: 1px solid #e0e0e0;
  }

  .book-download-section .text11 {
    font-size: 14px;
    color: #888;
  }

  .regular-button2 {
    margin-top: 8px;
  }
}
.container-padding-right
{
  margin: auto;
}
@media screen and (max-width: 450px) {

  .legal-reminder
  {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
  .paragraph-wrapper
  {
    padding: 0;
  }
  .predio-hero
  {
    display: block;
    width: 100%;
    max-height: unset;
    position: absolute;
    bottom: 0;
  }
  
  .intro-section {
    padding: 48px 15px 20px;
  }

  .intro-paragraph {
    font-size: 40px;
  }

  .container-hero-fotos {
    height: 380px;
    overflow: unset;
    margin-top: 100px !important;
    background-size: cover;
  }

  .container-container {
    margin-top: -40px;
    margin-left: 0;
  }

  .container33 {
    padding: 12px 10px 16px;
    gap: 8px;
    width: 90%;
    margin: auto;
  }

  .feature-icons {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }

  .icon-text {
    font-size: 14px;
  }

  .icon-text2 {
    font-size: 10px;
  }
}

@media screen and (max-width: 450px) {

  .lettering-hero
  {
    display: none;
  }
  .lettering-hero-mob 
  {
    display: block;
    height: 116px;
    top: -73px;
    right: -40px;
    position: absolute;
  }
  .differentials2 {
    padding: 0 0 32px;
    gap: 12px;
  }

  .copiar-1-icon {
    border-radius: 0 0 28px 28px;
    max-height: none;
    width: 100%;
  }

  .section-subheading {
    font-size: 18px;
    margin-top: -70px;
    padding: 0;
    text-align: left;
    font-weight: 400;
  }

  .section-heading2 {
    font-size: 57px;
    line-height: 1;
    text-align: left;
  }

  .information-message {
    font-size: 16px;
    line-height: 1.5;
    width: 100%;
    text-align: left;
  }

  .book-download-section {
    padding: 20px 16px;
    border-radius: 18px;
    height: 412px;
    display: flex;
    justify-content: space-evenly;
  }

  .book-download-section .field-flexible {
    padding: 10px 14px;
  }
  .faq-body {
    padding: 0 20px 16px;
    font-size: 13px;
    line-height: 1.6;
    color: #555;
    font-family: var(--font-poppins);
  }
  .faq-body:not([hidden]) {
    padding: 4px 20px 8px;

  }
  .feature-section,
  .layout-25 {
    flex-wrap: wrap;
    gap: 50px;
   padding-right: 20px;
  }
}
.container-padding-right
{
  padding-right: 20px;
  max-width: 100%;
  box-sizing: border-box;
}
.plantas-inteligentes-acabamen {
  text-align: center;
  width: 80%;
  margin: auto;
  font-size: 16px;
}
.option-title 
{
  display: none;
}
/* Estado de sucesso do modal: regras finais de alta prioridade */
.whatsapp-modal-card.is-success .whatsapp-modal-form-wrap {
  justify-content: center;
}

.whatsapp-modal-card.is-success .whatsapp-modal-form-state-success {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 16px;
  text-align: left;
}

.whatsapp-modal-card.is-success .whatsapp-success-check {
  width: 115px;
  height: 97px;
  object-fit: contain;
}

.whatsapp-modal-card.is-success .whatsapp-modal-form-state-success h3 {
  margin: 0;
  color: #1d2433;
  font-family: Montserrat, sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 39px;
  letter-spacing: 0;
}

.whatsapp-modal-card.is-success .whatsapp-modal-form-state-success p {
  margin: 0;
  color: rgba(29, 36, 51, 0.8);
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.02em;
}

.whatsapp-modal-card.is-success .whatsapp-success-actions {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.whatsapp-modal-card.is-success .whatsapp-success-actions .whatsapp-submit-button,
.whatsapp-modal-card.is-success .whatsapp-success-actions .whatsapp-success-button {
  width: 100%;
  min-height: 56px;
  border-radius: 48px;
  border: 0;
  text-decoration: none;
  box-shadow: none;
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 16px;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

.whatsapp-modal-card.is-success .whatsapp-continue-browsing {
  background: #002145;
  color: #fff;
}

.whatsapp-modal-card.is-success .whatsapp-success-button {
  background: #25d366 !important;
  color: #fff !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.whatsapp-modal-card.is-success .whatsapp-success-button img {
  height: 24px;
  width: auto;
  display: block;
}

/* ─────────────────────────────────────────────────────────────────────
   Animações de revelação por scroll
   ───────────────────────────────────────────────────────────────────── */

.reveal {
  opacity: 0;
  will-change: transform, opacity;
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
.reveal.reveal--fade-up {
  transform: translateY(28px);
}
.reveal.reveal--slide-left {
  transform: translateX(-48px);
}
.reveal.reveal--scale-up {
  transform: translateY(28px) scale(0.98);
}
.reveal.is-visible {
  opacity: 1;
  transform: none;
  will-change: auto;
}

/* 1. Seta do hero — pulse infinito */
@keyframes heroArrowPulse {
  0%, 100% {
    transform: translateY(0) scale(1);
    box-shadow: 0 0 0 0 rgba(115, 35, 27, 0.45);
  }
  50% {
    transform: translateY(6px) scale(1.05);
    box-shadow: 0 0 0 10px rgba(115, 35, 27, 0);
  }
}
.arrow {
  animation: heroArrowPulse 2.4s ease-in-out infinite;
  cursor: pointer;
  border: 0;
  outline: 0;
  transition: background-color 0.2s ease;
}
.arrow:hover {
  background-color: var(--color-saddlebrown, #5a1c14);
}
.arrow:focus-visible {
  outline: 3px solid rgba(115, 35, 27, 0.45);
  outline-offset: 4px;
}

/* 2. Barras de progresso — preenchimento crescendo */
.bar,
.bar5 {
  background-color: var(--Neutral-300);
}
.bar::before,
.bar5::before {
  content: "";
  position: absolute;
  inset: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);
  border-radius: inherit;
}
.bar::before {
  background-color: var(--Primary-500);
}
.bar5::before {
  background-color: var(--Success-600);
}
#progresso-obra.is-visible .bar::before,
#progresso-obra.is-visible .bar5::before {
  transform: scaleX(var(--progress, 1));
}
#progresso-obra .progress-bar2,
#progresso-obra .progress-bar4,
#progresso-obra .progress-bar6,
#progresso-obra .progress-bar8,
#progresso-obra .progress-bar10 {
  display: none;
}
#progresso-obra.is-visible .progress-bar3 .bar::before {
  transition-delay: 120ms;
}
#progresso-obra.is-visible .progress-bar5 .bar::before {
  transition-delay: 240ms;
}
#progresso-obra.is-visible .progress-bar7 .bar::before {
  transition-delay: 360ms;
}
#progresso-obra.is-visible .progress-bar9 .bar5::before {
  transition-delay: 480ms;
}

/* 3. Cards "Sua história" — fade-up com stagger */
#sua-historia .identification-card {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s cubic-bezier(0.22, 1, 0.36, 1);
  box-shadow: 0 0 0 rgba(17, 24, 39, 0);
  will-change: transform, opacity, box-shadow;
}
#sua-historia.is-visible .identification-card {
  opacity: 1;
  transform: none;
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: auto;
}
#sua-historia.is-visible
  .identification-text-container:nth-child(1)
  .identification-card:nth-child(1) {
  transition-delay: 80ms;
}
#sua-historia.is-visible
  .identification-text-container:nth-child(1)
  .identification-card:nth-child(2) {
  transition-delay: 200ms;
}
#sua-historia.is-visible
  .identification-text-container:nth-child(2)
  .identification-card:nth-child(1) {
  transition-delay: 320ms;
}
#sua-historia.is-visible
  .identification-text-container:nth-child(2)
  .identification-card:nth-child(2) {
  transition-delay: 440ms;
}
/* Cards do carrossel mobile (clones) também aparecem suavemente */
#sua-historia .historia-carousel-track .identification-card {
  opacity: 1;
  transform: none;
  transition: none;
}

/* 5. Seção Book — stagger interno */
.differentials2.reveal.reveal--fade-up > * {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
.differentials2.reveal.is-visible > * {
  opacity: 1;
  transform: none;
}
.differentials2.is-visible > *:nth-child(1) {
  transition-delay: 0ms;
}
.differentials2.is-visible > *:nth-child(2) {
  transition-delay: 120ms;
}
.differentials2.is-visible > *:nth-child(3) {
  transition-delay: 220ms;
}
.differentials2.is-visible > *:nth-child(4) {
  transition-delay: 320ms;
}

/* 7. Cards de "Condições que cabem" — stagger */
.conditions.reveal .container110 {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
.conditions.is-visible .container110 {
  opacity: 1;
  transform: none;
}
.conditions.is-visible .container110:nth-child(1) {
  transition-delay: 80ms;
}
.conditions.is-visible .container110:nth-child(2) {
  transition-delay: 200ms;
}
.conditions.is-visible .container110:nth-child(3) {
  transition-delay: 320ms;
}
.conditions.is-visible .container110:nth-child(4) {
  transition-delay: 440ms;
}

/* 8. Form "Dê o primeiro passo" — card com leve atraso */
.footer-container.reveal .content-panel {
  opacity: 0;
  transform: translateY(28px) scale(0.98);
  transition: opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 180ms;
}
.footer-container.is-visible .content-panel {
  opacity: 1;
  transform: none;
  width: 50%;
  height: 100%;
  padding-left: 220px;
}
.contato-title-wrapper
{
  width: 225px;
  margin-right: 220px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.contato-title
{
  float: right;
}
/* 9. Acessibilidade — respeita preferência por menos movimento */
@media (prefers-reduced-motion: reduce) {
  .reveal,
  .reveal.reveal--fade-up,
  .reveal.reveal--slide-left,
  .reveal.reveal--scale-up,
  #sua-historia .identification-card,
  .differentials2.reveal.reveal--fade-up > *,
  .conditions.reveal .container110,
  .footer-container.reveal .content-panel {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  .bar::before,
  .bar5::before {
    transform: scaleX(1) !important;
    transition: none !important;
  }
  .arrow {
    animation: none !important;
  }
}

/* ─────────────────────────────────────────────────────────────────────
   Hero Section — layout responsivo
   ───────────────────────────────────────────────────────────────────── */

.hero-section {
  background: linear-gradient(97.47deg, #3e160f, #561b13);
  min-height: 83vh;
  width: 100%;
  position: relative;
  overflow: hidden;
}

/* Decorativos de canto (Vector.svg) */
.hero-section::after,
.hero-section::before {
  content: '';
  position: absolute;
  height: 220px;
  width: 44.27%;
  background-image: url('./public/Vector.svg');
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}
.hero-section::after  { bottom: 0;  left: clamp(40px, 5vw, 150px); }
.hero-section::before { bottom: 40px; right: clamp(20px, 3vw, 30px); }

/* Container principal */
.container-hero {
  width: 100%;
  padding: 0 clamp(40px, 6vw, 96px);
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  height: 100%;
  min-height: inherit;
  position: relative;
}

/* Colunas 50/50 */
.col-6 {
  flex: 0 0 50%;
  width: 50%;
  position: relative;
  box-sizing: border-box;
}

/* Coluna esquerda — texto */
.col-6:first-child {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding-top: 80px;
  padding-bottom: 130px;
  z-index: 5;
}

/* Coluna direita — imagem */
.col-6:last-child {
  padding-top: 0;
}

/* Container azul arredondado com o prédio */
.sky {
  position: absolute;
  top: clamp(40px, 5vw, 70px);
  left: 0;
  right: clamp(-60px, -4vw, -20px);
  bottom: 0;
  border-radius: 56px 56px 0 0;
  background: url('./public/Visual@2x.png') no-repeat center center;
  background-size: cover;
  overflow: visible;
}

/* Lettering "TERRANO" dentro do sky */
.lettering {
  position: absolute;
  top: -80px;
  right: clamp(-280px, -18vw, -120px);
  height: clamp(130px, 12vw, 200px);
  width: auto;
}

/* Prédio — imagem do edifício dentro do sky */
.predio {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: auto;
  z-index: 2;
}

/* Lettering decorativo extra — oculto no desktop */
.lettering2 {
  display: none;
}

/* Barra de features — fundo da seção */
.barras {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: clamp(560px, 55vw, 760px);
  border-radius: 16px 16px 0 0;
  justify-content: space-between;
  padding: var(--padding-32);
  box-sizing: border-box;
  gap: var(--gap-20);
  flex-shrink: 0;
  max-width: calc(100% - 2 * clamp(40px, 6vw, 96px));
  z-index: 7;
  border: 1px solid rgba(125, 138, 155, 0.36);
  background:
    radial-gradient(circle at 45% 50%, rgba(0, 170, 255, 0.55), transparent 26%),
    radial-gradient(circle at 20% 50%, rgba(80, 10, 5, 0.8), transparent 38%);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
}

/* Badge de localização */
.hero-section span.localizacao {
  display: inline-block;
  width: auto;
  border-radius: 999px;
  background-color: var(--color-sienna-500);
  border: 1px solid var(--color-sienna-400);
  padding: 5px 16px;
  font-size: var(--fs-12);
  color: var(--color-darksalmon-100);
  font-family: var(--font-poppins);
  text-transform: uppercase;
  letter-spacing: 1.2px;
  font-weight: 600;
}

/* Tagline h2 */
.hero-section h2 {
  margin: 0;
  color: var(--color-white-solid);
  font-size: var(--fs-18);
  font-family: var(--font-poppins);
  text-transform: uppercase;
  font-weight: 400;
}
.hero-section h2 span.destaque-titulo {
  color: var(--color-darksalmon-100);
  font-weight: 600;
}

/* Título principal h1 */
.hero-section h1 {
  margin: 0;
  font-size: clamp(36px, 3.8vw, 58px);
  line-height: 1.03;
  font-family: Montserrat;
  color: var(--color-white-solid);
  font-weight: 700;
  position: relative;
  z-index: 5;
}

/* Parágrafo */
.hero-section p {
  margin: 0;
  color: var(--color-white-60);
  font-size: var(--fs-14);
  font-family: Montserrat;
  line-height: 1.5;
  max-width: 450px;
}

/* Textos das barras */
.hero-section .barras .icon-text {
  color: var(--color-white-solid);
  font-size: var(--fs-20);
  font-family: Montserrat;
  font-weight: 700;
}
.hero-section .barras .icon-text2 {
  position: relative;
  font-size: var(--fs-12);
  line-height: var(--lh-20);
  color: var(--color-white-60);
  font-family: Montserrat;
  font-weight: 400;
}

/* Botão / link seta */
a.arrow-down {
  text-decoration: none;
  color: inherit;
  box-sizing: border-box;
}
.arrow-down {
  position: absolute;
  bottom: calc(130px + 20px);
  right: clamp(20px, 3vw, 40px);
  border-radius: var(--br-999);
  background-color: var(--color-brown);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--padding-16);
  height: auto;
  width: auto;
  animation: heroArrowPulse 2.4s ease-in-out infinite;
  cursor: pointer;
  border: 0;
  outline: 0;
  transition: background-color 0.2s ease;
  z-index: 8;
}
.arrow-down:hover {
  background-color: var(--color-saddlebrown, #5a1c14);
}
.arrow-down-icon {
  height: var(--height-24);
  width: var(--width-24);
  display: block;
}

/* Breakpoint tablet — 926px–1023px */
@media screen and (max-width: 1023px) and (min-width: 926px) {
  .hero-section { min-height: 80vh; }
  .col-6:first-child { padding-top: 60px; padding-bottom: 110px; }
  .sky { top: 40px; border-radius: 40px 40px 0 0; }
  .lettering { height: 110px; right: -200px; top: -60px; }
  .barras { width: min(90%, 700px); }
  .arrow-down { bottom: calc(110px + 16px); right: 20px; }
}

/* Breakpoint mobile — < 926px */
@media screen and (max-width: 925px) {
  .hero-section { min-height: unset; height: auto; overflow: hidden; }

  .container-hero {
    flex-direction: column;
    padding: 0;
  }

  .col-6 {
    flex: 0 0 100%;
    width: 100%;
  }

  .col-6:first-child {
    padding: 24px 20px 20px;
    gap: 12px;
    padding-bottom: 20px;
  }

  .col-6:last-child {
    position: relative;
    height: 420px;
  }

  .sky {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 24px 24px 0 0;
    background-size: cover;
    background-position: top center;
  }

  .lettering {
    height: 80px;
    top: -40px;
    right: -40px;
  }

  .predio { display: none; }

  .barras {
    position: relative;
    bottom: unset;
    left: unset;
    transform: none;
    width: 100%;
    max-width: 100%;
    border-radius: 0;
    flex-wrap: wrap;
    gap: var(--gap-12);
    padding: 16px 20px;
  }

  .lettering2 { display: none; }

  .arrow-down {
    bottom: 16px;
    right: 16px;
  }

  .hero-section span.localizacao {
    font-size: 10px;
    padding: 4px 12px;
  }

  .hero-section h1 {
    font-size: clamp(32px, 9vw, 48px);
  }

  .hero-section p {
    max-width: 100%;
    font-size: 13px;
  }

  .hero-section h2 {
    font-size: 13px;
  }
}
.m-auto {
  margin: auto;
}


.hero 
{
  height: 650px;
  background: linear-gradient(97.47deg, #3e160f, #561b13);
  width: 100%;
  position: relative;
}
.hero::after
{
  content: '';
  position: absolute;
  bottom: 0;
  left: 200px;
  width: 850px;
  height: 220px;
  background: url('./public/Vector.svg') no-repeat center center;
  background-size: contain;
  z-index: 0;
}
.hero::before
{
  content: '';
  position: absolute;
  bottom: 50px;
  right: 0px;
  width: 850px;
  height: 220px;
  background: url('./public/Vector.svg') no-repeat center center;
  background-size: contain;
  z-index: 0;
}
.container-hero 
{
  margin: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  height: 100%;
  padding: 0;
}
.left-column, .right-column
{
  width: 50%;
  padding-top: 126px;
}
.float-container 
{
  float:right;
  z-index: 999;
  position: relative;
  margin-right: -80px;
}
.badge-localizacao
{
  width: 310px;
  border-radius: 16777200px;
  background-color: var(--color-sienna-500);
  border: 1px solid var(--color-sienna-400);
  align-items: center;
  padding: var(--padding-5) var(--padding-15) var(--padding-5) var(--padding-16);
  z-index: 7;
  display: inline-block;
  font-size: var(--fs-12);
  color: var(--color-darksalmon-100);
  font-family: var(--font-poppins);
  position: relative;
  letter-spacing: var(--ls-1_2);
  text-transform: uppercase;
  font-weight: 600;
  text-align: center;
  margin-bottom: 30px;
}
.container-hero h2 
{
  text-align: left;
  font-size: var(--fs-18);
  color: var(--color-white-solid);
  font-family: Montserrat;
  text-transform: uppercase;
}
.destaque-titulo
{
  color: var(--color-darksalmon-100);
}
.container-hero h3.big-title 
{
  color: var(--color-white-solid);
  width: 672px;

  font-size: 55.3px;
  font-family: Montserrat;
  margin-top: 10px;
  margin-bottom: 20px;
}
.container-hero p.small-title
{
  font-size: var(--fs-16);
  color: var(--color-gray-1200);
  font-weight: 300;
  font-family: Montserrat;
  max-width: 450px;
} 
.sky-container 
{
  width: 743px;
  height: 652px;
  position: relative;
  border-radius: 56px;
  background: url('./public/Visual@2x.png') no-repeat center center;
  background-size: cover;
  background-position: bottom center;
  position: relative;
  z-index: 1;
}
.predio-desk
{
  width: 100%;
  position: absolute;
  bottom: -300px;
  left: 60px;
}
.predio-mobile
{
  display: none;
}
.lettering-desk 
{
  position: absolute;
  top: -70px;
  left: 100px;
  height: 145px;
}
.lettering-bg
{
  position: absolute;
  bottom: 100px;
  left: -1100px;
  z-index: 0;
}
.container-dados
{
  width: 760px;
  border-radius: var(--br-16) var(--br-16) var(--br-0) var(--br-0);
  background: rgba(125, 138, 155, 0.36);
  border-radius: 16px 16px 0px 0px;
  justify-content: space-between;
  padding: var(--padding-32);
  box-sizing: border-box;
  gap: var(--gap-20);
  flex-shrink: 0;
  max-width: 100%;
  position: absolute;
  z-index: 7;
  border: solid 1px rgba(125, 138, 155, 0.36);
  background: radial-gradient( circle at 45% 50%, rgba(0, 170, 255, 0.55), transparent 26% ), radial-gradient( circle at 20% 50%, rgba(80, 10, 5, 0.8), transparent 38% );
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  bottom: 0;
  left: 50%;
  margin-left: -380px;
  display: flex;
}
.icon-text
{
  margin: 0;
  position: relative;
  font-size: 20px;
  line-height: var(--lh-32);
  font-weight: 700;
  font-family: poppins;
  color: var(--color-white-solid);
}
.icon-text2
{
  position: relative;
  font-size: var(--fs-12);
  line-height: var(--lh-20);
  color: var(--color-white-60);
  font-family: var(--font-poppins);
}
.arrow-down
{
  animation: heroArrowPulse 2.4s ease-in-out infinite;
  cursor: pointer;
  border: 0;
  outline: 0;
  transition: background-color 0.2s ease;
  border-radius: var(--br-999);
  background-color: var(--color-brown);
  display: flex;
  align-items: center;
  padding: var(--padding-16);
  flex-shrink: 0;
  position: absolute;
  bottom: 310px;
  right: 76px;
  z-index: 999;
}
.container-identification
{
  width: 1100px;
  margin: auto;
  display: flex;
  flex-direction: row;
}
.fixed-width
{
  max-width: 495px;
}
.top-left-container
{
  margin-top: 100px;
  margin-left: -140px;
}
@media screen and (max-width: 450px) {
  .container-identification
  {
    width: 100%;
    flex-direction: column;
  }
  .hero
  {
    height: 1000px;
    padding-top: 30px;
  }
  .hero::after, .hero::before 
  {
    content: none;
  }
  .container-hero
  {
    flex-direction: column;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
  }
  .left-column, .right-column
  {
    width: 100%;
    padding-top: 0;
  }
  .float-container
  {
    float: none;
    margin-right: 0;
  }
  .badge-localizacao {
    font-size: 11px;
    letter-spacing: 1.2px;
    width: auto;
    display: inline-block;
  }
  .sky-container 
  {
    max-width: 100%;
    margin-top: 80px;
    height: 400px;
  }
  .container-hero h2
  {
    font-size: 14px;
  }
  .container-hero h3.big-title {
    font-size: 40px;
    width: 100%;
  }
  .predio-desk
  {
    display: none;
  }
  .predio-mobile
  {
    display: block;
    width: 100%;
    position: relative;
    bottom: 89px;
    left: unset;
  }
  .lettering-desk{
    height: 116px;
    left: -350px;
  }
  .lettering-bg 
  {
    display: none;
  }
  .arrow-down 
  {
    display: none;
  }
  .container-dados {
    flex-direction: column;
    width: 90%;
    position: relative;
    margin: auto;
    left: unset;
    top: -50px;
    padding: 15px;
  }
  .badge-localizacao 
  {
    margin-bottom: 15px;
  }
  .regular-button 
  {
    display: none;
  }
  .regular-button-mobile
  {
    display: block;
    width: 270px;
    border-radius: var(--br-48);
    background-color: var(--Primary-950-Default);
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--padding-16) 56px;
    box-sizing: border-box;
    gap: var(--gap-8);
    margin: auto;
    margin-top: 20px;
  }
  .container-tour
  {
    max-width: 100%;
  }
  .container-identification-all
  {
    max-width: 100%;
  }
  .differentials2 .column-left
  {
    width: 100%;
    height: auto;
  }
  .differentials2 .column-right
  {
    width: 100%;
    height: auto;
    box-sizing: border-box;

  }
  .container-diferencial2
  {
    width: 100%;
    flex-direction: column;
  }
  .container-diferencial2 .column-right
  {
    padding-left: 20px;
    padding-right: 20px;
  }
  .top-left-container
  {
    margin-left: unset;
    margin-top: -80px;
  }
  .legal-reminder
  {
    padding: 0;
  }
  .container72
  {
    height: auto;
  }
  
  .container-icon2 {
    position: absolute;
    height: 448px;
    top: -30px;
  }
  .footer-container 
  {
    height: auto;
    flex-direction: column;
    padding-top: 30px;
    padding-bottom: 50px;
    background-position: -930px;

  }
  .contato-title-wrapper
  {
    width: 100%;
    margin: auto;
  }
  .page 
  {
    padding-right: 0;
  }
  .subtitle-container 
  {
    padding-right: 20px;
  }
  .button 
  {
    padding-right: 20px;
  }
} 

/* ──────────────────────────────────────────────────────────────────────────
   Slick — dots padronizados para os carrosséis migrados (mobile)
   ────────────────────────────────────────────────────────────────────────── */

.historia-carousel-dots .slick-dots,
.prox-mob-dots .slick-dots,
.club-mobile-dots .slick-dots,
.payment-cards-dots .slick-dots {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.historia-carousel-dots .slick-dots li,
.prox-mob-dots .slick-dots li,
.club-mobile-dots .slick-dots li,
.payment-cards-dots .slick-dots li {
  margin: 0;
  line-height: 0;
}

.historia-carousel-dots .slick-dots li button,
.prox-mob-dots .slick-dots li button,
.club-mobile-dots .slick-dots li button,
.payment-cards-dots .slick-dots li button {
  border: 0;
  background: transparent;
  padding: 0;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
}

/* Estado ativo padronizado para os dots default (.inactive-dot) */

.prox-mob-dots .slick-dots li .inactive-dot {
  width: 8px;
  height: 8px;
  background-color: #7d7d84;
  opacity: 0.95;
  transition: width 0.25s ease, background-color 0.25s ease, opacity 0.25s ease;
}

.prox-mob-dots .slick-dots li.slick-active .inactive-dot {
  width: 14px;
  background-color: var(--color-dimgray-100);
  opacity: 1;
}

.historia-carousel-dots .slick-dots li .inactive-dot {
  width: 8px;
  height: 8px;
  background-color: #7d7d84;
  opacity: 0.95;
  transition: width 0.25s ease, background-color 0.25s ease, opacity 0.25s ease;
}

.historia-carousel-dots .slick-dots li.slick-active .inactive-dot {
  width: 14px;
  background-color: var(--color-dimgray-100);
  opacity: 1;
}

/* payment-cards — dots arredondados (mesmo padrão dos demais carrosséis) */
.payment-cards-dots .slick-dots li .inactive-dot {
  width: 8px;
  height: 8px;
  border-radius: var(--br-999);
  background-color: rgba(255, 255, 255, 0.35);
  opacity: 0.95;
  transition: width 0.25s ease, background-color 0.25s ease, opacity 0.25s ease;
}

.payment-cards-dots .slick-dots li.slick-active .inactive-dot {
  width: 14px;
  background-color: #fff;
  opacity: 1;
}

/* Peek + padding: regra específica vence .club-carousel-mobile-track.slick-slider .slick-list { padding: 0 } */
.club-carousel-mobile-viewport .club-carousel-mobile-track.slick-slider .slick-list {
  padding: 0 40px 0 0 !important;
  box-sizing: border-box;
}

.product2-tabs-carousel-viewport .slick-list {
  padding-right: 40px !important;
  box-sizing: border-box;
}

/* product2-tabs: respeita variableWidth e mantém gap entre tabs */
.product2-tabs-carousel-viewport .slick-track {
  display: flex;
}

.product2-tabs-carousel-viewport .slick-slide {
  margin-right: 12px;
  height: auto;
}

/* historia: garante que o slide do Slick respeite a largura cheia */
.historia-carousel-viewport .slick-slide {
  height: auto;
}

/* prox-mobile: slick precisa exibir um único slide com leve folga */
.prox-mobile-viewport .slick-list {
  padding: 0 28px 0 12px !important;
  box-sizing: border-box;
}

.prox-mobile-viewport .slick-slide,
.club-carousel-mobile-viewport .slick-slide {
  height: auto;
}

/* prox-mobile: mantém respiro entre um card e o próximo */
.prox-mobile-viewport .slick-slide {
  margin-right: 12px;
}

/* club-mobile: espaço entre slides (igual prox-mobile) */
.club-carousel-mobile-viewport .slick-slide {
  margin-right: 12px;
}

/* Dentro do Slick, o slide externo já controla a largura — neutraliza calc(100% - 28px) original */
.prox-mobile-viewport .slick-slide .prox-mob-slide {
  flex: 0 0 100% !important;
  width: 100% !important;
}

/* Mesma ideia para historia */
.historia-carousel-viewport .slick-slide .historia-carousel-slide {
  flex: 0 0 100% !important;
  width: 100% !important;
}

/* club-mobile: card limitado ao slide (sem flex 100% que amplificava largura intrínseca) */
.club-carousel-mobile-viewport .slick-slide .club-mobile-slide {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

/* Após o Slick inicializar, o track raiz ainda tem display:flex/transition antigos.
   Neutraliza para que a estrutura interna do Slick assuma o layout. */
.historia-carousel-track.slick-initialized,
.prox-mobile-track.slick-initialized,
.club-carousel-mobile-track.slick-initialized,
.product2-tabs-carousel-track.slick-initialized,
.payment-cards.slick-initialized {
  display: block !important;
  gap: 0 !important;
  transition: none !important;
  cursor: default !important;
  padding: 0 !important;
  flex-wrap: nowrap !important;
  transform: none !important;
}

/* O .slick-list ocupa toda a largura */
.historia-carousel-track .slick-list,
.prox-mobile-track .slick-list,
.club-carousel-mobile-track .slick-list,
.product2-tabs-carousel-track .slick-list,
.payment-cards.slick-initialized .slick-list {
  width: 100%;
}

/* payment-cards: garante que cada card use sua largura fixa de 270px */
.payment-cards-carousel-viewport .slick-list {
  padding-right: 40px !important;
  box-sizing: border-box;
}

.payment-cards-carousel-viewport .slick-slide {
  margin-right: 16px;
  height: auto;
}