/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-a5d38fe99f93.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-9fea608a947e.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-a5d38fe99f93.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-9fea608a947e.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-a5d38fe99f93.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-9fea608a947e.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/font-a5d38fe99f93.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/font-9fea608a947e.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-51b2dac69833.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-6b8bfd228577.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-b9dff4aec6d8.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-54af24bd0f91.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-51b2dac69833.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-6b8bfd228577.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-b9dff4aec6d8.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-54af24bd0f91.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-c108681cba6a.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-ef6446229b59.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-42898ad49a6b.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-e0c764a8e9e1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-c108681cba6a.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-ef6446229b59.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-42898ad49a6b.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-e0c764a8e9e1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-c108681cba6a.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-ef6446229b59.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-42898ad49a6b.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-e0c764a8e9e1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --ink:#111d22;
  --ink-2:#203036;
  --ink-3:#33454a;
  --warm:#f3f0e9;
  --paper:#fbf9f4;
  --line:#d9d5cb;
  --gold:#c8a676;
  --gold-light:#e1caa5;
  --gold-dark:#9b7440;
  --text:#263036;
  --muted:#6b7272;
  --serif:'Playfair Display', Georgia, 'Times New Roman', serif;
  --sans:'DM Sans', Arial, sans-serif;
  --ease:cubic-bezier(.21,.72,.23,1);
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth}
body {margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.nav-open {overflow:hidden}
img {display:block;max-width:100%}
a {color:inherit;text-decoration:none}
button {font:inherit}
::selection {background:var(--gold-light);color:var(--ink)}
:focus-visible {outline:2px solid var(--gold-dark);outline-offset:5px}
[hidden] {display:none !important}
.container-wide {width:min(100% - 112px,1500px);margin-inline:auto}
.container {width:min(100% - 112px,1240px);margin-inline:auto}
.visually-hidden {position:absolute;white-space:nowrap;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.skip-link {position:absolute;z-index:999;top:-100px;left:20px;background:#fff;padding:12px 20px;color:var(--ink)}
.skip-link:focus {top:12px}
.eyebrow {font-size:10px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:var(--gold-dark)}
.eyebrow--light {color:var(--gold-light)}
.serif {font-family:var(--serif)}
h1,h2,h3,h4,p {margin-top:0}
h1,h2,h3 {font-weight:400}
em {font-family:var(--serif);font-style:italic;font-weight:400;color:var(--gold)}
.btn {display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:16px 22px;min-height:50px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;transition:transform .2s var(--ease),background .25s,color .25s}
.btn:hover {transform:translateY(-2px)}
.btn--gold {background:var(--gold);color:#10191e}
.btn--gold:hover {background:var(--gold-light)}
.btn--dark {background:var(--ink);color:var(--warm)}
.btn--dark:hover {background:var(--ink-3)}
.text-link {font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid var(--gold-dark);padding-bottom:6px;width:max-content;transition:color .2s}
.text-link:hover {color:var(--gold-dark)}
.text-link span {font-size:17px;margin-left:16px}

/* Navigation */
.site-header {background:var(--ink);color:#f8f5ed;z-index:30;position:relative}
.site-header__inner {height:96px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand {display:inline-flex;align-items:center;gap:12px;color:#f5ebd8;white-space:nowrap;flex-shrink:0}
.brand__mark {width:47px;height:47px;color:var(--gold-light)}
.brand__type {display:flex;flex-direction:column;font-size:11px;letter-spacing:.265em;line-height:1.46}
.brand__type strong {font-weight:600;letter-spacing:.18em}
.brand__type span {letter-spacing:.38em;font-size:9px}
.brand--compact .brand__mark {width:34px;height:34px}
.brand--compact .brand__type {font-size:9px}
.brand--compact .brand__type span {font-size:8px}
.desktop-nav {display:flex;gap:38px;align-items:center;margin-left:auto;margin-right:auto}
.desktop-nav a {font-size:11px;color:#c3c8c6;transition:color .2s;letter-spacing:.055em}
.desktop-nav a:hover,.desktop-nav a.is-current {color:var(--gold-light)}
.header-social {font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;border-bottom:1px solid rgba(226,203,164,.68);padding:8px 0;color:#f6f0e5;white-space:nowrap}
.header-social span {margin-left:14px;color:var(--gold-light);font-size:16px}
.header-social:hover {color:var(--gold-light)}
.menu-toggle {display:none;width:45px;height:42px;border:1px solid #677076;border-radius:0;background:transparent;cursor:pointer;flex-shrink:0;align-items:center;justify-content:center;flex-direction:column;gap:6px}
.menu-toggle span {width:20px;height:1px;background:var(--gold-light)}
.mobile-nav {position:absolute;z-index:50;top:100%;left:0;right:0;padding:14px 24px 26px;background:var(--ink);box-shadow:0 20px 20px rgba(0,0,0,.2)}
.mobile-nav a {display:block;border-top:1px solid rgba(255,255,255,.12);padding:15px 2px;font-size:14px;color:#f1ece3}

/* Homepage Hero */
.home-hero {display:grid;grid-template-columns:54% 46%;min-height:min(760px,calc(100svh - 96px));background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.home-hero__content {padding:84px 5vw 87px max(56px,calc((100vw - 1500px)/2));display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;z-index:2}
.home-hero__content .eyebrow {color:var(--gold-light);margin-bottom:25px}
.home-hero__title {font-family:var(--serif);font-size:clamp(55px,5.9vw,113px);line-height:1.085;letter-spacing:-.059em;max-width:760px;margin:0 0 30px}
.home-hero__title em {display:block;font-size:.86em;color:var(--gold-light);line-height:1.22}
.home-hero__lead {font-size:14px;line-height:1.95;max-width:418px;color:#c7cdca;margin:0 0 37px}
.home-hero__actions {display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.home-hero__quiet {font-size:11px;color:#c3c9c5;border-bottom:1px solid rgba(226,203,164,.5);padding-bottom:6px}
.home-hero__visual {position:relative;overflow:hidden;min-height:620px}
.home-hero__visual img {width:100%;height:100%;object-fit:cover;object-position:49% 50%;position:absolute;inset:0}
.home-hero__visual::before {content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(17,29,34,.32),transparent 48%),linear-gradient(0deg,rgba(11,20,25,.65),transparent 45%)}
.hero-photo-credit {position:absolute;z-index:3;bottom:38px;left:37px;right:35px;display:flex;justify-content:space-between;align-items:flex-end;gap:25px;color:#fff;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.hero-photo-credit strong {display:block;font-weight:500;font-family:var(--serif);text-transform:none;letter-spacing:0;font-size:26px;margin-top:9px}
.hero-photo-credit span:last-child {border:1px solid rgba(255,255,255,.55);width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:21px}
.hero-count {position:absolute;bottom:25px;left:max(56px,calc((100vw - 1500px)/2));color:#9da8a9;font-size:10px;letter-spacing:.18em}

/* Editorial ribbon */
.index-strip {background:#e9e3d8;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0 max(56px,calc((100vw - 1500px)/2))}
.index-strip a {display:grid;grid-template-columns:45px 1fr;gap:15px;padding:30px 30px 30px 0;align-items:center;border-right:1px solid #cfc6b6;margin-right:32px;transition:opacity .2s}
.index-strip a:last-child {border:0;margin:0}
.index-strip a:hover {opacity:.65}
.index-strip .num {font-family:var(--serif);font-style:italic;color:var(--gold-dark);font-size:32px}
.index-strip strong {font-size:11px;letter-spacing:.2em;display:block;text-transform:uppercase}
.index-strip small {display:block;margin-top:4px;color:#687174;font-size:11px}

/* Shared sections */
.section {padding:115px 0}
.section--paper {background:var(--paper)}
.section--warm {background:var(--warm)}
.section-heading {display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:42px}
.section-heading h2 {font-family:var(--serif);font-size:clamp(42px,4.2vw,69px);letter-spacing:-.045em;line-height:1.13;max-width:650px;margin:14px 0 0;color:var(--ink)}
.section-heading__side {display:flex;flex-direction:column;align-items:start;gap:20px;max-width:278px;color:#656d6d;font-size:13px;line-height:1.75}
.section-heading__side p {margin:0}

/* Cards */
.stories-feature {display:grid;grid-template-columns:1.16fr .84fr;gap:36px}
.story-card {min-width:0;display:flex;flex-direction:column}
.story-card__image-link {display:block;position:relative;overflow:hidden;aspect-ratio:1.45;background:#c5c4b9}
.story-card--featured .story-card__image-link {aspect-ratio:1.28}
.story-card__image-link::after {content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,25,31,.34),transparent 33%);pointer-events:none}
.story-card__image-link img {width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.story-card__image-link:hover img {transform:scale(1.045)}
.story-card__image-index {position:absolute;z-index:2;left:21px;top:19px;font-family:var(--serif);font-size:15px;color:#fff;text-shadow:0 1px 6px #333}
.story-card__image-arrow {position:absolute;z-index:2;right:17px;bottom:17px;width:41px;height:41px;border-radius:50%;background:rgba(245,243,235,.9);color:var(--ink);display:grid;place-items:center;font-size:23px;transition:transform .2s}
.story-card__image-link:hover .story-card__image-arrow {transform:rotate(45deg)}
.story-card__text {padding-top:22px}
.story-card__meta {font-size:10px;color:var(--gold-dark);font-weight:700;letter-spacing:.15em;text-transform:uppercase;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.story-card__meta span:last-child {color:#7b8280;letter-spacing:.07em;font-weight:500}
.meta-dot {opacity:.5}
.story-card :is(h2,h3) {font-family:var(--serif);font-size:clamp(29px,2.75vw,45px);line-height:1.22;letter-spacing:-.038em;margin:12px 0 10px;color:var(--ink)}
.story-card :is(h2,h3) a:hover {color:var(--gold-dark)}
.story-card p {font-size:13px;color:#687070;line-height:1.78;max-width:570px;margin:0 0 20px}
.story-card .text-link {margin-top:auto}
.stories-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:54px 28px}
.stories-grid .story-card__image-link {aspect-ratio:1.08}
.stories-grid :is(h2,h3) {font-size:32px}
.stories-grid .story-card p {font-size:12px}
.stories-grid--compact {margin-top:42px}
.section-see-all {display:flex;justify-content:center;margin-top:55px}

/* Pillars section */
.pillar-section {background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.pillar-intro {padding:115px 0 80px;display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;align-items:start}
.pillar-intro h2 {font-family:var(--serif);font-size:clamp(48px,5.1vw,83px);line-height:1.14;letter-spacing:-.05em;margin:0;max-width:860px}
.pillar-intro p {color:#abb5b4;font-size:13px;max-width:460px;line-height:1.9}
.pillar-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#39454a;border-top:1px solid #39454a;border-bottom:1px solid #39454a}
.pillar {background:var(--ink);padding:52px 52px 62px;min-height:335px;position:relative}
.pillar-index {font-family:var(--serif);font-size:51px;font-style:italic;color:var(--gold)}
.pillar h3 {font-family:var(--serif);font-size:38px;margin:15px 0;letter-spacing:-.035em}
.pillar p {font-size:13px;line-height:1.85;max-width:305px;color:#aeb9b7;margin:0}
.pillar .arrow {position:absolute;right:44px;top:61px;font-size:22px;color:var(--gold)}
.pillar:hover {background:#17282f}

/* Image / quote split */
.editorial-split {display:grid;grid-template-columns:1fr 1fr;min-height:640px;background:#e9e4d9}
.editorial-split__photo {min-height:500px;position:relative;overflow:hidden}
.editorial-split__photo img {width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.editorial-split__photo small {position:absolute;bottom:22px;left:30px;color:#fff;font-size:10px;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 1px 8px #111}
.editorial-split__copy {padding:90px min(8vw,130px);display:flex;justify-content:center;flex-direction:column;align-items:flex-start}
.editorial-split__copy h2 {font-family:var(--serif);font-size:clamp(41px,4.2vw,70px);letter-spacing:-.05em;line-height:1.18;margin:20px 0 26px}
.editorial-split__copy p {max-width:420px;color:#576365;line-height:1.92;font-size:14px;margin-bottom:36px}

/* Journal index */
.page-hero {background:var(--ink);color:var(--paper);padding:105px 0 100px;position:relative;overflow:hidden}
.page-hero::after {content:'D L T';position:absolute;right:-20px;bottom:-115px;font-family:var(--serif);font-size:310px;letter-spacing:-.12em;opacity:.025;pointer-events:none;white-space:nowrap}
.page-hero h1 {font-family:var(--serif);font-size:clamp(58px,7.8vw,118px);line-height:1.12;letter-spacing:-.063em;max-width:870px;margin:18px 0 24px}
.page-hero p {color:#afb9b6;max-width:550px;line-height:1.85;font-size:15px;margin:0}
.filter-bar {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 34px;margin:0 0 38px;border-bottom:1px solid var(--line)}
.filter-buttons {display:flex;gap:8px;flex-wrap:wrap}
.filter-btn {appearance:none;background:transparent;border:1px solid #d2d1c9;padding:11px 17px;color:#646d6d;font-size:11px;letter-spacing:.045em;cursor:pointer;transition:.2s}
.filter-btn:hover {border-color:var(--gold-dark);color:var(--ink)}
.filter-btn.is-active {background:var(--ink);border-color:var(--ink);color:white}
.result-count {font-size:12px;color:#89908e;white-space:nowrap}
.journal-body {padding:73px 0 125px;background:var(--paper)}
.journal-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:57px 30px}
.journal-grid .story-card__image-link {aspect-ratio:1.22}
.journal-grid .story-card :is(h2,h3) {font-size:34px}

/* Story detail */
.breadcrumbs {display:flex;gap:12px;align-items:center;color:#8e9693;font-size:11px;margin-bottom:22px}
.breadcrumbs a:hover {color:var(--gold-dark)}
.story-hero {background:var(--warm);padding:74px 0 75px}
.story-hero__inner {display:grid;grid-template-columns:1fr .94fr;gap:70px;align-items:center}
.story-hero__content h1 {font-family:var(--serif);font-size:clamp(54px,5.3vw,84px);line-height:1.13;letter-spacing:-.062em;margin:14px 0 21px;max-width:630px}
.story-hero__content .deck {font-size:17px;line-height:1.78;color:#667073;max-width:460px}
.story-meta-line {border-top:1px solid #d2d0c6;display:flex;gap:26px;padding-top:20px;margin-top:39px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:#7a8383}
.story-hero__image {position:relative;min-height:550px;align-self:stretch}
.story-hero__image img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.story-hero__image::after {position:absolute;content:'';inset:0;background:linear-gradient(0deg,rgba(6,14,18,.36),transparent 35%)}
.story-hero__image-label {position:absolute;z-index:2;bottom:24px;left:24px;color:white;font-size:10px;letter-spacing:.15em;text-transform:uppercase}
.story-content {display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:90px;max-width:1030px;margin:0 auto;padding:100px 35px 110px}
.story-prose {font-size:16px;line-height:1.9;color:#414c4e}
.story-prose .standfirst {font-family:var(--serif);font-size:27px;line-height:1.62;letter-spacing:-.012em;color:#1d292c;margin-bottom:50px}
.story-prose h2 {font-family:var(--serif);font-size:34px;letter-spacing:-.03em;line-height:1.3;color:var(--ink);margin:48px 0 18px}
.story-prose p {margin-bottom:21px}
.story-prose blockquote {font-family:var(--serif);font-style:italic;font-size:35px;line-height:1.44;letter-spacing:-.035em;color:var(--ink);border-left:2px solid var(--gold);padding:14px 0 14px 28px;margin:55px 0}
.story-aside {padding-top:8px}
.aside-card {border-top:2px solid var(--gold);padding-top:23px;margin-bottom:38px}
.aside-card .eyebrow {display:block;margin-bottom:19px}
.aside-card h3 {font-family:var(--serif);font-size:26px;letter-spacing:-.03em;line-height:1.35}
.aside-card p {font-size:12px;line-height:1.83;color:#6d7777}
.aside-card img {width:100%;max-height:240px;object-fit:cover;margin:22px 0}
.story-after {background:var(--ink);color:var(--paper);padding:90px 0 100px}
.story-after__row {display:flex;align-items:center;justify-content:space-between;gap:45px}
.story-after h2 {font-family:var(--serif);font-size:clamp(38px,4vw,65px);line-height:1.18;letter-spacing:-.04em;max-width:750px;margin:12px 0 0}
.story-after .btn {flex-shrink:0}

/* About */
.about-hero {display:grid;grid-template-columns:55% 45%;background:var(--ink);color:var(--paper);min-height:600px}
.about-hero__content {padding:95px 6vw 110px max(56px,calc((100vw - 1500px)/2));display:flex;justify-content:center;flex-direction:column}
.about-hero h1 {font-family:var(--serif);font-size:clamp(55px,6.1vw,99px);line-height:1.12;letter-spacing:-.058em;margin:18px 0 26px}
.about-hero p {max-width:500px;font-size:14px;line-height:1.92;color:#bcc6c4}
.about-hero__photo {min-height:610px;position:relative}
.about-hero__photo img {width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 44%}
.about-body {background:var(--paper);padding:110px 0}
.about-body__grid {display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}
.about-body h2 {font-family:var(--serif);font-size:clamp(34px,3.7vw,59px);letter-spacing:-.04em;line-height:1.27;margin:0}
.about-body__prose {max-width:680px;font-size:16px;line-height:1.98;color:#576363}
.about-body__prose p {margin-bottom:22px}
.about-values {background:var(--warm);padding:85px 0 110px}
.about-values__grid {display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:40px}
.about-values__grid div {border-top:1px solid #cfcbbf;padding-top:24px}
.about-values__grid strong {font-family:var(--serif);display:block;font-size:30px;font-weight:400;margin-bottom:8px}
.about-values__grid p {color:#606c6c;font-size:13px;line-height:1.85}

/* Footer */
.site-footer {background:#101c21;color:#fff}
.footer-top {padding:112px 0 90px;display:flex;justify-content:space-between;gap:90px}
.footer-message h2 {font-family:var(--serif);font-size:clamp(45px,5.2vw,82px);line-height:1.14;letter-spacing:-.055em;margin:16px 0 21px}
.footer-message p {font-size:13px;color:#adb7b5;margin-bottom:29px}
.footer-links {display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:58px;padding-top:25px}
.footer-links>div {display:flex;flex-direction:column;gap:16px}
.footer-label {font-size:9px;text-transform:uppercase;color:var(--gold-light);letter-spacing:.23em;margin-bottom:10px;font-weight:700}
.footer-links a {font-size:12px;color:#bcc6c3;white-space:nowrap}
.footer-links a:hover {color:var(--gold-light)}
.footer-bottom {border-top:1px solid #334147;display:flex;align-items:center;gap:35px;justify-content:space-between;padding:26px 0 38px;color:#8f9d9c;font-size:10px}

@media (max-width:1160px) {
 .container,.container-wide {width:min(100% - 72px,1500px)}
 .desktop-nav {gap:20px}
 .home-hero__content {padding-left:40px;padding-right:34px}
 .home-hero__title {font-size:clamp(49px,5.6vw,79px)}
 .index-strip {padding:0 36px}
 .pillar {padding:45px 32px 55px}
 .editorial-split__copy {padding:80px 65px}
 .story-hero__inner {gap:45px}
}
@media (max-width:820px) {
 .container,.container-wide {width:min(100% - 44px,1500px)}
 .site-header__inner {height:78px}
 .desktop-nav,.header-social {display:none}
 .menu-toggle {display:flex}
 .home-hero {grid-template-columns:1fr;min-height:0}
 .home-hero__content {padding:67px 24px 68px;min-height:545px}
 .home-hero__title {max-width:720px;font-size:clamp(52px,9.4vw,77px)}
 .home-hero__lead {font-size:14px}
 .home-hero__visual {min-height:460px;height:57vh;max-height:640px}
 .home-hero__visual img {object-position:center 48%}
 .hero-count {display:none}
 .index-strip {padding:0 22px}
 .index-strip a {margin-right:17px;padding-right:15px;grid-template-columns:28px 1fr;gap:12px}
 .index-strip .num {font-size:23px}
 .index-strip small {font-size:10px}
 .section {padding:80px 0}
 .section-heading {align-items:start;flex-direction:column;gap:18px}
 .section-heading h2 {max-width:630px}
 .section-heading__side {max-width:600px;flex-direction:row;align-items:center;gap:28px}
 .stories-feature {gap:22px}
 .story-card :is(h2,h3) {font-size:32px}
 .stories-grid,.journal-grid {grid-template-columns:repeat(2,1fr);gap:40px 24px}
 .pillar-intro {grid-template-columns:1fr;gap:20px;padding:80px 0 55px}
 .pillar-grid {grid-template-columns:1fr}
 .pillar {min-height:240px;padding:34px 22px 42px}
 .pillar h3 {margin:4px 0}
 .editorial-split {grid-template-columns:1fr}
 .editorial-split__photo {min-height:570px}
 .editorial-split__copy {padding:64px 24px 75px}
 .story-hero__inner {grid-template-columns:1fr}
 .story-hero__image {min-height:500px}
 .story-hero__content h1 {max-width:700px}
 .story-content {grid-template-columns:1fr;gap:40px;padding:70px 30px 85px}
 .story-aside {max-width:660px;display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
 .about-hero {grid-template-columns:1fr}
 .about-hero__content {padding:75px 24px 80px}
 .about-hero__photo {min-height:470px}
 .about-body__grid {grid-template-columns:1fr;gap:28px}
 .about-values__grid {gap:22px}
 .footer-top {gap:50px}
 .footer-links {gap:28px}
}
@media (max-width:560px) {
 .container,.container-wide {width:calc(100% - 36px)}
 .brand__mark {width:40px;height:40px}
 .brand__type strong {font-size:10px}
 .home-hero__content {padding:59px 19px 65px;min-height:570px}
 .home-hero__title {font-size:clamp(51px,13.4vw,69px);letter-spacing:-.065em}
 .home-hero__actions {gap:20px}
 .btn {padding:15px 18px;gap:24px;font-size:9px}
 .home-hero__visual {min-height:450px;height:60svh}
 .hero-photo-credit {left:23px;right:22px;bottom:25px}
 .hero-photo-credit strong {font-size:23px}
 .index-strip {grid-template-columns:1fr;padding:8px 18px}
 .index-strip a {padding:14px 2px;border:0;border-bottom:1px solid #d5ccbd;margin:0;grid-template-columns:35px 1fr}
 .index-strip a:last-child {border:0}
 .section-heading h2 {font-size:45px}
 .section-heading__side {display:block}
 .stories-feature,.stories-grid,.journal-grid {grid-template-columns:1fr;gap:44px}
 .story-card__image-link,.story-card--featured .story-card__image-link {aspect-ratio:1.25}
 .stories-grid .story-card__image-link {aspect-ratio:1.25}
 .story-card :is(h2,h3),.journal-grid .story-card :is(h2,h3) {font-size:36px}
 .pillar-intro {padding:70px 0 45px}
 .pillar-intro h2 {font-size:48px}
 .pillar {padding:28px 22px 33px}
 .pillar-index {font-size:40px}
 .pillar h3 {font-size:35px}
 .editorial-split__photo {min-height:500px}
 .editorial-split__copy h2 {font-size:47px}
 .page-hero {padding:72px 0 81px}
 .page-hero h1 {font-size:63px}
 .journal-body {padding:55px 0 78px}
 .filter-bar {display:block}
 .filter-buttons {margin-bottom:15px}
 .filter-btn {padding:10px 13px}
 .story-hero {padding:39px 0 45px}
 .story-hero__content h1 {font-size:52px}
 .story-hero__image {min-height:435px}
 .story-meta-line {gap:12px;flex-wrap:wrap}
 .story-content {padding:61px 18px 70px}
 .story-prose {font-size:15px}
 .story-prose .standfirst {font-size:24px}
 .story-prose blockquote {font-size:30px}
 .story-aside {grid-template-columns:1fr}
 .story-after__row {display:block}
 .story-after .btn {margin-top:30px}
 .about-hero__content h1 {font-size:62px}
 .about-values__grid {grid-template-columns:1fr}
 .footer-top {padding:78px 0 58px;display:block}
 .footer-message h2 {font-size:52px}
 .footer-links {margin-top:66px;gap:20px}
 .footer-bottom {display:flex;align-items:start;flex-wrap:wrap;gap:17px}
 .footer-bottom .brand {width:100%}
}
@media (prefers-reduced-motion:reduce) {
 *,*::before,*::after {scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}
/* Reset default figure margins in the article hero grid. */
.story-hero__image {margin:0}

/* Official brand assets: keep the original Madeira banner and DL logo as supplied. */
.brand-banner {background:#10191e;line-height:0;position:relative;overflow:hidden}
.brand-banner img {width:100%;height:auto;display:block;max-height:600px;object-fit:cover;object-position:center center}
.brand__mark {object-fit:cover;border-radius:50%;width:54px;height:54px;border:1px solid rgba(225,188,127,.62);box-shadow:0 0 0 2px rgba(6,12,20,.25)}
.brand--compact .brand__mark {width:45px;height:45px}
.home-hero--branded {min-height:560px;grid-template-columns:53% 47%}
.home-hero--branded .home-hero__visual {min-height:540px}
.home-hero--branded .home-hero__content {padding-top:75px;padding-bottom:74px}
@media (max-width:820px){
  .brand-banner img{min-height:165px;object-fit:cover;object-position:center}
  .home-hero--branded {grid-template-columns:1fr}
  .home-hero--branded .home-hero__content {min-height:0;padding-top:61px;padding-bottom:65px}
  .home-hero--branded .home-hero__visual {min-height:420px}
}
@media (max-width:560px){
  .brand-banner img {min-height:155px;height:38vw;object-fit:cover}
  .brand__mark {width:47px;height:47px}
  .brand--compact .brand__mark{width:40px;height:40px}
  .home-hero--branded .home-hero__content{padding-top:51px;padding-bottom:55px}
  .home-hero--branded .home-hero__visual{min-height:330px;height:52svh}
}

/* V3: preserve entire approved brand banner without cropping or stretching. */
.brand-banner { background:#10191e; }
.brand-banner img { display:block; width:100%; height:auto; max-height:none; min-height:0; object-fit:contain; }
/* The banner leads; the following section is a typographic welcome, not a competing image. */
.home-hero--branded { display:block; min-height:0; background:var(--ink); }
.home-hero--branded .home-hero__content { box-sizing:border-box; min-height:0; width:min(100% - 80px,1500px); margin-inline:auto; padding:clamp(64px,7.6vw,122px) 0 clamp(73px,8vw,132px); }
.home-hero--branded .home-hero__title { max-width:900px; font-size:clamp(65px,7.2vw,120px); }
.home-hero--branded .home-hero__lead { max-width:690px; font-size:clamp(14px,1.06vw,17px); }
@media(max-width:820px) {
 .brand-banner img { width:100%; height:auto; min-height:0; object-fit:contain; }
 .home-hero--branded .home-hero__content { width:calc(100% - 48px); padding:70px 0 82px; min-height:0; }
 .home-hero--branded .home-hero__title {font-size:clamp(52px,10.2vw,86px);}
}
@media(max-width:560px) {
 .brand-banner img {width:100%; height:auto; min-height:0; object-fit:contain;}
 .home-hero--branded .home-hero__content { width:calc(100% - 38px); padding:57px 0 70px; min-height:0; }
 .home-hero--branded .home-hero__title {font-size:clamp(51px,12vw,70px);}
}

/* V4: calm, centered introduction beneath the untouched original banner. */
.brand-banner {position:relative; isolation:isolate;}
.brand-banner::after {content:"";position:absolute;pointer-events:none;bottom:0;left:0;right:0;height:clamp(18px,3vw,48px);background:linear-gradient(to bottom,transparent,rgba(17,29,34,.19));}
.home-hero--branded {display:block;min-height:0;background:var(--ink);}
.home-hero--branded .home-hero__content {display:flex;box-sizing:border-box;align-items:center;justify-content:center;text-align:center;width:min(calc(100% - 48px),840px);max-width:840px;margin-inline:auto;padding:clamp(74px,7vw,112px) 0 clamp(79px,7.3vw,116px);min-height:0;}
.home-hero--branded .home-hero__content .eyebrow {margin-bottom:22px;}
.home-hero--branded .home-hero__title {max-width:800px;margin:0 auto 24px;font-size:clamp(57px,6.8vw,103px);line-height:1.06;text-align:center;}
.home-hero--branded .home-hero__title em {line-height:1.13;}
.home-hero--branded .home-hero__lead {max-width:610px;text-align:center;font-size:clamp(14px,1.08vw,16px);line-height:1.84;margin:0 auto 27px;}
.home-hero--branded .home-hero__actions {display:flex;justify-content:center;align-items:center;gap:25px;}
@media(max-width:820px) {.home-hero--branded .home-hero__content {width:calc(100% - 44px);padding:67px 0 78px;} .home-hero--branded .home-hero__title {font-size:clamp(54px,9vw,78px);} }
@media(max-width:560px) {.home-hero--branded .home-hero__content {width:calc(100% - 36px);padding:57px 0 69px;} .home-hero--branded .home-hero__content .eyebrow {letter-spacing:.14em;font-size:9px;} .home-hero--branded .home-hero__title {font-size:clamp(49px,12vw,65px);margin-bottom:22px;} .home-hero--branded .home-hero__lead {font-size:14px;} .home-hero--branded .home-hero__actions {gap:18px;flex-wrap:wrap;} }

/* V5 — eight compact social shortcuts; native text/symbol glyphs avoid remote assets. */
.footer-follow {min-width:198px}
.footer-social-icons {display:grid;grid-template-columns:repeat(4,36px);gap:12px;margin-top:4px}
.footer-social-icons a {display:flex;justify-content:center;align-items:center;width:36px;height:36px;border:1px solid #53615f;border-radius:50%;color:#e9ddc8;font-family:var(--sans);font-size:16px;font-weight:700;line-height:1;text-decoration:none;transition:background .15s,border-color .15s,transform .15s}
.footer-social-icons a:hover,.footer-social-icons a:focus-visible {background:#cfaa76;color:#101c21;border-color:#cfaa76;transform:translateY(-2px)}
.footer-social-icons a:focus-visible {outline:2px solid #fff;outline-offset:3px}
.footer-social-note {font-size:10px!important;line-height:1.4;color:#90a09c;margin-top:13px}
@media(max-width:560px){.footer-social-icons{grid-template-columns:repeat(4,36px)}.footer-follow{min-width:0}}

/* V6: distinct, original photographs within stories rather than repeated sidebar thumbnails. */
.story-gallery {display:grid;gap:34px;margin:48px 0 18px}
.story-gallery__item {margin:0}
.story-gallery__item img {width:100%;max-height:460px;object-fit:cover;display:block;border-radius:2px}
.story-gallery__item figcaption {font-family:var(--sans);font-size:12px;line-height:1.6;color:#677173;margin-top:10px}
@media(min-width:850px){.story-gallery:has(figure:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.story-gallery:has(figure:nth-child(2)) img{height:245px}}

/* V7 — curated media: images carry subtle embedded ownership text; never repeat hero in gallery. */
.story-hero__image-label{display:none}
.story-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.story-gallery__item{min-width:0}
.story-gallery__item img{width:100%;height:270px;max-height:none;object-fit:contain;background:#eae9e2;border-radius:2px}
.story-gallery__item figcaption{font-size:11px;line-height:1.5;margin-top:12px;color:#637072}
@media(max-width:640px){.story-gallery{grid-template-columns:1fr;gap:26px}.story-gallery__item img{height:auto;max-height:440px;object-fit:contain}}

/* V7 — curated media: images carry subtle embedded ownership text; never repeat hero in gallery. */
.story-hero__image-label{display:none}
.story-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.story-gallery__item{min-width:0}
.story-gallery__item img{width:100%;height:270px;max-height:none;object-fit:contain;background:#eae9e2;border-radius:2px}
.story-gallery__item figcaption{font-size:11px;line-height:1.5;margin-top:12px;color:#637072}
@media(max-width:640px){.story-gallery{grid-template-columns:1fr;gap:26px}.story-gallery__item img{height:auto;max-height:440px;object-fit:contain}}


/* V8: Watermark labels are anchored to the visible viewport, avoiding clipping by object-fit.
   Image files ALSO retain a subtle embedded watermark for attribution when saved separately. */
.story-hero__image-label {
  display: block !important;
  position: absolute;
  z-index: 4;
  left: 22px;
  bottom: 22px;
  max-width: calc(100% - 44px);
  color: #fcf7ee;
  background: transparent;
  padding: 8px 10px;
  border-left: 2px solid rgba(220, 184, 128, .87);
  font-family: var(--sans);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .105em;
  text-transform: uppercase;
  text-shadow: 0 1px 6px rgba(0, 0, 0, .5);
}
.story-card__attribution {
  display: block;
  position: absolute;
  z-index: 3;
  bottom: 17px;
  left: 20px;
  max-width: calc(100% - 100px);
  font-family: var(--sans);
  font-weight: 600;
  font-size: 9px;
  line-height: 1.45;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: rgba(251, 248, 240, .92);
  text-shadow: 0 2px 8px rgba(0, 0, 0, .78);
  pointer-events: none;
}
.story-card__image-link::after {
  background: linear-gradient(to top, rgba(8, 18, 23, .97) 0%, rgba(8, 18, 23, .94) 5%, rgba(8, 18, 23, .38) 18%, transparent 34%);
}
.story-hero__image::after {
  background: linear-gradient(to top, rgba(8, 18, 23, .98) 0%, rgba(8, 18, 23, .94) 6%, rgba(8, 18, 23, .46) 17%, transparent 32%);
}
@media (max-width: 560px) {
  .story-hero__image-label { left: 15px; bottom: 15px; max-width: calc(100% - 30px); font-size: 9px; }
  .story-card__attribution { font-size: 8px; left: 15px; bottom: 14px; }
}


/* V8 staging corrections: contrast changes are limited to text on light backgrounds. */
:root { --gold-text: #886234; }
.index-strip .num { color: #805e32; }
.index-strip small { color: #536365; }
.index-strip a:hover { opacity: 1; }
.editorial-split__copy .eyebrow, .editorial-split__copy .text-link:hover { color: #805e32; }
.section--paper .eyebrow, .section--warm .eyebrow,
.story-hero .eyebrow, .story-content .eyebrow,
.about-body .eyebrow, .about-values .eyebrow,
.story-card__meta { color: var(--gold-text); }
.section--paper h2 em, .editorial-split__copy h2 em,
.about-body h2 em { color: var(--gold-dark); }
.story-card__meta span:last-child, .result-count,
.breadcrumbs, .story-meta-line { color: #626d6b; }
.story-hero__content .deck, .aside-card p { color: #5e6a6d; }
.text-link:hover { color: var(--gold-text); }
.breadcrumbs a:hover { color: var(--gold-text); }

/* Keep the approved footer columns and all eight icons inside narrow viewports. */
@media (max-width: 820px) {
  .footer-links { grid-template-columns: minmax(0, 1fr) minmax(198px, 1fr); }
}
@media (max-width: 560px) {
  .footer-links { grid-template-columns: minmax(0, 1fr) minmax(180px, 1fr); }
}

/* Phase 4 proposal: a compact preview of planned journeys, within the existing V8 palette. */
.horizon-section { background:var(--paper); padding:64px 0 68px; }
.horizon-section h2 { font-family:var(--serif); font-size:clamp(34px,3vw,48px); line-height:1.2; letter-spacing:-.035em; color:var(--ink); margin:0 0 34px; }
.horizon-journeys { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px; }
.horizon-journey { border-top:1px solid var(--gold); padding-top:22px; }
.horizon-date { font-size:10px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--gold-text); margin:0 0 13px; }
.horizon-journey h3 { font-family:var(--serif); font-size:clamp(26px,2.35vw,36px); line-height:1.25; letter-spacing:-.025em; color:var(--ink); margin:0 0 16px; }
.horizon-preview { max-width:560px; font-size:14px; line-height:1.85; color:#576363; margin:0; }
.horizon-follow { display:inline-flex; align-items:center; margin-top:30px; }
.horizon-actions { display:contents; }
@media(min-width:821px) {
  .horizon-actions { display:block; width:100%; margin-top:30px; padding-top:22px; border-top:1px solid var(--line); }
  .horizon-actions .horizon-follow { margin-top:0; }
}
@media(max-width:820px) {
  .horizon-section { padding:48px 0 52px; }
  .horizon-journeys { grid-template-columns:1fr; gap:32px; }
  .horizon-section h2 { margin-bottom:28px; }
  .horizon-journey { padding-top:18px; }
  .horizon-journey h3 { font-size:28px; margin-bottom:12px; }
  .horizon-follow { margin-top:28px; }
}
