:root{
  /* Applied brand tokens (source: Applied Brand Kit) */
  --ink:oklch(.22 .008 60);
  --ink-soft:oklch(.22 .008 60 / .74);
  --paper:oklch(.968 .012 85);
  --paper-2:oklch(.93 .012 80);
  --cream:oklch(.968 .012 85);
  --accent:oklch(.62 .21 48);
  --terra:oklch(.55 .18 45);
  --terra-deep:oklch(.22 .008 60);
  --olive:oklch(.22 .008 60);
  --gold:oklch(.62 .21 48);
  --line:oklch(.22 .008 60 / .15);
  --line-strong:oklch(.22 .008 60 / .4);
  --line-soft:oklch(.22 .008 60 / .15);
  --paper-line:oklch(.968 .012 85 / .1);
  --on-ink-muted:oklch(.968 .012 85 / .6);
  --on-ink-dim:oklch(.968 .012 85 / .7);
  --shadow:none;
  --ease:cubic-bezier(.16,1,.3,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:var(--paper);
  color:var(--ink);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
::selection{background:var(--terra);color:var(--paper)}
img{display:block;max-width:100%}
a{color:inherit}
.serif{font-family:'Inter',sans-serif}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace}

/* ---------- shared ---------- */
.wrap{max-width:1240px;margin:0 auto;padding:0 6vw}
section{position:relative}
.eyebrow{
  font-family:'JetBrains Mono',ui-monospace,monospace;
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--terra);display:flex;align-items:center;gap:.9rem;margin-bottom:1.6rem;
}
.eyebrow::before{content:"";width:2.2rem;height:1px;background:var(--terra);flex:none}
.dark .eyebrow{color:var(--gold)}
.dark .eyebrow::before{background:var(--gold)}
h2{
  font-family:'Inter',sans-serif;font-weight:390;
  font-size:clamp(2.1rem,4.6vw,3.6rem);
  line-height:1.08;letter-spacing:-.015em;
  max-width:18ch;
}
h2 em{font-style:italic;color:var(--terra)}
.dark h2 em{color:var(--gold)}
.lede{font-size:clamp(1rem,1.4vw,1.15rem);color:var(--ink-soft);max-width:56ch;margin-top:1.4rem}
.dark{background:var(--ink);color:var(--paper)}
.dark .lede{color:rgba(247,242,231,.72)}
.btn{
  display:inline-flex;align-items:center;gap:.7rem;
  font-family:'Inter',sans-serif;font-weight:600;font-size:.92rem;
  padding:1rem 1.9rem;border-radius:100px;text-decoration:none;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .35s;
  cursor:pointer;border:none;
}
.btn svg{transition:transform .35s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn-terra{background:var(--terra);color:var(--paper)}
.btn-terra:hover{background:var(--terra-deep);transform:translateY(-2px);box-shadow:0 16px 32px -14px rgba(188,81,39,.55)}
.btn-ghost{background:transparent;color:inherit;box-shadow:inset 0 0 0 1.5px currentColor}
.btn-ghost:hover{transform:translateY(-2px)}
.btn-paper{background:var(--paper);color:var(--ink)}
.btn-paper:hover{background:#fff;transform:translateY(-2px)}

/* reveal on scroll */
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv-d1{transition-delay:.08s}.rv-d2{transition-delay:.16s}.rv-d3{transition-delay:.24s}

/* ---------- nav ---------- */
nav{
  position:fixed;inset:0 0 auto 0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:1.1rem 3vw;
  transition:background .4s,box-shadow .4s,padding .4s;
  color:var(--paper);
}
nav{padding-left:max(3vw,env(safe-area-inset-left));padding-right:max(3vw,env(safe-area-inset-right))}
nav.solid{background:rgba(247,242,231,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink);box-shadow:0 1px 0 var(--line);padding:.75rem 3vw}
.nav-logo{font-family:'Inter',sans-serif;font-size:1.06rem;font-weight:500;letter-spacing:.01em;text-decoration:none;display:flex;align-items:baseline;gap:.55rem;white-space:nowrap}
.nav-logo .mono{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;opacity:.75}
.nav-links{display:flex;align-items:center;gap:2.1rem;list-style:none}
.nav-links a{font-size:.85rem;font-weight:500;text-decoration:none;opacity:.85;transition:opacity .3s}
.nav-links a:hover{opacity:1}
.nav-cta{background:var(--terra);color:var(--paper) !important;padding:.6rem 1.3rem;border-radius:100px;opacity:1 !important;transition:background .3s}
.nav-cta:hover{background:var(--terra-deep)}
.burger{display:none;background:none;border:none;color:inherit;cursor:pointer;padding:.4rem}
.mobile-menu{
  position:fixed;inset:0;background:var(--ink);color:var(--paper);z-index:99;
  display:flex;flex-direction:column;justify-content:center;padding:0 8vw;gap:.4rem;
  opacity:0;pointer-events:none;transition:opacity .4s;
}
.mobile-menu.open{opacity:1;pointer-events:auto}
.mobile-menu a{font-family:'Inter',sans-serif;font-size:2.2rem;text-decoration:none;padding:.55rem 0;border-bottom:1px solid var(--paper-line)}

/* ---------- hero ---------- */
.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;color:var(--paper);overflow:hidden}
.hero-media{position:absolute;inset:0;z-index:0}
.hero-media video,.hero-media img{width:100%;height:100%;object-fit:cover}
.hero-media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to bottom,rgba(24,28,19,.42) 0%,rgba(24,28,19,.18) 42%,rgba(24,28,19,.78) 100%);
}
.hero-inner{position:relative;z-index:1;padding:9rem 6vw 0}
.hero-date{
  font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.75rem;letter-spacing:.24em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:.8rem;
  border:1px solid rgba(247,242,231,.4);border-radius:100px;padding:.55rem 1.2rem;margin-bottom:2.2rem;
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:rgba(24,28,19,.18);
}
.hero-date .dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}
.hero h1{
  font-family:'Inter',sans-serif;font-weight:340;
  font-size:clamp(2.9rem,7.6vw,6.4rem);
  line-height:1.02;letter-spacing:-.02em;max-width:13ch;
}
.hero h1 em{font-style:italic;color:var(--gold)}
.hero-sub{margin-top:1.8rem;font-size:clamp(1rem,1.5vw,1.2rem);max-width:52ch;color:rgba(247,242,231,.88)}
.hero-ctas{display:flex;gap:1rem;margin-top:2.6rem;flex-wrap:wrap}
.hero-meta{
  position:relative;z-index:1;margin-top:4.5rem;
  border-top:1px solid var(--paper-line);
  display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:center;
  padding:1.4rem 6vw 1.6rem;gap:2rem;
}
.hm div{display:flex;flex-direction:column;gap:.2rem}
.hm .k{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(247,242,231,.6)}
.hm .v{font-family:'Inter',sans-serif;font-size:1.25rem}
.scroll-hint{display:flex;align-items:center;gap:.6rem;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(247,242,231,.6)}
.scroll-hint span{display:inline-block;animation:bob 2s infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}

