/* Tipografías alojadas en la propia web (sin Google Fonts) */
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Literata";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/literata-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Literata";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/literata-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Literata";font-style:italic;font-weight:500;font-display:swap;src:url(fonts/literata-latin-500-italic.woff2) format("woff2")}
/* Concepto: cada página es un expediente. Columna de ficha (artículos, pena, prescripción) a la izquierda; desarrollo a la derecha. Verde quirúrgico como único acento. */
:root{
  --paper:#F4F6F5; --sheet:#FFFFFF; --ink:#17212B; --muted:#56636F; --rule:#D5DCDE;
  --seal:#0E5C5F; --seal-soft:#DDEDEC; --band:#17212B; --band-ink:#EEF2F3;
  --verde:#2F7D4F; --verde-bg:#E3F1E8; --ambar:#9A6A00; --ambar-bg:#FBF0D2; --rojo:#B3261E; --rojo-bg:#F9E1DF;
  --display:"Literata", Georgia, "Times New Roman", serif;
  --body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --s1:.8125rem; --s2:.9375rem; --s3:1.0625rem; --s4:1.375rem; --s5:1.875rem; --s6:clamp(2.1rem, 1.4rem + 3vw, 3.4rem);
  --wrap:1160px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#11181F; --sheet:#18222B; --ink:#E7ECEE; --muted:#9BA8B2; --rule:#2C3A45;
  --seal:#6CC3C4; --seal-soft:#173537; --band:#0B1116; --band-ink:#E7ECEE;
  --verde:#7CCB98; --verde-bg:#183324; --ambar:#E6B94D; --ambar-bg:#3A2E10; --rojo:#F08A82; --rojo-bg:#3D1C1A; color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#11181F; --sheet:#18222B; --ink:#E7ECEE; --muted:#9BA8B2; --rule:#2C3A45;
  --seal:#6CC3C4; --seal-soft:#173537; --band:#0B1116; --band-ink:#E7ECEE;
  --verde:#7CCB98; --verde-bg:#183324; --ambar:#E6B94D; --ambar-bg:#3A2E10; --rojo:#F08A82; --rojo-bg:#3D1C1A; color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--s3)/1.62 var(--body);-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--sheet)}
a{color:var(--seal);text-underline-offset:3px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--seal);outline-offset:2px}
h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.15;text-wrap:balance;margin:0;letter-spacing:-.01em}
h1{font-size:var(--s6)} h2{font-size:var(--s5)} h3{font-size:var(--s4);font-weight:500}
p{margin:0} ul{margin:0;padding-left:1.2em}
.mono,code,.cite{font-family:var(--mono);font-size:.86em;font-variant-numeric:tabular-nums}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.eyebrow{font:500 var(--s1)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--seal)}
.lead{font-size:var(--s4);line-height:1.5;color:var(--muted);max-width:62ch}
.prose{max-width:68ch;display:grid;gap:1rem}
.muted{color:var(--muted)}

