﻿.page-main {
  padding-top: 1.875rem;
  padding-bottom: var(--section-space-xxl);
}

.page-template {
  display: grid;
  gap: clamp(2rem, 3.125vw, 3.75rem); /* 60px at 1920px per Figma */
}

@media (min-width: 64rem) {
  .page-template {
    gap: 3rem;
  }

  body:not([data-page="home"]) .page-section {
    padding-block: clamp(3rem, 3.75vw, 4.5rem);
  }

  body:not([data-page="home"]) .page-section--compact {
    padding-bottom: clamp(2rem, 2.8vw, 3rem);
  }

  body:not([data-page="home"]) .page-template {
    gap: clamp(1.5rem, 2.2vw, 2.5rem);
  }

  body:not([data-page="home"]) .page-title {
    font-size: clamp(2rem, 2.6vw, 3.125rem);
    line-height: 0.92;
  }

  body:not([data-page="home"]) .page-hero__heading {
    gap: 0.75rem;
    margin-top: clamp(2rem, 3vw, 3.5rem);
  }

  /* Reused homepage sections must keep homepage spacing when embedded on inner pages. */
  body:is([data-page="home"], [data-page="catalog"]) .page-section--home-advantages {
    padding-block: 0;
  }

  body:is([data-page="home"], [data-page="catalog"]) .page-section--home-advantages .container.page-template {
    gap: 0;
  }

  body:is([data-page="home"], [data-page="catalog"]) .page-section--home-advantages .section-heading {
    gap: var(--section-heading-gap);
    padding-bottom: 0;
    border-bottom: 0;
  }

  body:is([data-page="home"], [data-page="catalog"]) .page-section--home-advantages .section-heading__content {
    gap: 1rem;
  }

  body:is([data-page="home"], [data-page="catalog"]) .page-section--home-advantages .section-heading__title {
    max-width: min(73rem, 100%);
  }

  body:is([data-page="login"], [data-page="account"]) .page-main > .page-section:first-child.page-section--compact {
    padding-top: 0;
    padding-bottom: 4.375rem;
  }

  body:is([data-page="login"], [data-page="account"]) .page-main > .page-section:first-child.page-section--compact > .container {
    width: var(--container);
  }

  body[data-review-state] .page-main > .page-section:first-child.page-section--compact > .container {
    display: grid;
    justify-items: start;
    align-items: start;
  }
}

.page-hero,
.surface-panel,
.story-card,
.news-card,
.article-panel,
.state-card,
.promo-card,
.certificate-card {
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-md);
}

.page-hero,
.surface-panel,
.story-card,
.article-panel,
.state-card,
.promo-card {
  background:
    radial-gradient(circle at 82% 14%, rgba(255, 108, 0, 0.08), transparent 20%),
    rgba(16, 16, 16, 0.96);
}

.page-hero {
  display: grid;
  gap: 1.5rem;
  padding: clamp(1.5rem, 3vw, 2.5rem);
}

body:not([data-page="home"]) .page-hero {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body:not([data-page="home"]) .page-hero__heading {
  max-width: none;
  margin-top: clamp(3rem, 4.5vw, 4.75rem);
}

body:is([data-page="news"], [data-page="delivery"], [data-page="payment"]) .page-hero__heading {
  grid-template-columns: minmax(16rem, 40rem) minmax(0, 1fr);
  align-items: start;
  gap: clamp(2rem, 5vw, 6.875rem);
  row-gap: 0; /* heading rows stack without gap (tags row immediately below copy row) */
  margin-top: clamp(3rem, 6.302vw, 7.5625rem); /* 121px at 1920px + 24px page-hero gap = 145px from breadcrumbs */
}

body:is([data-page="news"], [data-page="delivery"], [data-page="payment"]) .page-copy {
  max-width: 72.1875rem;
  color: #ffffff;
  font-family: var(--font-heading);
  font-size: var(--text-h2);
  line-height: 1.03;
  letter-spacing: -0.02em;
}

@media (min-width: 64.001rem) {
  body:is([data-page="delivery"], [data-page="payment"]) .page-main {
    padding-bottom: 160px;
  }

  body:is([data-page="delivery"], [data-page="payment"]) .page-main > .page-section--compact {
    padding-top: 0;
    padding-bottom: 0;
  }

  body:is([data-page="delivery"], [data-page="payment"]) .page-hero {
    gap: 0;
  }

  body:is([data-page="delivery"], [data-page="payment"]) .page-hero__heading {
    grid-template-columns: minmax(16rem, 40rem) minmax(0, 72.1875rem);
    gap: 4.0625rem;
    row-gap: 0;
    margin-top: 9.0625rem;
  }

  body:is([data-page="delivery"], [data-page="payment"]) .page-title {
    font-size: 5rem;
    line-height: 0.9;
    letter-spacing: -0.1rem;
  }

  body:is([data-page="delivery"], [data-page="payment"]) .page-copy {
    font-size: 3.875rem;
    line-height: 0.86;
    letter-spacing: -0.0775rem;
  }

  body:is([data-page="delivery"], [data-page="payment"]) .page-hero__tags {
    margin-top: 2.3125rem;
  }

  body:is([data-page="delivery"], [data-page="payment"]) .page-hero__media {
    width: calc(100% + 0.5625rem);
    height: 46.875rem;
    margin-top: 1rem;
    margin-left: -0.25rem;
  }
}

.page-hero__media {
  height: clamp(24rem, 39vw, 46.875rem);
  margin-top: 1.75rem; /* 28px; with page-hero gap 24px в†’ 52px total from heading bottom to media top */
  overflow: hidden;
  border-radius: var(--radius-md);
}

.page-hero__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.page-hero__heading {
  display: grid;
  gap: 1rem;
  max-width: 68rem;
}

.page-title {
  color: var(--color-text);
  font-family: var(--font-heading);
  font-size: var(--text-h1);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -0.05em;
}

.page-title mark {
  color: var(--color-accent);
  background: transparent;
}

.page-copy {
  max-width: 52rem;
  color: rgba(255, 255, 255, 0.72);
}

.page-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.section-actions {
  margin-top: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.section-actions--center {
  justify-content: center;
}

.button--catalog-all {
  width: 28.125rem;
  min-height: 3.75rem;
  border-radius: var(--radius-sm);
  text-transform: none;
}

.page-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.5rem;
  color: rgba(255, 255, 255, 0.56);
  font-family: var(--font-ui);
  font-size: 0.875rem;
}

.section-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--section-tag-min-width);
  min-height: var(--section-tag-height);
  height: var(--section-tag-height);
  padding: var(--section-tag-padding-y) var(--section-tag-padding-x);
  border: 1px solid var(--section-tag-border-color);
  border-radius: var(--section-tag-radius);
  color: var(--section-tag-color);
  font-family: var(--section-tag-font-family);
  font-size: var(--section-tag-size);
  font-weight: 400;
  line-height: var(--section-tag-line);
  letter-spacing: var(--section-tag-tracking);
  text-transform: none;
}

.section-divider {
  position: relative;
  height: 0.375rem;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

/* In grid containers, the gap handles spacing — zero out divider margins */
.page-template > .section-divider,
.home-about > .section-divider,
.catalog-hero > .section-divider,
.product-about > .section-divider {
  margin: 0;
}

/* section-actions inside page-template: grid gap = 60px, Figma gap = 50px в†’ offset -10px */
.page-template > .section-actions {
  margin-top: -0.625rem;
}

.section-divider::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.92);
}

.section-divider::after,
.section-divider span {
  content: "";
  position: absolute;
  top: 50%;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 0;
  background: var(--color-accent);
  transform: translateY(-50%);
}

.section-divider::after {
  right: 0;
}

.section-divider span {
  left: 0;
}

.home-hero {
  position: relative;
  min-height: min(67.5rem, 100svh);
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: rgba(8, 8, 8, 0.98);
}

body[data-page="home"] .page-main {
  padding-top: 0;
}

body[data-page="home"] .page-main > .page-section:first-child {
  padding-top: 0;
}

body[data-page="home"] .page-main > .page-section:first-child .container {
  width: 100%;
}

/* Catalog page: hero section and card grid are visually adjacent (20px gap per Figma) */
body[data-page="catalog"] .page-section--compact {
  padding-top: 0;
  padding-bottom: 0;
}

body[data-page="catalog"] .page-main {
  padding-top: 8.375rem;
}

body[data-page="catalog"] .page-section:has(.catalog-card-grid) {
  padding-top: 1.25rem; /* 20px — matches card-gap and Figma gap between search and first card row */
}
/* Category-service: service-shell starts 60px after divider (Figma), default was 80px */
body[data-page="catalog"] .page-section:has(.service-shell) {
  padding-top: 3.75rem; /* 60px at 1920px */
}

body[data-page="catalog"] .page-section:has(.catalog-hero--category) + .page-section:has(.service-shell) {
  padding-top: 0.625rem;
}

@media (min-width: 64.001rem) {
  body[data-page="catalog"].page-category-product .service-shell--product {
    --category-product-sidebar-offset: calc(22.25rem + 1.25rem);
  }

  body[data-page="catalog"].page-category-product .service-shell--product .product-list__actions {
    width: calc(100% + var(--category-product-sidebar-offset));
    margin-left: calc(-1 * var(--category-product-sidebar-offset));
    margin-top: 4.0625rem;
  }

  body[data-page="catalog"].page-category-product .service-shell--product .product-list__more {
    min-height: 3.75rem;
    height: 3.75rem;
  }

  body[data-page="catalog"].page-category-product .page-main > section:nth-of-type(3) {
    padding-top: 5.5rem;
  }

  body[data-page="catalog"].page-category-product .page-main > section:nth-of-type(3) .page-template {
    row-gap: 3.75rem;
  }

  body[data-page="catalog"].page-category-product .page-main > section:nth-of-type(3) .section-heading {
    align-items: flex-start;
    min-height: 3.125rem;
    padding-bottom: 0;
  }

  body[data-page="catalog"].page-category-product .page-main > section:nth-of-type(3) .section-heading__title {
    max-width: 65.25rem;
    font-size: 3.875rem;
    line-height: 0.89;
    letter-spacing: -0.0775rem;
  }

  body[data-page="catalog"].page-category-product .page-main > section:nth-of-type(3) .section-tag {
    width: 10.0625rem;
    min-height: 3.125rem;
  }

  body[data-page="catalog"].page-category-product .page-main > section:nth-of-type(3) .section-divider {
    margin-top: -0.3125rem;
  }

  body[data-page="catalog"].page-category-product .product-about {
    gap: 0;
  }

  body[data-page="catalog"].page-category-product .product-about__grid {
    margin-bottom: 3.125rem;
  }

  body[data-page="catalog"].page-category-product .product-table {
    margin-bottom: 1.875rem;
  }

  body[data-page="catalog"].page-category-product .product-about > .page-copy + .page-copy {
    margin-top: 2.6875rem;
  }

  body[data-page="catalog"].page-category-product .product-about > .page-copy + .doc-card {
    margin-top: 1.1rem;
  }

  body[data-page="catalog"].page-category-product .product-about__copy .page-copy,
  body[data-page="catalog"].page-category-product .product-about > .page-copy {
    width: min(100%, 69.25rem);
    max-width: 69.25rem;
    color: #e9e6e6;
    font-family: var(--font-ui);
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0;
  }

  body[data-page="catalog"].page-category-product .product-about > .page-copy {
    margin: 0;
  }

  body[data-page="catalog"].page-category-product .page-section--catalog-recommendations {
    margin-top: 0.875rem;
  }
}

@media (min-width: 64.001rem) and (max-width: 96rem) {
  body[data-page="catalog"].page-category-product .service-shell--product {
    --category-product-sidebar-offset: calc(clamp(17rem, calc((100vw - (var(--container-gutter) * 2)) * 0.1914), 22.25rem) + 1.25rem);
  }
}

/* Promotions desktop: no visible hero divider, but 60px gap remains before the shell */
body[data-page="promotions"] .page-section--compact {
  padding-top: 0;
  padding-bottom: 0;
}

body[data-page="promotions"] .page-main {
  padding-top: 8.375rem;
}

body[data-page="promotions"] .page-section--flush-top {
  padding-top: 3.75rem;
}

body[data-page="promotions"] .page-section--catalog-recommendations {
  padding-top: 2.0625rem;
}

/* News page: hero flows directly into news-grid (62px gap per Figma) */
/* :has(.page-template > .news-grid) avoids matching news-article's "other articles" section */
body[data-page="news"] .page-section:has(.page-template > .news-grid) {
  padding-top: 0;
}
/* News section-actions: grid gap 60px – 30px margin = 30px from last card to button (Figma) */
body[data-page="news"] .page-template > .section-actions {
  margin-top: -1.875rem;
}

body[data-page="about"] .page-main > .page-section:first-child {
  min-height: 62.5rem;
  margin-top: -1.875rem;
  padding-top: 8.375rem;
  padding-bottom: 4.5rem;
  display: flex;
  align-items: stretch;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.32)),
    url("/static/images/figma/about-hero-furnace.jpg") center top / cover;
}

body[data-page="about"] .page-main > .page-section:first-child .container {
  display: flex;
}

body[data-page="about"] .page-hero {
  width: 100%;
  min-height: calc(62.5rem - 12.875rem);
  align-content: end;
}

body[data-page="about"] .page-hero__heading {
  max-width: 72.1875rem;
  margin-top: auto;
}

body[data-page="about"] .page-title {
  font-size: clamp(2.75rem, 3.5vw, 4.5rem);
  line-height: 0.92;
  letter-spacing: -0.02em;
}

body[data-page="about"] .page-copy {
  display: none;
}

.about-philosophy {
  display: grid;
  grid-template-columns: 26.875rem minmax(0, 1fr);
  gap: 0 1.25rem;
  align-items: start;
  padding-top: 0.75rem;
}

