:root {
  --blog-bg: #080a0d;
  --blog-panel: #101722;
  --blog-gold: #c5a46d;
  --blog-champagne: #e1c16e;
  --blog-ivory: #f1eee7;
  --blog-muted: #a2a4a5;
  --blog-line: rgba(225,193,110,.22);
  --blog-serif: 'Cormorant Garamond', Georgia, serif;
  --blog-sans: 'DM Sans', Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--blog-bg); }
body { margin: 0; color: var(--blog-ivory); background: var(--blog-bg); font: 15px/1.7 var(--blog-sans); }
a { color: inherit; }
.blog-header { min-height: 82px; padding: 18px clamp(22px,5vw,76px); display:flex; align-items:center; justify-content:space-between; gap:25px; border-bottom:1px solid var(--blog-line); }
.blog-brand { text-decoration:none; display:flex; flex-direction:column; line-height:1.1; }
.blog-brand strong { font:600 25px var(--blog-serif); letter-spacing:.12em; }
.blog-brand span { margin-top:7px; color:var(--blog-gold); font-size:9px; letter-spacing:.22em; text-transform:uppercase; }
.blog-nav { display:flex; gap:28px; align-items:center; flex-wrap:wrap; }
.blog-nav a { color:var(--blog-muted); text-decoration:none; font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.blog-nav a:hover, .blog-back:hover { color:var(--blog-champagne); }
.blog-nav .blog-nav-home { color:var(--blog-champagne); }
.blog-hero { min-height:510px; display:grid; grid-template-columns:1.05fr .95fr; background:linear-gradient(110deg,#101722,#080a0d); }
.blog-hero-copy { padding:clamp(55px,8vw,110px) clamp(25px,8vw,120px); align-self:center; }
.blog-kicker { color:var(--blog-gold); font-size:10px; letter-spacing:.2em; text-transform:uppercase; }
.blog-hero h1 { margin:20px 0; font:500 clamp(44px,6vw,76px)/.98 var(--blog-serif); }
.blog-hero h1 em { color:var(--blog-champagne); font-weight:400; }
.blog-hero-copy p { max-width:560px; color:#c1c0bb; }
.blog-hero-image { min-height:420px; position:relative; overflow:hidden; }
.blog-hero-image img { width:100%; height:100%; min-height:420px; object-fit:cover; display:block; }
.blog-hero-image:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#101722 0%,transparent 45%),linear-gradient(0deg,rgba(8,10,13,.28),transparent 55%); }
.blog-button { display:inline-block; margin-top:20px; padding:13px 20px; background:var(--blog-champagne); color:#080a0d; text-decoration:none; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.blog-button:hover { background:var(--blog-ivory); }
.blog-content { width:min(1160px, calc(100% - 44px)); margin:0 auto; padding:75px 0 100px; }
.blog-section-heading { display:flex; align-items:center; gap:22px; margin-bottom:28px; }
.blog-section-heading h2 { margin:0; font:500 38px var(--blog-serif); }
.blog-section-heading span { height:1px; flex:1; background:var(--blog-line); }
.blog-categories { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:38px; }
.blog-category { border:1px solid var(--blog-line); padding:8px 13px; color:var(--blog-muted); font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.blog-card { min-width:0; border:1px solid var(--blog-line); background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.008)); }
.blog-card-image { display:block; aspect-ratio:16/10; overflow:hidden; background:#101722; }
.blog-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.blog-card:hover .blog-card-image img { transform:scale(1.04); }
.blog-card-copy { padding:23px; }
.blog-card-copy small { color:var(--blog-gold); font-size:9px; letter-spacing:.15em; text-transform:uppercase; }
.blog-card h3 { margin:12px 0; font:500 27px/1.1 var(--blog-serif); }
.blog-card p { color:var(--blog-muted); font-size:13px; }
.blog-read { display:inline-block; margin-top:10px; color:var(--blog-champagne); font-size:10px; letter-spacing:.13em; text-decoration:none; text-transform:uppercase; }
.blog-note { margin-top:55px; padding:25px 28px; border-left:2px solid var(--blog-gold); background:#101722; color:var(--blog-muted); font-size:12px; }
.blog-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:28px clamp(22px,5vw,76px); border-top:1px solid var(--blog-line); color:var(--blog-muted); font-size:10px; letter-spacing:.08em; }
.blog-footer a { color:var(--blog-gold); text-decoration:none; }
.blog-article-hero { padding:75px 22px 55px; text-align:center; background:linear-gradient(180deg,#101722,#080a0d); }
.blog-article-hero .blog-kicker { display:block; }
.blog-article-hero h1 { max-width:950px; margin:20px auto; font:500 clamp(42px,6vw,70px)/1.02 var(--blog-serif); }
.blog-article-hero .blog-deck { max-width:720px; margin:0 auto; color:#c1c0bb; font-size:16px; }
.blog-meta { margin-top:25px; color:var(--blog-muted); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.blog-article-image { width:min(1100px,calc(100% - 44px)); margin:0 auto; }
.blog-article-image img { display:block; width:100%; max-height:570px; object-fit:cover; }
.blog-article-layout { width:min(1100px,calc(100% - 44px)); margin:65px auto 100px; display:grid; grid-template-columns:minmax(0,740px) 240px; gap:65px; align-items:start; }
.blog-article-body { min-width:0; color:#d1d0ca; font-size:16px; line-height:1.9; }
.blog-article-body h2 { margin:48px 0 15px; color:var(--blog-ivory); font:500 37px/1.1 var(--blog-serif); }
.blog-article-body h3 { margin:30px 0 10px; color:var(--blog-champagne); font:500 25px var(--blog-serif); }
.blog-article-body p { margin:0 0 22px; }
.blog-article-body a { color:var(--blog-champagne); }
.blog-article-body blockquote { margin:30px 0; padding:5px 0 5px 22px; border-left:2px solid var(--blog-gold); color:#e3d7bd; font:italic 25px/1.4 var(--blog-serif); }
.blog-article-aside { position:sticky; top:25px; padding:22px; border:1px solid var(--blog-line); background:#101722; }
.blog-article-aside h3 { margin:0 0 12px; color:var(--blog-champagne); font:500 25px var(--blog-serif); }
.blog-article-aside p { color:var(--blog-muted); font-size:12px; }
.blog-article-aside a { display:block; margin-top:15px; color:var(--blog-champagne); font-size:10px; text-decoration:none; letter-spacing:.1em; text-transform:uppercase; }
.blog-sources { padding-top:22px; border-top:1px solid var(--blog-line); font-size:13px; }
.blog-disclosure { padding:18px; background:#101722; color:var(--blog-muted); font-size:12px; }
.blog-back { color:var(--blog-gold); text-decoration:none; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
@media(max-width:800px) {
  .blog-hero { grid-template-columns:1fr; }
  .blog-hero-copy { padding:65px 26px 40px; }
  .blog-hero-image { min-height:270px; }
  .blog-hero-image img { min-height:270px; max-height:360px; }
  .blog-hero-image:after { background:linear-gradient(0deg,#080a0d,transparent 45%); }
  .blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .blog-article-layout { grid-template-columns:1fr; gap:30px; }
  .blog-article-aside { position:static; }
}
@media(max-width:520px) {
  .blog-header { align-items:flex-start; flex-direction:column; }
  .blog-nav { gap:15px; }
  .blog-grid { grid-template-columns:1fr; }
  .blog-content { padding-top:48px; }
  .blog-section-heading h2 { font-size:32px; }
  .blog-footer { align-items:flex-start; flex-direction:column; }
  .blog-article-hero { padding-top:55px; }
}


/* Editorial image-led journal additions */
.blog-hero-image img { object-position: center 48%; }
.blog-grid-editorial { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; }
.blog-grid-editorial .blog-card { overflow: hidden; }
.blog-grid-editorial .blog-card-image { aspect-ratio: 16 / 10; }
.blog-grid-editorial .blog-card-image img { display: block; }
.blog-grid-editorial .blog-card-featured { grid-column: 1 / -1; display: grid; grid-template-columns: 1.15fr .85fr; }
.blog-grid-editorial .blog-card-featured .blog-card-image { height: 100%; min-height: 320px; aspect-ratio: auto; }
.blog-grid-editorial .blog-card-featured .blog-card-copy { align-self: center; padding: clamp(24px,4vw,48px); }
.blog-grid-editorial .blog-card-featured h3 { font-size: clamp(30px,3.5vw,42px); }
.blog-art-note { margin: 22px 0 0; color: var(--blog-muted); font-size: 11px; line-height: 1.6; }
.blog-card-image img { display: block; }
@media(max-width:800px) {
  .blog-grid-editorial { grid-template-columns: 1fr 1fr; }
  .blog-grid-editorial .blog-card-featured { grid-template-columns: 1fr; }
  .blog-grid-editorial .blog-card-featured .blog-card-image { min-height: 0; aspect-ratio: 16 / 9; }
}
@media(max-width:520px) {
  .blog-grid-editorial { grid-template-columns: 1fr; }
  .blog-grid-editorial .blog-card-featured { grid-column: auto; }
}

/* Inline editorial artwork inside the article */
.blog-inline-figure {
  margin: 34px 0 42px;
  padding: 0;
}
.blog-inline-figure img {
  display: block;
  width: 100%;
  max-height: 560px;
  object-fit: cover;
  border: 1px solid var(--blog-line);
}
.blog-inline-figure figcaption {
  margin-top: 10px;
  color: var(--blog-muted);
  font-size: 11px;
  line-height: 1.6;
}
