/* Shared iTechVora design tokens and site chrome. Edit the palette here. */
:root {
 --itv-ink:#0c1525; --itv-muted:#485873; --itv-accent:#0061ff; --itv-accent-hover:#004bc8;
 --itv-line:#e1eaf6; --itv-border:#b1c9e8; --itv-paper:#fff; --itv-surface:#f1f5fb;
 --itv-surface-alt:#edf3fa; --itv-accent-soft:#dceaff; --itv-footer:#071725;
 --itv-footer-text:#c4d1e0; --itv-footer-accent:#2784ff; --itv-shadow-rgb:12 35 65;
 --ink:var(--itv-ink); --muted:var(--itv-muted); --accent:var(--itv-accent);
 --line:var(--itv-line); --paper:var(--itv-paper); --lime:var(--itv-accent-soft);
}
body { background:var(--itv-paper); }
body .container { max-width:1280px; width:calc(100% - 64px); }
body h1,body h2,body h3 { letter-spacing:-.035em; }
body a:hover { color:var(--itv-accent-hover); }
body [hidden] { display:none!important; }
.itv-topbar { background:linear-gradient(110deg,#081b30,#103b66 65%,#081b30);color:#fff; }
.itv-topbar>.container { display:flex;align-items:center;gap:24px;min-height:32px; }
.itv-trending { display:flex;align-items:center;gap:14px;min-width:0;flex:1;font-size:11px; }
.itv-trending strong { white-space:nowrap;flex-shrink:0; }
.itv-trending strong span { color:#ffcd38;font-size:21px;vertical-align:middle; }
.itv-trending>div { display:flex;gap:12px;overflow:auto;scrollbar-width:none;white-space:nowrap; }
.itv-trending a { border-right:1px solid #ffffff55;padding-right:12px;max-width:235px;overflow:hidden;text-overflow:ellipsis;flex-shrink:0; }
.itv-trending a:last-child { border:0; }
.itv-topbar a:hover { color:#a8d2ff!important; }
.itv-topbar-links { display:flex;align-items:center;gap:16px;font-size:11px;flex-shrink:0; }
body .reader-nav { border:0;margin:0;padding:0;font-size:11px; }
.itv-site-header .header-inner { min-height:78px;gap:24px; }
body .itv-site-wordmark { display:block;font-size:35px;letter-spacing:-1.9px;line-height:1;flex-shrink:0; }
.itv-site-wordmark>span { color:#0b1220; }
.itv-site-wordmark b { color:var(--itv-accent); }
.itv-site-wordmark small { display:block;font-size:7px;font-weight:400;letter-spacing:.05px;color:#52627a;margin-top:5px; }
body #primary-nav { flex:1;justify-content:flex-end;gap:15px;font-size:12px; }
body #primary-nav>ul { gap:15px; }
body #primary-nav>a { white-space:nowrap;font-weight:600; }
body .search-toggle { display:grid;place-items:center;background:var(--itv-accent);color:#fff;width:40px;height:40px;border-radius:7px;padding:0;flex-shrink:0; }
body .search-panel { padding-bottom:16px; }
body .search-form { max-width:100%; }
body .search-form input { background:#fff;border-color:#d9e6f7; }
body .search-form button { background:var(--itv-accent);color:#fff; }
.itv-mobile-reader { display:none; }
body .newsletter { margin:0 0 26px;padding:24px 32px;background:linear-gradient(110deg,#e1f3ff,#f0f8ff 70%,#d7eaff);border:1px solid #d5eaff; }
body .newsletter h2 { font-size:27px;margin:8px 0; }
body .newsletter .button { background:var(--itv-accent);color:white; }
body .site-footer { background:var(--itv-footer);color:#fff;border:0;padding-top:32px; }
body .site-footer .wordmark { color:#fff; }
body .site-footer .wordmark span { color:var(--itv-footer-accent); }
body .site-footer .wordmark i { background:var(--itv-footer-accent); }
body .site-footer-expanded .footer-top { grid-template-columns:1.8fr repeat(4,minmax(0,1fr));padding-bottom:28px;gap:26px; }
body .footer-top h2 { color:white;font-size:14px;letter-spacing:0; }
body .footer-top p,body .footer-top li a,body .footer-email { color:var(--itv-footer-text); }
body .footer-top li a { margin:7px 0;font-size:12px; }
body .footer-email a { display:inline-flex;align-items:center;min-height:28px; }
body .footer-bottom { color:var(--itv-footer-text);border-color:#213347;font-size:11px; }
body .back-to-top { color:var(--itv-accent);background:#fff;border-color:#d5e3ff; }
body .itv-cookie-notice { background:#fff;border-color:#d5e3ff;color:var(--itv-ink); }
body .itv-cookie-eyebrow,body .itv-cookie-notice a { color:var(--itv-accent); }
body .itv-cookie-notice p { color:var(--itv-muted); }
body .itv-cookie-dismiss { background:var(--itv-accent); }
@media(min-width:768px) and (max-width:1199px) {
.itv-site-header .header-inner { flex-wrap:wrap;padding:16px 0;gap:16px; }
body #primary-nav { order:3;flex-basis:100%;justify-content:space-between; }
body .search-toggle { margin-left:auto; }
body .site-footer-expanded .footer-top { grid-template-columns:repeat(4,minmax(0,1fr)); }
body .footer-brand { grid-column:1/-1; }
}
@media(max-width:767px) {
body .container { width:calc(100% - 32px); }
.itv-topbar>.container { min-height:32px; }
.itv-topbar-links { display:none; }
.itv-trending { font-size:10px;gap:10px; }
.itv-site-header .header-inner { min-height:74px;gap:16px;padding:0;flex-wrap:wrap; }
body .itv-site-wordmark { font-size:32px; }
body .menu-toggle { display:block;margin-left:auto;font-size:12px; }
body #primary-nav { display:none;order:3;flex-basis:100%;padding:12px 0 18px;flex-wrap:wrap;justify-content:flex-start;gap:16px;font-size:13px; }
body #primary-nav.is-open { display:flex; }
body #primary-nav>ul { flex-wrap:wrap; }
.itv-mobile-reader { display:block;flex-basis:100%; }
body .newsletter { display:block;padding:24px; }
body .newsletter h2 { font-size:24px; }
body .site-footer-expanded .footer-top { grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
body .footer-brand { grid-column:1/-1; }
body .footer-bottom { flex-wrap:wrap;line-height:1.6;gap:12px; }
}

/* Preserve the content widths used by prose and calculators. */
body .page-main { max-width:850px; }
body .page-main:has(.itv-tools) { max-width:1140px; }
body .button,body .reader-tools button,body .reader-saved button,body .top-pick-number { background:var(--itv-accent);color:white; }
body .button:hover,body .reader-tools button:hover,body .reader-saved button:hover { background:var(--itv-accent-hover);color:white; }
body .page-numbers.current { background:var(--itv-accent);color:white; }
body .story-card:not(.compact) { border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--paper); }
body .story-card:not(.compact) .card-copy { padding:16px; }
body .site-header #primary-nav .sub-menu { background:var(--paper);border-color:var(--line); }
body .site-footer a:hover { color:var(--itv-footer-accent); }
body .site-footer .footer-bottom a,body .site-footer .footer-email a { color:var(--itv-footer-text); }
