/* Segunda dobra — composição baseada na referência aprovada. */
.indications {
  --section-green: #084f3e;
  --section-cream: #faf7f1;
  --section-card: #f3eee5;
  --section-gold: #c9a96a;
  --section-copy: #5a5a5a;
  overflow: hidden;
  background: var(--section-cream);
  padding: clamp(58px, 5vw, 78px) 0 clamp(88px, 8vw, 122px);
  font-family: "Inter", sans-serif;
  font-weight: 400;
}

/* Terceira dobra: principais áreas de atuação. */
.expertise {
  position: relative;
  overflow: hidden;
  padding: clamp(64px, 6vw, 92px) 0 clamp(112px, 10vw, 154px);
  background: #f5f6ef;
  color: #5a5a5a;
  font-family: "Inter", sans-serif;
}

.expertise__inner {
  position: relative;
  z-index: 2;
  width: min(1460px, calc(100% - 72px));
  margin: 0 auto;
}

.expertise__header {
  max-width: 820px;
  margin: 0 auto clamp(38px, 4vw, 56px);
  text-align: center;
}

.expertise__rule {
  display: block;
  width: 62px;
  height: 1px;
  margin: 0 auto 22px;
  background: #c9a96a;
}

.expertise__header h2 {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(46px, 4.2vw, 64px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.035em;
}

.expertise__header p {
  max-width: 760px;
  margin: 16px auto 0;
  font-size: 17px;
  line-height: 1.6;
}

.expertise__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(14px, 1.5vw, 22px);
}

.expertise-card {
  min-width: 0;
  min-height: 330px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #e7e1d8;
  border-radius: 11px;
  background: #faf7f1;
}

.expertise-card--link {
  color: inherit;
  text-decoration: none;
}

.expertise-card--link:focus-visible {
  outline: 2px solid #c9a96a;
  outline-offset: 3px;
}

.expertise-card__media {
  position: relative;
  aspect-ratio: 1.85 / 1;
  flex: 0 0 auto;
  background:
    linear-gradient(135deg, rgba(201, 169, 106, .12), rgba(8, 79, 62, .05)),
    #f3eee5;
}

