:root{
  --bg:#0c0e10; --bg2:#111417; --panel:#161a1e; --line:rgba(255,255,255,.09);
  --text:#e7eaec; --muted:#98a1a8; --accent:#e8b250; --accent-ink:#1a1305;
  --r:12px; --wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.muted{color:var(--muted)} .small{font-size:.875rem}

/* nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(12,14,16,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;gap:28px;height:60px}
.brand{display:flex;flex-direction:column;line-height:1.05;text-decoration:none}
.brand-k{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.brand-n{font-weight:600;letter-spacing:.02em}
.links{display:flex;gap:22px;margin-left:auto}
.links a{color:var(--muted);text-decoration:none;font-size:.94rem}
.links a:hover{color:var(--text)}

/* buttons */
.btn{display:inline-block;padding:13px 22px;border-radius:9px;font-weight:600;text-decoration:none;border:1px solid transparent;transition:transform .15s,background .15s}
.btn-sm{padding:8px 16px;font-size:.9rem}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-primary:hover{background:#f0c06a;transform:translateY(-1px)}
.btn-ghost{border-color:rgba(255,255,255,.28);color:var(--text)}
.btn-disabled{cursor:default;opacity:.85}
.btn-disabled:hover{transform:none;background:var(--accent)}
.btn-ghost:hover{background:rgba(255,255,255,.08)}

/* hero */
.hero{position:relative;min-height:min(88vh,780px);display:flex;align-items:flex-end;overflow:hidden}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,14,16,.35) 0%,rgba(12,14,16,.2) 35%,rgba(12,14,16,.92) 100%),linear-gradient(90deg,rgba(12,14,16,.7),transparent 65%)}
.hero-in{position:relative;padding-top:120px;padding-bottom:48px}
.eyebrow{margin:0 0 10px;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:600}
h1{margin:0 0 14px;font-size:clamp(2.4rem,6vw,4.4rem);line-height:1.04;letter-spacing:-.02em;font-weight:700;max-width:14ch}
.lede{max-width:56ch;font-size:1.15rem;color:#cfd5d9;margin:0 0 26px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:44px}
.facts{list-style:none;margin:0;padding:22px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:12px 48px}
.facts b{display:block;font-size:1.5rem;font-weight:650}
.facts span{color:var(--muted);font-size:.85rem}

/* sections */
.section{padding:88px 0}
.section.alt{background:var(--bg2);border-block:1px solid var(--line)}
.section-head{max-width:680px;margin:0 0 40px}
h2{margin:0 0 12px;font-size:clamp(1.8rem,3.6vw,2.6rem);line-height:1.12;letter-spacing:-.015em}
.section-head p:not(.eyebrow){color:var(--muted);margin:0}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.card h3{margin:0 0 8px;font-size:1.08rem}
.card p{margin:0;color:var(--muted);font-size:.96rem}

/* shots */
.shot{display:block;padding:0;border:0;background:none;cursor:zoom-in;border-radius:var(--r);overflow:hidden;position:relative;color:inherit}
.shot img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/9;transition:transform .5s}
.shot:hover img{transform:scale(1.03)}
.shot:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.jets{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.jet{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.jet .shot{border-radius:0}
.jet figcaption{padding:14px 16px;display:flex;flex-direction:column}
.jet figcaption span{color:var(--muted);font-size:.88rem}
.split{display:grid;grid-template-columns:1fr 1.25fr;gap:48px;align-items:center;margin-bottom:72px}
.split:last-child{margin-bottom:0}
.split.rev{grid-template-columns:1.25fr 1fr}
.split-text p{color:var(--muted)}
.ticks{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:8px}
.ticks li{padding-left:26px;position:relative;color:var(--text);font-size:.96rem}
.ticks li::before{content:"";position:absolute;left:2px;top:.55em;width:10px;height:6px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
.split-img{border:1px solid var(--line)}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gallery .g-wide{grid-column:span 2;grid-row:span 2}
.gallery .shot{border:1px solid var(--line)}

/* download */
.dl{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;margin-bottom:20px}
.dl-main{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:28px}
.dl-main h3{margin:0 0 4px;font-size:1.3rem}
.dl-main .btn{margin:18px 0 14px}
.req{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:8px 24px}
.req div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.req div:last-child{border:0}
.req dt{color:var(--muted)} .req dd{margin:0;text-align:right}
.faq{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:16px 22px;margin-top:10px}
.faq summary{cursor:pointer;font-weight:600}
.faq p{color:var(--muted);margin:12px 0 0}
.faq a{color:var(--accent)}

/* footer */
.foot{border-top:1px solid var(--line);padding:40px 0;background:var(--bg2)}
.foot-in{display:grid;grid-template-columns:1fr 1.6fr;gap:40px}
.foot p{margin:6px 0 0}
.foot a{color:var(--accent)}

/* lightbox */
.lightbox{position:fixed;inset:0;z-index:50;background:rgba(5,6,8,.94);display:flex;align-items:center;justify-content:center;padding:24px}
.lightbox[hidden]{display:none}
.lightbox figure{margin:0;max-width:min(1500px,92vw)}
.lightbox img{max-height:80vh;margin:0 auto;border-radius:8px}
.lightbox figcaption{text-align:center;color:var(--muted);margin-top:12px;font-size:.95rem}
.lb-close,.lb-nav{position:absolute;background:rgba(255,255,255,.08);border:1px solid var(--line);color:var(--text);border-radius:50%;width:44px;height:44px;font-size:1.6rem;cursor:pointer;line-height:1}
.lb-close{top:18px;right:18px}
.lb-prev{left:18px;top:50%}.lb-next{right:18px;top:50%}
.lb-close:hover,.lb-nav:hover{background:rgba(255,255,255,.18)}

/* small screens */
@media (max-width:960px){
  .grid3{grid-template-columns:1fr 1fr}
  .jets{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:1fr 1fr}
  .split,.split.rev{grid-template-columns:1fr;gap:24px}
  .split.rev .split-img{order:2}
  .dl,.foot-in{grid-template-columns:1fr}
  .facts{grid-template-columns:repeat(2,auto)}
}
@media (max-width:620px){
  .links{display:none}
  .nav-in{justify-content:space-between}
  .grid3,.jets{grid-template-columns:1fr}
  .section{padding:60px 0}
  .hero{min-height:84vh}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.poster-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.poster-grid .shot{border:1px solid var(--line)}
.shot.poster img{aspect-ratio:4/5}
.sub-head{margin:34px 0 14px;font-size:1.1rem}
.donate{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}
@media (max-width:900px){.poster-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.poster-grid{grid-template-columns:1fr 1fr}}
