
:root{color-scheme:light;--brand:#6e3de8;--brand-2:#b84bfb;--accent:#e16ec4;--ink:#211a2a;--muted:#6c6275;--paper:#fff;--bg:#f8f6fc;--soft:#f1eaff;--line:#ded7e8;--shadow:0 18px 50px rgba(55,23,95,.12);--gradient:linear-gradient(130deg,#301064 0%,#6e3de8 55%,#b84bfb 100%)}
html[data-theme="dark"]{color-scheme:dark;--brand:#9b79f5;--brand-2:#cf78ff;--accent:#ff8cdd;--ink:#f6f0fa;--muted:#c1b5ca;--paper:#1b1424;--bg:#120d19;--soft:#302141;--line:#3b2e48;--shadow:0 18px 52px rgba(0,0,0,.34);--gradient:linear-gradient(130deg,#160923 0%,#3f176f 55%,#772887 100%)}
*{box-sizing:border-box}body{margin:0;font-family:Lato,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}a{color:inherit}.top{min-height:320px;background:var(--gradient);color:#fff;padding:34px clamp(22px,6vw,80px);display:flex;flex-direction:column;justify-content:space-between}.bar{display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{font-weight:900}.theme-btn{width:42px;height:42px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font:inherit;cursor:pointer}.hero{max-width:1050px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:900;opacity:.76}.hero h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.93;letter-spacing:-.055em;margin:0 0 18px}.hero p{font-size:clamp(1.05rem,2vw,1.35rem);max-width:760px;margin:0;opacity:.86}.main{width:min(1180px,100%);margin:auto;padding:clamp(34px,6vw,76px)}.section-title{font-size:clamp(2rem,4vw,3.8rem);line-height:1;letter-spacing:-.04em;margin:0 0 12px}.lede{color:var(--muted);max-width:760px;margin:0 0 32px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.unit{display:flex;flex-direction:column;min-height:310px;background:var(--paper);border:1px solid var(--line);border-radius:26px;padding:30px;text-decoration:none;box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease}.unit:hover{transform:translateY(-4px);border-color:var(--brand)}.num{font-size:.82rem;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:var(--brand)}.unit h2{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.05;letter-spacing:-.035em;margin:24px 0 14px}.unit p{color:var(--muted);margin:0}.open{margin-top:auto;padding-top:30px;color:var(--brand);font-weight:900}.pending{opacity:.62;box-shadow:none}.footer{padding:28px;text-align:center;color:var(--muted);font-size:.86rem}@media(max-width:760px){.grid{grid-template-columns:1fr}.top{min-height:360px}.unit{min-height:270px}}

/* Accesibilidad de teclado */
a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}

.brand-link{text-decoration:none;color:#fff}


/* Tipografía armonizada con maiteae.com */
body{font-family:"DM Sans",sans-serif}
h1,h2,h3,.section-title{font-family:"Cormorant Garamond",serif;font-weight:400}
.hero h1{font-size:clamp(2.9rem,5vw,4.85rem);line-height:.96;letter-spacing:-.035em}
.section-title{font-size:clamp(2.05rem,3.2vw,3.15rem)}
.unit h2{font-size:clamp(1.65rem,2.15vw,2.3rem);line-height:1.08}
.hero p{font-size:clamp(1.02rem,1.35vw,1.22rem)}

/* Ajuste final de escala editorial para monitores grandes */
.hero h1{font-size:clamp(2.8rem,4.5vw,4.5rem)}