.about-philosophy__copy {
  display: grid;
  gap: 3.25rem;
}

.about-philosophy__title {
  max-width: 86.875rem;
  color: #ffffff;
  font-family: var(--font-heading);
  font-size: clamp(3.25rem, 4vw, 3.875rem);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.02em;
}

.about-philosophy__title mark,
.about-history__title mark {
  color: var(--color-accent);
  background: transparent;
}

.about-philosophy__body {
  max-width: 57.25rem;
  display: grid;
  gap: 1.5rem;
  color: var(--color-text-figma);
  font-family: var(--font-ui);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.4;
}

.about-philosophy__media {
  grid-column: 1 / -1;
  min-height: 46.875rem;
  margin-top: 3.125rem;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: var(--radius-md);
  background: #0f0f0f;
}

.about-philosophy__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.about-stats {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-top: 0.75rem;
}

.about-stats > .section-tag {
  position: absolute;
  top: 0;
  left: 1.875rem;
  z-index: 2;
}

.about-stats__board {
  position: relative;
  display: grid;
  grid-template-columns: 45.9375rem minmax(0, 1fr);
  min-height: 62.1875rem;
  margin-top: 6.875rem;
  overflow: hidden;
  background: #000000;
}

.about-stats__hero {
  position: relative;
  display: flex;
  align-items: flex-start;
  min-height: 100%;
  padding: 3.75rem 1.875rem 2rem;
  background: url("/static/images/figma/about-stats-welding.png") center / cover no-repeat;
}

.about-stats__hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.12), rgba(0, 0, 0, 0.08));
}

.about-stats__title,
.about-history__title {
  position: relative;
  z-index: 1;
  font-family: var(--font-heading);
  font-size: var(--text-h2);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.02em;
}

.about-stats__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: minmax(20.6875rem, 1fr);
  background:
    linear-gradient(rgba(22, 22, 22, 0.42), rgba(22, 22, 22, 0.42)),
    url("/static/images/figma/about-stats-overlay.png") center / cover no-repeat;
  border-top: 1px solid rgba(233, 230, 230, 0.16);
  border-bottom: 1px solid rgba(233, 230, 230, 0.16);
  border-left: 1px solid rgba(233, 230, 230, 0.16);
}

.about-stats__star {
  position: absolute;
  top: 0.25rem;
  right: 1.875rem;
  width: 2.8125rem;
  height: 3.125rem;
}

.about-stat {
  position: relative;
  display: grid;
  align-content: start;
  gap: 1.5rem;
  padding: 1.875rem;
  border-bottom: 1px solid rgba(233, 230, 230, 0.16);
}

.about-stat:nth-child(2n) {
  border-left: 1px solid rgba(233, 230, 230, 0.16);
}

.about-stat::before {
  content: "";
  position: absolute;
  width: 0.375rem;
  height: 0.375rem;
  margin-top: -2.0625rem;
  margin-left: -2.0625rem;
  background: var(--color-accent);
}

.about-stat:nth-child(2n)::before {
  margin-left: -2.25rem;
}

.about-stat p {
  color: var(--color-text-figma);
  font-family: var(--font-ui);
  font-size: 1.125rem;
  line-height: 1.4;
}

.about-stat span {
  margin-top: auto;
  color: #ffffff;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  line-height: 1.2;
  letter-spacing: -0.03em;
}

.about-stat strong {
  color: var(--color-accent);
  font-family: Arial, sans-serif;
  font-size: clamp(3.625rem, 4.8vw, 5rem);
  font-weight: 400;
  font-style: italic;
  line-height: 1.05;
  letter-spacing: -0.03em;
}

.about-history {
  display: grid;
  gap: 3rem;
}

.about-history__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.25rem;
}

.about-history__title {
  max-width: 57.5rem;
}

.about-history__divider {
  height: 0.375rem;
  background: url("/static/images/figma/about-history-divider.svg") center / 100% 100% no-repeat;
}

.about-history__track {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.875rem;
  align-items: start;
  padding-top: 3.75rem;
}

.about-history__track::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 17.1875rem;
  height: 0.875rem;
  background: url("/static/images/figma/about-history-rail.svg") center / 100% 100% no-repeat;
}

.about-history__item {
  display: grid;
  grid-template-rows: minmax(5.5rem, auto) var(--history-stem) 3.625rem auto auto;
  gap: 1rem;
  align-content: start;
  position: relative;
}

.about-history__summary {
  color: var(--color-text-figma);
  font-family: var(--font-ui);
  font-size: 1.125rem;
  line-height: 1.4;
  text-align: center;
}

.about-history__stem {
  width: 1px;
  justify-self: center;
  background: rgba(255, 108, 0, 0.78);
}

.about-history__marker {
  width: 3.625rem;
  height: 3.625rem;
  justify-self: center;
  border: 1.481px solid #515151;
  border-radius: var(--radius-md);
  background: rgba(27, 27, 27, 0.4);
  backdrop-filter: blur(3.63px);
  position: relative;
  z-index: 1;
}

.about-history__marker::before {
  content: "";
  position: absolute;
  inset: 0.6875rem;
  border-radius: var(--radius-sm);
  background: var(--color-accent);
}

.about-history__item--2016 {
  --history-stem: 11.25rem;
}

.about-history__item--2019,
.about-history__item--2024 {
  --history-stem: 6.5rem;
}

.about-history__item--2020,
.about-history__item--2025 {
  --history-stem: 10.75rem;
}

.about-history__item strong {
  color: #ffffff;
  font-family: var(--font-heading);
  font-size: clamp(2.5rem, 3.3vw, 3.875rem);
  font-weight: 400;
  font-style: italic;
  line-height: 0.9;
  letter-spacing: -0.06em;
  text-align: center;
}

.about-history__item span {
  color: var(--color-text-figma);
  font-family: var(--font-heading);
  font-size: 1.625rem;
  line-height: 1.2;
  letter-spacing: -0.03em;
  text-align: center;
}

.home-hero__media,
.story-split__media img,
.article-figure img,
.state-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-hero__media {
  position: absolute;
  inset: 0;
  object-position: center 54%;
}

.home-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.18)),
    linear-gradient(90deg, rgba(0, 0, 0, 0.26), rgba(0, 0, 0, 0.02) 52%, rgba(0, 0, 0, 0.22));
}

.home-hero__grid {
  position: relative;
  z-index: 1;
  height: 100%;
  min-height: inherit;
  padding: 1.875rem;
  padding-bottom: clamp(4.5rem, 12vh, 8rem);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 40.5rem);
  gap: clamp(2rem, 6.5vw, 12.5rem);
  align-items: end;
}

.home-hero__content,
.home-hero__aside {
  display: grid;
  gap: 1rem;
}

.home-hero__aside {
  justify-items: stretch;
}

.home-hero__subtitle {
  max-width: 40.5rem;
  color: var(--color-text-figma);
  font-family: var(--font-ui);
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1.3;
}

.home-hero__title {
  max-width: 55rem;
  color: var(--color-text);
  font-family: var(--font-heading);
  font-size: clamp(3rem, 3.8vw, 4.85rem);
  font-weight: 300;
  line-height: 0.9;
  letter-spacing: -0.02em;
}

.home-hero__aside .button {
  width: 100%;
  min-height: 3.9375rem;
  font-size: 1rem;
  font-weight: 500;
  text-transform: none;
}

.home-hero__copy {
  max-width: 30rem;
  color: rgba(255, 255, 255, 0.8);
}

.surface-panel {
  display: grid;
  gap: 1rem;
  padding: clamp(1.25rem, 2vw, 1.5rem);
}


.home-about {
  position: relative;
  display: grid;
  gap: clamp(2rem, 3.125vw, 3.75rem); /* 60px at 1920px per Figma */
  /* No border-top: section-divider element inside handles the separator */
}

.page-section--home-catalog .page-template {
  grid-template-columns: minmax(0, 1fr);
}

.home-about::after {
  content: "";
  position: absolute;
  top: -1.125rem;
  right: 0;
  width: 2.8125rem;
  height: 3.125rem;
  background: center / contain no-repeat url("/static/images/figma/about-stats-star.svg");
}

.home-about .section-tag {
  justify-self: start;
}

.home-about__grid {
  display: grid;
  grid-template-columns: minmax(0, 2.05fr) minmax(0, 1fr) minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 1.25rem 1.5rem;
  align-items: start;
}

.home-about__title {
  grid-column: 1;
  grid-row: 1;
  align-self: start;
  margin: 0;
  max-width: 57.5rem;
  font-family: var(--font-heading);
  font-size: var(--text-h2);
  font-weight: 400;
  line-height: 1.03;
  letter-spacing: -0.02em;
  color: var(--color-text);
}

.home-about__col {
  margin: 0;
  color: var(--color-text-figma);
  font-family: var(--font-ui);
  font-size: 1.125rem;
  line-height: 1.4;
}

.home-about__col:first-of-type {
  grid-column: 2;
  grid-row: 1;
}

.home-about__col:last-of-type {
  grid-column: 3;
  grid-row: 1;
}

.home-about__cta {
  grid-column: 2;
  grid-row: 2;
  justify-self: start;
  width: fit-content;
  min-width: min(28.125rem, 100%);
}

.home-about__media {
  position: relative;
  width: 100%;
  margin: 0;
  border-radius: var(--radius-md);
  overflow: hidden;
  aspect-ratio: 1860 / 750;
  background: #0d0d0d;
}

.home-about__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.contact-block.contact-block--compact {
  min-height: 0;
}

.contact-block--compact .contact-block__content {
  width: min(58.4375rem, calc(50.27% + 0.01px));
  min-height: 15rem;
  margin: 2rem 1.875rem 0 auto;
  padding: 1.8125rem 1.875rem 1.625rem;
  gap: 0.875rem;
}

.contact-block--compact .contact-block__title {
  max-width: 43rem;
  font-size: clamp(2.75rem, 2.95vw, 3.5rem);
  line-height: 0.95;
}

.contact-block--compact .contact-block__copy {
  max-width: 33rem;
}

.contact-block--compact .contact-block__panel {
  width: min(58.4375rem, calc(50.27% + 0.01px));
  min-height: 29.5rem;
  margin: 1rem 1.875rem 2rem auto;
  padding: 1.625rem 1.5rem 1.5rem;
  align-self: start;
}

body[data-page="home"] .page-section--home-help .contact-block--compact {
  min-height: clamp(49.625rem, 46.875rem + 3.4375vw, 53.75rem);
}

body[data-page="home"] .page-section--home-help .contact-block--compact .contact-block__content {
  width: min(54.75rem, calc(47.5% + 1.5rem));
  min-height: 14rem;
  margin: clamp(3rem, 2.5rem + 0.625vw, 3.75rem) 1.875rem 0 auto;
  padding: 1.875rem;
  gap: 0.875rem;
}

body[data-page="home"] .page-section--home-help .contact-block--compact .contact-block__title {
  max-width: 45.5625rem;
  font-size: 3.75rem;
  font-weight: 400;
  line-height: 3.4875rem;
  letter-spacing: -0.075rem;
}

body[data-page="home"] .page-section--home-help .contact-block--compact .contact-block__copy {
  max-width: 39.3125rem;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.32075rem;
}

body[data-page="home"] .page-section--home-help .contact-block--compact .contact-block__panel {
  width: min(54.75rem, calc(47.5% + 1.5rem));
  min-height: clamp(28rem, 26.3333333333rem + 2.0833333333vw, 30.5rem);
  margin: 1.125rem 1.875rem clamp(3rem, 2.5rem + 0.625vw, 3.75rem) auto;
  padding: 1.75rem 1.5rem 1.5rem;
}

body[data-page="home"] .page-section--home-help .contact-block--compact .contact-block__panel > .button {
  width: 17rem;
}

body[data-page="home"] #contact-request .contact-block__content {
  min-height: clamp(16.5625rem, 15rem + 1.953125vw, 18.4375rem);
}

body[data-page="home"] #contact-request .contact-block__title {
  max-width: 42rem;
  font-size: 3.5rem;
  line-height: 3.28125rem;
  letter-spacing: -0.07rem;
}

body[data-page="home"] #contact-request .contact-block__copy {
  max-width: 34rem;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.174;
}

@media (min-width: 64rem) {
  body:not([data-page="home"]) .contact-block--compact .contact-block__content {
    width: min(52rem, calc(50% + 2.5rem));
    min-height: 13rem;
    margin: 2.5rem 1.5rem 0 auto;
    padding: 1.5rem;
    gap: 0.875rem;
  }

  body:not([data-page="home"]) .contact-block--compact .contact-block__title {
    max-width: 31rem;
    font-size: clamp(2.5rem, 2.55vw, 3.25rem);
    line-height: 0.94;
  }

  body:not([data-page="home"]) .contact-block--compact .contact-block__copy {
    max-width: 31rem;
    font-size: 1rem;
  }

  body:not([data-page="home"]) .contact-block--compact .contact-block__panel {
    width: min(52rem, calc(50% + 2.5rem));
    min-height: 25.5rem;
    margin: 0.875rem 1.5rem 2.5rem auto;
    padding: 1.625rem 1.5rem 1.5rem;
  }
}

.story-split {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.story-split__content,
.story-split__media,
.story-split__aside {
  min-width: 0;
}

.story-split__content {
  grid-column: span 5;
  display: grid;
  gap: 1rem;
}

.story-split__media {
  position: relative;
  grid-column: span 7;
  min-height: 24rem;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-md);
}

.story-split--reverse .story-split__content {
  order: 2;
}

.story-split--reverse .story-split__media {
  order: 1;
}

.story-card {
  display: grid;
  gap: 1rem;
  padding: 1.25rem;
}

.story-card--light,
.promo-card,
.news-card,
.news-card--desktop-extra,
.certificate-card,
.state-card--light {
  color: #171717;
  background: rgba(255, 255, 255, 0.98);
}

