@font-face {
  font-family:"YekanBakhFaNum";
  src:url("fonts/YekanBakhFaNum-Regular.ttf") format("truetype");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
@font-face {
  font-family:"YekanBakhFaNum";
  src:url("fonts/YekanBakhFaNum-Bold.ttf") format("truetype");
  font-style:normal;
  font-weight:700;
  font-display:swap;
}
@font-face {
  font-family:"YekanBakhFaNum";
  src:url("fonts/YekanBakhFaNum-Black.ttf") format("truetype");
  font-style:normal;
  font-weight:900;
  font-display:swap;
}
@font-face {
  font-family:"YekanBakhFaNum-Thin";
  src:url("fonts/YekanBakhFaNum-Thin.ttf") format("truetype");
  font-style:normal;
  font-weight:100;
  font-display:swap;
}
@font-face {
  font-family:"YekanBakh-Thin";
  src:url("fonts/YekanBakh-Thin.ttf") format("truetype");
  font-style:normal;
  font-weight:100;
  font-display:swap;
}

:root {
  --blue:#009edf;
  --red:#ed3237;
  --ink:#1e1e1e;
  --muted:rgba(30,30,30,.58);
  --line:rgba(30,30,30,.14);
  --bg-a:#878681;
  --bg-b:#c3c3c0;
  --header-surface:rgba(195,195,192,.82);
  --halo:rgba(255,255,255,.52);
  --halo-strong:rgba(255,255,255,.92);
  --reflection:rgba(255,255,255,.24);
  --nav-hover:rgba(255,255,255,.20);
  --header-height:96px;
  --pagination-gutter:clamp(72px,8vw,126px);
  --ease:cubic-bezier(.22,1,.36,1);
}

html[data-finish="white"] {
  --bg-a:#f9f9f8;
  --bg-b:#ffffff;
  --header-surface:rgba(255,255,255,.86);
  --halo:rgba(116,142,157,.075);
  --halo-strong:rgba(255,255,255,1);
  --reflection:rgba(0,158,223,.08);
  --nav-hover:rgba(30,30,30,.06);
}

* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-snap-type:y mandatory; }
html.is-programmatic-scroll { scroll-behavior:auto!important; scroll-snap-type:none!important; }
body {
  margin:0;
  color:var(--ink);
  background:var(--bg-a);
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-weight:400;
  overflow-x:hidden;
  transition:background-color .9s var(--ease);
}
body::before {
  content:"";
  position:fixed;
  inset:0;
  z-index:-10;
  background:
    radial-gradient(ellipse 42% 34% at 13% 18%,rgba(255,255,255,.13),transparent 75%),
    radial-gradient(ellipse 48% 38% at 87% 78%,rgba(30,30,30,.055),transparent 78%),
    radial-gradient(ellipse 60% 48% at 50% 72%,var(--halo),transparent 72%),
    linear-gradient(118deg,var(--bg-a),color-mix(in srgb,var(--bg-a) 45%,var(--bg-b)) 48%,var(--bg-b));
  transition:background 1.1s var(--ease);
}
body::after {
  content:"";
  position:fixed;
  inset:0;
  z-index:80;
  pointer-events:none;
  opacity:.46;
  mix-blend-mode:multiply;
  background-image:url("assets/print-grain-v17.66.webp");
  background-repeat:repeat;
  background-size:310px 310px;
}
a { color:inherit; text-decoration:none; }
button { color:inherit; font:inherit; }

h1{font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;font-weight:900}
h2{font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;font-weight:700}
h3{font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;font-weight:400}
.nav-group,.mobile-menu,.finish-switch{font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;font-weight:700}

.site-header {
  position:fixed;
  inset:0 var(--pagination-gutter) auto 0;
  z-index:100;
  isolation:isolate;
  height:var(--header-height);
  padding:0 clamp(30px,5vw,88px);
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px minmax(0,1fr);
  align-items:center;
  gap:36px;
  border-bottom:1px solid transparent;
  transition:height .75s var(--ease),grid-template-columns .75s var(--ease),background-color .5s ease,border-color .5s ease,box-shadow .5s ease;
}
.site-header::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0 calc(-1 * var(--pagination-gutter)) 0 0;
  border-bottom:1px solid transparent;
  background:transparent;
  box-shadow:none;
  -webkit-backdrop-filter:blur(0);
  backdrop-filter:blur(0);
  transition:background-color .5s ease,border-color .5s ease,box-shadow .5s ease,backdrop-filter .5s ease;
}
.site-header.is-scrolled {
  height:68px;
  grid-template-columns:minmax(0,1fr) 86px minmax(0,1fr);
  background:transparent;
  border-bottom-color:transparent;
  box-shadow:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
.site-header.is-scrolled::before {
  background:var(--header-surface);
  border-bottom-color:var(--line);
  box-shadow:0 12px 34px rgba(30,30,30,.045);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
}
.nav-group { display:flex; align-items:center; gap:clamp(18px,2vw,36px); white-space:nowrap; }
.nav-primary { justify-content:flex-end; }
.nav-secondary { justify-content:flex-start; }
.nav-group a {
  padding:8px 10px;
  border-radius:4px;
  font-size:clamp(.75rem,.8vw,.9rem);
  color:rgba(30,30,30,.72);
  transition:color .35s ease,background-color .35s ease;
}
.nav-group a:hover,.nav-group a:focus-visible { color:var(--ink); background:var(--nav-hover); outline:none; }
.brand { position:relative; height:78px; display:grid; place-items:center; }
.brand img { position:absolute; display:block; object-fit:contain; transition:opacity .34s ease,transform .72s var(--ease); }
.brand-full { width:258px; max-height:62px; opacity:1; transform:scale(1); }
.brand-mark { width:50px; max-height:48px; opacity:0; transform:scale(.62) rotate(-5deg); }
.is-scrolled .brand-full { opacity:0; transform:scale(.72); }
.is-scrolled .brand-mark { opacity:1; transform:scale(1) rotate(0); }

.finish-switch {
  position:absolute;
  left:clamp(30px,5vw,88px);
  top:calc(var(--header-height) + 16px);
  direction:ltr;
  display:grid;
  grid-template-columns:1fr 1fr;
  width:176px;
  height:42px;
  padding:4px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  box-shadow:inset 0 0 0 1px rgba(30,30,30,.11),0 8px 24px rgba(30,30,30,.07);
  backdrop-filter:blur(16px);
  transition:top .75s var(--ease),background .7s ease;
}
.is-scrolled .finish-switch { top:82px; }
.finish-switch b {
  position:absolute;
  z-index:0;
  left:4px;
  top:4px;
  width:84px;
  height:34px;
  border-radius:999px;
  background:rgba(30,30,30,.80);
  box-shadow:0 6px 16px rgba(30,30,30,.18);
  transition:transform .8s var(--ease),background-color .65s ease;
}
html[data-finish="white"] .finish-switch b { transform:translateX(84px); background:rgba(255,255,255,.96); }
.finish-switch button {
  position:relative;
  z-index:1;
  height:34px;
  padding:0 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:0;
  background:transparent;
  font-size:.72rem;
  color:rgba(30,30,30,.54);
  cursor:pointer;
}
.finish-switch button[aria-pressed="true"] { color:#fff; }
html[data-finish="white"] .finish-switch button[aria-pressed="true"] { color:var(--ink); }
html[data-finish="white"] .finish-switch button[data-finish="titanium"] { color:rgba(30,30,30,.48); }
.swatch { width:8px; height:8px; border-radius:50%; box-shadow:inset 0 0 0 1px rgba(30,30,30,.22); }
.swatch-titanium { background:#878681; }
.swatch-white { background:#fff; }
.menu-button { display:none; }

.slide {
  position:relative;
  min-height:100svh;
  overflow:hidden;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  isolation:isolate;
  padding:calc(var(--header-height) + 48px) max(9vw,120px) 42px;
}
.slide::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:70;
  pointer-events:none;
  opacity:0;
  background:none;
}
.slide-light {
  position:absolute;
  z-index:-3;
  width:min(70vw,920px);
  aspect-ratio:1.15;
  border-radius:50%;
  background:radial-gradient(ellipse,var(--halo-strong) 0 17%,var(--halo) 42%,transparent 72%);
  filter:blur(8px);
  opacity:.94;
  transform:translate3d(var(--light-x,0),calc(var(--motion-y,0px) * .08),0);
  transition:background 1.1s var(--ease);
}
.light-left { left:-8%; bottom:-3%; --light-x:-2vw; }
.light-right { right:-7%; bottom:-7%; --light-x:2vw; }
.light-center { left:50%; bottom:-2%; transform:translate3d(-50%,calc(var(--motion-y,0px) * .08),0); }
.copy { position:relative; z-index:8; max-width:570px; transform:translate3d(0,var(--copy-drift,0px),0); will-change:transform; }
.copy-right { margin-right:auto; text-align:right; }
.copy-left { margin-left:auto; text-align:right; }
.copy-top { margin:0 auto; text-align:center; }
.eyebrow { display:block; margin-bottom:18px; color:var(--muted); font-size:clamp(.8rem,1vw,1rem); }
.copy h1,.copy h2 { margin:0; font-size:clamp(2.55rem,4.1vw,4.45rem); line-height:1.2; letter-spacing:-.035em; text-wrap:balance; text-shadow:.45px 0 rgba(0,158,223,.055),-.45px 0 rgba(237,50,55,.045); }
.copy p { margin:10px 0 0; font-size:clamp(1rem,1.3vw,1.3rem); line-height:1.75; }
.text-link { display:inline-flex; align-items:center; gap:14px; margin-top:26px; padding:7px 0 10px; border-bottom:1px solid rgba(30,30,30,.34); font-size:.92rem; transition:gap .45s var(--ease),border-color .3s ease; }
.text-link:hover { gap:22px; border-color:var(--ink); }

.product { position:absolute; z-index:3; pointer-events:none; }
.product img { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 34px 30px rgba(30,30,30,.19)); }
.product-left { left:2.5vw; bottom:-18vh; width:min(49vw,760px); height:min(91vh,900px); }
.product-right { right:4vw; bottom:-15vh; width:min(48vw,760px); height:min(82vh,820px); }
.slide-washer { overflow:visible; z-index:3; }
/* Slide 2 background only: supplied kitchen artwork mirrored to reserve the right side for the dishwasher. */
.dishwasher-kitchen { position:absolute; z-index:-2; inset:0; pointer-events:none; background:var(--dishwasher-scene-asset,none) 0 0 / 100% 100% no-repeat; opacity:.27; filter:grayscale(.72) saturate(.55) brightness(1.035); }
.slide-dishwasher .copy-left { margin-top:20vh; margin-left:4vw; }
.slide-washer .copy-right { margin-top:20vh; margin-right:4vw; max-width:520px; }
.transition-zone {
  position:relative;
  z-index:1;
  height:28svh;
  min-height:190px;
  scroll-snap-align:none;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  padding:0 max(9vw,120px) 34px;
  color:rgba(30,30,30,.34);
  font-size:.78rem;
  letter-spacing:.04em;
  border-bottom:1px solid rgba(30,30,30,.08);
}
.transition-zone::before {
  content:"";
  position:absolute;
  left:5%;
  right:5%;
  bottom:0;
  height:70%;
  z-index:-1;
  background:radial-gradient(ellipse at 25% 100%,var(--reflection),transparent 68%);
  filter:blur(18px);
}
.scroll-cue { position:absolute; z-index:12; bottom:26px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:8px; font-size:.66rem; color:var(--muted); }
.scroll-cue i { width:1px; height:28px; background:var(--ink); transform-origin:top; animation:scrollCue 1.8s var(--ease) infinite; }
@keyframes scrollCue { 0%,100%{transform:scaleY(.2);opacity:.25} 48%{transform:scaleY(1);opacity:.8} }

.heritage-slide,.hermetic-slide,.concept-slide { padding-top:calc(var(--header-height) + 44px); }
.heritage-slide .copy h2,.hermetic-slide .copy h2,.concept-slide .copy h2 { font-size:clamp(2.7rem,4.2vw,4.7rem); }
.plaque-stage {
  position:absolute;
  z-index:3;
  left:50%;
  top:46%;
  width:min(66vw,890px);
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 26px 28px rgba(30,30,30,.24));
}
.finish-asset { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; transition:opacity .82s ease; }
.plaque-stage::before { content:""; display:block; padding-top:33.333%; }
.asset-white { opacity:0; }
.asset-titanium { opacity:1; }
html[data-finish="white"] .asset-white { opacity:1; }
html[data-finish="white"] .asset-titanium { opacity:0; }
.under-product { position:absolute; z-index:8; left:50%; top:69%; transform:translateX(-50%); text-align:center; }
.under-product p { margin:0; color:var(--muted); font-size:1rem; }

.light-beam {
  position:absolute;
  z-index:-4;
  top:0;
  left:50%;
  width:62%;
  height:91%;
  transform:translateX(-50%);
  clip-path:polygon(38% 0,62% 0,92% 100%,8% 100%);
  background:linear-gradient(180deg,var(--halo-strong),rgba(255,255,255,.26) 40%,transparent 92%);
  filter:blur(20px);
  opacity:.74;
  transition:opacity .9s ease,width 1s var(--ease);
}
html[data-finish="white"] .light-beam { width:55%; opacity:.58; }
.light-heater { width:min(67vw,780px); bottom:-5%; }
.floor-glow { position:absolute; z-index:-2; left:50%; bottom:-7%; width:58%; height:24%; transform:translateX(-50%); border-radius:50%; background:radial-gradient(ellipse,var(--reflection),transparent 68%); filter:blur(16px); }
.heater-copy .product-detail { color:var(--muted); font-size:clamp(.85rem,1.1vw,1rem); }
.heater-stage { position:absolute; z-index:3; left:50%; bottom:-23%; transform:translateX(-50%); width:min(59vw,690px); aspect-ratio:1; filter:drop-shadow(0 30px 30px rgba(30,30,30,.25)); }
html[data-finish="white"] .heater-stage .asset-white { filter:drop-shadow(0 0 24px rgba(148,0,0,.13)); }

.pending-product {
  position:absolute;
  z-index:3;
  left:50%;
  bottom:-15%;
  width:min(55vw,690px);
  aspect-ratio:1.08;
  transform:translateX(-50%);
  display:grid;
  place-items:center;
  border:1px dashed rgba(30,30,30,.22);
  border-radius:50% 50% 12% 12%;
  color:var(--muted);
  background:radial-gradient(circle,var(--halo),transparent 70%);
}
.only-white { display:none; }
html[data-finish="white"] .only-white { display:inline; }
html[data-finish="white"] .only-titanium { display:none; }

.story-slide { display:flex; align-items:center; }
.story-copy { margin-right:8vw; max-width:690px; }
.story-copy p { max-width:570px; font-size:clamp(1rem,1.35vw,1.3rem); line-height:2; color:var(--muted); }
.story-number { position:absolute; left:-2vw; bottom:-9vw; z-index:-2; font-size:clamp(16rem,35vw,39rem); line-height:.75; color:rgba(30,30,30,.055); letter-spacing:-.08em; }
.light-story { right:0; bottom:-12%; }

.contact-slide { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:7vw; padding-bottom:118px; }
.address-grid { position:absolute; inset:12% 5% 16%; z-index:-3; opacity:.18; background-image:linear-gradient(rgba(30,30,30,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(30,30,30,.18) 1px,transparent 1px); background-size:72px 72px; transform:rotate(-6deg) scale(1.1); mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent); }
.contact-copy { grid-column:1; }
.contact-copy address { margin-top:20px; max-width:500px; color:var(--muted); font-size:clamp(1rem,1.4vw,1.35rem); line-height:2; font-style:normal; }
.address-marker { grid-column:2; justify-self:center; width:min(30vw,340px); aspect-ratio:1; display:grid; place-items:center; position:relative; border-radius:50%; background:radial-gradient(circle,var(--halo-strong),var(--halo) 42%,transparent 70%); }
.address-marker i { width:28px; height:28px; transform:rotate(45deg); background:var(--red); border-radius:50% 50% 50% 0; box-shadow:0 15px 34px rgba(237,50,55,.26); }
.address-marker span { margin-top:-25%; }
.site-footer { position:absolute; left:max(9vw,120px); right:max(9vw,120px); bottom:0; height:88px; display:flex; align-items:center; gap:24px; border-top:1px solid var(--line); color:var(--muted); font-size:.78rem; }
.site-footer img { width:44px; height:44px; object-fit:contain; }
.site-footer p { margin:0; }
.site-footer a { margin-right:auto; }

.pagination { position:fixed; z-index:90; right:clamp(25px,3vw,50px); bottom:34px; display:flex; flex-direction:column; align-items:center; gap:8px; color:rgba(30,30,30,.55); font:700 .67rem Arial,sans-serif; direction:ltr; }
.page-current { position:relative; display:block; width:14px; height:64px; flex:none; color:var(--ink); }
.page-current > span { position:absolute; top:50%; left:50%; display:block; width:max-content; transform:translate(-50%,-50%) rotate(-90deg); transform-origin:center; white-space:nowrap; direction:rtl; text-align:left; font:700 .66rem/1 "YekanBakhFaNum",Tahoma,Arial,sans-serif; }
.page-rule { position:relative; width:1px; height:48px; overflow:hidden; background:rgba(30,30,30,.18); }
.page-rule i { position:absolute; top:0; left:0; width:1px; height:14.285%; background:var(--ink); transform:translateY(calc(var(--page-index,0) * 600%)); transition:transform .75s var(--ease); }
.pagination ol { display:flex; flex-direction:column; gap:7px; margin:0; padding:0; list-style:none; }
.pagination a { display:block; width:5px; height:5px; border-radius:999px; background:rgba(30,30,30,.24); transition:height .5s var(--ease),background-color .3s ease; }
.pagination a[aria-current="true"] { height:15px; background:var(--ink); }
.pagination a:focus-visible { outline:1px solid var(--ink); outline-offset:4px; }
.page-total { font:700 .67rem Arial,sans-serif; }

/* Reserve the pagination rail on the right and center slide content in the remaining canvas. */
main { width:calc(100% - var(--pagination-gutter)); margin-right:var(--pagination-gutter); }

.product,.plaque-stage,.heater-stage,.pending-product,.address-marker { opacity:1; }

.mobile-menu { display:none; }

@media (max-width:1180px) {
  :root { --pagination-gutter:clamp(80px,9vw,102px); }
  .site-header { grid-template-columns:minmax(0,1fr) 225px minmax(0,1fr); padding-inline:24px; gap:20px; }
  .nav-group { gap:12px; }
  .nav-group a { font-size:.68rem; }
  .brand-full { width:220px; }
  .finish-switch { left:24px; }
  .slide { padding-inline:84px; }
  .copy { max-width:500px; }
  .product-left { width:min(52vw,690px); height:min(84vh,820px); bottom:-16vh; }
  .product-right { width:min(49vw,650px); height:min(76vh,760px); bottom:-10vh; }
  .transition-zone { padding-inline:84px; }
  .site-footer { left:92px; right:92px; }
}

@media (max-width:1024px) {
  .site-header,.site-header.is-scrolled { height:74px; grid-template-columns:1fr 190px 1fr; padding:0 22px; gap:0; }
  .nav-group { display:none; }
  .brand { grid-column:2; height:100%; }
  .brand-full { width:184px; }
  .brand-mark { width:44px; }
  .menu-button { grid-column:1; grid-row:1; justify-self:start; display:grid; place-content:center; gap:7px; width:44px; height:44px; padding:0; border:0; background:transparent; z-index:2; }
  .menu-button span { width:24px; height:1.5px; background:var(--ink); transition:transform .45s var(--ease); }
  .menu-button[aria-expanded="true"] span:first-child { transform:translateY(4.25px) rotate(45deg); }
  .menu-button[aria-expanded="true"] span:last-child { transform:translateY(-4.25px) rotate(-45deg); }
  .finish-switch,.is-scrolled .finish-switch { position:relative; grid-column:3; grid-row:1; justify-self:end; left:auto; top:auto; width:122px; height:38px; padding:3px; }
  .finish-switch b { left:3px; top:3px; width:58px; height:32px; }
  html[data-finish="white"] .finish-switch b { transform:translateX(58px); }
  .finish-switch button { height:32px; padding:0 3px; }
  .finish-switch button span { font-size:.62rem; }
  .slide { padding-top:128px; padding-inline:64px; }
  .copy h1,.copy h2 { font-size:clamp(2.55rem,5.6vw,3.6rem); }
  .slide-washer .copy-right,.slide-dishwasher .copy-left { margin:3vh auto 0; text-align:center; max-width:620px; }
  .product-left { left:50%; width:min(70vw,620px); height:65vh; bottom:-14vh; transform:translateX(-50%); }
  .product-right { left:50%; right:auto; width:min(68vw,600px); height:59vh; bottom:-3vh; transform:translateX(-50%); }
  .transition-zone { height:24svh; min-height:160px; padding-inline:64px; }
  .mobile-menu { position:fixed; inset:0; z-index:95; display:grid; place-items:center; background:var(--header-surface); backdrop-filter:blur(26px); opacity:0; visibility:hidden; transform:translateY(-18px); transition:opacity .35s ease,visibility .35s,transform .55s var(--ease); }
  .mobile-menu.is-open { opacity:1; visibility:visible; transform:none; }
  .mobile-menu nav { display:flex; flex-direction:column; align-items:center; gap:22px; font-size:1.15rem; }
}

@media (max-width:860px) {
  :root { --header-height:74px; }
  html { scroll-snap-type:y proximity; }
  .site-header,.site-header.is-scrolled { height:var(--header-height); grid-template-columns:1fr 178px 1fr; padding:0 18px; gap:0; }
  .site-header.is-scrolled { --header-height:62px; }
  .nav-group { display:none; }
  .brand { grid-column:2; height:100%; }
  .brand-full { width:172px; }
  .brand-mark { width:42px; }
  .menu-button { grid-column:1; grid-row:1; justify-self:start; display:grid; place-content:center; gap:7px; width:44px; height:44px; padding:0; border:0; background:transparent; z-index:2; }
  .menu-button span { width:24px; height:1.5px; background:var(--ink); transition:transform .45s var(--ease); }
  .menu-button[aria-expanded="true"] span:first-child { transform:translateY(4.25px) rotate(45deg); }
  .menu-button[aria-expanded="true"] span:last-child { transform:translateY(-4.25px) rotate(-45deg); }
  .finish-switch,.is-scrolled .finish-switch { position:relative; grid-column:3; grid-row:1; justify-self:end; left:auto; top:auto; width:112px; height:36px; padding:3px; }
  .finish-switch b { left:3px; top:3px; width:53px; height:30px; }
  html[data-finish="white"] .finish-switch b { transform:translateX(53px); }
  .finish-switch button { height:30px; padding:0; }
  .finish-switch button span { display:none; }
  .swatch { width:10px; height:10px; }
  .slide { min-height:100svh; padding:calc(var(--header-height) + 54px) 34px 34px; }
  .copy h1,.copy h2 { font-size:clamp(2.35rem,9.5vw,3.25rem); line-height:1.22; }
  .slide-washer .copy-right,.slide-dishwasher .copy-left { margin:2vh auto 0; text-align:center; }
  .product-left { left:50%; bottom:-9vh; transform:translateX(-50%); width:min(91vw,550px); height:58vh; }
  .product-right { right:auto; left:50%; bottom:-1vh; transform:translateX(-50%); width:min(82vw,520px); height:53vh; }
  .transition-zone { height:21svh; min-height:140px; padding:0 34px 24px; }
  .plaque-stage { top:50%; width:91vw; }
  .under-product { top:67%; width:90%; }
  .heater-stage { width:min(90vw,560px); bottom:-3%; }
  .heater-copy .product-detail { max-width:300px; margin-inline:auto; line-height:1.8; }
  .pending-product { width:90vw; bottom:3%; }
  .story-slide { align-items:flex-start; padding-top:24vh; }
  .story-copy { margin:0; }
  .story-number { bottom:2%; font-size:65vw; }
  .contact-slide { display:flex; flex-direction:column; justify-content:center; gap:10px; padding-bottom:108px; }
  .contact-copy { text-align:center; order:1; }
  .address-marker { width:190px; order:0; }
  .site-footer { left:24px; right:24px; height:82px; gap:12px; font-size:.65rem; }
  .site-footer img { width:34px; height:34px; }
  .site-footer p { max-width:180px; }
  .pagination { right:13px; bottom:22px; }
  .page-rule { height:36px; }
}

@media (max-width:640px) {
  :root { --pagination-gutter:clamp(28px,7vw,40px); }
  .site-header,.site-header.is-scrolled { grid-template-columns:1fr 152px 1fr; padding-inline:14px; }
  .brand-full { width:150px; }
  .finish-switch,.is-scrolled .finish-switch { width:102px; height:36px; }
  .finish-switch b { width:48px; height:30px; }
  html[data-finish="white"] .finish-switch b { transform:translateX(48px); }
  .finish-switch button { height:30px; }
  .finish-switch button span { display:none; }
  .swatch { width:10px; height:10px; }
  .slide { padding:112px 28px 30px; }
  .copy { width:min(100%,440px); }
  .copy h1,.copy h2 { font-size:clamp(2.15rem,10.8vw,2.9rem); }
  .copy p { font-size:.96rem; }
  .eyebrow { margin-bottom:12px; font-size:.74rem; }
  .text-link { margin-top:18px; font-size:.82rem; }
  .product-left { width:min(96vw,500px); height:54vh; bottom:-7vh; }
  .product-right { width:min(90vw,490px); height:49vh; bottom:1vh; }
  .transition-zone span { max-width:180px; text-align:left; font-size:.66rem; }
  .heritage-slide .copy h2,.hermetic-slide .copy h2,.concept-slide .copy h2 { font-size:clamp(2.3rem,11vw,3.15rem); }
  .heritage-slide .copy p,.hermetic-slide .copy p { margin-top:6px; }
  .plaque-stage { top:49%; }
  .under-product { top:64%; }
  .light-beam { width:88%; opacity:.58; }
  html[data-finish="white"] .light-beam { width:82%; }
  .heater-stage { width:min(96vw,530px); bottom:1%; }
  .pending-product { width:88vw; bottom:8%; }
  .pagination { display:none; }
  .site-footer { left:18px; right:18px; }
  .site-footer p { display:none; }
}

@media (max-width:420px) {
  :root { --pagination-gutter:30px; }
  .site-header,.site-header.is-scrolled { grid-template-columns:1fr 132px 1fr; }
  .brand-full { width:132px; }
  .finish-switch,.is-scrolled .finish-switch { width:88px; }
  .finish-switch b { width:41px; }
  html[data-finish="white"] .finish-switch b { transform:translateX(41px); }
  .slide { padding-inline:22px; }
  .copy h1,.copy h2 { font-size:clamp(2rem,10.5vw,2.55rem); }
  .product-left { height:50vh; }
  .product-right { height:46vh; }
  .plaque-stage { width:94vw; }
  .heater-stage { width:100vw; }
}

@media (max-height:700px) and (min-width:861px) {
  .slide { padding-top:112px; }
  .copy h1,.copy h2 { font-size:clamp(2.4rem,3.8vw,3.7rem); }
  .slide-washer .copy-right,.slide-dishwasher .copy-left { margin-top:10vh; }
  .product-left { height:78vh; bottom:-13vh; }
  .product-right { height:70vh; bottom:-8vh; }
  .plaque-stage { width:min(59vw,770px); }
  .heater-stage { width:min(52vw,610px); }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none!important; transition-duration:.01ms!important; }
}

