/* Journey Magazine. Original theme CSS. No build step required. */
:root{--paper:#fff;--ink:#100d13;--muted:#636167;--soft:#f5f5f5;--line:#e8e7e9;--accent:#d6ff24;--accent-ink:#111;--panel:#f2f2ee;--shadow:0 20px 60px #18132012;--radius:14px;--gutter:clamp(20px,3.45vw,72px);--heading:var(--gh-font-heading,Arial,Helvetica,sans-serif);--body:var(--gh-font-body,Arial,Helvetica,sans-serif);color-scheme:light}
html[data-scheme="dark"]{--paper:#151419;--ink:#f6f5f7;--muted:#b9b5bf;--soft:#25242b;--line:#38353f;--panel:#272831;--shadow:0 20px 60px #0003;color-scheme:dark}
html[data-scheme="sepia"]{--paper:#f3ecdc;--ink:#30291f;--muted:#6c6252;--soft:#e9dfcb;--line:#d8ccb5;--panel:#e6dac2;color-scheme:light}
@media(prefers-color-scheme:dark){html[data-scheme="auto"]{--paper:#151419;--ink:#f6f5f7;--muted:#b9b5bf;--soft:#25242b;--line:#38353f;--panel:#272831;--shadow:0 20px 60px #0003;color-scheme:dark}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--body);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary,input,select{touch-action:manipulation}button{color:inherit;cursor:pointer}button:disabled{cursor:wait}img{max-width:100%;height:auto;display:block}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}h1,h2,h3,h4{font-family:var(--heading);line-height:1.12;letter-spacing:-.025em;margin:0;font-weight:650}p{margin:0 0 1em}button,a,input,summary,select{outline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--ink)}[hidden]{display:none!important}::selection{background:var(--accent);color:var(--accent-ink)}.wrap{width:calc(100% - var(--gutter)*2);max-width:1760px;margin-inline:auto}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:8px;left:12px;transform:translateY(-200%);z-index:1000;background:var(--accent);color:var(--accent-ink);padding:10px 20px;border-radius:12px}.skip-link:focus{transform:none}.site-main:focus{outline:none}.eyebrow{font-size:14px;letter-spacing:.02em;line-height:1.4;color:var(--muted);margin-bottom:14px}.font-editorial{--heading:var(--gh-font-heading,Georgia,'Times New Roman',serif)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 29px;background:var(--accent);color:var(--accent-ink);border:0;border-radius:999px;font-weight:500;line-height:1.2;transition:transform .2s,filter .2s}.button:hover{filter:brightness(.95);transform:translateY(-2px)}.button-soft{background:var(--soft);color:var(--ink)}.text-button{border:0;background:none;padding:2px 0;text-decoration:underline;text-underline-offset:4px}.icon-button{display:flex;align-items:center;justify-content:center;padding:10px;border:0;border-radius:999px;background:var(--soft)}
/* Header and keyboard-operable topic menu. */
.site-header{position:relative;z-index:20}
.header-top{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;font-family:var(--heading);font-size:38px;line-height:1;font-weight:750;letter-spacing:-2px;flex-shrink:0}.brand img{width:auto;max-width:210px;max-height:48px;object-fit:contain}.brand-dot{color:inherit}.logo-dark{display:none}html[data-scheme="dark"] .has-dark-logo .logo-dark{display:block}html[data-scheme="dark"] .has-dark-logo .logo-light{display:none}@media(prefers-color-scheme:dark){html[data-scheme="auto"] .has-dark-logo .logo-dark{display:block}html[data-scheme="auto"] .has-dark-logo .logo-light{display:none}}
.main-navigation{display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:17px}.nav{list-style:none;padding:0;margin:0;display:flex;align-items:center;flex-wrap:wrap;gap:22px}.nav a{display:inline-block;padding-block:9px}.nav a:hover,.nav-current a{text-decoration:underline;text-underline-offset:5px}.explore-menu{margin-left:10px}.explore-menu summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:7px}.explore-menu summary::-webkit-details-marker{display:none}.explore-menu[open] summary span{transform:rotate(180deg)}.dropdown-panel{position:absolute;right:0;top:76px;display:grid;grid-template-columns:1fr 1fr;gap:36px;min-width:440px;max-width:100%;padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:var(--shadow)}.dropdown-panel a{display:flex;align-items:center;gap:9px;padding:7px 0}.dropdown-panel a:hover{text-decoration:underline}.dropdown-author img{width:28px;height:28px;object-fit:cover;border-radius:50%}.search-button{gap:5px;padding-inline:22px}.search-button svg{width:18px;height:18px}.menu-toggle{display:none}
/* Home: large type, colored tags, article grid, persistent editorial rail. */
.hero{padding:28px 0 68px}.hero h1{font-size:clamp(58px,9.3vw,160px);font-weight:500;line-height:1.02;letter-spacing:-.055em;margin:0 0 56px;overflow-wrap:anywhere;text-wrap:balance}.hero-compact h1{font-size:clamp(48px,6vw,96px);max-width:1100px}.hero:not(:has(.topic-cloud)){padding-bottom:38px}.topic-cloud{display:flex;flex-wrap:wrap;gap:11px 12px}.topic-chip{--chip:#fce2d5;--chip-ink:#15131a;display:inline-flex;align-items:center;overflow:hidden;border-radius:999px;background:var(--chip);color:var(--chip-ink);min-height:70px;font-size:clamp(17px,1.65vw,25px);line-height:1.1;transition:transform .2s}.topic-chip span{padding:15px 20px}.topic-chip img{width:70px;height:70px;object-fit:cover}.topic-chip.has-image{border-radius:14px}.topic-chip:hover{transform:rotate(-2deg) translateY(-2px)}.topic-chip:nth-child(9n+2){--chip:#c5e938}.topic-chip:nth-child(9n+3){--chip:#f0ddbc}.topic-chip:nth-child(9n+4){--chip:#9752c9;--chip-ink:#fff}.topic-chip:nth-child(9n+5){--chip:#006b67;--chip-ink:#fff}.topic-chip:nth-child(9n+6){--chip:#f4c67f}.topic-chip:nth-child(9n+7){--chip:#ffa6ba}.topic-chip:nth-child(9n+8){--chip:#222776;--chip-ink:#fff}.topic-chip:nth-child(9n+9){--chip:#d9c9fa}.topic-chip:nth-child(10){--chip:#5148ff;--chip-ink:#fff}.topic-chip:nth-child(11){--chip:#feecd4}.topic-chip:nth-child(12){--chip:#ffb38f}.topic-chip:nth-child(13){--chip:#a2f1b5}
.home-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,24%);gap:3.6%}.home-layout.no-sidebar{display:block}.home-content{min-width:0}.section-label{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding:8px 0 16px;font-family:var(--body);font-size:17px;line-height:1.4;letter-spacing:0;font-weight:400}.section-label h2{font:inherit}.welcome{margin-bottom:72px}.welcome p{font-size:clamp(26px,2.95vw,46px);line-height:1.25;letter-spacing:-.035em;margin:0;text-wrap:pretty}.post-feed{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 16px}.layout-balanced .post-feed{grid-template-columns:repeat(3,minmax(0,1fr))}.layout-showcase .post-feed{grid-template-columns:repeat(3,minmax(0,1fr))}.layout-showcase .post-feed .post-card:nth-child(6n+1){grid-column:span 2;grid-row:span 2}.layout-showcase .post-feed .post-card:nth-child(6n+1) .card-image-link{aspect-ratio:1/1}.layout-showcase .post-feed .post-card:nth-child(6n+1) .card-title{font-size:clamp(28px,3vw,48px)}.post-card{min-width:0}.card-media{position:relative;margin-bottom:10px}.card-image-link{display:block;aspect-ratio:1.77;overflow:hidden;border-radius:11px;background:var(--soft)}.card-image{height:100%;width:100%;object-fit:cover;transition:transform .45s}.post-card:hover .card-image{transform:scale(1.035)}.orientation-portrait .card-image-link{aspect-ratio:3/4}.orientation-square .card-image-link{aspect-ratio:1}.orientation-panoramic .card-image-link{aspect-ratio:2.4}.orientation-natural .card-image-link{aspect-ratio:auto}.orientation-natural .card-image{height:auto}.orientation-natural .image-placeholder{height:180px}.image-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(140deg,#bde1de,#f6d4ae 70%,#e2c5f5);color:#293947;font-size:100px;line-height:1}.card-title{font-size:clamp(18px,1.56vw,25px);line-height:1.25;font-weight:600;letter-spacing:-.025em;margin:0 0 7px}.card-title a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.card-meta{font-size:clamp(13px,1.13vw,17px);color:var(--muted);line-height:1.5}.card-meta a:hover{color:var(--ink)}.access-label{position:absolute;left:8px;top:8px;font-size:11px;line-height:1.3;border-radius:999px;padding:4px 9px;background:#ffffffe8;color:#17141a;max-width:75%}.save-button{display:none;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:50%;background:#fffffff0;color:#17141a}.js .save-button{display:inline-flex}.card-media .save-button{position:absolute;right:8px;bottom:8px;opacity:0;transition:opacity .2s}.save-button svg{width:17px;height:17px}.post-card:hover .save-button,.save-button:focus-visible,.save-button[aria-pressed="true"]{opacity:1}.save-button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink)}.save-button[aria-pressed="true"] svg{fill:currentColor}.pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:16px;margin:45px 0 72px}.pagination .button{padding:19px 38px;font-size:20px}.page-number{font-size:13px;color:var(--muted)}.pagination .page-number:only-child{display:none}.home-sidebar{min-width:0;position:relative}.pick{position:sticky;top:22px;min-height:560px;height:calc(100vh - 44px);max-height:1000px;border-radius:20px;overflow:hidden;isolation:isolate;background:#dce4cd;color:#15131a;padding:16px;display:flex;flex-direction:column;justify-content:space-between}.pick-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.pick:after{content:"";position:absolute;inset:45% 0 0;z-index:-1;background:linear-gradient(transparent,#102c244d)}.pick-no-image{background:linear-gradient(160deg,#ecd9c6,#adbbb5,#6c8989)}.pick-label{align-self:flex-start;border-radius:999px;padding:6px 12px;font-size:15px;background:#ffffffb3;backdrop-filter:blur(12px)}.pick-bottom{display:grid;gap:10px}.pick-caption{padding:16px;border-radius:15px;background:#ffffffe0;backdrop-filter:blur(14px)}.pick h2{font-size:clamp(22px,1.8vw,30px);line-height:1.2;margin-bottom:10px}.pick time{font-size:14px;color:#55505b}.pick .button{width:100%;padding-inline:14px;font-size:18px;min-height:48px}.empty-state{grid-column:1/-1;padding:48px;background:var(--soft);border-radius:20px}.empty-state p{margin-top:12px}
/* Feature group, reading list and curated topics. */
.featured-section,.saved-section,.curated-section,.manifesto{margin:68px 0}.featured-panel{padding:28px;border-radius:24px;background:radial-gradient(at 10% 5%,#d7dbd422,transparent 60%),radial-gradient(at 90% 80%,#bdb8cd33,transparent 70%),var(--panel)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2{font-size:clamp(26px,2.8vw,42px)}.section-heading>span{font-size:30px}.featured-grid,.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.featured-grid .post-card{background:var(--paper);padding:11px;border-radius:20px;box-shadow:var(--shadow)}.featured-grid .card-title{font-size:20px}.featured-grid .card-meta{font-size:14px}.saved-empty{text-align:center;border-radius:20px;background:var(--soft);padding:36px 20px}.saved-empty p{font-size:28px;letter-spacing:-.03em;margin-bottom:7px}.saved-empty span{font-size:15px;color:var(--muted)}.saved-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.saved-grid:empty{display:none}.saved-card{position:relative;border:1px solid var(--line);border-radius:15px;padding:12px}.saved-card img{width:100%;height:135px;object-fit:cover;border-radius:8px;margin-bottom:10px}.saved-card h3{font-size:20px;line-height:1.3;padding-right:12px}.saved-card button{border:0;background:var(--soft);color:var(--ink);border-radius:50%;position:absolute;right:5px;top:5px;width:32px;height:32px;font-size:21px}.curated-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.curated-topic h3{font-size:24px;margin-bottom:20px}.curated-topic h3 a{display:flex;justify-content:space-between;gap:10px}.mini-card{border-top:1px solid var(--line);padding-block:16px}.mini-card a{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.02em}.mini-card img{width:64px;height:64px;object-fit:cover;border-radius:7px}.manifesto p{font-size:clamp(26px,3vw,44px);line-height:1.25;letter-spacing:-.03em}.manifesto-mark{font-size:70px;display:block;line-height:1.3}
/* Subscription callout and footer. */
.newsletter{margin-top:75px}.newsletter-inner{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:50px;padding:24px 0 60px}.newsletter h2{font-size:clamp(70px,10vw,150px);line-height:.95;letter-spacing:-.06em;overflow-wrap:anywhere}.newsletter-copy{max-width:430px;justify-self:end}.newsletter-copy p{font-size:25px;line-height:1.3;letter-spacing:-.02em}.newsletter .button{font-size:20px;min-height:58px}.site-footer{padding:36px 0 26px;border-top:1px solid var(--line)}.footer-top{display:grid;grid-template-columns:1.2fr 1fr auto;gap:60px;margin-bottom:50px}.footer-brand p{font-size:15px;color:var(--muted);max-width:300px;margin-top:20px}.footer-navigation .nav{align-items:flex-start;justify-content:flex-start;gap:8px 32px}.footer-navigation .nav li{flex:0 0 40%}.footer-actions{display:grid;gap:10px;align-content:start;font-size:15px}.footer-actions label{color:var(--muted)}.footer-actions select{appearance:auto;min-width:140px;background:var(--soft);color:var(--ink);border:1px solid var(--line);padding:8px 12px;border-radius:10px;cursor:pointer}.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:13px;color:var(--muted)}.footer-bottom a:hover{text-decoration:underline}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:12px 24px;border:1px solid var(--line);border-radius:999px;background:var(--ink);color:var(--paper);font-size:15px;z-index:100;transition:opacity .2s,transform .2s;max-width:90vw;text-align:center}.toast.is-visible{opacity:1;transform:translate(-50%,0)}
/* Article, full/compact variants and Ghost editor cards. */
.back-link{display:inline-block;font-size:15px;color:var(--muted);margin:20px 0 30px}.article-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,24%);gap:4.8%;align-items:start;margin-bottom:70px}.article h1{font-size:clamp(42px,5.3vw,84px);line-height:1.09;letter-spacing:-.04em;overflow-wrap:anywhere;margin:0 0 36px}.article-meta{border-top:1px solid var(--line);display:flex;align-items:center;flex-wrap:wrap;gap:10px 17px;font-size:15px;color:var(--muted);padding-top:9px;margin-bottom:22px}.article-meta .save-button{position:static;margin-left:auto;background:var(--soft);color:var(--ink)}.article-excerpt{font-size:clamp(24px,2.6vw,38px);line-height:1.34;letter-spacing:-.03em;margin:0 0 34px}.article-tags{display:flex;flex-wrap:wrap;gap:8px}.article-tags a{background:var(--soft);border-radius:999px;padding:5px 13px;font-size:15px}.article-tags a:nth-child(3n+1){background:#fce2d5;color:#30222b}.article-tags a:nth-child(3n+2){background:#efe2c5;color:#302b22}.article-tags a:nth-child(3n+3){background:#e6dafa;color:#30223b}.article-cover{margin:0}.article-cover img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:14px}.article-cover figcaption{font-size:12px;color:var(--muted);text-align:right;margin-top:8px}.article-cover figcaption a{text-decoration:underline}.article-no-image .article-header{display:block;max-width:1100px;margin-inline:auto}.article-full .article-header,.article-compact .article-header{display:flex;flex-direction:column;gap:36px}.article-full .article-intro,.article-compact .article-intro{max-width:1100px;margin-inline:auto;width:100%}.article-full .article-cover,.article-compact .article-cover{width:100%}.article-full .article-cover img{aspect-ratio:2/1}.article-compact .article-header{max-width:850px;margin-inline:auto}.article-compact .article-cover img{aspect-ratio:16/9}.article-compact h1{font-size:clamp(40px,5vw,72px)}.article-toc{max-width:760px;width:calc(100% - var(--gutter)*2);margin:0 auto 35px;background:var(--soft);border-radius:12px;padding:18px 22px}.article-toc summary{cursor:pointer;font-size:17px;font-weight:600}.article-toc nav{display:grid;gap:8px;padding-top:14px}.article-toc a{font-size:15px;line-height:1.4;color:var(--muted)}.article-toc a:hover{color:var(--ink);text-decoration:underline}.article-toc .toc-sub{padding-left:18px}.gh-content{--content-width:760px;--wide-width:1100px;display:grid;grid-template-columns:[full-start] minmax(var(--gutter),1fr) [wide-start] minmax(0,calc((var(--wide-width) - var(--content-width))/2)) [main-start] minmax(0,var(--content-width)) [main-end] minmax(0,calc((var(--wide-width) - var(--content-width))/2)) [wide-end] minmax(var(--gutter),1fr) [full-end];font-size:21px;line-height:1.65;overflow-wrap:break-word}.gh-content>*{grid-column:main;min-width:0}.gh-content p,.gh-content ul,.gh-content ol,.gh-content blockquote,.gh-content pre,.gh-content figure,.gh-content table{margin-top:0;margin-bottom:1.5em}.gh-content h2{font-size:clamp(29px,3vw,42px);margin:1.1em 0 .6em}.gh-content h3{font-size:clamp(25px,2.6vw,32px);margin:1em 0 .6em}.gh-content h4{font-size:25px;margin:1em 0 .6em}.gh-content h5,.gh-content h6{font-size:22px;margin:1em 0 .6em}.gh-content a:not(.kg-btn):not(.kg-bookmark-container):not(.button){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.gh-content li+li{margin-top:6px}.gh-content hr{width:100%;border:0;border-top:1px solid var(--line);margin:36px 0}.gh-content blockquote{border-left:3px solid var(--accent);padding:8px 0 8px 28px;font-size:28px;line-height:1.4}.gh-content blockquote p:last-child{margin-bottom:0}.gh-content code{font-size:.84em;background:var(--soft);padding:3px 5px;border-radius:4px}.gh-content pre{padding:24px;background:var(--soft);border-radius:14px;overflow:auto;font-size:16px;line-height:1.6}.gh-content pre code{padding:0;background:none}.gh-content table{border-collapse:collapse;display:block;overflow-x:auto;width:100%;font-size:17px}.gh-content th,.gh-content td{border:1px solid var(--line);padding:12px 16px;white-space:normal}.gh-content th{background:var(--soft)}.gh-content .kg-width-wide{grid-column:wide}.gh-content .kg-width-full{grid-column:full;width:100%}.gh-content .kg-image{max-width:100%;height:auto;margin-inline:auto;border-radius:10px}.gh-content figcaption{font-size:14px;line-height:1.45;text-align:center;color:var(--muted);margin-top:10px}.kg-embed-card{display:flex;flex-direction:column;align-items:center}.kg-embed-card iframe{max-width:100%}.kg-gallery-container{display:flex;flex-direction:column;gap:12px}.kg-gallery-row{display:flex;gap:12px}.kg-gallery-image{flex:1 1 0;min-width:0}.kg-gallery-image img{width:100%;height:100%;object-fit:cover}.kg-bookmark-card{border:1px solid var(--line);border-radius:12px;overflow:hidden}.kg-bookmark-container{display:flex;color:inherit;min-height:140px;text-decoration:none!important}.kg-bookmark-content{padding:22px;flex:1 1 65%;min-width:0}.kg-bookmark-title{font-size:19px;line-height:1.3;font-weight:600}.kg-bookmark-description{font-size:14px;line-height:1.5;color:var(--muted);margin-top:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kg-bookmark-metadata{display:flex;align-items:center;gap:7px;font-size:13px;margin-top:14px;flex-wrap:wrap}.kg-bookmark-icon{width:20px;height:20px}.kg-bookmark-thumbnail{flex:0 1 33%;position:relative;min-width:110px}.kg-bookmark-thumbnail img{width:100%;height:100%;position:absolute;object-fit:cover}.kg-callout-card{border-radius:12px}.kg-toggle-card{border-color:var(--line)}.kg-button-card .kg-btn{background:var(--accent);color:var(--accent-ink);border-radius:999px}.kg-header-card.kg-style-accent{background:var(--accent);color:var(--accent-ink)}.kg-product-card{color:var(--ink)}.kg-audio-card,.kg-file-card{color:var(--ink);background:var(--soft)}.kg-video-card video{max-width:100%;height:auto}.kg-blockquote-alt{border:0!important;font-style:italic;text-align:center}.kg-card+.kg-card{margin-top:12px}.kg-image-card.kg-width-full img{border-radius:0}.content-cta{border:1px solid var(--line);border-radius:24px;background:var(--soft);padding:40px 28px;text-align:center;margin:20px 0 50px}.content-cta h2{margin-top:0}.content-cta p{font-size:18px}.content-cta p:last-child{margin-bottom:0;margin-top:18px}.article-end{width:calc(100% - var(--gutter)*2);max-width:760px;margin:45px auto 70px}.share-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;border-top:1px solid var(--line);padding-top:24px;font-size:16px}.share-row>span{margin-right:auto}.share-row .button{font-size:14px;padding:10px 18px}.comments{margin-top:50px}.post-navigation{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--line);margin-top:48px;padding-top:22px}.post-navigation span{font-size:14px;color:var(--muted)}.post-navigation h2{font-size:24px;line-height:1.25;margin-top:10px}.related{margin-block:70px}
/* Archives, author pages and custom templates. */
.archive,.membership{padding-top:40px}.archive-header{margin-bottom:54px}.archive-header h1{font-size:clamp(48px,7.5vw,120px);letter-spacing:-.05em;line-height:1.06;margin-bottom:25px;overflow-wrap:anywhere}.archive-header p:not(.eyebrow){font-size:clamp(21px,2.6vw,34px);max-width:800px;line-height:1.4}.archive-header.with-image{display:grid;grid-template-columns:1fr 28%;gap:6%;align-items:center}.archive-header.with-image>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px}.author-avatar{border-radius:50%;object-fit:cover;width:120px;height:120px;margin-bottom:24px}.author-links{display:flex;gap:24px;color:var(--muted);font-size:16px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:70px}.directory-card{padding:20px;background:var(--soft);border-radius:20px}.directory-card>img{width:100%;height:200px;object-fit:cover;border-radius:12px;margin-bottom:20px}.directory-card h2{font-size:30px;margin:0 0 10px}.directory-card p{font-size:16px;color:var(--muted)}.directory-author>img{width:100px;height:100px;border-radius:50%}.auth-page{max-width:650px;text-align:center;padding:80px 0 60px}.auth-page h1{font-size:clamp(52px,6vw,88px);letter-spacing:-.05em;margin-bottom:28px}.auth-page>p{font-size:20px;color:var(--muted)}.auth-page>.button{margin-bottom:25px}.member-form{text-align:left;display:grid;gap:12px;margin:35px auto;max-width:460px}.member-form label{font-size:15px}.member-form input{width:100%;min-height:56px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:12px;padding:14px 18px}.member-form .button{min-height:55px}.member-form .form-success,.member-form .form-error,.loading-label{display:none}.member-form.success .form-success,.member-form.error .form-error,.member-form.loading .loading-label{display:block}.member-form.loading .normal-label{display:none}.member-form.loading button{pointer-events:none;opacity:.7}.member-form.success>input,.member-form.success>label,.member-form.success>button{display:none}.form-success{color:var(--ink);border:1px solid var(--line);background:var(--soft);padding:20px;border-radius:10px}.form-error{font-size:15px;color:#be2727}.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:24px;margin-bottom:70px}.tier-card{display:flex;flex-direction:column;border-radius:24px;padding:30px;background:var(--soft);border:1px solid var(--line)}.tier-card:nth-child(2){border-color:var(--ink)}.tier-card h2{font-size:36px;margin-bottom:18px}.tier-card>p{color:var(--muted)}.tier-price{font-size:48px;letter-spacing:-.04em;font-weight:600;margin:18px 0}.tier-price small{font-size:16px;font-weight:400;letter-spacing:0}.tier-yearly{font-size:15px}.tier-card ul{padding-left:20px;margin:16px 0 30px;flex:1}.tier-card li{margin-bottom:10px}.tier-actions{display:grid;gap:12px}.error-page{max-width:1100px;padding-block:90px}.error-page h1{font-size:clamp(56px,8vw,110px);margin-bottom:32px}.error-page>p{font-size:23px;max-width:650px}.error-page .button{margin:15px 10px 0 0}
/* Responsive layouts. */
@media(min-width:1800px){.home-layout{grid-template-columns:minmax(0,1fr) 320px;gap:55px}.hero h1{font-size:155px}.card-title{font-size:25px}.card-meta{font-size:17px}}
@media(max-width:1100px){.nav{gap:15px}.main-navigation{font-size:15px;gap:8px}.main-navigation .button{padding-inline:18px}.hero h1{font-size:9.15vw}.topic-chip{min-height:59px}.topic-chip img{width:59px;height:59px}.topic-chip span{padding:14px 16px}.post-feed{grid-template-columns:repeat(3,minmax(0,1fr))}.home-layout{grid-template-columns:minmax(0,1fr) 26%;gap:3.5%}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-grid .card-title{font-size:21px}.featured-panel{padding:22px}.pick{min-height:520px}.pick-caption{padding:13px}.pick h2{font-size:22px}.pick .button{font-size:16px}.curated-grid{grid-template-columns:1fr}.curated-topic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.curated-topic h3{grid-column:1/-1;margin-bottom:0}.mini-card a{display:block}.mini-card img{width:100%;height:100px;margin-bottom:10px}.newsletter-inner{gap:32px}.footer-top{gap:30px}}
@media(max-width:850px){.header-top{min-height:78px;gap:12px}.brand{font-size:33px}.menu-toggle{display:flex}.main-navigation{display:none;width:100%;padding:20px 0 28px;align-items:stretch;font-size:18px}.menu-open .main-navigation{display:flex;flex-direction:column;gap:18px}.main-navigation .nav{display:grid;gap:5px}.main-navigation .nav a{padding:8px 0}.main-navigation .explore-menu{margin:0}.dropdown-panel{position:static;min-width:0;box-shadow:none;margin-top:10px;padding:18px;border-radius:14px;gap:22px}.main-navigation>.button{align-self:stretch;min-height:48px}.hero{padding-top:25px;padding-bottom:45px}.hero h1{font-size:clamp(58px,10.7vw,90px);margin-bottom:34px}.topic-chip{min-height:50px;font-size:18px}.topic-chip img{width:50px;height:50px}.topic-chip span{padding:12px 15px}.home-layout{grid-template-columns:minmax(0,1fr)}.home-sidebar{display:none}.welcome{margin-bottom:42px}.welcome p{font-size:32px}.post-feed,.layout-balanced .post-feed{grid-template-columns:repeat(3,minmax(0,1fr))}.card-title{font-size:21px}.card-meta{font-size:14px}.featured-grid,.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-section,.saved-section,.curated-section,.manifesto{margin:45px 0}.featured-grid .post-card{padding:14px}.featured-grid .card-title{font-size:24px}.saved-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.manifesto p{font-size:32px}.newsletter-inner{grid-template-columns:1fr;gap:28px}.newsletter h2{font-size:100px}.newsletter-copy{max-width:none;justify-self:start}.footer-top{grid-template-columns:1fr 1fr;gap:32px}.footer-actions{grid-column:2;grid-row:1}.footer-navigation{grid-column:1/-1}.footer-navigation .nav li{flex:0 0 auto}.footer-bottom{font-size:12px}.article-header{grid-template-columns:1fr;gap:30px;margin-bottom:40px}.article-cover img{aspect-ratio:16/10}.article h1{font-size:clamp(42px,7vw,65px)}.article-meta{font-size:14px}.article-excerpt{font-size:28px}.gh-content{font-size:20px;line-height:1.6}.gh-content blockquote{font-size:25px}.archive-header h1{font-size:64px}.archive-header.with-image{grid-template-columns:1fr 30%}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-page{padding-block:60px}.article-toc{margin-bottom:25px}}
@media(max-width:600px){body{font-size:16px}.header-top{min-height:74px}.hero{padding-bottom:36px}.hero h1{font-size:clamp(48px,12.9vw,76px);line-height:1.02;letter-spacing:-.055em;margin-bottom:28px}.hero-compact h1{font-size:45px}.topic-cloud{gap:8px}.topic-chip{min-height:42px;font-size:15px}.topic-chip img{width:42px;height:42px}.topic-chip span{padding:11px 12px}.topic-chip.has-image{border-radius:10px}.section-label{font-size:15px}.welcome p{font-size:27px;line-height:1.29}.welcome{margin-bottom:36px}.post-feed,.layout-balanced .post-feed,.layout-showcase .post-feed{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.layout-showcase .post-feed .post-card:nth-child(6n+1){grid-column:1/-1;grid-row:auto}.layout-showcase .post-feed .post-card:nth-child(6n+1) .card-image-link{aspect-ratio:1.5}.card-title{font-size:19px;line-height:1.25}.card-meta{font-size:12px;line-height:1.5}.card-media .save-button{opacity:1;width:28px;height:28px;right:5px;bottom:5px}.card-media .save-button svg{width:15px;height:15px}.access-label{font-size:10px;left:5px;top:5px;padding:3px 6px}.card-image-link{border-radius:9px}.pagination{margin:30px 0 45px;gap:12px}.pagination .button{font-size:17px;padding:16px 25px}.page-number{font-size:12px}.featured-panel{padding:16px;border-radius:18px}.featured-grid{gap:13px}.featured-grid .post-card{padding:8px;border-radius:12px}.featured-grid .card-title{font-size:18px}.featured-grid .card-meta{font-size:12px}.section-heading h2{font-size:29px}.section-heading{margin-bottom:18px}.saved-empty p{font-size:24px}.saved-empty span{font-size:13px}.saved-empty{padding:28px 20px}.saved-grid{gap:14px}.saved-card h3{font-size:18px}.saved-card img{height:110px}.curated-topic{grid-template-columns:1fr;gap:0}.curated-topic h3{margin-bottom:15px}.mini-card a{display:flex;font-size:18px}.mini-card img{width:70px;height:70px;margin:0;flex:none}.manifesto p{font-size:28px}.manifesto-mark{font-size:60px}.newsletter{margin-top:50px}.newsletter h2{font-size:clamp(64px,17vw,100px)}.newsletter-inner{padding-bottom:35px;gap:24px}.newsletter-copy p{font-size:22px}.newsletter .button{font-size:17px;min-height:50px}.footer-top{gap:24px}.footer-brand p{font-size:13px;margin-top:15px}.footer-actions{font-size:13px}.footer-actions select{min-width:100px}.footer-navigation .nav{gap:3px 20px;font-size:15px}.footer-bottom{display:grid;gap:9px}.article h1{font-size:43px;margin-bottom:25px}.back-link{margin:15px 0 25px}.article-excerpt{font-size:24px;line-height:1.35;margin-bottom:25px}.article-meta{gap:8px 12px;font-size:12px}.article-tags a{font-size:13px}.article-header{gap:28px}.article-cover img{border-radius:11px}.gh-content{font-size:18px;line-height:1.65}.gh-content blockquote{padding-left:20px;font-size:23px}.gh-content pre{padding:18px;font-size:14px}.gh-content h2{font-size:30px}.gh-content h3{font-size:26px}.kg-bookmark-container{flex-direction:column}.kg-bookmark-thumbnail{flex:auto;min-height:160px;order:-1}.kg-bookmark-content{padding:18px}.kg-gallery-container,.kg-gallery-row{gap:6px}.post-navigation{gap:20px}.post-navigation h2{font-size:20px}.share-row>span{width:100%;margin-bottom:4px}.article-end{margin-bottom:45px}.content-cta{padding:30px 20px}.content-cta h2{font-size:32px}.related-grid{gap:25px 14px}.archive{padding-top:25px}.archive-header{margin-bottom:30px}.archive-header h1{font-size:48px}.archive-header.with-image{grid-template-columns:1fr}.archive-header.with-image>img{max-height:260px}.archive-header p:not(.eyebrow){font-size:23px}.directory-grid{grid-template-columns:1fr}.directory-card h2{font-size:29px}.tier-card{padding:26px}.auth-page h1{font-size:54px}.auth-page>p{font-size:18px}.error-page{padding-block:55px}.error-page h1{font-size:56px}.error-page>p{font-size:20px}}
@media(max-width:360px){.post-feed,.layout-balanced .post-feed,.featured-grid,.related-grid{grid-template-columns:1fr}.card-title{font-size:23px}.card-meta{font-size:14px}.hero h1{font-size:44px}.footer-top{grid-template-columns:1fr}.footer-actions{grid-column:1;grid-row:auto}.saved-grid{grid-template-columns:1fr}}
@media(hover:none){.card-media .save-button{opacity:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.site-header,.site-footer,.newsletter,.save-button,.article-toc,.share-row,.post-navigation,.related,.saved-section,.toast{display:none!important}.article-header{display:block}.article-cover{max-width:400px;margin-top:30px}.gh-content{display:block;max-width:760px;margin:auto}.article{color:#000;background:#fff}.gh-content a{text-decoration:underline}}

/* Keep navigation available when JavaScript is disabled. */
@media(max-width:850px){html:not(.js) .menu-toggle{display:none}html:not(.js) .main-navigation{display:flex;flex-direction:column;align-items:stretch}}

/* ---- BeautynFacts edition additions ---- */
.font-editorial{--heading:var(--gh-font-heading,"Playfair Display",Georgia,'Times New Roman',serif)}
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;color:var(--muted);margin:8px 0 18px}
.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--ink);text-decoration:underline}
.breadcrumbs [aria-current]{color:var(--ink);max-width:52ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.article-meta a{text-decoration:underline;text-underline-offset:3px}
.article-meta .reviewed-by a{color:var(--ink);font-weight:600}
.article-note{max-width:760px;margin:0 auto 22px;padding:14px 18px;border-radius:var(--radius);background:var(--soft);border-left:4px solid var(--line);font-size:16px}
.note-affiliate{border-left-color:var(--accent)}
.note-medical{border-left-color:#4a7bd0}
.faq-item{border:1px solid var(--line);border-radius:12px;padding:0 18px;margin:12px 0}
.faq-item summary{cursor:pointer;font-weight:650;font-size:1.05em;padding:14px 0;list-style-position:outside}
.faq-item[open] summary{border-bottom:1px solid var(--line);margin-bottom:10px}
.card-hub{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:12px 0 4px}
.card-hub:hover{color:var(--ink)}
.card-meta span{margin-left:8px}
.topic-chip small{margin-left:6px;opacity:.7;font-size:.8em}
.hub-section{margin:56px 0 0}
.hub-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-top:2px solid var(--ink);padding-top:14px}
.hub-heading h2{font-size:clamp(26px,3vw,38px)}
.hub-more{font-weight:600;white-space:nowrap}.hub-more:hover{text-decoration:underline}
.hub-intro{color:var(--muted);max-width:760px;margin:10px 0 0}
.hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 22px;margin-top:22px}
@media(max-width:1000px){.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.hub-grid{grid-template-columns:minmax(0,1fr)}}
.author-box{max-width:760px;margin:36px auto 0;border-top:1px solid var(--line);padding-top:20px;display:grid;gap:16px}
.author-row{display:flex;gap:14px;align-items:flex-start}.author-row img{border-radius:50%;object-fit:cover}
.author-role{margin:0;font-weight:650}.author-role a{text-decoration:underline;text-underline-offset:3px}
.author-bio{margin:4px 0 0;color:var(--muted);font-size:15px}
.article-tags a{text-transform:none}
/* BeautynFacts palette for hub chips (replaces the lime/purple/teal reference palette) */
.topic-chip:nth-child(9n+1){--chip:#fce2d5;--chip-ink:#2a1a14}
.topic-chip:nth-child(9n+2){--chip:#f3c9b6;--chip-ink:#2a1a14}
.topic-chip:nth-child(9n+3){--chip:#f0ddbc;--chip-ink:#2a1a14}
.topic-chip:nth-child(9n+4){--chip:#c62800;--chip-ink:#fff}
.topic-chip:nth-child(9n+5){--chip:#3d2b28;--chip-ink:#fff}
.topic-chip:nth-child(9n+6){--chip:#f4c67f;--chip-ink:#2a1a14}
.topic-chip:nth-child(9n+7){--chip:#ffc2cf;--chip-ink:#2a1a14}
.topic-chip:nth-child(9n+8){--chip:#7a3b2e;--chip-ink:#fff}
:root{--body:var(--gh-font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif)}

/* ---- Homepage matched to the reference layout (BeautynFacts colours) ---- */
.font-modern{--heading:var(--gh-font-heading,"Inter",-apple-system,"Segoe UI",Roboto,Arial,sans-serif);--body:var(--gh-font-body,"Inter",-apple-system,"Segoe UI",Roboto,Arial,sans-serif)}
.hero h1{font-weight:600;letter-spacing:-.05em}
.header-cta{margin-left:4px}
.topic-cloud{display:flex;flex-wrap:wrap;gap:16px}
.topic-chip{min-height:104px;font-size:clamp(20px,1.9vw,30px);font-weight:500}
.topic-chip span{padding:18px 26px}
.topic-chip img{width:104px;height:104px}
.topic-chip.has-image{border-radius:16px}
.card-title{font-weight:600;letter-spacing:-.02em}
.card-meta{display:grid;gap:2px;color:var(--muted);font-size:15px;margin-top:8px}
.card-meta a{color:inherit}.card-meta a:hover{color:var(--ink)}
.featured-panel{background:radial-gradient(at 12% 8%,#f7d9cb,transparent 55%),radial-gradient(at 88% 92%,#e6e0f0,transparent 60%),radial-gradient(at 55% 45%,#f4efe8,transparent 70%),var(--panel)}
html[data-scheme="dark"] .featured-panel{background:var(--panel)}
.featured-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:14px 10px 30px}
.section-heading h2{font-size:clamp(32px,3.4vw,54px);font-weight:500;letter-spacing:-.04em}
.see-all{font-size:20px;white-space:nowrap}.see-all:hover{text-decoration:underline}
.saved-empty{padding:56px 24px}
.saved-empty p{font-size:clamp(22px,2.4vw,34px);line-height:1.4}
.pin-chip{display:inline-flex;align-items:center;gap:8px;background:var(--paper);border-radius:999px;padding:4px 18px;margin:0 6px;font-size:.85em;vertical-align:middle;box-shadow:var(--shadow)}
.pin-chip svg{width:.85em;height:.85em;fill:currentColor}
.curated-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.curated-topic{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:26px;background:var(--cur)}
.curated-topic:nth-child(6n+1){--cur:#fde3d3}.curated-topic:nth-child(6n+2){--cur:#ffc9d4}.curated-topic:nth-child(6n+3){--cur:#f6dcb3}
.curated-topic:nth-child(6n+4){--cur:#f3c9b6}.curated-topic:nth-child(6n+5){--cur:#e8dcd1}.curated-topic:nth-child(6n+6){--cur:#ffd8a8}
.mini-card{border:0;padding:0}
.mini-link{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;background:var(--paper);border-radius:18px;padding:16px}
.mini-text{display:grid;gap:4px;min-width:0}
.mini-title{font-weight:600;font-size:18px;line-height:1.3;letter-spacing:-.015em;color:var(--ink)}
.mini-meta{font-size:14px;color:var(--muted)}
.mini-link img{width:72px;height:72px;border-radius:10px;object-fit:cover;flex:none;margin:0}
.curated-more{margin-top:auto;text-align:center;font-size:20px;padding:10px 0 4px;color:#15131a}
.curated-more:hover{text-decoration:underline}
.manifesto p{font-size:clamp(28px,3.1vw,50px);line-height:1.22;letter-spacing:-.03em}
.continue{margin:64px 0 0}
.continue-banner{position:relative;border-radius:28px;overflow:hidden;min-height:440px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:22px;isolation:isolate;background:linear-gradient(135deg,#f6d3c8,#c62800)}
.continue-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.continue-pill{align-self:flex-start;background:#ffffffd9;backdrop-filter:blur(10px);color:#15131a;border-radius:999px;padding:8px 18px;font-size:17px;max-width:min(620px,100%)}
.continue-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:flex-end}
.continue-actions .button{font-size:clamp(18px,1.7vw,26px);min-height:68px;padding:12px 36px}
.button-glass{background:#ffffff66;color:#15131a;backdrop-filter:blur(12px)}
.pagination .button-xl{font-size:clamp(20px,1.8vw,28px);min-height:100px;padding:20px 70px;min-width:min(460px,100%)}
@media(max-width:1200px){.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.curated-grid{grid-template-columns:1fr}.continue-banner{min-height:340px}}
@media(max-width:700px){.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-chip{min-height:64px;font-size:18px}.topic-chip img{width:64px;height:64px}.topic-chip span{padding:12px 16px}.section-heading{flex-direction:column;margin:6px 4px 18px}.pagination .button-xl{min-height:68px;padding:14px 28px}.continue-actions{justify-content:stretch}.continue-actions .button{flex:1}}
.home-template .pagination .page-number{display:none}
.continue-image{object-position:center 28%}
/* Banner: blush fade over the left side keeps the pill readable and hides text baked into cover photos */
.continue-banner:not(.no-image):before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f7e4dc 0%,#f7e4dc 40%,#f7e4dccc 52%,transparent 72%)}
html[data-scheme="dark"] .continue-banner:not(.no-image):before{background:linear-gradient(90deg,#211c1b 0%,#211c1b 40%,#211c1bcc 52%,transparent 72%)}
.continue-image{z-index:-2}
@media(max-width:700px){.continue-banner:not(.no-image):before{background:linear-gradient(180deg,#f7e4dcf2 0%,#f7e4dc99 45%,transparent 70%)}}

/* ---- Post content alignment: one shared column for breadcrumb, header, notes, TOC, body and footer blocks ---- */
.article-full .breadcrumbs,.article-compact .breadcrumbs,
.article-full .article-intro,.article-compact .article-intro{max-width:760px;margin-left:auto;margin-right:auto}
.article-full .article-header,.article-compact .article-header{display:block}
.article-full .article-intro h1,.article-compact .article-intro h1{font-size:clamp(36px,4.6vw,58px);line-height:1.08}
.article-full .article-cover{margin-top:28px}
.article-cover figcaption{text-align:center}
.article-toc,.article-note,.article-end,.author-box,.article-tags,.share-row{max-width:760px;margin-left:auto;margin-right:auto}
/* Justified body text with hyphenation so lines stay even without wide word gaps */
.gh-content>p,.gh-content li,.gh-content blockquote,.gh-content blockquote p,.gh-content .faq-item p,.gh-content dd{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}
.gh-content h1,.gh-content h2,.gh-content h3,.gh-content h4,.gh-content figcaption,.gh-content th,.gh-content td,.gh-content .faq-item summary{text-align:left;-webkit-hyphens:manual;hyphens:manual}
.gh-content figcaption{text-align:center}
.gh-content ul,.gh-content ol{padding-left:1.4em}
.gh-content li::marker{color:var(--muted)}
/* Bullets and numbered steps stay left-aligned: short justified lines open wide word gaps */
.gh-content li{text-align:left}
.gh-content li>p{text-align:left}
/* Hub chips on one line: compact chips, no wrapping; narrow screens scroll the row sideways */
.topic-cloud{flex-wrap:nowrap;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding-bottom:4px}
.topic-cloud::-webkit-scrollbar{display:none}
.topic-chip{flex:none;min-height:72px;font-size:clamp(16px,1.2vw,22px);scroll-snap-align:start}
.topic-chip img{width:72px;height:72px}
.topic-chip span{padding:12px 18px;white-space:nowrap}
.topic-chip.has-image{border-radius:14px}
.topic-chip:hover{transform:translateY(-2px)}
@media(max-width:700px){.topic-chip{min-height:56px;font-size:16px}.topic-chip img{width:56px;height:56px}.topic-chip span{padding:10px 14px}}
/* Sidebar: newest guide from each hub (replaces the single pick card) */
.hub-latest{position:sticky;top:22px;padding-top:2px}
.hub-latest-title{border-top:1px solid var(--line);padding:8px 0 18px;font-family:var(--body);font-size:15px;font-weight:400;letter-spacing:0}
.hub-latest-list{display:flex;flex-direction:column;gap:22px}
.latest-row{display:flex;align-items:flex-start;gap:14px}
.latest-text{flex:1;min-width:0}
.latest-hub{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink)}
.latest-hub:before{content:"\\";margin-right:3px;color:var(--accent)}
.latest-hub:hover{color:var(--accent)}
.latest-title{margin-top:7px;font-size:clamp(17px,1.2vw,20px);font-weight:600;line-height:1.28;letter-spacing:-.015em}
.latest-title a:hover{color:var(--accent)}
.latest-author{display:block;margin-top:7px;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.latest-thumb{position:relative;flex:none;width:84px;height:92px;margin:0 7px 7px 0}
.latest-thumb:before{content:"";position:absolute;inset:7px -7px -7px 7px;background:var(--accent-soft,#fde3d3);border-radius:4px}
.latest-thumb img,.latest-thumb-empty{position:relative;z-index:1;width:84px;height:92px;object-fit:cover;border-radius:4px;display:grid;place-items:center;background:var(--soft)}
.latest-thumb:hover img{opacity:.9}
@media(max-width:1000px){.hub-latest{position:static;margin-top:48px}}
:root{--accent-soft:#fde3d3}html[data-scheme="dark"]{--accent-soft:#3a1f17}
@media(max-width:850px){.home-sidebar{display:block}}
/* Sticky only when all six rows fit on screen */
.hub-latest{position:static}
@media(min-height:1000px) and (min-width:851px){.hub-latest{position:sticky;top:22px}}


/* ---- Article side panel in the empty right gutter (article column untouched) ---- */
.post-layout{position:relative}
.post-sidebar{display:flex;flex-direction:column;gap:34px}
.post-sidebar-inner{display:flex;flex-direction:column;gap:34px}
.side-block{display:flex;flex-direction:column;gap:14px}
.side-subtitle{display:block;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--line);padding-top:10px}
.side-title{font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.01em;margin:0}
.side-author{display:flex;gap:14px;align-items:flex-start}
.side-author img,.side-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:none}
.side-avatar{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:0;overflow:hidden}
.side-avatar:first-letter{font-size:26px}
.side-bio{margin:6px 0 0;font-size:14.5px;line-height:1.45;color:var(--muted)}
.side-author:hover .side-title,.side-pick:hover .side-title{color:var(--accent)}
.side-pick{display:grid;gap:9px}
.side-pick img{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:10px}
.side-hub{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}
.side-toc nav{display:flex;flex-direction:column;border-left:2px solid var(--line)}
.side-toc nav a{padding:6px 0 6px 14px;margin-left:-2px;border-left:2px solid transparent;font-size:14.5px;line-height:1.35;color:var(--muted)}
.side-toc nav a:hover{color:var(--ink)}
.side-toc nav a.is-active{color:var(--ink);font-weight:600;border-left-color:var(--accent)}
.side-subscribe{padding:20px;border-radius:16px;background:var(--soft)}
.side-subscribe form{display:grid;gap:10px}
.side-subscribe input{padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
/* Wide screens: panel lives in the gutter to the right of the centred 760px column, runs the article's full height */
@media(min-width:1540px){
  .post-sidebar{position:absolute;top:0;bottom:0;left:calc(50% + 380px + 56px);width:300px}
  .side-sticky{position:sticky;top:24px}
}
/* Smaller screens: no gutter, so the panel follows the article instead of squeezing it */
@media(max-width:1539px){
  .post-sidebar{max-width:760px;margin:48px auto 0;padding-inline:max(16px,env(safe-area-inset-left))}
  .side-toc{display:none!important}
  .side-featured{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .side-featured .side-subtitle{grid-column:1/-1}
}
@media(max-width:600px){.side-featured{grid-template-columns:1fr}}
.side-avatar{display:block;text-align:center;line-height:64px;white-space:nowrap}
/* Post cover: 16:9 crop (max 760px tall), WebP <picture>, image offset 7px up-left over a blush block */
.article .article-cover{position:relative;margin-top:28px}
.article .article-cover .cover-frame{position:relative;display:block;margin:7px 0 0 7px;border-radius:14px}
.article .article-cover .cover-frame:before{content:"";position:absolute;inset:0;background:var(--accent-soft);border-radius:inherit}
.article .article-cover picture{display:block}
.article .article-cover .cover-image{position:relative;z-index:1;right:7px;bottom:7px;display:block;width:100%;height:auto;aspect-ratio:16/9;max-height:760px;object-fit:cover;border-radius:14px}
.article .article-cover figcaption{margin-top:12px}
/* Post cover rendered at 1256 x 707 (16:9), centred; scales down on smaller screens */
.article .article-cover .cover-frame{width:min(1256px,100% - 7px);max-width:1256px;margin:7px auto 0;transform:translateX(3.5px)}
.article .article-cover .cover-image{width:100%;aspect-ratio:16/9;max-height:none}
/* Hub (category) header image: small, whole image shown at its own shape, never cropped */
.archive-header.with-image{grid-template-columns:minmax(0,1fr) auto}
.archive-header .hub-cover{margin:0;justify-self:end;width:min(360px,100%)}
.archive-header .hub-cover img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:14px;background:var(--soft)}
@media(max-width:850px){.archive-header.with-image{grid-template-columns:1fr}.archive-header .hub-cover{justify-self:start;width:min(360px,100%)}}
/* Hub image frame: 428 x 242, whole image shown (contain), soft background fills any gap */
.archive-header .hub-cover{width:min(428px,100%)}
.archive-header .hub-cover img{width:100%;height:auto;aspect-ratio:428/242;object-fit:contain}
@media(max-width:850px){.archive-header .hub-cover{width:min(428px,100%)}}
/* "Latest from every hub": sticky panel, list scrolls inside it on any screen height */
@media(min-width:851px){
  .hub-latest{position:sticky;top:22px;display:flex;flex-direction:column;max-height:calc(100vh - 44px)}
  .hub-latest-title{flex:none}
  .hub-latest-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 10px 12px 0;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
  .hub-latest-list::-webkit-scrollbar{width:6px}
  .hub-latest-list::-webkit-scrollbar-thumb{background:var(--line);border-radius:6px}
  .hub-latest-list::-webkit-scrollbar-track{background:transparent}
}
/* ---- Homepage sidebar "Latest Articles" (reference style): left rule, compact rows, small square thumbs, rests at screen bottom ---- */
.home-sidebar{display:flex;align-items:flex-end;border-left:1px solid var(--line);padding-left:32px}
.latest-panel{position:sticky;bottom:0;width:100%}
.latest-panel-inner{padding-bottom:24px}
.latest-panel-title{font-family:var(--heading);font-size:20px;font-weight:600;letter-spacing:-.015em;margin:0 0 16px}
.latest-panel-list{display:flex;flex-direction:column}
.lp-row{display:flex;flex-direction:row-reverse;align-items:flex-start;gap:14px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}
.lp-row:last-child{margin-bottom:0}
.lp-thumb{position:relative;flex:none;width:60px;height:60px;margin:0;border-radius:6px;overflow:hidden;background:var(--soft)}
.lp-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.lp-cover-link{position:absolute;inset:0;z-index:1}
.lp-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.lp-title{margin:0;font-size:16px;font-weight:500;line-height:1.35;letter-spacing:-.01em}
.lp-title a:hover{color:var(--accent)}
.lp-meta{font-size:12.5px;font-weight:300;opacity:.6}
.lp-meta a:hover{text-decoration:underline}
/* Phones and tablets: normal list after the main content, no side rule */
@media(max-width:850px){.home-sidebar{display:block;border-left:0;padding-left:0;margin-top:40px}.latest-panel{position:static}}

/* Text column takes priority over the wide side tracks, so phones and tablets get full-width text (desktop unchanged at 760px) */
.gh-content{grid-template-columns:[full-start] minmax(var(--gutter),1fr) [wide-start] minmax(0,calc((var(--wide-width) - var(--content-width))/2)) [main-start] min(var(--content-width),calc(100% - var(--gutter)*2)) [main-end] minmax(0,calc((var(--wide-width) - var(--content-width))/2)) [wide-end] minmax(var(--gutter),1fr) [full-end]}
/* Excerpt now opens .post-layout, so the gutter side panel (top:0) starts level with it */
.post-layout>.article-excerpt{width:calc(100% - var(--gutter)*2);max-width:760px;margin:0 auto 30px;text-align:justify;-webkit-hyphens:auto;hyphens:auto}
.article:has(.post-layout>.article-excerpt) .article-header{margin-bottom:22px}
.article-no-image:has(.post-layout>.article-excerpt) .article-header{margin-bottom:8px}
@media(max-width:767px){.post-layout>.article-excerpt{margin-bottom:24px}.article:has(.post-layout>.article-excerpt) .article-header{margin-bottom:18px}}
/* FAQ accordion: native outside marker replaced by a chevron on the right, centred on the question; flips when open */
.gh-content .faq-item{padding:0 22px;transition:border-color .2s}
.gh-content .faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none;padding:18px 0;line-height:1.35}
.gh-content .faq-item summary::-webkit-details-marker{display:none}
.gh-content .faq-item summary::marker{content:""}
.gh-content .faq-item summary::after{content:"";flex:none;width:9px;height:9px;margin:0 4px 4px 0;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);opacity:.65;transition:transform .2s,margin .2s,opacity .2s}
.gh-content .faq-item[open] summary::after{margin:4px 4px 0 0;transform:rotate(-135deg);opacity:1;color:var(--accent)}
.gh-content .faq-item summary:hover::after{opacity:1}
.gh-content .faq-item summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:6px}
.gh-content .faq-item[open]{border-color:var(--accent-soft)}
.gh-content .faq-item>:last-child{margin-bottom:20px}
@media(max-width:767px){.gh-content .faq-item{padding:0 16px}.gh-content .faq-item summary{padding:15px 0;gap:14px}}
@media(prefers-reduced-motion:reduce){.gh-content .faq-item summary::after{transition:none}}
/* "In brief" list above the Pinned area: hub, title, date */
.briefs-section{margin:45px 0}
.briefs-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px}
.brief-item{display:flex;flex-direction:column;gap:6px;padding:18px 0 20px;border-top:1px solid var(--line)}
.brief-hub{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.brief-title{font-family:var(--heading);font-size:19px;font-weight:600;line-height:1.3;letter-spacing:-.01em;transition:color .2s}
.brief-item:hover .brief-title{color:var(--accent)}
.brief-date{font-size:13px;color:var(--muted)}
@media(max-width:1000px){.briefs-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.briefs-list{grid-template-columns:1fr}}
@media print{.briefs-section{display:none}}
/* Homepage sidebar stack: Latest Articles, then Pinned area; the pair rests at the screen bottom (sticky moved off .latest-panel) */
.sidebar-stack{position:sticky;bottom:0;width:100%;padding-bottom:24px}
:is(.home-sidebar,.post-sidebar) .latest-panel{position:static}
:is(.home-sidebar,.post-sidebar) .latest-panel-inner{padding-bottom:0}
:is(.home-sidebar,.post-sidebar) .saved-section{margin:0 0 34px}
:is(.home-sidebar,.post-sidebar) .saved-section .section-label{border-top:0;padding:0 0 14px;font-family:var(--heading);font-size:20px;font-weight:600;letter-spacing:-.015em}
:is(.home-sidebar,.post-sidebar) .saved-section .text-button{font-family:var(--body);font-size:12.5px;font-weight:400}
:is(.home-sidebar,.post-sidebar) .saved-empty{border-radius:12px;padding:16px;text-align:left}
:is(.home-sidebar,.post-sidebar) .saved-empty p{font-size:15px;letter-spacing:0;line-height:1.55;margin-bottom:4px}
:is(.home-sidebar,.post-sidebar) .saved-empty span{font-size:12.5px}
:is(.home-sidebar,.post-sidebar) .saved-grid{grid-template-columns:1fr;gap:0;max-height:300px;overflow-y:auto}
:is(.home-sidebar,.post-sidebar) .saved-card{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 32px 12px 0;margin-bottom:12px}
:is(.home-sidebar,.post-sidebar) .saved-card:last-child{margin-bottom:0}
:is(.home-sidebar,.post-sidebar) .saved-card a{display:flex;flex-direction:row-reverse;align-items:flex-start;gap:14px}
:is(.home-sidebar,.post-sidebar) .saved-card img{flex:none;width:60px;height:60px;margin:0;border-radius:6px}
:is(.home-sidebar,.post-sidebar) .saved-card h3{flex:1;min-width:0;margin:0;padding:0;font-size:16px;font-weight:500;line-height:1.35;letter-spacing:-.01em}
:is(.home-sidebar,.post-sidebar) .saved-card a:hover h3{color:var(--accent)}
:is(.home-sidebar,.post-sidebar) .saved-card button{top:0;right:0;width:24px;height:24px;font-size:16px;line-height:1}
@media(max-width:850px){.sidebar-stack{position:static;padding-bottom:0}}
/* Headline ticker under the featured panel: two identical runs, track slides by half its width for a seamless loop */
.ticker{margin:28px 0 0;padding:14px 0;border-block:1px solid var(--line);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.ticker-track{display:flex;width:max-content;animation:bnf-ticker 180s linear infinite}
.ticker:hover .ticker-track,.ticker:focus-within .ticker-track{animation-play-state:paused}
.tk{display:flex;align-items:center;white-space:nowrap;font-family:var(--heading);font-size:17px;font-weight:500;letter-spacing:-.005em}
.tk a{transition:color .2s}
.tk a:hover,.tk a:focus-visible{color:var(--accent)}
.tk .dia{margin:0 22px;font-size:.6em;color:var(--accent)}
@keyframes bnf-ticker{to{transform:translateX(-50%)}}
@media(max-width:600px){.tk{font-size:15px}.tk .dia{margin:0 16px}}
@media(prefers-reduced-motion:reduce){.ticker{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.ticker-track{animation:none}.tk[aria-hidden]{display:none}}
@media print{.ticker{display:none}}
.featured-section:has(+.ticker){margin-bottom:28px}
.featured-section+.ticker{margin-top:0}
/* Hub grid hero (replaces the big headline and the hub chips): image card per hub; on wide screens the hovered or focused card widens, the first is wide by default */
.hero.hero-hubs{padding:4px 0 46px}
.hub-grid{display:flex;gap:12px;height:clamp(300px,25vw,400px)}
.hub-card{position:relative;flex:1 1 0;min-width:0;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;border-radius:18px;background:var(--hub,linear-gradient(160deg,#ecd9c6,#b9877a));color:#fff;transition:flex-grow .5s cubic-bezier(.2,.7,.2,1)}
.hub-card:first-child,.hub-grid:has(.hub-card:is(:hover,:focus-visible)) .hub-card:is(:hover,:focus-visible){flex-grow:2.6}
.hub-grid:has(.hub-card:is(:hover,:focus-visible)) .hub-card:first-child:not(:hover,:focus-visible){flex-grow:1}
.hub-card-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.hub-card:hover .hub-card-image{transform:scale(1.04)}
.hub-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 38%,rgb(14 11 16 / 80%))}
.hub-card-text{display:grid;gap:5px;width:100%;padding:18px 18px 20px}
.hub-card-name{font-family:var(--heading);font-size:clamp(19px,1.45vw,24px);font-weight:600;line-height:1.15;letter-spacing:-.02em;text-wrap:balance}
.hub-card-count{font-size:13.5px;opacity:.85}
.hub-card:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:1100px){.hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:auto}.hub-card{aspect-ratio:16/10}}
@media(max-width:600px){.hero.hero-hubs{padding:14px 0 32px}.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hub-card{aspect-ratio:4/3;border-radius:14px}.hub-card-text{padding:12px 12px 13px;gap:2px}.hub-card-name{font-size:16px}.hub-card-count{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hub-card,.hub-card-image{transition:none}}
/* "How our guides work": three short promises and a note, in place of the large manifesto paragraph */
.guide-standards{margin:56px 0}
.standards-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0;padding:6px 0 0;list-style:none;counter-reset:std}
.standards-list li{counter-increment:std}
.standards-list li::before{content:counter(std,decimal-leading-zero);display:block;margin-bottom:10px;font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--accent)}
.standards-list h3{margin:0 0 8px;font-family:var(--heading);font-size:clamp(20px,1.6vw,24px);font-weight:600;line-height:1.25;letter-spacing:-.015em}
.standards-list p{margin:0;font-size:16.5px;line-height:1.55;color:var(--muted)}
.standards-note{margin:30px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:15px;line-height:1.5;color:var(--muted)}
.standards-note a{color:var(--ink);font-weight:600;white-space:nowrap;transition:color .2s}
.standards-note a:hover{color:var(--accent)}
@media(max-width:850px){.guide-standards{margin:45px 0}.standards-list{grid-template-columns:1fr;gap:24px}}
/* Homepage sidebar widgets under Latest Articles: About, Featured, Popular Tags, Top Authors (titles match Latest Articles) */
.side-widget{margin-top:36px}
.widget-title{margin:0 0 14px;font-family:var(--heading);font-size:20px;font-weight:600;letter-spacing:-.015em}
.widget-about-text{margin:0 0 12px;font-size:15px;line-height:1.6;color:var(--muted)}
.widget-links{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13.5px;font-weight:600}
.widget-links a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;transition:color .2s}
.widget-links a:hover{color:var(--accent)}
.wf-item{display:flex;flex-direction:row-reverse;align-items:flex-start;gap:14px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}
.wf-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.wf-item img{flex:none;width:60px;height:60px;object-fit:cover;border-radius:6px}
.wf-item:first-of-type{display:block}
.wf-item:first-of-type img{width:100%;height:auto;aspect-ratio:16/9;margin-bottom:10px;border-radius:10px}
.wf-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.wf-hub{font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.wf-title{font-size:16px;font-weight:500;line-height:1.35;letter-spacing:-.01em;transition:color .2s}
.wf-item:first-of-type .wf-title{font-family:var(--heading);font-size:18px;font-weight:600}
.wf-item:hover .wf-title{color:var(--accent)}
.wt-list{display:flex;flex-wrap:wrap;gap:8px}
.wt-tag{display:inline-block;padding:6px 12px;border:1px solid var(--line);border-radius:999px;font-size:13.5px;line-height:1.3;transition:border-color .2s,color .2s}
.wt-tag::first-letter{text-transform:uppercase}
.wt-tag:hover{border-color:var(--accent);color:var(--accent)}
.wt-count{margin-left:6px;font-size:12px;color:var(--muted)}
.wa-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.wa-item:last-child{border-bottom:0}
.wa-avatar{flex:none;width:44px;height:44px;border-radius:50%;object-fit:cover}
.wa-initial{display:block;overflow:hidden;white-space:nowrap;text-align:center;line-height:44px;font-size:0;font-weight:700;background:#fce2d5;color:#7a2a12}
.wa-initial::first-letter{font-size:18px}
.wa-item:nth-of-type(5n+2) .wa-initial{background:#f0ddbc;color:#5c4210}
.wa-item:nth-of-type(5n+3) .wa-initial{background:#d9c9fa;color:#3d2a73}
.wa-item:nth-of-type(5n+4) .wa-initial{background:#ffa6ba;color:#6b1426}
.wa-item:nth-of-type(5n+5) .wa-initial{background:#a2f1b5;color:#18522a}
.wa-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.wa-name{font-size:15.5px;font-weight:600;line-height:1.3;transition:color .2s}
.wa-count{font-size:12.5px;color:var(--muted)}
.wa-arrow{color:var(--muted);transition:transform .2s,color .2s}
.wa-item:hover .wa-name,.wa-item:hover .wa-arrow{color:var(--accent)}
.wa-item:hover .wa-arrow{transform:translateX(3px)}
@media(prefers-reduced-motion:reduce){.wa-arrow{transition:none}}

/* ---- Homepage front (Hero size "news"): partials/news-grid.hbs ----
   Photos show whole (contain) in 16:9 boxes, the shape of most guide images, so text in them is not cut off */
.front{--front-serif:Georgia,"Times New Roman",serif;display:grid;grid-template-columns:minmax(0,1fr);gap:32px;padding:30px 0 64px}
.front-tag{display:inline-block;margin:0 0 7px;font-size:11.5px;font-weight:700;line-height:1.3;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.front-title,.front-card-title,.front-teaser-title{margin:0;font-family:var(--front-serif);font-weight:700;letter-spacing:-.01em}
.front-title a,.front-card-title a,.front-teaser-title a{transition:color .2s}
.front-title a:hover,.front-card-title a:hover,.front-teaser-title a:hover{color:var(--accent)}
.front-meta{margin:10px 0 0;font-size:12.5px;line-height:1.5;color:var(--muted)}
.front-by{display:block;margin-bottom:2px;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.front-by a:hover{color:var(--accent)}
.front-media{display:block;overflow:hidden;border-radius:6px;background:var(--soft)}
.front-media img{width:100%;height:100%;object-fit:contain;transition:transform .45s}
.front-media:hover img{transform:scale(1.03)}
.front-lead{text-align:center}
/* "Featured" slider: one story at a time, autoplay in main.js; swipe/scroll snaps to whole slides */
.front-slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}
.front-slides::-webkit-scrollbar{display:none}
.front-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}
.front-slide:nth-child(n+7){display:none}
.front-lead .front-media-wrap{margin-bottom:18px}
.front-lead .front-media{aspect-ratio:16/9}
.front-title{font-size:clamp(28px,2.7vw,40px);line-height:1.16;text-wrap:balance}
.front-standfirst{max-width:62ch;margin:14px auto 0;font-family:var(--front-serif);font-size:clamp(16px,1.25vw,18.5px);line-height:1.55}
.front-left{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;align-content:start}
.front-card .front-media{aspect-ratio:16/9;margin-bottom:14px}
.front-left .front-card:nth-child(n+3){display:none}
.front-card-title{font-size:20px;line-height:1.25}
.front-heading{margin:0;padding-bottom:12px;border-bottom:1px solid var(--line);font-family:var(--heading);font-size:18px;font-weight:700;letter-spacing:-.01em}
.front-teaser{display:grid;grid-template-columns:minmax(0,1fr) 80px;gap:14px;align-items:start;padding:16px 0;border-bottom:1px solid var(--line)}
.front-teaser:last-child{padding-bottom:0;border-bottom:0}
.front-teaser[data-spare]{display:none}
.front-teaser-text{min-width:0}
.front-teaser-title{font-size:15.5px;line-height:1.3}
.front-teaser .front-tag{margin-bottom:5px}
.front-teaser .front-meta{margin-top:7px}
.front-teaser .front-by{display:inline;margin-right:8px}
.front-teaser-media{aspect-ratio:16/9;border-radius:4px}
@media(min-width:1024px){
  .front{grid-template-columns:minmax(0,1fr) minmax(0,2.15fr) minmax(0,1fr);grid-template-areas:"left lead right";gap:0}
  .front-left{grid-area:left;grid-template-columns:minmax(0,1fr);gap:0;padding-right:26px;border-right:1px solid var(--line)}
  .front-card+.front-card{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
  .front-lead{grid-area:lead;padding:0 26px}
  .front-right{grid-area:right;padding-left:26px;border-left:1px solid var(--line)}
}
@media(max-width:600px){.front-left{grid-template-columns:minmax(0,1fr)}.front-card-title{font-size:19px}}
@media(prefers-reduced-motion:reduce){.front-media img{transition:none}}
/* Dark mode without a separate dark logo: the logo's black lettering turns white and the orange stays orange
   (invert + half-turn of hue), as on the WordPress site; the logo file itself is unchanged */
html[data-scheme="dark"] .brand:not(.has-dark-logo) img.logo-light{filter:invert(1) hue-rotate(180deg)}
@media(prefers-color-scheme:dark){html[data-scheme="auto"] .brand:not(.has-dark-logo) img.logo-light{filter:invert(1) hue-rotate(180deg)}}
/* ---- Header: logo row, then the menu on its own full-width bar (partials/header.hbs) ---- */
.header-actions{display:flex;align-items:center;gap:10px}
.site-header .header-nav{display:block;width:auto;padding:0;font-size:13px}
.header-nav-inner{display:flex;justify-content:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.header-nav .nav{flex-wrap:wrap;justify-content:center;gap:0}
.header-nav .nav li{display:flex;align-items:center}
.header-nav .nav li+li::before{content:"";width:1px;height:13px;background:var(--accent)}
.header-nav .nav a{padding:13px 20px;font-size:12.5px;font-weight:600;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;transition:color .2s}
.header-nav .nav a:hover,.header-nav .nav-current a{color:var(--accent);text-decoration:none}
.header-nav-extra{display:none}
@media(max-width:1100px){.header-nav .nav a{padding-inline:13px;font-size:12px;letter-spacing:.06em}}
@media(max-width:850px){
  .header-actions{gap:8px}
  .site-header .header-nav{display:none}
  .menu-open .site-header .header-nav{display:block}
  html:not(.js) .site-header .header-nav{display:block}
  .header-nav-inner{display:block;padding:4px 0 22px;border-bottom:0}
  .header-nav .nav{display:grid;justify-content:stretch;gap:0}
  .header-nav .nav li{display:block}
  .header-nav .nav li+li::before{display:none}
  .header-nav .nav a{display:block;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}
  .header-nav-extra{display:block;padding:13px 0;font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
}
@media(max-width:600px){.search-button{padding-inline:13px}.search-label,.header-cta{display:none}}

/* ---- Ad spaces (partials/ad-slot.hbs): hidden until main.js fills one from window.bnfAds or shows the placeholder ---- */
.ad-slot{display:none;margin:0 0 56px}
.ad-slot[data-ad-state]{display:block}
.front+.ad-slot{margin-top:-24px}
.feed-section+.ad-slot{margin-top:48px}
.ad-label{display:block;margin-bottom:6px;font-size:10.5px;font-weight:600;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;text-align:center;color:var(--muted)}
.ad-frame{display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px}
.ad-frame>*{max-width:100%}
.ad-frame img{width:100%;height:auto}
.ad-placeholder{display:none}
.ad-slot[data-ad-state="placeholder"] .ad-frame{border:1px dashed var(--line);background:repeating-linear-gradient(135deg,var(--soft) 0 14px,transparent 14px 28px)}
.ad-slot[data-ad-state="placeholder"] .ad-placeholder{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0;padding:12px;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.ad-placeholder span{font-size:clamp(20px,2.2vw,32px);font-weight:300;letter-spacing:.04em;text-transform:none;color:var(--ink)}
.ad-wide[data-ad-state="placeholder"] .ad-frame{aspect-ratio:1370/160}
.ad-inline[data-ad-state="placeholder"] .ad-frame{aspect-ratio:1020/186}
.ad-tall[data-ad-state="placeholder"] .ad-frame{aspect-ratio:300/600}
@media(max-width:700px){.ad-wide[data-ad-state="placeholder"] .ad-frame,.ad-inline[data-ad-state="placeholder"] .ad-frame{aspect-ratio:auto;min-height:100px}}
/* Post pages: the tall space sits in the left gutter (mirror of the side panel), out of the flow so the article
   column never moves; it stays in view while reading. No gutter below 1540px, so it is not shown there. */
.post-layout>.ad-tall{margin:0}
@media(min-width:1540px){
  .post-layout>.ad-tall{position:absolute;top:0;bottom:0;right:calc(50% + 380px + 56px);width:300px}
  .ad-tall .ad-inner{position:sticky;top:24px}
}
@media(max-width:1539px){.post-layout>.ad-tall{display:none!important}}