/* Cabecera */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:9;background:var(--sheet);border-bottom:1px solid var(--rule)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.7rem}
.brand{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);line-height:1.15}
.brand b{font:600 1.05rem/1.15 var(--display)}
.brand span{font:400 var(--s1)/1.2 var(--mono);color:var(--muted);letter-spacing:.04em}
.nav{display:flex;align-items:center;gap:1.2rem;font-size:var(--s2)}
.nav a{color:var(--ink);text-decoration:none}
.nav a:hover{color:var(--seal)}
.nav .call{background:var(--seal);color:var(--sheet);padding:.5rem .9rem;border-radius:3px;font-weight:500}
:root[data-theme="dark"] .nav .call{color:#1b0f12}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;border:1px solid var(--rule);padding:.45rem .8rem;border-radius:3px;font-size:var(--s2)}
.menu summary::-webkit-details-marker{display:none}
.menu .panel{position:absolute;right:0;top:calc(100% + 8px);background:var(--sheet);border:1px solid var(--rule);padding:.6rem;display:grid;gap:.2rem;min-width:min(290px,86vw);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.menu .panel a{padding:.45rem .5rem;color:var(--ink);text-decoration:none;font-size:var(--s2)}
@media (max-width:900px){.nav .hide-m{display:none}.menu{display:block}}

/* Hero portada */
.hero{background:var(--sheet);border-bottom:1px solid var(--rule)}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;padding-block:3.5rem 3rem;align-items:center}
.hero-copy{display:grid;gap:1.3rem;min-width:0}
.hero h1 em{font-style:italic;color:var(--seal);font-weight:500}
.ctas{display:flex;flex-wrap:wrap;gap:.7rem}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.1rem;border-radius:3px;font:500 var(--s2)/1 var(--body);text-decoration:none;border:1px solid var(--ink);color:var(--ink);background:transparent;cursor:pointer}
.btn.primary{background:var(--ink);color:var(--sheet)}
.btn:hover{border-color:var(--seal);color:var(--seal)}
.btn.primary:hover{background:var(--seal);color:var(--sheet)}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr;gap:2rem;padding-block:2.2rem}}

/* Gemelo digital */
.gemelo{border:1px solid var(--rule);background:var(--paper);min-width:0}
.gemelo header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid var(--rule);flex-wrap:wrap}
.gemelo header b{font:600 var(--s2)/1.2 var(--display)}
.gemelo header span{font:400 var(--s1)/1.2 var(--mono);color:var(--muted)}
.scroll{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:var(--s2)}
th{font:500 var(--s1)/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-align:left;padding:.6rem 1rem;border-bottom:1px solid var(--rule)}
td{padding:.65rem 1rem;border-bottom:1px solid var(--rule);vertical-align:top}
tr:last-child td{border-bottom:0}
.sem{display:inline-block;font:500 var(--s1)/1 var(--mono);padding:.3rem .5rem;border-radius:2px;white-space:nowrap}
.sem.v{background:var(--verde-bg);color:var(--verde)} .sem.a{background:var(--ambar-bg);color:var(--ambar)} .sem.r{background:var(--rojo-bg);color:var(--rojo)}
.gemelo footer{padding:.7rem 1rem;border-top:1px solid var(--rule);font-size:var(--s1);color:var(--muted)}

/* Secciones */
.sec{padding-block:4rem;border-bottom:1px solid var(--rule)}
.sec.alt{background:var(--sheet)}
.sec-head{display:grid;gap:.7rem;margin-bottom:2.2rem;max-width:70ch}
.grid{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule)}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))} .g3{grid-template-columns:repeat(3,minmax(0,1fr))} .g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cell{background:var(--sheet);padding:1.4rem;display:grid;gap:.55rem;align-content:start;min-width:0}
.sec.alt .cell{background:var(--paper)}
.cell h3{font-size:1.15rem;font-weight:600}
.cell p{font-size:var(--s2);color:var(--muted)}
.cell .tag{font:500 var(--s1)/1.2 var(--mono);color:var(--seal)}
a.cell{text-decoration:none;color:var(--ink);transition:background .15s}
a.cell:hover{background:var(--seal-soft)}
a.cell .go{font:500 var(--s1)/1 var(--mono);color:var(--seal);margin-top:.3rem}
@media (max-width:1000px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.g2,.g3,.g4{grid-template-columns:1fr}}

.levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.level{border-top:3px solid var(--ink);padding-top:1rem;display:grid;gap:.5rem}
.level:nth-child(3){border-top-color:var(--seal)}
.level .n{font:500 var(--s1)/1 var(--mono);color:var(--muted)}
.level p{font-size:var(--s2);color:var(--muted)}
@media (max-width:820px){.levels{grid-template-columns:1fr}}

