/* Paddock: editorial timetable, original HB assets and the existing race motion. */
@font-face{font-family:Anton;src:url('/assets/fonts/Anton-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/Inter-Variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--bg:#f6f4ee;--panel:#fffefa;--panel2:#eeece5;--line:#d2d0c8;--muted:#60616a;--text:#111114;--green:#176440;--amber:#795300;--red:#e91035;--red-hover:#cf092b;--radius:5px;--display:Anton,Impact,'Arial Narrow',sans-serif}
body{font-size:15px}
h1,h2{font-family:var(--display);font-weight:400;letter-spacing:-.015em;line-height:1.14}
h3{letter-spacing:-.025em}
.eyebrow{color:var(--muted)}
.btn{border-radius:3px;min-height:48px;font-size:13px;font-weight:700}
.btn.secondary{background:transparent;color:var(--text);border-color:var(--line)}
.btn.secondary:hover{background:var(--panel2);border-color:var(--text)}
.btn.ghost{color:var(--text)}
.btn.ghost:hover{background:var(--panel2)}
.header,.footer,.mobile-dock,.feature-band{--bg:#0b0b0e;--panel:#141418;--panel2:#1a1a20;--line:#343439;--muted:#b4b4bc;--text:#f6f4ee;--green:#74d8a8;--amber:#f1c978;color:var(--text);background:var(--bg)}
.header-inner{height:76px}
.header .logo img{width:65px;height:54px}
.header nav{gap:22px;font-size:12px}
.header .account-link{color:var(--text)}
.header .admin-link{border-radius:3px;background:transparent}
.header .btn.ghost,.header .btn.secondary{color:var(--text)}
.language-switch{padding:0;border:0;border-radius:0;gap:4px}
.language-switch button{position:relative;background:transparent!important;color:#b4b4bc;border-radius:0;min-height:44px}
.language-switch button[aria-pressed=true]{color:#fff}
.language-switch button[aria-pressed=true]:after{content:'';position:absolute;bottom:5px;left:9px;right:9px;height:2px;background:var(--red)}
.mobile-nav{background:#0b0b0e}
.footer{margin-top:0;padding:36px 0}
.footer a:hover,.mobile-dock a:hover{color:#fff}
.hero{--bg:#0b0b0e;--panel:#141418;--text:#f6f4ee;color:var(--text);background:var(--bg);min-height:385px}
.hero .wrap{padding-block:28px 69px}
.hero-bg{inset:0 0 0 34%}
.hero-bg img{object-position:50% 45%;filter:brightness(.9)}
.hero:before{background:linear-gradient(90deg,#0b0b0e 8%,#0b0b0ed9 32%,#0b0b0e33 61%,transparent 82%)}
.hero-copy{max-width:790px}
.hero h1,html[lang=en] .hero h1{font-family:var(--display);font-style:normal;font-weight:400;font-size:clamp(48px,6.6vw,94px);line-height:1.04;letter-spacing:-.025em;margin:0 0 16px}
.hero h1>span{max-width:100%;text-wrap:balance}
.hero h1 .hero-title-top{color:#f6f4ee}
.hero-description{font-size:clamp(14px,1.4vw,19px);line-height:1.5;max-width:540px;animation:reveal-up .8s .2s both}
.hero .cta-row{margin-top:16px;gap:18px}
.hero .cta-row>.btn{min-height:40px;padding:9px 15px;font-size:12px}
.hero .btn.ghost{color:#f6f4ee}
.hero .btn.ghost:hover{background:#ffffff12}
.hero-meta{font-size:10px;margin-top:16px;color:#c5c5cf}
.venue-bug{bottom:27px;right:max(48px,calc((100vw - var(--max))/2));gap:12px;color:#f6f4ee}
.venue-bug .grp{width:84px;height:33px}


.race-lines{opacity:.65}
.account-avatar{position:relative;flex-shrink:0;overflow:hidden;background:var(--avatar-bg);color:#fff;border:0;font-weight:700;isolation:isolate}
.account-avatar>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:var(--avatar-bg)}
.section-cue{isolation:isolate;overflow:hidden;position:fixed;z-index:40;right:24px;bottom:24px;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 36px);padding:7px 7px 7px 18px;border:1px solid #17171926;border-radius:999px;background:#f6f4eef5;color:#111114;box-shadow:0 4px 24px #0002;font-size:12px;font-weight:600;text-decoration:none;backdrop-filter:blur(12px);transition:box-shadow .2s,background .2s}
.section-cue[hidden]{display:none}
.section-cue-label{max-width:210px;overflow-wrap:anywhere}
.section-cue-icon{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;color:#fff;background:var(--red)}
.section-cue:hover{background:#fff;box-shadow:0 6px 26px #0003}
.section-cue:focus-visible{outline:3px solid var(--red);outline-offset:4px}
@media(prefers-reduced-motion:no-preference){
  .section-cue-icon .icon{animation:section-cue-nudge 2.2s ease-in-out infinite}
  @keyframes section-cue-nudge{0%,55%,100%{transform:translateY(-2px)}75%{transform:translateY(3px)}}
}
@media(max-width:850px){.section-cue{right:18px;bottom:calc(90px + env(safe-area-inset-bottom));font-size:11px;gap:10px;padding-left:14px}.section-cue-label{max-width:170px}}
/* Two real image layers: the hall moves independently behind the sharp rider. */
.hero-bg{isolation:isolate;translate:none;mask-image:linear-gradient(90deg,transparent,#000 15%)}
.hero-track{position:absolute;inset:-8%;z-index:0;translate:var(--hero-pan-x,0px) calc(var(--hero-pan-y,0px) + var(--hero-drift,0px));transition:translate .85s var(--race-ease)}
.hero-bg .hero-track img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;filter:brightness(.72);transform:scale(1.13);animation:none}
.hero-bg .hero-rider{position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:cover;object-position:50% 28%;translate:calc(var(--hero-pan-x,0px) * -.13) calc(var(--hero-drift,0px) * .22);transition:translate .85s var(--race-ease);filter:brightness(.91)}
.hero-bg .race-lines{z-index:1;inset:-8%;height:auto;transform:none;mask-image:linear-gradient(90deg,transparent 4%,#0009 38%,#000)}
@media(prefers-reduced-motion:no-preference){
  .hero-bg .hero-track img{animation:hero-track-drive 8s ease-in-out infinite alternate;will-change:transform}
  .hero.motion-paused .hero-track img{animation-play-state:paused}
  @keyframes hero-track-drive{from{transform:translate3d(4%,1%,0) scale(1.13)}to{transform:translate3d(-4%,-1%,0) scale(1.2)}}
}
@media(max-width:580px){
  .hero-bg .hero-rider{object-position:53% 44%}
  .hero-bg .hero-track img{object-position:53% 44%}
  .hero-bg .race-lines{height:auto}
}
@media(prefers-reduced-motion:reduce){
  .hero-track,.hero-bg .hero-rider{translate:none;transition:none}
  .hero-bg .hero-track img,.hero-bg .hero-rider{animation:none;transform:none}
}
.paddock-calendar{padding-block:38px 32px;scroll-margin-top:0}
.paddock-calendar .section-head{margin-bottom:25px;align-items:center}
.paddock-calendar .section-head h2{font-size:clamp(38px,5.5vw,74px);margin:0 0 9px}
.paddock-links{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}
.paddock-links .btn{min-height:32px;padding:4px 0;border-radius:0;border-bottom:1px solid var(--red);font-weight:500}
.paddock-links .btn:hover{background:transparent;box-shadow:none}
.paddock-links .btn.small{color:var(--muted);font-size:11px;border-bottom-color:var(--line)}
.paddock-grid{gap:0}
.paddock-date{display:flex;flex-direction:column;padding:0 28px 8px;border:0;border-left:1px solid #a6a49f;border-radius:0;background:transparent;overflow:visible;position:relative}
.paddock-date:first-child{padding-left:22px}
.paddock-date:last-child{padding-right:0}
.paddock-date:hover,.paddock-date.visible:hover{border-color:#a6a49f;box-shadow:none}
.paddock-date:focus-within{border-color:var(--red)}
.paddock-date-heading{display:flex;align-items:center;gap:18px;min-height:110px;padding-block:2px 10px}
.paddock-day{font:400 clamp(88px,9.5vw,124px)/1 var(--display);letter-spacing:-.035em}
.paddock-month{font:400 clamp(24px,2.7vw,34px)/1.25 var(--display);display:block;letter-spacing:-.02em}
.paddock-weekday{display:block;color:var(--muted);font-size:12px;margin-top:4px;text-transform:capitalize}
.paddock-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:31px;margin-bottom:13px}
.paddock-status .badge{font-size:10px;padding:4px 7px}
.paddock-next{background:var(--red);color:white;padding:4px 8px;font-size:10px;font-weight:650;line-height:1.6}
.paddock-details{border-top:1px solid #a6a49f;padding-top:15px;display:flex;flex-direction:column;gap:13px;margin-bottom:18px}
.paddock-details>div{display:flex;gap:14px;align-items:flex-start;font-size:13px;line-height:1.5}
.paddock-details .icon{width:22px;height:22px;stroke-width:1.4}
.paddock-details strong{font-weight:650}
.paddock-details small{display:block;color:var(--muted);font-size:11px;line-height:1.5}
.paddock-date>.btn{width:100%;margin-top:auto;min-height:43px}
.paddock-date .occupancy{margin-top:16px;background:#dedbd4;height:2px}
.paddock-date .capacity-line{font-size:10px;gap:8px;line-height:1.5}
.feature-band{border-block:1px solid #343439}
.feature-strip{border:0;padding:28px 0}
.feature{padding-inline:24px}
.feature .icon{color:var(--red);width:32px;height:32px}
.feature strong{font-size:13px;color:#f6f4ee}
.feature span{font-size:11px;color:#b4b4bc}
.section{padding-block:64px}
.section-head h2{font-size:clamp(30px,3.7vw,48px)}
.panel,.event-card:not(.paddock-date),.training-row,.summary-card,.account-summary,.stat{box-shadow:none}
.editorial{border-radius:0;background:#0b0b0e;--text:#f6f4ee;--muted:#b4b4bc;color:var(--text);border:0}
.editorial-text{background:#0b0b0e}
.editorial-text h2{font-size:clamp(32px,3.5vw,48px)}
.editorial .btn.ghost{color:#f6f4ee}
.editorial .btn.ghost:hover{background:#ffffff12}
.number-step .num{font-family:var(--display);font-style:normal;font-size:62px}
.number-step h3{font-size:20px}
.faq{max-width:none}
.faq summary{font-size:16px;font-weight:550;min-height:32px;align-items:center}
.faq details p{font-size:14px;max-width:780px}
.faq details[open] summary{color:#ba0929}
.individual-promo{background:var(--panel);border-radius:0}
.individual-promo h2{font-family:var(--display);font-weight:400}
.page-heading h1,.auth-page h1{font-size:clamp(36px,4.5vw,59px)}
.page-heading .eyebrow{margin-bottom:14px}
.legal-text{color:var(--text)}
.event-card:not(.paddock-date) .event-date{font-family:var(--display);font-weight:400;letter-spacing:-.015em;font-size:28px}
.event-sub{font-size:12px}
.event-image .badge{box-shadow:0 1px 8px #0002}
.badge{background:#e5e3dc;color:#55545b;border-radius:3px}
.badge.green{background:#dfede4;color:var(--green)}
.badge.amber{background:#f3e8c8;color:var(--amber)}
.badge.red{background:#f8dfe4;color:#a21735}
.status-icon.confirmed{color:var(--green);background:#dfede4;border-color:#9bbcaa}
.status-icon.pending{color:var(--amber);background:#f3e8c8;border-color:#ccbc8a}
.status-icon.cancelled{color:#a21735;background:#f8dfe4;border-color:#d5a1ad}
.summary-list>div{color:var(--text)}
.notice{background:#eeece6;color:#4c4d55;border-radius:4px}
.notice.warning{background:#f6edcf;border-color:#d8c58a;color:#715000}
.notice.error{background:#fae0e5;border-color:#dca3af;color:#9c1933}
.notice.success{background:#e1eee6;border-color:#a6c5b4;color:#176440}
.field label,.label,.check{color:#3d3e47}
input,select,textarea{color-scheme:light;background:#fffefa;border-color:#bbb9b2;border-radius:3px}
input:focus,select:focus,textarea:focus{background:#fffefa;border-color:#7d7c78;box-shadow:0 0 0 3px #e9103515}
input[readonly]{background:#eeece5;color:var(--text)}
input::placeholder,textarea::placeholder{color:#72737b}
.field-error{color:#ad1230}
.radio-card input:focus-visible+span{outline-color:var(--text)}
.step.active,.tab.active,.empty h3{color:var(--text)}
.step.active b{color:white}
.step.done b{border-color:#9bbcaa}
.checklist .icon{color:#3c3d44}
.map-card{background:#eeece5}
.map-card:before{display:none}
.tab .count{background:#e6e3dc}
.account-summary{background:#eeece5}
.breadcrumb a:hover{color:#b80b2c}
.mobile-dock{border-color:#343439}
.mobile-dock a{color:#b4b4bc}
.mobile-dock a.active{color:#ff3655}
.toast{background:#fffefa;color:var(--text);border-color:var(--line)}
dialog{background:var(--panel);color:var(--text);border-color:var(--line)}
.dialog-title{border-color:var(--line)}
.icon-btn{color:inherit}
.lightbox{--panel:#141418;--text:#f6f4ee;--muted:#b4b4bc;--line:#343439;background:#0b0b0e;color:#f6f4ee}
/* Organizer screens retain their dense, legible dark workspace. */
body.is-admin{--bg:#0a0a0d;--panel:#141418;--panel2:#1a1a20;--line:#2a2a32;--muted:#b0b0bd;--text:#f5f4f1;--green:#74d8a8;--amber:#f1c978}
body.is-admin :is(h1,h2){font-family:var(--font);font-weight:750;letter-spacing:-.04em}
body.is-admin :is(input,select,textarea){color-scheme:dark;background:#1c1c23;border-color:#494953}
body.is-admin :is(.field label,.label,.check){color:#dddde6}
body.is-admin .badge{background:#23232b;color:#ceced8}
body.is-admin .badge.green{background:#143126;color:var(--green)}
body.is-admin .badge.amber{background:#352d1b;color:var(--amber)}
body.is-admin .badge.red{background:#391723;color:#ff8097}
body.is-admin .notice{background:#1b1b21;color:#c4c4cf}
body.is-admin .notice.warning{background:#282216;border-color:#544322;color:#e5cb8d}
body.is-admin .notice.error{background:#34161e;border-color:#6d2638;color:#ff9cb0}
body.is-admin .tab .count{background:#272730}
body.is-admin .toast{background:#1b1b21}
@media(min-width:1250px){.header-inner{gap:14px}.header-actions{gap:12px}.header .btn{padding-inline:16px}.header nav{gap:18px}}
@media(max-width:1240px){.header-inner{height:72px}.hero{min-height:370px}.hero-copy{max-width:680px}.hero h1,html[lang=en] .hero h1{font-size:clamp(53px,6.3vw,80px)}}
@media(max-width:1050px){.paddock-date{padding-inline:20px}.paddock-date-heading{gap:12px}.paddock-month{font-size:25px}.paddock-day{font-size:88px}.paddock-weekday{font-size:11px}.feature{padding-inline:18px;gap:12px}.feature strong{font-size:12px}.feature span{font-size:10px}.hero-bg{inset:0 0 0 22%}}
@media(min-width:581px) and (max-width:850px){.paddock-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.paddock-date{padding-inline:14px}.paddock-date:first-child{padding-left:12px}.paddock-date-heading{align-items:flex-start;gap:6px;min-height:112px;flex-direction:column}.paddock-day{font-size:70px;line-height:.94}.paddock-month{font-size:22px}.paddock-weekday{font-size:10px;margin-top:0}.paddock-status{min-height:57px;align-content:flex-end}.paddock-details>div{font-size:11px;gap:8px}.paddock-details .icon{width:18px;height:18px}.paddock-details small{font-size:10px}.paddock-date .capacity-line{flex-direction:column;gap:0}.paddock-date>.btn{font-size:11px;padding-inline:10px}.hero{min-height:390px}.hero-copy{max-width:580px}.hero h1,html[lang=en] .hero h1{font-size:clamp(49px,7vw,64px)}.venue-bug{right:28px}.paddock-links{max-width:175px}.paddock-calendar h2{font-size:39px}.feature-strip{grid-template-columns:repeat(2,1fr);gap:24px}.feature:nth-child(2){border-right:0}.feature:nth-child(3){padding-left:0}}
@media(max-width:580px){
  .header-inner{height:66px}.header .logo img{width:57px;height:47px}.language-switch button{padding-inline:7px;min-width:30px}.header .admin-link{font-size:11px;padding-inline:8px;min-height:40px}
  .hero{min-height:350px;align-items:stretch}.hero-bg{inset:0 0 0 17%;height:100%}.hero-bg img{object-position:53% 44%;filter:brightness(.68)}
  .hero:before{background:linear-gradient(90deg,#0b0b0ef5,#0b0b0e66 63%,#0b0b0e22)}
  .hero .wrap{padding-block:27px 77px}.hero-copy{max-width:100%}
  .hero h1,html[lang=en] .hero h1{font-size:clamp(37px,9.7vw,56px);line-height:1.09;letter-spacing:-.02em;max-width:100%;margin:0 0 14px}
  .hero h1>span{width:max-content;max-width:100%;text-wrap:initial}
  .hero-description{max-width:240px;font-size:13px;line-height:1.5}
  .hero .cta-row{gap:6px 14px;flex-wrap:wrap;margin-top:14px}.hero .cta-row>.btn{padding:9px 12px;min-height:38px;font-size:10px;gap:9px}.hero .cta-row .ghost{padding-inline:0}
  .hero-meta{font-size:8px;gap:9px;margin-top:15px}.hero-meta span+span{padding-left:9px}
  .venue-bug{top:auto;bottom:19px;right:18px;flex-direction:column;align-items:flex-end;gap:1px}.venue-bug .grp{width:62px;height:27px}.venue-bug small{font-size:6px;letter-spacing:.5px}
  
  .race-lines{height:100%}
  .paddock-calendar{padding-block:25px 22px}.paddock-calendar .section-head{display:block;margin-bottom:20px}.paddock-calendar .section-head h2{font-size:clamp(32px,10.2vw,42px);margin:0 0 8px;line-height:1.2}.paddock-calendar .section-head p{font-size:11px}
  .paddock-links{flex-direction:row;align-items:center;justify-content:space-between;gap:14px;margin-top:10px}.paddock-links .btn{font-size:11px;gap:7px}.paddock-links .btn.small{font-size:10px}
  .paddock-grid{grid-template-columns:minmax(0,1fr)}
  .paddock-date,.paddock-date:first-child,.paddock-date:last-child{border-left:0;border-top:1px solid #aaa8a1;padding:16px 0 20px}
  .paddock-date-heading{min-height:0;gap:20px;padding:0 0 9px}.paddock-day{font-size:83px;line-height:1.02}.paddock-month{font-size:27px;line-height:1.2}.paddock-weekday{font-size:11px}
  .paddock-status{min-height:0;margin-bottom:12px}.paddock-status .badge,.paddock-next{font-size:9px}
  .paddock-details{padding-top:12px;gap:9px;margin-bottom:14px}.paddock-details>div{font-size:12px;gap:12px}.paddock-details .icon{width:21px;height:21px}.paddock-details small{font-size:10px}.paddock-date>.btn{min-height:42px;font-size:12px}
  .paddock-date .occupancy{margin-top:13px}.paddock-date .capacity-line{font-size:9px}
  .feature-strip{padding-block:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 0}.feature{padding:0 12px;gap:11px}.feature:nth-child(odd){padding-left:0}.feature:nth-child(even){border-right:0}.feature .icon{width:25px;height:25px}.feature strong{font-size:10px;line-height:1.5}.feature span{font-size:9px;line-height:1.5;display:block}
  .section{padding-block:42px}.section-head h2{font-size:32px}.section-head p{font-size:12px}.editorial-text{padding:27px 23px}.editorial-text h2{font-size:34px}.editorial-text p{font-size:12px}
  .number-step .num{font-size:49px}.number-step h3{font-size:19px}.number-step p{font-size:12px}.faq summary{font-size:13px}.faq details p{font-size:12px;line-height:1.8}
  .page-heading h1,.auth-page h1{font-size:38px}.page-heading .muted{font-size:13px}.individual-promo h2{font-size:29px}.field label,.label{font-size:12px}.helper{font-size:11px}.check{font-size:12px}.checklist li{font-size:12px}
  .steps{align-items:flex-start}.step{flex:1;flex-direction:column;gap:6px;text-align:center;white-space:normal;font-size:10px}.step-line{flex:0 0 14px;width:14px;margin:11px 5px 0}.step b{flex-shrink:0}
  .footer{padding-block:28px}
}
@media(prefers-reduced-motion:no-preference){
  .paddock-date.visible .paddock-day{animation:paddock-date-arrive .8s var(--delay,0ms) var(--race-ease) both}
  .paddock-date .paddock-month{transition:color .25s}
  .paddock-date:hover .paddock-month{color:var(--red)}
  .paddock-date .paddock-details{position:relative}
  .paddock-date .paddock-details:before{content:'';position:absolute;left:0;top:-1px;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--race-ease)}
  .paddock-date:hover .paddock-details:before,.paddock-date:focus-within .paddock-details:before{transform:scaleX(1)}
  @keyframes paddock-date-arrive{from{opacity:0;transform:translateY(18px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
}
