/* Clínica Arvorear · estilos */

@font-face{font-family:'Arvorear Display';src:url('assets/arvorear-display.woff2') format('woff2');font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-600.woff2') format('woff2');font-weight:600;font-display:swap}
/* Fallback com métricas aproximadas da Poppins: reduz o salto de layout enquanto a fonte carrega. */
@font-face{font-family:'Poppins Fallback';src:local('Arial');size-adjust:112%;ascent-override:94%;descent-override:31%;line-gap-override:9%}

:root{
  --green:#636853;--sage:#b1b2a1;--terra:#c3896d;--peach:#ddbea9;--sand:#fef8ec;--cream:#f1e4d4;
  --ink:#343a2e;
  --accent:var(--terra);                      /* terra viva só em fio, ponto e progresso; nunca em texto */
  --line:rgba(99,104,83,.2);--line-strong:rgba(99,104,83,.38);
  --display:'Arvorear Display',Georgia,'Times New Roman',serif;
  --text:Poppins,'Poppins Fallback',Arial,sans-serif;
  --wrap:1180px;--gutter:6vw;--gap:24px;
  --edge:max(6vw,calc((100vw - var(--wrap)) / 2));   /* da borda do .wrap até a borda da tela */
  --block-in:60px;                                    /* quanto um bloco de cor entra na coluna vizinha */
  --run:48px;                                         /* respiro abaixo da cabeça corrida */
  --space-s:72px;--space-m:108px;
  --ease:cubic-bezier(.2,.7,.2,1);--t-in:.32s;--t-out:.22s;
}

/* ---------- Base ---------- */
*{box-sizing:border-box}
html{scrollbar-gutter:stable;scroll-behavior:smooth;scroll-padding-top:86px;color-scheme:only light;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--sand);color:var(--ink);font:400 15px/1.75 var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,p{margin-top:0}
h1,h2{font-family:var(--display);font-weight:400;letter-spacing:-.01em;color:var(--green);text-wrap:balance}
h1{font-size:clamp(44px,4.1vw,60px);line-height:1.04;margin-bottom:32px}
h1 em{font-style:normal;color:var(--ink)}
h2{font-size:clamp(34px,3vw,44px);line-height:1.16;margin-bottom:26px}
h3{font-size:18px;font-weight:600;line-height:1.5;margin-bottom:12px}
p{text-wrap:pretty}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
img,video{display:block;max-width:100%}
img{height:auto}
figure{margin:0}
address{font-style:normal}
::selection{background:var(--peach);color:var(--ink)}
button,a,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--ink);outline-offset:4px;border-radius:2px}
section:focus,section:focus-visible{outline:none}
button:disabled{opacity:.35;cursor:default}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wrap{width:min(88%,var(--wrap));margin-inline:auto}
.section{padding:var(--space-m) 0}
.skip{position:fixed;top:-100px;left:16px;z-index:100;background:var(--green);color:var(--sand);padding:12px 20px;border-radius:999px;font-size:13px}
.skip:focus{top:12px}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:.2em;line-height:1.6;text-transform:uppercase;margin-bottom:22px}
.review-note{display:block;font-size:11px;line-height:1.7;color:var(--green);margin:26px 0 0}

/* ---------- Fólio e cabeça corrida (costura editorial 01–10) ---------- */
.folio{font-family:var(--display);font-weight:400;font-size:14px;line-height:1;letter-spacing:.04em;color:var(--green)}
.running{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin:0 0 var(--run);padding-bottom:14px;border-bottom:1px solid var(--line)}   /* quando não cabe, o nome da seção desce inteiro */
.running .folio{font-size:18px}
.running .folio-name{margin-left:auto;font:400 10px/1.6 var(--text);letter-spacing:.14em;text-transform:uppercase;color:var(--green);white-space:nowrap}

/* ---------- Grade de 12 colunas ---------- */
.hero-grid,.intro-grid,.center-heading,.approach-panel,.directory-heading,.faq-grid,.contact-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
:where(.hero-copy,.intro-grid>div:first-child,.center-heading>h2,.directory-heading>h3,.faq-grid>div:first-of-type,.contact-grid>div:first-child){grid-column:1/7}
:where(.approach-image){grid-column:1/6}
:where(.hero-collage,.intro-grid>div:last-child,.center-heading>p:last-child,.approach-panel>div:last-child,.directory-heading>p,.questions,.contact-grid>figure){grid-column:7/-1}
:where(.center-heading>.running,.faq-grid>.running){grid-column:1/-1}

/* ---------- Ações ---------- */
.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:52px;padding:15px 26px;background:var(--green);color:var(--sand);border:0;border-radius:999px;font-size:13px;font-weight:400;letter-spacing:.01em;transition:background .25s var(--ease)}
.button span{font-size:20px;line-height:1;transition:transform .3s var(--ease)}
.button:hover{background:var(--ink)}
.button:hover span{transform:translate(3px,-3px)}
.text-link{display:inline-flex;align-items:center;gap:18px;padding:6px 0;border-bottom:1px solid currentColor;font-size:12px;font-weight:600;letter-spacing:.01em;transition:opacity .25s var(--ease)}
.text-link span{font-size:16px;line-height:1;transition:transform .3s var(--ease)}
.text-link:hover{opacity:.72}
.text-link:hover span{transform:translate(2px,-2px)}
.underlink{display:flex;width:max-content;max-width:100%;align-items:center;gap:12px;font-size:12px;margin-top:22px}
.underlink span{transition:transform .3s var(--ease)}
.underlink:hover span{transform:translateY(3px)}
.card-link{display:inline-flex;align-items:center;gap:22px;padding:0;border:0;background:none;font-size:12px;font-weight:600;min-height:28px;margin-top:auto}
.card-link span{font-size:18px;line-height:1;transition:transform .3s var(--ease)}
.card-link:hover span{transform:translate(3px,-3px)}

