
html{background:var(--tinta)} body{overflow-x:clip} .wrap{min-width:0}
/* Capas: fondos de sección (opacos, por tema) → lienzo del globo (fijo, z2) → contenido (.wrap, z3) → cabecera (z50) */
#globe{position:fixed;inset:0;z-index:2;pointer-events:none} #globe canvas{width:100%!important;height:100%!important;display:block}
#globe.fallback{position:absolute;top:0;left:0;right:0;height:100svh;display:grid;align-items:center;justify-items:end;padding-right:4vw;overflow:hidden} #globe.fallback img{width:min(78vmin,760px);height:auto;opacity:.9} @media (max-width:900px){#globe.fallback{align-items:start;justify-items:center;padding:12vh 0 0}} #globe.webgl img{display:none} #globe.fallback~main .only-pointer{display:none}
#globe-tip{position:fixed;left:0;top:0;z-index:5;pointer-events:none;background:var(--tinta);color:#fff;font:600 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;padding:8px 10px;border:1px solid rgba(255,255,255,.3)} #globe-tip[hidden]{display:none}
main section,.site-footer{position:relative} section>.wrap,.site-footer>.wrap{position:relative;z-index:3;width:100%}
.site-header{border-color:transparent;background:color-mix(in srgb,var(--bg) 97%,transparent)}
/* botón de la cabecera: contraste explícito sobre claro, oscuro y fondos teñidos */
.site-nav a{white-space:nowrap} .site-nav .cta{background:var(--azul);color:#fff;border-color:var(--azul)} .site-header[data-theme="dark"] .site-nav .cta{background:#fff;color:var(--azul);border-color:#fff}
/* titulares con interlineado apretado: aire para acentos y para el eyebrow de arriba */
.eyebrow+h1,.eyebrow+h2,.eyebrow+.display{margin-top:.18em} .display{padding-top:.04em}
.site-header[data-theme="dark"]{--bg:var(--tinta)} .site-header:not([data-theme="dark"]){--bg:var(--papel)}
section{min-height:100svh;display:grid;align-items:center;padding-block:clamp(72px,10vh,120px)} section:not(.hero,.panel,.page-hero,#munmx,#intro){min-height:min(100svh,880px)}
[id]{scroll-margin-top:84px} @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media (max-width:900px){.btn{min-height:44px} .faq summary{min-height:44px;align-items:center} .more{display:inline-block;padding:10px 0}} .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* Composición: el globo ocupa siempre el lado opuesto al texto. Hero: texto izq. Quiénes: texto der. MUNMX: centrado con velo. Noticias: lista izq. Contacto: der. */
.hero .wrap{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:40px;align-items:center}
.hero h1{font-size:clamp(76px,13vw,220px);line-height:.8;color:#fff} .hero h1 em{font-style:normal;color:var(--oro,#FFD98A)}
.hero .lead{color:#DCE3F7;max-width:50ch} .hero .btn{background:#fff;color:var(--azul);border-color:#fff} .hero .btn.ghost{background:transparent;color:#fff}
.hero .legend{margin-top:34px;display:flex;gap:22px;flex-wrap:wrap;font-size:12px;color:#B9C6EE;letter-spacing:.08em} .hero .legend i{display:inline-block;width:10px;height:10px;border-radius:50%;background:#FFD98A;vertical-align:middle;margin-right:8px;box-shadow:0 0 10px #FFD98A} .hero .legend i.w{background:#B8B8BA;box-shadow:none}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr;align-content:end;min-height:100svh;padding-bottom:40px} .hero h1{font-size:clamp(64px,19vw,140px)}}
/* velo: halo del color del fondo detrás de un bloque de texto, por si el globo pasa por debajo */
.shield{position:relative;isolation:isolate} .shield::before{content:'';position:absolute;inset:-28px -40px;z-index:-1;background:radial-gradient(ellipse at center,var(--bgc,var(--papel)) 46%,transparent 100%);opacity:.92;pointer-events:none}
.q .wrap{display:grid;justify-items:end} .q .content{max-width:760px;width:100%} .q .lead{font-size:clamp(19px,1.8vw,26px);line-height:1.4;color:var(--fg)}
.que{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px} .que div{background:color-mix(in srgb,var(--papel) 70%,#fff 30%);border:1px solid var(--line);padding:22px;border-radius:3px} .que h3{font-family:var(--display);text-transform:uppercase;font-size:38px;color:var(--azul)} .que p{margin:8px 0 0;font-size:14.5px;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px} .stats .n{font-family:var(--display);font-size:clamp(56px,5.6vw,88px);line-height:.85;color:var(--azul)} .stats b{display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;margin:6px 0 4px} .stats p{margin:0;font-size:13.5px;color:var(--muted)}
@media (max-width:900px){.q .wrap{justify-items:stretch} .stats{grid-template-columns:1fr 1fr} .que{grid-template-columns:1fr}}
#munmx .wrap{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center;isolation:isolate} #munmx h2{font-size:clamp(90px,16vw,300px);line-height:.78;color:#fff}
#munmx .wrap::before{content:'';position:absolute;inset:-8% -14%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 55%,rgba(28,32,48,.86) 0%,rgba(28,32,48,.7) 32%,rgba(28,32,48,.3) 56%,rgba(28,32,48,0) 72%)}
#munmx .lockup{width:min(440px,86vw);height:auto;margin:28px auto 22px}
#munmx .lead{color:#C9D2F0;max-width:52ch} #munmx .btn{background:#fff;color:var(--azul);border-color:#fff} #munmx .btn.ghost{background:transparent;color:#fff}
.comites{list-style:none;margin:36px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:center} .com{display:inline-grid;grid-auto-flow:column;align-items:center;gap:12px;padding:10px 16px 10px 12px;border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fff;backdrop-filter:blur(6px);background:rgba(28,32,48,.55);max-width:100%} .com .sig{font-size:28px;line-height:1;color:var(--acc);filter:brightness(1.7)} .com .nm{font-size:13px;white-space:normal;text-align:left} .com .lv{display:none}
.news{display:grid;grid-template-columns:1fr;gap:18px;max-width:720px} .news-card a{text-decoration:none;display:grid;grid-template-columns:200px 1fr;gap:12px 22px;align-items:center;background:color-mix(in srgb,var(--papel) 70%,#fff 30%);border:1px solid var(--line);padding:14px;border-radius:3px} .news-card .thumb{aspect-ratio:4/3;grid-row:span 3} .news-card .meta,.news-card h3,.news-card p{grid-column:2} .news-card .meta{display:flex;gap:12px;font-size:12px;color:var(--muted)} .news-card h3{font-size:21px;font-weight:600;line-height:1.2} .news-card p{margin:0;font-size:14px;color:var(--muted)}
@media (max-width:640px){.news-card a{grid-template-columns:1fr} .news-card .thumb{grid-row:auto} .news-card .meta,.news-card h3,.news-card p{grid-column:1}}
#contacto .wrap{display:grid;justify-items:end} #contacto .content{max-width:820px;width:100%;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px;align-items:start} #contacto h2.display{font-size:clamp(52px,6.5vw,110px);line-height:.9;overflow-wrap:anywhere} #contacto .form{background:color-mix(in srgb,var(--papel) 70%,#fff 30%);padding:24px;border:1px solid var(--line);border-radius:3px}
@media (max-width:900px){#contacto .content{grid-template-columns:1fr}}
h2.display{font-size:clamp(56px,8vw,130px)}
.site-footer .wrap::after{content:'';position:absolute;left:-50vw;right:-50vw;bottom:-28px;height:140px;z-index:-1;pointer-events:none;background:linear-gradient(to top,rgba(28,32,48,.92) 35%,rgba(28,32,48,0))}
.scrollcue{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:3;display:grid;gap:10px} .scrollcue a{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.35;display:block} .scrollcue a.on{opacity:1;transform:scale(1.4)} @media (max-width:900px){.scrollcue{display:none}}

.skip{position:absolute;left:12px;top:-60px;z-index:60;background:var(--azul);color:#fff;padding:10px 14px;border-radius:3px;font-weight:600} .skip:focus{top:12px}
@media (hover:none){.only-pointer{display:none}}
.news-card .thumb img{width:100%;height:100%;object-fit:cover}
/* subpáginas: dos layouts, texto a la izquierda (globo der) o texto a la derecha (globo izq) */
.tl .wrap,.tr .wrap{display:grid;gap:48px;align-items:center} .tl .wrap{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)} .tr .wrap{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)} .tr .wrap>.content{grid-column:2}
.content{max-width:720px} .content .lead{font-size:clamp(18px,1.6vw,24px);line-height:1.45}
@media (max-width:900px){.tl .wrap,.tr .wrap{grid-template-columns:1fr} .tr .wrap>.content{grid-column:1}}
.page-hero h1{font-size:clamp(64px,10vw,170px);line-height:.82}
[data-theme="dark"] .content,.hero .content{color:#F2F3F8} [data-theme="dark"] .lead{color:#DCE3F7}
/* historia */
.timeline{list-style:none;margin:36px 0 0;padding:0;display:grid;gap:0} .timeline li{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line)} .timeline b{font-family:var(--display);font-size:40px;line-height:1;color:var(--accent)} .timeline p{margin:0;font-size:15px}
/* comités: paneles teñidos */
.panel{min-height:100svh;color:#fff} .panel .sig{font-family:var(--display);text-transform:uppercase;font-size:clamp(120px,22vw,360px);line-height:.8;letter-spacing:-.01em;color:#fff;opacity:.96} .panel .nm{font-size:clamp(26px,2.6vw,40px);font-weight:600;line-height:1.15;margin:10px 0 6px} .panel .lv{font-size:12px;letter-spacing:.18em;text-transform:uppercase;opacity:.85} .panel .sede{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;opacity:.9} .panel .sede i{width:10px;height:10px;border-radius:50%;background:#FFD98A;box-shadow:0 0 10px #FFD98A;display:inline-block}
.panel .lead{color:inherit;opacity:.92;max-width:52ch;margin-top:18px} .panel .btn{border-color:currentColor;color:inherit;background:transparent} .panel.light{color:var(--tinta)} .panel.light .sig{color:var(--tinta)} .panel.light .sede i{background:var(--tinta);box-shadow:none}
.panel .shield::before{background:radial-gradient(ellipse at center,var(--bgc) 42%,transparent 100%);opacity:.9}
.ficha{margin-top:16px;max-width:60ch} .ficha .lv{display:block;margin-bottom:4px} .ficha p{margin:0;font-size:15px;line-height:1.5;opacity:.95}
.mesa-grid li{grid-template-columns:56px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center} .mesa-grid .mav{grid-row:span 2;width:56px;height:56px;border-radius:50%;overflow:hidden;background:rgba(255,255,255,.18);display:grid;place-items:center;font-family:var(--display);font-size:24px} .mesa-grid .mav img{width:100%;height:100%;object-fit:cover} .panel.light .mesa-grid .mav{background:rgba(28,32,48,.15)}
.mesa{margin-top:22px} .mesa ul{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 18px} .mesa li{display:grid;line-height:1.3} .mesa .nm2{font-weight:600;font-size:15px} .mesa .cg{font-size:12px;opacity:.8} .mesa ul.dl{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.com-index{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px} .com-index a{display:inline-grid;grid-auto-flow:column;align-items:center;gap:10px;padding:8px 14px 8px 10px;border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fff;text-decoration:none;font-size:13px;background:rgba(28,32,48,.4)} .com-index a b{font-family:var(--display);font-size:24px;line-height:1;color:var(--acc);filter:brightness(1.7)}
/* preguntas */
.faq{display:grid;gap:0;margin-top:28px;max-width:720px} .faq details{border-top:1px solid var(--line);padding:14px 0} .faq summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px} .faq summary::after{content:'+';font-family:var(--display);font-size:28px;line-height:1;color:var(--accent)} .faq details[open] summary::after{content:'–'} .faq p{margin:10px 0 0;color:var(--muted);max-width:60ch}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:32px} .cards div{background:color-mix(in srgb,var(--papel) 70%,#fff 30%);border:1px solid var(--line);padding:22px;border-radius:3px} .cards h3{font-family:var(--display);text-transform:uppercase;font-size:34px;color:var(--azul);margin:0 0 6px} .cards p{margin:0;font-size:14.5px;color:var(--muted)}
[data-theme="dark"] .cards div{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18)} [data-theme="dark"] .cards h3{color:#fff} [data-theme="dark"] .cards p{color:#C9D2F0}
.staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin-top:30px} .staff{display:grid;grid-template-columns:64px 1fr;gap:6px 16px;align-items:center;padding:18px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);border-radius:3px} .staff .av{grid-row:span 3;width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--azul);display:grid;place-items:center} .staff .av img{width:100%;height:100%;object-fit:cover} .staff .ini{font-family:var(--display);font-size:30px;color:#fff;letter-spacing:.02em} .staff h3{font-size:17px;font-weight:600;line-height:1.2;margin:0;color:#fff} .staff b{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#FFD98A} .staff p{margin:0;font-size:13.5px;color:#C9D2F0;line-height:1.5}
.dl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:30px} .dl-card{background:color-mix(in srgb,var(--papel) 70%,#fff 30%);border:1px solid var(--line);padding:22px;border-radius:3px;display:grid;gap:10px;align-content:start} .dl-card h3{font-size:19px;font-weight:600;line-height:1.2;margin:0} .dl-card p{margin:0;font-size:14px;color:var(--muted)} .dl-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:30px} .tier{background:color-mix(in srgb,var(--papel) 70%,#fff 30%);border:1px solid var(--line);padding:22px;border-radius:3px} .tier h3{font-family:var(--display);text-transform:uppercase;font-size:38px;color:var(--azul);margin:4px 0 6px} .tier p{margin:0 0 10px;font-size:14px;color:var(--muted)} .tier ul{margin:0;padding-left:18px;font-size:14px} .tier li{margin:4px 0}
.needs{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 18px} .needs li{padding:12px 0;border-top:1px solid rgba(255,255,255,.2);font-size:16px}
.logos{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:18px;align-items:center} .logos img{height:44px;width:auto;filter:brightness(0) invert(1);opacity:.9}
.more{display:inline-block;margin-top:22px;font-weight:600;text-decoration:none;border-bottom:2px solid var(--accent);padding-bottom:2px}
