/* ===== Ângular · site institucional · estilos compartilhados ===== */
@font-face{font-family:'Astonpoliz';src:url('/fonts/Astonpoliz.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{
  --bg:#fbfbf8; --panel:#f4f5ee; --panel2:#ebede0; --dark:#12180a; --dark2:#1a2210;
  --oliva:#9bb05a; --oliva-d:#5f7029; --salvia:#8b8f6e; --ocre:#c9a857; --ocre-d:#a97b3f;
  --ink:#15200a; --muted:#5c6645; --soft:#3a4526; --line:rgba(21,32,10,.11); --line2:rgba(95,112,41,.35);
  --display:'Sora',system-ui,sans-serif; --body:'Sora',system-ui,sans-serif; --aston:'Astonpoliz','Sora',system-ui,sans-serif;
  --maxw:1140px; --r:20px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(95,112,41,.45) transparent}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(95,112,41,.4);border-radius:99px;border:3px solid var(--bg)}
::-webkit-scrollbar-thumb:hover{background:rgba(95,112,41,.62)}
body{font-family:var(--body);background:var(--bg);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1.1;letter-spacing:-.02em;text-wrap:balance;color:var(--ink)}
p{text-wrap:pretty}
:focus-visible{outline:2.5px solid var(--oliva);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.narrow{max-width:820px}
.acc{font-family:var(--aston);font-weight:400;color:var(--oliva-d);letter-spacing:0}
section{position:relative;padding:96px 0}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.04em;color:var(--oliva-d);background:rgba(155,176,90,.13);padding:7px 15px;border-radius:999px;margin-bottom:22px}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--oliva)}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.rv.in{opacity:1;transform:none}

/* botões */
.btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:15px;cursor:pointer;border:0;border-radius:999px;padding:15px 26px;transition:transform .18s,box-shadow .18s,background .18s;min-height:50px;line-height:1}
.btn:active{scale:.97}
.btn i{font-style:normal;font-size:17px}
.btn-primary{background:linear-gradient(120deg,var(--oliva),var(--ocre));color:#141a09;box-shadow:0 14px 32px -14px rgba(95,112,41,.55)}
.btn-primary:hover{box-shadow:0 18px 40px -12px rgba(95,112,41,.62);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--oliva);color:var(--oliva-d)}
.btn-dark{background:var(--dark);color:#eef1e3;box-shadow:0 14px 32px -16px rgba(0,0,0,.5)}
.btn-dark:hover{background:var(--dark2)}
.btn-wa{background:#fff;color:var(--oliva-d);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-wa:hover{box-shadow:inset 0 0 0 1.5px var(--oliva)}
.btn-sm{padding:11px 18px;font-size:14px;min-height:44px}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:60;background:rgba(251,251,248,.82);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .3s,box-shadow .3s}
.nav.solid{border-color:var(--line);box-shadow:0 4px 20px -18px rgba(21,32,10,.4)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:70px}
.logo{height:28px;width:auto;filter:brightness(0)}
.navlinks{display:flex;align-items:center;gap:24px}
.navlinks a.nl{font-size:14.5px;font-weight:600;color:var(--soft);transition:color .18s;position:relative}
.navlinks a.nl:hover{color:var(--oliva-d)}
.navlinks a.nl.on{color:var(--oliva-d)}
.navlinks a.nl.on::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:2px;background:var(--oliva)}
.navtools{display:flex;align-items:center;gap:12px}
.iconbtn{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:var(--soft);box-shadow:inset 0 0 0 1.5px var(--line);transition:color .18s,box-shadow .18s}
.iconbtn:hover{color:var(--oliva-d);box-shadow:inset 0 0 0 1.5px var(--oliva)}
.iconbtn svg{width:19px;height:19px}
.burger{display:none;width:44px;height:44px;border-radius:12px;background:none;border:0;cursor:pointer;color:var(--ink)}
.burger svg{width:24px;height:24px}
.mobmenu{display:none}