/* ---------- Cabeçalho (transparente, sem divisória; fica na abertura) ---------- */
header{position:absolute;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px max(6%,calc((100% - var(--wrap)) / 2));background:transparent;border:0;box-shadow:none}
.brand{display:flex;gap:12px;align-items:center;color:var(--green);flex-shrink:0}
.brand img{width:46px;height:46px;object-fit:contain}
.brand span{font:30px/1 var(--display);letter-spacing:.01em}
.brand small{display:block;margin-top:5px;font:400 7px/1.4 var(--text);letter-spacing:.16em}
header nav{display:flex;align-items:center;gap:32px;font-size:12.5px;font-weight:400;background:transparent;border:0}
header nav a{position:relative;padding:8px 0}
header nav a:after{content:'';position:absolute;left:0;bottom:3px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
header nav a:hover:after,header nav a:focus-visible:after{transform:scaleX(1)}
.nav-cta{display:inline-flex;align-items:center;gap:12px;padding:9px 16px;border:1px solid var(--line-strong);border-radius:999px;font-weight:400;margin-left:8px;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}
.nav-cta:after{display:none}
.nav-cta span{margin:0;font-size:14px;line-height:1}
.nav-cta:hover,.nav-cta:focus-visible{background:var(--green);color:var(--sand);border-color:var(--green)}
.menu-toggle{display:none}

/* ---------- Fundos botânicos (suaves; só a abertura leva a textura na seção inteira) ---------- */
.botanical{position:relative;isolation:isolate}
.botanical:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/fundo-creme-folhagem.webp') center/cover no-repeat;opacity:.12}

/* ---------- Abertura: composição de capa (título em cima à esquerda, foto embaixo à direita) ---------- */
.hero{padding:186px 0 0;background:var(--sand);z-index:2}
.hero-grid{align-items:end}
.hero-copy{padding-bottom:0}
.masthead{display:flex;justify-content:space-between;gap:24px;padding-top:14px;border-top:1px solid var(--line-strong);margin-bottom:40px}
.masthead span:last-child{margin-left:auto}
.lead{font-size:15px;line-height:1.9;max-width:440px;margin:0 0 30px}
.hero-collage{position:relative;z-index:2;margin-bottom:-120px}
.hero-group>img{width:100%;aspect-ratio:3/2;object-fit:contain}
.hero-group figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:11px}
.hero-group figcaption span{font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.hero-group figcaption a{font-weight:600;white-space:nowrap}

/* ---------- A clínica: bloco pêssego à direita, a foto da abertura assenta nele ---------- */
.intro{position:relative;z-index:1;background:var(--sand);padding:0;overflow-x:clip}
.intro-grid>div:first-child{padding:176px calc(var(--block-in) - var(--gap) + 12px) 72px 0}   /* a cabeça corrida para antes do bloco pêssego */
.intro-grid>div:last-child{position:relative;isolation:isolate;padding:176px 0 72px}
.intro-grid>div:last-child::before{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:calc(-1 * var(--block-in));right:calc(-1 * var(--edge));background:var(--peach)}
.intro-grid>div:last-child::after{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:calc(-1 * var(--block-in));right:calc(-1 * var(--edge));background:url('assets/fundo-rosado-folhagem.webp') center/cover no-repeat;opacity:.1;pointer-events:none}
.intro h2{color:var(--green)}
.intro-lead{font:400 26px/1.2 var(--display);color:var(--ink);margin-bottom:22px}
.intro-grid>div:last-child>p:not(.intro-lead){max-width:48ch;font-size:14px;line-height:1.95}
.intro p:last-of-type{margin-bottom:26px}

/* ---------- Especialidades: sumário em linhas + citação de fecho ---------- */
.center-heading{margin-bottom:48px;text-align:left}
.center-heading h2{margin:0}
.center-heading>p:last-child{font-size:14px;line-height:1.95;max-width:420px;align-self:end;margin:0}
.care-grid{display:block}
.care-card:first-child{border-top:1px solid var(--line)}
.care-card{position:static;display:grid;grid-template-columns:72px minmax(0,5fr) minmax(0,6fr) auto;column-gap:32px;align-items:start;min-width:0;padding:30px 24px;margin-inline:-24px;border-top:0;border-bottom:1px solid var(--line);transition:background .3s var(--ease)}
.care-card:hover,.care-card:focus-within{background:var(--cream)}
.care-index{position:static;font:400 32px/1 var(--display);letter-spacing:0;color:var(--green);padding-top:4px}
.care-card h3{margin:0;padding-top:2px;font:400 23px/1.3 var(--text);letter-spacing:-.02em;color:var(--green)}
.care-card>p{margin:0;max-width:44ch;font-size:14px;line-height:1.8}
.card-link{margin:0;justify-self:end;align-self:start;white-space:nowrap;gap:14px}
.care-end{display:block;border-top:0;padding:0;margin-top:72px;font-size:12px}
.care-end>span{display:block;font:400 clamp(26px,2.6vw,36px)/1.2 var(--display);color:var(--green);max-width:24ch;text-wrap:balance}
.care-end>span::before{content:'';display:block;width:56px;height:1px;background:var(--accent);margin-bottom:24px}
.care-end .text-link{margin-top:28px}

/* ---------- O que orienta: bloco creme à esquerda, valores à direita ---------- */
.approach{background:var(--sand);padding:0}
.approach-image{position:relative;isolation:isolate;display:flex;align-items:center;max-width:none;margin:0;padding:72px 0}
.approach-image::before{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:calc(-1 * var(--edge));right:calc(-1 * var(--block-in));background:var(--cream)}
.approach-image img{width:100%;max-width:400px;aspect-ratio:4/5;object-fit:contain}
.approach-panel>div:last-child{padding:72px 0}
.approach h2{color:var(--green)}
.value{display:flex;gap:26px;padding:22px 0;border-top:1px solid var(--line)}
.value:last-child{border-bottom:1px solid var(--line)}
.value>span{font:400 26px/1 var(--display);letter-spacing:0;min-width:44px;color:var(--green);padding-top:2px}
.value h3{font-size:14px;font-weight:600;margin-bottom:6px}
.value p{font-size:13px;line-height:1.9;max-width:360px;margin:0}

/* ---------- Cabeças de seção e primeiro passo ---------- */
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:100px;margin-bottom:56px}
.section-heading h2{margin-bottom:0}
.section-heading>p{max-width:360px;font-size:14px;line-height:1.95;margin-bottom:6px}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.steps article{padding:26px 40px 0 0;border-top:1px solid var(--line)}
.steps article+article{border-left:1px solid var(--line);padding-left:40px}
.step-number{display:block;font:44px/1.1 var(--display);color:var(--green);margin-bottom:18px}
.steps h3{font-size:18px;font-weight:400;margin-bottom:10px}
.steps p{font-size:13.5px;line-height:1.95}

/* ---------- Equipe: retratos escalonados + expediente em linhas ---------- */
.team{background:var(--sand);padding-top:40px}
.team-group-label{max-width:none;margin:0 0 28px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;align-items:start;max-width:none;margin:0}
.team-card{padding-top:18px;border-top:1px solid var(--line)}
.team-grid>.team-card{--i:0!important}   /* as três entram juntas: sem ordem de destaque */
.team-card>img{width:100%;aspect-ratio:2/3;object-fit:contain;background:transparent;transition:transform .5s var(--ease)}
.team-card:hover>img{transform:translateY(-4px)}
.team-card h3{font:400 32px/1.1 var(--display);color:var(--green);margin:24px 0 8px}
.team-role{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-bottom:14px}
.team-card>p:not(.team-role):last-of-type{font-size:13px;line-height:1.85}
.professional-register{display:block;font-size:11px;letter-spacing:.04em;color:var(--green);margin:0 0 12px}
.team-card .text-link{font-size:11.5px}
.team-directory{margin-top:96px;padding-top:0;border-top:0}
.directory-heading{align-items:end;margin-bottom:40px}
.directory-heading h3{font:28px/1.3 var(--display);color:var(--green);margin:0;text-wrap:balance}
.directory-heading>p{font-size:13.5px;line-height:1.95;max-width:380px;margin:0}
.professional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:80px;row-gap:0;border-top:1px solid var(--line);margin-bottom:36px}
.professional-grid article{display:grid;grid-template-columns:150px 1fr;column-gap:24px;row-gap:4px;padding:20px 0;border-top:0;border-bottom:1px solid var(--line);min-width:0}
.professional-area{grid-column:1;grid-row:1/3;align-self:start;margin:0;min-height:0;padding:5px 0 0;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--green);line-height:1.7;background:none;border:0;text-align:left}
button.professional-area{cursor:pointer;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:4px;transition:text-decoration-color .25s var(--ease)}
button.professional-area:hover{text-decoration-color:currentColor}
.professional-grid h4{grid-column:2;font:400 20px/1.2 var(--display);color:var(--green);margin:0}
.professional-grid article>p:last-child{grid-column:2;max-width:none;margin:0;font-size:12.5px;line-height:1.8}

