/* Zanini Riether Advogados – LPs clínicas odontológicas
   Identidade da proposta comercial: grafite quente, cobre, serifa clássica + Montserrat */
:root{
  --bg:#1b1a19; --bg-2:#22201e; --bg-3:#2a2623;
  --warm:#3b2b20;
  --text:#f3ede5; --muted:#bdb3a7; --soft:#8f857a;
  --accent:#c98a4f; --accent-hi:#e3ad74; --accent-ink:#1b1410;
  --line:rgba(201,138,79,.32); --line-soft:rgba(243,237,229,.10);
  --card:rgba(255,255,255,.035);
  --err:#ef8f7a;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --r:10px;
  --wrap:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--accent-hi)}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;margin:0;letter-spacing:-.005em}
p{margin:0}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.kicker{font:600 12px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.hl{color:var(--accent-hi)}
.muted{color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* fundo quente da proposta */
.bg-warm{background:
  radial-gradient(120% 80% at 0% 0%, rgba(120,72,38,.30), transparent 55%),
  radial-gradient(90% 70% at 100% 100%, rgba(120,72,38,.18), transparent 60%),
  var(--bg)}

/* logo */
.logo{display:inline-block}
.logo img{height:52px;width:auto}

/* botão */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;padding:16px 24px;border:0;border-radius:8px;
  background:linear-gradient(180deg,var(--accent-hi),var(--accent));color:var(--accent-ink);
  font:700 15px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;
  box-shadow:0 10px 30px -12px rgba(201,138,79,.7);transition:transform .15s ease,filter .15s ease}
.btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
.btn:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.btn[disabled]{opacity:.75;cursor:progress;transform:none}
.btn.is-loading .btn-label::after{content:"";display:inline-block;width:14px;height:14px;margin-left:10px;vertical-align:-2px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line);box-shadow:none}

/* formulário */
.form{display:grid;gap:12px}
.field{display:grid;gap:6px}
.field label{font:500 13px/1.3 var(--sans);color:var(--muted)}
.input{width:100%;min-height:52px;padding:14px 16px;border-radius:8px;border:1px solid rgba(243,237,229,.16);background:rgba(255,255,255,.96);color:#1d1a17;
  font:500 16px/1.2 var(--sans);transition:border-color .15s,box-shadow .15s;appearance:none;-webkit-appearance:none}
.input::placeholder{color:#8a8178}
.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(201,138,79,.35)}
select.input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b625a' stroke-width='1.6' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
select.input:invalid{color:#8a8178}
.field-error{min-height:0;font:500 12.5px/1.3 var(--sans);color:var(--err)}
.field-error:empty{display:none}
.has-error .input{border-color:var(--err);box-shadow:0 0 0 2px rgba(239,143,122,.25)}
.check{display:flex;gap:10px;align-items:flex-start;font:400 12.5px/1.45 var(--sans);color:var(--muted);cursor:pointer}
.check input{margin:2px 0 0;width:18px;height:18px;flex:none;accent-color:var(--accent)}
.check a{color:var(--muted)}
.form-msg{font:500 14px/1.4 var(--sans);color:var(--err);text-align:center}
.form-msg:empty{display:none}
.form-note{font:400 12px/1.4 var(--sans);color:var(--soft);text-align:center;display:flex;gap:6px;align-items:center;justify-content:center}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* por (autoria) */
.by{display:flex;align-items:center;gap:14px}
.by img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:1px solid var(--line)}
.by-txt{font:400 14px/1.45 var(--sans);color:var(--muted)}
.by-txt strong{color:var(--text);font-weight:600}

/* faixa data */
.meta-row{display:flex;flex-wrap:wrap;gap:8px 18px;font:500 14.5px/1.4 var(--sans);color:var(--text)}
.meta-row span{display:inline-flex;align-items:center;gap:8px}
.meta-row svg{width:17px;height:17px;color:var(--accent);flex:none}

/* rodapé */
.footer{border-top:1px solid var(--line-soft);padding:28px 0 36px;font:400 12.5px/1.6 var(--sans);color:var(--soft)}
.footer .wrap{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center}
.footer a{color:var(--muted)}
.footer img{height:34px;width:auto;opacity:.85}

