/* =====================================================================
   Proposta v3 (local, ramo proposta-v3): home e Clínicas em carvão contínuo.
   Só carrega nas páginas com "pageCss": "v3.css" e "bodyClass": "v3".
   Decisões em tmi/site-proposta-v3/decisoes/ (01 marca, 02 oferta, 03 texto).
   Regras: Montserrat da casa, camel só como acento, sem bibliotecas, só
   transform/opacity em movimento, prefers-reduced-motion respeitado.
   ===================================================================== */

body.v3{
  --v3-bg:#181818; --v3-bg-2:#1f1f1e; --v3-bg-3:#262624; --v3-line:#2e2d2b;
  --v3-text:#ECEAE6; --v3-muted:#a9a7a2; --v3-muted-2:#8f8d88;
  --v3-r:16px;
  /* os botões do site leem estes tokens (ver styles.css, superfícies escuras) */
  --camel-text:var(--camel);--fluid-stroke:rgba(193,157,134,.22);
  --btn-bg:#ECEAE6;--btn-fg:#181818;--btn-bg-hover:#fff;
  --btn-ghost-fg:#ECEAE6;--btn-ghost-bd:#4a4845;
  --btn-ghost-hover-bg:#ECEAE6;--btn-ghost-hover-fg:#181818;
  background:var(--v3-bg);color:var(--v3-text);
}
.v3 em{font-style:italic;font-weight:300}
/* as imagens levam width/height no HTML (evita saltos); a altura real vem do aspect-ratio */
.v3 main img{height:auto}

/* Cabeçalho escuro, sólido (sem desfoque por trás: é caro no telemóvel) */
.v3 .header{background:rgba(24,24,24,.97);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:var(--v3-line)}
.v3 .nav{height:76px}
.v3 .nav__logo img{height:40px;filter:invert(1)}
.v3 .nav__menu a{color:#cfcdc8}
.v3 .nav__menu a:hover{opacity:1;color:#fff}
.v3 .nav__lang{color:var(--v3-muted-2)}
.v3 .nav__toggle span{background:var(--v3-text)}
@media (max-width:900px){
  .v3 .nav__menu.open{top:76px;background:var(--v3-bg);border-bottom-color:var(--v3-line)}
}
.v3 .footer{border-top:1px solid var(--v3-line)}

/* Tipografia comum */
.v3 .kicker{font-size:12.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--camel)}
.v3 .t2{font-size:clamp(32px,3.9vw,54px);font-weight:600;letter-spacing:-.03em;line-height:1.06;text-wrap:balance}
.v3 .t2 em{color:var(--v3-muted);padding-bottom:.06em}
.v3 .sub{font-size:clamp(16.5px,1.5vw,19px);font-weight:300;line-height:1.6;color:var(--v3-muted);max-width:58ch}
.v3 .v3-sec{padding-top:120px;padding-bottom:120px}
.v3 .v3-head{margin-bottom:52px;display:grid;gap:18px}
.v3 .v3-link{font-size:15px;font-weight:600;color:var(--v3-text);border-bottom:1.5px solid var(--camel);padding-bottom:4px;justify-self:start}

/* 1. TOPO: frase à esquerda, trabalho real à direita */
.v3-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:48px;align-items:center;padding-top:64px;padding-bottom:104px}
.v3-hero h1{font-size:clamp(34px,3.3vw,48px);font-weight:600;letter-spacing:-.035em;line-height:1.04;margin:20px 0 24px}
.v3-hero h1 span{display:block}
.v3-hero h1 em{color:var(--v3-muted)}
.v3-hero .sub{max-width:34ch;font-size:clamp(17px,1.6vw,20px)}
.v3-hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.v3-hero__note{margin-top:16px;font-size:14px;color:var(--v3-muted-2)}
.v3-collage{position:relative;height:480px}
.v3-collage figure{position:absolute;margin:0;border-radius:14px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.5)}
.v3-collage img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.v3-collage figure:nth-child(1){width:54%;left:0;top:44px;transform:rotate(-3deg)}
.v3-collage figure:nth-child(2){width:47%;right:0;top:0;transform:rotate(2.5deg)}
.v3-collage figure:nth-child(3){width:45%;left:31%;bottom:0;transform:rotate(-1deg)}
@media (prefers-reduced-motion:no-preference){
  .v3-collage figure{animation:v3-in .7s var(--ease-out) backwards}
  .v3-collage figure:nth-child(2){animation-delay:.08s}
  .v3-collage figure:nth-child(3){animation-delay:.16s}
}
@keyframes v3-in{from{opacity:0;translate:0 18px}}
@media (min-width:901px){.v3-hero h1 span{white-space:nowrap}}

