@font-face{font-family:"Newsreader";src:url(../fonts/newsreader.woff2?v=2) format("woff2");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(../fonts/schibsted-400.woff2?v=2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(../fonts/schibsted-500.woff2?v=2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(../fonts/schibsted-600.woff2?v=2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(../fonts/schibsted-700.woff2?v=2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(../fonts/plexmono-400.woff2?v=2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(../fonts/plexmono-500.woff2?v=2) format("woff2");font-weight:500;font-display:swap}
/* Concepto: el diario contable se convierte en informe. Papel claro con tinta azul marino de la marca,
   verde Bivoll solo para lo que crece, y una banda marina para enseñar el producto. */
:root{
  --paper:#F6F8F4;
  --surface:#FFFFFF;
  --ink:#0F1D38;
  --ink-2:#4A566E;
  --ink-3:#646E82;
  --rule:#DCE2D8;
  --rule-strong:#C5CDC1;
  --navy:#112347;
  --navy-2:#1A3160;
  --navy-rule:#2B4374;
  --on-navy:#EEF2F8;
  --on-navy-2:#A9B6CE;
  --green:#178A43;
  --green-deep:#0E6B32;
  --lime:#B6DF62;
  --mint:#E6F2E1;
  --neg:#B8432F;
  --amber:#B7791F;

  --f-display:"Newsreader","Iowan Old Style","Palatino Linotype",Georgia,serif;
  --f-body:"Schibsted Grotesk","Segoe UI",system-ui,-apple-system,sans-serif;
  --f-data:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Consolas,monospace;

  --wrap:1180px;
  --gut:max(20px, env(safe-area-inset-left, 0px));
  --gut-r:max(20px, env(safe-area-inset-right, 0px));
  --radius:14px;
  --shadow:0 1px 1px rgba(15,29,56,.04),0 8px 24px -8px rgba(15,29,56,.12),0 28px 56px -28px rgba(15,29,56,.22);
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:var(--f-display);font-weight:500;letter-spacing:-.015em;line-height:1.08;margin:0;text-wrap:balance}
p{margin:0}
.num{font-variant-numeric:lining-nums}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-left:var(--gut);padding-right:var(--gut-r)}
section[id]{scroll-margin-top:84px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:12px}

/* ---------- Botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 16px/1 var(--f-body);text-decoration:none;padding:16px 22px;border-radius:10px;border:1px solid transparent;transition:background .18s,color .18s,border-color .18s,transform .18s;cursor:pointer;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--ink);color:#fff}
.btn-primary:hover{background:var(--green-deep)}
.btn-ghost{border-color:var(--rule-strong);color:var(--ink);background:var(--surface)}
.btn-ghost:hover{border-color:var(--ink)}
.btn-lime{background:var(--lime);color:var(--ink)}
.btn-lime:hover{background:#c8ea80}
.btn-line-light{border-color:rgba(238,242,248,.35);color:var(--on-navy)}
.btn-line-light:hover{border-color:var(--on-navy)}
.btn svg{flex:none}

/* ---------- Cabecera ---------- */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(246,248,244,.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s}
.nav.scrolled{border-bottom-color:var(--rule)}
.nav-in{display:flex;align-items:center;gap:32px;height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand-word{font-family:var(--f-display);font-weight:600;font-size:22px;letter-spacing:.07em;line-height:1}
.nav-links{display:flex;gap:28px;margin-left:12px}
.nav-links a{text-decoration:none;font-size:15px;color:var(--ink-2);font-weight:500}
.nav-links a:hover{color:var(--ink)}
.nav-cta{margin-left:auto;display:flex;align-items:center;gap:18px}
.nav-cta .login{font-size:15px;font-weight:500;text-decoration:none;color:var(--ink-2)}
.nav-cta .login:hover{color:var(--ink)}
.nav-cta .btn{padding:12px 18px;font-size:15px}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--rule-strong);border-radius:10px;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer;color:var(--ink)}
.mobile-menu{display:none}

/* ---------- Hero ---------- */
.hero{padding-block:56px 96px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:64px;align-items:center}
.tag{display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:600;color:var(--green-deep);background:var(--mint);padding:7px 13px 7px 11px;border-radius:999px}
.tag i{width:7px;height:7px;border-radius:50%;background:var(--green);display:block}
.hero h1.tag{border-radius:14px;font-family:var(--f-body);letter-spacing:0;line-height:1.3;text-wrap:pretty;max-width:100%}
.hero .claim{font-family:var(--f-display);font-weight:500;color:var(--ink);font-size:clamp(2.55rem,5.4vw,4.5rem);line-height:1.01;margin-top:26px;letter-spacing:-.025em;text-wrap:balance}
.hero-sub{font-size:clamp(1.05rem,1.4vw,1.2rem);color:var(--ink-2);margin-top:24px;max-width:50ch;line-height:1.55}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hero-fine{margin-top:20px;font-size:14px;color:var(--ink-3)}

/* Diario → informe */
.stage{position:relative;padding-bottom:320px}
.stage .sheet{width:94%}
.sheet{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.sheet-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--rule);background:#FBFCFA}
.xls{width:20px;height:20px;border-radius:4px;background:#1D6F42;display:grid;place-items:center;color:#fff;font:700 10px/1 var(--f-body);flex:none}
.sheet-name{font-family:var(--f-data);font-size:12.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.sheet-rows{font-size:12px;color:var(--ink-3);margin-left:auto;white-space:nowrap}
.ledger{width:100%;border-collapse:collapse;font-family:var(--f-data);font-size:12.5px}
.ledger th{font:600 11.5px/1 var(--f-body);color:var(--ink-3);text-align:left;padding:10px 12px;border-bottom:1px solid var(--rule)}
.ledger td{padding:8px 12px;border-bottom:1px solid #EEF1EC;white-space:nowrap;color:var(--ink)}
.ledger td.c{color:var(--green-deep);font-weight:500}
.ledger td.t{font-family:var(--f-body);font-size:13px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
.ledger .r{text-align:right}
.ledger td.r{font-variant-numeric:tabular-nums}
.ledger tr:last-child td{border-bottom:0}
.ledger td.d{color:var(--ink-3)}

.report{position:absolute;right:-12px;bottom:0;width:min(392px,68%);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--rule);padding:22px 22px 18px}
.report-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.report-title{font-family:var(--f-display);font-size:21px;font-weight:600;letter-spacing:-.01em}
.report-sub{font-size:12.5px;color:var(--ink-3);margin-top:3px}
.pill{font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:999px;background:var(--mint);color:var(--green-deep);white-space:nowrap}
.pl{margin-top:14px;display:grid}
.pl-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:6px 0;font-size:13.5px;border-bottom:1px solid #EEF1EC;align-items:baseline}
.pl-row span:last-child{font-variant-numeric:lining-nums;font-weight:500}
.pl-row.neg span:last-child{color:var(--ink-2)}
.pl-row.key{font-weight:700;border-bottom-color:var(--rule)}
.pl-row.key span:last-child{font-weight:700}
.pl-row.key em{font-style:normal;font-weight:500;color:var(--green-deep);margin-left:8px;font-size:12px}
.pl-row.total{border-bottom:0;padding-top:9px;font-size:14.5px}
.bench{margin-top:12px;display:flex;align-items:center;gap:12px;padding:11px 12px;background:var(--paper);border-radius:10px;font-size:12.5px;color:var(--ink-2);line-height:1.35}
.bench-bars{display:grid;gap:4px;flex:none;width:64px}
.bench-bars b{display:block;height:6px;border-radius:3px;background:var(--green)}
.bench-bars b+b{background:var(--rule-strong)}
.bench strong{color:var(--ink)}

.flow{position:absolute;left:0;bottom:200px;display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--green-deep);background:var(--paper);padding:6px 12px 6px 8px;border-radius:999px;border:1px solid var(--rule)}
.flow svg{flex:none}

@media (prefers-reduced-motion:no-preference){
  .ledger tbody tr{animation:rowIn .5s cubic-bezier(.2,.7,.2,1) both}
  .ledger tbody tr:nth-child(1){animation-delay:.10s}
  .ledger tbody tr:nth-child(2){animation-delay:.16s}
  .ledger tbody tr:nth-child(3){animation-delay:.22s}
  .ledger tbody tr:nth-child(4){animation-delay:.28s}
  .ledger tbody tr:nth-child(5){animation-delay:.34s}
  .ledger tbody tr:nth-child(6){animation-delay:.40s}
  .ledger tbody tr:nth-child(7){animation-delay:.46s}
  .ledger tbody tr:nth-child(8){animation-delay:.52s}
  .ledger tbody tr:nth-child(9){animation-delay:.58s}
  .flow{animation:fadeIn .5s .8s both}
  .report{animation:rise .8s .95s cubic-bezier(.2,.75,.15,1) both}
  .pl-row{animation:fadeIn .4s both}
  .pl-row:nth-child(1){animation-delay:1.15s}.pl-row:nth-child(2){animation-delay:1.21s}.pl-row:nth-child(3){animation-delay:1.27s}
  .pl-row:nth-child(4){animation-delay:1.33s}.pl-row:nth-child(5){animation-delay:1.39s}.pl-row:nth-child(6){animation-delay:1.45s}
  .pl-row:nth-child(7){animation-delay:1.51s}.pl-row:nth-child(8){animation-delay:1.57s}
  .bench{animation:fadeIn .5s 1.7s both}
}
@keyframes rowIn{from{opacity:.0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes rise{from{opacity:0;transform:translateY(28px) scale(.98)}to{opacity:1;transform:none}}

/* ---------- Programas compatibles ---------- */
.works{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--surface)}
.works-in{display:flex;align-items:center;gap:20px 40px;padding-block:26px;flex-wrap:wrap}
.works p{font-size:14.5px;color:var(--ink-2);max-width:30ch;line-height:1.45}
.works ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 38px;align-items:baseline;margin-left:auto}
.works li{font-family:var(--f-display);font-size:23px;font-weight:500;color:var(--ink);letter-spacing:-.01em}
.works li small{font-family:var(--f-body);font-size:12px;font-weight:600;color:var(--green-deep);margin-left:6px;letter-spacing:0}

/* ---------- Secciones ---------- */
.sec{padding-block:120px}
.sec-head{max-width:760px}
.kicker{font-size:14.5px;font-weight:600;color:var(--green-deep);margin-bottom:16px}
.sec h2,.tour h2{font-size:clamp(2.1rem,3.8vw,3.25rem)}
.sec-lead{font-size:1.125rem;color:var(--ink-2);margin-top:20px;max-width:58ch}

/* Antes y después */
.compare{margin-top:56px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden}
.cmp-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1fr);border-top:1px solid var(--rule)}
.cmp-row:first-child{border-top:0}
.cmp-row>div{padding:22px 28px;min-width:0}
.cmp-row>div+div{border-left:1px solid var(--rule)}
.cmp-head>div{padding-block:16px;font-size:13.5px;font-weight:600;color:var(--ink-3)}
.cmp-head .yes{color:var(--green-deep)}
.cmp-task{font-family:var(--f-display);font-size:19.5px;font-weight:500;line-height:1.3}
.cmp-now{color:var(--ink-2);font-size:15.5px}
.cmp-new a{color:inherit;text-underline-offset:3px;text-decoration-color:var(--green)}
.cmp-new{font-size:15.5px;font-weight:500;background:linear-gradient(90deg,rgba(230,242,225,.7),rgba(230,242,225,0))}
.cmp-new::before{content:"";display:inline-block;width:16px;height:10px;margin-right:10px;border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg) translate(2px,-3px)}

/* Informes (banda marina) */
.tour{background:var(--navy);color:var(--on-navy);padding-block:120px}
.tour .kicker{color:var(--lime)}
.tour .sec-lead{color:var(--on-navy-2)}
.tour-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px;margin-top:56px;align-items:start}
.tabs{display:grid;gap:4px}
.tab{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:28px 1fr;gap:4px 12px;padding:16px 18px;border-radius:12px;color:var(--on-navy-2);transition:background .2s,color .2s}
.tab:hover{background:rgba(255,255,255,.04);color:var(--on-navy)}
.tab:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.tab[aria-selected="true"]{background:var(--navy-2);color:var(--on-navy)}
.tab svg{grid-row:span 2;margin-top:3px;opacity:.7}
.tab[aria-selected="true"] svg{opacity:1;color:var(--lime)}
.tab b{font-weight:600;font-size:16px}
.tab span{font-size:13.5px;line-height:1.45;color:var(--on-navy-2)}
.screen{background:var(--surface);color:var(--ink);border-radius:16px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.55);min-width:0}
.screen-bar{display:flex;align-items:center;gap:14px;padding:12px 16px;background:#EEF1EC;border-bottom:1px solid var(--rule)}
.dots{display:flex;gap:6px}.dots i{width:10px;height:10px;border-radius:50%;background:#D3D9CF;display:block}
.url{flex:1;max-width:340px;margin-inline:auto;background:var(--surface);border-radius:7px;font:12.5px/1 var(--f-data);color:var(--ink-2);padding:7px 12px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.screen-body{padding:28px 30px 30px;min-height:520px}
.panel{display:none}
.panel.on{display:block;animation:fadeIn .35s both}
.panel:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:6px}
.p-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;align-items:flex-end}
.p-title{font-family:var(--f-display);font-size:26px;font-weight:600;letter-spacing:-.01em}
.p-meta{font-size:13px;color:var(--ink-3);margin-top:4px}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}
.kpi{border:1px solid var(--rule);border-radius:12px;padding:14px 16px;min-width:0}
.kpi small{display:block;font-size:12.5px;color:var(--ink-3);font-weight:500}
.kpi strong{display:block;font-family:var(--f-display);font-size:26px;font-weight:600;margin-top:6px;letter-spacing:-.01em;font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}
.kpi em{display:block;font-style:normal;font-size:12.5px;margin-top:2px;color:var(--ink-2)}
.kpi em.up{color:var(--green-deep)}
.kpi em.dn{color:var(--neg)}
.chart{margin-top:22px;border:1px solid var(--rule);border-radius:12px;padding:16px 16px 10px;overflow-x:auto}
.chart-h{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;font-size:13px;color:var(--ink-2);margin-bottom:8px}
.chart-h b{color:var(--ink);font-weight:600}
.legend{display:flex;gap:14px;flex-wrap:wrap}
.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.chart svg{display:block;width:100%;height:auto}
.split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;margin-top:22px}
.split .chart{margin-top:0}
.rt{width:100%;border-collapse:collapse;font-size:14px}
.rt th{text-align:left;font-size:12px;color:var(--ink-3);font-weight:600;padding:0 0 10px}
.rt th.r,.rt td.r{text-align:right}
.rt td{padding:11px 0;border-top:1px solid #EEF1EC;font-variant-numeric:lining-nums}
.rt td.r{white-space:nowrap}
.rt td.r{padding-left:12px}
.chip{display:inline-block;font-size:11.5px;font-weight:600;padding:3px 8px;border-radius:999px;white-space:nowrap}
.chip.ok{background:var(--mint);color:var(--green-deep)}
.chip.ko{background:#F7E5E1;color:var(--neg)}
.source{font-size:12.5px;color:var(--ink-3);margin-top:12px}

/* Cómo funciona */
.steps{list-style:none;margin:64px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;counter-reset:s;position:relative}
.steps::before{content:"";position:absolute;left:24px;right:calc((100% - 56px) / 3 - 24px);top:24px;height:1px;background:var(--rule-strong)}
.step{position:relative;counter-increment:s}
.step::before{content:counter(s);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--paper);border:1px solid var(--rule-strong);font-family:var(--f-display);font-size:21px;font-weight:600;position:relative}
.step:last-child::before{background:var(--ink);color:#fff;border-color:var(--ink)}
.step h3{font-size:24px;margin-top:22px}
.step p{color:var(--ink-2);margin-top:10px;font-size:16px;max-width:36ch}
.pgc{margin-top:16px;display:grid;gap:6px;font-size:13.5px}
.pgc div{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--rule);border-radius:9px;padding:8px 12px}
.pgc code{font-family:var(--f-data);font-size:12.5px;color:var(--green-deep);font-weight:500;white-space:nowrap}
.pgc svg{flex:none;color:var(--ink-3)}

/* Calculadora */
.calc{margin-top:56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--surface);border:1px solid var(--rule);border-radius:18px;overflow:hidden}
.calc-in{padding:40px;display:grid;gap:34px;align-content:start}
.field label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-weight:600;font-size:15.5px}
.field label output{font-family:var(--f-display);font-size:26px;font-weight:600;font-variant-numeric:tabular-nums lining-nums}
.field p{font-size:13.5px;color:var(--ink-3);margin-top:2px}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:transparent;margin-top:10px;cursor:pointer}
input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(to right,var(--green) var(--p,50%),var(--rule) var(--p,50%))}
input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:var(--rule)}
input[type=range]::-moz-range-progress{height:4px;border-radius:2px;background:var(--green)}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--surface);border:2px solid var(--ink);margin-top:-9px;box-shadow:0 2px 6px rgba(15,29,56,.18)}
input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--surface);border:2px solid var(--ink)}
input[type=range]:focus-visible{outline:none}
input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--green)}
input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--green)}
.calc-out{background:var(--navy);color:var(--on-navy);padding:40px;display:flex;flex-direction:column;gap:22px}
.calc-big small{display:block;font-size:14.5px;color:var(--on-navy-2)}
.calc-big strong{display:block;font-family:var(--f-display);font-weight:500;font-size:clamp(3rem,6vw,4.4rem);line-height:1;margin-top:8px;color:var(--lime);font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.02em}
.calc-big span{display:block;font-size:14.5px;color:var(--on-navy-2);margin-top:8px}
.ledger-out{border-top:1px solid var(--navy-rule)}
.lo{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--navy-rule);font-size:15px}
.lo span:first-child{color:var(--on-navy-2)}
.lo span:last-child{font-variant-numeric:lining-nums;font-weight:600;white-space:nowrap}
.calc-note{font-size:12.5px;color:var(--on-navy-2);line-height:1.5}
.calc-out .btn{align-self:flex-start;margin-top:auto}

