/* Molde institucional da Vitrine, versão 2 (17/10/2026): fotografia em destaque, carrossel no topo,
   trilho de terapias, história em capítulos. Padrão da Academia Auricular (faixa de cores, títulos
   condensados com palavra em itálico, números de índice, filetes finos), em sálvia, areia e bege. */
:root{
  --papel:#F6F1E7;
  --areia:#EBE2D0;
  --areia-2:#DFD3BB;
  --cartao:#FBF8F1;
  --salvia:#8FA088;
  --salvia-2:#B9C5B1;
  --salvia-3:#DCE3D3;
  --musgo:#4C6150;
  --floresta:#26352C;
  --suave:#56635A;
  --linha:#D8CDB6;
  --barro:#A8714F;
  --barro-escuro:#8A5738;
  --zap:#25D366;
  --raio:2px;
  --largura:1280px;
  --ease:cubic-bezier(.22,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papel);color:var(--floresta);font:400 16.5px/1.65 "Albert Sans",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,picture{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;font-family:"Oswald","Arial Narrow",sans-serif;font-weight:400;letter-spacing:-.005em;text-wrap:balance}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
em,.dest{font-family:"Spectral",Georgia,serif;font-style:italic;font-weight:300;color:var(--barro);letter-spacing:-.015em}
:focus-visible{outline:2px solid var(--musgo);outline-offset:3px}
.pular{position:absolute;left:-999px;top:8px;background:var(--floresta);color:#fff;padding:10px 16px;z-index:100}
.pular:focus{left:8px}
.wrap{width:100%;max-width:var(--largura);margin-inline:auto;padding-inline:clamp(20px,4vw,52px)}

/* faixa de cores e barra do topo */
.faixa-cores{display:flex;height:5px}
.faixa-cores i{flex:1;display:block}
.faixa-cores i:nth-child(1){background:var(--barro)}
.faixa-cores i:nth-child(2){background:var(--floresta)}
.faixa-cores i:nth-child(3){background:var(--areia-2)}
.faixa-cores i:nth-child(4){background:var(--salvia)}
.faixa-cores i:nth-child(5){background:var(--salvia-2)}
.barra-topo{border-bottom:1px solid var(--linha);font:600 10.5px/1 "Albert Sans",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--suave)}
.barra-topo .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:11px}
.barra-links{display:flex;gap:22px}
.barra-links a:hover{color:var(--musgo)}

