/* ════════════════════════════════════════════════════════════════════════
   LIBERATE DE DEUDAS — Sistema de diseño canónico (high fidelity)
   Paleta 7 tokens · Newsreader + Inter + JetBrains Mono
   Decoración: papel notarial · hairlines cobre · sello prescripción ·
   cornerfold · watermark. "La decoración es perfume, no agua."
   Construido por Automatiza.ia · automatizaia.app · build=automatiza-ia
   ════════════════════════════════════════════════════════════════════════ */

:root{
  /* ---- 7 tokens canónicos ---- */
  --navy:#0F172A;
  --blue:#1E3A8A;
  --green:#10B981;
  --copper:#B45309;
  --cream:#FAF7F2;
  --amber:#F59E0B;
  --red:#DC2626;
  /* ---- neutros derivados ---- */
  --paper:#F8F4ED;
  --hair-copper:rgba(180,83,9,.18);
  --hair-navy:rgba(15,23,42,.08);
  --navy-70:rgba(15,23,42,.70);
  --navy-55:rgba(15,23,42,.55);
  --navy-40:rgba(15,23,42,.40);
  --cream-card:#FFFFFF;
  --blue-soft:rgba(30,58,138,.07);
  --green-soft:rgba(16,185,129,.10);
  --amber-soft:rgba(245,158,11,.12);
  --red-soft:rgba(220,38,38,.08);
  --copper-soft:rgba(180,83,9,.08);
  /* ---- fuentes ---- */
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --serif:'Newsreader','Fraunces',Georgia,serif;
  --mono:'JetBrains Mono','SF Mono',ui-monospace,Menlo,monospace;
  /* ---- escala 8px ---- */
  --sp1:4px;--sp2:8px;--sp3:12px;--sp4:16px;--sp6:24px;--sp8:32px;--sp12:48px;--sp16:64px;--sp24:96px;--sp32:128px;
  --container:1280px;
  --radius:16px;
  --shadow-sm:0 1px 2px rgba(15,23,42,.06),0 2px 8px rgba(15,23,42,.05);
  --shadow-md:0 8px 28px rgba(15,23,42,.09);
  --shadow-lg:0 24px 80px rgba(15,23,42,.12);
  --shadow-xl:0 32px 90px rgba(15,23,42,.16);
  --shadow-lift:0 28px 56px -26px rgba(15,23,42,.40);
  --ease:cubic-bezier(.2,.8,.2,1);
  --accent-bar:linear-gradient(180deg,var(--copper),var(--blue));
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--sans);
  background:var(--cream);color:var(--navy);
  font-size:17px;line-height:1.65;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit}

/* skip link */
.skip{position:absolute;left:-9999px;top:0;z-index:999;background:var(--navy);color:#fff;padding:12px 18px;border-radius:0 0 10px 0;font-weight:600}
.skip:focus{left:0}

::selection{background:rgba(30,58,138,.16)}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}

/* ════════ TIPOGRAFÍA ════════ */
.overline{font:600 13px/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--copper);display:inline-flex;align-items:center;gap:8px}
.display{font-family:var(--sans);font-weight:600;letter-spacing:-.025em;line-height:1.04;color:var(--navy)}
h1.display{font-size:clamp(40px,5.4vw,66px)}
h2.display{font-size:clamp(30px,3.6vw,44px);letter-spacing:-.022em}
h3.display{font-size:clamp(20px,2vw,24px);letter-spacing:-.015em}
.serif-it{font-family:var(--serif);font-style:italic;font-weight:500}
.lead{font-size:18px;line-height:1.6;color:var(--navy-70);max-width:52ch}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.body{font-size:17px;line-height:1.65;color:var(--navy-70);max-width:65ch}
.small{font-size:14px}
.muted{color:var(--navy-55)}

