@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#111114;--panel:#1b1b20;--ink:#f5f1ec;--muted:#b8b0ac;--line:#393539;--red:#9e3135;--pink:#f4a3a4;--paper:#f4eee7;--dark:#221b1a}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button,input,select{font:inherit}button,summary{cursor:pointer}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--pink);outline-offset:4px}[hidden]{display:none!important}p{max-width:55ch;color:var(--muted)}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:600;line-height:1.02;margin:0;letter-spacing:-.065em}h1{font-size:clamp(50px,9vw,132px)}h2{font-size:clamp(38px,6vw,82px)}h3{font-size:clamp(25px,3.1vw,49px)}em{font-style:normal;color:var(--pink)}.wrap{width:min(88%,1320px);margin-inline:auto}.skip{position:fixed;top:-70px;left:12px;z-index:50;background:var(--paper);color:var(--dark);padding:8px 14px}.skip:focus{top:8px}
header{position:sticky;top:0;z-index:5;background:#111114f5;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:138px;height:47px;object-fit:contain}.header-inner nav,.foot-links{display:flex;gap:clamp(14px,2.5vw,36px);align-items:center;font-size:14px}.header-inner nav a:hover,[aria-current=page]{color:var(--pink)}.menu{display:none}.arrow{width:1em;height:1em;stroke:currentColor;stroke-width:1.65;fill:none;flex:none;vertical-align:-.12em}.button,.line-link,.header-cta,.hero-link{display:inline-flex;gap:.65em;align-items:center;justify-content:center}.header-cta,.line-link{width:max-content;border-bottom:1px solid currentColor;padding:4px 0}.header-cta{white-space:nowrap;font-size:14px}.line-link:hover,.header-cta:hover,.hero-link:hover{color:var(--pink)}.button{padding:12px 18px;min-height:48px;border:1px solid transparent;background:var(--red);color:#fff;font-weight:700;font-size:14px;width:max-content}.button:hover{background:#b34247}.outline{border-color:var(--line);background:transparent;color:inherit}.light-button{background:var(--paper);color:var(--dark)}.light-button:hover{background:#fff}
.section-label,.kicker,.caption,.hero-caption,small,.foot-note{font-size:11px;letter-spacing:.13em;text-transform:uppercase}.section-label{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px;color:var(--muted)}.section-label i,.kicker i{display:inline-block;width:7px;height:7px;background:var(--pink);border-radius:50%;margin-right:7px;vertical-align:1px}.kicker{color:var(--muted);margin-bottom:14px}.home{padding-top:32px}.hero{position:relative;min-height:clamp(460px,58vw,740px);isolation:isolate;display:flex;align-items:end;padding:clamp(22px,5vw,70px);overflow:hidden;margin-top:14px}.hero>img,.hero:after{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero>img{object-position:57% center}.hero:after{content:"";z-index:-1;background:linear-gradient(90deg,#100d11e8 0%,#100d116b 62%,#100d111c),linear-gradient(0deg,#110d10aa,transparent 60%)}.hero h1{font-size:clamp(46px,8.5vw,122px);font-weight:800;line-height:.93}.hero-actions{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:26px;align-items:center}.hero-link{font-size:14px}.hero-caption{position:absolute;right:24px;bottom:18px;color:#eee}
.intro{padding-top:clamp(58px,9vw,125px)}.intro h1{max-width:13ch}.intro p{font-size:clamp(16px,2vw,21px);margin:20px 0 0}.block{margin-top:clamp(48px,8vw,110px);margin-bottom:clamp(48px,8vw,110px)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:25px 0}.clubs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.club-card{overflow:hidden;background:var(--panel);border:1px solid var(--line)}.club-card>img{aspect-ratio:1.45;transition:filter .5s;filter:saturate(.78)}.club-card:hover>img{filter:saturate(1.2)}.club-card>div{padding:clamp(12px,2vw,25px);position:relative}.club-card small{color:var(--muted)}.club-card h3{margin-top:5px}.club-card .arrow{position:absolute;right:12px;top:12px;color:var(--pink)}
.split,.recap,.event-feature,.location,.club-editorial article{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:1px}.split,.recap,.event-feature{background:var(--line);border:1px solid var(--line);margin-top:14px}.text-panel,.event-copy{background:var(--panel);padding:clamp(22px,5vw,70px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.feature-photo{height:100%;min-height:300px;object-position:center 32%}.event-feature{grid-template-columns:1.22fr 1fr}.event-copy{background:#492326}.event-copy .kicker,.event-copy p{color:#f1cacc}.event-feature>a{display:block;overflow:hidden}.event-image{position:relative;overflow:hidden;background:#271a1d}.event-image img{position:absolute;left:0;width:100%;height:auto;max-width:none}.community{aspect-ratio:1.59}.community img{top:0;transform:translateY(-58.28%)}.partners{aspect-ratio:.67}.partners img{top:0;transform:translateY(-12.2%)}.recap{grid-template-columns:1.22fr 1fr}.recap .community{height:100%;aspect-ratio:auto;min-height:310px}.activities{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:15px}.activities div{padding:23px;background:var(--panel)}.activities small{color:var(--pink)}.activities h3{margin-top:12px;font-size:clamp(20px,2.4vw,37px)}.extras{padding-left:18px;color:var(--muted)}
.index-links>a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);width:100%;padding:18px 0;font:600 clamp(22px,4vw,46px)/1.2 Manrope,sans-serif;letter-spacing:-.04em}.index-links .arrow{color:var(--pink)}.visit-band{background:var(--red);color:#fff}.visit-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:clamp(35px,7vw,80px)}.visit-band .kicker{color:#f8d8d8}
.club-editorial article{align-items:center;gap:5%;margin-bottom:55px}.club-editorial article:nth-child(even) img{order:2}.club-editorial img{aspect-ratio:1.23}.member-reviews{border-top:1px solid var(--line);padding-top:25px}.reviews-intro{display:flex;justify-content:space-between;align-items:center}.review-quotes{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:15px}.review-quotes figure{background:var(--panel);padding:22px;margin:0}.review-quotes blockquote{margin:8px 0;font-size:20px}.review-stars{color:var(--pink)}.review-quotes figcaption,.review-source{color:var(--muted);font-size:13px}.review-source{grid-column:1/-1;max-width:none}.review-source a{text-decoration:underline}
.location{grid-template-columns:1.4fr 1fr;gap:22px}.gallery-main{aspect-ratio:1.5}.caption{margin:9px 0;color:var(--muted)}.thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.thumb{padding:0;background:none;border:2px solid transparent}.thumb[aria-pressed=true]{border-color:var(--pink)}.thumb img{aspect-ratio:1.5}.contact,.plan{padding:clamp(22px,4vw,47px);background:var(--panel);border:1px solid var(--line)}.contact h2{font-size:clamp(32px,4vw,55px)}.contact a{display:flex;margin-top:12px}.contact .button,.contact select{width:100%}.contact select,.search input{background:var(--bg);border:1px solid var(--line);color:var(--ink);padding:10px 12px;border-radius:0}.contact select{margin-top:5px}.contact dt{color:var(--muted);font-size:13px}.contact dd{margin:0 0 8px}
.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.plan h3{font-size:clamp(34px,5vw,64px)}.plan.featured{background:#492326}.eyebrow{font-size:11px;letter-spacing:.1em}.price{font:700 clamp(37px,6vw,78px)/1.2 Manrope,sans-serif;margin-top:16px;letter-spacing:-.07em}.price span{font:400 14px 'DM Sans',sans-serif;margin-left:7px;letter-spacing:0}.fine{font-size:13px;max-width:100ch}.faq{margin-top:58px;max-width:840px}.faq h2{margin-bottom:20px}.faq details{border-top:1px solid var(--line);padding:12px 0}
.search{display:grid;gap:6px;max-width:390px}.rewards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:start}.reward{background:var(--panel);border:1px solid var(--line)}.reward summary{display:grid;grid-template-columns:58px 1fr 15px;gap:10px;align-items:center;padding:10px;list-style:none}.reward summary::-webkit-details-marker{display:none}.reward img{aspect-ratio:1;object-fit:contain;background:#fff}.reward-toggle{color:var(--pink)}.reward-detail{padding:0 12px}
footer{padding-block:30px}.foot-main,.foot-note{display:flex;justify-content:space-between;align-items:center;gap:20px}.foot-note{border-top:1px solid var(--line);padding-top:15px;margin-top:18px;color:var(--muted)}
@media(max-width:920px){.wrap{width:92%}.header-inner nav{gap:13px}.header-inner{gap:12px}.brand img{width:115px}.header-cta{font-size:12px}.foot-main{align-items:start}.foot-links{flex-wrap:wrap;justify-content:end}}
@media(max-width:690px){.header-inner{height:62px}.header-inner .brand{margin-right:auto}.menu{display:block;border:1px solid var(--line);padding:4px 8px;background:none;color:var(--ink);font-size:12px}.header-inner nav{display:none;position:absolute;inset:62px 0 auto;background:var(--bg);padding:13px 4%;border-bottom:1px solid var(--line)}.header-inner nav.open{display:grid}.header-inner nav a{padding:5px}.home{padding-top:19px}.home .section-label span:last-child,.hero-caption{display:none}.hero{min-height:465px}.hero>img{object-position:55% center}.hero:after{background:linear-gradient(0deg,#100d11f0,#100d1150 83%)}.section-head{align-items:start;flex-direction:column;gap:7px}.clubs,.split,.recap,.event-feature,.location,.club-editorial article,.plan-grid{grid-template-columns:1fr}.clubs{gap:10px}.club-card>img{aspect-ratio:1.8}.club-editorial article:nth-child(even) img{order:0}.recap .community{min-height:0;aspect-ratio:1.59}.partners{aspect-ratio:.67}.feature-photo{min-height:220px}.activities,.rewards-grid,.review-quotes{grid-template-columns:1fr 1fr}.activities div{padding:14px}.reward summary{grid-template-columns:38px 1fr 10px;gap:5px;font-size:13px}.visit-inner,.foot-main{align-items:start;flex-direction:column}.foot-links{justify-content:start}.foot-note{align-items:start;font-size:9px}.intro{padding-top:45px}}
@media(max-width:360px){.hero h1{font-size:39px}.header-cta{font-size:11px}.review-quotes{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* LevelUp's digital colors from the brand manual, page 9. */
:root {
  --red: #bd1723;
  --bg: #000;
  --panel: #1d1e1c;
  --ink: #fff;
  --line: #444543;
  --muted: #bebfbe;
  --paper: #fff;
  --dark: #1d1e1c;
  --pink: #fff;
}
header { background: #000; border-bottom: 2px solid var(--red); }
footer { background: #000; }
.section-label i, .kicker i { background: var(--red); }
.section-label { border-bottom: 1px solid var(--red); }
em { color: var(--ink); text-decoration: underline; text-decoration-color: var(--red); text-decoration-thickness: .09em; text-underline-offset: .12em; }
.header-inner nav [aria-current=page] { text-decoration: underline; text-decoration-color: var(--red); text-underline-offset: .45em; text-decoration-thickness: 2px; }
.header-cta { border-color: var(--red); }
.button:hover { background: #fff; color: var(--dark); border-color: var(--red); }
.button.light-button:hover { background: var(--panel); color: #fff; }
.club-card, .plan { border-top: 3px solid var(--red); }
.plan { display: flex; flex-direction: column; align-items: flex-start; }
.plan .button { margin-top: auto; }
.plan.featured, .event-copy { background: var(--red); }
.plan.featured .button { background: #fff; color: var(--dark); }
.plan.featured .button:hover { background: var(--panel); color: #fff; }
.plan.featured p, .event-copy p, .event-copy .kicker, .visit-band .kicker { color: #fff; }
.event-copy .kicker i { background: #fff; }
.event-copy .line-link:hover { color: #fff; opacity: .85; }
.event-image { background: var(--panel); }
.arrow { fill: currentColor; stroke: none; transform: rotate(45deg); }
.index-links .arrow { transform: rotate(90deg); }
.reward summary, .faq summary { list-style: none; }
.faq summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.faq summary::-webkit-details-marker { display: none; }
.reward-toggle, .faq summary::after {
  content: '';
  display: inline-block;
  width: 13px;
  height: 13px;
  flex: 0 0 13px;
  background: currentColor;
  mask: url('/assets/club-arrow.svg') center / contain no-repeat;
  transform: rotate(180deg);
  transition: transform .2s ease;
}
.reward[open], .faq details[open] { border-color: var(--red); }
.reward[open] .reward-toggle, .faq details[open] summary::after { transform: rotate(0); }
.thumb[aria-pressed=true] { border-color: var(--red); }
.contact select {
  appearance: none;
  padding-right: 40px;
  background-image: url('/assets/club-arrow-down.svg');
  background-repeat: no-repeat;
  background-position: right 13px center;
  background-size: 13px;
}

header { border-bottom: 0; }
.scroll-track { height: 2px; background: var(--line); }
.scroll-track span { display: block; height: 100%; background: var(--red); transform: scaleX(0); transform-origin: left; }
.community, .recap .community { height: auto; min-height: 0; aspect-ratio: 707 / 641; align-self: center; }
.event-feature > a { align-self: center; }
.recap, .event-feature { background: var(--panel); }
.review-stars { color: #ffc94c; letter-spacing: .12em; }
.partner-rail { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x proximity; list-style: none; margin: 0; padding: 4px 4px 16px; }
.event-partner { flex: 0 0 clamp(155px, 19vw, 215px); display: grid; align-content: start; text-align: center; scroll-snap-align: start; background: var(--panel); border: 1px solid var(--line); border-top: 2px solid var(--red); padding: 12px; }
.partner-logo { display: grid; place-items: center; height: 96px; padding: 12px; background: #f5f4f0; }
.partner-logo img { width: 100%; height: 72px; object-fit: contain; }
.event-partner span { margin-top: 8px; }
.event-program { margin-top: 30px; }
