.page-intro { display: grid; gap: var(--space-4); max-width: var(--reading-max); }
.eyebrow { margin: 0; color: var(--color-chili-dark); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.page-intro p { margin: 0; color: var(--color-muted); }
.not-found-search { display: grid; gap: var(--space-3); max-width: 32rem; margin-top: var(--space-5); }
@media (min-width: 48rem) { .not-found-search { grid-template-columns: 1fr auto; align-items: end; } }

.section-heading { display: grid; gap: var(--space-2); margin-bottom: var(--space-5); }
.section-heading h2, .section-heading h3, .home-hero h1, .home-showroom h2, .home-enquiry h2 { margin-bottom: 0; }
.page-home { overflow-x: clip; }
.page-home #main { overflow-x: clip; overflow-y: visible; }
.home-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.home-hero { position: relative; isolation: isolate; padding: var(--space-6) var(--gutter) var(--space-7); overflow: visible; border-bottom: 1px solid var(--color-line); }
.home-hero__powder { top: -3rem; left: 0%; width: 46vw; aspect-ratio: 1 / 1; opacity: 0.9; transform: translateX(-76%); }
.home-hero__grid { display: grid; gap: var(--space-5); }
.home-hero__grid > * { min-width: 0; }
.home-hero__copy { display: grid; align-content: center; gap: var(--space-4); max-width: 42rem; }
.home-hero__copy > p:not(.eyebrow) { margin-bottom: 0; color: var(--color-muted); }
.home-hero__media { width: 100%; aspect-ratio: 4 / 5; }
.home-hero__media picture { display: block; height: 100%; --hero-focal-x: var(--focal-mobile-x, var(--focal-x, 50%)); --hero-focal-y: var(--focal-mobile-y, var(--focal-y, 50%)); }
.home-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: var(--hero-focal-x) var(--hero-focal-y); }
.home-rooms { position: relative; isolation: isolate; overflow: clip; }
.home-rooms__powder { top: 13%; left: 70%; width: 60vw; aspect-ratio: 1600 / 640; opacity: 0.85; filter: saturate(0.91); transform: translate(-50%, -50%); }
.home-rooms__mosaic { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
.home-rooms__item,
.home-rooms__item .category-card { min-width: 0; }
.home-featured { position: relative; z-index: 1; isolation: isolate; border-top: 1px solid var(--color-line); }
.home-featured__powder { top: 100%; left: 100%; width: 70vw; aspect-ratio: 960 / 1234; overflow: visible; opacity: 0.9; transform: translate(-77%, -57%); }
.home-featured__grid { gap: var(--space-4); }
.home-showroom { position: relative; border-top: 1px solid var(--color-line); }
.home-showroom > .shell { position: relative; z-index: 2; }
.home-showroom__grid { display: grid; grid-template-areas: "intro" "media" "details"; gap: var(--space-3) var(--space-5); }
.home-showroom__intro { grid-area: intro; }
.home-showroom__media { grid-area: media; margin: 0 var(--space-5); }
.home-showroom__details { display: grid; grid-area: details; align-content: start; gap: var(--space-2); max-width: 32rem; margin-top: var(--space-4); }
.home-showroom address, .home-showroom ul { margin: 0; color: var(--color-muted); font-style: normal; }
.home-showroom ul { padding: 0; list-style: none; }
.home-showroom a { width: fit-content; }
.home-enquiry { position: relative; padding-bottom: var(--space-8); background: var(--color-ink); color: var(--color-paper); }
.home-enquiry .eyebrow { color: #e1aca5; }
.home-enquiry__inner { display: grid; gap: var(--space-3); max-width: 50rem; }
.home-enquiry__inner > p:not(.eyebrow) { margin-bottom: 0; color: #dad5cb; }
.home-enquiry .button--quiet { border-color: var(--color-paper); color: var(--color-paper); }
.collection { position: relative; overflow: clip; border-bottom: 1px solid var(--color-line); }
.collection-hero { position: relative; display: grid; overflow: hidden; border-bottom: 1px solid color-mix(in srgb, var(--color-teak) 40%, transparent); background: var(--color-parchment-deep); }
.collection-hero__media { display: block; grid-area: 1 / 1; width: 100%; aspect-ratio: 16 / 10; overflow: hidden; }
.collection-hero__media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 72% 58%; }
.collection-hero__inner { grid-area: 2 / 1; padding-block: var(--space-6); }
.collection-hero__copy { max-width: 34rem; }
.collection-hero__copy h1 { max-width: 9ch; text-wrap: balance; }
.collection-hero__copy > p:last-child { max-width: 38rem; color: var(--color-ink); }
.collection__controls { display: grid; gap: var(--space-5); padding-block: var(--space-5) var(--space-6); }
.collection-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); gap: var(--space-3); align-items: end; padding: var(--space-4); border: 1px solid var(--color-line); background: var(--color-paper); }
.collection-filters__busy { min-height: 1.65em; margin: 0; color: var(--color-muted); font-size: 0.85rem; }
.collection-results__heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-3); margin-bottom: var(--space-5); }
.collection-results__heading p { margin: 0; }
.collection-results__active-filters { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: calc(var(--space-5) * -0.5) 0 var(--space-4); padding: 0; list-style: none; }
.collection-results__active-filters a { display: inline-flex; min-height: 2.75rem; align-items: center; border-bottom: 1px solid var(--color-line); color: var(--color-chili-dark); font-size: 0.8rem; font-weight: 700; text-decoration: none; }
.collection-results__grid { row-gap: var(--space-4); column-gap: 0.75rem; margin-bottom: var(--space-5); }
.collection-results__empty { display: grid; gap: var(--space-3); max-width: var(--reading-max); }
.collection-results__empty h2, .collection-results__empty p { margin: 0; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 0.45rem; margin-bottom: var(--space-5); color: var(--color-muted); font-size: 0.8rem; }
.breadcrumbs a { color: var(--color-chili-dark); }
.product-detail { position: relative; isolation: isolate; overflow: clip; }
.product-detail__powder { top: 7rem; left: 0; width: clamp(24rem, 34vw, 31rem); aspect-ratio: 960 / 1234; opacity: 0.5; transform: translate(-72%, -8%) rotate(9deg); }
.product-detail__grid { display: grid; gap: var(--space-5); }
.product-gallery { display: grid; gap: var(--space-3); }
.product-gallery__figure { scroll-margin-top: var(--space-4); margin: 0; border: 1px solid var(--color-line); background: var(--color-paper); }
.product-gallery__figure a { display: block; }
.product-gallery__figure img { display: block; width: 100%; height: auto; object-position: var(--focal-x, 50%) var(--focal-y, 50%); }
.product-gallery__thumbs { display: flex; gap: var(--space-2); overflow-x: auto; padding-bottom: var(--space-1); }
.product-gallery__thumb { display: block; flex: 0 0 4.5rem; min-height: 2.75rem; padding: 0; border: 2px solid transparent; background: transparent; }
.product-gallery__thumb[aria-current="true"] { border-color: var(--color-chili); }
.product-gallery__thumb img { display: block; width: 100%; height: 4.5rem; object-fit: cover; object-position: var(--focal-x, 50%) var(--focal-y, 50%); }
.product-gallery__empty { padding: var(--space-5); margin: 0; border: 1px solid var(--color-line); color: var(--color-muted); }
.product-detail__copy { display: grid; align-content: start; gap: var(--space-3); }
.product-detail__copy h1, .product-detail__copy p { margin: 0; }
.product-detail__description { color: var(--color-muted); font-size: 1.15rem; }
.product-detail__confirmation { padding-left: var(--space-3); border-left: 4px solid var(--color-chili); color: var(--color-muted); }
.product-detail__facts { display: grid; gap: var(--space-2); margin: 0; border-top: 1px solid var(--color-line); }
.product-detail__facts div { display: grid; gap: 0.3rem; padding-top: var(--space-2); }
.product-detail__facts dt { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; }
.product-detail__facts dd { margin: 0; color: var(--color-muted); }
.product-detail__facts dd a + a::before { content: "/"; margin: 0 0.5rem; color: var(--color-line); }
.product-detail__actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.product-detail__related { margin-top: var(--space-7); padding-top: var(--space-5); border-top: 1px solid var(--color-line); }
.enquiry-page { overflow-x: clip; background: var(--color-canvas); }
.page-home .site-footer,
.page-our-story .site-footer,
.page-visit .site-footer,
.page-enquire .site-footer { margin-top: 0; }
.enquiry-page__main { position: relative; isolation: isolate; overflow: hidden; padding-block: clamp(3rem, 5vw, 4.5rem); }
.enquiry-page__mandala { filter: saturate(0.88); mix-blend-mode: multiply; }
.enquiry-page__mandala--bloom { top: clamp(1.5rem, 4vw, 4rem); left: clamp(-3rem, -2vw, -1rem); width: clamp(18rem, 31vw, 30rem); aspect-ratio: 1 / 1; opacity: 0.18; mix-blend-mode: multiply; transform: rotate(-8deg); }
.enquiry-page__mandala--edge { right: clamp(-5rem, -3vw, -2rem); bottom: clamp(-8rem, -5vw, -4rem); width: clamp(19rem, 28vw, 29rem); aspect-ratio: 960 / 1234; opacity: 0.3; transform: rotate(7deg); }
.enquiry-page__grid { display: grid; gap: var(--space-5); }
.enquiry-page__intro { display: grid; align-content: start; gap: var(--space-4); }
.enquiry-page__heading { display: grid; gap: 0; }
.enquiry-page__heading h1, .enquiry-page__heading p { margin: 0; }
.enquiry-page__heading .eyebrow { margin-bottom: var(--space-2); }
.enquiry-page__heading h1 { max-width: 11ch; margin-bottom: var(--space-4); line-height: 1.1; letter-spacing: -0.025em; }
.enquiry-page__heading > p:not(.eyebrow) { max-width: 36rem; color: var(--color-muted); }
.enquiry-guide { display: grid; gap: var(--space-3); padding: var(--space-4); background: var(--color-chili-dark); color: var(--color-paper); }
.enquiry-guide .eyebrow { color: #efb84b; }
.enquiry-guide h2, .enquiry-guide p { margin: 0; }
.enquiry-guide h2 { max-width: 14ch; color: var(--color-paper); }
.enquiry-guide ol { display: grid; gap: var(--space-3); margin: var(--space-2) 0 0; padding: 0; list-style: none; }
.enquiry-guide li { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: var(--space-2); padding-top: var(--space-3); border-top: 1px solid rgb(239 184 75 / 65%); }
.enquiry-guide li > span { color: #efb84b; font-family: var(--font-display); font-size: 1.35rem; }
.enquiry-guide li > div { display: grid; gap: 0.35rem; }
.enquiry-guide h3 { margin: 0; color: var(--color-paper); font-size: 1.25rem; }
.enquiry-guide li p { color: #eadfcb; font-size: 0.9rem; }
.enquiry-form-panel { min-width: 0; padding: clamp(1.25rem, 4vw, 2.75rem); border-top: 0.35rem solid var(--color-saffron); background: var(--color-paper); box-shadow: var(--shadow-lift); }
.enquiry-form-panel__header { display: grid; gap: var(--space-2); margin-bottom: var(--space-4); }
.enquiry-form-panel__header h2, .enquiry-form-panel__header p { margin: 0; }
.enquiry-form-panel__header h2 { max-width: 14ch; }
.enquiry-form-panel__header > p:last-child { color: var(--color-muted); font-size: 0.85rem; }
.enquiry-page__product { margin: 0 0 var(--space-4); padding: var(--space-3); border-left: 4px solid var(--color-chili); background: var(--color-canvas); }
.enquiry-page__product span { color: var(--color-muted); font-size: 0.78rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.enquiry-form { display: grid; gap: var(--space-3); }
.enquiry-form__field--message { grid-column: 1 / -1; }
.enquiry-form__field textarea { resize: vertical; }
.enquiry-form__field input:focus, .enquiry-form__field textarea:focus { border-color: var(--color-chili); outline: 3px solid rgb(181 51 40 / 16%); outline-offset: 1px; }
.enquiry-form__submit { width: 100%; }
.enquiry-form__summary h2 { margin-top: 0; font-size: 1.25rem; }
.enquiry-form__summary ul { margin-bottom: 0; padding-left: 1.2rem; }
.field-error { margin: 0; color: var(--color-error); font-size: 0.85rem; font-weight: 700; }
.field-optional { color: var(--color-muted); font-weight: 400; }
.enquiry-form__consent label { display: flex; min-height: 2.75rem; gap: 0.65rem; align-items: flex-start; font-weight: 500; cursor: pointer; }
.enquiry-form__consent input { flex: 0 0 auto; width: 1.1rem; min-height: 1.1rem; margin-top: 0.2rem; }
.enquiry-form__honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.enquiry-form__verification { display: grid; min-width: 0; min-height: 4.0625rem; gap: var(--space-2); align-items: start; }
.thanks-page__inner, .editorial-page__reading { max-width: var(--reading-max); }
.thanks-page__inner h1, .thanks-page__inner p, .editorial-page__reading h1, .editorial-page__reading p { margin-top: 0; }
.thanks-page__inner { display: grid; gap: var(--space-3); }
.thanks-page__reference { width: fit-content; padding: var(--space-2); border: 1px solid var(--color-olive); color: var(--color-success); }
.editorial-page__reading { display: grid; gap: var(--space-3); }
.story-page { overflow-x: clip; background: var(--color-canvas); }
.story-hero { overflow: hidden; border-bottom: 0.35rem solid var(--color-saffron); background: var(--color-parchment-deep); color: var(--color-ink); }
.story-hero__grid { display: grid; width: 100%; }
.story-hero__copy { display: grid; grid-area: 2 / 1; align-content: center; gap: var(--space-4); padding-block: var(--space-5) var(--space-6); padding-inline: var(--gutter); background: var(--color-paper); }
.story-hero__copy .eyebrow { color: var(--color-chili-dark); }
.story-hero__copy h1 { max-width: 10ch; margin: 0; }
.story-hero__copy > p:not(.eyebrow) { max-width: 34rem; margin: 0; color: var(--color-muted); }
.story-hero__meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); max-width: 34rem; padding-top: var(--space-3); border-top: 1px solid rgb(83 51 28 / 28%); color: var(--color-teak); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.story-hero__media { grid-area: 1 / 1; min-width: 0; height: clamp(18rem, 75vw, 25rem); margin: 0; overflow: hidden; }
.story-hero__media picture { display: block; height: 100%; }
.story-hero__media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 72% 54%; }
.story-origin, .story-principles, .story-material, .story-cta { padding-block: clamp(3rem, 5vw, 4.5rem); }
.story-origin { background: var(--color-paper); }
.story-origin__grid { display: grid; gap: var(--space-4); }
.story-origin__heading h2 { max-width: 12ch; margin-bottom: 0; }
.story-origin__copy { display: grid; gap: var(--space-3); align-content: center; max-width: 42rem; }
.story-origin__copy p { margin: 0; color: var(--color-muted); }
.story-principles { background: var(--color-chili-dark); color: var(--color-paper); }
.story-principles__header { display: grid; gap: var(--space-2); margin-bottom: var(--space-5); }
.story-principles__header .eyebrow { color: #efb84b; }
.story-principles__header h2 { max-width: 14ch; margin: 0; }
.story-principles__grid { display: grid; gap: var(--space-4); }
.story-principle { padding-top: var(--space-3); border-top: 2px solid var(--color-saffron); }
.story-principle > span { color: #efb84b; font-family: var(--font-display); font-size: 1.75rem; }
.story-principle h3 { margin: var(--space-3) 0 var(--space-2); color: var(--color-paper); font-size: clamp(1.5rem, 2.5vw, 2rem); }
.story-principle p { margin: 0; color: #eadfcb; }
.story-material { background: var(--color-canvas); }
.story-material__grid { display: grid; gap: var(--space-5); }
.story-material__media { min-width: 0; margin: 0; overflow: hidden; background: var(--color-teak); box-shadow: var(--shadow-lift); }
.story-material__media picture { display: block; height: 100%; }
.story-material__media img { display: block; width: 100%; height: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.story-material__copy { display: grid; align-content: center; gap: var(--space-3); padding-inline: var(--gutter); }
.story-material__copy h2, .story-material__copy p { margin: 0; }
.story-material__copy > p:not(.eyebrow) { color: var(--color-muted); }
.story-material__list { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: var(--space-2) 0; padding: 0; list-style: none; }
.story-material__list li { padding: 0.5rem 0.7rem; border: 1px solid var(--color-teak); color: var(--color-teak); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.story-material__note { padding-top: var(--space-3); border-top: 1px solid var(--color-line); font-size: 0.82rem; }
.story-cta { background: var(--color-ink); color: var(--color-paper); }
.story-cta .eyebrow { color: #e1aca5; }
.story-cta__inner { display: grid; gap: var(--space-3); max-width: var(--reading-max); }
.story-cta__inner > p:not(.eyebrow) { margin-bottom: 0; color: #dad5cb; }
.story-cta__actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.story-cta .button--quiet { border-color: var(--color-paper); color: var(--color-paper); }
.visit-page { overflow-x: clip; background: var(--color-canvas); }
.visit-hero { display: grid; overflow: hidden; border-bottom: 0.35rem solid var(--color-saffron); background: var(--color-parchment-deep); }
.visit-hero__media { grid-area: 1 / 1; height: clamp(18rem, 75vw, 25rem); margin: 0; overflow: hidden; }
.visit-hero__media picture { display: block; height: 100%; }
.visit-hero__media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 72% 50%; }
.visit-hero__copy { display: grid; grid-area: 2 / 1; align-content: center; gap: var(--space-3); padding-block: var(--space-5) var(--space-6); padding-inline: var(--gutter); background: var(--color-paper); }
.visit-hero__copy h1, .visit-hero__copy p { margin: 0; }
.visit-hero__copy h1 { max-width: 10ch; }
.visit-hero__copy > p:not(.eyebrow) { max-width: 36rem; color: var(--color-muted); }
.visit-plan, .visit-map, .visit-cta { padding-block: clamp(3rem, 5vw, 4.5rem); }
.visit-plan { background: var(--color-paper); }
.visit-plan__header { display: grid; gap: var(--space-4); margin-bottom: var(--space-5); }
.visit-plan__header h2, .visit-plan__header p { margin: 0; }
.visit-plan__header h2 { max-width: 13ch; }
.visit-plan__header > p { max-width: 42rem; color: var(--color-muted); }
.visit-plan__grid { display: grid; gap: var(--space-3); }
.visit-info-card { display: grid; min-width: 0; align-content: start; gap: var(--space-3); padding: var(--space-4); border-top: 0.3rem solid var(--color-saffron); background: var(--color-canvas); box-shadow: 0 0.85rem 2rem rgb(70 42 25 / 8%); }
.visit-info-card__number { color: var(--color-chili-dark); font-family: var(--font-display); font-size: 1.7rem; }
.visit-info-card h3, .visit-info-card p, .visit-info-card address, .visit-info-card ul { margin: 0; }
.visit-info-card h3 { font-size: clamp(1.5rem, 2.5vw, 2rem); }
.visit-info-card address, .visit-info-card ul, .visit-info-card p { color: var(--color-muted); font-style: normal; }
.visit-info-card ul { display: grid; gap: 0.35rem; padding: 0; list-style: none; }
.visit-info-card a { display: inline-flex; min-height: 2.75rem; align-items: center; overflow-wrap: anywhere; }
.visit-info-card .button { width: fit-content; margin-top: var(--space-2); }
.visit-info-card--primary { background: var(--color-chili-dark); color: var(--color-paper); }
.visit-info-card--primary .visit-info-card__number { color: #efb84b; }
.visit-info-card--primary h3, .visit-info-card--primary address { color: var(--color-paper); }
.visit-info-card--primary .button { background: var(--color-saffron); color: var(--color-ink); }
.visit-info-card--empty { grid-column: 1 / -1; max-width: 44rem; }
.visit-map { background: var(--color-chili-dark); color: var(--color-paper); }
.visit-map__header { display: grid; gap: var(--space-4); align-items: end; margin-bottom: var(--space-5); }
.visit-map__header h2, .visit-map__header p { margin: 0; }
.visit-map__header .eyebrow { color: #efb84b; }
.visit-map__header h2 { max-width: 12ch; }
.visit-map__header .button { width: fit-content; }
.visit-map__header .button--quiet { border-color: var(--color-paper); color: var(--color-paper); }
.visit-map__frame { min-width: 0; padding: clamp(0.4rem, 1vw, 0.75rem); background: var(--color-teak); box-shadow: var(--shadow-lift); }
.visit-map__frame iframe { display: block; width: 100%; height: clamp(22rem, 52vw, 36rem); border: 0; background: var(--color-paper); }
.visit-cta { background: var(--color-parchment-deep); }
.visit-cta__inner { display: grid; gap: var(--space-4); align-items: end; }
.visit-cta__inner h2, .visit-cta__inner p { margin: 0; }
.visit-cta__inner h2 { max-width: 16ch; }
.visit-cta__inner > div:first-child { display: grid; gap: var(--space-3); }
.visit-cta__inner > div:first-child > p:not(.eyebrow) { max-width: 42rem; color: var(--color-muted); }
.visit-cta__actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }

@media (max-width: 64rem) {
  .home-hero__powder { --powder-mobile: edge-crop; top: -5.5rem; left: -4.5rem; width: clamp(8rem, 34vw, 12rem); opacity: 0.68; transform: none; }
  .home-rooms__powder { --powder-mobile: edge-crop; top: 1rem; right: -32vw; left: auto; width: min(72vw, 32rem); opacity: 0.72; transform: none; }
  .home-featured__powder { display: none; }
  .product-detail__powder { display: none; }
  .home-rooms__mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 40rem) {
  .home-hero { padding-top: 11rem; }
  .home-hero__powder { top: 1rem; left: -4.5rem; }
  .home-rooms__mosaic { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 47.999rem) {
  .enquiry-page__mandala--bloom { top: 1.5rem; left: 50%; width: min(112vw, 28rem); opacity: 0.13; transform: translateX(-50%) rotate(-8deg); }
  .enquiry-page__mandala--edge { display: none; }
}

@media (min-width: 48rem) {
  .section-heading--split { grid-template-columns: 1fr auto; align-items: end; }
  .home-hero { padding-block: var(--space-7); }
  .home-hero__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: stretch; }
  .home-hero__copy { padding: var(--space-6) 0 var(--space-6) var(--gutter); }
  .home-hero__media { align-self: center; aspect-ratio: 16 / 10; }
  .home-hero__media picture { --hero-focal-x: var(--focal-x, 50%); --hero-focal-y: var(--focal-y, 50%); }
  .home-showroom__grid { grid-template-areas: "intro ." "media details"; grid-template-columns: 1.1fr 1fr; }
  .home-showroom__details { margin-top: 0; }
  .collection-hero { min-height: clamp(32rem, 42vw, 42rem); isolation: isolate; }
  .collection-hero::after { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgb(245 229 193 / 97%) 0%, rgb(245 229 193 / 90%) 28%, rgb(245 229 193 / 52%) 47%, transparent 68%); content: ""; pointer-events: none; }
  .collection-hero__media { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; }
  .collection-hero__inner { position: relative; z-index: 2; display: grid; min-height: clamp(32rem, 42vw, 42rem); align-items: center; padding-block: var(--space-7); }
  .collection-hero__copy { width: min(43%, 36rem); }
  .collection-filters__busy { grid-column: 1 / -1; }
  .product-detail__grid { grid-template-columns: minmax(0, 7fr) minmax(17rem, 5fr); align-items: start; }
  .product-detail__copy { position: sticky; top: var(--space-3); }
  .enquiry-page__grid { grid-template-columns: minmax(18rem, 5fr) minmax(0, 7fr); gap: var(--space-7); align-items: start; }
  .enquiry-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .enquiry-form__field--phone, .enquiry-form__field--message, .enquiry-form__consent, .enquiry-form__summary, .enquiry-form__verification, .enquiry-form__submit { grid-column: 1 / -1; }
  .visit-hero { position: relative; min-height: clamp(34rem, 44vw, 48rem); }
  .visit-hero::after { z-index: 1; grid-area: 1 / 1; background: linear-gradient(90deg, rgb(241 220 180 / 42%) 0%, rgb(241 220 180 / 16%) 35%, transparent 58%); content: ""; pointer-events: none; }
  .visit-hero__media { grid-area: 1 / 1; height: 100%; }
  .visit-hero__media img { object-position: 50% 50%; }
  .visit-hero__copy { z-index: 2; grid-area: 1 / 1; width: min(47%, 46rem); min-height: inherit; padding-block: var(--space-6); background: transparent; }
  .visit-plan__header { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: end; }
  .visit-plan__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .visit-map__header { grid-template-columns: minmax(0, 1fr) auto; }
  .visit-cta__inner { grid-template-columns: minmax(0, 7fr) minmax(18rem, 5fr); }
  .visit-cta__actions { justify-content: flex-end; }
  .story-hero__grid { position: relative; min-height: clamp(34rem, 44vw, 48rem); }
  .story-hero__grid::after { z-index: 1; grid-area: 1 / 1; background: linear-gradient(90deg, rgb(239 214 166 / 48%) 0%, rgb(239 214 166 / 20%) 35%, transparent 58%); content: ""; pointer-events: none; }
  .story-hero__media { grid-area: 1 / 1; height: 100%; }
  .story-hero__media img { object-position: 50% 54%; }
  .story-hero__copy { z-index: 2; grid-area: 1 / 1; width: min(47%, 46rem); min-height: inherit; padding-block: var(--space-6); background: transparent; }
  .story-origin__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-6); align-items: center; }
  .story-principles__header { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); align-items: end; }
  .story-principles__header .eyebrow { margin-bottom: 0.35rem; }
  .story-principles__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); }
  .story-material__grid { grid-template-columns: minmax(18rem, 5fr) minmax(0, 7fr); gap: var(--space-7); align-items: center; }
  .story-material__copy { padding-left: 0; }
}

@media (min-width: 48rem) and (max-width: 63.999rem) {
  .home-hero__grid { grid-template-columns: minmax(0, 1fr); align-items: start; }
  .home-hero__copy { max-width: var(--reading-max); padding: 0; }
  .home-hero__media { align-self: stretch; }
}
/* Administrator authentication */
.auth-body {
  min-height: 100svh;
  border-top: 0.35rem solid var(--color-chili);
  background: var(--color-canvas);
}

.auth-shell {
  display: grid;
  min-height: 100svh;
  place-items: center;
  padding: clamp(2rem, 8vw, 6rem) var(--gutter);
}

.auth-panel {
  width: min(100%, 36rem);
  padding: clamp(1.5rem, 5vw, 3.5rem);
  border-left: 0.35rem solid var(--color-chili);
  background: var(--color-paper);
}

.auth-brand {
  display: inline-block;
  margin-bottom: var(--space-5);
}

.auth-brand img {
  width: 7.5rem;
}

.auth-panel h1 {
  max-width: 10ch;
  margin-bottom: var(--space-3);
  font-size: clamp(2.5rem, 8vw, 4.5rem);
}

.auth-intro {
  max-width: 32rem;
  margin-bottom: var(--space-5);
  color: var(--color-muted);
}

.auth-error {
  margin-bottom: var(--space-4);
  padding: var(--space-3);
  border: 1px solid var(--color-error);
  border-left-width: 0.3rem;
  color: var(--color-error);
}

.auth-error p {
  margin-bottom: 0;
}

.auth-form {
  display: grid;
  gap: var(--space-4);
}

.auth-form .field-group {
  display: grid;
  gap: var(--space-1);
}

.auth-form label {
  font-size: 0.82rem;
  font-weight: 700;
}

.auth-form input {
  width: 100%;
  min-height: 3rem;
  padding: 0.7rem 0.8rem;
  border: 1px solid var(--color-line);
  border-radius: 2px;
  background: #fff;
  color: var(--color-ink);
}

.auth-form input:focus {
  border-color: var(--color-focus);
}

.auth-submit {
  justify-self: start;
  min-width: 9rem;
}

.auth-back {
  display: inline-block;
  margin-top: var(--space-5);
  color: var(--color-muted);
  text-underline-offset: 0.25em;
}

@media (max-width: 30rem) {
  .auth-shell {
    align-items: start;
    padding-top: 2.5rem;
  }

  .auth-panel {
    padding: 1.5rem;
  }
}