/* 2. CASOS: grelha com ritmo (um grande + três) */
.v3-work{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:22px}
.v3-work a{display:block;color:inherit}
.v3-work .big{grid-row:span 2}
.v3-work .wide{grid-column:span 2}
.v3-shot{border-radius:14px;overflow:hidden;background:var(--v3-bg-2)}
.v3-shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.v3-work .big .v3-shot{aspect-ratio:4/5}
.v3-work .small .v3-shot,.v3-work .wide .v3-shot{height:236px}
.v3-work .small .v3-shot img{object-position:top}
@media (hover:hover) and (pointer:fine){.v3-work a:hover .v3-shot img{transform:scale(1.03)}}
.v3-cap{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:14px}
.v3-cap b{font-size:18px;font-weight:600}
.v3-cap span{font-size:13.5px;color:var(--v3-muted-2)}
.v3-cap + p{margin-top:6px;font-size:14.5px;font-weight:300;line-height:1.5;color:var(--v3-muted);max-width:44ch}

/* 3. BIFURCAÇÃO CLÍNICAS: o único bloco em camel */
.v3-fork{position:relative;overflow:hidden;background:var(--camel);color:#181818;border-radius:22px;
  padding:64px;display:grid;grid-template-columns:1.35fr .65fr;gap:36px;align-items:end;
  --btn-bg:#181818;--btn-fg:#ECEAE6;--btn-bg-hover:#000}
.v3-fork .kicker{color:#4a3a2f}
.v3-fork .t2{color:#181818;margin-top:12px}
.v3-fork .t2 em{color:#3d3028}
.v3-fork p{margin-top:16px;font-size:18px;line-height:1.55;color:#2c2622;max-width:52ch}
.v3-fork .btn{justify-self:end;position:relative}
.v3-fork > div{position:relative}
.v3-fork svg{position:absolute;right:-140px;top:-170px;width:640px;height:640px;pointer-events:none}
.v3-fork svg path{fill:none;stroke:rgba(24,24,24,.28);stroke-width:1.4}

/* 4. RAIO-X: texto à esquerda, o que se leva à direita */
.v3-xray{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}
.v3-xray__list{display:grid;gap:0;border-top:1px solid var(--v3-line)}
.v3-xray__list li{list-style:none;display:grid;grid-template-columns:56px 1fr;gap:18px;padding:28px 0;border-bottom:1px solid var(--v3-line)}
.v3-xray__list .n{font-size:34px;font-weight:300;line-height:1;color:var(--camel)}
.v3-xray__list h3{font-size:21px;font-weight:600;letter-spacing:-.01em;margin-bottom:6px}
.v3-xray__list p{font-size:16px;font-weight:300;line-height:1.55;color:var(--v3-muted)}
.v3-xray .btn{margin-top:30px}
.v3-xray__note{margin-top:22px;font-size:14.5px;line-height:1.6;color:var(--v3-muted-2);max-width:44ch}

/* 5. SERVIÇOS */
.v3-svc{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.v3-svc article{border-top:1px solid var(--v3-line);padding-top:34px}
.v3-svc h3{font-size:clamp(26px,2.8vw,38px);font-weight:600;letter-spacing:-.025em}
.v3-svc .lead-in{font-size:17.5px;font-weight:300;color:var(--v3-muted);line-height:1.55;margin:12px 0 22px;max-width:40ch}
.v3-svc ul{list-style:none;display:grid;gap:11px;font-size:15.5px}
.v3-svc li{padding-left:22px;position:relative}
.v3-svc li::before{content:"";position:absolute;left:0;top:.66em;width:10px;height:1.5px;background:var(--camel)}
.v3-svc .when{margin-top:20px;font-size:14px;color:var(--v3-muted-2)}
.v3-svc .v3-link{display:inline-block;margin-top:24px}

/* 6. MÉTODO: as três palavras da marca em tipografia grande */
.v3-method{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--v3-line)}
.v3-method div{padding:34px 34px 0 0}
.v3-method div + div{padding-left:34px;border-left:1px solid var(--v3-line)}
.v3-method b{display:block;font-size:clamp(34px,3.6vw,52px);font-weight:600;letter-spacing:-.03em;line-height:1}
.v3-method b i{color:var(--camel);font-style:normal}
.v3-method p{margin-top:16px;font-size:16px;font-weight:300;line-height:1.6;color:var(--v3-muted);max-width:32ch}
.v3-report{margin-top:56px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;
  background:var(--v3-bg-2);border:1px solid var(--v3-line);border-radius:var(--v3-r);padding:30px 34px}
.v3-report strong{font-size:19px;font-weight:600;white-space:nowrap}
.v3-report p{font-size:16px;font-weight:300;line-height:1.6;color:var(--v3-muted)}
.v3-ai{margin-top:18px;font-size:15px;line-height:1.6;color:var(--v3-muted-2);max-width:70ch}

/* 7. FERRAMENTAS: lista, não cartões */
.v3-tools{border-top:1px solid var(--v3-line)}
.v3-tool{display:grid;grid-template-columns:.9fr 1.6fr .55fr;gap:40px;align-items:baseline;padding:28px 0;border-bottom:1px solid var(--v3-line)}
.v3-tool h3{font-size:clamp(22px,2.2vw,30px);font-weight:600;letter-spacing:-.02em}
.v3-tool p{font-size:16px;font-weight:300;color:var(--v3-muted);line-height:1.55}
.v3-tool span{justify-self:end;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--v3-muted-2);white-space:nowrap}
.v3-tool span.on{color:var(--camel)}

/* 8. FUNDADOR */
.v3-founder{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center}
.v3-founder figure{margin:0;border-radius:var(--v3-r);overflow:hidden;background:var(--v3-bg-2)}
.v3-founder img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.v3-founder blockquote{font-size:clamp(28px,3vw,44px);font-weight:300;letter-spacing:-.02em;line-height:1.18}
.v3-founder blockquote b{font-weight:600}
.v3-founder p{margin-top:26px;font-size:17px;font-weight:300;line-height:1.65;color:var(--v3-muted);max-width:52ch}
.v3-founder .who{margin-top:26px;font-size:15px}
.v3-founder .who b{font-weight:600}
.v3-founder .who span{color:var(--v3-muted-2);margin-left:6px}

/* 9. REGRA DA CASA: manifesto centrado com a linha fluida */
.v3-rule{position:relative;overflow:hidden;text-align:center;padding:96px 24px;border-radius:22px;background:var(--v3-bg-2);border:1px solid var(--v3-line)}
.v3-rule .t2{max-width:18ch;margin:0 auto}
.v3-rule .sub{margin:22px auto 0;max-width:52ch}
.v3-rule > *{position:relative}
.v3-rule svg{position:absolute;left:-160px;bottom:-420px;width:760px;height:760px;pointer-events:none}
.v3-rule svg path{fill:none;stroke:rgba(193,157,134,.22);stroke-width:1.4}

/* 10. PERGUNTAS */
.v3-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px}
.v3-faq details{border-bottom:1px solid var(--v3-line)}
.v3-faq details:first-child{border-top:1px solid var(--v3-line)}
.v3-faq summary{list-style:none;cursor:pointer;padding:22px 0;font-size:17.5px;font-weight:500;display:flex;justify-content:space-between;gap:18px}
.v3-faq summary::-webkit-details-marker{display:none}
.v3-faq summary::after{content:"+";font-weight:300;font-size:24px;line-height:1;color:var(--camel)}
.v3-faq details[open] summary::after{content:"\2212"}
.v3-faq details p{padding:0 0 22px;font-size:15.5px;font-weight:300;line-height:1.65;color:var(--v3-muted);max-width:60ch}

/* 11. CONTACTO */
.v3-contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;background:var(--v3-bg-2);border:1px solid var(--v3-line);border-radius:22px;padding:64px}
.v3-contact .sub{margin:18px 0 30px}
.v3-contact .alt{margin-top:24px;font-size:15px;color:var(--v3-muted)}
.v3-contact .alt a{color:var(--v3-text)}
.v3 .field label{color:#d6d4cf}
.v3 .field input,.v3 .field select,.v3 .field textarea{background:#141414;border-color:#3a3936;font-size:16px}

/* Clínicas (página) */
.v3-cl-hero{padding-top:72px;padding-bottom:56px}
.v3-cl-hero > *{max-width:900px}
.v3-cl-hero h1{font-size:clamp(38px,4.8vw,66px);font-weight:600;letter-spacing:-.035em;line-height:1.04;margin:18px 0 22px;text-wrap:balance}
.v3-cl-hero h1 em{color:var(--v3-muted)}
.v3-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:34px}
.v3-chips span{font-size:13px;font-weight:500;padding:8px 14px;border-radius:999px;border:1px solid var(--v3-line);color:#cfcdc8}
.v3-pains{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.v3-pains article{background:var(--v3-bg-2);border:1px solid var(--v3-line);border-radius:var(--v3-r);padding:32px 28px}
.v3-pains article:nth-child(2){background:var(--v3-bg-3)}
.v3-pains h3{font-size:21px;font-weight:600;letter-spacing:-.01em;margin-bottom:10px}
.v3-pains p{font-size:15.5px;font-weight:300;line-height:1.6;color:var(--v3-muted)}
.v3-do{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;border-top:1px solid var(--v3-line)}
.v3-do div{padding:28px 0;border-bottom:1px solid var(--v3-line)}
.v3-do h3{font-size:20px;font-weight:600;margin-bottom:8px}
.v3-do p{font-size:15.5px;font-weight:300;line-height:1.6;color:var(--v3-muted)}
.v3-soon{margin-top:40px;display:flex;gap:18px;align-items:baseline;flex-wrap:wrap;font-size:15.5px;color:var(--v3-muted)}
.v3-soon b{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--camel)}

/* TELEMÓVEL: cada bloco diz como encolhe */
@media (max-width:900px){
  .v3 .v3-sec{padding-top:72px;padding-bottom:72px}
  .v3 .v3-head{margin-bottom:32px}
  .v3-hero{grid-template-columns:1fr;gap:36px;padding-top:36px;padding-bottom:64px}
  .v3-hero__cta .btn{flex:1 1 100%;justify-content:center}
  .v3-collage{height:auto;display:flex;gap:12px;overflow:hidden;margin-right:calc(var(--pad) * -1)}
  .v3-collage figure{position:static;flex:0 0 46%;width:auto!important;transform:none!important}
  /* casos em tira deslizante: sem isto eram ~1.900px só de casos */
  .v3-work{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;
    margin:0 calc(var(--pad) * -1);padding:0 var(--pad) 8px;scroll-padding:0 var(--pad);-webkit-overflow-scrolling:touch}
  .v3-work > a{flex:0 0 78%;scroll-snap-align:start}
  .v3-work .big .v3-shot,.v3-work .small .v3-shot,.v3-work .wide .v3-shot{height:auto;aspect-ratio:4/5}
  .v3-work .v3-shot img{object-position:center!important}
  .v3-fork{grid-template-columns:1fr;padding:40px 26px}
  .v3-fork .btn{justify-self:start}
  .v3-xray,.v3-svc,.v3-founder,.v3-faq,.v3-contact{grid-template-columns:1fr;gap:36px}
  .v3-method{grid-template-columns:1fr}
  .v3-method div,.v3-method div + div{padding:26px 0;border-left:0;border-bottom:1px solid var(--v3-line)}
  .v3-report{grid-template-columns:1fr;gap:10px;padding:24px}
  .v3-report strong{white-space:normal}
  .v3-tool{grid-template-columns:1fr;gap:6px;padding:22px 0}
  .v3-tool span{justify-self:start;order:-1}
  .v3-rule{padding:64px 22px}
  .v3-contact{padding:36px 22px}
  .v3-pains{grid-template-columns:1fr}
  .v3-do{grid-template-columns:1fr}
}
