/* ==========================================================================
   STUDIO THAINÁ CAVALCANTI · interface "beauty center"
   Hero em tela cheia e página sem moldura, fundo creme de ponta a ponta;
   cards de canto bem arredondado; navegação em pílulas; títulos 800 + 400.
   Versão anterior (editorial FACE) guardada em _versao-anterior/.
   ========================================================================== */

:root{
  /* ---- Cor (paleta da marca: rosa #CA8486 · creme #EDDAC9 · oliva #626958) ---- */
  --ink:#23271F;          /* títulos e botões escuros (14:1 no creme)   */
  --body:#4F5548;         /* texto corrido (7,1:1)                      */
  --muted:#5E6356;        /* apoio (5,7:1)                              */
  --rose:#CA8486;         /* rosa da marca — fundo/ornamento            */
  --rose-deep:#8A4C50;    /* rosa em texto (6,0:1)                      */
  --rose-light:#F2C9C7;   /* rosa sobre escuro                          */
  --rose-tint:#F7E9E6;    /* cards rosados                              */
  --sand:#F3E8DC;         /* superfície quente                          */
  --line:#E6D6C8;         /* filetes e bordas                           */
  --paper:#FFFCF8;        /* a "folha" da página                        */
  --olive:#4A5042;

  --f-sans:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --f-brand:"Gloock", Georgia, serif;

  --r-xl:28px; --r-lg:22px; --r-md:16px; --pill:999px;
  --pad:clamp(1rem,3.2vw,3rem);        /* respiro interno da moldura */
  --sec:clamp(4.5rem,8vw,7.5rem);      /* espaço entre seções        */
  --e-out:cubic-bezier(.16,1,.3,1);
}