.story-card--light .page-copy,
.promo-card__copy,
.news-card__copy,
.article-panel--light .page-copy,
.state-card--light .page-copy {
  color: rgba(17, 17, 17, 0.66);
}

.metric-grid,
.promo-grid,
.certificate-grid,
.news-grid {
  display: grid;
  gap: 1rem;
}

.metric-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.metric-card {
  display: grid;
  gap: 0.75rem;
  padding: 1.25rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-md);
  background: rgba(16, 16, 16, 0.96);
}

.metric-card__value {
  font-family: var(--font-heading);
  font-size: clamp(2rem, 2.4vw, 3rem);
  line-height: 0.96;
  letter-spacing: -0.04em;
}

.metric-card__label {
  color: rgba(255, 255, 255, 0.62);
  font-family: var(--font-ui);
  font-size: 0.875rem;
}

.content-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.content-block {
  display: grid;
  gap: 1rem;
  padding: 1.25rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-md);
  background: rgba(15, 15, 15, 0.96);
}

.content-block__title,
.story-card__title,
.promo-card__title,
.article-panel__title,
.state-card__title {
  font-family: var(--font-heading);
  font-size: clamp(1.75rem, 2vw, 2.5rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.content-list {
  display: grid;
  gap: 0.75rem;
  color: rgba(255, 255, 255, 0.72);
  font-family: var(--font-ui);
}

.content-list li {
  position: relative;
  padding-left: 1.25rem;
}

.content-list li::before {
  content: "";
  position: absolute;
  top: 0.65rem;
  left: 0;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 50%;
  background: var(--color-accent);
}

.promo-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.promo-card {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  gap: 0.875rem;
  min-height: 18rem;
  padding: 1.25rem;
}

.promo-card__eyebrow,
.news-card__date {
  color: rgba(17, 17, 17, 0.54);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  line-height: 1.05;
}

.promo-card__badge {
  min-height: 2rem;
  padding-inline: 0.75rem;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border-radius: 999px;
  color: #ffffff;
  font-family: var(--font-ui);
  font-size: 0.75rem;
  text-transform: uppercase;
  background: var(--color-accent);
}

.article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(18rem, 0.55fr);
  gap: 1rem;
  align-items: start;
}

.article-panel {
  display: grid;
  gap: 1.25rem;
  padding: clamp(1.25rem, 2vw, 1.5rem);
}

.article-panel--light {
  color: #171717;
  background: rgba(255, 255, 255, 0.98);
}

.article-figure {
  overflow: hidden;
  border-radius: var(--radius-md);
}

.article-figure--frame {
  aspect-ratio: 16 / 9;
}

.article-content {
  display: grid;
  gap: 1rem;
  color: rgba(255, 255, 255, 0.78);
}

.article-panel--light .article-content {
  color: rgba(17, 17, 17, 0.78);
}

.article-content h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.75rem, 2vw, 2.5rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.article-content blockquote {
  padding: 1.25rem;
  border-left: 3px solid var(--color-accent);
  background: rgba(255, 255, 255, 0.03);
  font-size: 1.125rem;
}

.article-panel--light .article-content blockquote {
  background: rgba(17, 17, 17, 0.05);
}

.article-aside-list {
  display: grid;
  gap: 0.75rem;
}

.article-aside-item {
  display: grid;
  gap: 0.375rem;
  padding: 0.875rem 0;
  border-bottom: 1px dashed rgba(255, 255, 255, 0.2);
}

.article-panel--light .article-aside-item {
  border-bottom-color: rgba(17, 17, 17, 0.16);
}

.article-aside-item:last-child {
  border-bottom: 0;
}

.article-aside-item strong {
  font-family: var(--font-ui);
  font-size: 1rem;
}

.news-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
}

.news-grid--home {
  position: relative;
  /* Figma: 4 cols Г— 450px + 20px gaps; col2 row1 empty (accent card spans it visually) */
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  padding-top: 1.5rem;
  isolation: isolate;
}

.page-section--home-news .section-heading--home-news .section-heading__content {
  width: min(55.875rem, 100%);
  max-width: 55.875rem;
}

body[data-page="home"] .page-section--home-news .section-divider {
  display: none;
}

@media (min-width: 64rem) {
  .page-section--home-news .page-template,
  body[data-page="news"] .page-section--news-feed .page-template,
  body[data-page="news-article"] .page-section--news-related .container {
    background: center top / 100% auto repeat-y url("/static/images/figma/Frame%201321317898.png");
  }
}

/* Figma homepage news layout: col1,col3,col4 in row1; col1,col2 in row2; col2 row1 empty */
.news-grid--home .news-card:nth-child(1) { grid-column: 1; grid-row: 1; }
.news-grid--home .news-card:nth-child(2) { grid-column: 3; grid-row: 1; }
.news-grid--home .news-card:nth-child(3) { grid-column: 4; grid-row: 1; }
.news-grid--home .news-card:nth-child(4) { grid-column: 1; grid-row: 2; }
.news-grid--home .news-card:nth-child(5) { grid-column: 2; grid-row: 2; }

.news-grid--home::before {
  display: none;
}

.news-card,
.news-card--desktop-extra {
  position: relative;
  display: grid;
  grid-template-rows: 20.5625rem 1fr;
  min-height: 37.875rem;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #515151;
  border-radius: var(--radius-md);
  background: #ffffff;
}

.news-card__link {
  position: absolute;
  inset: 0;
  z-index: 2;
}

.news-card__media {
  height: 20.5625rem;
  overflow: hidden;
}

.news-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.35s ease;
  will-change: transform;
}

@media (hover: hover) and (pointer: fine) {
  .news-card:hover .news-card__media img,
  .news-card__media:hover img {
    transform: scale(1.06);
  }
}

.news-card__body {
  display: grid;
  align-content: start;
  gap: 0.625rem;
  padding: 0.9375rem;
}

.news-card__title {
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.03em;
  color: #282727;
}

.news-card__copy {
  color: #2c2c2c;
  font-family: var(--font-ui);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.12;
}

.news-card--featured {
  min-height: 37.875rem;
}

.news-card--accent {
  color: #ffffff;
  background: var(--color-accent);
  border-color: #515151;
}

.news-card--accent .news-card__date,
.news-card--accent .news-card__title,
.news-card--accent .news-card__copy {
  color: #ffffff;
}

.news-card--accent .news-card__date {
  color: #dedcdc;
}

.advantage-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  align-items: stretch;
  padding: 0;
  border: 0;
  background: transparent;
}


body[data-page="home"] .advantage-grid--home {
  gap: 1.25rem;
}

.advantage-card {
  position: relative;
  isolation: isolate;
  grid-column: span 1;
  display: flex;
  flex-direction: column;
  min-height: min(25.625rem, 38vh);
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-md);
  background: #141414;
}

.advantage-card__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

.advantage-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.advantage-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 8, 8, 0.2) 0%, rgba(8, 8, 8, 0.82) 55%, rgba(8, 8, 8, 0.94) 100%);
}

.advantage-card__inner {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: start;
  gap: 1rem;
  height: 100%;
  padding: 1.25rem;
  box-sizing: border-box;
}

.advantage-card--wide {
  grid-column: span 2;
}

.advantage-card--accent {
  color: #ffffff;
  border-color: rgba(255, 108, 0, 0.55);
}

.advantage-card--accent .advantage-card__media::after {
  background: linear-gradient(180deg, rgba(255, 108, 0, 0.35) 0%, rgba(24, 12, 0, 0.88) 72%, rgba(10, 6, 0, 0.96) 100%);
}

.advantage-card__icon {
  width: fit-content;
  min-width: 2.75rem;
  min-height: 2.75rem;
  padding: 0 0.35rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 0.5rem;
  font-family: "Inter", var(--font-ui);
  font-size: 1.125rem;
  font-weight: 600;
  font-style: italic;
  line-height: 1;
  color: var(--color-accent);
  background: rgba(0, 0, 0, 0.45);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.advantage-card--accent .advantage-card__icon {
  color: #ffffff;
  background: rgba(0, 0, 0, 0.2);
  border-color: rgba(255, 255, 255, 0.28);
}

.advantage-card__title {
  margin: 0;
  font-family: var(--font-ui);
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}

.advantage-card__copy {
  margin: 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: 1rem;
  line-height: 1.45;
}

.advantage-card--accent .advantage-card__copy {
  color: rgba(255, 255, 255, 0.92);
}


.page-section--home-advantages {
  position: relative;
  overflow: clip;
  padding-block: 0;
  --advantages-heading-bottom-gap: 2.4853515625rem;
  --advantages-divider-bottom-gap: 1.5rem;
}

.home-advantages {
  position: relative;
}

.home-advantages__beam {
  display: none;
}

.page-section--home-advantages .container.page-template {
  position: relative;
  z-index: 1;
  gap: 0;
  border-radius: var(--radius-md);
  background: transparent;
}

.page-section--home-advantages .section-heading--home-advantages {
  margin-bottom: var(--advantages-heading-bottom-gap);
}

.home-advantages__frame {
  position: relative;
  overflow: hidden;
  margin-top: var(--advantages-divider-bottom-gap);
  padding: 0;
  border: 0;
  border-radius: var(--radius-md);
  background:
    linear-gradient(rgba(7, 7, 7, 0.56), rgba(7, 7, 7, 0.56)),
    center top / cover no-repeat url("/static/images/figma/utp.webp");
  background-blend-mode: multiply;
}

.home-advantages__frame::before {
  content: none;
}

/* Background glass texture + flame decorations aligned to Figma section 1:2218 */
.home-advantages__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  pointer-events: none;
  z-index: 0;
  opacity: 0;
  filter: none;
  transform: none;
}

.home-advantages__flame {
  position: absolute;
  z-index: 0;
  display: block;
  max-width: none;
  pointer-events: none;
  opacity: 0;
  mix-blend-mode: normal;
  filter: none;
}

.home-advantages__flame--tl {
  --advantages-flame-opacity: 0.2;
  top: 1.3125rem;
  left: -6.0625rem;
  width: 33.1875rem;
  height: 34.890625rem;
}

.home-advantages__flame--tr {
  --advantages-flame-opacity: 0.18;
  top: 1.5rem;
  right: -5.3125rem;
  left: auto;
  width: 45.9430625rem;
  height: 47.8978125rem;
}

.home-advantages__flame--bl {
  --advantages-flame-opacity: 0.22;
  top: auto;
  bottom: 0;
  left: -11.4375rem;
  width: 56.6875rem;
  height: 56.4821875rem;
}

/* Keep masonry and all interactive content above background */
.home-advantages__divider,
.home-advantages__masonry {
  position: relative;
  z-index: 1;
}

.home-advantages__frame-dot {
  position: absolute;
  z-index: 2;
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 50%;
  background: var(--color-accent);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.4);
}

/* No outer frame in Figma; hide corner dots. */
.home-advantages__frame-dot {
  display: none;
}

.home-advantages__frame-dot--tl {
  top: 0;
  left: -0.15625rem;
  transform: translateY(-50%);
}

.home-advantages__frame-dot--tr {
  top: 0;
  right: -0.15625rem;
  transform: translateY(-50%);
}

.home-advantages__frame-dot--bl {
  bottom: -0.15625rem;
  left: -0.15625rem;
}

.home-advantages__frame-dot--br {
  bottom: -0.15625rem;
  right: -0.15625rem;
}

.home-advantages__divider {
  margin: 0 0 var(--advantages-divider-bottom-gap);
}

.home-advantages__masonry {
  display: grid;
  gap: 1.25rem;
  padding: 0;
}

@media (min-width: 64rem) {
  .home-advantages__frame::after {
    content: none;
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: none;
    filter: none;
  }

  .home-advantages__masonry {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    justify-content: start;
    padding: 1.875rem;
  }

  /* Figma 4-col sparse grid: row1(col1,2,4), row2(col1,3), row3(col1,2,3-4) */
  .home-advantages__masonry > .home-adv-card:nth-child(1) { grid-column: 1; grid-row: 1; }
  .home-advantages__masonry > .home-adv-card:nth-child(2) { grid-column: 2; grid-row: 1; }
  .home-advantages__masonry > .home-adv-card:nth-child(3) { grid-column: 4; grid-row: 1; }
  .home-advantages__masonry > .home-adv-card:nth-child(4) { grid-column: 1; grid-row: 2; }
  .home-advantages__masonry > .home-adv-card:nth-child(5) { grid-column: 3; grid-row: 2; }
  .home-advantages__masonry > .home-adv-card:nth-child(6) { grid-column: 1; grid-row: 3; }
  .home-advantages__masonry > .home-adv-card:nth-child(7) { grid-column: 2; grid-row: 3; }
  .home-advantages__masonry > .home-adv-card:nth-child(8) { grid-column: 3 / 5; grid-row: 3; }
}

.home-adv-card {
  position: relative;
  display: grid;
  grid-template-rows: 5rem 6.25rem auto;
  align-content: stretch;
  min-width: 0;
  height: 25.625rem; /* 410px per Figma */
  padding: 1.25rem;
  border: 1px solid #515151;
  border-radius: 0.625rem;
  background: rgba(47, 47, 47, 0.8);
  backdrop-filter: blur(4.5rem);
  -webkit-backdrop-filter: blur(4.5rem);
}

.home-adv-card__row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  min-height: 5rem;
  margin: 0;
}

.home-adv-card__glyph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 4.0625rem;
  height: 4.0625rem;
  border-radius: 0.625rem;
  background: #ffffff;
  color: #141414;
}

.home-adv-card__glyph svg,
.home-adv-card__glyph img {
  display: block;
  width: 2.25rem;
  height: 2.25rem;
  object-fit: contain;
}

.home-adv-card__plus {
  flex-shrink: 0;
  width: 2.125rem;
  height: 2.125rem;
  margin: 0;
  padding: 0;
  border: none;
  background: center / 2.125rem 2.125rem no-repeat url("/static/images/figma/adv-plus-figma.svg");
  color: transparent;
  font-size: 0;
  line-height: 0;
  cursor: default;
}