/* ════════ LAYOUT ════════ */
.section{position:relative;padding:var(--sp24) 0;overflow:clip}
.section.tight{padding:var(--sp12) 0}
@media (max-width:1024px){.section{padding:var(--sp16) 0}}
@media (max-width:768px){.section{padding:var(--sp12) 0}}
.wrap{max-width:var(--container);margin:0 auto;padding:0 40px;position:relative;z-index:2}
@media (max-width:768px){.wrap{padding:0 22px}}
.section.cream{background:var(--cream)}
.section.paper{background:var(--paper)}
.section.navy{background:var(--navy);color:#E9E7E2}
.section.navy .display{color:#F5F3EF}
.section.navy .lead{color:rgba(233,231,226,.72)}
.section.navy .overline{color:#D9A066}

/* ════════ DECORACIÓN: papel notarial (grano) ════════ */
.grain::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity:.045;mix-blend-mode:multiply;
}
.section.navy.grain::before{mix-blend-mode:screen;opacity:.05}

/* hairlines cobre horizontales (ledger) */
.hairline{height:1px;background:var(--hair-copper);border:0;margin:0}
.hairline.navy{background:var(--hair-navy)}
.ledger{position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:repeating-linear-gradient(to bottom,transparent,transparent 95px,var(--hair-copper) 95px,var(--hair-copper) 96px);
  opacity:.55;}

/* watermark tipográfico gigante */
.watermark{position:absolute;z-index:0;font-family:var(--serif);font-weight:600;
  font-size:clamp(140px,22vw,260px);line-height:.8;color:rgba(15,23,42,.035);
  pointer-events:none;user-select:none;bottom:-.12em;right:.1em;letter-spacing:-.02em;}
.section.navy .watermark{color:rgba(233,231,226,.05)}

/* sello concéntrico de prescripción */
.seal{position:absolute;z-index:0;pointer-events:none;opacity:.11}
.seal.tr{top:-60px;right:-70px;width:clamp(280px,32vw,460px)}
.seal.bl{bottom:-60px;left:-70px;width:clamp(260px,28vw,420px)}
.seal svg{width:100%;height:auto;display:block}
.seal text{fill:var(--copper);font-family:var(--mono);font-size:11px;letter-spacing:4px}
.seal circle{stroke:var(--copper);fill:none}
@media (max-width:768px){.seal{opacity:.07;transform:scale(.6);transform-origin:top right}}

/* cornerfold (papel plegado) */
.cornerfold{position:relative;clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,0 100%)}
.cornerfold .fold{position:absolute;top:0;right:0;width:26px;height:26px;z-index:3;
  background:linear-gradient(135deg,var(--hair-copper) 0%,rgba(180,83,9,.28) 48%,transparent 50%);}

/* ════════ BOTONES ════════ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font:600 15px/1 var(--sans);padding:15px 24px;border-radius:12px;border:1.5px solid transparent;
  cursor:pointer;transition:transform .15s,box-shadow .2s,background .2s,border-color .2s;white-space:nowrap}
.btn svg{width:18px;height:18px}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 6px 18px rgba(30,58,138,.22)}
.btn-primary:hover{box-shadow:0 10px 26px rgba(30,58,138,.30)}
.btn-copper{background:var(--copper);color:#fff;box-shadow:0 6px 18px rgba(180,83,9,.24)}
.btn-copper:hover{box-shadow:0 10px 26px rgba(180,83,9,.32)}
.btn-green{background:var(--green);color:#063b2b;box-shadow:0 6px 18px rgba(16,185,129,.26);font-weight:700}
.btn-green:hover{box-shadow:0 10px 26px rgba(16,185,129,.34)}
.btn-ghost{background:transparent;border-color:var(--hair-navy);color:var(--navy)}
.btn-ghost:hover{border-color:rgba(15,23,42,.22);background:rgba(15,23,42,.02)}
.btn-outline-copper{background:transparent;border-color:rgba(217,160,102,.5);color:#E9E7E2}
.btn-outline-copper:hover{border-color:#D9A066;background:rgba(217,160,102,.08)}
.btn-lg{padding:17px 28px;font-size:16px;border-radius:13px}
.btn-sm{padding:10px 16px;font-size:13px;border-radius:9px}
.btn-full{width:100%}
.btn-pill{border-radius:999px}

/* ghost link con subrayado animado */
.link-underline{position:relative;font-weight:600;color:var(--navy);padding-bottom:2px}
.link-underline::after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:1.5px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.link-underline:hover::after{transform:scaleX(1)}
.arrow-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--blue)}
.arrow-link .ar{transition:transform .2s}
.arrow-link:hover .ar{transform:translateX(4px)}

/* micro-pills trust */
.trust-bar{display:flex;gap:10px;flex-wrap:wrap;margin-top:var(--sp6)}
.tpill{display:inline-flex;align-items:center;gap:7px;font:600 13px/1 var(--sans);color:var(--navy-70);
  padding:9px 14px;border:1px solid var(--hair-copper);border-radius:999px;background:rgba(255,255,255,.5)}
.tpill svg{width:15px;height:15px;color:var(--green)}

/* tags */
.tag{display:inline-flex;align-items:center;gap:6px;font:600 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.07em;
  padding:6px 10px;border-radius:7px;background:rgba(15,23,42,.05);color:var(--navy-70)}
.tag-free{background:var(--green-soft);color:#0a6b4d}
.tag-copper{background:var(--copper-soft);color:var(--copper)}

/* ════════ ICON CHIP ════════ */
.ico{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.ico svg{stroke-width:1.5}
.ico-chip{width:46px;height:46px;border-radius:12px;border:1.5px solid var(--hair-copper);background:rgba(255,255,255,.6);color:var(--navy)}
.ico-chip svg{width:22px;height:22px}
.ico-chip.green{color:var(--green);border-color:rgba(16,185,129,.3)}
.ico-chip.copper{color:var(--copper);border-color:var(--hair-copper)}

/* ════════ TOP STRIP ════════ */
.topstrip{background:var(--navy);color:rgba(233,231,226,.78);font:600 12px/1 var(--mono);letter-spacing:.02em}
.topstrip .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:9px;padding-bottom:9px;gap:16px;min-height:36px}
.topstrip .ts-l,.topstrip .ts-r{display:flex;align-items:center;gap:8px;white-space:nowrap}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--green);position:relative;flex:0 0 auto}
.live-dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid var(--green);opacity:.6;animation:livepulse 2.2s ease-out infinite}
@keyframes livepulse{0%{transform:scale(.6);opacity:.6}100%{transform:scale(1.8);opacity:0}}
.country-switch{position:relative}
.country-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:#E9E7E2;font:600 12px/1 var(--mono);cursor:pointer;letter-spacing:.03em}
.country-menu{position:absolute;top:130%;left:50%;transform:translateX(-50%);background:#fff;color:var(--navy);
  border-radius:10px;box-shadow:var(--shadow-lg);padding:6px;min-width:200px;z-index:120;display:none}
