/* ============================================================
   Site oficial Leonardo Hallal — CSS do site institucional
   Complementa funis/assets/funis.css (estética v3)
   Header com menu + dropdown Produtos, formulário, blog, sobre
   ============================================================ */

/* ---------- header / navegação ---------- */
.nav{gap:20px}
a.brand{flex:none}
.menu{display:flex;align-items:center;gap:clamp(16px,2.4vw,30px);margin-inline:auto}
.menu>a,.drop>.drop-btn{font-size:15px;font-weight:600;color:var(--ink);background:none;border:0;cursor:pointer;font-family:'Inter',sans-serif;padding:6px 2px;transition:color .15s}
.menu>a:hover,.drop>.drop-btn:hover{color:var(--green-ink)}
.menu>a.on{color:var(--green-ink)}
.drop{position:relative}
.drop>.drop-btn{display:inline-flex;align-items:center;gap:6px}
.drop>.drop-btn .cv{font-size:10px;transition:transform .2s}
.drop-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:14px;display:none;z-index:70}
.drop:hover .drop-menu,.drop:focus-within .drop-menu{display:block}
.drop:hover .drop-btn .cv{transform:rotate(180deg)}
.dmc{background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px -24px rgba(13,13,13,.35);padding:10px;min-width:300px}
.dmc a{display:block;padding:11px 14px;border-radius:10px;font-size:14.5px;font-weight:600;transition:background .15s}
.dmc a:hover{background:var(--white-2)}
.dmc a small{display:block;font-weight:500;font-size:12.5px;color:var(--ink-2);margin-top:2px}
.dmc a.free small{color:var(--green-ink)}
.dmc .dv{height:1px;background:var(--line);margin:8px 6px}

/* hamburger + menu mobile */
.burger{display:none;flex:none;background:none;border:1px solid var(--line);border-radius:10px;width:42px;height:42px;cursor:pointer;place-items:center;color:var(--ink)}
.burger svg{display:block}
.mnav{display:none;background:var(--white);border-bottom:1px solid var(--line)}
.mnav.open{display:block}
.mnav .wrap{padding-top:10px;padding-bottom:20px}
.mnav a{display:block;padding:13px 4px;font-weight:600;font-size:16px;border-bottom:1px solid var(--line)}
.mnav a:last-child{border-bottom:0}
.mnav .mlab{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);font-weight:700;padding:16px 4px 4px}
.mnav a.sub{font-size:15px;font-weight:500;padding-left:16px}
.mnav a.sub small{color:var(--ink-2);font-size:13px}

@media(max-width:920px){
  .menu{display:none}
  .burger{display:grid}
}

/* ---------- seções da home ---------- */
.personas-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:34px;max-width:760px;margin-inline:auto}
.personas-chips span{font-family:'Fraunces',serif;font-style:italic;font-size:16px;padding:9px 20px;border-radius:100px;border:1px solid var(--line);background:var(--white);color:var(--ink)}
.personas-chips span:nth-child(3n+1){border-color:rgba(29,185,84,.45);color:var(--green-ink)}

.applink{display:inline-flex;align-items:center;gap:10px;margin-top:34px;font-size:14.5px;color:var(--txt-2);border:1px dashed var(--line-dk);border-radius:100px;padding:10px 22px}
.applink b{color:var(--txt)}

/* redes sociais */
.socials{display:flex;gap:12px;margin-top:26px}
.socials a{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--ink);transition:transform .18s,border-color .18s,color .18s}
.socials a:hover{transform:translateY(-2px);border-color:var(--green);color:var(--green-ink)}
.dk .socials a{border-color:var(--line-dk);color:var(--txt)}
.dk .socials a:hover{color:var(--green)}

