/*
Theme Name: Postup
Author: Postup
Description: Lightweight editorial theme for Postup IF UA.
Version: 1.0.0
Requires PHP: 8.2
Text Domain: postup
*/

:root{--ink:#17212b;--muted:#66717d;--blue:#087fbd;--blue-dark:#075f91;--sky:#eaf6fc;--line:#dce5ea;--paper:#fff;--bg:#f4f7f8;--radius:18px;--shadow:0 12px 35px rgba(23,33,43,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}a{color:var(--blue-dark);text-decoration:none}a:hover{color:var(--blue)}img{max-width:100%;height:auto}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-row{min-height:82px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:13px;color:var(--ink);min-width:260px}.brand img{width:52px;height:52px;object-fit:contain}.brand strong{display:block;font-size:17px;line-height:1.15}.brand small{color:var(--muted);font-size:12px}.nav{margin-left:auto}.nav ul{display:flex;align-items:center;gap:4px;margin:0;padding:0;list-style:none}.nav a{display:block;padding:10px 12px;border-radius:10px;color:var(--ink);font-weight:650;font-size:14px}.nav a:hover,.nav .current-menu-item>a{background:var(--sky);color:var(--blue-dark)}.search-toggle{font-size:22px;padding:8px}.hero{padding:70px 0 42px;background:linear-gradient(145deg,#fff 20%,#e8f6fc)}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.eyebrow{display:inline-block;margin-bottom:16px;color:var(--blue-dark);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero h1{max-width:760px;margin:0;font-size:clamp(40px,6vw,72px);line-height:1.02;letter-spacing:-.05em}.hero p{max-width:650px;margin:22px 0 0;color:var(--muted);font-size:19px}.hero-mark{display:grid;place-items:center}.hero-mark img{width:min(340px,85%);filter:drop-shadow(0 22px 32px rgba(8,127,189,.18))}.section{padding:58px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.section-head h2,.page-title{margin:0;font-size:clamp(30px,4vw,46px);line-height:1.1;letter-spacing:-.035em}.section-head a{font-weight:750}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 4px 20px rgba(23,33,43,.04);transition:.2s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-media{display:block;aspect-ratio:16/10;background:var(--sky);overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover;transition:.35s}.card:hover .card-media img{transform:scale(1.03)}.placeholder{height:100%;display:grid;place-items:center;color:var(--blue);font-size:42px}.card-body{padding:20px}.meta{display:flex;flex-wrap:wrap;gap:9px;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.card h3{margin:9px 0 8px;font-size:20px;line-height:1.28}.card h3 a{color:var(--ink)}.card p{margin:0;color:var(--muted);font-size:14px}.category-band{background:var(--ink);color:white}.category-band .section-head a,.category-band a{color:#8ed8fb}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.category-pill{padding:24px;border:1px solid #344454;border-radius:16px;color:white!important}.category-pill strong{display:block;font-size:18px}.category-pill span{color:#aebbc6;font-size:13px}.page-shell{padding:54px 0}.content-grid{display:grid;grid-template-columns:minmax(0,780px) 280px;gap:54px;align-items:start}.article,.page-content{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,5vw,58px)}.article-header{margin-bottom:30px}.article-header h1{margin:10px 0 16px;font-size:clamp(34px,5vw,58px);line-height:1.08;letter-spacing:-.04em}.entry-content{font-family:Georgia,"Times New Roman",serif;font-size:18px}.entry-content h2,.entry-content h3{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.25}.entry-content a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.entry-content iframe{max-width:100%}.entry-content table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}.entry-content td{padding:10px;border:1px solid var(--line)}.entry-content img{border-radius:10px}.sidebar{position:sticky;top:110px}.side-box{padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:18px}.side-box h2{margin:0 0 12px;font-size:18px}.side-box ul{margin:0;padding:0;list-style:none}.side-box li+li{border-top:1px solid var(--line)}.side-box a{display:flex;justify-content:space-between;padding:9px 0}.pagination{display:flex;justify-content:center;gap:8px;margin-top:34px}.pagination .page-numbers{padding:9px 14px;background:white;border:1px solid var(--line);border-radius:9px}.pagination .current{background:var(--blue);color:white;border-color:var(--blue)}.search-form{display:flex}.search-form label{flex:1}.search-field{width:100%;height:46px;padding:0 14px;border:1px solid var(--line);border-radius:10px 0 0 10px;font:inherit}.search-submit,.button{border:0;border-radius:0 10px 10px 0;background:var(--blue);color:white;padding:0 18px;font-weight:750}.site-footer{padding:42px 0;background:#101820;color:#afbac3}.footer-row{display:flex;justify-content:space-between;gap:30px}.site-footer strong{color:white}.site-footer a{color:#8ed8fb}.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;font-size:25px}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px)}
@media(max-width:900px){.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;border-bottom:1px solid var(--line);padding:12px 18px}.nav.open{display:block}.nav ul{display:block}.hero-grid{grid-template-columns:1fr}.hero-mark{display:none}.cards{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.sidebar{position:static}}
@media(max-width:580px){.wrap{width:min(100% - 24px,1160px)}.brand{min-width:0}.brand small{display:none}.cards{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr}.section{padding:42px 0}.hero{padding:48px 0 34px}.article,.page-content{padding:22px}.footer-row{display:block}.section-head{align-items:start;flex-direction:column}}
.hero-banner{padding:34px 0;background:#fff}.hero-banner img{display:block;width:100%;height:auto}
@media(max-width:580px){.hero-banner{padding:18px 0}}
.site-header{position:relative;top:auto;background:#fff;backdrop-filter:none}.site-banner{padding:0;background:#fff}.site-banner img{display:block;width:100%;height:auto}.site-nav-bar{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.site-nav-bar .header-row{min-height:64px;justify-content:center}.site-nav-bar .nav{margin:0 auto}
@media(max-width:900px){.site-nav-bar .header-row{min-height:58px;justify-content:flex-end}.site-nav-bar .nav{top:58px;transform:none}}
.feed-sentinel{min-height:80px;display:grid;place-items:center;color:var(--muted)}.feed-loader{opacity:0;transition:.2s}.feed-sentinel.is-loading .feed-loader{opacity:1}.feed-retry{padding:10px 16px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--blue-dark);font-weight:700;cursor:pointer}
.card p{display:-webkit-box;overflow:hidden;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4}
.content-grid,.article,.page-content,.entry-content{min-width:0}.entry-content{overflow-wrap:anywhere;word-break:normal}.entry-content>*{max-width:100%}.entry-content a{overflow-wrap:anywhere;word-break:break-word}.entry-content pre,.entry-content code{white-space:pre-wrap;overflow-wrap:anywhere}.entry-content input,.entry-content textarea,.entry-content select{max-width:100%}
.card-media.logo-media{background:#fff}.card-media.logo-media img{object-fit:contain;padding:14px}.compact-post-logo{display:block;width:min(420px,100%);margin:0 auto 34px;object-fit:contain}
.article-centered{width:min(920px,100%);margin:0 auto}.header-search{width:230px;flex:0 0 230px}.header-search .search-field{height:40px}.header-search .search-submit{padding:0 13px;font-size:13px}.site-nav-bar .header-row{gap:18px}.site-nav-bar .nav{margin:0}
@media(max-width:900px){.header-search{width:min(300px,calc(100% - 54px));flex:1 1 220px}.header-search .search-submit{display:none}.header-search .search-field{border-radius:10px}.site-nav-bar .header-row{justify-content:space-between}}

/* Typography */
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-cyrillic.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Literata;src:url('assets/fonts/literata-cyrillic.woff2') format('woff2');font-style:normal;font-weight:400 500;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Literata;src:url('assets/fonts/literata-latin.woff2') format('woff2');font-style:normal;font-weight:400 500;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
body,button,input,select,textarea{font-family:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px}.nav a{font-size:14px;font-weight:700;letter-spacing:-.01em}.section-head h2,.page-title{font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.04em;font-weight:750}.card h3{font-size:clamp(19px,1.7vw,22px);line-height:1.28;letter-spacing:-.025em;font-weight:750}.card p{font-size:15px;line-height:1.6}.meta{font-size:12px;line-height:1.4;letter-spacing:.055em}.article-header{max-width:780px;margin:0 auto 34px}.article-header h1{font-size:clamp(32px,4.2vw,52px);line-height:1.1;letter-spacing:-.045em;font-weight:750}.entry-content{width:min(100%,68ch);margin-inline:auto;font-family:Literata,Georgia,"Times New Roman",serif;font-size:19px;line-height:1.78;letter-spacing:-.006em}.entry-content p{margin:0 0 1.35em}.entry-content h2,.entry-content h3,.entry-content h4{font-family:Manrope,system-ui,sans-serif;letter-spacing:-.03em;color:var(--ink)}.entry-content h2{margin:1.8em 0 .65em;font-size:30px;line-height:1.2}.entry-content h3{margin:1.6em 0 .6em;font-size:24px;line-height:1.25}.entry-content h4{margin:1.4em 0 .5em;font-size:20px;line-height:1.3}.entry-content li{margin:.35em 0}.site-footer{font-size:14px}
@media(max-width:580px){body{font-size:15px}.article-header h1{font-size:clamp(29px,9vw,38px)}.entry-content{font-size:17.5px;line-height:1.72}.entry-content h2{font-size:26px}.entry-content h3{font-size:22px}.card h3{font-size:20px}}

/* Balanced type scale */
body,button,input,select,textarea{font-size:16px;line-height:1.6}.nav a{font-size:13.5px;line-height:1.25}.header-search .search-field,.header-search .search-submit{font-size:13px}.section-head h2,.page-title{font-size:clamp(28px,3vw,40px);line-height:1.12}.card h3{font-size:clamp(17px,1.25vw,19px);line-height:1.32;letter-spacing:-.02em}.card p{font-size:14px;line-height:1.58}.card-body{padding:18px}.meta{font-size:11.5px;line-height:1.35}.category-pill strong{font-size:17px;line-height:1.3}.category-pill span{font-size:12.5px}.article-header{margin-bottom:30px}.article-header h1{font-size:clamp(30px,3.2vw,44px);line-height:1.14;letter-spacing:-.035em}.entry-content{font-size:18px;line-height:1.75}.entry-content h2{font-size:28px;line-height:1.22}.entry-content h3{font-size:23px;line-height:1.28}.entry-content h4{font-size:19px;line-height:1.35}.pagination .page-numbers{font-size:14px}.site-footer{font-size:13.5px;line-height:1.6}
@media(max-width:580px){body,button,input,select,textarea{font-size:15px}.nav a{font-size:14px}.section-head h2,.page-title{font-size:28px}.card h3{font-size:18px}.card p{font-size:14px}.article-header h1{font-size:clamp(28px,8vw,34px);line-height:1.16}.entry-content{font-size:17px;line-height:1.7}.entry-content h2{font-size:24px}.entry-content h3{font-size:21px}.entry-content h4{font-size:18px}}

/* Normalize typography inside legacy posts */
.single .entry-content{font-family:Literata,Georgia,"Times New Roman",serif!important;font-size:18px!important;line-height:1.75!important}.single .entry-content :where(p,li,td,th,blockquote,figcaption){font-family:Literata,Georgia,"Times New Roman",serif!important;font-size:18px!important;line-height:1.75!important}.single .entry-content :where(p,li,td,th,blockquote,figcaption) *{font-family:inherit!important;font-size:inherit!important;line-height:inherit!important}.single .entry-content :where(h1,h2,h3,h4,h5,h6),.single .entry-content :where(h1,h2,h3,h4,h5,h6) *{font-family:Manrope,system-ui,sans-serif!important;line-height:1.25!important}.single .entry-content h2,.single .entry-content h2 *{font-size:28px!important}.single .entry-content h3,.single .entry-content h3 *{font-size:23px!important}.single .entry-content h4,.single .entry-content h4 *{font-size:19px!important}.single .entry-content h5,.single .entry-content h5 *{font-size:17px!important}.single .entry-content h6,.single .entry-content h6 *{font-size:15px!important}
@media(max-width:580px){.single .entry-content,.single .entry-content :where(p,li,td,th,blockquote,figcaption){font-size:17px!important;line-height:1.7!important}.single .entry-content h2,.single .entry-content h2 *{font-size:24px!important}.single .entry-content h3,.single .entry-content h3 *{font-size:21px!important}.single .entry-content h4,.single .entry-content h4 *{font-size:18px!important}}

/* Use the homepage typeface throughout individual posts */
.single .entry-content,.single .entry-content :where(p,li,td,th,blockquote,figcaption),.single .entry-content :where(p,li,td,th,blockquote,figcaption) *{font-family:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:-.01em}

/* More compact headings on individual posts */
.single .article-header h1{font-size:clamp(27px,2.8vw,38px);line-height:1.18;letter-spacing:-.03em}.single .entry-content h2,.single .entry-content h2 *{font-size:26px!important}.single .entry-content h3,.single .entry-content h3 *{font-size:21px!important}.single .entry-content h4,.single .entry-content h4 *{font-size:18px!important}
@media(max-width:580px){.single .article-header h1{font-size:clamp(25px,7vw,30px);line-height:1.2}.single .entry-content h2,.single .entry-content h2 *{font-size:22px!important}.single .entry-content h3,.single .entry-content h3 *{font-size:19px!important}.single .entry-content h4,.single .entry-content h4 *{font-size:17px!important}}

/* Clearer primary navigation without sacrificing readability. */
.nav a{font-size:15px;font-weight:750;line-height:1.25;letter-spacing:-.012em}

/* The Actions page is an archive-style index, not a media gallery. */
.actions-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.actions-list li{margin:0!important;border-bottom:1px solid var(--line)}
.actions-list a,.actions-list span{display:block;padding:15px 4px;color:var(--ink);font-family:Manrope,system-ui,sans-serif;font-size:16px;line-height:1.45;text-decoration:none}
.actions-list a{font-weight:650}
.actions-list a:hover{color:var(--blue-dark);padding-left:10px}

.project-intro{margin-bottom:2.25rem}
.project-intro-image{margin:0 auto 1.4rem!important;text-align:center}
.project-intro-image img{width:min(100%,640px)!important;margin:0 auto!important}
.project-intro p{margin:0!important;text-align:left!important}
.project-cards{margin-top:2rem}

/* Lead with the organisation's flagship memory project. */
.projects-grid .featured-project{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);border-color:#b9dceb;background:linear-gradient(135deg,#fff 45%,#eef9fe);box-shadow:0 16px 42px rgba(7,95,145,.12)}
.projects-grid .featured-project:hover{transform:translateY(-3px)}
.featured-project .card-media{aspect-ratio:auto;min-height:340px}
.featured-project .card-body{display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,5vw,54px)}
.featured-project .project-label{align-self:flex-start;margin-bottom:14px;padding:6px 11px;border-radius:999px;background:var(--blue-dark);color:#fff;font-size:11px;font-weight:800;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}
.featured-project h3{margin:12px 0 14px;font-size:clamp(27px,3vw,38px);line-height:1.15}
.featured-project p{font-size:16px;line-height:1.65;-webkit-line-clamp:5;line-clamp:5}
@media(max-width:700px){.projects-grid .featured-project{grid-template-columns:1fr}.featured-project .card-media{min-height:0;aspect-ratio:16/10}.featured-project .card-body{padding:24px}.featured-project h3{font-size:25px}}

/* Give project titles enough room without making the lead card feel oversized. */
.page-id-14920 .entry-content{width:100%}
.projects-grid .featured-project{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)}
.featured-project .card-body{padding:clamp(26px,3.2vw,40px)}
.featured-project h3{font-size:clamp(25px,2.35vw,32px);line-height:1.18}
.projects-grid>.card:not(.featured-project) h3{font-size:clamp(17px,1.45vw,20px);line-height:1.3}
.projects-grid .project-label,.projects-grid .meta{display:none}
@media(max-width:700px){.projects-grid .featured-project{grid-template-columns:1fr}.featured-project .card-body{padding:22px}.featured-project h3{font-size:24px}}

/* Archive year filter */
.archive-filter{display:flex;align-items:end;gap:10px;margin:0 0 26px;padding:18px;background:var(--sky);border:1px solid #cfe8f3;border-radius:14px;font-family:Manrope,system-ui,sans-serif}
.archive-filter label{font-size:14px;font-weight:750}
.archive-filter select{min-width:150px;height:44px;padding:0 36px 0 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit}
.archive-filter button{height:44px;padding:0 18px;border:0;border-radius:9px;background:var(--blue-dark);color:#fff;font:inherit;font-weight:750;cursor:pointer}

/* Long-form reading aids */
.reading-progress{position:fixed;z-index:40;top:0;left:0;width:100%;height:4px;pointer-events:none}
.reading-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#f7c600,var(--blue));transform:scaleX(0);transform-origin:left center;will-change:transform}
.article-toc{width:min(100%,68ch);margin:0 auto 30px;padding:18px 20px;border:1px solid #cfe5ef;border-radius:14px;background:#f4fbfe;font-family:Manrope,system-ui,sans-serif}
.article-toc[hidden]{display:none}
.toc-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:800;cursor:pointer}
.toc-toggle span:last-child{font-size:18px;transition:transform .2s}
.article-toc.is-collapsed .toc-toggle span:last-child{transform:rotate(180deg)}
.article-toc ol{margin:14px 0 0;padding:0;list-style:none}
.article-toc.is-collapsed ol{display:none}
.article-toc li+li{margin-top:7px}
.article-toc .toc-subitem{padding-left:18px}
.article-toc a{color:var(--muted);font-size:14px;line-height:1.4;text-decoration:none}
.article-toc a:hover,.article-toc a.is-active{color:var(--blue-dark)}
.article-toc a.is-active{font-weight:750}

/* Compact sharing controls */
.post-share{display:flex;align-items:center;flex-wrap:wrap;gap:8px;width:min(100%,68ch);margin:34px auto 0;padding-top:22px;border-top:1px solid var(--line);font-family:Manrope,system-ui,sans-serif}
.post-share-label{margin-right:4px;color:var(--muted);font-size:13px;font-weight:750}
.post-share button,.post-share a{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:13px;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.post-share button:hover,.post-share a:hover{border-color:#a9d6e9;background:var(--sky);color:var(--blue-dark)}
.post-share button:focus-visible,.post-share a:focus-visible{outline:3px solid rgba(8,127,189,.25);outline-offset:2px}
.share-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:580px){.post-share{align-items:stretch}.post-share-label{flex-basis:100%;margin-bottom:2px}.post-share button,.post-share a{justify-content:center}.share-copy{flex-basis:100%}}

/* Balance headings and gently scale only genuinely long titles. */
:where(h1,h2,h3){text-wrap:balance}
.card.title-long h3{font-size:clamp(16px,1.1vw,18px)}
.card.title-very-long h3{font-size:clamp(15px,1vw,17px);line-height:1.34}
.featured-project.title-long h3{font-size:clamp(23px,2vw,29px)}
.featured-project.title-very-long h3{font-size:clamp(21px,1.8vw,27px)}
.projects-grid>.card.title-long:not(.featured-project) h3{font-size:clamp(16px,1.1vw,18px)}
.projects-grid>.card.title-very-long:not(.featured-project) h3{font-size:clamp(15px,1vw,17px)}
.single .article.title-long .article-header h1{font-size:clamp(25px,2.5vw,34px)}
.single .article.title-very-long .article-header h1{font-size:clamp(23px,2.2vw,31px);line-height:1.2}
.related-card.title-long h3{font-size:15px}
.related-card.title-very-long h3{font-size:14px;line-height:1.4}
@media(max-width:580px){.single .article.title-long .article-header h1{font-size:26px}.single .article.title-very-long .article-header h1{font-size:24px}.featured-project.title-long h3,.featured-project.title-very-long h3{font-size:22px}}

/* Keep the compact navigation available while the banner scrolls away. */
.site-nav-bar{position:sticky;top:0;z-index:35;background:rgba(255,255,255,.9);-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px);box-shadow:0 5px 18px rgba(23,33,43,.06)}
.admin-bar .site-nav-bar{top:32px}
@media(max-width:782px){.admin-bar .site-nav-bar{top:46px}}
.site-banner picture,.card-media picture,.related-media picture{display:block;width:100%;height:100%}

/* Quick return on long articles. */
.floating-nav{position:fixed;right:max(20px,calc((100vw - 1320px)/2));bottom:24px;z-index:32;display:flex;flex-direction:column;gap:9px;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s,transform .2s,visibility .2s}
.floating-nav.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.floating-nav .back-to-top,.floating-nav .floating-home{display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgba(7,95,145,.2);border-radius:50%;background:rgba(255,255,255,.9);color:var(--blue-dark);box-shadow:0 8px 26px rgba(23,33,43,.16);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:800 24px/1 Manrope,system-ui,sans-serif;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}
.floating-nav .back-to-top:hover,.floating-nav .floating-home:hover{background:var(--blue-dark);color:#fff}
.floating-nav .back-to-top:focus-visible,.floating-nav .floating-home:focus-visible{outline:3px solid rgba(8,127,189,.3);outline-offset:3px}
@media(max-width:580px){.floating-nav{right:14px;bottom:14px}.floating-nav .back-to-top,.floating-nav .floating-home{width:44px;height:44px;font-size:22px}}
@media(prefers-reduced-motion:reduce){.floating-nav,.floating-nav .back-to-top,.floating-nav .floating-home{transition:none}html{scroll-behavior:auto}}

/* Related reading */
.related-posts{margin-top:50px;padding-top:32px;border-top:1px solid var(--line);font-family:Manrope,system-ui,sans-serif}
.related-posts>h2{margin:0 0 20px;font-size:25px;line-height:1.2}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.related-card{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}
.related-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--sky)}
.related-media img{width:100%;height:100%;object-fit:cover}
.related-media.logo-media{background:#fff}.related-media.logo-media img{object-fit:contain;padding:12px}
.related-card>div{padding:14px}
.related-card h3{margin:7px 0 0;font-size:16px;line-height:1.35}
.related-card h3 a{color:var(--ink)}
@media(max-width:700px){.archive-filter{align-items:stretch;flex-direction:column}.archive-filter select,.archive-filter button{width:100%}.related-grid{grid-template-columns:1fr}.related-card{display:grid;grid-template-columns:120px 1fr}.related-media{height:100%;aspect-ratio:auto}.related-posts>h2{font-size:22px}}

/* Consistent image alignment in posts */
.single .article>img,.single .entry-content img{display:block!important;float:none!important;clear:both;width:auto;max-width:100%!important;height:auto!important;margin:1.5em auto!important}.single .entry-content figure{float:none!important;max-width:100%!important;margin:1.75em auto!important}.single .entry-content figure img{margin:0 auto!important}.single .entry-content figcaption{margin:.7em auto 0;text-align:center;color:var(--muted);font-size:14px!important}
