:root {
  /* palette — colors.final from RANDOM_SPEC (±2% shifted) */
  --site-main-color: #1c1e20;
  --site-secondary: #f68541;
  --site-accent-dark: #e76f29;
  --site-page-bg: #121314;
  --site-surface-2: #1b1d1f;
  --site-gradient-start: #fecaa9;
  --site-grad-mid: #ffaa66;
  --site-body-color: #ffffff;
  --site-text-muted: #b1b5b9;
  --site-notice-bg: #dc2626;
  /* type — TYPO-04 refined calm */
  --site-heading-font: "Oswald", "Archivo Black", Impact, sans-serif;
  --site-font-text: "Jost", "Inter", Arial, sans-serif;
  --site-type-h1: 38px; --site-fs-h2: 30px; --site-text-h3: 24px; --site-size-h4: 20px; --site-type-h5: 17px; --site-fs-h6: 15px;
  --site-size-body: 17px; --site-type-small: 15px; --site-size-xs: 13px;
  --site-lh-tight: 1.25; --site-line-normal: 1.6; --site-line-loose: 1.8;
  --site-ls-normal: 0; --site-letter-wide: 0.01em;
  --site-fw-normal: 400; --site-weight-medium: 500; --site-font-bold: 600;
  /* spacing — SPACE-08 even decimal */
  --site-gutter-2xs: 5px; --site-gutter-xs: 10px; --site-spacing-sm: 15px; --site-gutter-md: 25px;
  --site-gutter-lg: 40px; --site-spacing-xl: 60px; --site-gap-2xl: 90px; --site-gutter-3xl: 140px;
  /* container — CONT-10 */
  --site-container: 1200px;
  --site-prose-width: 700px;
  --site-inset-mobile: 16px;
  --site-container-padding-tablet: 24px;
  --site-gutter-desktop: 32px;
  /* geometry — GEO-10 */
  --site-round-xs: 0; --site-rounded-sm: 4px; --site-round-md: 6px; --site-round-lg: 10px; --site-radius-pill: 9999px; --site-round-circle: 50%;
  --site-stroke-thin: 1px; --site-border-medium: 4px; --site-border-thick: 6px;
  --site-shadow-sm: 0 0 0 1px rgba(0,0,0,0.06);
  --site-elevation-2: 0 0 0 1px rgba(0,0,0,0.10), 0 8px 24px rgba(0,0,0,0.28);
  /* motion — MOTION-02 */
  --site-transition-fast: 150ms; --site-duration-base: 200ms; --site-speed-slow: 300ms;
  --site-ease: cubic-bezier(0.22, 0.61, 0.36, 1.0);
  /* layout */
  --site-header-h: 100px;
  --site-header-h-mobile: 64px;
  --site-sec-y: var(--site-gutter-lg);
}

/* ---- reset / base ---- */
*, *::before, *::after { box-sizing: border-box; }
html, body { overflow-x: clip; }
body {
  margin: 0;
  background: var(--site-page-bg);
  color: var(--site-body-color);
  font-family: var(--site-font-text);
  font-size: var(--site-size-body);
  font-weight: var(--site-fw-normal);
  line-height: var(--site-line-normal);
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3 { font-family: var(--site-heading-font); font-weight: var(--site-font-bold); line-height: var(--site-lh-tight); letter-spacing: var(--site-ls-normal); margin: 0 0 var(--site-spacing-sm); }
h4, h5, h6 { font-family: var(--site-font-text); font-weight: var(--site-weight-medium); margin: 0 0 var(--site-gutter-xs); }
p { margin: 0 0 var(--site-spacing-sm); }
img { max-width: 100%; display: block; }
a { color: var(--site-secondary); text-decoration: none; }
a:hover { color: var(--site-accent-dark); }
.siteMain { display: block; }

/* ---- a11y ---- */
.skip-link {
  position: absolute; left: var(--site-spacing-sm); top: var(--site-spacing-sm);
  background: var(--site-secondary); color: var(--site-page-bg);
  padding: var(--site-gutter-xs) var(--site-gutter-md); border-radius: var(--site-round-md);
  font-weight: var(--site-font-bold); z-index: 200;
}
.skip-link:not(:focus) { top: -200px !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; animation: none !important; }
}

