/* Individual visual direction for each service page. */
body.rwa-service-page--custom-furniture .rwa-service-hero {
  background: radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--rwa-walnut) 45%, transparent), transparent 40%), var(--rwa-soft-black);
}

body.rwa-service-page--custom-furniture .rwa-service-gallery:not(.rwa-service-gallery--product) {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.rwa-service-page--doors .rwa-service-hero,
body.rwa-service-page--cladding .rwa-service-hero {
  min-height: 25rem;
  grid-template-columns: minmax(0, 1fr);
  background: linear-gradient(115deg, var(--rwa-soft-black), var(--rwa-surface));
}

body.rwa-service-page--doors .rwa-service-hero::before,
body.rwa-service-page--cladding .rwa-service-hero::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: repeating-linear-gradient(90deg, transparent 0 4rem, color-mix(in srgb, var(--rwa-gold) 5%, transparent) 4rem 4.05rem);
  content: "";
}

body.rwa-service-page--doors .rwa-service-products,
body.rwa-service-page--cladding .rwa-service-products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--rwa-component-gap);
}

body.rwa-service-page--doors .rwa-service-product-card,
body.rwa-service-page--cladding .rwa-service-product-card {
  min-width: 0;
  padding: var(--rwa-component-gap);
  border: 1px solid color-mix(in srgb, var(--rwa-ivory) 12%, transparent);
  border-radius: var(--rwa-radius-md);
  background: var(--rwa-surface);
}

body.rwa-service-page--doors .rwa-service-gallery--product,
body.rwa-service-page--cladding .rwa-service-gallery--product {
  margin-block: var(--rwa-component-gap);
}

body.rwa-service-page--doors .rwa-service-gallery--product .rwa-gallery__item,
body.rwa-service-page--cladding .rwa-service-gallery--product .rwa-gallery__item {
  aspect-ratio: 1.3;
}

body.rwa-service-page--cladding .rwa-service-hero {
  background: repeating-linear-gradient(135deg, color-mix(in srgb, var(--rwa-walnut) 18%, var(--rwa-soft-black)) 0 1px, var(--rwa-soft-black) 1px 1.5rem);
}

body.rwa-service-page--fit-out .rwa-service-hero {
  background: linear-gradient(115deg, var(--rwa-charcoal), color-mix(in srgb, var(--rwa-walnut) 35%, var(--rwa-soft-black)));
}

body.rwa-service-page--fit-out .rwa-service-video-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.rwa-service-page--hotel-furnishing .rwa-service-hero {
  background: linear-gradient(145deg, var(--rwa-soft-black), color-mix(in srgb, var(--rwa-walnut) 30%, var(--rwa-charcoal)));
}

body.rwa-service-page--hotel-furnishing .rwa-service-gallery:not(.rwa-service-gallery--product) .rwa-gallery__item {
  aspect-ratio: 1.35;
}

body.rwa-service-page--outdoor .rwa-service-hero {
  background: radial-gradient(ellipse at 82% 80%, color-mix(in srgb, var(--rwa-gold) 16%, transparent), transparent 40%), var(--rwa-soft-black);
}

body.rwa-service-page--outdoor .rwa-service-video-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.rwa-service-page--mural .rwa-service-hero {
  background: linear-gradient(115deg, var(--rwa-charcoal), color-mix(in srgb, var(--rwa-walnut) 25%, var(--rwa-soft-black)));
}

body.rwa-service-page--mural .rwa-service-gallery:not(.rwa-service-gallery--product) {
  display: block;
  column-count: 4;
  column-gap: var(--rwa-component-gap);
}

body.rwa-service-page--mural .rwa-service-gallery:not(.rwa-service-gallery--product) .rwa-gallery__item {
  width: 100%;
  height: auto;
  display: inline-block;
  aspect-ratio: auto;
  margin: 0 0 var(--rwa-component-gap);
  break-inside: avoid;
}

body.rwa-service-page--mural .rwa-service-gallery:not(.rwa-service-gallery--product) img {
  height: auto;
}

body.rwa-service-page--food-beverage .rwa-service-hero {
  background: radial-gradient(circle at 75% 25%, color-mix(in srgb, var(--rwa-walnut) 38%, transparent), transparent 45%), var(--rwa-soft-black);
}

body.rwa-service-page--food-beverage .rwa-service-hero__figure--video {
  aspect-ratio: 1.35;
}

body.rwa-service-page--food-beverage .rwa-service-video-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.rwa-service-page--beach-house .rwa-service-hero {
  background: linear-gradient(130deg, color-mix(in srgb, var(--rwa-walnut) 34%, var(--rwa-soft-black)), var(--rwa-soft-black) 68%);
}

body.rwa-service-page--beach-house .rwa-service-gallery:not(.rwa-service-gallery--product) .rwa-gallery__item {
  aspect-ratio: 1.35;
}

body.rwa-service-page--landscape .rwa-service-hero {
  background: linear-gradient(120deg, var(--rwa-soft-black), color-mix(in srgb, var(--rwa-gold) 12%, var(--rwa-surface)));
}

body.rwa-service-page--landscape .rwa-service-gallery:not(.rwa-service-gallery--product) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.rwa-service-page--landscape .rwa-service-gallery:not(.rwa-service-gallery--product) .rwa-gallery__item {
  aspect-ratio: 1.55;
}

body.rwa-service-page--3d-design .rwa-service-hero {
  min-height: clamp(36rem, 68vw, 54rem);
  grid-template-columns: minmax(0, 1fr);
  align-items: end;
  background: var(--rwa-charcoal);
}

body.rwa-service-page--3d-design .rwa-service-hero::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(90deg, color-mix(in srgb, var(--rwa-charcoal) 94%, transparent), color-mix(in srgb, var(--rwa-charcoal) 20%, transparent)), linear-gradient(0deg, var(--rwa-charcoal), transparent 70%);
  content: "";
}

body.rwa-service-page--3d-design .rwa-service-hero__media {
  position: absolute;
  z-index: -1;
  inset: 0;
}

body.rwa-service-page--3d-design .rwa-service-hero__figure {
  position: absolute;
  inset: 0;
  aspect-ratio: auto;
  border-radius: 0;
}

body.rwa-service-page--3d-design .rwa-service-hero__copy {
  z-index: 1;
  max-width: 62rem;
  padding-block: var(--rwa-section-gap);
}