.country-menu.open{display:block}
.country-menu .ci{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:7px;font:500 13px/1 var(--sans)}
.country-menu .ci.active{background:var(--green-soft);color:#0a6b4d;font-weight:600}
.country-menu .ci.soon{color:var(--navy-40)}
.country-menu .ci .pp{font:600 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em}
@media (max-width:768px){.topstrip .ts-r{display:none}}

/* ════════ NAV ════════ */
.nav{position:sticky;top:0;z-index:100;background:rgba(250,247,242,.82);backdrop-filter:saturate(140%) blur(14px);border-bottom:1px solid var(--hair-navy)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:16px;padding-bottom:16px;gap:18px}
.brand{display:flex;align-items:center;gap:12px}
.brand .mk{width:34px;height:34px;border-radius:9px;background:var(--navy);position:relative;flex:0 0 auto}
.brand .mk::after{content:"";position:absolute;inset:8px;border:1.5px solid var(--copper);border-radius:3px}
.brand .bt{display:flex;flex-direction:column;line-height:1.1}
.brand .bt b{font-size:16px;font-weight:600;letter-spacing:-.01em}
.brand .bt small{font:500 10px/1.2 var(--mono);color:var(--copper);letter-spacing:.02em}
.navlinks{display:flex;gap:28px}
.navlinks a{font:500 15px/1 var(--sans);color:var(--navy-70);transition:color .15s}
.navlinks a:hover{color:var(--navy)}
.nav-r{display:flex;align-items:center;gap:16px}
@media (max-width:980px){.navlinks{display:none}.nav-login{display:none}}

/* ════════ HERO ════════ */
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:var(--sp16);align-items:center}
@media (max-width:980px){.hero-grid{grid-template-columns:1fr;gap:var(--sp12)}}
.hero h1{margin:0 0 var(--sp6)}
.reveal-word{display:inline-block;animation:wordreveal .9s cubic-bezier(.2,.65,.2,1) both}
@keyframes wordreveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@media (prefers-reduced-motion:reduce){.reveal-word{clip-path:none;animation:none}}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:var(--sp8)}

/* ════════ CALCULADORA ════════ */
.calc{background:var(--cream-card);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden;border:1px solid var(--hair-navy)}
.calc-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 24px;border-bottom:1px solid var(--hair-navy)}
.calc-head h3{margin:0;font:600 18px/1.2 var(--sans);letter-spacing:-.01em}
.calc-body{padding:24px}
.calc-stepper{display:flex;align-items:center;margin-bottom:var(--sp6)}
.calc-stepper .st{display:flex;flex-direction:column;align-items:center;gap:7px;flex:0 0 auto}
.calc-stepper .st .dot{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--hair-navy);display:flex;align-items:center;justify-content:center;
  font:500 13px/1 var(--mono);color:var(--navy-40);background:#fff;transition:.2s}
.calc-stepper .st .lbl{font:600 10px/1 var(--sans);color:var(--navy-55);text-align:center}
.calc-stepper .st.on .dot{border-color:var(--blue);color:var(--blue);background:var(--blue-soft)}
.calc-stepper .st.done .dot{border-color:var(--green);background:var(--green);color:#fff}
.calc-stepper .st.on .lbl,.calc-stepper .st.done .lbl{color:var(--navy-70)}
.calc-stepper .conn{flex:1;height:1.5px;background:var(--hair-navy);margin:0 6px;margin-bottom:17px}
.calc-step{display:none}
.calc-step.show{display:block;animation:slidein .2s ease}
@keyframes slidein{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.calc-step.show{animation:none}}
.field-label{display:block;font:600 13px/1 var(--sans);color:var(--navy-70);margin-bottom:12px}
.pill-row{display:flex;gap:9px;flex-wrap:wrap}
.opt-pill{font:600 14px/1 var(--sans);padding:11px 16px;border:1.5px solid var(--hair-navy);border-radius:999px;background:#fff;color:var(--navy-70);cursor:pointer;transition:.15s}
.opt-pill:hover{border-color:rgba(15,23,42,.22)}
.opt-pill.sel{border-color:var(--blue);color:var(--blue);background:var(--blue-soft)}
.calc-selects{display:flex;gap:10px}
.calc-input{flex:1;border:1.5px solid var(--hair-navy);border-radius:11px;padding:13px 14px;background:#fff;font:500 15px/1 var(--sans);color:var(--navy);transition:.15s}
.calc-input:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}
.range-wrap{margin-top:var(--sp4)}
.range-val{font:500 26px/1 var(--mono);color:var(--navy);text-align:center;margin:6px 0 14px}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--hair-navy);outline:none}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:2.5px solid var(--blue);cursor:pointer;box-shadow:0 2px 6px rgba(15,23,42,.2)}
input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:2.5px solid var(--blue);cursor:pointer}
.range-scale{display:flex;justify-content:space-between;font:500 12px/1 var(--mono);color:var(--navy-55);margin-top:8px}
.calc-nav{display:flex;gap:10px;margin-top:var(--sp6)}