/* Current art-direction corrections: keep grain, remove linear scratches. */
.slide::after{opacity:0;background:none}

/* Slide 4 keeps one lighting geometry in both finishes. White uses a filled
   Sepehr blue-to-red field instead of a hollow red halo. */
html[data-finish="white"] .hermetic-slide .light-beam{width:62%;opacity:.74}
html[data-finish="white"] .hermetic-slide .light-heater{
  background:linear-gradient(118deg,rgba(0,158,223,.24) 0%,rgba(104,125,170,.22) 43%,rgba(237,50,55,.22) 100%);
  -webkit-mask-image:radial-gradient(ellipse at center,#000 0 56%,rgba(0,0,0,.72) 72%,transparent 92%);
  mask-image:radial-gradient(ellipse at center,#000 0 56%,rgba(0,0,0,.72) 72%,transparent 92%);
  filter:blur(18px);
  opacity:.82;
}
html[data-finish="white"] .hermetic-slide .floor-glow{
  background:linear-gradient(96deg,rgba(0,158,223,.19),rgba(116,111,158,.18) 50%,rgba(237,50,55,.18));
  -webkit-mask-image:radial-gradient(ellipse,#000 0 48%,transparent 78%);
  mask-image:radial-gradient(ellipse,#000 0 48%,transparent 78%);
}
html[data-finish="white"] .heater-stage .asset-white{filter:drop-shadow(-18px 5px 26px rgba(0,158,223,.10)) drop-shadow(18px 7px 28px rgba(237,50,55,.10))}

/* The lower part of the hermetic heater continues into a neutral transition
   zone instead of being cut at the slide boundary. */
.hermetic-slide{overflow:visible;z-index:2}
.transition-zone-4{height:25svh;min-height:175px;padding:0;background:transparent}
.transition-zone-4::before{left:16%;right:16%;height:88%;background:radial-gradient(ellipse at 50% 0,var(--reflection),transparent 72%)}
@media(max-width:860px){.transition-zone-4{height:14svh;min-height:96px}}

/* ---------- Complete slide 7 ---------- */
.contact-complete{display:block;padding-bottom:88px}
.contact-layout{position:relative;z-index:2;height:100%;display:grid;grid-template-columns:minmax(430px,.9fr) minmax(540px,1.25fr);gap:clamp(45px,6vw,100px);align-items:center;pointer-events:none}
.contact-copy-complete{grid-column:1;z-index:4;max-width:650px;pointer-events:auto}
.main-phone{display:block;width:max-content;direction:ltr;text-decoration:none;font:900 clamp(3.8rem,6.6vw,7.2rem)/.9 "YekanBakhFaNum",Tahoma,sans-serif;letter-spacing:-.07em;margin:0 0 clamp(30px,3vw,44px);white-space:nowrap}
.contact-copy-complete h2{margin:0 0 23px;font:900 clamp(3.8rem,6.6vw,7.2rem)/.98 "YekanBakhFaNum",Tahoma,sans-serif;letter-spacing:-.055em}
.location-tabs{display:flex;flex-wrap:wrap;gap:8px;width:max-content;max-width:100%;border:0;margin-bottom:20px}
.location-tab{border:1px solid transparent;border-radius:4px;background:transparent;padding:8px 10px;margin:0;font:700 clamp(.75rem,.8vw,.9rem)/1.5 "YekanBakhFaNum",Tahoma,sans-serif;color:rgba(30,30,30,.72);position:relative;cursor:pointer;transition:color .35s ease,background-color .35s ease}
.location-tab::after{content:none}
.location-tab:hover,.location-tab:focus-visible{color:var(--ink);background:var(--nav-hover);outline:none}
.location-tab.active{color:var(--ink);background:var(--nav-hover)}
.location-content{position:relative;min-height:138px;overflow:hidden}.location-panel{position:absolute;inset:0;transform:translateX(38px);visibility:hidden;transition:transform .72s var(--ease)}.location-panel.active{position:relative;visibility:visible;transform:translateX(0)}
.contact-copy-complete address{max-width:510px;font-style:normal;font-size:clamp(.82rem,.98vw,.96rem);font-weight:700;line-height:1.85;text-align:justify}.postal-code{display:block;margin-top:2px;font-size:.78rem;color:var(--muted);font-weight:700}.map-link{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:8px 10px;border:1px solid transparent;border-radius:4px;background:transparent;font:700 clamp(.75rem,.8vw,.9rem)/1.5 "YekanBakhFaNum",Tahoma,sans-serif;color:rgba(30,30,30,.72);text-decoration:none;transition:color .35s ease,background-color .35s ease}.map-link:hover,.map-link:focus-visible{color:var(--ink);background:var(--nav-hover);outline:none}.map-link span{display:inline-block}
.contact-details{display:grid;grid-template-columns:1fr;align-items:start;gap:12px;margin-top:25px;padding-top:19px;border-top:1px solid var(--line)}.contact-details p{display:flex;flex-direction:column;align-items:flex-start;margin:0;text-align:right;gap:6px}.contact-details span{font-size:.68rem;color:var(--muted);font-weight:700}.contact-details a,.contact-details b{font:700 .9rem/1.5 "YekanBakhFaNum",Tahoma,sans-serif;text-decoration:none;white-space:nowrap}.contact-brand-mark{display:block;width:clamp(142px,12vw,190px);height:auto;object-fit:contain;margin:0 0 16px;filter:drop-shadow(0 2px 4px rgba(30,30,30,.09))}
.map-stage{position:absolute;left:calc(-1 * max(9vw,120px));top:-60px;bottom:-30px;width:56vw;overflow:hidden;z-index:1;pointer-events:none;mask-image:linear-gradient(to right,#000 0,#000 66%,rgba(0,0,0,.82) 82%,transparent 100%)}
.map-frame{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(1) contrast(.82) brightness(.98);opacity:0;transform:scale(1.015);transition:opacity 1.15s ease,transform 1.5s var(--ease);pointer-events:none}.map-frame.active{opacity:.7;transform:scale(1)}
.map-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.07),transparent 55%),var(--bg-a);opacity:.18;mix-blend-mode:color;pointer-events:none;transition:background 1s}
.copyable-row{display:flex;direction:rtl;align-items:flex-start;gap:8px;max-width:530px}
.copy-button{flex:0 0 30px;width:30px;height:30px;display:grid;place-items:center;padding:0;margin:2px 0 0;border:1px solid var(--line);border-radius:7px;background:var(--header-surface);color:rgba(30,30,30,.62);cursor:pointer;transition:color .25s ease,background-color .25s ease,border-color .25s ease}
.copy-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.copy-button:hover,.copy-button:focus-visible,.copy-button.copied{color:var(--blue);background:var(--nav-hover);border-color:rgba(0,158,223,.38);outline:none}
.postal-row{align-items:center;margin-top:5px}.postal-row .copy-button{margin-top:0}.postal-row .postal-code{margin:0}
html[data-finish="white"] .map-frame.active{opacity:.62}html[data-finish="white"] .map-wash{background:#f5f5f3;opacity:.14}

@media(max-width:1100px){.contact-layout{grid-template-columns:1fr 1fr}.map-stage{left:-84px;width:55vw}}
@media(max-width:860px){.contact-complete{min-height:100svh;height:auto;overflow:hidden}.contact-layout{display:flex;flex-direction:column;justify-content:center;gap:24px}.contact-copy-complete{order:1;width:100%}.main-phone,.contact-copy-complete h2{font-size:clamp(3.3rem,16vw,5rem)}.contact-brand-mark{width:clamp(140px,38vw,190px);margin-bottom:15px}.main-phone{margin-bottom:30px}.location-content{min-height:176px}.contact-copy-complete address{font-size:clamp(.88rem,3.3vw,1rem)}.map-stage{order:2;position:relative;z-index:0;width:calc(100% + 56px);height:340px;left:auto;top:auto;bottom:auto;margin:0 -28px -88px;mask-image:linear-gradient(to bottom,transparent 0,#000 10%,#000 100%)}.contact-details{grid-template-columns:1fr}.site-footer{z-index:8}}
@media(max-height:760px) and (min-width:861px){.main-phone{font-size:4.7rem}.contact-copy-complete h2{font-size:4.7rem;margin-bottom:12px}.contact-details{margin-top:13px;padding-top:12px}}

/* Slide 6: a centered heritage story, luminous backdrop and awards. */
.story-complete {
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:calc(var(--header-height) + 18px) clamp(24px,5vw,84px) 24px;
}
.story-light {
  position:absolute;
  z-index:-3;
  left:50%;
  top:48%;
  width:min(42vw,480px);
  height:min(76vh,690px);
  transform:translate(-50%,-50%);
  border-radius:999px;
  border:1px solid rgba(255,255,255,.24);
  background:linear-gradient(155deg,rgba(255,255,255,.32),rgba(255,255,255,.14) 50%,rgba(30,30,30,.035));
  box-shadow:0 0 72px rgba(255,255,255,.2),inset 0 0 56px rgba(255,255,255,.16);
  opacity:.82;
  pointer-events:none;
  transition:background 1s var(--ease),opacity .8s ease;
}
.story-light::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:-12%;
  border-radius:inherit;
  background:radial-gradient(ellipse at center,rgba(255,255,255,.34),rgba(255,255,255,.12) 50%,transparent 74%);
  filter:blur(24px);
}
html[data-finish="white"] .story-light {
  border-color:rgba(255,255,255,.76);
  background:linear-gradient(135deg,rgba(0,158,223,.12),rgba(255,255,255,.68) 44%,rgba(237,50,55,.075));
  box-shadow:0 0 80px rgba(0,158,223,.085),0 0 76px rgba(237,50,55,.055),inset 0 0 62px rgba(255,255,255,.72);
}
html[data-finish="white"] .story-light::before {
  background:radial-gradient(ellipse at 42% 46%,rgba(0,158,223,.20),transparent 70%),radial-gradient(ellipse at 65% 52%,rgba(237,50,55,.12),transparent 70%);
}
.story-layout {
  width:min(100%,1180px);
  height:100%;
  flex:1;
  min-height:calc(100svh - var(--header-height) - 66px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:clamp(9px,1.35vh,15px);
}
.heritage-mark {
  position:relative;
  flex:0 0 auto;
  width:clamp(58px,5.1vw,76px);
  height:clamp(34px,3vw,44px);
  direction:ltr;
}
.heritage-mark img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:none;
}
.heritage-foundation {
  flex:0 0 auto;
  display:grid;
  justify-items:center;
  min-height:clamp(34px,3vw,44px);
  text-align:center;
}
.heritage-label {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:clamp(34px,3vw,44px);
  color:var(--ink);
}
.heritage-divider {
  display:block;
  width:1px;
  height:24px;
  background:currentColor;
  opacity:.32;
}
.founding-year {
  position:relative;
  display:grid;
  place-items:center;
  min-width:5.5ch;
  height:1.12em;
  overflow:hidden;
  direction:ltr;
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:clamp(1.2rem,1.55vw,1.55rem);
  font-weight:900;
  font-variant-numeric:tabular-nums;
  line-height:1;
}
.founding-year > span {
  grid-area:1 / 1;
  display:block;
  transform:translateY(0);
  opacity:1;
  will-change:transform,opacity;
}
.founding-year-gregorian {
  font-family:"YekanBakh-Thin",Tahoma,Arial,sans-serif;
  font-weight:100;
  transform:translateY(58%);
  opacity:0;
}
.founding-year-shamsi {
  font-family:"YekanBakhFaNum-Thin","YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-weight:100;
}
.story-slide.is-visible .founding-year-shamsi {
  animation:founding-year-shamsi-loop 7.4s cubic-bezier(.22,.68,.2,1) infinite both;
}
.story-slide.is-visible .founding-year-gregorian {
  animation:founding-year-gregorian-loop 7.4s cubic-bezier(.22,.68,.2,1) infinite both;
}
@keyframes founding-year-shamsi-loop {
  0%,38% { transform:translateY(0); opacity:1; }
  46%,88% { transform:translateY(-58%); opacity:0; }
  89% { transform:translateY(58%); opacity:0; }
  100% { transform:translateY(0); opacity:1; }
}
@keyframes founding-year-gregorian-loop {
  0%,39% { transform:translateY(58%); opacity:0; }
  47%,87% { transform:translateY(0); opacity:1; }
  95%,100% { transform:translateY(-58%); opacity:0; }
}
.story-copy-complete {
  width:min(100%,920px);
  text-align:center;
}
.story-copy-complete h2 {
  margin:0;
  font-size:clamp(2.1rem,3.45vw,3.75rem);
  font-weight:900;
  line-height:1.2;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.story-copy-complete p {
  max-width:850px;
  margin:12px auto 0;
  color:var(--muted);
  font-size:clamp(.96rem,1.05vw,1.12rem);
  line-height:1.9;
  text-align:center;
  text-wrap:pretty;
}
.awards {
  width:min(100%,920px);
  justify-self:center;
  margin-inline:auto;
  height:clamp(136px,18vh,166px);
  margin-top:2px;
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr;
  align-items:center;
  direction:rtl;
}
.award {
  height:100%;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  text-align:center;
}
.award img {
  width:clamp(52px,5vw,76px);
  height:clamp(82px,11.6vh,108px);
  object-fit:contain;
  object-position:center center;
  filter:drop-shadow(0 7px 8px rgba(30,30,30,.12));
}
.award p {
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  max-width:190px;
  margin:0;
  line-height:1.45;
  text-align:center;
  font-size:clamp(.68rem,.76vw,.82rem);
}
.award strong { font-size:1rem; font-weight:900; }
.award-divider {
  display:block;
  width:1px;
  height:78%;
  align-self:center;
  margin:0 clamp(9px,1.8vw,20px);
  background:linear-gradient(transparent,var(--line),transparent);
}

@media (min-width:861px) {
  .awards { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); }
  .award { justify-content:flex-end; }
  .award p {
    width:100%;
    max-width:none;
    min-height:2.9em;
    justify-content:flex-start;
    white-space:nowrap;
    font-size:clamp(.64rem,.74vw,.8rem);
  }
  .award p span { white-space:nowrap; }
}

@media (max-width:860px) {
  .story-complete { padding:calc(var(--header-height) + 18px) 24px 24px; }
  .story-layout { min-height:calc(100svh - var(--header-height) - 56px); gap:12px; }
  .story-light { top:43%; width:82vw; height:58vh; }
  .story-light::before { inset:-10%; filter:blur(20px); }
  .heritage-foundation { min-height:36px; }
  .heritage-mark { width:64px; height:36px; }
  .heritage-label { min-height:36px; gap:8px; }
  .heritage-divider { height:21px; }
  .founding-year { font-size:1.15rem; }
  .story-copy-complete { width:100%; }
  .story-copy-complete h2 { font-size:clamp(1.85rem,6.5vw,2.65rem); line-height:1.25; }
  .story-copy-complete p { max-width:680px; margin-top:9px; font-size:clamp(.89rem,2.2vw,1rem); line-height:1.78; }
  .awards { width:100%; height:142px; }
  .award img { width:clamp(48px,8vw,70px); height:82px; }
  .award p { max-width:140px; font-size:clamp(.61rem,1.5vw,.74rem); }
  .award strong { font-size:.9rem; }
  .award-divider { height:76%; margin-inline:7px; }
}
@media (max-width:420px) {
  .story-complete { padding-inline:20px; }
  .story-layout { gap:10px; }
  .story-copy-complete h2 { font-size:clamp(1.75rem,7.2vw,2.2rem); }
  .story-copy-complete p { font-size:.87rem; line-height:1.72; }
  .awards { height:132px; }
  .award img { width:47px; height:72px; }
  .award p { font-size:.57rem; }
  .award strong { font-size:.82rem; }
  .award-divider { margin-inline:4px; }
}
@media (max-height:760px) and (min-width:861px) {
  .story-complete { padding-top:105px; padding-bottom:18px; }
  .story-layout { min-height:calc(100svh - 123px); gap:8px; }
  .heritage-foundation { min-height:32px; }
  .heritage-mark { width:58px; height:32px; }
  .heritage-label { min-height:32px; gap:8px; }
  .heritage-divider { height:20px; }
  .founding-year { font-size:1.08rem; }
  .story-copy-complete h2 { font-size:clamp(1.9rem,3vw,3.1rem); }
  .story-copy-complete p { margin-top:7px; font-size:.9rem; line-height:1.65; }
  .awards { height:132px; }
  .award img { height:88px; }
}
@media (prefers-reduced-motion:reduce) {
  .story-slide.is-visible .founding-year > span { animation:none!important; }
  .founding-year-shamsi { transform:none!important; opacity:1!important; }
  .founding-year-gregorian { display:none; }
}

/* Slide 4: the two finishes share the same light placement and softness.
   Titanium gets a cool silver studio bloom; white gets a filled, balanced
   blue-to-red brand glow. Both glows are strongest behind the heater, not a
   hollow ring around it. */
.hermetic-slide .light-beam{display:none}
.hermetic-slide .light-heater{
  width:min(88vw,1120px);
  aspect-ratio:1.42;
  bottom:-6%;
  background:radial-gradient(ellipse at 50% 55%,rgba(246,248,249,.74) 0%,rgba(224,228,229,.48) 30%,rgba(191,196,197,.2) 55%,transparent 78%);
  filter:blur(9px);
  opacity:.95;
}
.heater-stage{filter:none}
.heater-stage::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:9%;right:9%;top:12%;bottom:4%;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(224,228,229,.64) 0%,rgba(194,199,199,.34) 46%,transparent 78%);
  filter:blur(35px);
  pointer-events:none;
}
.heater-stage .asset-titanium{filter:saturate(.74) contrast(.98) drop-shadow(0 28px 28px rgba(30,30,30,.23))}
.heater-stage .asset-white{filter:saturate(.80) brightness(.88) contrast(.96) drop-shadow(0 27px 28px rgba(70,26,30,.20))}
.floor-glow{bottom:-4%;height:25%;background:radial-gradient(ellipse at center,rgba(228,231,231,.56) 0%,rgba(184,188,188,.27) 44%,transparent 78%);filter:blur(20px)}
html[data-finish="white"] .hermetic-slide .light-heater{
  background:
    radial-gradient(ellipse at 36% 56%,rgba(0,158,223,.22) 0%,rgba(65,138,169,.16) 31%,transparent 74%),
    radial-gradient(ellipse at 66% 55%,rgba(237,50,55,.20) 0%,rgba(183,86,94,.14) 33%,transparent 75%),
    radial-gradient(ellipse at 50% 54%,rgba(235,237,237,.86) 0%,rgba(219,223,223,.4) 48%,transparent 79%);
  opacity:1;
}
html[data-finish="white"] .heater-stage::before{
  background:
    radial-gradient(ellipse at 29% 55%,rgba(0,158,223,.28) 0%,rgba(0,158,223,.10) 37%,transparent 75%),
    radial-gradient(ellipse at 72% 53%,rgba(237,50,55,.27) 0%,rgba(237,50,55,.10) 39%,transparent 76%),
    radial-gradient(ellipse at 50% 55%,rgba(219,223,224,.58) 0%,rgba(219,223,224,.28) 48%,transparent 78%);
}
html[data-finish="white"] .floor-glow{
  background:linear-gradient(100deg,rgba(0,158,223,.24) 0%,rgba(124,142,153,.18) 48%,rgba(237,50,55,.22) 100%);
  -webkit-mask-image:radial-gradient(ellipse at center,#000 0 38%,rgba(0,0,0,.62) 62%,transparent 88%);
  mask-image:radial-gradient(ellipse at center,#000 0 38%,rgba(0,0,0,.62) 62%,transparent 88%);
}
html[data-finish="white"] .heater-stage .asset-white{filter:saturate(.80) brightness(.88) contrast(.96) drop-shadow(-12px 7px 22px rgba(0,158,223,.12)) drop-shadow(12px 8px 24px rgba(237,50,55,.11))}
@media(max-width:860px){.hermetic-slide .light-heater{width:124vw;aspect-ratio:1.22;bottom:0}.heater-stage::before{left:2%;right:2%;top:16%;bottom:5%;filter:blur(24px)}}


/* Slide 5 — built-in oven, centered in cabinet linework */
.oven-slide {min-height:100svh;padding:0;isolation:isolate;overflow:hidden;background:linear-gradient(118deg,var(--bg-a),color-mix(in srgb,var(--bg-a) 45%,var(--bg-b)) 48%,var(--bg-b));}
.oven-kitchen {position:absolute;z-index:-5;inset:0;opacity:.18;background:var(--oven-cabinet-asset,none) 50% center/100% 100% no-repeat;pointer-events:none;}
.oven-aura {position:absolute;z-index:-4;left:50%;top:51%;width:min(74vw,1050px);height:min(72vh,760px);transform:translate(-50%,-50%);border-radius:50%;filter:blur(28px);background:radial-gradient(ellipse at 50% 49%,rgba(255,255,255,.78) 0%,rgba(255,255,255,.52) 27%,rgba(247,247,244,.25) 57%,transparent 82%);transition:background 1s var(--ease),opacity 1s var(--ease);}
html[data-finish="white"] .oven-aura {background:radial-gradient(ellipse 43% 48% at 31% 56%,rgba(184,184,184,.52) 0%,rgba(184,184,184,.26) 49%,transparent 84%),radial-gradient(ellipse 43% 48% at 69% 55%,rgba(184,184,184,.52) 0%,rgba(184,184,184,.26) 49%,transparent 84%),radial-gradient(ellipse 48% 52% at 50% 50%,rgba(255,255,255,.96) 0%,rgba(255,255,255,.70) 37%,rgba(249,249,248,.36) 69%,transparent 90%);}
.oven-beam {position:absolute;z-index:-3;left:50%;top:calc(var(--header-height) - 4px);width:min(56vw,780px);height:76%;transform:translateX(-50%);clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);background:linear-gradient(180deg,rgba(255,255,255,.66) 0%,rgba(255,255,255,.34) 42%,rgba(255,255,255,.10) 75%,transparent 100%);filter:blur(24px);opacity:0;pointer-events:none;transition:opacity .9s var(--ease),background 1s var(--ease);}
html[data-finish="white"] .oven-beam {opacity:.42;}
.oven-copy {position:absolute;z-index:8;top:calc(var(--header-height) + 12px);left:50%;width:min(90vw,820px);transform:translateX(-50%);text-align:center;}
.oven-copy h1 {margin:0;font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;font-size:clamp(2rem,2.8vw,3rem);font-weight:900;line-height:1.16;letter-spacing:-.025em;text-wrap:balance;}
.oven-stage {position:absolute;z-index:4;left:50%;top:48%;width:clamp(290px,30vw,520px);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;filter:drop-shadow(0 23px 23px rgba(30,30,30,.17));}
.oven-image {position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;transition:opacity .85s var(--ease);}
.oven-image img {display:block;width:100%;height:100%;object-fit:contain;}
.oven-white {opacity:0;}.oven-titanium {opacity:1;}
html[data-finish="white"] .oven-white {opacity:1;}html[data-finish="white"] .oven-titanium {opacity:0;}
.oven-subtitle {position:absolute;z-index:8;top:calc(48% + min(15vw,260px) - 10px);left:50%;width:min(90vw,720px);margin:0;transform:translateX(-50%);color:rgba(30,30,30,.86);text-align:center;font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;font-size:clamp(1.08rem,1.6vw,1.42rem);font-weight:700;line-height:1.35;}
.oven-subtitle::before {content:"";position:absolute;z-index:-1;inset:-5px -22px;border-radius:50%;background:color-mix(in srgb,var(--bg-b) 72%,transparent);filter:blur(12px);opacity:.62;pointer-events:none;}
.oven-category {position:absolute;z-index:8;left:50%;top:calc(48% + min(15vw,260px) + 62px);transform:translateX(-50%);display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:7px 22px;border:1px solid rgba(30,30,30,.20);border-radius:4px;color:rgba(30,30,30,.90);background:color-mix(in srgb,var(--bg-b) 92%,transparent);font-size:.94rem;font-weight:700;white-space:nowrap;transition:color .32s ease,background-color .32s ease,border-color .32s ease;}
.oven-category:hover,.oven-category:focus-visible {color:var(--ink);background:var(--nav-hover);border-color:rgba(30,30,30,.22);outline:none;}
@media(max-width:1024px) {.oven-kitchen{background-size:auto 100%;}.oven-aura{width:94vw;height:64vh;}.oven-stage{width:min(42vw,360px);}.oven-subtitle{top:calc(48% + min(21vw,180px) - 10px);}.oven-category{top:calc(48% + min(21vw,180px) + 58px);}}
@media(max-width:640px) {
 .oven-kitchen{background-size:auto 84%;background-position:center 57%;opacity:.14;}
 .oven-copy{top:calc(var(--header-height) + 10px);width:calc(100% - 32px);}
 .oven-copy h1{font-size:clamp(1.72rem,7.2vw,2.18rem);line-height:1.18;}
 .oven-stage{top:47%;width:min(78vw,365px);}.oven-aura{top:47%;width:112vw;height:58vh;filter:blur(22px);}
 .oven-beam{top:calc(var(--header-height) + 18px);width:96vw;height:70%;filter:blur(27px);}
 .oven-subtitle{top:calc(47% + 39vw + 12px);width:calc(100% - 32px);font-size:1.06rem;}
 .oven-category{top:calc(47% + 39vw + 60px);min-height:40px;padding:6px 17px;font-size:.86rem;}
}
@media(max-width:420px) {.oven-copy{top:calc(var(--header-height) + 7px);}.oven-copy h1{font-size:clamp(1.62rem,7.1vw,1.9rem);}.oven-stage{top:46%;width:79vw;}.oven-aura{top:46%;}.oven-subtitle{top:calc(46% + 39.5vw + 12px);font-size:1.02rem;}.oven-category{top:calc(46% + 39.5vw + 56px);}}
@media(max-height:700px) and (min-width:861px) {.oven-copy{top:calc(var(--header-height) + 4px);}.oven-copy h1{font-size:clamp(1.9rem,2.6vw,2.7rem);}.oven-stage{top:45%;width:min(25vw,345px);}.oven-subtitle{top:calc(45% + min(12.5vw,172px) - 13px);}.oven-category{top:calc(45% + min(12.5vw,172px) + 49px);min-height:34px;}}
@media(prefers-reduced-motion:reduce) {.oven-image,.oven-aura,.oven-beam,.oven-category{transition:none;}}

/* Contact slide: stable address rows, compact brand mark, and a map view that works without Google Maps. */
.contact-brand-mark{width:52px;height:auto;max-height:46px;object-fit:contain;margin:0 0 19px;filter:none}
.location-content{height:166px;min-height:166px;overflow:hidden}
.location-panel,.location-panel.active{position:absolute;inset:0;min-height:166px}
.contact-copy-complete address{min-height:3.7em}
.copy-button{position:relative}
.copy-button:hover,.copy-button:focus-visible{color:var(--ink);background:var(--nav-hover);border-color:var(--line);outline:none}
.copy-button.copied,.copy-button.copy-failed{color:var(--ink);background:var(--header-surface);border-color:var(--line)}
.copy-button.copied::after,.copy-button.copy-failed::after{content:"کپی شد";position:absolute;z-index:12;top:50%;right:calc(100% + 8px);transform:translateY(-50%);width:max-content;padding:4px 8px;border:1px solid var(--line);border-radius:5px;background:var(--header-surface);color:var(--ink);font:700 .72rem/1.4 "YekanBakhFaNum",Tahoma,Arial,sans-serif;box-shadow:0 5px 14px rgba(30,30,30,.08);pointer-events:none}
.copy-button.copy-failed::after{content:"کپی نشد"}
html[data-finish="white"] .copy-button:hover,html[data-finish="white"] .copy-button:focus-visible{color:var(--blue);background:rgba(0,158,223,.08);border-color:rgba(0,158,223,.38)}
html[data-finish="white"] .copy-button.copied,html[data-finish="white"] .copy-button.copy-failed{color:var(--blue);border-color:rgba(0,158,223,.38)}
html[data-finish="white"] .copy-button.copied::after,html[data-finish="white"] .copy-button.copy-failed::after{color:var(--blue);border-color:rgba(0,158,223,.25)}
.map-frame{transform:none;filter:grayscale(1) contrast(.86) brightness(1);opacity:0}
.map-frame.active{opacity:.70;transform:none}
html[data-finish="white"] .map-frame.active{opacity:.66}
@media(max-width:860px){.location-content{height:176px;min-height:176px}.location-panel,.location-panel.active{min-height:176px}.contact-brand-mark{width:50px;max-height:44px;margin-bottom:16px}}
@media(max-width:640px){.pagination{display:none}.contact-brand-mark{width:46px;max-height:40px}.location-content{height:188px;min-height:188px}.location-panel,.location-panel.active{min-height:188px}.contact-copy-complete address{min-height:3.7em}}

@media(prefers-reduced-motion:reduce){.page-rule i{transition:none}}


/* Slide 5 additions: corner feature badges and an installment row beneath the existing category tab. */
.oven-feature-badges{position:absolute;z-index:7;left:calc(50% + clamp(205px,14vw,265px));top:48%;transform:translateY(-50%);display:flex;flex-direction:column;gap:9px;width:clamp(128px,14vw,190px);pointer-events:none}
.oven-spec{position:relative;isolation:isolate;display:flex;align-items:center;gap:9px;min-height:55px;padding:8px 10px;border:1px solid rgba(115,98,72,.32);border-radius:7px;background:rgba(251,248,239,.91);color:#292722;box-shadow:0 9px 22px rgba(28,26,23,.13),inset 0 1px rgba(255,255,255,.85);backdrop-filter:blur(8px);text-align:right}
.oven-spec::after{content:"";position:absolute;z-index:-1;inset:3px;border:1px solid rgba(155,126,69,.20);border-radius:5px;pointer-events:none}
.oven-spec-icon{width:29px;height:29px;flex:none;fill:none;stroke:#6f6045;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.oven-spec-copy{display:grid;gap:1px;min-width:0}
.oven-spec-copy strong{font-size:.88rem;font-weight:900;line-height:1.2;white-space:nowrap}
.oven-spec-copy small{font-size:.63rem;font-weight:600;line-height:1.35;white-space:nowrap;opacity:.84}
.oven-spec-capacity{border-color:rgba(167,133,65,.58);border-radius:4px 12px 4px 4px}
.oven-spec-quick{border:1.5px dashed rgba(147,76,39,.62);border-radius:10px;background:rgba(249,235,202,.94)}
.oven-spec-quick::after{border:1px dashed rgba(147,76,39,.3);border-radius:7px}
.oven-spec-quick .oven-spec-icon .flame{fill:rgba(225,91,40,.18);stroke:#c14c2b}
.oven-spec-quick .oven-spec-icon .sausage{fill:rgba(191,89,48,.15);stroke:#9e4d36}
.oven-spec-convection{border-radius:8px 8px 17px 17px;border-color:rgba(150,118,55,.7);background:rgba(45,46,45,.94);color:#fffaf0}
.oven-spec-convection .oven-spec-icon{stroke:#d9b96f}
html[data-finish="titanium"] .oven-spec-capacity,html[data-finish="titanium"] .oven-spec-quick{background:rgba(54,54,52,.95);color:#f3efe4;border-color:rgba(205,195,169,.36)}
html[data-finish="titanium"] .oven-spec-capacity .oven-spec-icon{stroke:#ded0a4}
html[data-finish="titanium"] .oven-spec-quick{border-color:rgba(208,164,110,.62)}
html[data-finish="titanium"] .oven-spec-quick::after{border-color:rgba(208,164,110,.34)}
html[data-finish="titanium"] .oven-spec-quick .oven-spec-icon .flame{fill:rgba(237,111,57,.24);stroke:#f08b53}
html[data-finish="titanium"] .oven-spec-quick .oven-spec-icon .sausage{fill:rgba(237,130,82,.22);stroke:#e6a181}
.commerce-card{position:relative;z-index:8;display:flex;flex-direction:column;align-items:stretch;gap:0;width:min(330px,90vw);padding:4px;border:1px solid color-mix(in srgb,var(--ink) 17%,transparent);border-radius:6px;background:color-mix(in srgb,var(--header-surface) 88%,transparent);box-shadow:0 8px 22px rgba(30,30,30,.09);backdrop-filter:blur(10px)}
.oven-commerce{position:absolute;left:50%;top:calc(48% + min(15vw,260px) + 30px);transform:translateX(-50%)}
.commerce-card .oven-category{position:relative;left:auto;top:auto;transform:none;width:100%;min-height:42px;padding:7px 18px;border:0;border-bottom:1px solid color-mix(in srgb,var(--ink) 13%,transparent);border-radius:3px 3px 0 0;background:transparent;box-shadow:none}
.installment-options{padding:6px 8px 8px;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
.installment-caption{display:block;margin:0 2px 5px;color:var(--ink);font-size:.69rem;font-weight:800;line-height:1.25;text-align:center;text-shadow:0 1px 8px rgba(255,255,255,.55)}
.installment-providers{display:flex;flex-direction:row;direction:rtl;gap:5px}
.provider-item{display:flex;flex:1 1 0;min-width:0;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:1px;overflow:hidden;border:0;border-radius:2px;background:transparent;color:var(--ink)}
.provider-item img{display:block;width:auto;max-width:50px;height:23px;object-fit:contain}
.provider-item b{font-size:.58rem;font-weight:800;line-height:1.1;white-space:nowrap}
.provider-item:first-child img{height:19px}
.provider-item:nth-child(2) img{max-width:42px}
.commerce-card .oven-category:hover,.commerce-card .oven-category:focus-visible{color:var(--ink);background:var(--nav-hover);border-color:color-mix(in srgb,var(--ink) 13%,transparent);outline:none;box-shadow:none}
@media(max-width:1024px){
 .oven-feature-badges{left:calc(50% + clamp(205px,14vw,265px));width:clamp(128px,14vw,190px)}
 .oven-commerce{top:calc(48% + min(21vw,180px) + 28px)}
}
@media(max-width:860px) and (min-width:641px){
 .oven-feature-badges{left:calc(50% + clamp(154px,24vw,185px));width:clamp(128px,20vw,162px);gap:7px}
 .oven-spec{min-height:51px;padding:6px 7px;gap:6px}
 .oven-spec-icon{width:24px;height:24px}
 .oven-spec-copy strong{font-size:.78rem}
 .oven-spec-copy small{font-size:.56rem}
}
@media(max-width:640px){
 .oven-copy{top:calc(var(--header-height) + 8px)}
 .oven-copy h1{font-size:clamp(1.62rem,7.1vw,2.08rem);line-height:1.15}
 .oven-feature-badges{top:calc(var(--header-height) + 54px);left:50%;transform:translateX(-50%);width:calc(100% - 26px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
 .oven-spec{min-height:43px;flex-direction:column;justify-content:center;gap:1px;padding:4px 2px;border-radius:5px;text-align:center}
 .oven-spec::after{inset:2px;border-radius:3px}
 .oven-spec-icon{width:16px;height:16px}
 .oven-spec-copy{display:flex;flex-direction:column;align-items:center;gap:0;max-width:100%}
 .oven-spec-copy strong{font-size:clamp(.58rem,2.6vw,.72rem);line-height:1.05;white-space:nowrap}
 .oven-spec-copy small{font-size:clamp(.48rem,2.05vw,.56rem);line-height:1.05;white-space:nowrap}
 .oven-spec-quick .oven-spec-copy strong{font-size:clamp(.50rem,2.18vw,.62rem)}
 .oven-stage{top:56%;width:min(70vw,310px)}
 .oven-aura{top:56%;width:100vw;height:54vh}
 .oven-subtitle{top:calc(56% + min(35vw,155px) + 8px);width:calc(100% - 28px);font-size:1rem;line-height:1.25}
 .oven-commerce{top:calc(56% + min(35vw,155px) + 25px);width:min(330px,calc(100% - 28px));gap:4px}
 .commerce-card .oven-category{min-height:37px;padding:5px 14px;font-size:.82rem}
 .installment-options{padding:4px 5px 5px}
 .installment-caption{margin:0 2px 3px;font-size:.59rem}
 .installment-providers{gap:3px}
 .provider-item{height:39px;border-radius:3px}
 .provider-item img{height:19px;max-width:43px}
 .provider-item:first-child img{height:16px}
 .provider-item:nth-child(2) img{max-width:34px}
 .provider-item b{font-size:clamp(.48rem,2.1vw,.55rem)}
}
@media(max-width:420px){
 .oven-feature-badges{top:calc(var(--header-height) + 52px)}
 .oven-stage{width:min(70vw,280px)}
 .oven-aura{top:56%}
 .oven-subtitle{top:calc(56% + min(35vw,140px) + 8px)}
 .oven-commerce{top:calc(56% + min(35vw,140px) + 25px)}
}
@media(max-width:640px) and (max-height:600px){
 .oven-feature-badges{top:calc(var(--header-height) + 48px)}
 .oven-spec{min-height:38px}
 .oven-spec-icon{width:14px;height:14px}
 .oven-stage{top:53%;width:min(58vw,225px)}
 .oven-aura{top:53%;height:50vh}
 .oven-subtitle{top:calc(53% + min(29vw,112px) + 6px);font-size:.94rem}
 .oven-commerce{top:calc(53% + min(29vw,112px) + 20px)}
 .commerce-card .oven-category{min-height:34px}
 .installment-options{padding:3px 4px}
 .installment-caption{margin-bottom:2px}
 .provider-item{height:35px}
}
@media(max-height:700px) and (min-width:861px){
 .oven-commerce{top:calc(45% + min(12.5vw,172px) + 19px)}
 .oven-feature-badges{top:46%}
}
@media(prefers-reduced-motion:reduce){.oven-feature-badges,.oven-spec,.installment-options{scroll-behavior:auto}}


/* Slide 5: two compact service marks balance the feature stack beside the oven. */
.oven-trust-marks{position:absolute;z-index:6;left:calc(50% - clamp(145px,15vw,260px) - 92px);top:48%;width:clamp(66px,6vw,82px);height:183px;transform:translateY(-50%);display:grid;grid-template-rows:repeat(2,1fr);justify-items:center;align-items:center;pointer-events:none;}
.oven-trust-marks img{display:block;width:100%;height:min(100%,82px);aspect-ratio:1/1;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(24,24,27,.17));}
.oven-service-mark{border-radius:50%;}
.oven-spec-convection .oven-spec-icon{stroke:#d9b96f;}
.oven-spec-convection .oven-spec-copy strong{font-size:clamp(.76rem,.86vw,.88rem);}
html[data-finish="titanium"] .oven-spec-convection{background:rgba(45,46,45,.96);border-color:rgba(205,195,169,.42);color:#fffaf0;}
html[data-finish="titanium"] .oven-spec-convection .oven-spec-icon{stroke:#ded0a4;}
@media(max-width:1024px){.oven-trust-marks{left:calc(50% - min(21vw,180px) - 84px);width:68px;height:183px;}.oven-trust-marks img{height:68px;}}
@media(max-width:860px) and (min-width:641px){.oven-trust-marks{left:calc(50% - min(39vw,182px) - 78px);width:64px;height:167px;}.oven-trust-marks img{height:64px;}}
@media(max-width:640px){.oven-trust-marks{left:calc(50% - 50vw + 8px);top:55%;width:clamp(48px,13vw,58px);height:auto;display:flex;flex-direction:column;align-items:center;gap:2px;}.oven-trust-marks img{width:100%;height:auto;aspect-ratio:1/1;}}
@media(max-width:420px){.oven-trust-marks{left:8px;top:55%;width:50px;}}
@media(max-width:640px){.oven-spec-convection .oven-spec-copy strong{font-size:clamp(.48rem,2.28vw,.59rem);}}


/* Uiverse-inspired layered spin button: idle stays quiet; the red/blue energy wakes on hover. */
.uiverse-button{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:0;min-width:154px;min-height:48px;margin-top:26px;padding:3px 18px;border:0!important;border-bottom:0!important;border-radius:999px;color:#f8f8f8!important;background:rgba(0,0,0,.34);box-shadow:0 8px 18px rgba(16,17,20,.12);overflow:visible;text-decoration:none!important;transition:transform .28s ease,box-shadow .32s ease,color .25s ease}
.uiverse-button::after{content:"";position:absolute;z-index:1;inset:3px;border-radius:999px;background:#111215;box-shadow:inset 0 1px rgba(255,255,255,.10),inset 0 0 0 1px rgba(255,255,255,.04);pointer-events:none;transition:background .25s ease,box-shadow .25s ease}
.uiverse-cta-label{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;font-size:.88rem;font-weight:700;line-height:1.25;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.uiverse-arrow{display:inline-block;font-size:1.05em;transition:transform .32s ease}
.uiverse-spin{position:absolute;z-index:0;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none;opacity:.34;transition:opacity .28s ease}
.uiverse-spin::before{content:"";position:absolute;inset:-150%;background:linear-gradient(90deg,#ed3237 30%,transparent 50%,#1B2CC1 70%);animation:uiverse-speen 8s cubic-bezier(.56,.15,.28,.86) infinite,uiverse-woah 4s infinite;animation-play-state:paused}
.uiverse-spin-blur{inset:-7px;filter:blur(9px);opacity:.24}
.uiverse-spin-blur::before{background:linear-gradient(90deg,#ed3237 30%,transparent 50%,#1B2CC1 70%)}
.uiverse-spin-intense{inset:-1px;filter:blur(2px);opacity:.38}
.uiverse-spin-intense::before{background:linear-gradient(90deg,#ff7e79 20%,transparent 45% 55%,#6785ff 80%)}
.uiverse-spin-inside{z-index:2;inset:4px;filter:blur(1.5px);opacity:.17}
.uiverse-spin-inside::before{background:linear-gradient(90deg,#ffc0bd 30%,transparent 45% 55%,#b7c9ff 70%)}
.uiverse-button:hover,.uiverse-button:focus-visible{gap:0;transform:translateY(-1px);color:#fff!important;border-color:transparent!important;box-shadow:0 9px 20px rgba(28,32,78,.16),0 0 9px rgba(71,65,164,.08);outline:none}
.uiverse-button:hover::after,.uiverse-button:focus-visible::after{background:#111215;box-shadow:inset 0 1px rgba(255,255,255,.17),inset 0 0 0 1px rgba(255,255,255,.09)}
.uiverse-button:hover .uiverse-spin,.uiverse-button:focus-visible .uiverse-spin{opacity:.76}
.uiverse-button:hover .uiverse-spin-blur,.uiverse-button:focus-visible .uiverse-spin-blur{opacity:.30}
.uiverse-button:hover .uiverse-spin-intense,.uiverse-button:focus-visible .uiverse-spin-intense{opacity:.48}
.uiverse-button:hover .uiverse-spin-inside,.uiverse-button:focus-visible .uiverse-spin-inside{opacity:.21}
.uiverse-button:hover .uiverse-spin::before,.uiverse-button:focus-visible .uiverse-spin::before{animation-play-state:running}
.uiverse-button:hover .uiverse-arrow,.uiverse-button:focus-visible .uiverse-arrow{transform:translateX(-3px)}
.uiverse-button:active{transform:translateY(0);box-shadow:0 3px 9px rgba(16,17,20,.2)}
.uiverse-button:active .uiverse-spin{opacity:.76}
.uiverse-button:active .uiverse-spin-blur{opacity:.30}
.uiverse-button:active .uiverse-spin-intense{opacity:.48}
.uiverse-button:active .uiverse-spin-inside{opacity:.21}
.oven-category.uiverse-button{top:calc(48% + min(15vw,260px) + 62px);left:50%;transform:translateX(-50%);margin-top:0;min-width:190px;min-height:48px;padding:3px 19px;font-size:.9rem;}
.oven-category.uiverse-button:hover,.oven-category.uiverse-button:focus-visible{transform:translate(-50%,-1px)}
.oven-category.uiverse-button:active{transform:translateX(-50%)}
@media(max-width:1024px){.oven-category.uiverse-button{top:calc(48% + min(21vw,180px) + 58px)}}
@media(max-width:640px){.uiverse-button{min-width:143px;min-height:44px;margin-top:18px;padding:3px 14px}.uiverse-cta-label{font-size:.80rem;gap:9px}.oven-category.uiverse-button{top:calc(47% + 39vw + 60px);min-width:170px;min-height:42px;padding:3px 14px;font-size:.82rem}}
@media(max-width:420px){.oven-category.uiverse-button{top:calc(46% + 39.5vw + 56px)}}
@media(max-height:700px) and (min-width:861px){.oven-category.uiverse-button{top:calc(45% + min(12.5vw,172px) + 49px);min-height:38px}}
@keyframes uiverse-speen{0%{rotate:10deg}50%{rotate:190deg}to{rotate:370deg}}
@keyframes uiverse-woah{0%,to{scale:1}50%{scale:.75}}
@media(prefers-reduced-motion:reduce){.uiverse-button,.uiverse-arrow{transition:none}.uiverse-spin::before{animation:none}}
/* The fifth CTA stays inside the existing shared category/installments card. */
.commerce-card .oven-category.uiverse-button{position:relative;top:auto;left:auto;transform:none;width:100%;min-width:0;margin:0;border-radius:999px;padding:3px 16px;}
.commerce-card .oven-category.uiverse-button:hover,.commerce-card .oven-category.uiverse-button:focus-visible{transform:translateY(-1px)}
.commerce-card .oven-category.uiverse-button:active{transform:none}

/* Slide 4 — grounded room vignette; retain both heater assets and their theme fade. */
.hermetic-slide{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(118deg,var(--bg-a),color-mix(in srgb,var(--bg-a) 45%,var(--bg-b)) 48%,var(--bg-b));}
.heater-room{position:absolute;z-index:-5;inset:0;overflow:hidden;pointer-events:none;}
.heater-room::before{content:"";position:absolute;inset:0;background:var(--heater-room-asset,none) center/100% 100% no-repeat;mix-blend-mode:multiply;opacity:.54;transition:opacity .8s ease,filter .8s ease;}
html[data-finish="titanium"] .heater-room::before{filter:grayscale(.72);opacity:.38;}
html[data-finish="white"] .heater-room::before{filter:grayscale(.16);opacity:.52;}
.heater-window-weather{position:absolute;z-index:1;left:80.3%;top:3.5%;width:17.5%;height:57%;overflow:hidden;clip-path:polygon(10% 0,93% 0,93% 97%,10% 90%);pointer-events:none;}
.heater-flake{position:absolute;top:-5%;left:var(--flake-x);width:2px;height:2px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 0 2px rgba(80,92,101,.36);opacity:0;animation:heater-snow var(--flake-speed) linear var(--flake-delay) infinite;}
.heater-flake:nth-child(1){--flake-x:12%;--flake-speed:7.4s;--flake-delay:-2.1s;--flake-drift:7px}
.heater-flake:nth-child(2){--flake-x:27%;--flake-speed:9.1s;--flake-delay:-6.5s;--flake-drift:-5px;width:3px;height:3px}
.heater-flake:nth-child(3){--flake-x:41%;--flake-speed:8.2s;--flake-delay:-3.4s;--flake-drift:8px}
.heater-flake:nth-child(4){--flake-x:58%;--flake-speed:10.2s;--flake-delay:-7.8s;--flake-drift:-6px;width:3px;height:3px}
.heater-flake:nth-child(5){--flake-x:71%;--flake-speed:7.9s;--flake-delay:-4.9s;--flake-drift:5px}
.heater-flake:nth-child(6){--flake-x:83%;--flake-speed:9.7s;--flake-delay:-1.7s;--flake-drift:-7px}
.heater-flake:nth-child(7){--flake-x:94%;--flake-speed:8.8s;--flake-delay:-5.6s;--flake-drift:6px;width:3px;height:3px}
@keyframes heater-snow{0%{top:-5%;transform:translateX(0);opacity:0}12%{opacity:.42}84%{opacity:.36}100%{top:105%;transform:translateX(var(--flake-drift));opacity:0}}
.heater-copy{position:absolute;z-index:8;top:calc(var(--header-height) + 5vh);left:66%;width:min(36vw,620px);max-width:none;margin:0;text-align:center;transform:translate3d(-50%,var(--copy-drift,0px),0);}
.heater-title{display:grid;gap:1px;margin:0;font-weight:900;line-height:1.12;text-wrap:balance;}
.heater-title-lead{font-size:clamp(2.55rem,3.8vw,4rem);}
.heater-title-name{font-size:clamp(1.34rem,1.8vw,1.8rem);line-height:1.35;}
.heater-copy .product-detail{margin:9px 0 0;color:var(--muted);font-size:clamp(.92rem,1.18vw,1.04rem);line-height:1.7;}
.heater-stage{position:absolute;z-index:4;left:33%;bottom:29.5%;width:min(54vh,34vw,630px);aspect-ratio:1;transform:translateX(-50%);filter:drop-shadow(0 17px 20px rgba(25,27,30,.18));pointer-events:none;}
.heater-stage::before{left:7%;right:7%;top:16%;bottom:0;filter:blur(30px);}
.heater-stage .finish-asset{object-fit:contain;}
.heater-commerce{position:absolute;z-index:8;top:calc(var(--header-height) + 30vh);left:66%;width:min(370px,34vw);margin:0;transform:translateX(-50%);}
.heater-commerce .oven-category.uiverse-button{min-height:46px;}
html[data-finish="titanium"] .hermetic-slide .light-heater{left:35%;bottom:11%;width:min(48vw,820px);opacity:.66;filter:blur(25px);}
html[data-finish="white"] .hermetic-slide .light-heater{left:35%;bottom:11%;width:min(48vw,820px);opacity:.76;filter:blur(25px);}
.hermetic-slide .floor-glow{left:33%;bottom:28.5%;width:min(38vw,650px);height:12%;opacity:.75;filter:blur(18px);}
html[data-finish="white"] .hermetic-slide .floor-glow{background:linear-gradient(100deg,rgba(0,158,223,.22),rgba(130,139,158,.15) 48%,rgba(237,50,55,.19));}
html[data-finish="white"] .heater-stage .asset-white{filter:drop-shadow(-12px 7px 22px rgba(0,158,223,.10)) drop-shadow(12px 8px 24px rgba(237,50,55,.09));}
html[data-finish="titanium"] .heater-stage .asset-titanium{filter:saturate(.84) contrast(.98) drop-shadow(0 17px 22px rgba(27,27,28,.2));}
@media(max-width:1024px) and (min-width:861px){.heater-copy{left:66%;width:min(36vw,520px)}.heater-commerce{width:min(350px,33vw)}.heater-stage{left:32%;width:min(52vh,34vw,500px)}}
@media(max-width:860px) and (min-width:641px){
 .heater-room::before{background-size:auto 100%;background-position:right center;}
 .heater-window-weather{left:3%;top:4%;width:94%;height:57%;}
 .heater-copy{top:calc(var(--header-height) + 10px);left:50%;width:calc(100% - 48px);}
 .heater-title-lead{font-size:clamp(2.1rem,5vw,3.2rem)}
 .heater-title-name{font-size:clamp(1.08rem,2.2vw,1.42rem)}
 .heater-copy .product-detail{margin-top:5px;font-size:.9rem}
 .heater-stage{left:50%;bottom:30%;width:min(39vh,55vw,390px);}
 .heater-commerce{left:50%;top:auto;bottom:2.2%;width:min(360px,76vw);transform:translateX(-50%);}
 .heater-commerce .installment-options{padding:4px 6px 6px}
}
@media(max-width:640px){
 .hermetic-slide{min-height:100svh;}
 .heater-room::before{background-size:auto 100%;background-position:right center;}
 .heater-window-weather{left:4%;top:4%;width:92%;height:58%;}
 .heater-copy{top:calc(var(--header-height) + 7px);left:50%;width:calc(100% - 26px);}
 .heater-title{gap:0;line-height:1.12;}
 .heater-title-lead{font-size:clamp(1.9rem,8.6vw,2.35rem)}
 .heater-title-name{font-size:clamp(1.02rem,4.4vw,1.22rem);line-height:1.35;}
 .heater-copy .product-detail{margin-top:5px;font-size:.84rem;line-height:1.45;}
 .heater-stage{left:50%;bottom:30%;width:min(28vh,68vw,270px);}
 .heater-commerce{left:50%;top:auto;bottom:2.5%;width:min(340px,calc(100% - 26px));transform:translateX(-50%);}
 .heater-commerce .oven-category{min-height:37px;padding:4px 12px;font-size:.8rem;}
 .heater-commerce .installment-options{padding:3px 4px 5px}
 .heater-commerce .installment-caption{margin-bottom:2px;font-size:.55rem}
 .heater-commerce .installment-providers{gap:2px}
 .heater-commerce .provider-item{height:33px}
 .heater-commerce .provider-item img{height:16px;max-width:40px}
 .heater-commerce .provider-item b{font-size:.47rem}
}
@media(max-width:420px){.heater-stage{width:min(26vh,68vw,245px)}.heater-title-lead{font-size:clamp(1.78rem,8.2vw,2.1rem)}.heater-commerce .provider-item{height:31px}}
@media(max-height:700px) and (min-width:861px){.heater-copy{top:calc(var(--header-height) + 12px)}.heater-title-lead{font-size:clamp(2.15rem,3vw,3rem)}.heater-title-name{font-size:clamp(1.15rem,1.5vw,1.38rem)}.heater-commerce{top:calc(var(--header-height) + 29vh);width:min(330px,32vw)}.heater-stage{width:min(48vh,32vw,520px);bottom:29.5%}}
@media(prefers-reduced-motion:reduce){.heater-flake{animation:none!important;opacity:.24}}

/* Slide 4 refinements: smaller grounded heater, wall-forward mobile crop,
   neutral white-theme light, stronger snowfall, and centered small layouts. */
.heater-flake{width:3px;height:3px;background:#fff;box-shadow:0 0 4px 1px rgba(255,255,255,.92),0 0 10px 2px rgba(169,204,229,.58);}
.heater-flake:nth-child(8){--flake-x:7%;--flake-speed:8.5s;--flake-delay:-3.8s;--flake-drift:-8px;width:2px;height:2px}
.heater-flake:nth-child(9){--flake-x:20%;--flake-speed:7.8s;--flake-delay:-5.7s;--flake-drift:6px}
.heater-flake:nth-child(10){--flake-x:34%;--flake-speed:9.5s;--flake-delay:-1.3s;--flake-drift:-5px;width:4px;height:4px}
.heater-flake:nth-child(11){--flake-x:48%;--flake-speed:8.9s;--flake-delay:-6.6s;--flake-drift:9px;width:2px;height:2px}
.heater-flake:nth-child(12){--flake-x:63%;--flake-speed:7.6s;--flake-delay:-2.8s;--flake-drift:-7px}
.heater-flake:nth-child(13){--flake-x:78%;--flake-speed:10.4s;--flake-delay:-8.2s;--flake-drift:5px;width:4px;height:4px}
.heater-flake:nth-child(14){--flake-x:89%;--flake-speed:8.1s;--flake-delay:-4.4s;--flake-drift:-9px;width:2px;height:2px}
.heater-flake:nth-child(15){--flake-x:16%;--flake-speed:11s;--flake-delay:-9.2s;--flake-drift:10px}
.heater-flake:nth-child(16){--flake-x:56%;--flake-speed:9.8s;--flake-delay:-7.1s;--flake-drift:-10px;width:2px;height:2px}
.heater-flake:nth-child(17){--flake-x:96%;--flake-speed:7.2s;--flake-delay:-3.1s;--flake-drift:7px}
@keyframes heater-snow{0%{top:-5%;transform:translateX(0);opacity:0}12%{opacity:.78}84%{opacity:.66}100%{top:105%;transform:translateX(var(--flake-drift));opacity:0}}
html[data-finish="titanium"] .heater-flake{box-shadow:0 0 5px 1px rgba(255,255,255,.98),0 0 13px 3px rgba(207,224,238,.72);}
html[data-finish="white"] .heater-flake{background:#B8B8B8;box-shadow:0 0 4px 1px rgba(255,255,255,.88),0 0 10px 2px rgba(184,184,184,.64);}
.heater-stage{width:min(49vh,31vw,560px);bottom:21.5%;}
.hermetic-slide .floor-glow{bottom:20%;width:min(36vw,600px);height:12%;}
html[data-finish="white"] .hermetic-slide .light-heater{background:radial-gradient(ellipse at 50% 55%,rgba(248,249,249,.82) 0%,rgba(225,229,230,.46) 46%,transparent 79%);opacity:.78;}
html[data-finish="white"] .heater-stage::before{background:radial-gradient(ellipse at center,rgba(224,228,229,.55) 0%,rgba(194,199,199,.26) 48%,transparent 80%);}
html[data-finish="white"] .hermetic-slide .floor-glow{background:radial-gradient(ellipse at center,rgba(245,246,246,.62) 0%,rgba(213,216,217,.28) 49%,transparent 80%);-webkit-mask-image:none;mask-image:none;}
html[data-finish="white"] .heater-stage .asset-white{filter:saturate(.8) brightness(.88) contrast(.96) drop-shadow(0 20px 26px rgba(52,57,61,.20));}
@media(max-width:1024px) and (min-width:861px){.heater-stage{width:min(47vh,31vw,470px);bottom:21.5%;}}
@media(max-width:860px){
 .heater-copy,.heater-copy .product-detail{text-align:center;}
 .heater-copy .product-detail{width:100%;max-width:none;margin-inline:auto;}
 .heater-room::before{background-position:80% center;}
 .heater-window-weather{left:76%;width:23%;}
 .heater-stage{left:50%;bottom:20%;width:min(34vh,48vw,350px);}
 .hermetic-slide .floor-glow{left:50%;bottom:18.5%;width:min(78vw,480px);}
 .heater-commerce{left:50%;}
}
@media(max-width:640px){
 .heater-room::before{background-position:80% center;}
 .heater-window-weather{left:75%;top:4%;width:24%;height:58%;}
 .heater-copy .product-detail{font-size:.86rem;line-height:1.5;}
 .heater-stage{bottom:20%;width:min(25vh,60vw,240px);}
 .hermetic-slide .floor-glow{bottom:18%;width:82vw;}
}
@media(max-width:420px){.heater-stage{width:min(24vh,60vw,225px);bottom:20%;}}
@media(max-height:700px) and (min-width:861px){.heater-stage{width:min(44vh,29vw,480px);bottom:21.5%;}}
@media(prefers-reduced-motion:reduce){.heater-flake{animation:none!important;opacity:.26}}


/* Slide 4 composition: the four product badges stay anchored beside the heater. */
.transition-zone-4{height:10svh;min-height:72px;}
@media(max-width:860px){
 .heater-window-weather{left:80.6%;width:18.4%;}
 .transition-zone-4{height:7svh;min-height:52px;}
}
@media(max-width:640px){.heater-window-weather{left:80.8%;width:19.2%;}}

.heater-composition{position:absolute;z-index:4;left:33%;bottom:21.5%;width:min(49vh,31vw,560px);aspect-ratio:1;container-type:inline-size;transform:translateX(-50%);overflow:visible;pointer-events:none;}
.heater-composition .heater-stage{position:absolute;z-index:2;inset:0;left:0;bottom:0;width:100%;height:100%;aspect-ratio:auto;transform:none;filter:drop-shadow(0 17px 20px rgba(25,27,30,.18));}
.heater-grade-badges{position:absolute;z-index:3;left:-19.5%;right:auto;top:auto;bottom:2.5%;width:16.2%;height:70%;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(4,minmax(0,1fr));row-gap:2%;align-items:center;justify-items:center;direction:ltr;pointer-events:none;}
.heater-grade-badge{position:relative;display:flex;width:100%;height:100%;min-width:0;min-height:0;align-items:center;justify-content:center;}
.heater-grade-badge img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;filter:drop-shadow(0 3px 4px rgba(24,24,27,.10));}
@media(max-width:1024px) and (min-width:861px){.heater-composition{left:32%;bottom:21.5%;width:min(47vh,31vw,470px);}}
@media(max-width:860px){
 .heater-composition{left:50%;bottom:20%;width:min(34vh,48vw,350px);}
 .heater-copy{left:50%;text-align:center;}
 .heater-copy .product-detail{text-align:center;margin-inline:auto;}
 .heater-commerce{left:50%;}
}
@media(max-width:640px){
 .heater-composition{left:50%;bottom:20%;width:min(25vh,60vw,240px);}
 .heater-copy{left:50%;width:calc(100% - 26px);text-align:center;}
 .heater-copy .product-detail{width:100%;text-align:center;}
 .heater-commerce{left:50%;}
}
@media(max-width:420px){.heater-composition{width:min(24vh,60vw,225px);}}
@media(max-height:700px) and (min-width:861px){.heater-composition{width:min(44vh,29vw,480px);bottom:21.5%;}}

/* Temporary review adjustment: 2% thicker rotating outline on CTA buttons. */
.uiverse-button::after,.uiverse-button:hover::after,.uiverse-button:focus-visible::after{inset:3.06px;}

/* Slide copy moves into place on each section change without fading. */
@keyframes slide-copy-arrive{from{transform:translate3d(0,26px,0)}to{transform:translate3d(0,0,0)}}
.slide.text-moving .copy > *{animation:slide-copy-arrive 1.05s cubic-bezier(.22,.68,.2,1) both;}
.slide.text-moving .copy > *:nth-child(2){animation-delay:.11s;}
.slide.text-moving .copy > *:nth-child(3){animation-delay:.18s;}
@media(prefers-reduced-motion:reduce){.slide.text-moving .copy > *{animation:none!important}}

/* Heater headline, detail, and category card form one compact content group. */
.heater-copy-stack{position:absolute;z-index:8;top:calc(var(--header-height) + 5vh);left:66%;width:min(36vw,620px);display:flex;flex-direction:column;align-items:center;gap:clamp(10px,1.35vh,15px);transform:translateX(-50%);}
.heater-copy-stack .heater-copy{position:relative;top:auto;left:auto;width:100%;transform:translate3d(0,var(--copy-drift,0px),0);}
.heater-copy-stack .heater-commerce{position:relative;top:auto;left:auto;width:min(370px,100%);margin:0;transform:none;}
.heater-copy-stack .heater-commerce .oven-category.uiverse-button{width:100%;}
.heater-copy-stack .heater-commerce .installment-options{margin-top:7px;}
@media(max-width:1024px) and (min-width:861px){
 .heater-copy-stack{left:66%;width:min(36vw,520px);}
 .heater-copy-stack .heater-commerce{width:100%;}
}
@media(max-width:860px) and (min-width:641px){
 .heater-copy-stack{top:calc(var(--header-height) + 10px);left:50%;width:calc(100% - 48px);gap:9px;}
 .heater-copy-stack .heater-copy{width:100%;}
 .heater-copy-stack .heater-commerce{width:min(360px,76vw);}
 .heater-copy-stack .heater-commerce .installment-options{padding:4px 6px 6px;}
 .heater-composition{left:50%;bottom:18%;width:min(30vh,45vw,330px);}
 .hermetic-slide .floor-glow{left:50%;bottom:16.5%;width:min(68vw,440px);}
}
@media(max-width:640px){
 .heater-copy-stack{top:calc(var(--header-height) + 7px);left:50%;width:calc(100% - 26px);gap:7px;}
 .heater-copy-stack .heater-copy{width:100%;}
 .heater-copy-stack .heater-copy .product-detail{margin-top:5px;}
 .heater-copy-stack .heater-commerce{width:min(340px,100%);}
 .heater-copy-stack .heater-commerce .installment-options{margin-top:4px;padding:3px 4px 5px;}
 .heater-copy-stack .heater-commerce .installment-caption{margin-bottom:2px;font-size:.55rem;}
 .heater-copy-stack .heater-commerce .installment-providers{gap:2px;}
 .heater-copy-stack .heater-commerce .provider-item{height:33px;}
 .heater-copy-stack .heater-commerce .provider-item img{height:16px;max-width:40px;}
 .heater-copy-stack .heater-commerce .provider-item b{font-size:.47rem;}
 .heater-composition{bottom:18%;}
 .hermetic-slide .floor-glow{bottom:16%;}
}
@media(max-height:700px) and (min-width:861px){
 .heater-copy-stack{top:calc(var(--header-height) + 12px);gap:8px;}
 .heater-copy-stack .heater-commerce{width:min(330px,100%);}
}

/* Extend the same no-fade entrance to the text groups used on slides 3 and 5–7. */
.slide.text-moving :is(
  .under-product > *,
  .oven-copy > *, .commerce-card > *, .oven-feature-badges .oven-spec,
  .oven-trust-marks img,
  .story-copy-complete > *, .awards,
  .contact-copy-complete > *, .location-content, .contact-details
){animation:slide-copy-arrive 1.05s cubic-bezier(.22,.68,.2,1) both;}
.slide.text-moving :is(.oven-subtitle,.commerce-card > *, .oven-feature-badges,.oven-trust-marks){animation-delay:.12s;}
.slide.text-moving :is(.story-copy-complete,.awards,.location-content,.contact-details){animation-delay:.12s;}
.slide.text-moving .heater-copy-stack .heater-commerce{animation:slide-copy-arrive 1.05s cubic-bezier(.22,.68,.2,1) .12s both;}
@media(prefers-reduced-motion:reduce){
 .slide.text-moving :is(.under-product > *, .oven-copy > *, .commerce-card > *, .oven-feature-badges .oven-spec, .oven-trust-marks img, .story-copy-complete > *, .awards, .contact-copy-complete > *, .location-content, .contact-details),
 .slide.text-moving .heater-copy-stack .heater-commerce,.slide.text-moving .oven-subtitle{animation:none!important;}
}

/* Slide 3 — the historic plaque is the signature; the cooler body stays as quiet linework. */
.heritage-slide{isolation:isolate;overflow:hidden;}
.cooler-linework{position:absolute;z-index:-5;inset:0;background:var(--cooler-grille-asset,none) center 56%/cover no-repeat;transform:translate3d(0,1.5vh,0);opacity:.16;filter:saturate(.58) blur(.7px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,transparent 5%,#000 10%,#000 90%,transparent 95%,transparent 100%),radial-gradient(ellipse 76% 64% at 50% 55%,#000 0%,rgba(0,0,0,.9) 60%,rgba(0,0,0,.38) 83%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent 0%,transparent 5%,#000 10%,#000 90%,transparent 95%,transparent 100%),radial-gradient(ellipse 76% 64% at 50% 55%,#000 0%,rgba(0,0,0,.9) 60%,rgba(0,0,0,.38) 83%,transparent 100%);mask-composite:intersect;pointer-events:none;transition:opacity .8s ease,filter .8s ease;}
html[data-finish="white"] .cooler-linework{opacity:.34;filter:saturate(.35) brightness(1.02) blur(.35px);}
html[data-finish="titanium"] .cooler-linework{opacity:.29;filter:grayscale(.78) brightness(.84) contrast(1.04) blur(.4px);}
.cooler-copy{position:absolute;z-index:8;top:calc(var(--header-height) + 2.2vh);left:50%;width:min(90vw,900px);max-width:none;margin:0;text-align:center;transform:translate3d(-50%,var(--copy-drift,0px),0);}
.cooler-title{display:grid;gap:1px;margin:0;font-weight:900;line-height:1.12;text-wrap:balance;}
.cooler-title-lead{font-size:clamp(2.55rem,3.8vw,4rem);}
.cooler-title-name{font-size:clamp(1.34rem,1.8vw,1.8rem);line-height:1.35;}
.cooler-tagline{margin:6px 0 0;color:var(--muted);font-size:clamp(.9rem,1.08vw,1rem);line-height:1.55;}
.plaque-stage{top:51%;width:min(58vw,760px);filter:drop-shadow(0 22px 26px rgba(30,30,30,.22));}
.under-product{top:70%;width:min(380px,calc(100% - 28px));}
.cooler-commerce{position:relative;top:auto;left:auto;width:min(370px,100%);margin:0 auto;transform:none;}
.cooler-commerce .oven-category.uiverse-button{width:100%;}
@media(max-width:1024px){
 .plaque-stage{top:51%;width:min(68vw,760px);}
 .cooler-copy{top:calc(var(--header-height) + 12px);width:calc(100% - 54px);}
 .under-product{top:70%;}
}
@media(max-width:640px){
 .cooler-copy{top:calc(var(--header-height) + 5px);width:calc(100% - 26px);}
 .cooler-title{gap:0;}
 .cooler-title-lead{font-size:clamp(1.9rem,8.6vw,2.35rem);}
 .cooler-title-name{font-size:clamp(1.02rem,4.4vw,1.22rem);line-height:1.35;}
 .cooler-tagline{margin-top:4px;font-size:.83rem;line-height:1.45;}
 .plaque-stage{top:51%;width:min(88vw,760px);}
 .under-product{top:68%;width:min(360px,calc(100% - 26px));}
 .cooler-commerce .installment-options{margin-top:4px;padding:3px 4px 5px;}
 .cooler-commerce .installment-caption{margin-bottom:2px;font-size:.55rem;}
 .cooler-commerce .installment-providers{gap:2px;}
 .cooler-commerce .provider-item{height:33px;}
 .cooler-commerce .provider-item img{height:16px;max-width:40px;}
 .cooler-commerce .provider-item b{font-size:.47rem;}
}
@media(max-width:420px){
 .cooler-title-lead{font-size:clamp(1.78rem,8.2vw,2.1rem);}
 .plaque-stage{width:86vw;}
 .under-product{top:67%;}
 .cooler-commerce .provider-item{height:31px;}
}
@keyframes oven-subtitle-arrive{from{transform:translate3d(-50%,26px,0)}to{transform:translate3d(-50%,0,0)}}
.slide.text-moving .oven-subtitle{animation:oven-subtitle-arrive 1.05s cubic-bezier(.22,.68,.2,1) .12s both;}

/* Slide 1: keep the complete washer visible as it extends into a compact pagination zone. */
.slide-washer .product-left img { transform:scale(1.265); transform-origin:center; }
.transition-zone-1 { height:16svh; min-height:112px; }
@media (max-width:1024px) { .transition-zone-1 { height:14svh; min-height:94px; } }
@media (max-width:860px) { .transition-zone-1 { height:12svh; min-height:78px; } }
@media (max-width:640px) { .transition-zone-1 { height:10svh; min-height:68px; } }
@media (max-width:420px) { .transition-zone-1 { height:9svh; min-height:60px; } }


/* Slide 1 copy and shared commerce card: keep full phrases on one line on desktop. */
.washer-copy { width:min(42vw,620px); max-width:620px; margin-left:auto; display:flex; flex-direction:column; align-items:center; text-align:center; }
.washer-copy h1 { font-size:clamp(1.55rem,2.45vw,2.3rem); line-height:1.18; text-wrap:nowrap; }
.washer-copy h2 { margin:6px 0 0; font-size:clamp(1.35rem,1.85vw,1.9rem); line-height:1.3; letter-spacing:-.025em; text-wrap:nowrap; }
.washer-copy h3 { margin:7px 0 0; color:var(--muted); font-size:clamp(.88rem,1.02vw,1.04rem); font-weight:400; line-height:1.5; text-wrap:nowrap; }
.washer-commerce { position:relative; z-index:8; top:auto; left:auto; transform:none; align-self:center; width:min(370px,100%); margin:16px 0 0; }
.washer-commerce .installment-options { margin-top:0; }
.washer-signature { display:flex; align-items:center; justify-content:center; align-self:center; gap:7px; width:min(370px,100%); margin-top:8px; color:var(--muted); font-size:.72rem; line-height:1.2; text-align:center; }
.washer-signature img { display:block; width:29px; height:17px; object-fit:contain; }
.washer-signature-divider { width:1px; height:13px; background:currentColor; opacity:.35; }
@media (min-width:861px) {
  .slide-washer .washer-copy { max-width:620px; }
}
@media (max-width:1024px) {
  .washer-copy { width:min(100%,620px); margin-inline:auto; align-items:center; text-align:center; }
  .washer-copy h1 { font-size:clamp(1.5rem,3.25vw,2.05rem); }
  .washer-copy h2 { font-size:clamp(1.25rem,2.25vw,1.8rem); }
  .washer-copy h3 { font-size:clamp(.86rem,1.35vw,1rem); }
  .washer-commerce { margin-inline:auto; }
}
@media (max-width:860px) {
  .washer-copy h1 { font-size:clamp(1.45rem,3.5vw,1.95rem); line-height:1.18; }
  .washer-copy h2 { margin-top:4px; font-size:clamp(1.22rem,2.8vw,1.65rem); line-height:1.25; }
  .washer-copy h3 { margin-top:6px; font-size:clamp(.82rem,1.5vw,.94rem); line-height:1.5; }
  .washer-commerce { margin-top:10px; width:min(370px,100%); }
  .washer-signature { margin-top:7px; font-size:.68rem; }
  .washer-signature img { width:27px; height:16px; }
}
@media (max-width:640px) {
  .washer-copy h1,.washer-copy h2,.washer-copy h3 { white-space:normal; text-wrap:balance; }
}
@media (max-width:420px) {
  .washer-copy h1 { font-size:clamp(1.4rem,5.8vw,1.68rem); }
  .washer-copy h2 { font-size:clamp(1.16rem,4.8vw,1.4rem); }
  .washer-copy h3 { font-size:clamp(.76rem,3.1vw,.85rem); }
  .washer-commerce { width:min(320px,100%); margin-top:8px; }
  .washer-signature { gap:6px; font-size:.62rem; }
}

/* Slide 1: washer feature badges mirror the heater badge rail dimensions and gap. */
.slide-washer .product-left { container-type:size; }
.washer-grade-badges {
  --washer-badge-base:min(49vh,31vw,560px);
  position:absolute;
  z-index:4;
  left:calc(max(15.75cqw, 50% - 34.3cqh) - var(--washer-badge-base)*.195);
  bottom:calc(max(50% - 45.16cqw, 4.84cqh) + var(--washer-badge-base)*.025);
  width:calc(var(--washer-badge-base)*.162);
  height:calc(var(--washer-badge-base)*.70);
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:repeat(4,minmax(0,1fr));
  row-gap:2%;
  align-items:center;
  justify-items:center;
  direction:ltr;
  pointer-events:none;
}
.washer-grade-badge { display:flex; width:100%; height:100%; min-width:0; min-height:0; align-items:center; justify-content:center; }
.washer-grade-badge img { display:block; width:100%; height:100%; max-width:none; max-height:none; object-fit:contain; transform:none!important; filter:drop-shadow(0 3px 4px rgba(24,24,27,.10)); }
@media(max-width:1024px) and (min-width:861px) {
  .washer-grade-badges { --washer-badge-base:min(47vh,31vw,470px); }
}
@media(max-width:860px) {
  .washer-grade-badges { --washer-badge-base:min(34vh,48vw,350px); }
}
@media(max-width:640px) {
  .washer-grade-badges { --washer-badge-base:min(25vh,60vw,240px); }
}
@media(max-width:420px) {
  .washer-grade-badges { --washer-badge-base:min(24vh,60vw,225px); }
}
@media(max-height:700px) and (min-width:861px) {
  .washer-grade-badges { --washer-badge-base:min(44vh,29vw,480px); }
}


/* v17.03: keep the washer clear of the pagination rail and shift its complete composition together. */
.slide-washer .product-left { transform:translateX(10%); }
.washer-grade-badges { bottom:25vh; }
.slide-washer .finish-asset.is-idle { display:none; }
@media (min-width:1025px) {
  .slide-washer .copy-right { margin-right:clamp(18px,2vw,36px); max-width:620px; }
  .washer-copy { align-items:flex-end; text-align:right; }
  .washer-commerce,.washer-signature { align-self:flex-end; }
  .washer-signature { justify-content:flex-end; }
}
@media (max-width:1180px) and (min-width:1025px) { .washer-grade-badges { bottom:23vh; } }
@media (max-width:1024px) {
  .slide-washer .product-left { transform:translateX(calc(-50% + 10%)); }
  .washer-grade-badges { bottom:21vh; }
}
@media (max-width:860px) { .washer-grade-badges { bottom:16vh; } }
@media (max-width:640px) { .washer-grade-badges { bottom:14vh; } }
@media (max-height:700px) and (min-width:861px) { .washer-grade-badges { bottom:20vh; } }


/* v17.04: balance slide 1 around its quiet vertical centerline. */
@media (min-width:1025px) {
  .slide-washer .copy-right { margin-right:0; max-width:620px; }
  .washer-copy { align-items:center; text-align:center; }
  .washer-commerce,.washer-signature { align-self:center; }
  .washer-signature { justify-content:center; }
}
/* Lower the washer feature rail slightly while keeping it above the slide floor. */
.washer-grade-badges { bottom:22vh; }
@media (max-width:1180px) and (min-width:1025px) { .washer-grade-badges { bottom:20vh; } }
@media (max-width:1024px) { .washer-grade-badges { bottom:18vh; } }
@media (max-width:860px) { .washer-grade-badges { bottom:13vh; } }
@media (max-width:640px) { .washer-grade-badges { bottom:11vh; } }
@media (max-height:700px) and (min-width:861px) { .washer-grade-badges { bottom:17vh; } }


/* v17.05: rebuild slide 1 around the viewport's imaginary vertical centerline. */
@media (min-width:1280px) {
  /* Keep the washer and its existing badge rail on the left half. */
  .slide-washer .product-left { transform:translateX(calc(10% - min(13vw, 266px))); }
  /* The copy stays centered as a group on the right half. */
  .slide-washer .copy-right { margin-right:0; max-width:620px; }
  .washer-copy { align-items:center; text-align:center; }
  .washer-commerce,.washer-signature { align-self:center; }
  .washer-signature { justify-content:center; }
}
/* Use a centered, stacked composition before there is room for two clear columns. */
@media (min-width:1025px) and (max-width:1279px) {
  .slide-washer .copy-right { width:min(100%,620px); margin:3vh auto 0; text-align:center; }
  .washer-copy { align-items:center; text-align:center; }
  .washer-commerce,.washer-signature { align-self:center; }
  .washer-signature { justify-content:center; }
  .slide-washer .product-left { left:50%; width:min(70vw,620px); height:65vh; bottom:-14vh; transform:translateX(-50%); }
}
@media (max-width:1024px) {
  .slide-washer .product-left { transform:translateX(-50%); }
}

/* Keep the washer scroll cue at the slide floor, aligned with the copy column. */
.slide-washer > .scroll-cue { bottom:26px; left:50%; transform:translateX(-50%); }
@media (min-width:1280px) {
  .slide-washer > .scroll-cue {
    left:calc(100% - max(9vw,120px) - min(21vw,310px) + clamp(64px,5vw,102px));
  }
}

/* Slide 1: neutral studio light stays attached to the washer at every size. */
.slide-washer .product-left::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:4% -12% 5%;
  border-radius:50%;
  filter:blur(clamp(16px,2.2vw,30px));
  pointer-events:none;
  transition:background .85s ease,opacity .85s ease;
}
html[data-finish="titanium"] .slide-washer .product-left::before {
  background:
    radial-gradient(ellipse 56% 48% at 51% 43%,rgba(255,255,255,.72) 0%,rgba(250,250,249,.44) 36%,rgba(232,233,231,.16) 63%,transparent 84%),
    radial-gradient(ellipse 38% 10% at 51% 91%,rgba(35,36,37,.18) 0%,rgba(35,36,37,.07) 43%,transparent 78%);
  opacity:.94;
}
html[data-finish="white"] .slide-washer .product-left::before {
  background:
    radial-gradient(ellipse 54% 47% at 51% 44%,rgba(196,200,199,.38) 0%,rgba(211,214,213,.28) 39%,rgba(229,231,230,.14) 66%,transparent 85%),
    radial-gradient(ellipse 40% 11% at 51% 91%,rgba(38,40,41,.19) 0%,rgba(38,40,41,.07) 42%,transparent 78%);
  opacity:.82;
}
@media (max-width:1024px) {
  .slide-washer .product-left::before { inset:5% -9% 6%; filter:blur(20px); }
}
@media (max-width:640px) {
  .slide-washer .product-left::before { inset:7% -6% 7%; filter:blur(15px); }
}

/* v17.06: give the washer composition the larger share of the desktop canvas. */
@media (min-width:1280px) {
  /* Restore the complete left-side badge rail by moving it with the washer. */
  .slide-washer .product-left { transform:translateX(10%); }
  /* Nudge the centered copy group right to preserve a clear 60/40 visual split. */
  .slide-washer .copy-right { left:clamp(64px,5vw,102px); }
}


/* v17.10: distant, desaturated fabric clouds in the washer slide sky. */
.washer-cloud {
  position:absolute; z-index:1; aspect-ratio:600/363; pointer-events:none;
  background:var(--washer-cloud-asset,none) center / contain no-repeat;
  filter:grayscale(1) saturate(0) brightness(.96) contrast(.72) blur(4px);
  opacity:.154;
}
.cloud-far-left { width:min(25vw,360px); left:2%; top:13%; transform:rotate(-5deg); }
.cloud-far-right { width:min(18vw,260px); right:5%; top:17%; transform:rotate(4deg); opacity:.1155; filter:grayscale(1) saturate(0) brightness(.96) contrast(.68) blur(6px); }
.cloud-mid-distance { width:min(15vw,210px); left:42%; top:55%; transform:rotate(3deg); opacity:.0825; filter:grayscale(1) saturate(0) brightness(.94) contrast(.62) blur(7px); }
html[data-finish="titanium"] #slide-1 .washer-cloud { display:none; }
html[data-finish="white"] .washer-cloud { filter:grayscale(1) saturate(0) brightness(1.12) contrast(.60) blur(4px); opacity:.22; }
html[data-finish="white"] .cloud-far-right { opacity:.165; filter:grayscale(1) saturate(0) brightness(1.12) contrast(.58) blur(6px); }
html[data-finish="white"] .cloud-mid-distance { opacity:.121; filter:grayscale(1) saturate(0) brightness(1.10) contrast(.54) blur(7px); }
@media (max-width:1024px) {
  .cloud-far-left { width:min(32vw,290px); left:-3%; top:17%; opacity:.121; }
  .cloud-far-right { width:min(24vw,210px); right:-3%; top:14%; opacity:.099; }
  .cloud-mid-distance { display:none; }
  html[data-finish="white"] .cloud-far-left { opacity:.165; }
  html[data-finish="white"] .cloud-far-right { opacity:.132; }
}
@media (max-width:640px) {
  .cloud-far-left { width:38vw; left:-10%; top:17%; opacity:.0825; filter:grayscale(1) saturate(0) brightness(.96) contrast(.66) blur(5px); }
  .cloud-far-right { width:27vw; right:-8%; top:13%; opacity:.0605; filter:grayscale(1) saturate(0) brightness(.96) contrast(.62) blur(7px); }
  html[data-finish="white"] .cloud-far-left { opacity:.132; filter:grayscale(1) saturate(0) brightness(1.12) contrast(.55) blur(5px); }
  html[data-finish="white"] .cloud-far-right { opacity:.099; filter:grayscale(1) saturate(0) brightness(1.12) contrast(.5) blur(7px); }
}

/* Slide 2 — left-side message, right-side complete dishwasher, and restrained kitchen light. */
@font-face{font-family:"YekanBakhFaNum-Black";src:url("fonts/YekanBakhFaNum-Black.ttf") format("truetype");font-style:normal;font-weight:900;font-display:swap}
@font-face{font-family:"YekanBakhFaNum-Regular";src:url("fonts/YekanBakhFaNum-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"YekanBakhFaNum-ExtraBlack";src:url("fonts/YekanBakhFaNum-ExtraBlack.ttf") format("truetype");font-style:normal;font-weight:900;font-display:swap}
@font-face{font-family:"YekanBakhFaNum-SemiBold";src:url("fonts/YekanBakhFaNum-SemiBold.ttf") format("truetype");font-style:normal;font-weight:600;font-display:swap}
.slide-dishwasher{isolation:isolate;overflow:hidden}
.dishwasher-kitchen{opacity:.24;filter:grayscale(.78) saturate(.42) brightness(1.045)}
.dishwasher-floor-light{position:absolute;z-index:-3;inset:0;pointer-events:none;background:radial-gradient(ellipse 30% 19% at 79% 87%,rgba(255,251,237,.78) 0%,rgba(255,255,255,.34) 44%,transparent 100%),linear-gradient(124deg,transparent 45%,rgba(255,255,255,.16) 76%,transparent 100%);mix-blend-mode:screen;opacity:.84}
html[data-finish="titanium"] .dishwasher-floor-light{opacity:.56;background:radial-gradient(ellipse 31% 19% at 79% 87%,rgba(255,255,255,.60) 0%,rgba(255,255,255,.23) 45%,transparent 100%),linear-gradient(124deg,transparent 45%,rgba(255,255,255,.1) 76%,transparent 100%)}
.dishwasher-product-light{position:absolute;z-index:-2;right:8vw;bottom:2vh;width:min(40.8vw,646px);height:min(69.7vh,697px);pointer-events:none;border-radius:48%;background:radial-gradient(ellipse 43% 48% at 67% 28%,rgba(255,255,255,.60) 0%,rgba(255,255,255,.23) 42%,transparent 80%);filter:blur(24px);opacity:.86;transition:opacity .8s ease}
html[data-finish="white"] .dishwasher-product-light{opacity:.95}
html[data-finish="titanium"] .dishwasher-product-light{opacity:.48}
.dishwasher-copy{position:absolute;z-index:8;top:calc(var(--header-height) + 17vh);left:5.2%;width:min(42%,650px);max-width:none;margin:0;display:flex;flex-direction:column;align-items:center;text-align:center;direction:rtl}
.dishwasher-copy::before{content:"";position:absolute;z-index:-1;inset:-28px -36px -25px;border-radius:48%;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--bg-b) 88%,transparent) 0%,color-mix(in srgb,var(--bg-b) 64%,transparent) 47%,transparent 83%);filter:blur(14px);pointer-events:none}
.dishwasher-title-lead,.dishwasher-title-name,.dishwasher-title-detail{width:100%;margin:0;text-wrap:balance;color:var(--ink);text-shadow:0 1px 10px color-mix(in srgb,var(--bg-b) 74%,transparent)}
.dishwasher-title-lead{font-family:"YekanBakhFaNum-ExtraBlack","YekanBakhFaNum",Tahoma,Arial,sans-serif;font-weight:900;font-size:clamp(1.72rem,2.42vw,2.38rem);line-height:1.25;letter-spacing:-.025em}
.dishwasher-title-name{margin-top:7px;font-family:"YekanBakhFaNum-Black","YekanBakhFaNum",Tahoma,Arial,sans-serif;font-weight:900;font-size:clamp(1.32rem,1.75vw,1.75rem);line-height:1.4;letter-spacing:-.02em}
.dishwasher-title-detail{margin-top:6px;font-family:"YekanBakhFaNum-SemiBold","YekanBakhFaNum",Tahoma,Arial,sans-serif;font-weight:600;font-size:clamp(.98rem,1.15vw,1.14rem);line-height:1.55;color:color-mix(in srgb,var(--ink) 79%,transparent)}
.dishwasher-commerce{width:min(370px,94%);margin:19px 0 0}
.dishwasher-commerce .oven-category{min-height:46px}
.dishwasher-signature{display:flex;align-items:center;justify-content:center;gap:8px;width:min(370px,94%);margin-top:11px;color:var(--muted);font-family:"YekanBakhFaNum-Regular","YekanBakhFaNum",Tahoma,Arial,sans-serif;font-size:.76rem;font-weight:400;line-height:1.3;text-align:center}
.dishwasher-signature img{display:block;width:29px;height:17px;object-fit:contain}
.dishwasher-signature-divider{width:1px;height:14px;background:currentColor;opacity:.35}
.product-dishwasher{right:8vw;bottom:2vh;width:min(40.8vw,646px);height:min(69.7vh,697px);overflow:visible}
.product-dishwasher .finish-asset{object-fit:contain;filter:drop-shadow(0 25px 24px rgba(22,25,30,.20)) drop-shadow(0 -4px 12px rgba(255,255,255,.13))}
.dishwasher-grade-badges{position:absolute;z-index:5;right:-3.15vw;bottom:17%;width:clamp(48px,4.6vw,76px);height:67%;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));row-gap:2%;align-items:center;justify-items:center;direction:ltr;pointer-events:none}
.dishwasher-grade-badge{display:flex;width:100%;height:100%;min-width:0;min-height:0;align-items:center;justify-content:center}
.dishwasher-grade-badge img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(20,22,26,.18))}
@media(max-width:1024px) and (min-width:861px){
 .dishwasher-copy{top:calc(var(--header-height) + 13vh);left:4.5%;width:43%}
 .dishwasher-title-lead{font-size:clamp(1.62rem,2.35vw,2rem)}
 .dishwasher-title-name{font-size:clamp(1.18rem,1.75vw,1.5rem)}
 .dishwasher-commerce{width:min(340px,96%);margin-top:14px}
 .dishwasher-signature{margin-top:8px}
 .product-dishwasher,.dishwasher-product-light{right:9vw;width:min(41.65vw,552px);height:min(64.6vh,646px);bottom:3vh}
 .dishwasher-grade-badges{right:-4.1vw;width:clamp(48px,5.4vw,62px);height:64%;bottom:17%}
}
@media(max-width:860px){
 .slide-dishwasher{overflow:hidden}
 .dishwasher-kitchen{background-position:52% center;opacity:.19}
 .dishwasher-floor-light{background:radial-gradient(ellipse 48% 18% at 76% 87%,rgba(255,255,255,.64),transparent 100%);opacity:.72}
 html[data-finish="titanium"] .dishwasher-floor-light{opacity:.38}
 .dishwasher-copy{top:calc(var(--header-height) + 7px);left:50%;width:calc(100% - 38px);max-width:620px;transform:translateX(-50%);margin:0;gap:0}
 .dishwasher-copy::before{inset:-12px -18px -12px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--bg-b) 86%,transparent) 0%,color-mix(in srgb,var(--bg-b) 58%,transparent) 55%,transparent 88%);filter:blur(10px)}
 .dishwasher-title-lead{font-size:clamp(1.58rem,4vw,2rem);line-height:1.2}
 .dishwasher-title-name{margin-top:3px;font-size:clamp(1.08rem,2.8vw,1.45rem);line-height:1.28}
 .dishwasher-title-detail{margin-top:3px;font-size:clamp(.84rem,1.8vw,1rem);line-height:1.35}
 .dishwasher-commerce{width:min(360px,94%);margin-top:8px}
 .dishwasher-commerce .oven-category{min-height:38px;padding:4px 13px;font-size:.82rem}
 .dishwasher-commerce .installment-options{padding:3px 5px 5px}
 .dishwasher-commerce .installment-caption{margin-bottom:2px;font-size:.57rem}
 .dishwasher-commerce .installment-providers{gap:2px}
 .dishwasher-commerce .provider-item{height:32px}
 .dishwasher-commerce .provider-item img{height:16px;max-width:40px}
 .dishwasher-commerce .provider-item b{font-size:.48rem}
 .dishwasher-signature{margin-top:5px;font-size:.67rem}
 .dishwasher-signature img{width:25px;height:15px}
 .product-dishwasher,.dishwasher-product-light{left:50%;right:auto;bottom:0;width:min(67vw,425px);height:50vh;transform:translateX(-50%)}
 .dishwasher-grade-badges{right:-6.2vw;bottom:16%;width:clamp(38px,7.5vw,56px);height:65%;row-gap:1%}
}
@media(max-width:640px){
 .dishwasher-copy{top:calc(var(--header-height) + 5px);width:calc(100% - 28px)}
 .dishwasher-title-lead{font-size:clamp(1.45rem,6.2vw,1.83rem)}
 .dishwasher-title-name{font-size:clamp(1rem,4.5vw,1.24rem)}
 .dishwasher-title-detail{font-size:clamp(.8rem,3.25vw,.92rem)}
 .dishwasher-commerce{width:min(330px,96%);margin-top:7px}
 .dishwasher-commerce .oven-category{min-height:35px;font-size:.77rem}
 .dishwasher-commerce .provider-item{height:29px}
 .dishwasher-commerce .provider-item img{height:14px;max-width:36px}
 .dishwasher-commerce .provider-item b{font-size:.43rem}
 .dishwasher-signature{margin-top:4px;font-size:.61rem}
 .product-dishwasher,.dishwasher-product-light{width:min(74vw,380px);height:46vh}
 .dishwasher-grade-badges{right:-5.8vw;width:clamp(34px,8vw,45px);height:62%;bottom:17%}
}
@media(max-width:420px){
 .dishwasher-title-lead{font-size:clamp(1.37rem,6.1vw,1.62rem)}
 .dishwasher-title-name{font-size:clamp(.94rem,4.3vw,1.1rem)}
 .dishwasher-title-detail{font-size:.78rem}
 .dishwasher-commerce{margin-top:6px}
 .dishwasher-signature{font-size:.57rem}
 .product-dishwasher,.dishwasher-product-light{height:43vh}
}
@media(max-height:740px) and (max-width:860px){
 .dishwasher-copy{top:calc(var(--header-height) + 3px)}
 .dishwasher-title-lead{font-size:clamp(1.3rem,5.6vw,1.65rem)}
 .dishwasher-title-name{font-size:clamp(.94rem,4.2vw,1.14rem)}
 .dishwasher-title-detail{font-size:.76rem}
 .dishwasher-commerce{margin-top:4px}
 .dishwasher-commerce .installment-options{padding:2px 4px 3px}
 .dishwasher-commerce .provider-item{height:26px}
 .dishwasher-signature{margin-top:3px}
 .product-dishwasher,.dishwasher-product-light{height:41vh}
}


/* v17.10.3 — match heater typography, washer badge rhythm, floor seam, and blink only the 2:09 readout. */
.dishwasher-copy{gap:1px}
.dishwasher-title-lead{font-size:clamp(1.95rem,3.35vw,3.15rem);line-height:1.12;white-space:nowrap;text-wrap:nowrap}
.dishwasher-title-name{margin-top:0;font-size:clamp(1.34rem,1.8vw,1.8rem);line-height:1.35;white-space:nowrap;text-wrap:nowrap}
.dishwasher-title-detail{margin-top:0;font-size:clamp(.92rem,1.18vw,1.04rem);line-height:1.45;white-space:nowrap;text-wrap:nowrap}
.product-dishwasher,.dishwasher-product-light{bottom:24vh}
.dishwasher-grade-badges{--dishwasher-badge-base:min(49vh,31vw,560px);right:-3.15vw;bottom:17%;width:calc(var(--dishwasher-badge-base)*.162);height:calc(var(--dishwasher-badge-base)*.70);grid-template-rows:repeat(4,minmax(0,1fr));row-gap:2%}
@media(max-width:1024px) and (min-width:861px){
 .dishwasher-title-lead{font-size:clamp(1.26rem,2.6vw,1.72rem)}
 .dishwasher-title-name{font-size:clamp(1rem,1.7vw,1.38rem)}
 .dishwasher-title-detail{font-size:clamp(.76rem,1.13vw,.92rem)}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(47vh,31vw,470px)}
 .product-dishwasher,.dishwasher-product-light{bottom:24vh}
}
@media(max-width:860px){
 .dishwasher-title-lead{font-size:clamp(1.35rem,5.5vw,1.85rem);line-height:1.12}
 .dishwasher-title-name{font-size:clamp(1rem,4.3vw,1.4rem);line-height:1.35}
 .dishwasher-title-detail{font-size:clamp(.8rem,3.1vw,.98rem);line-height:1.4}
 .dishwasher-title-lead,.dishwasher-title-name,.dishwasher-title-detail{white-space:nowrap;text-wrap:nowrap}
 .product-dishwasher,.dishwasher-product-light{bottom:6vh}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(34vh,48vw,350px);right:-6.2vw;bottom:13vh;width:calc(var(--dishwasher-badge-base)*.162);height:calc(var(--dishwasher-badge-base)*.70);row-gap:2%}
}
@media(max-width:640px){
 .dishwasher-title-lead{font-size:clamp(1.24rem,5.9vw,1.55rem)}
 .dishwasher-title-name{font-size:clamp(.94rem,4.2vw,1.12rem)}
 .dishwasher-title-detail{font-size:clamp(.74rem,3.05vw,.82rem)}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(25vh,60vw,240px);right:-5.8vw;bottom:11vh}
 .product-dishwasher,.dishwasher-product-light{bottom:6vh}
}
@media(max-width:420px){
 .dishwasher-title-lead{font-size:clamp(1.18rem,5.8vw,1.38rem)}
 .dishwasher-title-name{font-size:clamp(.87rem,4vw,1rem)}
 .dishwasher-title-detail{font-size:clamp(.69rem,2.9vw,.76rem)}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(24vh,60vw,225px)}
}
@media(max-height:700px) and (min-width:861px){
 .product-dishwasher,.dishwasher-product-light{bottom:24vh}
 .dishwasher-copy{top:calc(var(--header-height) + 10vh)}
}

/* v17.10.4 — complete the dishwasher pass: heater-sized type, washer-matched badges,
   a 15% smaller desktop product grounded on the kitchen seam, and unwrapped copy. */
.dishwasher-copy{left:2.5%;width:min(48%,860px)}
.dishwasher-title-lead{font-size:clamp(2.1rem,3.5vw,4rem);line-height:1.12;white-space:nowrap;text-wrap:nowrap}
.dishwasher-title-name{font-size:clamp(1.34rem,1.8vw,1.8rem);line-height:1.35;white-space:nowrap;text-wrap:nowrap}
.dishwasher-title-detail{font-size:clamp(.92rem,1.18vw,1.04rem);line-height:1.7;white-space:nowrap;text-wrap:nowrap}
/* 0.85 of the original product-right desktop footprint; the floor meets the wall at 76% height. */
.product-dishwasher,.dishwasher-product-light{right:8vw;bottom:24vh;width:min(40.8vw,646px);height:min(69.7vh,697px);transform:none}
/* Same 16.2% × 70% icon rail, 2% row gap, and 19.5% offset used beside the heater. */
.dishwasher-grade-badges{--dishwasher-badge-base:min(49vh,31vw,560px);right:calc(var(--dishwasher-badge-base)*-.195);bottom:2.5%;width:calc(var(--dishwasher-badge-base)*.162);height:calc(var(--dishwasher-badge-base)*.70);grid-template-rows:repeat(4,minmax(0,1fr));row-gap:2%}
@media(max-width:1024px) and (min-width:861px){
 .dishwasher-copy{left:1%;width:min(49%,610px)}
 .dishwasher-title-lead{font-size:clamp(1.75rem,3.35vw,2.55rem)}
 .dishwasher-title-name{font-size:clamp(1.08rem,2.2vw,1.42rem)}
 .dishwasher-title-detail{font-size:.9rem}
 .dishwasher-product-light,.product-dishwasher{right:9vw;bottom:24vh;width:min(41.65vw,552px);height:min(64.6vh,646px)}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(47vh,31vw,470px)}
}
@media(max-width:860px) and (min-width:641px){
 .dishwasher-copy{top:calc(var(--header-height) + 10px);left:50%;width:calc(100% - 48px);transform:translateX(-50%)}
 .dishwasher-title-lead{font-size:clamp(2.1rem,5vw,3.2rem)}
 .dishwasher-title-name{font-size:clamp(1.08rem,2.2vw,1.42rem)}
 .dishwasher-title-detail{font-size:.9rem}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(34vh,48vw,350px);right:calc(var(--dishwasher-badge-base)*-.195);bottom:2.5%;width:calc(var(--dishwasher-badge-base)*.162);height:calc(var(--dishwasher-badge-base)*.70);row-gap:2%}
}
@media(max-width:640px){
 .dishwasher-title-lead{font-size:clamp(1.24rem,5.9vw,1.55rem)}
 .dishwasher-title-name{font-size:clamp(.94rem,4.2vw,1.12rem)}
 .dishwasher-title-detail{font-size:clamp(.74rem,3.05vw,.82rem)}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(25vh,60vw,240px);right:calc(var(--dishwasher-badge-base)*-.195);bottom:2.5%;width:calc(var(--dishwasher-badge-base)*.162);height:calc(var(--dishwasher-badge-base)*.70);row-gap:2%}
}
@media(max-width:420px){
 .dishwasher-title-lead{font-size:clamp(1.18rem,5.8vw,1.38rem)}
 .dishwasher-title-name{font-size:clamp(.87rem,4vw,1rem)}
 .dishwasher-title-detail{font-size:clamp(.69rem,2.9vw,.76rem)}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(24vh,60vw,225px)}
}
@media(max-height:700px) and (min-width:861px){
 .dishwasher-title-lead{font-size:clamp(2.15rem,3vw,3rem)}
 .dishwasher-title-name{font-size:clamp(1.15rem,1.5vw,1.38rem)}
 .dishwasher-copy{top:calc(var(--header-height) + 12px)}
 .dishwasher-product-light,.product-dishwasher{bottom:24vh}
 .dishwasher-grade-badges{--dishwasher-badge-base:min(44vh,29vw,480px);bottom:2.5%}
}

/* v17.10.5 — positions corrected from the user's marked reference. */
.dishwasher-copy{left:2.5%;width:min(48%,860px);align-items:center;text-align:center}
.dishwasher-title-lead,.dishwasher-title-name,.dishwasher-title-detail{font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;letter-spacing:normal;white-space:nowrap;text-wrap:nowrap;width:max-content;max-width:none;align-self:center}
.dishwasher-title-lead{font-weight:900;font-size:clamp(2.55rem,3.5vw,4rem);line-height:1.12}
.dishwasher-title-name{font-weight:900;font-size:clamp(1.34rem,1.8vw,1.8rem);line-height:1.35}
.dishwasher-title-detail{font-weight:400;font-size:clamp(.92rem,1.18vw,1.04rem);line-height:1.7}
/* The screenshot's blue mark is the appliance's floor contact; red mark is the icon-rail baseline. */
.product-dishwasher,.dishwasher-product-light{bottom:17vh}
.dishwasher-grade-badges{bottom:20%}
/* Use the heater slide's shared family and weights instead of separate, unavailable face aliases. */
.dishwasher-title-lead,.dishwasher-title-name,.dishwasher-title-detail{font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif}
html[data-finish="white"] .product-dishwasher .asset-white{filter:drop-shadow(0 20px 22px rgba(20,22,26,.15))}
@media(max-width:1024px) and (min-width:861px){
 .dishwasher-copy{left:1%;width:min(49%,610px)}
 .dishwasher-title-lead{font-size:clamp(1.75rem,3.35vw,2.55rem)}
 .dishwasher-title-name{font-size:clamp(1.08rem,2.2vw,1.42rem)}
 .dishwasher-title-detail{font-size:.9rem}
 .product-dishwasher,.dishwasher-product-light{bottom:17vh}
 .dishwasher-grade-badges{bottom:20%}
}
@media(max-width:860px) and (min-width:641px){
 .dishwasher-title-lead{font-size:clamp(2.1rem,5vw,3.2rem)}
 .dishwasher-title-name{font-size:clamp(1.08rem,2.2vw,1.42rem)}
 .dishwasher-title-detail{font-size:.9rem}
 .dishwasher-grade-badges{bottom:20%}
}
@media(max-width:640px){
 .dishwasher-title-lead{font-size:clamp(1.24rem,5.9vw,1.55rem)}
 .dishwasher-title-name{font-size:clamp(.94rem,4.2vw,1.12rem)}
 .dishwasher-title-detail{font-size:clamp(.74rem,3.05vw,.82rem)}
 .dishwasher-grade-badges{bottom:20%}
}
@media(max-width:420px){
 .dishwasher-title-lead{font-size:clamp(1.18rem,5.8vw,1.38rem)}
 .dishwasher-title-name{font-size:clamp(.87rem,4vw,1rem)}
 .dishwasher-title-detail{font-size:clamp(.69rem,2.9vw,.76rem)}
}
@media(max-height:700px) and (min-width:861px){
 .dishwasher-title-lead{font-size:clamp(2.15rem,3vw,3rem)}
 .dishwasher-title-name{font-size:clamp(1.15rem,1.5vw,1.38rem)}
 .product-dishwasher,.dishwasher-product-light{bottom:17vh}
 .dishwasher-grade-badges{bottom:20%}
}

/* v17.11 — shared headline scale and clean dishwasher timer/grounding. */
:root{
  --slide-type-1:clamp(2.55rem,3.8vw,4rem);
  --slide-type-2:clamp(1.34rem,1.8vw,1.8rem);
  --slide-type-3:clamp(.92rem,1.18vw,1.04rem);
}
:is(#slide-1 .washer-copy h1,#slide-2 .dishwasher-title-lead,#slide-3 .cooler-title-lead,#slide-4 .heater-title-lead,#slide-5 .oven-copy h1,#slide-6 .story-copy-complete h2,#slide-7 .contact-copy-complete h2){
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:var(--slide-type-1);
  font-weight:900;
  line-height:1.12;
  letter-spacing:-.035em;
}
:is(#slide-1 .washer-copy h2,#slide-2 .dishwasher-title-name,#slide-3 .cooler-title-name,#slide-4 .heater-title-name,#slide-5 .oven-subtitle){
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:var(--slide-type-2);
  font-weight:900;
  line-height:1.35;
  letter-spacing:-.035em;
}
:is(#slide-1 .washer-copy h3,#slide-2 .dishwasher-title-detail,#slide-3 .cooler-tagline,#slide-4 .heater-copy .product-detail){
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:var(--slide-type-3);
  font-weight:400;
  line-height:1.7;
}
/* Keep product headlines unbroken on wide viewports; allow natural wrapping on phones. */
:is(#slide-1 .washer-copy h1,#slide-1 .washer-copy h2,#slide-1 .washer-copy h3,#slide-2 .dishwasher-title-lead,#slide-2 .dishwasher-title-name,#slide-2 .dishwasher-title-detail,#slide-3 .cooler-title-lead,#slide-3 .cooler-title-name,#slide-3 .cooler-tagline,#slide-4 .heater-title-lead,#slide-4 .heater-title-name,#slide-4 .heater-copy .product-detail,#slide-5 .oven-copy h1,#slide-5 .oven-subtitle){
  white-space:nowrap;
  text-wrap:nowrap;
}
@media(max-width:860px){
  :root{
    --slide-type-1:clamp(2.1rem,5vw,3.2rem);
    --slide-type-2:clamp(1.08rem,2.2vw,1.42rem);
    --slide-type-3:.9rem;
  }
  :is(#slide-1 .washer-copy h1,#slide-1 .washer-copy h2,#slide-1 .washer-copy h3,#slide-2 .dishwasher-title-lead,#slide-2 .dishwasher-title-name,#slide-2 .dishwasher-title-detail,#slide-3 .cooler-title-lead,#slide-3 .cooler-title-name,#slide-3 .cooler-tagline,#slide-4 .heater-title-lead,#slide-4 .heater-title-name,#slide-4 .heater-copy .product-detail,#slide-5 .oven-copy h1,#slide-5 .oven-subtitle){
    white-space:normal;
    text-wrap:balance;
  }
}
@media(max-width:640px){
  :root{
    --slide-type-1:clamp(1.9rem,8.6vw,2.35rem);
    --slide-type-2:clamp(1.02rem,4.4vw,1.22rem);
    --slide-type-3:.84rem;
  }
  :is(#slide-1 .washer-copy h1,#slide-1 .washer-copy h2,#slide-1 .washer-copy h3,#slide-2 .dishwasher-title-lead,#slide-2 .dishwasher-title-name,#slide-2 .dishwasher-title-detail,#slide-3 .cooler-title-lead,#slide-3 .cooler-title-name,#slide-3 .cooler-tagline,#slide-4 .heater-title-lead,#slide-4 .heater-title-name,#slide-4 .heater-copy .product-detail,#slide-5 .oven-copy h1,#slide-5 .oven-subtitle){
    white-space:normal;
    text-wrap:balance;
  }
}
@media(max-width:420px){
  :root{
    --slide-type-1:clamp(1.78rem,8.2vw,2.1rem);
    --slide-type-2:clamp(1.02rem,4.4vw,1.22rem);
    --slide-type-3:.84rem;
  }
}
@media(max-height:700px) and (min-width:861px){
  :root{
    --slide-type-1:clamp(2.15rem,3vw,3rem);
    --slide-type-2:clamp(1.15rem,1.5vw,1.38rem);
  }
}

/* The back foot follows the floor mark; the last badge sits just above it. */
.product-dishwasher,.dishwasher-product-light{bottom:16vh}
.dishwasher-grade-badges{bottom:8%}
@media(max-width:1024px) and (min-width:861px){.product-dishwasher,.dishwasher-product-light{bottom:16vh}.dishwasher-grade-badges{bottom:8%}}
@media(max-width:860px) and (min-width:641px){.dishwasher-grade-badges{bottom:8%}}
@media(max-width:640px){.dishwasher-grade-badges{bottom:8%}}
@media(max-height:700px) and (min-width:861px){.product-dishwasher,.dishwasher-product-light{bottom:16vh}.dishwasher-grade-badges{bottom:8%}}

/* v17.12 — match dishwasher badge spacing to the washer rail and lower the product group by 5%. */
.product-dishwasher,
.dishwasher-product-light {
  --dishwasher-drop: min(3.485vh, 34.85px);
  bottom: calc(16vh - var(--dishwasher-drop));
}
.dishwasher-grade-badges {
  /* Derive the visible image edge from its transparent canvas so the badge gap
     matches the washer rail instead of measuring against the full image box. */
  --dishwasher-fit-width: min(100%, 58.12vh, 581.2px);
  right: calc((100% - var(--dishwasher-fit-width)) / 2 + var(--dishwasher-fit-width) * .032715 - var(--dishwasher-badge-base) * .162 - var(--dishwasher-badge-base) * .03);
}
@media (max-width: 1024px) and (min-width: 861px) {
  .product-dishwasher,
  .dishwasher-product-light { --dishwasher-drop: min(3.23vh, 32.3px); }
  .dishwasher-grade-badges {
    --dishwasher-fit-width: min(100%, 53.85vh, 538px);
  }
}
@media (max-width: 860px) and (min-width: 641px) {
  .product-dishwasher,
  .dishwasher-product-light { --dishwasher-drop: min(2.5vh, 25px); }
  .dishwasher-grade-badges {
    --dishwasher-fit-width: min(100%, 41.68vh, 416.8px);
  }
}
@media (max-width: 640px) {
  .product-dishwasher,
  .dishwasher-product-light { --dishwasher-drop: min(2.3vh, 23px); }
  .dishwasher-grade-badges {
    --dishwasher-fit-width: min(100%, 38.36vh, 383.6px);
  }
}
@media (max-width: 420px) {
  .product-dishwasher,
  .dishwasher-product-light { --dishwasher-drop: min(2.15vh, 21.5px); }
  .dishwasher-grade-badges {
    --dishwasher-fit-width: min(100%, 35.86vh, 358.6px);
  }
}
@media (max-height: 740px) and (max-width: 860px) {
  .product-dishwasher,
  .dishwasher-product-light { --dishwasher-drop: min(2.05vh, 20.5px); }
}
@media (max-height: 700px) and (min-width: 861px) {
  .product-dishwasher,
  .dishwasher-product-light { --dishwasher-drop: min(3.23vh, 32.3px); }
  .dishwasher-grade-badges {
    --dishwasher-fit-width: min(100%, 53.85vh, 538px);
  }
}


/* v17.13 — dishwasher product shift, compact responsive badges, native WebP blink, sleeping cat. */
.product-dishwasher,
.dishwasher-product-light {
  right: calc(8vw - min(2.04vw, 32.3px));
}
.dishwasher-grade-badges {
  --dishwasher-badge-scale: 1;
  --dishwasher-badge-width: calc(var(--dishwasher-badge-base) * .162 * var(--dishwasher-badge-scale));
  bottom: 10%;
  width: var(--dishwasher-badge-width);
  height: calc(var(--dishwasher-badge-base) * .70 * var(--dishwasher-badge-scale));
  right: calc((100% - var(--dishwasher-fit-width)) / 2 + var(--dishwasher-fit-width) * .032715 - var(--dishwasher-badge-width) - var(--dishwasher-badge-base) * .03);
}
.dishwasher-cat-stage {
  position: absolute;
  z-index: 2;
  left: 4.5vw;
  bottom: 12.65vh;
  width: min(21vw, 380px);
  pointer-events: none;
  opacity: .56;
}
.dishwasher-cat-stage::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 17%; right: 13%; bottom: 1%; height: 9%;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(28,29,30,.23), rgba(28,29,30,.08) 42%, transparent 76%);
  filter: blur(10px);
  animation: dishwasher-cat-shadow 4.2s ease-in-out infinite;
}
.dishwasher-cat-stage img {
  display: block;
  width: 100%;
  height: auto;
  transform-origin: 51% 82%;
  animation: dishwasher-cat-breathe 4.2s ease-in-out infinite;
}
@keyframes dishwasher-cat-breathe {
  0%, 100% { transform: scaleY(1); }
  42% { transform: scaleY(1.008); }
  62% { transform: scaleY(1.006); }
}
@keyframes dishwasher-cat-shadow {
  0%, 100% { opacity: .68; transform: scaleX(1); }
  48% { opacity: .44; transform: scaleX(.985); }
}
@media (max-width: 1024px) and (min-width: 861px) {
  .product-dishwasher,
  .dishwasher-product-light { right: calc(9vw - min(2.0825vw, 27.6px)); }
  .dishwasher-grade-badges { --dishwasher-badge-scale: .94; }
  .dishwasher-cat-stage { left: 3.5vw; width: min(24vw, 290px); bottom: 12.65vh; }
}
@media (max-width: 860px) and (min-width: 641px) {
  .product-dishwasher,
  .dishwasher-product-light { left: 50%; right: auto; transform: translateX(calc(-50% + 5%)); }
  .dishwasher-grade-badges { --dishwasher-badge-scale: .88; }
  .dishwasher-cat-stage { left: 1.5vw; width: min(24vw, 190px); bottom: 12.65vh; }
}
@media (max-width: 640px) {
  .dishwasher-grade-badges { --dishwasher-badge-scale: .84; }
  .dishwasher-cat-stage { left: 1vw; width: min(20vw, 88px); bottom: 13.35vh; }
}
@media (max-width: 420px) {
  .dishwasher-grade-badges { --dishwasher-badge-scale: .78; }
  .dishwasher-cat-stage { left: .8vw; width: min(20vw, 76px); bottom: 13.35vh; }
}
@media (max-height: 740px) and (max-width: 860px) {
  .dishwasher-cat-stage { bottom: 13.6vh; }
}
@media (prefers-reduced-motion: reduce) {
  .dishwasher-cat-stage img,
  .dishwasher-cat-stage::before { animation: none; }
}

@media (max-height: 740px) and (max-width: 860px) {
  .dishwasher-grade-badges { --dishwasher-fit-width: min(100%, 34.18vh); }
}


/* v17.14 — opaque light-gray cat, closer to the dishwasher; move only the product renders 2%. */
.product-dishwasher > .finish-asset {
  transform: translateY(2%);
}
.dishwasher-product-light {
  translate: 0 2%;
}
.dishwasher-cat-stage {
  --dishwasher-extra-drop: min(1.394vh, 13.94px);
  --dishwasher-cat-width: min(18.9vw, 342px);
  left: auto;
  right: calc(8vw - min(2.04vw, 32.3px) + min(40.8vw, 646px) - (min(40.8vw, 646px) - min(40.8vw, 646px, 58.12vh, 581.2px)) / 2 - min(40.8vw, 646px, 58.12vh, 581.2px) * .032715 + 12px + var(--dishwasher-cat-width));
  bottom: calc(12.65vh - var(--dishwasher-extra-drop));
  width: var(--dishwasher-cat-width);
  opacity: 1;
}
.dishwasher-cat-stage img {
  filter: grayscale(1) brightness(1.22) contrast(.92);
  transform-origin: 51% 82%;
  animation: dishwasher-cat-breathe-v174 3.8s ease-in-out infinite;
}
@keyframes dishwasher-cat-breathe-v174 {
  0%, 100% { transform: scaleX(-1) scaleY(1); }
  40% { transform: scaleX(-1) scaleY(1.025); }
  58% { transform: scaleX(-1) scaleY(1.018); }
}
@media (max-width: 1024px) and (min-width: 861px) {
  .product-dishwasher > .finish-asset { transform: translateY(2%); }
  .dishwasher-product-light { translate: 0 2%; }
  .dishwasher-cat-stage {
    --dishwasher-extra-drop: min(1.292vh, 12.92px);
    --dishwasher-cat-width: min(21.6vw, 261px);
    right: calc(9vw - min(2.0825vw, 27.6px) + min(41.65vw, 552px) - (min(41.65vw, 552px) - min(41.65vw, 552px, 53.85vh, 538px)) / 2 - min(41.65vw, 552px, 53.85vh, 538px) * .032715 + 10px + var(--dishwasher-cat-width));
    bottom: calc(12.65vh - var(--dishwasher-extra-drop));
  }
}
@media (max-width: 860px) and (min-width: 641px) {
  .product-dishwasher > .finish-asset { transform: translateY(2%); }
  .dishwasher-product-light { translate: 0 2%; }
  .dishwasher-cat-stage {
    --dishwasher-extra-drop: min(1vh, 10px);
    --dishwasher-cat-width: min(21.6vw, 171px);
    left: max(1.5vw, calc(50% - min(67vw, 425px) * .45 + (min(67vw, 425px) - min(67vw, 425px, 41.68vh, 416.8px)) / 2 + min(67vw, 425px, 41.68vh, 416.8px) * .032715 - 10px - var(--dishwasher-cat-width)));
    right: auto;
    bottom: calc(12.65vh - var(--dishwasher-extra-drop));
  }
}
@media (max-width: 640px) {
  .product-dishwasher > .finish-asset { transform: translateY(2%); }
  .dishwasher-product-light { translate: 0 2%; }
  .dishwasher-cat-stage {
    --dishwasher-extra-drop: min(.92vh, 9.2px);
    --dishwasher-cat-width: min(18vw, 79.2px);
    left: max(1vw, calc(50% - min(74vw, 380px) * .45 + (min(74vw, 380px) - min(74vw, 380px, 38.36vh, 383.6px)) / 2 + min(74vw, 380px, 38.36vh, 383.6px) * .032715 - 8px - var(--dishwasher-cat-width)));
    right: auto;
    bottom: calc(13.35vh - var(--dishwasher-extra-drop));
  }
}
@media (max-width: 420px) {
  .dishwasher-cat-stage {
    --dishwasher-extra-drop: min(.86vh, 8.6px);
    --dishwasher-cat-width: min(18vw, 68.4px);
    left: max(.8vw, calc(50% - min(74vw, 380px) * .45 + (min(74vw, 380px) - min(74vw, 380px, 35.86vh, 358.6px)) / 2 + min(74vw, 380px, 35.86vh, 358.6px) * .032715 - 7px - var(--dishwasher-cat-width)));
    bottom: calc(13.35vh - var(--dishwasher-extra-drop));
  }
}
@media (max-height: 740px) and (max-width: 860px) and (min-width: 641px) {
  .dishwasher-cat-stage {
    --dishwasher-extra-drop: min(.82vh, 8.2px);
    left: max(1.5vw, calc(50% - min(67vw, 425px) * .45 + (min(67vw, 425px) - min(67vw, 425px, 34.18vh, 341.8px)) / 2 + min(67vw, 425px, 34.18vh, 341.8px) * .032715 - 8px - var(--dishwasher-cat-width)));
    bottom: calc(13.6vh - var(--dishwasher-extra-drop));
  }
}
@media (max-height: 740px) and (max-width: 640px) {
  .dishwasher-cat-stage {
    --dishwasher-extra-drop: min(.82vh, 8.2px);
    bottom: calc(13.6vh - var(--dishwasher-extra-drop));
  }
}

/* v17.15 — photo-real kitchen crop with the counter datum raised; cat is mirrored and visually subdued. */
.dishwasher-kitchen {
  background-size: auto 128%;
  background-position: center bottom;
  opacity: .31;
  filter: grayscale(1) saturate(0) brightness(1.035) contrast(.92);
}
.dishwasher-cat-stage img {
  filter: grayscale(1) brightness(1.12) contrast(.58) blur(.25px);
  mix-blend-mode: multiply;
  animation-name: dishwasher-cat-breathe-v175;
}
@keyframes dishwasher-cat-breathe-v175 {
  0%, 100% { transform: scaleY(1); }
  40% { transform: scaleY(1.0275); }
  58% { transform: scaleY(1.0198); }
}
@media (max-width: 860px) {
  .dishwasher-kitchen { background-position: 52% bottom; }
}

/* v17.16 — lift the dishwasher group. */
.product-dishwasher {
  translate: 0 -7%;
}
.dishwasher-product-light {
  /* v17.15 already carried a +2% translate; -5% is a net 7% lift. */
  translate: 0 -5%;
}
/* v17.18 — resize from the floor datum and tighten the cat/product relationship. */
.product-dishwasher > .finish-asset {
  scale: .97;
  transform-origin: 50% 100%;
}

/* v17.19 — one floor-anchored composition for dishwasher, badges and cat. */
.dishwasher-composition {
  --dishwasher-frame-width: min(40.8vw, 646px);
  --dishwasher-frame-height: min(69.7vh, 697px);
  --dishwasher-drop: min(3.485vh, 34.85px);
  --dishwasher-lift: min(4.879vh, 48.79px);
  --dishwasher-composition-bottom: calc(16vh - var(--dishwasher-drop) + var(--dishwasher-lift));
  --dishwasher-fit-width: min(100%, 58.12vh, 581.2px);
  position: absolute;
  z-index: 4;
  right: calc(8vw - min(2.04vw, 32.3px));
  bottom: var(--dishwasher-composition-bottom);
  width: var(--dishwasher-frame-width);
  height: var(--dishwasher-frame-height);
  overflow: visible;
  pointer-events: none;
}
.dishwasher-composition .product-dishwasher {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: auto;
  bottom: auto;
  width: 100%;
  height: 100%;
  transform: none;
  translate: 0 var(--dishwasher-stance-drop, 0px);
}
.dishwasher-composition .dishwasher-cat-stage {
  --dishwasher-cat-width: min(18.9vw, 342px);
  --dishwasher-cat-extra-drop: min(1.394vh, 13.94px);
  display: block;
  position: absolute;
  z-index: 1;
  left: auto;
  right: calc(100% - (100% - var(--dishwasher-fit-width)) / 2 - var(--dishwasher-fit-width) * .032715 + 12px + var(--dishwasher-cat-width));
  bottom: calc(12.65vh - var(--dishwasher-cat-extra-drop) - var(--dishwasher-composition-bottom));
  width: var(--dishwasher-cat-width);
  translate: 50% -3%;
}
@media (max-width: 1024px) and (min-width: 861px) {
  .dishwasher-composition {
    --dishwasher-frame-width: min(41.65vw, 552px);
    --dishwasher-frame-height: min(64.6vh, 646px);
    --dishwasher-drop: min(3.23vh, 32.3px);
    --dishwasher-lift: min(4.522vh, 45.22px);
    right: calc(9vw - min(2.0825vw, 27.6px));
  }
}
@media (max-width: 1024px) {
  .dishwasher-composition .dishwasher-cat-stage { display: none; }
}
@media (max-width: 860px) and (min-width: 641px) {
  .dishwasher-composition {
    --dishwasher-frame-width: min(67vw, 425px);
    --dishwasher-frame-height: 50vh;
    --dishwasher-drop: min(2.5vh, 25px);
    --dishwasher-lift: 3.5vh;
    left: 50%;
    right: auto;
    transform: translateX(calc(-50% + 5%));
  }
}
@media (max-width: 640px) {
  .dishwasher-composition {
    --dishwasher-frame-width: min(74vw, 380px);
    --dishwasher-frame-height: 46vh;
    --dishwasher-drop: min(2.3vh, 23px);
    --dishwasher-lift: 3.22vh;
    left: 50%;
    right: auto;
    transform: translateX(calc(-50% + 5%));
  }
}
@media (max-width: 420px) {
  .dishwasher-composition {
    --dishwasher-frame-height: 43vh;
    --dishwasher-drop: min(2.15vh, 21.5px);
    --dishwasher-lift: 3.01vh;
  }
}
@media (max-height: 740px) and (max-width: 860px) {
  .dishwasher-composition {
    --dishwasher-frame-height: 41vh;
    --dishwasher-drop: min(2.05vh, 20.5px);
    --dishwasher-lift: 2.87vh;
  }
}
@media (max-height: 700px) and (min-width: 861px) {
  .dishwasher-composition {
    --dishwasher-drop: min(3.23vh, 32.3px);
    --dishwasher-fit-width: min(100%, 53.85vh, 538px);
  }
}

/* v17.21 — the approved flat-wall linework follows the real image content.
   dishwasher-scene.js maps its counter and floor to the product's physical
   datums, including object-fit, transparent padding and the existing .97 scale.
   There is one isotropic scale: no cover crop and no independent vh estimates.
   The cabinet clearance stays 12.5% of the visible appliance width. */
.dishwasher-kitchen {
  inset: auto;
  left: var(--dishwasher-scene-left, 0px);
  top: var(--dishwasher-scene-top, 0px);
  width: var(--dishwasher-scene-width, 0px);
  height: var(--dishwasher-scene-height, 0px);
  background-image: var(--dishwasher-scene-asset,none);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  mix-blend-mode: multiply;
  opacity: .38;
  filter: grayscale(.72);
  mask-image: linear-gradient(to right, transparent, #000 7%, #000 96%, transparent),
    linear-gradient(to bottom, transparent, #000 12%, #000 82%, transparent);
  mask-composite: intersect;
  transition: opacity .8s ease, filter .8s ease;
}
html[data-finish="titanium"] .dishwasher-kitchen { opacity: .38; filter: grayscale(.72); }
html[data-finish="white"] .dishwasher-kitchen { opacity: .52; filter: grayscale(.16); }
/* Native kitchen coordinates: x=618.64, width=267.52, contact y=306.
   Nested percentages preserve size/placement relative to the counter at every
   resolution; this layer has no separate viewport-based sizing or offsets. */
.dishwasher-counter-decor {
  position: absolute;
  left: 37%;
  bottom: 67.4814%;
  width: 16%;
  height: 13.9207%;
  object-fit: contain;
  object-position: center bottom;
  filter: grayscale(1) saturate(0) contrast(.78);
  display: block;
  pointer-events: none;
}
html[data-finish="white"] .dishwasher-counter-decor {
  filter: grayscale(1) saturate(0) contrast(.72);
}
.dishwasher-product-light {
  inset: auto;
  left: var(--dishwasher-light-left, 0px);
  top: var(--dishwasher-light-top, 0px);
  width: var(--dishwasher-light-width, 0px);
  height: var(--dishwasher-light-height, 0px);
  transform: none;
  translate: none;
}
.dishwasher-floor-light {
  background: radial-gradient(ellipse 30% 19% at var(--dishwasher-foot-x, 79%) var(--dishwasher-foot-y, 87%), rgba(255,251,237,.78) 0%, rgba(255,255,255,.34) 44%, transparent 100%),
    linear-gradient(124deg, transparent 45%, rgba(255,255,255,.16) 76%, transparent 100%);
}
html[data-finish="titanium"] .dishwasher-floor-light {
  background: radial-gradient(ellipse 31% 19% at var(--dishwasher-foot-x, 79%) var(--dishwasher-foot-y, 87%), rgba(255,255,255,.60) 0%, rgba(255,255,255,.23) 45%, transparent 100%),
    linear-gradient(124deg, transparent 45%, rgba(255,255,255,.10) 76%, transparent 100%);
}

/* v17.25 — more defined neutral sunlight from upper right, anchored to the appliance.
   The floor pool lands at the measured feet in both finishes and at every size.
   No product bitmap, scene placement, or animation is changed by this layer. */
.dishwasher-scene-sunlight {
  --sunlight-strength: .84;
  --sunlight-floor: .64;
  position: absolute;
  z-index: 1;
  left: var(--dishwasher-sun-left, 0px);
  top: var(--dishwasher-sun-top, 0px);
  width: var(--dishwasher-sun-width, 0px);
  height: var(--dishwasher-sun-height, 0px);
  pointer-events: none;
}
.dishwasher-scene-sunlight::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 64% 48% at 100% 0%, rgba(255,255,255,.64) 0%, rgba(255,255,255,.22) 40%, transparent 78%),
    linear-gradient(125deg, transparent 35%, rgba(255,255,255,.04) 40%, rgba(255,255,255,.26) 44%, rgba(255,255,255,.50) 48%, rgba(255,255,255,.62) 54%, rgba(255,255,255,.38) 60%, rgba(255,255,255,.08) 65%, transparent 70%);
  mask-image: radial-gradient(ellipse 78% 88% at 70% 32%, #000 34%, rgba(0,0,0,.95) 58%, transparent 88%);
  filter: blur(3px);
  opacity: var(--sunlight-strength);
  transition: opacity .8s ease;
}
.dishwasher-scene-sunlight::after {
  content: "";
  position: absolute;
  /* (0.5 + 0.56) / 1.95 and (1 + 0.4) / 1.65 */
  left: 54.358974%;
  top: 84.848485%;
  width: 76%;
  height: 15%;
  transform: translate(-50%, -50%) rotate(-5deg);
  background: radial-gradient(ellipse closest-side, rgba(255,255,255,.82) 0%, rgba(255,255,255,.55) 42%, rgba(255,255,255,.22) 60%, rgba(143,143,143,.055) 72%, transparent 100%);
  opacity: var(--sunlight-floor);
  transition: opacity .8s ease;
}
html[data-finish="white"] .dishwasher-scene-sunlight {
  --sunlight-strength: .80;
  --sunlight-floor: .78;
}

/* v17.41 — Slide 7 uses the same one-viewport contract as every primary
   slide. The Neshan image stays a background layer at every breakpoint, so
   it cannot add height to the slide or push the footer into another screen. */
#slide-7.contact-complete {
  --contact-hero-size:clamp(2.55rem,4.55vw,5.15rem);
  display:block;
  width:100%;
  height:100svh;
  min-height:100svh;
  padding:calc(var(--header-height) + 24px) max(var(--pagination-gutter),clamp(24px,5vw,84px)) 88px clamp(24px,5vw,84px);
  overflow:hidden;
}
#slide-7 .contact-layout {
  position:relative;
  z-index:2;
  height:calc(100svh - var(--header-height) - 112px);
  min-height:0;
  display:grid;
  grid-template-columns:minmax(390px,.92fr) minmax(470px,1.08fr);
  gap:clamp(34px,5vw,84px);
  align-items:center;
}
#slide-7 .contact-copy-complete {
  position:relative;
  z-index:4;
  grid-column:1;
  width:min(100%,650px);
  min-width:0;
  max-width:650px;
  pointer-events:auto;
}
#slide-7 .contact-brand-mark {
  display:block;
  width:clamp(168px,13vw,232px);
  height:auto;
  max-height:none;
  margin:0 auto clamp(16px,1.5vw,22px);
  object-fit:contain;
  filter:none;
}
#slide-7 .main-phone,
#slide-7 .contact-copy-complete h2 {
  display:block;
  width:max-content;
  max-width:100%;
  margin-inline:auto;
  color:var(--ink);
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:var(--contact-hero-size);
  font-weight:900;
  line-height:1.04;
  letter-spacing:-.045em;
  text-align:center;
  white-space:nowrap;
  text-wrap:nowrap;
}
#slide-7 .main-phone {
  direction:ltr;
  margin-top:0;
  margin-bottom:clamp(12px,1.25vw,19px);
}
#slide-7 .contact-copy-complete h2 {
  margin-top:0;
  margin-bottom:clamp(17px,1.6vw,25px);
}
#slide-7 .map-stage {
  position:absolute;
  z-index:1;
  left:calc(-1 * clamp(84px,9vw,152px));
  top:calc(-1 * (var(--header-height) + 24px));
  bottom:-88px;
  width:min(61vw,1180px);
  height:auto;
  margin:0;
  overflow:hidden;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(to right,#000 0,#000 67%,rgba(0,0,0,.84) 82%,transparent 100%);
  mask-image:linear-gradient(to right,#000 0,#000 67%,rgba(0,0,0,.84) 82%,transparent 100%);
}
#slide-7 .map-frame {
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  border:0;
  object-fit:cover;
  object-position:center;
  opacity:0;
  transform:none;
  filter:grayscale(.82) saturate(.34) contrast(.90) brightness(.73);
  transition:opacity .75s ease;
  pointer-events:none;
}
#slide-7 .map-frame.active { opacity:.72; transform:none; }
#slide-7 .map-wash {
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.05),transparent 54%),var(--bg-a);
  opacity:.22;
  mix-blend-mode:color;
  pointer-events:none;
}
html[data-finish="white"] #slide-7 .map-frame {
  filter:grayscale(.30) saturate(.62) contrast(.92) brightness(1.02);
}
html[data-finish="white"] #slide-7 .map-frame.active { opacity:.78; }
html[data-finish="white"] #slide-7 .map-wash {
  background:linear-gradient(90deg,rgba(255,255,255,.16),transparent 58%),#f5f5f3;
  opacity:.13;
}

@media(max-width:1100px) and (min-width:861px) {
  #slide-7.contact-complete {
    --contact-hero-size:clamp(2.2rem,4.8vw,3.4rem);
    padding-right:max(var(--pagination-gutter),48px);
    padding-left:38px;
  }
  #slide-7 .contact-layout {
    grid-template-columns:minmax(350px,.92fr) minmax(340px,1.08fr);
    gap:28px;
  }
  #slide-7 .map-stage { left:-84px; width:59vw; }
}

@media(max-width:860px) {
  #slide-7.contact-complete {
    --contact-hero-size:clamp(1.9rem,8.4vw,3.05rem);
    height:100svh;
    min-height:100svh;
    padding:calc(var(--header-height) + 10px) 22px 80px;
    overflow:hidden;
  }
  #slide-7 .contact-layout {
    height:calc(100svh - var(--header-height) - 90px);
    min-height:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:stretch;
    gap:0;
  }
  #slide-7 .contact-copy-complete {
    order:1;
    width:min(100%,620px);
    margin-inline:auto;
    align-self:center;
  }
  #slide-7 .contact-brand-mark {
    width:clamp(154px,40vw,210px);
    max-height:none;
    margin-bottom:clamp(11px,2.6vw,16px);
  }
  #slide-7 .main-phone,
  #slide-7 .contact-copy-complete h2 {
    font-size:var(--contact-hero-size);
    line-height:1.04;
    letter-spacing:-.04em;
    white-space:nowrap;
    text-wrap:nowrap;
  }
  #slide-7 .main-phone { margin-bottom:clamp(9px,2.5vw,14px); }
  #slide-7 .contact-copy-complete h2 { margin-bottom:clamp(13px,3vw,19px); }
  #slide-7 .location-tabs { margin-bottom:12px; }
  #slide-7 .location-content,
  #slide-7 .location-panel,
  #slide-7 .location-panel.active { height:164px; min-height:164px; }
  #slide-7 .contact-copy-complete address {
    min-height:3.7em;
    font-size:clamp(.78rem,3.1vw,.94rem);
    line-height:1.72;
  }
  #slide-7 .contact-details {
    gap:8px;
    margin-top:13px;
    padding-top:12px;
  }
  #slide-7 .contact-details p { gap:2px; }
  #slide-7 .map-stage {
    position:absolute;
    z-index:-1;
    inset:calc(-1 * (var(--header-height) + 10px)) -22px -80px;
    width:auto;
    height:auto;
    margin:0;
    opacity:.36;
    -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.62),#000 24%,#000 82%,rgba(0,0,0,.60));
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.62),#000 24%,#000 82%,rgba(0,0,0,.60));
  }
  #slide-7 .map-frame { object-position:center; }
  #slide-7 .map-wash {
    opacity:.64;
    background:linear-gradient(90deg,var(--bg-a),color-mix(in srgb,var(--bg-a) 90%,transparent),var(--bg-a));
    mix-blend-mode:normal;
  }
  html[data-finish="white"] #slide-7 .map-wash {
    opacity:.72;
    background:linear-gradient(90deg,rgba(249,249,248,.96),rgba(249,249,248,.79),rgba(249,249,248,.96));
  }
}

