/* CRC — Cassiopeia child template (cassiopeia_crc) user.css
   Built from design/README.md + design/cassiopeia_crc_user.css (starter).
   Colours, fonts and sizes follow the design tokens exactly. */
@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,500;0,600;0,700;1,700&family=Barlow:ital,wght@0,400;0,500;0,600;1,400&display=swap");

:root {
  --crc-navy:#1B2B3F; --crc-navy-deep:#121C2B; --crc-burgundy:#8A2A42; --crc-burgundy-hover:#7A2439;
  --crc-copper:#B87333; --crc-copper-light:#D99366; --crc-tan:#D8C3A5; --crc-cream:#F3EDE4; --crc-white:#FFFFFF;
  --crc-brown:#4A3426; --crc-brown-muted:#6E5646; --crc-jade:#2B6B52; --crc-jade-deep:#132F25;
  --crc-line:rgba(184,115,51,.30); --crc-line-soft:rgba(184,115,51,.16); --crc-line-dark:rgba(184,115,51,.40);
  --crc-input:rgba(110,86,70,.45); --crc-row-hover:#FBF8F3;
  --crc-font-display:"Barlow Condensed","Arial Narrow",sans-serif; --crc-font-body:Barlow,"Segoe UI",Arial,sans-serif;
  --crc-radius:2px; --crc-radius-card:4px; --crc-max:1280px;

  /* Cassiopeia / Bootstrap hooks */
  --cassiopeia-color-primary:var(--crc-navy);
  --cassiopeia-color-link:var(--crc-brown);
  --cassiopeia-color-hover:var(--crc-burgundy);
  --cassiopeia-font-family-body:var(--crc-font-body);
  --cassiopeia-font-family-headings:var(--crc-font-display);
  --cassiopeia-font-weight-headings:700;
  --bs-body-bg:var(--crc-cream); --bs-body-color:var(--crc-brown);
  --bs-body-font-family:var(--crc-font-body); --bs-body-font-size:1.0625rem; --bs-body-line-height:1.55;
  --bs-border-radius:var(--crc-radius); --bs-link-color:var(--crc-brown); --bs-link-hover-color:var(--crc-burgundy);
  --bs-link-color-rgb:74,52,38; --bs-link-hover-color-rgb:138,42,66;
}

/* ---------- Base ---------- */
body, .site-grid { background:var(--crc-cream); color:var(--crc-brown); font-family:var(--crc-font-body); font-size:17px; line-height:1.55; -webkit-font-smoothing:antialiased; }
h1,h2,h3,.h1,.h2,.h3 { font-family:var(--crc-font-display); font-weight:700; text-transform:uppercase; line-height:1; color:inherit; letter-spacing:0; }
h1 { font-size:5rem; line-height:.9; } h2 { font-size:3rem; } h3 { font-size:1.875rem; line-height:1.05; }
h4 { font-family:var(--crc-font-display); font-weight:700; text-transform:uppercase; }
.tnum, td, .crc-num, time { font-variant-numeric:tabular-nums; }
a { color:var(--crc-brown); text-decoration:underline; text-decoration-color:var(--crc-copper); text-decoration-thickness:2px; text-underline-offset:6px; transition:color .15s, background-color .15s, border-color .15s; }
a:hover, a:focus { color:var(--crc-burgundy); }
:focus-visible { outline:none !important; box-shadow:0 0 0 3px rgba(184,115,51,.45) !important; }
img { max-width:100%; height:auto; }
@media (max-width:767.98px){ body{font-size:16px;} h1{font-size:3.5rem;} h2{font-size:2.25rem;} h3{font-size:1.375rem;} }

/* ---------- Layout: Cassiopeia grid, 1280 content width ---------- */
.site-grid { grid-template-columns:[full-start] minmax(20px,1fr) [main-start] repeat(4,minmax(0,320px)) [main-end] minmax(20px,1fr) [full-end]; grid-gap:0 40px; }
@media (min-width:992px){ .site-grid { grid-template-columns:[full-start] minmax(40px,1fr) [main-start] repeat(4,minmax(0,320px)) [main-end] minmax(40px,1fr) [full-end]; } }
.container-component, .container-sidebar-right { padding-block:80px; }
.container-sidebar-right { grid-column-start:auto; }
@media (min-width:992px){
  .has-sidebar-right .site-grid .container-component { grid-column:main-start / span 3; }
  .has-sidebar-right .site-grid .container-sidebar-right { grid-column:span 1 / main-end; }
}
@media (max-width:767.98px){ .container-component, .container-sidebar-right { padding-block:44px; } .container-sidebar-right{padding-top:0;} }
.container-component > main > :first-child { margin-top:0; }

/* Full-bleed helper for sections inside the grid (navy/white strips) */
.crc-bleed { box-shadow:0 0 0 100vmax var(--crc-bleed-bg, transparent); clip-path:inset(0 -100vmax); background:var(--crc-bleed-bg, transparent); }

/* ---------- Topbar (desktop only) ---------- */
.container-topbar { background:var(--crc-navy-deep); color:var(--crc-tan); font:500 13px/40px var(--crc-font-body); border-bottom:1px solid rgba(184,115,51,.35); }
.container-topbar > * { max-width:1360px; padding-inline:40px; margin-inline:auto; }
.crc-topbar { display:flex; justify-content:space-between; gap:24px; min-height:40px; align-items:center; }
.crc-topbar a { color:var(--crc-copper-light); text-decoration:none; margin-left:24px; }
.crc-topbar a:hover { color:var(--crc-cream); }
@media (max-width:767.98px){ .container-topbar{display:none;} }

/* ---------- Header: cream, 128px, logo 104px ---------- */
.container-header { background:var(--crc-cream) !important; background-image:none !important; border-bottom:1px solid var(--crc-copper); box-shadow:none; color:var(--crc-navy); }
.container-header .grid-child { max-width:1360px; padding-inline:40px; margin-inline:auto; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; min-height:128px; padding-block:0; }
.container-header .navbar-brand { padding:12px 0; margin:0; }
.container-header .navbar-brand img { height:104px; width:auto; max-height:none; }
.container-header .brand-logo { text-decoration:none; }
.container-header .container-nav { display:flex; align-items:stretch; gap:16px; margin-left:auto; padding:0; }
.container-header nav, .container-header .container-nav > * { margin:0; }
.container-header .mod-menu { gap:0; }
.container-header .mod-menu > li > a, .container-header .metismenu > li > a, .container-header .metismenu > li > button {
  font:600 18px/1 var(--crc-font-display); letter-spacing:.08em; text-transform:uppercase; color:var(--crc-navy);
  padding:0 16px; min-height:128px; display:flex; align-items:center; text-decoration:none; border-bottom:3px solid transparent; background:none; }
.container-header .mod-menu > li > a:hover, .container-header .metismenu > li > a:hover { color:var(--crc-burgundy); border-bottom-color:rgba(184,115,51,.6); }
.container-header .mod-menu > li.active > a, .container-header .metismenu > li.active > a, .container-header [aria-current="page"] { color:var(--crc-burgundy); border-bottom-color:var(--crc-copper); }
.container-header .navbar-toggler { width:44px; height:44px; padding:0; border:1px solid var(--crc-copper); border-radius:var(--crc-radius); color:var(--crc-navy); background:var(--crc-white); }
.container-header .navbar-toggler .icon-menu, .container-header .navbar-toggler span { color:var(--crc-navy); }
@media (max-width:991.98px){
  .container-header .grid-child { min-height:88px; padding-inline:20px; }
  .container-header .navbar-brand img { height:72px; }
  .container-header .container-nav { width:100%; margin:0; }
  .container-header .navbar-collapse .metismenu > li > a, .container-header .navbar-collapse .mod-menu > li > a { min-height:52px; font-size:20px; border-bottom:1px solid var(--crc-line-soft); padding:0 20px; }
  .container-header .navbar-collapse .metismenu > li.active > a { background:var(--crc-navy); color:var(--crc-copper-light); border-bottom-color:var(--crc-navy); }
  .container-header .navbar-collapse .metismenu > li.active > a::before { content:"◆"; font-size:10px; color:var(--crc-copper); margin-right:10px; }
}

/* ---------- Page banner (inner pages) ---------- */
.container-banner { background:var(--crc-navy) !important; color:var(--crc-tan); border-bottom:1px solid rgba(184,115,51,.5); }
.container-banner > .banner-overlay, .container-banner .moduletable { background:none; }
.container-banner > * { max-width:1360px; padding-inline:40px; margin-inline:auto; }
.crc-banner { padding:56px 0 52px; display:flex; justify-content:space-between; align-items:flex-end; gap:32px; flex-wrap:wrap; }
.crc-banner h1 { color:var(--crc-cream); margin:14px 0 0; }
.crc-banner p { font-size:18px; max-width:640px; margin:16px 0 0; color:var(--crc-tan); }
.crc-banner__aside { font:500 14px/1.4 var(--crc-font-body); color:var(--crc-tan); text-align:right; }
.crc-banner__aside strong { display:block; color:var(--crc-copper-light); font-weight:600; letter-spacing:.12em; text-transform:uppercase; font-size:12px; margin-bottom:4px; }
.crc-breadcrumb { font:500 14px/1 var(--crc-font-body); color:var(--crc-tan); }
.crc-breadcrumb a { color:var(--crc-copper-light); text-decoration:none; }
.crc-breadcrumb span.sep { color:var(--crc-copper); margin:0 8px; }
.container-banner a { color:var(--crc-copper-light); }
@media (max-width:767.98px){ .container-banner > * { padding-inline:20px; } .crc-banner{padding:40px 0 36px;} .crc-banner h1{font-size:56px;} .crc-banner__aside{text-align:left;} }

