/* TVWeek – "Prime time" design.
   One bold idea: the home page band takes the colour of the UK time of day.
   Everything else stays quiet: white paper, navy ink, signal red, test-card yellow for "on now". */

@font-face{font-family:"Inter Display";src:url(/assets/fonts/inter-display-800.v1.woff) format("woff");font-weight:800;font-display:swap}
@font-face{font-family:"Inter";src:url(/assets/fonts/inter-400.v1.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:"Inter";src:url(/assets/fonts/inter-600.v1.woff) format("woff");font-weight:600 700;font-display:swap}

:root{
  /* palette */
  --ink:#14183a;          /* after-dark navy: text, header, footer */
  --ink-2:#4a4f72;        /* secondary text */
  --signal:#e0263f;       /* brand red */
  --brand:#e0263f;        /* logo */
  --signal-ink:#b8142c;
  --glow:#ffd84d;         /* test-card yellow: on now */
  --glow-soft:#fff4c7;
  --dusk:#5240d6;         /* prime time */
  --dusk-soft:#efedff;
  --paper:#ffffff;
  --mist:#f1f2f8;
  --mist-2:#e5e7f1;
  --line:#dcdfeb;
  --new:#0a7a46;
  --focus:#1f62e0;
  --chw:168px;
  --display:"Inter Display","Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --text:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{--ink:#eef0ff;--ink-2:#a9add0;--paper:#0e1130;--mist:#171b42;--mist-2:#21265a;--line:#2a2f66;
    --glow:#ffd84d;--glow-soft:#3a3413;--dusk:#9b8cff;--dusk-soft:#1f1b52;--signal-ink:#ff6378;--new:#4cd08a;--focus:#8db4ff;color-scheme:dark}
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--text);font-size:16px;line-height:1.55;
  font-feature-settings:"cv11","ss01";overflow-x:clip}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent)}