.hero-img-mobile{display:none}
@media(max-width:700px){
  .hero-media video{display:none}
  .hero-img-mobile{display:block;width:100%;height:100%;object-fit:cover}
}
.final-bg picture{display:block;width:100%;height:100%}

/* ---------- ticker ---------- */
.ticker{background:var(--terra);color:var(--paper);overflow:hidden;padding:.85rem 0;white-space:nowrap}
.ticker-track{display:inline-flex;gap:0;animation:tick 36s linear infinite}
.ticker span{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;padding:0 1.6rem;display:inline-flex;align-items:center;gap:1.6rem}
.ticker span::after{content:"✦";font-size:.6rem;opacity:.7}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---------- intro ---------- */
.intro{padding:8.5rem 0 7rem}
.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:5rem;align-items:center}
.intro-copy p{color:var(--ink-soft);margin-top:1.3rem;max-width:54ch}
.intro-copy p strong{color:var(--ink)}
.intro-media{position:relative}
.intro-media .main{border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
.intro-media .main img{aspect-ratio:4/4.6;object-fit:cover;width:100%}
.intro-card{
  position:absolute;left:-3.2rem;bottom:2.4rem;background:var(--cream);
  border-radius:14px;padding:1.2rem 1.5rem;box-shadow:var(--shadow);
  display:flex;align-items:center;gap:1rem;border:1px solid var(--line-soft);
}
.intro-card .num{font-family:'Inter',sans-serif;font-size:2.1rem;font-weight:500;color:var(--terra);line-height:1}
.intro-card .lbl{font-size:.78rem;color:var(--ink-soft);max-width:12ch;line-height:1.35}
.press{display:flex;align-items:center;gap:3rem;margin-top:3rem;flex-wrap:wrap}
.press .p-item{display:flex;flex-direction:column;gap:.5rem}
.press .k{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);opacity:.7}
.press a{text-decoration:none}
.press .gva{font-family:'Inter',sans-serif;font-style:italic;font-size:1.15rem}
.press img{height:26px;width:auto;filter:invert(1) opacity(.8)}

/* ---------- film strip / aftermovie ---------- */
.film{padding:0 0 8rem}
.film-frame{border-radius:20px;overflow:hidden;box-shadow:var(--shadow);position:relative}
.film-frame video{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;background:#000}
.film-cap{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}

/* ---------- why ---------- */
.why{padding:7.5rem 0 8rem}
.why-list{margin-top:4rem;border-top:1px solid var(--paper-line);counter-reset:why}
.why-item{
  display:grid;grid-template-columns:5rem 1fr 1.2fr;gap:2.5rem;align-items:baseline;
  padding:2.4rem 0;border-bottom:1px solid var(--paper-line);
  transition:padding .4s var(--ease);
}
.why-item:hover{padding-left:.8rem}
.why-item .no{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.8rem;color:var(--gold)}
.why-item h3{font-family:'Inter',sans-serif;font-weight:420;font-size:clamp(1.35rem,2.2vw,1.8rem);letter-spacing:-.01em}
.why-item p{color:rgba(247,242,231,.7);font-size:.98rem;max-width:52ch}

/* ---------- rhythm ---------- */
.rhythm{padding:8rem 0}
.rhythm-track{display:grid;grid-template-columns:repeat(5,1fr);gap:1.2rem;margin-top:4rem}
.rh-card{
  background:var(--cream);border:1px solid var(--line-soft);border-radius:16px;
  padding:1.8rem 1.5rem;display:flex;flex-direction:column;gap:.8rem;min-height:220px;
  transition:transform .4s var(--ease),box-shadow .4s var(--ease);
}
.rh-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.rh-card .t{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--terra)}
.rh-card h3{font-family:'Inter',sans-serif;font-weight:460;font-size:1.3rem}
.rh-card p{font-size:.86rem;color:var(--ink-soft)}
.rh-card .ico{margin-top:auto;color:var(--terra);display:flex}

/* ---------- program ---------- */
.program{padding:8rem 0 9rem;background:var(--paper-2)}
.days{margin-top:4.5rem;display:flex;flex-direction:column;gap:1rem}
.day{
  background:var(--cream);border:1px solid var(--line-soft);border-radius:18px;overflow:hidden;
  transition:box-shadow .4s var(--ease);
}
.day.open,.day:hover{box-shadow:var(--shadow)}
.day-head{
  display:grid;grid-template-columns:6.5rem 1fr auto;gap:1.8rem;align-items:center;
  padding:1.5rem 2rem;cursor:pointer;user-select:none;background:none;border:none;width:100%;text-align:left;
  font-family:inherit;color:inherit;
}
.day-date{display:flex;flex-direction:column;line-height:1.05}
.day-date .dow{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--terra)}
.day-date .dnum{font-family:'Inter',sans-serif;font-size:2.3rem;font-weight:380}
.day-title h3{font-family:'Inter',sans-serif;font-weight:460;font-size:clamp(1.15rem,2vw,1.55rem);letter-spacing:-.01em}
.day-title .sub{font-size:.85rem;color:var(--ink-soft);margin-top:.15rem}
.day-toggle{
  width:2.6rem;height:2.6rem;border-radius:50%;border:1.5px solid var(--line);
  display:flex;align-items:center;justify-content:center;transition:transform .45s var(--ease),background .3s,border-color .3s;flex:none;
}
.day.open .day-toggle{transform:rotate(45deg);background:var(--terra);border-color:var(--terra);color:var(--paper)}
.day-body{max-height:0;overflow:hidden;transition:max-height .55s var(--ease)}
.day-body-inner{padding:.4rem 2rem 2rem;display:grid;grid-template-columns:6.5rem 1fr;gap:1.8rem}
.day-items{list-style:none;display:flex;flex-direction:column;gap:.65rem;grid-column:2}
.day-items li{display:flex;gap:.9rem;align-items:baseline;font-size:.95rem;color:var(--ink-soft)}
.day-items li::before{content:"–";color:var(--terra);flex:none}
.day-items li.ws{
  background:var(--ink);color:var(--paper);border-radius:12px;padding:1rem 1.3rem;margin:.35rem 0;
  display:block;
}
.day-items li.ws::before{content:none}
.day-items li.ws .wtag{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.35rem}

/* ---------- outcomes ---------- */
.outcomes{padding:8rem 0}
.out-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:4rem}
.out-card{
  border:1px solid var(--line);border-radius:18px;padding:2.2rem 1.9rem;background:var(--cream);
  display:flex;flex-direction:column;gap:1rem;transition:transform .4s var(--ease),box-shadow .4s var(--ease),background .4s;
}
.out-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.out-card .no{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;color:var(--terra)}
.out-card h3{font-family:'Inter',sans-serif;font-weight:460;font-size:1.32rem;letter-spacing:-.01em}
.out-card p{font-size:.9rem;color:var(--ink-soft)}