.paths{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.path{background:var(--sheet);border:1px solid var(--rule);padding:1.6rem;display:grid;gap:.8rem;align-content:start}
.path.dark{background:var(--band);color:var(--band-ink);border-color:var(--band)}
.path.dark p,.path.dark li{color:var(--band-ink);opacity:.86}
.path.dark .btn{border-color:var(--band-ink);color:var(--band-ink)}
.path ul{display:grid;gap:.35rem;font-size:var(--s2)}
@media (max-width:760px){.paths{grid-template-columns:1fr}}

.news{display:grid;gap:0;border-top:1px solid var(--rule)}
.news li{list-style:none;display:grid;grid-template-columns:9.5rem 1fr;gap:1.2rem;padding:1rem 0;border-bottom:1px solid var(--rule)}
.news{padding:0}
.news time{font:500 var(--s1)/1.5 var(--mono);color:var(--seal)}
.news p{font-size:var(--s2)}
@media (max-width:600px){.news li{grid-template-columns:1fr;gap:.2rem}}

.band{background:var(--band);color:var(--band-ink)}
.band .wrap{padding-block:3rem;display:grid;grid-template-columns:1.2fr .8fr;gap:2.5rem;align-items:center}
.band .eyebrow{color:var(--band-ink);opacity:.7}
.band p{opacity:.88}
.band dl{display:grid;grid-template-columns:auto 1fr;gap:.45rem 1.2rem;margin:0;font-size:var(--s2)}
.band dt{font:500 var(--s1)/1.6 var(--mono);opacity:.7;text-transform:uppercase;letter-spacing:.05em}
.band dd{margin:0}
@media (max-width:820px){.band .wrap{grid-template-columns:1fr}}

.chips{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;list-style:none}
.chips li{border:1px solid var(--rule);padding:.35rem .7rem;font-size:var(--s2);background:var(--sheet)}

/* FAQ */
.faq{display:grid;border-top:1px solid var(--rule);max-width:860px}
.faq details{border-bottom:1px solid var(--rule)}
.faq summary{cursor:pointer;padding:1.1rem 2rem 1.1rem 0;font:600 1.08rem/1.35 var(--display);list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:.2rem;top:1rem;font:400 1.4rem/1 var(--mono);color:var(--seal)}
.faq details[open] summary::after{content:"–"}
.faq .ans{padding:0 0 1.2rem;color:var(--muted);max-width:70ch;display:grid;gap:.6rem}

/* Página de delito */
.crumbs{font:400 var(--s1)/1.4 var(--mono);color:var(--muted);padding-top:1.4rem}
.crumbs a{color:var(--muted)}
.case-head{background:var(--sheet);border-bottom:1px solid var(--rule)}
.case-head .wrap{display:grid;gap:1.1rem;padding-block:1rem 2.8rem}
.answer{border-left:3px solid var(--seal);padding:.2rem 0 .2rem 1.1rem;font-size:var(--s3);max-width:72ch}
.case{display:grid;grid-template-columns:280px minmax(0,1fr);gap:3rem;padding-block:3rem}
.rail{position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px);align-self:start;display:grid;gap:1.4rem}
.ficha{border:1px solid var(--rule);background:var(--sheet)}
.ficha h2{font:500 var(--s1)/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:.8rem 1rem;border-bottom:1px solid var(--rule);color:var(--seal)}
.ficha dl{margin:0;display:grid}
.ficha div{padding:.7rem 1rem;border-bottom:1px solid var(--rule);display:grid;gap:.15rem}
.ficha div:last-child{border-bottom:0}
.ficha dt{font:500 var(--s1)/1.3 var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.ficha dd{margin:0;font-size:var(--s2)}
.toc{display:grid;gap:.2rem;font-size:var(--s2)}
.toc a{color:var(--muted);text-decoration:none;padding:.2rem 0}
.toc a:hover{color:var(--seal)}
.body{display:grid;gap:3.2rem;min-width:0}
.block{display:grid;gap:1.1rem;scroll-margin-top:96px}
.block h2{font-size:1.65rem}
.situ{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.situ div{background:var(--sheet);padding:1.1rem;display:grid;gap:.4rem;align-content:start}
.situ b{font:600 1rem/1.3 var(--display)}
.situ p{font-size:var(--s2);color:var(--muted)}
@media (max-width:760px){.situ{grid-template-columns:1fr}}
.tipos{display:grid;border-top:1px solid var(--rule)}
.tipos div{display:grid;grid-template-columns:8rem 1fr;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--rule)}
.tipos .cite{color:var(--seal)}
.tipos p{font-size:var(--s2)}
.tipos b{display:block;font-weight:600}
@media (max-width:560px){.tipos div{grid-template-columns:1fr;gap:.2rem}}
.two{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.two > div{border:1px solid var(--rule);background:var(--sheet);padding:1.2rem;display:grid;gap:.6rem;align-content:start}
.two h3{font-size:1.1rem;font-weight:600}
.two ul{font-size:var(--s2);display:grid;gap:.4rem}
@media (max-width:760px){.two{grid-template-columns:1fr}}
.docs{columns:2;column-gap:2rem;font-size:var(--s2)}
.docs li{break-inside:avoid;margin-bottom:.4rem}
@media (max-width:560px){.docs{columns:1}}
.sign{border-top:1px solid var(--rule);padding-top:1.2rem;font-size:var(--s2);color:var(--muted);display:grid;gap:.2rem}
.sign b{color:var(--ink)}
.related{display:flex;flex-wrap:wrap;gap:.6rem}
.related a{border:1px solid var(--rule);background:var(--sheet);padding:.55rem .85rem;text-decoration:none;color:var(--ink);font-size:var(--s2)}
.related a:hover{border-color:var(--seal);color:var(--seal)}
.callout{background:var(--seal-soft);padding:1.2rem 1.3rem;display:grid;gap:.6rem}
@media (max-width:900px){.case{grid-template-columns:1fr;gap:2rem}.rail{position:static}.toc{display:none}}

/* Contacto */
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem}
.contact form{display:grid;gap:1rem;background:var(--sheet);border:1px solid var(--rule);padding:1.6rem}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
label{display:grid;gap:.35rem;font-size:var(--s2);font-weight:500}
input,select,textarea{font:inherit;font-size:var(--s2);padding:.65rem .75rem;border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:2px;width:100%}
.check{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;color:var(--muted);font-size:var(--s1)}
.check input{width:auto;margin-top:.2rem}
.formmsg{font-size:var(--s2);color:var(--verde)}
.secret{font:500 var(--s1)/1.5 var(--mono);color:var(--muted)}
@media (max-width:820px){.contact{grid-template-columns:1fr}.row2{grid-template-columns:1fr}}

/* Pie */
.foot{background:var(--band);color:var(--band-ink);font-size:var(--s2)}
.foot .wrap{padding-block:2.6rem 2rem;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem}
.foot a{color:var(--band-ink);opacity:.85;text-decoration:none}
.foot a:hover{opacity:1;text-decoration:underline}
.foot h2{font:500 var(--s1)/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.65;margin-bottom:.8rem}
.foot ul{list-style:none;padding:0;display:grid;gap:.35rem}
.foot .legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:1.2rem;font-size:var(--s1);opacity:.7}
@media (max-width:760px){.foot .wrap{grid-template-columns:1fr}}