.home-adv-card__title {
  max-width: 24.6875rem;
  margin: 0;
  padding-top: 0.625rem;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.95rem;
  letter-spacing: -0.04875rem;
  color: #ffffff;
}

.home-adv-card__copy {
  margin: 0;
  max-width: 24.6875rem;
  padding-top: 0.625rem;
  color: #e9e6e6;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.32075rem;
}

.home-adv-card--solid {
  border-color: #515151;
  background: #ff6c00;
  backdrop-filter: blur(4.5rem);
  -webkit-backdrop-filter: blur(4.5rem);
  box-shadow: none;
}

.home-adv-card--solid .home-adv-card__title {
  max-width: 24.6875rem;
  color: #ffffff;
}

.home-adv-card--solid .home-adv-card__copy {
  max-width: 30.0625rem;
  color: rgba(255, 255, 255, 0.94);
}

.home-adv-card--solid .home-adv-card__glyph {
  width: 5rem;
  height: 5rem;
}

.home-adv-card--solid .home-adv-card__glyph svg,
.home-adv-card--solid .home-adv-card__glyph img {
  width: 4.0625rem;
  height: 4.0625rem;
}

.home-adv-card--project .home-adv-card__title {
  font-weight: 400;
}

.home-adv-card__title-prefix {
  display: inline;
}

.home-adv-card__title-break {
  display: block;
}

.home-adv-card__glyph--on-solid {
  background: #ffffff;
  color: #1a1a1a;
}

.home-adv-card__plus--on-solid {
  background-image: url("/static/images/figma/adv-plus-solid-figma.svg");
}

@media (prefers-reduced-motion: reduce) {
  .home-advantages__beam {
    filter: none;
    opacity: 0.85;
  }
}

.page-section--home-process {
  --process-desktop-scale: var(--desktop-viewport-scale, clamp(0.6716559139, calc((100vw - (var(--container-gutter) * 2)) / 116.25rem), 1));
  --process-stage-scale: var(--process-desktop-scale);
  --process-panel-height: calc(35.875rem * var(--process-desktop-scale));
  --process-desktop-panel-ratio: 1214 / 574;
}

.process-layout {
  display: grid;
  align-items: start;
  min-width: 0;
}

.page-section--home-process .section-heading__content {
  max-width: 61.935483871%;
}

.page-section--home-process .process-layout {
  grid-template-columns: minmax(0, 626fr) minmax(0, 1214fr);
  gap: calc(100% * 20 / 1860);
}

@media (min-width: 64.001rem) {
  body:is([data-page="home"], [data-page="about"]) .page-section--home-process .section-heading {
    gap: calc(var(--section-heading-gap) * var(--process-desktop-scale));
    padding-bottom: calc(var(--section-heading-padding-bottom) * var(--process-desktop-scale));
  }

  body:is([data-page="home"], [data-page="about"]) .page-section--home-process .section-heading__content {
    width: min(calc(72rem * var(--process-desktop-scale)), 100%);
    max-width: min(calc(72rem * var(--process-desktop-scale)), 100%);
  }

  body:is([data-page="home"], [data-page="about"]) .page-section--home-process .section-heading__title {
    max-width: 100%;
    font-size: calc(var(--heading-desktop-size) * var(--process-desktop-scale));
    line-height: calc(var(--heading-desktop-line) * var(--process-desktop-scale));
    letter-spacing: calc(var(--heading-desktop-tracking) * var(--process-desktop-scale));
  }

  body:is([data-page="home"], [data-page="about"]) .page-section--home-process .section-tag {
    min-width: calc(var(--section-tag-min-width) * var(--process-desktop-scale));
    min-height: calc(var(--section-tag-height) * var(--process-desktop-scale));
    height: calc(var(--section-tag-height) * var(--process-desktop-scale));
    padding: calc(var(--section-tag-padding-y) * var(--process-desktop-scale)) calc(var(--section-tag-padding-x) * var(--process-desktop-scale));
    border-radius: calc(var(--section-tag-radius) * var(--process-desktop-scale));
    font-size: calc(var(--section-tag-size) * var(--process-desktop-scale));
    letter-spacing: calc(var(--section-tag-tracking) * var(--process-desktop-scale));
    white-space: nowrap;
  }

  body:is([data-page="home"], [data-page="about"]) .page-section--home-process .process-layout {
    width: min(100%, calc(116.25rem * var(--process-desktop-scale)));
    grid-template-columns: calc(39.125rem * var(--process-desktop-scale)) minmax(0, calc(75.875rem * var(--process-desktop-scale)));
    gap: calc(1.25rem * var(--process-desktop-scale));
  }
}

.process-menu {
  display: grid;
  grid-template-rows: repeat(6, minmax(0, 1fr));
  gap: calc(var(--process-panel-height) * 20 / 574);
  height: var(--process-panel-height);
}

.process-step {
  min-height: 0;
  height: auto;
  padding-inline: calc(1.25rem * var(--process-desktop-scale));
  display: flex;
  align-items: center;
  gap: calc(3.125rem * var(--process-desktop-scale));
  border: 0;
  border-radius: calc(0.625rem * var(--process-desktop-scale));
  color: #e9e6e6;
  background: #1d1d1d;
  text-align: left;
  cursor: pointer;
  transition:
    color var(--transition-fast),
    background var(--transition-fast),
    transform var(--transition-fast);
}

.process-step:hover {
  transform: translateY(-0.0625rem);
}

.process-step.is-active {
  color: #ffffff;
  background: var(--color-accent);
}

.process-step__index {
  flex-shrink: 0;
  color: inherit;
  font-family: Arial, sans-serif;
  font-size: calc(1.625rem * var(--process-desktop-scale));
  font-style: italic;
  font-weight: 400;
  line-height: 1.1499023438;
}

.process-step__label {
  color: inherit;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: calc(1.375rem * var(--process-desktop-scale));
  font-weight: 400;
  line-height: 0.9949999723;
  white-space: nowrap;
}

.process-step__label--mobile {
  display: none;
}

.process-panel {
  --process-desktop-content-top: 5.2264808362%;
  --process-desktop-content-left: 2.471169687%;
  --process-desktop-content-bottom: 3.1358885017%;
  --process-desktop-title-top: 30;
  --process-desktop-copy-top: 103;
  --process-desktop-lead-top: 208;
  --process-desktop-contacts-top: 271;
  --process-desktop-details-top: 249;
  --process-desktop-action-top: 503;
  --process-desktop-title-width: 43.6573309061%;
  --process-desktop-copy-width: 39.373970346%;
  --process-desktop-lead-width: 32.3723228995%;
  --process-desktop-action-width: 25.370675453%;
  --process-desktop-action-height: 9.2334494774%;
  --process-desktop-media-top: -5.4006968641%;
  --process-desktop-media-left: 53.7891268534%;
  --process-desktop-media-width: 68.2866556837%;
  --process-desktop-media-height: 85.1916376307%;
  --process-title-copy-gap: 29;
  --process-copy-next-gap: 35;
  --process-lead-next-gap: 26;
  --process-details-gap: 10;
  --process-desktop-contact-gap: calc(0.9375rem * var(--process-desktop-scale));
  --process-mobile-card-ratio: 360 / 475;
  --process-mobile-content-top: 5.2631578947%;
  --process-mobile-content-left: 4.1666666667%;
  --process-mobile-content-bottom: 3.1578947368%;
  --process-mobile-title-top: 25;
  --process-mobile-copy-top: 61;
  --process-mobile-lead-top: 154;
  --process-mobile-contacts-top: 210;
  --process-mobile-details-top: 186;
  --process-mobile-action-top: 410;
  --process-mobile-title-width: 53.6111111111%;
  --process-mobile-copy-width: 66.9444444444%;
  --process-mobile-lead-width: 78.3333333333%;
  --process-mobile-action-width: 91.6666666667%;
  --process-mobile-action-height: 10.5263157895%;
  --process-mobile-media-top: -10.3157894737%;
  --process-mobile-media-left: 55.5555555556%;
  --process-mobile-media-width: 99.032%;
  --process-mobile-media-height: 55.4493%;
  --process-mobile-title-copy-gap: 21px;
  --process-mobile-copy-next-gap: 25px;
  --process-mobile-lead-next-gap: 25px;
  --process-mobile-details-gap: 10px;
  --process-mobile-contact-gap: 11px;
  position: relative;
  min-height: 0;
  min-width: 0;
  background: none;
}

.process-panel [hidden] {
  display: none;
}

.process-panel__card {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: var(--process-desktop-panel-ratio);
  border-radius: calc(0.625rem * var(--process-desktop-scale));
  background: var(--color-accent);
  overflow: hidden;
}