/* ---------- Sections / eyebrows ---------- */
.crc-section { padding-block:80px; } @media (max-width:767.98px){ .crc-section{padding-block:44px;} }
.crc-section--navy { --crc-bleed-bg:var(--crc-navy); background:var(--crc-navy); color:var(--crc-tan); }
.crc-section--white { --crc-bleed-bg:var(--crc-white); background:var(--crc-white); }
.crc-section--navy h2, .crc-section--navy h3 { color:var(--crc-cream); }
.crc-section--navy a { color:var(--crc-copper-light); }
.crc-eyebrow { display:flex; align-items:center; gap:12px; font:600 13px/1 var(--crc-font-body); letter-spacing:.16em; text-transform:uppercase; color:var(--crc-brown-muted); margin:0 0 14px; }
.crc-eyebrow::before { content:""; flex:0 0 28px; height:2px; background:var(--crc-copper); }
.crc-section--navy .crc-eyebrow, .container-banner .crc-eyebrow, .crc-hero .crc-eyebrow { color:var(--crc-copper-light); }
.crc-section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; margin-bottom:32px; }
.crc-section-head h2 { margin:0; }
.crc-link-arrow { font:600 17px/1 var(--crc-font-body); color:var(--crc-brown); min-height:44px; display:inline-flex; align-items:center; text-decoration:underline; text-decoration-color:var(--crc-copper); text-decoration-thickness:2px; text-underline-offset:6px; }
@media (max-width:767.98px){ .crc-eyebrow{font-size:12px;} }

/* ---------- Buttons ---------- */
.btn { font:600 16px/1 var(--crc-font-display); letter-spacing:.08em; text-transform:uppercase; border-radius:var(--crc-radius); min-height:44px; padding:0 18px; display:inline-flex; align-items:center; justify-content:center; gap:10px; text-decoration:none; transition:background-color .15s, border-color .15s, color .15s; }
.btn-primary { --bs-btn-bg:var(--crc-burgundy); --bs-btn-border-color:var(--crc-copper); --bs-btn-color:var(--crc-cream);
  --bs-btn-hover-bg:var(--crc-burgundy-hover); --bs-btn-hover-border-color:var(--crc-copper-light); --bs-btn-hover-color:var(--crc-cream);
  --bs-btn-active-bg:var(--crc-burgundy-hover); --bs-btn-active-border-color:var(--crc-copper-light); --bs-btn-active-color:var(--crc-cream);
  min-height:52px; padding:0 26px; font-size:18px; }
.btn-secondary, .btn-outline-secondary, .btn-light { --bs-btn-bg:var(--crc-white); --bs-btn-color:var(--crc-brown); --bs-btn-border-color:var(--crc-copper);
  --bs-btn-hover-bg:var(--crc-cream); --bs-btn-hover-color:var(--crc-brown); --bs-btn-hover-border-color:var(--crc-copper);
  --bs-btn-active-bg:var(--crc-cream); --bs-btn-active-color:var(--crc-brown); --bs-btn-active-border-color:var(--crc-copper); }
.crc-section--navy .btn-secondary, .container-banner .btn-secondary, .crc-hero .btn-secondary, .crc-card--navy .btn-secondary {
  --bs-btn-bg:transparent; --bs-btn-color:var(--crc-tan); --bs-btn-border-color:rgba(184,115,51,.7);
  --bs-btn-hover-bg:transparent; --bs-btn-hover-color:var(--crc-cream); --bs-btn-hover-border-color:var(--crc-copper-light); }
.btn-icon { width:44px; height:44px; padding:0; border:1px solid var(--crc-copper); background:var(--crc-white); color:var(--crc-navy); }
.crc-ico { width:16px; height:16px; flex:0 0 16px; }
@media (max-width:767.98px){ .crc-btn-block-phone { width:100%; } }

/* ---------- Tags ---------- */
.crc-tag { display:inline-flex; align-items:center; height:26px; padding:0 10px; border-radius:var(--crc-radius); font:600 12px/1 var(--crc-font-body); letter-spacing:.1em; text-transform:uppercase; white-space:nowrap; }
.crc-tag--status { background:var(--crc-jade); color:var(--crc-cream); }
.crc-tag--neutral { border:1px solid rgba(110,86,70,.5); color:var(--crc-brown-muted); }
.crc-section--navy .crc-tag--neutral, .crc-card--navy .crc-tag--neutral { border-color:rgba(216,195,165,.6); color:var(--crc-tan); }
.crc-tag--upcoming { border:1px solid var(--crc-copper); color:var(--crc-copper-light); }

/* ---------- Cards ---------- */
.card, .crc-card { background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); box-shadow:none; color:var(--crc-brown); }
.crc-card { padding:24px; }
a.card:hover, .crc-card--link:hover { border-color:var(--crc-copper); box-shadow:0 10px 28px rgba(74,52,38,.12); }
.crc-card--navy { background:var(--crc-navy); border-color:var(--crc-copper); color:var(--crc-tan); }
.crc-card--navy h3, .crc-card--navy .crc-card__big { color:var(--crc-cream); }
.crc-card--navy a { color:var(--crc-copper-light); }
.crc-card h3 { font-size:30px; margin:0 0 8px; }
.crc-card__label { font:600 12px/1 var(--crc-font-body); letter-spacing:.16em; text-transform:uppercase; color:var(--crc-brown-muted); margin-bottom:10px; }
.crc-card--navy .crc-card__label { color:var(--crc-copper-light); }
.crc-card__big { font:700 56px/0.95 var(--crc-font-display); color:var(--crc-navy); font-variant-numeric:tabular-nums; }
.crc-card + .crc-card { margin-top:24px; }
.container-sidebar-right .moduletable + .moduletable { margin-top:24px; }
.container-sidebar-right .card-header, .container-sidebar-right .moduletable > h3 { font:600 12px/1 var(--crc-font-body); letter-spacing:.16em; text-transform:uppercase; color:var(--crc-brown-muted); background:none; border:0; padding:0 0 12px; }

/* ---------- Tables (standings + generic) ---------- */
.table, .crc-table { --bs-table-bg:var(--crc-white); --bs-table-color:var(--crc-brown); --bs-table-border-color:var(--crc-line-soft); --bs-table-hover-bg:var(--crc-row-hover); --bs-table-striped-bg:var(--crc-white); --bs-table-striped-color:var(--crc-brown);
  width:100%; border-collapse:separate; border-spacing:0; border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); overflow:hidden; background:var(--crc-white); margin:0; }
.table thead th, .crc-table thead th { font:600 12px/1 var(--crc-font-body); letter-spacing:.12em; text-transform:uppercase; color:var(--crc-brown-muted); padding:14px 20px; border-bottom:1px solid var(--crc-line); background:var(--crc-white); text-align:left; white-space:nowrap; }
.table td, .crc-table td { padding:14px 20px; vertical-align:middle; font-size:16px; border-top:1px solid var(--crc-line-soft); border-bottom:0; background:var(--crc-white); }
.table tbody tr:first-child td, .crc-table tbody tr:first-child td { border-top:0; }
.table tbody tr:hover td, .crc-table tbody tr:hover td { background:var(--crc-row-hover); }
.crc-num-lg { font:700 24px/1 var(--crc-font-display); color:var(--crc-navy); font-variant-numeric:tabular-nums; }
.crc-table .crc-title { font-weight:600; font-size:17px; }
.crc-table .crc-meta { color:var(--crc-brown-muted); font-size:15px; }
.crc-table-wrap { overflow-x:auto; }

/* ---------- File / folder icons ---------- */
.crc-file { display:inline-flex; align-items:flex-end; justify-content:center; width:32px; height:40px; border:1.5px solid var(--crc-copper); border-radius:var(--crc-radius); font:700 9px/1 var(--crc-font-body); color:var(--crc-brown); padding-bottom:6px; background:var(--crc-white); flex:0 0 32px; }
.crc-folder { display:inline-block; width:30px; height:24px; border:1.5px solid var(--crc-copper); border-top-width:5px; border-radius:var(--crc-radius); flex:0 0 30px; }

