/* Small layout refinements kept after the shared responsive styles. */
.catalog-section-card > div {
  position: relative;
  z-index: 2;
  width: 48%;
}

.catalog-section-card h3,
.catalog-section-card p {
  max-width: none;
}

.catalog-section-card > img {
  z-index: 1;
  right: 0.75rem;
  bottom: 0.75rem;
  width: 48%;
  height: 68%;
  mix-blend-mode: multiply;
}

.woocommerce .catalog-help a.button {
  display: inline-flex;
  width: 12rem;
  min-width: 12rem;
  height: 2.5rem;
  min-height: 2.5rem;
  align-items: center;
  justify-content: center;
  padding: 0.6875rem 1.25rem;
  border: 0.0625rem solid #ff5c0a;
  border-radius: 0.5rem;
  background: #ff5c0a;
  color: #fff;
  font-size: 0.6875rem;
  line-height: normal;
  text-align: center;
  white-space: nowrap;
}

.woocommerce .catalog-help a.button:hover,
.woocommerce .catalog-help a.button:focus-visible {
  border-color: #e84d00;
  background: #e84d00;
  color: #fff;
}

.catalog-category-products__bar {
  margin-bottom: 1rem;
}

@media (min-width: 768px) {
  .product-card__quick-buy,
  .product-card__actions .button.product-card__quick-buy,
  .woocommerce .product-card__actions a.product-card__quick-buy,
  .woocommerce .product-card .product-card__actions a.product-card__quick-buy {
    width: 33%;
    max-width: 33%;
    flex-basis: 33%;
    padding: 0.25rem;
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    line-height: 1.15;
    white-space: normal;
  }

  .product-card__quantity-control {
    grid-template-columns: 1.375rem minmax(0, 1fr) 1.375rem;
  }

  .product-card__quantity-control button {
    font-size: 1rem;
  }

  .product-card__quantity-control span {
    gap: 0.25rem;
    font-size: 0.6875rem;
  }

  .product-card__quantity-control b {
    min-width: 1.3125rem;
    height: 1.3125rem;
    padding: 0 0.25rem;
    font-size: 0.6875rem;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .product-card__quick-buy,
  .product-card__actions .button.product-card__quick-buy,
  .woocommerce .product-card__actions a.product-card__quick-buy,
  .woocommerce .product-card .product-card__actions a.product-card__quick-buy {
    width: 32%;
    max-width: 32%;
    flex-basis: 32%;
  }
}

@media (max-width: 767px) {
  .catalog-section-card > div {
    width: 52%;
  }

  .catalog-section-card > img {
    right: 0.5rem;
    bottom: 0.5rem;
    width: 44%;
    height: 70%;
  }

  .woocommerce .catalog-help a.button {
    width: 100%;
    min-width: 0;
  }
}

/* Readable selection form typography. */
.selection-request > div > span {
  font-size: 0.75rem;
}

.selection-request label,
.selection-request input,
.selection-request textarea,
.selection-request button {
  font-size: 0.875rem;
}

.selection-request label {
  gap: 0.5rem;
  line-height: 1.4;
}

.selection-request label small,
.selection-request__consent {
  font-size: 0.75rem;
}

.selection-request input {
  min-height: 3.25rem;
}

.selection-request textarea {
  min-height: 7rem;
}

/* Stable, centered chevrons for native sort selects. */
.catalog-category-products__bar select,
.reviews-toolbar select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: 2.75rem;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%23565A5F' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.875rem center;
  background-size: 1rem 1rem;
}

