/* Additive V17: preserve cinematics, administration and existing theme. */
.main-nav { gap:18px; }
.main-nav .nav-mobile-account { display:none; }
.nav-shell { gap:22px; }
.main-nav a,.nav-explore summary { font-size:14px; letter-spacing:0; }
.nav-actions { flex-shrink:0; }
.nav-login,.nav-cta { font-size:13px; }
.nav-explore { position:relative; }
.nav-explore summary { padding:14px 0; cursor:pointer; color:#c0c5d0; font-weight:700; }
.nav-explore > div { position:absolute; top:100%; left:0; min-width:180px; padding:8px; background:#10131d; border:1px solid #3b3048; border-radius:8px; box-shadow:0 16px 36px #0008; }
.nav-explore > div a { padding:12px; height:auto; }
.main-nav a:focus-visible,.nav-explore summary:focus-visible,.menu-toggle:focus-visible,.nav-actions :focus-visible { outline:2px solid #e4b478; outline-offset:4px; }
.page-home .hero-copy > p { font-size:16px; line-height:1.7; }
.page-home .hero-tags { flex-wrap:wrap; gap:12px; }
.page-home .hero-tags span,.page-home .hero-actions small,.page-home .action-card small { font-size:12px; }
.page-home .hero-actions strong,.page-home .action-card strong { font-size:14px; }
.page-home .eyebrow,.page-home .section-kicker { font-size:12px; letter-spacing:.12em; }
.page-home .opening-countdown-label { font-size:12px; letter-spacing:.06em; }
.page-home .opening-countdown-clock small { font-size:12px; }
.page-home .announcement-copy > p { font-size:16px; }
.hub-entry-section { padding:48px 0 12px; }
.hub-entry { display:grid; grid-template-columns:1fr 1.1fr; gap:56px; padding:36px 40px; border-block:1px solid #594133; background:linear-gradient(105deg,#151219ed,#0c1018ee); }
.hub-kicker { display:block; color:#e0ad71; font:700 12px/1.5 var(--sans); letter-spacing:.13em; text-transform:uppercase; }
.hub-entry h2 { color:#f3ede5; margin:12px 0 14px; font:400 clamp(30px,3vw,42px)/1.12 var(--serif); }
.hub-entry h2 em,.hub-hero h1 em { color:#e4b478; font-style:normal; }
.hub-entry p { color:#b8becb; font-size:16px; line-height:1.7; max-width:48ch; }
.hub-link { color:#e0bded; display:inline-flex; align-items:center; gap:12px; font-size:14px; font-weight:600; padding:10px 0; }
.hub-link:hover { color:#fff; }
.hub-entry-tools { display:flex; flex-direction:column; justify-content:center; gap:22px; min-width:0; }
.hub-search-inline label { color:#e2dfdf; font-size:14px; display:block; margin-bottom:9px; }
.hub-search-inline > div { display:flex; border:1px solid #62516e; border-radius:6px; overflow:hidden; }
.hub-search-inline input { flex:1; min-width:0; width:100%; color:#f2eff4; background:#080b12; border:0; padding:14px; font-size:16px; }
.hub-search-inline button { background:#71429b; color:#fff; border:0; padding:12px 20px; font-size:14px; cursor:pointer; }
.hub-shortcuts { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.hub-shortcuts a { border-left:2px solid #9c7042; padding-left:16px; }
.hub-shortcuts span { font-size:12px; color:#d4af7e; }
.hub-shortcuts strong { display:block; margin:7px 0; color:#f1edf6; font-family:var(--serif); font-size:20px; font-weight:400; }
.hub-shortcuts small { color:#b7bfce; font-size:13px; }
.hub-shortcuts a:hover { border-color:#e4b478; }
.page-guide .cms-page-shell { max-width:1420px; }
.page-guide .cms-page-card { padding:0; border-radius:12px; overflow:hidden; }
.player-hub { --hub-line:#32323f; color:#f2edf3; font:400 16px/1.65 var(--sans); }
.player-hub [hidden] { display:none!important; }
.player-hub p { font-size:16px; }
.player-hub a { text-underline-offset:4px; }
.player-hub :is(a,button,input,select,summary):focus-visible,.hub-entry :is(a,button,input):focus-visible { outline:2px solid #ecc08b; outline-offset:3px; }
.hub-hero { position:relative; min-height:320px; display:flex; align-items:center; justify-content:space-between; gap:30px; isolation:isolate; background:#0c1018; border-bottom:1px solid #765338; padding:48px; }
.hub-hero::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#090d15 12%,#090d15e8 47%,#090d1533 100%); }
.hub-hero-art { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-2; opacity:.78; }
.hub-hero-copy { max-width:650px; }
.hub-hero h1 { margin:18px 0; font:400 clamp(38px,4.5vw,64px)/1.05 var(--serif); letter-spacing:-.03em; }
.hub-hero p { color:#c3c7d3; max-width:51ch; margin:0; }
.hub-hero-links { display:flex; flex-wrap:wrap; gap:24px; margin-top:24px; }
.hub-hero-links a { font-size:14px; font-weight:600; color:#ebbded; padding-block:8px; }
.hub-edition { flex-shrink:0; padding:20px 0 20px 24px; border-left:1px solid #c2915799; text-shadow:0 2px 12px #000; }
.hub-edition span { font-size:12px; letter-spacing:.1em; color:#eac194; }
.hub-edition strong { display:block; font:400 25px var(--serif); margin:10px 0; }
.hub-edition small { font-size:12px; color:#ccd0d8; }
.hub-layout { display:grid; grid-template-columns:235px minmax(0,1fr); background:#0c1018ed; }
.hub-sidebar { padding:34px 22px; border-right:1px solid var(--hub-line); align-self:start; }
.hub-sidebar > a { display:flex; align-items:start; gap:14px; padding:18px 0; border-bottom:1px solid #292b36; font-size:14px; color:#dfdbe5; }
.hub-sidebar > a b { color:#ad875d; font-size:12px; line-height:24px; }
.hub-sidebar a small { display:block; color:#a6afbf; font-size:12px; margin-top:3px; }
.hub-sidebar a:hover { color:#e8b67b; }
.hub-sidebar-bottom { margin-top:40px; }
.hub-sidebar-bottom a { display:flex; justify-content:space-between; font-size:14px; padding:12px 0; color:#c6b2db; }
.hub-main { min-width:0; padding:30px; }
.hub-controls { display:grid; grid-template-columns:minmax(170px,1fr) minmax(140px,.65fr) minmax(110px,.5fr) auto; align-items:end; gap:12px; scroll-margin-top:100px; }
.hub-controls label { display:grid; gap:8px; margin:0; font-size:14px; color:#c5c9d5; font-weight:500; }
.hub-controls input,.hub-controls select { width:100%; min-width:0; min-height:46px; background:#070b13; color:#f2eef5; border:1px solid #555365; border-radius:5px; padding:10px; font-size:16px; }
.hub-controls input::placeholder,.hub-search-inline input::placeholder { color:#a3aabd; opacity:1; }
.hub-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:10px 18px; color:#fff; background:#704196; border:1px solid #af79cf; border-radius:5px; cursor:pointer; font-size:14px; font-weight:600; white-space:nowrap; }
.hub-button:hover { color:#fff; background:#8250aa; }
.hub-result-bar { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:18px 0 22px; }
.hub-result-bar p { margin:0; font-size:13px; color:#b3bac8; }
.hub-result-bar a { font-size:13px; color:#dbb8ec; }
.hub-guide-list { display:grid; gap:28px; }
.hub-guide { scroll-margin-top:100px; padding:28px; border:1px solid #363744; border-top:2px solid #977147; border-radius:6px; background:linear-gradient(115deg,#181822,#111620); box-shadow:0 14px 32px #0002; }
.hub-guide:target { border-color:#cea46f; }
.hub-guide-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.hub-guide h2 { margin:8px 0 10px; color:#f1eae3; font:400 clamp(26px,2.5vw,34px)/1.15 var(--serif); }
.hub-copy { padding:10px 12px; font-size:12px; border:1px solid #60506e; border-radius:5px; color:#dec2ef; background:transparent; cursor:pointer; flex-shrink:0; }
.hub-guide-summary { margin:0 0 24px; color:#bec5d2; }
.hub-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 0 24px; padding:18px 0; border-block:1px solid #38343f; gap:20px; }
.hub-facts dt { color:#aeb7c7; font-size:12px; font-weight:400; margin-bottom:4px; }
.hub-facts dd { margin:0; color:#f1dfc9; font-size:14px; }
.hub-notice { padding:16px 18px; border-left:2px solid #b98851; background:#33261855; color:#c8cad4; font-size:14px!important; line-height:1.65; }
.hub-notice strong { display:block; font-size:14px; color:#e6be8e; margin-bottom:5px; }
.hub-route { margin-top:20px; border-top:1px solid #37323f; }
.hub-route summary { cursor:pointer; padding:20px 0; color:#e2caed; font-size:14px; font-weight:600; }
.hub-route summary span { float:right; }
.hub-route[open] summary span { transform:rotate(45deg); }
.hub-route ol { margin:0 0 4px 11px; padding:0; list-style:none; counter-reset:route; }
.hub-route li { position:relative; border-left:1px solid #72563d; padding:0 0 22px 25px; counter-increment:route; }
.hub-route li::before { content:''; position:absolute; width:9px; height:9px; border:2px solid #ca9f70; background:#181822; border-radius:50%; left:-5px; top:7px; }
.hub-route li:last-child { padding-bottom:0; }
.hub-route h3 { margin:0 0 8px; color:#e0d3c5; font-size:16px; font-weight:600; }
.hub-route li p { margin:0; color:#b8c0cf; }
.hub-table-wrap { max-width:100%; overflow:auto; margin:24px 0 18px; border:1px solid #383743; border-radius:5px; }
.hub-smith-table { width:100%; min-width:590px; border-collapse:collapse; font-size:14px; }
.hub-smith-table caption { color:#c5c9d4; font-size:13px; padding:12px; text-align:left; caption-side:top; }
.hub-smith-table th,.hub-smith-table td { padding:14px 12px; border-bottom:1px solid #373540; text-align:left; vertical-align:top; }
.hub-smith-table thead { background:#24202b; color:#ddc1a0; }
.hub-smith-table tbody th { font-weight:500; color:#e6e1e9; }
.hub-smith-table td { color:#c2cbd8; }
.hub-smith-table small { display:block; margin-top:5px; font-size:12px; color:#bdb0ca; font-weight:400; }
.hub-smith-table .hub-row-tower { background:#70412816; }
.hub-explainer { color:#bfc6d4; font-size:14px!important; }
.hub-explainer strong { color:#eed9bf; }
.hub-guide-actions { display:flex; gap:24px; flex-wrap:wrap; margin-top:24px; }
.hub-empty { border:1px dashed #60506e; padding:32px; text-align:center; }
.hub-empty h2 { font:400 28px var(--serif); }
.hub-empty p { color:#b8c0cf; }
.hub-footnote { font-size:13px!important; color:#a7b0c2; margin:28px 0 0; }
.hub-footnote a { color:#dfbdec; text-decoration:underline; }
.hub-copy-status:not(:empty) { position:fixed; bottom:24px; left:50%; transform:translateX(-50%); width:max-content; max-width:calc(100% - 32px); padding:12px 20px; color:#f1e1ff; border:1px solid #8a659e; border-radius:6px; background:#251b31; z-index:120; box-shadow:0 8px 32px #000a; font-size:14px; }
@media (max-width:1390px) {
  .site-header { height:auto; min-height:76px; }
  .nav-shell { flex-wrap:wrap; padding-block:12px; gap:14px 24px; }
  .main-nav { order:3; width:100%; justify-content:space-between; gap:16px; height:auto; padding:6px 0; }
  .main-nav > a { min-height:40px; }
  .nav-actions { margin-left:auto; }
  .nav-login { display:block; }
  .hub-controls { grid-template-columns:1fr 1fr; }
  .hub-hero { padding:36px; }
}
@media (max-width:900px) {
  .site-header { height:68px; min-height:68px; }
  .nav-shell { flex-wrap:nowrap; padding-block:0; }
  .menu-toggle { display:block; margin-left:auto; }
  .main-nav { position:absolute; top:68px; left:0; right:0; width:auto; max-height:calc(100dvh - 68px); overflow:auto; margin:0; padding:14px 20px; display:none; flex-direction:column; align-items:stretch; gap:0; background:#090c13; }
  .main-nav.open { display:flex; }
  .main-nav .nav-mobile-account { display:block; border-top:1px solid #373040; color:#e0b9ed; }
  .main-nav a { height:auto; padding:12px; width:100%; font-size:16px; }
  .nav-explore summary { padding:12px; font-size:16px; }
  .nav-explore > div { position:static; margin-inline:12px; border:0; background:#161421; }
  .nav-actions { display:none; }
  .hub-entry { grid-template-columns:1fr; gap:28px; padding:28px; }
  .hub-hero { display:block; }
  .hub-edition { margin-top:28px; padding:8px 0 8px 16px; }
  .hub-edition strong { display:none; }
  .hub-edition small { display:block; margin-top:5px; }
  .hub-layout { grid-template-columns:1fr; }
  .hub-sidebar { border-right:0; border-bottom:1px solid #32323f; display:grid; grid-template-columns:1fr 1fr; padding:22px; gap:0 20px; }
  .hub-sidebar > .hub-kicker { grid-column:1/-1; }
  .hub-sidebar-bottom { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:8px 24px; margin-top:18px; }
  .hub-sidebar-bottom > .hub-kicker { display:none; }
  .hub-main { padding:24px; }
}
@media (max-width:540px) {
  .hub-entry { width:calc(100% - 24px); padding:24px 18px; }
  .hub-shortcuts { grid-template-columns:1fr; gap:20px; }
  .hub-search-inline button { padding:12px; }
  .hub-hero { padding:30px 22px; }
  .hub-main { padding:20px 14px; }
  .hub-controls { grid-template-columns:1fr 1fr; }
  .hub-query { grid-column:1/-1; }
  .hub-controls .hub-button { grid-column:1/-1; }
  .hub-guide { padding:20px 16px; }
  .hub-guide-heading { align-items:start; flex-direction:column; gap:4px; }
  .hub-copy { margin-bottom:16px; }
  .hub-facts { grid-template-columns:1fr; gap:14px; }
  .hub-facts > div { display:flex; justify-content:space-between; gap:12px; }
  .hub-facts dd { text-align:right; max-width:65%; }
  .hub-sidebar { grid-template-columns:1fr; }
  .hub-sidebar > a { padding:12px 0; }
  .page-home .opening-countdown { grid-template-columns:1fr; height:auto; }
  .page-home .opening-countdown-clock { grid-column:1; grid-row:auto; }
  .page-home .hero-copy { padding-inline:24px; }
  .page-home .hero-actions { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) {
  .player-hub *, .hub-entry * { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
