/* Стиль рантайма публичных сайтов — общая часть.
   Вынесен из <style> в base.html 18.08.2026 без единого изменения байта:
   там было 262 КБ чистого CSS без jinja-вставок, и он повторялся в каждом
   из 511 ответов при 48 КБ самой разметки.
   Отдаётся через /_site/style.css с версией в адресе и вечным кэшем.
   Первый источник бандла — порядок каскада совпадает с прежним. */
    :root {
      color-scheme: light;
      --site-bg: #f6f7f9;
      --site-bg-alt: #fcfcfd;
      --site-surface: #ffffff;
      --site-card: #ffffff;
      --site-text: #111827;
      --site-heading: #111827;
      --site-muted: #6b7280;
      --site-line: #e5e7eb;
      --site-accent: #0f766e;
      --site-brand-primary: #0f766e;
      --site-brand-secondary: #111827;
      --site-button-primary-bg: #0f766e;
      --site-button-primary-text: #ffffff;
      --site-menu-bg: #000000;
      --site-menu-text: #ffffff;
      --site-header-bg: #000000;
      --site-text-icons-muted: #6b7280;
      --site-text-icons-active: #111827;
      --site-text-icons-inactive: #9ca3af;
      --site-text-icons-highlighted: #ffffff;
      --site-aux-color-1: #16a34a;
      --site-aux-color-2: #0284c7;
      --site-aux-color-3: #ca8a04;
      --site-aux-color-4: #ea580c;
      --site-aux-color-5: #db2777;
      --site-border-color-factor: 1.12;
      --site-font-general: Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-header: Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-menu: Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-code: Cascadia Mono, Consolas, monospace;
      --site-font-accent: Georgia, Times New Roman, serif;
      --site-font-note: Georgia, Times New Roman, serif;
      --site-font-quote: Georgia, Times New Roman, serif;
      --site-font-body: Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-ui: Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-heading: Georgia, Times New Roman, serif;
      --site-fs-xs: 0.75rem;
      --site-fs-sm: 0.875rem;
      --site-fs-md: 1rem;
      --site-fs-lg: 1.125rem;
      --site-fs-xl: 1.25rem;
      --site-fs-2xl: 1.5rem;
      --site-fs-3xl: 2rem;
      --site-text-body: var(--site-fs-md);
      --site-text-body-large: var(--site-fs-lg);
      --site-text-card-title: var(--site-fs-lg);
      --site-text-card-excerpt: var(--site-fs-sm);
      --site-text-button: var(--site-fs-sm);
      --site-text-chip: var(--site-fs-xs);
      --site-text-filter: var(--site-fs-sm);
      --site-text-nav: var(--site-fs-sm);
      --site-text-hero-title: clamp(2.125rem, 5vw, 3.75rem);
      --site-text-section-title: clamp(1.5rem, 3vw, 2.125rem);
      --site-text-small: var(--site-fs-sm);
      --site-radius-base: 12px;
      --site-radius-card: 24px;
      --site-radius-button: 16px;
      --site-panel-size-s: 36px;
      --site-panel-size-m: 48px;
      --site-panel-size-l: 64px;
      --site-panel-size-xl: 80px;
      --site-menu-mobile-font-scale: 0.8;
      --bg: var(--site-bg);
      --card: var(--site-card);
      --text: var(--site-text);
      --muted: var(--site-muted);
      --line: var(--site-line);
      --accent: var(--site-accent);
      --shell-height: var(--site-panel-size-xl);
      --content-width-min: 1200px;
      --content-width-max: 1520px;
      --content-gutter-desktop: 24px;
      --content-gutter-mobile: 16px;
    }
    html {
      font-size: 100%;
      scrollbar-gutter: stable;
      scrollbar-color: #c9cbd1 #f6f7f9;
    }
    html.site-code-dionysos-iw {
      color-scheme: dark;
      scrollbar-color: rgba(255, 250, 238, 0.34) #08070b;
      background: #08070b;
    }
    html.site-code-dionysos-iw::-webkit-scrollbar {
      width: 13px;
      height: 13px;
    }
    html.site-code-dionysos-iw::-webkit-scrollbar-track {
      background: #08070b;
    }
    html.site-code-dionysos-iw::-webkit-scrollbar-thumb {
      border: 3px solid #08070b;
      border-radius: 999px;
      background: rgba(255, 250, 238, 0.34);
    }
    html.site-code-dionysos-iw::-webkit-scrollbar-thumb:hover {
      background: rgba(255, 250, 238, 0.5);
    }
    * { box-sizing: border-box; }
    html,
    body {
      min-height: 100%;
    }
    body {
      margin: 0;
      font-family: var(--site-font-general, var(--site-font-body));
      font-size: var(--site-text-body);
      color: var(--text);
      background: linear-gradient(180deg, var(--site-bg-alt) 0%, var(--bg) 100%);
      min-height: 100vh;
      min-height: 100dvh;
      display: flex;
      flex-direction: column;
    }
    code,
    pre {
      font-family: var(--site-font-code);
    }
    body.with-shell .wrap {
      padding-top: calc(var(--shell-height) + 20px);
    }
    body.mailing-mode .wrap {
      width: min(calc(100% - (var(--content-gutter-mobile) * 2)), 600px);
      max-width: 600px;
      padding-top: 24px;
    }
    .wrap {
      width: min(calc(100% - (var(--content-gutter-mobile) * 2)), var(--content-width-max));
      max-width: var(--content-width-max);
      margin: 0 auto;
      padding: 20px 0 48px;
      flex: 1 0 auto;
      display: flex;
      flex-direction: column;
    }
    .muted { color: var(--muted); font-size: var(--site-text-small); }
    .grid {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    }
    .card {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: var(--site-radius-base);
      padding: 14px;
    }
    .card h3, .card h2 {
      margin: 0 0 8px;
      font-size: var(--site-text-card-title);
      line-height: 1.3;
      color: var(--site-heading);
      font-family: var(--site-font-heading);
    }
    .price {
      margin-top: 8px;
      font-size: var(--site-text-body);
      font-weight: 600;
    }
    .subprice {
      margin-top: 2px;
      color: var(--muted);
      font-size: var(--site-text-small);
    }
    .thumb {
      width: 100%;
      max-height: 180px;
      object-fit: contain;
      border-radius: 8px;
      border: 1px solid var(--line);
      background: #fff;
      margin-bottom: 10px;
    }
    .thumb--article {
      aspect-ratio: 16 / 9;
      max-height: none;
      object-fit: cover;
    }
    .thumb--product {
      aspect-ratio: 1 / 1;
      max-height: none;
      object-fit: contain;
    }
    body.site-monobrand {
      --shell-height: 96px;
      --fiamm-brand-color: var(--site-brand-color, #e30613);
      --fiamm-brand-color-hover: var(--fiamm-brand-color);
      --fiamm-red: var(--fiamm-brand-color);
      --fiamm-ink: #1f1f1f;
      --fiamm-blue: #245b78;
      --fiamm-surface-strong: #22252a;
      --fiamm-surface-strong-hover: #2b2f35;
      --fiamm-surface-soft: #eef1f5;
      --fiamm-surface-line: rgba(31, 31, 31, 0.12);
      --shell-control-surface-bg: rgba(255, 255, 255, 0.14);
      --shell-control-surface-bg-hover: rgba(255, 255, 255, 0.22);
      --shell-control-surface-border: rgba(255, 255, 255, 0.22);
      --shell-control-surface-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14), 0 12px 28px rgba(31, 31, 31, 0.18);
      --shell-control-surface-blur: blur(12px) saturate(132%);
      --shell-control-radius: 999px;
      --shell-control-size: 50px;
      --fiamm-soft: #f4f5f7;
      --fiamm-line: #d8dde5;
      --fiamm-vertical-gap: 20px;
      --fiamm-product-card-min: 225px;
      color: #1f1f1f;
      background: #fbfbfb;
    }
    /* questionnaires.* — сервис опросных листов. Вся его типографика и палитра
       живут в _questionnaire_styles.html: у листа своя тёмная тема с
       переключателем, а тему из реестра рантайм фиксирует на рендере и
       переключить не может. */
    body.site-monobrand .wrap {
      gap: 28px;
    }
    body.site-monobrand .site-shell {
      border-bottom: 0;
      background: var(--fiamm-red);
      color: #ffffff;
      backdrop-filter: none;
    }
    body.site-monobrand .site-shell__inner {
      height: auto;
      min-height: var(--shell-height);
      align-items: stretch;
      flex-direction: column;
      gap: 0;
    }
    body.site-monobrand .site-logo {
      color: #ffffff;
    }
    body.site-monobrand .fiamm-shell-top,
    body.site-monobrand .fiamm-shell-main {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      min-width: 0;
    }
    body.site-monobrand .fiamm-shell-top {
      min-height: 34px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.18);
      color: rgba(255, 255, 255, 0.82);
      font-size: 0.78rem;
      font-weight: 400;
    }
    body.site-monobrand .fiamm-shell-links,
    body.site-monobrand .fiamm-shell-contacts,
    body.site-monobrand .site-shell-actions {
      display: inline-flex;
      align-items: center;
      gap: 14px;
      min-width: 0;
    }
    body.site-monobrand .fiamm-shell-links a,
    body.site-monobrand .fiamm-shell-contacts a {
      color: inherit;
      text-decoration: none;
      white-space: nowrap;
    }
    body.site-monobrand .fiamm-shell-links a:hover,
    body.site-monobrand .fiamm-shell-contacts a:hover {
      color: #ffffff;
    }
    body.site-monobrand .fiamm-shell-main {
      min-height: 61px;
    }
    body.site-monobrand .site-logo__image {
      width: auto;
      height: 46px;
      max-width: 172px;
      max-height: 46px;
      object-fit: contain;
    }
    body.site-monobrand .site-logo__mark {
      width: 108px;
      height: 42px;
      border-radius: 8px;
      background: var(--fiamm-red);
      color: transparent;
      font-size: 0;
    }
    body.site-monobrand .site-logo__mark::after {
      content: "FIAMM";
      color: #ffffff;
      font-size: 1rem;
      font-weight: 900;
    }
    body.site-monobrand .site-shell-actions {
      flex: 0 0 auto;
      width: calc((var(--shell-control-size) * 2) + 12px);
      height: calc(var(--shell-control-size) + 8px);
      min-height: calc(var(--shell-control-size) + 8px);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 2px;
      padding: 4px;
      border: 1px solid var(--shell-control-surface-border);
      border-radius: var(--shell-control-radius);
      background: var(--shell-control-surface-bg);
      box-shadow: var(--shell-control-surface-shadow);
      -webkit-backdrop-filter: var(--shell-control-surface-blur);
      backdrop-filter: var(--shell-control-surface-blur);
    }
    body.site-monobrand .site-shell-action,
    body.site-monobrand .site-burger.site-shell-action {
      width: var(--shell-control-size);
      height: var(--shell-control-size);
      border: 0;
      border-radius: 50%;
      background: transparent;
      color: #ffffff;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0;
      text-decoration: none;
      transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
    }
    body.site-monobrand .site-shell-action:hover,
    body.site-monobrand .site-shell-action:focus-visible {
      background: var(--shell-control-surface-bg-hover);
      color: #ffffff;
      transform: translateY(-1px);
      outline: none;
    }
    body.site-monobrand .site-shell-icon {
      width: 24px;
      height: 24px;
      display: block;
      fill: currentColor;
    }
    body.site-monobrand .site-messenger-fab {
      position: fixed;
      right: max(18px, calc((100vw - var(--content-width-max)) / 2 + 18px));
      bottom: 22px;
      z-index: 92;
      width: 58px;
      height: 58px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid color-mix(in srgb, var(--fiamm-red) 28%, transparent);
      border-radius: 50%;
      background: var(--fiamm-red);
      color: #ffffff;
      text-decoration: none;
      box-shadow: 0 12px 30px rgba(31, 31, 31, 0.2);
      transition: background-color 160ms ease, transform 160ms ease;
    }
    body.site-monobrand .site-notice-fab {
      position: fixed;
      right: max(18px, calc((100vw - var(--content-width-max)) / 2 + 18px));
      bottom: 92px;
      z-index: 93;
      width: 58px;
      height: 58px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid color-mix(in srgb, var(--fiamm-red) 28%, transparent);
      border-radius: 50%;
      background: var(--fiamm-red);
      color: #ffffff;
      text-decoration: none;
      box-shadow: 0 12px 30px rgba(31, 31, 31, 0.2);
      transition: background-color 160ms ease, transform 160ms ease;
    }
    body.site-monobrand .site-messenger-fab:hover,
    body.site-monobrand .site-messenger-fab:focus-visible {
      background: var(--fiamm-brand-color-hover);
      transform: translateY(-2px);
      outline: none;
    }
    body.site-monobrand .site-notice-fab:hover,
    body.site-monobrand .site-notice-fab:focus-visible {
      background: var(--fiamm-brand-color-hover);
      transform: translateY(-2px);
      outline: none;
    }
    body.site-monobrand .site-loading-screen {
      background:
        linear-gradient(90deg, var(--fiamm-red), color-mix(in srgb, var(--fiamm-red) 24%, transparent)) top left / 100% 5px no-repeat,
        var(--fiamm-surface-strong);
      color: rgba(255, 255, 255, 0.92);
    }
    body.site-monobrand .site-loading-screen__logo {
      width: clamp(148px, 22vw, 220px);
      height: auto;
      max-height: 96px;
    }
    body.site-monobrand .site-loading-screen__mark {
      width: 148px;
      height: 64px;
      border-radius: 8px;
      background: transparent;
      box-shadow: none;
      color: #ffffff;
      font-size: 0;
    }
    body.site-monobrand .site-loading-screen__mark::after {
      content: "FIAMM";
      font-size: 1.25rem;
      font-weight: 900;
    }
    body.site-monobrand .site-loading-screen__status {
      color: rgba(255, 255, 255, 0.82);
      letter-spacing: 0;
      text-transform: uppercase;
    }
    .fiamm-page {
      display: flex;
      flex-direction: column;
      gap: var(--fiamm-vertical-gap);
    }
    .fiamm-kicker {
      display: inline-flex;
      align-items: center;
      min-height: 28px;
      padding: 4px 10px;
      border-radius: 8px;
      background: color-mix(in srgb, var(--fiamm-red) 10%, transparent);
      color: var(--fiamm-red);
      font-size: 0.78rem;
      font-weight: 900;
      text-transform: uppercase;
    }
    .fiamm-hero {
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
      gap: 28px;
      min-height: 520px;
      align-items: stretch;
      padding: 34px;
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background:
        linear-gradient(90deg, color-mix(in srgb, var(--fiamm-red) 9%, transparent), color-mix(in srgb, var(--fiamm-red) 4%, transparent)),
        #ffffff;
    }
    .fiamm-hero__copy,
    .fiamm-pdp-head__body {
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 18px;
      min-width: 0;
    }
    .fiamm-hero h1,
    .fiamm-catalog-head h1,
    .fiamm-pdp-head h1 {
      margin: 0;
      color: var(--fiamm-ink);
      font-family: var(--site-font-heading);
      font-size: 3rem;
      line-height: 1.05;
      letter-spacing: 0;
    }
    .fiamm-hero p,
    .fiamm-catalog-head p,
    .fiamm-lead {
      max-width: 760px;
      margin: 0;
      color: #4a515c;
      font-size: 1.08rem;
      line-height: 1.58;
    }
    .fiamm-hero__panel {
      display: grid;
      gap: 12px;
      align-content: center;
    }
    .fiamm-hero__panel div {
      min-height: 132px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 8px;
      padding: 20px;
      border: 1px solid rgba(31, 31, 31, 0.12);
      border-left: 5px solid var(--fiamm-red);
      border-radius: 8px;
      background: #ffffff;
    }
    .fiamm-hero__panel strong {
      font-size: 1.5rem;
      color: var(--fiamm-ink);
    }
    .fiamm-hero__panel span {
      color: #5f6874;
      line-height: 1.45;
    }
    .fiamm-actions,
    .fiamm-product-card__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      align-items: center;
    }
    .fiamm-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      padding: 10px 15px;
      border: 1px solid transparent;
      border-radius: var(--fiamm-pill-radius, 999px);
      font-size: 0.92rem;
      font-weight: 800;
      text-decoration: none;
      white-space: nowrap;
    }
    .fiamm-button--primary {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    .fiamm-button--secondary {
      border-color: rgba(31, 31, 31, 0.18);
      background: #ffffff;
      color: var(--fiamm-ink);
    }
    .fiamm-section {
      display: flex;
      flex-direction: column;
      gap: var(--fiamm-vertical-gap);
    }
    .fiamm-section--tight {
      gap: var(--fiamm-vertical-gap);
    }
    .fiamm-section__head {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 16px;
    }
    .fiamm-section__head h2,
    .fiamm-rubric-columns h3,
    .fiamm-request-aside h2 {
      margin: 0;
      color: var(--fiamm-ink);
      font-family: var(--site-font-heading);
      font-size: 1.5rem;
      line-height: 1.18;
      letter-spacing: 0;
    }
    .fiamm-section__head a {
      color: var(--fiamm-red);
      font-weight: 800;
      text-decoration: none;
    }
    .fiamm-section__head span,
    .fiamm-muted {
      color: #5f6874;
    }
    .fiamm-article-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
      gap: 18px;
    }
    .fiamm-article-card {
      min-height: 100%;
      display: grid;
      gap: 14px;
      align-content: start;
      padding: 22px;
      border: 1px solid var(--fiamm-card-border);
      border-radius: 8px;
      background: #ffffff;
      color: #20242a;
      text-decoration: none;
      box-shadow: 0 14px 34px rgba(31, 31, 31, 0.06);
      transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
    }
    .fiamm-article-card:hover,
    .fiamm-article-card:focus-visible {
      border-color: color-mix(in srgb, var(--fiamm-red) 34%, var(--fiamm-card-border));
      transform: translateY(-2px);
      outline: none;
    }
    .fiamm-article-card__tag {
      color: var(--fiamm-red);
      font-size: 0.76rem;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .fiamm-article-card h2,
    .fiamm-article-card h3 {
      margin: 0;
      color: inherit;
      font-size: clamp(1.2rem, 1.35vw, 1.5rem);
      line-height: 1.15;
    }
    .fiamm-article-card p {
      margin: 0;
      color: #5d6673;
      line-height: 1.55;
    }
    .fiamm-article-card__meta,
    .fiamm-article-card__action {
      color: #717b88;
      font-size: 0.86rem;
    }
    .fiamm-article-card__action {
      color: var(--fiamm-red);
      font-weight: 800;
    }
    .fiamm-rubric-columns {
      display: flex;
      flex-direction: column;
      gap: 22px;
    }
    .fiamm-rubric-columns > div {
      display: flex;
      flex-direction: column;
      gap: 14px;
      min-width: 0;
    }
    .fiamm-rubric-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
      gap: 10px;
    }
    .fiamm-rubric-grid--compact {
      grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
    }
    .fiamm-rubric-strip {
      display: flex;
      gap: 12px;
      width: 100%;
      overflow-x: auto;
      overflow-y: hidden;
      padding: 2px 0 8px;
      scroll-snap-type: x proximity;
      scrollbar-width: none;
    }
    .fiamm-rubric-strip::-webkit-scrollbar {
      display: none;
    }
    .fiamm-rubric-tile {
      position: relative;
      flex: 0 0 clamp(156px, 18vw, 220px);
      display: flex;
      min-height: 0;
      aspect-ratio: 1 / 1;
      align-items: flex-end;
      overflow: hidden;
      padding: 14px;
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--fiamm-red) 8%, transparent), color-mix(in srgb, var(--fiamm-red) 4%, transparent)),
        #ffffff;
      color: var(--fiamm-ink);
      text-decoration: none;
    }
    .fiamm-rubric-tile::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0) 34%, rgba(255, 255, 255, 0.9) 100%),
        var(--fiamm-rubric-image, none);
      background-position: center, center;
      background-repeat: no-repeat, no-repeat;
      background-size: 100% 100%, contain;
      opacity: 0.92;
      transition: transform 180ms ease, opacity 180ms ease;
    }
    .fiamm-rubric-tile::after {
      content: none;
    }
    .fiamm-rubric-tile:hover::before,
    .fiamm-rubric-tile:focus-visible::before {
      transform: scale(1.04);
      opacity: 1;
    }
    .fiamm-rubric-tile span {
      position: relative;
      z-index: 1;
      width: 100%;
      color: var(--fiamm-ink);
      font-weight: 900;
      line-height: 1.16;
      overflow-wrap: anywhere;
    }
    .fiamm-rubric-card {
      min-height: 92px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 10px;
      padding: 14px;
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background: #ffffff;
      color: var(--fiamm-ink);
      text-decoration: none;
    }
    .fiamm-rubric-card span {
      font-weight: 900;
      line-height: 1.25;
    }
    .fiamm-rubric-card small {
      color: #697381;
      line-height: 1.35;
    }
    .fiamm-catalog-head,
    .fiamm-pdp-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 24px;
      align-items: center;
      padding: 28px;
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background: #ffffff;
    }
    .fiamm-catalog-head > div {
      display: flex;
      flex-direction: column;
      gap: 12px;
      min-width: 0;
    }
    .fiamm-product-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--fiamm-product-card-min)), 1fr));
      gap: 14px;
    }
    .fiamm-product-grid--home {
      grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--fiamm-product-card-min)), 1fr));
    }
    .fiamm-product-card {
      min-width: 0;
      display: flex;
      flex-direction: column;
      min-height: 100%;
      border: 1px solid #ececec;
      border-radius: 20px;
      background: #ffffff;
      overflow: hidden;
      transition: border-color 180ms ease, background-color 180ms ease, opacity 180ms ease, transform 180ms ease;
    }
    .fiamm-product-card:hover,
    .fiamm-product-card:focus-within {
      border-color: #e1e1e1;
      background: #ffffff;
      transform: translateY(-2px);
    }
    .fiamm-product-card.is-dismissing {
      opacity: 0;
      transform: scale(0.98);
    }
    .fiamm-product-card.is-lifecycle-hidden {
      display: none;
    }
    .fiamm-product-card__media {
      display: flex;
      align-items: center;
      justify-content: center;
      aspect-ratio: 4 / 3;
      margin: 10px 10px 0;
      padding: 18px;
      border-radius: 16px;
      background: #ffffff;
      overflow: hidden;
      text-decoration: none;
    }
    .fiamm-product-card__media img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
    .fiamm-product-card__placeholder {
      display: grid;
      place-items: center;
      width: 100%;
      height: 100%;
      border-radius: 16px;
      background: #ffffff;
      color: #b0b0b0;
      font-size: 0.72rem;
      letter-spacing: 0.08em;
      font-weight: 900;
      text-transform: uppercase;
    }
    .fiamm-product-card__body {
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      gap: 10px;
      min-height: clamp(180px, 14vw, 220px);
      padding: 14px 20px 0;
      min-width: 0;
    }
    .fiamm-sku {
      color: #6a7280;
      font-size: 0.78rem;
      font-weight: 800;
      text-transform: uppercase;
    }
    .fiamm-product-card h3 {
      display: -webkit-box;
      margin: 0;
      font-size: clamp(1rem, 0.92rem + 0.28vw, 1.18rem);
      line-height: 1.25;
      min-height: 2.5em;
      overflow: hidden;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
    }
    .fiamm-product-card h3 a {
      color: var(--fiamm-ink);
      text-decoration: none;
    }
    .fiamm-product-card__signature {
      margin: 0;
      color: #7a7a7a;
      font-size: 0.88rem;
      font-weight: 500;
      letter-spacing: 0;
      text-transform: none;
    }
    .fiamm-product-card__brief {
      display: -webkit-box;
      margin: 0;
      color: #4a4a4a;
      font-size: 0.92rem;
      line-height: 1.55;
      min-height: 4.65em;
      overflow: hidden;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 3;
    }
    .fiamm-product-card__price {
      display: block;
      margin: 0;
      padding: 0;
      color: var(--fiamm-ink);
      font-size: 1.18rem;
    }
    .fiamm-product-card__price strong {
      font-weight: 900;
      overflow-wrap: anywhere;
    }
    .fiamm-product-card__facts,
    .fiamm-pdp-specs {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
      margin: 0;
    }
    .fiamm-product-card__facts div,
    .fiamm-pdp-specs div {
      min-width: 0;
      padding: 8px;
      border: 1px solid #e6e9ef;
      border-radius: 8px;
      background: #fbfcfd;
    }
    .fiamm-product-card__facts dt,
    .fiamm-pdp-specs dt {
      margin: 0 0 3px;
      color: #6b7280;
      font-size: 0.72rem;
    }
    .fiamm-product-card__facts dd,
    .fiamm-pdp-specs dd {
      margin: 0;
      color: var(--fiamm-ink);
      font-size: 0.9rem;
      font-weight: 800;
      overflow-wrap: anywhere;
    }
    /* Favourite and hide sit at the edges, the text action fills between them.
       "justify-content: start" left the triad bunched to the left instead. */
    .fiamm-product-card__actions {
      display: grid;
      grid-template-columns: 40px minmax(0, 1fr) 40px;
      justify-content: stretch;
      gap: 10px;
      align-items: center;
      padding: 16px 20px 20px;
      background: transparent;
    }
    .fiamm-product-card__icon-action,
    .fiamm-product-card__view {
      min-width: 0;
      height: 40px;
      border: 0;
      color: var(--fiamm-ink);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      text-decoration: none;
      cursor: pointer;
      transition: color 160ms ease, background-color 160ms ease, transform 160ms ease;
    }
    .fiamm-product-card__icon-action {
      width: 40px;
      border-radius: 50%;
      background: #f1f1f1;
      justify-self: center;
      color: #7a7a7a;
    }
    .fiamm-product-card__icon-action svg {
      width: 18px;
      height: 18px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
      pointer-events: none;
    }
    .fiamm-product-card__heart-fill {
      display: none;
      fill: currentColor;
      stroke: none;
    }
    .fiamm-product-card__heart-outline {
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .fiamm-product-card__view {
      width: auto;
      min-height: 40px;
      height: 40px;
      justify-self: center;
      gap: 8px;
      padding: 0 14px;
      border-radius: 999px;
      background: #efefef;
      color: #1b1b1b;
      font-size: 0.82rem;
      font-weight: 700;
      white-space: nowrap;
      /* Прописные — форма центрального действия карточки из макета
         `Home Page.dc.html`; рантайм отдавал её обычным регистром. Регистр
         задаётся стилем, а не литералом в разметке, чтобы разметка оставалась
         читаемой экранным диктором. */
      text-transform: uppercase;
      letter-spacing: 0.6px;
    }
    .fiamm-product-card__view svg {
      width: 16px;
      height: 16px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .fiamm-product-card__icon-action:hover,
    .fiamm-product-card__icon-action:focus-visible,
    .fiamm-product-card__view:hover,
    .fiamm-product-card__view:focus-visible {
      transform: translateY(-1px);
      outline: none;
    }
    .fiamm-product-card__icon-action:hover,
    .fiamm-product-card__icon-action:focus-visible {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    .fiamm-product-card__icon-action--favorite.is-active {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    .fiamm-product-card__icon-action.is-active,
    .fiamm-product-card__icon-action[aria-pressed="true"] {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    .fiamm-product-card__view--cta.is-active,
    .fiamm-product-card__view--cta[aria-pressed="true"] {
      background: #202329;
      color: #ffffff;
    }
    .fiamm-product-card__icon-action--favorite.is-active .fiamm-product-card__heart-outline,
    .fiamm-product-card__icon-action--favorite[aria-pressed="true"] .fiamm-product-card__heart-outline {
      display: none;
    }
    .fiamm-product-card__icon-action--favorite.is-active .fiamm-product-card__heart-fill,
    .fiamm-product-card__icon-action--favorite[aria-pressed="true"] .fiamm-product-card__heart-fill {
      display: block;
    }
    .fiamm-product-card__view:hover,
    .fiamm-product-card__view:focus-visible {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    .fiamm-breadcrumbs {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: center;
      color: #6b7280;
      font-size: 0.86rem;
      font-weight: 500;
    }
    .fiamm-breadcrumbs a {
      color: #6b7280;
      font-weight: 500;
      text-decoration: none;
    }
    .fiamm-breadcrumbs a:hover,
    .fiamm-breadcrumbs a:focus-visible {
      text-decoration: underline;
      outline: none;
    }
    body.site-monobrand .lp-account-lifecycle {
      display: grid;
      gap: 28px;
    }
    body.site-monobrand .lp-account-lifecycle__lanes {
      display: grid;
      gap: 28px;
    }
    body.site-monobrand .lp-account-lane {
      position: relative;
      display: grid;
      gap: 14px;
    }
    body.site-monobrand .lp-account-lifecycle[data-account-active-lane] .lp-account-lane.is-section-hidden {
      display: none;
    }
    /* SITE-FRAME-005 · docs/standards/sites/monobrand/page_frame_standard.md */
    body.site-monobrand .lp-account-lane__head h2 {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 40px;
      margin: 0 !important;
      color: var(--fiamm-chip-ink, #5a5a5a);
      font-family: var(--site-font-general);
      font-size: 12px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 1.5px;
      text-transform: uppercase;
    }
    body.site-monobrand .lp-account-lane__viewport {
      overflow-x: auto;
      overflow-y: hidden;
      padding: 10px 0 28px;
      margin: -10px 0 -28px;
    }
    body.site-monobrand .lp-account-lane__viewport::-webkit-scrollbar {
      display: none;
    }
    body.site-monobrand .lp-account-lane__track {
      display: flex;
      flex-wrap: nowrap;
      gap: 20px;
      width: max-content;
      min-width: max-content;
    }
    body.site-monobrand .lp-account-card {
      width: clamp(172px, 17vw, 240px);
      display: grid;
      gap: 10px;
      color: var(--fiamm-ink);
    }
    body.site-monobrand .lp-account-card.is-lifecycle-hidden {
      display: none !important;
    }
    /* Карточка кабинета собрана как товарная: медиа сверху, под ней модель,
       характеристики и цена (DS26082402, T5). */
    body.site-monobrand .lp-account-card {
      border: 1px solid #e5e7eb;
      border-radius: 12px;
      background: #ffffff;
      overflow: hidden;
      gap: 0;
      transition: border-color 180ms ease, transform 180ms ease;
    }
    body.site-monobrand .lp-account-card:hover {
      transform: translateY(-2px);
      border-color: var(--fiamm-red);
    }
    body.site-monobrand .lp-account-card__media {
      display: flex;
      align-items: center;
      justify-content: center;
      aspect-ratio: 4 / 3;
      padding: 12px;
      background: #ffffff;
      color: var(--fiamm-ink);
      text-decoration: none;
      overflow: hidden;
    }
    body.site-monobrand .lp-account-card__body {
      display: grid;
      gap: 6px;
      padding: 0 14px 14px;
    }
    body.site-monobrand .lp-account-card__title {
      color: var(--fiamm-ink);
      font-family: var(--site-font-heading);
      font-size: 0.98rem;
      font-weight: 800;
      line-height: 1.2;
      text-decoration: none;
      overflow-wrap: anywhere;
    }
    body.site-monobrand .lp-account-card__title:hover {
      color: var(--fiamm-red);
    }
    body.site-monobrand .lp-account-card__signature {
      color: #9a9a9a;
      font-size: 0.76rem;
      line-height: 1.35;
    }
    body.site-monobrand .lp-account-card__price {
      font-size: 0.9rem;
      font-weight: 800;
    }
    body.site-monobrand .lp-account-card__restore {
      margin: 0 14px 14px;
    }
    body.site-monobrand .lp-account-card__media img {
      display: block;
      width: 100%;
      height: 100%;
      min-height: 0;
      object-fit: contain;
    }
    body.site-monobrand .lp-account-card__media span {
      font-family: var(--site-font-heading);
      font-size: 0.98rem;
      font-weight: 900;
      line-height: 1.12;
    }
    body.site-monobrand .lp-account-card__restore {
      min-height: 34px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 0;
      border-radius: 30px;
      padding: 0 14px;
      background: #f1f2f4;
      color: var(--fiamm-ink);
      font-family: var(--site-font-heading);
      font-size: 0.78rem;
      font-weight: 900;
      cursor: pointer;
    }
    body.site-monobrand .lp-account-card__restore:hover,
    body.site-monobrand .lp-account-card__restore:focus-visible {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    body.site-monobrand .lp-account-lane__controls {
      position: absolute;
      left: 0;
      right: 0;
      top: calc(50% + 16px);
      z-index: 3;
      height: 0;
      opacity: 0;
      pointer-events: none;
      transition: opacity 180ms ease;
    }
    body.site-monobrand .lp-account-lane:hover .lp-account-lane__controls,
    body.site-monobrand .lp-account-lane:focus-within .lp-account-lane__controls {
      opacity: 1;
    }
    body.site-monobrand .lp-strip-control[data-account-lane-prev] {
      left: 8px;
    }
    body.site-monobrand .lp-strip-control[data-account-lane-next] {
      right: 8px;
    }
    body.site-monobrand .lp-account-lane__empty {
      margin: 0 !important;
      color: #6b7280 !important;
      font-size: 0.96rem;
    }
    body.site-monobrand .lp-account-lane__empty[hidden] {
      display: none;
    }
    body.site-monobrand .lp-account-lifecycle[data-account-active-lane] .lp-account-lane__viewport {
      overflow: visible;
      padding: 0;
      margin: 0;
    }
    body.site-monobrand .lp-account-lifecycle[data-account-active-lane] .lp-account-lane__track {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(clamp(172px, 17vw, 240px), 1fr));
      gap: 20px;
      width: 100%;
      min-width: 0;
    }
    body.site-monobrand .lp-account-lifecycle[data-account-active-lane] .lp-account-card {
      width: 100%;
    }
    body.site-monobrand .lp-account-lifecycle[data-account-active-lane] .lp-account-lane__controls {
      display: none;
    }
    .fiamm-pdp-head {
      grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
      align-items: stretch;
    }
    .fiamm-pdp-head__media {
      display: grid;
      place-items: center;
      min-height: 420px;
      padding: 28px;
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background: #f9fafb;
    }
    .fiamm-pdp-head__media img {
      width: 100%;
      height: 100%;
      max-height: 520px;
      object-fit: contain;
    }
    .fiamm-pdp-head__media span {
      display: grid;
      place-items: center;
      width: 148px;
      height: 70px;
      border-radius: 8px;
      background: var(--fiamm-red);
      color: #ffffff;
      font-weight: 900;
    }
    .fiamm-pdp-identity {
      display: grid;
      gap: 12px;
      width: 100%;
      max-width: none;
    }
    .fiamm-pdp-identity h1 {
      margin: 0;
      color: var(--fiamm-ink);
      font-family: var(--site-font-heading);
      font-size: clamp(2rem, 2.5vw, 3rem);
      font-weight: 700;
      line-height: 1.04;
      letter-spacing: 0;
    }
    .fiamm-pdp-identity__meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px 18px;
      color: #8c949f;
      font-size: 0.92rem;
      line-height: 1.4;
    }
    .fiamm-pdp-hero {
      display: grid;
      grid-template-columns: minmax(320px, 1fr) minmax(360px, 1fr);
      gap: clamp(22px, 3vw, 36px);
      align-items: start;
    }
    .fiamm-pdp-gallery {
      position: sticky;
      top: calc(var(--shell-height, 96px) + 18px);
      display: grid;
      gap: 18px;
      min-width: 0;
    }
    .fiamm-pdp-gallery__stage {
      position: relative;
      display: none;
      place-items: center;
      min-height: clamp(420px, 42vw, 640px);
      padding: clamp(16px, 2.4vw, 34px);
      background: #ffffff;
      overflow: hidden;
    }
    .fiamm-pdp-gallery__stage.is-active {
      display: grid;
    }
    .fiamm-pdp-gallery__stage img {
      display: block;
      width: 100%;
      height: 100%;
      max-height: clamp(390px, 39vw, 610px);
      object-fit: contain;
    }
    /* Кадр можно открыть во весь экран — курсор говорит об этом до клика. */
    .fiamm-pdp-gallery__stage img[data-lightbox-item] {
      cursor: zoom-in;
    }

    /* --- Просмотр кадра во весь экран (Dio 23.09) -------------------------
       Одно окно на страницу: фотографии склада разглядывают, а не угадывают
       по карточке. Стрелки и клавиши листают тот же набор, что в галерее. */
    .site-lightbox {
      position: fixed;
      inset: 0;
      z-index: 300;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: clamp(12px, 3vw, 40px);
      background: rgba(8, 12, 14, 0.94);
    }
    .site-lightbox[hidden] { display: none; }
    .site-lightbox__image {
      max-width: min(100%, 1600px);
      max-height: 92vh;
      object-fit: contain;
      border-radius: 10px;
      cursor: zoom-out;
    }
    .site-lightbox__caption {
      position: absolute;
      left: 50%;
      bottom: clamp(10px, 2vw, 22px);
      transform: translateX(-50%);
      margin: 0;
      max-width: min(92%, 720px);
      text-align: center;
      font-size: 14px;
      color: rgba(255, 255, 255, 0.82);
    }
    .site-lightbox__close,
    .site-lightbox__nav {
      position: absolute;
      display: grid;
      place-items: center;
      width: 48px;
      height: 48px;
      border: 0;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.14);
      color: #ffffff;
      font-size: 26px;
      line-height: 1;
      cursor: pointer;
    }
    .site-lightbox__close:hover,
    .site-lightbox__nav:hover { background: rgba(255, 255, 255, 0.26); }
    .site-lightbox__close {
      top: clamp(10px, 2vw, 24px);
      right: clamp(10px, 2vw, 24px);
      font-size: 22px;
    }
    .site-lightbox__nav--prev { left: clamp(6px, 2vw, 24px); }
    .site-lightbox__nav--next { right: clamp(6px, 2vw, 24px); }
    body.site-lightbox-open { overflow: hidden; }
    @media (max-width: 760px) {
      .site-lightbox__close,
      .site-lightbox__nav { width: 40px; height: 40px; font-size: 22px; }
    }
    .fiamm-pdp-gallery__stage span {
      display: grid;
      place-items: center;
      width: 172px;
      height: 82px;
      border-radius: 8px;
      background: var(--fiamm-red);
      color: #ffffff;
      font-size: 1.4rem;
      font-weight: 900;
    }
    .fiamm-pdp-gallery__arrow {
      position: absolute;
      top: 50%;
      z-index: 1;
      display: grid;
      place-items: center;
      width: 42px;
      height: 42px;
      border: 0;
      border-radius: 50%;
      background: #f2f3f5;
      color: #a3a9b2;
      font-size: 1.65rem;
      line-height: 0;
      opacity: 0;
      pointer-events: none;
      transform: translateY(-50%);
      cursor: pointer;
      transition: opacity 160ms ease, color 160ms ease, background-color 160ms ease;
    }
    .fiamm-pdp-gallery__stage:hover .fiamm-pdp-gallery__arrow,
    .fiamm-pdp-gallery__stage:focus-within .fiamm-pdp-gallery__arrow {
      opacity: 1;
      pointer-events: auto;
    }
    .fiamm-pdp-gallery__arrow--prev {
      left: 0;
    }
    .fiamm-pdp-gallery__arrow--next {
      right: 0;
    }
    .fiamm-pdp-gallery__thumbs,
    .fiamm-pdp-utilities {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
    }
    /* Миниатюр может быть много: у складского экземпляра их полтора десятка.
       Без прокрутки лента растягивала страницу шире экрана — на телефоне это
       ломало вёрстку целиком (ширина разметки 1380 px вместо 390) и вместе с
       ней любое окно `position: fixed` (найдено 23.09 на D1703). */
    .fiamm-pdp-gallery__thumbs {
      flex-wrap: nowrap;
      justify-content: flex-start;
      max-width: 100%;
      overflow-x: auto;
      overscroll-behavior-x: contain;
      scrollbar-width: thin;
      padding-bottom: 4px;
    }
    .fiamm-pdp-gallery__thumbs::-webkit-scrollbar { height: 6px; }
    .fiamm-pdp-gallery__thumbs::-webkit-scrollbar-thumb {
      border-radius: 999px;
      background: rgba(20, 23, 26, 0.24);
    }
    .fiamm-pdp-thumb {
      flex: 0 0 auto;
      display: grid;
      place-items: center;
      width: 74px;
      height: 74px;
      border: 1px solid #a8adb5;
      border-radius: 6px;
      background: #ffffff;
      overflow: hidden;
      cursor: pointer;
    }
    .fiamm-pdp-thumb.is-active {
      border-color: var(--fiamm-red);
      box-shadow: 0 0 0 1px var(--fiamm-red) inset;
    }
    .fiamm-pdp-thumb img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
    .fiamm-pdp-utility,
    .fiamm-pdp-favorite {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 50px;
      height: 50px;
      border: 0;
      border-radius: 50%;
      background: #f1f2f4;
      color: #8a9099;
      font-size: 0;
      line-height: 1;
      cursor: pointer;
      transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
    }
    .fiamm-pdp-utility svg,
    .fiamm-pdp-favorite svg {
      width: 24px;
      height: 24px;
      fill: currentColor;
      pointer-events: none;
    }
    /* Наведение объявляется только для устройств, у которых оно есть.
       На телефоне состояние `:hover` залипает после касания, и кнопка
       оставалась красной независимо от того, включили её или выключили.
       Отсюда и родилось «второе нажатие не отключает»: состояние снималось
       верно, но выглядело одинаково. Теперь на касании работают ровно два
       вида — серый «выключено» и тёмный «включено». */
    /* Фокус с клавиатуры остаётся всегда: он к указателю отношения не имеет. */
    .fiamm-pdp-utility:focus-visible,
    .fiamm-pdp-favorite:focus-visible {
      background: var(--fiamm-red);
      color: #ffffff;
      outline: none;
      transform: translateY(-1px);
    }
    @media (hover: hover) and (pointer: fine) {
      .fiamm-pdp-utility:hover,
      .fiamm-pdp-favorite:hover {
        background: var(--fiamm-red);
        color: #ffffff;
        transform: translateY(-1px);
      }
    }
    .fiamm-pdp-favorite.is-active,
    .fiamm-pdp-favorite[aria-pressed="true"] {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    .fiamm-pdp-decision {
      position: relative;
      display: block;
      columns: 2 260px;
      column-gap: 14px;
      min-width: 0;
    }
    .fiamm-pdp-decision-card {
      position: relative;
      display: inline-flex;
      flex-direction: column;
      gap: 12px;
      width: 100%;
      min-height: 166px;
      margin: 0 0 14px;
      padding: 18px;
      border-radius: 8px;
      background: #f1f2f4;
      color: var(--fiamm-ink);
      break-inside: avoid;
    }
    .fiamm-pdp-decision-card--price {
      grid-row: span 2;
      min-height: 278px;
    }
    .fiamm-pdp-card-help {
      position: absolute;
      top: 12px;
      right: 12px;
      display: grid;
      place-items: center;
      width: 24px;
      height: 24px;
      border: 0;
      border-radius: 50%;
      background: #d6d8dc;
      color: #ffffff;
      font-weight: 900;
      cursor: help;
    }
    /* Подсказка — всплывающее окно у значка, а не врезка в поток карточки.
       Врезка сдвигала содержимое вниз: нажатие на пояснение переставляло то,
       о чём спрашивали (осмотр Сергея 29.08.2026). */
    .fiamm-pdp-card-tip {
      position: absolute;
      top: 40px;
      right: 12px;
      z-index: 5;
      display: none;
      width: min(280px, calc(100% - 24px));
      margin: 0;
      padding: 12px 14px;
      border: 1px solid #e2e4e8;
      border-radius: 8px;
      background: #ffffff;
      box-shadow: 0 12px 30px rgba(20, 22, 26, 0.18);
      color: #4d5560;
      font-size: 0.8rem;
      line-height: 1.4;
      text-align: left;
    }
    /* Уголок к значку: окно должно читаться как принадлежащее этому «?», а не
       висеть само по себе. */
    .fiamm-pdp-card-tip::before {
      content: "";
      position: absolute;
      top: -5px;
      right: 12px;
      width: 8px;
      height: 8px;
      border-top: 1px solid #e2e4e8;
      border-left: 1px solid #e2e4e8;
      background: #ffffff;
      transform: rotate(45deg);
    }
    .fiamm-pdp-decision-card.is-help-open .fiamm-pdp-card-tip {
      display: block;
    }
    .fiamm-pdp-decision-card.is-help-open .fiamm-pdp-card-help {
      background: var(--fiamm-ink, #1b1b1b);
    }
    .fiamm-pdp-card-label {
      padding-right: 28px;
      font-family: var(--site-font-heading);
      font-size: 0.8rem;
      font-weight: 700;
      letter-spacing: 0;
      text-transform: uppercase;
    }
    .fiamm-pdp-decision-card strong {
      font-family: var(--site-font-heading);
      font-size: clamp(1.4rem, 1.5vw, 1.7rem);
      font-weight: 700;
      line-height: 1;
    }
    .fiamm-pdp-decision-card p {
      margin: 0;
      color: #2f333a;
      font-size: 0.8rem;
      line-height: 1.28;
    }
    .fiamm-pdp-quantity {
      display: grid;
      grid-template-columns: 42px 1fr 42px;
      align-items: center;
      min-height: 42px;
      border-radius: 999px;
      background: #d4d6da;
      overflow: hidden;
      color: #202329;
      font-weight: 800;
      text-align: center;
    }
    .fiamm-pdp-quantity button {
      height: 100%;
      border: 0;
      background: transparent;
      color: #8d9299;
      font-size: 1.6rem;
      cursor: pointer;
    }
    .fiamm-pdp-wide-action {
      width: 100%;
      min-height: 44px;
      border-radius: 999px;
      font-family: var(--site-font-heading);
      font-size: 0.8rem;
      font-weight: 700;
      text-transform: uppercase;
    }
    .fiamm-pdp-wide-action[data-pdp-cart].is-active {
      background: #202329;
    }
    .fiamm-pdp-quantity button:disabled {
      opacity: 0.4;
      cursor: default;
    }
    .fiamm-pdp-favorite {
      background: #f1f2f4;
      color: #8a9099;
      font-size: 2rem;
    }
    .fiamm-pdp-tabs {
      padding: clamp(20px, 2.4vw, 30px);
      border-radius: 10px;
      background: #f1f2f4;
    }
    /* Серая линия рисуется фоном, а не рамкой, и красная линия активного
       пункта — собственной рамкой кнопки.

       Было: рамка у контейнера и `box-shadow` у кнопки. Контейнер несёт
       `overflow-x: auto`, а по CSS вторая ось при этом не может остаться
       `visible` — она тоже становится `auto`. Тень, выходящая за padding-box,
       срезалась, и красной линии под активным пунктом не было видно вовсе
       (осмотр Сергея 03.09.2026, PDP_issue_1.png). */
    .fiamm-pdp-tabs__nav {
      display: flex;
      flex-wrap: nowrap;
      gap: clamp(18px, 3vw, 36px);
      background-image: linear-gradient(#d5d7dc, #d5d7dc);
      background-repeat: no-repeat;
      background-position: 0 100%;
      background-size: 100% 3px;
      overflow-x: auto;
      overflow-y: hidden;
      scrollbar-width: none;
    }
    .fiamm-pdp-tabs__nav::-webkit-scrollbar {
      display: none;
    }
    .fiamm-pdp-tabs__nav button {
      appearance: none;
      display: inline-flex;
      min-height: 48px;
      align-items: center;
      flex: 0 0 auto;
      padding: 0;
      border: 0;
      /* Строка стоит после `border: 0` намеренно: в одном блоке побеждает
         последняя, и объявленная выше рамка обнулялась бы этой сокращённой
         записью — линия активного пункта получалась нулевой ширины. */
      border-bottom: 3px solid transparent;
      background: transparent;
      color: var(--fiamm-ink);
      font-family: var(--site-font-heading);
      font-weight: 700;
      letter-spacing: 0.15em;
      text-decoration: none;
      text-transform: uppercase;
      cursor: pointer;
    }
    .fiamm-pdp-tabs__nav button.is-active {
      color: var(--fiamm-red);
      border-bottom-color: var(--fiamm-red);
    }
    @media (max-width: 600px) {
      /* Табы набраны прописными с разрядкой, и на телефоне 13,3 px читались
         мелко (замер 07.09.2026). Кегль поднят до 15 px, разрядка при этом
         уменьшена: иначе два таба перестают помещаться в 358 px и лента
         уезжает в прокрутку там, где прокручивать нечего. */
      .fiamm-pdp-tabs__nav button {
        font-size: 15px;
        letter-spacing: 0.08em;
      }
    }
    .fiamm-pdp-tab-panel[hidden] {
      display: none;
    }
    .fiamm-pdp-tabs__body {
      display: grid;
      gap: 26px;
      padding-top: 28px;
    }
    .fiamm-pdp-tab-panel h2 {
      margin: 0 0 18px;
      font-size: 1.05rem;
    }
    .fiamm-pdp-spec-columns {
      columns: 2 280px;
      column-gap: clamp(32px, 6vw, 92px);
    }
    .fiamm-pdp-spec-row {
      display: grid;
      grid-template-columns: auto minmax(24px, 1fr) auto;
      align-items: end;
      gap: 10px;
      break-inside: avoid;
      margin: 0 0 10px;
      color: #111318;
      font-size: 0.95rem;
      line-height: 1.35;
    }
    .fiamm-pdp-spec-row::before {
      content: "";
      order: 2;
      border-bottom: 2px dotted #b6bcc5;
      transform: translateY(-0.3em);
    }
    .fiamm-pdp-spec-row span {
      color: #565d67;
    }
    .fiamm-pdp-spec-label {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      min-width: 0;
    }
    .fiamm-pdp-spec-row strong {
      order: 3;
      font-weight: 700;
      text-align: right;
    }
    .attribute-help {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 16px;
      height: 16px;
      border: 1px solid currentColor;
      border-radius: 50%;
      color: var(--muted);
      font-size: 11px;
      font-weight: 700;
      line-height: 1;
      cursor: help;
      vertical-align: text-top;
    }
    .fiamm-pdp-documents {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    .fiamm-pdp-documents a {
      display: inline-flex;
      align-items: center;
      min-height: 36px;
      padding: 0 14px;
      border-radius: 999px;
      background: #ffffff;
      color: var(--fiamm-ink);
      font-weight: 800;
      text-decoration: none;
    }
    .fiamm-pdp-empty {
      margin: 0;
      color: #565d67;
    }
    .fiamm-pdp-trust,
    .fiamm-pdp-related {
      display: grid;
      gap: 18px;
      max-width: 100%;
    }
    .fiamm-pdp-trust h2,
    .fiamm-pdp-related h2 {
      margin: 0;
      font-size: clamp(1.32rem, 2vw, 1.85rem);
    }
    .fiamm-pdp-trust__grid,
    .fiamm-pdp-related__grid {
      display: flex;
      gap: 16px;
      max-width: 100%;
      overflow-x: auto;
      overflow-y: hidden;
      padding-bottom: 8px;
      scroll-snap-type: x proximity;
      scrollbar-width: none;
    }
    .fiamm-pdp-trust__grid::-webkit-scrollbar,
    .fiamm-pdp-related__grid::-webkit-scrollbar {
      display: none;
    }
    .fiamm-pdp-trust__grid article,
    .fiamm-pdp-related-card {
      flex: 0 0 clamp(230px, 24vw, 320px);
      min-height: clamp(170px, 18vw, 260px);
      border-radius: 8px;
      background: #f1f2f4;
      text-decoration: none;
      scroll-snap-align: start;
    }
    .fiamm-pdp-trust__grid article {
      display: flex;
      flex-direction: column;
      justify-content: end;
      gap: 8px;
      padding: 18px;
    }
    .fiamm-pdp-trust__grid strong {
      font-size: 1rem;
    }
    .fiamm-pdp-trust__grid span {
      color: #606873;
      line-height: 1.4;
    }
    .fiamm-pdp-related__series {
      display: grid;
      grid-template-columns: repeat(6, minmax(0, 1fr));
      gap: 12px;
    }
    .fiamm-pdp-related__series a {
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 88px;
      padding: 16px 20px;
      border-radius: 10px;
      background: var(--fiamm-red);
      color: #ffffff;
      font-family: var(--site-font-heading);
      font-size: clamp(1.35rem, 2vw, 2rem);
      line-height: 1.05;
      text-decoration: none;
    }
    .fiamm-pdp-related__series strong {
      font-size: clamp(1.8rem, 2.8vw, 2.65rem);
      font-weight: 900;
    }
    body.site-monobrand .fiamm-pdp-hero {
      grid-template-columns: minmax(360px, 0.98fr) minmax(520px, 1.02fr);
      gap: clamp(26px, 3.2vw, 48px);
    }
    /* Поле картинки скруглено, как карточки справа от него: до 19.09 это было
       единственное поле сайта без скругления — на обоих монобрендах (Dio). */
    body.site-monobrand .fiamm-pdp-gallery__stage {
      aspect-ratio: 1 / 1;
      min-height: 0;
      border-radius: 18px;
      background: #ffffff;
    }
    body.site-monobrand .fiamm-pdp-gallery__stage img {
      max-height: none;
    }
    body.site-monobrand .fiamm-pdp-decision {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
      columns: auto;
    }
    body.site-monobrand .fiamm-pdp-decision-card {
      display: flex;
      width: auto;
      min-height: 168px;
      margin: 0;
      padding: 20px;
      border-radius: 18px;
      background: #f3f3f3;
      break-inside: auto;
    }
    body.site-monobrand .fiamm-pdp-decision-card--price {
      grid-row: span 2;
      min-height: 318px;
    }
    body.site-monobrand .fiamm-pdp-card-help {
      background: #d2d2d2;
    }
    body.site-monobrand .fiamm-pdp-tabs {
      border-radius: 18px;
      background: #f3f3f3;
    }
    body.site-monobrand .fiamm-pdp-tabs__nav {
      border-bottom-color: #d8d8d8;
    }
    body.site-monobrand .fiamm-pdp-related-card,
    body.site-monobrand .fiamm-pdp-trust__grid article {
      border-radius: 18px;
      background: #f3f3f3;
    }
    .fiamm-article-detail {
      /* reading_width per site_content_areas.md is a 640-760 corridor; the body
         was running at 880, outside it. 720 is the figure the Article Page
         review named and it sits inside the corridor. */
      --fiamm-article-narrow: 640px;
      --fiamm-article-normal: 720px;
      --fiamm-article-wide: 1080px;
      padding-top: clamp(26px, 3vw, 42px);
      padding-bottom: clamp(58px, 7vw, 96px);
    }
    .fiamm-article-detail__grid {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, var(--fiamm-article-normal)) minmax(180px, 0.32fr);
      gap: clamp(22px, 3.5vw, 48px);
      align-items: start;
    }
    .fiamm-article-detail__article {
      display: grid;
      gap: 26px;
      min-width: 0;
    }
    .fiamm-article-detail__breadcrumbs {
      margin-bottom: -6px;
    }
    .fiamm-article-detail__header {
      display: grid;
      gap: 18px;
      max-width: var(--fiamm-article-normal);
    }
    .fiamm-article-detail__kicker {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px 14px;
      color: #747a84;
      font-size: 0.86rem;
      font-weight: 700;
      line-height: 1.35;
      text-transform: uppercase;
    }
    .fiamm-article-detail__pill {
      display: inline-flex;
      align-items: center;
      min-height: 30px;
      padding: 0 12px;
      border-radius: 999px;
      background: var(--fiamm-red);
      color: #ffffff;
    }
    .fiamm-article-detail__header h1 {
      margin: 0;
      color: var(--fiamm-ink);
      font-family: var(--site-font-heading);
      font-size: clamp(2.35rem, 4vw, 4.2rem);
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.02;
    }
    .fiamm-article-detail__lead {
      max-width: var(--fiamm-article-narrow);
      margin: 0;
      color: #555b64;
      font-size: clamp(1.05rem, 1.3vw, 1.22rem);
      line-height: 1.62;
    }
    .fiamm-article-detail__meta-row {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      padding-top: 18px;
      border-top: 1px solid #dedede;
    }
    .fiamm-article-detail__byline {
      display: flex;
      flex-wrap: wrap;
      gap: 8px 16px;
      color: #747a84;
      font-size: 0.9rem;
      line-height: 1.4;
    }
    .fiamm-article-detail__byline span:first-child {
      color: var(--fiamm-ink);
      font-weight: 800;
    }
    .fiamm-article-detail__hero {
      margin: 0;
    }
    .fiamm-article-detail__hero picture,
    .fiamm-article-detail__hero img {
      display: block;
      width: 100%;
    }
    .fiamm-article-detail__hero img {
      aspect-ratio: 16 / 9;
      border-radius: 0;
      background: #f3f3f3;
      object-fit: cover;
    }
    .fiamm-article-detail__hero figcaption {
      margin-top: 10px;
      color: #747a84;
      font-size: 0.86rem;
      line-height: 1.45;
    }
    .fiamm-article-detail__content {
      max-width: var(--fiamm-article-narrow);
      margin: 0;
      color: #22262d;
      font-size: 1.02rem;
      line-height: 1.78;
    }
    .fiamm-article-detail__content h2,
    .fiamm-article-detail__content h3 {
      margin: 2.2em 0 0.7em;
      color: var(--fiamm-ink);
      font-family: var(--site-font-heading);
      letter-spacing: 0;
      line-height: 1.14;
    }
    .fiamm-article-detail__content h2 {
      font-size: clamp(1.55rem, 2vw, 2.1rem);
    }
    .fiamm-article-detail__content h3 {
      font-size: clamp(1.24rem, 1.5vw, 1.55rem);
    }
    .fiamm-article-detail__content p,
    .fiamm-article-detail__content ul,
    .fiamm-article-detail__content ol,
    .fiamm-article-detail__content blockquote,
    .fiamm-article-detail__content figure {
      margin-top: 0;
      margin-bottom: 1.25em;
    }
    .fiamm-article-detail__content blockquote {
      padding: 20px 24px;
      border-left: 4px solid var(--fiamm-red);
      border-radius: 0 18px 18px 0;
      background: #f3f3f3;
      color: #323842;
      font-weight: 700;
    }
    .fiamm-article-detail__content table {
      width: 100%;
      border-collapse: collapse;
      margin: 22px 0;
      overflow: hidden;
      border-radius: 18px;
      background: #f3f3f3;
    }
    .fiamm-article-detail__content th,
    .fiamm-article-detail__content td {
      padding: 12px 14px;
      border-bottom: 1px solid #dedede;
      text-align: left;
      vertical-align: top;
    }
    .fiamm-article-detail__content tr:last-child th,
    .fiamm-article-detail__content tr:last-child td {
      border-bottom: 0;
    }
    .fiamm-article-detail__rail--right {
      position: sticky;
      top: calc(var(--shell-height, 96px) + 22px);
      min-width: 0;
    }
    .fiamm-article-detail__toc {
      display: grid;
      gap: 12px;
      padding-top: 8px;
    }
    .fiamm-article-detail__toc span {
      color: #747a84;
      font-size: 0.76rem;
      font-weight: 800;
      text-transform: uppercase;
    }
    .fiamm-article-detail__toc a {
      color: var(--fiamm-ink);
      font-size: 0.92rem;
      font-weight: 700;
      line-height: 1.35;
      text-decoration: none;
    }
    .fiamm-article-detail__toc a:hover,
    .fiamm-article-detail__toc a:focus-visible {
      color: var(--fiamm-red);
      outline: none;
    }
    .fiamm-rich,
    .fiamm-request-layout,
    .fiamm-cart-layout {
      padding: 24px;
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background: #ffffff;
    }
    .fiamm-rich h2 {
      margin: 0 0 12px;
      font-size: 1.35rem;
    }
    .fiamm-rich div {
      color: #414854;
      line-height: 1.65;
      white-space: pre-wrap;
    }
    .fiamm-spec-table-wrap {
      overflow-x: auto;
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background: #ffffff;
    }
    .fiamm-spec-table {
      width: 100%;
      border-collapse: collapse;
      min-width: 560px;
    }
    .fiamm-spec-table th,
    .fiamm-spec-table td {
      padding: 12px 14px;
      border-bottom: 1px solid var(--fiamm-line);
      text-align: left;
      vertical-align: top;
    }
    .fiamm-spec-table th {
      width: 42%;
      color: #5f6874;
      font-weight: 700;
    }
    .fiamm-spec-table tr:last-child th,
    .fiamm-spec-table tr:last-child td {
      border-bottom: 0;
    }
    .fiamm-request-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(280px, 0.38fr);
      gap: 22px;
      align-items: start;
    }
    .fiamm-cart-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 0.42fr);
      gap: 22px;
      align-items: start;
    }
    .fiamm-cart-list {
      display: grid;
      gap: 12px;
      min-width: 0;
    }
    .fiamm-cart-empty {
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background: #f8fafc;
      padding: 14px;
    }
    .fiamm-cart-empty[hidden] {
      display: none;
    }
    /* Сетка позиций та же, что у ленты товаров: класс `fiamm-product-grid`
       стоит на этом же контейнере и задаёт колонки. */
    .fiamm-cart-items {
      display: grid;
      gap: var(--fiamm-card-gap, 24px);
    }
    .fiamm-request-form__row {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
      gap: 14px;
    }
    .fiamm-cart-form {
      padding: 18px;
      border: 1px solid var(--fiamm-line);
      border-radius: 8px;
      background: #f4f5f7;
    }
    .fiamm-cart-form__meta {
      margin: -4px 0 0;
      color: #64748b;
      font-size: 0.9rem;
      font-weight: 700;
    }
    .fiamm-request-form {
      display: grid;
      gap: 14px;
    }
    .fiamm-request-form__notice,
    .fiamm-request-form__error {
      display: grid;
      gap: 4px;
      border-radius: 8px;
      padding: 12px 14px;
      line-height: 1.45;
    }
    .fiamm-request-form__notice {
      border: 1px solid #b7d8c0;
      background: #eff8f1;
      color: #1f6b34;
    }
    .fiamm-request-form__error {
      border: 1px solid #efb8b8;
      background: #fff1f1;
      color: #9b1c1c;
      font-weight: 800;
    }
    .fiamm-request-form label {
      display: grid;
      gap: 7px;
      color: #4b5563;
      font-weight: 800;
    }
    /* One shape language across the system (SITE-TOKEN-002 extended to form
       controls): a one-line control is a full capsule, a textarea keeps the same
       corner arc. The questionnaire service renders the same way, so a sheet
       shown on a product site does not read as a foreign component. */
    .fiamm-request-form input,
    .fiamm-request-form textarea {
      width: 100%;
      min-height: 52px;
      border: 1px solid #cfd5dd;
      border-radius: 999px;
      padding: 13px 22px;
      color: var(--fiamm-ink);
      font: inherit;
      background: #ffffff;
    }
    .fiamm-request-form textarea {
      border-radius: 26px;
      resize: vertical;
    }
    .fiamm-request-aside {
      padding: 18px;
      border-radius: 8px;
      background: #f4f5f7;
    }
    .fiamm-request-aside ul {
      margin: 12px 0 0;
      padding-left: 18px;
      color: #4b5563;
      line-height: 1.6;
    }
    .fiamm-footer {
      width: 100%;
      margin: 22px 0 0;
      padding: 0;
      border: 0;
      background: #808080;
      color: rgba(255, 255, 255, 0.95);
    }
    .fiamm-footer__inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      min-width: 0;
      width: min(calc(100% - (var(--content-gutter-mobile) * 2)), var(--content-width-max));
      min-height: 52px;
      margin: 0 auto;
    }
    .fiamm-footer__links {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 18px;
      margin: 0;
    }
    .fiamm-footer__links a {
      position: relative;
      color: inherit;
      text-decoration: none;
      font-size: 0.82rem;
      font-weight: 500;
      white-space: nowrap;
    }
    .fiamm-footer__links a + a::before {
      content: "";
      position: absolute;
      left: -10px;
      top: 50%;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.48);
      transform: translateY(-50%);
    }
    .fiamm-footer__links a:hover {
      color: #ffffff;
    }
    .fiamm-footer__contacts {
      display: inline-flex;
      align-items: center;
      gap: 26px;
      min-width: 0;
      font-size: 0.82rem;
      font-weight: 500;
      line-height: 1.2;
      letter-spacing: 0;
    }
    .fiamm-footer__contacts a {
      color: inherit;
      text-decoration: none;
      white-space: nowrap;
      font: inherit;
      line-height: inherit;
      letter-spacing: inherit;
    }
    .fiamm-footer__contacts a:hover {
      color: #ffffff;
    }
    /* Строка продавца: отдельный ряд под ссылками, а не третья колонка. В один
       ряд она не влезает ни на каком экране — имя, ИНН, ОГРН и адрес длиннее
       всего остального подвала вместе взятого. */
    .fiamm-footer__legal {
      border-top: 1px solid rgba(255, 255, 255, 0.18);
    }
    .fiamm-footer__legal-inner {
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      gap: 6px 18px;
      width: min(calc(100% - (var(--content-gutter-mobile) * 2)), var(--content-width-max));
      margin: 0 auto;
      padding: 10px 0 12px;
      font-size: 0.74rem;
      line-height: 1.45;
      color: rgba(255, 255, 255, 0.78);
    }
    .fiamm-footer__seller {
      font-weight: 500;
      color: rgba(255, 255, 255, 0.92);
    }
    .fiamm-footer__seller-contact {
      color: inherit;
      text-decoration: none;
      white-space: nowrap;
    }
    .fiamm-footer__seller-contact:hover {
      color: #ffffff;
    }
    @media (max-width: 860px) {
      body.site-monobrand {
        --shell-height: 66px;
      }
      body.site-monobrand .wrap {
        gap: 22px;
      }
      body.site-monobrand .site-shell__inner {
        min-height: var(--shell-height);
      }
      body.site-monobrand .fiamm-shell-top {
        display: none;
      }
      body.site-monobrand .fiamm-shell-main {
        min-height: var(--shell-height);
      }
      .fiamm-hero,
      .fiamm-catalog-head,
      .fiamm-pdp-head,
      .fiamm-request-layout,
      .fiamm-cart-layout {
        grid-template-columns: 1fr;
      }
      body.site-monobrand .fiamm-pdp-hero {
        grid-template-columns: 1fr;
      }
      body.site-monobrand .fiamm-pdp-gallery {
        position: static;
      }
      body.site-monobrand .fiamm-pdp-decision {
        grid-template-columns: 1fr;
      }
      body.site-monobrand .fiamm-pdp-decision-card--price {
        grid-row: auto;
      }
      .fiamm-article-detail__grid {
        grid-template-columns: 1fr;
      }
      .fiamm-article-detail__rail {
        display: none;
      }
      .fiamm-article-detail__header h1 {
        font-size: clamp(2rem, 10vw, 2.75rem);
      }
      .fiamm-hero {
        min-height: auto;
        padding: 22px;
      }
      .fiamm-hero h1,
      .fiamm-catalog-head h1,
      .fiamm-pdp-head h1 {
        font-size: 2.15rem;
      }
      .fiamm-catalog-head,
      .fiamm-pdp-head,
      .fiamm-rich,
      .fiamm-request-layout,
      .fiamm-cart-layout {
        padding: 18px;
      }
      .fiamm-pdp-head__media {
        min-height: 280px;
      }
      .fiamm-product-card__facts,
      .fiamm-pdp-specs {
        grid-template-columns: 1fr;
      }
      .fiamm-footer__inner {
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        min-height: auto;
        padding: 14px 0;
      }
      .fiamm-footer__links,
      .fiamm-footer__contacts {
        width: 100%;
      }
      .fiamm-footer__contacts {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
      }
    }
    /* FIAMM SBWS wave 31.05: transparent hero shell and open commerce rails. */
    body.site-monobrand {
      --shell-height: 108px;
      --fiamm-shell-aux-height: 36px;
      --fiamm-shell-main-height: 72px;
      --fiamm-shell-tier-gap: 10px;
      --fiamm-squircle-radius: 18px;
      /* Радиусы карточек. Внешний — у самой карточки, внутренний — у медиа
         внутри неё. Пара измерена и утверждена; в правилах стоит ссылка на
         токен, а не число, иначе значение расходится при каждой правке —
         на главной внутренний радиус успел стать 4px при внешнем 18px. */
      --fiamm-card-radius: 20px;
      --fiamm-card-inner-radius: 10px;
      /* One pill for the whole site. Chips, text buttons and round controls are
         the same family of element and must not each pick their own radius --
         they were running at 18, 30, 999 and 50% on a single page. */
      --fiamm-pill-radius: 999px;
      --site-font-general: "Inter", Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-body: "Inter", Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-ui: "Inter", Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-header: "Montserrat", Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-menu: "Montserrat", Segoe UI, Helvetica Neue, Arial, sans-serif;
      --site-font-heading: "Montserrat", Segoe UI, Helvetica Neue, Arial, sans-serif;
      background: #ffffff;
    }
    body.site-monobrand .site-shell {
      background: var(--fiamm-red);
      transition: background-color 180ms ease-out, transform 180ms ease-out;
    }
    /* Режим «шапка поверх тёмного героя». Отключён 25.08.2026: класс
       `fiamm-header-overlay` рантайм не выставляет ни на одной странице.
       Причина в решении Сергея — шапка всегда однотипна, а белый фон под
       ней закрывает не особый режим, а скрим-блок, который теперь стоит
       первым экраном (DS26082402, S1). Правила оставлены целиком: вернуть
       режим — значит вернуть выдачу класса, одна строка в `base.html`. */
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) {
      background: transparent;
    }
    body.site-monobrand .site-shell.is-scrolled {
      background: var(--fiamm-red);
      box-shadow: 0 10px 26px rgba(31, 31, 31, 0.14);
    }
    body.site-monobrand .site-shell__inner {
      overflow: visible;
      transition: min-height 180ms ease-out;
    }
    body.site-monobrand .fiamm-shell-top {
      min-height: var(--fiamm-shell-aux-height);
      border-bottom: 0;
      background: rgba(31, 31, 31, 0.75);
      box-shadow: 0 0 0 100vmax rgba(31, 31, 31, 0.75);
      clip-path: inset(0 -100vmax);
      color: rgba(255, 255, 255, 0.86);
      transition:
        min-height 180ms ease-out,
        max-height 180ms ease-out,
        opacity 140ms ease-out,
        transform 180ms ease-out;
    }
    body.site-monobrand .site-shell.is-scroll-up .fiamm-shell-top {
      background: rgba(31, 31, 31, 0.92);
      box-shadow: 0 0 0 100vmax rgba(31, 31, 31, 0.92);
    }
    body.site-monobrand .site-shell.is-scroll-down .site-shell__inner {
      min-height: var(--fiamm-shell-main-height);
    }
    body.site-monobrand .site-shell.is-scroll-down .fiamm-shell-top {
      min-height: 0;
      max-height: 0;
      opacity: 0;
      overflow: hidden;
      transform: translateY(-100%);
      pointer-events: none;
    }
    body.site-monobrand .fiamm-shell-main {
      min-height: var(--fiamm-shell-main-height);
    }
    body.site-monobrand .fiamm-shell-brand {
      display: inline-flex;
      align-items: center;
      gap: 18px;
      min-width: 0;
    }
    body.site-monobrand .fiamm-shell-slogan {
      display: inline-flex;
      align-items: center;
      min-height: 54px;
      color: rgba(255, 255, 255, 0.94);
      font-family: "Oswald", var(--site-font-heading);
      font-size: clamp(1.9rem, 1.9vw, 1.9rem);
      font-weight: 400;
      line-height: 1.02;
      text-transform: uppercase;
    }
    body.site-monobrand .site-logo__image {
      height: 54px;
      max-width: 198px;
      max-height: 54px;
    }
    body.site-monobrand .site-shell-action,
    body.site-monobrand .site-burger.site-shell-action {
      width: 54px;
      height: 54px;
    }
    body.site-monobrand .site-shell-icon {
      width: 30px;
      height: 30px;
    }
    body.site-monobrand.fiamm-home-route.with-shell .wrap {
      /* Главная больше ничем не отличается от прочих страниц по ширине:
         полноширинных блоков на ней не осталось (T6). Правило сохранено
         только ради верхнего отступа под фиксированной шапкой. */
      padding-top: calc(var(--shell-height) + 20px);
    }
    body.site-monobrand.fiamm-home-route .fiamm-page {
      gap: var(--fiamm-vertical-gap);
    }
    /* Root surfaces sit directly on the page: one gutter, no inner container.
       Per site_content_areas.md the header, hero and root sections must share
       the same left/right edge, so sections carry no padding of their own. */
    /* Второй контейнер на секциях главной снят 27.08.2026. Он был нужен, пока
       `.wrap` на главной шёл во всю ширину под полноширинный скрим-блок: секции
       приходилось вписывать в контентную ширину поодиночке. Скрим переехал в
       контентную область (T6), `.wrap` стал таким же, как на остальных
       страницах, — и правило начало сужать секции второй раз: 1233 от края 96
       вместо канонических 1329 от 48. Контентная область главной обязана
       совпадать с каталогом, кабинетом и справкой (SITE-FRAME-004). */
    body.site-monobrand.fiamm-home-route .fiamm-home > section {
      box-sizing: border-box;
    }
    body.site-monobrand .fiamm-catalog > section,
    body.site-monobrand .fiamm-catalog .fiamm-catalog-rubrics {
      box-sizing: border-box;
    }
    body.site-monobrand .fiamm-catalog {
      gap: 18px;
    }
    body.site-monobrand .fiamm-catalog .fiamm-catalog-head {
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
    }
    body.site-monobrand .fiamm-catalog {
      width: 100%;
      max-width: var(--content-width-max);
      margin: 0 auto;
      /* No horizontal padding of its own: .wrap already sets the frame, and
         adding it here inset the catalog twice and left it narrower than the
         rest of the site. */
      padding: var(--fiamm-edge-pad) 0 90px;
      gap: 0;
      background: var(--fiamm-page-bg, #fbfbfb);
    }
    body.site-monobrand .fiamm-catalog > section,
    body.site-monobrand .fiamm-catalog .fiamm-catalog-rubrics,
    body.site-monobrand .fiamm-catalog > .fiamm-section {
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .fiamm-catalog-roots {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 20px;
      margin-bottom: 60px;
    }
    body.site-monobrand .fiamm-catalog-root-card {
      display: flex;
      flex-direction: column;
      border: 1px solid #ececec;
      border-radius: 20px;
      background: #ffffff;
      color: inherit;
      text-decoration: none;
      transition: background-color 150ms ease, border-color 150ms ease, transform 150ms ease;
    }
    body.site-monobrand .fiamm-catalog-root-card:hover,
    body.site-monobrand .fiamm-catalog-root-card:focus-visible {
      background: #fafafa;
      border-color: #e1e1e1;
      outline: none;
      transform: translateY(-2px);
    }
    body.site-monobrand .fiamm-catalog-root-card__media {
      display: flex;
      aspect-ratio: 4 / 3;
      margin: 10px 10px 0;
      align-items: center;
      justify-content: center;
      border-radius: 16px;
      background-color: #ffffff;
      background-image: var(--fiamm-root-image, none);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      overflow: hidden;
    }
    body.site-monobrand .fiamm-catalog-root-card__media small,
    body.site-monobrand .fiamm-catalog-root-card__body small,
    body.site-monobrand .fiamm-catalog-strip-card small {
      font-family: "Spline Sans Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
    }
    body.site-monobrand .fiamm-catalog-root-card__body {
      display: grid;
      gap: 8px;
      padding: 14px 20px 20px;
    }
    body.site-monobrand .fiamm-catalog-root-card__body strong {
      color: #1b1b1b;
      font-size: 19px;
      font-weight: 800;
      line-height: 1.2;
      letter-spacing: -0.018em;
    }
    body.site-monobrand .fiamm-catalog-root-card__body small {
      color: #9a9a9a;
      font-size: 11.5px;
      letter-spacing: 0.04em;
    }
    /* Same divider as the home rails: a 2px rule with the label centred on it. */
    body.site-monobrand .fiamm-catalog-label {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 40px;
      margin: 0 0 16px;
      color: var(--fiamm-chip-ink, #5a5a5a);
      font-family: var(--site-font-general);
      font-size: 12px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 1.5px;
      text-transform: uppercase;
    }
    body.site-monobrand .fiamm-catalog-label::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      z-index: 0;
      height: 2px;
      background: var(--fiamm-chip-line, #ececec);
      transform: translateY(-50%);
    }
    body.site-monobrand .fiamm-catalog-label .fiamm-rail-chip {
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      height: 40px;
      padding: 0 22px;
      border-radius: 999px;
      background: var(--fiamm-chip-bg, #ececec);
      color: inherit;
      white-space: nowrap;
    }
    body.site-monobrand .fiamm-catalog-strip {
      margin-bottom: 52px;
    }
    body.site-monobrand .fiamm-catalog-strip--application {
      margin-bottom: 60px;
    }
    body.site-monobrand .fiamm-catalog-strip__frame {
      position: relative;
    }
    body.site-monobrand .fiamm-catalog-strip__viewport {
      display: flex;
      gap: 16px;
      overflow-x: auto;
      border-radius: var(--fiamm-card-radius);
      padding: 0;
      scroll-snap-type: x proximity;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
    body.site-monobrand .fiamm-catalog-strip__viewport::-webkit-scrollbar {
      display: none;
    }
    body.site-monobrand .fiamm-catalog-strip-card {
      flex: 0 0 240px;
      scroll-snap-align: start;
      display: flex;
      flex-direction: column;
      gap: 10px;
      padding: 20px 22px;
      border-radius: 20px;
      background: #f3f3f3;
      color: inherit;
      text-decoration: none;
      transition: background-color 150ms ease, transform 150ms ease, box-shadow 150ms ease;
    }
    body.site-monobrand .fiamm-catalog-strip--type .fiamm-catalog-strip-card {
      justify-content: flex-end;
      min-height: 170px;
      padding: 20px;
      background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.18), transparent 36%),
        linear-gradient(135deg, #5e0814 0%, #b51626 46%, #184d9f 100%);
      color: #ffffff;
    }
    body.site-monobrand .fiamm-catalog-strip--application .fiamm-catalog-strip-card {
      flex-basis: 300px;
      padding: 10px 10px 20px;
      border: 1px solid #ececec;
      border-radius: 20px;
      background: #ffffff;
    }
    body.site-monobrand .fiamm-catalog-strip-card:hover,
    body.site-monobrand .fiamm-catalog-strip-card:focus-visible {
      background: #ececec;
      outline: none;
      transform: translateY(-2px);
    }
    body.site-monobrand .fiamm-catalog-strip--type .fiamm-catalog-strip-card:hover,
    body.site-monobrand .fiamm-catalog-strip--type .fiamm-catalog-strip-card:focus-visible {
      background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.2), transparent 36%),
        linear-gradient(135deg, #670a18 0%, #c21a2c 46%, #1b56ac 100%);
      /* Тень при наведении снята вместе с остальными тенями в лентах: область
         ленты её срезает, и наведение давало обрубленный прямоугольник. */
    }
    body.site-monobrand .fiamm-catalog-strip--application .fiamm-catalog-strip-card:hover,
    body.site-monobrand .fiamm-catalog-strip--application .fiamm-catalog-strip-card:focus-visible {
      background: #fafafa;
    }
    body.site-monobrand .fiamm-catalog-strip-card__eyebrow {
      color: rgba(255, 255, 255, 0.78);
      font-family: "Spline Sans Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
      font-size: 11px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    body.site-monobrand .fiamm-catalog-strip-card__icon {
      display: flex;
      width: 38px;
      height: 38px;
      flex: 0 0 auto;
      align-items: center;
      justify-content: center;
      border-radius: 10px;
      background: #ffffff;
      color: #7a7a7a;
    }
    body.site-monobrand .fiamm-catalog-strip-card__icon svg {
      width: 19px;
      height: 19px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    body.site-monobrand .fiamm-catalog-strip-card__icon svg path {
      fill: currentColor;
      stroke: none;
    }
    body.site-monobrand .fiamm-catalog-strip-card__media {
      width: 100%;
      height: auto;
      aspect-ratio: 4 / 3;
      border-radius: var(--fiamm-card-inner-radius);
      background-color: #ffffff;
      background-image: var(--fiamm-card-image, none);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
    }
    body.site-monobrand .fiamm-catalog-strip-card strong {
      color: #1b1b1b;
      font-size: 17px;
      font-weight: 800;
      line-height: 1.2;
      letter-spacing: -0.012em;
    }
    body.site-monobrand .fiamm-catalog-strip--type .fiamm-catalog-strip-card strong,
    body.site-monobrand .fiamm-catalog-strip--type .fiamm-catalog-strip-card small {
      color: #ffffff;
    }
    body.site-monobrand .fiamm-catalog-strip--application .fiamm-catalog-strip-card strong {
      padding: 14px 10px 0;
      font-size: 15px;
      font-weight: 700;
    }
    body.site-monobrand .fiamm-catalog-strip-card small {
      color: #9a9a9a;
      font-size: 11.5px;
      line-height: 1.35;
    }
    body.site-monobrand .fiamm-catalog-strip__arrow {
      position: absolute;
      top: 50%;
      z-index: 1;
      display: flex;
      width: 44px;
      height: 44px;
      align-items: center;
      justify-content: center;
      border: 0;
      border-radius: 999px;
      background: #ffffff;
      color: #1b1b1b;
      box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
      cursor: pointer;
      opacity: 0;
      pointer-events: none;
      transform: translateY(-50%);
      transition: background-color 150ms ease, transform 150ms ease, opacity 150ms ease;
    }
    body.site-monobrand .fiamm-catalog-strip:hover .fiamm-catalog-strip__arrow,
    body.site-monobrand .fiamm-catalog-strip__frame:hover .fiamm-catalog-strip__arrow,
    body.site-monobrand .fiamm-catalog-strip__frame:focus-within .fiamm-catalog-strip__arrow {
      opacity: 1;
      pointer-events: auto;
    }
    body.site-monobrand .fiamm-catalog-strip__arrow:hover,
    body.site-monobrand .fiamm-catalog-strip__arrow:focus-visible {
      background: #f3f3f3;
      outline: none;
      transform: translateY(-50%) scale(1.03);
    }
    body.site-monobrand .fiamm-catalog-strip__arrow--prev {
      left: -22px;
    }
    body.site-monobrand .fiamm-catalog-strip__arrow--next {
      right: -22px;
    }
    body.site-monobrand .fiamm-catalog-strip__arrow svg {
      width: 18px;
      height: 18px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2.2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    body.site-monobrand .fiamm-catalog .fiamm-section__head {
      margin-bottom: 16px;
    }
    body.site-monobrand .fiamm-catalog .fiamm-section__head h2 {
      color: #9a9a9a;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.125em;
      text-transform: uppercase;
    }
    body.site-monobrand .fiamm-catalog .fiamm-section__head span {
      color: #b0b0b0;
      font-family: "Spline Sans Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
      font-size: 12px;
      font-weight: 400;
      letter-spacing: 0.04em;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 18px;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card {
      border-color: #ececec;
      border-radius: 16px;
      box-shadow: none;
      transform: none;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card:hover,
    body.site-monobrand .fiamm-catalog .fiamm-product-card:focus-within {
      border-color: #e1e1e1;
      box-shadow: none;
      transform: translateY(-2px);
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__media {
      aspect-ratio: 4 / 3;
      margin: 10px 10px 0;
      padding: 18px;
      border-radius: 16px;
      background: #ffffff;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__body {
      min-height: 0;
      gap: 9px;
      padding: 16px 16px 12px;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card h3 {
      min-height: 2.6em;
      font-size: 15px;
      font-weight: 700;
      line-height: 1.3;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__signature {
      color: #9a9a9a;
      font-family: "Spline Sans Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
      font-size: 11.5px;
      font-weight: 400;
      letter-spacing: 0;
      text-transform: none;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__brief {
      display: none;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__price {
      margin-top: 2px;
      font-size: 18px;
      letter-spacing: -0.012em;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__actions {
      grid-template-columns: 40px auto 40px;
      gap: 8px;
      padding: 6px 16px 18px;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__icon-action,
    body.site-monobrand .fiamm-catalog .fiamm-product-card__view {
      height: 40px;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__icon-action {
      width: 40px;
      color: #9a9a9a;
      background: #f1f1f1;
    }
    body.site-monobrand .fiamm-catalog .fiamm-product-card__view {
      padding-inline: 16px;
    }
    body.site-monobrand .fiamm-catalog-products {
      display: block;
      margin: 0;
      padding: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .fiamm-catalog-product-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 18px;
    }
    body.site-monobrand .fiamm-catalog-product {
      min-width: 0;
      display: flex;
      flex-direction: column;
      border: 1px solid #ececec;
      border-radius: 20px;
      background: #ffffff;
      color: #1b1b1b;
      transition: border-color 150ms ease, background-color 150ms ease, transform 150ms ease, opacity 180ms ease;
    }
    body.site-monobrand .fiamm-catalog-product:hover,
    body.site-monobrand .fiamm-catalog-product:focus-within {
      border-color: #e1e1e1;
      transform: translateY(-2px);
    }
    body.site-monobrand .fiamm-catalog-product[hidden] {
      display: none;
    }
    body.site-monobrand .fiamm-catalog-product__media {
      display: flex;
      aspect-ratio: 4 / 3;
      margin: 10px 10px 0;
      align-items: center;
      justify-content: center;
      border-radius: 16px;
      background: #ffffff;
      color: inherit;
      text-decoration: none;
      overflow: hidden;
    }
    body.site-monobrand .fiamm-catalog-product__media img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
    body.site-monobrand .fiamm-catalog-product__placeholder {
      display: grid;
      width: 100%;
      height: 100%;
      place-items: center;
      color: #b0b0b0;
      font-size: 11.5px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    body.site-monobrand .fiamm-catalog-product__body {
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      gap: 10px;
      padding: 14px 20px 20px;
    }
    body.site-monobrand .fiamm-catalog-product h3 {
      margin: 0;
      color: #1b1b1b;
      font-family: var(--site-font-body);
      font-size: clamp(1rem, 0.92rem + 0.28vw, 1.18rem);
      font-weight: 800;
      line-height: 1.25;
    }
    body.site-monobrand .fiamm-catalog-product h3 a {
      color: inherit;
      text-decoration: none;
    }
    body.site-monobrand .fiamm-catalog-product__sub {
      color: #9a9a9a;
      font-size: 14px;
      line-height: 1.45;
    }
    body.site-monobrand .fiamm-catalog-product__stock {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      min-height: 18px;
    }
    body.site-monobrand .fiamm-catalog-product__stock span {
      width: 8px;
      height: 8px;
      border-radius: 999px;
      background: #1f9d55;
    }
    body.site-monobrand .fiamm-catalog-product__stock small {
      color: #7a7a7a;
      font-size: 12px;
      line-height: 1.2;
    }
    body.site-monobrand .fiamm-catalog-product__price {
      margin-top: 2px;
      color: #1b1b1b;
      font-size: 19px;
      font-weight: 800;
      line-height: 1.2;
      letter-spacing: -0.012em;
    }
    body.site-monobrand .fiamm-catalog-product__actions {
      display: grid;
      grid-template-columns: 40px minmax(0, 1fr) 40px;
      gap: 8px;
      align-items: center;
      margin-top: 4px;
    }
    body.site-monobrand .fiamm-catalog-product__icon,
    body.site-monobrand .fiamm-catalog-product__cart {
      display: inline-flex;
      height: 40px;
      align-items: center;
      justify-content: center;
      border: 0;
      border-radius: 999px;
      cursor: pointer;
      transition: background-color 150ms ease, color 150ms ease;
    }
    body.site-monobrand .fiamm-catalog-product__icon {
      width: 40px;
      background: #f1f1f1;
      color: #7a7a7a;
    }
    body.site-monobrand .fiamm-catalog-product__icon svg {
      width: 18px;
      height: 18px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    body.site-monobrand .fiamm-catalog-product__cart {
      justify-self: center;
      gap: 8px;
      min-width: 0;
      padding: 0 14px;
      background: #efefef;
      color: #1b1b1b;
      font-size: 13px;
      font-weight: 700;
      text-decoration: none;
      white-space: nowrap;
      text-transform: uppercase;
      letter-spacing: 0.6px;
    }
    body.site-monobrand .fiamm-catalog-product__cart svg {
      width: 16px;
      height: 16px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    body.site-monobrand .fiamm-catalog-product__icon:hover,
    body.site-monobrand .fiamm-catalog-product__icon:focus-visible,
    body.site-monobrand .fiamm-catalog-product__icon.is-active,
    body.site-monobrand .fiamm-catalog-product__icon[aria-pressed="true"] {
      background: var(--fiamm-red);
      color: #ffffff;
      outline: none;
    }
    /* Кнопка корзины в состоянии «в корзине» тёмная, а не красная: красный
       здесь — цвет наведения, и совпадение двух разных смыслов в одном цвете
       читалось как «наведено», а не как «уже добавлено». Раньше оба правила
       спорили за один селектор и решал порядок в файле. */
    body.site-monobrand .fiamm-catalog-product__cart.is-active,
    body.site-monobrand .fiamm-catalog-product__cart[aria-pressed="true"] {
      background: #202329;
      color: #ffffff;
      outline: none;
    }
    body.site-monobrand .fiamm-catalog-product__cart:hover,
    body.site-monobrand .fiamm-catalog-product__cart:focus-visible {
      background: var(--fiamm-red);
      color: #ffffff;
      outline: none;
    }
    body.site-monobrand .fiamm-catalog-load {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 12px;
      margin-top: 44px;
    }
    body.site-monobrand .fiamm-catalog-load__button {
      /* Элемент бывает и кнопкой (каталог подгружает на месте), и ссылкой
         (главная уводит в каталог). Оформление одно на оба случая. */
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 16px 42px;
      border: 0;
      border-radius: 999px;
      background: #efefef;
      color: #1b1b1b;
      cursor: pointer;
      font-family: var(--site-font-body);
      font-size: 13px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0.077em;
      text-transform: uppercase;
      transition: background-color 150ms ease;
    }
    body.site-monobrand .fiamm-catalog-load__button:hover,
    body.site-monobrand .fiamm-catalog-load__button:focus-visible {
      background: #e4e4e4;
      outline: none;
    }
    body.site-monobrand .fiamm-catalog-load__button[hidden] {
      display: none;
    }
    body.site-monobrand .fiamm-catalog-load__button svg {
      width: 16px;
      height: 16px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2.2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    body.site-monobrand .fiamm-catalog-load__count {
      color: #b0b0b0;
      font-family: "Spline Sans Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
      font-size: 12px;
      line-height: 1.2;
    }
    /* Скрим-блок. Первый экран главной: заголовок слева, картинка справа,
       на фоне страницы. До 25.08.2026 блок был полноширинной тёмной плашкой с
       фоновой фотографией — Сергей снял этот приём целиком: скрим стоит на
       белом, а полноширинных баннеров на сайте не будет (DS26082402, T6). */
    body.site-monobrand.fiamm-home-route .fiamm-hero {
      display: grid;
      min-height: 0;
      align-items: center;
      gap: clamp(28px, 4vw, 72px);
      padding: clamp(28px, 4vw, 56px) 0 clamp(24px, 3vw, 44px);
      border: 0;
      border-radius: 0;
      background: transparent;
      font-family: var(--site-font-heading);
    }
    /* Два режима, и выбирает их наличие картинки. С картинкой — две колонки,
       текст от левого края. Без картинки — одна колонка по центру: иначе
       полупустой левый столбец читается как незагрузившийся блок. */
    body.site-monobrand.fiamm-home-route .fiamm-hero--with-media {
      grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr);
      justify-items: start;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero--centered {
      grid-template-columns: minmax(0, 1fr);
      justify-items: center;
      text-align: center;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero--centered .fiamm-hero__copy {
      align-items: center;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero--centered .fiamm-actions,
    body.site-monobrand.fiamm-home-route .fiamm-hero--centered .fiamm-hero__facts {
      justify-content: center;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero__media {
      width: 100%;
      padding: 14px;
      border: 1px solid var(--fiamm-line, #ececec);
      border-radius: 28px;
      background: #ffffff;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero__media img {
      display: block;
      width: 100%;
      aspect-ratio: 4 / 3;
      object-fit: cover;
      border-radius: 18px;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero__facts {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero__facts span {
      padding: 9px 15px;
      border-radius: 999px;
      background: #f1f1f1;
      color: #7a7a7a;
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero__copy {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      width: min(100%, 920px);
      max-width: 920px;
      gap: 14px;
    }
    /* Баннер живёт в контентной области и только в ней. Полноширинная плашка
       снята вместе с фоном скрим-блока: на этих сайтах приём уже пройден и
       отброшен (T6). */
    body.site-monobrand .fiamm-banner {
      display: grid;
      gap: 14px;
    }
    body.site-monobrand .fiamm-banner-card {
      position: relative;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      gap: 10px;
      min-height: clamp(240px, 30vw, 360px);
      padding: clamp(24px, 3vw, 40px);
      border-radius: 24px;
      overflow: hidden;
      color: #ffffff;
      text-decoration: none;
      background: #1b1b1b;
    }
    body.site-monobrand .fiamm-banner-card::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(90deg, rgba(8, 10, 12, 0.82) 0%, rgba(8, 10, 12, 0.6) 42%, rgba(8, 10, 12, 0.12) 100%),
        var(--fiamm-banner-image, none) center center / cover no-repeat;
    }
    body.site-monobrand .fiamm-banner-card > * {
      position: relative;
      z-index: 1;
    }
    body.site-monobrand .fiamm-banner-card__tag {
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: rgba(255, 255, 255, 0.72);
    }
    body.site-monobrand .fiamm-banner-card strong {
      font-family: var(--site-font-heading);
      font-size: clamp(1.5rem, 2.6vw, 2.4rem);
      font-weight: 800;
      line-height: 1.12;
      max-width: 22ch;
    }
    body.site-monobrand .fiamm-banner-card span.fiamm-banner-card__lead {
      max-width: 52ch;
      color: rgba(255, 255, 255, 0.9);
      font-size: 1rem;
      line-height: 1.45;
    }
    @media (max-width: 900px) {
      /* Картинки в узком режиме нет никогда: колонка под неё съедала бы текст,
         ради которого блок и существует. */
      body.site-monobrand.fiamm-home-route .fiamm-hero--with-media {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
        text-align: center;
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero--with-media .fiamm-hero__copy {
        align-items: center;
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero--with-media .fiamm-actions,
      body.site-monobrand.fiamm-home-route .fiamm-hero--with-media .fiamm-hero__facts {
        justify-content: center;
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero__media {
        display: none;
      }
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero__eyebrow {
      color: #9a9a9a;
      font-family: var(--site-font-heading);
      font-size: clamp(1.5rem, 3vw, 2.75rem);
      font-weight: 400;
      line-height: 1.05;
      text-transform: uppercase;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero h1 {
      color: var(--fiamm-ink, #1b1b1b);
      font-size: clamp(2.04rem, 4.64vw, 4rem);
      font-weight: 900;
      line-height: 0.96;
      text-wrap: balance;
      overflow-wrap: anywhere;
      text-transform: uppercase;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero p {
      max-width: 620px;
      color: #6a6a6a;
      font-family: var(--site-font-heading);
      font-size: clamp(1.02rem, 1.4vw, 1.3rem);
      line-height: 1.34;
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero .fiamm-actions {
      margin-top: 12px;
    }
    .fiamm-button--squircle,
    .fiamm-query-chip {
      border-radius: var(--fiamm-pill-radius, 999px);
    }
    body.site-monobrand.fiamm-home-route .fiamm-hero .fiamm-button {
      min-height: 52px;
      padding: 0 22px;
      border-radius: var(--fiamm-pill-radius, 999px);
      font-family: var(--site-font-heading);
      font-size: 1.05rem;
      font-weight: 500;
      text-transform: uppercase;
    }
    .fiamm-query-strip,
    .fiamm-series-strip,
    .fiamm-content-strip,
    .fiamm-product-strip {
      display: flex;
      gap: var(--fiamm-card-gap, 24px);
      width: max-content;
      min-width: 100%;
      overflow: visible;
      padding: 0;
      scroll-snap-type: x proximity;
    }
    .fiamm-strip {
      position: relative;
      width: 100%;
    }
    /* Срез справа скругляется по контейнеру: прямой обрез виден как обрубок
       и расходится с формой самих карточек (решение Сергея 04.09). Отступы
       под тень больше не нужны — тени у карточек лент нет. */
    /* Отступов по вертикали нет намеренно: пока контейнер был выше карточки,
       его скруглённый угол резал карточку дугой, начинающейся раньше её
       собственного угла, — и обрезка читалась как другой, более мягкий радиус
       (снимок Сергея 05.09). Коробка контейнера обязана совпадать с коробкой
       карточки, тогда обрезка справа выглядит ровно как угол карточки. */
    .fiamm-strip__viewport {
      width: 100%;
      overflow-x: auto;
      overflow-y: hidden;
      border-radius: var(--fiamm-card-radius);
      padding: 0;
      margin: 0;
      scrollbar-width: none;
      touch-action: pan-x pan-y;
    }
    .fiamm-strip__viewport::-webkit-scrollbar {
      display: none;
    }
    .fiamm-strip-controls {
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      z-index: 3;
      height: 0;
      opacity: 0;
      pointer-events: none;
      transition: opacity 180ms ease;
    }
    .fiamm-strip:hover .fiamm-strip-controls,
    .fiamm-strip:focus-within .fiamm-strip-controls {
      opacity: 1;
    }
    /* Стрелка на упоре гаснет, а не притворяется рабочей. Видимой она
       остаётся намеренно: исчезающая кнопка сдвигает соседнюю и сбивает
       прицел, а погашенная показывает, что лента кончилась. */
    .fiamm-strip-control[disabled] {
      opacity: 0.3;
      cursor: default;
      pointer-events: none;
    }
    .fiamm-strip-control {
      position: absolute;
      top: 0;
      width: 42px;
      height: 42px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 0;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.72);
      color: var(--fiamm-ink);
      box-shadow: 0 12px 28px rgba(31, 31, 31, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.46);
      -webkit-backdrop-filter: blur(16px) saturate(150%);
      backdrop-filter: blur(16px) saturate(150%);
      cursor: pointer;
      padding: 0;
      pointer-events: auto;
      transform: translateY(-50%);
      transition: background 160ms ease, color 160ms ease, transform 160ms ease;
    }
    .fiamm-strip-control[data-fiamm-strip-prev] {
      left: 8px;
    }
    .fiamm-strip-control[data-fiamm-strip-next] {
      right: 8px;
    }
    .fiamm-strip-control:hover {
      background: rgba(255, 255, 255, 0.88);
      color: var(--fiamm-red);
      transform: translateY(-50%) scale(1.04);
    }
    .fiamm-strip-control:focus-visible {
      outline: 2px solid rgba(227, 6, 19, 0.42);
      outline-offset: 3px;
    }
    .fiamm-strip-control svg {
      width: 24px;
      height: 24px;
      fill: currentColor;
    }
    .fiamm-query-chip {
      flex: 0 0 auto;
      min-height: 38px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 14px;
      background: #f1f2f4;
      color: var(--fiamm-ink);
      font-size: 0.88rem;
      font-weight: 800;
      text-decoration: none;
      scroll-snap-align: start;
      transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
    }
    .fiamm-query-chip:hover,
    .fiamm-query-chip:focus-visible {
      background: var(--fiamm-red);
      color: #ffffff;
      outline: none;
      transform: translateY(-1px);
    }
    .fiamm-series-card {
      flex: 0 0 clamp(148px, 15vw, 192px);
      min-height: 116px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 16px 18px;
      border-radius: var(--fiamm-squircle-radius);
      background: var(--fiamm-red);
      color: #ffffff;
      text-decoration: none;
      scroll-snap-align: start;
      transition: background-color 160ms ease, transform 160ms ease;
    }
    .fiamm-series-card:hover,
    .fiamm-series-card:focus-visible {
      background: var(--fiamm-brand-color-hover);
      outline: none;
      transform: translateY(-2px);
    }
    .fiamm-series-card span {
      font-size: 0.98rem;
      text-transform: uppercase;
    }
    .fiamm-series-card strong {
      font-family: var(--site-font-heading);
      font-size: 1.72rem;
      line-height: 1;
      overflow-wrap: anywhere;
    }
    .fiamm-home-rail {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }
    /* Section header = divider with a centred label, the MUI pattern: a 2px rule
       running edge to edge with the chip sitting on it, mid-span. Chip geometry
       and type stay the mockup's own -- 40px tall, 0 22px padding,
       12px/700/1.5px uppercase. */
    .fiamm-home-rail h2 {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 40px;
      margin: 0;
      color: var(--fiamm-chip-ink, #5a5a5a);
      font-family: var(--site-font-general);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 1.5px;
      line-height: 1;
      text-transform: uppercase;
    }
    .fiamm-home-rail h2::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      z-index: 0;
      height: 2px;
      background: var(--fiamm-chip-line, #ececec);
      transform: translateY(-50%);
    }
    .fiamm-home-rail h2 .fiamm-rail-chip {
      white-space: nowrap;
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      height: 40px;
      padding: 0 22px;
      border-radius: 999px;
      background: var(--fiamm-chip-bg, #ececec);
      color: inherit;
    }
    body.site-monobrand .lp-account-lane__head h2::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      z-index: 0;
      height: 2px;
      background: var(--fiamm-chip-line, #ececec);
      transform: translateY(-50%);
    }
    body.site-monobrand .lp-account-lane__head h2 .fiamm-rail-chip {
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      height: 40px;
      padding: 0 22px;
      border-radius: 999px;
      background: var(--fiamm-chip-bg, #ececec);
      color: inherit;
      white-space: nowrap;
    }
    /* A button that already carries the accent answers by darkening; it had no
       hover at all, so the filled buttons were the only dead controls on the page. */
    body.site-monobrand .fiamm-button--primary:hover,
    body.site-monobrand .fiamm-button--primary:focus-visible {
      background: var(--fiamm-brand-color-hover, #b31414);
      color: #ffffff;
    }
    /* Service strip — Help Page.dc.html and Cabinet.dc.html open the same way:
       title and lead on the ground, then the surface's main actions, then the
       sections. Card geometry is the mockups' own. */
    body.site-monobrand .fiamm-service-strip__label {
      margin-bottom: 16px;
      color: #9a9a9a;
      font-family: var(--site-font-general);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 1.5px;
      text-transform: uppercase;
    }
    body.site-monobrand .fiamm-service-strip__track {
      display: flex;
      gap: 16px;
      width: max-content;
      min-width: 100%;
      scroll-snap-type: x proximity;
    }
    body.site-monobrand .fiamm-service-card {
      flex: 0 0 248px;
      scroll-snap-align: start;
      display: flex;
      flex-direction: column;
      gap: 10px;
      padding: 20px 22px;
      border-radius: 16px;
      background: #f3f3f3;
      color: var(--fiamm-ink, #1f1f1f);
      text-decoration: none;
      transition: background 160ms ease, transform 160ms ease;
    }
    body.site-monobrand .fiamm-service-card:hover,
    body.site-monobrand .fiamm-service-card:focus-visible {
      background: #ececec;
      transform: translateY(-2px);
      outline: none;
    }
    body.site-monobrand .fiamm-service-card__icon {
      width: 38px;
      height: 38px;
      border-radius: 10px;
      background: #ffffff;
      color: #7a7a7a;
      display: flex;
      align-items: center;
      justify-content: center;
      flex: none;
      -webkit-mask: none;
      mask: none;
      position: relative;
    }
    body.site-monobrand .fiamm-service-card__icon::after {
      content: "";
      width: 19px;
      height: 19px;
      background: currentColor;
      -webkit-mask: no-repeat center / 19px 19px;
      mask: no-repeat center / 19px 19px;
      -webkit-mask-image: var(--fiamm-service-icon);
      mask-image: var(--fiamm-service-icon);
    }
    body.site-monobrand .fiamm-service-card__icon[data-icon="doc"] {
      --fiamm-service-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/><path d='M14 2v6h6'/></svg>");
    }
    body.site-monobrand .fiamm-service-card__icon[data-icon="bulb"] {
      --fiamm-service-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18h6'/><path d='M10 22h4'/><path d='M12 2a7 7 0 0 0-4 12.7c.6.5 1 1.3 1 2.3h6c0-1 .4-1.8 1-2.3A7 7 0 0 0 12 2z'/></svg>");
    }
    body.site-monobrand .fiamm-service-card__icon[data-icon="tag"] {
      --fiamm-service-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20.59 13.41 11 3.83A2 2 0 0 0 9.59 3.24L4 3a1 1 0 0 0-1 1l.24 5.59a2 2 0 0 0 .59 1.41l9.58 9.58a2 2 0 0 0 2.83 0l4.35-4.35a2 2 0 0 0 0-2.82z'/></svg>");
    }
    body.site-monobrand .fiamm-service-card__icon[data-icon="trend"] {
      --fiamm-service-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M23 6l-9.5 9.5-5-5L1 18'/><path d='M17 6h6v6'/></svg>");
    }
    body.site-monobrand .fiamm-service-card__icon[data-icon="form"] {
      --fiamm-service-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 4h16v16H4z'/><path d='M8 9h8M8 13h5'/></svg>");
    }
    body.site-monobrand .fiamm-service-card__icon[data-icon="cart"] {
      --fiamm-service-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='20' r='1'/><circle cx='18' cy='20' r='1'/><path d='M2 3h2.2l2.5 12.4a1 1 0 0 0 1 .8h8.9a1 1 0 0 0 1-.78L21 7H5.3'/></svg>");
    }
    body.site-monobrand .fiamm-service-card__icon[data-icon="user"] {
      --fiamm-service-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/><circle cx='12' cy='7' r='4'/></svg>");
    }
    body.site-monobrand .fiamm-service-card__title {
      font-size: 15px;
      font-weight: 700;
      line-height: 1.3;
    }
    body.site-monobrand .fiamm-service-card__sub {
      color: #7a7a7a;
      font-size: 13px;
      line-height: 1.4;
    }
    /* Disclosure lists — docs/standards/sites/monobrand/disclosure_list_standard.md
       Source: storage/design/mockup/sites/Disclosure Lists.dc.html
       One rule above the rest: a chevron pointing right means the row navigates,
       a chevron pointing down means it opens in place. Every row has one. */
    body.site-monobrand .lp-help-settings-groups {
      display: grid;
      /* Two columns, not auto-fit: the mockup sets helpCols = '1fr 1fr', and a
         third column on a wide screen squeezes every row below its measure. */
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 40px 48px;
      align-items: start;
    }
    body.site-monobrand .lp-help-settings-group__summary {
      margin: 0 0 16px;
      padding: 0;
      color: var(--fiamm-chip-ink, #5a5a5a);
      font-family: var(--site-font-general);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 1.5px;
      line-height: 1;
      text-transform: uppercase;
    }
    body.site-monobrand .lp-help-settings-panel {
      max-width: 640px;
      border: 1px solid #ececec;
      border-radius: 16px;
      background: #ffffff;
      overflow: hidden;
    }
    body.site-monobrand details.lp-help-settings-row {
      display: block;
    }
    body.site-monobrand a.lp-help-settings-row,
    body.site-monobrand .lp-help-settings-row > summary {
      display: flex;
      align-items: center;
      gap: 14px;
      min-height: 60px;
      padding: 14px 24px;
      color: var(--fiamm-ink, #1f1f1f);
      font-size: 16px;
      font-weight: 600;
      line-height: 1.35;
      text-decoration: none;
      cursor: pointer;
      list-style: none;
    }
    body.site-monobrand .lp-help-settings-row > summary::-webkit-details-marker {
      display: none;
    }
    body.site-monobrand .lp-help-settings-panel > * + * {
      border-top: 1px solid #ececec;
    }
    body.site-monobrand .lp-help-settings-row:hover,
    body.site-monobrand .lp-help-settings-row > summary:hover {
      background: #fafafa;
    }
    body.site-monobrand .lp-help-settings-row:focus-visible,
    body.site-monobrand .lp-help-settings-row > summary:focus-visible {
      outline: 2px solid var(--fiamm-red, #d81818);
      outline-offset: 3px;
    }
    body.site-monobrand .lp-help-settings-row__main {
      display: flex;
      align-items: center;
      gap: 14px;
      min-width: 0;
      /* Takes the slack so the chevron is pushed to the right edge of the row
         rather than trailing the last word. */
      flex: 1 1 auto;
      margin-right: auto;
    }
    /* Wraps rather than truncating: Russian section titles are long, and a title
       clipped mid-word tells the reader less than one on two lines. */
    body.site-monobrand .lp-help-settings-row__title {
      min-width: 0;
      overflow-wrap: anywhere;
    }
    body.site-monobrand .lp-help-settings-row__trailing {
      flex: 0 0 auto;
      color: #9a9a9a;
      font-family: var(--site-font-code);
      font-size: 13px;
      font-weight: 400;
    }
    body.site-monobrand .lp-help-settings-chevron {
      flex: 0 0 auto;
      width: 20px;
      height: 20px;
      color: #b0b0b0;
      background: currentColor;
      transition: transform 160ms ease, color 160ms ease;
      -webkit-mask: no-repeat center / 20px 20px;
      mask: no-repeat center / 20px 20px;
    }
    body.site-monobrand .lp-help-settings-chevron--right {
      -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='m9 18 6-6-6-6'/></svg>");
      mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='m9 18 6-6-6-6'/></svg>");
    }
    body.site-monobrand .lp-help-settings-chevron--down {
      -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");
      mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");
    }
    body.site-monobrand .lp-help-settings-row:hover .lp-help-settings-chevron,
    body.site-monobrand .lp-help-settings-row > summary:hover .lp-help-settings-chevron {
      color: var(--fiamm-ink, #1f1f1f);
    }
    body.site-monobrand .lp-help-settings-row[open] > summary .lp-help-settings-chevron--down {
      transform: rotate(180deg);
    }
    body.site-monobrand .lp-help-settings-row[open] > summary {
      font-weight: 700;
    }
    body.site-monobrand .lp-help-settings-row__body {
      padding: 0 24px 18px 24px;
      color: var(--fiamm-muted, #6a6a6a);
      font-size: 15px;
      font-weight: 400;
      line-height: 1.6;
    }
    body.site-monobrand .lp-help-settings-row__body p {
      margin: 0;
    }
    @media (max-width: 980px) {
      body.site-monobrand .lp-help-settings-groups {
        grid-template-columns: minmax(0, 1fr);
        gap: 40px;
      }
      body.site-monobrand .lp-help-settings-row,
      body.site-monobrand .lp-help-settings-row > summary {
        min-height: 56px;
        padding: 12px 20px;
      }
      body.site-monobrand .lp-help-settings-row__body {
        padding: 0 20px 16px 20px;
      }
    }
    .fiamm-content-card {
      position: relative;
      flex: 0 0 clamp(250px, 29vw, 378px);
      min-height: 138px;
      display: flex;
      align-items: flex-end;
      padding: 18px;
      overflow: hidden;
      border-radius: var(--fiamm-squircle-radius);
      /* Three layers, always in this order: scrim, photo, backdrop. The scrim is
         permanent, so the title stays legible whether or not a photo arrives,
         and a card with no picture is a finished card rather than a gap waiting
         for one. --fiamm-card-tint is set per card from its own name. */
      /* Подстраховка тоже фирменная: карточка без класса фона не должна
         оказаться серой — это возвращало бы ровно тот чужой цвет, ради ухода
         от которого палитра и менялась. */
      background-color: var(--fiamm-card-tint-base, #b7100f);
      background-image:
        linear-gradient(180deg, rgba(8, 10, 14, 0) 0%, rgba(8, 10, 14, 0.12) 40%, rgba(8, 10, 14, 0.58) 100%),
        var(--fiamm-card-image, none),
        var(--fiamm-card-tint, linear-gradient(135deg, #e30613, #8f0c12));
      background-position: center, center, center;
      background-repeat: no-repeat, no-repeat, no-repeat;
      background-size: cover, cover, cover;
      color: #ffffff;
      text-decoration: none;
      scroll-snap-align: start;
      transition: transform 160ms ease, box-shadow 160ms ease, filter 160ms ease;
    }
    /* SITE-CARD-001 · docs/standards/sites/monobrand/card_standard.md
       One hover for every card: a 2px lift and nothing that leaves the box. The
       drop shadow here was 38px of blur inside a strip whose viewport clips
       overflow, so it was cut off along the bottom -- and no other card on the
       site used a shadow at all. */
    .fiamm-content-card:hover,
    .fiamm-content-card:focus-visible {
      outline: none;
      transform: translateY(-2px);
      filter: brightness(1.06);
    }
    /* A card that declares the brand colour outright keeps it: the generated
       backdrop stands down rather than covering it. */
    .fiamm-content-card--red {
      --fiamm-card-tint: none;
      background-color: var(--fiamm-red);
    }
    .fiamm-content-card--red:hover,
    .fiamm-content-card--red:focus-visible {
      background-color: var(--fiamm-brand-color-hover);
    }
    .fiamm-content-card--large {
      flex-basis: 100%;
      min-height: 270px;
    }
    .fiamm-content-card strong {
      position: relative;
      z-index: 1;
      font-size: 1.05rem;
      line-height: 1.2;
      text-shadow: 0 3px 18px rgba(0, 0, 0, 0.42);
    }
    .fiamm-content-card--rich {
      gap: 12px;
      align-items: flex-start;
    }
    .fiamm-content-card--rich span {
      position: relative;
      z-index: 1;
      color: rgba(255, 255, 255, 0.84);
      font-size: 0.92rem;
      line-height: 1.5;
      text-shadow: 0 3px 18px rgba(0, 0, 0, 0.4);
    }
    .fiamm-product-grid,
    .fiamm-product-grid--home {
      grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--fiamm-product-card-min)), 1fr));
      gap: var(--fiamm-card-gap, 24px);
      align-items: stretch;
    }
    body.site-monobrand .fiamm-product-card__icon-action:hover,
    body.site-monobrand .fiamm-product-card__icon-action:focus-visible,
    body.site-monobrand .fiamm-product-card__icon-action.is-active,
    body.site-monobrand .fiamm-product-card__icon-action[aria-pressed="true"] {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    body.site-monobrand .fiamm-product-card__view:hover,
    body.site-monobrand .fiamm-product-card__view:focus-visible {
      background: var(--fiamm-red);
      color: #ffffff;
    }
    .fiamm-pdp-related-card--filled {
      display: grid;
      align-content: start;
      gap: 10px;
      padding: 18px;
      color: var(--fiamm-ink);
      text-decoration: none;
    }
    .fiamm-pdp-related-card--filled strong {
      font-size: 1rem;
      line-height: 1.28;
    }
    .fiamm-pdp-related-card--filled span {
      color: #5f6874;
      font-size: 0.88rem;
      line-height: 1.45;
    }
    @media (max-width: 1280px) {
      body.site-monobrand {
        --fiamm-product-card-min: 250px;
      }
    }
    @media (max-width: 560px) {
      body.site-monobrand {
        --fiamm-product-card-min: 100%;
      }
    }
    @media (min-width: 1280px) {
      body.site-monobrand .fiamm-footer {
        /* Было clamp(--content-width-min, calc(100% - 2*pad), --content-width-max).
           Нижняя граница 1200px била по отступу от края: при окне 1280 доступная
           ширина 1265-96=1169 меньше 1200, clamp поднимал блок до 1200, и левый
           край секций вставал на 32.5 вместо 48. Герой при этом padding
           соблюдал — отсюда и ощущение съехавшей страницы; видно в полосе
           окон примерно 1280..1310, то есть на самом обычном ноутбуке.
           Отступ от края не может проигрывать минимальной ширине: SITE-FRAME-004
           требует один левый край у шапки, героя, секции и первой карточки. */
        width: min(
          calc(100% - (var(--fiamm-edge-pad) * 2)),
          var(--content-width-max)
        );
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero {
        /* Скрим стоит в контентной области, отступы даёт `.wrap`. */
        padding-left: 0;
        padding-right: 0;
      }
    }
    @media (max-width: 860px) {
      body.site-monobrand {
        --shell-height: 72px;
        --fiamm-shell-main-height: 72px;
      }
      body.site-monobrand .fiamm-shell-top {
        display: none;
      }
      body.site-monobrand .fiamm-shell-slogan {
        display: none;
      }
      body.site-monobrand .site-logo__image {
        height: 46px;
        max-width: 164px;
      }
      body.site-monobrand .site-shell-action,
      body.site-monobrand .site-burger.site-shell-action {
        width: 48px;
        height: 48px;
      }
      body.site-monobrand .site-shell-icon {
        width: 28px;
        height: 28px;
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero {
        min-height: 65svh;
        align-items: flex-end;
        /* Высоту шапки резервирует `.wrap`, он же даёт боковые отступы:
           над блоком стоит лента быстрых ссылок, а сам он в контентной области. */
        padding: 28px 0 42px;
        background-position: 64% center;
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero__copy {
        gap: 12px;
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero__eyebrow {
        font-size: 1.5rem;
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero h1 {
        font-size: 2.04rem;
        line-height: 0.98;
      }
      body.site-monobrand.fiamm-home-route .fiamm-hero p {
        font-size: 1rem;
      }
      .fiamm-series-card {
        flex-basis: 148px;
        min-height: 104px;
      }
      .fiamm-content-card {
        flex-basis: 76vw;
      }
    }
    @media (max-width: 560px) {
      .fiamm-product-grid,
      .fiamm-product-grid--home {
        grid-template-columns: 1fr;
      }
    }
    .article-body {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: var(--site-radius-base);
      padding: 18px;
      line-height: 1.58;
    }
    .article-shell {
      flex: 1 0 auto;
      display: flex;
      flex-direction: column;
      gap: 20px;
    }
    .article-breadcrumbs {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
      color: var(--muted);
      font-size: var(--site-text-small);
    }
    .article-breadcrumbs a {
      color: inherit;
      text-decoration: none;
    }
    .site-article__header {
      display: grid;
      gap: 14px;
      margin-bottom: 22px;
    }
    .site-article__header h1 {
      margin: 0;
      color: var(--site-heading);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-hero-title);
      line-height: 1.04;
    }
    .site-article__lead {
      margin: 0;
      max-width: 72ch;
      color: var(--muted);
      font-size: var(--site-text-body-large);
      line-height: 1.58;
    }
    .site-loading-screen {
      position: fixed;
      inset: 0;
      z-index: 240;
      display: grid;
      place-items: center;
      min-width: 100vw;
      min-height: 100vh;
      min-height: 100dvh;
      background: var(--site-bg, #000000);
      color: var(--site-text, #ffffff);
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      transition: opacity 260ms ease, visibility 260ms ease;
    }
    .site-loading-screen.is-hidden {
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
    }
    .site-loading-screen__inner {
      display: grid;
      justify-items: center;
      gap: 18px;
      padding: 24px;
      text-align: center;
    }
    .site-loading-screen__logo {
      display: block;
      width: clamp(72px, 12vw, 118px);
      height: clamp(72px, 12vw, 118px);
      object-fit: contain;
      border: 0;
    }
    .site-loading-screen__mark {
      display: inline-grid;
      place-items: center;
      width: clamp(72px, 12vw, 118px);
      height: clamp(72px, 12vw, 118px);
      border-radius: 50%;
      background: var(--site-surface, rgba(255, 255, 255, 0.08));
      color: var(--site-heading, currentColor);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-section-title);
      font-weight: 800;
    }
    .site-loading-screen__status {
      color: var(--site-muted, rgba(255, 250, 238, 0.66));
      font-family: var(--site-font-heading);
      font-size: var(--site-text-nav);
      font-weight: 800;
      letter-spacing: 0.16em;
      line-height: 1;
      text-transform: uppercase;
    }
    .site-article__meta {
      color: var(--muted);
      font-size: var(--site-text-small);
    }
    .site-article__meta-row {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding-top: 14px;
      border-top: 1px solid var(--line);
    }
    .site-article__actions {
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .site-article__icon-action {
      display: inline-grid;
      place-items: center;
      width: 40px;
      height: 40px;
      padding: 0;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: transparent;
      color: var(--muted);
      cursor: pointer;
    }
    .site-article__icon-action svg {
      width: 20px;
      height: 20px;
      fill: currentColor;
    }
    .site-article__heart-fill {
      display: none;
    }
    .site-article__icon-action--favorite.is-active .site-article__heart-fill {
      display: block;
    }
    .site-article__icon-action--favorite.is-active .site-article__heart-outline {
      display: none;
    }
    .site-article__hero {
      margin: 0 0 28px;
    }
    .site-article__hero-banner {
      margin: 0 0 28px;
      overflow: hidden;
      border-radius: var(--site-radius-card);
      background: var(--site-card);
    }
    .site-article__hero-banner picture,
    .site-article__hero-banner img {
      display: block;
      width: 100%;
    }
    .site-article__hero-banner img {
      aspect-ratio: 16 / 7;
      object-fit: cover;
    }
    .site-article__hero img {
      display: block;
      width: 100%;
      border-radius: var(--site-radius-card);
      object-fit: cover;
    }
    .site-article__content {
      max-width: 76ch;
      margin: 0 auto;
      line-height: 1.72;
    }
    /* Темы материала: та же колонка, что и текст, чтобы читались как его часть,
       а не как отдельный блок навигации. */
    .site-article__themes {
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      gap: 10px 12px;
      max-width: 76ch;
      margin: clamp(32px, 5vh, 56px) auto 0;
      padding-top: clamp(18px, 3vh, 28px);
      border-top: 1px solid var(--site-line, rgba(0, 0, 0, 0.12));
    }
    .site-article__themes-label {
      font-size: 0.75rem;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      opacity: 0.55;
    }
    .site-article__themes-list {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
    .site-article__content > *:first-child {
      margin-top: 0;
    }
    .site-article__content img {
      max-width: 100%;
      height: auto;
      border-radius: var(--site-radius-base);
    }
    .article-footer {
      margin-top: auto;
    }
    .page-blocks {
      display: flex;
      flex-direction: column;
      gap: 18px;
    }
    .lp-section {
      position: relative;
      scroll-margin-top: calc(var(--shell-height) + 24px);
      overflow: hidden;
    }
    /* SITE-FRAME-002 / 003 · docs/standards/sites/monobrand/page_frame_standard.md
       Sections lie on the page ground. They used to arrive as white bordered
       cards, so Help and Cabinet wrapped breadcrumbs, lead and content each in
       its own plate while PDP did the opposite. White belongs to objects. */
    body:not(.site-monobrand) .lp-section {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: var(--site-radius-card);
      padding: clamp(20px, 4vw, 36px);
      box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
    }
    .lp-section h1,
    .lp-section h2,
    .lp-section h3 {
      margin: 0;
      line-height: 1.08;
      letter-spacing: -0.02em;
      color: var(--site-heading);
      font-family: var(--site-font-heading);
    }
    .lp-section p {
      margin: 0;
      color: var(--muted);
      line-height: 1.65;
    }
    .lp-hero {
      display: grid;
      grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
      gap: 24px;
      align-items: center;
      background:
        radial-gradient(circle at top right, rgba(253, 230, 138, 0.55) 0%, rgba(253, 230, 138, 0) 34%),
        linear-gradient(135deg, #fff7ed 0%, #ffffff 42%, #eef6ff 100%);
    }
    .lp-hero__eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 14px;
      padding: 8px 12px;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.82);
      border: 1px solid rgba(15, 23, 42, 0.08);
      color: #9a3412;
      font-size: var(--site-text-chip);
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }
    .lp-hero__title {
      font-size: var(--site-text-hero-title);
      max-width: 12ch;
      color: #2f2a30 !important;
    }
    .lp-hero__lead {
      margin-top: 16px !important;
      font-size: var(--site-text-body);
      max-width: 60ch;
      color: #3f3b44 !important;
    }
    .lp-hero__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 22px;
    }
    .lp-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 48px;
      padding: 0 18px;
      border-radius: var(--site-radius-button);
      border: 1px solid transparent;
      text-decoration: none;
      font-weight: 700;
      font-size: var(--site-text-button);
      transition: transform 140ms ease, box-shadow 140ms ease, border-color 140ms ease;
    }
    .lp-button:hover {
      transform: translateY(-1px);
    }
    .lp-button--primary {
      background: var(--site-button-primary-bg);
      color: var(--site-button-primary-text);
      box-shadow: 0 12px 24px rgba(234, 88, 12, 0.18);
    }
    .lp-button--secondary {
      background: rgba(255, 255, 255, 0.9);
      color: var(--text);
      border-color: rgba(15, 23, 42, 0.12);
    }
    .lp-hero__visual {
      min-height: 280px;
      border-radius: 24px;
      overflow: hidden;
      border: 1px solid rgba(15, 23, 42, 0.08);
      background:
        radial-gradient(circle at top left, rgba(253, 230, 138, 0.9) 0%, rgba(253, 230, 138, 0) 34%),
        linear-gradient(150deg, #0f172a 0%, #1e293b 48%, #f97316 100%);
      position: relative;
      display: flex;
      align-items: stretch;
      justify-content: stretch;
    }
    .lp-hero__visual img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .lp-hero__visual::before,
    .lp-hero__visual::after {
      content: "";
      position: absolute;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.18);
    }
    .lp-hero__visual::before {
      width: 220px;
      height: 220px;
      top: -48px;
      right: -28px;
    }
    .lp-hero__visual::after {
      width: 120px;
      height: 120px;
      bottom: 24px;
      left: 26px;
    }
    .lp-section__title {
      font-size: var(--site-text-section-title);
      margin-bottom: 16px !important;
      color: #2f2a30 !important;
    }
    .lp-values__grid,
    .lp-tiles__grid {
      display: grid;
      gap: 14px;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }
    .lp-value-card,
    .lp-tile {
      background: rgba(255, 255, 255, 0.94);
      border: 1px solid rgba(15, 23, 42, 0.08);
      border-radius: 18px;
      padding: 18px;
      min-height: 100%;
    }
    .lp-value-card__icon {
      width: 44px;
      height: 44px;
      border-radius: var(--site-radius-base);
      margin-bottom: 12px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: var(--site-brand-secondary);
      color: #fff;
      font-size: var(--site-text-chip);
      font-weight: 800;
      text-transform: uppercase;
    }
    .lp-value-card h3,
    .lp-tile h3 {
      font-size: var(--site-text-card-title);
      margin-bottom: 8px !important;
      color: #2f2a30 !important;
    }
    .lp-value-card p,
    .lp-tile p {
      color: #4b4650 !important;
    }
    .lp-links__list {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
    }
    .lp-links__pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      min-height: 46px;
      padding: 0 16px;
      border-radius: 999px;
      border: 1px solid rgba(15, 23, 42, 0.1);
      background: #fff;
      text-decoration: none;
      color: var(--text);
      font-weight: 700;
      box-shadow: 0 10px 20px rgba(15, 23, 42, 0.05);
    }
    .lp-tile {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }
    .lp-tile__visual {
      height: 140px;
      border-radius: 16px;
      overflow: hidden;
      border: 1px solid rgba(15, 23, 42, 0.08);
      background: linear-gradient(145deg, #dbeafe 0%, #f8fafc 100%);
      position: relative;
      display: flex;
      align-items: stretch;
      justify-content: stretch;
    }
    .lp-tile__visual img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .lp-tile__visual::before {
      content: "";
      width: 68px;
      height: 68px;
      border-radius: 22px;
      background: rgba(15, 23, 42, 0.08);
      position: absolute;
      inset: 50% auto auto 50%;
      transform: translate(-50%, -50%);
    }
    .lp-tile__link {
      margin-top: auto;
      color: var(--site-accent);
      font-weight: 700;
      text-decoration: none;
    }
    .lp-promo {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--site-accent) 26%, transparent) 0%, transparent 36%),
        linear-gradient(135deg, color-mix(in srgb, var(--site-card) 94%, var(--site-brand-secondary) 6%) 0%, var(--site-card) 100%);
    }
    .lp-promo--violet {
      background:
        radial-gradient(circle at top right, rgba(126, 87, 194, 0.22) 0%, transparent 38%),
        linear-gradient(135deg, var(--site-card) 0%, color-mix(in srgb, var(--site-card) 86%, #7e57c2 14%) 100%);
    }
    .lp-promo--ink {
      background: linear-gradient(135deg, #111827 0%, #312e81 100%);
      color: #fff;
      border-color: rgba(255, 255, 255, 0.12);
    }
    .lp-promo--ink h2,
    .lp-promo--ink p {
      color: #fff;
    }
    .lp-promo__body {
      min-width: 0;
    }
    .lp-promo__eyebrow,
    .lp-rich__eyebrow,
    .lp-article-grid__eyebrow,
    .lp-article-card__tag {
      display: inline-flex;
      align-items: center;
      min-height: 26px;
      margin-bottom: 10px;
      padding: 0 10px;
      border-radius: 999px;
      background: color-mix(in srgb, var(--site-accent) 14%, transparent);
      color: var(--site-accent);
      font-size: var(--site-text-chip);
      font-weight: 800;
      text-transform: uppercase;
    }
    .lp-rich {
      display: grid;
      gap: 12px;
    }
    .lp-rich__body {
      display: grid;
      gap: 10px;
      max-width: 78ch;
    }
    .lp-rich__body p {
      color: #3f3b44 !important;
    }
    .lp-rich__link,
    .lp-article-grid__all,
    .lp-article-card__footer a {
      color: var(--site-accent);
      font-weight: 800;
      text-decoration: none;
    }
    .lp-article-grid__head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 18px;
      margin-bottom: 16px;
    }
    .lp-article-grid__cards {
      display: grid;
      gap: 14px;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }
    .lp-article-card {
      min-height: 100%;
      padding: 18px;
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 18px;
      background: linear-gradient(135deg, #151316 0%, #221b24 100%);
      color: rgba(255, 255, 255, 0.88);
      display: flex;
      flex-direction: column;
      gap: 10px;
    }
    .lp-article-card h3 {
      font-size: var(--site-text-card-title);
      margin-bottom: 0 !important;
      color: #fff !important;
    }
    .lp-article-card p {
      color: rgba(255, 255, 255, 0.72) !important;
    }
    .lp-article-card__footer {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-top: auto;
      color: rgba(255, 255, 255, 0.6);
      font-size: var(--site-text-small);
    }
    .lp-content-strip__head {
      margin-bottom: 14px;
    }
    .lp-strip__viewport {
      overflow: hidden;
    }
    .lp-strip__track {
      display: flex;
      gap: 16px;
      width: max-content;
    }
    .lp-strip-card {
      position: relative;
      width: clamp(180px, 22vw, 320px);
      aspect-ratio: 2 / 1;
      overflow: hidden;
      border-radius: var(--site-radius-card);
      background: var(--site-card);
      color: var(--site-heading);
      text-decoration: none;
    }
    .lp-strip-card img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .lp-strip-card__label {
      position: absolute;
      left: 10px;
      right: 10px;
      bottom: 10px;
      color: #fff;
      font-weight: 800;
      font-size: var(--site-text-card-title);
      text-shadow: 0 2px 12px rgba(0, 0, 0, 0.75);
    }
    .lp-filter-rows {
      display: grid;
      gap: 10px;
      margin-bottom: 16px;
    }
    .lp-filter-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
    .lp-filter-chip {
      min-height: 34px;
      padding: 0 13px;
      border-radius: 999px;
      border: 1px solid rgba(15, 23, 42, 0.12);
      background: var(--site-card);
      color: var(--site-text);
      font: inherit;
      font-size: var(--site-text-filter);
      font-weight: 800;
      cursor: pointer;
    }
    .lp-filter-chip.is-active {
      background: var(--site-accent);
      color: var(--site-button-primary-text);
      border-color: var(--site-accent);
    }
    .lp-masonry__grid {
      column-count: 4;
      column-gap: 16px;
    }
    /*
      D7: страница рубрики = стрип вложенных рубрик одной строкой с
      горизонтальной перемоткой, отчерк, дальше фид карточек. Стрип общий для
      всех сайтов: раньше FIAMM выводил детей сеткой, а остальные — никак.
    */
    .lp-rubric-strip {
      display: flex;
      gap: 16px;
      width: 100%;
      overflow-x: auto;
      overflow-y: hidden;
      padding: 2px 0 12px;
      scroll-snap-type: x proximity;
      scrollbar-width: none;
    }
    .lp-rubric-strip::-webkit-scrollbar {
      display: none;
    }
    .lp-rubric-strip__item {
      flex: 0 0 clamp(200px, 24vw, 280px);
      scroll-snap-align: start;
    }
    /* Карточка внутри стрипа не «висит» — column-flow masonry здесь не действует. */
    .lp-rubric-strip__item .lp-masonry-card {
      display: block;
      margin: 0;
      height: 100%;
    }
    .lp-rubric-divider {
      border: 0;
      border-top: 1px solid rgba(15, 23, 42, 0.12);
      margin: 8px auto 24px;
      max-width: var(--site-content-max, 1200px);
    }
    .lp-masonry-card {
      display: inline-block;
      width: 100%;
      margin: 0 0 16px;
      break-inside: avoid;
      border: 1px solid rgba(15, 23, 42, 0.1);
      border-radius: var(--site-radius-card);
      background: var(--site-card);
      overflow: hidden;
    }
    .lp-masonry-card.is-hidden,
    .lp-masonry-card.is-filter-hidden,
    .lp-masonry-card.is-lifecycle-hidden {
      display: none;
    }
    .lp-masonry-card__media {
      aspect-ratio: 4 / 3;
      overflow: hidden;
      background: color-mix(in srgb, var(--site-card) 86%, var(--site-text) 14%);
    }
    .lp-masonry-card--small .lp-masonry-card__media {
      aspect-ratio: 16 / 9;
    }
    .lp-masonry-card--large .lp-masonry-card__media {
      aspect-ratio: 1 / 1;
    }
    .lp-masonry-card--wide .lp-masonry-card__media {
      aspect-ratio: 16 / 10;
    }
    .lp-masonry-card__media img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .lp-masonry-card__body {
      display: grid;
      gap: 10px;
      padding: 14px;
    }
    .lp-masonry-card h3 {
      margin: 0 !important;
      font-size: var(--site-text-card-title);
    }
    .lp-footer-links {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      gap: 22px;
      min-height: 40px;
    }
    .lp-footer-links a {
      color: var(--site-muted);
      text-decoration: none;
      font-size: var(--site-text-nav);
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .lp-cta {
      color: #fff;
      border: none;
      background: linear-gradient(135deg, #0f172a 0%, #334155 100%);
    }
    .lp-cta p {
      color: rgba(255, 255, 255, 0.8);
      max-width: 60ch;
    }
    .lp-cta .lp-section__title {
      color: #fff !important;
    }
    .lp-cta--sunrise {
      background: linear-gradient(135deg, #7c2d12 0%, #ea580c 46%, #f59e0b 100%);
    }
    .lp-cta--teal {
      background: linear-gradient(135deg, #134e4a 0%, #0f766e 50%, #14b8a6 100%);
    }
    .lp-cta--slate {
      background: linear-gradient(135deg, #0f172a 0%, #334155 100%);
    }
    .lp-cta__button {
      margin-top: 20px;
      background: rgba(255, 255, 255, 0.94);
      color: var(--text);
      box-shadow: 0 12px 24px rgba(15, 23, 42, 0.12);
    }
    .lp-fallback__json {
      margin-top: 14px;
      padding: 16px;
      border-radius: 16px;
      background: #0f172a;
      color: #e2e8f0;
      font-size: var(--site-text-small);
      overflow-x: auto;
      white-space: pre-wrap;
    }

    body.site-code-dionysos-iw {
      color-scheme: dark;
      background: #08070b;
      color: rgba(255, 250, 238, 0.88);
      scrollbar-color: rgba(255, 250, 238, 0.34) #08070b;
      --site-bg: #08070b;
      --site-bg-alt: #08070b;
      --site-surface: #0d0b10;
      --site-card: #0d0b10;
      --site-menu-bg: #08070b;
      --site-header-bg: #08070b;
      --site-radius-card: 20px;
      --site-radius-button: 999px;
      --site-font-general: "Alice", Georgia, "Times New Roman", serif;
      --site-font-body: "Alice", Georgia, "Times New Roman", serif;
      --site-font-heading: "Geologica", "Segoe UI", Helvetica, Arial, sans-serif;
      --site-font-header: "Geologica", "Segoe UI", Helvetica, Arial, sans-serif;
      --site-font-menu: "Geologica", "Segoe UI", Helvetica, Arial, sans-serif;
      --site-font-ui: "Geologica", "Segoe UI", Helvetica, Arial, sans-serif;
      --dionysos-card-padding: 20px;
      --dionysos-card-radius: var(--site-radius-card, 8px);
      --dionysos-card-media-inset: 10px;
      --dionysos-card-media-radius: max(12px, calc(var(--dionysos-card-radius) - (var(--dionysos-card-media-inset) * 0.35)));
      --dionysos-card-gap: 20px;
      --dionysos-card-bg: linear-gradient(160deg, rgba(124, 58, 237, 0.18), rgba(8, 7, 11, 0.96) 62%), #0b0910;
      --dionysos-card-line: rgba(255, 255, 255, 0.075);
      --dionysos-card-hover-border: transparent;
      --dionysos-card-hover-shadow: 0 26px 64px rgba(36, 26, 74, 0.48), 0 9px 18px rgba(0, 0, 0, 0.3);
      --dionysos-card-title-scale: 0.95;
      --dionysos-card-text-scale: 0.95;
      --dionysos-strip-edge-fade: 40px;
      --dionysos-hero-bottom-fade: 80px;
      --dionysos-surface-content-max: 1200px;
      --dionysos-surface-content-min: 980px;
      --dionysos-surface-inline: clamp(32px, 8vw, 96px);
      --dionysos-reading-width: 640px;
      --dionysos-article-reading-width: 704px;
      --dionysos-article-edge-padding: 20px;
      --dionysos-article-title-size: clamp(2.231rem, 5.78vw, 4.888rem);
      --dionysos-article-body-size: 1.2375rem;
      --dionysos-article-lead-size: 1.71875rem;
      --dionysos-article-text-color: #BEBEBE;
      --dionysos-settings-width: 980px;
      --dionysos-search-height: 48px;
      --dionysos-search-bg: #100e14;
      --dionysos-search-focus: rgba(166, 91, 255, 0.72);
      --dionysos-search-font-size: var(--site-text-settings-row);
      --dionysos-help-panel: #100e14;
      --dionysos-help-row-hover: #17131d;
      --dionysos-help-muted: rgba(255, 250, 238, 0.62);
      --dionysos-help-separator: rgba(255, 255, 255, 0.1);
      --dionysos-glass-bg: rgba(8, 7, 11, 0.62);
      --dionysos-glass-bg-hover: rgba(8, 7, 11, 0.78);
      --dionysos-glass-border: rgba(255, 255, 255, 0.1);
      --dionysos-glass-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), inset 0 -1px 0 rgba(255, 255, 255, 0.035), 0 12px 26px rgba(0, 0, 0, 0.32);
      --dionysos-glass-blur: blur(14px) saturate(142%);
      --dionysos-accent-purple: var(--site-accent-purple, #a855f7);
      --dionysos-favorite-active: #a855f7;
      --dionysos-link: #e0c15b;
      --site-text-body: var(--site-fs-md);
      --site-text-body-large: var(--site-fs-lg);
      --site-text-card-title: clamp(calc(1.125rem * var(--dionysos-card-title-scale)), calc(1.45vw * var(--dionysos-card-title-scale)), calc(1.5rem * var(--dionysos-card-title-scale)));
      --site-text-card-excerpt: calc(0.875rem * var(--dionysos-card-text-scale));
      --site-text-button: 0.75rem;
      --site-text-chip: 0.625rem;
      --site-text-filter: 0.875rem;
      --site-text-nav: 0.75rem;
      --site-text-hero-title: clamp(2.625rem, 6.8vw, 5.75rem);
      --site-text-section-title: clamp(1.625rem, 3.2vw, 2.625rem);
      --site-text-surface-title: var(--site-fs-2xl);
      --site-text-settings-row: var(--site-text-body-large);
      --site-text-settings-group-title: calc(var(--site-text-settings-row) * 1.1);
      --site-text-small: 0.75rem;
    }
    body.site-code-dionysos-iw,
    body.site-code-dionysos-iw .lp-section p {
      font-family: var(--site-font-body);
      font-weight: 400;
    }
    body.site-code-dionysos-iw::-webkit-scrollbar {
      width: 13px;
      height: 13px;
    }
    body.site-code-dionysos-iw::-webkit-scrollbar-track {
      background: #08070b;
    }
    body.site-code-dionysos-iw::-webkit-scrollbar-thumb {
      border: 3px solid #08070b;
      border-radius: 999px;
      background: rgba(255, 250, 238, 0.34);
    }
    body.site-code-dionysos-iw::-webkit-scrollbar-thumb:hover {
      background: rgba(255, 250, 238, 0.5);
    }
    body.site-code-dionysos-iw .lp-section h1,
    body.site-code-dionysos-iw .lp-section h2,
    body.site-code-dionysos-iw .lp-section h3,
    body.site-code-dionysos-iw .lp-section__title,
    body.site-code-dionysos-iw .lp-hero__eyebrow,
    body.site-code-dionysos-iw .lp-filter-chip,
    body.site-code-dionysos-iw .lp-unified-card__action,
    body.site-code-dionysos-iw .lp-footer-links a {
      font-family: var(--site-font-heading);
      font-weight: 800;
    }
    body.site-code-dionysos-iw.with-shell .wrap {
      padding-top: 0;
    }
    body.site-code-dionysos-iw .wrap {
      width: 100%;
      max-width: none;
      min-height: 100vh;
      min-height: 100dvh;
      padding: 0 0 var(--dionysos-card-gap);
      background: #08070b;
    }
    body.site-code-dionysos-iw .site-shell {
      background: transparent;
      pointer-events: none;
    }
    body.site-code-dionysos-iw .site-shell__inner {
      width: calc(100% - 48px);
      max-width: none;
      pointer-events: none;
    }
    body.site-code-dionysos-iw .site-logo,
    body.site-code-dionysos-iw .site-surface-title,
    body.site-code-dionysos-iw .site-shell-actions,
    body.site-code-dionysos-iw .site-messenger-fab {
      pointer-events: auto;
    }
    body.site-code-dionysos-iw .site-surface-title {
      position: absolute;
      left: 25vw;
      top: 50%;
      max-width: min(42vw, 360px);
      overflow: hidden;
      color: rgba(255, 250, 238, 0.78);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-surface-title);
      font-weight: 800;
      letter-spacing: 0;
      line-height: 1;
      text-overflow: ellipsis;
      transform: translateY(-50%);
      white-space: nowrap;
    }
    body.site-code-dionysos-iw .site-logo {
      width: 58px;
      height: 58px;
      padding: 9px;
      box-sizing: border-box;
      border-radius: 50%;
      overflow: hidden;
      border: 1px solid var(--dionysos-glass-border);
      background: var(--dionysos-glass-bg);
      box-shadow: var(--dionysos-glass-shadow);
      backdrop-filter: var(--dionysos-glass-blur);
      -webkit-backdrop-filter: var(--dionysos-glass-blur);
    }
    body.site-code-dionysos-iw .site-logo__image {
      width: 100%;
      height: 100%;
      max-width: none;
      max-height: none;
      object-fit: contain;
      border-radius: 50%;
    }
    body.site-code-dionysos-iw .site-shell-actions {
      width: 112px;
      height: 58px;
      min-height: 58px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 2px;
      padding: 4px;
      border: 1px solid var(--dionysos-glass-border);
      border-radius: 999px;
      background: var(--dionysos-glass-bg);
      box-shadow: var(--dionysos-glass-shadow);
      backdrop-filter: var(--dionysos-glass-blur);
      -webkit-backdrop-filter: var(--dionysos-glass-blur);
    }
    body.site-code-dionysos-iw .site-burger,
    body.site-code-dionysos-iw .site-shell-action {
      width: 50px;
      height: 50px;
      border: 0;
      border-radius: 50%;
      background: transparent;
      color: rgba(255, 255, 255, 0.88);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0;
      transition: color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .site-burger:hover,
    body.site-code-dionysos-iw .site-shell-action:hover {
      color: #ffffff;
      transform: scale(1.04);
    }
    body.site-code-dionysos-iw .site-shell-icon {
      width: 34px;
      height: 34px;
      display: block;
      fill: currentColor;
      object-fit: contain;
      pointer-events: none;
    }
    body.site-code-dionysos-iw .site-messenger-fab {
      position: fixed;
      right: max(24px, calc((100vw - var(--content-width-max)) / 2 + 24px));
      bottom: 24px;
      z-index: 92;
      width: 58px;
      height: 58px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid var(--dionysos-glass-border);
      border-radius: 50%;
      background: var(--dionysos-glass-bg);
      box-shadow: var(--dionysos-glass-shadow);
      color: rgba(255, 255, 255, 0.9);
      text-decoration: none;
      backdrop-filter: var(--dionysos-glass-blur);
      -webkit-backdrop-filter: var(--dionysos-glass-blur);
      transition: background-color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .site-messenger-fab:hover,
    body.site-code-dionysos-iw .site-messenger-fab:focus-visible {
      background: var(--dionysos-glass-bg-hover);
      transform: translateY(-2px);
    }
    body.site-code-dionysos-iw .site-messenger-fab:focus-visible {
      outline: 2px solid var(--dionysos-accent-purple);
      outline-offset: 3px;
    }
    body.site-code-dionysos-iw .page-blocks {
      flex: 1 0 auto;
      gap: var(--dionysos-card-gap);
      min-height: calc(100vh - var(--dionysos-card-gap));
      min-height: calc(100dvh - var(--dionysos-card-gap));
      background: #08070b;
    }
    body.site-code-dionysos-iw .page-blocks > .lp-footer-links {
      margin-top: auto;
    }
    body.site-code-dionysos-iw .page-blocks > .lp-section:not(.lp-hero) {
      width: min(calc(100% - 48px), var(--content-width-max));
      margin: 0 auto;
      padding: 0;
      background: transparent;
      border: 0;
      border-radius: 0;
      box-shadow: none;
      overflow: visible;
    }
    body.site-code-dionysos-iw .page-blocks[data-surface="information"] > .lp-section:not(.lp-footer-links) {
      width: min(calc(100% - 48px), var(--dionysos-reading-width));
    }
    body.site-code-dionysos-iw .page-blocks[data-surface="information"][data-page-type="help"] > .lp-section.lp-breadcrumbs,
    body.site-code-dionysos-iw .page-blocks[data-surface="information"][data-page-type="help"] > .lp-section.lp-help-search,
    body.site-code-dionysos-iw .page-blocks[data-surface="information"][data-page-type="help"] > .lp-section.lp-content-strip--help-promoted {
      width: min(calc(100% - var(--dionysos-surface-inline)), var(--dionysos-surface-content-max));
    }
    body.site-code-dionysos-iw .page-blocks[data-surface="information"][data-page-type="help"] > .lp-section.lp-help-index--settings {
      width: min(calc(100% - var(--dionysos-surface-inline)), var(--dionysos-surface-content-max));
    }
    body.site-code-dionysos-iw .page-blocks[data-page-type="help"] > .lp-help-text {
      width: min(calc(100% - 48px), var(--dionysos-reading-width));
    }
    body.site-code-dionysos-iw .page-blocks > .lp-section:first-child:not(.lp-hero) {
      margin-top: calc(var(--shell-height) + 28px);
    }
    body.site-code-dionysos-iw .lp-section h1,
    body.site-code-dionysos-iw .lp-section h2,
    body.site-code-dionysos-iw .lp-section h3 {
      letter-spacing: 0;
      color: rgba(255, 250, 238, 0.96) !important;
    }
    body.site-code-dionysos-iw .lp-section p {
      color: rgba(255, 250, 238, 0.68) !important;
    }
    body.site-code-dionysos-iw .lp-section__title {
      margin-bottom: 16px !important;
      font-size: var(--site-text-section-title);
    }
    body.site-code-dionysos-iw .page-blocks[data-page-type="search"] .lp-search-panel__title,
    body.site-code-dionysos-iw .page-blocks[data-page-type="account"] .lp-account-lifecycle__title {
      display: none;
    }
    body.site-code-dionysos-iw .page-blocks[data-page-type="search"] > .lp-search-panel,
    body.site-code-dionysos-iw .page-blocks[data-page-type="help"] > .lp-help-search {
      display: none !important;
    }
    body.site-code-dionysos-iw .lp-breadcrumbs {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
      color: rgba(255, 250, 238, 0.54);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-nav);
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-breadcrumbs a {
      color: rgba(255, 250, 238, 0.62);
      text-decoration: none;
    }
    body.site-code-dionysos-iw .lp-breadcrumbs a:hover,
    body.site-code-dionysos-iw .lp-breadcrumbs a:focus-visible {
      color: rgba(255, 250, 238, 0.9);
    }
    body.site-code-dionysos-iw .lp-breadcrumbs__separator {
      color: rgba(255, 250, 238, 0.3);
    }
    body.site-code-dionysos-iw .lp-search-panel {
      display: grid;
      gap: 20px;
    }
    body.site-code-dionysos-iw .lp-search-panel__title,
    body.site-code-dionysos-iw .lp-account-lifecycle__title {
      margin: 0 !important;
      font-size: var(--site-text-section-title);
      line-height: 1.05;
    }
    body.site-code-dionysos-iw .lp-search-panel__form {
      display: grid;
      grid-template-columns: minmax(0, 1fr) max-content;
      gap: 12px;
      align-items: center;
    }
    body.site-code-dionysos-iw .lp-search-panel__input {
      min-width: 0;
      min-height: 58px;
      width: 100%;
      padding: 0 22px;
      border: 0;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.08);
      color: rgba(255, 250, 238, 0.94);
      font-family: var(--site-font-body);
      font-size: var(--site-text-body-large);
      outline: none;
    }
    body.site-code-dionysos-iw .lp-search-panel__input::placeholder {
      color: rgba(255, 250, 238, 0.42);
    }
    body.site-code-dionysos-iw .lp-search-panel__input:focus-visible {
      box-shadow: 0 0 0 2px rgba(166, 91, 255, 0.55);
    }
    body.site-code-dionysos-iw .lp-help-text,
    body.site-code-dionysos-iw .lp-help-search,
    body.site-code-dionysos-iw .lp-help-index,
    body.site-code-dionysos-iw .lp-help-faq,
    body.site-code-dionysos-iw .lp-cta-strip {
      display: grid;
      gap: 18px;
    }
    body.site-code-dionysos-iw .lp-help-text__eyebrow {
      color: rgba(255, 250, 238, 0.5);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-nav);
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-help-text__title {
      margin: 0 !important;
      max-width: 14ch;
      font-size: var(--site-text-section-title);
    }
    body.site-code-dionysos-iw .lp-help-text__body {
      display: grid;
      gap: 10px;
      max-width: 78ch;
    }
    body.site-code-dionysos-iw .lp-help-search__shell {
      display: grid;
      grid-template-columns: minmax(0, 1fr) max-content;
      gap: 12px;
      align-items: center;
    }
    body.site-code-dionysos-iw .lp-help-search__input {
      min-width: 0;
      min-height: 58px;
      width: 100%;
      padding: 0 22px;
      border: 0;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.08);
      color: rgba(255, 250, 238, 0.94);
      font-family: var(--site-font-body);
      font-size: var(--site-text-body-large);
      outline: none;
    }
    body.site-code-dionysos-iw .lp-help-search__input::placeholder {
      color: rgba(255, 250, 238, 0.42);
    }
    body.site-code-dionysos-iw .lp-help-search__input:focus-visible {
      box-shadow: 0 0 0 2px rgba(166, 91, 255, 0.55);
    }
    body.site-code-dionysos-iw .lp-search-panel__form,
    body.site-code-dionysos-iw .lp-help-search__shell {
      display: block;
    }
    body.site-code-dionysos-iw .lp-search-control__input,
    body.site-code-dionysos-iw .lp-search-panel__input,
    body.site-code-dionysos-iw .lp-help-search__input {
      min-height: var(--dionysos-search-height);
      width: 100%;
      padding: 0 20px;
      border: 0;
      border-radius: 999px;
      background: var(--dionysos-search-bg);
      color: rgba(255, 250, 238, 0.94);
      font-family: var(--site-font-heading);
      font-size: var(--dionysos-search-font-size);
      font-weight: 600;
      letter-spacing: 0;
      outline: none;
    }
    body.site-code-dionysos-iw .lp-search-control__input::placeholder,
    body.site-code-dionysos-iw .lp-search-panel__input::placeholder,
    body.site-code-dionysos-iw .lp-help-search__input::placeholder {
      color: rgba(255, 250, 238, 0.42);
      opacity: 1;
    }
    body.site-code-dionysos-iw .lp-search-control__input:focus-visible,
    body.site-code-dionysos-iw .lp-search-panel__input:focus-visible,
    body.site-code-dionysos-iw .lp-help-search__input:focus-visible {
      box-shadow: inset 0 0 0 2px var(--dionysos-search-focus);
    }
    body.site-code-dionysos-iw .lp-help-index__groups {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 18px;
    }
    body.site-code-dionysos-iw .lp-help-index__group {
      display: grid;
      align-content: start;
      gap: 10px;
    }
    body.site-code-dionysos-iw .lp-help-index__group h3 {
      font-size: clamp(1.125rem, 1.5vw, 1.375rem);
    }
    body.site-code-dionysos-iw .lp-help-index__links,
    body.site-code-dionysos-iw .lp-help-faq__items {
      display: grid;
      gap: 8px;
    }
    body.site-code-dionysos-iw .lp-help-link,
    body.site-code-dionysos-iw .lp-help-faq__item {
      border-radius: var(--site-radius-button);
      background: rgba(255, 255, 255, 0.06);
      color: rgba(255, 250, 238, 0.9);
    }
    body.site-code-dionysos-iw .lp-help-link {
      min-height: 48px;
      display: grid;
      align-content: center;
      gap: 4px;
      padding: 12px 18px;
      text-decoration: none;
      transition: background-color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .lp-help-link:hover,
    body.site-code-dionysos-iw .lp-help-link:focus-visible {
      background: rgba(255, 255, 255, 0.1);
      transform: translateY(-1px);
    }
    body.site-code-dionysos-iw .lp-help-link:focus-visible,
    body.site-code-dionysos-iw .lp-help-faq__item summary:focus-visible {
      outline: 2px solid rgba(255, 255, 255, 0.38);
      outline-offset: 3px;
    }
    body.site-code-dionysos-iw .lp-help-link__title {
      font-family: var(--site-font-heading);
      font-weight: 800;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-help-link__description {
      color: rgba(255, 250, 238, 0.58);
      font-size: var(--site-text-small);
    }
    body.site-code-dionysos-iw .lp-help-faq__item {
      padding: 0 18px;
    }
    body.site-code-dionysos-iw .lp-help-faq__item summary {
      min-height: 48px;
      display: flex;
      align-items: center;
      cursor: pointer;
      font-family: var(--site-font-heading);
      font-weight: 800;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-help-faq__item p {
      padding: 0 0 16px;
    }
    body.site-code-dionysos-iw .lp-help-index__groups {
      grid-template-columns: 1fr;
      gap: 30px;
    }
    body.site-code-dionysos-iw .lp-help-index__group {
      gap: 12px;
    }
    body.site-code-dionysos-iw .lp-help-index__group h3 {
      margin: 0 !important;
      font-family: var(--site-font-heading);
      font-size: var(--site-fs-2xl);
      font-weight: 800;
      letter-spacing: 0;
      text-transform: none;
    }
    body.site-code-dionysos-iw .lp-help-link,
    body.site-code-dionysos-iw .lp-help-faq__item {
      padding: 0;
      border-top: 1px solid rgba(255, 250, 238, 0.16);
      border-radius: 0;
      background: transparent;
      color: rgba(255, 250, 238, 0.9);
    }
    body.site-code-dionysos-iw .lp-help-index__links .lp-help-link:last-child,
    body.site-code-dionysos-iw .lp-help-faq__items .lp-help-faq__item:last-child {
      border-bottom: 1px solid rgba(255, 250, 238, 0.16);
    }
    body.site-code-dionysos-iw .lp-help-link {
      min-height: 0;
      display: block;
      padding: 0;
      text-decoration: none;
      transition: color 160ms ease;
    }
    body.site-code-dionysos-iw .lp-help-link:hover,
    body.site-code-dionysos-iw .lp-help-link:focus-visible {
      background: transparent;
      transform: none;
      color: rgba(255, 250, 238, 0.98);
    }
    body.site-code-dionysos-iw .lp-help-accordion summary {
      min-height: 56px;
      display: grid;
      grid-template-columns: minmax(0, 1fr) 24px;
      gap: 18px;
      align-items: center;
      cursor: pointer;
      list-style: none;
      font-family: var(--site-font-heading);
      font-weight: 800;
      letter-spacing: 0;
      text-transform: none;
    }
    body.site-code-dionysos-iw .lp-help-accordion summary::-webkit-details-marker {
      display: none;
    }
    body.site-code-dionysos-iw .lp-help-accordion__chevron {
      width: 10px;
      height: 10px;
      justify-self: end;
      border-right: 2px solid rgba(255, 250, 238, 0.62);
      border-bottom: 2px solid rgba(255, 250, 238, 0.62);
      transform: rotate(45deg);
      transition: transform 160ms ease, border-color 160ms ease;
    }
    body.site-code-dionysos-iw .lp-help-accordion[open] .lp-help-accordion__chevron {
      transform: rotate(-135deg);
      border-color: rgba(255, 250, 238, 0.9);
    }
    body.site-code-dionysos-iw .lp-help-link__title,
    body.site-code-dionysos-iw .lp-help-faq__item summary span:first-child {
      font-family: var(--site-font-heading);
      font-size: var(--site-fs-lg);
      font-weight: 800;
      letter-spacing: 0;
      text-transform: none;
    }
    body.site-code-dionysos-iw .lp-help-accordion__body {
      display: grid;
      gap: 8px;
      padding: 0 42px 18px 0;
    }
    body.site-code-dionysos-iw .lp-help-accordion__body p,
    body.site-code-dionysos-iw .lp-help-faq__item p {
      margin: 0;
      padding: 0;
      font-size: var(--site-text-body-large);
      line-height: 1.58;
    }
    body.site-code-dionysos-iw .lp-help-index--settings {
      --lp-help-settings-row-min: 60px;
      gap: 0;
    }
    body.site-code-dionysos-iw .lp-help-settings-groups {
      display: grid;
      grid-template-columns: 1fr;
      gap: 32px 20px;
      align-items: start;
    }
    body.site-code-dionysos-iw .lp-help-settings-group {
      display: grid;
      min-width: 0;
      gap: 8px;
    }
    body.site-code-dionysos-iw .lp-help-settings-group__summary {
      margin: 0 0 0 20px;
      display: flex;
      align-items: center;
      list-style: none;
    }
    body.site-code-dionysos-iw .lp-help-settings-group__summary::-webkit-details-marker,
    body.site-code-dionysos-iw .lp-help-settings-row summary::-webkit-details-marker {
      display: none;
    }
    body.site-code-dionysos-iw .lp-help-settings-group__title,
    body.site-code-dionysos-iw .lp-help-settings-row__title {
      color: var(--dionysos-help-muted);
      font-family: var(--site-font-heading);
      font-weight: 800;
      letter-spacing: 0;
      line-height: 1.1;
    }
    body.site-code-dionysos-iw .lp-help-settings-group__title {
      font-size: var(--site-text-settings-group-title);
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-help-settings-panel {
      overflow: hidden;
      border-radius: 20px;
      background: var(--dionysos-help-panel);
      box-shadow: none;
    }
    body.site-code-dionysos-iw .lp-help-settings-row {
      position: relative;
      color: var(--dionysos-help-muted);
      text-decoration: none;
    }
    body.site-code-dionysos-iw .lp-help-settings-panel > .lp-help-settings-row + .lp-help-settings-row {
      border-top: 0;
    }
    body.site-code-dionysos-iw .lp-help-settings-panel > .lp-help-settings-row + .lp-help-settings-row::before {
      content: "";
      position: absolute;
      top: 0;
      left: 20px;
      right: 20px;
      height: 1px;
      background: var(--dionysos-help-separator);
      pointer-events: none;
    }
    body.site-code-dionysos-iw a.lp-help-settings-row,
    body.site-code-dionysos-iw .lp-help-settings-row summary {
      min-height: var(--lp-help-settings-row-min);
      display: grid;
      grid-template-columns: minmax(0, 1fr) max-content 16px;
      gap: 12px;
      align-items: center;
      padding: 0 20px;
      list-style: none;
      cursor: pointer;
    }
    body.site-code-dionysos-iw .lp-help-settings-row__main {
      min-width: 0;
      display: flex;
      align-items: center;
      gap: 12px;
    }
    body.site-code-dionysos-iw .lp-help-settings-row__icon {
      width: 24px;
      height: 24px;
      display: inline-flex;
      flex: 0 0 auto;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.1);
      color: rgba(255, 250, 238, 0.78);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-body);
      font-weight: 800;
    }
    body.site-code-dionysos-iw .lp-help-settings-row__icon img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    body.site-code-dionysos-iw .lp-help-settings-row__title {
      min-width: 0;
      overflow-wrap: anywhere;
      font-size: var(--site-text-settings-row);
    }
    body.site-code-dionysos-iw .lp-help-settings-row__trailing {
      color: rgba(255, 250, 238, 0.42);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-small);
      font-weight: 800;
      letter-spacing: 0;
      white-space: nowrap;
    }
    body.site-code-dionysos-iw .lp-help-settings-chevron {
      width: 10px;
      height: 10px;
      justify-self: end;
      border-right: 2px solid currentColor;
      border-bottom: 2px solid currentColor;
      color: rgba(255, 250, 238, 0.5);
      transition: color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .lp-help-settings-chevron--right {
      transform: rotate(-45deg);
    }
    body.site-code-dionysos-iw .lp-help-settings-chevron--down {
      transform: rotate(45deg);
    }
    body.site-code-dionysos-iw .lp-help-settings-row[open] > summary .lp-help-settings-chevron--down {
      transform: rotate(-135deg);
    }
    body.site-code-dionysos-iw .lp-help-settings-row__body {
      display: grid;
      gap: 8px;
      padding: 0 20px 18px;
    }
    body.site-code-dionysos-iw .lp-help-settings-row__body p {
      margin: 0;
      color: var(--dionysos-help-muted) !important;
      font-size: var(--site-text-body-large);
      line-height: 1.55;
    }
    body.site-code-dionysos-iw a.lp-help-settings-row:hover,
    body.site-code-dionysos-iw .lp-help-settings-row summary:hover,
    body.site-code-dionysos-iw a.lp-help-settings-row:focus-visible,
    body.site-code-dionysos-iw .lp-help-settings-row summary:focus-visible {
      background: var(--dionysos-help-row-hover);
      color: rgba(255, 250, 238, 0.74);
      outline: none;
    }
    body.site-code-dionysos-iw a.lp-help-settings-row:hover .lp-help-settings-chevron,
    body.site-code-dionysos-iw .lp-help-settings-row summary:hover .lp-help-settings-chevron,
    body.site-code-dionysos-iw a.lp-help-settings-row:focus-visible .lp-help-settings-chevron,
    body.site-code-dionysos-iw .lp-help-settings-row summary:focus-visible .lp-help-settings-chevron {
      color: rgba(255, 250, 238, 0.72);
    }
    @media (min-width: 980px) {
      body.site-code-dionysos-iw .lp-help-settings-groups {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }
    body.site-code-dionysos-iw .lp-cta-strip {
      grid-template-columns: minmax(0, 1fr) max-content;
      align-items: center;
    }
    body.site-code-dionysos-iw .lp-cta-strip__copy {
      display: grid;
      gap: 8px;
    }
    body.site-code-dionysos-iw .lp-cta-strip__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      justify-content: flex-end;
    }
    body.site-code-dionysos-iw .lp-facet-filter-bar .lp-filter-rows {
      margin-bottom: 0;
    }
    body.site-code-dionysos-iw .lp-filter-chip {
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }
    body.site-code-dionysos-iw .lp-results-placeholder {
      min-height: var(--results-placeholder-min, 28vh);
    }
    body.site-code-dionysos-iw .lp-account-lifecycle {
      display: grid;
      gap: calc(var(--dionysos-card-gap) * 1.5);
    }
    body.site-code-dionysos-iw .lp-account-lifecycle__lanes {
      display: grid;
      gap: calc(var(--dionysos-card-gap) * 1.5);
    }
    body.site-code-dionysos-iw .lp-account-lane {
      position: relative;
      display: grid;
      gap: 14px;
    }
    body.site-code-dionysos-iw .lp-account-lifecycle[data-account-active-lane] .lp-account-lane.is-section-hidden {
      display: none;
    }
    body.site-code-dionysos-iw .lp-account-lane__head h2 {
      margin: 0 !important;
      font-family: var(--site-font-heading);
      font-size: clamp(1.25rem, 2vw, 1.75rem);
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-account-lane__viewport {
      overflow-x: auto;
      overflow-y: hidden;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch;
      touch-action: pan-x pan-y;
      padding: 10px 0 28px;
      margin: -10px 0 -28px;
    }
    body.site-code-dionysos-iw .lp-account-lane__viewport::-webkit-scrollbar {
      display: none;
    }
    body.site-code-dionysos-iw .lp-account-lane__track {
      gap: var(--dionysos-card-gap);
      flex-wrap: nowrap;
      width: max-content;
      min-width: max-content;
    }
    body.site-code-dionysos-iw .lp-account-card {
      width: clamp(156px, 15vw, 220px);
      display: grid;
      gap: 10px;
      color: rgba(255, 250, 238, 0.9);
    }
    body.site-code-dionysos-iw .lp-account-card.is-lifecycle-hidden {
      display: none !important;
    }
    body.site-code-dionysos-iw .lp-account-card__media {
      position: relative;
      aspect-ratio: 1 / 1;
      display: block;
      overflow: hidden;
      border-radius: var(--dionysos-card-radius);
      background: var(--dionysos-card-bg);
      color: rgba(255, 250, 238, 0.96);
      text-decoration: none;
      transition: transform 180ms ease, box-shadow 180ms ease;
    }
    body.site-code-dionysos-iw .lp-account-card__media:hover,
    body.site-code-dionysos-iw .lp-account-card__media:focus-visible {
      transform: translateY(-6px);
      box-shadow: var(--dionysos-card-hover-shadow);
    }
    body.site-code-dionysos-iw .lp-account-card__media img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    body.site-code-dionysos-iw .lp-account-card__media::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.64) 0%, rgba(0, 0, 0, 0.1) 62%);
      pointer-events: none;
    }
    body.site-code-dionysos-iw .lp-account-card__media span {
      position: absolute;
      left: var(--dionysos-card-padding);
      right: var(--dionysos-card-padding);
      bottom: var(--dionysos-card-padding);
      z-index: 1;
      font-family: var(--site-font-heading);
      font-size: var(--site-text-card-title);
      font-weight: 800;
      line-height: 1.08;
      text-shadow: 0 2px 12px rgba(0, 0, 0, 0.72);
    }
    body.site-code-dionysos-iw .lp-account-card__restore {
      min-height: 31px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 0;
      border-radius: 999px;
      padding: 0 12px;
      background: rgba(255, 255, 255, 0.08);
      color: rgba(255, 250, 238, 0.78);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-button);
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      cursor: pointer;
    }
    body.site-code-dionysos-iw .lp-account-card__restore:hover,
    body.site-code-dionysos-iw .lp-account-card__restore:focus-visible {
      background: var(--dionysos-accent-purple);
      color: #ffffff;
    }
    body.site-code-dionysos-iw .lp-account-lane__controls {
      position: absolute;
      left: 0;
      right: 0;
      top: calc(50% + 16px);
      z-index: 3;
      height: 0;
      opacity: 0;
      pointer-events: none;
      transition: opacity 180ms ease;
    }
    body.site-code-dionysos-iw .lp-account-lane:hover .lp-account-lane__controls,
    body.site-code-dionysos-iw .lp-account-lane:focus-within .lp-account-lane__controls {
      opacity: 1;
    }
    body.site-code-dionysos-iw .lp-strip-control[data-account-lane-prev] {
      left: 8px;
    }
    body.site-code-dionysos-iw .lp-strip-control[data-account-lane-next] {
      right: 8px;
    }
    body.site-code-dionysos-iw .lp-account-lane__empty {
      margin: 0 !important;
      color: rgba(255, 250, 238, 0.48) !important;
      font-size: var(--site-text-body);
    }
    body.site-code-dionysos-iw .lp-account-lane__empty[hidden] {
      display: none;
    }
    body.site-code-dionysos-iw .lp-account-lifecycle[data-account-active-lane] .lp-account-lane__viewport {
      overflow: visible;
      padding: 0;
      margin: 0;
    }
    body.site-code-dionysos-iw .lp-account-lifecycle[data-account-active-lane] .lp-account-lane__track {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(clamp(156px, 15vw, 220px), 1fr));
      gap: var(--dionysos-card-gap);
      width: 100%;
      min-width: 0;
    }
    body.site-code-dionysos-iw .lp-account-lifecycle[data-account-active-lane] .lp-account-card {
      width: 100%;
    }
    body.site-code-dionysos-iw .lp-account-lifecycle[data-account-active-lane] .lp-account-lane__controls {
      display: none;
    }
    body.site-code-dionysos-iw .page-blocks > .lp-hero {
      width: 100%;
      min-height: var(--hero-hv, 75vh);
      margin: 0;
      padding: 0;
      border: 0;
      border-radius: 0;
      box-shadow: none;
      overflow: hidden;
      display: flex;
      align-items: flex-end;
      background: #08070b;
    }
    body.site-code-dionysos-iw .page-blocks > .lp-hero::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 2;
      height: var(--dionysos-hero-bottom-fade);
      background: linear-gradient(180deg, rgba(8, 7, 11, 0) 0%, #08070b 100%);
      pointer-events: none;
    }
    body.site-code-dionysos-iw .lp-hero--slider {
      position: relative;
    }
    body.site-code-dionysos-iw .lp-hero__slides {
      position: absolute;
      inset: 0;
    }
    body.site-code-dionysos-iw .lp-hero__frame {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: flex-end;
      opacity: 0;
      pointer-events: none;
      transition: opacity 700ms ease;
    }
    body.site-code-dionysos-iw .lp-hero__frame.is-active {
      opacity: 1;
      pointer-events: auto;
      z-index: 1;
    }
    body.site-code-dionysos-iw .lp-hero__body {
      position: relative;
      z-index: 3;
      width: min(calc(100% - 48px), var(--content-width-max));
      margin: 0 auto;
      padding: calc(var(--shell-height) + 32px) 0 clamp(48px, 10vh, 112px);
    }
    body.site-code-dionysos-iw .lp-hero__visual {
      position: absolute;
      inset: 0;
      z-index: 0;
      min-height: 100%;
      border: 0;
      border-radius: 0;
      background: #08070b;
    }
    body.site-code-dionysos-iw .lp-hero__visual img {
      position: absolute;
      inset: 0;
      z-index: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    body.site-code-dionysos-iw .lp-hero__visual::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 1;
      width: auto;
      height: auto;
      border-radius: 0;
      transform: none;
      background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.62) 0%, rgba(0, 0, 0, 0.26) 42%, rgba(0, 0, 0, 0.08) 100%),
        linear-gradient(0deg, rgba(0, 0, 0, 0.58) 0%, rgba(0, 0, 0, 0) 48%);
    }
    body.site-code-dionysos-iw .lp-hero__visual::after {
      display: none;
    }
    body.site-code-dionysos-iw .lp-hero__eyebrow {
      background: rgba(0, 0, 0, 0.34);
      border-color: rgba(255, 255, 255, 0.26);
      color: rgba(255, 255, 255, 0.9);
    }
    body.site-code-dionysos-iw .lp-hero__title {
      max-width: 11ch;
      font-size: var(--site-text-hero-title);
      color: #ffffff !important;
      text-shadow: 0 4px 24px rgba(0, 0, 0, 0.5);
    }
    body.site-code-dionysos-iw .lp-hero__lead {
      max-width: 54ch;
      color: rgba(255, 255, 255, 0.82) !important;
      text-shadow: 0 2px 16px rgba(0, 0, 0, 0.44);
    }
    body.site-code-dionysos-iw .lp-hero__dots {
      position: absolute;
      z-index: 4;
      left: max(24px, calc((100% - var(--content-width-max)) / 2));
      bottom: 24px;
      display: flex;
      align-items: center;
      gap: 12px;
    }
    body.site-code-dionysos-iw .lp-hero__dot {
      position: relative;
      width: 9px;
      height: 9px;
      padding: 0;
      border: 0;
      border-radius: 999px;
      overflow: hidden;
      background: rgba(255, 255, 255, 0.46);
      cursor: pointer;
      transition: width 180ms ease, background-color 180ms ease;
    }
    body.site-code-dionysos-iw .lp-hero__dot.is-active {
      width: 46px;
      background: rgba(255, 255, 255, 0.34);
    }
    body.site-code-dionysos-iw .lp-hero__dot::before {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: inherit;
      background: rgba(255, 255, 255, 0.82);
      transform: scaleX(0);
      transform-origin: left center;
    }
    body.site-code-dionysos-iw .lp-hero__dot.is-active::before {
      animation: dionysos-hero-dot-fill var(--hero-slide-interval, 6500ms) linear forwards;
    }
    body.site-code-dionysos-iw .lp-hero--paused .lp-hero__dot.is-active::before {
      animation-play-state: paused;
    }
    body.site-code-dionysos-iw .lp-hero__controls {
      position: absolute;
      inset: 0;
      z-index: 5;
      opacity: 0;
      pointer-events: none;
      transition: opacity 180ms ease;
    }
    body.site-code-dionysos-iw .lp-hero:hover .lp-hero__controls,
    body.site-code-dionysos-iw .lp-hero:focus-within .lp-hero__controls {
      opacity: 1;
    }
    body.site-code-dionysos-iw .lp-hero__control {
      position: absolute;
      top: 50%;
      width: 46px;
      height: 46px;
      border: 0;
      border-radius: 50%;
      background: var(--dionysos-glass-bg);
      color: rgba(255, 255, 255, 0.9);
      box-shadow: var(--dionysos-glass-shadow);
      backdrop-filter: var(--dionysos-glass-blur);
      -webkit-backdrop-filter: var(--dionysos-glass-blur);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0;
      cursor: pointer;
      pointer-events: auto;
      transform: translateY(-50%);
      transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .lp-hero__control--prev {
      left: max(12px, calc((100% - var(--content-width-max)) / 2 + 8px));
    }
    body.site-code-dionysos-iw .lp-hero__control--next {
      right: max(12px, calc((100% - var(--content-width-max)) / 2 + 8px));
    }
    body.site-code-dionysos-iw .lp-hero__control:hover {
      color: #ffffff;
      background: var(--dionysos-glass-bg-hover);
      transform: translateY(-50%) scale(1.04);
    }
    body.site-code-dionysos-iw .lp-hero__control:focus-visible {
      outline: 2px solid var(--dionysos-accent-purple);
      outline-offset: 3px;
    }
    body.site-code-dionysos-iw .lp-hero__control svg {
      width: 26px;
      height: 26px;
      fill: currentColor;
    }
    body.site-code-dionysos-iw .page-blocks > .lp-hero.lp-hero--scrim {
      /* Размытие холста с пятнами. Орбы рисуются в пятую долю разрешения и
         растягиваются: размывает браузер, а не мы попиксельно. */
      --scrim-spots-blur: clamp(10px, 1.1vw, 18px);
      position: relative;
      width: 100%;
      min-height: min(820px, calc(100svh - 18px));
      margin: 0;
      padding: calc(var(--shell-height) + clamp(58px, 8vh, 92px)) max(24px, calc((100% - var(--content-width-max)) / 2)) clamp(56px, 8vh, 84px);
      border-radius: 0;
      overflow: hidden;
      display: flex;
      align-items: end;
      background: #08070b;
      box-shadow: none;
      isolation: isolate;
    }
    body.site-code-dionysos-iw .page-blocks > .lp-hero.lp-hero--scrim::after {
      content: "";
      position: absolute;
      right: max(24px, calc((100% - var(--content-width-max)) / 2));
      bottom: 0;
      left: max(24px, calc((100% - var(--content-width-max)) / 2));
      height: 1px;
      display: block;
      background: rgba(255, 255, 255, 0.1);
      pointer-events: none;
      z-index: 4;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__stage {
      position: absolute;
      inset: 0 0 auto;
      height: min(680px, 78svh);
      overflow: hidden;
      pointer-events: none;
      -webkit-mask-image: linear-gradient(180deg, #000 0 70%, rgba(0, 0, 0, 0.56) 88%, transparent 100%);
      mask-image: linear-gradient(180deg, #000 0 70%, rgba(0, 0, 0, 0.56) 88%, transparent 100%);
      z-index: 0;
    }
    /* Облако пятен. Орбы живут на холсте: у каждого своя орбита, свой наклон и
       свой период пульса, поэтому облако держится на месте и меняет форму, а не
       ползёт по экрану. Размытие снаружи — так дешевле, чем растушёвывать
       каждый градиент. */
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__spots,
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__grain {
      position: absolute;
      inset: 0;
      pointer-events: none;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__spots {
      width: 100%;
      height: 100%;
      filter: blur(var(--scrim-spots-blur));
      z-index: 1;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__grain {
      opacity: 0.06;
      mix-blend-mode: overlay;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");
      z-index: 4;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__stage::after {
      content: "";
      position: absolute;
      inset: 0;
      background: radial-gradient(115% 130% at 100% 10%, rgba(0, 0, 0, 0) 26%, rgba(6, 5, 9, 0.66) 100%);
      pointer-events: none;
      z-index: 2;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__slides {
      position: relative;
      z-index: 2;
      width: 100%;
      min-height: clamp(420px, 55vh, 560px);
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__frame {
      align-items: flex-start;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__body {
      width: 100%;
      max-width: min(860px, 72vw);
      margin: 0;
      padding: 0 0 clamp(74px, 10vh, 116px);
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__visual {
      display: none;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__eyebrow {
      background: rgba(255, 250, 238, 0.09);
      border-color: rgba(255, 250, 238, 0.16);
      color: rgba(255, 250, 238, 0.72);
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__meta {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 14px;
      margin-bottom: clamp(18px, 2.4vw, 28px);
      font-family: var(--site-font-heading);
      font-size: 0.75rem;
      line-height: 1;
      letter-spacing: 0.16em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__rubric {
      color: #c4b5fd;
      text-decoration: none;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__rubric:hover,
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__rubric:focus-visible {
      color: #ddd6fe;
      outline: none;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__date {
      display: inline-flex;
      align-items: center;
      gap: 14px;
      color: rgba(255, 255, 255, 0.42);
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__date::before {
      content: "";
      width: 3px;
      height: 3px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.3);
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__title {
      max-width: 100%;
      font-size: clamp(2.7rem, 5.58vw, 4.72rem);
      line-height: 1.02;
      color: #f8f6fb !important;
      text-shadow: none;
      text-wrap: balance;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__lead {
      max-width: 620px;
      margin-top: 24px;
      font-size: clamp(1.48rem, 2.05vw, 2.05rem);
      line-height: 1.34;
      color: rgba(255, 250, 238, 0.62) !important;
      text-shadow: none;
      text-wrap: pretty;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__actions {
      margin-top: 34px;
      align-items: center;
      gap: 20px;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__reading-time {
      color: rgba(255, 255, 255, 0.42);
      font-family: var(--site-font-heading);
      font-size: 0.875rem;
      line-height: 1;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__dots {
      left: 50%;
      bottom: clamp(24px, 4vw, 42px);
      transform: translateX(-50%);
      z-index: 5;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__control--prev {
      left: 0;
      right: auto;
    }
    body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__control--next {
      right: 0;
    }
    body.site-code-dionysos-iw .lp-button--primary {
      background: var(--dionysos-accent-purple);
      color: rgba(255, 255, 255, 0.96);
      box-shadow: 0 14px 34px rgba(0, 0, 0, 0.22);
    }
    body.site-code-dionysos-iw .lp-button,
    body.site-code-dionysos-iw .lp-unified-card__action {
      font-family: var(--site-font-heading);
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-button--secondary {
      background: rgba(0, 0, 0, 0.28);
      color: rgba(255, 255, 255, 0.94);
      border-color: rgba(255, 255, 255, 0.3);
    }
    body.site-code-dionysos-iw .lp-values__grid,
    body.site-code-dionysos-iw .lp-tiles__grid,
    body.site-code-dionysos-iw .lp-article-grid__cards {
      gap: var(--dionysos-card-gap);
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    body.site-code-dionysos-iw .lp-value-card,
    body.site-code-dionysos-iw .lp-tile,
    body.site-code-dionysos-iw .lp-article-card {
      border-radius: var(--dionysos-card-radius);
      border: 1px solid var(--dionysos-card-line);
      background: var(--dionysos-card-bg);
      box-shadow: none;
      overflow: hidden;
      transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
    }
    body.site-code-dionysos-iw .lp-value-card {
      padding: var(--dionysos-card-padding);
    }
    body.site-code-dionysos-iw .lp-tile {
      padding: 0;
      gap: 0;
    }
    body.site-code-dionysos-iw .lp-tile__visual {
      height: clamp(180px, 18vw, 260px);
      border: 0;
      border-radius: 0;
      background: #100e14;
    }
    body.site-code-dionysos-iw .lp-tile__visual::before {
      display: none;
    }
    body.site-code-dionysos-iw .lp-tile h3,
    body.site-code-dionysos-iw .lp-tile p,
    body.site-code-dionysos-iw .lp-tile__link {
      margin-left: var(--dionysos-card-padding);
      margin-right: var(--dionysos-card-padding);
    }
    body.site-code-dionysos-iw .lp-tile h3 {
      margin-top: var(--dionysos-card-padding) !important;
    }
    body.site-code-dionysos-iw .lp-tile__link {
      margin-top: auto;
      margin-bottom: var(--dionysos-card-padding);
    }
    body.site-code-dionysos-iw .lp-links__pill {
      background: rgba(255, 255, 255, 0.08);
      border-color: rgba(255, 255, 255, 0.14);
      color: rgba(255, 250, 238, 0.92);
      box-shadow: none;
    }
    body.site-code-dionysos-iw .lp-promo,
    body.site-code-dionysos-iw .lp-rich,
    body.site-code-dionysos-iw .lp-cta {
      padding: clamp(24px, 4vw, 42px);
      border-radius: var(--dionysos-card-radius);
      border: 0;
      background: var(--dionysos-card-bg);
    }
    body.site-code-dionysos-iw .lp-rich__body p {
      color: rgba(255, 250, 238, 0.72) !important;
    }
    body.site-code-dionysos-iw .lp-article-card {
      padding: var(--dionysos-card-padding);
      color: rgba(255, 250, 238, 0.88);
    }
    body.site-code-dionysos-iw .lp-article-card__media {
      margin: calc(-1 * (var(--dionysos-card-padding) - var(--dionysos-card-media-inset))) calc(-1 * (var(--dionysos-card-padding) - var(--dionysos-card-media-inset))) 0;
      width: calc(100% + ((var(--dionysos-card-padding) - var(--dionysos-card-media-inset)) * 2));
      aspect-ratio: 4 / 3;
      border-radius: var(--dionysos-card-media-radius);
      background: #100e14;
      overflow: hidden;
    }
    body.site-code-dionysos-iw .lp-article-card__media img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    body.site-code-dionysos-iw .lp-article-card__tag,
    body.site-code-dionysos-iw .lp-article-card h3,
    body.site-code-dionysos-iw .lp-article-card p,
    body.site-code-dionysos-iw .lp-article-card__footer {
      margin-left: 0;
      margin-right: 0;
    }
    body.site-code-dionysos-iw .lp-article-card__tag {
      margin-top: var(--dionysos-card-padding);
    }
    body.site-code-dionysos-iw .lp-article-card__footer {
      margin-bottom: 0;
    }
    body.site-code-dionysos-iw .lp-article-card h3 {
      font-size: var(--site-text-card-title);
    }
    body.site-code-dionysos-iw .lp-article-card p {
      font-size: var(--site-text-card-excerpt);
    }
    body.site-code-dionysos-iw .lp-promo__eyebrow,
    body.site-code-dionysos-iw .lp-rich__eyebrow,
    body.site-code-dionysos-iw .lp-article-grid__eyebrow,
    body.site-code-dionysos-iw .lp-article-card__tag {
      background: rgba(255, 255, 255, 0.09);
      color: rgba(255, 250, 238, 0.72);
    }
    body.site-code-dionysos-iw .lp-rich__link,
    body.site-code-dionysos-iw .lp-article-grid__all,
    body.site-code-dionysos-iw .lp-article-card__footer a,
    body.site-code-dionysos-iw .lp-tile__link {
      color: var(--dionysos-link);
    }
    body.site-code-dionysos-iw .lp-content-strip {
      position: relative;
    }
    body.site-code-dionysos-iw .lp-hero--scrim + .lp-content-strip {
      width: 100%;
      max-width: none;
      margin-top: calc(-1 * var(--dionysos-card-gap));
      padding-top: 26px;
      padding-bottom: clamp(28px, 4vw, 46px);
      background: #08070b;
    }
    body.site-code-dionysos-iw .lp-hero--scrim + .lp-content-strip .lp-content-strip__head {
      display: none;
    }
    body.site-code-dionysos-iw .lp-hero--scrim + .lp-content-strip .lp-strip__track {
      width: max-content;
      min-width: 0;
    }
    body.site-code-dionysos-iw .lp-content-strip__head {
      margin-bottom: var(--dionysos-card-gap);
    }
    body.site-code-dionysos-iw .lp-strip__track {
      gap: var(--dionysos-card-gap);
      flex-wrap: nowrap;
      width: max-content;
      min-width: max-content;
      -webkit-backface-visibility: hidden;
    }
    body.site-code-dionysos-iw .lp-strip__viewport {
      overflow-x: auto;
      overflow-y: hidden;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch;
      touch-action: pan-x pan-y;
      padding: 10px 0 28px;
      margin: -10px 0 -28px;
    }
    body.site-code-dionysos-iw .lp-strip__viewport::-webkit-scrollbar {
      display: none;
    }
    body.site-code-dionysos-iw .lp-strip-card {
      border-radius: var(--dionysos-card-radius);
      background: var(--dionysos-card-bg);
      border: 1px solid var(--dionysos-card-line);
      transition: transform 180ms ease, box-shadow 180ms ease;
    }
    body.site-code-dionysos-iw .lp-value-card:hover,
    body.site-code-dionysos-iw .lp-tile:hover,
    body.site-code-dionysos-iw .lp-article-card:hover,
    body.site-code-dionysos-iw .lp-strip-card:hover,
    body.site-code-dionysos-iw .lp-value-card:focus-within,
    body.site-code-dionysos-iw .lp-tile:focus-within,
    body.site-code-dionysos-iw .lp-article-card:focus-within,
    body.site-code-dionysos-iw .lp-strip-card:focus-within {
      transform: translateY(-6px);
      box-shadow: var(--dionysos-card-hover-shadow);
    }
    body.site-code-dionysos-iw .lp-content-strip--rubrics .lp-strip-card {
      width: clamp(156px, 15vw, 220px);
      aspect-ratio: 1 / 1;
    }
    body.site-code-dionysos-iw .lp-content-strip--help-promoted .lp-strip-card {
      width: clamp(260px, 30vw, 420px);
      aspect-ratio: 2 / 1;
      border-radius: 20px;
    }
    body.site-code-dionysos-iw .lp-content-strip--rubrics .lp-strip-card::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.44) 20%, rgba(0, 0, 0, 0.12) 36%, rgba(0, 0, 0, 0) 58%);
      pointer-events: none;
    }
    body.site-code-dionysos-iw .lp-strip-card__label {
      z-index: 1;
      left: var(--dionysos-card-padding);
      right: var(--dionysos-card-padding);
      bottom: var(--dionysos-card-padding);
      color: rgba(255, 250, 238, 0.95);
      font-family: var(--site-font-heading);
      font-weight: 800;
      font-size: var(--site-text-card-title);
    }
    body.site-code-dionysos-iw .lp-strip-controls {
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      z-index: 3;
      height: 0;
      opacity: 0;
      pointer-events: none;
      transition: opacity 180ms ease;
    }
    body.site-code-dionysos-iw .lp-content-strip:hover .lp-strip-controls,
    body.site-code-dionysos-iw .lp-content-strip:focus-within .lp-strip-controls {
      opacity: 1;
    }
    body.site-code-dionysos-iw .lp-strip-control {
      position: absolute;
      top: 0;
      width: 42px;
      height: 42px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 0;
      border-radius: 50%;
      background: var(--dionysos-glass-bg);
      color: rgba(255, 255, 255, 0.82);
      box-shadow: var(--dionysos-glass-shadow);
      backdrop-filter: var(--dionysos-glass-blur);
      -webkit-backdrop-filter: var(--dionysos-glass-blur);
      cursor: pointer;
      padding: 0;
      pointer-events: auto;
      transform: translateY(-50%);
      transition: background 160ms ease, color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .lp-strip-control[data-strip-prev] {
      left: 8px;
    }
    body.site-code-dionysos-iw .lp-strip-control[data-strip-next] {
      right: 8px;
    }
    body.site-code-dionysos-iw .lp-strip-control:hover {
      color: #ffffff;
      background: var(--dionysos-glass-bg-hover);
      transform: translateY(-50%) scale(1.04);
    }
    body.site-code-dionysos-iw .lp-strip-control:focus-visible {
      outline: 2px solid var(--dionysos-accent-purple);
      outline-offset: 3px;
    }
    body.site-code-dionysos-iw .lp-strip-control svg {
      width: 24px;
      height: 24px;
      fill: currentColor;
    }
    body.site-code-dionysos-iw .lp-filter-rows {
      gap: 10px;
      margin-bottom: var(--dionysos-card-gap);
    }
    body.site-code-dionysos-iw .lp-filter-row {
      display: grid;
      grid-template-columns: max-content 3px minmax(0, 1fr);
      align-items: center;
      column-gap: 10px;
      row-gap: 8px;
    }
    body.site-code-dionysos-iw .lp-filter-row__label {
      color: rgba(255, 250, 238, 0.74);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-filter);
      font-weight: 800;
      letter-spacing: 0.08em;
      line-height: 30px;
      text-transform: uppercase;
      white-space: nowrap;
    }
    body.site-code-dionysos-iw .lp-filter-row__bar {
      width: 3px;
      height: 24px;
      margin-top: 3px;
      border-radius: 999px;
      background: var(--dionysos-accent-purple);
      flex: 0 0 auto;
    }
    body.site-code-dionysos-iw .lp-filter-row__scroll {
      position: relative;
      display: block;
      min-width: 0;
    }
    body.site-code-dionysos-iw .lp-filter-row__viewport {
      display: block;
      min-width: 0;
      overflow-x: auto;
      overflow-y: hidden;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch;
      touch-action: pan-x pan-y;
      padding: 2px 12px;
      margin: -2px 0 -2px -12px;
    }
    body.site-code-dionysos-iw .lp-filter-row__viewport::-webkit-scrollbar {
      display: none;
    }
    body.site-code-dionysos-iw .lp-filter-row__options {
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      width: max-content;
      min-width: max-content;
      gap: 18px;
    }
    body.site-code-dionysos-iw .lp-filter-chip {
      flex: 0 0 auto;
      min-height: 30px;
      padding: 0;
      border-color: transparent;
      background: rgba(124, 58, 237, 0.12);
      color: rgba(220, 203, 255, 0.92);
      font-size: var(--site-text-filter);
      border-radius: 999px;
      padding: 0 10px;
      transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
    }
    body.site-code-dionysos-iw .lp-filter-chip:hover,
    body.site-code-dionysos-iw .lp-filter-chip:focus-visible {
      background: rgba(124, 58, 237, 0.22);
      color: rgba(255, 250, 255, 0.98);
      box-shadow: 0 0 0 1px rgba(168, 85, 247, 0.28);
    }
    body.site-code-dionysos-iw .lp-filter-chip.is-active {
      background: rgba(124, 58, 237, 0.3);
      border-color: rgba(168, 85, 247, 0.44);
      color: rgba(255, 250, 255, 0.98);
      box-shadow: 0 0 0 1px rgba(168, 85, 247, 0.22), 0 10px 24px rgba(80, 42, 160, 0.16);
    }
    body.site-code-dionysos-iw .lp-filter-row__controls {
      position: absolute;
      inset: 0;
      display: none;
      opacity: 0;
      pointer-events: none;
      transition: opacity 160ms ease;
    }
    body.site-code-dionysos-iw .lp-filter-row.is-overflowing .lp-filter-row__viewport {
      padding-right: 42px;
    }
    body.site-code-dionysos-iw .lp-filter-row.is-overflowing .lp-filter-row__controls {
      display: block;
    }
    body.site-code-dionysos-iw .lp-filter-row.is-overflowing:hover .lp-filter-row__controls,
    body.site-code-dionysos-iw .lp-filter-row.is-overflowing:focus-within .lp-filter-row__controls {
      opacity: 1;
    }
    body.site-code-dionysos-iw .lp-filter-row__control {
      position: absolute;
      top: 50%;
      width: 30px;
      height: 30px;
      border: 0;
      border-radius: 50%;
      background: var(--dionysos-glass-bg);
      color: rgba(255, 255, 255, 0.88);
      box-shadow: var(--dionysos-glass-shadow);
      backdrop-filter: var(--dionysos-glass-blur);
      -webkit-backdrop-filter: var(--dionysos-glass-blur);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0;
      cursor: pointer;
      pointer-events: auto;
      transform: translateY(-50%);
      transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .lp-filter-row__control--prev {
      left: 6px;
    }
    body.site-code-dionysos-iw .lp-filter-row__control--next {
      right: 6px;
    }
    body.site-code-dionysos-iw .lp-filter-row__control:hover {
      color: #ffffff;
      background: var(--dionysos-glass-bg-hover);
      transform: translateY(-50%) scale(1.04);
    }
    body.site-code-dionysos-iw .lp-filter-row__control:focus-visible {
      outline: 2px solid var(--dionysos-accent-purple);
      outline-offset: 2px;
    }
    body.site-code-dionysos-iw .lp-filter-row__control svg {
      width: 20px;
      height: 20px;
      fill: currentColor;
    }
    body.site-code-dionysos-iw .lp-masonry__grid {
      column-count: 4;
      column-gap: var(--dionysos-card-gap);
    }
    /* Кнопка «Ещё» под общей лентой: обычная ссылка на следующую порцию, а не
       управляющий элемент — состояние ленты имеет адрес. */
    body.site-code-dionysos-iw .lp-masonry__more {
      display: flex;
      justify-content: center;
      margin-top: clamp(28px, 4vh, 48px);
    }
    body.site-code-dionysos-iw .lp-masonry__more-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 200px;
      padding: 15px 34px;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, 0.18);
      background: transparent;
      color: rgba(255, 250, 238, 0.9);
      font: 600 13px/1 var(--site-font-ui, Onest, system-ui, sans-serif);
      letter-spacing: 0.14em;
      text-transform: uppercase;
      transition: border-color 0.3s ease, background 0.3s ease, color 0.3s ease;
    }
    body.site-code-dionysos-iw .lp-masonry__more-button:hover,
    body.site-code-dionysos-iw .lp-masonry__more-button:focus-visible {
      border-color: rgba(255, 255, 255, 0.4);
      background: rgba(255, 255, 255, 0.06);
      color: #fff;
    }
    body.site-code-dionysos-iw .lp-masonry-card {
      margin-bottom: var(--dionysos-card-gap);
      padding: var(--dionysos-card-padding);
      border-radius: var(--dionysos-card-radius);
      border: 0;
      background: var(--dionysos-card-bg);
      color: rgba(255, 250, 238, 0.88);
    }
    body.site-code-dionysos-iw .lp-masonry-card__media {
      margin: calc(-1 * (var(--dionysos-card-padding) - var(--dionysos-card-media-inset))) calc(-1 * (var(--dionysos-card-padding) - var(--dionysos-card-media-inset))) 0;
      border-radius: var(--dionysos-card-media-radius);
      overflow: hidden;
    }
    body.site-code-dionysos-iw .lp-masonry-card__body {
      padding: var(--dionysos-card-padding) 0 0;
    }
    body.site-code-dionysos-iw .lp-masonry-card h3 {
      color: rgba(255, 250, 238, 0.96) !important;
      font-size: var(--site-text-card-title);
    }
    body.site-code-dionysos-iw .lp-masonry-card p {
      color: rgba(255, 250, 238, 0.66) !important;
    }
    body.site-code-dionysos-iw .lp-masonry-card .lp-article-card__tag {
      margin: 0;
      width: fit-content;
    }
    body.site-code-dionysos-iw .lp-masonry-card .lp-article-card__footer {
      margin: 0;
    }
    body.site-code-dionysos-iw .lp-unified-card {
      position: relative;
      display: inline-flex;
      flex-direction: column;
      width: 100%;
      min-height: 248px;
      padding: var(--dionysos-card-padding);
      break-inside: avoid;
      overflow: hidden;
      isolation: isolate;
      border: 1px solid var(--dionysos-card-line);
      border-radius: var(--dionysos-card-radius);
      background: var(--dionysos-card-bg);
      --card-surface-value: var(--dionysos-card-bg);
      --card-bg-image: none;
      transition:
        transform 180ms ease,
        background-color 180ms ease,
        box-shadow 180ms ease;
    }
    body.site-code-dionysos-iw .lp-unified-card--density-compact {
      min-height: 210px;
    }
    body.site-code-dionysos-iw .lp-unified-card--density-feature,
    body.site-code-dionysos-iw .lp-unified-card--size-large {
      min-height: 340px;
    }
    body.site-code-dionysos-iw .lp-unified-card--size-wide {
      min-height: 292px;
    }
    body.site-code-dionysos-iw .lp-unified-card--layout-media_background {
      justify-content: flex-end;
      background: var(--card-surface-value);
      background-position: center;
      background-size: cover;
    }
    body.site-code-dionysos-iw .lp-unified-card--surface-picture {
      background-image: var(--card-bg-image);
    }
    body.site-code-dionysos-iw .lp-unified-card--surface-gradient {
      background: var(--card-surface-value);
    }
    body.site-code-dionysos-iw .lp-unified-card--surface-color {
      background: var(--card-surface-value);
    }
    body.site-code-dionysos-iw .lp-unified-card--readability-scrim::after {
      content: "";
      position: absolute;
      inset: 34% 0 0;
      z-index: -1;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.76) 0%, rgba(0, 0, 0, 0.42) 48%, rgba(0, 0, 0, 0) 100%);
      pointer-events: none;
    }
    body.site-code-dionysos-iw .lp-unified-card__media {
      position: relative;
      margin: calc(-1 * (var(--dionysos-card-padding) - var(--dionysos-card-media-inset))) calc(-1 * (var(--dionysos-card-padding) - var(--dionysos-card-media-inset))) 0;
      aspect-ratio: 4 / 3;
      overflow: hidden;
      border-radius: var(--dionysos-card-media-radius);
      background: #100e14;
    }
    body.site-code-dionysos-iw .lp-unified-card__media.is-carousel {
      touch-action: pan-y;
    }
    body.site-code-dionysos-iw .lp-unified-card--size-small .lp-unified-card__media {
      aspect-ratio: 16 / 9;
    }
    body.site-code-dionysos-iw .lp-unified-card--size-large .lp-unified-card__media {
      aspect-ratio: 1 / 1;
    }
    body.site-code-dionysos-iw .lp-unified-card--size-wide .lp-unified-card__media {
      aspect-ratio: 16 / 10;
    }
    body.site-code-dionysos-iw .lp-unified-card__media img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 320ms ease;
    }
    body.site-code-dionysos-iw .lp-unified-card__media-track,
    body.site-code-dionysos-iw .lp-unified-card__media-slide {
      position: absolute;
      inset: 0;
    }
    body.site-code-dionysos-iw .lp-unified-card__media-slide {
      opacity: 0;
      transition: opacity 180ms ease, transform 320ms ease;
    }
    body.site-code-dionysos-iw .lp-unified-card__media-slide.is-active {
      opacity: 1;
    }
    body.site-code-dionysos-iw .lp-card-carousel__arrow {
      position: absolute;
      top: 50%;
      z-index: 4;
      width: 34px;
      height: 34px;
      border: 0;
      border-radius: 50%;
      background: rgba(28, 27, 24, 0.82);
      color: rgba(255, 255, 255, 0.9);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0;
      cursor: pointer;
      transform: translateY(-50%);
      opacity: 0;
      transition: opacity 160ms ease, background-color 160ms ease;
    }
    body.site-code-dionysos-iw .lp-card-carousel__arrow--prev {
      left: 10px;
    }
    body.site-code-dionysos-iw .lp-card-carousel__arrow--next {
      right: 10px;
    }
    body.site-code-dionysos-iw .lp-unified-card__media:hover .lp-card-carousel__arrow,
    body.site-code-dionysos-iw .lp-unified-card__media:focus-within .lp-card-carousel__arrow {
      opacity: 1;
    }
    body.site-code-dionysos-iw .lp-card-carousel__arrow svg {
      width: 24px;
      height: 24px;
      fill: currentColor;
    }
    body.site-code-dionysos-iw .lp-card-carousel__dots {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 10px;
      z-index: 4;
      display: flex;
      justify-content: center;
      gap: 12px;
    }
    body.site-code-dionysos-iw .lp-card-carousel__dot {
      width: 9px;
      height: 9px;
      padding: 0;
      border: 0;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.28);
      cursor: pointer;
    }
    body.site-code-dionysos-iw .lp-card-carousel__dot.is-active {
      background: rgba(255, 255, 255, 0.78);
    }
    body.site-code-dionysos-iw .lp-unified-card__body {
      position: relative;
      z-index: 2;
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      gap: 18px;
      padding: 20px 0 0;
    }
    body.site-code-dionysos-iw .lp-unified-card--layout-text .lp-unified-card__body {
      min-height: 100%;
      padding-top: 0;
    }
    body.site-code-dionysos-iw .lp-unified-card--layout-media_background .lp-unified-card__body {
      margin-top: auto;
      padding: 0;
      border-radius: max(4px, calc(var(--dionysos-card-radius) - 2px));
    }
    body.site-code-dionysos-iw .lp-unified-card--readability-glow .lp-unified-card__body,
    body.site-code-dionysos-iw .lp-unified-card--readability-scrim .lp-unified-card__body {
      text-shadow: 0 2px 16px rgba(0, 0, 0, 0.74);
    }
    body.site-code-dionysos-iw .lp-unified-card h3 {
      margin: 0 !important;
      color: rgba(255, 250, 238, 0.97) !important;
      font-size: var(--site-text-card-title);
      line-height: 1.12;
    }
    body.site-code-dionysos-iw .lp-unified-card p {
      margin: 0 !important;
      color: rgba(255, 250, 238, 0.72) !important;
      font-size: var(--site-text-card-excerpt);
      line-height: 1.52;
    }
    body.site-code-dionysos-iw .lp-unified-card__chips {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 6px;
    }
    body.site-code-dionysos-iw .lp-unified-card__chips span {
      min-height: 23px;
      display: inline-flex;
      align-items: center;
      padding: 0 8px;
      border: 0;
      border-radius: 999px;
      background: rgba(142, 142, 138, 0.58);
      color: rgba(255, 250, 238, 0.54);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-chip);
    }
    body.site-code-dionysos-iw .lp-unified-card__footer {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      gap: 8px;
      margin-top: auto;
      color: rgba(255, 250, 238, 0.52);
      font-size: var(--site-text-small);
    }
    body.site-code-dionysos-iw .lp-unified-card--actions-triad .lp-unified-card__footer {
      display: grid;
      grid-template-columns: 40px minmax(0, 1fr) 40px;
      justify-content: stretch;
      justify-items: center;
      width: 100%;
      gap: 8px;
    }
    body.site-code-dionysos-iw .lp-unified-card--actions-triad .lp-unified-card__icon-action--hide {
      justify-self: start;
    }
    body.site-code-dionysos-iw .lp-unified-card--actions-triad .lp-unified-card__action--primary {
      justify-self: center;
    }
    body.site-code-dionysos-iw .lp-unified-card--actions-triad .lp-unified-card__icon-action--favorite {
      justify-self: end;
    }
    body.site-code-dionysos-iw .lp-unified-card__action {
      min-height: 31px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 14px;
      border-radius: 999px;
      background: var(--dionysos-accent-purple);
      color: #ffffff;
      text-decoration: none;
      font-size: var(--site-text-button);
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .lp-unified-card__icon-action {
      width: 38px;
      height: 38px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0;
      border: 0;
      border-radius: 50%;
      background: rgba(0, 0, 0, 0.26);
      color: rgba(255, 250, 238, 0.58);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
      backdrop-filter: var(--dionysos-glass-blur);
      -webkit-backdrop-filter: var(--dionysos-glass-blur);
      cursor: pointer;
      transition:
        background-color 160ms ease,
        color 160ms ease,
        transform 160ms ease;
    }
    body.site-code-dionysos-iw .lp-unified-card__icon-action:hover,
    body.site-code-dionysos-iw .lp-unified-card__icon-action:focus-visible {
      background: rgba(0, 0, 0, 0.42);
      color: rgba(255, 250, 238, 0.9);
      transform: translateY(-1px);
    }
    body.site-code-dionysos-iw .lp-unified-card__icon-action:focus-visible {
      outline: 2px solid rgba(255, 255, 255, 0.38);
      outline-offset: 3px;
    }
    body.site-code-dionysos-iw .lp-unified-card__icon-action svg {
      width: 22px;
      height: 22px;
      fill: currentColor;
    }
    body.site-code-dionysos-iw .lp-unified-card__heart-fill {
      display: none;
    }
    body.site-code-dionysos-iw .lp-unified-card__icon-action--favorite[aria-pressed="true"] {
      color: var(--dionysos-favorite-active);
      background: rgba(124, 58, 237, 0.16);
    }
    body.site-code-dionysos-iw .lp-unified-card__icon-action--favorite[aria-pressed="true"] .lp-unified-card__heart-outline {
      display: none;
    }
    body.site-code-dionysos-iw .lp-unified-card__icon-action--favorite[aria-pressed="true"] .lp-unified-card__heart-fill {
      display: block;
    }
    body.site-code-dionysos-iw .lp-unified-card.is-dismissing {
      pointer-events: none;
      opacity: 0;
      transform: translateX(-120%) scale(0.96);
      transition:
        opacity 240ms ease,
        transform 260ms ease;
    }
    body.site-code-dionysos-iw .lp-unified-card--elevation-quiet {
      border-color: var(--dionysos-card-line);
      background: transparent;
    }
    body.site-code-dionysos-iw .lp-unified-card--elevation-hover_reveal,
    body.site-code-dionysos-iw .lp-unified-card--surface-transparent {
      border-color: transparent;
      background: transparent;
    }
    body.site-code-dionysos-iw .lp-unified-card--folder {
      border-color: transparent;
    }
    body.site-code-dionysos-iw .lp-unified-card:hover,
    body.site-code-dionysos-iw .lp-unified-card:focus-within {
      transform: translateY(-8px);
      box-shadow: var(--dionysos-card-hover-shadow);
    }
    body.site-code-dionysos-iw .lp-unified-card:hover .lp-unified-card__media img,
    body.site-code-dionysos-iw .lp-unified-card:focus-within .lp-unified-card__media img {
      transform: scale(1.035);
    }
    body.site-code-dionysos-iw .lp-unified-card.is-dismissing,
    body.site-code-dionysos-iw .lp-unified-card.is-dismissing:hover,
    body.site-code-dionysos-iw .lp-unified-card.is-dismissing:focus-within {
      box-shadow: none;
      transform: translateX(-120%) scale(0.96);
    }
    body.site-code-dionysos-iw .lp-unified-card.is-filter-hidden,
    body.site-code-dionysos-iw .lp-unified-card.is-lifecycle-hidden {
      display: none !important;
    }
    body.site-code-dionysos-iw .lp-unified-card--elevation-hover_reveal:hover,
    body.site-code-dionysos-iw .lp-unified-card--elevation-hover_reveal:focus-within {
      background: rgba(255, 255, 255, 0.055);
    }
    body.site-code-dionysos-iw .lp-footer-links {
      width: 100%;
      max-width: none;
      margin-top: 8px;
      margin-bottom: 0;
      padding: 0 24px;
      min-height: 40px;
      border-top: 0 !important;
      background: transparent !important;
    }
    body.site-code-dionysos-iw .lp-footer-links a {
      color: rgba(255, 250, 238, 0.62);
      font-size: var(--site-text-nav);
      letter-spacing: 0.22em;
    }
    body.site-code-dionysos-iw .article-shell {
      width: min(calc(100% - 48px), var(--dionysos-surface-content-max));
      min-height: calc(100vh - var(--shell-height) - 88px);
      min-height: calc(100dvh - var(--shell-height) - 88px);
      margin: 0 auto;
      padding-top: calc(var(--shell-height) + 36px);
    }
    body.site-code-dionysos-iw .article-shell--has-hero {
      width: 100vw;
      max-width: none;
      min-height: 100vh;
      min-height: 100dvh;
      margin-top: calc(-1 * (var(--shell-height) + 20px));
      margin-right: calc(50% - 50vw);
      margin-left: calc(50% - 50vw);
      padding-top: 0;
      gap: 0;
    }
    body.site-code-dionysos-iw .article-breadcrumbs {
      box-sizing: border-box;
      width: min(100%, calc(var(--dionysos-article-reading-width) + var(--dionysos-article-edge-padding) * 2));
      margin: 0 auto 30px;
      padding-right: var(--dionysos-article-edge-padding);
      padding-left: var(--dionysos-article-edge-padding);
      color: rgba(255, 250, 238, 0.5);
      font-family: var(--site-font-heading);
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .article-shell--has-hero .article-breadcrumbs {
      margin-top: 42px;
    }
    body.site-code-dionysos-iw .article-breadcrumbs a:hover,
    body.site-code-dionysos-iw .article-breadcrumbs a:focus-visible {
      color: rgba(255, 250, 238, 0.86);
    }
    body.site-code-dionysos-iw .site-article__hero-banner {
      position: relative;
      width: min(100%, var(--dionysos-surface-content-max));
      min-height: clamp(240px, 42vw, 520px);
      margin: 8px auto 42px;
      border: 0;
      border-radius: 0;
      box-shadow: none;
      background: #08070b;
    }
    body.site-code-dionysos-iw .article-shell--has-hero .site-article__hero-banner {
      width: 100vw;
      height: 100vh;
      height: 100dvh;
      min-height: 100vh;
      min-height: 100dvh;
      margin: 0;
      overflow: hidden;
    }
    body.site-code-dionysos-iw .site-article__hero-banner::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 2;
      height: var(--dionysos-hero-bottom-fade);
      background: linear-gradient(180deg, rgba(8, 7, 11, 0) 0%, #08070b 100%);
      pointer-events: none;
    }
    body.site-code-dionysos-iw .site-article__hero-banner picture,
    body.site-code-dionysos-iw .site-article__hero-banner img {
      height: 100%;
      min-height: inherit;
    }
    body.site-code-dionysos-iw .site-article__hero-banner img {
      aspect-ratio: 16 / 7;
      object-fit: cover;
      filter: saturate(0.96) contrast(0.96);
    }
    body.site-code-dionysos-iw .article-shell--has-hero .site-article__hero-banner img {
      aspect-ratio: auto;
    }
    body.site-code-dionysos-iw .site-article__lead-image {
      position: relative;
      width: 100%;
      margin: 34px 0 40px;
      overflow: hidden;
      border-radius: 8px;
      background: rgba(255, 250, 238, 0.06);
      box-shadow: inset 0 0 0 1px rgba(255, 250, 238, 0.08);
    }
    body.site-code-dionysos-iw .site-article__lead-image picture,
    body.site-code-dionysos-iw .site-article__lead-image img {
      display: block;
      width: 100%;
    }
    body.site-code-dionysos-iw .site-article__lead-image img {
      aspect-ratio: 16 / 9;
      max-height: 560px;
      object-fit: cover;
      filter: saturate(0.96) contrast(0.96);
    }
    body.site-code-dionysos-iw .site-article {
      box-sizing: border-box;
      width: min(100%, calc(var(--dionysos-article-reading-width) + var(--dionysos-article-edge-padding) * 2));
      margin: 0 auto;
      padding: 0 var(--dionysos-article-edge-padding);
      background: transparent;
      border: 0;
      border-radius: 0;
      color: var(--dionysos-article-text-color);
    }
    body.site-code-dionysos-iw .site-article__header h1 {
      color: var(--dionysos-article-text-color);
      font-family: var(--site-font-heading);
      font-size: var(--dionysos-article-title-size);
      font-weight: 800;
      letter-spacing: 0;
    }
    body.site-code-dionysos-iw .site-article__lead {
      color: var(--dionysos-article-text-color);
      font-size: var(--dionysos-article-lead-size);
      line-height: 1.62;
    }
    body.site-code-dionysos-iw .site-article__meta-row {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      margin-top: 24px;
      padding-top: 18px;
      border-top: 1px solid rgba(255, 250, 238, 0.18);
    }
    body.site-code-dionysos-iw .site-article__actions {
      display: flex;
      align-items: center;
      gap: 12px;
    }
    body.site-code-dionysos-iw .site-article__icon-action {
      display: inline-grid;
      place-items: center;
      width: 44px;
      height: 44px;
      padding: 0;
      border: 0;
      border-radius: 999px;
      background: transparent;
      color: rgba(255, 250, 238, 0.66);
      cursor: pointer;
      transition: color 160ms ease, background-color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .site-article__icon-action:hover,
    body.site-code-dionysos-iw .site-article__icon-action:focus-visible {
      color: rgba(255, 250, 238, 0.94);
      background: rgba(255, 255, 255, 0.065);
      transform: translateY(-1px);
    }
    body.site-code-dionysos-iw .site-article__icon-action:focus-visible {
      outline: 2px solid var(--dionysos-accent-purple);
      outline-offset: 3px;
    }
    body.site-code-dionysos-iw .site-article__icon-action svg {
      width: 22px;
      height: 22px;
      fill: currentColor;
    }
    body.site-code-dionysos-iw .site-article__heart-fill {
      display: none;
    }
    body.site-code-dionysos-iw .site-article__icon-action--favorite.is-active {
      color: var(--dionysos-favorite-active);
    }
    body.site-code-dionysos-iw .site-article__icon-action--favorite.is-active .site-article__heart-fill {
      display: block;
    }
    body.site-code-dionysos-iw .site-article__icon-action--favorite.is-active .site-article__heart-outline {
      display: none;
    }
    body.site-code-dionysos-iw .site-article__meta {
      color: rgba(255, 250, 238, 0.42);
      font-family: var(--site-font-heading);
      font-weight: 700;
    }
    body.site-code-dionysos-iw .site-article__themes {
      border-top-color: rgba(255, 255, 255, 0.12);
    }
    body.site-code-dionysos-iw .site-article__themes-label {
      color: rgba(255, 250, 238, 0.55);
    }
    body.site-code-dionysos-iw .site-article__theme {
      min-height: 32px;
      display: inline-flex;
      align-items: center;
    }
    body.site-code-dionysos-iw .site-article__content {
      color: var(--dionysos-article-text-color);
      font-family: var(--site-font-body);
      font-size: var(--dionysos-article-body-size);
      margin-top: 72px;
    }
    body.site-code-dionysos-iw .site-article__content h2,
    body.site-code-dionysos-iw .site-article__content h3,
    body.site-code-dionysos-iw .site-article__content h4 {
      color: var(--dionysos-article-text-color);
      font-family: var(--site-font-heading);
      font-weight: 800;
      line-height: 1.12;
      margin: 1.8em 0 0.55em;
    }
    body.site-code-dionysos-iw .site-article__content p,
    body.site-code-dionysos-iw .site-article__content li {
      font-size: var(--dionysos-article-body-size);
      line-height: 1.82;
    }
    body.site-code-dionysos-iw .site-article__content a {
      color: rgba(214, 181, 255, 0.96);
    }
    body.site-code-dionysos-iw .site-article__content blockquote {
      margin: 28px 0;
      padding-left: 18px;
      border-left: 3px solid rgba(255, 255, 255, 0.2);
      color: var(--dionysos-article-text-color);
      font-size: var(--dionysos-article-lead-size);
      line-height: 1.62;
    }
    body.site-code-dionysos-iw .site-article__content blockquote p {
      font-size: inherit;
      line-height: inherit;
    }
    body.site-code-dionysos-iw .article-footer {
      width: 100%;
      padding: 0 24px 16px !important;
      background: transparent !important;
      border: 0 !important;
      border-radius: 0 !important;
      box-shadow: none !important;
    }
    @keyframes dionysos-hero-dot-fill {
      from {
        transform: scaleX(0);
      }
      to {
        transform: scaleX(1);
      }
    }
    @media (max-width: 1370px) {
      body.site-code-dionysos-iw .lp-values__grid,
      body.site-code-dionysos-iw .lp-tiles__grid,
      body.site-code-dionysos-iw .lp-article-grid__cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      body.site-code-dionysos-iw .lp-masonry__grid {
        column-count: 3;
      }
    }
    @media (max-width: 960px) {
      body.site-code-dionysos-iw .lp-values__grid,
      body.site-code-dionysos-iw .lp-tiles__grid,
      body.site-code-dionysos-iw .lp-article-grid__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      body.site-code-dionysos-iw .lp-masonry__grid {
        column-count: 2;
      }
    }
    @media (max-width: 640px) {
      body.site-code-dionysos-iw {
        --dionysos-mobile-font-modifier: 1.1;
        --dionysos-card-title-scale: 1.375;
        --dionysos-card-text-scale: 1.71875;
        --dionysos-card-gap: 20px;
        --dionysos-article-body-size: 1.375rem;
        --dionysos-article-lead-size: 1.58125rem;
        --site-text-body: 1.375rem !important;
        --site-text-body-large: 1.546875rem !important;
        --site-text-card-excerpt: calc(0.875rem * var(--dionysos-card-text-scale)) !important;
        --site-text-button: 1.03125rem !important;
        --site-text-chip: 0.89375rem !important;
        --site-text-filter: 1.16875rem !important;
        --site-text-nav: 1.03125rem !important;
        --site-text-surface-title: 1.5125rem !important;
        --site-text-settings-row: var(--site-text-body-large) !important;
        --site-text-small: 1.203125rem !important;
      }
      body.site-code-dionysos-iw .site-shell__inner,
      body.site-code-dionysos-iw .lp-hero__body,
      body.site-code-dionysos-iw .page-blocks > .lp-section:not(.lp-hero),
      body.site-code-dionysos-iw .article-shell {
        width: min(calc(100% - 24px), var(--content-width-max));
      }
      body.site-code-dionysos-iw .site-shell__inner {
        width: calc(100% - 24px);
        max-width: none;
      }
      body.site-code-dionysos-iw .page-blocks > .lp-hero.lp-hero--scrim {
        width: 100%;
        min-height: min(780px, 100svh);
        margin-top: 0;
        padding: calc(var(--shell-height) + 58px) 20px 58px;
      }
      body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__slides {
        min-height: clamp(450px, 112vw, 560px);
      }
      body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__body {
        width: 100%;
        max-width: none;
        padding: 0 0 76px;
      }
      body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__stage {
        height: min(620px, 82svh);
      }
      body.site-code-dionysos-iw .page-blocks > .lp-hero.lp-hero--scrim {
        /* на узком экране облако занимает почти всю ширину, и сильное размытие
           съедает форму — держим его мельче */
        --scrim-spots-blur: 9px;
      }
      body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__title {
        font-size: clamp(2.1rem, 9.9vw, 3.5rem);
      }
      body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__lead {
        max-width: 30rem;
        font-size: clamp(1.36rem, 6.4vw, 1.82rem);
        line-height: 1.32;
      }
      body.site-code-dionysos-iw .article-shell--has-hero {
        width: 100vw;
        max-width: none;
      }
      body.site-code-dionysos-iw .site-logo {
        width: 52px;
        height: 52px;
      }
      body.site-code-dionysos-iw .site-shell-actions {
        width: 100px;
        height: 52px;
        min-height: 52px;
        padding: 4px;
      }
      body.site-code-dionysos-iw .site-burger,
      body.site-code-dionysos-iw .site-shell-action {
        width: 42px;
        height: 42px;
        min-width: 42px;
      }
      body.site-code-dionysos-iw .site-shell-icon {
        width: 31px;
        height: 31px;
      }
      body.site-code-dionysos-iw .site-messenger-fab {
        right: 16px;
        bottom: 16px;
        width: 52px;
        height: 52px;
      }
      body.site-code-dionysos-iw .lp-values__grid,
      body.site-code-dionysos-iw .lp-tiles__grid,
      body.site-code-dionysos-iw .lp-article-grid__cards {
        grid-template-columns: 1fr;
      }
      body.site-code-dionysos-iw .lp-masonry__grid {
        column-count: 1;
      }
      body.site-code-dionysos-iw .site-article__hero-banner {
        width: min(calc(100% - 24px), var(--content-width-max));
        min-height: clamp(220px, 68vw, 360px);
        margin-top: 4px;
        margin-bottom: 30px;
      }
      body.site-code-dionysos-iw .article-shell--has-hero .site-article__hero-banner {
        width: 100vw;
        height: 100vh;
        height: 100dvh;
        min-height: 100vh;
        min-height: 100dvh;
        margin: 0;
      }
      body.site-code-dionysos-iw .site-article__hero-banner img {
        aspect-ratio: 4 / 3;
      }
      body.site-code-dionysos-iw .article-shell--has-hero .site-article__hero-banner img {
        aspect-ratio: auto;
      }
      body.site-code-dionysos-iw .site-article__lead-image {
        margin-top: 26px;
        margin-bottom: 30px;
      }
      body.site-code-dionysos-iw .site-article__lead-image img {
        aspect-ratio: 4 / 3;
        max-height: none;
      }
      body.site-code-dionysos-iw .lp-strip-card {
        width: 72vw;
      }
      body.site-code-dionysos-iw .lp-content-strip--rubrics .lp-strip-card {
        width: min(56vw, 220px);
        aspect-ratio: 1 / 1;
      }
      body.site-code-dionysos-iw .lp-content-strip {
        padding-top: 0 !important;
      }
      body.site-code-dionysos-iw .lp-strip-controls {
        display: none;
      }
      body.site-code-dionysos-iw .lp-strip__viewport {
        padding: 8px 0 22px;
        margin: -8px 0 -22px;
      }
      body.site-code-dionysos-iw .lp-card-carousel__arrow {
        display: none;
      }
      body.site-code-dionysos-iw .lp-filter-row {
        column-gap: 9px;
      }
      body.site-code-dionysos-iw .lp-filter-row__viewport {
        padding-right: 12px;
        margin-right: -12px;
      }
      body.site-code-dionysos-iw .lp-filter-row__controls {
        display: none;
      }
      body.site-code-dionysos-iw .lp-search-panel__form {
        grid-template-columns: 1fr;
      }
      body.site-code-dionysos-iw .lp-help-search__shell,
      body.site-code-dionysos-iw .lp-cta-strip {
        grid-template-columns: 1fr;
      }
      body.site-code-dionysos-iw .lp-help-index__groups {
        grid-template-columns: 1fr;
      }
      body.site-code-dionysos-iw .page-blocks[data-page-type="help"] > .lp-breadcrumbs,
      body.site-code-dionysos-iw .page-blocks[data-page-type="help"] > .lp-help-search,
      body.site-code-dionysos-iw .page-blocks[data-page-type="help"] > .lp-content-strip--help-promoted,
      body.site-code-dionysos-iw .page-blocks[data-page-type="help"] > .lp-help-index--settings,
      body.site-code-dionysos-iw .page-blocks[data-page-type="help"] > .lp-help-text {
        width: min(calc(100% - 32px), var(--dionysos-surface-content-max));
      }
      body.site-code-dionysos-iw a.lp-help-settings-row,
      body.site-code-dionysos-iw .lp-help-settings-row summary {
        grid-template-columns: minmax(0, 1fr) max-content 16px;
        gap: 12px;
        padding: 0 20px;
      }
      body.site-code-dionysos-iw .lp-help-settings-row__body {
        padding: 0 20px 18px;
      }
      body.site-code-dionysos-iw .lp-cta-strip__actions .lp-button {
        width: 100%;
      }
      body.site-code-dionysos-iw .lp-account-card {
        width: min(56vw, 220px);
      }
      body.site-code-dionysos-iw .lp-account-lane__controls {
        display: none;
      }
      body.site-code-dionysos-iw .lp-hero__controls {
        opacity: 1;
      }
      body.site-code-dionysos-iw .lp-hero__control {
        width: 40px;
        height: 40px;
      }
      body.site-code-dionysos-iw .lp-hero__dots {
        left: 12px;
      }
      body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__dots {
        left: 50%;
        bottom: 24px;
        transform: translateX(-50%);
      }
      body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__control--prev {
        left: 0;
        right: auto;
      }
      body.site-code-dionysos-iw .lp-hero--scrim .lp-hero__control--next {
        right: 0;
      }
      body.site-code-dionysos-iw .lp-footer-links {
        width: 100%;
      }
    }
    .product-head { margin-bottom: 12px; }
    .pdp-text {
      white-space: pre-wrap;
      line-height: 1.58;
    }
    .specs-wrap {
      overflow-x: auto;
      border: 1px solid var(--line);
      border-radius: 10px;
      background: #fff;
    }
    .specs-table {
      width: 100%;
      border-collapse: collapse;
      min-width: 420px;
    }
    .specs-table th,
    .specs-table td {
      text-align: left;
      padding: 10px 12px;
      border-bottom: 1px solid var(--line);
      vertical-align: top;
    }
    .specs-table thead th {
      background: #f8fafc;
      font-size: var(--site-text-small);
      color: var(--muted);
      font-weight: 600;
    }
    .specs-table tbody tr:last-child td { border-bottom: none; }

    .site-shell {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 90;
      border-bottom: none;
      background: var(--site-header-bg, #000000);
      backdrop-filter: none;
      font-family: var(--site-font-header);
      transition: transform 180ms ease-out;
    }
    .site-shell.is-hidden {
      transform: translateY(calc(-1 * var(--shell-height)));
    }
    .site-shell__inner {
      width: calc(100% - (var(--content-gutter-mobile) * 2));
      max-width: none;
      margin: 0 auto;
      height: var(--shell-height);
      padding: 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }
    .site-logo {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: var(--text);
      text-decoration: none;
      min-width: 0;
      border: none;
    }
    .site-logo__image {
      display: block;
      width: auto;
      height: calc(var(--shell-height) - 12px);
      max-height: 36px;
      max-width: 160px;
      object-fit: contain;
      border: none;
    }
    .site-logo__mark {
      width: 36px;
      height: 36px;
      border-radius: 10px;
      background: linear-gradient(145deg, #0f766e 0%, #0891b2 100%);
      color: #fff;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: var(--site-text-chip);
      font-weight: 700;
      letter-spacing: 0.06em;
      flex-shrink: 0;
    }
    .site-logo__text {
      min-width: 0;
      display: flex;
      flex-direction: column;
      line-height: 1.15;
    }
    .site-logo__name {
      font-size: var(--site-text-nav);
      font-weight: 700;
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden;
      max-width: 72vw;
    }
    .site-logo__domain {
      font-size: var(--site-text-small);
      color: var(--muted);
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden;
      max-width: 72vw;
    }
    .site-burger {
      width: var(--shell-height);
      height: var(--shell-height);
      border: none;
      border-radius: 0;
      background: transparent;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      padding: 0;
      color: var(--site-menu-text, #ffffff);
      cursor: pointer;
      text-decoration: none;
    }
    .site-burger__mui-icon {
      display: block;
      width: 28px;
      height: 28px;
      color: currentColor;
      fill: currentColor;
      pointer-events: none;
    }
    .site-burger__asset {
      display: block;
      width: 32px;
      height: 32px;
      object-fit: contain;
      border: none;
      pointer-events: none;
    }
    @media (min-width: 1280px) {
      .wrap {
        width: clamp(
          var(--content-width-min),
          calc(100% - (var(--content-gutter-desktop) * 2)),
          var(--content-width-max)
        );
      }
      .site-shell__inner {
        width: calc(100% - (var(--content-gutter-desktop) * 2));
      }
    }
    @media (max-width: 760px) {
      .site-logo__name { max-width: 56vw; }
      .site-logo__domain { max-width: 56vw; }
      .lp-hero {
        grid-template-columns: 1fr;
      }
      .lp-hero__visual {
        min-height: 220px;
      }
      .lp-promo,
      .lp-article-grid__head,
      .lp-article-card__footer {
        align-items: stretch;
        flex-direction: column;
      }
    }
    /* SBWS 28.06 correction: FIAMM uses light overlay surfaces and the overlay-header pill model. */
    body.site-monobrand {
      --shell-height: 120px;
      --fiamm-shell-main-height: 120px;
      --shell-control-size: 60px;
      --fiamm-surface-strong: #f1f1f1;
      --fiamm-surface-strong-hover: #e4e4e4;
      --fiamm-overlay-surface: #f1f1f1;
      --fiamm-overlay-surface-raised: #f7f7f7;
      --fiamm-overlay-control-bg: #e4e4e4;
      --fiamm-overlay-control-bg-hover: #d6d6d6;
      --fiamm-overlay-text: #1b1b1b;
      --fiamm-overlay-muted: #6a6a6a;
      --fiamm-overlay-line: #d8d8d8;
      --fiamm-red: var(--site-brand-color, #d81818);
      background: #ffffff;
    }
    body.site-monobrand .site-shell,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled),
    body.site-monobrand .site-shell.is-scrolled {
      position: sticky;
      top: 16px;
      z-index: 100;
      width: min(calc(100% - 32px), var(--content-width-max));
      min-height: var(--shell-height);
      margin: 16px auto 0;
      border: 0;
      border-radius: 60px;
      background: var(--fiamm-red);
      color: #ffffff;
      box-shadow: 0 18px 44px -16px rgba(216, 24, 24, 0.5);
      transition:
        transform 260ms cubic-bezier(0.4, 0, 0.2, 1),
        opacity 220ms ease,
        box-shadow 180ms ease;
    }
    body.site-monobrand .site-shell.is-hidden {
      transform: translateY(calc(-1 * (var(--shell-height) + 48px)));
      opacity: 0;
      pointer-events: none;
    }
    body.site-monobrand .site-shell__inner {
      width: 100%;
      min-height: var(--shell-height);
      padding: 0 36px 0 40px;
      flex-direction: row;
      align-items: center;
      gap: 0;
      overflow: visible;
    }
    body.site-monobrand .fiamm-shell-top,
    body.site-monobrand .fiamm-shell-links,
    body.site-monobrand .fiamm-shell-contacts {
      display: none;
    }
    body.site-monobrand .fiamm-shell-main {
      display: flex;
      align-items: center;
      width: 100%;
      min-height: var(--shell-height);
      gap: 28px;
    }
    body.site-monobrand .fiamm-shell-brand {
      flex: 0 1 auto;
      display: inline-flex;
      align-items: center;
      gap: 26px;
      min-width: 0;
    }
    body.site-monobrand .fiamm-shell-brand::after {
      content: "";
      width: 1px;
      height: 54px;
      order: 1;
      background: rgba(255, 255, 255, 0.32);
    }
    body.site-monobrand .site-logo {
      flex: 0 0 auto;
    }
    body.site-monobrand .site-logo__image {
      height: 54px;
      max-width: 198px;
      max-height: 54px;
    }
    body.site-monobrand .fiamm-shell-slogan {
      order: 2;
      max-width: 250px;
      min-height: 0;
      color: rgba(255, 255, 255, 0.82);
      font-family: var(--site-font-menu);
      font-size: 0.78rem;
      font-weight: 700;
      line-height: 1.42;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }
    body.site-monobrand .fiamm-shell-nav {
      flex: 1 1 auto;
      display: inline-flex;
      align-items: center;
      justify-content: flex-end;
      gap: clamp(22px, 3vw, 36px);
      min-width: 0;
    }
    body.site-monobrand .fiamm-shell-nav a {
      color: #ffffff;
      text-decoration: none;
      font-family: var(--site-font-menu);
      font-size: 0.94rem;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      white-space: nowrap;
      transition: opacity 160ms ease;
    }
    body.site-monobrand .fiamm-shell-nav a:hover,
    body.site-monobrand .fiamm-shell-nav a:focus-visible {
      opacity: 0.74;
      outline: none;
    }
    body.site-monobrand .site-shell-actions {
      flex: 0 0 auto;
      width: auto;
      height: auto;
      min-height: 0;
      gap: 12px;
      margin-left: 10px;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      -webkit-backdrop-filter: none;
      backdrop-filter: none;
    }
    body.site-monobrand .site-shell-action,
    body.site-monobrand .site-burger.site-shell-action {
      width: var(--shell-control-size);
      height: var(--shell-control-size);
      background: transparent;
      color: #ffffff;
    }
    body.site-monobrand .site-shell-action:hover,
    body.site-monobrand .site-shell-action:focus-visible {
      background: transparent;
      opacity: 0.74;
      transform: none;
    }
    body.site-monobrand .site-shell .site-shell-icon {
      width: 32px;
      height: 32px;
      filter: invert(1);
    }
    body.site-monobrand .site-loading-screen {
      background: var(--fiamm-overlay-surface);
      color: var(--fiamm-overlay-text);
    }
    body.site-monobrand .site-loading-screen__status {
      color: var(--fiamm-overlay-muted);
    }
    body.site-monobrand .site-notice-fab,
    body.site-monobrand .site-messenger-fab {
      background: var(--fiamm-red);
      color: #ffffff;
      border-color: color-mix(in srgb, var(--fiamm-red) 28%, transparent);
      box-shadow: 0 16px 36px rgba(31, 31, 31, 0.14);
    }
    body.site-monobrand .site-notice-fab:hover,
    body.site-monobrand .site-notice-fab:focus-visible,
    body.site-monobrand .site-messenger-fab:hover,
    body.site-monobrand .site-messenger-fab:focus-visible {
      background: var(--fiamm-brand-color-hover);
    }
    body.site-monobrand .site-notice-fab .site-shell-icon,
    body.site-monobrand .site-messenger-fab .site-shell-icon {
      filter: none;
    }
    @media (max-width: 980px) {
      body.site-monobrand {
        --shell-height: 76px;
        --fiamm-shell-main-height: 76px;
        --shell-control-size: 52px;
      }
      body.site-monobrand .site-shell,
      body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled),
      body.site-monobrand .site-shell.is-scrolled {
        top: 10px;
        width: calc(100% - 24px);
        min-height: var(--shell-height);
        margin-top: 10px;
        border-radius: 38px;
      }
      body.site-monobrand .site-shell__inner {
        min-height: var(--shell-height);
        padding: 0 12px 0 18px;
      }
      body.site-monobrand .fiamm-shell-main {
        min-height: var(--shell-height);
        gap: 12px;
      }
      body.site-monobrand .fiamm-shell-brand {
        flex: 1 1 auto;
      }
      body.site-monobrand .fiamm-shell-brand::after,
      body.site-monobrand .fiamm-shell-slogan,
      body.site-monobrand .fiamm-shell-nav {
        display: none;
      }
      body.site-monobrand .site-logo__image {
        height: 42px;
        max-width: 150px;
      }
      body.site-monobrand .site-shell-actions {
        gap: 4px;
        margin-left: 0;
      }
      body.site-monobrand .site-shell .site-shell-icon {
        width: 28px;
        height: 28px;
      }
    }
    /* SBWS follow-up: restore FIAMM transparent hero header and compact commerce shell. */
    body.site-monobrand {
      --shell-height: 108px;
      --fiamm-shell-aux-height: 36px;
      --fiamm-shell-main-height: 72px;
      --fiamm-shell-tier-gap: 10px;
      --shell-control-size: 54px;
    }
    body.site-monobrand .site-shell,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled),
    body.site-monobrand .site-shell.is-scrolled {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 100;
      width: 100%;
      min-height: var(--shell-height);
      margin: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      color: #ffffff;
      transition:
        transform 360ms cubic-bezier(0.4, 0, 0.2, 1),
        opacity 180ms ease-out,
        box-shadow 180ms ease-out;
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) {
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .site-shell.is-hidden {
      transform: translateY(calc(-1 * (var(--shell-height) + 48px)));
      opacity: 0;
      pointer-events: none;
    }
    body.site-monobrand .site-shell__inner {
      width: min(calc(100% - (var(--content-gutter-desktop) * 2)), var(--content-width-max));
      max-width: var(--content-width-max);
      min-height: var(--shell-height);
      height: var(--shell-height);
      margin: 0 auto;
      padding: 0;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      justify-content: flex-start;
      gap: var(--fiamm-shell-tier-gap);
      overflow: visible;
    }
    body.site-monobrand .fiamm-shell-top,
    body.site-monobrand .fiamm-shell-main {
      display: flex;
      align-items: center;
      justify-content: space-between;
      min-width: 0;
    }
    body.site-monobrand .fiamm-shell-top {
      position: relative;
      z-index: 0;
      flex: 0 0 auto;
      min-height: var(--fiamm-shell-aux-height);
      height: var(--fiamm-shell-aux-height);
      border-bottom: 0;
      background: transparent;
      box-shadow: none;
      clip-path: none;
      color: rgba(255, 255, 255, 0.95);
      font-size: 0.82rem;
      font-weight: 500;
      transition:
        min-height 180ms ease-out,
        max-height 180ms ease-out,
        opacity 140ms ease-out,
        transform 180ms ease-out,
        background-color 180ms ease-out,
        box-shadow 180ms ease-out;
    }
    body.site-monobrand .fiamm-shell-top::before {
      content: "";
      position: absolute;
      top: 0;
      left: 50%;
      width: 100vw;
      height: 100%;
      transform: translateX(-50%);
      background: #808080;
      opacity: 1;
      pointer-events: none;
      z-index: -1;
      transition: opacity 180ms ease-out, background-color 180ms ease-out;
    }
    body.site-monobrand.fiamm-home-route .fiamm-shell-top {
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand.fiamm-home-route .fiamm-shell-top::before {
      opacity: 0;
    }
    body.site-monobrand .site-shell.is-scroll-up .fiamm-shell-top {
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .site-shell.is-scroll-up .fiamm-shell-top::before,
    body.site-monobrand .site-shell.is-scroll-down .fiamm-shell-top::before {
      opacity: 1;
    }
    body.site-monobrand .site-shell.is-scroll-down .fiamm-shell-top {
      min-height: var(--fiamm-shell-aux-height);
      height: var(--fiamm-shell-aux-height);
      max-height: none;
      opacity: 1;
      overflow: visible;
      transform: none;
      pointer-events: auto;
    }
    body.site-monobrand .site-shell.is-scroll-down .site-shell__inner {
      min-height: var(--shell-height);
      height: var(--shell-height);
    }
    body.site-monobrand .fiamm-shell-links,
    body.site-monobrand .fiamm-shell-contacts {
      display: inline-flex;
      align-items: center;
      gap: 18px;
      min-width: 0;
      font-size: 0.82rem;
      font-weight: 500;
    }
    body.site-monobrand .fiamm-shell-links a,
    body.site-monobrand .fiamm-shell-contacts a {
      color: inherit;
      text-decoration: none;
      white-space: nowrap;
    }
    body.site-monobrand .fiamm-shell-links a {
      position: relative;
    }
    body.site-monobrand .fiamm-shell-links a + a::before {
      content: "";
      position: absolute;
      left: -10px;
      top: 50%;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.48);
      transform: translateY(-50%);
    }
    body.site-monobrand .fiamm-shell-links a:hover,
    body.site-monobrand .fiamm-shell-contacts a:hover {
      color: #ffffff;
    }
    body.site-monobrand .fiamm-shell-contact {
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }
    body.site-monobrand .fiamm-shell-contact::before {
      content: "";
      width: 15px;
      height: 15px;
      flex: none;
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
    }
    body.site-monobrand .fiamm-shell-contact--phone::before {
      background-image: url("/static/site-icons/std/phone.svg");
    }
    body.site-monobrand .fiamm-shell-contact--mail::before {
      background-image: url("/static/site-icons/std/mail.svg");
    }
    body.site-monobrand .fiamm-shell-main {
      flex: 0 0 auto;
      min-height: var(--fiamm-shell-main-height);
      height: var(--fiamm-shell-main-height);
      gap: 18px;
      padding: 0 28px 0 30px;
      border-radius: 999px;
      background: transparent;
      box-shadow: none;
      transition:
        background-color 180ms ease-out,
        box-shadow 180ms ease-out,
        transform 180ms ease-out;
    }
    body.site-monobrand:not(.fiamm-home-route) .fiamm-shell-main {
      background: var(--fiamm-red);
      box-shadow: 0 18px 44px -16px rgba(216, 24, 24, 0.5);
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-main {
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .site-shell.is-scrolled .fiamm-shell-main {
      background: var(--fiamm-red);
      box-shadow: 0 18px 44px -16px rgba(216, 24, 24, 0.5);
    }
    body.site-monobrand .fiamm-shell-brand {
      flex: 1 1 50%;
      max-width: 50%;
      gap: 16px;
    }
    body.site-monobrand .fiamm-shell-brand::after {
      height: 42px;
      order: 1;
    }
    body.site-monobrand .site-logo__image {
      height: 42px;
      max-width: 156px;
      max-height: 42px;
    }
    body.site-monobrand .fiamm-shell-slogan {
      max-width: min(24vw, 250px);
      font-size: 0.72rem;
      line-height: 1.34;
      letter-spacing: 0.11em;
    }
    body.site-monobrand .fiamm-shell-nav {
      flex: 1 0 auto;
      justify-content: flex-end;
      gap: clamp(18px, 2.6vw, 34px);
      white-space: nowrap;
    }
    body.site-monobrand .fiamm-shell-nav a {
      font-size: 0.88rem;
    }
    body.site-monobrand .site-shell-actions {
      gap: 6px;
      margin-left: 6px;
    }
    body.site-monobrand .site-shell-action,
    body.site-monobrand .site-burger.site-shell-action {
      width: var(--shell-control-size);
      height: var(--shell-control-size);
    }
    body.site-monobrand .site-shell .site-shell-icon {
      width: 30px;
      height: 30px;
      filter: none;
    }
    @media (max-width: 980px) {
      body.site-monobrand {
        --shell-height: 80px;
        --fiamm-shell-main-height: 80px;
        --shell-control-size: 44px;
      }
      body.site-monobrand .site-shell,
      body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled),
      body.site-monobrand .site-shell.is-scrolled {
        top: 0;
        width: 100%;
        min-height: var(--shell-height);
        margin: 0;
        border-radius: 0;
      }
      body.site-monobrand .site-shell__inner {
        width: min(calc(100% - 24px), var(--content-width-max));
        min-height: var(--shell-height);
        height: var(--shell-height);
      }
      body.site-monobrand .fiamm-shell-top,
      body.site-monobrand .fiamm-shell-brand::after,
      body.site-monobrand .fiamm-shell-slogan,
      body.site-monobrand .fiamm-shell-nav {
        display: none;
      }
      body.site-monobrand .fiamm-shell-main {
        min-height: var(--shell-height);
        height: var(--shell-height);
        padding: 0 16px 0 18px;
      }
      body.site-monobrand .fiamm-shell-brand {
        flex: 1 1 auto;
        max-width: none;
      }
      body.site-monobrand .site-logo__image {
        height: 42px;
        max-width: 150px;
      }
      body.site-monobrand .site-shell .site-shell-icon {
        width: 28px;
        height: 28px;
      }
    }
    /* SBWS 01.07: FIAMM light/transparent header and quiet aux bars. */
    body.site-monobrand {
      --content-width-max: 1680px;
      /* Site Shell: aux row 42, main row 74, so the shell stands 116 tall. */
      --shell-height: 116px;
      --fiamm-shell-aux-height: 42px;
      --fiamm-shell-main-height: 74px;
      --fiamm-shell-tier-gap: 0px;
      --shell-control-size: 52px;
      --fiamm-shell-pad: 20px;
      /* --shellpad from the Site Shell mockup, whose own comment gives the
         reason: "shell edge padding lives as a CSS var so header, content and
         footer stay in lockstep". One value for the frame -- shell rows, content
         column, footer. */
      --fiamm-edge-pad: 48px;
      /* The gap between cards is a separate rhythm and stays where it was. The
         mockups put the frame at 48 and card gaps at 18-24; tying the two would
         have pushed product cards 48px apart and cost each of them 22px of
         width. Equal edge and gap was right while the edge was 20 and the gap
         14 -- at 48 the two numbers part company. */
      --fiamm-card-gap: 24px;
      --fiamm-shell-link-radius: 0;
      --fiamm-shell-link-hover-bg: transparent;
      --fiamm-shell-link-hover-ink: #5a5a5a;
      --fiamm-header-ink: #1b1b1b;
      --fiamm-header-muted: #9a9a9a;
      --fiamm-header-contact: #8a8a8a;
      --fiamm-header-line: #e4e4e4;
      --fiamm-header-dot: #d5d5d5;
      --fiamm-header-icon-filter: brightness(0) saturate(100%) invert(8%) sepia(0%) saturate(0%) hue-rotate(174deg) brightness(94%) contrast(91%);
      --fiamm-header-muted-icon-filter: brightness(0) saturate(100%) invert(73%) sepia(0%) saturate(0%) hue-rotate(177deg) brightness(91%) contrast(84%);
    }
    body.site-monobrand.with-shell .wrap {
      padding-top: calc(var(--shell-height) + 24px);
    }
    body.site-monobrand .wrap {
      width: min(calc(100% - (var(--fiamm-edge-pad) * 2)), var(--content-width-max));
    }
    body.site-monobrand.fiamm-home-route.with-shell .wrap {
      /* Главная больше ничем не отличается от прочих страниц по ширине:
         полноширинных блоков на ней не осталось (T6). Правило сохранено
         только ради верхнего отступа под фиксированной шапкой. */
      padding-top: calc(var(--shell-height) + 20px);
    }
    body.site-monobrand .site-shell,
    body.site-monobrand .site-shell.is-scrolled {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      width: 100%;
      min-height: var(--shell-height);
      margin: 0;
      border-radius: 0;
      background: #ffffff;
      color: var(--fiamm-header-ink);
      box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) {
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .site-shell__inner {
      width: min(calc(100% - 80px), var(--content-width-max));
      max-width: var(--content-width-max);
      min-height: var(--shell-height);
      height: var(--shell-height);
      gap: 0;
    }
    body.site-monobrand .fiamm-shell-top {
      min-height: var(--fiamm-shell-aux-height);
      height: var(--fiamm-shell-aux-height);
      color: var(--fiamm-header-muted);
      background: transparent;
      box-shadow: none;
      font-family: var(--site-font-body);
      font-size: 13px;
      font-weight: 500;
      letter-spacing: 0.012em;
    }
    body.site-monobrand .fiamm-shell-top::before {
      display: none;
      opacity: 0;
    }
    body.site-monobrand .fiamm-shell-links {
      gap: 16px;
      font-size: inherit;
      font-weight: inherit;
    }
    body.site-monobrand .fiamm-shell-contacts {
      gap: 24px;
      color: var(--fiamm-header-contact);
      font-size: inherit;
      font-weight: 600;
    }
    body.site-monobrand .fiamm-shell-links a,
    body.site-monobrand .fiamm-shell-contacts a {
      color: inherit;
      font: inherit;
      letter-spacing: inherit;
    }
    body.site-monobrand .fiamm-shell-links a + a::before {
      background: var(--fiamm-header-dot);
    }
    body.site-monobrand .fiamm-shell-links a:hover,
    body.site-monobrand .fiamm-shell-links a:focus-visible,
    body.site-monobrand .fiamm-shell-contacts a:hover,
    body.site-monobrand .fiamm-shell-contacts a:focus-visible {
      color: var(--fiamm-red);
      outline: none;
    }
    body.site-monobrand .fiamm-shell-contact::before {
      filter: var(--fiamm-header-muted-icon-filter);
    }
    body.site-monobrand .fiamm-shell-main,
    body.site-monobrand:not(.fiamm-home-route) .fiamm-shell-main,
    body.site-monobrand .site-shell.is-scrolled .fiamm-shell-main {
      min-height: var(--fiamm-shell-main-height);
      height: var(--fiamm-shell-main-height);
      padding: 0;
      border-radius: 0;
      background: transparent;
      color: var(--fiamm-header-ink);
      box-shadow: none;
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-main {
      color: #ffffff;
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .fiamm-shell-brand {
      flex: 1 1 65%;
      max-width: 65%;
      gap: 22px;
    }
    body.site-monobrand .fiamm-shell-brand::after {
      height: 42px;
      background: var(--fiamm-header-line);
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-brand::after {
      background: rgba(255, 255, 255, 0.32);
    }
    body.site-monobrand .site-logo__image {
      height: 42px;
      max-width: 156px;
      max-height: 42px;
    }
    body.site-monobrand .fiamm-shell-slogan {
      color: var(--fiamm-header-muted);
      font-size: 12px;
      line-height: 1.4;
      letter-spacing: 0.12em;
      font-weight: 600;
      max-width: 360px;
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-top,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-links a,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-contacts a,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-nav a,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-shell-action,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-burger.site-shell-action {
      color: #ffffff;
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-slogan {
      color: rgba(255, 255, 255, 0.86);
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-contact::before {
      filter: brightness(0) invert(1);
      opacity: 0.92;
    }
    body.site-monobrand .fiamm-shell-nav a {
      color: var(--fiamm-header-ink);
      font-size: 15px;
      font-weight: 700;
      letter-spacing: 0.1em;
      transition: color 160ms ease, opacity 160ms ease;
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-nav a {
      color: #ffffff;
    }
    body.site-monobrand .fiamm-shell-nav a:hover,
    body.site-monobrand .fiamm-shell-nav a:focus-visible {
      color: var(--fiamm-red);
      opacity: 1;
      outline: none;
    }
    /* Over the banner the link goes to solid white on hover; it used to fade to
       78% opacity, which left the rule and the text at different weights. */
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-nav a:hover,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-nav a:focus-visible {
      color: #ffffff;
      opacity: 1;
    }
    body.site-monobrand .site-shell-action,
    body.site-monobrand .site-burger.site-shell-action {
      color: var(--fiamm-header-ink);
      background: transparent;
    }
    body.site-monobrand .site-shell .site-shell-icon {
      width: 30px;
      height: 30px;
      filter: var(--fiamm-header-icon-filter);
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-shell-icon {
      filter: none;
    }
    body.site-monobrand .site-shell-action:hover,
    body.site-monobrand .site-shell-action:focus-visible {
      background: transparent;
      color: var(--fiamm-red);
      opacity: 0.72;
      transform: none;
    }
    body.site-monobrand .fiamm-footer {
      margin-top: 22px;
      background: #ffffff;
      color: var(--fiamm-header-muted);
      box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.06);
    }
    body.site-monobrand .fiamm-footer__inner {
      width: min(calc(100% - 80px), var(--content-width-max));
      min-height: 42px;
    }
    body.site-monobrand .fiamm-footer__links {
      gap: 16px;
    }
    body.site-monobrand .fiamm-footer__links a,
    body.site-monobrand .fiamm-footer__contacts {
      font-size: 13px;
      font-weight: 500;
      line-height: 1.2;
      letter-spacing: 0.012em;
    }
    body.site-monobrand .fiamm-footer__contacts {
      gap: 24px;
      color: var(--fiamm-header-contact);
      font-weight: 600;
    }
    body.site-monobrand .fiamm-footer__links a {
      color: inherit;
    }
    body.site-monobrand .fiamm-footer__links a + a::before {
      background: var(--fiamm-header-dot);
    }
    body.site-monobrand .fiamm-footer__links a:hover,
    body.site-monobrand .fiamm-footer__links a:focus-visible,
    body.site-monobrand .fiamm-footer__contacts a:hover,
    body.site-monobrand .fiamm-footer__contacts a:focus-visible {
      color: var(--fiamm-header-ink);
      outline: none;
    }
    @media (max-width: 980px) {
      body.site-monobrand {
        --shell-height: 72px;
        --fiamm-shell-main-height: 72px;
        --shell-control-size: 44px;
      }
      body.site-monobrand.with-shell .wrap {
        padding-top: calc(var(--shell-height) + 18px);
      }
      body.site-monobrand.fiamm-home-route.with-shell .wrap {
        padding-top: calc(var(--shell-height) + 18px);
      }
      body.site-monobrand .site-shell__inner,
      body.site-monobrand .fiamm-footer__inner {
        width: min(calc(100% - 24px), var(--content-width-max));
      }
      body.site-monobrand .fiamm-shell-main {
        min-height: var(--shell-height);
        height: var(--shell-height);
        padding: 0;
      }
      body.site-monobrand .site-logo__image {
        height: 42px;
        max-width: 150px;
      }
      body.site-monobrand .site-shell .site-shell-icon {
        width: 28px;
        height: 28px;
      }
    }
    /* SBWS 01.07 follow-up: align the quiet header/footer to the content track. */
    body.site-monobrand {
      --fiamm-content-track-width: min(calc(100% - (var(--content-gutter-desktop) * 2)), var(--content-width-max));
      /* Page sits a step below the cards so white product cards read as cards
         without needing a container behind them. */
      --fiamm-page-bg: #fbfbfb;
      background: var(--fiamm-page-bg);
    }
    /* Backdrops for cards that have no photo. Graphite base with a restrained
       drift towards the brand red, so a strip reads as one family rather than
       six identical slabs. Each card picks one from its own name, so the choice
       never moves between renders. */
    /* Фон карточки без фотографии — фирменный, а не нейтральный.
       Было шесть серо-коричневых градиентов из макета (#3a3a3a -> #5c5c5c):
       это placeholder макетчика под будущую фотографию, и к палитре FIAMM он
       отношения не имел. На странице, где фотографий нет нигде, такой фон
       становится основным цветом сайта — чужим.
       Семейство строится на #e30613 (brand_color) и #1f1f1f (brand_secondary):
       шесть вариантов различаются углом и глубиной, но ни один не вводит нового
       тона. Карточки остаются различимыми и все читаются как FIAMM.
       Синий у производителя не заведён: точного значения нет, а угаданный
       корпоративный цвет — это ровно та ошибка, которую здесь и правим. */
    body.site-monobrand .fiamm-card-tint-0 { --fiamm-card-tint: linear-gradient(135deg, #e30613, #8f0c12); --fiamm-card-tint-base: #b7100f; }
    body.site-monobrand .fiamm-card-tint-1 { --fiamm-card-tint: linear-gradient(160deg, #b71212, #55090b); --fiamm-card-tint-base: #8b0d0e; }
    body.site-monobrand .fiamm-card-tint-2 { --fiamm-card-tint: linear-gradient(135deg, #e30613, #1f1f1f); --fiamm-card-tint-base: #7e1114; }
    body.site-monobrand .fiamm-card-tint-3 { --fiamm-card-tint: linear-gradient(120deg, #8f0c12, #d81818); --fiamm-card-tint-base: #a81216; }
    body.site-monobrand .fiamm-card-tint-4 { --fiamm-card-tint: linear-gradient(150deg, #1f1f1f, #b71212); --fiamm-card-tint-base: #6a1113; }
    body.site-monobrand .fiamm-card-tint-5 { --fiamm-card-tint: linear-gradient(135deg, #d81818, #6e0a0d); --fiamm-card-tint-base: #a31113; }
    body.site-monobrand .site-shell,
    body.site-monobrand .site-shell.is-scrolled {
      width: 100%;
      border-radius: 0;
    }
    body.site-monobrand .site-shell__inner,
    body.site-monobrand .fiamm-footer__inner {
      width: 100%;
      max-width: none;
      padding-left: var(--fiamm-edge-pad);
      padding-right: var(--fiamm-edge-pad);
    }
    body.site-monobrand .site-shell__inner {
      box-sizing: border-box;
    }
    body.site-monobrand .fiamm-shell-top {
      justify-content: space-between;
    }
    body.site-monobrand .fiamm-shell-main {
      gap: 0;
    }
    /* The brand yields space, the nav never does: a 65% flex-basis on the brand
       used to starve .fiamm-shell-nav below ~1300px, and its links -- which do
       not wrap -- overflowed to the left of their own container. */
    body.site-monobrand .fiamm-shell-brand {
      flex: 0 1 auto;
      max-width: 65%;
      min-width: 0;
      overflow: hidden;
    }
    body.site-monobrand .site-shell-actions {
      margin-left: 26px;
    }
    body.site-monobrand .site-logo__image,
    body.site-monobrand .site-loading-screen__logo {
      filter: none;
    }
    body.site-monobrand .fiamm-shell-links a,
    body.site-monobrand .fiamm-shell-contacts a,
    body.site-monobrand .fiamm-footer__links a,
    body.site-monobrand .fiamm-footer__contacts a {
      display: inline-flex;
      align-items: center;
      min-height: 28px;
      border-radius: var(--fiamm-shell-link-radius);
      padding: 4px 0;
      font-family: var(--site-font-body);
      font-size: 13px;
      font-weight: 500;
      line-height: 1.2;
      letter-spacing: 0.012em;
      text-transform: none;
      text-decoration: none;
      transition:
        color 150ms ease,
        opacity 150ms ease;
    }
    body.site-monobrand .fiamm-shell-contacts a,
    body.site-monobrand .fiamm-footer__contacts a {
      gap: 7px;
    }
    body.site-monobrand .fiamm-shell-links a:hover,
    body.site-monobrand .fiamm-shell-links a:focus-visible,
    body.site-monobrand .fiamm-shell-contacts a:hover,
    body.site-monobrand .fiamm-shell-contacts a:focus-visible,
    body.site-monobrand .fiamm-footer__links a:hover,
    body.site-monobrand .fiamm-footer__links a:focus-visible,
    body.site-monobrand .fiamm-footer__contacts a:hover,
    body.site-monobrand .fiamm-footer__contacts a:focus-visible {
      /* Наведение на служебные ссылки — перекраска в акцентный цвет.
         Подчёркивание снято: в шапке оно спорит с красной чертой под пунктами
         основного меню, и два разных приёма означают одно и то же
         (DS26082402, E1). */
      background: var(--fiamm-shell-link-hover-bg);
      color: var(--fiamm-red);
      opacity: 1;
      outline: none;
      text-decoration: none;
    }
    body.site-monobrand .fiamm-shell-nav a {
      position: relative;
      display: inline-flex;
      align-items: center;
      min-height: 44px;
      border-radius: 0;
      padding: 10px 0;
      transition:
        color 150ms ease,
        opacity 150ms ease;
    }
    body.site-monobrand .fiamm-shell-nav a::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 6px;
      /* Sharp, and close to the stroke weight of the type it sits under: the
         rule was 4px with a 2px radius, which read as a rounded bar rather than
         an underline against a sharp typeface. */
      height: 3px;
      border-radius: 0;
      background: var(--fiamm-red);
      transform: scaleX(0);
      transition: transform 180ms ease;
    }
    body.site-monobrand .fiamm-shell-nav a:hover,
    body.site-monobrand .fiamm-shell-nav a:focus-visible,
    body.site-monobrand .fiamm-shell-nav a.is-active,
    body.site-monobrand .fiamm-shell-nav a[aria-current="page"] {
      background: transparent;
      color: var(--fiamm-red);
      opacity: 1;
      outline: none;
    }
    body.site-monobrand .fiamm-shell-nav a:hover::after,
    body.site-monobrand .fiamm-shell-nav a:focus-visible::after,
    body.site-monobrand .fiamm-shell-nav a.is-active::after,
    body.site-monobrand .fiamm-shell-nav a[aria-current="page"]::after {
      transform: scaleX(1);
    }
    /* Счётчик корзины на пункте «Кабинет». Подчёркивание пункта тянется на всю
       ширину ссылки, поэтому бейдж живёт внутри неё, а не рядом: иначе линия
       обрывалась бы перед числом. */
    body.site-monobrand .fiamm-shell-nav__badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 18px;
      height: 18px;
      margin-left: 7px;
      padding: 0 5px;
      border-radius: 999px;
      background: var(--fiamm-red);
      color: #ffffff;
      font-family: var(--site-font-ui, inherit);
      font-size: 11px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0;
      text-transform: none;
    }
    body.site-monobrand .fiamm-shell-nav__badge[hidden] {
      display: none;
    }
    body.site-monobrand .site-shell-action,
    body.site-monobrand .site-burger.site-shell-action {
      width: var(--shell-control-size);
      height: var(--shell-control-size);
      border-radius: 999px;
      transition:
        background-color 150ms ease,
        color 150ms ease,
        opacity 150ms ease,
        transform 150ms ease;
    }
    body.site-monobrand .site-shell-action:hover,
    body.site-monobrand .site-shell-action:focus-visible,
    body.site-monobrand .site-burger.site-shell-action:hover,
    body.site-monobrand .site-burger.site-shell-action:focus-visible,
    body.site-monobrand .site-shell-actions .site-shell-action:hover,
    body.site-monobrand .site-shell-actions .site-shell-action:focus-visible {
      /* On the light header: accent disc, white glyph. */
      background: var(--fiamm-red, #d81818);
      color: #ffffff;
      opacity: 1;
      transform: none;
      outline: none;
    }
    body.site-monobrand .site-shell-action:hover .site-shell-icon,
    body.site-monobrand .site-shell-action:focus-visible .site-shell-icon,
    body.site-monobrand .site-burger.site-shell-action:hover .site-shell-icon,
    body.site-monobrand .site-burger.site-shell-action:focus-visible .site-shell-icon {
      filter: brightness(0) invert(1);
    }
    /* Over the banner the link goes to solid white on hover; it used to fade to
       78% opacity, which left the rule and the text at different weights. */
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-nav a:hover,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-nav a:focus-visible {
      color: #ffffff;
      opacity: 1;
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .fiamm-shell-nav a::after {
      background: #ffffff;
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-shell-action:hover,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-shell-action:focus-visible,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-burger.site-shell-action:hover,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-burger.site-shell-action:focus-visible {
      background: #ffffff;
      color: var(--fiamm-header-ink, #1b1b1b);
      opacity: 1;
    }
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-shell-action:hover .site-shell-icon,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-shell-action:focus-visible .site-shell-icon,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-burger.site-shell-action:hover .site-shell-icon,
    body.site-monobrand.fiamm-header-overlay .site-shell:not(.is-scrolled) .site-burger.site-shell-action:focus-visible .site-shell-icon {
      filter: var(--fiamm-header-icon-filter);
    }
    body.site-monobrand .fiamm-shell-contact:hover::before,
    body.site-monobrand .fiamm-shell-contact:focus-visible::before {
      filter: var(--fiamm-header-muted-icon-filter);
    }
    body.site-monobrand .fiamm-shell-links a + a::before,
    body.site-monobrand .fiamm-footer__links a + a::before {
      display: none;
    }
    body.site-monobrand .fiamm-footer {
      width: 100%;
      margin: 22px 0 0;
    }
    body.site-monobrand .fiamm-footer__inner {
      justify-content: center;
      box-sizing: border-box;
    }
    body.site-monobrand .fiamm-footer__contacts {
      display: none;
    }
    @media (max-width: 980px) {
      body.site-monobrand {
        --fiamm-content-track-width: min(calc(100% - 32px), var(--content-width-max));
        /* Phones drop the frame to content_gutter_mobile and close the gap with
           it -- at this width the two do coincide again. */
        --fiamm-edge-pad: 16px;
        --fiamm-card-gap: 16px;
        --fiamm-shell-pad: var(--fiamm-edge-pad);
      }
      body.site-monobrand .site-shell__inner,
      body.site-monobrand .fiamm-footer__inner {
        width: 100%;
      }
      body.site-monobrand .site-shell__inner {
        padding-left: var(--fiamm-shell-pad);
        padding-right: var(--fiamm-shell-pad);
      }
      body.site-monobrand .fiamm-shell-brand {
        max-width: none;
      }
      body.site-monobrand .site-shell-actions {
        margin-left: auto;
      }
      body.site-monobrand .fiamm-catalog {
        padding: var(--fiamm-edge-pad) 0 64px;
      }
      body.site-monobrand .fiamm-catalog-roots {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
        margin-bottom: 42px;
      }
      body.site-monobrand .fiamm-catalog .fiamm-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      body.site-monobrand .fiamm-catalog-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      body.site-monobrand .fiamm-catalog-strip__arrow {
        display: none;
      }
    }
    @media (max-width: 560px) {
      body.site-monobrand .fiamm-catalog-roots,
      body.site-monobrand .fiamm-catalog .fiamm-product-grid,
      body.site-monobrand .fiamm-catalog-product-grid {
        grid-template-columns: 1fr;
      }
      body.site-monobrand .fiamm-catalog-strip-card {
        flex-basis: 76vw;
      }
      body.site-monobrand .fiamm-catalog-strip--application .fiamm-catalog-strip-card {
        flex-basis: 82vw;
      }
    }
  

    /* Листание рубрики. Ссылки, а не кнопки: страницу должен видеть и обход,
       а не только посетитель, который догадался нажать. Радиус капсулы —
       SITE-TOKEN-004, шаг сетки — 20px по SITE-FRAME-006. */
    body.site-monobrand .fiamm-rubric-pager {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 28px;
    }
    body.site-monobrand .fiamm-rubric-pager__pages {
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }
    body.site-monobrand .fiamm-rubric-pager__page,
    body.site-monobrand .fiamm-rubric-pager__step {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 40px;
      height: 40px;
      padding: 0 14px;
      border: 1px solid #e1e1e1;
      border-radius: var(--fiamm-pill-radius, 999px);
      background: #ffffff;
      color: #1f1f1f;
      font: 600 14px/1 var(--site-font-ui, inherit);
      text-decoration: none;
      transition: border-color 140ms ease, background-color 140ms ease;
    }
    body.site-monobrand .fiamm-rubric-pager__page:hover,
    body.site-monobrand .fiamm-rubric-pager__step:hover {
      border-color: #b8b8b8;
      background: #fafafa;
    }
    body.site-monobrand .fiamm-rubric-pager__page.is-current {
      border-color: var(--site-accent, #e30613);
      background: var(--site-accent, #e30613);
      color: #ffffff;
    }
    body.site-monobrand .fiamm-rubric-pager__gap {
      padding: 0 2px;
      color: #9a9a9a;
      font: 600 14px/1 var(--site-font-ui, inherit);
    }
    @media (max-width: 640px) {
      body.site-monobrand .fiamm-rubric-pager__page,
      body.site-monobrand .fiamm-rubric-pager__step {
        min-width: 36px;
        height: 36px;
        padding: 0 10px;
      }
    }

    /* Стереотипный верх страницы: заголовок и вводный текст на фоне страницы.
       Одна раскладка для рубрики, каталога, справки и кабинета — до этого
       каждая страница решала это по-своему, и вид «прыгал» от раздела к разделу.
       Контейнера здесь нет намеренно: SITE-FRAME-002, секции на монобренде
       прозрачны, а выделенная плашка вокруг заголовка — это второй фон поверх
       первого. */
    body.site-monobrand .fiamm-page-head {
      display: flex;
      flex-direction: column;
      gap: 12px;
      padding: 0;
      border: 0;
      background: transparent;
    }
    body.site-monobrand .fiamm-page-head h1 {
      margin: 0;
      font-family: var(--site-font-heading, inherit);
      font-size: clamp(30px, 3.4vw, 44px);
      font-weight: 800;
      line-height: 1.1;
      letter-spacing: -0.02em;
      color: #1b1b1b;
    }
    body.site-monobrand .fiamm-page-head p {
      margin: 0;
      max-width: 68ch;
      color: #4a4a4a;
      font-size: 1rem;
      line-height: 1.55;
    }
    /* Тот же сброс, что раньше стоял только для `.fiamm-catalog`: плашка вокруг
       верха страницы снимается везде, а не на одной странице из четырёх. */
    body.site-monobrand .fiamm-catalog-head,
    body.site-monobrand .fiamm-pdp-head {
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
    }

    /* `hidden` на абсолютно позиционированном блоке не всегда перебивает
       раскладку: правило с `display` из более поздней части каскада выигрывает
       у пользовательского агента. Здесь это делается явно, чтобы скрытие
       элементов управления лентой не зависело от порядка правил. */
    body.site-monobrand .lp-account-lane__controls[hidden],
    body.site-monobrand .fiamm-strip-controls[hidden] {
      display: none !important;
    }

    /* Согласие на обработку персональных данных — одна строка на всех формах.
       Было: подпись в два цвета и в две строки, вторая обрезалась контейнером.
       Стало: строка не переносится, вся фраза — ссылка, цвет один и акцентный
       (DS26082402, S7). */
    .fiamm-consent {
      display: flex;
      align-items: center;
      gap: 10px;
      min-width: 0;
    }
    .fiamm-consent__box {
      flex: none;
      width: 18px;
      height: 18px;
      margin: 0;
      accent-color: var(--fiamm-red);
      cursor: pointer;
    }
    /* Правило «в одну строку» снято 07.09.2026 по замечанию владельца.
       Оно держалось на том, что строка помещается, если уменьшить кегль. На
       телефоне не помещается: 332 px текста в 322 px контейнера, и `ellipsis`
       обрезал фразу, под которой человек ставит галочку. Обрезанное согласие
       хуже двух строк: это единственная фраза на сайте, которую посетитель
       обязан прочитать целиком.

       Цвет тоже переставлен: акцентный красный делал из служебной подписи самый
       заметный элемент формы. Теперь она серая и краснеет по наведению — как
       ссылки верхнего дополнительного меню. */
    .fiamm-consent__text {
      color: var(--site-muted, #5f6874);
      font-size: 0.86rem;
      font-weight: 600;
      line-height: 1.35;
      text-decoration: none;
      border-bottom: 1px solid transparent;
      transition: color 160ms ease;
    }
    .fiamm-consent__text:hover,
    .fiamm-consent__text:focus-visible {
      color: var(--fiamm-red);
      border-bottom-color: currentColor;
      outline: none;
    }
    @media (max-width: 420px) {
      .fiamm-consent__text {
        font-size: 0.78rem;
      }
    }

    /* --- Корзина заказа и форма контактов -------------------------------
       Макет: storage/design/mockup/sites/Cart Page.dc.html (DS26082402, T1-T3).
       Таблица — основное отображение, плитка — вторичное и в метрике ленты. */
    body.site-monobrand .fiamm-visually-hidden {
      position: absolute;
      width: 1px;
      height: 1px;
      margin: -1px;
      padding: 0;
      overflow: hidden;
      clip: rect(0 0 0 0);
      white-space: nowrap;
      border: 0;
    }
    /* Разделитель раздела: сквозная линия с чипом посередине (SITE-FRAME-005). */
    body.site-monobrand .fiamm-section-divider {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 40px;
      margin-bottom: 18px;
    }
    body.site-monobrand .fiamm-section-divider::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      height: 1px;
      background: #ececec;
      transform: translateY(-50%);
    }
    body.site-monobrand .fiamm-section-divider span {
      position: relative;
      display: flex;
      align-items: center;
      height: 40px;
      padding: 0 22px;
      border-radius: 999px;
      background: #ececec;
      color: #5a5a5a;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.125em;
      text-transform: uppercase;
      white-space: nowrap;
    }
    body.site-monobrand .fiamm-cart-views {
      display: flex;
      justify-content: flex-end;
      margin-bottom: 14px;
    }
    body.site-monobrand .fiamm-cart-views[hidden] {
      display: none;
    }
    body.site-monobrand .fiamm-cart-views__switch {
      display: flex;
      align-items: center;
      gap: 6px;
      padding: 5px;
      border-radius: 999px;
      background: #f1f1f1;
    }
    body.site-monobrand .fiamm-cart-views__switch button {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      height: 40px;
      padding: 0 18px;
      border: 0;
      border-radius: 999px;
      background: transparent;
      color: #7a7a7a;
      font: inherit;
      font-size: 13px;
      font-weight: 700;
      cursor: pointer;
      transition: background-color 150ms ease, color 150ms ease;
    }
    body.site-monobrand .fiamm-cart-views__switch button svg {
      width: 17px;
      height: 17px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    body.site-monobrand .fiamm-cart-views__switch button.is-active {
      background: #ffffff;
      color: var(--fiamm-ink, #1b1b1b);
    }
    body.site-monobrand .fiamm-cart-table {
      border: 1px solid #ececec;
      border-radius: 20px;
      background: #ffffff;
      overflow: hidden;
    }
    body.site-monobrand .fiamm-cart-table[hidden],
    body.site-monobrand .fiamm-cart-tiles[hidden] {
      display: none;
    }
    body.site-monobrand .fiamm-cart-table__head,
    body.site-monobrand .fiamm-cart-row {
      display: grid;
      grid-template-columns: 64px minmax(0, 1fr) 150px 168px 150px 44px;
      align-items: center;
      gap: 18px;
    }
    body.site-monobrand .fiamm-cart-table__head {
      padding: 14px 22px;
      border-bottom: 1px solid #efefef;
      background: #fcfcfc;
      color: #a6a6a6;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }
    body.site-monobrand .fiamm-cart-table__right {
      text-align: right;
    }
    body.site-monobrand .fiamm-cart-table__center {
      text-align: center;
    }
    body.site-monobrand .fiamm-cart-row {
      padding: 16px 22px;
      border-bottom: 1px solid #f4f4f4;
    }
    body.site-monobrand .fiamm-cart-row:last-child {
      border-bottom: 0;
    }
    body.site-monobrand .fiamm-cart-row__media {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 64px;
      height: 52px;
      border-radius: 10px;
      overflow: hidden;
      background: #f4f4f4;
    }
    body.site-monobrand .fiamm-cart-row__media img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    body.site-monobrand .fiamm-cart-row__media .fiamm-product-card__placeholder {
      font-size: 10px;
      letter-spacing: 0.08em;
      color: #b0b0b0;
    }
    body.site-monobrand .fiamm-cart-row__body {
      display: flex;
      flex-direction: column;
      gap: 5px;
      min-width: 0;
    }
    body.site-monobrand .fiamm-cart-row__body a,
    body.site-monobrand .fiamm-cart-row__body strong {
      color: var(--fiamm-ink, #1b1b1b);
      font-size: 15px;
      font-weight: 700;
      line-height: 1.3;
      text-decoration: none;
      overflow-wrap: anywhere;
    }
    body.site-monobrand .fiamm-cart-row__body a:hover {
      color: var(--fiamm-red);
    }
    body.site-monobrand .fiamm-cart-row__body span {
      color: #9a9a9a;
      font-size: 11.5px;
    }
    body.site-monobrand .fiamm-cart-row__price,
    body.site-monobrand .fiamm-cart-row__sum {
      text-align: right;
      font-size: 14px;
      font-weight: 700;
      color: var(--fiamm-ink, #1b1b1b);
    }
    body.site-monobrand .fiamm-cart-row__sum {
      color: #7a7a7a;
    }
    body.site-monobrand .fiamm-cart-qty {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 4px;
      justify-self: center;
      padding: 4px;
      border-radius: 999px;
      background: #f1f1f1;
    }
    body.site-monobrand .fiamm-cart-qty button {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 36px;
      height: 36px;
      flex: none;
      border: 0;
      border-radius: 999px;
      background: #ffffff;
      color: #5a5a5a;
      font: inherit;
      font-size: 18px;
      line-height: 1;
      cursor: pointer;
      transition: background-color 150ms ease, color 150ms ease;
    }
    body.site-monobrand .fiamm-cart-qty button:hover:not(:disabled),
    body.site-monobrand .fiamm-cart-qty button:focus-visible:not(:disabled) {
      background: var(--fiamm-red);
      color: #ffffff;
      outline: none;
    }
    body.site-monobrand .fiamm-cart-qty button:disabled {
      opacity: 0.4;
      cursor: default;
    }
    body.site-monobrand .fiamm-cart-qty span {
      min-width: 34px;
      text-align: center;
      font-size: 15px;
      font-weight: 600;
    }
    body.site-monobrand .fiamm-cart-row__remove {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 40px;
      height: 40px;
      flex: none;
      border: 0;
      border-radius: 999px;
      background: #f1f1f1;
      color: #7a7a7a;
      cursor: pointer;
      transition: background-color 150ms ease, color 150ms ease;
    }
    body.site-monobrand .fiamm-cart-row__remove svg {
      width: 17px;
      height: 17px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    body.site-monobrand .fiamm-cart-row__remove:hover,
    body.site-monobrand .fiamm-cart-row__remove:focus-visible {
      background: var(--fiamm-red);
      color: #ffffff;
      outline: none;
    }
    /* Плитка: та же сетка, что у ленты товаров — четыре в ряд, до шести при
       расширении. Отдельной метрики у корзины нет (T1). */
    body.site-monobrand .fiamm-cart-tiles {
      grid-template-columns: repeat(auto-fill, minmax(max(230px, calc((100% - 90px) / 6)), 1fr));
      gap: 18px;
    }
    body.site-monobrand .fiamm-cart-tile-actions {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      padding: 0 20px 20px;
    }
    body.site-monobrand .fiamm-cart-qty--tile {
      justify-self: start;
    }
    body.site-monobrand .fiamm-cart-empty {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 16px;
      /* Отступ сверху: без него пунктирная рамка пустой корзины начиналась
         вплотную к плашке «Состав заказа», и две границы читались как одна
         сломанная линия. */
      margin-top: 18px;
      padding: 48px;
      border: 1px dashed #e2e2e2;
      border-radius: 20px;
      background: #fafafa;
      text-align: center;
    }
    body.site-monobrand .fiamm-cart-empty[hidden] {
      display: none;
    }
    body.site-monobrand .fiamm-cart-empty span {
      max-width: 44ch;
      color: #9a9a9a;
      font-size: 15px;
      line-height: 1.5;
    }
    body.site-monobrand .fiamm-cart-total {
      display: flex;
      align-items: center;
      gap: 28px;
      flex-wrap: wrap;
      margin-top: 22px;
      padding: 22px 26px;
      border: 1px solid #ececec;
      border-radius: 20px;
      background: #ffffff;
    }
    body.site-monobrand .fiamm-cart-total[hidden] {
      display: none;
    }
    body.site-monobrand .fiamm-cart-total__label {
      flex: none;
      font-family: var(--site-font-heading);
      font-size: 26px;
      font-weight: 900;
      letter-spacing: -0.02em;
    }
    body.site-monobrand .fiamm-cart-total__counts {
      display: flex;
      flex-direction: column;
      gap: 5px;
      min-width: 0;
    }
    body.site-monobrand .fiamm-cart-total__counts strong {
      font-size: 16px;
      font-weight: 700;
    }
    body.site-monobrand .fiamm-cart-total__counts span {
      color: #9a9a9a;
      font-size: 11.5px;
    }
    body.site-monobrand .fiamm-cart-total__clear {
      flex: none;
      height: 44px;
      padding: 0 24px;
      border: 0;
      border-radius: 999px;
      background: #f1f1f1;
      color: #5a5a5a;
      font: inherit;
      font-size: 13px;
      font-weight: 700;
      cursor: pointer;
      transition: background-color 150ms ease;
    }
    body.site-monobrand .fiamm-cart-total__clear:hover,
    body.site-monobrand .fiamm-cart-total__clear:focus-visible {
      background: #e6e6e6;
      outline: none;
    }
    body.site-monobrand .fiamm-cart-total__sum {
      flex: 1;
      min-width: 160px;
      text-align: right;
      font-size: 22px;
      font-weight: 800;
    }
    /* Форма контактов */
    body.site-monobrand .fiamm-contact-form {
      max-width: 1080px;
      padding: 32px 34px 36px;
      border: 1px solid #ececec;
      border-radius: 20px;
      background: #ffffff;
    }
    /* Рубильник и поля стоят в одной сетке, а не в двух разных раскладках.
       До 22.09.2026 шапка была flex-рядом с `flex: none` у рубильника, а ряд
       ниже — своей grid-сеткой `auto-fit minmax(240px, 1fr)`. Ширины никто не
       связывал: на десктопе рубильник выходил 352px против 339px у поля под
       ним, а на телефоне не сжимался вовсе и торчал за края колонки (замер
       22.09: 352px при ширине контента 335px). Замечание владельца: рубильник
       всегда одной длины с полями — и в мобильной, и в десктопной вёрстке.

       Ширину задаёт контейнерный запрос по самому блоку полей, а не ширина
       экрана: один и тот же блок стоит в оверлее (1056px), на странице запроса
       (1010px) и в корзине, и «широко» для него — это про его собственную
       колонку. Порог 748px — та же граница, где три поля по 240px впервые
       помещаются в строку. */
    body.site-monobrand .fiamm-contact-fields {
      container-type: inline-size;
    }
    body.site-monobrand .fiamm-contact-fields__head,
    body.site-monobrand .fiamm-contact-fields__row {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 14px;
      align-items: center;
    }
    body.site-monobrand .fiamm-contact-fields__head {
      margin-bottom: 14px;
    }
    @container (min-width: 748px) {
      body.site-monobrand .fiamm-contact-fields__head,
      body.site-monobrand .fiamm-contact-fields__row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      /* Рубильник занимает ровно одну колонку — ту же, что «Имя» под ним;
         «Организация» забирает оставшиеся две. */
      body.site-monobrand .fiamm-contact-fields__company {
        grid-column: span 2;
      }
    }
    body.site-monobrand .fiamm-contact-fields__kind {
      display: flex;
      align-items: center;
      gap: 6px;
      width: 100%;
      min-width: 0;
      height: 56px;
      padding: 5px;
      border-radius: 999px;
      /* Подложка была `#f1f1f1` — ровно цвет панели оверлея, поэтому там она
         не читалась вовсе, и рубильник выглядел двумя отдельными кнопками
         (замечание владельца 07.09.2026, замер: фон дорожки и фон панели
         совпадали до байта). Тон снижен на две ступени: на белой странице
         корзины дорожка остаётся спокойной, на серой панели — видимой. */
      background: #e3e5e8;
    }
    body.site-monobrand .fiamm-contact-fields__kind button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      /* Кнопки делят дорожку пополам: ширину теперь задаёт колонка сетки, а не
         сумма надписей, иначе рубильник снова разъехался бы с полями. */
      flex: 1 1 0;
      min-width: 0;
      white-space: nowrap;
      height: 46px;
      padding: 0 12px;
      border: 0;
      border-radius: 999px;
      background: transparent;
      color: #7a7a7a;
      font: inherit;
      font-size: 14px;
      font-weight: 700;
      cursor: pointer;
      transition: background-color 150ms ease, color 150ms ease;
    }
    body.site-monobrand .fiamm-contact-fields__kind button svg {
      width: 17px;
      height: 17px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    body.site-monobrand .fiamm-contact-fields__kind button.is-active {
      background: #ffffff;
      color: var(--fiamm-ink, #1b1b1b);
    }
    body.site-monobrand .fiamm-contact-fields__company {
      min-width: 0;
    }
    body.site-monobrand .fiamm-contact-fields__company[hidden] {
      display: none;
    }
    body.site-monobrand .fiamm-contact-fields__row {
      margin-bottom: 14px;
    }
    body.site-monobrand .fiamm-contact-fields input {
      width: 100%;
      height: 56px;
      padding: 0 22px;
      border: 1px solid #e4e4e4;
      border-radius: 999px;
      background: #fcfcfc;
      color: var(--fiamm-ink, #1b1b1b);
      font: inherit;
      /* Крупнее и полужирным — заполнять форму так удобнее (владелец,
         22.09.2026). 16px заодно снимает автозум iOS при фокусе в поле. */
      font-size: 16px;
      font-weight: 600;
    }
    body.site-monobrand .fiamm-contact-fields textarea {
      display: block;
      width: 100%;
      min-height: 168px;
      padding: 18px 22px;
      border: 1px solid #e4e4e4;
      border-radius: 26px;
      background: #fcfcfc;
      color: var(--fiamm-ink, #1b1b1b);
      font: inherit;
      font-size: 16px;
      font-weight: 600;
      line-height: 1.55;
      resize: vertical;
    }
    body.site-monobrand .fiamm-contact-fields input:focus,
    body.site-monobrand .fiamm-contact-fields textarea:focus {
      border-color: var(--fiamm-red);
      outline: none;
    }
    body.site-monobrand .fiamm-contact-form__rule {
      height: 1px;
      margin: 22px 0;
      background: #efefef;
    }
    body.site-monobrand .fiamm-contact-form__submit {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      flex-wrap: wrap;
    }
    body.site-monobrand .fiamm-contact-form__button {
      flex: none;
      height: 56px;
      padding: 0 42px;
      font-size: 14px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
    @media (max-width: 900px) {
      /* Таблица не помещается по ширине — переходим на карточные строки, а не
         на горизонтальную прокрутку страницы. */
      body.site-monobrand .fiamm-cart-table__head {
        display: none;
      }
      body.site-monobrand .fiamm-cart-row {
        grid-template-columns: 64px minmax(0, 1fr) 44px;
        row-gap: 12px;
      }
      body.site-monobrand .fiamm-cart-row__price,
      body.site-monobrand .fiamm-cart-row__sum {
        grid-column: 2 / 3;
        text-align: left;
      }
      body.site-monobrand .fiamm-cart-qty {
        grid-column: 2 / 4;
        justify-self: start;
      }
      body.site-monobrand .fiamm-contact-form {
        padding: 22px 18px 24px;
      }
    }

    /* --- Фон карточки как функция ------------------------------------------
       Макет: storage/design/mockup/sites/Fiamm-battery/cards_bg.dc.html
       Холст кладётся под содержимое карточки там, где растра нет. Прежняя
       детерминированная заливка по названию остаётся под ним: она видна, пока
       холст не нарисован, и на клиентах, где canvas недоступен. */
    body.site-monobrand .site-card-bg {
      position: absolute;
      inset: 0;
      display: block;
      width: 100%;
      height: 100%;
      border-radius: inherit;
      pointer-events: none;
    }
    body.site-monobrand .fiamm-product-card__media--generated,
    body.site-monobrand .fiamm-content-card--generated {
      position: relative;
      overflow: hidden;
    }
    /* Подпись поверх холста: модель читается на тёмном фоне, поэтому светлая и
       со своей тенью, а не серая, как на белой плашке. */
    body.site-monobrand .fiamm-product-card__media--generated .fiamm-product-card__placeholder,
    body.site-monobrand .fiamm-product-card__media--generated .fiamm-catalog-product__placeholder {
      position: relative;
      z-index: 1;
      max-width: calc(100% - 24px);
      color: rgba(255, 255, 255, 0.94);
      font-family: var(--site-font-heading);
      font-size: 0.95rem;
      font-weight: 800;
      letter-spacing: 0.04em;
      text-align: center;
      text-shadow: 0 2px 12px rgba(0, 0, 0, 0.55);
      overflow-wrap: anywhere;
    }
    /* Холст исключён из правила намеренно. `> *` накрывал и его тоже: у обоих
       селекторов одна специфичность, а этот стоит ниже — холст получал
       `position: relative`, вставал в поток и закрывал собой заголовок
       карточки. Поднимаем над фоном только содержимое. */
    body.site-monobrand .fiamm-content-card--generated > *:not(.site-card-bg) {
      position: relative;
      z-index: 1;
    }

    /* Страница «не найдено»: те же отступы, что у прочих информационных
       поверхностей, кнопки в ряд и с переносом на узком экране. */
    body.site-monobrand .fiamm-notfound__actions {
      flex-wrap: wrap;
      gap: 12px;
      margin: 4px 0 64px;
    }

    /* Обложка-функция там, где карточка не имеет медиа-блока вовсе:
       список статей и единая карточка на рубрикаторе. Полоса той же высоты,
       что у карточек на главной, чтобы ленты не расходились. */
    body.site-monobrand .fiamm-article-card {
      position: relative;
      overflow: hidden;
    }
    body.site-monobrand .fiamm-article-card__cover,
    body.site-monobrand .lp-unified-card__media--generated {
      position: relative;
      display: block;
      width: 100%;
      aspect-ratio: 16 / 9;
      margin-bottom: 14px;
      border-radius: 10px;
      overflow: hidden;
      background: var(--site-surface-2, #f2f2f2);
    }
    /* Карточка — grid с отступом 22px и зазором 14px: обложка выходит на всю
       ширину, вытягивая себя за поля, а нижний зазор даёт сама сетка. */
    body.site-monobrand .fiamm-article-card__cover {
      margin: -22px -22px 0;
      width: calc(100% + 44px);
      border-radius: 0;
    }

    /* Список ссылок внутри статьи — например, расчёт доставки у перевозчиков. */
    body.site-monobrand .fiamm-link-list {
      margin: 0 0 18px;
      padding: 0;
      list-style: none;
    }
    body.site-monobrand .fiamm-link-list li + li {
      margin-top: 8px;
    }
    body.site-monobrand .fiamm-link-list a {
      color: var(--site-brand-color, var(--fiamm-red, #d81818));
      font-weight: 600;
      text-decoration: none;
    }
    body.site-monobrand .fiamm-link-list a:hover,
    body.site-monobrand .fiamm-link-list a:focus-visible {
      text-decoration: underline;
    }

    /* Пояснение над формой технического запроса: тот же читаемый столбец, что
       и у статьи, только без заголовка. */
    body.site-monobrand .fiamm-request-note {
      max-width: 760px;
      margin: 0 0 28px;
      padding: 18px 20px;
      border-radius: 10px;
      background: var(--site-surface-2, #f4f5f6);
      color: #4d5560;
      font-size: 0.95rem;
      line-height: 1.55;
    }
    body.site-monobrand .fiamm-request-note p {
      margin: 0;
    }
    body.site-monobrand .fiamm-request-note p + p {
      margin-top: 10px;
    }

    /* Стрелки прокрутки дорожек кабинета.

       Базового правила для этого сайта не было вовсе: стояли только `left` и
       `right`, которые на непозиционированном элементе ничего не делают.
       Браузер рисовал две серые кнопки по умолчанию в потоке контейнера
       нулевой высоты — их и было видно при наведении на карточку
       (IS26090313, product_card_issue_1.png). */
    body.site-monobrand .lp-strip-control {
      position: absolute;
      top: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 40px;
      height: 40px;
      padding: 0;
      border: 1px solid var(--fiamm-card-border, #e3e5e9);
      border-radius: 50%;
      background: #ffffff;
      color: var(--fiamm-ink, #1b1b1b);
      box-shadow: 0 10px 24px rgba(20, 22, 26, 0.16);
      cursor: pointer;
      pointer-events: auto;
      transform: translateY(-50%);
      transition: background 160ms ease, color 160ms ease, transform 160ms ease;
    }
    body.site-monobrand .lp-strip-control svg {
      width: 20px;
      height: 20px;
      fill: currentColor;
    }
    body.site-monobrand .lp-strip-control:hover,
    body.site-monobrand .lp-strip-control:focus-visible {
      background: var(--fiamm-red, #d81818);
      border-color: var(--fiamm-red, #d81818);
      color: #ffffff;
      outline: none;
    }

    /* Короткое сообщение у значка на странице товара: ответ на нажатие,
       которое иначе выглядело бы как отсутствие реакции. */
    body.site-monobrand .fiamm-pdp-note {
      position: absolute;
      z-index: 4;
      transform: translateY(44px);
      max-width: 240px;
      padding: 8px 12px;
      border-radius: 8px;
      background: var(--fiamm-ink, #1b1b1b);
      color: #ffffff;
      font-size: 0.78rem;
      line-height: 1.35;
      pointer-events: none;
    }
    body.site-monobrand .fiamm-pdp-utility.is-active {
      background: var(--fiamm-ink, #1b1b1b);
      color: #ffffff;
    }

    /* --- Два вида карточки ленты и ни одного третьего ----------------------
       IS26090312. Есть фотография — полароид: снимок сверху, подпись на белом
       поле снизу, поле снизу шире прочих. Нет фотографии — волновой фон и
       подпись поверх него.

       Плоская заливка `fiamm-card-tint-*` больше не используется шаблонами;
       правила остаются в файле до отдельной уборки, чтобы не сломать сайты,
       которые их ещё читают. */
    /* Тени у карточек в лентах нет.

       Лента прокручивается, поэтому её область несёт `overflow-x: auto`, а
       вторая ось при этом по CSS не может остаться `visible`. Тень выходит за
       область и срезается — снизу ровной линией, справа вместе с карточкой.
       Приём отброшен: не бывает тени, которую видно не целиком. Наведение
       отвечает рамкой и смещением (решение Сергея 04.09). */
    body.site-monobrand .fiamm-content-card--photo {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      padding: 10px 10px 0;
      border-radius: var(--fiamm-card-radius);
      background: #ffffff;
      background-image: none;
      color: var(--fiamm-ink, #1b1b1b);
      border: 1px solid var(--fiamm-card-border, #e3e5e9);
      box-shadow: none;
    }
    body.site-monobrand .fiamm-content-card--photo:hover,
    body.site-monobrand .fiamm-content-card--photo:focus-visible {
      filter: none;
      box-shadow: none;
      border-color: color-mix(in srgb, var(--fiamm-red) 38%, var(--fiamm-card-border, #e3e5e9));
    }
    body.site-monobrand .fiamm-content-card__frame {
      display: block;
      overflow: hidden;
      aspect-ratio: 4 / 3;
      border-radius: var(--fiamm-card-inner-radius);
      background: var(--site-surface-2, #f2f2f2);
    }
    body.site-monobrand .fiamm-content-card__frame img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
    /* Нижнее поле полароида: подпись на белом, а не поверх снимка. */
    body.site-monobrand .fiamm-content-card__caption {
      display: block;
      padding: 14px 8px 18px;
    }
    /* Цвет задаётся явно и с той же специфичностью, что общее правило карточки:
       у ленты `.fiamm-content-card strong` белый — он рассчитан на тёмный фон.
       На полароиде фон белый, и без этой строки подпись была белой на белом. */
    body.site-monobrand .fiamm-content-card--photo .fiamm-content-card__caption strong {
      display: block;
      color: var(--fiamm-ink, #1b1b1b);
      font-family: var(--site-font-heading);
      font-size: 1rem;
      line-height: 1.25;
      text-shadow: none;
    }
    body.site-monobrand .fiamm-content-card--photo .fiamm-content-card__caption span {
      display: block;
      margin-top: 6px;
      color: #5b636e;
      font-size: 0.85rem;
      line-height: 1.4;
      text-shadow: none;
    }

    /* Карточка без фотографии: волновой фон под содержимым. */
    body.site-monobrand .fiamm-content-card--generated {
      background-color: #14161a;
      background-image: linear-gradient(180deg, rgba(8, 10, 14, 0) 0%, rgba(8, 10, 14, 0.18) 40%, rgba(8, 10, 14, 0.62) 100%);
      color: #ffffff;
    }

    /* Полароид в лентах каталога — та же форма, что на главной. */
    body.site-monobrand .fiamm-catalog-strip-card--photo {
      padding: 10px 10px 0;
      border-radius: var(--fiamm-card-radius);
      background: #ffffff;
      color: var(--fiamm-ink, #1b1b1b);
      border: 1px solid var(--fiamm-card-border, #e3e5e9);
      box-shadow: none;
    }
    body.site-monobrand .fiamm-catalog-strip-card--photo strong {
      display: block;
      padding: 12px 6px 0;
    }
    body.site-monobrand .fiamm-catalog-strip-card--photo small {
      display: block;
      padding: 4px 6px 16px;
      color: #5b636e;
    }

    /* --- Значки сайта: одна раскладка --------------------------------------
       Набор собирается из `@mui/icons-material` скриптом
       `scripts/ops/build_site_icon_set.py`. Все значки MUI нарисованы под
       заливку, поэтому холдеры обязаны заливать, а не обводить.

       До 04.09.2026 на сайте было три соглашения сразу: лента и каталог
       обводили (`fill: none; stroke: currentColor`), «избранное» на странице
       товара заливало, а у `.fiamm-pdp-utility svg` правила не было вовсе — там
       действовала браузерная заливка чёрным. Путь, нарисованный под обводку,
       в таком блоке превращался в чёрное пятно: именно так выглядело
       «сравнение» на снимке Сергея. */
    body.site-monobrand .site-icon {
      fill: currentColor;
      stroke: none;
      flex: 0 0 auto;
    }
    body.site-monobrand .fiamm-pdp-utility svg,
    body.site-monobrand .fiamm-pdp-favorite svg,
    body.site-monobrand .fiamm-product-card__icon-action svg,
    body.site-monobrand .fiamm-catalog-product__icon svg {
      fill: currentColor;
      stroke: none;
    }
    /* Размер задаёт холдер, а не разметка значка: в ленте значки мельче. */
    body.site-monobrand .fiamm-product-card__icon-action .site-icon,
    body.site-monobrand .fiamm-catalog-product__icon .site-icon {
      width: 18px;
      height: 18px;
    }
    body.site-monobrand .fiamm-pdp-utility .site-icon,
    body.site-monobrand .fiamm-pdp-favorite .site-icon {
      width: 22px;
      height: 22px;
    }

    /* Запасной путь «поделиться»: сама ссылка, выделенная и готовая к Ctrl+C. */
    body.site-monobrand .fiamm-pdp-share-link {
      display: grid;
      gap: 6px;
      width: 300px;
      max-width: calc(100vw - 48px);
      pointer-events: auto;
    }
    body.site-monobrand .fiamm-pdp-share-link input {
      width: 100%;
      padding: 6px 8px;
      border: 1px solid rgba(255, 255, 255, 0.28);
      border-radius: 6px;
      background: rgba(255, 255, 255, 0.08);
      color: #ffffff;
      font: inherit;
      font-size: 0.75rem;
    }

    /* --- Карточка рода mark ------------------------------------------------
       Серия и технология — деление внутри товара, у которого нет своего места
       в мире. Снимка у такой карточки не бывает даже при наличии: на образ
       одна технология от другой не отличается. Вместо снимка — вычисляемое
       поле с кодом.

       Рама, отступы и footprint те же, что у карточки со снимком: до 04.09
       серии шли своей шириной и высотой, сплошным красным, и ряд выглядел
       набором разных элементов (WI26090401, волна 1.3–1.4). */
    body.site-monobrand .fiamm-content-card--mark {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      padding: 10px 10px 0;
      border-radius: var(--fiamm-card-radius);
      background: #ffffff;
      background-image: none;
      color: var(--fiamm-ink, #1b1b1b);
      border: 1px solid var(--fiamm-card-border, #e3e5e9);
      box-shadow: none;
    }
    body.site-monobrand .fiamm-content-card--mark:hover,
    body.site-monobrand .fiamm-content-card--mark:focus-visible {
      filter: none;
      box-shadow: none;
      border-color: color-mix(in srgb, var(--fiamm-red) 38%, var(--fiamm-card-border, #e3e5e9));
    }
    body.site-monobrand .fiamm-content-card--mark .fiamm-content-card__caption strong {
      display: block;
      color: var(--fiamm-ink, #1b1b1b);
      font-family: var(--site-font-heading);
      font-size: 1rem;
      line-height: 1.25;
      text-shadow: none;
    }
    body.site-monobrand .fiamm-content-card--mark .fiamm-content-card__caption span {
      display: block;
      margin-top: 6px;
      color: #5b636e;
      font-size: 0.85rem;
      line-height: 1.4;
      text-shadow: none;
    }
    /* Поле под код: та же зона, что занимает снимок, с тем же внутренним
       радиусом — иначе ряд разъезжается по высоте. */
    body.site-monobrand .fiamm-content-card__frame--mark,
    body.site-monobrand .fiamm-catalog-strip-card__media--mark {
      position: relative;
      display: grid;
      place-items: center;
      overflow: hidden;
      aspect-ratio: 4 / 3;
      border-radius: var(--fiamm-card-inner-radius);
      background: #14161a;
    }
    /* Код серии — моноширинным: это обозначение, а не слово. */
    body.site-monobrand .fiamm-mark-code {
      position: relative;
      z-index: 1;
      padding: 0 12px;
      color: rgba(255, 255, 255, 0.96);
      font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
      font-size: clamp(1rem, 2.4vw, 1.35rem);
      font-weight: 700;
      letter-spacing: 0.06em;
      text-align: center;
      text-shadow: 0 2px 12px rgba(0, 0, 0, 0.55);
      overflow-wrap: anywhere;
    }
    /* Ряд серий больше не имеет своей метрики: он собирается тем же
       контейнером, что и остальные ленты. */
    body.site-monobrand .fiamm-series-strip {
      display: flex;
      gap: 16px;
    }

    /* Один footprint на ряд: карточки тянутся до высоты самой высокой, иначе
       ряд из scene и mark стоит уступом — у одной подпись в две строки, у
       другой счётчик в одну (WI26090401, волна 1.4). */
    body.site-monobrand .fiamm-content-strip,
    body.site-monobrand .fiamm-series-strip {
      align-items: stretch;
    }
    body.site-monobrand .fiamm-content-card--photo,
    body.site-monobrand .fiamm-content-card--mark {
      height: auto;
    }
    body.site-monobrand .fiamm-content-card--photo .fiamm-content-card__caption,
    body.site-monobrand .fiamm-content-card--mark .fiamm-content-card__caption {
      flex: 1 1 auto;
    }

    /* Кикер оси на карточке mark: мелкая надверстка над счётчиком. */
    body.site-monobrand .fiamm-card-kicker {
      display: block;
      margin-bottom: 4px;
      color: #8a9099;
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      text-shadow: none;
    }

    /* --- Карточка входа в ленте: C2 Flush и C3 Immersive -------------------
       Канон: storage/design/mockup/sites/Card Standard.dc.html

       Тип задаёт природа обложки. Снимок — C2: обложка вровень с краем, текст
       в затенённой плашке под ней. Генератив — C3: обложка на всю карточку,
       текст поверх на затемнении, плашки нет никогда.

       Запрещённый гибрид (§3 канона, «C1 + генератив») жил на сайте до
       05.09.2026: вычисляемое поле с кодом серии и плашка под ним. Плашка
       добавляла высоту и дублировала роль обложки — два текстовых уровня в
       двух средах. Тест: есть текст на обложке — плашки нет; есть плашка —
       обложка чистая. */
    body.site-monobrand .fiamm-strip-card {
      position: relative;
      flex: 0 0 clamp(250px, 29vw, 378px);
      display: flex;
      flex-direction: column;
      overflow: hidden;
      border-radius: var(--fiamm-card-radius);
      border: 1px solid var(--fiamm-card-border, #ececec);
      background: #ffffff;
      color: var(--fiamm-ink, #1b1b1b);
      text-decoration: none;
      scroll-snap-align: start;
      transition: border-color 160ms ease, transform 160ms ease;
    }
    /* Наведение не смещает карточку: подъём выходил бы за коробку контейнера
       и срезался вместе с тенью. Отвечает рамка. */
    body.site-monobrand .fiamm-strip-card:hover,
    body.site-monobrand .fiamm-strip-card:focus-visible {
      outline: none;
      border-color: color-mix(in srgb, var(--fiamm-red) 38%, var(--fiamm-card-border, #ececec));
    }

    /* C2 Flush: инсета нет, обложка наследует радиус карточки сверху. */
    body.site-monobrand .fiamm-strip-card__cover {
      display: block;
      width: 100%;
      aspect-ratio: 16 / 10;
      background-color: var(--site-surface-2, #f2f2f2);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
    }
    /* Плашка затенена намеренно: без светлой кромки белый текстовый блок
       сливается со страницей и карточка теряет границу (§6 канона). */
    body.site-monobrand .fiamm-strip-card__plate {
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      gap: 4px;
      padding: 20px;
      background: #f7f7f7;
    }

    /* C3 Immersive: обложка — вся карточка, высота равна её пропорции. */
    body.site-monobrand .fiamm-strip-card--immersive {
      aspect-ratio: 16 / 10;
      border-color: transparent;
      background: #14161a;
    }
    body.site-monobrand .fiamm-strip-card__scrim {
      position: absolute;
      inset: 0;
      z-index: 1;
      background: linear-gradient(to top, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.16) 45%, rgba(0, 0, 0, 0) 70%);
    }
    body.site-monobrand .fiamm-strip-card__over {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 2;
      display: flex;
      flex-direction: column;
      gap: 3px;
      padding: 20px;
    }

    /* Три уровня текста — одинаковые в обоих типах, отличается только среда. */
    body.site-monobrand .fiamm-strip-card__kicker {
      font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.09em;
      text-transform: uppercase;
      color: #9aa3ae;
    }
    body.site-monobrand .fiamm-strip-card__title {
      font-family: var(--site-font-heading);
      font-size: 17px;
      font-weight: 800;
      letter-spacing: -0.2px;
      line-height: 1.2;
    }
    body.site-monobrand .fiamm-strip-card__meta {
      font-size: 13.5px;
      font-weight: 600;
      color: #7a7a7a;
    }
    body.site-monobrand .fiamm-strip-card--immersive .fiamm-strip-card__kicker {
      color: rgba(255, 255, 255, 0.7);
    }
    body.site-monobrand .fiamm-strip-card--immersive .fiamm-strip-card__title {
      font-size: 22px;
      letter-spacing: -0.3px;
      color: #ffffff;
    }
    body.site-monobrand .fiamm-strip-card--immersive .fiamm-strip-card__meta {
      color: rgba(255, 255, 255, 0.82);
    }
    /* Класс «синька» (Kubota, #008486): подложка под холстом того же цвета —
       она видна, пока холст не нарисован; затемнение под подписью тёмной
       бирюзой, а не чёрным — чёрный скрим съедал фирменный цвет у нижней
       трети карточки. */
    body.site-monobrand[data-card-bg-class="blueprint"] .fiamm-strip-card--immersive {
      background: linear-gradient(160deg, #008486 0%, #004f51 100%);
    }
    body.site-monobrand[data-card-bg-class="blueprint"] .fiamm-strip-card__scrim {
      background: linear-gradient(to top, rgba(0, 34, 35, 0.72) 0%, rgba(0, 34, 35, 0.14) 45%, rgba(0, 34, 35, 0) 70%);
    }

    /* Нейтральная подложка вместо снимка.

       Генератив по канону живёт только в C3 Immersive, где он и сделан под
       текст. В C1 и C2 обложка обязана быть чистой, поэтому позиция или
       материал без снимка получает тихую подложку, а не вычисляемое поле
       (`Card Standard.dc.html` §2–3, решение Сергея 05.09.2026). */
    body.site-monobrand .fiamm-product-card__media--blank,
    body.site-monobrand .fiamm-content-card__frame--blank,
    body.site-monobrand .fiamm-article-card__cover--blank,
    body.site-monobrand .lp-unified-card__media--blank {
      background-color: #f4f4f4;
      background-image: repeating-linear-gradient(135deg, #ececec 0 14px, #f4f4f4 14px 28px);
    }
    /* Подпись на подложке — обозначение модели, не заголовок: тихий серый,
       как в эталоне листа. */
    body.site-monobrand .fiamm-product-card__media--blank .fiamm-product-card__placeholder,
    body.site-monobrand .fiamm-product-card__media--blank .fiamm-catalog-product__placeholder {
      color: #b0b0b0;
      font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      text-shadow: none;
    }

    /* --- Карточка решения (C4 Plate) и посадочная страница -----------------
       Объект карточки решения — утверждение, а не набор, поэтому обложки нет:
       фон плашки серый, действие одно (`Card Standard.dc.html` §8). */
    body.site-monobrand .fiamm-solution-card {
      display: flex;
      flex: 0 0 clamp(250px, 29vw, 378px);
      flex-direction: column;
      gap: 10px;
      /* Было `center`: текст вставал по середине высоты, и в ленте, где
         карточки разной наполненности, заголовки не выстраивались в строку.
         У обоих видов карточек ленты выравнивание по верхнему краю. */
      justify-content: flex-start;
      aspect-ratio: 4 / 3;
      padding: 24px;
      border-radius: var(--fiamm-card-radius);
      background: #e9e9e9;
      color: var(--fiamm-ink, #1b1b1b);
      text-decoration: none;
      scroll-snap-align: start;
      transition: background-color 160ms ease;
    }
    body.site-monobrand .fiamm-solution-card:hover,
    body.site-monobrand .fiamm-solution-card:focus-visible {
      outline: none;
      background: #e2e2e2;
    }
    body.site-monobrand .fiamm-solution-card__title {
      font-family: var(--site-font-heading);
      font-size: 21px;
      font-weight: 800;
      letter-spacing: -0.3px;
      line-height: 1.18;
    }
    body.site-monobrand .fiamm-solution-card__lead {
      color: #7a7a7a;
      font-size: 13.5px;
      line-height: 1.5;
    }
    body.site-monobrand .fiamm-solution-card__action {
      margin-top: 4px;
      color: var(--fiamm-red, #d81818);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }

    /* Посадочная: читаемый столбец, подборка и следующий шаг. */
    body.site-monobrand .fiamm-landing__article {
      max-width: 760px;
      margin: 0 auto 44px;
    }
    body.site-monobrand .fiamm-landing__meta {
      display: flex;
      gap: 14px;
      align-items: baseline;
      margin: 10px 0 8px;
    }
    body.site-monobrand .fiamm-landing__kicker {
      font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.09em;
      text-transform: uppercase;
      color: #9aa3ae;
    }
    body.site-monobrand .fiamm-landing__reading {
      color: #b0b0b0;
      font-size: 12px;
    }
    body.site-monobrand .fiamm-landing__lead {
      margin: 0 0 20px;
      color: #4a4a4a;
      font-size: 1.05rem;
      line-height: 1.6;
    }
    body.site-monobrand .fiamm-landing__cover img {
      width: 100%;
      border-radius: var(--fiamm-card-radius);
    }
    body.site-monobrand .fiamm-landing__body {
      color: #2b2f36;
      font-size: 1rem;
      line-height: 1.65;
    }
    body.site-monobrand .fiamm-landing__body h2 {
      margin: 28px 0 10px;
      font-size: 1.25rem;
    }
    body.site-monobrand .fiamm-landing__body ul {
      margin: 0 0 18px;
      padding-left: 20px;
    }
    body.site-monobrand .fiamm-landing__body li {
      margin-bottom: 8px;
    }
    /* Разворачивание — деталями браузера: полный текст присутствует в разметке
       с первой отдачи и виден роботу, даже пока свёрнут. */
    body.site-monobrand .fiamm-landing__more summary {
      display: inline-flex;
      margin-top: 8px;
      color: var(--fiamm-red, #d81818);
      font-weight: 700;
      cursor: pointer;
      list-style: none;
    }
    body.site-monobrand .fiamm-landing__more summary::-webkit-details-marker {
      display: none;
    }
    body.site-monobrand .fiamm-landing__more .fiamm-landing__more-close,
    body.site-monobrand .fiamm-landing__more[open] .fiamm-landing__more-open {
      display: none;
    }
    body.site-monobrand .fiamm-landing__more[open] .fiamm-landing__more-close {
      display: inline;
    }
    body.site-monobrand .fiamm-landing__set-note {
      margin: 0 0 18px;
      color: #7a7a7a;
      font-size: 0.9rem;
    }
    body.site-monobrand .fiamm-landing__next {
      display: flex;
      flex-wrap: wrap;
      gap: 20px;
      align-items: center;
      justify-content: space-between;
      margin: 44px 0 64px;
      padding: 28px;
      border-radius: var(--fiamm-card-radius);
      background: #e9e9e9;
    }
    body.site-monobrand .fiamm-landing__next-body {
      display: flex;
      flex-direction: column;
      gap: 6px;
      max-width: 560px;
    }
    body.site-monobrand .fiamm-landing__next-body strong {
      font-family: var(--site-font-heading);
      font-size: 1.3rem;
      letter-spacing: -0.3px;
    }
    body.site-monobrand .fiamm-landing__next-body p {
      margin: 0;
      color: #5b636e;
      line-height: 1.5;
    }
    body.site-monobrand .fiamm-landing__next-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
    }

    /* Исполнения семейства на странице записи (kubota-motors, DS26090702):
       турбо- и генераторные варианты — список под карточками решения, до
       вкладок. Блок появляется только у записи с вариантами. */
    body.site-monobrand .fiamm-pdp-variants {
      margin: 0 0 28px;
      padding: 18px 22px;
      background: var(--site-card, #fff);
      border: 1px solid var(--line, #d8dde4);
      border-radius: var(--site-radius-card, 22px);
    }
    body.site-monobrand .fiamm-pdp-variants h2 {
      margin: 0 0 12px;
      font-size: 18px;
      font-weight: 700;
    }
    body.site-monobrand .fiamm-pdp-variants__list {
      margin: 0;
      padding: 0;
      list-style: none;
      display: grid;
      gap: 8px;
    }
    body.site-monobrand .fiamm-pdp-variants__list li {
      display: flex;
      flex-wrap: wrap;
      gap: 6px 14px;
      align-items: baseline;
    }
    body.site-monobrand .fiamm-pdp-variants__list strong {
      font-weight: 700;
    }
    body.site-monobrand .fiamm-pdp-variants__list span {
      color: var(--muted, #6b7280);
    }

    /* ==== Сцена главной: небо — земля — грунт (DS26090705, HO26090801) ====
       Три верхних блока читаются как одна сцена: фон страницы → баннер во всю
       ширину → тёмная форма выбора. Шкала светлоты монотонна сверху вниз, и
       горизонт срабатывает один раз. Включается профилем (`home.intro`). */
    body.site-monobrand.fiamm-home-route:has(.fiamm-home--scene) {
      overflow-x: clip;
    }
    /* Сцена стыкуется без зазора: intro → баннер → грунт формы (Dio 19.09 —
       под баннером была светлая полоса 20 px от общего `row-gap` главной).
       Селектор длиннее общего правила главной, иначе он его не перебивает. */
    body.site-monobrand.fiamm-home-route .fiamm-page.fiamm-home.fiamm-home--scene {
      gap: 0;
    }
    body.site-monobrand .fiamm-home--scene > .fiamm-scene-choose + * {
      margin-top: var(--fiamm-vertical-gap, 48px);
    }
    /* Ленты товаров под сценой: обёртка вида прозрачна для вёрстки
       (display: contents), поэтому ритм задаётся её детям. */
    body.site-monobrand .fiamm-home--scene > .fiamm-scene-choose + .fiamm-home-kind > :first-child,
    body.site-monobrand .fiamm-home--scene > .fiamm-home-kind + .fiamm-home-kind > :first-child {
      margin-top: var(--fiamm-vertical-gap, 48px);
    }
    body.site-monobrand .fiamm-home--scene .fiamm-home-kind > * + * {
      margin-top: 20px;
    }
    body.site-monobrand .fiamm-home--scene > section:not(.fiamm-scene-intro):not(.fiamm-scene-banner):not(.fiamm-scene-choose) + section {
      margin-top: var(--fiamm-vertical-gap, 48px);
    }

    /* Небо: фон страницы, объект висит — мягкая тень, без основания. */
    body.site-monobrand .fiamm-scene-intro {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      align-items: center;
      gap: 32px;
      min-height: min(78vh, 720px);
      padding: 24px 0 40px;
    }
    body.site-monobrand .fiamm-scene-intro--with-media {
      grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    }
    body.site-monobrand .fiamm-scene-intro__eyebrow,
    body.site-monobrand .fiamm-scene-banner__kicker {
      display: inline-block;
      margin-bottom: 14px;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--site-brand-color, #f37021);
    }
    body.site-monobrand .fiamm-scene-intro h1 {
      margin: 0 0 18px;
      font-family: var(--site-font-heading, Montserrat, sans-serif);
      font-size: clamp(34px, 4.6vw, 64px);
      line-height: 1.04;
      font-weight: 800;
      letter-spacing: -0.02em;
      color: var(--site-heading, #111);
    }
    body.site-monobrand .fiamm-scene-intro p {
      max-width: 560px;
      margin: 0 0 22px;
      font-size: 18px;
      line-height: 1.55;
      color: var(--site-muted, #5f6874);
    }
    body.site-monobrand .fiamm-scene-intro__facts {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-bottom: 26px;
    }
    body.site-monobrand .fiamm-scene-intro__facts span {
      padding: 7px 14px;
      border: 1px solid var(--site-line, #d8dde4);
      border-radius: 999px;
      font-size: 14px;
      font-weight: 600;
      color: var(--site-text, #1f1f1f);
      background: rgba(255, 255, 255, 0.6);
    }
    body.site-monobrand .fiamm-scene-intro__media {
      display: flex;
      justify-content: center;
    }
    body.site-monobrand .fiamm-scene-intro__media img {
      width: min(100%, 620px);
      height: auto;
      filter: drop-shadow(0 34px 38px rgba(17, 24, 39, 0.18));
      animation: fiamm-scene-float 7s ease-in-out infinite;
      will-change: transform;
    }
    @keyframes fiamm-scene-float {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-14px); }
    }
    /* Движение — только там, где оно не мешает: без reduced-motion и с мышью. */
    @media (prefers-reduced-motion: reduce), (pointer: coarse) {
      body.site-monobrand .fiamm-scene-intro__media img { animation: none; }
    }
    @media (max-width: 900px) {
      body.site-monobrand .fiamm-scene-intro,
      body.site-monobrand .fiamm-scene-intro--with-media {
        grid-template-columns: minmax(0, 1fr);
        min-height: 0;
        gap: 0;
        padding: 0 0 24px;
      }
      /* Телефон (Dio 22.09): первый экран — только надпись intro, во всю высоту
         окна под закреплённой шапкой (72 px + 18 px отступа страницы), и она
         отделена от всего, что дальше. Раньше блок был ниже экрана, и под ним
         сразу виднелся баннер «Применение». */
      body.site-monobrand .fiamm-scene-intro__copy {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: calc(100vh - 90px);
        min-height: calc(100svh - 90px);
        padding: 8px 0 24px;
      }
      /* Парящий мотор — вторым экраном, после надписи и до баннера (Dio 22.09;
         прежнее правило HO26090801 §3 «на телефоне иллюстрации нет» снято). */
      body.site-monobrand .fiamm-scene-intro__media {
        display: flex;
        padding: 8px 0 16px;
      }
      body.site-monobrand .fiamm-scene-intro__media img {
        width: min(100%, 440px);
      }
    }

    /* Земля: во всю ширину, верх растворяется в фоне страницы слоем поверх
       картинки, низ — чёткий горизонт. Текст слева, живой. */
    /* Блок остаётся в сетке страницы (.wrap), поэтому текст стоит на той же
       левой линии, что заголовок первого блока; во всю ширину выходят только
       картинка и растворение. Лишнее по ширине срезает overflow-x: clip выше. */
    body.site-monobrand .fiamm-scene-banner {
      position: relative;
      min-height: clamp(420px, 62vh, 640px);
      display: flex;
      align-items: center;
    }
    body.site-monobrand .fiamm-scene-banner__picture,
    body.site-monobrand .fiamm-scene-banner__fade {
      position: absolute;
      top: 0;
      bottom: 0;
      left: calc(50% - 50vw);
      width: 100vw;
    }
    body.site-monobrand .fiamm-scene-banner__picture img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: 60% 55%;
    }
    /* Стык с первым блоком (Dio 19.09): фон intro — не белый, а цвет
       страницы, поэтому растворение — наложенной полосой ~200 px в точности
       этого цвета, без правки картинки и без резкой линии. */
    body.site-monobrand .fiamm-scene-banner__fade {
      bottom: auto;
      height: 200px;
      background: linear-gradient(
        to bottom,
        var(--fiamm-page-bg, #fbfbfb) 0%,
        color-mix(in srgb, var(--fiamm-page-bg, #fbfbfb) 70%, transparent) 35%,
        color-mix(in srgb, var(--fiamm-page-bg, #fbfbfb) 25%, transparent) 70%,
        transparent 100%
      );
      pointer-events: none;
    }
    body.site-monobrand .fiamm-scene-banner__copy {
      position: relative;
      z-index: 1;
      width: 100%;
      padding: 48px 0;
    }
    body.site-monobrand .fiamm-scene-banner__copy > * { max-width: 520px; }
    body.site-monobrand .fiamm-scene-banner h2 {
      margin: 0 0 14px;
      font-family: var(--site-font-heading, Montserrat, sans-serif);
      font-size: clamp(28px, 3.4vw, 46px);
      line-height: 1.08;
      font-weight: 800;
      color: #14171a;
    }
    body.site-monobrand .fiamm-scene-banner p {
      margin: 0 0 22px;
      font-size: 17px;
      line-height: 1.55;
      color: #2a3036;
    }
    /* Телефон (Dio 19.09): картинка та же и остаётся фоном — не уменьшается
       под экран, иначе текст ложится на машину. Кадр сдвинут влево: текст —
       на светлом небе, от погрузчика видна левая часть, а низ баннера (грунт)
       стыкуется с тёмной формой без светлой полосы. Отдельный мобильный снимок
       придёт позже. */
    @media (max-width: 760px) {
      body.site-monobrand .fiamm-scene-banner {
        display: flex;
        align-items: flex-start;
        min-height: 640px;
      }
      body.site-monobrand .fiamm-scene-banner__picture img { object-position: 29% 100%; }
      body.site-monobrand .fiamm-scene-banner__fade { height: 140px; }
      body.site-monobrand .fiamm-scene-banner__copy { padding: 28px 0 260px; }
      body.site-monobrand .fiamm-scene-banner p { color: #1f252b; }
    }

    /* Грунт: тёмная форма выбора во всю ширину — инструмент, а не нарядная
       секция. Второго тёмного полноширинного блока ниже нет. */
    /* Фон во всю ширину — тенью с обрезкой по вертикали; содержимое в сетке. */
    body.site-monobrand .fiamm-scene-choose {
      background: #15181c;
      box-shadow: 0 0 0 100vmax #15181c;
      clip-path: inset(0 -100vmax);
      color: #f3f4f6;
      scroll-margin-top: calc(var(--shell-height, 116px) + 8px);
    }
    body.site-monobrand .fiamm-scene-choose__inner {
      width: 100%;
      padding: 56px 0 60px;
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 28px;
    }
    body.site-monobrand .fiamm-choose {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 22px;
    }
    body.site-monobrand .fiamm-choose__branch {
      display: grid;
      gap: 22px;
    }
    body.site-monobrand .fiamm-choose__branch[hidden] { display: none; }
    body.site-monobrand .fiamm-choose__pair {
      display: grid;
      grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
      gap: 20px 28px;
      align-items: start;
    }
    body.site-monobrand .fiamm-choose__kinds {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }
    body.site-monobrand .fiamm-choose__kind .fiamm-choose__use-body strong { font-size: 22px; }
    body.site-monobrand .fiamm-choose__step {
      margin: 0;
      padding: 0;
      border: 0;
      min-width: 0;
    }
    body.site-monobrand .fiamm-choose__step legend {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 14px;
      padding: 0;
      font-size: 15px;
      font-weight: 700;
      color: #e5e7eb;
    }
    body.site-monobrand .fiamm-choose__uses {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }
    body.site-monobrand .fiamm-choose__use {
      position: relative;
      cursor: pointer;
    }
    body.site-monobrand .fiamm-choose__use input {
      position: absolute;
      opacity: 0;
      pointer-events: none;
    }
    body.site-monobrand .fiamm-choose__use-body {
      display: grid;
      gap: 6px;
      min-height: 100%;
      padding: 20px 22px;
      border: 1.5px solid #343a42;
      border-radius: 16px;
      background: #1d2126;
      transition: border-color 0.15s ease, background 0.15s ease;
    }
    body.site-monobrand .fiamm-choose__use-body strong {
      font-size: 20px;
      font-weight: 800;
      color: #fff;
    }
    body.site-monobrand .fiamm-choose__use-body span {
      font-size: 14px;
      line-height: 1.45;
      color: #aab1bb;
    }
    body.site-monobrand .fiamm-choose__use:hover .fiamm-choose__use-body { border-color: #59616c; }
    body.site-monobrand .fiamm-choose__use input:checked + .fiamm-choose__use-body {
      border-color: var(--site-brand-color, #008486);
      background: #132a2a;
      box-shadow: inset 0 0 0 1px var(--site-brand-color, #f37021);
    }
    body.site-monobrand .fiamm-choose__use input:focus-visible + .fiamm-choose__use-body {
      outline: 2px solid #fff;
      outline-offset: 2px;
    }

    /* Бегунок-диапазон: одна шкала, две единицы — л.с. сверху, кВт снизу. */
    body.site-monobrand .fiamm-choose__range {
      display: grid;
      gap: 8px;
      padding: 18px 20px 16px;
      border: 1.5px solid #343a42;
      border-radius: 16px;
      background: #1d2126;
    }
    body.site-monobrand .fiamm-choose__scale {
      display: flex;
      justify-content: space-between;
      font-size: 12px;
      font-weight: 600;
      color: #8a929c;
    }
    body.site-monobrand .fiamm-choose__track {
      position: relative;
      height: 28px;
    }
    body.site-monobrand .fiamm-choose__track::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 12px;
      height: 4px;
      border-radius: 4px;
      background: #3a4048;
    }
    body.site-monobrand .fiamm-choose__fill {
      position: absolute;
      top: 12px;
      height: 4px;
      border-radius: 4px;
      background: var(--site-brand-color, #f37021);
    }
    body.site-monobrand .fiamm-choose__track input[type="range"] {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 28px;
      margin: 0;
      background: none;
      pointer-events: none;
      -webkit-appearance: none;
      appearance: none;
    }
    body.site-monobrand .fiamm-choose__track input[type="range"]::-webkit-slider-thumb {
      -webkit-appearance: none;
      width: 22px;
      height: 22px;
      border-radius: 50%;
      border: 3px solid var(--site-brand-color, #f37021);
      background: #fff;
      pointer-events: auto;
      cursor: grab;
    }
    body.site-monobrand .fiamm-choose__track input[type="range"]::-moz-range-thumb {
      width: 18px;
      height: 18px;
      border-radius: 50%;
      border: 3px solid var(--site-brand-color, #f37021);
      background: #fff;
      pointer-events: auto;
      cursor: grab;
    }
    body.site-monobrand .fiamm-choose__track input[type="range"]::-webkit-slider-runnable-track { background: none; }
    body.site-monobrand .fiamm-choose__track input[type="range"]::-moz-range-track { background: none; }
    body.site-monobrand .fiamm-choose__value {
      font-size: 18px;
      font-weight: 800;
      color: #fff;
    }
    body.site-monobrand .fiamm-choose__options {
      display: grid;
      gap: 10px;
    }
    body.site-monobrand .fiamm-choose__option {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 12px 14px;
      border: 1.5px solid #343a42;
      border-radius: 12px;
      background: #1d2126;
      font-size: 15px;
      color: #e5e7eb;
      cursor: pointer;
    }
    body.site-monobrand .fiamm-choose__option input {
      width: 18px;
      height: 18px;
      accent-color: var(--site-brand-color, #f37021);
    }
    /* Последний шаг — наличие, рядом действия: смотреть и сбросить. */
    body.site-monobrand .fiamm-choose__footer {
      display: flex;
      flex-wrap: wrap;
      align-items: flex-end;
      justify-content: space-between;
      gap: 18px 28px;
      padding-top: 22px;
      border-top: 1px solid #2b3037;
    }
    body.site-monobrand .fiamm-choose__segment {
      display: inline-flex;
      padding: 4px;
      border: 1.5px solid #343a42;
      border-radius: 999px;
      background: #1d2126;
    }
    body.site-monobrand .fiamm-choose__segment-item { position: relative; cursor: pointer; }
    body.site-monobrand .fiamm-choose__segment-item input { position: absolute; opacity: 0; pointer-events: none; }
    body.site-monobrand .fiamm-choose__segment-item span {
      display: block;
      padding: 10px 18px;
      border-radius: 999px;
      font-size: 15px;
      font-weight: 700;
      color: #aab1bb;
    }
    body.site-monobrand .fiamm-choose__segment-item input:checked + span {
      background: var(--site-brand-color, #008486);
      color: #fff;
    }
    body.site-monobrand .fiamm-choose__segment-item input:focus-visible + span { outline: 2px solid #fff; outline-offset: 2px; }
    body.site-monobrand .fiamm-choose__select {
      width: min(100%, 460px);
      height: 52px;
      padding: 0 16px;
      border: 1.5px solid #343a42;
      border-radius: 12px;
      background: #1d2126;
      color: #fff;
      font-size: 16px;
    }
    body.site-monobrand .fiamm-choose__submit {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    body.site-monobrand .fiamm-choose__submit .fiamm-button {
      min-height: 52px;
      font-size: 16px;
    }
    body.site-monobrand .fiamm-choose__submit [data-choose-cta] { min-width: 280px; }
    body.site-monobrand .fiamm-choose__submit [data-choose-reset] {
      background: transparent;
      border-color: #3a4048;
      color: #e5e7eb;
    }
    /* В каталоге — та же форма в сетке страницы, скруглённой плашкой. */
    body.site-monobrand .fiamm-catalog > section.fiamm-scene-choose--inline,
    body.site-monobrand .fiamm-scene-choose--inline {
      box-shadow: none;
      clip-path: none;
      margin: 8px 0 28px;
      padding: 0 clamp(18px, 2.4vw, 32px);
      border-radius: 20px;
      background: #15181c;
    }
    body.site-monobrand .fiamm-scene-choose--inline .fiamm-scene-choose__inner { padding: 26px 0 28px; }
    @media (max-width: 900px) {
      body.site-monobrand .fiamm-choose { grid-template-columns: minmax(0, 1fr); }
      body.site-monobrand .fiamm-choose__uses,
      body.site-monobrand .fiamm-choose__kinds,
      body.site-monobrand .fiamm-choose__pair { grid-template-columns: minmax(0, 1fr); }
      body.site-monobrand .fiamm-choose__footer { display: grid; }
      body.site-monobrand .fiamm-choose__submit .fiamm-button,
      body.site-monobrand .fiamm-choose__submit [data-choose-cta] { width: 100%; min-width: 0; }
      body.site-monobrand .fiamm-scene-choose__inner { padding: 40px 0 44px; }
    }

    /* ==== Исполнения модели — таблица на странице модели ==== */
    body.site-monobrand .fiamm-pdp-variants__table {
      display: grid;
      border: 1px solid var(--site-line, #d8dde4);
      border-radius: 16px;
      overflow: hidden;
      background: var(--site-card, #fff);
    }
    body.site-monobrand .fiamm-pdp-variants__row {
      display: grid;
      grid-template-columns: 1.3fr 1.2fr 0.8fr 1.1fr 1.5fr 0.9fr;
      gap: 12px;
      padding: 12px 18px;
      border-top: 1px solid var(--site-line, #e6e9ee);
      color: var(--site-text, #1f1f1f);
      text-decoration: none;
      font-size: 14px;
      align-items: center;
    }
    body.site-monobrand .fiamm-pdp-variants__row:first-child { border-top: 0; }
    body.site-monobrand a.fiamm-pdp-variants__row:hover { background: #f7f8fa; }
    body.site-monobrand .fiamm-pdp-variants__row--head {
      font-size: 12px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      color: var(--site-muted, #6b7280);
      background: #f7f8fa;
    }
    body.site-monobrand .fiamm-pdp-variants__row strong { font-weight: 700; }
    body.site-monobrand .fiamm-pdp-variants__row.is-in-stock {
      background: color-mix(in srgb, var(--site-brand-color, #008486) 8%, #fff);
      box-shadow: inset 3px 0 0 var(--site-brand-color, #008486);
    }
    body.site-monobrand .fiamm-pdp-variants__row.is-not-supplied { color: var(--site-muted, #6b7280); }
    /* «Скоро приходит»: состояние слабее наличия, поэтому подложка бледнее, а
       полоса слева — контуром, а не заливкой (Dio 23.09). */
    body.site-monobrand .fiamm-pdp-variants__row.is-in-transit {
        background: color-mix(in srgb, var(--site-brand-color, #008486) 4%, #fff);
        box-shadow: inset 3px 0 0 color-mix(in srgb, var(--site-brand-color, #008486) 45%, #fff);
    }
    body.site-monobrand .fiamm-pdp-variants__hint {
        display: block;
        margin-top: 2px;
        font-size: 12px;
        font-weight: 400;
        color: var(--site-muted, #6b7280);
    }
    body.site-monobrand .fiamm-pdp-variants__availability { font-size: 13px; color: var(--site-muted, #6b7280); }
    body.site-monobrand .fiamm-pdp-variants__note {
      margin: 10px 0 0;
      font-size: 13px;
      color: var(--site-muted, #6b7280);
    }
    /* Телефон (Dio 23.09): колонки в две полосы не помещались — обозначение
       ломалось, чипу «В наличии» не хватало места. Строка таблицы становится
       карточкой: исполнение, наличие, затем характеристики по одной в строку,
       каждая со своим именем. Пустые характеристики не выводятся. */
    @media (max-width: 760px) {
      /* Селектор длиннее правила строки ниже: у одинаковой силы побеждает
         последнее, и шапка таблицы снова становилась видимой. */
      body.site-monobrand .fiamm-pdp-variants__table .fiamm-pdp-variants__row--head { display: none; }
      body.site-monobrand .fiamm-pdp-variants__row {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
        padding: 14px 16px;
      }
      body.site-monobrand .fiamm-pdp-variants__row > * { max-width: 100%; }
      body.site-monobrand .fiamm-pdp-variants__row strong {
        order: -2;
        font-size: 15px;
        line-height: 1.25;
      }
      body.site-monobrand .fiamm-pdp-variants__availability {
        order: -1;
        margin-bottom: 2px;
      }
      body.site-monobrand .fiamm-pdp-variants__row [data-label]::before {
        content: attr(data-label) ": ";
        color: var(--site-muted, #6b7280);
      }
      body.site-monobrand .fiamm-pdp-variants__row [data-empty="1"] { display: none; }
    }

    /* ==== Карточка «Нужны запчасти для этого двигателя» (Dio 19.09) ==== */
    body.site-monobrand .fiamm-pdp-parts-card {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 16px 28px;
      margin: 0 0 28px;
      padding: 22px 26px;
      border-radius: 18px;
      background: #f3f3f3;
    }
    body.site-monobrand .fiamm-pdp-parts-card h2 {
      margin: 0 0 6px;
      font-size: 22px;
      font-weight: 800;
    }
    body.site-monobrand .fiamm-pdp-parts-card p { margin: 0; color: var(--site-muted, #6b7280); }

    /* ==== Наличие — метка на снимке карточки (источник — склад) ==== */
    body.site-monobrand .fiamm-card-badge {
      position: absolute;
      top: 12px;
      left: 12px;
      z-index: 1;
      padding: 5px 11px;
      border-radius: 999px;
      background: var(--site-brand-color, #008486);
      color: #fff;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.02em;
    }
    /* «Скоро приходит» — состояние слабее наличия, и чип не должен кричать
       так же громко: светлая подложка вместо заливки (Dio 23.09). Правило
       стоит после базового: у одинаковой силы побеждает последнее. */
    body.site-monobrand .fiamm-card-badge--transit {
      background: color-mix(in srgb, var(--site-brand-color, #008486) 14%, #fff);
      color: color-mix(in srgb, var(--site-brand-color, #008486) 78%, #14171a);
      box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--site-brand-color, #008486) 30%, #fff);
    }
    body.site-monobrand .fiamm-card-badge--inline { position: static; display: inline-block; }
    body.site-monobrand .fiamm-product-card__media,
    body.site-monobrand .fiamm-catalog-product__media { position: relative; }

    /* ==== Две ленты главной: двигатели, затем запчасти ==== */
    /* Обёртка не должна менять ритм страницы: display: contents, а скрытие
       выбором вида — явным правилом (атрибут hidden слабее класса). */
    body.site-monobrand .fiamm-home-kind { display: contents; }
    body.site-monobrand .fiamm-home-kind[hidden],
    body.site-monobrand [data-kind-block][hidden] { display: none; }
    body.site-monobrand .fiamm-home-kind__label { margin: 0 0 16px; }
    body.site-monobrand .fiamm-catalog-note { margin: 0 0 16px; color: var(--site-muted, #6b7280); }

    /* ==== Заявка в конце товарной страницы и выдачи (Dio 19.09) ==== */
    body.site-monobrand .fiamm-request-inline {
      margin: 36px 0 12px;
      scroll-margin-top: calc(var(--shell-height, 116px) + 12px);
    }
    body.site-monobrand .fiamm-request-inline__head h2 {
      margin: 0 0 8px;
      font-family: var(--site-font-heading, Montserrat, sans-serif);
      font-size: clamp(24px, 2.4vw, 32px);
      font-weight: 800;
    }
    body.site-monobrand .fiamm-request-inline__head p {
      margin: 0 0 18px;
      max-width: 720px;
      color: var(--site-muted, #6b7280);
    }

    /* ==== Итог подбора в каталоге ==== */
    /* Светлая карточка: каталог обнуляет фон и поля своих секций
       (`.fiamm-catalog > section`), поэтому селектор длиннее. */
    body.site-monobrand .fiamm-catalog > section.fiamm-choice-summary,
    body.site-monobrand .fiamm-choice-summary {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      margin: 8px 0 28px;
      padding: 18px 22px;
      border: 1px solid var(--site-line, #e2e5ea);
      border-radius: 16px;
      background: #fff;
      color: var(--site-text, #1f1f1f);
    }
    body.site-monobrand .fiamm-choice-summary__text { display: grid; gap: 4px; }
    body.site-monobrand .fiamm-choice-summary__kicker {
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--site-brand-color, #f37021);
    }
    body.site-monobrand .fiamm-choice-summary__text strong { font-size: 17px; }
    body.site-monobrand .fiamm-choice-summary__text span:not(.fiamm-choice-summary__kicker) { font-size: 14px; color: var(--site-muted, #6b7280); }
    body.site-monobrand .fiamm-choice-summary__actions { display: flex; flex-wrap: wrap; gap: 10px; }

    /* Оговорка под иллюстрацией модели (снимок одного из исполнений). */
    body.site-monobrand .fiamm-pdp-gallery__note {
      margin: 10px 0 0;
      font-size: 13px;
      line-height: 1.4;
      text-align: center;
      color: var(--site-muted, #6b7280);
    }

    /* Ссылка на модель у исполнения — в цвете сайта, не синим по умолчанию. */
    body.site-monobrand .fiamm-pdp-identity__meta a {
      color: var(--site-brand-color, #008486);
      text-decoration: none;
      border-bottom: 1px solid currentColor;
    }

    /* ==== Витрина запчастей: рубрики и образцы (DS26092002) ==== */
    /* Образец — не товар: метка нейтральная, не цвет бренда, чтобы не читалась как «в наличии». */
    body.site-monobrand .fiamm-card-badge--sample {
      background: #1f252b;
      color: #fff;
    }
    /* Шапка рубрики запчастей: текст слева, символ группы справа. */
    body.site-monobrand .fiamm-page-head.fiamm-parts-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(220px, 420px);
      grid-template-areas: "title image" "text image" "notice image";
      column-gap: clamp(20px, 3vw, 48px);
      align-items: start;
    }
    body.site-monobrand .fiamm-parts-head h1 { grid-area: title; }
    body.site-monobrand .fiamm-parts-head > p:not(.fiamm-parts-head__notice) { grid-area: text; }
    body.site-monobrand .fiamm-parts-head__image {
      grid-area: image;
      width: 100%;
      aspect-ratio: 16 / 9;
      object-fit: cover;
      border-radius: 18px;
    }
    body.site-monobrand .fiamm-parts-head__notice {
      grid-area: notice;
      margin: 4px 0 0;
      padding: 12px 16px;
      border-left: 3px solid var(--site-brand-color, #008486);
      border-radius: 0 12px 12px 0;
      background: #f3f3f3;
      font-size: 14px;
      color: var(--site-muted, #5f6874);
    }
    @media (max-width: 760px) {
      body.site-monobrand .fiamm-page-head.fiamm-parts-head {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas: "image" "title" "text" "notice";
      }
    }
    body.site-monobrand .fiamm-pdp-sample-note {
      margin: 6px 0 12px;
      font-size: 14px;
      line-height: 1.45;
      color: var(--site-muted, #5f6874);
    }
    /* Лента рубрики: при двух-трёх карточках auto-fit растягивал их на всю
       ширину — auto-fill держит размер карточки (оба монобренда). */
    body.site-monobrand .fiamm-rubric-page .fiamm-product-grid {
      grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--fiamm-product-card-min, 230px)), 1fr));
    }

/* Стиль оверлейных поверхностей (меню, обратная связь, уведомления).
   Второй источник бандла: в документе он шёл после base, и порядок
   сохранён, иначе изменился бы каскад. */
    /* Applies to the /menu page only. Mounted on an ordinary page this rule
       would flatten that page's content column and drop its header offset. */
    body:not(.has-overlay-mount).with-shell .wrap {
      width: 100%;
      max-width: none;
      padding-top: 0;
      padding-bottom: 0;
    }
    .fullscreen-menu {
      position: fixed;
      inset: 0;
      z-index: 120;
      width: 100%;
      min-width: 100vw;
      height: 100vh;
      height: 100dvh;
      min-height: 100svh;
      color: var(--site-menu-text);
      background: var(--site-menu-bg);
      overflow: hidden;
      overscroll-behavior: contain;
      font-family: var(--site-font-menu);
    }
    .fullscreen-menu__canvas {
      position: relative;
      width: min(calc(100% - 48px), var(--content-width-max));
      max-width: var(--content-width-max);
      height: 100%;
      margin: 0 auto;
      padding-top: clamp(42px, 7vh, 76px);
    }
    .fullscreen-menu__close {
      position: absolute;
      top: 20px;
      right: 20px;
      z-index: 2;
      width: 58px;
      height: 58px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: var(--site-menu-text);
      text-decoration: none;
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 50%;
      background: rgba(0, 0, 0, 0.58);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.1),
        inset 0 -1px 0 rgba(255, 255, 255, 0.035),
        0 12px 26px rgba(0, 0, 0, 0.32);
      -webkit-backdrop-filter: blur(14px) saturate(142%);
      backdrop-filter: blur(14px) saturate(142%);
      transition: background-color 160ms ease, transform 160ms ease;
    }
    .fullscreen-menu__close:hover,
    .fullscreen-menu__close:focus-visible {
      background: rgba(0, 0, 0, 0.7);
      transform: translateY(-1px);
    }
    .fullscreen-menu__close:focus-visible {
      outline: 2px solid var(--dionysos-accent-purple, rgba(166, 91, 255, 0.72));
      outline-offset: 3px;
    }
    .fullscreen-menu__close-icon,
    .fullscreen-menu__close-asset {
      display: block;
      width: 32px;
      height: 32px;
      object-fit: contain;
      border: none;
      fill: currentColor;
    }
    .fullscreen-menu__layout {
      height: 100%;
      min-height: 0;
      padding: clamp(60px, 10vh, 118px) 0 clamp(48px, 8vh, 88px);
      display: grid;
      grid-template-columns: minmax(220px, 1fr) minmax(0, 3fr);
      gap: clamp(44px, 6vw, 96px);
      align-items: start;
      overflow: hidden;
      scrollbar-width: thin;
    }
    .fullscreen-menu__nav {
      display: flex;
      flex-direction: column;
      gap: clamp(22px, 3vh, 32px);
      min-width: 0;
      padding-top: 6px;
    }
    .fullscreen-menu__nav-group {
      display: flex;
      flex-direction: column;
      gap: clamp(22px, 3vh, 31px);
    }
    .fullscreen-menu__nav-group--aux {
      margin-top: clamp(38px, 6vh, 64px);
      gap: clamp(16px, 2.2vh, 24px);
    }
    .fullscreen-menu__item {
      appearance: none;
      width: fit-content;
      max-width: 100%;
      margin: 0;
      padding: 0;
      border: 0;
      border-radius: 0;
      color: rgba(255, 255, 255, 0.42);
      background: transparent;
      font-family: var(--site-font-heading);
      font-size: clamp(1.375rem, 1.48vw, 1.75rem);
      font-weight: 800;
      line-height: 1.06;
      letter-spacing: 0.1em;
      text-align: left;
      text-decoration: none;
      text-transform: uppercase;
      cursor: pointer;
      transition: color 160ms ease, opacity 160ms ease, transform 160ms ease;
    }
    .fullscreen-menu__item:hover,
    .fullscreen-menu__item:focus-visible,
    .fullscreen-menu__item.is-active {
      color: rgba(255, 255, 255, 0.78);
      outline: none;
    }
    .fullscreen-menu__item:focus-visible {
      transform: translateX(2px);
    }
    .fullscreen-menu__item--aux {
      color: rgba(255, 255, 255, 0.32);
      font-size: clamp(1.125rem, 1.16vw, 1.375rem);
    }
    .fullscreen-menu__main {
      min-width: 0;
      padding-right: 68px;
    }
    .fullscreen-menu__search-form {
      width: 100%;
      max-width: none;
      margin: 0;
    }
    .fullscreen-menu__search-shell {
      position: relative;
      display: flex;
      align-items: center;
      height: var(--dionysos-search-height, 64px);
      border-radius: 999px;
      background: var(--dionysos-search-bg, rgba(255, 255, 255, 0.08));
      overflow: hidden;
    }
    .fullscreen-menu__search-shell:focus-within {
      box-shadow: inset 0 0 0 2px var(--dionysos-search-focus, rgba(166, 91, 255, 0.72));
    }
    .fullscreen-menu__search {
      width: 100%;
      height: 100%;
      border: 0;
      border-radius: var(--dionysos-search-radius, 999px);
      outline: none;
      background: transparent;
      color: rgba(255, 250, 238, 0.94);
      padding: 0 24px;
      font-family: var(--site-font-heading);
      font-weight: 600;
    }
    .fullscreen-menu__search::placeholder {
      color: rgba(255, 250, 238, 0.42);
      opacity: 1;
    }
    .fullscreen-menu__search:focus {
      background: transparent;
    }
    .fullscreen-menu__preview {
      display: none;
      width: 100%;
      margin-top: 6px;
    }
    .fullscreen-menu__preview.is-active {
      display: block;
    }
    .fullscreen-menu__preview-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;
      width: 100%;
    }
    .fullscreen-menu__preview-card {
      position: relative;
      display: flex;
      align-items: end;
      min-height: clamp(132px, 12.5vw, 190px);
      padding: 18px;
      overflow: hidden;
      border-radius: 20px;
      color: rgba(255, 250, 238, 0.9);
      background-image:
        linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.68) 100%),
        var(--menu-preview-image);
      background-position: center;
      background-size: cover;
      box-shadow: none;
      text-decoration: none;
      transform: translateY(0);
      transition: transform 160ms ease, box-shadow 160ms ease, color 160ms ease;
    }
    .fullscreen-menu__preview-card:hover,
    .fullscreen-menu__preview-card:focus-visible {
      color: rgba(255, 250, 238, 1);
      box-shadow: 0 14px 32px rgba(0, 0, 0, 0.28);
      transform: translateY(-2px);
      outline: none;
    }
    .fullscreen-menu__preview-card:focus-visible {
      box-shadow: 0 0 0 2px rgba(166, 91, 255, 0.72), 0 14px 32px rgba(0, 0, 0, 0.28);
    }
    .fullscreen-menu__preview-title {
      position: relative;
      z-index: 1;
      font-family: var(--site-font-heading);
      font-size: clamp(1rem, 1.24vw, 1.35rem);
      font-weight: 800;
      line-height: 1.08;
      letter-spacing: 0.02em;
    }
    .fullscreen-menu__preview--rubrics .fullscreen-menu__preview-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
    }
    .fullscreen-menu__preview--rubrics .fullscreen-menu__preview-card {
      min-height: 0;
      aspect-ratio: 1 / 1;
      padding: 16px;
      border-radius: 18px;
      background-image:
        linear-gradient(0deg, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.42) 23%, rgba(0, 0, 0, 0.12) 42%, rgba(0, 0, 0, 0) 64%),
        var(--menu-preview-image);
    }
    .fullscreen-menu__preview--rubrics .fullscreen-menu__preview-title {
      font-size: clamp(0.92rem, 1.05vw, 1.18rem);
      text-shadow: 0 2px 12px rgba(0, 0, 0, 0.72);
    }
    .fullscreen-menu__preview--links .fullscreen-menu__preview-grid {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: clamp(18px, 3vh, 28px);
      max-width: 620px;
    }
    .fullscreen-menu__preview-link {
      color: rgba(255, 255, 255, 0.75);
      font-family: var(--site-font-heading);
      font-size: clamp(1.45rem, 2.15vw, 2.5rem);
      font-weight: 800;
      line-height: 1.04;
      letter-spacing: 0.1em;
      text-decoration: none;
      text-transform: uppercase;
      transition: color 160ms ease, transform 160ms ease;
    }
    .fullscreen-menu__preview-link:hover,
    .fullscreen-menu__preview-link:focus-visible {
      color: rgba(255, 255, 255, 0.86);
      transform: translateX(3px);
      outline: none;
    }
    .fullscreen-menu__search-panel,
    .fullscreen-menu__messenger-panel,
    .fullscreen-menu__notice-panel {
      display: none;
      width: 100%;
      margin-top: clamp(34px, 5vh, 58px);
    }
    .fullscreen-menu__quick-grid {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin: 0;
      padding: 0;
      list-style: none;
    }
    .fullscreen-menu__quick-grid a,
    .fullscreen-menu__messenger-action {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      padding: 0 18px;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.08);
      color: rgba(255, 250, 238, 0.75);
      font-family: var(--site-font-heading);
      font-size: var(--site-text-nav);
      font-weight: 800;
      letter-spacing: 0.08em;
      text-decoration: none;
      text-transform: uppercase;
      transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
    }
    .fullscreen-menu__quick-grid a:hover,
    .fullscreen-menu__quick-grid a:focus-visible,
    .fullscreen-menu__messenger-action:hover,
    .fullscreen-menu__messenger-action:focus-visible {
      background: rgba(255, 255, 255, 0.13);
      color: rgba(255, 250, 238, 0.94);
      transform: translateY(-1px);
      outline: none;
    }
    .fullscreen-menu__messenger-panel h2 {
      margin: 0 0 18px;
      color: rgba(255, 250, 238, 0.72);
      font-family: var(--site-font-heading);
      font-size: clamp(1.5rem, 2.2vw, 2.5rem);
      font-weight: 800;
      line-height: 1.05;
    }
    .fullscreen-menu__messenger-panel p {
      max-width: 60ch;
      margin: 0 0 26px;
      color: rgba(255, 250, 238, 0.52);
      font-family: var(--site-font-body);
      font-size: var(--site-text-body-large);
      line-height: 1.62;
    }
    /* Overlay Window §04: the strip of sections sits under the panel and the
       section body below it -- a vertical stack, not a sidebar next to a pane.
       While this was two columns the tab strip lived inside a tall narrow
       column and, being bottom-aligned, rendered at the foot of the window. */
    .fiamm-messenger {
      display: grid;
      grid-template-rows: auto minmax(0, 1fr);
      height: 100%;
      min-width: 0;
      min-height: 0;
    }
    /* Overlay Window §04: sections live on a horizontal tabulator under the
       panel -- a hairline track with the active tab underlined in the accent,
       the same device as the product card. Not a vertical list of links. */
    .fiamm-messenger__nav {
      display: flex;
      align-items: flex-end;
      gap: 34px;
      margin-bottom: 4px;
      padding: 0;
      border-bottom: 1px solid var(--fiamm-overlay-tab-track, #e1e1e1);
      overflow-x: auto;
      scrollbar-width: none;
    }
    .fiamm-messenger__nav::-webkit-scrollbar {
      display: none;
    }
    .fiamm-messenger__tab {
      appearance: none;
      flex: 0 0 auto;
      margin: 0 0 -1px;
      padding: 0 0 14px;
      border: 0;
      /* Same 3px on every tab, transparent when idle -- otherwise the active
         tab's rule sat at a different weight from tab to tab. */
      border-bottom: 3px solid transparent;
      box-sizing: content-box;
      background: transparent;
      color: var(--fiamm-overlay-tab-idle, #9a9a9a);
      font-family: inherit;
      font-size: 15px;
      font-weight: 800;
      letter-spacing: 1.5px;
      line-height: 1.12;
      text-align: left;
      text-transform: uppercase;
      white-space: nowrap;
      cursor: pointer;
      transition: color 160ms ease;
    }
    .fiamm-messenger__tab:hover,
    .fiamm-messenger__tab:focus-visible {
      color: var(--fiamm-overlay-text, #1b1b1b);
      outline: none;
    }
    .fiamm-messenger__tab.is-active {
      color: var(--fiamm-red, #d81818);
      border-bottom-color: var(--fiamm-red, #d81818);
    }
    /* The panel and the tab strip stay put; only the section body scrolls. */
    .fiamm-messenger__workspace {
      min-width: 0;
      min-height: 0;
      padding-top: 24px;
      overflow-y: auto;
      scrollbar-width: thin;
    }
    .fiamm-messenger__section {
      display: none;
      min-width: 0;
    }
    .fiamm-messenger__section.is-active {
      display: block;
    }
    .fiamm-messenger__section h2 {
      margin: 0 0 clamp(24px, 4vh, 38px);
      color: #ffffff;
      font-family: var(--site-font-heading);
      font-size: clamp(1.8rem, 2vw, 2.2rem);
      font-weight: 700;
      letter-spacing: 0.15em;
      line-height: 1.08;
      text-transform: uppercase;
    }
    .fiamm-messenger__form {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: clamp(18px, 2vw, 26px);
    }
    .fiamm-messenger__field,
    .fiamm-messenger__textarea {
      width: 100%;
      border: 0;
      background: rgba(255, 255, 255, 0.48);
      color: #ffffff;
      font-family: var(--site-font-heading);
      font-size: clamp(1.3rem, 1.4vw, 1.5rem);
      font-weight: 700;
      line-height: 1.2;
      outline: none;
    }
    .fiamm-messenger__field::placeholder,
    .fiamm-messenger__textarea::placeholder {
      color: rgba(255, 255, 255, 0.94);
      opacity: 1;
    }
    .fiamm-messenger__field:focus,
    .fiamm-messenger__field:focus-visible,
    .fiamm-messenger__textarea:focus,
    .fiamm-messenger__textarea:focus-visible {
      background: #ffffff;
      color: #111318;
      box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.36);
    }
    .fiamm-messenger__field:focus::placeholder,
    .fiamm-messenger__field:focus-visible::placeholder,
    .fiamm-messenger__textarea:focus::placeholder,
    .fiamm-messenger__textarea:focus-visible::placeholder {
      color: rgba(17, 19, 24, 0.56);
    }
    .fiamm-messenger__field {
      min-height: 60px;
      padding: 0 28px;
      border-radius: 999px;
    }
    .fiamm-messenger__textarea {
      grid-column: 1 / -1;
      min-height: clamp(220px, 24vw, 320px);
      resize: vertical;
      padding: 28px;
      border-radius: 30px;
    }
    .fiamm-messenger__consent {
      grid-column: 1 / -1;
      display: grid;
      grid-template-columns: 28px minmax(0, 1fr);
      gap: 18px;
      align-items: start;
      color: #ffffff;
      font-family: var(--site-font-heading);
      font-size: clamp(1.05rem, 1.28vw, 1.25rem);
      font-weight: 700;
      line-height: 1.25;
    }
    .fiamm-messenger__consent input {
      width: 28px;
      height: 28px;
      margin: 0;
      accent-color: #ffffff;
    }
    .fiamm-messenger__consent a {
      display: inline-block;
      margin-top: 10px;
      color: rgba(255, 255, 255, 0.75);
      text-decoration: none;
    }
    .fiamm-messenger__submit,
    .fiamm-messenger__link {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 58px;
      border-radius: 999px;
      border: 4px solid #ffffff;
      background: transparent;
      color: #ffffff;
      font-family: var(--site-font-heading);
      font-size: clamp(1.05rem, 1.28vw, 1.25rem);
      font-weight: 700;
      letter-spacing: 0.15em;
      text-decoration: none;
      text-transform: uppercase;
      cursor: pointer;
    }
    .fiamm-messenger__submit {
      grid-column: 2;
      justify-self: stretch;
    }
    .fiamm-messenger__cards {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;
      margin: 0 0 28px;
    }
    .fiamm-messenger__card {
      min-height: 140px;
      padding: 22px;
      border-radius: 28px;
      background: rgba(255, 255, 255, 0.48);
      color: #ffffff;
      font-family: var(--site-font-heading);
      font-weight: 700;
    }
    .fiamm-messenger__card strong,
    .fiamm-messenger__contact-list strong {
      display: block;
      margin-bottom: 8px;
      font-size: clamp(1.1rem, 1.3vw, 1.35rem);
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .fiamm-messenger__card span,
    .fiamm-messenger__contact-list span,
    .fiamm-messenger__note {
      color: rgba(255, 255, 255, 0.74);
      font-family: var(--site-font-body);
      font-size: 1rem;
      line-height: 1.5;
    }
    .fiamm-messenger__contact-list {
      display: grid;
      gap: 18px;
      margin: 0 0 30px;
    }
    .fiamm-messenger__contact-list a {
      color: rgba(255, 255, 255, 0.75);
      font-family: var(--site-font-heading);
      font-size: clamp(1.3rem, 1.4vw, 1.5rem);
      font-weight: 700;
      text-decoration: none;
      overflow-wrap: anywhere;
    }
    .fiamm-messenger__contact-list a:hover,
    .fiamm-messenger__contact-list a:focus-visible,
    .fiamm-messenger__link:hover,
    .fiamm-messenger__link:focus-visible {
      color: #ffffff;
      outline: none;
    }
    .fiamm-messenger__link {
      color: rgba(255, 255, 255, 0.75);
    }
    .fiamm-chat-shell {
      display: grid;
      gap: 18px;
      max-width: 760px;
    }
    .fiamm-chat-window {
      display: grid;
      gap: 14px;
      min-height: clamp(360px, 34vw, 520px);
      padding: clamp(22px, 2.4vw, 30px);
      border-radius: 32px;
      background: rgba(255, 255, 255, 0.12);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16);
    }
    .fiamm-chat-bubble {
      max-width: min(88%, 520px);
      padding: 16px 20px;
      border-radius: 24px;
      background: rgba(255, 255, 255, 0.22);
      color: rgba(255, 255, 255, 0.86);
      font-family: var(--site-font-body);
      font-size: 1rem;
      line-height: 1.55;
    }
    .fiamm-chat-bubble--reply {
      justify-self: end;
      background: rgba(255, 255, 255, 0.3);
    }
    .fiamm-chat-composer {
      display: grid;
      gap: 16px;
      margin-top: auto;
    }
    .fiamm-chat-composer textarea {
      width: 100%;
      min-height: clamp(260px, 30vw, 380px);
      border: 0;
      border-radius: 30px;
      padding: 28px;
      resize: vertical;
      background: rgba(255, 255, 255, 0.48);
      color: #ffffff;
      font-family: var(--site-font-heading);
      font-size: clamp(1.25rem, 1.35vw, 1.45rem);
      font-weight: 700;
      line-height: 1.3;
      outline: none;
    }
    .fiamm-chat-composer textarea::placeholder {
      color: rgba(255, 255, 255, 0.94);
      opacity: 1;
    }
    .fiamm-chat-composer textarea:focus,
    .fiamm-chat-composer textarea:focus-visible {
      background: #ffffff;
      color: #111318;
      box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.36);
    }
    .fiamm-chat-composer textarea:focus::placeholder,
    .fiamm-chat-composer textarea:focus-visible::placeholder {
      color: rgba(17, 19, 24, 0.56);
    }
    .fiamm-chat-actions {
      display: flex;
      justify-content: flex-end;
    }
    .fiamm-notice {
      max-width: 820px;
      margin: 0 auto;
      display: grid;
      gap: 18px;
    }
    .fiamm-notice__title {
      margin: 0 0 18px;
      color: #ffffff;
      font-family: var(--site-font-heading);
      font-size: clamp(1.8rem, 2vw, 2.2rem);
      font-weight: 700;
      letter-spacing: 0.15em;
      line-height: 1.08;
      text-transform: uppercase;
    }
    .fiamm-notice__item {
      border: 1px solid rgba(255, 255, 255, 0.12);
      border-radius: 20px;
      background: color-mix(in srgb, var(--fiamm-surface-strong, #22252a) 86%, #ffffff);
      color: #ffffff;
      overflow: hidden;
    }
    .fiamm-notice__item summary {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto auto;
      align-items: start;
      gap: 18px;
      min-height: 72px;
      padding: 22px 24px 18px;
      font-family: var(--site-font-heading);
      font-size: clamp(1.15rem, 1.2vw, 1.35rem);
      font-weight: 700;
      cursor: pointer;
      list-style: none;
    }
    .fiamm-notice__item summary::-webkit-details-marker {
      display: none;
    }
    .fiamm-notice__item summary::after {
      content: "⌄";
      flex: 0 0 auto;
      font-size: 1.5em;
      line-height: 1;
      align-self: center;
    }
    .fiamm-notice__item[open] summary::after {
      transform: rotate(180deg);
    }
    .fiamm-notice__item-title {
      display: grid;
      gap: 8px;
    }
    .fiamm-notice__meta {
      display: inline-flex;
      flex-wrap: wrap;
      gap: 10px;
      align-items: center;
      color: rgba(255, 255, 255, 0.76);
      font-family: var(--site-font-body);
      font-size: 0.86rem;
      line-height: 1.35;
    }
    .fiamm-notice__chip {
      display: inline-flex;
      align-items: center;
      min-height: 28px;
      padding: 0 12px;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.14);
      color: #ffffff;
      font-size: 0.76rem;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .fiamm-notice__remove {
      align-self: center;
      width: 36px;
      height: 36px;
      border: 0;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.12);
      color: #ffffff;
      font-size: 1.05rem;
      cursor: pointer;
    }
    .fiamm-notice__item p {
      margin: 0;
      padding: 0 24px 22px;
      color: rgba(255, 255, 255, 0.86);
      font-family: var(--site-font-body);
      font-size: 1rem;
      line-height: 1.55;
    }
    .fullscreen-menu.is-mode-menu .fullscreen-menu__search-form,
    .fullscreen-menu.is-mode-menu .fullscreen-menu__search-panel,
    .fullscreen-menu.is-mode-menu .fullscreen-menu__messenger-panel,
    .fullscreen-menu.is-mode-menu .fullscreen-menu__notice-panel,
    .fullscreen-menu.is-mode-search .fullscreen-menu__nav,
    .fullscreen-menu.is-mode-search .fullscreen-menu__preview,
    .fullscreen-menu.is-mode-search .fullscreen-menu__dionysos-contact,
    .fullscreen-menu.is-mode-search .fullscreen-menu__messenger-panel,
    .fullscreen-menu.is-mode-search .fullscreen-menu__notice-panel,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__nav,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__search-form,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__search-panel,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__preview,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__dionysos-contact,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__notice-panel,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__nav,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__search-form,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__search-panel,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__preview,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__dionysos-contact,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__messenger-panel {
      display: none;
    }
    .fullscreen-menu.is-mode-search .fullscreen-menu__layout,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__layout,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__layout {
      grid-template-columns: minmax(0, 1fr);
    }
    .fullscreen-menu.is-mode-search .fullscreen-menu__main,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__main,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__main {
      padding-right: 0;
    }
    .fullscreen-menu.is-mode-search .fullscreen-menu__search-form,
    .fullscreen-menu.is-mode-search .fullscreen-menu__search-panel,
    .fullscreen-menu.is-mode-messenger .fullscreen-menu__messenger-panel,
    .fullscreen-menu.is-mode-notice .fullscreen-menu__notice-panel {
      display: block;
    }

    .fullscreen-menu__fallback {
      display: none;
    }
    .fullscreen-menu__fallback-list {
      margin: 0;
      padding: 0;
      list-style: none;
    }
    .fullscreen-menu__fallback-list a,
    .fullscreen-menu__fallback-list span {
      color: var(--site-menu-text);
    }
    body.site-code-dionysos-iw .fullscreen-menu {
      background: #08070b;
      --site-menu-bg: #08070b;
    }
    body.site-code-dionysos-iw .fullscreen-menu__dionysos-contact {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: clamp(14px, 2vh, 22px);
      min-width: 0;
      padding-top: 8px;
    }
    body.site-code-dionysos-iw .fullscreen-menu__dionysos-contact-title {
      margin: 0 0 clamp(8px, 1.4vh, 14px);
      color: rgba(224, 193, 91, 0.76);
      font-family: var(--site-font-heading);
      font-size: 0.78rem;
      font-weight: 800;
      letter-spacing: 0.14em;
      line-height: 1.2;
      text-transform: uppercase;
    }
    body.site-code-dionysos-iw .fullscreen-menu__dionysos-contact a {
      color: rgba(255, 250, 238, 0.5);
      font-family: var(--site-font-heading);
      font-size: clamp(1.08rem, 1.18vw, 1.34rem);
      font-weight: 800;
      line-height: 1.12;
      letter-spacing: 0.1em;
      text-decoration: none;
      text-transform: uppercase;
      transition: color 160ms ease, transform 160ms ease;
    }
    body.site-code-dionysos-iw .fullscreen-menu__dionysos-contact a:hover,
    body.site-code-dionysos-iw .fullscreen-menu__dionysos-contact a:focus-visible {
      color: rgba(255, 250, 238, 0.84);
      transform: translateX(2px);
      outline: none;
    }
    @media (min-width: 901px) {
      body.site-code-dionysos-iw .fullscreen-menu {
        z-index: 1000;
        display: grid;
        place-items: center;
        padding: clamp(34px, 5vh, 58px) 24px;
        background: rgba(8, 7, 11, 0.76);
      }
      body.site-code-dionysos-iw .fullscreen-menu__canvas {
        width: min(calc(100vw - 80px), 1180px);
        height: min(86vh, 820px);
        min-height: 620px;
        margin: 0;
        padding: clamp(42px, 5vw, 68px);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 8px;
        background:
          radial-gradient(circle at 94% 0%, rgba(124, 58, 237, 0.16), transparent 34%),
          linear-gradient(160deg, rgba(124, 58, 237, 0.07), rgba(8, 7, 11, 0) 42%),
          #08070b;
        box-shadow: 0 26px 90px rgba(0, 0, 0, 0.58);
        overflow: auto;
        overscroll-behavior: contain;
      }
      body.site-code-dionysos-iw .fullscreen-menu__close {
        top: 18px;
        right: 18px;
      }
      body.site-code-dionysos-iw .fullscreen-menu__layout {
        padding: clamp(50px, 7vh, 78px) 0 0;
      }
      body.site-code-dionysos-iw .fullscreen-menu--dionysos.is-mode-menu .fullscreen-menu__layout {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: clamp(32px, 4.8vw, 72px);
      }
      body.site-code-dionysos-iw .fullscreen-menu--dionysos.is-mode-menu .fullscreen-menu__nav {
        display: contents;
      }
      body.site-code-dionysos-iw .fullscreen-menu--dionysos.is-mode-menu [data-menu-primary] {
        grid-column: 1;
        gap: clamp(20px, 3vh, 32px);
        margin: 0;
      }
      body.site-code-dionysos-iw .fullscreen-menu--dionysos.is-mode-menu [data-menu-aux] {
        grid-column: 2;
        gap: clamp(15px, 2.2vh, 24px);
        margin: 0;
        padding-top: 6px;
      }
      body.site-code-dionysos-iw .fullscreen-menu--dionysos.is-mode-menu .fullscreen-menu__dionysos-contact {
        grid-column: 3;
      }
      body.site-code-dionysos-iw .fullscreen-menu--dionysos.is-mode-menu .fullscreen-menu__main {
        display: none;
      }
      body.site-code-dionysos-iw .fullscreen-menu--dionysos.is-mode-menu [data-menu-primary] .fullscreen-menu__item {
        font-size: clamp(1.48rem, 2.56vw, 2.84rem);
        line-height: 0.98;
      }
      body.site-code-dionysos-iw .fullscreen-menu--dionysos.is-mode-menu [data-menu-aux] .fullscreen-menu__item {
        font-size: clamp(1.08rem, 1.25vw, 1.42rem);
      }
    }
    body.site-code-dionysos-iw .fullscreen-menu__search,
    body.site-code-dionysos-iw .fullscreen-menu__item,
    body.site-code-dionysos-iw .fullscreen-menu__preview-title {
      font-family: var(--site-font-heading);
    }
    body.site-monobrand .fullscreen-menu {
      --site-menu-bg: var(--fiamm-surface-strong, #22252a);
      --site-menu-text: #ffffff;
      background:
        linear-gradient(90deg, var(--fiamm-red, #e30613), color-mix(in srgb, var(--fiamm-red, #e30613) 22%, transparent)) top left / 100% 5px no-repeat,
        var(--site-menu-bg);
      color: #ffffff;
      font-family: var(--site-font-heading);
    }
    body.site-monobrand .fullscreen-menu__canvas {
      padding-top: clamp(24px, 4vh, 42px);
    }
    body.site-monobrand .fullscreen-menu__brand {
      position: absolute;
      top: clamp(28px, 4vh, 42px);
      left: 0;
      z-index: 2;
      display: inline-flex;
      align-items: center;
      gap: 0;
      min-width: 0;
      color: #ffffff;
    }
    body.site-monobrand .fullscreen-menu__brand img {
      width: clamp(148px, 14vw, 192px);
      height: auto;
      display: block;
      object-fit: contain;
    }
    body.site-monobrand .fullscreen-menu__close {
      top: clamp(34px, 5vh, 52px);
      border-color: rgba(255, 255, 255, 0.18);
      background: rgba(255, 255, 255, 0.12);
      color: #ffffff;
      box-shadow: var(--shell-control-surface-shadow, 0 12px 26px rgba(0, 0, 0, 0.22));
      -webkit-backdrop-filter: var(--shell-control-surface-blur, blur(12px) saturate(132%));
      backdrop-filter: var(--shell-control-surface-blur, blur(12px) saturate(132%));
    }
    body.site-monobrand .fullscreen-menu__close:hover,
    body.site-monobrand .fullscreen-menu__close:focus-visible {
      background: rgba(255, 255, 255, 0.2);
      color: #ffffff;
    }
    body.site-monobrand .fullscreen-menu__layout {
      display: flex;
      flex-direction: column;
      min-height: 100%;
      padding: clamp(150px, 18vh, 210px) 0 clamp(26px, 4vh, 42px);
      gap: clamp(28px, 4.4vh, 54px);
    }
    body.site-monobrand .fullscreen-menu__nav {
      display: contents;
    }
    body.site-monobrand .fullscreen-menu__nav-group {
      padding-top: 0;
      width: 100%;
    }
    body.site-monobrand .fullscreen-menu__main {
      order: 1;
      width: 100%;
      min-height: clamp(190px, 23vh, 260px);
      padding-right: 0;
    }
    body.site-monobrand .fullscreen-menu__preview {
      margin-top: 0;
    }
    body.site-monobrand .fullscreen-menu.is-mode-menu .fullscreen-menu__main {
      display: none;
    }
    body.site-monobrand .fullscreen-menu.is-mode-search .fullscreen-menu__main,
    body.site-monobrand .fullscreen-menu.is-mode-messenger .fullscreen-menu__main {
      display: block;
    }
    body.site-monobrand [data-menu-primary] {
      order: 0;
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: clamp(14px, 1.7vw, 24px);
    }
    body.site-monobrand .fullscreen-menu__mobile-contact {
      display: none;
    }
    body.site-monobrand [data-menu-aux] {
      order: 2;
      margin-top: auto;
      padding-top: 28px;
      border-top: 1px solid rgba(255, 255, 255, 0.42);
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      gap: 14px clamp(26px, 3vw, 42px);
    }
    body.site-monobrand .fullscreen-menu__item {
      color: rgba(255, 255, 255, 0.9);
    }
    body.site-monobrand .fullscreen-menu__item:hover,
    body.site-monobrand .fullscreen-menu__item:focus-visible,
    body.site-monobrand .fullscreen-menu__item.is-active {
      color: #ffffff;
    }
    body.site-monobrand [data-menu-primary] .fullscreen-menu__item {
      width: 100%;
      min-height: clamp(132px, 14vw, 190px);
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center;
      gap: clamp(16px, 1.6vw, 26px);
      padding: clamp(18px, 2vw, 26px);
      border: 1px solid rgba(255, 255, 255, 0.22);
      border-radius: clamp(22px, 2.1vw, 34px);
      background: rgba(255, 255, 255, 0.06);
      font-family: var(--site-font-heading);
      letter-spacing: 0;
      text-transform: none;
    }
    body.site-monobrand .fullscreen-menu__surface-title {
      display: block;
      font-size: clamp(1.7rem, 2.1vw, 2.45rem);
      font-weight: 500;
      line-height: 1;
      text-transform: uppercase;
    }
    body.site-monobrand .fullscreen-menu__surface-desc {
      display: block;
      max-width: 14ch;
      font-size: clamp(1.08rem, 1.42vw, 1.62rem);
      font-weight: 500;
      line-height: 1.16;
    }
    body.site-monobrand [data-menu-primary] .fullscreen-menu__item:hover,
    body.site-monobrand [data-menu-primary] .fullscreen-menu__item:focus-visible,
    body.site-monobrand [data-menu-primary] .fullscreen-menu__item.is-active {
      background: rgba(255, 255, 255, 0.13);
      transform: translateY(-2px);
    }
    body.site-monobrand .fullscreen-menu__item--aux {
      color: rgba(255, 255, 255, 0.86);
      display: inline-flex;
      align-items: center;
      font-family: var(--site-font-heading);
      font-size: clamp(1rem, 1.16vw, 1.28rem);
      font-weight: 500;
      letter-spacing: 0;
      text-transform: none;
    }
    body.site-monobrand .fullscreen-menu__item--aux:first-child::before {
      content: "";
      width: 0.62em;
      height: 0.62em;
      margin-right: 0.5em;
      border: 0.12em solid currentColor;
      border-radius: 50%;
      flex: 0 0 auto;
    }
    body.site-monobrand .fullscreen-menu__search-shell {
      border: 1px solid rgba(255, 255, 255, 0.36);
      background: rgba(255, 255, 255, 0.12);
    }
    body.site-monobrand .fullscreen-menu__search-shell:focus-within {
      box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.58);
    }
    body.site-monobrand .fullscreen-menu__search {
      color: #ffffff;
    }
    body.site-monobrand .fullscreen-menu__search::placeholder {
      color: rgba(255, 255, 255, 0.66);
    }
    body.site-monobrand .fullscreen-menu__preview--rubrics .fullscreen-menu__preview-grid {
      grid-template-columns: repeat(6, minmax(0, 1fr));
      gap: clamp(14px, 1.6vw, 24px);
    }
    body.site-monobrand .fullscreen-menu__preview-card {
      color: #ffffff;
      border: 0;
      background-color: rgba(255, 255, 255, 0.24);
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu__preview-card--blank {
      background-image: none !important;
    }
    body.site-monobrand .fullscreen-menu__preview-link {
      color: rgba(255, 255, 255, 0.75);
    }
    body.site-monobrand .fullscreen-menu__preview-link:hover,
    body.site-monobrand .fullscreen-menu__preview-link:focus-visible {
      color: #ffffff;
    }
    body.site-monobrand .fullscreen-menu__quick-grid a,
    body.site-monobrand .fullscreen-menu__messenger-action {
      border: 1px solid rgba(255, 255, 255, 0.34);
      background: rgba(255, 255, 255, 0.1);
      color: rgba(255, 255, 255, 0.75);
    }
    body.site-monobrand .fullscreen-menu__quick-grid a:hover,
    body.site-monobrand .fullscreen-menu__quick-grid a:focus-visible,
    body.site-monobrand .fullscreen-menu__messenger-action:hover,
    body.site-monobrand .fullscreen-menu__messenger-action:focus-visible {
      background: rgba(255, 255, 255, 0.18);
      color: #ffffff;
    }
    body.site-monobrand .fullscreen-menu__messenger-panel h2 {
      color: #ffffff;
    }
    body.site-monobrand .fullscreen-menu__messenger-panel p {
      color: rgba(255, 255, 255, 0.76);
    }
    @media (max-width: 1180px) {
      body.site-monobrand .fullscreen-menu__preview--rubrics .fullscreen-menu__preview-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu {
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
      }
      body.site-monobrand .fullscreen-menu__canvas {
        height: auto;
        min-height: 100dvh;
        padding-bottom: max(28px, env(safe-area-inset-bottom));
      }
      body.site-monobrand .fullscreen-menu__brand {
        right: 66px;
        gap: 16px;
      }
      body.site-monobrand .fullscreen-menu__brand span {
        display: none;
      }
      body.site-monobrand .fullscreen-menu__layout {
        height: auto;
        min-height: 100%;
        overflow: visible;
        padding-top: clamp(112px, 18vw, 136px);
        padding-bottom: max(32px, env(safe-area-inset-bottom));
        gap: 24px;
      }
      body.site-monobrand [data-menu-primary] {
        grid-template-columns: 1fr 1fr;
        gap: clamp(14px, 4.4vw, 40px);
      }
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item {
        min-height: clamp(116px, 23vw, 188px);
        padding: clamp(20px, 4vw, 34px);
        gap: clamp(14px, 3vw, 26px);
      }
      body.site-monobrand .fullscreen-menu__surface-title {
        font-size: clamp(1.9rem, 4.7vw, 2.55rem);
      }
      body.site-monobrand .fullscreen-menu__surface-desc {
        font-size: clamp(1.22rem, 3.4vw, 1.72rem);
      }
      body.site-monobrand .fullscreen-menu__mobile-contact {
        order: 1;
        display: flex;
        flex-direction: column;
        gap: 14px;
        padding: clamp(24px, 4vw, 34px) 12px;
        border-top: 1px solid rgba(255, 255, 255, 0.42);
        border-bottom: 1px solid rgba(255, 255, 255, 0.42);
        font-family: var(--site-font-heading);
      }
      body.site-monobrand .fullscreen-menu__mobile-contact a {
        width: fit-content;
        color: #ffffff;
        font-size: clamp(2rem, 6vw, 2.75rem);
        font-weight: 700;
        line-height: 1.08;
        text-decoration: none;
      }
      body.site-monobrand [data-menu-aux] {
        margin-top: 0;
        padding-top: 4px;
        border-top: 0;
        flex-direction: column;
        gap: clamp(10px, 2.8vw, 18px);
      }
      body.site-monobrand .fullscreen-menu__item--aux {
        font-size: clamp(2rem, 6.2vw, 2.75rem);
        line-height: 1.08;
      }
    }
    @media (max-width: 1180px) {
      .fullscreen-menu__preview-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .fullscreen-menu__preview--rubrics .fullscreen-menu__preview-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }
    @media (max-width: 900px) {
      .fullscreen-menu__canvas {
        width: min(calc(100% - 32px), 720px);
        padding-top: 22px;
      }
      .fullscreen-menu__close {
        top: calc((var(--shell-height) - 52px) / 2);
        right: 0;
        width: 52px;
        height: 52px;
      }
      .fullscreen-menu__layout {
        display: flex;
        flex-direction: column;
        gap: 34px;
        padding: 80px 0 40px;
      }
      .fullscreen-menu__main {
        order: -1;
        padding-right: 0;
      }
      .fullscreen-menu.is-mode-search .fullscreen-menu__main,
      .fullscreen-menu.is-mode-messenger .fullscreen-menu__main {
        padding-right: 0;
      }
      .fullscreen-menu__nav {
        gap: 28px;
      }
      .fullscreen-menu__nav-group {
        gap: 22px;
      }
      .fullscreen-menu__nav-group--aux {
        margin-top: 28px;
      }
      .fullscreen-menu__item {
        width: 100%;
        font-size: calc(clamp(1.625rem, 7.6vw, 2.5rem) * var(--site-menu-mobile-font-scale));
      }
      .fullscreen-menu__item--aux {
        font-size: calc(clamp(1.25rem, 5.8vw, 1.875rem) * var(--site-menu-mobile-font-scale));
      }
      .fullscreen-menu__search-shell {
        height: var(--dionysos-search-height, 64px);
      }
      .fullscreen-menu__preview {
        display: none !important;
      }
      body.site-code-dionysos-iw .fullscreen-menu__dionysos-contact {
        padding-top: 0;
      }
    }
    @media (min-width: 901px) {
      body.has-site-overlay-open {
        overflow: hidden;
      }
      body.site-monobrand .fullscreen-menu {
        z-index: 1000;
        display: grid;
        place-items: start center;
        padding: clamp(56px, 7.2vh, 108px) 24px;
        background: rgba(31, 31, 31, 0.38);
      }
      body.site-monobrand .fullscreen-menu__canvas {
        width: min(calc(100vw - 96px), 1440px);
        height: min(84vh, 940px);
        min-height: 700px;
        margin: 0;
        padding: clamp(58px, 5.4vw, 88px) clamp(74px, 6vw, 104px) clamp(74px, 6.2vw, 112px);
        border-radius: clamp(26px, 2.4vw, 42px);
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(90deg, var(--fiamm-red, #e30613), color-mix(in srgb, var(--fiamm-red, #e30613) 22%, transparent)) top left / 100% 5px no-repeat,
          linear-gradient(135deg, color-mix(in srgb, var(--fiamm-surface-strong, #22252a) 92%, #ffffff), var(--fiamm-surface-strong, #22252a));
        overflow: auto;
        overscroll-behavior: contain;
      }
      body.site-monobrand .fullscreen-menu__brand {
        display: none;
      }
      body.site-monobrand .fullscreen-menu__close {
        top: clamp(32px, 3.2vw, 48px);
        right: clamp(32px, 3.2vw, 48px);
        width: 54px;
        height: 54px;
        opacity: 0.68;
      }
      body.site-monobrand .fullscreen-menu__close-icon,
      body.site-monobrand .fullscreen-menu__close-asset {
        width: 46px;
        height: 46px;
      }
      body.site-monobrand .fullscreen-menu__layout {
        display: grid;
        grid-template-columns: minmax(260px, 0.95fr) minmax(320px, 1.05fr) minmax(280px, 0.9fr);
        gap: clamp(54px, 7vw, 118px);
        height: 100%;
        min-height: 0;
        padding: 0;
        align-items: start;
        overflow: visible;
      }
      body.site-monobrand .fullscreen-menu__nav {
        display: contents;
      }
      body.site-monobrand [data-menu-primary] {
        order: 0;
        grid-column: 1;
        grid-row: 1 / span 2;
        display: flex;
        flex-direction: column;
        gap: clamp(28px, 4.3vh, 50px);
      }
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item {
        width: fit-content;
        min-height: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
      }
      body.site-monobrand .fullscreen-menu__surface-title {
        font-size: clamp(2.35rem, 3vw, 3.8rem);
        font-weight: 900;
      }
      body.site-monobrand .fullscreen-menu__surface-desc {
        display: none;
      }
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item:hover,
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item:focus-visible,
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item.is-active {
        background: transparent;
        transform: none;
      }
      body.site-monobrand [data-menu-aux] {
        order: 1;
        grid-column: 2;
        grid-row: 1;
        display: flex;
        flex-direction: column;
        gap: clamp(20px, 3vh, 34px);
        margin: 0;
        padding: 0;
        border: 0;
      }
      body.site-monobrand .fullscreen-menu__item--aux {
        width: fit-content;
        color: #ffffff;
        font-size: clamp(1.65rem, 2vw, 2.45rem);
        font-weight: 700;
        line-height: 1.08;
      }
      body.site-monobrand .fullscreen-menu__item--aux:first-child::before {
        width: 0.5em;
        height: 0.5em;
        border-width: 0.1em;
      }
      body.site-monobrand .fullscreen-menu__legal {
        grid-column: 2;
        grid-row: 2;
        display: flex;
        flex-direction: column;
        gap: clamp(18px, 2.3vh, 28px);
        margin-top: clamp(44px, 6vh, 70px);
      }
      body.site-monobrand .fullscreen-menu__legal a {
        color: rgba(255, 255, 255, 0.86);
        font-size: clamp(1.45rem, 1.78vw, 2rem);
        font-weight: 400;
        line-height: 1.08;
        text-decoration: none;
      }
      body.site-monobrand .fullscreen-menu__desktop-contact {
        order: 2;
        grid-column: 3;
        grid-row: 1 / span 2;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: clamp(20px, 3vh, 30px);
        color: #ffffff;
        font-family: var(--site-font-heading);
      }
      body.site-monobrand .fullscreen-menu__desktop-contact a {
        color: #ffffff;
        font-size: clamp(1.8rem, 2.35vw, 3rem);
        font-weight: 900;
        line-height: 1.08;
        text-decoration: none;
      }
      body.site-monobrand .fullscreen-menu__socials {
        display: flex;
        gap: 18px;
      }
      body.site-monobrand .fullscreen-menu__socials a {
        display: grid;
        place-items: center;
        width: 42px;
        height: 42px;
        border-radius: 50%;
        background: #ffffff;
        color: var(--fiamm-red, #e30613);
        font-size: 1.05rem;
        font-weight: 900;
      }
      body.site-monobrand .fullscreen-menu.is-mode-menu .fullscreen-menu__main {
        display: none;
      }
    }
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu {
        background:
          linear-gradient(90deg, var(--fiamm-red, #e30613), color-mix(in srgb, var(--fiamm-red, #e30613) 22%, transparent)) top left / 100% 5px no-repeat,
          var(--fiamm-surface-strong, #22252a);
      }
      body.site-monobrand .fullscreen-menu__canvas {
        width: 100%;
        min-height: 100dvh;
        padding: clamp(48px, 7vw, 72px) clamp(38px, 6vw, 64px) max(64px, env(safe-area-inset-bottom));
      }
      body.site-monobrand .fullscreen-menu__brand {
        display: none;
      }
      body.site-monobrand .fullscreen-menu__close {
        top: clamp(30px, 5vw, 54px);
        right: clamp(34px, 6vw, 60px);
        width: 60px;
        height: 60px;
        opacity: 0.7;
      }
      body.site-monobrand .fullscreen-menu__close-icon,
      body.site-monobrand .fullscreen-menu__close-asset {
        width: 58px;
        height: 58px;
      }
      body.site-monobrand .fullscreen-menu__layout {
        width: 100%;
        min-width: 0;
        padding: 0;
        gap: clamp(46px, 7vw, 72px);
      }
      body.site-monobrand .fullscreen-menu__nav {
        width: 100%;
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: clamp(46px, 7vw, 72px);
      }
      body.site-monobrand [data-menu-primary] {
        order: 0;
        grid-column: auto;
        grid-row: auto;
        grid-template-columns: 1fr;
        gap: clamp(36px, 7vw, 70px);
        width: 100%;
        min-width: 0;
        max-width: 100%;
        padding-top: clamp(44px, 11vw, 78px);
      }
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item {
        min-height: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
      }
      body.site-monobrand .fullscreen-menu__surface-title {
        font-size: clamp(3.1rem, 11vw, 5rem);
        font-weight: 400;
      }
      body.site-monobrand .fullscreen-menu__surface-desc {
        display: none;
      }
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item:hover,
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item:focus-visible,
      body.site-monobrand [data-menu-primary] .fullscreen-menu__item.is-active {
        background: transparent;
        transform: none;
      }
      body.site-monobrand .fullscreen-menu__mobile-contact {
        order: 1;
        grid-column: auto;
        grid-row: auto;
        gap: clamp(24px, 5vw, 38px);
        padding: 0;
        border: 0;
        width: 100%;
        min-width: 0;
        max-width: 100%;
      }
      body.site-monobrand .fullscreen-menu__mobile-contact a {
        max-width: 100%;
        font-size: clamp(1.9rem, 7vw, 3.15rem);
        font-weight: 900;
        white-space: nowrap;
      }
      body.site-monobrand .fullscreen-menu__mobile-socials {
        display: flex;
        gap: 24px;
        margin-top: 12px;
      }
      body.site-monobrand .fullscreen-menu__mobile-socials a {
        display: grid;
        place-items: center;
        width: 78px;
        height: 78px;
        border-radius: 50%;
        background: #ffffff;
        color: var(--fiamm-red, #e30613);
        font-size: 1.65rem;
        font-weight: 900;
        text-decoration: none;
      }
      body.site-monobrand [data-menu-aux] {
        order: 2;
        grid-column: auto;
        grid-row: auto;
        gap: clamp(26px, 5vw, 42px);
        width: 100%;
        min-width: 0;
        max-width: 100%;
      }
      body.site-monobrand .fullscreen-menu__item--aux {
        font-size: clamp(2.35rem, 7.2vw, 3.45rem);
        font-weight: 700;
      }
      body.site-monobrand .fullscreen-menu__legal {
        order: 3;
        grid-column: auto;
        grid-row: auto;
        display: flex;
        flex-direction: column;
        gap: clamp(22px, 4.4vw, 36px);
        margin-top: clamp(28px, 6vw, 54px);
        width: 100%;
        min-width: 0;
        max-width: 100%;
      }
      body.site-monobrand .fullscreen-menu__legal a {
        max-width: 100%;
        color: rgba(255, 255, 255, 0.9);
        font-size: clamp(2.2rem, 7vw, 3.35rem);
        font-weight: 400;
        line-height: 1.08;
        text-decoration: none;
        overflow-wrap: anywhere;
      }
      body.site-monobrand .fullscreen-menu__desktop-contact {
        display: none;
      }
    }
    body.site-monobrand {
      --monobrand-overlay-width-standard: min(calc(100vw - 80px), 1200px);
      --monobrand-overlay-padding-desktop: clamp(40px, 5vw, 55px) clamp(40px, 4vw, 60px) clamp(40px, 5vw, 60px);
      --monobrand-overlay-padding-mobile: 40px;
      --monobrand-overlay-radius-desktop: 30px;
      --monobrand-overlay-radius-mobile: 0;
      --monobrand-close-offset: 20px;
      --monobrand-close-size: 40px;
      --monobrand-menu-main-size: clamp(1.8rem, 2vw, 2.2rem);
      --monobrand-menu-aux-size: clamp(1.3rem, 1.4vw, 1.5rem);
      --monobrand-menu-contact-size: clamp(1.3rem, 1.4vw, 1.5rem);
    }
    body.site-monobrand .fullscreen-menu--fiamm {
      z-index: 1000;
      color: #ffffff;
      background: rgba(0, 0, 0, 0.63);
      font-family: var(--site-font-heading);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas {
      border: 1px solid rgba(255, 255, 255, 0.1);
      background:
        linear-gradient(90deg, var(--fiamm-red, #e30613), color-mix(in srgb, var(--fiamm-red, #e30613) 22%, transparent)) top left / 100% 5px no-repeat,
        linear-gradient(135deg, color-mix(in srgb, var(--fiamm-surface-strong, #22252a) 92%, #ffffff), var(--fiamm-surface-strong, #22252a));
      color: #ffffff;
      overflow: auto;
      overscroll-behavior: contain;
      scrollbar-width: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas::-webkit-scrollbar {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close {
      top: var(--monobrand-close-offset);
      right: var(--monobrand-close-offset);
      width: var(--monobrand-close-size);
      height: var(--monobrand-close-size);
      border: 1px solid rgba(255, 255, 255, 0.18);
      background: rgba(255, 255, 255, 0.12);
      color: rgba(255, 255, 255, 0.62);
      box-shadow: var(--shell-control-surface-shadow, 0 12px 26px rgba(0, 0, 0, 0.22));
      opacity: 1;
      -webkit-backdrop-filter: var(--shell-control-surface-blur, blur(12px) saturate(132%));
      backdrop-filter: var(--shell-control-surface-blur, blur(12px) saturate(132%));
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close:focus-visible {
      color: #ffffff;
      background: rgba(255, 255, 255, 0.2);
      transform: translateY(-1px);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close-icon,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close-asset {
      width: var(--monobrand-close-size);
      height: var(--monobrand-close-size);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a {
      font-family: var(--site-font-heading);
      line-height: 1.12;
      text-decoration: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item {
      width: fit-content;
      min-height: 0;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: #ffffff;
      opacity: 0.75;
      font-size: var(--monobrand-menu-main-size);
      font-weight: 700;
      letter-spacing: 0.15em;
      text-transform: uppercase;
    }
    /* Primary links carry the header's underline: sharp, opening from the
       centre, and the rule and the text take the accent together. Same gesture
       in the shell and in the overlay, because they are the same four links. */
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item {
      position: relative;
    }
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: -6px;
      height: 3px;
      border-radius: 0;
      background: var(--fiamm-red, #d81818);
      transform: scaleX(0);
      transition: transform 180ms ease;
    }
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item:hover::after,
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item:focus-visible::after {
      transform: scaleX(1);
    }
    /* One hover for every link on an overlay: to the accent. The primary
       column had its own treatment, which read as two different systems. */
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item:hover,
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a:focus-visible {
      color: var(--fiamm-red, #d81818);
      opacity: 1;
      background: transparent;
      transform: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__surface-title {
      display: block;
      font-size: inherit;
      font-weight: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      text-transform: inherit;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__surface-desc {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a {
      width: fit-content;
      color: #ffffff;
      opacity: 0.75;
      font-size: var(--monobrand-menu-aux-size);
      font-weight: 500;
      letter-spacing: 0;
      text-transform: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:focus-visible {
      opacity: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:first-child::before {
      content: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact {
      color: #ffffff;
      font-family: var(--site-font-heading);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a {
      max-width: 100%;
      color: #ffffff;
      opacity: 0.75;
      font-size: var(--monobrand-menu-contact-size);
      font-weight: 700;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a:focus-visible {
      opacity: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__contact-entry--messenger {
      text-transform: uppercase;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__socials,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-socials {
      display: none;
    }
    @media (min-width: 901px) {
      body.site-monobrand .fullscreen-menu--fiamm {
        display: grid;
        place-items: start center;
        padding: clamp(40px, 6.5vh, 100px) 40px;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas {
        width: var(--monobrand-overlay-width-standard);
        height: min(calc(100vh - 80px), 880px);
        min-height: 680px;
        margin: 0;
        padding: var(--monobrand-overlay-padding-desktop);
        border-radius: var(--monobrand-overlay-radius-desktop);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__layout {
        display: grid;
        grid-template-columns: minmax(240px, 0.9fr) minmax(260px, 1fr) minmax(260px, 0.95fr);
        column-gap: clamp(46px, 6vw, 90px);
        row-gap: 0;
        width: 100%;
        height: auto;
        min-height: 0;
        padding: 0;
        align-items: start;
        overflow: visible;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__nav {
        display: contents;
      }
      body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] {
        grid-column: 1;
        grid-row: 1 / span 2;
        display: flex;
        flex-direction: column;
        gap: clamp(28px, 5.2vh, 48px);
        padding: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm [data-menu-aux] {
        grid-column: 2;
        grid-row: 1;
        display: flex;
        flex-direction: column;
        gap: clamp(18px, 2.7vh, 28px);
        margin: 0;
        padding: 0;
        border: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal {
        grid-column: 2;
        grid-row: 2;
        display: flex;
        flex-direction: column;
        gap: clamp(18px, 2.7vh, 28px);
        margin-top: clamp(46px, 7vh, 74px);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact {
        grid-column: 3;
        grid-row: 1 / span 2;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        min-width: 0;
        gap: clamp(20px, 3.3vh, 32px);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact,
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__main,
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__brand {
        display: none;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__layout {
        display: block;
      }
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) .fullscreen-menu__nav,
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) [data-menu-primary],
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) [data-menu-aux],
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) .fullscreen-menu__desktop-contact,
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) .fullscreen-menu__legal {
        display: none;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__main,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__main,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__main {
        display: block;
        width: 100%;
        padding: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-form,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-panel,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__notice-panel,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__messenger-panel {
        display: block;
        margin: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-panel {
        margin-top: clamp(28px, 4vh, 44px);
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-form {
        width: min(50%, 560px);
        min-width: 320px;
      }
    }
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu--fiamm {
        background:
          linear-gradient(90deg, var(--fiamm-red, #e30613), color-mix(in srgb, var(--fiamm-red, #e30613) 22%, transparent)) top left / 100% 5px no-repeat,
          var(--fiamm-surface-strong, #22252a);
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas {
        width: 100%;
        min-width: 100%;
        min-height: 100dvh;
        margin: 0;
        padding: var(--monobrand-overlay-padding-mobile) var(--monobrand-overlay-padding-mobile) max(64px, env(safe-area-inset-bottom));
        border-radius: var(--monobrand-overlay-radius-mobile);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__nav {
        display: flex;
        flex-direction: column;
        width: 100%;
        min-width: 0;
        gap: clamp(44px, 7vw, 70px);
        padding: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] {
        order: 0;
        display: flex;
        flex-direction: column;
        gap: clamp(40px, 8vw, 72px);
        width: 100%;
        padding-top: clamp(96px, 16vw, 128px);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact {
        order: 1;
        display: flex;
        flex-direction: column;
        gap: clamp(20px, 4vw, 32px);
        width: 100%;
        min-width: 0;
        padding: 0;
        border: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm [data-menu-aux] {
        order: 2;
        display: flex;
        flex-direction: column;
        gap: clamp(18px, 4vw, 30px);
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal {
        order: 3;
        display: flex;
        flex-direction: column;
        gap: clamp(18px, 4vw, 30px);
        width: 100%;
        margin-top: clamp(28px, 5vw, 48px);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact,
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__main,
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__brand {
        display: none;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__layout {
        display: block;
      }
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) .fullscreen-menu__nav,
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) [data-menu-primary],
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) [data-menu-aux],
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) .fullscreen-menu__mobile-contact,
      body.site-monobrand .fullscreen-menu--fiamm:not(.is-mode-menu) .fullscreen-menu__legal {
        display: none;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__main,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__main,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__main {
        display: block;
        width: 100%;
        padding: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-form,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-panel,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__notice-panel,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__messenger-panel {
        display: block;
        margin: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-form {
        padding-top: clamp(96px, 16vw, 128px);
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-panel {
        margin-top: clamp(26px, 5vw, 42px);
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__notice-panel {
        padding-top: clamp(96px, 16vw, 128px);
      }
      body.site-monobrand .fiamm-notice {
        max-width: none;
      }
      body.site-monobrand .fiamm-notice__item summary {
        min-height: 76px;
      }
      /* Mobile keeps the tabulator: per Overlay Window §04 the tabs scroll
         horizontally when they do not fit. The old drill-down (tap a section,
         nav disappears, back arrow returns) is gone -- it was a different
         interaction, not a narrow-screen variant of this one.
         The surface also keeps the two-row stack here: a display:block override
         used to sit above and, being the more specific selector, quietly turned
         the grid off on phones, so the body stopped filling the screen. */
      body.site-monobrand .fiamm-messenger__nav {
        gap: 22px;
        padding-top: 0;
      }
      body.site-monobrand .fiamm-messenger__workspace {
        display: block;
      }
      body.site-monobrand .fiamm-messenger__section h2 {
        font-size: clamp(1.8rem, 2vw, 2.2rem);
      }
      body.site-monobrand .fiamm-messenger__form {
        grid-template-columns: 1fr;
        gap: clamp(22px, 5vw, 34px);
      }
      body.site-monobrand .fiamm-messenger__textarea,
      body.site-monobrand .fiamm-messenger__consent,
      body.site-monobrand .fiamm-messenger__submit {
        grid-column: 1;
      }
      body.site-monobrand .fiamm-messenger__field {
        min-height: 74px;
      }
      body.site-monobrand .fiamm-messenger__textarea {
        min-height: 520px;
      }
      body.site-monobrand .fiamm-messenger__cards {
        grid-template-columns: 1fr;
      }
      body.site-monobrand .fiamm-messenger__submit {
        justify-self: stretch;
      }
    }
    /* SBWS 28.06 correction: FIAMM overlay panels stay in the light theme. */
    body.site-monobrand .fullscreen-menu--fiamm {
      color: var(--fiamm-overlay-text, #1b1b1b);
      background: rgba(31, 31, 31, 0.38);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas {
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      background:
        linear-gradient(90deg, var(--fiamm-red, #d81818), color-mix(in srgb, var(--fiamm-red, #d81818) 24%, transparent)) top left / 100% 5px no-repeat,
        var(--fiamm-overlay-surface, #f1f1f1);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: 0 30px 90px -36px rgba(31, 31, 31, 0.45);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close {
      border: 0;
      background: var(--fiamm-overlay-control-bg, #e4e4e4);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: none;
      -webkit-backdrop-filter: none;
      backdrop-filter: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close:focus-visible {
      color: var(--fiamm-overlay-text, #1b1b1b);
      background: var(--fiamm-overlay-control-bg-hover, #d6d6d6);
      transform: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close-icon,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close-asset {
      width: 26px;
      height: 26px;
      filter: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item {
      color: var(--fiamm-overlay-text, #1b1b1b);
      opacity: 0.78;
    }
    /* Stated after the ink rules above, which otherwise repaint the link on
       hover and leave only the underline coloured. */
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item:hover,
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:focus-visible {
      color: var(--fiamm-red, #d81818);
      opacity: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item:hover,
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item:focus-visible {
      /* The accent, not the ink: this rule is the last word on the primary
         links and used to repaint them back to the body colour on hover. */
      color: var(--fiamm-red, #d81818);
      opacity: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a {
      color: var(--fiamm-overlay-text, #1b1b1b);
      opacity: 0.72;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a:focus-visible {
      opacity: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__surface-desc,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-hint,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__meta,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item p {
      color: var(--fiamm-overlay-muted, #6a6a6a);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-input,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer textarea {
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      background: #ffffff;
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-input::placeholder,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer textarea::placeholder {
      color: var(--fiamm-overlay-muted, #6a6a6a);
      opacity: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-panel,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-window,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item {
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      background: var(--fiamm-overlay-surface-raised, #f7f7f7);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-bubble--reply {
      background: var(--fiamm-red, #d81818);
      color: #ffffff;
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-bubble {
      background: #ffffff;
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: inset 0 0 0 1px var(--fiamm-overlay-line, #d8d8d8);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-bubble--reply {
      background: var(--fiamm-overlay-control-bg, #e4e4e4);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__title {
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__chip {
      background: var(--fiamm-overlay-control-bg, #e4e4e4);
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__remove {
      background: var(--fiamm-overlay-control-bg, #e4e4e4);
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__remove:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__remove:focus-visible {
      background: var(--fiamm-overlay-control-bg-hover, #d6d6d6);
      outline: none;
    }
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu--fiamm {
        background:
          linear-gradient(90deg, var(--fiamm-red, #d81818), color-mix(in srgb, var(--fiamm-red, #d81818) 24%, transparent)) top left / 100% 5px no-repeat,
          var(--fiamm-overlay-surface, #f1f1f1);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas {
        background: transparent;
        border: 0;
        box-shadow: none;
      }
    }
    /* SBWS follow-up: FIAMM overlays use the light panel standard, not status stripes. */
    body.site-monobrand .fullscreen-menu--fiamm {
      --fiamm-overlay-panel-height: 120px;
      --fiamm-overlay-slot-inset: 32px;
      --fiamm-overlay-content-x: 32px;
      --fiamm-overlay-control-size: 60px;
      --fiamm-overlay-glyph-size: 24px;
      color: var(--fiamm-overlay-text, #1b1b1b);
      background: rgba(31, 31, 31, 0.38);
    }
    body.site-monobrand .fullscreen-menu--fiamm,
    body.site-monobrand .fullscreen-menu--fiamm * {
      box-sizing: border-box;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas {
      display: grid;
      grid-template-rows: var(--fiamm-overlay-panel-height) minmax(0, 1fr) var(--fiamm-overlay-panel-height);
      width: min(calc(100% - 60px), var(--monobrand-overlay-width-standard, 1160px));
      height: min(calc(100dvh - 60px), 880px);
      min-height: min(720px, calc(100dvh - 60px));
      margin: 0;
      padding: 0 !important;
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      border-radius: var(--monobrand-overlay-radius-desktop, 30px);
      background: var(--fiamm-overlay-surface, #f1f1f1);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: 0 30px 90px -36px rgba(31, 31, 31, 0.45);
      overflow: hidden;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel {
      min-height: var(--fiamm-overlay-panel-height);
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
      align-items: center;
      gap: 12px;
      padding: 0 var(--fiamm-overlay-slot-inset);
      background: var(--fiamm-overlay-surface, #f1f1f1);
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel--top,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel--bottom {
      border: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__leading,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__center,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__trailing {
      min-width: 0;
      display: flex;
      align-items: center;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__center {
      justify-content: center;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__trailing {
      justify-content: flex-end;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel .fullscreen-menu__close {
      position: static;
      width: var(--fiamm-overlay-control-size);
      height: var(--fiamm-overlay-control-size);
      border: 0;
      border-radius: 50%;
      background: var(--fiamm-overlay-control-bg, #e4e4e4);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: none;
      opacity: 1;
      transform: none;
      -webkit-backdrop-filter: none;
      backdrop-filter: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel .fullscreen-menu__close:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel .fullscreen-menu__close:focus-visible {
      background: var(--fiamm-overlay-control-bg-hover, #d6d6d6);
      color: var(--fiamm-overlay-text, #1b1b1b);
      transform: none;
      outline: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close-icon,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close-asset {
      width: var(--fiamm-overlay-glyph-size);
      height: var(--fiamm-overlay-glyph-size);
      filter: brightness(0) saturate(100%);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__layout {
      grid-row: 2;
      width: 100%;
      height: 100%;
      min-height: 0;
      padding: 32px var(--fiamm-overlay-content-x);
      overflow: auto;
      scrollbar-width: thin;
    }
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__title,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item-title,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__section h2,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__card strong,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__contact-list strong,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__contact-list a,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__link {
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__surface-desc,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-hint,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__meta,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item p,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__card span,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__contact-list span,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__note,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__consent {
      color: var(--fiamm-overlay-muted, #6a6a6a);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-shell,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-panel,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-window,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__card {
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      background: var(--fiamm-overlay-surface-raised, #f7f7f7);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__field,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__textarea,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer textarea {
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      background: #ffffff;
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search::placeholder,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__field::placeholder,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__textarea::placeholder,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer textarea::placeholder {
      color: var(--fiamm-overlay-muted, #6a6a6a);
      opacity: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-bubble {
      background: #ffffff;
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: inset 0 0 0 1px var(--fiamm-overlay-line, #d8d8d8);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-bubble--reply,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__chip,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__remove {
      background: var(--fiamm-overlay-control-bg, #e4e4e4);
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    /* SBWS 28.06 · Notice Surface → Disclosure Lists + Overlay Panels canon. */
    /* Title lives in the top panel (leading slot); close stays trailing on the same line. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__title {
      display: none;
      margin: 0;
      min-width: 0;
      font-family: var(--site-font-heading);
      font-size: clamp(1.375rem, 1.6vw, 1.5rem);
      font-weight: 800;
      letter-spacing: 0.18em;
      line-height: 1.1;
      text-transform: uppercase;
      color: var(--fiamm-overlay-text, #1b1b1b);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fiamm-overlay-panel--top {
      grid-template-columns: minmax(0, 1fr) auto;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fiamm-overlay-panel--top .fiamm-overlay-panel__center {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fiamm-overlay-panel__title {
      display: block;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__canvas {
      width: min(calc(100% - 60px), 600px);
      height: auto;
      min-height: 0;
      max-height: calc(100dvh - 60px);
      grid-template-rows: var(--fiamm-overlay-panel-height) auto;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fiamm-overlay-panel--bottom {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__layout {
      height: auto;
      min-height: 0;
      overflow: visible;
      padding-block: 0 32px;
    }
    /* One narrow column (Notice Surface exception), not a grid of cards. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice {
      display: block;
      max-width: 600px;
      margin: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__group + .fiamm-notice__group {
      margin-top: 40px;
    }
    /* Section label: quiet caps over the group, outside the container, no chevron/line. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__section-label {
      margin: 0 0 16px;
      padding: 0 2px;
      font-family: var(--site-font-body);
      font-size: 0.78rem;
      font-weight: 700;
      letter-spacing: 0.15em;
      line-height: 1.2;
      text-transform: uppercase;
      color: var(--fiamm-overlay-muted, #6a6a6a);
    }
    /* One white list container; rows divided by a hairline, last row none. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__list {
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      border-radius: 16px;
      background: #ffffff;
      overflow: hidden;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item {
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item + .fiamm-notice__item {
      border-top: 1px solid #ececec;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item summary {
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 14px;
      min-height: 60px;
      padding: 16px 20px;
      font-size: 1rem;
      font-weight: 600;
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__row-title {
      font-size: 1rem;
      font-weight: 600;
      line-height: 1.3;
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    /* Chevron always present, neutral grey; darkens when open. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item summary::after {
      content: "";
      width: 24px;
      height: 24px;
      flex: none;
      background-color: #b0b0b0;
      -webkit-mask-image: url("/static/site-icons/std/down.svg");
      mask-image: url("/static/site-icons/std/down.svg");
      -webkit-mask-position: center;
      mask-position: center;
      -webkit-mask-repeat: no-repeat;
      mask-repeat: no-repeat;
      -webkit-mask-size: contain;
      mask-size: contain;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item[open] summary::after {
      background-color: var(--fiamm-overlay-text, #1b1b1b);
      -webkit-mask-image: url("/static/site-icons/std/up.svg");
      mask-image: url("/static/site-icons/std/up.svg");
    }
    /* Type → quiet badge (colour by type), not a filled chip. Time → mono meta. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__chip {
      min-height: 0;
      padding: 4px 9px;
      border-radius: 6px;
      font-size: 0.68rem;
      font-weight: 700;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__chip--tip {
      color: var(--fiamm-red, #d81818);
      background: color-mix(in srgb, var(--fiamm-red, #d81818) 12%, #ffffff);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__chip--system {
      color: #6a6a6a;
      background: #f0f0f0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__chip--promo {
      color: #1f8a5b;
      background: #e7f4ed;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__time {
      font-family: var(--site-font-mono, "Spline Sans Mono", ui-monospace, monospace);
      font-size: 0.8rem;
      color: var(--fiamm-overlay-muted, #6a6a6a);
    }
    /* Expanded body aligned to the title; actions live here, not in the row at rest. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__body {
      padding: 0 20px 16px;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item p {
      margin: 0;
      padding: 0;
      max-width: 480px;
      color: var(--fiamm-overlay-muted, #6a6a6a);
      font-size: 0.95rem;
      line-height: 1.6;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__actions {
      display: flex;
      gap: 20px;
      margin-top: 12px;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__action {
      padding: 0;
      border: 0;
      background: none;
      font-family: inherit;
      font-size: 0.82rem;
      font-weight: 600;
      line-height: 1;
      cursor: pointer;
      text-decoration: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__action--dismiss {
      color: var(--fiamm-overlay-muted, #6a6a6a);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__action--dismiss:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__action--dismiss:focus-visible {
      color: var(--fiamm-overlay-text, #1b1b1b);
      outline: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__action--go {
      color: var(--fiamm-red, #d81818);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__action--go:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__action--go:focus-visible {
      text-decoration: underline;
      outline: none;
    }
    @media (min-width: 901px) {
      body.site-monobrand .fullscreen-menu--fiamm {
        display: grid;
        place-items: center;
        padding: 40px;
      }
    }
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu--fiamm {
        --fiamm-overlay-panel-height: 80px;
        --fiamm-overlay-slot-inset: 16px;
        --fiamm-overlay-content-x: 20px;
        --fiamm-overlay-control-size: 44px;
        --fiamm-overlay-glyph-size: 24px;
        background: var(--fiamm-overlay-surface, #f1f1f1);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas {
        width: 100%;
        height: 100dvh;
        min-height: 100dvh;
        border: 0;
        border-radius: 0;
        box-shadow: none;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__canvas {
        grid-template-rows: var(--fiamm-overlay-panel-height) auto;
        max-height: 100dvh;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__layout {
        padding: 20px var(--fiamm-overlay-content-x);
      }
      body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary],
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-form,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__notice-panel,
      body.site-monobrand .fiamm-messenger__nav {
        padding-top: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel {
        padding-inline: var(--fiamm-overlay-slot-inset);
      }
    }
    /* SBWS 01.07: one centered overlay window for Menu/Search/Notice/Messenger. */
    body.site-monobrand .fullscreen-menu--fiamm {
      --monobrand-overlay-width-standard: 1120px;
      --fiamm-overlay-window-width: min(92vw, var(--monobrand-overlay-width-standard));
      --fiamm-overlay-window-max-height: min(86dvh, 820px);
      background: rgba(20, 20, 20, 0.5);
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__canvas,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__canvas,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__canvas {
      display: grid;
      grid-template-rows: var(--fiamm-overlay-panel-height) minmax(0, 1fr);
      width: var(--fiamm-overlay-window-width);
      height: auto;
      min-height: 0;
      max-height: var(--fiamm-overlay-window-max-height);
      border: 0;
      border-radius: var(--monobrand-overlay-radius-desktop, 30px);
      background: var(--fiamm-overlay-surface, #f1f1f1);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: 0 40px 90px -30px rgba(0, 0, 0, 0.6);
      overflow: hidden;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel--bottom {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel {
      min-height: var(--fiamm-overlay-panel-height);
      background: var(--fiamm-overlay-surface, #f1f1f1);
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__layout,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__layout,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__layout,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__layout {
      grid-row: 2;
      height: auto;
      min-height: 0;
      max-height: calc(var(--fiamm-overlay-window-max-height) - var(--fiamm-overlay-panel-height));
      padding: 28px var(--fiamm-overlay-content-x) 36px;
      overflow: auto;
      scrollbar-width: thin;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__layout {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 48px;
      align-items: start;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__nav {
      display: contents;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu [data-menu-primary] {
      grid-column: 1;
      grid-row: 1 / span 2;
      display: flex;
      flex-direction: column;
      gap: 32px;
      padding: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu [data-menu-aux] {
      grid-column: 2;
      grid-row: 1;
      display: flex;
      flex-direction: column;
      gap: 21px;
      margin: 0;
      padding: 0;
      border: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__legal {
      grid-column: 2;
      grid-row: 2;
      display: flex;
      flex-direction: column;
      gap: 21px;
      margin-top: 38px;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__desktop-contact {
      grid-column: 3;
      grid-row: 1 / span 2;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 28px;
      min-width: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__main,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__mobile-contact {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item {
      color: var(--fiamm-overlay-text, #1b1b1b);
      opacity: 1;
      font-size: 27px;
      font-weight: 800;
      letter-spacing: 0.11em;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux {
      color: #3a3a3a;
      opacity: 1;
      font-size: 17px;
      font-weight: 500;
      letter-spacing: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a {
      color: var(--fiamm-overlay-muted, #6a6a6a);
      opacity: 1;
      font-size: 17px;
      font-weight: 500;
      letter-spacing: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a {
      color: var(--fiamm-overlay-text, #1b1b1b);
      opacity: 1;
      font-size: 18px;
      font-weight: 700;
      letter-spacing: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__contact-entry--messenger {
      font-size: 15px;
      letter-spacing: 0.1em;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__desktop-contact a:focus-visible,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a:focus-visible {
      color: var(--fiamm-red, #d81818);
      opacity: 1;
      outline: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 32px;
      max-width: none;
      margin: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__group + .fiamm-notice__group {
      margin-top: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__item p {
      max-width: none;
    }
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu--fiamm {
        --fiamm-overlay-window-width: 100vw;
        --fiamm-overlay-window-max-height: 100dvh;
        background: rgba(20, 20, 20, 0.5);
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__canvas,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__canvas,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__canvas {
        width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        border-radius: 0;
        box-shadow: none;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__layout {
        max-height: calc(100dvh - var(--fiamm-overlay-panel-height));
        padding: 20px var(--fiamm-overlay-content-x) max(28px, env(safe-area-inset-bottom));
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__nav {
        display: flex;
        flex-direction: column;
        gap: 36px;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu [data-menu-primary],
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu [data-menu-aux],
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__legal,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__mobile-contact {
        display: flex;
        flex-direction: column;
        gap: 20px;
        width: 100%;
        margin: 0;
        padding: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__desktop-contact {
        display: none;
      }
      body.site-monobrand .fullscreen-menu--fiamm [data-menu-primary] .fullscreen-menu__item {
        font-size: 30px;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__item--aux,
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__legal a,
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__mobile-contact a {
        font-size: 17px;
        white-space: normal;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice {
        display: block;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__group + .fiamm-notice__group {
        margin-top: 32px;
      }
    }
    /* SBWS 01.07 follow-up: final Overlay Window contract for Menu/Search/Notice/Messenger. */
    body.site-monobrand .fullscreen-menu--fiamm {
      --monobrand-overlay-width-standard: 1120px;
      --fiamm-overlay-window-width: min(92vw, var(--monobrand-overlay-width-standard));
      --fiamm-overlay-window-max-height: min(86dvh, 820px);
      --fiamm-overlay-panel-height: 120px;
      /* Slot inset (30 = R) and content padding (32) are two different axes in
         the Overlay Panels standard; they are deliberately not the same number. */
      --fiamm-overlay-slot-inset: 30px;
      --fiamm-overlay-content-x: 32px;
      --fiamm-overlay-control-size: 60px;
      --fiamm-overlay-glyph-size: 24px;
      /* Overlay Window §01: the top-right 120x120 square belongs to close alone;
         the rest of the top strip is working space. The trailing track is that
         square minus the panel inset. */
      --fiamm-overlay-close-zone: 120px;
      /* Feedback stands at the height Main menu naturally takes, so switching
         tabs never resizes the window and the two surfaces match.
         22.09.2026: было 396px, и форма в него не влезала — при окне 1280x720
         тело формы занимало 409px против 327px видимых, поэтому согласие и
         кнопку «Отправить» приходилось искать прокруткой (замечание
         владельца). Высота поднята до 470px: при 86dvh это по-прежнему меньше
         потолка окна на всех рабочих экранах, а форма помещается целиком. */
      --fiamm-overlay-body-height: 470px;
      /* Overlay Surfaces §03: one tabulator for every surface. */
      --fiamm-overlay-tab-track: #e1e1e1;
      --fiamm-overlay-tab-idle: #9a9a9a;
      display: grid;
      place-items: center;
      padding: 40px;
      background: rgba(20, 20, 20, 0.5);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__canvas,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__canvas,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__canvas {
      display: grid;
      grid-template-rows: var(--fiamm-overlay-panel-height) minmax(0, auto);
      width: var(--fiamm-overlay-window-width);
      height: auto;
      min-height: 0;
      max-height: var(--fiamm-overlay-window-max-height);
      border: 0;
      border-radius: var(--monobrand-overlay-radius-desktop, 30px);
      background: var(--fiamm-overlay-surface, #f1f1f1);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: 0 40px 90px -30px rgba(0, 0, 0, 0.6);
      overflow: hidden;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel {
      min-height: var(--fiamm-overlay-panel-height);
      display: grid;
      grid-template-columns: minmax(160px, 0.72fr) minmax(0, 1.6fr) auto;
      align-items: center;
      gap: 16px;
      padding: 0 var(--fiamm-overlay-slot-inset);
      background: var(--fiamm-overlay-surface, #f1f1f1);
      color: var(--fiamm-overlay-text, #1b1b1b);
    }
    /* Kept after the generic panel rule on purpose. The bottom panel was hidden
       twice above, and both times the broad .fiamm-overlay-panel rule below set
       display:grid again at equal specificity -- so an empty, aria-hidden strip
       was still claiming a full panel height (120px desktop, 80 mobile) at the
       foot of every overlay, and the body lost exactly that much. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel--bottom {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__title {
      display: block;
      margin: 0;
      color: var(--fiamm-overlay-tab-idle, #9a9a9a);
      font-family: var(--site-font-general);
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 2.5px;
      line-height: 1.1;
      text-transform: uppercase;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__center {
      min-width: 0;
    }
    /* Canon: leading and trailing are anchored in the corners at inset = R, the
       centre is the flexible one, and the composition of a slot may change while
       its geometry may not. Pinning trailing to the last track keeps that true
       when leading/centre are hidden -- otherwise trailing slid into the first
       track and the close button ended up 168px short of the corner. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__trailing {
      grid-column: -2 / -1;
      display: flex;
      align-self: stretch;
      align-items: center;
      justify-content: flex-end;
      min-width: calc(var(--fiamm-overlay-close-zone) - var(--fiamm-overlay-slot-inset));
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fiamm-overlay-panel {
      grid-template-columns: minmax(0, 1fr) auto;
    }
    /* Every layer carries its caption, Search included: «ПОИСК» in the leading
       slot, the field in the centre, the close control in the corner. The old
       rule hid the leading slot for Search only ("captionless search"); the
       owner withdrew it (IS26090701 §3, CW260909 п.6) and the canon texts in
       Overlay Window §03 / Overlay Surfaces §02 now say the heading is
       mandatory. Desktop keeps one row: the caption is ~70px wide, so the
       panel height and the window height calculation do not change. */
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fiamm-overlay-panel {
      grid-template-columns: auto minmax(0, 1fr) auto;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fiamm-overlay-panel__leading {
      display: flex;
      align-items: center;
      padding-right: 24px;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fiamm-overlay-panel__center {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fiamm-overlay-panel__center {
      grid-column: 2;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel .fullscreen-menu__close {
      position: static;
      width: var(--fiamm-overlay-control-size);
      height: var(--fiamm-overlay-control-size);
      border: 0;
      border-radius: 50%;
      background: var(--fiamm-overlay-control-bg, #e4e4e4);
      color: var(--fiamm-overlay-text, #1b1b1b);
      box-shadow: none;
      opacity: 1;
      transform: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close-asset,
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__close-icon {
      width: var(--fiamm-overlay-glyph-size);
      height: var(--fiamm-overlay-glyph-size);
      filter: brightness(0) saturate(100%);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__layout,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__layout,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__layout,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__layout {
      grid-row: 2;
      height: auto;
      min-height: 0;
      max-height: calc(var(--fiamm-overlay-window-max-height) - var(--fiamm-overlay-panel-height));
      padding: 0 var(--fiamm-overlay-content-x) 36px;
      overflow: auto;
    }
    /* Обратная связь fills the body instead of running past it: the tab strip is
       pinned under the panel and the section body takes the rest and scrolls, so
       nothing extends below the window edge. The scroll belongs to the workspace
       here, not to the layout. */
    /* Overlay Surfaces §01: height follows content up to the ceiling. A fixed
       height here held every surface at full size no matter how little was in
       it, which is what made the windows look oversized. */
    /* 3.1 · Feedback holds one height across its three tabs. Hugging is right
       for surfaces you enter once, but here the reader switches tabs inside the
       window, and a window that resizes under the cursor jumps. The other
       surfaces still hug. */
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__layout {
      height: min(var(--fiamm-overlay-body-height, 396px), calc(var(--fiamm-overlay-window-max-height) - var(--fiamm-overlay-panel-height)));
      max-height: calc(var(--fiamm-overlay-window-max-height) - var(--fiamm-overlay-panel-height));
      padding-bottom: var(--fiamm-overlay-content-x);
      overflow: hidden;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__main,
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__messenger-panel {
      height: 100%;
      min-height: 0;
      margin-top: 0;
    }

    /* Телефон: окно занимает экран, а не держит настольную высоту -----------
       Высота обратной связи закреплена переменной со значением 396 px —
       осознанно, чтобы окно не прыгало при переключении вкладок. На настольном
       экране это верно. На телефоне 390x844 те же 396 px означают, что форме
       достаётся 338 px под содержимое, которому нужно 672: она обрывается на
       поле «Email», а под ней остаётся треть пустого экрана (замечание
       владельца 07.09.2026, пункт 4.1).

       Прыжка при переключении вкладок здесь не будет по другой причине: высота
       задана экраном, а не содержимым, и от вкладки не зависит.

       Специфичность повторяет правило, которое переопределяется. Первая попытка
       была написана короткой цепочкой `.fullscreen-menu.is-mode-messenger` и
       проиграла: у fiamm свои правила с префиксом `body.site-code-…
       .fullscreen-menu--fiamm`, и они сильнее. Сборка 609 это и показала —
       объявление доехало, а высота осталась прежней. */
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__layout,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__layout {
        height: auto;
        max-height: none;
        align-self: stretch;
        padding-bottom: 20px;
      }
    }
    /* The section fits the window instead of being measured piece by piece.
       Every element that had its own min-height -- a 320px message box, a 520px
       one on phones, a 520px chat window -- added up past the body and forced a
       scroll. Here the fixed rows (fields, footer, composer) are auto and the one
       elastic element takes what is left, so the sum cannot exceed the body at
       any viewport height. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__workspace {
      /* auto, not hidden: at realistic viewports nothing scrolls, and below them
         the surface degrades to a scrollbar rather than clipping the submit. */
      overflow-y: auto;
      scrollbar-width: thin;
      padding-top: 20px;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__section.is-active {
      display: grid;
      height: 100%;
      min-height: 0;
      grid-template-rows: minmax(0, 1fr);
    }
    /* The panel already carries "Обратная связь"; a second title inside the body
       repeated it and cost ~75px of the budget. Kept for aria-labelledby. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__section h2 {
      position: absolute;
      width: 1px;
      height: 1px;
      margin: -1px;
      padding: 0;
      overflow: hidden;
      clip-path: inset(50%);
      white-space: nowrap;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form {
      height: 100%;
      min-height: 0;
      grid-template-rows: auto auto minmax(0, 1fr) auto;
      gap: 14px 18px;
      align-content: stretch;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__field {
      min-height: 52px;
      padding: 0 22px;
      font-size: 1rem;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__textarea {
      grid-column: 1 / -1;
      min-height: 64px;
      height: 100%;
      padding: 18px 22px;
      border-radius: 20px;
      font-size: 1rem;
      resize: none;
    }
    /* Consent and submit share the last row instead of taking one each. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__consent {
      grid-column: 1;
      grid-template-columns: 22px minmax(0, 1fr);
      gap: 12px;
      align-items: center;
      font-size: 0.8125rem;
      line-height: 1.35;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__consent input {
      width: 22px;
      height: 22px;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__consent a {
      margin-top: 2px;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__submit {
      grid-column: 2;
      justify-self: end;
      align-self: center;
      min-height: 46px;
      padding: 0 30px;
      border: 0;
      background: var(--fiamm-red, #d81818);
      color: #ffffff;
      font-size: 0.8125rem;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__submit:hover,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__submit:focus-visible {
      background: var(--fiamm-brand-color-hover, #b31414);
      color: #ffffff;
    }
    /* 3.3 · single-line field, the same shape Search uses. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer input {
      width: 100%;
      min-height: 52px;
      padding: 0 22px;
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      border-radius: var(--fiamm-pill-radius, 999px);
      background: #ffffff;
      color: var(--fiamm-overlay-text, #1b1b1b);
      font-family: inherit;
      font-size: 1rem;
      outline: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer input::placeholder {
      color: var(--fiamm-overlay-muted, #6a6a6a);
      opacity: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-shell {
      display: grid;
      grid-template-rows: minmax(0, 1fr) auto;
      gap: 14px;
      height: 100%;
      min-height: 0;
      max-width: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-window {
      min-height: 0;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      align-content: start;
      overflow-y: auto;
      scrollbar-width: thin;
    }
    /* Composer: field plus a round accent send button, per overlay_examples.png.
       It was an outlined "НАПИСАТЬ СЕЙЧАС" pill sitting under the field. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer {
      margin-top: 0;
      gap: 12px;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer textarea {
      grid-column: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-actions {
      grid-column: 2;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-actions .fiamm-messenger__link {
      width: 52px;
      height: 52px;
      min-height: 0;
      padding: 0;
      border: 0;
      border-radius: 50%;
      background: var(--fiamm-red, #d81818);
      color: #ffffff;
      font-size: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-actions .fiamm-messenger__link::after {
      content: "→";
      font-size: 22px;
      line-height: 1;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer textarea {
      min-height: 84px;
      height: 84px;
      padding: 16px 20px;
      border-radius: 20px;
      font-size: 1rem;
      resize: none;
    }
    /* Contacts read straight off the overlay surface. They were boxed in a
       raised panel, which put a container inside the window for no reason --
       there is nothing to separate them from. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__contact-list {
      align-content: start;
      gap: 14px;
      margin: 0 0 18px;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
    }
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto auto auto auto minmax(0, 1fr) auto auto;
        gap: 10px;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__field {
        min-height: 48px;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__textarea,
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__consent,
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__submit {
        grid-column: 1;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__submit {
        justify-self: stretch;
        min-height: 48px;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-chat-composer textarea {
        min-height: 72px;
        height: 72px;
      }
    }
    /* auto-fit rather than a fixed three-column track: this rule sits after the
       max-width:900px block and has the same specificity, so a hard 3-column
       grid here also won on phones and squeezed every group into a ~80px column
       while three quarters of the screen stayed empty. Collapsing by available
       width instead of by media query cannot be lost to source order. */
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-menu .fullscreen-menu__layout {
      padding-top: 0;
      display: grid;
      /* Three columns by concept, not by luck: four app surfaces, the aux links,
         and the contact block. gap 44 per Overlay Surfaces §02. */
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 44px;
      align-items: start;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__panel-search-form {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__panel-search-form {
      display: block;
      width: 100%;
    }
    body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__search-form {
      display: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-shell {
      min-height: 60px;
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      border-radius: 999px;
      background: #ffffff;
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 0 24px;
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-icon {
      width: 24px;
      height: 24px;
      flex: none;
      background: #9a9a9a;
      -webkit-mask: url("/static/site-icons/std/search.svg") center / contain no-repeat;
      mask: url("/static/site-icons/std/search.svg") center / contain no-repeat;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search {
      min-height: 0;
      height: 58px;
      padding: 0;
      border: 0;
      background: transparent;
      color: var(--fiamm-overlay-text, #1b1b1b);
      font-size: 18px;
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-panel {
      margin: 26px 0 0;
      border: 0;
      background: transparent;
      box-shadow: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__quick-grid {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin: 0;
      padding: 0;
      list-style: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__quick-grid a {
      display: inline-flex;
      align-items: center;
      min-height: 42px;
      padding: 0 18px;
      border-radius: 999px;
      background: #ffffff;
      color: var(--fiamm-overlay-text, #1b1b1b);
      font-size: 14px;
      font-weight: 600;
      text-decoration: none;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 24px 32px;
      max-width: none;
      margin: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice-tabs {
      grid-column: 1 / -1;
      display: flex;
      align-items: flex-end;
      gap: 28px;
      border-bottom: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      margin-bottom: 4px;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice-tabs__tab {
      appearance: none;
      border: 0;
      background: none;
      margin: 0 0 -1px;
      padding: 0 0 15px;
      color: var(--fiamm-overlay-muted, #6a6a6a);
      font-family: inherit;
      font-size: 15px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      cursor: default;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice-tabs__tab.is-active {
      color: var(--fiamm-red, #d81818);
      border-bottom: 3px solid var(--fiamm-red, #d81818);
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__group + .fiamm-notice__group {
      margin-top: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__list {
      border: 1px solid var(--fiamm-overlay-line, #d8d8d8);
      border-radius: 16px;
      background: #ffffff;
      overflow: hidden;
    }
    @media (max-width: 900px) {
      body.site-monobrand .fullscreen-menu--fiamm {
        --fiamm-overlay-window-width: 100vw;
        --fiamm-overlay-window-max-height: 100dvh;
        --fiamm-overlay-panel-height: 80px;
        --fiamm-overlay-slot-inset: 16px;
        --fiamm-overlay-content-x: 20px;
        --fiamm-overlay-control-size: 44px;
        --fiamm-overlay-glyph-size: 24px;
        --fiamm-overlay-close-zone: 80px;
        padding: 0;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__canvas,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-notice .fullscreen-menu__canvas,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fullscreen-menu__canvas,
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-messenger .fullscreen-menu__canvas {
        width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        border-radius: 0;
        box-shadow: none;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel {
        grid-template-columns: minmax(0, auto) minmax(0, 1fr) auto;
        gap: 10px;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-overlay-panel__title {
        font-size: 18px;
        letter-spacing: 0.12em;
      }
      /* Поиск получает заголовок, как остальные оверлеи -------------------
         `Overlay Surfaces` §2 говорит, что поиск — единственный оверлей
         намеренно без подписи, и правило выше это исполняло. Владелец
         07.09.2026 решил иначе: на телефоне четыре режима одного окна должны
         называться одинаково, иначе поиск читается как чужая поверхность.

         Панель становится двухрядной: сверху имя и крестик, под ними поле.
         В один ряд не помещается — «Поиск» плюс крестик оставляют полю около
         240 px, и подсказка обрезается на середине.

         Только для узких экранов. На настольном высота панели участвует в
         расчёте высоты окна (`--fiamm-overlay-panel-height`), и двухрядная
         панель сдвинула бы содержимое всех четырёх режимов; менять это надо
         вместе с каноном, а не мимоходом. */
      /* Высота панели у поиска задаётся переменной, а не самой панелью: от
         неё считаются и ряд сетки канвы, и потолок высоты окна. Панель,
         выросшая мимо переменной, остаётся зажатой рядом в 80 px, и второй ряд
         наезжает на содержимое — что и случилось при первой попытке. */
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search {
        --fiamm-overlay-panel-height: 136px;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fiamm-overlay-panel {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
          "lead close"
          "center center";
        row-gap: 12px;
        align-items: center;
        align-content: center;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fiamm-overlay-panel__leading {
        display: flex;
        grid-area: lead;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fiamm-overlay-panel__trailing {
        grid-area: close;
      }
      body.site-monobrand .fullscreen-menu--fiamm.is-mode-search .fiamm-overlay-panel__center {
        grid-area: center;
        justify-content: stretch;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search-shell {
        min-height: 44px;
        padding: 0 14px;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fullscreen-menu__search {
        height: 42px;
        font-size: 14px;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice {
        display: block;
      }
      body.site-monobrand .fullscreen-menu--fiamm .fiamm-notice__group + .fiamm-notice__group {
        margin-top: 28px;
      }
    }
  

    /* --- Форма заявки в оверлее -------------------------------------------
       27.08.2026. Форма стала общим блоком контактов (`_fiamm_contact_fields`),
       который раскладывает поля сам. А сетка формы осталась двухколоночной от
       прежней разметки: блок полей уезжал в первую колонку, согласие и кнопка —
       во вторую, рядом с полями (DS26082703, скрин Сергея). Одна колонка: за
       раскладку отвечает один слой, а не два.
    */
    body.site-monobrand .fiamm-messenger__form,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      grid-template-rows: none;
      align-content: start;
      gap: 16px;
    }
    /* Все дети формы занимают единственную колонку — перечислять их по классам
       оказалось недостаточно. Правило `.fiamm-messenger__submit { grid-column: 2 }`
       ниже по файлу ставило кнопку во вторую колонку, которой в шаблоне сетки
       нет; браузер создавал её неявно и раскладывал по содержимому, а согласие
       уезжало туда же. Наружу это выглядело как «поля сместились и форма не на
       всю ширину» (осмотр Сергея 29.08.2026). */
    body.site-monobrand .fiamm-messenger__form > *,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form > * {
      grid-column: 1 / -1;
      justify-self: stretch;
    }
    /* Поля в оверлее — те же, что в корзине и на форме запроса: одна форма на
       сайте, а не три разных. Прежние `.fiamm-messenger__field` с полупрозрачным
       фоном остались для чата, где они и стоят. */
    body.site-monobrand .fiamm-messenger__form .fiamm-contact-fields input,
    body.site-monobrand .fiamm-messenger__form .fiamm-contact-fields textarea {
      background: #ffffff;
      border-color: #e4e4e4;
      color: var(--fiamm-ink, #1b1b1b);
      font-family: inherit;
      /* Размер и насыщенность — общие для всех форм сайта (`site_base.css`):
         здесь они больше не переопределяются, иначе оверлей опять разошёлся бы
         со страницей запроса и корзиной. */
      font-size: 16px;
      font-weight: 600;
    }
    /* Высоту поля запроса в оверлее задаёт остаток окна, а не атрибут
       `rows="6"` в общем блоке полей. Шесть строк — это 177px; вместе с шапкой,
       рядом полей и строкой отправки они не помещались в тело окна, и форма
       уходила под прокрутку. На странице запроса и в корзине высота прежняя:
       там поле не соревнуется с окном. */
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form {
      grid-template-rows: minmax(0, 1fr) auto;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form .fiamm-contact-fields {
      display: grid;
      grid-template-rows: auto auto minmax(96px, 1fr);
      gap: 14px;
      min-height: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form .fiamm-contact-fields__head,
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form .fiamm-contact-fields__row {
      margin-bottom: 0;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form .fiamm-contact-fields__message {
      display: grid;
      min-height: 0;
    }
    body.site-monobrand .fiamm-messenger__form .fiamm-contact-fields textarea {
      min-height: 96px;
    }
    body.site-monobrand .fullscreen-menu--fiamm .fiamm-messenger__form .fiamm-contact-fields textarea {
      height: 100%;
      /* Ручное растягивание сломало бы раскладку окна: высоту держит сетка. */
      resize: none;
    }
    body.site-monobrand .fiamm-messenger__form .fiamm-contact-form__submit {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      flex-wrap: wrap;
    }

    /* --- «Пока не доступно» ------------------------------------------------
       Общая заглушка сайта: раздел, которого ещё нет, называется неготовым, а
       не отдаётся как `404` (DS26082703 §5).
    */
    .site-soon[hidden] {
      display: none;
    }
    .site-soon {
      position: fixed;
      inset: 0;
      z-index: 120;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 24px;
    }
    .site-soon__backdrop {
      position: absolute;
      inset: 0;
      background: rgba(12, 14, 17, 0.55);
    }
    .site-soon__window {
      position: relative;
      width: min(100%, 520px);
      padding: 32px 34px 28px;
      border-radius: 24px;
      background: #ffffff;
      box-shadow: 0 30px 80px -40px rgba(0, 0, 0, 0.6);
    }
    .site-soon__close {
      position: absolute;
      top: 16px;
      right: 16px;
      width: 40px;
      height: 40px;
      border: 0;
      border-radius: 999px;
      background: #f1f1f1;
      color: #5a5a5a;
      font-size: 22px;
      line-height: 1;
      cursor: pointer;
    }
    .site-soon__close:hover,
    .site-soon__close:focus-visible {
      background: var(--fiamm-red, #e30613);
      color: #ffffff;
      outline: none;
    }
    .site-soon__title {
      margin: 0 0 8px;
      font-family: var(--site-font-heading);
      font-size: 1.4rem;
      font-weight: 800;
    }
    .site-soon__what {
      margin: 0 0 10px;
      color: var(--fiamm-red, #e30613);
      font-size: 0.95rem;
      font-weight: 700;
    }
    .site-soon__what:empty {
      display: none;
    }
    .site-soon__lead {
      margin: 0 0 22px;
      color: #6a6a6a;
      font-size: 0.98rem;
      line-height: 1.5;
    }
    .site-soon__actions {
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
    }