/* cabeçalho */
.cab{position:sticky;top:0;z-index:50;background:rgba(246,241,231,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--linha)}
.cab-int{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-block:14px}
.logo{display:flex;align-items:center;gap:13px;flex-shrink:0}
.logo svg{width:44px;height:44px;color:var(--musgo)}
.logo-txt{display:flex;flex-direction:column;gap:5px}
.logo-txt b{font:400 27px/1 "Spectral",Georgia,serif;letter-spacing:-.02em;color:var(--floresta)}
.logo-txt small{font:600 9px/1 "Albert Sans",sans-serif;letter-spacing:.27em;text-transform:uppercase;color:var(--barro-escuro)}
.menu{display:flex;align-items:center;gap:clamp(16px,2.2vw,30px);font:600 11.5px/1 "Albert Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--floresta)}
.menu a{position:relative;padding-block:8px}
.menu a:not(.menu-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1.5px;background:var(--barro);transition:right .3s var(--ease)}
.menu a:not(.menu-cta):hover::after,.menu a[aria-current="page"]::after{right:0}
.menu-cta{display:none}
.cab-btn{padding:13px 22px;flex-shrink:0}
.menu-check,.burger{display:none}

/* botões */
.btn{display:inline-flex;align-items:center;gap:12px;padding:17px 30px;border-radius:var(--raio);font:600 11.5px/1.2 "Albert Sans",sans-serif;letter-spacing:.16em;text-transform:uppercase;transition:transform .3s var(--ease),background .25s ease,color .25s ease,box-shadow .3s ease;border:1px solid transparent;cursor:pointer}
.btn svg{width:16px;height:16px;flex-shrink:0;transition:transform .3s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn-escuro{background:var(--musgo);color:#FBF8F1}
.btn-escuro:hover{background:var(--floresta);transform:translateY(-2px);box-shadow:0 16px 30px -18px rgba(38,53,44,.75)}
.btn-contorno{border-color:var(--floresta);color:var(--floresta)}
.btn-contorno:hover{background:var(--floresta);color:#FBF8F1}
.btn-claro{background:#FBF8F1;color:var(--floresta)}
.btn-claro:hover{background:#fff;transform:translateY(-2px)}
.btn-zap{background:var(--zap);color:#0E3B1E}
.btn-zap:hover{background:#2FE070;transform:translateY(-2px);box-shadow:0 16px 30px -16px rgba(37,211,102,.8)}
.link-seta{display:inline-flex;align-items:center;gap:10px;font:600 11.5px/1.2 "Albert Sans",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--musgo);border-bottom:1px solid var(--salvia-2);padding-bottom:6px;transition:color .25s ease,border-color .25s ease}
.link-seta svg{width:15px;height:15px;transition:transform .3s var(--ease)}
.link-seta:hover{color:var(--barro-escuro);border-color:var(--barro)}
.link-seta:hover svg{transform:translateX(4px)}

/* tipografia de seção */
.olho{display:inline-flex;align-items:center;gap:12px;font:600 11px/1.4 "Albert Sans",sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--barro-escuro)}
.olho::before{content:"";width:28px;height:1px;background:var(--barro)}
.h-sec{font-size:clamp(36px,4.8vw,66px);line-height:1.02;margin-top:18px;font-weight:400}
.h-sec .dest{font-size:1.04em}
.lede{font-size:clamp(16.5px,1.5vw,19px);line-height:1.7;color:var(--suave);max-width:58ch}
.sec{padding-block:clamp(72px,10vw,132px)}
.sec-areia{background:var(--areia)}
.sec-escura{background:var(--floresta);color:#F1ECDF}
.sec-escura .olho{color:var(--salvia-2)}
.sec-escura .olho::before{background:var(--salvia)}
.sec-escura .lede{color:#C9D2C4}
.sec-escura .dest{color:#E0B48F}
.num{font:400 15px/1 "Oswald",sans-serif;letter-spacing:.14em;color:var(--barro)}
/* cabeçalho de seção em duas colunas, como no site da Academia: título à esquerda, texto à direita */
.cab-sec{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,5vw,80px);align-items:end;margin-bottom:clamp(34px,5vw,64px)}
.cab-sec .lado-sec{justify-self:end;display:flex;flex-direction:column;gap:22px;align-items:flex-start;max-width:44ch}
.cab-sec .acoes{display:flex;gap:18px;align-items:center}

/* imagens */
.ph{background:linear-gradient(160deg,var(--salvia-3),var(--areia));width:100%;height:100%}
.foto{width:100%;height:100%;object-fit:cover}

/* HERO: carrossel de fotografia ao fundo */
.hero-c{position:relative;overflow:hidden;background:var(--areia);min-height:clamp(600px,calc(100vh - 150px),840px)}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.1s ease,visibility 1.1s}
.slide.ativo{opacity:1;visibility:visible;z-index:2}
.slide .fundo{position:absolute;inset:0 0 0 14%;overflow:hidden}
.slide .fundo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,62% 50%);transform:scale(1.06)}
.slide.ativo .fundo img{animation:kb 9.5s ease-out forwards}
@keyframes kb{from{transform:scale(1.07)}to{transform:scale(1)}}
.slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,241,231,1) 0%,rgba(246,241,231,.97) 24%,rgba(246,241,231,.7) 38%,rgba(246,241,231,.2) 54%,rgba(246,241,231,0) 68%);pointer-events:none}
.slide-int{position:relative;z-index:3;height:100%;display:flex;align-items:center;padding-bottom:70px}
.slide-txt{max-width:640px}
.slide h2,.slide h1{font-size:clamp(52px,7.6vw,118px);line-height:.93;margin-top:22px;font-weight:400}
.slide h2 .dest,.slide h1 .dest{display:block;font-size:.98em;margin-top:.04em}
.slide .lede{margin-top:26px;max-width:46ch}
.slide-botoes{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.slide .anima{transform:translateY(14px)}
.slide.ativo .anima{animation:sobe .9s var(--ease) both}
.slide.ativo .anima.d1{animation-delay:.12s}.slide.ativo .anima.d2{animation-delay:.24s}.slide.ativo .anima.d3{animation-delay:.38s}
@keyframes sobe{from{transform:translateY(16px)}to{transform:none}}
.hero-ctl{position:absolute;left:0;right:0;bottom:0;z-index:5}
.hero-ctl::before{content:"";position:absolute;inset:-90px 0 0 0;background:linear-gradient(to top,rgba(246,241,231,.94) 0%,rgba(246,241,231,.6) 45%,rgba(246,241,231,0) 100%);z-index:-1;pointer-events:none}
.hero-ctl .wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:26px}
.progresso{display:flex;gap:10px;flex:1;max-width:520px}
.progresso button{flex:1;display:flex;flex-direction:column;gap:9px;text-align:left;background:none;border:0;padding:0;cursor:pointer;color:var(--floresta);font:600 10px/1.3 "Albert Sans",sans-serif;letter-spacing:.16em;text-transform:uppercase}
.progresso button span.barra{display:block;height:2px;background:rgba(38,53,44,.22);position:relative;overflow:hidden}
.progresso button span.barra::after{content:"";position:absolute;inset:0;background:var(--musgo);transform:scaleX(0);transform-origin:left}
.progresso button.ativo span.barra::after{animation:enche var(--tempo,7s) linear forwards}
.progresso button.feito span.barra::after{transform:scaleX(1)}
.paused .progresso button.ativo span.barra::after{animation-play-state:paused}
@keyframes enche{to{transform:scaleX(1)}}
.progresso button em{font:600 10px/1.3 "Albert Sans",sans-serif;color:inherit;letter-spacing:.16em;opacity:.8;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.contador{display:flex;align-items:flex-end;gap:18px}
.contador b{font:400 clamp(44px,5vw,66px)/.9 "Oswald",sans-serif;color:var(--floresta)}
.contador small{font:600 10.5px/1.5 "Albert Sans",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--suave);padding-bottom:6px}
.setas{display:flex;gap:8px}
.setas button{width:46px;height:46px;border:1px solid var(--floresta);background:rgba(246,241,231,.7);color:var(--floresta);display:grid;place-items:center;cursor:pointer;transition:background .25s ease,color .25s ease}
.setas button:hover{background:var(--floresta);color:#FBF8F1}
.setas svg{width:18px;height:18px}

/* fatos */
.fatos{border-block:1px solid var(--linha);background:var(--cartao)}
.fatos-grade{display:grid;grid-template-columns:repeat(4,1fr)}
.fato{padding:28px clamp(14px,2vw,28px);border-left:1px solid var(--linha);display:flex;flex-direction:column;gap:6px}
.fato:first-child{border-left:0;padding-left:0}
.fato b{font:400 clamp(26px,3vw,40px)/1 "Oswald",sans-serif;color:var(--musgo)}
.fato span{font:600 10.5px/1.5 "Albert Sans",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--suave)}

/* pilares */
.pilares{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--floresta)}
.pilar{padding:30px clamp(18px,2.4vw,36px) 8px 0;display:flex;flex-direction:column;gap:14px}
.pilar+.pilar{border-left:1px solid var(--linha);padding-left:clamp(18px,2.4vw,36px)}
.pilar h3{font-size:clamp(25px,2.4vw,33px);line-height:1.1}
.pilar p{color:var(--suave)}

/* terapia em destaque: foto grande */
.destaque-t{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);background:var(--musgo);color:#F4F0E4;margin-bottom:clamp(16px,2.4vw,28px)}
.destaque-t .foto-lado{position:relative;min-height:min(520px,60vw);overflow:hidden}
.destaque-t .foto-lado .foto{position:absolute;inset:0;transition:transform 1.4s var(--ease)}
.destaque-t:hover .foto-lado .foto{transform:scale(1.04)}
.destaque-t .txt{padding:clamp(28px,4.4vw,64px);display:flex;flex-direction:column;justify-content:center;gap:20px}
.destaque-t .etq{font:600 10.5px/1 "Albert Sans",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#E8C9AE}
.destaque-t h3{font-size:clamp(38px,4.6vw,64px);line-height:1}
.destaque-t p{color:#DDE4D6;max-width:46ch}
.destaque-t .meta{border-color:rgba(255,255,255,.3);color:#E8EDE2}
.destaque-t .btn{align-self:flex-start}
.metas{display:flex;flex-wrap:wrap;gap:8px}
.meta{display:inline-flex;align-items:center;padding:7px 12px;border:1px solid var(--linha);font:600 10px/1 "Albert Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--suave)}

/* trilho horizontal de terapias */
.trilho-cab{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:20px}
.trilho{display:flex;gap:clamp(14px,2vw,24px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px;margin-inline:calc(-1 * clamp(20px,4vw,52px));padding-inline:clamp(20px,4vw,52px);scroll-padding-inline:clamp(20px,4vw,52px)}
.trilho::-webkit-scrollbar{display:none}
.t-card{flex:0 0 clamp(270px,26vw,350px);scroll-snap-align:start;background:var(--cartao);border:1px solid var(--linha);display:flex;flex-direction:column;transition:transform .45s var(--ease),border-color .35s ease,box-shadow .45s ease}
.t-card:hover{transform:translateY(-5px);border-color:var(--salvia);box-shadow:0 30px 44px -32px rgba(38,53,44,.5)}
.t-card .t-foto{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--areia)}
.t-card .t-foto .foto{transition:transform 1.2s var(--ease)}
.t-card:hover .t-foto .foto{transform:scale(1.05)}
.t-card .t-foto .num{position:absolute;left:16px;top:14px;color:#FBF8F1;font-size:17px;text-shadow:0 1px 14px rgba(0,0,0,.45)}
.t-card .corpo{padding:24px 24px 26px;display:flex;flex-direction:column;gap:12px;flex:1}
.t-card h3{font-size:clamp(25px,2.2vw,30px);line-height:1.1}
.t-card p{color:var(--suave);font-size:15.5px;line-height:1.6;flex:1}
.t-card .link-seta{align-self:flex-start;margin-top:4px}
.trilho-ctl{display:flex;gap:8px}
.trilho-ctl button{width:46px;height:46px;border:1px solid var(--floresta);background:transparent;color:var(--floresta);display:grid;place-items:center;cursor:pointer;transition:background .25s ease,color .25s ease}
.trilho-ctl button:hover{background:var(--floresta);color:#FBF8F1}
.trilho-ctl svg{width:18px;height:18px}

/* faixa de foto com citação */
.faixa-foto{position:relative;min-height:clamp(420px,52vw,640px);display:flex;align-items:center;overflow:hidden;color:#F6F1E7;background:var(--floresta)}
.faixa-foto .fundo{position:absolute;inset:0}
.faixa-foto .fundo .foto{object-position:50% 50%}
.faixa-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,36,29,.82) 0%,rgba(24,36,29,.55) 45%,rgba(24,36,29,.15) 100%)}
.faixa-foto .wrap{position:relative;z-index:2;padding-block:70px}
.faixa-foto blockquote{margin:0;max-width:820px}
.faixa-foto blockquote p{font:300 clamp(34px,5.2vw,76px)/1.02 "Oswald",sans-serif;letter-spacing:-.01em}
.faixa-foto blockquote p .dest{color:#E8C3A0}
.faixa-foto cite{display:block;margin-top:28px;font:600 11px/1.5 "Albert Sans",sans-serif;letter-spacing:.24em;text-transform:uppercase;font-style:normal;color:var(--salvia-2)}

/* primeira sessão */
.sessao{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,6vw,96px);align-items:center}
.sessao .foto-q{position:relative;aspect-ratio:3/2;overflow:hidden;margin-top:40px;max-width:560px}
.passos{display:flex;flex-direction:column}
.passo{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:28px 0;border-top:1px solid rgba(255,255,255,.18)}
.passo:last-child{border-bottom:1px solid rgba(255,255,255,.18)}
.passo .num{color:#E0B48F;font-size:22px}
.passo h3{font-size:clamp(24px,2.3vw,31px);line-height:1.15}
.passo p{margin-top:8px;color:#C9D2C4}
.sessao .btn{margin-top:34px}

/* equipe */
.equipe-grade{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(16px,2.4vw,32px)}
.pessoa{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);background:var(--cartao);border:1px solid var(--linha)}
.pessoa-foto{position:relative;min-height:380px;background:linear-gradient(160deg,var(--salvia-3),var(--areia));overflow:hidden}
.pessoa-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 18%}
.pessoa-foto .ini{position:absolute;left:20px;bottom:6px;font:300 220px/1 "Oswald",sans-serif;color:transparent;-webkit-text-stroke:1.5px rgba(251,248,241,.9);user-select:none;z-index:1}
.pessoa-foto .foto,.pessoa-foto .ph{position:absolute;inset:0;filter:saturate(.8)}
.pessoa-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(38,53,44,.45),rgba(38,53,44,0) 60%)}
.pessoa-foto .selo-foto{position:absolute;left:14px;top:14px;font:600 9.5px/1.4 "Albert Sans",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--musgo);background:rgba(251,248,241,.85);padding:6px 9px}
.pessoa-txt{padding:30px 28px;display:flex;flex-direction:column;gap:12px;justify-content:center}
.pessoa-txt .fun{font:600 10.5px/1.4 "Albert Sans",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--barro-escuro)}
.pessoa-txt h3{font-size:clamp(30px,2.8vw,40px);line-height:1.05}
.pessoa-txt p{color:var(--suave);font-size:15.5px;line-height:1.6}
.pessoa-txt .link-seta{align-self:flex-start;margin-top:8px}

/* história na home: foto grande + texto */
.historia-home{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;background:var(--cartao);border:1px solid var(--linha);margin-top:clamp(16px,2.4vw,32px)}
.historia-home .foto-lado{position:relative;min-height:440px;overflow:hidden}
.historia-home .foto-lado .foto{position:absolute;inset:0}
.historia-home .txt{padding:clamp(28px,4.4vw,64px);display:flex;flex-direction:column;justify-content:center;gap:18px}
.historia-home h3{font-size:clamp(34px,3.8vw,54px);line-height:1.02}
.historia-home p{color:var(--suave);max-width:46ch}
.historia-home .btn{align-self:flex-start;margin-top:8px}

/* espaço: mosaico de fotos */
.mosaico{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:clamp(10px,1.4vw,18px);height:clamp(420px,48vw,640px)}
.mosaico figure{margin:0;position:relative;overflow:hidden;background:var(--areia)}
.mosaico figure:first-child{grid-row:1/3}
.mosaico figure .foto{transition:transform 1.4s var(--ease)}
.mosaico figure:hover .foto{transform:scale(1.04)}
.mosaico figcaption{position:absolute;left:14px;bottom:12px;font:600 10px/1.4 "Albert Sans",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#FBF8F1;text-shadow:0 1px 12px rgba(0,0,0,.55)}
.nota-ilustrativa{margin-top:16px;font-size:13.5px;color:var(--suave);max-width:70ch}
.espaco-info{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,6vw,90px);margin-top:clamp(40px,6vw,80px);align-items:start}
.lista-linhas li{display:flex;gap:18px;align-items:baseline;padding:18px 0;border-top:1px solid var(--linha);font-size:17.5px}
.lista-linhas li:last-child{border-bottom:1px solid var(--linha)}
.lista-linhas .num{flex-shrink:0;width:30px}
.endereco-cartao{background:var(--musgo);color:#F4F0E4;padding:clamp(28px,4vw,52px);display:flex;flex-direction:column;gap:20px}
.endereco-cartao h3{font-size:clamp(28px,3vw,40px);line-height:1.05}
.endereco-cartao address{font-style:normal;color:#DDE4D6;line-height:1.7}
.endereco-cartao .olho{color:#E8C9AE}
.endereco-cartao .olho::before{background:#E8C9AE}
.endereco-cartao .btn{align-self:flex-start}

/* também */
.tambem{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.4vw,32px)}
.tambem-item{padding-top:22px;border-top:1px solid var(--floresta);display:flex;flex-direction:column;gap:10px}
.tambem-item h3{font-size:28px;line-height:1.1}
.tambem-item p{color:var(--suave)}
.nota{margin-top:30px;font:600 11px/1.5 "Albert Sans",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--barro-escuro)}

/* chamada final com foto */
.final{position:relative;overflow:hidden;color:#F6F1E7;background:var(--floresta);min-height:clamp(420px,46vw,560px);display:flex;align-items:center}
.final .fundo{position:absolute;inset:0}
.final::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,36,29,.86) 0%,rgba(24,36,29,.6) 50%,rgba(24,36,29,.2) 100%)}
.final-int{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,5vw,80px);align-items:center;padding-block:clamp(64px,8vw,100px)}
.final h2{font-size:clamp(42px,5.8vw,84px);line-height:.98}
.final h2 .dest{display:block;color:#E8C3A0}
.final p{color:#D5DCCF;margin-top:20px;max-width:48ch}
.final .btn{justify-self:start}

/* páginas internas: hero com foto */
.p-hero{position:relative;overflow:hidden;background:var(--areia);border-bottom:1px solid var(--linha);min-height:clamp(420px,46vw,580px);display:flex;align-items:center}
.p-hero .fundo{position:absolute;inset:0 0 0 14%}
.p-hero .fundo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,65% 50%);animation:kb 11s ease-out forwards}
.p-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,241,231,1) 0%,rgba(246,241,231,.97) 28%,rgba(246,241,231,.78) 42%,rgba(246,241,231,.25) 58%,rgba(246,241,231,0) 72%)}
.p-hero .wrap{position:relative;z-index:2;padding-block:clamp(48px,7vw,90px)}
.p-hero h1{font-size:clamp(48px,7vw,104px);line-height:.96;margin-top:20px;max-width:12ch}
.p-hero h1 .dest{display:block}
.p-hero .lede{margin-top:26px;max-width:36ch}
.p-hero .anima{animation:sobe .9s var(--ease) both}.p-hero .anima.d1{animation-delay:.1s}.p-hero .anima.d2{animation-delay:.22s}

