/* Página Expo */
.nav-expo.on{background:#f2c46d22}

.x-hero{position:relative;min-height:100svh;background:#05070d center/cover no-repeat;display:flex;align-items:flex-end}
.x-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(#05070d55 0%,#05070d33 40%,#05070df2 100%)}
.x-hero-text{position:relative;z-index:2;padding:0 24px 12vh;max-width:1200px;margin:0 auto;width:100%}
.x-hero h1{font-size:clamp(46px,8vw,110px);margin:.1em 0 .25em;max-width:12em}
.x-hero .lead{max-width:620px;font-size:clamp(18px,2vw,22px);color:#dfe4ee}
.x-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.x-btn{display:inline-block;border:1px solid var(--ink);border-radius:30px;padding:11px 22px;color:var(--ink);text-decoration:none;font-size:15px}
.x-btn.solid{background:var(--sky);border-color:var(--sky);color:#1a1205}
.x-btn:hover{opacity:.85}

.x-info-wrap{padding:60px 0;border-bottom:1px solid var(--line)}
.x-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px}
.x-lbl{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--sky)}
.x-val{font-family:var(--serif);font-size:30px;line-height:1.2;margin-top:6px}
.x-sub,.x-sub a{color:var(--mute);font-size:15px}

.carousel{display:grid;grid-template-columns:1fr;gap:18px;margin-top:10px}
.car-view{position:relative;height:min(72vh,720px);background:#000;border-radius:16px;overflow:hidden;cursor:zoom-in}
.car-view img{width:100%;height:100%;object-fit:contain;transition:opacity .45s}
.car-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;background:#0008;color:#fff;font-size:34px;line-height:1;display:flex;align-items:center;justify-content:center}
.car-nav:hover{background:#000c}
.car-nav.prev{left:14px}.car-nav.next{right:14px}
.car-cap h3{font-size:clamp(26px,3vw,36px)}
.car-cap p{color:var(--mute);margin-top:4px}
.car-cap a{color:var(--sea);text-decoration:none}
.car-count{font-size:13px;color:var(--dim)!important}

.people{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:36px}
.person{border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;gap:16px;align-items:center;background:#ffffff05}
.person .av{flex:0 0 64px;height:64px;border-radius:50%;background:#ffffff12 center/cover;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:26px;color:var(--sky)}
.person h3{font-size:24px}
.person a{color:var(--sea);text-decoration:none;font-size:15px}
.person .n{font-size:13px;color:var(--dim)}
.coord-card{margin-top:40px;border-top:1px solid var(--line);padding-top:30px}
.coord-card a{color:var(--sea);text-decoration:none}

.venue{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;margin-top:30px;align-items:start}
.venue-photos{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.venue-photos img{width:100%;height:260px;object-fit:cover;border-radius:12px}
.venue-photos img.big{grid-column:1/-1;height:340px}
.venue dl{margin:24px 0 28px;display:grid;grid-template-columns:auto 1fr;gap:10px 18px;font-size:16px}
.venue dt{color:var(--sky);font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding-top:4px}
.venue dd a{color:var(--sea)}
@media(max-width:860px){.venue{grid-template-columns:1fr}.venue-photos img{height:200px}.venue-photos img.big{height:240px}}
@media(max-width:520px){.car-view{height:auto;aspect-ratio:4/3}.car-nav{width:42px;height:42px;font-size:28px}}

/* Slideshow */
.ss-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:30px 0}
.ss-row .filters{margin:0}
button.x-btn{font:inherit;font-size:15px;cursor:pointer}
.ss{cursor:none}
.ss .expo-slide{background-size:contain}
.ss .expo-slide.show{animation:kb 14s linear forwards}
.ss::after{height:16vh;background:linear-gradient(#0000,#0009)}
.ss-cap{position:absolute;left:2.4vw;bottom:2.2vh;z-index:2;font-size:clamp(11px,.85vw,14px);line-height:1.5;color:#ffffffd9;letter-spacing:.02em;text-shadow:0 1px 6px #000;transition:opacity 1.2s}
.ss-cap b{font-weight:400;color:#fff}
.ss-cap span{color:#ffffff99}
.ss-hint{position:absolute;top:14px;right:18px;font-size:11px;color:#ffffff66;transition:opacity 1s}
.ss.paused .ss-cap::after{content:" · ❚❚";color:var(--sky)}

/* Interactivo */
.int-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}
.steps{list-style:none;counter-reset:s;margin-top:22px;display:flex;flex-direction:column;gap:18px}
.steps li{counter-increment:s;display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start}
.steps li::before{content:counter(s);width:42px;height:42px;border-radius:50%;border:1px solid var(--sky);color:var(--sky);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:22px}
.steps b{display:block;font-family:var(--serif);font-weight:500;font-size:24px;color:var(--ink)}
.steps span{color:var(--mute)}
.int-note{margin-top:22px;padding:14px 18px;border-left:2px solid var(--sea);border-radius:0;color:#cfd5e2;background:#5fd0e60d}
.scope svg{width:100%;max-width:340px;margin:0 auto;display:block}
.gear-imgs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:20px}
.gear-imgs img{width:100%;height:260px;object-fit:cover;border-radius:12px;cursor:zoom-in}
.specs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.spec{border:1px solid var(--line);border-radius:14px;padding:18px 20px;background:#ffffff05}
.spec b{display:block;font-family:var(--serif);font-weight:400;font-size:30px;color:var(--sky);line-height:1.1}
.spec span{font-size:14px;color:var(--mute)}
.night{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:22px}
.night div{border-radius:14px;padding:20px;background:linear-gradient(160deg,#0e1630,#0a0f1c);border:1px solid var(--line)}
.night b{font-family:var(--serif);font-weight:400;font-size:26px;display:block;margin-bottom:6px}
.night span{color:var(--mute);font-size:15px}
.objs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:22px}
.obj{border-radius:12px;overflow:hidden;position:relative;cursor:zoom-in;background:#000}
.obj img{width:100%;height:170px;object-fit:cover;transition:transform .6s}
.obj:hover img{transform:scale(1.05)}
.obj div{padding:10px 12px;font-size:14px}
.obj small{display:block;color:var(--mute);font-size:12px;margin-top:2px}
@media(max-width:860px){.specs{grid-template-columns:repeat(2,1fr)}.obj img{height:130px}.int-grid{grid-template-columns:1fr}.scope svg{max-width:220px}}

/* Guía de observación */
.guide{margin-top:20px}
.g-ctrl{display:flex;align-items:center;gap:18px;margin-top:22px;flex-wrap:wrap}
.g-clock{font-family:var(--serif);font-size:44px;color:var(--sky);line-height:1;min-width:150px}
.g-lbl{display:block;font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin-bottom:4px}
#gSlider{flex:1;min-width:220px;accent-color:#f2c46d;height:28px}
.g-scale{display:flex;justify-content:space-between;font-size:11px;color:var(--dim);margin:2px 0 6px 168px}
@media(max-width:620px){.g-scale{margin-left:0}}
.g-list{display:flex;flex-direction:column;gap:10px}
.g-item{display:grid;grid-template-columns:72px 1fr 150px;gap:16px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:12px;background:#ffffff04}
.g-item.has{cursor:zoom-in}.g-item.has:hover{border-color:#ffffff40}
.g-ph{width:72px;height:72px;border-radius:10px;background:#0e1630 center/cover}
.g-ph.g-neb{background:radial-gradient(circle,#d85a3088,#0e1630 70%)}
.g-ph.g-gal{background:radial-gradient(ellipse 60% 30%,#cfd5e299,#0e1630 75%)}
.g-ph.g-cum{background:radial-gradient(circle at 40% 40%,#fff 1px,transparent 2px),radial-gradient(circle at 60% 55%,#fff 1px,transparent 2px),radial-gradient(circle at 50% 30%,#bcd 1.5px,transparent 2.5px),radial-gradient(circle at 35% 65%,#fff 1px,transparent 2px),#0e1630}
.g-ph.g-pla{background:radial-gradient(circle,#f2c46d 0 22%,#0e1630 24%)}
.g-name{font-family:var(--serif);font-size:22px;line-height:1.15}
.g-desc{font-size:14px;color:var(--mute);margin-top:2px}
.g-meta{font-size:13px;color:#cfd5e2;margin-top:6px}
.g-badge{display:inline-block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:20px;margin-right:4px}
.g-badge.ideal{background:#3fb58f33;color:#7fe0bd}.g-badge.good{background:#f2c46d26;color:var(--sky)}.g-badge.low{background:#ffffff14;color:var(--mute)}
.g-side{display:flex;align-items:center;gap:10px}
.g-bar{width:8px;height:56px;border-radius:4px;background:#ffffff12;display:flex;align-items:flex-end;overflow:hidden}
.g-bar div{width:100%;background:linear-gradient(#f2c46d,#5fd0e6);border-radius:4px;transition:height .4s}
.g-spark{width:120px;height:34px}
.g-hidden{font-size:13px;color:var(--dim);margin-top:16px}
.g-hidden b{font-weight:400;color:var(--mute)}
@media(max-width:620px){.g-item{grid-template-columns:56px 1fr;gap:12px}.g-ph{width:56px;height:56px}.g-side{grid-column:1/-1}.g-spark{flex:1;width:auto}.g-clock{font-size:36px;min-width:0}}
#gNow[hidden]{display:none}
.filters{flex-wrap:wrap}
