/** Shopify CDN: Minification failed

Line 8382:0 Unexpected "}"

**/
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-height) + var(--space-4));
  text-size-adjust: 100%;
}

body {
  min-width: 320px;
  margin: 0;
  color: var(--colour-text);
  background: var(--colour-background);
  font-family: var(--font-body);
  font-size: var(--type-body);
  font-weight: var(--font-weight-body);
  line-height: var(--line-height-body);
  text-rendering: optimizeLegibility;
}

body.is-scroll-locked {
  overflow: hidden;
}

img,
picture,
svg,
video {
  display: block;
  max-width: 100%;
}

img {
  height: auto;
}

button,
input,
select,
textarea {
  color: inherit;
  font: inherit;
}

button,
[role='button'],
input[type='submit'] {
  touch-action: manipulation;
}

a {
  color: var(--colour-brand);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.16em;
}

a:hover {
  text-decoration-thickness: 0.13em;
}

:focus-visible {
  outline: var(--focus-ring-width) solid var(--colour-focus);
  outline-offset: var(--focus-ring-offset);
}

:focus:not(:focus-visible) {
  outline: none;
}

h1,
h2,
h3,
h4 {
  margin-block: 0 0.6em;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  line-height: var(--line-height-heading);
  text-wrap: balance;
}

h1,
.text-h1 {
  font-size: var(--type-h1);
}

h2,
.text-h2 {
  font-size: var(--type-h2);
}

h3,
.text-h3 {
  font-size: var(--type-h3);
}

.text-display {
  font-family: var(--font-heading);
  font-size: var(--type-display);
  font-weight: var(--font-weight-heading);
  line-height: var(--line-height-heading);
  text-wrap: balance;
}

.text-measurement {
  font-size: var(--type-measurement);
  font-variant-numeric: tabular-nums;
  font-weight: var(--font-weight-heading);
  line-height: var(--line-height-measurement);
}

.text-caption {
  color: var(--colour-muted);
  font-size: var(--type-caption);
}

.text-warning {
  color: var(--colour-danger);
  font-size: var(--type-warning);
  font-weight: var(--font-weight-heading);
}

p,
ul,
ol,
dl {
  margin-block: 0 1em;
}

ul,
ol {
  padding-inline-start: 1.25em;
}

.skip-link {
  position: fixed;
  z-index: 1000;
  inset-block-start: var(--space-3);
  inset-inline-start: var(--space-3);
  padding: var(--space-3) var(--space-4);
  color: var(--colour-brand-contrast);
  background: var(--colour-brand);
  transform: translateY(-180%);
}

.skip-link:focus {
  transform: translateY(0);
}

.page-width {
  width: min(100% - (2 * var(--page-gutter)), var(--page-width));
  margin-inline: auto;
}

.reading-width {
  width: min(100%, var(--reading-width));
}

.site-kicker {
  margin-block-end: var(--space-2);
  color: var(--colour-brand);
  font-family: var(--font-heading);
  font-size: var(--step--1);
  font-weight: var(--font-weight-heading);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.lead {
  color: var(--colour-muted);
  font-size: var(--type-lead);
  line-height: var(--line-height-lead);
}

.lead > :last-child {
  margin-block-end: 0;
}

.section {
  padding-block: var(--section-space-mobile);
}

.section + .section {
  border-block-start: var(--border-width) solid var(--colour-border);
}

.flow > * + * {
  margin-block-start: var(--flow-space, var(--space-4));
}

.cluster {
  display: flex;
  flex-wrap: wrap;
  gap: var(--cluster-gap, var(--space-4));
  align-items: center;
}

.grid {
  display: grid;
  gap: var(--grid-gap, var(--space-5));
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--grid-min, 16rem)), 1fr));
}

.stack {
  display: grid;
  gap: var(--stack-gap, var(--space-4));
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.button {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 0.72rem 1.15rem;
  border: 2px solid transparent;
  border-radius: var(--radius-small);
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition:
    color var(--transition-fast),
    background-color var(--transition-fast),
    border-color var(--transition-fast);
}

.button--primary {
  color: var(--colour-brand-contrast);
  background: var(--colour-brand);
}

.button--primary:hover,
.button--primary:focus-visible {
  color: var(--colour-brand-contrast);
  background: var(--colour-secondary);
}

.button--secondary {
  color: var(--colour-brand);
  background: var(--colour-background);
  border-color: var(--colour-brand);
}

.button--secondary:hover,
.button--secondary:focus-visible {
  color: var(--colour-brand-contrast);
  background: var(--colour-brand);
}

.button--tertiary {
  color: var(--colour-text);
  background: var(--colour-surface);
  border-color: var(--colour-border);
}

.button--text {
  min-height: var(--touch-target);
  padding-inline: var(--space-2);
  color: var(--colour-brand);
  background: transparent;
  border-color: transparent;
  text-decoration: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.16em;
}

.button[disabled],
.button[aria-disabled='true'],
.button--loading {
  opacity: 0.55;
  cursor: not-allowed;
  pointer-events: none;
}

.button--loading {
  position: relative;
}

.button__status {
  font-size: var(--type-caption);
}

.card {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
  background: var(--colour-surface);
  border: var(--border-width) solid var(--colour-border);
  border-radius: var(--radius-medium);
}

.card__link::after {
  position: absolute;
  content: '';
  inset: 0;
}

.card__media {
  overflow: hidden;
  margin: calc(-1 * var(--space-5)) calc(-1 * var(--space-5)) 0;
  aspect-ratio: 1;
  background: var(--colour-background);
  border-radius: var(--radius-medium) var(--radius-medium) 0 0;
}

.card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.card__title {
  margin: 0;
  font-size: var(--step-1);
}

.card__attributes {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  padding: 0;
  margin: 0;
  color: var(--colour-muted);
  font-size: var(--step--1);
  list-style: none;
}

.card__type,
.card__variant {
  margin: 0;
  color: var(--colour-muted);
  font-size: var(--type-caption);
}

.card__meta,
.card__availability {
  margin: 0;
  font-variant-numeric: tabular-nums;
  font-weight: var(--font-weight-heading);
}

.notice {
  padding: var(--space-5);
  border-inline-start: 4px solid;
  background: var(--colour-surface);
}

.notice__title {
  margin-block-end: var(--space-2);
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
}

.notice--information {
  border-color: var(--colour-information);
}

.notice--tip {
  background: color-mix(in srgb, var(--colour-success) 8%, var(--colour-surface));
  border-color: var(--colour-success);
  border-inline-start-style: dashed;
}

.notice--verified {
  background: color-mix(in srgb, var(--colour-success) 12%, var(--colour-surface));
  border-color: var(--colour-success);
  border-inline-start-width: 7px;
}

.notice--success {
  border-color: var(--colour-success);
}

.notice--warning {
  background: color-mix(in srgb, var(--colour-warning) 12%, var(--colour-surface));
  border-color: var(--colour-warning);
}

.notice--danger {
  background: color-mix(in srgb, var(--colour-danger) 9%, var(--colour-surface));
  border-color: var(--colour-danger);
  border-inline-start-width: 7px;
}

.notice--empty {
  border-color: var(--colour-border);
}

.empty-state {
  display: grid;
  gap: var(--space-4);
  max-width: var(--reading-width);
}

.empty-state__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  align-items: center;
}

.loading-status {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
  gap: var(--space-3);
  color: var(--colour-muted);
  font-size: var(--type-caption);
}

.loading-status[aria-busy='true']::before {
  width: 1rem;
  height: 1rem;
  border: 2px solid var(--colour-border);
  border-block-start-color: var(--colour-brand);
  border-radius: 50%;
  content: '';
}

@media (prefers-reduced-motion: no-preference) {
  .loading-status[aria-busy='true']::before {
    animation: theme-spin 0.8s linear infinite;
  }
}

@keyframes theme-spin {
  to {
    transform: rotate(360deg);
  }
}

.measurement-list,
.specification-list {
  display: grid;
  margin: 0;
  gap: var(--space-2);
}

.measurement-list > div,
.specification-list > div {
  display: grid;
  padding-block: var(--space-3);
  border-block-end: var(--border-width) solid var(--colour-border);
  gap: var(--space-2);
  grid-template-columns: minmax(8rem, 1fr) 2fr;
}

.measurement-list dt,
.specification-list dt {
  color: var(--colour-muted);
  font-weight: var(--font-weight-heading);
}

.measurement-list dd,
.specification-list dd {
  margin: 0;
  font-variant-numeric: tabular-nums;
}

.measurement-panel__source {
  color: var(--colour-muted);
  font-size: var(--type-caption);
}

.process__steps {
  display: grid;
  padding: 0;
  margin: 0;
  gap: var(--space-4);
  list-style: none;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
}

.process__step {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
}

.process__number {
  display: inline-flex;
  min-width: 2rem;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--colour-border);
  border-radius: 50%;
  font-weight: var(--font-weight-heading);
}

.field {
  display: grid;
  gap: var(--space-2);
}

.field__label {
  font-weight: var(--font-weight-heading);
}

.field__input {
  min-height: var(--touch-target);
  width: 100%;
  padding: 0.7rem 0.8rem;
  background: var(--colour-background);
  border: 1px solid var(--colour-border);
  border-radius: var(--radius-small);
}

.field--error .field__input {
  border-color: var(--colour-danger);
}

.field__help {
  color: var(--colour-muted);
  font-size: var(--type-caption);
}

.field__error {
  color: var(--colour-danger);
  font-weight: var(--font-weight-heading);
}

.field--choice {
  padding: 0;
  margin: 0;
  border: 0;
}

.choice-list {
  display: grid;
  gap: var(--space-2);
}

.choice {
  display: flex;
  min-height: var(--touch-target);
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3);
  border: 1px solid var(--colour-border);
  border-radius: var(--radius-small);
  cursor: pointer;
}

.choice:has(input:checked) {
  border-color: var(--colour-brand);
  background: var(--colour-surface);
}

.choice input {
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  accent-color: var(--colour-brand);
}

.site-header {
  position: sticky;
  z-index: 100;
  inset-block-start: 0;
  background: var(--colour-background);
  border-block-end: var(--border-width) solid var(--colour-border);
}

.promo-bar {
  background: var(--colour-brand);
  color: var(--colour-brand-contrast);
  text-align: center;
  padding: 0.45rem 1rem;
  font-size: var(--step--1);
  line-height: 1.35;
  letter-spacing: 0.01em;
}

.promo-bar p {
  margin: 0;
}

.promo-bar__heading {
  font-weight: 700;
}

.promo-bar__detail {
  display: inline;
  margin-inline-start: 0.55rem;
  color: rgb(255 255 255 / 0.9);
}

.cart-summary__promo {
  margin: 0;
  padding: 0.75rem 0.9rem;
  background: var(--colour-surface);
  border: var(--border-width) solid var(--colour-border);
  color: var(--colour-text);
  font-size: var(--step--1);
}

@media (max-width: 749px) {
  .promo-bar__detail {
    display: none;
  }
}

.site-header--scrolled {
  box-shadow: 0 1px 0 rgb(29 36 33 / 8%);
}

.breadcrumbs {
  padding-block: var(--space-3);
  max-width: 100%;
}

.breadcrumbs__list {
  display: flex;
  flex-wrap: nowrap;
  padding: 0;
  margin: 0;
  gap: var(--space-2);
  color: var(--colour-muted);
  font-size: var(--step--1);
  list-style: none;
  overflow-x: auto;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.breadcrumbs__list a,
.breadcrumbs__current {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
  white-space: nowrap;
}

.breadcrumbs__current {
  max-width: 16rem;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--colour-text);
}

.breadcrumbs__list li + li::before {
  margin-inline-end: var(--space-2);
  content: '/';
}

.search-form__controls {
  display: grid;
  gap: var(--space-3);
}

.search-synonym-help,
.search-recovery__honesty {
  color: var(--colour-muted);
  font-size: var(--step--1);
}

.search-recovery__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.search-recovery__list a {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
}

.search-results .card {
  height: 100%;
}

.home-hero {
  padding-block-start: var(--space-6);
}

.home-hero__layout {
  display: grid;
  gap: var(--space-6);
  align-items: center;
}

.home-hero__brand {
  margin-block-end: 0;
  color: var(--colour-brand);
}

.home-hero__brand .brand-logo {
  display: block;
  line-height: 0;
}

.home-hero__brand .brand-logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(100%, 14rem);
  max-height: 3rem;
  object-fit: contain;
}

.brand-logo--on-dark img {
  filter: brightness(0) invert(1);
}

.home-hero__content .lead {
  max-width: 38rem;
}

.home-hero__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2);
  width: 100%;
}

.home-hero__actions .button {
  min-width: 0;
  width: 100%;
  justify-content: center;
  text-align: center;
  padding-block: 0.55rem;
  padding-inline: 0.6rem;
  font-size: 0.8125rem;
  line-height: 1.25;
  white-space: normal;
}

.home-hero__media {
  overflow: hidden;
  max-width: min(100%, var(--image-hero-max-width));
  aspect-ratio: 4 / 3;
  background: var(--colour-surface);
  border-radius: var(--radius-medium);
}

.home-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Full-bleed hero with approved Facebook cover — text overlaid */
.home-hero--has-media {
  position: relative;
  isolation: isolate;
  padding-block: 0;
  overflow: hidden;
  min-height: clamp(22rem, 58vw, 32rem);
}

.home-hero--has-media .home-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  max-width: none;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  border-radius: 0;
  background: #1a1510;
}

.home-hero--has-media .home-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Keep the burning stove centred as the focal point */
  object-position: center center;
}

.home-hero--has-media .home-hero__scrim {
  position: absolute;
  z-index: 1;
  inset-block: 0;
  inset-inline-start: 0;
  width: min(100%, 40rem);
  pointer-events: none;
  background: linear-gradient(
    to right,
    rgba(12, 10, 8, 0.3) 0%,
    rgba(12, 10, 8, 0.22) 50%,
    rgba(12, 10, 8, 0) 100%
  );
}

.home-hero--has-media .home-hero__layout {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  min-height: inherit;
  padding-block: var(--space-7);
  gap: 0;
}

.home-hero--has-media .home-hero__content {
  max-width: 42rem;
}

.home-hero--has-media .home-hero__brand,
.home-hero--has-media .home-hero__content h1,
.home-hero--has-media .home-hero__content .lead,
.home-hero--has-media .home-hero__content .lead p {
  color: #fff;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

.home-hero--has-media .home-hero__content .lead {
  max-width: 34rem;
}

.home-hero--has-media .home-hero__actions .button--secondary,
.home-hero--has-media .home-hero__actions .button--tertiary {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(255, 255, 255, 0.94);
  color: var(--colour-ink, #1a1a1a);
}

.home-hero--has-media .home-hero__actions .button--primary {
  text-shadow: none;
}

.collection-hero--has-media {
  position: relative;
  isolation: isolate;
  padding-block: 0;
  overflow: hidden;
  margin-bottom: var(--space-7);
  background: #1a1510;
  /* Shorter hero: crop upper sky/trees, keep smoker top + products */
  aspect-ratio: 16 / 9;
  max-height: min(28rem, 52vw);
}

.collection-hero--has-media .collection-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
}

.collection-hero--has-media .collection-hero__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Bias downward so products stay in frame while top is cropped */
  object-position: center 72%;
}

.collection-hero--radiator-foil.collection-hero--has-media .collection-hero__media img {
  object-fit: contain;
  object-position: center;
  background: #fff;
}

.collection-hero--radiator-foil.collection-hero--has-media .collection-hero__scrim {
  display: none;
}

.foil-collection-intro {
  display: grid;
  justify-items: center;
  gap: var(--space-4);
  padding-block: var(--space-6);
}

.foil-collection-intro h1 {
  margin: 0;
  text-align: center;
  color: #000;
}

.foil-collection-intro__media img {
  display: block;
  width: auto;
  max-width: min(100%, 28rem);
  max-height: 20rem;
  height: auto;
  object-fit: contain;
  background: #fff;
}

.collection-hero--radiator-foil.collection-hero--has-media h1,
.collection-hero--radiator-foil.collection-hero--has-media .collection-hero__tagline {
  color: #000;
  text-shadow: none;
}

