/*
Theme Name: Steve Dinneen Portfolio
Author: Portfolio migration
Description: Bespoke editorial portfolio, October 2026
Version: 0.1.0
Requires PHP: 7.4
*/

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--ink:#20221f;--muted:#72736c;--paper:#f8f7f2;--line:#d9d9d0;--accent:#8e3c30}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.wrap{max-width:1220px;margin:auto;padding:0 38px}header{border-bottom:1px solid var(--line)}.nav{height:94px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:'Playfair Display',Georgia,serif;font-size:29px;letter-spacing:-1.2px}.navlinks{display:flex;gap:34px;font-size:12px;text-transform:uppercase;letter-spacing:1.6px}.navlinks a:hover,.textlink:hover{color:var(--accent)}.hero{padding:95px 0 86px;border-bottom:1px solid var(--line)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.8px;font-weight:700;color:var(--accent)}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(64px,10vw,142px);line-height:.98;letter-spacing:-6px;margin:25px 0 28px}.herofoot{display:flex;justify-content:space-between;align-items:end;gap:30px}.intro{font-size:18px;line-height:1.6;max-width:620px;color:#52544e}.rule{height:1px;background:var(--line)}.sectionhead{display:flex;align-items:center;justify-content:space-between;padding:48px 0 26px}.sectionhead h2{font-size:36px;margin:0}.textlink{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700}.featured{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:22px;padding-bottom:72px}.feature{border-top:2px solid var(--ink);padding-top:17px;cursor:pointer;min-height:260px;display:flex;flex-direction:column}.feature .number{font-size:11px;color:var(--accent);letter-spacing:1.8px}.feature h3{font-size:clamp(24px,2.6vw,37px);line-height:1.15;margin:26px 0 18px;letter-spacing:-.6px}.feature:first-child h3{font-size:clamp(30px,3.4vw,48px)}.feature p{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 20px}.meta{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);margin-top:auto}.feature:hover h3,.article-row:hover h3{color:var(--accent)}.archive{border-top:1px solid var(--line);padding-bottom:100px}.controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}.chip{background:transparent;border:1px solid var(--line);border-radius:30px;padding:10px 16px;font-size:12px}.chip.active,.chip:hover{background:var(--ink);color:white;border-color:var(--ink)}.search{width:100%;background:transparent;border:0;border-bottom:1px solid var(--ink);padding:15px 0;font-size:19px;outline:0;margin-bottom:22px}.results{font-size:12px;color:var(--muted);margin-bottom:12px}.article-row{display:grid;grid-template-columns:125px 1fr 160px;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);cursor:pointer;align-items:baseline}.article-row h3{font-size:25px;line-height:1.2;margin:0}.date,.cat{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.cat{text-align:right}.more{display:block;margin:34px auto 0;background:var(--ink);color:white;border:0;padding:14px 36px;font-size:12px;letter-spacing:1px}.about{background:#eae9e1;padding:70px 0}.aboutgrid{display:grid;grid-template-columns:1fr 2fr;gap:50px}.about h2{font-size:40px;margin:0}.about p{max-width:650px;font-size:18px;line-height:1.7;margin:0}footer{padding:30px 0;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.overlay{position:fixed;inset:0;background:rgba(20,20,20,.65);display:none;z-index:10;overflow:auto;padding:30px}.overlay.open{display:block}.reader{background:var(--paper);max-width:820px;margin:20px auto;padding:clamp(25px,6vw,75px);min-height:70vh}.reader h2{font-size:clamp(35px,5vw,60px);line-height:1.13;margin:25px 0}.reader p{font-family:Georgia,serif;font-size:19px;line-height:1.8;white-space:pre-wrap}.close{float:right;background:none;border:0;font-size:14px}.source{display:inline-block;margin:20px 0;color:var(--accent);text-decoration:underline}.note{font-size:12px!important;color:var(--muted);font-family:Arial!important}@media(max-width:800px){.wrap{padding:0 22px}.nav{height:72px}.brand{font-size:24px}.navlinks{gap:16px;font-size:10px}.hero{padding:70px 0}.herofoot{display:block}h1{letter-spacing:-3px}.featured{grid-template-columns:1fr}.feature{min-height:0;padding-bottom:30px}.article-row{grid-template-columns:1fr;gap:7px}.cat{text-align:left}.aboutgrid{grid-template-columns:1fr;gap:18px}.sectionhead h2{font-size:29px}}
#reader-body p{margin:0 0 1.25em;line-height:1.75}#reader-body h2,#reader-body h3{margin:1.6em 0 .6em}#reader-body blockquote{border-left:2px solid currentColor;padding-left:1.2em;margin:1.4em 0}
/* Editorial, text-first image treatment */
.feature-image{display:block;width:100%;height:105px;object-fit:cover;object-position:center;margin:13px 0 5px;filter:saturate(.82)}
.feature:first-child .feature-image{height:135px}
.feature h3{margin-top:15px}
.article-row{grid-template-columns:72px 110px minmax(0,1fr) 120px;align-items:center;gap:18px;padding:16px 0}
.row-image{display:block;width:72px;height:56px;object-fit:cover;filter:saturate(.82)}
.feature-image.is-missing,.row-image.is-missing,#reader-image.is-missing{display:none}
#reader-image{display:block;width:100%;max-height:240px;object-fit:contain;object-position:left center;margin:25px 0 22px}
.reader h2{margin-bottom:18px}
@media(max-width:800px){.article-row{grid-template-columns:60px 1fr;gap:7px 14px}.row-image{width:60px;height:52px;grid-row:1 / span 3;align-self:start}.article-row h3{font-size:21px}.article-row .cat{text-align:left}.feature-image,.feature:first-child .feature-image{height:105px}}
#reader-body p.section-break{font-family:Georgia,serif!important;font-size:30px!important;font-weight:700;color:var(--accent)!important;letter-spacing:5px;line-height:1!important;text-align:center;margin:0!important;padding:0!important;white-space:normal}#reader-body p.section-break + p{margin-top:0!important}#reader-body p:has(+ p.section-break){margin-bottom:0!important}

