/* =========================================================
   Sitezen — 100 headers (10 layouts × 10 colour styles)
   ========================================================= */

/* display:contents lets the menu bar stick to the top while scrolling */
.site-header.sz-hd { display: contents; }

/* ---------- Tone tokens ---------- */
.sz-hd {
  --hd-bg: #fff; --hd-ink: #1c1c1c; --hd-mut: #7a7a7a;
  --nav-bg: #fff; --nav-ink: #1f1f1f; --nav-act: var(--sz-red); --nav-line: #e9e9e9;
  --top-bg: #161616; --top-ink: #e9e9e9; --sb-bg: #f3f3f3; --drop-bg: #fff; --drop-ink: #1f1f1f;
}
.sz-hd-t-dark { --hd-bg: #121212; --hd-ink: #fff; --hd-mut: #9a9a9a; --nav-bg: #121212; --nav-ink: #f1f1f1; --nav-line: #262626; --top-bg: #000; --sb-bg: rgba(255,255,255,.08); --drop-bg: #1b1b1b; --drop-ink: #eee; }
.sz-hd-t-accent { --hd-bg: var(--sz-red); --hd-ink: #fff; --hd-mut: rgba(255,255,255,.8); --nav-bg: var(--sz-red); --nav-ink: #fff; --nav-act: #fff; --nav-line: rgba(255,255,255,.22); --top-bg: color-mix(in srgb, var(--sz-red) 70%, #000); --sb-bg: rgba(255,255,255,.16); }
.sz-hd-t-ink { --nav-bg: #161616; --nav-ink: #f1f1f1; --nav-line: #161616; --sb-bg: rgba(255,255,255,.1); --top-bg: #f4f4f4; --top-ink: #444; }
.sz-hd-t-paper { --hd-bg: #f6f1e7; --nav-bg: #f6f1e7; --nav-line: #1c1c1c; --top-bg: #ece4d4; --top-ink: #5b5245; --sb-bg: #fff; --hd-mut: #6f6656; }
.sz-hd-t-rule { --nav-line: #111; --top-bg: var(--sz-red); --top-ink: #fff; }
.sz-hd-t-glass { --hd-bg: rgba(255,255,255,.82); --nav-bg: rgba(255,255,255,.72); --nav-line: rgba(0,0,0,.08); --top-bg: rgba(20,20,20,.92); }
.sz-hd-t-gradient { --hd-bg: linear-gradient(120deg, #141420 0%, color-mix(in srgb, var(--sz-red) 55%, #141420) 100%); --hd-ink: #fff; --hd-mut: rgba(255,255,255,.75); --nav-bg: #141420; --nav-ink: #fff; --nav-line: rgba(255,255,255,.1); --top-bg: #0b0b12; --sb-bg: rgba(255,255,255,.1); --drop-bg: #1b1b28; --drop-ink: #eee; }
.sz-hd-t-soft { --hd-bg: #f4f4f5; --nav-bg: #f4f4f5; --nav-line: transparent; --top-bg: #e9e9ec; --top-ink: #52525b; --sb-bg: #fff; }
.sz-hd-t-night { --hd-bg: #0b1220; --hd-ink: #fff; --hd-mut: #8b98b0; --nav-bg: #0f182b; --nav-ink: #dbe4f3; --nav-line: #1c2740; --top-bg: #070c16; --top-ink: #a9b6cc; --sb-bg: rgba(255,255,255,.07); --drop-bg: #131d33; --drop-ink: #e3e9f5; }

/* ---------- Shared parts ---------- */
.sz-hd .topbar { background: var(--top-bg); color: var(--top-ink); border: 0; }
.sz-hd .topbar a { color: var(--top-ink); }
.sz-hd .masthead { background: var(--hd-bg); color: var(--hd-ink); padding: 28px 0 24px; text-align: left; }
.sz-hd .site-title { margin: 0; line-height: 1.05; }
.sz-hd .site-title a { color: var(--hd-ink); }
.sz-hd .site-desc { color: var(--hd-mut); margin: 6px 0 0; }
.sz-hd .hd-date { font-size: .74rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--hd-mut); }
.sz-hd .hd-social { display: flex; gap: 6px; }
.sz-hd .hd-social a { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; border-radius: 50%; color: var(--hd-ink); border: 1px solid color-mix(in srgb, var(--hd-ink) 20%, transparent); }
.sz-hd .hd-social a:hover { background: var(--sz-red); border-color: var(--sz-red); color: #fff; }
.sz-hd .hd-social svg { width: 14px; height: 14px; }
.sz-hd .hd-tools { display: flex; align-items: center; justify-content: flex-end; gap: 14px; }

.site-header.sz-hd .navbar, .sz-hd .navbar.hd-bar { background: var(--nav-bg); border-top: 1px solid var(--nav-line); border-bottom: 1px solid var(--nav-line); z-index: 80; }
.sz-hd .navbar-in { min-height: 56px; gap: 18px; }
.sz-hd .site-nav .menu > li > a { color: var(--nav-ink); font-size: .76rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; padding: 19px 13px; box-shadow: none; }
.sz-hd .site-nav .menu > li > a:hover { color: var(--nav-act); }
.sz-hd .site-nav .menu > li.current-menu-item > a, .sz-hd .site-nav .menu > li.current_page_item > a, .sz-hd .site-nav .menu > li.current-cat > a { color: var(--nav-act); box-shadow: inset 0 -3px 0 var(--nav-act); }
.sz-hd .site-nav .menu ul { background: var(--drop-bg); }
.sz-hd .site-nav .menu ul a { color: var(--drop-ink); }
.sz-hd .nav-toggle { color: var(--nav-ink); }
.sz-hd .nav-toggle .bars, .sz-hd .nav-toggle .bars::before, .sz-hd .nav-toggle .bars::after { background: var(--nav-ink); }
body.nav-open .sz-hd .nav-toggle .bars { background: transparent; }
.sz-hd .mode-toggle { color: var(--nav-ink); flex: none; }
.sz-hd .mode-toggle:hover { color: var(--nav-act); background: color-mix(in srgb, var(--nav-ink) 10%, transparent); }
.sz-hd .nav-search .search-field { background: var(--sb-bg); color: var(--nav-ink); border: 1px solid var(--nav-line); }
.sz-hd .nav-search .search-field::placeholder { color: color-mix(in srgb, var(--nav-ink) 55%, transparent); }
.sz-hd-t-accent .nav-search .search-submit { background: #111; }
.sz-hd .hd-logo { flex: none; min-width: 0; }
.sz-hd .hd-logo .custom-logo-link img { max-height: 60px; }
.sz-hd .ticker.hd-ticker { display: block; background: var(--hd-bg); border-bottom: 1px solid var(--nav-line); }
.sz-hd .hd-ticker .ticker-move a { color: var(--hd-ink); }

/* Tone extras */
.sz-hd-t-gradient .masthead { background: var(--hd-bg); }
.sz-hd-t-glass .navbar { -webkit-backdrop-filter: saturate(1.6) blur(14px); backdrop-filter: saturate(1.6) blur(14px); }
.sz-hd-t-glass .masthead { -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.sz-hd-t-rule .navbar { border-top: 3px solid #111 !important; border-bottom: 3px solid #111 !important; }
.sz-hd-t-rule .masthead { border-top: 5px solid var(--sz-red); }
.sz-hd-t-paper .navbar { border-top: 1px solid #1c1c1c !important; border-bottom: 3px double #1c1c1c !important; }
.sz-hd-t-paper .site-title { font-family: var(--f-head, Georgia, serif); }
.sz-hd-t-soft .site-nav .menu > li > a { border-radius: 999px; padding: 9px 15px; margin: 9px 2px; }
.sz-hd-t-soft .site-nav .menu > li.current-menu-item > a, .sz-hd-t-soft .site-nav .menu > li.current_page_item > a, .sz-hd-t-soft .site-nav .menu > li.current-cat > a { background: var(--sz-red); color: #fff; box-shadow: none; }
.sz-hd-t-soft .site-nav .menu > li > a:hover { background: #fff; }
.sz-hd-t-ink .masthead { border-bottom: 0; }
.sz-hd-t-night .site-title a::after, .sz-hd-t-dark .site-title a::after, .sz-hd-t-gradient .site-title a::after { color: var(--sz-red); }
.sz-hd-t-accent .site-title a::after { color: #111; }

/* ---------- Layouts ---------- */
/* stack */
.sz-hd-l-stack .hd-mast-in { text-align: center; }
.sz-hd-l-stack .hd-logo { display: flex; justify-content: center; }
.sz-hd-l-stack .site-title { font-size: clamp(2.4rem, 5vw, 4rem); }
.sz-hd-l-stack .site-nav .menu { justify-content: center; }

/* one-row layouts */
.sz-hd .hd-row .navbar-in { min-height: 74px; gap: 26px; }
.sz-hd .hd-row .site-title { font-size: clamp(1.5rem, 2.4vw, 2rem); }
.sz-hd .hd-row .site-nav .menu { justify-content: flex-end; }
.sz-hd .hd-row .hd-logo .custom-logo-link img { max-height: 46px; }

/* center: menu | logo | tools */
.sz-hd .hd-center .navbar-in { display: grid; grid-template-columns: 1fr auto 1fr; }
.sz-hd .hd-center .site-nav .menu { justify-content: flex-start; }
@media (min-width: 861px) { .sz-hd .hd-center .nav-search { display: none; } }
.sz-hd .hd-center .hd-logo { text-align: center; }
.sz-hd .hd-center .site-title { font-size: clamp(1.7rem, 2.8vw, 2.4rem); }

/* wide */
.sz-hd-l-wide .hd-mast-in { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.sz-hd-l-wide .hd-brand { display: flex; align-items: baseline; gap: 18px; flex-wrap: wrap; }
.sz-hd-l-wide .site-title { font-size: clamp(2rem, 3.6vw, 3rem); }
.sz-hd-l-wide .site-desc { margin: 0; padding-left: 18px; border-left: 1px solid color-mix(in srgb, var(--hd-ink) 20%, transparent); }

/* magazine */
.sz-hd-l-magazine .masthead { padding: 34px 0 26px; }
.sz-hd-l-magazine .hd-mast-in { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; }
.sz-hd-l-magazine .hd-brand { text-align: center; }
.sz-hd-l-magazine .hd-logo { display: flex; justify-content: center; }
.sz-hd-l-magazine .site-title { font-size: clamp(2.6rem, 6vw, 4.8rem); letter-spacing: -.045em; }
.sz-hd-l-magazine .site-desc { letter-spacing: .14em; text-transform: uppercase; font-size: .68rem; }
.sz-hd-l-magazine .hd-side-r { display: flex; justify-content: flex-end; }
.sz-hd-l-magazine .navbar { border-top: 1px solid var(--hd-ink) !important; border-bottom: 3px double var(--hd-ink) !important; }
.sz-hd-l-magazine .site-nav .menu { justify-content: center; }

/* minimal: menu lives in a drawer at every width */
.sz-hd .hd-min .navbar-in { display: grid; grid-template-columns: 1fr auto 1fr; min-height: 66px; }
.sz-hd .hd-min .nav-toggle { display: inline-flex; justify-self: start; }
.sz-hd .hd-min .site-title { font-size: clamp(1.6rem, 2.6vw, 2.2rem); }
.sz-hd .hd-min .hd-logo { text-align: center; }
.sz-hd .hd-min .site-nav { display: none; position: absolute; top: 100%; left: 0; width: min(360px, 100vw); max-height: calc(100vh - 80px); overflow: auto; flex-direction: column; align-items: stretch; padding: 10px 0 18px; background: var(--drop-bg); box-shadow: 0 24px 40px rgba(0,0,0,.18); }
body.nav-open .sz-hd .hd-min .site-nav { display: flex; }
.sz-hd .hd-min .site-nav .menu { display: block; flex: none; }
.sz-hd .hd-min .site-nav .menu > li > a { color: var(--drop-ink); padding: 13px 22px; box-shadow: none !important; border-bottom: 1px solid color-mix(in srgb, var(--drop-ink) 10%, transparent); }
.sz-hd .hd-min .site-nav .menu ul { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; padding-left: 14px; display: none; }
.sz-hd .hd-min .site-nav .menu li.open > ul, .sz-hd .hd-min .site-nav .menu li:hover > ul { display: block; }
.sz-hd .hd-min .nav-search { margin: 14px 22px 0; }
.sz-hd .hd-min .nav-search .search-field, .sz-hd .hd-min .nav-search .search-form { width: 100%; }
.sz-hd .hd-min .nav-search .search-field { color: var(--drop-ink); }

/* boxed: floating rounded bar */
.sz-hd .hd-boxwrap { display: contents; }
.sz-hd .navbar.hd-box { width: min(1210px, calc(100% - 32px)); margin: 16px auto 4px; border-radius: 16px; border: 1px solid var(--nav-line) !important; box-shadow: 0 12px 34px rgba(0,0,0,.08); top: 10px; }
.admin-bar .sz-hd .navbar.hd-box { top: 42px; }
.sz-hd .navbar.hd-box .navbar-in { padding-left: 22px; padding-right: 22px; }
.sz-hd-t-light .navbar.hd-box, .sz-hd-t-rule .navbar.hd-box { background: #fff; }

/* left stack */
.sz-hd-l-left .hd-mast-in { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.sz-hd-l-left .site-title { font-size: clamp(2.2rem, 4.4vw, 3.4rem); }
.sz-hd-l-left .site-desc { margin: 0; max-width: 360px; font-size: .86rem; }
.sz-hd-l-left .site-nav .menu > li:first-child > a { padding-left: 0; }

/* nav on top, big logo below */
.sz-hd-l-navtop .masthead { text-align: center; padding: 36px 0 30px; border-bottom: 1px solid var(--nav-line); }
.sz-hd-l-navtop .hd-logo { display: flex; justify-content: center; margin: 6px 0 2px; }
.sz-hd-l-navtop .site-title { font-size: clamp(2.6rem, 6.4vw, 5rem); letter-spacing: -.05em; }
.sz-hd-l-navtop .site-nav .menu { justify-content: flex-start; }

/* ticker band */
.sz-hd-l-ticker .hd-ticker .ticker-label { background: var(--sz-red); color: #fff; }

/* ---------- Mobile ---------- */
@media (max-width: 860px) {
  .sz-hd .site-nav { background: var(--drop-bg); }
  .sz-hd .site-nav .menu > li > a { color: var(--drop-ink); padding: 13px 20px; border-radius: 0; margin: 0; box-shadow: none !important; }
  .sz-hd .site-nav .menu ul a { color: var(--drop-ink); }
  .sz-hd .nav-search .search-field { color: var(--drop-ink); }
  .sz-hd .sub-toggle { background: color-mix(in srgb, var(--drop-ink) 8%, transparent); color: var(--drop-ink); }
  .sz-hd .hd-row .navbar-in { min-height: 62px; gap: 12px; }
  .sz-hd .hd-row .navbar-in .nav-toggle { order: 3; margin-left: auto; }
  .sz-hd .hd-row .navbar-in .mode-toggle { order: 2; margin-left: auto; }
  .sz-hd .hd-row .nav-toggle-label { display: none; }
  .sz-hd .hd-center .navbar-in { grid-template-columns: auto 1fr auto; }
  .sz-hd .hd-center .hd-logo { text-align: center; }
  .sz-hd .hd-center .hd-social { display: none; }
  .sz-hd-l-wide .hd-tools .hd-date, .sz-hd-l-wide .site-desc { display: none; }
  .sz-hd-l-magazine .hd-mast-in { grid-template-columns: 1fr; text-align: center; }
  .sz-hd-l-magazine .hd-side { display: none; }
  .sz-hd .navbar.hd-box { width: calc(100% - 20px); margin-top: 10px; border-radius: 12px; }
  .sz-hd .navbar.hd-box .navbar-in { padding-left: 14px; padding-right: 14px; }
  .sz-hd .navbar.hd-box .site-nav { border-radius: 0 0 12px 12px; }
  .sz-hd-l-left .site-desc { display: none; }
  .sz-hd .masthead { padding: 20px 0 16px; }
}
@media (max-width: 600px) {
  .sz-hd .hd-social { display: none; }
  .sz-hd .hd-row .site-title, .sz-hd .hd-min .site-title, .sz-hd .hd-center .site-title { font-size: 1.45rem; }
  .sz-hd-l-stack .site-title, .sz-hd-l-magazine .site-title, .sz-hd-l-navtop .site-title, .sz-hd-l-wide .site-title, .sz-hd-l-left .site-title { font-size: 2.2rem; }
}

/* ---------- Site dark mode: light header tones go dark ---------- */
.sz-dark .sz-hd-t-light, .sz-dark .sz-hd-t-ink, .sz-dark .sz-hd-t-paper, .sz-dark .sz-hd-t-rule, .sz-dark .sz-hd-t-glass, .sz-dark .sz-hd-t-soft {
  --hd-bg: var(--sz-paper, #0b0f15); --hd-ink: #e8edf4; --hd-mut: #8c97a8; --nav-bg: #0e141d; --nav-ink: #e8edf4; --nav-line: #232d3b;
  --top-bg: #070b11; --top-ink: #c8ccd2; --sb-bg: rgba(255,255,255,.07); --drop-bg: #121826; --drop-ink: #e8edf4;
}
.sz-dark .sz-hd-t-rule .navbar, .sz-dark .sz-hd-t-paper .navbar { border-color: #e8edf4 !important; }
.sz-dark .sz-hd .navbar.hd-box { background: var(--nav-bg); }

/* Logo / tools that sit inside the menu bar take the bar's colours */
.sz-hd .hd-bar .site-title a, .sz-hd .hd-bar .site-desc { color: var(--nav-ink); }
.sz-hd .hd-bar .hd-social a { color: var(--nav-ink); border-color: color-mix(in srgb, var(--nav-ink) 22%, transparent); }
.sz-hd .topbar .hd-date { color: var(--top-ink); opacity: .9; }
.sz-hd .hd-center .navbar-in { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
.sz-hd .hd-center .site-nav .menu { flex-wrap: nowrap; overflow: hidden; }
.sz-hd .hd-center .site-nav .menu > li > a { padding-left: 9px; padding-right: 9px; font-size: .7rem; white-space: nowrap; }
.sz-hd .hd-center .site-nav .menu > li:first-child > a { padding-left: 0; }
@media (max-width: 1100px) and (min-width: 861px) { .sz-hd .hd-center .site-nav .menu > li:nth-child(n+6) { display: none; } }
@media (max-width: 860px) { .sz-hd .hd-center .site-nav .menu { overflow: visible; } .sz-hd .hd-center .site-nav .menu > li { display: block !important; } .sz-hd .hd-center .site-nav .menu > li > a { padding: 13px 20px; font-size: .78rem; } }
.sz-hd-t-soft .hd-row .site-nav .menu > li > a { padding: 8px 11px; margin: 8px 1px; white-space: nowrap; }
.sz-hd-t-soft .hd-row .site-nav .menu { flex-wrap: nowrap; }
.sz-hd-t-soft.sz-hd-l-left .site-nav .menu > li:first-child > a { padding-left: 15px; }
