
  /* local stand-ins sized to the web fonts' widths and heights, so a line wraps the same before and after they arrive */
  @font-face{ font-family:"Schibsted Fallback"; src:local("Arial"), local("ArialMT"); font-weight:100 549; size-adjust:104%; ascent-override:94.2%; descent-override:25%; line-gap-override:0%; }
  @font-face{ font-family:"Schibsted Fallback"; src:local("Arial Bold"), local("Arial-BoldMT"); font-weight:550 649; size-adjust:99.5%; ascent-override:98.5%; descent-override:26.1%; line-gap-override:0%; }
  @font-face{ font-family:"Schibsted Fallback"; src:local("Arial Bold"), local("Arial-BoldMT"); font-weight:650 749; size-adjust:101.3%; ascent-override:96.7%; descent-override:25.7%; line-gap-override:0%; }
  @font-face{ font-family:"Schibsted Fallback"; src:local("Arial Bold"), local("Arial-BoldMT"); font-weight:750 849; size-adjust:103.2%; ascent-override:95%; descent-override:25.2%; line-gap-override:0%; }
  @font-face{ font-family:"Schibsted Fallback"; src:local("Arial Bold"), local("Arial-BoldMT"); font-weight:850 1000; size-adjust:105.7%; ascent-override:92.7%; descent-override:24.6%; line-gap-override:0%; }
  @font-face{ font-family:"Newsreader Fallback"; src:local("Georgia"); font-weight:100 549; font-style:normal; size-adjust:91.3%; ascent-override:81%; descent-override:28.5%; line-gap-override:0%; }
  @font-face{ font-family:"Newsreader Fallback"; src:local("Georgia Bold"), local("Georgia-Bold"); font-weight:550 1000; font-style:normal; size-adjust:82.4%; ascent-override:89.8%; descent-override:31.6%; line-gap-override:0%; }
  @font-face{ font-family:"Newsreader Fallback"; src:local("Georgia Italic"), local("Georgia-Italic"); font-weight:100 549; font-style:italic; size-adjust:83.2%; ascent-override:88.9%; descent-override:31.3%; line-gap-override:0%; }
  @font-face{ font-family:"Newsreader Fallback"; src:local("Georgia Bold Italic"), local("Georgia-BoldItalic"); font-weight:550 1000; font-style:italic; size-adjust:77.8%; ascent-override:95.1%; descent-override:33.4%; line-gap-override:0%; }
  :root{
    --paper:#EEF0EA; --panel:#F4F5F1; --panel-2:#E3E6DE; --rule:#C6CBC0; --ink:#1B1D21; --muted:#555A61; --link:#24456B;
    --yellow:#FF3B1F; --yellow-2:#FF6A45; --hot:#BC2A10; --sage:#7E9C78; --sage-t:#4A6B46; --mauve:#9B7A97; --mauve-t:#6E4F6A; --mid:#2A3A5E; --mid-t:#1F2D4D; --pink:#C27287; --pink-t:#9A4A61;
    --tbc-bg:#F7E3D8; --tbc:#B4461E; --grid:#DDE0D8;
    --accent:var(--link); --ink-2:var(--muted); --paper-2:var(--panel-2);
    --serif:"Newsreader","Newsreader Fallback",Georgia,"Times New Roman",serif; --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
    --display:"Schibsted Grotesk","Schibsted Fallback",system-ui,sans-serif;
    --gutter:clamp(16px,2vw,24px);
    color-scheme:light;
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){ --paper:#15171A; --panel:#1B1E23; --panel-2:#23272D; --rule:#33373D; --ink:#E6E4DC; --muted:#A3A7AD; --link:#8FB3E0; --sage-t:#A8C4A2; --mauve-t:#C6A9C2; --mid-t:#9DB0D6; --pink-t:#E0A2B4; --tbc-bg:#3A2620; --tbc:#F0A080; --grid:#2A2E34; --hot:#FF6A45; --mid:#7F95CC; color-scheme:dark; }
  }
  :root[data-theme="dark"]{ --paper:#15171A; --panel:#1B1E23; --panel-2:#23272D; --rule:#33373D; --ink:#E6E4DC; --muted:#A3A7AD; --link:#8FB3E0; --sage-t:#A8C4A2; --mauve-t:#C6A9C2; --mid-t:#9DB0D6; --pink-t:#E0A2B4; --tbc-bg:#3A2620; --tbc:#F0A080; --grid:#2A2E34; --hot:#FF6A45; --mid:#7F95CC; color-scheme:dark; }

  *, *::before, *::after{ box-sizing:border-box; }
  html{ -webkit-text-size-adjust:100%; scroll-padding-top:7rem; }
  body{ margin:0; background:var(--paper); color:var(--ink); font-family:var(--serif); font-optical-sizing:auto; font-size:1.1875rem; line-height:1.6; padding-inline:0; padding-block:0 4rem; -webkit-font-smoothing:antialiased; transition:background-color .45s, color .45s; }
  main{ padding-inline:var(--gutter); }
  main.home{ padding-inline:0; }
  main.wrap{ max-width:calc(34em + 2 * var(--gutter)); }
  main.mid{ max-width:calc(52rem + 2 * var(--gutter)); }
  main.wide{ max-width:calc(72rem + 2 * var(--gutter)); }
  a{ color:var(--link); text-underline-offset:.15em; }
  a:focus-visible, button:focus-visible{ outline:2px solid var(--link); outline-offset:2px; }
  p{ margin:0 0 1.25rem; text-wrap:pretty; }
  p strong{ font-weight:650; }
  .wide{ max-width:72rem; margin-inline:auto; }
  .mid{ max-width:52rem; margin-inline:auto; }
  .wrap{ max-width:34em; margin-inline:auto; }
  .mono{ font-family:var(--mono); }

  /* header */
  header.top{ position:sticky; top:0; z-index:28; max-width:none; margin-inline:0; margin-bottom:2rem; display:flex; flex-wrap:wrap; align-items:center; gap:.5rem 1.25rem; padding:.9rem var(--gutter) .8rem; border-bottom:1px solid var(--rule); background:color-mix(in srgb,var(--paper) 97%,transparent); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
  header.top .brand{ display:flex; align-items:baseline; gap:.6rem; text-decoration:none; color:var(--ink); margin-right:auto; }
  header.top .brand canvas{ width:172px; height:36px; display:block; }
  html.js .wm-fallback{ display:none; }
  .wm-fallback{ font-family:var(--mono); font-weight:600; letter-spacing:.09em; font-size:.9rem; }
  header.top .ws{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); }
  header.top nav{ display:flex; flex-wrap:wrap; gap:.25rem 1.1rem; font-family:var(--mono); font-size:.8125rem; }
  header.top nav a{ color:var(--muted); text-decoration:none; padding:.35rem 0; }
  header.top nav a:hover{ color:var(--ink); text-decoration:underline; }
  header.top nav .ns{ display:none; }
  @media (min-width:721px){ header.top nav{ order:1; } }  /* on the home page the two-questions button sits before the links */
  /* phones: one row, so the sticky bar is the mark and three short links, not an eighth of the screen */
  @media (max-width:560px){
    header.top{ flex-wrap:nowrap; gap:.75rem; padding:.5rem var(--gutter) .45rem; }
    header.top .brand canvas{ width:150px !important; height:31px !important; }
    header.top nav{ flex-wrap:nowrap; flex-basis:auto !important; gap:0 .95rem; font-size:.75rem; }
    header.top nav a{ padding:.6rem 0; white-space:nowrap; }
    header.top nav .nl, header.top nav a.nb{ display:none; }
    header.top nav .ns{ display:inline; }
  }
  @media (max-width:360px){ header.top .brand canvas{ width:128px !important; height:27px !important; } header.top nav{ gap:0 .7rem; } }

  /* type */
  .eyebrow{ font-family:var(--mono); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; color:var(--link); margin:0 0 1.1rem; }
  .eyebrow a{ color:inherit; }
  h1{ font-family:var(--display); font-weight:800; line-height:1.02; letter-spacing:-.03em; margin:0 0 .9rem; text-wrap:balance; }
  h2{ font-family:var(--display); font-size:1.625rem; font-weight:700; line-height:1.15; letter-spacing:-.02em; margin:3rem 0 1rem; text-wrap:balance; }
  h3{ font-family:var(--display); font-size:1.25rem; font-weight:700; line-height:1.25; margin:0 0 .4rem; letter-spacing:-.015em; }
  .sub{ font-style:italic; font-size:1.375rem; line-height:1.3; color:var(--muted); margin:0 0 1.25rem; text-wrap:balance; }
  .byline{ font-family:var(--mono); font-size:.8125rem; color:var(--muted); margin:0 0 3rem; padding-bottom:1.25rem; border-bottom:1px solid var(--rule); }
  .meta{ font-family:var(--mono); font-size:.75rem; letter-spacing:.04em; color:var(--muted); }
  .lede{ font-size:1.375rem; line-height:1.45; }
  .register{ font-family:var(--mono); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; color:var(--link); margin:-.5rem 0 1rem; }
  blockquote{ margin:2.25rem 0; padding:0 0 0 1.25rem; border-left:2px solid var(--link); font-size:1.5rem; line-height:1.3; text-wrap:balance; }
  blockquote p{ margin:0; }
  .fig{ margin:2.75rem 0 2.5rem; }
  .fig svg{ display:block; width:100%; height:auto; }
  .fig figcaption{ font-family:var(--mono); font-size:.875rem; line-height:1.55; color:var(--muted); margin-top:1rem; padding-top:.75rem; border-top:1px solid var(--rule); text-wrap:pretty; }
  ul,ol{ padding-left:1.25rem; margin:0 0 1.25rem; }
  li{ margin-bottom:.75rem; }
  .tbc{ background:var(--tbc-bg); color:var(--tbc); border:1px dashed var(--tbc); border-radius:4px; padding:0 .3rem; }
  .slot{ background:var(--tbc-bg); color:var(--tbc); border:1px dashed var(--tbc); border-radius:4px; padding:.1rem .4rem; font-family:var(--mono); font-size:.8125rem; line-height:1.55; }
  p.slot{ padding:.65rem .85rem; }
  .slot b{ text-transform:uppercase; letter-spacing:.08em; margin-right:.4rem; }
  .tp-set{ margin:2rem 0 0; }
  sup.fn{ font-family:var(--mono); font-size:.65em; line-height:0; margin-left:.1em; } sup.fn a{ text-decoration:none; color:var(--link); }
  .fns{ margin:2.5rem 0 0; padding-top:1rem; border-top:1px solid var(--rule); font-size:.9375rem; line-height:1.55; color:var(--muted); }
  .fns ol{ margin:0; padding-left:1.4rem; } .fns li{ margin:0 0 .6rem; } .fns li:target{ color:var(--ink); }
  .fn-back{ font-family:var(--mono); font-size:.8125rem; text-decoration:none; }
  .len{ display:flex; flex-wrap:wrap; align-items:center; gap:.35rem; margin:-1.75rem 0 1.6rem; font-family:var(--mono); font-size:.75rem; position:relative; z-index:1; }
  .len + .summary{ margin-top:0; }
  .len-k{ color:var(--muted); letter-spacing:.06em; text-transform:uppercase; margin-right:.25rem; }
  .len button{ font:inherit; padding:.4rem .75rem; min-height:36px; border:1px solid var(--rule); border-radius:999px; background:var(--paper); color:var(--ink); cursor:pointer; }
  .len button b{ font-weight:500; } .len button:hover{ border-color:var(--ink); }
  .len button[aria-checked="true"]{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
  html[data-len="1"] article [data-min="2"], html[data-len="1"] article [data-min="3"], html[data-len="1"] article [data-min="4"], html[data-len="2"] article [data-min="3"], html[data-len="2"] article [data-min="4"], html[data-len="3"] article [data-min="4"], html:not([data-len]) article [data-max], html[data-len="2"] article [data-max="1"], html[data-len="3"] article [data-max="1"], html[data-len="3"] article [data-max="2"]{ display:none; }
  html[data-len] article .unfold{ display:revert !important; }
  article > .fold{ display:block; margin:-.3rem 0 1.2rem; padding:.2rem .7rem; font-family:var(--mono); font-size:.75rem; color:var(--muted); background:none; border:0; border-left:2px dotted var(--rule); cursor:pointer; }
  article > .fold:hover{ color:var(--ink); border-left-color:var(--hot); }
  @media print{ .len, article > .fold{ display:none !important; } html[data-len] article [data-min]{ display:revert !important; } html article [data-max]{ display:none !important; } }
  .nt-pill{ position:fixed; right:16px; bottom:calc(16px + env(safe-area-inset-bottom, 0px)); z-index:40; font-family:var(--mono); font-size:.8125rem; padding:.55rem .95rem; min-height:40px; border-radius:999px; border:1px solid var(--ink); background:var(--paper); color:var(--ink); cursor:pointer; opacity:0; pointer-events:none; transform:translateY(8px); transition:opacity .25s, transform .25s; }
  .nt-pill.on{ opacity:1; pointer-events:auto; transform:none; }
  .nt-panel{ position:fixed; right:16px; bottom:calc(68px + env(safe-area-inset-bottom, 0px)); z-index:41; width:min(24rem, calc(100vw - 32px)); max-height:calc(100vh - 120px); overflow:auto; background:var(--panel); color:var(--ink); border:1px solid var(--ink); border-radius:10px; padding:1rem 1.05rem; box-shadow:0 12px 32px rgba(0,0,0,.18); font-size:.9375rem; line-height:1.45; }
  .nt-panel p{ margin:0 0 .55rem; }
  .nt-h{ font-family:var(--display); font-weight:800; font-size:1.0625rem; }
  .nt-hint, .nt-priv{ color:var(--muted); font-size:.875rem; }
  .nt-on{ font-size:.875rem; } .nt-on span{ font-family:var(--mono); font-size:.75rem; color:var(--muted); }
  .nt-kinds{ display:flex; flex-wrap:wrap; gap:.4rem; margin:.2rem 0 .6rem; }
  .nt-k{ font-family:var(--serif); font-size:.875rem; padding:.35rem .7rem; min-height:36px; border:1px solid var(--rule); border-radius:14px; background:var(--paper); color:var(--ink); cursor:pointer; }
  .nt-k[aria-pressed="true"]{ border-color:var(--ink); background:var(--ink); color:var(--paper); }
  .nt-panel textarea{ width:100%; font:inherit; font-size:1rem; padding:.5rem .6rem; border:1px solid var(--rule); border-radius:6px; background:var(--paper); color:var(--ink); resize:vertical; margin:0 0 .5rem; }
  .nt-act{ display:flex; justify-content:flex-end; gap:.5rem; }
  .nt-act button{ font-family:var(--mono); font-size:.8125rem; padding:.5rem .9rem; min-height:40px; border-radius:6px; border:1px solid var(--ink); background:var(--paper); color:var(--ink); cursor:pointer; }
  .nt-act .nt-send{ background:var(--ink); color:var(--paper); } .nt-act button:disabled{ opacity:.6; }
  .nt-msg{ font-size:.875rem; min-height:1em; } .nt-msg:empty{ margin:0; }
  .nt-hp, .nt-sr{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
  body.nt-mode article [tabindex]{ cursor:pointer; border-radius:4px; transition:background .15s; }
  body.nt-mode article [tabindex]:hover{ background:color-mix(in srgb, var(--hot) 7%, transparent); }
  body.nt-mode article .nt-pick{ background:color-mix(in srgb, var(--hot) 12%, transparent); box-shadow:-6px 0 0 color-mix(in srgb, var(--hot) 12%, transparent), 6px 0 0 color-mix(in srgb, var(--hot) 12%, transparent); }
  .follow span.nt-ask{ display:none; } html.nt-ready .follow span.nt-ask{ display:block; }
  button.nt-open{ font:inherit; color:var(--ink); background:none; border:0; padding:0; text-decoration:underline; text-underline-offset:2px; cursor:pointer; }
  @media print{ .nt-pill, .nt-panel{ display:none !important; } }
  .checked{ display:flex; gap:.5rem; align-items:baseline; margin:.6rem 0 0; }
  .checked i{ flex:none; width:7px; height:7px; border-radius:50%; background:var(--sage); transform:translateY(-1px); }
  .tp-thread{ margin:3rem 0 0; }
  .tp-thread .tp-lead{ color:var(--muted); font-size:1rem; margin:.25rem 0 1rem; }
  .tp-qs{ display:grid; gap:14px; counter-reset:q; }
  .tp-q{ margin:0; padding:1rem 1.1rem 1.05rem; border:1px solid var(--rule); border-radius:8px; background:var(--panel); position:relative; }
  .tp-q + .tp-q::before{ content:"\2193"; position:absolute; top:-15px; left:1.1rem; font-family:var(--mono); font-size:.8125rem; color:var(--muted); background:var(--paper); padding:0 .3rem; }
  .tp-q figcaption{ font-family:var(--mono); font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin:0 0 .5rem; }
  .tp-q figcaption a{ color:var(--link); text-transform:none; letter-spacing:0; font-size:.8125rem; }
  .tp-q blockquote{ margin:0; padding:0; border:0; }
  .tp-q blockquote p{ margin:0; font-size:1.0625rem; line-height:1.55; }
  .tp-set .next{ margin:1rem 0 0; }
  .dot{ display:inline-block; width:.5rem; height:.5rem; border-radius:50%; background:var(--yellow); vertical-align:middle; margin-right:.35rem; }
  .dot.sage{ background:var(--sage); } .dot.grey{ background:var(--rule); } .dot.mauve{ background:var(--mauve); } .dot.mid{ background:var(--mid); } .dot.pink{ background:var(--pink); }
  .hl{ background:linear-gradient(transparent 55%, color-mix(in srgb,var(--yellow) 32%,transparent) 55%, color-mix(in srgb,var(--yellow) 32%,transparent) 92%, transparent 92%); }

  /* hero (home) */
  .hero{ position:relative; min-height:clamp(24rem, 64vh, 42rem); border:1px solid var(--rule); border-radius:8px; background:var(--panel); overflow:hidden; margin-bottom:1.25rem; }
  .hero canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; }
  .hero-copy{ position:absolute; top:0; left:0; max-width:31em; padding:2rem 2rem 1rem; z-index:1; }
  .hero-copy .eyebrow{ margin-bottom:.9rem; }
  .hero-copy h1{ font-size:clamp(1.6rem, 2.9vw, 2.35rem); margin-bottom:.6rem; }
  .hero-copy p{ font-size:1.0625rem; color:var(--muted); margin:0; max-width:28em; }
  .hero-cap{ position:absolute; right:1rem; top:1rem; z-index:1; max-width:22rem; font-family:var(--mono); font-size:.6875rem; letter-spacing:.03em; color:var(--muted); background:var(--paper); border:1px solid var(--rule); border-radius:4px; padding:.35rem .6rem; text-decoration:none; }
  .hero-cap b{ color:var(--ink); font-weight:500; }
  .hero-cap:hover{ border-color:var(--ink); color:var(--ink); }
  @media (max-width:760px){
    .hero{ min-height:0; display:flex; flex-direction:column; }
    .hero-copy{ position:static; padding:1.25rem 1.25rem .75rem; order:-1; }
    .hero .field{ position:relative; height:17rem; }
    .hero canvas{ position:absolute; }
    .hero-cap{ position:static; align-self:flex-start; margin:0 1.25rem 1.25rem; max-width:none; }
  }
  @media (min-width:761px){ .hero .field{ position:absolute; inset:0; } }

  /* bench tiles */
  .bench{ display:flex; flex-wrap:wrap; gap:1.25rem; margin:0 0 1.25rem; }
  .tile{ flex:1 1 18rem; display:flex; flex-direction:column; border:1px solid var(--rule); border-radius:8px; background:var(--panel); overflow:hidden; text-decoration:none; color:inherit; transition:border-color .15s; }
  .tile.wide{ flex:2 1 30rem; }
  .tile:hover{ border-color:var(--ink); }
  .tile .vis{ position:relative; min-height:14rem; height:16rem; background:var(--panel-2); overflow:hidden; }
  .tile .vis.dark{ background:var(--mid); }
  .tile .vis canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; }
  .tile .vis img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; animation:drift 34s ease-in-out infinite alternate; }
  .tile .vis .tag{ position:absolute; top:.75rem; right:.75rem; font-family:var(--mono); font-size:.625rem; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); }
  .tile .vis.dark .tag{ color:rgba(238,240,234,.7); }
  .tile .cap{ position:absolute; left:.75rem; bottom:.75rem; font-family:var(--mono); font-size:.6875rem; color:var(--muted); background:var(--paper); border:1px solid var(--rule); border-radius:4px; padding:.3rem .55rem; }
  .tile .lab{ padding:1rem 1.25rem 1.2rem; border-top:1px solid var(--rule); }
  .tile .t{ font-size:1.375rem; font-weight:600; line-height:1.2; letter-spacing:-.01em; margin:0 0 .3rem; }
  .tile .st{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.04em; color:var(--muted); margin:0 0 .5rem; }
  .tile .d{ font-size:1.0625rem; line-height:1.5; color:var(--muted); margin:0; }
  .tile .lab a{ font-family:var(--mono); font-size:.75rem; }
  .tile .btn{ margin-top:.75rem; }
  .btn{ display:inline-block; font-family:var(--mono); font-size:.75rem; letter-spacing:.04em; min-height:28px; padding:.3rem .7rem; border:1px solid var(--rule); border-radius:6px; background:var(--paper); color:var(--ink); cursor:pointer; text-decoration:none; }
  .btn:hover{ border-color:var(--ink); }
  @keyframes drift{ from{ transform:scale(1.02); } to{ transform:scale(1.1) translate(-1.5%, 1.2%); } }
  @media (prefers-reduced-motion: reduce){ .tile .vis img{ animation:none; } }

  /* the four futures' colours (landing) */
  .sw-sage{ background:var(--sage); } .sw-mauve{ background:var(--mauve); } .sw-mid{ background:var(--mid); } .sw-pink{ background:var(--pink); }

  /* cards, lower row, press */
  .lower{ display:grid; grid-template-columns:2fr 1fr; gap:1.25rem; }
  @media (max-width:760px){ .lower{ grid-template-columns:1fr; } }
  .card{ border:1px solid var(--rule); border-radius:8px; background:var(--panel); padding:1.25rem 1.5rem; }
  .card .eyebrow{ font-size:.6875rem; color:var(--muted); margin-bottom:1rem; }
  .card p{ font-size:1.0625rem; line-height:1.55; }
  .card p:last-child{ margin-bottom:0; }
  .col{ display:flex; flex-direction:column; gap:1.25rem; }
  .about-row{ display:grid; grid-template-columns:8.5rem 1fr; gap:1.5rem; align-items:start; }
  .portrait{ width:8.5rem; height:8.5rem; object-fit:cover; border-radius:8px; border:1px solid var(--rule); display:block; }
  @media (max-width:560px){ .about-row{ grid-template-columns:1fr; } .portrait{ width:6.5rem; height:6.5rem; } }
  .press{ list-style:none; padding:0; margin:0; }
  .press li{ margin:0; border-top:1px solid var(--rule); }
  .press li:first-child{ border-top:0; }
  .press a{ display:flex; justify-content:space-between; gap:1rem; padding:.6rem 0; text-decoration:none; color:var(--ink); font-weight:600; font-size:1rem; }
  .press a:hover{ text-decoration:underline; }
  .press time{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); font-weight:400; white-space:nowrap; padding-top:.2rem; }
  .links{ font-family:var(--mono); font-size:.8125rem; display:flex; flex-wrap:wrap; gap:1rem; margin:0; }
  .links a{ color:var(--muted); }
  .links a:hover{ color:var(--ink); }
  .sect{ margin-top:3rem; }
  .sect-h{ display:flex; justify-content:space-between; align-items:baseline; gap:1rem; margin-bottom:1rem; }
  .sect-h h2{ margin:0; }
  .pinboard{ display:grid; grid-template-columns:repeat(auto-fill, minmax(11rem,1fr)); grid-auto-rows:11rem; grid-auto-flow:dense; gap:.75rem; }
  .pin{ position:relative; border-radius:6px; overflow:hidden; background:var(--panel-2); }
  .pin:first-child{ grid-column:span 2; grid-row:span 2; }
  .pin img{ width:100%; height:100%; object-fit:cover; display:block; }
  .pin::after{ content:""; position:absolute; top:.35rem; left:50%; width:.7rem; height:.7rem; margin-left:-.35rem; border-radius:50%; background:var(--yellow); box-shadow:0 1px 1px rgba(0,0,0,.25); }

  /* footer */
  footer.bottom{ max-width:none; margin:4rem 0 0; padding:1.25rem var(--gutter) 0; border-top:1px solid var(--rule); display:flex; align-items:center; gap:1rem; font-family:var(--mono); font-size:.75rem; color:var(--muted); line-height:1.6; }
  footer.bottom .mono-mark{ width:44px; height:44px; border-radius:8px; background:var(--ink); flex:none; display:grid; place-items:center; }
  footer.bottom .mono-mark canvas{ width:44px; height:44px; display:block; }
  footer.bottom a{ color:var(--muted); }

  /* landing */
  .fut{ display:grid; grid-template-columns:3rem 1fr; gap:1rem; padding:1.5rem 0; border-top:1px solid var(--rule); }
  .fut .sw{ display:block; width:2rem; height:2rem; border-radius:6px; margin-top:.2rem; }
  .fut p{ font-size:1.0625rem; line-height:1.55; color:var(--ink); }
  .fut .call{ font-family:var(--mono); font-size:.75rem; color:var(--muted); margin:0; }
  .fut .call a{ font-weight:500; }
  .c-sage{ color:var(--sage-t); } .c-mauve{ color:var(--mauve-t); } .c-mid{ color:var(--mid-t); } .c-pink{ color:var(--pink-t); }
  .tells{ list-style:none; padding:0; margin:0; }
  .tells li.g{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); margin:1.5rem 0 .5rem; }
  .tells li.g i{ display:inline-block; width:.6rem; height:.6rem; border-radius:2px; margin-right:.5rem; vertical-align:middle; }
  .tells li.t{ display:grid; grid-template-columns:1.1rem 1fr; gap:.75rem; align-items:start; padding:.55rem 0; border-top:1px solid var(--rule); font-size:1.0625rem; line-height:1.5; margin:0; }
  .qs{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:0 0 1.25rem; }
  @media (max-width:640px){ .qs{ grid-template-columns:1fr; } }
  .q{ background:var(--panel-2); border-radius:8px; padding:1rem 1.25rem; }
  .q b{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); font-weight:500; margin-bottom:.4rem; }
  .q p{ margin:0; font-size:1.0625rem; line-height:1.5; }
  .moves{ list-style:none; padding:0; margin:0 0 1.25rem; }
  .moves li{ display:grid; grid-template-columns:.75rem 1fr; gap:.75rem; align-items:start; margin:0; padding:.7rem 0; border-top:1px solid var(--rule); font-size:1.0625rem; line-height:1.5; }
  .moves i{ display:inline-block; width:.6rem; height:.6rem; border-radius:2px; margin-top:.5rem; }
  .moves i.n{ width:auto; height:auto; border-radius:0; margin-top:.15rem; font-family:var(--mono); font-style:normal; font-size:.8125rem; color:var(--muted); }
  .elist{ list-style:none; padding:0; margin:0; }
  .elist li{ margin:0; border-top:1px solid var(--rule); }
  .elist a{ display:grid; grid-template-columns:2.25rem 1fr auto; gap:.75rem; align-items:baseline; padding:.85rem 0; text-decoration:none; color:var(--ink); }
  .elist a:hover .t{ text-decoration:underline; }
  .elist .n{ font-family:var(--mono); font-size:.9rem; color:var(--muted); }
  .elist .t{ font-family:var(--display); font-weight:800; font-size:1.125rem; letter-spacing:-.01em; display:block; }
  .elist .d{ display:block; font-size:1rem; color:var(--muted); line-height:1.45; }
  .elist .dr{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); white-space:nowrap; }
  .aw{ margin:2.25rem 0 0; padding:1rem 0 0; border-top:1px solid var(--rule); font-size:1rem; line-height:1.5; color:var(--muted); }
  .aw .k{ font-family:var(--mono); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; margin-right:.35rem; }
  .aw > a{ font-family:var(--display); font-weight:800; font-size:1.125rem; letter-spacing:-.01em; color:var(--ink); text-decoration:none; }
  .aw > a:hover{ text-decoration:underline; text-underline-offset:.15em; }
  .aw .m{ font-family:var(--mono); font-size:.6875rem; white-space:nowrap; margin-left:.4rem; }
  .aw .d{ display:block; margin-top:.25rem; }
  .aw .d a{ color:var(--ink); }
  .aw.quiet{ margin:1rem 0 0; padding:0; border:0; font-family:var(--mono); font-size:.8125rem; line-height:1.6; }
  .aw.quiet .k{ font-size:inherit; letter-spacing:0; text-transform:none; margin-right:0; }
  .aw.quiet > a{ font:inherit; text-decoration:underline; }
  .aw.quiet .m{ font-size:inherit; }
  .plist{ list-style:none; padding:0; margin:0; }
  .plist li{ margin:0; border-top:1px solid var(--rule); padding:.8rem 0; }
  .plist .t{ font-family:var(--display); font-weight:800; font-size:1.125rem; letter-spacing:-.01em; }
  .plist .d{ display:block; font-size:1rem; color:var(--muted); line-height:1.45; }
  .plist a{ font-family:var(--mono); font-size:.75rem; }
  .tm .tm-p{ color:var(--muted); margin:-.4rem 0 1rem; font-size:1.0625rem; }
  .claims{ list-style:none; padding:0; margin:0; border-bottom:1px solid var(--rule); }
  .claims li{ margin:0; border-top:1px solid var(--rule); }
  .claims a{ display:grid; grid-template-columns:2.25rem 1fr; gap:.75rem; align-items:baseline; padding:.9rem 0 .95rem; text-decoration:none; color:var(--ink); }
  .claims .n{ font-family:var(--mono); font-size:.9rem; color:var(--muted); }
  .claims .t{ font-family:var(--display); font-weight:800; font-size:.9375rem; letter-spacing:-.005em; color:var(--link); }
  .claims .d{ display:block; margin-top:.2rem; font-size:1.0625rem; line-height:1.5; }
  .claims .dr{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); white-space:nowrap; margin-left:.35rem; }
  @media (max-width:480px){ .claims a{ gap:.6rem; } .claims .d{ font-size:1rem; } }
  .claims a:hover .t{ text-decoration:underline; text-underline-offset:.15em; }
  .start-h{ font-size:1.125rem; margin:2rem 0 .75rem; }
  .start{ display:grid; grid-template-columns:repeat(2,1fr); gap:.75rem; margin:0 0 1rem; }
  @media (max-width:760px){ .start{ grid-template-columns:1fr; } }
  .start a{ display:flex; flex-direction:column; gap:.4rem; padding:1rem 1.1rem 1.05rem; border:1px solid var(--rule); border-radius:8px; background:var(--panel); color:var(--ink); text-decoration:none; transition:border-color .15s, transform .15s; }
  .start a:hover{ border-color:var(--ink); transform:translateY(-2px); }
  .start .k{ font-family:var(--display); font-weight:700; font-size:1.15rem; line-height:1.25; color:var(--ink); }
  .start .t{ display:none; }
  .start .t{ font-family:var(--display); font-weight:800; font-size:1.1875rem; line-height:1.2; letter-spacing:-.01em; }
  .start .d{ flex:1; font-size:.9375rem; line-height:1.45; color:var(--muted); text-wrap:pretty; }
  .start .m{ font-family:var(--mono); font-size:.75rem; color:var(--link); }
  .start a:hover .m{ text-decoration:underline; text-underline-offset:.15em; }
  .start.lost{ grid-template-columns:1fr; margin-top:2rem; }
  @media (min-width:640px){ .start.lost{ grid-template-columns:repeat(3,1fr); } }
  @media (prefers-reduced-motion: reduce){ .start a, .start a:hover{ transition:none; transform:none; } }
  .pdfl{ font-family:var(--mono); font-size:.75rem; line-height:1.6; color:var(--muted); margin:0; }
  .pdfl a{ color:var(--muted); }
  .pdfl a:hover{ color:var(--ink); }
  .gloss{ margin:0; border-bottom:1px solid var(--rule); }
  .gloss > div{ display:grid; grid-template-columns:14rem 1fr; gap:.2rem 1.25rem; padding:.65rem 0; border-top:1px solid var(--rule); }
  .gloss dt{ font-family:var(--display); font-weight:700; font-size:1rem; line-height:1.5; letter-spacing:-.005em; }
  .gloss dt i{ display:inline-block; width:.6rem; height:.6rem; border-radius:2px; margin-right:.45rem; vertical-align:.05em; }
  .gloss dd{ margin:0; font-size:1rem; line-height:1.5; }
  .gloss .ref{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); white-space:nowrap; }
  .gloss .ref{ margin-left:.2rem; }
  .gloss .ref:hover{ color:var(--ink); }
  @media (max-width:640px){ .gloss > div{ grid-template-columns:1fr; } }
  .closing{ margin:3.5rem 0 0; padding:1.5rem 0 0; border-top:1px solid var(--rule); }
  .closing p{ max-width:38rem; font-size:1.1875rem; line-height:1.5; margin:0 0 .5rem; text-wrap:pretty; }
  .closing .sig{ font-style:italic; color:var(--muted); margin:0; }

  /* essay */
  .summary{ list-style:none; padding:0; margin:-1.5rem 0 3rem; }
  .tg{ display:inline-block; vertical-align:.15em; margin:0 .4rem 0 0; padding:.05rem .45rem; border:1px solid var(--rule); border-radius:999px; font-family:var(--mono); font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); white-space:nowrap; }
  .compass{ margin:-1.6rem 0 3rem; border:1px solid var(--rule); border-radius:12px; }
  .compass > summary{ display:flex; flex-wrap:wrap; align-items:center; gap:.35rem .75rem; padding:.7rem .9rem; cursor:pointer; list-style:none; min-height:44px; }
  .compass > summary::-webkit-details-marker{ display:none; }
  .compass > summary::after{ content:"+"; font-family:var(--mono); color:var(--muted); width:1.35rem; height:1.35rem; display:grid; place-items:center; border:1px solid var(--rule); border-radius:4px; } .compass[open] > summary::after{ content:"\2212"; }
  .compass .ch{ font-family:var(--display); font-weight:700; color:var(--ink); }
  .compass .ct{ font-family:var(--mono); font-size:.8rem; color:var(--muted); }
  .compass .cu{ margin-left:auto; font-family:var(--mono); font-size:.75rem; color:var(--muted); }
  .compass .cin{ padding:0 .9rem .9rem; border-top:1px solid var(--rule); }
  .compass .cintro{ font-size:.95rem; color:var(--muted); margin:.8rem 0 1rem; }
  .compass ol{ list-style:none; margin:0; padding:0; }
  .compass .ci{ display:grid; grid-template-columns:22px 1fr; gap:.75rem; padding:.75rem 0; border-top:1px dashed var(--rule); }
  .compass .ci:first-child{ border-top:0; }
  .compass .cq{ margin:0; font-family:var(--display); font-weight:600; line-height:1.3; }
  .compass .ck{ margin:.15rem 0 .25rem; font-family:var(--mono); font-size:.75rem; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); }
  .compass .ck-a{ color:var(--ink); } .compass .ck-b{ color:var(--hot,#BC2A10); }
  .compass .cw{ margin:0; font-size:.95rem; line-height:1.5; }
  .compass details summary{ cursor:pointer; font-family:var(--mono); font-size:.75rem; color:var(--link); margin-top:.35rem; }
  .compass details ul{ margin:.4rem 0 0; padding-left:1rem; font-size:.875rem; line-height:1.45; color:var(--muted); }
  .compass details li{ margin-bottom:.3rem; } .compass .cd{ font-family:var(--mono); font-size:.75rem; }
  .cn{ flex:none; overflow:visible; } .cn circle{ fill:none; stroke:var(--rule); stroke-width:1.5; } .cn .hub{ fill:var(--ink); stroke:none; }
  .cn .nd{ transition:transform .6s cubic-bezier(.3,1.6,.5,1); } .cn path{ fill:var(--ink); } .cn .tl{ fill:var(--rule); }
  .cn-b path:not(.tl){ fill:var(--hot,#BC2A10); } .cn-none path:not(.tl){ fill:var(--muted); }
  @media (prefers-reduced-motion:no-preference){ .cn-mixed .nd{ animation:cnsw 3.2s ease-in-out infinite alternate; } @keyframes cnsw{ from{ transform:rotate(-34deg); } to{ transform:rotate(34deg); } } }
  .summary + .compass{ margin-top:-1.6rem; }
  @media print{ .compass{ display:none; } }
  .summary li{ position:relative; padding-left:1.1rem; margin-bottom:.5rem; font-size:1rem; line-height:1.5; color:var(--muted); }
  .summary li::before{ content:""; position:absolute; left:0; top:.62em; width:.45rem; height:.45rem; border-radius:50%; background:var(--link); }
  .marker{ font-family:var(--mono); font-size:.75rem; color:var(--muted); margin:0 0 1rem; }
  .marker a{ color:var(--link); }
  .byline a{ color:inherit; text-decoration-color:var(--rule); }
  .byline a:hover{ color:var(--ink); }
  .beta{ display:inline-block; font-family:var(--mono); font-weight:500; font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; color:var(--ink); border:1px solid var(--ink); border-radius:3px; padding:0 .35em; margin-right:.5em; line-height:1.5; }
  .beta-note{ font-family:var(--mono); font-size:.8125rem; color:var(--muted); margin:.75rem 0 0; }
  article h2 .hash{ margin-left:.35rem; padding:0 .2rem; font-family:var(--mono); font-weight:400; font-size:.75em; color:var(--muted); text-decoration:none; opacity:0; transition:opacity .15s; }
  article h2 .hash::after{ content:"#"; }  /* drawn, so a heading's text is only its words */
  article h2:hover .hash, article h2 .hash:focus-visible{ opacity:1; }
  article h2 .hash:hover{ color:var(--ink); }
  @media (hover:none){ article h2 .hash{ opacity:.4; } }
  .toast{ position:fixed; left:50%; bottom:1.25rem; z-index:30; transform:translate(-50%,.5rem); font-family:var(--mono); font-size:.75rem; padding:.45rem .8rem; border-radius:6px; background:var(--ink); color:var(--paper); opacity:0; pointer-events:none; transition:opacity .2s, transform .2s; }
  .toast.on{ opacity:1; transform:translate(-50%,0); }
  aside.box{ margin:2rem 0; padding:1.1rem 1.25rem 1.15rem 1.3rem; background:var(--panel-2); border:1px solid var(--ink); border-left:6px solid var(--link); border-radius:6px; }
  aside.box p, aside.box li{ font-size:1.0625rem; line-height:1.5; }
  aside.box > :last-child, aside.box > :last-child > li:last-child{ margin-bottom:0; }
  figure.fig{ margin:2rem 0; padding:0; }
  figure.fig svg{ display:block; width:100%; height:auto; max-width:100%; }
  figure.fig figcaption{ margin-top:.6rem; font-family:var(--mono); font-size:.75rem; line-height:1.5; color:var(--muted); }
  .next{ display:block; margin:3rem 0 0; padding:1.1rem 1.25rem 1.2rem; border:1px solid var(--ink); border-radius:8px; background:var(--panel); color:var(--ink); text-decoration:none; transition:transform .15s; }
  .next:hover{ transform:translateY(-2px); }
  .next .k{ display:block; margin:0 0 .35rem; font-family:var(--mono); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; color:var(--link); }
  .next .t{ display:block; margin:0 0 .35rem; font-family:var(--display); font-weight:800; font-size:1.5rem; line-height:1.15; letter-spacing:-.02em; }
  .next .t::after{ content:" \2192"; }
  .next:hover .t{ text-decoration:underline; text-underline-offset:.12em; }
  .next .d{ display:block; font-size:1rem; line-height:1.5; color:var(--muted); }
  .follow{ margin:1rem 0 0; font-family:var(--mono); font-size:.8125rem; line-height:1.7; color:var(--muted); }
  .follow a{ color:var(--ink); }
  .follow span{ display:block; }
  .follow span + span{ white-space:nowrap; }
  .ask{ margin-top:2rem; padding:1.25rem; border:1px solid var(--rule); border-radius:8px; background:var(--panel-2); }
  .ask h2{ margin:0 0 .25rem; font-size:1.125rem; }
  .ask p{ font-size:.9375rem; color:var(--muted); margin:0 0 .75rem; }
  .ask form{ display:flex; flex-wrap:wrap; gap:.5rem; }
  .ask input{ flex:1 1 11rem; min-width:0; font:inherit; font-size:1rem; padding:.55rem .7rem; border:1px solid var(--rule); border-radius:6px; background:var(--paper); color:var(--ink); }
  .ask input::placeholder{ color:var(--muted); opacity:1; }
  .ask form button{ font-family:var(--mono); font-size:.8125rem; padding:.55rem .9rem; border-radius:6px; border:1px solid var(--ink); background:var(--ink); color:var(--paper); cursor:pointer; min-height:40px; }
  .ask button:disabled{ opacity:.6; cursor:default; }
  .ask .chips{ display:flex; flex-wrap:wrap; gap:.4rem; margin:.75rem 0 0; }
  .ask .chip{ font-family:var(--serif); font-size:.875rem; line-height:1.3; text-align:left; padding:.4rem .7rem; min-height:36px; border:1px solid var(--rule); border-radius:14px; background:var(--paper); color:var(--ink); cursor:pointer; }
  .ask .chip:hover{ border-color:var(--ink); }
  .ask .answer{ margin-top:.9rem; font-size:1rem; line-height:1.55; }
  .ask .answer p{ font-size:1rem; line-height:1.55; color:var(--ink); margin:0 0 .75rem; }
  .ask .answer p:last-child{ margin-bottom:0; }
  .ask .answer:empty{ display:none; }
  .ask .cue{ display:inline-flex; align-items:center; gap:.3rem; font-family:var(--mono); font-size:.8125rem; color:var(--muted); }
  .ask .cue i{ display:block; width:.42rem; height:.42rem; border-radius:50%; background:var(--link); animation:askdot 1.1s ease-in-out infinite; }
  .ask .cue i:nth-child(2){ animation-delay:.18s; } .ask .cue i:nth-child(3){ animation-delay:.36s; }
  .ask .cue span{ margin-left:.4rem; }
  @keyframes askdot{ 0%,80%,100%{ opacity:.25; transform:none; } 40%{ opacity:1; transform:translateY(-3px); } }
  .apx{ margin-top:2rem; border-bottom:1px solid var(--rule); }
  details.ap{ border-top:1px solid var(--rule); font-family:var(--mono); font-size:.8125rem; line-height:1.6; color:var(--muted); }
  details.ap > summary{ display:flex; align-items:center; gap:.65rem; min-height:44px; padding:.45rem 0; cursor:pointer; list-style:none; color:var(--ink); }
  details.ap > summary::-webkit-details-marker{ display:none; }
  details.ap > summary::before{ content:"+"; flex:none; display:grid; place-items:center; width:1.35rem; height:1.35rem; border:1px solid var(--rule); border-radius:4px; color:var(--muted); line-height:1; }
  details.ap[open] > summary::before{ content:"\2212"; }
  details.ap > summary:hover::before{ border-color:var(--ink); color:var(--ink); }
  details.ap > summary:focus-visible{ outline:2px solid var(--link); outline-offset:2px; }
  details.ap .in{ padding:.25rem 0 1.25rem; }
  details.ap.src .in{ font-family:var(--serif); font-size:1rem; line-height:1.5; color:var(--ink); }
  details.ap.src li{ margin-bottom:.55rem; }
  details.ap ol{ list-style:none; padding:0; margin:0 0 .75rem; }
  details.ap ol li{ margin:0 0 .5rem; }
  details.ap b{ color:var(--ink); font-weight:600; }
  details.ap p{ margin:0 0 .5rem; }
  .colophon{ margin-top:2rem; padding-top:1.5rem; border-top:1px solid var(--rule); font-family:var(--mono); font-size:.8125rem; line-height:1.6; color:var(--muted); }
  .ask + .colophon{ margin-top:2.5rem; }
  .apx + .series{ border-top:0; margin-top:1.75rem; padding-top:0; }
  .cl{ margin-top:2.25rem; }
  .cl h2{ margin:.2rem 0 .75rem; }
  .cl h2 a{ color:var(--ink); text-decoration:none; }
  .cl h2 a:hover{ text-decoration:underline; text-underline-offset:.12em; }
  .cl-k{ margin:0; font-family:var(--mono); font-size:.75rem; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); }
  .cl-post{ list-style:none; padding:0; margin:0 0 .75rem; font-family:var(--mono); font-size:.8125rem; line-height:1.6; color:var(--muted); }
  .cl-post b{ color:var(--ink); font-weight:600; }
  .cl-none{ font-family:var(--mono); font-size:.8125rem; color:var(--muted); margin:0 0 .75rem; }
  .cl details.ap{ border-bottom:1px solid var(--rule); }
  .colophon p{ margin:0 0 .5rem; }
  .changes{ margin-top:2rem; padding-top:1.25rem; border-top:1px solid var(--rule); font-family:var(--mono); font-size:.8125rem; line-height:1.6; color:var(--muted); }
  .changes h2{ font-family:var(--mono); font-size:.7rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; margin:0 0 .5rem; }
  .changes ol{ list-style:none; padding:0; margin:0 0 .6rem; }
  .changes li{ margin:0 0 .5rem; }
  .changes b{ color:var(--ink); font-weight:600; }
  .series{ margin-top:2rem; padding-top:1.25rem; border-top:1px solid var(--rule); font-family:var(--mono); font-size:.8125rem; line-height:1.5; color:var(--muted); }
  .series > span{ display:block; letter-spacing:.09em; text-transform:uppercase; font-size:.7rem; margin-bottom:.5rem; }
  .series > span a{ display:inline; padding:0; border:0; color:inherit; text-decoration:none; }
  .series > span a:hover{ color:var(--ink); text-decoration:underline; }
  .series a{ display:grid; grid-template-columns:2.75rem 1fr auto; gap:.75rem; align-items:baseline; padding:.45rem 0; color:var(--ink); text-decoration:none; border-top:1px solid color-mix(in srgb,var(--rule) 55%,transparent); }
  .series a b{ font-weight:400; color:var(--muted); }
  .series a em{ font-style:normal; font-family:var(--display); font-weight:700; font-size:1rem; letter-spacing:-.01em; }
  .series a small{ font-size:.6875rem; color:var(--muted); white-space:nowrap; }
  .series a:hover em{ text-decoration:underline; text-underline-offset:.15em; }
  .series a.here b, .series a.here small{ color:var(--hot); }
  .series a.here b::before{ content:""; display:inline-block; width:.45rem; height:.45rem; margin:0 .4rem .08rem 0; border-radius:50%; background:var(--yellow); vertical-align:middle; }
  .series .aw{ margin:.75rem 0 0; padding-top:.7rem; font-size:.8125rem; }
  .series .aw a{ display:inline; padding:0; border:0; }
  .series .aw > a{ font-family:var(--display); font-weight:700; font-size:1rem; }
  .series .aw .d a{ text-decoration:underline; }
  .series .aw .m.here{ color:var(--hot); }
  .tl{ margin-top:1rem; }
  @media (max-width:480px){ body{ font-size:1.0625rem; } .lede{ font-size:1.2rem; } blockquote{ font-size:1.3rem; } .fut{ grid-template-columns:2.25rem 1fr; } .fut .sw{ width:1.5rem; height:1.5rem; } }
  @media print{ header.top nav, .ask, .series, .next, .aw.quiet, .follow, .hash, .toast, footer.bottom .mono-mark{ display:none !important; } header.top{ position:static; backdrop-filter:none; background:none; } body{ background:#fff; color:#000; font-size:11pt; padding:0; } main, footer.bottom{ padding-inline:0; } .wrap{ max-width:none; } a{ color:#000; } }

  header.top .brand{ align-items:center; }
  header.top .you{ margin-left:auto; font-family:var(--mono); font-size:.75rem; color:var(--muted); background:transparent; border:1px solid var(--rule); border-radius:6px; padding:.35rem .65rem; min-height:32px; cursor:pointer; }
  header.top .you b{ color:var(--ink); font-weight:500; }
  header.top .you:hover{ border-color:var(--ink); color:var(--ink); }
  @media (max-width:720px){
    html[data-page="home"] header.top .you{ display:none; }
    html[data-page="home"] header.top nav{ flex-basis:100%; }
  }
  html[data-palette="ultramarine"]:root{ --paper:#1F2BB8; --panel:#18229A; --panel-2:#2A38C8; --rule:rgba(242,240,232,.28); --ink:#F2F0E8; --muted:#B7BCE6; --link:#F2F0E8; --yellow:#FFD23F; --yellow-2:#FFE07A; --sage:#A6DCA9; --mauve:#DDAED8; --mid:#AFC3FA; --pink:#F5AEC3; --grid:#2A38C8; --sage-t:#A6DCA9; --mauve-t:#DDAED8; --mid-t:#AFC3FA; --pink-t:#F5AEC3; --tbc-bg:#2A38C8; --tbc:#FFD23F; --hot:#FFD23F; color-scheme:dark; }
  html[data-palette="moss"]:root{ --paper:#15291D; --panel:#112218; --panel-2:#1C3627; --rule:rgba(237,239,230,.24); --ink:#EDEFE6; --muted:#A9B5A9; --link:#EDEFE6; --yellow:#E4FF5A; --yellow-2:#EEFF8A; --sage:#A8D6A6; --mauve:#D3A9CF; --mid:#9FB6EC; --pink:#F0A6BB; --grid:#1C3627; --sage-t:#A8D6A6; --mauve-t:#D3A9CF; --mid-t:#9FB6EC; --pink-t:#F0A6BB; --tbc-bg:#1C3627; --tbc:#E4FF5A; --hot:#E4FF5A; color-scheme:dark; }
  html[data-palette="ink"]:root{ --paper:#101114; --panel:#15171B; --panel-2:#1F2227; --rule:rgba(233,231,224,.22); --ink:#E9E7E0; --muted:#A6A9B2; --link:#E9E7E0; --yellow:#F0C75E; --yellow-2:#F6D98A; --sage:#9FC29A; --mauve:#C39BBF; --mid:#8FA5D6; --pink:#E19AAC; --grid:#1F2227; --sage-t:#9FC29A; --mauve-t:#C39BBF; --mid-t:#8FA5D6; --pink-t:#E19AAC; --tbc-bg:#1F2227; --tbc:#F0C75E; --hot:#F0C75E; color-scheme:dark; }
  html[data-palette="ultramarine"] .hl, html[data-palette="moss"] .hl, html[data-palette="ink"] .hl{ background:linear-gradient(transparent 55%, color-mix(in srgb,var(--yellow) 34%,transparent) 55%, color-mix(in srgb,var(--yellow) 34%,transparent) 92%, transparent 92%); }
  html[data-page="home"] header.top{ margin-bottom:0; }
  html[data-page="home"] header.top .you{ max-width:360px; white-space:nowrap; overflow:hidden; align-items:baseline; gap:.35em; transition:border-color .25s; }
  @media (min-width:721px){ html[data-page="home"] header.top .you{ display:inline-flex; } }
  html[data-page="home"] header.top .you b{ overflow:hidden; text-overflow:ellipsis; min-width:0; }
  @media (min-width:1200px){ html[data-page="home"] header.top .you{ max-width:470px; } }
  html[data-page="home"] header.top .you.lit{ border-color:var(--ink); }
  header.top .say{ position:absolute; z-index:45; left:0; top:0; max-width:min(340px, calc(100vw - 24px)); background:var(--ink); color:var(--paper); font-family:var(--mono); font-size:.78rem; line-height:1.4; padding:8px 11px; border-radius:9px; opacity:0; transform:translateY(5px) scale(.94); transform-origin:var(--ax,20px) 0; transition:opacity .16s, transform .3s cubic-bezier(.2,.7,.2,1); pointer-events:none; box-shadow:0 10px 30px rgba(0,0,0,.18); }
  header.top .say:empty{ display:none; }
  header.top .say.side{ transform:translateX(-6px) scale(.94); transform-origin:0 var(--ay,50%); }
  header.top .say.on{ opacity:1; transform:none; pointer-events:auto; }
  header.top .say::before{ content:""; position:absolute; width:9px; height:9px; background:var(--ink); transform:rotate(45deg); }
  header.top .say.side::before{ left:-4px; top:calc(var(--ay,50%) - 4.5px); }
  header.top .say.below::before{ top:-4px; left:calc(var(--ax,20px) - 4.5px); }
  header.top .say b{ font-weight:600; }
  header.top .say .sb{ margin-left:8px; font:inherit; font-weight:600; color:var(--paper); background:transparent; border:1px solid color-mix(in srgb,var(--paper) 55%,transparent); border-radius:5px; padding:2px 7px; cursor:pointer; }
  header.top .say .sb:focus-visible{ outline:2px solid var(--paper); outline-offset:2px; }

  main.home{ --pad:clamp(16px,5vw,80px); --spad:clamp(16px,6vw,96px); --hdr:64px; --ease:cubic-bezier(.2,.7,.2,1); position:relative; z-index:1; max-width:none; margin:0; padding-inline:0; }
  main.home .hw{ max-width:calc(1200px + 2*var(--pad)); margin:0 auto; padding-inline:var(--pad); }
  @media (max-width:560px){ main.home{ --hdr:56px; } }
  main.home [hidden]{ display:none !important; }
  main.home h2, main.home h3, main.home h4{ margin:0; text-wrap:balance; }
  main.home p{ margin:0 0 1em; }
  main.home ul, main.home ol{ margin:0; padding:0; list-style:none; }
  main.home li{ margin:0; }
  main.home .sr{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
  main.home .k-sage{ --c:var(--sage); --ct:var(--sage-t); } main.home .k-mid{ --c:var(--mid); --ct:var(--mid-t); } main.home .k-mauve{ --c:var(--mauve); --ct:var(--mauve-t); } main.home .k-pink{ --c:var(--pink); --ct:var(--pink-t); }
  main.home .b{ font-family:var(--mono); font-size:.75rem; min-height:36px; padding:7px 12px; border:1px solid var(--rule); border-radius:6px; background:transparent; color:var(--ink); cursor:pointer; line-height:1.2; text-decoration:none; display:inline-flex; align-items:center; transition:border-color .2s, transform .2s var(--ease); }
  main.home .b:hover{ border-color:var(--ink); }
  main.home .b.solid{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
  main.home h2.sh{ font-family:var(--display); font-weight:850; font-size:clamp(28px,3.2vw,42px); letter-spacing:-.03em; line-height:1.04; margin:0 0 12px; }
  main.home .ld{ max-width:44rem; margin:0 0 22px; font-size:inherit; line-height:1.5; }
  main.home .foot{ font-family:var(--mono); font-size:.8125rem; color:var(--muted); margin:20px 0 0; line-height:1.6; }
  main.home .foot a{ color:var(--ink); }
  main.home .sec{ margin-top:clamp(52px,7vw,92px); }
  html[data-page="home"]{ scroll-padding-top:86px; }
  @media (max-width:720px){ html[data-page="home"]{ scroll-padding-top:66px; } }
  main.home .hx{ display:grid; grid-template-columns:minmax(0,1fr); gap:22px; padding-top:clamp(20px,3.4vw,40px); }
  @media (min-width:1000px){
    main.home .hx{ grid-template-columns:minmax(0,5fr) minmax(0,7fr); grid-template-rows:auto 1fr; column-gap:clamp(28px,3.4vw,48px); row-gap:26px; align-items:start; }
    main.home .hx > .intro{ grid-column:1; grid-row:1; } main.home .hx > .essays{ grid-column:1; grid-row:2; } main.home .hx > .ins{ grid-column:2; grid-row:1 / span 2; }
  }
  main.home #h1{ font-family:var(--display); font-weight:900; letter-spacing:-.035em; line-height:.98; font-size:clamp(34px,3.6vw,52px); margin:0 0 16px; max-width:none; }
  main.home #sub{ font-style:italic; font-size:1.25rem; line-height:1.42; color:var(--ink); margin:0; max-width:32rem; padding:2px 0; border-radius:4px; text-wrap:pretty; transition:background-color 1.2s; }
  main.home #sub.flash{ background:color-mix(in srgb,var(--ink) 12%,transparent); transition:none; }
  main.home #sub small.wink{ display:inline-block; font-family:var(--mono); font-style:normal; font-size:.6875rem; letter-spacing:.04em; color:var(--muted); vertical-align:.15em; margin-left:.35em; }
  @media (max-width:720px){ main.home #sub{ font-size:1.125rem; } }
  main.home .back{ display:inline-flex; align-items:center; gap:.5rem; margin:16px 0 0; background:var(--ink); color:var(--paper); font-family:var(--mono); font-size:.8125rem; line-height:1.35; text-decoration:none; border-radius:999px; padding:.5rem .9rem; min-height:40px; }
  main.home .back i{ width:9px; height:9px; border-radius:50%; background:var(--paper); flex:none; }
  main.home .back:hover{ text-decoration:underline; }
  main.home .essays h2{ font-family:var(--display); font-weight:800; font-size:1.0625rem; letter-spacing:-.01em; margin:0 0 8px; }
  main.home .essays ol{ border-top:1px solid var(--rule); }
  main.home .essays li{ border-bottom:1px solid var(--rule); }
  main.home .essays li a{ display:grid; grid-template-columns:1.5rem minmax(0,1fr) auto; align-items:baseline; gap:.5rem; padding:.5rem 0; text-decoration:none; color:var(--ink); }
  main.home .essays li a:hover .et{ text-decoration:underline; text-underline-offset:.18em; }
  main.home .essays .en, main.home .essays .em{ font-family:var(--mono); font-size:.75rem; color:var(--muted); }
  main.home .essays .et{ font-family:var(--display); font-weight:700; font-size:1.0625rem; line-height:1.25; }
  main.home .essays .tp{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.07em; text-transform:uppercase; color:var(--muted); font-weight:400; margin-top:.1rem; }
  main.home .essays .st8{ display:none; font-family:var(--mono); font-size:.625rem; letter-spacing:.08em; text-transform:uppercase; background:var(--ink); color:var(--paper); border-radius:999px; padding:.1rem .5rem; margin-left:.45rem; vertical-align:.15rem; font-weight:500; }
  main.home .essays a.is-next .st8{ display:inline-block; }
  main.home .aft{ font-family:var(--mono); font-size:.8125rem; margin:.7rem 0 0; color:var(--muted); }
  main.home .aft a{ color:var(--ink); display:inline-block; padding:.6rem 0; margin:-.6rem 0; }
  main.home .essays .beta-note{ font-size:.75rem; margin:.8rem 0 0; line-height:1.55; }
  main.home .ins{ background:var(--panel); border:1px solid var(--rule); border-radius:18px; padding:clamp(16px,2.2vw,26px) clamp(14px,2.2vw,26px) 16px; position:relative; scroll-margin-top:64px; min-width:0; }
  main.home .wk{ display:flex; align-items:baseline; gap:.3em; flex-wrap:wrap; font-family:var(--display); font-weight:850; font-size:clamp(30px,3vw,44px); letter-spacing:-.03em; line-height:1.15; }
  main.home .wk label{ white-space:nowrap; }
  main.home .combo{ position:relative; flex:1 1 8em; min-width:0; }
  main.home #job{ width:100%; font:inherit; letter-spacing:inherit; color:var(--ink); background:transparent; border:0; border-bottom:3px solid var(--ink); padding:0 0 4px; border-radius:0; outline:none; -webkit-appearance:none; appearance:none; }
  main.home #job:focus-visible{ outline:2px solid var(--ink); outline-offset:6px; border-radius:2px; }
  main.home .ghost{ position:absolute; left:0; top:0; pointer-events:none; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; opacity:.8; }
  main.home .ghost.live::after{ content:""; display:inline-block; width:3px; height:.85em; background:var(--ink); margin-left:3px; vertical-align:-.06em; animation:hblink 1s steps(1) infinite; }
  @keyframes hblink{ 50%{ opacity:0; } }
  main.home #sugg{ position:absolute; left:0; right:0; top:calc(100% + 8px); z-index:20; margin:0; padding:6px; background:var(--paper); border:1px solid var(--rule); border-radius:12px; box-shadow:0 14px 40px rgba(0,0,0,.2); font-family:var(--serif); font-weight:400; font-size:1rem; letter-spacing:0; line-height:1.3; min-width:min(100%,300px); }
  main.home #sugg li{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:9px 12px; border-radius:8px; cursor:pointer; min-height:42px; }
  main.home #sugg li[aria-selected="true"]{ background:var(--panel-2); box-shadow:inset 3px 0 0 var(--ink); }
  main.home #sugg li.hd{ cursor:default; min-height:0; padding:4px 12px 2px; font-family:var(--mono); font-size:.6875rem; color:var(--muted); }
  main.home #sugg li.none{ color:var(--muted); font-style:italic; border-top:1px solid var(--rule); border-radius:0 0 8px 8px; margin-top:4px; }
  main.home #sugg li.sp{ font-style:italic; }
  main.home .o-m{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); white-space:nowrap; }
  @media (max-width:520px){ main.home .o-m{ display:none; } }
  main.home .note{ margin:14px 0 0; padding:12px 14px; border:2px solid var(--ink); border-radius:12px; background:var(--paper); font-size:1.0625rem; line-height:1.45; overflow-wrap:anywhere; min-width:0; }
  main.home .note p{ margin:0 0 10px; }
  main.home .note .acts{ display:flex; flex-wrap:wrap; gap:8px; }
  main.home .try{ display:flex; flex-wrap:wrap; gap:6px 8px; align-items:center; margin:14px 0 2px; font-family:var(--mono); font-size:.75rem; color:var(--muted); }
  main.home .tchip{ font-family:var(--mono); font-size:.75rem; border:1px solid var(--rule); background:var(--paper); color:var(--ink); border-radius:999px; padding:6px 12px; min-height:34px; cursor:pointer; transition:border-color .2s, transform .2s var(--ease); }
  main.home .tchip:hover{ border-color:var(--ink); transform:translateY(-2px); }
  @media (max-width:560px){ main.home .tchip.x3{ display:none; } }
  main.home .fld{ position:relative; margin-top:10px; }
  main.home #field{ display:block; width:100%; height:320px; touch-action:manipulation; cursor:pointer; }
  @media (max-width:720px){ main.home #field{ height:280px; } }
  main.home .bubble{ position:absolute; z-index:5; max-width:260px; background:var(--ink); color:var(--paper); font-family:var(--mono); font-size:.75rem; line-height:1.35; padding:7px 10px; border-radius:8px; pointer-events:none; opacity:0; transform:translateY(6px) scale(.94); transform-origin:var(--ax,16px) 100%; transition:opacity .16s, transform .28s var(--ease); left:0; top:0; white-space:normal; }
  main.home .bubble.on{ opacity:1; transform:none; }
  main.home .bubble::after{ content:""; position:absolute; left:var(--ax,16px); bottom:-5px; width:10px; height:10px; background:var(--ink); transform:rotate(45deg); }
  main.home .bubble.below::after{ bottom:auto; top:-5px; }
  main.home .legend{ display:flex; flex-wrap:wrap; gap:4px 16px; font-family:var(--mono); font-size:.75rem; color:var(--muted); margin-top:8px; align-items:center; }
  main.home .legend i{ display:inline-block; vertical-align:-1px; margin-right:5px; }
  main.home .lg-c{ width:9px; height:9px; border:1.5px solid var(--ink); border-radius:50%; }
  main.home .lg-f{ width:9px; height:9px; background:var(--ink); border-radius:50%; }
  main.home .lg-n{ width:2px; height:11px; background:var(--ink); }
  main.home .more{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
  main.home #browse{ margin-top:12px; border-top:1px solid var(--rule); padding-top:12px; }
  main.home #browse h3{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); font-weight:500; margin:10px 0 6px; }
  main.home #browse .rows{ display:flex; flex-wrap:wrap; gap:6px; }
  main.home #browse .rows button{ font-family:var(--serif); font-size:.9375rem; border:1px solid var(--rule); background:var(--paper); color:var(--ink); border-radius:8px; padding:6px 10px; min-height:36px; cursor:pointer; }
  main.home #browse .rows button:hover{ border-color:var(--ink); }
  main.home #place{ margin-top:12px; border-top:1px solid var(--rule); padding-top:14px; }
  main.home #place fieldset{ border:0; padding:0; margin:0 0 12px; min-width:0; }
  main.home #place legend{ font-size:1rem; margin-bottom:6px; padding:0; }
  main.home .opts{ display:flex; flex-wrap:wrap; gap:6px; }
  main.home .opts label{ position:relative; }
  main.home .opts input{ position:absolute; opacity:0; inset:0; margin:0; cursor:pointer; }
  main.home .opts span{ display:inline-flex; align-items:center; min-height:36px; font-family:var(--mono); font-size:.75rem; border:1px solid var(--rule); border-radius:999px; padding:6px 12px; background:var(--paper); }
  main.home .opts input:checked + span{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
  main.home .opts input:focus-visible + span{ outline:2px solid var(--ink); outline-offset:2px; }
  main.home #reading{ margin-top:28px; }
  main.home .rd-head{ display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:10px 20px; margin-bottom:16px; }
  main.home .rd-from{ font-family:var(--mono); font-size:.8125rem; color:var(--muted); margin:0 0 6px; overflow-wrap:anywhere; }
  main.home p.src a[data-pin]{ display:inline-flex; align-items:center; min-height:40px; }
  main.home .rd-title{ font-family:var(--display); font-weight:900; font-size:clamp(32px,3.8vw,54px); letter-spacing:-.035em; line-height:1; margin:0; }
  main.home .rd-title:focus{ outline:none; }
  main.home .rd-grid{ display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:16px; }
  main.home .rc{ grid-column:span 6; background:var(--panel); border:1px solid var(--rule); border-radius:16px; padding:20px 22px 22px; opacity:0; transform:translateY(16px); min-width:0; }
  main.home #reading.on .rc{ opacity:1; transform:none; transition:opacity .45s var(--ease), transform .55s var(--ease); transition-delay:calc(var(--i) * 110ms); }
  main.home .c-when{ grid-column:span 7; } main.home .c-q{ grid-column:span 5; } main.home .c-road{ grid-column:span 6; } main.home .c-do{ grid-column:span 6; } main.home .c-next{ grid-column:1 / -1; }
  @media (max-width:900px){ main.home .rc{ grid-column:1 / -1 !important; } }
  main.home .rc h3{ font-family:var(--mono); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); font-weight:500; margin:0 0 12px; }
  main.home .rc p{ margin:0 0 12px; }
  main.home .rc .band{ font-family:var(--display); font-weight:900; font-size:clamp(38px,4.8vw,66px); letter-spacing:-.04em; line-height:.95; margin:0 0 14px; }
  main.home .yrs{ display:grid; grid-template-columns:1fr 1fr; gap:10px 22px; margin:0 0 4px; }
  main.home .yrs div{ min-width:0; }
  main.home .yrs dt{ font-family:var(--mono); font-size:.75rem; color:var(--muted); }
  main.home .yrs dd{ margin:2px 0 0; font-family:var(--display); font-weight:800; font-size:clamp(22px,2.2vw,30px); letter-spacing:-.02em; line-height:1.1; font-variant-numeric:tabular-nums; }
  main.home .dtag{ display:inline-block; font-family:var(--mono); font-size:.625rem; letter-spacing:.06em; text-transform:uppercase; border:1px solid var(--rule); border-radius:4px; padding:1px 5px; margin-left:6px; color:var(--muted); vertical-align:4px; font-weight:500; font-style:normal; }
  main.home .mid-est{ display:block; font-family:var(--mono); font-size:.6875rem; color:var(--muted); margin-top:3px; font-weight:400; letter-spacing:0; }
  @media (max-width:520px){ main.home .yrs{ grid-template-columns:1fr; } }
  main.home .bar{ display:block; width:100%; height:auto; margin:8px 0 14px; }
  main.home .src{ font-family:var(--mono); font-size:.75rem; color:var(--muted); }
  main.home .ks{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:14px; padding-top:14px; border-top:1px solid var(--rule); }
  main.home .ks b{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); font-weight:500; margin-bottom:4px; }
  main.home .ks p{ margin:0; font-size:1.0625rem; line-height:1.45; }
  @media (max-width:520px){ main.home .ks{ grid-template-columns:1fr; } }
  main.home .qq{ padding:12px 0; border-bottom:1px solid var(--rule); }
  main.home .qq:first-of-type{ padding-top:0; }
  main.home .qq p{ margin:0 0 10px; font-size:1.0625rem; line-height:1.45; }
  main.home .yn{ display:inline-flex; border:1px solid var(--rule); border-radius:999px; padding:3px; gap:3px; background:var(--paper); }
  main.home .yn button{ border:0; background:transparent; border-radius:999px; padding:6px 16px; min-height:36px; min-width:60px; font-family:var(--mono); font-size:.75rem; cursor:pointer; color:var(--muted); transition:background-color .25s, color .25s; }
  main.home .yn button[aria-pressed="true"]{ background:var(--ink); color:var(--paper); }
  main.home .rc .qout{ font-family:var(--display); font-weight:700; font-size:1.25rem; line-height:1.3; letter-spacing:-.01em; margin:14px 0 0; }
  main.home .rc .qset{ font-family:var(--mono); font-size:.75rem; color:var(--muted); margin:10px 0 0; }
  main.home .c-road{ border-left:6px solid var(--c); }
  main.home .mini{ display:block; width:100%; max-width:300px; height:auto; margin:-4px 0 6px; }
  main.home .rc .rname{ font-family:var(--display); font-weight:800; font-size:1.75rem; letter-spacing:-.02em; line-height:1.1; margin:0 0 6px; }
  main.home .rname em{ font-style:normal; font-family:var(--mono); font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; color:var(--ct); border:1px solid var(--c); border-radius:4px; padding:2px 6px; margin-left:8px; vertical-align:4px; font-weight:600; }
  main.home .watch{ background:var(--paper); border:1px solid var(--rule); border-radius:12px; padding:12px 14px; margin-top:6px; }
  main.home .watch b{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); font-weight:500; margin-bottom:4px; }
  main.home .watch p{ margin:0 0 6px; font-size:1.0625rem; line-height:1.45; }
  main.home .state{ display:inline-flex; gap:6px; align-items:baseline; font-family:var(--mono); font-size:.75rem; line-height:1.5; }
  main.home .state .stw{ font-weight:600; color:var(--ink); }
  main.home .do h4{ font-family:var(--display); font-weight:800; font-size:1.75rem; letter-spacing:-.02em; line-height:1.1; margin:0 0 8px; }
  main.home .steps{ counter-reset:s; margin:12px 0 14px; }
  main.home .steps li{ counter-increment:s; position:relative; padding:10px 0 10px 44px; border-top:1px solid var(--rule); line-height:1.45; }
  main.home .steps li::before{ content:counter(s); position:absolute; left:0; top:8px; width:30px; height:30px; border-radius:50%; border:1.5px solid var(--ink); font-family:var(--mono); font-size:.8125rem; display:flex; align-items:center; justify-content:center; }
  main.home .quote{ font-style:italic; }
  main.home .rc .early{ font-size:1rem; color:var(--muted); border-left:3px solid var(--rule); padding-left:12px; }
  main.home .nxg{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  @media (max-width:700px){ main.home .nxg{ grid-template-columns:1fr; } }
  main.home a.nx{ display:block; text-decoration:none; color:var(--ink); border:1px solid var(--rule); border-radius:12px; padding:14px 16px; background:var(--paper); transition:transform .25s var(--ease), border-color .25s; }
  main.home a.nx:hover{ transform:translateY(-3px); border-color:var(--ink); }
  main.home .nx small{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
  main.home .nx strong{ display:block; font-family:var(--display); font-weight:800; font-size:1.25rem; letter-spacing:-.01em; margin:4px 0; }
  main.home .nx span{ display:block; font-size:1rem; line-height:1.4; color:var(--muted); }
  main.home .g{ display:inline-block; width:.8rem; height:.8rem; border-radius:50%; border:2px solid var(--c,var(--ink)); flex:none; vertical-align:-.08rem; background:var(--paper); }
  main.home .g.seen{ background:var(--c,var(--ink)); }
  main.home .g.part, main.home .g.talk, main.home .g.tests{ background:linear-gradient(90deg,var(--c,var(--ink)) 50%,var(--paper) 50%); }
  main.home .lg{ white-space:nowrap; display:inline-flex; align-items:center; gap:.3rem; font-weight:600; }
  main.home .cmp{ display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
  @media (min-width:1000px){ main.home .cmp{ grid-template-columns:minmax(0,7fr) minmax(0,5fr); align-items:start; } }
  main.home .cbox{ background:var(--panel); border:1px solid var(--rule); border-radius:18px; padding:clamp(14px,2vw,22px); min-width:0; }
  main.home .stage{ position:relative; display:grid; grid-template-columns:minmax(0,1fr) 13.5rem; min-height:370px; }
  main.home #roads{ position:absolute; inset:0; width:100%; height:100%; display:block; touch-action:manipulation; }
  main.home .tabs{ grid-column:2; position:relative; z-index:1; display:flex; flex-direction:column; justify-content:space-between; gap:6px; padding:16px 0 26px; }
  main.home .rd{ all:unset; box-sizing:border-box; cursor:pointer; display:block; padding:.5rem .65rem .55rem .6rem; border-radius:10px; border:1.5px solid transparent; background:color-mix(in srgb,var(--panel) 88%,transparent); color:var(--ink); transition:background-color .2s, border-color .2s, transform .25s var(--ease); }
  main.home .rd:hover{ background:var(--paper); transform:translateX(-2px); }
  main.home .rd:focus-visible{ outline:2px solid var(--ink); outline-offset:2px; }
  main.home .rd[aria-selected="true"]{ background:var(--paper); border-color:var(--c); box-shadow:0 10px 24px -16px rgba(0,0,0,.4); }
  main.home .rd .rh{ display:flex; align-items:center; flex-wrap:wrap; gap:.1rem .5rem; }
  main.home .rd .rn{ display:inline-flex; align-items:center; gap:.5rem; font-family:var(--display); font-weight:800; font-size:1.0625rem; line-height:1.2; letter-spacing:-.01em; }
  main.home .rdot{ display:inline-block; width:13px; height:13px; border-radius:50%; background:var(--c); flex:none; }
  main.home .rd .rw{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.07em; text-transform:uppercase; color:var(--ct); font-weight:600; }
  main.home .rd .rl{ display:block; font-size:.9375rem; line-height:1.3; margin-top:.15rem; padding-left:calc(13px + .5rem); }
  main.home .rd .bd{ display:flex; flex-wrap:wrap; gap:4px; margin:.3rem 0 0 calc(13px + .5rem); }
  main.home .pill{ font-family:var(--mono); font-size:.625rem; letter-spacing:.07em; text-transform:uppercase; border-radius:999px; padding:.08rem .45rem; font-weight:600; line-height:1.5; }
  main.home .pill.you{ background:var(--ink); color:var(--paper); }
  main.home .pill.new{ background:var(--ct); color:var(--paper); }
  @media (max-width:639px){
    main.home .stage{ grid-template-columns:minmax(0,1fr); min-height:0; }
    main.home #roads{ position:relative; inset:auto; height:220px; }
    main.home .tabs{ grid-column:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px; padding:6px 0 0; }
    main.home .rd{ border-color:var(--rule); padding:.5rem .55rem .55rem; }
    main.home .rd:hover{ transform:none; }
    main.home .rd .rh{ flex-direction:column; align-items:flex-start; }
    main.home .rd .rl{ padding-left:0; font-size:.875rem; }
    main.home .rd .bd{ margin-left:0; }
  }
  main.home .tip{ position:absolute; z-index:3; width:min(17.5rem, calc(100% - 12px)); background:var(--paper); color:var(--ink); border:1.5px solid var(--c); border-radius:10px; padding:.6rem .75rem .65rem; box-shadow:0 16px 36px -16px rgba(0,0,0,.45); font-size:.9375rem; line-height:1.4; pointer-events:none; }
  main.home .tip .sst{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.07em; text-transform:uppercase; display:flex; align-items:center; gap:.4rem; margin-bottom:.25rem; font-weight:600; }
  main.home .tip b{ font-family:var(--display); font-weight:750; display:block; margin-bottom:.15rem; }
  main.home .tip .w{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); margin-top:.3rem; display:block; }
  main.home .ticker{ display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.4rem .7rem; margin:.9rem 0 0; padding:.6rem .7rem; border-radius:10px; background:var(--paper); border:1px solid var(--rule); }
  main.home .tk-l{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); display:flex; align-items:center; gap:.4rem; white-space:nowrap; }
  main.home .tk-l::before{ content:""; width:8px; height:8px; border-radius:50%; background:var(--ink); animation:hpulse 1.6s ease-in-out infinite; }
  @keyframes hpulse{ 50%{ opacity:.25; } }
  main.home .tk-t{ all:unset; cursor:pointer; font-size:.9375rem; line-height:1.35; min-height:2.7em; display:block; color:var(--ink); transition:opacity .3s; }
  main.home .tk-t:focus-visible{ outline:2px solid var(--ink); outline-offset:2px; border-radius:4px; }
  main.home .tk-t .dt{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); white-space:nowrap; }
  main.home .tk-t .rdot{ width:10px; height:10px; margin-right:.4rem; vertical-align:.05rem; }
  main.home .tk-t.fade{ opacity:0; }
  main.home .tk-p{ all:unset; cursor:pointer; font-family:var(--mono); font-size:.6875rem; color:var(--muted); padding:.35rem .45rem; border-radius:6px; border:1px solid var(--rule); min-width:2.6rem; text-align:center; min-height:24px; line-height:24px; }
  main.home .tk-p:focus-visible{ outline:2px solid var(--ink); outline-offset:2px; }
  @media (max-width:560px){ main.home .ticker{ grid-template-columns:minmax(0,1fr) auto; } main.home .tk-l{ grid-column:1; } main.home .tk-p{ grid-column:2; grid-row:1; } main.home .tk-t{ grid-column:1 / -1; } }
  main.home .nextw{ display:flex; gap:.4rem .8rem; flex-wrap:wrap; align-items:baseline; margin:.7rem 0 0; padding:.65rem .75rem; border:1.5px dashed var(--ink); border-radius:10px; font-size:1rem; line-height:1.4; }
  main.home .nextw b{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
  main.home .panel h3{ font-family:var(--display); font-size:1.5rem; font-weight:850; letter-spacing:-.02em; margin:0; }
  main.home .pn-h{ display:flex; align-items:center; flex-wrap:wrap; gap:.3rem .6rem; }
  main.home .pn-h .rdot{ width:14px; height:14px; }
  main.home .pn-h .rw{ font-family:var(--mono); font-size:.75rem; letter-spacing:.07em; text-transform:uppercase; color:var(--ct); font-weight:600; border:1.5px solid var(--c); border-radius:999px; padding:.05rem .5rem; }
  main.home .pn-line{ font-size:1.125rem; line-height:1.4; margin:.4rem 0 .9rem; }
  main.home .tue{ margin:0 0 1rem; padding:.2rem 0 .2rem 1rem; border-left:4px solid var(--c); }
  main.home .tue small{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
  main.home .tue p{ font-style:italic; font-size:1.0625rem; line-height:1.45; margin:.2rem 0 0; }
  main.home .pn-cols{ display:grid; grid-template-columns:minmax(0,1fr); gap:.9rem; }
  main.home .pn-cols h4{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); font-weight:500; margin:0 0 .2rem; }
  main.home .pn-cols p{ font-size:1rem; line-height:1.45; margin:0; }
  main.home .pn-signs{ margin:1rem 0 0; display:grid; gap:.35rem; }
  main.home .pn-signs li{ display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:.55rem; align-items:baseline; font-size:.9375rem; line-height:1.35; }
  main.home .pn-signs .sw2{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); white-space:nowrap; }
  main.home .pn-links{ font-family:var(--mono); font-size:.8125rem; margin:.5rem 0 0; display:flex; flex-wrap:wrap; gap:0 1.2rem; }
  main.home .pn-links a{ color:var(--ink); display:inline-flex; align-items:center; min-height:40px; }
  main.home .since{ border:2px solid var(--ink); border-radius:14px; padding:1rem 1.1rem; margin:0 0 30px; background:var(--panel); }
  main.home .since h3{ font-family:var(--display); font-size:1.1875rem; font-weight:800; margin:0 0 .5rem; }
  main.home .since ul{ display:grid; gap:.4rem; }
  main.home .since li{ display:grid; grid-template-columns:auto auto minmax(0,1fr); gap:.6rem; align-items:baseline; font-size:.9375rem; line-height:1.4; }
  main.home .since li .rdot{ width:10px; height:10px; }
  main.home .since li .dt{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); white-space:nowrap; }
  main.home .tl{ padding:clamp(40px,6vw,72px) 0 0; border-top:1px solid var(--rule); }
  main.home #tells{ scroll-margin-top:calc(-1 * clamp(40px,6vw,72px)); }
  main.home .tl.sg{ border-top:0; padding:44px 0 clamp(56px,8vw,96px); }
  main.home .tl .kick{ font-family:var(--mono); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); margin:0 0 .5rem; }
  main.home .sg-head h2{ font-family:var(--display); font-weight:850; font-size:clamp(22px,2.3vw,30px); letter-spacing:-.025em; margin:0 0 8px; }
  main.home .sg-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; align-items:start; }
  @media (max-width:1099px){ main.home .sg-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
  @media (max-width:640px){ main.home .sg-grid{ grid-template-columns:minmax(0,1fr); gap:10px; } }
  main.home .sgd{ border-radius:12px; transition:box-shadow .3s; }
  main.home .sgd.flash{ box-shadow:0 0 0 3px var(--c); }
  main.home .sgd summary{ list-style:none; cursor:pointer; border-top:5px solid var(--c); padding:.6rem 0 .4rem; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.2rem .6rem; align-items:center; }
  main.home .sgd summary::-webkit-details-marker{ display:none; }
  main.home .sgd summary .nm{ font-family:var(--display); font-weight:850; font-size:1.1875rem; letter-spacing:-.015em; line-height:1.2; }
  main.home .sgd summary .w{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.07em; text-transform:uppercase; color:var(--ct); font-weight:600; }
  main.home .sgd summary .dots{ display:flex; gap:.35rem; }
  main.home .sgd summary .dots .g{ width:1.2rem; height:1.2rem; border-width:3px; }
  main.home .sgd summary .chev{ grid-column:1 / -1; font-family:var(--mono); font-size:.6875rem; color:var(--muted); }
  @media (min-width:641px){ main.home .sgd summary .chev{ display:none; } main.home .sgd summary{ cursor:default; } }
  main.home .sgd[open] summary .chev::after{ content:attr(data-close); }
  main.home .sgd .cards{ display:flex; flex-direction:column; gap:10px; margin-top:.4rem; }
  main.home .sign{ background:var(--panel); border:1px solid var(--rule); border-radius:10px; padding:.8rem .9rem .85rem; position:relative; }
  main.home .sign.seen{ background:color-mix(in srgb,var(--c) 16%,var(--panel)); border-color:var(--c); }
  main.home .sign.mine{ box-shadow:0 0 0 2px var(--ink); }
  main.home .sign .sst{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.07em; text-transform:uppercase; display:flex; align-items:center; gap:.4rem; font-weight:600; margin:0; }
  main.home .sign h3{ font-family:var(--display); font-size:1rem; font-weight:750; margin:.4rem 0 .2rem; line-height:1.25; }
  main.home .sign .what{ font-size:.9375rem; line-height:1.4; margin:0 0 .55rem; }
  main.home .sign .now{ font-size:.9375rem; line-height:1.4; margin:0; padding-top:.5rem; border-top:1px dashed var(--rule); }
  main.home .sign .now b{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.06em; text-transform:uppercase; font-weight:500; color:var(--muted); display:block; }
  main.home .sign .src2{ font-family:var(--mono); font-size:.75rem; margin:.45rem 0 0; }
  main.home .sign .src2 a{ color:var(--ink); display:inline-block; padding:.65rem 0; margin:-.65rem 0; }
  main.home .sign .flags{ position:absolute; right:.6rem; top:.6rem; display:flex; gap:4px; }
  main.home .sign .nwl{ margin:.5rem 0 0; font-size:.875rem; line-height:1.4; border-left:3px solid var(--c); padding-left:.55rem; }
  main.home .sign .nwl i{ font-style:normal; font-family:var(--mono); font-size:.6875rem; color:var(--muted); display:block; }
  main.home .ysec{ background:var(--panel); border-top:1px solid var(--rule); padding:calc(var(--hdr) + clamp(28px,6vh,72px)) 0 clamp(48px,8vh,96px); margin-top:0; }
  main.home .you-in{ display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(28px,4vw,64px); align-items:start; }
  @media (min-width:1000px){ main.home .you-in{ grid-template-columns:minmax(0,6fr) minmax(0,5fr); } }
  main.home .ykick{ font-family:var(--mono); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); margin:0 0 .6rem; }
  main.home .yt{ font-family:var(--display); font-weight:900; font-size:clamp(44px,7vw,104px); letter-spacing:-.045em; line-height:.92; margin:0 0 clamp(18px,3vh,30px); }
  main.home .ymove{ background:var(--paper); border:2px solid var(--ink); border-radius:18px; padding:clamp(16px,2.4vw,28px); }
  main.home .ymove .yh{ display:flex; align-items:center; gap:.6rem; margin:0 0 .55rem; min-height:30px; }
  main.home .ylab{ font-family:var(--mono); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); }
  main.home .ybul{ width:18px; height:18px; border-radius:50%; border:2px solid var(--ink); flex:none; }
  main.home .ymove h3{ font-family:var(--display); font-weight:850; font-size:clamp(24px,2.4vw,34px); letter-spacing:-.025em; line-height:1.08; margin:0 0 .7rem; }
  main.home .ymove p{ margin:0 0 12px; font-size:1.0625rem; line-height:1.5; }
  main.home .ymove .early{ font-size:1rem; color:var(--muted); border-left:3px solid var(--rule); padding-left:12px; }
  main.home .yask{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; margin:16px 0 0; font-family:var(--mono); font-size:.8125rem; color:var(--muted); }
  main.home .cobus{ margin:0; padding-top:clamp(0px,1vw,12px); }
  main.home .cobus blockquote{ margin:0; padding:0; border:0; font-family:var(--serif); font-style:normal; font-size:clamp(22px,2.15vw,31px); line-height:1.38; color:var(--muted); letter-spacing:-.005em; }
  main.home .cobus blockquote p{ margin:0; }
  main.home .cobus mark{ color:inherit; background:linear-gradient(color-mix(in srgb,var(--hot,#BC2A10) 20%,transparent),color-mix(in srgb,var(--hot,#BC2A10) 20%,transparent)) 0 100%/0% 42% no-repeat; transition:color .6s, background-size .9s var(--ease); padding:0 .06em; border-radius:2px; }
  main.home .cobus.lit mark{ color:var(--ink); background-size:100% 42%; }
  main.home .cobus.lit mark:nth-of-type(2){ transition-delay:.5s; }
  main.home .cobus.lit mark:nth-of-type(3){ transition-delay:1s; }
  html:not(.js) main.home .cobus mark{ color:var(--ink); background-size:100% 42%; }
  @media (prefers-reduced-motion:reduce){ main.home .cobus mark{ color:var(--ink); background-size:100% 42%; } }
  main.home .cobus figcaption{ display:flex; align-items:center; gap:12px; margin-top:20px; font-family:var(--mono); font-size:.8125rem; color:var(--muted); line-height:1.45; }
  main.home .cobus figcaption img{ width:52px; height:52px; border-radius:50%; object-fit:cover; flex:none; }
  main.home .cobus figcaption b{ display:block; color:var(--ink); font-weight:600; }
  main.home .cobus figcaption a{ color:var(--ink); }
  main.home .mvh{ font-family:var(--display); font-weight:850; font-size:clamp(22px,2.3vw,30px); letter-spacing:-.025em; margin:clamp(40px,7vh,72px) 0 6px; }
  main.home .mv{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
  @media (max-width:1000px){ main.home .mv{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
  @media (max-width:560px){ main.home .mv{ grid-template-columns:1fr; } }
  main.home .mv li{ background:var(--paper); border:1px solid var(--rule); border-radius:14px; padding:16px 18px; position:relative; }
  main.home .mv .num{ display:block; font-family:var(--display); font-weight:900; font-size:2.75rem; line-height:1; letter-spacing:-.04em; margin-bottom:8px; }
  main.home .mv h3{ font-family:var(--display); font-weight:800; font-size:1.1875rem; line-height:1.2; margin:0 0 6px; }
  main.home .mv p{ font-size:1rem; line-height:1.5; margin:0; }
  main.home .mv li.go{ border:2px solid var(--ink); }
  main.home .mv .tag8{ display:none; position:absolute; right:.8rem; top:.9rem; font-family:var(--mono); font-size:.625rem; letter-spacing:.08em; text-transform:uppercase; background:var(--ink); color:var(--paper); border-radius:999px; padding:.12rem .5rem; }
  main.home .mv li.go .tag8{ display:block; }
  main.home .mv .you{ display:block; margin-top:10px; font-size:.9375rem; line-height:1.45; border-left:3px solid var(--ink); padding-left:10px; }
  main.home .builders{ margin:16px 0 0; padding:1rem 1.1rem; border:1px dashed var(--ink); border-radius:12px; font-size:1rem; line-height:1.45; }
  main.home .builders b{ font-family:var(--display); font-weight:800; }
  main.home .ab{ display:grid; grid-template-columns:150px minmax(0,1fr); gap:24px; align-items:start; max-width:52rem; }
  @media (max-width:560px){ main.home .ab{ grid-template-columns:1fr; } }
  main.home .ab .portrait{ width:150px; height:150px; border-radius:50%; object-fit:cover; display:block; }
  main.home .ab p{ margin:0 0 12px; }
  main.home .ab .pressline, main.home .ab .links{ font-family:var(--mono); font-size:.8125rem; color:var(--muted); }
  .pressline{ margin:2rem 0 0; font-family:var(--mono); font-size:.75rem; line-height:1.6; color:var(--muted); }
  .pressline a{ color:var(--muted); }
  .pressline a:hover{ color:var(--ink); }
  @media (prefers-reduced-motion:reduce){ main.home a.nx:hover, main.home .tchip:hover, main.home .door:hover{ transform:none; } main.home .rc{ opacity:1; transform:none; } }
  main.home .doors{ padding:clamp(36px,5vw,64px) 0 clamp(36px,6vh,72px); }
  main.home .doors .dh{ font-family:var(--mono); font-size:.75rem; font-weight:500; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); margin:0 0 14px; }
  main.home .dl{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
  @media (max-width:1000px){ main.home .dl{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
  main.home .dl li{ min-width:0; }
  main.home .door{ position:relative; display:flex; flex-direction:column; height:100%; padding:18px 18px 16px; border:1px solid var(--rule); border-radius:14px; background:var(--panel); color:var(--ink); text-decoration:none; transition:border-color .25s, transform .35s var(--ease), box-shadow .35s var(--ease); }
  main.home .door:hover, main.home .door:focus-visible, main.home .door.on{ border-color:var(--ink); }
  main.home .door:hover, main.home .door:focus-visible{ transform:translateY(-3px); box-shadow:0 14px 30px -20px color-mix(in srgb,var(--ink) 60%,transparent); }
  main.home .door canvas{ display:block; width:100%; aspect-ratio:172/40; margin:0 0 14px; }
  main.home .door .dk{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.07em; text-transform:uppercase; color:var(--muted); }
  main.home .door .dn{ font-family:var(--display); font-weight:900; font-size:clamp(21px,2vw,27px); letter-spacing:-.035em; line-height:1.04; margin:4px 0 6px; }
  main.home .door .dd{ font-size:1rem; line-height:1.42; color:var(--muted); }
  main.home .door .dg{ margin-top:auto; padding-top:10px; font-family:var(--mono); font-size:.875rem; color:var(--muted); transition:transform .35s var(--ease), color .25s; }
  main.home .door:hover .dg, main.home .door.on .dg{ color:var(--ink); transform:translateY(3px); }
  @media (max-width:520px){
    main.home .dl{ grid-template-columns:minmax(0,1fr); gap:10px; }
    main.home .door{ display:grid; grid-template-columns:44% minmax(0,1fr); grid-template-rows:auto auto 1fr; column-gap:14px; padding:12px 14px 12px 10px; border-radius:12px; }
    main.home .door canvas{ grid-row:1 / 4; grid-column:1; align-self:center; margin:0; }
    main.home .door .dk, main.home .door .dn, main.home .door .dd{ grid-column:2; }
    main.home .door .dg{ display:none; }
    main.home .door .dn{ font-size:19px; margin:2px 0 3px; } main.home .door .dd{ font-size:.875rem; line-height:1.36; }
  }
  main.home .show{ position:relative; --sbg:var(--paper); --sfg:var(--ink); --smut:var(--muted); --sln:var(--rule); --sinv:0; --track:300vh; }
  main.home .show.cc{ --track:270vh; }
  main.home .show.tp{ --sbg:var(--panel); }
  html[data-palette="paper"]:not([data-theme="dark"]) main.home .show.si{ --sbg:var(--ink); --sfg:var(--paper); --smut:color-mix(in srgb,var(--paper) 74%,var(--ink)); --sln:color-mix(in srgb,var(--paper) 26%,var(--ink)); --sinv:1; }
  @media (prefers-color-scheme:dark){ html[data-palette="paper"]:not([data-theme="light"]) main.home .show.si{ --sbg:var(--panel); --sfg:var(--ink); --smut:var(--muted); --sln:var(--rule); --sinv:0; } }
  html:not([data-palette="paper"]) main.home .show.si{ --sbg:var(--panel); }
  @media (max-width:720px){ main.home .show{ --track:175svh; } main.home .show.cc{ --track:165svh; } }
  main.home .scr{ position:relative; min-height:100svh; overflow:hidden; background:var(--sbg); color:var(--sfg); isolation:isolate; }
  @media (prefers-reduced-motion:no-preference){
    html.js main.home .show{ height:var(--track); }
    html.js main.home .show .scr{ position:sticky; top:0; height:100svh; min-height:0; }
    html.js main.home .show.loose{ height:auto; }
    html.js main.home .show.loose .scr{ position:relative; height:auto; min-height:100svh; }
    html.js main.home .show .caps{ gap:0; }
    html.js main.home .show .caps li{ grid-area:1 / 1; opacity:0; transform:translateY(14px); transition:opacity .45s var(--ease), transform .6s var(--ease); visibility:hidden; }
    html.js main.home .show .caps li.on{ opacity:1; transform:none; visibility:visible; }
    html.js main.home .show .quotes, html.js main.home .show .objs-wrap{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
    html.js main.home .posts li{ opacity:0; transform:translateY(20px) scale(.98); transition:opacity .5s var(--ease), transform .6s var(--ease); }
    html.js main.home .posts li.on{ opacity:1; transform:none; }
  }
  @media (prefers-reduced-motion:reduce){ main.home .show .stepb, main.home .show .morph{ display:none; } }
  html:not(.js) main.home .show .stepb, html:not(.js) main.home .show .morph, html:not(.js) main.home .show .lab{ display:none; }
  html:not(.js) main.home .door canvas, html:not(.js) main.home .fld, html:not(.js) main.home .ins .legend, html:not(.js) main.home .show:not(.ai) .smid{ display:none; }
  html:not(.js) main.home .door{ display:flex; flex-direction:column; }
  @media (max-width:520px){ html:not(.js) main.home .door{ padding-left:14px; } }
  html:not(.js) main.home .show:not(.ai) .scr, html:not(.js) main.home .show:not(.ai) .txt{ min-height:0; }
  html:not(.js) main.home #roads{ display:none; } html:not(.js) main.home .stage{ grid-template-columns:minmax(0,1fr); min-height:0; } html:not(.js) main.home .tabs{ grid-column:1; }
  html:not(.js) main.home .stt{ white-space:normal; }
  main.home .viz{ position:absolute; inset:0; width:100%; height:100%; display:block; z-index:1; }
  main.home .txt{ position:relative; z-index:3; min-height:100svh; height:100%; padding:calc(var(--hdr) + clamp(14px,3.4vh,44px)) var(--spad) clamp(20px,4.6vh,52px); display:grid; grid-template-columns:minmax(0,35rem) minmax(0,1fr); grid-template-rows:auto auto 1fr auto; column-gap:clamp(24px,4vw,72px); pointer-events:none; }
  main.home .txt a, main.home .txt button, main.home .txt li{ pointer-events:auto; }
  main.home .stt{ grid-column:1 / -1; font-family:var(--display); font-weight:900; font-size:clamp(40px,8.6vw,136px); letter-spacing:-.045em; line-height:.9; margin:0 0 clamp(12px,2.4vh,26px); white-space:nowrap; }
  main.home .show .sl{ grid-column:1; grid-row:2; margin:0; font-size:clamp(17px,1.5vw,22px); line-height:1.42; max-width:34rem; }
  main.home .sl .s2{ display:block; color:var(--smut); margin-top:.4em; }
  main.home .smid{ grid-column:2; grid-row:2 / 5; min-height:0; position:relative; }
  main.home .bot{ grid-column:1; grid-row:4; align-self:end; min-width:0; }
  @media (max-width:860px){
    main.home .txt{ display:flex; flex-direction:column; }
    main.home .smid{ flex:1 1 auto; min-height:160px; margin:8px 0; }
    main.home .stt{ font-size:clamp(34px,11.2vw,96px); }
  }
  main.home .stepb .s{ display:none; }
  @media (max-width:560px){ main.home .stepb .l{ display:none; } main.home .stepb .s{ display:inline; } }
  main.home .show .caps{ margin:0 0 16px; display:grid; gap:12px; }
  main.home .show .caps li{ margin:0; font-size:clamp(17px,1.35vw,20px); line-height:1.4; }
  main.home .caps .big{ display:block; font-family:var(--display); font-weight:800; font-size:clamp(22px,2.4vw,36px); letter-spacing:-.03em; line-height:1.08; }
  main.home .caps .bl{ display:block; margin-top:.4em; }
  main.home .caps .k{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.09em; text-transform:uppercase; color:var(--smut); margin-bottom:6px; }
  main.home .gorow{ display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; margin:0; }
  main.home .cta{ display:inline-flex; align-items:center; gap:.5em; min-height:46px; padding:10px 20px; border-radius:999px; background:var(--sfg); color:var(--sbg); font-family:var(--display); font-weight:700; font-size:1.0625rem; letter-spacing:-.01em; text-decoration:none; transition:transform .25s var(--ease); }
  main.home .cta:hover{ transform:translateY(-2px); }
  main.home .cta:focus-visible{ outline:2px solid var(--sfg); outline-offset:3px; }
  main.home .cta2{ font-family:var(--mono); font-size:.8125rem; color:var(--sfg); text-underline-offset:.25em; padding:10px 0; }
  main.home .stepb{ display:flex; flex-wrap:wrap; gap:6px; margin:0 0 14px; }
  main.home .stepb button{ font-family:var(--mono); font-size:.75rem; letter-spacing:.03em; min-height:36px; padding:6px 12px; border:1px solid var(--sln); border-radius:999px; background:transparent; color:var(--smut); cursor:pointer; transition:background-color .3s, color .3s, border-color .3s; }
  main.home .stepb button:hover{ border-color:var(--sfg); color:var(--sfg); }
  main.home .stepb button[aria-pressed="true"]{ background:var(--sfg); color:var(--sbg); border-color:var(--sfg); }
  main.home .stip{ position:absolute; left:0; top:0; z-index:6; max-width:290px; background:var(--sfg); color:var(--sbg); font-family:var(--mono); font-size:.75rem; line-height:1.42; padding:9px 12px; border-radius:10px; pointer-events:none; opacity:0; transform:translateY(6px) scale(.97); transition:opacity .16s, transform .25s var(--ease); }
  main.home .stip.on{ opacity:1; transform:none; }
  main.home .stip b{ display:block; font-family:var(--display); font-weight:700; font-size:.9375rem; letter-spacing:-.01em; margin-bottom:2px; }
  main.home .stip i{ font-style:normal; opacity:.75; }
  main.home .lab{ position:absolute; left:0; top:0; z-index:4; pointer-events:none; opacity:0; transition:opacity .45s var(--ease); will-change:transform; }
  main.home .lab.on{ opacity:1; }
  main.home .rlab b{ display:block; font-family:var(--display); font-weight:800; font-size:clamp(14px,1.25vw,19px); letter-spacing:-.02em; line-height:1.1; color:var(--sfg); text-align:right; }
  main.home .rlab span{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; text-align:right; opacity:0; transform:translateY(-4px); transition:opacity .5s, transform .5s var(--ease); }
  main.home .rlab.w span{ opacity:1; transform:none; }
  main.home .rlab.dim{ opacity:.3; }
  main.home .rlab[data-k="sage"] span{ color:var(--sage-t); } main.home .rlab[data-k="mid"] span{ color:var(--mid-t); } main.home .rlab[data-k="mauve"] span{ color:var(--mauve-t); } main.home .rlab[data-k="pink"] span{ color:var(--pink-t); }
  main.home .key i{ display:inline-block; width:.62em; height:.62em; border-radius:50%; border:1.5px solid currentColor; vertical-align:.02em; margin:0 .15em 0 .1em; }
  main.home .key i.f{ background:currentColor; }
  main.home .key i.h{ background:linear-gradient(90deg,currentColor 50%,transparent 50%); }
  main.home .morph{ margin:0 0 10px; font-size:clamp(21px,2.25vw,34px); line-height:1.28; color:var(--sfg); }
  main.home .morph .v0{ font-family:var(--serif); font-weight:400; }
  main.home .morph .v1{ font-family:var(--mono); font-weight:400; font-size:.8em; line-height:1.5; letter-spacing:-.01em; }
  main.home .morph .v2{ font-family:var(--display); font-weight:600; letter-spacing:-.02em; }
  main.home .mcar{ display:inline-block; width:0; height:1em; vertical-align:-.1em; }
  main.home .meas{ position:absolute; visibility:hidden; left:0; right:0; top:0; pointer-events:none; }
  main.home .quotes{ margin:0 0 16px; display:grid; gap:14px; }
  main.home .quotes li{ font-size:1.0625rem; line-height:1.4; }
  main.home .quotes .ql{ display:block; font-family:var(--mono); font-size:.6875rem; letter-spacing:.09em; text-transform:uppercase; color:var(--smut); }
  main.home .quotes .v1{ font-family:var(--mono); font-size:.9em; }
  main.home .quotes .v2{ font-family:var(--display); font-weight:600; }
  main.home .ssrc, main.home .show .caps li.ssrc{ font-family:var(--mono); font-size:.8125rem; line-height:1.5; color:var(--smut); }
  main.home .ssrc a{ color:var(--sfg); }
  main.home .vcl, main.home .fl{ font-family:var(--mono); font-size:.6875rem; letter-spacing:.08em; text-transform:uppercase; color:var(--smut); white-space:nowrap; }
  main.home .vcl.sv{ color:var(--sfg); font-weight:600; text-align:center; transform-origin:50% 50%; }
  main.home .leg{ font-family:var(--mono); font-size:.75rem; color:var(--smut); display:flex; flex-wrap:wrap; gap:4px 14px; margin-top:8px; }
  main.home .leg i{ display:inline-block; width:9px; height:9px; border-radius:50%; margin-right:6px; vertical-align:0; }
  main.home .leg .o{ background:var(--sfg); }
  main.home .leg .h{ background:var(--sfg); box-shadow:0 0 0 2px var(--sbg), 0 0 0 3.5px var(--sfg); }
  main.home .leg .d{ border:1.5px solid var(--smut); }
  main.home .objs{ columns:2; column-gap:24px; font-size:.9375rem; margin:8px 0 16px; padding-left:1.4em; list-style:decimal; }
  @media (max-width:640px){ main.home .objs{ columns:1; } }
  main.home .ai-img{ position:absolute; inset:-4%; width:108%; height:108%; max-width:none; object-fit:cover; z-index:0; display:block; will-change:transform; }
  main.home .show.ai{ --aiw:max(calc(var(--spad) + 35rem), calc(var(--spad) + 5.6 * clamp(40px,8.6vw,136px))); }
  main.home .show.ai .scr::before{ content:""; position:absolute; inset:0; z-index:2; pointer-events:none; background:linear-gradient(90deg,var(--paper) 0,var(--paper) var(--aiw),color-mix(in srgb,var(--paper) 0%,transparent) calc(var(--aiw) + 14vw)); }
  @media (max-width:860px){
    main.home .show.ai .scr::before{ display:none; }
    main.home .show.ai .sl, main.home .show.ai .bot{ position:relative; }
    main.home .show.ai .sl::before, main.home .show.ai .bot::before{ content:""; position:absolute; z-index:-1; left:-100vw; right:-100vw; pointer-events:none; }
    main.home .show.ai .sl::before{ top:-100vh; bottom:-64px; background:linear-gradient(180deg,var(--paper) calc(100% - 56px),color-mix(in srgb,var(--paper) 0%,transparent)); }
    main.home .show.ai .bot::before{ top:-56px; bottom:calc(-1 * clamp(20px,4.6vh,52px)); background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 0%,transparent),var(--paper) 48px); }
  }
  main.home .show.ai .smid{ display:flex; align-items:center; justify-content:flex-end; }
  main.home .posts{ display:flex; flex-direction:column; gap:8px; width:min(100%,30rem); }
  main.home .posts li{ background:color-mix(in srgb,var(--paper) 90%,transparent); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); border:1px solid var(--rule); border-radius:14px; color:var(--ink); }
  main.home .posts a{ display:grid; grid-template-columns:14px minmax(0,1fr) auto; gap:0 12px; align-items:baseline; padding:10px 14px; text-decoration:none; color:var(--ink); }
  main.home .bul{ width:12px; height:12px; border-radius:50%; border:1.5px solid var(--ink); align-self:center; }
  main.home .pt{ font-family:var(--display); font-weight:800; font-size:clamp(17px,1.4vw,21px); letter-spacing:-.02em; line-height:1.15; }
  main.home .posts a:hover .pt{ text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:.15em; }
  main.home .pd{ font-family:var(--mono); font-size:.6875rem; color:var(--muted); white-space:nowrap; }
  main.home .ps{ grid-column:2 / 4; font-style:italic; color:var(--muted); font-size:.9375rem; line-height:1.3; }
  main.home .pf{ font-family:var(--mono); font-size:.625rem; letter-spacing:.08em; text-transform:uppercase; border:1px solid var(--ink); border-radius:999px; padding:1px 6px; margin-left:8px; vertical-align:.15em; font-style:normal; color:var(--ink); }
  main.home .snote{ font-family:var(--mono); font-size:.75rem; color:var(--smut); margin:10px 0 0; }
  @media (max-width:860px){
    main.home .show.ai .smid{ align-items:flex-end; justify-content:stretch; }
    main.home .posts{ width:100%; gap:5px; }
    main.home .posts a{ padding:7px 11px; }
    main.home .ps{ display:none; }
  }
  @media (max-width:720px){ main.home .show .sl{ font-size:15.5px; line-height:1.42; } main.home .show .stt{ letter-spacing:-.05em; } main.home .show .txt{ padding-top:calc(var(--hdr) + 16px); } main.home .show .morph{ font-size:19px; } main.home .show .stepb{ gap:5px; } main.home .show .stepb button{ font-size:.6875rem; letter-spacing:0; padding:5px 9px; min-height:34px; } main.home .show .caps li{ font-size:16px; } main.home .show .caps .big{ font-size:23px; } }
  #hp, #hpt i{ position:fixed; left:0; top:0; width:16px; height:16px; border-radius:50%; background:var(--yellow); pointer-events:none; z-index:60; opacity:0; will-change:transform, opacity; display:none; }
  html.js #hp, html.js #hpt i{ display:block; }
  #hp.fly{ box-shadow:0 0 18px 4px color-mix(in srgb,var(--yellow) 55%,transparent); }
  #psay{ position:fixed; left:0; top:0; z-index:61; max-width:260px; background:var(--ink); color:var(--paper); font-family:var(--mono); font-size:.75rem; line-height:1.4; padding:8px 11px; border-radius:9px; pointer-events:none; opacity:0; transition:opacity .2s; box-shadow:0 10px 30px rgba(0,0,0,.18); }
  #psay.on{ opacity:1; }
  #psay.inv{ background:var(--paper); color:var(--ink); }
  @keyframes arr-settle{ from{ opacity:0; filter:blur(7px); transform:translateY(6px); } to{ opacity:1; filter:none; transform:none; } }
  @keyframes arr-brush{ from{ clip-path:inset(0 100% 0 0); opacity:.7; } to{ clip-path:inset(0 0 0 0); opacity:1; } }
  @keyframes arr-rise{ from{ opacity:0; transform:translateY(14px); } to{ opacity:1; transform:none; } }
  @keyframes arr-blink{ 50%{ opacity:0; } }
  main > article > :nth-child(1), main > :not(canvas):not(article):nth-child(1), main.home .hx > :nth-child(1){ --i:0; }
  main > article > :nth-child(2), main > :not(canvas):not(article):nth-child(2), main.home .hx > :nth-child(2){ --i:1; }
  main > article > :nth-child(3), main > :not(canvas):not(article):nth-child(3), main.home .hx > :nth-child(3){ --i:2; }
  main > article > :nth-child(4), main > :not(canvas):not(article):nth-child(4), main.home .hx > :nth-child(4){ --i:3; }
  main > article > :nth-child(5), main > :not(canvas):not(article):nth-child(5), main.home .hx > :nth-child(5){ --i:4; }
  main > article > :nth-child(6), main > :not(canvas):not(article):nth-child(6), main.home .hx > :nth-child(6){ --i:5; }
  main > article > :nth-child(7), main > :not(canvas):not(article):nth-child(7), main.home .hx > :nth-child(7){ --i:6; }
  main > article > :nth-child(8), main > :not(canvas):not(article):nth-child(8), main.home .hx > :nth-child(8){ --i:7; }
  main > article > :nth-child(9), main > :not(canvas):not(article):nth-child(9), main.home .hx > :nth-child(9){ --i:8; }
  main > article > :nth-child(10), main > :not(canvas):not(article):nth-child(10), main.home .hx > :nth-child(10){ --i:9; }
  main > article > :nth-child(11), main > :not(canvas):not(article):nth-child(11), main.home .hx > :nth-child(11){ --i:10; }
  main > article > :nth-child(12), main > :not(canvas):not(article):nth-child(12), main.home .hx > :nth-child(12){ --i:11; }
  main > article > :nth-child(13), main > :not(canvas):not(article):nth-child(13), main.home .hx > :nth-child(13){ --i:12; }
  main > article > :nth-child(14), main > :not(canvas):not(article):nth-child(14), main.home .hx > :nth-child(14){ --i:13; }
  main.home section:nth-of-type(2){ --i:2; }
  main.home section:nth-of-type(3){ --i:3; }
  main.home section:nth-of-type(4){ --i:4; }
  main.home section:nth-of-type(5){ --i:5; }
  main.home section:nth-of-type(6){ --i:6; }
  main.home section:nth-of-type(7){ --i:7; }
  main.home section:nth-of-type(8){ --i:8; }
  main.home section:nth-of-type(9){ --i:9; }
  @media (prefers-reduced-motion: no-preference){
    html[data-e="1"] main > article > *, html[data-e="1"] main > :not(canvas):not(article):not(#reading), html[data-e="1"] main.home .hx > *, html[data-e="1"] main.home section.sec:not(#reading){ animation:arr-settle .65s cubic-bezier(.2,.7,.2,1) both; animation-delay:calc(var(--i,0) * 70ms); }
    html[data-e="2"] main > article > *, html[data-e="2"] main > :not(canvas):not(article):not(#reading), html[data-e="2"] main.home .hx > *, html[data-e="2"] main.home section.sec:not(#reading){ animation:arr-brush .7s cubic-bezier(.2,.7,.2,1) both; animation-delay:calc(var(--i,0) * 80ms); }
    html[data-e="3"] main.home .hx > *{ animation:arr-settle .5s both; animation-delay:calc(var(--i,0) * 60ms); }
    html[data-e="3"] main.home section.sec:not(#reading){ animation:arr-rise .6s cubic-bezier(.2,.7,.2,1) both; animation-delay:calc(240ms + var(--i,0) * 130ms); }
    html[data-e="3"] main > article > *, html[data-e="3"] main > :not(canvas):not(article):not(#reading){ animation:arr-rise .55s cubic-bezier(.2,.7,.2,1) both; animation-delay:calc(var(--i,0) * 60ms); }
    html[data-e="4"] main > article > :not(h1):not(.sub), html[data-e="4"] main > :not(canvas):not(article):not(#reading), html[data-e="4"] main.home .hx > :not(.intro), html[data-e="4"] main.home .hx .intro > :not(h1):not(.sub), html[data-e="4"] main.home section.sec:not(#reading){ animation:arr-settle .65s cubic-bezier(.2,.7,.2,1) both; animation-delay:calc(500ms + var(--i,0) * 70ms); }
  }
  .caret{ display:inline-block; width:.07em; height:.85em; background:var(--hot); vertical-align:-.08em; margin-left:.1em; animation:arr-blink .9s steps(2) infinite; }
  @media (prefers-reduced-motion: reduce){
    *, *::before, *::after{ animation-duration:.01ms !important; animation-iteration-count:1 !important; animation-delay:0s !important; transition-duration:.01ms !important; transition-delay:0s !important; }
    html{ scroll-behavior:auto !important; }
  }

.tablewrap{overflow-x:auto;margin:1.4rem 0 1.6rem;-webkit-overflow-scrolling:touch}
.tablewrap table{border-collapse:collapse;width:100%;font:500 .86rem/1.45 var(--mono);color:var(--ink)}
.tablewrap th{text-align:left;font-weight:600;border-bottom:2px solid var(--ink);padding:.45rem .7rem .45rem 0;white-space:nowrap}
.tablewrap td{border-bottom:1px solid var(--rule);padding:.5rem .7rem .5rem 0;vertical-align:top}
.tablewrap td.num,.tablewrap th.num{text-align:right;padding-right:1.2rem;font-variant-numeric:tabular-nums}
@media (max-width:560px){ .tablewrap table{font-size:.75rem} }
article p,article li{overflow-wrap:break-word}
