@font-face{font-family:Space;src:url('assets/space-grotesk.ttf') format('truetype');font-display:swap}
@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}
:root{--paper:#f4f1e8;--white:#fffdf7;--ink:#142e4c;--blue:#173ca9;--lime:#e7f476;--line:#c9d0c9;--muted:#5a6870}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 Space,Arial,sans-serif;-webkit-tap-highlight-color:rgba(23,60,169,.2)}
button,input,select{font:inherit}
button,a,select{touch-action:manipulation}
button{cursor:pointer}
a{color:inherit}
:focus-visible{outline:3px solid #ed6c38;outline-offset:4px}
h1,h2,h3,p{margin:0}
h1,h2,h3{text-wrap:balance}
.wrap{width:min(100% - 80px,1320px);margin-inline:auto}
.skip-link{position:absolute;z-index:20;top:-100px;left:20px;padding:12px 20px;background:var(--lime);color:var(--ink)}
.skip-link:focus{top:14px}
.top-rule{height:9px;background:repeating-linear-gradient(90deg,var(--blue) 0 72px,var(--lime) 72px 90px)}
.site-header{min-height:101px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--ink);gap:20px}
.brand{display:flex;gap:11px;align-items:center;width:max-content;text-decoration:none}
.brand-name{font:700 22px/.85 Space,Arial,sans-serif;letter-spacing:-1.7px}
.brand-dot{color:var(--blue)}
.brand-mark{display:grid;gap:3px;transform:skewY(-20deg)}
.brand-mark span{display:block;width:25px;height:6px;background:var(--blue)}
.brand-mark span:nth-child(2){width:19px}.brand-mark span:nth-child(3){width:13px}
.header-note,.header-link,.section-kicker,.field-label,.results-line,.dialog-brand,.detail-category,.detail-meta,.detail-side,.dialog-footer,.art-caption,.eyebrow{font:600 11px/1.2 Space,Arial,sans-serif;letter-spacing:.11em}
.header-note{display:flex;align-items:center;gap:9px;color:var(--muted)}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--blue)}
.header-link{justify-self:end;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:4px}
.header-link:hover{color:var(--blue);border-color:var(--blue)}
.header-link span{font-size:16px;margin-left:12px}
.intro{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,.78fr);min-height:330px;border-bottom:1px solid var(--ink)}
.intro-copy{padding:35px 20px 34px 0;display:flex;flex-direction:column;align-items:flex-start}
.eyebrow{display:flex;align-items:center;gap:13px;color:var(--blue)}
.eyebrow-line{height:1px;width:30px;background:var(--blue)}
.intro h1{font:600 clamp(57px,6.15vw,93px)/.98 Oswald,Impact,sans-serif;letter-spacing:-.045em;margin:22px 0 18px;max-width:890px}
.intro h1 em{font-style:normal;color:var(--blue)}
.intro-copy>p{font-size:17px;max-width:420px}
.intro-art{position:relative;overflow:hidden;background:var(--blue);border-left:1px solid var(--ink);min-height:330px}
.art-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.17) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.17) 1px,transparent 1px);background-size:29px 29px}
.art-orbit{position:absolute;border:2px solid var(--lime);border-radius:50%;width:365px;height:365px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-17deg)}
.art-orbit-one:after,.art-orbit-two:after{content:"";position:absolute;width:13px;height:13px;border-radius:50%;background:var(--lime);left:25px;top:75px}
.art-orbit-two{width:245px;height:245px;transform:translate(-50%,-50%) rotate(129deg)}
.art-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--lime);font:500 40px/.92 Oswald,Impact,sans-serif;letter-spacing:-.035em;text-align:center;transform:rotate(-10deg)}
.art-center i{font:normal 60px/1 Space,sans-serif;align-self:center}
.art-caption{position:absolute;right:18px;bottom:15px;color:var(--white);writing-mode:vertical-rl}
.stories-section{padding-top:36px;padding-bottom:96px;scroll-margin-top:20px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}
.section-kicker{color:var(--blue)}
.section-heading h2{font:600 42px/1.08 Oswald,Impact,sans-serif;letter-spacing:-.025em;margin-top:7px}
.heading-period{color:var(--blue)}
.section-heading>p{font-size:13px;line-height:1.3;text-align:right;color:var(--muted)}
.toolbar{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(210px,.7fr) minmax(200px,.63fr);border:1px solid var(--ink);background:var(--white)}
.toolbar>*{min-width:0;padding:14px 18px;display:flex;flex-direction:column;gap:10px;text-align:left}
.toolbar>*+*{border-left:1px solid var(--ink)}
.field-label{color:var(--blue)}
.search-control{display:flex;align-items:center;gap:10px;min-width:0}
.search-control svg{fill:none;stroke:var(--ink);stroke-width:1.7;flex:none}
.search-control input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--ink);padding:0;font-size:17px}
.search-control:focus-within{outline:2px solid var(--blue);outline-offset:5px}
input::placeholder{color:#77818a;opacity:1}
.filter-field select{appearance:none;width:100%;border:0;background-color:var(--white);color:var(--ink);padding:0 25px 0 0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 7 6 6 6-6' fill='none' stroke='%23142e4c' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:18px;background-position:right center;font-size:17px;cursor:pointer}
.saved-toggle{background:var(--white);color:var(--ink);border:0}
.saved-toggle:hover,.saved-toggle[aria-pressed="true"]{background:var(--lime)}
.saved-toggle-bottom{display:flex;align-items:center;gap:7px;font-size:17px}
.bookmark-icon{font-size:23px;line-height:.65}
.saved-toggle[aria-pressed="true"] .bookmark-icon{color:var(--blue)}
.saved-count{margin-left:auto;border:1px solid currentColor;border-radius:50%;min-width:23px;height:23px;display:grid;place-items:center;font-size:11px;font-variant-numeric:tabular-nums}
.results-line{display:flex;justify-content:space-between;align-items:center;margin:21px 0 13px;color:var(--muted)}
.results-line p{color:var(--ink)}
.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.story-card{min-width:0;min-height:215px;background:var(--white);border:1px solid var(--line);display:grid;grid-template-columns:45px minmax(0,1fr) 138px;gap:16px;padding:17px;transition:transform .2s}
.story-card:hover,.story-card:focus-within{border-color:var(--blue);box-shadow:5px 5px 0 var(--lime);transform:translate(-2px,-2px)}
.story-index{font:600 24px/1 Oswald,sans-serif;color:var(--blue);font-variant-numeric:tabular-nums}
.story-text{min-width:0;display:flex;flex-direction:column}
.story-overline{font:600 11px/1.2 Space,sans-serif;letter-spacing:.11em;color:var(--blue);text-transform:uppercase;display:flex;align-items:center;gap:9px}
.story-overline:after{content:"";height:1px;background:var(--line);flex:1}
.story-title{font:500 clamp(22px,2.05vw,31px)/1.08 Literata,Georgia,serif;letter-spacing:-.04em;margin:12px 0 9px;max-width:330px}
.story-title button{font:inherit;letter-spacing:inherit;text-align:left;color:inherit;border:0;background:none;padding:0;text-wrap:balance}
.story-title button:after{content:" ↗";color:var(--blue);font-family:Space,Arial,sans-serif;font-size:.7em;white-space:nowrap}
.story-title button:hover{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.story-summary{font-size:13px;line-height:1.4;color:#4c5962;max-width:350px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.story-meta{margin-top:auto;padding-top:12px;font-size:11px;letter-spacing:.05em;color:var(--muted);text-transform:uppercase;display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.story-meta b{font-weight:400;color:var(--blue)}
.card-saved{color:var(--blue);font-weight:600}
.card-art{position:relative;overflow:hidden;background:var(--art-bg);border:1px solid var(--ink);min-height:175px;display:grid;place-items:center}
.card-art:before{content:"";position:absolute;inset:9px;border:1px solid rgba(20,46,76,.4)}
.card-art:after{content:"";position:absolute;width:145px;height:145px;border:18px solid var(--art-shape);border-radius:50%;left:-35px;bottom:-70px}
.card-art .art-number{position:relative;z-index:1;font:600 102px/.8 Oswald,sans-serif;color:var(--art-ink);letter-spacing:-.09em;transform:rotate(-8deg);font-variant-numeric:tabular-nums}
.card-art .art-small{position:absolute;z-index:2;right:12px;top:12px;font:600 9px/1 Space,sans-serif;letter-spacing:.1em;writing-mode:vertical-rl;color:var(--art-ink)}
.card-art .art-slash{position:absolute;width:180px;height:12px;background:var(--art-shape);transform:rotate(-41deg);right:-90px;top:94px}
.art-0{--art-bg:#e7f476;--art-shape:#4c67bb;--art-ink:#173ca9}.art-1{--art-bg:#b7d5df;--art-shape:#e7f476;--art-ink:#173ca9}.art-2{--art-bg:#ffd7b7;--art-shape:#f0794b;--art-ink:#142e4c}.art-3{--art-bg:#f8bd8d;--art-shape:#173ca9;--art-ink:#142e4c}.art-4{--art-bg:#d2cbeb;--art-shape:#e7f476;--art-ink:#173ca9}.art-5{--art-bg:#c6d5a8;--art-shape:#719461;--art-ink:#173a43}.art-6{--art-bg:#f1c9c9;--art-shape:#ef8a78;--art-ink:#173ca9}.art-7{--art-bg:#c5d7ec;--art-shape:#ee8462;--art-ink:#173ca9}
.empty-state{border:1px solid var(--ink);background:var(--lime);padding:55px 25px;text-align:center}
.empty-state[hidden]{display:none}
.empty-symbol{font:75px/1 Oswald,sans-serif;color:var(--blue)}
.empty-state h3{font:600 36px/1.1 Oswald,sans-serif;margin:7px 0}
.empty-state p{font-size:15px;margin-bottom:22px}
.empty-state button{background:var(--blue);color:white;border:1px solid var(--blue);padding:12px 17px;font-size:13px;font-weight:600}
.empty-state button:hover{background:var(--ink)}
.site-footer{background:var(--ink);color:var(--white)}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:115px;font-size:12px}
.footer-brand{font:600 21px/1 Oswald,sans-serif;letter-spacing:.02em;color:var(--lime)}
.site-footer a:hover{color:var(--lime)}
.story-dialog{position:fixed;inset:0;width:min(100%,920px);height:min(100%,940px);max-width:920px;max-height:calc(100dvh - 40px);border:1px solid var(--ink);padding:0;background:var(--paper);color:var(--ink);box-shadow:12px 12px 0 rgba(20,46,76,.4);overscroll-behavior:contain}
.story-dialog::backdrop{background:rgba(10,25,50,.75)}
.dialog-shell{min-height:100%;display:flex;flex-direction:column}
.dialog-topbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;background:var(--blue);color:white;min-height:56px;padding:0 24px;gap:15px}
.dialog-brand span{opacity:.65}
.close-detail{display:flex;align-items:center;gap:12px;color:white;background:transparent;border:0;font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:8px 0}
.close-detail:hover,.close-detail-footer:hover{text-decoration:underline;text-underline-offset:3px}
.close-detail span:last-child{font:30px/1 Space,sans-serif}
.detail-article{padding:44px 60px 40px;flex:1}
.detail-heading{max-width:720px;margin:auto;border-bottom:1px solid var(--ink);padding-bottom:27px}
.detail-category{color:var(--blue);text-transform:uppercase}
.detail-heading h2{font:500 clamp(38px,5vw,63px)/1.08 Literata,Georgia,serif;letter-spacing:-.05em;margin:16px 0 16px}
.detail-summary{font-size:20px;line-height:1.45;max-width:630px;color:#405261}
.detail-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;color:var(--muted);text-transform:uppercase}
.detail-meta .meta-dot{color:var(--blue)}
.detail-body-wrap{display:grid;grid-template-columns:130px minmax(0,1fr);gap:25px;max-width:720px;margin:34px auto 0}
.detail-side{display:flex;flex-direction:column;gap:14px;color:var(--blue);writing-mode:vertical-rl;max-height:180px}
.detail-side-rule{width:1px;height:36px;background:var(--blue)}
.detail-body{font:17px/1.78 Literata,Georgia,serif;color:#29394a;max-width:600px}
.detail-body p+p{margin-top:1.4em}
.detail-body p:first-child:first-letter{float:left;font:600 72px/.82 Oswald,sans-serif;color:var(--blue);padding-right:7px;padding-top:8px}
.detail-end{max-width:720px;margin:42px auto 0;border-top:1px solid var(--ink);padding-top:25px;display:flex;align-items:center;gap:16px}
.end-mark{font-size:32px;line-height:1;color:var(--blue)}
.detail-end p{font:500 19px/1.2 Literata,Georgia,serif;margin-right:auto}
.save-item{display:flex;align-items:center;gap:8px;background:var(--lime);border:1px solid var(--ink);padding:11px 15px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.save-item:hover,.save-item[aria-pressed="true"]{background:var(--blue);color:white}
.save-item span:first-child{font-size:23px;line-height:.5}
.dialog-footer{background:var(--ink);color:var(--white);display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 24px}
.close-detail-footer{background:none;color:var(--white);border:0;text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.1em}
@media(max-width:900px){.wrap{width:min(100% - 40px,1320px)}.intro{grid-template-columns:minmax(0,1fr) 33%}.intro h1{font-size:clamp(54px,7vw,72px)}.story-card{grid-template-columns:30px minmax(0,1fr) 110px;gap:11px}.card-art{min-height:175px}.story-title{font-size:23px}.header-note{display:none}.site-header{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.top-rule{height:7px}.site-header{min-height:82px}.header-link{font-size:11px}.intro{display:block;min-height:0}.intro-copy{padding:28px 0 31px}.intro h1{font-size:clamp(53px,13vw,74px);margin:18px 0 13px}.intro-copy>p{font-size:15px;max-width:310px}.intro-art{display:none}.stories-section{padding-top:27px;padding-bottom:65px}.section-heading{margin-bottom:19px}.section-heading h2{font-size:36px}.section-heading>p{display:none}.toolbar{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1;border-bottom:1px solid var(--ink)}.toolbar>*{padding:13px 14px}.toolbar>*+*{border-left:0}.saved-toggle{border-left:1px solid var(--ink)!important}.saved-toggle-bottom,.filter-field select{font-size:14px}.field-label{font-size:10px}.results-line{font-size:11px}.results-line>span{display:none}.story-grid{grid-template-columns:1fr;gap:11px}.story-card{min-height:203px;grid-template-columns:26px minmax(0,1fr) 89px;gap:9px;padding:12px}.story-index{font-size:18px}.story-title{font-size:22px;margin:9px 0 7px}.story-summary{font-size:13px;-webkit-line-clamp:2}.story-meta{font-size:11px;gap:5px}.card-art{min-height:176px}.card-art .art-number{font-size:77px}.card-art .art-small{right:6px;top:8px;font-size:7px}.footer-inner{flex-wrap:wrap;justify-content:space-between;padding-block:25px;min-height:0}.footer-inner>span:nth-child(2){order:3;width:100%}.story-dialog{max-height:100dvh;height:100dvh;width:100%;max-width:none;border:0;box-shadow:none;margin:0}.dialog-topbar{padding-top:env(safe-area-inset-top);padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right))}.detail-article{padding:29px 22px 35px}.detail-heading h2{font-size:clamp(37px,10vw,50px)}.detail-summary{font-size:17px}.detail-body-wrap{display:block;margin-top:27px}.detail-side{display:none}.detail-body{font-size:16px;line-height:1.7}.detail-end{flex-wrap:wrap;gap:10px}.detail-end p{font-size:17px}.save-item{width:100%;justify-content:center;margin-top:8px}.dialog-footer{padding:17px 22px;padding-bottom:max(17px,env(safe-area-inset-bottom))}}
@media(max-width:390px){.wrap{width:calc(100% - 28px)}.brand-name{font-size:19px}.brand-mark span{width:21px}.intro h1{font-size:52px}.story-card{grid-template-columns:23px minmax(0,1fr) 77px;gap:7px}.story-title{font-size:20px}.card-art .art-number{font-size:66px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