/* ---- shared section inner (single container width — literal calc for verify-widths) ---- */
.componentSlider-inner,
.areaCarousel-inner,
.huskRegion-inner,
.hingeSet-inner,
.stallTrack-inner,
.capsuleTile-inner,
.cellBody-inner,
.beamPanel-inner,
.netBlock-inner,
.districtSpan-inner,
.cratePanel-inner,
.flagContainer-inner,
.courtBar-inner,
.labelModule-inner {
  max-width: calc(var(--site-container) + 2 * var(--site-gutter-desktop));
  margin-inline: auto;
  padding-inline: var(--site-gutter-desktop);
  width: 100%;
}

/* ================= HEADER (HEAD-01 + STICKY-02 + NAV-02 + AUTH-BOTH) ================= */
.hubBar {
  position: sticky; top: 0; z-index: 100;
  background: var(--site-page-bg);
  border-bottom: 1px solid rgba(255,255,255,0.1);
  transition: padding var(--site-duration-base) var(--site-ease);
}
.hubBar-bar {
  display: flex; align-items: center; gap: var(--site-gutter-md);
  min-height: var(--site-header-h);
  max-width: 1440px; margin-inline: auto;
  padding-inline: var(--site-gutter-desktop);
}
.hubBar-logo { display: inline-flex; align-items: center; flex-shrink: 0; }
.hubBar-logo-img { height: 88px; width: auto; flex-shrink: 0; image-rendering: auto; transition: height var(--site-duration-base) var(--site-ease); }
.hubBar img { height: 88px; width: auto; }
.hubBar-nav { margin-left: auto; }
.hubBar-nav-list { display: flex; flex-wrap: nowrap; align-items: center; gap: var(--site-gutter-md); list-style: none; margin: 0; padding: 0; }
.hubBar-nav-item { position: relative; }
.hubBar-nav-item--more { position: relative; }
.hubBar-link { color: var(--site-text-muted); font-weight: var(--site-weight-medium); font-size: var(--site-size-body); text-decoration: none; transition: color var(--site-transition-fast) var(--site-ease); background: transparent; }
.hubBar-link:hover { color: var(--site-body-color); }
.hubBar-list a[aria-current="page"], .hubBar-link[aria-current="page"] { color: var(--site-body-color); }
.hubBar-more-toggle { display: inline-flex; align-items: center; gap: var(--site-gutter-2xs); border: 0; cursor: pointer; font: inherit; color: var(--site-text-muted); background: transparent; padding: 0; }
.hubBar-more-toggle:hover { color: var(--site-body-color); }
.hubBar-more-chevron { transition: transform var(--site-transition-fast) var(--site-ease); }
.hubBar-more-toggle[aria-expanded="true"] .hubBar-more-chevron { transform: rotate(180deg); }
.hubBar-more-menu {
  position: absolute; top: 100%; right: 0; margin: var(--site-gutter-2xs) 0 0; padding: var(--site-gutter-xs) 0;
  list-style: none; background: var(--site-surface-2);
  border: 1px solid rgba(255,255,255,0.1); border-radius: var(--site-round-md);
  box-shadow: var(--site-elevation-2); min-width: 210px; z-index: 110;
}
.hubBar-more-menu[hidden] { display: none; }
.hubBar-more-menu.is-open { display: block; }
.hubBar-more-link { display: block; padding: var(--site-gutter-xs) var(--site-gutter-md); color: var(--site-body-color); font-size: var(--site-type-small); text-decoration: none; white-space: nowrap; }
.hubBar-more-link:hover { background: rgba(255,255,255,0.06); color: var(--site-secondary); }
.hubBar-auth { display: flex; align-items: center; gap: var(--site-spacing-sm); flex-shrink: 0; }
.hubBar-auth-btn {
  display: inline-flex; align-items: center; white-space: nowrap; flex-shrink: 0;
  font-family: var(--site-heading-font); font-weight: var(--site-font-bold); font-size: var(--site-type-small);
  text-transform: uppercase; letter-spacing: var(--site-letter-wide);
  padding-inline: var(--site-gutter-lg); min-height: 40px; border-radius: var(--site-round-md);
  transition: background var(--site-duration-base) var(--site-ease), color var(--site-duration-base) var(--site-ease);
}
.hubBar-auth-btn--site-login { background: var(--site-page-bg); border: 1px solid var(--site-body-color); color: var(--site-body-color); }
.hubBar-auth-btn--site-login:hover { background: var(--site-body-color); color: var(--site-page-bg); }
.hubBar-auth-btn--site-register { background: var(--site-secondary); border: 1px solid var(--site-secondary); color: var(--site-page-bg); }
.hubBar-auth-btn--site-register:hover { background: var(--site-accent-dark); color: var(--site-page-bg); }
.hubBar-toggle {
  display: none; margin-left: auto; width: 44px; height: 44px; padding: 10px;
  flex-direction: column; justify-content: center; gap: 5px;
  background: transparent; border: 0; cursor: pointer;
}
.hubBar-toggle span { display: block; height: 2px; width: 24px; background: var(--site-body-color); border-radius: 2px; }
/* mobile drawer (inside <header>) */
.hubBar-drawer {
  display: none; position: fixed; left: 0; right: 0; top: var(--site-header-h-mobile);
  background: var(--site-page-bg); border-top: 1px solid rgba(255,255,255,0.1);
  padding: var(--site-gutter-md) var(--site-inset-mobile) var(--site-gutter-lg); z-index: 130;
  max-height: calc(100vh - var(--site-header-h-mobile)); overflow-y: auto;
}
.hubBar-drawer.is-open { display: block; }
.hubBar-drawer-list { list-style: none; margin: 0 0 var(--site-gutter-md); padding: 0; }
.hubBar-drawer-item { border-bottom: 1px solid rgba(255,255,255,0.08); }
.hubBar-drawer-link { display: block; padding: var(--site-gutter-md) 0; color: var(--site-body-color); font-size: var(--site-fs-h6); text-decoration: none; }
.hubBar-drawer-link[aria-current="page"] { color: var(--site-secondary); }
.hubBar-drawer-auth { display: flex; gap: var(--site-spacing-sm); }
.hubBar-drawer-auth .hubBar-auth-btn { flex: 1; justify-content: center; }
/* sticky-shrink STICKY-02 */
.hubBar.is-shrunk .hubBar-bar { min-height: 76px; }
.hubBar.is-shrunk .hubBar-logo-img { height: 64px; }