/* ---- Base ---- */
*,*::before,*::after{box-sizing:border-box}
body,h1,h2,h3,p,figure,ul,address,blockquote{margin:0}
ul[class],ol[class]{list-style:none;padding:0;margin:0}
img,video,iframe{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
address{font-style:normal}
[hidden]{display:none !important}

body{
  font-family:var(--f-sans);font-size:clamp(.98rem,1vw,1.04rem);line-height:1.7;color:var(--body);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
:where(a,button,summary):focus-visible{outline:2px solid var(--rose-deep);outline-offset:3px;border-radius:8px}
.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}
.skip-link{position:absolute;left:1rem;top:-80px;z-index:999;background:var(--ink);color:#fff;padding:.7rem 1.2rem;border-radius:var(--pill)}
.skip-link:focus{top:1rem}

/* Sem moldura: a .frame só agrupa conteúdo e rodapé, de ponta a ponta.
   O conteúdo fica centralizado em --wrap; overflow-x:clip corta o que
   sangra pela lateral (ferramentas) sem quebrar o position:sticky. */
.frame{position:relative;overflow-x:clip;--wrap:1360px}
main,.foot{max-width:var(--wrap);margin-inline:auto}
main>section{padding:var(--sec) var(--pad) 0}

/* ---- Tipografia ---- */
/* Escala: eyebrow (rótulo) → h2 serifada → h3 serifada menor → texto.
   Nos títulos o destaque é a cor (rosé), nunca negrito. */
.h2{font-family:var(--f-brand);font-size:clamp(2.1rem,4vw,3.3rem);line-height:1.1;letter-spacing:-.01em;font-weight:400;color:var(--ink);text-wrap:balance}
.h2 b,.hero__title b{font-weight:400;color:var(--rose-deep)}
.h2--light b{color:var(--rose-light)}
.h2--light{color:#fff}
.eyebrow,.tag{font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--rose-deep)}
.eyebrow{display:inline-flex;align-items:center;gap:.75rem}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
.tag--light{color:var(--rose-light)}
.sec-sub{margin-top:.6rem;color:var(--muted)}
.link{color:var(--rose-deep);font-weight:600;border-bottom:1px solid currentColor}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;margin-bottom:clamp(1.8rem,3vw,2.6rem)}

/* ---- Pílulas e círculos ---- */
.pill{
  display:inline-flex;align-items:center;gap:.55rem;min-height:44px;padding:0 1.25rem;border-radius:var(--pill);
  font-size:.92rem;font-weight:600;white-space:nowrap;border:1px solid transparent;
  transition:background-color .35s,color .35s,border-color .35s,transform .35s var(--e-out);
}
.pill--lg{min-height:54px;padding:0 1.6rem;font-size:1rem}
.pill--light{background:#fff;color:var(--ink)}
.pill--light:hover{background:var(--rose-light)}
.pill--glass{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.28);backdrop-filter:blur(10px)}
.pill--glass:hover{background:rgba(255,255,255,.3)}
.pill--dark{background:var(--ink);color:#fff}
.pill--dark:hover{background:var(--rose-deep)}
.pill--line{border-color:var(--ink);color:var(--ink)}
.pill--line:hover{background:var(--ink);color:#fff}
.pill .arrow{display:inline-block;transition:transform .35s var(--e-out)}
.pill:hover .arrow{transform:translate(2px,-2px)}

.circle{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;flex:none;border:1px solid transparent;transition:background-color .35s,color .35s,transform .45s var(--e-out)}
.circle svg{width:19px;height:19px}
.circle--sm{width:36px;height:36px;font-size:.9rem}
.circle--glass{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.28);color:#fff;backdrop-filter:blur(10px)}
.circle--light{background:#fff;color:var(--ink)}
.circle--dark{background:var(--ink);color:#fff}
.circle--line{border-color:var(--ink);color:var(--ink)}
.circle:hover{transform:rotate(45deg)}
.circle--line:hover{background:var(--ink);color:#fff}

/* ==========================================================================
   01 · HERO
   ========================================================================== */
/* Tela cheia. --lift reserva espaço embaixo caso algo volte a sobrepor a
   borda inferior da hero; hoje é 0. */
.hero{
  --lift:0px;
  position:relative;overflow:hidden;isolation:isolate;
  min-height:100svh;padding:clamp(1rem,2vw,1.6rem) clamp(1rem,3vw,2.4rem) calc(var(--lift) + clamp(1rem,2vw,1.6rem));
  display:flex;flex-direction:column;color:#fff;
}
/* barra no topo; botão sempre embaixo (no celular, logo acima dos cards) */
.hero__body{margin-top:auto}
.hero__media{position:absolute;inset:-8% 0;z-index:-2}
.hero__video{width:100%;height:100%;object-fit:cover;object-position:50% 55%;background:#3a2f2a}
/* Véu em cima (barra) e embaixo à esquerda (frase + botão); o centro do
   vídeo fica limpo */
.hero__shade{position:absolute;inset:0;z-index:-1;background:
  linear-gradient(180deg,rgba(30,22,20,.45) 0%,rgba(30,22,20,0) 22%,rgba(30,22,20,0) 50%,rgba(30,22,20,.7) 100%),
  linear-gradient(90deg,rgba(30,22,20,.35) 0%,rgba(30,22,20,0) 55%)}

.bar{display:flex;align-items:center;gap:.6rem;position:relative;z-index:2}
.bar__pills{display:flex;gap:.4rem}
.bar__brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.bar__brand img{height:clamp(46px,5vw,64px);width:auto}
.bar__icons{margin-left:auto;display:flex;gap:.4rem}

.hero__body{max-width:720px;padding:0 clamp(.4rem,2.5vw,2.4rem) clamp(1rem,3vw,2.4rem)}
.hero__title{font-family:var(--f-brand);font-weight:400;font-size:clamp(2.2rem,4.6vw,4rem);line-height:1.05;letter-spacing:-.01em;max-width:13ch;margin-bottom:1.6rem}
.hero__title em{font-style:normal;color:var(--rose-light)}

@media (max-width:1000px){.bar__pills{display:none}}
@media (max-width:760px){
  .bar__brand img{height:40px}
  .bar__icons .circle--glass{display:none}
}

/* ---- menu mobile ---- */
.menu{position:fixed;inset:0;z-index:200;background:var(--ink);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:2.5rem;padding:2rem}
.menu__nav{display:grid;gap:.4rem}
.menu__nav a{font-family:var(--f-brand);font-size:clamp(2rem,9vw,3rem);font-weight:400}
.menu__close{position:absolute;right:1.4rem;top:1.4rem;width:48px;height:48px}
.menu__close span{position:absolute;left:12px;right:12px;top:23px;height:2px;background:#fff}
.menu__close span:first-child{transform:rotate(45deg)}.menu__close span:last-child{transform:rotate(-45deg)}
.menu .pill{align-self:flex-start}

/* ==========================================================================
   04 · COMO FUNCIONA
   ========================================================================== */
/* Passos 2×2 à esquerda, ferramentas à direita saindo pela borda da tela
   (margem negativa = padding da seção + sobra lateral fora do --wrap). */
.how{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(1.5rem,4vw,4rem);align-items:center}
.steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(1.5rem,4vw,3.5rem)}
.step{padding:1.4rem 0;border-top:1px solid var(--line);display:grid;gap:.45rem;align-content:start}
.step__n{font-size:.72rem;font-weight:600;letter-spacing:.22em;color:var(--rose-deep)}
.step h3{font-family:var(--f-brand);font-weight:400;font-size:clamp(1.35rem,1.8vw,1.55rem);line-height:1.2;color:var(--ink)}
.step b{font-weight:600;color:var(--ink)}
.how__tools{
  justify-self:end;height:clamp(320px,34vw,480px);width:auto;max-width:none;
  margin-right:calc(-1 * (var(--pad) + max(0px, (100vw - var(--wrap)) / 2)));
  filter:drop-shadow(0 18px 24px rgba(60,40,30,.14));
}
@media (max-width:900px){
  .how{grid-template-columns:1fr}
  .how__tools{display:none}
}
@media (max-width:600px){.steps{grid-template-columns:1fr}}

/* ==========================================================================
   03 · SERVIÇOS
   ========================================================================== */
.services__grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,2fr);gap:clamp(1.2rem,3vw,2.4rem);align-items:start}
.svc-list li+li{border-top:1px solid var(--line)}
.svc{
  width:100%;display:flex;align-items:center;gap:.9rem;padding:.8rem .2rem;text-align:left;
  font-size:1rem;font-weight:500;color:var(--muted);transition:color .3s;
}
/* Só texto: o número ocupa o lugar da miniatura na lista e vira o
   elemento gráfico grande no card. */
.svc em{font-style:normal;font-size:.72rem;font-weight:600;letter-spacing:.12em;color:var(--rose);width:28px;flex:none;transition:color .3s}
.svc span{flex:1}
.svc i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);font-style:normal;font-size:.85rem;transition:all .35s var(--e-out)}
.svc:hover,.svc[aria-selected="true"]{color:var(--ink)}
.svc[aria-selected="true"] em{color:var(--rose-deep)}
.svc[aria-selected="true"] i{background:var(--ink);border-color:var(--ink);color:#fff;transform:rotate(45deg)}

.svc-stage{position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--sand);min-height:420px}
.svc-panel{min-height:420px;display:flex}
.svc-panel__info{
  position:relative;flex:1;padding:clamp(2rem,4vw,3.6rem);
  display:flex;flex-direction:column;gap:.9rem;justify-content:flex-end;
}
.svc-panel__info h3{font-family:var(--f-brand);font-weight:400;font-size:clamp(1.9rem,3vw,2.6rem);line-height:1.1;color:var(--ink)}
.svc-panel__info b{color:var(--ink)}
.facts{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}
.facts li{padding:.35rem .8rem;border-radius:var(--pill);background:#fff;font-size:.8rem;font-weight:500;color:var(--ink)}
@media (max-width:980px){
  .services__grid{grid-template-columns:1fr}
  .svc-stage,.svc-panel{min-height:380px}

}

/* ==========================================================================
   04 · SOBRE
   ========================================================================== */
/* Só ela: card dividido — texto sobre fundo escuro à esquerda, retrato
   inteiro à direita, sem véu por cima. */
.about__card{
  display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
  min-height:clamp(520px,44vw,640px);overflow:hidden;border-radius:var(--r-xl);
  background:var(--ink);color:#fff;
}
.about__text{align-self:end;max-width:560px;padding:clamp(1.6rem,3.4vw,3rem);display:grid;gap:1.1rem}
.about__bio{font-size:1.05rem;line-height:1.75;color:rgba(255,255,255,.9)}
.about__quote{font-family:var(--f-brand);font-size:clamp(1.35rem,2vw,1.65rem);font-weight:400;line-height:1.35}
.about__quote b{font-weight:400;color:var(--rose-light)}
.about__photo{position:relative;overflow:hidden;margin:0}
.about__photo img{position:absolute;inset:-6% 0;width:100%;height:112%;object-fit:cover;object-position:50% 18%}
@media (max-width:820px){
  .about__card{grid-template-columns:1fr}
  .about__photo{order:-1;aspect-ratio:4/5}
  .about__text{align-self:start}
}

/* ==========================================================================
   05 · CURSOS
   ========================================================================== */
/* manifesto no topo; foto à esquerda; pilares + 2 cursos à direita */
.courses{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.courses__intro{grid-column:1/-1;display:grid;gap:1rem;max-width:820px}
.courses__manifesto{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.7;color:var(--body)}
.courses__photo{margin:0;overflow:hidden;border-radius:var(--r-xl);aspect-ratio:4/5}
.courses__photo img,.courses__photo video{width:100%;height:100%;object-fit:cover}
.courses__body{display:grid;gap:1.6rem;justify-items:start}
.pillars{display:grid;width:100%}
.pillars li{display:grid;gap:.15rem;padding:.9rem 0;border-top:1px solid var(--line)}
.pillars li:last-child{border-bottom:1px solid var(--line)}
.pillars b{color:var(--ink);font-weight:600}
.pillars span{font-size:.93rem;color:var(--muted)}
@media (max-width:900px){.courses{grid-template-columns:1fr}.courses__photo{aspect-ratio:4/3}}

/* ---- Cursos no tom da marca: faixa oliva de ponta a ponta, como o logo ----
   Contraste no oliva #626958: texto miúdo sempre em --paper (5,3:1); o creme
   (#EDDAC9, 4,2:1) e o rosa (#F2C9C7, 3,8:1) da marca só em texto grande. */
main>.courses{
  --brand-olive:#626958; --brand-cream:#EDDAC9; --brand-rose:#F2C9C7;
  background:var(--brand-olive);color:var(--paper);
  margin:var(--sec) calc(-1 * max(0px, (100vw - var(--wrap)) / 2)) 0;
  padding:var(--sec) calc(var(--pad) + max(0px, (100vw - var(--wrap)) / 2));
}
.courses .eyebrow{color:var(--paper)}
.courses .h2{color:var(--brand-cream)}
.courses .h2 b{color:var(--brand-rose)}
.courses__manifesto{color:var(--paper)}
.courses .pillars li{border-color:rgba(250,245,239,.22)}
.courses .pillars b{color:var(--paper)}
.courses .pillars span{color:var(--paper);opacity:1}
.courses .pill--dark{background:var(--paper);color:var(--ink)}
.courses .pill--dark:hover{background:var(--brand-rose)}
.courses .count{color:var(--paper)}
.courses .count__n{color:var(--brand-rose)}
.courses :focus-visible{outline-color:var(--paper)}

/* ---- Caixa de preço: painel translúcido na faixa oliva + card escuro ---- */
.price{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1.5rem,4vw,3.5rem);
  padding:clamp(.6rem,1.2vw,.9rem);padding-left:clamp(1.4rem,3vw,2.4rem);border-radius:calc(var(--r-xl) + 6px);
  background:rgba(250,245,239,.08);border:1px solid rgba(250,245,239,.2);color:var(--paper)}
.price__side{display:flex;flex-direction:column;align-items:flex-start;gap:1.1rem;padding-block:clamp(1rem,2.4vw,1.8rem)}
.price__brand{display:flex;align-items:center;gap:.6rem;font-family:var(--f-brand);font-size:1.6rem;color:var(--brand-cream)}
.price__brand svg{width:34px;height:34px;padding:8px;border-radius:10px;background:var(--ink);fill:var(--brand-rose)}
.price__side>p:not(.price__brand){max-width:34ch;line-height:1.6}
.price__ghost{background:rgba(250,245,239,.14);color:var(--paper);border:1px solid rgba(250,245,239,.3)}
.price__ghost:hover{background:var(--paper);color:var(--ink)}
.price__notes{margin-top:auto;display:grid;gap:1rem;padding-top:1.4rem}
.price__notes dt{font-weight:600;color:var(--brand-cream)}
.price__notes dd{margin:0;font-size:.93rem;line-height:1.5}
.price__card{display:flex;flex-direction:column;gap:.9rem;padding:clamp(1.4rem,3vw,2.2rem);border-radius:var(--r-xl);
  background:linear-gradient(160deg,#2E332A,#161913);color:var(--paper);box-shadow:0 30px 60px -30px rgba(10,12,8,.7)}
.price__tabs{align-self:flex-start;display:flex;padding:4px;border-radius:var(--pill);background:rgba(250,245,239,.08)}
.price__tabs button{padding:.45rem .95rem;border-radius:var(--pill);font-size:.8rem;font-weight:600;color:var(--paper);transition:background-color .3s,color .3s}
.price__tabs button[aria-selected="true"]{background:var(--paper);color:var(--ink)}
.price__spots{display:flex;align-items:center;gap:.5rem;margin-top:.4rem;font-size:.85rem}
.price__spots i{width:8px;height:8px;border-radius:50%;background:#9FD18B;box-shadow:0 0 0 4px rgba(159,209,139,.2)}
.price__name{font-family:var(--f-brand);font-weight:400;font-size:clamp(1.7rem,2.8vw,2.3rem);line-height:1.1;color:var(--brand-cream)}
.price__desc{font-size:.95rem;line-height:1.55;max-width:44ch}
.price__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 1.5rem;padding:.6rem 0 1.4rem;border-bottom:1px solid rgba(250,245,239,.16)}
.price__value{display:flex;align-items:baseline;flex-wrap:wrap;gap:.3rem;line-height:1}
.price__value small{font-size:1.1rem;font-weight:500}
.price__value b{font-family:var(--f-brand);font-size:clamp(2.6rem,5vw,3.6rem);font-weight:400}
.price__value span{flex-basis:100%;margin-top:.45rem;font-size:.85rem}
.price__cta{display:inline-flex;padding:1rem 2rem;border-radius:var(--pill);font-weight:600;font-size:.95rem;color:var(--ink);
  background:linear-gradient(180deg,#F2C9C7,#CA8486);box-shadow:0 0 0 6px rgba(250,245,239,.08),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .3s var(--e-out),box-shadow .3s}
.price__cta:hover{transform:translateY(-2px);box-shadow:0 0 0 6px rgba(242,201,199,.25),inset 0 1px 0 rgba(255,255,255,.5)}
.price__lists{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;padding-top:.4rem}
.price__lists h4{font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--brand-cream);margin-bottom:.8rem}
.price__lists ul{display:grid;gap:.5rem;list-style:none;padding:0;margin:0}
.price__lists li{position:relative;padding-left:1rem;font-size:.92rem}
.price__lists li::before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;border-radius:50%;background:var(--brand-rose)}
@media (max-width:900px){.price{grid-template-columns:1fr;padding:.6rem}.price__side{padding:1.2rem 1rem 0}.price__notes{margin-top:0;padding-top:.4rem}}
@media (max-width:420px){.price__lists{grid-template-columns:1fr}.price__cta{width:100%;justify-content:center}}

/* ---- Falas das alunas: faixa de cards que passa devagar ----
   Sangra até as bordas da faixa oliva (margem = padding lateral da seção).
   Pausa no mouse; com "reduzir movimento" vira rolagem manual. */
.revs{margin-inline:calc(-1 * (var(--pad) + max(0px, (100vw - var(--wrap)) / 2)));overflow:hidden;padding:1rem 0 1.5rem;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.revs__track{display:flex;width:max-content;animation:revs 70s linear infinite}
.revs:hover .revs__track,.revs:focus-within .revs__track{animation-play-state:paused}
.revs__set{display:flex;gap:1rem;padding-right:1rem}
@keyframes revs{to{transform:translateX(-50%)}}
/* Card achatado: largo e baixo. Nome + iniciais no topo (order:-1), estrela
   no canto, fala logo abaixo limitada a 4 linhas. */
.rev{position:relative;margin:0;width:clamp(300px,30vw,440px);flex:none;display:flex;flex-direction:column;gap:.75rem;
  padding:1.1rem 1.3rem 1.2rem;border-radius:var(--r-lg);background:var(--paper);color:var(--body);
  box-shadow:0 18px 40px -24px rgba(20,24,16,.45)}
.rev__star{position:absolute;top:1.25rem;right:1.3rem;width:16px;height:16px;fill:var(--rose)}
.rev p{font-size:.95rem;line-height:1.5;color:var(--ink);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;overflow:hidden}
.rev figcaption{order:-1;display:flex;align-items:center;gap:.65rem;padding-right:1.6rem}
.rev__avatar{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:50%;background:var(--rose);color:var(--ink);font-size:.76rem;font-weight:800;letter-spacing:.02em}
img.rev__avatar{object-fit:cover;background:var(--sand)}
.rev figcaption b{display:block;font-size:.92rem;font-weight:600;color:var(--ink)}
.rev figcaption small{display:block;font-size:.76rem;color:var(--muted)}
@media (prefers-reduced-motion:reduce){.revs{overflow-x:auto}.revs__track{animation:none}}

/* ==========================================================================
   07 · CARROSSEL INCLINADO
   ========================================================================== */
/* Reto, sem fundo próprio: sangra até as bordas da tela. Cards pares descem
   um pouco — ritmo de revista em vez de fileira. */
main>.skew{padding:var(--sec) 0 0;margin-inline:calc(-1 * max(0px, (100vw - var(--wrap)) / 2));overflow:hidden}
.skew__track{display:flex;width:max-content;will-change:transform}
.skew__set{display:flex;gap:clamp(.6rem,1.2vw,.9rem);padding-right:clamp(.6rem,1.2vw,.9rem)}
.skew__card{width:clamp(130px,13vw,190px);aspect-ratio:4/5;flex:none;margin:0;overflow:hidden;border-radius:var(--r-lg);background:var(--sand)}
.skew__card img,.skew__card video{width:100%;height:100%;object-fit:cover}
main>.skew:has(.skew__word){padding:clamp(.9rem,1.6vw,1.2rem) 0;margin-top:0;border-top:0;border-bottom:1px solid var(--line)}
.skew__set:has(.skew__word){gap:clamp(1.4rem,2.6vw,2.2rem);padding-right:clamp(1.4rem,2.6vw,2.2rem)}
.skew__word{flex:none;display:flex;align-items:center;gap:clamp(1.4rem,2.6vw,2.2rem);margin:0;font-family:var(--f-sans);font-size:.78rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;line-height:1;color:var(--muted);white-space:nowrap}
.skew__word svg{width:9px;height:9px;flex:none;fill:var(--rose)}

/* ==========================================================================
   08 · RESULTADOS
   ========================================================================== */
/* Mosaico em colunas: cada foto mantém a própria proporção (antes/depois
   empilhado, lado a lado ou retrato) — nada é cortado. */
/* Grade regular: todas as fotos quadradas (os antes/depois são ~1:1), 4 por linha. */
.masonry{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.6rem,1.2vw,.9rem)}
.shot{position:relative;margin:0;aspect-ratio:1;overflow:hidden;border-radius:var(--r-lg);background:var(--sand)}
.shot img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--e-out)}
.shot:hover img{transform:scale(1.04)}
.legal{margin-top:1rem;font-size:.85rem;color:var(--muted)}
@media (max-width:760px){.masonry{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ==========================================================================
   09 · DEPOIMENTOS
   ========================================================================== */
/* Faixa fina entre dois fios: rótulo à esquerda e as três falas lado a lado. */
.band{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr));gap:clamp(1.2rem,3vw,2.6rem);align-items:start;
  padding:clamp(1.4rem,2.6vw,2rem) 0;border-block:1px solid var(--line)}
.band__label{font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--rose-deep);line-height:1.8}
.band__label span{color:var(--muted)}
.band__item{margin:0;display:flex;gap:.7rem}
.band__item svg{width:12px;height:12px;flex:none;margin-top:.45em;fill:var(--rose)}
.band__item p{font-family:var(--f-brand);font-size:clamp(1.02rem,1.3vw,1.15rem);line-height:1.45;color:var(--ink)}
@media (max-width:900px){.band{grid-template-columns:1fr;gap:1.1rem}}

/* ---- Alunas formadas (dentro de Cursos) ---- */
.alumni{grid-column:1/-1;margin-top:clamp(2rem,4vw,3rem);display:grid;gap:clamp(.8rem,1.6vw,1.2rem)}
/* contador: o JS conta de 0 até data-count quando aparece */
.count{display:flex;align-items:baseline;flex-wrap:wrap;gap:.2rem .6rem;color:var(--ink);line-height:1}
.count__plus,.count__label{font-size:clamp(1.1rem,1.8vw,1.5rem);font-weight:500}
.count__n{font-family:var(--f-brand);font-size:clamp(4.8rem,11vw,9rem);font-weight:400;letter-spacing:-.02em;color:var(--rose-deep);font-variant-numeric:tabular-nums}
.alumni__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem}
.alumni__note{max-width:32ch;color:var(--paper);padding-bottom:.8rem}
.alumni__photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.6rem,1.2vw,.9rem)}
.alumni__photos figure{margin:0;overflow:hidden;border-radius:var(--r-lg);aspect-ratio:1}
.alumni__photos img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
@media (max-width:760px){.alumni__photos{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ==========================================================================
   10 · DÚVIDAS
   ========================================================================== */
.faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.faq__head{display:grid;gap:.8rem;justify-items:start;position:sticky;top:2rem}
.faq__list{display:grid;gap:.5rem}
.qa{border-radius:var(--r-md);background:var(--sand);transition:background-color .3s}
.qa[open]{background:var(--rose-tint)}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.3rem;font-weight:700;color:var(--ink)}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:#fff;font-weight:600;transition:transform .4s var(--e-out)}
.qa[open] summary::after{transform:rotate(45deg)}
.qa p{padding:0 1.3rem 1.2rem;max-width:62ch}
@media (max-width:900px){.faq{grid-template-columns:1fr}.faq__head{position:static}}

/* ==========================================================================
   11 · VISITA + CHAMADA FINAL
   ========================================================================== */
.visit{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(.7rem,1.4vw,1rem);padding-bottom:0}
.visit__cta{position:relative;overflow:hidden;border-radius:var(--r-xl);min-height:420px;display:flex;align-items:flex-end;color:#fff;background:var(--ink)}
.visit__cta-body{padding:clamp(1.5rem,3vw,2.6rem);display:grid;gap:1rem;justify-items:start}
.visit__cta-body p{color:rgba(255,255,255,.85)}
.visit__place{border-radius:var(--r-xl);background:var(--sand);padding:clamp(1.5rem,2.6vw,2.2rem);display:grid;gap:.9rem;align-content:start;justify-items:start}
.visit__place address{color:var(--ink);line-height:1.6}
.visit__hours{font-weight:600;color:var(--rose-deep);font-size:.9rem}
.visit__map{width:100%;height:220px;border-radius:var(--r-md);overflow:hidden}
.visit__map iframe{width:100%;height:100%;border:0;filter:grayscale(.6) sepia(.15)}
@media (max-width:900px){.visit{grid-template-columns:1fr}}

/* ==========================================================================
   RODAPÉ
   ========================================================================== */
.foot{margin-top:var(--sec);padding:clamp(2rem,4vw,3rem) var(--pad) 1.5rem;border-top:1px solid var(--line)}
.foot__top{display:grid;grid-template-columns:minmax(0,1.2fr) auto auto;gap:2rem;align-items:start}
.foot__brand{display:flex;align-items:center;gap:.5rem;font-family:var(--f-brand);font-size:1.6rem;color:var(--ink)}
.foot__brand svg{width:16px;height:16px;color:var(--rose)}
.foot__about{margin-top:.5rem;max-width:40ch;color:var(--muted)}
.foot__links{display:grid;gap:.3rem;font-weight:600;color:var(--ink)}
.foot__links a:hover{color:var(--rose-deep)}
.foot__social{display:flex;gap:.5rem}
.foot__bottom{margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem 2rem;flex-wrap:wrap;font-size:.82rem;color:var(--muted)}
@media (max-width:760px){.foot__top{grid-template-columns:1fr}}

/* ---- WhatsApp flutuante ---- */
.wa{position:fixed;right:clamp(1rem,2.5vw,1.8rem);bottom:clamp(1rem,2.5vw,1.8rem);z-index:150;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--ink);color:#fff;box-shadow:0 10px 30px rgba(35,39,31,.3);transition:transform .5s var(--e-out),opacity .35s,background-color .3s}
.wa svg{width:26px;height:26px}
.wa:hover{background:var(--rose-deep)}
.wa.is-off{opacity:0;transform:translateY(20px) scale(.9);pointer-events:none}

/* ---- placeholder de imagem (sai quando entra a foto real) ---- */
.ph{position:relative;display:flex;align-items:flex-end;background:repeating-linear-gradient(135deg,rgba(35,39,31,.05) 0 2px,transparent 2px 14px),linear-gradient(160deg,var(--sand),var(--line))}
.ph--rose{background:repeating-linear-gradient(135deg,rgba(138,76,80,.06) 0 2px,transparent 2px 14px),linear-gradient(160deg,var(--rose-tint),#EFD6D0)}
.ph::before{content:attr(data-label);margin:.8rem;padding:.25rem .6rem;border-radius:6px;background:#fff;font-size:.72rem;color:var(--body)}

/* ==========================================================================
   MOVIMENTO — estados iniciais só com .js-anim (o JS anima até o estado final)
   ========================================================================== */
.js-anim [data-reveal],.js-anim [data-reveal-stagger]>*,.js-anim [data-hero]{opacity:0;transform:translateY(24px)}
.js-anim [data-reveal-img]{clip-path:inset(12% 12% 12% 12% round var(--r-xl));opacity:0}
.js-anim .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em}
.js-anim .w>i{display:inline-block;font-style:normal;transform:translateY(105%)}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms !important}
}

/* ==========================================================================
   REFINO · mais elegante e clean (original em style-original.css)
   ========================================================================== */
/* 1 · Cantos discretos; pílula só no botão principal */
:root{--r-xl:8px;--r-lg:6px;--r-md:4px}
.pill,.price__cta,.price__tabs,.price__tabs button,.price__ghost{border-radius:4px}
.pill[data-magnetic],.bar .pill{border-radius:var(--pill)}
.facts li{border-radius:3px}
.circle:hover{transform:none}
.price__cta{background:var(--brand-rose);box-shadow:none}
.price__cta:hover{transform:none;box-shadow:none;background:var(--paper)}

/* 3 · Menos fundos: creme em tudo, oliva da marca nos blocos de cor */
.svc-stage{background:transparent;border:1px solid var(--line)}
.facts li{background:transparent;border:1px solid var(--line)}
.qa,.qa[open]{background:transparent;border-radius:0;border-bottom:1px solid var(--line)}
.faq__list{gap:0;border-top:1px solid var(--line)}
.qa summary{padding:1.15rem 0;font-weight:600}
.qa summary::after{background:transparent;border:1px solid var(--line)}
.qa p{padding:0 0 1.2rem}
.about__card{background:transparent;color:var(--body);gap:clamp(1.5rem,4vw,3.5rem)}
.about__text{padding:0;align-self:center}
.about__bio{color:var(--body)}
.about__quote{color:var(--ink)}
.about__quote b{color:var(--rose-deep)}
.about .tag--light{color:var(--rose-deep)}
.about__photo{border-radius:var(--r-xl)}
.price__card{background:rgba(20,24,16,.22);box-shadow:none}
.visit__cta{background:#626958}
.visit__place{background:transparent;border:1px solid var(--line)}
.rev{box-shadow:none}

/* 4 · Rosa só nos títulos-chave; rótulos só em Cursos */
.h2 b,.courses .h2 b{color:inherit}
.how .h2 b{color:var(--rose-deep)}
.visit .h2--light b{color:var(--rose-light)}
.eyebrow{display:none}
.courses .eyebrow{display:inline-flex}

/* 5 · Menos movimento: depoimentos das alunas parados, rolagem manual */
.revs__track{animation-duration:90s}
.shot:hover img{transform:none}
.alumni+.price,.revs+.price{margin-top:clamp(2.5rem,5vw,4rem)}
.courses>.price{margin-top:clamp(2.5rem,5vw,4rem)}

/* Cursos: texto e pilares à esquerda, vídeo em pé à direita ocupando a altura toda */
.courses{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);row-gap:clamp(1.8rem,3vw,2.6rem)}
.courses__intro{grid-column:1;grid-row:1;align-self:end;max-width:640px}
.courses__body{grid-column:1;grid-row:2;align-self:start;max-width:640px}
.courses__photo{grid-column:2;grid-row:1/3;align-self:stretch;aspect-ratio:auto;min-height:clamp(480px,46vw,680px);border-radius:var(--r-xl)}
.courses .pillars{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(1.2rem,3vw,2.4rem)}
.courses .pillars li:nth-last-child(2){border-bottom:1px solid rgba(250,245,239,.22)}
@media (max-width:900px){
  .courses{grid-template-columns:minmax(0,1fr)}
  .courses__intro,.courses__body,.courses__photo{grid-column:1;grid-row:auto}
  .courses__photo{min-height:0;aspect-ratio:4/5;order:0}
}
@media (max-width:560px){.courses .pillars{grid-template-columns:1fr}.courses .pillars li:nth-last-child(2){border-bottom:0}}

/* Resultados: todas as fotos em pé, mesmo formato */
.shot{aspect-ratio:4/5}
.shot img{object-position:50% 50%}

/* Resultados: 4 antes/depois numa fileira (metade de cima = antes) */
.masonry{grid-template-columns:repeat(4,minmax(0,1fr))}
.shot__tag{position:absolute;left:.6rem;top:.6rem;padding:.2rem .55rem;border-radius:3px;background:rgba(255,252,248,.92);font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
.shot__tag--after{top:calc(50% + .6rem);background:var(--ink);color:var(--paper)}
.shot::after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;background:var(--paper)}
@media (max-width:760px){.masonry{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Hero: frase dela na Gloock (fonte do logo), maior e com respiro */
.hero__title{font-size:clamp(2.6rem,6vw,5.4rem);line-height:1;letter-spacing:-.02em;max-width:11ch;margin-bottom:0}
.hero__title em{display:block}

.hero__kicker{margin-bottom:1.1rem;font-size:.78rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#fff;max-width:36ch;line-height:1.6}
.results .band{margin-top:clamp(1.6rem,3vw,2.4rem)}
.how{grid-template-columns:1fr}

/* Serviços: lista em Gloock + card com foto, detalhes e preço */
.svc{font-family:var(--f-brand);font-weight:400;font-size:clamp(1.15rem,1.5vw,1.35rem);padding:1rem .2rem;line-height:1.25}
.svc em{font-family:var(--f-sans)}
.svc i{border:0;width:auto;height:auto;opacity:0;color:var(--rose-deep);transition:opacity .3s,transform .35s var(--e-out)}
.svc[aria-selected="true"] i{opacity:1;background:none;color:var(--rose-deep);transform:none}
.svc:hover i{opacity:1}
.svc-stage{border:1px solid var(--line);background:var(--paper);min-height:0}
.svc-panel{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:clamp(460px,40vw,560px)}
.svc-panel__media{position:relative;margin:0;overflow:hidden;background:var(--sand)}
.svc-panel__media img,.svc-panel__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.svc-panel__info{justify-content:center;gap:1rem}
.svc-panel__info>p:not(.tag){max-width:46ch}
.svc-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 1.4rem;margin:.4rem 0 0}
.svc-meta:empty{display:none}
.svc-meta div{padding:.8rem 0;border-top:1px solid var(--line)}
.svc-meta dt{font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:.2rem}
.svc-meta dd{margin:0;font-size:.95rem;font-weight:500;line-height:1.45;color:var(--ink)}
.svc-buy{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 1.5rem;padding-top:1.1rem;border-top:1px solid var(--line)}
.svc-price{display:flex;flex-direction:column;line-height:1}
.svc-price b{font-family:var(--f-brand);font-weight:400;font-size:clamp(2rem,3vw,2.6rem);color:var(--ink)}
.svc-price small{margin-top:.4rem;font-size:.82rem;color:var(--muted)}
@media (max-width:980px){.svc-panel{grid-template-columns:1fr;min-height:0}.svc-panel__media{aspect-ratio:4/3}}
.replay{position:absolute;inset:0;margin:auto;width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:rgba(255,252,248,.92);color:var(--ink);box-shadow:0 8px 24px rgba(30,22,20,.25);transition:transform .3s var(--e-out),background-color .3s}
.replay svg{width:26px;height:26px;margin-left:3px}
.replay:hover{transform:scale(1.06);background:#fff}
.courses__demo{margin:0;width:100%;display:grid;gap:.7rem}
.courses__demo img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:50% 55%;border-radius:var(--r-xl)}
.courses__demo figcaption{font-size:.88rem;color:var(--paper)}

/* Alunas: vídeo da aula em pé ao lado das fotos */
.alumni__media{display:grid;grid-template-columns:minmax(0,.5fr) minmax(0,1.5fr);gap:clamp(.6rem,1.2vw,.9rem);align-items:stretch}
.alumni__video{position:relative;margin:0;overflow:hidden;border-radius:var(--r-lg);background:#3f453a;min-height:100%}
.alumni__video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:760px){.alumni__media{grid-template-columns:1fr}.alumni__video{aspect-ratio:9/14;min-height:0}}
.sound{position:absolute;left:.7rem;bottom:.7rem;z-index:2;display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .8rem .5rem .6rem;border-radius:var(--pill);background:rgba(255,252,248,.92);color:var(--ink);font-size:.78rem;font-weight:600;box-shadow:0 6px 18px rgba(30,22,20,.2)}
.sound svg{width:18px;height:18px}
.sound .sound__on{display:none}
.sound[aria-pressed="true"] .sound__on{display:inline}
.sound[aria-pressed="true"] .sound__off{display:none}

/* Preço do curso: um card creme compacto, centralizado; dúvida logo abaixo */
.courses>.price{display:flex;flex-direction:column;align-items:center;gap:1.1rem;max-width:560px;width:100%;justify-self:center;padding:0;background:none;border:0}
.price__card{order:-1;width:100%;gap:.8rem;padding:clamp(1.4rem,3vw,2rem);background:var(--paper);color:var(--body)}
.price__tabs{background:var(--sand)}
.price__tabs button{color:var(--ink)}
.price__tabs button[aria-selected="true"]{background:var(--ink);color:var(--paper)}
.price__name{color:var(--ink);font-size:clamp(1.5rem,2.4vw,1.9rem)}
.price__value{color:var(--ink)}
.price__value b{font-size:clamp(2.2rem,4vw,2.8rem)}
.price__value span{color:var(--muted)}
.price__row{border-color:var(--line);padding:.4rem 0 1.1rem}
.price__cta{background:var(--ink);color:var(--paper)}
.price__cta:hover{background:var(--rose-deep);color:#fff}
.price__lists h4{color:var(--muted)}
.price__lists li{font-size:.88rem;color:var(--ink)}
.price__lists li::before{background:var(--rose)}
.price__side{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;text-align:center;gap:.6rem 1rem;padding:0}
.price__brand,.price__notes{display:none}
.price__side>p:not(.price__brand){font-size:.92rem;max-width:none}

/* Avaliação: foto dela + frase, num bloco creme-rosado acolhedor */
.how{display:block;border:0}
.how__card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;background:#F3E3DA;border-radius:var(--r-xl);overflow:hidden}
.how__photo{position:relative;margin:0;min-height:clamp(420px,42vw,600px);background:var(--sand)}
.how__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.how__body{display:flex;flex-direction:column;justify-content:center;gap:1.1rem;padding:clamp(2rem,5vw,4.5rem)}
.how__star{width:22px;height:22px;fill:var(--rose)}
.how__quote{margin:0;font-family:"Young Serif",var(--f-brand);font-weight:400;font-size:clamp(2rem,3.6vw,3.2rem);line-height:1.08;letter-spacing:-.02em;color:var(--ink);text-wrap:balance;max-width:16ch}
.how__punch{margin:0;font-family:"Young Serif",var(--f-brand);font-size:clamp(1.2rem,1.8vw,1.5rem);line-height:1.3;color:var(--rose-deep)}
.how__text{display:grid;gap:.8rem;max-width:46ch;margin-top:.6rem;padding-top:1.3rem;border-top:1px solid rgba(35,39,31,.14)}
.how__text p{margin:0;font-size:1rem;line-height:1.65;color:var(--body);text-wrap:pretty}
.how__sign{margin:.2rem 0 0;font-family:"Young Serif",var(--f-brand);font-size:1.4rem;color:var(--ink)}
@media (max-width:900px){.how__card{grid-template-columns:1fr}.how__photo{min-height:0;aspect-ratio:4/3}}

/* Sobre: retrato grande + apresentação em primeira pessoa */
.about{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2rem,6vw,5.5rem);align-items:center}
.about .about__photo{position:relative;margin:0;aspect-ratio:4/5;border-radius:var(--r-xl);overflow:hidden;background:var(--sand)}
.about .about__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.about__photo figcaption{position:absolute;left:1rem;bottom:1rem;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .8rem;border-radius:4px;background:rgba(255,252,248,.92);font-size:.78rem;font-weight:600;color:var(--ink)}
.about__photo figcaption svg{width:10px;height:10px;fill:var(--rose)}
.about .about__text{display:flex;flex-direction:column;gap:0;padding:0;max-width:540px}
.about__hi{margin:0;font-family:"Young Serif",var(--f-brand);font-size:clamp(1.3rem,2vw,1.7rem);color:var(--rose-deep)}
.about__name{margin:.1rem 0 0;font-family:"Young Serif",var(--f-brand);font-weight:400;font-size:clamp(2.6rem,5vw,4.4rem);line-height:1;letter-spacing:-.025em;color:var(--ink)}
.about__lead{margin:1.1rem 0 0;font-size:1.05rem;font-weight:500;color:var(--ink)}
.about .about__bio{display:grid;gap:.9rem;margin-top:1.6rem;padding-top:1.6rem;border-top:1px solid var(--line)}
.about .about__bio p{margin:0;font-size:1.02rem;line-height:1.7;color:var(--body);text-wrap:pretty}
.about__roles{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.8rem 0 0;padding:0;list-style:none}
.about__roles li{padding:.45rem .85rem;border:1px solid var(--line);border-radius:4px;font-size:.8rem;font-weight:600;letter-spacing:.06em;color:var(--ink)}
@media (max-width:900px){.about{grid-template-columns:1fr}.about .about__photo{aspect-ratio:4/4.4}}

/* ==========================================================================
   PALETA DA MARCA · rosa #CA8486 · creme #EDDAC9 · oliva #626958
   ========================================================================== */
:root{--paper:#F7EEE6;--sand:#EDDAC9;--line:#E0CBBB;--rose-tint:#F1DDD6;--olive:#626958;--olive-deep:#4E5446}
body{background:var(--paper)}
/* faixas de cor em largura total (sem mexer no layout interno) */
.skew:has(.skew__word),.services,.faq{position:relative;box-shadow:0 0 0 100vmax var(--bleed);clip-path:inset(0 -100vmax)}
/* faixa de serviços em rosa da marca */
main>.skew:has(.skew__word){--bleed:var(--rose);background:var(--rose);border:0}
.skew__word{color:var(--ink)}
.skew__word svg{fill:var(--paper)}
/* serviços sobre creme da marca */
.services{--bleed:var(--sand);background:var(--sand)}
.services .svc-stage{background:var(--paper);border-color:transparent}
.services .svc{border-color:rgba(35,39,31,.12)}
/* bloco da avaliação em rosa claro */
.how__card{background:var(--rose-tint)}
/* cursos, CTA final e rodapé no oliva da marca */
.courses,.visit__cta{background:var(--olive)}
.price__card{background:var(--paper)}
.foot{background:var(--olive-deep);color:#F1E6DB}
.foot a{color:#F1E6DB}
.foot a:hover{color:var(--rose-light)}
/* FAQ sobre creme da marca */
.faq{--bleed:var(--sand);background:var(--sand)}
.faq .qa summary::after{border-color:rgba(35,39,31,.2)}
/* botões escuros em oliva; destaque em rosa */
.pill--dark{background:var(--olive);color:#fff}
.pill--dark:hover{background:var(--rose-deep);color:#fff}
.price__cta{background:var(--olive)}
.shot__tag--after{background:var(--olive)}
.about__roles li{border-color:var(--rose);color:var(--rose-deep)}
.about__hi,.how__punch{color:var(--rose-deep)}
.how__star{fill:var(--rose)}
.how{padding-bottom:var(--sec)}

/* Rodapé legível: tudo claro sobre o oliva escuro, fundo de ponta a ponta */
.foot{position:relative;background:var(--olive-deep);box-shadow:0 0 0 100vmax var(--olive-deep);clip-path:inset(0 -100vmax);border-top:0;color:#F7EEE6}
.foot__brand,.foot__links,.foot__links a,.foot a{color:#FFFFFF}
.foot__brand svg{color:var(--rose-light);fill:var(--rose-light)}
.foot__about,.foot__bottom,.foot__bottom a{color:#E9DDD2}
.foot__links a:hover,.foot a:hover{color:var(--rose-light)}
.foot__bottom{border-top-color:rgba(255,255,255,.18)}
.foot .circle{background:transparent;border:1px solid rgba(255,255,255,.45);color:#fff}
.foot .circle--dark{background:var(--rose);border-color:var(--rose);color:var(--ink)}
.foot .circle:hover{background:#fff;border-color:#fff;color:var(--olive-deep)}
.services,.faq{padding-bottom:var(--sec)}

/* ---- Depoimentos do WhatsApp em cartões ----
   Desktop: rótulo em cima e três cartões lado a lado.
   Celular: os cartões deslizam de lado (arrastar com o dedo). */
.band{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,1.6vw,1.2rem);align-items:stretch;padding:0;border:0}
.results .band__label{margin:clamp(2rem,4vw,3rem) 0 1rem;line-height:1.4}
.results .band__label+.band{margin-top:0}
.band__item{flex-direction:column;gap:.9rem;padding:1.3rem 1.3rem 1.2rem;border-radius:var(--r-lg);background:#fff;box-shadow:0 14px 34px -24px rgba(35,39,31,.35)}
.band__item svg{margin-top:0;width:14px;height:14px}
.band__item blockquote{margin:0;flex:1}
.band__item figcaption{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
@media (max-width:900px){
  .band{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.8rem;
    margin-inline:calc(-1 * var(--pad));padding:.2rem var(--pad) 1.4rem;scroll-padding-inline:var(--pad);scrollbar-width:none}
  .band::-webkit-scrollbar{display:none}
  .band__item{flex:0 0 82%;scroll-snap-align:start}
}

/* ---- Vídeo da micropigmentação é vertical: no celular aparece inteiro ---- */
@media (max-width:980px){.svc-panel__media:has(video){aspect-ratio:9/16}}