@media(max-width:420px) {
  #slide-7.contact-complete {
    --contact-hero-size:clamp(1.78rem,8.1vw,2.12rem);
    padding-inline:17px;
  }
  #slide-7 .contact-brand-mark { width:clamp(146px,42vw,184px); }
  #slide-7 .location-content,
  #slide-7 .location-panel,
  #slide-7 .location-panel.active { height:172px; min-height:172px; }
  #slide-7 .map-stage { right:-17px; left:-17px; }
}

@media(max-height:720px) {
  #slide-7.contact-complete { --contact-hero-size:clamp(1.7rem,6.4vh,2.75rem); }
  #slide-7 .contact-brand-mark { width:clamp(140px,22vh,188px); margin-bottom:9px; }
  #slide-7 .main-phone { margin-bottom:8px; }
  #slide-7 .contact-copy-complete h2 { margin-bottom:10px; }
  #slide-7 .location-tabs { margin-bottom:8px; }
  #slide-7 .contact-details { margin-top:9px; padding-top:9px; }
}

/* v17.42 — The full logo, phone and headline form one right-aligned lockup.
   Phone and headline deliberately consume the exact same responsive type token. */
#slide-7 .contact-brand-mark,
#slide-7 .main-phone,
#slide-7 .contact-copy-complete h2 {
  margin-right:0;
  margin-left:auto;
  text-align:right;
}
#slide-7 .main-phone,
#slide-7 .contact-copy-complete h2 {
  font-size:var(--contact-hero-size);
}
@media(max-width:860px) {
  #slide-7.contact-complete { --contact-hero-size:clamp(1.65rem,7.5vw,2.85rem); }
}
@media(max-width:420px) {
  #slide-7.contact-complete { --contact-hero-size:clamp(1.5rem,7.5vw,1.98rem); }
}