/* ---------- included ---------- */
.included{padding:8rem 0 9rem}
.inc-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:4rem;border:1px solid var(--paper-line);border-radius:20px;overflow:hidden}
.inc-cell{
  padding:2.4rem 1.9rem;border-right:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line);
  display:flex;flex-direction:column;gap:.9rem;transition:background .4s;
}
.inc-cell:nth-child(4n){border-right:none}
.inc-cell:nth-child(n+5){border-bottom:none}
.inc-cell:hover{background:rgba(247,242,231,.05)}
.inc-cell .ico{color:var(--gold);display:flex}
.inc-cell h3{font-family:'Inter',sans-serif;font-weight:440;font-size:1.12rem}
.inc-cell p{font-size:.84rem;color:rgba(247,242,231,.65)}

/* ---------- gallery ---------- */
.gallery{padding:8rem 0 9rem;background:var(--paper-2)}
.gal-cols{columns:3;column-gap:1.2rem;margin-top:4rem}
.gal-item{
  break-inside:avoid;margin-bottom:1.2rem;border-radius:14px;overflow:hidden;position:relative;cursor:zoom-in;
}
.gal-item img{width:100%;transition:transform .8s var(--ease)}
.gal-item:hover img{transform:scale(1.045)}
.gal-item .cap{
  position:absolute;inset:auto 0 0 0;padding:2.2rem 1.1rem .9rem;
  background:linear-gradient(to top,rgba(24,28,19,.72),transparent);
  color:var(--paper);font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;
  opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s var(--ease);
}
.gal-item:hover .cap{opacity:1;transform:none}
.lightbox{
  position:fixed;inset:0;z-index:200;background:rgba(24,28,19,.94);
  display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.2rem;
  opacity:0;pointer-events:none;transition:opacity .35s;padding:4vh 4vw;
}
.lightbox.open{opacity:1;pointer-events:auto}
.lightbox img{max-width:92vw;max-height:82vh;border-radius:10px;object-fit:contain}
.lightbox .lb-cap{color:var(--paper);font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}
.lb-close{position:absolute;top:2rem;right:2.4rem;background:none;border:none;color:var(--paper);font-size:2rem;cursor:pointer;line-height:1}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(247,242,231,.1);border:1px solid rgba(247,242,231,.3);color:var(--paper);width:3rem;height:3rem;border-radius:50%;cursor:pointer;font-size:1.1rem;transition:background .3s}
.lb-nav:hover{background:rgba(247,242,231,.22)}
.lb-prev{left:2rem}.lb-next{right:2rem}

/* ---------- host ---------- */
.host{padding:9rem 0}
.host-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:5.5rem;align-items:start}
.host-photo{position:relative}
.host-photo img{border-radius:18px;width:100%;aspect-ratio:1;object-fit:cover;box-shadow:var(--shadow)}
.host-badge{
  position:absolute;right:-1.4rem;bottom:-1.4rem;background:var(--terra);color:var(--paper);
  border-radius:14px;padding:1rem 1.4rem;font-family:'Inter',sans-serif;font-size:.95rem;font-style:italic;
  box-shadow:var(--shadow);max-width:15rem;
}
.host-name{margin-top:2.2rem}
.host-name h3{font-family:'Inter',sans-serif;font-weight:480;font-size:1.5rem}
.host-name .role{font-size:.88rem;color:var(--ink-soft)}
.host-name a{display:inline-flex;align-items:center;gap:.5rem;font-size:.83rem;font-weight:600;color:var(--terra);text-decoration:none;margin-top:.6rem}
.host-name a:hover{text-decoration:underline}
.host-copy p{color:var(--ink-soft);margin-top:1.3rem;max-width:56ch}
.host-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.8rem}
.hs{border:1px solid var(--line);border-radius:14px;padding:1.4rem 1.2rem;background:var(--cream)}
.hs .n{font-family:'Inter',sans-serif;font-size:2.2rem;font-weight:420;color:var(--terra);line-height:1}
.hs .l{font-size:.76rem;color:var(--ink-soft);margin-top:.4rem}
.press-quote{
  margin-top:2.8rem;border-left:3px solid var(--terra);padding:1.2rem 1.6rem;background:var(--cream);
  border-radius:0 14px 14px 0;
}
.press-quote .src{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft)}
.press-quote blockquote{font-family:'Inter',sans-serif;font-style:italic;font-size:1.15rem;margin:.5rem 0}
.press-quote a{font-size:.8rem;font-weight:600;color:var(--terra);text-decoration:none}
.press-quote a:hover{text-decoration:underline}

.test-note{margin-top:1.6rem;font-family:'Inter',sans-serif;font-style:italic;color:var(--ink-soft);font-size:1.02rem}

/* ---------- pricing ---------- */
.pricing{padding:8.5rem 0 9rem}
.pricing-head{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:end}
.eb-note{
  display:inline-flex;align-items:center;gap:.7rem;background:rgba(193,154,63,.16);
  border:1px solid rgba(193,154,63,.5);color:var(--gold);border-radius:100px;
  padding:.6rem 1.3rem;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
}
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;margin-top:4rem}
.price-card{
  border:1px solid var(--paper-line);border-radius:22px;padding:2.8rem 2.6rem;
  display:flex;flex-direction:column;gap:1.1rem;position:relative;background:rgba(247,242,231,.03);
  transition:transform .4s var(--ease);
}
.price-card:hover{transform:translateY(-6px)}
.price-card.hi{background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}
.pc-tag{
  position:absolute;top:-0.85rem;left:2.4rem;background:var(--terra);color:var(--paper);
  font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;
  border-radius:100px;padding:.4rem 1rem;
}
.pc-tag.gold{background:var(--gold);color:var(--ink)}
.price-card h3{font-family:'Inter',sans-serif;font-weight:460;font-size:1.7rem;margin-top:.4rem}
.price-card .desc{font-size:.92rem;color:rgba(247,242,231,.68);max-width:34ch}
.price-card.hi .desc{color:var(--ink-soft)}
.price-line{display:flex;align-items:baseline;gap:.5rem;margin-top:1rem}
.price-line .cur{font-family:'Inter',sans-serif;font-size:1.6rem}
.price-line .amt{font-family:'Inter',sans-serif;font-size:3.6rem;font-weight:450;letter-spacing:-.02em;line-height:1}
.price-line .per{font-size:.8rem;color:rgba(247,242,231,.6)}
.price-card.hi .price-line .per{color:var(--ink-soft)}
.price-after{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;letter-spacing:.1em;color:rgba(247,242,231,.55)}
.price-card.hi .price-after{color:var(--ink-soft)}
.price-after s{opacity:.9}
.price-card .btn{margin-top:1.6rem;justify-content:center}
.pc-feats{list-style:none;margin-top:1.4rem;display:flex;flex-direction:column;gap:.55rem}
.pc-feats li{display:flex;gap:.7rem;font-size:.87rem;color:rgba(247,242,231,.75);align-items:baseline}
.price-card.hi .pc-feats li{color:var(--ink-soft)}
.pc-feats li::before{content:"✓";color:var(--gold);font-weight:700;flex:none}
.price-card.hi .pc-feats li::before{color:var(--terra)}
.pricing-foot{margin-top:2.6rem;font-size:.85rem;color:rgba(247,242,231,.55);max-width:70ch}