.collection-hero--has-media .collection-hero__scrim {
  position: absolute;
  z-index: 1;
  inset-block-start: 0;
  inset-inline-start: 0;
  width: min(100%, 36rem);
  height: min(55%, 12rem);
  pointer-events: none;
  background: linear-gradient(
    to bottom right,
    rgba(12, 10, 8, 0.42) 0%,
    rgba(12, 10, 8, 0.22) 55%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--has-media .collection-hero__layout {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: flex;
  align-items: flex-start;
  padding-block: var(--space-5);
}

.collection-hero--has-media .collection-hero__content {
  max-width: min(34rem, 92%);
}

.collection-hero--has-media h1,
.collection-hero--has-media .collection-hero__tagline {
  color: #fff;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.55);
}

/* BBQ & Smoking: aspect-ratio + max-height was shrinking hero width on desktop */
.collection-hero--bbq-smoking.collection-hero--has-media {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  aspect-ratio: auto;
  height: min(28rem, 52vw);
  max-height: min(28rem, 52vw);
}

.collection-hero--bbq-smoking.collection-hero--has-media .collection-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 72%;
}

.collection-hero--bbq-smoking .collection-hero__scrim {
  width: min(100%, 40rem);
  height: min(88%, 16.5rem);
  background: linear-gradient(
    105deg,
    rgba(12, 10, 8, 0.9) 0%,
    rgba(12, 10, 8, 0.74) 30%,
    rgba(12, 10, 8, 0.42) 58%,
    rgba(12, 10, 8, 0.12) 82%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--bbq-smoking .collection-hero__content {
  max-width: 36rem;
  padding: var(--space-4) var(--space-6) var(--space-5) var(--space-4);
  background:
    linear-gradient(
      to right,
      rgba(12, 10, 8, 0.82) 0%,
      rgba(12, 10, 8, 0.62) 52%,
      rgba(12, 10, 8, 0.22) 82%,
      rgba(12, 10, 8, 0) 100%
    );
}

.collection-hero--bbq-smoking h1,
.collection-hero--bbq-smoking .collection-hero__tagline {
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}

.collection-hero--bbq-smoking-chips.collection-hero--has-media {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  aspect-ratio: auto;
  height: min(28rem, 58vw);
  max-height: min(28rem, 58vw);
}

.collection-hero--bbq-smoking-chips.collection-hero--has-media .collection-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.collection-hero--bbq-smoking-chips .collection-hero__scrim {
  width: min(100%, 42rem);
  height: min(92%, 18rem);
  background: linear-gradient(
    105deg,
    rgba(12, 10, 8, 0.88) 0%,
    rgba(12, 10, 8, 0.62) 42%,
    rgba(12, 10, 8, 0.2) 74%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--bbq-smoking-chips .collection-hero__content {
  max-width: 36rem;
  padding: var(--space-4) var(--space-5) var(--space-5) var(--space-4);
  background: linear-gradient(
    to right,
    rgba(12, 10, 8, 0.78) 0%,
    rgba(12, 10, 8, 0.5) 55%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--bbq-smoking-chips h1,
.collection-hero--bbq-smoking-chips .collection-hero__tagline {
  color: #fff;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.65);
}

.collection-hero--bbq-smoking-chips .collection-hero__tagline--lead {
  font-size: var(--step-1);
  font-weight: var(--font-weight-heading);
  line-height: 1.3;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core {
  grid-template-columns: 1fr;
  gap: var(--space-5);
  max-width: 56rem;
  margin-inline: auto;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card--product {
  height: 100%;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card__media {
  aspect-ratio: 1 / 1;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card__media img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

/* Balance visual weight: Cherry pouch reads larger than the 5L bag at equal box fill */
.collection-page--bbq-smoking-chips .product-grid--chips-core .card--product:nth-child(1) .card__media img {
  max-width: 78%;
  max-height: 78%;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card--product:nth-child(2) .card__media img {
  max-width: 92%;
  max-height: 92%;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card__title {
  font-size: var(--step-0);
  line-height: 1.3;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card__title-line2 {
  display: block;
  margin-block-start: 0.2rem;
  font-size: var(--step-0);
  font-weight: var(--font-weight-heading);
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card__type,
.collection-page--bbq-smoking-chips .product-grid--chips-core .card__variant {
  display: none;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card__flavour-cta {
  margin: 0;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card__flavour-cta a {
  display: inline-flex;
  align-items: center;
  min-height: var(--touch-target);
  color: #8b4513;
  font-size: var(--step--1);
  font-weight: var(--font-weight-heading);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.collection-page--bbq-smoking-chips .product-grid--chips-core .card__flavour-cta a:hover,
.collection-page--bbq-smoking-chips .product-grid--chips-core .card__flavour-cta a:focus-visible {
  color: var(--colour-text);
}

.collection-chunks-positioning {
  margin: 0 auto var(--space-5);
  max-width: 40rem;
  text-align: center;
  font-size: var(--step-0);
  font-weight: var(--font-weight-heading);
  line-height: 1.4;
}

.collection-page--bbq-smoking-dust .product-grid--chips-core {
  max-width: 28rem;
}

.collection-page--bbq-smoking-dust .product-grid--chips-core .card--product:nth-child(1) .card__media img,
.collection-page--bbq-smoking-dust .product-grid--chips-core .card--product:nth-child(2) .card__media img {
  max-width: 88%;
  max-height: 88%;
}

.chips-dust-use-badge {
  display: block;
  width: fit-content;
  max-width: 100%;
  white-space: normal;
  line-height: 1.35;
  letter-spacing: 0.06em;
}

.chips-dust-use-note {
  font-size: 0.86rem;
}

.collection-page--bbq-smoking-chunks .product-grid--chips-core .card--product:nth-child(1) .card__media img,
.collection-page--bbq-smoking-chunks .product-grid--chips-core .card--product:nth-child(2) .card__media img {
  max-width: 88%;
  max-height: 88%;
}

@media (min-width: 48rem) {
  .collection-page--bbq-smoking-chips .product-grid--chips-core {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .collection-hero--bbq-smoking-chips.collection-hero--has-media {
    height: min(24rem, 88vw);
    max-height: min(24rem, 88vw);
  }

  .collection-hero--bbq-smoking-chips .collection-hero__scrim {
    width: 100%;
    height: min(70%, 16rem);
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.88) 0%,
      rgba(12, 10, 8, 0.55) 55%,
      rgba(12, 10, 8, 0) 100%
    );
  }

  .collection-hero--bbq-smoking-chips .collection-hero__content {
    max-width: 100%;
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.78) 0%,
      rgba(12, 10, 8, 0.4) 70%,
      rgba(12, 10, 8, 0) 100%
    );
  }
}

/* Vermiculite Boards: light studio hero — stronger left scrim so white text stays readable */
.collection-hero--vermiculite .collection-hero__media img {
  object-position: right center;
}

.collection-hero--vermiculite .collection-hero__scrim {
  width: min(100%, 48rem);
  height: min(88%, 18rem);
  background: linear-gradient(
    to right,
    rgba(12, 10, 8, 0.88) 0%,
    rgba(12, 10, 8, 0.72) 38%,
    rgba(12, 10, 8, 0.4) 68%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--vermiculite .collection-hero__content {
  padding: var(--space-3) var(--space-4);
  border-radius: 0.35rem;
  background: rgba(12, 10, 8, 0.42);
}

.collection-hero--vermiculite h1,
.collection-hero--vermiculite .collection-hero__tagline {
  text-shadow:
    0 1px 2px rgba(0, 0, 0, 0.85),
    0 2px 12px rgba(0, 0, 0, 0.55);
}

.collection-hero--vermiculite-premium.collection-hero--has-media {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  aspect-ratio: auto;
  height: min(30rem, 62vw);
  max-height: min(30rem, 62vw);
}

.collection-hero--vermiculite-premium.collection-hero--has-media .collection-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
}

.collection-hero--vermiculite-premium .collection-hero__content {
  max-width: 38rem;
  padding: var(--space-4) var(--space-5);
  background: linear-gradient(
    to right,
    rgba(12, 10, 8, 0.82) 0%,
    rgba(12, 10, 8, 0.55) 58%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--vermiculite-premium .collection-hero__tagline--lead {
  font-size: var(--step-1);
  font-weight: var(--font-weight-heading);
  line-height: 1.3;
}

.verm-hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-block-start: var(--space-4);
}

.verm-hero-ctas .button {
  min-height: var(--touch-target);
}

.verm-hero-ctas__secondary {
  background: transparent;
  border-color: color-mix(in srgb, #f4efe6 70%, transparent);
  color: #fff;
}

.verm-hero-ctas__secondary:hover,
.verm-hero-ctas__secondary:focus-visible {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

.collection-page--vermiculite {
  --verm-charcoal: #1c221c;
  --verm-green: #2f3d32;
  --verm-orange: #c45c26;
  --verm-cream: #f4efe6;
}

.verm-trust-strip {
  margin: 0;
  padding: var(--space-5);
  border-radius: 0.5rem;
  background:
    linear-gradient(135deg, rgba(28, 34, 28, 0.96), rgba(47, 61, 50, 0.94));
  color: var(--verm-cream);
}

.verm-trust-strip__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  margin: 0;
  padding: 0;
  list-style: none;
}

.verm-trust-strip__item {
  display: grid;
  gap: 0.25rem;
}

.verm-diff-strip__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  margin-bottom: 0.15rem;
  border-radius: 999px;
  color: var(--verm-orange);
  background: color-mix(in srgb, var(--verm-orange) 16%, transparent);
  border: 1px solid color-mix(in srgb, var(--verm-orange) 40%, transparent);
}

.verm-diff-strip .verm-trust-strip__title {
  color: #fff;
}

.collection-page--vermiculite .product-grid--vermiculite .card__badge {
  margin: 0;
  display: inline-block;
  width: fit-content;
  padding: 0.3rem 0.55rem;
  border-radius: 999px;
  background: var(--verm-orange);
  color: #161616;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.verm-trust-strip__title {
  font-size: var(--step--1);
  font-weight: var(--font-weight-heading);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #fff;
}

.verm-trust-strip__text {
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--verm-cream) 78%, transparent);
}

.verm-cut-feature {
  display: grid;
  gap: var(--space-5);
  align-items: center;
  padding: var(--space-5);
  border-radius: 0.6rem;
  background:
    linear-gradient(120deg, #171c17 0%, #273228 55%, #1c241d 100%);
  color: var(--verm-cream);
  border: 1px solid color-mix(in srgb, var(--verm-orange) 45%, transparent);
}

.verm-cut-feature__media {
  margin: 0;
  border-radius: 0.4rem;
  overflow: hidden;
  background: #fff;
  aspect-ratio: 1 / 1;
  max-width: 18rem;
}

.verm-cut-feature__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.verm-cut-feature__badge {
  margin: 0;
  display: inline-block;
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  background: var(--verm-orange);
  color: #161616;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.verm-cut-feature h2 {
  margin: 0;
  color: #fff;
  font-size: var(--step-3);
  line-height: 1.15;
}

.verm-cut-feature p {
  margin: 0;
  max-width: 36rem;
  color: color-mix(in srgb, var(--verm-cream) 84%, transparent);
}

.verm-cut-feature .button--primary {
  background: var(--verm-orange);
  border-color: var(--verm-orange);
  color: #161616;
}

.verm-cut-feature .button--primary:hover,
.verm-cut-feature .button--primary:focus-visible {
  filter: brightness(1.05);
}

/* Compact conversion strip — vermiculite collection only */
.verm-cut-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3) var(--space-5);
  padding: 0.9rem 1.15rem;
  border-radius: 0.45rem;
  background: linear-gradient(105deg, #1a211a 0%, #2a352c 100%);
  color: var(--verm-cream);
  border: 1px solid color-mix(in srgb, var(--verm-orange) 38%, transparent);
}

.verm-cut-strip__copy {
  display: grid;
  gap: 0.2rem;
  min-width: min(100%, 18rem);
  flex: 1 1 16rem;
}

.verm-cut-strip__title {
  margin: 0;
  color: #fff;
  font-size: var(--step-0);
  font-weight: var(--font-weight-heading);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.verm-cut-strip__text {
  margin: 0;
  max-width: 42rem;
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--verm-cream) 82%, transparent);
}

.verm-cut-strip__cta {
  flex: 0 0 auto;
  background: var(--verm-orange);
  border-color: var(--verm-orange);
  color: #161616;
  white-space: nowrap;
}

.verm-cut-strip__cta:hover,
.verm-cut-strip__cta:focus-visible {
  filter: brightness(1.05);
}

.collection-page--vermiculite .product-grid--vermiculite .card--product:first-child {
  border-color: color-mix(in srgb, var(--verm-orange) 55%, transparent);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--verm-orange) 28%, transparent);
}

.collection-page--vermiculite .product-grid--vermiculite .card--product:first-child .card__badge {
  background: var(--verm-orange);
  color: #161616;
}

.verm-choice {
  display: grid;
  gap: var(--space-5);
  min-width: 0;
}

.verm-choice__card {
  display: grid;
  gap: 0;
  min-width: 0;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
  background: #fff;
  border: 1px solid color-mix(in srgb, var(--verm-charcoal) 14%, transparent);
  border-radius: 0.7rem;
  box-shadow: 0 8px 22px color-mix(in srgb, var(--verm-charcoal) 8%, transparent);
  transition: border-color 0.16s ease, box-shadow 0.16s ease;
}

.verm-choice__card:hover,
.verm-choice__card:focus-visible {
  border-color: color-mix(in srgb, var(--verm-orange) 45%, transparent);
  box-shadow: 0 12px 28px color-mix(in srgb, var(--verm-charcoal) 12%, transparent);
}

.verm-choice__card--featured {
  border-color: color-mix(in srgb, var(--verm-orange) 42%, transparent);
}

.verm-choice__media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 1rem;
  overflow: hidden;
  background: #f7f4ee;
}

.verm-choice__media img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.verm-choice__card--featured .verm-choice__media {
  min-height: 14rem;
}

.verm-choice__card--featured .verm-choice__media img {
  max-height: 18rem;
}

.verm-choice__row .verm-choice__media {
  height: 13.75rem;
  padding: 0.3rem 0.4rem;
}

.verm-choice__row .verm-choice__media img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

.verm-choice__body {
  display: grid;
  gap: 0.55rem;
  align-content: start;
  padding: 1.15rem 1.2rem 1.3rem;
}

.verm-choice__row .verm-choice__body {
  grid-template-rows: auto auto 1fr auto;
  min-height: 9.25rem;
}

.verm-choice__eyebrow {
  width: fit-content;
  padding: 0.22rem 0.55rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--verm-orange) 16%, white);
  color: var(--verm-orange);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.verm-choice__title {
  margin: 0;
  font-size: var(--step-1);
  line-height: 1.2;
}

.verm-choice__copy {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.45;
  color: color-mix(in srgb, var(--colour-text) 74%, transparent);
}

.verm-choice__cta {
  justify-self: start;
  margin-top: auto;
  pointer-events: none;
}

.verm-choice__row {
  display: grid;
  gap: var(--space-5);
  align-items: stretch;
}

@media (min-width: 48rem) {
  .verm-choice__card--featured {
    grid-template-columns: 1fr 1fr;
    min-height: 20rem;
  }

  .verm-choice__card--featured .verm-choice__media {
    min-height: 20rem;
    padding: 1.6rem;
  }

  .verm-choice__card--featured .verm-choice__media img {
    max-height: 17.5rem;
  }

  .verm-choice__card--featured .verm-choice__body {
    padding: 2rem 2.1rem;
    align-content: center;
    gap: 0.75rem;
  }

  .verm-choice__card--featured .verm-choice__title {
    font-size: var(--step-2);
  }

  .verm-choice__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.verm-products__intro {
  margin: 0 0 var(--space-4);
}

.verm-products__intro h2 {
  margin: 0;
  font-size: var(--step-2);
}

.verm-products--standard-range .verm-products__primary {
  max-width: 38rem;
  margin: 0 0 var(--space-7);
}

.verm-products--standard-range .verm-products__primary .card--product {
  border-color: color-mix(in srgb, var(--verm-orange) 55%, transparent);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--verm-orange) 28%, transparent);
}

.verm-products--standard-range .verm-products__primary .card__media {
  aspect-ratio: 1 / 1;
  background: #fff;
}

.verm-products--standard-range .verm-products__primary .card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.verm-products--standard-range .verm-products__related {
  min-width: 0;
}

.product-grid--verm-related {
  align-items: stretch;
  gap: var(--space-4);
  grid-template-columns: minmax(0, 1fr);
}

.product-grid--verm-related .card--product {
  height: 100%;
  min-width: 0;
  border-color: color-mix(in srgb, var(--verm-charcoal) 12%, transparent);
}

.product-grid--verm-related .card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  background: #fff;
}

.product-grid--verm-related .card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.product-grid--verm-related .card__title {
  font-size: var(--step-0);
  line-height: 1.3;
}

.product-grid--verm-related .card__blurb {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.45;
  color: color-mix(in srgb, var(--colour-text) 72%, transparent);
}

.product-grid--verm-related .card__type,
.product-grid--verm-related .card__variant {
  display: none;
}

.product-grid--verm-related .card__flavour-cta a {
  color: var(--verm-orange);
  font-weight: var(--font-weight-heading);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.collection-page--vermiculite .product-grid--vermiculite {
  gap: var(--space-5);
}

.collection-page--vermiculite .product-grid--vermiculite .card--product {
  height: 100%;
  border-color: color-mix(in srgb, var(--verm-charcoal) 12%, transparent);
}

.collection-page--vermiculite .product-grid--vermiculite .card__media {
  aspect-ratio: 1 / 1;
  background: #fff;
}

.collection-page--vermiculite .product-grid--vermiculite .card__eyebrow {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--verm-orange);
}

.collection-page--vermiculite .product-grid--vermiculite .card__title {
  font-size: var(--step-0);
  line-height: 1.3;
}

.collection-page--vermiculite .product-grid--vermiculite .card__blurb {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.45;
  color: color-mix(in srgb, var(--colour-text) 72%, transparent);
}

.collection-page--vermiculite .product-grid--vermiculite .card__type,
.collection-page--vermiculite .product-grid--vermiculite .card__variant {
  display: none;
}

.collection-page--vermiculite .product-grid--vermiculite .card__flavour-cta a {
  color: var(--verm-orange);
  font-weight: var(--font-weight-heading);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.verm-help,
.verm-why {
  max-width: 44rem;
}

.verm-help h2,
.verm-why h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--step-1);
}

.verm-help p,
.verm-why li,
.verm-why__note {
  font-size: var(--step--1);
  line-height: 1.5;
}

.verm-help__cta a {
  font-weight: var(--font-weight-heading);
  color: var(--verm-orange);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.verm-why ul {
  margin: 0;
  padding-inline-start: 1.1rem;
}

.verm-why__note {
  margin: var(--space-4) 0 0;
  color: color-mix(in srgb, var(--colour-text) 70%, transparent);
}

@media (min-width: 48rem) {
  .verm-trust-strip__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-5);
  }

  .verm-cut-feature {
    grid-template-columns: minmax(14rem, 18rem) minmax(0, 1fr);
    padding: var(--space-6);
  }

  .collection-page--vermiculite .product-grid--vermiculite {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .verm-products--standard-range .verm-products__primary .card--product {
    display: grid;
    grid-template-columns: minmax(11rem, 13.5rem) minmax(0, 1fr);
    align-items: center;
  }

  .verm-products--standard-range .verm-products__primary .card__media {
    margin: calc(-1 * var(--space-5)) 0 calc(-1 * var(--space-5)) calc(-1 * var(--space-5));
    max-height: 13.5rem;
    border-radius: var(--radius-medium) 0 0 var(--radius-medium);
  }

  .product-grid--verm-related {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem) {
  .collection-page--vermiculite .product-grid--vermiculite {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-grid--verm-related {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .collection-hero--vermiculite-premium.collection-hero--has-media {
    height: min(28rem, 96vw);
    max-height: min(28rem, 96vw);
  }

  .collection-hero--vermiculite-premium .collection-hero__content {
    max-width: 100%;
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.82) 0%,
      rgba(12, 10, 8, 0.45) 70%,
      rgba(12, 10, 8, 0) 100%
    );
  }

  .verm-hero-ctas .button {
    width: 100%;
    justify-content: center;
  }

  .verm-cut-strip {
    align-items: stretch;
  }

  .verm-cut-strip__cta {
    width: 100%;
    text-align: center;
    white-space: normal;
  }

  .verm-cut-feature__media {
    max-width: none;
  }
}

/* Stove Rope & Adhesive: white studio product shot — centre crop + strong left scrim */
.collection-hero--stove-rope .collection-hero__media img {
  object-position: center center;
}

.collection-hero--stove-rope .collection-hero__scrim {
  width: min(100%, 48rem);
  height: min(88%, 18rem);
  background: linear-gradient(
    to right,
    rgba(12, 10, 8, 0.88) 0%,
    rgba(12, 10, 8, 0.72) 38%,
    rgba(12, 10, 8, 0.4) 68%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--stove-rope .collection-hero__content {
  padding: var(--space-3) var(--space-4);
  border-radius: 0.35rem;
  background: rgba(12, 10, 8, 0.42);
}

.collection-hero--stove-rope h1,
.collection-hero--stove-rope .collection-hero__tagline {
  text-shadow:
    0 1px 2px rgba(0, 0, 0, 0.85),
    0 2px 12px rgba(0, 0, 0, 0.55);
}

.collection-page--stove-rope {
  --verm-charcoal: #1c221c;
  --verm-green: #2f3d32;
  --verm-orange: #c45c26;
  --verm-cream: #f4efe6;
}

@media (min-width: 48rem) {
  .collection-page--stove-rope .verm-choice__row--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .collection-page--stove-rope .verm-choice__row--two .verm-choice__card {
    min-height: 22rem;
  }

  .collection-page--stove-rope .verm-choice__row--two .verm-choice__media {
    height: 16.5rem;
    padding: 1.35rem 1.5rem;
  }

  .collection-page--stove-rope .verm-choice__card--featured .verm-choice__media {
    padding: 2rem 2.2rem;
  }

  .collection-page--stove-rope .verm-choice__card--featured .verm-choice__media img {
    max-width: 86%;
    max-height: 15rem;
  }
}

.collection-page--stove-rope .verm-choice__media {
  background: #fff;
}

.collection-page--stove-rope .verm-choice__card--featured .verm-choice__media {
  padding: 1.6rem 1.8rem;
}

.collection-page--stove-rope .verm-choice__card--featured .verm-choice__media img {
  max-width: 88%;
  max-height: 15.5rem;
}

.collection-page--stove-rope .verm-choice__row .verm-choice__media {
  height: 14.5rem;
  padding: 1.15rem 1.2rem;
}

.collection-page--stove-rope .verm-choice__row .verm-choice__media img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

@media (min-width: 48rem) {
  .collection-hero--stove-rope.collection-hero--has-media {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    aspect-ratio: auto;
    height: min(28rem, 52vw);
    max-height: min(28rem, 52vw);
  }

  .collection-hero--stove-rope.collection-hero--has-media .collection-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
  }
}

/* Gas Fire Coals, Pebbles & Logs — full-width coal hero + premium collection layout */
.collection-page--gas-fire {
  --verm-charcoal: #1c221c;
  --verm-green: #2f3d32;
  --verm-orange: #c45c26;
  --verm-cream: #f4efe6;
}

.gas-coals-hero {
  width: 100%;
  background: #fff;
  padding-block: var(--space-5);
}

.gas-coals-hero__grid {
  display: grid;
  gap: var(--space-5);
  align-items: center;
}

.gas-coals-hero__copy h1 {
  margin: 0 0 var(--space-3);
}

.gas-coals-hero__lead {
  margin: 0 0 var(--space-3);
  font-size: var(--step-1);
  font-weight: var(--font-weight-heading);
  line-height: 1.3;
  color: var(--verm-charcoal);
}

.gas-coals-hero__copy p {
  margin: 0 0 var(--space-3);
  max-width: 38rem;
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--color-foreground) 80%, transparent);
}

.gas-coals-hero__copy .verm-hero-ctas {
  margin-top: var(--space-4);
}

.gas-coals-hero .gas-hero-help {
  margin: var(--space-3) 0 0;
  color: color-mix(in srgb, var(--color-foreground) 78%, transparent);
}

.gas-coals-hero .gas-hero-choose {
  color: var(--verm-orange);
  font-weight: 600;
}

.gas-coals-hero__compat {
  margin-top: var(--space-3);
  max-width: 38rem;
  font-size: 0.92rem;
  line-height: 1.45;
  color: color-mix(in srgb, var(--color-foreground) 70%, transparent);
}

.gas-coals-hero__media {
  margin: 0;
  aspect-ratio: 1 / 1;
  width: 100%;
  max-width: 36rem;
  justify-self: center;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 0.5rem;
  background: #fff;
}

.gas-coals-hero__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.gas-coals-choose {
  margin-block-start: var(--space-6);
}

.gas-coals-choose__intro {
  margin: 0 0 var(--space-4);
  max-width: 46rem;
}

.gas-coals-choose__intro h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--step-1);
}

.gas-coals-choose__intro p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--color-foreground) 78%, transparent);
}

.gas-coals-choose__cards {
  margin-bottom: var(--space-4);
}

@media (min-width: 22rem) {
  .gas-coals-choose__cards.gas-fire-need {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.gas-coals-choose__card {
  align-content: start;
}

.gas-coals-choose__media {
  display: block;
  overflow: hidden;
  margin: 0 0 var(--space-3);
  border-radius: 0.35rem;
  background: #fff;
}

.gas-coals-choose__media img {
  display: block;
  width: 100%;
  height: 10.5rem;
  object-fit: contain;
}

.gas-coals-choose__note {
  margin: 0;
  max-width: 46rem;
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--color-foreground) 78%, transparent);
}

.square-coals-range {
  --rc-ink: #1c1c1a;
  --rc-muted: #5c574f;
  --rc-cream: #f6f1e8;
  --rc-paper: #fbf8f3;
  --rc-line: #ddd4c6;
  --rc-copper: #c45c26;
}

.square-coals-range__fold {
  display: grid;
  gap: var(--space-6);
  align-items: start;
  margin: 0 0 var(--space-7);
}

.square-coals-range__media {
  margin: 0;
  position: relative;
  overflow: hidden;
  border-radius: 0.5rem;
  background: #fff;
  border: 1px solid var(--rc-line);
}

.square-coals-range__preload {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.square-coals-range__media img {
  display: block;
  width: 100%;
  height: auto;
}

.square-coals-range__thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.45rem;
  margin: 0;
  padding: 0.55rem;
  list-style: none;
  background: #fff;
}

.square-coals-range__thumbs[hidden] {
  display: none !important;
}

.square-coals-range__thumb {
  display: block;
  width: 100%;
  padding: 0;
  border: 1px solid #d7d1c8;
  background: #fff;
  cursor: pointer;
}

.square-coals-range__thumb[aria-pressed='true'] {
  border-color: var(--rc-ink);
  box-shadow: inset 0 0 0 1px var(--rc-ink);
}

.square-coals-range__thumb img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: contain;
  background: #fff;
}

.square-coals-range__kicker {
  margin: 0 0 0.35rem;
  color: var(--rc-copper);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
}

.square-coals-range__copy h1 {
  margin: 0;
  color: var(--rc-ink);
  font-size: clamp(1.7rem, 2.4vw, 2.35rem);
  line-height: 1.15;
}

.square-coals-range__lead {
  margin: 0.75rem 0 0;
  max-width: 36rem;
  color: var(--rc-muted);
  font-size: 1.02rem;
  line-height: 1.5;
}

.square-coals-range__picker-label {
  margin: 1.35rem 0 0.55rem;
  color: var(--rc-ink);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.square-coals-range__picker {
  display: grid;
  gap: 0.65rem;
}

.square-coals-range__size {
  display: grid;
  gap: 0.2rem;
  padding: 0.95rem 1rem;
  border: 1px solid var(--rc-line);
  background: #fff;
  color: var(--rc-ink);
  text-align: left;
  cursor: pointer;
}

.square-coals-range__size-name {
  font-size: 0.86rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.square-coals-range__size-dim {
  color: var(--rc-muted);
  font-size: 0.98rem;
}

.square-coals-range__size[aria-pressed='true'] {
  border-color: var(--rc-ink);
  box-shadow: inset 0 0 0 1px var(--rc-ink);
}

.square-coals-range__size-hint {
  margin: 0.75rem 0 0;
  color: var(--rc-muted);
  font-size: 0.92rem;
  line-height: 1.5;
}

.square-coals-range__price {
  margin: 0.85rem 0 0;
  color: var(--rc-ink);
  font-size: 1.15rem;
  font-weight: 700;
}

.square-coals-range__buy {
  margin: 1.1rem 0 0;
}

.square-coals-range__selected {
  margin: 0 0 0.85rem;
  color: var(--rc-ink);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.square-coals-range .rc-pack-picker {
  margin: 0 0 var(--space-4);
}

.square-coals-range .rc-pack-picker__label {
  margin: 0 0 0.55rem;
  color: var(--rc-ink);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.square-coals-range .rc-pack-picker__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
}

.square-coals-range .rc-pack-card {
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.7rem;
  border: 1px solid var(--rc-line);
  background: #fff;
  color: var(--rc-ink);
  text-align: left;
  cursor: pointer;
}

.square-coals-range .rc-pack-card:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.square-coals-range .rc-pack-card__qty {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.square-coals-range .rc-pack-card__price {
  color: var(--rc-muted);
  font-size: 0.92rem;
}

.square-coals-range .rc-pack-card[aria-pressed='true'] {
  border-color: var(--rc-ink);
  box-shadow: inset 0 0 0 1px var(--rc-ink);
}

.square-coals-range [hidden] {
  display: none !important;
}

.square-coals-range__qty-block {
  display: grid;
  gap: 0.85rem;
  justify-items: start;
}

.square-coals-range__qty-block .product-form__quantity {
  margin: 0;
  max-width: 12rem;
}

.square-coals-range__help {
  max-width: 46rem;
  margin: 0 0 var(--space-7);
  padding: var(--space-5);
  border: 1px solid var(--rc-line);
  background: var(--rc-paper);
}

.square-coals-range__help h2 {
  margin: 0 0 0.65rem;
  color: var(--rc-ink);
  font-size: 0.92rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.square-coals-range__help p {
  margin: 0 0 0.65rem;
  color: var(--rc-muted);
  line-height: 1.5;
}

.square-coals-range__measure {
  display: inline-block;
  margin-top: 0.35rem;
  color: var(--rc-copper);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
}

.square-coals-range__measure:hover {
  text-decoration: underline;
}

.square-coals-range__trust.rc-trust-strip {
  margin: 0 0 var(--space-7);
  padding: var(--space-5) 0;
  border-top: 1px solid var(--rc-line);
  border-bottom: 1px solid var(--rc-line);
  background: var(--rc-paper);
}

.square-coals-range .rc-trust-strip__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  margin: 0;
  padding: 0;
  list-style: none;
}

.square-coals-range .rc-trust-strip__title {
  display: block;
  color: var(--rc-ink);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.square-coals-range .rc-trust-strip__text {
  display: block;
  margin-top: 0.25rem;
  color: var(--rc-muted);
  font-size: 0.92rem;
}

.square-coals-range .rc-trust-strip__text a {
  color: inherit;
}

.square-coals-range__seo {
  max-width: 46rem;
  margin: 0 0 var(--space-6);
}

.square-coals-range__seo h2 {
  margin: 0 0 var(--space-3);
  color: var(--rc-ink);
  font-size: var(--step-1);
}

.square-coals-range__seo p {
  margin: 0 0 0.85rem;
  color: var(--rc-muted);
  line-height: 1.55;
}

.square-coals-range__back {
  margin: 0;
}

@media (min-width: 48rem) {
  .square-coals-range__fold {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    gap: var(--space-7);
  }

  .square-coals-range .rc-trust-strip__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 48rem) {
  .gas-coals-hero {
    padding-block: var(--space-6);
  }

  .gas-coals-hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
    gap: var(--space-6);
  }

  .gas-coals-hero__media {
    max-width: none;
    justify-self: stretch;
  }

  .gas-coals-choose__cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.collection-page--gas-fire-coals .gas-coals-hero--compact {
  padding-block: var(--space-4);
}

.collection-page--gas-fire-coals .gas-coals-hero--compact .gas-coals-hero__grid {
  display: block;
  max-width: 46rem;
}

.collection-page--gas-fire-coals .gas-coals-hero--compact .gas-coals-hero__copy h1 {
  margin-bottom: var(--space-2);
}

.collection-page--gas-fire-coals .gas-coals-hero--compact .gas-coals-hero__copy p {
  margin-bottom: var(--space-2);
}

.collection-page--gas-fire-coals .gas-coals-hero--compact .gas-hero-help {
  margin-top: 0;
}

.collection-page--gas-fire-coals .gas-coals-hero--compact .gas-coals-hero__compat {
  margin-top: 0;
}

.collection-page--gas-fire-coals .gas-coals-choose {
  margin-block-start: var(--space-4);
}

.collection-page--gas-fire-coals .gas-coals-choose__intro {
  margin-bottom: var(--space-3);
}

.collection-page--gas-fire-coals .gas-coals-choose__intro h2 {
  margin-bottom: var(--space-2);
}

.collection-page--gas-fire-coals .verm-trust-strip {
  margin-block-start: var(--space-6);
}

@media (min-width: 48rem) {
  .collection-page--gas-fire-coals .gas-coals-hero--compact {
    padding-block: var(--space-5);
  }

  .collection-page--gas-fire-coals .gas-coals-hero--compact .gas-coals-hero__grid {
    grid-template-columns: minmax(0, 1fr);
    max-width: 46rem;
  }
}

.collection-hero--gas-fire.collection-hero--has-media {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  aspect-ratio: auto;
  height: min(30rem, 62vw);
  max-height: min(30rem, 62vw);
}

.collection-hero--gas-fire.collection-hero--has-media .collection-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 55%;
}

.collection-hero--gas-fire .collection-hero__scrim {
  width: min(100%, 44rem);
  height: min(92%, 18rem);
  background: linear-gradient(
    105deg,
    rgba(12, 10, 8, 0.9) 0%,
    rgba(12, 10, 8, 0.72) 36%,
    rgba(12, 10, 8, 0.28) 68%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--gas-fire .collection-hero__content {
  max-width: 38rem;
  padding: var(--space-4) var(--space-5);
  background: linear-gradient(
    to right,
    rgba(12, 10, 8, 0.84) 0%,
    rgba(12, 10, 8, 0.58) 55%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--gas-fire h1,
.collection-hero--gas-fire .collection-hero__tagline {
  color: #fff;
  text-shadow:
    0 1px 2px rgba(0, 0, 0, 0.85),
    0 2px 12px rgba(0, 0, 0, 0.55);
}

.collection-hero--gas-fire .collection-hero__tagline--lead {
  font-size: var(--step-1);
  font-weight: var(--font-weight-heading);
  line-height: 1.3;
}

.gas-hero-help {
  margin: var(--space-3) 0 0;
  font-size: var(--step--1);
  color: color-mix(in srgb, #f4efe6 88%, transparent);
}

.gas-hero-choose {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.16em;
}

.gas-fire-products .verm-products__intro p {
  margin: var(--space-2) 0 0;
  max-width: 40rem;
  color: color-mix(in srgb, var(--color-foreground) 78%, transparent);
}

.gas-fire-need {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
  margin: 0 0 var(--space-6);
}

.gas-fire-products__bestsellers {
  margin: 0 0 var(--space-4);
}

.gas-fire-products__all {
  margin: var(--space-6) 0 0;
  text-align: center;
}

.gas-fire-need__card {
  display: grid;
  gap: 0.35rem;
  padding: var(--space-4);
  border-radius: 0.5rem;
  text-decoration: none;
  color: inherit;
  background: color-mix(in srgb, var(--verm-cream) 70%, #fff);
  border: 1px solid color-mix(in srgb, var(--verm-charcoal) 12%, transparent);
  box-shadow: 0 1px 2px rgba(28, 34, 28, 0.06);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.gas-fire-need__card:hover,
.gas-fire-need__card:focus-visible {
  border-color: color-mix(in srgb, var(--verm-orange) 55%, transparent);
  box-shadow: 0 4px 14px rgba(28, 34, 28, 0.1);
}

.gas-fire-need__label {
  font-size: var(--step--1);
  font-weight: var(--font-weight-heading);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--verm-charcoal);
}

.gas-fire-need__text {
  font-size: var(--step--1);
  line-height: 1.45;
  color: color-mix(in srgb, var(--color-foreground) 72%, transparent);
}

.gas-fire-need__cta {
  margin-top: 0.35rem;
  font-size: var(--step--1);
  font-weight: 600;
  color: var(--verm-orange);
}

.collection-page--gas-fire .product-grid--gas-fire {
  gap: var(--space-5);
}

.collection-page--gas-fire .product-grid--gas-fire .card--product {
  height: 100%;
  border-color: color-mix(in srgb, var(--verm-charcoal) 12%, transparent);
  box-shadow: 0 1px 3px rgba(28, 34, 28, 0.06);
}

.collection-page--gas-fire .product-grid--gas-fire .card__media {
  aspect-ratio: 1 / 1;
  background: #fff;
}

.collection-page--gas-fire .product-grid--gas-fire .card__media img {
  object-fit: contain;
  padding: 0.75rem;
}

.collection-page--gas-fire .product-grid--gas-fire .card__eyebrow {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--verm-orange);
}

.collection-page--gas-fire .product-grid--gas-fire .card__title {
  font-size: var(--step-0);
}

.collection-page--gas-fire .product-grid--gas-fire .card__title-line2 {
  display: block;
  margin-top: 0.15rem;
  font-size: var(--step--1);
  font-weight: 600;
  color: color-mix(in srgb, var(--color-foreground) 70%, transparent);
}

.collection-page--gas-fire .product-grid--gas-fire .card__type,
.collection-page--gas-fire .product-grid--gas-fire .card__variant {
  display: none;
}

.collection-page--gas-fire .product-grid--gas-fire .card__flavour-cta a {
  font-weight: 600;
  color: var(--verm-orange);
  text-decoration: none;
}

.collection-page--gas-fire .product-grid--gas-fire .card__flavour-cta a:hover,
.collection-page--gas-fire .product-grid--gas-fire .card__flavour-cta a:focus-visible {
  text-decoration: underline;
}

.gas-fire-help {
  margin-block-start: var(--space-6);
}

.gas-fire-help__intro {
  margin: 0 0 var(--space-4);
  max-width: 46rem;
}

.gas-fire-help__intro h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--step-1);
}

.gas-fire-help__intro p {
  margin: 0 0 var(--space-3);
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--color-foreground) 78%, transparent);
}

.gas-fire-help__intro p:last-child {
  margin-bottom: 0;
}

.gas-fire-help__cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
}

.gas-fire-help__card {
  display: grid;
  align-content: start;
  gap: 0.4rem;
  padding: var(--space-4);
  border-radius: 0.5rem;
  background: color-mix(in srgb, var(--verm-cream) 70%, #fff);
  border: 1px solid color-mix(in srgb, var(--verm-charcoal) 12%, transparent);
  box-shadow: 0 1px 2px rgba(28, 34, 28, 0.06);
}

.gas-fire-help__card h3 {
  margin: 0;
  font-size: var(--step-0);
}

.gas-fire-help__card p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.45;
  color: color-mix(in srgb, var(--color-foreground) 72%, transparent);
}

.gas-fire-help__cta {
  margin-top: 0.2rem;
  font-size: var(--step--1);
  font-weight: 600;
  color: var(--verm-orange);
  text-decoration: none;
}

.gas-fire-help__cta:hover,
.gas-fire-help__cta:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.16em;
}

.gas-fire-help__ask {
  margin: var(--space-4) 0 0;
  padding: var(--space-4);
  border-radius: 0.5rem;
  background: color-mix(in srgb, var(--verm-charcoal) 88%, #1c221c);
  color: #fff;
  text-align: center;
}

.gas-fire-help__ask h3 {
  margin: 0 0 var(--space-2);
  font-size: var(--step-1);
  color: inherit;
}

.gas-fire-help__ask p {
  margin: 0 auto var(--space-3);
  max-width: 40rem;
  font-size: var(--step--1);
  line-height: 1.45;
  color: color-mix(in srgb, #fff 86%, transparent);
}

.gas-fire-help__ask .button--primary {
  margin-bottom: var(--space-3);
  color: var(--verm-charcoal);
  background: #fff;
  border-color: #fff;
}

.gas-fire-help__ask .button--primary:hover,
.gas-fire-help__ask .button--primary:focus-visible {
  color: #fff;
  background: var(--verm-orange);
  border-color: var(--verm-orange);
}

.gas-fire-help__note {
  margin: 0 auto !important;
  max-width: 36rem;
  font-size: 0.78rem !important;
  line-height: 1.4;
  color: color-mix(in srgb, #fff 68%, transparent) !important;
}

.gas-fire-made {
  margin-block-start: var(--space-6);
  padding: var(--space-5) var(--space-4);
  border-radius: 0.5rem;
  background: color-mix(in srgb, var(--verm-cream) 55%, #fff);
  border: 1px solid color-mix(in srgb, var(--verm-charcoal) 10%, transparent);
}

.gas-fire-made__split {
  display: grid;
  gap: var(--space-4);
}

.gas-fire-made__photos {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 0.65rem;
  min-height: 0;
}

.gas-fire-made__photo {
  margin: 0;
  overflow: hidden;
  border-radius: 0.4rem;
  background: #1c221c;
}

.gas-fire-made__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gas-fire-made__photo--main {
  min-height: 14rem;
}

.gas-fire-made__photo--secondary {
  min-height: 14rem;
}

.gas-fire-made__eyebrow {
  margin: 0 0 var(--space-2);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--verm-orange);
}

.gas-fire-made__copy h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--step-1);
}

.gas-fire-made__copy p {
  margin: 0 0 var(--space-3);
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--color-foreground) 80%, transparent);
}

.gas-fire-made__copy .button {
  margin-top: var(--space-1);
}

.gas-fire-made__proofs {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
  margin: var(--space-4) 0 0;
  padding: 0;
  list-style: none;
}

.gas-fire-made__proofs li {
  padding: 0;
}

.gas-fire-made__proof-title {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--verm-charcoal);
}

.gas-fire-made__proof-text {
  display: block;
  margin-top: 0.25rem;
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--color-foreground) 72%, transparent);
}

.gas-fire-got {
  display: grid;
  gap: var(--space-4);
  margin-block-start: var(--space-6);
}

.gas-fire-got__eyebrow {
  margin: 0 0 var(--space-2);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--verm-orange);
}

.gas-fire-got__copy h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--step-1);
}

.gas-fire-got__copy p {
  margin: 0 0 var(--space-3);
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--color-foreground) 80%, transparent);
}

.gas-fire-got__copy p:last-child {
  margin-bottom: 0;
}

.gas-fire-got__photo {
  margin: 0;
  overflow: hidden;
  border-radius: 0.4rem;
  background: #1c221c;
}

.gas-fire-got__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gas-fire-got__photo--main {
  min-height: 16rem;
  max-height: 22rem;
}

.gas-fire-got__photo--secondary {
  min-height: 12rem;
  max-height: 16rem;
}

.gas-fire-got__feature {
  margin: 0;
  padding: var(--space-4) 0 var(--space-4) var(--space-4);
  border-left: 3px solid var(--verm-orange);
  font-size: var(--step-1);
  font-weight: var(--font-weight-heading);
  line-height: 1.3;
  color: var(--verm-charcoal);
}

.gas-fire-got__end {
  display: grid;
  justify-items: start;
  gap: var(--space-3);
}

.gas-fire-got__trust {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--color-foreground) 78%, transparent);
}

.gas-fire-got__story {
  font-size: var(--step--1);
  font-weight: 600;
  color: var(--verm-orange);
  text-decoration: none;
}

.gas-fire-got__story:hover,
.gas-fire-got__story:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.16em;
}

@media (min-width: 48rem) {
  .gas-fire-need,
  .gas-fire-help__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gas-coals-choose__cards.gas-fire-need {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .collection-page--gas-fire .product-grid--gas-fire {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .collection-page--gas-fire .product-grid--gas-fire-bestsellers {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .gas-fire-made {
    padding: var(--space-5);
  }

  .gas-fire-made__split {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    align-items: center;
    gap: var(--space-5);
  }

  .gas-fire-made__photos {
    min-height: 22rem;
    max-height: 26rem;
  }

  .gas-fire-made__proofs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-4);
    margin-top: var(--space-5);
  }

  .gas-fire-got {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    grid-template-areas:
      'main copy'
      'main feature'
      'main secondary'
      'main end';
    align-items: start;
    gap: var(--space-4) var(--space-5);
  }

  .gas-fire-got__copy {
    grid-area: copy;
  }

  .gas-fire-got__photo--main {
    grid-area: main;
    min-height: 100%;
    max-height: none;
    align-self: stretch;
  }

  .gas-fire-got__feature {
    grid-area: feature;
  }

  .gas-fire-got__photo--secondary {
    grid-area: secondary;
    min-height: 11rem;
    max-height: 13rem;
  }

  .gas-fire-got__end {
    grid-area: end;
  }
}

.gas-fire-close {
  margin-block-start: var(--space-6);
}

.gas-fire-close > h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--step-1);
}

.gas-fire-close .faq-list {
  border: 0;
}

.gas-fire-close .faq-list details {
  border: 1px solid var(--colour-border);
  border-radius: 0.55rem;
  background: #fff;
  padding: 0 0.85rem;
}

.gas-fire-close .faq-list details + details {
  margin-top: 0.45rem;
}

.gas-fire-close .faq-list summary {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  min-height: 2.75rem;
  padding-block: 0.7rem;
  list-style: none;
  font-size: var(--step--1);
}

.gas-fire-close .faq-list summary::-webkit-details-marker {
  display: none;
}

.gas-fire-close .faq-list summary::after {
  content: '+';
  flex: 0 0 auto;
  color: var(--verm-orange);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
}

.gas-fire-close .faq-list details[open] summary::after {
  content: '–';
}

.gas-fire-close .faq-list__answer {
  width: 100%;
  max-width: 46rem;
  padding-block-end: 0.85rem;
  font-size: var(--step--1);
  line-height: 1.5;
}

.gas-fire-close .faq-list__answer p {
  margin: 0 0 0.65rem;
}

.gas-fire-close .faq-list__answer p:last-child {
  margin-bottom: 0;
}

.gas-fire-close__notice {
  margin-block-start: var(--space-5);
  padding: var(--space-4);
}

.gas-fire-close__notice h3 {
  margin: 0 0 var(--space-2);
  font-family: var(--font-heading);
  font-size: var(--step-0);
  font-weight: var(--font-weight-heading);
}