/* resultado */
.result{display:none;border-radius:14px;padding:22px;gap:16px;align-items:flex-start;border-left:4px solid;
  opacity:0;transform:translateY(14px) scale(.97)}
.result.reveal{display:flex;animation:springin 1.1s cubic-bezier(.22,1.2,.32,1) forwards}
@keyframes springin{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.result.reveal{animation:fadein .3s ease forwards}}
@keyframes fadein{to{opacity:1;transform:none}}
.result.ok{background:var(--green-soft);border-color:var(--green)}
.result.warn{background:var(--amber-soft);border-color:var(--amber)}
.result.bad{background:var(--red-soft);border-color:var(--red)}
.result .ric{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.result.ok .ric{background:var(--green);color:#fff}
.result.warn .ric{background:var(--amber);color:#3b2a05}
.result.bad .ric{background:var(--red);color:#fff}
.result .rbig{font:500 22px/1.2 var(--sans);margin:0 0 6px;letter-spacing:-.01em}
.result.ok .rbig{color:#0a6b4d}.result.warn .rbig{color:#8a5e08}.result.bad .rbig{color:#a1241f}
.result .rsub{margin:0;font-size:14px;line-height:1.55;color:var(--navy-70)}
.result .rcta{margin-top:14px}

/* ════════ TRUST METRICS ════════ */
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp8)}
@media (max-width:768px){.metrics{grid-template-columns:1fr 1fr;gap:var(--sp6)}}
.metric .mnum{font:500 clamp(40px,5vw,58px)/1 var(--mono);letter-spacing:-.02em;display:flex;align-items:flex-start;gap:8px;color:var(--navy)}
.metric .mnum .ck{color:var(--green);width:22px;height:22px;margin-top:6px}
.metric .mlbl{font-size:14px;color:var(--navy-55);margin-top:8px}

/* ════════ CÓMO FUNCIONA ════════ */
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp12)}
@media (max-width:768px){.steps3{grid-template-columns:1fr;gap:var(--sp8)}}
.step-card{position:relative;background:linear-gradient(180deg,#fff,var(--cream));border:1px solid var(--hair-navy);border-radius:18px;padding:30px 26px 28px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .34s var(--ease),box-shadow .34s var(--ease),border-color .34s var(--ease)}
.step-card::before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:3px;border-radius:0 3px 3px 0;background:var(--accent-bar);opacity:0;transition:opacity .34s var(--ease)}
.step-card::after{content:"";position:absolute;top:-40px;right:-40px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,var(--copper-soft),transparent 70%);opacity:0;transition:opacity .34s var(--ease);pointer-events:none}
.step-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift);border-color:var(--hair-copper)}
.step-card:hover::before{opacity:1}
.step-card:hover::after{opacity:1}
.step-card .snum{position:relative;font-family:var(--serif);font-style:italic;font-weight:500;font-size:64px;color:var(--copper);line-height:.9;transition:transform .34s var(--ease)}
.step-card:hover .snum{transform:scale(1.06) translateY(-2px)}
.step-card h3{position:relative;margin:12px 0 10px}
.step-card .body,.step-card .small{position:relative}