/* hero centralizado */
.hero{padding:150px 0 96px;position:relative;overflow:hidden;text-align:center}
.hero::before{content:"";position:absolute;top:-180px;left:50%;transform:translateX(-50%);width:820px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(155,176,90,.15),transparent 60%);pointer-events:none}
.hero::after{content:"";position:absolute;bottom:-220px;left:12%;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(201,168,87,.09),transparent 64%);pointer-events:none}
.hero .wrap{position:relative;max-width:900px}
.hero h1{font-size:clamp(38px,5.6vw,66px);margin-bottom:24px}
.hero p.sub{font-size:clamp(16px,1.7vw,20px);color:var(--muted);max-width:60ch;margin:0 auto 30px}
.hero-cta{display:flex;flex-wrap:wrap;gap:13px;justify-content:center}
.hero-micro{margin-top:22px;font-size:13px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.hero-micro .d{color:var(--oliva-d)}

/* page hero (páginas internas) */
.phero{padding:140px 0 60px;text-align:center;position:relative;overflow:hidden}
.phero::before{content:"";position:absolute;top:-160px;left:50%;transform:translateX(-50%);width:760px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(155,176,90,.13),transparent 62%);pointer-events:none}
.phero .wrap{position:relative;max-width:820px}
.phero h1{font-size:clamp(32px,4.6vw,52px);margin-bottom:18px}
.phero p{font-size:clamp(16px,1.6vw,19px);color:var(--muted);max-width:58ch;margin:0 auto}

