/* Capa visual "pro": se carga después de la hoja base y la refina */
:root{--bg:#f4f5f7;--line:#e4e7ec;--txt:#14181f;--mut:#566173;--blue:#0a66c2;--blue2:#084d94;--r:16px;--sh:0 1px 2px rgba(16,24,40,.05),0 0 0 1px rgba(16,24,40,.06);--sh2:0 18px 40px -12px rgba(10,60,120,.28),0 0 0 1px rgba(10,102,194,.28)}
body{background:radial-gradient(1100px 520px at 85% -8%,rgba(10,102,194,.10),transparent 60%),radial-gradient(900px 480px at -10% 0,rgba(5,118,66,.07),transparent 55%),var(--bg);font-feature-settings:"cv11","ss01";letter-spacing:-.005em}
.top{border-bottom:1px solid rgba(16,24,40,.07);box-shadow:0 1px 0 rgba(255,255,255,.7) inset}
.top .in{height:60px}
.logo i{border-radius:11px;background:linear-gradient(140deg,#084d94,#0a66c2 45%,#3b9cf5)}
.nav a{border-radius:10px}
.box{border-radius:var(--r);box-shadow:var(--sh)}
/* hero */
.hero{border-radius:20px;padding:34px 32px 30px;background:linear-gradient(125deg,#05245a 0%,#0a4fa8 52%,#2f8cf0 100%);box-shadow:0 24px 50px -22px rgba(5,36,90,.65)}
.hero:before{opacity:.35}
.hero h1{font-size:30px;line-height:1.12;letter-spacing:-.8px;max-width:560px}
.hero p{font-size:15.5px;max-width:540px;margin-bottom:22px}
.kp{gap:34px}.kp b{font-size:30px;letter-spacing:-1px}
.hero .grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(120deg,transparent 30%,#000 100%);-webkit-mask-image:linear-gradient(120deg,transparent 30%,#000 100%)}
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.trust div{background:#fff;border-radius:14px;padding:13px 14px;box-shadow:var(--sh);display:flex;gap:11px;align-items:flex-start}
.trust .ti{width:34px;height:34px;border-radius:10px;background:#eaf2fb;color:var(--blue);display:grid;place-items:center;flex:none}
.trust b{display:block;font-size:13.5px}.trust span{font-size:12.5px;color:var(--mut)}
/* barra de herramientas */
#tool{background:#fff;border-radius:14px;box-shadow:var(--sh);padding:12px 14px;margin:6px 0 10px;display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center}
#tool .grp{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#tool label{font-size:12px;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.06em}
.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:700;color:var(--mut);cursor:pointer;transition:all .18s}
.chip:hover{border-color:var(--blue);color:var(--blue)}.chip.on{background:#eaf2fb;border-color:var(--blue);color:var(--blue)}
#tool input[type=range]{accent-color:var(--blue);width:150px}
#tool output{font-weight:800;font-size:13px;min-width:62px;display:inline-block}
.vt{margin-left:auto;display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.vt button{border:0;background:#fff;padding:7px 10px;cursor:pointer;color:var(--mut);display:grid;place-items:center}.vt button.on{background:var(--blue);color:#fff}
/* tarjetas */
#feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#feed.list{grid-template-columns:1fr}
@media(max-width:1280px){#feed{grid-template-columns:1fr}}
.pcard{background:#fff;border-radius:var(--r);box-shadow:var(--sh);display:flex;flex-direction:column;cursor:pointer;position:relative;overflow:hidden;opacity:0;transform:translateY(12px);animation:up .5s cubic-bezier(.2,.8,.3,1) forwards;transition:transform .28s cubic-bezier(.2,.8,.3,1),box-shadow .28s}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--sh2)}
.pcard.dest:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,#f0a30a,#ffd166)}
.pc-head{display:flex;gap:14px;padding:16px 16px 8px}
.tile{width:56px;height:56px;border-radius:14px;flex:none;display:grid;place-items:center;color:#fff;font-weight:800;font-size:19px;letter-spacing:-.5px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),0 8px 18px -8px rgba(0,0,0,.45);text-shadow:0 1px 2px rgba(0,0,0,.25)}
.pc-top{display:flex;gap:6px;align-items:center;margin-bottom:3px;flex-wrap:wrap}
.ext{font-size:11px;font-weight:800;letter-spacing:.05em;background:#0f1722;color:#fff;border-radius:6px;padding:2px 7px}
.badge2{font-size:11px;font-weight:700;border-radius:6px;padding:2px 7px}.b-top{background:#fdf3df;color:#a56a00}.b-ok{background:#e5f4ea;color:#057642}.b-idn{background:#efe9fb;color:#6a3cc2}
.pcard h3{margin:0;font-size:19px;letter-spacing:-.4px;word-break:break-all;line-height:1.2}
.pcard p{margin:6px 16px 10px;color:#3c4756;font-size:13.8px;flex:1}
.chips{display:flex;gap:6px;flex-wrap:wrap;padding:0 16px 12px}
.chips span{background:#f1f4f8;color:#4a5668;border-radius:8px;padding:3px 9px;font-size:12px;font-weight:600}
.pc-foot{display:flex;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid var(--line);background:linear-gradient(90deg,#f7f9fc,#fff)}
.pc-price small{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--mut);font-weight:700}
.pc-price b{font-size:23px;letter-spacing:-.8px}
.pc-btns{margin-left:auto;display:flex;gap:6px}
.ib{width:40px;height:40px;border-radius:11px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;color:var(--mut);cursor:pointer;transition:all .18s}
.ib:hover{transform:translateY(-2px);box-shadow:0 8px 16px -8px rgba(0,0,0,.35)}
.ib.wa{background:#128c4a;border-color:#128c4a;color:#fff}.ib.em{color:var(--blue)}.ib.sv.on{color:var(--blue);background:#eaf2fb;border-color:var(--blue)}.ib.sv.on svg{fill:var(--blue)}
#feed.list .pcard{flex-direction:row;align-items:stretch}#feed.list .pc-head{flex:1.2}#feed.list p{flex:1;margin:16px 0}#feed.list .chips{display:none}#feed.list .pc-foot{border-top:0;border-left:1px solid var(--line);min-width:230px}
/* sección "cómo funciona" y FAQ */
.pro-sec{max-width:1180px;margin:34px auto 0;padding:0 16px}
.pro-sec h2{font-size:24px;letter-spacing:-.6px;margin:0 0 4px}.pro-sec>p{color:var(--mut);margin:0 0 16px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.step{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:18px}
.step i{font-style:normal;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#0a66c2,#3b9cf5);color:#fff;font-weight:800;display:grid;place-items:center;margin-bottom:10px}
.step b{display:block;margin-bottom:4px}.step span{color:var(--mut);font-size:13px}
.faq{background:#fff;border-radius:var(--r);box-shadow:var(--sh);overflow:hidden}
.faq details{border-bottom:1px solid var(--line);padding:14px 18px}.faq details:last-child{border:0}
.faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:10px}.faq summary:after{content:"+";font-size:20px;color:var(--blue);line-height:1}
.faq details[open] summary:after{content:"–"}.faq details p{margin:8px 0 0;color:#3c4756}
.foot{max-width:none;background:#0b1220;color:#a9b4c6;margin:44px 0 0;padding:38px 16px 30px;text-align:left}
.foot .fi{max-width:1180px;margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:26px}
a.step:hover{transform:translateY(-3px);box-shadow:var(--sh2)}
.foot h5{color:#fff;margin:0 0 10px;font-size:13px;letter-spacing:.06em;text-transform:uppercase}.foot a{display:block;margin:6px 0;cursor:pointer}.foot a:hover{color:#fff}
.foot .fl{max-width:1180px;margin:26px auto 0;padding-top:18px;border-top:1px solid #1d2a40;font-size:12px}
/* cajón de detalle */
#dr{position:fixed;inset:0;z-index:70;pointer-events:none}
#dr .ov{position:absolute;inset:0;background:rgba(10,16,26,.5);backdrop-filter:blur(3px);opacity:0;transition:opacity .25s}
#dr .pn2{position:absolute;right:0;top:0;bottom:0;width:min(520px,100%);background:#fff;transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.85,.25,1);overflow:auto;box-shadow:-30px 0 80px rgba(0,0,0,.3)}
#dr.on{pointer-events:auto}#dr.on .ov{opacity:1}#dr.on .pn2{transform:none}
.dh{padding:26px 24px 20px;color:#fff;position:relative}
.dh .x{position:absolute;right:14px;top:12px;border:0;background:rgba(255,255,255,.2);color:#fff;width:34px;height:34px;border-radius:10px;cursor:pointer;font-size:18px}
.dh h2{margin:10px 0 4px;font-size:26px;letter-spacing:-.8px;word-break:break-all}.dh .ext{background:rgba(0,0,0,.35)}
.db{padding:20px 24px 30px}
.specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.specs div{background:#f4f6f9;border-radius:12px;padding:10px 12px}.specs small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);font-weight:700}.specs b{font-size:15px}
.dprice{display:flex;align-items:flex-end;justify-content:space-between;margin:6px 0 14px}.dprice b{font-size:34px;letter-spacing:-1.2px}
.big{display:flex;gap:8px;margin-bottom:10px}.big a,.big button{flex:1;text-align:center;padding:13px;border-radius:12px;font-weight:700;font-size:14.5px;border:0;cursor:pointer}
.big .w{background:#128c4a;color:#fff}.big .m{background:#eaf2fb;color:var(--blue)}.big .s{background:#f1f4f8;color:#3c4756}
.db h4{margin:20px 0 8px;font-size:14px}.db ol{margin:0;padding-left:20px;color:#3c4756}.db li{margin:5px 0}
.warn2{background:#fff8e1;border-radius:12px;box-shadow:inset 0 0 0 1px #f0d27a;padding:11px 13px;font-size:12.8px;color:#6f5300;margin-top:16px}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}.trust{grid-template-columns:1fr}.foot .fi{grid-template-columns:1fr 1fr}#feed.list .pcard{flex-direction:column}#feed.list .pc-foot{border-left:0;border-top:1px solid var(--line)}}

/* Panel de usuario y perfiles */
.pn-wrap{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px;align-items:start}
.pn-menu{padding:8px 0;position:sticky;top:80px}
.pm-h{text-align:center;padding:16px 14px 12px;border-bottom:1px solid var(--line);margin-bottom:6px}.pm-h b{display:block;margin-top:8px}.pm-h small{color:var(--mut)}
.av3{width:46px;height:46px;border-radius:50%;color:#fff;display:grid;place-items:center;font-weight:800;margin:0 auto;flex:none}
.pn-menu>a{display:block;padding:10px 18px;color:var(--mut);font-weight:600;cursor:pointer;border-left:3px solid transparent}
.pn-menu>a:hover{background:var(--hover);color:var(--txt)}.pn-menu>a.on{color:var(--blue);border-left-color:var(--blue);background:#eef5fc}
.pt{margin:0 0 14px;font-size:24px;letter-spacing:-.6px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.kpi{background:#fff;border-radius:14px;box-shadow:var(--sh);padding:14px}.kpi small{display:block;color:var(--mut);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.kpi b{font-size:24px;letter-spacing:-.8px}
.mrow{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.mrow:last-child{border:0}
.tile.sm{width:40px;height:40px;font-size:14px;border-radius:11px}
.tb{width:100%;border-collapse:collapse;font-size:13.5px}.tb th{text-align:left;padding:10px 14px;color:var(--mut);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line)}.tb td{padding:10px 14px;border-bottom:1px solid var(--line)}
.hint{color:var(--mut);font-size:12.5px;margin:8px 2px}
.pf-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.pf-grid label{display:block;font-size:12px;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;margin:10px 0 4px}
.pf-grid input,.pf-grid textarea{width:100%;border:1.5px solid #c9ced6;border-radius:10px;padding:10px;font-size:14px}.pf-grid textarea{min-height:90px;resize:vertical}
.pf-grid input:focus,.pf-grid textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,102,194,.12)}
.sw{display:flex;gap:8px}.sw i{width:28px;height:28px;border-radius:50%;cursor:pointer;border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}.sw i.on{box-shadow:0 0 0 2px var(--txt)}
.pcard2 .av{margin-top:-38px}
.seller{display:flex;gap:12px;align-items:center;background:#f4f6f9;border-radius:12px;padding:10px 12px;cursor:pointer;margin-bottom:14px}.seller:hover{background:#eaf2fb}.seller small{display:block;color:var(--blue);font-weight:600}.seller .av3{margin:0}
@media(max-width:900px){.pn-wrap,.pf-grid{grid-template-columns:1fr}.pn-menu{position:static}}