/* v17.43 — Neshan's Web key renders a visually static map: all gestures are
   disabled in JS and the map remains a non-interactive art-directed layer. */
#slide-7 .map-stage {
  background:color-mix(in srgb,var(--bg-a) 92%,#fff);
}
#slide-7 .map-frame {
  overflow:hidden;
  background:transparent;
}
#slide-7 .map-frame .leaflet-map-pane,
#slide-7 .map-frame .leaflet-control-container {
  pointer-events:none;
}
#slide-7 .map-frame .leaflet-control-container { display:none; }
#slide-7 .map-frame .leaflet-container,
#slide-7 .map-frame.leaflet-container {
  width:100%;
  height:100%;
  background:transparent;
  cursor:default;
}
.sepehr-map-dot {
  display:block;
  width:16px;
  height:16px;
  border:3px solid rgba(255,255,255,.96);
  border-radius:50%;
  background:#009edf;
  box-shadow:0 0 0 1px rgba(30,30,30,.20),0 7px 20px rgba(30,30,30,.24);
}

/* v17.44 — the phone remains the contact hero; its headline is exactly 20%
   smaller. The map can never intercept the fixed header or finish controls. */
#slide-7.contact-complete {
  --contact-headline-size:clamp(2.04rem,3.64vw,4.12rem);
}
#slide-7 .contact-copy-complete h2 {
  font-size:var(--contact-headline-size);
}
#slide-7 .map-stage,
#slide-7 .map-stage * {
  pointer-events:none!important;
}
.site-header { z-index:1000; }
.finish-switch,
.finish-switch button {
  pointer-events:auto!important;
}
.finish-switch { z-index:2; }
@media(max-width:1100px) and (min-width:861px) {
  #slide-7.contact-complete { --contact-headline-size:clamp(1.76rem,3.84vw,2.72rem); }
}
@media(max-width:860px) {
  #slide-7.contact-complete { --contact-headline-size:clamp(1.32rem,6vw,2.28rem); }
}
@media(max-width:420px) {
  #slide-7.contact-complete { --contact-headline-size:clamp(1.2rem,6vw,1.584rem); }
}
@media(max-height:720px) {
  #slide-7.contact-complete { --contact-headline-size:clamp(1.36rem,5.12vh,2.2rem); }
}