.process-panel__content {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.process-panel__content > * {
  position: absolute;
  left: var(--process-desktop-content-left);
  margin-left: 0;
}

.process-panel__title,
.process-panel__copy,
.process-panel__lead,
.process-panel__contacts,
.process-panel__details,
.process-panel .button-light {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
}

.process-panel__title {
  top: calc(var(--process-desktop-title-top) * 1px * var(--process-stage-scale));
  width: var(--process-desktop-title-width);
  color: #ffffff;
  font-family: var(--font-ui);
  font-size: calc(3.875rem * var(--process-desktop-scale));
  font-weight: 500;
  line-height: 1.03;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

.process-panel__copy {
  top: calc(var(--process-desktop-copy-top) * 1px * var(--process-stage-scale));
  width: var(--process-desktop-copy-width);
  color: var(--color-text-figma);
  font-family: "Inter", var(--font-ui);
  font-size: calc(1.375rem * var(--process-desktop-scale));
  font-weight: 400;
  line-height: 1.2102272727;
}

.process-panel__lead {
  top: calc(var(--process-desktop-lead-top) * 1px * var(--process-stage-scale));
  width: var(--process-desktop-lead-width);
  color: #ffffff;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: calc(1.375rem * var(--process-desktop-scale));
  font-weight: 500;
  line-height: 0.988;
}

.process-panel__contacts {
  top: calc(var(--process-desktop-contacts-top) * 1px * var(--process-stage-scale));
  display: grid;
  gap: var(--process-desktop-contact-gap);
}

.process-panel__details {
  top: calc(var(--process-desktop-details-top) * 1px * var(--process-stage-scale));
  display: grid;
  gap: calc(var(--process-details-gap) * 1px * var(--process-desktop-scale));
}

.process-detail {
  display: inline-flex;
  align-items: center;
  gap: calc(0.625rem * var(--process-desktop-scale));
  color: #ffffff;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: calc(1rem * var(--process-desktop-scale));
  font-weight: 400;
  line-height: 1.005;
}

.page-section--home-process .process-panel[data-process-state="2"] .process-panel__copy {
  font-family: var(--font-ui);
  line-height: 1.1740000465;
}

.page-section--home-process .process-panel[data-process-state="4"] .process-panel__lead,
.page-section--home-process .process-panel[data-process-state="6"] .process-panel__lead {
  color: #ffffff;
  font-family: "Inter", var(--font-ui);
  font-weight: 400;
  line-height: 1.2102272727;
}

.page-section--home-process .process-panel[data-process-state="4"] .process-detail,
.page-section--home-process .process-panel[data-process-state="6"] .process-detail {
  gap: calc(0.625rem * var(--process-desktop-scale));
  font-size: calc(1.125rem * var(--process-desktop-scale));
  line-height: 1.07;
}

.page-section--home-process .process-panel[data-process-state="4"] .process-detail:nth-child(3),
.page-section--home-process .process-panel[data-process-state="6"] .process-detail:nth-child(n + 3) {
  letter-spacing: -0.06em;
  line-height: 0.9;
}

.page-section--home-process .process-panel[data-process-state="6"] .process-detail {
  align-items: flex-start;
}

.process-detail::before {
  content: "";
  width: calc(0.375rem * var(--process-desktop-scale));
  height: calc(0.375rem * var(--process-desktop-scale));
  border-radius: 50%;
  flex-shrink: 0;
  background: #ffffff;
}

.process-contact {
  display: inline-flex;
  align-items: center;
  gap: calc(1.25rem * var(--process-desktop-scale));
  color: #ffffff;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: calc(1.375rem * var(--process-desktop-scale));
  font-weight: 400;
  line-height: 1.0690909507;
}

.process-contact a,
.process-contact span {
  color: inherit;
  text-decoration: none;
}

.process-contact svg,
.process-contact img {
  width: calc(1.5rem * var(--process-desktop-scale));
  height: calc(1.5rem * var(--process-desktop-scale));
  flex-shrink: 0;
  display: block;
}

.process-contact svg {
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.process-panel__media {
  position: absolute;
  top: var(--process-desktop-media-top);
  left: var(--process-desktop-media-left);
  width: var(--process-desktop-media-width);
  height: var(--process-desktop-media-height);
  pointer-events: none;
}

.process-panel__media-image {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: right top;
}

.process-panel .button-light {
  top: calc(var(--process-desktop-action-top) * 1px * var(--process-stage-scale));
  width: var(--process-desktop-action-width);
  min-width: 0;
  height: var(--process-desktop-action-height);
  min-height: 0;
  padding: 0 calc(1.5rem * var(--process-desktop-scale));
  border-radius: calc(0.3125rem * var(--process-desktop-scale));
  box-shadow: none;
  font-family: var(--font-ui);
  font-size: calc(1.125rem * var(--process-desktop-scale));
  font-weight: 500;
  line-height: 1.174;
  text-transform: none;
  white-space: nowrap;
}

.page-section--home-process .process-panel[data-process-state="4"] .button-light,
.page-section--home-process .process-panel[data-process-state="6"] .button-light {
  font-size: calc(1rem * var(--process-desktop-scale));
}

.process-panel__nav {
  display: none;
}

.process-nav-button {
  width: 3.375rem;
  height: 3.375rem;
  border: 1px solid #c4c4c4;
  border-radius: 0.3125rem;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #c4c4c4;
}

.process-nav-button:not(:disabled):hover,
.process-nav-button:not(:disabled):focus-visible {
  border-color: var(--color-accent);
  background: var(--color-accent);
  color: #ffffff;
}

.process-nav-button__icon {
  display: block;
  width: 0.409141875rem;
  height: 0.75rem;
  border-top: 0.09643395rem solid currentColor;
  border-right: 0.09643395rem solid currentColor;
}

.process-nav-button--prev .process-nav-button__icon {
  transform: rotate(225deg);
}

.process-nav-button--next .process-nav-button__icon {
  transform: rotate(45deg);
}

.certificate-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.certificate-card {
  min-width: 0;
  min-height: 0;
  height: auto;
  padding: 0;
  display: grid;
  grid-template-rows: 1fr;
  gap: 0;
  border-color: #c4c4c4;
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: #ffffff;
}

.certificate-card__media {
  display: block;
  min-height: 0;
}

.certificate-card__media img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  object-position: center;
}

.certificate-card__media--contain {
  height: 100%;
  display: grid;
  place-items: center;
  padding: 2.25rem 1.75rem;
}

.certificate-card__media--contain img {
  width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

.certificate-card__title {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.certificate-card--with-caption {
  grid-template-rows: minmax(0, 1fr) auto;
}

.certificate-card--with-caption .certificate-card__media--contain {
  padding-bottom: 1rem;
}

.certificate-card--with-caption .certificate-card__title {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0 1.75rem 2rem;
  overflow: visible;
  clip: auto;
  white-space: normal;
  border: 0;
  color: #0f4f7a;
  font-family: var(--font-ui);
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}

.state-shell {
  display: grid;
  gap: 1rem;
}

.state-card {
  display: grid;
  gap: 1rem;
  padding: clamp(1.25rem, 2vw, 1.5rem);
}

.state-card__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.8fr);
  gap: 1rem;
  align-items: center;
}

.state-card__media {
  overflow: hidden;
  border-radius: var(--radius-md);
}

.state-card__content {
  display: grid;
  gap: 1rem;
}

.state-card__icon {
  width: 4rem;
  height: 4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #ffffff;
  background: var(--color-accent);
}

.light-copy {
  color: rgba(17, 17, 17, 0.68);
}

/* contact-block__panel inside a CSS Grid context (e.g. category pages) */
.contact-section .contact-block__panel,
.contact-grid .contact-block__panel {
  grid-column: 2;
  grid-row: 2;
  width: 100%;
  margin: 0;
  padding: 1.875rem;
  border-radius: var(--radius-lg);
  color: #171717;
  background: #ffffff;
  box-shadow: none;
}

.contact-block__panel .field {
  gap: 0;
}

.contact-block__panel .field__label,
.contact-block__panel .field__message {
  display: none;
}

.contact-block__panel .input,
.contact-block__panel .textarea {
  min-height: 4.3125rem;
  padding-inline: 1.25rem;
  border: 0;
  border-radius: var(--radius-md);
  color: #373636;
  background: #d9d9d9;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  letter-spacing: -0.02em;
}

.contact-block__panel .textarea {
  height: 4.3125rem;
  min-height: 4.3125rem;
  padding-block: 1.25rem;
  resize: none;
}

.contact-block__panel .form-note {
  max-width: 29.8125rem;
  color: #b1b1b1;
  font-family: var(--font-heading);
  font-size: 1rem;
  line-height: 1.2;
}

.contact-block__panel > .button {
  width: min(22.5rem, 100%);
  min-height: 3.75rem;
  justify-self: start;
  border-radius: var(--radius-md);
  font-size: 1.125rem;
  text-transform: none;
}

@media (min-width: 64rem) {
  body:not([data-page="home"]) .contact-block__panel {
    gap: 0.5rem;
  }

  body:not([data-page="home"]) .contact-block__panel .input,
  body:not([data-page="home"]) .contact-block__panel .textarea {
    min-height: 3.5rem;
    padding-inline: 1rem;
    font-size: 1rem;
  }

  body:not([data-page="home"]) .contact-block__panel .textarea {
    height: 3.5rem;
    min-height: 3.5rem;
    padding-block: 1rem;
  }

  body:not([data-page="home"]) .contact-block__panel .form-note {
    max-width: 26rem;
    font-size: 0.875rem;
    line-height: 1.15;
  }

  body:not([data-page="home"]) .contact-block__panel > .button {
    min-height: 3.5rem;
    font-size: 1rem;
  }
}

body[data-page="cart"] .page-hero,
body[data-page="checkout"] .page-hero {
  padding: 0;
  border: 0;
  background: transparent;
}

body:is([data-page="cart"], [data-page="checkout"]) .page-section--compact {
  padding-top: 0;
}

body[data-page="checkout"] .page-hero__heading {
  display: none;
}

body[data-page="cart"] .page-hero {
  gap: 2.875rem;
}

body[data-page="cart"] .page-hero__heading {
  margin-top: 3.75rem;
}

body[data-page="cart"] .cart-page-heading {
  position: relative;
  display: block;
  min-height: 2.6875rem;
}

body[data-page="cart"] .cart-title-mark {
  position: absolute;
  top: 0;
  right: 0;
}

body[data-page="cart"] .page-copy {
  display: none;
}

body[data-page="promotions"] .page-copy {
  display: none;
}

body[data-page="news"] .page-title {
  grid-column: 1;
  width: min(16.875rem, 100%);
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 2.4875rem;
  letter-spacing: -0.05rem;
}

@media (min-width: 64rem) {
  body[data-page="news"] .page-title {
    font-size: 4.375rem;
    font-weight: 400;
    line-height: 3.9375rem;
    letter-spacing: -0.0875rem;
  }
}

body[data-page="news"] .page-copy {
  grid-column: 3 / span 2;
  width: min(55.875rem, 100%);
  max-width: none;
  color: #ffffff;
  font-size: 3.875rem;
  line-height: 1.03;
  letter-spacing: -0.02em;
}

body[data-page="news"] .page-hero__heading {
  width: 100%;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  align-items: start;
}

body[data-page="news"] .news-grid article:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}

body[data-page="news"] .news-grid article:nth-child(2) {
  grid-column: 3;
  grid-row: 1;
}

body[data-page="news"] .news-grid article:nth-child(3) {
  grid-column: 4;
  grid-row: 1;
}

body[data-page="news"] .news-grid article:nth-child(4) {
  grid-column: 1;
  grid-row: 2;
}

body[data-page="news"] .news-grid article:nth-child(5) {
  grid-column: 2;
  grid-row: 2;
}

body[data-page="news"] .news-grid article:nth-child(6) {
  grid-column: 4;
  grid-row: 3;
}

body[data-page="news"] .news-grid article:nth-child(7) {
  grid-column: 1;
  grid-row: 3;
}

body[data-page="news"] .news-grid article:nth-child(8) {
  grid-column: 3;
  grid-row: 3;
}

body[data-page="news"] .news-grid article:nth-child(9) {
  grid-column: 1;
  grid-row: 4;
}

body[data-page="news"] .news-grid article:nth-child(10) {
  grid-column: 2;
  grid-row: 4;
}

.button--news-more {
  width: min(28.125rem, 100%);
  min-height: 3.75rem;
  border-radius: var(--radius-sm);
  font-size: 1.125rem;
  box-shadow: none;
  text-transform: none;
}

body[data-page="cart"] .page-main > .page-section > .container,
body[data-page="checkout"] .page-main > .page-section > .container {
  width: var(--container);
}

body[data-page="cart"] .checkout-shell {
  grid-template-columns: minmax(0, 86.875rem) minmax(0, 28.125rem);
  gap: 1.25rem;
}

body[data-page="cart"] .checkout-shell__aside {
  position: sticky;
  top: 7.5rem;
  z-index: 1;
}

body[data-page="cart"] .checkout-shell > .cart-list,
body[data-page="cart"] .checkout-shell__aside,
body[data-page="checkout"] .checkout-shell__form,
body[data-page="checkout"] .checkout-shell__aside {
  min-width: 0;
}

body[data-page="cart"] .order-summary {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

body[data-page="cart"] .order-summary__title,
body[data-page="cart"] .order-summary__rows,
body[data-page="cart"] .order-summary__note,
body[data-page="cart"] .order-summary__actions .button-outline {
  display: none;
}

body[data-page="cart"] .order-summary__actions {
  display: grid;
  gap: 1.875rem;
}

body[data-page="cart"] .order-summary__actions .button {
  width: 100%;
  min-height: 3.75rem;
  border-radius: var(--radius-sm);
  font-size: 1.125rem;
  text-transform: none;
}

.cart-page-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.cart-title-mark {
  display: block;
  width: 2.8125rem;
  height: 3.125rem;
  flex: 0 0 auto;
}

.cart-row__image--mobile,
.cart-row__title-mobile {
  display: none;
}

.cart-aside {
  display: grid;
  gap: 1.875rem;
}

.cart-info-links {
  display: grid;
  gap: 0.75rem;
}

.cart-info-link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--color-text);
  font-family: var(--font-ui);
  font-size: 1.125rem;
  font-weight: 500;
  transition: color var(--transition-fast);
}

.cart-info-link:hover {
  color: var(--color-accent);
}

.cart-info-link .site-icon {
  flex-shrink: 0;
  color: var(--color-accent);
}

.cart-empty-state {
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 1.25rem;
  padding: 3.5rem 1rem 4rem;
}

.cart-empty-state__icon {
  width: 5rem;
  height: 5rem;
  color: var(--color-accent);
}

.cart-empty-state__title {
  font-family: var(--font-heading);
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  line-height: 1.2;
  letter-spacing: -0.03em;
  color: #ffffff;
}

.cart-empty-state__copy {
  color: rgba(255, 255, 255, 0.58);
  font-family: var(--font-ui);
  font-size: 1rem;
}

.cart-empty-state .button {
  min-width: 18rem;
  margin-top: 0.5rem;
  text-transform: none;
}

.product-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.25rem;
}

body[data-cart-state="empty"] .product-row .product-card {
  min-height: 7.375rem;
  grid-template-columns: 5.625rem minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
  gap: 1rem;
  padding: 0.625rem;
}

body[data-cart-state="empty"] .product-row .product-card__media {
  width: 5.625rem;
  height: 5.625rem;
  aspect-ratio: 1 / 1;
  margin: 0;
  border-radius: 0.25rem;
}

body[data-cart-state="empty"] .product-row .product-card__body {
  min-width: 0;
  display: grid;
  align-content: space-between;
  gap: 0.625rem;
}

body[data-cart-state="empty"] .product-row .product-card__title {
  font-family: var(--font-heading);
  font-size: 1.125rem;
  line-height: 1.2;
  letter-spacing: -0.03em;
}

body[data-cart-state="empty"] .product-row .product-card__rating {
  align-self: end;
}

body[data-cart-state="empty"] .pagination {
  display: flex;
  width: 100%;
  justify-content: center;
  margin-top: 1rem;
}

@media (max-width: 47.999rem) {
  body[data-cart-state="empty"] .product-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.625rem;
  }

  body[data-cart-state="empty"] .product-row .product-card:nth-child(n + 3) {
    display: none;
  }

  body[data-cart-state="empty"] .product-row .product-card {
    min-height: 12.75rem;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 0.75rem;
  }

  body[data-cart-state="empty"] .product-row .product-card__media {
    width: 5.625rem;
    height: 5.625rem;
  }

  body[data-cart-state="empty"] .product-row .product-card__title {
    font-size: 1rem;
    line-height: 1.2;
  }
}

/* Keep for backward compat */
.client-links {
  display: grid;
  gap: 1rem;
  padding: 1.5rem;
  border: 1px solid #323232;
  border-radius: var(--radius-md);
  background: #111111;
}

.client-links__title {
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(233, 230, 230, 0.7);
  color: #ffffff;
  font-family: var(--font-ui);
  font-size: 1.75rem;
  font-weight: 700;
  text-transform: uppercase;
}

.client-links__list {
  display: grid;
  gap: 1rem;
}

.client-links__item {
  position: relative;
  padding-left: 2rem;
  padding-bottom: 1rem;
  border-bottom: 1px dashed rgba(233, 230, 230, 0.5);
  color: var(--color-text-figma);
  font-family: var(--font-ui);
  font-size: 1.5rem;
}

.client-links__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.25rem;
  width: 1.125rem;
  height: 1.125rem;
  border: 2px solid var(--color-accent);
  border-radius: 0.1875rem;
}

.client-links__item:last-child {
  border-bottom: 0;
}

body[data-page="checkout"] .page-section:nth-of-type(2),
body[data-page="login"] .page-section:nth-of-type(2),
body[data-page="account"] .page-section:nth-of-type(2) {
  padding-top: 0;
}

body[data-page="checkout"] .checkout-shell {
  grid-template-columns: minmax(0, 72.1875rem) minmax(0, 42.75rem);
  gap: 1.25rem;
}

@media (min-width: 64rem) {
  body[data-page="checkout"] .page-main > .page-section:nth-of-type(2) {
    padding-top: 1.3125rem;
  }

  body[data-page="checkout"] .checkout-section {
    align-content: start;
  }

  body[data-page="checkout"] .checkout-shell__form {
    gap: 1.25rem;
  }

  body[data-page="checkout"] .checkout-section--delivery {
    gap: 1.5625rem;
  }

  body[data-page="checkout"] .checkout-section--items {
    min-height: 63.5rem;
    height: 63.5rem;
  }

  body[data-page="checkout"] .delivery-option {
    min-height: 4.3125rem;
  }
}

body[data-page="checkout"] .checkout-section {
  gap: 1.875rem;
  padding: 1.8125rem;
}

body[data-page="checkout"] .checkout-section--delivery {
  min-height: 27.9375rem;
}

