:root{
 --night:#080a10;--snow:#f7f8fa;--ink:#131721;--blue:#334bdf;--ice:#c6d4ff;
 --pad:max(5.5vw,calc((100vw - 1440px)/2));font-family:Inter,"Apple SD Gothic Neo","Malgun Gothic",sans-serif
}
*{box-sizing:border-box}body{margin:0;background:var(--night);color:var(--snow);word-break:keep-all}html{scroll-behavior:smooth}button,a,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #678cff;outline-offset:5px}
.skip,.sr{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.skip:focus{clip-path:none;height:auto;width:auto;top:4px;left:12px;background:#fff;color:var(--ink);padding:12px;z-index:9}
.top{background:#080a10;color:#fafaff;position:relative;z-index:2}.navwrap{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px;margin-inline:var(--pad);border-bottom:1px solid #ffffff27}
.brand{display:flex;align-items:center;gap:12px;font-size:20px;letter-spacing:-.065em;font-weight:800}
nav{display:flex;gap:36px;font-size:14px}nav a{padding-block:9px}.wiki{font-size:14px;border:1px solid #6b6d7b;padding:8px 15px;border-radius:100px;display:flex;gap:12px}nav a:hover,footer a:hover,.club-info a:hover{text-decoration:underline;text-underline-offset:5px}
.hero{isolation:isolate;position:relative;overflow:hidden;background:#080a10;min-height:calc(min(900px,100svh) - 76px);display:flex;align-items:center}
.cable{position:absolute;z-index:-2;right:0;top:0;width:100%;height:100%;object-fit:cover;object-position:center 50%}
.hero:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#080a10 0%,rgba(8,10,16,.86) 18%,rgba(8,10,16,0) 55%);pointer-events:none}
.hero-inner{padding:70px var(--pad) 96px;width:100%}.hero-copy{width:fit-content}.school{font-size:clamp(14px,1.3vw,21px);margin:0 0 25px;letter-spacing:-.035em;font-weight:600}.hero h1{font-size:clamp(76px,7.9vw,134px);letter-spacing:-.083em;line-height:1.025;font-weight:850;margin:0}.lead{font-size:clamp(16px,1.22vw,21px);line-height:1.65;letter-spacing:-.035em;color:#d4d7e2;margin:27px 0}.cta{display:inline-flex;align-items:center;gap:22px;background:var(--snow);color:var(--ink);padding:13px 20px;border-radius:99px;font-weight:700;font-size:14px}.cta:hover{background:var(--ice)}
.section-pad{padding:clamp(64px,7.3vw,120px) var(--pad)}h2,h3,p{margin:0}.section-intro{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:48px}.section-intro h2,.record-title h2{font-size:clamp(40px,4.4vw,78px);line-height:1.1;letter-spacing:-.075em}.section-intro p,.record-title p{color:#535a67;font-size:15px;line-height:1.6}.practice{color:var(--ink);background:var(--snow)}.practice-layout{border-top:1px solid #afb3bf}.track-tabs{display:flex;gap:30px;border-bottom:1px solid #cfd2db}.track-tabs button,.record-controls button{background:none;border:0;font-size:16px;padding:17px 0;letter-spacing:-.035em;position:relative;color:#5b606c}.track-tabs button[aria-pressed=true],.record-controls button[aria-pressed=true]{color:var(--ink);font-weight:760}.track-tabs button[aria-pressed=true]:after,.record-controls button[aria-pressed=true]:after{content:'';height:3px;background:var(--blue);width:100%;position:absolute;bottom:-1px;left:0}
.practice-panel{margin-top:32px}.track-text h3,.club-info h3{font-size:clamp(24px,2.25vw,39px);letter-spacing:-.065em;line-height:1.25}.track-text p{line-height:1.75;color:#444b59;max-width:40em;font-size:16px;margin:18px 0 25px}.members{display:flex;gap:14px;font-size:14px;line-height:1.5}.members span{color:#606671}
.record{background:#e9ecf3;color:var(--ink);display:grid;grid-template-columns:.72fr 1.28fr;gap:9%}.record-title p{margin-top:14px}.record-controls{display:flex;gap:23px}.record-controls button{font-size:14px}.record table{border-collapse:collapse;width:100%;text-align:left;font-size:15px}.record th{font-size:13px;color:#626a79;font-weight:500}.record th,.record td{padding:16px 3px;border-bottom:1px solid #c2c8d5}.record td:last-child,.record th:last-child{text-align:right}.record td:last-child{font-weight:700}
.club{background:#2637b7;color:white;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.club-title p{font-size:14px}.club-title h2{font-family:Arial,sans-serif;font-size:clamp(76px,10.3vw,170px);letter-spacing:-.085em;line-height:1.06}.club-info p{color:#e3e7ff;line-height:1.7;margin:16px 0 25px}.club-info a{display:inline-block;border-bottom:1px solid #9faaff;padding-bottom:5px;font-size:14px}footer{padding:34px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:20px}footer .brand{font-size:16px}footer>a{font-size:13px;color:#cbd0dc}
@media(max-width:760px){
 :root{--pad:6vw}.navwrap{height:64px;gap:12px}.brand{font-size:17px;gap:8px}nav{gap:18px;font-size:13px}.wiki{font-size:12px;padding:6px 9px}.hero{min-height:650px}.hero h1{font-size:clamp(68px,11vw,90px)}.hero-inner{padding-block:55px 95px}.section-intro{display:block;margin-bottom:24px}.section-intro p{margin-top:12px}.record{grid-template-columns:1fr;gap:30px}.track-tabs{gap:22px}.track-tabs button{font-size:14px}.practice-panel{margin-top:28px}.club{grid-template-columns:1fr;gap:30px}
}
@media(max-width:540px){
 .navwrap{height:60px}.brand{font-size:16px}.navwrap nav{gap:11px;font-size:12px}.navwrap .wiki{border:none;padding:3px 0;font-size:12px;gap:3px}.hero{min-height:690px;align-items:start}.hero-inner{padding:40px var(--pad) 0}.school{margin-bottom:15px;font-size:13px}.hero h1{font-size:clamp(56px,13vw,74px)}.lead{font-size:15px;margin:15px 0 19px}.cta{font-size:13px;padding:11px 16px}.cable{width:120%;height:60%;top:auto;bottom:0;object-position:68% center}.hero:after{background:linear-gradient(180deg,#080a10 0%,#080a10 39%,rgba(8,10,16,.15) 56%,transparent 70%)}.members{font-size:13px}.section-pad{padding-block:53px}.record th,.record td{padding:13px 2px}footer{flex-wrap:wrap}
}
@media(max-width:360px){.navwrap nav{gap:8px}.navwrap .wiki{display:none}.track-tabs{gap:14px}}
@media(prefers-reduced-motion:no-preference){.hero-copy{animation:arrive .7s ease-out both}@keyframes arrive{from{transform:translateY(7px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(min-width:761px){.cable{width:88%;object-position:center 52%}.hero:after{background:linear-gradient(90deg,#080a10 11%,rgba(8,10,16,.85) 25%,transparent 57%)}}
.record tbody th{color:var(--ink);font-size:15px;vertical-align:top;font-weight:600}.record tbody+tbody{border-top:1px solid #969dad}.track-text h3{max-width:18em}

.projects {
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:9%;
  background:#121722;
  color:var(--snow);
}
.projects h2 {font-size:clamp(40px,4.4vw,78px);line-height:1.1;letter-spacing:-.075em}
.project-list {margin:0;padding:0;list-style:none;border-top:1px solid #5a6479}
.project-list li {padding:20px 0;border-bottom:1px solid #3d4555;font-size:clamp(19px,2vw,33px);line-height:1.4;letter-spacing:-.045em}
.club-info a {margin-top:18px}
@media(max-width:760px){.projects{grid-template-columns:1fr;gap:28px}}
@media(max-width:540px){
  .navwrap{display:grid;height:auto;grid-template-columns:1fr auto;gap:0;padding-top:15px}
  .navwrap .wiki{display:flex;grid-column:2;grid-row:1}
  .navwrap nav{grid-column:1/-1;grid-row:2;gap:20px;margin-top:4px}
  .navwrap nav a{padding-block:13px}
}