.gas-fire-close__notice p {
  margin: 0 0 0.55rem;
  font-size: var(--step--1);
  line-height: 1.5;
}

.gas-fire-close__notice p:last-child {
  margin-bottom: 0;
}

.gas-fire-close__seo {
  margin-block-start: var(--space-5);
  max-width: 46rem;
}

.collection-page--gas-pebbles {
  overflow-x: clip;
}

.collection-page--gas-pebbles .gas-coals-hero--pebbles {
  padding-block: var(--space-3) 0.35rem;
}

.collection-page--gas-pebbles .gas-coals-hero--pebbles .gas-coals-hero__copy h1 {
  margin-bottom: 0.45rem;
}

.collection-page--gas-pebbles .gas-coals-hero--pebbles .gas-coals-hero__copy p {
  margin-bottom: 0.45rem;
}

.collection-page--gas-pebbles .gas-coals-hero--pebbles .gas-hero-help {
  margin-top: 0.2rem;
}

.collection-page--gas-pebbles .gas-coals-hero--pebbles.gas-coals-hero--compact .gas-coals-hero__grid {
  display: block;
  max-width: 46rem;
}

.collection-page--gas-pebbles .gas-coals-hero--pebbles.gas-coals-hero--compact .gas-coals-hero__compat {
  margin-top: 0;
}

@media (min-width: 48rem) {
  .collection-page--gas-pebbles .gas-coals-hero--pebbles {
    padding-block: var(--space-4) 0.35rem;
  }

  .collection-page--gas-pebbles .gas-coals-hero--pebbles.gas-coals-hero--compact .gas-coals-hero__grid {
    grid-template-columns: minmax(0, 1fr);
    max-width: 46rem;
  }
}

.gas-pebbles-jumps {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.65rem;
  margin: 0.35rem auto var(--space-3);
}

.gas-pebbles-jumps__card {
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.9rem;
  border: 1px solid #c9bfb0;
  background: #fff;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.gas-pebbles-jumps__card strong {
  font-size: 0.95rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.gas-pebbles-jumps__card span {
  color: color-mix(in srgb, var(--color-foreground) 68%, transparent);
  font-size: 0.88rem;
}

.gas-pebbles-jumps__card:hover,
.gas-pebbles-jumps__card:focus-visible {
  border-color: #1c1c1a;
  background: #f6f1e8;
}

.collection-page--gas-pebbles .gas-pebbles-guide {
  margin-block-start: var(--space-6);
}

.collection-page--gas-pebbles .gas-pebbles-guide .gas-coals-choose__intro {
  margin-bottom: var(--space-3);
}

.collection-page--gas-pebbles .gas-pebbles-buy {
  margin-block-start: var(--space-3);
}

.collection-page--gas-pebbles .collection-toolbar,
.collection-page--gas-pebbles .product-grid,
.collection-page--gas-pebbles .pagination {
  display: none;
}

.gas-pebbles-buy {
  margin-block: var(--space-4) var(--space-6);
}

.gas-pebbles-buy__groups {
  display: grid;
  gap: var(--space-5);
}

.gas-pebbles-size {
  --rc-ink: #1c1c1a;
  --rc-muted: #5c574f;
  --rc-line: #ddd4c6;
  scroll-margin-top: 5.5rem;
  padding: var(--space-4);
  border: 1px solid color-mix(in srgb, var(--color-foreground) 12%, transparent);
  background: #fff;
}

.gas-pebbles-size [hidden] {
  display: none !important;
}

.gas-pebbles-size__intro h3 {
  margin: 0 0 0.35rem;
}

.gas-pebbles-size__intro p {
  margin: 0;
  color: color-mix(in srgb, var(--color-foreground) 72%, transparent);
}

.gas-pebbles-size__price {
  margin-top: 0.45rem !important;
  color: var(--color-foreground) !important;
  font-size: 1.35rem;
  font-weight: 700;
}

.gas-pebbles-size__layout {
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-3);
}

@media (min-width: 48rem) {
  .gas-pebbles-size__layout {
    grid-template-columns: minmax(0, 16.5rem) minmax(0, 1fr);
    align-items: start;
  }
}

.gas-pebbles-size__media {
  margin: 0;
  min-height: 0;
  width: 100%;
  max-width: 18rem;
  background: #fff;
}

.gas-pebbles-size__media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  background: #fff;
}

.gas-pebbles-size__dim {
  margin-top: 0.55rem;
  max-height: 11rem;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}

.gas-pebbles-size__media img[hidden],
.gas-pebbles-size__media img:not([src]) {
  display: none;
}

.gas-pebbles-size__label {
  margin: 0 0 0.55rem;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gas-pebbles-size__colours {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(6.4rem, 1fr));
  gap: 0.55rem;
  margin-bottom: var(--space-4);
}

.gas-pebbles-size__colour {
  display: grid;
  gap: 0.35rem;
  padding: 0.45rem;
  border: 1px solid color-mix(in srgb, var(--color-foreground) 14%, transparent);
  background: #fff;
  color: inherit;
  text-align: center;
  cursor: pointer;
}

.gas-pebbles-size__colour img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.gas-pebbles-size__colour span {
  font-size: 0.82rem;
  font-weight: 600;
}

.gas-pebbles-size__colour[aria-pressed='true'] {
  border-color: var(--rc-ink);
  box-shadow: inset 0 0 0 1px var(--rc-ink);
}

.gas-pebbles-size__packs {
  margin-bottom: 0.85rem;
}

.gas-pebbles-size__pack-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
  margin-bottom: 0;
}

.gas-pebbles-size__pack {
  display: grid;
  gap: 0.2rem;
  min-height: 0;
  padding: 0.7rem 0.75rem;
  border: 1px solid var(--rc-line);
  background: #fff;
  color: var(--rc-ink);
  text-align: left;
  cursor: pointer;
}

.gas-pebbles-size__pack-qty {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gas-pebbles-size__pack-price {
  color: var(--rc-muted);
  font-size: 0.92rem;
}

.gas-pebbles-size__pack:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.gas-pebbles-size__pack[aria-pressed='true'] {
  border-color: var(--rc-ink);
  box-shadow: inset 0 0 0 1px var(--rc-ink);
}

.gas-pebbles-size__add {
  width: 100%;
  margin-top: 0.15rem;
}

.gas-pebbles-size__status {
  margin: 0.5rem 0 0;
  min-height: 1.2em;
}

.collection-page--gas-pebbles .gas-pebbles-close .gas-fire-close__seo {
  margin-block-start: var(--space-7);
}

.collection-page--gas-pebbles .gas-pebbles-close > h2 {
  margin-block-start: var(--space-6);
}

.collection-page--artificial-logs {
  overflow-x: clip;
  padding-block-start: 0;
}

.section.collection-page--artificial-logs {
  padding-block-start: 0;
}

.collection-page--artificial-logs > .page-width.flow {
  --flow-space: 1.5rem;
}

.art-logs-kicker {
  margin: 0 0 0.55rem;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #c45c26;
}

.art-logs-kicker--light {
  color: #e4b48a;
}

.art-logs-hero {
  background: #171c17;
  color: #f4efe6;
  padding: 1.15rem 0 1.35rem;
}

.art-logs-hero__grid {
  display: grid;
  gap: 1.5rem;
  align-items: start;
}

.art-logs-hero__copy h1 {
  margin: 0 0 0.75rem;
  max-width: 16ch;
  color: #fff;
  font-size: clamp(2rem, 4.4vw, 3.35rem);
  line-height: 0.95;
  letter-spacing: -0.03em;
  text-transform: uppercase;
}

.art-logs-hero__lead {
  margin: 0 0 1.15rem;
  max-width: 36rem;
  color: color-mix(in srgb, #f4efe6 86%, transparent);
  font-size: 1.05rem;
  line-height: 1.45;
}

.art-logs-hero__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-bottom: 1.25rem;
}

.art-logs-hero .button--secondary {
  background: transparent;
  color: #f4efe6;
  border-color: #f4efe6;
}

.art-logs-hero .button--secondary:hover,
.art-logs-hero .button--secondary:focus-visible {
  background: #f4efe6;
  color: #171c17;
}

.art-logs-credit {
  max-width: 36rem;
  padding: 1.25rem 0 0;
  border-top: 1px solid color-mix(in srgb, #f4efe6 28%, transparent);
}

.art-logs-credit__kicker {
  margin: 0 0 0.5rem;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #f3c89a;
}

.art-logs-credit__line {
  margin: 0 0 0.45rem;
  color: #fff;
  font-size: 1.14rem;
  line-height: 1.35;
}

.art-logs-credit__line em {
  font-style: italic;
  font-weight: 800;
  font-size: 1.22em;
}

.art-logs-credit__note {
  margin: 0;
  color: color-mix(in srgb, #f4efe6 72%, transparent);
  font-size: 0.95rem;
}

.art-logs-hero__media {
  margin: 0;
  overflow: hidden;
  min-height: 22rem;
  background: #111511;
}

.art-logs-hero__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 22rem;
  object-fit: cover;
  object-position: center;
  transform: scale(1.08);
}

@media (min-width: 48rem) {
  .section.collection-page--artificial-logs {
    padding-block-start: 0;
  }

  .art-logs-hero {
    padding: 1.25rem 0 1.5rem;
  }

  .art-logs-hero__grid {
    grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
    gap: 1.1rem;
    align-items: stretch;
  }

  .art-logs-hero__media,
  .art-logs-hero__media img {
    min-height: 100%;
  }

  .art-logs-hero__media img {
    transform: scale(1.12);
  }
}

.art-logs-trust {
  margin: 0;
  padding: 1.15rem 1rem;
  background: #1c221c;
  color: #f4efe6;
}

.art-logs-trust__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.85rem 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.art-logs-trust__grid li {
  display: grid;
  gap: 0.4rem;
}

.art-logs-trust__icon {
  display: inline-flex;
  color: #e4b48a;
}

.art-logs-trust__grid strong {
  font-size: 0.92rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  line-height: 1.25;
  text-transform: uppercase;
}

@media (min-width: 48rem) {
  .art-logs-trust {
    padding: 1.25rem 1.35rem;
  }

  .art-logs-trust__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
  }

  .art-logs-trust__grid strong {
    font-size: 1rem;
  }
}

.art-logs-manifesto {
  padding: 0.25rem 0 2.75rem;
  margin-bottom: 0;
  max-width: 46rem;
  border-bottom: none;
}

.art-logs-manifesto h2 {
  margin: 0 0 0.85rem;
  font-size: clamp(1.7rem, 3.2vw, 2.55rem);
  line-height: 1.05;
  letter-spacing: -0.025em;
  text-transform: uppercase;
}

.art-logs-manifesto p {
  margin: 0 0 0.7rem;
  font-size: 1.05rem;
  line-height: 1.5;
}

.art-logs-manifesto__detail {
  font-weight: 700;
  letter-spacing: 0.02em;
}

.art-logs-manifesto__close {
  margin: 1rem 0 1rem;
  font-size: clamp(1.35rem, 2.4vw, 1.85rem);
  font-weight: 750;
  line-height: 1.15;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}

.art-logs-shop {
  margin: 0;
  padding-top: 0.85rem;
}

.art-logs-shop h2 {
  margin: 0 0 0.35rem;
  font-size: clamp(1.55rem, 2.6vw, 2.1rem);
  letter-spacing: -0.02em;
  text-transform: uppercase;
}

.art-logs-shop p {
  margin: 0;
  max-width: 38rem;
  color: color-mix(in srgb, var(--color-foreground) 72%, transparent);
}

.collection-page--artificial-logs .collection-toolbar--compact {
  margin: 0;
  padding: 0.6rem 0.75rem;
  border: 1px solid #e4e0d8;
  background: #fff;
}

.collection-page--artificial-logs .collection-results-count {
  margin: 0;
  font-size: 0.86rem;
  font-weight: 600;
  color: color-mix(in srgb, var(--color-foreground) 62%, transparent);
}

.collection-page--artificial-logs .product-grid--art-logs {
  gap: 0.95rem;
  align-items: stretch;
}

.collection-page--artificial-logs .product-grid--art-logs .card--product {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  padding: 0 0 0.9rem;
  border: 1px solid #dcd7cf;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
  transition: border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.collection-page--artificial-logs .product-grid--art-logs .card--product:hover,
.collection-page--artificial-logs .product-grid--art-logs .card--product:focus-within {
  border-color: #171c17;
  box-shadow: 0 16px 30px rgba(23, 28, 23, 0.16);
  transform: translateY(-4px);
}

.collection-page--artificial-logs .product-grid--art-logs .card__media {
  margin: 0;
  aspect-ratio: 1 / 1;
  background: #fff;
}

.collection-page--artificial-logs .product-grid--art-logs .card__media img {
  object-fit: contain;
  padding: 0.3rem;
}

.collection-page--artificial-logs .product-grid--art-logs .card__content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 0.4rem;
  padding: 0.7rem 0.85rem 0;
}

.collection-page--artificial-logs .product-grid--art-logs .card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  min-height: 3.75em;
  font-size: 1.02rem;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

.collection-page--artificial-logs .product-grid--art-logs .card__type,
.collection-page--artificial-logs .product-grid--art-logs .card__variant {
  display: none;
}

.collection-page--artificial-logs .product-grid--art-logs .card__meta {
  font-size: 1.28rem;
  font-weight: 750;
}

.collection-page--artificial-logs .product-grid--art-logs .card__availability {
  order: 8;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--color-foreground) 55%, transparent);
}

.collection-page--artificial-logs .product-grid--art-logs .card__flavour-cta {
  margin-top: auto;
}

.collection-page--artificial-logs .product-grid--art-logs .card__flavour-cta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 2.75rem;
  padding: 0.5rem 0.8rem;
  border: 1px solid #171c17;
  background: #171c17;
  color: #f4efe6;
  font-size: 0.8rem;
  font-weight: 750;
  letter-spacing: 0.1em;
  text-decoration: none;
  text-transform: uppercase;
}

.collection-page--artificial-logs .product-grid--art-logs .card__flavour-cta a:hover,
.collection-page--artificial-logs .product-grid--art-logs .card__flavour-cta a:focus-visible {
  background: #c45c26;
  border-color: #c45c26;
  color: #fff;
}

.art-logs-looks {
  grid-column: 1 / -1;
  padding: 0.55rem 0 0.25rem;
}

.art-logs-looks__intro h2,
.art-logs-guide__intro h2,
.art-logs-faq > h2 {
  margin: 0 0 0.4rem;
  font-size: clamp(1.45rem, 2.5vw, 2rem);
  letter-spacing: -0.02em;
  text-transform: uppercase;
}

.art-logs-looks__intro p {
  margin: 0 0 1rem;
  color: color-mix(in srgb, var(--color-foreground) 70%, transparent);
}

.art-logs-looks__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.85rem;
}

.art-logs-looks__card {
  display: grid;
  grid-template-rows: 1fr auto;
  color: inherit;
  text-decoration: none;
  background: #fff;
  border: 1px solid #d4cfc6;
  overflow: hidden;
  cursor: pointer;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.art-logs-looks__card:hover,
.art-logs-looks__card:focus-visible {
  border-color: #171c17;
  box-shadow: 0 14px 26px rgba(23, 28, 23, 0.14);
  transform: translateY(-4px);
}

.art-logs-looks__media {
  display: block;
  min-height: 9rem;
  aspect-ratio: 1;
  background: #fff;
  overflow: hidden;
}

.art-logs-looks__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 0.25rem;
  transition: transform 0.28s ease;
}

.art-logs-looks__card:hover img,
.art-logs-looks__card:focus-visible img {
  transform: scale(1.07);
}

.art-logs-looks__card strong {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.4rem;
  padding: 0.8rem 0.85rem 0.9rem;
  font-size: 0.92rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.art-logs-looks__go {
  color: #c45c26;
  font-size: 1.05em;
}

.art-logs-guide {
  margin-top: 0.5rem;
}

.art-logs-guide__grid {
  display: grid;
  gap: 0.75rem;
}

.art-logs-guide__grid article {
  padding: 1.1rem 1rem;
  border: 1px solid #d8d0c4;
  background: #faf8f5;
}

.art-logs-guide__grid h3 {
  margin: 0 0 0.4rem;
  font-size: 1.05rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.art-logs-guide__grid p,
.art-logs-guide__cta p {
  margin: 0;
  color: color-mix(in srgb, var(--color-foreground) 72%, transparent);
  line-height: 1.45;
}

.art-logs-guide__cta {
  display: grid;
  gap: 0.65rem;
  justify-items: start;
  margin-top: 1rem;
}

.art-logs-editorial {
  width: 100vw;
  margin: 0.5rem 0 0.25rem calc(50% - 50vw);
  padding: 2rem 1.15rem;
  background: #171c17;
  color: #f4efe6;
}

.art-logs-editorial__inner {
  max-width: 40rem;
}

.art-logs-editorial h2 {
  margin: 0 0 0.85rem;
  color: #fff;
  font-size: clamp(1.8rem, 3.4vw, 2.7rem);
  line-height: 1.02;
  letter-spacing: -0.03em;
  text-transform: uppercase;
}

.art-logs-editorial p {
  margin: 0 0 0.75rem;
  font-size: 1.05rem;
  line-height: 1.5;
  color: color-mix(in srgb, #f4efe6 86%, transparent);
}

.art-logs-editorial__close {
  margin: 1.1rem 0 1.1rem;
  color: #fff;
  font-size: clamp(1.4rem, 2.6vw, 1.95rem);
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.art-logs-editorial__btn {
  background: transparent;
  color: #f4efe6;
  border-color: #f4efe6;
}

.art-logs-break {
  padding: 1.5rem 0 0.25rem;
  max-width: 40rem;
}

.art-logs-break h2 {
  margin: 0 0 0.7rem;
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  line-height: 1.05;
  letter-spacing: -0.025em;
  text-transform: uppercase;
}

.art-logs-break p {
  margin: 0 0 1rem;
  font-size: 1.05rem;
  line-height: 1.5;
}

.art-logs-related__grid {
  display: grid;
  gap: 0.85rem;
}

.art-logs-related__card {
  display: grid;
  overflow: hidden;
  border: 1px solid #d8d0c4;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: border-color 0.18s ease, transform 0.18s ease;
}

.art-logs-related__card:hover,
.art-logs-related__card:focus-visible {
  border-color: #1c1c1a;
  transform: translateY(-2px);
}

.art-logs-related__media {
  display: block;
  aspect-ratio: 16 / 10;
  background: #f4f1ea;
}

.art-logs-related__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.art-logs-related__body {
  display: grid;
  gap: 0.25rem;
  padding: 1rem 1.05rem 1.1rem;
}

.art-logs-related__body strong {
  font-size: 1.05rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.art-logs-related__cta {
  margin-top: 0.35rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #c45c26;
}

.art-logs-faq .faq-list details {
  border: 1px solid #d8d0c4;
  background: #fff;
}

.art-logs-faq .faq-list details + details {
  margin-top: 0.5rem;
}

.art-logs-faq summary {
  font-weight: 700;
}

.art-logs-faq__close {
  margin-top: 1.25rem;
  padding: 1.15rem 1.1rem;
  background: #f7f3ec;
  border: 1px solid #d8d0c4;
}

.art-logs-faq__close h3 {
  margin: 0 0 0.35rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.art-logs-faq__close p {
  margin: 0 0 0.85rem;
}

.art-logs-seo {
  max-width: 46rem;
  color: color-mix(in srgb, var(--color-foreground) 72%, transparent);
  font-size: 0.92rem;
  line-height: 1.5;
}

.art-logs-seo h2 {
  margin: 0 0 0.55rem;
  font-size: 1.05rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

@media (max-width: 47.99rem) {
  .collection-page--artificial-logs .product-grid--art-logs {
    grid-template-columns: 1fr 1fr;
  }

  .collection-page--artificial-logs .product-grid--art-logs .card__title {
    font-size: 0.92rem;
  }

  .collection-page--artificial-logs .product-grid--art-logs .card__flavour-cta a {
    width: 100%;
  }
}

@media (min-width: 48rem) {
  .art-logs-looks__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .art-logs-guide__grid,
  .art-logs-related__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .art-logs-related__grid {
    grid-template-columns: 1fr 1fr;
  }

  .art-logs-editorial {
    padding: 3rem 2rem;
  }
}

@media (min-width: 64rem) {
  .art-logs-looks__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .collection-page--artificial-logs .product-grid--art-logs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.gas-fire-close__seo h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--step-1);
}

.gas-fire-close__seo p {
  margin: 0 0 0.75rem;
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--color-foreground) 80%, transparent);
}

.gas-fire-close__seo p:last-child {
  margin-bottom: 0;
}

@media (min-width: 64rem) {
  .collection-page--gas-fire .product-grid--gas-fire {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .collection-hero--gas-fire.collection-hero--has-media {
    height: min(28rem, 96vw);
    max-height: min(28rem, 96vw);
  }

  .collection-hero--gas-fire.collection-hero--has-media .collection-hero__media img {
    object-position: center 45%;
  }

  .collection-hero--gas-fire .collection-hero__content {
    max-width: 100%;
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.86) 0%,
      rgba(12, 10, 8, 0.5) 72%,
      rgba(12, 10, 8, 0) 100%
    );
  }

  .collection-hero--gas-fire .collection-hero__scrim {
    width: 100%;
    height: 70%;
  }
}

.collection-hero__tagline {
  margin: 0;
  font-size: clamp(0.98rem, 1.8vw, 1.15rem);
  line-height: 1.45;
}

.home-category-list {
  display: grid;
  padding: 0;
  margin: 0;
  gap: var(--space-4);
  list-style: none;
  grid-template-columns: 1fr;
}

.home-category-list__item {
  min-width: 0;
}

.home-category-list .card {
  height: 100%;
}

.home-category-list__item--priority .card {
  border-color: var(--colour-brand);
}

.home-category-list--seasonal .home-category-list__item--seasonal {
  order: 0;
}

.home-category-list--seasonal .home-category-list__item--seasonal .card {
  border-color: var(--colour-brand);
  border-width: calc(var(--border-width) + 1px);
}

.home-categories__help a {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
}

.home-identify {
  background: var(--colour-surface);
}

.home-identify__layout,
.home-guides__layout {
  display: grid;
  gap: var(--space-7);
}

.home-identify__honesty {
  margin: 0;
  padding: var(--space-4);
  background: var(--colour-background);
  border-inline-start: 4px solid var(--colour-information);
}

.home-identify__evidence {
  display: grid;
  gap: var(--space-3);
  padding: 0;
  margin: 0;
  list-style: none;
}

.home-identify__evidence li {
  position: relative;
  padding-inline-start: var(--space-5);
}

.home-identify__evidence li::before {
  position: absolute;
  inset-inline-start: 0;
  content: '';
  width: 0.55rem;
  height: 0.55rem;
  margin-block-start: 0.45rem;
  background: var(--colour-brand);
  border-radius: 50%;
}

.home-identify__aside {
  min-width: 0;
}

.home-identify__media {
  margin: 0;
}

.home-identify__media img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.home-why-choose__layout {
  display: grid;
  gap: var(--space-7);
}

.home-why-choose__media {
  margin: 0;
  min-width: 0;
  /* Wide Facebook cover (~1024×426): keep full frame visible — no cover crop */
  aspect-ratio: 1024 / 426;
}

.home-why-choose__media img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: contain;
  object-position: center;
}

.home-guides__media {
  margin: 0;
  min-width: 0;
}

.home-guides__media img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.process__steps--compact {
  grid-template-columns: 1fr;
}

.feature-list {
  display: grid;
  padding: 0;
  margin: 0;
  gap: var(--space-5);
  list-style: none;
}

.feature-list__item h3,
.feature-list__item p {
  margin-block-end: var(--space-2);
}

.guide-link-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.guide-link-list a {
  display: flex;
  min-height: var(--touch-target);
  align-items: center;
  padding-block: var(--space-2);
  border-block-end: 1px solid var(--colour-border);
}

.buying-advice {
  padding: var(--space-5);
  background: var(--colour-surface);
  border-inline-start: 4px solid var(--colour-information);
}

/* BBQ & Smoking landing: shop-first form cards + lower compact guide */
.bbq-shop-forms {
  display: grid;
  gap: var(--space-4);
}

.bbq-shop-forms__intro h2,
.bbq-guide__intro h2 {
  margin: 0;
}

.bbq-shop-forms__intro p,
.bbq-guide__intro p {
  margin: var(--space-2) 0 0;
  max-width: 40rem;
  color: var(--colour-muted);
}

.bbq-shop-forms__grid,
.bbq-guide__cards {
  display: grid;
  gap: var(--space-4);
  padding: 0;
  margin: 0;
  list-style: none;
  grid-template-columns: 1fr;
}

.bbq-shop-forms__card {
  display: grid;
  grid-template-rows: auto 1fr;
  height: 100%;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
  background: var(--colour-background);
  border: 1px solid var(--colour-border);
  border-radius: var(--radius-medium);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.bbq-shop-forms__card:hover,
.bbq-shop-forms__card:focus-visible {
  border-color: var(--colour-text);
  box-shadow: 0 0.4rem 1.2rem rgba(12, 10, 8, 0.08);
}

.bbq-shop-forms__media {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #fff;
  padding: 0.75rem 0.75rem 1.1rem;
  box-sizing: border-box;
}

.bbq-shop-forms__media img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center center;
}

.bbq-shop-forms__body {
  display: grid;
  gap: var(--space-2);
  padding: var(--space-4);
}

.bbq-shop-forms__title {
  font-weight: var(--font-weight-heading);
  font-size: var(--step-0);
}

.bbq-shop-forms__meta {
  color: var(--colour-muted);
  font-size: var(--step--1);
  line-height: 1.4;
}

.bbq-trust-strip {
  margin-block: calc(var(--space-3) * -0.25) 0;
  padding: var(--space-3) 0;
  border-block: 1px solid rgba(139, 69, 19, 0.16);
}

.bbq-trust-strip__grid {
  display: grid;
  gap: var(--space-3);
  margin: 0;
  padding: 0;
  list-style: none;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bbq-trust-strip__item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--space-2);
  align-items: start;
  min-width: 0;
}

.bbq-trust-strip__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  color: #8b4513;
  flex-shrink: 0;
}

.bbq-trust-strip__copy {
  display: grid;
  gap: 0.15rem;
  min-width: 0;
}

.bbq-trust-strip__title {
  font-size: 0.78rem;
  font-weight: var(--font-weight-heading);
  letter-spacing: 0.04em;
  line-height: 1.25;
  text-transform: uppercase;
  color: var(--colour-text);
}

