/*
Theme Name: usMuse Editorial
Theme URI: https://usmuse.com
Author: usMuse
Author URI: https://usmuse.com
Description: A fast, original editorial magazine theme for general blogging. Inspired by the newsroom feel of major editorial sites - serif headlines, section kickers, a clean masthead and a story grid - built lightweight for great Core Web Vitals and SEO. Fully responsive.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: usmuse-editorial
Tags: blog, news, custom-menu, featured-images, threaded-comments, translation-ready, right-sidebar
*/

:root{
  --ink:#111111; --ink-soft:#2b2b2b; --muted:#6a6a6a; --faint:#8c8c8c;
  --bg:#ffffff; --bg-alt:#f6f5f2; --rule:#e5e3de; --rule-strong:#111111;
  --accent:#c8102e; --accent-dark:#98001f; --brand:#12284c; --link:#0a4595; --link-hover:#c8102e;
  --serif:"Source Serif 4","Georgia","Times New Roman",serif;
  --sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --container:1200px; --measure:44rem; --radius:2px;
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--link);text-decoration:none;}
a:hover,a:focus{color:var(--link-hover);text-decoration:underline;text-underline-offset:2px;}
figure{margin:0;}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.container{max-width:var(--container);margin:0 auto;padding:0 1.25rem;}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:.6rem 1rem;z-index:1000;}
.skip-link:focus{left:1rem;top:1rem;}

h1,h2,h3,h4,h5,h6{font-family:var(--serif);color:var(--ink);line-height:1.15;font-weight:700;margin:0 0 .5em;letter-spacing:-.01em;}
h1{font-size:clamp(2.1rem,4.6vw,3.4rem);}
h2{font-size:clamp(1.6rem,3vw,2.2rem);}
h3{font-size:1.4rem;}
p{margin:0 0 1.25rem;}
.kicker{font-family:var(--sans);font-weight:700;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);display:inline-block;margin-bottom:.55rem;}
.kicker a{color:inherit;text-decoration:none;}
.kicker a:hover{color:var(--accent-dark);}
.meta{font-family:var(--sans);font-size:.82rem;color:var(--muted);}
.meta a{color:var(--ink-soft);}
.meta .sep{margin:0 .45rem;color:var(--faint);}

.site-header{border-bottom:3px solid var(--rule-strong);background:var(--bg);}
.topbar{border-bottom:1px solid var(--rule);font-family:var(--sans);font-size:.75rem;color:var(--muted);letter-spacing:.04em;}
.topbar .container{display:flex;align-items:center;justify-content:space-between;min-height:34px;text-transform:uppercase;}
.topbar .topbar__tag{color:var(--accent);font-weight:700;}
.masthead{text-align:center;padding:1.5rem 0 1.1rem;}
.masthead__brand{font-family:var(--serif);font-weight:700;font-size:clamp(2.2rem,6vw,3.6rem);letter-spacing:-.02em;color:var(--brand);line-height:1;text-decoration:none;display:inline-block;}
.masthead__brand:hover{color:var(--brand);text-decoration:none;}
.masthead__brand b{color:var(--accent);font-weight:700;}
.masthead__tagline{font-family:var(--sans);font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:.55rem;}
.custom-logo{margin:0 auto;}
.primary-nav{border-top:1px solid var(--rule);font-family:var(--sans);}
.primary-nav .container{display:flex;align-items:center;justify-content:center;gap:.25rem;position:relative;flex-wrap:wrap;}
.primary-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;}
.primary-nav li{position:relative;}
.primary-nav a{display:block;padding:.85rem 1rem;color:var(--ink);font-weight:600;font-size:.86rem;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;}
.primary-nav a:hover,.primary-nav .current-menu-item>a{color:var(--accent);}
.primary-nav .sub-menu{display:none;position:absolute;top:100%;left:0;z-index:50;background:var(--bg);border:1px solid var(--rule);min-width:210px;box-shadow:0 12px 30px rgba(0,0,0,.08);padding:.25rem 0;}
.primary-nav li:hover>.sub-menu,.primary-nav li:focus-within>.sub-menu{display:block;}
.primary-nav .sub-menu a{text-transform:none;letter-spacing:0;padding:.6rem 1.1rem;font-size:.9rem;}
.nav-toggle{display:none;background:none;border:1px solid var(--rule);font-family:var(--sans);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;padding:.6rem .9rem;color:var(--ink);cursor:pointer;}