/* ---------- HOME: hero + countdown ---------- */
.crc-hero { display:grid; grid-template-columns:minmax(0,1fr) 620px; min-height:560px; color:var(--crc-tan); }
.crc-hero__text { padding:80px 56px 80px 0; display:flex; flex-direction:column; justify-content:center; }
.crc-hero__top { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:24px; }
.crc-hero__top .crc-eyebrow { margin:0; }
.crc-hero h1 { font-size:112px; line-height:.88; color:var(--crc-cream); margin:0 0 20px; }
.crc-hero__when { font:500 20px/1.3 var(--crc-font-body); color:var(--crc-tan); display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.crc-hero__when .bar { width:1px; height:20px; background:rgba(184,115,51,.45); }
.crc-dot { display:inline-block; width:18px; height:18px; vertical-align:-3px; margin-right:8px; background:#C77A2E; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4.6'/%3E%3Cg stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 1.8v3M12 19.2v3M1.8 12h3M19.2 12h3M4.8 4.8l2.1 2.1M17.1 17.1l2.1 2.1M4.8 19.2l2.1-2.1M17.1 6.9l2.1-2.1'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4.6'/%3E%3Cg stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 1.8v3M12 19.2v3M1.8 12h3M19.2 12h3M4.8 4.8l2.1 2.1M17.1 17.1l2.1 2.1M4.8 19.2l2.1-2.1M17.1 6.9l2.1-2.1'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; }
.crc-dot--night { background:var(--crc-navy); -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 14.6A8.6 8.6 0 1 1 9.4 3.5a7 7 0 0 0 11.1 11.1z'/%3E%3C/svg%3E"); mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 14.6A8.6 8.6 0 1 1 9.4 3.5a7 7 0 0 0 11.1 11.1z'/%3E%3C/svg%3E"); }
.crc-hero .crc-dot--night, .crc-card--navy .crc-dot--night, .crc-topbar .crc-dot--night, .crc-section--navy .crc-dot--night, .container-banner .crc-dot--night { background:var(--crc-tan); }
.crc-hero .crc-dot:not(.crc-dot--night), .crc-card--navy .crc-dot:not(.crc-dot--night), .crc-topbar .crc-dot:not(.crc-dot--night) { background:#E8A04E; }
.crc-topbar .crc-dot { width:15px; height:15px; margin:0 5px 0 0; vertical-align:-2px; }
.crc-countdown { display:flex; gap:12px; margin:36px 0; }
.crc-countdown > div { width:132px; padding:18px 0 14px; text-align:center; background:var(--crc-navy-deep); border:1px solid rgba(184,115,51,.55); border-radius:var(--crc-radius); }
.crc-countdown span { display:block; font:700 72px/.9 var(--crc-font-display); color:var(--crc-cream); font-variant-numeric:tabular-nums; }
.crc-countdown small { display:block; margin-top:10px; font:600 12px/1 var(--crc-font-body); letter-spacing:.16em; text-transform:uppercase; color:var(--crc-copper-light); }
.crc-hero__buttons { display:flex; gap:12px; flex-wrap:wrap; }
.crc-hero__photo { border-left:1px solid var(--crc-copper); background:var(--crc-navy-deep) repeating-linear-gradient(135deg, rgba(184,115,51,.08) 0 12px, transparent 12px 24px); display:flex; align-items:flex-end; padding:20px; font:500 13px var(--crc-font-body); color:var(--crc-tan); margin-right:calc(-1 * max(40px, (100vw - 1280px) / 2)); background-size:cover; background-position:center; }
.crc-hero__note { font-size:13px; color:var(--crc-tan); opacity:.8; margin-top:16px; }
@media (max-width:1199.98px){ .crc-hero{grid-template-columns:minmax(0,1fr) 420px;} .crc-hero h1{font-size:88px;} }
@media (max-width:991.98px){
  .crc-hero { grid-template-columns:1fr; min-height:0; } .crc-hero__photo { display:none; } .crc-hero__text { padding:44px 0; }
  .crc-hero h1 { font-size:72px; } .crc-countdown { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; } .crc-countdown > div { width:auto; }
  .crc-countdown span { font-size:52px; } .crc-hero__buttons .btn-primary { width:100%; }
}

/* ---------- HOME: latest results (DOCman documents module) ---------- */
.crc-latest .table td:first-child { width:56px; }

/* ---------- HOME: season calendar ---------- */
.crc-calendar__legend { display:flex; gap:20px; font:500 14px var(--crc-font-body); color:var(--crc-tan); }
.crc-calendar__years { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:12px; margin-bottom:12px; }
.crc-calendar__years div { grid-column:span 4; display:flex; align-items:center; gap:12px; font:700 20px/1 var(--crc-font-display); color:var(--crc-copper-light); }
.crc-calendar__years div::after { content:""; flex:1; height:1px; background:rgba(184,115,51,.45); }
.crc-calendar { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:12px; }
.crc-cal { height:210px; background:var(--crc-navy-deep); border:1px solid rgba(184,115,51,.35); border-radius:var(--crc-radius-card); padding:16px; display:flex; flex-direction:column; color:var(--crc-tan); }
.crc-cal__round { font:600 12px/1 var(--crc-font-body); letter-spacing:.12em; text-transform:uppercase; color:var(--crc-copper-light); }
.crc-cal__day { font:700 60px/1 var(--crc-font-display); color:var(--crc-cream); margin-top:14px; font-variant-numeric:tabular-nums; }
.crc-cal__month { font:700 20px/1 var(--crc-font-display); text-transform:uppercase; color:var(--crc-cream); }
.crc-cal__meta { font-size:14px; margin-top:8px; }
.crc-cal__meta time { font-size:14px; }
.crc-cal__tag { margin-top:auto; }
.crc-cal.is-next { background:var(--crc-cream); border-color:var(--crc-copper); box-shadow:0 0 0 3px rgba(184,115,51,.35); color:var(--crc-brown); }
.crc-cal.is-next .crc-cal__round { color:var(--crc-brown-muted); }
.crc-cal.is-next .crc-cal__day, .crc-cal.is-next .crc-cal__month { color:var(--crc-navy); }
@media (max-width:991.98px){
  .crc-calendar__years { display:none; }
  .crc-calendar { grid-template-columns:1fr; gap:0; border-top:1px solid rgba(184,115,51,.35); }
  .crc-cal { height:auto; min-height:68px; display:grid; grid-template-columns:52px 1fr auto; grid-template-areas:"date label tag" "date meta tag"; align-items:center; column-gap:14px; padding:10px 4px; border:0; border-bottom:1px solid rgba(184,115,51,.35); border-radius:0; background:transparent; }
  .crc-cal.is-next { padding:10px 12px; border-radius:var(--crc-radius-card); }
  .crc-cal__day { grid-area:date; font-size:36px; margin:0; text-align:center; }
  .crc-cal__month { display:none; } .crc-cal__round { grid-area:label; } .crc-cal__meta { grid-area:meta; margin:0; } .crc-cal__tag { grid-area:tag; margin:0; }
}

/* Calendar module is published on every page (it is the single source of race dates for the
   countdown and "Next race" cards) but only displayed on the home page. */
body:not(.view-featured):not(.itemid-117) .crc-calendar-section, body:not(.view-featured):not(.itemid-117) .container-top-b:has(.crc-calendar-section) { display:none !important; }
/* No banner on single news articles */
body.view-article.layout-blog .container-banner, body.view-article:not(.itemid-101) .container-banner:has(.crc-banner--news) { display:none; }

/* ---------- HOME: standings + champion ---------- */
.crc-standings td.pos, .crc-standings td.pts { width:72px; }
.crc-standings .driver-sub { display:none; color:var(--crc-brown-muted); font-size:14px; }
@media (max-width:767.98px){
  .crc-standings th.no, .crc-standings td.no, .crc-standings th.car, .crc-standings td.car { display:none; }
  .crc-standings .driver-sub { display:block; }
}
.crc-stats { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width:991.98px){ .crc-sidebar-cards { display:grid; grid-template-columns:1fr 1fr; gap:10px; } .crc-sidebar-cards .crc-card--navy { grid-column:1 / -1; } .crc-card + .crc-card { margin-top:0; } }

/* ---------- News (category blog + newsflash) ---------- */
.crc-news-grid, .mod-articlesnews, .blog-items { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.mod-articlesnews { list-style:none; padding:0; margin:0; }
.mod-articlesnews__item, .blog-item { background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); overflow:hidden; }
.mod-articlesnews__item:hover, .blog-item:hover { border-color:var(--crc-copper); box-shadow:0 10px 28px rgba(74,52,38,.12); }
.mod-articlesnews__item .newsflash-title, .blog-item .page-header h2, .blog-item h2 { font-size:30px; line-height:1.05; margin:0 0 10px; padding:0 20px; }
.mod-articlesnews__item .newsflash-title a, .blog-item h2 a { text-decoration:none; color:var(--crc-brown); }
.mod-articlesnews__item p, .blog-item .item-content > p { padding:0 20px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.mod-articlesnews__item figure, .blog-item figure { margin:0 0 18px; aspect-ratio:16/10; overflow:hidden; background:var(--crc-navy-deep); }
.mod-articlesnews__item figure img, .blog-item figure img { width:100%; height:100%; object-fit:cover; }
.blog-item .item-content { padding:0 0 20px; }
.blog-item .readmore { padding:0 20px; }
.items-leading .blog-item { display:grid; grid-template-columns:1.35fr 1fr; gap:0; }
.items-leading .blog-item h2 { font-size:52px; }
.article-info, .newsflash-meta { font:500 13px var(--crc-font-body); color:var(--crc-brown-muted); text-transform:uppercase; letter-spacing:.08em; padding:0 20px; }
.pagination .page-link { min-width:44px; height:44px; display:flex; align-items:center; justify-content:center; border:1px solid var(--crc-line); color:var(--crc-brown); border-radius:var(--crc-radius); }
.pagination .active > .page-link, .pagination .page-item.active .page-link { background:var(--crc-navy); border-color:var(--crc-navy); color:var(--crc-cream); }
@media (max-width:767.98px){
  .crc-news-grid, .mod-articlesnews, .blog-items { grid-template-columns:1fr; gap:10px; }
  .mod-articlesnews__item { display:grid; grid-template-columns:104px 1fr; }
  .mod-articlesnews__item figure { margin:0; aspect-ratio:1; }
  .items-leading .blog-item { grid-template-columns:1fr; } .items-leading .blog-item h2 { font-size:36px; }
}

/* ---------- Article (pasted press releases) ---------- */
.com-content-article__body { max-width:680px; font-size:19px; line-height:1.7; }
.com-content-article__body > p:first-of-type { font-size:22px; line-height:1.6; font-weight:500; }
.com-content-article__body blockquote { margin:14px 0; padding:28px 0; border-top:1px solid var(--crc-copper); border-bottom:1px solid var(--crc-copper); }
.com-content-article__body blockquote p { font:italic 700 34px/1.15 var(--crc-font-display); color:var(--crc-navy); margin:0; }
.com-content-article__body blockquote footer, .com-content-article__body blockquote cite { display:block; margin-top:14px; font:600 14px/1 var(--crc-font-body); letter-spacing:.12em; text-transform:uppercase; color:var(--crc-brown-muted); font-style:normal; }
.com-content-article__body h2 { font-size:30px; line-height:1.1; margin-top:12px; }
.com-content-article__body img { max-width:100%; height:auto; border-radius:var(--crc-radius-card); }
.com-content-article .page-header h1, .item-page .page-header h1, .item-page h1 { font-size:64px; line-height:.98; color:var(--crc-brown); text-wrap:balance; }
.item-page .article-info { display:flex; gap:18px; padding:14px 0; margin:20px 0 28px; border-top:1px solid var(--crc-line); border-bottom:1px solid var(--crc-line); }
@media (max-width:767.98px){ .com-content-article__body{font-size:17px;} .com-content-article__body > p:first-of-type{font-size:19px;} .item-page h1{font-size:44px;} }

/* ---------- Forms (contact + calculator) ---------- */
.form-control, .form-select, input[type="text"], input[type="email"], input[type="number"], select, textarea { min-height:48px; border:1px solid var(--crc-input); border-radius:var(--crc-radius); font:400 17px var(--crc-font-body); color:var(--crc-brown); background-color:var(--crc-white); }
.form-control:focus, .form-select:focus, input:focus, select:focus, textarea:focus { border-color:var(--crc-copper); box-shadow:0 0 0 3px rgba(184,115,51,.25); outline:none; }
.form-label, .control-label label, .crc-form label { font:600 15px/1.2 var(--crc-font-body); color:var(--crc-brown); margin-bottom:8px; }
.form-check-input { width:22px; height:22px; accent-color:var(--crc-burgundy); }
.contact-form, .com-contact__form { background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); padding:32px; }
.contact-form .btn-primary, .com-contact__form .btn-primary { margin-top:12px; }
.alert-success, .alert-message { background:var(--crc-cream); border:1px solid var(--crc-copper); color:var(--crc-brown); border-radius:var(--crc-radius-card); }

/* ---------- BoP calculator ---------- */
.crc-calc { background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); padding:32px; max-width:760px; }
.crc-calc__row { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.crc-calc__group { margin-bottom:24px; }
.crc-calc__group label { display:block; font:600 15px/1.2 var(--crc-font-body); margin-bottom:8px; }
.crc-calc__group input, .crc-calc__group select { width:100%; padding:0 14px; }
.crc-calc__hint { display:block; margin-top:6px; font-size:14px; color:var(--crc-brown-muted); }
.crc-calc__buttons { display:flex; gap:12px; flex-wrap:wrap; }
.crc-calc__result { margin-top:28px; padding:24px; background:var(--crc-cream); border:1px solid var(--crc-copper); border-radius:var(--crc-radius-card); font-size:18px; }
.crc-calc__result:empty { display:none; }
.crc-calc__value { display:block; font:700 56px/1 var(--crc-font-display); color:var(--crc-navy); font-variant-numeric:tabular-nums; margin:8px 0 10px; }
.crc-calc__error { color:var(--crc-burgundy); font-weight:600; }
@media (max-width:767.98px){ .crc-calc{padding:20px;} .crc-calc__row{grid-template-columns:1fr; gap:0;} .crc-calc__buttons .btn{width:100%;} }

/* ---------- Footer ---------- */
.container-footer { background:var(--crc-navy-deep) !important; background-image:none !important; color:var(--crc-tan); border-top:1px solid var(--crc-copper); font-size:15px; }
.container-footer .grid-child { max-width:1360px; padding:48px 40px 0; margin-inline:auto; display:block; }
.crc-footer { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:48px; padding-bottom:32px; }
.crc-footer img { height:84px; width:auto; margin-bottom:16px; }
.crc-footer h2, .crc-footer h3 { font:600 12px/1 var(--crc-font-body); letter-spacing:.16em; text-transform:uppercase; color:var(--crc-copper-light); margin:0 0 16px; }
.crc-footer ul { list-style:none; margin:0; padding:0; } .crc-footer li { margin-bottom:8px; }
.container-footer a { color:var(--crc-tan); text-decoration:none; } .container-footer a:hover { color:var(--crc-cream); }
.crc-footer__bar { border-top:1px solid rgba(184,115,51,.35); min-height:64px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:14px; }
@media (max-width:767.98px){
  .container-footer .grid-child { padding:44px 20px 0; }
  .crc-footer { grid-template-columns:1fr; gap:28px; }
  .container-footer a { display:flex; align-items:center; min-height:44px; }
}

/* ---------- DOCman (Table layout) — mapped from DOCman 6.2 markup ---------- */
.com_docman { font-family:var(--crc-font-body); color:var(--crc-brown); }
.com_docman .koowa_header { font-family:var(--crc-font-display); text-transform:uppercase; color:var(--crc-brown); }
.com_docman .docman_category > .koowa_header { font-size:40px; line-height:1; margin:0 0 24px; display:flex; align-items:center; gap:14px; }
.com_docman .koowa_header--bottom_margin, .com_docman .docman_block .koowa_header { font-size:30px; margin:40px 0 16px; }
.com_docman .koowa_table { border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); overflow:hidden; background:var(--crc-white); }
.com_docman .koowa_table > :not(caption) > * > * { background:var(--crc-white); box-shadow:none; border-color:var(--crc-line-soft); padding:12px 20px; }
.com_docman .koowa_table tbody tr:hover > * { background:var(--crc-row-hover); }
.com_docman .koowa_table--categories .koowa_header { display:flex; align-items:center; gap:14px; font:600 17px/1.3 var(--crc-font-body); text-transform:none; }
.com_docman .koowa_table--categories .koowa_header a { text-decoration:none; color:var(--crc-brown); }
.com_docman .koowa_table--categories td::after { content:"›"; float:right; color:var(--crc-copper); font-size:22px; line-height:1; margin-top:-26px; }
/* folder + file icons replaced with design boxes */
.com_docman .k-icon-document-folder { display:inline-block; width:30px; height:24px; border:1.5px solid var(--crc-copper); border-top-width:5px; border-radius:var(--crc-radius); background:none !important; }
.com_docman .k-icon-document-folder::before { content:none !important; }
.com_docman [class*="k-icon-document-"]:not(.k-icon-document-folder) { display:inline-flex; align-items:flex-end; justify-content:center; width:32px; height:40px; border:1.5px solid var(--crc-copper); border-radius:var(--crc-radius); background:var(--crc-white) !important; padding-bottom:6px; vertical-align:middle; }
.com_docman [class*="k-icon-document-"]:not(.k-icon-document-folder)::before { content:"DOC" !important; font:700 9px/1 var(--crc-font-body) !important; color:var(--crc-brown); }
.com_docman .k-icon-document-pdf::before { content:"PDF" !important; }
.com_docman .k-icon-document-image::before { content:"IMG" !important; }
.com_docman .k-icon-document-archive::before { content:"ZIP" !important; }
.com_docman .k-icon-document-spreadsheet::before { content:"XLS" !important; }
/* document rows */
.com_docman .koowa_table--documents .koowa_header { font:600 17px/1.35 var(--crc-font-body); text-transform:none; display:block; }
.com_docman .docman_track_download { color:var(--crc-brown); text-decoration:none; display:inline-flex; align-items:center; gap:14px; }
.com_docman .docman_track_download:hover { color:var(--crc-burgundy); }
.com_docman .docman_download__info, .com_docman .detail-label, .com_docman .koowa_table__dates { font:400 15px var(--crc-font-body); color:var(--crc-brown-muted); font-variant-numeric:tabular-nums; }
.com_docman .label, .com_docman .badge { display:inline-flex; align-items:center; height:24px; padding:0 8px; border-radius:var(--crc-radius); font:600 11px/1 var(--crc-font-body); letter-spacing:.1em; text-transform:uppercase; background:transparent !important; border:1px solid rgba(110,86,70,.5); color:var(--crc-brown-muted) !important; margin-left:6px; }
.com_docman .label-success, .com_docman .badge.bg-success { background:var(--crc-jade) !important; border-color:var(--crc-jade); color:var(--crc-cream) !important; }
.com_docman .k-js-item-select, .com_docman .k-table-data--toggle { display:none; }
.com_docman td:has(> label > .k-js-item-select) { display:none; }
/* buttons inside DOCman */
.com_docman .btn, .com_docman .k-button { font:600 16px/1 var(--crc-font-display); letter-spacing:.08em; text-transform:uppercase; min-height:44px; padding:0 16px; border-radius:var(--crc-radius); background:var(--crc-white); color:var(--crc-brown); border:1px solid var(--crc-copper); display:inline-flex; align-items:center; gap:8px; text-decoration:none; }
.com_docman .btn:hover, .com_docman .k-button:hover { background:var(--crc-cream); color:var(--crc-brown); }
.com_docman .btn-primary { background:var(--crc-burgundy); color:var(--crc-cream); min-height:52px; padding:0 26px; font-size:18px; }
.com_docman .btn-primary:hover { background:var(--crc-burgundy-hover); color:var(--crc-cream); border-color:var(--crc-copper-light); }
.com_docman .k-toolbar { display:flex; justify-content:flex-end; margin-bottom:16px; }
.com_docman .k-is-disabled { opacity:.5; }
/* search form */
.com_docman .docman_search input[type="text"], .com_docman .docman_search input[type="search"] { min-height:52px; padding-left:16px; }
.com_docman .k-pagination .pagination { margin-top:24px; }
/* phone: rows become stacked cards */
@media (max-width:767.98px){
  .com_docman .koowa_table--documents, .com_docman .koowa_table--documents tbody, .com_docman .koowa_table--documents tr, .com_docman .koowa_table--documents td { display:block; width:100%; }
  .com_docman .koowa_table--documents { border:0; background:transparent; }
  .com_docman .koowa_table--documents tr { background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); padding:14px; margin-bottom:10px; }
  .com_docman .koowa_table--documents > :not(caption) > * > * { padding:0; border:0; }
  .com_docman .docman_category > .koowa_header { font-size:30px; }
}

/* DOCman module (latest documents) */
.mod_docman .docman_documents, .mod_docman ul { list-style:none; margin:0; padding:0; }
.mod_docman li { background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); padding:12px 20px; margin-bottom:-1px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.mod_docman li:first-child { border-radius:var(--crc-radius-card) var(--crc-radius-card) 0 0; } .mod_docman li:last-child { border-radius:0 0 var(--crc-radius-card) var(--crc-radius-card); }
.mod_docman li:hover { background:var(--crc-row-hover); }
.mod_docman a { text-decoration:none; color:var(--crc-brown); font-weight:600; }
.mod_docman .docman_download__info, .mod_docman .koowa_list__date, .mod_docman .detail-label { color:var(--crc-brown-muted); font-weight:400; font-size:15px; }

/* =====================================================================
   FIXES after first visual review (23 Oct)
   ===================================================================== */
html, body { overflow-x:clip; }

/* 1. Header: topbar on its own row, then logo (left) + menu (right) in one 128px row */
.container-header { display:flex !important; flex-wrap:wrap; align-items:center; padding:0 !important; }
.container-header > .container-topbar { flex:0 0 100%; order:-1; }
.container-header > .grid-child { max-width:none !important; width:auto !important; margin:0 !important; padding:0 !important; min-height:128px; display:flex; align-items:center; }
.container-header > .grid-child:not(.container-nav) { margin-left:max(40px, calc((100% - 1280px) / 2)) !important; }
.container-header > .grid-child.container-nav { margin-left:auto !important; margin-right:max(40px, calc((100% - 1280px) / 2)) !important; align-self:stretch; }
.container-header .navbar { padding:0; align-items:stretch; height:100%; }
.container-header .navbar-collapse { align-self:stretch; }
.container-header .metismenu.mod-menu { display:flex; align-items:stretch; height:100%; margin:0; }
@media (max-width:991.98px){
  .container-header > .grid-child { min-height:88px; }
  .container-header > .grid-child:not(.container-nav) { margin-left:20px !important; }
  .container-header > .grid-child.container-nav { margin-right:20px !important; align-self:center; }
  .container-header .navbar-collapse { position:absolute; left:0; right:0; top:100%; background:var(--crc-cream); border-bottom:1px solid var(--crc-copper); z-index:50; }
  .container-header { position:relative; }
  .container-header .metismenu.mod-menu { display:block; height:auto; }
}

/* 2. hero photo: no negative margin (caused sideways scroll) */
.crc-hero__photo { margin-right:0; }
.container-banner { overflow:hidden; }

/* 3. Buttons: explicit colours (Cassiopeia maps .btn-primary to its own primary colour) */
.btn.btn-primary, a.btn-primary, button.btn-primary { background-color:var(--crc-burgundy) !important; border:1px solid var(--crc-copper) !important; color:var(--crc-cream) !important; }
.btn.btn-primary:hover, a.btn-primary:hover, button.btn-primary:hover { background-color:var(--crc-burgundy-hover) !important; border-color:var(--crc-copper-light) !important; }
.btn.btn-secondary, a.btn-secondary, button.btn-secondary { background-color:var(--crc-white) !important; border:1px solid var(--crc-copper) !important; color:var(--crc-brown) !important; }
.btn.btn-secondary:hover { background-color:var(--crc-cream) !important; }
.crc-hero .btn.btn-secondary, .container-banner .btn.btn-secondary, .crc-section--navy .btn.btn-secondary, .crc-card--navy .btn.btn-secondary {
  background-color:transparent !important; border-color:rgba(184,115,51,.7) !important; color:var(--crc-tan) !important; }
.crc-hero .btn.btn-secondary:hover, .crc-card--navy .btn.btn-secondary:hover, .crc-section--navy .btn.btn-secondary:hover { color:var(--crc-cream) !important; border-color:var(--crc-copper-light) !important; }
.btn::after { content:none; }

/* 4. Module areas stack vertically (Cassiopeia shows them side by side) */
.container-top-a, .container-top-b, .container-bottom-a, .container-bottom-b, .container-banner { display:block !important; }
.container-top-a > *, .container-top-b > *, .container-bottom-a > *, .container-bottom-b > * { width:100%; max-width:100%; margin-inline:0; }
.container-bottom-a { padding-bottom:80px; }
.container-top-a + .container-top-b { margin-top:80px; }

/* 5. DOCman module (latest documents / pinned regs) as table-like rows */
.mod_docman_icons { list-style:none; margin:0; padding:0; background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); overflow:hidden; }
.mod_docman_icons .module_document { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:6px 24px; padding:14px 20px; border:0; border-top:1px solid var(--crc-line-soft); border-radius:0; margin:0; background:var(--crc-white); }
.mod_docman_icons .module_document:first-child { border-top:0; }
.mod_docman_icons .module_document:hover { background:var(--crc-row-hover); }
.mod_docman .koowa_header { display:flex; align-items:center; gap:14px; font:600 17px/1.35 var(--crc-font-body) !important; text-transform:none !important; letter-spacing:0; color:var(--crc-brown); margin:0; }
.mod_docman .koowa_header a { color:var(--crc-brown); text-decoration:none; font-weight:600; }
.mod_docman .koowa_header a:hover { color:var(--crc-burgundy); }
.mod_docman .module_document__info { display:flex; gap:18px; justify-content:flex-end; font:400 15px var(--crc-font-body); color:var(--crc-brown-muted); font-variant-numeric:tabular-nums; white-space:nowrap; }
.mod_docman .module_document__category { font-size:15px; color:var(--crc-brown-muted); }
.mod_docman [class*="k-icon-document-"], .com_docman [class*="k-icon-document-"]:not(.k-icon-document-folder) { display:inline-flex !important; align-items:flex-end; justify-content:center; width:32px; height:40px; border:1.5px solid var(--crc-copper); border-radius:var(--crc-radius); background:var(--crc-white) !important; padding-bottom:6px; flex:0 0 32px; font-size:0; }
.mod_docman [class*="k-icon-document-"]::before { content:"DOC" !important; font:700 9px/1 var(--crc-font-body) !important; color:var(--crc-brown); }
.mod_docman .k-icon-document-pdf::before, .com_docman .k-icon-document-pdf::before { content:"PDF" !important; }
.mod_docman .k-icon-document-image::before { content:"IMG" !important; } .mod_docman .k-icon-document-archive::before { content:"ZIP" !important; }
.k-ui-namespace .mod_docman .koowa_header { display:flex !important; width:auto !important; }
.k-ui-namespace .mod_docman .whitespace_preserver, .k-ui-namespace .mod_docman .module_document__info { white-space:normal !important; }
.mod_docman_icons .module_document { grid-template-columns:minmax(0,1fr) minmax(0,300px) !important; }
.mod_docman .module_document__info { display:flex !important; min-width:0; overflow:hidden; }
.mod_docman .module_document__info > div, .mod_docman .koowa_wrapped_content { display:inline !important; width:auto !important; max-width:100%; }
.mod_docman .koowa_header .koowa_wrapped_content { display:block !important; }
.mod_docman .koowa_header > .koowa_header__item { display:block !important; width:auto !important; }
.mod_docman .koowa_header > .koowa_header__item:not(.koowa_header__item--image_container) { flex:1 1 auto; min-width:0; }
.mod_docman .koowa_header__item--image_container { flex:0 0 32px; }
.mod_docman .module_document__description:empty, .mod_docman .module_document__description { display:none; }
.mod_docman .module_document > .koowa_header { grid-column:1; }
.mod_docman .module_document > .module_document__info { grid-column:2; }
.crc-hero__photo { margin-right:calc(-1 * max(40px, (100vw - 1280px) / 2)); }
@media (max-width:767.98px){ .mod_docman_icons .module_document { grid-template-columns:1fr; } .mod_docman .module_document > .module_document__info { grid-column:1; justify-content:flex-start; padding-left:46px; } }

/* 6. Sidebar category trees: top level only, design list style */
.container-sidebar-right .mod_docman--categories ul ul, .container-sidebar-right .k-ui-namespace ul ul { display:none; }
.container-sidebar-right .card { padding:20px 24px; }
.container-sidebar-right .card-header { padding:0 0 12px !important; }
.container-sidebar-right .card-body { padding:0; }
.container-sidebar-right .mod_docman ul { list-style:none; margin:0; padding:0; border:0; }
.container-sidebar-right .mod_docman li { display:block; border:0; border-top:1px solid var(--crc-line-soft); border-radius:0; padding:0; margin:0; background:none; }
.container-sidebar-right .mod_docman li:first-child { border-top:0; }
.container-sidebar-right .mod_docman li a { display:flex; justify-content:space-between; align-items:center; min-height:44px; font:600 16px var(--crc-font-body); text-transform:none; color:var(--crc-brown); }
.container-sidebar-right .mod_docman li a::after { content:"›"; color:var(--crc-copper); font-size:20px; }
.container-sidebar-right .mod_docman .koowa_header { font:600 16px var(--crc-font-body) !important; }
.container-sidebar-right .mod-articleslatest { list-style:none; padding:0; margin:0; }
.container-sidebar-right .mod-articleslatest li { border-top:1px solid var(--crc-line-soft); padding:10px 0; }
.container-sidebar-right .mod-articleslatest li:first-child { border-top:0; }
.container-sidebar-right .mod-articleslatest a { text-decoration:none; font-weight:600; }

/* 7. Single pages: hide Joomla's duplicate title/meta/prev-next where the banner already titles the page */
.itemid-112 .com-content-article > .page-header, .itemid-114 .com-content-article > .page-header,
.itemid-112 .article-info, .itemid-114 .article-info, .itemid-112 .pagenavigation, .itemid-114 .pagenavigation { display:none !important; }
.com-contact .page-header, .com-contact__container > h2, .com-contact .contact-address, .com-contact__address, .com-contact h3:not(.crc-keep) { display:none; }
.com-contact .com-contact__form legend, .com-contact .contact-form legend { font:700 30px/1 var(--crc-font-display); text-transform:uppercase; margin-bottom:16px; }
.article-info-term { display:none; }

/* 8. News blog: leading article full width, intro grid of 3 */
.com-content-category-blog .items-leading { display:block; margin-bottom:24px; }
.com-content-category-blog .items-leading .blog-item { display:block; }
.com-content-category-blog .items-leading .blog-item h2 { font-size:52px; line-height:1; }
.com-content-category-blog .items-leading .blog-item .item-content { padding:28px 32px; }
.com-content-category-blog .items-row, .com-content-category-blog .blog-items.columns-3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.blog-item .item-content { padding:24px 0; }
.blog-item .page-header { margin:0; }
.blog-item blockquote, .mod-articlesnews__item blockquote { display:none; }
@media (max-width:767.98px){ .com-content-category-blog .items-row, .com-content-category-blog .blog-items.columns-3 { grid-template-columns:1fr; } .com-content-category-blog .items-leading .blog-item h2 { font-size:36px; } }

/* file-type labels: must out-rank the generic "DOC" rule (body has .com_docman on DOCman pages) */
[class*="k-icon-document-"].k-icon-document-pdf:not(.k-icon-document-folder)::before, [class*="k-icon-document-"].k-icon-type-pdf:not(.k-icon-document-folder)::before { content:"PDF" !important; }
[class*="k-icon-document-"].k-icon-document-image:not(.k-icon-document-folder)::before { content:"IMG" !important; }
[class*="k-icon-document-"].k-icon-document-archive:not(.k-icon-document-folder)::before { content:"ZIP" !important; }
[class*="k-icon-document-"].k-icon-document-spreadsheet:not(.k-icon-document-folder)::before { content:"XLS" !important; }
/* pinned regs info: one line */
.mod_docman_icons .module_document { grid-template-columns:minmax(0,1fr) minmax(0,380px) !important; }
.mod_docman .module_document__info { white-space:nowrap !important; gap:16px; }
/* news cards: compact "Read more" text link instead of a long button */
.mod-articlesnews__item .readmore, .blog-item .readmore { padding:0 20px 20px; }
.mod-articlesnews__item .readmore a, .blog-item .readmore a { all:unset; cursor:pointer; font:600 16px var(--crc-font-body); color:var(--crc-brown); text-decoration:underline; text-decoration-color:var(--crc-copper); text-decoration-thickness:2px; text-underline-offset:6px; }
.mod-articlesnews__item .readmore a .icon-chevron-right, .blog-item .readmore a [class^="icon-"] { display:none; }
/* sidebar trees: drop DOCman's left toggle glyph */
.container-sidebar-right .mod_docman li > .k-js-tree-toggle, .container-sidebar-right .mod_docman li > span:first-child:not(:only-child) { display:none; }

/* Front end is view/download only: no Owner tags, no Edit/Delete (documents are managed in the admin) */
.com_docman .label-success.bg-primary, .com_docman .badge.bg-primary, .com_docman .owner-label { display:none !important; }
.com_docman .koowa_toolbar, .com_docman .koowa_table__manage, .com_docman .btn-toolbar.koowa_toolbar,
.com_docman .k-js-toolbar .k-button-download, .com_docman td.koowa_table__manage { display:none !important; }
.com_docman table th:last-child:empty { display:none; }
/* file icon boxes: hide DOCman's own icon glyph so only the PDF/DOC label shows */
.com_docman [class*="k-icon-document-"]:not(.k-icon-document-folder), .mod_docman [class*="k-icon-document-"] { background-image:none !important; color:var(--crc-brown) !important; }
.com_docman [class*="k-icon-document-"]:not(.k-icon-document-folder)::after, .mod_docman [class*="k-icon-document-"]::after { content:none !important; display:none !important; }

/* News: source credit line */
.crc-source { font:500 14px/1.5 var(--crc-font-body); color:var(--crc-brown-muted); border-top:1px solid var(--crc-line); padding-top:14px; margin-top:24px; }
.crc-source a { color:var(--crc-brown); font-weight:600; }
.mod-articlesnews__item .crc-source, .mod-articlesnews__item .crc-eyebrow { display:none; }
.blog-item .crc-eyebrow { padding:0; margin-bottom:10px; }

/* Footer: parent federation (BMF) */
.crc-footer__federation { display:flex; align-items:center; gap:24px; padding:20px 0; border-top:1px solid rgba(184,115,51,.35); }
.crc-footer__federation img { height:64px; width:auto; opacity:1; display:block; }
.crc-footer__federation a:hover img { opacity:1; }
.crc-footer__federation p { margin:0; font-size:14px; color:var(--crc-tan); max-width:none; }
.crc-footer__federation p a { text-decoration:underline; text-decoration-color:var(--crc-copper); text-underline-offset:4px; }
@media (max-width:767.98px){ .crc-footer__federation { flex-direction:column; align-items:flex-start; gap:14px; } .crc-footer__federation a { min-height:0; } }

/* Offline / maintenance login page: monochrome cream logo on navy, no duplicate logo circle */
.offline-card .header { background:var(--crc-navy) !important; background-image:none !important; border-bottom:1px solid var(--crc-copper); padding:28px 24px 24px; }
.offline-card .header img { content:url("../images/crc-logo-mono-cream.png"); max-height:110px; width:auto; }
.offline-card .header h1, .offline-card .header p { color:var(--crc-tan); }
.offline-card .logo-icon { display:none !important; }
.offline-card .btn-primary, .offline-card button[type="submit"] { background:var(--crc-burgundy) !important; border-color:var(--crc-copper) !important; color:var(--crc-cream) !important; }

/* =====================================================================
   RESULTS REDESIGN (DOCman pages) — 24 Oct
   ===================================================================== */
/* file badge: real text, horizontal */
.crc-file { display:inline-flex !important; align-items:flex-end; justify-content:center; width:32px; height:40px; flex:0 0 32px; border:1.5px solid var(--crc-copper); border-radius:var(--crc-radius); background:var(--crc-white); font:700 9px/1 var(--crc-font-body) !important; letter-spacing:.02em; color:var(--crc-brown); padding:0 0 6px; white-space:nowrap; text-transform:uppercase; }
.koowa_header__item--image_container { display:inline-flex !important; width:auto !important; margin:0 !important; }
.koowa_header__item--image_container::before, .koowa_header__item--image_container::after { content:none !important; }

/* page structure */
.com_docman .crc-hide { display:none !important; }
.com_docman .docman_category > .koowa_header { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 18px; font:700 48px/1 var(--crc-font-display); text-transform:uppercase; color:var(--crc-brown); margin:0 0 28px; }
.com_docman .docman_category > .koowa_header .koowa_header__item--image_container { display:none !important; }
.com_docman .crc-count { font:600 13px/1 var(--crc-font-body); letter-spacing:.16em; text-transform:uppercase; color:var(--crc-brown-muted); }
.com_docman .koowa_header--bottom_margin, .com_docman .docman_block { display:none !important; }   /* "Categories" / "Documents" headings */
.com_docman .koowa_table__dates, .com_docman td.k-table-data--toggle { }
.com_docman td.k-table-data--toggle { display:none !important; }

/* category list → grid of cards (seasons, championships, rounds) */
.com_docman .koowa_table--categories, .com_docman .koowa_table--categories tbody { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; border:0 !important; background:transparent !important; margin:0 0 48px; }
.com_docman .koowa_table--categories tbody { grid-column:1 / -1; }
.com_docman .koowa_table--categories tr { display:block; }
.com_docman .koowa_table--categories td { display:block; height:100%; background:var(--crc-white) !important; border:1px solid var(--crc-line) !important; border-radius:var(--crc-radius-card); padding:0 !important; transition:border-color .15s, box-shadow .15s; }
.com_docman .koowa_table--categories td:hover { border-color:var(--crc-copper) !important; box-shadow:0 10px 28px rgba(74,52,38,.12); }
.com_docman .koowa_table--categories td::after { content:none !important; }
.com_docman .koowa_table--categories .koowa_header { display:flex !important; align-items:center; gap:14px; padding:20px 22px; min-height:76px; position:relative; font:700 22px/1.1 var(--crc-font-display) !important; text-transform:uppercase !important; }
.com_docman .koowa_table--categories .koowa_header::after { content:"›"; margin-left:auto; color:var(--crc-copper); font:400 28px/1 var(--crc-font-body); }
.com_docman .koowa_table--categories .koowa_header a { color:var(--crc-brown); text-decoration:none; }
.com_docman .koowa_table--categories .koowa_header__item:last-child a::before { content:""; position:absolute; inset:0; }   /* whole card clickable */
@media (max-width:991.98px){ .com_docman .koowa_table--categories, .com_docman .koowa_table--categories tbody { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:575.98px){ .com_docman .koowa_table--categories, .com_docman .koowa_table--categories tbody { grid-template-columns:1fr; gap:8px; } .com_docman .koowa_table--categories .koowa_header { min-height:60px; padding:14px 16px; font-size:20px !important; } }

/* document table rows */
.com_docman .koowa_table--documents { border:1px solid var(--crc-line) !important; border-radius:var(--crc-radius-card); overflow:hidden; }
.com_docman .koowa_table--documents tr.docman_item > td { padding:14px 20px !important; vertical-align:middle; border-top:1px solid var(--crc-line-soft) !important; }
.com_docman .koowa_table--documents tr.docman_item:first-child > td { border-top:0 !important; }
.com_docman .koowa_table--documents .koowa_header, .com_docman .koowa_table--documents .koowa_wrapped_content, .com_docman .koowa_table--documents .whitespace_preserver { display:block !important; white-space:normal !important; }
.com_docman .koowa_table--documents .whitespace_preserver { display:flex !important; align-items:center; flex-wrap:wrap; gap:4px 28px; }
.com_docman .docman_track_download { display:inline-flex !important; align-items:center; gap:16px; font:600 18px/1.3 var(--crc-font-body); color:var(--crc-brown); text-decoration:none; }
.com_docman .docman_track_download:hover [itemprop="name"] { color:var(--crc-burgundy); }
.com_docman .crc-doc-meta { display:flex; gap:20px; margin-left:auto; font:400 15px var(--crc-font-body); color:var(--crc-brown-muted); font-variant-numeric:tabular-nums; white-space:nowrap; }
.com_docman .crc-date-cell { width:130px; white-space:nowrap; font:400 15px var(--crc-font-body); color:var(--crc-brown-muted); font-variant-numeric:tabular-nums; text-align:right; }
.com_docman .crc-dl-cell { width:1%; white-space:nowrap; text-align:right; }
.com_docman .crc-dl { min-height:40px !important; padding:0 14px !important; font-size:15px !important; }
@media (max-width:767.98px){
  .com_docman .koowa_table--documents tr.docman_item { display:grid !important; grid-template-columns:1fr auto; gap:6px 12px; padding:14px; }
  .com_docman .koowa_table--documents tr.docman_item > td { display:block; padding:0 !important; border:0 !important; width:auto !important; }
  .com_docman .koowa_table--documents tr.docman_item > td:nth-child(2) { grid-column:1 / -1; }
  .com_docman .crc-date-cell { text-align:left; }
  .com_docman .crc-doc-meta { margin-left:48px; width:100%; }
  .com_docman .crc-dl span { display:none; } .com_docman .crc-dl { width:44px; height:44px; padding:0 !important; justify-content:center; }
}

/* search + sorting */
.com_docman .k-filters { background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); padding:14px 18px; margin:0 0 20px; box-shadow:none; }
.com_docman .k-checkbox-dropdown-label { font:600 16px var(--crc-font-body); color:var(--crc-brown); cursor:pointer; }
.com_docman .k-filters input[type="search"], .com_docman .k-filters input[type="text"] { min-height:48px; }
.com_docman .docman_sorting { display:flex; justify-content:flex-end; align-items:center; gap:12px; margin:0 0 14px; }
.com_docman .docman_sorting label { font:600 13px var(--crc-font-body); letter-spacing:.12em; text-transform:uppercase; color:var(--crc-brown-muted); margin:0; }
.com_docman .docman_sorting select { min-height:44px; width:auto; padding:0 36px 0 12px; }

/* breadcrumbs on document pages */
.container-component .mod-breadcrumbs__wrapper, .container-component nav[aria-label="Breadcrumbs"] { margin:0 0 20px; }
.container-component .breadcrumb { background:none; padding:0; margin:0; font:500 14px var(--crc-font-body); }
.container-component .breadcrumb a { color:var(--crc-brown-muted); text-decoration:none; }
.container-component .breadcrumb a:hover { color:var(--crc-burgundy); }
.container-component .breadcrumb-item + .breadcrumb-item::before { content:"/"; color:var(--crc-copper); }
.container-component .breadcrumb .active, .container-component .breadcrumb-item:last-child { color:var(--crc-brown); font-weight:600; }
.container-component .mod-breadcrumbs__here, .container-component .breadcrumb .divider { display:none; }

/* Main menu dropdown ("Our Events") */
.container-header .metismenu > li.parent, .container-header .metismenu > li.deeper { position:relative; }
.container-header .metismenu > li > .mm-toggler, .container-header .metismenu > li > button.mm-toggler { font:600 18px/1 var(--crc-font-display); letter-spacing:.08em; text-transform:uppercase; color:var(--crc-navy); background:none; border:0; border-bottom:3px solid transparent; padding:0 16px; min-height:128px; display:flex; align-items:center; gap:8px; }
.container-header .metismenu > li > .mm-toggler::after { content:"▾"; font-size:13px; color:var(--crc-copper); border:0; margin:0; }
.container-header .metismenu > li.active > .mm-toggler, .container-header .metismenu > li > .mm-toggler:hover { color:var(--crc-burgundy); border-bottom-color:var(--crc-copper); }
.container-header .metismenu .mm-collapse { background:var(--crc-cream); border:1px solid var(--crc-copper); border-top:3px solid var(--crc-copper); border-radius:0 0 var(--crc-radius-card) var(--crc-radius-card); box-shadow:0 10px 28px rgba(74,52,38,.15); padding:6px 0; min-width:300px; list-style:none; margin:0; }
@media (min-width:992px){ .container-header .metismenu .mm-collapse { position:absolute; top:100%; left:0; z-index:60; } .container-header .metismenu .mm-collapse:not(.mm-show) { display:none; } }
.container-header .metismenu .mm-collapse a { display:flex; align-items:center; min-height:48px; padding:0 20px; font:600 17px var(--crc-font-display); letter-spacing:.06em; text-transform:uppercase; color:var(--crc-navy); text-decoration:none; border:0; }
.container-header .metismenu .mm-collapse a:hover, .container-header .metismenu .mm-collapse li.active > a { background:var(--crc-white); color:var(--crc-burgundy); }

/* top Results/Rules page: sidebar tree duplicates the category cards */
body:has(.docman_category.crc-hide) .container-sidebar-right .crc-tree { display:none; }

/* Reading width (680px, large first paragraph) only for news articles; info pages use the full column */
body:not(.itemid-111) .com-content-article__body { max-width:none; font-size:17px; line-height:1.6; }
body:not(.itemid-111) .com-content-article__body > p:first-of-type { font-size:inherit; font-weight:400; }
.crc-news-grid > .crc-card, .crc-news-grid > .crc-card + .crc-card { margin-top:0 !important; height:100%; }
.crc-news-grid > a.crc-card { color:var(--crc-brown); }
.crc-news-grid > a.crc-card h3 { color:var(--crc-brown); }

/* Watch page: responsive 16:9 video embeds */
.crc-video { position:relative; aspect-ratio:16/9; background:var(--crc-navy-deep); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); overflow:hidden; }
.crc-video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.crc-video--live { border:1px solid var(--crc-copper); box-shadow:0 0 0 3px rgba(184,115,51,.25); margin-top:24px; }
.crc-video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:16px; }
.crc-video-item { margin:0; }
.crc-video-item figcaption { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:12px 2px 0; font:500 15px var(--crc-font-body); color:var(--crc-brown-muted); }
.crc-video-item figcaption strong { font:700 20px/1.1 var(--crc-font-display); text-transform:uppercase; color:var(--crc-brown); }
.crc-video-item figcaption a { color:var(--crc-brown); font-weight:600; }
@media (max-width:767.98px){ .crc-video-grid { grid-template-columns:1fr; } }
.crc-live-wait { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; padding:32px 40px; background:var(--crc-navy) url("/images/photos/btcc-20260508-gallery-19.jpg") center/cover; color:var(--crc-tan); }
.crc-live-wait::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(18,28,43,.95) 0%, rgba(18,28,43,.75) 55%, rgba(18,28,43,.35) 100%); }
.crc-live-wait > * { position:relative; margin:0 0 8px; }
.crc-live-wait .crc-card__label { color:var(--crc-copper-light); }
.crc-live-wait h3 { color:var(--crc-cream); font-size:48px; }
.crc-live-wait__note { font-size:15px; opacity:.85; }
@media (max-width:767.98px){ .crc-live-wait { padding:20px; } .crc-live-wait h3 { font-size:30px; } }
.crc-live-btn { animation:none; }
.crc-live-btn::first-letter { color:#e0595f; }

/* =====================================================================
   DESIGN CLEAN-UP PASS (24 Oct) — phone layout, spacing, polish
   ===================================================================== */
/* 1. Grid: narrow gutters on phones/tablets (the 40px gaps made the page wider than the screen) */
.site-grid { grid-template-columns:[full-start] minmax(16px,1fr) [main-start] repeat(4,minmax(0,320px)) [main-end] minmax(16px,1fr) [full-end] !important; grid-gap:0 12px !important; }
@media (min-width:992px){ .site-grid { grid-template-columns:[full-start] minmax(40px,1fr) [main-start] repeat(4,minmax(0,320px)) [main-end] minmax(40px,1fr) [full-end] !important; grid-gap:0 40px !important; } }
@media (max-width:991.98px){
  .site-grid > [class*="container-"]:not(.full-width) { grid-column:main-start / main-end !important; }
  .container-sidebar-right { padding-top:0 !important; }
}

/* 2. Spacing rhythm: 56px between banner and content, 72px between home sections */
.container-component, .container-sidebar-right { padding-block:56px; }
.crc-section { padding-block:72px; }
.crc-section-head[style*="margin-top:80px"] { margin-top:64px !important; }
.container-bottom-a { padding-bottom:72px; }
@media (max-width:767.98px){ .container-component, .container-sidebar-right { padding-block:32px; } .crc-section { padding-block:40px; } .crc-section-head[style*="margin-top:80px"] { margin-top:40px !important; } .container-bottom-a { padding-bottom:40px; } }

/* 3. Phone: modules that had desktop !important widths */
@media (max-width:767.98px){
  .mod_docman_icons .module_document { grid-template-columns:1fr !important; gap:6px; }
  .mod_docman .module_document > .module_document__info { grid-column:1 !important; justify-content:flex-start; padding-left:46px; white-space:normal !important; }
  .crc-calendar, .crc-calendar__years { grid-template-columns:1fr !important; }
  .crc-calendar__years { display:none !important; }
  .crc-hero h1 { font-size:64px; }
  .crc-countdown span { font-size:44px; }
  .crc-section-head { align-items:flex-start; }
  .crc-section-head h2 { font-size:34px; }
  .crc-banner h1 { font-size:48px !important; }
  .crc-table th, .crc-table td { padding:12px 14px; }
  .crc-stats { grid-template-columns:1fr; }
  .crc-news-grid { grid-template-columns:1fr; }
}

/* 4. Calendar cards: lighter meta line */
.crc-cal__meta { font-size:13px; line-height:1.35; color:inherit; opacity:.9; }
.crc-cal { gap:0; }

/* 5. Home news cards: photo first, then title and summary */
.mod-articlesnews__item { display:flex; flex-direction:column; }
.mod-articlesnews__item > figure, .mod-articlesnews__item .newsflash-image { order:-1; margin:0 0 18px !important; }
.mod-articlesnews__item .newsflash-title { font-size:24px; line-height:1.1; margin:0 0 10px; }
.mod-articlesnews__item p { font-size:15px; color:var(--crc-brown-muted); }
@media (max-width:767.98px){ .mod-articlesnews__item { display:grid; grid-template-columns:104px 1fr; align-items:start; } .mod-articlesnews__item > figure { grid-row:1 / span 3; margin:0 !important; } .mod-articlesnews__item .newsflash-title { font-size:18px; padding:12px 14px 0; } .mod-articlesnews__item p { padding:0 14px; } }

/* 6. News blog cards: no repeated label/source line in the list (they show on the article page) */
.blog-items .blog-item .crc-source, .blog-items.masonry-3 .blog-item .crc-eyebrow { display:none; }
.blog-item .article-info { padding:0 20px; margin:6px 0 10px; font-size:12px; }
.blog-item .article-info [class^="icon-"] { display:none; }
.items-leading .blog-item .item-content { padding:28px 36px 32px; }

/* 7. Contact: one heading only */
.com-contact > h2, .com-contact .page-header { display:none !important; }
.com-contact legend { font:700 32px/1 var(--crc-font-display); text-transform:uppercase; color:var(--crc-brown); margin-bottom:20px; }

/* 8. Phone safety: grid/flex children may shrink; big numbers scale down */
.crc-sidebar-cards > *, .crc-stats > *, .crc-news-grid > *, .crc-video-grid > *, .crc-calendar > *, .crc-countdown > *, .crc-hero > * { min-width:0; }
@media (max-width:991.98px){ .crc-sidebar-cards { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } }
@media (max-width:767.98px){
  .crc-card { padding:18px; }
  .crc-card__big { font-size:36px !important; }
  .crc-card h3 { font-size:24px; }
  .crc-table { font-size:15px; }
  img, iframe, video, table { max-width:100%; }
}

/* Joomla system messages, offline page */
.alert { border-radius:var(--crc-radius-card); }
.offline-card { border:1px solid var(--crc-line); }
.offline-card .header { background:var(--crc-navy) !important; }

/* Rules & Regs: prominent BoP calculator banner */
.crc-bop-banner { display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; margin:-12px 0 28px; padding:22px 28px; background:var(--crc-navy); border-left:4px solid var(--crc-copper); border-radius:4px; color:var(--crc-tan); text-decoration:none; }
.crc-bop-banner:hover { color:var(--crc-tan); text-decoration:none; }
.crc-bop-banner__text { display:flex; flex-direction:column; gap:4px; }
.crc-bop-banner .crc-card__label { color:var(--crc-copper-light); margin:0; }
.crc-bop-banner strong { color:var(--crc-cream); font-size:22px; line-height:1.2; }
.crc-bop-banner:hover .btn-primary { filter:brightness(1.1); }
@media (max-width:575.98px){ .crc-bop-banner { padding:18px; } .crc-bop-banner .btn { width:100%; } }


/* ---------- Content pages (About, BTCC, 2000cc) — 2026-10-24 ---------- */
.crc-photo { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border:1px solid var(--crc-copper); border-radius:var(--crc-radius-card); }
.crc-photo--tall { aspect-ratio:4/5; }
.container-component .crc-subhead, .crc-subhead { font:700 30px/1.1 var(--crc-font-display); color:var(--crc-navy); text-transform:uppercase; margin:64px 0 24px; }
.container-component .crc-subhead--h2, .crc-subhead--h2 { margin:80px 0 24px; }

/* big-number strip */
.crc-numbers { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:48px 0 0; border-top:1px solid var(--crc-line); border-bottom:1px solid var(--crc-line); }
.crc-numbers__item { display:flex; flex-direction:column; gap:8px; padding:24px 20px; border-left:1px solid var(--crc-line); min-width:0; }
.crc-numbers__item:first-child { border-left:0; padding-left:0; }
.crc-numbers__num { font:700 64px/0.9 var(--crc-font-display); color:var(--crc-navy); font-variant-numeric:tabular-nums lining-nums; }
.crc-numbers__label { font:600 13px/1.2 var(--crc-font-body); letter-spacing:.14em; text-transform:uppercase; color:var(--crc-brown-muted); }
@media (max-width:767.98px){
  .crc-numbers { grid-template-columns:1fr 1fr; }
  .crc-numbers__item { padding:18px 14px; }
  .crc-numbers__item:nth-child(odd) { border-left:0; padding-left:0; }
  .crc-numbers__item:nth-child(n+3) { border-top:1px solid var(--crc-line); }
  .crc-numbers__num { font-size:48px; }
}

/* championships timeline (newest first) */
.crc-timeline { list-style:none; margin:0; padding:0 0 0 28px; position:relative; max-width:880px; }
.crc-timeline::before { content:""; position:absolute; left:6px; top:10px; bottom:10px; width:2px; background:var(--crc-line); }
.crc-timeline li { position:relative; display:grid; grid-template-columns:170px 1fr; gap:20px; align-items:baseline; padding:14px 0; border-bottom:1px solid var(--crc-line-soft); }
.crc-timeline li::before { content:""; position:absolute; left:-27px; top:20px; width:12px; height:12px; border-radius:50%; background:var(--crc-cream); border:2px solid var(--crc-copper); }
.crc-timeline li:first-child::before { background:var(--crc-burgundy); border-color:var(--crc-burgundy); }
.crc-timeline__years { font:700 20px/1.2 var(--crc-font-display); color:var(--crc-copper); font-variant-numeric:tabular-nums; white-space:nowrap; }
.crc-timeline__name { font-weight:600; font-size:18px; color:var(--crc-navy); }
.crc-timeline__name a { color:var(--crc-burgundy); }
@media (max-width:575.98px){ .crc-timeline li { grid-template-columns:1fr; gap:2px; } .crc-timeline__years { font-size:17px; } }

/* the Commission (team) */
.crc-team { list-style:none; margin:32px 0; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:16px; }
.crc-team li { display:flex; flex-direction:column; gap:4px; padding:20px; background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); min-width:0; }
.crc-team li:nth-child(-n+2) { background:var(--crc-navy); border-color:var(--crc-copper); }
.crc-team__photo { width:64px; height:64px; border-radius:50%; margin-bottom:12px; background:var(--crc-cream); border:1px dashed var(--crc-copper); }
.crc-team li:nth-child(-n+2) .crc-team__photo { background:var(--crc-navy-deep); }
.crc-team__role { font:600 12px/1.2 var(--crc-font-body); letter-spacing:.14em; text-transform:uppercase; color:var(--crc-copper); }
.crc-team li:nth-child(-n+2) .crc-team__role { color:var(--crc-copper-light); }
.crc-team__name { font:700 22px/1.15 var(--crc-font-display); color:var(--crc-navy); }
.crc-team li:nth-child(-n+2) .crc-team__name { color:var(--crc-cream); }
@media (max-width:575.98px){ .crc-team { grid-template-columns:1fr 1fr; gap:10px; } .crc-team li { padding:14px; } .crc-team__name { font-size:18px; } }