/* ================= HERO (HERO-11 compact right image) ================= */
.componentSlider { background: var(--site-page-bg); }
.componentSlider-inner { display: grid; grid-template-columns: 65% 35%; gap: var(--site-gap-2xl); align-items: center; min-height: 480px; padding-block: var(--site-spacing-xl); }
.componentSlider-content { text-align: left; }
.componentSlider-eyebrow { font-family: var(--site-heading-font); text-transform: uppercase; letter-spacing: var(--site-letter-wide); color: var(--site-secondary); font-size: var(--site-type-small); margin: 0 0 var(--site-spacing-sm); }
.componentSlider-title { font-size: clamp(38px, 5vw, 56px); color: var(--site-body-color); margin: 0 0 var(--site-gutter-md); }
.componentSlider-subtitle { font-size: var(--site-size-body); color: var(--site-text-muted); line-height: var(--site-line-loose); max-width: 560px; margin: 0 0 var(--site-gutter-lg); }
.componentSlider-actions { display: flex; flex-wrap: wrap; gap: var(--site-spacing-sm); }
.componentSlider-cta { display: inline-flex; align-items: center; min-height: 52px; padding-inline: var(--site-spacing-xl); background: var(--site-secondary); color: var(--site-page-bg); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); text-transform: uppercase; letter-spacing: var(--site-letter-wide); border-radius: var(--site-round-md); transition: background var(--site-duration-base) var(--site-ease), transform var(--site-duration-base) var(--site-ease); }
.componentSlider-cta:hover { background: var(--site-accent-dark); color: var(--site-page-bg); transform: translateY(-1px); }
.componentSlider-cta-alt { display: inline-flex; align-items: center; min-height: 52px; padding-inline: var(--site-gutter-lg); background: var(--site-page-bg); border: 1px solid var(--site-text-muted); color: var(--site-body-color); font-family: var(--site-heading-font); font-weight: var(--site-weight-medium); text-transform: uppercase; letter-spacing: var(--site-letter-wide); border-radius: var(--site-round-md); transition: border-color var(--site-duration-base) var(--site-ease); }
.componentSlider-cta-alt:hover { border-color: var(--site-secondary); color: var(--site-body-color); }
.componentSlider-figure { margin: 0; width: 100%; }
.componentSlider-image { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: var(--site-round-lg); border: 1px solid rgba(255,255,255,0.08); }

/* ================= PAGE-HEADER (PHEAD-03 big block) ================= */
.areaCarousel { background: var(--site-main-color); padding-block: var(--site-spacing-xl) var(--site-gutter-lg); }
.areaCarousel-title { font-size: clamp(36px, 6vw, 60px); color: var(--site-body-color); margin: 0 0 var(--site-gutter-md); }
.areaCarousel-desc { font-size: var(--site-size-body); color: rgba(255,255,255,0.72); line-height: var(--site-line-normal); max-width: 760px; margin: 0; }