/* Precios */
.pricing{margin-top:56px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px;align-items:start}
.plan{background:var(--surface);border:1px solid var(--rule);border-radius:18px;padding:36px;display:flex;flex-direction:column}
.plan h3{font-size:28px}
.plan>p{color:var(--ink-2);margin-top:8px;font-size:15.5px}
.ladder{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px;align-items:end;border-bottom:1px solid var(--rule-strong)}
.rung{padding:0 14px 18px;border-left:1px solid var(--rule);position:relative}
.rung:first-child{border-left:0;padding-left:0}
.rung:last-child{padding-right:0}
.rung .bar{height:var(--h);background:linear-gradient(180deg,var(--mint),rgba(230,242,225,.15));border-top:2px solid var(--green);margin:0 -14px 14px;}
.rung:first-child .bar{margin-left:0}
.rung:last-child .bar{margin-right:0}
.rung strong{display:block;font-family:var(--f-display);font-size:clamp(2.1rem,3.4vw,2.8rem);font-weight:600;line-height:1;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.02em}
.rung strong sup{font-size:.45em;font-weight:500;vertical-align:.95em;margin-left:2px}
.rung span{display:block;font-size:14px;color:var(--ink-2);margin-top:6px}
.rung b{display:block;font-size:13px;color:var(--ink-3);font-weight:500}
.inc{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;font-size:15px}
.inc li{display:flex;gap:10px;align-items:flex-start}
.inc li::before{content:"";flex:none;width:14px;height:8px;margin-top:6px;border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg)}
.plan .btn{margin-top:30px;align-self:flex-start}
.plan-fine{font-size:13.5px;color:var(--ink-3);margin-top:14px}
.plan.ent{background:transparent;border-style:dashed;border-color:var(--rule-strong)}
.plan.ent .inc{grid-template-columns:1fr}
.plan.ent .inc{margin-bottom:30px}
.plan.ent .btn{margin-top:0}

/* Fundadora */
.founder{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:center}
.photo{position:relative;border-radius:18px;overflow:hidden;background:#fff;aspect-ratio:560/700;max-width:100%}
.photo img{width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.founder blockquote{margin:0;font-family:var(--f-display);font-size:clamp(1.6rem,2.7vw,2.25rem);line-height:1.25;letter-spacing:-.01em;font-weight:400;text-wrap:pretty}
.who{margin-top:26px;display:flex;flex-direction:column;gap:2px}
.who b{font-size:17px}
.who span{color:var(--ink-2);font-size:15px}
.founder .hero-ctas{margin-top:30px}
.trust-h{margin-top:96px;font-size:clamp(1.6rem,2.4vw,2rem)}
.trust{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.trust div{border-top:2px solid var(--ink);padding-top:18px}
.trust h3{font-size:21px}
.trust p{color:var(--ink-2);font-size:15.5px;margin-top:8px}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:64px;align-items:start}
.faq-grid .sec-head{position:sticky;top:110px}
.faq{border-top:1px solid var(--rule-strong)}
.faq details{border-bottom:1px solid var(--rule-strong)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-family:var(--f-display);font-size:21px;font-weight:500;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:none;width:28px;height:28px;border-radius:50%;border:1px solid var(--rule-strong);position:relative;transition:transform .25s,background .2s}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:1.5px;background:var(--ink);transform:translate(-50%,-50%)}
.faq summary i::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .25s}
.faq details[open] summary i{background:var(--ink)}
.faq details[open] summary i::before,.faq details[open] summary i::after{background:#fff}
.faq details[open] summary i::after{transform:translate(-50%,-50%) rotate(0deg)}
.faq details p{padding:0 48px 26px 0;color:var(--ink-2);font-size:16.5px}
.faq details p a{color:var(--green-deep);text-underline-offset:3px}

/* Cierre */
.close{background:var(--ink);color:var(--on-navy);border-radius:24px;padding:72px 64px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:end;position:relative;overflow:hidden}
.close h2{font-size:clamp(2.2rem,4.2vw,3.5rem);color:#fff}
.close p{color:var(--on-navy-2);margin-top:18px;font-size:17px;max-width:46ch}
.close-ctas{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.close-ctas .btn{width:100%}
.close-alt{font-size:14.5px;color:var(--on-navy-2);margin-top:6px;text-align:center}
.close-alt a{color:var(--on-navy);font-weight:600;text-decoration-color:rgba(238,242,248,.35);text-underline-offset:3px}
.close-art{position:absolute;right:-40px;top:-30px;width:340px;opacity:.09;pointer-events:none}

/* Pie */
.foot{background:var(--surface);color:var(--ink-2);margin-top:120px;padding-block:72px 40px;font-size:14.5px;border-top:1px solid var(--rule)}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(4,minmax(0,1fr));gap:32px}
.foot .brand{color:var(--ink)}
.foot-about{margin-top:18px;max-width:36ch;line-height:1.6}
.foot h4{margin:0 0 14px;font-size:14px;font-weight:600;color:var(--ink)}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.foot a{text-decoration:none;color:var(--ink-2)}
.foot a:hover{color:var(--ink)}
.foot-legal{margin-top:56px;padding-top:24px;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;font-size:13px}

/* ---------- Responsive ---------- */
@media (max-width:1080px){
  .menu-btn{display:inline-flex;margin-left:0}
  .nav-cta{margin-left:auto}
  .mobile-menu{display:block;position:fixed;inset:72px 0 auto 0;background:var(--paper);border-bottom:1px solid var(--rule);padding:12px var(--gut-r) 24px var(--gut);z-index:49;transform:translateY(-8px);opacity:0;visibility:hidden;transition:.2s;box-shadow:0 24px 40px -24px rgba(15,29,56,.25)}
  .mobile-menu.open{transform:none;opacity:1;visibility:visible}
  .mobile-menu a:not(.btn){display:block;padding:14px 0;border-bottom:1px solid var(--rule);text-decoration:none;font-size:17px;font-weight:500}
  .mobile-menu .btn{width:100%;margin-top:18px}
  .foot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .foot-grid>div:first-child{grid-column:1/-1}
  .nav-links{display:none}
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:56px}
  .stage{max-width:640px}
  .report{right:-10px}
  .tour-grid{grid-template-columns:1fr}
  .tabs{display:flex;overflow-x:auto;gap:8px;padding-bottom:6px;scrollbar-width:none;margin-inline:calc(-1 * var(--gut));padding-inline:var(--gut)}
  .tabs::-webkit-scrollbar{display:none}
  .tab{grid-template-columns:auto;padding:11px 16px;border:1px solid var(--navy-rule);flex:none}
  .tab svg,.tab span{display:none}
  .tab b{font-size:15px;white-space:nowrap}
  .faq-grid{grid-template-columns:1fr;gap:32px}
  .faq-grid .sec-head{position:static}
  .founder{gap:40px}
}
@media (max-width:860px){
  body{font-size:16.5px}
  .sec,.tour{padding-block:80px}
  .cmp-head{display:none!important}
  .cmp-row{grid-template-columns:1fr}
  .cmp-row>div{padding:4px 22px}
  .cmp-row>div:first-child{padding-top:22px}
  .cmp-row>div:last-child{padding-bottom:22px;padding-top:10px}
  .cmp-row>div+div{border-left:0}
  .cmp-now::before{content:"Hoy: ";font-weight:600;color:var(--ink-3)}
  .cmp-new{background:none}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .split{grid-template-columns:1fr}
  .screen-body{padding:20px 18px 22px;min-height:0}
  .steps{grid-template-columns:1fr;gap:40px}
  .steps::before{left:24px;right:auto;top:24px;bottom:24px;width:1px;height:auto}
  .step{padding-left:72px}
  .step::before{position:absolute;left:0;top:0}
  .step h3{margin-top:8px}
  .calc{grid-template-columns:1fr}
  .calc-in,.calc-out{padding:28px 24px}
  .pricing{grid-template-columns:1fr}
  .plan{padding:28px 24px}
  .inc{grid-template-columns:1fr}
  .founder{grid-template-columns:1fr}
  .photo{max-width:360px;aspect-ratio:4/5}
  .trust{grid-template-columns:1fr;gap:28px;margin-top:24px}
  .trust-h{margin-top:64px}
  .close{grid-template-columns:1fr;padding:48px 28px;border-radius:20px}
  .foot{margin-top:80px}
  .foot-grid{grid-template-columns:1fr 1fr}
  .foot-grid>div:first-child{grid-column:1/-1}
  .works ul{margin-left:0}
}
@media (max-width:640px){
  .nav-cta{display:none}
  .menu-btn{margin-left:auto}
  .hero{padding-block:32px 72px}
  .hero-ctas .btn{width:100%}
  .stage{padding-bottom:0}
  .report{position:relative;right:auto;width:auto;margin:-36px 12px 0}
  .flow{display:none}
  .ledger th:nth-child(1),.ledger td:nth-child(1),.ledger th:nth-child(4),.ledger td:nth-child(4),.ledger th:nth-child(5),.ledger td:nth-child(5){display:none}
  .ledger td.t{max-width:none}
  .stage .sheet{width:100%}
  .ledger th,.ledger td{padding-inline:9px}
  .kpi strong{font-size:22px}
  .rt{font-size:13.5px}
  .rt td.r{padding-left:8px}
  .ladder .rung{padding-inline:8px}
  .ladder .rung:first-child{padding-left:0}
  .rung span{font-size:13px}
  .foot-grid{grid-template-columns:1fr}
  .faq summary{font-size:19px}
  .faq details p{padding-right:0}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* ---------- Páginas interiores ---------- */
.page-hero{padding-block:72px 64px;border-bottom:1px solid var(--rule)}
.page-hero h1{font-size:clamp(2.4rem,4.6vw,3.9rem);line-height:1.04;letter-spacing:-.022em;margin-top:18px;max-width:18ch}
.page-hero .sec-lead{max-width:56ch}
.crumbs{font-size:14px;color:var(--ink-3)}
.crumbs a{color:var(--ink-2);text-decoration:none}
.crumbs a:hover{color:var(--ink)}
.prose-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;padding-block:64px 24px;align-items:start}
.toc{position:sticky;top:104px;display:grid;gap:4px;font-size:14.5px}
.toc a{text-decoration:none;color:var(--ink-2);padding:6px 0;border-left:2px solid var(--rule);padding-left:14px}
.toc a:hover{color:var(--ink);border-left-color:var(--green)}
.prose{max-width:68ch;min-width:0}
.prose h2{font-size:28px;margin-top:48px;scroll-margin-top:96px}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:21px;margin-top:28px}
.prose p,.prose ul,.prose dl{margin-top:14px;color:var(--ink-2);font-size:16.5px}
.prose ul{padding-left:20px}
.prose li{margin-top:6px}
.prose strong{color:var(--ink)}
.prose a{color:var(--green-deep);text-underline-offset:3px}
.prose dl{display:grid;grid-template-columns:max-content 1fr;gap:10px 24px;background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:20px 24px}
.prose dt{font-weight:600;color:var(--ink)}
.prose dd{margin:0}
.updated{font-size:14px;color:var(--ink-3);margin-top:40px}