.site-main{padding:2.25rem 0 3rem;}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:3rem;}
.layout--full{grid-template-columns:minmax(0,1fr);}
@media(max-width:900px){.layout{grid-template-columns:1fr;gap:2.25rem;}}
.section-head{display:flex;align-items:baseline;gap:1rem;border-bottom:2px solid var(--rule-strong);margin:0 0 1.5rem;padding-bottom:.5rem;}
.section-head h2{font-size:1.05rem;text-transform:uppercase;letter-spacing:.08em;font-family:var(--sans);font-weight:800;margin:0;color:var(--ink);}
.lead{display:grid;grid-template-columns:1.35fr 1fr;gap:2.5rem;padding-bottom:2rem;margin-bottom:2rem;border-bottom:1px solid var(--rule);}
.lead__media{overflow:hidden;background:var(--bg-alt);}
.lead__media img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .5s ease;}
.lead__media:hover img{transform:scale(1.03);}
.lead__title{font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.08;margin:.2rem 0 .6rem;}
.lead__title a{color:var(--ink);text-decoration:none;}
.lead__title a:hover{color:var(--accent);}
.lead__excerpt{color:var(--ink-soft);font-size:1.08rem;}
@media(max-width:760px){.lead{grid-template-columns:1fr;gap:1.25rem;}}
.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 2.25rem;}
@media(max-width:900px){.story-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.story-grid{grid-template-columns:1fr;}}
.card{display:flex;flex-direction:column;}
.card__media{overflow:hidden;background:var(--bg-alt);margin-bottom:.85rem;}
.card__media img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .5s ease;}
.card__media:hover img{transform:scale(1.04);}
.card__title{font-size:1.28rem;line-height:1.18;margin:.15rem 0 .5rem;}
.card__title a{color:var(--ink);text-decoration:none;}
.card__title a:hover{color:var(--accent);}
.card__excerpt{color:var(--muted);font-size:.95rem;margin-bottom:.6rem;}

.article__header{max-width:var(--measure);margin:0 auto 1.5rem;text-align:left;}
.article__title{font-size:clamp(2.1rem,4.4vw,3.2rem);line-height:1.1;margin:.35rem 0 .7rem;}
.article__standfirst{font-family:var(--serif);font-size:1.28rem;line-height:1.5;color:var(--ink-soft);margin:0 0 1.1rem;font-weight:400;}
.article__byline{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:.85rem 0;margin-bottom:1.75rem;}
.article__byline .avatar{border-radius:50%;width:40px;height:40px;}
.article__figure{margin:0 0 1.75rem;}
.article__figure img{width:100%;}
.article__figure figcaption,.wp-caption-text{font-family:var(--sans);font-size:.8rem;color:var(--muted);padding:.5rem 0;border-bottom:1px solid var(--rule);}
.entry-content{max-width:var(--measure);margin:0 auto;font-size:1.14rem;line-height:1.75;}
.entry-content p{margin:0 0 1.5rem;}
.entry-content h2{font-size:1.7rem;margin:2.2rem 0 .8rem;}
.entry-content h3{font-size:1.35rem;margin:1.8rem 0 .6rem;}
.entry-content a{text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;}
.entry-content ul,.entry-content ol{margin:0 0 1.5rem;padding-left:1.4em;}
.entry-content li{margin-bottom:.5rem;}
.entry-content blockquote{margin:2rem 0;padding:.25rem 0 .25rem 1.5rem;border-left:4px solid var(--accent);font-family:var(--serif);font-size:1.5rem;line-height:1.4;color:var(--ink);font-style:italic;}
.entry-content blockquote cite{display:block;font-size:.9rem;font-style:normal;color:var(--muted);font-family:var(--sans);}
.entry-content img{margin:0 auto 1.5rem;}
.entry-content pre{background:var(--ink);color:#f4f4f4;padding:1.1rem 1.25rem;overflow:auto;font-size:.92rem;border-radius:var(--radius);margin:0 auto 1.75rem;}
.entry-content code{background:var(--bg-alt);padding:.12em .4em;border-radius:var(--radius);font-size:.92em;}
.entry-content pre code{background:none;padding:0;}
.entry-content .alignwide{max-width:1000px;}
.entry-content .alignfull{max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
.entry-content>p:first-of-type::first-letter{font-family:var(--serif);float:left;font-size:4.2rem;line-height:.72;padding:.28rem .55rem 0 0;color:var(--accent);font-weight:700;}
.tags{max-width:var(--measure);margin:2rem auto 0;font-family:var(--sans);font-size:.82rem;}
.tags a{display:inline-block;background:var(--bg-alt);border:1px solid var(--rule);padding:.25rem .7rem;margin:0 .35rem .5rem 0;color:var(--ink-soft);border-radius:var(--radius);text-decoration:none;}
.tags a:hover{background:var(--accent);color:#fff;border-color:var(--accent);}
.article-nav{max-width:var(--measure);margin:2.5rem auto 0;display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--rule);padding-top:1.25rem;font-family:var(--sans);}
.article-nav a{font-weight:600;color:var(--ink);}
.article-nav a:hover{color:var(--accent);}
.article-nav .label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);}