/* ================= INLINE-CTA (INLINE-CTA-04) ================= */
.huskRegion { background: var(--site-surface-2); padding-block: var(--site-sec-y); }
.huskRegion-inner { display: flex; align-items: center; gap: var(--site-spacing-xl); }
.huskRegion-text-block { flex: 1; }
.huskRegion-heading { font-family: var(--site-heading-font); font-size: var(--site-size-h4); color: var(--site-body-color); margin: 0 0 var(--site-gutter-2xs); }
.huskRegion-subtext { font-size: var(--site-size-body); color: var(--site-text-muted); margin: 0; }
.huskRegion-btn { flex-shrink: 0; display: inline-flex; align-items: center; padding: var(--site-gutter-md) var(--site-spacing-xl); background: var(--site-secondary); color: var(--site-page-bg); border-radius: var(--site-round-md); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); text-transform: uppercase; letter-spacing: var(--site-letter-wide); transition: background var(--site-duration-base) var(--site-ease); }
.huskRegion-btn:hover { background: var(--site-accent-dark); color: var(--site-page-bg); }

/* ================= PROSE (PROSE-08 asymmetric indent) ================= */
.hingeSet { padding-block: var(--site-sec-y); }
.hingeSet-heading { font-size: var(--site-fs-h2); color: var(--site-body-color); padding-left: 0; margin: var(--site-gutter-lg) 0 var(--site-spacing-sm); }
.hingeSet-copy { padding-left: var(--site-gap-2xl); max-width: 780px; font-size: var(--site-size-body); line-height: var(--site-line-loose); color: var(--site-body-color); }
.hingeSet-copy a { color: var(--site-secondary); text-decoration: underline; text-underline-offset: 3px; }
.hingeSet-copy a:hover { text-decoration-thickness: 2px; color: var(--site-accent-dark); }
.hingeSet--figures { padding-block: var(--site-sec-y); }
.hingeSet-figrow { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--site-gutter-lg); }
.hingeSet-figure { margin: 0; }
.hingeSet-figimg { width: 100%; height: auto; border-radius: var(--site-round-md); border: 1px solid rgba(255,255,255,0.08); object-fit: cover; }

/* ================= ITEMS-GRID (GRID-12 initial + text) ================= */
.stallTrack { padding-block: var(--site-sec-y); }
.stallTrack-title { font-size: var(--site-fs-h2); color: var(--site-body-color); margin: 0 0 var(--site-gutter-lg); }
.stallTrack-list { display: flex; flex-direction: column; }
.stallTrack-card { display: flex; gap: var(--site-gutter-lg); padding: var(--site-gutter-lg) 0; border-bottom: 1px solid rgba(255,255,255,0.08); align-items: flex-start; }
.stallTrack-initial { width: 120px; height: 120px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; background: var(--site-secondary); color: var(--site-page-bg); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); font-size: var(--site-type-h1); border-radius: var(--site-round-md); }
.stallTrack-body { flex: 1; }
.stallTrack-card-title { font-size: var(--site-size-h4); font-weight: var(--site-font-bold); color: var(--site-body-color); margin: 0 0 var(--site-gutter-2xs); }
.stallTrack-card-text { font-size: var(--site-size-body); line-height: var(--site-line-normal); color: var(--site-text-muted); margin: 0; }

/* ================= REVIEWS (REV-07 color-coded ratings) ================= */
.capsuleTile { padding-block: var(--site-sec-y); }
.capsuleTile-title { font-size: var(--site-fs-h2); color: var(--site-body-color); margin: 0 0 var(--site-gutter-lg); }
.capsuleTile-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--site-gutter-lg); }
.capsuleTile-card { padding: var(--site-gutter-lg); border-radius: var(--site-round-md); background: var(--site-surface-2); border-left: var(--site-border-medium) solid var(--site-text-muted); }
.capsuleTile-card--high { border-left-color: var(--site-secondary); }
.capsuleTile-card--mid { border-left-color: var(--site-grad-mid); }
.capsuleTile-card--low { border-left-color: var(--site-text-muted); }
.capsuleTile-head { display: flex; align-items: center; gap: var(--site-spacing-sm); margin-bottom: var(--site-spacing-sm); }
.capsuleTile-rating { font-family: var(--site-heading-font); font-weight: var(--site-font-bold); font-size: var(--site-fs-h2); color: var(--site-secondary); line-height: 1; }
.capsuleTile-dots { display: inline-flex; gap: 6px; }
.capsuleTile-dot { width: 10px; height: 10px; border-radius: var(--site-round-circle); display: inline-block; }
.capsuleTile-dot--on { background: var(--site-secondary); }
.capsuleTile-dot--off { background: var(--site-text-muted); opacity: 0.4; }
.capsuleTile-text { font-size: var(--site-size-body); line-height: var(--site-line-normal); color: var(--site-body-color); margin: 0 0 var(--site-spacing-sm); }
.capsuleTile-meta { font-size: var(--site-type-small); color: var(--site-text-muted); margin: 0; }
.capsuleTile-author { font-weight: var(--site-weight-medium); color: var(--site-body-color); }
.capsuleTile-date { color: var(--site-text-muted); }

