
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,'SF Pro Text','Helvetica Neue',Helvetica,Arial,sans-serif;background:#fff;color:#1d1d1f;line-height:1.47;-webkit-font-smoothing:antialiased;letter-spacing:-.01em}
a{color:inherit;text-decoration:none}
::selection{background:#0071e3;color:#fff}
body.lock{overflow:hidden}
header{background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.08);position:sticky;top:0;z-index:9000}
.hin{max-width:1180px;margin:0 auto;padding:0 26px;height:70px;display:flex;align-items:center;gap:28px}
.burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;background:none;border:0;cursor:pointer;margin-left:-9px;flex-shrink:0}
.burger span{display:block;width:21px;height:1.8px;background:#1d1d1f;border-radius:2px;transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .2s;margin:0 auto}
.burger.open span:nth-child(1){transform:translateY(6.8px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-6.8px) rotate(-45deg)}
.lg{display:flex;align-items:center;gap:11px;flex-shrink:0}
.lgt{font-size:1.42rem;font-weight:600;letter-spacing:-.03em}
.hnav{display:flex;gap:30px;font-size:.86rem;margin-left:10px}
.hnav a{opacity:.8;transition:opacity .2s}.hnav a:hover{opacity:1}
.upd{margin-left:auto;font-size:.76rem;color:#86868b;white-space:nowrap}
.scrim{display:none;position:fixed;inset:0;background:rgba(0,0,0,.32);z-index:9400;opacity:0;transition:opacity .3s;backdrop-filter:blur(2px)}
.scrim.on{display:block;opacity:1}
.drawer{position:fixed;top:0;left:0;bottom:0;width:min(85vw,320px);background:#fff;z-index:9500;transform:translateX(-100%);transition:transform .36s cubic-bezier(.32,.72,0,1);overflow-y:auto;box-shadow:2px 0 26px rgba(0,0,0,.13)}
.drawer.on{transform:translateX(0)}
.dhead{display:flex;align-items:center;gap:11px;padding:22px 24px 20px;border-bottom:1px solid #e8e8ed;position:sticky;top:0;background:#fff}
.dbody{padding:14px 14px 44px}
.dttl{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#86868b;padding:18px 12px 8px}
.drawer a{display:flex;align-items:center;justify-content:space-between;padding:12px;font-size:.97rem;border-radius:11px;transition:background .16s}
.drawer a:active{background:#f0f0f3}
.drawer a .n{font-size:.8rem;color:#86868b;font-variant-numeric:tabular-nums}
.dsep{height:1px;background:#e8e8ed;margin:10px 12px}
.shell{max-width:1180px;margin:0 auto;padding:0 26px;display:grid;grid-template-columns:196px 1fr;gap:52px;align-items:start}
.side{position:sticky;top:94px;max-height:calc(100vh - 118px);overflow-y:auto;padding:40px 0}
.side::-webkit-scrollbar{width:0}
.sttl{font-size:.69rem;font-weight:600;text-transform:uppercase;letter-spacing:.075em;color:#86868b;margin:26px 0 10px}
.sttl:first-child{margin-top:0}
.side a{display:block;padding:6px 0;font-size:.86rem;opacity:.8;transition:.16s}
.side a:hover{opacity:1;color:#0071e3}
main{min-width:0;padding:40px 0 90px}
h1{font-size:2.8rem;font-weight:600;letter-spacing:-.032em;line-height:1.07;margin-bottom:12px}
.sub{color:#86868b;font-size:1.08rem;margin-bottom:44px;max-width:640px}
h2{font-size:1.5rem;font-weight:600;letter-spacing:-.024em;margin:64px 0 22px;display:flex;align-items:baseline;gap:14px}
h2 .ver{margin-left:auto;font-size:.86rem;font-weight:400;color:#0071e3;white-space:nowrap}
h2 .ver:hover{text-decoration:underline}
/* HERO PRECIOS */
.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;background:#d2d2d7;border:1px solid #d2d2d7;border-radius:18px;overflow:hidden;margin-bottom:16px}
.hbox{background:#fff;padding:26px 24px}
.hbox .lbl{font-size:.78rem;color:#86868b;text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:9px}
.hbox .val{font-size:2.5rem;font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1}
.hbox .cap{font-size:.8rem;color:#86868b;margin-top:7px}
.hbox.reg .val{color:#16a34a}.hbox.pre .val{color:#dc2626}.hbox.die .val{color:#1d1d1f}
.nota{font-size:.82rem;color:#86868b;margin-bottom:44px}
/* BUSCADOR */
.finder{background:#f5f5f7;border-radius:18px;padding:26px;margin-bottom:20px}
.finder h3{font-size:1.12rem;font-weight:600;margin-bottom:14px}
#buscador{width:100%;padding:14px 18px;border-radius:12px;border:1px solid #d2d2d7;font-size:16px;font-family:inherit;background:#fff}
#buscador:focus{outline:none;border-color:#0071e3;box-shadow:0 0 0 3px rgba(0,113,227,.14)}
#resultados{margin-top:14px}
/* TABLA */
.tabla{width:100%;border-collapse:collapse;font-size:.93rem;margin-bottom:14px}
.tabla thead th{text-align:left;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:#86868b;font-weight:600;padding:0 14px 11px 0;border-bottom:1px solid #d2d2d7}
.tabla td{padding:15px 14px 15px 0;border-bottom:1px solid #ececee;vertical-align:top}
.tabla tr:hover td{background:#fafafa}
.tabla .nm{font-weight:500;max-width:340px}
.tabla .nm small{display:block;color:#86868b;font-weight:400;font-size:.79rem;margin-top:2px}
.tabla .pr{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}
.tabla .pr.g{color:#16a34a}
.rank{color:#86868b;font-variant-numeric:tabular-nums;width:34px}
.badge{display:inline-block;background:#dcfce7;color:#15803d;font-size:.7rem;font-weight:700;padding:3px 9px;border-radius:980px;margin-left:7px;vertical-align:middle}
/* GRID ESTADOS */
.chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1px;background:#d2d2d7;border:1px solid #d2d2d7;border-radius:14px;overflow:hidden;margin-bottom:30px}
.chips a{background:#fff;padding:19px 22px;font-size:.95rem;display:flex;align-items:center;justify-content:space-between;transition:background .16s}
.chips a:hover{background:#f5f5f7;color:#0071e3}
.chips .nm2{color:#86868b;font-size:.83rem;font-variant-numeric:tabular-nums}
/* FICHA */
.dt{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:0;margin:30px 0;border-top:1px solid #d2d2d7}
.dt>div{padding:18px 18px 18px 0;border-bottom:1px solid #d2d2d7;font-size:1.02rem;font-weight:500;font-variant-numeric:tabular-nums}
.dt b{display:block;color:#86868b;font-size:.75rem;font-weight:400;margin-bottom:5px}
.card{border-top:1px solid #d2d2d7;padding:36px 0 4px;margin-top:18px}
.card h3{font-size:1.26rem;font-weight:600;margin-bottom:13px;letter-spacing:-.02em}
.card p{color:#1d1d1f;font-size:1rem;max-width:730px;line-height:1.62}
.btn{display:inline-block;background:#0071e3;color:#fff;padding:12px 25px;border-radius:980px;font-size:.91rem;margin:8px 9px 8px 0;transition:background .2s}
.btn:hover{background:#0077ed}
.btn.a{background:transparent;color:#0071e3;border:1px solid #0071e3}
.pg{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin:60px 0 8px}
.pg a,.pg span{min-width:40px;text-align:center;padding:9px 13px;border-radius:9px;font-size:.87rem;transition:.16s;font-variant-numeric:tabular-nums}
.pg a:hover{background:#f5f5f7}
.pg .on{background:#1d1d1f;color:#fff;font-weight:500}
.crumb{font-size:.8rem;color:#86868b;margin-bottom:24px}
.crumb a:hover{color:#0071e3}
footer{background:#f5f5f7;border-top:1px solid #d2d2d7;margin-top:36px;padding:46px 26px;color:#86868b;font-size:.77rem;line-height:1.7}
footer .fin{max-width:1180px;margin:0 auto}
/* GEO */
.geo{background:linear-gradient(135deg,#0071e3,#00a2ff);border-radius:20px;padding:30px 28px;margin-bottom:18px;color:#fff}
.geo h3{font-size:1.32rem;font-weight:600;letter-spacing:-.02em;margin-bottom:7px}
.geo p{font-size:.94rem;opacity:.92;margin-bottom:18px;max-width:460px}
.geob{display:inline-flex;align-items:center;gap:9px;background:#fff;color:#0071e3;border:0;padding:14px 28px;border-radius:980px;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .16s,box-shadow .2s;box-shadow:0 4px 14px rgba(0,0,0,.14)}
.geob:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.2)}
.geob:active{transform:translateY(0)}
.geob:disabled{opacity:.7;cursor:wait}
.geost{margin-top:14px;font-size:.88rem;opacity:.95;min-height:1.2em}
.geores{margin-top:22px}
.dist{display:inline-block;background:#eef6ff;color:#0071e3;font-size:.74rem;font-weight:700;padding:3px 9px;border-radius:980px;margin-left:7px;vertical-align:middle;white-space:nowrap}
.mejor{background:#dcfce7;color:#15803d}
.legal{max-width:760px}
.legal h2{font-size:1.34rem;margin:40px 0 14px}
.legal h3{font-size:1.06rem;font-weight:600;margin:26px 0 9px}
.legal p,.legal li{font-size:1rem;line-height:1.68;color:#1d1d1f;margin-bottom:13px}
.legal ul{margin:0 0 16px 22px}
.legal .fecha{color:#86868b;font-size:.86rem;margin-bottom:34px}
.legal a{color:#0071e3}
.legal a:hover{text-decoration:underline}
.fnav{margin-top:14px;display:flex;gap:20px;flex-wrap:wrap;justify-content:center}
.fnav a{color:#1d1d1f;opacity:.75;transition:opacity .2s}
.fnav a:hover{opacity:1;color:#0071e3}
#ck{position:fixed;left:16px;right:16px;bottom:16px;max-width:520px;margin:0 auto;background:rgba(255,255,255,.97);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border:1px solid rgba(0,0,0,.1);border-radius:18px;padding:20px 22px;box-shadow:0 8px 40px rgba(0,0,0,.16);z-index:9800;display:none}
#ck.on{display:block;animation:ckup .34s cubic-bezier(.32,.72,0,1)}
@keyframes ckup{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
#ck p{font-size:.87rem;line-height:1.55;color:#1d1d1f;margin-bottom:15px}
#ck a{color:#0071e3}
.ckb{display:flex;gap:9px;flex-wrap:wrap}
.ckb button{flex:1;min-width:120px;padding:10px 18px;border-radius:980px;font-size:.88rem;font-family:inherit;cursor:pointer;border:1px solid #0071e3;transition:.16s}
#ckSi{background:#0071e3;color:#fff}
#ckSi:hover{background:#0077ed}
#ckNo{background:transparent;color:#0071e3}
#ckNo:hover{background:rgba(0,113,227,.06)}
@media(max-width:1000px){.shell{grid-template-columns:1fr;gap:0}.side{display:none}.burger{display:flex}.hnav{display:none}}
@media(max-width:734px){
 .hin{height:60px;gap:12px;padding:0 16px}.lgt{font-size:1.2rem}.upd{font-size:.7rem}
 .shell{padding:0 16px}main{padding:26px 0 66px}
 h1{font-size:1.95rem}.sub{font-size:.98rem;margin-bottom:30px}
 h2{font-size:1.28rem;margin:46px 0 18px}
 .hbox{padding:20px 18px}.hbox .val{font-size:2rem}
 .tabla{font-size:.87rem}.tabla td{padding:13px 10px 13px 0}.tabla .nm{max-width:190px}
 .chips{grid-template-columns:1fr}
 .finder{padding:20px}
}