:root{--ink:#172637;--muted:#5d6877;--blue:#164ddc;--line:#dde3eb;--paper:#fff;--wash:#f3f6fb;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit}button,summary{cursor:pointer}a{color:var(--blue)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ffab3d;outline-offset:4px}[hidden]{display:none!important}
.masthead{border-top:5px solid var(--blue);border-bottom:1px solid var(--line)}.header-inner{max-width:1144px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:27px 32px}.wordmark{font-size:27px;font-weight:900;letter-spacing:-1.4px}.wordmark>span{color:var(--blue)}.wordmark small{display:block;font-size:10px;font-weight:600;letter-spacing:3px;margin-top:5px}
.page{max-width:1144px;padding:37px 32px 64px;margin:auto}.page-kicker{display:flex;gap:14px;font-size:12px;font-weight:bold;letter-spacing:1.25px;margin-bottom:24px}.page-kicker span:first-child{color:var(--blue)}.page-kicker span+span{border-left:1px solid #b8c0cc;padding-left:14px;color:var(--muted)}
.layout{display:block;max-width:820px;margin:auto}
.source-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:12px;line-height:1.6;margin-bottom:8px}.source-label{color:var(--blue);font-weight:bold;letter-spacing:.55px}
h1{font-size:clamp(28px,3.05vw,42px);line-height:1.25;letter-spacing:-1.2px;margin:22px 0 20px;font-weight:800}h2{font-size:29px;letter-spacing:-.7px;line-height:1.13;margin:20px 0 15px}
.byline{font-size:13px;color:var(--muted);line-height:1.55;margin:0 0 30px}.byline span{display:block;font-size:12px;margin-top:2px}
.story-image{margin:0 0 32px}.story-image img{display:block;width:100%;height:auto;border-radius:3px}.story-image figcaption{font-size:12px;color:var(--muted);line-height:1.5;margin-top:9px}
.consent-card{padding:26px;border:1px solid #dbe3f2;background:var(--wash);border-top:3px solid var(--blue);border-radius:3px}.panel-top{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:29px}.step-label{font-size:10px;letter-spacing:1.35px;font-weight:bold;color:var(--blue);line-height:1.5}.location-icon{width:28px;height:28px;color:var(--blue)}.gate-message{font-size:15px;line-height:1.6;color:#4d596a;margin:0 0 18px}
.button{display:block;min-height:46px;width:100%;padding:13px 10px;border-radius:4px;border:1px solid transparent;font-size:14px;font-weight:bold;line-height:1.4}.primary{background:var(--blue);color:#fff}.primary:hover{background:#0b3dbf}.primary:disabled{background:#516cb0;cursor:not-allowed}.secondary{background:transparent;color:#42506a;border-color:#cdd7e7;margin-top:10px}.secondary:hover{background:#e7edf8}
.status{font-size:13px;line-height:1.6;color:#4b5d75;margin:15px 2px}
.locked-preview{position:relative;min-height:223px;overflow:hidden;border-bottom:1px solid var(--line)}.placeholder-lines{filter:blur(4px);opacity:.52;user-select:none;padding:10px 0}.placeholder-lines i{display:block;background:#b4bfcd;border-radius:2px;height:12px;margin:0 0 15px;width:100%}.placeholder-lines i:nth-child(3n){width:68%}.placeholder-lines i:nth-child(4){margin-top:26px}.locked-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:9px;background:#ffffff97;color:#52647a;font-size:13px;font-weight:bold}.locked-label svg{width:17px;height:17px}
.reading-kicker{font-size:12px;font-weight:bold;letter-spacing:1.6px;color:var(--blue);padding-top:1px}
.article-body>p{font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.8;color:#28323d;margin:0 0 22px}.article-body>p:first-child{margin-top:4px}
.source-box{margin-top:36px;border-top:2px solid var(--ink);padding-top:20px;font-size:14px}.source-box>span{display:block;font-size:10px;font-weight:bold;letter-spacing:1.5px;color:var(--muted);margin-bottom:8px}.source-box a{font-weight:bold;text-decoration-thickness:1px;text-underline-offset:4px;line-height:1.5}.source-box small{font-weight:normal}.source-box p{font-size:12px;color:var(--muted);line-height:1.5}
.footer{max-width:1080px;margin:auto;padding:22px 0 28px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);letter-spacing:.6px;line-height:1.6}.noscript{padding:20px;border:1px solid #a35220;background:#fff6ec}
@media(max-width:900px){.page{padding:30px 24px 44px}.header-inner{padding:23px 24px}.consent-card{padding:22px}.footer{margin:0 24px}h1{font-size:33px}}
@media(max-width:700px){.header-inner{padding:20px}.wordmark{font-size:23px}.wordmark small{font-size:9px;letter-spacing:2.2px}.page{padding:26px 20px 40px}.page-kicker{font-size:10px;margin-bottom:21px}.source-line{font-size:11px;gap:5px 10px}.story h1{font-size:30px;line-height:1.22;margin:16px 0 14px}.story .byline{margin:0 0 22px}.story-image{margin:0 0 24px;width:100%}.story-image figcaption{font-size:11px}.article-body>p{font-size:18px;line-height:1.75;margin:0 0 18px}.source-box{margin-top:28px}.locked-preview{min-height:160px}.consent-card{padding:23px}.consent-card h2{font-size:28px;margin:15px 0 12px}.gate-message{margin-bottom:14px}.status{margin-bottom:10px}.footer{margin:0 20px;display:block;font-size:10px}.footer span{display:block;margin-top:5px}}
@media(max-width:360px){.page{padding-left:16px;padding-right:16px}h1,.story h1{font-size:29px}.source-line{display:block}}
@media(prefers-reduced-motion:no-preference){.button{transition:background .15s ease}}
.is-locked{height:100vh;height:100dvh;overflow:hidden}.is-locked #site-surface{height:100%;overflow:hidden}.is-locked .page{filter:blur(3px);pointer-events:none;user-select:none}.is-locked .footer{visibility:hidden}
.access-gate{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(18,32,53,.12);overflow-y:auto;overscroll-behavior:contain}.access-gate .consent-card{width:100%;max-width:430px;flex-shrink:0;padding:28px;border:1px solid #dbe3f2;border-top:3px solid var(--blue);border-radius:10px;background:#fff;box-shadow:0 16px 70px #12203530}.access-gate h2{font-size:29px;margin:17px 0 14px;outline:none}
.consent-note{font-size:13px;line-height:1.65;color:#536173;margin:0 0 16px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.access-gate .share-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.55;color:#3f4c5f;margin:0 0 18px;cursor:pointer}.access-gate .share-consent input{width:19px;height:19px;flex-shrink:0;margin:2px 0 0;accent-color:var(--blue)}.access-gate .share-consent input:focus-visible{outline:3px solid #ffab3d;outline-offset:3px}
.access-gate .status{font-size:12px;text-align:center;margin:17px 0 0;line-height:1.5}.access-gate .gate-message{font-size:16px;line-height:1.6;margin-bottom:17px}.access-gate .location-icon{width:24px;height:24px}.access-gate .button{font-size:15px;min-height:48px}.button:disabled{cursor:not-allowed}.access-gate .noscript{font-size:13px;padding:12px;border-radius:4px;line-height:1.6}
@media(max-width:700px){.access-gate{align-items:flex-end;padding:12px;padding-bottom:max(12px,env(safe-area-inset-bottom));background:rgba(18,32,53,.08)}.access-gate .consent-card{max-width:440px;padding:22px;border-radius:12px}.access-gate h2{font-size:26px;margin:12px 0}.access-gate .gate-message{font-size:15px;line-height:1.55;margin-bottom:14px}.consent-note{font-size:13px;line-height:1.6;padding:12px 0;margin-bottom:14px}.access-gate .status{margin-top:13px}.is-locked .page{filter:blur(2.5px)}}
@media(max-height:620px){.access-gate{align-items:flex-start;padding:12px}.access-gate .consent-card{margin:auto}.access-gate h2{font-size:24px}.consent-note{margin-bottom:14px;padding:10px 0}}
@media(max-width:700px){.is-locked .page{padding-top:18px}.is-locked .page-kicker{display:none}.is-locked .story h1{font-size:26px;line-height:1.13;letter-spacing:-.6px}.gate-actions{display:block}.access-gate .gate-actions .button{font-size:14px;padding:12px 7px;min-height:48px}}
@media print{.locked-preview,.footer{display:none}.story-image{max-width:650px}.article-body{font-size:16px}}
@media print{.access-gate{display:none}.is-locked #site-surface{display:none}}