:root{
  --bg:#F2F5F3; --surface:#FFFFFF; --surface-2:#E8EEEA; --ink:#131C22; --muted:#56655F; --line:#D6DFDA;
  --green:#47B649; --green-ink:#237A27; --green-soft:#E1F3E1;
  --night:#111A1F; --night-2:#18242B; --night-line:#2A3942; --night-ink:#E9F0EC; --night-muted:#9DB0A8;
  --a:#D9483B; --b:#E0A020; --c:#3B82C4;
  --display:"Saira", "Arial Narrow", system-ui, sans-serif;
  --body:"Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"JetBrains Mono", ui-monospace, Consolas, monospace;
  --radius:10px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --bg:#0C1316; --surface:#141E23; --surface-2:#1B272D; --ink:#E7EEEA; --muted:#98A9A2; --line:#26343B;
    --green-ink:#62CD64; --green-soft:#17301B;
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0C1316; --surface:#141E23; --surface-2:#1B272D; --ink:#E7EEEA; --muted:#98A9A2; --line:#26343B;
  --green-ink:#62CD64; --green-soft:#17301B;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55}
.wrap{max-width:1180px;margin-inline:auto;padding-inline:20px}
h1,h2,h3{font-family:var(--display);line-height:1.08;text-wrap:balance;margin:0}
h2{font-size:clamp(30px,4.2vw,46px);font-weight:800;letter-spacing:-.01em}
h3{font-size:21px;font-weight:700}
p{margin:0}
a{color:inherit}
.eyebrow{font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--green-ink)}
.lead{font-size:19px;color:var(--muted);max-width:62ch}
section{padding-block:88px}
.sec-head{display:grid;gap:14px;margin-bottom:44px;max-width:760px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:.02em;padding:14px 22px;border-radius:8px;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .15s, background .15s}
.btn:hover{transform:translateY(-1px)}
.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.btn-primary{background:var(--green);color:#0E1A10}
.btn-primary:hover{background:#56C958}
.btn-ghost{border-color:currentColor;background:transparent}
.btn-wa{background:#1FA855;color:#fff}
.btn svg{width:18px;height:18px;flex:none}

/* promo bar */
.promo{background:var(--green);color:#0E1A10;font-family:var(--display);font-weight:600;font-size:14px;text-align:center;padding:9px 16px;letter-spacing:.02em}
.promo a{font-weight:800}

/* nav */
nav.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--night) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--night-line);color:var(--night-ink)}
nav.top .wrap{display:flex;align-items:center;gap:24px;height:66px}
nav.top img{height:34px;width:auto}
nav.top .links{display:flex;gap:22px;margin-left:auto;font-family:var(--display);font-weight:500;font-size:15px}
nav.top .links a{text-decoration:none;color:var(--night-muted)}
nav.top .links a:hover{color:var(--night-ink)}
nav.top .btn{padding:10px 16px;font-size:14px}
@media (max-width:860px){nav.top .links{display:none} nav.top .btn{margin-left:auto}}

/* hero */
.hero{background:var(--night);color:var(--night-ink);padding-block:64px 0;overflow:hidden;position:relative}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--night-line) 1px,transparent 1px),linear-gradient(90deg,var(--night-line) 1px,transparent 1px);background-size:44px 44px;opacity:.35;mask-image:linear-gradient(180deg,#000 10%,transparent 85%)}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.02fr 1fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(38px,5.6vw,66px);font-weight:800;letter-spacing:-.015em}
.hero h1 em{font-style:normal;color:var(--green)}
.hero .lead{color:var(--night-muted);margin-top:20px}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero .ghost-light{color:var(--night-ink)}
.trust{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:22px;font-size:15px;color:var(--night-muted)}
.trust span{display:inline-flex;align-items:center;gap:7px}
.trust span::before{content:"";width:7px;height:7px;border-radius:2px;background:var(--green)}
.hero-visual{position:relative;min-height:470px;align-self:end}
.hero-visual .browser{position:absolute;right:-60px;bottom:-4px;width:640px;max-width:none}
.hero-visual .phone{position:absolute;left:0;bottom:-40px;width:236px;z-index:2}
.hero .wrap.statswrap{display:block}
.stats{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--night-line);border-top:1px solid var(--night-line);margin-top:64px}
.stats div{background:var(--night);padding:22px 20px}
.stats b{display:block;font-family:var(--display);font-size:30px;font-weight:800;color:var(--green)}
.stats span{font-size:14px;color:var(--night-muted)}
@media (max-width:980px){
  .hero .wrap{grid-template-columns:1fr}
  .hero-visual{min-height:400px}
  .hero-visual .browser{right:auto;left:120px;width:560px}
  .hero-visual .phone{width:210px;bottom:-30px}
  .stats{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .hero-visual{min-height:380px}
  .hero-visual .browser{left:70px;width:500px}
  .hero-visual .phone{width:200px}
}

/* ---- app mock components ---- */
.browser{background:#fff;border-radius:10px;box-shadow:0 30px 60px -20px rgba(0,0,0,.55),0 0 0 1px rgba(0,0,0,.08);overflow:hidden;color:#131C22;font-family:var(--body)}
.browser .bar{height:30px;background:#E7ECE9;display:flex;align-items:center;gap:6px;padding:0 12px}
.browser .bar i{width:10px;height:10px;border-radius:50%;background:#C6CFCA}
.browser .bar .url{margin-left:12px;flex:1;max-width:280px;height:18px;border-radius:5px;background:#fff;font:500 10px/18px var(--mono);color:#6C7B75;padding-left:8px}
.app{display:grid;grid-template-columns:132px 1fr;min-height:330px;font-size:11px}
.app .side{background:#131C22;color:#B9C7C1;padding:12px 10px;display:grid;align-content:start;gap:4px}
.app .side img{height:22px;width:auto;margin-bottom:10px}
.app .side span{padding:6px 8px;border-radius:5px}
.app .side span.on{background:#47B649;color:#0E1A10;font-weight:600}
.app .main{background:#F4F7F5;padding:14px;display:grid;gap:10px;align-content:start}
.app .title{font:700 14px var(--display);display:flex;justify-content:space-between;align-items:center}
.chip{display:inline-block;font:600 9.5px var(--body);padding:3px 7px;border-radius:20px;background:#E1F3E1;color:#1F6F23}
.chip.warn{background:#FCEFD2;color:#8A5B00}
.chip.bad{background:#FADCD8;color:#9B2A20}
.chip.blue{background:#DCEAF7;color:#1F5A93}
.chip.grey{background:#E6EBE8;color:#4B5A54}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.kpi{background:#fff;border:1px solid #DDE5E0;border-radius:7px;padding:8px}
.kpi small{display:block;color:#66756F;font-size:9px;text-transform:uppercase;letter-spacing:.06em}
.kpi b{font:800 17px var(--display)}
.kpi em{font-style:normal;font-size:9px;color:#237A27;font-weight:600}
.kpi em.dn{color:#B23A2E}
.panel{background:#fff;border:1px solid #DDE5E0;border-radius:7px;padding:10px}
.panel h5{margin:0 0 6px;font:700 11px var(--display)}
.grid2{display:grid;grid-template-columns:1.4fr 1fr;gap:8px}
.oscard{background:#fff;border:1px solid #DDE5E0;border-left:4px solid var(--cls);border-radius:7px;padding:9px 10px;display:grid;gap:5px}
.oscard .h{display:flex;align-items:center;gap:7px;font-weight:600;font-size:11px}
.oscard .h .cls{width:18px;height:18px;border-radius:50%;background:var(--cls);color:#fff;display:grid;place-items:center;font:700 9.5px var(--display);flex:none}
.oscard .h .code{margin-left:auto;font:500 9px var(--mono);color:#7A8983}
.oscard p{color:#4B5A54;font-size:10.5px;line-height:1.35}
.oscard .f{display:flex;justify-content:space-between;align-items:center;color:#7A8983;font-size:9.5px}
.cA{--cls:#D9483B}.cB{--cls:#E0A020}.cC{--cls:#3B82C4}

.phone{background:#0B1114;border-radius:34px;padding:9px;box-shadow:0 30px 60px -18px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.06) inset;color:#131C22}
.phone .scr{background:#F4F7F5;border-radius:26px;overflow:hidden;aspect-ratio:9/18.5;display:flex;flex-direction:column;font-size:11px}
.phone .notch{height:22px;display:flex;justify-content:center;align-items:center;background:#131C22}
.phone .notch i{width:60px;height:6px;border-radius:4px;background:#000}
.phone .ph{background:#131C22;color:#fff;padding:6px 12px 12px;display:flex;align-items:center;gap:8px;font:700 13px var(--display)}
.phone .ph img{height:20px;width:20px;border-radius:5px}
.phone .ph small{margin-left:auto;font:500 9px var(--body);color:#9DB0A8}
.phone .pb{padding:10px;display:grid;gap:8px;align-content:start;flex:1;overflow:hidden}
.phone .tabbar{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #DDE5E0;background:#fff;padding:7px 0 10px;text-align:center;font-size:8.5px;color:#7A8983}
.phone .tabbar b{color:#237A27}
.field{display:grid;gap:4px}
.field label{font-size:9.5px;font-weight:600;color:#4B5A54;display:flex;justify-content:space-between;align-items:center}
.field .in{background:#fff;border:1px solid #D2DBD6;border-radius:6px;padding:7px 8px;font-size:10.5px;color:#131C22;line-height:1.35}
.pills{display:flex;flex-wrap:wrap;gap:5px}
.pills span{border:1px solid #CBD5D0;border-radius:20px;padding:4px 9px;font-size:9.5px;background:#fff}
.pills span.on{background:#131C22;color:#fff;border-color:#131C22}
.mic{display:inline-flex;align-items:center;gap:4px;background:#D9483B;color:#fff;border-radius:20px;padding:3px 8px;font-size:9px;font-weight:600;animation:pulse 1.6s infinite}
.mic::before{content:"";width:6px;height:6px;border-radius:50%;background:#fff}
@keyframes pulse{50%{box-shadow:0 0 0 5px rgba(217,72,59,.18)}}
.sig{height:44px;border:1px dashed #B9C5BF;border-radius:6px;background:#fff;position:relative}
.sig svg{position:absolute;inset:6px 10px;width:calc(100% - 20px);height:calc(100% - 12px)}
.bigbtn{background:#47B649;color:#0E1A10;border-radius:7px;text-align:center;padding:9px;font:700 11px var(--display)}
.row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid #EDF1EE;font-size:10.5px}
.row:last-child{border-bottom:0}
.bar-mini{height:6px;border-radius:4px;background:#E6EBE8;overflow:hidden;flex:1;max-width:90px}
.bar-mini i{display:block;height:100%;background:var(--c,#47B649)}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;font-size:9px;text-align:center}
.cal b{color:#7A8983;font-weight:600;font-size:8.5px}
.cal span{background:#fff;border:1px solid #E1E8E4;border-radius:4px;padding:5px 0 7px;position:relative}
.cal span.p::after,.cal span.q::after,.cal span.r::after{content:"";position:absolute;left:50%;bottom:2px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%}
.cal span.p::after{background:#47B649}.cal span.q::after{background:#3B82C4}.cal span.r::after{background:#D9483B}
.cal span.today{background:#131C22;color:#fff;border-color:#131C22}
.faces{display:flex;gap:8px;justify-content:center}
.faces span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:22px;background:#fff;border:1px solid #D2DBD6}
.faces span.on{border:2px solid #47B649;background:#E1F3E1}

/* pains */
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pain{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:grid;gap:10px;align-content:start}
.pain .q{font-family:var(--display);font-weight:700;font-size:20px;line-height:1.2}
.pain p{color:var(--muted);font-size:16px}
.pain .fix{font-size:15px;color:var(--green-ink);font-weight:600;border-top:1px dashed var(--line);padding-top:10px;margin-top:4px}
@media (max-width:860px){.pains{grid-template-columns:1fr}}

/* feature tour */
.tour{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:start}
.tabs{display:grid;gap:6px;position:sticky;top:90px}
.tabs button{all:unset;cursor:pointer;display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:center;padding:12px 14px;border-radius:9px;border:1px solid transparent;color:var(--muted);font-family:var(--display);font-weight:600;font-size:16px}
.tabs button .ico{width:34px;height:34px;border-radius:8px;background:var(--surface-2);display:grid;place-items:center;color:var(--ink)}
.tabs button .ico svg{width:18px;height:18px}
.tabs button[aria-selected="true"]{background:var(--surface);border-color:var(--line);color:var(--ink)}
.tabs button[aria-selected="true"] .ico{background:var(--green);color:#0E1A10}
.tabs button:focus-visible{outline:3px solid var(--green)}
.stage{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:30px;align-items:center}
.stage .copy{display:grid;gap:14px}
.stage .copy h3{font-size:26px}
.stage .copy p{color:var(--muted)}
.stage ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.stage li{display:grid;grid-template-columns:20px 1fr;gap:10px;font-size:16px}
.stage li::before{content:"";width:16px;height:16px;margin-top:4px;border-radius:4px;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%230E1A10' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.stage .who{font-size:13px;font-family:var(--display);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.stage .phone{width:250px}
.stage.wide{grid-template-columns:1fr}
.stage.wide .browser{width:100%}
.stage .pane{display:none}
@media (max-width:980px){
  .tour{grid-template-columns:1fr}
  .tabs{position:static;grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;padding-bottom:6px}
  .tabs button{grid-template-columns:28px auto;padding:9px 12px;font-size:14px}
  .tabs button .ico{width:28px;height:28px}
  .stage{grid-template-columns:1fr;padding:20px}
  .stage .phone{margin-inline:auto}
}
.shot-wide{overflow-x:auto}
.shot-wide .browser{min-width:560px}

/* gallery strip */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:56px}
.gallery figure{margin:0;display:grid;gap:10px;justify-items:center}
.gallery .phone{width:100%;max-width:220px}
.gallery figcaption{font-family:var(--display);font-weight:600;font-size:15px;text-align:center}
.gallery figcaption small{display:block;font-family:var(--body);font-weight:400;color:var(--muted);font-size:14px}
@media (max-width:980px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.gallery{grid-template-columns:minmax(0,1fr)}.gallery .phone{max-width:240px}}
.gallery figure{min-width:0}

/* flow */
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:s}
.step{padding:22px 22px 22px 0;border-top:3px solid var(--line);position:relative;display:grid;gap:8px;align-content:start}
.step::before{counter-increment:s;content:counter(s,decimal-leading-zero);font:500 13px var(--mono);color:var(--green-ink)}
.step::after{content:"";position:absolute;top:-8px;left:0;width:13px;height:13px;border-radius:50%;background:var(--green);border:3px solid var(--bg)}
.step b{font-family:var(--display);font-size:19px}
.step p{color:var(--muted);font-size:15.5px}
@media (max-width:860px){.flow{grid-template-columns:1fr 1fr;row-gap:20px}}
@media (max-width:520px){.flow{grid-template-columns:1fr}}

/* roi */
.roi{background:var(--night);color:var(--night-ink)}
.roi .eyebrow{color:var(--green)}
.roi .lead{color:var(--night-muted)}
.calc{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:8px}
.calc .inputs{display:grid;gap:22px;background:var(--night-2);border:1px solid var(--night-line);border-radius:14px;padding:26px}
.calc label{display:grid;gap:8px;font-weight:500}
.calc label span{display:flex;justify-content:space-between;font-size:15px;color:var(--night-muted)}
.calc label output{font:600 15px var(--mono);color:var(--night-ink)}
.calc input[type=range]{width:100%;accent-color:var(--green)}
.calc .result{display:grid;gap:14px;align-content:center;padding:10px}
.calc .big{font:800 clamp(40px,6vw,64px)/1 var(--display);color:var(--green);font-variant-numeric:tabular-nums}
.calc .result p{color:var(--night-muted)}
.calc small{font-size:13px;color:var(--night-muted)}
@media (max-width:860px){.calc{grid-template-columns:1fr}}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.plan{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:18px;position:relative}
.plan.hot{border:2px solid var(--green);box-shadow:0 20px 40px -24px rgba(35,122,39,.5)}
.plan .tag{position:absolute;top:-13px;left:28px;background:var(--green);color:#0E1A10;font:700 12px var(--display);letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:5px}
.plan h3{font-size:24px}
.plan .for{color:var(--muted);font-size:15px;margin-top:4px}
.price{display:flex;align-items:baseline;gap:6px;font-family:var(--display)}
.price b{font-size:44px;font-weight:800;font-variant-numeric:tabular-nums}
.price span{color:var(--muted);font-size:16px}
.billing{display:inline-flex;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:4px;gap:4px;margin-bottom:30px}
.billing button{font:600 15px var(--display);border:0;background:transparent;color:var(--muted);padding:9px 16px;border-radius:7px;cursor:pointer}
.billing button small{font-size:12px;color:var(--green-ink);margin-left:4px}
.billing button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.billing button[aria-pressed="true"] small{color:var(--green)}
.price .from{font:500 14px var(--body);color:var(--muted);align-self:center}
.annual{font-size:14px;color:var(--muted);margin-top:4px;min-height:1.4em}
.plan ul{list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:15.5px;flex:1}
.plan li{display:grid;grid-template-columns:18px 1fr;gap:9px}
.plan li::before{content:"✓";color:var(--green-ink);font-weight:700}
.plan li.off{color:var(--muted);opacity:.65}
.plan li.off::before{content:"–"}
.plan .btn{justify-content:center}
.plan .btn-ghost{color:var(--ink)}
.fine{margin-top:22px;display:flex;flex-wrap:wrap;gap:10px 26px;color:var(--muted);font-size:15px}
.fine span::before{content:"● ";color:var(--green)}
@media (max-width:920px){.plans{grid-template-columns:1fr}}

/* consultoria */
.consult{display:grid;grid-template-columns:1fr 1.25fr;gap:48px;align-items:start}
.stages{display:grid;gap:14px}
.stg{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px 22px;display:grid;grid-template-columns:auto 1fr;gap:6px 18px}
.stg .n{grid-row:span 3;font:800 38px/1 var(--display);color:var(--green-ink)}
.stg b{font-family:var(--display);font-size:19px}
.stg p{color:var(--muted);font-size:15.5px}
.stg .dur{font:500 12.5px var(--mono);color:var(--muted)}
.combo{margin-top:26px;background:var(--green-soft);border:1px solid color-mix(in srgb,var(--green) 40%,transparent);border-radius:12px;padding:20px 22px;display:grid;gap:8px}
.combo b{font-family:var(--display);font-size:19px}
@media (max-width:920px){.consult{grid-template-columns:1fr}}

.cmp-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.cmp{width:100%;min-width:620px;border-collapse:collapse;font-size:16px}
.cmp th,.cmp td{padding:15px 20px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.cmp tr:last-child th,.cmp tr:last-child td{border-bottom:0}
.cmp thead th{font:700 15px var(--display);letter-spacing:.04em;color:var(--muted)}
.cmp tbody th{font:600 16px var(--display);width:22%}
.cmp td{color:var(--muted)}
.cmp .us{background:var(--green-soft);color:var(--ink);font-weight:500}
.cmp thead .us{color:var(--green-ink)}
.segs{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.segs span{border:1px solid var(--line);background:var(--surface);border-radius:30px;padding:8px 16px;font:600 14px var(--display);color:var(--muted)}
/* faq */
.faq{display:grid;gap:10px;max-width:860px}
details{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:0 20px}
summary{cursor:pointer;list-style:none;padding:18px 0;font-family:var(--display);font-weight:600;font-size:18px;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-weight:400;font-size:24px;line-height:1;color:var(--green-ink)}
details[open] summary::after{content:"–"}
details p{padding-bottom:18px;color:var(--muted)}

/* contact */
.contact{background:var(--night);color:var(--night-ink)}
.contact .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.contact .lead{color:var(--night-muted)}
.contact .eyebrow{color:var(--green)}
form{background:var(--night-2);border:1px solid var(--night-line);border-radius:14px;padding:26px;display:grid;gap:14px}
form .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
form label{display:grid;gap:6px;font-size:14px;color:var(--night-muted);font-weight:500}
form input,form select{font:inherit;font-size:16px;color:var(--night-ink);background:var(--night);border:1px solid var(--night-line);border-radius:8px;padding:11px 12px;width:100%}
form .btn{justify-content:center;margin-top:4px}
.ok{display:grid;gap:12px;background:var(--night-2);border:1px solid var(--green);border-radius:14px;padding:26px}
.ok b{font-family:var(--display);font-size:22px}
.ok p{color:var(--night-muted)}
.wa-card{margin-top:28px;display:grid;gap:12px;padding:22px;border:1px solid var(--night-line);border-radius:12px}
.wa-card .num{font:600 20px var(--mono);user-select:all}
.wa-card .acts{display:flex;flex-wrap:wrap;gap:10px}
.copy-btn{background:transparent;color:var(--night-ink);border:1px solid var(--night-line);border-radius:8px;padding:10px 14px;font:600 14px var(--display);cursor:pointer}
@media (max-width:920px){.contact .wrap{grid-template-columns:1fr} form .two{grid-template-columns:1fr}}

footer{background:#0A1013;color:#8FA199;padding-block:40px;font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between}
footer img{height:40px;width:auto}

/* floating whatsapp */
.fab{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:30;width:56px;height:56px;border-radius:50%;background:#1FA855;display:grid;place-items:center;box-shadow:0 10px 24px -6px rgba(0,0,0,.45)}
.fab svg{width:28px;height:28px;fill:#fff}
.phone .scr.shot{aspect-ratio:390/844;display:block;background:#F2F4F6}
.phone .scr.shot img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.browser .bshot{display:block;width:100%;height:auto}
.hero-visual .browser{bottom:20px}
.hero-visual .phone{bottom:-50px;left:-24px;width:205px}
.mnav{background:none;border:0;padding:0;border-radius:0}
.mnav summary{padding:0;font:inherit}
.mnav summary::after{content:none!important}
.mnav[open] summary{border-color:var(--green)}
.stage.wide .browser{max-width:100%}
.shot-wide .browser{min-width:0}

html,body{margin:0}
img{max-width:100%}
/* nav with dropdown */
nav.top .links{align-items:center}
.dd{position:relative}
.dd > a::after{content:" ▾";font-size:11px}
.dd .menu{position:absolute;top:100%;left:-16px;min-width:300px;background:var(--night-2);border:1px solid var(--night-line);border-radius:10px;padding:8px;display:none;box-shadow:0 20px 40px -12px rgba(0,0,0,.5)}
.dd:hover .menu,.dd:focus-within .menu{display:grid}
.dd .menu a{padding:9px 12px;border-radius:7px;display:flex;gap:10px;align-items:center;font-size:14.5px}
.dd .menu a:hover{background:var(--night);color:var(--night-ink)}
.dd .menu small{font:500 11px var(--mono);color:var(--green);min-width:62px}
nav.top .links a.on{color:var(--night-ink)}
.mnav{display:none;margin-left:8px}
.mnav summary{list-style:none;cursor:pointer;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--night-line);border-radius:8px}
.mnav summary::-webkit-details-marker{display:none}
.mnav summary svg{width:20px;height:20px;stroke:var(--night-ink)}
.mnav .panel-m{position:absolute;left:0;right:0;top:66px;background:var(--night);border-bottom:1px solid var(--night-line);padding:12px 20px 20px;display:grid;gap:2px;max-height:calc(100vh - 80px);overflow:auto}
.mnav .panel-m a{padding:11px 4px;text-decoration:none;font-family:var(--display);font-weight:600;color:var(--night-ink);border-bottom:1px solid var(--night-line)}
.mnav .panel-m a.sub{font-weight:500;color:var(--night-muted);padding-left:16px;font-size:15px}
@media (max-width:980px){.mnav{display:block} nav.top .links{display:none} nav.top .btn{margin-left:auto}}
@media (max-width:420px){nav.top .btn{display:none} .mnav{margin-left:auto}}
@media (min-width:861px) and (max-width:1100px){nav.top .links{gap:14px;font-size:14px}}

/* page hero */
.phero{background:var(--night);color:var(--night-ink);padding-block:56px 60px;position:relative;overflow:hidden}
.phero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--night-line) 1px,transparent 1px),linear-gradient(90deg,var(--night-line) 1px,transparent 1px);background-size:44px 44px;opacity:.3;mask-image:linear-gradient(180deg,#000,transparent 90%)}
.phero .wrap{position:relative;display:grid;gap:16px}
.phero h1{font-size:clamp(34px,5vw,56px);font-weight:800;max-width:20ch}
.phero .lead{color:var(--night-muted)}
.phero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}
.phero .btn-ghost{color:var(--night-ink)}
.crumb{font-size:14px;color:var(--night-muted);display:flex;gap:8px;flex-wrap:wrap}
.crumb a{color:var(--night-muted)}
.tagpill{display:inline-block;justify-self:start;font:600 13px var(--mono);color:#0E1A10;background:var(--green);padding:5px 10px;border-radius:6px}

/* fronts */
.fronts{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px}
.front{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit;transition:border-color .15s, transform .15s}
.front:hover{border-color:var(--green);transform:translateY(-2px)}
.front.main{background:var(--night);color:var(--night-ink);border-color:var(--night-line)}
.front.main p{color:var(--night-muted)}
.front .ic{width:44px;height:44px;border-radius:10px;background:var(--green);display:grid;place-items:center;color:#0E1A10}
.front .ic svg{width:22px;height:22px}
.front h3{font-size:23px}
.front p{color:var(--muted);flex:1}
.front .go{font:700 15px var(--display);color:var(--green-ink)}
.front.main .go{color:var(--green)}
@media (max-width:920px){.fronts{grid-template-columns:1fr}}

/* service grid */
.sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.scard{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;transition:border-color .15s}
.scard:hover{border-color:var(--green)}
.scard .top{display:flex;justify-content:space-between;align-items:center}
.scard .ic{width:38px;height:38px;border-radius:9px;background:var(--surface-2);display:grid;place-items:center;color:var(--ink)}
.scard .ic svg{width:20px;height:20px}
.scard .nr{font:500 12px var(--mono);color:var(--green-ink)}
.scard b{font-family:var(--display);font-size:18px;line-height:1.2}
.scard p{color:var(--muted);font-size:15px;flex:1}
.scard .go{font:600 14px var(--display);color:var(--green-ink)}
@media (max-width:1060px){.sgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.sgrid{grid-template-columns:1fr}}

/* service page */
.svc{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}
.svc .body{display:grid;gap:44px}
.svc h2{font-size:clamp(26px,3vw,34px)}
.svc .body p{color:var(--muted);max-width:68ch}
.blk{display:grid;gap:16px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips span{background:var(--surface);border:1px solid var(--line);border-radius:30px;padding:8px 16px;font:600 15px var(--display)}
.checks{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.checks li{display:grid;grid-template-columns:22px 1fr;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-size:16px}
.checks li::before{content:"";width:18px;height:18px;margin-top:3px;border-radius:5px;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%230E1A10' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
@media (max-width:700px){.checks{grid-template-columns:1fr}}
.aside{position:sticky;top:90px;display:grid;gap:14px}
.aside .box{background:var(--night);color:var(--night-ink);border-radius:14px;padding:24px;display:grid;gap:12px}
.aside .box p{color:var(--night-muted);font-size:15.5px}
.aside .box b{font-family:var(--display);font-size:21px}
.aside .box .btn{justify-content:center}
.aside .box .btn-ghost{color:var(--night-ink)}
.aside .rel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;display:grid;gap:4px}
.aside .rel a{padding:8px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:15px;display:flex;justify-content:space-between;gap:10px}
.aside .rel a:last-child{border-bottom:0}
.aside .rel a small{white-space:nowrap;font:500 12px var(--mono);color:var(--green-ink)}
@media (max-width:980px){.svc{grid-template-columns:1fr}.aside{position:static}}

/* why */
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.why div{border-top:3px solid var(--green);padding-top:16px;display:grid;gap:8px;align-content:start}
.why b{font-family:var(--display);font-size:19px}
.why p{color:var(--muted);font-size:15.5px}
@media (max-width:920px){.why{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.why{grid-template-columns:1fr}}

/* band */
.band{background:var(--green);color:#0E1A10;padding-block:48px}
.band .wrap{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between}
.band h2{font-size:clamp(26px,3.4vw,38px);max-width:24ch}
.band .acts{display:flex;flex-wrap:wrap;gap:12px}
.band .btn-dark{background:#111A1F;color:#fff}
.band .btn-ghost{color:#0E1A10}

/* empresa */
.split{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start}
.split p{color:var(--muted)}
.split .txt{display:grid;gap:16px}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.facts div{background:var(--surface);padding:22px}
.facts b{display:block;font:800 30px var(--display);color:var(--green-ink)}
.facts span{color:var(--muted);font-size:15px}
.cities{display:flex;flex-wrap:wrap;gap:10px}
.cities span{background:var(--surface);border:1px solid var(--line);border-radius:30px;padding:8px 16px;font:600 15px var(--display)}
.cities span.base{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.data{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;display:grid;gap:4px}
.data .row2{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:15.5px}
.data .row2:last-child{border-bottom:0}
.data .row2 span{color:var(--muted)}
@media (max-width:920px){.split{grid-template-columns:1fr}}
@media (max-width:480px){.data .row2{grid-template-columns:1fr;gap:2px}}

/* consultoria */
.deliv{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.deliv div{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;display:grid;gap:8px;align-content:start}
.deliv b{font-family:var(--display);font-size:18px}
.deliv p{color:var(--muted);font-size:15.5px}
@media (max-width:920px){.deliv{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.deliv{grid-template-columns:1fr}}
.stages-wide .stg{grid-template-columns:auto 1fr auto}
.stages-wide .stg .n{grid-row:span 2}
.stages-wide ul{grid-column:2 / -1;margin:6px 0 0;padding-left:18px;color:var(--muted);font-size:15.5px;display:grid;gap:4px}
@media (max-width:640px){.stages-wide .stg{grid-template-columns:auto 1fr}}

footer.foot{background:#0A1013;color:#8FA199;padding-block:52px 28px;font-size:14.5px}
footer.foot .wrap.fgrid{display:grid;justify-content:normal;align-items:start}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.1fr;gap:32px}
.fcol{display:grid;gap:8px;align-content:start}
.fcol img{height:44px;width:auto;margin-bottom:6px}
.fcol b{font:700 14px var(--display);letter-spacing:.1em;text-transform:uppercase;color:#E9F0EC;margin-bottom:4px}
.fcol a{color:#8FA199;text-decoration:none}
.fcol a:hover{color:#E9F0EC}
footer.foot .wrap.legal{display:block}
.legal{border-top:1px solid #1E2A31;margin-top:36px;padding-top:20px;font-size:13px}
@media (max-width:920px){.fgrid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.fgrid{grid-template-columns:1fr}}
