/* ═══════════════════════════════════════════════════════════════════════════
   experience-page.css — Premium experience landing layout (brief §2)
   Facts strip · timeline · packing checklist
═══════════════════════════════════════════════════════════════════════════ */
.xp{ --xp-gold:#c8b28a; --xp-ink:#f5f1e8; margin-top:2.5rem; }

.xp-head{ max-width:56ch; margin:0 0 1.8rem; }
.xp-kick{ font-size:.66rem; letter-spacing:.24em; text-transform:uppercase; color:var(--xp-gold); display:block; }
.xp-h2{
  font-family:"Cormorant Garamond",serif; font-weight:300;
  font-size:clamp(1.7rem,3.8vw,2.6rem); line-height:1.12;
  margin:.45rem 0 .6rem; color:#fff;
}
.xp-h2 em{ font-style:italic; color:var(--xp-gold); }
.xp-sub{ font-size:.98rem; line-height:1.8; color:rgba(245,241,232,.62); margin:0; }

/* ── Facts strip ─────────────────────────────────────────────────────── */
.xp-facts{
  margin:2rem 0 3rem; padding:1.4rem 1.6rem; border-radius:18px;
  background:rgba(200,178,138,.06); border:1px solid rgba(200,178,138,.22);
}
.xp-facts__grid{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:1.2rem; padding-bottom:1.2rem; border-bottom:1px solid rgba(245,241,232,.1);
}
.xp-fact__k{
  display:block; font-size:.64rem; letter-spacing:.14em; text-transform:uppercase;
  color:rgba(245,241,232,.45); margin-bottom:.3rem;
}
.xp-fact__v{ display:block; font-size:.95rem; color:var(--xp-ink); font-weight:600; line-height:1.4; }

.xp-dots{ display:inline-flex; gap:3px; margin-top:.4rem; }
.xp-dots i{
  width:7px; height:7px; border-radius:50%;
  background:rgba(245,241,232,.18); display:block;
}
.xp-dots i.is-on{ background:var(--xp-gold); }

.xp-suits{ display:flex; flex-wrap:wrap; gap:.5rem; padding:1.1rem 0 0; }
.xp-suit{
  font-size:.8rem; padding:.35rem .8rem; border-radius:999px;
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1);
  color:rgba(245,241,232,.6);
}
.xp-suit.is-yes{
  background:rgba(111,211,154,.1); border-color:rgba(111,211,154,.3); color:#8fe0b4;
}
.xp-suit em{ font-style:normal; opacity:.7; margin-left:.25rem; }

.xp-access{
  font-size:.85rem; line-height:1.7; color:rgba(245,241,232,.7);
  margin:1.1rem 0 0; padding:.8rem 1rem; border-radius:10px;
  background:rgba(0,0,0,.2); border-left:3px solid var(--xp-gold);
}
.xp-access strong{ color:var(--xp-gold); }

/* ── Timeline ────────────────────────────────────────────────────────── */
.xp-timeline{ margin:3rem 0; }
.xp-tl{ list-style:none; padding:0; margin:0; }
.xp-tl__item{
  display:grid; grid-template-columns:76px 1fr; gap:1.2rem;
  position:relative; padding-bottom:1.6rem;
}
.xp-tl__item::before{
  content:''; position:absolute; left:82px; top:1.6rem; bottom:0;
  width:1px; background:linear-gradient(180deg, rgba(200,178,138,.4), rgba(200,178,138,.08));
}
.xp-tl__item:last-child::before{ display:none; }
.xp-tl__time{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:.82rem; color:var(--xp-gold); padding-top:.15rem;
  text-align:right; letter-spacing:.02em;
}
.xp-tl__body{ position:relative; padding-left:1.2rem; }
.xp-tl__body::before{
  content:''; position:absolute; left:-4px; top:.4rem;
  width:9px; height:9px; border-radius:50%;
  background:var(--xp-gold); box-shadow:0 0 0 4px rgba(200,178,138,.14);
}
.xp-tl__body h3{ font-size:1.05rem; margin:0 0 .35rem; color:#fff; font-weight:600; }
.xp-tl__body p{ font-size:.92rem; line-height:1.8; color:rgba(245,241,232,.72); margin:0; }

/* ── Packing checklist ───────────────────────────────────────────────── */
.xp-pack{ margin:3rem 0; }
.xp-pack__list{
  list-style:none; padding:0; margin:0 0 1.2rem;
  display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:.15rem 1.5rem;
}
.xp-pack__list li{ display:flex; align-items:flex-start; gap:.6rem; padding:.5rem 0; }
.xp-pack__list input{
  appearance:none; flex:none; width:18px; height:18px; margin-top:.15rem;
  border-radius:5px; border:1.5px solid rgba(200,178,138,.45);
  cursor:pointer; position:relative; background:transparent;
}
.xp-pack__list input:checked{ background:var(--xp-gold); border-color:var(--xp-gold); }
.xp-pack__list input:checked::after{
  content:'✓'; position:absolute; inset:0; display:grid; place-items:center;
  color:#0d1615; font-size:12px; font-weight:900;
}
.xp-pack__list label{
  font-size:.9rem; line-height:1.5; color:rgba(245,241,232,.78); cursor:pointer;
}
.xp-pack__list input:checked + label{ color:rgba(245,241,232,.4); text-decoration:line-through; }
.xp-pack__foot{
  font-size:.9rem; color:rgba(245,241,232,.6);
  padding-top:1rem; border-top:1px solid rgba(245,241,232,.1);
}
.xp-pack__foot a{ color:var(--xp-gold); }

@media(max-width:640px){
  .xp-tl__item{ grid-template-columns:58px 1fr; gap:.8rem; }
  .xp-tl__item::before{ left:63px; }
  .xp-tl__time{ font-size:.74rem; }
  .xp-pack__list{ grid-template-columns:1fr; }
}