body[data-page="checkout"] .checkout-section--buyer {
  min-height: 51.9375rem;
}

body[data-page="checkout"] .checkout-section__title {
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 2.1875rem;
  letter-spacing: -0.075rem;
}

body[data-page="checkout"] .checkout-section .auth-shell__switch,
body[data-page="checkout"] .checkout-section__grid {
  width: min(50.3125rem, 100%);
}

body[data-page="checkout"] .checkout-section .auth-shell__switch {
  grid-template-columns: 1fr;
  gap: 0.625rem;
}

body[data-page="checkout"] .checkout-section .auth-shell__switch .button-outline {
  justify-content: flex-start;
  min-height: 4.3125rem;
  padding-inline: 1.25rem;
  border: 0;
  border-radius: var(--radius-md);
  color: #878787;
  background: #ffffff;
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.174rem;
  letter-spacing: 0;
  text-transform: none;
}

body[data-page="checkout"] .checkout-section .auth-shell__switch .button-outline.is-active,
body[data-page="checkout"] .checkout-section .auth-shell__switch .button-outline:hover {
  color: #ffffff;
  background: var(--color-accent);
}

body[data-page="checkout"] .checkout-section .field {
  gap: 0;
}

body[data-page="checkout"] .checkout-section .field__label,
body[data-page="checkout"] .checkout-section .field__message {
  display: none;
}

body[data-page="checkout"] .checkout-section .input,
body[data-page="checkout"] .checkout-section .textarea,
body[data-page="checkout"] .checkout-section .select-field__button {
  min-height: 3.875rem;
  border: 0;
  border-radius: var(--radius-md);
  color: #282727;
  background: #ffffff;
  font-family: var(--font-heading);
  font-size: 1rem;
  line-height: 1.2;
  letter-spacing: normal;
}

body[data-page="checkout"] .checkout-section .textarea {
  min-height: 3.875rem;
  height: 3.875rem;
  padding-block: 1.25rem;
  resize: none;
}

body[data-page="checkout"] .checkout-section .choice__label {
  color: #b1b1b1;
  font-size: 1rem;
}

body[data-page="checkout"] .cart-list--checkout,
body[data-page="checkout"] .checkout-section--items .cart-list {
  gap: 1.25rem;
}

body[data-page="checkout"] .cart-list--checkout .cart-row,
body[data-page="checkout"] .checkout-section--items .cart-row {
  grid-template-columns: 10.375rem 10.4375rem 10.375rem minmax(0, 1fr) 10.9375rem;
  min-height: 15.375rem;
  min-width: 0;
}

body[data-page="checkout"] .checkout-section__add-item {
  width: min(22.5rem, 100%);
  min-height: 3.75rem;
  margin-top: 0.625rem;
  justify-self: start;
  border-radius: var(--radius-sm);
  font-size: 1.125rem;
  text-transform: none;
}

body[data-page="checkout"] .order-summary {
  min-height: 26.9375rem;
}

.news-card--desktop-extra,
.promo-card--desktop-extra {
  display: none;
}

.page-section--product-viewed {
  padding-top: 2rem;
}

.page-section--product-viewed .product-rail {
  gap: 1.875rem;
}

body[data-page="cart"] .page-main,
body[data-page="checkout"] .page-main,
body[data-page="login"] .page-main,
body[data-page="account"] .page-main {
  min-height: 100svh;
}

@media (min-width: 768px) {
  body[data-page="cart"] .page-main {
    padding-bottom: var(--section-space-xxl);
  }

  body[data-page="cart"] .page-section--compact {
    padding-bottom: 0;
  }

  body[data-page="cart"] .page-section:not(.page-section--compact) {
    padding-top: 0;
    padding-bottom: 0;
  }

  body[data-page="cart"] .page-hero {
    gap: 1.25rem;
  }

  body[data-page="cart"] .page-hero__heading {
    margin-top: 2.5rem; /* 40px + 20px gap = 60px from breadcrumbs (Figma: 60px) */
  }

  body[data-page="cart"] .section-divider {
    margin-top: 3.75rem; /* 60px gap headingв†’divider (Figma: 60px) */
    margin-bottom: 3.75rem; /* 60px gap dividerв†’cart-list (Figma: 60px) */
  }

  body[data-cart-state="filled"] .cart-list {
    gap: 1.25rem;
  }

  body[data-page="cart"] .page-title {
    font-size: 3.875rem;
    line-height: 4.65rem;
    letter-spacing: -0.0775rem;
  }

  body[data-cart-state="filled"] .cart-row {
    min-height: 14.25rem;
  }

  body[data-cart-state="empty"] .state-card {
    min-height: 42.5rem;
  }

  body[data-page="news"] .news-grid {
    gap: 1.25rem;
  }

  body[data-page="news"] .news-card,
  body[data-page="news"] .news-card--desktop-extra {
    min-height: 37.875rem;
  }

  body[data-page="news"] .news-card--desktop-extra {
    display: grid;
  }

  body[data-page="promotions"] .promo-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }

  body[data-page="promotions"] .promo-card {
    min-height: 13.5rem;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto 1fr;
    align-items: start;
  }

  body[data-page="promotions"] .promo-card > :not(.button) {
    grid-column: 1;
  }

  body[data-page="promotions"] .promo-card--desktop-extra {
    display: grid;
  }

  body[data-page="promotions"] .promo-card .button {
    grid-column: 2;
    grid-row: 1 / span 3;
    align-self: end;
    width: min(22.5rem, 100%);
  }

  body[data-review-state] .product-detail-shell {
    row-gap: 5rem;
    column-gap: 1.25rem;
  }

  body[data-review-state] .page-main > .page-section:nth-child(2) {
    padding-bottom: 8rem;
  }

  body[data-review-state] .product-detail-shell__body--wide {
    min-height: 28rem;
  }

  body[data-review-state] .review-empty {
    min-height: 18rem;
  }

  body[data-review-state] .review-shell {
    min-height: 32rem;
  }

  body[data-review-state] .page-section--product-viewed {
    padding-top: 5rem;
    padding-bottom: 7rem;
  }

  body[data-review-state="filled"] .review-shell {
    min-height: 42rem;
  }

  body[data-page="home"] .page-section--home-help {
    padding-bottom: 3rem;
  }

  body[data-page="about"] .page-section--about-philosophy {
    padding-bottom: 5.5rem;
  }

  body[data-page="about"] .page-section--about-stats {
    padding-block: 5.5rem;
  }

  body[data-page="about"] .page-section--about-history {
    padding-block: 5.5rem;
  }

  body[data-page="about"] .page-section#contact-request {
    padding-top: 5.5rem;
  }
}

body[data-page="login"] .page-hero {
  padding: 0;
  border: 0;
  background: transparent;
}

body[data-page="login"] .page-hero__heading {
  display: none;
}

body[data-page="login"] .page-main > .page-section > .container {
  width: var(--container);
}

body[data-page="login"] .auth-shell {
  grid-template-columns: minmax(0, 1fr);
}

body[data-page="login"] .auth-shell__visual {
  display: none;
}

body[data-page="login"] .auth-shell__panel,
body[data-page="login"] .verification-shell {
  width: 100%;
  min-height: 25.75rem;
  padding: 1.875rem;
  border: 1px solid #323232;
  border-radius: var(--radius-md);
  color: #ffffff;
  background: #111111;
  box-shadow: none;
}

body[data-page="login"] .auth-shell__panel-title,
body[data-page="login"] .verification-shell__title {
  font-size: var(--text-h2);
  line-height: 0.9;
  letter-spacing: -0.03em;
}

body[data-page="login"] .auth-shell__switch {
  display: none;
}

body[data-page="login"] .auth-shell__panel .field,
body[data-page="login"] .verification-shell .field {
  gap: 0;
}

body[data-page="login"] .auth-shell__panel .field__label,
body[data-page="login"] .auth-shell__panel .field__message,
body[data-page="login"] .verification-shell .field__label,
body[data-page="login"] .verification-shell .field__message {
  display: none;
}

body[data-page="login"] .auth-shell__panel .input,
body[data-page="login"] .auth-shell__panel .textarea,
body[data-page="login"] .verification-shell .input {
  min-height: 3.875rem;
  border: 0;
  color: #282727;
  background: #ffffff;
  font-family: var(--font-heading);
  font-size: 1rem;
  line-height: 1.2;
  letter-spacing: normal;
}

body[data-page="login"] .verification-shell .code-inputs {
  grid-template-columns: repeat(4, 2rem);
  gap: 0.75rem;
}

body[data-page="login"] .verification-shell .code-input {
  min-height: 2.25rem;
  padding: 0 0 0.25rem;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.64);
  border-radius: 0;
  color: #ffffff;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}

body[data-page="login"] .verification-shell .code-input:focus {
  outline: none;
  border-bottom-color: var(--color-accent);
}

body[data-page="login"] .auth-note,
body[data-page="login"] .verification-shell__copy,
body[data-page="login"] .verification-shell__meta {
  max-width: 36rem;
  color: #b1b1b1;
  font-size: 0.875rem;
}

body[data-page="login"] .verification-shell__recipient {
  color: #ffffff;
  font-size: 1rem;
}

body[data-page="login"] .verification-shell__recipient a {
  color: var(--color-accent);
}

body[data-page="login"] .auth-note a,
body[data-page="login"] .auth-link,
body[data-page="login"] .verification-shell__meta a {
  width: fit-content;
  color: var(--color-accent);
  text-decoration: underline;
  text-underline-offset: 0.25rem;
}

body[data-page="login"] .auth-shell__panel > .button,
body[data-page="login"] .auth-shell__panel > .button-outline,
body[data-page="login"] .verification-shell > .button,
body[data-page="login"] .verification-shell > .button-outline {
  width: min(22.4375rem, 100%);
  min-height: 3.75rem;
  justify-self: start;
  border-radius: var(--radius-sm);
  font-size: 1.125rem;
  text-transform: none;
}

.button:disabled,
.button[aria-disabled="true"] {
  color: #ffffff;
  background: #b4b4b4;
  box-shadow: none;
  cursor: not-allowed;
  transform: none;
}

body[data-page="account"] .page-hero {
  padding: 0;
  border: 0;
  background: transparent;
}

body[data-page="account"] .page-hero__heading:not(.cart-page-heading) {
  display: none;
}

body[data-page="account"] .account-shell {
  grid-template-columns: minmax(0, 58rem) minmax(16rem, 19.5rem);
  gap: 1.25rem;
}

body[data-page="account"] .account-shell__nav {
  grid-column: 2;
  grid-row: 1;
  position: sticky;
  top: 7.5rem;
  z-index: 1;
  align-self: start;
  padding: 0;
  border: 0;
  background: transparent;
}

body[data-page="account"] .account-shell__nav-link {
  position: relative;
  min-height: 5.4375rem;
  padding: 1.25rem 3.75rem 1.25rem 1.25rem;
  display: grid;
  align-content: center;
  gap: 0.75rem;
  border: 1px solid #323232;
  border-radius: var(--radius-md);
  color: #ffffff;
  background: #111111;
  font-family: var(--font-heading);
  font-size: 1.375rem;
  font-weight: 700;
  letter-spacing: -0.02em;
}

body[data-page="account"] .account-shell__nav-link.is-active,
body[data-page="account"] .account-shell__nav-link:hover {
  color: #ffffff;
  background: var(--color-accent);
}

body[data-page="account"] .account-shell__nav-link.is-active .account-shell__nav-icon,
body[data-page="account"] .account-shell__nav-link:hover .account-shell__nav-icon {
  color: #ffffff;
  stroke: #ffffff;
  filter: brightness(0) invert(1);
}

body[data-page="account"] .account-shell__nav-link.is-active .account-shell__nav-icon > *,
body[data-page="account"] .account-shell__nav-link:hover .account-shell__nav-icon > * {
  stroke: currentColor;
}

body[data-page="account"] .account-shell__nav-link.is-active .account-shell__nav-icon--heart > *,
body[data-page="account"] .account-shell__nav-link:hover .account-shell__nav-icon--heart > * {
  fill: currentColor;
  stroke: none;
}

body[data-page="account"] .account-shell__nav-link span {
  color: #878787;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0;
}

body[data-page="account"] .account-shell__nav-link strong {
  display: block;
}

body[data-page="account"] .account-shell__nav-icon {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
}

.account-shell__nav-label-mobile {
  display: none;
}

body[data-page="account"] .account-shell__nav-link--muted {
  min-height: 3.75rem;
  padding: 1.25rem;
  justify-content: center;
  color: #ffffff;
  background: #b4b4b4;
  text-align: center;
}

body[data-page="account"] .account-shell__nav-link--muted span {
  color: #ffffff;
}

body[data-page="account"] .account-shell__content {
  grid-column: 1;
  grid-row: 1 / span 4;
  gap: 1.25rem;
}

body[data-page="account"] .account-shell__hero,
body[data-page="account"] .account-panel,
body[data-page="account"] .account-stat,
body[data-page="account"] .order-card,
body[data-page="account"] .review-shell__prompt,
body[data-page="account"] .review-card {
  border-color: #323232;
  background: #111111;
}

body[data-page="account"] .account-shell__hero,
body[data-page="account"] .account-panel {
  padding: 1.8125rem;
}

body[data-page="account"] .account-shell__hero {
  display: block;
}

body[data-page="account"] .account-shell__title,
body[data-page="account"] .account-panel__title,
body[data-page="account"] .review-shell__title {
  letter-spacing: -0.04em;
}

body[data-page="account"] .account-shell__title {
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 2.1875rem;
  letter-spacing: -0.075rem;
}

body[data-page="account"] .account-panel__title {
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 2.1875rem;
  letter-spacing: -0.075rem;
}

body[data-page="account"] .review-shell__title {
  font-size: clamp(2rem, 2.4vw, 2.8rem);
  line-height: 0.98;
}