/* v17.46 — The footer is a continuation of the contact scene, not another
   snap slide. Its first edge begins where the former 88px footer lived, so the
   map/contact composition keeps the same first-viewport geometry. */
#slide-7.contact-complete {
  height:auto;
  min-height:100svh;
  padding-bottom:0;
  overflow:hidden;
}
#slide-7 > .site-footer {
  --footer-surface:color-mix(in srgb,var(--bg-a) 82%,var(--bg-b));
  position:relative;
  z-index:8;
  inset:auto;
  width:auto;
  height:auto;
  margin:0;
  padding:clamp(32px,4.2vw,68px) 0 clamp(28px,3.7vw,58px);
  display:block;
  border-top:1px solid var(--line);
  background:
    radial-gradient(ellipse 48% 72% at 85% 16%,rgba(255,255,255,.12),transparent 74%),
    linear-gradient(180deg,var(--footer-surface),color-mix(in srgb,var(--bg-a) 94%,var(--bg-b)));
  color:var(--ink);
  font-size:1rem;
}
#slide-7 > .site-footer a { margin-right:0; }
#slide-7 > .site-footer p { display:block; max-width:none; }
html[data-finish="white"] #slide-7 > .site-footer {
  --footer-surface:color-mix(in srgb,#fff 92%,#f1f1ef);
  background:
    radial-gradient(ellipse 45% 76% at 86% 18%,rgba(0,158,223,.035),transparent 76%),
    linear-gradient(180deg,var(--footer-surface),#f8f8f6);
}
#slide-7 .footer-shell {
  width:100%;
  max-width:1480px;
  margin-inline:auto;
}
#slide-7 .representation-card {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:clamp(26px,4vw,72px);
  align-items:end;
  min-height:clamp(280px,30vw,430px);
  padding:clamp(34px,5.2vw,82px);
  border:1px solid color-mix(in srgb,var(--ink) 20%,transparent);
  border-radius:clamp(24px,2.8vw,42px);
  background:color-mix(in srgb,var(--header-surface) 36%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 24px 70px rgba(30,30,30,.055);
}
html[data-finish="white"] #slide-7 .representation-card {
  border-color:rgba(30,30,30,.14);
  background:rgba(255,255,255,.48);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 24px 70px rgba(30,30,30,.045);
}
#slide-7 .representation-copy {
  align-self:center;
  min-width:0;
}
#slide-7 .representation-copy h2 {
  max-width:100%;
  margin:0;
  color:var(--ink);
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:clamp(2.6rem,5.15vw,6rem);
  font-weight:900;
  line-height:1.08;
  letter-spacing:-.052em;
  text-wrap:balance;
}
#slide-7 .representation-copy p {
  max-width:850px;
  margin:clamp(16px,1.8vw,26px) 0 0;
  color:var(--muted);
  font-size:clamp(.96rem,1.12vw,1.2rem);
  font-weight:400;
  line-height:1.95;
  text-wrap:pretty;
}
#slide-7 .representation-link {
  min-width:clamp(210px,16vw,260px);
  min-height:58px;
  padding:13px 21px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);
  border-radius:999px;
  background:color-mix(in srgb,var(--header-surface) 50%,transparent);
  color:var(--ink);
  font-size:clamp(.86rem,.95vw,1rem);
  font-weight:700;
  line-height:1.3;
  white-space:nowrap;
  transition:transform .42s var(--ease),background-color .35s ease,border-color .35s ease;
}
#slide-7 .representation-link b {
  font-family:Arial,sans-serif;
  font-size:1.18em;
  font-weight:400;
  transition:transform .42s var(--ease);
}
#slide-7 .representation-link:hover,
#slide-7 .representation-link:focus-visible {
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--ink) 38%,transparent);
  background:var(--nav-hover);
}
#slide-7 .representation-link:hover b,
#slide-7 .representation-link:focus-visible b { transform:translateX(-4px); }
#slide-7 .representation-link:focus-visible,
#slide-7 .footer-directory a:focus-visible,
#slide-7 .footer-meta a:focus-visible {
  outline:2px solid color-mix(in srgb,var(--ink) 58%,transparent);
  outline-offset:4px;
}
#slide-7 .footer-directory {
  display:grid;
  grid-template-columns:minmax(0,1fr) clamp(132px,13vw,188px);
  gap:clamp(34px,6vw,98px);
  align-items:stretch;
  padding:clamp(42px,5.4vw,82px) clamp(4px,1vw,16px) clamp(30px,3.8vw,58px);
}
#slide-7 .footer-navigation {
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:clamp(36px,5vw,88px);
}
#slide-7 .footer-product-links h3,
#slide-7 .footer-social-links h3 {
  margin:0 0 20px;
  color:var(--ink);
  font-size:clamp(.82rem,.9vw,.98rem);
  font-weight:700;
}
#slide-7 .footer-link-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(110px,1fr));
  gap:13px clamp(22px,3vw,52px);
}
#slide-7 .footer-link-grid a {
  width:max-content;
  max-width:100%;
  color:var(--muted);
  font-size:clamp(.8rem,.84vw,.94rem);
  font-weight:400;
  line-height:1.7;
  white-space:nowrap;
  transition:color .3s ease,transform .35s var(--ease);
}
#slide-7 .footer-link-grid a:hover,
#slide-7 .footer-link-grid a:focus-visible {
  color:var(--ink);
  transform:translateX(-3px);
}
#slide-7 .footer-social-links > div {
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:10px 12px;
  direction:rtl;
}
#slide-7 .footer-social-links .footer-social-link {
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:7px 11px 7px 14px;
  border:1px solid var(--line);
  border-radius:999px;
  background:color-mix(in srgb,var(--header-surface) 28%,transparent);
  color:var(--muted);
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:clamp(.72rem,.75vw,.84rem);
  font-weight:600;
  line-height:1.4;
  transition:color .3s ease,transform .35s var(--ease),border-color .3s ease,background-color .3s ease;
}
#slide-7 .footer-social-links .footer-social-link:hover,
#slide-7 .footer-social-links .footer-social-link:focus-visible {
  color:var(--ink);
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--ink) 34%,transparent);
  background:var(--nav-hover);
}
#slide-7 .footer-social-icon {
  width:22px;
  height:22px;
  flex:none;
  display:block;
  background:currentColor;
}
#slide-7 .footer-social-icon.social-instagram {
  -webkit-mask:url("assets/social-instagram.svg") center/contain no-repeat;
  mask:url("assets/social-instagram.svg") center/contain no-repeat;
}
#slide-7 .footer-social-icon.social-aparat {
  -webkit-mask:url("assets/social-aparat.svg") center/contain no-repeat;
  mask:url("assets/social-aparat.svg") center/contain no-repeat;
}
#slide-7 .footer-social-name { white-space:nowrap; }
#slide-7 .footer-trust {
  min-height:100%;
  padding:20px 14px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid var(--line);
  border-radius:26px;
  background:color-mix(in srgb,var(--bg-a) 72%,var(--bg-b));
  color:var(--ink);
  text-align:center;
  transition:transform .42s var(--ease),border-color .35s ease,background-color .35s ease;
}
#slide-7 .footer-trust:hover,
#slide-7 .footer-trust:focus-visible {
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--ink) 34%,transparent);
  background:var(--nav-hover);
}
#slide-7 .enamad-mark {
  width:clamp(62px,6vw,88px);
  aspect-ratio:1;
  display:block;
  background:currentColor;
  -webkit-mask:url("assets/enamad.svg") center/contain no-repeat;
  mask:url("assets/enamad.svg") center/contain no-repeat;
  opacity:.82;
}
#slide-7 .footer-trust strong {
  font-size:clamp(.72rem,.76vw,.84rem);
  font-weight:700;
  line-height:1.55;
}
#slide-7 .footer-trust small {
  color:var(--muted);
  font-size:.66rem;
  line-height:1.5;
}
#slide-7 .footer-meta {
  min-height:64px;
  padding:20px 4px 0;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:clamp(.68rem,.72vw,.8rem);
}
#slide-7 .footer-meta p { margin:0; }
#slide-7 .footer-meta a {
  color:inherit;
  transition:color .3s ease;
}
#slide-7 .footer-meta a:hover,
#slide-7 .footer-meta a:focus-visible { color:var(--ink); }