.page-hero{border-bottom:2px solid var(--rule-strong);margin-bottom:2rem;padding-bottom:1rem;}
.page-hero h1{font-size:clamp(1.9rem,4vw,2.8rem);margin:0;}
.page-hero p{color:var(--muted);margin:.6rem 0 0;font-family:var(--sans);}
.page-content{max-width:var(--measure);margin:0 auto;font-size:1.1rem;line-height:1.75;}
.pagination{margin:3rem 0 0;display:flex;gap:.4rem;flex-wrap:wrap;font-family:var(--sans);justify-content:center;}
.pagination .page-numbers{display:inline-block;padding:.55rem .9rem;border:1px solid var(--rule);color:var(--ink);font-weight:600;font-size:.9rem;text-decoration:none;}
.pagination .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink);}
.pagination .page-numbers:hover{background:var(--accent);color:#fff;border-color:var(--accent);}

.sidebar .widget{margin-bottom:2.25rem;font-family:var(--sans);}
.sidebar .widget-title{font-family:var(--sans);font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;border-bottom:2px solid var(--rule-strong);padding-bottom:.5rem;margin:0 0 1rem;}
.sidebar ul{list-style:none;margin:0;padding:0;}
.sidebar li{padding:.5rem 0;border-bottom:1px solid var(--rule);font-size:.95rem;}
.sidebar a{color:var(--ink-soft);}
.sidebar a:hover{color:var(--accent);}
.widget_search .search-form{display:flex;gap:.4rem;}
.search-form input[type=search]{flex:1;border:1px solid var(--rule);padding:.6rem .75rem;font-family:var(--sans);font-size:.95rem;}
.search-form button{background:var(--ink);color:#fff;border:none;padding:.6rem 1rem;font-family:var(--sans);font-weight:600;cursor:pointer;}
.search-form button:hover{background:var(--accent);}

.site-footer{background:var(--ink);color:#d7d7d7;margin-top:3rem;font-family:var(--sans);}
.site-footer a{color:#e9e9e9;}
.site-footer a:hover{color:#fff;}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2.5rem;padding:3rem 0 2.25rem;border-bottom:1px solid #2c2c2c;}
@media(max-width:760px){.footer-top{grid-template-columns:1fr;gap:1.75rem;}}
.footer-brand{font-family:var(--serif);font-size:2rem;color:#fff;line-height:1;margin-bottom:.6rem;}
.footer-brand b{color:var(--accent);}
.footer-top p{color:#a9a9a9;font-size:.92rem;}
.footer-col h4{color:#fff;font-family:var(--sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .9rem;}
.footer-col ul{list-style:none;margin:0;padding:0;}
.footer-col li{padding:.35rem 0;font-size:.92rem;}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:1.25rem 0;font-size:.8rem;color:#8f8f8f;}
.footer-bottom a{color:#bdbdbd;}

.comments-area{max-width:var(--measure);margin:3rem auto 0;font-family:var(--sans);}
.comments-title,.comment-reply-title{font-family:var(--serif);font-size:1.5rem;margin-bottom:1rem;}
.comment-list{list-style:none;margin:0;padding:0;}
.comment-body{border-bottom:1px solid var(--rule);padding:1.1rem 0;}
.comment-author .fn{font-weight:700;color:var(--ink);}
.comment-metadata{font-size:.78rem;color:var(--muted);}
.comment-respond input[type=text],.comment-respond input[type=email],.comment-respond input[type=url],.comment-respond textarea{width:100%;border:1px solid var(--rule);padding:.65rem .75rem;font-family:var(--sans);margin:.35rem 0 1rem;}
.comment-respond .submit,.wp-block-button__link{background:var(--ink);color:#fff;border:none;padding:.7rem 1.3rem;font-weight:600;font-family:var(--sans);cursor:pointer;}
.comment-respond .submit:hover{background:var(--accent);}

@media(max-width:820px){
  .nav-toggle{display:block;}
  .primary-nav .container{justify-content:space-between;}
  .primary-nav ul{display:none;flex-direction:column;width:100%;justify-content:flex-start;border-top:1px solid var(--rule);}
  .primary-nav.is-open ul{display:flex;}
  .primary-nav a{padding:.8rem .25rem;border-bottom:1px solid var(--rule);width:100%;text-align:left;}
  .primary-nav .sub-menu{position:static;border:none;box-shadow:none;padding-left:1rem;}
}
.sticky-badge{display:inline-block;background:var(--accent);color:#fff;font-family:var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.15rem .5rem;margin-bottom:.5rem;}
.entry-content .wp-block-image,.entry-content figure{margin-bottom:1.5rem;}