/* terapias (página) */
.indice{display:flex;flex-wrap:wrap;gap:10px;padding-block:22px;border-bottom:1px solid var(--linha)}
.indice a{padding:10px 16px;border:1px solid var(--linha);font:600 10.5px/1 "Albert Sans",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--suave);transition:all .25s ease}
.indice a:hover{border-color:var(--musgo);color:var(--musgo);background:var(--cartao)}
.t-linha{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);padding-block:clamp(40px,6vw,80px);border-bottom:1px solid var(--linha);scroll-margin-top:96px;align-items:center}
.t-linha:nth-of-type(even) .t-foto-l{order:2}
.t-foto-l{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--areia)}
.t-foto-l .foto{transition:transform 1.4s var(--ease)}
.t-linha:hover .t-foto-l .foto{transform:scale(1.03)}
.t-linha .num{font-size:24px;font-weight:300}
.t-linha h2{font-size:clamp(34px,4.2vw,58px);line-height:1.02;margin-top:8px}
.t-linha .texto{margin-top:20px;color:var(--suave);max-width:54ch;font-size:17.5px}
.t-linha dl{margin:26px 0 0;display:grid;grid-template-columns:repeat(3,auto);gap:10px 34px;justify-content:start}
.t-linha dt{font:600 10px/1 "Albert Sans",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--barro-escuro)}
.t-linha dd{margin:6px 0 0;font-size:16.5px}
.t-linha .btn{margin-top:30px}
.ajuda{background:var(--areia);padding:clamp(28px,4vw,56px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center;margin-top:clamp(40px,5vw,72px)}
.ajuda h2{font-size:clamp(30px,3.6vw,48px);line-height:1.05}
.ajuda p{margin-top:12px;color:var(--suave);max-width:56ch}

/* quem somos: capítulos */
.capitulo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,100px);align-items:center;padding-block:clamp(48px,7vw,100px);border-top:1px solid var(--linha)}
.capitulo:nth-of-type(even) .cap-foto{order:2}
.cap-foto{position:relative;aspect-ratio:5/4;overflow:hidden;background:var(--areia)}
.cap-foto .foto{transition:transform 1.4s var(--ease)}
.capitulo:hover .cap-foto .foto{transform:scale(1.03)}
.cap-num{font:300 clamp(80px,10vw,150px)/.8 "Oswald",sans-serif;color:var(--areia-2);letter-spacing:-.02em}
.capitulo h2{font-size:clamp(34px,4vw,56px);line-height:1.02;margin-top:10px}
.capitulo .corpo{margin-top:22px;display:flex;flex-direction:column;gap:16px;color:var(--suave);font-size:17.5px;max-width:54ch}
.bloco-pessoa{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,96px);padding-block:clamp(40px,6vw,84px);border-top:1px solid var(--linha);align-items:start}
.bloco-pessoa.inv{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.bloco-pessoa.inv .pessoa-foto{order:2}
.bloco-pessoa .pessoa-foto{min-height:0;aspect-ratio:4/5;border:1px solid var(--linha)}
.bloco-pessoa .pessoa-foto .ini{font-size:min(320px,46vw)}
.bloco-pessoa h2{font-size:clamp(36px,4.4vw,60px);line-height:1}
.bloco-pessoa .fun{font:600 10.5px/1.4 "Albert Sans",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--barro-escuro);margin-top:12px}
.bio{margin-top:24px;display:flex;flex-direction:column;gap:16px;color:var(--suave);font-size:17.5px;max-width:62ch}
.form{margin-top:30px;padding-top:22px;border-top:1px solid var(--linha)}
.form h3{font:600 10.5px/1 "Albert Sans",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--barro-escuro);margin-bottom:14px}
.form li{display:flex;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--linha);font-size:15.5px}
.form li::before{content:"";width:7px;height:1px;background:var(--barro);flex-shrink:0;transform:translateY(-4px)}
.form li i{font-style:normal;margin-left:auto;font:600 9.5px/1 "Albert Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--barro-escuro);border:1px solid var(--linha);padding:5px 8px;white-space:nowrap}
.atua{margin-top:22px;font-size:15.5px;color:var(--suave)}
.atua b{display:block;font:600 10.5px/1 "Albert Sans",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--barro-escuro);margin-bottom:8px}
.ig{display:inline-flex;align-items:center;gap:8px;margin-top:20px;font:600 11.5px/1 "Albert Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--musgo)}
.ig svg{width:17px;height:17px}
.valores{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.valores span{padding:12px 22px;border:1px solid rgba(38,53,44,.35);font:300 clamp(20px,2.2vw,28px)/1 "Oswald",sans-serif;letter-spacing:.01em;color:var(--floresta)}

/* espaço (página) */
.estrutura{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--floresta);margin-top:44px}
.est-item{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:30px clamp(14px,2vw,30px) 30px 0;border-bottom:1px solid var(--linha)}
.est-item:nth-child(even){padding-left:clamp(14px,2vw,30px);border-left:1px solid var(--linha)}
.est-item h3{font-size:clamp(25px,2.4vw,33px);line-height:1.1}
.est-item p{margin-top:8px;color:var(--suave)}
.aviso{margin-top:40px;padding:22px 26px;border:1px dashed var(--salvia);background:var(--cartao);display:flex;gap:16px;align-items:center;color:var(--suave)}
.aviso svg{width:22px;height:22px;color:var(--musgo);flex-shrink:0}
.mapa{position:relative;border:1px solid var(--linha);background:var(--areia);overflow:hidden}
.mapa iframe{display:block;width:100%;height:clamp(300px,38vw,460px);border:0;filter:grayscale(.35) sepia(.12) saturate(.85);transition:filter .6s ease}
.mapa:hover iframe{filter:none}
.mapa-rotulo{position:absolute;left:16px;top:16px;z-index:2;background:rgba(251,248,241,.95);border:1px solid var(--linha);padding:9px 14px;font:600 10.5px/1 "Albert Sans",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--musgo)}