a:hover{color:var(--signal-ink);text-decoration-color:currentColor}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}
h1,h2,h3{font-family:var(--display);font-weight:800;line-height:1.05;letter-spacing:-.03em;margin:0}
h1{font-size:clamp(2.2rem,1.4rem + 3.4vw,4rem);margin:.35em 0 .2em}
h2{font-size:clamp(1.35rem,1.1rem + .9vw,1.8rem);margin:1.8em 0 .55em}
h3{font-size:1.1rem;letter-spacing:-.015em}
time{font-variant-numeric:tabular-nums}
.wrap{max-width:1240px;margin:0 auto;padding:0 20px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--glow);color:#14183a;padding:8px 14px;border-radius:8px;z-index:100;font-weight:600}
.skip:focus{left:8px}
.muted{color:var(--ink-2)}
.lede{font-size:1.15rem;color:var(--ink-2);max-width:62ch;margin:0 0 1em}
.small-print{font-size:.88rem;color:var(--ink-2);max-width:80ch}
.sample-banner{background:var(--glow);color:#14183a;text-align:center;padding:6px 12px;font-size:.9rem}

/* ---------- remote-control key: channel numbers ---------- */
.lcn{display:inline-grid;place-items:center;min-width:2.15em;height:1.75em;padding:0 .4em;border-radius:7px;
  background:#14183a;color:#fff;font:600 .78rem/1 var(--text);font-variant-numeric:tabular-nums;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.18);vertical-align:.1em;flex:none}
@media (prefers-color-scheme:dark){.lcn{background:#2f3577}}

/* ---------- header ---------- */
.site-header{background:#14183a;color:#fff;position:sticky;top:0;z-index:30}
.header-inner{display:flex;align-items:center;gap:22px;height:64px}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;color:#fff;font:800 1.45rem/1 var(--display);letter-spacing:-.035em}
.logo b{color:#ff4d63;font-weight:800}
.logo:hover{color:#fff}
.main-nav{flex:1;overflow-x:auto;scrollbar-width:none}
.main-nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.main-nav a{display:block;padding:9px 14px;border-radius:10px;text-decoration:none;font-weight:600;white-space:nowrap;color:#d9dcf5}
.main-nav a:hover{color:#fff;background:rgba(255,255,255,.08)}
.main-nav a[aria-current]{color:#fff;box-shadow:inset 0 -3px 0 var(--signal);border-radius:10px 10px 0 0}
.search-link{display:flex;align-items:center;gap:7px;text-decoration:none;font-weight:600;padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.1);color:#fff}
.search-link:hover{background:rgba(255,255,255,.18);color:#fff}
@media (max-width:700px){.search-link span{display:none}.search-link{padding:9px}.header-inner{gap:8px;height:58px}
  .main-nav a{padding:9px 9px;font-size:.95rem}.logo span{display:none}}
@media (max-width:420px){.main-nav a{padding:9px 6px;font-size:.88rem}.header-inner{gap:6px}.wrap,.band-inner{padding:0 16px}}

/* ---------- buttons, chips, badges ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:600 1rem/1.2 var(--text);padding:11px 18px;border-radius:12px;
  border:1.5px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;text-decoration:none}
.btn:hover{border-color:var(--ink);color:var(--ink)}
.btn-primary{background:var(--signal);border-color:var(--signal);color:#fff}
.btn-primary:hover{background:var(--signal-ink);border-color:var(--signal-ink);color:#fff}
.btn.small{padding:7px 12px;font-size:.9rem;border-radius:10px}
.linklike{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.chip{font:600 .9rem/1 var(--text);padding:9px 13px;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer}
.chip:hover{border-color:var(--ink)}
.chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.badge{display:inline-block;font:600 .72rem/1.5 var(--text);padding:0 6px;border-radius:5px;vertical-align:.12em;background:var(--mist-2);color:var(--ink-2)}
.badge.new{background:color-mix(in srgb,var(--new) 14%,transparent);color:var(--new)}
.badge.film{background:color-mix(in srgb,var(--signal) 12%,transparent);color:var(--signal-ink)}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.link-row{display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:center;list-style:none;padding:0;font-weight:600}

/* ---------- breadcrumbs ---------- */
.crumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:18px 0 0;font-size:.88rem;color:var(--ink-2)}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.5}

/* ---------- home: the time-of-day band ---------- */
.band{--band:#bfe1ff;--band-ink:#14183a;margin-inline:calc(50% - 50vw);background:var(--band);color:var(--band-ink);padding:26px 0 36px;position:relative}
.band[data-period="morning"]{--band:#ffe7a3;--band-ink:#2b1d00}
.band[data-period="day"]{--band:#bfe1ff;--band-ink:#0d2140}
.band[data-period="prime"]{--band:#33259e;--band-ink:#ffffff}
.band[data-period="night"]{--band:#0d1030;--band-ink:#eef0ff}
.band-inner{max-width:1240px;margin:0 auto;padding:0 20px;position:relative;z-index:1}
.band h1{font-size:clamp(2.8rem,1.6rem + 5vw,5.6rem);margin:.08em 0 .1em;letter-spacing:-.045em}
.band .lede{color:inherit;opacity:.82;font-size:1.2rem}
.clock{font:800 1.15rem/1.2 var(--display);letter-spacing:-.01em;margin:6px 0 0;opacity:.9}
.band a{color:inherit}
.hero-search,.search-form{display:flex;gap:8px;max-width:620px;margin:18px 0 6px}
.hero-search input,.search-form input{flex:1;min-width:0;font:inherit;font-size:1.05rem;padding:14px 18px;border-radius:14px;
  border:1.5px solid var(--line);background:var(--paper);color:var(--ink)}
.band .hero-search input{border-color:transparent;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.band .block-head{margin-top:30px}
.band h2{margin:0}
.nn-grid{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px}
.nn-card{background:var(--paper);color:var(--ink);border-radius:16px;padding:14px 16px 13px;min-height:112px;display:flex;flex-direction:column}
.nn-ch{display:flex;align-items:center;gap:9px;font-weight:600;text-decoration:none;font-size:.95rem;color:var(--ink-2)!important}
.nn-now{margin-top:9px;font:800 1.18rem/1.15 var(--display);letter-spacing:-.02em}
.nn-now a{text-decoration:none;color:var(--ink)!important}
.nn-now a:hover{text-decoration:underline}
.nn-now.muted a{color:var(--ink-2)!important;font-weight:400;font-family:var(--text);font-size:1rem;letter-spacing:0}
.nn-time{color:var(--ink-2);font-size:.85rem;margin-top:3px}
.nn-next{margin-top:auto;padding-top:8px;font-size:.88rem;color:var(--ink-2)}
.nn-next time{font-weight:600;color:var(--ink);margin-right:4px}
.bar{height:5px;background:var(--mist-2);border-radius:5px;margin:8px 0 0;overflow:hidden}
.bar i{display:block;height:100%;background:var(--signal);border-radius:5px}
.nn-more{margin-top:12px;background:transparent;color:inherit;border-color:currentColor}
.band .nn-more:hover{color:inherit;border-color:currentColor;background:rgba(255,255,255,.12)}

/* ---------- home sections ---------- */
.block{margin:40px 0}
.block-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.block-head h2{margin:0 0 14px}
.block-head a{font-weight:600;font-size:.95rem;white-space:nowrap}
.hl-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:1.5px solid var(--line);border-radius:18px;overflow:hidden}
.hl{padding:16px 16px 18px;border-right:1.5px solid var(--line)}
.hl:last-child{border-right:0}
.hl h3 a{display:flex;align-items:center;gap:9px;text-decoration:none}
.mini{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:12px}
.mini li{display:grid;grid-template-columns:3.3em 1fr;gap:6px;align-items:baseline}
.mini time{font:800 1rem/1 var(--display);letter-spacing:-.02em}
.mini li.pt time{color:var(--dusk)}
.mini a{text-decoration:none;font-weight:600}
.mini a:hover{text-decoration:underline}
@media (max-width:1000px){.hl-row{grid-template-columns:repeat(2,minmax(0,1fr))}.hl{border-bottom:1.5px solid var(--line)}}
@media (max-width:560px){.hl-row{grid-template-columns:1fr}.hl{border-right:0}}
.week{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
@media (max-width:1100px){.week{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}
.day-card{display:flex;flex-direction:column;height:100%;padding:14px 14px 16px;border-radius:16px;background:var(--mist);text-decoration:none}
.day-card:hover{background:var(--ink);color:var(--paper)}
.day-card:hover .lcn{background:var(--signal)}
.day-card strong{font:800 1.3rem/1.1 var(--display);letter-spacing:-.03em}
.day-card small{color:inherit;opacity:.7}
.day-card .at9{margin-top:14px;font-size:.8rem;font-weight:600;color:var(--dusk)}
.day-card:hover .at9{color:var(--glow)}
.day-card ul{list-style:none;padding:0;margin:6px 0 0;font-size:.88rem;display:grid;gap:6px}
.day-card li{display:flex;gap:7px;align-items:baseline;line-height:1.3}
.day-card .lcn{font-size:.68rem}
.chan-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 16px}
.chan-list a{display:flex;align-items:center;gap:10px;padding:8px 6px;border-bottom:1px solid var(--line);text-decoration:none;font-weight:600}
.chan-list a:hover{color:var(--signal-ink)}
.chan-list a:hover .lcn{background:var(--signal)}
.about-blurb{max-width:68ch;color:var(--ink-2)}
.about-blurb h2{color:var(--ink)}

/* ---------- listings ---------- */
.list{list-style:none;padding:0;margin:0}
.prog{display:grid;grid-template-columns:4.4em 1fr auto;gap:12px;padding:12px 8px;border-bottom:1px solid var(--line);align-items:baseline;border-radius:10px}
.prog time{font:800 1.12rem/1 var(--display);letter-spacing:-.02em}
.prog-title{font-weight:600;font-size:1.04rem;text-decoration:none}
.prog-title:hover{text-decoration:underline}
.prog .sub{display:block;font-size:.92rem;color:var(--ink-2);margin-top:1px}
.prog .sub a{color:var(--ink-2)}
.prog .chan-tag{display:inline-block;font-size:.88rem;color:var(--ink-2);margin-top:2px}
.prog .dur{font-size:.82rem;color:var(--ink-2);white-space:nowrap}
.prog .desc{margin:4px 0 0;font-size:.94rem;color:var(--ink-2);max-width:70ch}
.prog.past{opacity:.48}
.prog.live{background:var(--glow-soft);border-bottom-color:transparent;box-shadow:inset 4px 0 0 var(--glow)}
.prog.live time::after{content:"On now";display:block;margin-top:5px;font:600 .7rem/1 var(--text);letter-spacing:0;color:var(--ink)}
.chan-block h2,.day-block h2{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px;padding-bottom:10px;border-bottom:3px solid var(--ink)}
.day-block h2 small{font:400 1rem/1 var(--text);letter-spacing:0;color:var(--ink-2)}
.chan-block h2 a{text-decoration:none}
.chan-block h2 .lcn{font-size:.85rem}
.toc ul{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0 0 10px}
.toc a{display:block;font-size:.88rem;font-weight:600;padding:6px 12px;border-radius:999px;background:var(--mist);text-decoration:none}
.toc a:hover{background:var(--ink);color:var(--paper)}
.tonight{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:8px 36px}
@media (max-width:440px){.tonight{grid-template-columns:1fr}}
.tonight .ad{grid-column:1/-1}

/* ---------- day tabs ---------- */
.day-tabs{margin:14px 0 18px;overflow-x:auto;scrollbar-width:none}
.day-tabs ul{display:flex;gap:6px;list-style:none;margin:0;padding:2px}
.day-tabs a{display:flex;flex-direction:column;align-items:flex-start;min-width:104px;padding:10px 14px 11px;border-radius:14px;background:var(--mist);text-decoration:none}
.day-tabs a span{font:800 1.05rem/1.1 var(--display);letter-spacing:-.02em}
.day-tabs a small{color:var(--ink-2);font-size:.82rem}
.day-tabs a:hover{background:var(--mist-2)}
.day-tabs a[aria-current]{background:var(--ink);color:var(--paper)}
.day-tabs a[aria-current] small{color:inherit;opacity:.75}
.pager{display:flex;justify-content:space-between;gap:12px;margin:22px 0;font-weight:600}

/* ---------- the grid ---------- */
.grid-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:12px}
.chips,.jump{display:flex;flex-wrap:wrap;gap:6px}
.grid{position:relative;overflow:auto;max-height:calc(100vh - 140px);min-height:440px;border:1.5px solid var(--line);border-radius:18px;
  background:var(--paper);overscroll-behavior:contain}
.g-ruler{display:flex;position:sticky;top:0;z-index:3;background:var(--paper);border-bottom:1.5px solid var(--line);width:max-content}
.g-corner{width:var(--chw);flex:none;position:sticky;left:0;z-index:4;background:var(--paper)}
.g-times{position:relative;height:38px;flex:none}
.tick{position:absolute;top:0;height:100%;padding:10px 0 0 7px;font-size:.78rem;color:var(--ink-2);border-left:1px solid var(--line);font-variant-numeric:tabular-nums}
.tick.hour{color:var(--ink);font:800 .92rem/1 var(--display);padding-top:11px}
.pt-band{position:absolute;top:0;bottom:0;background:var(--dusk-soft);color:var(--dusk);font-size:.7rem;font-weight:600;
  padding:2px 0 0 7px;line-height:1;border-bottom:3px solid var(--dusk)}
.pt-band{padding-top:0;display:flex;align-items:flex-end;padding-bottom:3px;justify-content:flex-end;padding-right:8px}
.g-row{display:flex;width:max-content}
.g-row:nth-child(even) .g-track{background:color-mix(in srgb,var(--mist) 55%,transparent)}
.g-row[hidden]{display:none}
.g-ch{width:var(--chw);flex:none;position:sticky;left:0;z-index:2;background:var(--paper);display:flex;align-items:center;gap:9px;padding:0 12px;
  text-decoration:none;font-weight:600;font-size:.93rem;border-right:1.5px solid var(--line);border-bottom:1px solid var(--line)}
.g-ch:hover .lcn{background:var(--signal)}
.g-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.g-track{position:relative;height:66px;flex:none;border-bottom:1px solid var(--line)}
.g{position:absolute;top:5px;bottom:5px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:5px 10px;border-radius:10px;
  background:var(--paper);border:1.5px solid var(--line);text-decoration:none;overflow:hidden;margin-left:3px}
.g:hover{border-color:var(--ink);color:inherit;z-index:1}
.g b{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.g span{display:flex;gap:7px;font-size:.76rem;color:var(--ink-2);white-space:nowrap;overflow:hidden}
.g span time{font-weight:600;color:var(--ink)}
.g span em{font-style:normal}
.g.pt{background:var(--dusk-soft);border-color:color-mix(in srgb,var(--dusk) 30%,transparent)}
.g.short{padding:5px 6px}
.g .dot-new{font-style:normal;color:var(--new);font-weight:600}
.g.filler{background:transparent;border-style:dashed}
.g.filler b{font-weight:400;color:var(--ink-2)}
.g.past{opacity:.45}
.g.live{background:var(--glow);border-color:#e9b800;color:#14183a}
.g.live span,.g.live span time{color:#14183a}
.g-now{position:absolute;top:0;width:2px;background:var(--signal);z-index:2;pointer-events:none}
.g-now::before{content:"";position:absolute;top:30px;left:-5px;width:12px;height:12px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 3px var(--paper)}
@media (max-width:700px){
  :root{--chw:72px}
  .g-ch{flex-direction:column;justify-content:center;gap:3px;padding:0 4px;font-size:.66rem;text-align:center}
  .g-name{max-width:100%}
  .grid-tools{flex-direction:column;flex-wrap:nowrap}
  .chips,.jump{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
  .chip,.jump .btn{flex:none}
  .grid{max-height:calc(100vh - 110px)}
}
.stale-note{background:var(--glow-soft);border-left:5px solid var(--glow);padding:12px 16px;border-radius:10px;margin:10px 0;font-weight:600}

/* ---------- tables ---------- */
.table-wrap{overflow-x:auto;margin:14px 0}
table{border-collapse:collapse;width:100%;font-size:.97rem}
th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:.85rem;font-weight:600;color:var(--ink-2);border-bottom:3px solid var(--ink)}
td.num{font:800 1.05rem/1 var(--display)}
.airings td:nth-child(2) time{font:800 1.08rem/1 var(--display);letter-spacing:-.02em}
.airings tr.live td{background:var(--glow-soft)}
.airings tr.live td:first-child{box-shadow:inset 4px 0 0 var(--glow)}
.airings tr.past{opacity:.48}
.airings .desc{margin:4px 0 0;color:var(--ink-2);font-size:.92rem}
.airings.no-access th:last-child,.airings.no-access td:last-child{display:none}
.numbers td:first-child{width:4em}

/* ---------- prose / editorial ---------- */
.prose{max-width:70ch}
.prose.wide{max-width:900px}
.prose h1{font-size:clamp(2.1rem,1.4rem + 2.6vw,3.4rem)}
.prose h2{margin-top:1.6em}
.prose p,.prose li{line-height:1.65}
.prose li{margin:.35em 0}
.prose code{background:var(--mist);padding:1px 6px;border-radius:6px;font-size:.88em}
.contact-card{background:var(--glow-soft);border-radius:16px;padding:18px 22px;margin:18px 0;border-left:5px solid var(--glow)}
.contact-card p{margin:.3em 0}
.guide-list{list-style:none;padding:0;display:grid;gap:10px;max-width:780px;margin:24px 0}
.guide-list a{display:block;padding:18px 20px;border-radius:16px;background:var(--mist);text-decoration:none}
.guide-list a:hover{background:var(--ink);color:var(--paper)}
.guide-list strong{font:800 1.2rem/1.2 var(--display);letter-spacing:-.02em}
.guide-list span{display:block;opacity:.75;font-size:.95rem;margin-top:4px}
.sitemap-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}
.sitemap-cols ul{padding-left:18px}
.notfound{text-align:center;padding:48px 0}
.notfound h1{font-size:clamp(2.6rem,2rem + 4vw,5rem)}
.notfound .lede{margin-inline:auto}
.notfound .search-form{margin:24px auto}

/* ---------- search ---------- */
#search-results ol{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:4px;max-width:820px}
.sr{padding:16px 4px;border-bottom:1px solid var(--line)}
.sr a.t{font:800 1.25rem/1.2 var(--display);letter-spacing:-.02em;text-decoration:none}
.sr a.t:hover{text-decoration:underline}
.sr ul{list-style:none;padding:0;margin:8px 0 0;font-size:.93rem;color:var(--ink-2);display:grid;gap:3px}
.sr li{display:flex;gap:10px;flex-wrap:wrap}
.sr li time{color:var(--ink);font-weight:600;min-width:9.5em}
.sr mark{background:var(--glow);color:#14183a;border-radius:3px;padding:0 1px}

/* ---------- ads ---------- */
.ad{margin:26px 0;min-height:110px;text-align:center}
.ad-label{display:block;font-size:.72rem;color:var(--ink-2);margin-bottom:4px}

/* ---------- footer ---------- */
.site-footer{margin-top:72px;background:#14183a;color:#c9cdee;padding:44px 0 30px;font-size:.93rem}
.site-footer a{color:#fff;text-decoration:none}
.site-footer a:hover{color:var(--glow);text-decoration:underline}
.site-footer .linklike{color:#fff;text-decoration:none}
.site-footer .linklike:hover{color:var(--glow)}
.foot-cols{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:28px}
@media (max-width:760px){.foot-cols{grid-template-columns:1fr 1fr}}
.foot-brand{font:800 1.6rem/1 var(--display);letter-spacing:-.035em;color:#fff;margin:0 0 10px}
.foot-brand b{color:#ff4d63}
.site-footer h2{font:600 .9rem/1 var(--text);letter-spacing:0;color:#8f94c4;margin:0 0 12px}
.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.disclaimer,.copyright{color:#8f94c4;font-size:.84rem;margin-top:26px;max-width:90ch}

/* ---------- consent ---------- */
.consent{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;display:flex;justify-content:center}
.consent[hidden]{display:none}
.consent-inner{max-width:880px;background:#14183a;color:#fff;border-radius:18px;box-shadow:0 18px 50px rgba(10,12,40,.4);
  padding:18px 20px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.consent-inner p{margin:0;flex:1 1 380px;font-size:.94rem;color:#d9dcf5}
.consent-inner strong{color:#fff}
.consent-inner a{color:#fff}
.consent-actions{display:flex;gap:8px}
.consent .btn{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.consent .btn:hover{border-color:#fff}
.consent .btn-primary{background:var(--glow);border-color:var(--glow);color:#14183a}
.consent .btn-primary:hover{background:#ffe680;color:#14183a}

@media print{.site-header,.site-footer,.ad,.consent,.grid-tools,.day-tabs{display:none}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
