:root {
  --clm-ground: #ffffff;
  --clm-wash: #e8eff1;
  --clm-grey: #f3f3f1;
  --clm-ink: #20414e;
  --clm-text: #363e49;
  --clm-mute: #57606b;
  --clm-rule: #d3dee2;
  --clm-rule-firm: #8fa3ab;
  --clm-accent: #1d5a6e;
  --clm-mustard: #eaa72a;
  --clm-mustard-pale: #fbeccb;
  --clm-mustard-ink: #7a4f00;
  --clm-heather: #9a3459;
  --clm-heather-pale: #f6e3ea;
  --clm-foot: #16303a;
  --clm-foot-soft: #c4d4da;
  --clm-foot-link: #f3c463;
  --clm-foot-rule: #4f6c77;
  --clm-focus: #b8430d;
  --clm-focus-dark: #ffcf5c;
  --clm-face-head: 'Bitter', 'Rockwell', 'Roboto Slab', Georgia, serif;
  --clm-face-text: 'Asap', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  --clm-face-mono: ui-monospace, Menlo, Consolas, 'DejaVu Sans Mono', monospace;
  --clm-step-0: 17.6px;
  --clm-step-1: 22.9px;
  --clm-step-2: 29.7px;
  --clm-step-3: 38.7px;
  --clm-step-4: 50.3px;
  --clm-step-5: 65.3px;
  --clm-page: 1260px;
}

@font-face { font-family: "Bitter"; src: url("/assets/type/bitter-latin-var.woff2") format("woff2"); font-weight: 400 800; font-style: normal; font-display: swap; }
@font-face { font-family: "Asap"; src: url("/assets/type/asap-latin-var.woff2") format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Asap"; src: url("/assets/type/asap-italic-latin-var.woff2") format("woff2"); font-weight: 400 600; font-style: italic; font-display: swap; }

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; background: var(--clm-ground); color: var(--clm-text); font-family: var(--clm-face-text); font-size: 17.6px; line-height: 1.55; -webkit-font-smoothing: antialiased; overflow-wrap: break-word; }
h1, h2, h3, h4 { font-family: var(--clm-face-head); color: var(--clm-ink); margin: 0; }
p, ol, ul { margin: 0; }
a { color: var(--clm-ink); }
a:focus-visible, .clm-Button:focus-visible { outline: 3px solid var(--clm-focus); outline-offset: 2px; border-radius: 3px; }
time { white-space: nowrap; }
svg { display: block; }