/* dúvidas */
.faq{max-width:920px;border-top:1px solid var(--floresta)}
.faq details{border-bottom:1px solid var(--linha)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;font:400 clamp(23px,2.5vw,32px)/1.15 "Oswald",sans-serif}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:300 36px/1 "Oswald",sans-serif;color:var(--barro);transition:transform .3s var(--ease);flex-shrink:0}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 28px;color:var(--suave);font-size:17.5px;max-width:70ch}
.faq details[open] summary{color:var(--musgo)}
.duvidas-grade{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.5fr);gap:clamp(30px,6vw,90px);align-items:start}
.duvidas-grade .lado{position:sticky;top:110px;aspect-ratio:3/4;overflow:hidden}

/* contato */
.contato-grade{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,24px);margin-bottom:clamp(28px,4vw,48px)}
.c-card{background:var(--cartao);border:1px solid var(--linha);padding:30px 28px;display:flex;flex-direction:column;gap:12px}
.c-card > svg{width:26px;height:26px;color:var(--musgo)}
.c-card h3{font-size:26px;line-height:1.1}
.c-card p,.c-card address{font-style:normal;color:var(--suave);font-size:16px;line-height:1.6}
.c-card .link-seta{align-self:flex-start;margin-top:auto}
.contato-acoes{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}

