/*
Theme Name: Marten News
Theme URI: https://martennews.co.uk/
Author: Marten News
Description: Modern UK news theme for Marten News: bento hero, live strip, nations, video rail, most read, opinion, newsletter.
Version: 1.0.4
Requires at least: 6.3
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: marten
*/

:root{
  color-scheme:light;
  --bg:#FFFFFF; --surface:#F3F4F6; --ink:#0D0F14; --text:#2A2D34; --muted:#6B7080; --line:#E5E7EB;
  --brand:#FF5420; --brand-deep:#D93D0B; --brand-soft:#FFF0EA;
  --sans:"Archivo","Helvetica Neue",Arial,sans-serif;
  --serif:"Newsreader",Georgia,serif;
  --r:16px;
  box-sizing:border-box;
}
html{scroll-padding-top:90px}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom,0px)}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3{color:var(--ink);font-stretch:90%;letter-spacing:-.018em}
ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit;cursor:pointer}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:4px}
.wrap{max-width:1280px;margin:0 auto;padding:0 24px}
a:hover .hl{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.screen-reader-text:focus{background:#fff;clip:auto!important;clip-path:none;display:block;height:auto;left:8px;top:8px;padding:12px 18px;width:auto;z-index:100000;border-radius:8px;font-weight:700}

/* Images */
.img{display:block;position:relative;overflow:hidden;border-radius:var(--r);aspect-ratio:16/10;
  background:
    radial-gradient(120% 90% at 25% 20%,hsl(var(--h,200) 85% 72% / .9),transparent 55%),
    radial-gradient(90% 80% at 85% 85%,hsl(calc(var(--h,200) + 40) 70% 35%),transparent 60%),
    linear-gradient(140deg,hsl(var(--h,200) 55% 50%),hsl(calc(var(--h,200) + 25) 60% 22%));}
.img.has-img{background:var(--surface)}
.img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* Header */
.site-header{position:sticky;top:0;z-index:30;padding-top:env(safe-area-inset-top,0px);background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:0}}
.hdr{display:flex;align-items:center;gap:18px;height:68px}
.logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:24px;font-stretch:112%;letter-spacing:-.03em;color:var(--ink);white-space:nowrap}
.logo-mark{width:34px;height:34px;border-radius:10px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:20px;font-stretch:100%}
.custom-logo-link img{display:block;height:40px;width:auto}
.mainnav{flex:1;min-width:0}
.mainnav>ul,.mainnav>div>ul{display:flex;gap:2px}
.mainnav li{position:relative}
.mainnav .sub-toggle{display:none}
.mainnav .menu-item-has-children>a{display:flex;align-items:center;gap:6px}
.mainnav .menu-item-has-children>a::after{content:"";width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);opacity:.6}
.mainnav .menu-item-has-children::after{content:"";position:absolute;left:0;right:0;top:100%;height:12px}
.mainnav .sub-menu{display:none;position:absolute;left:0;top:calc(100% + 8px);min-width:220px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 36px rgba(13,15,20,.13);padding:8px;z-index:40}
.mainnav li:hover>.sub-menu,.mainnav li:focus-within>.sub-menu,.mainnav li.is-open>.sub-menu{display:block}
.mainnav .sub-menu a{border-radius:10px;padding:10px 12px;font-size:15px}
.mainnav .sub-menu a:hover{background:var(--surface)}
.mainnav .sub-menu .current-menu-item>a{background:var(--brand-soft);color:var(--brand-deep)}
.mainnav a{display:block;padding:8px 10px;border-radius:999px;font-weight:600;font-size:15px;white-space:nowrap;color:var(--text)}
.mainnav a:hover{background:var(--surface);color:var(--ink)}
.mainnav .current-menu-item>a,.mainnav .current-menu-ancestor>a,.mainnav .current-post-ancestor>a,.mainnav .current-category-ancestor>a{background:var(--ink);color:#fff}
.hdr-tools{display:flex;align-items:center;gap:8px;margin-left:auto}
.icon-btn{width:40px;height:40px;border-radius:50%;border:0;background:var(--surface);color:var(--ink);display:grid;place-items:center;flex:none}
.icon-btn:hover{background:var(--line)}
.icon-btn.is-done{background:var(--brand);color:#fff}
.btn{display:inline-block;border:0;border-radius:999px;padding:10px 18px;font-weight:700;font-size:14px;background:var(--brand);color:#fff;white-space:nowrap;text-align:center}
.btn:hover{background:var(--brand-deep);color:#fff}
/* Burger + mobile menu */
.burger{display:none}
.burger .i-close{display:none}
.burger[aria-expanded="true"]{background:var(--ink);color:#fff}
.burger[aria-expanded="true"] .i-open{display:none}
.burger[aria-expanded="true"] .i-close{display:block}
.mobile-menu{border-top:1px solid var(--line);max-height:calc(100vh - 60px - env(safe-area-inset-top,0px));max-height:calc(100dvh - 60px - env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior:contain}
.mobile-menu[hidden]{display:none}
.mobile-menu .wrap{padding-top:6px;padding-bottom:20px}
.mobile-menu li{border-bottom:1px solid var(--line)}
.mobile-menu a:not(.btn){display:flex;align-items:center;justify-content:space-between;padding:15px 2px;font-size:19px;font-weight:700;font-stretch:95%;color:var(--ink)}
.mobile-menu a:not(.btn)::after{content:"";width:8px;height:8px;border-top:2px solid var(--muted);border-right:2px solid var(--muted);transform:rotate(45deg);margin-right:4px}
.mobile-menu .current-menu-item>a,.mobile-menu .current-menu-ancestor>a,.mobile-menu .current-post-ancestor>a,.mobile-menu .current-category-ancestor>a{color:var(--brand-deep)}
.mobile-menu .menu-item-has-children{display:grid;grid-template-columns:1fr 52px;align-items:center}
.mobile-menu .menu-item-has-children>a::after{display:none}
.sub-toggle{width:44px;height:44px;justify-self:end;border:0;border-radius:50%;background:var(--surface);color:var(--ink);display:grid;place-items:center}
.sub-toggle svg{transition:transform .2s ease}
.is-open>.sub-toggle{background:var(--ink);color:#fff}
.is-open>.sub-toggle svg{transform:rotate(180deg)}
@media (prefers-reduced-motion:reduce){.sub-toggle svg{transition:none}}
.mobile-menu .sub-toggle{width:44px;height:44px;border-radius:0;background:none;color:#EF3E36;display:flex;align-items:center;justify-content:flex-end;padding:0 1px 0 0}
.mobile-menu .sub-toggle svg{width:18px;height:18px;stroke-width:3.2}
.mobile-menu .is-open>.sub-toggle{background:none;color:#EF3E36}
.mobile-menu .is-open>a{color:#EF3E36}
.mobile-menu .sub-menu{display:none;grid-column:1/-1;padding:0 0 10px 14px;border-left:3px solid #EF3E36;margin:0 0 14px 2px}
.mobile-menu .is-open>.sub-menu{display:block}
.mobile-menu .sub-menu li{border-bottom:0}
.mobile-menu .sub-menu a:not(.btn){padding:11px 2px;font-size:17px;font-weight:600}
.mobile-menu .sub-menu a:not(.btn)::after{display:none}
.mobile-menu .btn{display:block;width:100%;margin-top:18px;padding:14px 18px;font-size:16px}
body.menu-open{overflow:hidden}
.search-panel{border-top:1px solid var(--line);padding:14px 0}
.search-panel[hidden]{display:none}

/* Search form */
.search-form{display:flex;gap:10px;background:#fff;border-radius:999px;padding:6px;border:1.5px solid var(--line);max-width:640px}
.search-form:focus-within{border-color:var(--brand)}
.search-form input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:16px;padding:0 14px;color:var(--ink)}
.search-form input:focus{outline:none}

/* Live strip */
.live{background:var(--brand);color:#fff}
.live .wrap{display:flex;align-items:center;gap:14px;min-height:46px;font-size:15px}
.live-tag{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-stretch:110%;background:rgba(0,0,0,.18);padding:4px 12px 4px 10px;border-radius:999px;font-size:13px;flex:none}
.pulse{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.8);animation:pulse 1.6s infinite;flex:none}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@media (prefers-reduced-motion:reduce){.pulse{animation:none!important}}
.live a{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.live a:hover{text-decoration:underline}

/* Hero */
.hero{display:grid;grid-template-columns:1.9fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:16px;padding:24px 0 8px}
.ov{position:relative;display:block;border-radius:var(--r);overflow:hidden;min-height:250px;color:#fff}
.ov .img{position:absolute;inset:0;border-radius:0;aspect-ratio:auto;transition:transform .5s ease}
.ov:hover .img{transform:scale(1.03)}
@media (prefers-reduced-motion:reduce){.ov .img{transition:none}}
.ov::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,10,14,.86) 0%,rgba(8,10,14,.35) 45%,transparent 70%)}
.ov-body{position:absolute;left:0;right:0;bottom:0;padding:22px;z-index:2}
.ov h2,.ov h3{color:#fff}
.ov .meta{color:rgba(255,255,255,.78)}
.hero .lead{grid-row:1/3;min-height:540px}
.lead h2{font-size:clamp(30px,3.4vw,48px);line-height:1.04;font-weight:800;margin:12px 0 10px;max-width:16em}
.lead p{font-size:17px;color:rgba(255,255,255,.88);max-width:36em}
.ov h3{font-size:21px;line-height:1.15;font-weight:700;margin-top:10px}
.tag{display:inline-block;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--c,var(--brand));color:#fff;letter-spacing:.01em}
.meta{font-size:13px;color:var(--muted);margin-top:10px;display:flex;flex-wrap:wrap;gap:4px 14px}
.latest{grid-row:1/3;grid-column:3;background:var(--surface);border-radius:var(--r);padding:20px 20px 12px;display:flex;flex-direction:column}
.latest h2{font-size:20px;font-weight:800;display:flex;align-items:center;gap:10px;margin-bottom:14px}
.latest h2 .pulse{background:var(--brand);animation-name:pulse2}
@keyframes pulse2{0%{box-shadow:0 0 0 0 rgba(255,84,32,.6)}70%{box-shadow:0 0 0 8px rgba(255,84,32,0)}100%{box-shadow:0 0 0 0 rgba(255,84,32,0)}}
.timeline li{position:relative;padding:0 0 16px 20px;border-left:2px solid var(--line);margin-left:4px}
.timeline li::before{content:"";position:absolute;left:-6px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--bg);border:2px solid var(--brand)}
.timeline time{display:block;font-size:13px;font-weight:700;color:var(--brand-deep)}
.timeline a{display:block;font-weight:600;color:var(--ink);line-height:1.3;margin-top:2px}
.timeline a:hover{text-decoration:underline}
.latest .more-link{margin-top:auto;padding-top:8px;font-weight:700;font-size:14px;color:var(--brand-deep)}

/* Chips */
.chips{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:18px 0 6px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chips b{font-weight:800;font-size:14px;margin-right:6px;white-space:nowrap}
.chip{display:inline-block;white-space:nowrap;border:1.5px solid var(--line);border-radius:999px;padding:7px 14px;font-weight:600;font-size:14px;color:var(--ink)}
.chip:hover{border-color:var(--ink)}

/* Sections */
.section{padding:44px 0 8px}
.sec-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:20px}
.sec-head h2{font-size:clamp(26px,2.8vw,36px);font-weight:900;font-stretch:95%;line-height:1;display:flex;align-items:center;gap:12px}
.sec-head h2::before{content:"";width:12px;height:28px;border-radius:4px;background:var(--c,var(--brand));flex:none}
.sec-head a{font-weight:700;font-size:14px;color:var(--ink);border-bottom:2px solid var(--c,var(--brand));padding-bottom:2px;white-space:nowrap}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 24px}
.card .img{margin-bottom:14px}
.card h3{font-size:21px;line-height:1.15;font-weight:700;margin-top:10px}
.card p{font-size:15.5px;color:var(--muted);margin-top:8px}

/* Rail */
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}
.rail .ov{aspect-ratio:4/5;min-height:0;scroll-snap-align:start}
.play{position:absolute;top:16px;left:16px;z-index:2;display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.95);color:var(--ink);font-weight:700;font-size:13px;padding:6px 12px 6px 8px;border-radius:999px}
.play svg{width:18px;height:18px}

/* Business + most read */
.split{display:grid;grid-template-columns:1.7fr 1fr;gap:40px}
.biz-top{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin-bottom:24px}
.biz-top h3{font-size:28px;line-height:1.08;font-weight:800;margin-top:10px}
.biz-top p{color:var(--muted);margin-top:10px;font-size:16px}
.hl-list li{border-top:1px solid var(--line)}
.hl-list a{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;padding:14px 0}
.hl-list .img{aspect-ratio:4/3;border-radius:12px}
.hl-list h3{font-size:18px;line-height:1.2;font-weight:700}
.ranked{background:var(--surface);border-radius:var(--r);padding:22px}
.ranked h2{font-size:22px;font-weight:900;margin-bottom:8px}
.ranked ol{counter-reset:r}
.ranked li{counter-increment:r;border-top:1px solid var(--line)}
.ranked li:first-child{border-top:0}
.ranked a{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;padding:12px 0;font-weight:700;color:var(--ink);line-height:1.25}
.ranked a:hover span{text-decoration:underline}
.ranked a::before{content:counter(r);font-size:44px;font-weight:900;font-stretch:80%;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--brand)}

/* Opinion */
.op-card{display:flex;flex-direction:column;gap:18px;background:#F4EFFB;border-radius:var(--r);padding:26px;min-height:240px}
.op-card .q{font-size:56px;line-height:.6;font-weight:900;color:var(--c,#7444C4);height:24px}
.op-card h3{font-family:var(--serif);font-style:italic;font-weight:500;font-size:24px;line-height:1.2;letter-spacing:-.01em;font-stretch:100%}
.author{display:flex;align-items:center;gap:12px;margin-top:auto}
.av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;background:hsl(var(--h,260) 55% 45%);flex:none;overflow:hidden}
.av img{width:100%;height:100%;object-fit:cover}
.author b{display:block;color:var(--ink);font-size:15px}
.author span{font-size:13px;color:var(--muted)}

/* Newsletter */
.nl{margin:52px 0 8px;background:var(--brand-soft);border-radius:24px;padding:36px;display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center}
.nl h2{font-size:clamp(24px,2.6vw,34px);font-weight:900;line-height:1.05}
.nl p{color:var(--text);margin-top:8px;font-size:17px}
.nl form{display:flex;gap:10px;background:#fff;border-radius:999px;padding:6px;border:1.5px solid #FFD7C7}
.nl input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:16px;padding:0 14px;color:var(--ink)}
.nl input:focus{outline:none}
.nl form:focus-within{border-color:var(--brand)}
.nl-mini{background:var(--brand-soft);border-radius:var(--r);padding:22px}
.nl-mini h3{font-size:20px;font-weight:900;line-height:1.1}
.nl-mini p{font-size:15px;margin:8px 0 14px}
.nl-mini .btn{width:100%}

/* Article */
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--muted);padding:24px 0 0}
.crumbs a{font-weight:600;color:var(--ink)}
.crumbs a:hover{text-decoration:underline}
.art-head{max-width:900px;padding:18px 0 0}
.art-head h1{font-size:clamp(34px,5vw,62px);line-height:1.02;font-weight:900;font-stretch:88%;margin:16px 0 18px}
.art-head .standfirst{font-size:clamp(18px,1.8vw,22px);line-height:1.45;color:var(--text);max-width:40em}
.byline{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:26px 0 24px;max-width:900px}
.byline .author{margin-top:0}
.byline .author a:hover b{text-decoration:underline}
.share{display:flex;gap:8px}
.art-hero{margin:0}
.art-hero .img{aspect-ratio:21/9;border-radius:20px}
.art-hero figcaption{font-size:13.5px;color:var(--muted);margin-top:10px}
.art-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:64px;padding:32px 0 20px}
.keypoints{background:var(--surface);border-radius:var(--r);padding:22px 24px;margin-bottom:30px;max-width:680px}
.keypoints h2{font-size:18px;font-weight:800;margin-bottom:10px}
.keypoints li{position:relative;padding-left:28px;margin:8px 0;font-size:16.5px;color:var(--ink)}
.keypoints li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:50%;background:var(--brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5'%3E%3Cpath d='M5 12l5 5L19 8'/%3E%3C/svg%3E") center/11px no-repeat}

/* Post content */
.body{max-width:680px}
.body p,.body li{font-family:var(--serif);font-size:20px;line-height:1.68;color:#23262C}
.body p{margin:0 0 1.15em}
.body ul,.body ol{margin:0 0 1.15em;padding-left:1.3em}
.body ul{list-style:disc}
.body ol{list-style:decimal}
.body li{margin:.3em 0}
.body li::marker{color:var(--brand)}
.body a{color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.body h2{font-size:28px;font-weight:800;margin:1.5em 0 .5em;line-height:1.15}
.body h3{font-size:22px;font-weight:800;margin:1.4em 0 .5em;line-height:1.2}
.body h4{font-size:18px;font-weight:800;margin:1.3em 0 .4em;color:var(--ink)}
.body blockquote,.pull{margin:1.6em 0;padding:4px 0 4px 26px;border-left:4px solid var(--brand)}
.body blockquote p,.pull p{font-family:var(--sans);font-size:28px;line-height:1.2;font-weight:800;font-stretch:90%;color:var(--ink);letter-spacing:-.015em;margin:0 0 .4em}
.body blockquote cite,.pull cite{display:block;font-style:normal;font-family:var(--sans);font-size:14px;color:var(--muted)}
.body figure{margin:1.8em 0}
.body img{border-radius:12px}
.body figcaption,.body .wp-caption-text,.body .wp-element-caption{font-family:var(--sans);font-size:13.5px;color:var(--muted);margin-top:8px}
.body .wp-block-table,.body .table-wrap{overflow-x:auto;margin:1.6em 0}
.body table{border-collapse:collapse;width:100%;font-size:16px}
.body th,.body td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left}
.body th{font-weight:800;color:var(--ink);border-bottom:2px solid var(--ink)}
.body iframe,.body video{max-width:100%}
.body .wp-block-embed__wrapper{position:relative}
.body hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.alignleft{float:left;margin:.3em 1.4em 1em 0;max-width:50%}
.alignright{float:right;margin:.3em 0 1em 1.4em;max-width:50%}
.aligncenter{margin-left:auto;margin-right:auto}
.factbox{border:2px solid var(--ink);border-radius:var(--r);padding:20px 24px;margin:1.8em 0}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.side-sticky{position:sticky;top:96px;display:grid;gap:24px}
.widget{background:var(--surface);border-radius:var(--r);padding:22px}
.widget-title{font-size:20px;font-weight:900;margin-bottom:10px}

/* Archive, search, 404 */
.arch-head{padding:36px 0 26px}
.arch-head h1{font-size:clamp(34px,5vw,60px);line-height:1;font-weight:900;font-stretch:88%;display:flex;align-items:center;gap:14px}
.arch-head h1::before{content:"";width:14px;height:.8em;border-radius:5px;background:var(--c,var(--brand));flex:none}
.arch-head .desc{margin-top:12px;font-size:18px;color:var(--muted);max-width:44em}
.arch-head .desc p{margin:0}
.arch-lead{min-height:460px;margin-bottom:36px}
.arch-lead h2{font-size:clamp(28px,3.2vw,44px);line-height:1.05;font-weight:800;margin:12px 0 10px;max-width:18em}
.arch-lead p{font-size:17px;color:rgba(255,255,255,.88);max-width:40em}
.pagination{margin:44px 0 0}
.pagination .nav-links{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}
.page-numbers{min-width:44px;height:44px;border-radius:999px;display:grid;place-items:center;padding:0 16px;background:var(--surface);font-weight:700;color:var(--ink)}
.page-numbers:hover{background:var(--line)}
.page-numbers.current{background:var(--ink);color:#fff}
.page-numbers.dots{background:none}
.empty{padding:20px 0 10px;max-width:640px}
.empty p{font-size:18px;color:var(--muted);margin:10px 0 20px}
.nf{padding:56px 0 10px;max-width:760px}
.nf .big{display:block;font-size:clamp(90px,16vw,200px);font-weight:900;font-stretch:78%;color:var(--brand);line-height:.85;letter-spacing:-.04em}
.nf h1{font-size:clamp(28px,3.5vw,42px);font-weight:900;margin:18px 0 10px}
.nf p{font-size:18px;color:var(--muted);margin-bottom:22px}

/* Comments */
.comments{max-width:680px;margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}
.comments h2{font-size:26px;font-weight:900;margin-bottom:18px}
.comment-list .comment{padding:16px 0;border-top:1px solid var(--line)}
.comment-list .children{padding-left:24px}
.comment-meta{font-size:13px;color:var(--muted);display:flex;gap:10px;align-items:center}
.comment-author .fn{font-weight:800;color:var(--ink);font-style:normal}
.comment-author img{border-radius:50%}
.comment-content p{font-family:var(--serif);font-size:18px;line-height:1.6;margin:8px 0}
.reply a{font-size:13px;font-weight:700;color:var(--brand-deep)}
.comment-form p{margin:0 0 14px}
.comment-form label{display:block;font-weight:700;font-size:14px;margin-bottom:6px;color:var(--ink)}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit;font-size:16px}
.comment-form input:focus,.comment-form textarea:focus{outline:none;border-color:var(--brand)}
.comment-form .submit{border:0;border-radius:999px;padding:12px 22px;font-weight:700;background:var(--brand);color:#fff}

/* Footer */
.footer{margin-top:56px;background:var(--surface);padding:44px 0 36px}
.f-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:32px}
.footer h4{font-size:14px;font-weight:800;color:var(--ink);margin:0 0 12px}
.footer li{margin:7px 0}
.footer li a{color:var(--muted);font-weight:500}
.footer li a:hover{color:var(--ink)}
.footer .about{color:var(--muted);margin-top:14px;max-width:26em}
.footer .small{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}

/* Responsive */
@media (max-width:1120px){
  .hero{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .hero .lead{grid-column:1/-1;grid-row:auto;min-height:460px}
  .latest{grid-column:1/-1;grid-row:auto}
  .grid4{grid-template-columns:repeat(2,1fr)}
  .split{grid-template-columns:1fr}
  .art-grid{grid-template-columns:minmax(0,1fr) 280px;gap:40px}
}
@media (max-width:860px){
  .hdr{gap:14px}
  .mainnav{display:none}
  .burger{display:grid}
  .hdr .btn{display:none}
  .nl{grid-template-columns:1fr;padding:26px}
  .grid3{grid-template-columns:1fr}
  .biz-top{grid-template-columns:1fr}
  .art-grid{grid-template-columns:1fr}
  .side-sticky{position:static}
  .f-grid{grid-template-columns:1fr 1fr}
  .art-hero .img{aspect-ratio:16/10}
}
@media (max-width:560px){
  .wrap{padding:0 16px}
  .hdr{height:60px}
  .hdr .btn{display:none}
  .logo{font-size:21px}
  .hero{grid-template-columns:1fr;gap:12px;padding-top:16px}
  .hero .lead{min-height:420px}
  .ov{min-height:220px}
  .grid4{grid-template-columns:1fr}
  .hl-list a{grid-template-columns:96px 1fr}
  .body p,.body li{font-size:18.5px}
  .body blockquote p,.pull p{font-size:23px}
  .arch-lead{min-height:380px}
  .alignleft,.alignright{float:none;max-width:100%;margin:1em 0}
}
