/* Midnight CGO · red de divisiones (núcleo + 9 divisiones) y sección Midnight OS. Negro, dorado, champán y crema. */
.e3{grid-area:orbit;width:100%;max-width:1180px;margin:0 auto;display:grid;gap:18px;grid-template-columns:minmax(0,1fr);position:relative}
.e3-top{display:flex;justify-content:flex-end}
.e3-mode{background:transparent;border:1px solid rgba(201,162,74,.4);color:var(--champ,#E8DCC2);font:500 12px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:10px 14px;min-height:40px;cursor:pointer}
.e3-mode:hover,.e3-mode[aria-pressed="true"]{border-color:var(--gold);color:var(--gold-hi)}
.e3-stage{position:relative;height:clamp(380px,56vh,600px);border-radius:28px;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,rgba(226,194,122,.10),rgba(0,0,0,0) 62%)}
.e3-links{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.e3-l{stroke:rgba(226,194,122,.55);stroke-width:1;transition:stroke .3s}
.e3-l.on{stroke:var(--gold-hi);stroke-width:1.8}
.e3-c{fill:none;stroke:rgba(232,220,194,.22);stroke-width:1;stroke-dasharray:3 6}
.e3-c.on{stroke:rgba(226,194,122,.7)}
.e3-core{position:absolute;left:50%;top:50%;width:clamp(120px,15vw,190px);height:auto;transform:translate(-50%,-50%);z-index:15;cursor:pointer;filter:drop-shadow(0 0 28px rgba(226,194,122,.35));border-radius:50%}
.e3-core:focus-visible{outline:2px solid var(--gold-hi);outline-offset:6px}
.e3-nodes{position:absolute;inset:0}
.e3-n{position:absolute;left:0;top:0;display:flex;flex-direction:column;align-items:center;gap:8px;background:none;border:0;padding:6px;color:var(--white);cursor:pointer;font:500 13px/1.2 var(--sans);letter-spacing:.06em;will-change:transform;transition:opacity .4s;min-width:44px;min-height:44px}
.e3-orb{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;color:var(--gold-hi);background:radial-gradient(circle at 35% 30%,rgba(255,240,205,.28),rgba(201,162,74,.12) 45%,rgba(0,0,0,.85) 75%);border:1px solid rgba(226,194,122,.55);box-shadow:0 0 0 0 rgba(226,194,122,.0),0 8px 26px rgba(0,0,0,.6),inset 0 0 18px rgba(226,194,122,.12);transition:box-shadow .35s,border-color .35s,transform .35s}
.e3-orb svg{width:28px;height:28px}
.e3-lab{white-space:nowrap;padding:4px 10px;border-radius:999px;background:rgba(0,0,0,.6);border:1px solid rgba(226,194,122,.18);color:var(--champ,#E8DCC2)}
.e3-n:hover .e3-orb,.e3-n.hl .e3-orb,.e3-n:focus-visible .e3-orb{border-color:var(--gold-hi);box-shadow:0 0 0 6px rgba(226,194,122,.10),0 0 34px rgba(226,194,122,.45),inset 0 0 18px rgba(226,194,122,.2);transform:scale(1.08)}
.e3-n.sel .e3-orb{border-color:var(--gold-hi);background:radial-gradient(circle at 35% 30%,rgba(255,240,205,.5),rgba(201,162,74,.35) 50%,rgba(0,0,0,.85) 80%);box-shadow:0 0 0 8px rgba(226,194,122,.14),0 0 44px rgba(226,194,122,.6)}
.e3-n.sel .e3-lab{border-color:var(--gold);color:var(--gold-hi)}
.e3-n:focus-visible{outline:none}
.e3-n:focus-visible .e3-lab{outline:2px solid var(--gold-hi);outline-offset:2px}
.e3-iaos .e3-orb{border-color:rgba(232,220,194,.8)}
.has-sel .e3-n:not(.sel){opacity:.5!important}
.e3-note{margin:0;text-align:center;font-size:13px;color:var(--mute)}
.e3-card{border:1px solid rgba(226,194,122,.3);border-radius:22px;padding:20px 22px;background:linear-gradient(180deg,rgba(32,30,26,.72),rgba(10,10,10,.92));min-height:96px}
.e3-card.on{border-color:rgba(226,194,122,.6);box-shadow:0 18px 50px rgba(0,0,0,.5)}
.e3-ch{display:flex;align-items:center;gap:14px}
.e3-ch .e3-orb{width:52px;height:52px;flex:none}
.e3-ch>div{flex:1;min-width:0}
.e3-k{margin:0;font:500 12px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.e3-h{font:500 clamp(26px,3vw,34px)/1.1 var(--serif);margin:2px 0 0;color:var(--white)}
.e3-h:focus{outline:none}
.e3-x{background:none;border:1px solid rgba(226,194,122,.35);color:var(--champ,#E8DCC2);width:44px;height:44px;border-radius:50%;font-size:22px;line-height:1;cursor:pointer;flex:none}
.e3-d{margin:12px 0 0;color:var(--mute);font-size:16px}
.e3-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}
.e3-cols ul{margin:6px 0 0;padding-left:18px;color:var(--champ,#E8DCC2);font-size:15px}
.e3-cols li{margin:3px 0}
.e3-act{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.e3-act .btn{height:48px;padding:0 24px}
/* modo lista (y alternativa ligera) */
.e3-list .e3-stage{height:auto;overflow:visible;background:none}
.e3-list .e3-links,.e3-list .e3-core{display:none}
.e3-list .e3-nodes{position:static;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.e3-list .e3-n{position:static;transform:none!important;opacity:1!important;flex-direction:row;justify-content:flex-start;border:1px solid rgba(226,194,122,.25);border-radius:16px;padding:10px 12px;text-align:left}
.e3-list .e3-orb{width:40px;height:40px}.e3-list .e3-orb svg{width:20px;height:20px}
.e3-list .e3-lab{background:none;border:0;padding:0;white-space:normal}
/* buscador */
.e3-q{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.e3-q label{flex-basis:100%;font:500 12px/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.e3-q input{flex:1;min-width:0;height:52px;border-radius:999px;border:1px solid rgba(226,194,122,.45);background:rgba(0,0,0,.55);color:var(--white);padding:0 20px;font:300 16px var(--sans)}
.e3-q input:focus{outline:2px solid var(--gold-hi);outline-offset:2px}
.e3-q button{height:52px;padding:0 22px;border-radius:999px;border:1px solid var(--gold);background:transparent;color:var(--gold-hi);font:500 13px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.e3-try{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;color:var(--mute)}
.e3-try button{background:rgba(255,255,255,.03);border:1px solid rgba(226,194,122,.25);color:var(--champ,#E8DCC2);border-radius:999px;padding:8px 12px;font:300 13px var(--sans);cursor:pointer;min-height:36px}
.e3-try button:hover{border-color:var(--gold)}
.e3-r ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.e3-r a{display:block;padding:12px 16px;border-radius:14px;border:1px solid rgba(226,194,122,.22);text-decoration:none;color:var(--white);background:rgba(0,0,0,.45)}
.e3-r a:hover,.e3-r a:focus-visible{border-color:var(--gold)}
.e3-r b{display:block;font-weight:500;color:var(--gold-hi)}
.e3-r span{display:block;font-size:14px;color:var(--mute)}
.e3-none{margin:0;color:var(--mute);font-size:15px}
.e3-dv{margin:4px 0 0;text-align:center;font:400 12px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:rgba(232,220,194,.7)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (min-width:980px){.e3{grid-template-columns:minmax(0,1.55fr) minmax(320px,.8fr);align-items:start}.e3-top,.e3-stage,.e3-note{grid-column:1}.e3-card{grid-column:2;grid-row:1/span 3;position:sticky;top:90px}.e3-q,.e3-try,.e3-r,.e3-dv{grid-column:1/-1}}
@media (max-width:559px){.e3-stage{height:380px}.e3-orb{width:46px;height:46px}.e3-orb svg{width:22px;height:22px}.e3-lab{font-size:11px;padding:3px 7px;letter-spacing:.02em}.e3-n{gap:4px;padding:2px}.e3-core{width:104px}.e3-cols{grid-template-columns:1fr}.e3-act .btn{flex:1}}
@media (prefers-reduced-motion:reduce){.e3-orb,.e3-n{transition:none}}
/* sección Midnight OS */
.mos{padding:clamp(56px,8vw,110px) clamp(16px,3vw,48px)}
.mos-in{max-width:1180px;margin:0 auto;border:1px solid rgba(226,194,122,.35);border-radius:32px;padding:clamp(24px,4vw,56px);background:radial-gradient(ellipse at 20% 0%,rgba(226,194,122,.12),transparent 55%),linear-gradient(180deg,rgba(24,22,18,.8),rgba(6,6,6,.95))}
.mos-t{font:500 clamp(40px,6vw,72px)/1 var(--serif);letter-spacing:.06em;color:var(--gold-hi);margin:0}
.mos-q{font:italic 400 clamp(20px,2.4vw,28px)/1.3 var(--serif);color:var(--champ,#E8DCC2);margin:12px 0 0}
.mos-p{color:var(--mute);max-width:720px;margin:14px 0 0}
.mos-go{margin-top:22px}
.mos-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:28px}
.mos-c{border:1px solid rgba(226,194,122,.22);border-radius:18px;padding:16px;background:rgba(0,0,0,.45);display:flex;flex-direction:column;gap:6px}
.mos-c h3{font:500 22px/1.1 var(--serif);color:var(--white)}
.mos-c p{margin:0;font-size:14px;color:var(--mute);flex:1}
.mos-c .mos-l{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.mos-c .mos-l a{color:var(--gold-hi);text-decoration:none;border-bottom:1px solid rgba(226,194,122,.4);padding:6px 0}
.foot-dv{margin:6px 0 0;font:400 12px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:rgba(232,220,194,.65)}
/* primera pantalla con la red de divisiones */
.heco.e3h{min-height:auto;padding-top:96px;padding-bottom:40px}
.heco.e3h .heco-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"head" "orbit"!important;max-width:1180px;gap:22px}
.heco.e3h .heco-head{text-align:center;display:flex;flex-direction:column;align-items:center}
.heco.e3h .heco-head .hero-cta{justify-content:center;margin-top:18px}
.heco-tag{margin:10px 0 0;font:500 13px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.e3-ls{display:none}
.heco.e3h .scrollcue{display:none}
@media (max-width:559px){.e3:not(.e3-list) .e3-ll{display:none}.e3:not(.e3-list) .e3-ls{display:inline}}