body[data-page="account"] .account-shell__hero .auth-shell__switch {
  width: min(100%, 50.3125rem);
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.625rem;
  margin-top: 1.875rem;
}

body[data-page="account"] .account-shell__hero .auth-shell__switch .button-outline {
  justify-content: flex-start;
  min-height: 4.3125rem;
  padding-inline: 1.25rem;
  border: 0;
  border-radius: var(--radius-md);
  color: #878787;
  background: #ffffff;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 17.91px;
  letter-spacing: -0.36px;
  text-transform: none;
}

body[data-page="account"] .account-shell__hero .auth-shell__switch .button-outline.is-active,
body[data-page="account"] .account-shell__hero .auth-shell__switch .button-outline:hover {
  color: #ffffff;
  background: var(--color-accent);
}

body[data-page="account"] .account-shell__copy,
body[data-page="account"] .account-stat__label,
body[data-page="account"] .review-shell__copy,
body[data-page="account"] .review-card__copy,
body[data-page="account"] .order-card__meta {
  color: #878787;
  font-size: 1.125rem;
}

body[data-page="account"] .account-panel__grid > div {
  min-height: 4.3125rem;
  padding: 1.25rem;
  border-radius: var(--radius-sm);
  color: #282727;
  background: #ffffff;
}

body[data-page="account"] .account-panel__grid--single {
  grid-template-columns: 1fr;
  gap: 0.625rem;
}

body[data-page="account"] .account-panel .field {
  gap: 0;
}

body[data-page="account"] .account-panel .field__label,
body[data-page="account"] .account-panel .field__message {
  display: none;
}

body[data-page="account"] .account-panel .input {
  min-height: 3.875rem;
  border: 0;
  border-radius: var(--radius-sm);
  color: #878787;
  background: #ffffff;
  font-family: var(--font-heading);
  font-size: 1rem;
  line-height: 1.2;
  letter-spacing: normal;
}

@media (min-width: 64rem) {
  body[data-page="checkout"] .checkout-section__title {
    font-size: 3.875rem;
    font-weight: 400;
    line-height: 3.4875rem;
    letter-spacing: -0.11625rem;
  }

  body[data-page="checkout"] .checkout-section .auth-shell__switch .button-outline {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.174rem;
    letter-spacing: 0;
  }

  body[data-page="checkout"] .checkout-section .input,
  body[data-page="checkout"] .checkout-section .textarea,
  body[data-page="checkout"] .checkout-section .select-field__button,
  body[data-page="login"] .auth-shell__panel .input,
  body[data-page="login"] .auth-shell__panel .textarea,
  body[data-page="login"] .verification-shell .input,
  body[data-page="account"] .account-panel .input {
    min-height: 4.3125rem;
  }

  body[data-page="checkout"] .checkout-section .input,
  body[data-page="checkout"] .checkout-section .textarea,
  body[data-page="checkout"] .checkout-section .select-field__button {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.54125rem;
    letter-spacing: -0.0225rem;
  }

  body[data-page="login"] .auth-shell__panel .input,
  body[data-page="login"] .auth-shell__panel .textarea,
  body[data-page="login"] .verification-shell .input {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.54125rem;
    letter-spacing: -0.0225rem;
  }

  body[data-page="account"] .account-shell__title,
  body[data-page="account"] .account-panel__title {
    font-size: 3.875rem;
    font-weight: 400;
    line-height: 3.4875rem;
    letter-spacing: -0.11625rem;
  }

  body[data-page="account"] .account-panel .input {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.54125rem;
    letter-spacing: -0.0225rem;
  }

  body[data-page="login"] .auth-shell__panel-title,
  body[data-page="login"] .verification-shell__title {
    font-size: 3.875rem;
    font-weight: 400;
    line-height: 3.4875rem;
    letter-spacing: -0.11625rem;
  }
}

@media (max-width: 47.999rem) {
  body[data-page="login"] .auth-shell__panel-title,
  body[data-page="login"] .verification-shell__title {
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 2.1875rem;
    letter-spacing: -0.075rem;
  }

  body[data-page="login"] .auth-shell__panel .input,
  body[data-page="login"] .auth-shell__panel .textarea,
  body[data-page="login"] .verification-shell .input {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 0.8645rem;
    letter-spacing: 0;
  }

  body[data-page="account"] .account-shell__title,
  body[data-page="account"] .account-panel__title {
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 2.1875rem;
    letter-spacing: -0.075rem;
  }

  body[data-page="account"] .account-shell__hero .auth-shell__switch .button-outline,
  body[data-page="account"] .account-panel .input {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 0.8645rem;
    letter-spacing: 0;
  }

  body[data-page="checkout"] .checkout-section__title {
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 2.1875rem;
    letter-spacing: -0.075rem;
  }

  body[data-page="checkout"] .checkout-section .input,
  body[data-page="checkout"] .checkout-section .textarea,
  body[data-page="checkout"] .checkout-section .select-field__button {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.02725rem;
    letter-spacing: 0;
  }

  body[data-page="checkout"] .checkout-section .auth-shell__switch .button-outline {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.21025rem;
    letter-spacing: -0.04rem;
  }
}

body[data-page="account"] .account-panel > .button {
  width: min(22.4375rem, 100%);
  min-height: 3.75rem;
  margin-top: 0.6875rem;
  justify-self: start;
  border-radius: var(--radius-sm);
  font-size: 1.125rem;
  text-transform: none;
}

body[data-page="account"] .account-panel > .button[hidden] {
  display: none;
}

body[data-page="account"] .account-panel__grid strong {
  display: block;
  color: #878787;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
}

body[data-page="account"] .account-panel__grid .page-copy {
  color: #282727;
}

