/*
Theme Name: PureMag Pro Child (Warner Digital)
Theme URI: https://warner.digital/
Description: Cinematic dark-theme child of PureMag Pro, restyling the Warner Digital blog to match the main site redesign.
Author: Warner Digital
Author URI: https://warner.digital/
Template: puremag-pro
Version: 1.0.0
Text Domain: puremag-pro-child
*/

/* ============================================================
   This file is loaded automatically (WordPress points the
   parent's own "puremag-maincss" stylesheet handle at whichever
   theme is active, so no extra enqueue call is needed to load
   this file). It intentionally does NOT inherit PureMag Pro's
   own visual rules, only its PHP/back-end plumbing. Everything
   below is written from scratch to match the Warner Digital
   redesign at index-redesign-concept.html.

   Font files and other static assets are referenced via
   home_url('/wd-assets/...') in header.php/functions.php,
   not relative paths, since this stylesheet is served from
   wp-content/themes/, a different location entirely.
   ============================================================ */

:root{
  --bg:#060409;--panel:#110a1f;--panel-2:#0b0614;--text:#f5f0ff;--muted:#d8ccf4;
  --purple:#7c3aed;--orange:#ff8a3d;--gold:#f5d0a8;--line:rgba(255,255,255,.08);--max:1160px;
  --font-body:"Inter", ui-sans-serif, system-ui, sans-serif;
  --font-poster:"Bebas Neue", "Arial Narrow", sans-serif;
  --font-script:"Courier Prime", "Courier New", monospace;
  --font-brand:"Orbitron", sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--text);font-family:var(--font-body);background:var(--bg);overflow-x:hidden;line-height:1.7}
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:radial-gradient(ellipse at 50% -10%, rgba(255,178,110,.14), transparent 55%),
    radial-gradient(circle at 12% 30%, rgba(124,58,237,.16), transparent 45%),
    radial-gradient(circle at 88% 70%, rgba(255,138,61,.08), transparent 45%);
}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center, transparent 55%, rgba(0,0,0,.5) 100%)}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto}
p{color:var(--muted);margin:0 0 14px}
.poster{font-family:var(--font-poster);font-weight:400;letter-spacing:.02em;line-height:.95;text-transform:uppercase}
.slug{font-family:var(--font-script);font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.screen-reader-text{position:absolute;left:-9999px}
.container,.puremag-container{width:min(var(--max),calc(100% - 64px));margin:auto}

/* ============ nav (site-wide, matches main site) ============ */
.wd-site-nav,#puremag-primary-navigation{position:sticky;top:0;z-index:30;background:rgba(6,4,9,.82);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.05);padding:0}
/* WordPress's own post-navigation (prev/next links) and comment-navigation
   both use a semantic <nav> tag too, explicitly excluding those from ever
   becoming sticky, a bare "nav{}" selector would otherwise catch them and
   make them stick/overlap content while scrolling. */
nav.post-navigation,nav.comment-navigation{position:static !important;top:auto !important;z-index:auto !important}
.wd-nav-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;width:min(var(--max),calc(100% - 64px));margin:auto}
.wd-brand-wrap{display:flex;align-items:center;gap:14px}
.wd-brand-mark img{display:block;height:56px;width:auto}
.wd-brand-copy{line-height:1.15}
.wd-brand-name{font-family:var(--font-brand);font-weight:700;font-size:22px;letter-spacing:.09em;text-transform:uppercase;background:linear-gradient(90deg,#fff4e8,#d9c9ff 45%,#ffb37d);-webkit-background-clip:text;background-clip:text;color:transparent}
.wd-brand-tag{font-size:13px;color:#eed4bb;letter-spacing:.04em}
.wd-nav-links{display:flex;gap:4px;align-items:center;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.wd-nav-links a{color:var(--muted);font-size:15px;padding:9px 13px;border-radius:8px;transition:.25s;position:relative;border:1px solid transparent;display:inline-block}
.wd-nav-links a:hover,.wd-nav-links a.wd-is-current{color:#fff;background:rgba(124,58,237,.16);border-color:rgba(158,112,246,.35)}
.wd-cta-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 20px;border-radius:8px;background:linear-gradient(90deg,var(--purple),var(--orange));font-weight:700;font-size:14px;color:#fff;transition:.25s;box-shadow:0 8px 24px rgba(124,58,237,.25)}
.wd-cta-btn:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(124,58,237,.4)}
.wd-mobile-toggle{display:none;width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:var(--text);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.wd-mobile-toggle span{display:block;width:16px;height:2px;border-radius:2px;background:currentColor;transition:.25s}
.wd-mobile-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.wd-mobile-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.wd-mobile-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ============ page-level header band (single/archive context) ============ */
.wd-page-head{padding:56px 0 40px;text-align:center;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.wd-page-head::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(880px,95%);height:100%;pointer-events:none;background:radial-gradient(ellipse at 50% 0%, rgba(255,196,140,.12), transparent 62%)}
.wd-page-head .slug{display:block;margin-bottom:14px;position:relative;z-index:1}
.wd-page-head h1{margin:0 auto;max-width:900px;font-family:var(--font-poster);font-size:clamp(36px,6vw,64px);line-height:1;letter-spacing:.02em;text-transform:uppercase;position:relative;z-index:1;
  background:linear-gradient(90deg,#fff,#d9c9ff,#ffb37d,#fff);-webkit-background-clip:text;background-clip:text;color:transparent}
.wd-page-head p{max-width:640px;margin:16px auto 0;position:relative;z-index:1}
#puremag-header-banner{padding:0}

/* ============ blog listing (archive / index) ============ */
#puremag-main-wrapper{padding:48px 0 64px}
.wd-content-columns{display:flex;gap:40px;align-items:flex-start;width:min(1160px,calc(100% - 64px));margin:40px auto 0}
.wd-content-main{flex:1 1 auto;min-width:0}
.puremag-posts-container{display:flex;flex-direction:column;gap:22px;max-width:900px;margin:0 auto}
.puremag-list-post{display:flex;gap:22px;padding:22px;border-radius:16px;background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid var(--line);position:relative;overflow:hidden;transition:.3s}
.puremag-list-post::after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--purple),var(--orange));opacity:.6;pointer-events:none}
.puremag-list-post:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(124,58,237,.22);border-color:rgba(158,112,246,.3)}
.puremag-list-post-thumbnail{flex:0 0 auto;width:220px;height:150px;border-radius:12px;overflow:hidden}
.puremag-list-post-thumbnail-img{display:block;width:100%;height:100%;object-fit:cover}
.puremag-list-post-details,.puremag-list-post-details-full{flex:1 1 auto;min-width:0}
.puremag-list-post-categories{font-family:var(--font-script);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.puremag-list-post-categories a{color:var(--gold)}
.puremag-list-post-title{margin:0 0 10px;font-family:var(--font-poster);font-size:26px;letter-spacing:.02em;text-transform:uppercase;color:#f4ecff;line-height:1.05}
.puremag-list-post-title a:hover{color:var(--gold)}
.puremag-list-post-footer{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:#9f8ec6;margin-bottom:10px}
.puremag-list-post-meta a{color:#9f8ec6}
.puremag-list-post-snippet{font-size:.98rem;color:var(--muted)}
.puremag-list-post-read-more a{display:inline-block;margin-top:10px;font-size:13px;font-weight:700;color:var(--gold);border-bottom:1px dotted rgba(245,208,168,.5)}
.puremag-posts-heading{font-family:var(--font-poster);font-size:clamp(28px,4vw,40px);text-transform:uppercase;letter-spacing:.02em;color:#fff;text-align:center;margin:0 0 32px}
.puremag-featured-posts-area{max-width:900px;margin:0 auto}

/* pagination */
.puremag-posts-navigation,.pagination,.nav-links{display:flex;gap:10px;justify-content:center;margin:30px auto 0}
.puremag-posts-navigation a,.puremag-posts-navigation span,.pagination a,.pagination span{padding:9px 16px;border-radius:10px;border:1px solid var(--line);color:var(--muted);font-size:14px}
.puremag-posts-navigation a:hover,.pagination a:hover{border-color:rgba(158,112,246,.45);color:#fff}
.puremag-posts-navigation .current,.pagination .current{background:linear-gradient(90deg,var(--purple),var(--orange));color:#fff;border-color:transparent}

/* ============ single post ============ */
.puremag-post-singular{max-width:760px;margin:0 auto}
.puremag-post-singular .entry-header{text-align:center;margin-bottom:30px}
.puremag-entry-meta-single{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;font-size:13px;color:#9f8ec6;margin:14px 0}
.puremag-entry-meta-single-cats a{color:var(--gold)}
.puremag-entry-meta-single a{color:#9f8ec6}
.puremag-entry-meta-single .fa,.puremag-entry-meta-single-cats .fa{margin-right:4px;color:var(--orange)}
.post-title.entry-title{font-family:var(--font-poster);font-size:clamp(34px,5.5vw,56px);line-height:1.05;letter-spacing:.02em;text-transform:uppercase;margin:0 0 6px;
  background:linear-gradient(90deg,#fff,#d9c9ff,#ffb37d,#fff);-webkit-background-clip:text;background-clip:text;color:transparent}
.puremag-post-thumbnail-single{border-radius:16px;margin-bottom:30px;display:block;width:100%}
.entry-content{font-size:1.06rem;color:#ede4ff}
.entry-content h2,.entry-content h3{font-family:var(--font-poster);letter-spacing:.02em;text-transform:uppercase;color:#fff;margin:36px 0 14px}
.entry-content h2{font-size:32px;line-height:1.15}
.entry-content h3{font-size:23px;line-height:1.2}
.entry-content a{color:var(--gold);border-bottom:1px dotted rgba(245,208,168,.5)}
.entry-content blockquote{margin:24px 0;padding:18px 22px;border-left:3px solid var(--orange);background:rgba(255,255,255,.03);border-radius:0 12px 12px 0;font-style:italic;color:var(--muted)}
.entry-content pre,.entry-content code{background:var(--panel-2);border-radius:8px;color:#f0e6ff}
.entry-content pre{padding:16px;overflow-x:auto}
.entry-footer{margin-top:30px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
.tags-links{font-size:13px;color:var(--muted)}
.tags-links a{color:var(--gold);border-bottom:1px dotted rgba(245,208,168,.5);margin-left:4px}
.tags-links .fa{color:var(--orange);margin-right:4px}
.puremag-share-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.puremag-share-text{font-size:13px;color:#9f8ec6;margin-right:4px}
.puremag-share-buttons a{width:32px;height:32px;border-radius:999px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;color:var(--muted);transition:.25s}
.puremag-share-buttons a:hover{color:#fff;border-color:rgba(158,112,246,.5);background:rgba(124,58,237,.14)}
.puremag-post-navigation,.post-navigation{display:flex;justify-content:space-between;gap:20px;margin:40px auto 0;padding-top:24px;border-top:1px solid var(--line)}
.puremag-post-navigation a,.post-navigation a{color:var(--gold);font-size:14px}
.puremag-author-bio{display:flex;gap:18px;align-items:flex-start;margin:40px auto 0;padding:24px;border-radius:14px;background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid var(--line)}
.puremag-author-bio-top{display:flex;gap:18px;align-items:flex-start;width:100%}
.puremag-author-bio-gravatar img{border-radius:999px;flex:0 0 auto;display:block}
.puremag-author-bio-text strong{display:block;color:#fff;font-size:1.05rem;margin-bottom:6px;font-family:var(--font-poster);letter-spacing:.02em;text-transform:uppercase}
.puremag-author-bio-social{margin-top:12px;display:flex;gap:12px;flex-wrap:wrap}
.puremag-author-bio-social a{font-size:13px;color:var(--gold)}
.puremag-author-bio-social .fa{margin-right:3px}
.puremag-related-posts-wrap{margin:48px auto 0}
.puremag-related-posts-wrap h4{font-family:var(--font-poster);letter-spacing:.02em;text-transform:uppercase;color:#fff;text-align:center;margin-bottom:20px;font-size:20px}
.puremag-related-posts-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.puremag-related-post-item{border-radius:12px;overflow:hidden;background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid var(--line);transition:.25s}
.puremag-related-post-item:hover{transform:translateY(-3px);border-color:rgba(158,112,246,.35)}
.puremag-related-posts-image{display:block}
.puremag-related-post-item-thumbnail{display:block;width:100%;height:120px;object-fit:cover}
.puremag-related-post-item-title{display:block;padding:12px 14px;font-size:14px;font-weight:600;color:#f4ecff}

/* ============ sidebar ============ */
#puremag-sidebar-wrapper{flex:0 0 320px;max-width:320px}
.widget{margin-bottom:30px;padding:22px;border-radius:14px;background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid var(--line)}
.widget-title,.puremag-widget-title{font-family:var(--font-poster);font-size:18px;letter-spacing:.03em;text-transform:uppercase;color:#fff;margin:0 0 14px}
.widget a{color:var(--gold)}
.widget ul{list-style:none;margin:0;padding:0}
.widget li{padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}
.widget li:last-child{border-bottom:none}
.widget input[type="text"],.widget input[type="search"],.widget input[type="email"],.widget textarea,.widget select{width:100%;padding:10px 14px;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--text);font-family:var(--font-body)}
.widget button:not(.puremag-search-submit),.widget input[type="submit"]:not(.puremag-search-submit){display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;margin-top:10px;border-radius:8px;border:none;background:linear-gradient(90deg,var(--purple),var(--orange));color:#fff;font-weight:700;font-size:14px;cursor:pointer}
/* Third-party plugin widgets (ConvertKit, WPForms, etc.) still land inside the
   same .widget wrapper, so keep their default text/link colors legible on dark. */
.widget p,.widget label{color:var(--muted)}

/* ============ About Me widget (real PureMag markup, real content: photo, bio, MVP badge, resume links) ============ */
.puremag-about-widget-image{margin-bottom:14px;text-align:center}
.puremag-about-widget-image img{border-radius:14px;display:inline-block;max-width:160px}
.puremag-about-widget-description{font-size:14px;color:var(--muted)}
.puremag-about-widget-description a{color:var(--gold);border-bottom:1px dotted rgba(245,208,168,.5)}
.puremag-about-widget-description .mvpPanel{display:block;text-align:center}
.puremag-about-widget-description .mvpPanel img{max-width:100%;filter:brightness(1.1)}
.resume-button{display:inline-block;margin:4px 8px 4px 0;padding:9px 18px;border-radius:8px;background:linear-gradient(90deg,var(--purple),var(--orange)) !important;color:#fff !important;font-weight:700;font-size:13px;letter-spacing:.03em;text-transform:uppercase;transition:.25s}
.resume-button:hover{transform:translateY(-2px);filter:brightness(1.1)}
.puremag-about-widget-social ul{list-style:none;margin:14px 0 0;padding:0;display:flex;gap:8px;flex-wrap:wrap;border:none;justify-content:center}
.puremag-about-widget-social li{padding:0;border:none}
.puremag-about-widget-social a{width:32px;height:32px;border-radius:999px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;color:var(--muted);transition:.25s}
.puremag-about-widget-social a:hover{color:#fff;border-color:rgba(158,112,246,.5);background:rgba(124,58,237,.14)}

/* ============ custom HTML widgets (Newsletter / Community Closeups, real widget type) ============ */
.widget_custom_html .textwidget{font-size:14px;color:var(--muted)}
.widget_custom_html .textwidget img{border-radius:12px;display:block;width:100%}
.widget_custom_html .textwidget a{display:block}

/* ============ search widget (real PureMag markup) ============ */
.puremag-search-form{display:flex;gap:8px}
.puremag-search-field{flex:1 1 auto;padding:10px 14px;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--text)}
.puremag-search-submit{padding:10px 16px;border-radius:8px;border:none;background:linear-gradient(90deg,var(--purple),var(--orange));color:#fff;font-weight:700;font-size:13px;cursor:pointer}

/* ============ categories widget (real WP core markup, cat-item + post counts) ============ */
.widget_categories ul{max-height:340px;overflow-y:auto}
.widget_categories .cat-item{display:flex;justify-content:space-between;gap:8px}

/* ============ 404 page ============ */
.wd-404-content{max-width:640px;margin:0 auto;text-align:center}
.wd-404-content .puremag-search-form{max-width:420px;margin:0 auto 40px}
.wd-404-content > div{margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}
.wd-404-content h2{font-family:var(--font-poster);letter-spacing:.02em;text-transform:uppercase;color:#fff;font-size:22px;margin:0 0 14px}
.wd-404-content ul{list-style:none;margin:0;padding:0}
.wd-404-content li{padding:6px 0;border-bottom:none;font-size:14px}
.tagcloud{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.tagcloud a{display:inline-block;padding:6px 14px;border-radius:8px;border:1px solid var(--line);color:var(--muted) !important;font-size:13px !important;text-decoration:none}
.tagcloud a:hover{color:#fff !important;border-color:rgba(158,112,246,.45)}

/* ============ footer ============ */
#puremag-footer-blocks{padding:48px 0;border-top:1px solid var(--line);background:rgba(0,0,0,.25)}
#puremag-footer-blocks .puremag-container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
#puremag-footer-blocks .widget{margin-bottom:0}
.wd-footer{padding:44px 0 40px;text-align:center;border-top:1px solid rgba(255,255,255,.06);background:rgba(0,0,0,.4)}
.wd-footer-links{font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px}
.wd-footer-links a{color:var(--gold);border-bottom:1px dotted rgba(245,208,168,.5)}
.wd-footer-social{display:flex;gap:12px;justify-content:center;margin:20px 0 14px}
.wd-social-link{color:var(--muted);width:34px;height:34px;border-radius:999px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;transition:.25s}
.wd-social-link:hover{color:#fff;border-color:rgba(158,112,246,.5);background:rgba(124,58,237,.14)}
.wd-social-link svg{width:16px;height:16px;fill:currentColor}
.wd-credits{font-size:13px;color:#8471ad}

/* ============ comments (kept generic/functional, not deeply themed) ============ */
.comments-area{max-width:760px;margin:48px auto 0}
.comments-title{font-family:var(--font-poster);letter-spacing:.02em;text-transform:uppercase;color:#fff}
.comment-list{list-style:none;margin:0;padding:0}
.comment-list .comment{padding:18px 0;border-bottom:1px solid var(--line)}
.comment-form input,.comment-form textarea{width:100%;padding:10px 14px;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--text);font-family:var(--font-body)}
.comment-form label{font-size:14px;color:var(--muted)}
.comment-reply-title{font-family:var(--font-poster);letter-spacing:.02em;text-transform:uppercase;color:#fff}

@media (max-width:900px){
  #puremag-footer-blocks .puremag-container{grid-template-columns:repeat(2,minmax(0,1fr))}
  .puremag-list-post{flex-direction:column}
  .puremag-list-post-thumbnail{width:100%;height:220px}
  #puremag-sidebar-wrapper{max-width:none}
  .wd-content-columns{flex-direction:column}
}
@media (max-width:640px){
  .wd-nav-links{display:none}
  .wd-mobile-toggle{display:inline-flex}
  .wd-nav-right{display:none;width:100%;flex-direction:column;align-items:stretch;gap:8px;padding:12px 0 6px}
  .wd-nav-right.wd-is-open{display:flex}
  #puremag-footer-blocks .puremag-container{grid-template-columns:1fr}
  .puremag-author-bio-top{flex-direction:column;text-align:center;align-items:center}
  .puremag-related-posts-list{grid-template-columns:1fr}
}
@media (min-width:641px){
  .wd-nav-right{display:flex;align-items:center;gap:10px}
}

/* ============================================================
   Hardening: the OLD theme's customizer settings (Appearance >
   Customize, configured before this child theme existed) still
   print their own inline CSS in <head>. Several of those rules
   use ID-based selectors or !important, which beat plain class
   rules above regardless of load order. These overrides win on
   specificity/!important/source-order (this block loads last).
   ============================================================ */
#puremag-sidebar-wrapper .widget .puremag-widget-title,
#puremag-footer-blocks .widget .puremag-widget-title,
.puremag-featured-posts-area .widget .puremag-widget-title{color:#fff !important}
#puremag-sidebar-wrapper .widget a{color:var(--gold) !important}
#puremag-sidebar-wrapper .widget a:hover{color:#fff !important}
.entry-content a{color:var(--gold) !important}
.entry-content a:hover{color:#fff !important}

/* "Continue Reading" was accidentally becoming a filled purple pill via old
   customizer CSS (!important background). Embracing it as an intentional
   button instead of fighting it, matches the .cta-btn language elsewhere. */
.puremag-list-post-read-more a,
.puremag-standard-post-read-more a,
.puremag-grid-post-read-more a{
  background:linear-gradient(90deg,var(--purple),var(--orange)) !important;
  color:#fff !important;
  display:inline-block;
  padding:9px 20px;
  border-radius:8px;
  font-weight:700;
  font-size:13px;
  border:none;
  transition:.25s;
}
.puremag-list-post-read-more a:hover,
.puremag-standard-post-read-more a:hover,
.puremag-grid-post-read-more a:hover{
  color:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(124,58,237,.35);
}

/* Category tags already get an old-customizer orange badge background
   (!important), polishing it into an intentional pill instead of fighting it. */
.puremag-list-post-categories,
.puremag-standard-post-categories,
.puremag-grid-post-categories,
.puremag-featured-post-categories{margin-bottom:10px}
.puremag-list-post-categories a,
.puremag-standard-post-categories a,
.puremag-grid-post-categories a,
.puremag-featured-post-categories a{
  display:inline-block;
  padding:4px 12px !important;
  border-radius:6px;
  font-family:var(--font-script);
  font-size:11px !important;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#1a0f00 !important;
  font-weight:700;
}

/* Author bio uses a real <h4>Author: <span>Name</span></h4>, not the <strong>
   this was originally styled for, so it was falling through to the old
   customizer's global "h1,h2,h3,h4,h5,h6{color:#111111}" rule, near-black
   text on a near-black panel. Same risk applies to any h4-h6 a real post's
   own body content might use, guarding entry-content the same way. */
.puremag-author-bio-text h4,
.puremag-author-bio-text h4 span{color:#fff !important;font-family:var(--font-poster);letter-spacing:.02em;text-transform:uppercase;font-size:1.05rem}
.entry-content h4,.entry-content h5,.entry-content h6{color:#fff !important}

/* Old customizer CSS also adds a border-bottom to widget titles (#555, dull
   gray) and to the whole widget box + comments area (#872f96, mismatched
   purple), overriding those with our own consistent line color/removing them. */
#puremag-sidebar-wrapper .widget,
#puremag-footer-blocks .widget{border:1px solid var(--line) !important}
.puremag-widget-title{border-bottom:1px solid var(--line) !important;padding-bottom:10px}
.comments-area{border:none !important}
/* Old customizer CSS also boxes the post column itself in a purple/orange
   border (.puremag-posts / .puremag-post-singular), the vertical line running
   down single posts. Post content isn't meant to be a bordered card here. */
.puremag-post-singular,.puremag-posts{border:none !important}

/* Older posts sometimes have inline background/font-family styling baked
   directly into their saved content (e.g. pasted Twitter citations from
   years ago: style="background:#fff;font-family:'segoe ui'..."). That read
   fine against the old light theme, but shows up as a jarring mismatched
   white box against this dark one. Broadly neutralizing it site-wide,
   no legitimate future post is likely to want a random inline light
   background against this design. */
.entry-content [style*="background"]{background:transparent !important}
.entry-content [style*="font-family"]{font-family:inherit !important}
.entry-content [style*="color: blue"],
.entry-content [style*="color:blue"]{color:var(--gold) !important}
