/* Onyx edition: a calm black magazine with one dark-gold accent. */
:root{--ink:#efece4;--dark:#101112;--paper:#111213;--line:#353330;--accent:#c6a14a;--coral:#c6a14a;--muted:#a6a39a;--white:#f5f1e7}
html{color-scheme:dark}
body{background:#111213;color:#ebe8e0;font-family:Outfit,"Segoe UI",system-ui,sans-serif;font-size:15px}
body a:hover{color:#d3b361}
h1,h2,h3,h4{font-family:Outfit,"Segoe UI",system-ui,sans-serif;font-weight:600;letter-spacing:-.035em}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #c6a14a;outline-offset:3px}
.section-kicker,.heading-period,.category-tile-index,.story-meta a,.text-arrow,.text-arrow span,.simple-section-heading>a,.simple-section-heading>a span,.category-tile-meta span,.back-top,.footer-contact>a span{color:#c6a14a}
.simple-section-heading h1,.simple-section-heading h2,.listing-heading h1,.page-title-bar h1,.category-list-heading h2{color:#f2eee5;font-family:Outfit,"Segoe UI",sans-serif;font-weight:600;letter-spacing:-.04em}
.simple-section-heading h1,.simple-section-heading h2{font-size:clamp(1.85rem,3.1vw,3rem)}
.simple-section-heading>a{border-color:#766644;font-weight:600}
.simple-section-heading>a:hover{color:#e4c774}

/* A straightforward header with one small identity mark. */
.site-header{background:#141515;color:#f4efe4;border-color:#34322c;box-shadow:none}
.site-header .header-inner{min-height:72px}
.site-header .branding{gap:10px}
.site-header .brand-glyph{display:grid;place-items:center;width:32px;height:32px;background:none;border:0}
.site-header .brand-glyph img{display:block;width:32px;height:32px;border-radius:7px}
.site-header .brand-name{font-size:1.35rem;color:#f3efe6;font-weight:700;letter-spacing:-.04em}
.site-header .brand-mark{color:#c6a14a}
.site-header .nav-list a{color:#ccc8be;font-size:.82rem;font-weight:500}
.site-header .nav-list a:hover,.site-header .nav-list .current-menu-item>a{color:#c6a14a;background:none}
.site-header .nav-list .sub-menu,.main-navigation{background:#18191a}
.site-header .header-sound,.site-header .search-trigger{background:transparent;border:1px solid #454139;color:#d5d0c4}
.site-header .header-sound:hover,.site-header .search-trigger:hover{background:#22211e;color:#c6a14a}
.site-header .menu-trigger span{background:#c6a14a}
.site-header .contact-link{min-height:39px;background:#c6a14a;color:#151515;border-radius:5px;box-shadow:none;padding:0 5px 0 14px;font-size:.77rem}
.site-header .contact-link:hover{transform:none;background:#d7b966;color:#151515;box-shadow:none}
.site-header .contact-link span:last-child{width:29px;height:29px;background:#181818;color:#c6a14a;border-radius:3px}
.header-search{background:#191a1a;border-color:#37352f}
.header-search .search-form input[type=search]{background:#222323;color:#f4eee1;border-color:#49463f}
.header-search .search-form input[type=submit]{background:#c6a14a;color:#111}

/* The site's icon is the whole animation: brief, quiet, and recognizable. */
.nps-loader{background:#101111;transition:opacity .22s ease,visibility .22s ease}
.nps-loader-inner{width:96px;gap:15px;position:relative}
.loader-site-logo,.loader-monogram{width:56px;height:56px;object-fit:contain;border-radius:12px;background:#171717;color:#c6a14a;border:1px solid #c6a14a4d;box-shadow:0 0 0 5px #c6a14a10;animation:nps-icon-breathe 1.3s ease-in-out infinite}
.loader-track{width:66px;height:2px;background:#403b31;border-radius:2px}
.loader-track>span{background:#c6a14a;animation:nps-load 1.1s ease-in-out infinite alternate}
.nps-sound-float{background:#1d1e1e;color:#c6a14a;border:1px solid #625338}
@keyframes nps-icon-breathe{50%{box-shadow:0 0 0 9px #c6a14a10;transform:scale(1.035)}}

/* Keep the current three-story composition, but give it magazine texture. */
.home-posts{padding-top:50px;padding-bottom:65px}
.home-three-posts{gap:16px}
.home-three-posts .story-card,.story-card{background:#1c1d1d;border:1px solid #3d3b35;border-radius:8px;box-shadow:none!important}
.home-three-posts .story-card:hover,.story-card:hover{border-color:#867346;box-shadow:0 12px 24px #0004!important}
.home-lead-post .story-body h3,.home-side-post .story-body h3,.story-body h3{font-family:Outfit,"Segoe UI",sans-serif;font-weight:600;letter-spacing:-.025em}
.home-lead-post .story-body h3{font-size:clamp(1.55rem,2.35vw,2.25rem)}
.home-side-post .story-body h3{font-size:clamp(1.13rem,1.55vw,1.4rem)}
.story-image{background:#30302d}
.story-placeholder{background:linear-gradient(140deg,#2d2b24,#55472b)}
.story-placeholder span{color:#c6a14a}
.story-body h3,.story-body h3 a{color:#f1ede3}
.story-body h3 a:hover{color:#d3b361}
.story-body>p,.story-meta,.article-deck,.archive-description{color:#aaa79d}
.home-empty{background:#1d1e1e;border-color:#48443a;color:#c8c3b6}
.home-category-section{padding:55px 0 67px;background:#171818;border-color:#3b3934}
.home-category-grid{gap:12px}
.home-category-tile{min-height:136px;background:#202121;border:1px solid #44413a;border-radius:6px;box-shadow:none;color:#f0ece3}
.home-category-tile:hover{background:#292824;border-color:#c6a14a;color:#fff}
.home-category-tile strong{font-family:Outfit,"Segoe UI",sans-serif;font-size:1.18rem;font-weight:600}
.home-category-tile:hover .category-tile-index,.home-category-tile:hover .category-tile-meta span{color:#d6b45e}
.category-tile-meta{color:#aaa79c}

/* Compact footer: black field, fine gold details. */
.site-footer{background:#0c0d0d;border-top:1px solid #3e3930;color:#e8e4db}
.site-footer .footer-main{padding-top:43px;padding-bottom:38px;border-bottom:1px solid #3e3930}
.site-footer .brand-name{color:#f2eee4;font-size:1.5rem}
.site-footer .brand-mark,.site-footer .footer-nav h3,.site-footer .footer-contact h3{color:#c6a14a}
.site-footer .footer-about p,.site-footer .footer-bottom{color:#a7a399}
.site-footer .footer-menu a{color:#d6d1c6}
.site-footer .footer-menu a:hover,.site-footer .footer-contact>a:hover,.site-footer .back-top:hover{color:#dbbd70}
.site-footer .footer-contact>a{color:#f1ede4;border-color:#c6a14a;font-family:Outfit,"Segoe UI",sans-serif;font-size:1.05rem;font-weight:600}
.site-footer .footer-contact>a span,.site-footer .back-top{color:#c6a14a}
.site-footer .footer-bottom{border:0}

/* Listing, article, and category pages share the same two-color language. */
.listing-layout,.page-content,.single-layout,.author-page,.category-page,.not-found{background:#111213;color:#ede9df}
.story-grid .story-card,.category-article-grid .story-card{background:#1d1e1e;border-color:#403d36}
.pagination .page-numbers{border-color:#615842;color:#d3cfc5;background:#1b1b1b}
.pagination .current,.pagination .page-numbers:hover{background:#c6a14a;border-color:#c6a14a;color:#111}
.category-opening{background:#191a1a;color:#f3eee4;border-color:#434037}
.category-left h1,.category-feature-copy h2{color:#f1ece2;font-family:Outfit,"Segoe UI",sans-serif;font-weight:600}
.category-desc,.category-bottom,.category-list-heading p{color:#ada99f}
.category-overline,.category-sigil,.category-title-mark,.category-feature-copy .feature-counter,.category-bottom strong,.category-bottom a{color:#c6a14a}
.category-sigil,.category-switcher,.category-bottom,.category-section-line{border-color:#615842}
.category-switcher a{background:#242422;color:#d4d0c5;border-color:#4c483e}
.category-switcher a:hover,.category-switcher a.is-current{background:#c6a14a;color:#111;border-color:#c6a14a}
.category-switcher a:not(.is-current) span[aria-hidden="true"]{color:#c6a14a}
.category-switcher a:hover span[aria-hidden="true"],.category-switcher a.is-current span[aria-hidden="true"]{color:#111}
.category-feature-link,.category-feature-copy{background:#1d1e1e;border-color:#49453c;color:#ece8df}
.category-feature-link:hover{color:#f1ecdf}
.category-feature-copy p,.category-feature-bottom{color:#aaa69c}
.category-no-more{background:#1d1e1e;color:#bfbbae;border-color:#63563b}
.feature-circle{background:#c6a14a;color:#111}
.line-art{color:#c6a14a}
.article-header h1,.page-title-bar h1,.not-found h1{color:#f2eee5;font-family:Outfit,"Segoe UI",sans-serif;font-weight:600}
.article-kicker,.post-neighbors small,.not-found .error-number{color:#c6a14a}
.article-breadcrumb,.article-byline small{color:#a6a399}
.entry-content{color:#d8d3c9}
.entry-content h2,.entry-content h3,.entry-content h4{color:#f2eee5;font-family:Outfit,"Segoe UI",sans-serif}
.entry-content a{color:#d3b361;text-decoration-color:#c6a14a}
.entry-content blockquote,.aside-box{background:#212220;border-color:#c6a14a;color:#e5e0d4}
.aside-box p{color:#b0ab9f}
.aside-box a,.aside-icon{color:#c6a14a}
.widget,.post-neighbors{border-color:#49453b}
.article-tags a{background:#292821;color:#d4ba79}
.speed-popover{background:#202121;color:#eee9de;border-color:#63563b}
.speed-head small,.speed-ends{color:#aaa69b}
.speed-head .speed-icon{background:#c6a14a;color:#111}
.speed-dial::before{background:#1b1c1c}
.speed-action{background:#c6a14a;color:#111}
.speed-action span:last-child{color:#111}
.speed-action:hover{background:#d8b762;color:#111}
.speed-fab,.speed-fab:hover,.speed-fab.is-running{background:conic-gradient(#c6a14a var(--read-progress,0%),#38332a var(--read-progress,0%))}
.speed-fab::before{background:#171817}
.speed-fab svg{stroke:#c6a14a}
.not-found .hero-button{background:#c6a14a;color:#111}

/* Author: restrained photo, biographical copy, and a clear featured article. */
.author-edition .author-profile{background:#1a1b1b;border:1px solid #514a39;border-left:3px solid #c6a14a;border-radius:7px;min-height:230px;padding-block:32px;margin-bottom:58px;grid-template-columns:135px minmax(0,1fr)}
.author-edition .author-profile::before,.author-edition .author-profile-signature{display:none}
.author-edition .author-profile-avatar{width:135px;height:135px;border:2px solid #c6a14a;box-shadow:none;background:#303029}
.author-edition .author-profile .section-kicker,.author-edition .author-profile-meta a{color:#c6a14a}
.author-edition .author-profile h1{font-family:Outfit,"Segoe UI",sans-serif;color:#f4f0e5;font-size:clamp(2.1rem,3.8vw,3.6rem)}
.author-edition .author-profile h1 .heading-period{color:#c6a14a}
.author-edition .author-profile p{color:#c2bdb1}
.author-edition .author-profile-meta{color:#c8c2b4}
.author-edition .author-profile-meta>span{border-color:#61563e}
.author-archive-count{color:#a9a398}
.author-feature{background:#1d1e1e;border-color:#49453d;border-radius:7px;box-shadow:none}
.author-feature-image{background:#292924}
.author-feature-image.story-placeholder{background:linear-gradient(140deg,#282720,#5a492c);color:#c6a14a}
.author-feature-body .author-feature-label{color:#c6a14a}
.author-feature-body h3{font-family:Outfit,"Segoe UI",sans-serif;color:#f1ecdf;font-weight:600}
.author-feature-body h3 a:hover{color:#d3b361}
.author-feature-body>p,.author-feature-body .story-meta{color:#ada99d}
.author-edition .author-post-card{background:#1d1e1e;border-color:#49453c}

/* Keep the Contact page structure, and match its colors to the site. */
.contact-edition,.contact-edition .contact-intro{background:#171818;color:#efeae0}
.contact-edition .contact-intro{border-color:#3d3932}
.contact-edition .contact-intro h1,.contact-edition .contact-intro h1 em,.contact-edition .contact-sidebar h2,.contact-edition .contact-form-panel h2{color:#f3eee3}
.contact-edition .contact-intro h1 em,.contact-edition .contact-overline,.contact-edition .contact-side-number,.contact-edition .contact-panel-top span:last-child,.contact-edition .contact-note>span,.contact-edition .contact-form label>span{color:#c6a14a}
.contact-edition .contact-intro-main>p,.contact-edition .contact-sidebar>p,.contact-edition .contact-form-lead,.contact-edition .contact-form-bottom p,.contact-edition .contact-note p{color:#b6b0a4}
.contact-edition .contact-swipe,.contact-edition .contact-note a{color:#c6a14a;border-color:#61543a}
.contact-editorial-art{background:#22221e;border-color:#564b34;box-shadow:14px 14px 0 #383127;color:#f0ebdf}
.contact-art-glyph,.contact-art-top span{color:#c6a14a}
.contact-art-top,.contact-art-bottom{color:#c5beae}
.contact-edition .contact-workspace{color:#eee9df}
.contact-edition .contact-note{border-color:#49453b}
.contact-edition .contact-form-panel{background:#202121;border-color:#514b3e;box-shadow:0 18px 35px #0003;color:#ece7dc}
.contact-edition .contact-panel-top,.contact-edition .contact-form-bottom{border-color:#4d473b;color:#c3bbaa}
.contact-edition .contact-form label{color:#dfd7ca}
.contact-edition .contact-form input:not([type=hidden]),.contact-edition .contact-form select,.contact-edition .contact-form textarea{background:#292a28;color:#f1eade;border-color:#5a5344}
.contact-edition .contact-form input::placeholder,.contact-edition .contact-form textarea::placeholder{color:#a6a093}
.contact-edition .contact-form input:focus,.contact-edition .contact-form select:focus,.contact-edition .contact-form textarea:focus{border-color:#c6a14a;box-shadow:0 0 0 3px #c6a14a29}
.contact-edition .contact-form-bottom button{background:#c6a14a;color:#111}
.contact-edition .contact-form-bottom button:hover{background:#d9b965;color:#111}
.contact-edition .contact-form-bottom button span{background:#191919;color:#c6a14a}

@media(max-width:800px){
 .site-header .main-navigation{background:#18191a;border-color:#484136}
 .author-edition .author-profile{grid-template-columns:110px minmax(0,1fr)}
 .author-edition .author-profile-avatar{width:110px;height:110px}
}
@media(max-width:600px){
 .site-header .header-inner{min-height:64px}
 .site-header .brand-glyph,.site-header .brand-glyph img{width:26px;height:26px}
 .site-header .branding{gap:5px}
 .site-header .contact-link{min-height:35px;padding-left:8px;font-size:.66rem}
 .site-header .contact-link span:last-child{width:25px;height:25px}
 .home-three-posts .story-card{border-radius:7px}
 .author-edition .author-profile{grid-template-columns:75px minmax(0,1fr);padding:24px 20px;gap:15px}
 .author-edition .author-profile-avatar{width:75px;height:75px}
 .author-edition .author-profile h1{font-size:clamp(1.85rem,6.4vw,2.65rem)}
 .contact-editorial-art{box-shadow:9px 9px 0 #383127}
}
@media(max-width:480px){
 .author-edition .author-profile{grid-template-columns:1fr}
 .author-edition .author-profile-avatar{width:88px;height:88px}
}
@media(prefers-reduced-motion:reduce){.loader-site-logo,.loader-monogram,.loader-track>span{animation:none}}