.bbq-trust-strip__text {
  color: var(--colour-muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

@media (min-width: 48rem) {
  .bbq-trust-strip {
    padding-block: var(--space-3);
  }

  .bbq-trust-strip__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
  }

  .bbq-trust-strip__item {
    padding-inline: var(--space-3);
  }

  .bbq-trust-strip__item + .bbq-trust-strip__item {
    border-inline-start: 1px solid rgba(139, 69, 19, 0.18);
  }

  .bbq-trust-strip__item:first-child {
    padding-inline-start: 0;
  }

  .bbq-trust-strip__item:last-child {
    padding-inline-end: 0;
  }
}

.bbq-flavours {
  display: grid;
  gap: var(--space-4);
}

.bbq-flavours__intro h2 {
  margin: 0;
}

.bbq-flavours__intro p {
  margin: var(--space-2) 0 0;
  max-width: 40rem;
  color: var(--colour-muted);
}

.bbq-flavours__grid {
  display: grid;
  gap: var(--space-3);
  padding: 0;
  margin: 0;
  list-style: none;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bbq-flavours__card {
  display: grid;
  gap: var(--space-2);
  height: 100%;
  padding: var(--space-3);
  color: inherit;
  text-decoration: none;
  background: var(--colour-background);
  border: 1px solid rgba(139, 69, 19, 0.28);
  border-radius: var(--radius-medium);
  border-block-start: 3px solid #8b4513;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.bbq-flavours__card:hover,
.bbq-flavours__card:focus-within,
a.bbq-flavours__card:hover,
a.bbq-flavours__card:focus-visible {
  border-color: rgba(139, 69, 19, 0.62);
  box-shadow: 0 0.35rem 1rem rgba(12, 10, 8, 0.1);
  transform: translateY(-1px);
}

.bbq-flavours__name {
  font-weight: var(--font-weight-heading);
  font-size: var(--step-0);
  line-height: 1.2;
}

.bbq-flavours__profile {
  color: var(--colour-text);
  font-size: 0.78rem;
  line-height: 1.35;
  opacity: 0.9;
}

.bbq-flavours__intensity {
  display: flex;
  gap: 0.1rem;
  align-items: center;
  font-size: 0.72rem;
  line-height: 1;
}

.bbq-flavours__flame--on {
  opacity: 1;
}

.bbq-flavours__flame--off {
  color: var(--colour-muted);
  opacity: 0.55;
}

.bbq-flavours__meta {
  margin-block-start: 0.1rem;
  padding-block-start: var(--space-2);
  border-block-start: 1px solid var(--colour-border);
  color: var(--colour-muted);
  font-size: 0.76rem;
  line-height: 1.35;
}

@media (min-width: 48rem) {
  .bbq-flavours__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 75rem) {
  .bbq-flavours__grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.bbq-story {
  margin-block: var(--space-6);
}

.bbq-story__figure {
  margin: 0;
}

.bbq-story__figure img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.bbq-smoke-chart {
  display: grid;
  gap: var(--space-5);
}

.bbq-smoke-chart__intro h2 {
  margin: 0;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.bbq-smoke-chart__intro p {
  margin: var(--space-2) 0 0;
  max-width: 40rem;
  color: var(--colour-muted);
}

.bbq-smoke-chart__open {
  position: relative;
  display: block;
  width: 100%;
  max-width: min(100%, 72rem);
  margin-inline: auto;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--colour-border);
  border-radius: var(--radius-medium);
  background: #0a0a0a;
  cursor: zoom-in;
}

.bbq-smoke-chart__open img {
  display: block;
  width: 100%;
  height: auto;
  margin-inline: auto;
  object-fit: contain;
}

.bbq-smoke-chart__hint {
  position: absolute;
  inset-block-end: var(--space-3);
  inset-inline-end: var(--space-3);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-small);
  background: rgba(12, 10, 8, 0.82);
  color: #fff;
  font-size: var(--step--1);
  line-height: 1.2;
  pointer-events: none;
}

.bbq-smoke-chart__dialog {
  position: relative;
  width: min(95vw, 72rem);
  max-width: none;
  max-height: 95vh;
  padding: var(--space-6) var(--space-3) var(--space-3);
  border: 0;
  background: transparent;
}

.bbq-smoke-chart__dialog::backdrop {
  background: rgba(12, 10, 8, 0.9);
}

.bbq-smoke-chart__close {
  position: absolute;
  inset-block-start: var(--space-2);
  inset-inline-end: var(--space-2);
  z-index: 2;
  display: inline-flex;
  min-width: 2.5rem;
  min-height: 2.5rem;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--colour-text);
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

.bbq-smoke-chart__dialog-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: calc(95vh - 3rem);
  margin: 0 auto;
  object-fit: contain;
}

.bbq-smoke-chart__links {
  display: grid;
  gap: var(--space-4);
  padding: 0;
  margin: 0;
  list-style: none;
  grid-template-columns: 1fr;
}

.bbq-smoke-chart__link {
  display: grid;
  gap: var(--space-2);
  height: 100%;
  padding: var(--space-4);
  color: inherit;
  text-decoration: none;
  background: var(--colour-background);
  border: 1px solid var(--colour-border);
  border-radius: var(--radius-medium);
  border-block-start: 3px solid #8b4513;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.bbq-smoke-chart__link:hover,
.bbq-smoke-chart__link:focus-visible {
  border-color: var(--colour-text);
  box-shadow: 0 0.4rem 1.2rem rgba(12, 10, 8, 0.08);
}

.bbq-smoke-chart__link-title {
  font-weight: var(--font-weight-heading);
  font-size: var(--step-0);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.bbq-smoke-chart__link-meta {
  color: var(--colour-muted);
  font-size: var(--step--1);
  line-height: 1.4;
}

.bbq-smoke-chart__link-action {
  color: var(--colour-text);
  font-size: var(--step--1);
  font-weight: var(--font-weight-heading);
}

@media (min-width: 48rem) {
  .bbq-smoke-chart__links {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.bbq-smoking-guides {
  display: grid;
  gap: var(--space-4);
}

.bbq-smoking-guides > h2 {
  margin: 0;
  font-size: var(--step-1);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.bbq-smoking-guides__grid {
  display: grid;
  gap: var(--space-3);
  padding: 0;
  margin: 0;
  list-style: none;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bbq-smoking-guides__card {
  display: grid;
  gap: var(--space-2);
  height: 100%;
  padding: var(--space-3);
  background: var(--colour-background);
  border: 1px solid rgba(139, 69, 19, 0.28);
  border-radius: var(--radius-medium);
  border-block-start: 3px solid #8b4513;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset;
}

.bbq-smoking-guides__title {
  margin: 0;
  font-size: var(--step--1);
  font-weight: var(--font-weight-heading);
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.bbq-smoking-guides__text {
  margin: 0;
  color: var(--colour-muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

@media (min-width: 48rem) {
  .bbq-smoking-guides__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.bbq-rub-recipes {
  display: grid;
  gap: var(--space-4);
}

.bbq-rub-recipes__intro h2 {
  margin: 0;
  font-size: var(--step-1);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.bbq-rub-recipes__intro p {
  margin: var(--space-2) 0 0;
  max-width: 40rem;
  color: var(--colour-muted);
}

.bbq-rub-recipes__grid {
  display: grid;
  gap: var(--space-3);
  padding: 0;
  margin: 0;
  list-style: none;
  grid-template-columns: 1fr;
}

.bbq-rub-recipes__card {
  height: 100%;
  background: var(--colour-background);
  border: 1px solid rgba(139, 69, 19, 0.28);
  border-radius: var(--radius-medium);
  border-block-start: 3px solid #8b4513;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset;
}

.bbq-rub-recipes__summary {
  display: grid;
  gap: var(--space-2);
  min-height: var(--touch-target);
  padding: var(--space-3);
  cursor: pointer;
  list-style: none;
}

.bbq-rub-recipes__summary::-webkit-details-marker {
  display: none;
}

.bbq-rub-recipes__name {
  font-size: var(--step--1);
  font-weight: var(--font-weight-heading);
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.bbq-rub-recipes__meta {
  color: var(--colour-muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.bbq-rub-recipes__label {
  color: var(--colour-text);
  font-weight: var(--font-weight-heading);
}

.bbq-flavour-link {
  color: inherit;
  font-weight: var(--font-weight-heading);
  text-decoration: underline;
  text-decoration-color: rgba(139, 69, 19, 0.45);
  text-underline-offset: 0.15em;
}

.bbq-flavour-link:hover,
.bbq-flavour-link:focus-visible {
  color: #8b4513;
  text-decoration-color: #8b4513;
}

.bbq-rub-recipes__toggle {
  color: var(--colour-text);
  font-size: var(--step--1);
  font-weight: var(--font-weight-heading);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.bbq-rub-recipes__toggle::before {
  content: 'View recipe →';
}

.bbq-rub-recipes__card[open] .bbq-rub-recipes__toggle::before {
  content: 'Hide recipe';
}

.bbq-rub-recipes__ingredients {
  padding: 0 var(--space-3) var(--space-3);
  border-block-start: 1px solid rgba(139, 69, 19, 0.18);
}

.bbq-rub-recipes__ingredients-title {
  margin: var(--space-3) 0 var(--space-2);
  font-size: 0.78rem;
  font-weight: var(--font-weight-heading);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.bbq-rub-recipes__ingredients ul {
  display: grid;
  gap: 0.35rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.bbq-rub-recipes__ingredients li {
  color: var(--colour-muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.bbq-rub-recipes__ingredients li::before {
  content: '·';
  margin-inline-end: 0.35rem;
  color: #8b4513;
  font-weight: var(--font-weight-heading);
}

.bbq-rub-recipes__tip {
  margin: var(--space-3) 0 0;
  color: var(--colour-text);
  font-size: 0.82rem;
  line-height: 1.45;
}

.bbq-rub-recipes__contact {
  max-width: var(--reading-width);
}

@media (min-width: 48rem) {
  .bbq-rub-recipes__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 29.99rem) {
  .bbq-smoking-guides__grid {
    grid-template-columns: 1fr;
  }
}

.bbq-guide {
  display: grid;
  gap: var(--space-5);
  padding: 0;
  background: transparent;
  border: 0;
}

.bbq-guide__card {
  display: grid;
  gap: var(--space-2);
  padding: var(--space-4);
  background: var(--colour-background);
  border: 1px solid var(--colour-border);
  border-radius: var(--radius-medium);
  border-block-start: 3px solid #8b4513;
}

.bbq-guide__card h3,
.bbq-guide__card p {
  margin: 0;
}

.bbq-guide__card p {
  color: var(--colour-muted);
  font-size: var(--step--1);
  line-height: 1.4;
}

.bbq-guide__detail {
  max-width: 42rem;
  padding: 0;
  color: var(--colour-muted);
}

.bbq-guide__detail ul {
  margin: 0;
  padding-inline-start: 1.2rem;
}

.bbq-guide__detail li + li {
  margin-block-start: var(--space-2);
}

@media (min-width: 48rem) {
  .bbq-shop-forms__grid,
  .bbq-guide__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.collection-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  gap: var(--space-4);
}

.collection-filter-drawer {
  position: relative;
}

.collection-filter-drawer > summary {
  list-style: none;
}

.collection-filter-drawer > summary::-webkit-details-marker {
  display: none;
}

.collection-filter-drawer__content {
  position: absolute;
  z-index: 50;
  width: min(90vw, 28rem);
  max-height: min(70vh, 40rem);
  inset-block-start: calc(100% + var(--space-2));
  inset-inline-start: 0;
  padding: var(--space-5);
  overflow-y: auto;
  background: var(--colour-background);
  border: 1px solid var(--colour-border);
  border-radius: var(--radius-medium);
}

.collection-filters,
.collection-filters__groups {
  display: grid;
  gap: var(--space-4);
}

.collection-filters__active-title,
.collection-results-count {
  margin: 0;
  font-weight: var(--font-weight-heading);
}

.collection-early-help {
  margin: 0;
}

.collection-empty-recovery {
  display: grid;
  padding: 0;
  margin: var(--space-4) 0 0;
  gap: var(--space-2);
  list-style: none;
}

.collection-empty-recovery a {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
}

.collection-filter-chips,
.collection-related__links {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  gap: var(--space-2);
  list-style: none;
}

.collection-filter-chip,
.collection-related__links a {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--colour-border);
  border-radius: var(--radius-small);
}

.collection-filter-chip::after {
  margin-inline-start: var(--space-2);
  content: '×';
  font-weight: var(--font-weight-heading);
}

.collection-filter {
  border-block-end: 1px solid var(--colour-border);
}

.collection-filter summary {
  min-height: var(--touch-target);
  padding-block: var(--space-2);
  font-weight: var(--font-weight-heading);
  cursor: pointer;
}

.collection-filter__options {
  display: grid;
  padding-block-end: var(--space-4);
  gap: var(--space-2);
}

.collection-filter__price {
  display: grid;
  gap: var(--space-3);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.collection-sort {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}

.collection-supporting-content,
.collection-help-links,
.collection-related {
  max-width: var(--reading-width);
}

.product-grid .card {
  height: 100%;
}

.faq-list {
  border-block-start: 1px solid var(--colour-border);
}

.faq-list details {
  border-block-end: 1px solid var(--colour-border);
}

.faq-list summary {
  min-height: var(--touch-target);
  padding-block: var(--space-4);
  font-weight: var(--font-weight-heading);
  cursor: pointer;
}

.faq-list__answer {
  width: min(100%, var(--reading-width));
  padding-block-end: var(--space-4);
}

.pagination {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  gap: var(--space-2);
  list-style: none;
}

.pagination a,
.pagination .page.current {
  display: inline-flex;
  min-width: var(--touch-target);
  min-height: var(--touch-target);
  align-items: center;
  justify-content: center;
}

@media (max-width: 39.99rem) {
  .collection-toolbar {
    align-items: stretch;
  }

  .collection-filter-drawer,
  .collection-filter-drawer > summary,
  .collection-sort {
    width: 100%;
  }

  .collection-filter-drawer__content {
    position: fixed;
    max-height: calc(100vh - (2 * var(--page-gutter)));
    inset: var(--page-gutter);
  }

  .collection-sort {
    align-items: stretch;
    flex-direction: column;
  }
}

.product-decision {
  display: grid;
  gap: var(--space-6);
}

.product-gallery {
  display: grid;
  gap: var(--space-3);
}

.product-gallery__item {
  margin: 0;
  scroll-margin-top: calc(var(--header-height) + var(--space-4));
  background: var(--colour-surface);
}

.product-gallery__item--primary {
  grid-column: 1 / -1;
}

.product-gallery__item img,
.product-gallery__item video {
  width: 100%;
  aspect-ratio: 1;
  object-fit: contain;
}

.product-gallery__item--empty {
  display: grid;
  min-height: 16rem;
  place-items: center;
  padding: var(--space-5);
  color: var(--colour-muted);
}

.product-gallery__thumbs {
  display: flex;
  padding: 0;
  margin: 0;
  gap: var(--space-2);
  overflow-x: auto;
  list-style: none;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.product-gallery__thumbs li {
  flex: 0 0 auto;
  scroll-snap-align: start;
}

.product-gallery__thumb {
  display: block;
  width: 4.5rem;
  border: 2px solid transparent;
  border-radius: var(--radius-small);
}

.product-gallery__thumb:focus-visible {
  outline: 2px solid var(--colour-focus);
  outline-offset: 2px;
}

.product-gallery__thumb img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: contain;
}

.product-gallery--flavour-switch [data-flavour-media][hidden] {
  display: none !important;
}

.product-gallery--flavour-switch .product-gallery__thumb.is-active {
  border-color: var(--colour-ink, #1a1a1a);
}

.product-page--chips-34l {
  --chips-charcoal: #1c1b19;
  --chips-charcoal-soft: #2a2825;
  --chips-orange: #e8622a;
  --chips-orange-soft: #f4a574;
  --chips-cream: #f7f2eb;
}

.product-page--chips-34l .product-summary {
  --flow-space: var(--space-3);
}

.product-page--chips-34l .product-decision {
  gap: var(--space-5);
}

.chips-34l-buybox {
  padding: var(--space-5);
  color: var(--chips-cream);
  background:
    linear-gradient(165deg, var(--chips-charcoal-soft) 0%, var(--chips-charcoal) 55%, #141311 100%);
  border: 1px solid color-mix(in srgb, var(--chips-orange) 28%, transparent);
  border-radius: var(--radius-small, 0.5rem);
  box-shadow: 0 12px 32px color-mix(in srgb, #000 35%, transparent);
}

.chips-34l-buybox > h1 {
  color: var(--chips-cream);
}

.chips-34l-buybox .product-price-block .price,
.chips-34l-buybox .product-price-block .price-item {
  color: var(--chips-cream);
}

.chips-34l-buybox .product-availability {
  color: var(--chips-orange-soft);
  font-weight: 600;
}

.chips-34l-buybox .field__label {
  color: color-mix(in srgb, var(--chips-cream) 88%, transparent);
}

.chips-34l-buybox .field__input {
  color: var(--chips-charcoal);
  background: var(--chips-cream);
  border-color: color-mix(in srgb, var(--chips-orange) 35%, transparent);
}

.chips-34l-buybox .field__input:focus-visible {
  outline-color: var(--chips-orange);
  border-color: var(--chips-orange);
}

.product-page--chips-34l .product-summary > h1,
.chips-34l-buybox > h1 {
  font-size: clamp(1.65rem, 2.4vw, 2.1rem);
  line-height: 1.12;
  letter-spacing: -0.02em;
  max-width: 16ch;
  margin-bottom: 0;
}

.product-page--chips-34l .product-price-block {
  margin-top: var(--space-2);
}

.product-page--chips-34l .product-form {
  gap: var(--space-3);
}

.product-page--chips-34l .field--flavour-select {
  margin-top: 0;
}

.product-page--chips-34l .field--flavour-select .field__label {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--chips-orange-soft);
}

.product-page--chips-34l .field__input--flavour {
  font-size: 1rem;
  font-weight: 600;
  min-height: 2.85rem;
  border-width: 2px;
}

.chips-34l-sales-line {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--chips-orange);
}

.product-page--chips-34l .product-form [data-add-to-basket] {
  width: 100%;
  justify-content: center;
  min-height: 3.1rem;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  background: var(--chips-orange);
  border-color: var(--chips-orange);
  color: #fff;
}

.product-page--chips-34l .product-form [data-add-to-basket]:hover:not(:disabled) {
  background: color-mix(in srgb, var(--chips-orange) 88%, #000);
  border-color: color-mix(in srgb, var(--chips-orange) 88%, #000);
}

.chips-34l-delivery {
  margin: 0;
  padding: var(--space-3);
  text-align: center;
  background: color-mix(in srgb, var(--chips-charcoal) 45%, #000);
  border: 1px solid color-mix(in srgb, var(--chips-orange) 30%, transparent);
  border-radius: calc(var(--radius-small, 0.5rem) - 0.15rem);
}

.chips-34l-delivery__headline {
  margin: 0 0 0.25rem;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--chips-orange);
}

.chips-34l-delivery__detail {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.35;
  color: color-mix(in srgb, var(--chips-cream) 72%, transparent);
}

.chips-5l-badge {
  display: inline-block;
  margin: var(--space-2) 0 0;
  padding: 0.35rem 0.65rem;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chips-charcoal);
  background: var(--chips-orange);
  border-radius: 999px;
}

.chips-5l-positioning {
  margin: var(--space-2) 0 0;
  font-size: 0.92rem;
  line-height: 1.45;
  color: color-mix(in srgb, var(--chips-cream) 82%, transparent);
}

.chips-5l-smaller-link {
  margin: var(--space-2) 0 0;
  text-align: center;
}

.chips-5l-smaller-link a {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--chips-orange-soft);
  text-decoration: none;
}

.chips-5l-smaller-link a:hover {
  color: var(--chips-orange);
  text-decoration: underline;
}

.chips-34l-profile {
  margin: 0;
  padding: var(--space-3) var(--space-4);
  background: color-mix(in srgb, var(--chips-charcoal) 55%, #000);
  border: 1px solid color-mix(in srgb, var(--chips-orange) 22%, transparent);
  border-radius: calc(var(--radius-small, 0.5rem) - 0.1rem);
}

.chips-34l-profile__label {
  margin: 0 0 var(--space-1);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chips-orange-soft);
}

.chips-34l-profile__name {
  margin: 0 0 var(--space-3);
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--chips-cream);
}

.chips-34l-profile__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.65rem;
  margin-bottom: var(--space-2);
}

.chips-34l-profile__row--tags {
  align-items: flex-start;
}

.chips-34l-profile__key {
  flex: 0 0 auto;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--chips-cream) 65%, transparent);
}

.chips-34l-smoke {
  display: inline-flex;
  gap: 0.2rem;
  align-items: flex-end;
}

.chips-34l-smoke__flame {
  display: inline-flex;
  color: color-mix(in srgb, var(--chips-cream) 22%, transparent);
  line-height: 0;
}

.chips-34l-smoke__flame.is-on {
  color: var(--chips-orange);
}

.chips-34l-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  flex: 1;
  min-width: 0;
}

.chips-34l-tag {
  display: inline-block;
  padding: 0.2rem 0.55rem;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--chips-cream);
  background: color-mix(in srgb, var(--chips-orange) 18%, var(--chips-charcoal));
  border: 1px solid color-mix(in srgb, var(--chips-orange) 35%, transparent);
  border-radius: 999px;
}

.chips-34l-profile__story {
  margin: var(--space-3) 0 0;
  color: color-mix(in srgb, var(--chips-cream) 78%, transparent);
  font-size: 0.9rem;
  line-height: 1.5;
}

.chips-34l-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-2);
  margin: var(--space-4) 0 0;
  padding: 0;
  list-style: none;
}

.chips-34l-benefits li {
  display: grid;
  justify-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-2);
  text-align: center;
  background: color-mix(in srgb, var(--chips-charcoal) 40%, #000);
  border: 1px solid color-mix(in srgb, var(--chips-orange) 25%, transparent);
  border-radius: calc(var(--radius-small, 0.5rem) - 0.15rem);
}

.chips-34l-benefits__icon {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  color: var(--chips-orange);
  background: color-mix(in srgb, var(--chips-orange) 14%, var(--chips-charcoal));
  border: 1px solid color-mix(in srgb, var(--chips-orange) 30%, transparent);
  border-radius: 50%;
}

.chips-34l-benefits__label {
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.25;
  color: var(--chips-cream);
}

.chips-34l-brand {
  margin-top: var(--space-4);
  padding: var(--space-6) 0;
  color: #fff;
  background:
    linear-gradient(
      135deg,
      #0f0e0d 0%,
      var(--chips-charcoal) 35%,
      color-mix(in srgb, var(--chips-charcoal) 70%, #3d2010) 70%,
      color-mix(in srgb, var(--chips-orange) 35%, var(--chips-charcoal)) 100%
    );
  border-block: 1px solid color-mix(in srgb, var(--chips-orange) 25%, transparent);
}

.chips-34l-brand__inner {
  max-width: 40rem;
}

.chips-34l-brand__eyebrow {
  margin: 0 0 var(--space-2);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chips-orange-soft);
}

.chips-34l-brand h2 {
  margin: 0 0 var(--space-3);
  font-size: clamp(1.5rem, 2.8vw, 2rem);
  line-height: 1.12;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}

.chips-34l-brand__lead {
  margin: 0;
  font-size: 1rem;
  line-height: 1.55;
  color: color-mix(in srgb, #fff 88%, transparent);
}

.product-page--chips-34l .product-trust-links {
  margin-top: var(--space-3);
  font-size: 0.9rem;
}

.chips-34l-safety {
  margin-top: var(--space-4);
  padding: var(--space-3) var(--space-4);
  border-width: 1px;
}

.chips-34l-safety h2 {
  margin-bottom: var(--space-1);
  font-size: 0.88rem;
}

.chips-34l-safety p {
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.4;
}

.product-page--chips-34l .page-width.flow {
  --flow-space: var(--space-4);
}

@media (max-width: 47.99rem) {
  .product-page--chips-34l .product-summary > h1,
  .chips-34l-buybox > h1 {
    max-width: none;
  }

  .chips-34l-buybox {
    padding: var(--space-4);
  }

  .chips-34l-benefits {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }

  .chips-34l-benefits li {
    grid-template-columns: auto 1fr;
    justify-items: start;
    align-items: center;
    text-align: left;
    min-height: 0;
    padding: var(--space-3);
  }

  .chips-34l-brand {
    margin-top: var(--space-3);
    padding: var(--space-5) 0;
  }

  .chips-34l-profile__row--tags {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* BBQ compact galleries: one large image + thumbs on small screens so options stay above the fold. */
@media (max-width: 47.99rem) {
  .product-gallery--compact .product-gallery__item:not(.product-gallery__item--primary) {
    display: none;
  }

  .product-gallery--compact .product-gallery__item:target {
    display: block;
  }

  .product-gallery--compact:has(.product-gallery__item:not(.product-gallery__item--primary):target) .product-gallery__item--primary {
    display: none;
  }
}

.product-summary {
  min-width: 0;
}

.product-identity-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-4);
  margin: 0;
  color: var(--colour-muted);
  font-size: var(--step--1);
}

.product-key-facts {
  display: grid;
  padding: 0;
  margin: 0;
  gap: var(--space-2);
  list-style: none;
}

.product-key-facts li {
  padding-inline-start: var(--space-4);
  border-inline-start: 3px solid var(--colour-information);
}

.product-price-block {
  display: grid;
  gap: var(--space-2);
}

.product-price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-3);
  margin: 0;
  font-size: var(--step-2);
  font-variant-numeric: tabular-nums;
  font-weight: var(--font-weight-heading);
}

.product-price__compare {
  color: var(--colour-muted);
  font-size: var(--step-0);
  font-weight: var(--font-weight-body);
}

.product-availability {
  margin: 0;
  color: var(--colour-muted);
}

.product-form {
  display: grid;
  gap: var(--space-4);
}

.product-form__quantity {
  max-width: 8rem;
}

.product-form__status:empty {
  display: none;
}

.product-form__status:not(:empty) {
  margin: 0;
  font-size: var(--step--1);
}

.buying-advice--compact {
  padding: var(--space-4);
}

.product-trust-links {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  gap: var(--space-3) var(--space-5);
  list-style: none;
  font-size: var(--step--1);
}

.product-trust-links a {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
}

.product-delivery {
  color: var(--colour-muted);
  font-size: var(--step--1);
}

/*
 * Fixed, not sticky. A bottom-sticky element only pins while the viewport is above
 * its position in the flow, but this bar is revealed once the summary has been
 * scrolled past, so a sticky bar would never be pinned when it is shown.
 */
.product-sticky-atc {
  position: fixed;
  z-index: 40;
  inset-block-end: 0;
  inset-inline: 0;
  padding-block: var(--space-3);
  background: var(--colour-background);
  border-block-start: 1px solid var(--colour-border);
  box-shadow: 0 -0.5rem 1rem rgb(0 0 0 / 0.06);
}

/* Keep the end of the page and in-page anchor targets clear of the fixed bar. */
body:has(.product-sticky-atc:not([hidden])) {
  padding-block-end: calc(var(--touch-target) + var(--space-6));
}

html:has(.product-sticky-atc:not([hidden])) {
  scroll-padding-bottom: calc(var(--touch-target) + var(--space-6));
}

.product-sticky-atc[hidden] {
  display: none !important;
}

.product-sticky-atc__inner {
  display: grid;
  gap: var(--space-3);
  align-items: center;
  grid-template-columns: minmax(0, 1fr) auto;
}

.product-sticky-atc__price {
  margin: 0;
  font-variant-numeric: tabular-nums;
  font-weight: var(--font-weight-heading);
}

.product-sticky-atc .button--text {
  grid-column: 1 / -1;
  justify-self: start;
  width: auto;
}

.product-sticky-atc .button--primary {
  grid-column: 2;
  grid-row: 1;
  width: auto;
  min-width: 10rem;
}

.product-help-links {
  max-width: var(--reading-width);
}

.product-decision__help {
  scroll-margin-bottom: 6rem;
}

.identify-page__intro {
  background: var(--colour-surface);
}

.identify-page__columns {
  display: grid;
  gap: var(--space-7);
}

.evidence-list {
  display: grid;
  gap: var(--space-3);
}

.contact-layout {
  display: grid;
  gap: var(--space-7);
}

#ContactForm {
  display: grid;
  gap: var(--space-5);
}

.rte {
  overflow-wrap: anywhere;
}

.product-page--bbq-smoking .product-overview .rte > div > div:first-child {
  text-align: center;
}

.product-page--bbq-smoking .product-overview .rte img[alt*="Stove Wizard"] {
  display: block;
  margin-inline: auto;
  width: auto;
  max-width: min(420px, 90%);
}

.guides-hub__primary-actions,
.guide__recovery .cluster {
  align-items: stretch;
}

.guide-topic-nav {
  padding: var(--space-5);
  background: var(--colour-surface);
  border: var(--border-width) solid var(--colour-border);
  border-radius: var(--radius-medium);
}

.guide-topic-nav ul,
.guide-empty-routes,
.guide-related-links {
  display: grid;
  padding: 0;
  margin: 0;
  gap: var(--space-2);
  list-style: none;
}

.guide-topic-nav a,
.guide-empty-routes a,
.guide-related-links a,
.guide__return a {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
}

.guide-group {
  scroll-margin-top: calc(var(--header-height) + var(--space-4));
}

.guide-card-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.guide-card-list > li,
.guide-card-list .card {
  height: 100%;
}

.card__media--guide {
  aspect-ratio: 4 / 3;
}

.card__media--guide img {
  object-fit: cover;
}

.card__summary > :last-child,
.guide__figure,
.guide__freshness,
.guide__freshness dd {
  margin-block-end: 0;
}

.guide__freshness {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  gap: var(--space-2) var(--space-5);
  color: var(--colour-muted);
  font-size: var(--type-caption);
}

.guide__freshness > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
}

.guide__freshness dt {
  font-weight: var(--font-weight-heading);
}

.guide__direct-answer,
.guide-contents {
  padding: var(--space-5);
  background: var(--colour-surface);
  border-inline-start: 4px solid var(--colour-information);
}

.guide-contents {
  border: var(--border-width) solid var(--colour-border);
  border-inline-start-width: 4px;
}

.guide-contents a {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
}

.guide__figure {
  overflow: hidden;
  border-radius: var(--radius-medium);
}

.guide__figure img {
  width: 100%;
}

.guide__figure figcaption,
.guide__content figcaption {
  padding: var(--space-3);
  color: var(--colour-muted);
  background: var(--colour-surface);
  font-size: var(--type-caption);
}

.guide__content > h2,
.guide__content > h3 {
  scroll-margin-top: calc(var(--header-height) + var(--space-4));
}

.guide__content .guide-steps {
  padding-inline-start: 0;
  list-style: none;
  counter-reset: guide-step;
}

.guide__content .guide-steps > li {
  position: relative;
  min-height: 2.5rem;
  padding-inline-start: 3.25rem;
  margin-block-end: var(--space-5);
  counter-increment: guide-step;
}

.guide__content .guide-steps > li::before {
  position: absolute;
  display: inline-flex;
  width: 2.25rem;
  height: 2.25rem;
  align-items: center;
  justify-content: center;
  inset-block-start: 0;
  inset-inline-start: 0;
  border: var(--border-width) solid var(--colour-border);
  border-radius: 50%;
  content: counter(guide-step);
  font-weight: var(--font-weight-heading);
}

.guide__content .guide-callout {
  padding: var(--space-5);
  margin-block: var(--space-5);
  background: var(--colour-surface);
  border-inline-start: 4px solid var(--colour-information);
}

.guide__content .guide-callout--tip {
  background: color-mix(in srgb, var(--colour-success) 8%, var(--colour-surface));
  border-color: var(--colour-success);
  border-inline-start-style: dashed;
}

.guide__content .guide-callout--information {
  border-color: var(--colour-information);
}

.guide__content .guide-callout--warning {
  background: color-mix(in srgb, var(--colour-warning) 12%, var(--colour-surface));
  border-color: var(--colour-warning);
}

.guide__content .guide-callout--danger {
  background: color-mix(in srgb, var(--colour-danger) 9%, var(--colour-surface));
  border-color: var(--colour-danger);
  border-inline-start-width: 7px;
}

.guide__content .guide-callout--verified {
  background: color-mix(in srgb, var(--colour-success) 12%, var(--colour-surface));
  border-color: var(--colour-success);
  border-inline-start-width: 7px;
}

.guide__content .guide-measurements {
  display: grid;
  margin: var(--space-5) 0;
  gap: 0;
}

.guide__content .guide-measurements > div {
  display: grid;
  padding-block: var(--space-3);
  gap: var(--space-2);
  border-block-end: var(--border-width) solid var(--colour-border);
  grid-template-columns: minmax(8rem, 1fr) 2fr;
}

.guide__content .guide-measurements dt {
  color: var(--colour-muted);
  font-weight: var(--font-weight-heading);
}

.guide__content .guide-measurements dd {
  margin: 0;
  font-variant-numeric: tabular-nums;
}

.table-scroll {
  margin-block: var(--space-5);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-scroll:focus-visible {
  outline: var(--focus-ring-width) solid var(--colour-focus);
  outline-offset: var(--focus-ring-offset);
}

/*
 * Fallback for when the scroll container has not been added: the table scrolls
 * itself so wide content stays reachable, at the cost of table semantics.
 */
.guide__content table {
  display: block;
  width: max-content;
  max-width: 100%;
  margin-block: var(--space-5);
  overflow-x: auto;
  border-collapse: collapse;
  -webkit-overflow-scrolling: touch;
}

/* Once wrapped, the container scrolls and the table keeps its semantics. */
.table-scroll > table {
  display: table;
  width: 100%;
  min-width: max-content;
  max-width: none;
  margin-block: 0;
  overflow: visible;
}

.guide__content caption {
  margin-block-end: var(--space-2);
  font-weight: var(--font-weight-heading);
  text-align: start;
}

.guide__content th,
.guide__content td {
  padding: var(--space-3);
  border: var(--border-width) solid var(--colour-border);
  text-align: start;
  vertical-align: top;
}

.guide__content th {
  background: var(--colour-surface);
}

.guide__content video {
  width: 100%;
  height: auto;
}

.guide__related {
  padding-block-start: var(--space-6);
  border-block-start: var(--border-width) solid var(--colour-border);
}

.guide__return {
  margin-block-start: var(--space-7);
  font-weight: var(--font-weight-heading);
}

.cart-form,
.cart-items {
  display: grid;
  gap: var(--space-6);
}

.cart-item {
  align-items: start;
  border-block-end: 1px solid var(--colour-border);
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 5rem minmax(0, 1fr);
  padding-block-end: var(--space-6);
}

.cart-item__media img {
  aspect-ratio: 1;
  object-fit: contain;
}

.cart-item__details {
  --flow-space: var(--space-2);
}

.cart-item__total {
  font-weight: 700;
}

.cart-summary {
  justify-self: end;
  max-width: 32rem;
  width: 100%;
}

.cart-summary__total {
  align-items: baseline;
  display: flex;
  font-size: var(--step-1);
  justify-content: space-between;
}

.site-header__inner {
  display: flex;
  min-height: 4rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
}

.site-header__brand {
  color: var(--colour-text);
  font-family: var(--font-heading);
  font-size: var(--step-1);
  font-weight: var(--font-weight-heading);
  text-decoration: none;
  line-height: 0;
}

.site-header__brand-text,
.brand-logo--text {
  display: inline-block;
  max-width: 12rem;
  line-height: 1.2;
}

.site-header__brand img,
.brand-logo--header img {
  display: block;
  width: auto;
  height: auto;
  max-width: 11rem;
  max-height: 2.75rem;
  object-fit: contain;
}

.brand-logo {
  display: inline-block;
  line-height: 0;
  max-width: 100%;
}

.brand-logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  object-fit: contain;
}

.brand-logo--footer img {
  max-width: 11rem;
  max-height: 2.5rem;
}

.brand-logo--product img {
  max-width: 8.5rem;
  max-height: 1.4rem;
}

.site-header__utilities {
  display: flex;
  align-items: center;
  gap: var(--space-1);
}

.site-header__identify {
  display: inline-flex;
  min-width: var(--touch-target);
  min-height: var(--touch-target);
  align-items: center;
  justify-content: center;
  padding-inline: var(--space-3);
  color: var(--colour-brand);
  font-size: var(--step--1);
  font-weight: 700;
  text-decoration: none;
  border: var(--border-width) solid var(--colour-border);
  border-radius: var(--radius-small);
}

html.no-js .site-header__search {
  display: none;
}

.site-header__identify:hover,
.site-header__identify:focus-visible {
  background: var(--colour-surface);
}

.site-header__search {
  position: relative;
}

.site-header__search-panel {
  position: absolute;
  z-index: 120;
  inset-block-start: calc(100% + var(--space-2));
  inset-inline-end: 0;
  width: min(92vw, 28rem);
  padding: var(--space-4);
  background: var(--colour-background);
  border: var(--border-width) solid var(--colour-border);
  border-radius: var(--radius-medium);
  box-shadow: 0 0.5rem 1.25rem rgb(29 36 33 / 12%);
}

.site-header__search-hint,
.site-header__search-fallback {
  margin-block-start: var(--space-3);
  color: var(--colour-muted);
  font-size: var(--step--1);
}

.site-header__utility,
.site-header__menu-button,
.mobile-menu__close,
.primary-nav__parent-row button {
  display: inline-flex;
  min-width: var(--touch-target);
  min-height: var(--touch-target);
  align-items: center;
  justify-content: center;
  padding: var(--space-2);
  color: var(--colour-text);
  background: transparent;
  border: 0;
  cursor: pointer;
}

.site-header__cart-count {
  margin-inline-start: var(--space-1);
  font-size: var(--step--1);
  font-weight: 700;
}

.primary-nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

.primary-nav a {
  display: flex;
  min-height: var(--touch-target);
  align-items: center;
  color: var(--colour-text);
  font-weight: 600;
  text-decoration: none;
}

.primary-nav a:hover,
.primary-nav a[aria-current='page'],
.primary-nav__identify-link,
.primary-nav__identify-rescue {
  color: var(--colour-brand);
}

.primary-nav a:hover,
.primary-nav a[aria-current='page'] {
  text-decoration: underline;
  text-underline-offset: 0.3em;
}

.primary-nav__identify-rescue {
  display: flex;
  min-height: var(--touch-target);
  align-items: center;
  margin-block-start: var(--space-2);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 0.3em;
}

.site-header__desktop-nav {
  display: none;
}

.primary-nav__item {
  position: relative;
}

.primary-nav__children {
  margin: 0;
  padding: var(--space-2) 0 var(--space-2) var(--space-5);
  list-style: none;
}

.primary-nav__parent-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
}

.primary-nav__parent-row button[aria-expanded='true'] .icon {
  transform: rotate(90deg);
}

.mobile-menu {
  position: fixed;
  z-index: 200;
  inset: 0;
}

.mobile-menu__backdrop {
  position: absolute;
  inset: 0;
  background: rgb(29 36 33 / 55%);
  border: 0;
}

.mobile-menu__dialog {
  position: relative;
  z-index: 1;
  display: grid;
  gap: var(--space-5);
  width: min(92vw, 26rem);
  height: 100%;
  margin-inline-start: auto;
  padding: var(--space-4) var(--page-gutter) var(--space-7);
  overflow-y: auto;
  background: var(--colour-background);
}

.mobile-menu__toolbar {
  display: flex;
  justify-content: flex-end;
}

.mobile-menu__close {
  margin-inline-start: auto;
}

.mobile-menu__identify {
  display: flex;
  min-height: var(--touch-target);
  align-items: center;
  justify-content: center;
  padding: var(--space-3) var(--space-4);
  color: var(--colour-brand-contrast);
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  background: var(--colour-brand);
  border-radius: var(--radius-small);
}

.site-footer {
  padding-block: var(--section-space-mobile) var(--space-5);
  color: var(--colour-brand-contrast);
  background: var(--colour-brand);
}

.site-footer__grid {
  display: grid;
  gap: var(--space-6);
}

.site-footer__brand,
.site-footer__heading {
  color: inherit;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
}

.site-footer__brand {
  line-height: 0;
}

.site-footer__heading {
  font-size: var(--step-1);
}

.site-footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer a {
  display: inline-flex;
  min-height: var(--touch-target);
  align-items: center;
  color: inherit;
}

.site-footer__details,
.site-footer__trust {
  max-width: var(--reading-width);
}

.site-footer__trust {
  margin-block-start: var(--space-3);
  font-size: var(--step--1);
}

.site-footer__bottom {
  padding-block-start: var(--space-6);
  margin-block-start: var(--space-6);
  border-block-start: 1px solid currentColor;
}

/* Sticky purchase summary must clear the global header and leave help exits reachable */
.product-summary,
.product-decision__actions {
  scroll-margin-top: calc(var(--header-height) + var(--space-4));
}

.product-decision__help,
.product-summary .notice,
.product-summary [href*='we-help-identify-your-stove'],
.product-summary [href*='contact'] {
  position: relative;
  z-index: 1;
}

/* Breakpoint: medium --bp-medium (48rem) */
@media (min-width: 48rem) {
  .section {
    padding-block: var(--section-space);
  }

  .site-footer {
    padding-block-start: var(--section-space);
  }

  /*
   * The five-column layout needs at least 50rem of track before gaps, which
   * overflows the page at this breakpoint. It starts at --bp-large instead.
   */
  .site-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .search-form__controls {
    grid-template-columns: 1fr auto;
  }

  .breadcrumbs__list {
    flex-wrap: wrap;
    overflow: visible;
  }

  .breadcrumbs__current {
    max-width: none;
  }

  .site-header__brand-text {
    max-width: none;
  }

  .home-hero__actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-2);
    max-width: 42rem;
  }

  .home-hero__actions .button {
    min-width: 0;
    padding-block: 0.5rem;
    padding-inline: 0.55rem;
    font-size: 0.8125rem;
  }

  .home-hero--has-media {
    min-height: clamp(24rem, 38vw, 34rem);
  }

  .home-hero--has-media .home-hero__media img {
    object-position: center center;
  }

  .home-hero--has-media .home-hero__scrim {
    width: min(52%, 38rem);
  }

  .collection-hero--has-media .collection-hero__scrim {
    width: min(46%, 34rem);
    height: min(38%, 12rem);
  }

  .collection-hero--vermiculite .collection-hero__scrim {
    width: min(68%, 46rem);
    height: min(72%, 16rem);
  }

  .collection-hero--stove-rope .collection-hero__scrim {
    width: min(68%, 46rem);
    height: min(72%, 16rem);
  }

  .home-category-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-identify__layout,
  .home-guides__layout,
  .home-why-choose__layout {
    grid-template-columns: minmax(0, 3fr) minmax(16rem, 2fr);
  }

  .feature-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-decision {
    align-items: start;
    grid-template-columns: minmax(0, 3fr) minmax(20rem, 2fr);
  }

  .product-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-summary {
    position: sticky;
    inset-block-start: calc(var(--header-height) + var(--space-4));
  }

  .product-sticky-atc {
    display: none !important;
  }

  .identify-page__columns {
    align-items: start;
    grid-template-columns: minmax(0, 3fr) minmax(18rem, 2fr);
  }

  .contact-layout {
    align-items: start;
    grid-template-columns: minmax(0, 2fr) minmax(20rem, 1fr);
  }

  .cart-item {
    grid-template-columns: 7.5rem minmax(0, 1fr) auto;
  }
}

/* Breakpoint: small max --bp-small-max (39.99rem) — touch-first full-width controls */
@media (max-width: 39.99rem) {
  .button {
    width: 100%;
  }

  .site-header__search-panel .button,
  .search-form--mobile .button,
  .search-form--header .button {
    width: 100%;
  }

  .measurement-list > div,
  .specification-list > div,
  .guide__content .guide-measurements > div {
    grid-template-columns: 1fr;
  }

  .home-hero--has-media {
    min-height: clamp(26rem, 118vw, 34rem);
  }

  .home-hero--has-media .home-hero__media img {
    /* Keep stove/fire centred on mobile crop */
    object-position: center 40%;
  }

  .home-hero--has-media .home-hero__scrim {
    width: 100%;
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.32) 0%,
      rgba(12, 10, 8, 0.22) 55%,
      rgba(12, 10, 8, 0.1) 100%
    );
  }

  .collection-hero--has-media {
    aspect-ratio: 4 / 3;
    max-height: min(22rem, 78vw);
  }

  .collection-hero--bbq-smoking.collection-hero--has-media {
    aspect-ratio: auto;
    height: min(22rem, 78vw);
    max-height: min(22rem, 78vw);
  }

  .collection-hero--bbq-smoking .collection-hero__scrim {
    width: 100%;
    height: min(62%, 14rem);
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.9) 0%,
      rgba(12, 10, 8, 0.64) 48%,
      rgba(12, 10, 8, 0.18) 78%,
      rgba(12, 10, 8, 0) 100%
    );
  }

  .collection-hero--bbq-smoking .collection-hero__content {
    max-width: 100%;
    padding: var(--space-4) var(--space-4) var(--space-5);
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.8) 0%,
      rgba(12, 10, 8, 0.55) 58%,
      rgba(12, 10, 8, 0) 100%
    );
  }

  .collection-hero--has-media .collection-hero__media img {
    object-position: center 78%;
  }

  .collection-hero--has-media .collection-hero__scrim {
    width: 100%;
    height: min(48%, 11rem);
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.4) 0%,
      rgba(12, 10, 8, 0.2) 70%,
      rgba(12, 10, 8, 0) 100%
    );
  }

  .collection-hero--vermiculite .collection-hero__media img {
    object-position: 72% center;
  }

  .collection-hero--vermiculite .collection-hero__scrim {
    width: 100%;
    height: min(78%, 15rem);
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.88) 0%,
      rgba(12, 10, 8, 0.62) 55%,
      rgba(12, 10, 8, 0.22) 85%,
      rgba(12, 10, 8, 0) 100%
    );
  }

  .collection-hero--stove-rope .collection-hero__media img {
    object-position: center center;
  }

  .collection-hero--stove-rope .collection-hero__scrim {
    width: 100%;
    height: min(78%, 15rem);
    background: linear-gradient(
      to bottom,
      rgba(12, 10, 8, 0.88) 0%,
      rgba(12, 10, 8, 0.62) 55%,
      rgba(12, 10, 8, 0.22) 85%,
      rgba(12, 10, 8, 0) 100%
    );
  }

  .collection-hero--has-media .collection-hero__content {
    max-width: 100%;
  }
}