/* ===================== LP A – simples ===================== */
.a-hero{min-height:100svh;display:flex;align-items:center;padding:28px 0 40px}
.a-grid{display:grid;grid-template-columns:1fr;gap:28px;align-items:center}
.a-copy{display:grid;gap:18px}
.a-copy h1{font-size:clamp(32px,8.4vw,54px)}
.a-copy .sub{font:400 16px/1.55 var(--sans);color:var(--muted);max-width:56ch}
.a-card{background:rgba(27,26,25,.72);border:1px solid var(--line);border-radius:14px;padding:22px;backdrop-filter:blur(6px)}
.a-card h2{font-size:26px;margin-bottom:4px}
.a-card .card-sub{font:400 13.5px/1.4 var(--sans);color:var(--muted);margin-bottom:16px}
.a-quote{border-left:2px solid var(--accent);padding:2px 0 2px 14px;font:italic 500 20px/1.35 var(--serif);color:var(--text)}
.a-photo{display:none}
@media (min-width:960px){
  .logo img{height:62px}
  .a-hero{padding:48px 0}
  .a-grid{grid-template-columns:1.1fr .9fr;gap:56px}
  .a-photo{display:block;position:fixed;inset:0 0 0 auto;width:42vw;z-index:0;pointer-events:none}
  .a-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
  .a-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(27,26,25,.55) 28%,rgba(27,26,25,.1) 60%)}
  .a-hero .wrap,.footer{position:relative;z-index:1}
  .a-left{max-width:600px}
  .a-card{margin-top:6px}
}

/* ===================== LP B – completa ===================== */
.topbar{position:absolute;top:0;left:0;right:0;z-index:5;padding:20px 0}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px}
.topbar .tag{font:600 11px/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-align:right}

.b-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;padding:110px 0 44px;overflow:hidden}
.b-hero-photo{position:absolute;inset:0;z-index:0}
.b-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:62% 12%}
.b-hero-photo::after{content:"";position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(27,26,25,.35) 0%,rgba(27,26,25,.15) 22%,rgba(27,26,25,.78) 52%,var(--bg) 78%)}
.b-hero .wrap{position:relative;z-index:1}
.b-hero-copy{display:grid;gap:18px;max-width:640px}
.b-hero h1{font-size:clamp(34px,8.6vw,64px)}
.b-hero .sub{font:400 16.5px/1.55 var(--sans);color:var(--muted)}
.b-hero .actions{display:grid;gap:10px;margin-top:4px}
/* celular: foto em cima, texto começa abaixo do rosto */
@media (max-width:959px){
  .b-hero{display:block;min-height:0;padding:0 0 40px}
  .b-hero-photo{bottom:auto;height:min(72svh,640px)}
  .b-hero-photo img{object-position:50% 8%}
  .b-hero-photo::after{background:linear-gradient(180deg,rgba(27,26,25,.45) 0%,rgba(27,26,25,0) 18%,rgba(27,26,25,0) 50%,rgba(27,26,25,.85) 78%,var(--bg) 100%)}
  .b-hero .wrap{padding-top:min(50svh,440px)}
  .b-hero-copy{gap:14px}
}
@media (min-width:960px){
  .b-hero{align-items:center;padding:120px 0 80px}
  .b-hero-photo{left:auto;width:54%}
  .b-hero-photo img{object-position:50% 18%}
  .b-hero-photo::after{background:linear-gradient(90deg,var(--bg) 0%,rgba(27,26,25,.6) 26%,rgba(27,26,25,.05) 62%),linear-gradient(0deg,var(--bg) 0%,transparent 25%)}
  .b-hero .actions{grid-template-columns:auto;justify-content:start}
  .b-hero .btn{width:auto;padding:16px 34px}
}

.sec{padding:72px 0}
.sec-head{display:grid;gap:12px;margin-bottom:32px;max-width:720px}
.sec-head h2{font-size:clamp(30px,6.4vw,46px)}
.sec-head p{color:var(--muted)}
.sec + .sec{border-top:1px solid var(--line-soft)}

/* história pessoal */
.story{display:grid;gap:32px;align-items:center}
.story-photo{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--line);aspect-ratio:4/5;max-height:620px}
.story-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%}
.story-copy{display:grid;gap:16px}
.story-copy h2{font-size:clamp(32px,7vw,50px)}
.story-copy p{color:var(--muted)}
.story-copy .a-quote{margin-top:6px}
@media (min-width:900px){.story{grid-template-columns:.85fr 1.15fr;gap:64px}}

/* sinais */
.signs{display:grid;gap:12px}
.sign{display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--line-soft);border-radius:var(--r);background:var(--card)}
.sign svg{width:22px;height:22px;flex:none;color:var(--accent);margin-top:2px}
.sign h3{font:600 15.5px/1.35 var(--sans);margin-bottom:4px}
.sign p{font-size:14px;color:var(--muted);line-height:1.5}
@media (min-width:760px){.signs{grid-template-columns:1fr 1fr}}
@media (min-width:1040px){.signs{grid-template-columns:1fr 1fr 1fr}}

/* pauta numerada */
.agenda{border-top:1px solid var(--line)}
.agenda li{list-style:none;display:grid;grid-template-columns:48px 1fr;gap:6px 14px;padding:20px 0;border-bottom:1px solid var(--line-soft)}
.agenda{margin:0;padding:0}
.agenda .n{font:500 26px/1 var(--serif);color:var(--accent);padding-top:2px}
.agenda h3{font:500 23px/1.2 var(--serif);color:var(--text)}
.agenda p{grid-column:2;font-size:14.5px;color:var(--muted)}
@media (min-width:900px){
  .agenda li{grid-template-columns:70px 340px 1fr;align-items:baseline}
  .agenda p{grid-column:auto}
}

