/* TWV Media header and footer for WordPress.
   Every rule is isolated so Newspaper content and templates remain untouched. */

#twv-site-header,
#twv-site-footer {
  --twv-ink:#14161A;
  --twv-red:#D11A2A;
  --twv-red-dark:#A5121F;
  --twv-paper:#F6F4F1;
  --twv-grey:#6E6E73;
  --twv-line:#E3E0DA;
  --twv-sans:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;
  --twv-wrap:1180px;
  color:var(--twv-ink);
  font-family:var(--twv-sans);
  font-size:16px;
  line-height:1.6;
  text-align:left;
}

#twv-site-header *,
#twv-site-footer * {box-sizing:border-box}

#twv-site-header {position:sticky;top:0;z-index:9998;width:100%}
body.admin-bar #twv-site-header {top:32px}

#twv-site-header .wrap,
#twv-site-footer .wrap {width:100%;max-width:var(--twv-wrap);margin:0 auto;padding:0 28px}

#twv-site-header .skip {position:absolute;left:-9999px;top:0;background:var(--twv-ink);color:#fff;padding:12px 18px;z-index:10000;text-decoration:none}
#twv-site-header .skip:focus {left:12px;top:12px}
#twv-site-header :focus-visible,
#twv-site-footer :focus-visible {outline:2px solid var(--twv-red);outline-offset:3px}

