.racecal-page{width:min(1240px,calc(100% - 64px));margin:0 auto;padding:0 0 28px}
.racecal-page[id]{scroll-margin-top:120px}
.racecal-control{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:12px;padding:28px 30px;border:1px solid #38383d;background:radial-gradient(circle at 86% 20%,rgba(239,21,30,.1),transparent 28%),linear-gradient(135deg,#151517,#0b0b0c);box-shadow:0 22px 55px rgba(0,0,0,.3)}
.racecal-eyebrow{display:block;margin-bottom:7px;color:var(--red);font-family:"Barlow Condensed",sans-serif;font-size:.76rem;font-weight:800;letter-spacing:2.2px;text-transform:uppercase}
.racecal-control h2,.racecal-section-head h2,.racecal-next-copy h2{margin:0;color:#fff;font-family:"Barlow Condensed",sans-serif;font-weight:900;line-height:.94;text-transform:uppercase}
.racecal-control h2{font-size:clamp(2.25rem,4vw,3.5rem)}
.racecal-control p{max-width:680px;margin:11px 0 0;color:#a5a5aa;font-size:.9rem;line-height:1.65}
.racecal-filter{display:grid;min-width:300px;gap:8px}
.racecal-filter label{color:#98989d;font-family:"Barlow Condensed",sans-serif;font-size:.7rem;font-weight:700;letter-spacing:1.6px;text-transform:uppercase}
.racecal-filter select{width:100%;padding:13px 40px 13px 14px;border:1px solid #4a4a50;border-radius:0;color:#fff;background:#111114;font-family:"Barlow Condensed",sans-serif;font-size:1rem;font-weight:700;box-shadow:none}
.racecal-filter select:focus{outline:2px solid rgba(239,21,30,.25);border-color:var(--red)}
.racecal-filter button{padding:10px;border:1px solid var(--red);color:#fff;font-family:"Barlow Condensed",sans-serif;font-weight:800;letter-spacing:1px;text-transform:uppercase;background:var(--red)}

.racecal-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 12px}
.racecal-kpis article{display:flex;min-height:88px;align-items:center;gap:14px;padding:16px 20px;border:1px solid #38383d;background:#111113}
.racecal-kpis strong{color:var(--red);font-family:"Barlow Condensed",sans-serif;font-size:2.25rem;font-weight:900;line-height:1}
.racecal-kpis span{display:block;color:#f0f0f2;font-family:"Barlow Condensed",sans-serif;font-size:.96rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.racecal-kpis small{display:block;margin-top:2px;color:#7f7f84;font-size:.66rem;letter-spacing:.75px;text-transform:uppercase}

.racecal-next{display:grid;min-height:320px;grid-template-columns:minmax(360px,42%) 1fr;margin:0 0 36px;overflow:hidden;border:1px solid #45454a;background:#0e0e10;box-shadow:0 28px 70px rgba(0,0,0,.38)}
.racecal-next-visual,.racecal-event-visual{position:relative;min-width:0;overflow:hidden;background:#151516}
.racecal-next-visual img,.racecal-event-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .32s ease,filter .32s ease}
.racecal-next-visual:after,.racecal-event-visual:after{position:absolute;inset:0;content:"";pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.58))}
.racecal-next:hover img,.racecal-event:hover img{filter:saturate(1.08);transform:scale(1.028)}
.racecal-round,.racecal-status{position:absolute;z-index:2;top:14px;padding:6px 9px;color:#fff;font-family:"Barlow Condensed",sans-serif;font-size:.7rem;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;background:rgba(7,7,8,.88);box-shadow:0 4px 14px rgba(0,0,0,.3)}
.racecal-round{left:14px}
.racecal-status{right:14px;color:var(--green)}
.racecal-status:before{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;content:"";background:currentColor;box-shadow:0 0 9px currentColor}
.racecal-next-copy{display:flex;min-width:0;justify-content:center;padding:38px 42px;flex-direction:column}
.racecal-next-copy h2{font-size:clamp(3rem,5vw,5.2rem);overflow-wrap:anywhere}
.racecal-next-date{margin:17px 0 21px;color:#f4f4f5;font-family:"Barlow Condensed",sans-serif;font-size:1.23rem;font-weight:700;letter-spacing:1px;line-height:1.3;text-transform:uppercase}
.racecal-meta{display:flex;gap:7px;flex-wrap:wrap}
.racecal-meta span{padding:6px 9px;border:1px solid #45454b;color:#bdbdc2;font-family:"Barlow Condensed",sans-serif;font-size:.7rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;background:#151517}
.racecal-meta .tier{border-color:rgba(239,21,30,.58);color:#fff}

.racecal-section,.racecal-week,.racecal-faq{margin-top:30px}
.racecal-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #3a3a3f}
.racecal-section-head h2{font-size:2.35rem}
.racecal-section-head p{margin:0;color:#85858a;font-size:.7rem;letter-spacing:1.1px;text-transform:uppercase}
.racecal-section-head a{color:#fff;font-family:"Barlow Condensed",sans-serif;font-size:.82rem;font-weight:800;letter-spacing:1.2px;text-decoration-color:var(--red);text-underline-offset:4px;text-transform:uppercase}
.racecal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.racecal-event{display:grid;min-height:176px;grid-template-columns:185px minmax(0,1fr);overflow:hidden;border:1px solid #3a3a3f;background:#101012;transition:border-color .18s ease,transform .18s ease}
.racecal-event:hover{border-color:#626268;transform:translateY(-2px)}
.racecal-event-copy{display:flex;min-width:0;justify-content:center;padding:20px 21px;flex-direction:column}
.racecal-event-date{display:block;margin-bottom:8px;color:#ff343b;font-family:"Barlow Condensed",sans-serif;font-size:.75rem;font-weight:800;letter-spacing:1.15px;line-height:1.35;text-transform:uppercase}
.racecal-event h3{margin:0 0 14px;color:#fff;font-family:"Barlow Condensed",sans-serif;font-size:1.68rem;font-weight:900;line-height:1;text-transform:uppercase;overflow-wrap:anywhere}
.racecal-event.completed{opacity:.7}
.racecal-event.completed .racecal-status{color:#b0b0b5}
.racecal-empty{display:flex;min-height:145px;align-items:center;justify-content:center;padding:28px;border:1px solid #38383d;flex-direction:column;text-align:center;background:#111113}
.racecal-empty strong{font-family:"Barlow Condensed",sans-serif;font-size:1.4rem;text-transform:uppercase}
.racecal-empty span{margin-top:6px;color:#929297;font-size:.84rem}

.racecal-past{margin-top:30px;border-top:1px solid #38383d}
.racecal-past>summary{display:flex;align-items:center;justify-content:space-between;padding:20px 2px;color:#fff;cursor:pointer;font-family:"Barlow Condensed",sans-serif;font-size:1.5rem;font-weight:800;text-transform:uppercase;list-style:none}
.racecal-past>summary::-webkit-details-marker{display:none}
.racecal-past>summary span{margin-left:auto;color:#85858a;font-size:.7rem;letter-spacing:1px}
.racecal-past>summary:after{margin-left:18px;color:var(--red);font-size:2rem;content:"+"}
.racecal-past[open]>summary:after{content:"−"}

.racecal-week{padding-top:7px}
.racecal-week-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.racecal-week-grid article{display:flex;min-height:145px;padding:22px;border:1px solid #37373c;flex-direction:column;background:linear-gradient(145deg,#141416,#0b0b0d)}
.racecal-week-grid span{color:var(--red);font-family:"Barlow Condensed",sans-serif;font-size:.72rem;font-weight:800;letter-spacing:1.6px;text-transform:uppercase}
.racecal-week-grid strong{margin:24px 0 9px;font-family:"Barlow Condensed",sans-serif;font-size:1.45rem;text-transform:uppercase}
.racecal-week-grid small{margin-top:auto;color:#96969c;font-size:.7rem;line-height:1.5;text-transform:uppercase}

.racecal-faq{padding-top:7px}
.racecal-faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.racecal-faq-grid details{padding:21px;border:1px solid #37373c;background:#111113}
.racecal-faq-grid details[open]{border-color:#5a5a60}
.racecal-faq-grid summary{cursor:pointer;font-family:"Barlow Condensed",sans-serif;font-size:1.08rem;font-weight:800;line-height:1.2;text-transform:uppercase}
.racecal-faq-grid p{margin-top:13px;color:#9f9fa5;font-size:.81rem;line-height:1.6}

@media(max-width:980px){
  .racecal-control{align-items:stretch;flex-direction:column}.racecal-filter{min-width:0}.racecal-next{grid-template-columns:1fr}.racecal-next-visual{min-height:280px}.racecal-grid{grid-template-columns:1fr}.racecal-week-grid{grid-template-columns:repeat(2,1fr)}.racecal-faq-grid{grid-template-columns:1fr}
}

@media(max-width:700px){
  .racecal-page{width:calc(100% - 24px);padding-bottom:10px}.racecal-page[id]{scroll-margin-top:20px}.racecal-control{gap:20px;padding:22px 18px}.racecal-control h2{font-size:2.1rem}.racecal-control p{font-size:.82rem}.racecal-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.racecal-kpis article{min-width:0;min-height:80px;justify-content:center;gap:4px;padding:9px 3px;overflow:hidden;flex-direction:column;text-align:center}.racecal-kpis strong{font-size:1.9rem}.racecal-kpis span{font-size:.7rem;letter-spacing:.25px}.racecal-kpis small{display:none}.racecal-next{min-width:0;min-height:0;grid-template-columns:1fr;margin-bottom:26px}.racecal-next-visual{min-height:215px}.racecal-next-copy{padding:27px 21px}.racecal-next-copy h2{font-size:2.65rem}.racecal-next-date{font-size:1rem}.racecal-section-head{align-items:flex-start;flex-direction:column;gap:7px}.racecal-section-head h2{font-size:2rem}.racecal-event{min-width:0;min-height:0;grid-template-columns:126px minmax(0,1fr)}.racecal-event-visual{min-height:154px}.racecal-event-copy{padding:16px 14px}.racecal-event-date{font-size:.63rem}.racecal-event h3{font-size:1.25rem}.racecal-meta span{padding:5px 6px;font-size:.58rem}.racecal-round,.racecal-status{top:8px;padding:5px 6px;font-size:.58rem}.racecal-round{left:8px}.racecal-status{right:8px}.racecal-week-grid{grid-template-columns:1fr}.racecal-week-grid article{min-height:125px}.racecal-past>summary{font-size:1.25rem}.racecal-past>summary span{font-size:.64rem}
}

@media(prefers-reduced-motion:reduce){.racecal-next-visual img,.racecal-event-visual img,.racecal-event{transition:none}}
