/* Nahueltrek 2.32 · Expediciones (landing /expediciones/{slug} y portada).
   Usa la paleta del sitio (azules del logo) con un único acento cálido: el
   anillo del eclipse. */
:root{
  --xp-noche:#03111F;
  --xp-noche2:#062A4A;
  --xp-sol:#FFC25C;
  --xp-sol2:#F08A2C;
  --xp-hielo:#BFE3F0;
}

/* Anillo */
.eclipse-anillo{display:block;}
.eclipse-anillo .ea-halo{transform-origin:200px 200px; animation:ea-latido 6s ease-in-out infinite;}
@keyframes ea-latido{0%,100%{opacity:.85; transform:scale(1);} 50%{opacity:1; transform:scale(1.04);}}
@media (prefers-reduced-motion:reduce){ .eclipse-anillo .ea-halo{animation:none;} }

/* Cielo estrellado (CSS puro) */
.xp-estrellas{position:absolute; inset:0; pointer-events:none; opacity:.7;
  background-image:
    radial-gradient(1px 1px at 12% 22%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 28% 68%, #fff 50%, transparent 51%),
    radial-gradient(1.5px 1.5px at 44% 14%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 63% 40%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 78% 18%, #fff 50%, transparent 51%),
    radial-gradient(1.5px 1.5px at 88% 58%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 8% 82%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 54% 82%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 36% 36%, #cfe9f5 50%, transparent 51%),
    radial-gradient(1px 1px at 94% 30%, #cfe9f5 50%, transparent 51%);
}

/* ===== Hero ===== */
.xp-hero{position:relative; overflow:hidden; color:#fff; padding:72px 0 0;
  background:radial-gradient(ellipse 80% 70% at 75% 30%, #0C3A63 0%, var(--xp-noche2) 45%, var(--xp-noche) 100%);}
.xp-hero-in{position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:32px; align-items:center; padding-bottom:120px;}
.xp-hero .eyebrow{color:var(--xp-sol); letter-spacing:.14em; font-size:13px;}
.xp-hero h1{font-size:clamp(2rem,4.6vw,3.5rem); line-height:1.05; margin:14px 0 18px; max-width:18ch; color:#fff;}
.xp-hero h1 em{font-style:normal; color:var(--xp-sol);}
.xp-lead{font-size:clamp(1rem,1.4vw,1.15rem); color:var(--xp-hielo); max-width:52ch;}
.xp-cta{display:flex; flex-wrap:wrap; gap:12px; margin-top:28px;}
.xp-btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-weight:700; font-size:15px; padding:14px 24px; border-radius:999px; border:1px solid transparent; transition:transform .2s ease, box-shadow .2s ease, background .2s ease;}
.xp-btn:hover{transform:translateY(-2px);}
.xp-btn--sol{background:linear-gradient(135deg, var(--xp-sol), var(--xp-sol2)); color:var(--xp-noche); box-shadow:0 10px 30px rgba(240,138,44,.35);}
.xp-btn--sol:hover{box-shadow:0 14px 36px rgba(240,138,44,.5);}
.xp-btn--wa{background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.35);}
.xp-btn--wa:hover{background:#25D366; border-color:#25D366; color:#062A4A;}
.xp-btn--azul{background:var(--azul-logo,#0A5AB3); color:#fff;}
.xp-btn--azul:hover{background:var(--noche,#062A4A);}
.xp-cupos{display:inline-flex; align-items:center; gap:8px; margin-top:22px; font-size:13px; color:var(--xp-hielo); background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); padding:8px 14px; border-radius:999px;}
.xp-punto{width:8px; height:8px; border-radius:50%; background:var(--xp-sol); box-shadow:0 0 0 4px rgba(255,194,92,.2); animation:xp-punto 2s ease-in-out infinite;}
@keyframes xp-punto{50%{box-shadow:0 0 0 8px rgba(255,194,92,0);}}
.xp-hero-arte{position:relative; justify-self:center; width:min(420px,100%);}
.xp-hero-arte .eclipse-anillo{width:100%; height:auto;}
.xp-hero-fecha{position:absolute; left:50%; bottom:6%; transform:translateX(-50%); text-align:center; white-space:nowrap;}
.xp-hero-fecha strong{display:block; font-size:clamp(1.4rem,2.6vw,2rem); color:#fff;}
.xp-hero-fecha span{font-size:12px; letter-spacing:.16em; color:var(--xp-sol);}
.xp-paisaje{position:absolute; left:0; right:0; bottom:-1px; width:100%; height:auto; z-index:1; display:block;}

/* ===== Datos clave ===== */
.xp-datos{background:var(--hueso,#EAF6F8); position:relative; z-index:3;}
.xp-datos-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:var(--linea2,rgba(6,42,74,.12)); border:1px solid var(--linea2,rgba(6,42,74,.12)); border-radius:18px; overflow:hidden; transform:translateY(-48px); box-shadow:0 20px 50px rgba(3,17,31,.18);}
.xp-dato{background:#fff; padding:18px 20px;}
.xp-dato dt{font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--suave,#4C6378);}
.xp-dato dd{margin-top:4px; font-weight:700; color:var(--tinta,#0E2338); font-size:16px; line-height:1.3;}
.xp-dato--destacado{background:var(--noche,#062A4A);}
.xp-dato--destacado dt{color:var(--xp-hielo);}
.xp-dato--destacado dd{color:var(--xp-sol);}

/* ===== Secciones ===== */
.xp-sec{padding:20px 0 72px; background:var(--hueso,#EAF6F8); color:var(--tinta,#0E2338);}
.xp-sec--blanca{background:#fff; padding-top:72px;}
.xp-sec--noche{background:radial-gradient(ellipse at 20% 0%, #0C3A63, var(--xp-noche) 70%); color:#fff; padding-top:80px; position:relative; overflow:hidden;}
.xp-head{max-width:720px; margin-bottom:32px;}
.xp-head .eyebrow{color:var(--azul-logo,#0A5AB3); letter-spacing:.14em; font-size:12px;}
.xp-sec--noche .xp-head .eyebrow{color:var(--xp-sol);}
.xp-head h2{font-size:clamp(1.6rem,3vw,2.4rem); line-height:1.1; margin-top:8px;}
.xp-head p{margin-top:10px; color:var(--suave,#4C6378);}
.xp-sec--noche .xp-head p{color:var(--xp-hielo);}

/* Itinerario: línea de tiempo de días */
.xp-dias{list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; counter-reset:dia;}
.xp-dia{position:relative; background:#fff; border:1px solid var(--linea2,rgba(6,42,74,.12)); border-radius:18px; padding:26px 22px 24px; box-shadow:var(--sombra,0 12px 30px rgba(6,42,74,.07));}
.xp-dia::before{counter-increment:dia; content:"0" counter(dia); position:absolute; top:18px; right:20px; font-family:'Bricolage Grotesque',sans-serif; font-size:44px; line-height:1; color:rgba(10,90,179,.1); font-weight:800;}
.xp-dia-fecha{display:inline-block; font-size:12px; letter-spacing:.12em; background:var(--hielo2,#E3F0F6); color:var(--azul-logo,#0A5AB3); padding:4px 10px; border-radius:999px;}
.xp-dia h3{font-size:1.25rem; margin:12px 0 8px;}
.xp-dia p{color:var(--suave,#4C6378); font-size:15px;}
.xp-dia--eclipse{background:var(--noche,#062A4A); color:#fff; border-color:transparent;}
.xp-dia--eclipse::before{color:rgba(255,194,92,.18);}
.xp-dia--eclipse .xp-dia-fecha{background:rgba(255,194,92,.16); color:var(--xp-sol);}
.xp-dia--eclipse p{color:var(--xp-hielo);}
.xp-nota{margin-top:16px; font-size:13px; color:var(--suave,#4C6378);}

/* Observación del eclipse */
.xp-obs{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:40px; align-items:center;}
.xp-obs p{color:var(--xp-hielo); margin-bottom:12px; font-size:1.05rem;}
.xp-obs-arte{max-width:360px; justify-self:center; width:100%;}
.xp-aviso{display:flex; gap:12px; align-items:flex-start; margin-top:18px; padding:14px 16px; border-radius:14px; background:rgba(255,194,92,.1); border:1px solid rgba(255,194,92,.3); color:#FFE6BD; font-size:14px;}
.xp-aviso b{color:var(--xp-sol);}

/* Incluye / no incluye */
.xp-incluye{display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:20px;}
.xp-caja{background:#fff; border:1px solid var(--linea2,rgba(6,42,74,.12)); border-radius:18px; padding:24px;}
.xp-caja h3{font-size:1.1rem; margin-bottom:14px;}
.xp-lista{list-style:none; display:grid; gap:10px;}
.xp-lista li{display:flex; gap:10px; align-items:flex-start; font-size:15px;}
.xp-lista li::before{content:"✓"; flex:none; width:22px; height:22px; border-radius:50%; display:grid; place-items:center; font-size:12px; font-weight:800; background:var(--hielo2,#E3F0F6); color:var(--azul-logo,#0A5AB3);}
.xp-lista--no li::before{content:"–"; background:#F3F4F6; color:#6B7280;}

/* Tarjetas: alojamiento, transporte, seguridad */
.xp-tarjetas{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px;}
.xp-tarjeta{background:var(--niebla,#F3F8FA); border-radius:18px; padding:24px; border:1px solid var(--linea2,rgba(6,42,74,.12));}
.xp-tarjeta-ico{width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:var(--noche,#062A4A); color:var(--xp-sol); font-size:20px; margin-bottom:14px;}
.xp-tarjeta h3{font-size:1.1rem; margin-bottom:8px;}
.xp-tarjeta p{color:var(--suave,#4C6378); font-size:15px; margin-bottom:6px;}

/* FAQ */
.xp-faq{display:grid; gap:10px; max-width:820px;}
.xp-faq details{background:#fff; border:1px solid var(--linea2,rgba(6,42,74,.12)); border-radius:14px; padding:0 18px;}
.xp-faq summary{cursor:pointer; list-style:none; padding:16px 28px 16px 0; font-weight:700; position:relative;}
.xp-faq summary::-webkit-details-marker{display:none;}
.xp-faq summary::after{content:"+"; position:absolute; right:0; top:50%; transform:translateY(-50%); font-size:22px; color:var(--azul-logo,#0A5AB3); transition:transform .2s;}
.xp-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.xp-faq details p{padding:0 0 16px; color:var(--suave,#4C6378);}

/* Pre-reserva */
.xp-pre{display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:36px; align-items:start;}
.xp-pre-txt h2{font-size:clamp(1.6rem,3vw,2.4rem); line-height:1.1; margin:8px 0 12px;}
.xp-pre-txt p{color:var(--xp-hielo);}
.xp-pasos{list-style:none; margin-top:22px; display:grid; gap:14px; counter-reset:paso;}
.xp-pasos li{display:flex; gap:12px; color:#fff;}
.xp-pasos li::before{counter-increment:paso; content:counter(paso); flex:none; width:28px; height:28px; border-radius:50%; display:grid; place-items:center; font-weight:800; background:var(--xp-sol); color:var(--xp-noche); font-size:14px;}
.xp-pasos small{display:block; color:var(--xp-hielo);}
.xp-precio{margin-top:24px; padding:16px 18px; border-radius:14px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14);}
.xp-precio span{font-size:12px; letter-spacing:.12em; color:var(--xp-hielo);}
.xp-precio strong{display:block; font-size:1.6rem; color:var(--xp-sol);}
.xp-form{background:#fff; color:var(--tinta,#0E2338); border-radius:20px; padding:26px; box-shadow:0 30px 70px rgba(0,0,0,.35);}
.xp-form h3{font-size:1.2rem; margin-bottom:4px;}
.xp-form .xp-form-sub{color:var(--suave,#4C6378); font-size:14px; margin-bottom:18px;}
.xp-campos{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px;}
.xp-campo{display:flex; flex-direction:column; gap:6px;}
.xp-campo--ancho{grid-column:1/-1;}
.xp-campo label{font-size:13px; font-weight:700;}
.xp-campo label small{font-weight:500; color:var(--suave,#4C6378);}
.xp-campo input, .xp-campo select{font:inherit; font-size:16px; padding:12px 14px; border-radius:10px; border:1px solid rgba(6,42,74,.22); background:#fff; color:var(--tinta,#0E2338); width:100%;}
.xp-campo input:focus, .xp-campo select:focus{outline:2px solid var(--azul-logo,#0A5AB3); outline-offset:1px; border-color:transparent;}
.xp-opciones{display:flex; flex-wrap:wrap; gap:8px;}
.xp-opciones label{position:relative; font-weight:600; font-size:14px;}
.xp-opciones input{position:absolute; opacity:0; width:1px; height:1px;}
.xp-opciones span{display:inline-block; padding:9px 14px; border-radius:999px; border:1px solid rgba(6,42,74,.22); cursor:pointer;}
.xp-opciones input:checked + span{background:var(--noche,#062A4A); color:#fff; border-color:var(--noche,#062A4A);}
.xp-opciones input:focus-visible + span{outline:2px solid var(--azul-logo,#0A5AB3); outline-offset:2px;}
.xp-check{display:flex; gap:10px; align-items:flex-start; font-size:14px; color:var(--suave,#4C6378);}
.xp-check input{margin-top:3px;}
.xp-form .xp-btn{width:100%; margin-top:18px; font-size:16px;}
.xp-letra{margin-top:10px; font-size:12px; color:var(--suave,#4C6378); text-align:center;}
.xp-errores{background:#FEF2F2; color:#991B1B; border:1px solid #FECACA; border-radius:12px; padding:12px 14px; margin-bottom:14px; font-size:14px;}
.xp-trampa{position:absolute; left:-9999px;}
.xp-gracias{text-align:center; padding:12px 6px;}
.xp-gracias .eclipse-anillo{width:110px; margin:0 auto 10px;}
.xp-gracias h3{font-size:1.5rem;}
.xp-gracias p{color:var(--suave,#4C6378); margin:10px 0 18px;}

/* Panel lateral de /salidas cuando la salida es una expedición */
.xp-panel{padding:26px; text-align:center;}
.xp-panel .eclipse-anillo{width:140px; margin:0 auto 12px;}
.xp-panel h2{font-size:1.5rem; margin-bottom:8px;}
.xp-panel p{color:var(--suave,#4C6378); margin-bottom:16px;}

/* ===== Portada (home) ===== */
.xp-portada{position:relative; overflow:hidden; color:#fff; padding:64px 0;
  background:radial-gradient(ellipse 70% 90% at 80% 40%, #0C3A63 0%, var(--xp-noche2) 50%, var(--xp-noche) 100%);}
.xp-portada-in{position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:28px; align-items:center;}
.xp-portada .eyebrow{color:var(--xp-sol); letter-spacing:.14em; font-size:12px;}
.xp-portada h2{font-size:clamp(1.8rem,4vw,3rem); line-height:1.05; margin:10px 0 14px; color:#fff;}
.xp-portada h2 em{font-style:normal; color:var(--xp-sol);}
.xp-portada p{color:var(--xp-hielo); max-width:52ch;}
.xp-chips{list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin-top:18px;}
.xp-chips li{font-size:13px; padding:7px 12px; border-radius:999px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.16); color:#fff;}
.xp-chips li b{color:var(--xp-sol);}
.xp-portada-arte{justify-self:center; width:min(360px,100%); position:relative;}
.xp-portada-arte .eclipse-anillo{width:100%; height:auto;}
.xp-portada-cuenta{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); text-align:center;}
.xp-portada-cuenta strong{display:block; font-family:'Bricolage Grotesque',sans-serif; font-size:clamp(2.2rem,5vw,3.4rem); line-height:1; color:#fff;}
.xp-portada-cuenta span{font-size:11px; letter-spacing:.16em; color:var(--xp-sol);}

/* ===== Responsive ===== */
@media (max-width:900px){
  .xp-hero{padding-top:40px;}
  .xp-hero-in, .xp-portada-in, .xp-obs, .xp-pre, .xp-incluye{grid-template-columns:minmax(0,1fr);}
  .xp-hero-in{padding-bottom:90px; gap:8px;}
  .xp-hero-arte{order:-1; width:min(260px,70%);}
  .xp-portada-arte{order:-1; width:min(240px,64%);}
  .xp-datos-grid{grid-template-columns:repeat(2,minmax(0,1fr)); transform:translateY(-36px);}
  .xp-dias, .xp-tarjetas{grid-template-columns:minmax(0,1fr);}
  .xp-obs-arte{max-width:220px; order:-1;}
}
@media (max-width:560px){
  .xp-hero h1{font-size:2rem;}
  .xp-cta{flex-direction:column;}
  .xp-cta .xp-btn{width:100%;}
  .xp-campos{grid-template-columns:minmax(0,1fr);}
  .xp-form{padding:20px 16px;}
  .xp-dato{padding:14px 14px;}
  .xp-dato dd{font-size:15px;}
}

/* 2.33: nota de puntos de salida y "Quedan X días" */
.xp-nota{display:block; margin-top:4px; font-size:12px; font-weight:500; opacity:.75;}
.xp-tarjeta .xp-nota{display:inline; margin:0;}
.xp-portada-cuenta .xp-cuenta-pre{display:block; margin-bottom:4px; font-size:10px; letter-spacing:.18em; color:var(--xp-hielo);}
