/* BrokerOS · sistema de diseño compartido (páginas fase 1) */
:root{
  --canvas:#FAFCFB; --ink:#101B26; --slate:#5A6876; --mist:#93A1AE;
  --line:rgba(16,27,38,.08);
  --green:#00A35C; --green2:#00C46A; --deep:#007247; --neon:#00FF88;
  --tint:rgba(0,163,92,.08); --gold:#C99212; --goldbg:rgba(201,146,18,.1);
  --sky:#38BDF8; --sky2:#0369A1; --nova:#F97316; --nova2:#C2410C;
  --navy:#0B1E33; --dark:#0A1118; --dline:rgba(255,255,255,.08); --wa:#25D366; --r:20px;
  --sh:0 2px 4px rgba(16,27,38,.04), 0 16px 40px -18px rgba(16,27,38,.15);
  --sh-lift:0 4px 8px rgba(16,27,38,.05), 0 28px 60px -24px rgba(16,27,38,.22);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--canvas);color:var(--ink);font-family:'Inter',sans-serif;font-size:16px;line-height:1.65;overflow-x:hidden}
::selection{background:var(--neon);color:var(--ink)}
.wrap{max-width:1160px;margin:0 auto;padding:0 26px}
.kicker{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--green);font-weight:600}
h1,h2,h3,h4{font-family:'Space Grotesk';letter-spacing:-.03em;line-height:1.12}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:'Space Grotesk';font-weight:600;font-size:15px;padding:13px 25px;border-radius:13px;text-decoration:none;transition:.18s;cursor:pointer;border:0}
.btn:hover{transform:translateY(-2px)}
.btn-green{background:linear-gradient(135deg,var(--green2),var(--green));color:#fff;box-shadow:0 12px 30px -8px rgba(0,163,92,.45)}
.btn-ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line);box-shadow:var(--sh)}
.btn-dark{background:rgba(255,255,255,.08);color:#fff;border:1px solid var(--dline)}
.reveal{opacity:0;transform:translateY(24px);transition:.7s cubic-bezier(.2,.7,.2,1)}
.reveal.vis{opacity:1;transform:none}
section{padding:90px 0}
.sechead{max-width:660px;margin:0 auto 50px;text-align:center}
.sechead h2{font-size:clamp(28px,3.6vw,42px);font-weight:700;margin:14px 0 14px}
.sechead h2 .hl{color:var(--deep)}
.sechead p{font-size:17px;color:var(--slate)}
nav.bar{position:fixed;top:0;left:0;right:0;z-index:100;backdrop-filter:blur(16px);background:rgba(250,252,251,.87);border-bottom:1px solid var(--line)}
.navin{max-width:1160px;margin:0 auto;padding:14px 26px;display:flex;align-items:center;gap:24px}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink)}
.logo-mark{width:31px;height:31px;border-radius:9px;background:linear-gradient(135deg,var(--neon),var(--green));display:grid;place-items:center;font-family:'Space Grotesk';font-weight:700;color:var(--ink);font-size:15px}
.logo b{font-family:'Space Grotesk';font-size:18px;font-weight:700}
.logo b em{color:var(--green);font-style:normal}
.navlinks{display:flex;gap:20px;margin-left:8px}
.navlinks a{font-size:14px;font-weight:500;color:var(--slate);text-decoration:none}
.navlinks a:hover{color:var(--ink)}
.navlinks a.on{color:var(--deep);font-weight:600}
.navcta{margin-left:auto;display:flex;gap:10px;align-items:center}
.navcta .login{font-size:14px;font-weight:600;color:var(--ink);text-decoration:none}
.navcta .btn{padding:9px 18px;font-size:14px}
@media(max-width:920px){.navlinks{display:none}}
.phero{padding:150px 0 70px;text-align:center;background:radial-gradient(800px 420px at 50% -8%, #EAF7F0, transparent 70%)}
.phero h1{font-size:clamp(34px,5vw,56px);font-weight:700;margin:16px auto 16px;max-width:820px}
.phero h1 .hl{color:var(--deep)}
.phero p.sub{font-size:18px;color:var(--slate);max-width:620px;margin:0 auto 28px}
.phero p.sub b{color:var(--ink)}
.heroctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:920px){.grid3,.grid4{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.grid2,.grid3,.grid4{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px;box-shadow:var(--sh);transition:.2s}
.card:hover{transform:translateY(-4px);box-shadow:var(--sh-lift)}
.card h3{font-size:18px;margin:10px 0 8px}
.card p{font-size:14px;color:var(--slate)}
.card p b, .card li b{color:var(--ink)}
.card .ic{font-size:26px}
.tag{font-family:'JetBrains Mono';font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--green);background:var(--tint);border-radius:20px;padding:4px 12px;display:inline-block}
.tag.soon{color:var(--nova2);background:var(--goldbg)}
.tip{background:linear-gradient(135deg,#F2FBF6,#fff);border:1px solid rgba(0,163,92,.25);border-radius:16px;padding:16px 22px;font-size:14.5px;color:var(--slate)}
.tip b{color:var(--deep)}
.gnote{background:linear-gradient(135deg,#FFFBEE,#fff);border:1px solid rgba(201,146,18,.35);border-radius:16px;padding:16px 22px;font-size:14.5px;color:var(--slate)}
.gnote b{color:var(--gold)}
.photo{max-width:900px;margin:0 auto;border-radius:24px;overflow:hidden;box-shadow:var(--sh-lift);position:relative}
.photo img{width:100%;display:block}
.photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 22px;background:linear-gradient(180deg,transparent,rgba(10,17,24,.8));color:#fff;font-family:'Space Grotesk';font-weight:600;font-size:15px}
.faq{max-width:740px;margin:0 auto}
.q{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:12px;box-shadow:var(--sh);overflow:hidden}
.q button{width:100%;text-align:left;background:none;border:0;padding:19px 22px;font-family:'Space Grotesk';font-weight:600;font-size:15.5px;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;gap:12px}
.q button::after{content:'+';font-size:19px;color:var(--green);transition:transform .25s;flex:none}
.q.open button::after{transform:rotate(45deg)}
.q .a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.q .a p{padding:0 22px 20px;font-size:14.5px;color:var(--slate)}
.final{background:radial-gradient(700px 400px at 50% 0%, rgba(0,255,136,.13), transparent 65%), var(--dark);text-align:center;padding:100px 0}
.final .kicker{color:var(--neon)}
.final h2{font-size:clamp(30px,4.2vw,48px);color:#fff;margin:14px 0 18px}
.final p{color:#93A5B5;font-size:16.5px;max-width:540px;margin:0 auto 30px}
.final .heroctas{justify-content:center}
footer.mini{background:var(--dark);color:#93A5B5;border-top:1px solid var(--dline);padding:44px 0 30px;font-family:'JetBrains Mono';font-size:11px}
footer.mini .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
footer.mini a{color:#93A5B5;text-decoration:none}
footer.mini a:hover{color:var(--neon)}
table.mx{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);font-size:14.5px}
table.mx th{background:var(--navy);color:#E8F0F6;font-family:'Space Grotesk';font-weight:600;padding:14px 18px;text-align:left;font-size:13.5px}
table.mx td{padding:13px 18px;border-bottom:1px solid var(--line);color:var(--slate)}
table.mx tr:last-child td{border-bottom:0}
table.mx td b{color:var(--ink)}
table.mx td.ok{color:var(--deep);font-weight:600}
table.mx td.hum{color:var(--gold);font-weight:600}
.legal{max-width:820px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:22px;padding:44px;box-shadow:var(--sh)}
.legal h2{font-size:19px;margin:26px 0 8px}
.legal h2:first-of-type{margin-top:0}
.legal p,.legal li{font-size:14.5px;color:#3D4B59}
.legal ul{margin:0 0 12px 20px}
.legal .meta{font-family:'JetBrains Mono';font-size:11px;color:var(--mist);margin-bottom:22px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.q .a{max-height:none}}

/* ══ Megamenú por categorías (hover) ══ */
.navlinks{align-items:center}
.navlinks .nav-item{position:relative}
.navlinks .nav-trigger{display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:500;color:var(--slate);text-decoration:none;cursor:pointer;padding:8px 2px;background:none;border:0;font-family:'Inter',sans-serif}
.navlinks .nav-trigger:hover,.navlinks .nav-item:hover .nav-trigger{color:var(--ink)}
.navlinks .nav-trigger .chev{width:9px;height:9px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-1px);transition:transform .2s;opacity:.6}
.navlinks .nav-item:hover .chev{transform:rotate(225deg) translateY(-2px)}
.navdrop{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);min-width:230px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh-lift);padding:10px;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s;z-index:120}
.navdrop::before{content:'';position:absolute;top:-14px;left:0;right:0;height:14px}
.nav-item:hover .navdrop{opacity:1;visibility:visible;transform:translateX(-50%) translateY(6px)}
.navdrop a{display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:10px;text-decoration:none;color:var(--ink);transition:background .15s}
.navdrop a:hover{background:var(--tint)}
.navdrop a b{font-family:'Space Grotesk';font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:7px}
.navdrop a span{font-size:11.5px;color:var(--mist);line-height:1.35}
.navdrop .dd-head{font-family:'JetBrains Mono';font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mist);padding:8px 12px 4px}
.navdrop .dd-sep{height:1px;background:var(--line);margin:6px 4px}
.navdrop .dot{width:7px;height:7px;border-radius:50%;flex:none}
.navlinks>a.nav-link{font-size:14px;font-weight:500;color:var(--slate);text-decoration:none;padding:8px 2px}
.navlinks>a.nav-link:hover{color:var(--ink)}
.navlinks>a.nav-link.on{color:var(--deep);font-weight:600}
@media(max-width:1050px){.navlinks{display:none}}