/* ================= FAQ (FAQ-08 bordered box + indicator bar) ================= */
.cellBody { padding-block: var(--site-sec-y); }
.cellBody-title { font-size: var(--site-fs-h2); color: var(--site-body-color); margin: 0 0 var(--site-gutter-lg); }
.cellBody-box { background: var(--site-main-color); border: 1px solid rgba(255,255,255,0.1); border-radius: var(--site-round-lg); padding: var(--site-gap-2xl); }
.cellBody-item { position: relative; padding-left: var(--site-gutter-md); border-bottom: 1px solid rgba(255,255,255,0.08); }
.cellBody-item:last-child { border-bottom: 0; }
.cellBody-item::before { content: ""; position: absolute; left: 0; top: var(--site-gutter-md); bottom: var(--site-gutter-md); width: var(--site-border-medium); background: var(--site-secondary); border-radius: 2px; }
.cellBody-q { cursor: pointer; list-style: none; padding: var(--site-gutter-md) 0; font-family: var(--site-heading-font); font-weight: var(--site-font-bold); font-size: var(--site-type-h5); color: var(--site-body-color); }
.cellBody-q::-webkit-details-marker { display: none; }
.cellBody-q::after { content: "+"; float: right; color: var(--site-secondary); font-size: var(--site-size-h4); }
.cellBody-item[open] .cellBody-q::after { content: "–"; }
.cellBody-a { padding: 0 0 var(--site-gutter-md); color: var(--site-text-muted); font-size: var(--site-size-body); line-height: var(--site-line-loose); }
.cellBody-a p { margin: 0; }

/* ================= CTA-BLOCK (CTA-01 full-width strip) ================= */
.beamPanel { background: var(--site-secondary); padding-block: var(--site-sec-y); }
.beamPanel-inner { display: flex; align-items: center; justify-content: space-between; gap: var(--site-gutter-lg); }
.beamPanel-text { max-width: 720px; }
.beamPanel-title { font-family: var(--site-heading-font); font-weight: var(--site-font-bold); font-size: var(--site-fs-h2); text-transform: uppercase; letter-spacing: var(--site-ls-normal); color: var(--site-page-bg); margin: 0; }
.beamPanel-description { font-size: var(--site-size-body); line-height: var(--site-line-normal); color: var(--site-page-bg); max-width: 580px; margin: var(--site-spacing-sm) 0 0; }
.beamPanel-button { flex-shrink: 0; min-width: 220px; min-height: 56px; display: inline-flex; align-items: center; justify-content: center; padding-inline: var(--site-gap-2xl); background: var(--site-page-bg); color: var(--site-secondary); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); text-transform: uppercase; letter-spacing: var(--site-letter-wide); border-radius: var(--site-round-md); transition: background var(--site-duration-base) var(--site-ease), color var(--site-duration-base) var(--site-ease); }
.beamPanel-button:hover { background: var(--site-main-color); color: var(--site-secondary); }

/* ================= DATA-TABLE (TABLE-06 editorial with caption) ================= */
.netBlock { padding-block: var(--site-sec-y); }
.netBlock-table { width: 100%; border-collapse: collapse; }
.netBlock-caption { font-family: var(--site-heading-font); font-size: var(--site-size-h4); font-style: italic; color: var(--site-text-muted); text-align: center; padding-bottom: var(--site-gutter-md); }
.netBlock-thead { background: var(--site-main-color); }
.netBlock-th { background: var(--site-main-color); color: var(--site-body-color); text-align: left; padding: var(--site-spacing-sm) var(--site-gutter-md); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); font-size: var(--site-type-small); }
.netBlock-tbody { }
.netBlock-row { border-bottom: 1px solid rgba(255,255,255,0.08); }
.netBlock-td { padding: var(--site-spacing-sm) var(--site-gutter-md); font-size: var(--site-type-small); color: var(--site-body-color); vertical-align: top; }