/* ---------- formulário ---------- */
.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:clamp(28px,4vw,44px);max-width:640px;margin:38px auto 0}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fgrid .full{grid-column:1/-1}
.fld label{display:block;font-size:13px;font-weight:700;letter-spacing:.04em;margin-bottom:7px;color:var(--ink)}
.fld input{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px 16px;font:inherit;font-size:15.5px;background:var(--white-2);color:var(--ink);transition:border-color .15s}
.fld input:focus{outline:0;border-color:var(--green)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--ink-2);margin-top:4px}
.consent input{width:17px;height:17px;margin-top:2px;accent-color:var(--green);flex:none}
.form-card .btn{width:100%;justify-content:center;margin-top:18px}
.fmsg{display:none;margin-top:16px;font-size:15px;font-weight:600;text-align:center;padding:13px;border-radius:12px}
.fmsg.ok{display:block;background:rgba(29,185,84,.12);color:var(--green-ink)}
.fmsg.err{display:block;background:#FBEAEA;color:#B03A3A}
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
@media(max-width:560px){.fgrid{grid-template-columns:1fr}}

/* ---------- blog ---------- */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
.post-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:0 14px 40px -28px rgba(13,13,13,.25);transition:transform .18s,border-color .18s}
.post-card:hover{transform:translateY(-4px);border-color:var(--green)}
.pcov{aspect-ratio:16/10;display:grid;place-items:center;background:linear-gradient(140deg,#161616,#0D0D0D);position:relative;overflow:hidden}
.pcov::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 100% at 85% 0%,rgba(29,185,84,.22),transparent 55%)}
.pcov span{font-family:'Fraunces',serif;font-style:italic;font-weight:500;font-size:clamp(24px,2.6vw,31px);color:#fff;z-index:1;padding:0 20px;text-align:center}
.pcov.alt{background:linear-gradient(140deg,#F0F0EB,#E2E2DA)}
.pcov.alt span{color:var(--ink)}
.pcov.alt::after{background:radial-gradient(120% 100% at 85% 0%,rgba(29,185,84,.28),transparent 55%)}
.post-card .pc-body{padding:24px 24px 22px;display:flex;flex-direction:column;flex:1}
.post-card .pc-tag{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--green-ink);margin-bottom:10px}
.post-card h3{font-size:19.5px;line-height:1.25;margin-bottom:8px}
.post-card p{font-size:14.5px;color:var(--ink-2);flex:1}
.post-card .pc-more{margin-top:16px;font-weight:700;font-size:14px;color:var(--green-ink);display:inline-flex;gap:8px;align-items:center}
.dk .post-card{border-color:var(--line-dk);background:var(--card-dk)}
.dk .post-card h3{color:var(--txt)}
.dk .post-card p{color:var(--txt-2)}
.dk .post-card .pc-tag,.dk .post-card .pc-more{color:var(--green)}
@media(max-width:920px){.posts{grid-template-columns:1fr}}

/* ---------- artigo (post interno) ---------- */
.art-head{padding:clamp(48px,6vw,80px) 0 clamp(30px,4vw,44px)}
.art-head .meta{font-size:13.5px;color:var(--ink-2);margin-bottom:16px;display:flex;gap:14px;flex-wrap:wrap;font-weight:600}
.art-head .meta b{color:var(--green-ink);text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.art-head h1{font-size:clamp(30px,4.6vw,52px);max-width:20ch}
.art-head .lead{font-size:clamp(17.5px,2vw,20px);color:var(--ink-2);margin-top:20px;max-width:56ch}
.art{max-width:760px}
.art h2{font-size:clamp(24px,3vw,32px);margin:44px 0 16px}
.art h3{margin:32px 0 12px}
.art p{margin-bottom:18px;max-width:none}
.art ul,.art ol{margin:0 0 18px 22px}
.art li{margin-bottom:8px}
.art blockquote{border-left:3px solid var(--green);padding:6px 0 6px 22px;margin:28px 0;font-family:'Fraunces',serif;font-style:italic;font-size:clamp(19px,2.2vw,23px);line-height:1.4;color:var(--ink)}
.art .hl{background:var(--white-2);border:1px solid var(--line);border-radius:var(--r);padding:24px 26px;margin:28px 0}
.art .hl p:last-child{margin-bottom:0}
.cta-box{background:var(--black);color:var(--txt);border-radius:var(--r);padding:clamp(30px,4vw,44px);margin:48px 0 0;text-align:center}
.cta-box h3{font-size:clamp(22px,2.6vw,28px);margin-bottom:10px}
.cta-box p{color:var(--txt-2);margin:0 auto 24px;max-width:46ch}
.back-blog{display:inline-flex;gap:8px;align-items:center;font-weight:700;font-size:14.5px;color:var(--green-ink);margin-bottom:22px}

/* ---------- página sobre ---------- */
.sobre-hero{padding:clamp(48px,6vw,84px) 0}
.timeline{max-width:820px;margin:44px auto 0}
.tl{display:grid;grid-template-columns:150px 1fr;gap:clamp(18px,3vw,38px);padding:26px 0;border-top:1px solid var(--line-dk)}
.tl .yr{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(19px,2.2vw,24px);color:var(--green)}
.tl h3{margin-bottom:8px}
.tl p{color:var(--txt-2);font-size:15.5px}
@media(max-width:560px){.tl{grid-template-columns:1fr;gap:6px;padding:22px 0}}

/* footer expandido */
.foot-nav{display:flex;gap:22px;flex-wrap:wrap;font-size:13.5px}
.foot-nav a:hover{color:var(--txt)}
.foot-social{display:flex;gap:10px}
.foot-social a{width:38px;height:38px;border-radius:50%;border:1px solid var(--line-dk);display:grid;place-items:center;color:var(--txt-2);transition:color .15s,border-color .15s}
.foot-social a:hover{color:var(--green);border-color:var(--green)}

/* Hero sem vídeo (bloco oculto até gravação, 27/08) */
.hero-grid-solo{grid-template-columns:1fr;justify-items:center;text-align:center}
.hero-grid-solo h1,.hero-grid-solo .sub{margin-inline:auto}
.hero-grid-solo .byline{margin-inline:auto}