.mobilebar{display:none}
@media (max-width:700px){
  .mobilebar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:9;background:var(--sheet);border-top:1px solid var(--rule);padding:.6rem max(16px,env(safe-area-inset-right,0px)) calc(.6rem + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));gap:.6rem}
  .mobilebar a{justify-content:center}
  body{padding-bottom:70px}
}
.chips a{color:var(--ink);text-decoration:none}
.chips li:has(a):hover{border-color:var(--seal)}
.chips li:has(a):hover a{color:var(--seal)}
.local{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.local div{background:var(--sheet);padding:1.1rem;display:grid;gap:.4rem;align-content:start}
.local b{font:600 1rem/1.3 var(--display)}
.local p{font-size:var(--s2);color:var(--muted)}
@media (max-width:760px){.local{grid-template-columns:1fr}}

.foto-abogado{display:block;margin-bottom:1rem}.foto-abogado img{width:100%;height:auto;border-radius:8px;border:1px solid var(--rule);display:block}
.band-foto{width:112px;height:112px;border-radius:50%;object-fit:cover;border:3px solid var(--band-ink);margin-bottom:1rem}
.lqcard{display:flex;gap:1rem;align-items:center;border:1px solid var(--rule);border-radius:8px;padding:.9rem 1rem;background:var(--sheet);text-decoration:none;color:var(--ink);max-width:62ch}
.lqcard img{flex:none}.lqcard b{display:block;font-family:var(--display);font-size:var(--s4)}
.foot .lq{display:inline-flex;align-items:center;gap:.4rem}.foot .lq img{border-radius:3px}
.buscador{display:grid;gap:.4rem;margin-bottom:1rem}.buscador label{font-weight:600}
.buscador input{font:inherit;padding:.7rem .9rem;border:1px solid var(--rule);border-radius:6px;background:var(--sheet);color:var(--ink);width:100%}
[hidden]{display:none!important}
p.prose{display:block}
@media (max-width:560px){.top .call .num{display:none}}
/* Formulario y páginas legales */
.infopriv{border:1px solid var(--rule);background:var(--paper);padding:.8rem 1rem;border-radius:6px;font-size:var(--s1);line-height:1.5}
.infopriv b{display:block;margin-bottom:.4rem;font-size:var(--s2)}
.infopriv dl{display:grid;grid-template-columns:8.5rem 1fr;gap:.25rem .8rem;margin:0}
.infopriv dt{font-weight:600;color:var(--muted)}.infopriv dd{margin:0}
@media (max-width:560px){.infopriv dl{grid-template-columns:1fr}.infopriv dt{margin-top:.3rem}}
.legaltext th{width:32%;text-align:left;vertical-align:top}
.pendiente{background:var(--ambar-bg);color:var(--ambar);padding:0 .25em;border-radius:3px;font-weight:600}
/* Artículos de fondo */
.keypoints{margin-top:1.2rem;border:1px solid var(--rule);border-left:4px solid var(--seal);background:var(--sheet);padding:1rem 1.2rem;border-radius:0 6px 6px 0;max-width:62rem}
.keypoints b{font:500 var(--s1)/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--seal)}
.keypoints ul{margin-top:.5rem;display:grid;gap:.35rem;font-size:var(--s2)}
.art-h3{font-size:var(--s4);margin-top:.6rem}
.art-list{display:grid;gap:.4rem;font-size:var(--s3);max-width:68ch}
.art-ej{border:1px dashed var(--rule);background:var(--sheet);padding:.9rem 1.1rem;border-radius:6px;max-width:68ch}
.art-ej b{font:500 var(--s1)/1.4 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.art-ej p{margin-top:.3rem}
.fuentes{font-size:var(--s2)}
.block > .prose + .prose{margin-top:.2rem}

/* Página de captación */
.lp-top .brand{cursor:default}
@media (max-width:560px){.lp-top .num{display:none}}
.lp-hero .wrap{align-items:center}
.lp-abog{border:1px solid var(--rule);background:var(--sheet);border-radius:8px;padding:1.2rem;display:grid;gap:1rem;grid-template-columns:120px 1fr;align-items:start}
.lp-abog img{width:120px;height:120px;border-radius:50%;object-fit:cover}
.lp-abog dl{display:grid;gap:.5rem;margin:0}.lp-abog dt{font:500 var(--s1)/1.3 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.lp-abog dd{margin:0}
@media (max-width:560px){.lp-abog{grid-template-columns:1fr}}
.lp-casos{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.5rem 1.5rem;list-style:none;padding:0;margin:0}
.lp-casos li{padding:.55rem 0 .55rem 1.4rem;border-bottom:1px solid var(--rule);position:relative}
.lp-casos li::before{content:"";position:absolute;left:0;top:1.05rem;width:.55rem;height:.55rem;border-radius:2px;background:var(--seal)}
.lp-pasos{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))!important}
.lp-foot{padding-bottom:5rem}
.ckbar{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:60;max-width:44rem;margin-inline:auto;background:var(--sheet);color:var(--ink);border:1px solid var(--rule);border-radius:8px;padding:1rem 1.1rem;box-shadow:0 8px 30px rgba(0,0,0,.18);display:grid;gap:.8rem;font-size:var(--s2)}
.ckbtns{display:flex;gap:.6rem;justify-content:flex-end;flex-wrap:wrap}.ckbtns .btn{min-width:8rem;justify-content:center}
@media (max-width:760px){.ckbar{bottom:4.6rem}}

