@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--ink:#080d13;--text:#f3f4f6;--muted:#b1bbc8;--orange:#ff5a00;--blue:#1597da;--line:#27313b}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--ink);color:var(--text);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:7px}img{display:block;max-width:100%}
.landing-header{position:fixed;z-index:10;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:28px 5vw;background:linear-gradient(var(--ink),#080d13ed 60%,transparent)}.landing-brand{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;letter-spacing:1.5px}.landing-brand img{width:42px;height:42px;border-radius:50%}.landing-header nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:700}.join-link{color:var(--orange)}
.chapter{position:relative;min-height:100svh;padding:150px 8vw 90px 5vw;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.13fr);align-items:center;gap:5vw}.chapter-kicker,.photo-caption,.chapter-link,.chapter-number{font-size:11px;letter-spacing:1.9px;text-transform:uppercase}.chapter-kicker{color:var(--muted);margin:0 0 26px}.chapter h1,.chapter h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(68px,8.8vw,150px);letter-spacing:-.065em;line-height:.94;margin:0 0 24px}.chapter h1 span{display:block;font-size:.4em;letter-spacing:-.04em;line-height:1.15;margin-top:20px}.chapter-description{color:var(--muted);font-size:17px;line-height:1.8;max-width:430px;margin:0 0 32px}.chapter-link{font-weight:700;display:inline-flex;align-items:center;gap:24px;padding:12px 0;border-bottom:1px solid var(--line)}.chapter-link span{font-size:23px;transition:transform .25s}.chapter-link:hover span{transform:translateX(7px)}
.hero-photo{margin:0;position:relative}.hero-photo .photo-window{overflow:hidden;clip-path:polygon(9% 5%,100% 0,92% 96%,0 100%);aspect-ratio:1.1}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:52% 55%;transition:transform .8s cubic-bezier(.22,1,.36,1)}.hero-photo:hover img{transform:scale(1.025)}.photo-caption{color:var(--muted);margin:28px 0 0 9%;display:flex;justify-content:space-between;gap:16px;letter-spacing:1px;font-size:10px}.photo-caption span:last-child{color:var(--blue)}.chapter-number{position:absolute;left:5vw;bottom:36px;color:var(--muted)}
.chapter-nav{position:fixed;right:28px;top:50%;transform:translateY(-50%);z-index:11;display:flex;flex-direction:column;gap:18px}.chapter-nav a{display:block;width:6px;height:14px;border-radius:4px;background:#53606e;transition:height .25s,background .25s}.chapter-nav a[aria-current=true]{height:29px;background:var(--orange)}
.moments{padding:120px 8vw 110px 5vw;border-top:1px solid var(--line)}.moments-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:40px}.moments h2{font-family:Georgia,serif;font-size:clamp(44px,6vw,90px);font-weight:400;letter-spacing:-.055em;line-height:1.05;margin:0}.moments-head p{color:var(--muted);max-width:300px;line-height:1.7;margin:0}.photo-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}.photo-grid button{border:0;padding:0;background:transparent;text-align:left;position:relative}.photo-grid img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:filter .25s}.photo-grid button:hover img{filter:brightness(1.08)}.photo-grid button:first-child{grid-row:span 2}.photo-grid button:first-child img{aspect-ratio:auto}.photo-grid button span{position:absolute;left:20px;bottom:18px;font-size:11px;letter-spacing:1px;text-transform:uppercase;background:#080d13c9;padding:8px 12px}.photo-grid .gallery-extra{display:none}.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:24px;color:var(--muted);font-size:12px}.gallery-footer button{border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 0;color:var(--text)}
.upcoming{border-top:1px solid var(--line)}.upcoming h2{font-size:clamp(66px,8vw,135px)}.upcoming h2 em{color:var(--orange);font-style:normal}.event-facts{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:390px;margin-bottom:30px}.event-facts dt{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.event-facts dd{margin:0;font-size:16px}.register-link{display:inline-flex;background:var(--orange);color:#080d13;font-size:13px;font-weight:700;padding:18px 26px;gap:30px;align-items:center;transition:transform .25s}.register-link:hover{transform:translateY(-2px)}.event-poster{margin:0;text-align:right}.event-poster img{max-height:74svh;width:auto;margin:0 auto;box-shadow:0 20px 70px #0006;object-fit:contain}.event-poster figcaption{font-size:11px;color:var(--muted);margin-top:20px;text-align:center}
.landing-footer{border-top:1px solid var(--line);padding:50px 5vw;display:flex;justify-content:space-between;gap:30px;align-items:center;font-size:12px;color:var(--muted)}.landing-footer p{margin:0;line-height:1.8}.landing-footer a{color:var(--text)}
.photo-dialog{border:0;background:var(--ink);color:var(--text);padding:20px;max-width:94vw;width:1200px;max-height:94svh}.photo-dialog::backdrop{background:#000e}.photo-dialog img{width:100%;max-height:76svh;object-fit:contain}.dialog-tools{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:18px}.dialog-tools button{background:transparent;border:1px solid var(--line);padding:10px 16px}.dialog-tools p{margin:0;font-size:12px;color:var(--muted)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s,transform .65s cubic-bezier(.22,1,.36,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.landing-header{padding:18px 6vw}.landing-brand{font-size:11px;letter-spacing:1px}.landing-brand img{width:34px;height:34px}.landing-header nav{gap:18px;font-size:11px}.landing-header .nav-crew{display:none}.chapter{grid-template-columns:1fr;padding:125px 7vw 70px;gap:42px;min-height:auto}.chapter h1{font-size:clamp(66px,14vw,105px)}.chapter h2{font-size:clamp(65px,14vw,105px)}.chapter-description{font-size:15px;max-width:100%}.hero-photo .photo-window{aspect-ratio:1.25}.photo-caption{margin-top:18px;font-size:9px}.chapter-number{display:none}.chapter-nav{right:12px;gap:12px}.chapter-nav a{width:4px;height:10px}.chapter-nav a[aria-current=true]{height:21px}.moments{padding:80px 7vw}.moments-head{display:block}.moments-head p{margin-top:22px}.photo-grid{gap:12px;grid-template-columns:1fr 1fr}.photo-grid button:first-child{grid-column:span 2;grid-row:auto}.photo-grid button:first-child img{aspect-ratio:4/3}.photo-grid button span{left:8px;bottom:8px;font-size:9px;padding:6px}.gallery-footer{align-items:start;font-size:11px}.event-poster img{max-height:600px;width:80%;height:auto}.landing-footer{padding:30px 7vw;flex-direction:column;align-items:start}.dialog-tools{flex-wrap:wrap}.dialog-tools button{font-size:12px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}.hero-photo:hover img{transform:none}}

.finished-events-heading{padding:90px 8vw 30px 5vw;border-top:1px solid var(--line)}.finished-events-heading h2{font-family:'Barlow Condensed',sans-serif;font-size:clamp(56px,8vw,120px);font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:-.025em;margin:0 0 24px}.finished-events-heading h2 span{color:var(--orange)}.finished-poster-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.finished-poster-pair .event-poster img{width:100%;height:auto;max-height:none}.uncharted-finished h2{font-size:clamp(58px,6.5vw,110px)}@media(max-width:800px){.finished-events-heading{padding:70px 7vw 30px}.finished-poster-pair{gap:14px}.finished-poster-pair .event-poster img{width:100%}.uncharted-finished h2{font-size:clamp(56px,12vw,96px)}}
