/* ==========================================================================
   interseções — Isabela Vicarpi
   Mobile-first. Breakpoint único em 768px (o mesmo da página original).
   --u = 1px no layout de referência (390px no mobile, 1440px no desktop)
   e escala proporcionalmente fora dele, preservando as quebras de linha.
   ========================================================================== */

@font-face {
  font-family: "Neue Montreal";
  src: url("../assets/fonts/neue-montreal-regular.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("../assets/fonts/neue-montreal-bold.woff2") format("woff2");
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "Betani";
  src: url("../assets/fonts/bethany-elingston.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "French Armoire";
  src: url("../assets/fonts/french-armoire.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Melodrame";
  src: url("../assets/fonts/melodrame.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Sticky Notes";
  src: url("../assets/fonts/sticky-notes.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Annie Use Your Telescope";
  src: url("../assets/fonts/annie-use-your-telescope.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

:root {
  /* cores */
  --c-terracota: #823003;
  --c-ferrugem: #723400;
  --c-oliva: #5e5824;
  --c-oliva-botao: #676127;
  --c-musgo: #8b8b59;
  --c-creme: #fff3e7;
  --c-creme-claro: #fff6e1;
  --c-areia: #fcecc4;
  --c-nevoa: #e3d7d0;
  --c-cafe: #33200f;
  --c-tinta: #1f2124;
  --c-borda: #d5d8dc;
  --c-terracota-tinta: rgb(130 48 3 / 0.13);
  --c-faq-resposta: rgb(99 97 92 / 0.61);

  /* fontes */
  --f-sans: "Neue Montreal", Helvetica, Arial, sans-serif;
  --f-serif: "Betani", Georgia, serif;
  --f-script: "French Armoire", cursive;
  --f-manuscrita: "Annie Use Your Telescope", cursive;
  --f-destaque: "Melodrame", Georgia, serif;
  --f-sistema: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;

  /* escala e espaçamentos */
  --u: min(calc(100vw / 390), 1.25px);
  --pad: calc(10 * var(--u));
  --container: calc(370 * var(--u));
  --raio-botao: 50px;

  /* animações */
  --dur-faixa-marca: 40s;
  --dur-faixa-frase: 28s;
  --dur-slide-esteira: 3s;
}

@media (min-width: 768px) {
  :root {
    --u: min(calc(100vw / 1440), 1px);
    --container: calc(1140 * var(--u));
  }
}

/* ---------- base ---------- */

*,
*::before,
*::after { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  overflow-x: hidden;
  background: var(--c-creme);
  color: var(--c-terracota);
  font-family: var(--f-sans);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, p, ul, ol, blockquote, figure { margin: 0; padding: 0; }
h1, h2, h3 { font-weight: 400; }
ul, ol { list-style: none; }
img, video { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
strong { font-weight: 700; }

.serif { font-family: var(--f-serif); }
.script { font-family: var(--f-script); }

/* utilitários de visibilidade por breakpoint */
@media (max-width: 767px) {
  .d { display: none !important; }
  .b-m { font-weight: 700; }
}
@media (min-width: 768px) {
  .m { display: none !important; }
  .b-d { font-weight: 700; }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* fundos fotográficos abaixo da dobra: o js/main.js libera quando a seção se aproxima da tela */
.js [data-fundo-tardio]:not(.fundo-ok) { background-image: none; }

/* sobreposição escura usada nos fundos fotográficos */
.com-veu { position: relative; isolation: isolate; }
.com-veu::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--veu, rgb(0 0 0 / 0.5));
}

/* ---------- botões ---------- */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(216 * var(--u));
  height: calc(52 * var(--u));
  padding: 0 calc(24 * var(--u));
  border: 3px solid var(--c-areia);
  border-radius: var(--raio-botao);
  background: var(--c-oliva-botao);
  color: var(--c-areia);
  font: 500 calc(21 * var(--u)) / calc(18 * var(--u)) var(--f-serif);
  text-align: center;
  text-decoration: none;
  transition: filter 0.3s ease, transform 0.3s ease;
}
.btn:hover,
.btn:focus-visible { filter: brightness(1.12); }
.btn:focus-visible { outline: 2px solid var(--c-areia); outline-offset: 3px; }

.btn--oliva {
  border-color: var(--c-oliva);
  background: var(--c-oliva);
  color: var(--c-creme);
}
.btn--final {
  width: calc(267 * var(--u));
  height: calc(58 * var(--u));
  background: var(--c-ferrugem);
  font-size: calc(20 * var(--u));
}

@media (min-width: 768px) {
  .btn {
    width: auto;
    height: auto;
    padding: calc(12 * var(--u)) calc(24 * var(--u));
    font-size: calc(36 * var(--u));
    line-height: 1;
  }
  .btn--hero { font-size: calc(45 * var(--u)); color: var(--c-creme); }
  .btn--bonus { width: calc(454 * var(--u)); font-size: calc(42 * var(--u)); }
}

/* entrada dos botões no mobile (equivalente ao slideInDown da página original) */
@keyframes desliza-de-cima {
  from { transform: translateY(-100%); opacity: 0; }
  to { transform: none; opacity: 1; }
}
@media (max-width: 767px) and (prefers-reduced-motion: no-preference) {
  .js .reveal { visibility: hidden; }
  .js .reveal.is-visible { visibility: visible; animation: desliza-de-cima 1.25s both; }
}

/* ---------- faixas animadas ---------- */

.faixa { overflow: hidden; }

.faixa--marca {
  display: flex;
  padding: calc(22 * var(--u)) 0;
  background: var(--c-cafe);
}
.faixa--marca .faixa__grupo {
  display: flex;
  flex-shrink: 0;
  justify-content: space-around;
  min-width: 100%;
  animation: rolar-grupo var(--dur-faixa-marca) linear infinite;
}
.faixa--marca span {
  padding: 0 calc(10 * var(--u));
  color: var(--c-creme);
  font: 400 calc(18 * var(--u)) / 1.2 var(--f-sans);
  letter-spacing: 1px;
  white-space: nowrap;
}
@keyframes rolar-grupo { to { transform: translateX(-100%); } }

.faixa--frase {
  padding: calc(12 * var(--u)) 0;
  background: var(--c-terracota);
  white-space: nowrap;
}
.faixa--frase .faixa__conteudo {
  display: inline-block;
  animation: rolar-metade var(--dur-faixa-frase) linear infinite;
}
.faixa--frase span {
  color: var(--c-creme-claro);
  font: 400 calc(20 * var(--u)) / 1.2 var(--f-serif);
}
@keyframes rolar-metade { to { transform: translateX(-50%); } }

@media (min-width: 768px) {
  .faixa--marca { padding: calc(26 * var(--u)) 0; }
  .faixa--marca span { padding: 0 calc(18 * var(--u)); font-size: calc(24 * var(--u)); }
  .faixa--frase { padding: calc(16 * var(--u)) 0; }
  .faixa--frase span { font-size: calc(26 * var(--u)); }
}

/* ==========================================================================
   Seções
   ========================================================================== */

/* ---------- hero ---------- */

.hero {
  position: relative;
  isolation: isolate;
  min-height: 100vh;
  overflow: hidden;
  background: #3b3b3b;
  color: var(--c-areia);
  text-align: center;
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgb(0 0 0 / 0.47);
}
.hero__video {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}
.hero__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: var(--container);
  margin: 0 auto;
}
.hero__logo {
  width: calc(170 * var(--u));
  margin-top: calc(30 * var(--u));
}
.hero__title {
  margin-top: calc(142 * var(--u));
  font: 400 calc(26 * var(--u)) / calc(32.5 * var(--u)) var(--f-serif);
}
.hero__sub {
  width: calc(290 * var(--u));
  margin-top: calc(20 * var(--u));
  font: 400 calc(17 * var(--u)) / calc(21 * var(--u)) var(--f-sans);
}
.hero .btn { margin-top: calc(28 * var(--u)); }

@media (min-width: 768px) {
  .hero {
    min-height: calc(916 * var(--u));
    color: var(--c-creme);
  }
  .hero__logo { width: calc(194 * var(--u)); }
  .hero__title {
    margin-top: calc(90 * var(--u));
    font-size: calc(63 * var(--u));
    line-height: calc(80 * var(--u));
  }
  .hero__sub {
    width: calc(1000 * var(--u));
    margin-top: calc(34 * var(--u));
    font-size: calc(28 * var(--u));
    line-height: calc(38 * var(--u));
  }
  .hero .btn { margin-top: calc(80 * var(--u)); }
}

/* ---------- você ---------- */

.voce {
  padding: calc(36 * var(--u)) var(--pad) calc(72 * var(--u));
  text-align: center;
}
.voce__titulo {
  position: relative;
  font: 400 calc(56 * var(--u)) / 1 var(--f-serif);
}
.voce__lista {
  margin-top: calc(12 * var(--u));
  font: 400 calc(16 * var(--u)) / calc(16 * var(--u)) var(--f-sans);
}
.voce__lista li:not(:last-child) { margin-bottom: calc(16 * var(--u)); }
.voce__lista li:not(:last-child)::after {
  content: "";
  display: block;
  width: calc(248 * var(--u));
  height: calc(16 * var(--u));
  margin: 0 auto;
  background: linear-gradient(currentColor, currentColor) 0 calc(13 * var(--u)) / 100% 1px no-repeat;
}
.voce__mas {
  margin-top: calc(53 * var(--u));
  font: 700 calc(22 * var(--u)) / calc(21 * var(--u)) var(--f-sans);
}
.voce__tempero {
  margin-top: calc(-8 * var(--u));
  font: 400 calc(89 * var(--u)) / 1 var(--f-script);
}
.voce__mostrar {
  margin-top: calc(11.5 * var(--u));
  font: 400 calc(21 * var(--u)) / calc(17 * var(--u)) var(--f-sans);
}
.voce .btn { margin-top: calc(27 * var(--u)); }

@media (min-width: 768px) {
  .voce {
    display: grid;
    grid-template-columns: calc(690 * var(--u)) calc(690 * var(--u));
    justify-content: center;
    column-gap: calc(20 * var(--u));
    align-items: start;
    padding: calc(20 * var(--u)) calc(20 * var(--u)) 0;
  }
  .voce__titulo {
    margin-top: calc(42.5 * var(--u));
    padding-right: calc(50 * var(--u));
    font-size: calc(181 * var(--u));
  }
  .voce__script {
    position: absolute;
    top: calc(22.5 * var(--u));
    left: 0;
    right: calc(60 * var(--u));
    color: var(--c-oliva);
    font: 400 calc(200 * var(--u)) / 1 var(--f-script);
    letter-spacing: calc(10 * var(--u));
  }
  .voce__lista {
    margin-top: calc(29.5 * var(--u));
    font-size: calc(32 * var(--u));
    line-height: calc(30 * var(--u));
    text-align: left;
  }
  .voce__lista li:not(:last-child) { margin-bottom: calc(30 * var(--u)); }
  .voce__lista li:not(:last-child)::after { display: none; }
  .voce__fecho { margin-right: calc(100 * var(--u)); }
  .voce__mas {
    margin-top: calc(66 * var(--u));
    font-size: calc(39 * var(--u));
    line-height: calc(32 * var(--u));
  }
  .voce__tempero {
    margin-top: calc(-18.5 * var(--u));
    font-size: calc(162 * var(--u));
  }
  .voce__mostrar {
    margin-top: calc(16 * var(--u));
    font-size: calc(35 * var(--u));
    line-height: calc(32 * var(--u));
  }
  .voce .btn { margin-top: calc(27 * var(--u)); }
  .voce__foto {
    width: 100%;
    height: calc(1195 * var(--u));
    margin: calc(70 * var(--u)) 0 calc(110 * var(--u));
    border-radius: 1px;
    object-fit: cover;
  }
}

/* ---------- como eu aplico ---------- */

.aplico {
  --veu: rgb(31 9 0 / 0.5);
  min-height: calc(217 * var(--u));
  padding: calc(91 * var(--u)) calc(30 * var(--u)) calc(46 * var(--u));
  background: var(--c-creme-claro) url("../assets/img/bg-como-aplico.webp") center top / cover no-repeat;
  color: var(--c-creme);
  scroll-margin-top: calc(20 * var(--u));
}
.aplico__titulo { font: 400 calc(24 * var(--u)) / calc(26.5 * var(--u)) var(--f-sans); }

@media (min-width: 768px) {
  .aplico {
    min-height: calc(491 * var(--u));
    padding: calc(142.5 * var(--u)) calc((100% - var(--container)) / 2) 0;
    background-position: 0 94%;
  }
  .aplico__titulo { font-size: calc(64 * var(--u)); line-height: calc(69 * var(--u)); }
}

/* ---------- repertório é o maior ativo ---------- */

.ativo {
  padding: calc(25.5 * var(--u)) var(--pad) calc(37 * var(--u));
  text-align: center;
}
.ativo__texto {
  color: var(--c-oliva);
  font: 400 calc(23 * var(--u)) / calc(28.5 * var(--u)) var(--f-serif);
}
.ativo__traducao {
  margin-top: calc(35 * var(--u));
  font: italic 400 calc(18 * var(--u)) / 1 var(--f-sans);
}
.ativo__borogodo {
  margin-top: calc(24 * var(--u));
  font: 400 calc(59 * var(--u)) / calc(50 * var(--u)) var(--f-script);
}
.ativo__borogodo .serif { margin-left: calc(-8 * var(--u)); font-size: calc(39 * var(--u)); }

@media (min-width: 768px) {
  .ativo { padding: calc(73 * var(--u)) 0 calc(67 * var(--u)); }
  .ativo__texto { font-size: calc(54 * var(--u)); line-height: calc(61 * var(--u)); }
  .ativo__traducao { margin-top: calc(75 * var(--u)); font-size: calc(59 * var(--u)); }
  .ativo__borogodo {
    margin-top: calc(33 * var(--u));
    font-size: calc(87 * var(--u));
    line-height: 1;
  }
  .ativo__borogodo .serif { margin-left: calc(-14 * var(--u)); font-size: calc(59 * var(--u)); }
}

/* ---------- sinapses ---------- */

.sinapses {
  padding: calc(13 * var(--u)) var(--pad) calc(25 * var(--u));
  background: var(--c-musgo);
  color: var(--c-creme);
  text-align: center;
}
.sinapses__intro {
  font: 400 calc(18 * var(--u)) / calc(19 * var(--u)) var(--f-sans);
  letter-spacing: 0.3px;
}
.sinapses__soma {
  margin-top: calc(18.5 * var(--u));
  font: 400 calc(23 * var(--u)) / calc(26 * var(--u)) var(--f-serif);
}
.sinapses__texto {
  margin-top: calc(27 * var(--u));
  font: 400 calc(16 * var(--u)) / calc(24 * var(--u)) var(--f-sans);
  text-align: justify;
}
.sinapses__texto p + p { margin-top: calc(14 * var(--u)); }

@media (min-width: 768px) {
  .sinapses { padding: calc(21.5 * var(--u)) 0 calc(33.5 * var(--u)); }
  .sinapses__intro { font-size: calc(47 * var(--u)); line-height: calc(46.5 * var(--u)); letter-spacing: normal; }
  .sinapses__soma { margin-top: calc(50.5 * var(--u)); font-size: calc(45 * var(--u)); line-height: calc(50 * var(--u)); }
  .sinapses__texto {
    margin-top: calc(35 * var(--u));
    font-size: calc(33 * var(--u));
    line-height: calc(37.6 * var(--u));
    text-align: center;
  }
  .sinapses__texto p + p { margin-top: calc(37.6 * var(--u)); }
}

/* ---------- dores / quer ser + interessante ---------- */

.dores {
  padding: calc(23 * var(--u)) var(--pad) calc(45 * var(--u));
  text-align: center;
}
.dores__intro {
  color: var(--c-oliva);
  font: 400 calc(29 * var(--u)) / 1 var(--f-serif);
}
.dores__lista {
  margin-top: calc(27 * var(--u));
  color: var(--c-creme);
  font: 400 calc(18 * var(--u)) / calc(18 * var(--u)) var(--f-sans);
}
.dores__lista li {
  padding: calc(1.5 * var(--u)) var(--pad) calc(18.5 * var(--u));
  background: var(--c-terracota);
}
@media (max-width: 767px) {
  .dores__lista li:nth-child(2) { padding: calc(7.5 * var(--u)) var(--pad) calc(15 * var(--u)); line-height: calc(20.5 * var(--u)); }
  .dores__lista li:nth-child(3) { padding: calc(8.5 * var(--u)) var(--pad) calc(14.5 * var(--u)); line-height: calc(22 * var(--u)); }
  .dores__lista li:nth-child(4) { padding: calc(2 * var(--u)) var(--pad) calc(9 * var(--u)); line-height: calc(21 * var(--u)); }
}
.dores__lista li:nth-child(even) { background: var(--c-oliva); }
.dores__lista li + li { margin-top: calc(20 * var(--u)); }

.dores__titulo {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: calc(27 * var(--u));
  color: var(--c-oliva);
}
.dores__titulo span { display: block; }
.dores__quer {
  margin-right: calc(60 * var(--u));
  font: 400 calc(30 * var(--u)) / 1 var(--f-sans);
}
.dores__ser { margin-top: calc(10 * var(--u)); font: 400 calc(59 * var(--u)) / 1 var(--f-serif); }
.dores__interessante { margin-top: calc(6 * var(--u)); font: 400 calc(20 * var(--u)) / 1 var(--f-serif); }
.dores__culta { margin-top: calc(6.5 * var(--u)); font: 400 calc(39 * var(--u)) / 1 var(--f-serif); }

@media (min-width: 768px) {
  .dores {
    display: grid;
    grid-template-columns: calc(327 * var(--u)) calc(687 * var(--u));
    justify-content: center;
    align-items: start;
    padding: calc(27 * var(--u)) 0 calc(30 * var(--u)) calc(120 * var(--u));
  }
  .dores__lista {
    margin-top: 0;
    font-size: calc(26 * var(--u));
    line-height: calc(28 * var(--u));
  }
  .dores__lista li {
    width: calc(373 * var(--u));
    padding: calc(10 * var(--u)) calc(10 * var(--u));
  }
  .dores__lista li:nth-child(2) { width: calc(369 * var(--u)); padding-bottom: calc(17 * var(--u)); }
  .dores__lista li:nth-child(3) { width: calc(369 * var(--u)); padding-bottom: calc(24 * var(--u)); }
  .dores__lista li:nth-child(4) { padding-bottom: calc(20 * var(--u)); }
  .dores__lista li + li { margin-top: calc(40 * var(--u)); }
  .dores__titulo { margin-top: calc(75.5 * var(--u)); }
  .dores__quer { font-size: calc(89 * var(--u)); }
  .dores__ser { margin-top: calc(32 * var(--u)); font-size: calc(175 * var(--u)); }
  .dores__interessante {
    margin-top: calc(-19.5 * var(--u));
    margin-right: calc(10 * var(--u));
    font-size: calc(67 * var(--u));
  }
  .dores__culta { margin-top: calc(8 * var(--u)); font-size: calc(105 * var(--u)); }
}

/* ---------- quem é a isabela ---------- */

.quem__capa {
  position: relative;
  min-height: calc(551 * var(--u));
  padding: calc(25 * var(--u)) var(--pad) 0;
  background: url("../assets/img/bg-quem-e-mobile.webp") 0 calc(-53 * var(--u)) / cover no-repeat;
  color: var(--c-creme-claro);
}
/* curva creme na base da foto (divisor da página original) */
.quem__capa::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: calc(39 * var(--u));
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='%23fff3e7' transform='rotate(180 500 50)' d='M1000 4.3V0H0v4.3C.9 23.1 126.7 99.2 500 100S1000 22.7 1000 4.3z'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat;
}
.quem__titulo span { display: block; }
.quem__a {
  margin-left: calc(150 * var(--u));
  font: 400 calc(23 * var(--u)) / 1 var(--f-sans);
  text-transform: lowercase;
}
.quem__isabela {
  width: calc(150 * var(--u));
  margin: calc(5 * var(--u)) 0 0 calc(120 * var(--u));
  font: 400 calc(41 * var(--u)) / 1 var(--f-serif);
  text-align: center;
  text-transform: lowercase;
  white-space: nowrap;
}
.quem__vicarpi {
  width: calc(175 * var(--u));
  margin: calc(-19 * var(--u)) 0 0 calc(140 * var(--u));
  font: 400 calc(83 * var(--u)) / 1 var(--f-script);
  text-align: center;
}

.quem__resumo {
  position: relative;
  z-index: 1;
  padding: 0 var(--pad);
  color: var(--c-oliva);
}
.quem__adjetivos { margin-top: calc(-8.5 * var(--u)); }
.quem__adjetivos span { display: block; }
.quem__criativa {
  margin-right: calc(10 * var(--u));
  font: 400 calc(47 * var(--u)) / 1 var(--f-serif);
  text-align: center;
}
.quem__inter { font: 400 calc(40 * var(--u)) / 1 var(--f-serif); text-align: center; }
.quem__interessada {
  margin: calc(-1 * var(--u)) 0 0 calc(55 * var(--u));
  font: 400 calc(46 * var(--u)) / 1 var(--f-serif);
}
.quem__porque {
  margin: calc(-2.5 * var(--u)) 0 0 calc(65 * var(--u));
  font: 400 calc(19 * var(--u)) / 1 var(--f-sans);
}

.quem__bio {
  padding: calc(58.5 * var(--u)) var(--pad) calc(25.5 * var(--u));
  color: var(--c-oliva);
  font: 400 calc(16 * var(--u)) / calc(24 * var(--u)) var(--f-sans);
  text-align: justify;
}
.quem__bio p + p { margin-top: calc(34 * var(--u)); }

@media (min-width: 768px) {
  .quem {
    min-height: calc(778 * var(--u));
    padding: calc(90 * var(--u)) 0 calc(23.5 * var(--u)) 50%;
    background: url("../assets/img/bg-quem-e-desktop.webp") left top / cover no-repeat;
  }
  /* no desktop, título e adjetivos fazem parte da arte de fundo */
  .quem__capa,
  .quem__resumo {
    position: absolute;
    width: 1px;
    height: 1px;
    min-height: 0;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }
  .quem__bio {
    max-width: calc(560 * var(--u));
    padding: 0;
    color: var(--c-nevoa);
    font-size: calc(27 * var(--u));
    line-height: calc(40.5 * var(--u));
    text-align: left;
  }
  .quem__bio p + p { margin-top: calc(34.5 * var(--u)); }
}

/* ---------- viciada em criar ---------- */

.viciada {
  padding: calc(33 * var(--u)) var(--pad) calc(22 * var(--u));
  background: var(--c-terracota);
  color: var(--c-areia);
  text-align: center;
}
.viciada__titulo span { display: block; }
.viciada__eu { margin-left: calc(40 * var(--u)); font: 400 calc(22 * var(--u)) / 1 var(--f-sans); }
.viciada__criar { margin-top: calc(-3.5 * var(--u)); font: 400 calc(40 * var(--u)) / 1 var(--f-serif); }
.viciada__eu2 { margin: calc(19.5 * var(--u)) 0 0 calc(80 * var(--u)); font: 400 calc(22 * var(--u)) / 1 var(--f-sans); }
.viciada__comunicar {
  margin-top: calc(3.5 * var(--u));
  font: 400 calc(42 * var(--u)) / calc(38 * var(--u)) var(--f-serif);
}
.viciada__texto {
  margin-top: calc(13 * var(--u));
  font: 400 calc(19 * var(--u)) / calc(23 * var(--u)) var(--f-sans);
}

@media (min-width: 768px) {
  .viciada {
    display: grid;
    grid-template-columns: calc(681 * var(--u)) calc(681 * var(--u));
    justify-content: center;
    column-gap: calc(19 * var(--u));
    align-items: start;
    min-height: calc(519 * var(--u));
    padding: calc(53.5 * var(--u)) 0 0;
    background: var(--c-terracota) url("../assets/img/bg-textura-terracota.webp") 0 0 / calc(1920 * var(--u)) auto no-repeat;
  }
  .viciada__eu { margin-left: calc(90 * var(--u)); font-size: calc(58 * var(--u)); }
  .viciada__criar { margin-top: calc(-1 * var(--u)); font-size: calc(69 * var(--u)); }
  .viciada__eu2 { margin: calc(2 * var(--u)) 0 0; font-size: calc(56 * var(--u)); }
  .viciada__comunicar {
    margin-top: calc(13 * var(--u));
    font-size: calc(84 * var(--u));
    line-height: calc(82 * var(--u));
  }
  .viciada__texto {
    margin: calc(83.5 * var(--u)) 0 0 calc(70 * var(--u));
    font-size: calc(47 * var(--u));
    line-height: calc(53 * var(--u));
    text-align: left;
  }
}

/* ---------- eu nunca me senti pertencente ---------- */

.pertencente {
  --veu: rgb(0 0 0 / 0.27);
  padding: calc(44 * var(--u)) var(--pad) calc(12 * var(--u));
  background: var(--c-creme-claro) url("../assets/img/bg-pertencente-mobile.webp") center top / cover no-repeat;
  color: var(--c-creme-claro);
  text-align: center;
}
.pertencente__titulo > * { display: block; }
.pertencente__senti { color: var(--c-creme); font: 400 calc(21 * var(--u)) / 1 var(--f-serif); }
.pertencente__realmente {
  margin-top: calc(1 * var(--u));
  font: 400 calc(45 * var(--u)) / 1 var(--f-serif);
}
.pertencente__script { margin-top: calc(-16 * var(--u)); font: 400 calc(72 * var(--u)) / 1 var(--f-script); }

@media (min-width: 768px) {
  .pertencente {
    --veu: rgb(0 0 0 / 0.5);
    padding: calc(102 * var(--u)) 0 calc(67 * var(--u));
    background-image: url("../assets/img/bg-pertencente.webp");
    background-position: left top;
  }
  .pertencente__senti { font-size: calc(88 * var(--u)); }
  .pertencente__realmente { margin-top: calc(10.5 * var(--u)); font-size: calc(136 * var(--u)); }
  .pertencente__script { margin-top: calc(-26.5 * var(--u)); font-size: calc(176 * var(--u)); }
}

/* ---------- múltiplos assuntos ---------- */

.multiplos {
  padding: calc(32.5 * var(--u)) var(--pad) calc(25.5 * var(--u));
}
.multiplos__texto {
  font: 400 calc(16 * var(--u)) / calc(24 * var(--u)) var(--f-sans);
  text-align: justify;
}
.multiplos__destaque {
  margin: calc(34.5 * var(--u)) 0 calc(19.5 * var(--u));
  padding: var(--pad) var(--pad) calc(24 * var(--u));
  background: var(--c-terracota-tinta);
  font: 400 calc(18 * var(--u)) / calc(27 * var(--u)) var(--f-serif);
  text-align: center;
}

@media (min-width: 768px) {
  .multiplos {
    width: var(--container);
    margin: 0 auto;
    padding: calc(79 * var(--u)) 0 calc(26 * var(--u));
  }
  .multiplos__texto {
    font-size: calc(31 * var(--u));
    line-height: calc(46.5 * var(--u));
    text-align: center;
  }
  .multiplos__destaque {
    margin: calc(35 * var(--u)) 0 calc(19 * var(--u));
    padding-bottom: calc(24.5 * var(--u));
    font-size: calc(53 * var(--u));
    line-height: calc(79.5 * var(--u));
  }
}

/* ---------- foi quando eu entendi ---------- */

.portas {
  padding: calc(28.5 * var(--u)) var(--pad) calc(43 * var(--u));
  background: var(--c-oliva) url("../assets/img/bg-textura-oliva-mobile.webp") center top / cover no-repeat;
  color: var(--c-nevoa);
  text-align: center;
}
.portas__intro { font: 700 calc(21 * var(--u)) / calc(20 * var(--u)) var(--f-sans); }
.portas__texto {
  margin-top: calc(11 * var(--u));
  font: 400 calc(24 * var(--u)) / calc(29.5 * var(--u)) var(--f-sans);
}

@media (min-width: 768px) {
  .portas {
    padding: calc(73 * var(--u)) calc((100% - var(--container)) / 2) calc(95 * var(--u));
    background: var(--c-oliva) url("../assets/img/bg-textura-oliva.webp") 0 0 / calc(1920 * var(--u)) auto no-repeat;
  }
  .portas__intro { font-size: calc(76 * var(--u)); line-height: calc(69 * var(--u)); }
  .portas__texto { margin-top: calc(27.5 * var(--u)); font-size: calc(58 * var(--u)); line-height: calc(62 * var(--u)); }
}

/* ---------- o meu repertório ---------- */

.repertorio {
  padding: calc(23 * var(--u)) var(--pad) calc(21 * var(--u));
  color: var(--c-oliva);
}
.repertorio__titulo {
  font: 400 calc(42 * var(--u)) / calc(38 * var(--u)) var(--f-serif);
  text-align: center;
}
.repertorio__lista { margin-top: calc(29.5 * var(--u)); }
.repertorio__lista li { position: relative; }
.repertorio__lista li + li { margin-top: calc(40 * var(--u)); }
.repertorio__lista img {
  width: calc(211 * var(--u));
  border-radius: calc(20 * var(--u));
}
.repertorio__lista li:nth-child(even) img { margin-left: auto; }
.repertorio__lista p {
  position: absolute;
  top: var(--topo);
  left: var(--esq);
  width: var(--larg, calc(110 * var(--u)));
  font: 400 calc(18 * var(--u)) / calc(21.6 * var(--u)) var(--f-sans);
}
.repertorio__lista li:nth-child(1) p { --topo: calc(32 * var(--u)); --esq: calc(260 * var(--u)); }
.repertorio__lista li:nth-child(2) p { --topo: calc(83 * var(--u)); --esq: calc(20 * var(--u)); --larg: calc(90 * var(--u)); }
.repertorio__lista li:nth-child(3) p { --topo: calc(43 * var(--u)); --esq: calc(260 * var(--u)); }
.repertorio__lista li:nth-child(4) p { --topo: calc(82 * var(--u)); --esq: 0; }
.repertorio__lista li:nth-child(5) p { --topo: calc(70 * var(--u)); --esq: calc(260 * var(--u)); }
.repertorio__lista li:nth-child(6) p { --topo: calc(83 * var(--u)); --esq: 0; --larg: calc(120 * var(--u)); }
.repertorio__lista li:nth-child(7) p { --topo: calc(53 * var(--u)); --esq: calc(250 * var(--u)); --larg: calc(120 * var(--u)); }
.repertorio__lista li:is(:nth-child(1), :nth-child(2), :nth-child(4)) p {
  font-size: calc(17 * var(--u));
  line-height: calc(20.4 * var(--u));
}

@media (min-width: 768px) {
  .repertorio {
    width: var(--container);
    margin: 0 auto;
    padding: calc(10 * var(--u)) 0;
  }
  /* no desktop o título e a lista estão desenhados nas colagens */
  .repertorio__titulo,
  .repertorio__lista {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }
  .repertorio__lista img { display: none; }
  .repertorio__colagem img { width: 100%; }
  .repertorio__colagem img:nth-child(2) { margin-top: calc(-60 * var(--u)); }
  .repertorio__colagem img:nth-child(3) { margin-top: calc(-10 * var(--u)); }
}

/* ---------- e as pessoas não me deixam mentir ---------- */

.pessoas {
  min-height: calc(536 * var(--u));
  padding: calc(28 * var(--u)) var(--pad) 0;
  background: var(--c-creme) url("../assets/img/bg-pessoas-mobile.webp") 0 calc(-48 * var(--u)) / cover no-repeat;
  color: var(--c-creme-claro);
}
.pessoas__titulo span { display: block; }
.pessoas__e { margin-left: calc(70 * var(--u)); font: 400 calc(30 * var(--u)) / 1 var(--f-serif); }
.pessoas__nao {
  margin-top: calc(-1 * var(--u));
  font: 400 calc(37 * var(--u)) / 1 var(--f-serif);
  text-align: center;
}
.pessoas__mentir {
  margin: calc(-11.5 * var(--u)) 0 0 calc(-50 * var(--u));
  font: 400 calc(81 * var(--u)) / 1 var(--f-script);
  text-align: center;
}

@media (min-width: 768px) {
  .pessoas {
    min-height: calc(685 * var(--u));
    padding: calc(218.5 * var(--u)) 0 0 calc((100% - 1077 * var(--u)) / 2 + 10 * var(--u));
    background: var(--c-creme) url("../assets/img/bg-pessoas.webp") 0 calc(-50 * var(--u)) / cover no-repeat;
  }
  .pessoas__e { margin-left: 0; font-size: calc(78 * var(--u)); letter-spacing: 0.8px; }
  .pessoas__nao { margin-top: calc(10.5 * var(--u)); font-size: calc(76 * var(--u)); text-align: left; }
  .pessoas__mentir { margin: calc(-18 * var(--u)) 0 0; font-size: calc(200 * var(--u)); text-align: left; }
}

/* ---------- feedbacks ---------- */

.feedbacks { display: flow-root; padding: 0 var(--pad) calc(16 * var(--u)); }
.feedbacks__titulo {
  position: relative;
  margin-top: calc(-64 * var(--u));
  color: var(--c-creme-claro);
  font: 400 calc(66 * var(--u)) / 1 var(--f-serif);
  letter-spacing: -2.5px;
  text-align: center;
}
.feedbacks .slider + .slider { margin-top: calc(26 * var(--u)); }

@media (min-width: 768px) {
  .feedbacks {
    width: var(--container);
    margin: 0 auto;
    padding: calc(41 * var(--u)) 0 calc(16 * var(--u));
  }
  .feedbacks__titulo {
    margin-top: 0;
    color: var(--c-terracota);
    font-size: calc(125 * var(--u));
    letter-spacing: normal;
  }
}

/* depoimentos em destaque: o mesmo cartão da leveza criativa, na identidade da isa
   (neue montreal em títulos e textos, uma palavra em melodrame, marca-texto amarelo e risco à mão em terracota) */
.destaques {
  --id-terracota: #833102;
  --id-amarelo: #f1e761;
  --id-texto: #392315;
  --id-texto-2: #735a4a;
  display: grid;
  gap: calc(16 * var(--u));
  margin-top: calc(47 * var(--u));
}
.destaque-card {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--u));
  padding: calc(18 * var(--u));
  background: #f6e6dc;
  box-shadow: 0 0 0 1px rgb(131 49 2 / 0.12), 0 10px 22px rgb(131 49 2 / 0.1);
}
.destaque-card img {
  width: 100%;
  height: auto;
  aspect-ratio: 700 / 260;
  object-fit: contain;
  background: #fff;
  border-radius: 14px;
}
.destaque-card--perfil-alto img { aspect-ratio: 700 / 470; }
.destaque-card__frase {
  margin: 0;
  color: var(--id-texto);
  font: 400 calc(26 * var(--u)) / 1.15 var(--f-sans);
  letter-spacing: -0.02em;
}
.destaque-card__frase em {
  font: 400 1.3em / 0.9 var(--f-destaque);
  letter-spacing: 0;
  color: var(--id-terracota);
}
.destaque-card footer { display: flex; flex-direction: column; font: 400 calc(15 * var(--u)) / 1.4 var(--f-sans); color: var(--id-texto-2); }
.destaque-card footer b { font: 700 calc(24 * var(--u)) / 1.15 var(--f-sans); letter-spacing: -0.02em; color: var(--id-terracota); }

.depo {
  margin: 0;
  color: var(--id-texto);
  font: 400 calc(16 * var(--u)) / 1.6 var(--f-sans);
  transition: max-height 0.6s ease;
}
.depo p { margin: 0 0 12px; }
.depo p:last-child { margin-bottom: 0; }
/* negrito com faixa amarela embaixo */
.depo b {
  padding-inline: 0.04em;
  background: linear-gradient(transparent 58%, var(--id-amarelo) 58%, var(--id-amarelo) 94%, transparent 94%);
  font-weight: 700;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
/* marca-texto: caixa amarela inteira atrás do trecho */
.depo mark {
  padding-inline: 0.1em;
  background: linear-gradient(transparent 6%, var(--id-amarelo) 6%, var(--id-amarelo) 94%, transparent 94%);
  color: var(--id-texto);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
/* risco à mão em terracota por baixo */
.risca-mao { position: relative; display: inline-block; color: var(--id-terracota); font-weight: 700; }
.risca-mao svg { position: absolute; left: -2%; bottom: -0.18em; width: 104%; height: 0.3em; overflow: visible; pointer-events: none; }
.risca-mao path { fill: none; stroke: var(--id-terracota); stroke-width: 2.5; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.js .depo.fechado {
  max-height: 8.2em;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(#000 45%, transparent);
  mask-image: linear-gradient(#000 45%, transparent);
}
.depo-mais {
  align-self: flex-start;
  margin-top: -6px;
  padding: 0 0 2px;
  border: 0;
  border-bottom: 1.5px solid currentColor;
  background: none;
  color: var(--id-terracota);
  font: 700 calc(15 * var(--u)) var(--f-sans);
  cursor: pointer;
}
.depo-mais:hover { color: var(--id-texto); }

@media (min-width: 768px) {
  .destaques {
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: calc(22 * var(--u));
    margin: calc(40 * var(--u)) 0;
  }
  .destaque-card { padding: calc(22 * var(--u)); }
  .destaque-card__frase { font-size: calc(32 * var(--u)); }
  .depo { font-size: calc(17 * var(--u)); }
}

/* ---------- resultados ---------- */

/* título claro e carrossel em marrom (cor escura da identidade): não se confunde com a faixa terracota
   dos feedbacks em cima nem com a oferta oliva embaixo */
.resultados__titulo {
  padding: calc(26 * var(--u)) var(--pad) calc(20 * var(--u));
  background: var(--c-creme);
  color: var(--c-terracota);
  font: 400 calc(31 * var(--u)) / calc(31 * var(--u)) var(--f-serif);
  text-align: center;
}
.resultados .slider {
  margin: 0;
  padding: calc(20 * var(--u)) calc(44 * var(--u)) calc(24 * var(--u));
  background: linear-gradient(rgb(57 35 21 / 0.84), rgb(57 35 21 / 0.84)), url("../assets/img/bg-textura-terracota.webp") center / cover no-repeat, #392315;
}

@media (min-width: 768px) {
  .resultados__titulo {
    padding: calc(10 * var(--u)) 0 calc(24 * var(--u));
    font-size: calc(56 * var(--u));
    line-height: calc(84 * var(--u));
  }
}

/* ---------- esteiras contínuas (desktop) ---------- */

.esteira {
  overflow: hidden;
  padding: calc(10 * var(--u));
}
.esteira__trilho {
  display: flex;
  width: max-content;
  animation: rolar-metade calc(var(--slides, 15) * var(--dur-slide-esteira)) linear infinite;
}
.esteira__trilho img { width: calc(284 * var(--u)); flex-shrink: 0; align-self: flex-start; }
.esteira--feedbacks {
  height: calc(452 * var(--u));
  background: var(--c-terracota) url("../assets/img/bg-textura-terracota.webp") 0 0 / calc(1920 * var(--u)) auto no-repeat;
}
.esteira--resultados {
  --slides: 14;
  height: calc(470 * var(--u));
  background: linear-gradient(rgb(57 35 21 / 0.84), rgb(57 35 21 / 0.84)), url("../assets/img/bg-textura-terracota.webp") 0 0 / calc(1920 * var(--u)) auto no-repeat, #392315;
}

/* ---------- sliders com setas (mobile) ---------- */

.slider { position: relative; }
.slider__trilho {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
}
.slider__trilho::-webkit-scrollbar { display: none; }
.slider__trilho > img {
  flex: 0 0 100%;
  width: 100%;
  scroll-snap-align: start;
  align-self: flex-start;
}
.slider__seta {
  position: absolute;
  top: 50%;
  z-index: 1;
  display: grid;
  place-items: center;
  width: calc(32 * var(--u));
  height: calc(48 * var(--u));
  padding: 0;
  border: 0;
  background: none;
  color: rgb(238 238 238 / 0.9);
  cursor: pointer;
  transform: translateY(-50%);
}
.slider__seta svg {
  width: calc(22 * var(--u));
  height: calc(22 * var(--u));
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.slider__seta--ant { left: 0; }
.slider__seta--prox { right: 0; }

/* ---------- entregáveis ---------- */

.entregaveis { color: var(--c-oliva); }
.entrega__img { position: relative; width: 100%; }
.entrega__intro,
.entrega__texto { position: relative; z-index: 1; }

.entrega__titulo {
  font: 700 calc(32 * var(--u)) / 1.5 var(--f-serif);
  scroll-margin-top: calc(20 * var(--u));
}
.entrega__acesso { margin-top: calc(12.5 * var(--u)); font: 700 calc(25 * var(--u)) / 1 var(--f-sans); }
.entrega__produto { margin-top: calc(4 * var(--u)); font: 400 calc(24 * var(--u)) / 1.5 var(--f-sans); }
.entrega__xodo { margin-top: calc(-10 * var(--u)); font: 400 calc(45 * var(--u)) / 1.4 var(--f-manuscrita); }
.entrega__descricao { margin-top: calc(9 * var(--u)); font: 400 calc(18 * var(--u)) / calc(21.6 * var(--u)) var(--f-sans); }
.entrega__guia { font: 400 calc(37 * var(--u)) / calc(40 * var(--u)) var(--f-serif); }
.entrega__texto p { font: 400 calc(20 * var(--u)) / calc(22 * var(--u)) var(--f-sans); }
.entrega__texto p + p { margin-top: calc(15 * var(--u)); }

/* mobile: os blocos se dissolvem numa coluna única e a ordem vem de "order",
   reproduzindo a sequência texto/imagem da versão mobile original */
@media (max-width: 767px) {
  .entregaveis {
    display: flex;
    flex-direction: column;
    padding: calc(16 * var(--u)) var(--pad) 0;
    text-align: center;
  }
  .entrega { display: contents; }
  /* "o que você recebe": bloco de verdade (não "contents") pra poder ter a foto de fundo, de ponta a ponta */
  .entrega--recebe {
    display: flex;
    order: 1;
    align-items: center;
    justify-content: center;
    min-height: calc(330 * var(--u));
    margin: calc(-16 * var(--u)) calc(-1 * var(--pad)) 0;
    padding: 0 var(--pad);
  }
  .entrega--aulas .entrega__guia { order: 2; margin-top: calc(64 * var(--u)); }
  .entrega--aulas .entrega__texto { order: 4; margin-top: calc(22 * var(--u)); text-align: justify; }
  .entrega--aulas .entrega__img { order: 5; margin-top: calc(36 * var(--u)); }
  .entrega--listas .entrega__texto { order: 6; margin-top: calc(44 * var(--u)); }
  .entrega--listas .entrega__img { order: 7; margin-top: calc(-56 * var(--u)); }
  .entrega--comunidade .entrega__texto { order: 8; margin: calc(-50 * var(--u)) 0 0; }
  .entrega__leveza { order: 9; margin-top: calc(48 * var(--u)); }
  .entrega--leveza .entrega__img { order: 10; margin: calc(10 * var(--u)) 0 calc(40 * var(--u)); }
}

@media (min-width: 768px) {
  .entrega {
    display: grid;
    grid-template-columns: calc(570 * var(--u)) calc(570 * var(--u));
    justify-content: center;
    align-items: start;
  }
  .entrega__texto p { font-size: calc(29 * var(--u)); line-height: calc(43.5 * var(--u)); }
  .entrega__texto p + p { margin-top: calc(14.5 * var(--u)); }

  /* o que você recebe */
  .entrega--recebe {
    grid-template-columns: calc(593 * var(--u)) calc(593 * var(--u));
    min-height: calc(470 * var(--u));
    align-items: center;
  }
  .entrega__intro { grid-area: 1 / 2; align-self: center; padding: 0 0 0 calc(10 * var(--u)); }
  .entrega__titulo { font-size: calc(68 * var(--u)); }
  .entrega__acesso { margin-top: calc(34 * var(--u)); font-size: calc(53 * var(--u)); line-height: 1.5; }
  .entrega__produto { margin-top: calc(-25.5 * var(--u)); font-size: calc(45 * var(--u)); }
  .entrega__xodo { margin-top: calc(-25.5 * var(--u)); font-size: calc(87 * var(--u)); line-height: 1.5; }
  .entrega__descricao { margin-top: calc(-15.5 * var(--u)); font-size: calc(29 * var(--u)); line-height: calc(43.5 * var(--u)); }

  /* guia de aulas */
  .entrega--aulas { grid-template-rows: auto 1fr; padding: calc(70 * var(--u)) 0 calc(20 * var(--u)); }
  .entrega__guia {
    grid-area: 1 / 1;
    margin: calc(20 * var(--u)) calc(10 * var(--u)) 0;
    font-size: calc(94 * var(--u));
    line-height: calc(98 * var(--u));
    text-align: center;
  }
  .entrega--aulas .entrega__texto { grid-area: 2 / 1; margin: calc(34 * var(--u)) calc(10 * var(--u)) 0; }
  .entrega--aulas .entrega__texto p { line-height: calc(36 * var(--u)); }
  .entrega--aulas .entrega__texto p + p { margin-top: calc(36 * var(--u)); }
  .entrega--aulas .entrega__img {
    grid-area: 1 / 2 / span 2;
    align-self: center;
    width: calc(560 * var(--u));
    margin: calc(20 * var(--u)) 0 0 calc(10 * var(--u));
  }

  /* listas: imagem da booklist/filmlist à esquerda, texto à direita (como era) */
  .entrega--listas { min-height: calc(678 * var(--u)); }
  .entrega--listas .entrega__img {
    grid-area: 1 / 1;
    width: calc(590 * var(--u));
    max-width: none;
    margin: calc(-80 * var(--u)) 0 0 calc(-10 * var(--u));
  }
  .entrega--listas .entrega__texto { grid-area: 1 / 2; margin: calc(20 * var(--u)) calc(10 * var(--u)) 0; }

  /* leveza criativa na íntegra: texto à esquerda, mockup à direita */
  .entrega--leveza { align-items: center; padding-bottom: calc(60 * var(--u)); }
  .entrega__leveza { grid-area: 1 / 1; padding: 0 calc(10 * var(--u)); }
  .entrega--leveza .entrega__img { grid-area: 1 / 2; width: calc(560 * var(--u)); margin-left: calc(10 * var(--u)); }

  /* comunidade: só texto, os dois itens lado a lado */
  .entrega--comunidade { display: block; width: var(--container); margin: 0 auto; padding: 0 0 calc(90 * var(--u)); }
  .entrega--comunidade .entrega__texto {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: calc(60 * var(--u));
    margin: 0 calc(10 * var(--u));
  }
  .entrega--comunidade .entrega__texto p + p { margin-top: 0; }
}

/* "o que você recebe": a foto que era do bônus vira o fundo, com véu escuro; título claro à direita */
/* enquadrada do topo (o rosto fica no alto da foto); a leitora fica à direita, o título à esquerda */
/* a foto é enquadrada de cima pra baixo: começa no topo da imagem (a cabeça já vem cortada no arquivo) */
.entrega--recebe {
  --veu: rgb(3 1 0 / 0.42);
  background: var(--c-cafe) url("../assets/img/bg-bonus.webp") center top / cover no-repeat;
}
/* título no mesmo desenho de "e as pessoas não me deixam mentir…": serifada + manuscrita grande */
.entrega--recebe .entrega__titulo { color: var(--c-creme-claro); line-height: 1; }
.recebe__o, .recebe__script { display: block; }
.recebe__o { font: 400 calc(40 * var(--u)) / 1 var(--f-serif); }
.recebe__script { margin-top: calc(-6 * var(--u)); font: 400 calc(96 * var(--u)) / 1 var(--f-script); }
@media (min-width: 768px) {
  .entrega--recebe { --veu: linear-gradient(90deg, rgb(3 1 0 / 0.68), rgb(3 1 0 / 0.12) 70%); }
  .entrega--recebe::before { background: var(--veu); }
  .entrega--recebe .entrega__intro { grid-area: 1 / 1; padding: 0 0 0 calc(10 * var(--u)); }
  .recebe__o { font-size: calc(84 * var(--u)); }
  .recebe__script { margin: calc(-22 * var(--u)) 0 0 calc(60 * var(--u)); font-size: calc(210 * var(--u)); }
}

/* ---------- mockups feitos em código: macbook (vídeo da área de membros) e iphone (grupo da comunidade) ---------- */

/* as medidas internas usam cqw (porcentagem da largura do conjunto): o desenho escala inteiro em qualquer tela */
.aparelhos {
  container-type: inline-size;
  position: relative;
  max-width: 100%;
  /* espaço embaixo pro iphone, que desce além da base do macbook */
  padding-bottom: 7cqw;
  text-align: left;
}
.macbook { position: relative; width: 82cqw; filter: drop-shadow(0 2.4cqw 3.4cqw rgb(57 35 21 / 0.28)); }
.macbook__tampa {
  position: relative;
  padding: 1.7cqw 1.7cqw 2.3cqw;
  border-radius: 3cqw 3cqw 0.6cqw 0.6cqw;
  background: #0e0e0f;
  box-shadow: 0 0 0 0.35cqw #b8bbc1, inset 0 0 0 0.25cqw #2a2a2c;
}
.macbook__tela {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 0.8cqw;
  background: #0b0b0b;
}
/* entalhe da câmera */
.macbook__tela::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  width: 9cqw;
  height: 1.4cqw;
  border-radius: 0 0 0.8cqw 0.8cqw;
  background: #0e0e0f;
  translate: -50% 0;
}
/* o vídeo (1400×720) cabe inteiro na tela 16:9; a faixa fina que sobra é do mesmo escuro da plataforma */
.macbook__video { display: block; width: 100%; height: 100%; object-fit: contain; }
.macbook__base {
  position: relative;
  width: 112%;
  height: 2.6cqw;
  margin-left: -6%;
  border-radius: 0.3cqw 0.3cqw 2.4cqw 2.4cqw / 0.3cqw 0.3cqw 2.6cqw 2.6cqw;
  background: linear-gradient(#e9ebee 0 18%, #c4c7cc 55%, #8f9399);
}
/* rebaixo pra abrir a tampa */
.macbook__base::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 14cqw;
  height: 0.9cqw;
  border-radius: 0 0 1cqw 1cqw;
  background: linear-gradient(#a8acb2, #c9ccd1);
  translate: -50% 0;
}
.iphone {
  position: absolute;
  right: 0;
  bottom: 0;   /* encostado no fim do conjunto: 7cqw abaixo da base do macbook */
  z-index: 2;
  width: 23cqw;
  aspect-ratio: 9 / 19.4;
  padding: 1cqw;
  border-radius: 3.8cqw;
  background: #161618;
  box-shadow: 0 0 0 0.45cqw #7d8086, 0 0 0 0.6cqw #4b4d52, 0 3cqw 5cqw rgb(57 35 21 / 0.35);
}
.iphone__tela {
  position: relative;
  height: 100%;
  overflow: hidden;
  border-radius: 2.9cqw;
  background: #fff;
}
/* ilha dinâmica */
.iphone__tela::before {
  content: "";
  position: absolute;
  top: 1.1cqw;
  left: 50%;
  z-index: 1;
  width: 6.6cqw;
  height: 1.9cqw;
  border-radius: 1cqw;
  background: #000;
  translate: -50% 0;
}
.iphone__tela img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
/* ---------- bônus ---------- */

.bonus {
  --veu: rgb(3 1 0 / 0.46);
  position: relative;
  padding: calc(30 * var(--u)) var(--pad) var(--pad);
  background: var(--c-cafe) url("../assets/img/bg-bonus.webp") 0 100% / cover no-repeat;
  color: var(--c-nevoa);
  text-align: center;
}
.bonus__titulo {
  font: 400 calc(43 * var(--u)) / 1.5 var(--f-serif);
  text-transform: lowercase;
}
.bonus p { font: 400 calc(22 * var(--u)) / calc(26.4 * var(--u)) var(--f-sans); }
.bonus__titulo + p { margin-top: calc(14.5 * var(--u)); }
.bonus p + p { margin-top: calc(15 * var(--u)); }
.bonus .btn { margin-top: calc(34 * var(--u)); }

@media (min-width: 768px) {
  .bonus {
    --veu: rgb(3 1 0 / 0.5);
    min-height: calc(577 * var(--u));
    padding: calc(10 * var(--u)) calc((100% - var(--container)) / 2) calc(55 * var(--u));
    background-position: 0 0;
    background-size: calc(1707 * var(--u)) auto;
  }
  .bonus__titulo { font-size: calc(70 * var(--u)); }
  .bonus p { font-size: calc(42 * var(--u)); line-height: calc(63 * var(--u)); }
  .bonus__titulo + p { margin-top: calc(35 * var(--u)); }
  .bonus p + p { margin-top: calc(14 * var(--u)); }
}

/* ---------- o nível da parada ---------- */

.nivel {
  padding: calc(48 * var(--u)) var(--pad) calc(35 * var(--u));
  text-align: center;
}
.nivel__intro { font: 400 calc(23 * var(--u)) / calc(24 * var(--u)) var(--f-sans); }
.nivel__titulo {
  margin-top: calc(6.5 * var(--u));
  font: 400 calc(33 * var(--u)) / 1.5 var(--f-serif);
  text-transform: lowercase;
}
.nivel__intro--2 {
  margin-top: calc(-4.5 * var(--u));
  font-size: calc(20 * var(--u));
  line-height: calc(21 * var(--u));
}
.nivel__aulas {
  margin-top: calc(49 * var(--u));
  font: 400 calc(20 * var(--u)) / calc(20.5 * var(--u)) var(--f-sans);
}
.nivel__aulas li + li { margin-top: calc(51.5 * var(--u)); }
/* no mobile original cada aula tem entrelinha própria; distância fixa de 72px entre aulas */
@media (max-width: 767px) {
  .nivel__aulas li:nth-child(2) { margin-top: calc(49.5 * var(--u)); line-height: calc(24.5 * var(--u)); }
  .nivel__aulas li:nth-child(3) { margin-top: calc(49.5 * var(--u)); }
  .nivel__aulas li:nth-child(5) { margin-top: calc(50.5 * var(--u)); line-height: calc(22.5 * var(--u)); }
  .nivel__aulas li:nth-child(6) { margin-top: calc(49.5 * var(--u)); line-height: calc(22.5 * var(--u)); }
}

@media (min-width: 768px) {
  .nivel { padding: calc(72.5 * var(--u)) 0 calc(81 * var(--u)); }
  .nivel__intro { font-size: calc(45 * var(--u)); line-height: calc(45 * var(--u)); }
  .nivel__titulo { margin-top: calc(6.5 * var(--u)); font-size: calc(87 * var(--u)); }
  .nivel__intro--2 { margin-top: calc(-3 * var(--u)); }
  .nivel__aulas {
    margin-top: calc(77.5 * var(--u));
    font-size: calc(35 * var(--u));
    line-height: calc(40 * var(--u));
  }
  .nivel__aulas li + li { margin-top: calc(23 * var(--u)); }
}

/* ---------- investimento, dúvidas e rodapé ---------- */

.fecho {
  background: var(--c-cafe) url("../assets/img/bg-investimento-mobile.webp") center top / cover no-repeat;
  color: var(--c-nevoa);
  text-align: center;
}
.investimento {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: calc(10 * var(--u)) var(--pad) 0;
}
.investimento__titulo { font: 400 calc(66 * var(--u)) / 1.5 var(--f-script); }
.investimento__parcela { font: 700 calc(33 * var(--u)) / 1 var(--f-sans); }
.investimento__vista { margin-top: calc(1.5 * var(--u)); font: 400 calc(22 * var(--u)) / 1.5 var(--f-sans); }
.investimento .btn--compra { margin-top: calc(34.5 * var(--u)); }

/* perguntas frequentes, na identidade da isa: cartões off-white, neue montreal, número em melodrame,
   botão terracota com "+" que gira e vira "×" ao abrir */
.faq__titulo {
  margin-top: calc(48 * var(--u));
  color: #fff4ed;
  font: 400 calc(28 * var(--u)) / 1.15 var(--f-sans);
  letter-spacing: -0.02em;
}
.faq__titulo em { color: #f1e761; font: 400 1.3em / 1 var(--f-destaque); letter-spacing: 0; }

.faq {
  display: grid;
  gap: calc(10 * var(--u));
  width: 100%;
  max-width: 860px;
  margin-top: calc(28 * var(--u));
  text-align: left;
}
.faq details {
  border-radius: 18px;
  background: #fff4ed;
  color: #833102;
  box-shadow: 0 10px 24px rgb(0 0 0 / 0.18);
  transition: background 0.3s ease;
}
.faq summary {
  display: flex;
  align-items: center;
  gap: calc(12 * var(--u));
  padding: calc(16 * var(--u)) calc(16 * var(--u)) calc(16 * var(--u)) calc(18 * var(--u));
  font: 700 calc(16 * var(--u)) / 1.3 var(--f-sans);
  letter-spacing: -0.01em;
  list-style: none;
  cursor: pointer;
}
.faq summary::-webkit-details-marker { display: none; }
.faq__n { flex: none; min-width: 1.6em; color: #833102; font: 400 1.5em / 1 var(--f-destaque); opacity: 0.55; transition: opacity 0.3s ease; }
.faq__pergunta { flex: 1; }
.faq__icone {
  position: relative;
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #833102;
  transition: rotate 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.3s ease;
}
.faq__icone::before,
.faq__icone::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  border-radius: 1px;
  background: #fff4ed;
  translate: -50% -50%;
}
.faq__icone::after { rotate: 90deg; }
.faq details[open] .faq__icone { rotate: 45deg; background: #665f29; }
.faq details[open] .faq__n { opacity: 1; }
.faq summary:hover .faq__icone { background: #665f29; }
.faq summary:focus-visible { outline: 2px dashed #f1e761; outline-offset: 3px; border-radius: 18px; }
.faq__resposta {
  padding: 0 calc(18 * var(--u)) calc(20 * var(--u));
  color: rgb(131 49 2 / 0.82);
  font: 400 max(15px, calc(16 * var(--u))) / 1.6 var(--f-sans);
}

/* abertura suave onde o navegador suporta */
@supports (interpolate-size: allow-keywords) {
  .faq { interpolate-size: allow-keywords; }
  .faq details::details-content {
    height: 0;
    overflow: clip;
    transition: height 0.4s ease, content-visibility 0.4s allow-discrete;
  }
  .faq details[open]::details-content { height: auto; }
}

.btn--final { margin-top: calc(19 * var(--u)); }

.rodape { padding: calc(20 * var(--u)) var(--pad) calc(25 * var(--u)); }
.rodape__logo { width: calc(137 * var(--u)); margin: 0 auto; }
.rodape p { margin-top: calc(19.5 * var(--u)); font: 400 calc(11 * var(--u)) / 1.5 var(--f-sans); }

@media (min-width: 768px) {
  .fecho { background-image: url("../assets/img/bg-investimento.webp"); background-position: left top; }
  .investimento {
    width: calc(1043 * var(--u));
    margin: 0 auto;
    padding: calc(10.5 * var(--u)) 0 0;
  }
  .investimento__titulo { font-size: calc(137 * var(--u)); }
  .investimento__parcela { margin-top: calc(-37 * var(--u)); font-size: calc(83 * var(--u)); line-height: 1.5; }
  .investimento__vista { margin-top: calc(-15.5 * var(--u)); font-size: calc(44 * var(--u)); }
  .investimento .btn--compra { margin-top: calc(35 * var(--u)); }
  .faq__titulo { margin-top: calc(80 * var(--u)); font-size: calc(48 * var(--u)); }
  .faq { gap: calc(12 * var(--u)); margin-top: calc(40 * var(--u)); }
  .faq summary { padding: 20px 22px 20px 26px; font-size: 19px; gap: 16px; }
  .faq__resposta { padding: 0 26px 26px calc(26px + 1.6em * 1.5 + 16px); font-size: 17px; }
  .btn--final { margin-top: calc(20 * var(--u)); }
  .rodape { padding: calc(20 * var(--u)) 0 calc(24 * var(--u)); }
  .rodape__logo { width: calc(282 * var(--u)); }
  .rodape p { margin-top: calc(20.5 * var(--u)); font-size: max(11px, calc(16 * var(--u))); }
}

/* ---------- mural de prints (segunda dobra de depoimentos, mesmo padrão da leveza criativa) ---------- */

.mural { padding: calc(10 * var(--u)) var(--pad) calc(40 * var(--u)); }
.mural__prints { columns: 3 260px; column-gap: 20px; }
.print-card {
  display: block;
  width: 100%;
  margin: 0 0 20px;
  padding: 8px;
  border: 0;
  border-radius: 18px;
  background: #fff4ed;
  box-shadow: 0 0 0 1px rgb(131 49 2 / 0.12), 0 10px 22px rgb(131 49 2 / 0.1);
  cursor: zoom-in;
  break-inside: avoid;
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.print-card img { width: 100%; border-radius: 12px; }
.print-card:hover { transform: translateY(-6px) rotate(-0.6deg); box-shadow: 0 0 0 1px rgb(131 49 2 / 0.12), 0 22px 40px rgb(57 35 21 / 0.16); }
.print-card:focus-visible { outline: 2px dashed #833102; outline-offset: 3px; }
@media (max-width: 600px) {
  .mural__prints { columns: 2; column-gap: 12px; }
  .print-card { margin-bottom: 12px; padding: 5px; }
}
@media (min-width: 768px) {
  .mural { width: var(--container); margin: 0 auto; padding: 0 0 calc(60 * var(--u)); }
}

/* mural de feedbacks (logo acima do carrossel): os quatro prints lado a lado no computador */
.mural--feedbacks { padding-top: calc(24 * var(--u)); }
.mural--feedbacks .slider { margin-top: calc(26 * var(--u)); }
/* celular: 03 e 04 empilhados à esquerda, o 06 (alto) à direita, o 05 largo embaixo */
@media (max-width: 767px) {
  .mural--feedbacks .mural__prints { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; align-items: start; columns: auto; }
  .mural--feedbacks .print-card { margin: 0; }
  .mural--feedbacks .print-card:nth-child(1) { grid-area: 1 / 1; }
  .mural--feedbacks .print-card:nth-child(2) { grid-area: 2 / 1; }
  .mural--feedbacks .print-card:nth-child(3) { grid-area: 3 / 1 / 4 / 3; }
  .mural--feedbacks .print-card:nth-child(4) { grid-area: 1 / 2 / 3 / 3; }
}
@media (min-width: 768px) {
  /* no desktop o mural de feedbacks só guardava o carrossel do celular: some, sem deixar faixa vazia */
  .mural--feedbacks { display: none; }
  .mural--feedbacks .mural__prints { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; align-items: start; columns: auto; }
  .mural--feedbacks .print-card { margin: 0; }
  .mural--feedbacks .print-card:nth-child(even) { margin-top: calc(40 * var(--u)); }
}

/* visualizador: o print abre grande sobre a página */
.visor { max-width: min(520px, 92vw); max-height: 92vh; padding: 0; border: 0; background: transparent; overflow: visible; }
.visor::backdrop { background: rgb(20 13 9 / 0.86); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.visor img { width: auto; max-height: 84vh; margin: 0 auto; border-radius: 16px; background: #fff4ed; box-shadow: 0 30px 60px rgb(0 0 0 / 0.5); }
.visor__fechar { display: flex; align-items: center; gap: 6px; margin: 0 0 10px auto; padding: 8px 14px; border: 0; border-radius: 999px; background: #fff4ed; color: #833102; font: 400 14px var(--f-sans); cursor: pointer; }
.visor__fechar svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; }

/* ---------- depoimentos em destaque: recortes colados com fita sobre oliva (entre os cartões claros e a faixa terracota) ---------- */

.destaques-encontros {
  position: relative;
  overflow: hidden;
  padding: calc(44 * var(--u)) var(--pad) calc(50 * var(--u));
  background: #665f29 url("../assets/img/bg-textura-oliva.webp") center / cover no-repeat;
  color: #fff4ed;
  text-align: center;
}
.destaques-encontros__eyebrow { margin: 0 0 14px; color: #f1e761; font: 700 14px / 1.4 var(--f-sans); }
.destaques-encontros__titulo {
  max-width: 16ch;
  margin: 0 auto;
  font: 400 calc(28 * var(--u)) / 1.1 var(--f-sans);
  letter-spacing: -0.03em;
}
.destaques-encontros__titulo em { padding: 0 0.08em; color: #f1e761; font: 400 1.3em / 1 var(--f-destaque); letter-spacing: 0; }
.destaques-encontros__mural {
  display: grid;
  gap: calc(24 * var(--u));
  max-width: 820px;
  margin: calc(30 * var(--u)) auto 0;
}
.destaque-print {
  position: relative;
  justify-self: center;
  width: 100%;
  margin: 0;
  padding: 8px;
  border-radius: 6px;
  background: #fff4ed;
  box-shadow: 0 18px 40px rgb(0 0 0 / 0.32);
  rotate: var(--giro, -1.5deg);
}
.destaque-print:nth-child(2) { --giro: 2deg; }
.destaque-print:nth-child(3) { --giro: -2.2deg; }
.destaque-print:nth-child(4) { --giro: 1.4deg; }
/* os dois prints pequenos (raissa e ivi) não esticam além do tamanho real */
.destaque-print:nth-child(2) { max-width: 340px; }
.destaque-print:nth-child(4) { max-width: 370px; }
.destaque-print img { width: 100%; border-radius: 4px; }
.destaque-print .fita { top: -14px; }

@media (min-width: 768px) {
  .destaques-encontros { padding: calc(64 * var(--u)) 0 calc(70 * var(--u)); }
  .destaques-encontros__eyebrow { font-size: 16px; }
  .destaques-encontros__titulo { max-width: none; font-size: calc(44 * var(--u)); }
  .destaques-encontros__mural {
    grid-template-columns: 1.25fr 1fr;
    gap: calc(34 * var(--u)) calc(36 * var(--u));
    align-items: center;
    margin-top: calc(44 * var(--u));
  }
  .destaque-print { padding: 10px; }
  .destaque-print:nth-child(2) { margin-top: calc(24 * var(--u)); }
  .destaque-print:nth-child(3) { margin-left: calc(30 * var(--u)); }
}

/* ---------- oferta (cópia do bloco da leveza criativa: "pensa comigo" + ingresso de papel) ---------- */

.oferta {
  --of-terracota: #833102;
  --of-oliva: #665f29;
  --of-amarelo: #f1e761;
  --of-papel: #fff4ed;
  --of-tinta-2: rgb(131 49 2 / 0.78);
  --of-ease: cubic-bezier(0.22, 1, 0.36, 1);
  position: relative;
  overflow: hidden;
  padding: clamp(80px, 10vw, 140px) clamp(18px, 4vw, 56px);
  background: var(--of-oliva);
  color: var(--of-papel);
  font: 400 18px / 1.6 var(--f-sans);
  scroll-margin-top: 0;
}
.oferta__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: clamp(40px, 6vw, 90px);
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}
.oferta__eyebrow { margin: 0 0 20px; color: var(--of-amarelo); font: 700 15px / 1.4 var(--f-sans); }
.oferta__titulo {
  margin: 0 0 24px;
  color: var(--of-papel);
  font: 400 clamp(36px, 3.8vw, 56px) / 1.12 var(--f-sans);
  letter-spacing: -0.035em;
  text-wrap: balance;
}
.oferta__titulo b { font-weight: 700; }
/* palavra de destaque: só a serifa melodrame em amarelo, sem marcação */
.oferta__titulo em {
  padding: 0 0.04em;
  color: var(--of-amarelo);
  font: 400 1.3em / 1 var(--f-destaque);
  letter-spacing: 0;
}

/* pensa comigo: uma linha larga por tipo de venda; à esquerda o que você vende, à direita quantas vendas pagam a entrada */
.conta { margin-bottom: 28px; }
.conta__se { margin: 0 0 8px; font-size: 17px; font-weight: 700; }
.conta__cards { display: grid; gap: 10px; margin: 0; }
.conta__card {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: stretch;
  overflow: hidden;
  border-radius: 18px;
  background: var(--of-papel);
  color: var(--of-terracota);
  box-shadow: 0 12px 26px rgb(0 0 0 / 0.16);
}
.conta__card dt { display: flex; flex-direction: column; justify-content: center; padding: 14px 18px; }
.conta__card small { font-size: 15px; line-height: 1.2; }
.conta__card dt b { font-size: clamp(24px, 2.2vw, 30px); line-height: 1.1; letter-spacing: -0.02em; }
.conta__card dt b small { font-size: 15px; font-weight: 400; letter-spacing: 0; }
.conta__card dd {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  min-width: 118px;
  margin: 0;
  padding: 10px 16px;
  background: var(--of-terracota);
  color: var(--of-papel);
  font-size: 15px;
  font-weight: 700;
}
/* seta saindo do valor pro resultado */
.conta__card dd::before {
  content: "";
  position: absolute;
  left: -9px;
  top: 50%;
  width: 18px;
  height: 18px;
  border-radius: 3px;
  background: var(--of-terracota);
  rotate: 45deg;
  translate: 0 -50%;
}
.conta__card dd span { position: relative; color: var(--of-amarelo); font: 400 44px / 0.9 var(--f-destaque); }

.oferta__lede { max-width: 54ch; margin: 0 0 1em; color: rgb(255 244 237 / 0.82); font-size: clamp(18px, 1.55vw, 21px); line-height: 1.55; }
.oferta__lede:last-child { margin-bottom: 0; }
.oferta__lede b { color: var(--of-papel); }

/* ingresso: folha de papel com bordas rasgadas (o js recorta) e uma fita crepe em cima */
.ingresso { position: relative; filter: drop-shadow(0 30px 50px rgb(0 0 0 / 0.35)); }
.ingresso__folha {
  position: relative;
  padding: clamp(40px, 4vw, 56px) clamp(24px, 3.4vw, 50px) clamp(38px, 4vw, 52px);
  background: var(--of-papel);
  color: var(--of-terracota);
  box-shadow: 0 0 0 1px rgb(131 49 2 / 0.12), 0 10px 22px rgb(131 49 2 / 0.1);
}
.fita {
  position: absolute;
  top: -12px;
  left: 50%;
  z-index: 4;
  width: 104px;
  height: 30px;
  margin-left: -52px;
  background: rgb(233 225 207 / 0.86);
  box-shadow: 0 1px 3px rgb(0 0 0 / 0.16);
  clip-path: polygon(3% 0, 97% 5%, 100% 24%, 96% 46%, 100% 72%, 97% 100%, 2% 95%, 0 72%, 4% 50%, 0 25%);
  transform: rotate(-2deg);
  pointer-events: none;
}
.fita::after { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(90deg, rgb(255 255 255 / 0.2) 0 2px, transparent 2px 7px); }
.ingresso__logo { width: min(230px, 60%); margin: 0 auto 22px; }
.ingresso__frase { max-width: 20ch; margin: 0 auto 26px; font: 400 clamp(24px, 2.2vw, 30px) / 1.2 var(--f-sans); text-align: center; }
.preco { margin: 32px 0 26px; text-align: center; }
.preco__parcela { display: flex; align-items: baseline; justify-content: center; gap: 12px; margin: 0; line-height: 1; }
.preco__parcela small { color: var(--of-tinta-2); font: 700 18px var(--f-sans); }
.preco__parcela b { font: 400 clamp(68px, 7.6vw, 104px) / 0.95 var(--f-sans); font-variant-numeric: tabular-nums; letter-spacing: -0.035em; }
.preco__vista { margin: 12px 0 0; color: var(--of-tinta-2); font-size: 16px; }
.preco__vista b { color: var(--of-terracota); }

.oferta .cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  padding: 22px 28px;
  border-radius: 999px;
  background: var(--of-terracota);
  color: var(--of-papel);
  font: 700 clamp(17px, 1.6vw, 20px) / 1.2 var(--f-sans);
  letter-spacing: -0.005em;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 12px 28px rgb(57 35 21 / 0.28), inset 0 -2px 0 rgb(0 0 0 / 0.12);
  transition: box-shadow 0.35s var(--of-ease), scale 0.35s var(--of-ease);
}
.oferta .cta svg { flex: none; width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.35s var(--of-ease); }
.oferta .cta:hover { box-shadow: 0 18px 36px rgb(57 35 21 / 0.34), inset 0 -2px 0 rgb(0 0 0 / 0.12); }
.oferta .cta:hover svg { transform: translateX(4px); }
.oferta .cta:active { scale: 0.98; }
.oferta .cta:focus-visible { outline: 2px dashed var(--of-terracota); outline-offset: 4px; }

.garantias { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 20px; margin: 24px 0 0; padding: 0; list-style: none; color: var(--of-tinta-2); font-size: 13.5px; }
.garantias li { display: flex; align-items: center; gap: 6px; }
.garantias svg { width: 16px; height: 16px; fill: none; stroke: var(--of-terracota); stroke-width: 1.8; stroke-linejoin: round; }

@media (max-width: 899px) {
  .oferta { font-size: 17px; }
  .oferta__grid { grid-template-columns: 1fr; }
  .oferta .cta { padding: 18px 22px; font-size: 16px; }
  .preco__parcela b { font-size: 68px; }
}

/* ---------- barra fixa de compra (cópia da leveza criativa) ---------- */

.barra {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 60;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: calc(10px + env(safe-area-inset-top, 0px)) clamp(18px, 4vw, 56px) 10px;
  border-bottom: 1px solid rgb(131 49 2 / 0.12);
  background: rgb(255 244 237 / 0.9);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transform: translateY(-110%);
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.barra.on { transform: none; }
.barra__logo img { width: 92px; rotate: -3deg; }
.barra__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 11px 18px;
  border-radius: 999px;
  background: #833102;
  color: #fff4ed;
  font: 700 15px / 1.2 var(--f-sans);
  letter-spacing: -0.005em;
  text-decoration: none;
  white-space: nowrap;
  transition: box-shadow 0.35s ease;
}
.barra__cta svg { flex: none; width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1); }
.barra__cta:hover svg { transform: translateX(4px); }
.barra__cta:focus-visible { outline: 2px dashed #833102; outline-offset: 3px; }
.cta-fixo { display: none; }

@media (max-width: 767px) {
  /* celular: a barra de cima fica só com o logo, centralizado; o botão vai pro card flutuante de baixo */
  .barra { justify-content: center; }
  .barra .barra__cta { display: none; }
  .cta-fixo {
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    z-index: 70;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 10px 10px 18px;
    border: 1px solid rgb(131 49 2 / 0.15);
    border-radius: 18px;
    background: #fff4ed;
    box-shadow: 0 16px 40px rgb(57 35 21 / 0.35);
    transform: translateY(160%);
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  }
  .cta-fixo.on { transform: none; }
  .cta-fixo b { color: #833102; font: 400 20px / 1 var(--f-sans); }
  .cta-fixo .barra__cta { padding: 13px 18px; box-shadow: 0 12px 28px rgb(57 35 21 / 0.28), inset 0 -2px 0 rgb(0 0 0 / 0.12); }
}

/* ---------- garantia (cópia da leveza criativa: post-it amarelo com o 7 + título) ---------- */

.garantia {
  padding: clamp(80px, 10vw, 140px) clamp(18px, 4vw, 56px);
  background: #fff4ed;
  color: #833102;
  font: 400 18px / 1.6 var(--f-sans);
}
.garantia__grid {
  display: grid;
  grid-template-columns: 0.7fr 1.3fr;
  gap: clamp(36px, 6vw, 90px);
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}
.garantia-postit { position: relative; justify-self: center; max-width: 340px; transform: rotate(-5deg); }
.garantia-postit img { width: 100%; filter: drop-shadow(0 18px 20px rgb(57 35 21 / 0.25)); }
.garantia-postit div { position: absolute; inset: 16% 10% 8% 12%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.garantia-postit b { color: #833102; font: 400 clamp(110px, 12vw, 160px) / 0.8 var(--f-sans); }
.garantia-postit span { margin-top: 20px; color: #833102; font: 400 26px / 1 "Sticky Notes", "Segoe Print", cursive; }
.garantia__titulo {
  margin: 0 0 22px;
  font: 400 clamp(42px, 5.8vw, 82px) / 1.12 var(--f-sans);
  letter-spacing: -0.035em;
  text-wrap: balance;
}
.garantia__titulo b { font-weight: 700; }
.garantia__titulo em { padding: 0 0.04em; color: #833102; font: 400 1.3em / 1 var(--f-destaque); letter-spacing: 0; }
.garantia__lede { max-width: 54ch; margin: 0; color: rgb(131 49 2 / 0.78); font-size: clamp(18px, 1.55vw, 21px); line-height: 1.55; }

@media (max-width: 899px) {
  .garantia__grid { grid-template-columns: 1fr; }
  .garantia-postit { max-width: 260px; }
}

/* ---------- ajustes do celular ---------- */

@media (max-width: 767px) {
  /* botões: o texto de duas linhas não se sobrepõe e o botão cresce com ele */
  .btn {
    width: auto;
    min-width: calc(216 * var(--u));
    max-width: 100%;
    height: auto;
    min-height: calc(52 * var(--u));
    padding: calc(10 * var(--u)) calc(28 * var(--u));
    line-height: 1.1;
  }

  /* texto corrido alinhado à esquerda: o justificado abria buracos entre as palavras na tela estreita */
  .sinapses__texto,
  .quem__bio,
  .multiplos__texto,
  .entrega--aulas .entrega__texto { text-align: left; }

  /* repertório: foto e legenda lado a lado, a legenda ocupa o espaço que sobra e fica centralizada na foto */
  .repertorio__lista li {
    display: flex;
    align-items: center;
    gap: calc(16 * var(--u));
  }
  .repertorio__lista li:nth-child(even) { flex-direction: row-reverse; }
  .repertorio__lista li img { flex-shrink: 0; margin: 0; }
  .repertorio__lista p {
    position: static;
    flex: 1;
    width: auto;
  }

  /* "FEEDBACKS" inteiro dentro da foto, com folga embaixo: as letras claras nunca caem no fundo claro */
  .feedbacks__titulo { margin-top: calc(-84 * var(--u)); }
  .destaques { margin-top: calc(60 * var(--u)); }
}

/* ---------- movimento (js/movimento.js) ---------- */

/* o topo começa escondido e entra em sequência; o resto da página é escondido pelo próprio js */
/* o que anima já começa escondido no css, antes do gsap chegar: assim nada aparece e some de novo
   (se o gsap não carregar, o <head> tira a classe .mov e tudo aparece) */
.mov :is(
  .hero__logo, .hero__title, .hero__sub,
  .voce__titulo, .voce__mas, .voce__mostrar, .voce__lista > li, .voce__tempero, .voce__foto,
  .aplico__titulo, .ativo__texto, .ativo__traducao, .ativo__borogodo,
  .sinapses__intro, .sinapses__soma, .sinapses__texto p,
  .dores__intro, .dores__lista > li, .dores__titulo > span,
  .quem__titulo > span, .quem__adjetivos > span, .quem__bio p,
  .viciada__titulo > span, .viciada__texto, .pertencente__titulo > *,
  .multiplos__texto, .multiplos__destaque, .portas__intro, .portas__texto,
  .repertorio__titulo, .repertorio__lista li > *, .repertorio__colagem img,
  .pessoas__titulo > span, .feedbacks__titulo, .destaque-card, .print-card, .resultados__titulo,
  .recebe__o, .recebe__script, .entrega__acesso, .entrega__produto, .entrega__xodo, .entrega__descricao, .entrega__guia, .entrega__texto p, .entrega__img,
  .bonus__titulo, .bonus > p, .nivel__intro, .nivel__titulo, .nivel__aulas > li,
  .destaques-encontros__eyebrow, .destaques-encontros__titulo, .destaque-print,
  .garantia-postit, .garantia__titulo, .garantia__lede,
  .oferta__eyebrow, .oferta__titulo, .conta__se, .conta__card, .oferta__lede, .ingresso,
  .faq__titulo, .faq details,
  .rodape__logo, .rodape p
) { visibility: hidden; }
@media (min-width: 768px) {
  .mov .btn { visibility: hidden; }
}
/* o gsap mede as posições subindo a página por um instante; com a rolagem suave do css esse instante
   vira uma animação e as medidas saem erradas (tudo dispara de uma vez). as âncoras rolam suave pelo js */
html.mov { scroll-behavior: auto; }
/* o gsap move os botões (efeito magnético): a transição de transform do css atrasaria o movimento */
.mov .btn { transition: filter 0.3s ease; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .faixa__grupo,
  .faixa__conteudo,
  .esteira__trilho { animation: none !important; }
}