/* Veredicto previsto */
.vp-sim{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1.2rem;align-items:start}
@media (max-width:900px){.vp-sim{grid-template-columns:1fr}}
.vp-in,.vp-out{border:1px solid var(--rule);background:var(--sheet);border-radius:8px;min-width:0}
.vp-in header,.vp-out header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.8rem 1rem;border-bottom:1px solid var(--rule)}
.vp-in header b,.vp-out header b{font:600 var(--s3)/1.2 var(--display)}
.vp-in header span,.vp-out header span{font:400 var(--s1)/1.3 var(--mono);color:var(--muted)}
.vp-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem 1rem;align-items:center;padding:.8rem 1rem;border-bottom:1px solid var(--rule)}
.vp-row b{display:block}.vp-row span{font-size:var(--s1);color:var(--muted)}
@media (max-width:560px){.vp-row{grid-template-columns:1fr}}
.vp-opts{display:flex;gap:.35rem}
.vp-opts label{cursor:pointer;position:relative}
.vp-opts input{position:absolute;opacity:0;width:1px;height:1px}
.vp-opts .sem{opacity:.38;border:2px solid transparent;padding:.4rem .55rem}
.vp-opts input:checked + .sem{opacity:1;border-color:currentColor}
.vp-opts input:focus-visible + .sem{outline:2px solid var(--seal);outline-offset:2px}
.vp-leyenda{padding:.8rem 1rem;font-size:var(--s1);color:var(--muted);line-height:1.8}
.vp-out{padding-bottom:1rem}.vp-out > p,.vp-out > ul,.vp-out > div{margin-inline:1rem}
.vp-eti{font:500 var(--s1)/1.3 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:1rem}
.vp-ver{font:600 var(--s5)/1.2 var(--display);margin-top:.3rem}
.vp-meter{height:8px;background:var(--rule);border-radius:4px;overflow:hidden;margin-top:.6rem}
.vp-meter i{display:block;height:100%;border-radius:4px;transition:width .3s}
.vp-meter i.v{background:var(--verde)}.vp-meter i.a{background:var(--ambar)}.vp-meter i.r{background:var(--rojo)}
.vp-sol{font-size:var(--s1);color:var(--muted);margin-top:.35rem}
.vp-esc{list-style:none;padding:0;display:grid;gap:.5rem;margin-top:.4rem;font-size:var(--s2)}
.vp-esc .sem{margin-right:.4rem}
.vp-rec{font-weight:600}
.vp-aviso{margin-top:1rem;font-size:var(--s1)}
.vp-tz{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;align-items:center}
@media (max-width:900px){.vp-tz{grid-template-columns:1fr}}
.vp-mini-b{padding:0 1rem 1rem}
.vp-tz > div:first-child{display:grid;gap:.8rem;align-content:center}
