:root { --sw-ink:#321c1e; --sw-muted:#756365; --sw-line:#e6d7d5; --sw-paper:#fcf8f5; --sw-soft:#f3e9e4; --sw-green:#751922; --sw-deep:#751922; }
body { background:var(--sw-paper); }
.sw-page { font-family:"DM Sans",Arial,sans-serif; color:var(--sw-ink); line-height:1.6; }
.sw-page a { color:inherit; }
.sw-container { width:min(1220px,calc(100% - 40px)); margin-inline:auto; }
.sw-serif { font-family:"Italiana",Georgia,serif; font-weight:400; }
.sw-header { position:sticky; top:0; z-index:30; background:var(--sw-paper); border-bottom:1px solid var(--sw-line); }
.sw-nav { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; }
.sw-nav-links { display:flex; align-items:center; }
.sw-nav-links:last-child { justify-content:flex-end; }
.sw-nav a { text-transform:uppercase; }
.sw-logo img { display:block; height:auto; }
.sw-icon-link { min-height:36px; border:1px solid var(--sw-line); }
.sw-eyebrow { color:var(--sw-green); text-transform:uppercase; }
.sw-btn { display:inline-flex; align-items:center; justify-content:center; background:var(--sw-deep); color:#fff !important; text-transform:uppercase; text-align:center; }
.sv-story-hero { display:grid; grid-template-columns:1.1fr .9fr; background:#f1f6e7; color:#252c22; }
.sv-story-heading { padding:64px clamp(28px,5vw,76px) 72px max(24px,calc((100vw - 1220px)/2)); align-self:center; }
.sv-story-back { display:inline-block; font-size:12px; text-decoration:underline; text-underline-offset:5px; }
.sv-story-heading .sv-story-back { margin-bottom:40px; }
.sv-story-heading .sw-eyebrow { color:#637d40; }
.sv-story-heading h1 { font-size:clamp(38px,4.4vw,66px); line-height:1.08; margin:18px 0 24px; }
.sv-story-intro { max-width:48ch; font-size:16px; color:#697060; }
.sv-story-image { width:100%; height:100%; min-height:520px; max-height:720px; object-fit:cover; }
.sv-story-content { max-width:760px; width:calc(100% - 48px); margin:64px auto 0; }
.sv-story-byline { padding-bottom:24px; border-bottom:1px solid var(--sw-line); font-size:11px; text-transform:uppercase; letter-spacing:.12em; color:var(--sw-muted); }
.sv-story-byline span { margin-inline:12px; }
.sv-story-content section { margin-block:40px; }
.sv-story-content h2 { margin:0 0 18px; font-size:clamp(29px,3vw,40px); line-height:1.2; }
.sv-story-content section p { font-size:16px; color:var(--sw-muted); margin:16px 0; }
.sv-story-takeaway { border-left:2px solid #637d40; padding:24px 30px; background:#f1f6e7; margin:40px 0; }
.sv-story-takeaway .sw-eyebrow { color:#637d40; }
.sv-story-takeaway p:last-child { color:#252c22; font-size:30px; line-height:1.3; margin:12px 0 0; }
.sv-story-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-bottom:64px; }
.sv-story-related { border-top:1px solid var(--sw-line); padding-block:48px 64px; }
.sv-story-related > h2 { font-size:42px; margin:10px 0 28px; }
.sv-story-related > div { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.sv-story-related > div > a { display:block; padding:28px; border:1px solid var(--sw-line); border-radius:8px; background:#fff; }
.sv-story-related h3 { font-size:30px; line-height:1.2; margin:18px 0 24px; }
.sv-story-related > div > a > span:last-child { font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.sw-footer { padding:56px 0; background:#2c1116; color:#fff; }
.sw-footer-logo { width:150px; filter:brightness(0) invert(1); }
.sv-story-footer-links { display:flex; gap:24px; }
@media(max-width:760px) { .sv-story-hero { grid-template-columns:1fr; } .sv-story-heading { padding:36px 24px; } .sv-story-heading .sv-story-back { margin-bottom:28px; } .sv-story-image { min-height:0; height:340px; } .sv-story-content { margin-top:36px; } .sv-story-related > div { grid-template-columns:1fr; } }