/* Breakpoint: large --bp-large (75rem) — desktop navigation */
@media (min-width: 75rem) {
  .site-footer__grid {
    grid-template-columns: minmax(14rem, 2fr) repeat(4, minmax(9rem, 1fr));
  }

  .site-header__desktop-nav {
    display: block;
    flex: 1;
    min-width: 0;
  }

  .site-header__menu-button {
    display: none;
  }

  .site-header__identify {
    display: none;
  }

  .primary-nav--desktop {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: clamp(0.45rem, 0.8vw, 0.95rem);
  }

  .primary-nav--desktop > .primary-nav__item > a {
    font-size: var(--step--1);
  }

  .primary-nav--desktop .primary-nav__children {
    position: absolute;
    z-index: 110;
    min-width: 15rem;
    inset-block-start: 100%;
    inset-inline-start: 0;
    padding: var(--space-3);
    background: var(--colour-background);
    border: var(--border-width) solid var(--colour-border);
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-0.25rem);
    transition:
      opacity var(--transition-fast),
      transform var(--transition-fast),
      visibility var(--transition-fast);
  }

  .primary-nav--desktop .primary-nav__item:hover > .primary-nav__children,
  .primary-nav--desktop .primary-nav__item:focus-within > .primary-nav__children {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }

  .site-header--bbq-prominent .primary-nav__item--seasonal > a {
    color: var(--colour-brand);
    text-decoration: underline;
    text-decoration-thickness: 0.12em;
    text-underline-offset: 0.35em;
  }

  .primary-nav--desktop .primary-nav__item--identify > a {
    color: var(--colour-brand);
  }

  .home-category-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  .site-header--scrolled {
    box-shadow: none;
  }
}

.cut-to-size {
  --flow-space: var(--space-4);
}

.cut-to-size__lead {
  margin: 0;
}

.cut-to-size__fields {
  display: grid;
  gap: var(--space-4);
}

.cut-to-size__result {
  font-weight: 600;
}

.cart-item__properties {
  margin: 0;
  padding-inline-start: 1.1rem;
}

@media (min-width: 40rem) {
  .cut-to-size__fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Cut-to-size: thickness (Shopify variant) above OPC host */
.product-form__thickness-first {
  margin-block: var(--space-4) var(--space-3);
  max-width: 20rem;
}

/* Options Price Calculator host on cut-to-size (MAIN placement parity) */
.product-opc-host {
  display: block;
  width: 100%;
  min-height: 1px;
}

.product-opc-host .shopify-app-block-host,
.product-opc-host .shopify-app-block,
.product-opc-host #calculator-form-container {
  display: block;
  width: 100%;
}

.product-form[data-cut-to-size-form="true"] .product-form__opc-support {
  margin-top: var(--space-4);
}

/* ===== Cut-to-size PDP premium layout (this product only) ===== */
.product-page--cut-to-size {
  --cts-green: #2f3d32;
  --cts-green-deep: #1c221c;
  --cts-orange: #c45c26;
  --cts-cream: #f7f4ef;
  --cts-border: color-mix(in srgb, var(--cts-green) 16%, #d8d2c8);
}

.product-page--cut-to-size > .page-width.flow {
  --flow-space: var(--space-5);
  gap: var(--space-5);
}

.product-page--cut-to-size .product-decision {
  gap: var(--space-5);
  align-items: start;
}

.product-page--cut-to-size .cts-media-column {
  display: grid;
  gap: var(--space-4);
  align-content: start;
  min-width: 0;
}

.product-page--cut-to-size .cts-measure-card {
  margin: 0;
  padding: 1rem 1.1rem 1.05rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.65rem;
  background: #fff;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--cts-green-deep) 5%, transparent);
  border-inline-start: 3px solid var(--cts-green);
}

.product-page--cut-to-size .cts-measure-card__title {
  margin: 0 0 0.7rem;
  color: var(--cts-green-deep);
  font-size: var(--step-0);
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.product-page--cut-to-size .cts-measure-card__steps {
  display: grid;
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: cts-measure;
}

.product-page--cut-to-size .cts-measure-card__steps li {
  display: grid;
  grid-template-columns: 1.55rem minmax(0, 1fr);
  gap: 0.15rem 0.65rem;
  align-items: start;
  counter-increment: cts-measure;
}

.product-page--cut-to-size .cts-measure-card__steps li::before {
  content: counter(cts-measure);
  display: grid;
  place-items: center;
  width: 1.55rem;
  height: 1.55rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--cts-orange) 14%, #fff);
  border: 1px solid color-mix(in srgb, var(--cts-orange) 45%, transparent);
  color: var(--cts-orange);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
  grid-row: 1 / span 2;
}

.product-page--cut-to-size .cts-measure-card__step-title {
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--cts-green-deep);
  line-height: 1.3;
}

.product-page--cut-to-size .cts-measure-card__step-text {
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, transparent);
}

.product-page--cut-to-size .cts-measure-card__help {
  margin: 0.85rem 0 0;
  padding-top: 0.75rem;
  border-top: 1px solid var(--cts-border);
  font-size: var(--step--1);
  line-height: 1.4;
}

.product-page--cut-to-size .cts-measure-card__help a {
  color: var(--cts-green);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.product-page--cut-to-size .cts-measure-card__help a:hover,
.product-page--cut-to-size .cts-measure-card__help a:focus-visible {
  color: var(--cts-orange);
}

.product-page--cut-to-size .product-summary {
  gap: var(--space-4);
  --flow-space: var(--space-4);
}

.product-page--cut-to-size .product-summary > h1 {
  margin: 0;
  font-size: clamp(1.55rem, 1.2rem + 1.2vw, 2.15rem);
  line-height: 1.15;
  color: var(--cts-green-deep);
}

.product-page--cut-to-size .cts-benefits-line {
  margin: 0;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, transparent);
  font-size: var(--step--1);
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.45;
}

.product-page--cut-to-size .product-identity-meta {
  display: none;
}

.product-page--cut-to-size .product-price-block {
  display: grid;
  gap: 0.35rem;
  padding: 0.85rem 1rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.55rem;
  background: #fff;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--cts-green-deep) 6%, transparent);
}

.product-page--cut-to-size .product-price {
  margin: 0;
  font-size: clamp(1.35rem, 1.1rem + 0.8vw, 1.75rem);
  font-weight: 700;
  color: var(--cts-green-deep);
}

.product-page--cut-to-size .product-availability {
  margin: 0;
  color: color-mix(in srgb, var(--cts-green) 85%, #1a7a3c);
  font-size: var(--step--1);
  font-weight: 600;
}

.product-page--cut-to-size .buying-advice--compact {
  padding: 0.85rem 1rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.55rem;
  background: var(--cts-cream);
}

.product-page--cut-to-size .buying-advice--compact .h3 {
  margin: 0 0 0.35rem;
  font-size: var(--step-0);
  color: var(--cts-green-deep);
}

.product-page--cut-to-size .buying-advice--compact p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
}

/* Gallery: large primary + 2x2 supporting images */
.product-page--cut-to-size .product-gallery--cut-to-size {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
  padding: var(--space-3);
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--cts-green-deep) 5%, transparent);
}

.product-page--cut-to-size .product-gallery--cut-to-size .product-gallery__item {
  background: #fff;
  border-radius: 0.4rem;
  overflow: hidden;
}

.product-page--cut-to-size .product-gallery--cut-to-size .product-gallery__item--primary {
  grid-column: 1 / -1;
}

.product-page--cut-to-size .product-gallery--cut-to-size .product-gallery__item img {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  background: #fff;
}

.product-page--cut-to-size .product-gallery__thumbs--cut-to-size {
  display: none;
}

@media (max-width: 47.99rem) {
  .product-page--cut-to-size .product-gallery--compact.product-gallery--cut-to-size .product-gallery__item:not(.product-gallery__item--primary) {
    display: block;
  }

  .product-page--cut-to-size .product-gallery--compact.product-gallery--cut-to-size:has(.product-gallery__item:not(.product-gallery__item--primary):target) .product-gallery__item--primary {
    display: block;
  }

  /* Standard board: keep mobile to primary + thumbs, not a stacked image stack */
  .product-page--verm-standard .product-gallery--compact.product-gallery--cut-to-size .product-gallery__item:not(.product-gallery__item--primary) {
    display: none;
  }

  .product-page--verm-standard .product-gallery--compact.product-gallery--cut-to-size .product-gallery__item:target {
    display: block;
  }

  .product-page--verm-standard .product-gallery--compact.product-gallery--cut-to-size:has(.product-gallery__item:not(.product-gallery__item--primary):target) .product-gallery__item--primary {
    display: none;
  }

  .product-page--verm-standard .product-gallery__thumbs--cut-to-size {
    display: flex;
  }
}

/* Calculator card */
.product-page--cut-to-size .cts-calculator-card {
  display: grid;
  gap: var(--space-4);
  padding: 1.1rem 1.15rem 1.25rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--cts-green-deep) 6%, transparent);
}

.product-page--cut-to-size .cts-calculator-card__header {
  display: grid;
  gap: 0.2rem;
}

.product-page--cut-to-size .cts-calculator-card__title {
  margin: 0;
  font-size: var(--step-1);
  color: var(--cts-green-deep);
  line-height: 1.2;
}

.product-page--cut-to-size .cts-calculator-card__sub {
  margin: 0;
  color: color-mix(in srgb, var(--cts-green-deep) 72%, transparent);
  font-size: var(--step--1);
}

.product-page--cut-to-size .cts-clarity {
  margin: 0;
  padding: 0.75rem 0.85rem;
  border-radius: 0.45rem;
  border-color: color-mix(in srgb, var(--cts-orange) 28%, var(--cts-border));
  background: color-mix(in srgb, var(--cts-cream) 80%, #fff);
}

.product-page--cut-to-size .cts-clarity p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.45;
}

.product-page--cut-to-size .cts-clarity p + p {
  margin-top: 0.4rem;
}

.product-page--cut-to-size .product-form__thickness-first {
  max-width: none;
  margin-block: 0;
}

.product-page--cut-to-size .product-form__thickness-first .field__label,
.product-page--cut-to-size .cts-calculator-card .field__label,
.product-page--cut-to-size .product-opc-host label,
.product-page--cut-to-size .product-opc-host .form-label {
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--cts-green-deep);
}

.product-page--cut-to-size .product-form__thickness-first .field__input,
.product-page--cut-to-size .cts-calculator-card .field__input,
.product-page--cut-to-size .product-opc-host input[type='number'],
.product-page--cut-to-size .product-opc-host input[type='text'],
.product-page--cut-to-size .product-opc-host select,
.product-page--cut-to-size .product-opc-host textarea {
  min-height: 3rem;
  padding: 0.7rem 0.85rem;
  border: 1px solid color-mix(in srgb, var(--cts-green) 22%, #cfc8bd);
  border-radius: 0.45rem;
  background: #fff;
  font-size: 1rem;
}

.product-page--cut-to-size .product-opc-host input[type='number'],
.product-page--cut-to-size .product-opc-host input[type='text'],
.product-page--cut-to-size .product-opc-host select,
.product-page--cut-to-size .product-opc-host textarea {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.product-page--cut-to-size .product-opc-host .final_price_wrapper,
.product-page--cut-to-size .cut-to-size__result {
  display: block;
  margin-top: var(--space-3);
  padding: 0.85rem 1rem;
  border-radius: 0.5rem;
  border: 1px solid color-mix(in srgb, var(--cts-orange) 40%, transparent);
  background: color-mix(in srgb, var(--cts-orange) 10%, #fff);
  color: var(--cts-green-deep);
  font-size: 1.15rem;
  font-weight: 700;
}

.product-page--cut-to-size .product-opc-host .final_price_el {
  padding: 0;
  border: 0;
  background: transparent;
  font-size: inherit;
  font-weight: inherit;
}

/* Trust strip */
.product-page--cut-to-size .cts-trust-strip {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.55rem;
  background: var(--cts-green);
  color: var(--cts-cream);
}

.product-page--cut-to-size .cts-trust-strip__grid {
  display: grid;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.product-page--cut-to-size .cts-trust-strip__grid li {
  display: grid;
  gap: 0.15rem;
}

.product-page--cut-to-size .cts-trust-strip__title {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #fff;
}

.product-page--cut-to-size .cts-trust-strip__text {
  font-size: var(--step--1);
  line-height: 1.35;
  color: color-mix(in srgb, var(--cts-cream) 82%, transparent);
}

/* Add to basket */
.product-page--cut-to-size .product-form [data-add-to-basket] {
  width: 100%;
  justify-content: center;
  min-height: 3.25rem;
  padding-block: 0.95rem;
  border-color: var(--cts-green-deep);
  background: var(--cts-green-deep);
  color: #fff;
  font-size: 1.05rem;
  font-weight: 700;
  border-radius: 0.5rem;
}

.product-page--cut-to-size .product-form [data-add-to-basket]:hover:not(:disabled),
.product-page--cut-to-size .product-form [data-add-to-basket]:focus-visible:not(:disabled) {
  background: var(--cts-green);
  border-color: var(--cts-green);
  filter: none;
}

.product-page--cut-to-size .cts-atc-reassurance {
  margin: 0.45rem 0 0;
  text-align: center;
  color: color-mix(in srgb, var(--cts-green-deep) 70%, transparent);
  font-size: 0.82rem;
}

.product-page--cut-to-size .product-form__quantity {
  max-width: 8rem;
}

/* Delivery information card */
.product-page--cut-to-size .cts-delivery-card {
  margin: 0;
  padding: 0.9rem 1rem;
  border: 1px solid color-mix(in srgb, var(--cts-orange) 35%, var(--cts-border));
  border-radius: 0.55rem;
  background: color-mix(in srgb, var(--cts-cream) 70%, #fff);
  box-shadow: none;
}

.product-page--cut-to-size .cts-delivery-card p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--cts-green-deep) 88%, transparent);
}

.product-page--cut-to-size .product-trust-links {
  gap: 0.55rem;
  font-size: var(--step--1);
}

/* Lower content */
.product-page--cut-to-size .cts-lower-section {
  width: min(100%, 52rem);
  max-width: 52rem;
  margin-inline: auto;
  padding: 1.35rem 0 0;
  border-block-start: 1px solid var(--cts-border);
}

.product-page--cut-to-size .cts-lower-section h2 {
  margin: 0 0 0.75rem;
  color: var(--cts-green-deep);
  font-size: clamp(1.25rem, 1.05rem + 0.7vw, 1.6rem);
  line-height: 1.25;
}

.product-page--cut-to-size .cts-lower-section p,
.product-page--cut-to-size .cts-lower-section li,
.product-page--cut-to-size .cts-lower-section .rte {
  font-size: 1rem;
  line-height: 1.65;
}

.product-page--cut-to-size .product-seo-section.cts-lower-section .rte h2 {
  margin: 1.75rem 0 0.75rem;
  padding-top: 1.25rem;
  border-block-start: 1px solid var(--cts-border);
  color: var(--cts-green-deep);
  font-size: clamp(1.2rem, 1.05rem + 0.55vw, 1.45rem);
}

.product-page--cut-to-size .product-seo-section.cts-lower-section .rte h2:first-child {
  margin-top: 0;
  padding-top: 0;
  border-block-start: 0;
}

/* FAQ accordion */
.product-page--cut-to-size .faq-list--cts {
  border: 1px solid var(--cts-border);
  border-radius: 0.6rem;
  overflow: hidden;
  background: #fff;
}

.product-page--cut-to-size .faq-list--cts details {
  border-block-end: 1px solid var(--cts-border);
}

.product-page--cut-to-size .faq-list--cts details:last-child {
  border-block-end: 0;
}

.product-page--cut-to-size .faq-list--cts summary {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  min-height: 3.25rem;
  padding: 1rem 1.15rem;
  list-style: none;
  font-size: 1rem;
  font-weight: 700;
  color: var(--cts-green-deep);
  cursor: pointer;
}

.product-page--cut-to-size .faq-list--cts summary::-webkit-details-marker {
  display: none;
}

.product-page--cut-to-size .faq-list--cts summary::after {
  content: '+';
  flex: 0 0 auto;
  color: var(--cts-orange);
  font-size: 1.35rem;
  font-weight: 500;
  line-height: 1;
}

.product-page--cut-to-size .faq-list--cts details[open] summary::after {
  content: '–';
}

.product-page--cut-to-size .faq-list--cts .faq-list__answer {
  width: 100%;
  max-width: none;
  padding: 0 1.15rem 1.1rem;
  color: color-mix(in srgb, var(--cts-green-deep) 86%, transparent);
  line-height: 1.6;
}

@media (min-width: 48rem) {
  .product-page--cut-to-size .product-decision {
    grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.95fr);
    gap: var(--space-6);
  }

  .product-page--cut-to-size .cts-media-column {
    grid-column: 1;
  }

  .product-page--cut-to-size .product-summary {
    grid-column: 2;
    position: sticky;
    inset-block-start: calc(var(--header-height) + var(--space-3));
  }

  .product-page--cut-to-size .cts-trust-strip__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem 1rem;
  }
}

@media (min-width: 64rem) {
  .product-page--cut-to-size .cts-trust-strip__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .product-page--cut-to-size .product-decision--cut-to-size {
    display: flex;
    flex-direction: column;
  }

  .product-page--cut-to-size .cts-media-column {
    display: contents;
  }

  .product-page--cut-to-size .product-gallery {
    order: 1;
  }

  .product-page--cut-to-size .product-summary {
    order: 2;
  }

  .product-page--cut-to-size .cts-measure-card {
    order: 3;
  }

  .product-page--cut-to-size .product-form__quantity {
    max-width: none;
  }

  .product-page--cut-to-size .product-form__quantity .field__input,
  .product-page--cut-to-size .product-form [data-add-to-basket] {
    width: 100%;
  }

  .product-page--cut-to-size .cts-calculator-card,
  .product-page--cut-to-size .product-gallery--cut-to-size {
    margin-inline: 0;
  }
}

/* Standard vermiculite board PDP — reuses cut-to-size premium shell */
.product-page--calcium .calcium-product-lead,
.product-page--decorative .calcium-product-lead,
.product-page--verm-small .calcium-product-lead,
.product-page--config-rope .calcium-product-lead,
.product-page--black-rope-kit .calcium-product-lead {
  margin: 0;
  font-size: var(--step-0);
  line-height: 1.45;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 78%, transparent);
}

