/* Revision 03 (Claude, Sat 31 Oct 2026, for ENG): The Desk's own type (Newsreader for headings, IBM Plex for text and data,
   bundled under the OFL in assets/fonts), the 4K sunrise render as the hero at full brightness, and the institutional loop
   on the Desk page's private side. Loaded after styles.css and revision.css. */
@font-face{font-family:"Newsreader";src:url("assets/fonts/newsreader-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url("assets/fonts/newsreader-latin-500-normal.woff2") format("woff2");font-weight:500 700;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("assets/fonts/ibm-plex-sans-latin-wght.woff2") format("woff2");font-weight:100 700;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("assets/fonts/ibm-plex-mono-latin-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("assets/fonts/ibm-plex-mono-latin-500.woff2") format("woff2");font-weight:500 700;font-style:normal;font-display:swap}

:root{--serif:"Newsreader",Georgia,"Times New Roman",serif;--sans:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;font-family:var(--sans)}
h1,h2,h3,h4,.wordmark{font-family:var(--serif);font-weight:500;letter-spacing:-.012em}
.eyebrow,.dual-number,.door-screen-top,.door-screen-kicker,.door-screen-note,.reading-id,.reading-state,.reading-footer,.life-concept,.scene-caption,.apartment-bottom,.loop-steps span{font-family:var(--mono)}

/* The hero: ENG's 4K sunrise render, no filter, no overlay; cropped only by object-position. */
.home-v2 .hero-photo{display:block;width:100%;height:min(760px,58vw);min-height:360px;overflow:hidden;background:#0b0f15}
.home-v2 .hero-photo img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 60%;filter:none}
@media (max-width:780px){
  .home-v2 .hero-scene{width:100%;margin-left:0}
  .home-v2 .hero-photo{height:72vw;min-height:280px}
  .home-v2 .hero-photo img{object-position:46% 60%}
}

/* The institutional loop, on the private side of the Desk page. */
.loop-strip{max-width:1184px;margin:0 auto 28px;border:1px solid #d7d2c8;border-radius:16px;background:#fbfaf7;padding:26px 28px 22px}
.loop-strip>.eyebrow{margin-bottom:16px}
.loop-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.loop-steps li{display:flex;flex-direction:column;gap:4px;padding-top:12px;border-top:2px solid #b9a888;min-width:0}
.loop-steps li:last-child{border-top-color:#1d1d1f}
.loop-steps span{font-size:11px;letter-spacing:.08em;color:#8a8478}
.loop-steps strong{font-family:var(--serif);font-weight:500;font-size:21px;line-height:1.15;color:#1d1d1f}
.loop-steps small{font-size:13.5px;line-height:1.4;color:#6b665d}
.loop-note{margin-top:18px;font-size:15px;line-height:1.5;color:#4b4740;max-width:62ch}
@media (max-width:900px){.loop-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:540px){.loop-strip{padding:20px 18px;border-radius:12px}.loop-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Ready at launch and coming soon (ENG, Sun 1 Nov 2026). */
.chip-soon{display:inline-flex;align-items:center;gap:8px}
.chip-soon em{font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:#1d1d1f;color:#f5f0e6}
.launch-list{max-width:1184px;margin:28px auto 0;border:1px solid #d7d2c8;border-radius:16px;background:#fbfaf7;padding:26px 28px}
.launch-list h3{font-size:24px;line-height:1.2;color:#1d1d1f;margin-bottom:18px}
.launch-columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:28px}
.launch-columns ul{margin:10px 0 0;padding-left:18px;display:grid;gap:8px;font-size:15px;line-height:1.45;color:#3f3b35}
.launch-columns ul.soon{color:#6b665d}
@media (max-width:780px){.launch-columns{grid-template-columns:minmax(0,1fr)}.launch-list{padding:20px 18px}}