/* spec box (How BoP works / The formula) */
.crc-spec { margin-top:24px; padding:24px; background:var(--crc-white); border:1px solid var(--crc-line); border-left:4px solid var(--crc-copper); border-radius:var(--crc-radius-card); }
.crc-spec ul { margin:0 0 16px; padding-left:20px; }
.crc-spec li { margin:0 0 8px; }
.crc-spec li::marker { color:var(--crc-copper); }
.crc-spec .btn { margin-top:4px; }
.col-lg-5 > .crc-spec:first-child { margin-top:0; }

/* partner cards / results cards */
.crc-partners { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.crc-partners .crc-card + .crc-card { margin-top:0; }
.crc-partners .crc-card h3 { font-size:24px; margin:0 0 6px; }
.crc-partners .crc-card p:last-child { margin-bottom:0; }
@media (max-width:767.98px){ .crc-partners { grid-template-columns:1fr; gap:10px; } }
.crc-getinvolved { margin-top:24px !important; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.crc-getinvolved p { margin:0; }
.crc-getinvolved .crc-card__label { flex-basis:100%; }

/* 2000cc archive season links */
.crc-season-links { display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:8px; margin:16px 0 24px; }
.crc-season-links a { display:block; padding:12px 8px; text-align:center; background:var(--crc-white); border:1px solid var(--crc-line); border-radius:var(--crc-radius-card); font:700 20px/1 var(--crc-font-display); color:var(--crc-navy); text-decoration:none; font-variant-numeric:tabular-nums; }
.crc-season-links a:hover { border-color:var(--crc-burgundy); color:var(--crc-burgundy); }

/* home: about strip */
.crc-about-strip { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:48px; align-items:center; padding:72px 0 8px; }
.crc-about-strip .crc-numbers { margin:0; }
.crc-about-strip__text p { margin-bottom:16px; }
@media (max-width:991.98px){ .crc-about-strip { grid-template-columns:1fr; gap:28px; padding-top:48px; } }

/* standings module spacing */
.crc-standings-module + * { margin-top:0; }
.crc-standings-gap { margin-top:64px; }

/* BTCC page: show the season calendar below the article (same single calendar module) */
body.itemid-117 .container-top-b { grid-row:7; margin-top:0; }
body.itemid-117 .container-bottom-a { grid-row:8; }
body.itemid-117 .container-bottom-b { grid-row:9; }
@media (min-width:992px){
  body.itemid-117 .container-top-b { grid-row:5; }
  body.itemid-117 .container-bottom-a { grid-row:6; }
  body.itemid-117 .container-bottom-b { grid-row:7; }
}

/* BTCC page: partner logos, monochrome navy, at the bottom */
.crc-partner-logos { display:flex; align-items:center; justify-content:center; gap:64px; flex-wrap:wrap; margin:80px 0 0; padding:40px 0 8px; border-top:1px solid var(--crc-line); }
.crc-partner-logos img { display:block; height:88px; width:auto; opacity:.85; transition:opacity .2s; }
.crc-partner-logos a:hover img { opacity:1; }
.crc-partner-logos .crc-partner-logos__crc { height:72px; }
@media (max-width:575.98px){ .crc-partner-logos { gap:32px; } .crc-partner-logos img { height:60px; } .crc-partner-logos .crc-partner-logos__crc { height:50px; } }
.crc-standings-note { margin:10px 0 0; font-size:15px; color:var(--crc-brown-muted); }
.crc-standings-note::before { content:""; display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--crc-copper); margin-right:8px; vertical-align:1px; }

/* top bar: next race / live now (filled from the season calendar by user.js) */
.crc-topbar a.crc-topbar__next { margin-left:0; color:var(--crc-tan); }
.crc-topbar a.crc-topbar__next strong { color:var(--crc-cream); font-weight:600; }
.crc-topbar a.crc-topbar__next:hover, .crc-topbar a.crc-topbar__next:hover strong { color:var(--crc-copper-light); }
.crc-topbar a.crc-topbar__next.is-live { color:var(--crc-cream); }
.crc-topbar__dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:#E0403A; margin-right:8px; vertical-align:1px; animation:crc-pulse 1.6s ease-in-out infinite; }
@keyframes crc-pulse { 50% { opacity:.35; } }
@media (prefers-reduced-motion:reduce){ .crc-topbar__dot { animation:none; } }
.crc-footer .crc-footer__tagline { font:italic 400 15px/1.5 var(--crc-font-body); letter-spacing:.01em; color:var(--crc-tan); opacity:.8; margin-top:14px; max-width:none; white-space:nowrap; }
@media (max-width:1399.98px){ .crc-footer .crc-footer__tagline { white-space:normal; } }
/* Instagram link (top bar + footer) */
.crc-ig { display:inline-block; vertical-align:-3px; margin-right:6px; }
.crc-footer__social { display:inline-flex; align-items:center; }
.crc-footer__social .crc-ig { margin-right:10px; vertical-align:middle; }
.crc-footer__social { margin-top:4px; }
/* Cookie notice (analytics) */
.crc-cookie { position:fixed; left:16px; right:16px; bottom:16px; z-index:1000; max-width:560px; margin-inline:auto; display:flex; align-items:center; gap:16px; padding:12px 16px; background:var(--crc-navy-deep); color:var(--crc-tan); border:1px solid rgba(184,115,51,.5); border-radius:8px; box-shadow:0 6px 24px rgba(0,0,0,.25); font-size:14px; }
.crc-cookie p { margin:0; flex:1; }
.crc-cookie .btn { flex:none; padding:6px 18px; }