/* ---------- Espaços: visita em sequência (faixa horizontal; o vídeo toca no próprio cartão) ---------- */
.space{background:var(--sand);overflow-x:clip;padding-bottom:0}
.visit-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:18px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.visit-bar .eyebrow{margin:0}
.visit-tools{display:flex;align-items:center;gap:22px}
.video-label{display:block;font-size:10px;letter-spacing:.14em;padding:0}
.visit-nav{display:flex;gap:8px}
.visit-nav button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:50%;background:none;font-size:15px;line-height:1;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.visit-nav button:not(:disabled):hover{background:var(--green);color:var(--sand);border-color:var(--green)}
.visit-stage{--h:clamp(310px,28.6vw,412px);--pad:max(6%,calc((100% - var(--wrap)) / 2));position:relative;isolation:isolate;padding-bottom:var(--space-m)}
.visit-stage::before{content:'';position:absolute;z-index:-1;left:0;right:0;bottom:0;top:calc(8px + var(--h) * .64);background:var(--cream)}
.visit-track{position:relative;display:flex;gap:28px;list-style:none;margin:0;padding:8px var(--pad) 12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);scrollbar-width:none}
.visit-track::-webkit-scrollbar{display:none}
.visit-stop{flex:0 0 auto;width:calc(var(--h) * .8);min-width:0;scroll-snap-align:start}
.visit-stop--tall{width:calc(var(--h) * .5625)}   /* vídeos verticais 9:16: o cartão acompanha a proporção real, sem as faixas embutidas */
.visit-media{position:relative;overflow:hidden;height:var(--h);background:var(--cream)}
.visit-media img,.visit-media video{display:block;width:100%;height:100%;object-fit:cover}
.visit-media img{transition:transform .7s var(--ease)}
.visit-stop:hover .visit-media img{transform:scale(1.03)}
.visit-play{position:absolute;inset:0;z-index:1;width:100%;padding:0;border:0;background:none}
.visit-play span{position:absolute;left:16px;bottom:16px;width:54px;height:54px;border-radius:50%;background:rgba(254,248,236,.94);transition:background .25s var(--ease),transform .3s var(--ease)}
.visit-play span::before{content:'';position:absolute;left:22px;top:18px;border-style:solid;border-width:9px 0 9px 14px;border-color:transparent transparent transparent var(--green);transition:border-color .25s var(--ease)}
.visit-play:hover span{background:var(--green);transform:scale(1.06)}
.visit-play:hover span::before{border-left-color:var(--sand)}
.visit-play:focus-visible{outline:none}
.visit-play:focus-visible::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 3px var(--ink),inset 0 0 0 6px var(--sand)}
.visit-stop.is-playing img,.visit-stop.is-playing .visit-play{display:none}
.visit-caption{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;align-items:baseline;padding-top:18px;margin-top:0;border-top:2px solid transparent;transition:border-color .3s var(--ease)}
.visit-stop.is-current .visit-caption{border-top-color:var(--accent)}
.visit-caption .folio{font-size:15px}
.visit-caption h3{font:400 23px/1.2 var(--display);color:var(--green);margin:0}
.visit-caption p{grid-column:2;margin:8px 0 0;font-size:13px;line-height:1.75;max-width:32ch}
.visit-foot{margin-top:32px}
.visit-progress{position:relative;height:1px;background:var(--line)}
.visit-progress i{position:absolute;top:0;left:0;height:1px;width:calc(var(--v,.25) * 100%);transform:translateX(calc(var(--p,0) * (100% / var(--v,.25) - 100%)));background:var(--accent)}
.space-hint{font-size:12px;margin:16px 0 0}

/* ---------- Conteúdos (sem uso na página atual) ---------- */
.resources{padding-top:var(--space-m);overflow-x:clip}
.resource-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:48px;align-items:start;border-top:1px solid var(--line);padding-top:32px}
.resource-card{display:flex;flex-direction:column;min-width:0;background:transparent}
.resource-card:nth-child(2){margin-top:96px}
.resource-card:nth-child(3){margin-top:48px}
.resource-cover{border:0;padding:0;width:100%;display:block;background:transparent;overflow:hidden}
.resource-cover img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;transition:transform .5s var(--ease)}
.resource-cover:hover img{transform:scale(1.02)}
.resource-body{padding:24px 0 0;display:flex;flex-direction:column;flex:1}
.resource-body .eyebrow{font-size:10px;margin-bottom:14px}
.resource-body .eyebrow .folio{font-size:14px;line-height:1;margin-right:12px;padding-right:12px;border-right:1px solid var(--line)}
.resource-body h3{font-size:17px;font-weight:400;line-height:1.6;max-width:300px}
.resource-body p:not(.eyebrow){font-size:13px}
.resource-body .card-link{width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;margin-top:auto;justify-self:auto;align-self:auto;white-space:normal}
.resource-foot{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:56px;padding-top:24px;font-size:12.5px}
.resource-foot p{margin:0}
.voice{position:relative;isolation:isolate;background:none;margin-top:140px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;padding:0 0 56px 64px;align-items:end}
.voice::before{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:calc(-1 * var(--edge));right:18%;background:var(--cream)}
.voice>div{padding-top:56px;max-width:520px}
.voice .eyebrow{padding-bottom:14px;border-bottom:1px solid var(--line)}
.voice h3{font:400 clamp(30px,3vw,40px)/1.1 var(--display);color:var(--green);text-wrap:balance}
.voice p{font-size:14px}
.voice .review-note{font-size:11px}
.voice video{width:min(100%,270px);aspect-ratio:9/16;object-fit:contain;background:var(--green);justify-self:end;margin-top:-80px}

/* ---------- Parceiros ---------- */
.partners{background:var(--sand);padding:var(--space-s) 0;margin:0}
.partners .section-heading{margin-bottom:40px}
.partner-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.partner-list li{font:400 20px/1.5 var(--text);color:var(--green);padding:36px 20px;text-align:center}
.partner-list li+li{border-left:1px solid var(--line)}
.partner-foot{display:flex;justify-content:space-between;align-items:flex-start;gap:45px;margin-top:24px}
.partner-foot p{font-size:12.5px;line-height:1.9;max-width:560px;margin:0}
.partner-foot a{flex-shrink:0}

/* ---------- Dúvidas ---------- */
.faq{background:var(--sand);padding-top:40px}
.faq-grid>div>p:not(.eyebrow){max-width:340px;font-size:14px}
.faq-symbol{display:none}
.questions{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{cursor:pointer;list-style:none;position:relative;padding:22px 48px 22px 56px;font-size:14px;font-weight:400;line-height:1.6}
summary::-webkit-details-marker{display:none}
summary .folio{position:absolute;left:0;top:24px;font-size:22px;line-height:1}
summary:after{content:'+';position:absolute;right:0;top:18px;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line-strong);border-radius:50%;font-size:18px;font-weight:300;line-height:1;color:var(--green);transition:background .25s var(--ease),color .25s var(--ease)}
details[open] summary:after{content:'−';background:var(--green);color:var(--sand);border-color:var(--green)}
details p{font-size:13.5px;line-height:1.95;padding:0 48px 24px 56px;margin:0}

/* ---------- Contato: bloco pêssego à direita com a fachada, ficha de endereço ---------- */
.contact{position:relative;background:var(--sand);padding:0;overflow-x:clip}
.contact-grid>div:first-child{padding:var(--space-m) calc(var(--block-in) - var(--gap) + 12px) var(--space-m) 0}
.contact h2{color:var(--green)}
.contact-grid>div>p:not(.eyebrow){max-width:460px;font-size:14px;line-height:1.95;margin-bottom:28px}
.contact-grid>div>p.contact-hint{font-size:12px;margin:14px 0 0}
address{display:grid;grid-template-columns:150px 1fr;gap:12px 32px;align-items:start;margin-top:40px;padding-top:22px;border-top:1px solid var(--line)}
address .eyebrow{grid-column:1;margin:0;padding-top:4px}
address p:not(.eyebrow){grid-column:2;margin:0;font-size:14px}
address .text-link{grid-column:2;justify-self:start;font-size:12px}
.contact-grid>figure{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;max-width:none;justify-self:stretch;padding:64px 0}
.contact-grid>figure::before{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:calc(-1 * var(--block-in));right:calc(-1 * var(--edge));background:var(--peach)}
.contact-grid>figure::after{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:calc(-1 * var(--block-in));right:calc(-1 * var(--edge));background:url('assets/fundo-rosado-folhagem.webp') center/cover no-repeat;opacity:.1;pointer-events:none}
.contact figure img{width:100%;max-width:400px;aspect-ratio:4/5;object-fit:contain}
.contact figcaption{max-width:400px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.02em}

