:root { --paper:#eef1ef; --paper-deep:#e3e9e6; --ink:#10282c; --ink-deep:#0b1e22; --muted:#3f5658; --rule:#b8c4c1; --accent:#b73354; --light:#eaf0ed; --light-muted:#c4d2ce; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; max-width:100%; overflow-x:clip; background:var(--paper); color:var(--ink); font-family:Manrope,Arial,sans-serif; }
a { color:inherit; }
.shell { width:min(100% - 48px, 1240px); margin:0 auto; }
.mono, .eyebrow, .site-nav, .article-meta, .article-kicker, .source-label, .footer-bottom { font-family:"IBM Plex Mono",monospace; }
.site-header { display:flex; min-height:80px; align-items:center; justify-content:space-between; border-bottom:1px solid var(--rule); }
.wordmark { font-size:1rem; font-weight:700; letter-spacing:.2em; text-indent:.2em; text-decoration:none; }
.site-nav { display:flex; gap:26px; font-size:.74rem; font-weight:500; letter-spacing:.06em; text-transform:uppercase; }
.site-nav a, .back-link, .read-link, .source-link { text-decoration:none; }
.site-nav a:hover, .site-nav a:focus-visible, .back-link:hover, .read-link:hover, .source-link:hover { color:var(--accent); }
.site-nav a:focus-visible, .back-link:focus-visible, .read-link:focus-visible, .source-link:focus-visible { outline:2px solid var(--accent); outline-offset:5px; }
.eyebrow { margin:0 0 18px; color:var(--accent); font-size:.74rem; font-weight:500; letter-spacing:.12em; line-height:1.4; text-transform:uppercase; }
.eyebrow::before { content:""; display:inline-block; width:32px; height:1px; margin:0 12px 3px 0; background:currentColor; }
.index-hero { padding:clamp(70px,11vw,145px) 0 clamp(50px,7vw,90px); border-bottom:1px solid var(--rule); }
.index-hero h1, .article-hero h1 { max-width:980px; margin:0; font-size:clamp(3.3rem,7.1vw,8rem); font-weight:600; letter-spacing:-.08em; line-height:.88; }
.index-hero p:last-child { max-width:520px; margin:34px 0 0; color:var(--muted); font-size:1.04rem; line-height:1.72; }
.news-list { padding:clamp(62px,9vw,125px) 0; }
.news-list article { display:grid; grid-template-columns:150px minmax(0,1.1fr) minmax(230px,.7fr); gap:28px; align-items:start; padding:34px 0 40px; border-top:1px solid var(--rule); }
.news-list article:last-child { border-bottom:1px solid var(--rule); }
.news-list .article-meta { color:var(--accent); font-size:.75rem; font-weight:500; letter-spacing:.06em; line-height:1.55; text-transform:uppercase; }
.news-list h2 { max-width:620px; margin:0; font-size:clamp(2rem,4vw,4.2rem); font-weight:500; letter-spacing:-.07em; line-height:.94; }
.news-list .summary { margin:4px 0 22px; color:var(--muted); font-size:.97rem; line-height:1.7; }
.read-link, .back-link { display:inline-flex; align-items:center; gap:10px; width:fit-content; font-family:"IBM Plex Mono",monospace; font-size:.72rem; font-weight:500; letter-spacing:.07em; line-height:1.4; text-transform:uppercase; transition:color .18s ease,gap .18s ease; }
.read-link:hover, .back-link:hover { gap:16px; }
.disclaimer { margin:28px 0 0; color:var(--muted); font:400 .72rem/1.65 "IBM Plex Mono",monospace; }
.article-hero { padding:clamp(64px,10vw,130px) 0 48px; border-bottom:1px solid var(--rule); background:var(--paper-deep); }
.article-kicker { margin:0 0 25px; color:var(--accent); font-size:.74rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase; }
.article-deck { max-width:675px; margin:32px 0 0; color:var(--muted); font-size:clamp(1.05rem,1.7vw,1.3rem); line-height:1.65; }
.article-meta { display:flex; gap:18px; margin:36px 0 0; color:var(--muted); font-size:.76rem; font-weight:500; letter-spacing:.07em; line-height:1.5; text-transform:uppercase; }
.article-body { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:clamp(42px,9vw,140px); padding:clamp(56px,8vw,100px) 0; }
.article-copy { max-width:720px; }
.article-copy p { margin:0 0 25px; font-size:1.12rem; line-height:1.82; }
.article-copy h2 { margin:58px 0 20px; font-size:clamp(1.8rem,3.3vw,3.2rem); font-weight:500; letter-spacing:-.06em; line-height:.97; }
.article-copy strong { color:var(--ink-deep); }
.article-aside { align-self:start; padding:24px 0; border-top:1px solid var(--ink); border-bottom:1px solid var(--rule); }
.article-aside h2 { margin:0 0 16px; font-size:.76rem; font-weight:500; letter-spacing:.09em; text-transform:uppercase; }
.article-aside p { margin:0; color:var(--muted); font-size:.88rem; line-height:1.65; }
.source-list { margin:0; padding:0; list-style:none; }
.source-list li + li { margin-top:18px; }
.source-label { display:block; margin-bottom:4px; color:var(--accent); font-size:.67rem; letter-spacing:.08em; text-transform:uppercase; }
.source-link { font-size:.91rem; line-height:1.42; }
.article-footer { padding:0 0 72px; }
.article-footer .back-link { padding-top:24px; border-top:1px solid var(--rule); }
.radar-promo { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.55fr); gap:36px; align-items:end; padding:38px 0 42px; border-top:1px solid var(--ink); border-bottom:1px solid var(--rule); }
.radar-promo h2 { max-width:650px; margin:0; font-size:clamp(1.8rem,3.6vw,3.6rem); font-weight:500; letter-spacing:-.065em; line-height:.94; }
.radar-promo p { max-width:370px; margin:0 0 24px auto; color:var(--muted); font-size:.94rem; line-height:1.68; }
.radar-list { padding:clamp(62px,9vw,125px) 0; }
.radar-list > .shell > p { max-width:610px; margin:0 0 42px; color:var(--muted); font-size:1.02rem; line-height:1.72; }
.opportunity-list { border-top:1px solid var(--rule); }
.opportunity-card { display:grid; grid-template-columns:160px minmax(0,1.1fr) minmax(220px,.65fr); gap:28px; align-items:start; padding:34px 0 40px; border-bottom:1px solid var(--rule); }
.opportunity-card h2 { max-width:620px; margin:0; font-size:clamp(1.9rem,3.7vw,3.9rem); font-weight:500; letter-spacing:-.07em; line-height:.94; }
.opportunity-card p { margin:4px 0 22px; color:var(--muted); font-size:.96rem; line-height:1.7; }
.opportunity-status { display:inline-flex; width:fit-content; margin:0 0 13px; padding:5px 7px; border:1px solid var(--accent); color:var(--accent); font:500 .65rem/1 "IBM Plex Mono",monospace; letter-spacing:.07em; text-transform:uppercase; }
.opportunity-meta { color:var(--accent); font:500 .72rem/1.55 "IBM Plex Mono",monospace; letter-spacing:.06em; text-transform:uppercase; }
.radar-note { margin:28px 0 0; color:var(--muted); font:400 .72rem/1.65 "IBM Plex Mono",monospace; }
.footer { padding:38px 0 26px; background:var(--ink-deep); color:var(--light-muted); }
.footer-grid { display:flex; justify-content:space-between; gap:28px; align-items:start; }
.footer p { max-width:300px; margin:16px 0 0; font-size:.86rem; line-height:1.65; }
.footer a { text-decoration:none; }
.footer a:hover { color:var(--light); }
.footer-bottom { display:flex; justify-content:space-between; gap:16px; margin-top:34px; padding-top:18px; border-top:1px solid rgba(234,240,237,.28); font-size:.68rem; line-height:1.45; }
@media (max-width:800px) { .news-list article { grid-template-columns:1fr; gap:18px; } .news-list .summary { max-width:580px; margin-top:0; } .article-body { grid-template-columns:1fr; } .article-aside { max-width:420px; } .radar-promo, .opportunity-card { grid-template-columns:1fr; gap:18px; } .radar-promo p { margin-left:0; } .opportunity-card p { max-width:580px; margin-top:0; } }
@media (max-width:620px) { .shell { width:min(100% - 32px,1240px); } .site-header { min-height:76px; } .site-nav { gap:12px; font-size:.7rem; } .site-nav a:nth-child(-n+2) { display:none; } .article-meta { display:grid; gap:6px; } .footer-grid, .footer-bottom { display:grid; } .article-copy p { font-size:1rem; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition-duration:.01ms !important; } }