/* ================= AUTHOR-CARD (AUTH-02 vertical centered) ================= */
.districtSpan { padding-block: var(--site-sec-y); }
.districtSpan-card { max-width: 600px; margin-inline: auto; text-align: center; }
.districtSpan-portrait { width: 140px; height: 140px; border-radius: var(--site-round-circle); object-fit: cover; object-position: center top; margin: 0 auto var(--site-gutter-lg); border: 1px solid rgba(255,255,255,0.12); }
.districtSpan-job { font-size: var(--site-type-small); text-transform: uppercase; letter-spacing: var(--site-letter-wide); color: var(--site-secondary); margin: 0 0 var(--site-gutter-2xs); }
.districtSpan-name { font-size: var(--site-fs-h2); color: var(--site-body-color); margin: 0 0 var(--site-spacing-sm); }
.districtSpan-bio { line-height: var(--site-line-loose); color: var(--site-text-muted); margin: 0 0 var(--site-gutter-md); }
.districtSpan-expertise { display: flex; flex-wrap: wrap; gap: var(--site-gutter-xs); justify-content: center; }
.districtSpan-tag { padding: var(--site-gutter-2xs) var(--site-spacing-sm); background: var(--site-main-color); color: var(--site-body-color); border-radius: var(--site-radius-pill); font-size: var(--site-size-xs); text-transform: uppercase; letter-spacing: var(--site-letter-wide); }

/* ================= BYLINE (BYLINE-07 expertise tags) ================= */
.sheetGrid { padding-block: var(--site-sec-y); }
.sheetGrid-card { padding: var(--site-gutter-lg); background: var(--site-surface-2); border-radius: var(--site-round-md); box-shadow: var(--site-shadow-sm); max-width: calc(var(--site-container) + 2 * var(--site-gutter-desktop)); margin-inline: auto; }
.sheetGrid-header { display: flex; gap: var(--site-spacing-sm); align-items: center; margin-bottom: var(--site-gutter-md); }
.sheetGrid-portrait { width: 72px; height: 72px; border-radius: var(--site-round-circle); object-fit: cover; object-position: center top; flex-shrink: 0; }
.sheetGrid-ident { }
.sheetGrid-name { font-size: var(--site-size-h4); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); margin: 0; }
.sheetGrid-name-link { color: var(--site-body-color); text-decoration: none; }
.sheetGrid-name-link:hover { color: var(--site-secondary); }
.sheetGrid-role { font-size: var(--site-type-small); color: var(--site-text-muted); margin: var(--site-gutter-2xs) 0 0; }
.sheetGrid-date { font-size: var(--site-size-xs); color: var(--site-text-muted); display: inline-block; margin-top: var(--site-gutter-2xs); }
.sheetGrid-bio { font-size: var(--site-size-body); line-height: var(--site-line-loose); color: var(--site-text-muted); margin: 0 0 var(--site-gutter-md); }
.sheetGrid-expertise { display: flex; flex-wrap: wrap; gap: var(--site-gutter-xs); margin-bottom: var(--site-gutter-md); }
.sheetGrid-tag { padding: var(--site-gutter-2xs) var(--site-spacing-sm); background: var(--site-main-color); color: var(--site-body-color); border-radius: var(--site-radius-pill); font-size: var(--site-size-xs); text-transform: uppercase; letter-spacing: var(--site-letter-wide); }
.sheetGrid-link { color: var(--site-secondary); text-decoration: underline; text-underline-offset: 3px; font-weight: var(--site-weight-medium); }
.sheetGrid-link:hover { color: var(--site-accent-dark); }

/* ================= LEGAL (LEGAL-07 magazine editorial) ================= */
.cratePanel { padding-block: var(--site-sec-y); }
.cratePanel-intro { font-family: var(--site-heading-font); font-style: italic; font-size: var(--site-size-h4); color: var(--site-body-color); line-height: var(--site-line-normal); max-width: var(--site-prose-width); margin: 0 0 var(--site-gutter-lg); }
.cratePanel-heading { font-family: var(--site-heading-font); font-style: italic; font-size: var(--site-text-h3); color: var(--site-body-color); margin: var(--site-gutter-lg) 0 var(--site-spacing-sm); }
.cratePanel-rule { width: 80px; height: 2px; border: 0; background: var(--site-secondary); margin: 0 0 var(--site-gutter-md); }
.cratePanel-copy { font-size: var(--site-size-body); line-height: var(--site-line-loose); color: var(--site-text-muted); max-width: var(--site-prose-width); }
.cratePanel-copy a { color: var(--site-secondary); text-decoration: underline; }
.cratePanel-contacts { list-style: disc; padding-left: var(--site-gutter-lg); max-width: var(--site-prose-width); color: var(--site-text-muted); }
.cratePanel-contact { margin-bottom: var(--site-gutter-xs); font-size: var(--site-size-body); }
.cratePanel-disclaimer { font-size: var(--site-type-small); color: var(--site-text-muted); font-style: italic; max-width: var(--site-prose-width); margin-top: var(--site-gutter-lg); }