/* ---------- Rodapé como cólofon ---------- */
footer{background:var(--green);color:var(--sand);padding:64px 0 0;overflow:hidden}
footer .brand{color:var(--sand)}
footer .brand span{font-size:0;line-height:0}
footer .brand small{margin-top:0;font-size:9px;line-height:1.5;letter-spacing:.2em}
.footer-mark{margin:0 0 40px;padding-bottom:32px;border-bottom:1px solid rgba(254,248,236,.25);font:400 clamp(48px,6vw,76px)/.95 var(--display);letter-spacing:.04em;color:var(--sand);white-space:nowrap;overflow:hidden}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;padding-top:8px}
.footer-top h3{font-size:11px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}
.footer-top>div>a:not(.brand),.footer-review{display:block;margin-bottom:10px;font-size:12.5px}
.footer-top>div>a:not(.brand):hover,.footer-review:hover{text-decoration:underline;text-underline-offset:4px}
.footer-top p{font-size:12.5px;line-height:1.8;margin-top:22px;max-width:320px}
.footer-review{background:none;border:0;padding:0;text-align:left}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid rgba(254,248,236,.25);margin-top:56px;padding:22px 0 28px;font-size:11px}
.footer-bottom a span{display:inline-grid;place-items:center;width:40px;height:40px;margin-left:12px;border:1px solid rgba(254,248,236,.35);border-radius:50%;font-size:14px;transition:background .25s var(--ease),color .25s var(--ease)}
.footer-bottom a:hover span{background:var(--sand);color:var(--green)}
.footer-legal{margin-top:56px;padding-top:22px;border-top:1px solid rgba(254,248,236,.25)}
.footer-legal p{margin:0;font-size:12px;line-height:1.7;opacity:.85}
.footer-legal+.footer-bottom{margin-top:18px}