@media(max-width:1180px) {
  #slide-7 .representation-card {
    grid-template-columns:1fr;
    align-items:start;
    min-height:0;
  }
  #slide-7 .representation-link { justify-self:start; }
  #slide-7 .footer-navigation { grid-template-columns:1fr; gap:34px; }
  #slide-7 .footer-social-links > div { flex-direction:row; flex-wrap:wrap; gap:12px 24px; }
}
@media(max-width:860px) {
  #slide-7 > .site-footer { padding-top:28px; }
  #slide-7 .representation-card {
    gap:28px;
    padding:clamp(28px,7vw,46px);
    border-radius:28px;
  }
  #slide-7 .representation-copy h2 { font-size:clamp(2.1rem,9vw,3.7rem); }
  #slide-7 .representation-copy p { font-size:clamp(.9rem,3.4vw,1rem); }
  #slide-7 .footer-directory {
    grid-template-columns:minmax(0,1fr) 132px;
    gap:28px;
    padding-top:44px;
  }
  #slide-7 .footer-link-grid { grid-template-columns:repeat(2,minmax(120px,1fr)); }
}
@media(max-width:580px) {
  #slide-7 .representation-link {
    width:100%;
    min-width:0;
  }
  #slide-7 .footer-directory {
    grid-template-columns:1fr;
    padding-inline:2px;
  }
  #slide-7 .footer-trust {
    width:min(100%,210px);
    min-height:184px;
    justify-self:start;
  }
  #slide-7 .footer-meta {
    align-items:flex-start;
    flex-direction:column;
    gap:12px;
  }
}
@media(max-width:390px) {
  #slide-7 .footer-link-grid { grid-template-columns:1fr; }
}