/* quem conduz */
.bio{display:grid;gap:32px;align-items:center}
.bio-photo{border-radius:14px;overflow:hidden;border:1px solid var(--line);aspect-ratio:4/5;max-height:600px}
.bio-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.bio-copy{display:grid;gap:14px}
.bio-copy h2{font-size:clamp(32px,7vw,48px)}
.bio-role{font:600 12px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.creds{margin:6px 0 0;padding:0;display:grid;gap:10px}
.creds li{list-style:none;display:flex;gap:12px;color:var(--muted);font-size:15px;line-height:1.5}
.creds li::before{content:"";flex:none;width:6px;height:6px;margin-top:9px;border-radius:50%;background:var(--accent)}
.press{margin-top:10px;padding-top:16px;border-top:1px solid var(--line-soft)}
.press .kicker{display:block;margin-bottom:10px}
.press-list{display:flex;flex-wrap:wrap;gap:8px 22px;font:500 20px/1.3 var(--serif);color:var(--text)}
@media (min-width:900px){.bio{grid-template-columns:1.15fr .85fr;gap:64px}.bio-photo{order:2}}

/* inscrição */
.signup{display:grid;gap:28px;align-items:start}
.signup-info{display:grid;gap:18px}
.signup-info h2{font-size:clamp(32px,7vw,50px)}
.facts{margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}
.facts div{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid var(--line-soft)}
.facts dt{font:600 11.5px/1.5 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.facts dd{margin:0;font:500 15px/1.5 var(--sans);color:var(--text)}
.signup-card{background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.signup-card h3{font:500 26px/1.2 var(--serif);margin-bottom:4px}
.signup-card .card-sub{font-size:13.5px;color:var(--muted);margin-bottom:16px}
@media (min-width:960px){.signup{grid-template-columns:1fr 440px;gap:64px}.signup-card{padding:30px;position:sticky;top:24px}}

/* faq */
.faq{display:grid;gap:10px;max-width:820px}
.faq details{border:1px solid var(--line-soft);border-radius:var(--r);background:var(--card)}
.faq summary{cursor:pointer;list-style:none;padding:18px 48px 18px 18px;font:600 15.5px/1.4 var(--sans);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font:400 24px/1 var(--sans);color:var(--accent)}
.faq details[open] summary::after{content:"–"}
.faq .ans{padding:0 18px 18px;color:var(--muted);font-size:15px}

/* cta final */
.final{text-align:center}
.final .wrap{display:grid;gap:18px;justify-items:center;max-width:760px}
.final h2{font-size:clamp(32px,7.4vw,54px)}
.final .btn{max-width:420px}

/* barra fixa mobile */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(0deg,rgba(27,26,25,.98),rgba(27,26,25,.85));border-top:1px solid var(--line);transform:translateY(110%);transition:transform .25s ease}
.sticky-cta.show{transform:none}
.sticky-cta .btn{min-height:50px}
@media (min-width:960px){.sticky-cta{display:none}}
.has-sticky{padding-bottom:76px}
@media (min-width:960px){.has-sticky{padding-bottom:0}}

/* revelação suave */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* ===================== Obrigado ===================== */
.ty{min-height:100svh;display:flex;align-items:center;padding:36px 0}
.ty .wrap{max-width:680px;display:grid;gap:22px;justify-items:center;text-align:center}
.steps{display:flex;gap:10px;align-items:center;font:600 12px/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.steps .s{display:flex;align-items:center;gap:8px}
.steps .dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;border:1px solid var(--line)}
.steps .done .dot{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.steps .now{color:var(--text)}
.steps .now .dot{border-color:var(--accent-hi);color:var(--accent-hi)}
.steps .bar{width:34px;height:1px;background:var(--line)}
.ty h1{font-size:clamp(36px,9vw,60px)}
.ty .lead{font:500 18px/1.5 var(--sans);color:var(--text)}
.ty .lead strong{color:var(--accent-hi)}
.btn-wa{background:#25d366;color:#0b2414;box-shadow:0 12px 34px -12px rgba(37,211,102,.6);max-width:440px;font-size:14.5px;letter-spacing:.04em}
.btn-wa svg{width:22px;height:22px}
.ty-note{font-size:14px;color:var(--muted);max-width:52ch}
.ty-card{display:flex;gap:14px;align-items:center;text-align:left;padding:16px;border:1px solid var(--line-soft);border-radius:12px;background:var(--card);max-width:440px;width:100%}
.ty-card img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:50% 18%}

/* privacidade */
.legal{padding:40px 0 60px}
.legal .wrap{max-width:780px;display:grid;gap:14px}
.legal h1{font-size:40px;margin:18px 0 8px}
.legal h2{font:600 17px/1.4 var(--sans);margin-top:14px}
.legal p,.legal li{color:var(--muted);font-size:15px}