/* rodapé */
.rodape{background:var(--floresta);color:#DCE3D3;padding-block:clamp(52px,6vw,84px) 28px}
.rodape-grade{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:clamp(24px,4vw,56px)}
.rodape .logo svg{color:var(--salvia-2)}
.rodape .logo-txt b{color:#F4F0E4}
.rodape .logo-txt small{color:#E0B48F}
.rodape .sobre{margin-top:20px;font-size:15px;line-height:1.65;color:#B9C5B1;max-width:36ch}
.rodape h4{font:600 10.5px/1 "Albert Sans",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#E0B48F;margin-bottom:18px}
.rodape li+li{margin-top:11px}
.rodape li a,.rodape address{font-style:normal;font-size:15px;color:#DCE3D3;line-height:1.7}
.rodape li a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.rodape-fim{margin-top:clamp(34px,5vw,64px);padding-top:22px;border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:13px;color:#98A793}

/* botão flutuante */
.zap-flutuante{position:fixed;right:20px;bottom:20px;z-index:60;display:inline-flex;align-items:center;gap:10px;background:var(--zap);color:#0E3B1E;padding:14px 20px 14px 16px;border-radius:999px;font:600 12px/1 "Albert Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 16px 34px -14px rgba(14,59,30,.65);transition:transform .3s var(--ease)}
.zap-flutuante:hover{transform:translateY(-3px)}
.zap-flutuante svg{width:22px;height:22px}

/* revelar ao rolar: o conteúdo nunca fica escondido sem JavaScript */
.js .rev{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .rev.vis{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .slide.ativo .fundo img,.p-hero .fundo img{animation:none;transform:none}
  .slide.ativo .anima,.p-hero .anima{animation:none}
  .js .rev{opacity:1;transform:none;transition:none}
  .btn,.t-card,.foto{transition:none!important}
}

/* telas médias e celular: ajustes ficam no fim por ordem de fonte */
@media (min-width:901px){.faixa-foto .fundo{background-attachment:fixed}}
@media (max-width:1100px){
  .menu{gap:16px;font-size:10.5px;letter-spacing:.1em}
  .logo-txt b{font-size:24px}
  .rodape-grade{grid-template-columns:1fr 1fr}
  .pessoa{grid-template-columns:1fr}
  .pessoa-foto{min-height:300px}
}
@media (max-width:900px){
  .burger{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;cursor:pointer;margin-right:-8px;align-items:center}
  .burger i{display:block;width:24px;height:1.5px;background:var(--floresta);transition:transform .3s ease,opacity .3s ease}
  .menu-check:checked ~ .burger i:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  .menu-check:checked ~ .burger i:nth-child(2){opacity:0}
  .menu-check:checked ~ .burger i:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
  .menu{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--papel);border-bottom:1px solid var(--linha);padding:6px clamp(20px,4vw,52px) 22px;display:none;font-size:12px;letter-spacing:.16em;box-shadow:0 24px 40px -30px rgba(38,53,44,.5)}
  .menu a{padding:17px 0;border-bottom:1px solid var(--linha)}
  .menu a:not(.menu-cta)::after{display:none}
  .menu-check:checked ~ .menu{display:flex}
  .cab-btn{display:none}
  .menu-cta{display:inline-flex;justify-content:center;margin-top:18px;border-bottom:0!important;background:var(--zap);color:#0E3B1E;border-radius:var(--raio)}
  .cab-sec{grid-template-columns:1fr;align-items:start}
  .cab-sec .lede{justify-self:start}
  .cab-sec .acoes{justify-content:flex-start}
  .destaque-t,.sessao,.final-int,.historia-home,.espaco-info,.t-linha,.capitulo,.bloco-pessoa,.bloco-pessoa.inv,.duvidas-grade,.ajuda{grid-template-columns:1fr}
  .t-linha:nth-of-type(even) .t-foto-l,.capitulo:nth-of-type(even) .cap-foto,.bloco-pessoa.inv .pessoa-foto{order:0}
  .bloco-pessoa .pessoa-foto{max-width:420px}
  .equipe-grade{grid-template-columns:1fr}
  .pessoa{grid-template-columns:minmax(0,.7fr) minmax(0,1fr)}
  .contato-grade{grid-template-columns:1fr}
  .duvidas-grade .lado{display:none}
  .sessao .foto-q{max-width:none;aspect-ratio:3/2;margin-top:28px}
  .mosaico{grid-template-columns:1fr 1fr;grid-template-rows:auto;height:auto}
  .mosaico figure{aspect-ratio:4/3}
  .mosaico figure:first-child{grid-row:auto;grid-column:1/3;aspect-ratio:16/10}
  /* carrossel no celular: foto em cima, texto embaixo */
  .hero-c{min-height:900px}
  .hero-ctl{background:var(--papel);border-top:1px solid var(--linha)}
  .hero-ctl::before{display:none}
  .hero-ctl .wrap{padding-top:14px;padding-bottom:16px;align-items:center}
  .slide{display:flex;flex-direction:column}
  .slide .fundo{position:relative;flex:0 0 40%;inset:auto;left:auto}
  .slide::after{display:none}
  .slide-int{flex:1;align-items:flex-start;padding-top:26px;padding-bottom:96px;background:var(--papel)}
  .slide h2,.slide h1{font-size:clamp(46px,13vw,66px);margin-top:14px}
  .slide .lede{margin-top:16px;font-size:16px}
  .slide-botoes{margin-top:22px}
  .p-hero{min-height:0;flex-direction:column;align-items:stretch}
  .p-hero .fundo{position:relative;height:240px;inset:auto;left:auto}
  .p-hero .lede{max-width:none}
  .p-hero::after{display:none}
  .p-hero .wrap{background:var(--papel)}
  .p-hero h1{max-width:none}
  .faixa-foto::after{background:rgba(24,36,29,.62)}
  .final::after{background:rgba(24,36,29,.68)}
  .t-linha dl{grid-template-columns:repeat(2,auto)}
}
@media (max-width:700px){
  .barra-topo .wrap{justify-content:center}
  .barra-links{display:none}
  .fatos-grade{grid-template-columns:repeat(2,1fr)}
  .fato:nth-child(3){border-left:0;padding-left:0}
  .fato:nth-child(n+3){border-top:1px solid var(--linha)}
  .pilares{grid-template-columns:1fr}
  .pilar,.pilar+.pilar{padding:26px 0;border-left:0;border-bottom:1px solid var(--linha)}
  .tambem{grid-template-columns:1fr}
  .estrutura{grid-template-columns:1fr}
  .est-item:nth-child(even){padding-left:0;border-left:0}
  .pessoa{grid-template-columns:1fr}
  .rodape-grade{grid-template-columns:1fr}
  .passo{grid-template-columns:48px 1fr}
  .zap-flutuante{padding:15px;right:16px;bottom:16px}
  .zap-flutuante span{display:none}
  .zap-flutuante svg{width:26px;height:26px}
  .t-card{flex-basis:78vw}
  .contador small{display:none}
  .progresso button em{display:none}
  .setas button{width:42px;height:42px}
  .trilho-ctl{display:none}
  .t-linha dl{grid-template-columns:1fr 1fr}
}
@media (max-width:480px){
  .olho{letter-spacing:.18em;font-size:10px}
  .olho::before{width:20px}
  .logo svg{width:38px;height:38px}
  .logo-txt b{font-size:22px}
  .logo-txt small{font-size:8px;letter-spacing:.2em}
  .btn{padding:15px 22px}
  .slide-botoes .btn{width:100%;justify-content:center}
}