/* Homepage product sections: four balanced cards per desktop row. */
@media (min-width: 1200px) {
  body.home .products-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Catalog section cards mirror the restrained lift used by wholesale directions. */
.catalog-section-card {
  border: 0.0625rem solid transparent;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.catalog-section-card:hover,
.catalog-section-card:focus-visible {
  border-color: #ffc3a4;
  box-shadow: 0 0.875rem 2.125rem rgb(18 19 20 / 8%);
  transform: translateY(-0.1875rem);
}

.catalog-section-card.is-tuning::before,
.catalog-section-card > span {
  display: none;
}

.catalog-section-card.is-tuning h3 {
  margin-top: 0;
}

/* The dedicated characteristics tab should use the whole content panel. */
.product-tab-panel .product-features--wide {
  width: 100%;
  max-width: none;
}

/* Buyer information pages: distinct, readable warranty and return flows. */
.warranty-page {
  padding-bottom: 3.5rem;
  background: #fafaf8;
}

.warranty-page__heading {
  max-width: 58rem;
}

.info-page__heading .warranty-page__eyebrow,
.warranty-page__eyebrow {
  margin: 0 0 0.625rem;
  color: #ff5c0a;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

.warranty-page__heading > p:last-child {
  max-width: 48rem;
  font-size: 1rem;
  line-height: 1.55;
}

.warranty-page .warranty-intro {
  display: grid;
  min-height: 0;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  align-items: center;
  gap: 1.25rem;
  padding: 1.75rem;
  border: 0.0625rem solid #ebe7e2;
  background: #fff;
}

.warranty-intro__mark {
  display: grid;
  width: 3.5rem;
  height: 3.5rem;
  place-items: center;
  border-radius: 0.75rem;
  background: #fff0e9;
  color: #ff5c0a;
}

.warranty-intro__mark svg {
  width: 1.75rem;
  height: 1.75rem;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.warranty-page .warranty-intro h2 {
  font-size: 1.75rem;
  line-height: 1.2;
}

.warranty-page .warranty-intro p {
  max-width: 65rem;
  margin-top: 0.625rem;
  font-size: 0.9375rem;
  line-height: 1.55;
}

.warranty-page .warranty-steps {
  gap: 1rem;
  margin-top: 1rem;
}

.warranty-page .warranty-steps article {
  min-height: 10rem;
  gap: 1rem;
  padding: 1.375rem;
  background: #fff;
}

.warranty-page .warranty-steps article > strong {
  display: grid;
  flex: 0 0 2.75rem;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  border-radius: 50%;
  background: #101112;
  color: #fff;
  font-size: 0.75rem;
}

.warranty-page .warranty-steps h2 {
  margin: 0.25rem 0 0.625rem;
  font-size: 1.0625rem;
  line-height: 1.25;
}

.warranty-page .warranty-steps p {
  font-size: 0.875rem;
  line-height: 1.55;
}

.warranty-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 3rem;
}

.warranty-details article {
  padding: 1.75rem;
  border: 0.0625rem solid #e2e0dc;
  border-radius: 0.875rem;
  background: #fff;
}

.warranty-details h2 {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.25;
}

.warranty-details > article > p {
  margin: 0.75rem 0 1.25rem;
  color: #74777d;
  font-size: 0.875rem;
  line-height: 1.55;
}

.warranty-details ul {
  display: grid;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.warranty-details li {
  position: relative;
  padding-left: 1.5rem;
  color: #33373c;
  font-size: 0.875rem;
  line-height: 1.5;
}

.warranty-details li::before {
  position: absolute;
  top: 0.42em;
  left: 0;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  background: #ff5c0a;
  box-shadow: inset 0 0 0 0.1875rem #fff0e9;
  content: '';
}

.warranty-notice {
  display: grid;
  grid-template-columns: minmax(14rem, 0.42fr) minmax(0, 1fr);
  align-items: center;
  gap: 1.5rem;
  margin-top: 1rem;
  padding: 1.5rem 1.75rem;
  border-radius: 0.875rem;
  background: #101112;
  color: #fff;
}

.warranty-notice > div {
  display: flex;
  align-items: center;
  gap: 0.875rem;
}

.warranty-notice span {
  display: grid;
  flex: 0 0 2.5rem;
  width: 2.5rem;
  height: 2.5rem;
  place-items: center;
  border-radius: 50%;
  background: #ff5c0a;
  font-size: 1.125rem;
  font-weight: 800;
}

.warranty-notice h2 {
  margin: 0;
  font-size: 1.125rem;
}

.warranty-notice p {
  margin: 0;
  color: rgb(255 255 255 / 72%);
  font-size: 0.875rem;
  line-height: 1.55;
}

.warranty-page .warranty-faq {
  margin-top: 3rem;
  padding: 1.75rem;
  background: #f4f1ed;
}

.warranty-faq__heading {
  margin-bottom: 1.25rem;
}

.warranty-page .warranty-faq h2 {
  margin: 0;
  font-size: 1.75rem;
}

.warranty-page .warranty-faq details {
  margin-top: 0.625rem;
  border: 0.0625rem solid #e5e1dc;
  border-radius: 0.625rem;
}

.warranty-page .warranty-faq summary {
  min-height: 3.75rem;
  padding: 0 1rem;
  font-size: 0.9375rem;
  font-weight: 700;
}

.warranty-page .warranty-faq summary b {
  display: grid;
  flex: 0 0 1.75rem;
  width: 1.75rem;
  height: 1.75rem;
  place-items: center;
  border-radius: 50%;
  background: #fff0e9;
  font-size: 1.125rem;
  transition: transform 0.2s ease;
}

.warranty-page .warranty-faq details[open] summary b {
  transform: rotate(45deg);
}

.warranty-page .warranty-faq details > div > p {
  padding: 0 3.5rem 1rem 1rem;
  font-size: 0.875rem;
  line-height: 1.55;
}

.warranty-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-top: 1rem;
  padding: 1.75rem;
  border-radius: 0.875rem;
  background: #fff;
  box-shadow: 0 0.625rem 2rem rgb(18 19 20 / 5%);
}

.warranty-cta h2 {
  margin: 0;
  font-size: 1.5rem;
}

.warranty-cta > div > p:last-child {
  margin: 0.5rem 0 0;
  color: #74777d;
  font-size: 0.875rem;
}

.warranty-cta .button {
  min-width: 12rem;
  min-height: 3rem;
  border-radius: 0.625rem;
}

.warranty-legal-note {
  margin: 1rem 0 0;
  color: #8a8d92;
  font-size: 0.75rem;
  line-height: 1.45;
}

/* Company page: presentation layout without unsupported statistics. */
.company-page {
  padding-bottom: 3.5rem;
  background: #fafaf8;
}

.company-eyebrow,
.info-page__heading .company-eyebrow {
  margin: 0 0 0.625rem;
  color: #ff5c0a;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

.company-page__heading > p:last-child {
  font-size: 1rem;
  line-height: 1.5;
}

.company-page .company-hero--presentation {
  position: relative;
  display: grid;
  min-height: 31rem;
  height: auto;
  grid-template-columns: minmax(0, 1.08fr) minmax(24rem, 0.92fr);
  gap: 2rem;
  padding: 2.75rem;
  border: 0;
  background: #f3efea;
}

.company-page .company-hero__content {
  display: flex;
  justify-content: center;
  padding: 0;
}

.company-page .company-hero h2 {
  max-width: 43rem;
  font-size: clamp(2.25rem, 3.2vw, 3.5rem);
  line-height: 1.08;
  letter-spacing: -0.09rem;
}

.company-page .company-hero__content > p:not(.company-eyebrow) {
  max-width: 43rem;
  margin: 1.25rem 0 0;
  color: #5f6267;
  font-size: 1rem;
  line-height: 1.6;
}

.company-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.75rem;
}

.company-hero__actions .button {
  min-height: 3rem;
  border-radius: 0.625rem;
}

.company-hero__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin: 1.75rem 0 0;
  padding: 0;
  list-style: none;
}

.company-hero__facts li {
  padding: 0.625rem 0.875rem;
  border: 0.0625rem solid #ded8d1;
  border-radius: 999px;
  background: rgb(255 255 255 / 65%);
  color: #3f4347;
  font-size: 0.75rem;
  font-weight: 700;
}

.company-hero__visual {
  position: relative;
  display: grid;
  min-height: 25rem;
  align-self: stretch;
  padding: 1.25rem;
  overflow: hidden;
  place-items: center;
  border-radius: 0.75rem;
  background: #fff;
}

.company-page .company-hero__visual img {
  width: 100%;
  height: 100%;
  max-height: none;
  border-radius: 0;
  object-fit: contain;
  object-position: center;
}

.company-story {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 4rem;
  margin-top: 4rem;
  padding: 0 1rem;
}

.company-story h2,
.company-section-heading h2 {
  margin: 0;
  font-size: 2rem;
  line-height: 1.2;
}

.company-story > div:last-child p {
  margin: 0;
  color: #5f6369;
  font-size: 0.9375rem;
  line-height: 1.7;
}

.company-story > div:last-child p + p {
  margin-top: 1rem;
}

.company-page .company-principles {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 3rem;
}

.company-page .company-principles article {
  min-height: 11rem;
  padding: 1.375rem;
  background: #fff;
}

.company-page .company-principles i {
  flex-basis: 3rem;
  width: 3rem;
  height: 3rem;
}

.company-page .company-principles h2 {
  margin: 0.25rem 0 0.625rem;
  font-size: 1rem;
  line-height: 1.3;
}

.company-page .company-principles p {
  font-size: 0.8125rem;
  line-height: 1.55;
}

.company-directions,
.company-process {
  margin-top: 4rem;
}

.company-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 1.25rem;
}

.company-section-heading > a {
  color: #ff5c0a;
  font-size: 0.8125rem;
  font-weight: 800;
}

.company-directions__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.company-directions__grid > a {
  position: relative;
  min-height: 15rem;
  padding: 1.375rem;
  overflow: hidden;
  border: 0.0625rem solid #e2e0dc;
  border-radius: 0.875rem;
  background: #fff;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.company-directions__grid > a:hover,
.company-directions__grid > a:focus-visible {
  border-color: #ffc3a4;
  box-shadow: 0 0.875rem 2.125rem rgb(18 19 20 / 8%);
  transform: translateY(-0.1875rem);
}

.company-directions__grid > a > div {
  position: relative;
  z-index: 2;
}

.company-directions__grid h3 {
  margin: 0;
  font-size: 1.125rem;
}

.company-directions__grid p {
  max-width: 13rem;
  margin: 0.625rem 0 0;
  color: #74777d;
  font-size: 0.8125rem;
  line-height: 1.5;
}

.company-directions__grid span {
  position: absolute;
  top: 11.2rem;
  color: #ff5c0a;
  font-size: 0.75rem;
  font-weight: 800;
}

.company-directions__grid img {
  position: absolute;
  right: -0.75rem;
  bottom: -0.25rem;
  width: 52%;
  height: 55%;
  object-fit: contain;
  object-position: right bottom;
  mix-blend-mode: multiply;
}

.company-process ol {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.company-process li {
  min-height: 11rem;
  padding: 1.375rem;
  border-radius: 0.875rem;
  background: #f3efea;
}

.company-process li > strong {
  color: #ff5c0a;
  font-size: 0.75rem;
}

.company-process h3 {
  margin: 2.25rem 0 0.625rem;
  font-size: 1.0625rem;
}

.company-process li p {
  margin: 0;
  color: #74777d;
  font-size: 0.8125rem;
  line-height: 1.5;
}

.company-cta {
  display: flex;
  min-height: 12rem;
  align-items: center;
  justify-content: space-between;
  gap: 3rem;
  margin-top: 4rem;
  padding: 2rem;
  border-radius: 0.875rem;
  background: #101112;
  color: #fff;
}

.company-cta h2 {
  max-width: 51rem;
  margin: 0;
  font-size: 1.75rem;
  line-height: 1.2;
}

.company-cta > div > p:last-child {
  margin: 0.625rem 0 0;
  color: rgb(255 255 255 / 68%);
  font-size: 0.875rem;
}

.company-cta .button {
  flex: 0 0 auto;
  min-width: 13rem;
  min-height: 3rem;
  border-radius: 0.625rem;
}

@media (min-width: 768px) and (max-width: 1199px) {
  .company-page .company-hero--presentation {
    min-height: 29rem;
    height: auto;
    grid-template-columns: minmax(0, 1fr) minmax(19rem, 0.85fr);
    padding: 2rem;
  }

  .company-page .company-hero h2 {
    font-size: 2.375rem;
  }

  .company-page .company-principles,
  .company-directions__grid,
  .company-process ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .company-directions__grid > a {
    min-height: 13rem;
  }

  .company-directions__grid span {
    top: 9.25rem;
  }
}

@media (max-width: 767px) {
  .warranty-page,
  .company-page {
    padding-bottom: 2rem;
  }

  .warranty-page__heading > p:last-child,
  .company-page__heading > p:last-child {
    font-size: 0.875rem;
  }

  .warranty-page .warranty-intro {
    grid-template-columns: 2.75rem minmax(0, 1fr);
    gap: 0.875rem;
    padding: 1.25rem;
  }

  .warranty-intro__mark {
    width: 2.75rem;
    height: 2.75rem;
  }

  .warranty-page .warranty-intro h2 {
    font-size: 1.25rem;
  }

  .warranty-page .warranty-intro p {
    font-size: 0.8125rem;
  }

  .warranty-page .warranty-steps article {
    min-height: 0;
    padding: 1.25rem;
  }

  .warranty-page .warranty-steps h2 {
    font-size: 1rem;
  }

  .warranty-page .warranty-steps p,
  .warranty-details > article > p,
  .warranty-details li,
  .warranty-notice p,
  .warranty-page .warranty-faq details > div > p,
  .warranty-cta > div > p:last-child {
    font-size: 0.8125rem;
  }

  .warranty-details {
    grid-template-columns: 1fr;
    margin-top: 2rem;
  }

  .warranty-details article {
    padding: 1.25rem;
  }

  .warranty-details h2 {
    font-size: 1.25rem;
  }

  .warranty-notice {
    grid-template-columns: 1fr;
    gap: 1rem;
    padding: 1.25rem;
  }

  .warranty-page .warranty-faq {
    min-height: 0;
    margin-top: 2rem;
    padding: 1.25rem;
  }

  .warranty-page .warranty-faq h2 {
    font-size: 1.375rem;
  }

  .warranty-page .warranty-faq summary {
    min-height: 3.5rem;
    gap: 1rem;
    padding: 0.625rem 0.75rem;
    font-size: 0.8125rem;
  }

  .warranty-page .warranty-faq details > div > p {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
  }

  .warranty-cta {
    display: block;
    padding: 1.25rem;
  }

  .warranty-cta h2 {
    font-size: 1.25rem;
  }

  .warranty-cta .button {
    width: 100%;
    margin-top: 1.25rem;
  }

  .company-page .company-hero--presentation {
    min-height: 0;
    height: auto;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    padding: 1.25rem;
  }

  .company-page .company-hero h2 {
    font-size: 2rem;
  }

  .company-page .company-hero__content > p:not(.company-eyebrow) {
    margin-top: 1rem;
    font-size: 0.875rem;
  }

  .company-hero__actions {
    display: grid;
    grid-template-columns: 1fr;
    margin-top: 1.25rem;
  }

  .company-hero__actions .button {
    width: 100%;
  }

  .company-hero__facts {
    margin-top: 1.25rem;
  }

  .company-hero__facts li {
    font-size: 0.6875rem;
  }

  .company-hero__visual {
    min-height: 15rem;
    padding: 0.75rem;
  }

  .company-story {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    margin-top: 2.5rem;
    padding: 0;
  }

  .company-story h2,
  .company-section-heading h2 {
    font-size: 1.5rem;
  }

  .company-story > div:last-child p {
    font-size: 0.875rem;
  }

  .company-page .company-principles,
  .company-directions__grid,
  .company-process ol {
    grid-template-columns: 1fr;
  }

  .company-page .company-principles {
    margin-top: 2rem;
  }

  .company-page .company-principles article {
    min-height: 0;
  }

  .company-directions,
  .company-process {
    margin-top: 2.5rem;
  }

  .company-directions__grid > a {
    min-height: 12rem;
  }

  .company-directions__grid span {
    top: 8.25rem;
  }

  .company-process h3 {
    margin-top: 1.5rem;
  }

  .company-cta {
    display: block;
    min-height: 0;
    margin-top: 2.5rem;
    padding: 1.5rem;
  }

  .company-cta h2 {
    font-size: 1.375rem;
  }

  .company-cta > div > p:last-child {
    font-size: 0.8125rem;
    line-height: 1.5;
  }

  .company-cta .button {
    width: 100%;
    min-width: 0;
    margin-top: 1.25rem;
  }
}

/* Company hero uses the same Niva composition as the homepage. */
.company-page .company-hero--presentation {
  position: relative;
  display: block;
  min-height: 31rem;
  padding: 0;
  overflow: hidden;
  border: 0.0625rem solid #e6e2dc;
  background: #fff;
  isolation: isolate;
}

.company-page .company-hero__content {
  position: relative;
  z-index: 2;
  width: 56%;
  min-height: 31rem;
  align-items: flex-start;
  padding: 3.25rem 1rem 2.75rem 2.75rem;
}

.company-page .company-hero h2 {
  max-width: 36rem;
  font-size: clamp(2.5rem, 3.25vw, 3.75rem);
  line-height: 1.05;
  letter-spacing: -0.115rem;
}

.company-page .company-hero h2 em {
  color: #ff5c0a;
  font-style: normal;
}

.company-page .company-hero__visual {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  width: 58%;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 0;
  background: #fff;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 22%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 22%);
}

.company-page .company-hero__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.company-page .company-hero__content > p:not(.company-eyebrow) {
  max-width: 30rem;
}

.company-page .company-hero__facts li {
  background: rgb(255 255 255 / 88%);
  backdrop-filter: blur(0.25rem);
}

/* Larger model summary and section navigation on every catalogue page. */
.model-catalog-selection {
  min-height: 4.25rem;
  gap: 1.5rem;
  margin-bottom: 1.25rem;
  padding: 0.875rem 1.25rem;
  border-radius: 0.75rem;
  font-size: 0.9375rem;
  line-height: 1.45;
}

.model-catalog-selection a {
  flex: 0 0 auto;
  font-size: 0.9375rem;
  white-space: nowrap;
}

.catalog-category-tabs {
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.catalog-category-tabs a {
  min-height: 2.75rem;
  padding: 0.5rem 1.125rem;
  border-radius: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.2;
}

@media (min-width: 768px) and (max-width: 1199px) {
  .company-page .company-hero--presentation {
    min-height: 27rem;
  }

  .company-page .company-hero__content {
    width: 54%;
    min-height: 27rem;
    padding: 2.5rem 0.75rem 2.25rem 2rem;
  }

  .company-page .company-hero h2 {
    font-size: 2.625rem;
  }

  .company-page .company-hero__visual {
    width: 59%;
  }

  .catalog-category-tabs a {
    font-size: 0.8125rem;
  }
}

@media (max-width: 767px) {
  .company-page .company-hero--presentation {
    min-height: 0;
    padding: 0;
  }

  .company-page .company-hero__content {
    width: 100%;
    min-height: 0;
    padding: 1.5rem 1.25rem 0;
  }

  .company-page .company-hero h2 {
    font-size: 2rem;
    letter-spacing: -0.0625rem;
  }

  .company-page .company-hero__visual {
    position: relative;
    width: 100%;
    height: 15.5rem;
    margin-top: 0.5rem;
    -webkit-mask-image: none;
    mask-image: none;
  }

  .company-page .company-hero__visual img {
    object-fit: contain;
    object-position: center bottom;
  }

  .model-catalog-selection {
    min-height: 0;
    gap: 0.625rem;
    margin-bottom: 1rem;
    padding: 0.875rem 1rem;
    font-size: 0.875rem;
    line-height: 1.4;
  }

  .model-catalog-selection a {
    font-size: 0.875rem;
  }

  .catalog-category-tabs {
    gap: 0.625rem;
    margin-bottom: 1rem;
  }

  .catalog-category-tabs a {
    min-height: 2.625rem;
    padding: 0.5rem 1rem;
    font-size: 0.8125rem;
  }
}

/* One visual language for storefront CTA blocks: the same Niva as on home. */
.catalog-help,
.hub-cta,
.service-dark-cta,
.company-cta,
.article-detail__cta,
.article-sidebar__help,
.article-mobile-help,
.order-received__help {
  position: relative;
  overflow: hidden;
  background: #101112;
  isolation: isolate;
}

.catalog-help::before,
.hub-cta::before,
.service-dark-cta::before,
.company-cta::before,
.article-detail__cta::before,
.article-sidebar__help::before,
.article-mobile-help::before,
.order-received__help::before {
  position: absolute;
  z-index: -2;
  inset: 0;
  background: url('../images/cta-final-figma.png') center right / cover no-repeat;
  content: '';
}

.catalog-help::after,
.hub-cta::after,
.service-dark-cta::after,
.company-cta::after,
.article-detail__cta::after,
.article-sidebar__help::after,
.article-mobile-help::after,
.order-received__help::after {
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, #101112 0%, rgb(16 17 18 / 96%) 36%, rgb(16 17 18 / 36%) 72%, rgb(16 17 18 / 68%) 100%);
  content: '';
}

.catalog-help,
.hub-cta,
.service-dark-cta,
.company-cta,
.article-detail__cta {
  min-height: 10rem;
}

.catalog-help > *,
.hub-cta > *,
.service-dark-cta > *,
.company-cta > *,
.article-detail__cta > *,
.article-sidebar__help > *,
.article-mobile-help > *,
.order-received__help > * {
  position: relative;
  z-index: 1;
}

.catalog-help h2,
.hub-cta h2,
.service-dark-cta h2,
.company-cta h2,
.article-detail__cta h2,
.article-sidebar__help h2,
.article-mobile-help h2,
.order-received__help h2 {
  color: #fff;
}

.catalog-help p,
.hub-cta p,
.service-dark-cta p,
.company-cta > div > p:last-child,
.article-detail__cta p,
.article-sidebar__help p,
.article-mobile-help p,
.order-received__help p {
  color: rgb(255 255 255 / 72%);
}

.service-dark-cta .button--outline {
  border-color: rgb(255 255 255 / 42%);
  background: rgb(16 17 18 / 52%);
  color: #fff;
  backdrop-filter: blur(0.1875rem);
}

@media (max-width: 767px) {
  .catalog-help,
  .hub-cta,
  .service-dark-cta,
  .company-cta,
  .article-detail__cta,
  .article-sidebar__help,
  .article-mobile-help,
  .order-received__help {
    min-height: 15rem;
  }

  .catalog-help::before,
  .hub-cta::before,
  .service-dark-cta::before,
  .company-cta::before,
  .article-detail__cta::before,
  .article-sidebar__help::before,
  .article-mobile-help::before,
  .order-received__help::before {
    background-image: url('../images/cta-final-mobile.png');
    background-position: center bottom;
  }

  .catalog-help::after,
  .hub-cta::after,
  .service-dark-cta::after,
  .company-cta::after,
  .article-detail__cta::after,
  .article-sidebar__help::after,
  .article-mobile-help::after,
  .order-received__help::after {
    background: linear-gradient(180deg, #101112 0%, rgb(16 17 18 / 92%) 48%, rgb(16 17 18 / 24%) 100%);
  }

  .catalog-help > div,
  .hub-cta > div,
  .service-dark-cta > div:first-child,
  .company-cta > div,
  .article-detail__cta > div {
    max-width: 22rem;
  }
}

/* September 2026: compact catalogue navigation and clearer supporting UI. */
@media (min-width: 768px) {
  .catalog-category-tabs,
  .catalog-category-tabs--aggregates,
  .catalog-category-tabs--models {
    display: flex;
    flex-wrap: wrap;
    gap: 0.625rem;
  }

  .catalog-category-tabs a {
    flex: 0 1 11.25rem;
    min-width: 8.75rem;
    max-width: 11.25rem;
    min-height: 2.5rem;
    padding: 0.4375rem 1rem;
    font-size: 0.8125rem;
  }
}

.catalog-category-help {
  display: flex;
  min-height: 8.25rem;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 1.25rem 1.5rem;
}

.catalog-category-help > div {
  flex: 1;
  min-width: 0;
}

/* Distinct catalogue imagery, bottom-right inside the home category tiles. */
body.home .category-card > img {
  right: 0.45rem;
  bottom: 0.35rem;
  left: auto;
  top: auto;
  width: 49%;
  height: 70%;
  transform: none;
  object-fit: contain;
  object-position: right bottom;
}

/* Wide Niva CTAs: copy on the left and a compact action on the right. */
@media (min-width: 768px) {
  .catalog-help,
  .hub-cta,
  .service-dark-cta,
  .company-cta,
  .article-detail__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
  }
  .catalog-help > div,
  .hub-cta > div,
  .service-dark-cta > div:first-child,
  .company-cta > div:first-child,
  .article-detail__cta > div { min-width: 0; flex: 1 1 auto; }
  .catalog-help > .button,
  .hub-cta > .button,
  .service-dark-cta > .button,
  .company-cta > .button,
  .article-detail__cta > .button { width: auto; min-width: 12.5rem; max-width: 15rem; flex: 0 0 auto; }
  .article-sidebar__help { display: flex; flex-direction: column; }
  .article-sidebar__help > .button { width: auto; max-width: 100%; margin: auto 0 0 auto; align-self: flex-end; }
  .order-received__help {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    align-content: center;
    column-gap: 2rem;
  }
  .order-received__help > h2,
  .order-received__help > p { grid-column: 1; }
  .order-received__help > .commerce-button {
    grid-column: 2;
    grid-row: 1 / span 2;
    width: auto;
    min-width: 12rem;
    margin: 0;
    align-self: center;
  }
  .final-cta__card > div {
    top: 0;
    left: 1.75rem;
    display: grid;
    width: calc(100% - 3.5rem);
    height: 100%;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    align-content: center;
    align-items: center;
    column-gap: 2rem;
    row-gap: 0.45rem;
  }
  .final-cta__card > div > h2 { grid-column: 1; width: auto; height: auto; }
  .final-cta__card > div > p:not(.eyebrow) { grid-column: 1; width: auto; height: auto; }
  .final-cta__card > div > .button {
    position: static;
    grid-column: 2;
    grid-row: 1 / span 2;
    width: auto;
    min-width: 12.5rem;
    min-height: 2.875rem;
    height: auto;
    justify-content: center;
    margin: 0;
    font-size: 0.8125rem;
  }
}

/* Articles must shrink to the viewport even when an HTML table is wider. */
@media (max-width: 1199px) {
  .article-detail__layout { grid-template-columns: minmax(0, 1fr); }
  .article-detail__body { min-width: 0; max-width: 100%; }
  .article-detail__body table { max-width: 100%; }
}

@media (max-width: 767px) {
  .site-header .brand:not(.brand--footer) { width: 10.75rem; height: 3.5rem; margin-top: 0.4rem; }
  .site-header .brand:not(.brand--footer) img { width: 100%; height: 100%; object-fit: contain; }
  body.home .category-card > div {
    width: 56%;
    max-width: none;
    padding: 1rem 0 0 0.75rem;
  }
  body.home .category-card > img { width: 40%; height: 62%; }

  .hub-cta,
  .service-dark-cta,
  .company-cta,
  .article-mobile-help,
  .order-received__help {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }
  .hub-cta::before,
  .service-dark-cta::before,
  .company-cta::before,
  .article-mobile-help::before,
  .order-received__help::before { transform: scaleX(-1); }
  .hub-cta > .button,
  .service-dark-cta > .button,
  .company-cta > .button,
  .article-mobile-help > .button,
  .order-received__help > .commerce-button {
    width: auto !important;
    min-width: 0;
    max-width: 13rem;
    min-height: 2.75rem;
    margin: auto 0 0 auto;
    padding: 0 0.9rem;
    align-self: flex-end;
    font-size: 0.8125rem;
  }
  .service-dark-cta__actions { width: auto; margin: auto 0 0 auto; align-self: flex-end; }
  .service-dark-cta__actions .button { width: auto !important; min-height: 2.75rem; }
  .final-cta__card > picture img { transform: scaleX(-1); }
  .final-cta__card > div { left: 1rem; width: calc(100% - 2rem); height: calc(100% - 2rem); }
  .final-cta__card > div > .button {
    top: auto;
    right: 0;
    bottom: 0;
    left: auto;
    width: auto;
    min-width: 0;
    min-height: 2.75rem;
    justify-content: center;
  }

  .article-detail-page .container { width: calc(100% - 2rem); }
  .article-detail__body { padding: 1.35rem 1.1rem 1.5rem; overflow-wrap: anywhere; }
  .article-detail__body h2 { margin-bottom: 0.875rem; font-size: 1.3rem; line-height: 1.3; }
  .article-detail__body > p + p { margin-top: 1rem; }
  .article-detail__body > p + h2,
  .article-detail__body > h2:not(:first-child) { margin-top: 2rem; }
  .article-detail__body ul,
  .article-detail__body ol { max-width: 100%; margin: 1rem 0; padding-left: 1.4rem; }
  .article-detail__body li + li { margin-top: 0.45rem; }
  .article-detail__body table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }

  .product-page .product-cart { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.65rem; }
  .product-page .product-cart__add-area,
  .product-page .product-cart__quantity-control { width: 100%; }
  .product-page .product-buy-one {
    display: inline-flex !important;
    width: 100%;
    min-height: 3rem;
    align-items: center;
    justify-content: center;
    border-color: #ff5c0a;
    background: #ff5c0a;
    color: #fff;
    font-size: 0.9375rem;
  }

  .product-card,
  .products-section .product-card,
  .category-products-grid .product-card,
  .product-related .product-card { height: 22.5rem !important; min-height: 22.5rem; }
  body.home .products-section .product-card { height: 27.25rem !important; min-height: 27.25rem; }
  .product-card__actions,
  .category-products-grid .product-card__actions,
  .product-related .product-card__actions {
    height: auto;
    min-height: 4.8rem;
    flex-direction: column;
    gap: 0.4rem;
    margin-top: auto;
  }
  .product-card__purchase { width: 100%; flex: 0 0 auto; }
  .product-card__quick-buy,
  .woocommerce .product-card__actions a.product-card__quick-buy {
    display: inline-flex !important;
    width: 100%;
    max-width: none;
    min-height: 2.125rem;
    flex: 0 0 auto;
    font-size: 0.8125rem;
  }
}

@media (max-width: 360px) {
  .site-header .brand:not(.brand--footer) { width: 9.75rem; }
}

/* Header, footer and content-card polish (2.29.27). */
.header-actions {
  display: grid;
  width: auto;
  height: 3.875rem;
  grid-template-columns: repeat(3, 4rem);
  align-items: start;
  gap: 0.5rem;
}

.header-actions > .header-action {
  display: flex;
  width: 4rem;
  min-width: 0;
  height: 3.875rem;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}

.header-actions .header-action__icon,
.header-actions .header-cart .header-action__icon {
  position: relative;
  display: grid;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: 0.5625rem;
  place-items: center;
}

.header-actions .header-action__icon > img,
.header-actions .header-cart .header-action__icon > img {
  position: static;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  object-fit: contain;
}

.header-actions .header-action__label,
.header-actions .header-cart .header-action__label {
  margin-top: 0.3125rem;
  line-height: 1;
  white-space: nowrap;
}

.header-actions .cart-count,
.header-actions .wishlist-count {
  top: -0.375rem;
  right: -0.625rem;
  min-width: 1.0625rem;
  height: 1.0625rem;
  padding: 0 0.1875rem;
  line-height: 1.0625rem;
}

.footer-contacts p {
  text-wrap: balance;
}

body.home .hero-visual img {
  object-fit: contain;
}

body.home .articles .home-article-card__image {
  width: 100%;
  height: auto;
  aspect-ratio: 1.62;
  flex: 0 0 auto;
  background: #f7f7f5;
}

body.home .articles .home-article-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.wholesale-page .wholesale-link--dlya-magazinov .wholesale-links__image {
  right: 0.75rem;
  bottom: 0.75rem;
  width: 48%;
  height: 7.5rem;
}

.article-detail__header h1 {
  margin-top: 0;
}

@media (min-width: 768px) and (max-width: 899px) {
  .site-header__top {
    grid-template-columns: 10.625rem minmax(0, 1fr) 10.5rem;
  }

  .header-actions {
    grid-template-columns: repeat(3, 3.25rem);
    gap: 0.375rem;
  }

  .header-actions > .header-action {
    display: flex;
    width: 3.25rem;
  }
}

@media (max-width: 767px) {
  .site-header__top {
    width: calc(100% - 2rem);
    height: 4.75rem;
    grid-template-columns: minmax(7.5rem, 1fr) auto;
    column-gap: 0.5rem;
  }

  .site-header__top .brand {
    width: auto;
    min-width: 0;
  }

  .site-header__top .brand img {
    display: block;
    width: clamp(7.5rem, 37vw, 9.5rem);
    max-width: 100%;
    height: auto;
  }

  .site-header__top .header-actions {
    display: grid;
    width: auto;
    height: 4rem;
    grid-template-columns: repeat(3, 3rem);
    align-items: start;
    gap: 0;
    margin: 0;
  }

  .site-header__top .header-actions > .header-action,
  .site-header__top .header-actions > .header-cart {
    display: flex;
    width: 3rem;
    min-width: 0;
    height: 4rem;
  }

  .site-header__top .header-actions .header-action__icon,
  .site-header__top .header-actions .header-cart .header-action__icon {
    width: 1.375rem;
    height: 1.375rem;
    margin-top: 0.625rem;
  }

  .site-header__top .header-actions .header-action__icon > img,
  .site-header__top .header-actions .header-cart .header-action__icon > img {
    width: 1.375rem;
    height: 1.375rem;
  }

  .site-header__top .header-actions .header-action__label {
    margin-top: 0.375rem;
    font-size: 0.5625rem;
  }

  body.home .hero-visual--mobile img {
    object-fit: contain;
  }

  body.home .final-cta__card p:not(.eyebrow),
  .wholesale-page .final-cta__card p:not(.eyebrow) {
    width: 10.75rem;
    max-width: 10.75rem;
    font-size: 0.5625rem;
    line-height: 1.35;
  }

  body.home .articles .home-article-card__image {
    width: 100%;
    height: auto;
    aspect-ratio: 1.62;
  }

  .wholesale-page .wholesale-link--dlya-magazinov .wholesale-links__image {
    right: 0.625rem;
    bottom: 0.625rem;
    width: 45%;
    height: 6.5rem;
  }

  .article-detail__header h1 {
    margin-top: 0;
  }
}

@media (max-width: 359px) {
  .site-header__top .header-actions {
    grid-template-columns: repeat(3, 2.75rem);
  }

  .site-header__top .header-actions > .header-action,
  .site-header__top .header-actions > .header-cart {
    width: 2.75rem;
  }

  .site-header__top .header-actions .header-action__label {
    font-size: 0.5rem;
  }
}

/* September 2026: clearer hero benefits and footer, unified wholesale imagery. */
.benefits > div {
  gap: 0.625rem;
}

.benefits b {
  width: 2.625rem;
  height: 2.625rem;
}

.benefits b img {
  width: 1.25rem;
  height: 1.25rem;
}

.benefits span {
  font-size: 0.75rem;
  line-height: 1.3;
}

.benefits strong {
  font-size: 0.8125rem;
  line-height: 1.25;
}

.footer-grid h3,
.footer-nav-group > button > span {
  font-size: 0.875rem;
}

.footer-grid p,
.footer-grid section > a:not(.brand),
.footer-nav-group > div > a,
.footer-contacts p,
.footer-contacts > a:not(.footer-contacts__callback) {
  font-size: 0.75rem !important;
  line-height: 1.35;
}

.footer-grid .footer-brand__description {
  height: auto;
  font-size: 0.75rem !important;
  line-height: 1.4;
}

.footer-grid .footer-contacts > a.footer-contacts__callback {
  display: inline-flex;
  width: max-content;
  min-height: 2.375rem;
  align-items: center;
  justify-content: center;
  margin-top: 0.5rem !important;
  padding: 0 1rem;
  border: 0.0625rem solid #ff5c0a;
  border-radius: 0.4375rem;
  background: #ff5c0a;
  color: #fff;
  font-size: 0.75rem !important;
  font-weight: 700;
  line-height: 1;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.footer-grid .footer-contacts > a.footer-contacts__callback:hover {
  background: #e44b0b;
  color: #fff;
  transform: translateY(-0.0625rem);
}

.footer-bottom {
  font-size: 0.625rem;
}

@media (max-width: 767px) {
  .benefits b {
    width: 2.625rem;
    height: 2.625rem;
  }

  .benefits span {
    max-width: 7rem;
    font-size: 0.71875rem;
  }

  .benefits strong {
    font-size: 0.78125rem;
  }

  .footer-grid .footer-contacts > a.footer-contacts__callback {
    min-height: 2.5rem;
    margin-top: 0.625rem !important;
    font-size: 0.75rem !important;
  }
}

/* Article cards: title and HTML are the only fields an editor needs to fill. */
body.home .articles .articles-grid {
  align-items: stretch;
}

body.home .articles {
  height: auto;
}

body.home .articles .articles-grid--single {
  grid-template-columns: minmax(0, 26rem);
}

body.home .articles .home-article-card {
  display: flex;
  min-width: 0;
  height: auto;
  min-height: 0;
  flex-direction: column;
  padding: 0;
}

body.home .articles .home-article-card > *,
body.home .articles .home-article-card__content > * {
  margin-left: 0;
  margin-right: 0;
}

body.home .articles .home-article-card__image {
  display: block;
  height: 10.5rem;
  margin: 0;
  overflow: hidden;
  color: inherit;
}

body.home .articles .home-article-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.home .articles .home-article-card__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 0.875rem;
}

body.home .articles .home-article-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  color: #8a8e94;
  font-size: 0.625rem;
}

body.home .articles .home-article-card__meta span {
  color: #ff5c0a;
  font-weight: 800;
}

body.home .articles .home-article-card h3 {
  display: -webkit-box;
  min-height: 0;
  margin: 0.75rem 0 0.5rem;
  overflow: hidden;
  font-size: 0.875rem;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

body.home .articles .home-article-card h3 a {
  display: inline;
  margin: 0;
  color: #111315;
  font: inherit;
}

body.home .articles .home-article-card h3 a:hover {
  color: #ff5c0a;
}

body.home .articles .home-article-card p {
  display: -webkit-box;
  min-height: 0;
  margin: 0 0 0.875rem;
  overflow: hidden;
  color: #74787e;
  font-size: 0.6875rem;
  line-height: 1.5;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

body.home .articles .home-article-card__more {
  display: inline-flex;
  width: fit-content;
  margin: auto 0 0;
  color: #ff5c0a;
  font-size: 0.6875rem;
  font-weight: 800;
}

.articles-page .article-feature {
  align-items: stretch;
}

.articles-page .article-feature > img {
  min-height: 20rem;
  max-height: 26rem;
  object-fit: cover;
}

.articles-page .article-card {
  display: flex;
  flex-direction: column;
}

.articles-page .article-card__image img {
  object-fit: cover;
}

.articles-page .article-card > div {
  display: flex;
  flex: 1;
  flex-direction: column;
}

.articles-page .article-card h3 {
  display: -webkit-box;
  min-height: 0;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.articles-page .article-card p {
  display: -webkit-box;
  min-height: 0;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.articles-page .article-card__more {
  width: fit-content;
  margin-top: auto;
}

/* Rich HTML inside an article gets a consistent editorial treatment. */
.article-detail__body {
  overflow-wrap: anywhere;
}

.article-detail__body > :first-child {
  margin-top: 0;
}

.article-detail__body h3 {
  margin: 1.75rem 0 0.75rem;
  color: #17191b;
  font-size: 1.0625rem;
  line-height: 1.3;
}

.article-detail__body ul,
.article-detail__body ol {
  display: grid;
  gap: 0.5rem;
  margin: 1rem 0 1.5rem;
  padding-left: 1.5rem;
  color: #666a70;
  font-size: 0.75rem;
  line-height: 1.6;
}

.article-detail__body li::marker {
  color: #ff5c0a;
  font-weight: 800;
}

.article-detail__body table {
  width: 100%;
  margin: 1rem 0 1.75rem;
  overflow: hidden;
  border: 0.0625rem solid #dedbd6;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 0.75rem;
  background: #fff;
  color: #44484e;
  font-size: 0.6875rem;
  line-height: 1.5;
}

.article-detail__body th {
  padding: 0.875rem 1rem;
  background: #f6f3ee;
  color: #17191b;
  text-align: left;
  font-weight: 800;
  vertical-align: top;
}

.article-detail__body td {
  padding: 0.875rem 1rem;
  border-top: 0.0625rem solid #e7e4df;
  vertical-align: top;
}

.article-detail__body th + th,
.article-detail__body td + td {
  border-left: 0.0625rem solid #e7e4df;
}

.article-detail__body tbody tr:nth-child(even) td {
  background: #fbfaf8;
}

.article-detail__body blockquote {
  margin: 1.5rem 0;
  padding: 1.125rem 1.25rem;
  border-left: 0.25rem solid #ff5c0a;
  border-radius: 0 0.625rem 0.625rem 0;
  background: #fff4ee;
}

.article-detail__body blockquote p {
  color: #44484e;
}

.article-detail__body img {
  max-width: 100%;
  height: auto;
  border-radius: 0.75rem;
}

.catalog-seo-content {
  margin-top: 2rem;
  padding: 1.75rem 1.625rem 1.875rem;
  border-color: #e6e2dc;
  background: #fff;
  box-shadow: 0 0.5rem 1.75rem rgb(18 19 20 / 3%);
}

.catalog-seo-content--root {
  margin-top: 2rem;
}

.catalog-seo-content h2 {
  max-width: 60rem;
  font-size: 1.5rem;
}

.catalog-seo-content h3 {
  font-size: 1.125rem;
}

.catalog-seo-content p,
.catalog-seo-content ul,
.catalog-seo-content ol {
  max-width: 66rem;
  font-size: 0.8125rem;
  line-height: 1.65;
}

@media (max-width: 767px) {
  body.home .articles .articles-grid--single {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    padding-right: 0;
    overflow: visible;
  }

  body.home .articles .articles-grid--single .home-article-card {
    width: 100%;
    min-width: 0;
  }

  body.home .articles .home-article-card__image {
    height: 11.75rem;
  }

  body.home .articles .home-article-card h3 {
    font-size: 1rem;
  }

  .articles-page .article-feature > img {
    min-height: 0;
    height: 12.5rem;
  }

  .articles-page .article-feature > div {
    justify-content: flex-start;
  }

  .article-detail__body ul,
  .article-detail__body ol {
    padding-left: 1.25rem;
    font-size: 0.6875rem;
  }

  .article-detail__body table {
    display: block;
    overflow-x: auto;
    font-size: 0.625rem;
    -webkit-overflow-scrolling: touch;
  }

  .article-detail__body th,
  .article-detail__body td {
    min-width: 9rem;
    padding: 0.75rem;
  }

  .catalog-seo-content {
    margin-top: 1.25rem;
    padding: 1.25rem 1rem 1.375rem;
  }

  .catalog-seo-content h2 {
    font-size: 1.25rem;
  }

  .catalog-seo-content h3 {
    font-size: 1rem;
  }

  .catalog-seo-content p,
  .catalog-seo-content ul,
  .catalog-seo-content ol {
    font-size: 0.8125rem;
  }
}

.catalog-category-help > div > p {
  margin: 0;
}

.catalog-category-help > div > h2 {
  margin-bottom: 0.625rem;
}

.catalog-category-help > .button {
  flex: 0 0 auto;
  min-width: 11.5rem;
  min-height: 2.875rem;
  margin: 0;
  font-size: 0.8125rem;
}

/* Product tabs: readable descriptions, compatibility and delivery labels. */
.product-description__text {
  color: #555a61;
  font-size: 0.9375rem;
  line-height: 1.7;
}

.product-description__text p {
  margin: 0 0 1rem;
}

.product-description__text p:last-child {
  margin-bottom: 0;
}

.product-description__text h2,
.product-description__text h3 {
  margin: 1.5rem 0 0.625rem;
  color: #17191c;
  font-size: 1.0625rem;
  line-height: 1.35;
}

.product-description__text ul {
  gap: 0.5rem;
  margin: 0.625rem 0 1rem;
  font-size: 0.875rem;
  line-height: 1.55;
}

.product-compatibility article strong {
  margin-bottom: 0.375rem;
  font-size: 0.9375rem;
  line-height: 1.35;
}

.product-compatibility article span {
  font-size: 0.8125rem;
  line-height: 1.45;
}

.product-compatibility aside strong {
  font-size: 1rem;
  line-height: 1.3;
}

.product-compatibility aside span {
  margin: 0.3125rem 0 0.75rem;
  font-size: 0.8125rem;
}

.product-compatibility aside a {
  min-width: 9.5rem;
  min-height: 2.75rem;
  padding: 0.6875rem 1.375rem;
  font-size: 0.8125rem;
}

.product-delivery article b {
  margin-bottom: 0.5625rem;
  font-size: 0.9375rem;
  line-height: 1.35;
}

.product-delivery article span {
  font-size: 0.8125rem;
  line-height: 1.5;
}

/* Model wizard: larger steps and a properly separated back arrow. */
.model-wizard__steps li {
  min-height: 3.375rem;
  gap: 0.75rem;
  padding: 0.5625rem 0.875rem;
  font-size: 0.8125rem;
}

.model-wizard__steps b {
  flex: 0 0 2rem;
  width: 2rem;
  height: 2rem;
  font-size: 0.8125rem;
}

.wizard-back {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 0.8125rem;
  line-height: 1.3;
}

.wizard-back > span {
  display: inline-grid;
  width: 1.25rem;
  height: 1.25rem;
  place-items: center;
  font-size: 1rem;
  line-height: 1;
}

.model-catalog-selection {
  min-height: 3.5rem;
  padding: 0.625rem 1.25rem;
}

/* Wholesale hero facts stay legible at a glance. */
.wholesale-hero__facts li {
  gap: 0.6875rem;
  font-size: 0.8125rem;
  line-height: 1.4;
}

.wholesale-hero__facts b {
  flex-basis: 1.875rem;
  width: 1.875rem;
  height: 1.875rem;
  font-size: 0.75rem;
}

/* Buyer section cards are intentionally clean: no numbered or arrow badges. */
.buyer-link {
  display: block;
  min-height: 8.75rem;
  padding: 1.25rem;
}

.buyer-link > span {
  display: block;
}

.buyer-link strong {
  margin-top: 0;
}

/* Delivery call-to-action aligns with its copy on desktop. */
@media (min-width: 768px) {
  .service-page--delivery .service-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    align-content: center;
    align-items: center;
    column-gap: 2rem;
  }

  .service-page--delivery .service-intro h2,
  .service-page--delivery .service-intro p {
    grid-column: 1;
  }

  .service-page--delivery .service-intro .service-button {
    grid-column: 2;
    grid-row: 1 / 3;
    margin-top: 0;
  }
}

.payment-note {
  justify-content: center;
}

.payment-note p {
  color: #26292d;
}

@media (max-width: 767px) {
  .catalog-category-help {
    min-height: 0;
    align-items: stretch;
    flex-direction: column;
    gap: 0.875rem;
    padding: 1.125rem 1rem;
  }

  .catalog-category-help > .button {
    width: 100%;
  }

  .model-wizard__steps li {
    min-height: 3rem;
    gap: 0.625rem;
    padding: 0.4375rem 0.625rem;
    font-size: 0.75rem;
  }

  .model-wizard__steps b {
    flex-basis: 1.75rem;
    width: 1.75rem;
    height: 1.75rem;
    font-size: 0.75rem;
  }

  .model-catalog-selection {
    min-height: 0;
    padding: 0.75rem 1rem;
  }

  .buyer-link {
    min-height: 7rem;
    padding: 1rem;
  }

  .service-page--delivery .service-intro .service-button {
    margin-top: 1.25rem;
  }

  .payment-note {
    min-height: 0;
    padding-bottom: 1.5rem;
  }
}

/* Catalog model card, product actions and wholesale-card alignment refinements. */
@media (min-width: 768px) {
  .product-page .product-cart {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  }

  .product-page .product-cart__submit,
  .product-page .product-buy-one {
    width: 100%;
    min-width: 0;
  }
}

.wholesale-page .wholesale-links__copy {
  display: flex;
  align-self: stretch;
  flex-direction: column;
}

.wholesale-page .wholesale-links i {
  margin-top: auto;
}

/* Release 2.29.20: simplify wholesale cards, normalize buyer pages and align catalogue cards. */
.wholesale-page .wholesale-benefits article::after {
  display: none;
  content: none;
}

.wholesale-page .wholesale-benefits b {
  display: none;
}

.wholesale-page .wholesale-benefits h2 {
  margin-top: 0;
}

.wholesale-page .wholesale-benefits article {
  min-height: 9.75rem;
}

.service-page--delivery .service-intro {
  height: auto;
  min-height: 8.75rem;
  padding: 1.5rem;
}

.delivery-process,
.payment-note {
  margin-top: 1.5rem;
}

.payment-note {
  min-height: 8rem;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 1.5rem;
}

.payment-note .service-button {
  flex: 0 0 auto;
  margin-top: 0;
}

.warranty-page {
  padding-bottom: 2.5rem;
}

.warranty-page .warranty-steps article > strong {
  border-radius: 0.625rem;
  background: #fff0e9;
  color: #ff5c0a;
}

.warranty-page .warranty-details,
.warranty-page .warranty-notice,
.warranty-page .warranty-faq,
.warranty-page .warranty-cta {
  margin-top: 2rem;
}

.warranty-page .warranty-faq.faq {
  min-height: 0;
  padding: 1.75rem 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.warranty-page .warranty-faq__heading {
  margin-bottom: 1rem;
}

.warranty-page .warranty-faq .faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  height: auto;
  margin: 0;
}

.warranty-page .warranty-faq .faq-column {
  display: flex;
  height: auto;
  flex-direction: column;
  gap: 0.375rem;
}

.warranty-page .warranty-faq details,
.warranty-page .warranty-faq details:last-child {
  height: 3.5rem;
  min-height: 3.5rem;
  margin: 0;
  overflow: hidden;
  border: 0.0625rem solid #e5e4e0;
  border-radius: 0.625rem;
  background: #fff;
  box-shadow: 0 0.3125rem 1rem rgb(0 0 0 / 1%);
}

.warranty-page .warranty-faq summary {
  min-height: 3.375rem;
  padding: 0 0.875rem 0 1rem;
  font-size: 0.875rem;
  font-weight: 600;
}

.warranty-page .warranty-faq summary b {
  display: block;
  width: auto;
  min-width: 0;
  height: auto;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #ff5c0a;
}

.warranty-page .warranty-faq details[open] {
  height: auto;
  min-height: 7rem;
  overflow: visible;
}

.warranty-page .warranty-faq details[open] summary b {
  transform: rotate(45deg);
}

.warranty-page .warranty-faq .faq-answer p {
  margin: 0;
  padding: 0 1rem 0.875rem;
  color: #61636b;
  font-size: 0.875rem;
  line-height: 1.5;
}

@media (min-width: 1200px) {
  .catalog-category-layout {
    grid-template-columns: 20rem minmax(0, 1fr);
  }

  .catalog-category-layout .catalog-filters {
    width: 100%;
    padding: 1.25rem 1.125rem 1.375rem;
  }

  .catalog-category-layout .catalog-filters__title h2 {
    font-size: 1.375rem;
  }

  .catalog-category-layout .catalog-filters legend {
    margin-bottom: 0.5625rem;
    font-size: 0.875rem;
  }

  .catalog-category-layout .catalog-filters label {
    gap: 0.5625rem;
    font-size: 0.8125rem;
    line-height: 1.35;
  }

  .catalog-category-layout .catalog-filters input {
    width: 1.0625rem;
    height: 1.0625rem;
    flex: 0 0 1.0625rem;
  }

  .catalog-category-layout .catalog-filters [data-filter-reset] {
    width: 100%;
  }

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

.company-page .company-principles article {
  min-height: 9.5rem;
}

.company-inside,
.company-audience {
  margin-top: 4rem;
}

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

.company-inside__grid article {
  display: grid;
  min-height: 23rem;
  grid-template-rows: 13.5rem auto;
  overflow: hidden;
  border: 0.0625rem solid #e2e0dc;
  border-radius: 0.875rem;
  background: #fff;
}

.company-inside__grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.company-inside__grid article:last-child img {
  object-fit: contain;
  background: #f8f6f2;
}

.company-inside__grid article > div {
  padding: 1.375rem;
}

.company-inside__grid h3,
.company-audience__grid h3 {
  margin: 0;
  font-size: 1.25rem;
  line-height: 1.25;
}

.company-inside__grid article > div > p:last-child,
.company-audience__grid p {
  margin: 0.625rem 0 0;
  color: #666b72;
  font-size: 0.875rem;
  line-height: 1.55;
}

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

.company-audience__grid > a {
  display: flex;
  min-height: 12rem;
  flex-direction: column;
  padding: 1.5rem;
  border: 0.0625rem solid #e2e0dc;
  border-radius: 0.875rem;
  background: #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.company-audience__grid > a:hover,
.company-audience__grid > a:focus-visible {
  border-color: #ffc3a4;
  box-shadow: 0 0.875rem 2.125rem rgb(18 19 20 / 8%);
  transform: translateY(-0.1875rem);
}

.company-audience__grid span {
  margin-top: auto;
  color: #ff5c0a;
  font-size: 0.8125rem;
  font-weight: 800;
}

@media (max-width: 767px) {
  .payment-note {
    min-height: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
  }

  .payment-note .service-button {
    width: 100%;
  }

  .warranty-page .warranty-details,
  .warranty-page .warranty-notice,
  .warranty-page .warranty-faq,
  .warranty-page .warranty-cta {
    margin-top: 1.5rem;
  }

  .warranty-page .warranty-faq.faq {
    padding: 1.5rem 0;
  }

  .warranty-page .warranty-faq .faq-grid {
    grid-template-columns: 1fr;
    gap: 0.375rem;
  }

  .warranty-page .warranty-faq summary,
  .warranty-page .warranty-faq .faq-answer p {
    font-size: 0.8125rem;
  }

  .company-inside,
  .company-audience {
    margin-top: 2.5rem;
  }

  .company-inside__grid,
  .company-audience__grid {
    grid-template-columns: 1fr;
  }

  .company-inside__grid article {
    min-height: 0;
    grid-template-rows: 12rem auto;
  }

  .company-audience__grid > a {
    min-height: 10rem;
  }
}

/* Article cards keep the image and copy within the same inset border. */
body.home .articles .articles-grid--single {
  grid-template-columns: minmax(0, 26rem);
}

body.home .articles .home-article-card,
body.home .articles .articles-grid--single .home-article-card {
  display: flex;
  width: 100%;
  min-height: 0;
  flex-direction: column;
  padding: 1rem;
  border-radius: 1rem;
}

body.home .articles .home-article-card__image {
  width: 100%;
  height: auto;
  aspect-ratio: 1.78;
  flex: 0 0 auto;
  overflow: hidden;
  border-radius: 0.75rem;
  background: #f7f7f5;
}

body.home .articles .home-article-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

body.home .articles .home-article-card__content {
  padding: 0.875rem 0 0;
}

body.home .articles .home-article-card h3 {
  font-size: 1.125rem;
  line-height: 1.32;
}

body.home .articles .home-article-card p {
  font-size: 0.8125rem;
  line-height: 1.5;
  -webkit-line-clamp: 2;
}

body.home .articles .home-article-card__more {
  font-size: 0.875rem;
}

/* The large featured article follows the same padded-image composition. */
.articles-page .article-feature {
  gap: 1rem;
  padding: 1rem;
  border-radius: 1rem;
  background: #fff;
}

.articles-page .article-feature > div {
  min-width: 0;
  padding: 1.5rem 2rem;
}

.articles-page .article-feature > img {
  width: 100%;
  min-width: 0;
  min-height: 0;
  height: 100%;
  border-radius: 0.75rem;
}

/* Contact details sit over the map on wide screens and stack above it on mobile. */
.contacts-page .contact-location {
  display: grid;
  min-height: 25rem;
  grid-template-columns: minmax(0, 1.35fr) minmax(19rem, 0.8fr);
  gap: 1rem;
  padding: 1rem;
  border: 0.0625rem solid #e2e0dc;
  border-radius: 1rem;
  background: #fff;
}

.contacts-page .contact-location__map {
  position: relative;
  min-width: 0;
  min-height: 23rem;
  overflow: hidden;
  border-radius: 0.75rem;
  background: #f3f4f5;
}

.contacts-page .contact-location__map iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 23rem;
  border: 0;
}

.contacts-page .contact-location__details {
  position: absolute;
  z-index: 1;
  top: 1rem;
  left: 1rem;
  width: min(18rem, calc(100% - 2rem));
  padding: 1.25rem;
  border: 0.0625rem solid #e8e6e3;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.08);
}

.contacts-page .contact-location__details h2 {
  font-size: 1.375rem;
}

.contacts-page .contact-location__details > a:not(.button),
.contacts-page .contact-location__details p {
  margin-bottom: 0.625rem;
  font-size: 0.8125rem;
}

.contacts-page .contact-location__details .button {
  width: auto;
  min-height: 2.5rem;
  margin-top: 0.25rem;
  padding: 0 1rem;
}

.contacts-page .contact-location .contact-form {
  width: 100%;
  height: 100%;
  min-height: 23rem;
  margin: 0;
  grid-template-rows: auto 2.75rem 2.75rem minmax(5rem, 1fr) 2.75rem;
  gap: 0.75rem;
  padding: 1.25rem;
  box-shadow: none;
}

.contacts-page .contact-location .contact-form .button,
.contacts-page .contact-location .contact-form .button:hover {
  transform: none;
}

.contacts-page .contact-location__note {
  margin: 0.875rem 0 0;
  color: #72767d;
  font-size: 0.8125rem;
  line-height: 1.5;
}

.contacts-page .contact-location__note a {
  color: #ff5c0a;
  font-weight: 700;
}

.article-detail__header h1 {
  margin-top: 0;
}

@media (max-width: 767px) {
  body.home .articles .home-article-card__image {
    width: 100%;
    height: auto;
    aspect-ratio: 1.78;
  }

  .articles-page .article-feature {
    gap: 0.25rem;
    padding: 0.875rem;
  }

  .articles-page .article-feature > img {
    height: 13rem;
  }

  .articles-page .article-feature > div {
    padding: 1rem 0.25rem;
  }

  body.home .final-cta__card p:not(.eyebrow),
  .wholesale-page .final-cta__card p:not(.eyebrow) {
    width: 10.75rem;
    max-width: 10.75rem;
    font-size: 0.5625rem;
    line-height: 1.35;
  }
}

@media (max-width: 899px) {
  .contacts-page .contact-location {
    grid-template-columns: 1fr;
    gap: 0.875rem;
    padding: 0.875rem;
  }

  .contacts-page .contact-location__map {
    display: flex;
    min-height: 0;
    flex-direction: column;
    gap: 0.75rem;
    overflow: visible;
    background: transparent;
  }

  .contacts-page .contact-location__details {
    position: static;
    width: 100%;
    order: -1;
    box-shadow: none;
  }

  .contacts-page .contact-location__map iframe {
    height: 17rem;
    min-height: 17rem;
    border-radius: 0.75rem;
  }

  .contacts-page .contact-location .contact-form {
    height: auto;
    min-height: 20rem;
  }
}

/* Compact footer credits and a readable, editable legal document. */
.site-footer .footer-bottom {
  display: flex;
  height: auto;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 2rem;
  padding: 1rem 0 1.25rem;
  line-height: 1.5;
}

.site-footer .footer-bottom a {
  color: #b7bdba;
  font-size: 0.75rem;
  text-decoration: none;
}

.site-footer .footer-bottom a:hover,
.site-footer .footer-bottom a:focus-visible {
  color: #fff;
  text-decoration: underline;
}

.legal-page .legal-document {
  min-height: 0;
  padding: clamp(1.25rem, 3vw, 2.5rem);
}

.legal-page .legal-document__content {
  display: block;
  max-width: 64rem;
}

.legal-page .legal-document__content .legal-section + .legal-section {
  margin-top: 2.5rem;
  padding-top: 2.5rem;
  border-top: 0.0625rem solid #e7e4df;
}

.legal-page .legal-document__content h2 {
  margin: 0 0 1rem;
  color: #151618;
  font-size: clamp(1.25rem, 2vw, 1.625rem);
  line-height: 1.3;
}

.legal-page .legal-document__content h3 {
  margin: 1.5rem 0 0.5rem;
  color: #151618;
  font-size: 1rem;
  line-height: 1.4;
}

.legal-page .legal-document__content p,
.legal-page .legal-document__content li {
  margin: 0.5rem 0;
  color: #626870;
  font-size: 0.875rem;
  line-height: 1.75;
}

.legal-page .legal-document__content ul {
  margin: 0.625rem 0 1rem;
  padding-left: 1.375rem;
}

.legal-page .legal-document__content a {
  color: #e85208;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

@media (max-width: 767px) {
  .site-footer .footer-bottom {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0.5rem 1.5rem;
  }

  .site-footer .footer-bottom a {
    font-size: 0.75rem;
  }

  .legal-page .legal-document__content .legal-section + .legal-section {
    margin-top: 2rem;
    padding-top: 2rem;
  }
}

/* Match the contacts canvas and hide the subpixel body edge below the footer. */
html {
  background-color: #0e0f11;
}

.contacts-page {
  background-color: #fbf9f6;
}

/* Compact company workflow and use full-width artwork instead of a letterboxed strip. */
.company-process li {
  min-height: 8.25rem;
  padding: 1.25rem;
}

.company-process h3 {
  margin: 0 0 0.5rem;
}

.company-inside__grid article:last-child img {
  object-fit: cover;
  object-position: center 45%;
  background: #fff;
}

.contacts-page .contact-location .contact-form {
  min-height: 25rem;
  grid-template-rows: auto 2.75rem 2.75rem minmax(5rem, 1fr) 2.75rem auto;
}

.contact-form__privacy,
.checkout-summary__privacy,
.auth-form__privacy,
.review-form__consent,
.selection-request__consent {
  color: #747880;
  font-size: 0.75rem;
  line-height: 1.45;
}

.contact-form__privacy a,
.checkout-summary__privacy a,
.auth-form__privacy a,
.review-form__consent a,
.selection-request__consent a {
  color: #e85208;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

@media (max-width: 767px) {
  .company-process li {
    min-height: 0;
  }

  .contacts-page .contact-location .contact-form {
    min-height: 0;
    grid-template-rows: auto 2.75rem 2.75rem minmax(5rem, 1fr) 2.75rem auto;
  }
}

/* Requested catalogue copy: keep the opening visible, then expand in place. */
.catalog-seo-expand { position: relative; }
.catalog-seo-expand.is-collapsible .catalog-seo-content {
  position: relative;
  max-height: 15rem;
  overflow: hidden;
}
.catalog-seo-expand.is-collapsible:not(.is-expanded) .catalog-seo-content::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3rem;
  background: linear-gradient(transparent, #fff);
  pointer-events: none;
  content: '';
}
.catalog-seo-expand.is-expanded .catalog-seo-content { max-height: none; overflow: visible; }
.catalog-seo-expand__button { display: flex; min-width: 10.5rem; margin: 0.75rem auto 0; }
.catalog-seo-expand__button[hidden] { display: none; }

/* Consistent storefront section links and readable article metadata. */
body.home .section-heading > a { font-size: 0.875rem; white-space: nowrap; }
body.home .tuning-section .section-heading > a,
body.home .articles .section-heading > a { transform: translateY(0.35rem); }
.articles-page .hub-heading h1 { font-size: clamp(2.5rem, 3vw, 3.25rem); }
.articles-page .article-feature span,
.articles-page .article-card span { font-size: 0.8125rem; }
.articles-page .article-feature p,
.articles-page .article-card p { font-size: 0.9375rem; line-height: 1.55; }
.articles-page .article-card__more { font-size: 0.875rem; }
.articles-page .articles-title { gap: 0.75rem; }
.articles-page .articles-title select { width: 12.25rem; height: 3rem; padding-left: 0.875rem; font-size: 0.875rem; }
.article-detail__meta { font-size: 0.8125rem; line-height: 1.5; }
.article-detail__body p,
.article-detail__body li { font-size: 0.9375rem; line-height: 1.7; }
body.home .articles .home-article-card__meta { font-size: 0.8125rem; }
body.home .articles .home-article-card p { font-size: 0.9375rem; }
body.home .articles .home-article-card__more { font-size: 0.9375rem; }

/* Cart totals state clearly that shipping is calculated later. */
.cart-item__image img { width: 7rem; height: 7rem; }
.cart-item__body strong { font-size: 1rem; line-height: 1.4; }
.cart-item__body span { font-size: 0.875rem; }
.cart-item__body b { font-size: 1.375rem; }
.cart-item__remove { font-size: 0.875rem; }
.cart-summary { min-height: 18.5rem; }
.cart-summary p { max-width: 22rem; font-size: 0.875rem; line-height: 1.5; }
.cart-summary__amount-label { display: block; margin-top: auto; font-size: 0.875rem; font-weight: 700; }
.cart-summary b { margin-top: 0.35rem; }
.cart-risks { min-height: 0; }
.cart-risks > div { gap: 1rem; }
.cart-risks span { display: flex; align-items: center; gap: 0.625rem; font-size: 0.875rem; line-height: 1.4; }
.cart-risks span::before { display: grid; width: 1.625rem; height: 1.625rem; flex: 0 0 1.625rem; place-items: center; border-radius: 50%; background: #fff0e9; color: #ff5c0a; font-size: 1rem; font-weight: 800; content: '✓'; }

/* Make order history and checkout controls legible at both widths. */
.account-orders article { min-height: 7.25rem; padding: 1.25rem; }
.account-orders strong { font-size: 1rem; }
.account-orders time,
.order-status { font-size: 0.875rem; }
.account-orders b { font-size: 1.25rem; }
.account-order__meta .button { min-height: 2.75rem; font-size: 0.875rem; }
.account-profile-summary strong,
.account-profile-summary span { font-size: 0.9375rem; line-height: 1.5; }
.account-order-products article { min-height: 7.5rem; grid-template-columns: 6rem minmax(0, 1fr) auto; padding: 0.875rem; }
.account-order-products img { width: 6rem; height: 5.5rem; }
.account-order-products strong { font-size: 1rem; }
.account-order-products span,
.account-order-detail__heading p { font-size: 0.9375rem; }
.account-order-products b { font-size: 1.125rem; }
.account-order-totals div,
.account-order-detail__info dl,
.account-order-detail__info p { font-size: 0.9375rem; }
.checkout-fields { min-height: 0; padding: 1.5rem; }
.checkout-fields label { margin-bottom: 0.4rem; font-size: 0.9375rem; line-height: 1.4; }
.checkout-fields input,
.checkout-fields select,
.checkout-fields textarea { min-height: 3.25rem; height: auto; padding: 0.75rem 0.875rem; font-size: 0.9375rem; }
.checkout-fields textarea { min-height: 5.5rem; }
.checkout-payment-note { font-size: 0.875rem !important; }
.checkout-summary { min-height: 0; padding: 1.5rem; }
.checkout-products strong { font-size: 0.9375rem; line-height: 1.4; }
.checkout-products b { margin-top: 0.5rem; font-size: 1rem; }
.checkout-summary > p { font-size: 0.875rem; line-height: 1.5; }
.checkout-total { font-size: 1.375rem; line-height: 1.4; }
.checkout-summary small { font-size: 0.8125rem; line-height: 1.5; }

select:not([multiple]) {
  appearance: none;
  padding-right: 2.5rem !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m3.5 6 4.5 4.5L12.5 6' fill='none' stroke='%235b6168' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.875rem center;
  background-size: 1rem 1rem;
}
select:not([multiple]) option { background: #fff; color: #17181a; }
select:not([multiple]):focus-visible { outline: 0.125rem solid #ff5c0a; outline-offset: 0.125rem; }

@media (max-width: 767px) {
  /* Regular mobile text previously ranged from 10–12 px; lift it roughly 15%. */
  body { font-size: 0.9375rem; }
  .catalog-page__heading p,
  .catalog-section-card p,
  .catalog-info p,
  .hub-heading p,
  .hub-info p,
  .model-wizard__panel header p,
  .commerce-page__heading p,
  .cart-item__body span,
  .cart-summary p,
  .checkout-summary > p,
  .checkout-payment-note,
  .account-page__heading p,
  .account-empty p,
  .info-page__heading p,
  .contact-card__data p,
  .article-feature p,
  .article-card p,
  .article-detail__body p,
  .article-detail__body li,
  .catalog-seo-content p,
  .catalog-seo-content li { font-size: 0.9375rem !important; line-height: 1.55; }
  .article-detail__meta,
  .article-detail__breadcrumbs,
  .article-feature span,
  .article-card span,
  .home-article-card__meta,
  .service-strip span,
  .service-strip strong,
  .model-choice-grid small,
  .account-orders time,
  .order-status,
  .checkout-summary small { font-size: 0.8125rem; line-height: 1.45; }
  .catalog-seo-expand.is-collapsible .catalog-seo-content { max-height: 17rem; }
  .catalog-seo-expand.is-expanded .catalog-seo-content { max-height: none; overflow: visible; }
  body.home .section-heading > a { font-size: 0.8125rem; }
  body.home .tuning-section .section-heading > a,
  body.home .articles .section-heading > a { transform: translateY(0.5rem); }
  body.home .reviews .section-heading { flex-wrap: wrap; }
  body.home .reviews .section-heading > div { flex: 1 1 100%; }
  body.home .reviews .section-heading > a { display: block !important; margin: 0.4rem 0 0 auto; }
  .service-strip .container > div { height: auto; min-height: 5.375rem; align-items: center; }
  .service-strip .container > div:last-child { min-height: 4.5rem; }
  .service-strip b { align-self: center; }
  .service-strip { height: auto; }
  .catalog-models__grid a { height: 9.75rem; }
  .catalog-models__grid img { height: 6.5rem; }
  .model-choice-grid button { min-height: 13.25rem; }
  .model-choice-grid img { height: 8.5rem; }
  .model-choice-grid strong { font-size: 0.875rem; }
  .catalog-help { min-height: 17rem; display: flex; flex-direction: column; gap: 0.75rem; }
  .catalog-help::before { transform: scaleX(-1); }
  .catalog-help > div { max-width: 100%; }
  .catalog-help .button,
  .woocommerce .catalog-help a.button { width: auto !important; min-width: 0; max-width: 12.5rem; min-height: 2.75rem; margin: auto 0 0 auto; padding: 0 0.875rem; align-self: flex-end; font-size: 0.8125rem; }
  .site-footer .socials { width: auto; height: 2.5rem; gap: 0.625rem; align-items: center; }
  .site-footer .socials a,
  .site-footer .socials span { display: grid; width: 2.5rem !important; height: 2.5rem !important; flex: 0 0 2.5rem; place-items: center; }
  .site-footer .socials img { width: 100%; height: 100%; object-fit: contain; }
  .articles-page .hub-heading h1 { font-size: 2.375rem; }
  .articles-page .articles-title select { width: 10.75rem; height: 3rem; font-size: 0.8125rem; }
  .articles-page .article-card p,
  body.home .articles .home-article-card p { font-size: 0.9375rem; }
  .articles-page .article-card__more,
  body.home .articles .home-article-card__more { font-size: 0.9375rem; }
  .article-detail__meta { font-size: 0.8125rem; }
  .article-detail__body ul,
  .article-detail__body ol { font-size: 0.9375rem; }
  .cart-item { min-height: 10rem; }
  .cart-item__image img { width: 5.5rem; height: 5.5rem; }
  .cart-item__body strong { font-size: 0.9375rem; }
  .cart-item__body b { font-size: 1.1875rem; }
  .cart-summary { min-height: 0; }
  .cart-summary__amount-label { margin-top: 0.25rem; }
  .cart-summary b { margin-top: 0.3rem; }
  .cart-risks { min-height: 0; }
  .cart-risks > div { gap: 1rem; }
  .cart-risks span { font-size: 0.9375rem; }
  .account-orders article { min-height: 0; padding: 1.125rem; }
  .account-orders strong { font-size: 0.9375rem; }
  .account-orders b { margin-top: 0.625rem; }
  .account-order-products article { min-height: 0; grid-template-columns: 4.5rem minmax(0, 1fr); gap: 0.625rem; padding: 0.75rem; }
  .account-order-products img { width: 4.5rem; height: 4.5rem; }
  .account-order-products strong { font-size: 0.9375rem; }
  .account-order-products span,
  .account-order-detail__info dl,
  .account-order-detail__info p,
  .account-order-totals div { font-size: 0.875rem; }
  .account-order-products b { font-size: 1rem; }
  .checkout-fields,
  .checkout-summary { min-height: 0; padding: 1.25rem; }
  .checkout-fields label { font-size: 0.9375rem; }
  .checkout-fields input,
  .checkout-fields select,
  .checkout-fields textarea { min-height: 3.25rem; font-size: 0.9375rem; }
  .checkout-summary small { display: block; }
}