/* ---------- fit ---------- */
.fit{padding:8rem 0}
.fit-inner{max-width:820px;margin:0 auto;text-align:center}
.fit-inner h2{margin:0 auto}
.fit-inner .lede{margin:1.6rem auto 0}
.fit-tags{display:flex;justify-content:center;gap:.8rem;flex-wrap:wrap;margin-top:2.6rem}
.fit-tags span{
  border:1.5px solid var(--line);border-radius:100px;padding:.65rem 1.4rem;
  font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);
  background:var(--cream);
}

/* ---------- requirements ---------- */
.req{margin:3.2rem auto 0;max-width:720px;text-align:left;border-radius:20px;background:var(--ink);color:var(--paper);padding:2.2rem 2.4rem;box-shadow:var(--shadow)}
.req .k{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:.8rem}
.req .k::after{content:"";height:1px;background:var(--paper-line);flex:1}
.req-item{display:grid;grid-template-columns:2.2rem 1fr;gap:1rem;padding:1.15rem 0;border-bottom:1px solid var(--paper-line);align-items:baseline}
.req-item:last-child{border-bottom:none;padding-bottom:.2rem}
.req-item .no{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;color:var(--gold)}
.req-item h4{font-family:'Inter',sans-serif;font-weight:460;font-size:1.15rem;letter-spacing:-.01em}
.req-item p{font-size:.87rem;color:rgba(247,242,231,.68);margin-top:.25rem}
@media(max-width:820px){.req{padding:1.6rem 1.4rem}}

/* ---------- final cta ---------- */
.final{padding:9rem 0;color:var(--paper);overflow:hidden}
.final-bg{position:absolute;inset:0}
.final-bg img{width:100%;height:100%;object-fit:cover}
.final-bg::after{content:"";position:absolute;inset:0;background:rgba(24,28,19,.78)}
.final .wrap{position:relative;z-index:1;text-align:center}
.final h2{margin:0 auto;max-width:22ch}
.final .lede{margin:1.6rem auto 0;color:rgba(247,242,231,.8)}
.final .btn{margin-top:2.8rem}

/* ---------- apply ---------- */
.apply{padding:8.5rem 0 9rem;background:var(--paper-2)}
.apply-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem;align-items:start}
.apply-side{position:sticky;top:7rem}
.apply-side .facts{margin-top:2.6rem;display:flex;flex-direction:column;gap:1.1rem}
.apply-side .fact{display:flex;gap:1rem;align-items:baseline;font-size:.92rem;color:var(--ink-soft)}
.apply-side .fact b{color:var(--ink);font-weight:600}
.apply-side .fact::before{content:"–";color:var(--terra)}
form{background:var(--cream);border:1px solid var(--line-soft);border-radius:22px;padding:2.8rem;box-shadow:var(--shadow)}
fieldset{border:none;margin-bottom:2.2rem}
legend{
  font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--terra);margin-bottom:1.2rem;display:flex;align-items:center;gap:.8rem;width:100%;
}
legend::after{content:"";height:1px;background:var(--line-soft);flex:1}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.f-field{margin-bottom:1rem;display:flex;flex-direction:column;gap:.4rem}
.f-field label{font-size:.8rem;font-weight:600}
.f-field label .opt{font-weight:400;color:var(--ink-soft)}
input,select,textarea{
  font-family:'Inter',sans-serif;font-size:.92rem;color:var(--ink);
  padding:.85rem 1rem;border:1.5px solid var(--line);border-radius:10px;background:#fff;
  transition:border-color .3s,box-shadow .3s;width:100%;
}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--terra);box-shadow:0 0 0 3px rgba(188,81,39,.14)}
textarea{resize:vertical;min-height:96px}
.submit-row{display:flex;flex-direction:column;gap:.9rem;align-items:flex-start}
.submit-note{font-size:.8rem;color:var(--ink-soft)}
.form-success{display:none;text-align:center;padding:3rem 1rem}
.form-success.show{display:block}
.form-success .ok{width:4rem;height:4rem;border-radius:50%;background:var(--olive);color:var(--paper);display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin:0 auto 1.4rem}
.form-success h3{font-family:'Inter',sans-serif;font-weight:460;font-size:1.6rem}
.form-success p{color:var(--ink-soft);margin-top:.7rem}

/* ---------- footer ---------- */
footer{background:var(--ink);color:var(--paper);padding:4.5rem 0 3rem}
.foot-grid{display:flex;justify-content:space-between;gap:3rem;flex-wrap:wrap;align-items:flex-start}
.foot-brand .serif{font-size:1.3rem}
.foot-brand p{font-size:.82rem;color:rgba(247,242,231,.55);margin-top:.6rem;max-width:30ch}
.foot-col{display:flex;flex-direction:column;gap:.55rem}
.foot-col .k{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(247,242,231,.5);margin-bottom:.4rem}
.foot-col a{font-size:.87rem;text-decoration:none;color:rgba(247,242,231,.8);transition:color .3s}
.foot-col a:hover{color:var(--gold)}
.foot-base{border-top:1px solid var(--paper-line);margin-top:3.5rem;padding-top:1.6rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.75rem;color:rgba(247,242,231,.45)}