/* v17.49 — Footer continues the contact slide on the slide's own background.
   Shared project components are reused for the CTA and navigation hover. */
#slide-7 > .site-footer {
  margin-top:-1px;
  padding:clamp(18px,2.2vw,34px) 0 clamp(22px,2.8vw,42px);
  border-top:0;
  background:none;
}
html[data-finish="white"] #slide-7 > .site-footer {
  background:none;
}
#slide-7 .footer-shell {
  width:min(calc(100% - clamp(34px,7vw,120px)),1380px);
}
#slide-7 .representation-card {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:min(64%,883px);
  margin-inline:auto;
  gap:clamp(13px,1.44vw,21px);
  min-height:clamp(141px,13.44vw,192px);
  padding:clamp(19px,2.56vw,36px) clamp(16px,3.2vw,46px);
  border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);
  border-radius:clamp(16px,1.68vw,26px);
  background-color:#aaa9a5!important;
  background-image:none!important;
  opacity:1;
  box-shadow:inset 0 1px rgba(255,255,255,.18),0 18px 54px rgba(30,30,30,.045);
  text-align:center;
}
#slide-7 .representation-card::before,
#slide-7 .representation-card::after {
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
}
#slide-7 .representation-card::before {
  left:50%;
  top:50%;
  width:min(70%,820px);
  height:118%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(255,255,255,.24),rgba(255,255,255,.075) 52%,transparent 74%);
  filter:blur(26px);
  opacity:.76;
}
#slide-7 .representation-card::after {
  content:none;
}
html[data-finish="white"] #slide-7 .representation-card {
  border-color:rgba(30,30,30,.13);
  background-color:#f8f8f6!important;
  background-image:none!important;
  opacity:1;
  box-shadow:inset 0 1px rgba(255,255,255,.86),0 18px 54px rgba(30,30,30,.04);
}
html[data-finish="white"] #slide-7 .representation-card::before {
  background:radial-gradient(ellipse at 42% 46%,rgba(0,158,223,.20),transparent 70%),radial-gradient(ellipse at 65% 52%,rgba(237,50,55,.12),transparent 70%);
  filter:blur(30px);
  opacity:.62;
}
#slide-7 .representation-copy {
  width:min(100%,900px);
  align-self:auto;
  text-align:center;
}
#slide-7 .representation-copy h2 {
  max-width:none;
  margin:0;
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:var(--slide-type-1);
  font-weight:900;
  line-height:1.12;
  letter-spacing:-.035em;
  text-align:center;
}
#slide-7 .representation-copy p {
  max-width:800px;
  margin:clamp(8px,.9vw,13px) auto 0;
  font-family:"YekanBakhFaNum",Tahoma,Arial,sans-serif;
  font-size:var(--slide-type-3);
  font-weight:400;
  line-height:1.7;
  text-align:center;
}
#slide-7 .representation-copy p strong {
  color:var(--ink);
  font-weight:900;
}
#slide-7 .footer-directory {
  display:grid;
  grid-template-columns:minmax(0,1fr) clamp(88px,8vw,116px);
  gap:clamp(28px,4vw,62px);
  align-items:center;
  padding:clamp(28px,3.3vw,48px) clamp(2px,.7vw,10px) clamp(22px,2.4vw,34px);
}
#slide-7 .footer-product-links { min-width:0; }
#slide-7 .footer-product-links h3 {
  margin:0 0 15px;
  color:var(--ink);
  font-size:clamp(.77rem,.82vw,.9rem);
  font-weight:700;
}
#slide-7 .footer-product-list {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px clamp(18px,2.1vw,34px);
  margin:0;
  padding:0;
  list-style:none;
}
#slide-7 .footer-product-list li { margin:0; padding:0; }
#slide-7 .footer-product-list a {
  display:inline-block;
  padding:6px 9px;
  border-radius:4px;
  color:var(--muted);
  font-size:clamp(.76rem,.79vw,.88rem);
  font-weight:400;
  line-height:1.5;
  white-space:nowrap;
  transition:color .35s ease,background-color .35s ease;
}
#slide-7 .footer-product-list a::after {
  content:none;
}
#slide-7 .footer-product-list a:hover,
#slide-7 .footer-product-list a:focus-visible {
  color:var(--ink);
  background:var(--nav-hover);
  outline:none;
}
#slide-7 .footer-trust {
  min-height:0;
  padding:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--ink);
  box-shadow:none;
  text-align:center;
  transition:none;
}
#slide-7 .footer-trust:hover,
#slide-7 .footer-trust:focus-visible {
  transform:none;
  border-color:transparent;
  background:transparent;
  outline:none;
}
#slide-7 .footer-trust img {
  display:block;
  width:clamp(52px,4.5vw,68px);
  height:auto;
  aspect-ratio:1;
  object-fit:contain;
  opacity:.82;
}
#slide-7 .footer-trust strong {
  font-size:clamp(.64rem,.67vw,.74rem);
  font-weight:700;
  line-height:1.5;
}
#slide-7 .footer-meta {
  min-height:44px;
  padding:15px 2px 0;
  align-items:center;
  gap:22px;
  border-top:1px solid var(--line);
  font-size:clamp(.67rem,.7vw,.78rem);
}
#slide-7 .footer-copyright {
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
#slide-7 .footer-meta-socials {
  display:flex;
  align-items:center;
  gap:9px;
  flex:none;
}
#slide-7 .footer-meta-socials a {
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:inherit;
  opacity:.66;
  transition:opacity .25s ease,transform .3s var(--ease);
}
#slide-7 .footer-meta-socials a:hover,
#slide-7 .footer-meta-socials a:focus-visible {
  opacity:1;
  transform:translateY(-1px);
  outline:none;
}
#slide-7 .footer-meta-socials img {
  display:block;
  width:18px;
  height:18px;
  object-fit:contain;
}