/* Quiénes somos */
.story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;padding-block:96px;align-items:start}
.story .photo{aspect-ratio:4/5}
.story-text p:not(.kicker){font-size:18px;color:var(--ink-2);margin-top:18px;line-height:1.65}
.story-text p:first-of-type{margin-top:22px}
.story-text strong{color:var(--ink);font-weight:600}
.group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:48px}
.group a{display:block;text-decoration:none;background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:28px;transition:border-color .2s}
.group a:hover{border-color:var(--ink)}
.group b{font-family:var(--f-display);font-size:24px;font-weight:600;display:block}
.group span{display:block;color:var(--ink-2);margin-top:8px;font-size:15.5px}
.group em{display:block;font-style:normal;margin-top:18px;font-size:14px;font-weight:600;color:var(--green-deep)}
.principles{list-style:none;padding:0;margin:48px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.principles li{border-top:2px solid var(--ink);padding-top:18px}
.principles h3{font-size:22px}
.principles p{color:var(--ink-2);margin-top:10px;font-size:16px}

/* Contacto */
.contact{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;padding-block:64px 24px;align-items:start}
.form{background:var(--surface);border:1px solid var(--rule);border-radius:18px;padding:36px;display:grid;gap:20px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.f label{display:block;font-size:14.5px;font-weight:600;margin-bottom:7px}
.f label small{font-weight:400;color:var(--ink-3)}
.f input,.f select,.f textarea{width:100%;font:16px/1.4 var(--f-body);color:var(--ink);background:var(--paper);border:1px solid var(--rule-strong);border-radius:10px;padding:13px 14px;transition:border-color .15s,background .15s}
.f textarea{min-height:140px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--ink);background:var(--surface);box-shadow:0 0 0 2px var(--ink)}
.f input[aria-invalid="true"],.f textarea[aria-invalid="true"]{border-color:var(--neg)}
.err{font-size:13.5px;color:var(--neg);margin-top:6px}
.check{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--ink-2)}
.check input{width:20px;height:20px;margin-top:2px;accent-color:var(--green);flex:none}
.check input[aria-invalid="true"]{outline:2px solid var(--neg);outline-offset:2px}
.check a{color:var(--ink)}
.rgpd{font-size:12.5px;color:var(--ink-3);line-height:1.55;border-top:1px solid var(--rule);padding-top:16px}
.rgpd a{color:var(--ink-2)}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.form .btn{justify-self:start}
.form-status{font-size:15px;padding:14px 16px;border-radius:10px}
.form-status.ok{background:var(--mint);color:var(--green-deep)}
.form-status.ko{background:#F7E5E1;color:var(--neg)}
.done{text-align:left}
.done h2{font-size:32px}
.done p{color:var(--ink-2);margin-top:12px}
.aside{display:grid;gap:14px}
.card{background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:24px}
.card h3{font-size:21px}
.card p{color:var(--ink-2);font-size:15.5px;margin-top:6px}
.card .btn{margin-top:16px}
.card a.plain{color:var(--ink);font-weight:600;text-underline-offset:3px}
.card.dark{background:var(--navy);border-color:var(--navy);color:var(--on-navy)}
.card.dark p{color:var(--on-navy-2)}

/* 404 */
.nf{padding-block:120px 80px;max-width:720px}
.nf .code{font-family:var(--f-data);font-size:14px;color:var(--green-deep)}
.nf h1{font-size:clamp(2.4rem,5vw,4rem);margin-top:14px}
.nf p{color:var(--ink-2);margin-top:18px;font-size:18px}

@media (max-width:860px){
  .prose-grid{grid-template-columns:minmax(0,1fr);gap:28px;padding-block:40px 16px}
  .toc{position:static;grid-template-columns:1fr 1fr}
  .story{grid-template-columns:1fr;gap:40px;padding-block:64px}
  .story .photo{max-width:380px}
  .group,.principles{grid-template-columns:1fr}
  .contact{grid-template-columns:1fr}
  .form{padding:24px 20px}
  .row2{grid-template-columns:1fr}
  .prose dl{grid-template-columns:1fr;gap:2px}
  .prose dd{margin-bottom:10px}
  .page-hero{padding-block:48px 44px}
}

/* Guías */
.answer{margin-top:28px;max-width:62ch;font-size:1.15rem;line-height:1.6;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-left:3px solid var(--green);border-radius:4px 14px 14px 4px;padding:20px 24px}
.answer strong{font-weight:600}
.meta-line{margin-top:18px;font-size:14px;color:var(--ink-3)}
.prose .tbl{overflow-x:auto;margin-top:18px;border:1px solid var(--rule);border-radius:12px;background:var(--surface)}
.prose table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.prose th{text-align:left;font-weight:600;color:var(--ink);padding:12px 16px;border-bottom:1px solid var(--rule-strong);background:#FBFCFA;vertical-align:bottom}
.prose td{padding:12px 16px;border-top:1px solid #EEF1EC;color:var(--ink-2);vertical-align:top}
.prose td:first-child{color:var(--ink);font-weight:500}
.prose tr.us td{background:rgba(230,242,225,.55)}
.prose code{font-family:var(--f-data);font-size:.88em;background:var(--mint);color:var(--green-deep);padding:1px 6px;border-radius:5px}
.prose ol{margin-top:14px;color:var(--ink-2);font-size:16.5px;padding-left:22px}
.prose ol li{margin-top:8px}
.prose blockquote{margin:22px 0 0;padding:4px 0 4px 20px;border-left:2px solid var(--ink);font-family:var(--f-display);font-size:21px;color:var(--ink);line-height:1.4}
.prose blockquote cite{display:block;font-family:var(--f-body);font-style:normal;font-size:14px;color:var(--ink-3);margin-top:8px}
.sources{margin-top:48px;padding-top:24px;border-top:1px solid var(--rule)}
.sources h2{font-size:22px!important;margin-top:0!important}
.sources ol{font-size:14.5px}
.sources a{word-break:break-word}
.cta-box{margin-top:44px;background:var(--navy);color:var(--on-navy);border-radius:18px;padding:30px 32px;display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center;justify-content:space-between}
.cta-box p{margin:0!important;color:var(--on-navy)!important;font-family:var(--f-display);font-size:23px;line-height:1.3;max-width:28ch}
.cta-box .btn{flex:none}
.related{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.related a{display:block;text-decoration:none;background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:16px 18px;color:var(--ink)!important;font-weight:600;font-size:15.5px}
.related a:hover{border-color:var(--ink)}
.related small{display:block;font-weight:400;color:var(--ink-3);font-size:13px;margin-top:2px}
.guides{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.guides a{display:flex;flex-direction:column;justify-content:space-between;gap:24px;text-decoration:none;background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:22px;min-height:170px;transition:border-color .2s}
.guides a:hover{border-color:var(--ink)}
.guides b{font-family:var(--f-display);font-size:21px;font-weight:500;line-height:1.25}
.guides span{font-size:14px;color:var(--green-deep);font-weight:600}
@media (max-width:1080px){.guides{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.guides,.related{grid-template-columns:1fr}.cta-box{padding:24px}.answer{padding:18px}}

/* Grupo */
.group a{display:flex;flex-direction:column}
.group img,.group .g-bv{height:64px;width:auto;object-fit:contain;object-position:left center;margin-bottom:22px}
.group img.g-sv{height:76px;margin-block:-6px 22px}
.group img.g-nx{height:42px;margin-block:11px 33px}
.group .g-bv{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:600;font-size:24px;letter-spacing:.07em;color:var(--ink);margin-top:0}
.group span:not(.g-bv){margin-top:0}
.group em{margin-top:auto;padding-top:18px}
.foot-group{margin-top:48px;padding-top:28px;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;align-items:center;gap:20px 44px}
.foot-group span{font-size:13.5px;color:var(--ink-3)}
.foot-group a{display:block;opacity:.8;transition:opacity .2s}
.foot-group a:hover{opacity:1}
.foot-group .lg-sv{height:54px;width:auto}
.foot-group .lg-nx{height:30px;width:auto}
.foot-legal{margin-top:28px!important}
.bal-legend{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px;font-size:13.5px}
.bal-legend ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.bal-legend li{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;color:var(--ink-2)}
.bal-legend i{width:10px;height:10px;border-radius:3px;display:block}
.bal-legend b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
.byline{margin-top:18px;display:flex;align-items:center;gap:12px;font-size:14.5px;color:var(--ink-2)}
.byline img{width:40px;height:40px;border-radius:50%;object-fit:cover;object-position:50% 15%;background:#fff;border:1px solid var(--rule)}
.byline b{color:var(--ink);font-weight:600}
.byline a{color:inherit;text-decoration:none}
.guides-more{margin-top:20px;font-size:15.5px;color:var(--ink-2)}
.guides-more a{color:var(--green-deep);font-weight:600;text-underline-offset:3px}

/* ===================== Pulido visual v2 ===================== */
:root{--r-s:10px;--r-m:14px;--r-l:20px}
/* Disciplina de color: el verde solo para lo que crece */
.kicker{color:var(--ink-2);font-weight:600;letter-spacing:.01em;display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:18px;height:1.5px;background:currentColor;opacity:.6}
.tour .kicker{color:var(--on-navy-2)}
.btn-primary:hover{background:var(--navy-2)}
.ledger td.c{color:var(--ink);font-weight:500}
.prose a{color:var(--ink);text-decoration-color:var(--rule-strong);text-decoration-thickness:1px}
.prose a:hover{text-decoration-color:var(--ink)}
.guides span{color:var(--ink-2)}
.group em{color:var(--ink-2)}
.calc-big strong.neg{color:#F3B4A6}

/* Cabecera */
.hero{padding-block:48px 72px}
.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px}
.hero h1.tag{display:block;background:none;border-radius:0;padding:0 0 0 12px;border-left:2px solid var(--ink);color:var(--ink-2);font-size:15px;font-weight:600}
.hero h1.tag i{display:none}
.hero .claim{font-size:clamp(2.55rem,4.7vw,4.15rem)}
.report{right:0}
.report-sub{text-wrap:balance}
.ledger td.t{max-width:210px}
.flow{left:22px;bottom:276px;box-shadow:0 6px 16px -8px rgba(15,29,56,.25);background:var(--surface)}

/* Franja de programas */
.works p{max-width:none}
.works li{font-family:var(--f-body);font-size:16px;font-weight:600;color:var(--ink-2);letter-spacing:0}
.works li small{color:var(--ink-3);font-weight:500}
.works ul{gap:12px 28px}

/* Navegación sobre la banda marina */
.nav.on-dark{background:rgba(17,35,71,.88);border-bottom-color:rgba(255,255,255,.08)}
.nav.on-dark .brand,.nav.on-dark .brand-word{color:#fff}
.nav.on-dark .nav-links a,.nav.on-dark .login{color:var(--on-navy-2)}
.nav.on-dark .nav-links a:hover,.nav.on-dark .login:hover{color:#fff}
.nav.on-dark .btn-primary{background:var(--lime);color:var(--ink)}
.nav.on-dark .menu-btn{color:#fff;border-color:rgba(255,255,255,.3)}
.nav{transition:background .25s,border-color .25s}

/* Ritmo: banda clara para "Cómo funciona" */
.sec.band{background:var(--surface);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
#calculadora{padding-top:120px!important}

/* Pasos sin círculos de plantilla */
.steps::before{display:none}
.step{border-top:1px solid var(--rule-strong);padding-top:22px}
.step::before{all:unset;content:counter(s);display:block;font-family:var(--f-display);font-size:56px;line-height:1;font-weight:500;color:var(--rule-strong);font-variant-numeric:lining-nums}
.step:last-child::before{background:none;color:var(--ink);border:0}
.step h3{margin-top:16px}

/* Pantalla del producto sin barra de navegador falsa */
.dots{display:none}
.screen-bar{padding:10px 16px}
.url{margin-inline:0;text-align:left;background:transparent;padding:6px 0;max-width:none}

/* Precios */
.rung .bar{background:var(--mint)}
.plan.ent{border-style:solid;border-color:var(--rule);align-self:stretch}
.plan.ent .btn{margin-top:auto}

/* Fundadora: foto integrada en un fondo de estudio */
.photo{background:#E8EDE4}
.photo img{mix-blend-mode:multiply}

/* Cierre */
.close{background:var(--navy)}
.close-art{opacity:.05;top:auto;bottom:-70px;right:-30px}

/* Pie: logos del grupo en monocromo y misma altura */
.foot-group img{filter:grayscale(1) contrast(1.15);opacity:.75}
.foot-group a:hover img{opacity:1}
.foot-group .lg-sv{height:30px}
.foot-group .lg-nx{height:24px}

/* Guías en portada */
.guides a{min-height:150px}
.guides small{font-size:13px;color:var(--ink-3)}
.guides .gfoot{display:flex;justify-content:space-between;align-items:center;gap:12px}

/* Comparativa sectorial: radar más grande */
@media (min-width:861px){#p-sec .split{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}

/* ---------- Interiores ---------- */
.page-hero.doc .wrap{display:grid;grid-template-columns:240px minmax(0,1fr);column-gap:64px}
.page-hero.doc .wrap>*{grid-column:2}
.page-hero.doc .ph-side{grid-column:1;grid-row:1 / span 6;align-self:end;display:grid;gap:4px;font-size:13.5px;color:var(--ink-3);padding-bottom:6px}
.page-hero.doc .ph-side b{color:var(--ink);font-weight:600;font-size:14px}
.page-hero h1{max-width:24ch}
.page-hero.doc h1{font-size:clamp(2.2rem,3.8vw,3.25rem)}
.answer{border:1px solid var(--rule);border-radius:var(--r-m);box-shadow:0 1px 0 var(--rule),0 14px 34px -20px rgba(15,29,56,.22);padding:22px 26px}
.answer::before{content:"En resumen";display:block;font-size:13px;font-weight:600;color:var(--ink-3);margin-bottom:6px;font-family:var(--f-body)}
.byline img{width:44px;height:44px}

.byline small{font-size:13px;color:var(--ink-3)}
.prose p,.prose li,.prose ul,.prose ol,.prose dl{font-size:17.5px;line-height:1.65;color:#2E3A4F}
.prose h2{font-size:34px;margin-top:64px}
.prose h3{font-size:22px;margin-top:32px}
.prose table{font-size:15.5px}
.prose td{color:var(--ink)}
.prose th{vertical-align:middle}
.prose .tbl.vs td:last-child,.prose .tbl.vs th:last-child{background:rgba(230,242,225,.5);font-weight:600}
.prose tr.us td{background:none}
.prose ol{list-style:none;counter-reset:n;padding-left:0}
.prose ol li{counter-increment:n;padding-left:2em;position:relative}
.prose ol li::before{content:counter(n) ".";position:absolute;left:0;color:var(--ink-3);font-variant-numeric:tabular-nums;font-weight:600}
.sources ol li{font-size:14.5px}
.toc-wrap{position:sticky;top:104px;align-self:start}
.toc-wrap summary{list-style:none;font-size:13px;font-weight:600;color:var(--ink-3);margin-bottom:10px;cursor:default}
.toc-wrap summary::-webkit-details-marker{display:none}
.toc-wrap .toc{position:static}
.toc a[aria-current="true"]{color:var(--ink);border-left-color:var(--ink);font-weight:600}
.related{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.related a{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px}
.related a::after{content:"→";grid-column:2;grid-row:1 / span 2;color:var(--ink-3)}
.related-h{margin-top:48px;font-size:13px;font-weight:600;color:var(--ink-3)}
.related-h+.related{margin-top:10px}
/* Tablas: sombra cuando hay más a la derecha */
.prose .tbl{background:linear-gradient(to right,var(--surface) 30%,rgba(255,255,255,0)),linear-gradient(to left,var(--surface) 30%,rgba(255,255,255,0)) 100% 0,radial-gradient(farthest-side at 0 50%,rgba(15,29,56,.14),rgba(15,29,56,0)),radial-gradient(farthest-side at 100% 50%,rgba(15,29,56,.14),rgba(15,29,56,0)) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll;background-color:var(--surface)}
/* Quiénes somos */
.group .logo{height:56px;display:flex;align-items:center;margin-bottom:20px}
.group .logo img{height:44px;width:auto;margin:0}
.group .logo img.g-nx{height:38px;margin:0}
.group .logo .g-bv{height:auto;margin:0}
.principles-h{margin-top:96px}
.principles-h+.principles{margin-top:28px}
/* Contacto */
.contact-list{background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:6px 22px}
.contact-list div{display:grid;gap:2px;padding:14px 0;border-top:1px solid var(--rule)}
.contact-list div:first-child{border-top:0}
.contact-list small{font-size:13px;color:var(--ink-3)}
.contact-list a,.contact-list span{font-size:16px;color:var(--ink);font-weight:600;text-decoration:none}
.f input[aria-invalid="true"]:focus,.f textarea[aria-invalid="true"]:focus{box-shadow:0 0 0 2px var(--neg);border-color:var(--neg)}
.rgpd{font-size:13px;color:var(--ink-2)}
/* 404 */
.nf-wrap{padding-block:120px 80px}
.nf{padding:0;max-width:720px}
.nf .code{color:var(--ink-3)}
.nf-links{margin-top:40px;display:grid;gap:8px;font-size:15.5px}
.nf-links a{color:var(--ink);text-underline-offset:3px;text-decoration-color:var(--rule-strong)}

@media (max-width:1080px){
  .hero .stage{max-width:720px;margin-inline:auto;width:100%}
  .tabs{-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
}
@media (min-width:961px) and (max-width:1080px){
  .nav-links{display:flex;gap:20px}
  .menu-btn{display:none}
  .mobile-menu{display:none}
}
@media (max-width:860px){
  .page-hero.doc .wrap{display:block}
  .page-hero.doc .ph-side{display:none}
  .toc-wrap{position:static;border:1px solid var(--rule);border-radius:12px;background:var(--surface);padding:12px 16px}
  .toc-wrap summary{margin:0;font-size:15px;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between}
  .toc-wrap summary::after{content:"+";color:var(--ink-3)}
  .toc-wrap[open] summary::after{content:"−"}
  .toc-wrap[open] summary{margin-bottom:10px}
  .toc-wrap .toc{grid-template-columns:1fr}
  .prose h2{font-size:28px;margin-top:48px}
  .prose p,.prose li,.prose ul,.prose ol,.prose dl{font-size:17px}
  .contact{display:flex;flex-direction:column}
  .aside{display:contents}
  .aside .card.dark{order:-1}
  .aside .contact-list{order:2}
  .form .btn{justify-self:stretch}
  .photo{max-height:340px;aspect-ratio:auto}
  .founder .photo{max-width:100%;height:340px}
  .rung span{font-size:12px}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .prose .tbl th:first-child,.prose .tbl td:first-child{position:sticky;left:0;background:var(--surface);z-index:1;box-shadow:1px 0 0 var(--rule)}
  .prose table{min-width:480px}
}
@media (max-width:640px){
  .foot-grid{grid-template-columns:1fr 1fr}
  .foot-grid>div:first-child{grid-column:1/-1}
}
.hero .stage{min-width:0}
@media (max-width:640px){.ledger td.t{max-width:160px}}
@media (max-width:1080px){.hero-grid{grid-template-columns:minmax(0,1fr);gap:48px}}
@media (max-width:860px){.step{padding-left:0}.hero{padding-block:32px 64px}}
.stage .sheet{width:100%}
.ledger{font-size:12px}
.ledger th,.ledger td{padding-inline:9px}
.ledger td.t{max-width:150px}
.report .flow{position:absolute;top:-15px;left:18px;bottom:auto;animation:none}
.report{padding-top:28px}
@media (max-width:640px){.report .flow{display:flex}}
.byline>span{display:grid;gap:1px;line-height:1.35}
.byline>span>span{display:inline}
q{quotes:"«" "»"}
@media (max-width:640px){.answer{font-size:1.04rem;padding:18px 18px}}
@media (max-width:360px){.sheet-name{font-size:11px}}

/* ===== Informe real (capturas del portal) ===== */
.r-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.r-chips span{font-size:11px;font-weight:600;color:#178A4F;background:#E9F7EF;border:1px solid #CDEBD9;padding:2px 8px;border-radius:999px;white-space:nowrap}
@media (prefers-reduced-motion:no-preference){.r-chips{animation:fadeIn .5s 1.05s both}.pl-row:nth-child(9){animation-delay:1.63s}}
.portal{margin-top:56px;background:#fff;color:#1B2433;border-radius:16px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.55);font-family:"Segoe UI",system-ui,-apple-system,Roboto,"Helvetica Neue",Arial,sans-serif}
.pt-head{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid #E7EAF0;background:#fff}
.pt-back{display:grid;place-items:center;width:30px;height:30px;border:1px solid #E2E6EE;border-radius:8px;color:#4B5565;flex:none}
.pt-ico{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#E8F7EE;color:#1F9D57;flex:none}
.pt-title{display:grid;line-height:1.2;min-width:0}
.pt-title b{font-size:15px;font-weight:600;color:#111827;white-space:nowrap}
.pt-title small{font-size:12px;color:#6B7280}
.pt-live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#16A34A;background:#F0FDF4;border:1px solid #BBF7D0;padding:4px 10px;border-radius:999px;white-space:nowrap}
.pt-live::before{content:"";width:7px;height:7px;border-radius:50%;background:#22C55E}
.pt-body{background:#F7F8FB;padding:14px}
.pview{display:none}
.pview.on{display:block;animation:fadeIn .3s both}
.pview:focus-visible{outline:2px solid #22C55E;outline-offset:3px;border-radius:8px}
.pzoom{display:block;border-radius:10px;overflow:hidden;background:#fff;border:1px solid #E7EAF0;cursor:zoom-in}
.pzoom{aspect-ratio:1632/918;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#C9CED8 transparent}
.pzoom img{display:block;width:100%;height:auto}
.pcap{margin:12px 4px 0;font-size:14px;line-height:1.5;color:#4B5565;font-family:var(--f-body);min-height:3em}
.pcap b{color:#111827;font-weight:600}
.pt-tabs{display:flex;overflow-x:auto;scrollbar-width:none;border-top:1px solid #E7EAF0;background:#fff;padding:0 8px}
.pt-tabs::-webkit-scrollbar{display:none}
.ptab{all:unset;box-sizing:border-box;cursor:pointer;flex:none;padding:13px 18px 11px;font-size:13.5px;color:#374151;border-bottom:2.5px solid transparent;border-right:1px solid #EEF0F4;white-space:nowrap;transition:color .15s,background .15s}
.ptab:hover{background:#F7F8FB;color:#111827}
.ptab[aria-selected="true"]{color:#111827;font-weight:600;border-bottom-color:#1F9D57}
.ptab:focus-visible{outline:2px solid #22C55E;outline-offset:-2px}
.pt-note{margin:14px 0 0;font-size:14px;color:var(--on-navy-2)}
@media (max-width:760px){
  .portal{margin-top:36px;margin-inline:calc(-1 * var(--gut) + 8px);border-radius:12px;display:flex;flex-direction:column}
  .portal .screen-bar{order:0}.pt-head{order:1}.pt-tabs{order:2}.pt-body{order:3}
  .pt-head{padding:10px 12px;gap:10px}
  .pt-back{display:none}
  .pt-live{font-size:11.5px;padding:3px 8px}
  .pt-tabs{border-top:0;border-bottom:1px solid #E7EAF0;padding:0 4px;-webkit-mask-image:linear-gradient(90deg,#000 86%,transparent);mask-image:linear-gradient(90deg,#000 86%,transparent)}
  .ptab{padding:12px 14px 10px;font-size:13px;border-right:0}
  .pt-body{padding:10px 0 12px}
  .pt-body::before{content:"Desliza la captura para recorrer el informe  →";display:block;font:500 12px/1.3 var(--f-body);color:#6B7280;padding:0 12px 8px}
  .pzoom{aspect-ratio:auto;overflow-x:auto;overflow-y:hidden;border-radius:0;border-inline:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .pzoom::-webkit-scrollbar{display:none}
  .pzoom img{width:900px;max-width:none;height:auto}
  #p-graficos .pzoom img{width:1148px}
  .pcap{font-size:13.5px;margin:12px 12px 0;min-height:0}
}

/* ===== Hero: sin solapes que tapen texto ===== */
@media (min-width:1081px){
  .ledger{table-layout:fixed}
  .ledger th:nth-child(1){width:58px}
  .ledger th:nth-child(2){width:86px}
  .ledger th:nth-child(4),.ledger th:nth-child(5){width:86px}
  .ledger td.t{max-width:none}
  .report{left:136px;right:-12px;width:auto}
}
@media (max-width:1080px){
  .hero .stage{padding-bottom:0}
  .report{position:relative;left:auto;right:auto;bottom:auto;width:auto;margin:34px 0 0}
  .report .flow{display:flex;top:-16px}
}
@media (min-width:641px) and (max-width:1080px){
  .report{max-width:520px;margin-inline:auto}
}
.photo img{object-position:50% 0}
@media (max-width:640px){
  .foot-group{gap:14px 36px}
  .foot-group > span{flex-basis:100%}
}
@media (max-width:640px){
  .rung .bar{margin:0 -8px 14px}
  .rung:first-child .bar{margin-left:0}
  .rung:last-child .bar{margin-right:0}
}

/* ===== Auditoría v3 (móvil, tablet y escritorio) ===== */
:root{--gut:max(clamp(20px,4vw,40px), env(safe-area-inset-left, 0px));--gut-r:max(clamp(20px,4vw,40px), env(safe-area-inset-right, 0px))}
p,li{text-wrap:pretty}
.hero h1.tag{text-wrap:balance}
.sp-top{margin-top:96px}
/* Cabecera */
.nav{background:rgba(246,248,244,.95)}
.nav-links a,.nav-cta .login,.nav-cta .btn{white-space:nowrap}
@media (min-width:961px) and (max-width:1080px){.nav-in{gap:20px}.nav-links{gap:16px;margin-left:0}.nav-cta{gap:14px}}
.menu-btn .i-close{display:none}
.menu-btn[aria-expanded="true"] .i-open{display:none}
.menu-btn[aria-expanded="true"] .i-close{display:block}
html.menu-open{overflow:hidden}
.mobile-menu.open{box-shadow:0 0 0 100vmax rgba(15,29,56,.35)}
@media (max-width:640px){
  .nav-cta{display:flex;margin-left:auto}
  .nav-cta .login{display:none}
  .nav-cta .btn{padding:9px 14px;font-size:14px}
  .menu-btn{margin-left:10px}
}
@media (max-width:359px){.nav-cta{display:none}.menu-btn{margin-left:auto}}
/* Hero */
.report .flow{left:auto;right:18px}
@media (min-width:1081px){.report{right:0}}
@media (max-width:1080px){.hero .stage{margin-inline:0}.report{margin-inline:0}}
@media (min-width:375px) and (max-width:640px){
  .ledger th:nth-child(4),.ledger td:nth-child(4),.ledger th:nth-child(5),.ledger td:nth-child(5){display:table-cell}
  .ledger{font-size:11.5px}
  .ledger th,.ledger td{padding-inline:7px}
  .ledger td.t{max-width:96px;font-size:12px}
}
@media (max-width:420px){.sheet-rows{display:none}}
@media (max-width:359px){.report{padding:26px 16px 14px}.pl-row{font-size:12.5px}}
/* Informes reales */
@media (min-width:761px){
  .pzoom{aspect-ratio:1632/933;overflow:hidden}
  .ptab{flex:1 1 auto;text-align:center}
}
.pzoom picture{display:block}
.pt-title b{overflow:hidden;text-overflow:ellipsis}
@media (max-width:900px){
  .pt-tabs{-webkit-mask-image:linear-gradient(90deg,transparent,#000 16px,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 16px,#000 86%,transparent)}
}
@media (max-width:480px){.pt-live{display:none}}
@media (max-width:359px){.pt-ico{display:none}}
/* Comparativa */
.cmp-new{display:grid;grid-template-columns:18px 1fr;column-gap:10px;align-items:start}
.cmp-new::before{margin:6px 0 0;transform:rotate(-45deg)}
/* Pasos */
.step::before,.step:last-child::before{color:var(--green);opacity:.8}
.pgc code{font-family:var(--f-body);font-weight:600;letter-spacing:0}
@media (min-width:641px) and (max-width:860px){.step p,.pgc{max-width:560px}}
/* Precios */
.plan.ent{align-self:start}
.plan.ent .btn{margin-top:0}
@media (max-width:640px){
  .calc-out .btn,.plan .btn,.card .btn,.cta-box .btn{align-self:stretch;width:100%;justify-content:center}
  .ladder .rung:last-child{padding-right:0}
}
/* Ritmo y anclas */
@media (max-width:860px){
  #calculadora{padding-top:80px!important}
  .sp-top{margin-top:64px}
  #informes,#valor,#como-funciona,#despacho,#calculadora,#precios{scroll-margin-top:20px}
  #preguntas,#equipo,#guias{scroll-margin-top:100px}
}
/* Programas */
.works li small{display:block;margin:2px 0 0;font-size:11px}
.works ul{gap:10px 24px}
@media (max-width:1180px){.works ul{margin-left:0}}
/* Fotos de Lorea */
.photo img{mix-blend-mode:normal}
@media (min-width:641px) and (max-width:860px){
  .founder{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px}
  .founder .photo,.story .photo{max-width:none;height:auto;max-height:none;aspect-ratio:4/5}
  .story{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px}
}
@media (max-width:640px){
  .founder .photo,.story .photo{max-width:100%;width:100%;height:auto;max-height:none;aspect-ratio:1/1}
}
/* Cierre y pie */
@media (max-width:860px){.close-art{display:none}}
.close .btn-line-light{background:var(--navy)}
.foot-group img{opacity:.9}
.foot-group .lg-sv{height:36px}
@media (max-width:640px){
  .foot ul{gap:0}
  .foot ul a{display:block;padding:10px 0}
  .foot-legal a{display:inline-block;padding:12px 0}
}
/* Guías */
.prose .cta-box p{font-size:23px;line-height:1.3}
@media (max-width:640px){.prose .cta-box p{font-size:20px}}
.page-hero.doc .ph-side{align-self:start;padding-top:48px}
.prose ol li::before{font-variant-numeric:lining-nums proportional-nums}
@media (max-width:860px){
  .toc-wrap{padding:0}
  .toc-wrap summary{padding:14px 16px;margin:0!important}
  .toc-wrap .toc{padding:0 16px 12px}
  .toc a{padding-block:10px}
}
@media (max-width:600px){
  .prose .tbl th,.prose .tbl td{padding:10px 12px;font-size:14px;line-height:1.4}
  .prose .tbl th:first-child,.prose .tbl td:first-child{width:104px;min-width:104px}
  .prose .tbl th:first-child{background:#FBFCFA}
  .prose .tbl.vs th:first-child,.prose .tbl.vs td:first-child{position:static;box-shadow:none}
  .prose .tbl.vs th:last-child,.prose .tbl.vs td:last-child{position:sticky;right:0;z-index:1;background:#EEF6EA;box-shadow:-1px 0 0 var(--rule)}
}
/* Contacto */
@media (max-width:860px){.contact{align-items:stretch}}
.contact-list a{display:block;padding-block:9px}
.f select{-webkit-appearance:none;appearance:none;padding-right:40px;text-overflow:ellipsis;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 1.5l5 5 5-5' fill='none' stroke='%234A566E' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px}
/* Deslizadores más fáciles de tocar */
@media (pointer:coarse){
  input[type=range]{height:44px}
  input[type=range]::-webkit-slider-thumb{width:28px;height:28px;margin-top:-12px}
  input[type=range]::-moz-range-thumb{width:28px;height:28px}
}
@media (max-width:640px){.nav-in{gap:10px}}
@media (max-width:400px){.nav-cta .btn{padding:8px 12px;font-size:13.5px}}
@media (min-width:1081px){.hero .stage{padding-bottom:340px}}
@media (min-width:1081px){
  .hero .stage{padding-bottom:0;min-height:calc(266px + 520px)}
  .report{top:266px;bottom:auto;padding-top:20px}
  .report .flow{position:static;display:inline-flex;margin:0 0 14px;box-shadow:none;background:#F3F9F1;border-color:#D7EBD0}
}
/* Escalera de precios: barras con la misma base y textos alineados */
.ladder{align-items:stretch}
.ladder .rung .bar{margin-top:calc(96px - var(--h))}
.rung span{white-space:nowrap}
@media (max-width:400px){.rung span{font-size:12px}.rung b{font-size:12px}}
@media (max-width:359px){.ladder .rung{padding-inline:6px}.rung span{font-size:11px}}

/* ===== Cabecera con vídeo (estilo Sinnvoll) ===== */
.hv{position:relative;margin-top:-72px;padding:0;min-height:min(100svh,920px);display:flex;flex-direction:column;justify-content:flex-end;background:#081429;color:#fff;overflow:hidden;isolation:isolate}
.hv-stage{position:absolute;inset:0;z-index:-1;background:#081429}
.hv-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.05) contrast(1.02)}
.hv-scrim{position:absolute;inset:0;background:
  linear-gradient(100deg,rgba(6,16,36,.94) 0%,rgba(6,16,36,.86) 38%,rgba(6,16,36,.55) 70%,rgba(6,16,36,.40) 100%),
  linear-gradient(180deg,rgba(6,16,36,.70) 0%,rgba(6,16,36,0) 24%,rgba(6,16,36,0) 66%,rgba(6,16,36,.85) 100%)}
.hv-in{width:100%;padding-top:150px;padding-bottom:56px}
.hv-badge{display:inline-flex;align-items:center;gap:10px;margin:0;font:600 13.5px/1.3 var(--f-body);letter-spacing:.01em;color:#fff;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.22);padding:8px 15px 8px 12px;border-radius:999px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.hv-badge i{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(182,223,98,.18);flex:none}
.hv .claim{color:#fff;font-family:var(--f-display);font-weight:500;font-size:clamp(2.6rem,5.6vw,5rem);line-height:1.0;letter-spacing:-.025em;margin-top:26px;max-width:15ch;text-wrap:balance}
.hv .hero-sub{color:rgba(255,255,255,.84);max-width:54ch;margin-top:24px;font-size:clamp(1.05rem,1.35vw,1.2rem)}
.hv .hero-ctas{margin-top:36px;gap:14px}
.btn-hv{background:linear-gradient(180deg,#C7EA7A,#A9D652);color:#0B1A33;border-radius:999px;padding:17px 26px;box-shadow:0 10px 30px -10px rgba(182,223,98,.65),inset 0 1px 0 rgba(255,255,255,.5)}
.btn-hv:hover{transform:translateY(-1px);box-shadow:0 14px 34px -10px rgba(182,223,98,.8),inset 0 1px 0 rgba(255,255,255,.5)}
.btn-hv svg{transition:transform .2s}
.btn-hv:hover svg{transform:translateX(3px)}
.btn-glass{color:#fff;border-radius:999px;padding:17px 24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn-glass:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.5)}
.hv-credit{display:flex;align-items:center;gap:10px;margin-top:34px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.hv-credit::before{content:"";width:26px;height:1px;background:rgba(255,255,255,.4)}
.hv-bar{border-top:1px solid rgba(255,255,255,.12);background:rgba(6,16,36,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.hv-bar-in{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.hv-bar-in div{padding:24px 0 24px 24px;border-left:1px solid rgba(255,255,255,.12)}
.hv-bar-in div:first-child{border-left:0;padding-left:0}
.hv-bar strong{display:block;font-family:var(--f-display);font-weight:500;font-size:26px;line-height:1.1;color:#fff;letter-spacing:-.01em}
.hv-bar span{display:block;margin-top:4px;font-size:13px;color:rgba(255,255,255,.66)}

/* Botonera sobre la cabecera */
.nav.on-hero{background:transparent;border-bottom-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.nav.on-hero .brand,.nav.on-hero .brand-word{color:#fff}
.nav.on-hero .nav-links a,.nav.on-hero .login{color:rgba(255,255,255,.82)}
.nav.on-hero .nav-links a:hover,.nav.on-hero .login:hover{color:#fff}
.nav.on-hero .menu-btn{color:#fff;border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.06)}
.nav-links a{position:relative;padding-block:6px}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav-links a:hover::after{transform:scaleX(1)}
.nav-cta .btn{border-radius:999px;padding:11px 20px}
.nav-cta .btn-primary{background:linear-gradient(180deg,#C7EA7A,#A9D652);color:#0B1A33;box-shadow:0 8px 22px -10px rgba(120,170,40,.7),inset 0 1px 0 rgba(255,255,255,.5)}
.nav-cta .btn-primary:hover{background:linear-gradient(180deg,#D2F08C,#B3DD5E)}
.menu-btn{border-radius:999px}
.nav.on-dark .menu-btn,.nav.on-hero .menu-btn{border-radius:999px}

@media (max-width:760px){.hv-bar-in{grid-template-columns:repeat(2,minmax(0,1fr))}.hv-bar-in div:nth-child(3){border-left:0;padding-left:0}.hv-bar-in div:nth-child(n+3){border-top:1px solid rgba(255,255,255,.12)}}
@media (max-width:760px){
  .hv{min-height:auto}
  .hv-in{padding-top:118px;padding-bottom:36px}
  .hv-scrim{background:linear-gradient(180deg,rgba(6,16,36,.80) 0%,rgba(6,16,36,.86) 45%,rgba(6,16,36,.94) 100%)}
  .hv .claim{font-size:clamp(2.35rem,10.5vw,3rem);max-width:none}
  .hv-badge{font-size:12.5px}
  .hv .hero-ctas .btn{width:100%}
  .hv-credit{font-size:10.5px;letter-spacing:.1em;margin-top:26px}
  .hv-bar-in div{padding:16px 0 16px 16px}
  .hv-bar strong{font-size:21px}
  .hv-bar span{font-size:12px}
}

@media (max-width:760px){.hv-badge{border-radius:14px;align-items:flex-start}.hv-badge i{margin-top:5px}.hv-credit{display:none}}
.nav.on-hero.scrolled{background:rgba(8,20,41,.78);backdrop-filter:saturate(1.3) blur(14px);-webkit-backdrop-filter:saturate(1.3) blur(14px);border-bottom-color:rgba(255,255,255,.08)}
@media (min-width:761px) and (max-width:1080px){.hv-bar-in div{padding:20px 0 20px 18px}.hv-bar strong{font-size:22px}}

/* ===== Cabecera v3: pantalla flotante ===== */
.hv{background:#07101F}
.hv-scrim{background:
  linear-gradient(90deg,rgba(6,12,24,.94) 0%,rgba(6,12,24,.80) 30%,rgba(6,12,24,.30) 56%,rgba(6,12,24,0) 72%),
  linear-gradient(180deg,rgba(6,12,24,.55) 0%,rgba(6,12,24,0) 18%,rgba(6,12,24,0) 78%,rgba(6,12,24,.75) 100%)}
.hv-video{filter:none}
@media (max-width:760px){
  .hv{display:flex;flex-direction:column;background:radial-gradient(120% 70% at 50% 72%,#16264A 0%,#07101F 70%)}
  .hv-in{order:0;padding-bottom:8px}
  .hv-stage{order:1;position:relative;inset:auto;z-index:0;aspect-ratio:1080/760;background:transparent;margin:0 -4px 8px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)}
  .hv-video{object-fit:contain}
  .hv-scrim{display:none}
  .hv-bar{order:2}
}

/* ===== Botonera premium: grafito, filo dorado y verde Bivoll ===== */
:root{--gr-1:#30343B;--gr-2:#17191D;--gold:#B99A62;--gold-2:#DCC38F;--ivory-1:#FAF8F2;--ivory-2:#E9E4D8;--leaf:#8BCB55;--leaf-d:#178A43}
.btn{border-radius:10px;letter-spacing:.005em;font-weight:600;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s}
.btn svg{flex:none}
.btn:active{transform:translateY(0)!important}
.btn:focus-visible{outline:2px solid var(--leaf);outline-offset:3px}
/* principal sobre claro */
.btn-primary,.nav-cta .btn-primary{background:linear-gradient(180deg,var(--gr-1),var(--gr-2));color:#F6F3EC;border:1px solid rgba(185,154,98,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 1px 0 rgba(0,0,0,.25),0 10px 24px -14px rgba(16,18,22,.7)}
.btn-primary:hover,.nav-cta .btn-primary:hover{background:linear-gradient(180deg,#3A3F47,#1C1F24);border-color:var(--gold-2);transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 14px 28px -14px rgba(16,18,22,.75)}
.btn-primary svg{color:var(--leaf)}
/* secundario sobre claro */
.btn-ghost{background:linear-gradient(180deg,#FFFFFF,#F1F1EE);color:var(--gr-2);border:1px solid #D9D7D0;box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(20,22,26,.06)}
.btn-ghost:hover{border-color:var(--gold);color:#0F1114;transform:translateY(-1px)}
/* principal sobre oscuro */
.btn-lime,.btn-hv,.nav.on-hero .nav-cta .btn-primary,.nav.on-dark .nav-cta .btn-primary,.nav.on-dark .btn-primary{background:linear-gradient(180deg,var(--ivory-1),var(--ivory-2));color:#15171B;border:1px solid var(--gold-2);border-radius:10px;box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(185,154,98,.18),0 12px 30px -14px rgba(0,0,0,.7)}
.btn-lime:hover,.btn-hv:hover,.nav.on-hero .nav-cta .btn-primary:hover,.nav.on-dark .nav-cta .btn-primary:hover{background:linear-gradient(180deg,#FFFFFF,#EFEADF);border-color:#E8D3A6;transform:translateY(-1px);box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(220,195,143,.35),0 16px 34px -14px rgba(0,0,0,.75)}
.btn-lime svg,.btn-hv svg{color:var(--leaf-d)}
.btn-hv{padding:17px 26px}
/* secundario sobre oscuro */
.btn-line-light,.btn-glass{background:rgba(255,255,255,.05);color:#F3F1EB;border:1px solid rgba(220,195,143,.38);border-radius:10px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.btn-line-light:hover,.btn-glass:hover{background:rgba(255,255,255,.10);border-color:var(--gold-2);color:#fff}
.btn-glass svg{color:var(--leaf)}
.nav-cta .btn{border-radius:10px}
.menu-btn,.nav.on-dark .menu-btn,.nav.on-hero .menu-btn{border-radius:10px}
/* detalles con el verde del logo */
.hv-badge i{background:var(--leaf);box-shadow:0 0 0 4px rgba(139,203,85,.16)}
.hv-badge{border-color:rgba(220,195,143,.28)}
/* Pantalla flotante como pieza propia (sin recortes en ningún ancho) */
.hv{background:radial-gradient(70% 90% at 78% 52%,#17284D 0%,#0A1428 55%,#060C18 100%)}
.hv-stage{background:transparent}
.hv-scrim{display:none}
@media (min-width:1081px){
  .hv-stage{inset:auto;right:max(0px,calc((100vw - 1440px)/2));top:50%;transform:translateY(-54%);width:min(54vw,900px);aspect-ratio:1080/760;
    -webkit-mask-image:radial-gradient(closest-side,#000 78%,transparent 100%);mask-image:radial-gradient(closest-side,#000 78%,transparent 100%)}
  .hv-video{object-fit:contain}
  .hv .claim{max-width:13ch}
  .hv .hero-sub{max-width:44ch}
}
@media (max-width:1080px){
  .hv{display:flex;flex-direction:column;background:radial-gradient(120% 70% at 50% 72%,#16264A 0%,#07101F 70%)}
  .hv-in{order:0;padding-bottom:8px}
  .hv-stage{order:1;position:relative;inset:auto;z-index:0;aspect-ratio:1080/760;width:min(100%,860px);margin:0 auto 12px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)}
  .hv-video{object-fit:contain}
  .hv-bar{order:2}
}
@media (min-width:761px) and (max-width:1080px){.hv-in{padding-top:140px}}
/* fondo plano igual al del vídeo: la pantalla flota sin bordes visibles */
.hv,.hv[class]{background:#07101F radial-gradient(55% 60% at 0% 0%,rgba(38,62,112,.38),rgba(7,16,31,0) 70%) no-repeat}
.hv-stage{aspect-ratio:1280/900!important;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent),linear-gradient(180deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent),linear-gradient(180deg,transparent,#000 5%,#000 95%,transparent);mask-composite:intersect}
@media (min-width:1081px){.hv-stage{width:min(58vw,980px);right:max(-40px,calc((100vw - 1520px)/2));transform:translateY(-52%)}}
@media (max-width:1080px){.hv-stage{width:min(112%,900px);margin:-24px auto 0;align-self:center}}
@media (min-width:1081px){.hv .claim{max-width:15ch;font-size:clamp(2.8rem,4.5vw,4.4rem)}.hv-in{padding-top:136px;padding-bottom:48px}.hv .hero-sub{max-width:46ch}}
@media (min-width:1081px){
  .hv .claim{max-width:560px;font-size:clamp(2.8rem,4.1vw,4rem)}
  .hv .hero-sub{max-width:520px}
  .hv-stage{width:min(800px,58vw);right:max(-80px,calc((100vw - 1100px)/2 - 160px))}
}
@media (min-width:1081px){
  .hv-stage{width:min(800px,54vw);right:max(16px,calc((100vw - 1100px)/2 - 160px))}
  .hv .claim,.hv .hero-sub{max-width:min(560px,calc(50vw - 40px))}
}

/* =====================================================================
   Identidad v4 — grafito, piedra cálida, filo dorado y verde del logo.
   Sustituye el crema verdoso + azul marino + lima (el look de plantilla).
   ===================================================================== */
:root{
  --paper:#F3F2EE;--surface:#FFFFFF;
  --ink:#16181C;--ink-2:#4E5258;--ink-3:#74777D;
  --rule:#E2E0D9;--rule-strong:#CDC9BE;
  --navy:#131519;--navy-2:#1D2025;--navy-rule:#2D3036;
  --on-navy:#F2EFE8;--on-navy-2:#A8A59C;
  --lime:#D8BF8A;--mint:#EEEFE8;
  --gold:#B99A62;--gold-2:#DCC38F;--leaf:#8BCB55;--leaf-d:#178A43;
  --radius:8px;
  --shadow:0 1px 0 rgba(22,24,28,.04),0 18px 40px -24px rgba(22,24,28,.28);
}
body{background:var(--paper)}
/* cabecera en grafito, igual que el fondo del vídeo */
.hv,.hv[class]{background:#0E0F12 radial-gradient(55% 60% at 0% 0%,rgba(185,154,98,.10),rgba(14,15,18,0) 70%) no-repeat}
@media (max-width:1080px){.hv,.hv[class]{background:#0E0F12}}
.hv-bar{background:rgba(255,255,255,.02);border-top:1px solid rgba(220,195,143,.22)}
.hv-bar-in div{border-left-color:rgba(220,195,143,.16)}
.hv-bar strong{color:#F2EFE8}
.nav.on-hero.scrolled,.nav.on-dark{background:rgba(14,15,18,.86);border-bottom-color:rgba(220,195,143,.16)}
.nav{background:rgba(243,242,238,.94)}
/* etiquetas de sección: versalita con filo dorado, sin el guion de siempre */
.kicker{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);gap:12px}
.kicker::before{width:28px;height:1px;background:var(--gold);opacity:1}
.tour .kicker,.close .kicker{color:var(--on-navy-2)}
/* titulares: tinta grafito */
h1,h2,h3,.claim{color:inherit}
.sec h2,.page-hero h1{color:var(--ink)}
/* superficies: esquinas sobrias, filos finos, sin sombras blandas */
.plan,.card,.cta-box,.compare,.calc,.calc-in,.calc-out,.guides a,.related a,.contact-list,.form,.answer,.prose .tbl,.faq details,.pzoom,.group>*,.story .photo,.photo{border-radius:8px}
.portal{border-radius:10px;box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.plan{border-color:var(--rule)}
.plan:not(.ent){box-shadow:0 1px 0 rgba(22,24,28,.04),0 24px 48px -32px rgba(22,24,28,.25);border-top:2px solid var(--gold)}
.plan.ent{background:transparent;border-color:var(--rule-strong)}
/* verde solo donde crece: checks, barras, flechas */
.rung .bar{background:linear-gradient(180deg,#ECEBE5,#F6F5F1);border-top:2px solid var(--leaf-d)}
.cmp-new{background:linear-gradient(90deg,rgba(185,154,98,.10),rgba(185,154,98,0))}
.cmp-head .yes{color:var(--gold)}
.chip.ok,.pill,.tag,.form-status.ok{background:#EEF3E8;color:var(--leaf-d)}
.r-chips span{color:var(--leaf-d);background:#F1F4EC;border-color:#DCE6D2}
.calc-big strong{color:var(--gold-2)}
/* bandas oscuras en grafito con filo dorado */
.tour,.calc-out,.close,.card.dark,.cta-box{background:#131519}
.tour{border-top:1px solid rgba(220,195,143,.18);border-bottom:1px solid rgba(220,195,143,.18)}
.close{border:1px solid rgba(220,195,143,.22)}
.works{background:#FBFAF7}
.foot{background:#ECEAE4}
::selection{background:rgba(185,154,98,.28)}
a{text-decoration-color:var(--gold)}

/* ===== Franja del grupo + botonera superior premium ===== */
.nav{position:sticky;top:-40px}
.grp{height:40px;background:#0A0B0D;border-bottom:1px solid rgba(220,195,143,.16);color:#B9B5AB;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.grp-in{height:100%;display:flex;align-items:center;gap:18px}
.grp-l{color:#8E8A81;white-space:nowrap}
.grp a{display:flex;align-items:center;opacity:.78;transition:opacity .2s}
.grp a:hover{opacity:1}
.grp-sv img{height:22px;width:auto}
.grp-nx img{height:15px;width:auto}
.grp-sep{width:1px;height:16px;background:rgba(220,195,143,.35)}
.grp-r{margin-left:auto;display:flex;gap:22px;letter-spacing:.06em;text-transform:none;font-size:12.5px}
.grp-r a{color:#CFCAC0;text-decoration:none;opacity:1}
.grp-r a:hover{color:var(--gold-2)}
.nav-in{height:78px}
.hv{margin-top:-78px}
.hv-in{padding-top:150px}
.brand svg{width:38px;height:38px}
.brand-word{font-size:24px;letter-spacing:.14em}
.nav-links{gap:30px}
.nav-links a{font-size:14.5px;font-weight:500;letter-spacing:.02em}
.nav-links a::after{background:var(--gold);height:1px;bottom:-2px}
.nav-cta{gap:8px}
.nav-cta .login{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;padding:11px 16px;border-radius:10px;border:1px solid transparent;transition:border-color .2s,background .2s,color .2s}
.nav-cta .login:hover{border-color:var(--rule-strong);background:rgba(255,255,255,.5)}
.nav.on-hero .nav-cta .login:hover,.nav.on-dark .nav-cta .login:hover{border-color:rgba(220,195,143,.35);background:rgba(255,255,255,.05)}
.nav-cta .nav-try{position:relative;overflow:hidden;gap:10px;padding:13px 22px;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.nav-cta .nav-try svg{transition:transform .25s}
.nav-cta .nav-try:hover svg{transform:translateX(3px)}
/* brillo al pasar el ratón en los botones principales */
.btn-primary,.btn-lime,.btn-hv{position:relative;overflow:hidden;isolation:isolate}
.btn-primary::after,.btn-lime::after,.btn-hv::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.22) 48%,transparent 66%);transform:translateX(-120%);transition:transform .8s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.btn-lime::after,.btn-hv::after{background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.75) 48%,transparent 66%)}
.btn-primary:hover::after,.btn-lime:hover::after,.btn-hv:hover::after{transform:translateX(120%)}
.btn-hv{font-size:17px;padding:19px 30px}
.hv .btn-glass{font-size:17px;padding:19px 26px}
/* menú móvil colgando de la cabecera */
@media (max-width:1080px){.mobile-menu{position:absolute;inset:100% 0 auto 0;top:100%}}
@media (max-width:1080px) and (min-width:641px){.grp-r{display:none}}
@media (max-width:640px){
  .grp{height:36px;font-size:10.5px}
  .nav{top:-36px}
  .grp-in{gap:12px;justify-content:center}
  .grp-l{display:none}
  .grp-r{display:none}
  .grp-sv img{height:19px}.grp-nx img{height:13px}
  .grp-in::before{content:"Grupo";color:#8E8A81}
  .nav-in{height:68px}
  .hv{margin-top:-68px}
  .hv-in{padding-top:110px}
  .brand svg{width:32px;height:32px}.brand-word{font-size:20px}
  .nav-cta .nav-try{padding:10px 14px;font-size:11.5px;letter-spacing:.1em}
  .nav-cta .nav-try svg{display:none}
}
@media (max-width:359px){.brand-word{font-size:18px;letter-spacing:.1em}}

/* ===== Cabecera v5: texto arriba y la pantalla grande debajo ===== */
.hv,.hv[class]{display:flex;flex-direction:column;justify-content:flex-start;min-height:0}
.hv-in{order:0}
.hv-stage,.hv-stage[class]{order:1;position:relative;inset:auto;top:auto;right:auto;transform:none;z-index:0;aspect-ratio:1600/1080!important;width:min(1400px,calc(100% + 40px));margin:-10px auto 0;align-self:center;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent),linear-gradient(180deg,transparent,#000 4%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent),linear-gradient(180deg,transparent,#000 4%,#000 92%,transparent)}
.hv-video{object-fit:contain}
.hv-bar{order:2}
@media (min-width:1081px){
  .hv-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:64px;align-items:end;padding-top:150px;padding-bottom:12px}
  .hv-badge{grid-column:1 / -1;justify-self:start}
  .hv .claim,.hv .claim[class]{grid-column:1;grid-row:2 / span 2;max-width:none;font-size:clamp(3.2rem,5.4vw,5.4rem);line-height:.98}
  .hv .hero-sub,.hv .hero-sub[class]{grid-column:2;grid-row:2;max-width:none;margin-top:0;align-self:end}
  .hv .hero-ctas{grid-column:2;grid-row:3;margin-top:28px;flex-wrap:nowrap}
  .hv-credit{display:none}
}
@media (min-width:1081px) and (max-width:1280px){.hv .hero-ctas{flex-wrap:wrap}}
@media (max-width:1080px){.hv-stage,.hv-stage[class]{width:calc(100% + 24px);margin-top:4px}}
.grp{height:44px}.nav{top:-44px}
.grp-sv img{height:30px}.grp-nx img{height:18px}
@media (min-width:1081px){
  .hv-in{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);column-gap:56px}
  .hv .claim,.hv .claim[class]{font-size:clamp(3.2rem,5vw,5.1rem)}
  .hv .hero-ctas{flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:12px}
  .hv .hero-ctas .btn{width:100%}
}
@media (max-width:640px){
  .grp{height:38px}.nav{top:-38px}
  .grp-sv img{height:24px}.grp-nx img{height:15px}
  .nav-in{gap:10px}
  .brand{gap:8px}.brand svg{width:30px;height:30px}
  .brand-word{font-size:18px;letter-spacing:.1em}
  .nav-cta .nav-try{padding:10px 13px;font-size:13px;letter-spacing:.01em;text-transform:none}
  .menu-btn{width:42px;height:42px;margin-left:6px}
}
@media (max-width:359px){.nav-cta{display:none}}
@media (max-width:640px){.nav-cta .login{display:none}}
@media (min-width:1081px) and (max-width:1240px){
  .nav-in{gap:20px}.nav-links{gap:18px}.nav-links a{font-size:14px}
  .nav-cta .login{padding:10px 8px}
  .nav-cta .nav-try{padding:12px 16px;letter-spacing:.08em}
}
@media (min-width:1081px) and (max-width:1140px){.nav-cta .login svg{display:none}.brand-word{letter-spacing:.1em}}
@media (max-width:1080px){.nav-cta .login{display:none}.nav-cta{margin-left:auto}.menu-btn{margin-left:10px}}

/* ===== Cabecera v6: fondo con luz y pantalla en 3D ===== */
.hv,.hv[class]{background:#0B0C0F;overflow:hidden}
.hv-bg{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;
  background:
    radial-gradient(42% 38% at 50% 74%,rgba(150,190,255,.10),transparent 70%),
    radial-gradient(38% 30% at 50% 92%,rgba(139,203,85,.16),transparent 72%),
    radial-gradient(46% 42% at 4% -4%,rgba(220,195,143,.20),transparent 70%),
    radial-gradient(40% 36% at 100% 10%,rgba(90,110,160,.16),transparent 70%),
    linear-gradient(180deg,#0E1014 0%,#0B0C0F 60%,#0B0C0F 100%)}
.hv-bg::before{content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:72px 72px;
  -webkit-mask-image:radial-gradient(70% 55% at 50% 30%,#000 0%,transparent 75%);mask-image:radial-gradient(70% 55% at 50% 30%,#000 0%,transparent 75%)}
.hv-bg::after{content:"";position:absolute;inset:0;opacity:.07;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.hv-amb{position:absolute;left:50%;bottom:-8%;width:110%;height:70%;transform:translateX(-50%) scale(1.15);object-fit:cover;filter:blur(70px) saturate(1.5) brightness(.75);opacity:.32}
@media (max-width:900px){.hv-amb{display:none}.hv-bg{background-color:#0B0C0F}}
/* pantalla */
.hv-stage,.hv-stage[class]{-webkit-mask-image:none;mask-image:none;aspect-ratio:auto!important;width:min(1180px,calc(100% - 2 * var(--gut)));margin:28px auto 0;perspective:2200px;padding-bottom:72px}
.hv-screen{position:relative;border-radius:16px;padding:0 10px 10px;background:linear-gradient(180deg,#2A2D33,#17191D);
  border:1px solid rgba(220,195,143,.38);transform-origin:50% 0;transform:rotateX(var(--tilt,14deg));transition:transform .1s linear;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 0 0 1px rgba(0,0,0,.6),0 50px 100px -30px rgba(0,0,0,.85),0 30px 140px -40px rgba(139,203,85,.30)}
.hv-screen::after{content:"";position:absolute;left:8%;right:8%;bottom:-60px;height:60px;background:radial-gradient(50% 100% at 50% 0,rgba(139,203,85,.22),transparent 70%);filter:blur(10px);pointer-events:none}
.hv-chrome{display:flex;align-items:center;gap:7px;height:30px;padding:0 4px}
.hv-chrome i{width:9px;height:9px;border-radius:50%;background:#3A3E45}
.hv-chrome i:nth-child(1){background:#C9594E}.hv-chrome i:nth-child(2){background:#D6A848}.hv-chrome i:nth-child(3){background:#5FA35A}
.hv-chrome span{margin:0 auto;transform:translateX(-24px);font:500 11.5px/1 var(--f-body);letter-spacing:.06em;color:#8E8A81;padding:5px 14px;border-radius:6px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}
.hv-video,.hv-video[class]{position:static;display:block;width:100%;height:auto;aspect-ratio:1600/1000;object-fit:cover;border-radius:7px;background:#fff}
@media (max-width:760px){
  .hv-stage,.hv-stage[class]{width:calc(100% - 24px);margin-top:18px;padding-bottom:40px}
  .hv-screen{border-radius:12px;padding:0 6px 6px}
  .hv-chrome{height:22px}.hv-chrome i{width:7px;height:7px}.hv-chrome span{font-size:9.5px;padding:3px 9px}
}
@media (prefers-reduced-motion:reduce){.hv-screen{transform:none}}

/* ===== Botonera superior: cápsula flotante de cristal ===== */
.nav,.nav.on-hero,.nav.on-hero.scrolled,.nav.on-dark,.nav.scrolled{background:transparent!important;border-bottom-color:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.nav-in{height:76px;position:relative}
.nav-in::before{content:"";position:absolute;inset:10px calc(var(--gut) - 14px) 10px calc(var(--gut) - 14px);z-index:-1;border-radius:16px;
  background:rgba(250,249,246,.82);border:1px solid rgba(185,154,98,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 32px -18px rgba(22,24,28,.35);
  backdrop-filter:saturate(1.4) blur(16px);-webkit-backdrop-filter:saturate(1.4) blur(16px);transition:background .3s,border-color .3s}
.nav.on-hero .nav-in::before,.nav.on-dark .nav-in::before{background:rgba(22,24,28,.55);border-color:rgba(220,195,143,.30);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 40px -18px rgba(0,0,0,.7)}
.nav.on-hero:not(.scrolled) .nav-in::before{background:rgba(22,24,28,.32)}
.nav-links{gap:6px}
.nav-links a{padding:9px 14px;border-radius:10px;transition:background .2s,color .2s}
.nav-links a::after{display:none}
.nav-links a:hover{background:rgba(22,24,28,.06)}
.nav.on-hero .nav-links a:hover,.nav.on-dark .nav-links a:hover{background:rgba(255,255,255,.08);color:#fff}
/* botón de prueba: oro champán metálico */
.nav-cta .nav-try,.nav.on-hero .nav-cta .nav-try,.nav.on-dark .nav-cta .nav-try{
  background:linear-gradient(180deg,#F1E2BC 0%,#D9BC82 48%,#C6A266 52%,#DCC28E 100%);color:#1A1712;
  border:1px solid #A8864F;border-radius:11px;text-shadow:0 1px 0 rgba(255,255,255,.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -1px 0 rgba(120,90,40,.35),0 8px 22px -10px rgba(170,130,60,.7)}
.nav-cta .nav-try:hover,.nav.on-hero .nav-cta .nav-try:hover,.nav.on-dark .nav-cta .nav-try:hover{
  background:linear-gradient(180deg,#F7EBCB 0%,#E2C690 48%,#CFAC70 52%,#E5CC98 100%);border-color:#B8955A;transform:translateY(-1px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 -1px 0 rgba(120,90,40,.35),0 12px 28px -10px rgba(170,130,60,.85)}
.nav-cta .nav-try svg{color:#1A1712}
.nav-cta .nav-try::after{background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.85) 48%,transparent 66%)}
.nav-cta .login{border-radius:11px}
.nav-cta .login:hover{border-color:rgba(185,154,98,.4)}
.menu-btn,.nav.on-hero .menu-btn,.nav.on-dark .menu-btn{border-radius:11px;border-color:rgba(185,154,98,.4)}
@media (max-width:640px){.nav-in{height:66px}.nav-in::before{inset:8px 6px}.hv{margin-top:-66px}}
.nav-in{gap:18px}
.nav-links{gap:2px;margin-left:8px}
.nav-links a{padding:9px 12px}
.nav-cta{gap:6px}
.nav-cta .login{padding:10px 12px}
.nav-cta .nav-try{padding:12px 18px;letter-spacing:.1em}
.nav.scrolled .nav-in::before{background:rgba(250,249,246,.92)}
.nav.on-hero.scrolled .nav-in::before,.nav.on-dark.scrolled .nav-in::before{background:rgba(18,20,24,.88)}
@media (min-width:1081px) and (max-width:1240px){.nav-links a{padding:8px 8px;font-size:14px}.nav-cta .login svg{display:none}}
/* principal sobre oscuro: el mismo oro champán */
.btn-lime,.btn-hv{background:linear-gradient(180deg,#F1E2BC 0%,#D9BC82 48%,#C6A266 52%,#DCC28E 100%);color:#1A1712;border:1px solid #A8864F;text-shadow:0 1px 0 rgba(255,255,255,.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -1px 0 rgba(120,90,40,.35),0 14px 30px -14px rgba(170,130,60,.75)}
.btn-lime:hover,.btn-hv:hover{background:linear-gradient(180deg,#F7EBCB 0%,#E2C690 48%,#CFAC70 52%,#E5CC98 100%);border-color:#B8955A;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 -1px 0 rgba(120,90,40,.35),0 18px 36px -14px rgba(170,130,60,.9)}
.btn-lime svg,.btn-hv svg{color:#1A1712}

/* ===== Cómo funciona, versión visual ===== */
.cf{background:#131519;color:#F2EFE8;position:relative;overflow:hidden;border-top:1px solid rgba(220,195,143,.18)}
.cf::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(40% 50% at 85% 0%,rgba(220,195,143,.12),transparent 70%),radial-gradient(40% 50% at 10% 100%,rgba(139,203,85,.10),transparent 70%)}
.cf .sec-head h2{color:#F7F4EC}
.cf .sec-lead{color:#A8A59C}
.cf .kicker{color:#A8A59C}
.steps2{list-style:none;margin:64px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;position:relative}
.st{display:flex;flex-direction:column;border:1px solid rgba(220,195,143,.20);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));overflow:hidden;transition:border-color .3s,transform .3s}
.st:hover{border-color:rgba(220,195,143,.5);transform:translateY(-3px)}
.st-art{height:220px;position:relative;border-bottom:1px solid rgba(220,195,143,.14);background:#0E0F12;overflow:hidden}
.st-tx{padding:26px 26px 30px;position:relative}
.st-n{font:500 13px/1 var(--f-data);color:var(--gold-2);letter-spacing:.1em}
.st h3{color:#F7F4EC;font-size:25px;margin-top:12px}
.st p{color:#A8A59C;font-size:15.5px;margin-top:10px;line-height:1.6}
/* 1 · excel */
.st-xls{padding:18px 18px 0;font:12px/1 var(--f-data)}
.xl-bar{display:flex;align-items:center;gap:8px;color:#CFCAC0;font-size:11.5px;margin-bottom:10px}
.xl-bar b{display:grid;place-items:center;width:20px;height:20px;border-radius:4px;background:#1D6F42;color:#fff;font:700 11px/1 var(--f-body)}
.xl-row{display:grid;grid-template-columns:48px 76px 1fr 78px;gap:8px;padding:7px 10px;border-radius:5px;color:#E7E3DA}
.xl-row span:last-child{text-align:right}
.xl-row span:nth-child(2){color:#8BCB55}
.xl-row.h{color:#7D7A72;font:600 10px/1 var(--f-body);letter-spacing:.06em;text-transform:uppercase}
.xl-row:not(.h):nth-child(odd){background:rgba(255,255,255,.035)}
.xl-src{position:absolute;left:18px;right:18px;bottom:14px;display:flex;gap:6px}
.xl-src span{font:600 11px/1 var(--f-body);color:#A8A59C;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:6px 10px}
.xl-src .hl{color:#1A1712;background:linear-gradient(180deg,#F1E2BC,#D3B37A);border-color:#A8864F}
/* 2 · mapeo */
.st-map{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:20px 22px}
.mp{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:12px}
.mp code{font:600 12px/1 var(--f-data);color:#1A1712;background:linear-gradient(180deg,#F1E2BC,#D3B37A);border-radius:6px;padding:7px 0;text-align:center}
.mp i{height:1px;background:linear-gradient(90deg,rgba(220,195,143,.7),rgba(139,203,85,.7));position:relative}
.mp i::after{content:"";position:absolute;right:-1px;top:-3px;border:3.5px solid transparent;border-left:6px solid #8BCB55}
.mp span{font:500 13px/1.2 var(--f-body);color:#F2EFE8;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);border-radius:6px;padding:7px 10px;white-space:nowrap}
.mp-note{margin-top:4px;font:500 10.5px/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:#7D7A72}
/* 3 · informe */
.st-rep img{position:absolute;left:22px;top:22px;width:560px;max-width:none;border-radius:6px;box-shadow:0 20px 40px -12px rgba(0,0,0,.8);transform:rotate(-2deg);transition:transform .5s}
.st:hover .st-rep img{transform:rotate(0) translateY(-6px)}
.rep-chip{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:8px;font:600 12px/1 var(--f-body);color:#F2EFE8;background:rgba(14,15,18,.85);border:1px solid rgba(139,203,85,.45);border-radius:999px;padding:8px 12px;backdrop-filter:blur(6px)}
.rep-chip i{width:7px;height:7px;border-radius:50%;background:#8BCB55;box-shadow:0 0 0 4px rgba(139,203,85,.18)}
@media (max-width:900px){.steps2{grid-template-columns:1fr;gap:16px}.st-art{height:200px}}
@media (max-width:400px){.xl-row{grid-template-columns:40px 66px 1fr 70px;font-size:11px}.mp{grid-template-columns:54px 1fr auto}.mp span{font-size:12px}}
.xl-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ===== Botonera: cada enlace es un botón propio ===== */
.nav-in::before{display:none}
.nav-in{height:84px}
.nav-links{gap:8px;margin-left:12px}
.nav-links a,.nav-cta .login{
  display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px;border-radius:10px;
  font-size:14px;font-weight:500;letter-spacing:.01em;text-decoration:none;
  color:#2A2C31;background:linear-gradient(180deg,#FFFFFF,#F1EFEA);border:1px solid #DCD7CB;
  box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(22,24,28,.06),0 6px 14px -10px rgba(22,24,28,.35);
  transition:border-color .2s,transform .2s,box-shadow .2s,color .2s,background .2s}
.nav-links a:hover,.nav-cta .login:hover{border-color:var(--gold);color:#111;transform:translateY(-1px);background:linear-gradient(180deg,#FFFFFF,#F5F2EA);
  box-shadow:inset 0 1px 0 #fff,0 0 0 3px rgba(185,154,98,.12),0 10px 18px -10px rgba(22,24,28,.4)}
.nav.on-hero .nav-links a,.nav.on-hero .nav-cta .login,.nav.on-dark .nav-links a,.nav.on-dark .nav-cta .login{
  color:#ECE8DF;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.03));border-color:rgba(220,195,143,.30);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 8px 18px -12px rgba(0,0,0,.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.nav.on-hero .nav-links a:hover,.nav.on-hero .nav-cta .login:hover,.nav.on-dark .nav-links a:hover,.nav.on-dark .nav-cta .login:hover{
  color:#fff;border-color:var(--gold-2);background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.05));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 0 3px rgba(220,195,143,.12),0 12px 22px -12px rgba(0,0,0,.85)}
.nav-cta{gap:8px}
.nav-cta .nav-try{height:42px;padding:0 20px}
.nav-cta .login svg{color:var(--gold)}
/* barra de fondo solo al bajar, para que los botones se lean */
.nav.scrolled{background:rgba(243,242,238,.86)!important;backdrop-filter:saturate(1.3) blur(14px)!important;-webkit-backdrop-filter:saturate(1.3) blur(14px)!important;border-bottom-color:rgba(185,154,98,.22)!important}
.nav.on-hero.scrolled,.nav.on-dark.scrolled{background:rgba(14,15,18,.82)!important}
@media (min-width:1081px) and (max-width:1300px){.nav-links{gap:6px;margin-left:4px}.nav-links a,.nav-cta .login{padding:0 11px;font-size:13.5px}.nav-cta .nav-try{padding:0 14px}}
@media (min-width:1081px) and (max-width:1180px){.nav-cta .login svg{display:none}.brand-word{font-size:21px}}
@media (max-width:640px){.nav-in{height:68px}.nav-cta .nav-try{height:40px}}
.hv{margin-top:-84px}
@media (max-width:640px){.hv{margin-top:-68px}}
.nav-links{gap:6px;margin-left:4px}
.nav-links a,.nav-cta .login{padding:0 13px}
.nav-cta .nav-try{padding:0 16px;letter-spacing:.08em}
@media (min-width:1081px) and (max-width:1300px){.nav-links{gap:5px}.nav-links a,.nav-cta .login{padding:0 10px;font-size:13.5px}.nav-cta .nav-try{padding:0 13px;font-size:12px}.brand-word{font-size:21px;letter-spacing:.1em}}
@media (min-width:1081px) and (max-width:1200px){.nav-cta .login{display:none}}
@media (max-width:1200px){.nav .nav-cta .login{display:none}}
@media (max-width:1080px){.nav .nav-links{display:none}}

/* ===== Logo ===== */
.brand{gap:12px;align-items:center}
.brand svg.brand-mark,.brand .brand-mark{width:46px;height:46px;filter:drop-shadow(0 2px 6px rgba(30,140,70,.25))}
.brand-txt{display:grid;line-height:1}
.brand-word{font-family:var(--f-display);font-weight:600;font-size:27px;letter-spacing:.16em;line-height:1;color:inherit}
.brand-sub{font:600 9.5px/1 var(--f-body);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-top:6px;padding-left:2px}
.nav.on-hero .brand-word,.nav.on-dark .brand-word{color:#F7F4EC}
.nav.on-hero .brand-sub,.nav.on-dark .brand-sub{color:var(--gold-2)}
.foot .brand-word{color:var(--ink)}
@media (max-width:640px){.brand .brand-mark{width:36px;height:36px}.brand-word{font-size:21px;letter-spacing:.12em}.brand-sub{font-size:7.5px;letter-spacing:.26em;margin-top:4px}}
@media (max-width:359px){.brand-sub{display:none}}

/* ===== Botones claros sobre fondo oscuro (más contraste) ===== */
.nav.on-hero .nav-links a,.nav.on-hero .nav-cta .login,.nav.on-dark .nav-links a,.nav.on-dark .nav-cta .login{
  color:#1C1E22;background:linear-gradient(180deg,#FFFFFF 0%,#F2EFE7 100%);border:1px solid #E6DCC6;backdrop-filter:none;-webkit-backdrop-filter:none;
  box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 rgba(185,154,98,.25),0 8px 20px -10px rgba(0,0,0,.75)}
.nav.on-hero .nav-links a:hover,.nav.on-hero .nav-cta .login:hover,.nav.on-dark .nav-links a:hover,.nav.on-dark .nav-cta .login:hover{
  color:#0E0F12;background:linear-gradient(180deg,#FFFFFF,#F7F2E6);border-color:var(--gold-2);
  box-shadow:inset 0 1px 0 #fff,0 0 0 3px rgba(220,195,143,.30),0 12px 24px -10px rgba(0,0,0,.8)}
.nav.on-hero .nav-cta .login svg,.nav.on-dark .nav-cta .login svg{color:#A8864F}
.nav.on-hero .menu-btn,.nav.on-dark .menu-btn{background:linear-gradient(180deg,#FFFFFF,#F2EFE7);color:#1C1E22;border-color:#E6DCC6}
.brand-sub{white-space:nowrap}.brand-txt{min-width:max-content}
.brand-sub{font-size:8.6px;letter-spacing:.235em;margin-top:7px}
@media (max-width:640px){.brand-sub{font-size:6.6px;letter-spacing:.2em}.nav-cta .nav-try{padding:0 12px;font-size:12.5px}.menu-btn{margin-left:4px}}
@media (max-width:400px){.brand-sub{display:none}}
@media (min-width:641px){.brand svg.brand-mark,.brand .brand-mark{width:54px;height:54px;margin:-4px -2px -4px -6px}}
.grp{border-bottom-color:rgba(220,195,143,.18)}
@media (min-width:1301px){.nav-links{gap:5px;margin-left:0}.nav-links a,.nav-cta .login{padding:0 12px}.nav-cta .nav-try{padding:0 15px}.nav-in{gap:14px}}
@media (min-width:1081px) and (max-width:1300px){.nav-in{gap:10px}.brand-sub{display:none}}

/* =====================================================================
   Módulos v7 — editorial, grafito y oro. Nada de tarjetas de plantilla.
   ===================================================================== */
.sec-head h2{letter-spacing:-.018em}

/* --- En el despacho: columna «Con Bivoll» como panel oscuro --- */
.compare{background:transparent;border:0;border-radius:0;overflow:visible;counter-reset:cmp;margin-top:64px}
.cmp-row{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1.05fr);border-top:1px solid var(--rule)}
.cmp-row:first-child{border-top:0}
.cmp-row>div{padding:26px 28px}
.cmp-row>div+div{border-left:0}
.cmp-head>div{padding-block:0 16px;font:600 11.5px/1 var(--f-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.cmp-row:not(.cmp-head) .cmp-task{counter-increment:cmp;display:grid;grid-template-columns:44px 1fr;align-items:baseline;padding-left:0}
.cmp-row:not(.cmp-head) .cmp-task::before{content:counter(cmp,decimal-leading-zero);font:500 12.5px/1 var(--f-data);color:var(--gold)}
.cmp-head>div:first-child{padding-left:44px}
.cmp-task{font-size:21px}
.cmp-now{color:var(--ink-3);position:relative;padding-left:56px!important}
.cmp-now::before{content:"";position:absolute;left:28px;top:33px;width:14px;height:1.5px;background:#B9B4A8}
.cmp-new,.cmp-head .yes{background:#16181C!important;color:#F2EFE8}
.cmp-head .yes{color:var(--gold-2)!important;border-radius:12px 12px 0 0;padding-top:18px!important;padding-bottom:16px!important}
.cmp-row:not(.cmp-head) .cmp-new{border-top:1px solid rgba(220,195,143,.14)}
.cmp-row:last-child .cmp-new{border-radius:0 0 12px 12px;box-shadow:0 30px 50px -30px rgba(0,0,0,.45)}
.cmp-new::before{border-color:var(--leaf)!important}
.cmp-new a{color:#F2EFE8;text-decoration-color:var(--gold)}
.cmp-row:first-child{align-items:end}
@media (max-width:860px){
  .cmp-head{display:none}
  .cmp-row{grid-template-columns:1fr;border-top:0;margin-top:14px;border:1px solid var(--rule);border-radius:12px;overflow:hidden;background:var(--surface)}
  .cmp-row>div{padding:18px 20px}
  .cmp-row:not(.cmp-head) .cmp-task{grid-template-columns:36px 1fr}
  .cmp-now{padding-left:46px!important}.cmp-now::before{left:20px;top:29px}
  .cmp-row:last-child .cmp-new{border-radius:0;box-shadow:none}
}

/* --- Precios: plan principal en grafito, cifras grandes --- */
.pricing{gap:24px;align-items:stretch}
.plan-k{font:600 11px/1 var(--f-body)!important;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)!important;margin:0 0 14px!important}
.plan:not(.ent){background:#16181C;color:#F2EFE8;border:1px solid rgba(220,195,143,.30);border-top:1px solid rgba(220,195,143,.30);border-radius:16px;
  box-shadow:0 40px 80px -40px rgba(0,0,0,.6);position:relative;overflow:hidden}
.plan:not(.ent)::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 50% at 100% 0,rgba(220,195,143,.14),transparent 70%)}
.plan:not(.ent) h3{color:#F7F4EC;font-size:34px}
.plan:not(.ent)>p{color:#A8A59C}
.plan:not(.ent) .plan-k{color:var(--gold-2)!important}
.plan:not(.ent) .ladder{border-bottom-color:rgba(220,195,143,.28);margin-top:36px}
.plan:not(.ent) .rung{border-left-color:rgba(255,255,255,.08)}
.plan:not(.ent) .rung .bar{background:linear-gradient(180deg,rgba(220,195,143,.30),rgba(220,195,143,.04));border-top:1.5px solid var(--gold-2)}
.plan:not(.ent) .rung b{color:#A8A59C;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.plan:not(.ent) .rung strong{color:#F7F4EC;font-size:clamp(2.6rem,4vw,3.4rem)}
.plan:not(.ent) .rung strong sup{color:var(--gold-2)}
.plan:not(.ent) .rung span{color:#8E8A81}
.plan:not(.ent) .inc{color:#E7E3DA;border-top:1px solid rgba(255,255,255,.08);padding-top:26px}
.plan:not(.ent) .inc li::before{border-color:var(--leaf)}
.plan:not(.ent) .plan-fine{color:#8E8A81}
.plan:not(.ent) .btn-primary{background:linear-gradient(180deg,#F1E2BC 0%,#D9BC82 48%,#C6A266 52%,#DCC28E 100%);color:#1A1712;border-color:#A8864F;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -1px 0 rgba(120,90,40,.35),0 14px 30px -14px rgba(170,130,60,.75)}
.plan:not(.ent) .btn-primary svg{color:#1A1712}
.plan.ent{background:linear-gradient(180deg,#FFFFFF,#FAF8F3);border:1px solid var(--rule);border-radius:16px;align-self:stretch;justify-content:flex-start}
.plan.ent h3{font-size:30px}
.plan.ent .inc li::before{border-color:var(--gold)}
.plan.ent .btn{margin-top:auto}

/* --- Fundadora: retrato enmarcado y cita en grande --- */
.founder{gap:80px}
.founder .photo{position:relative;overflow:visible;background:transparent;border-radius:0}
.founder .photo::before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--gold);border-radius:4px;z-index:0}
.founder .photo img{position:relative;z-index:1;border-radius:4px;background:#EAE6DD;box-shadow:0 30px 60px -30px rgba(22,24,28,.45)}
.founder blockquote{position:relative;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.18;letter-spacing:-.015em}
.founder blockquote::before{content:"“";position:absolute;left:-.05em;top:-.62em;font:400 6.5rem/1 var(--f-display);color:var(--gold);opacity:.55}
.who{margin-top:30px;padding-top:22px;border-top:1px solid var(--rule);display:grid;gap:6px}
.who .sig{font-family:var(--f-display);font-style:italic;font-weight:500;font-size:26px;letter-spacing:-.01em}
@media (max-width:640px){.founder .photo::before{inset:12px -10px -10px 12px}.founder blockquote::before{font-size:4.5rem;top:-.5em}}

/* --- Seguridad: tres piezas con icono y filo dorado --- */
.trust{gap:16px;margin-top:36px}
.trust div{border-top:0;padding:28px;background:linear-gradient(180deg,#FFFFFF,#FAF8F3);border:1px solid var(--rule);border-radius:12px;position:relative;overflow:hidden}
.trust div::after{content:"";position:absolute;left:28px;right:28px;top:0;height:1.5px;background:linear-gradient(90deg,var(--gold),transparent)}
.tr-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid rgba(185,154,98,.55);color:#8A6D3B;background:#FBF7EE;margin-bottom:20px}
.trust h3{font-size:22px}
.trust-h{font-size:clamp(2.1rem,3.8vw,3.25rem)!important}

/* --- Guías: miniatura, número y pie --- */
.guides.g2{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:48px}
.g2 a{padding:0;display:flex;flex-direction:column;background:#FFFFFF;border:1px solid var(--rule);border-radius:12px;overflow:hidden;text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s}
.g2 a:hover{transform:translateY(-4px);border-color:rgba(185,154,98,.6);box-shadow:0 26px 46px -28px rgba(22,24,28,.45)}
.g-img{display:block;aspect-ratio:1200/630;overflow:hidden;background:#16181C;border-bottom:1px solid var(--rule)}
.g-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.g2 a:hover .g-img img{transform:scale(1.04)}
.g-n{font:500 12px/1 var(--f-data);color:var(--gold);margin:20px 22px 0}
.g2 b{display:block;margin:10px 22px 0;font-family:var(--f-display);font-weight:500;font-size:20px;line-height:1.25;color:var(--ink)}
.g2 .gfoot{margin:auto 22px 0;padding:20px 0;display:flex;justify-content:space-between;align-items:center;border-top:0}
.g2 .gfoot small{font-size:12.5px;color:var(--ink-3)}
.g2 .gfoot span{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--ink)}
.g2 .gfoot svg{color:var(--gold);transition:transform .25s}
.g2 a:hover .gfoot svg{transform:translateX(3px)}
@media (max-width:1080px){.guides.g2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.guides.g2{grid-template-columns:1fr}}

/* --- Preguntas --- */
.faq summary{font-size:22px;padding:26px 0}
.faq summary i{border-color:rgba(185,154,98,.55)}
.faq details[open] summary i{background:#16181C;border-color:#16181C}
.faq details[open]{background:linear-gradient(90deg,rgba(185,154,98,.06),transparent 60%)}
.faq details p a{color:inherit;text-decoration-color:var(--gold)}

/* --- Pie en grafito --- */
.foot{background:#0E0F12!important;color:#A8A59C;border-top:1px solid rgba(220,195,143,.22);position:relative;overflow:hidden}
.foot::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(40% 60% at 0 0,rgba(220,195,143,.10),transparent 70%)}
.foot .brand-word,.foot .brand{color:#F7F4EC}
.foot .brand-sub{color:var(--gold-2)}
.foot h4{color:var(--gold-2);font:600 11px/1 var(--f-body);letter-spacing:.18em;text-transform:uppercase}
.foot a{color:#D9D5CC}
.foot a:hover{color:#fff}
.foot li,.foot-about{color:#A8A59C}
.foot-group,.foot-legal{border-top-color:rgba(255,255,255,.08)!important}
.foot-group span,.foot-legal{color:#8E8A81}
.foot-group img{filter:none!important;opacity:.75}
.foot-group a:hover img{opacity:1}
.foot-legal a{color:#A8A59C}
.g2 a>.g-n{display:block;font:500 12px/1 var(--f-data)!important;color:var(--gold)!important;margin:22px 22px 0!important;letter-spacing:.06em}
.g2 b{margin-top:10px}
.g2 .gfoot{padding:22px 0 20px}
.g-img{aspect-ratio:16/9;background:#16181C;position:relative}
.g-img img{object-position:left top;filter:saturate(.95)}
.g-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(22,24,28,.18))}
.guides-more a{color:var(--ink);text-decoration-color:var(--gold);text-underline-offset:4px}
.plan:not(.ent) .inc{border-top:0;padding-top:4px}
.pricing{align-items:start}
.plan.ent{align-self:start}
.plan.ent .btn{margin-top:32px;align-self:flex-start}
.faq details{border-radius:0!important}
.faq details[open]{background:none}
.faq details[open] summary{color:var(--ink)}
.faq details[open]{box-shadow:inset 2px 0 0 var(--gold)}
.faq details summary,.faq details p{padding-left:20px}
.g2 a{gap:0!important;min-height:0!important}
.g2 a>b{margin:8px 22px 0!important}
.founder blockquote::before{left:-.62em;top:-.18em;font-size:5.2rem}
@media (max-width:1180px){.founder blockquote::before{display:none}}
.founder blockquote::before{display:none!important}

/* ============ Módulos v8: logos, Cómo funciona claro, precios ============ */
.works{background:#FBFAF7;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.works .works-in{display:block;padding-block:40px 36px;text-align:center}
.works .works-t{max-width:none;margin:0 auto;font:600 11.5px/1.5 var(--f-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.logos{list-style:none;margin:28px auto 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;max-width:980px}
.logos li{display:flex;flex-direction:column;align-items:center;gap:14px;font:inherit;letter-spacing:0}
.logos .lg{height:48px;display:flex;align-items:center;justify-content:center;gap:10px}
.logos .lg img{display:block;width:auto}
.logos .lg-wk{height:25px}
.logos .lg-sage{height:40px}
.logos .lg-hd{height:25px}
.logos .lg-xl img{height:34px}
.logos .lg-xl b{font:600 25px/1 "Segoe UI",var(--f-body);color:#1E1F22;letter-spacing:-.01em}
.logos small{font:500 12.5px/1.3 var(--f-body);color:var(--ink-3);margin:0;letter-spacing:0}
.logos small.hl{color:var(--green-deep,#178A43);font-weight:600}
@media (max-width:760px){
  .works .works-in{padding-block:32px 30px}
  .logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px;margin-top:24px}
  .logos .lg{height:42px}
  .logos .lg-wk{height:21px}.logos .lg-hd{height:22px}.logos .lg-sage{height:34px}
  .logos .lg-xl img{height:30px}.logos .lg-xl b{font-size:22px}
}
@media (max-width:359px){.logos .lg-wk{height:18px}.logos .lg-hd{height:19px}}

/* Cómo funciona, en claro */
.cf{background:linear-gradient(180deg,#FBFAF7,#F3F2EE);color:var(--ink);border-top:0}
.cf::before{display:none}
.cf .sec-head h2{color:var(--ink)}
.cf .sec-lead{color:var(--ink-2)}
.cf .kicker{color:var(--gold)}
.st{background:#fff;border:1px solid rgba(22,24,28,.09);box-shadow:0 1px 0 rgba(22,24,28,.03),0 22px 44px -30px rgba(22,24,28,.28)}
.st:hover{border-color:rgba(185,154,98,.55)}
.st-art{background:linear-gradient(180deg,#F7F6F2,#EEEDE7);border-bottom:1px solid rgba(22,24,28,.07)}
.st-n{color:#9A7B45}
.st h3{color:var(--ink)}
.st p{color:var(--ink-2)}
.xl-bar{color:var(--ink-2)}
.xl-row{color:var(--ink)}
.xl-row span:nth-child(2){color:#178A43}
.xl-row.h{color:var(--ink-3)}
.xl-row:not(.h):nth-child(odd){background:rgba(22,24,28,.04)}
.xl-src span{color:var(--ink-2);border-color:rgba(22,24,28,.14);background:#fff}
.mp span{color:var(--ink);border-color:rgba(22,24,28,.12);background:#fff}
.mp-note{color:var(--ink-3)}
.st-rep img{box-shadow:0 18px 36px -14px rgba(22,24,28,.45)}
.rep-chip{background:rgba(255,255,255,.92);color:var(--ink);border-color:rgba(23,138,67,.4)}

/* Precios: dos tarjetas iguales, precio grande sin gráficos */
.pricing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch;max-width:1040px;margin-inline:auto}
.pricing .plan,.pricing .plan.ent{align-self:stretch;display:flex;flex-direction:column;padding:40px;border-radius:16px;position:relative;color:var(--ink)}
.pricing .plan:not(.ent){background:#fff;border:1px solid rgba(185,154,98,.55);box-shadow:0 1px 0 rgba(22,24,28,.03),0 30px 60px -36px rgba(22,24,28,.35)}
.pricing .plan:not(.ent)::before{content:"";position:absolute;left:40px;right:40px;top:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,#DCC28E,#B99A62);inset:auto;left:40px;right:40px;top:-1px}
.pricing .plan.ent{background:#F7F6F2;border:1px solid var(--rule)}
.pricing .plan-k{color:#9A7B45!important}
.pricing .plan h3,.pricing .plan:not(.ent) h3,.pricing .plan.ent h3{color:var(--ink);font-size:32px}
.pricing .plan>p{color:var(--ink-2);min-height:3.2em}
.pz{margin-top:28px;padding:26px 0 28px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);min-height:214px;display:flex;flex-direction:column}
.seg{display:inline-flex;align-self:flex-start;padding:4px;border-radius:999px;background:#F1F0EB;border:1px solid rgba(22,24,28,.08);gap:2px}
.seg button{font:600 13px/1 var(--f-body);color:var(--ink-2);background:transparent;border:0;border-radius:999px;padding:10px 16px;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}
.seg button:hover{color:var(--ink)}
.seg button[aria-pressed="true"]{background:#16181C;color:#F7F4EC;box-shadow:0 4px 10px -4px rgba(22,24,28,.5)}
.seg button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.pz-tag{align-self:flex-start;font:600 13px/1 var(--f-body);color:var(--ink-2);background:#fff;border:1px solid rgba(22,24,28,.1);border-radius:999px;padding:12px 16px}
.pz-v{display:flex;align-items:flex-start;gap:6px;margin-top:22px;color:var(--ink)}
.pz-v strong{font-family:var(--f-display);font-weight:500;font-size:clamp(4rem,6vw,5.2rem);line-height:.9;letter-spacing:-.03em;font-variant-numeric:lining-nums tabular-nums}
.pz-c{font-family:var(--f-display);font-size:1.9rem;line-height:1;color:#9A7B45;margin-top:4px}
.pz-u{align-self:flex-end;margin-left:10px;font-size:14px;line-height:1.35;color:var(--ink-3)}
.pz-txt strong{font-size:clamp(3rem,4.6vw,4rem);line-height:1}
.pz-s{margin-top:auto;padding-top:16px;font-size:14px;color:var(--ink-3);line-height:1.5}
.pricing .inc{margin-top:28px;display:grid;grid-template-columns:1fr;gap:12px;border:0;padding:0;color:var(--ink)}
.pricing .plan:not(.ent) .inc{color:var(--ink);border:0;padding-top:0}
.pricing .inc li::before{border-color:#178A43!important}
.plan-cta{margin-top:auto;padding-top:32px}
.pricing .plan .btn,.pricing .plan.ent .btn{margin-top:0;align-self:auto}
.pricing .plan-fine{margin-top:14px;color:var(--ink-3)}
@media (max-width:900px){
  .pricing{grid-template-columns:1fr;max-width:560px}
  .pricing .plan,.pricing .plan.ent{padding:30px 24px}
  .pricing .plan:not(.ent)::before{left:24px;right:24px}
  .pricing .plan>p{min-height:0}
  .pz{min-height:0}
  .pricing .plan .btn{width:100%;justify-content:center}
}
@media (max-width:400px){.seg button{padding:9px 11px;font-size:12.5px}.pz-u{font-size:13px}}
.pricing .plan.ent .inc{margin-bottom:0}
.works .logos{display:grid;align-items:start;margin:28px auto 0;gap:24px}
.works .logos li{font:inherit}
.works .logos small{font:500 12.5px/1.3 var(--f-body);color:var(--ink-3);margin:0;letter-spacing:0}
.works .logos small.hl{color:#178A43;font-weight:600}
.works .logos .lg-sage{height:34px}
.pricing .plan:not(.ent)::before{display:none}
.pricing .plan:not(.ent){border-top:2px solid #C9AC74}
@media (max-width:760px){.works .logos{gap:28px 12px;margin-top:24px}.works .logos .lg-sage{height:29px}}
.works .logos .lg-hd{height:23px}@media (max-width:760px){.works .logos .lg-hd{height:20px}}

/* ============ Módulos v9: valor, calculadora con facturación, cierre claro ============ */
.val-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:56px}
.val-c{background:#fff;border:1px solid rgba(22,24,28,.09);border-radius:16px;padding:40px;box-shadow:0 1px 0 rgba(22,24,28,.03),0 24px 48px -34px rgba(22,24,28,.3)}
.val-d{background:linear-gradient(160deg,#FCF9F2,#F3EAD7);border-color:rgba(185,154,98,.5)}
.val-k{font:600 11px/1 var(--f-body);letter-spacing:.18em;text-transform:uppercase;color:#9A7B45}
.val-c h3{font-size:clamp(1.6rem,2.4vw,2rem);line-height:1.15;margin-top:14px;max-width:20ch;color:var(--ink)}
.val-c ul{list-style:none;margin:28px 0 0;padding:0}
.val-c li{position:relative;padding:15px 0 15px 32px;border-top:1px solid rgba(22,24,28,.08);font-size:16px;line-height:1.5;color:var(--ink-2)}
.val-d li{border-top-color:rgba(154,123,69,.2)}
.val-c li::before{content:"";position:absolute;left:2px;top:22px;width:13px;height:7px;border-left:2px solid #178A43;border-bottom:2px solid #178A43;transform:rotate(-45deg)}
.val-d li::before{border-color:#9A7B45}
.val-link{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;padding:22px 28px;border-radius:14px;background:#fff;border:1px solid rgba(185,154,98,.5);color:var(--ink);text-decoration:none;font-size:17px;transition:background .2s,border-color .2s,transform .2s}
.val-link b{display:inline-flex;align-items:center;gap:8px;font:600 15px/1 var(--f-body);color:#7C6234;white-space:nowrap}
.val-link:hover{background:#FCF9F2;border-color:#B99A62;transform:translateY(-1px)}
@media (max-width:900px){.val-g{grid-template-columns:1fr;gap:16px;margin-top:40px}.val-c{padding:28px 24px}.val-link{padding:18px 20px;font-size:15.5px}}
@media (max-width:420px){.val-link{flex-direction:column;align-items:flex-start;gap:10px}}

.lo span:last-child{color:#F2EFE8}
.lo-fee span:first-child{color:#E7E3DA}
.lo-fee span:last-child{color:var(--leaf)}

/* Cierre en claro */
.close{background:linear-gradient(135deg,#FCF9F2 0%,#F3EAD7 100%);color:var(--ink);border:1px solid rgba(185,154,98,.5);box-shadow:0 30px 60px -40px rgba(22,24,28,.35)}
.close h2{color:var(--ink)}
.close p{color:var(--ink-2)}
.close-alt{color:var(--ink-3)}
.close-alt a{color:var(--ink);text-decoration-color:rgba(22,24,28,.3)}
.close .btn-line-light{background:#fff;color:var(--ink);border:1px solid rgba(22,24,28,.18);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 1px 0 rgba(22,24,28,.04)}
.close .btn-line-light:hover{background:#FBFAF7;border-color:#B99A62;color:var(--ink)}
.close-art{opacity:.07}
.val-c h3{max-width:none}
.close-art{display:none}

/* ============ v10: prueba social y orden ============ */
.hv-proof{display:flex;align-items:center;gap:10px;margin-top:22px;font:500 14px/1.4 var(--f-body);color:#E9E4D8}
.hv-proof i{width:8px;height:8px;border-radius:50%;background:var(--leaf);box-shadow:0 0 0 4px rgba(139,203,85,.18);flex:none}
.proof{background:#FBFAF7;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.proof-in{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:56px}
.proof-k{display:flex;align-items:center;gap:10px;font:600 11px/1 var(--f-body);letter-spacing:.18em;text-transform:uppercase;color:#178A43}
.proof-k i{width:8px;height:8px;border-radius:50%;background:#8BCB55;box-shadow:0 0 0 4px rgba(139,203,85,.2)}
.proof-t{font-family:var(--f-display);font-size:clamp(1.8rem,3.2vw,2.6rem);line-height:1.12;color:var(--ink);margin-top:16px;max-width:24ch;letter-spacing:-.01em}
.proof-s{font-size:17px;color:var(--ink-2);margin-top:12px}
.proof .btn{flex:none}
@media (max-width:760px){.proof-in{flex-direction:column;align-items:stretch;padding-block:40px;gap:24px}.proof .btn{width:100%;justify-content:center}}
.calc-out .btn{margin-top:6px}
.pz-txt strong{font-size:clamp(2.4rem,3.4vw,2.9rem)}
.proof-t{max-width:28ch}

/* v11 · área táctil de los logos del grupo (mín. 44px de alto sin mover nada) */
.grp-sv,.grp-nx{position:relative}
.grp-sv::after,.grp-nx::after{content:"";position:absolute;left:-6px;right:-6px;top:50%;height:44px;transform:translateY(-50%)}
