/* /css/measurement.css */
.measurement-notice[hidden] { display: none; }
.measurement-notice { position: fixed; inset: auto 0 0; z-index: 800; display: flex; align-items: center; gap: 24px; padding: 18px max(24px, calc((100vw - 1360px)/2)); background: #f9f6ee; color: #292a25; border-top: 1px solid #c9c3b6; box-shadow: 0 -8px 30px #0000000d; font: 14px/1.6 'Outfit', sans-serif; }
.measurement-notice strong { font-size: 16px; font-weight: 500; }
.measurement-notice p { margin: 3px 0 0; max-width: 64em; font-size: 13px; }
.measurement-notice a { color: inherit; text-decoration: underline; }
.measurement-notice__actions { display: flex; gap: 8px; flex: none; }
.measurement-notice button { padding: 11px 14px; min-height: 44px; background: transparent; border: 1px solid #867e6d; color: inherit; font: inherit; cursor: pointer; }
.measurement-notice button:last-child { background: #30362d; color: white; }
.measurement-notice button:focus-visible, [data-privacy-choices]:focus-visible { outline: 2px solid #655231; outline-offset: 3px; }
[data-privacy-choices] { padding: 0; border: 0; background: none; color: inherit; font: inherit; cursor: pointer; text-decoration: underline; }
body.has-measurement-notice { padding-bottom: var(--measurement-notice-height, 180px); }
body.has-measurement-notice .cart-bar { bottom: var(--measurement-notice-height, 180px); }
@media (max-width: 1000px) { .measurement-notice { display: block; padding: 14px 20px; } .measurement-notice__actions { margin-top: 12px; flex-wrap: wrap; } }
@media (max-width: 460px) { .measurement-notice__actions { display: grid; grid-template-columns: 1fr 1fr; } .measurement-notice button:last-child { grid-column: 1/-1; } .measurement-notice button { padding: 9px; font-size: 12px; } }

/* /css/site-header.css */
:root {
  --site-header-height: 136px;
  --nav-h: var(--site-header-height);
  --site-header-bg: #f7f3ec;
  --site-header-text: #1c1916;
  --site-header-accent: #a6875d;
  --site-header-font: "Outfit", Arial, sans-serif;
}

.site-nav,
.site-nav * {
  box-sizing: border-box;
}

.site-nav .nav-admin[hidden],
.mobile-overlay .mobile-admin[hidden] {
  display: none !important;
}

.site-nav {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
  display: flex;
  align-items: center;
  width: 100%;
  height: var(--site-header-height);
  padding: 8px clamp(24px, 4vw, 64px);
  border: 0;
  background: rgba(247, 243, 236, 0.96);
  box-shadow: none;
  color: var(--site-header-text);
  font-family: var(--site-header-font);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: box-shadow 0.25s ease, background 0.25s ease;
}

.site-nav.scrolled {
  background: rgba(247, 243, 236, 0.985);
  box-shadow: 0 1px 0 rgba(28, 25, 22, 0.12);
}

.site-nav .nav-brand {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  margin: 0;
  text-decoration: none;
}

.site-nav .nav-logo {
  display: block;
  width: auto;
  height: 80px;
  max-width: none;
  object-fit: contain;
}

.site-nav .nav-menu {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  gap: clamp(13px, 1.6vw, 25px);
  margin: 0 20px;
  padding: 0;
  list-style: none;
}

.site-nav .nav-menu li {
  margin: 0;
  padding: 0;
}

.site-nav .nav-menu a,
.site-nav .nav-quote,
.site-nav .nav-admin,
.site-nav .nav-login {
  font-family: var(--site-header-font);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  white-space: nowrap;
  text-decoration: none;
}

.site-nav .nav-menu a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 0;
  color: var(--site-header-text);
}

.site-nav .nav-menu a::after {
  position: absolute;
  right: 0;
  bottom: -4px;
  left: 0;
  height: 1px;
  background: var(--site-header-accent);
  content: "";
  opacity: 0;
  transform: scaleX(0);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.site-nav .nav-menu a:hover,
.site-nav .nav-menu a[aria-current="page"] {
  color: var(--site-header-accent);
}

.site-nav .nav-menu a:hover::after,
.site-nav .nav-menu a[aria-current="page"]::after {
  opacity: 1;
  transform: scaleX(1);
}

.site-nav .nav-ai-mark,
.mobile-overlay .nav-ai-mark {
  display: inline-block;
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  background: url("/images/try-on/ai-spark.svg") center / contain no-repeat;
}

/* The shared mark is the only Try-On icon. This neutralises legacy page-level
   link backgrounds that may still exist in older static page styles. */
.site-nav .nav-menu a[href="/try-on"],
.mobile-overlay .mobile-overlay__links a[href="/try-on"] {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding-right: 0;
  background-image: none;
}

.site-nav .nav-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  margin: 0;
  padding: 4px;
  border: 1px solid rgba(28, 25, 22, 0.14);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.72);
  box-shadow: 0 8px 24px rgba(42, 35, 27, 0.08);
}

.site-nav .nav-quote,
.site-nav .nav-admin,
.site-nav .nav-login {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 11px 18px;
  border: 1px solid transparent;
  border-radius: 999px;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.site-nav .nav-quote {
  order: 2;
  background: var(--site-header-text);
  color: #fffdf8;
}

.site-nav .nav-login {
  order: 3;
  min-width: 88px;
  background: transparent;
  color: var(--site-header-text);
}

.site-nav .nav-admin {
  order: 1;
  min-width: 76px;
  background: #eee3d2;
  color: #765e3e;
}

.site-nav .nav-quote:hover {
  background: #3b332b;
  color: #fffdf8;
  transform: translateY(-1px);
}

.site-nav .nav-admin:hover,
.site-nav .nav-admin[aria-current="page"] {
  border-color: rgba(166, 135, 93, 0.5);
  background: var(--site-header-accent);
  color: #fffdf8;
}

.site-nav .nav-login:hover,
.site-nav .nav-login.is-authenticated,
.site-nav .nav-login[aria-current="page"] {
  border-color: rgba(166, 135, 93, 0.55);
  background: #f3e7d3;
  color: #654f34;
}

.site-nav .nav-quote:focus-visible,
.site-nav .nav-admin:focus-visible,
.site-nav .nav-login:focus-visible {
  outline: 2px solid var(--site-header-accent);
  outline-offset: 3px;
}

.site-nav .nav-hamburger {
  position: relative;
  z-index: 1002;
  display: none;
  width: 32px;
  height: 26px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.site-nav .nav-hamburger span {
  position: absolute;
  left: 0;
  display: block;
  width: 32px;
  height: 2px;
  margin: 0;
  background: var(--site-header-text);
  transition: top 0.25s ease, transform 0.25s ease, opacity 0.2s ease;
}

.site-nav .nav-hamburger span:nth-child(1) { top: 2px; }
.site-nav .nav-hamburger span:nth-child(2) { top: 12px; }
.site-nav .nav-hamburger span:nth-child(3) { top: 22px; }
.site-nav .nav-hamburger.active span:nth-child(1) { top: 12px; transform: rotate(45deg); }
.site-nav .nav-hamburger.active span:nth-child(2) { opacity: 0; }
.site-nav .nav-hamburger.active span:nth-child(3) { top: 12px; transform: rotate(-45deg); }

.mobile-overlay {
  position: fixed;
  inset: var(--site-header-height) 0 0;
  z-index: 999;
  display: none;
  overflow-y: auto;
  background: rgba(247, 243, 236, 0.99);
  font-family: var(--site-header-font);
}

.mobile-overlay[hidden] {
  display: none !important;
}

.mobile-overlay__links {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: 30px 24px 50px;
}

.mobile-overlay a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 4px;
  color: var(--site-header-text);
  font-family: var(--site-header-font);
  font-size: clamp(19px, 6vw, 28px);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
}

.mobile-overlay a:hover,
.mobile-overlay a[aria-current="page"] {
  color: var(--site-header-accent);
}

@media (max-width: 1180px) {
  :root { --site-header-height: 112px; }
  .site-nav { padding-inline: 24px; }
  .site-nav .nav-logo { height: 68px; }
  .site-nav .nav-menu { gap: 12px; margin-inline: 14px; }
  .site-nav .nav-menu a { font-size: 10px; }
  .site-nav .nav-actions { gap: 2px; padding: 3px; }
  .site-nav .nav-quote,
  .site-nav .nav-admin,
  .site-nav .nav-login { min-height: 36px; padding: 9px 11px; font-size: 9px; }
  .site-nav .nav-login { min-width: 72px; }
}

@media (max-width: 860px) {
  :root { --site-header-height: 92px; }
  .site-nav { justify-content: space-between; padding: 8px 22px; }
  .site-nav .nav-logo { height: 66px; }
  .site-nav .nav-menu,
  .site-nav .nav-actions { display: none; }
  .site-nav .nav-hamburger { display: block; }
  .mobile-overlay.open { display: block; }
}

@media (max-width: 480px) {
  :root { --site-header-height: 82px; }
  .site-nav { padding-inline: 18px; }
  .site-nav .nav-logo { height: 58px; }

  /* Phone menu: use the link background mark only. Some older page styles
     also supply this mark, so hiding the inline mark prevents two icons. */
  .mobile-overlay .nav-ai-mark { display: none; }
  .mobile-overlay .mobile-overlay__links a[href="/try-on"] {
    gap: 0;
    padding-right: 38px;
    background-image: url("/images/try-on/ai-spark.svg");
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 26px 26px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-nav,
  .site-nav *,
  .mobile-overlay * { transition: none !important; }
}

/* One shared, quieter navigation for the whole site. */
:root { --site-header-height: 104px; }
.site-nav { gap: 24px; }
.site-nav .nav-brand { color: inherit; }
.site-nav .nav-logo { height: 58px; mix-blend-mode: multiply; }
.site-nav .nav-wordmark { display: none; }
.site-nav .nav-actions { padding: 0; gap: 4px; border: 0; border-radius: 0; box-shadow: none; background: none; }
.site-nav .nav-quote,
.site-nav .nav-admin,
.site-nav .nav-login { border-radius: 0; padding-inline: 14px; }
.site-nav .nav-login.is-authenticated { background: transparent; border-color: transparent; color: inherit; }
.site-nav .nav-quote { background: transparent; border-color: rgba(28,25,22,.3); color: var(--site-header-text); }
.site-nav .nav-quote:hover { background: var(--site-header-text); }
.site-nav .nav-menu { margin-inline: 0; gap: clamp(12px,1.6vw,24px); }
.site-nav .nav-menu a,
.site-nav .nav-collection-menu summary { font-size: 11px; letter-spacing: .07em; }
.nav-collection-menu { position: relative; }
.site-nav .nav-collection-menu summary { display: flex; align-items: center; gap: 8px; min-height: 44px; cursor: pointer; list-style: none; font-weight: 500; text-transform: uppercase; }
.nav-collection-menu summary::-webkit-details-marker { display: none; }
.nav-collection-menu summary:focus-visible { outline: 2px solid var(--site-header-accent); outline-offset: 4px; }
.nav-collection-menu summary[aria-current] { color: var(--site-header-accent); }
.nav-collection-links { position: absolute; top: 100%; left: -22px; width: 238px; padding: 14px 22px; border: 1px solid #ded9d0; background: #f7f3ec; box-shadow: 0 20px 40px #1c19161a; }
.site-nav .nav-collection-links a { display: flex; align-items: flex-start; flex-direction: column; gap: 5px; width: 100%; padding-block: 14px; color: #1c1916; }
.site-nav .nav-collection-links a span { color: #6b6359; font-size: 11px; text-transform: none; letter-spacing: 0; font-weight: 400; }
.site-nav .nav-collection-links a::after { display: none; }
.mobile-patterns-label { margin-top: 12px; color: #756b5f; font-size: 10px; text-transform: uppercase; letter-spacing: .2em; }
.mobile-patterns-links { display: flex; gap: 28px; margin-bottom: 12px; border-bottom: 1px solid #d7cfc2; }
.mobile-overlay .mobile-patterns-links a { font-size: 19px; }

/* The home page places its navigation directly over the room photograph. */
.home-page .site-nav:not(.scrolled) { background: transparent; backdrop-filter: none; box-shadow: none; color: #fff; --site-header-text: #fff; --site-header-accent: #e1d0b4; }
.home-page .site-nav .nav-logo { display: none; }
.home-page .site-nav .nav-wordmark { display: block; font-size: 21px; line-height: .95; letter-spacing: -.04em; font-weight: 400; }
.home-page .nav-wordmark span { display: block; margin-top: 9px; font-size: 8px; letter-spacing: .16em; text-transform: uppercase; }
.home-page .site-nav:not(.scrolled) .nav-quote { border-color: #ffffff80; }
.home-page .site-nav:not(.scrolled) .nav-admin { background: #ffffff24; color: #fff; }
.home-page .site-nav:not(.scrolled) .nav-login { color: #fff; background: none; }
.home-page .site-nav:not(.scrolled) .nav-collection-links a { color: #1c1916; }
.home-page.is-menu-open .site-nav { background: #f7f3ec; --site-header-text: #1c1916; color: #1c1916; }

@media (max-width: 1180px) {
  :root { --site-header-height: 94px; }
  .site-nav { gap: 14px; }
  .site-nav .nav-menu a,
  .site-nav .nav-collection-menu summary { font-size: 10px; }
  .site-nav .nav-quote,.site-nav .nav-admin,.site-nav .nav-login { padding-inline: 10px; }
}
@media (max-width: 1100px) {
  .site-nav .nav-menu,.site-nav .nav-actions { display: none; }
  .site-nav .nav-hamburger { display: block; }
  .mobile-overlay.open { display: block; }
  .site-nav { justify-content: space-between; }
}
@media (max-width: 860px) { :root { --site-header-height: 82px; } }
@media (max-width: 480px) {
  .site-nav .nav-logo { height: 52px; }
  .mobile-overlay__links { justify-content: flex-start; padding-top: 20px; }
  .home-page .site-nav .nav-wordmark { font-size: 19px; }
}

/* Shared quote channel picker, on desktop and mobile. */
.quote-options { margin: auto; width: min(480px, calc(100% - 32px)); max-height: calc(100dvh - 32px); overflow-y: auto; padding: 28px; border: 1px solid #d5d1c7; background: #faf8f3; color: #282822; font-family: 'Outfit', Arial, sans-serif; }
.quote-options::backdrop { background: rgba(23,32,30,.62); }
.quote-options__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.quote-options__head h2 { margin: 0; font-size: 28px; font-weight: 400; }
.quote-options__head button { flex: none; width: 44px; height: 44px; border: 1px solid #d5d1c7; background: transparent; color: inherit; font-size: 25px; cursor: pointer; }
.quote-options > p { margin: 16px 0; font-size: 14px; line-height: 1.5; }
.quote-options__choices { display: grid; gap: 10px; }
.quote-options__choices > :is(a,button) { display: grid; gap: 6px; width: 100%; padding: 18px; border: 1px solid #d5d1c7; background: transparent; color: inherit; text-decoration: none; text-align: left; font: inherit; font-size: 17px; cursor: pointer; }
.quote-options__choices span { font-size: 13px; color: #706d63; }
.quote-options__choices > :is(a,button):hover { background: #f0ece3; }
.quote-options :is(a,button):focus-visible { outline: 2px solid #746f5b; outline-offset: 3px; }
.quote-options__choices button:disabled { opacity: .6; cursor: wait; }
.quote-options__status:empty { display: none; }

/* /css/design-system.css */
/* Shared visual language, injected last by the build into every public/private page. */
:root {
  --wm-paper: #f3f0e9;
  --wm-surface: #faf8f3;
  --wm-ink: #282822;
  --wm-muted: #706d63;
  --wm-line: #d5d1c7;
  --wm-accent: #746f5b;
  --wm-type: 'Outfit',Arial,sans-serif;
  --ivory: var(--wm-paper);
  --ivory-mid: #e8e4da;
  --ivory-dark: var(--wm-line);
  --white: var(--wm-surface);
  --charcoal: var(--wm-ink);
  --charcoal-mid: #34362e;
  --charcoal-light: #4e5046;
  --text-secondary: var(--wm-muted);
  --bronze: var(--wm-accent);
  --bronze-light: #b8ae94;
  --bronze-pale: #d1c9b6;
  --cream: var(--wm-paper);
  --cream-dark: #e8e4da;
  --dark: var(--wm-ink);
  --dark-mid: #34362e;
  --gold: var(--wm-accent);
  --gold-light: #b8ae94;
  --text-muted: var(--wm-muted);
  --admin-ink: var(--wm-ink);
  --admin-muted: var(--wm-muted);
  --admin-line: var(--wm-line);
  --admin-paper: var(--wm-paper);
  --admin-white: var(--wm-surface);
  --admin-accent: var(--wm-accent);
  --site-header-bg: var(--wm-paper);
  --site-header-text: var(--wm-ink);
  --site-header-accent: var(--wm-accent);
  --side-pad: clamp(24px,5vw,80px);
}
body.wm-design { background: var(--wm-paper); color: var(--wm-ink); font-family: var(--wm-type); -webkit-font-smoothing: antialiased; }
body.wm-design :is(h1,h2,h3,h4,.section-heading,.footer-brand-name,.admin-stat strong,.admin-order-stats strong,.hero-metric-val,.page-title,.cat-title,.wm-card__title,.product-title,.tool-name) { font-family: var(--wm-type); font-weight: 300; letter-spacing: -.035em; }
body.wm-design h1 { line-height: 1.06; letter-spacing: -.05em; }
body.wm-design :is(h1,h2,h3,.section-heading) em { color: inherit; font-style: normal; font-weight: inherit; }
body.wm-design :is(button,input,select,textarea) { font-family: var(--wm-type); }
body.wm-design :is(.section-label,.page-eyebrow,.cat-label,.try-on-kicker,.admin-kicker,.tracking-kicker,.order-kicker) { color: var(--wm-muted); font-size: 10px; letter-spacing: .15em; font-weight: 400; }
body.wm-design :is(.page-hero,.page-header,.cat-hero,.legal-hero,.admin-hero) { padding: clamp(48px,6vw,88px) var(--side-pad); border-bottom: 1px solid var(--wm-line); background: var(--wm-paper); color: var(--wm-ink); text-align: left; }
body.wm-design :is(.page-hero,.page-header,.cat-hero,.legal-hero,.admin-hero)::before,
body.wm-design :is(.page-hero,.cat-hero)::after { display: none; }
body.wm-design :is(.page-hero,.page-header,.cat-hero,.legal-hero) h1 { max-width: 1040px; margin-left: 0; color: var(--wm-ink); font-size: clamp(38px,5vw,76px); }
body.wm-design :is(.page-hero,.page-header,.cat-hero,.legal-hero,.admin-hero) > p:not(.section-label):not(.page-eyebrow):not(.cat-label):not(.admin-kicker) { max-width: 720px; margin-left: 0; color: var(--wm-muted); font-size: 15px; line-height: 1.8; }
body.wm-design :is(.about,.services,.why-us,.areas,.reviews,.showroom,.showroom-location,.showroom-location-alt,.showroom-difference,.tools-intro,.tools-shop,.catalog,.gf-section,.gf-products,.gf-benefits) { background-color: var(--wm-paper); }
body.wm-design :is(.service-card,.why-card,.review-card,.tool-card,.product-card,.wm-card,.try-on-panel,.signup-card,.account-orders,.account-preferences,.account-gallery,.tracking-card,.order-card,.dev-card,.admin-stat,.admin-view,.gf-product-card) { border-radius: 0; box-shadow: none; border-color: var(--wm-line); }
body.wm-design :is(.try-on-panel,.signup-card,.account-orders,.account-preferences,.account-gallery,.tracking-card,.order-card,.dev-card,.admin-stat,.admin-view,.tool-card,.product-card,.gf-product-card) { background-color: var(--wm-surface); }
body.wm-design :is(.btn-fill,.btn-ghost,.try-on-button,.google-login,.signup-google,.admin-button,.order-button,.tracking-form button,.checkout-btn,.tool-add,.cart-checkout,.gf-button,.cat-btn,.wm-state__button,.wm-catalog-search__submit,.wm-catalog-search__reset) { border-radius: 0; box-shadow: none; font-weight: 400; letter-spacing: .07em; }
body.wm-design :is(input:not([type='range']):not([type='checkbox']):not([type='radio']),select,textarea) { border-radius: 0; border-color: var(--wm-line); }
body.wm-design :is(.btn-fill,.admin-button,.order-button,.tracking-form button,.wm-catalog-search__submit) { background: var(--wm-ink); border-color: var(--wm-ink); color: #fff; }
body.wm-design :is(.btn-ghost,.admin-button--outline,.order-button--ghost,.wm-catalog-search__reset) { background: transparent; border-color: var(--wm-line); color: var(--wm-ink); }
body.wm-design .admin-button--secondary { background: transparent; border-color: var(--wm-line); color: var(--wm-ink); }
body.wm-design .admin-hero p { color: var(--wm-muted); }
body.wm-design .admin-hero { padding: 36px; }
body.wm-design .admin-hero h1 { font-size: clamp(36px,4.5vw,66px); }
body.wm-design :is(.try-on-panel,.signup-card,.tracking-card,.order-card,.dev-card) :is(h1,h2,h3) { color: var(--wm-ink); }
body.wm-design .signup-card__account { background: #e9e5dc; border-radius: 0; }
body.wm-design .signup-lock { background: transparent; border-radius: 0; }
body.wm-design .order-main { margin-top: 32px; }
body.wm-design :is(.cta-band,.cat-cta) { background: #34362e; }
body.wm-design .site-footer { background: #282c27; }
body.wm-design .site-footer :is(.footer-brand-name,h4) { color: #f3f0e9; }
body.wm-design :is(.gf-hero,.collection-hero,.collection-path) .section-label { color: #f3f0e9; }
body.wm-design .wm-dialog__copy h2 { font-family: var(--wm-type); }
body.wm-design .try-on-hero__copy h1 { font-family: var(--wm-type); }
body.wm-design .try-on-panel__header h2,
body.wm-design .wizard-stage__intro h3 { font-weight: 300; }
body.wm-design .wizard-edge-control__circle--create { background: #8e866d; box-shadow: 0 8px 25px #28282220; }
body.wm-design .wizard-edge-control__label--create strong { color: #5e5948; }
body.wm-design .wizard-edge-control__circle--create::after { display: none; }
body.wm-design .wizard-edge-control__circle--create { animation: none; }
body.wm-design :is(.tool-badge,.card-tag,.gf-hero__features span) { border-radius: 0; }

/* Same image + wordmark lockup on every page. The original asset is preserved. */
body.wm-design .site-nav .nav-brand { gap: 10px; color: inherit; }
body.wm-design .site-nav .nav-logo { display: block; width: 46px; height: 46px; flex: 0 0 46px; object-fit: contain; mix-blend-mode: normal; }
body.wm-design .site-nav .nav-wordmark { display: block; font-size: 20px; line-height: .96; letter-spacing: -.04em; font-weight: 400; }
body.wm-design .nav-wordmark span { display: block; margin-top: 8px; font-size: 7px; letter-spacing: .15em; text-transform: uppercase; }
body.wm-design .site-nav { padding-inline: clamp(24px,3.5vw,56px); gap: 20px; }
body.wm-design .site-nav .nav-menu { gap: clamp(10px,1.3vw,22px); }
body.wm-design .site-nav .nav-menu a,
body.wm-design .site-nav .nav-collection-menu summary { font-size: 10px; }
body.wm-design .site-nav .nav-quote,
body.wm-design .site-nav .nav-admin,
body.wm-design .site-nav .nav-login { font-size: 10px; padding-inline: 12px; }
body.home-page--light .site-nav:not(.scrolled) { --site-header-text: #282822; --site-header-accent: #746f5b; color: #282822; }
body.home-page--light .site-nav:not(.scrolled) .nav-login { color: #282822; }
body.home-page--light .site-nav:not(.scrolled) .nav-quote { border-color: #28282270; }
body.home-page--light .site-nav:not(.scrolled) .nav-admin { color: #282822; background: #f3f0e9a0; }
body.home-page--light .room-hero { color: #282822; }
body.home-page--light .room-hero__copy h1 { color: #282822; font-size: clamp(52px,6.7vw,102px); }
body.home-page--light .room-hero__copy .editorial-link { color: #282822; }
body.home-page--light .room-hero__shade { background: linear-gradient(180deg,#f3f0e938,transparent 65%); }
body.home-page--light .room-hero__scroll { color: #282822; }
body.home-page--light .room-hero__bottom { color: #282822; }

@media (max-width: 1180px) {
  body.wm-design .site-nav { gap: 12px; padding-inline: 24px; }
  body.wm-design .site-nav .nav-wordmark { font-size: 18px; }
  body.wm-design .site-nav .nav-menu { gap: 10px; }
  body.wm-design .site-nav .nav-menu a,
  body.wm-design .site-nav .nav-collection-menu summary { font-size: 9px; }
  body.wm-design .site-nav .nav-quote,
  body.wm-design .site-nav .nav-admin,
  body.wm-design .site-nav .nav-login { padding-inline: 8px; font-size: 9px; }
}
@media (max-width: 1100px) {
  body.wm-design .site-nav .nav-menu,body.wm-design .site-nav .nav-actions { display: none; }
  body.wm-design .site-nav .nav-hamburger { display: block; }
}
@media (max-width: 640px) {
  body.wm-design .site-nav { padding-inline: 20px; }
  body.wm-design .site-nav .nav-logo { width: 42px; height: 42px; flex-basis: 42px; }
  body.wm-design .site-nav .nav-wordmark { font-size: 18px; }
  body.wm-design :is(.page-hero,.page-header,.cat-hero,.legal-hero) h1 { font-size: clamp(36px,9vw,50px); }
  body.home-page--light .room-hero__copy h1 { font-size: clamp(42px,10.5vw,64px); }
}
@media (prefers-reduced-motion: no-preference) {
  body.wm-design :is(.page-hero,.page-header,.cat-hero,.legal-hero) h1 { animation: wm-heading-in .9s both; }
  body.wm-design :is(.tool-card,.product-card,.gf-product-card) img { transition: transform .7s cubic-bezier(.2,.7,.2,1); }
  body.wm-design :is(.tool-card,.product-card,.gf-product-card):hover img { transform: scale(1.025); }
}
@keyframes wm-heading-in { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  body.wm-design * { animation: none !important; transition: none !important; }
  body.wm-design .reveal { opacity: 1; transform: none; }
}

body.wm-design .site-footer { display: block; margin: 0; padding: 70px var(--side-pad) 30px; color: #f3f0e9ad; font: 400 13px/1.8 var(--wm-type); text-align: left; }
body.wm-design .site-footer .footer-inner { width: min(100%,1440px); margin: auto; }
body.wm-design .site-footer .footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.1fr; gap: 48px; }
body.wm-design .site-footer .footer-lockup { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 26px; color: #f3f0e9; text-decoration: none; font-size: 25px; line-height: .95; font-weight: 300; letter-spacing: -.04em; }
body.wm-design .site-footer .footer-lockup img { display: block; width: 54px; height: 54px; }
body.wm-design .site-footer .footer-brand > p { max-width: 280px; margin-bottom: 20px; }
body.wm-design .site-footer h4 { margin: 0 0 18px; color: #f3f0e9; font-size: 10px; font-weight: 400; letter-spacing: .12em; text-transform: uppercase; }
body.wm-design .site-footer p + h4 { margin-top: 26px; }
body.wm-design .site-footer ul { padding: 0; margin: 0; list-style: none; }
body.wm-design .site-footer li { margin-bottom: 9px; }
body.wm-design .site-footer a { color: inherit; text-decoration: none; }
body.wm-design .site-footer a:hover { color: #fff; }
body.wm-design .site-footer .footer-abn { font-size: 11px; }
body.wm-design .site-footer .footer-bottom { display: flex; justify-content: space-between; gap: 16px; margin-top: 50px; padding-top: 24px; border-top: 1px solid #f3f0e926; font-size: 10px; }
.room-comparison__images { touch-action: pan-y; cursor: ew-resize; }
@media (max-width: 960px) { body.wm-design .site-footer .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; } }
@media (max-width: 600px) {
  body.wm-design .site-footer .footer-grid { grid-template-columns: 1fr; gap: 32px; }
  body.wm-design .site-footer .footer-bottom { align-items: flex-start; flex-direction: column; text-align: left; }
}

/* Open spreads: remove the outer panels; let imagery and content share the page. */
body.wm-design :is(.page-hero,.page-header,.cat-hero,.legal-hero,.admin-hero) { border: 0; }
body.wm-design :is(.about,.services,.why-us,.areas,.reviews,.showroom,.tools-intro,.tools-shop,.catalog,.gf-section,.gf-products,.gf-benefits) :is(h2,h3,.section-heading,.showroom-info-val) { color: var(--wm-ink); }
body.wm-design :is(.about,.services,.why-us,.areas,.reviews,.showroom,.tools-intro,.tools-shop,.catalog,.gf-section,.gf-products,.gf-benefits) :is(p,.showroom-info-label) { color: var(--wm-muted); }
body.wm-design :is(.service-card,.why-card,.review-card,.tool-card,.product-card,.wm-card,.try-on-panel,.signup-card,.account-orders,.account-preferences,.account-gallery,.tracking-card,.order-card,.dev-card,.admin-stat,.admin-view,.gf-product-card,.legal-section,.legal-document,.signup-card__account,.account-preferences__choice,.policy-section,.tools-intro-figure,.showroom-difference-visual) { border: 0; border-radius: 0; box-shadow: none; background: transparent; }
body.wm-design :is(.signup-card,.tracking-card,.order-card,.dev-card) { width: min(100%,880px); padding-inline: 0; }
body.wm-design :is(.account-orders,.account-preferences,.account-gallery,.try-on-panel) { padding-inline: 0; }
body.wm-design .signup-card__intro { text-align: left; }
body.wm-design .signup-card__intro .try-on-kicker { justify-content: flex-start; }
body.wm-design .signup-card__intro > p:last-child { margin-left: 0; }
body.wm-design .signup-card__account { margin-top: 32px; padding: 0; }
body.wm-design .signup-lock { display: none; }
body.wm-design .signup-card__account { grid-template-columns: minmax(0,1fr); }
body.wm-design :is(.about-details,.showroom-info,.home-details,.account-preferences__state,.pattern-discovery,.wm-catalog-search,.tool-card-details) { border: 0; background: transparent; box-shadow: none; }
body.wm-design .why-card { padding-left: 0; }
body.wm-design .review-card { padding-left: 0; padding-right: 0; }
body.wm-design .tools-intro { padding-top: 40px; }
body.wm-design .tools-shop { padding-top: 24px; }
body.wm-design .tools-intro-divider { display: none; }
body.wm-design .tools-intro h2 { font-size: clamp(25px,3vw,40px); }
body.wm-design .tools-intro-inner { max-width: 1000px; }
body.wm-design .page-hero:has(+ .tools-shop) { padding-bottom: 20px; }
body.wm-design .wm-catalog-search { padding-left: 0; padding-right: 0; }
body.wm-design .showroom-difference { border: 0; }
body.wm-design .showroom-difference-inner { align-items: start; }
body.wm-design .showroom-difference-visual { padding: 0; }
body.wm-design .showroom-location { padding-top: 40px; padding-bottom: 70px; }
body.wm-design .showroom-inner { grid-template-columns: 1fr; gap: 38px; }
body.wm-design .showroom-img-wrap { order: -1; width: 100%; height: auto; min-height: 0; aspect-ratio: 16/9; }
body.wm-design .showroom-info { display: flex; flex-wrap: wrap; gap: 30px 60px; }
body.wm-design .showroom-info-row { padding: 0; border: 0; }
body.wm-design .showroom-info-icon { display: none; }
body.wm-design .showroom-info-val a { color: inherit; }
body.wm-design .showroom-inner-reverse { direction: ltr; }
body.wm-design .showroom-content { max-width: 100%; }
body.wm-design .showroom-desc { max-width: 720px; }
body.wm-design .spread-hero { position: relative; display: flex; flex-direction: column; justify-content: end; min-height: 580px; height: 76svh; max-height: 900px; overflow: hidden; isolation: isolate; padding: 60px var(--side-pad); }
body.wm-design .spread-hero__image { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
body.wm-design .spread-hero::after { display: block; content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg,#17201eba,transparent 80%); pointer-events: none; }
body.wm-design .spread-hero h1 { color: #fff; max-width: 920px; }
body.wm-design .spread-hero .section-label { color: #ffffffcf; }
body.wm-design .spread-caption { max-width: 900px; padding: 34px var(--side-pad) 0; color: var(--wm-muted); font-size: 15px; line-height: 1.8; }
body.wm-design .try-on-landing-page .try-on-hero { background: transparent; }
body.wm-design.try-on-landing-page .try-on-hero { background: var(--wm-paper); }
body.wm-design.try-on-landing-page .try-on-hero::before,
body.wm-design.try-on-landing-page .try-on-hero::after { display: none; }
body.wm-design.try-on-landing-page .hero-guide li { background: none; border: 0; box-shadow: none; border-radius: 0; padding-left: 0; }
body.wm-design .before-after-card__image { border-radius: 0; box-shadow: none; }
body.wm-design .commercial-feature { display: block; background: transparent; padding: 40px var(--side-pad) 80px; }
body.wm-design .commercial-feature > img { width: 100%; height: auto; min-height: 0; max-height: 760px; object-fit: cover; }
body.wm-design .commercial-feature > div { display: grid; grid-template-columns: .7fr 1fr 1fr; align-items: start; gap: 30px; padding: 36px 0 0; }
body.wm-design .commercial-feature h2 { margin: 0; font-size: clamp(30px,3.2vw,48px); }
body.wm-design .commercial-feature .editorial-link { grid-column: 3; margin: 0; justify-self: start; }
body.wm-design .commercial-feature .editorial-kicker { margin-top: 8px; }
@media (max-width: 700px) {
  body.wm-design .spread-hero { min-height: 450px; height: 64svh; padding: 40px 24px; }
  body.wm-design .commercial-feature > div { display: block; }
  body.wm-design .commercial-feature h2 { margin: 22px 0; }
  body.wm-design .commercial-feature .editorial-link { margin-top: 20px; }
  body.wm-design .showroom-img-wrap { aspect-ratio: 1.2; }
}
body.wm-design .spread-hero .section-label { justify-content: flex-start; }
body.wm-design .showroom-info { flex-direction: row; }
body.wm-design :is(.quota-card,.selection-review figure,.room-preview-wrap,.generation-loading) { border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.wm-design .pattern-card { border-radius: 0; box-shadow: none; background: transparent; }
body.wm-design .pattern-card[aria-pressed="true"] { outline: 2px solid var(--wm-accent); outline-offset: 3px; }
body.wm-design .pattern-discovery { border-radius: 0; padding-inline: 0; }
body.wm-design :is(.pattern-search-submit,.pattern-search-reset) { border-radius: 0; }

/* /css/experience.css */
/* Current site composition. Shared tokens live in design-system.css. */
:root { --section-pad: clamp(48px,6vw,88px); }
body.wm-design .section-label::before { display: none; }
body.wm-design :is(.page-header,.cat-hero,.legal-hero) { padding-block: clamp(32px,4vw,60px); }
body.wm-design :is(.section-heading,.page-hero h1,.page-header h1,.cat-hero h1) { text-wrap: balance; }
body.wm-design :is(.about-inner,.services-inner,.why-us-inner,.reviews-inner,.faq-inner) { max-width: 1420px; }
body.wm-design .editorial-section { padding-block: clamp(48px,7vw,100px); }
body.wm-design :is(.tool-card,.product-card,.wm-card) img { border-radius: 0; }
body.wm-design .tools-shop-inner { max-width: 1420px; }
body.wm-design :is(.tracking-main,.order-main,.legal-main,.dev-main) { width: min(1180px,calc(100% - 2 * var(--side-pad))); }
body.wm-design .legal-main { padding-top: 24px; }
body.wm-design .policy-section { margin-top: 30px; }
body.wm-design .commercial-intro { align-items: center; gap: 50px; padding-bottom: 26px; }
body.wm-design .commercial-intro > p { max-width: 390px; font-size: 14px; line-height: 1.8; }

/* The home stream cycles through collection styling, with no numeric controls. */
body.wm-design.home-page .room-hero__image { transform: scale(1.035); transition: opacity .65s ease,transform 3.4s linear; }
body.wm-design.home-page .room-hero__image.is-current { transform: scale(1); }
body.wm-design.home-page .room-hero__shade { background: linear-gradient(90deg,#f3f0e965,transparent 76%),linear-gradient(180deg,#f3f0e938,transparent 65%); }
.hero-ai-link { display: block; width: fit-content; margin-top: 18px; color: inherit; font-size: 12px; text-decoration: none; }
.hero-ai-link span { display: inline-block; margin-left: 18px; font-size: 19px; }
.hero-ai-link:hover { text-decoration: underline; text-underline-offset: 5px; }

/* AI introduction: the room comparison and the action share the first screen. */
body.wm-design.try-on-landing-page .try-on-main { padding: 0; min-height: 0; }
.ai-entry { display: grid; grid-template-columns: .8fr 1.35fr; column-gap: clamp(32px,5vw,76px); row-gap: 34px; width: min(1420px,calc(100% - 2 * var(--side-pad))); padding: 36px 0 42px; margin: auto; align-items: center; }
.ai-entry__copy { grid-column: 1; grid-row: 1; }
.ai-entry__copy .editorial-kicker { color: var(--wm-muted); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 22px; }
body.wm-design .ai-entry h1 { font-size: clamp(46px,5.6vw,82px); font-weight: 300; line-height: .98; letter-spacing: -.055em; margin: 0 0 24px; color: var(--wm-ink); }
.ai-entry__copy > p:not(.editorial-kicker):not(.ai-entry__account) { font-size: 15px; line-height: 1.8; color: var(--wm-muted); margin: 0 0 28px; }
.experience-button { display: inline-flex; min-height: 50px; padding: 15px 24px; align-items: center; justify-content: space-between; gap: 45px; background: var(--wm-ink); color: var(--wm-paper); border: 1px solid var(--wm-ink); text-decoration: none; font-size: 13px; transition: background .2s; }
.experience-button:hover { background: #4e5046; }
.experience-button:focus-visible { outline: 2px solid var(--wm-accent); outline-offset: 4px; }
.ai-entry__account,.ai-entry__notice { font-size: 11px; line-height: 1.7; color: var(--wm-muted); }
.ai-entry__account { margin-top: 15px; }
.ai-entry__visual { grid-column: 2; grid-row: 1; min-width: 0; }
.ai-room-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ai-room-pair figure { margin: 0; min-width: 0; }
.ai-room-pair img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; background: #ded8ce; }
.ai-room-pair figcaption { margin-top: 12px; color: var(--wm-ink); font-size: 12px; }
.ai-entry__notice { margin-top: 16px; }
.ai-process { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4,1fr); gap: 26px; padding: 28px 0 0; margin: 0; border-top: 1px solid var(--wm-line); list-style: none; }
.ai-process li { position: relative; padding-left: 30px; }
.ai-process li > span { position: absolute; top: 2px; left: 0; color: var(--wm-accent); font-size: 10px; }
.ai-process strong { display: block; font-size: 13px; font-weight: 400; }
.ai-process p { color: var(--wm-muted); font-size: 12px; line-height: 1.5; margin-top: 7px; }

/* Studio: a compact workbench, with the same photographic language as Home. */
body.wm-design.try-on-studio-page .try-on-main { padding: 0; min-height: 0; }
body.wm-design.try-on-studio-page .try-on-shell { width: min(1320px,calc(100% - 2 * var(--side-pad))); margin: 0 auto; padding: 26px 0 46px; }
body.wm-design.try-on-studio-page .try-on-wizard { border: 0; border-radius: 0; box-shadow: none; background: transparent; overflow: visible; }
body.wm-design.try-on-studio-page .wizard-heading { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 6px 35px; padding: 0 0 22px; text-align: left; }
body.wm-design.try-on-studio-page .wizard-heading .try-on-eyebrow { grid-column: 1; justify-content: start; font-size: 9px; margin: 0; }
body.wm-design.try-on-studio-page .wizard-heading h1 { grid-column: 1; margin: 0; font-size: clamp(30px,3.1vw,44px); }
body.wm-design.try-on-studio-page .wizard-heading > p:last-child { grid-column: 2; grid-row: 2; margin: 0; font-size: 12px; }
body.wm-design.try-on-studio-page .wizard-progress { gap: 20px; padding: 14px 0; border-block: 1px solid var(--wm-line); }
body.wm-design.try-on-studio-page .wizard-progress li { display: flex; justify-content: start; align-items: center; gap: 8px; font-size: 10px; letter-spacing: .04em; }
body.wm-design.try-on-studio-page .wizard-progress li::after { display: none; }
body.wm-design.try-on-studio-page .wizard-progress li span { width: 24px; height: 24px; font-size: 10px; background: transparent; }
body.wm-design.try-on-studio-page .wizard-progress li.is-current span { background: var(--wm-ink); border-color: var(--wm-ink); color: var(--wm-paper); }
body.wm-design.try-on-studio-page .wizard-progress li.is-complete span { background: var(--wm-accent); color: #fff; border-color: var(--wm-accent); }
body.wm-design.try-on-studio-page .wizard-stage { padding: 22px 0 0; min-height: 0; border: 0; border-radius: 0; background: transparent; scroll-margin-top: calc(var(--site-header-height) + 16px); }
body.wm-design.try-on-studio-page .wizard-stage__intro { max-width: none; margin-bottom: 18px; }
body.wm-design.try-on-studio-page .wizard-stage__intro .try-on-eyebrow { display: none; }
body.wm-design.try-on-studio-page .wizard-stage__intro h3 { font-size: clamp(26px,3vw,38px); margin: 0; }
body.wm-design.try-on-studio-page .wizard-stage__intro > p:last-child { margin-top: 8px; font-size: 13px; }
body.wm-design.try-on-studio-page .room-builder { display: grid; grid-template-columns: .85fr 1.15fr; gap: 40px; align-items: center; margin: 0; }
body.wm-design.try-on-studio-page .upload-zone { min-height: 0; padding: 28px 0; border: 0; border-radius: 0; background: none; text-align: left; align-content: center; justify-items: start; }
body.wm-design.try-on-studio-page .upload-zone__icon { display: grid; place-items: center; width: 40px; height: 40px; margin: 0 0 18px; border: 1px solid var(--wm-line); border-radius: 0; font-size: 24px; color: var(--wm-ink); background: none; }
body.wm-design.try-on-studio-page .upload-zone strong { font-size: 22px; font-weight: 300; line-height: 1.3; }
body.wm-design.try-on-studio-page .upload-zone p { font-size: 12px; max-width: 280px; margin-top: 14px; }
body.wm-design.try-on-studio-page .upload-actions { justify-content: start; margin-top: 22px; }
body.wm-design.try-on-studio-page .upload-zone .try-on-button { min-height: 46px; padding: 13px 18px; font-size: 11px; }
body.wm-design.try-on-studio-page .room-preview-wrap { height: auto; min-height: 0; border: 0; border-radius: 0; background: #e4ded5; }
/* Before a photo is chosen the preview area shows the photo guide instead. */
body.wm-design.try-on-studio-page .room-preview-wrap:has(> .room-photo-guide:not([hidden])) { height: auto; min-height: 0; place-items: stretch; }
body.wm-design.try-on-studio-page .room-photo-guide { display: block; width: 100%; max-width: none; margin: 0; padding: clamp(24px, 3vw, 40px); color: var(--wm-ink); text-align: left; }
body.wm-design.try-on-studio-page .room-photo-guide[hidden] { display: none; }
.room-photo-guide__title { margin: 0 0 18px; color: var(--wm-muted); font-size: 11px; letter-spacing: .15em; text-transform: uppercase; }
.room-photo-guide__list { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; counter-reset: guide; }
.room-photo-guide__list li { position: relative; padding-left: 40px; color: var(--wm-muted); font-size: 14px; line-height: 1.6; counter-increment: guide; }
.room-photo-guide__list li::before { content: counter(guide); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid var(--wm-ink); border-radius: 50%; color: var(--wm-ink); font-size: 12px; }
.room-photo-guide__list strong { display: block; color: var(--wm-ink); font-weight: 500; }
/* The whole wall photo stays visible: a fixed-height box cropped tall photos. */
body.wm-design.try-on-studio-page #room-preview { width: 100%; height: auto; max-height: min(68vh, 640px); object-fit: contain; }
body.wm-design.try-on-studio-page .room-file-name { font-size: 11px; margin-top: 10px; }
body.wm-design.try-on-studio-page .wizard-actions { margin: 18px 0 0; padding: 14px 0 0; border-top: 1px solid var(--wm-line); gap: 20px; }
body.wm-design.try-on-studio-page .wizard-edge-control { position: static; width: auto; flex-direction: row; gap: 10px; align-items: center; transform: none; }
body.wm-design.try-on-studio-page .wizard-edge-control__circle { width: 36px; height: 36px; flex-basis: 36px; font-size: 20px; box-shadow: none; border: 0; background: var(--wm-ink); }
body.wm-design.try-on-studio-page .wizard-edge-control__label { min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--wm-ink); box-shadow: none; font-size: 12px; }
/* Once a design is picked, its Review arrow floats halfway down the right edge of the screen. */
body.wm-design.try-on-studio-page #pattern-next { position: fixed; z-index: 80; top: 50%; right: max(16px, env(safe-area-inset-right)); flex-direction: column; gap: 8px; transform: translateY(-50%); }
body.wm-design.try-on-studio-page #pattern-next .wizard-edge-control__circle { width: 56px; height: 56px; flex-basis: 56px; font-size: 26px; box-shadow: 0 10px 24px rgba(23, 22, 19, .3); }
body.wm-design.try-on-studio-page #pattern-next .wizard-edge-control__label { padding: 4px 10px; background: var(--wm-paper); box-shadow: 0 4px 12px rgba(23, 22, 19, .12); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
body.wm-design.try-on-studio-page #pattern-next[hidden] { display: none; }
body.wm-design.try-on-studio-page .wizard-edge-control__label--create { display: block; text-align: left; }
body.wm-design.try-on-studio-page .wizard-edge-control__label--create small { display: block; color: var(--wm-muted); font-size: 10px; }
body.wm-design.try-on-studio-page .wizard-edge-control__spark { display: none; }
body.wm-design.try-on-studio-page .pattern-discovery { margin: 0 0 18px; padding: 0; gap: 12px; background: transparent; }
body.wm-design.try-on-studio-page .pattern-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px 18px; }
body.wm-design.try-on-studio-page .pattern-card { border: 0; overflow: visible; }
body.wm-design.try-on-studio-page .pattern-card__image { aspect-ratio: 1; }
body.wm-design.try-on-studio-page .pattern-card__body { padding: 12px 0 0; }
body.wm-design.try-on-studio-page .pattern-card__title { font-size: 15px; }
body.wm-design.try-on-studio-page .selection-review { gap: 22px; }
body.wm-design.try-on-studio-page .selection-review img { height: 320px; object-fit: contain; background: #e9e4da; }
body.wm-design.try-on-studio-page .review-patterns { margin-top: 24px; }
body.wm-design.try-on-studio-page .review-pattern-rail { gap: 12px; }
body.wm-design.try-on-studio-page .review-pattern-option { border-radius: 0; }
body.wm-design.try-on-studio-page :is(.auth-card,.consent-card,.create-ready) { padding: 22px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.wm-design.try-on-studio-page .auth-card h4 { font-size: 28px; margin-block: 8px 12px; }
body.wm-design.try-on-studio-page .generation-loading { min-height: 240px; }
body.wm-design.try-on-studio-page .create-ready__selection { max-width: 540px; }
body.wm-design.try-on-studio-page .result-media img { max-height: 70svh; object-fit: contain; }

/* Account entry uses a photographic spread; account data stays full width below. */
body.wm-design.signup-page .signup-main { display: grid; grid-template-columns: 1fr 1fr; gap: 38px 5vw; align-items: center; width: min(1420px,calc(100% - 2 * var(--side-pad))); min-height: 0; margin-inline: auto; padding: 32px 0 50px; }
.account-cover { align-self: stretch; position: relative; min-height: 480px; overflow: hidden; }
.account-cover > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.account-cover > span { position: absolute; bottom: 28px; left: 28px; right: 28px; color: #fff; font-size: 36px; font-weight: 300; letter-spacing: -.03em; text-shadow: 0 2px 20px #0007; }
body.wm-design.signup-page .signup-card { width: 100%; padding: 0; }
body.wm-design.signup-page .signup-card__intro h1 { font-size: clamp(36px,4vw,58px); text-wrap: initial; }
body.wm-design.signup-page .signup-main > :is(.account-gallery,.account-orders,.account-preferences) { grid-column: 1 / -1; width: 100%; }

/* Private administration follows the same open layout and quiet typography. */
body.wm-design.admin-page .admin-main { width: min(1540px,calc(100% - 2 * var(--side-pad))); padding-top: 30px; margin-bottom: 60px; }
body.wm-design.admin-page .admin-hero { padding: 0 0 26px; gap: 24px; }
body.wm-design.admin-page .admin-hero h1 { font-size: clamp(38px,4.5vw,64px); }
body.wm-design.admin-page .admin-hero p:not(.admin-kicker) { margin-top: 12px; font-size: 13px; }
body.wm-design.admin-page .admin-status { margin: 0 0 22px; padding: 12px 0; border: 0; border-top: 1px solid var(--wm-line); background: transparent; font-size: 12px; }
body.wm-design.admin-page .admin-shell { grid-template-columns: 200px minmax(0,1fr); gap: 50px; }
body.wm-design.admin-page .admin-sidebar { border: 0; background: transparent; }
body.wm-design.admin-page .admin-sidebar__label { padding: 0 0 18px; font-size: 9px; }
body.wm-design.admin-page .admin-sidebar__nav { gap: 4px; }
body.wm-design.admin-page .admin-sidebar__nav a { display: block; padding: 13px 14px; min-height: 0; border: 0; font-size: 13px; font-weight: 400; }
body.wm-design.admin-page .admin-sidebar__nav a[aria-current='page'] { background: #e4dfd3; color: var(--wm-ink); }
body.wm-design.admin-page .admin-view { min-height: 0; padding: 0; }
body.wm-design.admin-page .admin-section__heading { margin-bottom: 24px; }
body.wm-design.admin-page .admin-view h2 { font-size: clamp(28px,3vw,42px); }
body.wm-design.admin-page .admin-section__heading p:not(.admin-kicker) { max-width: 650px; font-size: 13px; line-height: 1.7; }
body.wm-design.admin-page .admin-stats { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0 24px; margin-top: 0; }
body.wm-design.admin-page .admin-stat { min-height: 0; padding: 22px 0; border: 0; border-top: 1px solid var(--wm-line); }
body.wm-design.admin-page .admin-stat strong { font-family: var(--wm-type); font-size: 45px; font-weight: 300; margin-bottom: 8px; }
body.wm-design.admin-page .admin-stat span { font-size: 10px; line-height: 1.5; }
body.wm-design.admin-page .admin-order-stats article { padding: 16px 0; border: 0; border-top: 1px solid var(--wm-line); background: transparent; }
body.wm-design.admin-page .admin-image-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px 18px; }
body.wm-design.admin-page .admin-image-card { border: 0; background: transparent; }
body.wm-design.admin-page .admin-image-card__meta { padding: 12px 0; font-size: 12px; }
body.wm-design.admin-page .admin-table-wrap { border: 0; border-top: 1px solid var(--wm-line); }
body.wm-design.admin-page .admin-table th { background: transparent; color: var(--wm-muted); font-size: 9px; font-weight: 400; }
body.wm-design.admin-page .admin-table td { font-size: 12px; padding: 14px 12px; }
body.wm-design.admin-page .admin-table th:last-child { background: var(--wm-paper); }
body.wm-design.admin-page .admin-automation { padding: 18px 0; border: 0; border-block: 1px solid var(--wm-line); background: transparent; }
body.wm-design.admin-page .admin-automation h3 { font-family: var(--wm-type); font-weight: 300; }
body.wm-design.admin-page .admin-order-bulk { background: #e8e3d9; border: 0; }
body.wm-design.admin-page .admin-email-setup { padding: 14px 0; border: 0; border-block: 1px solid var(--wm-line); background: transparent; }
body.wm-design.admin-page .admin-admin { padding: 16px 0; border: 0; border-bottom: 1px solid var(--wm-line); }
body.wm-design.admin-page .admin-button { font-size: 10px; padding: 12px 16px; min-height: 42px; }

@media (max-width: 1000px) {
  .ai-entry { grid-template-columns: .9fr 1.1fr; gap: 26px; }
  body.wm-design.try-on-studio-page .wizard-heading > p:last-child { display: none; }
  body.wm-design.try-on-studio-page .room-builder { grid-template-columns: 1fr 1.1fr; gap: 25px; }
  body.wm-design.try-on-studio-page .pattern-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  body.wm-design.admin-page .admin-shell { gap: 25px; grid-template-columns: 170px minmax(0,1fr); }
  body.wm-design.admin-page .admin-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .ai-entry { grid-template-columns: 1fr; gap: 24px; padding-top: 26px; }
  .ai-entry__copy,.ai-entry__visual { grid-column: 1; grid-row: auto; }
  body.wm-design .ai-entry h1 { font-size: 48px; margin-bottom: 14px; }
  .ai-entry__copy .editorial-kicker { margin-bottom: 15px; }
  .ai-entry__copy > p:not(.editorial-kicker):not(.ai-entry__account) { font-size: 14px; margin-bottom: 18px; }
  .ai-process { grid-template-columns: repeat(2,1fr); gap: 20px; padding-top: 20px; }
  .ai-entry__notice { font-size: 10px; }
  body.wm-design.try-on-studio-page .try-on-shell { padding-top: 22px; }
  body.wm-design.try-on-studio-page .wizard-heading { padding-bottom: 18px; }
  body.wm-design.try-on-studio-page .wizard-progress { gap: 8px; }
  body.wm-design.try-on-studio-page .wizard-progress li { gap: 5px; }
  body.wm-design.try-on-studio-page .wizard-progress li strong { font-size: 8px; }
  body.wm-design.try-on-studio-page .room-builder { grid-template-columns: 1fr; gap: 18px; }
  body.wm-design.try-on-studio-page .upload-zone { padding: 4px 0; }
  body.wm-design.try-on-studio-page .upload-zone__icon { display: none; }
  body.wm-design.try-on-studio-page .upload-zone strong { display: none; }
  body.wm-design.try-on-studio-page .upload-zone p { margin-top: 0; }
  body.wm-design.try-on-studio-page .upload-actions { margin-top: 14px; }
  body.wm-design.try-on-studio-page .upload-zone__drop-note { display: none; }
  body.wm-design.try-on-studio-page #room-preview { max-height: 60vh; }
  body.wm-design.try-on-studio-page .pattern-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.wm-design.try-on-studio-page .selection-review img { height: 220px; }
  body.wm-design.signup-page .signup-main { grid-template-columns: 1fr; padding-top: 22px; gap: 28px; }
  .account-cover { min-height: 220px; }
  .account-cover > span { font-size: 30px; }
  body.wm-design.admin-page .admin-main { padding-top: 22px; }
  body.wm-design.admin-page .admin-hero { align-items: start; flex-direction: row; }
  body.wm-design.admin-page .admin-hero p:not(.admin-kicker) { max-width: 250px; }
  body.wm-design.admin-page .admin-hero .admin-button { align-self: end; font-size: 9px; white-space: nowrap; padding-inline: 10px; }
  body.wm-design.admin-page .admin-shell { grid-template-columns: 1fr; gap: 25px; }
  body.wm-design.admin-page .admin-sidebar { top: var(--site-header-height); background: var(--wm-paper); z-index: 5; }
  body.wm-design.admin-page .admin-sidebar__nav { display: flex; gap: 4px; padding-bottom: 10px; }
  body.wm-design.admin-page .admin-sidebar__nav a { flex: 0 0 auto; padding: 11px 13px; font-size: 11px; }
  body.wm-design.admin-page .admin-image-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  body.wm-design.home-page .room-hero__image { transition: none; transform: none; }
}
body.wm-design.try-on-studio-page .upload-zone strong { font-family: var(--wm-type); }
body.wm-design.try-on-studio-page .try-on-eyebrow::before { display: none; }
body.wm-design.try-on-studio-page .selection-review { grid-template-columns: repeat(2,minmax(0,1fr)); }
body.wm-design.try-on-studio-page .pattern-search-submit { background: var(--wm-ink); border-color: var(--wm-ink); }
body.wm-design.try-on-studio-page .pattern-search-reset { border-color: var(--wm-line); color: var(--wm-ink); }
body.wm-design.try-on-studio-page .selection-review figcaption { background: transparent; padding-inline: 0; }
@media (max-width: 760px) {
  body.wm-design.try-on-studio-page .selection-review img { height: 160px; }
}

/* /css/immersive.css */
/* Shared Home composition for the collection pages and the full-width AI viewer. */
body.wm-design.immersive-page .site-nav { position: fixed; }
body.wm-design.immersive-page .site-nav:not(.scrolled) { background: transparent; backdrop-filter: none; color: #fff; --site-header-text: #fff; --site-header-accent: #e0d2bb; }
body.wm-design.immersive-page .site-nav:not(.scrolled) .nav-login { color: #fff; background: none; }
body.wm-design.immersive-page .site-nav:not(.scrolled) .nav-quote { border-color: #ffffff80; color: #fff; }
body.wm-design.immersive-page .site-nav:not(.scrolled) .nav-admin { background: #ffffff30; color: #fff; }
body.wm-design.immersive-page .site-nav:not(.scrolled) .nav-collection-links a { color: var(--wm-ink); }
body.wm-design.immersive-page--light .site-nav:not(.scrolled) { color: var(--wm-ink); --site-header-text: #282822; --site-header-accent: #746f5b; }
body.wm-design.immersive-page--light .site-nav:not(.scrolled) .nav-login { color: var(--wm-ink); }
body.wm-design.immersive-page--light .site-nav:not(.scrolled) .nav-quote { color: var(--wm-ink); border-color: #28282270; }
body.wm-design.immersive-page--light .site-nav:not(.scrolled) .nav-admin { color: var(--wm-ink); background: #f3f0e9a0; }
body.wm-design.immersive-page.is-menu-open .site-nav { background: var(--wm-paper); color: var(--wm-ink); --site-header-text: #282822; }
body.wm-design.immersive-page .journey-hero { height: 100svh; min-height: 680px; max-height: 1200px; margin: 0; }
body.wm-design.immersive-page .room-hero__image { transform: scale(1.035); transition: opacity .75s ease,transform 4s linear; }
body.wm-design.immersive-page .room-hero__image.is-current { transform: scale(1); }
body.wm-design.immersive-page .room-hero__copy { top: 27%; }
body.wm-design.immersive-page .room-hero__copy h1 { max-width: 1000px; font-size: clamp(54px,7.5vw,116px); font-weight: 300; line-height: .98; letter-spacing: -.065em; }
body.wm-design.immersive-page .room-hero__copy .editorial-link { color: #fff; }
body.wm-design.immersive-page .room-hero__shade { background: linear-gradient(180deg,#17201e75,transparent 30%),linear-gradient(90deg,#17201e70,transparent 85%),linear-gradient(0deg,#17201e8a,transparent 40%); }
body.wm-design.immersive-page .hero-playback button { color: #fff; background: #17201e30; border-color: #ffffff80; }
body.wm-design.immersive-page .hero-playback button:hover { background: #17201e80; }
body.wm-design.immersive-page--light .room-hero__copy h1,
body.wm-design.immersive-page--light .room-hero__copy .editorial-link,
body.wm-design.immersive-page--light .room-hero__bottom,
body.wm-design.immersive-page--light .room-hero__scroll { color: var(--wm-ink); }
body.wm-design.immersive-page--light .room-hero__shade { background: linear-gradient(90deg,#f3f0e982,transparent 85%),linear-gradient(180deg,#f3f0e940,transparent 60%); }
body.wm-design.immersive-page--light .hero-playback button { color: var(--wm-ink); background: #f3f0e966; border-color: #28282260; }
.journey-intro { display: flex; align-items: end; justify-content: space-between; gap: 50px; padding: clamp(60px,8vw,112px) var(--side-pad) 48px; max-width: 1600px; margin: auto; }
body.wm-design .journey-intro h2 { font-size: clamp(38px,4.7vw,72px); line-height: 1.05; font-weight: 300; letter-spacing: -.045em; margin: 0; }
.journey-intro > p { max-width: 360px; color: var(--wm-muted); font-size: 14px; line-height: 1.9; }

/* Murals: room photography leads, then a spacious, browsable image collection. */
body.wm-design.patterns-page.immersive-page .collection-tabs { justify-content: start; padding: 14px var(--side-pad); min-height: 68px; border-bottom: 1px solid var(--wm-line); }
body.wm-design.patterns-page.immersive-page .collection-tabs > span { margin-right: auto; }
body.wm-design.patterns-page.immersive-page .wm-catalog { padding-top: 28px; padding-bottom: 50px; scroll-margin-top: calc(var(--site-header-height) + 20px); }
body.wm-design.patterns-page.immersive-page .wm-catalog__inner { width: 100%; max-width: 1480px; }
body.wm-design.patterns-page.immersive-page .wm-catalog__heading { margin-bottom: 30px; }
body.wm-design.patterns-page.immersive-page .wm-catalog__heading h2 { font-size: clamp(28px,3.2vw,46px); }
body.wm-design.patterns-page.immersive-page .wm-catalog-search { padding: 0; margin: 0 0 40px; gap: 16px; background: none; border: 0; }
body.wm-design.patterns-page.immersive-page .wm-catalog__grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 45px 28px; }
body.wm-design.patterns-page.immersive-page .wm-card__image-wrap { aspect-ratio: 1; }
body.wm-design.patterns-page.immersive-page .wm-card__image { object-fit: cover; }
body.wm-design.patterns-page.immersive-page .wm-card__title { font-family: var(--wm-type); font-weight: 300; font-size: 22px; }
body.wm-design.patterns-page.immersive-page .wm-card__badge { font-size: 9px; background: #f3f0e9e8; color: var(--wm-ink); }
body.wm-design.patterns-page.immersive-page .collection-description { max-width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 24px 7vw; padding-block: 70px; }
body.wm-design.patterns-page.immersive-page .collection-description .editorial-kicker { grid-column: 1; margin-bottom: 0; }
body.wm-design.patterns-page.immersive-page .collection-description h2 { grid-column: 1; }
body.wm-design.patterns-page.immersive-page .collection-description > p:not(.editorial-kicker) { grid-column: 2; grid-row: 2; margin: 0; }
body.wm-design.patterns-page.immersive-page .collection-description .editorial-link { grid-column: 2; justify-self: start; }

/* Tools: real product photography, open editorial product rows and retained checkout. */
body.wm-design.tools-page .room-hero__slides { background: #d4d1ca; }
body.wm-design.tools-page .room-hero__image:first-child { object-fit: contain; object-position: right center; }
body.wm-design.tools-page .room-hero__shade { background: linear-gradient(90deg,#f3f0e9ec 0%,#f3f0e990 36%,transparent 80%); }
body.wm-design.tools-page .tools-page-flow { display: block; }
body.wm-design.tools-page .tools-shop { padding-top: 25px; }
body.wm-design.tools-page .tools-shop-header { text-align: left; margin-bottom: 45px; }
body.wm-design.tools-page .tools-shop-header .section-label { justify-content: start; }
body.wm-design.tools-page .tools-shop-header h2 { font-size: clamp(30px,3.8vw,55px); }
body.wm-design.tools-page .tools-shop-header > p:last-child { margin-left: 0; max-width: 660px; font-size: 14px; }
body.wm-design.tools-page .tools-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
body.wm-design.tools-page .tool-card--featured { grid-column: 1 / -1; padding-bottom: 50px; margin-bottom: 20px; border: 0; background: transparent; }
body.wm-design.tools-page .tool-card:hover { transform: none; box-shadow: none; }
body.wm-design.tools-page .tool-card--featured .tool-card-body { display: grid; grid-template-columns: 1.05fr 1fr; align-items: start; gap: clamp(30px,6vw,90px); }
body.wm-design.tools-page .tool-media { position: sticky; top: calc(var(--site-header-height) + 24px); min-height: 500px; padding: 45px; background: #e6e1d7; }
body.wm-design.tools-page .tool-media img { max-height: 480px; max-width: 100%; filter: none; border-radius: 0; }
body.wm-design.tools-page .tool-card--featured:nth-child(2) .tool-media { grid-column: 2; grid-row: 1; }
body.wm-design.tools-page .tool-card--featured:nth-child(2) .tool-info { grid-column: 1; grid-row: 1; }
body.wm-design.tools-page .tool-info { padding: 12px 0 0; }
body.wm-design.tools-page .tool-info h3 { font-size: clamp(35px,3.6vw,52px); font-weight: 300; letter-spacing: -.04em; margin-bottom: 24px; }
body.wm-design.tools-page .tool-info > p { max-width: 500px; font-size: 14px; line-height: 1.9; }
body.wm-design.tools-page :is(.tool-number,.tool-price-tag) { display: none; }
body.wm-design.tools-page .tool-price-line { font-family: var(--wm-type); font-weight: 300; font-size: 36px; margin-top: 24px; }
body.wm-design.tools-page .tool-video { margin-top: 26px; padding-top: 20px; }
body.wm-design.tools-page .tool-video video { border-radius: 0; max-height: 320px; }
body.wm-design.tools-page .tool-card--soon { display: block; padding: 24px 0; border: 0; border-top: 1px solid var(--wm-line); background: transparent; }
body.wm-design.tools-page .tool-soon-media { min-height: 0; display: block; background: transparent; }
body.wm-design.tools-page .tool-soon-media > svg { display: none; }
body.wm-design.tools-page .tool-soon-badge { position: static; display: block; width: fit-content; padding: 0; margin-bottom: 14px; border: 0; background: none; font-size: 9px; }
body.wm-design.tools-page .tool-soon-info { padding: 0; }
body.wm-design.tools-page .tool-soon-info h3 { font-size: 25px; font-weight: 300; }
body.wm-design.tools-page .tool-soon-info p { max-width: 420px; font-size: 13px; color: var(--wm-muted); }
body.wm-design.tools-page .cart { margin-top: 35px; border-color: var(--wm-line); box-shadow: none; }
body.wm-design.tools-page .tools-intro { border-top: 1px solid var(--wm-line); }
body.wm-design.tools-page .tools-intro .section-label { justify-content: start; }
body.wm-design.tools-page .tools-intro-inner { text-align: left; max-width: 1000px; }

/* Flooring: show the whole room before the sample, then continue into the video. */
body.wm-design.garage-flooring-page .gf-section { max-width: 1600px; margin-inline: auto; padding: 35px var(--side-pad) 70px; }
body.wm-design.garage-flooring-page .gf-section__intro { display: flex; justify-content: space-between; align-items: end; gap: 48px; text-align: left; margin-bottom: 55px; }
body.wm-design.garage-flooring-page .gf-section__intro h2 { max-width: 750px; font-size: clamp(35px,4vw,60px); line-height: 1.1; }
body.wm-design.garage-flooring-page .gf-section__intro > p { max-width: 340px; font-size: 13px; margin: 0; }
.flooring-spreads { display: grid; gap: 75px; }
.flooring-spread { display: grid; grid-template-columns: 1.4fr .8fr; gap: clamp(32px,6vw,90px); align-items: center; }
.flooring-spread figure { margin: 0; overflow: hidden; }
.flooring-spread figure > img { display: block; width: 100%; height: 600px; object-fit: cover; transition: transform 1s; }
.flooring-spread figure:hover > img { transform: scale(1.025); }
body.wm-design .flooring-spread h3 { font-size: clamp(38px,4.6vw,68px); line-height: 1.05; margin: 24px 0; font-weight: 300; }
.flooring-spread > div > p:not(.editorial-kicker) { color: var(--wm-muted); font-size: 14px; line-height: 1.8; max-width: 340px; }
.flooring-sample { display: block; width: 100%; max-width: 320px; height: 110px; object-fit: contain; margin: 26px 0; }
.flooring-spread--reverse { grid-template-columns: .8fr 1.4fr; }
.flooring-spread--reverse figure { grid-column: 2; grid-row: 1; }
.flooring-spread--reverse > div { grid-column: 1; grid-row: 1; }
body.wm-design.garage-flooring-page .gf-products__note { font-size: 11px; text-align: left; margin-top: 45px; }
body.wm-design.garage-flooring-page .gf-process { grid-template-columns: .8fr 1.3fr; gap: 6vw; background: transparent; }
body.wm-design.garage-flooring-page .gf-process h2 { font-size: clamp(38px,4vw,60px); }
body.wm-design.garage-flooring-page .gf-process__media { border: 0; padding: 0; box-shadow: none; }
body.wm-design.garage-flooring-page .gf-process__media video { border-radius: 0; width: 100%; }
body.wm-design.garage-flooring-page .gf-benefit-grid article { border: 0; border-top: 1px solid var(--wm-line); border-radius: 0; padding: 24px 0; background: transparent; box-shadow: none; }
body.wm-design.garage-flooring-page .gf-benefit-grid article > span { display: none; }
body.wm-design.garage-flooring-page .gf-benefit-grid h3 { font-size: 25px; }
body.wm-design.garage-flooring-page .gf-contact { border: 0; background: transparent; color: var(--wm-ink); }

/* AI Try-On: an edge-to-edge room viewer, with one generous action below. */
body.wm-design.ai-cinema-page .try-on-main { margin-top: 0; padding: 0; }
.ai-cinema { width: 100%; }
.ai-cinema__screen { position: relative; background: #ddd7cd; overflow: hidden; }
.ai-cinema__screen::after { position: absolute; inset: 0 0 auto; height: calc(var(--site-header-height) + 35px); pointer-events: none; content: ''; background: linear-gradient(180deg,#f3f0e9b3,transparent); }
.ai-cinema__views { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2px; }
.ai-cinema__views figure { position: relative; margin: 0; min-width: 0; }
.ai-cinema__views img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.ai-cinema__views figcaption { position: absolute; bottom: 28px; left: 32px; padding: 8px 12px; background: #f3f0e9df; color: var(--wm-ink); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.ai-cinema__controls { position: absolute; z-index: 2; top: calc(var(--site-header-height) + 20px); right: var(--side-pad); display: flex; padding: 4px; background: #f3f0e9e8; gap: 3px; }
.ai-cinema__controls button { min-height: 36px; padding: 9px 16px; border: 0; background: transparent; color: var(--wm-ink); font: 400 11px var(--wm-type); cursor: pointer; }
.ai-cinema__controls button[aria-pressed='true'] { background: var(--wm-ink); color: var(--wm-paper); }
.ai-cinema__controls button:focus-visible { outline: 2px solid var(--wm-accent); outline-offset: 2px; }
.ai-cinema[data-view='before'] .ai-cinema__after,
.ai-cinema[data-view='after'] .ai-cinema__before { display: none; }
.ai-cinema[data-view='before'] .ai-cinema__views,
.ai-cinema[data-view='after'] .ai-cinema__views { grid-template-columns: 1fr; }
.ai-cinema[data-view='before'] .ai-cinema__views img,
.ai-cinema[data-view='after'] .ai-cinema__views img { aspect-ratio: auto; height: min(84svh,900px); object-fit: cover; object-position: center 48%; }
.ai-cinema__action { display: flex; justify-content: space-between; align-items: center; gap: 50px; padding: 42px var(--side-pad); }
body.wm-design .ai-cinema__action h1 { font-size: clamp(50px,6.5vw,94px); font-weight: 300; line-height: .98; letter-spacing: -.055em; margin: 15px 0 0; }
.ai-cinema__action .editorial-kicker { color: var(--wm-muted); }
.ai-cinema__start { width: 340px; flex: 0 0 340px; }
.ai-cinema__start > p:first-child { margin-bottom: 22px; color: var(--wm-muted); font-size: 15px; line-height: 1.7; }
.ai-cinema__start .experience-button { width: 100%; min-height: 62px; font-size: 14px; padding-inline: 24px; }
.ai-cinema__account { margin-top: 12px; color: var(--wm-muted); font-size: 11px; }
.ai-cinema__footnote { display: flex; justify-content: space-between; align-items: center; gap: 25px; margin: 0 var(--side-pad); padding: 24px 0 35px; border-top: 1px solid var(--wm-line); color: var(--wm-muted); font-size: 11px; }
.ai-cinema__footnote > span > span { margin: 0 14px; }
.ai-cinema__footnote p { max-width: 360px; }

@media (max-width: 1000px) {
  .flooring-spread figure > img { height: 440px; }
  body.wm-design.tools-page .tool-card--featured .tool-card-body { gap: 30px; }
  body.wm-design.tools-page .tool-media { min-height: 420px; padding: 28px; }
  body.wm-design.garage-flooring-page .gf-process { grid-template-columns: 1fr; gap: 35px; }
}
@media (max-width: 700px) {
  body.wm-design.immersive-page .journey-hero { min-height: 610px; height: 92svh; }
  body.wm-design.immersive-page .room-hero__copy { top: 28%; }
  body.wm-design.immersive-page .room-hero__copy h1 { font-size: clamp(44px,10.8vw,68px); }
  body.wm-design.immersive-page .room-hero__bottom { flex-direction: row; align-items: end; gap: 16px; }
  body.wm-design.immersive-page .room-hero__bottom p { max-width: 165px; font-size: 9px; }
  .journey-intro { display: block; padding-top: 50px; padding-bottom: 25px; }
  .journey-intro > p { margin-top: 24px; }
  body.wm-design.patterns-page.immersive-page .wm-catalog__heading { display: block; }
  body.wm-design.patterns-page.immersive-page .wm-catalog__count { margin-top: 15px; }
  body.wm-design.patterns-page.immersive-page .wm-catalog__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 15px; }
  body.wm-design.patterns-page.immersive-page .wm-card__title { font-size: 17px; }
  body.wm-design.patterns-page.immersive-page .collection-description { display: block; }
  body.wm-design.patterns-page.immersive-page .collection-description > p:not(.editorial-kicker) { margin-block: 25px; }
  body.wm-design.tools-page .room-hero__image:first-child { object-position: 70% center; object-fit: cover; }
  body.wm-design.tools-page .room-hero__shade { background: linear-gradient(90deg,#f3f0e9cf,transparent 95%); }
  body.wm-design.tools-page .tools-grid { grid-template-columns: 1fr; }
  body.wm-design.tools-page .tool-card--featured .tool-card-body { grid-template-columns: 1fr; }
  body.wm-design.tools-page .tool-media { position: static; min-height: 340px; padding: 25px; }
  body.wm-design.tools-page .tool-media img { max-height: 360px; }
  body.wm-design.tools-page .tool-card--featured:nth-child(2) .tool-media,
  body.wm-design.tools-page .tool-card--featured:nth-child(2) .tool-info { grid-column: 1; grid-row: auto; }
  body.wm-design.tools-page .tool-card--featured { padding-bottom: 20px; margin-bottom: 0; }
  body.wm-design.tools-page .tool-info h3 { font-size: 36px; }
  body.wm-design.garage-flooring-page .gf-section__intro { display: block; margin-bottom: 32px; }
  body.wm-design.garage-flooring-page .gf-section__intro > p { margin-top: 25px; }
  .flooring-spread,.flooring-spread--reverse { grid-template-columns: 1fr; gap: 28px; }
  .flooring-spread--reverse figure,.flooring-spread--reverse > div { grid-column: 1; grid-row: auto; }
  .flooring-spread figure > img { height: auto; aspect-ratio: 1.1; }
  .flooring-spread > div > p:not(.editorial-kicker) { max-width: 100%; }
  .flooring-spreads { gap: 55px; }
  .ai-cinema__views img { aspect-ratio: 1; }
  .ai-cinema[data-view='before'] .ai-cinema__views img,
  .ai-cinema[data-view='after'] .ai-cinema__views img { height: 68svh; min-height: 500px; object-position: center; }
  .ai-cinema[data-view='compare'] .ai-cinema__screen { padding-top: var(--site-header-height); }
  .ai-cinema[data-view='compare'] .ai-cinema__views { padding-top: 60px; }
  .ai-cinema__controls { left: 24px; right: auto; top: calc(var(--site-header-height) + 18px); }
  .ai-cinema__controls button { padding-inline: 13px; }
  .ai-cinema__views figcaption { left: 18px; bottom: 18px; padding: 6px 8px; font-size: 8px; }
  .ai-cinema__action { display: block; padding: 30px 24px; }
  body.wm-design .ai-cinema__action h1 { font-size: 50px; }
  .ai-cinema__start { width: 100%; margin-top: 25px; }
  .ai-cinema__start > p:first-child { font-size: 14px; margin-bottom: 18px; }
  .ai-cinema__footnote { display: block; margin-inline: 24px; padding-block: 22px; font-size: 10px; }
  .ai-cinema__footnote p { margin-top: 15px; }
  .ai-cinema__footnote > span > span { margin-inline: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  body.wm-design.immersive-page .room-hero__image { transition: none; transform: none; }
}
/* Refinements: stable comparison geometry and purchase-first product pages. */
body.wm-design .site-nav .nav-menu > li { display:flex; align-items:center; }
body.wm-design .site-nav .nav-menu > li > a,
body.wm-design .site-nav .nav-collection-menu > summary { display:flex; align-items:center; min-height:44px; padding:0; margin:0; font:500 11px/1 'Outfit',Arial,sans-serif; letter-spacing:.07em; }
body.wm-design .nav-ai-label { display:inline-flex; align-items:center; justify-content:center; margin-left:2px; font:400 8px/1 'Outfit',Arial,sans-serif; letter-spacing:.02em; border:1px solid currentColor; padding:3px; border-radius:2px; background:none; }
body.wm-design .mobile-overlay a[href='/try-on'] { background-image:none!important; padding-right:4px!important; }
body.wm-design .site-nav .nav-menu { align-items:center; }
body.wm-design.tools-page .site-nav,
body.wm-design.garage-flooring-page .site-nav { position:sticky; }
.shop-title { padding:30px var(--side-pad) 18px; }
body.wm-design .shop-title h1 { margin-top:12px; font-size:clamp(36px,4.3vw,64px); font-weight:300; }
body.wm-design.tools-page .tools-shop-header { display:none; }
body.wm-design.tools-page .tools-shop { padding-top:20px; }
body.wm-design.tools-page .tool-media { min-height:340px; padding:24px; }
body.wm-design.tools-page .tool-media img { max-height:340px; }
body.wm-design.garage-flooring-page .flooring-sample { max-width:100%; width:100%; height:240px; margin-block:15px 25px; }
body.wm-design.garage-flooring-page .flooring-spread { grid-template-columns:1fr 1fr; }
.ai-cinema__screen { height:clamp(480px,72svh,820px); }
.ai-cinema__views { height:100%; }
.ai-cinema__views figure { height:100%; }
.ai-cinema .ai-cinema__views img,
.ai-cinema[data-view='before'] .ai-cinema__views img,
.ai-cinema[data-view='after'] .ai-cinema__views img { height:100%; min-height:0; aspect-ratio:auto; object-fit:contain; }
@media(max-width:1100px) { body.wm-design .site-nav .nav-menu > li > a,body.wm-design .site-nav .nav-collection-menu > summary {font-size:10px;} }
@media(max-width:700px) {
 .ai-cinema__screen { height:68svh; min-height:500px; padding-top:var(--site-header-height)!important; }
 .ai-cinema .ai-cinema__views {padding-top:60px;}
 body.wm-design.garage-flooring-page .flooring-spread {grid-template-columns:1fr;}
 body.wm-design.garage-flooring-page .flooring-sample {height:200px;}
}
/* All three modes use the same image scale and a fixed camera frame. */
.ai-cinema__views { display:block!important; position:relative; padding:0!important; }
.ai-cinema__views figure { position:absolute; inset:0; width:100%; height:100%; }
.ai-cinema .ai-cinema__views img { width:100%; height:100%!important; object-fit:cover!important; object-position:center!important; }
.ai-cinema[data-view='compare'] .ai-cinema__before {clip-path:inset(0 50% 0 0);}
.ai-cinema[data-view='compare'] .ai-cinema__after {clip-path:inset(0 0 0 50%);}
.ai-cinema[data-view='compare'] .ai-cinema__screen::before {content:'';position:absolute;inset:0 auto 0 50%;width:1px;background:#f3f0e9;z-index:3;pointer-events:none;}
.ai-cinema__after figcaption {left:auto;right:32px;}
@media(max-width:700px) {.ai-cinema__screen {padding-top:0!important;} .ai-cinema__after figcaption {right:18px;}}
@media(max-width:1240px) {
 body.wm-design .site-nav .nav-menu,body.wm-design .site-nav .nav-actions {display:none;}
 body.wm-design .site-nav .nav-hamburger {display:block;}
 .mobile-overlay.open {display:block;}
}
body.wm-design.garage-flooring-page .flooring-sample {height:300px;max-width:none;}
body.wm-design.garage-flooring-page .gf-section__intro {margin-bottom:30px;}
body.wm-design .nav-collection-menu summary > span {font-size:10px;line-height:1;}
@media(max-width:700px) {body.wm-design.garage-flooring-page .flooring-sample {height:240px;}}
body.wm-design.tools-page .tool-card--featured {grid-column:auto;}
body.wm-design.tools-page .tool-card--featured .tool-card-body {display:block;}
body.wm-design.tools-page .tool-media {position:static;min-height:0;height:250px;padding:20px;}
body.wm-design.tools-page .tool-media img {max-height:220px;}
body.wm-design.tools-page .tool-info {padding-top:22px;}
body.wm-design.tools-page .tool-info h3 {font-size:30px;margin-bottom:14px;}
body.wm-design.tools-page .tool-info > p {font-size:13px;}
body.wm-design.tools-page .tool-video summary {cursor:pointer;font-size:12px;}
body.wm-design.tools-page .tool-video[open] .tool-video-label {margin-top:20px;}
.hero-playback[hidden] {display:none!important;}
