
    :root {
      color-scheme: dark light;
      --paper: #0d110f;
      --surface: #141a17;
      --surface-raised: #1a211d;
      --ink: #f0f1ec;
      --soft-ink: #d7dad4;
      --muted: #a5ada6;
      --rule: #303934;
      --accent: #df8564;
      --accent-soft: #8f5743;
      --brass: #c8a25e;
      --brass-tint: rgba(200, 162, 94, .055);
      --brass-shadow: rgba(0, 0, 0, .14);
      --image-filter: brightness(.84) saturate(.82);
    }
    @media (prefers-color-scheme: light) {
      :root {
        --paper: #101411;
        --surface: #171c19;
        --surface-raised: #1c231f;
        --ink: #f3f3ee;
        --soft-ink: #d9dcd6;
        --muted: #a8afa9;
        --rule: #353d38;
        --accent: #e48b69;
        --accent-soft: #965c46;
        --image-filter: brightness(.88) saturate(.86);
      }
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      overflow-wrap: anywhere;
      background: var(--paper);
      color: var(--ink);
      font-family: "DM Sans", sans-serif;
      -webkit-font-smoothing: antialiased;
    }
    a { color: inherit; }
    img { display: block; width: 100%; filter: var(--image-filter); }
    h1, h2, h3, h4, blockquote { font-family: "Newsreader", Georgia, serif; font-weight: 400; }
    .page { max-width: 1440px; margin: 0 auto; padding: 0 34px 72px; }
    .topline {
      min-height: 120px;
      display: grid;
      grid-template-columns: minmax(160px, .7fr) minmax(430px, 1.3fr);
      align-items: center;
      gap: 48px;
      border-bottom: 1px solid var(--rule);
    }
    .masthead {
      max-width: 230px;
      margin: 0;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.38;
      letter-spacing: .15em;
      text-transform: uppercase;
      font-weight: 500;
    }
    .topline nav { display: flex; justify-content: flex-end; gap: clamp(22px, 3.4vw, 54px); }
    .topline a { color: var(--muted); text-decoration: none; font-size: 15px; white-space: nowrap; }
    .topline a:hover, .topline a:focus-visible { color: var(--ink); }
    .hero {
      display: grid;
      grid-template-columns: minmax(170px, .44fr) minmax(0, 1.56fr);
      gap: 52px;
      align-items: start;
      padding: clamp(54px, 6vw, 82px) 0 clamp(62px, 7vw, 94px);
    }
    .edition {
      display: flex;
      align-items: center;
      gap: 14px;
      margin: 8px 0 0;
      color: var(--accent);
      font-size: 12px;
      font-weight: 600;
      line-height: 1.45;
      letter-spacing: .13em;
      text-transform: uppercase;
    }
    .edition::before { content: ""; width: 38px; height: 1px; flex: 0 0 auto; background: var(--accent); }
    h1 {
      max-width: none;
      margin: 0;
      font-size: clamp(52px, 5.7vw, 78px);
      line-height: .98;
      letter-spacing: -.045em;
      white-space: normal;
    }
    .hero-dek {
      max-width: 640px;
      margin: 25px 0 0;
      color: var(--muted);
      font-size: clamp(16px, 1.45vw, 19px);
      line-height: 1.65;
      letter-spacing: -.005em;
    }
    .arrow-link {
      display: inline-flex;
      align-items: center;
      gap: 20px;
      margin-top: 50px;
      padding: 0 2px 10px 0;
      border-bottom: 1px solid var(--soft-ink);
      color: var(--ink);
      text-decoration: none;
      font-size: 17px;
      font-weight: 500;
    }
    .arrow-link span { transition: transform .2s ease; }
    .arrow-link:hover span, .arrow-link:focus-visible span { transform: translateX(5px); }
    .hero-image { width: calc(100% - clamp(0px, 5vw, 74px)); margin: 16px 0 0 auto; }
    .hero-image img { aspect-ratio: 16 / 8.6; object-fit: cover; object-position: center 57%; }
    figcaption {
      display: flex;
      justify-content: space-between;
      gap: 20px;
      margin-top: 11px;
      color: var(--muted);
      font-size: 11px;
      line-height: 1.5;
    }
    figcaption a { text-underline-offset: 3px; }
    .section { padding: 108px 0; border-top: 1px solid var(--rule); }
    .section-head {
      display: grid;
      grid-template-columns: minmax(170px, .44fr) minmax(0, 1.56fr);
      gap: 52px;
      margin-bottom: 58px;
    }
    .section-label {
      margin: 5px 0 0;
      color: var(--accent);
      font-size: 12px;
      font-weight: 600;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .section-head h2 { max-width: 850px; margin: 0; font-size: clamp(45px, 6vw, 82px); line-height: .98; letter-spacing: -.04em; }
    .section-intro { max-width: 760px; margin: 24px 0 0; color: var(--muted); font-size: 18px; line-height: 1.68; }
    .journal-feature {
      display: grid;
      grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr);
      gap: 54px;
      align-items: center;
    }
    .journal-feature figure { margin: 0; }
    .journal-feature img { aspect-ratio: 3 / 2; object-fit: cover; }
    .meta { margin: 0 0 19px; color: var(--accent); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; }
    .journal-feature h3 { margin: 0; font-size: clamp(41px, 4.7vw, 67px); line-height: .98; letter-spacing: -.035em; }
    .journal-feature .summary { margin: 24px 0 0; color: var(--muted); font-size: 17px; line-height: 1.7; }
    .journal-notice {
      display: grid;
      grid-template-columns: minmax(170px, .44fr) minmax(0, 1.56fr);
      gap: 52px;
      margin-bottom: 74px;
      padding: 28px 0 34px;
      border-top: 1px solid var(--rule);
      border-bottom: 1px solid var(--rule);
    }
    .journal-notice time { color: var(--accent); font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
    .journal-notice h3 { margin: 0; font-size: clamp(34px, 4.2vw, 56px); line-height: 1; letter-spacing: -.03em; }
    .journal-notice p { max-width: 720px; margin: 18px 0 0; color: var(--muted); font-size: 16px; line-height: 1.68; }
    .journal-notice a { display: inline-block; margin-top: 20px; color: var(--soft-ink); text-underline-offset: 4px; }
    .guide-answers { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 78px; border-top: 1px solid var(--rule); }
    .answer { min-height: 180px; padding: 26px 28px 30px 0; border-bottom: 1px solid var(--rule); }
    .answer + .answer { padding-left: 28px; border-left: 1px solid var(--rule); }
    .answer span, .smart-card span, .region span { color: var(--accent); font-size: 11px; letter-spacing: .1em; }
    .answer h4 { margin: 40px 0 10px; font-size: 27px; line-height: 1.08; }
    .answer p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.62; }
    .builder-note { display: flex; justify-content: space-between; gap: 30px; padding: 19px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); color: var(--muted); font-size: 12px; line-height: 1.55; }
    .builder-note strong { color: var(--soft-ink); font-weight: 500; }
    .builder-list { margin-top: 34px; }
    .builder {
      display: grid;
      grid-template-columns: minmax(190px, .72fr) minmax(240px, .74fr) minmax(280px, 1.2fr) auto;
      gap: 28px;
      align-items: baseline;
      padding: 25px 0;
      border-bottom: 1px solid var(--rule);
    }
    .builder h3 { margin: 0; font-size: 27px; line-height: 1.1; }
    .builder-starred {
      margin: 10px 0;
      padding: 22px 18px;
      border: 1px solid var(--brass);
      border-radius: 3px;
      background: var(--brass-tint);
      box-shadow: 0 7px 24px var(--brass-shadow);
    }
    .builder-name { min-width: 0; }
    .star-distinction {
      margin: 0 0 8px;
      color: var(--brass);
      font-size: 10px;
      font-weight: 600;
      line-height: 1.3;
      letter-spacing: .15em;
      text-transform: uppercase;
    }
    .star-mark {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-left: 8px;
      color: var(--accent);
      text-decoration: none;
      font-family: "DM Sans", sans-serif;
      font-size: .65em;
      font-weight: 600;
      letter-spacing: .03em;
      vertical-align: .12em;
    }
    .star-mark:hover, .star-mark:focus-visible { color: var(--ink); }
    .builder-starred .star-mark { color: var(--brass); font-size: .78em; }
    .builder-starred .star-mark:hover, .builder-starred .star-mark:focus-visible { color: var(--ink); }
    .builder .area { margin: 0; color: var(--soft-ink); font-size: 13px; }
    .builder-tag {
      display: inline-block;
      padding: 2px 7px;
      border: 1px solid var(--accent-soft);
      border-radius: 999px;
      color: var(--accent);
      font-size: 10px;
      font-weight: 600;
      letter-spacing: .06em;
      text-transform: uppercase;
      vertical-align: 1px;
    }
    .builder .description { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.55; }
    .builder a { color: var(--soft-ink); text-decoration: none; font-size: 13px; white-space: nowrap; }
    .builder a:hover, .builder a:focus-visible { color: var(--accent); }
    .builder-actions { display: grid; justify-items: start; gap: 12px; }
    .profile-link { display: inline-flex; align-items: center; gap: 8px; padding-bottom: 3px; border-bottom: 1px solid var(--accent-soft); color: var(--ink) !important; font-weight: 600; }
    .profile-link:hover, .profile-link:focus-visible { color: var(--accent) !important; }
    .profile-link span { transition: transform .2s ease; }
    .profile-link:hover span, .profile-link:focus-visible span { transform: translateX(4px); }
    .firm-link { display: inline-flex; align-items: center; gap: 9px; }
    .external-indicator { font-size: .8em; line-height: 1; color: var(--accent); }
    .builder-method { max-width: 800px; margin: 36px 0 0 auto; color: var(--muted); font-size: 14px; line-height: 1.68; }
    .builder-method a { color: var(--soft-ink); text-underline-offset: 3px; }
    .watchlist-builders { margin-top: 0; }
    .methodology-head { margin-bottom: 48px; }
    .methodology-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr);
      gap: 56px;
      padding-top: 30px;
      border-top: 1px solid var(--rule);
    }
    .methodology-pledge {
      max-width: 760px;
      margin: 0;
      color: var(--soft-ink);
      font-family: "Newsreader", Georgia, serif;
      font-size: clamp(35px, 4.2vw, 59px);
      line-height: 1.05;
      letter-spacing: -.03em;
    }
    .methodology-principles {
      max-width: 690px;
      margin: 34px 0 0;
      color: var(--muted);
      font-size: 16px;
      line-height: 1.72;
    }
    .methodology-principles a { color: var(--soft-ink); text-underline-offset: 4px; }
    .methodology-meta { display: grid; gap: 36px; align-content: start; }
    .updated-stamp {
      justify-self: start;
      margin: 0;
      padding: 9px 12px;
      border: 1px solid var(--accent-soft);
      color: var(--accent);
      font-size: 12px;
      font-weight: 600;
      letter-spacing: .05em;
      text-transform: uppercase;
    }
    .changelog { padding-top: 24px; border-top: 1px solid var(--rule); }
    .changelog .section-label { margin: 0 0 13px; }
    .changelog > p:not(.section-label) { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.68; }
    .changelog > p:not(.section-label) + p { margin-top: 10px; }
    .smart-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--rule); }
    .smart-card { min-height: 260px; padding: 32px 34px 38px 0; border-bottom: 1px solid var(--rule); }
    .smart-card:nth-child(even) { padding-left: 34px; border-left: 1px solid var(--rule); }
    .smart-card h3 { margin: 50px 0 14px; font-size: 34px; line-height: 1.05; }
    .smart-card p { max-width: 540px; margin: 0; color: var(--muted); font-size: 15px; line-height: 1.68; }
    .regions-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--rule); }
    .region { min-height: 330px; padding: 30px 24px 34px 0; border-bottom: 1px solid var(--rule); }
    .region + .region { padding-left: 24px; border-left: 1px solid var(--rule); }
    .region h3 { margin: 70px 0 18px; font-size: 31px; line-height: 1.06; }
    .region p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
    .article-shell {
      display: grid;
      grid-template-columns: minmax(170px, .45fr) minmax(0, 1.15fr) minmax(210px, .4fr);
      gap: 44px;
      padding: 112px 0 100px;
      border-top: 1px solid var(--rule);
    }
    .article-aside { position: sticky; top: 26px; align-self: start; }
    .article-aside p { margin: 0 0 18px; color: var(--muted); font-size: 12px; line-height: 1.55; }
    article { max-width: 750px; }
    article header { margin-bottom: 52px; }
    article .kicker { margin: 0 0 17px; color: var(--accent); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; }
    article h1, article h2 { margin: 0; font-size: clamp(46px, 5vw, 73px); line-height: .98; letter-spacing: -.04em; }
    article .standfirst { margin: 28px 0 0; color: var(--muted); font-family: "Newsreader", Georgia, serif; font-size: 24px; line-height: 1.42; }
    article h3 { margin: 56px 0 16px; font-size: 35px; line-height: 1.1; letter-spacing: -.02em; }
    article p, article li { font-size: 17px; line-height: 1.78; }
    article p { margin: 0 0 22px; }
    article ol { margin: 26px 0 36px; padding: 0; list-style: none; counter-reset: criteria; }
    article li { counter-increment: criteria; display: grid; grid-template-columns: 42px 1fr; gap: 10px; margin: 0; padding: 18px 0; border-top: 1px solid var(--rule); }
    article li:last-child { border-bottom: 1px solid var(--rule); }
    .guide-teaser { padding: 108px 0; border-top: 1px solid var(--rule); max-width: 880px; }
    .guide-teaser .section-label { margin: 0 0 18px; }
    .guide-teaser h2 { margin: 0; font-size: clamp(41px, 4.7vw, 67px); line-height: .98; letter-spacing: -.035em; }
    .guide-teaser-standfirst { margin: 24px 0 0; color: var(--muted); font-family: "Newsreader", Georgia, serif; font-size: 22px; line-height: 1.5; }
    .guide-teaser .arrow-link { margin-top: 34px; }
    article li::before { content: "0" counter(criteria); color: var(--accent); font-size: 12px; letter-spacing: .06em; padding-top: 7px; }
    article li strong { display: block; margin-bottom: 3px; color: var(--ink); font-weight: 600; line-height: 1.4; }
    blockquote { margin: 46px 0; padding: 8px 0 8px 28px; border-left: 2px solid var(--accent); color: var(--soft-ink); font-size: 31px; line-height: 1.25; letter-spacing: -.015em; }
    .source-note { margin-top: 52px; padding-top: 22px; border-top: 1px solid var(--rule); color: var(--muted); font-size: 13px; line-height: 1.65; }
    .source-note a { color: var(--soft-ink); text-underline-offset: 3px; }
    .article-index { padding-top: 4px; }
    .article-index ol { margin: 16px 0 0; padding: 0; list-style: none; }
    .article-index li { border-top: 1px solid var(--rule); }
    .article-index a { display: block; padding: 12px 0; color: var(--muted); text-decoration: none; font-size: 12px; line-height: 1.4; }
    .article-index a:hover { color: var(--accent); }

    .profile-view { padding: clamp(72px, 9vw, 126px) 0 96px; }
    .profile-view[hidden], #home-content[hidden], footer[hidden] { display: none; }
    .profile-shell {
      display: grid;
      grid-template-columns: minmax(150px, .38fr) minmax(0, 1.18fr) minmax(210px, .44fr);
      gap: 48px;
      align-items: start;
    }
    .profile-rail { position: sticky; top: 26px; }
    .profile-rail .section-label { margin: 0 0 15px; }
    .profile-rail p { margin: 0 0 22px; color: var(--muted); font-size: 12px; line-height: 1.6; }
    .profile-directory { padding-top: 20px; border-top: 1px solid var(--rule); }
    .profile-directory a {
      display: block;
      padding: 9px 0;
      color: var(--muted);
      text-decoration: none;
      font-size: 11px;
      line-height: 1.4;
    }
    .profile-directory a:hover, .profile-directory a:focus-visible, .profile-directory a[aria-current="page"] { color: var(--accent); }
    .profile-article { max-width: 780px; }
    .profile-header { padding-bottom: 58px; border-bottom: 1px solid var(--rule); }
    .profile-kicker { margin: 0 0 22px; color: var(--accent); font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
    .profile-article h1 { margin: 0; max-width: 820px; font-size: clamp(48px, 6vw, 84px); line-height: .94; letter-spacing: -.045em; white-space: normal; }
    .profile-sub { margin: 18px 0 0; color: var(--soft-ink); font-size: 14px; font-weight: 500; }
    .profile-star-line { display: flex; align-items: baseline; flex-wrap: wrap; gap: 10px 18px; margin-top: 22px; }
    .profile-star { display: inline-flex; margin: 0; color: var(--accent); text-decoration: none; font-size: 18px; font-weight: 600; letter-spacing: .04em; }
    .profile-star:hover, .profile-star:focus-visible { color: var(--ink); }
    .profile-star-distinction { color: var(--brass); font-size: 10px; font-weight: 600; line-height: 1.3; letter-spacing: .15em; text-transform: uppercase; }
    .profile-standfirst { margin: 31px 0 0; color: var(--muted); font-family: "Newsreader", Georgia, serif; font-size: clamp(23px, 2.4vw, 31px); line-height: 1.43; }
    .profile-section { padding: 56px 0; border-bottom: 1px solid var(--rule); }
    .profile-section h2 { margin: 0 0 30px; font-size: clamp(34px, 3.6vw, 48px); line-height: 1.02; letter-spacing: -.025em; }
    .snapshot { margin: 0; }
    .snapshot-row { display: grid; grid-template-columns: minmax(112px, .35fr) minmax(0, 1fr); gap: 22px; padding: 15px 0; border-top: 1px solid var(--rule); }
    .snapshot-row:last-child { border-bottom: 1px solid var(--rule); }
    .snapshot dt { color: var(--accent); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
    .snapshot dd { margin: 0; color: var(--soft-ink); font-size: 15px; line-height: 1.55; }
    .evidence-list, .parade-list { margin: 0; padding: 0; list-style: none; counter-reset: profile-item; }
    .evidence-list li, .parade-list li { display: block; position: relative; margin: 0; padding: 18px 0 18px 44px; border-top: 1px solid var(--rule); color: var(--soft-ink); font-size: 16px; line-height: 1.72; }
    .evidence-list li:last-child, .parade-list li:last-child { border-bottom: 1px solid var(--rule); }
    .parade-list li { counter-increment: profile-item; }
    .parade-list li::before { content: "0" counter(profile-item); position: absolute; left: 0; top: 22px; color: var(--accent); font-size: 11px; letter-spacing: .06em; }
    .parade-list .parade-link { color: var(--ink); text-decoration: none; font-weight: 600; }
    .parade-list .parade-link:hover, .parade-list .parade-link:focus-visible { color: var(--accent); }
    .parade-list .parade-meta { display: block; margin-top: 4px; font-size: 13px; letter-spacing: .02em; color: var(--muted); }
    .evidence-list li::before { content: "—"; position: absolute; left: 0; top: 18px; color: var(--accent); }
    .fit-copy { margin: 0; color: var(--soft-ink); font-size: 18px; line-height: 1.78; }
    .profile-footer { padding-top: 40px; }
    .profile-firm-link { margin: 0 0 34px; }
    .profile-firm-link .firm-link { color: var(--ink); text-decoration: none; font-size: 14px; font-weight: 600; }
    .profile-firm-link .firm-link:hover, .profile-firm-link .firm-link:focus-visible { color: var(--accent); }
    .vetting-note { margin: 0 0 34px; padding-top: 20px; border-top: 1px solid var(--rule); color: var(--muted); font-size: 12px; line-height: 1.65; }
    .profile-back { display: inline-block; color: var(--soft-ink); text-decoration: none; font-size: 14px; }
    .profile-back:hover, .profile-back:focus-visible { color: var(--accent); }

    .stars-view { padding: clamp(72px, 9vw, 126px) 0 104px; }
    .stars-view[hidden] { display: none; }
    .stars-shell { display: grid; grid-template-columns: minmax(170px, .44fr) minmax(0, 1.56fr); gap: 52px; }
    .stars-intro { max-width: 820px; padding-bottom: 66px; border-bottom: 1px solid var(--rule); }
    .stars-intro h1 { max-width: 760px; font-size: clamp(54px, 7vw, 92px); }
    .stars-intro p { max-width: 660px; margin: 27px 0 0; color: var(--muted); font-size: 18px; line-height: 1.7; }
    .stars-section { max-width: 820px; padding: 62px 0; border-bottom: 1px solid var(--rule); }
    .stars-section h2 { margin: 0 0 34px; font-size: clamp(37px, 4.5vw, 58px); line-height: 1; letter-spacing: -.03em; }
    .star-definitions { margin: 0; }
    .star-definition { display: grid; grid-template-columns: minmax(90px, .28fr) minmax(0, 1fr); gap: 28px; padding: 24px 0; border-top: 1px solid var(--rule); }
    .star-definition:last-child { border-bottom: 1px solid var(--rule); }
    .star-definition dt { color: var(--accent); font-size: 21px; letter-spacing: .06em; }
    .star-definition dt span { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
    .star-definition dd { margin: 0; color: var(--soft-ink); font-family: "Newsreader", Georgia, serif; font-size: 24px; line-height: 1.4; }
    .scarcity { margin: 27px 0 0; color: var(--muted); font-size: 14px; }
    .stars-method { max-width: 700px; margin: 0; color: var(--soft-ink); font-size: 17px; line-height: 1.78; }
    .honor-entry { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 28px; align-items: baseline; padding: 25px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
    .honor-entry h3 { margin: 0; font-size: 29px; }
    .honor-entry .honor-star { color: var(--accent); font-size: 22px; }
    .honor-entry time { color: var(--muted); font-size: 13px; }
    .stars-back { display: inline-block; margin-top: 38px; color: var(--soft-ink); text-decoration: none; font-size: 14px; }
    .stars-back:hover, .stars-back:focus-visible { color: var(--accent); }

    footer { display: flex; justify-content: space-between; gap: 20px; padding-top: 26px; border-top: 1px solid var(--rule); color: var(--muted); font-size: 11px; line-height: 1.5; }
    .back { text-decoration: none; }
    .back:hover { color: var(--accent); }
    :focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
    @media (max-width: 1040px) {
      h1 { max-width: 900px; white-space: normal; }
      .regions-grid { grid-template-columns: repeat(2, 1fr); }
      .region:nth-child(3) { padding-left: 0; border-left: 0; }
      .builder { grid-template-columns: minmax(180px, .7fr) minmax(190px, .7fr) minmax(280px, 1.2fr); }
      .builder .builder-actions { grid-column: 3; }
      .article-shell { grid-template-columns: 145px minmax(0, 1fr); }
      .article-index { display: none; }
      .profile-shell { grid-template-columns: 145px minmax(0, 1fr); }
      .profile-directory { display: none; }
    }
    @media (max-width: 780px) {
      .page { padding-inline: 22px; }
      .topline { grid-template-columns: 1fr; gap: 24px; padding: 30px 0 25px; }
      .masthead { max-width: 190px; }
      .topline nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); justify-content: stretch; gap: 15px 22px; }
      .topline a { white-space: normal; }
      .hero { grid-template-columns: 1fr; gap: 26px; padding: 58px 0 68px; }
      .hero-dek { margin-top: 24px; }
      .hero-image { width: calc(100% - 32px); margin-top: 10px; }
      .hero-image img { aspect-ratio: 4 / 3; }
      .section { padding: 82px 0; }
      .section-head { grid-template-columns: 1fr; gap: 22px; margin-bottom: 44px; }
      .journal-feature { grid-template-columns: 1fr; gap: 34px; }
      .journal-notice, .stars-shell { grid-template-columns: 1fr; gap: 22px; }
      .methodology-grid { grid-template-columns: 1fr; gap: 40px; }
      .guide-answers { grid-template-columns: 1fr; }
      .answer, .answer + .answer { min-height: 0; padding: 24px 0 28px; border-left: 0; }
      .answer h4 { margin-top: 24px; }
      .builder { grid-template-columns: 1fr auto; gap: 10px 20px; align-items: start; }
      .builder .area, .builder .description { grid-column: 1 / -1; }
      .builder .builder-actions { grid-column: 2; grid-row: 1 / span 3; }
      .article-shell { grid-template-columns: 1fr; gap: 28px; padding-top: 84px; }
      .article-aside { position: static; display: flex; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--rule); }
      .profile-shell { grid-template-columns: 1fr; gap: 28px; }
      .profile-rail { position: static; display: flex; justify-content: space-between; gap: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--rule); }
      .profile-rail .section-label, .profile-rail p { margin: 0; }
    }
    @media (max-width: 560px) {
      .page { padding-inline: 16px; padding-bottom: 42px; }
      .topline { padding-top: 25px; }
      h1 { font-size: clamp(47px, 14vw, 70px); white-space: normal; }
      .edition { align-items: flex-start; gap: 13px; margin-top: 0; font-size: 11px; line-height: 1.4; }
      .edition::before { width: 34px; margin-top: 7px; }
      .hero { gap: 23px; padding: 48px 0 58px; }
      .hero-dek { font-size: 16px; line-height: 1.62; }
      .arrow-link { margin-top: 39px; }
      .hero-image { width: calc(100% - 26px); }
      .hero-image img { aspect-ratio: 4 / 5; object-position: 52% center; }
      figcaption { display: block; }
      figcaption span { display: block; margin-bottom: 3px; }
      .section { padding: 70px 0; }
      .section-head h2 { font-size: 47px; }
      .journal-feature h3 { font-size: 45px; }
      .builder-note { display: block; }
      .builder-note span { display: block; margin-top: 8px; }
      .builder { grid-template-columns: 1fr; padding: 24px 0 26px; }
      .builder .area, .builder .description, .builder .builder-actions { grid-column: 1; grid-row: auto; }
      .builder .builder-actions { margin-top: 8px; }
      .smart-grid, .regions-grid { grid-template-columns: 1fr; }
      .methodology-pledge { font-size: 38px; }
      .smart-card, .smart-card:nth-child(even), .region, .region + .region { min-height: 0; padding: 26px 0 31px; border-left: 0; }
      .smart-card h3, .region h3 { margin-top: 32px; }
      .article-shell { padding: 72px 0 64px; }
      article h2 { font-size: 47px; }
      .profile-view { padding: 64px 0 70px; }
      .profile-article h1 { font-size: 49px; }
      .profile-header { padding-bottom: 45px; }
      .profile-section { padding: 46px 0; }
      .stars-view { padding: 64px 0 72px; }
      .stars-intro { padding-bottom: 50px; }
      .stars-section { padding: 50px 0; }
      .star-definition { grid-template-columns: 1fr; gap: 10px; }
      .honor-entry { grid-template-columns: 1fr auto; gap: 8px 20px; }
      .honor-entry time { grid-column: 1 / -1; }
      .snapshot-row { grid-template-columns: 1fr; gap: 6px; }
      .fit-copy { font-size: 17px; }
      article .standfirst { font-size: 21px; }
      article h3 { font-size: 30px; }
      article p, article li { font-size: 16px; }
      blockquote { margin-inline: 0; padding-left: 20px; font-size: 27px; }
      footer { display: block; }
      footer p { margin: 7px 0; }
    }
    @media print {
      .topline, .hero, .hero-image, #builder-index, #watchlist, #journal, #methodology, footer, .article-aside, .article-index, .guide-answers { display: none; }
      .section { border: 0; padding: 0; }
      .section-head, .journal-feature figure, .journal-feature-copy .meta, .journal-feature-copy .summary, .journal-feature-copy .arrow-link { display: none; }
      .journal-feature { display: block; }
      .article-shell { display: block; padding: 0; border: 0; }
      body { background: white; color: black; }
      article { max-width: none; }
    }
    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      .arrow-link span, .profile-link span, .external-indicator { transition: none; }
    }
  