/* AIOdense: bold colour, generous images, full-width editorial layout. */
:root {
    --red:#ff0000; --yellow:#ffff00; --green:#00ff00;
    --bg:#fff; --surface:#fff; --soft:#f2f3f1; --ink:#101310; --muted:#515851;
    --line:#161a16; --link:#b60000; --on-red:#101310;
    --site-width:1820px; --gutter:clamp(18px,3.4vw,64px); --gap:clamp(16px,1.8vw,28px);
    --logo-height:56px; --wp--style--global--content-size:var(--site-width);
    --wp--style--global--wide-size:100%;
}
:root[data-theme="dark"] {
    --bg:#111512; --surface:#191f1a; --soft:#252e26; --ink:#f6faf4; --muted:#bbc5ba;
    --line:#a1b19f; --link:#ff7979;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:120px; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:Arial,Helvetica,sans-serif; font-size:18px; line-height:1.65; overflow-wrap:break-word; }
body, button, input, select, textarea { -webkit-font-smoothing:antialiased; }
a { color:var(--link); text-underline-offset:.2em; text-decoration-thickness:.075em; }
a:hover { text-decoration-thickness:.14em; }
button, input, select, textarea { font:inherit; }
button, input[type="submit"], .button { cursor:pointer; }
button { color:inherit; }
button, input, textarea, select { border-radius:0; }
img { max-width:100%; height:auto; vertical-align:middle; }
svg { width:24px; height:24px; vertical-align:middle; flex-shrink:0; }
figure { margin:0; }
h1,h2,h3,h4,h5,h6 { font-family:Arial,Helvetica,sans-serif; font-weight:800; line-height:1.13; margin:0 0 .6em; text-wrap:balance; overflow-wrap:anywhere; }
h1 { font-size:clamp(2.2rem,4.5vw,5.2rem); letter-spacing:-.045em; }
h2 { font-size:clamp(1.7rem,2.8vw,3.2rem); letter-spacing:-.035em; }
h3 { font-size:clamp(1.4rem,2vw,2.1rem); letter-spacing:-.02em; }
p { margin:0 0 1.2em; }
::selection { color:#101310; background:var(--yellow); }
:focus-visible { outline:3px solid var(--ink); outline-offset:5px; box-shadow:0 0 0 3px var(--bg); }
[hidden] { display:none !important; }
.screen-reader-text { border:0; clip-path:inset(50%); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; width:1px; white-space:nowrap; }
.skip-link:focus { clip-path:none; width:auto; height:auto; top:12px; left:12px; padding:12px 20px; z-index:100000; background:var(--yellow); color:#101310; }
.site-container { width:calc(100% - var(--gutter) * 2); max-width:var(--site-width); margin-inline:auto; }
.site-main { min-height:45vh; }
.site-main:focus { outline:0; }

/* Identity, navigation and search stay together in the same menu area. */
.site-header { position:sticky; top:0; z-index:100; background:var(--surface); border-bottom:2px solid var(--ink); }
.site-header::before { display:block; content:""; height:7px; background:linear-gradient(90deg,var(--red) 0 33.333%,var(--yellow) 33.333% 66.666%,var(--green) 66.666% 100%); }
.header-inner { display:flex; align-items:center; gap:clamp(14px,2vw,32px); min-height:98px; padding-block:14px; }
.site-brand { display:flex; align-items:center; gap:14px; flex-shrink:0; max-width:36%; }
.site-name { color:var(--ink); font-size:clamp(1.35rem,1.65vw,2rem); font-weight:900; line-height:1.05; letter-spacing:-.05em; text-decoration:none; overflow-wrap:anywhere; }
.site-name:hover { text-decoration:underline; }
.custom-logo-link { display:flex; flex-shrink:1; }
.custom-logo { height:var(--logo-height); width:auto; max-width:min(240px,20vw); object-fit:contain; }
.navigation-panel { display:flex; align-items:center; justify-content:flex-end; gap:clamp(16px,2vw,32px); flex:1; min-width:0; }
.main-navigation { min-width:0; }
.primary-menu,.primary-menu ul,.footer-menu { list-style:none; padding:0; margin:0; }
.primary-menu { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:3px 18px; }
.primary-menu li { position:relative; }
.primary-menu > li { display:flex; align-items:center; flex-wrap:wrap; }
.primary-menu a { display:block; color:var(--ink); font-size:.9rem; font-weight:700; text-decoration:none; padding:10px 1px; }
.primary-menu a:hover,.primary-menu .current-menu-item > a,.primary-menu .current_page_item > a { text-decoration:underline; text-decoration-color:var(--red); text-decoration-thickness:3px; text-underline-offset:7px; }
.primary-menu ul { position:absolute; top:100%; left:0; width:250px; max-width:calc(100vw - 40px); background:var(--surface); border:2px solid var(--ink); padding:9px; box-shadow:6px 6px 0 var(--green); z-index:10; display:none; }
.primary-menu > li:last-child > ul { left:auto; right:0; }
.primary-menu ul li { display:flex; align-items:center; flex-wrap:wrap; }
.primary-menu ul a { flex:1; min-width:0; padding:10px; }
.primary-menu ul a:hover { color:var(--ink); background:var(--soft); }
.primary-menu ul ul { position:static; width:100%; border:0; border-left:3px solid var(--green); padding:0 0 0 10px; box-shadow:none; margin:0 0 5px 10px; }
html:not(.js) .primary-menu li:hover > ul,html:not(.js) .primary-menu li:focus-within > ul,.primary-menu li.is-open > ul { display:block; }
.submenu-toggle { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:30px; height:36px; padding:0; border:0; background:transparent; font-size:20px; }
.submenu-toggle span { display:block; transition:transform .15s; }
.submenu-toggle[aria-expanded="true"] span { transform:rotate(180deg); }
.header-search { flex:0 1 208px; min-width:150px; }
.search-form { display:flex; width:100%; border:2px solid var(--ink); background:var(--bg); color:var(--ink); }
.search-field { width:100%; min-width:0; padding:10px 12px; font-size:16px; color:inherit; background:transparent; border:0; }
.search-field::placeholder { color:var(--muted); opacity:1; }
.search-submit { flex:0 0 44px; min-height:44px; border:0; border-left:2px solid var(--ink); background:var(--yellow); color:#101310; display:flex; align-items:center; justify-content:center; }
.search-submit:hover { background:var(--green); }
.colour-toggle { display:flex; align-items:center; justify-content:center; gap:6px; border:2px solid var(--ink); background:var(--ink); color:var(--bg); padding:9px 11px; min-height:46px; flex-shrink:0; font-size:.85rem; font-weight:700; }
.colour-toggle:hover { background:var(--yellow); color:#101310; }
.colour-toggle svg { width:20px; height:20px; }
.icon-sun { display:none; }
[data-theme="dark"] .icon-sun { display:inline; }
[data-theme="dark"] .icon-moon { display:none; }
.menu-toggle { display:none; }
.admin-bar .site-header { top:32px; }

/* Editable front-page field. */
.front-main { padding-top:clamp(24px,3vw,46px); }
.front-intro { margin-bottom:clamp(40px,5vw,80px); }
.intro-default { display:grid; grid-template-columns:minmax(0,1fr) clamp(100px,15vw,230px); border:2px solid var(--ink); background:var(--red); color:var(--on-red); box-shadow:9px 9px 0 var(--ink); }
.intro-default__inner { padding:clamp(26px,4.2vw,70px); }
.eyebrow { text-transform:uppercase; font-size:.8rem; letter-spacing:.13em; font-weight:800; margin:0 0 16px; }
.intro-default h2 { max-width:1050px; color:#fff; font-size:clamp(2.5rem,5.2vw,6.4rem); line-height:.99; letter-spacing:-.06em; margin:0 0 25px; }
.intro-copy { max-width:850px; font-size:clamp(1rem,1.3vw,1.3rem); line-height:1.55; margin:0; }
.intro-colour-band { display:grid; grid-template-rows:repeat(3,1fr); border-left:2px solid #101310; color:#101310; font-size:clamp(2rem,5vw,5.7rem); line-height:1; font-weight:900; }
.intro-colour-band span { display:flex; align-items:center; justify-content:center; background:var(--yellow); }
.intro-colour-band span + span { border-top:2px solid #101310; }
.intro-colour-band span:nth-child(2) { background:var(--green); }
.intro-colour-band span:nth-child(3) { background:#fff; }
.front-intro--custom { padding-block:0; }
.edit-intro { padding-top:15px; font-size:.85rem; }
.posts-section { margin-bottom:75px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin:0 0 28px; padding-bottom:23px; border-bottom:3px solid var(--ink); }
.section-heading .eyebrow { color:var(--muted); margin:0 0 7px; }
.section-heading h1,.section-heading h2 { margin:0; }
.page-label { white-space:nowrap; font-size:.9rem; font-weight:700; background:var(--yellow); color:#101310; padding:5px 12px; }

/* Flex growth closes incomplete rows while keeping chronological DOM order. */
.post-grid { display:flex; flex-wrap:wrap; gap:var(--gap); }
.post-card { position:relative; flex:1 1 calc((100% - 2 * var(--gap)) / 3); min-width:0; border:2px solid var(--ink); background:#101310; --card-accent:var(--red); }
.post-card:nth-child(3n+2) { --card-accent:var(--yellow); }
.post-card:nth-child(3n+3) { --card-accent:var(--green); }
.post-card:nth-child(9n+1) { flex-basis:calc((100% - var(--gap)) * .64); }
.post-card:nth-child(9n+2) { flex-basis:calc((100% - var(--gap)) * .36); }
.post-card:nth-child(9n+6),.post-card:nth-child(9n+9) { flex-basis:calc((100% - var(--gap)) * .43); }
.post-card:nth-child(9n+7),.post-card:nth-child(9n+8) { flex-basis:calc((100% - var(--gap)) * .57); }
.post-card__link { position:relative; isolation:isolate; display:flex; flex-direction:column; justify-content:space-between; width:100%; height:100%; min-height:clamp(320px,29vw,450px); color:#fff; text-decoration:none; padding:clamp(20px,2.2vw,36px); border-bottom:8px solid var(--card-accent); overflow:hidden; }
.post-card:nth-child(9n+1) .post-card__link,.post-card:nth-child(9n+2) .post-card__link { min-height:clamp(400px,33vw,580px); }
.post-card__media { position:absolute; inset:0; z-index:-2; overflow:hidden; }
.post-card__image { width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .35s ease; }
.post-card__link::after { position:absolute; inset:0; z-index:-1; content:""; background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.13) 20%,rgba(0,0,0,.72) 57%,rgba(0,0,0,.97)); }
.post-card__link:hover .post-card__image { transform:scale(1.035); }
.post-card__link:hover h2 { text-decoration:underline; text-underline-offset:.13em; text-decoration-thickness:2px; }
.post-card__link:focus-visible { outline:4px solid var(--yellow); outline-offset:-8px; box-shadow:none; }
.category-pill { align-self:flex-start; padding:4px 12px; background:var(--card-accent); color:#101310; font-size:.8rem; font-weight:800; border:1px solid #101310; line-height:1.6; margin-bottom:60px; }
.post-card:nth-child(3n+1) .category-pill { color:#101310; }
.post-card__content { max-width:100%; }
.post-date { display:block; font-size:.8rem; font-weight:600; color:#e4e8e0; margin-bottom:11px; }
.post-card h2 { font-size:clamp(1.6rem,2.2vw,2.65rem); letter-spacing:-.035em; line-height:1.13; margin-bottom:12px; }
.post-card:nth-child(9n+1) h2 { font-size:clamp(2rem,3.6vw,4.4rem); }
.post-card__excerpt { font-size:clamp(.95rem,1.1vw,1.12rem); max-width:760px; margin:0 0 17px; color:#f1f3ed; line-height:1.5; }
.card-readmore { display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:.8rem; font-weight:700; padding-top:12px; border-top:1px solid #ffffff60; }
.card-readmore svg { color:var(--yellow); }
.no-cover .post-card__media { background:var(--card-accent); }
.cover-monogram { position:absolute; top:-.1em; right:-.06em; color:#101310; opacity:.23; font-size:clamp(8rem,20vw,26rem); line-height:1; letter-spacing:-.12em; font-weight:900; }

/* Pagination uses core-generated URLs and remains readable in both modes. */
.pagination { margin-top:44px; }
.pagination ul { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; list-style:none; gap:9px; margin:0; padding:0; }
.pagination li { margin:0; }
.pagination a,.pagination span.page-numbers { display:flex; align-items:center; justify-content:center; min-height:48px; min-width:48px; padding:8px 14px; font-weight:800; color:var(--ink); border:2px solid var(--ink); background:var(--surface); text-decoration:none; }
.pagination .current.page-numbers { background:var(--yellow); color:#101310; border-color:var(--ink); }
.pagination a:hover { background:var(--green); color:#101310; }
.pagination .dots.page-numbers { min-width:20px; border:0; padding:4px; background:transparent; }

/* Pages and articles have the same generous width as the front page. */
.listing-main { padding-block:50px 75px; }
.archive-heading { margin-bottom:35px; border-bottom:3px solid var(--ink); padding-bottom:25px; }
.archive-heading h1 { font-size:clamp(2.1rem,4vw,4.4rem); }
.archive-heading p:last-child { margin:0; }
.singular-main { padding-top:50px; padding-bottom:70px; }
.entry-header { padding-block:5px 30px; }
.entry-header h1 { max-width:1500px; }
.entry-categories { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
.entry-categories a { display:inline-block; background:var(--yellow); color:#101310; border:1px solid var(--ink); font-size:.8rem; font-weight:700; padding:4px 12px; text-decoration:none; }
.entry-meta { color:var(--muted); font-size:.9rem; margin-bottom:0; }
.entry-cover { margin-bottom:38px; }
.entry-cover img { width:100%; max-height:800px; object-fit:cover; border:2px solid var(--ink); }
.entry-content { display:flow-root; width:100%; font-size:clamp(1rem,1.25vw,1.2rem); }
.entry-content > * { width:calc(100% - var(--gutter) * 2); max-width:var(--site-width); margin-inline:auto; }
.entry-content > .alignwide { max-width:none; width:calc(100% - var(--gutter) * 2); }
.entry-content > .alignfull { max-width:none; width:100%; margin-inline:0; }
.entry-content > h2,.entry-content > h3,.entry-content > h4 { margin-top:1.4em; }
.entry-content > :first-child { margin-top:0; }
.entry-content ul,.entry-content ol { padding-left:1.6em; }
.entry-content li { margin-bottom:.4em; }
.entry-content .wp-block-image img { height:auto; }
.entry-content .wp-block-image.alignfull img { width:100%; }
.entry-content figure { margin-bottom:1.4em; }
.entry-content figcaption,.wp-caption-text,.gallery-caption { font-size:.85rem; line-height:1.5; margin-top:.65em; color:var(--muted); }
.entry-content blockquote { border-left:6px solid var(--green); padding:1.2em 1.5em; background:var(--soft); }
.entry-content blockquote p:last-child { margin-bottom:0; }
.entry-content .has-background a { color:inherit; }
.entry-content .wp-block-cover { min-height:360px; }
.entry-content .wp-block-cover .wp-block-cover__inner-container { max-width:var(--site-width); }
.entry-content .wp-block-group.has-background { padding:clamp(24px,4vw,60px); }
.entry-content .wp-block-columns { gap:clamp(20px,3vw,48px); }
.entry-content .wp-block-column { min-width:0; }
.entry-content iframe,.entry-content video { max-width:100%; }
.entry-content pre { padding:20px; overflow-x:auto; background:var(--soft); border:1px solid var(--line); }
.entry-content code { font-family:Consolas,monospace; font-size:.92em; }
.entry-content hr { border:0; border-top:3px solid var(--ink); margin-block:2em; }
.entry-content table { border-collapse:collapse; }
.entry-content th,.entry-content td { border:1px solid var(--line); padding:10px 14px; }
.entry-content th { background:var(--soft); }
.entry-content .wp-block-table { overflow:auto; }
.alignleft { float:left; margin-right:1.5em; }
.alignright { float:right; margin-left:1.5em; }
.entry-content > .alignleft { width:auto; max-width:45%; margin-left:max(var(--gutter),calc((100% - var(--site-width)) / 2)); }
.entry-content > .alignright { width:auto; max-width:45%; margin-right:max(var(--gutter),calc((100% - var(--site-width)) / 2)); }
.aligncenter { margin-inline:auto; text-align:center; }
.wp-caption { max-width:100%; }
.sticky { position:relative; }
.bypostauthor > .comment-body { border-left:4px solid var(--green); padding-left:16px; }
.entry-footer { clear:both; margin-top:28px; }
.entry-tags { display:flex; flex-wrap:wrap; gap:8px; }
.entry-tags a { padding:5px 12px; border:1px solid var(--ink); text-decoration:none; color:var(--ink); font-size:.85rem; }
.entry-tags a:hover { background:var(--green); color:#101310; }
.edit-link { font-size:.85rem; }
.button, .wp-block-button__link, input[type="submit"], button[type="submit"].submit { display:inline-block; background:var(--yellow); color:#101310; border:2px solid #101310; padding:11px 23px; font-weight:800; text-decoration:none; border-radius:0; }
.wp-block-button.is-style-outline .wp-block-button__link { background:transparent; color:inherit; border-color:currentColor; }
.button:hover,input[type="submit"]:hover { background:var(--green); }
.page-links { display:flex; align-items:center; gap:12px; padding-block:20px; }
.page-links a { border:1px solid var(--line); padding:4px 12px; }
.post-navigation { border-block:2px solid var(--ink); margin-top:45px; padding-block:25px; }
.nav-links { display:flex; justify-content:space-between; gap:25px; }
.nav-links > div { max-width:48%; }
.nav-next { margin-left:auto; text-align:right; }
.post-navigation a { color:var(--ink); text-decoration:none; display:flex; flex-direction:column; font-weight:800; }
.nav-label { font-size:.75rem; text-transform:uppercase; letter-spacing:.07em; color:var(--muted); margin-bottom:7px; }
.post-navigation a:hover { text-decoration:underline; }

/* Native WordPress comments, forms and empty states. */
.comments-area { padding-top:45px; }
.comment-list,.comment-list .children { list-style:none; padding-left:0; }
.comment-list .children { padding-left:clamp(14px,3vw,45px); }
.comment-body { padding-block:20px; border-bottom:1px solid var(--line); }
.comment-author .avatar { margin-right:10px; }
.comment-metadata,.reply { font-size:.85rem; }
.comment-content { margin-top:14px; }
.comment-form { max-width:1000px; }
.comment-form label { display:block; margin-bottom:6px; }
.comment-form input:not([type="checkbox"]):not([type="submit"]),.comment-form textarea,.post-password-form input[type="password"] { width:100%; border:2px solid var(--line); padding:12px; background:var(--surface); color:var(--ink); }
.comment-form-cookies-consent { display:flex; align-items:flex-start; gap:10px; }
.comment-form-cookies-consent input { margin-top:9px; }
.comment-form-cookies-consent label { display:inline; }
.empty-state { padding:clamp(25px,5vw,70px); background:var(--soft); border:2px solid var(--ink); }
.empty-state .search-form,.error-page .search-form { max-width:580px; margin-bottom:24px; }
.error-page { padding-block:65px; }
.error-number { color:var(--link); font-size:clamp(5rem,12vw,10rem); font-weight:900; letter-spacing:-.09em; line-height:1; margin-bottom:20px; }

/* Footer repeats the three primary colours without losing readability. */
.site-footer { border-top:2px solid var(--ink); background:var(--surface); }
.site-footer::before { content:""; display:block; height:12px; background:linear-gradient(90deg,var(--red) 0 33.333%,var(--yellow) 33.333% 66.666%,var(--green) 66.666%); border-bottom:2px solid var(--ink); }
.footer-inner { display:flex; align-items:flex-start; flex-wrap:wrap; justify-content:space-between; gap:30px; padding-block:40px 30px; }
.footer-brand { flex:1 1 300px; }
.footer-brand .site-brand { max-width:100%; }
.footer-brand p { font-size:.9rem; color:var(--muted); margin:14px 0 0; }
.footer-menu { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px 24px; max-width:600px; }
.footer-menu a { color:var(--ink); font-size:.9rem; font-weight:700; }
.copyright { flex:0 0 100%; font-size:.8rem; color:var(--muted); margin:0; padding-top:20px; border-top:1px solid var(--line); }

@media (max-width:1250px) {
    .header-inner { gap:18px; flex-wrap:wrap; }
    .site-brand { max-width:calc(100% - 210px); margin-right:auto; }
    .navigation-panel { order:4; flex-basis:100%; justify-content:space-between; padding-top:10px; border-top:1px solid var(--line); }
    .primary-menu { justify-content:flex-start; }
    .header-search { flex-basis:230px; }
}
@media (max-width:1050px) {
    .post-card,.post-card:nth-child(n) { flex-basis:calc((100% - var(--gap)) / 2); }
    .post-card .post-card__link,.post-card:nth-child(n) .post-card__link { min-height:390px; }
    .post-card:nth-child(9n+1) h2 { font-size:clamp(1.8rem,3.2vw,2.6rem); }
    .post-card__excerpt { display:none; }
    .post-card:first-child { flex-basis:100%; }
    .post-card:first-child .post-card__link { min-height:480px; }
    .post-card:first-child .post-card__excerpt { display:block; }
    .post-card:first-child h2 { font-size:clamp(2.2rem,4.5vw,3.5rem); }
}
@media (max-width:782px) {
    .admin-bar .site-header { top:46px; }
    .header-inner { min-height:84px; gap:12px; }
    .site-brand { max-width:calc(100% - 165px); gap:10px; }
    .custom-logo { max-width:110px; max-height:56px; }
    .site-name { font-size:1.35rem; }
    .js .menu-toggle { display:flex; align-items:center; justify-content:center; padding:9px 10px; gap:5px; background:var(--yellow); color:#101310; border:2px solid var(--ink); min-height:46px; font-size:.85rem; font-weight:700; }
    .colour-toggle { padding:10px; }
    .colour-toggle .colour-label { display:none; }
    .navigation-panel { display:block; max-height:calc(100dvh - 160px); overflow-y:auto; padding-top:12px; padding-bottom:15px; }
    .js .navigation-panel { display:none; }
    .js .navigation-panel.is-open { display:block; }
    .primary-menu { display:block; }
    .primary-menu > li { border-bottom:1px solid var(--line); }
    .primary-menu > li > a { flex:1; padding:13px 8px; font-size:1rem; }
    .primary-menu ul { position:static; width:100%; max-width:none; border:0; border-left:3px solid var(--green); padding:0 0 0 12px; margin:0 0 10px 10px; box-shadow:none; }
    .primary-menu ul li { border:0; }
    .primary-menu ul a { font-size:.95rem; padding:10px 8px; }
    .js .primary-menu li:hover > ul,.js .primary-menu li:focus-within > ul { display:none; }
    .js .primary-menu li.is-open > ul { display:block; }
    .submenu-toggle { width:46px; height:46px; }
    .header-search { margin-top:18px; }
    .footer-menu { justify-content:flex-start; }
    .entry-content .wp-block-columns:not(.is-not-stacked-on-mobile) { flex-wrap:wrap !important; }
    .entry-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis:100% !important; }
}
@media (max-width:680px) {
    body { font-size:17px; }
    .intro-default { grid-template-columns:1fr; box-shadow:6px 6px 0 var(--ink); }
    .intro-default h2 { font-size:clamp(2.6rem,10vw,4rem); }
    .intro-colour-band { grid-template-columns:repeat(3,1fr); grid-template-rows:1fr; border-left:0; border-top:2px solid #101310; font-size:2rem; }
    .intro-colour-band span { padding:10px; }
    .intro-colour-band span + span { border-top:0; border-left:2px solid #101310; }
    .section-heading { align-items:flex-start; }
    .section-heading h2 { font-size:1.9rem; }
    .section-heading .eyebrow { font-size:.73rem; }
    .post-card,.post-card:nth-child(n) { flex-basis:100%; }
    .post-card:nth-child(n) .post-card__link { min-height:390px; }
    .post-card:nth-child(n) h2 { font-size:1.95rem; }
    .post-card:first-child .post-card__link { min-height:450px; }
    .post-card:first-child h2 { font-size:2.3rem; }
    .post-card__link { padding:24px; }
    .category-pill { margin-bottom:90px; }
    .entry-content > .alignleft,.entry-content > .alignright { float:none; max-width:calc(100% - var(--gutter) * 2); margin-inline:auto; }
    .nav-links { flex-direction:column; }
    .nav-links > div { max-width:100%; }
    .pagination a,.pagination span.page-numbers { padding:7px 10px; min-width:44px; min-height:44px; font-size:.9rem; }
}
@media (max-width:600px) { .admin-bar .site-header { top:0; } }
@media (max-width:390px) {
    .header-inner { gap:8px; }
    .site-brand { max-width:calc(100% - 120px); }
    .custom-logo { max-width:65px; }
    .site-name { font-size:1.1rem; }
    .menu-toggle span { display:none; }
}
@media (prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
}
@media print {
    .site-header,.site-footer,.post-navigation,.comments-area,.edit-link,.edit-intro,.pagination { display:none; }
    body { background:#fff !important; color:#000 !important; font-size:12pt; }
    .entry-content > *,.site-container { max-width:100%; width:100%; }
    .entry-cover img { max-height:350px; }
}