/* faixa martech (escura) */
.dark-band{background:var(--dark);color:#eef1e3;border-radius:32px;margin:0 24px;padding:74px 0}
.dark-band .wrap{max-width:980px;text-align:center}
.dark-band .eyebrow{color:var(--oliva);background:rgba(155,176,90,.14)}
.dark-band h2{color:#f3f5ea;font-size:clamp(27px,3.6vw,40px);margin-bottom:20px}
.dark-band h2 .acc{color:var(--oliva)}
.dark-band .lead{font-size:clamp(16px,1.7vw,19px);color:#c4cbb2;max-width:64ch;margin:0 auto 46px}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:left}
.pill{background:rgba(255,255,255,.04);border-radius:16px;padding:24px 18px;box-shadow:inset 0 0 0 1px rgba(155,176,90,.16)}
.pill .pi{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:rgba(155,176,90,.14);color:var(--oliva);margin-bottom:14px}
.pill .pi svg{width:20px;height:20px}
.pill b{font-family:var(--display);font-weight:700;font-size:15px;display:block;margin-bottom:6px;color:#eef1e3}
.pill span{font-size:13px;color:#a7ae90;line-height:1.5}

/* cabeçalho de seção central */
.sec-head{text-align:center;max-width:660px;margin:0 auto 52px}
.sec-head h2{font-size:clamp(27px,3.6vw,40px);margin-bottom:16px}
.sec-head p{font-size:16px;color:var(--muted)}

/* método (3 etapas) */
.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{background:var(--panel);border-radius:18px;padding:30px 26px;box-shadow:inset 0 0 0 1px var(--line);position:relative}
.step .sn{font-family:var(--display);font-weight:800;font-size:14px;width:30px;height:30px;border-radius:50%;background:var(--dark);color:#eef1e3;display:grid;place-items:center;margin-bottom:18px}
.step .si{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(155,176,90,.13);color:var(--oliva-d);position:absolute;top:26px;right:26px}
.step .si svg{width:22px;height:22px}
.step h3{font-size:18px;margin-bottom:9px}
.step p{font-size:14.5px;color:var(--muted)}
.method-cta{text-align:center;margin-top:44px}

/* grid de módulos (cards preview) */
.mods{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.mod{background:#fff;border-radius:18px;padding:26px 24px;box-shadow:inset 0 0 0 1.5px var(--line),0 20px 44px -38px rgba(21,32,10,.35);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.mod:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1.5px var(--line2),0 30px 54px -34px rgba(21,32,10,.4)}
.mod .mi{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(140deg,rgba(155,176,90,.16),rgba(201,168,87,.14));color:var(--oliva-d);margin-bottom:16px}
.mod .mi svg{width:23px;height:23px}
.mod h3{font-size:17.5px;margin-bottom:8px}
.mod p{font-size:14px;color:var(--muted);margin-bottom:14px;flex:1}
.mod .mtag{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--salvia)}
.mod.pontual .mi{background:linear-gradient(140deg,rgba(201,168,87,.2),rgba(201,168,87,.1));color:var(--ocre-d)}
.mod.dark{background:linear-gradient(150deg,var(--dark),var(--dark2));box-shadow:none;color:#eef1e3}
.mod.dark .mi{background:rgba(155,176,90,.16);color:var(--oliva)}
.mod.dark h3{color:#f3f5ea}
.mod.dark p{color:#a7ae90}
.mod.dark .mtag{color:var(--oliva)}

/* nota de CTA dinâmico */
.note{margin-top:40px;background:var(--panel);border-radius:20px;padding:32px;display:flex;flex-wrap:wrap;align-items:center;gap:24px;justify-content:space-between;box-shadow:inset 0 0 0 1px var(--line)}
.note .n-tx b{font-family:var(--display);font-weight:700;font-size:18px;display:block;margin-bottom:6px}
.note .n-tx span{font-size:14.5px;color:var(--muted);max-width:54ch;display:block}
.note .n-cta{display:flex;gap:12px;flex-wrap:wrap}

/* caminho recomendado (Estruturacao -> RevOps) na pagina Servicos */
.pathwrap{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:stretch;max-width:920px;margin:0 auto}
.pathcard{background:#fff;border-radius:20px;padding:32px 28px;box-shadow:inset 0 0 0 1.5px var(--line2),0 26px 52px -38px rgba(21,32,10,.36);position:relative}
.pathcard .pstep{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--oliva-d);margin-bottom:10px}
.pathcard h3{font-size:21px;margin-bottom:10px}
.pathcard>p{font-size:14px;color:var(--muted);margin-bottom:16px}
.pathcard ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.pathcard li{font-size:13.5px;color:var(--soft);display:flex;gap:9px;line-height:1.4}
.pathcard li svg{flex:0 0 16px;width:16px;height:16px;color:var(--oliva-d);margin-top:2px}
.pathcard .rec{position:absolute;top:-11px;left:24px;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#231a05;background:var(--ocre);padding:4px 11px;border-radius:999px}
.patharrow{display:grid;place-items:center;color:var(--oliva-d)}
.patharrow svg{width:32px;height:32px}
.path-note{text-align:center;margin-top:22px;font-size:14px;color:var(--muted);max-width:60ch;margin-left:auto;margin-right:auto}
.path-note b{color:var(--soft);font-weight:700}
@media(max-width:760px){.pathwrap{grid-template-columns:1fr}.patharrow{transform:rotate(90deg);padding:2px 0}}

/* seção de módulo detalhada (página Servicos) */
.modsec{padding:64px 0;border-top:1px solid var(--line)}
.modsec .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.modsec.rev .wrap{direction:rtl}.modsec.rev .wrap>*{direction:ltr}
.modsec .mtag{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--oliva-d);background:rgba(155,176,90,.12);padding:5px 12px;border-radius:999px;margin-bottom:16px}
.modsec.pontual .mtag{color:var(--ocre-d);background:rgba(201,168,87,.14)}
.modsec h2{font-size:clamp(24px,3vw,32px);margin-bottom:14px}
.modsec .mdesc{font-size:16px;color:var(--muted);margin-bottom:22px}
.modsec .mcta{margin-top:8px}
.deliver{background:var(--panel);border-radius:20px;padding:30px 32px;box-shadow:inset 0 0 0 1px var(--line)}
.deliver b{display:block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--salvia);margin-bottom:16px}
.deliver ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.deliver li{display:flex;gap:12px;font-size:14.5px;color:var(--soft);line-height:1.45}
.deliver li svg{flex:0 0 20px;width:20px;height:20px;color:var(--oliva-d);margin-top:1px}

/* FAQ */
.faq{max-width:800px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:var(--display);font-weight:600;font-size:17px;color:var(--ink)}
.faq-q .fx{flex:0 0 22px;color:var(--oliva-d);transition:transform .25s}
.faq-item.open .fx{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a p{padding:0 0 22px;font-size:15px;color:var(--muted);max-width:70ch}

/* faixa "para quem é" inclusiva */
.forwho{background:var(--panel);border-radius:32px;margin:0 24px;text-align:center}
.forwho .wrap{max-width:760px;padding:74px 24px}
.forwho h2{font-size:clamp(26px,3.6vw,40px);margin-bottom:18px}
.forwho p{font-size:clamp(16px,1.7vw,19px);color:var(--muted);margin:0 auto 14px;max-width:56ch}
.forwho .who-cta{margin-top:26px}

/* lista simples com check (Sobre / Para sua Clínica) */
.checklist{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:820px;margin:0 auto}
.checklist.cols3{grid-template-columns:repeat(3,1fr);max-width:1000px}
.checkitem{display:flex;gap:14px;background:#fff;border-radius:15px;padding:20px 22px;box-shadow:inset 0 0 0 1px var(--line);text-align:left}
.checkitem .ci{flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:rgba(155,176,90,.15);color:var(--oliva-d);display:grid;place-items:center}
.checkitem .ci svg{width:14px;height:14px}
.checkitem b{font-family:var(--display);font-weight:600;font-size:15.5px;display:block;margin-bottom:4px}
.checkitem span{font-size:14px;color:var(--muted)}

/* cartões de canal (Contato) */
.channels{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:900px;margin:0 auto}
.channel{background:#fff;border-radius:20px;padding:32px 26px;box-shadow:inset 0 0 0 1.5px var(--line);text-align:center;transition:transform .25s,box-shadow .25s;display:block}
.channel:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1.5px var(--line2),0 28px 50px -36px rgba(21,32,10,.4)}
.channel .ch{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(140deg,rgba(155,176,90,.16),rgba(201,168,87,.13));color:var(--oliva-d);margin:0 auto 18px}
.channel .ch svg{width:26px;height:26px}
.channel h3{font-size:18px;margin-bottom:7px}
.channel p{font-size:14px;color:var(--muted)}
.channel .cgo{margin-top:14px;display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--oliva-d)}
.channel:hover .cgo{gap:9px}

/* formulario de contato (envia pro WhatsApp) */
.leadform{max-width:580px;margin:0 auto;background:#fff;border-radius:22px;padding:clamp(26px,4vw,42px);box-shadow:inset 0 0 0 1.5px var(--line),0 34px 66px -46px rgba(21,32,10,.34)}
.leadform .fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.leadform .field{margin:0}
.lf-full{grid-column:1/-1}
.leadform label{display:block;font-size:13px;font-weight:700;color:var(--soft);margin-bottom:7px}
.leadform input,.leadform select{width:100%;padding:13px 15px;border-radius:12px;border:1.5px solid var(--line);background:#fff;font:inherit;font-size:15px;color:var(--ink);transition:border-color .18s,box-shadow .18s}
.leadform input:focus,.leadform select:focus{border-color:var(--oliva);box-shadow:0 0 0 4px rgba(155,176,90,.14);outline:none}
.leadform .field.bad input,.leadform .field.bad select{border-color:#b4633f}
.leadform select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235c6645' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:16px;padding-right:40px}
.leadform .lf-submit{margin-top:22px}
.leadform .lf-submit .btn{width:100%;justify-content:center}
.leadform .lf-note{margin-top:12px;text-align:center;font-size:12.5px;color:var(--muted)}
.form-success{text-align:center;padding:20px 8px}.form-success strong{display:block;font-family:var(--display);font-size:24px;color:var(--ink)}.form-success p{margin:12px auto 18px;max-width:42ch;color:var(--soft);line-height:1.6}.form-whatsapp{color:var(--oliva);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start;max-width:1000px;margin:0 auto}
.contact-grid .cg-side .sec-head{text-align:left;margin:0 0 24px}
.contact-grid .channels{grid-template-columns:1fr;gap:14px}
.contact-grid .channel{text-align:left;display:flex;align-items:center;gap:16px;padding:20px 22px}
.contact-grid .channel .ch{margin:0;width:46px;height:46px;flex:0 0 46px}
.contact-grid .channel .ch svg{width:22px;height:22px}
.contact-grid .channel h3{margin-bottom:3px;font-size:16px}
.contact-grid .channel .cgo{display:none}

/* CTA final */
.final{padding:104px 0}
.finalcard{background:linear-gradient(135deg,var(--oliva-d),var(--oliva) 52%,var(--ocre));border-radius:32px;padding:clamp(40px,6vw,72px);text-align:center;color:#fff;position:relative;overflow:hidden}
.finalcard h2{color:#fff;font-size:clamp(28px,4vw,44px);margin-bottom:16px}
.finalcard h2 .acc{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.5);text-underline-offset:6px}
.finalcard p{color:rgba(255,255,255,.9);font-size:16.5px;max-width:52ch;margin:0 auto 34px}
.finalcard .fcta{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.finalcard .btn-primary{background:#fff;color:var(--oliva-d)}
.finalcard .btn-primary:hover{background:#f4f5ee}
.finalcard .btn-ghost{color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}
.finalcard .btn-ghost:hover{box-shadow:inset 0 0 0 1.5px #fff;color:#fff;background:rgba(255,255,255,.08)}

/* footer */
footer{background:var(--dark);color:#c4cbb2;padding:60px 0 34px}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
footer .logo{filter:none;height:24px;margin-bottom:16px}
footer .ftag{font-size:14px;color:#a7ae90;max-width:38ch;line-height:1.6}
footer h4{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--oliva);margin-bottom:16px}
footer a.fl{display:block;font-size:14.5px;color:#c4cbb2;margin-bottom:11px;transition:color .18s}
footer a.fl:hover{color:#eef1e3}
footer .fbar{border-top:1px solid rgba(155,176,90,.18);margin-top:44px;padding-top:22px;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;font-size:12.5px;color:#8f977a}
footer .fsoc{display:flex;gap:10px}
footer .fsoc a{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#c4cbb2;box-shadow:inset 0 0 0 1px rgba(155,176,90,.25);transition:color .18s,box-shadow .18s}
footer .fsoc a:hover{color:#eef1e3;box-shadow:inset 0 0 0 1px var(--oliva)}
footer .fsoc svg{width:18px;height:18px}

/* sticky mobile CTA — DESATIVADO (substituido pelo WhatsApp flutuante) */
.sticky{display:none!important}

/* esconde o icone de Instagram do header (mantido no rodape e no Contato) */
.nav .iconbtn{display:none}

/* barra de progresso de scroll */
.progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:80;background:linear-gradient(90deg,var(--oliva),var(--ocre));box-shadow:0 0 10px rgba(201,168,87,.5)}

/* botao flutuante de WhatsApp */
.wafab{position:fixed;right:18px;bottom:18px;z-index:70;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 12px 30px -8px rgba(37,211,102,.55);transition:transform .2s,box-shadow .2s}
.wafab:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 16px 36px -8px rgba(37,211,102,.65)}
.wafab svg{width:30px;height:30px;position:relative;z-index:1}
.wafab::after{content:"";position:absolute;inset:0;border-radius:50%;animation:wapulse 2.6s ease-out infinite}
@keyframes wapulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.4)}70%{box-shadow:0 0 0 12px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}

/* cursor personalizado (discreto, so desktop com ponteiro fino) */
.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity .3s}
.cursor-dot{width:6px;height:6px;background:var(--oliva-d)}
.cursor-ring{width:30px;height:30px;border:1.5px solid rgba(95,112,41,.35);transition:width .22s,height .22s,background .22s,border-color .22s,opacity .3s}
.cursor-ring.grow{width:46px;height:46px;background:rgba(155,176,90,.08);border-color:rgba(95,112,41,.5)}
@media (hover:hover) and (pointer:fine){.cursor-dot.on,.cursor-ring.on{opacity:1}}
@media (hover:none),(pointer:coarse){.cursor-dot,.cursor-ring{display:none}}

/* ===== primeira dobra VERDE (heros) ===== */
.hero.green,.phero.green{color:#eef1e3;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 35'%3E%3Cpath d='M39.7057 0L39.7894 24.6235L32.4911 30.9844L8.03503 27.5696L15.9694 20.6563L29.3776 20.3884L29.7291 20.0704L31.7713 6.91332L39.7057 0Z' fill='%239bb05a' fill-opacity='0.06'/%3E%3Cpath d='M0.100451 34.483L1.52588e-05 9.85956L7.29834 3.51538L31.7544 6.91345L23.82 13.8268L10.4286 14.0946L10.0603 14.4126L8.03487 27.5697L0.100451 34.483Z' fill='%239bb05a' fill-opacity='0.06'/%3E%3C/svg%3E") no-repeat right -30px top 50px / 300px,linear-gradient(158deg,#11170a 0%,#1d2711 52%,#33421b 100%)}
.hero.green::before,.phero.green::before{background:radial-gradient(circle,rgba(155,176,90,.3),transparent 60%);transform:translate(-50%,calc(var(--sy,0)*0.05px))}
.hero.green::after{background:radial-gradient(circle,rgba(201,168,87,.16),transparent 62%);transform:translateY(calc(var(--sy,0)*-0.04px))}
.phero.green::after{content:"";position:absolute;bottom:-180px;right:8%;width:420px;height:420px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(201,168,87,.14),transparent 62%);transform:translateY(calc(var(--sy,0)*-0.04px))}
.hero.green h1,.phero.green h1{color:#f4f6ec}
.hero.green .acc,.phero.green .acc{color:var(--oliva)}
.hero.green p,.hero.green p.sub,.phero.green p{color:#c7cdb5}
.hero.green .subline{color:#9aa17f}
.hero.green .eyebrow,.phero.green .eyebrow{color:#cdd8ad;background:rgba(155,176,90,.16)}
.hero.green .eyebrow .dot,.phero.green .eyebrow .dot{background:var(--oliva)}
.hero.green .hero-micro{color:#9aa17f}
.hero.green .hero-micro .d{color:var(--oliva)}
.hero.green .btn-ghost,.phero.green .btn-ghost{color:#eef1e3;box-shadow:inset 0 0 0 1.5px rgba(155,176,90,.4)}
.hero.green .btn-ghost:hover,.phero.green .btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--oliva);color:#fff;background:rgba(155,176,90,.08)}

@media (max-width:940px){
  .hero .wrap{max-width:640px}
  .pillars{grid-template-columns:repeat(2,1fr)}
  .flow,.mods{grid-template-columns:repeat(2,1fr)}
  .channels{grid-template-columns:1fr}
  .modsec .wrap{grid-template-columns:1fr;gap:28px}
  .modsec.rev .wrap{direction:ltr}
  .checklist.cols3{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr;gap:22px}
  .contact-grid .cg-side .sec-head{text-align:center}
  footer .wrap{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  section{padding:72px 0}
  .navlinks{display:none}
  .navtools .desk{display:none}
  .burger{display:grid;place-items:center}
  .hero{padding:120px 0 64px}
  .pillars,.flow,.mods,.checklist,.checklist.cols3{grid-template-columns:1fr}
  .leadform .fgrid{grid-template-columns:1fr}
  .dark-band,.forwho{margin:0 14px;border-radius:24px}
  .note{flex-direction:column;align-items:flex-start}
  footer .wrap{grid-template-columns:1fr;gap:32px}
  .wafab{right:14px;bottom:14px;width:52px;height:52px}
  .mobmenu.open{display:block;position:fixed;inset:70px 0 0;z-index:59;background:var(--bg);padding:26px 24px;overflow-y:auto}
  .mobmenu.open a{display:block;font-size:20px;font-weight:600;padding:16px 0;border-bottom:1px solid var(--line);color:var(--ink)}
  .mobmenu.open .mm-cta{margin-top:24px;display:flex;flex-direction:column;gap:12px}
  .mobmenu.open .mm-cta a{border:0;padding:0}
  .mobmenu.open .mm-cta .btn{padding:15px 26px}
}