/* ════════ PAYWALL B (documento notarial) ════════ */
.paywall-b{display:grid;grid-template-columns:0 0;grid-template-columns:minmax(0,44%) minmax(0,1fr);gap:var(--sp6);align-items:stretch}
@media (max-width:880px){.paywall-b{grid-template-columns:1fr}}
.plan-rail{display:flex;flex-direction:column;border:1px solid var(--hair-navy);border-radius:16px;overflow:hidden;background:#fff}
.rail-step{display:flex;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid var(--hair-copper);position:relative}
.rail-step:last-child{border-bottom:0}
.rail-step .rn{font-family:var(--serif);font-style:italic;font-weight:500;font-size:34px;line-height:1;color:var(--copper);width:34px;text-align:center;flex:0 0 auto}
.rail-step .rinfo b{display:block;font:600 15px/1.3 var(--sans);letter-spacing:-.01em}
.rail-step .rinfo span{font:500 12px/1 var(--mono);color:var(--navy-55)}
.rail-step.free .rinfo span{color:#0a6b4d}
.rail-step.locked{background:var(--copper-soft)}
.rail-step .rstate{margin-left:auto;flex:0 0 auto}
.rail-step .rstate svg{width:20px;height:20px}
.rail-step.free .rstate{color:var(--green)}
.rail-step.locked .rstate{color:var(--copper)}
.rail-step.hl{box-shadow:inset 3px 0 0 var(--copper)}

.doc-card{position:relative;background:var(--paper);border:1px solid var(--hair-copper);border-radius:16px;padding:24px;display:flex;flex-direction:column;min-height:420px}
.doc-card .doc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;position:relative;z-index:4}
.doc-mask{position:relative;flex:1;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 34%,transparent 72%);mask-image:linear-gradient(to bottom,#000 0%,#000 34%,transparent 72%)}
.doc-blur{filter:blur(8px);pointer-events:none;user-select:none}
.doc-blur h4{font:600 17px/1.3 var(--sans);margin:0 0 14px;color:var(--navy)}
.doc-line{height:11px;border-radius:4px;background:rgba(15,23,42,.13);margin:11px 0}
.doc-reveal{position:absolute;left:0;right:0;bottom:0;padding:24px;text-align:center;z-index:5}
.doc-incl{font-size:14px;line-height:1.55;color:var(--navy);max-width:44ch;margin:0 auto 16px}
.doc-incl b{font-weight:600}
.unlock-row{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.unlock-row .price{font:500 19px/1 var(--mono);color:var(--navy)}
.padlock{width:26px;height:26px;color:var(--copper)}
.padlock .shk{transform-origin:13px 11px;animation:lockwiggle 3.6s ease-in-out infinite}
@keyframes lockwiggle{0%,86%,100%{transform:rotate(0)}90%{transform:rotate(-10deg)}94%{transform:rotate(0)}}
@media (prefers-reduced-motion:reduce){.padlock .shk{animation:none}}

/* paywall tooltip */
.pw-tip{position:relative}
.pw-tip .tip{position:absolute;bottom:130%;left:50%;transform:translateX(-50%) translateY(6px);
  background:var(--navy);color:#E9E7E2;font:500 12px/1.5 var(--sans);text-align:left;
  padding:12px 14px;border-radius:10px;width:240px;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:.2s;z-index:20}
.pw-tip:hover .tip{opacity:1;transform:translateX(-50%)}
.pw-tip .tip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--navy)}

/* ════════ ABOGADOS ════════ */
.lawyer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp6)}
@media (max-width:880px){.lawyer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.lawyer-grid{grid-template-columns:1fr}}
.lawyer{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(217,160,102,.22);border-radius:16px;padding:18px;overflow:hidden;transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s var(--ease)}
.lawyer::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,#D9A066,var(--copper));opacity:0;transition:opacity .32s var(--ease)}
.lawyer:hover{transform:translateY(-6px);box-shadow:0 30px 60px -24px rgba(0,0,0,.5);border-color:rgba(217,160,102,.5)}
.lawyer:hover::before{opacity:1}
.lawyer .photo{aspect-ratio:1;border-radius:11px;margin-bottom:14px;background:rgba(255,255,255,.06);overflow:hidden;transition:box-shadow .32s var(--ease)}
.lawyer:hover .photo{box-shadow:inset 0 0 0 1px rgba(217,160,102,.4)}
.lawyer .lname{font:600 16px/1.2 var(--sans);color:#F5F3EF}
.lawyer .ltitle{font-size:12px;color:rgba(233,231,226,.6);margin-top:3px}
.lawyer .cang{font:600 14px/1 var(--mono);color:#D9A066;margin-top:10px;letter-spacing:.03em}
.lawyer .lverify{font-size:12px;color:#D9A066;margin-top:8px;display:inline-flex;align-items:center;gap:5px}

/* ════════ COMPARATIVA ════════ */
.cmp-wrap{border:1px solid var(--hair-navy);border-radius:16px;overflow:hidden;background:#fff}
.cmp{width:100%;border-collapse:collapse}
.cmp th,.cmp td{padding:16px 18px;text-align:center;border-bottom:1px solid var(--hair-navy);font-size:14px}
.cmp th:first-child,.cmp td:first-child{text-align:left;font-weight:500;color:var(--navy-70);min-width:200px}
.cmp thead th{font:600 14px/1.2 var(--sans);background:var(--paper)}
.cmp thead th.hl{background:var(--cream);color:var(--blue);border-bottom:2px solid var(--blue)}
.cmp td.hl{background:rgba(250,247,242,.7)}
.cmp tr:last-child td{border-bottom:0}
.cmp .yes{color:var(--green)}.cmp .no{color:var(--red)}.cmp .dash{color:var(--navy-40)}
.cmp svg{width:20px;height:20px}
@media (max-width:768px){.cmp-wrap{overflow-x:auto}.cmp{min-width:620px}}

/* ════════ DERECHOS HUB ════════ */
.rights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp4)}
@media (max-width:880px){.rights-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.rights-grid{grid-template-columns:1fr}}
.right-card{position:relative;background:linear-gradient(180deg,#fff,var(--cream));border:1px solid var(--hair-navy);border-radius:16px;padding:24px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s var(--ease);display:block}
.right-card::before{content:"";position:absolute;left:0;top:20px;bottom:20px;width:3px;border-radius:0 3px 3px 0;background:var(--accent-bar);opacity:0;transition:opacity .32s var(--ease)}
.right-card:hover{border-color:var(--hair-copper);box-shadow:var(--shadow-lift);transform:translateY(-6px)}
.right-card:hover::before{opacity:1}
.right-card h3{margin:14px 0 6px;font-size:17px;position:relative}
.right-card .rc-top{display:flex;align-items:center;justify-content:space-between}
.right-card .ico-chip{transition:transform .32s var(--ease),background .32s var(--ease),border-color .32s var(--ease)}
.right-card:hover .ico-chip{transform:scale(1.08) rotate(-3deg);background:var(--copper-soft);border-color:var(--copper)}
.right-card .rc-top .ico:last-child{transition:transform .32s var(--ease)}
.right-card:hover .rc-top .ico:last-child{transform:translateX(4px);color:var(--copper)}

/* ════════ TESTIMONIOS ════════ */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp6)}
@media (max-width:880px){.testi-grid{grid-template-columns:1fr}}
.testi{position:relative;background:linear-gradient(180deg,#fff,var(--cream));border:1px solid var(--hair-navy);border-radius:16px;padding:26px 24px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s var(--ease)}
.testi::before{content:"\201C";position:absolute;top:6px;right:18px;font-family:var(--serif);font-style:italic;font-size:90px;line-height:1;color:var(--copper);opacity:.10;pointer-events:none}
.testi:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift);border-color:var(--hair-copper)}
.testi .quote{position:relative;font-family:var(--serif);font-size:18px;line-height:1.5;color:var(--navy);font-style:italic}
.testi .who{display:flex;align-items:center;gap:11px;margin-top:16px}
.testi .who .av{width:42px;height:42px;border-radius:50%;background:var(--paper);border:1px solid var(--hair-navy)}

/* ════════ PRICING ════════ */
.tiers{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp4);align-items:stretch}
@media (max-width:980px){.tiers{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.tiers{grid-template-columns:1fr}}
.tier{position:relative;background:linear-gradient(180deg,#fff,var(--cream));border:1px solid var(--hair-navy);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:18px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s var(--ease)}
.tier::before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:3px;border-radius:0 3px 3px 0;background:var(--accent-bar);opacity:0;transition:opacity .32s var(--ease)}
.tier:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift);border-color:var(--hair-copper)}
.tier:hover::before{opacity:1}
.tier.featured{border-color:var(--blue);box-shadow:0 20px 50px rgba(30,58,138,.14);position:relative}
.tier.featured::after{content:"";position:absolute;inset:0;border-radius:16px;border:1.5px solid rgba(30,58,138,.18);pointer-events:none}
.tier.featured:hover{box-shadow:0 30px 64px -22px rgba(30,58,138,.38)}
.tier.featured::before{content:"Recomendado";position:absolute;top:-11px;left:24px;font:700 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;background:var(--blue);color:#fff;padding:6px 11px;border-radius:6px}
.tier .tname{font:600 13px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--navy-55)}
.tier .tprice{font:500 34px/1 var(--mono);color:var(--navy);letter-spacing:-.02em}
.tier .tprice small{font-size:14px;color:var(--navy-40);font-family:var(--sans)}
.tier ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;flex:1}
.tier li{display:flex;gap:9px;font-size:14px;color:var(--navy-70);line-height:1.4}
.tier li svg{width:17px;height:17px;color:var(--green);flex:0 0 auto;margin-top:2px}