.clm-Skip { position: absolute; left: 16px; top: -60px; z-index: 10; background: var(--clm-ink); color: #fff; padding: 10px 16px; border-radius: 0 0 8px 8px; font-weight: 700; text-decoration: none; }
.clm-Skip:focus { top: 0; outline: 3px solid var(--clm-focus-dark); }

.clm-Mast { max-width: var(--clm-page); margin: 0 auto; padding: 18px 16px 0; display: grid; grid-template-columns: 1fr auto; align-items: center; column-gap: 16px; }
.clm-Mast_Name { margin: 0; font-size: inherit; line-height: 1; }
.clm-Mast_Link { display: inline-grid; grid-template-columns: auto auto; align-items: center; column-gap: 12px; text-decoration: none; color: var(--clm-ink); padding: 4px 0; }
.clm-Mark { width: 44px; height: 44px; grid-row: span 2; }
.clm-Mark_Ground { fill: var(--clm-ink); }
.clm-Mark_Arch { stroke: var(--clm-mustard); }
.clm-Mark_Step { stroke: var(--clm-ground); }
.clm-Mast_Word { font-family: var(--clm-face-head); font-weight: 800; font-size: 29px; letter-spacing: -.02em; line-height: 1.05; }
.clm-Mast_Line { font-family: var(--clm-face-head); font-weight: 500; font-size: 14px; line-height: 1.25; color: var(--clm-ink); max-width: 13em; }
.clm-Mast_Button { display: none; justify-self: end; align-self: center; background: var(--clm-mustard); color: var(--clm-ink); text-decoration: none; font-weight: 700; font-size: 15px; line-height: 1.2; padding: 9px 14px; border-radius: 8px; white-space: nowrap; }
.clm-Mast_Button:hover { background: var(--clm-mustard-pale); }
.clm-Mast_Button[aria-current] { box-shadow: inset 0 0 0 2px var(--clm-ink); }

.clm-Sections { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 10px; margin-top: 16px; border-bottom: 3px solid var(--clm-ink); }
.clm-Sections_Item { position: relative; display: block; padding: 10px 2px 12px; text-decoration: none; color: var(--clm-ink); min-height: 24px; }
.clm-Sections_Item::after { content: ""; position: absolute; left: 0; right: 0; bottom: -3px; height: 3px; background: transparent; }
.clm-Sections_Item:hover::after, .clm-Sections_Item.clm-Sections_Item-within::after { background: var(--clm-rule-firm); }
.clm-Sections_Item.clm-Sections_Item-here::after { background: var(--clm-mustard); height: 6px; bottom: -6px; }
.clm-Sections_Name { display: block; font-size: 15px; font-weight: 700; line-height: 1.2; }
.clm-Sections_Name::before { content: ""; display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 7px; vertical-align: 1px; }
.clm-Sections_Name.clm-Sections_Name-mustard::before { background: var(--clm-mustard); }
.clm-Sections_Name.clm-Sections_Name-petrol::before { background: var(--clm-accent); }
.clm-Sections_Name.clm-Sections_Name-heather::before { background: var(--clm-heather); }
.clm-Sections_Note { display: none; }

.clm-Kicker { font-size: 13.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; line-height: 1.3; }
.clm-Kicker a { text-decoration: none; display: inline-block; padding: 3px 0; }
.clm-Kicker a:hover { text-decoration: underline; }
.clm-Kicker.clm-Kicker-mustard, .clm-Kicker.clm-Kicker-mustard a { color: var(--clm-mustard-ink); }
.clm-Kicker.clm-Kicker-petrol, .clm-Kicker.clm-Kicker-petrol a { color: var(--clm-accent); }
.clm-Kicker.clm-Kicker-heather, .clm-Kicker.clm-Kicker-heather a { color: var(--clm-heather); }
.clm-Glyph { width: 56%; height: auto; max-width: 72px; }
.clm-Button { display: inline-block; background: var(--clm-mustard); color: var(--clm-ink); font-weight: 700; font-size: 16px; text-decoration: none; padding: 10px 18px; border-radius: 8px; line-height: 1.2; }
.clm-Button:hover { background: var(--clm-mustard-pale); }
.clm-Button.clm-Button-line { background: transparent; color: var(--clm-ink); box-shadow: inset 0 0 0 2px var(--clm-ink); }
.clm-Button.clm-Button-line:hover { background: var(--clm-ink); color: #fff; }

.clm-Row_Tile, .clm-Column_Tile, .clm-Entry_Tile, .clm-Shelf_Tile { display: grid; place-items: center; border-radius: 14px; }
.clm-Row_Tile.clm-Row_Tile-mustard, .clm-Column_Tile.clm-Column_Tile-mustard, .clm-Entry_Tile.clm-Entry_Tile-mustard, .clm-Shelf_Tile.clm-Shelf_Tile-mustard, .clm-Cover_Tile.clm-Cover_Tile-mustard, .clm-Banner.clm-Banner-mustard { background: var(--clm-mustard); color: var(--clm-ink); }
.clm-Row_Tile.clm-Row_Tile-petrol, .clm-Column_Tile.clm-Column_Tile-petrol, .clm-Entry_Tile.clm-Entry_Tile-petrol, .clm-Shelf_Tile.clm-Shelf_Tile-petrol, .clm-Cover_Tile.clm-Cover_Tile-petrol, .clm-Banner.clm-Banner-petrol { background: var(--clm-ink); color: var(--clm-mustard); }
.clm-Row_Tile.clm-Row_Tile-heather, .clm-Column_Tile.clm-Column_Tile-heather, .clm-Entry_Tile.clm-Entry_Tile-heather, .clm-Shelf_Tile.clm-Shelf_Tile-heather, .clm-Cover_Tile.clm-Cover_Tile-heather, .clm-Banner.clm-Banner-heather { background: var(--clm-heather); color: var(--clm-heather-pale); }

.clm-Row_Tile.clm-Row_Tile-mustard { background: var(--clm-mustard-pale); color: var(--clm-ink); box-shadow: inset 0 -6px 0 var(--clm-mustard); }
.clm-Row_Tile.clm-Row_Tile-petrol { background: var(--clm-wash); color: var(--clm-ink); box-shadow: inset 0 -6px 0 var(--clm-ink); }
.clm-Row_Tile.clm-Row_Tile-heather { background: var(--clm-heather-pale); color: var(--clm-heather); box-shadow: inset 0 -6px 0 var(--clm-heather); }

.clm-Close { display: block; }
.clm-Cover { max-width: var(--clm-page); margin: 22px auto 0; padding: 0 16px; display: grid; }
.clm-Cover_Tile { position: relative; overflow: hidden; display: grid; place-items: center; height: 150px; border-radius: 18px 18px 0 0; }
.clm-Cover_Disc { position: absolute; width: 180px; height: 180px; right: -60px; top: -70px; border-radius: 50%; background: var(--clm-ink); }
.clm-Cover_Arch { position: absolute; width: 130px; height: 150px; left: 22px; bottom: -70px; border-radius: 65px 65px 0 0; background: var(--clm-ground); opacity: .35; }
.clm-Glyph.clm-Glyph-cover { position: relative; width: 104px; max-width: none; }
.clm-Cover_Tile.clm-Cover_Tile-petrol .clm-Cover_Disc { background: var(--clm-mustard); }
.clm-Cover_Tile.clm-Cover_Tile-heather .clm-Cover_Disc { background: var(--clm-ink); }
.clm-Cover_Card { background: var(--clm-wash); border-radius: 0 0 18px 18px; padding: 20px 20px 22px; }
.clm-Cover_Kicker { margin-bottom: 6px; }
.clm-Cover_Title { font-size: 27px; font-weight: 800; line-height: 1.14; letter-spacing: -.015em; }
.clm-Cover_Title a { text-decoration: none; }
.clm-Cover_Title a:hover { text-decoration: underline; text-decoration-color: var(--clm-mustard); text-decoration-thickness: 3px; }
.clm-Cover_Dek { margin-top: 10px; font-size: 17px; line-height: 1.5; color: var(--clm-text); }
.clm-Cover_Dek p + p { margin-top: .6em; }
.clm-Cover_Meta { margin-top: 12px; font-size: 15px; font-weight: 700; color: var(--clm-ink); }

.clm-Pair { max-width: var(--clm-page); margin: 0 auto; padding: 36px 16px 8px; display: grid; gap: 36px; }
.clm-Rubric { font-family: var(--clm-face-text); font-size: 18px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--clm-ink); padding-bottom: 10px; border-bottom: 1px solid var(--clm-rule); position: relative; }
.clm-Rubric::after { content: ""; position: absolute; left: 0; bottom: -1px; width: 64px; height: 3px; background: var(--clm-mustard); }
.clm-Rows { list-style: none; padding: 0; }
.clm-Row { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 14px; padding: 20px 0; border-bottom: 1px solid var(--clm-rule); }
.clm-Row:last-child { border-bottom: 0; }
.clm-Row_Tile { width: 76px; height: 76px; border-radius: 12px; }
.clm-Row_Title { font-size: 20px; font-weight: 700; line-height: 1.22; letter-spacing: -.01em; }
.clm-Row_Title a { text-decoration: none; padding: 2px 0; }
.clm-Row_Title a:hover { text-decoration: underline; text-decoration-color: var(--clm-mustard); text-decoration-thickness: 2px; }
.clm-Row_Dek { grid-column: 1 / -1; margin-top: 8px; font-size: 16.5px; line-height: 1.5; color: var(--clm-text); }
.clm-Row_Body { display: contents; }
.clm-Row_Dek a { color: var(--clm-accent); text-decoration-color: var(--clm-mustard); text-decoration-thickness: 2px; }
.clm-Row_Meta { grid-column: 1 / -1; margin-top: 12px; padding-top: 10px; display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; font-size: 15px; font-weight: 700; color: var(--clm-ink); position: relative; }
.clm-Row_Meta::before { content: ""; position: absolute; left: 0; top: 0; width: 48px; height: 2px; background: var(--clm-mustard); }

.clm-Side { display: grid; gap: 22px; align-content: start; }
.clm-Card { border-radius: 16px; padding: 24px 22px; }
.clm-Card.clm-Card-petrol { background: var(--clm-ink); color: #fff; }
.clm-Card.clm-Card-heather { background: var(--clm-heather); color: #fff; }
.clm-Card.clm-Card-mustard { background: var(--clm-mustard-pale); color: var(--clm-ink); box-shadow: inset 6px 0 0 var(--clm-mustard); }
.clm-Card.clm-Card-wash { background: var(--clm-wash); }
.clm-Card.clm-Card-line { box-shadow: inset 0 0 0 1px var(--clm-rule); }
.clm-Card_Title { font-size: 21px; font-weight: 700; line-height: 1.25; margin-bottom: 12px; }
.clm-Card.clm-Card-petrol .clm-Card_Title, .clm-Card.clm-Card-heather .clm-Card_Title { color: #fff; }
.clm-Card_Text { font-size: 16px; line-height: 1.55; }
.clm-Card_Way { margin-top: 18px; }
.clm-Card.clm-Card-petrol a:focus-visible, .clm-Card.clm-Card-heather a:focus-visible { outline-color: var(--clm-focus-dark); }
.clm-Card_Label { font-size: 13.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--clm-mustard-ink); margin-bottom: 6px; }
.clm-Card_Head { font-family: var(--clm-face-head); font-size: 20px; font-weight: 700; line-height: 1.25; margin-bottom: 8px; }
.clm-Card_Head a { text-decoration: none; }
.clm-Card_Head a:hover { text-decoration: underline; }
.clm-Card_List { padding: 0; list-style: none; display: grid; gap: 12px; }
.clm-Card_List li { display: grid; gap: 2px; font-size: 16px; line-height: 1.35; }
.clm-Card_List a { font-weight: 600; text-decoration: none; display: inline-block; padding: 3px 0; }
.clm-Card_List a:hover { text-decoration: underline; }
.clm-Card_When { font-size: 14px; color: var(--clm-mute); }
.clm-Card.clm-Card-heather .clm-Card_List { counter-reset: start; gap: 14px; }
.clm-Card.clm-Card-heather .clm-Card_List li { counter-increment: start; padding-left: 40px; position: relative; }
.clm-Card.clm-Card-heather .clm-Card_List li::before { content: counter(start); position: absolute; left: 0; top: -2px; font-family: var(--clm-face-head); font-weight: 800; font-size: 26px; line-height: 1; color: var(--clm-heather-pale); }
.clm-Card.clm-Card-heather a { color: #fff; }
.clm-Card.clm-Card-heather .clm-Card_When { color: var(--clm-heather-pale); }
.clm-Card_Item.clm-Card_Item-here span:first-child { font-weight: 700; color: var(--clm-ink); }

.clm-Columns { background: var(--clm-wash); margin-top: 44px; padding: 40px 0 44px; }
.clm-Columns_Inner { max-width: var(--clm-page); margin: 0 auto; padding: 0 16px; }
.clm-Columns_Grid { display: grid; gap: 18px; margin-top: 22px; }
.clm-Column { background: var(--clm-ground); border-radius: 16px; padding: 22px 20px 24px; display: flex; flex-direction: column; }
.clm-Column_Head { display: flex; align-items: center; gap: 14px; }
.clm-Column_Tile { width: 48px; height: 48px; flex: none; border-radius: 12px; }
.clm-Glyph.clm-Glyph-small { width: 30px; max-width: none; }
.clm-Column_Title { font-size: 22px; font-weight: 700; line-height: 1.2; }
.clm-Column_Title a { text-decoration: none; }
.clm-Column_Title a:hover { text-decoration: underline; }
.clm-Column_Note { margin-top: 10px; font-size: 15.5px; color: var(--clm-mute); }
.clm-Column_First { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--clm-rule); }
.clm-Column_Lead { font-size: 19px; font-weight: 700; line-height: 1.25; }
.clm-Column_Lead a { text-decoration: none; padding: 2px 0; }
.clm-Column_Lead a:hover { text-decoration: underline; }
.clm-Column_Dek { margin-top: 6px; font-size: 15.5px; line-height: 1.5; }
.clm-Column_Dek a { color: var(--clm-accent); }
.clm-Column_When { display: block; margin-top: 4px; font-size: 14px; font-weight: 700; color: var(--clm-mute); }
.clm-Column_List { list-style: none; padding: 0; margin-top: 14px; display: grid; gap: 12px; }
.clm-Column_List li { padding-top: 12px; border-top: 1px solid var(--clm-rule); font-size: 16px; line-height: 1.35; }
.clm-Column_List a { font-weight: 600; text-decoration: none; display: inline-block; padding: 3px 0; }
.clm-Column_List a:hover { text-decoration: underline; }
.clm-Column_Way { margin-top: auto; padding-top: 20px; }

.clm-Band { background: var(--clm-grey); padding: 44px 0 48px; }
.clm-Band_Inner { max-width: var(--clm-page); margin: 0 auto; padding: 0 16px; }
.clm-Band_Title { font-size: 30px; font-weight: 800; letter-spacing: -.015em; margin-bottom: 14px; }
.clm-Prose.clm-Prose-band { max-width: 46rem; }

.clm-Prose { font-size: 18px; line-height: 1.7; color: var(--clm-text); }
.clm-Prose > * + * { margin-top: 1em; }
.clm-Prose h2 { font-size: 25px; font-weight: 700; line-height: 1.25; margin-top: 1.6em; }
.clm-Prose h3 { font-size: 21px; font-weight: 700; line-height: 1.3; margin-top: 1.4em; }
.clm-Prose a { color: var(--clm-accent); text-decoration-color: var(--clm-mustard); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.clm-Prose a:hover { color: var(--clm-ink); text-decoration-color: var(--clm-ink); }
.clm-Prose ul, .clm-Prose ol { padding-left: 1.3em; }
.clm-Prose li + li { margin-top: .4em; }
.clm-Prose blockquote { margin: 1.4em 0; padding: 4px 0 4px 20px; border-left: 4px solid var(--clm-mustard); font-style: italic; font-size: 19px; color: var(--clm-ink); }
.clm-Prose strong { color: var(--clm-ink); }
.clm-Prose code { font-family: var(--clm-face-mono); font-size: .9em; white-space: pre-wrap; }
.clm-Prose hr { border: 0; border-top: 1px solid var(--clm-rule); margin: 2em 0; }
.clm-Table_Wrap { overflow-x: auto; margin: 1.4em 0; }
.clm-Prose table { border-collapse: collapse; width: 100%; font-size: 16px; line-height: 1.45; }
.clm-Prose th { background: var(--clm-ink); color: #fff; text-align: left; padding: 9px 12px; font-weight: 700; }
.clm-Prose td { padding: 9px 12px; border-bottom: 1px solid var(--clm-rule); vertical-align: top; }
.clm-Prose tr:nth-child(even) td { background: var(--clm-grey); }
.clm-Table_Wrap:focus-visible { outline: 3px solid var(--clm-focus); outline-offset: 2px; }

.clm-Story_Wrap { max-width: var(--clm-page); margin: 0 auto; padding: 24px 16px 8px; display: grid; gap: 36px; }
.clm-Story { min-width: 0; }
.clm-Crumbs { font-size: 15px; display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; margin-bottom: 14px; }
.clm-Crumbs a { color: var(--clm-accent); text-decoration-color: var(--clm-rule-firm); padding: 3px 0; }
.clm-Crumbs_Sep { color: var(--clm-mute); }
.clm-Story_Title { font-size: 31px; font-weight: 800; line-height: 1.13; letter-spacing: -.018em; }
.clm-Story_Dek { margin-top: 14px; font-size: 19.5px; line-height: 1.5; color: var(--clm-mute); max-width: 44rem; }
.clm-Story_Meta { margin-top: 18px; padding-top: 12px; display: flex; flex-wrap: wrap; gap: 4px 14px; align-items: baseline; font-size: 15px; font-weight: 700; color: var(--clm-ink); position: relative; }
.clm-Story_Meta::before { content: ""; position: absolute; left: 0; top: 0; width: 56px; height: 3px; background: var(--clm-mustard); }
.clm-Banner { position: relative; overflow: hidden; display: grid; place-items: center; height: 130px; border-radius: 18px; margin: 24px 0 28px; }
.clm-Banner_Disc { position: absolute; width: 220px; height: 220px; right: -70px; bottom: -120px; border-radius: 50%; background: var(--clm-ground); opacity: .22; }
.clm-Glyph.clm-Glyph-banner { position: relative; width: 84px; max-width: none; }
.clm-Story .clm-Prose { max-width: 44rem; }
.clm-Story.clm-Story-plain { max-width: 48rem; margin: 0 auto; padding: 24px 16px 8px; }
.clm-Story.clm-Story-plain .clm-Prose { margin-top: 26px; }
.clm-Side.clm-Side-story { align-content: start; }

.clm-Shelf { max-width: calc(var(--clm-page) - 32px); margin: 22px auto 0; padding: 24px 20px; background: var(--clm-wash); border-radius: 18px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: start; box-sizing: border-box; }
.clm-Shelf { margin-left: 16px; margin-right: 16px; }
.clm-Shelf_Kicker { font-size: 13.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--clm-heather); margin-bottom: 6px; }
.clm-Shelf_Title { font-size: 34px; font-weight: 800; line-height: 1.1; letter-spacing: -.02em; }
.clm-Shelf_Dek { margin-top: 10px; font-size: 18px; color: var(--clm-text); max-width: 40rem; }
.clm-Shelf_Tally { margin-top: 12px; font-size: 15px; font-weight: 700; color: var(--clm-ink); }
.clm-Shelf_Tile { width: 64px; height: 64px; border-radius: 14px; }
.clm-Glyph.clm-Glyph-shelf { width: 40px; max-width: none; }
.clm-Listing { max-width: 50rem; margin: 0 auto; padding: 26px 16px 16px; }
.clm-Prose.clm-Prose-intro { margin-bottom: 12px; }
.clm-Year { margin-top: 30px; }
.clm-Year_Title { font-size: 26px; font-weight: 800; padding-bottom: 8px; border-bottom: 3px solid var(--clm-ink); }
.clm-Entries { list-style: none; padding: 0; }
.clm-Entry { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--clm-rule); }
.clm-Entry_Tile { width: 44px; height: 44px; border-radius: 10px; }
.clm-Entry_Tile .clm-Glyph.clm-Glyph-small { width: 28px; }
.clm-Entry_Body { display: grid; gap: 4px; }
.clm-Entry_Title { font-family: var(--clm-face-head); font-weight: 700; font-size: 19.5px; line-height: 1.25; text-decoration: none; color: var(--clm-ink); justify-self: start; }
.clm-Entry_Title:hover { text-decoration: underline; text-decoration-color: var(--clm-mustard); }
.clm-Entry_Dek { font-size: 16px; line-height: 1.5; }
.clm-Entry_Meta { display: flex; flex-wrap: wrap; gap: 2px 12px; font-size: 14.5px; font-weight: 700; color: var(--clm-mute); }
.clm-Lost { max-width: 48rem; margin: 30px auto 0; padding: 0 16px; }

.clm-Foot { margin-top: 56px; background: var(--clm-foot); color: var(--clm-foot-soft); border-top: 6px solid var(--clm-mustard); padding: 34px 16px 40px; display: grid; gap: 24px; }
.clm-Foot > * { max-width: calc(var(--clm-page) - 32px); width: 100%; margin: 0 auto; box-sizing: border-box; }
.clm-Foot_Name { display: grid; grid-template-columns: auto 1fr; column-gap: 12px; align-items: center; align-self: start; align-content: start; }
.clm-Mark.clm-Mark-foot { grid-row: span 2; width: 40px; height: 40px; }
.clm-Mark.clm-Mark-foot .clm-Mark_Ground { fill: var(--clm-ground); }
.clm-Mark.clm-Mark-foot .clm-Mark_Arch { stroke: var(--clm-foot); }
.clm-Mark.clm-Mark-foot .clm-Mark_Step { stroke: var(--clm-mustard); }
.clm-Foot_Name b { font-family: var(--clm-face-head); font-weight: 800; font-size: 24px; color: #fff; line-height: 1.1; }
.clm-Foot_Name small { font-size: 15px; }
.clm-Foot_Group { display: flex; flex-wrap: wrap; gap: 4px 22px; align-items: baseline; }
.clm-Foot_Group strong { flex-basis: 100%; font-size: 13.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--clm-foot-link); margin-bottom: 4px; }
.clm-Foot_Group a { color: #fff; text-decoration-color: var(--clm-foot-rule); text-underline-offset: 3px; padding: 4px 0; font-size: 16px; }
.clm-Foot_Group a:hover { text-decoration-color: var(--clm-mustard); }
.clm-Foot a:focus-visible { outline-color: var(--clm-focus-dark); }

@media (min-width: 600px) {
  .clm-Mast { padding-top: 24px; }
  .clm-Mark { width: 52px; height: 52px; }
  .clm-Mast_Word { font-size: 36px; }
  .clm-Mast_Line { font-size: 15.5px; }
  .clm-Mast_Button { display: inline-block; }
  .clm-Sections_Note { display: block; margin-top: 3px; font-size: 14px; color: var(--clm-mute); line-height: 1.35; }
  .clm-Sections_Name { font-size: 18px; }
  .clm-Row { grid-template-columns: 200px minmax(0, 1fr); gap: 26px; padding: 26px 0; }
  .clm-Row_Body { display: block; }
  .clm-Row_Tile { width: 200px; height: 136px; border-radius: 14px; }
  .clm-Row_Tile .clm-Glyph { width: 64px; max-width: none; }
  .clm-Row_Title { font-size: 23px; }
  .clm-Cover_Tile { height: 220px; }
  .clm-Glyph.clm-Glyph-cover { width: 150px; }
  .clm-Cover_Card { padding: 30px 32px 32px; }
  .clm-Cover_Title { font-size: 34px; }
  .clm-Columns_Grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .clm-Column:last-child:nth-child(odd) { grid-column: 1 / -1; }
  .clm-Story_Title { font-size: 38px; }
  .clm-Banner { height: 190px; }
  .clm-Glyph.clm-Glyph-banner { width: 116px; }
  .clm-Shelf { padding: 34px 36px; }
  .clm-Shelf_Title { font-size: 44px; }
  .clm-Shelf_Tile { width: 120px; height: 120px; border-radius: 18px; }
  .clm-Glyph.clm-Glyph-shelf { width: 76px; }
  .clm-Foot { grid-template-columns: 1fr; }
}

@media (min-width: 864px) {
  .clm-Mast { padding: 30px 24px 0; grid-template-columns: auto 1fr auto; }
  .clm-Mast_Link { grid-template-columns: auto auto auto; column-gap: 18px; }
  .clm-Mark { grid-row: auto; width: 60px; height: 60px; }
  .clm-Mast_Word { font-size: 44px; }
  .clm-Mast_Line { max-width: 13em; font-size: 17px; padding-left: 18px; border-left: 3px solid var(--clm-mustard); }
  .clm-Mast_Button { grid-column: 3; font-size: 16px; padding: 12px 20px; }
  .clm-Sections { margin-top: 26px; gap: 0 28px; }
  .clm-Sections_Item { padding: 14px 0 16px; }
  .clm-Sections_Name { font-size: 21px; }
  .clm-Sections_Note { font-size: 15px; }
  .clm-Cover { padding: 0 24px; margin-top: 30px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .clm-Cover_Tile { order: 2; height: auto; min-height: 400px; border-radius: 0 18px 18px 0; }
  .clm-Cover_Disc { width: 300px; height: 300px; right: auto; left: -110px; top: -120px; }
  .clm-Cover_Arch { width: 200px; height: 240px; left: auto; right: 48px; bottom: -110px; border-radius: 100px 100px 0 0; }
  .clm-Glyph.clm-Glyph-cover { width: 210px; }
  .clm-Cover_Card { order: 1; border-radius: 18px 0 0 18px; padding: 52px 56px; display: flex; flex-direction: column; justify-content: center; }
  .clm-Cover_Title { font-size: 44px; }
  .clm-Cover_Dek { font-size: 19px; margin-top: 16px; }
  .clm-Pair { padding: 52px 24px 8px; grid-template-columns: minmax(0, 1fr) 340px; gap: 56px; }
  .clm-Side { padding-top: 46px; }
  .clm-Rubric { font-size: 20px; }
  .clm-Row { grid-template-columns: 250px minmax(0, 1fr); gap: 34px; padding: 30px 0; }
  .clm-Row_Tile { width: 250px; height: 166px; }
  .clm-Row_Tile .clm-Glyph { width: 76px; }
  .clm-Row_Title { font-size: 26px; }
  .clm-Row_Dek { font-size: 17px; }
  .clm-Card { padding: 28px 26px; }
  .clm-Columns { margin-top: 56px; padding: 56px 0 60px; }
  .clm-Columns_Inner { padding: 0 24px; }
  .clm-Columns_Grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; margin-top: 28px; }
  .clm-Column:last-child:nth-child(odd) { grid-column: auto; }
  .clm-Column { padding: 28px 26px 28px; }
  .clm-Band { padding: 60px 0 64px; }
  .clm-Band_Inner { padding: 0 24px; display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 48px; }
  .clm-Band_Title { font-size: 38px; }
  .clm-Story_Wrap { padding: 34px 24px 8px; grid-template-columns: minmax(0, 1fr) 320px; gap: 64px; }
  .clm-Story_Title { font-size: 46px; }
  .clm-Story_Dek { font-size: 21px; }
  .clm-Banner { height: 230px; }
  .clm-Glyph.clm-Glyph-banner { width: 132px; }
  .clm-Side.clm-Side-story { padding-top: 40px; }
  .clm-Shelf { margin: 30px 24px 0; padding: 46px 52px; max-width: calc(var(--clm-page) - 48px); }
  .clm-Shelf_Title { font-size: 54px; }
  .clm-Shelf_Tile { width: 168px; height: 168px; }
  .clm-Glyph.clm-Glyph-shelf { width: 104px; }
  .clm-Listing { padding-top: 34px; }
  .clm-Foot { padding: 46px 24px 52px; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1fr); column-gap: 40px; }
  .clm-Foot > * { max-width: none; margin: 0; }
  .clm-Foot { padding-left: max(24px, calc((100% - var(--clm-page)) / 2 + 24px)); padding-right: max(24px, calc((100% - var(--clm-page)) / 2 + 24px)); }
  .clm-Foot_Group { flex-direction: column; gap: 6px; }
  .clm-Foot_Group strong { flex-basis: auto; }
}

@media (min-width: 1260px) {
  .clm-Shelf { margin-left: auto; margin-right: auto; }
}

@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; }
}
