@layer reset, base, parts, pages;
@layer reset {
  *, *::before, *::after { box-sizing: border-box; }
  html { -webkit-text-size-adjust: 100%; }
  body, h1, h2, h3, h4, p, ul, ol, figure, blockquote, dl, dd { margin: 0; }
  ul[class], ol[class] { list-style: none; padding: 0; }
  img { display: block; max-inline-size: 100%; block-size: auto; }
  button, select { font: inherit; }
}
@layer base {
  :root {
    --sr-ink: #0b0202; --sr-coal: #1b1414; --sr-red: #cc1e14; --sr-red-deep: #8e140d; --sr-steel: #39414a;
    --sr-mute: #5d6066; --sr-line: #dedcd8; --sr-floor: #f3f2ef; --sr-paper: #fff;
    --sr-plate-y: #d8c418; --sr-plate-b: #1860a8; --sr-plate-g: #2f7d4f;
    --sr-shell: 1240px; --sr-pad: clamp(16px, 3vw, 28px); --sr-r: 4px;
    --sr-head: "Archivo", "Arial Narrow", Arial, sans-serif; --sr-body: "Public Sans", "Segoe UI", Arial, sans-serif;
  }
  body { font-family: var(--sr-body); font-size: 16px; line-height: 1.6; color: var(--sr-ink); background: var(--sr-paper); overflow-x: hidden; }
  h1, h2, h3, h4 { font-family: var(--sr-head); line-height: 1.12; letter-spacing: -.01em; }
  h1 { font-size: clamp(30px, 4.6vw, 54px); font-weight: 800; letter-spacing: -.025em; }
  h2 { font-size: clamp(23px, 2.6vw, 34px); font-weight: 800; }
  h3 { font-size: 18px; font-weight: 700; }
  a { color: inherit; }
  p + p { margin-block-start: .9em; }
  .shell { max-inline-size: var(--sr-shell); margin-inline: auto; padding-inline: var(--sr-pad); }
}
@layer parts {
  /* шапка: белая строка с гербом + чёрная полоса разделов (sportsroyals.net) */
  .crown { background: var(--sr-paper); border-block-end: 1px solid var(--sr-line); }
  .crown__row { display: flex; align-items: center; gap: 18px; min-block-size: 76px; }
  .crown__mark { display: flex; align-items: center; gap: 12px; text-decoration: none; margin-inline-end: auto; }
  .crown__mark img:first-child { inline-size: 46px; }
  .crown__mark img:last-child { inline-size: 168px; }
  .crown__cta { inline-size: 210px; }
  .crown__menu { display: none; background: none; border: 1px solid var(--sr-ink); border-radius: var(--sr-r); padding: 8px 12px; font-weight: 700; cursor: pointer; }
  .lanes { background: var(--sr-ink); }
  .lanes ul { display: flex; flex-wrap: wrap; gap: 0 2px; }
  .lanes a { display: block; padding: 14px 9px; color: #fff; text-decoration: none; font-family: var(--sr-head); font-weight: 700; font-size: 13px; text-transform: uppercase; }
  .lanes a:hover, .lanes a[aria-current] { color: #fff; box-shadow: inset 0 -3px 0 var(--sr-red); }
  .ticker { background: var(--sr-red); color: #fff; font-size: 13px; text-align: center; padding: 7px var(--sr-pad); font-weight: 600; }
  /* штамп */
  .gear { display: inline-block; padding: 0; border: 0; background: none; line-height: 0; cursor: pointer; inline-size: min(300px, 100%); transition: transform .15s; }
  .gear:hover { transform: translateY(-2px); }
  .gear:focus-visible { outline: 3px solid var(--sr-plate-b); outline-offset: 3px; }
  .gear img { inline-size: 100%; }
  .gear--wide { inline-size: 100%; }
  /* хлебные крошки */
  .path { font-size: 13px; color: var(--sr-mute); padding-block: 14px; }
  .path a { color: var(--sr-ink); text-decoration: none; display: inline-block; padding-block: 6px; }
  .path a:hover { text-decoration: underline; }
  .path i { font-style: normal; margin-inline: 6px; }
  /* звёзды */
  .stars { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: var(--sr-mute); }
  .stars__bar { position: relative; inline-size: 84px; block-size: 15px; background: linear-gradient(90deg, var(--sr-red) var(--w), #cfcac4 var(--w));
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 84 15'%3E%3Cg%3E%3Cpath id='s' d='M7.5 0l2.2 4.8 5.3.6-3.9 3.6 1 5.2-4.6-2.6-4.6 2.6 1-5.2L0 5.4l5.3-.6z'/%3E%3Cuse href='%23s' x='17'/%3E%3Cuse href='%23s' x='34'/%3E%3Cuse href='%23s' x='51'/%3E%3Cuse href='%23s' x='68'/%3E%3C/g%3E%3C/svg%3E") no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 84 15'%3E%3Cg%3E%3Cpath id='s' d='M7.5 0l2.2 4.8 5.3.6-3.9 3.6 1 5.2-4.6-2.6-4.6 2.6 1-5.2L0 5.4l5.3-.6z'/%3E%3Cuse href='%23s' x='17'/%3E%3Cuse href='%23s' x='34'/%3E%3Cuse href='%23s' x='51'/%3E%3Cuse href='%23s' x='68'/%3E%3C/g%3E%3C/svg%3E") no-repeat; }
  .stars b { color: var(--sr-ink); }
  /* карточка товара (fedfitness: серая плита, текст по центру) */
  .rackgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
  .unit { display: flex; flex-direction: column; background: var(--sr-floor); border-radius: var(--sr-r); padding: 14px; text-align: center; }
  .unit__pic { display: block; position: relative; background: #fff; border-radius: 2px; aspect-ratio: 1; overflow: hidden; }
  .unit__pic img { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; object-fit: contain; }
  .unit__lane { margin-block-start: 12px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--sr-mute); }
  .unit__name { font-family: var(--sr-head); font-size: 16px; font-weight: 700; line-height: 1.3; margin-block: 4px 6px; }
  .unit__name a { text-decoration: none; }
  .unit__name a:hover { color: var(--sr-red); }
  .unit__note { font-size: 13px; color: var(--sr-mute); }
  .unit__cost { font-family: var(--sr-head); font-weight: 800; font-size: 19px; margin-block: 8px 12px; }
  .unit .gear { margin-block-start: auto; }
  .unit .stars { justify-content: center; }
  /* FAQ (sportsroyals.net: тёмная панель + список) */
  .huddle { display: grid; grid-template-columns: 5fr 7fr; gap: 22px; align-items: start; }
  .huddle__quick { background: var(--sr-ink); color: #fff; padding: 28px; border-radius: var(--sr-r); }
  .huddle__quick h3 { font-size: 24px; margin-block-end: 10px; }
  .huddle__quick p { color: #e6dedc; margin-block-end: 18px; }
  .ask { border: 1px solid var(--sr-line); border-radius: var(--sr-r); background: #fff; }
  .ask + .ask { margin-block-start: 10px; }
  .ask summary { cursor: pointer; list-style: none; padding: 16px 48px 16px 18px; font-weight: 700; font-family: var(--sr-head); position: relative; }
  .ask summary::-webkit-details-marker { display: none; }
  .ask summary::after { content: "+"; position: absolute; inset-inline-end: 18px; inset-block-start: 13px; font-size: 22px; color: var(--sr-red); }
  .ask[open] summary::after { content: "\2212"; }
  .ask p { padding: 0 18px 16px; color: #33302e; }
  /* отзывы */
  .voices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .voice { border-block-start: 3px solid var(--sr-red); background: var(--sr-floor); padding: 18px; }
  .voice__t { font-family: var(--sr-head); font-weight: 700; margin-block: 8px 6px; }
  .voice blockquote p { font-size: 15px; color: #2d2a28; }
  .voice figcaption { margin-block-start: 12px; font-size: 13px; color: var(--sr-mute); }
  .voice figcaption a { color: var(--sr-ink); }
  /* таблица целей (sportsroyals.net) */
  .goaltable { inline-size: 100%; border-collapse: collapse; background: #fff; font-size: 15px; }
  .goaltable th { background: var(--sr-ink); color: #fff; text-align: start; font-family: var(--sr-head); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; padding: 12px 16px; }
  .goaltable td { padding: 13px 16px; border-block-end: 1px solid var(--sr-line); vertical-align: top; }
  .goaltable td:first-child { font-weight: 700; }
  .goaltable a { color: var(--sr-red-deep); font-weight: 600; }
  /* подвал */
  .bench { background: var(--sr-ink); color: #d9d2cf; margin-block-start: 64px; }
  .bench__top { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 28px; padding-block: 48px 30px; }
  .bench h2 { font-size: 13px; color: #fff; text-transform: uppercase; letter-spacing: .08em; margin-block-end: 14px; }
  .bench ul a, .bench address a { color: #d9d2cf; text-decoration: none; display: inline-block; padding-block: 4px; font-size: 15px; }
  .bench ul a:hover { color: #fff; }
  .bench address { font-style: normal; font-size: 15px; line-height: 1.7; }
  .bench__brand img { inline-size: 64px; margin-block-end: 14px; filter: invert(1); }
  .bench__brand p { font-size: 15px; }
  .bench__strip { border-block-start: 1px solid #2c2322; padding-block: 18px; display: flex; flex-wrap: wrap; gap: 10px 24px; justify-content: space-between; align-items: center; font-size: 13px; color: #a69a97; }
  .bench__strip img { inline-size: 150px; filter: invert(1); opacity: .8; }
  /* нижняя полоса на телефоне */
  .dock { position: fixed; inset-inline: 0; inset-block-end: 0; z-index: 30; display: none; align-items: center; gap: 12px; background: var(--sr-ink); color: #fff;
    padding: 10px var(--sr-pad) calc(10px + env(safe-area-inset-bottom)); }
  .dock__txt { flex: 1; min-inline-size: 0; font-size: 13px; line-height: 1.3; }
  .dock__txt b { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .dock .gear { inline-size: 180px; flex: none; }
  .btn-line { display: inline-block; padding: 11px 22px; border: 2px solid var(--sr-ink); border-radius: var(--sr-r); text-decoration: none; font-family: var(--sr-head); font-weight: 700; font-size: 15px; }
  .btn-line:hover { background: var(--sr-ink); color: #fff; }
  .btn-line--light { border-color: #fff; color: #fff; }
  .btn-line--light:hover { background: #fff; color: var(--sr-ink); }
  .kick { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--sr-red-deep); margin-block-end: 10px; }
  .sect { padding-block: 48px; }
  .sect--floor { background: var(--sr-floor); }
  .sect__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 10px 24px; margin-block-end: 22px; }
  .sect__head p { color: var(--sr-mute); max-inline-size: 640px; }
  .sect__head a { font-weight: 700; color: var(--sr-red-deep); }
}
@layer pages {
  /* главная: хиро (sportsroyals.net) */
  .opener { background: var(--sr-floor); padding-block: 44px; }
  .opener__grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 34px; align-items: center; }
  .opener__lede { font-size: 18px; color: #3d3836; margin-block: 18px 20px; max-inline-size: 560px; }
  .chips { display: flex; flex-wrap: wrap; gap: 8px; margin-block-end: 22px; }
  .chips a { display: inline-block; padding: 8px 14px; background: #fff; border: 1px solid var(--sr-line); border-radius: 999px; text-decoration: none; font-size: 14px; font-weight: 600; }
  .chips a:hover, .chips a.chip-now { border-color: var(--sr-ink); background: var(--sr-ink); color: #fff; }
  .opener__buy { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
  .opener__buy small { font-size: 13px; color: var(--sr-mute); }
  .opener__tiles { display: grid; grid-template-columns: 1.35fr 1fr; grid-template-rows: 1fr 1fr; gap: 14px; min-block-size: 440px; }
  .tile { position: relative; display: block; border-radius: var(--sr-r); overflow: hidden; background: #fff; text-decoration: none; }
  .tile img { inline-size: 100%; block-size: 100%; object-fit: cover; }
  .tile--tall { grid-row: span 2; }
  .tile__tag { position: absolute; inset-inline: 12px; inset-block-end: 12px; background: var(--sr-ink); color: #fff; padding: 10px 14px; border-radius: var(--sr-r); }
  .tile__tag small { display: block; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #e9b5b0; }
  .tile__tag b { font-family: var(--sr-head); font-size: 18px; }
  .tile--goal { background: var(--sr-red); color: #fff; padding: 20px; display: flex; flex-direction: column; justify-content: end; }
  .tile--goal small { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #ffd9d4; }
  .tile--goal b { font-family: var(--sr-head); font-size: 24px; line-height: 1.15; }
  /* баннер бренда (fedfitness: чёрная полоса) */
  .arena { background: var(--sr-ink); color: #fff; }
  .arena__in { display: grid; grid-template-columns: 1.4fr 1fr; align-items: center; gap: 28px; padding-block: 30px; }
  .arena img { border-radius: var(--sr-r); }
  .arena h2 { margin-block-end: 10px; }
  .arena p { color: #e2d9d6; }
  /* цели (sportsroyals.net) */
  .goals { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
  .goal { border: 1px solid var(--sr-line); border-radius: var(--sr-r); padding: 20px; background: #fff; display: flex; flex-direction: column; }
  .goal:first-child { background: var(--sr-ink); color: #fff; border-color: var(--sr-ink); }
  .goal__no { font-family: var(--sr-head); font-weight: 800; color: var(--sr-red); font-size: 15px; }
  .goal__k { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; margin-block: 14px 4px; color: var(--sr-mute); }
  .goal:first-child .goal__k { color: #e9b5b0; }
  .goal h3 { font-size: 22px; margin-block-end: 8px; }
  .goal ul { padding-inline-start: 18px; margin-block: 10px 14px; font-size: 14px; }
  .goal a.goal__go { margin-block-start: auto; font-weight: 700; color: inherit; }
  .notsure { margin-block-start: 14px; background: var(--sr-coal); color: #fff; border-radius: var(--sr-r); padding: 18px 22px; display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; justify-content: space-between; }
  .notsure b { font-family: var(--sr-head); font-size: 18px; }
  .notsure p { color: #cfc6c3; font-size: 14px; }
  /* «почему» (sportsroyals.net: колонка слева + плитки справа) */
  .why { display: grid; grid-template-columns: 1fr 1.25fr; gap: 34px; align-items: start; }
  .why__cells { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .why__cell { background: #fff; border: 1px solid var(--sr-line); border-radius: var(--sr-r); padding: 18px; }
  .why__cell:first-child { grid-column: span 2; background: var(--sr-steel); color: #fff; border-color: var(--sr-steel); }
  .why__cell span { font-family: var(--sr-head); font-weight: 800; color: var(--sr-red); }
  .why__cell:first-child span { color: #ffb4ab; }
  .why__cell h3 { margin-block: 8px 6px; }
  .why__cell p { font-size: 15px; }
  /* подборка «лучшее для» (garagegymreviews) */
  .picks { display: grid; gap: 26px; }
  .pick { border: 1px solid #cfcbc6; border-radius: var(--sr-r); }
  .pick__head { padding: 16px 18px 0; }
  .pick__badge { display: inline-block; background: var(--sr-ink); color: #fff; font-size: 13px; font-weight: 700; padding: 6px 10px; border-radius: 2px; }
  .pick__head h3 { font-size: 22px; margin-block: 12px 4px; }
  .pick__good { font-style: italic; font-size: 14px; color: var(--sr-mute); }
  .pick__body { display: grid; grid-template-columns: 240px 1fr; gap: 20px; padding: 16px 18px; align-items: start; }
  .pick__body > img { background: #fff; aspect-ratio: 1; object-fit: contain; }
  .pick__body h4 { font-family: var(--sr-head); font-size: 15px; margin-block: 12px 6px; }
  .pick__body ul { padding-inline-start: 18px; font-size: 15px; }
  .pick details { border-block-start: 1px solid #fff; }
  .pick summary { background: var(--sr-ink); color: #fff; font-family: var(--sr-head); font-weight: 700; padding: 12px 18px; cursor: pointer; list-style: none; position: relative; }
  .pick summary::-webkit-details-marker { display: none; }
  .pick summary::after { content: "\203A"; position: absolute; inset-inline-end: 18px; font-size: 20px; line-height: 1; }
  .pick details[open] summary::after { transform: rotate(90deg); }
  .pick details > div { padding: 14px 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; font-size: 15px; }
  .pick details > p { padding: 14px 18px; font-size: 15px; }
  .pick details ul { padding-inline-start: 18px; }
  /* SEO-текст (garagegymreviews: статья с оглавлением справа) */
  .read { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 40px; align-items: start; }
  .read h2 { margin-block: 30px 10px; font-size: 26px; }
  .read h2:first-child { margin-block-start: 0; }
  .read h3 { margin-block: 18px 6px; }
  .read ul { padding-inline-start: 20px; margin-block: 8px; }
  .read__toc { position: sticky; inset-block-start: 20px; border-inline-start: 3px solid var(--sr-red); padding-inline-start: 16px; font-size: 14px; }
  .read__toc b { display: block; font-family: var(--sr-head); margin-block-end: 8px; }
  .read__toc a { display: block; padding-block: 5px; color: var(--sr-red-deep); }
  /* раздел (fedfitness: баннер с H1, фильтр слева) */
  .lanehero { position: relative; background: var(--sr-ink); color: #fff; overflow: hidden; }
  .lanehero img { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; object-fit: cover; opacity: .55; }
  .lanehero .shell { position: relative; padding-block: 64px; }
  .lanehero h1 { max-inline-size: 760px; }
  .lanehero p { max-inline-size: 640px; margin-block-start: 12px; font-size: 18px; color: #f2ebe9; }
  .aisle { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 28px; align-items: start; }
  .sift { border: 1px solid var(--sr-line); border-radius: var(--sr-r); padding: 16px; font-size: 14px; position: sticky; inset-block-start: 14px; }
  .sift b { display: block; font-family: var(--sr-head); margin-block: 4px 8px; }
  .sift label { display: block; margin-block-end: 14px; }
  .sift select, .sift input { inline-size: 100%; margin-block-start: 6px; padding: 7px; border: 1px solid #bbb6b0; border-radius: var(--sr-r); background: #fff; }
  .sift output { font-weight: 700; }
  .aisle__count { font-size: 14px; color: var(--sr-mute); margin-block-end: 12px; }
  .aisle .rackgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  /* карточка товара (fedfitness PDP) */
  .spot { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 36px; align-items: start; padding-block-end: 30px; }
  .film__stage { background: var(--sr-floor); border-radius: var(--sr-r); aspect-ratio: 1; display: grid; place-items: center; }
  .film__stage img { max-block-size: 100%; object-fit: contain; }
  .film__reel { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; margin-block-start: 10px; }
  .film__reel button { padding: 0; border: 2px solid transparent; border-radius: var(--sr-r); background: var(--sr-floor); cursor: pointer; aspect-ratio: 1; overflow: hidden; }
  .film__reel button.reel-on { border-color: var(--sr-red); }
  .film__reel img { inline-size: 100%; block-size: 100%; object-fit: cover; }
  .spot__info h1 { font-size: clamp(24px, 2.6vw, 34px); }
  .spot__lane { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
  .spot__lane a { color: var(--sr-red-deep); text-decoration: none; font-weight: 700; }
  .spot__rate { margin-block: 10px; }
  .spot__cost { font-family: var(--sr-head); font-size: 30px; font-weight: 800; }
  .spot__stock { font-size: 14px; color: var(--sr-plate-g); font-weight: 600; }
  .spot__lede { margin-block: 14px; color: #33302e; }
  .spot__opt { margin-block: 12px 16px; }
  .spot__opt label { display: block; font-weight: 700; font-size: 14px; }
  .spot__opt select { inline-size: 100%; margin-block-start: 6px; padding: 10px; border: 1px solid #a9a39d; border-radius: var(--sr-r); background: #fff; }
  .spot__buy .gear { inline-size: min(360px, 100%); }
  .spot__perks { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-block-start: 18px; padding: 14px; background: var(--sr-floor); border-radius: var(--sr-r); font-size: 13px; }
  .spot__perks span::before { content: ""; display: inline-block; inline-size: 8px; block-size: 8px; background: var(--sr-red); margin-inline-end: 8px; }
  .overview { margin-block-start: 16px; border-block: 1px solid var(--sr-line); }
  .overview summary { padding: 14px 0; font-family: var(--sr-head); font-weight: 700; cursor: pointer; }
  .overview ul { padding-inline-start: 20px; padding-block-end: 14px; }
  .specs { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; font-size: 14px; padding-block-end: 14px; }
  .specs div { display: flex; justify-content: space-between; gap: 10px; border-block-end: 1px dashed var(--sr-line); padding-block: 6px; }
  .specs dt { color: var(--sr-mute); }
  .specs dd { font-weight: 600; text-align: end; }
  .showcase { padding-block: 40px; text-align: center; }
  .showcase h2 { margin-block-end: 8px; }
  .showcase > p { color: var(--sr-mute); margin-block-end: 22px; }
  .showcase img { inline-size: 100%; border-radius: var(--sr-r); max-block-size: 620px; object-fit: contain; background: var(--sr-floor); }
  .alt { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; align-items: center; padding-block: 26px; }
  .alt:nth-of-type(even) img { order: 2; }
  .alt img { border-radius: var(--sr-r); background: var(--sr-floor); }
  .alt h3 { font-size: clamp(22px, 2.4vw, 30px); margin-block-end: 10px; }
  .closer { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 18px; background: var(--sr-ink); color: #fff; padding: 22px; border-radius: var(--sr-r); margin-block: 30px; }
  .closer b { font-family: var(--sr-head); font-size: 20px; }
  .closer p { color: #d6cdca; font-size: 14px; }
  /* сервисные/плейбук */
  .paper { max-inline-size: 820px; }
  .paper h1 { margin-block-end: 16px; }
  .paper h2 { margin-block: 28px 10px; font-size: 24px; }
  .paper ol, .paper ul { padding-inline-start: 22px; margin-block: 10px; }
  .paper li + li { margin-block-start: 6px; }
  .card-mail { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-block: 18px; }
  .card-mail div { background: var(--sr-floor); border-inline-start: 4px solid var(--sr-red); padding: 16px; }
  .compare { inline-size: 100%; border-collapse: collapse; font-size: 14px; margin-block: 14px; }
  .compare th, .compare td { border: 1px solid var(--sr-line); padding: 9px 10px; text-align: start; vertical-align: top; }
  .compare th { background: var(--sr-floor); font-family: var(--sr-head); }
}
@media (max-width: 1080px) {
  .crown__cta { display: none; }
  .dock { display: flex; }
  body:has(.dock) { padding-block-end: 78px; }
  .rackgrid, .goals { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .bench__top { grid-template-columns: 1fr 1fr; }
  .read { grid-template-columns: 1fr; }
  .read__toc { position: static; order: -1; }
}
@media (max-width: 860px) {
  .crown__menu { display: block; }
  .lanes { display: none; }
  .lanes.lanes-open { display: block; }
  .lanes ul { flex-direction: column; }
  .lanes a { padding: 12px 0; }
  .opener__grid, .why, .huddle, .arena__in, .spot, .alt, .aisle { grid-template-columns: 1fr; }
  .alt:nth-of-type(even) img { order: 0; }
  .opener__tiles { min-block-size: 0; grid-template-rows: 220px 160px; }
  .rackgrid, .aisle .rackgrid, .goals, .voices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sift { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
  .sift b { grid-column: span 2; }
  .pick__body { grid-template-columns: 1fr; }
  .pick__body > img { max-inline-size: 260px; }
  .pick details > div, .card-mail { grid-template-columns: 1fr; }
  .goaltable thead { display: none; }
  .goaltable, .goaltable tbody, .goaltable tr, .goaltable td { display: block; inline-size: 100%; }
  .goaltable tr { border-block-end: 2px solid var(--sr-ink); padding-block: 6px; }
  .goaltable td { border: 0; padding: 4px 12px; }
  .goaltable td::before { content: attr(data-k) ": "; font-weight: 400; color: var(--sr-mute); font-size: 13px; }
  .compare thead { display: none; }
  .compare, .compare tbody, .compare tr, .compare td { display: block; inline-size: 100%; }
  .compare tr { margin-block-end: 10px; }
  .compare td::before { content: attr(data-k) ": "; color: var(--sr-mute); }
}
@media (max-width: 520px) {
  .crown__mark img:last-child { inline-size: 130px; }
  .crown__mark img:first-child { inline-size: 38px; }
  .rackgrid, .aisle .rackgrid, .voices { gap: 10px; }
  .unit { padding: 8px; }
  .unit__name { font-size: 14px; }
  .goals, .why__cells { grid-template-columns: 1fr; }
  .why__cell:first-child { grid-column: auto; }
  .bench__top { grid-template-columns: 1fr; }
  .specs, .spot__perks { grid-template-columns: 1fr; }
  .voices { grid-template-columns: 1fr; }
  .dock .gear { inline-size: 150px; }
}