/* sello garantía */
.guarantee-seal{width:104px;height:104px;border-radius:50%;border:1.5px solid var(--hair-copper);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2px;
  font:700 9px/1.25 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--copper);background:var(--copper-soft);position:relative}
.guarantee-seal::before{content:"";position:absolute;inset:6px;border:1px solid var(--hair-copper);border-radius:50%}
.guarantee-seal b{font-size:18px;font-family:var(--serif);font-style:italic;letter-spacing:0}

/* ════════ FAQ ════════ */
.faq{max-width:780px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--hair-navy)}
.faq-q{display:flex;align-items:center;gap:16px;width:100%;background:none;border:0;text-align:left;cursor:pointer;
  padding:20px 4px;font:600 17px/1.35 var(--sans);color:var(--navy)}
.faq-q .plus{margin-left:auto;flex:0 0 auto;width:26px;height:26px;border:1.5px solid var(--hair-navy);border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:var(--navy-55);transition:.25s}
.faq-q[aria-expanded=true] .plus{transform:rotate(45deg);border-color:var(--blue);color:var(--blue)}
.faq-a{overflow:hidden;max-height:0;transition:max-height .3s ease}
.faq-a .inner{padding:0 4px 22px;color:var(--navy-70);font-size:15px;line-height:1.65;max-width:64ch}