/* ---------- Diálogos: folha lateral (desktop) e folha inferior (celular) ---------- */
dialog{border:0;background:var(--sand);color:var(--ink);padding:0;max-height:90dvh;overflow:auto;overscroll-behavior:contain}
dialog::backdrop{background:rgba(52,58,46,.45);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
dialog[open]{animation:dialog-in var(--t-in) var(--ease)}
dialog.is-closing{animation:dialog-out var(--t-out) var(--ease) forwards}
@keyframes dialog-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes dialog-out{to{opacity:0;transform:translateY(8px)}}
@keyframes sheet-in{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@keyframes sheet-out{to{opacity:0;transform:translateX(20px)}}
body:has(dialog[open]){overflow:hidden}
@supports not selector(:has(*)){body.modal-open{overflow:hidden}}
.detail-dialog{position:fixed;inset:0 0 0 auto;width:min(560px,100%);max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:0 56px 0;border-left:1px solid var(--line)}
.detail-dialog[open]{animation:sheet-in var(--t-in) var(--ease)}
.detail-dialog.is-closing{animation:sheet-out var(--t-out) var(--ease) forwards}
.dialog-bar{position:sticky;top:0;z-index:2;display:flex;justify-content:flex-end;margin:0 -56px;padding:20px 24px 12px;background:var(--sand)}
.dialog-close{position:static;width:auto;height:40px;display:inline-flex;align-items:center;gap:10px;padding:0 12px 0 16px;border:1px solid var(--line-strong);border-radius:999px;background:var(--sand);font:600 12px/1 var(--text);letter-spacing:.01em;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.dialog-close span{font-size:20px;line-height:1}
.dialog-close:hover{background:var(--green);color:var(--sand);border-color:var(--green)}
.dialog-folio{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0 16px;margin-bottom:32px;border-bottom:1px solid var(--line)}
.dialog-folio .eyebrow{margin:0}
.dialog-folio .folio{font-size:16px}
.detail-dialog h2{font-size:clamp(34px,3.4vw,44px);line-height:1.08;padding-right:0;margin-bottom:18px}
.detail-dialog p{font-size:14.5px;line-height:1.85}
.dialog-lead{font-weight:600;font-size:16px}
.dialog-note{background:none;border-left:1px solid var(--line-strong);padding:4px 0 4px 22px;margin:26px 0;font-size:12.5px;line-height:1.8;color:var(--green)}
.service-team{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.service-team h3{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
.service-team p{font-size:13.5px;margin-bottom:10px}
.service-team .text-link,.service-content{font-size:12px}
.service-content{margin:22px 0 0}
.detail-dialog .review-note{margin-top:22px}
.dialog-nav{position:sticky;bottom:0;z-index:2;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;margin:32px -56px 0;padding:12px 56px 20px;border-top:1px solid var(--line);background:var(--sand);font-size:12px}
.dialog-nav button{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0;border:0;background:none;font-size:12px;font-weight:600}
.dialog-nav button span{font-size:16px;line-height:1;transition:transform .3s var(--ease)}
.dialog-nav button:first-child:hover span{transform:translateX(-3px)}
.dialog-nav button:last-child:hover span{transform:translateX(3px)}

/* ---------- Leitor dos conteúdos (spread central) ---------- */
.reader-dialog{width:min(1040px,calc(100% - 32px));padding:22px 32px 26px}
.reader-top{position:relative;padding:8px 130px 16px 0}
.reader-top h2{font:600 14px/1.5 var(--text);color:var(--ink);letter-spacing:.01em;margin:0}
.reader-status{display:block;margin-top:4px;font-size:10px;letter-spacing:.14em;color:var(--green)}
.reader-top .dialog-close{position:absolute;right:0;top:0}
.reader-layout{display:grid;grid-template-columns:1fr .7fr;gap:0;align-items:start}
.reader-layout>img{width:100%;max-height:64dvh;object-fit:contain;transition:opacity .2s var(--ease)}
.reader-layout>img.is-fading{opacity:0}
.reader-text{border-left:1px solid var(--line);padding-left:40px;align-self:stretch}
.reader-text p{font-size:13px;line-height:1.8}
.reader-text .eyebrow{margin-bottom:14px}
.reader-text #reader-transcript{background:var(--cream);padding:18px 20px}
.reader-text .review-note{margin-top:0}
.reader-sources{font-size:11.5px;margin:16px 0}
.reader-sources strong{font-size:11.5px}
.reader-sources a{display:block;text-decoration:underline;text-underline-offset:3px;margin-top:8px}
.reader-progress{height:1px;background:var(--line);margin-top:20px}
.reader-progress i{display:block;height:1px;width:0;background:var(--accent);transition:width .3s var(--ease)}
.reader-controls{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-top:16px}
.reader-controls button{width:44px;height:44px;border:1px solid var(--line-strong);border-radius:50%;background:none;font-size:16px;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.reader-controls button:not(:disabled):hover{background:var(--green);color:var(--sand);border-color:var(--green)}
.reader-controls span{font:400 18px/1 var(--display);color:var(--green);min-width:72px;text-align:center;letter-spacing:.04em}
.reader-more{display:none}

/* ---------- CTA flutuante (só no celular) ---------- */
.mobile-contact{display:none}

/* ---------- Movimento ao rolar (só com html.motion, posto pelo script do head) ---------- */
html.motion :where(.section-heading,.center-heading>h2,.center-heading>p,.intro-grid>div,.care-card,.care-end,.approach-image,.value,.steps article,.team-card,.professional-grid article,.resource-card,.voice,.partner-list li,.questions details,.contact figure,.running){opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease),background .3s var(--ease) 0s;transition-delay:calc(var(--i,0) * 70ms),calc(var(--i,0) * 70ms),0s}
html.motion .in{opacity:1;transform:none}

/* ================= Telas largas ================= */
@media (min-width:1500px){
  .hero{padding-top:196px}
}

@media (min-width:781px) and (max-width:1050px){
  .approach-panel .running .folio-name,.contact-grid .running .folio-name{display:none}
}

/* ================= Até 1050px ================= */
@media (max-width:1050px){
  header{padding:26px 6%}
  header nav{gap:18px;font-size:11.5px}
  .brand span{font-size:26px}
  .brand img{width:40px;height:40px}
  .nav-cta{margin-left:0;padding:8px 14px}
  .hero-collage{margin-bottom:-80px}
  .intro-grid>div:first-child,.intro-grid>div:last-child{padding-top:136px}
  .section-heading{gap:60px}
  .care-card{grid-template-columns:56px minmax(0,4fr) minmax(0,6fr) auto;column-gap:24px}
  .care-card h3{font-size:21px}
  .approach-image img,.contact figure img{max-width:340px}
  .steps article{padding-right:24px}
  .steps article+article{padding-left:24px}
  .team-grid{gap:32px}
  .professional-grid{column-gap:40px}
  .professional-grid article{grid-template-columns:120px 1fr}
  .resource-card:nth-child(2){margin-top:64px}
  .resource-card:nth-child(3){margin-top:32px}
  .voice{margin-top:104px;grid-template-columns:minmax(0,1fr) 240px;gap:40px;padding-left:40px}
  .voice video{margin-top:-48px}
  .partner-list li{font-size:19px}
  .footer-top{gap:26px}
}

/* ================= Até 780px (celular e tablet em pé) ================= */
@media (max-width:780px){
  :root{--space-m:72px;--space-s:56px;--run:36px}
  h1{font-size:42px;line-height:1.08}
  h2{font-size:33px;line-height:1.2}
  h2 br,.voice h3 br,.directory-heading h3 br{display:none}
  header{padding:22px 6%;flex-wrap:wrap;gap:0}
  .brand span{font-size:26px}
  .brand img{width:40px;height:40px}
  .menu-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--green);border-radius:999px;background:transparent;padding:9px 16px;font-size:13px;min-height:40px}
  .menu-toggle span{font-size:15px;line-height:1}
  header nav{display:none;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:6px;padding-top:26px}
  header nav.open{display:flex}
  header nav a{font-size:15px;padding:8px 0}
  header nav a:after{display:none}
  .nav-cta{margin:10px 0 0;font-size:14px;padding:9px 18px}
  /* grade volta a uma coluna */
  .hero-grid,.intro-grid,.center-heading,.approach-panel,.directory-heading,.faq-grid,.contact-grid{grid-template-columns:1fr}
  .hero-grid>*,.intro-grid>*,.center-heading>*,.approach-panel>*,.directory-heading>*,.faq-grid>*,.contact-grid>*{grid-column:auto}
  .running{gap:12px;padding-bottom:12px}
  .running .folio{font-size:15px}
  .hero{padding:140px 0 0}
  .menu-push .hero{padding-top:450px}
  .hero-grid{gap:44px}
  .hero-copy{max-width:540px}
  .masthead{flex-wrap:wrap;row-gap:4px}
  .lead{font-size:15px;max-width:460px}
  .hero-collage{margin-bottom:-104px}
  .hero-group figcaption{font-size:10.5px}
  .intro{background:var(--peach);padding:0 0 60px}
  .intro-grid{gap:12px}
  .intro-grid>div:first-child{padding:144px 0 0}
  .intro-grid>div:last-child{padding:0}
  .intro-grid>div:last-child::before,.intro-grid>div:last-child::after{display:none}
  .intro h2,.intro-lead{color:var(--ink)}
  .intro-lead{font-size:24px}
  .intro-grid>div:last-child>p:not(.intro-lead){font-size:14.5px;max-width:none}
  .center-heading{display:block;margin-bottom:36px}
  .center-heading>p:last-child{margin-top:24px;font-size:14.5px;max-width:none}
  .care-card{grid-template-columns:44px 1fr;grid-template-areas:'num title' 'num text' 'num link';row-gap:10px;column-gap:16px;padding:24px 0;margin-inline:0}
  .care-card:hover,.care-card:focus-within{background:none}
  .care-index{grid-area:num;font-size:24px}
  .care-card h3{grid-area:title;font-size:21px}
  .care-card>p{grid-area:text;max-width:none;font-size:14.5px}
  .card-link{grid-area:link;justify-self:start}
  .care-end{margin-top:48px}
  .care-end>span{font-size:24px;max-width:none}
  .approach-panel{gap:0}
  .approach-image{padding:48px 0;justify-self:stretch;justify-content:center}
  .approach-image::before{left:calc(-1 * var(--edge));right:calc(-1 * var(--edge))}
  .approach-image img{max-width:280px;margin:0 auto}
  .approach-panel>div:last-child{padding:40px 0 0}
  .value p{font-size:14px;max-width:none}
  .section-heading{display:block;margin-bottom:34px}
  .section-heading>p{max-width:520px;margin-top:20px;font-size:14.5px}
  .steps{grid-template-columns:1fr;gap:26px}
  .steps article{position:relative;padding:22px 0 0 64px}
  .steps article+article{border-left:0;padding-left:64px}
  .step-number{position:absolute;left:0;top:18px;font-size:30px}
  .steps p{font-size:14.5px}
  .team{padding-top:24px}
  .team-group-label{margin-bottom:24px}
  .team-grid{gap:20px}
  .team-card h3{font-size:24px}
  .team-role{font-size:10.5px}
  .team-card>p:not(.team-role):last-of-type{font-size:13px}
  .team-directory{margin-top:52px}
  .directory-heading{gap:18px;margin-bottom:26px}
  .directory-heading h3{font-size:27px}
  .directory-heading>p{font-size:14.5px;max-width:none}
  .professional-grid{column-gap:24px}
  .professional-grid article>p:last-child{font-size:13px}
  .visit-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;row-gap:8px;margin-bottom:22px}
  .visit-tools{display:contents}
  .visit-bar .eyebrow{grid-column:1;grid-row:1}
  .video-label{grid-column:1;grid-row:2;letter-spacing:.08em}
  .visit-nav{grid-column:2;grid-row:1/3;align-self:center}
  .visit-stage{--h:min(92vw,375px)}
  .visit-track{gap:16px}
  .visit-caption h3{font-size:21px}
  .visit-caption p{font-size:13.5px}
  .space-hint{font-size:12.5px;margin-top:14px}
  .resources{padding-top:var(--space-m)}
  .resource-grid{grid-template-columns:1fr;gap:0;border-top:0;padding-top:0}
  .resource-card{display:grid;grid-template-columns:132px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--line)}
  .resource-card:nth-child(2),.resource-card:nth-child(3){margin-top:0}
  .resource-cover{height:100%}
  .resource-body{padding:0}
  .resource-body .eyebrow{font-size:10px;margin-bottom:10px}
  .resource-body h3{font-size:15px;line-height:1.55}
  .resource-body p:not(.eyebrow){font-size:13px}
  .resource-foot{align-items:flex-start;flex-direction:column;gap:12px;margin-top:40px}
  .voice{margin-top:64px;grid-template-columns:1fr;gap:24px;padding:40px 24px}
  .voice::before{left:calc(-1 * var(--edge));right:calc(-1 * var(--edge))}
  .voice>div{padding-top:0;max-width:none}
  .voice h3{font-size:28px}
  .voice p{font-size:14.5px}
  .voice video{margin-top:0;width:min(100%,240px);justify-self:center}
  .partners{padding:var(--space-s) 0}
  .partner-list{grid-template-columns:1fr}
  .partner-list li{font-size:20px;text-align:left;padding:22px 0}
  .partner-list li+li{border-left:0;border-top:1px solid var(--line)}
  .partner-foot{flex-direction:column;gap:16px}
  .partner-foot p{font-size:13px}
  .faq{padding-top:20px}
  .faq-grid{gap:30px}
  .faq-grid>div>p:not(.eyebrow){max-width:100%;font-size:14.5px}
  summary,details p{font-size:14.5px}
  summary{padding-left:44px}
  summary .folio{font-size:18px;top:26px}
  details p{padding-left:44px}
  .contact-grid{gap:0}
  .contact-grid>div:first-child{padding:var(--space-m) 0 0}
  .contact-grid>div>p:not(.eyebrow){font-size:14.5px}
  .contact-grid>figure{padding:40px 0;justify-self:stretch;margin-top:48px}
  .contact-grid>figure::before,.contact-grid>figure::after{left:calc(-1 * var(--edge));right:calc(-1 * var(--edge))}
  .contact figure img{max-width:260px}
  address{grid-template-columns:1fr;gap:8px}
  address .eyebrow,address p:not(.eyebrow),address .text-link{grid-column:1}
  .footer-mark{font-size:min(56px,14.5vw);margin-bottom:28px;padding-bottom:22px}
  .footer-top{grid-template-columns:1fr 1fr;gap:30px}
  .footer-top>div:first-child{grid-column:1/-1}
  .footer-top h3{font-size:12.5px}
  .footer-top>div>a:not(.brand),.footer-review{font-size:13px}
  .footer-top p{font-size:13.5px}
  .footer-bottom{gap:15px;flex-wrap:wrap}
  .detail-dialog{inset:auto 0 0 0;width:100%;height:auto;max-height:92dvh;border-left:0;border-top:1px solid var(--line);border-radius:20px 20px 0 0;padding:0 24px 0}
  .detail-dialog::before{content:'';display:block;width:36px;height:4px;border-radius:2px;background:var(--line-strong);margin:12px auto 0}
  .dialog-bar{margin:0 -24px;padding:8px 16px}
  .dialog-nav{bottom:0;margin:28px -24px 0;padding:10px 24px calc(14px + env(safe-area-inset-bottom,0px))}
  .detail-dialog[open]{animation-name:sheet-up}
  .detail-dialog.is-closing{animation-name:sheet-down}
  .detail-dialog h2{font-size:29px}
  .detail-dialog p{font-size:14px}
  .service-team p{font-size:13.5px}
  .reader-dialog{padding:16px}
  .reader-top{padding-right:110px}
  .reader-layout{grid-template-columns:1fr;gap:12px}
  .reader-layout>img{max-height:57dvh}
  .reader-text{display:none;border-left:0;padding-left:0}
  .reader-top h2{font-size:12.5px}
  .reader-more{display:block;border:0;background:none;font-size:12px;text-decoration:underline;text-underline-offset:3px;margin:14px auto 0;padding:8px}
  .reader-dialog.show-context .reader-text{display:block}
  .mobile-contact{position:fixed;right:max(18px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:35;display:inline-flex;align-items:center;gap:18px;min-height:50px;max-width:calc(100vw - 36px);padding:13px 22px;border:1px solid var(--green);border-radius:999px;background:var(--green);color:var(--sand);box-shadow:0 4px 18px rgba(52,58,46,.16);font:400 13px/1.5 var(--text);text-decoration:none;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,visibility .16s ease}
  .mobile-contact.is-visible{opacity:1;visibility:visible;pointer-events:auto}
  .mobile-contact span:last-child{font-size:18px;line-height:1}
  .mobile-contact:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
  body.modal-open .mobile-contact,body.menu-is-open .mobile-contact{opacity:0;visibility:hidden;pointer-events:none}
}
@keyframes sheet-up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes sheet-down{to{opacity:0;transform:translateY(20px)}}

/* ================= Até 500px ================= */
@media (max-width:500px){
  h1{font-size:40px}
  .running{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;row-gap:6px;align-items:baseline}   /* fólio e texto na mesma linha, nome da seção abaixo */
  .running .folio-name{grid-column:1/-1;margin-left:0;text-align:left}
  .care-card h3{font-size:22px}
  .team-grid{grid-template-columns:1fr;gap:36px}
  .team-card h3{font-size:27px;margin-top:18px}
  .team-role{font-size:10.5px;line-height:1.8}
  .professional-grid{grid-template-columns:1fr}
  .professional-grid article{grid-template-columns:1fr;row-gap:2px}
  .professional-area{grid-column:1;grid-row:auto}
  .professional-grid h4,.professional-grid article>p:last-child{grid-column:1}
  .resource-card{grid-template-columns:112px 1fr;gap:16px}
  .resource-body h3{font-size:14.5px}
  .resource-body p:not(.eyebrow){font-size:12.5px}
  .mobile-contact{font-size:12.5px;padding:12px 20px}
}

/* ================= Até 360px ================= */
@media (max-width:360px){
  .visit-stage{--h:97vw}
  .brand{gap:9px}
  .brand img{width:32px;height:32px}
  .brand span{font-size:22px}
  .brand small{letter-spacing:.09em}
  .menu-toggle{padding:8px 12px;font-size:12px;gap:6px}
  h1{font-size:36px}
  h2{font-size:30px}
  .masthead{letter-spacing:.14em}
  .care-card h3{font-size:20px}
  .resource-card{grid-template-columns:100px 1fr;gap:14px}
  .hero-group figcaption{flex-wrap:wrap;gap:8px}
  .hero-group figcaption span{letter-spacing:.08em}
}

/* ================= Preferências do sistema ================= */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{transition:none!important;animation:none!important}
}
@media (hover:none){
  .resource-cover:hover img,.button:hover span,.text-link:hover span,.card-link:hover span,.underlink:hover span,.team-card:hover>img,.dialog-nav button:hover span{transform:none}
  .care-card:hover{background:none}
  .visit-stop:hover .visit-media img,.visit-play:hover span{transform:none}
  .visit-play:hover span{background:rgba(254,248,236,.94)}
  .visit-play:hover span::before{border-left-color:var(--green)}
  .nav-cta:hover,.visit-nav button:hover,.dialog-close:hover{background:none;color:inherit;border-color:var(--line-strong)}
  .footer-bottom a:hover span{background:none;color:inherit}
  .text-link:hover{opacity:1}
  button.professional-area:hover{text-decoration-color:var(--line-strong)}
}

/* ---------- Impressão / PDF: nada fica escondido pelo movimento ---------- */
@media print{
  html.motion :where(.section-heading,.center-heading>h2,.center-heading>p,.intro-grid>div,.care-card,.care-end,.approach-image,.value,.steps article,.team-card,.professional-grid article,.resource-card,.voice,.partner-list li,.questions details,.contact figure,.running){opacity:1!important;transform:none!important;transition:none!important}
  header{position:static}
  .skip,.mobile-contact,dialog{display:none!important}
  .visit-track{flex-wrap:wrap;overflow:visible}
  .visit-stop{flex-basis:30%}
  .visit-nav{display:none}
}

/* ---------- Ajustes Yara 15/10/2026 ---------- */
.hero-copy,.hero-collage{grid-row:1}
.hero-collage{margin-bottom:0}
.hero-cutout{margin:0;display:flex;justify-content:flex-end}
.hero-cutout>img{display:block;width:min(calc(100% + 40px),640px);max-width:none;height:auto;aspect-ratio:auto;margin:0 -40px 0 0}
.intro-grid>div:first-child,.intro-grid>div:last-child{padding-top:96px}
@media (max-width:1050px){.hero-collage{margin-bottom:0}.intro-grid>div:first-child,.intro-grid>div:last-child{padding-top:80px}}
@media (max-width:780px){.hero-copy,.hero-collage{grid-row:auto}.hero-collage{margin-bottom:0}.hero-cutout>img{width:100%;margin:0}.intro-grid>div:first-child{padding-top:44px}}
.hero h1{font-size:clamp(34px,3.6vw,50px)}
.hero .lead+.lead{margin-top:-6px}
.team-card .text-link+.text-link{margin-left:22px}
.value-icon{flex:0 0 auto;width:46px;height:40px;object-fit:contain;margin-top:2px}
.partner-logos li{display:flex;align-items:center;justify-content:center;min-height:132px}
.partner-logos img{display:block;max-width:min(190px,100%);max-height:56px;width:auto;height:auto}
.partner-logos .partner-name{font:400 20px/1.5 var(--text);color:var(--green)}
.partner-logos li{flex-direction:column;gap:10px}
.partner-logos .partner-caption{font:400 12.5px/1.4 var(--text);color:var(--green)}
.partner-list.partner-logos{grid-template-columns:repeat(4,minmax(0,1fr))}
.contact-map a{display:block;max-width:400px;border-radius:18px;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.contact-map a:hover,.contact-map a:focus-visible{transform:translateY(-3px);box-shadow:0 14px 30px rgba(52,58,46,.14)}
.contact-map .map{display:block;width:100%;height:auto}
.map text{font-family:var(--text);fill:var(--ink)}
.map-street{font-size:11px;letter-spacing:.04em;fill:var(--green)}
.map-place text{font-size:12.5px;font-weight:600}
.map-clinic text{font-size:14px;font-weight:600;fill:var(--green)}
.map-compass text{font-size:11px;font-weight:600}
.contact-map figcaption small{display:block;margin-top:4px;font-size:10px;opacity:.75}
@media (max-width:1050px){.hero h1 br{display:none}}
@media (max-width:1050px){.partner-list.partner-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-logos li:nth-child(3){border-left:0}.partner-logos li:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:780px){.hero h1{font-size:30px}.hero h1 br{display:none}}
@media (max-width:780px){.partner-list.partner-logos{grid-template-columns:1fr}.partner-logos li{justify-content:flex-start;min-height:0;padding:26px 0}.partner-logos li+li{border-left:0;border-top:1px solid var(--line)}.contact-map a{max-width:none}}

/* ---------- Experiência (15/10/2026): cabeçalho ao rolar, especialidades em duas colunas, tour ---------- */
header.is-stuck{position:fixed;z-index:40;padding:12px max(6%,calc((100% - var(--wrap)) / 2));background:rgba(254,248,236,.94);-webkit-backdrop-filter:saturate(1.3) blur(10px);backdrop-filter:saturate(1.3) blur(10px);border-bottom:1px solid var(--line);animation:stuck-in .4s var(--ease)}
header.is-stuck .brand img{width:34px;height:34px}
header.is-stuck .brand span{font-size:22px}
header.is-stuck .brand small{display:none}
@keyframes stuck-in{from{transform:translateY(-100%)}to{transform:none}}
.care-card{cursor:pointer}
.visit-tour{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;border:1px solid var(--line-strong);border-radius:999px;background:none;font:600 12px/1 var(--text);color:inherit;white-space:nowrap;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.visit-tour span{font-size:9px;line-height:1}
.visit-tour:hover,.visit-tour:focus-visible{background:var(--green);color:var(--sand);border-color:var(--green)}
@media (min-width:1051px){
.care-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;align-items:stretch}
.care-card{grid-template-columns:50px minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:18px;row-gap:10px;padding:28px 20px;margin-inline:-20px}
.care-card:nth-child(2){border-top:1px solid var(--line)}
.care-index{grid-row:1/4;font-size:28px}
.care-card h3{grid-column:2;font-size:21px}
.care-card>p{grid-column:2;max-width:none}
.care-card .card-link{grid-column:2;justify-self:start;align-self:end;margin-top:6px}
}
@media (max-width:1050px){header.is-stuck{padding:10px 6%}}
@media (max-width:780px){header.is-stuck{padding:10px 6%}header.is-stuck nav.open{padding-top:18px;padding-bottom:10px}.visit-tour{grid-column:1/3;grid-row:3;justify-self:start;margin-top:8px}}
@media (hover:none){.visit-tour:hover{background:none;color:inherit;border-color:var(--line-strong)}}
@media (prefers-reduced-motion:reduce){header.is-stuck{animation:none}}
@media print{header.is-stuck{position:static;background:none;border:0}}

/* ---------- Contato e avaliações (15/10/2026) ---------- */
.contact-list{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:14px;max-width:460px}
.contact-list li{display:grid;gap:4px;font-size:14px;line-height:1.6}
.contact-list .eyebrow{margin:0;font-size:10px}
.contact-list a{font-weight:600}
.reviews{background:var(--cream)}
.reviews-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);column-gap:var(--gap);align-items:start}
.rating-block h2{margin-bottom:22px}
.rating-number{display:flex;align-items:baseline;gap:16px;margin:0 0 6px}
.rating-number strong{font:400 64px/1 var(--display);color:var(--green)}
.stars{font-size:22px;letter-spacing:.08em;color:var(--accent,#c3896d)}
.rating-caption{font-size:14px;line-height:1.7;margin-bottom:22px;max-width:30ch}
.rating-block .text-link{display:inline-flex;margin-right:26px;margin-bottom:12px}
.review-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.review-card{margin:0;padding:26px 24px 22px;background:var(--sand);border:1px solid var(--line);display:flex;flex-direction:column;gap:18px}
.review-card p{margin:0;font-size:14px;line-height:1.8}
.review-card .review-by{margin:auto 0 0;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--green)}
.review-card .review-by span{text-transform:none;letter-spacing:0;color:var(--ink);opacity:.7}
@media (max-width:1050px){.review-cards{grid-template-columns:1fr 1fr}}
@media (max-width:780px){.reviews-grid{grid-template-columns:1fr;row-gap:28px}.review-cards{grid-template-columns:1fr;gap:14px}.rating-number strong{font-size:56px}}

/* ---------- Imagens integradas aos blocos (15/10/2026) ---------- */
/* abertura: a foto das três chega quase à borda da tela */
.hero-cutout>img{width:min(calc(100% + var(--edge) - 24px),720px);margin:0 calc(-1 * var(--edge) + 24px) 0 0}
/* 03 · a foto da árvore ocupa o bloco inteiro, sangrando à esquerda */
.approach-panel{align-items:stretch}
.approach-image{padding:0;align-items:stretch;display:block}
.approach-image::before{display:none}
.approach-image img{display:block;width:calc(100% + var(--edge));max-width:none;height:100%;min-height:560px;aspect-ratio:auto;object-fit:cover;object-position:center;margin-left:calc(-1 * var(--edge))}
/* espaços: cartões maiores */
.visit-stage{--h:clamp(340px,32vw,470px)}
/* contato: o mapa é o próprio painel, até a borda direita da tela */
.contact-grid>figure.contact-map{display:block;padding:0;min-height:600px}
.contact-map::before,.contact-map::after{display:none}
.contact-map a{position:absolute;top:0;bottom:0;left:calc(-1 * var(--block-in));right:calc(-1 * var(--edge));max-width:none;border-radius:0;overflow:hidden;transform:none!important;box-shadow:none!important}
.contact-map .map{position:absolute;inset:0;width:100%;height:100%;transition:transform .8s var(--ease)}
.contact-map a:hover .map,.contact-map a:focus-visible .map{transform:scale(1.03)}
.contact-map figcaption{position:absolute;z-index:2;left:calc(-1 * var(--block-in) + 24px);bottom:24px;max-width:300px;margin:0;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:rgba(254,248,236,.94);font-size:11.5px;line-height:1.6;pointer-events:none}
@media (max-width:1050px){.approach-image img{max-width:none}.contact figure img{max-width:none}}
@media (max-width:780px){
.hero-cutout>img{width:100%;margin:0}
.approach-image{padding:0}
.approach-image img{width:100vw;margin-left:calc(50% - 50vw);height:auto;min-height:0;aspect-ratio:4/5}
.contact-grid>figure.contact-map{margin-top:40px;min-height:0;height:min(96vw,460px)}
.contact-map a{left:calc(-1 * var(--edge));right:calc(-1 * var(--edge))}
.contact-map figcaption{left:calc(-1 * var(--edge) + 16px);right:calc(-1 * var(--edge) + 16px);bottom:16px;max-width:none}
}
@media (hover:none){.contact-map a:hover .map{transform:none}}

/* ---------- Grão de papel (15/10/2026): textura fina por cima de tudo, só CSS ---------- */
body::after{content:'';position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.075;mix-blend-mode:multiply;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E") repeat;background-size:240px 240px}
@media (max-width:780px){body::after{opacity:.065}}
@media print{body::after{display:none}}

/* ---------- Botões (15/10/2026): sem setas tipográficas; chevrons desenhados só onde a seta tem função ---------- */
.button>span[aria-hidden],.text-link>span[aria-hidden],.card-link>span[aria-hidden],.nav-cta>span[aria-hidden],.underlink>span[aria-hidden],.footer-top a>span[aria-hidden],.mobile-contact>span:last-child,.visit-tour>span,.dialog-nav button>span,.visit-nav button>span{display:none}
.button{gap:12px;min-height:54px;padding:16px 30px;font-size:14px;font-weight:600;letter-spacing:.005em;transition:background .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
.button:hover,.button:focus-visible{background:var(--ink);transform:translateY(-2px);box-shadow:0 12px 26px rgba(52,58,46,.18)}
.button:active{transform:translateY(0);box-shadow:none}
.button[href*="wa.me"]::before,.mobile-contact::before{content:'';flex:0 0 auto;width:19px;height:19px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.885-9.885 9.885m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.885-9.885 9.885m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z'/%3E%3C/svg%3E") center/contain no-repeat}
.mobile-contact{gap:12px;font-weight:600;font-size:13.5px;padding:13px 22px 13px 20px}
.text-link{gap:0;padding:4px 0 5px;border-bottom:0;background-image:linear-gradient(currentColor,currentColor);background-size:100% 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .3s var(--ease),opacity .25s var(--ease)}
.text-link:hover,.text-link:focus-visible{opacity:1;background-size:100% 2px}
.underlink{gap:0;padding-bottom:4px;border-bottom:1px solid var(--line-strong);transition:border-color .25s var(--ease)}
.underlink:hover{border-color:currentColor}
.card-link{gap:0;min-height:0;padding:8px 14px;border:1px solid var(--line-strong);border-radius:999px;font-size:11.5px;line-height:1;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.care-card:hover .card-link,.card-link:hover,.card-link:focus-visible{background:var(--green);color:var(--sand);border-color:var(--green)}
.nav-cta{gap:0;padding:10px 18px;font-weight:600}
.visit-tour{gap:10px}
.visit-tour::before{content:'';width:0;height:0;border-left:8px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent}
.visit-nav button::before{content:'';width:9px;height:9px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(-45deg);margin-left:-4px}
.visit-nav button:first-child::before{transform:rotate(135deg);margin-left:4px}
.dialog-nav button{gap:10px}
.dialog-nav button::before,.dialog-nav button::after{content:'';display:inline-block;width:8px;height:8px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transition:transform .3s var(--ease)}
.dialog-nav button:first-child::before{transform:rotate(135deg)}
.dialog-nav button:first-child::after,.dialog-nav button:last-child::before{display:none}
.dialog-nav button:last-child::after{transform:rotate(-45deg)}
.dialog-nav button:first-child:hover::before{transform:rotate(135deg) translate(2px,-2px)}
.dialog-nav button:last-child:hover::after{transform:rotate(-45deg) translate(2px,2px)}
.footer-bottom a span{font-size:0}
.footer-bottom a span::before{content:'';width:9px;height:9px;border-left:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg);margin-top:4px}
@media (hover:none){.button:hover{transform:none;box-shadow:none;background:var(--green)}.care-card:hover .card-link{background:none;color:inherit;border-color:var(--line-strong)}.text-link:hover{background-size:100% 1px}}

/* ---------- Auditoria (15/10/2026) ---------- */
/* Safari: a foto da árvore não alarga a página */
.approach{overflow-x:clip}
@media (max-width:780px){.approach-panel{grid-template-columns:minmax(0,1fr)}}
/* bloco pêssego sem vão no celular */
@media (max-width:780px){.intro-grid>div:last-child{padding-top:0}}
/* foco visível no rodapé verde e no vídeo dos espaços; fólio legível sobre o pêssego */
footer :focus-visible{outline-color:var(--sand)}
.visit-media:has(video:focus-visible)::after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;box-shadow:inset 0 0 0 3px var(--ink),inset 0 0 0 6px var(--sand)}
@media (max-width:780px){.intro .running .folio,.intro .running .folio-name{color:var(--ink)}}
/* cabeça corrida sem repetir o próprio título; última seta que sobrou */
.approach .running .folio-name,#parceiros .running .folio-name,#avaliacoes .running .folio-name{display:none}
.contact-list a>span[aria-hidden]{display:none}
/* mapa: crédito clicável e bússola fora do recorte */
.contact-map figcaption small a{position:static;display:inline;height:auto;margin:0;max-width:none;border-radius:0;overflow:visible;pointer-events:auto;color:inherit;text-decoration:underline;text-underline-offset:2px}
.contact-map .map-compass-ui{position:absolute;top:20px;right:20px;z-index:1;width:40px;height:56px;pointer-events:none}
.map-compass-ui text{font:600 11px var(--text);fill:var(--ink)}
/* mapa no celular: legenda embaixo, mapa mais perto (rótulos legíveis) */
@media (max-width:780px){
  .contact-grid>figure.contact-map{height:auto}
  .contact-map a{position:relative;left:auto;right:auto;margin:0 calc(-1 * var(--edge));height:min(96vw,460px)}
  .contact-map figcaption{position:static;margin:14px 0 0;padding:0;max-width:none;border:0;background:none;font-size:12.5px}
}
@media (max-width:560px){
  .contact-map .map{scale:1.5;transform-origin:50% 80%}
  .map-street{font-size:14px}
  .map-place text{font-size:15px}
  .map-clinic text{font-size:17px}
}
@media (min-width:781px) and (max-width:1050px){.contact-grid>figure.contact-map{min-height:0;height:auto;aspect-ratio:3/4;align-self:center}}
/* parceiros: logos com o mesmo peso visual */
.partner-logos img{max-width:100%;max-height:none;width:auto}
.partner-logos img[src$="sanepar.png"]{height:32px}
.partner-logos img[src$="fundacao-copel.svg"]{height:31px}
.partner-logos img[src$="alianca-unipax.png"]{height:27px}
.partner-logos img[src$="hospital-araucaria.png"]{height:44px}
@media (min-width:781px){.partner-logos li{position:relative}.partner-logos .partner-caption{position:absolute;left:0;right:0;top:calc(50% + 24px);text-align:center}}
/* títulos: sem ligaduras que trocam letras */
h1,h2,.intro-lead,.care-end>span,.team-card h3,.visit-caption h3,.directory-heading h3,.professional-grid h4,.voice h3,.rating-number strong,.brand span,.footer-mark,.folio,.step-number,.care-index,.value>span,.reader-controls span{font-variant-ligatures:no-common-ligatures}
/* página 404 */
.notfound{padding-bottom:var(--space-m)}
/* seção 01 e dúvidas: o título acompanha o texto longo ao lado (desktop) */
@media (min-width:781px){.intro-grid>div:first-child{position:sticky;top:0;align-self:start}.faq-grid>div:first-of-type{position:sticky;top:96px;align-self:start}}
/* avaliações do Google: vírgula da nota em Poppins, nota de origem, respiro e cartões em linha no tablet */
.rating-number .rating-comma{font-family:var(--text);font-size:.5em;margin:0 .06em}
.reviews-note{margin:18px 0 0;font-size:12px;line-height:1.7;color:var(--green)}
.reviews+.faq{padding-top:var(--space-m)}
@media (min-width:781px) and (max-width:1180px){.reviews-grid{grid-template-columns:1fr;row-gap:40px}.review-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
.review-card .review-by span{white-space:nowrap}
/* aviso de cookies do Google Analytics (assets/medicao.js) */
.cookie-banner{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;max-width:440px;margin:0 0 0 auto;padding:18px 20px;background:var(--sand);color:var(--ink);border:1px solid var(--line-strong);border-radius:14px;box-shadow:0 10px 30px rgba(52,58,46,.14);font:400 13px/1.6 var(--text)}
.cookie-banner p{margin:0 0 14px}
.cookie-actions{display:flex;gap:10px;justify-content:flex-end}
.cookie-actions button{min-height:42px;padding:10px 20px;border-radius:999px;font:400 13px/1 var(--text);cursor:pointer;transition:background .25s var(--ease),color .25s var(--ease)}
.cookie-no{background:transparent;color:var(--green);border:1px solid var(--line-strong)}
.cookie-no:hover{border-color:var(--green)}
.cookie-yes{background:var(--green);color:var(--sand);border:1px solid var(--green)}
.cookie-yes:hover{background:var(--ink);border-color:var(--ink)}
.cookie-actions button:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
body.cookie-open .mobile-contact{visibility:hidden}
.cookie-prefs{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
