:root{--navy:#092d57;--blue:#0f4c81;--blue-light:#eaf1f7;--ink:#151a20;--gray:#68727d;--line:#d9dee4;--paper:#f7f8fa;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}
.header{height:78px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;inset:0 0 auto;z-index:10;color:#fff;border-bottom:1px solid rgba(255,255,255,.25)}.logo{display:flex;align-items:center;gap:11px;font-weight:800;line-height:1}.logo>b{display:grid;place-items:center;width:40px;height:40px;background:var(--navy);color:#fff;font-size:15px}.logo>span{font-size:14px;letter-spacing:.02em}.logo small{display:block;margin-top:5px;font-size:7px;font-weight:600;letter-spacing:.13em;opacity:.7}.header nav{display:flex;gap:34px;font-size:12px;font-weight:700}.header nav a:hover{opacity:.7}.header-link{padding:11px 18px;border:1px solid rgba(255,255,255,.75);font-size:11px;font-weight:700}
.hero{height:max(720px,100vh);min-height:720px;position:relative;display:flex;align-items:center;overflow:hidden;color:#fff;padding:100px 7vw 70px}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:67% center;filter:saturate(.72)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,35,.95) 0%,rgba(5,20,35,.78) 40%,rgba(5,20,35,.25) 78%),linear-gradient(0deg,rgba(5,20,35,.75),transparent 45%)}.hero-content{position:relative;z-index:2;max-width:780px}.label{font-size:10px;font-weight:700;letter-spacing:.18em;color:#b9d3ea;margin-bottom:24px}.hero h1{font-size:clamp(48px,6.3vw,96px);line-height:1.18;letter-spacing:-.05em;margin-bottom:30px}.hero h1 span{color:#a8c9e5}.hero-text{font-size:14px;line-height:2;max-width:670px;color:rgba(255,255,255,.83)}.button{display:inline-flex;justify-content:space-between;align-items:center;min-width:230px;margin-top:18px;padding:15px 18px;background:#fff;color:var(--navy);font-size:12px;font-weight:800}.button span{margin-left:24px}.next-race{position:absolute;z-index:2;right:5vw;bottom:45px;width:210px;padding:20px 0;border-top:2px solid #fff;display:grid;grid-template-columns:1fr auto;gap:3px 15px}.next-race small{font-size:9px}.next-race b{grid-row:1/3;grid-column:2;font-size:30px;line-height:1.2}.next-race span{font-size:9px;color:rgba(255,255,255,.7)}
.intro,.riders,.results,.news,.partners{padding:105px 7vw}.intro{display:grid;grid-template-columns:.65fr 1fr;gap:7vw;background:var(--paper)}.section-number{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.16em;margin-bottom:12px}.intro h2,.section-heading h2{font-size:clamp(34px,4vw,54px);line-height:1.25;letter-spacing:-.04em;margin:0}.intro-copy h3{font-size:clamp(26px,3vw,42px);line-height:1.5;letter-spacing:-.04em}.intro-copy>p{font-size:13px;color:#4f5963;line-height:2.2}.team-data{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);margin:25px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.team-data>div{padding:25px 3vw;border-right:1px solid var(--line)}.team-data>div:last-child{border:0}.team-data dt{font-size:10px;color:var(--gray)}.team-data dd{margin:5px 0 0;color:var(--navy);font-size:40px;font-weight:800;line-height:1.2}.team-data dd small{font-size:11px;margin-left:4px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:52px}.section-heading>p{max-width:470px;margin:0;font-size:12px;color:var(--gray)}.riders{padding-bottom:0}.desktop-team-photo{height:min(55vw,700px);margin:0 -7vw;overflow:hidden;background:#111}.desktop-team-photo img{width:100%;height:100%;object-fit:cover}.swipe-label,.rider-photo{display:none}.rider-list{display:grid;grid-template-columns:repeat(3,1fr);margin:0 -7vw}.rider-card{padding:34px 4vw 42px;border-right:1px solid var(--line)}.rider-category{color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.13em}.rider-card h3{font-size:30px;line-height:1.2;margin:16px 0 24px}.rider-card h3 small{display:block;margin-top:7px;color:var(--gray);font-size:10px;letter-spacing:.12em}.rider-card dl{display:grid;grid-template-columns:repeat(3,1fr);padding-top:15px;margin:0 0 27px;border-top:1px solid var(--line)}.rider-card dt{font-size:8px;color:var(--gray)}.rider-card dd{margin:4px 0 0;font-size:11px;font-weight:700}.rider-card>a,.text-link,.news a{color:var(--blue);font-size:11px;font-weight:800;border-bottom:1px solid var(--blue);padding-bottom:4px}
.results{background:var(--navy);color:#fff}.results .section-number{color:#9fc4e4}.results .section-heading>p{color:#9fc4e4;font-weight:700;letter-spacing:.12em}.latest-result{display:grid;grid-template-columns:160px 1fr 180px;align-items:center;gap:35px;padding:30px 35px;background:#fff;color:var(--ink)}.place{display:grid;grid-template-columns:auto auto;align-items:end}.place small{grid-column:1/-1;font-size:9px;color:var(--gray)}.place b{font-size:90px;line-height:.85;color:var(--blue)}.place span{font-size:15px;font-weight:800}.latest-result time{font-size:9px;color:var(--gray)}.latest-result h3{margin:8px 0 4px;font-size:24px}.latest-result p{margin:0;font-size:10px;color:var(--gray)}.latest-result>strong{text-align:right;color:var(--navy)}.result-table>div{display:grid;grid-template-columns:130px 1fr 140px 60px;gap:20px;align-items:center;min-height:74px;border-bottom:1px solid rgba(255,255,255,.25)}.result-table time,.result-table span{font-size:10px;color:#adc0d2}.result-table p{margin:0;font-size:12px;font-weight:600}.result-table b{text-align:right}.results .text-link{display:block;width:max-content;margin:35px 0 0 auto;color:#fff;border-color:#fff}
.news{background:var(--paper)}.news-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.news-main{grid-row:span 2;background:#fff;display:grid;grid-template-columns:1.05fr .95fr}.news-photo{min-height:420px;overflow:hidden}.news-photo img{width:100%;height:100%;object-fit:cover;object-position:68% center}.news-main>div:last-child{padding:34px}.news-meta{font-size:9px!important;color:var(--blue)!important;font-weight:700}.news h3{font-size:20px;line-height:1.6}.news-main p:not(.news-meta){font-size:11px;color:var(--gray)}.news-item{background:#fff;padding:30px}.news-item h3{font-size:16px}.news a{display:inline-block;margin-top:12px}
.partners .section-heading{margin-bottom:45px}.partner-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.partner-list>div{min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.partner-list .partner-main{grid-column:1/-1;min-height:190px;background:var(--blue-light)}.partner-list b{font-size:25px;letter-spacing:.04em;color:var(--navy)}.partner-main b{font-size:48px}.partner-list span,.partner-list small{font-size:8px;color:var(--gray);margin-top:6px}.partner-contact{margin-top:55px;padding:38px 4vw;background:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:30px}.partner-contact p{max-width:590px;margin:0;font-size:12px}.button.blue{margin:0;background:var(--navy);color:#fff;white-space:nowrap}
footer{padding:55px 5vw 30px;background:#0b1825;color:#fff;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:start}footer>p{font-size:10px;color:#9ca9b5}footer nav{display:flex;justify-content:flex-end;gap:24px;font-size:10px}footer>small{grid-column:1/-1;margin-top:35px;color:#667584;font-size:8px}

@media(max-width:760px){
  .header{height:66px;padding:0 5vw}.header nav{display:none}.header-link{font-size:9px;padding:9px 11px}.logo>b{width:36px;height:36px}.hero{height:790px;min-height:790px;padding:100px 6vw 110px;align-items:flex-end}.hero-image{object-position:78% center}.hero-shade{background:linear-gradient(0deg,rgba(5,20,35,.96) 4%,rgba(5,20,35,.86) 47%,rgba(5,20,35,.28) 84%)}.hero h1{font-size:11.8vw;line-height:1.32}.hero-text{font-size:12px;line-height:1.9}.hero-text br{display:none}.next-race{top:90px;bottom:auto;right:6vw;width:170px}.next-race b{font-size:24px}.intro,.riders,.results,.news,.partners{padding:75px 6vw}.intro{grid-template-columns:1fr;gap:35px}.team-data{grid-template-columns:1fr}.team-data>div{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-right:0;border-bottom:1px solid var(--line)}.team-data>div:last-child{border:0}.team-data dd{font-size:30px}.section-heading{display:block;margin-bottom:38px}.section-heading>p{margin-top:18px}.riders{padding:75px 0 0}.riders .section-heading{padding:0 6vw}.desktop-team-photo{display:none}.swipe-label{display:flex;justify-content:space-between;margin:0 6vw 15px;padding-bottom:9px;border-bottom:1px solid var(--line);color:var(--gray);font-size:9px;font-weight:700}.swipe-label span{color:var(--blue);font-size:17px}.rider-list{display:flex;gap:12px;margin:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-left:6vw;padding:0 8vw 40px 6vw;scrollbar-width:none}.rider-list::-webkit-scrollbar{display:none}.rider-card{flex:0 0 84vw;padding:0 6vw 32px;border:1px solid var(--line);scroll-snap-align:start;background:#fff}.rider-photo{display:block;height:105vw;max-height:560px;margin:0 -6vw 26px;background:url(../images/team-roster.png) no-repeat;background-size:300% auto;background-color:#111}.photo-ren{background-position:0 center}.photo-mio{background-position:50% center}.photo-riku{background-position:100% center}.rider-card h3{font-size:28px}.latest-result{grid-template-columns:95px 1fr;padding:22px 18px;gap:18px}.place b{font-size:65px}.latest-result>strong{grid-column:2;text-align:left}.latest-result h3{font-size:17px}.result-table>div{grid-template-columns:1fr 48px;padding:15px 0;gap:4px 10px}.result-table time,.result-table span{grid-column:1}.result-table p{grid-column:1}.result-table b{grid-column:2;grid-row:1/4}.news{padding:75px 6vw}.news-grid{grid-template-columns:1fr}.news-main{grid-template-columns:1fr}.news-photo{min-height:300px}.partner-list{grid-template-columns:1fr 1fr}.partner-list>div{min-height:105px}.partner-main b{font-size:38px}.partner-contact{display:block;padding:28px}.button.blue{margin-top:22px;white-space:normal}footer{grid-template-columns:1fr 1fr}footer>p{grid-column:2}footer nav{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