/* ════════ CHAT (diagnostico-ai) ════════ */
.chat{max-width:720px;margin:0 auto}
.msg{display:flex;gap:13px;margin-bottom:var(--sp6)}
.msg .av{width:34px;height:34px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font:600 12px/1 var(--mono)}
.msg.ai .av{background:var(--navy);color:#D9A066}
.msg.user{flex-direction:row-reverse}
.msg.user .av{background:var(--blue-soft);color:var(--blue);border:1px solid rgba(30,58,138,.2)}
.bubble{padding:16px 18px;font-size:15px;line-height:1.6;border-radius:4px 16px 16px 16px}
.msg.ai .bubble{background:var(--paper);border:1px solid var(--hair-copper);color:var(--navy)}
.msg.user .bubble{background:#fff;border:1px solid var(--hair-navy);border-radius:16px 4px 16px 16px}
.bubble p{margin:0 0 10px}.bubble p:last-child{margin:0}
.bubble .cite{font-family:var(--mono);color:var(--copper);font-weight:500}
.chatbar{display:flex;gap:11px;align-items:center;background:#fff;border:1.5px solid var(--hair-navy);border-radius:14px;padding:9px 9px 9px 18px;box-shadow:var(--shadow-md)}
.chatbar input{flex:1;border:0;outline:0;font:400 15px/1 var(--sans);background:none;color:var(--navy)}
.chatbar input::placeholder{color:var(--navy-40)}
.msg-count{text-align:center;font:500 12px/1 var(--mono);color:var(--navy-55);margin-top:12px}

/* disclaimer */
.disclaimer{display:flex;gap:13px;align-items:flex-start;background:#FCF8F0;border:1px solid var(--hair-copper);border-radius:12px;padding:14px 16px;font-size:13px;line-height:1.55;color:var(--navy-70)}
.disclaimer svg{width:18px;height:18px;color:var(--amber);flex:0 0 auto;margin-top:2px}
.disclaimer .dx{margin-left:auto;background:none;border:0;cursor:pointer;color:var(--navy-40);flex:0 0 auto}
.sticky-disc{position:sticky;bottom:16px;z-index:30;margin-top:var(--sp8)}

/* plan en chat */
.plan-inline{border:1px solid var(--hair-navy);border-radius:16px;overflow:hidden;background:#fff;margin-top:6px}
.plan-step{border-bottom:1px solid var(--hair-copper)}
.plan-step:last-child{border-bottom:0}
.ps-head{display:flex;align-items:center;gap:13px;padding:16px 18px}
.ps-head .ttl{font:600 15px/1.3 var(--sans);flex:1}
.ps-head .meta{font:600 11px/1 var(--mono);color:var(--navy-55);text-transform:uppercase}
.ps-head.free .meta{color:#0a6b4d}
.ps-body{padding:0 18px 18px 49px;font-size:14px;color:var(--navy-70);line-height:1.55}
.ps-locked .ttl{color:var(--navy-55)}
.locked-box{position:relative;border:1px solid var(--hair-copper);border-radius:12px;overflow:hidden;margin-left:31px;margin-bottom:16px}
.locked-box .lb-blur{filter:blur(8px);padding:18px;background:var(--paper);pointer-events:none;user-select:none}
.locked-box .lb-veil{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:20px;background:linear-gradient(180deg,rgba(248,244,237,.4),rgba(248,244,237,.82))}

/* ════════ CHECKOUT WIZARD ════════ */
.wiz{max-width:680px;margin:0 auto}
.wiz-progress{display:flex;align-items:center;margin-bottom:var(--sp8)}
.wiz-progress .ws{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.wiz-progress .ws .n{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--hair-navy);display:flex;align-items:center;justify-content:center;font:600 13px/1 var(--mono);color:var(--navy-40);background:#fff}
.wiz-progress .ws.done .n{background:var(--green);border-color:var(--green);color:#fff}
.wiz-progress .ws.on .n{border-color:var(--blue);color:var(--blue);background:var(--blue-soft)}
.wiz-progress .ws .wl{font:600 13px/1 var(--sans);color:var(--navy-40)}
.wiz-progress .ws.on .wl,.wiz-progress .ws.done .wl{color:var(--navy-70)}
.wiz-progress .wc{flex:1;height:1.5px;background:var(--hair-navy);margin:0 10px}
.wiz-panel{display:none;animation:wizslide .2s ease}
.wiz-panel.show{display:block}
@keyframes wizslide{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.wiz-panel.show{animation:none}}
.card{background:#fff;border:1px solid var(--hair-navy);border-radius:16px;padding:26px}
.incl-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.incl-list li{display:flex;gap:11px;font-size:15px;color:var(--navy-70);line-height:1.45}
.incl-list li svg{width:18px;height:18px;color:var(--green);flex:0 0 auto;margin-top:2px}
.paymethod{display:flex;align-items:center;gap:15px;border:1.5px solid var(--hair-navy);border-radius:13px;padding:16px 18px;margin-bottom:12px;cursor:pointer;transition:.15s}
.paymethod.sel{border-color:var(--blue);background:var(--blue-soft)}
.paymethod .radio{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--hair-navy);flex:0 0 auto;transition:.15s}
.paymethod.sel .radio{border:6px solid var(--blue)}
.paymethod .pm-info b{display:block;font:600 15px/1.2 var(--sans)}
.paymethod .pm-info span{font-size:13px;color:var(--navy-55)}
.paymethod .pm-rec{margin-left:auto;font:600 10px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--navy-40);text-align:right;flex:0 0 auto}
.paymethod.sel .pm-rec{color:var(--blue)}
.bankbox{background:var(--paper);border:1px dashed var(--hair-copper);border-radius:13px;padding:20px;display:grid;gap:12px}
.bankbox .kv{display:flex;justify-content:space-between;align-items:center;font-size:15px}
.bankbox .kv span{color:var(--navy-55)}
.bankbox .kv b{font-family:var(--mono);font-weight:600;color:var(--navy)}
.confirm-ico{width:64px;height:64px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto}

/* ════════ DASHBOARD ════════ */
.dash{display:grid;grid-template-columns:1fr 320px;gap:var(--sp8)}
@media (max-width:980px){.dash{grid-template-columns:1fr}}
.next-banner{background:var(--blue-soft);border:1px solid rgba(30,58,138,.18);border-radius:16px;padding:20px 22px;display:flex;gap:18px;align-items:center;margin-bottom:var(--sp8)}
@media (max-width:560px){.next-banner{flex-direction:column;align-items:flex-start;gap:14px}}
.next-banner .nb-lbl{font:600 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--blue)}
.next-banner .nb-main{font:600 16px/1.35 var(--sans);margin:5px 0 4px;letter-spacing:-.01em}
.next-banner .nb-sub{font-size:13px;color:var(--navy-70)}
.timeline{position:relative;padding-left:38px}
.timeline::before{content:"";position:absolute;left:12px;top:8px;bottom:8px;width:2px;background:var(--hair-navy)}
.tl{position:relative;margin-bottom:22px}
.tl .node{position:absolute;left:-38px;top:2px;width:26px;height:26px;border-radius:50%;background:#fff;border:2px solid var(--hair-navy);display:flex;align-items:center;justify-content:center;color:var(--navy-40)}
.tl .node svg{width:14px;height:14px}
.tl.done .node{background:var(--green);border-color:var(--green);color:#fff}
.tl.current .node{border-color:var(--blue);color:var(--blue);box-shadow:0 0 0 5px var(--blue-soft)}
.tl-card{background:#fff;border:1px solid var(--hair-navy);border-radius:13px;padding:16px 18px}
.tl.current .tl-card{border-color:var(--blue);box-shadow:0 12px 32px rgba(30,58,138,.13)}
.tl .tl-date{font:600 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--navy-40)}
.tl .tl-title{font:600 15px/1.3 var(--sans);margin-top:6px}
.tl .tl-who{display:flex;align-items:center;gap:9px;margin-top:11px;font-size:13px;color:var(--navy-70)}
.tl .tl-who .av{width:28px;height:28px;border-radius:50%;background:var(--paper);border:1px solid var(--hair-navy);flex:0 0 auto}
.tl .tl-who .cang{font-family:var(--mono);color:var(--copper);font-weight:600}
.wa-badge{display:inline-flex;align-items:center;gap:6px;font:600 11px/1 var(--mono);color:#0a6b4d;background:var(--green-soft);padding:6px 10px;border-radius:7px}
.tl-doc{display:inline-flex;align-items:center;gap:7px;margin-top:11px;font:600 13px/1 var(--sans);color:var(--blue);border:1px solid var(--hair-navy);border-radius:9px;padding:8px 12px}
.tl-doc svg{width:15px;height:15px}

/* ════════ FOOTER ════════ */
.footer{background:var(--cream);border-top:1px solid var(--hair-copper)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:var(--sp8)}
@media (max-width:880px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr}}
.footer h4{font:600 12px/1 var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--navy-55);margin:0 0 16px}
.footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.footer ul a{font-size:14px;color:var(--navy-70)}
.footer ul a:hover{color:var(--navy)}
.auto-panel{margin-top:var(--sp12);border:1px solid var(--hair-copper);border-radius:16px;padding:24px;
  background:linear-gradient(135deg,var(--paper),#EFEAE1);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.auto-panel .ap-l{max-width:60ch}
.auto-panel .ap-desc{font-size:14px;color:var(--navy-70);line-height:1.6;margin:12px 0 0}
.auto-panel .working{display:flex;align-items:center;gap:9px;font:600 13px/1 var(--mono);color:#0a6b4d;white-space:nowrap}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:var(--sp8);padding-top:var(--sp6);border-top:1px solid var(--hair-navy);font:500 12px/1.4 var(--mono);color:var(--navy-40)}

/* ════════ utilidades ════════ */
.center{text-align:center}
.mt0{margin-top:0}.mt2{margin-top:8px}.mt4{margin-top:16px}.mt6{margin-top:24px}.mt8{margin-top:32px}.mt12{margin-top:48px}
.mb6{margin-bottom:24px}
.section-head{max-width:680px}.section-head.center{margin:0 auto}
.flex{display:flex}.between{justify-content:space-between}.aic{align-items:center}.gap{gap:16px}.wrapf{flex-wrap:wrap}
.col-gap{display:flex;flex-direction:column;gap:24px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp12);align-items:center}
@media (max-width:880px){.split{grid-template-columns:1fr;gap:var(--sp8)}}
.imgph{border:1.5px dashed var(--hair-navy);border-radius:12px;background:
  repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(15,23,42,.022) 10px,rgba(15,23,42,.022) 11px),var(--paper);
  display:flex;align-items:center;justify-content:center;text-align:center;color:var(--navy-40);font:500 12px/1.4 var(--mono);padding:16px}
.navy .imgph{border-color:rgba(217,160,102,.25);background:
  repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,255,255,.03) 10px,rgba(255,255,255,.03) 11px),rgba(255,255,255,.04);color:rgba(233,231,226,.5)}