@media (min-width: 64rem) {
  body[data-page="account"]:not([data-account-state]) .page-main > .page-section:not(.page-section--compact) > .container {
    width: min(var(--container-max), calc(100vw - (var(--container-gutter) * 2)));
    margin-right: 0;
    margin-left: var(--container-gutter);
  }

  body[data-page="account"]:not([data-account-state]) .account-shell {
    grid-template-columns: minmax(0, 1fr) clamp(19.5rem, 29.247311828%, 34rem);
    gap: 1.25rem;
    align-items: start;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__content {
    gap: 1.25rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__hero,
  body[data-page="account"]:not([data-account-state]) .account-panel {
    padding: 1.8125rem;
    border: 1px solid #323232;
    border-radius: 0.625rem;
    background: #111111;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__hero {
    min-height: 18.0625rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__content > .account-panel:nth-of-type(2) {
    min-height: 22.8125rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__content > .account-panel:nth-of-type(3) {
    min-height: 23.1875rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__hero .auth-shell__switch {
    width: 100%;
    max-width: none;
    gap: 0.625rem;
    margin-top: 1.5625rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__hero .auth-shell__switch .button-outline {
    min-height: 4.3125rem;
    padding: 1.25rem;
    border-radius: 0.625rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-panel {
    gap: 1.25rem;
    align-content: start;
  }

  body[data-page="account"]:not([data-account-state]) .account-panel__grid--single {
    gap: 0.625rem;
    margin-top: 0.0875rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-panel .input {
    height: 4.3125rem;
    min-height: 4.3125rem;
    padding: 1.25rem;
    border-radius: 0.3125rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-panel > .button {
    width: 22.4375rem;
    min-height: 3.75rem;
    margin-top: 0.35rem;
    border-radius: 0.3125rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav {
    width: 100%;
    gap: 1.25rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-link:not(.account-shell__nav-link--muted) {
    height: 6.6875rem;
    min-height: 6.6875rem;
    padding: 1.5625rem 1.25rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-link:not(.account-shell__nav-link--muted) > div {
    width: 14.4375rem;
    display: flex;
    flex-direction: column;
    gap: 0.9375rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-link strong {
    font-size: 1.375rem;
    line-height: 1;
    letter-spacing: -0.02rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-link span {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.25rem;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-icon {
    position: absolute;
    top: 50%;
    right: 1.25rem;
    color: transparent;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transform: translateY(-50%);
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-icon > * {
    display: none;
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-icon--bag {
    width: 3.5625rem;
    height: 3.625rem;
    background-image: url("/static/icons/figma/account-orders-bag.svg");
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-icon--heart {
    width: 2.6875rem;
    height: 2.375rem;
    background-image: url("/static/icons/figma/account-awaiting-heart.svg");
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-link.is-active .account-shell__nav-icon,
  body[data-page="account"]:not([data-account-state]) .account-shell__nav-link:hover .account-shell__nav-icon {
    color: #ffffff;
    filter: brightness(0) invert(1);
  }

  body[data-page="account"]:not([data-account-state]) .account-shell__nav-link--muted {
    min-height: 3.75rem;
    height: 3.75rem;
    padding: 0;
    border: 0;
    border-radius: 0.3125rem;
    font-family: var(--font-ui);
    font-size: 1.125rem;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0;
    text-transform: none;
  }

  body[data-account-state="previous-orders"] .account-shell__nav-icon {
    position: static;
    top: auto;
    right: auto;
    transform: none;
  }
}

body[data-account-state="previous-orders"] .account-shell__nav-icon {
  position: static;
  top: auto;
  right: auto;
  transform: none;
}

body[data-page="checkout-success"] .site-header {
  position: absolute;
  left: 0;
  right: 0;
}

body[data-page="checkout-success"] .page-main {
  min-height: 100svh;
  padding: 0;
}

.checkout-success {
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: 0;
  background:
    linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)),
    url("/static/images/figma/d8c92ab664df4e67cc1b847c61405005d669d818.webp") center / cover,
    #111111;
  backdrop-filter: blur(4.5px);
}

@media (min-width: 48rem) and (max-height: 56.25rem) {
  .checkout-success {
    place-items: start center;
    padding-top: 8.375rem;
    padding-bottom: 2rem;
  }
}

.checkout-success__card {
  position: relative;
  width: min(45.75rem, calc(100vw - 2rem));
  min-height: 44.9375rem;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 1.375rem;
  padding: 3.5rem 1.5625rem 1.5625rem;
  border-radius: var(--radius-md);
  color: #282727;
  background: #ffffff;
}

.checkout-success__close {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  color: #878787;
  font-size: 2rem;
  line-height: 1;
  text-decoration: none;
}

.checkout-success__icon {
  width: 10.875rem;
  height: 10.875rem;
  display: block;
  object-fit: contain;
}

.checkout-success__title {
  max-width: 34.8125rem;
  font-family: var(--font-heading);
  font-size: clamp(2.25rem, 2.6vw, 3.125rem);
  font-weight: 300;
  line-height: 0.9;
  letter-spacing: -0.02em;
  text-align: center;
}

.checkout-success__number {
  width: min(42.625rem, 100%);
  padding-bottom: 1.375rem;
  border-bottom: 1px solid #a1a0a0;
  color: #383434;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  text-align: center;
}

.checkout-success__copy {
  max-width: 33.0625rem;
  color: #383434;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
}

.checkout-success__actions {
  width: min(42.625rem, 100%);
  display: grid;
  gap: 0.625rem;
  margin-top: auto;
}

.checkout-success__actions .button,
.checkout-success__actions .button-outline {
  width: 100%;
  min-height: 3.75rem;
  border-radius: var(--radius-sm);
  font-size: 1.125rem;
  text-transform: none;
}

.checkout-success__actions .button-outline {
  color: #282727;
  border-color: var(--color-accent);
  background: #ffffff;
}

/* Previous orders page/state */
.previous-orders__mobile-label {
  display: none;
}

@media (min-width: 48rem) {
  body[data-account-state="previous-orders"] .page-section--compact {
    padding-bottom: 0.6875rem;
  }

  body[data-account-state="previous-orders"] .page-hero__heading.cart-page-heading {
    margin-top: 8rem;
  }

  body[data-account-state="previous-orders"] .page-title {
    font-size: 5rem;
    font-weight: 400;
    line-height: 0.9;
    letter-spacing: -0.1rem;
  }

  body[data-account-state="previous-orders"] .page-hero__heading.cart-page-heading .button-outline {
    width: auto;
    min-height: 3.125rem;
    padding: 0.6875rem 1.875rem;
    border-radius: 2.25rem;
    font-family: "Inter", var(--font-ui);
    font-size: 1rem;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.04rem;
    text-transform: none;
  }

  body[data-account-state="previous-orders"] .page-section--flush-top {
    padding-top: 2.25rem;
  }

  body[data-account-state="previous-orders"] .account-shell {
    width: min(116.25rem, calc(100vw - 3.75rem));
    grid-template-columns: 22.25rem minmax(0, 1fr);
    gap: 1.25rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav {
    grid-column: 1;
    grid-row: 1;
    position: static;
    width: 22.25rem;
    gap: 1.25rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .field {
    height: 3.6875rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row,
  body[data-account-state="previous-orders"] .account-shell__nav .input {
    min-height: 3.6875rem;
    height: 3.6875rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row__icon {
    left: 0.75rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row__icon .site-icon {
    width: 1.25rem;
    height: 1.25rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row__input {
    padding-left: 2.75rem;
    padding-right: 0.75rem;
    font-family: var(--font-ui);
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1rem;
    letter-spacing: -0.01125rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row__input::placeholder {
    color: #c2b0a4;
  }

  body[data-account-state="previous-orders"] .account-shell__nav-link {
    min-height: 6.6875rem;
    padding: 1.5625rem 1.25rem;
    border-radius: 0.625rem;
  }

  body[data-account-state="previous-orders"] .account-shell__content {
    grid-column: 2;
    grid-row: 1;
    width: 100%;
  }

  body[data-account-state="previous-orders"] .order-product-list {
    width: 100%;
    gap: 0.4375rem;
    border: 0;
    border-radius: 0;
    overflow: visible;
    background: transparent;
  }

  body[data-account-state="previous-orders"] .order-product-row {
    position: relative;
    height: 18.0625rem;
    min-height: 18.0625rem;
    display: block;
    padding: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.7);
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
    background: transparent;
  }

  body[data-account-state="previous-orders"] .order-product-row__media {
    position: absolute;
    left: 0;
    top: 1.25rem;
    width: 18.3125rem;
    height: 16rem;
    border-radius: 0.625rem;
  }

  body[data-account-state="previous-orders"] .order-product-row__info {
    display: contents;
  }

  body[data-account-state="previous-orders"] .order-product-row__name {
    position: absolute;
    left: 19.5625rem;
    top: 1.3125rem;
    width: 30.5625rem;
    font-size: 1.625rem;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: -0.08125rem;
    text-transform: uppercase;
  }

  body[data-account-state="previous-orders"] .order-product-row__price {
    position: absolute;
    left: 60.78125%;
    top: 1.3125rem;
    width: 18rem;
    color: #e9e6e6;
    font-family: var(--font-heading);
    font-size: 1.625rem;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: -0.08125rem;
    text-align: right;
  }

  body[data-account-state="previous-orders"] .order-product-row .spec-list {
    position: absolute;
    left: 19.5625rem;
    top: 6.3125rem;
    width: 36.8125rem;
    gap: 0.4375rem;
    color: rgba(241, 241, 241, 0.7);
    font-size: 1.125rem;
    line-height: 1;
    letter-spacing: -0.03375rem;
  }

  body[data-account-state="previous-orders"] .order-product-row:nth-child(2) .spec-list {
    display: none;
  }

  body[data-account-state="previous-orders"] .order-product-row .spec-list__row {
    min-height: 1.125rem;
    padding: 0;
  }

  body[data-account-state="previous-orders"] .order-product-row .spec-list__row strong {
    width: 8.125rem;
    color: #f1f1f1;
    font-weight: 400;
  }

  body[data-account-state="previous-orders"] .order-product-row__actions {
    position: absolute;
    top: 1.3125rem;
    right: 0;
    width: 18.3125rem;
    display: grid;
    gap: 1.25rem;
  }

  body[data-account-state="previous-orders"] .order-product-row__actions .button,
  body[data-account-state="previous-orders"] .order-product-row__actions .button-outline {
    height: 3.75rem;
    min-height: 3.75rem;
    border-radius: 0.3125rem;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.3;
  }
}

@media (max-width: 47.999rem) {
  body[data-account-state="previous-orders"] {
    --previous-orders-mobile-width: min(22.5rem, calc(100vw - 1.875rem));
  }

  body[data-account-state="previous-orders"] .page-section--compact {
    margin-top: -3.75rem;
    padding-bottom: 0;
  }

  body[data-account-state="previous-orders"] .page-hero__heading.cart-page-heading {
    margin-top: 0.5625rem;
  }

  body[data-account-state="previous-orders"] .page-title {
    font-size: 1.875rem;
    font-weight: 500;
    line-height: normal;
    letter-spacing: -0.075rem;
  }

  body[data-account-state="previous-orders"] .page-hero__heading.cart-page-heading .button-outline {
    display: none;
  }

  body[data-account-state="previous-orders"] .previous-orders-divider {
    width: var(--previous-orders-mobile-width);
    max-width: none;
    margin-top: -0.3125rem;
  }

  body[data-account-state="previous-orders"] .previous-orders-divider .section-divider {
    width: var(--previous-orders-mobile-width);
  }

  body[data-account-state="previous-orders"] .page-section--flush-top {
    padding-top: 0.375rem;
  }

  body[data-account-state="previous-orders"] .account-shell {
    width: var(--previous-orders-mobile-width);
    max-width: none;
    gap: 2.25rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav {
    width: var(--previous-orders-mobile-width);
    gap: 0.625rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .field,
  body[data-account-state="previous-orders"] .account-shell__nav .search-row,
  body[data-account-state="previous-orders"] .account-shell__nav .input {
    width: var(--previous-orders-mobile-width);
    min-height: 3.125rem;
    height: 3.125rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row__icon {
    left: 0.75rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row__icon .site-icon {
    width: 1.25rem;
    height: 1.25rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row__input {
    padding-left: 2.75rem;
    padding-right: 0.75rem;
    font-family: var(--font-ui);
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1rem;
    letter-spacing: -0.01125rem;
  }

  body[data-account-state="previous-orders"] .account-shell__nav .search-row__input::placeholder {
    color: #c2b0a4;
  }

  body[data-account-state="previous-orders"] .account-shell__nav-link {
    min-height: 3.3125rem;
    padding: 0.9375rem;
    border-radius: 0.3125rem;
  }

  body[data-account-state="previous-orders"] .account-shell__content,
  body[data-account-state="previous-orders"] .order-product-list,
  body[data-account-state="previous-orders"] .order-product-row {
    width: var(--previous-orders-mobile-width);
    max-width: none;
  }

  body[data-account-state="previous-orders"] .order-product-list {
    gap: 0.9375rem;
  }

  body[data-account-state="previous-orders"] .order-product-row {
    height: 12.1875rem;
    min-height: 12.1875rem;
    grid-template-columns: 7.5rem 1fr;
    column-gap: 0.8125rem;
  }

  body[data-account-state="previous-orders"] .order-product-row:nth-child(1) {
    order: 3;
  }

  body[data-account-state="previous-orders"] .order-product-row:nth-child(2) {
    order: 2;
  }

  body[data-account-state="previous-orders"] .order-product-row:nth-child(3) {
    order: 1;
  }

  body[data-account-state="previous-orders"] .order-product-row__info {
    gap: 3.4375rem;
  }

  body[data-account-state="previous-orders"] .order-product-row__actions {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.625rem;
  }

  body[data-account-state="previous-orders"] .order-product-row:nth-child(2) .button {
    order: 1;
  }

  body[data-account-state="previous-orders"] .order-product-row:nth-child(2) .button-outline {
    order: 2;
  }

  body[data-account-state="previous-orders"] .order-product-row:not(:nth-child(2)) .button-outline {
    order: 1;
  }

  body[data-account-state="previous-orders"] .order-product-row:not(:nth-child(2)) .button {
    order: 2;
  }

  body[data-account-state="previous-orders"] .previous-orders__desktop-label {
    display: none;
  }

  body[data-account-state="previous-orders"] .previous-orders__mobile-label {
    display: inline;
  }

  body[data-account-state="previous-orders"] .order-product-row .button--muted {
    color: #ffffff;
    background: var(--color-accent);
    cursor: pointer;
  }
}


/* Variant tabs (delivery/payment options) */
.variant-tabs {
  display: grid;
  gap: 2rem;
}

.variant-tabs__heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}

.variant-tabs__title {
  font-family: var(--font-heading);
  font-size: clamp(2rem, 2.5vw, 3rem);
  letter-spacing: -0.04em;
  line-height: 1;
}

.variant-tabs__mark {
  font-size: 2rem;
  color: var(--color-accent);
  line-height: 1;
}

.variant-tabs__nav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
  gap: 0.5rem;
}

.variant-tab {
  display: grid;
  align-content: start;
  gap: 1.25rem;
  padding: 1.25rem;
  border-radius: var(--radius-sm);
  background: #272828;
  border: 1px solid #515151;
  cursor: pointer;
  transition: background-color var(--transition-fast), border-color var(--transition-fast);
}

.variant-tab:hover {
  background: rgba(255, 255, 255, 0.08);
}

.variant-tab--active {
  background: var(--color-accent);
  border-color: transparent;
}

.variant-tab--active:hover {
  background: #ff7e1e;
  border-color: transparent;
}

.variant-tab__num {
  color: rgba(255, 255, 255, 0.38);
  font-family: var(--font-ui);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
}

.variant-tab--active .variant-tab__num {
  color: rgba(255, 255, 255, 0.6);
}

.variant-tab__icon {
  width: 4rem;
  height: 4rem;
  color: rgba(255, 255, 255, 0.5);
  margin: 0.5rem auto;
}

.variant-tab--active .variant-tab__icon {
  color: var(--color-accent);
}

.variant-tab__icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.variant-tab__title {
  font-family: var(--font-ui);
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.3;
}

.variant-tab--active .variant-tab__title {
  color: #ffffff;
}

.variant-tabs__panel {
  display: grid;
  gap: 1.25rem;
  padding: 2rem;
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.04);
}

.variant-tabs__panel-title {
  font-family: var(--font-heading);
  font-size: clamp(1.5rem, 2vw, 2rem);
  letter-spacing: -0.03em;
}

.variant-tabs__panel-copy {
  color: rgba(255, 255, 255, 0.68);
  font-family: var(--font-ui);
  line-height: 1.6;
  max-width: 56rem;
}

.variant-tab__copy {
  color: rgba(255, 255, 255, 0.68);
  font-family: var(--font-ui);
  font-size: 1rem;
  line-height: 1.6;
}

/* Page hero with cross-tab nav */
.page-hero__tags {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-top: 1rem;
}

.page-hero__tags .button,
.page-hero__tags .button-outline {
  border-radius: 2.5rem;
  min-height: 3rem;
  padding-inline: 2.6875rem;
  text-transform: none;
  letter-spacing: normal;
}

.page-hero__tags .button-outline {
  border-color: var(--color-accent);
}

body[data-page="home"] .page-section--home-catalog .section-heading__content {
  width: min(59.1875rem, 100%);
  max-width: 59.1875rem;
}

body:is([data-page="home"], [data-page="about"]) .page-section:has(.certificate-grid) .section-heading__content {
  width: min(58rem, 100%);
  max-width: 58rem;
}

body[data-page="home"] .home-about__title,
body[data-page="home"] .contact-block__title,
body[data-page="home"] .footer__card-title,
body[data-page="home"] .footer__nav-title,
body[data-page="home"] .footer__social-title {
  font-family: var(--font-heading);
}

body[data-page="home"] .home-about__title {
  letter-spacing: -0.04em;
}

body[data-page="home"] .contact-block__title {
  letter-spacing: -0.04em;
}

body[data-page="news"] .page-section--news-hero {
  padding-top: 0;
  padding-bottom: 2.375rem;
}

body[data-page="news"] .page-section--news-feed {
  padding-top: 0;
}

body[data-page="news"] .section-divider--news {
  display: none;
}

body[data-page="news"] .page-copy {
  color: #ffffff;
  height: 6.6875rem;
  overflow: visible;
  font-size: 3.875rem;
  font-weight: 400;
  line-height: 1.03;
  letter-spacing: -0.0775rem;
}

body[data-page="news"] .page-title {
  height: 3.0625rem;
  overflow: visible;
}

body[data-page="news"] .page-section--news-feed .section-actions {
  margin-top: -0.625rem;
}

body[data-page="news"] .page-section--news-contact {
  margin-top: 4.5rem;
  padding-top: 1rem;
  padding-bottom: 2rem;
}

body[data-page="news-article"] .page-section--news-article-hero {
  padding-top: 0;
  padding-bottom: 3.9375rem;
}

body[data-page="news-article"] .page-hero {
  gap: 0;
}

body[data-page="news-article"] .page-hero__heading {
  display: grid;
  grid-template-columns: minmax(0, 44.3125rem) auto;
  column-gap: 1.25rem;
  row-gap: 0;
  margin-top: 9.1875rem;
  align-items: start;
}

body[data-page="news-article"] .page-title {
  width: 44.3125rem;
  max-width: 44.3125rem;
  height: 2.6875rem;
  overflow: visible;
  font-size: 3.875rem;
  font-weight: 400;
  line-height: 1.03;
  letter-spacing: -0.0775rem;
}

body[data-page="news-article"] .meta-row {
  height: 1.0625rem;
  justify-self: end;
  align-self: start;
  display: flex;
  align-items: flex-start;
  color: #a1a0a0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
}

body[data-page="news-article"] .page-section--article-hero-image {
  padding-block: 0;
}

body[data-page="news-article"] .article-hero-figure {
  width: 100%;
  height: 41.5625rem;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-md);
}

body[data-page="news-article"] .article-hero-figure img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

body[data-page="news-article"] .page-section--article-body {
  padding-top: 3.125rem;
  padding-bottom: 8.875rem;
}

body[data-page="news-article"] .page-section--article-body .container.page-template {
  display: block;
}

body[data-page="news-article"] .article-layout {
  display: block;
}

body[data-page="news-article"] .article-body {
  width: 57.25rem;
  max-width: 57.25rem;
  gap: 0;
  color: #e9e6e6;
  font-family: var(--font-ui);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.4;
}

body[data-page="news-article"] .article-body > * + * {
  margin-top: 0.5625rem;
}

body[data-page="news-article"] .article-body h2 {
  color: #ffffff;
  font-family: var(--font-ui);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}

body[data-page="news-article"] .article-body blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #e9e6e6;
  font-family: var(--font-ui);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.4;
}

body[data-page="news-article"] .page-section--news-related {
  padding-top: 1.125rem;
}

body[data-page="news-article"] .page-section--news-related .section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 1.25rem;
  padding-bottom: 0;
  border-bottom: 0;
}

body[data-page="news-article"] .page-section--news-related .section-heading__title {
  width: 24.8125rem;
  max-width: 24.8125rem;
  height: 2.6875rem;
  overflow: visible;
  font-size: 3.875rem;
  font-weight: 400;
  line-height: 1.03;
  letter-spacing: -0.0775rem;
}

body[data-page="news-article"] .page-section--news-related .section-tag {
  width: 10.0625rem;
  min-width: 10.0625rem;
  justify-self: end;
}

body[data-page="news-article"] .section-divider--news-article {
  margin-top: 3.3125rem;
  margin-bottom: 3.75rem;
}

body[data-page="news-article"] .page-section--news-contact {
  padding-top: 5.5rem;
  padding-bottom: 2rem;
}

body[data-page="news-article"] .page-section--news-related .news-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
}

body[data-page="news-article"] .page-section--news-related .news-card__action {
  display: none;
}