/* ================= CONTACT-FORM (FORM-07 card dark accent header) ================= */
.flagContainer { padding-block: var(--site-sec-y); }
.flagContainer-card { max-width: 760px; margin-inline: auto; border-radius: var(--site-round-lg); overflow: hidden; border-top: 8px solid var(--site-secondary); background: var(--site-surface-2); padding: var(--site-spacing-xl); }
.flagContainer-intro { color: var(--site-text-muted); margin: 0 0 var(--site-gutter-lg); line-height: var(--site-line-normal); }
.flagContainer-form { display: flex; flex-direction: column; gap: var(--site-gutter-xs); }
.flagContainer-label { font-weight: var(--site-weight-medium); font-size: var(--site-type-small); color: var(--site-body-color); margin-top: var(--site-spacing-sm); }
.flagContainer-input { background: var(--site-page-bg); border: 1px solid rgba(255,255,255,0.18); border-radius: var(--site-round-md); padding: var(--site-spacing-sm); color: var(--site-body-color); font-family: var(--site-font-text); font-size: var(--site-size-body); }
.flagContainer-input:focus { outline: 2px solid var(--site-secondary); border-color: var(--site-secondary); }
.flagContainer-textarea { resize: vertical; }
.flagContainer-submit { align-self: center; margin-top: var(--site-gutter-md); min-height: 48px; padding-inline: var(--site-gap-2xl); background: var(--site-secondary); color: var(--site-page-bg); border: 0; border-radius: var(--site-round-md); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); text-transform: uppercase; letter-spacing: var(--site-letter-wide); cursor: pointer; transition: background var(--site-duration-base) var(--site-ease); }
.flagContainer-submit:hover { background: var(--site-accent-dark); color: var(--site-page-bg); }
.flagContainer-success { margin-top: var(--site-gutter-md); color: var(--site-body-color); background: var(--site-main-color); border-radius: var(--site-round-md); padding: var(--site-gutter-md); }

/* ================= ERROR (ERR-08 search suggestions) ================= */
.courtBar { padding-block: var(--site-gap-2xl); text-align: center; }
.courtBar-inner { text-align: center; }
.courtBar-title { font-size: clamp(30px, 5vw, 48px); color: var(--site-body-color); margin: 0 0 var(--site-gutter-md); }
.courtBar-text { font-size: var(--site-size-body); color: var(--site-text-muted); max-width: 620px; margin: 0 auto var(--site-gutter-lg); }
.courtBar-home { display: inline-flex; align-items: center; min-height: 48px; padding-inline: var(--site-spacing-xl); background: var(--site-secondary); color: var(--site-page-bg); border-radius: var(--site-round-md); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); text-transform: uppercase; letter-spacing: var(--site-letter-wide); }
.courtBar-home:hover { background: var(--site-accent-dark); color: var(--site-page-bg); }
.courtBar-suggestions { margin-top: var(--site-gap-2xl); background: var(--site-surface-2); border-radius: var(--site-round-md); padding: var(--site-spacing-xl); }
.courtBar-suggest-heading { font-size: var(--site-size-h4); color: var(--site-body-color); margin: 0 0 var(--site-gutter-md); }
.courtBar-suggest-list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--site-gutter-md); justify-content: center; }
.courtBar-suggest-link { color: var(--site-secondary); font-size: var(--site-size-body); text-decoration: none; }
.courtBar-suggest-link:hover { text-decoration: underline; color: var(--site-accent-dark); }

/* ================= FOOTER (FOOT-09 wide single-strip industrial) ================= */
.netFooter { background: var(--site-main-color); padding-block: var(--site-gutter-md); border-top: 1px solid rgba(255,255,255,0.08); }
.netFooter-inner { max-width: calc(var(--site-container) + 2 * var(--site-gutter-desktop)); margin-inline: auto; padding-inline: var(--site-gutter-desktop); display: flex; align-items: center; justify-content: space-between; gap: var(--site-gutter-md); flex-wrap: wrap; }
.netFooter-logo { display: inline-flex; align-items: center; flex-shrink: 0; }
.netFooter-logo-img { height: 36px; width: auto; }
.netFooter-main-nav { display: flex; flex-wrap: wrap; gap: var(--site-gutter-md); }
.netFooter-link { color: var(--site-text-muted); font-size: var(--site-type-small); letter-spacing: var(--site-letter-wide); text-decoration: none; }
.netFooter-link:hover { color: var(--site-body-color); }
.netFooter-legal-nav { display: flex; flex-wrap: wrap; gap: var(--site-spacing-sm); }
.netFooter-legal-link { color: var(--site-text-muted); font-size: var(--site-size-xs); text-decoration: none; }
.netFooter-legal-link:hover { color: var(--site-body-color); }
.netFooter-copy { color: var(--site-text-muted); font-size: var(--site-size-xs); width: 100%; }