#twv-site-header .site-head {position:relative;width:100%;margin:0;background:rgba(246,244,241,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--twv-line)}
#twv-site-header .head-in {display:flex;align-items:center;justify-content:space-between;gap:24px;height:74px}
#twv-site-header .mark {display:flex;align-items:center;gap:13px;color:var(--twv-ink);text-decoration:none;flex:none}
#twv-site-header .mark .m-box {overflow:hidden}
#twv-site-header .mark .m-rule {width:2px;height:24px;background:var(--twv-red);flex:none;transform-origin:center;transform:scaleY(0);animation:twvRuleIn .26s ease-out forwards}
#twv-site-header .mark .m-twv {display:block;color:var(--twv-ink);font-size:25.6px;font-weight:700;letter-spacing:-.035em;line-height:1;transform:translateX(102%);animation:twvFanLeft .48s cubic-bezier(.22,1,.36,1) .15s forwards}
#twv-site-header .mark .m-media {display:block;color:var(--twv-ink);font-size:17px;font-weight:400;letter-spacing:.05em;line-height:1;transform:translateX(-102%);animation:twvFanRight .48s cubic-bezier(.22,1,.36,1) .15s forwards}
@keyframes twvRuleIn {from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes twvFanLeft {from{transform:translateX(102%);letter-spacing:-.06em}to{transform:translateX(0);letter-spacing:-.035em}}
@keyframes twvFanRight {from{transform:translateX(-102%);letter-spacing:.02em}to{transform:translateX(0);letter-spacing:.22em}}

#twv-site-header .nav {display:flex;align-items:center;gap:28px;margin:0;padding:0}
#twv-site-header .nav a {display:inline;color:#3A3C41;font-size:15px;font-weight:500;line-height:1.6;text-decoration:none;transition:color .15s}
#twv-site-header .nav a:hover,
#twv-site-header .nav a[aria-current] {color:var(--twv-red)}
#twv-site-header .nav .nav-mob {display:none}
#twv-site-header .head-cta {display:flex;align-items:center;gap:14px}

#twv-site-header .btn {display:inline-flex;align-items:center;justify-content:center;gap:9px;margin:0;padding:15px 26px;border:1.5px solid transparent;border-radius:4px;font-family:var(--twv-sans);font-size:15px;font-weight:600;letter-spacing:-.01em;line-height:1.5;text-decoration:none;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}
#twv-site-header .btn-primary {background:var(--twv-red);color:#fff}
#twv-site-header .btn-primary:hover {background:var(--twv-red-dark);color:#fff}
#twv-site-header .btn-ghost {border-color:var(--twv-ink);background:transparent;color:var(--twv-ink)}
#twv-site-header .btn-ghost:hover {background:var(--twv-ink);color:var(--twv-paper)}
#twv-site-header .btn-sm {padding:11px 20px;font-size:13.8px}

#twv-site-header .burger {display:none;width:44px;height:40px;align-items:center;justify-content:center;margin:0;padding:0;border:1.5px solid var(--twv-line);border-radius:4px;background:none;cursor:pointer}
#twv-site-header .burger span {display:block;width:18px;height:1.5px;background:var(--twv-ink);position:relative}
#twv-site-header .burger span::before,
#twv-site-header .burger span::after {content:"";position:absolute;left:0;width:18px;height:1.5px;background:var(--twv-ink)}
#twv-site-header .burger span::before {top:-6px}
#twv-site-header .burger span::after {top:6px}

#twv-site-footer {position:relative;z-index:2;width:100%;background:#0E1013;color:#9A9BA0}
#twv-site-footer .site-foot {width:100%;margin:0;padding:64px 0 34px;background:#0E1013;color:#9A9BA0;font-family:var(--twv-sans);font-size:14.9px;line-height:1.6}
#twv-site-footer .site-foot p {margin:0 0 17px;color:#9A9BA0;font-size:14.9px;line-height:1.6}
#twv-site-footer .foot-grid {display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.13)}
#twv-site-footer .site-foot h4 {margin:0 0 16px;color:var(--twv-paper);font-family:var(--twv-sans);font-size:12.5px;font-weight:600;letter-spacing:.16em;line-height:1.25;text-transform:uppercase}
#twv-site-footer .site-foot ul {list-style:none;margin:0;padding:0}
#twv-site-footer .site-foot li {margin:0 0 10px;padding:0;border:0;color:#9A9BA0;font-size:14.9px;line-height:1.6}
#twv-site-footer .site-foot a {color:#9A9BA0;text-decoration:none;transition:color .15s}
#twv-site-footer .site-foot a:hover {color:var(--twv-red)}
#twv-site-footer .site-foot a[aria-current] {color:var(--twv-paper)}
#twv-site-footer .foot-mark {display:flex;align-items:center;gap:13px;margin-bottom:18px}
#twv-site-footer .foot-mark .r {width:2px;height:22px;background:var(--twv-red)}
#twv-site-footer .foot-mark .a {color:var(--twv-paper);font-size:23px;font-weight:700;letter-spacing:-.035em;line-height:1}
#twv-site-footer .foot-mark .b {color:var(--twv-paper);font-size:16px;font-weight:400;letter-spacing:.22em;line-height:1}
#twv-site-footer .foot-bottom {display:flex;flex-wrap:wrap;gap:14px 30px;justify-content:space-between;padding-top:26px;color:#9A9BA0;font-size:13.6px}

@media (max-width:1140px) {
  #twv-site-header .head-cta-2 {display:none}
}
@media (max-width:960px) {
  #twv-site-header .nav {display:none}
  #twv-site-header .nav.open {display:flex;position:absolute;left:0;right:0;top:74px;flex-direction:column;align-items:flex-start;gap:0;background:var(--twv-paper);border-bottom:1px solid var(--twv-line);padding:8px 28px 20px;box-shadow:0 12px 30px rgba(20,22,26,.08)}
  #twv-site-header .nav.open .nav-mob {display:block}
  #twv-site-header .nav.open a {width:100%;padding:14px 0;border-bottom:1px solid var(--twv-line)}
  #twv-site-header .burger {display:inline-flex}
  #twv-site-header .head-cta .btn {padding:10px 15px;font-size:13.4px}
  #twv-site-footer .foot-grid {grid-template-columns:1fr 1fr}
}
@media (max-width:782px) {
  body.admin-bar #twv-site-header {top:46px}
}
@media (max-width:600px) {
  body.admin-bar #twv-site-header {top:0}
}
@media (max-width:560px) {
  #twv-site-header .wrap,
  #twv-site-footer .wrap {padding-left:20px;padding-right:20px}
  #twv-site-header .mark {gap:10px}
  #twv-site-header .mark .m-twv {font-size:21.8px}
  #twv-site-header .mark .m-media {font-size:14.7px}
  #twv-site-header .head-cta {gap:10px}
  #twv-site-header .head-cta .btn {padding:9px 12px;font-size:12.5px;white-space:nowrap}
  #twv-site-footer .foot-grid {grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce) {
  #twv-site-header .mark .m-rule {transform:scaleY(1)}
  #twv-site-header .mark .m-twv,
  #twv-site-header .mark .m-media {transform:none}
  #twv-site-header *,
  #twv-site-footer * {animation-duration:.001ms!important;animation-delay:0ms!important;transition-duration:.001ms!important}
}