@media(max-width:860px) {
  #slide-7 > .site-footer { padding-top:18px; }
  #slide-7 .footer-shell { width:min(calc(100% - 34px),680px); }
  #slide-7 .representation-card {
    width:100%;
    min-height:141px;
    gap:13px;
    padding:19px 14px;
    border-radius:20px;
  }
  #slide-7 .representation-copy h2 { font-size:var(--slide-type-1); }
  #slide-7 .representation-copy p { font-size:var(--slide-type-3); }
  #slide-7 .footer-directory {
    grid-template-columns:minmax(0,1fr) 82px;
    gap:22px;
    padding-top:28px;
  }
  #slide-7 .footer-product-list { gap:8px 20px; }
}
@media(max-width:580px) {
  #slide-7 .footer-directory {
    grid-template-columns:1fr;
    gap:24px;
  }
  #slide-7 .footer-trust {
    width:auto;
    min-height:0;
    justify-self:start;
    flex-direction:row;
    text-align:right;
  }
  #slide-7 .footer-trust img { width:50px; }
  #slide-7 .footer-meta {
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
  }
  #slide-7 .footer-copyright { flex-wrap:wrap; row-gap:8px; }
}
@media(max-width:390px) {
  #slide-7 .footer-product-list { gap:7px 15px; }
  #slide-7 .footer-product-list a { font-size:.72rem; }
}

/* v17.52 — keep the approved v17.50 map geometry and soften only its
   final lower edge. The representation surface stays fully opaque. */
#slide-7 .map-stage::after {
  content:"";
  position:absolute;
  z-index:6;
  right:0;
  bottom:0;
  left:0;
  height:10%;
  pointer-events:none;
  background:linear-gradient(to bottom,transparent 0%,color-mix(in srgb,var(--bg-a) 16%,transparent) 55%,var(--bg-a) 100%);
}
@media(max-width:860px) {
  #slide-7 .map-stage::after { height:8%; }
}

/* v17.55 — slide seven remains a regular snap target. Snap is released only
   after its top has actually reached the viewport, so its footer can continue. */
html.is-final-slide { scroll-snap-type:none!important; }

/* Exact 32 / 21 / 15 hierarchy for the representation message. */
#slide-7 .representation-copy h2 {
  font-size:32px;
  font-weight:900;
  line-height:1.2;
}
#slide-7 .representation-copy p {
  font-size:21px;
  font-weight:400;
  line-height:1.6;
}
#slide-7 .footer-request-button .uiverse-cta-label {
  font-size:15px;
  font-weight:700;
}

/* Supply the exact product-card CSS context while leaving its outer shell
   completely invisible. The visible CTA is therefore identical to slides 1–5. */
#slide-7 .footer-request-shell.commerce-card {
  position:relative;
  width:min(328px,calc(90vw - 2px));
  margin:0;
  align-self:center;
  border:0;
  background:transparent;
  box-shadow:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}

/* Equal lower-edge fade in both finishes. */
#slide-7 .map-stage::after {
  height:12%;
  background:linear-gradient(to bottom,rgba(135,134,129,0) 0%,rgba(135,134,129,.42) 58%,#878681 100%);
}
html[data-finish="white"] #slide-7 .map-stage::after {
  background:linear-gradient(to bottom,rgba(249,249,248,0) 0%,rgba(249,249,248,.42) 58%,#f9f9f8 100%);
}
@media(max-width:860px) {
  #slide-7 .representation-copy h2 { font-size:32px; }
  #slide-7 .representation-copy p { font-size:21px; }
  #slide-7 .footer-request-button .uiverse-cta-label { font-size:15px; }
  #slide-7 .map-stage::after { height:10%; }
}
