/* News index and posts. Loaded after sub.css; only adds what sub.css does not already have. */
.news-hero{min-height:auto;padding-bottom:calc(96 * var(--u))}
.news-hero .hero-foot{margin-top:calc(64 * var(--u))}
.light{--news-rule:var(--color-rule-light);--news-dim:var(--color-muted-light)}

/* Filter */
.news-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:calc(40 * var(--u))}
.news-filter button{appearance:none;cursor:pointer;padding:10px 16px;border:1px solid var(--news-rule,var(--rule));background:transparent;color:inherit;
  font:500 max(11px,calc(12 * var(--u)))/1 'BDO Grotesk',sans-serif;letter-spacing:.08em;text-transform:uppercase;transition:background .15s,color .15s,border-color .15s}
.news-filter button:hover{border-color:currentColor}
.news-filter button[aria-pressed="true"]{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-label-white)}
.news-filter button:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}
.news-filter .count{margin-left:8px;font-family:var(--mono);opacity:.6}

/* List: picture cards. The newest major story leads, full width; the rest sit three across (two on tablets, one on phones). */
.news-outlets{margin-top:14px;font:400 max(12px,calc(13 * var(--u)))/1.5 var(--mono);color:var(--text-muted,#8e9299);letter-spacing:.02em}
.news-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(64 * var(--u)) calc(28 * var(--u))}
.news-item{min-width:0}
.news-item[hidden]{display:none}
.news-item a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.news-item .thumb{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#141518;isolation:isolate}
.news-item .thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease-out,cubic-bezier(.2,.7,.2,1))}
.news-item .thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgb(12 12 13 / .62),transparent 52%);pointer-events:none}
.news-item .tag{position:absolute;left:16px;right:16px;bottom:14px;z-index:1;font:500 max(11px,calc(12 * var(--u)))/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#ecedee}
.news-item .meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-top:calc(20 * var(--u));font:400 max(12px,calc(13 * var(--u)))/1.5 var(--mono);color:var(--news-dim,var(--dim))}
.news-item .src .type{color:var(--color-blue);text-transform:uppercase;letter-spacing:.06em;margin-right:10px}
.news-item .lang{margin-left:8px;padding:1px 5px;border:1px solid currentColor;font-size:.85em}
.news-item .arrow{margin-left:auto;font:400 16px/1 var(--mono);color:var(--color-ink);transition:transform .2s ease}
.news-item .body{display:block;margin-top:10px}
.news-item h3{font:500 max(19px,calc(24 * var(--u)))/1.22 'Chakra Petch',sans-serif;letter-spacing:-.01em;text-wrap:balance}
.news-item h3:lang(ko){font-family:'Pretendard','Apple SD Gothic Neo','Noto Sans KR',sans-serif;letter-spacing:-.02em;word-break:keep-all}
.news-item p{margin-top:10px;font:400 max(14px,calc(15 * var(--u)))/1.55 'BDO Grotesk',sans-serif;color:var(--news-dim,var(--dim));text-wrap:pretty}
@media(hover:hover) and (pointer:fine){
  .news-item a:hover .thumb img{transform:scale(1.035)}
  .news-item a:hover h3{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
  .news-item a:hover .arrow{transform:translateX(4px)}
}
.news-item a:focus-visible{outline:2px solid var(--color-blue);outline-offset:6px}
/* Featured: picture left, words right. */
.news-item.is-featured{grid-column:1 / -1;padding-bottom:calc(64 * var(--u));border-bottom:1px solid var(--news-rule,var(--rule))}
.news-item.is-featured a{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:calc(56 * var(--u));align-items:start}
.news-item.is-featured .thumb{grid-column:1;grid-row:1 / 4}
.news-item.is-featured .meta{grid-column:2;margin-top:0}
.news-item.is-featured .body{grid-column:2;margin-top:calc(20 * var(--u))}
.news-item.is-featured h3{font-size:max(26px,calc(44 * var(--u)));line-height:1.08}
.news-item.is-featured p{font-size:max(16px,calc(19 * var(--u)));max-width:42ch}
/* Founder card until a current portrait arrives: initials on the dark tile. */
.news-item .thumb.portrait{display:grid;place-items:center;background:radial-gradient(120% 90% at 30% 20%,#23262b,#0c0c0d)}
.news-item .thumb.portrait .initials{font:600 calc(120 * var(--u))/1 'Chakra Petch',sans-serif;letter-spacing:-.02em;color:#2c3036}
.news-item.is-featured .thumb.portrait .initials{font-size:calc(220 * var(--u))}
/* The type is on the picture, so the line under it shows date and outlet; screen readers still hear the type. */
.news-item .thumb~.meta .src .type{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.news-empty{padding:calc(48 * var(--u)) 0;color:var(--news-dim,var(--dim))}

@media (max-width:1100px){.news-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .news-item.is-featured a{display:flex}
  .news-item.is-featured .meta{margin-top:20px}
  .news-item.is-featured .body{margin-top:10px}
}
@media (max-width:640px){.news-list{grid-template-columns:1fr;gap:44px}}

/* Press kit */
.press-kit{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:calc(56 * var(--u));margin-top:calc(56 * var(--u));padding-top:calc(32 * var(--u));border-top:1px solid var(--rule,#33363b)}
.press-kit .label{margin:0 0 16px}
.press-kit .boiler{margin:0;max-width:56ch;font:400 max(15px,calc(17 * var(--u)))/1.6 'BDO Grotesk',sans-serif;color:#c9ccd1;text-wrap:pretty}
.kit-files{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule,#33363b)}
.kit-files li{border-bottom:1px solid var(--rule,#33363b)}
.kit-files a{display:flex;justify-content:space-between;gap:16px;padding:12px 0;min-height:44px;box-sizing:border-box;align-items:center;color:#ecedee;text-decoration:none;font:400 max(14px,calc(15 * var(--u)))/1.3 'BDO Grotesk',sans-serif}
.kit-files a span{font:400 12px/1 var(--mono);color:#8e9299}
.kit-files a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.kit-contact{margin:0 0 20px;font:400 max(15px,calc(17 * var(--u)))/1.4 var(--mono);color:#ecedee}
@media (max-width:900px){.press-kit{grid-template-columns:1fr;gap:40px}}

/* Post page */
.post-hero{min-height:auto;padding-bottom:calc(72 * var(--u))}
.post-hero h1{font-size:min(calc(84 * var(--u)),9svh);text-transform:none;max-width:18ch}
.post-meta{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:calc(40 * var(--u));font:400 max(12px,calc(13 * var(--u)))/1.4 var(--mono);color:var(--text-muted)}
.post-meta a{color:inherit}
.post-body{max-width:68ch;margin:0 auto}
.post-body>*+*{margin-top:1.1em}
.post-body p,.post-body li{font:400 max(17px,calc(19 * var(--u)))/1.65 'BDO Grotesk',sans-serif;color:#2a2d32;text-wrap:pretty}
.post-body .standfirst{font-size:max(20px,calc(24 * var(--u)));line-height:1.5;color:var(--color-ink)}
.post-body h2{margin-top:2em;font:500 max(24px,calc(34 * var(--u)))/1.15 'Chakra Petch',sans-serif;letter-spacing:-.01em}
.post-body ul,.post-body ol{padding-left:1.2em}
.post-body li+li{margin-top:.4em}
.post-body a{color:var(--color-blue);text-underline-offset:3px}
.post-body blockquote{margin-left:0;padding-left:20px;border-left:2px solid var(--color-blue)}
.post-body blockquote p{font-size:max(20px,calc(24 * var(--u)));color:var(--color-ink)}
.post-body figure{margin:2em 0}
.post-body .post-cover{margin:0 0 2.2em;aspect-ratio:16/10;overflow:hidden;background:#141518}
.post-body .post-cover img{width:100%;height:100%;object-fit:cover}
.post-body figure img{display:block;width:100%;height:auto}
.post-body figcaption{margin-top:8px;font:400 13px/1.5 var(--mono);color:var(--color-muted-light)}
.post-body .facts{list-style:none;padding:0;border-top:1px solid var(--color-rule-light)}
.post-body .facts li{display:grid;grid-template-columns:12ch 1fr;gap:16px;margin:0;padding:12px 0;border-bottom:1px solid var(--color-rule-light);font-size:max(15px,calc(16 * var(--u)))}
.post-body .facts b{font:500 12px/1.9 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted-light)}
.post-back{display:inline-block;margin-top:calc(72 * var(--u));font:500 13px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink)}

/* Founding-team profile */
.profile{display:grid;grid-template-columns:calc(420 * var(--u)) minmax(0,1fr);gap:calc(96 * var(--u));align-items:start}
.profile-side{position:sticky;top:96px}
.profile-photo{margin:0 0 calc(40 * var(--u));aspect-ratio:4/5;background:#e9ebee;overflow:hidden}
.profile-photo .profile-initials{display:grid;place-items:center;width:100%;height:100%;background:radial-gradient(120% 90% at 30% 20%,#23262b,#0c0c0d);font:600 calc(150 * var(--u))/1 'Chakra Petch',sans-serif;color:#2c3036}
.profile-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.profile-side .label{margin:0 0 12px;color:var(--color-muted-light)}
.profile-side .label~.label{margin-top:calc(40 * var(--u))}
.profile-timeline,.profile-links{list-style:none;margin:0;padding:0;border-top:1px solid var(--color-rule-light)}
.profile-timeline li{display:grid;gap:2px;padding:14px 0;border-bottom:1px solid var(--color-rule-light)}
.profile-timeline .when{font:400 12px/1.4 var(--mono);color:var(--color-blue)}
.profile-timeline .what{font:400 max(15px,calc(16 * var(--u)))/1.4 'BDO Grotesk',sans-serif;color:var(--color-ink)}
.profile-timeline .what b{font-weight:500}
.profile-timeline .note{font:400 13px/1.45 'BDO Grotesk',sans-serif;color:var(--color-muted-light)}
.profile-links li{padding:12px 0;border-bottom:1px solid var(--color-rule-light);font:400 14px/1.4 'BDO Grotesk',sans-serif}
.profile-links a{color:var(--color-ink);text-underline-offset:3px}
.profile-body{margin:0;max-width:64ch}
.profile-qa{margin:0}
.profile-qa dt{margin-top:1.4em;font:500 max(17px,calc(19 * var(--u)))/1.4 'Chakra Petch',sans-serif;color:var(--color-ink)}
.profile-qa dd{margin:.4em 0 0;font:400 max(17px,calc(19 * var(--u)))/1.65 'BDO Grotesk',sans-serif;color:#2a2d32}
.profile-press{list-style:none;padding:0;border-top:1px solid var(--color-rule-light)}
.profile-press li{margin:0;padding:12px 0;border-bottom:1px solid var(--color-rule-light);font-size:max(15px,calc(16 * var(--u)))}
.profile-press a{color:var(--color-ink);text-decoration:none}
.profile-press a:hover{text-decoration:underline}
.profile-press time{font-family:var(--mono);font-size:.85em;color:var(--color-muted-light)}
@media (max-width:900px){
  .profile{grid-template-columns:1fr;gap:40px}
  .profile-side{position:static}
  .profile-photo{max-width:320px}
}

/* Shown only on drafts so nobody mistakes a draft for the live page. Remove the element to publish. */
.draft-banner{position:sticky;top:0;z-index:100;padding:10px 16px;background:#ffd400;color:#0c0c0d;font:500 13px/1.4 var(--mono);text-align:center}

@media (prefers-reduced-motion:reduce){.news-item .arrow,.news-item .thumb img,.news-filter button{transition:none}}

/* Drafts: the banner sits above the fixed header instead of covering the logo. */
body:has(.draft-banner) .site-header{top:37px}

/* ---- Review fixes 2026-11-11 ---- */
/* Hero photo behind the headline, like the other sub-pages. */
.news-hero{position:relative;isolation:isolate;overflow:hidden}
.news-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgb(12 12 13 / .92) 0%,rgb(12 12 13 / .72) 45%,rgb(12 12 13 / .35) 100%)}
/* Drafts are shown only with ?drafts (news.js). */
.news-item[data-draft]:not(.show-draft){display:none}
/* Readable type tags on bright photos. */
.news-item .thumb::after{background:linear-gradient(0deg,rgb(12 12 13 / .8),transparent 48%)}
.news-item .tag{text-shadow:0 1px 2px rgb(0 0 0 / .6)}
/* A hairline round each picture so light photos keep an edge on the white page. */
.news-item .thumb{box-shadow:inset 0 0 0 1px rgb(12 12 13 / .08)}
/* Filters: full-size tap targets. */
.news-filter button{min-height:44px}
/* When a filter leaves one card alone on the last row, it runs the full width with the picture beside the words. */
@media (min-width:1101px){
  .news-item.solo{grid-column:1 / -1}
  .news-item.solo a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);column-gap:28px;grid-template-rows:auto 1fr;align-items:start}
  .news-item.solo .thumb{grid-row:1 / 3}
  .news-item.solo .meta{margin-top:0}
}
/* Founder initials: a deliberate badge, not an empty picture. */
.news-item .thumb.portrait,.profile-photo .profile-initials{background:var(--color-blue)}
.news-item .thumb.portrait .initials,.profile-photo .profile-initials{color:#ecedee}
/* Phone fixes: the post title fits; the featured arrow sits right; drafts banner stays one line. */
.post-hero h1{font-size:min(calc(84 * var(--u)),9svh,11vw);overflow-wrap:anywhere}
.draft-banner .short{display:none}
@media (max-width:640px){.draft-banner .long{display:none}.draft-banner .short{display:inline}}
@media (max-width:900px){.news-item.is-featured a{align-items:stretch}}
.post-body ul:not(.facts){list-style:disc}
/* Profile: small sidebar labels; on phones the bio comes before the timeline. */
.profile-side .label{font:500 max(11px,calc(12 * var(--u)))/1.4 'BDO Grotesk',sans-serif;letter-spacing:.08em;text-transform:uppercase}
@media (max-width:900px){.profile{display:flex;flex-direction:column}.profile-body{order:-1}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Article images that are logo lockups on white: no dark fade; the type label in ink. */
.news-item .thumb.logo{background:#fff;box-shadow:inset 0 0 0 1px var(--color-rule-light,#d4d7db)}
.news-item .thumb.logo::after{display:none}
.news-item .thumb.logo img{object-fit:contain}
.news-item .thumb.logo .tag{color:var(--color-muted-light,#636974);text-shadow:none}

/* Also covered by: the reports that retell the same announcement, as compact rows without pictures. */
.news-also{margin-top:calc(96 * var(--u))}
.news-also ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--news-rule,var(--rule))}
.news-also li{border-bottom:1px solid var(--news-rule,var(--rule))}
.news-also a{display:grid;grid-template-columns:calc(150 * var(--u)) calc(200 * var(--u)) minmax(0,1fr) 24px;gap:calc(24 * var(--u));align-items:baseline;min-height:44px;padding:16px 0;color:inherit;text-decoration:none}
.news-also time,.news-also .also-src{font:400 max(12px,calc(13 * var(--u)))/1.5 var(--mono);color:var(--news-dim,var(--dim))}
.news-also .also-title{font:500 max(16px,calc(18 * var(--u)))/1.35 'Chakra Petch',sans-serif;text-wrap:balance}
.news-also .also-title:lang(ko){font-family:'Pretendard','Apple SD Gothic Neo','Noto Sans KR',sans-serif;word-break:keep-all}
.news-also .arrow{justify-self:end;font:400 15px/1 var(--mono);transition:transform .2s ease}
@media(hover:hover) and (pointer:fine){.news-also a:hover .also-title{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.news-also a:hover .arrow{transform:translateX(4px)}}
.news-also a:focus-visible{outline:2px solid var(--color-blue);outline-offset:4px}
@media (max-width:900px){.news-also a{grid-template-columns:auto 1fr auto;gap:4px 12px}.news-also .also-title{grid-column:1 / -1;grid-row:2}.news-also .arrow{grid-column:3;grid-row:1}}
/* With only one kind of entry, the filter row has nothing to filter. */
.news-filter[hidden]{display:none}

/* Two cards under the featured one share the row instead of leaving an empty third slot. */
@media (min-width:1101px){.news-list[data-rest="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- Newsroom copy pass 2026-11-12: type-only hero (no photo), one hairline, sub left and buttons right ---- */
.news-hero{min-height:58svh;padding-bottom:calc(56 * var(--u))}
.news-hero::before{display:none}
.news-hero h1{white-space:nowrap}
.news-hero .hero-foot{margin-top:calc(72 * var(--u));padding-top:calc(28 * var(--u));border-top:1px solid rgb(236 237 238 / .2);align-items:flex-end}
.news-hero .hero-sub{max-width:calc(620 * var(--u))}
.news-hero .hero-actions{margin-top:0;flex-wrap:nowrap}
@media (max-width:900px){.news-hero{min-height:0}.news-hero h1{white-space:normal}.news-hero .hero-actions{flex-wrap:wrap}}
/* Named link on each press item, in place of a bare arrow. */
.news-item .read,.news-also .read{margin-left:auto;white-space:nowrap;font:500 max(11px,calc(12 * var(--u)))/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink)}
.news-also .read{justify-self:end;margin-left:0}
@media(hover:hover) and (pointer:fine){.news-item a:hover .read,.news-also a:hover .read{color:var(--color-blue)}}
.news-also a{grid-template-columns:calc(150 * var(--u)) calc(200 * var(--u)) minmax(0,1fr) auto}
@media (max-width:900px){.news-also .read{grid-column:3;grid-row:1}}