.expertise-card__media:not(:has(img))::after {
  content: "Imagem a definir";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: rgba(90, 90, 90, .62);
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.expertise-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.expertise-card__body {
  min-height: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 22px 20px 20px;
}

.expertise-card h3 {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(20px, 1.65vw, 25px);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -.025em;
}

.expertise-card__body > span {
  margin-top: auto;
  padding-top: 22px;
  color: #5a5a5a;
  font-size: 14px;
  font-weight: 400;
}

.expertise-card__body b {
  margin-left: 5px;
  color: #8e6d2d;
  font-size: 18px;
  font-weight: 400;
}

.expertise__button {
  min-width: min(430px, 100%);
  min-height: 58px;
  margin: 42px auto 0;
  padding: 14px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  border: 1px solid #084f3e;
  border-radius: 7px;
  background: transparent;
  color: #084f3e;
  font: 600 15px/1.3 "Inter", sans-serif;
  text-decoration: none;
}

.expertise__button span {
  font-size: 21px;
  font-weight: 400;
}

.expertise__line {
  position: absolute;
  z-index: 1;
  right: -3%;
  bottom: -18px;
  width: 106%;
  height: 150px;
  pointer-events: none;
}

.expertise__line path {
  fill: none;
  stroke: #c9a96a;
  stroke-width: 1.2;
  vector-effect: non-scaling-stroke;
}

@media (max-width: 1100px) {
  .expertise__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .expertise__inner {
    width: calc(100% - 40px);
  }

  .expertise__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .expertise-card {
    min-height: 0;
  }

  .expertise-card__media {
    aspect-ratio: 1.9 / 1;
  }

  .expertise-card h3 {
    font-size: 26px;
  }
}

@media (max-width: 620px) {
  .expertise {
    padding: 58px 0 112px;
  }

  .expertise__inner {
    width: calc(100% - 32px);
  }

  .expertise__header {
    margin-bottom: 36px;
    text-align: left;
  }

  .expertise__rule {
    width: 50px;
    margin: 0 0 20px;
  }

  .expertise__header h2 {
    font-size: clamp(38px, 11vw, 46px);
    line-height: 1.04;
  }

  .expertise__header p {
    margin-top: 16px;
    font-size: 17px;
    line-height: 1.62;
  }

  .expertise-card__body {
    padding: 22px 22px 24px;
  }

  .expertise-card__body > span {
    padding-top: 25px;
  }

  .expertise__button {
    min-width: 100%;
    margin-top: 30px;
    gap: 16px;
  }

  .expertise__line {
    right: -22%;
    bottom: -30px;
    width: 144%;
    height: 112px;
  }
}

.indications__inner {
  position: relative;
  z-index: 1;
  width: min(1460px, calc(100% - 72px));
}

.indications__header {
  max-width: 1080px;
  margin-bottom: clamp(34px, 3.6vw, 50px);
}

.indications__header h2 {
  color: var(--section-green);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(48px, 4.7vw, 70px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.035em;
}

.indications__rule {
  width: 70px;
  margin-bottom: 28px;
  background: var(--section-gold);
}

.indications__header p {
  max-width: 1030px;
  margin: 20px auto 0;
  color: var(--section-copy);
  font-size: 19px;
  line-height: 1.55;
}

.indications__grid {
  gap: 18px 16px;
}

.indication-card {
  min-height: 218px;
  padding: 28px 26px;
  grid-template-columns: 106px minmax(0, 1fr);
  column-gap: 25px;
  border: 1px solid rgba(8, 79, 62, .12);
  border-radius: 10px;
  background: #f6f1e9;
  box-shadow: none;
}

.indication-card__icon {
  width: 106px;
  height: 106px;
  padding: 24px;
  background: rgba(201, 169, 106, .12);
  stroke: var(--section-gold);
  stroke-width: 1.65;
}

.indication-card h3 {
  margin-top: 5px;
  color: var(--section-green);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -.025em;
}

.indication-card p {
  color: var(--section-copy);
  font-size: 16px;
  line-height: 1.65;
}

.indications__closing {
  position: relative;
  z-index: 2;
  min-height: 172px;
  margin-top: 24px;
  padding: 26px 128px 26px 34px;
  display: grid;
  grid-template-columns: 245px 1px minmax(0, 1fr);
  gap: 36px;
  border: 1px solid rgba(201, 169, 106, .08);
  border-radius: 12px;
  background: rgba(243, 238, 229, .88);
}

.indications__closing-brand {
  align-self: center;
  display: grid;
  justify-items: center;
  color: var(--section-gold);
  text-transform: uppercase;
}

.indications__closing-brand img {
  width: 120px;
  height: 120px;
  display: block;
  margin: -22px 0 -8px;
  object-fit: contain;
}

.indications__closing-brand span {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 15px;
  letter-spacing: .15em;
  line-height: 1.25;
}

.indications__closing-brand small {
  margin-top: 5px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .34em;
}

.indications__closing-divider {
  width: 1px;
  height: 116px;
  align-self: center;
  background: rgba(201, 169, 106, .78);
}

.indications__closing p {
  align-self: center;
  color: var(--section-copy);
  font-size: 17px;
  line-height: 1.55;
}

.indications__closing strong {
  margin-bottom: 7px;
  color: var(--section-green);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.02em;
}

.indications__organic-line {
  position: absolute;
  z-index: 1;
  right: -7%;
  bottom: -48px;
  left: -7%;
  height: 112px;
  display: block;
  border-top: 1px solid var(--section-gold);
  border-radius: 50% 50% 0 0 / 72% 72% 0 0;
  transform: rotate(-1.5deg);
  opacity: .88;
  pointer-events: none;
}

.indications__botanical {
  position: absolute;
  z-index: 3;
  right: -6px;
  bottom: -82px;
  width: 210px;
  height: auto;
  display: block;
  opacity: .76;
  pointer-events: none;
}

.indications__closing-mark {
  display: none;
}

@media (max-width: 1100px) {
  .indication-card {
    grid-template-columns: 82px minmax(0, 1fr);
    column-gap: 19px;
  }

  .indication-card__icon {
    width: 82px;
    height: 82px;
    padding: 19px;
  }

  .indication-card h3 {
    font-size: 24px;
  }

  .indications__closing {
    grid-template-columns: 210px 1px minmax(0, 1fr);
    padding-right: 104px;
    gap: 26px;
  }
}

@media (max-width: 900px) {
  .indications__inner {
    width: min(760px, calc(100% - 48px));
  }

  .indications__closing {
    grid-template-columns: 180px 1px minmax(0, 1fr);
    padding-right: 58px;
  }

  .indications__closing strong {
    font-size: 27px;
  }

  .indications__botanical {
    width: 150px;
    right: -28px;
  }
}

@media (max-width: 620px) {
  .indications {
    padding: 56px 0 98px;
  }

  .indications__inner {
    width: calc(100% - 32px);
  }

  .indications__header {
    margin-bottom: 38px;
    text-align: left;
  }

  .indications__header h2 {
    font-size: clamp(38px, 11vw, 46px);
    line-height: 1.04;
  }

  .indications__rule {
    width: 50px;
    margin-bottom: 22px;
  }

  .indications__header p {
    margin-top: 17px;
    font-size: 17px;
    line-height: 1.62;
  }

  .indications__grid {
    gap: 14px;
  }

  .indication-card {
    min-height: 0;
    padding: 25px 22px 27px;
    grid-template-columns: 76px minmax(0, 1fr);
    column-gap: 18px;
  }

  .indication-card__icon {
    width: 76px;
    height: 76px;
    padding: 18px;
  }

  .indication-card h3 {
    margin-top: 2px;
    font-size: 23px;
    line-height: 1.2;
  }

  .indication-card p {
    font-size: 15px;
    line-height: 1.58;
  }

  .indications__closing {
    min-height: 0;
    margin-top: 20px;
    padding: 26px 24px 32px;
    grid-template-columns: 1fr;
    gap: 22px;
    text-align: center;
  }

  .indications__closing-brand img {
    width: 62px;
    height: 62px;
  }

  .indications__closing-divider {
    width: 84px;
    height: 1px;
    justify-self: center;
  }

  .indications__closing p {
    font-size: 16px;
  }

  .indications__closing strong {
    font-size: 27px;
  }

  .indications__organic-line {
    right: -28%;
    bottom: -48px;
    left: -28%;
  }

  .indications__botanical {
    right: -34px;
    bottom: -86px;
    width: 118px;
    opacity: .55;
  }
}

html { scroll-behavior: smooth; }

/* Quarta dobra: como funciona a consulta. */
.consultation {
  overflow: hidden;
  background: var(--cream);
  color: #5a5a5a;
  font-family: "Inter", sans-serif;
}

.consultation__intro {
  width: min(1460px, calc(100% - 72px));
  min-height: 510px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 44% 56%;
  align-items: stretch;
}

.consultation__intro-copy {
  position: relative;
  z-index: 2;
  padding: clamp(68px, 7vw, 105px) 42px 190px 0;
  background: var(--cream);
}

.consultation__rule {
  display: block;
  width: 60px;
  height: 1px;
  margin-bottom: 23px;
  background: #c9a96a;
}

.consultation__intro h2,
.consultation__locations-header h2 {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(48px, 4.5vw, 68px);
  font-weight: 400;
  line-height: 1.06;
  letter-spacing: -.035em;
}

.consultation__intro-copy > p {
  max-width: 535px;
  margin: 22px 0 0;
  font-size: 19px;
  line-height: 1.6;
}

.consultation__photo {
  position: relative;
  min-width: 0;
}

.consultation__photo::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0 auto 0 0;
  width: 16%;
  background: linear-gradient(90deg, #faf7f1 0%, rgba(250,247,241,.78) 30%, rgba(250,247,241,0) 100%);
}

.consultation__photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 50% 42%;
}

.consultation__steps {
  position: relative;
  z-index: 3;
  width: min(1460px, calc(100% - 72px));
  margin: -150px auto 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.consultation-step {
  min-height: 315px;
  padding: 28px 30px 34px;
  display: flex;
  flex-direction: column;
  align-items: center;
  border: 1px solid #e7e1d8;
  border-right-width: 0;
  background: #f6f1e9;
  text-align: center;
}

.consultation-step:first-child { border-radius: 12px 0 0 12px; }
.consultation-step:last-child { border-right-width: 1px; border-radius: 0 12px 12px 0; }

.consultation-step__icon,
.location-card__icon {
  width: 72px;
  height: 72px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #f3eee5;
}

.consultation-step__icon svg,
.location-card__icon svg {
  width: 42px;
  height: 42px;
  fill: none;
  stroke: #b88727;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.consultation-step h3,
.location-card h3 {
  margin: 17px 0 15px;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.025em;
}

.consultation-step p {
  max-width: 250px;
  margin: 0;
  font-size: 16px;
  line-height: 1.65;
}

.consultation__manifesto {
  margin-top: 44px;
  padding: 56px max(36px, calc((100% - 1170px) / 2));
  display: grid;
  grid-template-columns: minmax(300px, 410px) 1px minmax(0, 1fr);
  gap: 48px;
  align-items: center;
  background: linear-gradient(90deg, #deedf0 0%, #f2f3ec 48%, #d9ebef 100%);
}

.consultation__manifesto > span {
  width: 1px;
  height: 118px;
  background: #c9a96a;
}

.consultation__manifesto p { margin: 0; font-size: 17px; line-height: 1.65; }

.consultation__manifesto-title {
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(36px, 3vw, 48px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.03em;
}

.consultation__manifesto-title em { font-weight: 400; }

.consultation__locations {
  width: min(1460px, calc(100% - 72px));
  margin: 0 auto;
  padding: 72px 0 88px;
}

.consultation__locations-header {
  max-width: 780px;
  margin: 0 auto 40px;
  text-align: center;
}

.consultation__locations-header .consultation__rule { margin: 0 auto 22px; }
.consultation__locations-header h2 { font-size: clamp(44px, 4vw, 60px); }
.consultation__locations-header p { margin: 15px auto 0; font-size: 17px; line-height: 1.55; }

.consultation__locations-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.location-card {
  min-height: 190px;
  padding: 26px 25px;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 22px;
  border: 1px solid #e7e1d8;
  border-radius: 11px;
  background: #faf7f1;
}

.location-card h3 { margin: 3px 0 10px; font-size: 23px; }
.location-card p { margin: 0; font-size: 14px; line-height: 1.55; }

.consultation__cta {
  position: relative;
  min-height: 310px;
  padding: 68px 24px 82px;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
  background: linear-gradient(145deg, #f3eee5 0%, #faf7f1 62%, #f1ece3 100%);
  text-align: center;
}

.consultation__cta p { position: relative; z-index: 2; margin: 0; font-size: 18px; line-height: 1.55; }
.consultation__cta strong { display: block; margin-bottom: 7px; color: #084f3e; font-family: Georgia, "Times New Roman", serif; font-size: clamp(30px, 3vw, 43px); font-weight: 400; line-height: 1.15; }

.consultation__cta-break { display: none; }

.consultation__cta-button {
  position: relative;
  z-index: 2;
  min-width: 320px;
  min-height: 58px;
  margin-top: 28px;
  padding: 14px 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 44px;
  border-radius: 7px;
  background: #084f3e;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
}

.consultation__cta-button span { font-size: 21px; font-weight: 400; }

.consultation__cta > img {
  position: absolute;
  right: -95px;
  bottom: -125px;
  width: 410px;
  height: 410px;
  object-fit: contain;
  opacity: .07;
  pointer-events: none;
}

@media (max-width: 900px) {
  .consultation__intro { grid-template-columns: 1fr 1fr; }
  .consultation__steps { grid-template-columns: repeat(2, 1fr); gap: 14px; margin-top: -105px; }
  .consultation-step { border-right-width: 1px; border-radius: 11px !important; }
  .consultation__manifesto { grid-template-columns: 1fr; gap: 24px; }
  .consultation__manifesto > span { width: 88px; height: 1px; }
  .consultation__locations-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .consultation__intro {
    width: 100%;
    min-height: 0;
    grid-template-columns: 1fr;
  }

  .consultation__intro-copy {
    width: calc(100% - 32px);
    margin: 0 auto;
    padding: 58px 0 34px;
  }

  .consultation__intro h2 { font-size: clamp(38px, 11vw, 46px); line-height: 1.04; }
  .consultation__intro-copy > p { margin-top: 17px; font-size: 17px; line-height: 1.62; }

  .consultation__photo { height: 310px; }
  .consultation__photo::before { inset: 0 0 auto; width: 100%; height: 20%; background: linear-gradient(180deg, #faf7f1 0%, rgba(250,247,241,0) 100%); }
  .consultation__photo img { object-position: 50% 40%; }

  .consultation__steps {
    width: calc(100% - 32px);
    margin: 24px auto 0;
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .consultation-step { min-height: 0; padding: 26px 24px 28px; }

  .consultation__manifesto {
    margin-top: 44px;
    padding: 48px 24px 52px;
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .consultation__manifesto-title { font-size: 38px !important; }
  .consultation__manifesto > span { width: 64px; }

  .consultation__locations { width: calc(100% - 32px); padding: 58px 0 70px; }
  .consultation__locations-header { text-align: left; }
  .consultation__locations-header .consultation__rule { margin-left: 0; }
  .consultation__locations-header h2 { font-size: 40px; line-height: 1.08; }

  .location-card { min-height: 0; grid-template-columns: 64px minmax(0, 1fr); gap: 18px; padding: 24px 20px; }
  .location-card__icon { width: 64px; height: 64px; }
  .location-card__icon svg { width: 37px; height: 37px; }

  .consultation__cta { min-height: 350px; padding: 60px 20px 90px; }
  .consultation__cta p { font-size: 16px; }
  .consultation__cta strong { font-size: 32px; }
  .consultation__cta-button { width: min(100%, 350px); min-width: 0; }
  .consultation__cta > img { right: -85px; bottom: -90px; width: 270px; height: 270px; }
}

/* Refinamento fiel da quarta dobra conforme as referências aprovadas. */
.consultation__intro {
  min-height: 560px;
}

.consultation__intro-copy {
  padding-bottom: 210px;
}

.consultation__photo img {
  object-position: center;
}

.consultation__steps {
  margin-top: -178px;
  padding: 0 22px;
}

.consultation-step {
  min-height: 350px;
  padding: 30px 34px 40px;
  box-shadow: 0 8px 24px rgba(45, 59, 50, .035);
}

.consultation__manifesto {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin-top: 28px;
  padding-top: 82px;
  padding-bottom: 82px;
  background: transparent;
}

.consultation__manifesto::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 15px -5%;
  border-radius: 48% 52% 45% 55% / 13% 16% 14% 17%;
  background: linear-gradient(90deg, #d7e9ed 0%, #eef2ee 50%, #d2e7ec 100%);
}

.consultation__manifesto::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: -110px;
  top: 16px;
  width: 230px;
  height: 230px;
  border: 1px solid rgba(201, 169, 106, .85);
  border-radius: 50%;
}

.consultation__cta > img {
  pointer-events: none;
}

.consultation__cta .consultation__cta-foliage {
  position: absolute;
  z-index: 1;
  left: -105px;
  right: auto;
  bottom: -175px;
  width: 390px;
  height: 500px;
  object-fit: contain;
  opacity: .48;
  filter: blur(3px);
  transform: rotate(18deg) scaleX(-1);
  transform-origin: center bottom;
}

.consultation__cta .consultation__cta-watermark {
  position: absolute;
  z-index: 1;
  right: -100px;
  left: auto;
  bottom: -130px;
  width: 420px;
  height: 420px;
  object-fit: contain;
  opacity: .06;
}

@media (max-width: 900px) {
  .consultation__steps { margin-top: -125px; }
}

@media (max-width: 620px) {
  .consultation__intro { min-height: 0; }
  .consultation__intro-copy { padding-bottom: 34px; }

  .consultation__photo {
    height: 300px;
  }

  .consultation__photo img {
    object-position: center;
  }

  .consultation__steps {
    margin-top: -34px;
    padding: 0;
  }

  .consultation-step {
    min-height: 285px;
    padding: 32px 28px 35px;
  }

  .consultation__manifesto {
    margin-top: 30px;
    padding-top: 72px;
    padding-bottom: 76px;
  }

  .consultation__manifesto::before {
    inset: 10px -22%;
    border-radius: 50% 50% 48% 52% / 7% 8% 8% 7%;
  }

  .consultation__manifesto::after {
    left: -154px;
    top: 30px;
    width: 210px;
    height: 260px;
  }

  .consultation__cta .consultation__cta-foliage {
    left: -105px;
    bottom: -145px;
    width: 245px;
    height: 360px;
    opacity: .32;
    filter: blur(2px);
  }

  .consultation__cta .consultation__cta-watermark {
    right: -82px;
    bottom: -85px;
    width: 260px;
    height: 260px;
  }
}

/* Microajustes finais da quarta dobra. */
@media (min-width: 901px) {
  .consultation__intro {
    min-height: 610px;
  }

  .consultation__intro-copy {
    padding-bottom: 235px;
  }

  .consultation__steps {
    margin-top: -190px;
  }

  .consultation-step {
    min-height: 382px;
    padding-top: 40px;
    padding-bottom: 48px;
  }

  .consultation__manifesto::after {
    left: -178px;
    top: -112px;
    width: 330px;
    height: 520px;
    border: 0;
    border-right: 1.2px solid rgba(201, 169, 106, .92);
    border-radius: 50%;
    transform: rotate(-17deg);
  }

  .consultation__cta .consultation__cta-foliage {
    top: 0;
    left: -50px;
    bottom: auto;
    width: 410px;
    height: 100%;
    object-fit: cover;
    object-position: left center;
    opacity: 1;
    filter: saturate(1.18) contrast(1.04) blur(.6px);
    transform: none;
    mix-blend-mode: multiply;
    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 28%, rgba(0,0,0,.7) 54%, rgba(0,0,0,.24) 79%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, #000 28%, rgba(0,0,0,.7) 54%, rgba(0,0,0,.24) 79%, transparent 100%);
  }

  .consultation__cta {
    align-items: flex-end;
    padding-right: clamp(70px, 11vw, 180px);
    text-align: left;
  }

  .consultation__cta p {
    width: min(62%, 760px);
    margin-right: 0;
    margin-left: auto;
    text-align: left;
  }

  .consultation__cta-button {
    margin-right: 0;
    margin-left: auto;
  }

  .consultation__cta-break { display: block; }

  .consultation__cta .consultation__cta-watermark {
    top: -165px;
    right: -255px;
    bottom: auto;
    width: 720px;
    height: 720px;
    opacity: .075;
    transform: rotate(-11deg);
  }
}

@media (max-width: 900px) {
  .consultation__cta .consultation__cta-foliage {
    top: 0;
    left: -18px;
    bottom: auto;
    width: min(58vw, 260px);
    height: 100%;
    object-fit: cover;
    object-position: left center;
    opacity: .82;
    filter: saturate(1.12) contrast(1.03) blur(.7px);
    transform: none;
    mix-blend-mode: multiply;
    -webkit-mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.88) 34%, rgba(0,0,0,.42) 67%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.88) 34%, rgba(0,0,0,.42) 67%, transparent 100%);
  }
}

.consultation__manifesto-wave {
  position: absolute;
  z-index: -1;
  top: 15px;
  bottom: 15px;
  left: 0;
  width: 190px;
  height: calc(100% - 30px);
  overflow: visible;
  pointer-events: none;
}

.consultation__manifesto-wave path {
  fill: none;
  stroke: rgba(201, 169, 106, .92);
  stroke-width: 1.15;
  vector-effect: non-scaling-stroke;
}

@media (min-width: 901px) {
  .consultation__manifesto::after {
    display: none;
  }

  .consultation__manifesto-title {
    transform: translateX(34px);
  }
}

@media (max-width: 620px) {
  .consultation__manifesto-wave {
    display: none;
  }
}

/* Ajustes finais de cor, escala e iconografia. */
.indications {
  background: #fbf8f3;
}

.indication-card {
  grid-template-columns: 78px minmax(0, 1fr);
  column-gap: 22px;
  border-color: #e7e1d8;
  border-radius: 12px;
  background: #faf7f1;
}

.indication-card__icon {
  width: 64px;
  height: 64px;
  padding: 13px;
  align-self: start;
  justify-self: center;
  background: #f3eee5;
  stroke: #c9a96a;
  stroke-width: 1.9;
}

.indications__closing-brand img {
  width: 156px;
  height: 156px;
  margin: -40px 0 -22px;
}

.indications__closing-brand span {
  color: #084f3e;
}

@media (max-width: 1100px) {
  .indication-card {
    grid-template-columns: 72px minmax(0, 1fr);
    column-gap: 18px;
  }

  .indication-card__icon {
    width: 64px;
    height: 64px;
    padding: 13px;
  }
}

@media (max-width: 620px) {
  .indication-card {
    grid-template-columns: 66px minmax(0, 1fr);
    column-gap: 16px;
  }

  .indication-card__icon {
    width: 56px;
    height: 56px;
    padding: 11px;
  }

  .indications__closing-brand img {
    width: 122px;
    height: 122px;
    margin: -30px 0 -17px;
  }
}

.indication-card__icon--image {
  position: relative;
  overflow: hidden;
  padding: 0;
  border-radius: 50%;
  background: #f3eee5;
}

.indication-card__icon--image img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 139%;
  height: 139%;
  max-width: none;
  transform: translate(-50%, -50%);
  object-fit: contain;
}

.indications__footer-art {
  position: absolute;
  z-index: 3;
  right: -42px;
  bottom: -150px;
  width: calc(100% + 84px);
  height: auto;
  display: block;
  opacity: .56;
  pointer-events: none;
}

.indications__closing > * {
  position: relative;
  z-index: 4;
}

@media (max-width: 620px) {
  .indications__footer-art {
    right: -20px;
    bottom: -72px;
    width: calc(100% + 40px);
    opacity: .5;
  }
}

@font-face {
  font-family: "Inter";
  src: url("assets/fonts/inter-400.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("assets/fonts/inter-600.ttf") format("truetype");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

:root {
  --cream: #f8f4ed;
  --cream-warm: #f1e9de;
  --green: #0c463a;
  --green-deep: #083a31;
  --gold: #bf9132;
  --ink: #202522;
  --white: #fffefd;
  --focus: #216f61;
}

* { box-sizing: border-box; }

html { background: var(--cream); scroll-behavior: smooth; }

body {
  margin: 0;
  color: var(--ink);
  background: var(--cream);
  font-family: "Inter", sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
}

a { color: inherit; }

.hero {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  background: var(--cream);
  isolation: isolate;
}

.hero::before {
  position: absolute;
  z-index: 1;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(90deg, var(--cream) 0%, rgba(248,244,237,.99) 34%, rgba(248,244,237,.88) 45%, rgba(248,244,237,.28) 59%, rgba(248,244,237,0) 72%);
}

.hero__photo {
  position: absolute;
  z-index: 0;
  inset: 0 0 0 42%;
  overflow: hidden;
  background: var(--cream-warm);
}

.hero__photo::after {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(180deg, rgba(239,224,205,.05), rgba(121,83,44,.06));
}

.hero__photo img {
  width: 100%;
  height: 100%;
  display: block;
  margin-left: auto;
  object-fit: cover;
  object-position: 50% 43%;
}

.hero__content {
  position: relative;
  z-index: 2;
  width: min(1368px, calc(100% - 160px));
  min-height: 100svh;
  margin: 0 auto;
  padding: clamp(42px, 5.2vh, 66px) 0 clamp(118px, 14vh, 154px);
  display: flex;
  flex-direction: column;
}

.identity {
  display: flex;
  align-items: center;
  gap: 16px;
  width: max-content;
}

.identity__symbol {
  width: 68px;
  height: 68px;
  display: block;
  flex: 0 0 auto;
}

.identity__symbol img { width: 100%; height: 100%; display: block; object-fit: cover; }

.identity__text {
  display: grid;
  color: var(--green-deep);
  text-transform: uppercase;
}

.identity__text strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(18px, 1.55vw, 25px);
  font-weight: 400;
  letter-spacing: .14em;
  line-height: 1.15;
}

.identity__text small {
  margin-top: 7px;
  font-size: clamp(11px, .9vw, 15px);
  font-weight: 600;
  letter-spacing: .25em;
}

.hero__copy {
  width: min(47%, 610px);
  margin-top: auto;
  margin-bottom: auto;
  padding-top: clamp(38px, 6vh, 80px);
}

h1 {
  max-width: 540px;
  margin: 0;
  color: var(--green-deep);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(46px, 4.2vw, 68px);
  font-weight: 400;
  line-height: 1.03;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.gold-rule {
  width: 70px;
  height: 1px;
  display: block;
  margin: clamp(30px, 4.2vh, 42px) 0;
  background: var(--gold);
}

.hero__copy > p {
  max-width: 460px;
  margin: 0;
  font-size: clamp(18px, 1.4vw, 22px);
  line-height: 1.62;
}

.hero__actions {
  display: flex;
  align-items: stretch;
  gap: 16px;
  margin-top: clamp(32px, 4.5vh, 46px);
}

.button {
  min-height: 62px;
  padding: 14px 21px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  border: 1px solid var(--green-deep);
  border-radius: 7px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
  transition: background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.button svg {
  width: 25px;
  height: 25px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.button--primary {
  min-width: 385px;
  color: var(--white);
  background: var(--green-deep);
  box-shadow: 0 10px 28px rgba(8,58,49,.13);
}

.button--primary:hover { background: #052f28; }
.button--primary .button__arrow { margin-left: auto; }

.button--secondary {
  min-width: 255px;
  color: var(--green-deep);
  background: rgba(248,244,237,.72);
  backdrop-filter: blur(8px);
}

.button--secondary:hover { background: var(--white); }

.button:focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }

.hero__curve {
  position: absolute;
  z-index: 4;
  right: -3%;
  bottom: -73px;
  left: -3%;
  height: 128px;
  border-radius: 50% 50% 0 0 / 54% 54% 0 0;
  background: var(--cream);
  pointer-events: none;
}

@media (max-width: 1180px) {
  .hero::before { background: linear-gradient(90deg, var(--cream) 0%, rgba(248,244,237,.98) 42%, rgba(248,244,237,.68) 57%, rgba(248,244,237,.08) 76%); }
  .hero__content { width: min(100% - 56px, 1100px); }
  .hero__copy { width: 57%; }
  .hero__actions { max-width: 530px; flex-direction: column; }
  .button--primary, .button--secondary { width: 100%; min-width: 0; }
}

@media (max-width: 760px) {
  .hero { min-height: auto; padding-bottom: 54px; display: flex; flex-direction: column; }
  .hero::before { display: none; }

  .hero__content {
    order: 1;
    width: min(100% - 40px, 620px);
    min-height: auto;
    padding: 28px 0 0;
  }

  .identity__symbol { width: 64px; height: 64px; }
  .identity__text strong { font-size: clamp(15px, 4.1vw, 20px); letter-spacing: .09em; }
  .identity__text small { margin-top: 5px; font-size: 10px; letter-spacing: .22em; }

  .hero__copy { width: 100%; margin: 0; padding: 58px 0 0; }
  h1 { max-width: 630px; font-size: clamp(42px, 12vw, 60px); line-height: 1.06; }
  .hero__copy > p { font-size: 17px; line-height: 1.58; }
  .hero__actions { max-width: none; margin-top: 34px; }
  .button { width: 100%; min-height: 58px; }

  .hero__photo {
    order: 2;
    position: relative;
    inset: auto;
    z-index: 2;
    width: calc(100% - 28px);
    height: min(116vw, 660px);
    margin: 46px 0 0 auto;
    border-radius: 100% 0 0 0 / 10% 0 0 0;
  }

  .hero__photo img { width: 100%; margin-left: 0; object-fit: cover; object-position: 50% 41%; }
  .hero__curve { right: -10%; bottom: 0; left: -10%; height: 76px; }
}

@media (max-width: 390px) {
  .hero__content { width: calc(100% - 32px); }
  .identity { gap: 11px; }
  .identity__symbol { width: 56px; height: 56px; }
  h1 { font-size: 40px; }
  .button { padding-inline: 16px; font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}

.indications {
  position: relative;
  background: var(--cream);
  padding: clamp(58px, 6vw, 86px) 0 clamp(78px, 8vw, 112px);
}

.indications__inner {
  width: min(1440px, calc(100% - 80px));
  margin: 0 auto;
}

.indications__header {
  max-width: 960px;
  margin: 0 auto clamp(32px, 3vw, 44px);
  display: flex;
  flex-direction: column;
  text-align: center;
}

.indications__header h2 {
  order: 2;
  margin: 0;
  color: var(--green-deep);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.02em;
}

.indications__rule {
  order: 1;
  width: 52px;
  height: 1px;
  display: block;
  margin: 0 auto 22px;
  background: var(--gold);
}

.indications__header p {
  order: 3;
  margin: 16px 0 0;
  color: rgba(32, 37, 34, .72);
  font-size: 19px;
  line-height: 1.55;
}

.indications__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.indication-card {
  min-height: 184px;
  padding: 24px;
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  grid-template-rows: auto 1fr;
  column-gap: 24px;
  align-items: start;
  border: 1px solid rgba(8, 58, 49, .1);
  border-radius: 12px;
  background: rgba(255, 254, 253, .3);
  box-shadow: 0 12px 34px rgba(54, 48, 39, .035);
}

.indication-card__icon {
  width: 96px;
  height: 96px;
  box-sizing: border-box;
  display: block;
  grid-column: 1;
  grid-row: 1 / span 2;
  padding: 22px;
  border-radius: 50%;
  background: rgba(191, 145, 50, .09);
  fill: none;
  stroke: var(--gold);
  stroke-width: 1.55;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.indication-card h3 {
  grid-column: 2;
  margin: 4px 0 12px;
  color: var(--green-deep);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 25px;
  font-weight: 500;
  line-height: 1.15;
}

.indication-card p {
  grid-column: 2;
  margin: 0;
  color: rgba(32, 37, 34, .68);
  font-size: 16px;
  line-height: 1.65;
}

.indications__closing {
  margin: clamp(26px, 3vw, 40px) auto 0;
  padding: 30px 42px;
  display: flex;
  align-items: center;
  gap: 34px;
  border: 1px solid rgba(191, 145, 50, .05);
  border-radius: 12px;
  background: rgba(191, 145, 50, .095);
}

.indications__closing-mark {
  width: 112px;
  height: 76px;
  flex: 0 0 auto;
  position: relative;
  border-right: 1px solid rgba(191, 145, 50, .55);
}

.indications__closing-mark::before {
  content: "";
  position: absolute;
  top: 21px;
  left: 24px;
  width: 31px;
  height: 31px;
  border: 1px solid var(--gold);
  border-radius: 50%;
}

.indications__closing-mark::after {
  content: "";
  position: absolute;
  top: 36px;
  left: 39px;
  width: 23px;
  height: 1px;
  background: var(--gold);
}

.indications__closing p {
  margin: 0;
  color: rgba(32, 37, 34, .72);
  font-size: 17px;
  line-height: 1.55;
}

.indications__closing strong {
  display: block;
  margin-bottom: 6px;
  color: var(--green-deep);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.15;
}

@media (max-width: 900px) {
  .indications__inner {
    width: min(760px, calc(100% - 48px));
  }

  .indications__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .indication-card {
    grid-template-columns: 76px minmax(0, 1fr);
    column-gap: 20px;
  }

  .indication-card__icon {
    width: 76px;
    height: 76px;
    padding: 19px;
  }
}

@media (max-width: 620px) {
  .indications {
    padding: 54px 0 84px;
  }

  .indications__inner {
    width: calc(100% - 32px);
  }

  .indications__header {
    margin-bottom: 44px;
    text-align: left;
  }

  .indications__header h2 {
    font-size: clamp(36px, 10vw, 45px);
  }

  .indications__rule {
    margin: 0 0 23px;
  }

  .indications__header p {
    font-size: 17px;
    line-height: 1.65;
  }

  .indications__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .indication-card {
    min-height: 0;
    padding: 28px 26px 30px;
    grid-template-columns: 68px minmax(0, 1fr);
    column-gap: 19px;
  }

  .indication-card__icon {
    width: 68px;
    height: 68px;
    padding: 17px;
  }

  .indication-card h3 {
    font-size: 23px;
  }

  .indications__closing {
    margin-top: 42px;
    padding: 27px 24px;
    align-items: flex-start;
    gap: 18px;
  }

  .indications__closing-mark {
    width: 1px;
    height: 100%;
    min-height: 92px;
    border: 0;
    background: rgba(191, 145, 50, .55);
  }

  .indications__closing-mark::before,
  .indications__closing-mark::after {
    display: none;
  }

  .indications__closing strong {
    font-size: 25px;
  }
}

/* Regras finais da segunda dobra mantidas após os estilos legados. */
.indications {
  overflow: hidden;
  background: var(--cream);
  padding: clamp(58px, 5vw, 78px) 0 clamp(88px, 8vw, 122px);
  font-family: "Inter", sans-serif;
  font-weight: 400;
}

.indications__inner {
  position: relative;
  z-index: 1;
  width: min(1460px, calc(100% - 72px));
}

.indications__header {
  max-width: 1080px;
  margin: 0 auto clamp(34px, 3.6vw, 50px);
}

.indications__header h2 {
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(48px, 4.7vw, 70px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.035em;
}

.indications__rule {
  width: 70px;
  margin: 0 auto 28px;
  background: #c9a96a;
}

.indications__header p {
  max-width: 1030px;
  margin: 20px auto 0;
  color: #5a5a5a;
  font-size: 19px;
  line-height: 1.55;
}

.indications__grid {
  gap: 18px 16px;
}

.indication-card {
  min-height: 218px;
  padding: 28px 26px;
  grid-template-columns: 106px minmax(0, 1fr);
  column-gap: 25px;
  border: 1px solid rgba(8, 79, 62, .12);
  border-radius: 10px;
  background: #f6f1e9;
  box-shadow: none;
}

.indication-card__icon {
  width: 106px;
  height: 106px;
  padding: 24px;
  background: rgba(201, 169, 106, .12);
  stroke: #c9a96a;
  stroke-width: 1.65;
}

.indication-card h3 {
  margin: 5px 0 12px;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -.025em;
}

.indication-card p {
  color: #5a5a5a;
  font-size: 16px;
  line-height: 1.65;
}

.indications__closing {
  position: relative;
  z-index: 2;
  min-height: 172px;
  margin: 24px 0 0;
  padding: 26px 128px 26px 34px;
  display: grid;
  grid-template-columns: 245px 1px minmax(0, 1fr);
  gap: 36px;
  align-items: center;
  border: 1px solid rgba(201, 169, 106, .08);
  border-radius: 12px;
  background: rgba(243, 238, 229, .88);
}

.indications__closing-brand {
  display: grid;
  justify-items: center;
  color: #c9a96a;
  text-transform: uppercase;
}

.indications__closing-brand img {
  width: 76px;
  height: 76px;
  display: block;
  margin-bottom: 7px;
  object-fit: contain;
}

.indications__closing-brand span {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 15px;
  letter-spacing: .15em;
  line-height: 1.25;
}

.indications__closing-brand small {
  margin-top: 5px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .34em;
}

.indications__closing-divider {
  width: 1px;
  height: 116px;
  background: rgba(201, 169, 106, .78);
}

.indications__closing p {
  margin: 0;
  color: #5a5a5a;
  font-size: 17px;
  line-height: 1.55;
}

.indications__closing strong {
  display: block;
  margin-bottom: 7px;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.02em;
}

.indications__closing-mark {
  display: none;
}

@media (max-width: 1100px) {
  .indication-card {
    grid-template-columns: 82px minmax(0, 1fr);
    column-gap: 19px;
  }

  .indication-card__icon {
    width: 82px;
    height: 82px;
    padding: 19px;
  }

  .indication-card h3 { font-size: 24px; }

  .indications__closing {
    grid-template-columns: 210px 1px minmax(0, 1fr);
    padding-right: 104px;
    gap: 26px;
  }
}

@media (max-width: 900px) {
  .indications__inner { width: min(760px, calc(100% - 48px)); }

  .indications__closing {
    grid-template-columns: 180px 1px minmax(0, 1fr);
    padding-right: 58px;
  }

  .indications__closing strong { font-size: 27px; }
  .indications__botanical { width: 150px; right: -28px; }
}

@media (max-width: 620px) {
  .indications { padding: 56px 0 98px; }
  .indications__inner { width: calc(100% - 32px); }

  .indications__header {
    margin-bottom: 38px;
    text-align: left;
  }

  .indications__header h2 {
    font-size: clamp(38px, 11vw, 46px);
    line-height: 1.04;
  }

  .indications__rule {
    width: 50px;
    margin: 0 0 22px;
  }

  .indications__header p {
    margin-top: 17px;
    font-size: 17px;
    line-height: 1.62;
  }

  .indications__grid { gap: 14px; }

  .indication-card {
    min-height: 0;
    padding: 25px 22px 27px;
    grid-template-columns: 76px minmax(0, 1fr);
    column-gap: 18px;
  }

  .indication-card__icon {
    width: 76px;
    height: 76px;
    padding: 18px;
  }

  .indication-card h3 {
    margin-top: 2px;
    font-size: 23px;
    line-height: 1.2;
  }

  .indication-card p {
    font-size: 15px;
    line-height: 1.58;
  }

  .indications__closing {
    min-height: 0;
    margin-top: 20px;
    padding: 26px 24px 32px;
    grid-template-columns: 1fr;
    gap: 22px;
    text-align: center;
  }

  .indications__closing-brand img {
    width: 94px;
    height: 94px;
    margin: -17px 0 -6px;
  }

  .indications__closing-divider {
    width: 84px;
    height: 1px;
    justify-self: center;
  }

  .indications__closing p { font-size: 16px; }
  .indications__closing strong { font-size: 27px; }

  .indications__organic-line {
    right: -28%;
    bottom: -48px;
    left: -28%;
  }

  .indications__botanical {
    right: -34px;
    bottom: -86px;
    width: 118px;
    opacity: .55;
  }
}

/* Quarta dobra: no mobile a fotografia e os cards seguem em fluxo, sem a
   sobreposição reservada à composição desktop. */
@media (max-width: 620px) {
  .consultation__photo {
    overflow: hidden;
  }

  .consultation__photo img {
    width: 160%;
    max-width: none;
    height: 160%;
    margin-left: -18%;
    object-fit: cover;
    object-position: 50% 0;
  }

  .consultation__steps {
    width: calc(100% - 32px);
    margin: 24px auto 0;
    padding: 0;
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    transform: none;
  }

  .consultation-step {
    position: relative;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 28px 24px 30px;
    border: 1px solid #e7e1d8;
    border-radius: 11px !important;
    background: #f6f1e9;
    box-shadow: none;
  }

  .consultation__cta p {
    width: min(100%, 340px);
    margin-right: auto;
    margin-left: auto;
    text-align: center;
  }

  .consultation__cta-button {
    width: min(78%, 290px);
    margin-right: auto;
    margin-left: auto;
  }

  .consultation__cta .consultation__cta-foliage {
    left: -42px;
  }

  .consultation__cta .consultation__cta-watermark {
    right: -92px;
    bottom: -95px;
  }
}

/* Quinta dobra — Sobre a Dra. Fabiana Olivetti */
.about {
  position: relative;
  overflow: hidden;
  background: var(--cream);
  color: #5a5a5a;
}

.about__main {
  min-height: 850px;
  display: grid;
  grid-template-columns: minmax(0, 45%) minmax(0, 55%);
  grid-template-rows: auto auto 1fr;
  grid-template-areas:
    "photo header"
    "photo copy"
    "photo highlights";
}

.about__photo {
  grid-area: photo;
  min-width: 0;
  height: 100%;
  margin: 0;
  overflow: hidden;
}

.about__photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 50% 48%;
}

.about__header,
.about__copy,
.about__highlights {
  width: min(100%, 860px);
  margin-right: auto;
  margin-left: auto;
}

.about__header {
  grid-area: header;
  padding: 68px 58px 0;
}

.about__rule {
  width: 60px;
  height: 1px;
  display: block;
  margin-bottom: 24px;
  background: #c9a96a;
}

.about__header h2 {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(52px, 4.2vw, 72px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.035em;
}

.about__header p {
  margin: 22px 0 0;
  color: #4f6b7c;
  font-family: Inter, "Segoe UI", sans-serif;
  font-size: 20px;
  line-height: 1.45;
}

.about__copy {
  grid-area: copy;
  padding: 22px 58px 0;
}

.about__copy p {
  margin: 0;
  font-size: 17px;
  line-height: 1.55;
}

.about__copy p + p {
  margin-top: 18px;
}

.about__highlights {
  grid-area: highlights;
  align-self: end;
  padding: 42px 42px 62px;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
}

.about-highlight {
  position: relative;
  min-width: 0;
  padding: 0 28px;
  text-align: center;
}

.about-highlight + .about-highlight::before {
  content: "";
  position: absolute;
  top: 14px;
  bottom: 8px;
  left: 0;
  width: 1px;
  background: rgba(201, 169, 106, .7);
}

.about-highlight__icon {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: #f3eee5;
}

.about-highlight__icon svg {
  width: 44px;
  height: 44px;
  fill: none;
  stroke: #b88727;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.about-highlight h3 {
  margin: 0 0 12px;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -.02em;
}

.about-highlight p {
  margin: 0;
  font-size: 15px;
  line-height: 1.48;
}

.about__transition {
  position: relative;
  height: 175px;
  overflow: hidden;
  background: linear-gradient(180deg, #f7f4ec 0%, #eef3ef 100%);
}

.about__transition svg {
  position: absolute;
  z-index: 2;
  top: -36px;
  left: 0;
  width: 100%;
  height: 155px;
}

.about__transition path {
  fill: none;
  stroke: rgba(201, 169, 106, .9);
  stroke-width: 1.1;
  vector-effect: non-scaling-stroke;
}

.about__transition img {
  position: absolute;
  z-index: 1;
  bottom: -74px;
  left: -35px;
  width: 330px;
  height: 250px;
  object-fit: cover;
  object-position: left center;
  opacity: .42;
  filter: blur(2px) saturate(.9);
  -webkit-mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.62) 45%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.62) 45%, transparent 100%);
}

@media (max-width: 1100px) {
  .about__main {
    grid-template-columns: 43% 57%;
  }

  .about__header { padding-right: 36px; padding-left: 36px; }
  .about__copy { padding-right: 36px; padding-left: 36px; }
  .about__highlights { padding-right: 22px; padding-left: 22px; }
  .about-highlight { padding-right: 18px; padding-left: 18px; }
  .about-highlight h3 { font-size: 22px; }
  .about-highlight p { font-size: 14px; }
}

@media (max-width: 760px) {
  .about__main {
    min-height: 0;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-template-areas:
      "header"
      "photo"
      "copy"
      "highlights";
  }

  .about__header,
  .about__copy,
  .about__highlights {
    width: calc(100% - 32px);
    padding-right: 0;
    padding-left: 0;
  }

  .about__header {
    padding-top: 58px;
    padding-bottom: 34px;
  }

  .about__rule { width: 50px; margin-bottom: 22px; }

  .about__header h2 {
    font-size: clamp(42px, 12vw, 52px);
    line-height: 1.01;
  }

  .about__header p {
    margin-top: 18px;
    font-size: 17px;
    line-height: 1.5;
  }

  .about__photo {
    width: 100%;
    height: min(122vw, 540px);
  }

  .about__photo img {
    object-position: 50% 50%;
  }

  .about__copy {
    padding-top: 36px;
  }

  .about__copy p {
    font-size: 16px;
    line-height: 1.65;
  }

  .about__copy p + p { margin-top: 20px; }

  .about__highlights {
    padding-top: 42px;
    padding-bottom: 64px;
    display: block;
  }

  .about-highlight {
    padding: 0 6px 32px;
    text-align: left;
  }

  .about-highlight + .about-highlight {
    padding-top: 30px;
  }

  .about-highlight + .about-highlight::before {
    top: 0;
    right: 6px;
    bottom: auto;
    left: 6px;
    width: auto;
    height: 1px;
  }

  .about-highlight__icon {
    width: 68px;
    height: 68px;
    margin: 0 0 16px;
  }

  .about-highlight__icon svg { width: 39px; height: 39px; }

  .about-highlight h3 {
    font-size: 27px;
    line-height: 1.15;
  }

  .about-highlight p {
    font-size: 15px;
    line-height: 1.6;
  }

  .about__transition {
    z-index: 4;
    height: 150px;
    margin-top: -58px;
    background: transparent;
  }

  .about__transition svg {
    top: 0;
    height: 150px;
  }

  .about__transition path {
    d: path("M0 5 C300 0 560 22 820 18 C1080 14 1260 5 1440 3 L1440 150 L0 150 Z");
    fill: #eef3ef;
    stroke: rgba(201, 169, 106, .9);
  }

  .about__transition img {
    z-index: 3;
    bottom: -30px;
    left: -38px;
    width: 220px;
    height: 180px;
    opacity: .44;
    filter: blur(1.2px) saturate(1.02) contrast(1.03);
  }
}

@media (min-width: 761px) {
  .about__main {
    min-height: 850px;
    grid-template-columns: minmax(0, 45%) minmax(0, 55%);
  }

  .about__photo {
    position: relative;
    height: 100%;
    align-self: start;
  }

  .about__photo::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    width: 58px;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(250,247,241,0) 0%, rgba(250,247,241,.2) 62%, #faf7f1 100%);
  }

  .about__photo::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    left: 0;
    height: 48px;
    pointer-events: none;
    background: linear-gradient(180deg, #faf7f1 0%, rgba(250,247,241,.2) 38%, rgba(250,247,241,0) 100%);
  }

  .about__photo img {
    object-fit: cover;
    object-position: 42% 48%;
    transform: scale(1.035);
  }

  .about__transition {
    z-index: 4;
    height: 280px;
    margin-top: -118px;
    background: transparent;
  }

  .about__transition svg {
    top: 0;
    height: 280px;
  }

  .about__transition path {
    d: path("M0 58 C290 36 550 94 820 85 C1080 76 1260 58 1440 54 L1440 280 L0 280 Z");
    fill: #eef3ef;
    stroke: rgba(201, 169, 106, .9);
  }

  .about__transition img {
    z-index: 3;
    bottom: -38px;
    left: -42px;
    width: 450px;
    height: 315px;
    opacity: .68;
    filter: blur(.8px) saturate(1.12) contrast(1.07);
  }
}

@media (max-width: 760px) {
  .about__transition img {
    opacity: .58;
    filter: blur(.8px) saturate(1.12) contrast(1.07);
  }
}

/* Sexta dobra — O que dizem os pacientes */
.testimonials {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 82px 0 96px;
  background: var(--cream);
  color: #5a5a5a;
}

.testimonials__foliage {
  position: absolute;
  z-index: -1;
  top: 18px;
  left: 0;
  width: 620px;
  height: 670px;
  object-fit: fill;
  object-position: left top;
  opacity: .82;
  filter: saturate(1);
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 12%, rgba(0,0,0,.48) 28%, rgba(0,0,0,.1) 45%, transparent 62%);
  mask-image: linear-gradient(90deg, #000 0%, #000 12%, rgba(0,0,0,.48) 28%, rgba(0,0,0,.1) 45%, transparent 62%);
}

.testimonials__header {
  position: relative;
  z-index: 2;
  width: min(900px, calc(100% - 48px));
  margin: 0 auto 34px;
  text-align: center;
}

.testimonials__rule {
  width: 60px;
  height: 1px;
  display: block;
  margin: 0 auto 24px;
  background: #c9a96a;
}

.testimonials__header h2 {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(48px, 4.7vw, 72px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -.035em;
}

.testimonials__subtitle {
  margin: 14px 0 0;
  color: #2f6170;
  font-size: 20px;
  line-height: 1.45;
}

.testimonials__intro {
  max-width: 760px;
  margin: 18px auto 0;
  color: #456779;
  font-size: 17px;
  line-height: 1.55;
}

.testimonials__layout {
  position: relative;
  z-index: 2;
  width: min(1368px, calc(100% - 72px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 36px;
  align-items: end;
}

.testimonials__mantra {
  padding: 0 0 38px 10px;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.65;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.testimonials__mantra span { display: block; }
.testimonials__mantra i {
  width: 54px;
  height: 1px;
  display: block;
  margin-top: 24px;
  background: #c9a96a;
}

.testimonials__viewport { overflow: hidden; }
.testimonials__track { min-height: 530px; }
.testimonials__slide {
  display: none;
  min-height: 530px;
  grid-template-columns: 1.08fr 1fr;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.testimonials__slide.is-active { display: grid; }

.testimonial-card {
  position: relative;
  min-width: 0;
  padding: 25px 34px 24px;
  overflow: hidden;
  border: 1px solid rgba(231,225,216,.9);
  border-radius: 13px;
  background: #f6f1e9;
  box-shadow: 0 8px 24px rgba(45,59,50,.045);
}

.testimonial-card--large {
  grid-row: 1 / 3;
  padding: 36px 42px 32px;
}

.testimonial-card__stars {
  color: #c09543;
  font-size: 24px;
  line-height: 1;
  letter-spacing: .08em;
}

.testimonial-card__quote {
  position: absolute;
  right: 28px;
  bottom: 18px;
  color: rgba(8,79,62,.09);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 92px;
  line-height: 1;
}

.testimonial-card blockquote {
  position: relative;
  z-index: 1;
  margin: 20px 0 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.32;
}

.testimonial-card--large blockquote {
  font-size: 25px;
  line-height: 1.38;
}

.testimonial-card > i {
  width: 42px;
  height: 1px;
  display: block;
  margin: 18px 0 14px;
  background: #c9a96a;
}

.testimonial-card p {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #456779;
  font-size: 13px;
  line-height: 1.35;
}

.testimonial-card p strong,
.testimonial-card p span { display: block; }
.testimonial-card p strong { color: #084f3e; font-weight: 600; }

.testimonials__controls {
  min-height: 44px;
  margin-top: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

.testimonials__arrow {
  width: 38px;
  height: 38px;
  border: 1px solid rgba(8,79,62,.42);
  border-radius: 50%;
  background: transparent;
  color: #084f3e;
  cursor: pointer;
  font-size: 18px;
}
.testimonials__arrow:disabled { opacity: .28; cursor: default; }
.testimonials__dots { display: flex; gap: 9px; }
.testimonials__dots button {
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(8,79,62,.25);
  cursor: pointer;
}
.testimonials__dots button.is-active { background: #c9a96a; transform: scale(1.25); }

.testimonials__footer {
  position: relative;
  z-index: 2;
  width: min(1170px, calc(100% - 72px));
  margin: 24px auto 0;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 46px;
  align-items: center;
}

.testimonials__source { margin: 0; color: #456779; font-size: 13px; line-height: 1.4; }
.testimonials__source strong { display: block; color: #09a687; font-size: 27px; line-height: 1.05; }
.testimonials__source strong span { color: #09a687; }

.testimonials__button {
  min-width: 350px;
  min-height: 58px;
  padding: 14px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-radius: 30px;
  background: #084f3e;
  color: #fff;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
}
.testimonials__button span { color: #c9a96a; font-size: 22px; }

.testimonials__thanks {
  padding-left: 42px;
  border-left: 1px solid #c9a96a;
  color: #084f3e;
  text-align: right;
}
.testimonials__thanks em {
  display: block;
  font-family: "Segoe Script", "French Script MT", cursive;
  font-size: 31px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -.025em;
  color: #084f3e;
}
.testimonials__thanks span { display: block; margin-top: 8px; color: #456779; font-size: 12px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; }

.testimonials__organic-line {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 94px;
}
.testimonials__organic-line path { fill: none; stroke: rgba(201,169,106,.82); stroke-width: 1; vector-effect: non-scaling-stroke; }

@media (max-width: 980px) {
  .testimonials__layout { grid-template-columns: 1fr; }
  .testimonials__mantra { display: none; }
  .testimonials__footer { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .testimonials__thanks { padding: 20px 0 0; border-top: 1px solid #c9a96a; border-left: 0; text-align: center; }
}

@media (max-width: 760px) {
  .testimonials { padding: 62px 0 88px; }
  .testimonials__foliage {
    display: none;
  }
  .testimonials__header { width: calc(100% - 32px); margin-bottom: 28px; text-align: left; }
  .testimonials__rule { width: 50px; margin: 0 0 22px; }
  .testimonials__header h2 { font-size: clamp(41px, 11.5vw, 50px); line-height: 1.02; }
  .testimonials__subtitle { font-size: 17px; line-height: 1.5; }
  .testimonials__intro { margin-top: 16px; font-size: 16px; line-height: 1.6; }
  .testimonials__layout { width: calc(100% - 32px); display: block; }
  .testimonials__track { min-height: 0; }
  .testimonials__slide,
  .testimonials__slide.is-active { min-height: 0; display: none; }
  .testimonials__slide.is-active { display: block; }
  .testimonial-card,
  .testimonial-card--large { min-height: 0; padding: 30px 25px 28px; }
  .testimonial-card blockquote,
  .testimonial-card--large blockquote { margin-top: 18px; font-size: 23px; line-height: 1.4; }
  .testimonial-card__quote { right: 18px; bottom: 8px; font-size: 78px; }
  .testimonials__controls { margin-top: 16px; }
  .testimonials__dots { max-width: 150px; flex-wrap: wrap; justify-content: center; }
  .testimonials__footer { width: calc(100% - 32px); margin-top: 34px; gap: 24px; }
  .testimonials__source { font-size: 13px; }
  .testimonials__button { width: min(100%, 330px); min-width: 0; }
  .testimonials__thanks em { font-size: 29px; }
  .testimonials__thanks { background: #faf7f1; }
  .testimonials__organic-line { height: 64px; }
}

/* Sétima dobra — Dúvidas frequentes */
.faq {
  position: relative;
  isolation: isolate;
  min-height: 890px;
  overflow: hidden;
  padding: 76px 0 92px;
  background: var(--cream);
  color: #5a5a5a;
}

.faq__scene {
  position: absolute;
  z-index: -2;
  inset: 0 auto 0 0;
  width: 37%;
  overflow: hidden;
}

.faq__environment {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.faq__scene::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 0 58%, rgba(250,247,241,.48) 76%, #faf7f1 100%);
}

.faq__foliage-main,
.faq__foliage-detail {
  position: absolute;
  z-index: 2;
  left: 0;
  pointer-events: none;
}

.faq__foliage-main { top: -34px; width: 360px; opacity: .94; }
.faq__foliage-detail { bottom: -32px; width: 265px; opacity: .48; }

.faq__header {
  width: min(900px, calc(100% - 48px));
  margin: 0 auto 34px;
  text-align: center;
}

.faq__rule {
  display: block;
  width: 62px;
  height: 1px;
  margin: 0 auto 22px;
  background: #c9a96a;
}

.faq__header h2 {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(48px, 5vw, 70px);
  font-weight: 400;
  line-height: 1.05;
}

.faq__header p {
  max-width: 780px;
  margin: 18px auto 0;
  color: #456779;
  font-size: 17px;
  line-height: 1.55;
}

.faq__composition {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 220px minmax(500px, 760px) 250px;
  gap: 28px;
  align-items: center;
  width: min(1320px, calc(100% - 64px));
  margin: 0 auto;
}

.faq__mantra {
  align-self: center;
  padding: 0 0 0 10px;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.6;
  letter-spacing: .22em;
  text-transform: uppercase;
  transform: translateY(-125px);
}

.faq__mantra span { display: block; }
.faq__mantra i { display: block; width: 48px; height: 1px; margin-top: 22px; background: #c9a96a; }

.faq__accordion { display: grid; gap: 11px; }
.faq-item {
  overflow: hidden;
  border: 1px solid rgba(132,119,94,.14);
  border-radius: 14px;
  background: #f6f1e9;
  box-shadow: 0 8px 24px rgba(73,61,43,.045);
}
.faq-item h3 { margin: 0; }
.faq-item button {
  width: 100%;
  min-height: 72px;
  display: grid;
  grid-template-columns: 50px 1fr 18px;
  gap: 18px;
  align-items: center;
  padding: 10px 24px 10px 18px;
  border: 0;
  background: transparent;
  color: #084f3e;
  text-align: left;
  cursor: pointer;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -.025em;
}
.faq-item__icon {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #f3eee5;
}
.faq-item__icon img { width: 50px; height: 50px; }
.faq-item button > i {
  width: 11px;
  height: 11px;
  border-right: 1.5px solid #456779;
  border-bottom: 1.5px solid #456779;
  transform: rotate(45deg) translateY(-3px);
  transition: transform .25s ease;
}
.faq-item button[aria-expanded="true"] > i { transform: rotate(225deg) translate(-2px,-1px); }
.faq-item button:focus-visible { outline: 2px solid #084f3e; outline-offset: -3px; }

@media (prefers-reduced-motion: reduce) {
  .faq-item button > i { transition: none; }
}

.faq__side { display: grid; gap: 26px; }
.faq__contact {
  padding: 34px 22px 28px;
  border-radius: 16px;
  background: rgba(231,236,226,.82);
  text-align: center;
}
.faq__contact > img { width: 54px; height: 54px; margin-bottom: 18px; }
.faq__contact h3 {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.12;
}
.faq__contact p { margin: 14px auto 22px; color: #456779; font-size: 15px; line-height: 1.5; }
.faq__contact a {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 16px;
  border-radius: 28px;
  background: #084f3e;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}
.faq__contact a img { width: 21px; height: 21px; }
.faq__contact a span { margin-left: auto; color: #c9a96a; font-size: 20px; }
.faq__closing { padding: 0 10px; }
.faq__closing img { width: 38px; height: auto; margin-bottom: 16px; }
.faq__closing p {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 19px;
  font-style: italic;
  line-height: 1.35;
}

@media (max-width: 1080px) {
  .faq__composition { grid-template-columns: minmax(0,1fr) 235px; width: min(920px, calc(100% - 48px)); }
  .faq__mantra { display: none; }
  .faq__scene { width: 30%; opacity: .58; }
}

@media (max-width: 760px) {
  .faq { min-height: 0; padding: 62px 0 78px; }
  .faq__scene { width: 150px; height: 310px; opacity: .18; }
  .faq__environment { object-position: 32% center; }
  .faq__scene::after { background: linear-gradient(90deg, transparent, #faf7f1 94%); }
  .faq__foliage-main { top: -15px; width: 150px; }
  .faq__foliage-detail { display: none; }
  .faq__header { width: calc(100% - 32px); margin-bottom: 28px; text-align: left; }
  .faq__rule { width: 50px; margin: 0 0 22px; }
  .faq__header h2 { font-size: clamp(42px, 12vw, 52px); line-height: 1.02; }
  .faq__header p { margin-top: 16px; font-size: 16px; line-height: 1.6; }
  .faq__composition { display: flex; flex-direction: column; width: calc(100% - 32px); gap: 28px; }
  .faq__accordion { width: 100%; gap: 10px; }
  .faq-item { border-radius: 12px; }
  .faq-item button { min-height: 74px; grid-template-columns: 46px 1fr 15px; gap: 13px; padding: 10px 16px 10px 12px; font-size: 19px; }
  .faq-item__icon { width: 46px; height: 46px; }
  .faq-item__icon img { width: 46px; height: 46px; }
  .faq-item__answer { padding-inline: 12px; }
  .faq__side { width: 100%; gap: 20px; }
  .faq__contact { padding: 32px 24px 26px; }
  .faq__contact h3 { font-size: 29px; }
  .faq__contact a { width: min(100%, 290px); margin: 0 auto; }
  .faq__closing { padding: 0 12px; text-align: center; }
  .faq__closing img { margin: 0 auto 15px; }
  .faq__closing p { font-size: 19px; }
}

/* Oitava dobra — CTA final e rodapé */
.final-cta {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-top: 88px;
  background: var(--cream);
  color: #5a5a5a;
}

.final-cta__visual {
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 235px;
  left: 0;
  width: 48%;
  overflow: hidden;
}

.final-cta__environment { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.final-cta__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 0 52%, rgba(250,247,241,.4) 72%, #faf7f1 100%);
}
.final-cta__foliage {
  position: absolute;
  z-index: 2;
  top: -30px;
  left: 0;
  width: min(520px, 90%);
  height: 100%;
  object-fit: contain;
  object-position: left center;
}

.final-cta__content {
  width: min(620px, calc(50% - 48px));
  min-height: 380px;
  margin: 0 max(48px, calc((100% - 1240px)/2)) 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.final-cta__rule { width: 58px; height: 1px; margin-bottom: 25px; background: #c9a96a; }
.final-cta__content h2 {
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(40px, 4vw, 58px);
  font-weight: 400;
  line-height: 1.08;
}
.final-cta__content > p { margin: 22px 0 0; color: #456779; font-size: 18px; line-height: 1.55; }
.final-cta__actions { display: flex; gap: 14px; margin-top: 30px; }
.final-cta__button {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  padding: 0 24px;
  border: 1px solid #084f3e;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}
.final-cta__button--primary { background: #084f3e; color: #fff; }
.final-cta__button--secondary { background: rgba(250,247,241,.72); color: #084f3e; }
.final-cta__button span { color: #c9a96a; font-size: 19px; }

.final-cta__attributes {
  width: min(1120px, calc(100% - 64px));
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 70px auto 76px;
  border-top: 1px solid rgba(201,169,106,.45);
  border-bottom: 1px solid rgba(201,169,106,.45);
}
.final-cta__attributes article {
  min-height: 145px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 28px;
  text-align: left;
}
.final-cta__attributes article + article { border-left: 1px solid rgba(201,169,106,.45); }
.final-cta__attributes article > span { width: 62px; height: 62px; flex: 0 0 62px; display: grid; place-items: center; border-radius: 50%; background: #f3eee5; }
.final-cta__attributes img { width: 50px; height: 50px; }
.final-cta__attributes h3 { margin: 0; color: #084f3e; font-family: Georgia, "Times New Roman", serif; font-size: 22px; font-weight: 400; line-height: 1.25; }

.site-footer { background: #084f3e; color: rgba(255,255,255,.84); }
.site-footer__inner {
  width: min(1240px, calc(100% - 64px));
  display: grid;
  grid-template-columns: 1.1fr 1fr 1.2fr;
  gap: 52px;
  align-items: start;
  margin: 0 auto;
  padding: 54px 0 44px;
}
.site-footer__brand { display: flex; align-items: center; gap: 16px; color: #fff; text-decoration: none; }
.site-footer__brand img { width: 64px; height: 64px; object-fit: contain; }
.site-footer__brand strong,.site-footer__brand small { display: block; }
.site-footer__brand strong { font-family: Georgia, "Times New Roman", serif; font-size: 20px; font-weight: 400; letter-spacing: .08em; text-transform: uppercase; }
.site-footer__brand small { margin-top: 5px; color: #c9a96a; font-size: 11px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; }
.site-footer__brand i { display: block; width: 40px; height: 1px; margin: 18px auto 14px; background: #c9a96a; }
.site-footer__brand em { display: block; font-family: Georgia, "Times New Roman", serif; font-size: 15px; font-style: italic; font-weight: 400; letter-spacing: 0; text-transform: none; }
.site-footer__nav { display: grid; gap: 9px; }
.site-footer__nav a { color: rgba(255,255,255,.82); font-size: 13px; line-height: 1.4; text-decoration: none; }
.site-footer__address { margin: 0; font-style: normal; font-size: 13px; line-height: 1.55; }
.site-footer__address strong,.site-footer__address span { display: block; }
.site-footer__address strong { margin-bottom: 8px; color: #fff; font-family: Georgia, "Times New Roman", serif; font-size: 17px; font-weight: 400; }
.site-footer__bottom {
  min-height: 52px;
  display: grid;
  grid-template-columns: 1.45fr 1.1fr .75fr;
  align-items: center;
  gap: 30px;
  padding: 0 max(32px, calc((100% - 1240px)/2));
  background: #f3eee5;
  color: #5a5a5a;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.site-footer__bottom a { color: inherit; text-decoration: none; }
.site-footer__bottom i { font-style: normal; color: #c9a96a; }
.site-footer__credentials { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; transform: translateX(-36px); }
.site-footer__credentials strong { font-weight: 400; }
.site-footer__legal { min-height: 40px; display: flex; align-items: center; justify-content: center; gap: 12px; padding-right: 26px; border-right: 1px solid #c9a96a; white-space: nowrap; }
.site-footer__purpose { display: flex; align-items: center; gap: 18px; transform: translateX(18px); }
.site-footer__purpose > i { width: 42px; height: 1px; flex: 0 0 42px; background: #c9a96a; }

@media (max-width: 900px) {
  .final-cta__content { width: min(560px, calc(58% - 30px)); margin-right: 32px; }
  .final-cta__visual { width: 45%; }
  .final-cta__actions { flex-direction: column; align-items: stretch; }
  .site-footer__inner { grid-template-columns: 1fr 1fr; }
  .site-footer__address { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .final-cta { padding-top: 0; }
  .final-cta__visual { position: relative; inset: auto; width: 100%; height: 245px; }
  .final-cta__visual::after { background: linear-gradient(180deg, transparent 0 62%, #faf7f1 100%); }
  .final-cta__foliage { top: -20px; width: 210px; opacity: .58; }
  .final-cta__content { width: calc(100% - 32px); min-height: 0; margin: 0 auto; padding: 24px 0 0; align-items: center; text-align: center; }
  .final-cta__rule { width: 48px; margin-bottom: 21px; }
  .final-cta__content h2 { font-size: clamp(38px, 10.5vw, 47px); }
  .final-cta__content > p { margin-top: 18px; font-size: 16px; }
  .final-cta__actions { width: 100%; margin-top: 26px; gap: 10px; }
  .final-cta__button { width: min(100%, 330px); align-self: center; }
  .final-cta__attributes { width: calc(100% - 32px); grid-template-columns: 1fr; margin: 54px auto 58px; }
  .final-cta__attributes article { min-height: 118px; justify-content: flex-start; padding: 22px 20px; }
  .final-cta__attributes article + article { border-top: 1px solid rgba(201,169,106,.4); border-left: 0; }
  .final-cta__attributes h3 { font-size: 21px; }
  .site-footer__inner { width: calc(100% - 40px); grid-template-columns: 1fr; gap: 30px; padding: 44px 0 36px; }
  .site-footer__address { grid-column: auto; }
  .site-footer__bottom { min-height: 72px; grid-template-columns: 1fr; justify-content: center; gap: 10px; padding: 18px 20px; text-align: center; line-height: 1.45; }
  .site-footer__legal,.site-footer__purpose { justify-content: center; }
}

/* Ajuste da 8ª dobra conforme referência oficial */
.final-cta { padding-top: 0; }
.final-cta__visual { top: 0; bottom: auto; width: 46%; height: 610px; }
.final-cta__foliage { top: -22px; width: 540px; opacity: .9; }
.final-cta__mantra {
  position: absolute;
  z-index: 4;
  right: 66px;
  bottom: 166px;
  margin: 0;
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 14px;
  line-height: 1.52;
  letter-spacing: .23em;
  text-transform: uppercase;
}
.final-cta__mantra i { display: block; width: 44px; height: 1px; margin-bottom: 20px; background: #c9a96a; }
.final-cta__content {
  width: min(650px, calc(54% - 62px));
  min-height: 610px;
  margin-right: max(48px, calc((100% - 1240px)/2));
}
.final-cta__content h2 { font-size: clamp(48px, 4.8vw, 68px); line-height: 1.04; }
.final-cta__content > p { max-width: 620px; margin-top: 20px; font-size: 19px; }
.final-cta__actions { width: 100%; margin-top: 26px; }
.final-cta__button { min-height: 64px; flex: 1; border-radius: 34px; font-size: 16px; }
.final-cta__attributes {
  width: min(700px, calc(54% - 62px));
  margin: -118px max(48px, calc((100% - 1240px)/2)) 58px auto;
  border: 0;
}
.final-cta__attributes article { min-height: 74px; gap: 12px; padding: 12px 22px; }
.final-cta__attributes article + article { border-left: 1px solid #c9a96a; }
.final-cta__attributes article > span { width: 44px; height: 44px; flex-basis: 44px; background: transparent; }
.final-cta__attributes img { width: 42px; height: 42px; }
.final-cta__attributes h3 { color: #456779; font-family: Inter, Arial, sans-serif; font-size: 14px; line-height: 1.35; }

.site-footer { background: var(--cream); color: #456779; border-top: 1px solid rgba(201,169,106,.22); }
.site-footer__inner {
  grid-template-columns: 1.15fr .85fr 1.2fr 1fr;
  gap: 44px;
  padding: 58px 0 54px;
}
.site-footer__brand { color: #084f3e; flex-direction: column; align-items: center; gap: 10px; text-align: center; transform: translateX(-36px); }
.site-footer__brand img { width: 86px; height: 86px; }
.site-footer__brand strong { font-size: 19px; }
.site-footer__brand small { color: #5a5a5a; font-size: 10px; }
.site-footer__nav strong,.site-footer__care strong { margin-bottom: 5px; color: #084f3e; font-size: 13px; font-weight: 600; }
.site-footer__nav a { color: #084f3e; }
.site-footer__nav a:first-child { color: #b28a35; }
.site-footer__address { padding: 0 34px; border-right: 1px solid #c9a96a; }
.site-footer__address strong { color: #084f3e; font-family: Inter, Arial, sans-serif; font-size: 13px; font-weight: 600; }
.site-footer__address span + span { margin-top: 12px; }
.site-footer__contact-row { display: flex !important; align-items: flex-start; gap: 11px; color: inherit; text-decoration: none; }
.site-footer__contact-row + .site-footer__contact-row { margin-top: 12px; }
.site-footer__contact-row svg,.site-footer__contact-row > img { width: 20px; height: 20px; flex: 0 0 20px; object-fit: contain; }
.site-footer__contact-row svg { fill: none; stroke: #084f3e; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.site-footer__contact-row > img { margin-top: -1px; }
.site-footer__care p { margin: 12px 0 0; font-size: 13px; line-height: 1.55; }
.site-footer__bottom { min-height: 76px; background: #dfe8e1; color: #084f3e; text-transform: none; letter-spacing: 0; }

/* Tratamento de borda unificado a partir dos cards da segunda dobra. */
.indication-card,
.expertise-card,
.consultation-step,
.location-card,
.testimonial-card,
.faq-item,
.faq__contact {
  border-width: 1px;
  border-style: solid;
  border-color: rgba(8, 79, 62, .12);
  box-shadow: none;
}

@media (max-width: 900px) and (min-width: 761px) {
  .final-cta__visual { width: 43%; }
  .final-cta__content { width: calc(57% - 46px); margin-right: 28px; }
  .final-cta__attributes { width: calc(57% - 46px); margin-right: 28px; }
  .site-footer__inner { grid-template-columns: 1fr 1fr; }
  .site-footer__address { grid-column: auto; }
}

@media (max-width: 760px) {
  .final-cta__visual {
    position: relative;
    z-index: 0;
    inset: auto;
    width: 100%;
    height: 280px;
  }
  .final-cta__foliage { width: 235px; opacity: .68; }
  .final-cta__mantra { display: none; }
  .final-cta__content { position: relative; z-index: 1; width: calc(100% - 32px); min-height: 0; margin: 0 auto; padding-top: 34px; }
  .final-cta__content h2 { font-size: clamp(43px, 11.5vw, 52px); }
  .final-cta__content > p { font-size: 17px; }
  .final-cta__actions { flex-direction: column; }
  .final-cta__button { flex: none; min-height: 56px; }
  .final-cta__attributes { width: calc(100% - 32px); margin: 44px auto 54px; }
  .final-cta__attributes article { min-height: 104px; }
  .final-cta__attributes article + article { border-top: 1px solid rgba(201,169,106,.45); border-left: 0; }
  .site-footer__inner { grid-template-columns: 1fr; }
  .site-footer { position: relative; z-index: 2; isolation: isolate; }
  .site-footer__brand { transform: none; }
  .site-footer__address { grid-column: auto; padding: 0; border-right: 0; }
  .site-footer__care { padding-top: 24px; border-top: 1px solid rgba(201,169,106,.35); }
  .site-footer__bottom { min-height: 146px; }
  .site-footer__credentials { align-items: center; transform: none; }
  .site-footer__legal { min-height: 0; padding-right: 0; border-right: 0; }
  .site-footer__purpose { transform: none; }
}

/* Padrão tipográfico dos textos introdutórios das seções. */
.section-intro-text.section-intro-text {
  color: #5a5a5a;
  font-family: "Inter", sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.55;
}

.indications__header > .section-intro-text,
.expertise__header > .section-intro-text,
.consultation__locations-header > .section-intro-text,
.testimonials__header > .section-intro-text,
.faq__header > .section-intro-text {
  max-width: 650px;
  margin-right: auto;
  margin-left: auto;
}

/* Etapa 2: tipografia dos cards informativos e perguntas do FAQ. */
.indication-card p,
.consultation-step p,
.location-card p {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}

.location-card h3 {
  font-weight: 400;
}

.faq-item button {
  font-family: "Inter", sans-serif;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.35;
}

@media (max-width: 760px) {
  .faq-item button {
    font-size: 17px;
    font-weight: 500;
    line-height: 1.35;
  }
}

/* O texto introdutório da consulta replica a tipografia do texto do hero. */
.consultation__intro-copy > .section-intro-text,
.indications__header > .section-intro-text,
.faq__header > .section-intro-text {
  color: var(--ink);
  font-family: "Inter", sans-serif;
  font-size: clamp(18px, 1.4vw, 22px);
  font-weight: 400;
  line-height: 1.62;
  letter-spacing: normal;
}

@media (max-width: 760px) {
  .consultation__intro-copy > .section-intro-text,
  .indications__header > .section-intro-text,
  .faq__header > .section-intro-text {
    font-size: 17px;
    line-height: 1.58;
  }
}

/* Tamanho final dos textos introdutórios — independente do texto do hero. */
.section-intro-text.section-intro-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.55;
}

@media (max-width: 760px) {
  .section-intro-text.section-intro-text {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.55;
  }
}

/* Padronização das três frases editoriais com a serifada dos títulos. */
.testimonials__thanks em {
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.3;
}

.faq__closing p {
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.35;
}

.site-footer__brand em {
  color: #084f3e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 16px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.35;
}

.site-footer__brand i {
  visibility: hidden;
}

.site-footer__purpose > i {
  visibility: hidden;
}

@media (max-width: 760px) {
  .testimonials__thanks em { font-size: 22px; }
  .faq__closing p { font-size: 19px; }
  .site-footer__brand em { font-size: 16px; }
}

/* Padronização dos textos conceituais em caixa alta. */
.testimonials__mantra,
.faq__mantra,
.final-cta__mantra {
  color: #084f3e;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  letter-spacing: .10em;
  line-height: 1.35;
  text-transform: uppercase;
}

.testimonials__mantra,
.faq__mantra {
  font-size: 14px;
}

.final-cta__mantra {
  font-size: 15px;
}

.testimonials__mantra i,
.faq__mantra i,
.final-cta__mantra i {
  height: 1px;
  background: #c9a96a;
}

@media (max-width: 760px) {
  .testimonials__mantra,
  .faq__mantra,
  .final-cta__mantra {
    font-size: 14px;
  }
}

/* CTA da consulta: folhagem reposicionada para o lado direito. */
.consultation__cta .consultation__cta-foliage {
  right: auto;
  left: -92px;
  width: 410px;
  object-position: left center;
  transform: none;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 28%, rgba(0,0,0,.7) 54%, rgba(0,0,0,.24) 79%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 28%, rgba(0,0,0,.7) 54%, rgba(0,0,0,.24) 79%, transparent 100%);
}

@media (min-width: 901px) {
  .consultation__cta {
    align-items: center;
    padding-right: 24px;
    text-align: center;
  }

  .consultation__cta p {
    width: auto;
    max-width: 900px;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
  }

  .consultation__cta-button {
    margin-right: auto;
    margin-left: auto;
  }
}

@media (max-width: 900px) {
  .consultation__cta .consultation__cta-foliage {
    right: auto;
    left: -52px;
    width: min(58vw, 260px);
    transform: none;
    -webkit-mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.88) 34%, rgba(0,0,0,.42) 67%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.88) 34%, rgba(0,0,0,.42) 67%, transparent 100%);
  }
}

/* Sobre e depoimentos: folhagens discretas, parcialmente fora da tela. */
@media (min-width: 761px) {
  .about__transition img {
    left: -225px;
    opacity: .46;
  }

  .testimonials__foliage {
    left: -78px;
    opacity: .68;
  }
}

/* CTA global: apenas a ação principal de agendamento permanece visível. */
.clinical-button--secondary[href^="https://wa.me/"],
.final-cta__button--secondary[href^="https://wa.me/"] {
  display: none !important;
}

@media (max-width: 760px) {
  .about__transition img {
    left: -122px;
    opacity: .4;
  }
}

/* FAQ: folhagem de canto do sistema visual das páginas clínicas. */
.faq__clinical-foliage {
  position: absolute;
  z-index: 2;
  top: -58px;
  right: auto;
  left: -34px;
  width: 760px;
  height: auto;
  opacity: .64;
  filter: brightness(.76) saturate(1.55) hue-rotate(10deg) contrast(1.12);
  transform: scaleY(-1);
  transform-origin: center;
  pointer-events: none;
}

@media (max-width: 760px) {
  .faq__clinical-foliage {
    top: -28px;
    right: auto;
    left: -72px;
    width: 430px;
    opacity: .5;
  }
}

/* Padrão único dos CTAs principais — referência: última seção da Home. */
:is(
  .final-cta__button--primary,
  .clinical-button--primary,
  .testimonials__button,
  .consultation__cta-button,
  .home-navigation-panel__cta,
  .hero__actions .button--primary,
  .clinical-header__appointment,
  .clinical-mobile-nav button
) {
  min-height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 22px !important;
  padding: 0 28px !important;
  border: 1px solid #084f3e !important;
  border-radius: 30px !important;
  background: #084f3e !important;
  color: #fff !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease !important;
}

:is(
  .final-cta__button--primary,
  .clinical-button--primary,
  .testimonials__button,
  .consultation__cta-button,
  .home-navigation-panel__cta,
  .hero__actions .button--primary,
  .clinical-header__appointment,
  .clinical-mobile-nav button
):hover {
  border-color: #063f32 !important;
  background: #063f32 !important;
  transform: translateY(-1px);
}

:is(
  .final-cta__button--primary,
  .clinical-button--primary,
  .testimonials__button,
  .consultation__cta-button,
  .home-navigation-panel__cta,
  .hero__actions .button--primary
) > span:last-child {
  margin-left: auto;
  color: #c9a96a !important;
  font-size: 20px !important;
  font-weight: 400 !important;
}

.hero__actions .button--primary .button__arrow {
  margin-left: auto;
  color: #c9a96a !important;
  stroke: #c9a96a !important;
}

@media (max-width: 760px) {
  :is(
    .final-cta__button--primary,
    .clinical-button--primary,
    .testimonials__button,
    .consultation__cta-button,
    .home-navigation-panel__cta,
    .hero__actions .button--primary
  ) {
    width: min(100%, 330px) !important;
    min-width: 0 !important;
  }
}