.product-page--decorative .decorative-selected-pattern {
  margin: 0.45rem 0 0;
  font-size: 0.95rem;
  line-height: 1.4;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--decorative .decorative-selected-pattern strong {
  font-weight: 800;
}

.verm-brick-dims {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.45rem;
  margin: 0 0 0.35rem;
}

.verm-brick-dims span {
  display: block;
  padding: 0.7rem 0.75rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.5rem;
  background: color-mix(in srgb, var(--cts-cream) 72%, #fff);
  color: var(--cts-green-deep);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1.25;
  text-align: center;
}

@media (max-width: 30rem) {
  .verm-brick-dims {
    grid-template-columns: 1fr;
  }
}

.product-page--cut-to-size .cts-measure-card__intro,
.product-page--cut-to-size .cts-measure-card__copy {
  margin: 0 0 0.55rem;
  color: color-mix(in srgb, var(--cts-green-deep) 86%, transparent);
  font-size: 0.92rem;
  line-height: 1.45;
}

.product-page--cut-to-size .cts-measure-card__size {
  margin: 0 0 0.7rem;
  color: var(--cts-green-deep);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.3;
}

.verm-brick-measure__layout {
  display: grid;
  gap: var(--space-5);
}

.verm-brick-measure__visual {
  display: grid;
  place-items: center;
  min-height: 12rem;
  padding: 1.2rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: color-mix(in srgb, var(--cts-cream) 70%, #fff);
}

.verm-brick-measure__brick {
  position: relative;
  width: min(16rem, 72%);
  aspect-ratio: 230 / 114;
  border: 2px solid var(--cts-green-deep);
  border-radius: 0.25rem;
  background: color-mix(in srgb, #d8c3a3 70%, #fff);
  box-shadow: 0.55rem 0.45rem 0 0 color-mix(in srgb, var(--cts-green-deep) 18%, transparent);
}

.verm-brick-measure__w,
.verm-brick-measure__h,
.verm-brick-measure__t {
  position: absolute;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  color: var(--cts-green-deep);
  text-transform: uppercase;
}

.verm-brick-measure__w {
  left: 50%;
  bottom: calc(100% + 0.35rem);
  transform: translateX(-50%);
}

.verm-brick-measure__h {
  top: 50%;
  left: calc(100% + 0.4rem);
  transform: translateY(-50%);
  writing-mode: vertical-rl;
}

.verm-brick-measure__t {
  right: 0.35rem;
  bottom: 0.35rem;
}

.verm-brick-measure__steps {
  margin: 0;
  padding-inline-start: 1.2rem;
}

.verm-brick-measure__steps li {
  margin: 0 0 0.45rem;
  color: color-mix(in srgb, var(--cts-green-deep) 88%, transparent);
  line-height: 1.45;
}

.verm-brick-measure__note,
.verm-brick-measure__help {
  margin: 0.85rem 0 0;
  line-height: 1.5;
}

.verm-brick-measure__help a {
  font-weight: 700;
  color: var(--cts-green-deep);
}

@media (min-width: 48rem) {
  .verm-brick-measure__layout {
    grid-template-columns: minmax(14rem, 18rem) minmax(0, 1fr);
    align-items: center;
  }
}

.product-page--calcium .calcium-benefits__grid {
  grid-template-columns: 1fr;
  text-align: left;
}

.product-page--calcium .calcium-benefits__grid li {
  display: grid;
  gap: 0.2rem;
  text-align: left;
}

.product-page--calcium .calcium-benefits__grid strong {
  display: block;
  font-size: 0.72rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.product-page--calcium .calcium-benefits__grid span {
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4;
  text-transform: none;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 78%, transparent);
}

.product-page--calcium .calcium-specs__list,
.product-page--verm-standard .calcium-specs__list {
  display: grid;
  gap: 0.65rem;
  margin: 0;
}

.product-page--calcium .calcium-specs__list div,
.product-page--verm-standard .calcium-specs__list div {
  display: grid;
  grid-template-columns: minmax(9rem, 14rem) minmax(0, 1fr);
  gap: 0.4rem 1rem;
}

.product-page--calcium .calcium-specs__list dt,
.product-page--verm-standard .calcium-specs__list dt {
  margin: 0;
  font-weight: 700;
}

.product-page--calcium .calcium-specs__list dd,
.product-page--verm-standard .calcium-specs__list dd {
  margin: 0;
}

@media (min-width: 48rem) {
  .product-page--calcium .calcium-benefits__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem) {
  .product-page--calcium .calcium-benefits__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.product-page--verm-standard .verm-standard-benefits {
  margin: 0;
}

.product-page--verm-standard .verm-standard-benefits__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.45rem 0.65rem;
  margin: 0;
  padding: 0.7rem 0.8rem;
  list-style: none;
  border: 1px solid var(--cts-border);
  border-radius: 0.55rem;
  background: color-mix(in srgb, var(--cts-cream) 72%, #fff);
}

.product-page--verm-standard .verm-standard-benefits__grid li {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.045em;
  line-height: 1.25;
  color: var(--cts-green-deep);
  text-align: center;
}

.product-page--verm-standard .cts-measure-card__steps li::before {
  grid-row: 1;
}

.product-page--verm-standard .product-gallery--verm-standard .product-gallery__item--primary img,
.product-page--verm-standard .product-gallery--compact .product-gallery__item--primary img {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 0.65rem;
}

@media (min-width: 48rem) {
  .product-page--verm-standard .verm-standard-benefits__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Standard vermiculite board — lower overview cards */
.product-page--verm-standard .product-overview--verm-standard > h2 {
  margin-block-end: var(--space-5);
  color: var(--cts-green-deep);
}

.product-page--verm-standard .verm-overview {
  display: grid;
  gap: var(--space-5);
}

.product-page--verm-standard .verm-overview__card {
  margin: 0;
  padding: 1.25rem 1.3rem 1.35rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--cts-green-deep) 5%, transparent);
  border-inline-start: 3px solid var(--cts-green);
}

.product-page--verm-standard .verm-overview__title {
  margin: 0 0 0.85rem;
  color: var(--cts-green-deep);
  font-size: clamp(1.05rem, 0.95rem + 0.4vw, 1.25rem);
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.product-page--verm-standard .verm-overview__card p {
  margin: 0 0 0.75rem;
  color: color-mix(in srgb, var(--cts-green-deep) 88%, transparent);
  font-size: var(--step-0);
  line-height: 1.6;
}

.product-page--verm-standard .verm-overview__card p:last-child {
  margin-block-end: 0;
}

.product-page--verm-standard .verm-overview__list {
  display: grid;
  gap: 0.45rem;
  margin: 0.15rem 0 0;
  padding: 0;
  list-style: none;
}

.product-page--verm-standard .verm-overview__list li {
  position: relative;
  margin: 0;
  padding-inline-start: 1.15rem;
  color: color-mix(in srgb, var(--cts-green-deep) 90%, transparent);
  font-size: var(--step-0);
  line-height: 1.45;
}

.product-page--verm-standard .verm-overview__list li::before {
  content: '';
  position: absolute;
  inset-block-start: 0.55em;
  inset-inline-start: 0;
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 999px;
  background: var(--cts-orange);
}

.product-page--verm-standard .verm-overview__note {
  margin-top: 0.95rem;
  padding-top: 0.85rem;
  border-top: 1px solid var(--cts-border);
  font-size: var(--step--1);
  line-height: 1.55;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, transparent);
}

.product-page--verm-standard .verm-overview__note + .verm-overview__note {
  margin-top: 0.65rem;
  padding-top: 0;
  border-top: 0;
}

@media (min-width: 48rem) {
  .product-page--verm-standard .verm-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-5);
  }
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits {
  margin: 0;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits__grid {
  margin: 0 0 0.85rem;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .cts-measure-card__help {
  margin: 0;
}

.product-page--verm-small[data-clay-fire-bricks-product] .product-overview--verm-standard > .clay-landing {
  margin-top: 0;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing {
  display: grid;
  gap: var(--space-7);
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing h2 {
  margin: 0 0 0.75rem;
  color: var(--cts-green-deep);
  font-size: clamp(1.2rem, 1.05rem + 0.5vw, 1.45rem);
  line-height: 1.25;
  letter-spacing: 0.01em;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__intro p,
.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__split p {
  margin: 0 0 0.75rem;
  max-width: 46rem;
  color: color-mix(in srgb, var(--cts-green-deep) 88%, transparent);
  font-size: var(--step-0);
  line-height: 1.65;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__intro p:last-child,
.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__split p:last-child {
  margin-bottom: 0;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__specs {
  padding: 1.25rem 1.3rem 1.4rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--cts-green-deep) 5%, transparent);
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-use-cards {
  display: grid;
  gap: var(--space-4);
  margin: 0;
  padding: 0;
  list-style: none;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-use-cards li {
  margin: 0;
  padding: 1.05rem 1.15rem 1.15rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
  border-inline-start: 3px solid var(--cts-orange, #c45c26);
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-use-cards h3 {
  margin: 0 0 0.4rem;
  font-size: 1rem;
  color: var(--cts-green-deep);
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-use-cards p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--cts-green-deep) 84%, transparent);
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__split {
  display: grid;
  gap: var(--space-6);
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__links .rope-inline-guides {
  margin-top: 0.2rem;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__links .rope-inline-guides__card h3 {
  text-transform: none;
  letter-spacing: 0;
}

.product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.product-page--verm-small[data-clay-fire-bricks-product] .product-gallery--verm-thumbs {
  padding: 0.65rem;
}

.product-page--verm-small[data-clay-fire-bricks-product] .product-gallery--verm-thumbs .product-gallery__item--primary img,
.product-page--verm-small[data-clay-fire-bricks-product] .product-gallery--verm-thumbs .product-gallery__item:target img {
  aspect-ratio: 5 / 4;
  max-height: min(28rem, 54vh);
  width: 100%;
  object-fit: contain;
  background: #fff;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-size-note {
  padding: 0.35rem 0 0.15rem;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-size-note .h3 {
  margin: 0 0 0.2rem;
  font-size: 0.92rem;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-size-note p {
  margin: 0 0 0.3rem;
  font-size: 0.86rem;
  line-height: 1.4;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-size-note p:last-child {
  margin-bottom: 0;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-pack-summary {
  margin: 0.45rem 0 0;
  color: var(--cts-green-deep);
  font-size: 0.98rem;
  font-weight: 700;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-per-brick {
  margin: 0.2rem 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, transparent);
  font-size: 0.88rem;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.85rem;
  margin: 0.55rem 0 0;
  padding: 0;
  list-style: none;
  color: color-mix(in srgb, var(--cts-green-deep) 82%, transparent);
  font-size: 0.78rem;
  font-weight: 650;
  letter-spacing: 0.02em;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-trust-row li {
  margin: 0;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-delivery-note {
  padding: 0.55rem 0.7rem;
  border-color: var(--cts-border);
  background: transparent;
  box-shadow: none;
}

.product-page--verm-small[data-clay-fire-bricks-product] .clay-delivery-note p {
  font-size: 0.8rem;
  line-height: 1.45;
  color: color-mix(in srgb, var(--cts-green-deep) 72%, transparent);
}

@media (max-width: 47.99rem) {
  .product-page--verm-small[data-clay-fire-bricks-product] .product-gallery--verm-thumbs .product-gallery__item--primary img,
  .product-page--verm-small[data-clay-fire-bricks-product] .product-gallery--verm-thumbs .product-gallery__item:target img {
    max-height: min(17.75rem, 42vh);
    aspect-ratio: 6 / 5;
  }

  .product-page--verm-small[data-clay-fire-bricks-product] .product-summary {
    --flow-space: var(--space-4);
  }

  .product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid {
    font-size: 0.68rem;
    gap: 0.35rem;
  }
}

.product-page--verm-small[data-refractory-fire-clay] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
.product-page--verm-small[data-refractory-fire-clay] .clay-quick-ref .verm-standard-benefits__grid {
  grid-template-columns: 1fr 1fr;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-powder-steps {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.85rem;
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
  counter-reset: clay-powder;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-powder-steps li {
  display: grid;
  grid-template-columns: 1.55rem minmax(0, 1fr);
  gap: 0.2rem 0.75rem;
  align-items: start;
  min-width: 0;
  counter-increment: clay-powder;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-powder-steps li::before {
  content: counter(clay-powder);
  display: grid;
  place-items: center;
  width: 1.55rem;
  height: 1.55rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--cts-orange) 14%, #fff);
  border: 1px solid color-mix(in srgb, var(--cts-orange) 45%, transparent);
  color: var(--cts-orange);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
  grid-column: 1;
  grid-row: 1 / span 2;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-powder-steps .cts-measure-card__step-title,
.product-page--verm-small[data-refractory-fire-clay] .clay-powder-steps .cts-measure-card__step-text {
  grid-column: 2;
  min-width: 0;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-landing__cure {
  padding: var(--space-5);
  border: 1px solid var(--cts-border);
  border-radius: 0.75rem;
  background: color-mix(in srgb, var(--cts-green-deep) 4%, #fff);
}

.product-page--verm-small[data-refractory-fire-clay] .clay-powder-cure-list {
  margin: 0.75rem 0;
  padding-left: 1.2rem;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-powder-cure-list li {
  margin: 0 0 0.45rem;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-landing__safety {
  margin: var(--space-6) 0 0;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-landing__safety h2 {
  font-size: 1rem;
  font-weight: 650;
  margin: 0 0 0.5rem;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, transparent);
}

.product-page--verm-small[data-refractory-fire-clay] .clay-landing__safety p {
  margin: 0 0 0.55rem;
  max-width: 42rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: color-mix(in srgb, var(--cts-green-deep) 72%, transparent);
}

.product-page--verm-small[data-refractory-fire-clay] .clay-landing__safety p:last-child {
  margin-bottom: 0;
}

.product-page--verm-small[data-refractory-fire-clay] .clay-powder-disclaimer {
  margin: var(--space-7) 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 62%, transparent);
  font-size: 0.82rem;
  line-height: 1.5;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
.product-page--verm-small[data-ceramic-fibre-blanket] .clay-quick-ref .verm-standard-benefits__grid {
  grid-template-columns: 1fr 1fr;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .fibre-selected-size {
  margin: 0.4rem 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, transparent);
  font-size: 0.88rem;
  line-height: 1.4;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .fibre-atc-note {
  margin: 0.45rem 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 68%, transparent);
  font-size: 0.82rem;
  line-height: 1.4;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-powder-steps {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.85rem;
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
  counter-reset: clay-powder;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-powder-steps li {
  display: grid;
  grid-template-columns: 1.55rem minmax(0, 1fr);
  column-gap: 0.7rem;
  align-items: start;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-powder-steps li::before {
  grid-column: 1;
  grid-row: 1 / span 2;
  counter-increment: clay-powder;
  content: counter(clay-powder);
  color: var(--cts-orange, #c45c26);
  font-weight: 750;
  line-height: 1.35;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-powder-steps .cts-measure-card__step-title,
.product-page--verm-small[data-ceramic-fibre-blanket] .clay-powder-steps .cts-measure-card__step-text {
  grid-column: 2;
  min-width: 0;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-powder-cure-list {
  margin: 0.75rem 0;
  padding-left: 1.2rem;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-powder-cure-list li {
  margin: 0 0 0.45rem;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-landing__safety {
  margin: var(--space-6) 0 0;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-landing__safety h2 {
  font-size: 1rem;
  font-weight: 650;
  margin: 0 0 0.5rem;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, transparent);
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-landing__safety p {
  margin: 0 0 0.55rem;
  max-width: 42rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: color-mix(in srgb, var(--cts-green-deep) 72%, transparent);
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-landing__safety p:last-child {
  margin-bottom: 0;
}

.product-page--verm-small[data-ceramic-fibre-blanket] .clay-powder-disclaimer {
  margin: var(--space-7) 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 62%, transparent);
  font-size: 0.82rem;
  line-height: 1.5;
}

.product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
.product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .clay-quick-ref .verm-standard-benefits__grid {
  grid-template-columns: 1fr 1fr;
  font-size: inherit;
  gap: 0.5rem 0.7rem;
}

.product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid li,
.product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .clay-quick-ref .verm-standard-benefits__grid li {
  font-size: 0.78rem;
  letter-spacing: 0.03em;
  line-height: 1.3;
}

.product-page--calcium .calcium-atc-note strong {
  display: block;
  margin-bottom: 0.2rem;
  color: var(--cts-green-deep);
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.product-page--calcium .product-summary h1 {
  overflow-wrap: anywhere;
  hyphens: manual;
}

.product-page--calcium .fibre-selected-size {
  margin: 0.4rem 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, transparent);
  font-size: 0.88rem;
  line-height: 1.4;
}

.product-page--calcium .fibre-atc-note {
  margin: 0.55rem 0 0;
  max-width: 38rem;
  color: color-mix(in srgb, var(--cts-green-deep) 68%, transparent);
  font-size: 0.82rem;
  line-height: 1.45;
}

.product-page--calcium .clay-powder-steps {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.85rem;
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
  counter-reset: clay-powder;
}

.product-page--calcium .clay-powder-steps li {
  display: grid;
  grid-template-columns: 1.55rem minmax(0, 1fr);
  column-gap: 0.7rem;
  align-items: start;
}

.product-page--calcium .clay-powder-steps li::before {
  grid-column: 1;
  grid-row: 1 / span 2;
  counter-increment: clay-powder;
  content: counter(clay-powder);
  color: var(--cts-orange, #c45c26);
  font-weight: 750;
  line-height: 1.35;
}

.product-page--calcium .clay-powder-steps .cts-measure-card__step-title,
.product-page--calcium .clay-powder-steps .cts-measure-card__step-text {
  grid-column: 2;
  min-width: 0;
}

}

.product-page--pizza-kit.product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
.product-page--pizza-kit.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits__grid {
  grid-template-columns: 1fr 1fr;
  font-size: inherit;
  gap: 0.5rem 0.7rem;
}

.product-page--pizza-kit.product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid li,
.product-page--pizza-kit.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits__grid li {
  font-size: 0.74rem;
  letter-spacing: 0.02em;
  line-height: 1.3;
  white-space: normal;
  overflow-wrap: break-word;
}

.product-page--pizza-kit .product-summary h1 {
  overflow-wrap: anywhere;
  hyphens: manual;
}

.product-page--pizza-kit .pizza-kit-included {
  margin: 0.15rem 0 0.35rem;
  padding: 0.85rem 1rem 0.95rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
}

.product-page--pizza-kit .pizza-kit-included .rope-kit-included__title {
  margin: 0 0 0.55rem;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--pizza-kit .pizza-kit-included .rope-kit-included__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}

.product-page--pizza-kit .pizza-kit-included .rope-kit-included__list li {
  position: relative;
  padding-inline-start: 1.15rem;
  font-size: 0.95rem;
  font-weight: 650;
  line-height: 1.4;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--pizza-kit .pizza-kit-included .rope-kit-included__list li::before {
  content: "•";
  position: absolute;
  inset-inline-start: 0;
  font-weight: 700;
  color: var(--cts-orange, #c45c26);
}

.product-page--pizza-kit .pizza-kit-included__note {
  margin: 0.55rem 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 70%, transparent);
  font-size: 0.72rem;
  font-weight: 650;
  letter-spacing: 0.04em;
  line-height: 1.35;
  text-transform: uppercase;
}

.product-page--pizza-kit .fibre-atc-note {
  margin: 0.55rem 0 0;
  max-width: 38rem;
  color: color-mix(in srgb, var(--cts-green-deep) 68%, transparent);
  font-size: 0.82rem;
  line-height: 1.45;
}

.product-page--pizza-kit .calcium-atc-note strong {
  display: block;
  margin-bottom: 0.2rem;
  color: var(--cts-green-deep);
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.product-page--pizza-kit .clay-powder-steps {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.85rem;
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
  counter-reset: clay-powder;
}

.product-page--pizza-kit .clay-powder-steps li {
  display: grid;
  grid-template-columns: 1.55rem minmax(0, 1fr);
  column-gap: 0.7rem;
  align-items: start;
}

.product-page--pizza-kit .clay-powder-steps li::before {
  grid-column: 1;
  grid-row: 1 / span 2;
  counter-increment: clay-powder;
  content: counter(clay-powder);
  color: var(--cts-orange, #c45c26);
  font-weight: 750;
  line-height: 1.35;
}

.product-page--pizza-kit .clay-powder-steps .cts-measure-card__step-title,
.product-page--pizza-kit .clay-powder-steps .cts-measure-card__step-text {
  grid-column: 2;
  min-width: 0;
}

.product-page--pizza-kit .clay-landing__cure,
.product-page--pizza-kit .clay-landing__safety {
  padding: 1.15rem 1.25rem 1.3rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
}

.product-page--pizza-kit .clay-landing__safety h2,
.product-page--pizza-kit .clay-landing__cure h2 {
  margin: 0 0 0.65rem;
}

.product-page--pizza-kit .clay-landing__safety p,
.product-page--pizza-kit .clay-landing__cure p {
  margin: 0 0 0.7rem;
  max-width: 46rem;
}

.product-page--pizza-kit .clay-landing__safety p:last-child,
.product-page--pizza-kit .clay-landing__cure p:last-child {
  margin-bottom: 0;
}

.product-page--pizza-kit .clay-powder-disclaimer {
  margin: var(--space-7) 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 62%, transparent);
  font-size: 0.82rem;
  line-height: 1.5;
}

@media (min-width: 48rem) {
  .product-page--pizza-kit.product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
  .product-page--pizza-kit.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .product-page--pizza-kit.product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
  .product-page--pizza-kit.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits__grid {
    grid-template-columns: 1fr 1fr;
  }

  .product-page--pizza-kit .product-form .product-form__quantity,
  .product-page--pizza-kit .product-form .button--primary {
    width: 100%;
    max-width: none;
  }
}

.product-page--calcium .clay-powder-disclaimer {
  margin: var(--space-7) 0 0;
  color: color-mix(in srgb, var(--cts-green-deep) 62%, transparent);
  font-size: 0.82rem;
  line-height: 1.5;
}

@media (min-width: 48rem) {
  .product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .clay-quick-ref .verm-standard-benefits__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
  .product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .clay-quick-ref .verm-standard-benefits__grid {
    grid-template-columns: 1fr 1fr;
    font-size: inherit;
  }

  .product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid li,
  .product-page--calcium.product-page--verm-small[data-calcium-silicate-product] .clay-quick-ref .verm-standard-benefits__grid li {
    font-size: 0.76rem;
  }

  .product-page--calcium .product-form .field--verm-variant,
  .product-page--calcium .product-form .product-form__quantity,
  .product-page--calcium .product-form .button--primary {
    width: 100%;
    max-width: none;
  }

  .product-page--calcium .product-summary h1 {
    overflow-wrap: anywhere;
  }
}

@media (min-width: 48rem) {
  .product-page--verm-small[data-clay-fire-bricks-product] .clay-use-cards,
  .product-page--verm-small[data-clay-fire-bricks-product] .clay-landing__split {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 40rem) {
  .product-page--verm-small[data-clay-fire-bricks-product] .calcium-specs__list div {
    grid-template-columns: 1fr;
    gap: 0.15rem;
  }
}

/* Small vermiculite boards: keep every image via thumbs, not a stacked image wall */
.product-page--verm-small .product-gallery--verm-thumbs {
  margin: 0;
  padding: var(--space-3);
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--cts-green-deep) 5%, transparent);
}

.product-page--verm-small .product-gallery--verm-thumbs .product-gallery__item:not(.product-gallery__item--primary) {
  display: none;
}

.product-page--verm-small .product-gallery--verm-thumbs .product-gallery__item:target {
  display: block;
}

.product-page--verm-small .product-gallery--verm-thumbs:has(.product-gallery__item:not(.product-gallery__item--primary):target) .product-gallery__item--primary {
  display: none;
}

.product-page--verm-small .product-gallery--verm-thumbs .product-gallery__item--primary img,
.product-page--verm-small .product-gallery--verm-thumbs .product-gallery__item:target img {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 0.5rem;
}

/* Fire bricks: show full images without cropping */
.product-page--verm-small[data-verm-fire-bricks-product] .product-gallery--verm-thumbs .product-gallery__item img,
.product-page--verm-small[data-verm-fire-bricks-product] .product-gallery--verm-thumbs .product-gallery__item--primary img,
.product-page--verm-small[data-verm-fire-bricks-product] .product-gallery--verm-thumbs .product-gallery__item:target img,
.product-page--verm-small[data-verm-fire-bricks-product] .product-gallery__thumbs--verm img {
  object-fit: contain;
  background: #fff;
}

.product-page--verm-small .product-gallery__thumbs--verm {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(4.25rem, 1fr));
  gap: 0.5rem;
  margin: var(--space-3) 0 0;
  padding: 0;
  list-style: none;
}

.product-page--verm-small .product-gallery__thumbs--verm a {
  display: block;
  overflow: hidden;
  border: 1px solid var(--cts-border);
  border-radius: 0.4rem;
  background: #fff;
}

.product-page--verm-small .product-gallery__thumbs--verm img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}

.product-page--verm-standard .field--verm-variant .field__label {
  font-weight: 700;
  color: var(--cts-green-deep);
}

.product-page--verm-standard .field__input--verm-variant {
  min-height: 3rem;
  padding-block: 0.7rem;
  font-size: 0.98rem;
  line-height: 1.35;
  border-color: var(--cts-border);
  color: var(--cts-green-deep);
}

/* Cart measurement acknowledgement (cut-to-size baskets only) */
.cart-summary__cts-ack {
  margin-block: var(--space-4);
  max-width: 40rem;
}

.cart-summary__cts-ack .field__checkbox-row {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
}

.cart-summary__cts-ack .field__checkbox {
  flex: 0 0 auto;
  width: 1.25rem;
  height: 1.25rem;
  margin-top: 0.2rem;
  accent-color: var(--color-action, currentColor);
}

.cart-summary__cts-ack .field__label {
  margin: 0;
  font-weight: 500;
  line-height: 1.4;
  cursor: pointer;
}

.cart-summary__cts-ack .field__help {
  margin-block-start: var(--space-2);
  margin-inline-start: calc(1.25rem + var(--space-3));
}

.cart-summary__cts-ack .field__error {
  margin-block-start: var(--space-2);
  margin-inline-start: calc(1.25rem + var(--space-3));
  color: var(--colour-danger, #8a1f11);
  font-weight: 600;
}

/*
  Cut-to-size PDP only: suppress Buy it now / Shop Pay / dynamic checkout so
  customers must pass through the cart acknowledgement. Standard products unaffected.
*/
body.tsw-cut-to-size-product .shopify-payment-button,
body.tsw-cut-to-size-product .additional-checkout-buttons,
body.tsw-cut-to-size-product [data-shopify-buttoncontainer],
body.tsw-cut-to-size-product accelerated-checkout,
body.tsw-cut-to-size-product .dynamic-checkout__content,
body.tsw-cut-to-size-product .shopify-payment-button__button,
[data-cut-to-size-product] .shopify-payment-button,
[data-cut-to-size-product] .additional-checkout-buttons,
[data-cut-to-size-product] [data-shopify-buttoncontainer],
[data-cut-to-size-product] accelerated-checkout,
[data-cut-to-size-product] .dynamic-checkout__content {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Arada / Villager / Hamlet replacement liner buy-box + dimension visual */
.arada-buybox-compat,
.arada-buybox-partial {
  margin: 0 0 var(--space-4);
  padding: 0.85rem 1rem;
  border: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 18%, transparent);
  border-radius: 0.4rem;
  background: color-mix(in srgb, var(--cts-cream, #f7f4ef) 88%, white);
}

.arada-buybox-partial {
  border-color: color-mix(in srgb, var(--cts-orange, #c45c26) 55%, transparent);
  background: color-mix(in srgb, var(--cts-orange, #c45c26) 10%, white);
}

.arada-buybox-partial__badge {
  margin: 0 0 0.35rem;
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--cts-orange, #c45c26);
}

.arada-buybox-partial__text {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.45;
}

.arada-buybox-partial__text strong {
  color: var(--cts-orange, #c45c26);
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.arada-buybox-compat__heading {
  margin: 0 0 0.55rem;
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.arada-buybox-compat__list {
  margin: 0 0 0.65rem;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.28rem;
}

.arada-buybox-compat__list li {
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
  font-size: var(--step--1);
  line-height: 1.35;
}

.arada-buybox-compat__tick {
  color: var(--cts-orange, #c45c26);
  font-weight: 700;
  line-height: 1.35;
}

.arada-buybox-compat__model--solo {
  font-size: var(--step-0);
  font-weight: 600;
}

.arada-buybox-compat__note,
.arada-buybox-compat__fallback,
.arada-buybox-help {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.45;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 78%, transparent);
}

.arada-buybox-help {
  margin-top: var(--space-3);
}

.arada-product-qual {
  margin: 0.15rem 0 0.65rem;
  font-size: clamp(0.72rem, 2.2vw, 0.82rem);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--cts-green-deep, #2f3b2f);
}

.arada-product-qual--partial {
  color: var(--cts-orange, #c45c26);
}

.product-page--cut-to-size .arada-benefits {
  margin: 0 0 0.85rem;
}

.product-page--cut-to-size .product-summary {
  --flow-space: 0.85rem;
}

.product-page--cut-to-size.product-page--verm-small .product-price-block {
  margin-top: 0.15rem;
}

.arada-overview-rte--premium {
  display: grid;
  gap: 1.1rem;
}

.arada-overview-rte--premium .tsw-arada-liner {
  display: grid;
  gap: 1rem;
}

.arada-overview-rte--premium h3 {
  margin: 0 0 0.45rem;
  font-size: var(--step-0);
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--cts-green-deep, #2f3b2f);
}

.arada-overview-rte--premium .arada-overview__trust {
  margin: 0;
  padding: 0.75rem 0.9rem;
  border-left: 3px solid var(--cts-green-deep, #2f3b2f);
  background: color-mix(in srgb, var(--cts-cream, #f7f4ef) 80%, white);
}

.arada-overview-rte--premium .arada-overview__legal {
  margin: 0;
  font-size: var(--step--1);
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 78%, transparent);
}

.arada-overview-rte--premium ul {
  margin: 0.25rem 0 0;
}

.arada-overview-rte--premium .arada-overview__section {
  margin: 0;
  padding: 0.85rem 0 0;
  border-top: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 12%, transparent);
}

.arada-overview-rte--premium .arada-overview__section:first-of-type {
  border-top: 0;
  padding-top: 0;
}

.arada-dim-visual {
  background: #faf8f4;
  border: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 12%, transparent);
}

.arada-dim-visual__canvas {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
  min-height: min(78vw, 32rem);
  padding: 1.25rem 1rem 1.15rem;
  background: #faf8f4;
}

.arada-dim-visual__format {
  margin: 0 auto;
  max-width: 100%;
  padding: 0.35rem 0.8rem;
  border-radius: 0.25rem;
  font-size: clamp(0.78rem, 2.8vw, 0.95rem);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  color: var(--cts-green-deep, #2f3b2f);
  background: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 8%, white);
}

.arada-dim-visual__format--partial {
  color: var(--cts-orange, #c45c26);
  background: color-mix(in srgb, var(--cts-orange, #c45c26) 12%, white);
}

.arada-dim-visual__boards {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 1.85rem;
  align-items: flex-end;
  justify-content: center;
}

.arada-dim-visual__boards--single .arada-dim-visual__group {
  max-width: 16rem;
  flex: 0 1 16rem;
}

.arada-dim-visual__boards--single .arada-dim-visual__stack {
  width: clamp(9rem, 42vw, 15rem);
  max-height: 14rem;
}

.arada-dim-visual__group {
  display: grid;
  gap: 0.65rem;
  justify-items: center;
  min-width: 6.5rem;
  max-width: 12rem;
  flex: 1 1 7.5rem;
}

.arada-dim-visual__stack {
  position: relative;
  width: clamp(5.5rem, var(--board-w), 11rem);
  aspect-ratio: var(--board-aspect, 1.25 / 1);
  max-height: 10.5rem;
  filter: drop-shadow(0 4px 7px color-mix(in srgb, #5c4630 14%, transparent));
}

.arada-dim-visual__board {
  position: absolute;
  inset: 0;
  border-radius: 0.1rem;
  background-color: #e2cba8;
  background-image:
    linear-gradient(180deg, rgba(255, 248, 232, 0.08), rgba(120, 90, 55, 0.1)),
    url("arada-verm-face-texture.png");
  background-size: cover, cover;
  background-position: center, center;
  background-repeat: no-repeat;
  background-blend-mode: soft-light, normal;
  /* Subtle inset bevel only — no protruding layers, no second board */
  box-shadow:
    inset -3px 0 0 rgba(100, 78, 48, 0.18),
    inset 0 -4px 0 rgba(85, 65, 38, 0.22);
  border: 1px solid color-mix(in srgb, #6b5535 30%, transparent);
}

/* Remove previous stacked-edge pseudo elements that created white wedges */
.arada-dim-visual__board::before,
.arada-dim-visual__board::after {
  content: none;
  display: none;
}

.arada-dim-visual__label {
  margin: 0;
  text-align: center;
  font-size: clamp(0.82rem, 2.7vw, 0.98rem);
  line-height: 1.3;
  color: var(--cts-green-deep, #2f3b2f);
}

.arada-dim-visual__label strong {
  display: block;
  font-weight: 700;
}

.arada-dim-visual__qty {
  display: inline-block;
  margin-top: 0.2rem;
  padding: 0.14rem 0.5rem;
  border-radius: 999px;
  font-size: 0.85em;
  font-weight: 800;
  letter-spacing: 0.02em;
  color: #fff;
  background: var(--cts-orange, #c45c26);
}

.arada-dim-visual__footnote,
.arada-dim-visual__fallback {
  margin: 0;
  text-align: center;
  font-size: var(--step--1);
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 70%, transparent);
}

.arada-dim-visual__thumb {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 1;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--cts-green-deep, #2f3b2f);
  background: #e8d7b5;
  border: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 18%, transparent);
}

@media (min-width: 48rem) {
  .arada-dim-visual__canvas {
    min-height: 32rem;
    padding: 1.75rem 1.5rem 1.4rem;
    gap: 1.25rem;
  }

  .arada-dim-visual__group {
    max-width: 13.5rem;
  }

  .arada-dim-visual__stack {
    max-height: 12rem;
  }

  .arada-dim-visual__boards {
    gap: 1.75rem 2.25rem;
  }
}

@media (max-width: 47.99rem) {
  .product-page--verm-small .arada-dim-visual__canvas,
  .product-page--cut-to-size .arada-dim-visual__canvas {
    min-height: min(92vw, 36rem);
  }

  .product-page--cut-to-size .arada-dim-visual,
  .product-page--verm-small .arada-dim-visual {
    width: 100%;
  }

  .arada-dim-visual__label {
    font-size: clamp(0.88rem, 3.4vw, 1.05rem);
  }

  .arada-dim-visual__format {
    font-size: clamp(0.85rem, 3.2vw, 1rem);
  }
}

/* Arada / Villager / Hamlet / Aarrow collection shop UX */
.collection-hero__tagline--sub {
  max-width: 36rem;
  font-size: clamp(0.92rem, 2.4vw, 1.05rem);
  line-height: 1.45;
  opacity: 0.92;
}

.arada-coll-finder {
  display: grid;
  gap: 0.65rem;
  padding: 1rem 1.1rem;
  border-radius: 0.55rem;
  border: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 16%, transparent);
  background: color-mix(in srgb, var(--cts-cream, #f7f4ef) 85%, white);
}

.arada-coll-finder__label {
  margin: 0;
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--cts-green-deep, #2f3b2f);
}

.arada-coll-finder__input {
  width: 100%;
  min-height: 3rem;
  padding: 0.7rem 0.9rem;
  border: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 28%, transparent);
  border-radius: 0.4rem;
  font: inherit;
  background: #fff;
}

.arada-coll-finder__input:focus {
  outline: 2px solid var(--cts-orange, #c45c26);
  outline-offset: 2px;
}

.arada-coll-finder__hint {
  margin: 0;
  font-size: var(--step--1);
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 72%, transparent);
}

.arada-coll-finder__jumps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.arada-coll-finder__jumps a {
  display: inline-flex;
  align-items: center;
  min-height: 2.25rem;
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 20%, transparent);
  background: #fff;
  color: var(--cts-green-deep, #2f3b2f);
  font-size: 0.82rem;
  font-weight: 650;
  text-decoration: none;
}

.arada-coll-section-head {
  display: grid;
  gap: 0.2rem;
  margin: 0 0 0.55rem;
}

.arada-coll-section-head h2 {
  margin: 0;
  font-size: clamp(1.2rem, 3vw, 1.55rem);
}

.arada-coll-section-head p,
.arada-coll-subgroup {
  margin: 0;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 72%, transparent);
}

.arada-coll-subgroup {
  margin: 0 0 0.4rem;
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.arada-coll-subgroup-wrap {
  display: grid;
  gap: 0.4rem;
}

.arada-coll-subgroup-wrap[hidden] {
  display: none !important;
}

.arada-coll-featured {
  display: grid;
  gap: 0.85rem;
}

.arada-coll-featured__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(11.5rem, 1fr));
  gap: 0.85rem;
}

.arada-coll-feat-card {
  border: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 14%, transparent);
  border-radius: 0.5rem;
  background: #fff;
  overflow: hidden;
}

.arada-coll-feat-card--partial {
  border-color: color-mix(in srgb, var(--cts-orange, #c45c26) 55%, transparent);
}

.arada-coll-feat-card__link {
  display: grid;
  gap: 0.4rem;
  padding: 0.7rem;
  color: inherit;
  text-decoration: none;
}

.arada-coll-feat-card__media {
  height: 12.5rem;
  border-radius: 0.3rem;
  overflow: hidden;
  background: #faf8f4;
}

.arada-coll-feat-card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.arada-coll-badge {
  margin: 0;
  width: fit-content;
  padding: 0.22rem 0.5rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 12%, white);
  color: var(--cts-green-deep, #2f3b2f);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.arada-coll-badge--partial,
.card__badge--partial {
  background: color-mix(in srgb, var(--cts-orange, #c45c26) 18%, white) !important;
  color: var(--cts-orange, #c45c26) !important;
}

.arada-coll-feat-card__title {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.25;
}

.arada-coll-feat-card__meta {
  margin: 0;
  font-size: 0.8rem;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 68%, transparent);
}

.arada-coll-feat-card__price {
  margin: 0;
  font-weight: 700;
}

.arada-coll-shop {
  display: grid;
  gap: 1.15rem;
}

.arada-coll-group {
  display: grid;
  gap: 0.55rem;
  padding-top: 0;
}

.arada-coll-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.7rem;
  align-items: stretch;
}

.arada-coll-grid:empty {
  display: none;
}

.arada-coll-card {
  min-width: 0;
  border: 1px solid color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 14%, transparent);
  border-radius: 0.45rem;
  background: #fff;
  overflow: hidden;
  transition: border-color 0.16s ease, box-shadow 0.16s ease;
}

.arada-coll-card:hover,
.arada-coll-card:focus-within {
  border-color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 34%, transparent);
  box-shadow: 0 4px 14px color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 8%, transparent);
}

.arada-coll-card--partial {
  border-color: color-mix(in srgb, var(--cts-orange, #c45c26) 50%, transparent);
}

.arada-coll-card__link {
  display: grid;
  grid-template-rows: auto 16rem auto auto auto;
  gap: 0.35rem;
  height: 100%;
  padding: 0.6rem 0.65rem 0.7rem;
  color: inherit;
  text-decoration: none;
}

.arada-coll-card__media {
  height: 16rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #faf8f4;
  border-radius: 0.3rem;
  overflow: hidden;
}

.arada-coll-card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.arada-coll-card .arada-coll-badge {
  justify-self: start;
}

.arada-coll-card__title {
  margin: 0;
  min-height: 2.5em;
  font-size: 0.88rem;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.arada-coll-card__meta {
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.3;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 68%, transparent);
}

.arada-coll-card__price {
  margin: 0;
  margin-top: auto;
  font-size: 0.95rem;
  font-weight: 700;
}

.arada-coll-empty-note,
.arada-coll-help {
  margin-top: 0.5rem;
}

.arada-coll-card[hidden],
.arada-coll-feat-card[hidden] {
  display: none !important;
}

.arada-coll-group[data-arada-empty="true"] {
  display: none;
}

@media (max-width: 63.99rem) {
  .arada-coll-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .arada-coll-card__link,
  .arada-coll-card__media {
    height: auto;
  }

  .arada-coll-card__link {
    grid-template-rows: auto 14.5rem auto auto auto;
  }

  .arada-coll-card__media {
    height: 14.5rem;
  }
}

@media (max-width: 47.99rem) {
  .arada-coll-finder {
    padding: 0.85rem;
  }

  .arada-coll-featured__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
  }

  .arada-coll-grid {
    grid-template-columns: 1fr;
  }

  .arada-coll-card__link {
    grid-template-rows: auto 14rem auto auto auto;
  }

  .arada-coll-card__media {
    height: 14rem;
  }

  .arada-coll-feat-card__media {
    height: 11rem;
  }

  .collection-page--vermiculite .page-width.flow {
    --flow-space: var(--space-5);
  }
}

@media (min-width: 30rem) and (max-width: 47.99rem) {
  .arada-coll-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.product-page--config-rope .rope-builder {
  display: grid;
  gap: 0.85rem;
  margin: 0 0 var(--space-4);
  padding: 1rem 1rem 1.1rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: color-mix(in srgb, var(--cts-cream) 72%, #fff);
}

.product-page--config-rope .rope-builder__label {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cts-green-deep);
}

.product-page--config-rope .rope-builder__hint {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--cts-green-deep) 78%, #000);
}

.product-page--config-rope .rope-builder__field {
  margin: 0;
}

.product-page--config-rope .rope-builder__selected {
  margin: 0.15rem 0 0;
  font-size: var(--step--1);
  line-height: 1.4;
  color: var(--cts-green-deep);
}

.product-page--config-rope .cts-trust-strip {
  margin-block: 0.15rem 0.35rem;
}

.product-page--config-rope .rope-temp-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0;
}

.product-page--config-rope .rope-temp-badges span {
  display: inline-block;
  padding: 0.28rem 0.55rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.35rem;
  background: #fff;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--cts-green-deep);
}

@media (max-width: 47.99rem) {
  .product-page--config-rope .rope-builder {
    padding: 0.9rem;
  }
}

.collection-page--rope-kits {
  --verm-charcoal: #1c221c;
  --verm-green: #2f3d32;
  --verm-orange: #c45c26;
  --verm-cream: #f4efe6;
}

.collection-page--rope-kits > .page-width.flow {
  --flow-space: var(--space-5);
}

.collection-page--rope-kits .rope-kits-intro {
  max-width: 46rem;
}

.collection-page--rope-kits .rope-kits-intro h1 {
  margin: 0 0 var(--space-3);
  color: var(--verm-green);
}

.collection-page--rope-kits .rope-kits-intro__lead {
  margin: 0;
  font-size: var(--step-0);
  line-height: 1.5;
  color: color-mix(in srgb, var(--colour-text) 82%, transparent);
}

.collection-page--rope-kits .verm-trust-strip__title--hot {
  color: #ffd7b8;
  font-size: 0.95rem;
  letter-spacing: 0.04em;
}

.collection-page--rope-kits .collection-toolbar--compact {
  margin-block-start: var(--space-2);
  gap: var(--space-3);
}

.collection-page--rope-kits .collection-results-count {
  margin: 0;
  font-size: var(--step--1);
}

.collection-page--rope-kits .card__blurb {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--colour-text) 72%, transparent);
}

.collection-page--rope-kits .card__type {
  display: none;
}

.collection-page--rope-kits .rope-kits-guide h2,
.collection-page--rope-kits .rope-kits-seo h2,
.collection-page--rope-kits .rope-kits-faq h2 {
  margin: 0 0 var(--space-4);
  color: var(--verm-green);
}

.collection-page--rope-kits .rope-kits-guide__grid {
  display: grid;
  gap: var(--space-4);
}

.collection-page--rope-kits .rope-kits-guide__card {
  margin: 0;
  padding: 1.15rem 1.2rem 1.25rem;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  background: #fff;
  border-inline-start: 3px solid var(--verm-orange);
}

.collection-page--rope-kits .rope-kits-guide__card h3 {
  margin: 0 0 0.45rem;
  font-size: 0.82rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--verm-green);
}

.collection-page--rope-kits .rope-kits-guide__card p,
.collection-page--rope-kits .rope-kits-seo p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
}

.collection-page--rope-kits .rope-kits-seo {
  max-width: 46rem;
}

.collection-page--rope-kits .rope-kits-seo p + p {
  margin-top: 0.75rem;
}

.collection-page--rope-kits .faq-list details {
  border: 1px solid var(--colour-border);
  border-radius: 0.55rem;
  background: #fff;
  padding: 0.15rem 0.85rem;
}

.collection-page--rope-kits .faq-list details + details {
  margin-top: 0.55rem;
}

@media (min-width: 48rem) {
  .collection-page--rope-kits .rope-kits-guide__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.collection-page--rope-kits .collection-related {
  max-width: none;
}

.collection-page--rope-kits .collection-related h2 {
  margin: 0 0 var(--space-4);
  color: var(--verm-green);
}

.collection-hero--pizza-oven.collection-hero--has-media {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  aspect-ratio: auto;
  height: min(22rem, 48vw);
  max-height: min(22rem, 48vw);
}

.collection-hero--pizza-oven .collection-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 45%;
}

.collection-hero--pizza-oven .collection-hero__scrim {
  width: min(100%, 46rem);
  height: min(80%, 12rem);
  background: linear-gradient(
    to right,
    rgba(12, 10, 8, 0.78) 0%,
    rgba(12, 10, 8, 0.5) 42%,
    rgba(12, 10, 8, 0) 100%
  );
}

.collection-hero--pizza-oven .collection-hero__content {
  padding: var(--space-3) var(--space-4);
}

.collection-hero--pizza-oven h1 {
  margin: 0;
  text-shadow:
    0 1px 2px rgba(0, 0, 0, 0.85),
    0 2px 12px rgba(0, 0, 0, 0.55);
}

.collection-page--pizza-oven > .page-width.flow {
  --flow-space: var(--space-5);
}

@media (min-width: 48rem) {
  .collection-page--pizza-oven .pizza-oven-guide__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .collection-page--pizza-oven .pizza-source-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.collection-page--pizza-oven .pizza-howto {
  max-width: none;
}

.collection-page--pizza-oven .pizza-howto .verm-choice__title {
  font-size: var(--step-1);
}

.collection-page--pizza-oven .pizza-howto .verm-choice__row {
  grid-template-columns: 1fr;
}

.collection-page--pizza-oven .pizza-howto__media-svg {
  min-height: 10.5rem;
}

.collection-page--pizza-oven .pizza-howto__icon {
  width: min(100%, 14rem);
  height: auto;
}

@media (min-width: 48rem) {
  .collection-page--pizza-oven .pizza-howto .verm-choice__row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .collection-page--pizza-oven .pizza-howto .verm-choice__row .verm-choice__media {
    height: 10.5rem;
  }
}

.collection-page--pizza-oven .pizza-howto__card--supplied-photo .verm-choice__media {
  aspect-ratio: 4 / 3;
  height: auto;
  min-height: 0;
  padding: 0.55rem;
}

.collection-page--pizza-oven .pizza-howto__card--supplied-photo .verm-choice__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.oven-guide-page .pizza-guide-photo {
  max-width: 52rem;
  margin: 0 0 var(--space-5);
}

.oven-guide-page .pizza-guide-photo h2 {
  margin: 0 0 var(--space-3);
}

.oven-guide-page .pizza-guide-photo__figure {
  margin: 0;
  padding: 0;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  overflow: hidden;
  background: #fff;
}

.oven-guide-page .pizza-guide-photo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 22rem;
  object-fit: contain;
  object-position: center;
  background: #f7f4ee;
}

.oven-guide-page .pizza-guide-photo__caption {
  margin: 0;
  padding: 0.7rem 1rem 0.85rem;
  font-size: var(--step--1);
  line-height: 1.45;
  color: color-mix(in srgb, var(--colour-text) 74%, transparent);
}

.collection-page--pizza-oven .pizza-shop-ctas,
.oven-guide-page .pizza-shop-ctas {
  margin: 0 0 var(--space-5);
}

.oven-guide-page .pizza-build-guide h1 {
  margin: 0 0 var(--space-4);
  color: var(--verm-green, #2f3d32);
}

.oven-guide-page .site-kicker {
  margin: 0 0 0.65rem;
  font-size: 0.78rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--verm-green, #2f3d32);
}

.oven-guide-page .pizza-figure--wide,
.oven-guide-page .pizza-diagram-split .pizza-figure {
  width: 100%;
}

.oven-guide-page .pizza-steps h3 {
  margin: 0 0 0.35rem;
  font-size: 0.95rem;
  color: var(--verm-green, #2f3d32);
}

.oven-guide-page .faq-list details {
  border: 1px solid var(--colour-border);
  border-radius: 0.55rem;
  background: #fff;
  padding: 0.15rem 0.85rem;
}

.oven-guide-page .faq-list details + details {
  margin-top: 0.55rem;
}

.collection-page--pizza-oven .pizza-build-guide h2,
.collection-page--pizza-oven .pizza-build-guide h3 {
  margin: 0 0 var(--space-4);
  color: var(--verm-green, #2f3d32);
}

.collection-page--pizza-oven .pizza-build-guide h3 {
  margin-top: var(--space-5);
}

.collection-page--pizza-oven .pizza-build-guide__lead,
.collection-page--pizza-oven .pizza-build-guide > p,
.collection-page--pizza-oven .pizza-diagram-copy p,
.collection-page--pizza-oven .pizza-diagram-copy ul,
.collection-page--pizza-oven .pizza-build-guide__note,
.collection-page--pizza-oven .pizza-calc-card p,
.collection-page--pizza-oven .pizza-calc {
  max-width: 46rem;
}

.collection-page--pizza-oven .pizza-build-guide__lead,
.collection-page--pizza-oven .pizza-build-guide > p,
.collection-page--pizza-oven .pizza-diagram-copy p,
.collection-page--pizza-oven .pizza-build-guide__note,
.collection-page--pizza-oven .pizza-figure__caption {
  margin: 0 0 var(--space-4);
  font-size: var(--step--1);
  line-height: 1.55;
}

.collection-page--pizza-oven .pizza-build-notice {
  max-width: 46rem;
  margin: 0 0 var(--space-5);
  padding: 1.1rem 1.2rem 1.2rem;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  border-inline-start: 3px solid var(--verm-orange, #c45c26);
  background: var(--verm-cream, #f4efe6);
}

.collection-page--pizza-oven .pizza-build-notice__kicker {
  margin: 0 0 0.4rem;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--verm-green, #2f3d32);
}

.collection-page--pizza-oven .pizza-build-notice p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
}

.collection-page--pizza-oven .pizza-dims {
  margin: 0 0 var(--space-5);
  padding: 1.15rem 1.2rem 1.25rem;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  background: #fff;
}

.collection-page--pizza-oven .pizza-dims__label {
  margin: 0 0 0.75rem;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--verm-green, #2f3d32);
}

.collection-page--pizza-oven .pizza-dims__list {
  display: grid;
  gap: 0.75rem 1.25rem;
  margin: 0;
}

.collection-page--pizza-oven .pizza-dims__list dt {
  margin: 0;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--verm-green, #2f3d32);
}

.collection-page--pizza-oven .pizza-dims__list dd {
  margin: 0.2rem 0 0;
  font-size: var(--step--1);
}

@media (min-width: 48rem) {
  .collection-page--pizza-oven .pizza-dims__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.collection-page--pizza-oven .pizza-diagram-split {
  display: grid;
  gap: var(--space-4);
  margin: 0 0 var(--space-5);
  align-items: start;
}

@media (min-width: 60rem) {
  .collection-page--pizza-oven .pizza-diagram-split {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  }

  .collection-page--pizza-oven .pizza-diagram-split--stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.collection-page--pizza-oven .pizza-figure {
  margin: 0;
  padding: 1rem 1rem 1.15rem;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  background: #fff;
}

.collection-page--pizza-oven .pizza-figure__title {
  margin: 0 0 0.75rem;
  font-size: 0.82rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--verm-green, #2f3d32);
}

.collection-page--pizza-oven .pizza-svg-wrap {
  width: 100%;
  overflow: hidden;
}

.collection-page--pizza-oven .pizza-svg {
  display: block;
  width: 100%;
  height: auto;
}

.collection-page--pizza-oven .pizza-figure__caption {
  margin: 0.75rem 0 0;
}

.collection-page--pizza-oven .pizza-diagram-copy ul {
  margin: 0.5rem 0 0;
  padding-inline-start: 1.1rem;
  font-size: var(--step--1);
  line-height: 1.5;
}

.collection-page--pizza-oven .pizza-layer-key {
  margin: 0 0 var(--space-4);
  padding-inline-start: 1.2rem;
  font-size: var(--step--1);
  line-height: 1.45;
}

.collection-page--pizza-oven .pizza-layer-key li + li {
  margin-top: 0.35rem;
}

.collection-page--pizza-oven .pizza-diagram-copy h3 {
  margin-top: 0;
}

.collection-page--pizza-oven .pizza-calc-card {
  margin: 0 0 var(--space-4);
}

.collection-page--pizza-oven .pizza-calc-card p + p {
  margin-top: 0.65rem;
}

.collection-page--pizza-oven .pizza-calc {
  margin: 0.65rem 0;
  padding-inline-start: 1.2rem;
  font-size: var(--step--1);
  line-height: 1.5;
}

.collection-page--pizza-oven .pizza-calc-card a {
  font-weight: 700;
}

.collection-page--pizza-oven .pizza-table-wrap {
  width: 100%;
  margin: 0 0 var(--space-3);
}

.collection-page--pizza-oven .pizza-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  overflow: hidden;
}

.collection-page--pizza-oven .pizza-table th,
.collection-page--pizza-oven .pizza-table td {
  padding: 0.85rem 0.9rem;
  text-align: left;
  vertical-align: top;
  font-size: var(--step--1);
  line-height: 1.45;
  border-bottom: 1px solid var(--colour-border);
}

.collection-page--pizza-oven .pizza-table thead th {
  background: var(--verm-cream, #f4efe6);
  color: var(--verm-green, #2f3d32);
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.collection-page--pizza-oven .pizza-table tbody th {
  font-weight: 700;
  color: var(--verm-green, #2f3d32);
}

@media (max-width: 47.99rem) {
  .collection-page--pizza-oven .pizza-table thead {
    display: none;
  }

  .collection-page--pizza-oven .pizza-table,
  .collection-page--pizza-oven .pizza-table tbody,
  .collection-page--pizza-oven .pizza-table tr,
  .collection-page--pizza-oven .pizza-table th,
  .collection-page--pizza-oven .pizza-table td {
    display: block;
    width: 100%;
  }

  .collection-page--pizza-oven .pizza-table tr {
    padding: 0.85rem 0.9rem 1rem;
    border-bottom: 1px solid var(--colour-border);
  }

  .collection-page--pizza-oven .pizza-table th,
  .collection-page--pizza-oven .pizza-table td {
    border: 0;
    padding: 0.2rem 0;
  }

  .collection-page--pizza-oven .pizza-table td::before {
    display: block;
    margin-bottom: 0.15rem;
    font-size: 0.72rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--verm-green, #2f3d32);
    content: attr(data-label);
  }
}

.collection-page--pizza-oven .pizza-steps {
  display: grid;
  gap: var(--space-3);
  margin: 0 0 var(--space-5);
  padding: 0;
  list-style: none;
}

@media (min-width: 48rem) {
  .collection-page--pizza-oven .pizza-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.collection-page--pizza-oven .pizza-steps li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.75rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  background: #fff;
  border-inline-start: 3px solid var(--verm-orange, #c45c26);
}

.collection-page--pizza-oven .pizza-steps__num {
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--verm-green, #2f3d32);
}

.collection-page--pizza-oven .pizza-steps h4 {
  margin: 0 0 0.35rem;
  font-size: 0.95rem;
  color: var(--verm-green, #2f3d32);
}

.collection-page--pizza-oven .pizza-steps p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
}

.collection-page--pizza-oven .pizza-timeline {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem 0.35rem;
  margin: 0;
  padding: 0.25rem 0 0;
  list-style: none;
}

.collection-page--pizza-oven .pizza-timeline li {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0;
  padding: 0.35rem 0.7rem 0.35rem 0;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--verm-green, #2f3d32);
}

.collection-page--pizza-oven .pizza-timeline li:not(:last-child)::after {
  content: "→";
  margin-inline-start: 0.35rem;
  color: var(--verm-orange, #c45c26);
}

.collection-page--pizza-oven .pizza-timeline__icon {
  width: 0.7rem;
  height: 0.7rem;
  border: 1.5px solid var(--verm-green, #2f3d32);
  border-radius: 50%;
  background: var(--verm-cream, #f4efe6);
  flex: 0 0 auto;
}

.collection-page--pizza-oven .pizza-timeline__icon--last {
  background: var(--verm-green, #2f3d32);
}

@media (max-width: 47.99rem) {
  .collection-hero--pizza-oven.collection-hero--has-media {
    height: min(16rem, 58vw);
    max-height: min(16rem, 58vw);
  }
}

.rope-guide-page .rope-guide__intro {
  max-width: 46rem;
}

.rope-guide-page .rope-guide__lead {
  margin: 0;
  font-size: var(--step-0);
  line-height: 1.5;
}

.rope-guide-page .rope-guide__shop,
.rope-guide-page .rope-guide__video,
.rope-guide-page .rope-guide__steps,
.rope-guide-page .rope-guide__compare,
.rope-guide-page .rope-guide__faq {
  max-width: 52rem;
}

.rope-guide-page .rope-guide__embed,
.tsw-yt-embed {
  position: relative;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #111;
  border-radius: 0.5rem;
}

.rope-guide-page .rope-guide__embed iframe,
.tsw-yt-embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.tsw-yt {
  margin: 0 0 var(--space-6);
  max-width: 52rem;
}

.tsw-yt h2 {
  margin: 0 0 var(--space-4);
}

.rope-guide-page h2 {
  margin: 0 0 var(--space-4);
  color: var(--verm-green, #2f3d32);
}

.rope-guide-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rope-guide-links a {
  font-weight: 700;
  color: var(--verm-green, #2f3d32);
  text-underline-offset: 0.15em;
}

.rope-guide__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: var(--space-4);
}

.rope-guide__list li {
  margin: 0;
  padding: 1.05rem 1.15rem 1.15rem;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  background: #fff;
  border-inline-start: 3px solid var(--verm-orange, #c45c26);
}

.rope-guide__list h3 {
  margin: 0 0 0.4rem;
  font-size: 1rem;
  color: var(--verm-green, #2f3d32);
}

.rope-guide__list p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
}

.rope-guide-page .faq-list details {
  border: 1px solid var(--colour-border);
  border-radius: 0.55rem;
  background: #fff;
  padding: 0.15rem 0.85rem;
}

.rope-guide-page .faq-list details + details {
  margin-top: 0.55rem;
}

.rope-inline-guides {
  display: grid;
  gap: var(--space-4);
}

.rope-inline-guides__card {
  display: grid;
  gap: 0.35rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--colour-border);
  border-radius: 0.7rem;
  background: #fff;
  text-decoration: none;
  color: inherit;
  border-inline-start: 3px solid var(--verm-orange, #c45c26);
}

.rope-inline-guides__card h3 {
  margin: 0;
  color: var(--verm-green, #2f3d32);
  font-size: 1rem;
}

.rope-inline-guides__card p {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.45;
}

@media (min-width: 48rem) {
  .rope-inline-guides {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.product-page--black-rope-kit .calcium-product-lead {
  margin: 0;
}

.product-page--black-rope-kit .product-summary {
  --flow-space: var(--space-3);
  gap: var(--space-3);
}

.product-page--black-rope-kit .product-form {
  gap: var(--space-3);
}

.product-page--black-rope-kit .cts-trust-strip {
  margin-block: 0;
}

.product-page--black-rope-kit .rope-kit-size-hint {
  margin: 0.3rem 0 0;
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 78%, transparent);
}

.product-page--black-rope-kit .rope-kit-included {
  margin: 0;
  padding: 0.8rem 0.9rem;
  border: 1px solid var(--cts-border, var(--colour-border));
  border-radius: 0.65rem;
  background: color-mix(in srgb, var(--cts-cream, #f4efe4) 70%, #fff);
}

.product-page--black-rope-kit .rope-kit-included__title {
  margin: 0 0 0.55rem;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--black-rope-kit .rope-kit-included__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.35rem;
}

.product-page--black-rope-kit .rope-kit-included__list li {
  position: relative;
  padding-inline-start: 1.15rem;
  font-size: var(--step--1);
  line-height: 1.4;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--black-rope-kit .rope-kit-included__list li::before {
  content: "✓";
  position: absolute;
  inset-inline-start: 0;
  font-weight: 700;
  color: var(--cts-green, #3d5340);
}

.product-page--black-rope-kit .rope-kit-included__ratings {
  margin: 0.65rem 0 0;
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 82%, transparent);
}

.product-page--black-rope-kit .rope-kit-choose__grid,
.product-page--black-rope-kit .rope-kit-highlights__grid,
.product-page--black-rope-kit .rope-kit-fit__steps {
  display: grid;
  gap: var(--space-4);
  margin: 0;
  padding: 0;
}

.product-page--black-rope-kit .rope-kit-choose h2,
.product-page--black-rope-kit .rope-kit-highlights h2,
.product-page--black-rope-kit .rope-kit-fit h2 {
  margin: 0 0 var(--space-4);
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--black-rope-kit .rope-kit-bundle-lead {
  margin: 0 0 var(--space-4);
  max-width: 46rem;
  font-size: var(--step-0);
  line-height: 1.5;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 86%, transparent);
}

.product-page--black-rope-kit .rope-kit-choose__card {
  margin: 0;
  padding: 1.1rem 1.15rem 1.2rem;
  border: 1px solid var(--cts-border, var(--colour-border));
  border-radius: 0.7rem;
  background: #fff;
  border-inline-start: 3px solid var(--verm-orange, #c45c26);
}

.product-page--black-rope-kit .rope-kit-choose__card h3 {
  margin: 0 0 0.4rem;
  font-size: 0.8rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--black-rope-kit .rope-kit-choose__card p,
.product-page--black-rope-kit .rope-kit-fit__steps li {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.5;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 86%, transparent);
}

.product-page--black-rope-kit .rope-kit-fit__steps {
  list-style: none;
  counter-reset: kit-fit;
}

.product-page--black-rope-kit .rope-kit-fit__steps {
  gap: 0.55rem;
}

.product-page--black-rope-kit .rope-kit-fit__steps li {
  position: relative;
  padding: 0.55rem 0.75rem 0.55rem 2.45rem;
  border: 1px solid var(--cts-border, var(--colour-border));
  border-radius: 0.5rem;
  background: #fff;
  counter-increment: kit-fit;
}

.product-page--black-rope-kit .rope-kit-fit__steps li::before {
  content: counter(kit-fit);
  position: absolute;
  inset-block-start: 0.5rem;
  inset-inline-start: 0.65rem;
  width: 1.3rem;
  height: 1.3rem;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--cts-green-deep, #2f3b2f);
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
}

@media (min-width: 48rem) {
  .product-page--black-rope-kit .rope-kit-choose__grid,
  .product-page--black-rope-kit .rope-kit-highlights__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .product-page--black-rope-kit .rope-kit-fit__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .product-page--black-rope-kit .product-summary {
    --flow-space: var(--space-3);
    gap: var(--space-3);
  }

  .product-page--black-rope-kit .cts-trust-strip {
    padding: 0.7rem 0.8rem;
  }
}

.product-page--rope-paint-kit .product-summary {
  --flow-space: 0.75rem;
  gap: 0.75rem;
}

.product-page--rope-paint-kit .product-form {
  gap: 0.7rem;
}

.product-page--rope-paint-kit .field--verm-variant,
.product-page--rope-paint-kit .field__input--verm-variant {
  max-width: none;
  width: 100%;
}

.product-page--rope-paint-kit .rope-kit-value-line {
  margin: 0;
  font-size: var(--step--1);
  line-height: 1.4;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 78%, transparent);
}

.product-page--rope-paint-kit .rope-kit-bundle-lead {
  margin: 0 0 var(--space-4);
  max-width: 46rem;
  font-size: var(--step-0);
  line-height: 1.5;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 86%, transparent);
}

.product-page--rope-paint-kit .rope-kit-choose__card {
  height: 100%;
}

.product-page--rope-paint-kit .rope-kit-paint h2 {
  margin: 0 0 var(--space-4);
  color: var(--cts-green-deep, #2f3b2f);
}

@media (min-width: 64rem) {
  .product-page--rope-paint-kit .cts-trust-strip__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.product-page--stove-gloves.product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
.product-page--stove-gloves.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits__grid {
  grid-template-columns: 1fr 1fr;
  font-size: inherit;
  gap: 0.5rem 0.7rem;
}

.product-page--stove-gloves.product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid li,
.product-page--stove-gloves.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits__grid li {
  font-size: 0.74rem;
  letter-spacing: 0.02em;
  line-height: 1.3;
  white-space: normal;
  overflow-wrap: break-word;
}

.product-page--stove-gloves .product-summary h1 {
  overflow-wrap: anywhere;
}

.product-page--stove-gloves .clay-landing__safety {
  padding: 1.15rem 1.25rem 1.3rem;
  border: 1px solid var(--cts-border);
  border-radius: 0.7rem;
  background: #fff;
}

@media (min-width: 48rem) {
  .product-page--stove-gloves.product-page--verm-small[data-clay-fire-bricks-product] .product-summary > .verm-standard-benefits .verm-standard-benefits__grid,
  .product-page--stove-gloves.product-page--verm-small[data-clay-fire-bricks-product] .clay-quick-ref .verm-standard-benefits__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .product-page--stove-gloves .product-form .product-form__quantity,
  .product-page--stove-gloves .product-form .button--primary {
    width: 100%;
    max-width: none;
  }
}

.gloves-cross-sell {
  margin: var(--space-6) 0 0;
  padding: 1.05rem 1.15rem 1.15rem;
  border: 1px solid var(--cts-border, #ddd4c6);
  border-radius: 0.7rem;
  background: #fff;
}

.gloves-cross-sell__kicker {
  margin: 0 0 0.65rem;
  color: var(--cts-green-deep, #2f3b2f);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gloves-cross-sell__inner {
  display: grid;
  grid-template-columns: 5.5rem minmax(0, 1fr);
  gap: 0.9rem 1rem;
  align-items: center;
}

.gloves-cross-sell__image {
  display: block;
  overflow: hidden;
  border-radius: 0.45rem;
  background: #f7f4ee;
}

.gloves-cross-sell__image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
}

.gloves-cross-sell__title {
  margin: 0 0 0.3rem;
  font-size: 1.02rem;
  line-height: 1.3;
}

.gloves-cross-sell__title a {
  color: inherit;
  text-decoration: none;
}

.gloves-cross-sell__copy p {
  margin: 0;
  color: color-mix(in srgb, var(--cts-green-deep, #2f3b2f) 78%, transparent);
  font-size: 0.9rem;
  line-height: 1.45;
}

.gloves-cross-sell__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem 1rem;
  align-items: center;
  margin-top: 0.55rem !important;
}

.gloves-cross-sell__price {
  color: var(--cts-green-deep, #2f3b2f);
  font-weight: 750;
}

.product-page--radiator-foil .foil-product-lead {
  margin: 0.55rem 0 0;
  max-width: 38rem;
  line-height: 1.55;
}

.product-page--radiator-foil .foil-buy-points {
  display: grid;
  gap: 0.4rem;
  margin: 0.85rem 0 0;
  padding: 0.75rem 0.9rem;
  list-style: none;
  border: 1px solid var(--cts-border, #ddd4c6);
  border-radius: 0.55rem;
  background: color-mix(in srgb, var(--cts-cream, #f4eee4) 72%, #fff);
}

.product-page--radiator-foil .foil-buy-points li {
  margin: 0;
  padding-left: 1.35rem;
  position: relative;
  font-size: 0.95rem;
  line-height: 1.4;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--radiator-foil .foil-buy-points li::before {
  content: '✓';
  position: absolute;
  left: 0;
  font-weight: 700;
  color: var(--cts-orange, #c45c26);
}

.product-page--radiator-foil .foil-pdp {
  display: grid;
  gap: 2.15rem;
  max-width: 52rem;
}

.product-page--radiator-foil .foil-pdp__section h2 {
  margin: 0 0 0.75rem;
  font-size: 1.35rem;
  letter-spacing: 0.01em;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--radiator-foil .foil-pdp__section h3 {
  margin: 0 0 0.35rem;
  font-size: 1.02rem;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--radiator-foil .foil-pdp__section p {
  margin: 0 0 0.7rem;
  line-height: 1.55;
}

.product-page--radiator-foil .foil-pdp__section p:last-child {
  margin-bottom: 0;
}

.product-page--radiator-foil .foil-pdp__cards {
  display: grid;
  gap: 0.75rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}

.product-page--radiator-foil .foil-pdp__cards li {
  margin: 0;
  padding: 1rem 1.1rem;
  border: 1px solid var(--cts-border, #ddd4c6);
  border-radius: 0.65rem;
  background: #fff;
}

.product-page--radiator-foil .foil-pdp__cards h3 {
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 0.82rem;
}

.product-page--radiator-foil .foil-diagram {
  margin: 0.85rem 0 0;
}

.product-page--radiator-foil .foil-diagram__scene {
  display: grid;
  grid-template-columns: minmax(4.5rem, 1fr) minmax(5.5rem, 0.9fr) minmax(5rem, 1fr) minmax(5.5rem, 1.1fr) minmax(4.5rem, 0.9fr);
  gap: 0.4rem;
  min-height: 8.5rem;
  align-items: stretch;
}

.product-page--radiator-foil .foil-diagram__col {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  padding: 0.7rem 0.4rem;
  text-align: center;
  border-radius: 0.45rem;
}

.product-page--radiator-foil .foil-diagram__col--room {
  background: color-mix(in srgb, var(--cts-cream, #f4eee4) 80%, #fff);
}

.product-page--radiator-foil .foil-diagram__col--heat {
  background: color-mix(in srgb, var(--cts-orange, #c45c26) 14%, #fff);
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--radiator-foil .foil-diagram__col--rad {
  background: #d9d3cc;
  font-weight: 700;
}

.product-page--radiator-foil .foil-diagram__col--foil {
  background: linear-gradient(180deg, #f3f1ea 0%, #cfc8b8 100%);
  border: 1px solid #b7b09f;
  font-weight: 700;
}

.product-page--radiator-foil .foil-diagram__col--wall {
  background: #8d8578;
  color: #fff;
  font-weight: 700;
}

.product-page--radiator-foil .foil-diagram__label,
.product-page--radiator-foil .foil-diagram__caption {
  font-size: 0.78rem;
  line-height: 1.25;
}

.product-page--radiator-foil .foil-diagram__arrow {
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 700;
}

.product-page--radiator-foil .foil-diagram figcaption {
  margin: 0.65rem 0 0;
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--radiator-foil .foil-pdp__steps,
.product-page--radiator-foil .foil-pdp__measure,
.product-page--radiator-foil .foil-pdp__points {
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.65rem;
}

.product-page--radiator-foil .foil-pdp__steps {
  counter-reset: foil-step;
}

.product-page--radiator-foil .foil-pdp__steps li {
  margin: 0;
  padding: 0.9rem 1rem 0.95rem 1.05rem;
  border: 1px solid var(--cts-border, #ddd4c6);
  border-radius: 0.65rem;
  background: #fff;
}

.product-page--radiator-foil .foil-pdp__measure li,
.product-page--radiator-foil .foil-pdp__points li {
  margin: 0;
  padding-left: 1.6rem;
  position: relative;
  line-height: 1.5;
}

.product-page--radiator-foil .foil-pdp__measure {
  counter-reset: foil-measure;
}

.product-page--radiator-foil .foil-pdp__measure li {
  counter-increment: foil-measure;
}

.product-page--radiator-foil .foil-pdp__measure li::before {
  content: counter(foil-measure);
  position: absolute;
  left: 0;
  top: 0.05rem;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background: var(--cts-green-deep, #2f3b2f);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-page--radiator-foil .foil-pdp__points li::before {
  content: '•';
  position: absolute;
  left: 0.35rem;
  color: var(--cts-orange, #c45c26);
  font-weight: 700;
}

.product-page--radiator-foil .foil-pdp__safety,
.product-page--radiator-foil .foil-pdp__tip {
  padding: 0.8rem 1rem;
  border-radius: 0.55rem;
  background: color-mix(in srgb, var(--cts-cream, #f4eee4) 78%, #fff);
  border: 1px solid var(--cts-border, #ddd4c6);
}

.product-page--radiator-foil .foil-pdp__places {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0.35rem 0 1rem;
  padding: 0;
  list-style: none;
}

.product-page--radiator-foil .foil-pdp__places li {
  margin: 0;
  padding: 0.35rem 0.7rem;
  border: 1px solid var(--cts-border, #ddd4c6);
  border-radius: 999px;
  background: #fff;
  font-size: 0.9rem;
}

.product-page--radiator-foil .foil-pdp__size-cards {
  display: grid;
  gap: 0.75rem;
  margin: 1rem 0;
  padding: 0;
  list-style: none;
}

.product-page--radiator-foil .foil-pdp__size-cards li {
  margin: 0;
  padding: 1rem 1.1rem;
  border: 1px solid var(--cts-border, #ddd4c6);
  border-radius: 0.65rem;
  background: #fff;
}

.product-page--radiator-foil .foil-pdp__size-price {
  margin: 0 0 0.35rem;
  font-size: 1.15rem;
  font-weight: 750;
  color: var(--cts-green-deep, #2f3b2f);
}

.product-page--radiator-foil .foil-pdp__size-advice {
  display: grid;
  gap: 0.75rem;
  margin: 0 0 1rem;
}

.product-page--radiator-foil .foil-pdp__size-advice > div {
  padding: 0.9rem 1rem;
  border: 1px solid var(--cts-border, #ddd4c6);
  border-radius: 0.65rem;
  background: color-mix(in srgb, var(--cts-cream, #f4eee4) 70%, #fff);
}

.product-page--radiator-foil .foil-pdp__cta {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  padding: 0.45rem 1rem;
  border-radius: 0.45rem;
  background: var(--cts-green-deep, #2f3b2f);
  color: #fff;
  font-weight: 700;
  text-decoration: none;
}

.product-page--radiator-foil .foil-pdp__article p {
  max-width: 46rem;
}

.product-page--radiator-foil .faq-list--foil {
  border: 1px solid var(--cts-border, #ddd4c6);
  border-radius: 0.6rem;
  overflow: hidden;
  background: #fff;
}

.product-page--radiator-foil .faq-list--foil details {
  border-block-end: 1px solid var(--cts-border, #ddd4c6);
}

.product-page--radiator-foil .faq-list--foil details:last-child {
  border-block-end: 0;
}

.product-page--radiator-foil .faq-list--foil summary {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4, 1rem);
  min-height: 3.25rem;
  padding: 1rem 1.15rem;
  list-style: none;
  font-size: 1rem;
  font-weight: 700;
  color: var(--cts-green-deep, #2f3b2f);
  cursor: pointer;
}

.product-page--radiator-foil .faq-list--foil summary::-webkit-details-marker {
  display: none;
}

.product-page--radiator-foil .faq-list--foil summary::after {
  content: '+';
  flex: 0 0 auto;
  color: var(--cts-orange, #c45c26);
  font-size: 1.35rem;
  font-weight: 500;
  line-height: 1;
}

.product-page--radiator-foil .faq-list--foil details[open] summary::after {
  content: '–';
}

.product-page--radiator-foil .faq-list--foil .faq-list__answer {
  width: 100%;
  max-width: none;
  padding: 0 1.15rem 1rem;
}

@media (min-width: 48rem) {
  .product-page--radiator-foil .foil-pdp__cards,
  .product-page--radiator-foil .foil-pdp__size-cards,
  .product-page--radiator-foil .foil-pdp__size-advice {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .product-page--radiator-foil .foil-diagram__scene {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .product-page--radiator-foil .foil-diagram__col {
    min-height: 3.4rem;
  }

  .product-page--radiator-foil .product-form .product-form__quantity,
  .product-page--radiator-foil .product-form .button--primary {
    width: 100%;
    max-width: none;
  }
}

.product-page--random-cast,
.product-page[data-random-cast-product] {
  --rc-ink: #1c1c1a;
  --rc-muted: #5c574f;
  --rc-cream: #f6f1e8;
  --rc-paper: #fbf8f3;
  --rc-line: #ddd4c6;
  --rc-copper: #c45c26;
}

.product-page--random-cast .rc-pdp-kicker,
.product-page[data-random-cast-product] .rc-pdp-kicker {
  margin: 0 0 0.35rem;
  color: var(--rc-copper);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
}

.product-page--random-cast .product-summary > h1,
.product-page[data-random-cast-product] .product-summary > h1 {
  margin: 0;
  color: var(--rc-ink);
  font-size: clamp(1.7rem, 2.4vw, 2.35rem);
  line-height: 1.15;
}

.product-page--random-cast .calcium-product-lead,
.product-page[data-random-cast-product] .calcium-product-lead {
  margin: 0.65rem 0 0;
  color: var(--rc-muted);
  font-size: 0.95rem;
}

.product-page--random-cast .rc-size-spec,
.product-page[data-random-cast-product] .rc-size-spec {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.45rem 0.7rem;
  margin: 0.7rem 0 0;
}

.product-page--random-cast .rc-size-spec__label,
.product-page[data-random-cast-product] .rc-size-spec__label {
  color: var(--rc-ink);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-page--random-cast .rc-size-spec__value,
.product-page[data-random-cast-product] .rc-size-spec__value {
  color: var(--rc-ink);
  font-size: 1.05rem;
  font-weight: 700;
}

.product-page--random-cast .rc-size-spec__note,
.product-page[data-random-cast-product] .rc-size-spec__note {
  margin: 0.2rem 0 0;
  color: var(--rc-muted);
  font-size: 0.82rem;
}

.product-page--random-cast .rc-pdp-badges,
.product-page[data-random-cast-product] .rc-pdp-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
}

.product-page--random-cast .rc-pdp-badges li,
.product-page[data-random-cast-product] .rc-pdp-badges li {
  padding: 0.28rem 0.55rem;
  border: 1px solid var(--rc-line);
  background: var(--rc-paper);
  color: var(--rc-ink);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.product-page--random-cast .buying-advice--compact,
.product-page[data-random-cast-product] .buying-advice--compact {
  display: none;
}

.product-page--random-cast .rc-buy-help,
.product-page[data-random-cast-product] .rc-buy-help {
  margin: 0;
  padding: 0.85rem 0 0;
  border-top: 1px solid var(--rc-line);
}

.product-page--random-cast .rc-buy-help .h3,
.product-page[data-random-cast-product] .rc-buy-help .h3 {
  margin: 0 0 0.4rem;
  color: var(--rc-ink);
  font-size: 0.92rem;
}

.product-page--random-cast .rc-buy-help p,
.product-page[data-random-cast-product] .rc-buy-help p {
  margin: 0;
  color: var(--rc-muted);
  font-size: 0.9rem;
}

.product-page--random-cast .rc-buy-help__link,
.product-page[data-random-cast-product] .rc-buy-help__link {
  display: inline-block;
  margin-top: 0.55rem;
  color: var(--rc-copper);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
}

.product-page--random-cast .rc-buy-help__link:hover,
.product-page[data-random-cast-product] .rc-buy-help__link:hover {
  text-decoration: underline;
}

.product-page--random-cast .field--rc-sr-select,
.product-page[data-random-cast-product] .field--rc-sr-select {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

.product-page--random-cast .rc-pack-picker,
.product-page[data-random-cast-product] .rc-pack-picker {
  margin: 0 0 var(--space-4);
}

.product-page--random-cast .rc-pack-picker__label,
.product-page[data-random-cast-product] .rc-pack-picker__label {
  margin: 0 0 0.55rem;
  color: var(--rc-ink);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-page--random-cast .rc-pack-picker__grid,
.product-page[data-random-cast-product] .rc-pack-picker__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
}

.product-page--random-cast .rc-pack-card,
.product-page[data-random-cast-product] .rc-pack-card {
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.7rem;
  border: 1px solid var(--rc-line);
  background: #fff;
  color: var(--rc-ink);
  text-align: left;
  cursor: pointer;
}

.product-page--random-cast .rc-pack-card__qty,
.product-page[data-random-cast-product] .rc-pack-card__qty {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-page--random-cast .rc-pack-card__price,
.product-page[data-random-cast-product] .rc-pack-card__price {
  color: var(--rc-muted);
  font-size: 0.92rem;
}

.product-page--random-cast .rc-pack-guidance,
.product-page[data-random-cast-product] .rc-pack-guidance {
  margin: 0 0 0.75rem;
  color: var(--rc-ink);
  font-size: 0.92rem;
  line-height: 1.45;
}

.product-page--random-cast .rc-pack-card--lead,
.product-page[data-random-cast-product] .rc-pack-card--lead {
  grid-column: 1 / -1;
  border-color: var(--rc-ink);
  background: #f7f4ee;
}

.product-page--random-cast .rc-pack-card__badge,
.product-page[data-random-cast-product] .rc-pack-card__badge {
  color: var(--rc-ink);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-page--random-cast .rc-pack-card__each,
.product-page[data-random-cast-product] .rc-pack-card__each {
  color: var(--rc-ink);
  font-size: 0.84rem;
  font-weight: 650;
}

.product-page--random-cast .rc-pack-card[aria-pressed='true'],
.product-page[data-random-cast-product] .rc-pack-card[aria-pressed='true'] {
  border-color: var(--rc-ink);
  box-shadow: inset 0 0 0 1px var(--rc-ink);
}

.product-page--random-cast .coal-pebbles-note,
.product-page[data-random-cast-product] .coal-pebbles-note {
  margin: 0 0 var(--space-4);
  padding: 0.85rem 0.9rem;
  border: 1px solid var(--rc-line);
  background: #fff;
}

.product-page--random-cast .coal-pebbles-note h2,
.product-page[data-random-cast-product] .coal-pebbles-note h2 {
  margin: 0 0 0.4rem;
  font-size: 1rem;
}

.product-page--random-cast .coal-pebbles-note p,
.product-page[data-random-cast-product] .coal-pebbles-note p {
  margin: 0 0 0.55rem;
  color: var(--rc-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

.product-page--random-cast .coal-pebbles-note__link,
.product-page[data-random-cast-product] .coal-pebbles-note__link {
  color: var(--rc-copper);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
}

.product-page--random-cast .product-gallery--random-cast,
.product-page[data-random-cast-product] .product-gallery--random-cast {
  background: #fff;
}

.product-page--random-cast .product-gallery--random-cast .product-gallery__item,
.product-page[data-random-cast-product] .product-gallery--random-cast .product-gallery__item {
  background: #fff;
}

.product-page--random-cast .product-gallery--random-cast .product-gallery__item img,
.product-page[data-random-cast-product] .product-gallery--random-cast .product-gallery__item img {
  object-fit: contain;
  background: #fff;
}

.product-page--random-cast .product-gallery--compact .product-gallery__item:not(.product-gallery__item--primary),
.product-page[data-random-cast-product] .product-gallery--compact .product-gallery__item:not(.product-gallery__item--primary) {
  display: none;
}

.product-page--random-cast .product-gallery--compact .product-gallery__item:target,
.product-page[data-random-cast-product] .product-gallery--compact .product-gallery__item:target {
  display: block;
  grid-column: 1 / -1;
}

.product-page--random-cast .product-gallery--compact:has(.product-gallery__item:not(.product-gallery__item--primary):target) .product-gallery__item--primary,
.product-page[data-random-cast-product] .product-gallery--compact:has(.product-gallery__item:not(.product-gallery__item--primary):target) .product-gallery__item--primary {
  display: none;
}

.product-gallery--random-hq .product-gallery__thumbs--verm {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.5rem;
  margin: 0;
  padding: 0.15rem 0 0;
  list-style: none;
  overflow: visible;
}

.product-gallery--random-hq .product-gallery__thumbs--verm li {
  flex: none;
  min-width: 0;
}

.product-gallery--random-hq .product-gallery__thumb {
  width: auto;
  border: 1px solid #d7d1c8;
  background: #fff;
}

.product-gallery--random-hq .product-gallery__thumb img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: contain;
  background: #fff;
}

.product-page--random-cast .rc-trust-strip,
.product-page[data-random-cast-product] .rc-trust-strip {
  margin: 0;
  padding: var(--space-5) 0;
  border-top: 1px solid var(--rc-line);
  border-bottom: 1px solid var(--rc-line);
  background: var(--rc-paper);
}

.product-page--random-cast .rc-trust-strip__grid,
.product-page[data-random-cast-product] .rc-trust-strip__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
  margin: 0;
  padding: 0 var(--space-4);
  list-style: none;
}

.product-page--random-cast .rc-trust-strip__title,
.product-page[data-random-cast-product] .rc-trust-strip__title {
  display: block;
  color: var(--rc-ink);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-page--random-cast .rc-trust-strip__text,
.product-page[data-random-cast-product] .rc-trust-strip__text {
  display: block;
  margin-top: 0.2rem;
  color: var(--rc-muted);
  font-size: 0.9rem;
}

.product-page--random-cast .rc-pdp,
.product-page[data-random-cast-product] .rc-pdp {
  display: grid;
  gap: var(--space-8);
  margin: var(--space-7) 0;
  color: var(--rc-ink);
}

.product-page--random-cast .rc-pdp__section h2,
.product-page[data-random-cast-product] .rc-pdp__section h2 {
  margin: 0 0 var(--space-4);
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1.2;
}

.product-page--random-cast .rc-pdp__section h3,
.product-page[data-random-cast-product] .rc-pdp__section h3 {
  margin: 0 0 0.35rem;
  font-size: 0.95rem;
}

.product-page--random-cast .rc-pdp__section p,
.product-page[data-random-cast-product] .rc-pdp__section p {
  margin: 0 0 0.85rem;
  color: var(--rc-muted);
}

.product-page--random-cast .rc-pdp__split,
.product-page[data-random-cast-product] .rc-pdp__split {
  display: grid;
  gap: var(--space-5);
  align-items: center;
}

.product-page--random-cast .rc-pdp__photo,
.product-page[data-random-cast-product] .rc-pdp__photo {
  margin: 0;
  background: #fff;
}

.product-page--random-cast .rc-pdp__photo img,
.product-page[data-random-cast-product] .rc-pdp__photo img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.product-page--random-cast .rc-pdp__points,
.product-page--random-cast .rc-pdp__proofs,
.product-page--random-cast .rc-pdp__steps,
.product-page--random-cast .rc-pdp__links,
.product-page[data-random-cast-product] .rc-pdp__points,
.product-page[data-random-cast-product] .rc-pdp__proofs,
.product-page[data-random-cast-product] .rc-pdp__steps,
.product-page[data-random-cast-product] .rc-pdp__links {
  margin: 0 0 var(--space-4);
  padding: 0;
  list-style: none;
}

.product-page--random-cast .rc-pdp__points li,
.product-page--random-cast .rc-pdp__proofs li,
.product-page--random-cast .rc-pdp__steps li,
.product-page[data-random-cast-product] .rc-pdp__points li,
.product-page[data-random-cast-product] .rc-pdp__proofs li,
.product-page[data-random-cast-product] .rc-pdp__steps li {
  padding: 0.7rem 0;
  border-top: 1px solid var(--rc-line);
}

.product-page--random-cast .rc-pdp__proofs li span,
.product-page[data-random-cast-product] .rc-pdp__proofs li span {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-page--random-cast .rc-pdp__note,
.product-page[data-random-cast-product] .rc-pdp__note {
  margin-top: var(--space-4);
  padding: var(--space-4);
  border: 1px solid var(--rc-line);
  background: var(--rc-paper);
}

.product-page--random-cast .rc-pdp__note h3,
.product-page[data-random-cast-product] .rc-pdp__note h3 {
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.product-page--random-cast .rc-pdp__dl,
.product-page[data-random-cast-product] .rc-pdp__dl {
  display: grid;
  gap: 0;
  margin: 0;
}

.product-page--random-cast .rc-pdp__dl > div,
.product-page[data-random-cast-product] .rc-pdp__dl > div {
  display: grid;
  grid-template-columns: 10rem 1fr;
  gap: 0.75rem;
  padding: 0.7rem 0;
  border-top: 1px solid var(--rc-line);
}

.product-page--random-cast .rc-pdp__dl dt,
.product-page[data-random-cast-product] .rc-pdp__dl dt {
  margin: 0;
  font-weight: 700;
}

.product-page--random-cast .rc-pdp__dl dd,
.product-page[data-random-cast-product] .rc-pdp__dl dd {
  margin: 0;
  color: var(--rc-muted);
}

.product-page--random-cast .rc-pdp__made,
.product-page[data-random-cast-product] .rc-pdp__made {
  display: grid;
  gap: var(--space-5);
}

.product-page--random-cast .faq-list--cts.rc-pdp__faq details,
.product-page[data-random-cast-product] .faq-list--cts.rc-pdp__faq details {
  border-top: 1px solid var(--rc-line);
}

@media (min-width: 48rem) {
  .product-page--random-cast .rc-trust-strip__grid,
  .product-page[data-random-cast-product] .rc-trust-strip__grid {
    grid-template-columns: repeat(4, 1fr);
    padding: 0;
  }

  .product-page--random-cast .rc-pdp__split,
  .product-page[data-random-cast-product] .rc-pdp__split {
    grid-template-columns: 1fr 1fr;
  }

  .product-page--random-cast .rc-pdp__split--reverse,
  .product-page[data-random-cast-product] .rc-pdp__split--reverse {
    direction: rtl;
  }

  .product-page--random-cast .rc-pdp__split--reverse > *,
  .product-page[data-random-cast-product] .rc-pdp__split--reverse > * {
    direction: ltr;
  }

  .product-page--random-cast .rc-pdp__made,
  .product-page[data-random-cast-product] .rc-pdp__made {
    grid-template-columns: 1.4fr 1fr;
  }

  .product-page--random-cast .rc-pdp__photo--wide,
  .product-page[data-random-cast-product] .rc-pdp__photo--wide {
    grid-column: 1 / -1;
  }

  .product-page--random-cast .product-form .button--primary,
  .product-page[data-random-cast-product] .product-form .button--primary {
    min-height: 3rem;
  }

  .product-page--art-logs .product-decision {
    grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.95fr);
    gap: var(--space-6);
  }

  .product-page--art-logs .product-gallery--random-cast .product-gallery__item img,
  .product-page--art-logs .product-gallery--random-cast .product-gallery__item video {
    max-height: 28rem;
    width: auto;
    max-width: 86%;
    margin-inline: auto;
  }

  .product-page--art-logs .product-gallery--random-hq .product-gallery__thumbs--verm {
    width: 82%;
    max-width: 26rem;
    margin-inline: auto;
    gap: 0.35rem;
  }

  .product-page--art-logs .art-log-pdp .rc-pdp__photo:not(.rc-pdp__photo--wide) img {
    max-width: 72%;
    margin-inline: auto;
  }

  .product-page--art-logs .art-log-pdp .rc-pdp__photo--wide img {
    max-width: 72%;
    margin-inline: auto;
  }
}

@media (max-width: 47.99rem) {
  .product-page--art-logs .product-gallery--random-cast .product-gallery__item img,
  .product-page--art-logs .product-gallery--random-cast .product-gallery__item video {
    max-height: 22rem;
  }

  .product-page--delamere-set .product-gallery,
  .product-page--delamere-set [data-art-set-gallery] {
    width: 100%;
    max-width: 100%;
  }

  .product-page--delamere-set [data-art-set-gallery] {
    display: grid;
    gap: inherit;
  }

  .product-page--delamere-set .product-gallery--random-cast .product-gallery__item img,
  .product-page--delamere-set .product-gallery--random-cast .product-gallery__item video {
    width: 100%;
    max-width: 100%;
    max-height: none;
    height: auto;
    aspect-ratio: 1;
    object-fit: contain;
    margin-inline: 0;
  }

  .product-page--delamere-set .product-gallery--random-hq .product-gallery__thumbs--verm {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    overflow-x: auto;
  }

  .product-page--delamere-set .product-gallery--random-hq .product-gallery__thumbs--verm li {
    flex: 0 0 auto;
    width: 4.75rem;
  }
}

@media (min-width: 48rem) {
  .product-page--delamere-set .product-decision {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 1fr);
    gap: var(--space-7);
  }

  .product-page--delamere-set .product-gallery {
    grid-template-columns: minmax(0, 1fr);
  }

  .product-page--delamere-set [data-art-set-gallery] {
    display: grid;
    grid-column: 1 / -1;
    width: 100%;
    gap: inherit;
  }

  .product-page--delamere-set .product-gallery--random-cast .product-gallery__item img,
  .product-page--delamere-set .product-gallery--random-cast .product-gallery__item video {
    width: 100%;
    max-width: 43.75rem;
    max-height: 43.75rem;
    height: auto;
    aspect-ratio: 1;
    object-fit: contain;
    margin-inline: 0;
  }

  .product-page--delamere-set .product-gallery--random-hq .product-gallery__thumbs--verm {
    width: 100%;
    max-width: 43.75rem;
    margin-inline: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
  }

  .product-page--delamere-set .product-gallery--random-hq .product-gallery__thumbs--verm li {
    flex: 0 0 auto;
    width: 6.5rem;
  }

  .product-page--delamere-set .product-gallery--random-hq .product-gallery__thumb {
    width: 100%;
  }
}

.product-page--art-logs [data-art-set-gallery][hidden] {
  display: none !important;
}

.product-page--art-logs [data-art-set-gallery][hidden] .product-gallery__item,
.product-page--art-logs [data-art-set-gallery][hidden] .product-gallery__item:target,
.product-page--art-logs [data-art-set-gallery][hidden] .product-gallery__item--primary {
  display: none !important;
}

.product-page--art-logs .product-gallery--compact [data-art-set-gallery]:not([hidden]) .product-gallery__item--primary {
  display: block;
}

.product-page--art-logs .art-log-pdp {
  gap: var(--space-6);
  margin: var(--space-5) 0;
}

.product-page--art-logs .art-log-pdp .rc-pdp__section h2 {
  margin: 0 0 var(--space-3);
}

.product-page--art-logs .art-log-pdp .rc-pdp__section p {
  margin: 0 0 0.65rem;
}

.product-page--art-logs .art-log-pdp .rc-pdp__split {
  gap: var(--space-4);
}

.product-page--art-logs .art-log-intro {
  max-width: 40rem;
}

.product-page--art-logs .art-log-pdp .rc-pdp-kicker {
  margin-bottom: 0.35rem;
}

.product-page--art-logs .art-log-size-range__value {
  margin: 0.15rem 0 0.7rem;
  color: var(--rc-ink);
  font-size: 1.2rem;
  font-weight: 700;
}

.product-page--art-logs .art-log-size-list {
  margin: 0.35rem 0 0;
  padding: 0 0 0 1.1rem;
  color: var(--rc-ink);
}

.product-page--art-logs .art-log-size-list li {
  margin: 0 0 0.2rem;
}

.product-page--art-logs .art-log-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
}

.product-page--art-logs .art-log-cards li {
  padding: var(--space-3);
  border: 1px solid var(--rc-line);
  background: var(--rc-paper);
}

.product-page--art-logs .art-log-lifestyle-note {
  margin: var(--space-2) 0 0;
  color: var(--rc-muted);
  font-size: 0.88rem;
}

.product-page--art-logs .art-log-in-use__photo img {
  max-width: 100%;
}

.product-page--art-logs .art-log-pdp .art-log-suit {
  margin-top: calc(var(--space-3) * -1);
}

@media (min-width: 48rem) {
  .product-page--art-logs .art-log-in-use .rc-pdp__split {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    align-items: center;
    gap: var(--space-5);
  }

  .product-page--art-logs .art-log-in-use__photo img {
    max-width: 88%;
    max-height: 22rem;
    margin-inline: auto;
  }
}

@media (max-width: 47.99rem) {
  .product-page--art-logs .art-log-in-use__photo img {
    max-width: 78%;
    max-height: 16rem;
    margin-inline: auto;
  }

  .product-page--art-logs .art-log-pdp .art-log-suit {
    margin-top: calc(var(--space-2) * -1);
  }
}

.product-page--art-logs .art-log-pdp .button--primary {
  display: inline-flex;
  width: auto;
  min-height: 2.85rem;
  padding-inline: 1.25rem;
}

@media (min-width: 48rem) {
  .product-page--art-logs .art-log-cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
