
:root{
  --white:#ffffff;
  --paper:#f7f6f2;
  --graphite:#1f2326;
  --muted:#697178;
  --line:#d9dcde;
  --blue:#55738a;
  --gold:#b99a61;
  --content:1320px;
  --reading:760px;
  --shadow:0 18px 50px rgba(17,25,32,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--white);color:var(--graphite);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.62;text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(85,115,138,.38);outline-offset:4px}
.container{width:min(calc(100% - 40px),var(--content));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:0;background:#111;color:#fff;padding:.8rem;z-index:999}
.skip-link:focus{left:1rem;top:1rem}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}
.brand-row{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand img{width:46px;height:46px;object-fit:contain}
.brand-name{font-family:Georgia,"Times New Roman",serif;letter-spacing:.095em;font-size:clamp(1.15rem,2vw,1.55rem);white-space:nowrap}
.utility-nav,.category-nav{display:flex;align-items:center;gap:24px}
.utility-nav a,.category-nav a{font-size:.82rem;letter-spacing:.045em}
.utility-nav a:hover,.category-nav a:hover,.category-nav a[aria-current="page"]{color:var(--blue)}
.search-button{border:0;background:transparent;font:inherit;cursor:pointer;padding:6px}
.category-bar{border-top:1px solid #eef0f1}
.category-row{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.category-nav{overflow-x:auto;white-space:nowrap;padding:10px 0}
.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:999px;padding:.55rem .75rem}
.search-panel{display:none;border-top:1px solid var(--line);background:var(--paper)}
.search-panel.is-open{display:block}
.search-form{display:flex;gap:10px;padding:18px 0}
.search-form input{flex:1;border:1px solid var(--line);padding:13px 15px;font-size:1rem;background:#fff}
.search-form button,.button{border:1px solid var(--graphite);background:var(--graphite);color:#fff;padding:12px 18px;cursor:pointer;display:inline-block}
.hero{padding:72px 0 36px}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--gold);font-weight:650}
.hero h1,.page-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.08;margin:.4rem 0 1rem;font-size:clamp(2.7rem,7vw,6.2rem)}
.hero-copy{max-width:760px;font-size:clamp(1.05rem,2vw,1.3rem);color:#454c51}
.ad-slot{
  min-height:110px;border:1px dashed #c9cdd0;background:#fafafa;color:#8b9195;
  display:flex;align-items:center;justify-content:center;text-align:center;
  font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin:30px auto;
}
.ad-slot--article{min-height:250px;margin:44px 0}
.ad-slot span{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#a0a4a7}
.sources{border-top:1px solid var(--line);margin-top:3.5rem;padding-top:1rem}
.sources ol{font-family:Inter,sans-serif;font-size:.92rem;line-height:1.7;padding-left:1.2rem}
.sources a{text-decoration:underline;text-underline-offset:3px}
.source-note{font-family:Inter,sans-serif;font-size:.78rem;color:var(--muted)}
.section{padding:60px 0}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:15px}
.section-heading h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(2rem,4vw,3.7rem);margin:0}
.section-heading p{max-width:520px;color:var(--muted);margin:0}
.discovery-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr;grid-template-rows:repeat(2,minmax(260px,1fr));gap:14px}
.story-card{position:relative;overflow:hidden;min-height:280px;background:#161b1f;color:#fff;box-shadow:var(--shadow)}
.story-card--large{grid-row:1 / 3}
.story-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.story-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,9,12,.08) 20%,rgba(5,9,12,.88) 100%)}
.story-card:hover img{transform:scale(1.025)}
.story-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:24px}
.story-category{text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;color:#f1d29c}
.story-card h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.12;margin:.5rem 0;font-size:clamp(1.35rem,2.2vw,2.45rem)}
.story-card:not(.story-card--large) h3{font-size:clamp(1.16rem,1.6vw,1.55rem)}
.story-summary{font-size:.9rem;color:#e9eaeb;margin:0}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.info-card{border-top:1px solid var(--graphite);padding-top:18px}
.info-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;font-weight:400;margin:.3rem 0}
.info-card p{color:var(--muted)}
.text-link{color:var(--blue);font-weight:600}
.category-list{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.category-tile{border:1px solid var(--line);padding:22px 18px;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;transition:.2s}
.category-tile:hover{border-color:var(--gold);transform:translateY(-2px)}
.category-tile h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;margin:0;font-size:1.35rem}
.category-tile p{font-size:.86rem;color:var(--muted);margin:.8rem 0 0}
.page-hero{padding:70px 0 38px;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(2.8rem,6vw,5.5rem)}
.page-intro{max-width:800px;color:#4e565b;font-size:1.15rem}
.article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.article-card{border-top:1px solid var(--graphite);padding-top:14px}
.article-card img{aspect-ratio:16/10;object-fit:cover;margin-bottom:16px}
.article-card h2,.article-card h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.18;margin:.35rem 0}
.article-meta{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--gold)}
.article-card p{color:var(--muted)}
.article-shell{display:grid;grid-template-columns:minmax(0,var(--reading)) 280px;gap:70px;align-items:start}
.article-header{padding:70px 0 30px}
.article-header h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(2.6rem,6vw,5.2rem);line-height:1.05;margin:.55rem 0}
.article-deck{font-size:1.28rem;color:#4c555b;max-width:850px}
.article-byline{font-size:.82rem;color:var(--muted);margin-top:25px}
.article-hero-image{width:100%;max-height:720px;object-fit:cover}
.article-body{font-family:Georgia,"Times New Roman",serif;font-size:1.16rem;color:#292e31;padding:50px 0}
.article-body h2{font-family:Inter,sans-serif;font-size:1.9rem;margin-top:2.4em}
.article-body blockquote{border-left:3px solid var(--gold);margin:2rem 0;padding:0 0 0 1.2rem;font-size:1.35rem;color:#4e555a}
.article-aside{position:sticky;top:150px;border-top:1px solid var(--graphite);padding-top:14px;font-size:.85rem;color:var(--muted)}
.reference-list{font-family:Inter,sans-serif;font-size:.88rem}
.notice{background:var(--paper);padding:22px;border-left:3px solid var(--blue);font-family:Inter,sans-serif;font-size:.9rem}
.content-page{max-width:880px;padding:70px 0}
.content-page h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.6rem,6vw,5rem);font-weight:400}
.content-page h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;margin-top:2.2em}
.contact-form{display:grid;gap:14px;max-width:660px}
.contact-form input,.contact-form textarea{border:1px solid var(--line);padding:13px;font:inherit}
.contact-form textarea{min-height:180px}
.site-footer{margin-top:70px;border-top:1px solid var(--line);background:var(--paper)}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;padding:48px 0}
.footer-brand{display:flex;gap:12px;align-items:center}
.footer-brand img{width:42px}
.footer-links{display:flex;flex-wrap:wrap;gap:14px 22px;font-size:.9rem}
.footer-note{border-top:1px solid var(--line);padding:18px 0;font-size:.78rem;color:var(--muted);display:flex;justify-content:space-between;gap:20px}
.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:200;background:#171b1e;color:#fff;padding:18px;box-shadow:var(--shadow);display:none;align-items:center;justify-content:space-between;gap:20px}
.cookie-banner.is-visible{display:flex}
.cookie-banner p{margin:0;font-size:.88rem}
.cookie-actions{display:flex;gap:10px}
.cookie-actions button{border:1px solid #fff;padding:9px 13px;background:transparent;color:#fff;cursor:pointer}
.cookie-actions .accept{background:#fff;color:#111}
@media(max-width:980px){
  .utility-nav{display:none}
  .menu-toggle{display:inline-block}
  .category-row{align-items:flex-start;flex-direction:column;padding:8px 0}
  .category-nav{display:none;width:100%;flex-direction:column;align-items:flex-start}
  .category-nav.is-open{display:flex}
  .discovery-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .story-card--large{grid-column:1/3;grid-row:auto;min-height:620px}
  .info-grid,.article-list{grid-template-columns:1fr 1fr}
  .category-list{grid-template-columns:repeat(2,1fr)}
  .article-shell{grid-template-columns:1fr}
  .article-aside{position:static}
}
@media(max-width:640px){
  .container{width:min(calc(100% - 24px),var(--content))}
  .brand-row{min-height:70px}
  .brand img{width:38px;height:38px}
  .brand-name{font-size:1rem;letter-spacing:.065em}
  .hero{padding-top:45px}
  .discovery-grid,.info-grid,.article-list,.footer-grid{grid-template-columns:1fr}
  .story-card--large{grid-column:auto;min-height:520px}
  .story-card{min-height:390px}
  .category-list{grid-template-columns:1fr}
  .footer-note{flex-direction:column}
  .cookie-banner{align-items:flex-start;flex-direction:column}
}
