@font-face{font-family:Oswald;src:url('assets/oswald.ttf') format('truetype');font-display:swap}
@font-face{font-family:Literata;src:url('assets/literata.ttf') format('truetype');font-display:swap}
@font-face{font-family:DM Sans;src:url('assets/dm-sans.ttf') format('truetype');font-display:swap}
:root{--paper:#dfe8eb;--paper-light:#eef3f2;--ink:#173c4b;--ink-deep:#0e303f;--muted:#55717c;--orange:#e85d3a;--line:#9eb4bc;--white:#faf9f4;--font-ui:'DM Sans',Arial,sans-serif;--font-display:Oswald,Impact,sans-serif;--font-reading:Literata,Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-size:16px}
button,input,select{font:inherit}
button{cursor:pointer}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
[hidden]{display:none!important}
.skip-link{position:absolute;left:16px;top:-60px;z-index:10;background:var(--ink);color:white;padding:10px 14px}
.skip-link:focus{top:12px}
.site-shell{max-width:1600px;margin:auto;overflow:hidden}
.site-header{padding:0 clamp(22px,5.3vw,86px);background:var(--paper-light);border-top:8px solid var(--ink)}
.header-top,.header-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}
.header-top{height:54px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.brand-small{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:700}
.route-symbol{width:22px;height:14px;position:relative;border-left:2px solid var(--orange);border-bottom:2px solid var(--orange);transform:skewX(-28deg)}
.route-symbol:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--orange);right:-4px;top:-2px;transform:skewX(28deg)}
.edition{white-space:nowrap}
.edition span{padding:0 9px;color:var(--orange)}
.masthead{display:flex;justify-content:space-between;align-items:baseline;gap:25px;height:174px;line-height:.91;font-family:var(--font-display);font-size:clamp(100px,13.8vw,198px);font-weight:500;letter-spacing:-.075em;color:var(--ink-deep);white-space:nowrap}
.masthead span:last-child{padding-right:.04em}
.masthead-period{color:var(--orange)}
.header-bottom{height:45px;border-top:1px solid var(--line);font-size:13px;font-weight:600}
.header-bottom p{margin:0}
.header-bottom p:last-child{color:var(--muted);font-weight:400}
.intro{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:50px;padding:45px clamp(22px,5.3vw,86px) 47px}
.intro h1{font-family:var(--font-reading);font-size:clamp(28px,3vw,43px);line-height:1.17;font-weight:500;letter-spacing:-.035em;margin:0}
.intro p{font-family:var(--font-reading);font-size:16px;line-height:1.6;max-width:440px;margin:0 0 1px auto}
.discover{background:var(--ink);color:var(--white);padding:19px clamp(22px,5.3vw,86px) 23px}
.discover-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}
.section-kicker{font-size:15px;font-weight:700}
.result-count{font-size:13px;color:#bad0d4}
.controls{display:grid;grid-template-columns:minmax(250px,1.7fr) minmax(190px,.7fr) auto;gap:16px;align-items:end}
.search-field,.filter-field{display:block;min-width:0}
.field-label{display:block;margin-bottom:8px;color:#c8d8da;font-size:12px}
.input-wrap,.select-wrap{display:flex;align-items:center;position:relative;height:47px;background:var(--paper-light);color:var(--ink)}
.input-wrap>svg{position:absolute;left:14px;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
.input-wrap input{width:100%;height:100%;padding:0 14px 0 43px;border:0;background:transparent;color:var(--ink);outline-offset:-4px}
.input-wrap input::placeholder{color:#66808a;opacity:1}
.select-wrap select{appearance:none;width:100%;height:100%;padding:0 38px 0 14px;border:0;background:transparent;color:var(--ink);outline-offset:-4px}
.select-wrap svg{pointer-events:none;position:absolute;right:14px;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7}
.saved-filter{height:47px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 15px;border:1px solid #7c9aa4;background:transparent;color:var(--white);white-space:nowrap;font-size:14px;font-weight:700}
.saved-filter[aria-pressed="true"]{background:var(--orange);border-color:var(--orange);color:var(--ink-deep)}
.saved-filter svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.saved-filter[aria-pressed="true"] svg{fill:currentColor}
.saved-count{display:grid;place-items:center;min-width:21px;height:21px;padding:0 4px;border-radius:50%;background:#496b78;font-size:11px;color:white}
.saved-filter[aria-pressed="true"] .saved-count{background:var(--ink);color:white}
.story-list{padding:47px clamp(22px,5.3vw,86px) 95px}
.list-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:24px}
.list-heading h2{font-family:var(--font-display);font-size:41px;line-height:1;margin:0;font-weight:500;letter-spacing:-.025em}
.list-heading span{font-size:13px;color:var(--muted)}
.feature-story{display:grid;grid-template-columns:1.04fr .96fr;min-height:397px;background:var(--ink-deep);color:var(--white);margin-bottom:61px}
.feature-image{position:relative;min-height:397px;overflow:hidden}
.feature-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;filter:saturate(.7) contrast(1.03)}
.feature-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,rgba(14,48,63,.22))}
.feature-copy{display:flex;flex-direction:column;align-items:flex-start;padding:35px clamp(27px,3vw,48px) 36px}
.story-meta{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}
.story-meta .dot{width:4px;height:4px;border-radius:50%;background:var(--orange)}
.feature-story .story-meta{color:#c9d9dc}
.feature-story .story-meta .category{color:var(--white);font-weight:700}
.feature-copy h3{font-family:var(--font-display);font-size:clamp(43px,4.6vw,68px);line-height:1.08;letter-spacing:-.025em;font-weight:500;max-width:560px;margin:29px 0 16px}
.feature-copy p{font-family:var(--font-reading);font-size:16px;line-height:1.55;max-width:410px;margin:0 0 31px;color:#e1eaeb}
.read-link{display:inline-flex;align-items:center;margin-top:auto;padding:0 0 7px;border:0;border-bottom:2px solid var(--orange);background:none;color:inherit;font-weight:700;text-align:left}
.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:46px;row-gap:0}
.story-card{display:grid;grid-template-columns:37% 1fr;gap:21px;padding:23px 0;border-bottom:1px solid var(--line);min-width:0}
.story-card:nth-child(-n+2){border-top:1px solid var(--line)}
.story-thumb{aspect-ratio:1.2;overflow:hidden;background:#b9cad0}
.story-thumb img{width:100%;height:100%;object-fit:cover;filter:saturate(.68)}
.card-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.card-copy h3{font-family:var(--font-reading);font-size:clamp(19px,1.65vw,25px);line-height:1.22;letter-spacing:-.025em;font-weight:600;margin:12px 0 10px}
.card-copy p{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 17px}
.card-copy .read-link{font-size:13px;padding-bottom:5px;border-width:1px}
.empty-state{text-align:center;padding:95px 20px 125px}
.empty-marker{font-family:var(--font-display);font-size:88px;line-height:.8;color:var(--orange)}
.empty-state h2{font-family:var(--font-reading);font-size:34px;font-weight:500;letter-spacing:-.04em;margin:25px 0 10px}
.empty-state p{color:var(--muted);line-height:1.5;margin:0 0 25px}
.empty-state button{background:var(--ink);color:white;border:0;padding:13px 20px;font-weight:700}
.detail-view{padding:0 clamp(22px,5.3vw,86px) 100px}
.detail-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0 28px;border-bottom:1px solid var(--line)}
.back-button{display:inline-flex;align-items:center;gap:12px;padding:0;border:0;background:none;color:var(--ink);font-weight:700}
.back-button .back-arrow{font-size:23px;line-height:16px;font-weight:400}
.detail-topbar .detail-top-note{font-size:13px;color:var(--muted)}
.detail-head{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:50px;align-items:end;padding:54px 0 40px}
.detail-head h1{font-family:var(--font-display);font-size:clamp(54px,7.1vw,105px);line-height:1.05;letter-spacing:-.035em;font-weight:500;max-width:1060px;margin:23px 0 0}
.detail-side{border-left:2px solid var(--orange);padding-left:22px;align-self:end}
.detail-side p{font-size:13px;line-height:1.55;margin:0 0 13px;color:var(--muted)}
.detail-side strong{display:block;color:var(--ink);font-weight:700}
.save-item{display:inline-flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:47px;padding:10px 13px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:14px;font-weight:700;text-align:left}
.save-item[aria-pressed="true"]{background:var(--orange);border-color:var(--orange);color:var(--ink-deep)}
.save-item svg{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8}
.save-item[aria-pressed="true"] svg{fill:currentColor}
.detail-visual{position:relative;max-height:440px;aspect-ratio:2.75;overflow:hidden;background:#a9bac0}
.detail-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.72)}
.image-note{position:absolute;right:0;bottom:0;padding:8px 11px;background:var(--paper-light);color:var(--muted);font-size:11px}
.detail-content{display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,680px) minmax(100px,1fr);gap:40px;padding-top:52px}
.byline{font-size:13px;color:var(--muted);line-height:1.55}
.byline strong{display:block;color:var(--ink);font-size:15px}
.article-text{grid-column:2;font-family:var(--font-reading);font-size:19px;line-height:1.75;color:#244551}
.article-text .standfirst{font-size:24px;line-height:1.5;color:var(--ink);margin:0 0 31px;font-weight:500}
.article-text p{margin:0 0 26px}
.article-end{margin-top:48px;border-top:1px solid var(--line);padding-top:20px;font-family:var(--font-ui);font-size:13px;color:var(--muted)}
.site-footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:20px;background:var(--ink-deep);color:#c4d5d9;padding:52px clamp(22px,5.3vw,86px) 34px;font-size:12px;line-height:1.5}
.site-footer p{margin:0}
.site-footer p:last-child{text-align:right}
.footer-brand{font-family:var(--font-display);font-size:43px;letter-spacing:-.035em;line-height:1;color:var(--white)}
.footer-brand span{color:var(--orange)}
@media(max-width:950px){.masthead{font-size:clamp(90px,13.8vw,130px);height:130px}.feature-copy h3{font-size:clamp(39px,5vw,57px)}.story-card{grid-template-columns:34% 1fr;gap:16px}.story-grid{column-gap:30px}.card-copy p{display:none}.card-copy h3{margin-bottom:18px}.detail-content{grid-template-columns:140px minmax(0,1fr);gap:30px}.article-text{grid-column:2}}
@media(max-width:700px){.site-header{border-top-width:6px}.header-top{height:45px}.edition{font-size:11px}.masthead{height:auto;padding:17px 0 14px;font-size:clamp(58px,14.1vw,99px);gap:8px}.header-bottom{height:39px;font-size:11px}.header-bottom p:last-child{display:none}.intro{grid-template-columns:1fr;gap:14px;padding-top:31px;padding-bottom:31px}.intro h1{font-size:29px}.intro p{margin:0;font-size:14px;line-height:1.5}.discover{padding-top:17px;padding-bottom:19px}.controls{grid-template-columns:1fr 1fr;gap:13px}.search-field{grid-column:1/-1}.saved-filter{align-self:end;padding:0 10px;gap:7px;font-size:12px}.filter-field,.search-field{min-width:0}.story-list{padding-top:32px;padding-bottom:65px}.list-heading{margin-bottom:0}.list-heading h2{font-size:34px}.feature-story{display:flex;flex-direction:column;min-height:0;margin-bottom:30px}.feature-image{min-height:0;aspect-ratio:1.55}.feature-copy{padding:24px 23px 28px}.feature-copy h3{font-size:46px;line-height:1.07;margin:17px 0 11px}.feature-copy p{font-size:14px;margin-bottom:22px}.story-grid{grid-template-columns:1fr}.story-card{grid-template-columns:35% 1fr;gap:16px;padding:19px 0}.story-card:nth-child(2){border-top:0}.card-copy h3{font-size:19px;margin:9px 0 16px}.card-copy .story-meta{font-size:11px}.detail-topbar{padding:19px 0}.detail-top-note{display:none}.detail-head{display:block;padding:32px 0 26px}.detail-head h1{font-size:clamp(47px,11.5vw,73px);margin:15px 0 25px}.detail-side{display:flex;align-items:center;justify-content:space-between;gap:15px;border-left:0;border-top:2px solid var(--orange);padding:15px 0 0}.detail-side p{margin:0}.save-item{width:auto;flex:none}.detail-visual{aspect-ratio:1.55}.detail-content{grid-template-columns:1fr;gap:18px;padding-top:28px}.byline{grid-column:1}.article-text{grid-column:1;font-size:17px;line-height:1.72}.article-text .standfirst{font-size:21px}.site-footer{grid-template-columns:1fr 1fr;padding-top:35px}.footer-brand{grid-column:1/-1}.site-footer p:last-child{text-align:right}}
@media(max-width:430px){.masthead{font-size:13.8vw}.edition{font-size:10px}.brand-small{font-size:11px}.list-heading span{display:none}.story-card{grid-template-columns:34% 1fr;gap:13px}.story-thumb{aspect-ratio:.98}.card-copy h3{font-size:18px}.story-meta{gap:7px}.card-copy .read-link{font-size:12px}.detail-side{align-items:flex-start}.save-item{font-size:12px;padding:9px}.site-footer{display:block}.site-footer p{margin-top:15px}.site-footer p:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