/* ---------- responsive ---------- */
@media(max-width:1024px){
  .rhythm-track{grid-template-columns:repeat(3,1fr)}
  .out-grid{grid-template-columns:repeat(2,1fr)}
  .inc-grid{grid-template-columns:repeat(2,1fr)}
  .inc-cell:nth-child(4n){border-right:1px solid var(--paper-line)}
  .inc-cell:nth-child(2n){border-right:none}
  .inc-cell:nth-child(n+5){border-bottom:1px solid var(--paper-line)}
  .inc-cell:nth-child(n+7){border-bottom:none}
  .gal-cols{columns:2}
  .why-item{grid-template-columns:3.5rem 1fr;gap:1.2rem}
  .why-item p{grid-column:2}
}
@media(max-width:820px){
  .nav-links{display:none}
  .burger{display:block}
  .intro-grid,.host-grid,.apply-grid,.pricing-head{grid-template-columns:1fr;gap:3rem}
  .intro-card{left:1rem;bottom:1rem}
  .hero-meta{grid-template-columns:repeat(3,1fr);row-gap:1.4rem}
  .scroll-hint{display:none}
  .price-grid{grid-template-columns:1fr}
  .rhythm-track{grid-template-columns:1fr 1fr}
  .apply-side{position:static}
  .day-head{grid-template-columns:4.5rem 1fr auto;padding:1.2rem 1.3rem}
  .day-body-inner{grid-template-columns:1fr;padding:.2rem 1.3rem 1.6rem}
  .day-items{grid-column:1}
  form{padding:1.8rem 1.4rem}
  .f-row{grid-template-columns:1fr}
  .host-badge{right:.6rem;bottom:-1.6rem}
}
@media(max-width:820px){
  input,select,textarea{font-size:16px}
  .host-photo img{max-width:340px;margin:0 auto}
  .host-badge{position:static;margin:1rem auto 0;max-width:340px}
}
@media(max-width:560px){
  .hero-date{font-size:.58rem;letter-spacing:.13em;padding:.5rem 1rem;flex-wrap:wrap;row-gap:.15rem}
  .hero-meta{padding:1.2rem 6vw 1.4rem;gap:1rem}
  .hm .v{font-size:.98rem}
  .hm .k{font-size:.56rem}
  .day-head{grid-template-columns:3.6rem 1fr auto;gap:.9rem}
  .day-date .dow{font-size:.54rem;letter-spacing:.1em;white-space:nowrap}
  .day-date .dnum{font-size:1.9rem}
  .day-title h3{font-size:1.18rem}
  .day-toggle{width:2.2rem;height:2.2rem}
  .ticker span{font-size:.66rem}
  .intro-card{padding:.9rem 1.1rem}
  .intro-card .num{font-size:1.6rem}
  footer{padding-bottom:calc(3rem + env(safe-area-inset-bottom))}

  .rhythm-track,.out-grid{grid-template-columns:1fr}
  .inc-grid{grid-template-columns:1fr}
  .inc-cell{border-right:none !important;border-bottom:1px solid var(--paper-line) !important}
  .inc-cell:last-child{border-bottom:none !important}
  .gal-cols{columns:1}
  .hero-ctas .btn{width:100%;justify-content:center}
}

/* =====================================================================
   APPLIED STYLE LAYER
   Paper / ink / one orange. Inter 900 uppercase display, JetBrains Mono
   labels, square corners, hairline grids, colour-only hovers.
   ===================================================================== */