/* Text-led burgundy headline edition */
.feature-image,.row-image,#reader-image{display:none!important}
.feature h3,.article-row h3,.reader h2{color:var(--accent)}
.feature:hover h3,.article-row:hover h3{color:#60251f}
.article-row{grid-template-columns:110px minmax(0,1fr) 120px;gap:18px}
@media(max-width:800px){.article-row{grid-template-columns:1fr;gap:7px}}
body.unused-about-view .hero,body.unused-about-view #selected,body.unused-about-view #archive{display:none}body.unused-about-view #about{min-height:65vh;background:transparent;padding:95px 0}body.unused-about-view .aboutgrid{grid-template-columns:1fr 2fr}body.unused-about-view .about h2{color:var(--accent);font-size:clamp(44px,6vw,72px)}body.unused-about-view .about p{margin-bottom:22px}body.unused-about-view #about .about-back{display:inline-block;margin-top:30px;color:var(--accent);font-size:13px;text-decoration:underline}body:not(.about-view) .about-back{display:none}@media(max-width:800px){body.unused-about-view .aboutgrid{grid-template-columns:1fr}body.unused-about-view #about{padding:60px 0}}

/* Compact editorial section dividers: no extra paragraph-height gaps. */
#reader-body p.section-break { margin: 0.2em 0 !important; padding: 0 !important; line-height: 1 !important; font-size: 12px !important; color: #8c3041; letter-spacing: 0 !important; }
#reader-body p:has(+ p.section-break) { margin-bottom: 0 !important; }
#reader-body p.section-break + p { margin-top: 0 !important; }
.reader-body a, #reader-body a{color:#7b263b;text-decoration:underline;text-underline-offset:3px}#reader-body a:hover{color:#aa405a}
/* Refined homepage: compact masthead and nine prominent features */
.hero{padding:48px 0 42px}.nav{justify-content:flex-end}.hero h1{font-size:clamp(49px,7vw,94px);letter-spacing:-3px;line-height:1.08;margin:0 0 13px;color:var(--accent)}
.hero-subtitle{font-size:clamp(15px,2vw,20px);letter-spacing:1px;font-weight:600}
.featured{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 26px;padding-bottom:58px}
.feature{min-height:190px;border-top:1px solid var(--line);padding-top:15px}
.feature h3,.feature:first-child h3{font-size:clamp(27px,2.6vw,37px);line-height:1.16;margin:16px 0 13px}
.feature:nth-child(-n+3) h3{font-size:clamp(27px,2.6vw,37px)}
.feature p{font-size:14px}.feature .meta{padding-top:7px}
@media(max-width:800px){.hero{padding:38px 0 32px}.hero h1{letter-spacing:-2px}.featured{grid-template-columns:1fr 1fr;gap:25px 18px}.feature{min-height:0}.feature h3,.feature:first-child h3,.feature:nth-child(-n+3) h3{font-size:26px}}
@media(max-width:520px){.featured{grid-template-columns:1fr}.feature{padding-bottom:12px}}
.hero h1{font-size:clamp(42px,6.8vw,92px);letter-spacing:-3.5px;white-space:nowrap}.hero-dot{color:var(--accent)}.hero-portfolio{font-size:.36em;font-style:italic;letter-spacing:-.4px;font-weight:400;vertical-align:baseline}@media(max-width:600px){.hero h1{font-size:clamp(30px,7.1vw,46px);letter-spacing:-1.5px}.hero-portfolio{font-size:.34em}.hero{padding:65px 0 60px}}
/* Single masthead in the navigation, black name and burgundy full stop. */
.nav{justify-content:space-between}.masthead-brand{color:var(--ink);white-space:nowrap;font-size:clamp(24px,3vw,35px);letter-spacing:-1.2px}.masthead-brand .hero-portfolio{font-size:.55em;letter-spacing:0;color:var(--ink)}.masthead-brand .hero-dot{color:var(--accent)}

@media(max-width:600px){.masthead-brand{font-size:23px}.masthead-brand .hero-portfolio{font-size:.48em}.navlinks{gap:13px}}
.archive-review-meta{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-top:8px;line-height:1.6}.archive-title-block{min-width:0}.feature .meta{line-height:1.6}.reader #reader-date{line-height:1.8}/* Individual article metadata only; leave archive listings uncluttered. */
#reader-date{margin-bottom:0!important}
#reader-rating{color:var(--accent);font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;margin:0;display:inline} #reader-rating:not([hidden])::before{content:" · ";color:var(--muted)}
#reader-rating[hidden]{display:none!important}
#reader-body{margin-top:28px!important}
#reader-image{display:none!important}
#reader-body{margin-top:32px!important}

/* Standalone About page, matching article body typography. */
#about-page[hidden],main[hidden]{display:none!important}
#about-page{padding-top:68px;padding-bottom:80px}
#about-page h1{font-family:Georgia,serif;font-size:clamp(36px,5vw,60px);font-weight:normal;color:var(--ink);letter-spacing:-1px;margin:0;text-transform:none}
#about-page{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);gap:50px;align-items:start}#about-page[hidden]{display:none!important}#about-page .about-copy{max-width:760px;margin:0}
#about-page p{font-family:Georgia,serif;font-size:19px;line-height:1.8;margin:0 0 1.25em}
@media(max-width:600px){#about-page{padding-top:42px;grid-template-columns:1fr;gap:24px}}
.heading-dot{color:var(--accent)}

/* Homepage transition and consistently compact editorial dividers. */
.home-divider{font-family:Georgia,serif;font-size:35px;font-weight:700;letter-spacing:7px;color:var(--accent);line-height:1;text-align:left;padding:36px 38px 2px;}
#reader-body p.section-break{font-family:Georgia,serif!important;font-size:30px!important;font-weight:700!important;letter-spacing:5px!important;line-height:1!important;text-align:center!important;color:var(--accent)!important;margin:12px 0!important;padding:0!important;}
#reader-body p.section-break + p{margin-top:0!important;}
#reader-body p:has(+ p.section-break){margin-bottom:0!important;}
@media(max-width:600px){.home-divider{padding:28px 22px 11px;}}

/* Consistent article typography and section dividers */
#reader-body{font-family:Georgia, 'Times New Roman', serif;}
#reader-body p,#reader-body li,#reader-body blockquote{font-family:inherit;font-size:inherit;line-height:1.75;}
#reader-body p.section-break{display:block!important;font-family:Georgia,serif!important;font-size:30px!important;font-weight:700!important;color:#8c3041!important;letter-spacing:5px!important;text-align:center!important;line-height:1.15!important;margin:0.45em 0!important;padding:0!important;}
#reader-body p:has(+ p.section-break){margin-bottom:0!important;}
#reader-body p.section-break + p{margin-top:0!important;}

/* Divider spacing: remove invisible heading gaps and keep paragraph rhythm. */
#reader-body p.section-break{display:block!important;margin:0!important;padding:0!important;font-family:Georgia,serif!important;font-size:30px!important;font-weight:700!important;line-height:1.15!important;letter-spacing:5px!important;text-align:center!important;color:var(--accent)!important;}
#reader-body p.section-break + p{margin-top:0!important;}
#reader-body p:has(+ p.section-break){margin-bottom:0!important;}

/* Match utility text to the masthead navigation. */
#selected .textlink{font-family:'DM Sans',Arial,sans-serif;font-size:14px;font-weight:400;letter-spacing:normal;text-transform:none;}
#search{font-family:'DM Sans',Arial,sans-serif;font-size:14px;font-weight:400;letter-spacing:normal;}
#search::placeholder{font-family:inherit;font-size:inherit;color:var(--muted);opacity:1;}
#filters .chip{text-transform:lowercase;}
#reader-venue{font:inherit;color:inherit;letter-spacing:inherit}
/* October homepage refinements */
.masthead-brand{font-size:clamp(27px,3.3vw,39px)}
#selected .sectionhead h2{font-size:32px}
.feature p{margin-bottom:13px}
.feature .meta{padding-top:3px}
@media(max-width:800px){#selected .sectionhead h2{font-size:27px}}
@media(max-width:600px){.masthead-brand{font-size:25px}}

/* Tighten only the gap beneath the homepage dots. */
#selected > .sectionhead{padding-top:18px;}
@media(max-width:800px){#selected > .sectionhead{padding-top:16px;}}

/* Text selection */
::selection{background:#8e3c30;color:#fff}
::-moz-selection{background:#8e3c30;color:#fff}

.navlinks .nav-arrow{color:var(--accent);font-size:1.15em;font-weight:700;margin-left:3px}
/* Keep the masthead and navigation on one horizontal baseline. */
header .nav{display:flex;align-items:baseline;justify-content:space-between;gap:24px;height:auto;min-height:94px;padding-top:23px;padding-bottom:20px;}
header .masthead-brand{display:inline-block;line-height:1.15;flex:0 0 auto;}
header .navlinks{display:flex;align-items:baseline;gap:34px;flex:0 0 auto;white-space:nowrap;}
@media(max-width:600px){header .nav{gap:12px;min-height:74px;padding-top:17px;padding-bottom:15px;}header .masthead-brand{font-size:clamp(19px,4.5vw,25px)}header .navlinks{gap:12px;font-size:10px;letter-spacing:.5px;}}

/* Consistent controls and link colours across mobile browsers. */
:root{color-scheme:light}
a,a:link,a:visited,a:hover,a:active{color:inherit;-webkit-text-fill-color:currentColor}
.navlinks a,.navlinks a:link,.navlinks a:visited{color:var(--ink)!important;-webkit-text-fill-color:var(--ink)!important;text-decoration:none!important}
.navlinks .nav-arrow,.navlinks a .nav-arrow{color:var(--accent)!important;-webkit-text-fill-color:var(--accent)!important;font-family:Georgia,serif!important;font-style:normal!important;text-decoration:none!important}
#filters .chip,#filters .chip:link,#filters .chip:visited{appearance:none;-webkit-appearance:none;color:var(--ink)!important;-webkit-text-fill-color:var(--ink)!important;background:transparent;border:1px solid var(--line);font-family:'DM Sans',Arial,sans-serif}
#filters .chip.active,#filters .chip:hover{background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
#close,.reader .close{appearance:none;-webkit-appearance:none;color:var(--accent)!important;-webkit-text-fill-color:var(--accent)!important;background:transparent!important;border:0!important;text-decoration:none!important;font-family:'DM Sans',Arial,sans-serif}

/* Keep the masthead name visibly larger than the selected writing heading on phones. */
@media(max-width:800px){header .masthead-brand{font-size:34px!important;letter-spacing:-1.4px}#selected .sectionhead h2{font-size:27px!important}}
@media(max-width:600px){header .masthead-brand{font-size:clamp(28px,7.3vw,34px)!important}header .masthead-brand .hero-portfolio{font-size:.40em!important}header .navlinks{gap:9px!important;font-size:10px!important}}

/* Force navigation arrows to render as text rather than blue emoji icons on mobile. */
header .navlinks .nav-arrow{font-family:Arial,Helvetica,sans-serif!important;font-variant-emoji:text;color:#8c3041!important;-webkit-text-fill-color:#8c3041!important;font-weight:700!important;display:inline-block;line-height:1;}

/* Keep navigation arrows on desktop, hide them on mobile. */
@media (max-width:800px){header .navlinks .nav-arrow{display:none!important}}

/* Slightly enlarge the mobile masthead now that navigation arrows are hidden. */
@media(max-width:600px){header .masthead-brand{font-size:clamp(30px,8vw,37px)!important}}

/* WordPress implementation */
body.admin-bar header{margin-top:32px} .wp-article-link{display:block;color:inherit;text-decoration:none} .wp-article-link:hover h3{color:var(--accent)}.feature,.article-row{cursor:default}.feature a,.article-row a{color:inherit;text-decoration:none}.article-row .wp-article-link{grid-column:2}.article-row .cat{grid-column:3}.reader-page{max-width:820px;margin:0 auto;padding:50px 38px 100px}.reader-page h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(35px,5vw,60px);line-height:1.13;margin:25px 0}.reader-page .article-content{font-family:Georgia,serif;font-size:19px;line-height:1.75}.reader-page .article-content p{margin:0 0 1.25em}.reader-page .article-content p.section-break{display:block!important;text-align:center!important;font-family:Georgia,serif!important;font-size:30px!important;font-weight:700!important;letter-spacing:5px!important;color:var(--accent)!important;margin:0!important;padding:0!important}.reader-page .article-content p.section-break + p{margin-top:0!important}.reader-page .article-content p.burgundy-bullet{position:relative;padding-left:1.25em}.reader-page .article-content p.burgundy-bullet::before{content:'•';position:absolute;left:0;top:-.1em;font-size:1.6em;color:var(--accent)}.reader-page .article-content a{text-decoration:underline}.reader-rating{color:var(--accent)}#archive .article-row{display:grid}.article-row .date{grid-column:1}@media(max-width:600px){.reader-page{padding:30px 22px 80px}.article-row .wp-article-link{grid-column:auto}.article-row .cat{grid-column:auto}.article-row .date{grid-column:auto}}

/* Homepage article overlay, matching the HTML prototype's reader behaviour. */
.sd-reader-overlay{position:fixed;inset:0;z-index:99999;overflow-y:auto;background:var(--paper,#f8f7f2);display:none;overscroll-behavior:contain}
.sd-reader-overlay.open{display:block}
body.sd-reader-active{overflow:hidden}
.sd-reader-panel{position:relative;max-width:860px;margin:0 auto;padding:95px 42px 90px;min-height:100vh}
.sd-reader-close{position:fixed;z-index:2;top:24px;right:max(28px,calc((100vw - 950px)/2));background:var(--paper,#f8f7f2);border:0;color:var(--accent,#8e3c30);font:600 13px 'DM Sans',Arial,sans-serif;letter-spacing:1px;cursor:pointer;padding:10px}
.sd-overlay-article h2{font-size:clamp(38px,5vw,65px);line-height:1.13;margin:25px 0}
.sd-overlay-article .meta{margin:0 0 35px}
.sd-overlay-article .article-content{font-family:Georgia,serif;font-size:19px;line-height:1.8}
.sd-overlay-article .article-content p{margin:0 0 1.4em}
.sd-overlay-article .reader-rating{color:var(--accent,#8e3c30)}
@media(max-width:800px){.sd-reader-panel{padding:90px 22px 60px}.sd-reader-close{right:16px;top:14px}.sd-overlay-article .article-content{font-size:18px}}

/* Selected writing: date on the same line as number and category. */
.feature-topline{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.feature-topline .number{flex:0 1 auto}
.feature-topline .feature-date{font-family:'DM Sans',Arial,sans-serif;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);white-space:nowrap;margin-left:auto}

/* Correct selected-story spacing after moving the date into the top line. */
#selected .featured{row-gap:24px;}
#selected .feature{min-height:0;padding-bottom:0;}
#selected .feature p{margin-bottom:0;}
#selected .feature h3{margin-bottom:11px;}
@media(max-width:800px){#selected .featured{row-gap:20px;}#selected .feature{padding-bottom:0;}}

/* Reader as an actual modal over the visible archive, not a full-screen replacement. */
.sd-reader-overlay{background:rgba(28,20,19,.60)!important;overflow-y:auto!important;padding:34px 24px!important;box-sizing:border-box!important}
.sd-reader-panel{background:var(--paper,#f8f7f2)!important;box-shadow:0 18px 80px rgba(0,0,0,.22)!important;max-width:880px!important;min-height:calc(100vh - 68px)!important;margin:0 auto!important;padding:76px 64px 90px!important;box-sizing:border-box!important}
.sd-reader-close{position:sticky!important;top:0!important;float:right!important;margin:-52px -38px 18px 0!important;background:var(--paper,#f8f7f2)!important}
@media(max-width:700px){.sd-reader-overlay{padding:12px 9px!important}.sd-reader-panel{padding:68px 22px 65px!important;min-height:calc(100vh - 24px)!important}.sd-reader-close{margin:-48px -10px 12px 0!important}}

/* Article-body hyperlinks only: burgundy and italic, including imported and future posts. */
.reader-page .article-content a:any-link,
.sd-overlay-article .article-content a:any-link,
#sd-reader-content .article-content a:any-link,
.reader-page .article-content a:hover,
.sd-overlay-article .article-content a:hover,
#sd-reader-content .article-content a:hover{
  color:var(--accent,#8e3c30)!important;
  -webkit-text-fill-color:var(--accent,#8e3c30)!important;
  font-style:italic!important;
}

/* Editorial separators in both AJAX overlays and standalone WordPress posts. */
.sd-reader-overlay .article-content p.section-break,
.reader-page .article-content p.section-break,
#reader-body p.section-break {
  display:block !important;
  text-align:center !important;
  font-family:Georgia,serif !important;
  font-size:35px !important;
  font-weight:700 !important;
  line-height:1.1 !important;
  letter-spacing:7px !important;
  color:var(--accent,#8c3041) !important;
  margin:12px 0 !important;
  padding:0 !important;
}
.sd-reader-overlay .article-content p.burgundy-bullet,
.reader-page .article-content p.burgundy-bullet {
  position:relative;
  padding-left:1.3em;
}
.sd-reader-overlay .article-content p.burgundy-bullet::before,
.reader-page .article-content p.burgundy-bullet::before {
  content:"•";
  position:absolute;
  left:0;
  top:-.12em;
  color:var(--accent,#8c3041);
  font-size:1.7em;
  line-height:1;
}

/* Keep the archive visible above the article overlay, including on mobile. */
.sd-reader-overlay{padding-top:100px!important;padding-bottom:64px!important;}
.sd-reader-panel{min-height:calc(100vh - 164px)!important;}
@media(max-width:700px){
  .sd-reader-overlay{padding-top:48px!important;padding-bottom:28px!important;}
  .sd-reader-panel{min-height:calc(100vh - 76px)!important;}
}

/* Burgundy article titles in overlays and direct-link article pages. */
.sd-overlay-article > h2#sd-overlay-title,
#sd-reader-content .sd-overlay-article > h2,
.reader-page > h1 {
  color:var(--accent,#8e3c30) !important;
}

/* Match article headline tracking on direct pages and in the overlay. */
.reader-page > h1,
.sd-overlay-article > h2#sd-overlay-title,
#sd-reader-content .sd-overlay-article > h2 {
  letter-spacing:normal !important;
}

/* Match the breathing room below metadata on standalone articles to the overlay. */
.reader-page > .meta { margin-bottom:35px !important; }

/* Archive metadata: category beside date, headline beneath */
#archive .article-row{grid-template-columns:minmax(0,1fr);gap:8px;align-items:start}
#archive .article-row .archive-row-meta{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;grid-column:1}
#archive .article-row .date,#archive .article-row .cat{grid-column:auto;text-align:left;white-space:normal}
#archive .article-row .wp-article-link{grid-column:1}
@media(max-width:600px){#archive .article-row .archive-row-meta{gap:12px}}

/* October 2026 draft refinements */
#selected .feature>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--excerpt-lines,3);line-clamp:var(--excerpt-lines,3);overflow:hidden}
.reader-page .article-content h2,.reader-page .article-content h3,.reader-page .article-content h4,
.sd-overlay-article .article-content h2,.sd-overlay-article .article-content h3,.sd-overlay-article .article-content h4{color:var(--accent);font-size:clamp(25px,3vw,32px);font-weight:600;line-height:1.3;margin:1.4em 0 .65em}
#about-page .about-copy,#about-page .about-copy p{font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.85;letter-spacing:1.3px;font-weight:400;text-transform:none}
.sd-reader-panel{padding-top:48px!important}
.sd-reader-close{position:sticky!important;float:right!important;top:12px!important;right:auto!important;margin:0 0 -20px 12px!important;padding:0!important;line-height:1.3;background:var(--paper,#f8f7f2)!important}
.sd-overlay-article>.eyebrow{padding-top:0;padding-right:95px;min-height:18px}
.sd-reader-overlay .article-content p.burgundy-bullet,.reader-page .article-content p.burgundy-bullet{padding-left:1.1em}
.sd-reader-overlay .article-content p.burgundy-bullet::before,.reader-page .article-content p.burgundy-bullet::before{font-size:1.1em;top:.36em;line-height:1}
.sd-not-found{max-width:900px;margin:0 auto;min-height:60vh;padding:90px 38px}
.sd-not-found h1{font-size:clamp(58px,9vw,120px);letter-spacing:-2px;color:var(--accent);margin:12px 0 25px}
.sd-not-found p{font-size:18px;line-height:1.6}
.sd-not-found a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){
.sd-reader-panel{padding-top:42px!important}
.sd-reader-close{top:12px!important;right:auto!important;margin:0 0 -20px 10px!important}
#archive .sectionhead{flex-wrap:nowrap;gap:12px}
#archive .sectionhead h2{flex:0 1 auto}
#archive .sectionhead #count{white-space:nowrap;text-align:right;font-size:10px;letter-spacing:.3px}

.sd-not-found{padding:55px 22px}
}