/* ================= COOKIE (COOK-02 full-width bottom strip) ================= */
.labelModule { position: fixed; bottom: 0; left: 0; right: 0; z-index: 90; background: var(--site-main-color); border-top: 1px solid rgba(255,255,255,0.08); padding-block: var(--site-gutter-md); }
.labelModule.is-hidden { display: none; }
.labelModule-inner { display: flex; align-items: center; justify-content: space-between; gap: var(--site-gutter-md); }
.labelModule-message { flex: 1; font-size: var(--site-type-small); color: var(--site-text-muted); margin: 0; }
.labelModule-actions { display: flex; flex-shrink: 0; gap: var(--site-spacing-sm); }
.labelModule-button { min-height: 40px; padding-inline: var(--site-gutter-lg); border-radius: var(--site-round-md); font-family: var(--site-heading-font); font-weight: var(--site-font-bold); font-size: var(--site-type-small); text-transform: uppercase; letter-spacing: var(--site-letter-wide); cursor: pointer; border: 1px solid transparent; }
.labelModule-button--site-accept { background: var(--site-secondary); color: var(--site-page-bg); }
.labelModule-button--site-accept:hover { background: var(--site-accent-dark); color: var(--site-page-bg); }
.labelModule-button--site-decline { background: var(--site-surface-2); color: var(--site-body-color); border-color: var(--site-text-muted); }
.labelModule-button--site-decline:hover { background: var(--site-main-color); color: var(--site-body-color); }

/* ================= RESPONSIVE (desktop-first overrides) ================= */
@media (max-width: 1024px) {
  .componentSlider-inner { grid-template-columns: 1fr; gap: var(--site-gutter-lg); min-height: 0; }
  .componentSlider-figure { order: -1; }
  .componentSlider-image { aspect-ratio: 16 / 9; }
  .capsuleTile-grid { grid-template-columns: 1fr; }
}
@media (max-width: 1023px) {
  .hubBar-bar { min-height: var(--site-header-h-mobile); }
  .hubBar-logo-img, .hubBar img { height: 52px; }
  .hubBar-nav, .hubBar-auth { display: none; }
  .hubBar-toggle { display: flex; }
  .hubBar.is-shrunk .hubBar-bar { min-height: var(--site-header-h-mobile); }
  .hubBar.is-shrunk .hubBar-logo-img { height: 52px; }
  .componentSlider-inner,
  .areaCarousel-inner,
  .huskRegion-inner,
  .hingeSet-inner,
  .stallTrack-inner,
  .capsuleTile-inner,
  .cellBody-inner,
  .beamPanel-inner,
  .netBlock-inner,
  .districtSpan-inner,
  .cratePanel-inner,
  .flagContainer-inner,
  .courtBar-inner,
  .labelModule-inner { padding-inline: var(--site-inset-mobile); }
  .netFooter-inner { padding-inline: var(--site-inset-mobile); flex-direction: column; align-items: flex-start; }
  .hingeSet-copy { padding-left: var(--site-gutter-md); }
  .stallTrack-card { flex-direction: column; }
  .stallTrack-initial { width: 80px; height: 80px; }
  .beamPanel-inner { flex-direction: column; align-items: flex-start; }
  .beamPanel-button { width: 100%; }
  .huskRegion-inner { flex-direction: column; align-items: stretch; }
  .huskRegion-btn { justify-content: center; }
  .cellBody-box { padding: var(--site-gutter-lg); }
  .labelModule-inner { flex-direction: column; align-items: stretch; }
  .labelModule-actions { justify-content: flex-end; }
}
@media (max-width: 720px) {
  .labelModule, .labelModule-inner { padding: 12px 14px !important; gap: 8px !important; }
  .labelModule-message { font-size: 13px !important; line-height: 1.35 !important; }
  .labelModule-button { padding: 8px 14px !important; font-size: 12px !important; min-height: 36px !important; }
}