body{background:var(--paper);color:var(--ink);counter-reset:sec}
::selection{background:var(--accent);color:#fff}
*,*::before,*::after{border-radius:0 !important}

/* type */
h2{font-weight:900;text-transform:uppercase;letter-spacing:-.05em;line-height:.9;font-size:clamp(2.4rem,5.6vw,4.5rem);max-width:17ch}
h2 em,.hero h1 em{font-style:normal;color:var(--accent)}
.dark h2 em{color:var(--accent)}
.lede{color:var(--ink-soft);font-size:clamp(1rem,1.4vw,1.125rem);line-height:1.625}
.dark .lede{color:var(--on-ink-muted)}
.serif{font-family:'Inter',sans-serif}

/* eyebrows: numbered mono labels, 01 / LABEL */
.eyebrow{font-size:.75rem;letter-spacing:.1em;gap:0;color:var(--terra)}
.eyebrow::before{content:counter(sec,decimal-leading-zero) "\00a0/\00a0";counter-increment:sec;width:auto;height:auto;background:none;flex:none}
.dark .eyebrow{color:var(--accent)}
.dark .eyebrow::before{background:none}

/* buttons: square, bold, colour-only hover */
.btn{border-radius:0;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;padding:1.05rem 2rem;transition:background .2s,color .2s,box-shadow .2s}
.btn:hover,.btn-terra:hover,.btn-ghost:hover,.btn-paper:hover{transform:none;box-shadow:none}
.btn-terra{background:var(--terra);color:#fff}
.btn-terra:hover{background:var(--ink);color:var(--paper)}
.btn-ghost{box-shadow:inset 0 0 0 1px currentColor}
.btn-ghost:hover{background:var(--paper);color:var(--ink)}
.btn-paper{background:var(--paper);color:var(--ink)}
.btn-paper:hover{background:var(--terra);color:#fff}

/* motion: one entrance */
.rv{transform:translateY(30px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv-d1{transition-delay:.1s}.rv-d2{transition-delay:.2s}.rv-d3{transition-delay:.3s}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  .ticker-track,.hero-date .dot,.scroll-hint span{animation:none}
  html{scroll-behavior:auto}
}

/* nav + wordmark */
nav.solid{background:oklch(.968 .012 85 / .8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}
.nav-logo{font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:.875rem;letter-spacing:-.05em;text-transform:uppercase}
.nav-logo .mono{font-weight:400;font-size:.625rem;letter-spacing:.1em;opacity:.7}
.nav-links a{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:400}
.nav-links a:hover{color:var(--accent);opacity:1}
nav.solid .nav-links a:hover{color:var(--terra)}
.nav-cta{background:var(--terra);color:#fff !important;padding:.7rem 1.2rem;font-weight:700 !important}
.nav-cta:hover{background:var(--ink);color:var(--paper) !important}
.mobile-menu a{font-weight:900;text-transform:uppercase;letter-spacing:-.05em;font-size:2.4rem}

/* hero */
.hero-media::after{background:linear-gradient(to bottom,oklch(.22 .008 60 / .45) 0%,oklch(.22 .008 60 / .2) 40%,oklch(.22 .008 60 / .85) 100%)}
.hero-date{border:1px solid oklch(.968 .012 85 / .4);background:oklch(.22 .008 60 / .35);font-size:.75rem;letter-spacing:.1em;padding:.6rem 1rem}
.hero-date .dot{background:var(--accent)}
.hero h1{font-weight:900;text-transform:uppercase;letter-spacing:-.05em;line-height:.88;font-size:clamp(3rem,8.4vw,7.5rem);max-width:12ch}
.hero-sub{font-weight:500;line-height:1.35;font-size:clamp(1.1rem,1.7vw,1.5rem);max-width:46ch;color:oklch(.968 .012 85 / .9)}
.hero-meta{border-top:1px solid oklch(.968 .012 85 / .2)}
.hm .k,.scroll-hint{letter-spacing:.1em;color:oklch(.968 .012 85 / .7)}
.hm .v{font-weight:900;text-transform:uppercase;letter-spacing:-.03em;font-size:1.3rem}

/* ticker: urgency bar */
.ticker{background:var(--terra);color:#fff}
.ticker span{letter-spacing:.1em}
.ticker span::after{content:"/";font-size:.75rem;opacity:.6}

/* intro */
.intro-copy p{color:var(--ink-soft)}
.intro-media .main{box-shadow:none;outline:1px solid var(--line);outline-offset:0}
.intro-media .main img{aspect-ratio:4/5}
.intro-card{background:var(--paper);box-shadow:none;border:1px solid var(--line-strong)}
.intro-card .num{font-weight:900;letter-spacing:-.05em;color:var(--terra)}
.press .k{letter-spacing:.1em}
.press .gva{font-style:normal}

/* film */
.film-frame{box-shadow:none;outline:1px solid var(--line)}
.film-cap{letter-spacing:.1em}

/* why (ink) */
.why-list{border-top:1px solid var(--paper-line)}
.why-item{border-bottom:1px solid var(--paper-line)}
.why-item:hover{padding-left:0}
.why-item .no{font-size:1.9rem;line-height:1;color:var(--accent)}
.why-item h3{font-weight:700;text-transform:uppercase;letter-spacing:-.025em;font-size:clamp(1.3rem,2.2vw,1.9rem);line-height:1.1}
.why-item h3:hover{color:var(--accent)}
.why-item p{color:var(--on-ink-muted)}

/* rhythm: hairline grid */
.rhythm-track{gap:1px;background:var(--line);border:1px solid var(--line)}
.rh-card{background:var(--paper);border:none;transition:background .2s}
.rh-card:hover{transform:none;box-shadow:none;background:var(--paper-2)}
.rh-card .t{letter-spacing:.1em;color:var(--terra)}
.rh-card h3{font-weight:700;text-transform:uppercase;letter-spacing:-.025em;font-size:1.25rem;line-height:1.1}
.rh-card .ico{color:var(--ink)}

/* program: stacked hairline rows */
.days{gap:0;border-top:1px solid var(--line-strong)}
.day{background:transparent;border:none;border-bottom:1px solid var(--line-strong);transition:background .2s}
.day.open,.day:hover{box-shadow:none;background:var(--paper)}
.day-date .dow{letter-spacing:.1em}
.day-date .dnum{font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:400;font-size:1.9rem;color:var(--ink)}
.day-title h3{font-weight:700;text-transform:uppercase;letter-spacing:-.025em;line-height:1.1}
.day-toggle{border:1px solid var(--line-strong)}
.day.open .day-toggle{background:var(--terra);border-color:var(--terra);color:#fff}
.day-items li::before{content:"→";color:var(--terra)}
.day-items li.ws{background:var(--ink);color:var(--paper)}
.day-items li.ws::before{content:none}
.day-items li.ws .wtag{letter-spacing:.1em;color:var(--accent)}

/* outcomes: hairline grid */
.out-grid{gap:1px;background:var(--line);border:1px solid var(--line)}
.out-card{border:none;background:var(--paper);transition:background .2s}
.out-card:hover{transform:none;box-shadow:none;background:var(--paper-2)}
.out-card .no{font-size:.75rem;letter-spacing:.1em;color:var(--terra)}
.out-card h3{font-weight:700;text-transform:uppercase;letter-spacing:-.025em;font-size:1.45rem;line-height:1.1}

/* included (ink) */
.inc-grid{border:1px solid var(--paper-line)}
.inc-cell .ico{color:var(--accent)}
.inc-cell h3{font-weight:700;text-transform:uppercase;letter-spacing:-.02em;font-size:1.05rem}
.inc-cell p{color:var(--on-ink-muted)}

/* gallery */
.gal-item{outline:1px solid var(--line)}
.gal-item .cap{background:linear-gradient(to top,oklch(.22 .008 60 / .8),transparent);letter-spacing:.1em}
.lightbox{background:oklch(.22 .008 60 / .95)}
.lightbox .lb-cap{letter-spacing:.1em}

/* host */
.host-photo img{box-shadow:none;outline:1px solid var(--line)}
.host-badge{background:var(--terra);color:#fff;font-style:normal;font-weight:700;box-shadow:none;font-size:.95rem;line-height:1.35}
.host-name h3{font-weight:700;text-transform:uppercase;letter-spacing:-.025em}
.host-name a,.press-quote a{color:var(--terra)}
.host-stats{gap:1px;background:var(--line);border:1px solid var(--line)}
.hs{border:none;background:var(--paper)}
.hs .n{font-weight:900;letter-spacing:-.05em;color:var(--ink)}
.hs .l{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}
.press-quote{border:1px solid var(--line);background:var(--paper)}
.press-quote .src{letter-spacing:.1em}
.press-quote blockquote{font-style:normal;font-weight:500;font-size:1.3rem;line-height:1.3}
.test-note{font-style:normal}

/* pricing (ink) */
.eb-note{background:transparent;border:1px solid var(--accent);color:var(--paper);letter-spacing:.1em}
.price-grid{gap:1px;background:var(--paper-line);border:1px solid var(--paper-line)}
.price-card{border:none;background:var(--ink)}
.price-card:hover{transform:none}
.price-card.hi{background:var(--paper);box-shadow:none}
.pc-tag{background:var(--terra);color:#fff;letter-spacing:.1em}
.pc-tag.gold{background:var(--accent);color:var(--ink)}
.price-card h3{font-weight:900;text-transform:uppercase;letter-spacing:-.05em;font-size:2.2rem}
.price-card .desc,.price-line .per,.price-after,.pc-feats li,.pricing-foot{color:var(--on-ink-muted)}
.price-line .cur{font-weight:700}
.price-line .amt{font-weight:900;letter-spacing:-.05em}
.pc-feats li::before{content:"→";color:var(--accent);font-weight:400}
.price-card.hi .pc-feats li::before{color:var(--terra)}

/* fit */
.fit-tags span{border:1px solid var(--line-strong);background:transparent;letter-spacing:.1em;color:var(--ink)}
.req{box-shadow:none}
.req .k,.req-item .no{color:var(--accent);letter-spacing:.1em}
.req-item h4{font-weight:700;text-transform:uppercase;letter-spacing:-.02em}
.req-item p{color:var(--on-ink-muted)}

/* final: full accent band */
.final{background:var(--terra);color:#fff}
.final-bg{display:none}
.final h2{font-size:clamp(2.6rem,7vw,6rem);line-height:.95;max-width:18ch}
.final h2 em{color:var(--ink)}
.final .lede{color:#fff}
.final .btn-terra{background:var(--ink);color:var(--paper)}
.final .btn-terra:hover{background:var(--paper);color:var(--ink)}

/* apply form */
.apply-side .fact::before{content:"→"}
form{background:var(--paper);border:1px solid var(--line-strong);box-shadow:none}
legend{letter-spacing:.1em;color:var(--terra)}
legend::after{background:var(--line)}
.f-field label{font-weight:700}
input,select,textarea{border:1px solid var(--line-strong);background:#fff}
input:focus,select:focus,textarea:focus{border-color:var(--terra);box-shadow:0 0 0 2px oklch(.55 .18 45 / .25)}
.form-success .ok{background:var(--terra)}
.form-success h3{font-weight:900;text-transform:uppercase;letter-spacing:-.05em}

/* footer */
.foot-brand .serif{font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:1rem;letter-spacing:-.05em;text-transform:uppercase}
.foot-brand p{color:var(--on-ink-muted)}
.foot-col .k{letter-spacing:.1em;color:var(--on-ink-muted)}
.foot-col a{color:var(--on-ink-dim);transition:color .2s}
.foot-col a:hover{color:var(--accent)}
.foot-base{color:var(--on-ink-muted);font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}

@media(max-width:560px){
  .hero h1{font-size:clamp(2.6rem,12vw,3.6rem)}
  .hm .v{font-size:.95rem}
  .day-date .dnum{font-size:1.5rem}
  .price-card h3{font-size:1.8rem}
}
.hero-media video,.hero-media img{position:absolute;inset:0;height:100%}
.hero h1{font-size:clamp(3rem,7.2vw,6.6rem)}
.hero-inner{padding-top:8rem}
.hero-meta{margin-top:3.5rem}
.hero{position:relative}
.day.open .day-toggle{transform:none;font-size:0}
.day.open .day-toggle::after{content:"−";font-size:1rem}

/* ===== from Couples Edition, in Applied style ===== */
/* hero date card */
.hero-date{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.45rem;border:none;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;margin-bottom:2rem;letter-spacing:0;font-size:inherit}
.hero-date .dc-line{font-family:'Inter',sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.03em;font-size:clamp(1.3rem,2.4vw,1.9rem);line-height:1;text-shadow:0 2px 16px rgba(0,0,0,.35)}
.hero-date .dc-year{color:inherit}
.hero-date .dc-sub{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:oklch(.968 .012 85 / .88)}
@media(max-width:820px){.hero-media::after{background:linear-gradient(to bottom,oklch(.22 .008 60 / .6) 0%,oklch(.22 .008 60 / .45) 38%,oklch(.22 .008 60 / .88) 100%)}}

/* photo-journal program */
.jgrid{margin-top:4rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-strong);border:1px solid var(--line-strong)}
.jcard{background:var(--paper);display:flex;flex-direction:column;transition:background .2s}
.jcard:hover{background:#fff}
.j-img{position:relative;aspect-ratio:4/3;overflow:hidden;margin:0}
.j-img img{width:100%;height:100%;object-fit:cover}
.j-badge{position:absolute;left:0;bottom:0;background:var(--ink);color:var(--paper);padding:.5rem .75rem .55rem;display:flex;flex-direction:column;line-height:1.05}
.j-badge .dow{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.j-badge .dnum{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:1.5rem;font-weight:400}
.j-body{padding:1.3rem 1.3rem 1.6rem;display:flex;flex-direction:column;flex:1}
.j-body h3{font-weight:700;text-transform:uppercase;letter-spacing:-.025em;font-size:1.2rem;line-height:1.1}
.j-sub{font-size:.82rem;color:var(--ink-soft);margin-top:.3rem}
.j-items{list-style:none;margin-top:1.1rem;display:flex;flex-direction:column;gap:.5rem}
.j-items li{font-size:.86rem;color:var(--ink-soft);line-height:1.4;display:flex;gap:.6rem}
.j-items li::before{content:"→";color:var(--terra);flex:none}
.j-items li.ws{display:block;background:var(--ink);color:var(--paper);padding:.7rem .85rem;margin:.1rem 0 .3rem}
.j-items li.ws::before{content:none}
.j-items .tt{display:block;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.2rem}

/* gallery: captions on touch, collapse on phones */
.gal-more{display:none;margin-top:1.4rem;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:none;border:1px solid var(--line-strong);padding:.95rem 1.6rem;cursor:pointer;width:100%;transition:background .2s,color .2s}
.gal-more:hover{background:var(--ink);color:var(--paper)}
@media(hover:none){.gal-item .cap{opacity:1;transform:none}}

@media(max-width:1024px){.jgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){
  .jgrid{grid-template-columns:1fr}
  .j-img{aspect-ratio:16/10}
  .hero-date .dc-sub{font-size:.64rem}
  .gal-item:nth-child(n+9){display:none}
  .gal-more{display:block}
}
.press{align-items:flex-start}
.inc-cell .ico-logo{height:26px;align-items:center}.inc-cell .ico-logo img{height:26px;width:auto;display:block}
.prog-foot{margin-top:1.6rem;font-size:.85rem;color:var(--ink-soft)}
.intro-grid{align-items:start}
.intro-media{margin-top:5.2rem}
@media(max-width:820px){.intro-media{margin-top:0}}
.intro-card{border:1px solid var(--ink)}
.host-copy p strong{color:var(--ink);font-weight:700}
.price-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:1024px){.price-grid{grid-template-columns:1fr}}
.price-card{padding:2.6rem 2.2rem}
@media(max-width:1024px){.pc-tag{top:1.4rem;left:auto;right:1.4rem}}
@media(max-width:420px){.hs{padding:1.1rem .8rem}.hs .n{font-size:1.65rem}.hs .l{font-size:.58rem;letter-spacing:.06em}}
@media(max-width:820px){.foot-col a{padding:.45rem 0;display:inline-block}.host-name a,.press-quote a{padding:.4rem 0;display:inline-block}}

/* WHO ELSE IS COMING */
.att-soon h3,.att-soon .att-role{color:var(--ink-soft)}
.att-soon .att-photo.ph{color:oklch(.22 .008 60 / .35)}
.att-cta{text-decoration:none;color:inherit;display:block;transition:background .3s var(--ease)}
.att-cta .att-photo.ph{background:var(--terra);color:#fff;font-size:3rem;font-weight:400}
.att-cta .att-link{display:inline-flex;font-size:.8rem;font-weight:600;color:var(--terra);margin-top:.8rem}
.att-cta:hover .att-link{text-decoration:underline}
@media (max-width:520px){.att-cta .att-link{font-size:.74rem;margin-top:.5rem}}

.attendees{padding:0 0 9rem}
.att-head{max-width:760px}
.att-head p{color:var(--ink-soft);margin-top:1.3rem;max-width:56ch}
.att-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:3.5rem}
.att{background:var(--paper);padding:1.8rem 1.6rem 2rem}
.att-photo{width:100%;aspect-ratio:1;object-fit:cover;display:block;margin-bottom:1.4rem}
.att-photo.ph{display:flex;align-items:center;justify-content:center;background:oklch(.22 .008 60 / .06);color:var(--ink-soft);font-size:2rem;font-weight:700;letter-spacing:-.02em}
.att h3{font-family:'Inter',sans-serif;font-weight:700;font-size:1.1rem;text-transform:uppercase;letter-spacing:-.02em}
.att .att-role{font-size:.86rem;color:var(--ink-soft);margin-top:.3rem}
.att .att-note{font-size:.86rem;color:var(--ink);margin-top:.9rem;line-height:1.5}
.att a{display:inline-flex;font-size:.8rem;font-weight:600;color:var(--terra);text-decoration:none;margin-top:.8rem}
.att a:hover{text-decoration:underline}
.att-more{margin-top:1.6rem;font-size:.9rem;color:var(--ink-soft)}
@media (max-width:900px){.att-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.attendees{padding-bottom:6rem}.att-grid{margin-top:2.4rem}.att{padding:1rem 1rem 1.3rem}.att-photo{margin-bottom:.9rem}.att h3{font-size:.95rem}.att .att-role,.att .att-note{font-size:.78rem}.att .att-note{margin-top:.5rem}.att a{font-size:.74rem;margin-top:.5rem}}

/* ---------- multi-page additions ---------- */
section[id],header[id]{scroll-margin-top:5rem}
.page-hero{position:relative;min-height:56svh;display:flex;align-items:flex-end;color:var(--paper);overflow:hidden;padding:9rem 0 4rem}
.page-hero-bg{position:absolute;inset:0;z-index:0}
.page-hero-bg picture{display:block;width:100%;height:100%}
.page-hero-bg img{width:100%;height:100%;object-fit:cover}
.page-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,oklch(.22 .008 60 / .5) 0%,oklch(.22 .008 60 / .25) 45%,oklch(.22 .008 60 / .82) 100%)}
.page-hero .wrap{position:relative;z-index:1;width:100%}
.page-hero h1{font-family:'Inter',sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.05em;line-height:.9;font-size:clamp(2.8rem,8vw,6.5rem);max-width:14ch}
.page-hero .ph-meta{margin-top:1.4rem;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:oklch(.968 .012 85 / .8)}
.pg-apply .page-hero{min-height:42svh}
.nav-links a[aria-current="page"]:not(.nav-cta){opacity:1;text-decoration:underline;text-underline-offset:.45em;text-decoration-thickness:1px}
.mobile-menu a[aria-current="page"]{color:var(--accent)}
@media(max-width:700px){.page-hero{min-height:44svh;padding:7rem 0 2.6rem}.pg-apply .page-hero{min-height:34svh}}

/* ---------- pricing page v2 ---------- */
.page-hero-sm{min-height:38svh}
@media(max-width:700px){.page-hero-sm{min-height:30svh;padding-bottom:2rem}}
.pr{padding:6rem 0 7rem}
.pr-head{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:end}
.pr-head-side p{color:var(--ink-soft);font-size:1.05rem;max-width:36ch}
.pr-note{display:inline-block;margin-top:1.2rem;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--terra);border:1px solid var(--terra);padding:.5rem .8rem}
.pr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-strong);border:1px solid var(--line-strong);margin-top:3.5rem}
.pr-card{background:var(--paper);padding:2.4rem 2.2rem 2.2rem;display:flex;flex-direction:column}
.pr-card.pr-hi{background:var(--ink);color:var(--paper)}
.pr-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.pr-top h3{font-family:'Inter',sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.05em;font-size:1.9rem;line-height:1}
.pr-tag{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;background:var(--accent);color:#fff;padding:.35rem .6rem;white-space:nowrap}
.pr-room{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--terra);margin-top:.9rem}
.pr-hi .pr-room{color:var(--accent)}
.pr-price{display:flex;align-items:baseline;gap:.35rem;margin-top:2rem}
.pr-price .cur{font-size:1.5rem;font-weight:700}
.pr-price .amt{font-size:clamp(3rem,4.6vw,4.2rem);font-weight:900;letter-spacing:-.05em;line-height:.95}
.pr-per{font-size:.82rem;color:var(--ink-soft);margin-top:.5rem}
.pr-total{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.7rem;letter-spacing:.06em;color:var(--ink-soft);margin-top:.35rem;padding-bottom:1.6rem;border-bottom:1px solid var(--line)}
.pr-hi .pr-per,.pr-hi .pr-total{color:var(--on-ink-muted)}
.pr-hi .pr-total{border-bottom-color:var(--paper-line)}
.pr-desc{font-size:.92rem;color:var(--ink-soft);margin-top:1.4rem;max-width:36ch}
.pr-hi .pr-desc{color:var(--on-ink-dim)}
.pr-extra{list-style:none;margin-top:1rem;display:flex;flex-direction:column;gap:.45rem}
.pr-extra li{display:flex;gap:.6rem;font-size:.87rem;align-items:baseline}
.pr-extra li::before{content:"+";color:var(--terra);font-weight:700;flex:none}
.pr-hi .pr-extra li::before{color:var(--accent)}
.pr-btn{margin-top:auto;justify-content:center;width:100%;background:var(--ink);color:var(--paper)}
.pr-card .pr-btn{margin-top:2rem}
.pr-card{justify-content:flex-start}
.pr-card .pr-btn:hover{background:var(--terra)}
.pr-hi .pr-btn{background:var(--terra)}
.pr-hi .pr-btn:hover{background:var(--accent)}
.pr-desc+.pr-btn{margin-top:auto}
.pr-card>.pr-btn{margin-top:auto}
.pr-card>.pr-desc,.pr-card>.pr-extra{margin-bottom:0}
.pr-card>*:nth-last-child(2){margin-bottom:2rem}

.pr-inc{padding:6.5rem 0 6rem}
.pr-inc-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;align-items:start}
.pr-lists{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem}
.pr-k{display:block;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--on-ink-muted);padding-bottom:.9rem;border-bottom:1px solid var(--paper-line);margin-bottom:.4rem}
.pr-yes,.pr-no{list-style:none}
.pr-yes li,.pr-no li{display:flex;gap:.8rem;padding:.7rem 0;border-bottom:1px solid var(--paper-line);font-size:.95rem;align-items:baseline}
.pr-yes li::before{content:"✓";color:var(--accent);font-weight:700;flex:none}
.pr-no li{color:var(--on-ink-muted)}
.pr-no li::before{content:"–";color:var(--on-ink-muted);flex:none}
.pr-foot{margin-top:3.5rem;font-size:.85rem;color:var(--on-ink-muted);max-width:70ch}

@media(max-width:1024px){
  .pr-grid{grid-template-columns:1fr}
  .pr-head,.pr-inc-grid{grid-template-columns:1fr;gap:1.6rem}
}
@media(max-width:700px){
  .pr{padding:3.5rem 0 4.5rem}
  .pr-grid{margin-top:2.2rem}
  .pr-card{padding:1.7rem 1.4rem 1.5rem}
  .pr-price{margin-top:1.2rem}
  .pr-total{padding-bottom:1.1rem}
  .pr-desc{margin-top:1rem}
  .pr-card>*:nth-last-child(2){margin-bottom:1.4rem}
  .pr-lists{grid-template-columns:1fr;gap:2rem}
  .pr-inc{padding:4.5rem 0 4rem}
}

/* ---------- closing banner v2 ---------- */
.final h2{max-width:none;font-size:clamp(2rem,3.9vw,3.6rem);line-height:1;text-wrap:balance}
.final h2>span{display:block;text-wrap:balance}
.final h2>span+span{margin-top:.15em}
@media(max-width:700px){.final h2{font-size:clamp(1.9rem,8.4vw,2.6rem)}}
.final h2 .kern-t{margin-left:-.09em}
@media(max-width:560px){.pg-sub .gal-item:nth-child(n+9){display:block}.pg-sub .gal-more{display:none}}

/* ---------- hero fits laptop screens ---------- */
@media(min-width:701px) and (max-height:940px){
  .hero-inner{padding-top:6rem}
  .hero-date{margin-bottom:1.3rem}
  .hero h1{font-size:clamp(2.8rem,min(8.4vw,10.5vh),7.5rem)}
  .hero-sub{margin-top:1.2rem}
  .hero-ctas{margin-top:1.6rem}
  .hero-meta{margin-top:2.2rem;padding-top:1rem;padding-bottom:1.1rem}
}
