
:root{
  --black:#000;
  --black-soft:#090909;
  --surface:#111113;
  --surface-2:#171719;
  --white:#fff;
  --paper:#f5f5f7;
  --paper-2:#fbfbfd;
  --text:#1d1d1f;
  --muted:#6e6e73;
  --muted-light:#a1a1a6;
  --orange:#7baf3d;
  --orange-light:#a8d56f;
  --blue:#7baf3d;
  --line-dark:rgba(255,255,255,.13);
  --line:rgba(0,0,0,.12);
  --nav-height:88px;
  --max:1240px;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{
  min-width:320px;
  overflow-x:hidden;
  color:var(--text);
  background:var(--white);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{color:inherit}
img,svg{display:block;max-width:100%}
::selection{color:#1d1d1f;background:#f4e2b6}
.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Header */
.site-header{
  position:fixed;
  z-index:1000;
  inset:0 0 auto;
  height:var(--nav-height);
  border-bottom:1px solid var(--line-dark);
  color:#f5f5f7;
  background:rgba(0,0,0,.82);
  backdrop-filter:saturate(180%) blur(22px);
  -webkit-backdrop-filter:saturate(180%) blur(22px);
  transition:background .25s ease,box-shadow .25s ease;
}
.site-header.scrolled{
  background:rgba(0,0,0,.92);
  box-shadow:0 12px 40px rgba(0,0,0,.16);
}
.nav-shell{
  display:flex;
  width:min(calc(100% - 48px),1380px);
  height:100%;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  margin-inline:auto;
}
.site-logo{
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  gap:11px;
  font-size:19px;
  font-weight:700;
  letter-spacing:.12em;
}
.logo-symbol{
  position:relative;
  width:34px;
  height:34px;
  border:2px solid currentColor;
  border-radius:50%;
}
.logo-symbol::before{
  position:absolute;
  inset:7px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:50%;
  content:"";
}
.logo-symbol::after{
  position:absolute;
  top:50%;
  right:-6px;
  width:18px;
  height:2px;
  border-radius:2px;
  background:var(--orange);
  box-shadow:0 0 12px rgba(255,159,10,.85);
  transform:translateY(-50%);
  content:"";
}
.main-nav{height:100%}
.nav-list{
  display:flex;
  height:100%;
  align-items:center;
  gap:clamp(22px,2.45vw,43px);
  list-style:none;
}
.nav-list a{
  position:relative;
  display:flex;
  height:100%;
  align-items:center;
  color:#e5e5e7;
  font-size:15px;
  font-weight:650;
  letter-spacing:-.01em;
  white-space:nowrap;
  transition:color .22s ease;
}
.nav-list a::after{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:2px;
  background:var(--orange);
  opacity:0;
  transform:scaleX(.35);
  content:"";
  transition:opacity .22s ease,transform .22s ease;
}
.nav-list a:hover,.nav-list a[aria-current="page"]{color:#fff}
.nav-list a:hover::after,.nav-list a[aria-current="page"]::after{opacity:1;transform:scaleX(1)}
.header-cta{
  display:inline-flex;
  min-height:40px;
  flex:0 0 auto;
  align-items:center;
  gap:8px;
  padding:0 18px;
  border-radius:999px;
  color:#17110a;
  background:var(--orange);
  font-size:13px;
  font-weight:700;
  transition:background .22s ease,transform .22s ease;
}
.header-cta:hover{background:var(--orange-light);transform:translateY(-2px)}
.header-cta svg{width:15px}
.menu-toggle{
  display:none;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line-dark);
  border-radius:50%;
  background:transparent;
  cursor:pointer;
}
.menu-toggle span,.menu-toggle span::before{
  display:block;
  width:19px;
  height:1px;
  background:currentColor;
  transition:transform .25s ease;
}
.menu-toggle span{position:relative;transform:translateY(-3px)}
.menu-toggle span::before{position:absolute;left:0;content:"";transform:translateY(6px)}
.menu-toggle.active span{transform:rotate(45deg)}
.menu-toggle.active span::before{transform:rotate(-90deg)}
.mobile-nav{
  position:fixed;
  z-index:990;
  inset:var(--nav-height) 0 0;
  display:flex;
  flex-direction:column;
  padding:36px 28px 50px;
  color:#fff;
  background:rgba(0,0,0,.985);
  opacity:0;
  visibility:hidden;
  transform:translateY(-14px);
  transition:opacity .25s ease,visibility .25s ease,transform .25s ease;
}
.mobile-nav.open{opacity:1;visibility:visible;transform:none}
.mobile-nav a{
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,.09);
  font-size:clamp(26px,8vw,38px);
  font-weight:700;
  letter-spacing:-.045em;
}
.mobile-nav a[aria-current="page"]{color:var(--orange-light)}
.mobile-nav .mobile-contact{
  display:inline-flex;
  width:max-content;
  margin-top:25px;
  padding:11px 18px;
  border:0;
  border-radius:999px;
  color:#17110a;
  background:var(--orange);
  font-size:17px;
  font-weight:700;
}

/* Shared type & buttons */
.eyebrow{
  color:var(--orange);
  font-size:15px;
  font-weight:700;
  letter-spacing:.02em;
}
.display-title{
  font-size:clamp(53px,8.5vw,112px);
  font-weight:750;
  letter-spacing:-.07em;
  line-height:.88;
}
.section-title{
  font-size:clamp(43px,6.2vw,76px);
  font-weight:730;
  letter-spacing:-.06em;
  line-height:.98;
}
.body-large{
  color:var(--muted);
  font-size:clamp(19px,2vw,25px);
  font-weight:500;
  letter-spacing:-.025em;
  line-height:1.4;
}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px}
.button{
  display:inline-flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 23px;
  border:1px solid transparent;
  border-radius:999px;
  font-size:16px;
  font-weight:650;
  transition:transform .25s ease,background .25s ease,border-color .25s ease,color .25s ease;
}
.button:hover{transform:translateY(-2px)}
.button-primary{color:#17110a;background:var(--orange)}
.button-primary:hover{background:var(--orange-light)}
.button-dark{color:#fff;background:#1d1d1f}
.button-dark:hover{background:#343438}
.button-outline{border-color:rgba(255,255,255,.28);color:#fff}
.button-outline:hover{border-color:var(--orange);color:var(--orange-light)}
.button-light-outline{border-color:rgba(0,0,0,.18);color:var(--text)}
.button-light-outline:hover{border-color:#1d1d1f}
.text-link{color:#5d8a2b;font-size:18px}
.text-link::after{margin-left:.28em;content:"›";font-size:1.2em}
.text-link:hover{text-decoration:underline}

/* Homepage */
.home-hero{
  position:relative;
  min-height:980px;
  overflow:hidden;
  padding:calc(var(--nav-height) + 88px) 24px 0;
  color:#f5f5f7;
  background:
    radial-gradient(circle at 50% 56%,rgba(255,159,10,.17),transparent 18%),
    radial-gradient(circle at 50% 77%,rgba(255,117,0,.11),transparent 34%),
    #000;
  text-align:center;
  isolation:isolate;
}
.home-hero-copy{position:relative;z-index:4;width:min(100%,1060px);margin-inline:auto}
.home-hero .eyebrow{font-size:clamp(18px,1.6vw,22px)}
.home-hero h1{margin-top:12px}
.gradient-text{
  display:block;
  color:transparent;
  background:linear-gradient(90deg,#fff 8%,#eaf4df 43%,#7baf3d 72%,#f4f8f0 100%);
  -webkit-background-clip:text;
  background-clip:text;
}
.home-hero-sub{
  max-width:780px;
  margin:27px auto 0;
  color:#d2d2d7;
  font-size:clamp(21px,2.4vw,31px);
  letter-spacing:-.03em;
  line-height:1.18;
}
.home-hero .actions{justify-content:center}
.hero-light{
  position:absolute;
  z-index:1;
  right:50%;
  bottom:-64px;
  width:min(1080px,108vw);
  aspect-ratio:1.45;
  transform:translate3d(50%,var(--hero-y,0),0) scale(var(--hero-scale,1));
  will-change:transform;
  pointer-events:none;
}
.hero-light svg{width:100%;height:100%}
.hero-orbit{
  position:absolute;
  top:17%;
  left:50%;
  width:67%;
  aspect-ratio:1;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  transform:translateX(-50%) rotate(-12deg);
}
.hero-orbit::before{
  position:absolute;
  top:11%;
  left:13%;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 18px rgba(255,255,255,.9);
  content:"";
}
.hero-floor{
  position:absolute;
  z-index:2;
  right:0;
  bottom:0;
  left:0;
  height:150px;
  background:linear-gradient(to bottom,transparent,#000 88%);
}
.home-intro{padding:145px 24px;background:#fff}
.home-intro-inner{width:min(100%,1010px);margin-inline:auto}
.home-intro h2{margin-top:16px}
.home-intro h2 span{color:#86868b}
.home-intro-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:76px;
  margin-top:56px;
}
.intro-points{display:grid;gap:20px}
.intro-point{padding-top:17px;border-top:1px solid #d2d2d7}
.intro-point strong{display:block;font-size:19px;letter-spacing:-.025em}
.intro-point span{display:block;margin-top:5px;color:var(--muted);font-size:14px;line-height:1.4}
.showcase-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  padding:0 12px 12px;
  background:#fff;
}
.showcase-card{
  position:relative;
  min-height:700px;
  overflow:hidden;
  padding:70px 28px 0;
  text-align:center;
  isolation:isolate;
}
.showcase-card.wide{grid-column:span 2;min-height:790px}
.showcase-card.dark{color:#f5f5f7;background:#000}
.showcase-card.light{color:var(--text);background:#f5f5f7}
.showcase-card.blue{color:#f5f5f7;background:linear-gradient(180deg,#06080d,#0b1423)}
.showcase-copy{position:relative;z-index:3;width:min(100%,850px);margin-inline:auto}
.showcase-card h3{font-size:clamp(42px,5vw,68px);font-weight:730;letter-spacing:-.06em;line-height:.98}
.showcase-card p{margin-top:14px;color:#a1a1a6;font-size:clamp(19px,2vw,26px);letter-spacing:-.03em}
.showcase-card.light p{color:#424245}
.showcase-card .actions{justify-content:center;margin-top:22px}
.showcase-art{
  position:absolute;
  right:50%;
  bottom:-2%;
  width:min(760px,94%);
  height:62%;
  transform:translateX(50%);
}
.showcase-card.wide .showcase-art{width:min(1200px,100%);height:58%}
.showcase-art svg{width:100%;height:100%}
.home-purpose{
  position:relative;
  display:grid;
  min-height:760px;
  place-items:center;
  overflow:hidden;
  padding:110px 24px;
  color:#f5f5f7;
  background:
    radial-gradient(circle at 50% 72%,rgba(255,159,10,.2),transparent 24%),
    #000;
  text-align:center;
}
.home-purpose-copy{position:relative;z-index:3;width:min(100%,950px)}
.home-purpose h2 span{display:block;color:transparent;background:linear-gradient(90deg,#fff,#a8d56f,#7baf3d);-webkit-background-clip:text;background-clip:text}
.home-purpose p{max-width:740px;margin:23px auto 0;color:#a1a1a6;font-size:clamp(20px,2.2vw,27px);letter-spacing:-.03em;line-height:1.32}
.purpose-ring{
  position:absolute;
  left:50%;
  bottom:-395px;
  width:min(850px,96vw);
  aspect-ratio:1;
  border:78px solid #171719;
  border-radius:50%;
  box-shadow:inset 0 0 0 6px #454549,inset 0 0 48px rgba(255,255,255,.12),0 -12px 70px rgba(255,159,10,.22);
  transform:translateX(-50%);
}
.purpose-ring::before{
  position:absolute;
  inset:45px;
  border-radius:50%;
  background:radial-gradient(circle,#fff 0%,#fff3d2 23%,#a8d56f 48%,#7baf3d 71%,#132015 100%);
  box-shadow:0 0 95px rgba(255,159,10,.43);
  content:"";
}
.product-lineup{padding:120px 0 125px;overflow:hidden;background:#f5f5f7}
.lineup-head{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.lineup-head p{max-width:720px;margin-top:18px}
.card-scroller{
  display:flex;
  gap:20px;
  overflow-x:auto;
  margin-top:50px;
  padding:0 max(24px,calc((100vw - var(--max))/2)) 28px;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.card-scroller::-webkit-scrollbar{display:none}
.product-tile{
  position:relative;
  flex:0 0 min(410px,calc(100vw - 48px));
  min-height:560px;
  overflow:hidden;
  border-radius:28px;
  box-shadow:0 8px 30px rgba(0,0,0,.08);
  scroll-snap-align:start;
  transition:transform .45s var(--ease),box-shadow .45s var(--ease);
}
.product-tile:hover{transform:scale(1.012);box-shadow:0 20px 50px rgba(0,0,0,.14)}
.product-tile.dark{color:#f5f5f7;background:#000}
.product-tile.light{background:#fff}
.product-tile.warm{background:linear-gradient(160deg,#f8f3ef,#dfd0c6)}
.product-tile.blue{color:#f5f5f7;background:linear-gradient(160deg,#08101d,#122b52)}
.tile-copy{position:relative;z-index:3;padding:33px 33px 0}
.tile-copy small{display:block;margin-bottom:8px;color:#5d8d30;font-size:14px;font-weight:700}
.product-tile.dark small,.product-tile.blue small{color:#a8d56f}
.tile-copy h3{font-size:clamp(31px,3.2vw,42px);font-weight:730;letter-spacing:-.05em;line-height:1}
.tile-copy p{max-width:310px;margin-top:10px;color:var(--muted);font-size:17px;line-height:1.32}
.product-tile.dark p,.product-tile.blue p{color:#a1a1a6}
.tile-copy .text-link{display:inline-flex;margin-top:17px;font-size:17px}
.tile-art{position:absolute;right:0;bottom:0;left:0;height:58%}
.tile-art svg{width:100%;height:100%}
.home-projects{padding:120px 0 12px;background:#fff}
.projects-head{width:min(calc(100% - 48px),var(--max));margin:0 auto 50px}
.projects-head p{max-width:700px;margin-top:18px}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 12px}
.project-card{
  position:relative;
  min-height:610px;
  overflow:hidden;
  color:#fff;
  background:#101113;
  isolation:isolate;
}
.project-card.wide{grid-column:span 2;min-height:690px}
.scene{position:absolute;inset:0;transition:transform .8s var(--ease)}
.project-card:hover .scene{transform:scale(1.035)}
.scene-hospitality{
  background:
    linear-gradient(to top,rgba(0,0,0,.92),transparent 47%),
    radial-gradient(circle at 50% 28%,rgba(255,197,102,.42),transparent 12%),
    linear-gradient(120deg,#0e0f12 0 18%,#2a241e 18% 34%,#17181b 34% 62%,#3c2c20 62% 74%,#111216 74%);
}
.scene-hospitality::before{
  position:absolute;top:12%;left:50%;width:160px;height:330px;border-radius:50%;
  background:linear-gradient(180deg,#2e251c,#0f1012);
  box-shadow:-260px 40px 0 -20px #17181a,260px 40px 0 -20px #17181a,0 0 90px rgba(255,170,40,.22);
  transform:translateX(-50%);content:"";
}
.scene-office{background:linear-gradient(to top,rgba(0,0,0,.88),transparent 50%),linear-gradient(135deg,#11151b,#202631 45%,#0d1015)}
.scene-office::before{
  position:absolute;top:13%;left:8%;width:84%;height:16px;border-radius:999px;background:#dff5ff;
  box-shadow:0 74px 0 #dff5ff,0 148px 0 #dff5ff,0 0 34px rgba(105,201,255,.55),0 74px 34px rgba(105,201,255,.4),0 148px 34px rgba(105,201,255,.3);
  content:"";transform:perspective(500px) rotateX(55deg);
}
.scene-outdoor{background:linear-gradient(to top,rgba(0,0,0,.92),transparent 55%),radial-gradient(circle at 78% 17%,rgba(141,189,255,.25),transparent 13%),linear-gradient(180deg,#06111f,#0a1827 45%,#111)}
.scene-outdoor::before{
  position:absolute;right:12%;bottom:18%;width:44px;height:240px;border-radius:18px;
  background:linear-gradient(90deg,#0b0c0d,#5a6067,#0a0b0c);
  box-shadow:-240px 80px 0 -8px #17191b,-450px 40px 0 -12px #17191b;content:"";
}
.scene-outdoor::after{
  position:absolute;right:calc(12% + 7px);bottom:42%;width:30px;height:86px;border-radius:9px;background:#ddefd0;
  box-shadow:-240px 80px 35px rgba(255,159,10,.25),-450px 40px 35px rgba(255,159,10,.2),0 0 42px rgba(255,159,10,.45);content:"";
}
.project-copy{position:absolute;z-index:3;right:32px;bottom:31px;left:32px}
.project-copy small{color:#a8d56f;font-size:14px;font-weight:700}
.project-copy h3{margin-top:8px;font-size:clamp(34px,4vw,54px);font-weight:730;letter-spacing:-.05em;line-height:1}
.project-copy p{max-width:540px;margin-top:10px;color:#d2d2d7;font-size:17px;line-height:1.4}
.home-closing{
  position:relative;
  display:grid;
  min-height:720px;
  place-items:center;
  overflow:hidden;
  padding:110px 24px;
  background:radial-gradient(circle at 50% 68%,rgba(255,159,10,.24),transparent 24%),linear-gradient(180deg,#fff,#f4eee9);
  text-align:center;
  isolation:isolate;
}
.home-closing-copy{position:relative;z-index:3;width:min(100%,870px)}
.home-closing p{max-width:660px;margin:20px auto 0}
.home-closing .actions{justify-content:center}
.closing-orb{
  position:absolute;right:50%;bottom:-250px;width:min(700px,88vw);aspect-ratio:1;border:46px solid #171719;border-radius:50%;
  box-shadow:inset 0 0 0 5px #4b4b4e,inset 0 0 32px rgba(255,255,255,.12),0 -10px 62px rgba(255,159,10,.2);
  transform:translateX(50%);
}
.closing-orb::after{
  position:absolute;inset:38px;border-radius:50%;background:radial-gradient(circle,#fff 0%,#fff4d4 25%,#a8d56f 50%,#7baf3d 72%,#132015 100%);
  box-shadow:0 0 90px rgba(255,159,10,.4);content:"";
}

/* Inner pages */
.page-hero{
  position:relative;
  display:grid;
  min-height:700px;
  place-items:center;
  overflow:hidden;
  padding:calc(var(--nav-height) + 70px) 24px 70px;
  color:#f5f5f7;
  background:#000;
  text-align:center;
  isolation:isolate;
}
.page-hero::before{
  position:absolute;
  inset:-20%;
  z-index:-2;
  background:radial-gradient(circle at 50% 50%,rgba(255,159,10,.18),transparent 26%);
  content:"";
}
.page-hero-content{width:min(100%,1020px)}
.page-hero .display-title{margin-top:15px}
.page-hero p{max-width:760px;margin:26px auto 0;color:#a1a1a6;font-size:clamp(20px,2.2vw,27px);letter-spacing:-.03em;line-height:1.32}
.page-hero .actions{justify-content:center}
.page-orb{
  position:absolute;
  right:50%;
  bottom:-470px;
  width:min(850px,100vw);
  aspect-ratio:1;
  border:76px solid #171719;
  border-radius:50%;
  box-shadow:inset 0 0 0 5px #4a4a4d,0 -8px 60px rgba(255,159,10,.2);
  transform:translateX(50%);
}
.page-orb::after{
  position:absolute;
  inset:42px;
  border-radius:50%;
  background:radial-gradient(circle,#fff,#ddefd0 40%,#7baf3d 70%,#132015);
  box-shadow:0 0 90px rgba(255,159,10,.4);
  content:"";
}
.content-section{padding:120px 24px;background:#fff}
.content-section.soft{background:#f5f5f7}
.content-section.dark{color:#f5f5f7;background:#000}
.section-head{width:min(100%,1000px);margin-inline:auto;text-align:center}
.section-head .section-title{margin-top:14px}
.section-head .body-large{max-width:760px;margin:22px auto 0}
.section-head.dark .body-large{color:#a1a1a6}
.split{
  display:grid;
  width:min(100%,var(--max));
  grid-template-columns:repeat(2,1fr);
  align-items:center;
  gap:72px;
  margin:64px auto 0;
}
.split.reverse .split-media{order:2}
.split-copy h3{font-size:clamp(35px,4.5vw,58px);font-weight:730;letter-spacing:-.055em;line-height:1}
.split-copy p{margin-top:20px;color:var(--muted);font-size:19px;line-height:1.5}
.dark .split-copy p{color:#a1a1a6}
.split-media{
  position:relative;
  min-height:500px;
  overflow:hidden;
  border-radius:28px;
  background:#111113;
  box-shadow:0 20px 60px rgba(0,0,0,.12);
}
.split-media.light{background:#fff}
.split-media .media-center{position:absolute;inset:10%;display:grid;place-items:center}
.split-media svg{width:100%;height:100%}
.value-grid,.tech-grid,.purpose-grid{
  display:grid;
  width:min(100%,var(--max));
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin:62px auto 0;
}
.value-card,.tech-card,.purpose-card{
  min-height:310px;
  padding:32px;
  border-radius:26px;
  background:#fff;
  box-shadow:0 8px 30px rgba(0,0,0,.06);
}
.dark .value-card,.dark .tech-card,.dark .purpose-card{background:#161617}
.card-number{color:var(--orange);font-size:14px;font-weight:700}
.card-icon{
  display:grid;
  width:52px;
  height:52px;
  place-items:center;
  margin-top:38px;
  border-radius:50%;
  color:#111;
  background:var(--paper);
}
.card-icon svg{width:23px}
.value-card h3,.tech-card h3,.purpose-card h3{margin-top:23px;font-size:22px;letter-spacing:-.03em}
.value-card p,.tech-card p,.purpose-card p{margin-top:10px;color:var(--muted);font-size:15px;line-height:1.45}
.dark .value-card p,.dark .tech-card p,.dark .purpose-card p{color:#a1a1a6}
.stats-band{padding:90px 24px;color:#f5f5f7;background:#000}
.stats-grid{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(3,1fr);margin-inline:auto}
.stat{padding:30px;border-right:1px solid var(--line-dark);text-align:center}
.stat:last-child{border-right:0}
.stat strong{display:block;color:transparent;background:linear-gradient(90deg,#fff,#ffca75);-webkit-background-clip:text;background-clip:text;font-size:clamp(52px,7vw,86px);font-weight:750;letter-spacing:-.07em;line-height:1}
.stat span{display:block;margin-top:10px;color:#a1a1a6;font-size:15px}

/* Products page */
.filters{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:9px;
  margin-top:38px;
}
.filter-btn{
  min-height:42px;
  padding:0 18px;
  border:1px solid #d2d2d7;
  border-radius:999px;
  background:#fff;
  cursor:pointer;
  font-size:14px;
  font-weight:650;
  transition:.22s ease;
}
.filter-btn:hover,.filter-btn.active{border-color:#1d1d1f;color:#fff;background:#1d1d1f}
.catalog-grid{
  display:grid;
  width:min(100%,var(--max));
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin:54px auto 0;
}
.catalog-card{
  overflow:hidden;
  border-radius:24px;
  background:#fff;
  box-shadow:0 8px 28px rgba(0,0,0,.07);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.catalog-card:hover{transform:translateY(-7px);box-shadow:0 20px 45px rgba(0,0,0,.13)}
.catalog-card.hidden{display:none}
.catalog-art{display:grid;height:330px;place-items:center;background:radial-gradient(circle at 50% 50%,rgba(255,159,10,.12),transparent 30%),#101113}
.catalog-art svg{width:78%;height:78%}
.catalog-info{padding:24px}
.catalog-info small{color:#5d8d30;font-size:13px;font-weight:700}
.catalog-info h3{margin-top:6px;font-size:23px;letter-spacing:-.035em}
.catalog-info p{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.45}

/* Projects page */
.projects-list{
  display:grid;
  width:min(100%,var(--max));
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin:60px auto 0;
}
.project-list-card{
  position:relative;
  min-height:540px;
  overflow:hidden;
  border-radius:28px;
  color:#fff;
  background:#111;
}
.project-list-card.large{grid-column:span 2;min-height:650px}
.project-list-card:hover .scene{transform:scale(1.04)}
.project-list-copy{position:absolute;z-index:3;right:30px;bottom:28px;left:30px}
.project-list-copy small{color:#a8d56f;font-weight:700}
.project-list-copy h3{margin-top:8px;font-size:clamp(34px,4vw,56px);font-weight:730;letter-spacing:-.05em}
.project-list-copy p{max-width:560px;margin-top:10px;color:#d2d2d7;font-size:16px;line-height:1.45}

/* Contact page */
.contact-layout{
  display:grid;
  width:min(100%,var(--max));
  grid-template-columns:.85fr 1.15fr;
  gap:62px;
  margin:65px auto 0;
}
.contact-details{display:grid;align-content:start;gap:14px}
.contact-card{
  padding:26px;
  border-radius:22px;
  background:#f5f5f7;
}
.contact-card small{color:var(--muted);font-size:13px;font-weight:650}
.contact-card strong,.contact-card a{display:block;margin-top:6px;font-size:20px;letter-spacing:-.025em}
.contact-form{
  display:grid;
  gap:16px;
  padding:34px;
  border-radius:28px;
  background:#f5f5f7;
}
.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.field{display:grid;gap:8px}
.field label{font-size:13px;font-weight:650}
.field input,.field textarea,.field select{
  width:100%;
  border:1px solid #d2d2d7;
  border-radius:14px;
  outline:none;
  background:#fff;
  padding:14px 15px;
  font-size:16px;
  transition:border .2s ease,box-shadow .2s ease;
}
.field textarea{min-height:150px;resize:vertical}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#6ea238;box-shadow:0 0 0 4px rgba(0,113,227,.12)}
.form-status{display:none;padding:13px 15px;border-radius:12px;color:#174d27;background:#e9f7ed;font-size:14px}
.form-status.show{display:block}

/* Footer */
.site-footer{color:#a1a1a6;background:#050505}
.footer-cta{
  padding:94px 24px;
  border-bottom:1px solid var(--line-dark);
  background:
    radial-gradient(circle at 82% 50%,rgba(255,159,10,.14),transparent 23%),
    #090909;
}
.footer-cta-inner{
  display:flex;
  width:min(100%,var(--max));
  align-items:end;
  justify-content:space-between;
  gap:50px;
  margin-inline:auto;
}
.footer-cta h2{max-width:740px;color:#f5f5f7;font-size:clamp(40px,5.7vw,70px);font-weight:730;letter-spacing:-.06em;line-height:.98}
.footer-cta p{max-width:530px;margin-top:18px;font-size:17px;line-height:1.5}
.footer-main{
  display:grid;
  width:min(calc(100% - 48px),var(--max));
  grid-template-columns:1.35fr repeat(3,1fr);
  gap:54px;
  margin-inline:auto;
  padding:70px 0 56px;
}
.footer-brand .site-logo{color:#fff}
.footer-brand p{max-width:360px;margin-top:22px;font-size:14px;line-height:1.55}
.newsletter{display:flex;max-width:370px;margin-top:24px;border-bottom:1px solid rgba(255,255,255,.25)}
.newsletter input{min-width:0;flex:1;border:0;outline:none;color:#fff;background:transparent;padding:12px 0;font-size:14px}
.newsletter input::placeholder{color:#7d7d82}
.newsletter button{border:0;background:transparent;color:#fff;cursor:pointer;padding:0 5px}
.newsletter button svg{width:19px}
.footer-col h3{margin-bottom:18px;color:#f5f5f7;font-size:13px}
.footer-col ul{display:grid;gap:11px;list-style:none}
.footer-col a{font-size:14px;transition:color .2s ease}
.footer-col a:hover{color:var(--orange-light)}
.footer-contact{display:grid;gap:8px;margin-top:19px}
.footer-bottom{
  display:flex;
  width:min(calc(100% - 48px),var(--max));
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-inline:auto;
  padding:24px 0;
  border-top:1px solid var(--line-dark);
  font-size:12px;
}
.footer-legal{display:flex;flex-wrap:wrap;gap:18px}
.footer-legal a:hover{color:#fff}

/* Animation */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
.reveal.visible{opacity:1;transform:none}
.hero-in{animation:heroIn 1s var(--ease) both}
.hero-in.delay-1{animation-delay:.12s}
.hero-in.delay-2{animation-delay:.23s}
@keyframes heroIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Responsive */
@media(max-width:1180px){
  .nav-list{gap:22px}
  .nav-list a{font-size:14px}
  .header-cta{display:none}
}
@media(max-width:960px){
  :root{--nav-height:76px}
  .main-nav{display:none}
  .header-cta{display:none}
  .menu-toggle{display:inline-flex}
  .home-intro-grid,.split,.contact-layout{grid-template-columns:1fr}
  .split.reverse .split-media{order:0}
  .value-grid,.tech-grid,.purpose-grid,.catalog-grid{grid-template-columns:repeat(2,1fr)}
  .footer-main{grid-template-columns:1.3fr 1fr 1fr}
  .footer-brand{grid-column:span 3}
}
@media(max-width:760px){
  .container{width:min(calc(100% - 32px),var(--max))}
  .site-logo{font-size:17px}
  .logo-symbol{width:30px;height:30px}
  .home-hero{min-height:850px;padding-top:145px}
  .home-hero h1{font-size:58px}
  .hero-light{width:850px;bottom:-5px}
  .showcase-grid,.project-grid,.application-grid{grid-template-columns:1fr;padding-inline:10px;gap:10px}
  .showcase-card,.showcase-card.wide{grid-column:auto;min-height:660px}
  .showcase-art,.showcase-card.wide .showcase-art{width:690px;height:58%}
  .project-card,.project-card.wide{grid-column:auto;min-height:560px}
  .value-grid,.tech-grid,.purpose-grid,.catalog-grid,.projects-list{grid-template-columns:1fr}
  .project-list-card.large{grid-column:auto}
  .stats-grid{grid-template-columns:1fr}
  .stat{border-right:0;border-bottom:1px solid var(--line-dark)}
  .stat:last-child{border-bottom:0}
  .footer-cta-inner{align-items:flex-start;flex-direction:column}
  .footer-main{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:span 2}
  .form-row{grid-template-columns:1fr}
}
@media(max-width:540px){
  .nav-shell{width:calc(100% - 28px)}
  .site-logo{letter-spacing:.07em}
  .home-hero{min-height:790px;padding-inline:14px;padding-top:132px}
  .home-hero h1{font-size:51px}
  .home-hero-sub{font-size:20px}
  .hero-light{width:680px;bottom:-4px}
  .home-intro,.content-section{padding:96px 22px}
  .section-title{font-size:43px}
  .display-title{font-size:53px}
  .showcase-card,.showcase-card.wide{min-height:620px;padding:58px 18px 0}
  .showcase-card h3{font-size:42px}
  .showcase-card p{font-size:19px}
  .purpose-ring{bottom:-280px;border-width:50px}
  .product-lineup{padding:95px 0 100px}
  .lineup-head,.projects-head,.applications-head{width:calc(100% - 44px)}
  .card-scroller{gap:14px;padding-inline:22px}
  .product-tile{min-height:530px;border-radius:22px}
  .project-card,.project-card.wide{min-height:520px}
  .page-hero{min-height:640px;padding-top:130px}
  .page-hero p{font-size:20px}
  .split{gap:38px;margin-top:45px}
  .split-media{min-height:400px}
  .value-grid,.tech-grid,.purpose-grid,.catalog-grid{grid-template-columns:1fr}
  .contact-form{padding:24px}
  .footer-main{grid-template-columns:1fr 1fr;gap:38px 25px}
  .footer-brand{grid-column:span 2}
  .footer-bottom{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal{opacity:1;transform:none}
}

/* =========================================================
   Alignment, overlap and responsive QA fixes — July 2026
   ========================================================= */

/* Keep the logo, navigation and CTA optically centred. */
.nav-shell{
  display:grid;
  grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);
  align-items:center;
  gap:24px;
}
.site-logo{justify-self:start;min-width:0}
.main-nav{justify-self:center;min-width:0}
.header-cta{justify-self:end}
.nav-list{justify-content:center}

/* Prevent long hero titles and decorative artwork from colliding. */
.page-hero{
  min-height:700px;
  padding-top:calc(var(--nav-height) + 86px);
  padding-bottom:118px;
}
.page-hero-content{
  position:relative;
  z-index:3;
  width:min(100%,1120px);
  margin-inline:auto;
}
.page-hero .display-title{
  max-width:1120px;
  margin-inline:auto;
  font-size:clamp(50px,6.6vw,92px);
  line-height:.94;
  text-wrap:balance;
}
.page-hero p{
  position:relative;
  z-index:3;
  text-wrap:balance;
}
.page-orb{
  z-index:1;
  bottom:-650px;
  width:min(760px,78vw);
  border-width:62px;
  opacity:.78;
  pointer-events:none;
}
.page-orb::after{inset:36px}

/* Give the homepage copy its own clear first viewport. */
.home-hero-copy{z-index:5}
.home-hero .display-title{
  font-size:clamp(58px,8vw,104px);
  text-wrap:balance;
}
.home-hero-sub{text-wrap:balance}
.hero-light{
  bottom:-270px;
  width:min(980px,92vw);
}
.hero-floor{height:115px}

/* More stable repeated section alignments. */
.section-head{width:min(100%,1040px)}
.section-head .section-title{text-wrap:balance}
.split>*{min-width:0}
.showcase-copy,.home-purpose-copy,.home-closing-copy{min-width:0}
.project-copy,.project-list-copy{max-width:760px}
.catalog-info{min-height:150px}

/* Footer alignment and spacing. */
.footer-cta{position:relative;overflow:hidden}
.footer-cta::after{
  position:absolute;
  top:50%;
  right:-170px;
  width:390px;
  aspect-ratio:1;
  border:1px solid rgba(255,159,10,.18);
  border-radius:50%;
  box-shadow:0 0 0 58px rgba(255,159,10,.025),0 0 0 116px rgba(255,159,10,.018);
  transform:translateY(-50%);
  content:"";
  pointer-events:none;
}
.footer-cta-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
}
.footer-cta h2{max-width:780px;text-wrap:balance}
.footer-cta p{max-width:600px}
.footer-main{align-items:start}
.footer-brand,.footer-col{min-width:0}
.footer-col h3{letter-spacing:.01em}

/* Switch to the mobile header before tablet navigation becomes cramped. */
@media(max-width:1080px){
  :root{--nav-height:76px}
  .nav-shell{
    display:flex;
    width:min(calc(100% - 32px),var(--max));
  }
  .main-nav,.header-cta{display:none}
  .menu-toggle{display:inline-flex;margin-left:auto}
  .mobile-nav{padding-top:30px}
}

@media(max-width:760px){
  .home-hero{
    min-height:830px;
    padding-top:132px;
  }
  .home-hero .display-title{font-size:clamp(50px,14.5vw,66px)}
  .home-hero-sub{max-width:570px}
  .hero-light{
    width:760px;
    bottom:-125px;
  }
  .hero-orbit{display:none}

  .page-hero{
    min-height:650px;
    padding-top:125px;
    padding-bottom:105px;
  }
  .page-hero .display-title{
    max-width:720px;
    font-size:clamp(45px,11vw,66px);
    line-height:.96;
  }
  .page-hero p{max-width:620px}
  .page-orb{
    bottom:-505px;
    width:min(590px,130vw);
    border-width:46px;
  }
  .page-orb::after{inset:28px}

  .footer-cta-inner{
    display:flex;
    align-items:flex-start;
    flex-direction:column;
  }
  .footer-cta::after{right:-260px;opacity:.75}
  .footer-main{padding-top:58px}
}

@media(max-width:540px){
  .home-hero{
    min-height:790px;
    padding-top:123px;
  }
  .home-hero .display-title{font-size:50px}
  .home-hero-sub{font-size:19px;line-height:1.27}
  .home-hero .actions{
    width:min(100%,330px);
    align-items:stretch;
    flex-direction:column;
    gap:10px;
    margin-inline:auto;
  }
  .home-hero .button{width:100%}
  .hero-light{
    width:650px;
    bottom:-105px;
  }

  .page-hero{min-height:620px;padding-inline:20px}
  .page-hero .display-title{font-size:45px}
  .page-hero p{font-size:19px;line-height:1.36}
  .page-hero .actions{
    width:min(100%,330px);
    align-items:stretch;
    flex-direction:column;
    gap:10px;
    margin-inline:auto;
  }
  .page-hero .button{width:100%}
  .page-orb{bottom:-455px;width:540px;border-width:40px}

  .showcase-card,.showcase-card.wide{min-height:590px}
  .showcase-art,.showcase-card.wide .showcase-art{width:610px;height:55%}
  .project-card,.project-card.wide{min-height:500px}
  .project-copy,.project-list-copy{right:24px;bottom:24px;left:24px}

  .footer-cta{padding:74px 22px}
  .footer-cta h2{font-size:40px}
  .footer-cta .button{width:100%}
  .footer-main{
    grid-template-columns:1fr;
    gap:34px;
    width:calc(100% - 44px);
  }
  .footer-brand{grid-column:auto}
  .footer-brand p{max-width:none}
  .newsletter{max-width:none}
  .footer-col ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px}
  .footer-contact{grid-template-columns:1fr!important}
  .footer-bottom{width:calc(100% - 44px)}
}


/* ===== Official Ostroluxx brand system ===== */
:root{
  --brand-brown:#0b100c;
  --brand-brown-dark:#684936;
  --brand-brown-deep:#050805;
  --brand-green:#7baf3d;
  --brand-green-dark:#5d8a2b;
  --brand-green-light:#a8d56f;
  --brand-cream:#f6f0ec;
  --black:#050805;
  --black-soft:#251a15;
  --surface:#2c201a;
  --surface-2:#36281f;
  --paper:#f6f0ec;
  --paper-2:#fbf8f6;
  --text:#2d211b;
  --muted:#776b65;
  --muted-light:#bcb1aa;
  --orange:var(--brand-green);
  --orange-light:var(--brand-green-light);
  --blue:var(--brand-green);
  --line-dark:rgba(255,255,255,.14);
  --line:rgba(70,48,37,.14);
}
body{background:var(--paper-2)}
.site-header{background:rgba(30,22,18,.86);border-bottom-color:rgba(255,255,255,.12)}
.site-header.scrolled{background:rgba(30,22,18,.96);box-shadow:0 14px 44px rgba(37,25,19,.22)}
.nav-shell{gap:25px}
.site-logo{height:54px;min-width:194px;overflow:hidden;border-radius:10px}
.brand-logo{display:block;width:194px;height:54px;object-fit:contain;transition:transform .4s var(--ease),filter .4s var(--ease)}
.site-logo:hover .brand-logo{transform:scale(1.025);filter:drop-shadow(0 0 12px rgba(123,175,61,.2))}
.nav-list a::after{height:3px;border-radius:3px 3px 0 0;background:var(--brand-green)}
.header-cta,.mobile-nav .mobile-contact,.button-primary{color:#050805;background:var(--brand-green);box-shadow:0 10px 30px rgba(123,175,61,.18)}
.header-cta:hover,.button-primary:hover{background:var(--brand-green-light)}
.mobile-nav{background:rgba(30,22,18,.99)}
.mobile-nav a[aria-current="page"]{color:var(--brand-green-light)}
.eyebrow{color:var(--brand-green-dark)}
.dark .eyebrow,.page-hero .eyebrow,.home-hero .eyebrow,.products-hero .eyebrow,.footer-cta .eyebrow{color:var(--brand-green-light)}
.text-link{color:var(--brand-green-dark)}
.home-hero{background:radial-gradient(circle at 50% 56%,rgba(123,175,61,.13),transparent 19%),radial-gradient(circle at 50% 78%,rgba(147,107,84,.24),transparent 34%),var(--brand-brown-deep)}
.gradient-text{background:linear-gradient(90deg,#fff 9%,#efe7e1 43%,#a8d56f 71%,#fff 100%);-webkit-background-clip:text;background-clip:text}
.home-intro,.content-section{background:var(--paper-2)}
.content-section.soft,.product-lineup,.lineup,.collection{background:var(--brand-cream)}
.showcase-card.dark,.content-section.dark,.compare,.stats-band,.experience{background:var(--brand-brown-deep)}
.showcase-card.blue{background:linear-gradient(180deg,#1d1713,#3d2b22)}
.home-purpose{background:radial-gradient(circle at 50% 72%,rgba(123,175,61,.18),transparent 24%),var(--brand-brown-deep)}
.home-purpose h2 span{background:linear-gradient(90deg,#fff,#a8d56f,#7baf3d);-webkit-background-clip:text;background-clip:text}
.page-hero{background:radial-gradient(circle at 50% 50%,rgba(123,175,61,.12),transparent 24%),var(--brand-brown-deep)}
.page-hero::before{background:radial-gradient(circle at 50% 50%,rgba(147,107,84,.28),transparent 30%)}
.footer-cta{background:radial-gradient(circle at 82% 50%,rgba(123,175,61,.12),transparent 23%),#251a15}
.site-footer{background:#020403}
.footer-main .site-logo{height:68px;min-width:245px}
.footer-main .brand-logo{width:245px;height:68px}
.footer-bottom{border-top-color:rgba(255,255,255,.13)}
.project-card,.project-list-card{background:#2a1f19}

/* ambient motion and interaction */
.site-header::after{position:absolute;right:0;bottom:-1px;left:0;height:1px;background:linear-gradient(90deg,transparent,var(--brand-green),transparent);opacity:.5;content:"";transform:scaleX(var(--scroll-progress,0));transform-origin:left;transition:transform .1s linear}
.hero-light{animation:brandFloat 7s ease-in-out infinite alternate}
.hero-orbit{animation:orbitSpin 24s linear infinite}
.hero-orbit::before{background:var(--brand-green-light);box-shadow:0 0 20px rgba(123,175,61,.85)}
.showcase-card::before,.product-tile::before,.catalog-card::before{position:absolute;z-index:2;top:-45%;left:-75%;width:55%;height:190%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.11),transparent);content:"";transform:rotate(18deg);transition:left .8s var(--ease);pointer-events:none}
.showcase-card:hover::before,.product-tile:hover::before,.catalog-card:hover::before{left:130%}
.showcase-art svg,.tile-art svg,.catalog-art svg{transition:transform .75s var(--ease),filter .75s var(--ease)}
.showcase-card:hover .showcase-art svg,.product-tile:hover .tile-art svg,.catalog-card:hover .catalog-art svg{transform:translateY(-8px) scale(1.035);filter:drop-shadow(0 18px 25px rgba(123,175,61,.16))}
.scene{will-change:transform}
.reveal{filter:blur(7px);transform:translateY(34px) scale(.985)}
.reveal.visible{filter:none;transform:none}
.interactive-tilt{transform-style:preserve-3d;will-change:transform}
.cursor-aura{position:fixed;z-index:1500;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(123,175,61,.1),transparent 68%);pointer-events:none;opacity:0;transform:translate(-50%,-50%);transition:opacity .25s ease;mix-blend-mode:screen}
@keyframes brandFloat{from{transform:translate3d(50%,var(--hero-y,0),0) scale(var(--hero-scale,1))}to{transform:translate3d(50%,calc(var(--hero-y,0) - 13px),0) scale(var(--hero-scale,1))}}
@keyframes orbitSpin{to{transform:translateX(-50%) rotate(348deg)}}
@media(prefers-reduced-motion:reduce){.hero-light,.hero-orbit{animation:none}.reveal{filter:none}}

/* ===== Detailed products page ===== */
.products-hero{position:relative;min-height:850px;overflow:hidden;padding:calc(var(--nav-height) + 92px) 24px 80px;color:#fff;background:radial-gradient(circle at 73% 48%,rgba(123,175,61,.18),transparent 20%),linear-gradient(135deg,#050805 0%,#111913 58%,#020403 100%);isolation:isolate}
.products-hero-content{position:relative;z-index:4;width:min(100%,960px);margin-left:max(0px,calc((100vw - var(--max))/2));padding-top:50px}
.products-hero h1{max-width:900px;font-size:clamp(60px,8vw,108px)}
.products-hero p{max-width:720px;margin-top:27px;color:#d9d0ca;font-size:clamp(20px,2.2vw,28px);letter-spacing:-.03em;line-height:1.28}
.products-hero-bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.products-hero-bg span{position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;animation:productOrbit 18s linear infinite}
.products-hero-bg span:nth-child(1){top:12%;right:7%;width:580px;height:580px}.products-hero-bg span:nth-child(2){top:24%;right:17%;width:360px;height:360px;animation-direction:reverse;animation-duration:13s}.products-hero-bg span:nth-child(3){right:-6%;bottom:-34%;width:700px;height:700px;animation-duration:25s}
.product-hero-object{position:absolute;z-index:2;right:max(30px,calc((100vw - 1400px)/2));bottom:58px;width:min(39vw,540px);height:520px;transform:rotate(-12deg);animation:productObjectFloat 6s ease-in-out infinite alternate}
.product-hero-stem{position:absolute;top:25px;left:52%;width:28px;height:230px;border-radius:18px;background:linear-gradient(90deg,#17110e,#b49381 42%,#3a2a22 70%,#16100d);transform:translateX(-50%)}
.product-hero-head{position:absolute;top:190px;left:50%;width:260px;height:235px;border-radius:64px 64px 105px 105px;background:linear-gradient(120deg,#17110e,#9c7b68 38%,#33231c 70%,#120c0a);box-shadow:0 42px 65px rgba(0,0,0,.5);transform:translateX(-50%)}
.product-hero-head::after{position:absolute;right:26px;bottom:22px;left:26px;height:80px;border-radius:50%;background:radial-gradient(circle,#fff 0%,#eaf4df 32%,#a8d56f 65%,#132015 100%);box-shadow:0 0 50px rgba(123,175,61,.38);content:""}
.product-hero-head i{position:absolute;inset:17px;border:1px solid rgba(255,255,255,.13);border-radius:52px 52px 92px 92px}
.product-hero-beam{position:absolute;z-index:-1;left:50%;bottom:-120px;width:440px;height:360px;background:linear-gradient(to bottom,rgba(168,213,111,.22),transparent 80%);clip-path:polygon(37% 0,63% 0,100% 100%,0 100%);filter:blur(12px);transform:translateX(-50%)}
@keyframes productOrbit{to{transform:rotate(360deg)}}
@keyframes productObjectFloat{to{transform:rotate(-9deg) translateY(-15px)}}
.portfolio-summary{position:relative;z-index:5;margin-top:-1px;padding:0 24px 70px;background:var(--paper-2)}
.portfolio-summary-grid{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(4,1fr);margin-inline:auto;border:1px solid rgba(70,48,37,.12);border-radius:24px;background:#fff;box-shadow:0 24px 70px rgba(73,48,36,.1);transform:translateY(-42px)}
.portfolio-stat{padding:34px;text-align:center;border-right:1px solid rgba(70,48,37,.1)}
.portfolio-stat:last-child{border-right:0}.portfolio-stat strong{display:block;color:var(--brand-brown);font-size:clamp(42px,5vw,64px);font-weight:760;letter-spacing:-.06em;line-height:1}.portfolio-stat span{display:block;margin-top:9px;color:var(--muted);font-size:14px}
.category-overview{padding:50px 0 116px;background:var(--paper-2)}
.category-rail{display:flex;gap:16px;overflow-x:auto;margin-top:48px;padding:0 max(24px,calc((100vw - var(--max))/2)) 20px;scroll-snap-type:x mandatory;scrollbar-width:none}.category-rail::-webkit-scrollbar{display:none}
.category-card{position:relative;flex:0 0 290px;min-height:245px;overflow:hidden;padding:27px;border:1px solid rgba(70,48,37,.11);border-radius:24px;background:#fff;box-shadow:0 8px 30px rgba(64,42,31,.06);scroll-snap-align:start;cursor:pointer;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border .35s ease}
.category-card:hover{transform:translateY(-7px);border-color:rgba(123,175,61,.55);box-shadow:0 20px 45px rgba(64,42,31,.12)}
.category-card::after{position:absolute;right:-55px;bottom:-70px;width:180px;height:180px;border:28px solid rgba(123,175,61,.12);border-radius:50%;content:"";transition:transform .5s var(--ease)}.category-card:hover::after{transform:scale(1.18)}
.category-card span{color:var(--brand-green-dark);font-size:14px;font-weight:750}.category-card h3{max-width:220px;margin-top:27px;color:var(--brand-brown-dark);font-size:25px;letter-spacing:-.04em;line-height:1.05}.category-card p{margin-top:10px;color:var(--muted);font-size:14px;line-height:1.4}.category-card strong{position:absolute;right:24px;top:22px;color:#d6c9c1;font-size:34px;letter-spacing:-.06em}
.product-explorer{padding:116px 24px 130px;background:var(--brand-cream)}
.explorer-shell{width:min(100%,var(--max));margin-inline:auto}.explorer-head{display:flex;align-items:end;justify-content:space-between;gap:55px}.explorer-head>div{max-width:760px}.explorer-head>p{max-width:420px;color:var(--muted);font-size:15px;line-height:1.5}
.product-toolbar{display:grid;grid-template-columns:1fr 220px;gap:13px;margin-top:48px}.product-search{display:flex;min-height:58px;align-items:center;gap:12px;padding:0 18px;border:1px solid rgba(70,48,37,.14);border-radius:17px;background:#fff;box-shadow:0 8px 26px rgba(64,42,31,.04)}.product-search svg{width:21px;color:var(--brand-green-dark)}.product-search input{width:100%;border:0;outline:0;background:transparent;font-size:16px}.product-sort select{width:100%;height:58px;border:1px solid rgba(70,48,37,.14);border-radius:17px;outline:0;background:#fff;padding:0 16px;color:var(--text);font-weight:650}
.product-filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.product-filter{min-height:40px;padding:0 15px;border:1px solid rgba(70,48,37,.15);border-radius:999px;background:rgba(255,255,255,.62);cursor:pointer;font-size:13px;font-weight:700;transition:.22s ease}.product-filter:hover,.product-filter.active{border-color:var(--brand-green);color:#3a2416;background:var(--brand-green-light)}
.product-result-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:34px 0 20px;color:var(--muted);font-size:14px}.product-result-meta strong{color:var(--text);font-size:16px}
.detailed-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.detailed-product-card{position:relative;overflow:hidden;border:1px solid rgba(70,48,37,.11);border-radius:24px;background:#fff;box-shadow:0 8px 28px rgba(64,42,31,.06);cursor:pointer;transition:transform .38s var(--ease),box-shadow .38s var(--ease),border-color .38s ease}.detailed-product-card:hover{transform:translateY(-7px);border-color:rgba(123,175,61,.55);box-shadow:0 22px 50px rgba(64,42,31,.13)}
.product-card-art{position:relative;display:grid;height:280px;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 52%,rgba(123,175,61,.15),transparent 30%),linear-gradient(145deg,#2d211b,#020403)}.product-card-art::before{position:absolute;left:50%;bottom:-60px;width:230px;height:210px;background:linear-gradient(to bottom,rgba(168,213,111,.18),transparent);clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);content:"";transform:translateX(-50%)}.product-card-art svg{position:relative;z-index:2;width:72%;height:72%;transition:transform .55s var(--ease)}.detailed-product-card:hover .product-card-art svg{transform:translateY(-8px) scale(1.05)}
.product-card-content{padding:23px}.product-card-category{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--brand-green-dark);font-size:12px;font-weight:750}.product-card-category span:last-child{color:#9e928b}.product-card-content h3{margin-top:12px;font-size:23px;letter-spacing:-.04em;line-height:1.08}.product-code{display:block;overflow:hidden;margin-top:8px;color:#796d67;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.product-card-content p{min-height:42px;margin-top:11px;color:var(--muted);font-size:14px;line-height:1.45}.product-card-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px}.product-card-specs div{padding:10px;border-radius:11px;background:var(--brand-cream)}.product-card-specs span{display:block;color:#887b74;font-size:10px;text-transform:uppercase;letter-spacing:.07em}.product-card-specs strong{display:block;overflow:hidden;margin-top:3px;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.product-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:16px;border-top:1px solid rgba(70,48,37,.1)}.product-card-footer span{color:var(--brand-green-dark);font-size:13px;font-weight:750}.product-card-footer svg{width:18px;color:var(--brand-green-dark);transition:transform .25s ease}.detailed-product-card:hover .product-card-footer svg{transform:translateX(4px)}
.product-load-wrap{display:flex;justify-content:center;margin-top:36px}.product-load-wrap[hidden]{display:none}.no-product-results{grid-column:1/-1;padding:70px 24px;border:1px dashed rgba(70,48,37,.2);border-radius:24px;color:var(--muted);background:rgba(255,255,255,.5);text-align:center}.no-product-results strong{display:block;color:var(--text);font-size:24px;margin-bottom:8px}
.specification-band{padding:95px 24px;color:#fff;background:radial-gradient(circle at 85% 50%,rgba(123,175,61,.16),transparent 24%),var(--brand-brown-deep)}.specification-inner{display:flex;width:min(100%,var(--max));align-items:end;justify-content:space-between;gap:55px;margin-inline:auto}.specification-inner h2{max-width:800px;margin-top:12px;font-size:clamp(42px,5.5vw,70px);letter-spacing:-.06em;line-height:.98}.specification-inner p{max-width:620px;margin-top:17px;color:#c4b9b2;font-size:17px;line-height:1.5}
.product-dialog{width:min(1120px,calc(100% - 32px));max-height:calc(100vh - 32px);overflow:auto;padding:0;border:0;border-radius:30px;background:#fff;box-shadow:0 45px 120px rgba(24,16,12,.45)}.product-dialog::backdrop{background:rgba(25,17,13,.78);backdrop-filter:blur(10px)}.dialog-close{position:sticky;z-index:5;top:18px;float:right;display:grid;width:44px;height:44px;place-items:center;margin:18px 18px -62px 0;border:1px solid rgba(70,48,37,.13);border-radius:50%;background:rgba(255,255,255,.9);cursor:pointer}.dialog-close svg{width:20px}.dialog-layout{display:grid;grid-template-columns:.92fr 1.08fr;min-height:650px}.dialog-visual{position:relative;display:grid;min-height:650px;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 48%,rgba(123,175,61,.2),transparent 28%),linear-gradient(145deg,#0d140f,#020403)}.dialog-visual::after{position:absolute;left:50%;bottom:-70px;width:360px;height:330px;background:linear-gradient(to bottom,rgba(168,213,111,.2),transparent);clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);content:"";transform:translateX(-50%)}.dialog-visual svg{position:relative;z-index:2;width:68%;height:68%;animation:dialogProductFloat 4.5s ease-in-out infinite alternate}.dialog-content{padding:72px 55px 48px}.dialog-category{color:var(--brand-green-dark);font-size:14px;font-weight:750}.dialog-content h2{margin-top:10px;font-size:clamp(37px,4.5vw,58px);letter-spacing:-.055em;line-height:1}.dialog-content code{display:inline-block;margin-top:16px;padding:8px 11px;border-radius:8px;color:var(--brand-brown-dark);background:var(--brand-cream);font-size:13px}.dialog-content>p{margin-top:22px;color:var(--muted);font-size:17px;line-height:1.5}.dialog-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:29px}.dialog-specs div{padding:17px;border:1px solid rgba(70,48,37,.11);border-radius:15px;background:#fff}.dialog-specs span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.dialog-specs strong{display:block;margin-top:6px;font-size:14px;line-height:1.3}.dialog-disclaimer{padding:15px;border-left:3px solid var(--brand-green);background:var(--brand-cream);font-size:13px!important}.dialog-content .actions{align-items:stretch}.dialog-content .button{font-size:14px}.dialog-content .button-light-outline{background:#fff}@keyframes dialogProductFloat{to{transform:translateY(-12px) scale(1.02)}}
@media(max-width:1040px){.products-hero-content{margin-left:0}.product-hero-object{right:-100px;opacity:.56}.detailed-product-grid{grid-template-columns:repeat(2,1fr)}.portfolio-summary-grid{grid-template-columns:repeat(2,1fr)}.portfolio-stat:nth-child(2){border-right:0}.portfolio-stat:nth-child(-n+2){border-bottom:1px solid rgba(70,48,37,.1)}.explorer-head{align-items:flex-start;flex-direction:column;gap:22px}.dialog-layout{grid-template-columns:1fr}.dialog-visual{min-height:410px}.dialog-content{padding:45px}}
@media(max-width:760px){.site-logo{height:46px;min-width:165px}.brand-logo{width:165px;height:46px}.products-hero{min-height:760px;padding-top:130px}.products-hero h1{font-size:56px}.products-hero p{font-size:20px}.product-hero-object{right:-150px;bottom:-25px;width:460px;opacity:.38}.portfolio-summary-grid{transform:translateY(-30px)}.product-toolbar{grid-template-columns:1fr}.detailed-product-grid{grid-template-columns:1fr}.product-card-art{height:310px}.specification-inner{align-items:flex-start;flex-direction:column}.dialog-layout{display:block}.dialog-visual{min-height:330px}.dialog-content{padding:38px 24px 30px}.dialog-specs{grid-template-columns:1fr}.dialog-content .actions{flex-direction:column}.dialog-content .button{width:100%}}
@media(max-width:520px){.products-hero{min-height:720px;padding-inline:18px}.products-hero h1{font-size:49px}.portfolio-summary{padding-inline:14px}.portfolio-summary-grid{grid-template-columns:1fr}.portfolio-stat{border-right:0;border-bottom:1px solid rgba(70,48,37,.1)}.portfolio-stat:last-child{border-bottom:0}.category-overview{padding-top:20px}.product-explorer{padding:92px 16px}.product-result-meta{align-items:flex-start;flex-direction:column;gap:5px}.product-card-specs{grid-template-columns:1fr}.footer-main .site-logo{height:58px;min-width:210px}.footer-main .brand-logo{width:210px;height:58px}}


/* ===== V3 expanded homepage, product imagery and resources ===== */
.rapidbizz-credit{color:#f3dfad;font-weight:650;white-space:nowrap}.rapidbizz-credit:hover{color:var(--green-light)!important}
.featured-products-section{padding:120px 24px;background:#f7f4f0}.featured-products-head{display:grid;width:min(100%,var(--max));grid-template-columns:1fr .75fr;align-items:end;gap:50px;margin-inline:auto}.featured-products-head p{justify-self:end}.featured-product-grid{display:grid;width:min(100%,var(--max));grid-template-columns:1.2fr .8fr;grid-template-rows:repeat(2,360px);gap:16px;margin:54px auto 0}.featured-product-card{position:relative;overflow:hidden;border-radius:30px;background:#fff;box-shadow:0 12px 40px rgba(78,55,43,.1);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}.featured-product-card:hover{transform:translateY(-8px);box-shadow:0 24px 60px rgba(78,55,43,.16)}.featured-product-card.fp-large{grid-row:span 2;background:linear-gradient(155deg,#0d0b0a,#30221b);color:#fff}.featured-product-card img{position:absolute;right:-5%;bottom:-5%;width:72%;height:72%;object-fit:contain;transition:transform .7s var(--ease)}.featured-product-card:not(.fp-large) img{right:-6%;bottom:-18%;width:62%;height:72%}.featured-product-card:hover img{transform:scale(1.06) rotate(-2deg)}.fp-copy{position:relative;z-index:2;max-width:60%;padding:36px}.fp-copy small{color:var(--green);font-size:14px;font-weight:750}.fp-copy h3{margin-top:10px;font-size:clamp(30px,3.5vw,52px);letter-spacing:-.05em;line-height:1}.featured-product-card:not(.fp-large) .fp-copy h3{font-size:32px}.fp-copy p{margin-top:12px;color:#72706f;font-size:16px;line-height:1.45}.fp-large .fp-copy p{color:#bbb5b0}.fp-copy span{display:inline-block;margin-top:20px;color:var(--green-light);font-weight:700}
.light-lab-section{display:grid;grid-template-columns:.82fr 1.18fr;min-height:760px;overflow:hidden;background:#0a0908;color:#fff}.light-lab-copy{display:flex;flex-direction:column;justify-content:center;padding:90px max(32px,calc((100vw - var(--max))/2)) 90px 6vw}.light-lab-copy .section-title{margin-top:15px}.light-lab-copy .body-large{margin-top:24px;color:#aaa4a0}.lab-control{margin:42px 0 28px}.lab-control label{display:block;margin-bottom:16px;font-size:14px;font-weight:700}.lab-control input{width:100%;accent-color:var(--green)}.lab-scale{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;color:#8f8985;font-size:12px}.lab-scale strong{color:#fff;font-size:17px}.light-lab-scene{position:relative;overflow:hidden;background:var(--lab-light,#ffffff);transition:background .25s linear}.lab-wall{position:absolute;inset:18% 10% 12%;background:linear-gradient(120deg,rgba(255,255,255,.5),rgba(255,255,255,.1)),#d5cec5;box-shadow:0 35px 80px rgba(0,0,0,.35)}.lab-art{position:absolute;top:18%;left:12%;width:34%;height:42%;border:18px solid #382b24;background:linear-gradient(135deg,#8e6b54,#7baf3d)}.lab-console{position:absolute;right:11%;bottom:7%;width:62%;height:18%;border-radius:8px;background:#4f3a2e;box-shadow:0 12px 24px rgba(0,0,0,.25)}.lab-ceiling{position:absolute;z-index:3;top:8%;left:18%;right:18%;display:flex;justify-content:space-between}.lab-ceiling i{width:55px;height:30px;border-radius:50%;background:#12100f;box-shadow:inset 0 -8px 12px rgba(255,255,255,.08)}.lab-beam{position:absolute;z-index:2;top:11%;width:28%;height:72%;clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);background:linear-gradient(to bottom,var(--lab-light,#ffffff),transparent 75%);opacity:.25;filter:blur(3px);animation:lightBreath 3.4s ease-in-out infinite}.lab-beam-one{left:5%}.lab-beam-two{left:36%;animation-delay:.8s}.lab-beam-three{right:3%;animation-delay:1.5s}@keyframes lightBreath{50%{opacity:.38;transform:scaleX(1.05)}}
.why-ostroluxx-section{padding:120px 24px;background:#fff}.why-ostroluxx-head{width:min(100%,900px);margin-inline:auto;text-align:center}.why-ostroluxx-head .section-title{margin-top:14px}.why-ostroluxx-head .body-large{margin-top:20px}.why-ostroluxx-grid{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(4,1fr);gap:14px;margin:55px auto 0}.why-ostroluxx-card{min-height:300px;padding:31px;border:1px solid #e7e1dc;border-radius:25px;background:#fbfaf8;transition:.35s var(--ease)}.why-ostroluxx-card:hover{border-color:var(--green);transform:translateY(-6px)}.why-ostroluxx-card span{color:var(--green);font-weight:750}.why-ostroluxx-card h3{margin-top:70px;font-size:23px;letter-spacing:-.035em}.why-ostroluxx-card p{margin-top:10px;color:var(--muted);font-size:15px;line-height:1.48}
.project-process-section{padding:120px 24px;background:#f4efe9}.project-process-head{width:min(100%,var(--max));margin-inline:auto}.project-process-head .section-title{max-width:800px;margin-top:13px}.project-process-track{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(4,1fr);margin:58px auto 0;border-top:1px solid #cfc4bb}.process-step{position:relative;padding:32px 28px 0 0}.process-step::before{position:absolute;top:-7px;left:0;width:13px;height:13px;border:3px solid #f4efe9;border-radius:50%;background:var(--green);box-shadow:0 0 0 1px var(--green);content:""}.process-step b{color:var(--brown-light);font-size:13px}.process-step h3{margin-top:26px;font-size:22px}.process-step p{margin-top:10px;color:var(--muted);font-size:15px;line-height:1.48}
.home-resources-section{padding:120px 24px;background:#0a0908;color:#fff}.home-resources-head{width:min(100%,var(--max));margin-inline:auto}.home-resources-head .section-title{max-width:780px;margin-top:13px}.resource-card-grid{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(2,1fr);gap:14px;margin:55px auto 0}.resource-card{min-height:310px;padding:35px;border:1px solid rgba(255,255,255,.11);border-radius:27px;background:linear-gradient(145deg,#151210,#0c0b0a);transition:.4s var(--ease)}.resource-card:hover{border-color:var(--green);transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,0,0,.25)}.resource-card span{color:var(--green-light);font-size:14px;font-weight:750}.resource-card h3{max-width:470px;margin-top:50px;font-size:clamp(27px,3vw,39px);letter-spacing:-.045em;line-height:1}.resource-card p{max-width:480px;margin-top:14px;color:#aaa4a0;line-height:1.45}.resource-card b{display:block;margin-top:20px;color:#fff}
.product-image-showcase{padding:120px 24px;background:#f4efe9}.product-image-mosaic{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(5,1fr);gap:12px;margin:55px auto 0}.image-mosaic-card{position:relative;min-height:340px;overflow:hidden;border:0;border-radius:25px;background:#fff;cursor:pointer;box-shadow:0 10px 30px rgba(75,52,41,.08);transition:.35s var(--ease)}.image-mosaic-card:hover{transform:translateY(-7px);box-shadow:0 22px 45px rgba(75,52,41,.15)}.image-mosaic-card img{width:100%;height:265px;object-fit:contain;padding:18px}.image-mosaic-card span{position:absolute;right:0;bottom:0;left:0;padding:19px;color:#fff;background:linear-gradient(to top,rgba(12,9,8,.94),transparent);font-size:15px;font-weight:750;text-align:left}
.product-card-art{height:270px!important;padding:16px!important;background:radial-gradient(circle at 50% 55%,rgba(123,175,61,.16),transparent 34%),linear-gradient(150deg,#f9f7f4,#eee8e1)!important}.product-card-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 24px 18px rgba(47,31,23,.18));transition:transform .5s var(--ease)}.detailed-product-card:hover .product-card-art img{transform:scale(1.06) translateY(-4px)}.product-image-badge{position:absolute;top:16px;left:16px;padding:7px 10px;border-radius:999px;color:#fff;background:rgba(38,28,23,.84);font-size:11px;font-weight:700;backdrop-filter:blur(8px)}
.dialog-layout-detailed{grid-template-columns:minmax(350px,.9fr) minmax(500px,1.1fr)!important;max-width:1240px}.dialog-visual-panel{display:flex;flex-direction:column;background:linear-gradient(155deg,#f7f3ef,#e8dfd7)}.dialog-visual{min-height:460px!important;padding:35px!important;background:transparent!important}.dialog-visual img{width:100%;height:100%;max-height:440px;object-fit:contain;filter:drop-shadow(0 35px 25px rgba(55,36,27,.2))}.dialog-visual-note{padding:0 28px 18px;color:#716a65;font-size:11px;line-height:1.4}.dialog-gallery{display:flex;gap:8px;padding:0 25px 25px}.dialog-gallery button{width:72px;height:58px;padding:4px;border:1px solid #d8cec6;border-radius:10px;background:#fff;cursor:pointer}.dialog-gallery button.active{border-color:var(--green);box-shadow:0 0 0 2px rgba(123,175,61,.18)}.dialog-gallery img{width:100%;height:100%;object-fit:contain}.dialog-lead{font-size:17px!important}.dialog-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.dialog-badges span{padding:7px 10px;border-radius:999px;background:#eaf4df;color:#0b100c;font-size:11px;font-weight:700}.dialog-tab-list{display:flex;gap:6px;margin-top:24px;border-bottom:1px solid #e3ddd8}.dialog-tab{padding:11px 12px;border:0;border-bottom:2px solid transparent;background:transparent;cursor:pointer;color:#77706b;font-size:13px;font-weight:700}.dialog-tab.active{border-color:var(--green);color:#1d1d1f}.dialog-tab-panel{display:none;padding-top:20px}.dialog-tab-panel.active{display:block}.dialog-benefit-list,.dialog-application-list,.dialog-document-list{display:grid;gap:10px}.dialog-benefit-list div,.dialog-application-list div,.dialog-document-list div{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border-radius:12px;background:#f7f5f2;font-size:13px;line-height:1.4}.dialog-benefit-list i,.dialog-application-list i,.dialog-document-list i{display:grid;flex:0 0 20px;width:20px;height:20px;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-style:normal;font-size:11px}.dialog-specs-expanded{grid-template-columns:repeat(2,1fr)!important}.dialog-specs-expanded div{min-height:95px}.dialog-subtitle{margin:20px 0 10px;font-size:15px}.dialog-related{margin-top:22px;padding-top:18px;border-top:1px solid #e3ddd8}.dialog-related h3{font-size:15px}.dialog-related>div{display:flex;gap:8px;margin-top:11px}.dialog-related button{flex:1;padding:10px;border:1px solid #ded7d1;border-radius:10px;background:#fff;cursor:pointer;font-size:11px;text-align:left}.product-shortlist{position:fixed;z-index:900;right:24px;bottom:24px;display:flex;align-items:center;gap:16px;padding:13px 15px;border:1px solid rgba(255,255,255,.16);border-radius:20px;color:#fff;background:rgba(18,14,12,.94);box-shadow:0 18px 55px rgba(0,0,0,.3);backdrop-filter:blur(18px)}.product-shortlist[hidden]{display:none}.product-shortlist span{display:block;color:#aaa4a0;font-size:11px}.product-shortlist strong{display:block;margin-top:2px;font-size:14px}.product-shortlist>button{border:0;color:#aaa4a0;background:transparent;cursor:pointer}.product-shortlist .button{min-height:38px;padding:0 14px;font-size:12px}
.resource-page-hero .display-title{max-width:1020px;margin-inline:auto}.download-grid{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(2,1fr);gap:16px;margin:58px auto 0}.download-card{position:relative;min-height:510px;overflow:hidden;padding:33px;border-radius:28px;background:#fff;box-shadow:0 12px 35px rgba(73,50,39,.08);transition:.4s var(--ease)}.download-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(73,50,39,.15)}.download-card img{position:absolute;right:-3%;bottom:-11%;width:58%;height:62%;object-fit:contain}.download-card span{color:var(--green);font-size:13px;font-weight:750}.download-card h3{max-width:55%;margin-top:45px;font-size:36px;letter-spacing:-.045em;line-height:1}.download-card p{max-width:50%;margin-top:15px;color:var(--muted);line-height:1.45}.download-card b{display:block;margin-top:18px;color:var(--brown)}.resource-list{width:min(100%,1000px);margin:58px auto 0}.resource-list-item{display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:25px;padding:28px 0;border-top:1px solid #ded8d3}.resource-list-item:last-child{border-bottom:1px solid #ded8d3}.resource-list-item>span{color:var(--green);font-weight:750}.resource-list-item h3{font-size:24px}.resource-list-item p{margin-top:5px;color:var(--muted)}.resource-list-item a{color:var(--brown);font-weight:700}.guide-grid{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(2,1fr);gap:15px;margin-inline:auto}.guide-card{min-height:350px;padding:35px;border-radius:27px;background:#fff;box-shadow:0 10px 32px rgba(73,50,39,.07)}.guide-card>span{color:var(--green);font-weight:750}.guide-card h2{margin-top:60px;font-size:34px;letter-spacing:-.045em}.guide-card p{margin-top:15px;color:var(--muted);font-size:17px;line-height:1.5}.temperature-bar{height:17px;margin-top:32px;border-radius:999px;background:linear-gradient(90deg,#ff9b3c,#ffe7b5,#f7fbff,#b9ddff)}.support-grid{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(3,1fr);gap:15px;margin-inline:auto}.support-card{min-height:420px;padding:34px;border:1px solid #e1dbd6;border-radius:27px;background:#fbfaf8}.support-card span{color:var(--green);font-weight:750}.support-card h2{margin-top:80px;font-size:36px;letter-spacing:-.045em;line-height:1}.support-card p{margin-top:16px;color:var(--muted);line-height:1.5}.support-card .text-link{display:inline-block;margin-top:22px}
.light-particle-field{position:fixed;z-index:2;inset:0;pointer-events:none;overflow:hidden}.light-particle{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--green-light);box-shadow:0 0 12px var(--green);opacity:0;animation:floatLight var(--duration) linear infinite;animation-delay:var(--delay)}@keyframes floatLight{0%{opacity:0;transform:translate3d(0,30px,0) scale(.5)}15%{opacity:.55}80%{opacity:.15}100%{opacity:0;transform:translate3d(var(--drift),-110vh,0) scale(1.4)}}
@media(max-width:1000px){.featured-products-head{grid-template-columns:1fr}.featured-products-head p{justify-self:start}.featured-product-grid{grid-template-columns:1fr;grid-template-rows:570px 350px 350px}.featured-product-card.fp-large{grid-row:auto}.light-lab-section{grid-template-columns:1fr}.light-lab-copy{padding:90px 8vw}.light-lab-scene{min-height:620px}.why-ostroluxx-grid,.project-process-track{grid-template-columns:repeat(2,1fr);gap:15px}.product-image-mosaic{grid-template-columns:repeat(3,1fr)}.dialog-layout-detailed{grid-template-columns:1fr!important}.dialog-visual{min-height:360px!important}.download-grid,.guide-grid{grid-template-columns:1fr}.support-grid{grid-template-columns:1fr}.support-card{min-height:300px}.support-card h2{margin-top:45px}}
@media(max-width:680px){.featured-products-section,.why-ostroluxx-section,.project-process-section,.home-resources-section,.product-image-showcase{padding:90px 20px}.featured-product-grid{grid-template-rows:520px 340px 340px}.fp-copy{max-width:88%;padding:28px}.featured-product-card img{right:-15%;width:85%;height:62%}.featured-product-card:not(.fp-large) img{right:-18%;width:78%}.light-lab-copy{padding:80px 22px}.light-lab-scene{min-height:480px}.lab-wall{inset:20% 5% 10%}.why-ostroluxx-grid,.project-process-track,.resource-card-grid{grid-template-columns:1fr}.project-process-track{border-top:0}.process-step{padding:25px;border-top:1px solid #cfc4bb}.process-step::before{display:none}.product-image-mosaic{grid-template-columns:repeat(2,1fr)}.image-mosaic-card{min-height:270px}.image-mosaic-card img{height:220px}.dialog-layout-detailed{display:block!important}.dialog-visual-panel{min-height:330px}.dialog-visual{min-height:280px!important}.dialog-specs-expanded{grid-template-columns:1fr!important}.dialog-related>div{flex-direction:column}.product-shortlist{right:10px;bottom:10px;left:10px;justify-content:space-between}.product-shortlist .button{max-width:145px}.download-card{min-height:490px;padding:27px}.download-card h3,.download-card p{max-width:80%}.download-card img{right:-15%;width:75%;height:55%}.resource-list-item{grid-template-columns:40px 1fr}.resource-list-item>a{grid-column:2}.guide-grid{grid-template-columns:1fr}.rapidbizz-credit{order:3;width:100%}}


/* ===== V4 carousel controls, individual product renders, legal pages and deeper 3D lighting ===== */
.lineup-head{position:relative}.lineup-head .scroll-rail-controls{margin-top:28px}.scroll-rail-controls{display:flex;align-items:center;gap:12px}.scroll-arrow{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;border:1px solid rgba(74,52,41,.18);border-radius:50%;color:var(--brand-brown-dark);background:rgba(255,255,255,.86);box-shadow:0 8px 22px rgba(65,42,31,.08);cursor:pointer;transition:transform .25s ease,background .25s ease,color .25s ease,opacity .25s ease}.scroll-arrow svg{width:21px}.scroll-arrow:hover:not(:disabled){color:#fff;background:var(--brand-green);transform:translateY(-2px)}.scroll-arrow:disabled{cursor:not-allowed;opacity:.35}.scroll-rail-meter{position:relative;width:120px;height:3px;overflow:hidden;border-radius:999px;background:rgba(74,52,41,.13)}.scroll-rail-meter i{position:absolute;inset:0;background:linear-gradient(90deg,var(--brand-brown),var(--brand-green));transform:scaleX(.08);transform-origin:left;transition:transform .15s linear}.category-rail-controls{width:min(calc(100% - 48px),var(--max));justify-content:flex-end;margin:36px auto -25px}.card-scroller,.category-rail{scroll-behavior:smooth;overscroll-behavior-inline:contain}

.immersive-3d-section{display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:60px;min-height:820px;padding:120px max(24px,calc((100vw - var(--max))/2));overflow:hidden;color:#f7f3ef;background:radial-gradient(circle at 78% 55%,rgba(123,175,61,.2),transparent 25%),linear-gradient(145deg,#19110e,#302117 52%,#111)}.immersive-3d-copy{position:relative;z-index:3}.immersive-3d-copy .section-title{margin-top:14px}.immersive-3d-copy .body-large{margin-top:22px;color:#c8c0ba}.immersive-3d-copy .button-light-outline{border-color:rgba(255,255,255,.25);color:#fff;background:transparent}.immersive-3d-stage{--stage-rx:0deg;--stage-ry:0deg;--stage-x:0px;--stage-y:0px;position:relative;min-height:600px;perspective:1200px;transform-style:preserve-3d}.stage-grid{position:absolute;inset:8% 2%;border:1px solid rgba(255,255,255,.08);border-radius:40px;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px;transform:rotateX(67deg) translateY(155px) scale(.9);mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 70%,transparent)}.stage-halo{position:absolute;top:20%;left:50%;width:64%;aspect-ratio:1;border-radius:50%;background:rgba(123,175,61,.18);filter:blur(65px);transform:translateX(-50%)}.stage-orbit{position:absolute;top:10%;left:50%;width:76%;aspect-ratio:1;border:1px solid rgba(255,255,255,.11);border-radius:50%;transform-style:preserve-3d}.stage-orbit-a{animation:stageOrbitA 14s linear infinite;transform:translateX(-50%) rotateX(68deg) rotateZ(0)}.stage-orbit-b{width:55%;top:20%;animation:stageOrbitB 11s linear infinite reverse;transform:translateX(-50%) rotateY(62deg) rotateZ(0)}.stage-product{position:absolute;width:45%;aspect-ratio:4/3;border:1px solid rgba(255,255,255,.13);border-radius:28px;background:rgba(255,255,255,.07);box-shadow:0 35px 80px rgba(0,0,0,.38);backdrop-filter:blur(15px);transform-style:preserve-3d;transition:transform .25s ease;animation:stageFloat 5.5s ease-in-out infinite alternate}.stage-product img{width:100%;height:100%;border-radius:27px;object-fit:cover}.stage-product-a{z-index:3;top:17%;left:28%;transform:translate3d(var(--stage-x),var(--stage-y),120px) rotateX(var(--stage-rx)) rotateY(var(--stage-ry)) rotateZ(-5deg)}.stage-product-b{z-index:2;top:47%;left:3%;width:38%;animation-delay:-2.1s;transform:translate3d(calc(var(--stage-x)*-.45),calc(var(--stage-y)*-.3),30px) rotateX(var(--stage-rx)) rotateY(var(--stage-ry)) rotateZ(9deg)}.stage-product-c{z-index:2;top:49%;right:0;width:37%;animation-delay:-3.3s;transform:translate3d(calc(var(--stage-x)*.5),calc(var(--stage-y)*-.35),45px) rotateX(var(--stage-rx)) rotateY(var(--stage-ry)) rotateZ(-8deg)}.stage-light-beam{position:absolute;z-index:1;top:22%;left:50%;width:240px;height:490px;background:linear-gradient(to bottom,rgba(168,213,111,.3),rgba(123,175,61,0));clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);filter:blur(4px);transform:translateX(-50%);animation:beamBreathe 3.6s ease-in-out infinite alternate}.stage-caption{position:absolute;right:3%;bottom:1%;color:#a8a09b;font-size:11px;letter-spacing:.08em;text-transform:uppercase}@keyframes stageOrbitA{to{transform:translateX(-50%) rotateX(68deg) rotateZ(360deg)}}@keyframes stageOrbitB{to{transform:translateX(-50%) rotateY(62deg) rotateZ(360deg)}}@keyframes stageFloat{to{translate:0 -12px}}@keyframes beamBreathe{to{opacity:.45;transform:translateX(-50%) scaleX(1.18)}}

.product-card-art{perspective:900px;isolation:isolate}.product-card-art::after{position:absolute;inset:auto 10% 8%;height:16%;border-radius:50%;background:rgba(123,175,61,.16);filter:blur(22px);content:""}.product-card-art img{position:relative;z-index:2;transition:transform .65s var(--ease),filter .65s var(--ease);transform-style:preserve-3d}.detailed-product-card:hover .product-card-art img{filter:drop-shadow(0 35px 28px rgba(57,37,28,.24));transform:perspective(850px) rotateX(4deg) rotateY(-8deg) translateY(-9px) scale(1.045)}.dialog-product-turntable{display:grid;width:100%;height:100%;place-items:center;perspective:1000px}.dialog-product-turntable img{transform:rotateX(var(--turn-x,0deg)) rotateY(var(--turn-y,0deg));transition:transform .18s ease;animation:dialogTurntableFloat 4.8s ease-in-out infinite alternate}@keyframes dialogTurntableFloat{to{translate:0 -10px}}.dialog-overview-copy{padding:16px;border-radius:15px;background:linear-gradient(135deg,#f7f3ef,#eaf4df);color:#5f5651;font-size:14px;line-height:1.55}.dialog-overview-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.dialog-overview-tags span{padding:6px 9px;border-radius:999px;color:#0b100c;background:#fff;font-size:11px;font-weight:700}.dialog-performance-grid div{min-height:105px}.dialog-spec-wide{grid-column:span 2}.dialog-specification-notes{display:grid;gap:9px}.dialog-specification-notes div{display:flex;gap:9px;padding:11px 12px;border-radius:11px;background:#f7f5f2;font-size:13px;line-height:1.45}.dialog-specification-notes i{display:grid;flex:0 0 20px;width:20px;height:20px;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-style:normal;font-size:11px}.dialog-care-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.dialog-care-grid>div{padding:14px;border:1px solid #e1d9d3;border-radius:13px}.dialog-care-grid span{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.dialog-care-grid p{margin-top:7px;color:#716a65;font-size:12px;line-height:1.5}.dialog-document-request{display:grid!important;grid-template-columns:20px 1fr auto;align-items:center;gap:10px;padding:12px 13px;border-radius:12px;color:inherit;background:#f7f5f2;font-size:13px;line-height:1.4}.dialog-document-request i{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-style:normal}.dialog-document-request b{color:var(--brand-green-dark);font-size:11px}.dialog-related button{display:flex!important;align-items:center;gap:8px}.dialog-related button img{width:46px;height:42px;object-fit:cover;border-radius:7px}.dialog-related button span{min-width:0}.dialog-related button code{max-width:115px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.legal-hero{padding:170px 24px 90px;color:#f7f3ef;background:radial-gradient(circle at 80% 45%,rgba(123,175,61,.17),transparent 25%),linear-gradient(145deg,#020403,#36251c)}.legal-hero-inner{width:min(100%,1000px);margin:auto}.legal-hero .display-title{max-width:890px;margin-top:14px;font-size:clamp(54px,8vw,100px)}.legal-hero p{max-width:760px;margin-top:24px;color:#c8c0ba;font-size:clamp(19px,2vw,25px);line-height:1.42}.legal-date{display:inline-flex;margin-top:28px;padding:8px 12px;border:1px solid rgba(255,255,255,.15);border-radius:999px;color:#d5cec9;font-size:12px}.legal-content{padding:90px 24px 130px;background:var(--brand-cream)}.legal-layout{display:grid;width:min(100%,1120px);grid-template-columns:260px 1fr;align-items:start;gap:70px;margin:auto}.legal-toc{position:sticky;top:120px;display:grid;gap:5px;padding:22px;border:1px solid rgba(74,52,41,.1);border-radius:20px;background:rgba(255,255,255,.75)}.legal-toc strong{margin-bottom:9px;color:var(--brand-brown-dark);font-size:13px}.legal-toc a{padding:7px 8px;border-radius:8px;color:#6f625b;font-size:12px;line-height:1.3}.legal-toc a:hover{color:#fff;background:var(--brand-green)}.legal-article{display:grid;gap:18px}.legal-notice{padding:22px;border-left:4px solid var(--brand-green);border-radius:0 16px 16px 0;background:#fff}.legal-notice strong{font-size:17px}.legal-notice p{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.55}.legal-section{padding:30px 32px;border:1px solid rgba(74,52,41,.09);border-radius:20px;background:#fff;scroll-margin-top:110px}.legal-section h2{color:var(--brand-brown-dark);font-size:23px;letter-spacing:-.025em}.legal-section p{margin-top:12px;color:#665c56;font-size:15px;line-height:1.72}

@media(max-width:1000px){.immersive-3d-section{grid-template-columns:1fr;padding-block:95px}.immersive-3d-stage{min-height:620px}.legal-layout{grid-template-columns:1fr}.legal-toc{position:relative;top:auto;grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.lineup-head .scroll-rail-controls{margin-top:22px}.scroll-arrow{width:44px;height:44px;flex-basis:44px}.scroll-rail-meter{width:90px}.category-rail-controls{width:calc(100% - 40px);margin-top:28px}.immersive-3d-section{padding:85px 20px}.immersive-3d-stage{min-height:500px}.stage-product-a{top:17%;left:20%;width:60%}.stage-product-b{top:53%;left:0;width:47%}.stage-product-c{top:54%;right:-2%;width:46%}.stage-grid{inset:8% -20%}.stage-caption{display:none}.dialog-tab-list{overflow-x:auto;white-space:nowrap}.dialog-spec-wide{grid-column:auto}.dialog-care-grid{grid-template-columns:1fr}.legal-hero{padding:135px 22px 75px}.legal-content{padding:70px 20px 100px}.legal-toc{grid-template-columns:1fr}.legal-section{padding:24px 21px}.legal-section h2{font-size:20px}}


/* =========================================================
   V5 — enhanced product intelligence, functional contact UX,
   SEO product pages and performance refinements
   ========================================================= */
:root{--focus-ring:0 0 0 4px rgba(123,175,61,.24);--success:#327a38;--error:#a12f2f}
:focus-visible{outline:2px solid var(--brand-green,#7baf3d);outline-offset:3px}
main>section:not(.home-hero):not(.page-hero):not(.products-hero):not(.contact-hero){content-visibility:auto;contain-intrinsic-size:800px}
img{height:auto}
.site-header::after{will-change:transform}

/* Product modal V5 */
.product-dialog-v5{width:min(1280px,calc(100% - 24px));height:min(920px,calc(100vh - 24px));max-height:none;overflow:hidden;border-radius:28px}
.product-dialog-v5::backdrop{background:rgba(20,13,10,.84);backdrop-filter:blur(13px)}
.dialog-topbar{position:relative;z-index:8;display:flex;height:64px;align-items:center;justify-content:space-between;padding:0 18px 0 24px;border-bottom:1px solid rgba(74,52,41,.1);background:rgba(255,255,255,.94);backdrop-filter:blur(18px)}
.dialog-breadcrumb{display:flex;align-items:center;gap:10px;color:#786b64;font-size:12px}.dialog-breadcrumb b{color:#b5aaa4}.dialog-top-actions{display:flex;gap:7px}.dialog-icon-button{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(74,52,41,.12);border-radius:50%;color:var(--brand-brown-dark);background:#fff;cursor:pointer;transition:.2s ease}.dialog-icon-button:hover{color:#fff;background:var(--brand-green);transform:translateY(-1px)}.dialog-icon-button svg{width:18px}.dialog-icon-button.confirmed::after{position:absolute;content:'Link copied';transform:translateY(37px);padding:5px 8px;border-radius:7px;color:#fff;background:#2b211d;font-size:10px;white-space:nowrap}
.dialog-layout-v5{grid-template-columns:minmax(390px,.88fr) minmax(520px,1.12fr);height:calc(100% - 64px);min-height:0}
.dialog-visual-panel{display:flex;min-height:0;flex-direction:column;overflow:hidden;background:linear-gradient(145deg,#0d140f,#020403)}
.dialog-visual-panel .dialog-visual{flex:1;min-height:410px;background:radial-gradient(circle at 50% 46%,rgba(123,175,61,.24),transparent 28%),linear-gradient(145deg,#0d140f,#020403)}
.dialog-visual{--dialog-zoom:1}.dialog-visual .dialog-product-turntable{transform:scale(var(--dialog-zoom));transition:transform .25s ease}.dialog-visual.auto-rotate .dialog-product-turntable img{animation:productAutoRotate 5s linear infinite}.dialog-visual img{width:76%;height:76%;object-fit:contain;filter:drop-shadow(0 30px 28px rgba(0,0,0,.35))}@keyframes productAutoRotate{0%{transform:rotateY(0deg) translateY(0)}50%{transform:rotateY(180deg) translateY(-8px)}100%{transform:rotateY(360deg) translateY(0)}}
.dialog-view-controls{display:flex;justify-content:center;gap:7px;padding:12px 15px;border-top:1px solid rgba(255,255,255,.09)}.dialog-view-controls button{min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#e9e3df;background:rgba(255,255,255,.07);cursor:pointer;font-size:11px}.dialog-view-controls button:hover{border-color:var(--brand-green);background:rgba(123,175,61,.18)}
.dialog-visual-panel .dialog-gallery{display:flex;gap:8px;overflow-x:auto;padding:11px 16px}.dialog-gallery button{flex:0 0 68px;height:58px;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:rgba(255,255,255,.06);cursor:pointer}.dialog-gallery button.active{border-color:var(--brand-green);box-shadow:0 0 0 2px rgba(123,175,61,.18)}.dialog-gallery img{width:100%;height:100%;object-fit:cover;border-radius:9px}
.dialog-visual-note{padding:0 18px 16px!important;color:#afa5a0!important;font-size:10px!important;line-height:1.45!important}
.dialog-content{min-height:0;overflow-y:auto;padding:34px 42px 120px}.dialog-content h2{font-size:clamp(36px,4vw,56px)}.dialog-code-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:13px}.dialog-code-row code{margin:0}.dialog-code-row span{padding:7px 10px;border-radius:999px;color:#3f5d26;background:#edf5e6;font-size:11px;font-weight:750}.dialog-lead{margin-top:17px!important}.dialog-quick-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:22px}.dialog-quick-specs div{min-width:0;padding:13px;border:1px solid #e8e0da;border-radius:12px;background:#fbfaf8}.dialog-quick-specs span{display:block;color:#897c75;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.dialog-quick-specs strong{display:block;overflow:hidden;margin-top:5px;font-size:12px;line-height:1.35;text-overflow:ellipsis}
.dialog-tab-list{position:sticky;z-index:5;top:-34px;display:flex;gap:4px;overflow-x:auto;margin:26px -4px 0;padding:9px 4px;border-bottom:1px solid #e9e1db;background:rgba(255,255,255,.95);backdrop-filter:blur(14px)}.dialog-tab{flex:0 0 auto;min-height:38px;padding:0 13px;border:0;border-radius:999px;color:#6f625b;background:transparent;cursor:pointer;font-size:12px;font-weight:700}.dialog-tab.active{color:#fff;background:var(--brand-brown-dark)}.dialog-tab-panel{padding-top:22px}.dialog-tab-panel[hidden]{display:none!important}.dialog-status-card{margin-top:18px;padding:16px;border-left:4px solid var(--brand-green);border-radius:0 13px 13px 0;background:#f3f7ef}.dialog-status-card strong{font-size:12px}.dialog-status-card p{margin-top:5px;color:#675f5a;font-size:12px;line-height:1.48}.dialog-specs{margin-top:0}.dialog-specs div{background:#fbfaf8}.dialog-action-bar{position:sticky;z-index:6;bottom:-120px;display:grid;grid-template-columns:repeat(2,auto) 1fr auto;gap:8px;margin:30px -42px -120px;padding:14px 42px;border-top:1px solid #e8e0da;background:rgba(255,255,255,.96);backdrop-filter:blur(16px)}.dialog-action-bar .button{min-height:43px;padding-inline:15px;white-space:nowrap}
.product-configurator{padding:20px;border:1px solid #e5ddd7;border-radius:17px;background:linear-gradient(145deg,#fbfaf8,#f1f7ec)}.configurator-intro strong{font-size:18px}.configurator-intro p{margin-top:6px;color:#746a65;font-size:13px;line-height:1.45}.configurator-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}.configurator-grid label,.configurator-notes{display:grid;gap:7px;color:#574c46;font-size:11px;font-weight:750}.configurator-grid input,.configurator-grid select,.configurator-notes textarea{width:100%;border:1px solid #d8cec7;border-radius:11px;outline:none;background:#fff;padding:11px 12px;font-size:13px;font-weight:500}.configurator-grid input:focus,.configurator-grid select:focus,.configurator-notes textarea:focus{border-color:var(--brand-green);box-shadow:var(--focus-ring)}.configurator-notes{margin-top:12px}.configurator-notes textarea{min-height:90px;resize:vertical}.product-configurator .button{margin-top:15px}
.product-card-seo-link{position:absolute;right:14px;bottom:14px;z-index:3;padding:6px 9px;border-radius:999px;color:#4e6740;background:rgba(255,255,255,.88);font-size:9px;font-weight:750;opacity:0;transition:opacity .2s ease}.detailed-product-card:hover .product-card-seo-link,.product-card-seo-link:focus-visible{opacity:1}

/* Contact V5 */
.contact-hero{position:relative;display:grid;min-height:720px;place-items:center;overflow:hidden;padding:calc(var(--nav-height) + 85px) 24px 80px;color:#f7f3ef;background:radial-gradient(circle at 79% 45%,rgba(123,175,61,.18),transparent 25%),linear-gradient(145deg,#020403,#34231a);isolation:isolate}.contact-hero-copy{position:relative;z-index:3;width:min(100%,1030px);margin-right:auto;margin-left:max(24px,calc((100vw - var(--max))/2));text-align:left}.contact-hero h1{max-width:950px;margin-top:16px;font-size:clamp(54px,8vw,102px)}.contact-hero p{max-width:750px;margin-top:26px;color:#c9c0ba;font-size:clamp(20px,2.1vw,27px);line-height:1.38}.contact-response-strip{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}.contact-response-strip span{display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:#d8d0cb;font-size:12px}.contact-response-strip b{display:grid;width:23px;height:23px;place-items:center;border-radius:50%;color:#fff;background:var(--brand-green);font-size:9px}.contact-light-object{position:absolute;right:4%;bottom:-11%;width:min(540px,47vw);aspect-ratio:1}.contact-light-object i{position:absolute;inset:12%;border:58px solid rgba(147,107,84,.75);border-radius:50%;box-shadow:inset 0 0 0 7px rgba(255,255,255,.16),0 0 90px rgba(123,175,61,.16);animation:contactOrbit 16s linear infinite}.contact-light-object span{position:absolute;inset:29%;border-radius:50%;background:radial-gradient(circle,#fff,#eaf4df 26%,#7baf3d 62%,#3b2416);box-shadow:0 0 90px rgba(123,175,61,.45);animation:lightPulse 3s ease-in-out infinite alternate}@keyframes contactOrbit{to{transform:rotate(360deg)}}
.contact-workspace{padding:115px 24px;background:var(--brand-cream,#f4efe9)}.contact-workspace-grid{display:grid;width:min(100%,var(--max));grid-template-columns:.72fr 1.28fr;align-items:start;gap:55px;margin:auto}.contact-sidebar{position:sticky;top:115px}.contact-sidebar h2{max-width:480px;margin-top:13px;font-size:clamp(36px,4.4vw,56px);letter-spacing:-.055em;line-height:1}.contact-route{display:block;margin-top:12px;padding:21px;border:1px solid rgba(74,52,41,.1);border-radius:18px;background:rgba(255,255,255,.82);transition:.25s ease}.contact-route:hover{border-color:rgba(123,175,61,.45);transform:translateY(-2px)}.contact-route span{display:block;color:var(--brand-green-dark);font-size:11px;font-weight:750;text-transform:uppercase}.contact-route strong{display:block;margin-top:6px;font-size:17px}.contact-route small{display:block;margin-top:6px;color:#776b65;font-size:12px;line-height:1.4}.contact-service-note{margin-top:18px;padding:22px;border-radius:18px;color:#eee7e1;background:var(--brand-brown-dark)}.contact-service-note strong{font-size:15px}.contact-service-note ul{display:grid;gap:8px;margin:13px 0 0 18px;color:#cfc5bf;font-size:13px}.contact-privacy-note{margin-top:17px;color:#71665f;font-size:12px;line-height:1.5}.contact-privacy-note a{color:var(--brand-green-dark);text-decoration:underline}
.contact-form-shell{overflow:hidden;border:1px solid rgba(74,52,41,.1);border-radius:28px;background:#fff;box-shadow:0 24px 70px rgba(71,46,35,.11)}.contact-form-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;padding:32px 36px 24px}.contact-form-heading span{color:var(--brand-green-dark);font-size:12px;font-weight:750}.contact-form-heading h2{margin-top:7px;font-size:clamp(29px,3.5vw,44px);letter-spacing:-.045em}.form-completion{text-align:right}.form-completion strong{display:block;color:var(--brand-brown-dark);font-size:23px}.form-completion span{color:#8a7f78;font-size:10px;text-transform:uppercase}.form-progress-track{height:4px;background:#eee8e4}.form-progress-track i{display:block;width:33%;height:100%;background:linear-gradient(90deg,var(--brand-brown),var(--brand-green));transition:width .3s ease}.contact-form-pro{position:relative;padding:31px 36px 36px}.form-honeypot{position:absolute!important;left:-9999px!important}.form-step{animation:formStepIn .35s ease}.form-step[hidden]{display:none}.form-step-head{margin-bottom:25px}.form-step-head>span{color:var(--brand-green-dark);font-size:11px;font-weight:750;text-transform:uppercase}.form-step-head h3{margin-top:7px;font-size:26px;letter-spacing:-.035em}.form-step-head p{margin-top:7px;color:#7c716b;font-size:13px}.contact-form-pro .field{gap:7px}.contact-form-pro .field>span{font-size:12px;font-weight:700}.contact-form-pro input,.contact-form-pro textarea,.contact-form-pro select{width:100%;border:1px solid #d8cec8;border-radius:12px;outline:none;background:#fbfaf8;padding:13px 14px;font-size:14px;transition:.2s ease}.contact-form-pro textarea{min-height:118px;resize:vertical}.contact-form-pro input:focus,.contact-form-pro textarea:focus,.contact-form-pro select:focus{border-color:var(--brand-green);background:#fff;box-shadow:var(--focus-ring)}.contact-form-pro [aria-invalid="true"]{border-color:var(--error);box-shadow:0 0 0 3px rgba(161,47,47,.12)}.field-error{min-height:15px;color:var(--error);font-size:10px}.file-drop{display:grid;min-height:150px;place-items:center;margin-top:16px;padding:22px;border:1px dashed #c6b9b1;border-radius:16px;background:#fbfaf8;text-align:center;cursor:pointer;transition:.2s ease}.file-drop:hover{border-color:var(--brand-green);background:#fcf7ea}.file-drop input{position:absolute;width:1px;height:1px;opacity:0}.file-drop-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;color:#fff;background:var(--brand-green);font-size:21px}.file-drop strong{margin-top:10px;font-size:14px}.file-drop small{margin-top:5px;color:#877b74;font-size:11px}.consent-field{display:flex;align-items:flex-start;gap:10px;margin-top:17px;color:#675e59;font-size:12px;line-height:1.45}.consent-field input{width:18px;height:18px;flex:0 0 18px;margin-top:1px;accent-color:var(--brand-green)}.consent-field a{color:var(--brand-green-dark);text-decoration:underline}.consent-field.optional{margin-top:10px}.form-navigation{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.submit-button{min-width:170px}.submit-button i{display:none;width:16px;height:16px;border:2px solid rgba(0,0,0,.22);border-top-color:#050805;border-radius:50%;animation:spin .75s linear infinite}.submit-button.is-loading i{display:block}.form-status{margin-top:18px}.form-status.error{color:#7b2020;background:#faeaea}.form-status.success{color:#205d27;background:#e9f7ed}.contact-success{padding:70px 42px;text-align:center}.success-icon{display:grid;width:72px;height:72px;place-items:center;margin:auto;border-radius:50%;color:#fff;background:var(--brand-green);font-size:34px;box-shadow:0 15px 35px rgba(123,175,61,.25)}.contact-success h2{max-width:660px;margin:25px auto 0;font-size:clamp(34px,4.5vw,54px);letter-spacing:-.05em}.contact-success p{max-width:610px;margin:16px auto 0;color:#766b65;font-size:16px;line-height:1.5}.contact-success .actions{justify-content:center}.contact-assurance{padding:0 24px 110px;background:var(--brand-cream)}.contact-assurance-grid{display:grid;width:min(100%,var(--max));grid-template-columns:repeat(3,1fr);gap:14px;margin:auto}.contact-assurance article{padding:29px;border-radius:20px;background:#fff}.contact-assurance article>span{color:var(--brand-green-dark);font-size:12px;font-weight:750}.contact-assurance h3{margin-top:28px;font-size:21px}.contact-assurance p{margin-top:9px;color:#766b65;font-size:14px;line-height:1.48}@keyframes formStepIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}

/* SEO product detail pages */
.product-page-hero{padding:calc(var(--nav-height) + 65px) 24px 70px;background:linear-gradient(145deg,#f8f4ef,#edf5e8)}.product-page-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;width:min(100%,var(--max));margin:0 auto 36px;color:#776a63;font-size:12px}.product-page-breadcrumb a:hover{color:var(--brand-green-dark)}.product-page-grid{display:grid;width:min(100%,var(--max));grid-template-columns:1fr 1fr;align-items:center;gap:65px;margin:auto}.product-page-visual{position:relative;display:grid;min-height:580px;place-items:center;overflow:hidden;border-radius:30px;background:radial-gradient(circle at 50% 50%,rgba(123,175,61,.22),transparent 30%),linear-gradient(145deg,#0d140f,#020403)}.product-page-visual img{position:relative;z-index:2;width:78%;height:78%;object-fit:contain;filter:drop-shadow(0 40px 32px rgba(0,0,0,.34));animation:dialogProductFloat 4.8s ease-in-out infinite alternate}.product-page-visual::after{position:absolute;left:50%;bottom:-80px;width:420px;height:390px;background:linear-gradient(to bottom,rgba(168,213,111,.22),transparent);clip-path:polygon(40% 0,60% 0,100% 100%,0 100%);content:"";transform:translateX(-50%)}.product-page-copy .eyebrow{font-size:13px}.product-page-copy h1{margin-top:12px;font-size:clamp(45px,6vw,78px);font-weight:750;letter-spacing:-.065em;line-height:.96}.product-page-code{display:inline-flex;margin-top:17px;padding:8px 11px;border-radius:8px;color:var(--brand-brown-dark);background:#fff;font-size:13px}.product-page-copy>p{margin-top:22px;color:#6f655f;font-size:19px;line-height:1.5}.product-page-quick{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:25px}.product-page-quick div{padding:15px;border:1px solid rgba(74,52,41,.1);border-radius:13px;background:rgba(255,255,255,.75)}.product-page-quick span{display:block;color:#8b7f78;font-size:10px;font-weight:750;text-transform:uppercase}.product-page-quick strong{display:block;margin-top:6px;font-size:13px;line-height:1.35}.product-page-sections{padding:105px 24px;background:#fff}.product-page-section-inner{width:min(100%,var(--max));margin:auto}.product-page-section-head{max-width:850px}.product-page-section-head h2{font-size:clamp(40px,5.4vw,66px);letter-spacing:-.055em}.product-page-section-head p{margin-top:17px;color:#706660;font-size:18px;line-height:1.5}.product-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:43px}.product-feature-grid article{padding:28px;border-radius:20px;background:#f7f3ef}.product-feature-grid span{color:var(--brand-green-dark);font-size:11px;font-weight:750}.product-feature-grid h3{margin-top:25px;font-size:21px}.product-feature-grid p{margin-top:8px;color:#716760;font-size:14px;line-height:1.48}.product-tech-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;margin-top:50px}.product-tech-table{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.product-tech-table div{padding:18px;border:1px solid #e4dcd6;border-radius:14px}.product-tech-table span{display:block;color:#897d76;font-size:10px;text-transform:uppercase}.product-tech-table strong{display:block;margin-top:7px;font-size:14px;line-height:1.4}.product-page-enquiry{padding:34px;border-radius:24px;color:#eee7e2;background:var(--brand-brown-dark)}.product-page-enquiry h3{font-size:29px;letter-spacing:-.04em}.product-page-enquiry p{margin-top:12px;color:#cfc4bd;font-size:14px;line-height:1.5}.product-page-enquiry .button{margin-top:20px}.product-page-apps{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.product-page-apps span{padding:9px 12px;border-radius:999px;color:#0b100c;background:#eaf4df;font-size:12px;font-weight:700}.related-product-pages{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:38px}.related-product-page{overflow:hidden;border:1px solid #e3dad4;border-radius:18px;background:#fff}.related-product-page img{width:100%;height:210px;object-fit:cover;background:#221813}.related-product-page div{padding:18px}.related-product-page small{color:var(--brand-green-dark);font-weight:700}.related-product-page h3{margin-top:6px;font-size:18px}.related-product-page code{display:block;margin-top:7px;color:#7b6f68;font-size:10px}

@media(max-width:1080px){.dialog-layout-v5{grid-template-columns:.82fr 1.18fr}.dialog-content{padding-inline:30px}.dialog-action-bar{margin-inline:-30px;padding-inline:30px}.dialog-quick-specs{grid-template-columns:repeat(2,1fr)}.contact-workspace-grid{grid-template-columns:1fr}.contact-sidebar{position:relative;top:auto}.product-page-grid{grid-template-columns:1fr}.product-page-visual{min-height:500px}.product-tech-layout{grid-template-columns:1fr}}
@media(max-width:760px){.product-dialog-v5{width:100%;height:100%;max-height:100%;border-radius:0}.dialog-topbar{height:58px;padding-inline:15px}.dialog-layout-v5{display:block;height:calc(100% - 58px);overflow-y:auto}.dialog-visual-panel{min-height:480px}.dialog-visual-panel .dialog-visual{min-height:350px}.dialog-content{overflow:visible;padding:28px 20px 100px}.dialog-action-bar{grid-template-columns:1fr 1fr;bottom:-100px;margin:25px -20px -100px;padding:12px 20px}.dialog-tab-list{top:0}.configurator-grid{grid-template-columns:1fr}.contact-hero{min-height:670px;padding-top:135px}.contact-hero-copy{margin-left:0}.contact-hero h1{font-size:52px}.contact-light-object{right:-20%;bottom:-5%;width:500px;opacity:.45}.contact-workspace{padding:80px 18px}.contact-form-heading{padding:26px 22px 19px}.contact-form-pro{padding:25px 22px 28px}.form-row{grid-template-columns:1fr}.contact-assurance-grid{grid-template-columns:1fr}.product-page-hero{padding-inline:18px}.product-page-visual{min-height:420px}.product-feature-grid,.related-product-pages{grid-template-columns:1fr}.product-tech-table{grid-template-columns:1fr}}
@media(max-width:520px){.dialog-breadcrumb{display:none}.dialog-topbar{justify-content:flex-end}.dialog-visual-panel{min-height:430px}.dialog-visual-panel .dialog-visual{min-height:300px}.dialog-quick-specs{grid-template-columns:1fr 1fr}.dialog-action-bar{grid-template-columns:1fr}.contact-response-strip{align-items:flex-start;flex-direction:column}.contact-form-heading{align-items:flex-start;flex-direction:column}.form-completion{text-align:left}.form-navigation{display:grid;grid-template-columns:1fr}.form-navigation .button{width:100%}.product-page-copy h1{font-size:44px}.product-page-quick{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.dialog-visual.auto-rotate .dialog-product-turntable img,.product-page-visual img{animation:none}.contact-light-object i,.contact-light-object span{animation:none}}

/* V5.1 form delivery diagnostics */
.form-status.error strong{display:block;margin-bottom:7px}
.form-email-fallback{display:inline-flex;margin-top:5px;color:#7b2d22;font-weight:750;text-decoration:underline;text-underline-offset:3px}
.form-email-fallback:hover{color:#3a1712}


/* ===== V6 premium product cards and footer social links ===== */
.detailed-product-grid{
  gap:24px;
  align-items:stretch;
}
.detailed-product-card{
  position:relative;
  display:flex;
  min-width:0;
  min-height:660px;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(79,112,42,.16);
  border-radius:30px;
  background:linear-gradient(180deg,#fff 0%,#fff 68%,#fbfaf8 100%);
  box-shadow:0 12px 34px rgba(62,42,32,.075);
  cursor:default;
  isolation:isolate;
  transition:transform .42s var(--ease),box-shadow .42s var(--ease),border-color .3s ease;
}
.detailed-product-card::before{
  position:absolute;
  z-index:4;
  top:0;
  right:18%;
  left:18%;
  height:3px;
  border-radius:0 0 10px 10px;
  background:linear-gradient(90deg,transparent,var(--green),transparent);
  opacity:0;
  content:"";
  transform:scaleX(.55);
  transition:opacity .3s ease,transform .4s var(--ease);
}
.detailed-product-card:hover{
  border-color:rgba(123,175,61,.58);
  box-shadow:0 28px 70px rgba(62,42,32,.16);
  transform:translateY(-9px);
}
.detailed-product-card:hover::before{opacity:1;transform:scaleX(1)}
.product-card-art{
  position:relative;
  display:grid;
  width:100%;
  height:315px!important;
  flex:0 0 auto;
  place-items:center;
  overflow:hidden;
  border:0;
  border-bottom:1px solid rgba(77,58,48,.08);
  border-radius:0;
  outline:none;
  background:
    radial-gradient(circle at 77% 23%,rgba(123,175,61,.13),transparent 27%),
    radial-gradient(circle at 16% 82%,rgba(147,107,84,.10),transparent 28%),
    linear-gradient(145deg,#fbf9f6 0%,#f1ece6 100%)!important;
  cursor:pointer;
  isolation:isolate;
}
.product-card-art::before{
  position:absolute;
  top:9%;
  right:7%;
  width:35%;
  aspect-ratio:1;
  border:1px solid rgba(123,175,61,.2);
  border-radius:50%;
  background:rgba(123,175,61,.045);
  clip-path:none;
  content:"";
  transform:none;
}
.product-card-art::after{
  position:absolute;
  right:18%;
  bottom:5%;
  left:18%;
  height:13%;
  border-radius:50%;
  background:rgba(63,47,39,.17);
  filter:blur(22px);
  content:"";
}
.product-card-art:focus-visible{
  box-shadow:inset 0 0 0 4px rgba(123,175,61,.65);
}
.product-card-art img{
  position:relative;
  z-index:2;
  width:91%;
  height:91%;
  object-fit:contain;
  filter:drop-shadow(0 25px 20px rgba(45,31,24,.19));
  transform-origin:center 58%;
  transition:transform .62s var(--ease),filter .62s var(--ease);
}
.detailed-product-card:hover .product-card-art img{
  filter:drop-shadow(0 35px 26px rgba(45,31,24,.24));
  transform:perspective(900px) rotateX(3deg) rotateY(-6deg) translateY(-8px) scale(1.045);
}
.product-card-visual-meta{
  position:absolute;
  z-index:4;
  top:16px;
  right:16px;
  left:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  pointer-events:none;
}
.product-image-badge{
  position:static;
  max-width:72%;
  overflow:hidden;
  padding:7px 11px;
  border:1px solid rgba(255,255,255,.68);
  border-radius:999px;
  color:#4e6740;
  background:rgba(255,255,255,.78);
  box-shadow:0 5px 18px rgba(50,34,27,.08);
  font-size:10px;
  font-weight:800;
  letter-spacing:.055em;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
  backdrop-filter:blur(12px);
}
.product-card-index{
  display:inline-grid;
  min-width:38px;
  height:29px;
  place-items:center;
  border-radius:999px;
  color:#766960;
  background:rgba(255,255,255,.78);
  box-shadow:0 5px 18px rgba(50,34,27,.07);
  font-size:11px;
  font-weight:800;
  backdrop-filter:blur(12px);
}
.product-card-image-action{
  position:absolute;
  z-index:4;
  right:50%;
  bottom:16px;
  display:inline-flex;
  min-height:38px;
  align-items:center;
  gap:8px;
  padding:0 15px;
  border-radius:999px;
  color:#fff;
  background:rgba(39,28,23,.88);
  box-shadow:0 10px 30px rgba(37,25,20,.18);
  font-size:12px;
  font-weight:750;
  opacity:0;
  transform:translate(50%,12px);
  transition:opacity .3s ease,transform .35s var(--ease),background .25s ease;
  backdrop-filter:blur(12px);
}
.product-card-image-action svg{width:17px}
.product-card-art:hover .product-card-image-action,.product-card-art:focus-visible .product-card-image-action{
  opacity:1;
  transform:translate(50%,0);
}
.product-card-shortlist-toggle{
  position:absolute;
  z-index:7;
  top:58px;
  right:17px;
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  border:1px solid rgba(255,255,255,.76);
  border-radius:50%;
  color:#624d42;
  background:rgba(255,255,255,.84);
  box-shadow:0 8px 25px rgba(48,32,25,.11);
  cursor:pointer;
  transition:color .25s ease,background .25s ease,transform .25s ease,border-color .25s ease;
  backdrop-filter:blur(12px);
}
.product-card-shortlist-toggle svg{width:18px}
.product-card-shortlist-toggle:hover{color:var(--green);transform:scale(1.08)}
.product-card-shortlist-toggle.active{
  border-color:var(--green);
  color:#fff;
  background:var(--green);
}
.product-card-shortlist-toggle.active svg{fill:currentColor}
.product-card-content{
  display:flex;
  min-width:0;
  flex:1;
  flex-direction:column;
  padding:27px 28px 25px;
}
.product-card-category{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--brand-green-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.product-card-category span:first-child{
  padding:6px 9px;
  border-radius:999px;
  background:#eef6e8;
}
.product-card-category span:last-child{
  max-width:44%;
  overflow:hidden;
  color:#998c84;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.product-card-content h3{
  margin-top:18px;
  color:#2e211b;
  font-size:29px;
  font-weight:750;
  letter-spacing:-.05em;
  line-height:1.04;
}
.product-code{
  display:block;
  max-width:100%;
  overflow:hidden;
  margin-top:11px;
  color:#82756d;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.product-card-content>p{
  min-height:44px;
  margin-top:13px;
  color:#756b65;
  font-size:15px;
  line-height:1.48;
}
.product-card-specs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:20px;
}
.product-card-specs div{
  min-width:0;
  padding:12px 10px;
  border:1px solid rgba(93,72,61,.08);
  border-radius:13px;
  background:linear-gradient(145deg,#f8f4f0,#f2eee9);
}
.product-card-specs span{
  display:block;
  color:#92857d;
  font-size:9px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.product-card-specs strong{
  display:block;
  overflow:hidden;
  margin-top:5px;
  color:#392b24;
  font-size:11px;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.product-card-installation{
  display:flex;
  min-width:0;
  align-items:center;
  gap:8px;
  margin-top:13px;
  color:#71675f;
  font-size:12px;
}
.product-card-installation svg{width:17px;flex:0 0 17px;color:var(--green)}
.product-card-installation span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.product-card-footer{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:12px;
  margin-top:auto;
  padding-top:22px;
  border-top:1px solid rgba(78,57,47,.10);
}
.product-card-details{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:0;
  border-radius:999px;
  color:#fff;
  background:#2f231d;
  cursor:pointer;
  font-size:13px;
  font-weight:750;
  transition:background .25s ease,transform .25s ease,box-shadow .25s ease;
}
.product-card-details svg{width:17px;transition:transform .25s ease}
.product-card-details:hover{
  background:var(--brand-green-dark);
  box-shadow:0 10px 24px rgba(68,99,36,.18);
  transform:translateY(-1px);
}
.product-card-details:hover svg{transform:translateX(3px)}
.product-card-page{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  gap:6px;
  padding:0 8px;
  color:#5d514a;
  font-size:12px;
  font-weight:750;
  white-space:nowrap;
}
.product-card-page:hover{color:var(--brand-green-dark);text-decoration:underline;text-underline-offset:4px}
.product-card-seo-link{display:none!important}

.footer-social-block{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:25px;
}
.footer-social-block>span{
  color:#d8d0ca;
  font-size:12px;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.footer-socials{display:flex;align-items:center;gap:9px}
.footer-socials a{
  display:grid;
  width:39px;
  height:39px;
  place-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;
  color:#ded7d2;
  background:rgba(255,255,255,.035);
  transition:color .25s ease,background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.footer-socials a svg{width:18px;height:18px}
.footer-socials a:hover{
  border-color:var(--green);
  color:#fff;
  background:var(--green);
  box-shadow:0 9px 24px rgba(123,175,61,.18);
  transform:translateY(-3px);
}
.footer-socials a:focus-visible{outline:3px solid rgba(123,175,61,.45);outline-offset:3px}

@media(max-width:1180px){
  .detailed-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .detailed-product-grid{grid-template-columns:1fr;gap:18px}
  .detailed-product-card{min-height:0;border-radius:25px}
  .product-card-art{height:300px!important}
  .product-card-content{padding:24px 22px 22px}
  .product-card-content h3{font-size:27px}
  .product-card-image-action{opacity:1;transform:translate(50%,0)}
  .footer-social-block{align-items:flex-start;flex-direction:column;gap:12px}
}
@media(max-width:430px){
  .product-card-art{height:270px!important}
  .product-card-specs{grid-template-columns:1fr 1fr}
  .product-card-specs div:last-child{grid-column:span 2}
  .product-card-footer{grid-template-columns:1fr}
  .product-card-page{justify-content:center}
}


/* ==========================================================
   OSTROLUXX V7 — BROWN + GOLD LIGHTING THEME
   ========================================================== */
:root{
  --black:#1b100b;
  --black-soft:#24160f;
  --surface:#050805;
  --surface-2:#38251b;
  --white:#ffffff;
  --paper:#f7f0e6;
  --paper-2:#fcf8f1;
  --text:#302019;
  --muted:#79685e;
  --muted-light:#b5a69b;
  --orange:#7baf3d;
  --orange-light:#a8d56f;
  --blue:#4f7d24;
  --line-dark:rgba(255,244,222,.16);
  --line:rgba(73,46,32,.14);
}

/* Main surfaces */
body{
  color:var(--text);
  background:#fcf8f1;
}
::selection{
  color:#2c1c14;
  background:#f2d88d;
}
.site-header{
  border-bottom-color:rgba(255,226,166,.13);
  background:rgba(42,26,18,.88);
}
.site-header.scrolled{
  background:rgba(35,21,14,.96);
  box-shadow:0 14px 42px rgba(46,27,17,.2);
}
.mobile-nav{
  background:rgba(34,20,13,.99);
}
.nav-list a::after{
  background:linear-gradient(90deg,#5d8a2b,#a8d56f);
}
.header-cta,
.mobile-nav .mobile-contact,
.button-primary{
  color:#2a1b13;
  background:linear-gradient(135deg,#e7bc55,#c99128);
  box-shadow:0 12px 32px rgba(184,126,30,.24);
}
.header-cta:hover,
.mobile-nav .mobile-contact:hover,
.button-primary:hover{
  background:linear-gradient(135deg,#f3d47f,#d9a73f);
}
.button-dark{
  background:#3b271d;
}
.button-dark:hover{
  background:#503526;
}
.button-light-outline{
  border-color:rgba(79,51,36,.25);
}

/* Dark cinematic areas */
.home-hero{
  background:
    radial-gradient(circle at 50% 55%,rgba(224,174,66,.21),transparent 19%),
    radial-gradient(circle at 50% 78%,rgba(139,88,36,.22),transparent 37%),
    linear-gradient(180deg,#24150e 0%,#130b08 100%);
}
.home-purpose,
.page-hero,
.content-section.dark,
.stats-band,
.compare{
  background:
    radial-gradient(circle at 50% 68%,rgba(123,175,61,.15),transparent 28%),
    linear-gradient(180deg,#26170f 0%,#160d09 100%);
}
.gradient-text{
  background:linear-gradient(90deg,#ffffff 4%,#cde8ad 42%,#7baf3d 73%,#f4f8f0 100%);
  -webkit-background-clip:text;
  background-clip:text;
}
.home-purpose h2 span,
.metric strong,
.stat strong{
  background:linear-gradient(90deg,#ffffff,#a8d56f,#5f9130);
  -webkit-background-clip:text;
  background-clip:text;
}
.hero-floor{
  background:linear-gradient(to bottom,transparent,#130b08 88%);
}

/* Light sections */
.home-intro,
.content-section,
.home-projects,
.applications{
  background:#fffdf9;
}
.content-section.soft,
.product-lineup,
.lineup,
.collection{
  background:#f7f0e6;
}
.value-card,
.tech-card,
.purpose-card,
.catalog-card,
.contact-card,
.contact-form,
.product-tile.light,
.product-card.light{
  background:#fffaf3;
}
.split-media.light{
  background:#fffaf3;
}

/* Product catalogue */
.catalog-card,
.product-card{
  border-color:rgba(145,96,51,.18);
  box-shadow:0 10px 30px rgba(78,47,29,.09);
}
.catalog-card:hover,
.product-card:hover{
  box-shadow:0 22px 54px rgba(88,52,28,.17);
}
.catalog-art,
.product-card-media,
.product-visual{
  background:
    radial-gradient(circle at 50% 48%,rgba(226,181,72,.17),transparent 33%),
    linear-gradient(145deg,#fbf3e6,#f1e3cf);
}
.filter-btn{
  border-color:#d8c5ad;
  color:#553a2a;
  background:#fffaf3;
}
.filter-btn:hover,
.filter-btn.active{
  border-color:#8f6028;
  color:#fffaf0;
  background:linear-gradient(135deg,#8a5a27,#bc862b);
}
.tile-copy small,
.catalog-info small,
.card-number,
.eyebrow,
.project-copy small,
.application-copy small,
.project-list-copy small{
  color:#a36f1f;
}
.text-link{
  color:#9b681c;
}
.text-link:hover{
  color:#6f4717;
}
.product-tile.warm{
  background:linear-gradient(160deg,#ffffff,#ecd4a7);
}
.product-tile.blue,
.product-card.blue{
  background:linear-gradient(160deg,#352217,#68491d);
}

/* Forms */
.field input,
.field textarea,
.field select{
  border-color:#d8c8b8;
  background:#fffdf9;
}
.field input:focus,
.field textarea:focus,
.field select:focus{
  border-color:#b67d24;
  box-shadow:0 0 0 4px rgba(123,175,61,.18);
}
.form-status{
  color:#6a4818;
  background:#fbefc7;
}

/* Footer */
.site-footer{
  color:#c8b8ac;
  background:#1b100b;
}
.footer-cta{
  border-bottom-color:rgba(255,234,193,.13);
  background:
    radial-gradient(circle at 82% 50%,rgba(123,175,61,.18),transparent 25%),
    linear-gradient(135deg,#2a1a12,#1a100b);
}
.footer-main,
.footer-bottom{
  border-color:rgba(255,235,198,.13);
}
.footer-col a:hover,
.footer-legal a:hover{
  color:#a8d56f;
}
.newsletter{
  border-bottom-color:rgba(168,213,111,.34);
}

/* Decorative glows and logo accent */
.logo-symbol::after{
  background:#7baf3d;
  box-shadow:0 0 14px rgba(123,175,61,.85);
}
.purpose-ring,
.closing-orb,
.page-orb{
  box-shadow:
    inset 0 0 0 5px rgba(154,104,47,.65),
    inset 0 0 34px rgba(255,242,208,.13),
    0 -12px 70px rgba(123,175,61,.23);
}
.purpose-ring::before,
.closing-orb::after,
.page-orb::after{
  background:radial-gradient(circle,#fffdf7 0%,#fff0c9 25%,#a8d56f 52%,#5f9130 74%,#4c2d17 100%);
  box-shadow:0 0 95px rgba(123,175,61,.4);
}

/* Social icon polish */
.social-link,
.footer-social a{
  border-color:rgba(168,213,111,.25);
  color:#f4dfb0;
  background:rgba(123,175,61,.07);
}
.social-link:hover,
.footer-social a:hover{
  color:#2b1b13;
  border-color:#a8d56f;
  background:#a8d56f;
  box-shadow:0 10px 28px rgba(123,175,61,.22);
}


/* ==========================================================
   OSTROLUXX V8 — DETAILED CONTENT + LIGHTING MOTION SYSTEM
   ========================================================== */
.v8-section{
  position:relative;
  overflow:hidden;
  padding:clamp(92px,10vw,150px) 24px;
  color:var(--text);
  background:#fffdf9;
  isolation:isolate;
}
.v8-section.v8-soft{background:#f7f0e6}
.v8-section.v8-dark{
  color:#fff8eb;
  background:
    radial-gradient(circle at 78% 18%,rgba(123,175,61,.13),transparent 25%),
    linear-gradient(180deg,#25170f,#160d09);
}
.v8-section::before{
  position:absolute;
  z-index:-1;
  top:-180px;
  right:-180px;
  width:480px;
  height:480px;
  border:1px solid rgba(123,175,61,.13);
  border-radius:50%;
  box-shadow:0 0 0 68px rgba(123,175,61,.025),0 0 0 136px rgba(123,175,61,.018);
  content:"";
  animation:v8-orbit-breathe 8s ease-in-out infinite;
}
.v8-section-inner{width:min(100%,var(--max));margin-inline:auto}
.v8-section-head{max-width:900px}
.v8-section-head.center{margin-inline:auto;text-align:center}
.v8-section-head .section-title{margin-top:14px}
.v8-section-head .body-large{margin-top:20px}
.v8-section-head.center .body-large{max-width:760px;margin-inline:auto}
.v8-dark .body-large,.v8-dark .v8-card p,.v8-dark .v8-timeline p{color:#b9aaa0}
.v8-kicker{
  display:inline-flex;
  align-items:center;
  gap:11px;
  color:#a56f1e;
  font-size:14px;
  font-weight:750;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.v8-kicker::before{width:30px;height:1px;background:currentColor;content:""}
.v8-dark .v8-kicker{color:#a8d56f}
.v8-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:54px;
}
.v8-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.v8-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.v8-card{
  position:relative;
  overflow:hidden;
  min-height:285px;
  padding:30px;
  border:1px solid rgba(115,72,39,.13);
  border-radius:26px;
  background:rgba(255,250,243,.9);
  box-shadow:0 12px 35px rgba(74,42,24,.07);
  transition:transform .45s var(--ease),border-color .35s ease,box-shadow .45s var(--ease);
}
.v8-dark .v8-card{
  border-color:rgba(168,213,111,.13);
  background:rgba(255,255,255,.045);
  box-shadow:none;
}
.v8-card::after{
  position:absolute;
  right:-55px;
  bottom:-75px;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(168,213,111,.23),transparent 68%);
  opacity:0;
  transform:scale(.7);
  content:"";
  transition:.45s var(--ease);
}
.v8-card:hover{
  border-color:rgba(180,124,36,.36);
  box-shadow:0 24px 55px rgba(80,45,23,.13);
  transform:translateY(-8px);
}
.v8-dark .v8-card:hover{box-shadow:0 22px 60px rgba(0,0,0,.25)}
.v8-card:hover::after{opacity:1;transform:scale(1)}
.v8-card-number{
  color:#b57a20;
  font-size:13px;
  font-weight:800;
  letter-spacing:.12em;
}
.v8-card-icon{
  display:grid;
  width:50px;
  height:50px;
  place-items:center;
  margin-top:34px;
  border-radius:50%;
  color:#3a2519;
  background:linear-gradient(135deg,#f5df9d,#c89531);
  box-shadow:0 9px 25px rgba(181,122,32,.2);
}
.v8-card-icon svg{width:23px}
.v8-card h3{margin-top:22px;font-size:22px;letter-spacing:-.035em;line-height:1.1}
.v8-card p{margin-top:10px;color:var(--muted);font-size:15px;line-height:1.48}
.v8-card ul{display:grid;gap:8px;margin-top:16px;padding-left:18px;color:var(--muted);font-size:14px;line-height:1.45}
.v8-dark .v8-card ul{color:#b9aaa0}

/* Animated lighting layers */
.v8-lighting-layers{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  align-items:center;
  gap:76px;
  margin-top:62px;
}
.v8-room-stage{
  position:relative;
  min-height:570px;
  overflow:hidden;
  border-radius:34px;
  background:
    linear-gradient(90deg,rgba(45,29,20,.94) 0 9%,transparent 9% 91%,rgba(45,29,20,.94) 91%),
    linear-gradient(180deg,#3b291e 0 62%,#24170f 62%);
  box-shadow:0 30px 80px rgba(65,38,21,.18);
  perspective:1000px;
}
.v8-room-stage::before{
  position:absolute;
  top:12%;
  right:10%;
  bottom:25%;
  left:10%;
  border:1px solid rgba(255,237,197,.11);
  background:linear-gradient(145deg,#2d2018,#493426);
  content:"";
}
.v8-room-floor{
  position:absolute;
  right:0;bottom:0;left:0;height:39%;
  background:linear-gradient(165deg,#3d2b1f,#1f140e);
  clip-path:polygon(10% 0,90% 0,100% 100%,0 100%);
}
.v8-room-object{
  position:absolute;
  z-index:3;
  right:23%;
  bottom:18%;
  width:32%;
  height:25%;
  border-radius:14px 14px 6px 6px;
  background:linear-gradient(145deg,#8f6b4d,#4f3525);
  box-shadow:0 18px 35px rgba(0,0,0,.3);
}
.v8-room-object::before{
  position:absolute;right:12%;bottom:100%;width:76%;height:68%;
  border-radius:50% 50% 10px 10px;background:#715039;content:"";
}
.v8-beam{
  position:absolute;
  z-index:2;
  top:5%;
  left:50%;
  width:230px;
  height:430px;
  clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);
  background:linear-gradient(180deg,rgba(255,246,211,.57),rgba(239,190,88,.06));
  filter:blur(1px);
  opacity:.12;
  transform:translateX(-50%);
  transition:opacity .5s ease,transform .6s var(--ease);
}
.v8-beam.active{opacity:.7}
.v8-beam.task{left:67%;width:150px;transform:translateX(-50%) rotate(-7deg)}
.v8-beam.accent{left:28%;width:120px;transform:translateX(-50%) rotate(10deg)}
.v8-ambient-glow{
  position:absolute;inset:0;
  background:radial-gradient(circle at 50% 44%,rgba(255,214,132,.32),transparent 46%);
  opacity:.2;transition:opacity .5s ease;
}
.v8-ambient-glow.active{opacity:1}
.v8-layer-controls{display:grid;gap:12px}
.v8-layer-button{
  display:grid;
  grid-template-columns:54px 1fr auto;
  align-items:center;
  gap:17px;
  padding:18px;
  border:1px solid rgba(107,67,37,.14);
  border-radius:20px;
  background:#fffaf3;
  cursor:pointer;
  text-align:left;
  transition:.3s ease;
}
.v8-layer-button:hover,.v8-layer-button.active{
  border-color:#c08b30;
  background:#f4f8f0;
  transform:translateX(7px);
}
.v8-layer-button .dot{
  display:grid;width:45px;height:45px;place-items:center;border-radius:50%;
  color:#342116;background:linear-gradient(135deg,#f2d887,#c7902e);
}
.v8-layer-button strong{display:block;font-size:17px}
.v8-layer-button small{display:block;margin-top:3px;color:var(--muted);font-size:13px}
.v8-layer-button .arrow{color:#a56f1e;font-size:24px}

/* Metrics */
.v8-metric-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:54px;
  border-block:1px solid rgba(168,213,111,.15);
}
.v8-metric{
  min-height:190px;
  padding:30px;
  border-right:1px solid rgba(168,213,111,.15);
}
.v8-metric:last-child{border-right:0}
.v8-metric strong{
  display:block;
  color:transparent;
  background:linear-gradient(90deg,#ffffff,#a8d56f);
  -webkit-background-clip:text;background-clip:text;
  font-size:clamp(42px,5vw,67px);
  font-weight:780;letter-spacing:-.06em;line-height:1;
}
.v8-metric span{display:block;margin-top:12px;color:#b9aaa0;font-size:14px;line-height:1.4}

/* Timeline */
.v8-timeline{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  margin-top:62px;
}
.v8-timeline::before{
  position:absolute;top:18px;right:8%;left:8%;height:2px;
  background:rgba(163,111,31,.18);content:"";
}
.v8-timeline::after{
  position:absolute;top:18px;left:8%;width:var(--timeline-progress,0%);height:2px;
  background:linear-gradient(90deg,#9a641d,#a8d56f);content:"";
  transition:width 1.6s var(--ease);
}
.v8-timeline.is-visible{--timeline-progress:84%}
.v8-timeline article{position:relative;padding:0 24px}
.v8-timeline .node{
  position:relative;z-index:2;display:grid;width:38px;height:38px;place-items:center;
  border:5px solid #fffdf9;border-radius:50%;color:#2c1c13;
  background:linear-gradient(135deg,#efcf78,#bd8126);
  box-shadow:0 6px 22px rgba(167,110,29,.22);
}
.v8-soft .v8-timeline .node{border-color:#f7f0e6}
.v8-dark .v8-timeline .node{border-color:#24160f}
.v8-timeline h3{margin-top:25px;font-size:19px;letter-spacing:-.03em}
.v8-timeline p{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.48}

/* Tables, matrices and chips */
.v8-table-wrap{
  overflow:auto;
  margin-top:50px;
  border:1px solid rgba(105,65,35,.13);
  border-radius:24px;
  background:#fffaf3;
  box-shadow:0 14px 40px rgba(69,38,20,.06);
}
.v8-table{width:100%;min-width:760px;border-collapse:collapse}
.v8-table th,.v8-table td{padding:18px 20px;border-bottom:1px solid rgba(105,65,35,.1);text-align:left}
.v8-table th{color:#7f531d;background:#f2e6d5;font-size:13px;letter-spacing:.05em;text-transform:uppercase}
.v8-table td{color:#5f4d42;font-size:14px;line-height:1.4}
.v8-table tr:last-child td{border-bottom:0}
.v8-check{color:#a56f1e;font-weight:800}
.v8-chip-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.v8-chip{
  display:inline-flex;align-items:center;gap:7px;padding:9px 13px;
  border:1px solid rgba(160,103,31,.2);border-radius:999px;
  color:#66431b;background:rgba(255,247,230,.82);font-size:13px;font-weight:650;
}
.v8-dark .v8-chip{color:#efddba;border-color:rgba(168,213,111,.2);background:rgba(255,255,255,.05)}

/* Beam simulator */
.v8-lab{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:50px;
  align-items:stretch;
  margin-top:58px;
}
.v8-lab-stage{
  position:relative;
  min-height:520px;
  overflow:hidden;
  border-radius:30px;
  background:
    linear-gradient(180deg,#2c1c14 0 62%,#1a100b 62%),
    #21140e;
  box-shadow:0 30px 75px rgba(54,31,18,.2);
}
.v8-lab-wall{position:absolute;inset:7% 7% 29%;border:1px solid rgba(255,245,216,.1);background:#3b291e}
.v8-lab-art{position:absolute;right:29%;bottom:27%;width:42%;height:34%;border-radius:8px;background:linear-gradient(135deg,#77563d,#2d2018);box-shadow:0 13px 25px rgba(0,0,0,.26)}
.v8-lab-beam{
  position:absolute;z-index:2;top:4%;left:50%;
  width:var(--beam-width,210px);height:430px;
  clip-path:polygon(45% 0,55% 0,100% 100%,0 100%);
  background:linear-gradient(180deg,var(--beam-color,rgba(255,228,169,.75)),rgba(255,196,79,.03));
  opacity:.74;filter:blur(1px);transform:translateX(-50%);
  transition:width .35s ease,background .35s ease;
}
.v8-lab-controls{
  display:grid;align-content:center;gap:24px;padding:35px;border-radius:30px;background:#fffaf3;
}
.v8-control label{display:flex;justify-content:space-between;gap:20px;font-weight:700}
.v8-control output{color:#a36c1b}
.v8-control input[type="range"]{width:100%;margin-top:13px;accent-color:#b77a20}
.v8-control-note{padding:16px;border-radius:16px;color:#68564b;background:#f3e7d5;font-size:14px;line-height:1.5}

/* Accordions */
.v8-faq{display:grid;gap:10px;max-width:930px;margin:52px auto 0}
.v8-faq-item{
  border:1px solid rgba(112,69,37,.14);
  border-radius:18px;background:#fffaf3;
  transition:border-color .25s ease,box-shadow .25s ease;
}
.v8-faq-item[open]{border-color:rgba(173,113,29,.42);box-shadow:0 13px 32px rgba(70,40,22,.08)}
.v8-faq-item summary{
  position:relative;padding:21px 55px 21px 22px;cursor:pointer;
  font-size:17px;font-weight:730;letter-spacing:-.02em;list-style:none;
}
.v8-faq-item summary::-webkit-details-marker{display:none}
.v8-faq-item summary::after{
  position:absolute;top:50%;right:21px;width:25px;height:25px;
  display:grid;place-items:center;border-radius:50%;color:#fff7e8;background:#7c5020;
  content:"+";transform:translateY(-50%);transition:transform .25s ease;
}
.v8-faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.v8-faq-item p{padding:0 22px 22px;color:var(--muted);font-size:15px;line-height:1.55}

/* Product-page expansion */
.v8-product-story{padding:105px 24px;background:#f7f0e6}
.v8-product-story-inner{width:min(100%,var(--max));margin-inline:auto}
.v8-product-effect{
  display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:65px;margin-top:52px;
}
.v8-product-effect-stage{
  position:relative;min-height:500px;overflow:hidden;border-radius:30px;
  background:linear-gradient(180deg,#322119 0 64%,#1c110c 64%);
  box-shadow:0 28px 70px rgba(67,39,22,.16);
}
.v8-product-effect-stage img{
  position:absolute;z-index:3;top:6%;left:50%;width:62%;height:55%;object-fit:contain;
  filter:drop-shadow(0 25px 25px rgba(0,0,0,.35));
  transform:translateX(-50%);
  animation:v8-product-float 5.5s ease-in-out infinite;
}
.v8-product-effect-beam{
  position:absolute;z-index:2;top:37%;left:50%;width:58%;height:58%;
  clip-path:polygon(36% 0,64% 0,100% 100%,0 100%);
  background:linear-gradient(180deg,rgba(255,232,178,.62),rgba(123,175,61,.05));
  transform:translateX(-50%);
  animation:v8-beam-breathe 4s ease-in-out infinite;
}
.v8-product-effect-copy h2{font-size:clamp(38px,5vw,62px);font-weight:750;letter-spacing:-.06em;line-height:.98}
.v8-product-effect-copy>p{margin-top:19px;color:var(--muted);font-size:18px;line-height:1.5}
.v8-spec-decisions{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:60px}
.v8-decision{
  padding:24px;border:1px solid rgba(112,69,37,.13);border-radius:20px;background:#fffaf3;
}
.v8-decision small{color:#a56f1e;font-weight:750}
.v8-decision h3{margin-top:10px;font-size:18px}
.v8-decision p{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.45}
.v8-installation-notes{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:55px;
}
.v8-installation-notes article{padding:28px;border-radius:22px;color:#f5e8d5;background:#2b1a12}
.v8-installation-notes h3{font-size:19px}
.v8-installation-notes p{margin-top:9px;color:#beada1;font-size:14px;line-height:1.5}

/* Moving details */
.v8-marquee{
  overflow:hidden;padding:17px 0;border-block:1px solid rgba(145,93,31,.15);background:#f2e5d2;
}
.v8-marquee-track{
  display:flex;width:max-content;gap:44px;animation:v8-marquee 27s linear infinite;
}
.v8-marquee span{display:inline-flex;align-items:center;gap:12px;color:#604118;font-size:13px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.v8-marquee span::before{width:7px;height:7px;border-radius:50%;background:#c18b31;box-shadow:0 0 10px rgba(193,139,49,.5);content:""}
.v8-light-sweep{
  position:absolute;z-index:1;top:-20%;left:-30%;width:24%;height:140%;
  background:linear-gradient(90deg,transparent,rgba(255,240,197,.13),transparent);
  transform:skewX(-14deg);pointer-events:none;
  animation:v8-sweep 9s ease-in-out infinite;
}
.v8-reveal{opacity:0;transform:translateY(26px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
.v8-reveal.is-visible{opacity:1;transform:none}
.v8-stagger>*{opacity:0;transform:translateY(20px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.v8-stagger.is-visible>*{opacity:1;transform:none}
.v8-stagger.is-visible>*:nth-child(2){transition-delay:.08s}
.v8-stagger.is-visible>*:nth-child(3){transition-delay:.16s}
.v8-stagger.is-visible>*:nth-child(4){transition-delay:.24s}
.v8-stagger.is-visible>*:nth-child(5){transition-delay:.32s}
.v8-stagger.is-visible>*:nth-child(6){transition-delay:.40s}
.v8-tilt{transform-style:preserve-3d;will-change:transform}
.v8-tilt>*{transform:translateZ(18px)}
.v8-count{font-variant-numeric:tabular-nums}

/* Keyframes */
@keyframes v8-orbit-breathe{0%,100%{transform:scale(.95);opacity:.65}50%{transform:scale(1.06);opacity:1}}
@keyframes v8-product-float{0%,100%{transform:translateX(-50%) translateY(0) rotate(-1deg)}50%{transform:translateX(-50%) translateY(-13px) rotate(1deg)}}
@keyframes v8-beam-breathe{0%,100%{opacity:.42;filter:blur(2px)}50%{opacity:.78;filter:blur(0)}}
@keyframes v8-marquee{to{transform:translateX(-50%)}}
@keyframes v8-sweep{0%,20%{transform:translateX(-160%) skewX(-14deg)}55%,100%{transform:translateX(650%) skewX(-14deg)}}

@media(max-width:1000px){
  .v8-grid.four,.v8-metric-row,.v8-spec-decisions{grid-template-columns:repeat(2,1fr)}
  .v8-lighting-layers,.v8-lab,.v8-product-effect{grid-template-columns:1fr}
  .v8-room-stage,.v8-lab-stage,.v8-product-effect-stage{min-height:500px}
  .v8-timeline{grid-template-columns:repeat(2,1fr);gap:45px 0}
  .v8-timeline::before,.v8-timeline::after{display:none}
  .v8-installation-notes{grid-template-columns:1fr}
}
@media(max-width:760px){
  .v8-section{padding:88px 20px}
  .v8-grid,.v8-grid.two,.v8-grid.four,.v8-metric-row,.v8-spec-decisions{grid-template-columns:1fr}
  .v8-card{min-height:auto}
  .v8-metric{min-height:auto;border-right:0;border-bottom:1px solid rgba(168,213,111,.15)}
  .v8-metric:last-child{border-bottom:0}
  .v8-timeline{grid-template-columns:1fr;gap:36px}
  .v8-timeline article{padding:0}
  .v8-room-stage,.v8-lab-stage,.v8-product-effect-stage{min-height:430px}
  .v8-layer-button{grid-template-columns:47px 1fr auto}
}
@media(prefers-reduced-motion:reduce){
  .v8-section::before,.v8-product-effect-stage img,.v8-product-effect-beam,.v8-marquee-track,.v8-light-sweep{animation:none!important}
  .v8-reveal,.v8-stagger>*{opacity:1!important;transform:none!important}
}


/* ==========================================================
   OSTROLUXX V9 — PURPOSE GRID FIX + LIGHT CURSOR
   ========================================================== */

/* Corrected responsible-specification section */
.v8-purpose-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-top:56px;
  border:0;
}
.v8-purpose-metrics .v8-metric{
  position:relative;
  min-width:0;
  min-height:285px;
  overflow:hidden;
  padding:31px;
  border:1px solid rgba(168,213,111,.17);
  border-radius:25px;
  background:
    radial-gradient(circle at 100% 0,rgba(168,213,111,.10),transparent 38%),
    rgba(255,255,255,.045);
  transition:
    transform .42s var(--ease),
    border-color .32s ease,
    background .32s ease,
    box-shadow .42s var(--ease);
}
.v8-purpose-metrics .v8-metric:last-child{
  border-right:1px solid rgba(168,213,111,.17);
}
.v8-purpose-metrics .v8-metric::after{
  position:absolute;
  right:-52px;
  bottom:-70px;
  width:175px;
  height:175px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(168,213,111,.20),transparent 68%);
  opacity:0;
  transform:scale(.7);
  content:"";
  transition:opacity .4s ease,transform .4s var(--ease);
}
.v8-purpose-metrics .v8-metric:hover{
  z-index:2;
  border-color:rgba(168,213,111,.38);
  background:
    radial-gradient(circle at 100% 0,rgba(168,213,111,.16),transparent 42%),
    rgba(255,255,255,.065);
  box-shadow:0 22px 58px rgba(0,0,0,.24);
  transform:translateY(-7px);
}
.v8-purpose-metrics .v8-metric:hover::after{
  opacity:1;
  transform:scale(1);
}
.v8-purpose-index{
  display:inline-flex;
  min-width:36px;
  min-height:25px;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(168,213,111,.24);
  border-radius:999px;
  color:#a8d56f;
  background:rgba(168,213,111,.07);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
}
.v8-purpose-metrics .v8-metric strong{
  position:relative;
  z-index:1;
  display:block;
  max-width:100%;
  margin-top:36px;
  color:transparent;
  background:linear-gradient(100deg,#ffffff 2%,#cde8ad 55%,#7baf3d 100%);
  -webkit-background-clip:text;
  background-clip:text;
  font-size:clamp(37px,3.2vw,54px);
  font-weight:760;
  letter-spacing:-.06em;
  line-height:.96;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}
.v8-purpose-metrics .v8-metric span:not(.v8-purpose-index){
  position:relative;
  z-index:1;
  display:block;
  max-width:320px;
  margin-top:24px;
  color:#c3b5aa;
  font-size:15px;
  line-height:1.52;
}

/* Custom light cursor. Only enabled for precise mouse devices. */
.ostro-light-cursor{
  position:fixed;
  z-index:2147483646;
  top:0;
  left:0;
  width:0;
  height:0;
  pointer-events:none;
  opacity:0;
  transform:translate3d(var(--cursor-x,-100px),var(--cursor-y,-100px),0);
  transition:opacity .22s ease;
  will-change:transform;
}
.ostro-light-cursor.is-visible{opacity:1}
.ostro-cursor-halo,
.ostro-cursor-ring,
.ostro-cursor-core,
.ostro-cursor-beam{
  position:absolute;
  top:0;
  left:0;
  pointer-events:none;
}
.ostro-cursor-halo{
  width:58px;
  height:58px;
  border-radius:50%;
  background:radial-gradient(
    circle,
    rgba(255,248,222,.55) 0,
    rgba(168,213,111,.28) 24%,
    rgba(123,175,61,.12) 48%,
    transparent 72%
  );
  filter:blur(2px);
  transform:translate(-50%,-50%) scale(var(--cursor-halo-scale,1));
  transition:transform .28s var(--ease),opacity .25s ease;
}
.ostro-cursor-ring{
  width:30px;
  height:30px;
  border:1px solid rgba(123,175,61,.72);
  border-radius:50%;
  box-shadow:
    inset 0 0 12px rgba(168,213,111,.15),
    0 0 18px rgba(123,175,61,.18);
  transform:translate(-50%,-50%) scale(var(--cursor-ring-scale,1));
  transition:
    width .25s var(--ease),
    height .25s var(--ease),
    border-color .25s ease,
    transform .25s var(--ease);
}
.ostro-cursor-core{
  width:8px;
  height:8px;
  border:1px solid rgba(255,255,255,.9);
  border-radius:50%;
  background:#a8d56f;
  box-shadow:
    0 0 8px #fff7d9,
    0 0 18px rgba(168,213,111,.92),
    0 0 35px rgba(123,175,61,.58);
  transform:translate(-50%,-50%);
}
.ostro-cursor-beam{
  width:22px;
  height:72px;
  clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);
  background:linear-gradient(
    180deg,
    rgba(255,249,222,.38),
    rgba(168,213,111,.12) 48%,
    transparent 100%
  );
  filter:blur(1px);
  opacity:.45;
  transform:
    translate(-50%,5px)
    rotate(var(--cursor-beam-angle,-18deg))
    scaleY(var(--cursor-beam-scale,1));
  transform-origin:50% 0;
  transition:opacity .25s ease,transform .28s var(--ease);
}
.ostro-light-cursor.is-interactive{
  --cursor-halo-scale:1.55;
  --cursor-ring-scale:1.45;
  --cursor-beam-scale:1.25;
}
.ostro-light-cursor.is-interactive .ostro-cursor-ring{
  width:35px;
  height:35px;
  border-color:rgba(168,213,111,.96);
}
.ostro-light-cursor.is-interactive .ostro-cursor-beam{opacity:.72}
.ostro-light-cursor.is-text .ostro-cursor-ring{
  width:12px;
  height:28px;
  border-radius:5px;
}
.ostro-light-cursor.is-pressed{
  --cursor-halo-scale:.76;
  --cursor-ring-scale:.72;
}
.ostro-light-cursor.is-hidden{opacity:0!important}

/* A small page glow follows the cursor and makes the effect feel integrated. */
.ostro-page-light{
  position:fixed;
  z-index:2147483645;
  top:0;
  left:0;
  width:240px;
  height:240px;
  border-radius:50%;
  background:radial-gradient(
    circle,
    rgba(168,213,111,.085),
    rgba(123,175,61,.025) 40%,
    transparent 70%
  );
  pointer-events:none;
  opacity:0;
  transform:translate3d(
    calc(var(--page-light-x,-300px) - 50%),
    calc(var(--page-light-y,-300px) - 50%),
    0
  );
  transition:opacity .25s ease;
  mix-blend-mode:screen;
  will-change:transform;
}
.ostro-page-light.is-visible{opacity:1}

@media (hover:hover) and (pointer:fine){
  html.ostro-custom-cursor,
  html.ostro-custom-cursor body,
  html.ostro-custom-cursor a,
  html.ostro-custom-cursor button,
  html.ostro-custom-cursor input,
  html.ostro-custom-cursor textarea,
  html.ostro-custom-cursor select,
  html.ostro-custom-cursor summary,
  html.ostro-custom-cursor [role="button"]{
    cursor:none!important;
  }
}

@media(max-width:1200px){
  .v8-purpose-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:680px){
  .v8-purpose-metrics{
    grid-template-columns:1fr;
  }
  .v8-purpose-metrics .v8-metric{
    min-height:245px;
  }
  .v8-purpose-metrics .v8-metric strong{
    font-size:clamp(39px,12vw,52px);
  }
}
@media (hover:none),(pointer:coarse){
  .ostro-light-cursor,
  .ostro-page-light{
    display:none!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .ostro-cursor-beam{
    display:none;
  }
  .ostro-light-cursor,
  .ostro-page-light{
    transition:none!important;
  }
}


/* ==========================================================
   OSTROLUXX V11 — PRODUCT SHARE + PRINT EXPERIENCE
   ========================================================== */
.dialog-top-actions{position:relative}
.dialog-icon-button{position:relative}
.dialog-icon-button[aria-expanded="true"]{
  color:#2d1c13;
  border-color:#7baf3d;
  background:#a8d56f;
  box-shadow:0 9px 26px rgba(181,122,32,.22);
}
.product-share-popover{
  position:absolute;
  z-index:35;
  top:50px;
  right:88px;
  width:min(310px,calc(100vw - 34px));
  overflow:hidden;
  border:1px solid rgba(92,57,34,.16);
  border-radius:20px;
  color:#342117;
  background:rgba(255,251,245,.98);
  box-shadow:0 25px 70px rgba(54,30,16,.24);
  backdrop-filter:blur(18px);
  transform-origin:top right;
  animation:ostroShareIn .22s var(--ease) both;
}
.product-share-popover[hidden]{display:none!important}
.product-share-popover-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:18px 19px 14px;
  border-bottom:1px solid rgba(92,57,34,.1);
}
.product-share-popover-header strong{font-size:16px;letter-spacing:-.025em}
.product-share-popover-header span{display:block;margin-top:3px;color:#7c6a5f;font-size:12px;line-height:1.35}
.product-share-list{display:grid;padding:8px}
.product-share-list :is(a,button){
  display:grid;
  grid-template-columns:38px 1fr auto;
  align-items:center;
  gap:11px;
  width:100%;
  min-height:52px;
  padding:7px 10px;
  border:0;
  border-radius:13px;
  color:#3a281e;
  background:transparent;
  cursor:pointer;
  text-align:left;
  font-size:14px;
  font-weight:680;
  transition:background .2s ease,transform .2s ease,color .2s ease;
}
.product-share-list :is(a,button):hover{
  color:#6d4618;
  background:#f5ead8;
  transform:translateX(3px);
}
.product-share-icon{
  display:grid;
  width:36px;
  height:36px;
  place-items:center;
  border-radius:50%;
  color:#ffffff;
  background:linear-gradient(135deg,#5d8a2b,#7baf3d);
}
.product-share-icon svg{width:17px;height:17px}
.product-share-list small{color:#a19186;font-size:17px;font-weight:500}
.product-action-toast{
  position:fixed;
  z-index:2147483647;
  right:24px;
  bottom:24px;
  display:flex;
  max-width:min(430px,calc(100vw - 36px));
  align-items:flex-start;
  gap:11px;
  padding:14px 17px;
  border:1px solid rgba(168,213,111,.36);
  border-radius:15px;
  color:#fff4dd;
  background:rgba(42,26,18,.96);
  box-shadow:0 20px 55px rgba(31,17,9,.32);
  opacity:0;
  pointer-events:none;
  transform:translateY(18px);
  transition:opacity .25s ease,transform .25s var(--ease);
}
.product-action-toast.show{opacity:1;transform:none}
.product-action-toast.error{border-color:rgba(210,90,70,.45);background:rgba(79,28,22,.96)}
.product-action-toast::before{content:'✓';display:grid;flex:0 0 auto;width:22px;height:22px;place-items:center;border-radius:50%;color:#332113;background:#a8d56f;font-size:12px;font-weight:900}
.product-action-toast.error::before{content:'!';color:#fff;background:#c95040}
.product-action-toast span{font-size:13px;line-height:1.45}
@keyframes ostroShareIn{from{opacity:0;transform:translateY(-7px) scale(.97)}to{opacity:1;transform:none}}

/* Print/share buttons remain readable in the popup top bar. */
#shareProduct::after,#printProduct::after{
  position:absolute;
  top:calc(100% + 8px);
  left:50%;
  z-index:5;
  padding:5px 8px;
  border-radius:7px;
  color:#fff7e8;
  background:#2b1b13;
  font-size:10px;
  line-height:1;
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,-3px);
  transition:.18s ease;
}
#shareProduct::after{content:'Share'}
#printProduct::after{content:'Print / PDF'}
#shareProduct:hover::after,#printProduct:hover::after{opacity:1;transform:translate(-50%,0)}

/* Native dialog top-layer cursor support, without dark mode. */
.product-dialog > .ostro-light-cursor{z-index:2147483647}
.product-dialog > .ostro-page-light{z-index:2147483646}

@media(max-width:760px){
  .product-share-popover{position:fixed;top:70px;right:14px;left:14px;width:auto}
  .product-action-toast{right:18px;bottom:18px;left:18px;max-width:none}
}
@media print{
  .product-share-popover,.product-action-toast{display:none!important}
}


/* ==========================================================
   OSTROLUXX V12 — SITE ALIGNMENT + PRODUCT DIALOG + PRINT UI
   ========================================================== */
html,body{max-width:100%;overflow-x:clip}
main,main>section,.site-footer,.footer-cta{max-width:100%}
:is(
  .section-head,.lineup-head,.projects-head,.applications-head,.v8-section-head,
  .home-hero-copy,.page-hero-content,.product-page-copy,.contact-hero-copy
){min-width:0}
:is(
  .display-title,.section-title,.section-head h1,.section-head h2,
  .lineup-head h2,.projects-head h2,.applications-head h2,
  .product-page-copy h1,.dialog-content h2,.v8-card h3
){max-width:100%;overflow-wrap:break-word;text-wrap:balance}
:is(
  .body-large,.section-head p,.lineup-head p,.projects-head p,
  .applications-head p,.split-copy p,.v8-section-head p
){max-width:72ch}
:is(
  .showcase-grid,.project-grid,.application-grid,.value-grid,.tech-grid,
  .purpose-grid,.catalog-grid,.projects-list,.v8-grid,.v8-metric-row,
  .footer-main,.footer-grid,.contact-layout,.contact-workspace-grid
)>*{min-width:0}
.button,.header-cta,.filter-btn,.dialog-icon-button{line-height:1.15}

/* Product dialog shell */
.product-dialog-v5{
  inset:0;
  width:min(1280px,calc(100vw - 28px));
  height:min(920px,calc(100dvh - 28px));
  max-width:none;
  max-height:none;
  margin:auto;
  overflow:hidden;
  border-radius:28px;
}
.product-dialog-v5[open]{display:block}
.dialog-topbar{
  position:relative;
  z-index:40;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:72px;
  height:auto;
  align-items:center;
  gap:20px;
  padding:11px 16px 11px 20px;
  border-bottom:1px solid rgba(74,52,41,.11);
  background:rgba(255,253,249,.97);
  backdrop-filter:blur(20px);
}
.dialog-topbar-identity{
  display:flex;
  min-width:0;
  align-items:center;
  gap:12px;
}
.dialog-mini-mark{
  position:relative;
  display:block;
  flex:0 0 auto;
  width:36px;
  height:36px;
  border:2px solid #0b100c;
  border-radius:50%;
  box-shadow:inset 0 0 0 6px #fff,0 0 0 1px rgba(11,16,12,.08);
}
.dialog-mini-mark::before{
  position:absolute;
  inset:9px;
  border-radius:50%;
  background:#7baf3d;
  box-shadow:0 0 13px rgba(123,175,61,.55);
  content:'';
}
.dialog-mini-mark::after{
  position:absolute;
  top:50%;
  right:-5px;
  width:15px;
  height:2px;
  border-radius:2px;
  background:#7baf3d;
  transform:translateY(-50%);
  content:'';
}
.dialog-topbar-identity>div{min-width:0}
.dialog-topbar-identity strong{
  display:block;
  color:#332118;
  font-size:13px;
  font-weight:800;
  letter-spacing:.12em;
}
.dialog-breadcrumb{
  min-width:0;
  margin-top:4px;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.dialog-breadcrumb span:last-child{
  overflow:hidden;
  text-overflow:ellipsis;
}
.dialog-top-actions{
  position:relative;
  display:flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.dialog-topbar .dialog-icon-button,
.dialog-topbar .dialog-close{
  position:relative;
  inset:auto;
  top:auto;
  right:auto;
  bottom:auto;
  left:auto;
  float:none;
  width:44px;
  height:44px;
  margin:0;
  padding:0;
  flex:0 0 44px;
  place-items:center;
  border:1px solid rgba(87,57,40,.14);
  border-radius:50%;
  color:#68452f;
  background:#fffdfa;
  box-shadow:0 5px 16px rgba(70,42,25,.045);
}
.dialog-topbar .dialog-icon-button:hover,
.dialog-topbar .dialog-close:hover{
  color:#2b1c13;
  border-color:#7baf3d;
  background:#a8d56f;
  box-shadow:0 10px 25px rgba(181,122,32,.18);
  transform:translateY(-2px);
}
.dialog-topbar .dialog-close{
  margin-left:4px;
  border-color:rgba(11,16,12,.23);
}
.dialog-topbar .dialog-close svg{width:20px;height:20px}
.dialog-layout-v5{
  grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr);
  height:calc(100% - 72px);
}
.dialog-layout-v5>*{min-width:0}
.dialog-content{
  min-width:0;
  max-width:100%;
  overflow-x:hidden;
  padding:36px clamp(25px,3.3vw,48px) 120px;
}
.dialog-content h2{
  margin-right:0;
  font-size:clamp(38px,4vw,58px);
  line-height:.98;
  overflow-wrap:anywhere;
}
.dialog-code-row>*{min-width:0}
.dialog-code-row code{max-width:100%;overflow-wrap:anywhere}
.dialog-quick-specs>div,.dialog-specs>div{min-width:0}
.dialog-quick-specs strong,.dialog-specs strong{overflow-wrap:anywhere}
.dialog-tab-list{max-width:100%;scrollbar-width:thin}
.dialog-action-bar{
  grid-template-columns:repeat(2,minmax(0,auto)) minmax(0,1fr) auto;
  align-items:center;
}
.product-share-popover{
  top:calc(100% + 10px);
  right:0;
  width:min(320px,calc(100vw - 32px));
}
#shareProduct::after,#printProduct::after{top:calc(100% + 9px)}

@media(max-width:900px){
  .dialog-layout-v5{grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr)}
  .dialog-content{padding-inline:26px}
}
@media(max-width:760px){
  .product-dialog-v5{width:100%;height:100dvh;max-height:100dvh;border-radius:0}
  .dialog-topbar{position:sticky;top:0;min-height:64px;padding:9px 12px 9px 15px}
  .dialog-layout-v5{height:calc(100% - 64px)}
  .dialog-topbar .dialog-icon-button,.dialog-topbar .dialog-close{width:42px;height:42px;flex-basis:42px}
  .dialog-topbar-identity strong{font-size:12px}
  .dialog-mini-mark{width:32px;height:32px}
  .dialog-content{padding:30px 20px 100px}
  .dialog-content h2{font-size:clamp(37px,10vw,50px)}
  .dialog-action-bar{grid-template-columns:1fr 1fr;margin-inline:-20px;padding-inline:20px}
  .product-share-popover{position:fixed;top:68px;right:14px;left:14px;width:auto}
}
@media(max-width:520px){
  .dialog-topbar{grid-template-columns:minmax(0,1fr) auto;gap:9px}
  .dialog-topbar-identity{gap:8px}
  .dialog-breadcrumb{display:block;max-width:120px;font-size:10px}
  .dialog-breadcrumb span:first-child,.dialog-breadcrumb b{display:none}
  .dialog-topbar .dialog-icon-button,.dialog-topbar .dialog-close{width:39px;height:39px;flex-basis:39px}
  .dialog-top-actions{gap:5px}
  .dialog-content h2{font-size:clamp(34px,11.5vw,46px)}
}

/* Print is produced in a separate branded A4 document. */
@media print{
  .product-dialog,.product-action-toast,.product-share-popover{display:none!important}
}

/* V12.1 mobile native-dialog viewport correction */
@media(max-width:760px){
  .product-dialog-v5{
    inset:0;
    top:0;
    right:0;
    bottom:0;
    left:0;
    width:100vw;
    max-width:100vw;
    height:100dvh;
    min-height:100dvh;
    margin:0;
  }
}


/* ==========================================================
   OSTROLUXX V13 — RESPONSIVE ALIGNMENT + CROSS-SCREEN OPTIMIZATION
   ========================================================== */

/* Reduce visual obstruction from the custom light cursor */
.ostro-cursor-halo{
  width:42px;
  height:42px;
  background:radial-gradient(circle,rgba(255,246,216,.4) 0,rgba(168,213,111,.18) 34%,rgba(123,175,61,.08) 56%,transparent 74%);
  filter:blur(1px);
}
.ostro-cursor-ring{
  width:24px;
  height:24px;
  box-shadow:inset 0 0 10px rgba(168,213,111,.12),0 0 12px rgba(123,175,61,.12);
}
.ostro-cursor-core{
  width:7px;
  height:7px;
  box-shadow:0 0 7px #fff7d9,0 0 15px rgba(168,213,111,.72),0 0 22px rgba(123,175,61,.34);
}
.ostro-cursor-beam{
  width:16px;
  height:52px;
  opacity:.28;
  background:linear-gradient(180deg,rgba(255,249,222,.22),rgba(168,213,111,.08) 52%,transparent 100%);
}
.ostro-light-cursor.is-interactive{
  --cursor-halo-scale:1.2;
  --cursor-ring-scale:1.14;
  --cursor-beam-scale:1.08;
}
.ostro-light-cursor.is-interactive .ostro-cursor-ring{width:28px;height:28px}
.ostro-light-cursor.is-interactive .ostro-cursor-beam{opacity:.42}
.ostro-page-light{
  width:160px;
  height:160px;
  background:radial-gradient(circle,rgba(168,213,111,.05),rgba(123,175,61,.018) 42%,transparent 72%);
  opacity:.75;
}

/* Global text and media stability */
img,svg,video,canvas{max-width:100%}
:is(h1,h2,h3,h4,p,li,a,button,span,strong,small,code){overflow-wrap:break-word}

/* Home hero */
.home-hero{
  display:grid;
  align-content:start;
  justify-items:center;
  min-height:clamp(760px,100svh,980px);
  padding:calc(var(--nav-height) + 72px) 24px 300px;
}
.home-hero-copy{
  width:min(100%,940px);
}
.home-hero .display-title{
  font-size:clamp(54px,8vw,104px);
  line-height:.92;
  text-wrap:balance;
}
.home-hero-sub{
  max-width:760px;
  line-height:1.28;
  text-wrap:balance;
}
.hero-light{
  bottom:-28px;
  width:min(1040px,100vw);
}
.hero-floor{height:180px}

/* Home closing CTA section */
.home-closing{
  min-height:auto;
  align-content:start;
  padding:110px 24px 340px;
}
.home-closing-copy{
  width:min(100%,980px);
}
.home-closing .section-title{
  max-width:12ch;
  margin-inline:auto;
  font-size:clamp(48px,7vw,92px);
  text-wrap:balance;
}
.home-closing p{
  max-width:760px;
  line-height:1.35;
  text-wrap:balance;
}
.closing-orb{
  bottom:-240px;
  width:min(780px,88vw);
}

/* Contact hero keeps text clear of the decorative ring */
.contact-hero{
  min-height:760px;
  align-items:start;
  padding:calc(var(--nav-height) + 82px) 24px 110px;
}
.contact-hero-copy{
  width:min(100%,1160px);
  max-width:760px;
  padding-right:min(42vw,470px);
}
.contact-hero h1{
  max-width:11ch;
  font-size:clamp(52px,7vw,96px);
  line-height:.95;
  text-wrap:balance;
}
.contact-hero p{
  max-width:680px;
  line-height:1.42;
}
.contact-light-object{
  right:max(-36px,2vw);
  bottom:-120px;
  width:min(480px,38vw);
}

/* Product cards and quick view pill */
.product-card-art{overflow:hidden}
.product-card-image-action{
  right:auto;
  left:50%;
  bottom:18px;
  max-width:calc(100% - 26px);
  padding:0 16px;
  font-size:12px;
  transform:translate(-50%,12px);
}
.product-card-art:hover .product-card-image-action,
.product-card-art:focus-visible .product-card-image-action{
  transform:translate(-50%,0);
}

/* Product dialog header and footer actions */
.dialog-topbar{
  gap:14px;
}
.dialog-topbar-identity strong,
.dialog-breadcrumb{
  text-wrap:balance;
}
.dialog-top-actions{flex-wrap:nowrap}
.dialog-action-bar{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.dialog-action-bar .button{
  width:100%;
  min-height:48px;
  padding:10px 16px;
  white-space:normal;
  text-align:center;
  line-height:1.25;
}

/* Footer social alignment */
.footer-social-block{
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:14px 18px;
}
.footer-social-block>span{
  flex:0 0 auto;
}
.footer-socials{
  flex-wrap:wrap;
  gap:12px;
}
.footer-socials a{
  width:44px;
  height:44px;
}

/* Purpose metrics readability */
.v8-purpose-metrics{
  align-items:stretch;
}
.v8-purpose-metrics .v8-metric{
  min-height:320px;
  padding:28px 28px 32px;
}
.v8-purpose-index{margin-bottom:8px}
.v8-purpose-metrics .v8-metric strong{
  margin-top:28px;
  font-size:clamp(34px,3vw,48px);
  line-height:1.02;
}
.v8-purpose-metrics .v8-metric span:not(.v8-purpose-index){
  margin-top:18px;
  max-width:34ch;
}

/* Medium screens */
@media (max-width:1180px){
  .home-hero{
    min-height:860px;
    padding-bottom:280px;
  }
  .hero-light{width:min(920px,100vw)}
  .contact-hero-copy{padding-right:min(34vw,340px)}
  .contact-light-object{width:min(420px,34vw)}
  .dialog-action-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Tablet */
@media (max-width:960px){
  .home-hero{
    min-height:800px;
    padding-top:calc(var(--nav-height) + 62px);
    padding-bottom:250px;
  }
  .home-hero .display-title{font-size:clamp(48px,10vw,82px)}
  .hero-light{width:min(820px,110vw)}
  .home-closing{
    padding:92px 22px 300px;
  }
  .home-closing .section-title{max-width:13ch;font-size:clamp(44px,8vw,74px)}
  .closing-orb{width:min(680px,96vw);bottom:-220px}
  .contact-hero{
    min-height:700px;
    padding-top:calc(var(--nav-height) + 56px);
    padding-bottom:90px;
  }
  .contact-hero-copy{
    max-width:100%;
    padding-right:0;
  }
  .contact-hero h1{max-width:12ch;font-size:clamp(44px,8vw,70px)}
  .contact-light-object{
    right:-12%;
    bottom:-30px;
    width:min(420px,62vw);
    opacity:.24;
  }
  .dialog-topbar{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
  }
  .dialog-top-actions{gap:6px}
  .v8-purpose-metrics .v8-metric{min-height:290px}
}

/* Mobile */
@media (max-width:760px){
  .home-hero{
    min-height:auto;
    padding:calc(var(--nav-height) + 44px) 18px 220px;
  }
  .home-hero-copy{width:min(100%,620px)}
  .home-hero .display-title{font-size:clamp(42px,13vw,64px)}
  .home-hero-sub{font-size:clamp(18px,4.8vw,22px);line-height:1.34}
  .hero-light{width:min(640px,122vw);bottom:-14px}
  .hero-floor{height:120px}
  .home-closing{
    padding:78px 18px 230px;
  }
  .home-closing .section-title{
    max-width:100%;
    font-size:clamp(38px,11vw,56px);
  }
  .home-closing p{
    font-size:clamp(17px,4.8vw,21px);
  }
  .closing-orb{
    width:min(560px,132vw);
    bottom:-175px;
  }
  .contact-hero{
    min-height:auto;
    padding:calc(var(--nav-height) + 42px) 18px 70px;
  }
  .contact-hero h1{
    max-width:100%;
    font-size:clamp(38px,12vw,54px);
  }
  .contact-hero p{font-size:clamp(17px,4.8vw,22px)}
  .contact-light-object{
    right:-28%;
    bottom:-36px;
    width:min(360px,88vw);
    opacity:.16;
  }
  .dialog-action-bar{
    grid-template-columns:1fr 1fr;
  }
  .footer-social-block{
    align-items:flex-start;
    flex-direction:column;
  }
  .v8-purpose-metrics{grid-template-columns:1fr}
  .v8-purpose-metrics .v8-metric{min-height:260px}
}

@media (max-width:520px){
  .dialog-topbar{
    padding:10px 12px;
  }
  .dialog-topbar-identity{gap:7px}
  .dialog-mini-mark{width:30px;height:30px}
  .dialog-breadcrumb{max-width:100px;font-size:10px}
  .dialog-top-actions{gap:4px}
  .dialog-topbar .dialog-icon-button,
  .dialog-topbar .dialog-close{width:38px;height:38px;flex-basis:38px}
  .dialog-action-bar{grid-template-columns:1fr}
  .dialog-action-bar .button{min-height:46px}
  .product-share-popover{top:64px;right:10px;left:10px}
  .product-card-image-action{min-height:36px;padding-inline:14px;font-size:11px}
}


/* ==========================================================
   OSTROLUXX V14 — FULL-SITE RESPONSIVE QA FIXES
   ========================================================== */

/* Prevent intrinsic content from forcing cards or grids wider than their tracks. */
:where(
  .featured-product-card,.fp-copy,.featured-products-head>*,.featured-product-grid>*,
  .detailed-product-card,.product-card-content,.product-card-category>*,
  .dialog-layout-v5>*,.dialog-content,.dialog-action-bar>*,.dialog-tab-list>*,
  .footer-main>*,.footer-social-block>*,.v8-grid>*,.v8-purpose-metrics>*,
  .download-grid>*,.guide-grid>*,.support-grid>*,.legal-layout>*,
  .contact-workspace-grid>*,.project-grid>*,.showcase-grid>*
){min-width:0}

/* Featured cards: keep product renders inside the card bounds at every width. */
.featured-product-card{
  overflow:clip;
  contain:layout paint;
}
.featured-product-card img{
  right:0;
  bottom:0;
  width:min(70%,560px);
  max-width:70%;
  height:72%;
}
.featured-product-card:not(.fp-large) img{
  right:0;
  bottom:-8%;
  width:min(58%,340px);
  max-width:58%;
}
.fp-copy{
  max-width:58%;
}
.fp-copy :is(h3,p,span){max-width:100%;overflow-wrap:anywhere}

/* Stable counters: meaningful values remain visible before animation starts. */
[data-counter]{font-variant-numeric:tabular-nums}
[data-counter].counter-ready{animation:ostroCounterReady .45s var(--ease) both}
@keyframes ostroCounterReady{from{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:none}}

/* Product modal: aligned actions and fully visible navigation tabs. */
.dialog-content{container-type:inline-size}
.dialog-action-bar{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
}
.dialog-action-bar .button{
  min-width:0;
  white-space:normal;
  text-wrap:balance;
}
@media(max-width:1100px){
  .dialog-tab-list{
    flex-wrap:wrap;
    overflow:visible;
    white-space:normal;
    gap:7px;
  }
  .dialog-tab{
    flex:1 1 150px;
    text-align:center;
  }
}
@media(max-width:760px){
  .dialog-tab-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }
  .dialog-tab{width:100%;padding-inline:8px}
  .dialog-tab:last-child:nth-child(odd){grid-column:1/-1}
}
@media(max-width:520px){
  .dialog-action-bar{grid-template-columns:1fr}
  .dialog-tab{font-size:11px}
}

/* Product card utility controls. */
.product-card-image-action{
  max-width:calc(100% - 32px);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.product-card-category{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
.product-card-category>*{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.product-code{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Stronger page-title and section-title wrapping. */
:where(
  .page-hero .display-title,.resource-page-hero .display-title,.legal-hero .display-title,
  .products-hero h1,.contact-hero h1,.section-title,.featured-products-head h2,
  .explorer-head h2,.v8-section-head h2,.home-closing h2
){text-wrap:balance;overflow-wrap:anywhere}

/* Generic card copy alignment. */
:where(
  .value-card,.tech-card,.purpose-card,.v8-card,.guide-card,.support-card,
  .download-card,.contact-route,.contact-card,.legal-section
){height:100%}
:where(.value-card,.tech-card,.purpose-card,.v8-card,.guide-card,.support-card) p{
  max-width:48ch;
}

/* Footer alignment across pages. */
.footer-main{align-items:start}
.footer-brand,.footer-col{min-width:0}
.footer-col a,.footer-contact a{overflow-wrap:anywhere}
.footer-social-block{max-width:430px}

/* Tablet: simplify heavy animation and stabilize layouts. */
@media(max-width:1024px){
  .reveal,.v8-reveal,.v8-stagger>*{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
  .featured-product-card img{right:-2%;max-width:76%;width:76%}
  .featured-product-card:not(.fp-large) img{right:-2%;max-width:64%;width:64%}
  .fp-copy{max-width:65%}
  .footer-main{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-brand{grid-column:1/-1}
  .resource-list-item{grid-template-columns:48px minmax(0,1fr) auto}
}

/* Mobile: one-column reading flow with reliable touch targets. */
@media(max-width:680px){
  .featured-product-card img{
    right:-3%;
    bottom:-2%;
    width:82%;
    max-width:82%;
    height:58%;
  }
  .featured-product-card:not(.fp-large) img{
    right:-4%;
    bottom:-8%;
    width:72%;
    max-width:72%;
    height:62%;
  }
  .fp-copy{max-width:92%;padding:27px}
  .fp-copy h3{font-size:clamp(28px,9vw,38px)}
  .footer-main{grid-template-columns:1fr}
  .footer-brand{grid-column:auto}
  .footer-col{width:100%}
  .resource-list-item{grid-template-columns:38px minmax(0,1fr)}
  .resource-list-item>a{grid-column:2;justify-self:start}
  .legal-section,.legal-notice{overflow-wrap:anywhere}
  .contact-route,.contact-card,.support-card,.guide-card,.download-card{min-width:0}
  .actions{align-items:stretch}
  :where(.page-hero,.resource-page-hero,.legal-hero,.contact-hero,.home-closing) .actions .button{
    width:100%;
  }
  .button,.filter-btn,.scroll-arrow,.dialog-icon-button,.dialog-close{min-height:44px}
}

@media(max-width:420px){
  .section-title{font-size:clamp(36px,11vw,48px)}
  .page-hero .display-title,.resource-page-hero .display-title,.legal-hero .display-title{
    font-size:clamp(40px,12vw,54px);
  }
  .products-hero h1,.contact-hero h1{font-size:clamp(40px,12vw,52px)}
  .footer-socials{gap:9px}
  .footer-socials a{width:42px;height:42px}
}


/* OSTROLUXX V14.1 — final mobile containment corrections */
@media(max-width:680px){
  .featured-product-card img{
    right:0;
    width:78%;
    max-width:78%;
  }
  .featured-product-card:not(.fp-large) img{
    right:0;
    width:68%;
    max-width:68%;
  }
  .download-card img{
    right:0;
    bottom:-5%;
    width:62%;
    max-width:62%;
    height:54%;
  }
}


/* ==========================================================
   OSTROLUXX V15 — CLEAN URL CONTACT HERO REPAIR
   ========================================================== */
.contact-hero{
  display:grid;
  grid-template-columns:minmax(0,700px) minmax(320px,1fr);
  align-items:center;
  column-gap:clamp(48px,7vw,128px);
  min-height:760px;
  padding:
    calc(var(--nav-height) + 74px)
    max(24px,calc((100vw - var(--max))/2))
    88px;
}
.contact-hero-copy{
  width:100%;
  max-width:700px;
  margin:0;
  padding:0;
  text-align:left;
}
.contact-hero h1{
  max-width:10.5ch;
  margin-top:16px;
  font-size:clamp(58px,6.2vw,94px);
  line-height:.94;
  letter-spacing:-.065em;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
}
.contact-hero p{
  max-width:640px;
  margin-top:25px;
  font-size:clamp(19px,1.65vw,25px);
  line-height:1.42;
}
.contact-response-strip{
  max-width:650px;
}
.contact-light-object{
  position:relative;
  right:auto;
  bottom:auto;
  align-self:center;
  justify-self:end;
  width:min(470px,36vw);
  margin:0;
  opacity:1;
}
@media(max-width:1100px){
  .contact-hero{
    grid-template-columns:minmax(0,1fr) minmax(280px,38vw);
    column-gap:42px;
  }
  .contact-hero h1{font-size:clamp(50px,7vw,76px)}
  .contact-light-object{width:min(410px,38vw)}
}
@media(max-width:820px){
  .contact-hero{
    grid-template-columns:1fr;
    min-height:auto;
    padding:
      calc(var(--nav-height) + 54px)
      22px
      92px;
  }
  .contact-hero-copy{
    max-width:680px;
  }
  .contact-hero h1{
    max-width:11ch;
    font-size:clamp(44px,9vw,68px);
  }
  .contact-light-object{
    position:absolute;
    right:-12%;
    bottom:-28%;
    width:min(460px,68vw);
    opacity:.2;
    pointer-events:none;
  }
}
@media(max-width:520px){
  .contact-hero{
    padding:
      calc(var(--nav-height) + 40px)
      18px
      72px;
  }
  .contact-hero h1{
    max-width:100%;
    font-size:clamp(39px,12vw,54px);
    line-height:.98;
  }
  .contact-hero p{
    font-size:18px;
    line-height:1.45;
  }
  .contact-response-strip{
    display:grid;
    grid-template-columns:1fr;
    max-width:320px;
  }
  .contact-light-object{
    right:-30%;
    bottom:-20%;
    width:360px;
    opacity:.12;
  }
}


/* ==========================================================
   OSTROLUXX V16 — CONTACT FORM STEP VISIBILITY FIX
   ========================================================== */
[hidden]{
  display:none !important;
}
.contact-form-pro .form-navigation [hidden]{
  display:none !important;
}
.contact-form-pro .form-navigation .button{
  visibility:visible;
}
.contact-form-pro .form-navigation{
  align-items:center;
  min-height:52px;
}
.contact-form-pro .field-error:not(:empty){
  display:block;
  margin-top:2px;
  font-size:12px;
  line-height:1.35;
}
.contact-form-pro [aria-invalid="true"]{
  scroll-margin-top:120px;
}
@media(max-width:520px){
  .contact-form-pro .form-navigation{
    min-height:0;
  }
}


html.ostro-transition-boot{background:#1b100b}
html.ostro-transition-boot body{visibility:hidden}

/* ==========================================================
   OSTROLUXX V17 — BRANDED PAGE-TO-PAGE TRANSITIONS
   ========================================================== */
.ostro-page-transition{
  position:fixed;
  z-index:2147483644;
  inset:0;
  display:grid;
  place-items:center;
  overflow:hidden;
  color:#ffffff;
  background:#1b100b;
  pointer-events:auto;
  opacity:1;
  visibility:visible;
  transition:opacity .46s cubic-bezier(.22,1,.36,1),visibility .46s step-end;
  isolation:isolate;
}
.ostro-page-transition::before,
.ostro-page-transition::after{
  position:absolute;
  border-radius:50%;
  content:"";
  pointer-events:none;
}
.ostro-page-transition::before{
  top:50%;
  left:50%;
  width:min(720px,86vw);
  aspect-ratio:1;
  background:radial-gradient(circle,rgba(168,213,111,.19) 0,rgba(123,175,61,.08) 26%,transparent 68%);
  filter:blur(10px);
  transform:translate(-50%,-50%) scale(.82);
  animation:ostroTransitionGlow 1.8s ease-in-out infinite alternate;
}
.ostro-page-transition::after{
  top:50%;
  left:50%;
  width:min(470px,66vw);
  aspect-ratio:1;
  border:1px solid rgba(168,213,111,.14);
  box-shadow:0 0 0 70px rgba(255,255,255,.012),0 0 0 140px rgba(168,213,111,.008);
  transform:translate(-50%,-50%);
  animation:ostroTransitionOrbit 8s linear infinite;
}
.ostro-page-transition.is-ready{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.ostro-page-transition.is-leaving{
  opacity:1;
  visibility:visible;
  transition:opacity .34s cubic-bezier(.22,1,.36,1),visibility 0s;
}
.ostro-transition-inner{
  position:relative;
  z-index:2;
  display:grid;
  width:min(360px,calc(100vw - 48px));
  justify-items:center;
  gap:22px;
  padding:34px 28px;
  text-align:center;
  transform:translateY(0);
  transition:transform .46s cubic-bezier(.22,1,.36,1),opacity .36s ease;
}
.ostro-page-transition.is-ready .ostro-transition-inner{
  opacity:0;
  transform:translateY(-10px) scale(.985);
}
.ostro-page-transition.is-leaving .ostro-transition-inner{
  opacity:1;
  transform:translateY(0) scale(1);
}
.ostro-transition-logo{
  display:block;
  width:min(250px,70vw);
  height:auto;
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.24));
}
.ostro-transition-copy{
  display:grid;
  gap:6px;
}
.ostro-transition-copy strong{
  color:#ffffff;
  font-size:12px;
  font-weight:780;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.ostro-transition-copy span{
  color:#cdbdad;
  font-size:12px;
  line-height:1.45;
}
.ostro-transition-progress{
  position:relative;
  width:min(280px,68vw);
  height:2px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.11);
}
.ostro-transition-progress::before{
  position:absolute;
  top:0;
  bottom:0;
  left:-46%;
  width:46%;
  border-radius:inherit;
  background:linear-gradient(90deg,transparent,#a8d56f 28%,#f4f8f0 62%,transparent);
  box-shadow:0 0 18px rgba(168,213,111,.72);
  content:"";
  animation:ostroTransitionProgress 1.15s cubic-bezier(.4,0,.2,1) infinite;
}
.ostro-transition-dot{
  position:absolute;
  top:50%;
  left:50%;
  width:8px;
  height:8px;
  border:1px solid rgba(255,255,255,.82);
  border-radius:50%;
  background:#a8d56f;
  box-shadow:0 0 10px #fff7d9,0 0 26px rgba(168,213,111,.78),0 0 52px rgba(123,175,61,.42);
  transform:translate(-50%,-50%);
}
html.ostro-transition-lock,
html.ostro-transition-lock body{
  overflow:hidden!important;
}
@keyframes ostroTransitionProgress{
  0%{left:-48%;opacity:.35}
  40%{opacity:1}
  100%{left:104%;opacity:.35}
}
@keyframes ostroTransitionGlow{
  to{opacity:.78;transform:translate(-50%,-50%) scale(1.04)}
}
@keyframes ostroTransitionOrbit{
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@media(max-width:520px){
  .ostro-transition-inner{gap:18px;padding:26px 20px}
  .ostro-transition-logo{width:min(220px,72vw)}
  .ostro-transition-progress{width:min(240px,70vw)}
}
@media(prefers-reduced-motion:reduce){
  .ostro-page-transition,
  .ostro-transition-inner{transition-duration:.01ms!important}
  .ostro-page-transition::before,
  .ostro-page-transition::after,
  .ostro-transition-progress::before{animation:none!important}
  .ostro-transition-progress::before{left:0;width:100%;opacity:.7}
}


/* ==========================================================
   OSTROLUXX V18 — OFFICIAL LOGO COLOUR SYSTEM
   Exact core colours from the supplied logo:
   Brown #0B100C · Gold #7BAF3D · White #FFFFFF
   ========================================================== */
:root{
  --brand-brown:#0b100c;
  --brand-brown-dark:#5f3f2e;
  --brand-brown-deep:#050805;
  --brand-brown-soft:#9a735d;
  --brand-gold:#7baf3d;
  --brand-gold-dark:#5d8a2b;
  --brand-gold-light:#a8d56f;
  --brand-gold-pale:#eaf4df;
  --brand-cream:#f7f0e6;
  --brand-white:#ffffff;

  /* Legacy aliases used throughout the original stylesheet */
  --brand-green:var(--brand-gold);
  --brand-green-dark:var(--brand-gold-dark);
  --brand-green-light:var(--brand-gold-light);
  --green:var(--brand-gold);
  --green-light:var(--brand-gold-light);
  --brown:var(--brand-brown);
  --brown-light:var(--brand-brown-soft);
  --orange:var(--brand-gold);
  --orange-light:var(--brand-gold-light);
  --blue:var(--brand-gold);
  --black:var(--brand-brown-deep);
  --black-soft:#3a2418;
  --surface:#4b3022;
  --surface-2:#5b3b2a;
  --paper:var(--brand-cream);
  --paper-2:#fcf8f1;
  --text:#302019;
  --muted:#79685e;
  --muted-light:#b5a69b;
  --line-dark:rgba(255,255,255,.18);
  --line:rgba(11,16,12,.16);
  --focus-ring:0 0 0 4px rgba(123,175,61,.18);
}

body{
  color:var(--text);
  background:var(--paper-2);
}
::selection{
  color:#050805;
  background:var(--brand-gold-light);
}

/* Navigation */
.site-header{
  border-bottom-color:rgba(255,255,255,.16);
  background:rgba(11,16,12,.95);
  box-shadow:0 8px 30px rgba(43,27,20,.13);
}
.site-header.scrolled{background:rgba(11,16,12,.98)}
.nav-list a{color:rgba(255,255,255,.82)}
.nav-list a:hover,.nav-list a[aria-current="page"]{color:#fff}
.nav-list a::after,.site-header::after{background:linear-gradient(90deg,transparent,var(--brand-gold),transparent)}
.header-cta,.mobile-nav .mobile-contact,.button-primary{
  color:#050805;
  border-color:var(--brand-gold);
  background:var(--brand-gold);
  box-shadow:0 10px 28px rgba(123,175,61,.24);
}
.header-cta:hover,.mobile-nav .mobile-contact:hover,.button-primary:hover{
  color:#050805;
  border-color:var(--brand-gold-light);
  background:var(--brand-gold-light);
}
.mobile-nav{
  color:#fff;
  background:linear-gradient(180deg,var(--brand-brown),var(--brand-brown-dark));
}
.mobile-nav a{border-color:rgba(255,255,255,.12)}
.mobile-nav a[aria-current="page"]{color:var(--brand-gold-light)}
.menu-toggle span,.menu-toggle span::before,.menu-toggle span::after{background:#fff}

/* Brand typography and controls */
.eyebrow,.text-link,
.product-card-category,.category-card span,.download-card span,
.resource-list-item>span,.guide-card>span,.support-card span,
.contact-route>span,.form-step-head>span,.contact-form-heading span,
.product-page-copy .eyebrow,.product-feature-grid span{
  color:var(--brand-gold-dark);
}
.dark .eyebrow,.page-hero .eyebrow,.home-hero .eyebrow,
.products-hero .eyebrow,.contact-hero .eyebrow,.footer-cta .eyebrow,
.resource-card span,.product-tile.dark small,.product-tile.blue small,
.project-copy small,.project-list-copy small{
  color:var(--brand-gold-light);
}
.button-dark{
  color:#fff;
  background:var(--brand-brown);
}
.button-dark:hover{background:var(--brand-brown-dark)}
.button-light-outline{
  color:var(--brand-brown);
  border-color:rgba(11,16,12,.28);
  background:#fff;
}
.button-light-outline:hover{
  color:#fff;
  border-color:var(--brand-brown);
  background:var(--brand-brown);
}
:focus-visible{outline-color:var(--brand-gold)}

/* Main cinematic surfaces */
.home-hero,
.home-purpose,
.page-hero,
.products-hero,
.contact-hero,
.content-section.dark,
.stats-band,
.compare,
.experience,
.home-resources-section,
.light-lab-section{
  color:#fff;
  background:
    radial-gradient(circle at 72% 48%,rgba(123,175,61,.22),transparent 24%),
    radial-gradient(circle at 28% 78%,rgba(168,213,111,.08),transparent 30%),
    linear-gradient(145deg,var(--brand-brown) 0%,var(--brand-brown-dark) 52%,var(--brand-brown-deep) 100%);
}
.gradient-text,
.home-purpose h2 span,
.metric strong,.stat strong,
.v8-purpose-metrics .v8-metric strong{
  background:linear-gradient(100deg,#fff 5%,var(--brand-gold-light) 48%,var(--brand-gold) 78%,#f4f8f0 100%);
  -webkit-background-clip:text;
  background-clip:text;
}
.home-hero-sub,.page-hero p,.products-hero p,.contact-hero p{color:#f1e7de}

/* Light effects */
.hero-orbit::before,
.ostro-transition-dot,
.file-drop-icon,.success-icon,
.contact-response-strip b,
.dialog-benefit-list i,.dialog-application-list i,
.dialog-document-list i,.dialog-specification-notes i,
.dialog-document-request i{
  background:var(--brand-gold);
  box-shadow:0 0 20px rgba(123,175,61,.65);
}
.purpose-ring::before,.closing-orb::after,.contact-light-object span,
.product-hero-head::after{
  background:radial-gradient(circle,#fff 0%,#f4f8f0 25%,var(--brand-gold-light) 48%,var(--brand-gold) 72%,var(--brand-brown-dark) 100%);
  box-shadow:0 0 90px rgba(123,175,61,.42);
}
.hero-light,.showcase-art,.tile-art,.contact-light-object,.product-page-visual,
.product-card-art,.dialog-visual{filter:saturate(.94)}

/* Light surfaces and cards */
.home-intro,.content-section,.featured-products-section,.why-ostroluxx-section,
.product-page-sections{background:#fff}
.content-section.soft,.product-lineup,.lineup,.collection,
.product-explorer,.contact-workspace,.contact-assurance,
.v8-section.v8-soft,.v8-product-story{background:var(--brand-cream)}
:is(.category-card,.detailed-product-card,.why-ostroluxx-card,.download-card,
.guide-card,.support-card,.contact-form-shell,.contact-assurance article,
.product-feature-grid article,.related-product-page){
  border-color:rgba(11,16,12,.14);
  box-shadow:0 10px 34px rgba(11,16,12,.08);
}
:is(.category-card,.detailed-product-card,.why-ostroluxx-card,.download-card,
.guide-card,.support-card):hover{
  border-color:rgba(123,175,61,.62);
  box-shadow:0 22px 55px rgba(11,16,12,.16);
}
.product-card-specs div,.dialog-content code,.product-page-code{
  color:var(--brand-brown);
  background:var(--brand-gold-pale);
}
.product-filter:hover,.product-filter.active{
  color:#050805;
  border-color:var(--brand-gold);
  background:var(--brand-gold-light);
}

/* Product visual areas */
.product-card-art,.product-page-visual,.dialog-visual-panel{
  background:
    radial-gradient(circle at 50% 52%,rgba(168,213,111,.22),transparent 31%),
    linear-gradient(145deg,var(--brand-brown),var(--brand-brown-deep));
}
.product-card-art::before,.product-page-visual::after,.dialog-visual::after,.product-hero-beam{
  background:linear-gradient(to bottom,rgba(168,213,111,.25),transparent 82%);
}
.product-card-shortlist-toggle:hover,.product-card-shortlist-toggle.active{
  color:#050805;
  border-color:var(--brand-gold);
  background:var(--brand-gold);
}
.dialog-tab.active{
  color:#fff;
  border-color:var(--brand-brown);
  background:var(--brand-brown);
}
.dialog-topbar .dialog-icon-button:hover,.dialog-topbar .dialog-close:hover,
.dialog-icon-button[aria-expanded="true"]{
  color:#050805;
  border-color:var(--brand-gold);
  background:var(--brand-gold-light);
}
.dialog-status-card,.dialog-overview-copy{
  border-color:var(--brand-gold);
  background:var(--brand-gold-pale);
}

/* Forms */
.contact-form-pro input:focus,.contact-form-pro textarea:focus,.contact-form-pro select:focus{
  border-color:var(--brand-gold);
  box-shadow:var(--focus-ring);
}
.contact-form-pro input,.contact-form-pro textarea,.contact-form-pro select,
.file-drop{background:#fcf8f1}
.file-drop:hover{
  border-color:var(--brand-gold);
  background:var(--brand-gold-pale);
}
.consent-field input{accent-color:var(--brand-gold)}
.form-progress-track i{background:linear-gradient(90deg,var(--brand-brown),var(--brand-gold))}
.contact-service-note,.product-page-enquiry{background:var(--brand-brown)}

/* Footer */
.site-footer{
  color:#f1e7de;
  background:var(--brand-brown);
}
.footer-cta{
  border-bottom-color:rgba(255,255,255,.14);
  background:
    radial-gradient(circle at 82% 50%,rgba(123,175,61,.24),transparent 26%),
    linear-gradient(135deg,var(--brand-brown-dark),var(--brand-brown));
}
.footer-main,.footer-bottom{border-color:rgba(255,255,255,.15)}
.footer-col a:hover,.footer-legal a:hover,.rapidbizz-credit:hover{color:var(--brand-gold-light)!important}
.footer-socials a:hover{
  color:#050805;
  border-color:var(--brand-gold);
  background:var(--brand-gold);
}
.newsletter{border-bottom-color:rgba(168,213,111,.55)}

/* Branded page transition */
html.ostro-transition-boot{background:var(--brand-brown)}
.ostro-page-transition{
  color:#fff;
  background:var(--brand-brown);
}
.ostro-page-transition::before{
  background:radial-gradient(circle,rgba(168,213,111,.30) 0,rgba(123,175,61,.14) 30%,transparent 68%);
}
.ostro-page-transition::after{
  border-color:rgba(168,213,111,.24);
  box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(168,213,111,.018);
}
.ostro-transition-copy span{color:#f0dfcf}
.ostro-transition-progress{background:rgba(255,255,255,.2)}

@media(max-width:760px){
  .site-header{background:rgba(11,16,12,.98)}
  .home-hero,.page-hero,.products-hero,.contact-hero{
    background:
      radial-gradient(circle at 70% 40%,rgba(123,175,61,.18),transparent 28%),
      linear-gradient(155deg,var(--brand-brown),var(--brand-brown-deep));
  }
}


/* ==========================================================
   OSTROLUXX V20 — GREENISH + BLACK PREMIUM THEME
   Core palette: Black #050805 · Green #7BAF3D · Light Green #A8D56F
   ========================================================== */
:root{
  --brand-brown:#0b100c;
  --brand-brown-dark:#070a08;
  --brand-brown-deep:#020403;
  --brand-brown-soft:#26352a;
  --brand-gold:#7baf3d;
  --brand-gold-dark:#5d8a2b;
  --brand-gold-light:#a8d56f;
  --brand-gold-pale:#eaf4df;
  --brand-cream:#0e1510;
  --brand-white:#ffffff;
  --brand-green:#7baf3d;
  --brand-green-dark:#5d8a2b;
  --brand-green-light:#a8d56f;
  --green:#7baf3d;
  --green-light:#a8d56f;
  --brown:#0b100c;
  --brown-light:#26352a;
  --orange:#7baf3d;
  --orange-light:#a8d56f;
  --blue:#7baf3d;
  --black:#020403;
  --black-soft:#070a08;
  --surface:#0d140f;
  --surface-2:#121b14;
  --paper:#0b100c;
  --paper-2:#080c09;
  --text:#f1f6ee;
  --muted:#aab5a6;
  --muted-light:#7f8c7c;
  --line-dark:rgba(168,213,111,.18);
  --line:rgba(123,175,61,.18);
  --focus-ring:0 0 0 4px rgba(123,175,61,.22);
}
html{background:#020403}
body{
  color:var(--text);
  background:
    radial-gradient(circle at 78% 12%,rgba(123,175,61,.055),transparent 24%),
    #050805;
}
::selection{color:#071007;background:#a8d56f}

/* Global surfaces */
:where(
  .home-intro,.content-section,.featured-products-section,.why-ostroluxx-section,
  .product-page-sections,.product-lineup,.lineup,.collection,.product-explorer,
  .contact-workspace,.contact-assurance,.v8-section,.v8-section.v8-soft,
  .v8-product-story,.legal-content,.catalogue-section,.resource-section,
  .home-projects,.applications,.products-main,.product-page-main
){
  color:var(--text);
  background:#070b08;
}
:where(.content-section.soft,.product-lineup,.lineup,.collection,.product-explorer,
.contact-workspace,.contact-assurance,.v8-section.v8-soft,.v8-product-story,
.legal-content){background:#0b110d}

/* Header and navigation */
.site-header{
  border-bottom-color:rgba(123,175,61,.22);
  background:rgba(3,6,4,.92);
  box-shadow:0 10px 36px rgba(0,0,0,.36);
}
.site-header.scrolled{background:rgba(2,4,3,.98)}
.site-header::after,.nav-list a::after{
  background:linear-gradient(90deg,transparent,#7baf3d,#a8d56f,transparent);
}
.nav-list a{color:rgba(239,246,235,.78)}
.nav-list a:hover,.nav-list a[aria-current="page"]{color:#fff}
.header-cta,.mobile-nav .mobile-contact,.button-primary{
  color:#061006;
  border-color:#7baf3d;
  background:#7baf3d;
  box-shadow:0 10px 30px rgba(123,175,61,.24);
}
.header-cta:hover,.mobile-nav .mobile-contact:hover,.button-primary:hover{
  color:#020403;
  border-color:#a8d56f;
  background:#a8d56f;
  box-shadow:0 14px 36px rgba(123,175,61,.3);
}
.mobile-nav{color:#fff;background:linear-gradient(180deg,#090e0a,#020403)}
.mobile-nav a{border-color:rgba(168,213,111,.14)}
.mobile-nav a[aria-current="page"]{color:#a8d56f}

/* Typography and links */
.eyebrow,.text-link,.product-card-category,.category-card span,.download-card span,
.resource-list-item>span,.guide-card>span,.support-card span,.contact-route>span,
.form-step-head>span,.contact-form-heading span,.product-page-copy .eyebrow,
.product-feature-grid span,.dialog-category,.related-product-page small{
  color:#8fc44c;
}
.dark .eyebrow,.page-hero .eyebrow,.home-hero .eyebrow,.products-hero .eyebrow,
.contact-hero .eyebrow,.footer-cta .eyebrow,.resource-card span,
.product-tile.dark small,.product-tile.blue small,.project-copy small,
.project-list-copy small{color:#a8d56f}
.body-large,.section-head p,.lineup-head p,.projects-head p,.applications-head p,
.split-copy p,.v8-section-head p,.home-intro p,.home-closing p,
.product-page-section-head p{color:#aab5a6}
.gradient-text,.home-purpose h2 span,.metric strong,.stat strong,
.v8-purpose-metrics .v8-metric strong{
  background:linear-gradient(100deg,#fff 3%,#dff2ca 35%,#a8d56f 62%,#7baf3d 82%,#fff 100%);
  -webkit-background-clip:text;background-clip:text;
}

/* Buttons */
.button-dark{color:#fff;border-color:#1d2a20;background:#0c130e}
.button-dark:hover{border-color:#7baf3d;background:#16221a}
.button-light-outline{
  color:#eaf1e6;
  border-color:rgba(168,213,111,.34);
  background:rgba(255,255,255,.025);
}
.button-light-outline:hover{color:#061006;border-color:#7baf3d;background:#7baf3d}
.button-outline{border-color:rgba(168,213,111,.36);color:#eef5ea}
.button-outline:hover{border-color:#7baf3d;color:#a8d56f}
:focus-visible{outline-color:#7baf3d;box-shadow:var(--focus-ring)}

/* Cinematic sections */
.home-hero,.home-purpose,.page-hero,.products-hero,.contact-hero,
.content-section.dark,.stats-band,.compare,.experience,.home-resources-section,
.light-lab-section,.specification-band,.legal-hero{
  color:#fff;
  background:
    radial-gradient(circle at 72% 45%,rgba(123,175,61,.18),transparent 25%),
    radial-gradient(circle at 24% 78%,rgba(168,213,111,.07),transparent 31%),
    linear-gradient(145deg,#0b110d 0%,#050805 54%,#010201 100%);
}
.home-hero-sub,.page-hero p,.products-hero p,.contact-hero p,.legal-hero p{color:#c7d2c3}

/* Cards and panels */
:where(
  .category-card,.detailed-product-card,.why-ostroluxx-card,.download-card,
  .guide-card,.support-card,.contact-form-shell,.contact-assurance article,
  .product-feature-grid article,.related-product-page,.value-card,.tech-card,
  .purpose-card,.v8-card,.legal-section,.legal-notice,.contact-route,
  .resource-card,.catalog-card,.product-tile.light,.featured-product-card
){
  color:var(--text);
  border-color:rgba(123,175,61,.16);
  background:#101712;
  box-shadow:0 12px 36px rgba(0,0,0,.26);
}
:where(.category-card,.detailed-product-card,.why-ostroluxx-card,.download-card,
.guide-card,.support-card,.value-card,.tech-card,.purpose-card,.v8-card,
.resource-card,.catalog-card,.featured-product-card):hover{
  border-color:rgba(123,175,61,.56);
  box-shadow:0 24px 62px rgba(0,0,0,.38),0 0 0 1px rgba(123,175,61,.08);
}
:where(.category-card,.detailed-product-card,.why-ostroluxx-card,.download-card,
.guide-card,.support-card,.contact-form-shell,.contact-assurance article,
.product-feature-grid article,.related-product-page,.value-card,.tech-card,
.purpose-card,.v8-card,.legal-section,.contact-route) :is(h2,h3,h4,strong){color:#f4f8f1}
:where(.category-card,.detailed-product-card,.why-ostroluxx-card,.download-card,
.guide-card,.support-card,.contact-assurance article,.product-feature-grid article,
.related-product-page,.value-card,.tech-card,.purpose-card,.v8-card,.legal-section,
.contact-route) p{color:#9fac9b}

/* Product explorer and visuals */
.product-card-art,.product-page-visual,.dialog-visual-panel,.dialog-visual{
  background:
    radial-gradient(circle at 50% 52%,rgba(123,175,61,.22),transparent 31%),
    linear-gradient(145deg,#111a13,#020403);
}
.product-card-art::before,.product-page-visual::after,.dialog-visual::after,
.product-hero-beam{background:linear-gradient(to bottom,rgba(168,213,111,.24),transparent 82%)}
.product-card-content,.product-card-specs div,.product-card-installation,
.product-page-code,.dialog-content code{
  color:#eaf1e6;
  border-color:rgba(123,175,61,.15);
  background:#121a14;
}
.product-card-category{border-color:rgba(123,175,61,.15)}
.product-card-content>p,.product-card-installation,.dialog-content>p{color:#9fac9b}
.product-card-shortlist-toggle:hover,.product-card-shortlist-toggle.active{
  color:#061006;border-color:#7baf3d;background:#7baf3d;
}
.product-filter{color:#c7d2c3;border-color:rgba(123,175,61,.18);background:#0d140f}
.product-filter:hover,.product-filter.active{color:#061006;border-color:#7baf3d;background:#a8d56f}
.product-card-image-action{background:rgba(5,10,6,.92);border:1px solid rgba(123,175,61,.25)}

/* Product dialog */
.product-dialog,.product-dialog-v5{color:var(--text);background:#090e0a}
.product-dialog::backdrop,.product-dialog-v5::backdrop{background:rgba(0,0,0,.84)}
.dialog-topbar,.dialog-tab-list,.dialog-action-bar{
  border-color:rgba(123,175,61,.14);
  background:rgba(8,13,9,.97);
}
.dialog-topbar-identity strong,.dialog-content h2,.dialog-subtitle{color:#f3f7f0}
.dialog-breadcrumb,.dialog-tab{color:#95a190}
.dialog-tab.active{color:#061006;border-color:#7baf3d;background:#7baf3d}
.dialog-topbar .dialog-icon-button,.dialog-topbar .dialog-close{
  color:#dce7d7;border-color:rgba(123,175,61,.2);background:#111913;
}
.dialog-topbar .dialog-icon-button:hover,.dialog-topbar .dialog-close:hover,
.dialog-icon-button[aria-expanded="true"]{color:#061006;border-color:#7baf3d;background:#a8d56f}
.dialog-quick-specs>div,.dialog-specs div,.dialog-care-grid>div,
.configurator-grid label,.configurator-notes{border-color:rgba(123,175,61,.14);background:#111913}
.dialog-quick-specs span,.dialog-specs span,.dialog-care-grid span{color:#83907f}
.dialog-quick-specs strong,.dialog-specs strong,.dialog-care-grid p{color:#eef4eb}
.dialog-status-card,.dialog-overview-copy{border-color:#7baf3d;background:#142018}
.dialog-status-card p,.dialog-overview-copy{color:#b7c4b2}
.product-share-popover{color:#edf4e9;border-color:rgba(123,175,61,.2);background:rgba(9,14,10,.98)}
.product-share-popover-header{border-color:rgba(123,175,61,.14)}
.product-share-popover-header span{color:#91a08c}
.product-share-list :is(a,button){color:#dfe8db}
.product-share-list :is(a,button):hover{color:#061006;background:#a8d56f}

/* Forms */
.contact-form-shell,.contact-form-pro,.contact-form-heading{background:#0d140f}
.contact-form-heading{border-color:rgba(123,175,61,.16)}
.contact-form-pro input,.contact-form-pro textarea,.contact-form-pro select,
.file-drop,.product-configurator input,.product-configurator select,
.product-configurator textarea{
  color:#edf4e9;
  border-color:rgba(123,175,61,.2);
  background:#101712;
}
.contact-form-pro input::placeholder,.contact-form-pro textarea::placeholder,
.product-configurator input::placeholder,.product-configurator textarea::placeholder{color:#748170}
.contact-form-pro input:focus,.contact-form-pro textarea:focus,.contact-form-pro select:focus,
.product-configurator input:focus,.product-configurator select:focus,.product-configurator textarea:focus{
  border-color:#7baf3d;box-shadow:var(--focus-ring);
}
.file-drop:hover{border-color:#7baf3d;background:#152019}
.consent-field{color:#aab5a6}
.consent-field input{accent-color:#7baf3d}
.form-progress-track{background:#1a251c}
.form-progress-track i{background:linear-gradient(90deg,#5d8a2b,#a8d56f)}
.contact-service-note,.product-page-enquiry{color:#edf4e9;background:#101712}
.contact-success{color:#edf4e9;background:#0d140f}

/* Tables, lists and legal content */
.product-tech-table div,.resource-list-item,.legal-section,.legal-toc{
  border-color:rgba(123,175,61,.15);
  background:#0e1510;
}
.product-tech-table span,.resource-list-item p,.legal-section p,.legal-notice p{color:#9fac9b}
.product-tech-table strong,.resource-list-item h3,.legal-section h2,.legal-toc strong{color:#eef4eb}
.legal-toc a{color:#aab5a6}
.legal-toc a:hover{color:#061006;background:#7baf3d}
.legal-notice{border-left-color:#7baf3d;background:#121b14}

/* Footer */
.site-footer{color:#b9c5b5;background:#020403}
.footer-cta{
  border-bottom-color:rgba(123,175,61,.15);
  background:radial-gradient(circle at 82% 50%,rgba(123,175,61,.18),transparent 26%),#050805;
}
.footer-main,.footer-bottom{border-color:rgba(123,175,61,.14)}
.footer-col a:hover,.footer-legal a:hover,.rapidbizz-credit:hover{color:#a8d56f!important}
.footer-socials a{color:#d8e3d4;border-color:rgba(123,175,61,.2);background:#0d140f}
.footer-socials a:hover{color:#061006;border-color:#7baf3d;background:#7baf3d}
.newsletter{border-bottom-color:rgba(123,175,61,.5)}

/* Lighting effects and cursor */
.hero-orbit::before,.ostro-transition-dot,.file-drop-icon,.success-icon,
.contact-response-strip b,.dialog-benefit-list i,.dialog-application-list i,
.dialog-document-list i,.dialog-specification-notes i,.dialog-document-request i{
  background:#7baf3d;box-shadow:0 0 20px rgba(123,175,61,.65);
}
.purpose-ring::before,.closing-orb::after,.contact-light-object span,
.product-hero-head::after{
  background:radial-gradient(circle,#fff 0%,#eaf8dd 24%,#a8d56f 48%,#7baf3d 72%,#071008 100%);
  box-shadow:0 0 92px rgba(123,175,61,.42);
}
.ostro-cursor-core{background:#8fc44c;box-shadow:0 0 7px #ecffe0,0 0 16px rgba(168,213,111,.76),0 0 26px rgba(123,175,61,.4)}
.ostro-cursor-ring{border-color:rgba(123,175,61,.74);box-shadow:inset 0 0 10px rgba(123,175,61,.12),0 0 14px rgba(123,175,61,.2)}
.ostro-cursor-halo{background:radial-gradient(circle,rgba(223,245,201,.38),rgba(123,175,61,.16) 36%,rgba(123,175,61,.06) 58%,transparent 74%)}
.ostro-cursor-beam{background:linear-gradient(180deg,rgba(223,245,201,.24),rgba(123,175,61,.08) 52%,transparent 100%)}

/* Transition fallback CSS */
html.ostro-transition-boot{background:#020403}
.ostro-page-transition{color:#fff;background:#020403}
.ostro-page-transition::before{background:radial-gradient(circle,rgba(168,213,111,.24),rgba(123,175,61,.10) 32%,transparent 68%)}
.ostro-page-transition::after{border-color:rgba(123,175,61,.22);box-shadow:0 0 0 70px rgba(255,255,255,.018),0 0 0 140px rgba(123,175,61,.014)}
.ostro-transition-copy span{color:#b8c8b2}

@media(max-width:760px){
  .site-header{background:rgba(2,4,3,.98)}
  .home-hero,.page-hero,.products-hero,.contact-hero{
    background:radial-gradient(circle at 70% 40%,rgba(123,175,61,.16),transparent 30%),linear-gradient(155deg,#0b110d,#020403);
  }
}


/* V20 dark-surface completion for all catalogue, resource and product layouts */
.portfolio-summary-grid,.product-search,.product-sort select,.image-mosaic-card,
.dialog-visual-panel,.dialog-gallery button,.dialog-benefit-list div,
.dialog-application-list div,.dialog-document-list div,.dialog-specification-notes div,
.product-configurator,.contact-assurance article,.product-page-quick div,
.related-product-page,.split-media.light,.catalogue-card,.resource-list-item,
.product-toolbar,.product-page-hero,.product-page-sections,.product-image-showcase{
  color:#edf4e9;
  border-color:rgba(123,175,61,.16);
  background:#0d140f;
}
.portfolio-summary-grid{box-shadow:0 24px 70px rgba(0,0,0,.32)}
.portfolio-stat{border-color:rgba(123,175,61,.16)}
.portfolio-stat strong{color:#a8d56f}
.product-search input,.product-sort select{color:#edf4e9}
.product-search input::placeholder{color:#7f8c7c}
.image-mosaic-card{box-shadow:0 10px 30px rgba(0,0,0,.3)}
.dialog-visual-panel{background:linear-gradient(155deg,#101712,#050805)}
.dialog-visual-note,.dialog-gallery button{color:#9fac9b}
.dialog-gallery button.active{border-color:#7baf3d;box-shadow:0 0 0 2px rgba(123,175,61,.18)}
.dialog-benefit-list div,.dialog-application-list div,.dialog-document-list div,
.dialog-specification-notes div{background:#121a14}
.configurator-grid label,.configurator-notes{color:#b8c4b4}
.product-page-hero{background:radial-gradient(circle at 75% 45%,rgba(123,175,61,.13),transparent 28%),#090e0a}
.product-page-breadcrumb{color:#93a08f}
.product-page-copy>p{color:#aab5a6}
.product-page-quick div{background:rgba(16,23,18,.88)}
.product-page-quick span{color:#82907e}
.product-page-apps span{color:#061006;background:#a8d56f}
.related-product-page img{background:#070b08}
.related-product-page code{color:#8f9c8b}
.featured-products-section,.why-ostroluxx-section,.product-image-showcase{
  background:#070b08;
}
.featured-product-card:not(.fp-large),.why-ostroluxx-card{background:#101712}
.fp-copy p,.why-ostroluxx-card p{color:#9fac9b}
.fp-copy h3,.why-ostroluxx-card h3{color:#f3f7f0}
.home-projects,.showcase-grid{background:#050805}
.showcase-card.light{color:#edf4e9;background:#101712}
.showcase-card.light p{color:#aab5a6}
.product-tile.light{color:#edf4e9;background:#101712}
.product-tile.light p{color:#9fac9b}
.product-tile.warm{color:#edf4e9;background:linear-gradient(160deg,#142018,#090e0a)}
.product-tile.warm p{color:#9fac9b}
.resource-list-item a,.product-card-page{color:#a8d56f}
.contact-assurance{background:#0b110d}
.contact-success p,.form-step-head p,.file-drop small,.consent-field{color:#9fac9b}
.form-status.error{color:#ffb6b6;background:#321515}
.form-status.success{color:#bce7c2;background:#113019}


/* V20 final cascade authority: ensure no light legacy surface overrides the dark theme */
body main>section{background-color:#070b08!important;color:#f1f6ee}
.home-intro,.content-section,.featured-products-section,.why-ostroluxx-section,
.product-page-sections,.product-lineup,.lineup,.collection,.product-explorer,
.contact-workspace,.contact-assurance,.v8-section,.v8-section.v8-soft,
.v8-product-story,.legal-content,.catalogue-section,.resource-section,
.home-projects,.applications,.products-main,.product-page-main,.product-image-showcase{
  color:#f1f6ee!important;
  background:#070b08!important;
}
.content-section.soft,.product-lineup,.lineup,.collection,.product-explorer,
.contact-workspace,.contact-assurance,.v8-section.v8-soft,.v8-product-story,
.legal-content{background:#0b110d!important}
.category-card,.detailed-product-card,.why-ostroluxx-card,.download-card,
.guide-card,.support-card,.contact-form-shell,.contact-assurance article,
.product-feature-grid article,.related-product-page,.value-card,.tech-card,
.purpose-card,.v8-card,.legal-section,.legal-notice,.contact-route,
.resource-card,.catalog-card,.featured-product-card:not(.fp-large),
.image-mosaic-card,.portfolio-summary-grid{
  color:#edf4e9!important;
  border-color:rgba(123,175,61,.16)!important;
  background:#101712!important;
  box-shadow:0 12px 36px rgba(0,0,0,.26)!important;
}
.category-card h3,.detailed-product-card h3,.why-ostroluxx-card h3,.download-card h3,
.guide-card h2,.support-card h2,.value-card h3,.tech-card h3,.purpose-card h3,
.v8-card h3,.legal-section h2,.contact-route strong,.resource-card h3,
.catalog-card h3,.featured-product-card h3,.product-feature-grid h3,
.related-product-page h3{color:#f4f8f1!important}
.category-card p,.detailed-product-card p,.why-ostroluxx-card p,.download-card p,
.guide-card p,.support-card p,.value-card p,.tech-card p,.purpose-card p,
.v8-card p,.legal-section p,.contact-route small,.resource-card p,
.catalog-card p,.featured-product-card p,.product-feature-grid p,
.related-product-page p{color:#9fac9b!important}
.showcase-card.light,.product-tile.light,.product-tile.warm,.split-media.light{
  color:#edf4e9!important;background:#101712!important
}
.showcase-card.light p,.product-tile.light p,.product-tile.warm p{color:#9fac9b!important}
.product-page-hero{background:radial-gradient(circle at 75% 45%,rgba(123,175,61,.13),transparent 28%),#090e0a!important}
.contact-form-shell,.contact-form-pro,.contact-form-heading,.product-configurator{
  color:#edf4e9!important;background:#0d140f!important
}
.dialog-content,.dialog-layout-v5,.dialog-tab-panel{color:#edf4e9;background:#090e0a}

/* ==========================================================
   OSTROLUXX V21 — FAQ / ACCORDION GREEN-BLACK CONTRAST FIX
   ========================================================== */
.v8-faq{
  gap:14px;
}
.v8-faq-item{
  overflow:hidden;
  color:#eef5eb;
  border:1px solid rgba(123,175,61,.28);
  background:linear-gradient(145deg,#121a14,#0b110d);
  box-shadow:0 10px 30px rgba(0,0,0,.22);
  transition:border-color .25s ease,background .25s ease,box-shadow .25s ease,transform .25s ease;
}
.v8-faq-item:hover{
  border-color:rgba(168,213,111,.58);
  background:linear-gradient(145deg,#162119,#0d150f);
  box-shadow:0 14px 38px rgba(0,0,0,.3),0 0 0 1px rgba(123,175,61,.07);
  transform:translateY(-1px);
}
.v8-faq-item[open]{
  border-color:#7baf3d;
  background:linear-gradient(145deg,#17251b,#0d160f);
  box-shadow:0 16px 42px rgba(0,0,0,.34),0 0 0 1px rgba(123,175,61,.14);
}
.v8-faq-item summary{
  min-height:66px;
  display:flex;
  align-items:center;
  padding:20px 68px 20px 24px;
  color:#f4f8f1;
  font-size:17px;
  font-weight:750;
  line-height:1.35;
}
.v8-faq-item summary:hover{color:#dff2cf}
.v8-faq-item summary:focus-visible{
  outline:3px solid rgba(168,213,111,.5);
  outline-offset:-3px;
  border-radius:17px;
}
.v8-faq-item summary::after{
  right:22px;
  width:32px;
  height:32px;
  color:#071008;
  background:#7baf3d;
  box-shadow:0 7px 18px rgba(123,175,61,.24);
  font-size:20px;
  font-weight:700;
}
.v8-faq-item:hover summary::after,
.v8-faq-item[open] summary::after{
  background:#a8d56f;
}
.v8-faq-item p{
  margin:0;
  padding:0 24px 24px;
  color:#b8c5b3;
  font-size:15px;
  line-height:1.65;
}
@media(max-width:620px){
  .v8-faq{gap:11px;margin-top:38px}
  .v8-faq-item summary{
    min-height:62px;
    padding:17px 60px 17px 18px;
    font-size:15px;
  }
  .v8-faq-item summary::after{right:16px;width:30px;height:30px}
  .v8-faq-item p{padding:0 18px 20px;font-size:14px}
}

/* ==========================================================
   OSTROLUXX V22 — BRAND AUTHORITY + SURFACE / IMAGE ALIGNMENT
   Final palette authority: Black / deep green / #7BAF3D / white.
   ========================================================== */
:root{
  --v22-black:#020403;
  --v22-black-2:#050805;
  --v22-panel:#0b110d;
  --v22-panel-2:#101712;
  --v22-panel-3:#142018;
  --v22-green:#7baf3d;
  --v22-green-light:#a8d56f;
  --v22-white:#ffffff;
  --v22-white-soft:rgba(255,255,255,.78);
  --v22-white-muted:rgba(255,255,255,.62);
  --v22-line:rgba(123,175,61,.22);
}

/* Global brand surfaces */
html,body{background:var(--v22-black)!important;color:var(--v22-white)}
body main>section,
.home-intro,.content-section,.content-section.soft,.featured-products-section,
.why-ostroluxx-section,.product-page-sections,.product-lineup,.lineup,.collection,
.product-explorer,.contact-workspace,.contact-assurance,.v8-section,.v8-section.v8-soft,
.v8-product-story,.legal-content,.catalogue-section,.resource-section,.home-projects,
.applications,.products-main,.product-page-main,.product-image-showcase{
  color:var(--v22-white)!important;
  background:var(--v22-black-2)!important;
}

/* No legacy cream/white cards on dark pages */
.category-card,.detailed-product-card,.why-ostroluxx-card,.download-card,.guide-card,
.support-card,.contact-form-shell,.contact-assurance article,.product-feature-grid article,
.related-product-page,.value-card,.tech-card,.purpose-card,.v8-card,.legal-section,
.legal-notice,.contact-route,.resource-card,.catalog-card,.featured-product-card:not(.fp-large),
.image-mosaic-card,.portfolio-summary-grid,.product-search,.product-sort select,
.product-page-quick div,.product-tech-table div,.resource-list-item,.legal-toc,
.dialog-quick-specs>div,.dialog-specs div,.dialog-care-grid>div,
.configurator-grid label,.configurator-notes,.dialog-gallery button,
.dialog-overview-copy,.dialog-status-card,.dialog-specification-notes div,
.dialog-benefit-list div,.dialog-application-list div,.dialog-document-list div,
.dialog-document-request{
  color:var(--v22-white)!important;
  border-color:var(--v22-line)!important;
  background:var(--v22-panel-2)!important;
  box-shadow:none;
}

/* Typography contrast on branded dark surfaces */
.category-card :is(h2,h3,h4,strong),.detailed-product-card :is(h2,h3,h4,strong),
.why-ostroluxx-card :is(h2,h3,h4,strong),.download-card :is(h2,h3,h4,strong),
.guide-card :is(h2,h3,h4,strong),.support-card :is(h2,h3,h4,strong),
.product-feature-grid article :is(h2,h3,h4,strong),.related-product-page :is(h2,h3,h4,strong),
.v8-card :is(h2,h3,h4,strong),.legal-section :is(h2,h3,h4,strong),
.contact-route :is(h2,h3,h4,strong),.resource-card :is(h2,h3,h4,strong),
.catalog-card :is(h2,h3,h4,strong),.dialog-content :is(h2,h3,h4,strong),
.product-tech-table strong{color:var(--v22-white)!important}

.category-card p,.detailed-product-card p,.why-ostroluxx-card p,.download-card p,
.guide-card p,.support-card p,.product-feature-grid article p,.related-product-page p,
.v8-card p,.legal-section p,.contact-route small,.resource-card p,.catalog-card p,
.dialog-content p,.product-tech-table span,.dialog-visual-note{
  color:var(--v22-white-muted)!important;
}

/* Product dialog — remove all white strips and legacy cream rows */
.product-dialog,.product-dialog-v5,.dialog-layout-v5,.dialog-content,.dialog-tab-panel{
  color:var(--v22-white)!important;
  background:var(--v22-black-2)!important;
}
.dialog-topbar,.dialog-tab-list,.dialog-action-bar{
  color:var(--v22-white)!important;
  border-color:var(--v22-line)!important;
  background:rgba(5,8,5,.98)!important;
}
.dialog-document-list{
  display:grid;
  gap:12px;
}
.dialog-document-list .dialog-document-request,
.dialog-document-request{
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr) auto!important;
  min-height:62px;
  align-items:center!important;
  gap:13px!important;
  width:100%;
  padding:12px 16px!important;
  border:1px solid var(--v22-line)!important;
  border-radius:16px!important;
  color:var(--v22-white)!important;
  background:var(--v22-panel-2)!important;
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.dialog-document-request:hover{
  border-color:rgba(168,213,111,.62)!important;
  background:var(--v22-panel-3)!important;
  transform:translateY(-1px);
}
.dialog-document-request i{
  display:grid!important;
  width:32px!important;
  height:32px!important;
  place-items:center!important;
  border-radius:50%!important;
  color:#061006!important;
  background:var(--v22-green)!important;
  box-shadow:0 7px 18px rgba(123,175,61,.20)!important;
}
.dialog-document-request span{
  min-width:0;
  color:var(--v22-white)!important;
  font-size:14px;
  font-weight:650;
  line-height:1.35;
}
.dialog-document-request b{
  color:var(--v22-green-light)!important;
  font-size:13px!important;
  font-weight:800!important;
}

/* Dialog action bar — dark buttons, green primary, no white backgrounds */
.dialog-action-bar{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:10px!important;
  padding-top:16px!important;
  padding-bottom:16px!important;
}
.dialog-action-bar .button,
.dialog-content .button-light-outline,
.dialog-action-bar .button-light-outline{
  width:100%!important;
  min-width:0!important;
  min-height:50px!important;
  margin:0!important;
  padding:10px 14px!important;
  white-space:normal!important;
  text-align:center!important;
  color:var(--v22-white)!important;
  border:1px solid rgba(123,175,61,.42)!important;
  background:var(--v22-panel-2)!important;
  box-shadow:none!important;
}
.dialog-action-bar .button-light-outline:hover,
.dialog-content .button-light-outline:hover{
  color:#061006!important;
  border-color:var(--v22-green-light)!important;
  background:var(--v22-green-light)!important;
}
.dialog-action-bar .button-primary,
.dialog-action-bar #dialogEnquiry{
  color:#061006!important;
  border-color:var(--v22-green)!important;
  background:var(--v22-green)!important;
}
.dialog-action-bar .button-primary:hover,
.dialog-action-bar #dialogEnquiry:hover{
  background:var(--v22-green-light)!important;
}

/* Dialog tags, codes and controls */
.dialog-overview-tags span,.product-page-apps span{
  color:#061006!important;
  border:0!important;
  background:var(--v22-green-light)!important;
}
.dialog-content code,.product-page-code{
  color:var(--v22-green-light)!important;
  border:1px solid var(--v22-line)!important;
  background:var(--v22-panel-2)!important;
}
.dialog-tab{color:rgba(255,255,255,.66)!important}
.dialog-tab.active{color:#061006!important;background:var(--v22-green)!important}

/* Forms: remove light legacy fields while preserving readable input text */
.contact-form-shell,.contact-form-heading,.contact-form-pro,.product-configurator{
  color:var(--v22-white)!important;
  border-color:var(--v22-line)!important;
  background:var(--v22-panel)!important;
}
.field input,.field textarea,.field select,.configurator-grid input,.configurator-grid select,
.configurator-notes textarea,.newsletter input,.product-search input,.product-sort select{
  color:var(--v22-white)!important;
  border-color:rgba(123,175,61,.28)!important;
  background:#080d09!important;
}
.field input::placeholder,.field textarea::placeholder,.configurator-notes textarea::placeholder,
.product-search input::placeholder,.newsletter input::placeholder{color:rgba(255,255,255,.42)!important}
.field input:focus,.field textarea:focus,.field select:focus,.configurator-grid input:focus,
.configurator-grid select:focus,.configurator-notes textarea:focus{
  border-color:var(--v22-green)!important;
  box-shadow:0 0 0 3px rgba(123,175,61,.16)!important;
}
.file-drop,.consent-field{
  color:var(--v22-white-soft)!important;
  border-color:var(--v22-line)!important;
  background:var(--v22-panel-2)!important;
}

/* Image alignment — product imagery remains centered and contained */
.product-card-art,.product-page-visual,.dialog-visual,.image-mosaic-card,
.related-product-page,.featured-product-card,.stage-product,.catalog-art,.tile-art{
  overflow:hidden;
}
.product-card-art img,.product-page-visual img,.dialog-visual img,.dialog-gallery img,
.image-mosaic-card img,.related-product-page img,.featured-product-card img,
.stage-product img,.catalog-art img,.tile-art img,.download-card img{
  display:block!important;
  max-width:100%!important;
  object-position:center!important;
}
.product-card-art img,.product-page-visual img,.dialog-visual img,.dialog-gallery img,
.image-mosaic-card img,.stage-product img,.catalog-art img,.tile-art img,.download-card img{
  object-fit:contain!important;
}
.product-card-art img{
  width:min(86%,520px)!important;
  height:min(82%,390px)!important;
  margin:auto!important;
}
.product-page-visual img{
  width:min(78%,620px)!important;
  height:min(78%,520px)!important;
  margin:auto!important;
}
.dialog-visual img{
  width:min(88%,600px)!important;
  height:min(88%,460px)!important;
  margin:auto!important;
}
.image-mosaic-card img{
  width:100%!important;
  height:265px!important;
  padding:20px!important;
}
.related-product-page img{
  width:100%!important;
  height:210px!important;
  object-fit:contain!important;
  padding:14px!important;
  background:var(--v22-panel)!important;
}
.featured-product-card img{
  object-fit:contain!important;
  object-position:center bottom!important;
}

/* Shared alignment / spacing */
:is(.section-head,.featured-products-head,.why-ostroluxx-head,.products-head,
.product-page-section-head,.v8-section-head,.footer-cta-inner,.contact-form-heading)>*{min-width:0}
:is(.section-title,.display-title,.product-page-copy h1,.dialog-content h2,.v8-card h3){text-wrap:balance}
.actions,.dialog-top-actions,.footer-socials,.product-card-footer{align-items:center}
.button{line-height:1.25}

/* Small screen corrections */
@media(max-width:900px){
  .dialog-action-bar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dialog-document-request{grid-template-columns:34px minmax(0,1fr) auto!important}
}
@media(max-width:560px){
  .dialog-action-bar{grid-template-columns:1fr!important}
  .dialog-document-request{
    grid-template-columns:32px minmax(0,1fr)!important;
    padding:12px 13px!important;
  }
  .dialog-document-request b{grid-column:2;justify-self:start;margin-top:2px}
  .product-card-art img{width:min(82%,420px)!important;height:min(78%,330px)!important}
  .product-page-visual img{width:min(82%,460px)!important;height:min(78%,380px)!important}
}

/* V22.1 — remove remaining legacy beige/brown V8 surfaces */
.v8-card,.v8-layer-button,.v8-table-wrap,.v8-lab-controls,.v8-control-note,
.v8-decision,.v8-installation-notes article,.v8-chip{
  color:var(--v22-white)!important;
  border-color:var(--v22-line)!important;
  background:var(--v22-panel-2)!important;
  box-shadow:none!important;
}
.v8-card:hover,.v8-layer-button:hover,.v8-layer-button.active,.v8-decision:hover{
  border-color:rgba(168,213,111,.62)!important;
  background:var(--v22-panel-3)!important;
}
.v8-card-number,.v8-decision small,.v8-control output,.v8-layer-button .arrow,.v8-check{
  color:var(--v22-green-light)!important;
}
.v8-card-icon,.v8-layer-button .dot,.v8-timeline .node{
  color:#061006!important;
  border-color:var(--v22-panel)!important;
  background:var(--v22-green)!important;
  box-shadow:0 8px 24px rgba(123,175,61,.18)!important;
}
.v8-card p,.v8-card ul,.v8-layer-button small,.v8-control-note,.v8-decision p,
.v8-installation-notes p,.v8-timeline p,.v8-table td{
  color:var(--v22-white-muted)!important;
}
.v8-table-wrap{background:var(--v22-panel)!important}
.v8-table th{
  color:#061006!important;
  border-color:rgba(123,175,61,.35)!important;
  background:var(--v22-green)!important;
}
.v8-table td{border-color:rgba(123,175,61,.14)!important;background:var(--v22-panel-2)!important}
.v8-chip{
  color:var(--v22-green-light)!important;
  background:rgba(123,175,61,.08)!important;
}
.v8-lab-stage,.v8-room-stage,.v8-product-effect-stage{
  border:1px solid var(--v22-line)!important;
  background:
    radial-gradient(circle at 50% 44%,rgba(123,175,61,.12),transparent 34%),
    linear-gradient(180deg,#101712 0 64%,#020403 64%)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.34)!important;
}
.v8-lab-wall,.v8-room-stage::before{
  border-color:rgba(123,175,61,.16)!important;
  background:linear-gradient(145deg,#111913,#080d09)!important;
}
.v8-lab-art,.v8-room-object,.v8-room-object::before{
  background:linear-gradient(145deg,#263b2b,#0d140f)!important;
}
.v8-room-floor{background:linear-gradient(165deg,#121c15,#020403)!important}
.v8-beam,.v8-lab-beam,.v8-product-effect-beam{
  background:linear-gradient(180deg,rgba(223,245,201,.54),rgba(123,175,61,.05))!important;
}
.v8-ambient-glow{background:radial-gradient(circle at 50% 44%,rgba(123,175,61,.28),transparent 46%)!important}
.v8-control input[type="range"]{accent-color:var(--v22-green)!important}
.v8-timeline::before{background:rgba(123,175,61,.18)!important}
.v8-timeline::after{background:linear-gradient(90deg,var(--v22-green),var(--v22-green-light))!important}
.v8-soft .v8-timeline .node,.v8-dark .v8-timeline .node{border-color:var(--v22-panel)!important}
.v8-marquee{
  border-color:rgba(123,175,61,.18)!important;
  background:var(--v22-black)!important;
}
.v8-marquee span{color:var(--v22-white-soft)!important}
.v8-marquee span::before{background:var(--v22-green)!important;box-shadow:0 0 12px rgba(123,175,61,.55)!important}

/* Shared white legacy controls and cards: authoritative dark treatment */
.product-toolbar,.product-search,.product-sort select,.resource-list-item,
.product-page-code,.product-page-quick div,.dialog-gallery button,
.product-card-specs div,.product-card-installation,.dialog-content code{
  border-color:var(--v22-line)!important;
  background:var(--v22-panel-2)!important;
}

/* Keep every icon/action in the logo palette */
:is(.card-icon,.v8-card-icon,.file-drop-icon,.success-icon,.contact-response-strip b,
.dialog-benefit-list i,.dialog-application-list i,.dialog-document-list i,
.dialog-specification-notes i,.dialog-document-request i,.product-card-shortlist-toggle.active){
  color:#061006!important;
  background:var(--v22-green)!important;
}

/* Image frames align product renders consistently */
.product-card-art,.product-page-visual,.dialog-visual,.v8-product-effect-stage,
.image-mosaic-card,.related-product-page{
  display:grid;
  place-items:center;
}
.product-card-art>img,.product-page-visual>img,.dialog-product-turntable>img,
.v8-product-effect-stage>img,.image-mosaic-card>img,.related-product-page>img{
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform-origin:center!important;
}
.v8-product-effect-stage>img{
  position:relative!important;
  width:min(64%,520px)!important;
  height:min(58%,390px)!important;
  transform:none!important;
}

/* Ensure visible page areas never inherit the old warm/brown palette */
.site-footer,.footer-cta,.footer-main,.footer-bottom,.mobile-nav,.site-header,
.product-dialog,.product-dialog-v5,.product-shortlist{
  background-color:var(--v22-black)!important;
}

/* V22.2 — final image-layout correction */
.product-card-art,.product-page-visual,.dialog-visual,.v8-product-effect-stage,.image-mosaic-card{
  display:grid;
  place-items:center;
}
.related-product-page{display:block!important}
.related-product-page>div{width:100%}
.v8-product-effect-stage>img{
  position:relative!important;
  inset:auto!important;
  animation:v22-product-float 5.5s ease-in-out infinite!important;
}
@keyframes v22-product-float{
  0%,100%{transform:translateY(0) rotate(-1deg)}
  50%{transform:translateY(-12px) rotate(1deg)}
}
.featured-product-card.fp-large img{
  right:1%!important;
  bottom:0!important;
  width:min(68%,720px)!important;
  height:68%!important;
}
.featured-product-card:not(.fp-large) img{
  right:1%!important;
  bottom:-7%!important;
  width:58%!important;
  height:68%!important;
}
@media(max-width:760px){
  .featured-product-card.fp-large img,
  .featured-product-card:not(.fp-large) img{
    right:50%!important;
    bottom:-5%!important;
    width:min(74%,460px)!important;
    height:58%!important;
    transform:translateX(50%)!important;
  }
  .featured-product-card:hover img{transform:translateX(50%) scale(1.04)!important}
}


/* ==========================================================
   OSTROLUXX V24 — RELATED PRODUCTS + OFFICIAL PDF SUPPORT UI
   ========================================================== */
.dialog-related{
  margin-top:28px!important;
  padding-top:22px!important;
  border-top:1px solid rgba(123,175,61,.24)!important;
}
.dialog-related h3{
  margin:0!important;
  color:#f4f8f1!important;
  font-size:17px!important;
  font-weight:800!important;
  letter-spacing:-.02em!important;
}
.dialog-related>div{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:14px!important;
}
.dialog-related button{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  min-width:0!important;
  min-height:96px!important;
  align-items:center!important;
  gap:13px!important;
  padding:12px!important;
  overflow:hidden!important;
  border:1px solid rgba(123,175,61,.22)!important;
  border-radius:16px!important;
  color:#f4f8f1!important;
  background:linear-gradient(145deg,#0e1710,#071008)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.16)!important;
  cursor:pointer!important;
  text-align:left!important;
  transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease!important;
}
.dialog-related button:hover,
.dialog-related button:focus-visible{
  border-color:#7baf3d!important;
  background:linear-gradient(145deg,#132018,#09110b)!important;
  box-shadow:0 15px 34px rgba(0,0,0,.24),0 0 0 1px rgba(123,175,61,.12)!important;
  transform:translateY(-2px)!important;
}
.dialog-related button img{
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  padding:8px!important;
  border:1px solid rgba(123,175,61,.16)!important;
  border-radius:13px!important;
  background:radial-gradient(circle at 50% 42%,rgba(168,213,111,.12),transparent 48%),#050805!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.22))!important;
}
.dialog-related button span{
  display:block!important;
  min-width:0!important;
}
.dialog-related button strong{
  display:-webkit-box!important;
  overflow:hidden!important;
  color:#f4f8f1!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.25!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}
.dialog-related button br{display:none!important}
.dialog-related button code{
  display:block!important;
  max-width:100%!important;
  margin-top:7px!important;
  padding:6px 8px!important;
  overflow:hidden!important;
  border:1px solid rgba(123,175,61,.18)!important;
  border-radius:9px!important;
  color:#a8d56f!important;
  background:#0a130c!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.25!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.dialog-related-empty{
  grid-column:1/-1;
  padding:18px;
  border:1px dashed rgba(123,175,61,.28);
  border-radius:14px;
  color:#a9b5a6;
  background:#071008;
  font-size:13px;
}

@media(max-width:1040px){
  .dialog-related>div{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .dialog-related>div{grid-template-columns:1fr!important}
  .dialog-related button{grid-template-columns:64px minmax(0,1fr)!important;min-height:86px!important}
  .dialog-related button img{width:64px!important;height:64px!important;min-width:64px!important}
}

/* ==========================================================
   OSTROLUXX V25 — OFFICIAL DATASHEET WORKFLOW
   ========================================================== */
.dialog-top-actions{
  align-items:center;
  gap:7px;
}
#viewDatasheet.has-official-pdf{
  color:#071008;
  border-color:#7baf3d;
  background:#7baf3d;
  box-shadow:0 8px 24px rgba(123,175,61,.22);
}
#viewDatasheet.has-official-pdf:hover{
  background:#a8d56f;
  border-color:#a8d56f;
}
.dialog-datasheet-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  margin-bottom:26px;
  padding:20px;
  border:1px solid rgba(123,175,61,.24);
  border-radius:20px;
  background:
    radial-gradient(circle at 100% 0,rgba(123,175,61,.11),transparent 38%),
    #0b110d;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.dialog-datasheet-panel>div:first-child{min-width:0}
.dialog-datasheet-panel strong{
  display:block;
  color:#f7fbf4;
  font-size:15px;
  line-height:1.25;
}
.dialog-datasheet-panel span{
  display:block;
  max-width:62ch;
  margin-top:6px;
  color:#aebba9;
  font-size:12px;
  line-height:1.45;
}
.dialog-datasheet-buttons{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:9px;
}
.dialog-datasheet-buttons .button{
  min-height:44px;
  padding-inline:17px;
  font-size:13px;
}
.dialog-datasheet-buttons .button-light-outline{
  color:#eaf3e5!important;
  border-color:rgba(168,213,111,.34)!important;
  background:#101712!important;
}
.dialog-datasheet-buttons .button-light-outline:hover{
  color:#071008!important;
  border-color:#a8d56f!important;
  background:#a8d56f!important;
}
#downloadDatasheet[hidden],
.product-datasheet-download[hidden]{display:none!important}
.product-page-copy .actions{
  align-items:stretch;
}
.product-page-copy .product-datasheet-view{
  color:#071008;
  border-color:#7baf3d;
  background:#7baf3d;
}
.product-page-copy .product-datasheet-view:hover{
  border-color:#a8d56f;
  background:#a8d56f;
}
.product-page-copy .product-datasheet-view.generated-sheet-fallback{
  color:#e8f1e3;
  border-color:rgba(123,175,61,.4);
  background:#0b110d;
}
.product-page-copy .product-datasheet-view.generated-sheet-fallback:hover{
  color:#071008;
  background:#a8d56f;
}
.product-page-copy .product-datasheet-download{
  color:#eaf3e5!important;
  border-color:rgba(168,213,111,.34)!important;
  background:#101712!important;
}
.product-page-copy .product-datasheet-download:hover{
  color:#071008!important;
  border-color:#a8d56f!important;
  background:#a8d56f!important;
}
@media(max-width:760px){
  .dialog-top-actions{gap:4px}
  .dialog-datasheet-panel{
    grid-template-columns:1fr;
    align-items:start;
    gap:14px;
    padding:17px;
  }
  .dialog-datasheet-buttons{
    width:100%;
    justify-content:stretch;
  }
  .dialog-datasheet-buttons .button{flex:1 1 150px}
  .product-page-copy .actions>.button,
  .product-page-copy .actions>a.button{
    flex:1 1 calc(50% - 8px);
  }
}
@media(max-width:520px){
  .dialog-topbar-identity strong{font-size:10px}
  .dialog-topbar .dialog-icon-button,.dialog-topbar .dialog-close{
    width:36px;
    height:36px;
    flex-basis:36px;
  }
  .product-page-copy .actions>.button,
  .product-page-copy .actions>a.button{
    flex:1 1 100%;
    width:100%;
  }
}


/* ===== V28 enhanced home light lab ===== */
.light-lab-section{display:grid;grid-template-columns:minmax(340px,.92fr) minmax(420px,1.08fr);align-items:stretch;min-height:860px;gap:0;overflow:hidden;background:radial-gradient(circle at 74% 28%,rgba(123,175,61,.10),transparent 22%),linear-gradient(145deg,#020403 0%,#061008 52%,#020403 100%);color:#fff}
.light-lab-copy{display:flex;flex-direction:column;justify-content:center;padding:96px max(28px,calc((100vw - var(--max))/2)) 96px max(24px,6vw)}
.light-lab-copy .section-title{max-width:11ch;margin-top:14px;font-size:clamp(48px,6vw,94px);line-height:.95;letter-spacing:-.07em}
.light-lab-copy .body-large{max-width:640px;margin-top:18px;color:rgba(255,255,255,.78);font-size:18px;line-height:1.62}
.lab-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}
.lab-highlights article{padding:18px 16px;border:1px solid rgba(168,213,111,.16);border-radius:18px;background:linear-gradient(180deg,rgba(14,28,17,.88),rgba(7,14,9,.92));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.lab-highlights strong{display:block;color:#fff;font-size:16px;letter-spacing:-.03em}.lab-highlights span{display:block;margin-top:6px;color:rgba(255,255,255,.62);font-size:12px;line-height:1.45}
.lab-control{margin-top:28px;padding:20px;border:1px solid rgba(168,213,111,.16);border-radius:22px;background:linear-gradient(180deg,rgba(11,20,13,.92),rgba(6,11,7,.96))}.lab-control label{display:block;color:#fff;font-size:13px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.lab-control input[type=range]{width:100%;margin-top:18px;-webkit-appearance:none;appearance:none;height:8px;border-radius:999px;background:linear-gradient(90deg,#f0be72 0%,#fff4ca 40%,#dff0ff 100%);outline:none}.lab-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border:3px solid rgba(255,255,255,.7);border-radius:50%;background:var(--brand-green);box-shadow:0 0 0 8px rgba(123,175,61,.14),0 6px 18px rgba(123,175,61,.26);cursor:pointer}.lab-control input[type=range]::-moz-range-thumb{width:24px;height:24px;border:3px solid rgba(255,255,255,.7);border-radius:50%;background:var(--brand-green);box-shadow:0 0 0 8px rgba(123,175,61,.14),0 6px 18px rgba(123,175,61,.26);cursor:pointer}.lab-scale{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;color:rgba(255,255,255,.62);font-size:13px}.lab-scale strong{color:#fff;font-size:18px;letter-spacing:-.03em}
.lab-presets{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.lab-preset{min-height:42px;padding:0 16px;border:1px solid rgba(168,213,111,.18);border-radius:999px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.78);font-size:13px;font-weight:700;cursor:pointer;transition:all .25s ease}.lab-preset:hover,.lab-preset.active{border-color:rgba(123,175,61,.55);background:rgba(123,175,61,.14);color:#fff;box-shadow:0 12px 24px rgba(0,0,0,.18)}
.lab-insight{margin-top:20px;padding:22px;border-radius:24px;background:linear-gradient(145deg,rgba(12,24,15,.95),rgba(7,12,9,.96));border:1px solid rgba(168,213,111,.18)}.lab-insight-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;background:rgba(123,175,61,.17);color:#d4ebb3;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.lab-insight strong{display:block;margin-top:12px;color:#fff;font-size:26px;letter-spacing:-.04em}.lab-insight p{margin-top:9px;color:rgba(255,255,255,.67);font-size:15px;line-height:1.55}.light-lab-copy .actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:24px}
.light-lab-scene{position:relative;display:flex;align-items:center;justify-content:center;padding:72px min(5vw,60px);isolation:isolate;--lab-light:rgb(250,199,128);--lab-glow:rgba(250,199,128,.55);--lab-room-tint:rgba(243,205,138,.25)}.light-lab-scene::before{position:absolute;inset:12% 10% auto auto;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(123,175,61,.12),transparent 68%);content:"";filter:blur(10px);z-index:0}.light-lab-stage{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;width:min(100%,860px);height:100%;min-height:670px;padding:34px;border:1px solid rgba(168,213,111,.12);border-radius:38px;background:linear-gradient(180deg,rgba(17,24,17,.94),rgba(6,10,7,.98));box-shadow:0 34px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04)}
.lab-scene-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:24px}.lab-scene-head span{display:inline-flex;min-height:28px;padding:0 12px;border-radius:999px;background:rgba(123,175,61,.12);color:#d5ebb3;font-size:11px;font-weight:800;letter-spacing:.08em;align-items:center;text-transform:uppercase}.lab-scene-head strong{color:#fff;font-size:20px;letter-spacing:-.04em}
.lab-room-shell{position:relative;display:block;height:510px;margin-top:6px;border-radius:30px;overflow:hidden;background:linear-gradient(180deg,#e3d0a6 0%,#d4b988 20%,#ebe9e2 20%,#efeee9 76%,#d8c4a0 76%,#8c6b3c 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
.lab-back-wall{position:absolute;inset:20% 10% 18% 12%;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(243,242,238,.9));box-shadow:0 10px 35px rgba(50,35,15,.12)}
.lab-wall-panels{position:absolute;inset:0;opacity:.36}.lab-wall-panels i{position:absolute;top:23%;bottom:20%;width:11%;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,0));}.lab-wall-panels i:nth-child(1){left:12%}.lab-wall-panels i:nth-child(2){left:43%}.lab-wall-panels i:nth-child(3){right:12%}
.lab-ceiling{position:absolute;left:50%;top:56px;z-index:4;display:flex;gap:18%;justify-content:space-between;width:calc(100% - 150px);transform:translateX(-50%)}.lab-ceiling i{position:relative;display:block;width:58px;height:30px;border-radius:999px;background:linear-gradient(180deg,#1a1d1b,#020403);box-shadow:0 8px 18px rgba(0,0,0,.36)}.lab-ceiling i::after{position:absolute;left:50%;top:50%;width:18px;height:18px;border-radius:50%;background:var(--lab-light);box-shadow:0 0 24px rgba(255,255,255,.45),0 0 62px var(--lab-glow);content:"";transform:translate(-50%,-50%)}
.lab-beam{position:absolute;top:84px;z-index:3;width:148px;height:390px;background:linear-gradient(to bottom,rgba(255,255,255,.32),rgba(255,255,255,.02));opacity:.72;filter:drop-shadow(0 10px 40px var(--lab-glow));clip-path:polygon(38% 0,62% 0,100% 100%,0 100%)}.lab-beam-one{left:13.4%}.lab-beam-two{left:calc(50% - 74px)}.lab-beam-three{right:13.4%}
.lab-art-frame{position:absolute;left:34%;top:44%;z-index:5;width:31%;height:30%;padding:14px;border-radius:6px;background:#503b2d;box-shadow:0 12px 32px rgba(0,0,0,.18)}.lab-art-core{width:100%;height:100%;border:1px solid rgba(255,255,255,.38);background:linear-gradient(180deg,rgba(123,175,61,.65),rgba(123,175,61,.32))}
.lab-console{position:absolute;left:17%;right:17%;bottom:18%;z-index:4;height:18px;border-radius:999px;background:#2b2118;box-shadow:0 10px 0 #5a4232}.lab-console-top{position:absolute;left:20%;bottom:22%;z-index:5;display:flex;align-items:flex-end;gap:16px}.lab-book-stack{position:relative;display:block;width:52px;height:12px;border-radius:999px;background:#8eb754;box-shadow:0 -9px 0 0 #d8c58e,0 -18px 0 0 #425733}.lab-vase{position:relative;display:block;width:26px;height:40px;border-radius:50% 50% 32% 32%;background:#d0cabd}.lab-vase::after{position:absolute;left:9px;top:-24px;width:3px;height:26px;border-radius:999px;background:#5e7f31;box-shadow:7px 4px 0 #7ba63f,-7px 5px 0 #91c357;content:""}
.lab-lounge{position:absolute;left:9%;bottom:12%;z-index:4;width:28%;height:17%;border-radius:28px 28px 12px 12px;background:linear-gradient(180deg,#d6c29d,#b39061);box-shadow:0 18px 28px rgba(0,0,0,.12)}.lab-lounge::before{position:absolute;left:10%;right:10%;top:-26px;height:36px;border-radius:24px 24px 10px 10px;background:linear-gradient(180deg,#dec99f,#c3a26e);content:""}.lab-side-table{position:absolute;right:15%;bottom:17%;z-index:4;width:10%;height:12%;border-radius:50% 50% 12px 12px;background:linear-gradient(180deg,#2c261e,#5b4232)}.lab-side-table::after{position:absolute;left:50%;bottom:-32px;width:8px;height:34px;border-radius:999px;background:#433225;content:"";transform:translateX(-50%)}
.lab-plant{position:absolute;right:8%;bottom:14%;z-index:4;width:12%;height:20%;border-radius:18px 18px 10px 10px;background:linear-gradient(180deg,#3d2b1d,#1f1813)}.lab-plant i,.lab-plant i::before,.lab-plant i::after{position:absolute;left:50%;bottom:68%;width:18px;height:76px;border-radius:60% 60% 0 60%;background:linear-gradient(180deg,#7ba63f,#436228);content:"";transform-origin:bottom center}.lab-plant i{transform:translateX(-50%) rotate(-10deg)}.lab-plant i::before{left:-22px;bottom:-4px;transform:rotate(-26deg)}.lab-plant i::after{left:18px;bottom:-8px;transform:rotate(24deg)}
.lab-floor-rug{position:absolute;left:28%;right:26%;bottom:8%;height:14%;border-radius:999px;background:radial-gradient(circle at center,rgba(123,175,61,.38),rgba(123,175,61,.12) 52%,transparent 72%);filter:blur(2px)}
.lab-scene-card{position:absolute;left:32px;right:32px;bottom:26px;z-index:6;display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:14px 16px;border:1px solid rgba(168,213,111,.16);border-radius:22px;background:linear-gradient(180deg,rgba(8,15,10,.86),rgba(5,9,6,.94));backdrop-filter:blur(12px)}.lab-scene-card span{display:block;color:rgba(255,255,255,.56);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.lab-scene-card strong{display:block;margin-top:4px;color:#fff;font-size:20px;letter-spacing:-.04em}
#lightLabScene[data-mood="warm"]{--lab-light:rgb(247,192,119);--lab-glow:rgba(247,192,119,.48)}#lightLabScene[data-mood="neutral"]{--lab-light:rgb(250,238,208);--lab-glow:rgba(250,238,208,.42)}#lightLabScene[data-mood="cool"]{--lab-light:rgb(194,225,255);--lab-glow:rgba(194,225,255,.48)}
#lightLabScene[data-mood="warm"] .lab-room-shell{background:linear-gradient(180deg,#ddc69c 0%,#c89f63 20%,#f1ece0 20%,#ece8dc 76%,#d6b587 76%,#8b6530 100%)}#lightLabScene[data-mood="neutral"] .lab-room-shell{background:linear-gradient(180deg,#d9c7a6 0%,#cdb488 20%,#ecebe7 20%,#f2f1ee 76%,#d5bd96 76%,#8c6e3d 100%)}#lightLabScene[data-mood="cool"] .lab-room-shell{background:linear-gradient(180deg,#c9d6df 0%,#b8c6cf 20%,#e8edf1 20%,#f2f5f8 76%,#b3c2cb 76%,#5d6770 100%)}
#lightLabScene[data-mood="cool"] .lab-art-core{background:linear-gradient(180deg,rgba(162,208,248,.72),rgba(99,149,208,.34))}#lightLabScene[data-mood="neutral"] .lab-art-core{background:linear-gradient(180deg,rgba(209,222,153,.62),rgba(167,186,106,.3))}
@media(max-width:1180px){.light-lab-section{grid-template-columns:1fr;min-height:auto}.light-lab-copy{padding:84px 24px 28px}.light-lab-copy .section-title{max-width:12ch}.light-lab-scene{padding:10px 24px 90px}.light-lab-stage{min-height:620px}.lab-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.lab-highlights{grid-template-columns:1fr}.light-lab-copy .section-title{font-size:clamp(42px,14vw,72px)}.light-lab-copy .body-large{font-size:16px}.light-lab-stage{padding:18px;border-radius:26px;min-height:560px}.lab-scene-head{align-items:flex-start;flex-direction:column}.lab-scene-head strong{font-size:18px}.lab-room-shell{height:420px;border-radius:24px}.lab-ceiling{top:34px;width:calc(100% - 88px)}.lab-ceiling i{width:42px;height:22px}.lab-ceiling i::after{width:14px;height:14px}.lab-beam{top:56px;width:102px;height:300px}.lab-beam-one{left:9%}.lab-beam-two{left:calc(50% - 51px)}.lab-beam-three{right:9%}.lab-art-frame{left:28%;top:42%;width:40%;height:28%}.lab-lounge{left:8%;width:33%;height:18%}.lab-side-table{right:13%;width:12%}.lab-scene-card{left:18px;right:18px;bottom:18px;grid-template-columns:1fr}}
@media(max-width:520px){.light-lab-copy{padding-top:72px;padding-inline:18px}.lab-control,.lab-insight{padding:18px}.lab-presets{gap:10px}.lab-preset{width:100%;justify-content:center}.light-lab-scene{padding:8px 18px 82px}.light-lab-stage{padding:14px;min-height:500px}.lab-room-shell{height:360px}.lab-console{left:14%;right:14%;bottom:19%}.lab-console-top{left:18%}.lab-lounge{left:6%;width:35%;height:18%}.lab-art-frame{left:27%;width:44%;top:41%}.lab-floor-rug{left:20%;right:16%}}


/* ===== V29 light-lab spotlight alignment fix ===== */
.light-lab-stage{--spot-1:18%;--spot-2:50%;--spot-3:82%}
.lab-ceiling{left:0;right:0;top:54px;width:100%;transform:none;display:block}
.lab-ceiling i{position:absolute;top:0;transform:translateX(-50%)}
.lab-ceiling i:nth-child(1){left:var(--spot-1)}
.lab-ceiling i:nth-child(2){left:var(--spot-2)}
.lab-ceiling i:nth-child(3){left:var(--spot-3)}
.lab-beam{top:82px;transform:translateX(-50%)}
.lab-beam-one{left:var(--spot-1)}
.lab-beam-two{left:var(--spot-2)}
.lab-beam-three{left:var(--spot-3);right:auto}
.lab-scene-head{padding-right:10px}
@media(max-width:760px){
  .light-lab-stage{--spot-1:16%;--spot-2:50%;--spot-3:84%}
  .lab-ceiling{top:34px}
  .lab-beam{top:56px}
}
@media(max-width:520px){
  .light-lab-stage{--spot-1:15%;--spot-2:50%;--spot-3:85%}
}


/* ===== V31 home purpose readability and ring alignment ===== */
.home-purpose{
  position:relative;
  min-height:780px;
  padding:112px 24px 210px;
  isolation:isolate;
  background:
    radial-gradient(circle at 50% 78%,rgba(123,175,61,.13),transparent 29%),
    linear-gradient(180deg,#071008 0%,#020403 100%);
}
.home-purpose::after{
  position:absolute;
  z-index:2;
  inset:0;
  background:linear-gradient(
    180deg,
    rgba(2,4,3,.18) 0%,
    rgba(2,4,3,.36) 42%,
    rgba(2,4,3,.82) 68%,
    rgba(2,4,3,.96) 100%
  );
  pointer-events:none;
  content:"";
}
.home-purpose-copy{
  position:relative;
  z-index:5;
  width:min(100%,920px);
  margin-inline:auto;
  padding:30px 34px 34px;
  border:1px solid rgba(168,213,111,.11);
  border-radius:30px;
  background:linear-gradient(180deg,rgba(5,10,7,.48),rgba(3,6,4,.74));
  box-shadow:0 28px 75px rgba(0,0,0,.28);
  backdrop-filter:blur(7px);
}
.home-purpose .section-title{
  max-width:12ch;
  margin-inline:auto;
  color:#fff;
  font-size:clamp(50px,6.6vw,88px);
  line-height:.94;
  letter-spacing:-.065em;
  text-shadow:0 5px 25px rgba(0,0,0,.32);
}
.home-purpose h2 span{
  color:#a8d56f;
  background:linear-gradient(100deg,#e9ffd4 5%,#a8d56f 54%,#7baf3d 100%);
  -webkit-background-clip:text;
  background-clip:text;
  text-shadow:none;
}
.home-purpose p{
  position:relative;
  z-index:1;
  max-width:720px;
  margin:25px auto 0;
  color:#e2eadf;
  font-size:clamp(19px,2vw,25px);
  font-weight:500;
  letter-spacing:-.025em;
  line-height:1.48;
  text-wrap:balance;
  text-shadow:0 2px 16px rgba(0,0,0,.52);
}
.home-purpose-actions{
  position:relative;
  z-index:1;
  justify-content:center;
  margin-top:30px;
}
.home-purpose-cta{
  min-height:52px;
  padding-inline:24px;
  border:1px solid rgba(168,213,111,.52);
  color:#061006;
  background:#8fbe50;
  box-shadow:0 15px 38px rgba(123,175,61,.22);
}
.home-purpose-cta:hover{
  color:#061006;
  border-color:#c6ed9f;
  background:#a8d56f;
  box-shadow:0 20px 46px rgba(123,175,61,.31);
}
.home-purpose-cta span{
  font-size:18px;
  line-height:1;
  transition:transform .24s ease;
}
.home-purpose-cta:hover span{transform:translateX(4px)}
.purpose-ring{
  z-index:1;
  bottom:-520px;
  width:min(840px,92vw);
  border-width:64px;
  opacity:.72;
  box-shadow:
    inset 0 0 0 5px rgba(168,213,111,.18),
    inset 0 0 45px rgba(255,255,255,.06),
    0 -14px 75px rgba(123,175,61,.18);
}
.purpose-ring::before{
  inset:46px;
  opacity:.82;
}
@media(max-width:900px){
  .home-purpose{
    min-height:720px;
    padding:92px 22px 180px;
  }
  .home-purpose-copy{padding:28px 26px 32px}
  .purpose-ring{bottom:-470px;width:min(760px,104vw)}
}
@media(max-width:680px){
  .home-purpose{
    min-height:auto;
    padding:78px 18px 155px;
  }
  .home-purpose-copy{
    padding:24px 20px 27px;
    border-radius:24px;
  }
  .home-purpose .section-title{
    max-width:100%;
    font-size:clamp(42px,13vw,62px);
  }
  .home-purpose p{
    margin-top:20px;
    font-size:17px;
    line-height:1.52;
  }
  .home-purpose-actions{margin-top:24px}
  .home-purpose-cta{width:100%;max-width:330px}
  .purpose-ring{
    bottom:-390px;
    width:620px;
    border-width:48px;
    opacity:.5;
  }
}


/* ==========================================================
   OSTROLUXX V32 - GREEN BRAND + WHITE LIGHT REFLECTIONS
   ========================================================== */
:root{
  --brand-green:#7BAF3D;
  --brand-green-dark:#4F7D24;
  --brand-green-light:#A8D56F;
  --green:#7BAF3D;
  --green-light:#A8D56F;
  --orange:#7BAF3D;
  --orange-light:#A8D56F;
  --blue:#7BAF3D;
}

/* White optical reflections; green remains the interface/brand accent. */
.ostro-cursor-core{
  background:#fff;
  border-color:rgba(255,255,255,.98);
  box-shadow:0 0 7px #fff,0 0 18px rgba(255,255,255,.92),0 0 34px rgba(255,255,255,.5);
}
.ostro-cursor-ring{border-color:rgba(255,255,255,.72);box-shadow:inset 0 0 12px rgba(255,255,255,.12),0 0 18px rgba(255,255,255,.2)}
.ostro-cursor-halo{background:radial-gradient(circle,rgba(255,255,255,.52) 0,rgba(255,255,255,.24) 30%,rgba(255,255,255,.08) 52%,transparent 74%)}
.ostro-cursor-beam{background:linear-gradient(180deg,rgba(255,255,255,.4),rgba(255,255,255,.1) 52%,transparent 100%)}
.ostro-page-light{background:radial-gradient(circle,rgba(255,255,255,.10),rgba(255,255,255,.025) 42%,transparent 72%)}
.cursor-aura{background:radial-gradient(circle,rgba(255,255,255,.12),rgba(255,255,255,.035) 38%,transparent 70%)!important}

/* Major luminaire effects use neutral white light instead of yellow/green reflection. */
.hero-light path[fill],.showcase-art path[fill],.tile-art path[fill]{filter:none}
.product-card-art::before,.dialog-visual::after,.product-page-visual::after,.stage-light-beam{
  background:linear-gradient(to bottom,rgba(255,255,255,.24),rgba(255,255,255,0))!important;
}
.product-card-art{background:radial-gradient(circle at 50% 52%,rgba(255,255,255,.18),transparent 31%),linear-gradient(145deg,#0D140F,#020403)!important}
.dialog-visual,.product-page-visual{background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.20),transparent 29%),linear-gradient(145deg,#0D140F,#020403)!important}
.purpose-ring::before,.closing-orb::after,.contact-light-object span{
  background:radial-gradient(circle,#fff 0%,#fff 26%,#eef3ea 52%,#c9d2c4 70%,#142019 100%)!important;
  box-shadow:0 0 90px rgba(255,255,255,.34)!important;
}
.product-hero-head::after{background:radial-gradient(circle,#fff 0%,#fff 34%,#e9eee6 66%,#142019 100%)!important;box-shadow:0 0 50px rgba(255,255,255,.32)!important}

/* Keep all actionable accents green. */
.button-primary,.header-cta,.mobile-contact,.dialog-tab.active,.product-datasheet-view.has-official-pdf{background:#7BAF3D!important;border-color:#7BAF3D!important;color:#071008!important}
.button-primary:hover,.header-cta:hover,.mobile-contact:hover{background:#A8D56F!important;border-color:#A8D56F!important}
.nav-list a::after,.site-header::after,.scroll-rail-meter i{background:linear-gradient(90deg,transparent,#7BAF3D,transparent)!important}
::selection{background:#A8D56F;color:#071008}


/* ===== V33 home closing CTA readability fix ===== */
.home-closing{
  min-height:860px;
  align-content:start;
  padding:112px 24px 360px;
  background:
    radial-gradient(circle at 50% 70%, rgba(123,175,61,.12), transparent 22%),
    radial-gradient(circle at 50% 16%, rgba(255,255,255,.06), transparent 16%),
    linear-gradient(180deg,#020403 0%,#040805 100%);
  color:#fff;
}
.home-closing::before{
  content:"";
  position:absolute;
  inset:56px auto auto 50%;
  width:min(760px,92vw);
  height:360px;
  transform:translateX(-50%);
  border-radius:36px;
  background:linear-gradient(180deg,rgba(3,7,4,.72),rgba(3,7,4,.18));
  filter:blur(0px);
  z-index:1;
}
.home-closing-copy{
  position:relative;
  z-index:4;
  width:min(100%,980px);
  padding:0 12px;
}
.home-closing .section-title{
  max-width:10ch;
  margin-inline:auto;
  color:#fff;
  text-shadow:0 12px 34px rgba(0,0,0,.35);
}
.home-closing p{
  max-width:760px;
  margin:22px auto 0;
  color:rgba(255,255,255,.82);
  line-height:1.44;
  text-shadow:0 6px 18px rgba(0,0,0,.28);
}
.home-closing .actions{
  justify-content:center;
  align-items:center;
  gap:16px;
  margin-top:28px;
  position:relative;
  z-index:4;
}
.home-closing .actions .button{
  min-width:200px;
}
.home-closing .button-dark{
  background:#0a120c;
  color:#fff;
  border:1px solid rgba(168,213,111,.24);
  box-shadow:0 12px 28px rgba(0,0,0,.2);
}
.home-closing .button-dark:hover{
  background:#111b13;
}
.home-closing .button-light-outline{
  color:#d8efb7;
  border-color:rgba(123,175,61,.48);
  background:rgba(123,175,61,.08);
  box-shadow:0 10px 24px rgba(0,0,0,.14);
}
.home-closing .button-light-outline:hover{
  background:rgba(123,175,61,.16);
  color:#fff;
}
.closing-orb{
  bottom:-300px;
  width:min(860px,92vw);
  border-color:#171a18;
  box-shadow:inset 0 0 0 4px rgba(126,165,115,.38), inset 0 0 36px rgba(255,255,255,.06), 0 -10px 64px rgba(123,175,61,.18);
  opacity:.94;
  z-index:2;
}
.closing-orb::after{
  inset:42px;
  background:radial-gradient(circle,#f7faf5 0%,#edf5e3 26%,#cce49f 50%,#93c94c 70%,#1a2816 100%);
  box-shadow:0 0 72px rgba(255,255,255,.18),0 0 110px rgba(123,175,61,.16);
}
@media (max-width:1180px){
  .home-closing{padding:96px 22px 300px;min-height:760px}
  .home-closing::before{height:320px;top:48px}
  .home-closing .section-title{max-width:11ch;font-size:clamp(44px,8vw,76px)}
  .closing-orb{width:min(760px,96vw);bottom:-250px}
}
@media (max-width:760px){
  .home-closing{padding:82px 18px 230px;min-height:auto}
  .home-closing::before{top:34px;width:min(94vw,540px);height:280px;border-radius:28px}
  .home-closing .section-title{max-width:100%;font-size:clamp(38px,11vw,58px)}
  .home-closing p{font-size:clamp(17px,4.7vw,21px);line-height:1.5}
  .home-closing .actions{gap:12px}
  .home-closing .actions .button{width:100%;min-width:0}
  .closing-orb{width:min(620px,138vw);bottom:-180px}
}


/* ===== V36 product real-image gallery ===== */
.product-page-media{min-width:0;display:grid;gap:14px}
.product-page-gallery{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 8px;scrollbar-width:thin;scrollbar-color:rgba(123,175,61,.65) rgba(255,255,255,.06);scroll-snap-type:x proximity}
.product-page-gallery-thumb{flex:0 0 82px;width:82px;height:70px;padding:5px;border:1px solid rgba(123,175,61,.20);border-radius:14px;background:#0a110c;cursor:pointer;overflow:hidden;scroll-snap-align:start;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.product-page-gallery-thumb:hover,.product-page-gallery-thumb.active{border-color:#7baf3d;box-shadow:0 0 0 2px rgba(123,175,61,.13);transform:translateY(-2px)}
.product-page-gallery-thumb img{width:100%;height:100%;object-fit:contain;border-radius:9px;background:#111713}
.product-page-visual>[data-product-page-main]{transition:opacity .18s ease,transform .32s ease}
.product-page-visual.is-switching>[data-product-page-main]{opacity:.36;transform:scale(.985)}
@media(max-width:760px){.product-page-gallery-thumb{flex-basis:74px;width:74px;height:64px}}


/* ==========================================================
   OSTROLUXX V37 - PREMIUM PRODUCT CARDS + GLB / 3D VIEWER
   ========================================================== */
.detailed-product-grid{gap:26px}
.detailed-product-card{
  min-height:720px;
  border:1px solid rgba(123,175,61,.20)!important;
  border-radius:30px!important;
  background:linear-gradient(180deg,#0c150e 0%,#070d09 100%)!important;
  box-shadow:0 18px 54px rgba(0,0,0,.22)!important;
}
.detailed-product-card::before{height:4px;background:linear-gradient(90deg,transparent,#7baf3d,#a8d56f,#7baf3d,transparent)}
.detailed-product-card:hover{border-color:rgba(168,213,111,.58)!important;box-shadow:0 32px 85px rgba(0,0,0,.38),0 0 0 1px rgba(123,175,61,.10)!important}
.product-card-art{
  height:330px!important;
  border-bottom:1px solid rgba(123,175,61,.14)!important;
  background:
    radial-gradient(circle at 50% 47%,rgba(255,255,255,.13),transparent 26%),
    radial-gradient(circle at 76% 20%,rgba(123,175,61,.18),transparent 26%),
    linear-gradient(150deg,#162019 0%,#071009 68%,#030604 100%)!important;
}
.product-card-art::before{border-color:rgba(168,213,111,.20);background:rgba(123,175,61,.05)}
.product-card-art::after{background:rgba(255,255,255,.15)}
.product-card-art img{width:88%;height:88%;filter:drop-shadow(0 28px 25px rgba(0,0,0,.44))}
.detailed-product-card:hover .product-card-art img{filter:drop-shadow(0 38px 30px rgba(0,0,0,.55));transform:perspective(950px) rotateX(3deg) rotateY(-7deg) translateY(-10px) scale(1.05)}
.product-image-badge,.product-card-index{color:#eaf4df;background:rgba(5,12,7,.78);border:1px solid rgba(168,213,111,.22);box-shadow:0 8px 24px rgba(0,0,0,.22)}
.product-card-capabilities{position:absolute;z-index:5;left:17px;bottom:18px;display:flex;max-width:calc(100% - 34px);flex-wrap:wrap;gap:7px;pointer-events:none}
.product-capability{display:inline-flex;min-height:26px;align-items:center;padding:0 9px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:rgba(255,255,255,.82);background:rgba(3,8,5,.76);font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;backdrop-filter:blur(10px)}
.product-capability.real-photo,.product-capability.model3d{border-color:rgba(168,213,111,.38);color:#d9f2b7;background:rgba(75,111,38,.38)}
.product-capability.pdf{color:#fff}
.product-card-gallery-dots{position:absolute;z-index:5;right:18px;bottom:22px;display:flex;gap:5px}.product-card-gallery-dots i{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.35)}.product-card-gallery-dots i.active{width:18px;border-radius:999px;background:#a8d56f}
.product-card-image-action{bottom:56px;color:#081007;background:#a8d56f}
.product-card-shortlist-toggle{color:#dce9d4;background:rgba(5,12,7,.82);border-color:rgba(168,213,111,.22)}
.product-card-content{padding:28px 28px 26px!important;color:#fff}
.product-card-category{color:#a8d56f}.product-card-category span:first-child{color:#dff1c9;background:rgba(123,175,61,.12)}.product-card-category span:last-child{color:rgba(255,255,255,.46)}
.product-card-content h3{color:#fff!important}.product-code{color:#a8d56f!important}.product-card-content>p{color:rgba(255,255,255,.67)!important}
.product-card-specs{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
.product-card-specs div{padding:13px 12px!important;border:1px solid rgba(168,213,111,.11)!important;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(123,175,61,.045))!important}
.product-card-specs span{color:rgba(255,255,255,.45)!important}.product-card-specs strong{color:#f1f5ee!important;font-size:11.5px!important}
.product-card-installation{color:rgba(255,255,255,.60)!important}.product-card-installation svg{color:#a8d56f!important}
.product-card-availability{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px;padding:12px 0;border-top:1px solid rgba(168,213,111,.10);border-bottom:1px solid rgba(168,213,111,.10);color:rgba(255,255,255,.48);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.045em}.product-card-availability span:first-child{color:#dbead0}.product-card-availability i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#7baf3d;box-shadow:0 0 12px rgba(123,175,61,.55)}
.product-card-footer{grid-template-columns:minmax(0,1fr) auto auto!important;gap:9px!important;border-top:0!important;padding-top:18px!important}
.product-card-details{color:#071006!important;background:#7baf3d!important}.product-card-details:hover{background:#a8d56f!important}
.product-card-page{padding:0 11px!important;color:#dce9d4!important;border:1px solid rgba(168,213,111,.18);border-radius:999px}.product-card-page:hover{color:#fff!important;border-color:#7baf3d;text-decoration:none!important}
.product-card-3d{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:0 13px;border:1px solid rgba(168,213,111,.35);border-radius:999px;color:#d9f2b7;background:rgba(123,175,61,.10);cursor:pointer;font-size:12px;font-weight:800}.product-card-3d svg{width:17px}.product-card-3d:hover{background:rgba(123,175,61,.22);border-color:#7baf3d}
.dialog-3d-button.has-3d-model,.button-3d-view.has-3d-model{color:#071006!important;background:#7baf3d!important;border-color:#7baf3d!important}
.button-3d-view[hidden],.dialog-3d-button[hidden]{display:none!important}
.related-product-page{border-color:rgba(123,175,61,.18)!important;background:#081009!important}.related-product-page img{height:220px!important;object-fit:contain!important;padding:14px;background:radial-gradient(circle,rgba(123,175,61,.12),transparent 42%),#111a13!important}.related-product-page div{color:#fff}.related-product-page small,.related-product-page code{color:#a8d56f!important}.related-product-page h3{color:#fff}

.ostro-3d-dialog{width:min(1180px,calc(100% - 28px));max-height:calc(100svh - 28px);padding:0;border:1px solid rgba(168,213,111,.26);border-radius:30px;background:#050805;color:#fff;box-shadow:0 45px 130px rgba(0,0,0,.68)}.ostro-3d-dialog::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(12px)}
.ostro-3d-shell{display:grid;grid-template-rows:auto minmax(420px,1fr) auto;min-height:min(830px,calc(100svh - 30px));background:radial-gradient(circle at 50% 46%,rgba(123,175,61,.10),transparent 34%),linear-gradient(160deg,#111a13,#030604)}
.ostro-3d-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:1px solid rgba(168,213,111,.16);background:rgba(3,7,4,.78)}.ostro-3d-header span{display:block;color:#a8d56f;font-size:10px;font-weight:800;letter-spacing:.10em}.ostro-3d-header strong{display:block;margin-top:4px;font-size:23px;letter-spacing:-.035em}.ostro-3d-header code{display:block;margin-top:5px;color:rgba(255,255,255,.55);font-size:11px}.ostro-3d-close{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(168,213,111,.22);border-radius:50%;color:#fff;background:rgba(255,255,255,.04);cursor:pointer;font-size:27px}.ostro-3d-close:hover{background:rgba(123,175,61,.16)}
.ostro-3d-stage{position:relative;display:grid;min-height:0;place-items:center;overflow:hidden}.ostro-model-viewer{width:100%;height:100%;min-height:560px;background:radial-gradient(circle at 50% 65%,rgba(255,255,255,.10),transparent 34%)}.ostro-3d-loading,.ostro-3d-error{display:grid;max-width:440px;place-items:center;padding:40px;text-align:center}.ostro-3d-loading i{width:46px;height:46px;border:3px solid rgba(168,213,111,.18);border-top-color:#7baf3d;border-radius:50%;animation:spin .8s linear infinite}.ostro-3d-loading strong,.ostro-3d-error strong{margin-top:18px;font-size:24px}.ostro-3d-loading span,.ostro-3d-error span{margin-top:8px;color:rgba(255,255,255,.58);line-height:1.5}.ostro-3d-error strong{color:#dff1c9}
.ostro-3d-progress{position:absolute;right:20px;bottom:18px;left:20px;height:5px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.10)}.ostro-3d-progress i{display:block;width:100%;height:100%;background:#7baf3d;transform:scaleX(0);transform-origin:left center;transition:transform .15s linear}
.ostro-3d-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:15px 20px;border-top:1px solid rgba(168,213,111,.15);background:#071009}.ostro-3d-controls button{min-height:40px;padding:0 15px;border:1px solid rgba(168,213,111,.22);border-radius:999px;color:#fff;background:rgba(255,255,255,.035);cursor:pointer;font-size:12px;font-weight:750}.ostro-3d-controls button:hover{color:#071006;background:#7baf3d}.ostro-3d-controls span{margin-left:auto;color:rgba(255,255,255,.48);font-size:11px}
@media(max-width:760px){.detailed-product-card{min-height:0}.product-card-art{height:310px!important}.product-card-footer{grid-template-columns:1fr 1fr!important}.product-card-details{grid-column:1/-1}.product-card-page,.product-card-3d{justify-content:center}.product-card-availability{align-items:flex-start;flex-direction:column}.ostro-3d-dialog{width:100%;max-height:100%;height:100%;border-radius:0}.ostro-3d-shell{min-height:100svh;grid-template-rows:auto 1fr auto}.ostro-model-viewer{min-height:430px}.ostro-3d-controls span{width:100%;margin-left:0}.ostro-3d-header strong{font-size:19px}}
@media(max-width:430px){.product-card-footer{grid-template-columns:1fr!important}.product-card-details{grid-column:auto}.product-card-page,.product-card-3d{width:100%}.product-card-capabilities{right:14px;left:14px}.product-card-gallery-dots{display:none}}


/* ===== V38 product visual cleanup: remove light reflection + improve preview galleries ===== */
/* Remove decorative beam/reflection effects from product imagery so the real product stays clean. */
.product-card-art::before,
.dialog-visual::after,
.product-page-visual::after,
.product-hero-beam,
.stage-light-beam{
  display:none !important;
  content:none !important;
  background:none !important;
  box-shadow:none !important;
}
.product-card-art,
.dialog-visual,
.product-page-visual{
  background:
    linear-gradient(160deg,#0c120d 0%,#050805 55%,#020403 100%) !important;
}
.product-card-art img,
.dialog-visual img,
.product-page-visual img{
  filter:drop-shadow(0 20px 34px rgba(0,0,0,.34)) !important;
}

/* Dedicated product page gallery */
.product-page-media{gap:18px !important;}
.product-page-visual{
  min-height:540px;
  padding:32px;
  border:1px solid rgba(123,175,61,.14);
  border-radius:28px;
  background:linear-gradient(160deg,#0b120c 0%,#040705 100%) !important;
}
.product-page-visual img{
  width:min(84%,560px) !important;
  height:min(82%,430px) !important;
  object-fit:contain !important;
}
.product-page-gallery{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(92px,1fr));
  gap:12px;
  overflow:visible !important;
  padding:0 !important;
}
.product-page-gallery-thumb{
  width:100% !important;
  height:86px !important;
  border-radius:16px !important;
  background:#0d140f !important;
  border:1px solid rgba(123,175,61,.18) !important;
  box-shadow:0 8px 20px rgba(0,0,0,.16);
}
.product-page-gallery-thumb img{
  background:#0d140f !important;
  object-fit:contain !important;
}

/* Quick view gallery / other image previews */
.dialog-visual-panel{
  gap:14px;
  padding-bottom:24px;
}
.dialog-gallery{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(84px,1fr));
  gap:12px;
  overflow:visible !important;
  padding:0 24px !important;
}
.dialog-gallery button{
  width:100% !important;
  height:74px !important;
  padding:6px !important;
  border-radius:14px !important;
  background:#0d140f !important;
  border:1px solid rgba(123,175,61,.18) !important;
  color:#c8d7c6 !important;
  box-shadow:0 8px 20px rgba(0,0,0,.14);
}
.dialog-gallery button:hover,
.dialog-gallery button.active{
  border-color:#7baf3d !important;
  box-shadow:0 0 0 2px rgba(123,175,61,.18),0 10px 24px rgba(0,0,0,.16) !important;
}
.dialog-gallery img{
  object-fit:contain !important;
  background:#0d140f !important;
  border-radius:10px;
}
.dialog-visual-note{
  margin:0 24px;
  padding:14px 16px;
  border:1px solid rgba(123,175,61,.12);
  border-radius:14px;
  color:#aab7a8 !important;
  background:rgba(3,7,4,.5);
  font-size:12px !important;
  line-height:1.55 !important;
}

@media (max-width:760px){
  .product-page-visual{min-height:420px;padding:20px;border-radius:22px;}
  .product-page-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
  .product-page-gallery-thumb{height:72px !important;border-radius:14px !important;}
  .dialog-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 18px !important;}
  .dialog-gallery button{height:64px !important;border-radius:12px !important;}
  .dialog-visual-note{margin:0 18px;padding:12px 14px;font-size:11px !important;}
}
@media (max-width:520px){
  .product-page-gallery{grid-template-columns:repeat(3,minmax(0,1fr));}
  .dialog-gallery{grid-template-columns:repeat(3,minmax(0,1fr));}
}


/* ===== V39 3D demo + product image carousel refinement ===== */
.demo-3d-model{position:relative}
.demo-3d-model::after{content:"DEMO";display:inline-flex;min-height:19px;align-items:center;margin-left:7px;padding:0 7px;border-radius:999px;color:#071006;background:#dff1c9;font-size:8px;font-weight:900;letter-spacing:.08em}
.product-card-3d.demo-3d-model::after{display:none}
.ostro-3d-header #ostro3DStatusLabel{color:#a8d56f}

.dialog-gallery-shell,.product-page-gallery-shell{display:grid;gap:12px;min-width:0}
.dialog-gallery-toolbar,.product-page-gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px}
.product-page-gallery-toolbar{padding:0}
.dialog-gallery-toolbar span,.product-page-gallery-toolbar span{display:block;color:#a8b3a6;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.dialog-gallery-toolbar strong,.product-page-gallery-toolbar strong{display:block;margin-top:3px;color:#fff;font-size:14px}.product-page-gallery-toolbar strong{color:#dce9d4}
.dialog-gallery-arrows,.product-page-gallery-arrows{display:flex;gap:8px}
.dialog-gallery-arrows button,.product-page-gallery-arrows button{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(123,175,61,.24);border-radius:50%;color:#fff;background:#0c140e;cursor:pointer;font-size:24px;line-height:1;transition:.2s ease}
.dialog-gallery-arrows button:hover,.product-page-gallery-arrows button:hover{color:#071006;background:#7baf3d;border-color:#7baf3d}

.dialog-gallery,.product-page-gallery{display:flex!important;grid-template-columns:none!important;gap:11px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 24px 8px!important;overscroll-behavior-inline:contain}
.product-page-gallery{padding:2px 0 8px!important}
.dialog-gallery::-webkit-scrollbar,.product-page-gallery::-webkit-scrollbar{display:none}
.dialog-gallery button,.product-page-gallery-thumb{position:relative;flex:0 0 94px!important;width:94px!important;height:82px!important;padding:6px!important;scroll-snap-align:center;border-radius:15px!important;background:#0c140e!important;overflow:hidden}
.dialog-gallery button span,.product-page-gallery-thumb>span{position:absolute;right:5px;bottom:5px;display:grid;min-width:23px;height:19px;place-items:center;padding:0 4px;border-radius:999px;color:#dff1c9;background:rgba(3,8,5,.82);font-size:8px;font-weight:900;letter-spacing:.06em}
.dialog-gallery img,.product-page-gallery-thumb img{width:100%!important;height:100%!important;object-fit:contain!important;background:#0c140e!important}
.dialog-visual{min-height:520px!important;padding:28px!important}
.dialog-product-turntable{display:grid;width:100%;height:100%;place-items:center;overflow:hidden}
.dialog-product-turntable img{width:min(92%,620px)!important;height:min(92%,470px)!important;object-fit:contain!important}
.dialog-view-controls{margin:0 auto;padding:10px 14px;border:1px solid rgba(123,175,61,.12);border-radius:999px;background:rgba(4,9,5,.82)}
.dialog-visual-note{margin:0 24px!important}

.ostro-model-viewer{background:linear-gradient(160deg,#0a100b,#020403)!important;--poster-color:transparent}
.ostro-3d-stage{background:linear-gradient(160deg,#0a100b,#020403)}

@media(max-width:760px){
 .dialog-gallery-toolbar{padding:0 18px}.product-page-gallery-toolbar{padding:0}
 .dialog-gallery{padding-inline:18px!important}
 .dialog-gallery button,.product-page-gallery-thumb{flex-basis:82px!important;width:82px!important;height:72px!important}
 .dialog-visual{min-height:390px!important;padding:18px!important}
 .dialog-product-turntable img{width:94%!important;height:92%!important}
 .dialog-visual-note{margin:0 18px!important}
}


/* ===== V40 popup toolbar + 3D cursor fix ===== */
.dialog-topbar .dialog-3d-button{
  overflow:visible;
}
.dialog-topbar .dialog-3d-button.is-demo::before{
  content:'DEMO';
  position:absolute;
  bottom:-7px;
  left:50%;
  transform:translateX(-50%);
  display:inline-flex;
  min-height:16px;
  align-items:center;
  padding:0 6px;
  border-radius:999px;
  color:#061006;
  background:#dff1c9;
  border:1px solid rgba(123,175,61,.35);
  box-shadow:0 6px 14px rgba(0,0,0,.16);
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
}
.dialog-topbar .dialog-top-actions{
  align-items:center;
}
.dialog-topbar .dialog-icon-button,
.dialog-topbar .dialog-close{
  flex-shrink:0;
}
.dialog-topbar .dialog-icon-button svg,
.dialog-topbar .dialog-close svg{
  width:18px;
  height:18px;
}

@media (hover:hover) and (pointer:fine){
  html.ostro-3d-native-cursor,
  html.ostro-3d-native-cursor body,
  html.ostro-3d-native-cursor .ostro-3d-dialog,
  html.ostro-3d-native-cursor .ostro-3d-dialog *,
  html.ostro-3d-native-cursor model-viewer{
    cursor:auto !important;
  }
  html.ostro-3d-native-cursor .ostro-model-viewer{
    cursor:grab !important;
  }
  html.ostro-3d-native-cursor .ostro-model-viewer:active{
    cursor:grabbing !important;
  }
  html.ostro-3d-native-cursor .ostro-light-cursor,
  html.ostro-3d-native-cursor .ostro-page-light{
    opacity:0 !important;
  }
}

@media (max-width:760px){
  .dialog-topbar .dialog-3d-button.is-demo::before{bottom:-6px;font-size:7px;min-height:14px;padding:0 5px;}
}


/* ===== V41 reliable 3D loading + popup containment ===== */
.ostro-3d-dialog{
  inset:14px !important;
  width:min(1180px,calc(100vw - 28px)) !important;
  max-width:calc(100vw - 28px) !important;
  height:min(860px,calc(100svh - 28px));
  max-height:calc(100svh - 28px) !important;
  margin:auto !important;
  box-sizing:border-box;
  overflow:hidden;
}
.ostro-3d-shell{
  width:100%;
  height:100%;
  min-height:0 !important;
  grid-template-rows:auto minmax(0,1fr) auto !important;
  overflow:hidden;
}
.ostro-3d-header{
  min-width:0;
  padding:18px clamp(18px,3vw,28px) !important;
}
.ostro-3d-header>div{min-width:0}
.ostro-3d-header strong,
.ostro-3d-header code{
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.ostro-3d-stage{min-height:0 !important}
.ostro-model-viewer{min-height:0 !important;height:100% !important}
.ostro-3d-controls{
  width:100%;
  box-sizing:border-box;
  padding:14px clamp(16px,2.5vw,24px) !important;
  overflow:hidden;
}
.ostro-3d-controls button:disabled{
  cursor:wait !important;
  opacity:.42;
  pointer-events:none;
}
.ostro-3d-error{color:#fff}
.ostro-3d-error span{max-width:580px}
@media(max-width:760px){
  .ostro-3d-dialog{
    inset:0 !important;
    width:100vw !important;
    max-width:100vw !important;
    height:100svh !important;
    max-height:100svh !important;
    border-radius:0 !important;
  }
  .ostro-3d-header{padding:14px 16px !important}
  .ostro-3d-controls{gap:8px;padding:12px 14px !important}
  .ostro-3d-controls button{flex:1 1 auto;padding-inline:11px !important}
}


/* ===== V42 visible scrolling controls for Other Product Images ===== */
.dialog-gallery-shell,.product-page-gallery-shell{padding-bottom:4px}
.dialog-gallery,.product-page-gallery{
  cursor:grab;
  touch-action:pan-y;
  scroll-behavior:smooth;
}
.dialog-gallery.is-dragging,.product-page-gallery.is-dragging{
  cursor:grabbing;
  scroll-snap-type:none!important;
  user-select:none;
}
.dialog-gallery:focus-visible,.product-page-gallery:focus-visible{
  outline:2px solid #7baf3d;
  outline-offset:4px;
  border-radius:14px;
}
.ostro-gallery-scrollbar{
  --gallery-visible:1;
  --gallery-progress:0;
  position:relative;
  height:12px;
  margin:0 24px 4px;
  border:1px solid rgba(123,175,61,.16);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  cursor:pointer;
  overflow:hidden;
}
.product-page-gallery-shell .ostro-gallery-scrollbar{margin-inline:0}
.ostro-gallery-scrollbar::before{
  content:'Scroll images';
  position:absolute;
  left:50%;
  top:-24px;
  transform:translateX(-50%);
  color:rgba(255,255,255,.38);
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  pointer-events:none;
  opacity:0;
  transition:opacity .2s ease;
}
.ostro-gallery-scrollbar:hover::before,.ostro-gallery-scrollbar:focus-visible::before{opacity:1}
.ostro-gallery-scrollbar i{
  position:absolute;
  top:2px;
  bottom:2px;
  left:2px;
  width:calc((100% - 4px) * var(--gallery-visible));
  min-width:34px;
  border-radius:999px;
  background:linear-gradient(90deg,#7baf3d,#a8d56f);
  box-shadow:0 0 14px rgba(123,175,61,.28);
  transform:translateX(calc(var(--gallery-progress) * (100% / var(--gallery-visible) - 100%)));
  transform-origin:left center;
  transition:width .2s ease,transform .12s linear,opacity .2s ease;
}
.ostro-gallery-scrollbar.is-disabled{
  opacity:.34;
  cursor:not-allowed;
}
.ostro-gallery-scrollbar.is-disabled i{width:calc(100% - 4px);transform:none}
.dialog-gallery-arrows button:disabled,.product-page-gallery-arrows button:disabled{
  opacity:.32;
  cursor:not-allowed;
  color:rgba(255,255,255,.45);
  background:#0c140e;
  border-color:rgba(123,175,61,.10);
}
.dialog-gallery-arrows button:disabled:hover,.product-page-gallery-arrows button:disabled:hover{
  color:rgba(255,255,255,.45);
  background:#0c140e;
  border-color:rgba(123,175,61,.10);
}
@media(max-width:760px){
  .ostro-gallery-scrollbar{margin-inline:18px;height:11px}
  .product-page-gallery-shell .ostro-gallery-scrollbar{margin-inline:0}
}


/* ===== V43 vertical scrolling for the product media panel ===== */
.product-dialog-v5 .dialog-visual-panel{
  position:relative;
  display:block !important;
  height:100%;
  min-height:0;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior:contain;
  scroll-behavior:smooth;
  scrollbar-width:auto;
  scrollbar-color:#7baf3d rgba(255,255,255,.07);
  padding-bottom:28px;
}
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar{width:12px}
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-track{
  background:rgba(255,255,255,.045);
  border-left:1px solid rgba(123,175,61,.10);
}
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-thumb{
  border:3px solid #071009;
  border-radius:999px;
  background:linear-gradient(180deg,#a8d56f,#7baf3d);
}
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-thumb:hover{background:#a8d56f}
.product-dialog-v5 .dialog-visual-panel .dialog-visual{
  display:grid;
  width:100%;
  height:clamp(470px,68vh,690px);
  min-height:470px !important;
  flex:none !important;
}
.product-dialog-v5 .dialog-view-controls{
  position:relative;
  z-index:4;
  width:max-content;
  max-width:calc(100% - 36px);
  margin:18px auto 0;
}
.dialog-media-scroll-button{
  position:sticky;
  z-index:12;
  left:50%;
  bottom:18px;
  display:flex;
  width:max-content;
  min-height:46px;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin:18px auto 8px;
  padding:0 18px;
  transform:translateX(0);
  border:1px solid rgba(168,213,111,.34);
  border-radius:999px;
  color:#071006;
  background:linear-gradient(135deg,#a8d56f,#7baf3d);
  box-shadow:0 14px 34px rgba(0,0,0,.34),0 0 0 5px rgba(123,175,61,.08);
  cursor:pointer;
  font-size:12px;
  font-weight:850;
  letter-spacing:.02em;
  transition:transform .22s ease,background .22s ease,box-shadow .22s ease;
}
.dialog-media-scroll-button:hover{
  transform:translateY(-2px);
  background:#b7df84;
  box-shadow:0 18px 42px rgba(0,0,0,.4),0 0 0 7px rgba(123,175,61,.10);
}
.dialog-media-scroll-button svg{
  width:18px;
  height:18px;
  transition:transform .25s ease;
}
.dialog-media-scroll-button.is-up svg{transform:rotate(180deg)}
.dialog-media-scroll-button.is-at-end{bottom:12px}
.product-dialog-v5 .dialog-gallery-shell{
  scroll-margin-top:18px;
  margin-top:12px;
}
.product-dialog-v5 .dialog-visual-note{margin-bottom:8px !important}

@media(max-width:760px){
  .product-dialog-v5 .dialog-visual-panel{
    height:auto;
    max-height:none;
    overflow-y:visible !important;
    padding-bottom:18px;
  }
  .product-dialog-v5 .dialog-visual-panel .dialog-visual{
    height:clamp(350px,58vh,520px);
    min-height:350px !important;
  }
  .dialog-media-scroll-button{
    position:relative;
    bottom:auto;
    min-height:44px;
    margin:14px auto 10px;
  }
}


/* ==========================================================
   OSTROLUXX V45 — PRODUCT CARD, GALLERY AND ALIGNMENT FIXES
   ========================================================== */
.detailed-product-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:26px;
}
.detailed-product-card{
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr);
  height:100%;
  min-width:0;
  overflow:hidden;
}
.product-card-art{
  width:100%;
  min-width:0;
  aspect-ratio:4/3;
  height:auto !important;
  min-height:285px;
  padding:20px;
  border:0;
  border-radius:0;
  cursor:pointer;
}
.product-card-art img{
  width:100% !important;
  height:100% !important;
  max-width:100%;
  max-height:100%;
  object-fit:contain !important;
}
.product-card-content{
  display:flex !important;
  min-width:0;
  flex-direction:column;
  height:100%;
}
.product-card-category,.product-card-content h3,.product-code,.product-card-content>p,
.product-card-installation,.product-card-availability,.product-card-footer{min-width:0}
.product-card-content h3{
  min-height:2.15em;
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.product-code{
  display:block;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.product-card-content>p{
  min-height:4.5em;
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.product-card-specs{align-items:stretch}
.product-card-specs div{display:flex;min-width:0;flex-direction:column;justify-content:flex-start}
.product-card-specs strong{overflow-wrap:anywhere}
.product-card-installation{margin-top:auto}
.product-card-footer{margin-top:auto}
.product-card-footer>*{min-width:0}
.product-card-details,.product-card-page,.product-card-3d{justify-content:center;text-align:center}

/* Quick-view alignment */
.product-dialog-v5 .dialog-topbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
}
.dialog-topbar-identity{min-width:0}
.dialog-top-actions{min-width:0;align-items:center;justify-content:flex-end}
.dialog-layout-v5{min-width:0}
.dialog-layout-v5>*{min-width:0}
.dialog-visual-panel{align-content:start}
.dialog-visual{
  position:relative;
  width:100%;
  overflow:hidden;
}
.dialog-visual.is-switching::before,.product-page-visual.is-switching::before{
  position:absolute;
  z-index:8;
  inset:50% auto auto 50%;
  width:34px;
  height:34px;
  border:3px solid rgba(168,213,111,.20);
  border-top-color:#7baf3d;
  border-radius:50%;
  content:"";
  transform:translate(-50%,-50%);
  animation:spin .75s linear infinite;
}
.dialog-visual[data-image-error]::before,.product-page-visual[data-image-error]::before{
  position:absolute;
  z-index:9;
  right:20px;
  bottom:20px;
  left:20px;
  width:auto;
  height:auto;
  padding:12px 14px;
  border:1px solid rgba(190,62,54,.35);
  border-radius:12px;
  color:#ffe7e5;
  background:rgba(85,18,15,.90);
  content:attr(data-image-error);
  transform:none;
  animation:none;
  font-size:12px;
  text-align:center;
}
.dialog-gallery-shell,.product-page-gallery-shell{width:100%;min-width:0}
.dialog-gallery,.product-page-gallery{
  width:100%;
  min-width:0;
  touch-action:pan-y pinch-zoom;
}
.dialog-gallery button,.product-page-gallery-thumb{
  position:relative;
  z-index:1;
  pointer-events:auto !important;
  user-select:none;
}
.dialog-gallery button img,.product-page-gallery-thumb img{pointer-events:none}
.dialog-gallery button span,.product-page-gallery-thumb span{pointer-events:none}
.dialog-gallery button:disabled,.product-page-gallery-arrows button:disabled,
.dialog-gallery-arrows button:disabled{opacity:.34;cursor:not-allowed}
.dialog-gallery button.active,.product-page-gallery-thumb.active{
  z-index:2;
  border-color:#7baf3d !important;
  box-shadow:0 0 0 2px rgba(123,175,61,.22),0 12px 28px rgba(0,0,0,.22) !important;
}
.dialog-gallery-arrows button,.product-page-gallery-arrows button{flex:0 0 38px}
.dialog-gallery-toolbar>div:first-child,.product-page-gallery-toolbar>div:first-child{min-width:0}

/* Dedicated product pages */
.product-page-grid{align-items:start}
.product-page-media{min-width:0;align-self:start}
.product-page-copy{min-width:0}
.product-page-visual{display:grid;place-items:center}
.product-page-visual img{object-fit:contain !important}
.product-page-gallery-toolbar{align-items:center}
.product-page-gallery-toolbar strong{white-space:nowrap}
.product-tech-layout>*{min-width:0}
.product-tech-table div{min-width:0}
.product-tech-table strong{overflow-wrap:anywhere}
.related-product-pages{align-items:stretch}
.related-product-page{display:grid;grid-template-rows:auto 1fr;height:100%;min-width:0}
.related-product-page div{display:flex;min-width:0;flex-direction:column}
.related-product-page h3{min-height:2.2em}
.related-product-page code{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}

@media(max-width:1180px){
  .detailed-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-card-art{min-height:300px}
}
@media(max-width:760px){
  .detailed-product-grid{grid-template-columns:1fr;gap:20px}
  .detailed-product-card{min-height:0 !important}
  .product-card-art{min-height:300px;aspect-ratio:1/1}
  .product-card-content h3,.product-card-content>p{min-height:0}
  .product-dialog-v5 .dialog-topbar{grid-template-columns:1fr auto;gap:8px}
  .dialog-topbar-identity>div>strong,.dialog-breadcrumb{max-width:145px}
  .dialog-top-actions{gap:5px}
  .dialog-gallery-toolbar,.product-page-gallery-toolbar{align-items:flex-end}
  .product-page-grid{gap:30px}
}
@media(max-width:480px){
  .product-card-art{min-height:270px}
  .dialog-topbar-identity{display:none}
  .product-dialog-v5 .dialog-topbar{grid-template-columns:1fr;justify-items:end}
  .dialog-top-actions{width:100%;justify-content:flex-end}
  .dialog-gallery-toolbar,.product-page-gallery-toolbar{gap:10px}
  .dialog-gallery-arrows button,.product-page-gallery-arrows button{width:36px;height:36px;flex-basis:36px}
}

/* ===== V47 verified real-product image rollout ===== */
.product-card-art img,
.dialog-visual img,
.product-page-visual img,
.product-page-gallery img,
.dialog-gallery img,
.related-product-page img,
.featured-product-card img,
.image-mosaic-card img,
.download-card img,
.stage-product img{
  object-fit:contain !important;
}
.product-card-art img[src*="/real/"],
.dialog-visual img[src*="/real/"],
.product-page-visual img[src*="/real/"],
.related-product-page img[src*="/real/"],
.featured-product-card img[src*="/real/"],
.image-mosaic-card img[src*="/real/"],
.download-card img[src*="/real/"],
.stage-product img[src*="/real/"]{
  background:transparent !important;
  filter:drop-shadow(0 24px 32px rgba(0,0,0,.30)) !important;
}
.product-card-art img[src*="pending-real-image"],
.dialog-visual img[src*="pending-real-image"],
.product-page-visual img[src*="pending-real-image"],
.related-product-page img[src*="pending-real-image"],
.image-mosaic-card img[src*="pending-real-image"],
.download-card img[src*="pending-real-image"]{
  width:min(88%,620px) !important;
  height:min(88%,460px) !important;
  padding:10px !important;
  opacity:.92;
  filter:none !important;
}
.product-capability.render{
  color:#dbe7d5 !important;
  border-color:rgba(168,213,111,.22) !important;
  background:rgba(123,175,61,.08) !important;
}
.featured-product-card img,
.image-mosaic-card img,
.download-card img{
  max-width:100%;
  padding:18px;
}
.stage-product img{
  max-width:100%;
  max-height:100%;
}


/* V49 — homepage showcase and collection tiles use official product imagery */
.showcase-art-image,
.tile-art-image{display:flex;align-items:flex-end;justify-content:center}
.showcase-art-image{padding:22px 28px 28px}
.showcase-art-image img{width:min(84%,700px)!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 28px 48px rgba(0,0,0,.34));margin:auto!important}
.showcase-card.wide .showcase-art-image img{width:min(88%,1080px)!important}
.showcase-art-precision img{transform:translateY(6px) scale(1.03)}
.showcase-art-atmosphere img{transform:translateY(6px) scale(.98)}
.showcase-art-linear img{width:min(92%,1120px)!important;transform:translateY(18px) scale(1.02)}
.tile-art-image{padding:16px 18px 18px}
.tile-art-image img{width:min(78%,310px)!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 18px 26px rgba(0,0,0,.34));margin:auto!important}
.tile-art-track img{width:min(88%,340px)!important}
.tile-art-decorative img{width:min(74%,270px)!important}
.tile-art-outdoor img{width:min(64%,230px)!important}
.tile-art-spotlights img{width:min(72%,260px)!important}
.showcase-card.light .showcase-art-image::after,.product-tile.light .tile-art-image::after,.product-tile.warm .tile-art-image::after{content:"";position:absolute;left:50%;bottom:8%;width:54%;height:20%;transform:translateX(-50%);background:radial-gradient(circle,rgba(123,175,61,.18),transparent 68%);filter:blur(12px);pointer-events:none}
.showcase-card.dark .showcase-art-image::after,.showcase-card.blue .showcase-art-image::after,.product-tile.dark .tile-art-image::after,.product-tile.blue .tile-art-image::after{content:"";position:absolute;left:50%;bottom:8%;width:58%;height:24%;transform:translateX(-50%);background:radial-gradient(circle,rgba(255,255,255,.11),transparent 68%);filter:blur(12px);pointer-events:none}
@media (max-width:900px){.showcase-art-image img{width:min(88%,560px)!important}.showcase-card.wide .showcase-art-image img{width:min(92%,720px)!important}.tile-art-image img{width:min(80%,280px)!important}}
@media (max-width:560px){.showcase-art-image{padding:18px 16px 24px}.showcase-art-image img{width:min(92%,460px)!important}.tile-art-image{padding:8px 12px 16px}.tile-art-image img{width:min(82%,230px)!important}}

/* =====================================================================
   OSTROLUXX V51 — TASK LIST IMPLEMENTATION
   ===================================================================== */

/* Header safety: prevent logo / Request a Quote overlap on all pages */
.site-header{z-index:10000!important;min-height:var(--nav-height,84px)!important}
.nav-shell{display:grid!important;grid-template-columns:minmax(175px,220px) minmax(0,1fr) auto!important;align-items:center!important;width:min(calc(100% - 40px),1440px)!important;gap:clamp(18px,3vw,48px)!important}
.site-logo{position:relative!important;z-index:2!important;min-width:0!important;width:100%!important;max-width:220px!important;overflow:visible!important}
.brand-logo{width:100%!important;max-width:220px!important;height:auto!important;object-fit:contain!important}
.header-cta{position:relative!important;z-index:2!important;white-space:nowrap!important;min-width:max-content!important}
.main-nav{min-width:0!important;overflow:visible!important}
.nav-list{justify-content:center!important;gap:clamp(16px,2vw,32px)!important}
.page-hero,.products-hero,.contact-hero{padding-top:max(150px,calc(var(--nav-height,84px) + 64px))!important}
.content-section:first-child{scroll-margin-top:120px}

/* Home hero: real product image under Light Reimagined */
.home-hero{background:
  radial-gradient(circle at 73% 42%,rgba(123,175,61,.22),transparent 25%),
  linear-gradient(145deg,#020403 0%,#071008 58%,#020403 100%)!important}
.hero-real-product{right:2%!important;bottom:2%!important;display:grid!important;width:min(58vw,780px)!important;height:min(78vh,720px)!important;place-items:center!important}
.hero-real-product img{position:relative!important;z-index:2!important;width:min(88%,690px)!important;height:90%!important;object-fit:contain!important;filter:drop-shadow(0 50px 48px rgba(0,0,0,.46))!important;animation:v51HeroFloat 6s ease-in-out infinite alternate!important}
.hero-real-product::before{position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),rgba(123,175,61,.1) 30%,transparent 68%);content:"";filter:blur(14px)}
@keyframes v51HeroFloat{to{transform:translateY(-14px) rotate(-1.2deg)}}

/* Responsive product scene */
.immersive-3d-section{grid-template-columns:minmax(320px,.82fr) minmax(440px,1.18fr)!important;align-items:center!important;gap:clamp(30px,5vw,80px)!important;padding-inline:max(24px,calc((100vw - 1440px)/2))!important}
.immersive-3d-stage{width:100%!important;max-width:900px!important;min-height:680px!important;margin-inline:auto!important;overflow:hidden!important}
.stage-product{display:grid!important;place-items:center!important;border-radius:30px!important;background:rgba(8,15,10,.54)!important;border:1px solid rgba(123,175,61,.18)!important;box-shadow:0 28px 70px rgba(0,0,0,.32)!important}
.stage-product img{width:88%!important;height:88%!important;object-fit:contain!important;filter:drop-shadow(0 22px 28px rgba(0,0,0,.38))!important}
.stage-product-a{top:9%!important;left:22%!important;width:55%!important;height:46%!important}
.stage-product-b{left:3%!important;bottom:8%!important;width:42%!important;height:34%!important}
.stage-product-c{right:3%!important;bottom:8%!important;width:42%!important;height:34%!important}

/* One line / Endless possibilities: black text and real linear product */
.showcase-card.wide.blue{color:#0a0d0a!important;background:linear-gradient(145deg,#f2f7ee,#dfead8)!important}
.showcase-card.wide.blue .showcase-copy h3,.showcase-card.wide.blue .showcase-copy p{color:#090b09!important}
.showcase-card.wide.blue .text-link{color:#315d18!important}
.showcase-card.wide.blue .showcase-art-image::after{background:radial-gradient(circle,rgba(123,175,61,.24),transparent 68%)!important}
.showcase-art-linear img{width:min(88%,1050px)!important;height:100%!important;object-fit:contain!important}

/* Interactive Light Lab animation and full-screen alignment */
.light-lab-section{grid-template-columns:minmax(380px,.9fr) minmax(520px,1.1fr)!important;align-items:stretch!important}
.light-lab-copy{max-width:760px!important;justify-self:end!important;width:100%!important}
.lab-control,.lab-insight{width:100%!important;box-sizing:border-box!important}
.lab-scale{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;text-align:center!important}
.lab-scale span:first-child{text-align:left!important}.lab-scale span:last-child{text-align:right!important}
.lab-presets{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important}
.lab-preset{min-width:0!important;justify-content:center!important;text-align:center!important}
.light-lab-scene{display:grid!important;place-items:center!important;min-width:0!important}
.light-lab-stage{width:min(100%,900px)!important;max-height:760px!important;overflow:hidden!important}
.lab-ceiling i::after{animation:v51LampPulse 3.1s ease-in-out infinite alternate!important}
.lab-ceiling i:nth-child(2)::after{animation-delay:.45s!important}.lab-ceiling i:nth-child(3)::after{animation-delay:.9s!important}
.lab-beam{transform-origin:top center!important;animation:v51BeamBreath 4.2s ease-in-out infinite alternate!important;will-change:opacity,transform!important}
.lab-beam-two{animation-delay:.6s!important}.lab-beam-three{animation-delay:1.2s!important}
@keyframes v51LampPulse{to{box-shadow:0 0 34px rgba(255,255,255,.65),0 0 82px var(--lab-glow);transform:translate(-50%,-50%) scale(1.08)}}
@keyframes v51BeamBreath{0%{opacity:.16;transform:scaleX(.92)}100%{opacity:.34;transform:scaleX(1.08)}}

/* Collection cards: real images + updated Outdoor green/black color */
.product-tile{isolation:isolate!important}
.product-tile .tile-copy{z-index:4!important}
.product-tile .tile-art-image{z-index:2!important;height:55%!important}
.product-tile .tile-art-image img{max-height:100%!important}
.product-tile.outdoor-tile{color:#f4f8f1!important;background:linear-gradient(145deg,#08100a,#182b18)!important}
.product-tile.outdoor-tile small,.product-tile.outdoor-tile .text-link{color:#a8d56f!important}
.product-tile.outdoor-tile p{color:#c2cec0!important}
.tile-art-outdoor img{width:min(70%,260px)!important}
.tile-art-all img{width:min(76%,280px)!important}

/* Closing / Color shapes your space section: real product background */
.home-closing{isolation:isolate!important;overflow:hidden!important;background:linear-gradient(145deg,#f7faf4,#dce9d4)!important}
.home-closing-copy{position:relative!important;z-index:3!important;max-width:900px!important;margin-inline:auto!important}
.closing-product-image{position:absolute!important;right:max(-30px,3vw)!important;bottom:-12%!important;z-index:1!important;width:min(42vw,600px)!important;height:92%!important;opacity:.26!important;pointer-events:none!important}
.closing-product-image img{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 35px 40px rgba(0,0,0,.2))!important}
.home-closing::before{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,250,244,.98) 0%,rgba(247,250,244,.86) 52%,rgba(247,250,244,.35) 100%);content:"";z-index:2}

/* Products page: centered portfolio title, tables and real imagery */
.products-hero-content{display:flex!important;flex-direction:column!important;align-items:center!important;max-width:980px!important;margin-inline:auto!important;text-align:center!important}
.products-hero-content .actions{justify-content:center!important}
.products-hero h1{max-width:13ch!important;text-wrap:balance!important}
.product-image-mosaic{align-items:stretch!important}
.image-mosaic-card{display:grid!important;grid-template-rows:minmax(220px,1fr) auto!important;align-items:center!important}
.image-mosaic-card img{width:100%!important;height:100%!important;max-height:300px!important;object-fit:contain!important;padding:20px!important}
.v8-table-wrap{width:100%!important;overflow-x:auto!important;border-radius:22px!important}
.v8-table{width:100%!important;min-width:780px!important;border-collapse:separate!important;border-spacing:0!important;table-layout:fixed!important}
.v8-table th,.v8-table td{vertical-align:top!important;padding:18px 20px!important;line-height:1.45!important;overflow-wrap:anywhere!important}
.product-tech-table{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
.product-tech-table>div{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;min-width:0!important}
.dialog-specs-expanded{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
.dialog-specs-expanded>div{min-width:0!important}
.dialog-media-scroll-button{display:none!important}

/* Sitemap / generic page hero header-safe spacing */
.sitemap-page-hero,.content-section:first-of-type{scroll-margin-top:120px!important}

/* Downloads hero with real product image + aligned download rows */
.downloads-hero{position:relative!important;isolation:isolate!important;background:radial-gradient(circle at 75% 42%,rgba(123,175,61,.2),transparent 28%),linear-gradient(145deg,#020403,#09120b)!important}
.downloads-hero .page-hero-content{position:relative!important;z-index:3!important;margin-right:auto!important;margin-left:max(24px,calc((100vw - 1440px)/2))!important;text-align:left!important}
.downloads-hero .page-hero-content p{margin-left:0!important}
.downloads-hero-product{position:absolute!important;right:3%!important;bottom:0!important;width:min(46vw,680px)!important;height:82%!important;z-index:2!important;opacity:.8!important}
.downloads-hero-product img{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 42px 40px rgba(0,0,0,.42))!important}
.resource-list{display:grid!important;gap:14px!important;width:min(100%,1100px)!important;margin-inline:auto!important}
.resource-list-item{display:grid!important;grid-template-columns:64px minmax(0,1fr) auto!important;align-items:center!important;gap:24px!important;min-width:0!important}
.resource-list-item>div{min-width:0!important}.resource-list-item>a{white-space:nowrap!important;justify-self:end!important}

/* About page: fixed hero and real images */
.about-page-hero{position:relative!important;isolation:isolate!important;background:radial-gradient(circle at 74% 44%,rgba(123,175,61,.18),transparent 26%),linear-gradient(145deg,#020403,#101b12)!important}
.about-page-hero .page-hero-content{position:relative!important;z-index:3!important;max-width:900px!important;margin-left:max(24px,calc((100vw - 1440px)/2))!important;text-align:left!important}
.about-page-hero .page-hero-content p{margin-left:0!important}
.about-hero-product{position:absolute!important;right:5%!important;bottom:-4%!important;width:min(42vw,560px)!important;height:78%!important;z-index:2!important;opacity:.82!important}
.about-hero-product img{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 35px 42px rgba(0,0,0,.44))!important}
.about-real-media .media-center,.purpose-real-media .media-center,.technology-integration-media .media-center{display:grid!important;place-items:center!important;min-height:520px!important;padding:36px!important;background:radial-gradient(circle,rgba(123,175,61,.14),transparent 52%),#070b08!important;border-radius:32px!important}
.about-real-media img,.purpose-real-media img,.technology-integration-media img{width:min(88%,620px)!important;height:460px!important;object-fit:contain!important;filter:drop-shadow(0 30px 34px rgba(0,0,0,.42))!important}
.about-product-band{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;width:min(calc(100% - 48px),1440px)!important;margin:40px auto 0!important}
.about-product-band img{width:100%!important;height:330px!important;object-fit:contain!important;padding:24px!important;border:1px solid rgba(123,175,61,.14)!important;border-radius:28px!important;background:#08100a!important;box-shadow:0 20px 50px rgba(0,0,0,.16)!important}

/* Technology page: optical lab image, CCT alignment, architectural integration */
.content-section.dark .split{align-items:center!important;gap:clamp(34px,5vw,72px)!important}
.technology-integration-media{min-width:0!important}
.v8-lab{grid-template-columns:minmax(420px,1.15fr) minmax(320px,.85fr)!important;align-items:stretch!important;gap:28px!important}
.v8-lab-stage{position:relative!important;display:grid!important;place-items:center!important;min-height:560px!important;overflow:hidden!important}
.v51-optical-product{position:relative!important;z-index:4!important;width:min(42%,300px)!important;height:240px!important;object-fit:contain!important;filter:drop-shadow(0 24px 28px rgba(0,0,0,.45))!important;transform:translateY(-70px)!important}
.v8-lab-controls{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;gap:22px!important}
.v8-control{width:100%!important;min-width:0!important}
.v8-control label{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important}
.v8-control input[type="range"]{width:100%!important;margin-top:14px!important}
.v8-control output{min-width:74px!important;text-align:right!important;color:#a8d56f!important;font-weight:800!important}

/* Contact page: real product hero, consistent type, aligned form */
.contact-hero{font-family:inherit!important;background:radial-gradient(circle at 76% 44%,rgba(123,175,61,.2),transparent 27%),linear-gradient(145deg,#020403,#0c160e)!important}
.contact-hero-copy,.contact-workspace,.contact-form-shell,.contact-sidebar{font-family:inherit!important}
.contact-product-image{position:absolute!important;right:3%!important;bottom:-3%!important;width:min(46vw,690px)!important;height:80%!important;opacity:.78!important;z-index:2!important}
.contact-product-image img{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 38px 42px rgba(0,0,0,.48))!important}
.contact-hero-copy{max-width:780px!important}
.contact-workspace-grid{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)!important;align-items:start!important;gap:32px!important}
.contact-form-heading{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:24px!important}
.contact-form-pro{display:block!important;width:100%!important}
.form-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;gap:18px!important}
.field{display:flex!important;flex-direction:column!important;min-width:0!important;height:100%!important}
.field input,.field select,.field textarea{width:100%!important;box-sizing:border-box!important;font:inherit!important}
.field textarea{min-height:145px!important}
.consent-field{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;align-items:start!important;gap:12px!important}
.consent-field input{margin-top:3px!important}
.consent-field .field-error{grid-column:2!important;color:#f08f83!important;font-size:12px!important;min-height:16px!important}
.product-enquiry-required{margin-top:18px!important;padding:16px!important;border:1px solid rgba(123,175,61,.24)!important;border-radius:16px!important;background:rgba(123,175,61,.08)!important}
.form-navigation{align-items:center!important;justify-content:space-between!important;gap:16px!important}

/* Responsive corrections */
@media(max-width:1100px){
  .nav-shell{grid-template-columns:minmax(160px,200px) minmax(0,1fr) auto!important;gap:18px!important}
  .nav-list{gap:16px!important}.nav-list a{font-size:12px!important}
  .immersive-3d-section,.light-lab-section,.contact-workspace-grid,.v8-lab{grid-template-columns:1fr!important}
  .immersive-3d-stage{min-height:600px!important}.light-lab-copy{justify-self:stretch!important;max-width:none!important}
  .contact-product-image,.downloads-hero-product,.about-hero-product{opacity:.34!important;right:-6%!important}
  .downloads-hero .page-hero-content,.about-page-hero .page-hero-content{margin-inline:auto!important;text-align:center!important}.downloads-hero .page-hero-content p,.about-page-hero .page-hero-content p{margin-inline:auto!important}
}
@media(max-width:900px){
  .main-nav,.header-cta{display:none!important}.nav-shell{grid-template-columns:1fr auto!important}
  .site-logo{max-width:190px!important}.about-product-band{grid-template-columns:1fr!important}
  .form-row{grid-template-columns:1fr!important}.resource-list-item{grid-template-columns:52px minmax(0,1fr)!important}.resource-list-item>a{grid-column:2!important;justify-self:start!important}
  .product-tech-table,.dialog-specs-expanded{grid-template-columns:1fr!important}
  .contact-product-image,.downloads-hero-product,.about-hero-product{display:none!important}
}
@media(max-width:680px){
  .home-hero{min-height:760px!important}.home-hero-copy{position:relative!important;z-index:4!important}.hero-real-product{right:-18%!important;bottom:-8%!important;width:92vw!important;height:50vh!important;opacity:.34!important}
  .immersive-3d-stage{min-height:520px!important}.stage-product-a{top:7%!important;left:16%!important;width:68%!important;height:43%!important}.stage-product-b{left:2%!important;width:46%!important}.stage-product-c{right:2%!important;width:46%!important}
  .lab-presets{grid-template-columns:1fr!important}.lab-scale{grid-template-columns:1fr!important;gap:6px!important}.lab-scale span,.lab-scale strong{text-align:center!important}
  .closing-product-image{right:-25%!important;width:90vw!important;opacity:.18!important}
  .v51-optical-product{width:52%!important;height:190px!important;transform:translateY(-55px)!important}
  .about-real-media img,.purpose-real-media img,.technology-integration-media img{height:330px!important}
  .contact-form-heading{grid-template-columns:1fr!important}.form-completion{justify-self:start!important}
}


/* =====================================================================
   OSTROLUXX V52 — SECOND-PASS QA CORRECTIONS
   ===================================================================== */

/* Keep the sitemap and all utility-page headers on the same compact nav. */
.sitemap-page .main-nav .nav-list,
body:has(link[rel="canonical"][href$="/sitemap/"]) .main-nav .nav-list{
  flex-wrap:nowrap!important;
}

/* Responsive real-product scene: keep all cards fully inside the stage. */
.stage-product-b{left:5%!important;width:39%!important}
.stage-product-c{right:5%!important;width:39%!important}

/* Light Lab: remove the legacy percentage-height sizing cycle that clipped
   the controls and room scene on desktop and stacked layouts. */
.light-lab-section{
  height:auto!important;
  min-height:0!important;
  grid-auto-rows:auto!important;
  overflow:visible!important;
}
.light-lab-copy{
  height:auto!important;
  min-height:900px!important;
  justify-content:center!important;
  padding-top:72px!important;
  padding-bottom:72px!important;
}
.light-lab-copy .section-title{
  font-size:clamp(46px,4.7vw,74px)!important;
  max-width:12ch!important;
}
.light-lab-copy .body-large{font-size:16px!important;line-height:1.55!important}
.lab-highlights{margin-top:22px!important;gap:10px!important}
.lab-highlights article{padding:14px!important}
.lab-control{margin-top:22px!important;padding:18px!important}
.lab-presets{margin-top:14px!important;gap:9px!important}
.lab-insight{margin-top:16px!important;padding:18px!important}
.light-lab-copy .actions{margin-top:18px!important}
.light-lab-scene{
  height:auto!important;
  min-height:900px!important;
  overflow:hidden!important;
}
.light-lab-stage{
  height:auto!important;
  min-height:700px!important;
  max-height:none!important;
}

@media(max-width:1180px){
  .light-lab-section{grid-template-columns:1fr!important}
  .light-lab-copy{min-height:0!important;padding:76px 24px 36px!important}
  .light-lab-scene{min-height:720px!important;padding:24px 24px 78px!important}
  .light-lab-stage{min-height:620px!important}
}
@media(max-width:680px){
  .stage-product-b{left:4%!important;width:42%!important}
  .stage-product-c{right:4%!important;width:42%!important}
  .light-lab-copy{padding:68px 18px 30px!important}
  .light-lab-scene{min-height:590px!important;padding:12px 18px 72px!important}
  .light-lab-stage{min-height:500px!important}
}

/* Final mobile containment for the responsive product scene. */
@media(max-width:680px){
  .stage-product-b{left:5%!important;width:40%!important}
  .stage-product-c{right:5%!important;width:40%!important}
}
@media(max-width:680px){
  .stage-product-b{left:5.5%!important;width:39%!important}
  .stage-product-c{right:5.5%!important;width:39%!important}
}


/* =====================================================================
   OSTROLUXX V53 — DOWNLOADS PAGE LAYOUT REBUILD
   ===================================================================== */

.downloads-page main{
  overflow:clip;
  background:#030704;
}

/* Hero: preserve a visible title and keep the real product image in its own area. */
.downloads-page .downloads-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(380px,.82fr)!important;
  align-items:center!important;
  gap:clamp(30px,5vw,90px)!important;
  width:100%!important;
  min-height:clamp(580px,68vh,760px)!important;
  padding:clamp(160px,15vh,205px) max(32px,calc((100vw - 1440px)/2)) 80px!important;
  overflow:hidden!important;
}
.downloads-page .downloads-hero::after{
  position:absolute;
  right:8%;
  bottom:-10%;
  width:520px;
  height:360px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(123,175,61,.16),transparent 68%);
  filter:blur(18px);
  content:"";
  pointer-events:none;
  z-index:1;
}
.downloads-page .downloads-hero .page-hero-content{
  position:relative!important;
  z-index:3!important;
  width:100%!important;
  max-width:760px!important;
  margin:0!important;
  text-align:left!important;
}
.downloads-page .downloads-hero .display-title{
  max-width:10.5ch!important;
  margin:14px 0 0!important;
  font-size:clamp(58px,7vw,112px)!important;
  line-height:.92!important;
  text-wrap:balance!important;
}
.downloads-page .downloads-hero .page-hero-content p{
  max-width:650px!important;
  margin:28px 0 0!important;
  color:#b7c2b4!important;
  font-size:clamp(18px,1.55vw,24px)!important;
  line-height:1.48!important;
}
.downloads-page .downloads-hero-product{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  z-index:3!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:clamp(360px,49vw,600px)!important;
  opacity:1!important;
}
.downloads-page .downloads-hero-product::before{
  position:absolute;
  inset:12% 2% 5%;
  border:1px solid rgba(123,175,61,.16);
  border-radius:44px;
  background:linear-gradient(145deg,rgba(14,25,16,.88),rgba(4,8,5,.72));
  box-shadow:0 38px 95px rgba(0,0,0,.34);
  content:"";
}
.downloads-page .downloads-hero-product img{
  position:relative;
  z-index:2;
  width:92%!important;
  height:88%!important;
  object-fit:contain!important;
  padding:34px!important;
  filter:drop-shadow(0 32px 34px rgba(0,0,0,.48))!important;
}

/* Intro and resource workflow. */
.downloads-page .downloads-content{
  padding:clamp(90px,9vw,132px) 24px clamp(100px,10vw,150px)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(123,175,61,.08),transparent 32%),
    #030704!important;
}
.downloads-page .downloads-section-head{
  width:min(100%,980px)!important;
  margin:0 auto!important;
  text-align:center!important;
}
.downloads-page .downloads-section-head .section-title{
  max-width:14ch!important;
  margin:16px auto 0!important;
  color:#f6faf4!important;
  font-size:clamp(42px,5vw,72px)!important;
  line-height:.98!important;
  text-wrap:balance!important;
}
.downloads-page .downloads-section-head .body-large{
  max-width:880px!important;
  margin:24px auto 0!important;
  color:#aab5a7!important;
  font-size:clamp(17px,1.55vw,23px)!important;
  line-height:1.55!important;
}
.downloads-page .resource-list{
  display:grid!important;
  gap:18px!important;
  width:min(calc(100% - 16px),1280px)!important;
  margin:64px auto 0!important;
}
.downloads-page .resource-list-item{
  position:relative!important;
  display:grid!important;
  grid-template-columns:74px minmax(0,1fr) minmax(190px,auto)!important;
  align-items:center!important;
  gap:28px!important;
  min-width:0!important;
  min-height:150px!important;
  padding:30px 34px!important;
  overflow:hidden!important;
  border:1px solid rgba(123,175,61,.17)!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,rgba(15,27,17,.96),rgba(7,14,9,.96))!important;
  box-shadow:0 22px 55px rgba(0,0,0,.17)!important;
  transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease!important;
}
.downloads-page .resource-list-item::after{
  position:absolute;
  top:0;
  right:0;
  width:34%;
  height:100%;
  background:linear-gradient(90deg,transparent,rgba(123,175,61,.045));
  content:"";
  pointer-events:none;
}
.downloads-page .resource-list-item:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(123,175,61,.42)!important;
  box-shadow:0 30px 70px rgba(0,0,0,.25)!important;
}
.downloads-page .resource-list-item>span{
  position:relative;
  z-index:2;
  display:grid!important;
  place-items:center!important;
  width:58px!important;
  height:58px!important;
  border:1px solid rgba(123,175,61,.32)!important;
  border-radius:50%!important;
  background:rgba(123,175,61,.1)!important;
  color:#a8d56f!important;
  font-size:16px!important;
  font-weight:850!important;
  letter-spacing:.04em!important;
}
.downloads-page .resource-list-item>div{
  position:relative;
  z-index:2;
  min-width:0!important;
  padding-right:10px!important;
}
.downloads-page .resource-list-item h3{
  margin:0!important;
  color:#f8fbf6!important;
  font-size:clamp(25px,2.25vw,34px)!important;
  letter-spacing:-.035em!important;
  line-height:1.08!important;
}
.downloads-page .resource-list-item p{
  max-width:760px!important;
  margin:10px 0 0!important;
  color:#a9b5a6!important;
  font-size:clamp(15px,1.35vw,19px)!important;
  line-height:1.48!important;
}
.downloads-page .resource-action{
  position:relative;
  z-index:3;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:13px!important;
  min-width:190px!important;
  min-height:54px!important;
  padding:13px 20px!important;
  justify-self:end!important;
  white-space:nowrap!important;
  border:1px solid rgba(123,175,61,.3)!important;
  border-radius:999px!important;
  color:#b7e07f!important;
  background:rgba(123,175,61,.08)!important;
  font-size:15px!important;
  font-weight:800!important;
  transition:background .22s ease,border-color .22s ease,color .22s ease!important;
}
.downloads-page .resource-action b{
  color:inherit!important;
  font-size:24px!important;
  font-weight:500!important;
  line-height:1!important;
  transform:translateY(-1px)!important;
}
.downloads-page .resource-action:hover{
  border-color:#7baf3d!important;
  color:#071008!important;
  background:#8fc746!important;
}

/* Keep the second downloads section aligned to the same visual width. */
.downloads-page .v8-section-inner{
  width:min(calc(100% - 48px),1280px)!important;
  margin-inline:auto!important;
}
.downloads-page .v8-grid.four{
  align-items:stretch!important;
}
.downloads-page .v8-grid.four .v8-card{
  min-width:0!important;
  height:100%!important;
}

@media(max-width:1100px){
  .downloads-page .downloads-hero{
    grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr)!important;
    gap:30px!important;
    padding-inline:34px!important;
  }
  .downloads-page .resource-list-item{
    grid-template-columns:64px minmax(0,1fr) 180px!important;
    gap:22px!important;
    padding:28px!important;
  }
  .downloads-page .resource-action{min-width:180px!important}
}

@media(max-width:900px){
  .downloads-page .downloads-hero{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding:145px 24px 64px!important;
    text-align:center!important;
  }
  .downloads-page .downloads-hero .page-hero-content{
    max-width:780px!important;
    margin-inline:auto!important;
    text-align:center!important;
  }
  .downloads-page .downloads-hero .display-title{
    max-width:11ch!important;
    margin-inline:auto!important;
  }
  .downloads-page .downloads-hero .page-hero-content p{
    margin-inline:auto!important;
  }
  .downloads-page .downloads-hero-product{
    display:grid!important;
    max-width:700px!important;
    height:430px!important;
    margin-inline:auto!important;
  }
  .downloads-page .resource-list-item{
    grid-template-columns:62px minmax(0,1fr)!important;
    min-height:0!important;
  }
  .downloads-page .resource-action{
    grid-column:2!important;
    justify-self:start!important;
    margin-top:4px!important;
  }
}

@media(max-width:600px){
  .downloads-page .downloads-hero{
    padding:128px 18px 46px!important;
  }
  .downloads-page .downloads-hero .display-title{
    font-size:clamp(48px,14vw,72px)!important;
  }
  .downloads-page .downloads-hero-product{
    height:310px!important;
  }
  .downloads-page .downloads-hero-product img{
    padding:18px!important;
  }
  .downloads-page .downloads-content{
    padding:78px 16px 96px!important;
  }
  .downloads-page .downloads-section-head .section-title{
    font-size:clamp(38px,11vw,56px)!important;
  }
  .downloads-page .resource-list{
    width:100%!important;
    gap:14px!important;
    margin-top:44px!important;
  }
  .downloads-page .resource-list-item{
    grid-template-columns:1fr!important;
    gap:17px!important;
    padding:24px 22px!important;
    border-radius:20px!important;
  }
  .downloads-page .resource-list-item>span{
    width:50px!important;
    height:50px!important;
  }
  .downloads-page .resource-list-item>div{
    padding-right:0!important;
  }
  .downloads-page .resource-action{
    grid-column:1!important;
    justify-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    margin-top:2px!important;
  }
  .downloads-page .v8-section-inner{
    width:min(calc(100% - 32px),1280px)!important;
  }
}


/* ===== V54 home closing CTA visual refresh ===== */
.home-closing{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(320px,560px)!important;
  align-items:center!important;
  gap:48px!important;
  min-height:760px!important;
  padding:110px max(24px,calc((100vw - var(--max))/2)) 90px!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 22% 18%, rgba(123,175,61,.18), transparent 18%),
    radial-gradient(circle at 80% 82%, rgba(168,213,111,.12), transparent 24%),
    linear-gradient(135deg,#050906 0%,#08100a 34%,#0f1b12 70%,#132117 100%)!important;
}
.home-closing::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(90deg, rgba(4,8,5,.95) 0%, rgba(4,8,5,.88) 34%, rgba(4,8,5,.56) 58%, rgba(4,8,5,.18) 100%)!important;
  z-index:1!important;
}
.home-closing::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:-180px!important;
  width:min(920px,84vw)!important;
  height:420px!important;
  transform:translateX(-50%)!important;
  border-radius:50%!important;
  background:radial-gradient(circle, rgba(168,213,111,.18) 0%, rgba(123,175,61,.08) 36%, transparent 70%)!important;
  filter:blur(12px)!important;
  z-index:0!important;
}
.home-closing-copy{
  position:relative!important;
  z-index:3!important;
  width:min(100%,760px)!important;
  max-width:760px!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
}
.home-closing .section-title{
  max-width:9ch!important;
  margin:0!important;
  color:#ffffff!important;
  font-size:clamp(52px,7.2vw,94px)!important;
  line-height:.95!important;
  letter-spacing:-.07em!important;
  text-shadow:0 18px 40px rgba(0,0,0,.34)!important;
}
.home-closing p{
  max-width:640px!important;
  margin:24px 0 0!important;
  color:rgba(241,247,239,.88)!important;
  font-size:clamp(20px,2vw,28px)!important;
  line-height:1.42!important;
  text-shadow:0 6px 16px rgba(0,0,0,.24)!important;
}
.home-closing .actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:16px!important;
  margin-top:32px!important;
  position:relative!important;
  z-index:4!important;
}
.home-closing .actions .button{
  min-width:220px!important;
  min-height:60px!important;
  border-radius:999px!important;
  font-size:18px!important;
  font-weight:800!important;
  box-shadow:0 18px 34px rgba(0,0,0,.18)!important;
}
.home-closing .button-dark{
  background:linear-gradient(135deg,#7BAF3D,#97CD52)!important;
  border:1px solid rgba(168,213,111,.9)!important;
  color:#071008!important;
}
.home-closing .button-dark:hover{
  background:linear-gradient(135deg,#8dc44a,#a8d56f)!important;
  transform:translateY(-1px)!important;
}
.home-closing .button-light-outline{
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(168,213,111,.48)!important;
  color:#eff8e5!important;
  backdrop-filter:blur(8px)!important;
}
.home-closing .button-light-outline:hover{
  background:rgba(168,213,111,.12)!important;
  color:#ffffff!important;
}
.closing-product-image{
  position:relative!important;
  z-index:2!important;
  width:min(100%,560px)!important;
  height:min(72vh,620px)!important;
  justify-self:end!important;
  align-self:end!important;
  right:auto!important;
  bottom:auto!important;
  opacity:1!important;
  pointer-events:none!important;
}
.closing-product-image::before{
  content:"";
  position:absolute;
  inset:auto 10% 8% 10%;
  height:24%;
  border-radius:50%;
  background:radial-gradient(circle, rgba(168,213,111,.30) 0%, rgba(123,175,61,.12) 42%, transparent 72%);
  filter:blur(18px);
  z-index:0;
}
.closing-product-image img{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  filter:drop-shadow(0 28px 40px rgba(0,0,0,.34))!important;
}
@media (max-width:1100px){
  .home-closing{
    grid-template-columns:1fr!important;
    gap:18px!important;
    min-height:auto!important;
    padding:92px 24px 34px!important;
  }
  .home-closing::before{
    background:linear-gradient(180deg, rgba(4,8,5,.93) 0%, rgba(4,8,5,.84) 42%, rgba(4,8,5,.64) 100%)!important;
  }
  .home-closing-copy{
    max-width:820px!important;
    margin-inline:auto!important;
    text-align:center!important;
  }
  .home-closing .section-title{
    max-width:11ch!important;
    margin-inline:auto!important;
    font-size:clamp(44px,8vw,74px)!important;
  }
  .home-closing p{
    max-width:720px!important;
    margin-inline:auto!important;
  }
  .home-closing .actions{
    justify-content:center!important;
  }
  .closing-product-image{
    justify-self:center!important;
    width:min(100%,500px)!important;
    height:400px!important;
  }
}
@media (max-width:760px){
  .home-closing{
    padding:82px 18px 20px!important;
    gap:14px!important;
  }
  .home-closing .section-title{
    font-size:clamp(38px,12vw,56px)!important;
    max-width:100%!important;
  }
  .home-closing p{
    font-size:clamp(17px,4.9vw,21px)!important;
    line-height:1.5!important;
  }
  .home-closing .actions{
    gap:12px!important;
  }
  .home-closing .actions .button{
    width:100%!important;
    min-width:0!important;
    min-height:56px!important;
    font-size:17px!important;
  }
  .closing-product-image{
    width:min(100%,420px)!important;
    height:300px!important;
  }
}


/* ===== V55 product PDFs + homepage visual refinements ===== */
.has-official-pdf.review-pdf,
.review-pdf{
  border-color:rgba(241,205,114,.65)!important;
  color:#f1cd72!important;
  background:rgba(241,205,114,.08)!important;
}
.datasheet-review-note{
  margin-top:10px;
  padding:10px 12px;
  border:1px solid rgba(241,205,114,.28);
  border-radius:12px;
  background:rgba(241,205,114,.07);
  color:#ecd9a2;
  font-size:12px;
  line-height:1.45;
}

/* One line. Endless possibilities. - dark green / black brand theme */
.showcase-card.wide.theme-linear{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  color:#f7faf5!important;
  border-color:rgba(123,175,61,.28)!important;
  background:
    radial-gradient(circle at 78% 45%,rgba(168,213,111,.17),transparent 24%),
    linear-gradient(135deg,#030604 0%,#08100a 35%,#112218 72%,#071008 100%)!important;
  box-shadow:0 26px 70px rgba(0,0,0,.24)!important;
}
.showcase-card.wide.theme-linear::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(180deg,transparent,#7baf3d 22%,#a8d56f 50%,#7baf3d 78%,transparent);
  z-index:4;
}
.showcase-card.wide.theme-linear .showcase-copy{z-index:4!important}
.showcase-card.wide.theme-linear .showcase-copy h3{
  color:#ffffff!important;
  text-shadow:0 16px 34px rgba(0,0,0,.32)!important;
}
.showcase-card.wide.theme-linear .showcase-copy p{color:#c8d5c5!important}
.showcase-card.wide.theme-linear .text-link{color:#a8d56f!important}
.showcase-card.wide.theme-linear .text-link:hover{color:#d9efbd!important}
.showcase-card.wide.theme-linear .showcase-art-image::after{
  background:radial-gradient(circle,rgba(168,213,111,.22),rgba(123,175,61,.09) 42%,transparent 70%)!important;
}
.showcase-card.wide.theme-linear .showcase-art-linear img{
  filter:drop-shadow(0 30px 40px rgba(0,0,0,.42))!important;
}

/* CTA section - clearly visible real Elantra product image */
.closing-product-image{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  align-items:end!important;
  padding:22px 20px 10px!important;
  border:1px solid rgba(123,175,61,.18)!important;
  border-radius:38px 38px 0 0!important;
  background:linear-gradient(180deg,rgba(168,213,111,.07),rgba(7,16,8,.08))!important;
  backdrop-filter:blur(8px)!important;
}
.closing-product-label{
  justify-self:start;
  z-index:2;
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 13px;
  border:1px solid rgba(168,213,111,.32);
  border-radius:999px;
  color:#dff1c9;
  background:rgba(7,16,8,.68);
  font-size:11px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.closing-product-image img{
  object-position:center center!important;
  transform:scale(1.02)!important;
}
@media(max-width:1100px){
  .closing-product-image{border-radius:32px 32px 0 0!important;padding-top:18px!important}
  .closing-product-label{justify-self:center}
}
@media(max-width:760px){
  .showcase-card.wide.theme-linear .showcase-copy h3{font-size:clamp(40px,12vw,62px)!important}
  .closing-product-image{padding:15px 12px 0!important;border-radius:26px 26px 0 0!important}
}


/* =====================================================================
   OSTROLUXX V56 — INTERACTIVE SCENE, COLLECTION, CTA, STATS + HERO MEDIA
   ===================================================================== */

/* Pointer-responsive product composition — valid independent transforms. */
.immersive-3d-stage{
  --stage-a-x:0px;--stage-a-y:0px;--stage-a-rx:0deg;--stage-a-ry:0deg;
  --stage-b-x:0px;--stage-b-y:0px;--stage-b-rx:0deg;--stage-b-ry:0deg;
  --stage-c-x:0px;--stage-c-y:0px;--stage-c-rx:0deg;--stage-c-ry:0deg;
  --stage-grid-x:0px;--stage-grid-y:0px;--stage-halo-x:0px;--stage-halo-y:0px;
  cursor:crosshair!important;
  touch-action:pan-y!important;
  outline:none!important;
}
.immersive-3d-stage:focus-visible{
  box-shadow:0 0 0 3px rgba(168,213,111,.34),0 30px 80px rgba(0,0,0,.25)!important;
  border-radius:38px!important;
}
.immersive-3d-stage .stage-product{
  animation:none!important;
  will-change:transform!important;
  transition:transform .32s cubic-bezier(.22,1,.36,1),border-color .25s ease,box-shadow .25s ease!important;
}
.immersive-3d-stage .stage-product img{
  animation:v56StageImageFloat 4.8s ease-in-out infinite alternate!important;
}
.stage-product-a{
  top:9%!important;bottom:auto!important;left:22%!important;right:auto!important;
  transform:translate3d(var(--stage-a-x),var(--stage-a-y),120px) rotateX(var(--stage-a-rx)) rotateY(var(--stage-a-ry)) rotateZ(-4deg)!important;
}
.stage-product-b{
  top:auto!important;bottom:8%!important;left:5%!important;right:auto!important;
  transform:translate3d(var(--stage-b-x),var(--stage-b-y),38px) rotateX(var(--stage-b-rx)) rotateY(var(--stage-b-ry)) rotateZ(7deg)!important;
}
.stage-product-c{
  top:auto!important;bottom:8%!important;right:5%!important;left:auto!important;
  transform:translate3d(var(--stage-c-x),var(--stage-c-y),48px) rotateX(var(--stage-c-rx)) rotateY(var(--stage-c-ry)) rotateZ(-7deg)!important;
}
.immersive-3d-stage .stage-grid{
  translate:var(--stage-grid-x) var(--stage-grid-y)!important;
  transition:translate .35s cubic-bezier(.22,1,.36,1)!important;
}
.immersive-3d-stage .stage-halo{
  translate:var(--stage-halo-x) var(--stage-halo-y)!important;
  transition:translate .4s cubic-bezier(.22,1,.36,1),opacity .25s ease!important;
}
.immersive-3d-stage.is-pointer-active .stage-product{
  border-color:rgba(168,213,111,.42)!important;
  box-shadow:0 36px 90px rgba(0,0,0,.42),0 0 0 1px rgba(123,175,61,.12)!important;
}
.immersive-3d-stage.is-pointer-active .stage-halo{opacity:1!important}
.stage-caption{
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  padding:8px 12px!important;border:1px solid rgba(123,175,61,.26)!important;
  border-radius:999px!important;color:#bfe68d!important;background:rgba(5,10,6,.72)!important;
  backdrop-filter:blur(10px)!important;
}
.stage-caption::before{width:7px;height:7px;border-radius:50%;background:#8fc746;box-shadow:0 0 14px #8fc746;content:""}
@keyframes v56StageImageFloat{to{translate:0 -8px}}

/* Track-lighting collection card now follows the green/black collection theme. */
.product-tile.track-tile{
  color:#f4f8f1!important;
  background:
    radial-gradient(circle at 78% 78%,rgba(123,175,61,.18),transparent 30%),
    linear-gradient(145deg,#09100a,#132318)!important;
}
.product-tile.track-tile small,.product-tile.track-tile .text-link{color:#a8d56f!important}
.product-tile.track-tile p{color:#bdc9ba!important}
.product-tile.track-tile .tile-art-image::after{background:radial-gradient(circle,rgba(168,213,111,.16),transparent 68%)!important}

/* Closing CTA: one clear catalogue action only. */
.home-closing .actions:has(.home-closing-catalogue){justify-content:flex-start!important}
.home-closing .home-closing-catalogue{
  min-width:230px!important;
  color:#071008!important;
  background:linear-gradient(135deg,#7baf3d,#a8d56f)!important;
  border-color:#a8d56f!important;
}
.home-closing .home-closing-catalogue:hover{color:#071008!important;background:linear-gradient(135deg,#8dc44a,#b6df82)!important}

/* Product portfolio scale panel — complete box, generous spacing, no clipping. */
.portfolio-summary{
  padding:74px 24px 92px!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(123,175,61,.10),transparent 34%),
    #030704!important;
}
.portfolio-summary-panel{
  position:relative!important;
  width:min(100%,1440px)!important;
  margin-inline:auto!important;
  padding:clamp(30px,4vw,58px)!important;
  overflow:hidden!important;
  border:1px solid rgba(123,175,61,.22)!important;
  border-radius:34px!important;
  background:linear-gradient(145deg,rgba(16,29,18,.98),rgba(6,13,8,.98))!important;
  box-shadow:0 34px 90px rgba(0,0,0,.28)!important;
}
.portfolio-summary-panel::before{
  position:absolute;inset:-40% auto auto 48%;width:620px;height:380px;border-radius:50%;
  background:radial-gradient(circle,rgba(168,213,111,.15),transparent 70%);content:"";pointer-events:none;
}
.portfolio-summary-head{position:relative;z-index:2;max-width:880px;margin:0 auto 42px;text-align:center}
.portfolio-summary-head .section-title{max-width:13ch;margin:14px auto 0;color:#f7fbf4;font-size:clamp(38px,4.5vw,64px);line-height:.98}
.portfolio-summary-head .body-large{max-width:760px;margin:20px auto 0;color:#aebaaa;font-size:clamp(16px,1.4vw,21px);line-height:1.55}
.portfolio-summary-grid{
  position:relative!important;z-index:2!important;
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  width:100%!important;margin:0!important;overflow:hidden!important;
  border:1px solid rgba(123,175,61,.18)!important;border-radius:26px!important;
  background:rgba(4,10,6,.58)!important;
}
.portfolio-stat{
  display:flex!important;min-width:0!important;min-height:210px!important;
  flex-direction:column!important;align-items:center!important;justify-content:center!important;
  padding:34px 20px!important;border-right:1px solid rgba(123,175,61,.16)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.025),transparent)!important;
}
.portfolio-stat:last-child{border-right:0!important}
.portfolio-stat strong{
  display:block!important;margin:0!important;color:#b7e67c!important;
  font-size:clamp(54px,5.3vw,86px)!important;line-height:.9!important;letter-spacing:-.07em!important;
  text-shadow:0 0 34px rgba(123,175,61,.18)!important;
}
.portfolio-stat span{margin-top:18px!important;color:#c0c9bd!important;font-size:15px!important;text-align:center!important}

/* Technology and Purpose heroes — real product imagery. */
.technology-page-hero,.purpose-page-hero{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(360px,.78fr)!important;
  align-items:center!important;gap:clamp(28px,5vw,86px)!important;
  min-height:clamp(650px,76vh,840px)!important;
  padding:clamp(150px,15vh,195px) max(28px,calc((100vw - 1440px)/2)) 84px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 78% 50%,rgba(123,175,61,.18),transparent 28%),
    linear-gradient(145deg,#020403,#071008 58%,#0f1b12)!important;
}
.technology-page-hero .page-hero-content,.purpose-page-hero .page-hero-content{
  position:relative!important;z-index:3!important;width:100%!important;max-width:820px!important;margin:0!important;text-align:left!important;
}
.technology-page-hero .display-title,.purpose-page-hero .display-title{
  max-width:10.8ch!important;margin:15px 0 0!important;font-size:clamp(58px,7vw,108px)!important;line-height:.92!important;
}
.technology-page-hero .page-hero-content p,.purpose-page-hero .page-hero-content p{
  max-width:680px!important;margin:28px 0 0!important;color:#b9c4b6!important;font-size:clamp(18px,1.6vw,24px)!important;line-height:1.5!important;
}
.page-hero-product{
  position:relative!important;z-index:3!important;display:grid!important;place-items:center!important;
  width:100%!important;height:clamp(390px,49vw,620px)!important;
  border:1px solid rgba(123,175,61,.18)!important;border-radius:42px!important;
  background:linear-gradient(145deg,rgba(17,30,19,.86),rgba(4,9,6,.74))!important;
  box-shadow:0 38px 95px rgba(0,0,0,.35)!important;
}
.page-hero-product::before{
  position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(168,213,111,.22),transparent 65%);filter:blur(12px);content:"";
}
.page-hero-product img{
  position:relative;z-index:2;width:88%;height:84%;object-fit:contain;filter:drop-shadow(0 32px 34px rgba(0,0,0,.48));animation:v56HeroProductFloat 5.8s ease-in-out infinite alternate;
}
.page-hero-product span{
  position:absolute;z-index:3;left:24px;bottom:22px;padding:8px 12px;border:1px solid rgba(168,213,111,.28);border-radius:999px;color:#c9eda0;background:rgba(4,10,6,.72);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
}
@keyframes v56HeroProductFloat{to{transform:translateY(-12px) rotate(-1deg)}}

@media(max-width:1100px){
  .portfolio-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .portfolio-stat:nth-child(2){border-right:0!important}
  .portfolio-stat:nth-child(-n+2){border-bottom:1px solid rgba(123,175,61,.16)!important}
  .technology-page-hero,.purpose-page-hero{grid-template-columns:1fr!important;text-align:center!important;padding:145px 24px 62px!important}
  .technology-page-hero .page-hero-content,.purpose-page-hero .page-hero-content{max-width:840px!important;margin-inline:auto!important;text-align:center!important}
  .technology-page-hero .display-title,.purpose-page-hero .display-title,.technology-page-hero .page-hero-content p,.purpose-page-hero .page-hero-content p{margin-inline:auto!important}
  .page-hero-product{max-width:680px!important;height:460px!important;margin-inline:auto!important}
  .home-closing .actions:has(.home-closing-catalogue){justify-content:center!important}
}
@media(max-width:680px){
  .immersive-3d-stage{cursor:default!important}
  .stage-caption{display:none!important}
  .portfolio-summary{padding:62px 16px 72px!important}
  .portfolio-summary-panel{padding:26px 18px!important;border-radius:26px!important}
  .portfolio-summary-grid{grid-template-columns:1fr!important}
  .portfolio-stat{min-height:170px!important;border-right:0!important;border-bottom:1px solid rgba(123,175,61,.16)!important}
  .portfolio-stat:last-child{border-bottom:0!important}
  .technology-page-hero,.purpose-page-hero{padding:128px 18px 42px!important}
  .technology-page-hero .display-title,.purpose-page-hero .display-title{max-width:100%!important;font-size:clamp(48px,14vw,72px)!important}
  .page-hero-product{height:330px!important;border-radius:28px!important}
  .page-hero-product span{left:16px;bottom:15px;font-size:9px!important}
}

/* ===== V57 realistic lab upgrades ===== */
.lab-fixture-strip{position:relative;z-index:5;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}
.lab-fixture-strip article{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(168,213,111,.18);border-radius:18px;background:linear-gradient(180deg,rgba(9,16,11,.86),rgba(6,10,7,.95));box-shadow:0 14px 26px rgba(0,0,0,.18)}
.lab-fixture-strip img{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(0,0,0,.34))}
.lab-fixture-strip span{display:block;color:#e9f4d8;font-size:12px;font-weight:700;line-height:1.35}
.light-lab-stage{overflow:hidden}
.light-lab-stage::before{position:absolute;inset:14% 8% auto auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 68%);content:"";z-index:1;filter:blur(10px)}
.lab-room-shell::before{position:absolute;inset:auto 4% 2% 4%;height:18%;border-radius:50%;background:radial-gradient(circle,rgba(0,0,0,.18),transparent 70%);content:"";filter:blur(8px)}
.lab-room-shell::after{position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.08),transparent 34%,transparent 66%,rgba(0,0,0,.08));content:"";pointer-events:none}
.lab-back-wall{backdrop-filter:blur(2px)}
.lab-art-frame{overflow:hidden}
.lab-art-core::after{position:absolute;inset:0;background:radial-gradient(circle at 30% 28%,rgba(255,255,255,.45),transparent 35%),linear-gradient(145deg,rgba(255,255,255,.10),transparent 55%);content:""}
.lab-console{box-shadow:0 10px 0 #5a4232,0 24px 38px rgba(0,0,0,.18)}
.lab-scene-card{box-shadow:0 20px 36px rgba(0,0,0,.26)}

.v8-lighting-layers{position:relative;display:grid!important;grid-template-columns:minmax(420px,1.04fr) minmax(340px,.96fr)!important;gap:30px!important;align-items:stretch!important;margin-top:56px!important}
.v8-room-stage{position:relative!important;min-height:580px!important;overflow:hidden!important;padding:28px!important;border:1px solid rgba(168,213,111,.18)!important;border-radius:34px!important;background:radial-gradient(circle at 74% 24%,rgba(123,175,61,.16),transparent 26%),linear-gradient(180deg,#071108 0%,#020503 100%)!important;box-shadow:0 34px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.05)!important}
.v8-room-backdrop{position:absolute;inset:16% 8% 16%;border-radius:28px;background:linear-gradient(180deg,#dbc796 0%,#ecede8 27%,#f4f3ee 67%,#b8894e 67%,#35261b 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.v8-room-wall-panels{position:absolute;inset:0;z-index:1;opacity:.34}.v8-room-wall-panels i{position:absolute;top:20%;bottom:22%;width:12%;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.26),rgba(255,255,255,0))}.v8-room-wall-panels i:nth-child(1){left:14%}.v8-room-wall-panels i:nth-child(2){left:44%}.v8-room-wall-panels i:nth-child(3){right:14%}
.v8-ambient-glow{z-index:1!important;top:18%!important;left:50%!important;width:72%!important;height:56%!important;border-radius:38px!important;background:radial-gradient(circle at 50% 40%,rgba(255,248,223,.40),rgba(201,233,158,.18) 46%,rgba(123,175,61,.04) 70%,transparent 80%)!important;transform:translateX(-50%)!important;filter:blur(6px)!important;transition:opacity .45s ease, transform .55s ease!important}
.v8-beam.task{z-index:2!important;top:9%!important;left:31%!important;width:160px!important;height:420px!important;clip-path:polygon(36% 0,64% 0,100% 100%,0 100%)!important;background:linear-gradient(180deg,rgba(255,249,227,.56),rgba(224,246,176,.10))!important;opacity:.62!important;transform:none!important}
.v8-beam.accent{z-index:2!important;top:14%!important;right:20%!important;left:auto!important;width:140px!important;height:360px!important;clip-path:polygon(32% 0,68% 0,100% 100%,0 100%)!important;background:linear-gradient(180deg,rgba(255,241,204,.48),rgba(168,213,111,.08))!important;opacity:.55!important;transform:none!important}
.v8-room-floor{position:absolute!important;left:12%!important;right:12%!important;bottom:15%!important;height:20%!important;border-radius:24px 24px 46px 46px!important;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.24))!important;z-index:1!important}
.v8-room-rug{position:absolute;left:33%;right:28%;bottom:14%;height:12%;border-radius:999px;background:radial-gradient(circle at center,rgba(168,213,111,.45),rgba(168,213,111,.16) 50%,transparent 72%);filter:blur(1px);z-index:2}
.v8-room-console{position:absolute;left:18%;right:18%;bottom:28%;height:18px;border-radius:999px;background:#241c15;box-shadow:0 10px 0 #5f4736,0 18px 24px rgba(0,0,0,.18);z-index:3}
.v8-room-task-surface{position:absolute;left:16%;bottom:20%;width:20%;height:14%;border-radius:22px 22px 10px 10px;background:linear-gradient(180deg,#dec89d,#ba9662);box-shadow:0 18px 24px rgba(0,0,0,.12);z-index:3}.v8-room-task-surface::before{position:absolute;left:10%;right:10%;top:-20px;height:28px;border-radius:20px 20px 8px 8px;background:linear-gradient(180deg,#ebd8b5,#d6b17d);content:""}
.v8-room-decor{position:absolute;right:14%;bottom:23%;width:12%;height:18%;border-radius:12px 12px 24px 24px;background:linear-gradient(180deg,#4e392b,#2a211b);z-index:3}.v8-room-decor::before,.v8-room-decor::after{position:absolute;left:50%;content:"";transform-origin:bottom center}.v8-room-decor::before{bottom:70%;width:4px;height:54px;border-radius:999px;background:#688f38;box-shadow:12px 8px 0 #7aad42,-10px 10px 0 #95bf5a}.v8-room-decor::after{bottom:64%;width:18px;height:60px;border-radius:60% 60% 0 60%;background:linear-gradient(180deg,#88b952,#4d7129);transform:translateX(-50%) rotate(-10deg)}
.v8-room-object{position:absolute!important;right:25%!important;bottom:19%!important;width:26%!important;height:21%!important;border-radius:18px 18px 8px 8px!important;background:linear-gradient(145deg,#8d6848,#553825)!important;box-shadow:0 18px 35px rgba(0,0,0,.30)!important;z-index:3!important}.v8-room-object::before{position:absolute!important;right:10%!important;bottom:100%!important;width:80%!important;height:62%!important;border-radius:50% 50% 10px 10px!important;background:linear-gradient(180deg,#926d4b,#5e412f)!important;content:""!important}
.v8-room-fixtures{position:absolute;inset:0;z-index:4;pointer-events:none}
.v8-layer-product{position:absolute;display:grid;gap:8px;width:140px;padding:14px;border:1px solid rgba(168,213,111,.18);border-radius:22px;background:linear-gradient(180deg,rgba(8,14,10,.82),rgba(6,10,7,.94));box-shadow:0 24px 42px rgba(0,0,0,.28);backdrop-filter:blur(10px);transition:transform .35s ease,opacity .35s ease,border-color .35s ease}
.v8-layer-product img{width:100%;height:86px;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(0,0,0,.34))}
.v8-layer-product figcaption{color:#e7f5d3;font-size:12px;font-weight:700;line-height:1.35}
.v8-layer-product-ambient{left:5%;top:7%}.v8-layer-product-task{left:7%;bottom:7%}.v8-layer-product-accent{right:5%;bottom:9%}
.v8-room-scene-card{position:absolute;left:28px;right:28px;bottom:24px;z-index:5;padding:16px 18px 18px;border:1px solid rgba(168,213,111,.16);border-radius:22px;background:linear-gradient(180deg,rgba(8,14,10,.82),rgba(5,9,6,.95));backdrop-filter:blur(10px);box-shadow:0 20px 36px rgba(0,0,0,.24)}
.v8-room-scene-card span{display:inline-flex;min-height:26px;padding:0 10px;border-radius:999px;background:rgba(168,213,111,.14);color:#d7ebb7;font-size:10px;font-weight:800;letter-spacing:.08em;align-items:center;text-transform:uppercase}
.v8-room-scene-card strong{display:block;margin-top:10px;color:#fff;font-size:24px;letter-spacing:-.04em}
.v8-room-scene-card p{margin-top:7px;color:rgba(255,255,255,.7);font-size:14px;line-height:1.55}
.v8-lighting-layers[data-active-layer="ambient"] .v8-beam.task,.v8-lighting-layers[data-active-layer="ambient"] .v8-beam.accent{opacity:.08!important}
.v8-lighting-layers[data-active-layer="task"] .v8-ambient-glow,.v8-lighting-layers[data-active-layer="task"] .v8-beam.accent{opacity:.10!important}
.v8-lighting-layers[data-active-layer="accent"] .v8-ambient-glow,.v8-lighting-layers[data-active-layer="accent"] .v8-beam.task{opacity:.10!important}
.v8-lighting-layers[data-active-layer="ambient"] .v8-layer-product:not(.v8-layer-product-ambient),.v8-lighting-layers[data-active-layer="task"] .v8-layer-product:not(.v8-layer-product-task),.v8-lighting-layers[data-active-layer="accent"] .v8-layer-product:not(.v8-layer-product-accent){opacity:.42;transform:scale(.96)}
.v8-lighting-layers[data-active-layer="ambient"] .v8-layer-product-ambient,.v8-lighting-layers[data-active-layer="task"] .v8-layer-product-task,.v8-lighting-layers[data-active-layer="accent"] .v8-layer-product-accent,.v8-lighting-layers[data-active-layer="all"] .v8-layer-product{border-color:rgba(168,213,111,.42);box-shadow:0 28px 48px rgba(0,0,0,.34),0 0 0 1px rgba(168,213,111,.14)}

.v8-lab-stage{border:1px solid rgba(168,213,111,.18)!important;border-radius:34px!important;background:radial-gradient(circle at 70% 24%,rgba(123,175,61,.12),transparent 24%),linear-gradient(180deg,#071108 0%,#020503 100%)!important;box-shadow:0 34px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.05)!important}
.v8-lab-backdrop{position:absolute;inset:12% 8% 14%;border-radius:28px;background:linear-gradient(180deg,#d9c59b 0%,#efefea 22%,#f8f7f2 69%,#c7a269 69%,#3c2a1d 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.v8-lab-wall{inset:20% 13% 18% 15%!important;border-radius:24px!important;background:linear-gradient(180deg,rgba(255,255,255,.74),rgba(240,239,234,.9))!important;border:none!important;box-shadow:0 12px 38px rgba(48,34,18,.14)!important}
.v8-lab-wall-panels{position:absolute;inset:0;z-index:1;opacity:.28}.v8-lab-wall-panels i{position:absolute;top:24%;bottom:20%;width:10%;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,0))}.v8-lab-wall-panels i:first-child{left:18%}.v8-lab-wall-panels i:last-child{right:18%}
.v8-lab-art{right:24%!important;bottom:28%!important;width:44%!important;height:30%!important;border-radius:10px!important;background:linear-gradient(135deg,#6f533b,#8ab24d 56%,#291c13)!important;box-shadow:0 14px 28px rgba(0,0,0,.22)!important}
.v51-optical-product{width:min(38%,270px)!important;height:250px!important;transform:translate(-125px,-92px)!important}
.v51-optical-product-secondary{position:relative;z-index:4;width:min(34%,240px);height:210px;object-fit:contain;filter:drop-shadow(0 22px 28px rgba(0,0,0,.34));transform:translate(155px,-95px) rotate(-10deg)}
.v8-lab-track{position:absolute;z-index:3;top:62px;left:50%;width:280px;height:16px;border-radius:999px;background:linear-gradient(90deg,#101915,#283a28,#0b120d);box-shadow:0 10px 20px rgba(0,0,0,.22);transform:translateX(-50%)}
.v8-lab-beam{top:82px!important;left:43%!important;width:var(--beam-width,210px)!important;height:390px!important;clip-path:polygon(40% 0,60% 0,100% 100%,0 100%)!important;background:linear-gradient(180deg,var(--beam-color,rgba(255,236,181,.72)),rgba(255,255,255,.02))!important;filter:blur(1px) drop-shadow(0 14px 30px rgba(255,248,210,.18))!important;opacity:.7!important;transform:none!important}
.v8-lab-beam-secondary{position:absolute;z-index:2;top:98px;left:57%;width:150px;height:320px;clip-path:polygon(35% 0,65% 0,100% 100%,0 100%);background:linear-gradient(180deg,rgba(219,237,174,.36),rgba(168,213,111,.02));filter:blur(1px);opacity:.56;transform:rotate(2deg)}
.v8-lab-floor-glow{position:absolute;left:32%;right:26%;bottom:14%;height:15%;border-radius:999px;background:radial-gradient(circle at center,rgba(168,213,111,.40),rgba(168,213,111,.10) 52%,transparent 70%);filter:blur(1px);z-index:1}
.v8-lab-gallery-card{position:absolute;left:26px;bottom:24px;z-index:5;width:min(300px,calc(100% - 52px));padding:16px 18px;border:1px solid rgba(168,213,111,.18);border-radius:22px;background:linear-gradient(180deg,rgba(8,14,10,.82),rgba(5,9,6,.94));backdrop-filter:blur(10px);box-shadow:0 20px 36px rgba(0,0,0,.24)}
.v8-lab-gallery-card span{display:inline-flex;min-height:26px;padding:0 10px;border-radius:999px;background:rgba(168,213,111,.14);color:#d7ebb7;font-size:10px;font-weight:800;letter-spacing:.08em;align-items:center;text-transform:uppercase}.v8-lab-gallery-card strong{display:block;margin-top:10px;color:#fff;font-size:22px;letter-spacing:-.04em}.v8-lab-gallery-card p{margin-top:8px;color:rgba(255,255,255,.72);font-size:13px;line-height:1.55}
.v8-lab-controls{border:1px solid rgba(168,213,111,.16)!important;border-radius:28px!important;background:linear-gradient(180deg,rgba(8,14,10,.82),rgba(5,9,6,.95))!important;box-shadow:0 24px 42px rgba(0,0,0,.22)!important}
.v8-control label,.v8-control-note{color:rgba(255,255,255,.82)!important}.v8-control-note{background:rgba(168,213,111,.08)!important;border:1px solid rgba(168,213,111,.14)!important}.v8-control input[type="range"]{accent-color:var(--brand-green)!important}

@media(max-width:1100px){
  .lab-fixture-strip{grid-template-columns:1fr}
  .v8-lighting-layers{grid-template-columns:1fr!important}
  .v8-room-stage{min-height:640px!important}
  .v8-lab-gallery-card{position:absolute;left:20px;right:20px;width:auto}
  .v51-optical-product{transform:translate(-78px,-76px)!important;width:min(44%,240px)!important}
  .v51-optical-product-secondary{transform:translate(102px,-68px) rotate(-10deg);width:min(36%,200px);height:180px}
}
@media(max-width:720px){
  .light-lab-copy .section-title{font-size:clamp(40px,12vw,64px)}
  .light-lab-stage{min-height:760px;padding:20px}
  .lab-room-shell{height:560px}
  .lab-ceiling{width:calc(100% - 48px);top:110px}
  .lab-beam{top:138px;width:108px;height:300px}
  .lab-beam-one{left:7%}.lab-beam-two{left:calc(50% - 54px)}.lab-beam-three{right:7%}
  .lab-art-frame{left:26%;top:42%;width:48%;height:28%}
  .lab-lounge{width:36%;left:6%}
  .lab-side-table{right:12%;width:12%}
  .lab-scene-card{left:18px;right:18px;grid-template-columns:1fr}
  .v8-room-stage{min-height:700px!important;padding:18px!important}
  .v8-layer-product{width:118px;padding:10px}
  .v8-layer-product img{height:72px}
  .v8-layer-product-ambient{left:4%;top:5%}.v8-layer-product-task{left:4%;bottom:17%}.v8-layer-product-accent{right:4%;bottom:18%}
  .v8-room-scene-card{left:18px;right:18px;bottom:18px}
  .v8-room-task-surface{left:8%;width:28%}
  .v8-room-object{right:18%!important;width:31%!important}
  .v8-beam.task{left:21%!important;width:120px!important;height:320px!important}
  .v8-beam.accent{right:10%!important;width:110px!important;height:280px!important}
  .v8-lab-stage{min-height:640px!important}
  .v8-lab-track{top:96px;width:200px;height:12px}
  .v51-optical-product{transform:translate(-56px,-55px)!important;width:min(44%,180px)!important;height:180px!important}
  .v51-optical-product-secondary{transform:translate(68px,-52px) rotate(-8deg);width:min(32%,140px);height:135px}
  .v8-lab-beam{top:128px!important;left:41%!important;width:150px!important;height:270px!important}
  .v8-lab-beam-secondary{top:138px;left:58%;width:105px;height:220px}
  .v8-lab-gallery-card{left:16px;right:16px;bottom:16px}
}
.light-lab-stage,.v8-room-stage,.v8-lab-stage{--v57-shift-x:0px;--v57-shift-y:0px}
.lab-fixture-strip article:nth-child(1),.v8-layer-product-ambient,.v51-optical-product{transform:translate(calc(var(--v57-shift-x) * -.25),calc(var(--v57-shift-y) * -.2))}
.lab-fixture-strip article:nth-child(2),.v8-layer-product-task,.v51-optical-product-secondary{transform:translate(calc(var(--v57-shift-x) * .2),calc(var(--v57-shift-y) * -.16))}
.lab-fixture-strip article:nth-child(3),.v8-layer-product-accent,.v8-lab-gallery-card{transform:translate(calc(var(--v57-shift-x) * .18),calc(var(--v57-shift-y) * .15))}
.lab-art-frame,.v8-room-scene-card,.lab-scene-card{transform:translate(calc(var(--v57-shift-x) * .12),calc(var(--v57-shift-y) * .1))}
.v51-optical-product{transform:translate(calc(-125px + var(--v57-shift-x) * -.25),calc(-92px + var(--v57-shift-y) * -.2)) !important}
.v51-optical-product-secondary{transform:translate(calc(155px + var(--v57-shift-x) * .2),calc(-95px + var(--v57-shift-y) * -.16)) rotate(-10deg)!important}
@media(max-width:1100px){
  .v51-optical-product{transform:translate(calc(-78px + var(--v57-shift-x) * -.22),calc(-76px + var(--v57-shift-y) * -.18)) !important}
  .v51-optical-product-secondary{transform:translate(calc(102px + var(--v57-shift-x) * .18),calc(-68px + var(--v57-shift-y) * -.15)) rotate(-10deg)!important}
}
@media(max-width:720px){
  .v51-optical-product{transform:translate(calc(-56px + var(--v57-shift-x) * -.18),calc(-55px + var(--v57-shift-y) * -.14)) !important}
  .v51-optical-product-secondary{transform:translate(calc(68px + var(--v57-shift-x) * .16),calc(-52px + var(--v57-shift-y) * -.12)) rotate(-8deg)!important}
}

/* ===== V58 single-product optimisation ===== */
.lab-fixture-strip{display:none!important}
.lab-fixture-feature{position:relative;z-index:5;display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;margin-bottom:20px;padding:16px 18px;border:1px solid rgba(168,213,111,.18);border-radius:22px;background:linear-gradient(180deg,rgba(9,16,11,.86),rgba(6,10,7,.95));box-shadow:0 16px 30px rgba(0,0,0,.20)}
.lab-fixture-feature-media{display:flex;align-items:center;justify-content:center;min-height:96px;border-radius:18px;background:radial-gradient(circle at 50% 38%,rgba(168,213,111,.18),transparent 50%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}
.lab-fixture-feature-media img{max-width:100%;max-height:92px;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(0,0,0,.34))}
.lab-fixture-feature-copy span{display:inline-flex;min-height:24px;padding:0 10px;border-radius:999px;background:rgba(168,213,111,.14);color:#d7ebb7;font-size:10px;font-weight:800;letter-spacing:.08em;align-items:center;text-transform:uppercase}
.lab-fixture-feature-copy strong{display:block;margin-top:10px;color:#fff;font-size:22px;letter-spacing:-.03em}
.lab-fixture-feature-copy p{margin-top:8px;color:rgba(255,255,255,.7);font-size:14px;line-height:1.6}

.v8-room-fixtures{position:absolute;inset:0;z-index:4;pointer-events:none}
.v8-layer-product-main{position:absolute;top:8%;right:5%;display:grid;gap:8px;width:168px;padding:14px;border:1px solid rgba(168,213,111,.22);border-radius:24px;background:linear-gradient(180deg,rgba(8,14,10,.86),rgba(5,9,6,.96));box-shadow:0 24px 42px rgba(0,0,0,.28);backdrop-filter:blur(12px);transition:transform .35s ease,opacity .35s ease,border-color .35s ease}
.v8-layer-product-main img{width:100%;height:104px;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(0,0,0,.34))}
.v8-layer-product-main figcaption{color:#e7f5d3;font-size:12px;font-weight:700;line-height:1.4}
.v8-lighting-layers[data-active-layer="ambient"] .v8-layer-product-main{border-color:rgba(168,213,111,.46)}
.v8-lighting-layers[data-active-layer="task"] .v8-layer-product-main{border-color:rgba(255,248,210,.46)}
.v8-lighting-layers[data-active-layer="accent"] .v8-layer-product-main{border-color:rgba(203,167,111,.42)}
.v8-lighting-layers[data-active-layer="all"] .v8-layer-product-main{border-color:rgba(168,213,111,.32)}
.v8-lighting-layers[data-active-layer="ambient"] .v8-ambient-glow{opacity:.95!important}.v8-lighting-layers[data-active-layer="task"] .v8-beam.task{opacity:.82!important}.v8-lighting-layers[data-active-layer="accent"] .v8-beam.accent{opacity:.78!important}

.v51-optical-product-secondary{display:none!important}
.v51-optical-product{width:min(42%,300px)!important;height:280px!important;transform:translate(-110px,-84px)!important}
.v8-lab-track{top:68px!important;width:240px!important}
.v8-lab-beam{left:50%!important;transform:translateX(-50%)!important;width:220px!important;opacity:.75!important}
.v8-lab-gallery-card{max-width:300px}

@media(max-width:1100px){
  .v8-layer-product-main{top:5%;right:5%;width:152px}
  .v8-layer-product-main img{height:94px}
  .v51-optical-product{transform:translate(-74px,-70px)!important;width:min(46%,230px)!important;height:220px!important}
}
@media(max-width:720px){
  .lab-fixture-feature{grid-template-columns:1fr;gap:12px;padding:14px}
  .lab-fixture-feature-media{min-height:84px}
  .lab-fixture-feature-copy strong{font-size:20px}
  .v8-layer-product-main{top:4%;right:4%;width:130px;padding:10px}
  .v8-layer-product-main img{height:76px}
  .v8-room-scene-card{padding-top:14px}
  .v51-optical-product{transform:translate(-54px,-46px)!important;width:min(42%,170px)!important;height:170px!important}
  .v8-lab-track{top:92px!important;width:170px!important;height:10px!important}
  .v8-lab-beam{top:124px!important;width:140px!important;height:250px!important}
}

/* ===== V59 refined single-product scene polish ===== */
.v8-room-stage{
  background:
    radial-gradient(circle at 50% 28%, rgba(186,224,127,.14), transparent 24%),
    linear-gradient(180deg,#071109 0%,#030704 100%)!important;
}
.v8-room-backdrop,
.v8-room-wall-panels,
.v8-room-console,
.v8-room-task-surface,
.v8-room-decor,
.v8-room-object,
.v8-room-rug{display:none!important}
.v8-room-floor{
  left:14%!important;right:14%!important;bottom:12%!important;height:24%!important;
  border-radius:30px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.24))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.v8-room-stage::before,
.v8-room-stage::after{
  content:"";position:absolute;top:54px;width:22px;height:22px;border-radius:999px;z-index:2;
  background:radial-gradient(circle at 50% 45%, rgba(255,248,223,.95), rgba(244,214,136,.68) 38%, rgba(31,41,31,.96) 40%, #101612 100%);
  box-shadow:0 0 0 1px rgba(168,213,111,.18),0 0 30px rgba(245,236,182,.18);
}
.v8-room-stage::before{left:26%}
.v8-room-stage::after{right:26%}
.v8-ambient-glow{
  top:18%!important;left:50%!important;width:70%!important;height:50%!important;
  background:radial-gradient(circle at 50% 46%, rgba(251,244,216,.26), rgba(186,224,127,.14) 42%, rgba(123,175,61,.02) 74%, transparent 80%)!important;
  filter:blur(5px)!important;
}
.v8-beam.task{
  top:76px!important;left:50%!important;width:180px!important;height:350px!important;
  transform:translateX(-128px)!important;
  background:linear-gradient(180deg,rgba(255,249,227,.42),rgba(236,247,193,.03))!important;
  opacity:.78!important;
}
.v8-beam.accent{
  top:78px!important;left:50%!important;right:auto!important;width:156px!important;height:330px!important;
  transform:translateX(12px)!important;
  background:linear-gradient(180deg,rgba(255,243,210,.32),rgba(168,213,111,.02))!important;
  opacity:.56!important;
}
.v8-room-fixtures{display:flex!important;align-items:center!important;justify-content:center!important}
.v8-layer-product-main{
  top:50%!important;left:50%!important;right:auto!important;width:min(52%,320px)!important;
  padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none!important;backdrop-filter:none!important;
  transform:translate(-50%,-38%)!important;
}
.v8-layer-product-main img{width:100%!important;height:auto!important;max-height:288px!important;filter:drop-shadow(0 30px 28px rgba(0,0,0,.48))!important}
.v8-layer-product-main figcaption{display:none!important}
.v8-room-scene-card{
  left:24px!important;right:auto!important;bottom:24px!important;width:min(320px,calc(100% - 48px))!important;
  padding:18px 18px 18px!important;
  border-color:rgba(168,213,111,.2)!important;
  background:linear-gradient(180deg,rgba(8,14,10,.88),rgba(5,9,6,.96))!important;
}
.v8-room-scene-card strong{font-size:22px!important;line-height:1.05!important}
.v8-room-scene-card p{max-width:30ch!important}
.v8-layer-button{min-height:108px!important}

.v8-lab-stage{
  min-height:560px!important;
  background:radial-gradient(circle at 50% 24%, rgba(186,224,127,.14), transparent 20%),linear-gradient(180deg,#071109 0%,#030704 100%)!important;
}
.v8-lab-wall-panels i{opacity:.28!important}
.v8-lab-art{opacity:.18!important}
.v8-lab-stage::after{
  content:"";position:absolute;left:50%;bottom:128px;transform:translateX(-50%);
  width:min(58%,360px);height:180px;border-radius:28px;
  background:linear-gradient(145deg,rgba(168,213,111,.14),rgba(255,255,255,.03));
  border:1px solid rgba(168,213,111,.10);z-index:1;
}
.v8-lab-gallery-card{
  top:24px!important;left:24px!important;bottom:auto!important;display:grid!important;gap:8px!important;
  width:min(320px,calc(100% - 48px))!important;padding:18px 18px 16px!important;
}
.v8-lab-gallery-card span,.v8-lab-gallery-card strong,.v8-lab-gallery-card p{display:block!important}
.v8-lab-gallery-card strong{font-size:24px!important;line-height:1.02!important}
.v8-lab-gallery-card p{max-width:30ch!important}
.v51-optical-product{
  position:absolute!important;top:50%!important;left:50%!important;z-index:4!important;
  width:min(44%,240px)!important;max-width:240px!important;height:auto!important;
  transform:translate(-50%,-20%)!important;
  filter:drop-shadow(0 30px 28px rgba(0,0,0,.46))!important;
}
.v8-lab-track{top:70px!important;left:50%!important;width:180px!important;height:12px!important;transform:translateX(-50%)!important}
.v8-lab-beam{
  top:92px!important;left:50%!important;width:180px!important;height:290px!important;
  transform:translateX(-50%)!important;opacity:.66!important;
  clip-path:polygon(42% 0,58% 0,100% 100%,0 100%)!important;
}
.v8-lab-floor-glow{left:34%!important;right:34%!important;bottom:14%!important;height:14%!important}

@media(max-width:1100px){
  .v8-layer-product-main{width:min(48%,280px)!important}
  .v8-layer-product-main img{max-height:252px!important}
  .v8-beam.task{height:320px!important;transform:translateX(-108px)!important}
  .v8-beam.accent{height:300px!important;transform:translateX(8px)!important}
  .v51-optical-product{width:min(40%,210px)!important;max-width:210px!important}
}
@media(max-width:720px){
  .v8-room-stage{min-height:620px!important}
  .v8-room-stage::before{left:22%}.v8-room-stage::after{right:22%}
  .v8-beam.task{top:82px!important;width:120px!important;height:250px!important;transform:translateX(-84px)!important}
  .v8-beam.accent{top:84px!important;width:104px!important;height:228px!important;transform:translateX(8px)!important}
  .v8-layer-product-main{width:min(58%,220px)!important;transform:translate(-50%,-34%)!important}
  .v8-layer-product-main img{max-height:200px!important}
  .v8-room-scene-card{left:16px!important;bottom:16px!important;width:calc(100% - 32px)!important}
  .v8-room-scene-card strong{font-size:20px!important}
  .v8-lab-stage{min-height:520px!important}
  .v8-lab-gallery-card{top:16px!important;left:16px!important;width:calc(100% - 32px)!important}
  .v8-lab-gallery-card strong{font-size:20px!important}
  .v51-optical-product{width:min(46%,160px)!important;max-width:160px!important;transform:translate(-50%,-14%)!important}
  .v8-lab-track{top:82px!important;width:136px!important;height:10px!important}
  .v8-lab-beam{top:100px!important;width:118px!important;height:220px!important}
  .v8-lab-stage::after{bottom:120px;width:68%;height:132px}
}

/* ==========================================================
   OSTROLUXX V60 — CLEAN SINGLE-PRODUCT INTERACTIVE SCENES
   ========================================================== */

/* HOME — colour temperature lab */
.light-lab-scene{padding:clamp(28px,4vw,62px)!important;background:linear-gradient(160deg,#050906 0%,#0a140c 100%)!important;--lab-light:rgb(250,199,128)}
.v60-cct-stage{position:relative;width:min(100%,820px);min-height:660px;overflow:hidden;border:1px solid rgba(123,175,61,.22);border-radius:34px;background:linear-gradient(180deg,#0a120c 0%,#0d1710 54%,#071009 100%);box-shadow:0 30px 80px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.04)}
.v60-cct-head{position:absolute;z-index:8;top:22px;left:24px;display:grid;gap:4px;padding:11px 14px;border:1px solid rgba(168,213,111,.18);border-radius:16px;background:rgba(5,10,7,.78);backdrop-filter:blur(10px)}
.v60-cct-head span{color:#a8d56f;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.v60-cct-head strong{color:#fff;font-size:15px}
.v60-cct-ceiling{position:absolute;z-index:6;top:0;left:0;right:0;height:150px;border-bottom:1px solid rgba(255,255,255,.04);background:linear-gradient(180deg,#111a13 0%,#0b120d 80%,rgba(11,18,13,.35) 100%)}
.v60-cct-fixture{position:absolute;left:50%;bottom:-34px;width:150px;height:120px;transform:translateX(-50%);display:grid;place-items:center}
.v60-cct-fixture img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 22px rgba(0,0,0,.48))}
.v60-cct-beam{position:absolute;z-index:3;top:112px;left:50%;width:280px;height:385px;transform:translateX(-50%);clip-path:polygon(45% 0,55% 0,100% 100%,0 100%);background:linear-gradient(180deg,color-mix(in srgb,var(--lab-light) 78%,transparent) 0%,color-mix(in srgb,var(--lab-light) 32%,transparent) 48%,transparent 100%);opacity:.58;filter:blur(1px);transition:background .28s linear,opacity .28s linear}
.v60-cct-room{position:absolute;z-index:2;left:7%;right:7%;top:175px;bottom:78px;overflow:hidden;border-radius:24px;background:linear-gradient(180deg,#d9d4ca 0%,#ebe8e0 66%,#7b654f 66%,#3b2e25 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 24px 60px rgba(0,0,0,.24)}
.v60-cct-wall{position:absolute;inset:0 0 34%;background:linear-gradient(110deg,rgba(255,255,255,.16),transparent 38%),linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.02))}
.v60-cct-art{position:absolute;top:22%;left:50%;width:28%;height:30%;transform:translateX(-50%);border:10px solid #392c25;background:linear-gradient(135deg,#7a5c48,#89b14d 56%,#453126);box-shadow:0 12px 24px rgba(0,0,0,.18)}
.v60-cct-console{position:absolute;left:20%;right:20%;bottom:24%;height:15px;border-radius:999px;background:#5b4435;box-shadow:0 9px 0 #7b5c47,0 18px 28px rgba(0,0,0,.18)}
.v60-cct-chair{position:absolute;left:12%;bottom:14%;width:24%;height:24%;border-radius:48% 48% 18px 18px;background:linear-gradient(180deg,#6b5b50,#3d342f);box-shadow:0 16px 26px rgba(0,0,0,.22)}
.v60-cct-table{position:absolute;right:14%;bottom:16%;width:12%;height:16%;border-radius:8px 8px 18px 18px;background:linear-gradient(180deg,#8c6b4e,#4d392c);box-shadow:0 16px 24px rgba(0,0,0,.18)}
.v60-cct-floor-glow{position:absolute;left:25%;right:25%;bottom:6%;height:20%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--lab-light) 46%,transparent) 0%,color-mix(in srgb,var(--lab-light) 12%,transparent) 46%,transparent 72%);filter:blur(8px);transition:background .28s linear}
.v60-cct-status{position:absolute;z-index:8;left:24px;right:24px;bottom:20px;display:grid;grid-template-columns:1fr 1.2fr;gap:12px}
.v60-cct-status>div{min-width:0;padding:12px 14px;border:1px solid rgba(168,213,111,.18);border-radius:16px;background:rgba(5,10,7,.86);backdrop-filter:blur(10px)}
.v60-cct-status span{display:block;color:#a8d56f;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.v60-cct-status strong{display:block;margin-top:3px;color:#fff;font-size:16px;line-height:1.2;white-space:normal}

/* HOME — lighting layers */
.v60-lighting-layers{grid-template-columns:minmax(480px,1.08fr) minmax(360px,.92fr)!important;gap:32px!important;align-items:stretch!important}
.v60-layer-stage{position:relative;min-height:620px;overflow:hidden;border:1px solid rgba(123,175,61,.24);border-radius:34px;background:linear-gradient(180deg,#061008 0%,#0b150d 58%,#050906 100%);box-shadow:0 30px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04)}
.v60-layer-head{position:absolute;z-index:9;top:24px;left:24px;width:min(330px,calc(100% - 48px));padding:16px 17px;border:1px solid rgba(168,213,111,.18);border-radius:18px;background:rgba(5,10,7,.84);backdrop-filter:blur(10px)}
.v60-layer-head span{display:inline-flex;min-height:24px;padding:0 9px;align-items:center;border-radius:999px;background:rgba(123,175,61,.14);color:#bce587;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.v60-layer-head strong{display:block;margin-top:9px;color:#fff;font-size:23px;line-height:1.02;letter-spacing:-.035em}.v60-layer-head p{margin-top:8px;color:rgba(240,246,237,.72);font-size:13px;line-height:1.5}
.v60-layer-ceiling{position:absolute;z-index:7;top:0;left:0;right:0;height:155px;background:linear-gradient(180deg,#101a12 0%,#0a120c 78%,rgba(10,18,12,.2) 100%);border-bottom:1px solid rgba(255,255,255,.04)}
.v60-layer-fixture{position:absolute;left:64%;bottom:-38px;width:150px;height:122px;transform:translateX(-50%)}
.v60-layer-fixture img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 22px rgba(0,0,0,.48))}
.v60-layer-beam{position:absolute;z-index:4;top:115px;left:64%;height:365px;transform:translateX(-50%);clip-path:polygon(45% 0,55% 0,100% 100%,0 100%);transition:opacity .35s ease,width .35s ease,background .35s ease}
.v60-layer-ambient{width:390px;background:linear-gradient(180deg,rgba(241,236,207,.24),rgba(168,213,111,.08) 48%,transparent);opacity:.5}.v60-layer-task{width:195px;background:linear-gradient(180deg,rgba(255,249,226,.48),rgba(232,245,190,.06) 62%,transparent);opacity:.55}.v60-layer-accent{width:120px;transform:translateX(-12%) rotate(-8deg);background:linear-gradient(180deg,rgba(255,229,173,.38),rgba(168,213,111,.04) 62%,transparent);opacity:.5}
.v60-layer-beam:not(.active){opacity:.05!important}
.v60-layer-room{position:absolute;z-index:2;left:8%;right:8%;top:178px;bottom:72px;overflow:hidden;border-radius:24px;background:linear-gradient(180deg,#d8d1c3 0%,#ece9e1 66%,#8a735c 66%,#493a2f 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 24px 60px rgba(0,0,0,.24)}
.v60-layer-wall{position:absolute;inset:0 0 34%;background:linear-gradient(125deg,rgba(255,255,255,.22),transparent 42%),linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.02))}.v60-layer-frame{position:absolute;left:42%;top:18%;width:25%;height:28%;border:9px solid #3d3028;background:linear-gradient(135deg,#6d513f,#8ab34f 56%,#473328);box-shadow:0 12px 22px rgba(0,0,0,.16)}
.v60-layer-console{position:absolute;left:29%;right:18%;bottom:25%;height:14px;border-radius:999px;background:#5c4536;box-shadow:0 9px 0 #7a5c47,0 18px 26px rgba(0,0,0,.16)}
.v60-layer-chair{position:absolute;left:10%;bottom:14%;width:24%;height:25%;border-radius:48% 48% 18px 18px;background:linear-gradient(180deg,#6d5e54,#3c3430)}.v60-layer-side-table{position:absolute;right:11%;bottom:17%;width:11%;height:15%;border-radius:8px 8px 18px 18px;background:linear-gradient(180deg,#8b6a4e,#4d392c)}
.v60-layer-floor-glow{position:absolute;left:28%;right:20%;bottom:5%;height:22%;border-radius:50%;background:radial-gradient(circle,rgba(170,211,111,.26),rgba(170,211,111,.06) 48%,transparent 72%);filter:blur(8px)}
.v60-layer-key{position:absolute;z-index:9;right:18px;bottom:18px;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.v60-layer-key span{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid rgba(168,213,111,.14);border-radius:999px;background:rgba(5,10,7,.78);color:#dbe8d1;font-size:10px;font-weight:700}.v60-layer-key i{width:7px;height:7px;border-radius:50%}.v60-layer-key .ambient{background:#d6e8b4}.v60-layer-key .task{background:#fff4c8}.v60-layer-key .accent{background:#d9a95b}
.v60-lighting-layers .v8-layer-controls{display:grid!important;gap:12px!important;align-content:center!important}.v60-lighting-layers .v8-layer-button{min-height:96px!important;border-radius:20px!important;background:linear-gradient(180deg,rgba(12,23,14,.9),rgba(8,16,10,.96))!important;border-color:rgba(123,175,61,.28)!important}.v60-lighting-layers .v8-layer-button.active{background:linear-gradient(180deg,rgba(34,58,31,.96),rgba(13,27,16,.98))!important;box-shadow:0 16px 30px rgba(0,0,0,.22),inset 0 0 0 1px rgba(168,213,111,.22)!important}

/* TECHNOLOGY — optical lab */
.v60-optical-stage{position:relative;min-height:590px;overflow:hidden;border:1px solid rgba(123,175,61,.22);border-radius:34px;background:linear-gradient(180deg,#071109 0%,#0b150d 58%,#050906 100%);box-shadow:0 30px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04)}
.v60-optical-info{position:absolute;z-index:9;top:24px;left:24px;width:min(330px,calc(100% - 48px));padding:16px 18px;border:1px solid rgba(168,213,111,.18);border-radius:18px;background:rgba(5,10,7,.84);backdrop-filter:blur(10px)}
.v60-optical-info span{color:#a8d56f;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.v60-optical-info strong{display:block;margin-top:8px;color:#fff;font-size:22px;line-height:1.05;letter-spacing:-.035em}.v60-optical-info p{margin-top:8px;color:rgba(240,246,237,.72);font-size:13px;line-height:1.5}
.v60-optical-track{position:absolute;z-index:8;top:88px;left:64%;width:210px;height:12px;transform:translateX(-50%);border-radius:999px;background:linear-gradient(90deg,#101915,#2a402b,#0b120d);box-shadow:0 10px 18px rgba(0,0,0,.26)}
.v60-optical-fixture{position:absolute;z-index:8;top:88px;left:64%;width:148px;height:125px;transform:translate(-50%,0)}.v60-optical-fixture img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 22px rgba(0,0,0,.48))}
.v60-optical-beam{position:absolute!important;z-index:4!important;top:174px!important;left:64%!important;width:var(--beam-width,154px)!important;height:300px!important;transform:translateX(-50%)!important;clip-path:polygon(44% 0,56% 0,100% 100%,0 100%)!important;background:linear-gradient(180deg,var(--beam-color,rgba(255,236,181,.72)),rgba(255,255,255,.02))!important;filter:blur(1px)!important;opacity:.64!important;transition:width .25s ease,background .25s ease!important}
.v60-optical-target{position:absolute;z-index:3;left:64%;bottom:76px;width:min(55%,360px);height:170px;transform:translateX(-50%);display:flex;align-items:flex-end;justify-content:center;padding-bottom:18px;border:1px solid rgba(168,213,111,.14);border-radius:28px;background:linear-gradient(145deg,rgba(168,213,111,.12),rgba(255,255,255,.025));box-shadow:0 20px 45px rgba(0,0,0,.22)}.v60-optical-target span{padding:7px 10px;border-radius:999px;background:rgba(5,10,7,.75);color:#dcead2;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.v60-optical-floor-glow{position:absolute;z-index:2;left:64%;bottom:42px;width:380px;height:90px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--technology-cct,rgb(255,220,165)) 28%,transparent),transparent 70%);filter:blur(9px)}
.v8-lab-controls{align-self:stretch!important;padding:30px!important}.v8-control{padding:18px 0!important}.v8-control:first-child{padding-top:0!important}.v8-control label{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important}.v8-control output{color:#a8d56f!important;font-weight:800!important}.v8-control input[type="range"]{width:100%!important;margin-top:14px!important}

@media(max-width:1100px){
  .v60-lighting-layers{grid-template-columns:1fr!important}.v60-layer-stage{min-height:610px}.v60-layer-controls{max-width:none}.v60-optical-stage{min-height:560px}
}
@media(max-width:760px){
  .light-lab-scene{padding:18px!important}.v60-cct-stage{min-height:560px;border-radius:26px}.v60-cct-head{top:15px;left:15px;right:15px}.v60-cct-ceiling{height:130px}.v60-cct-fixture{width:120px;height:100px;bottom:-28px}.v60-cct-beam{top:100px;width:210px;height:310px}.v60-cct-room{top:150px;left:4%;right:4%;bottom:92px}.v60-cct-art{width:34%;height:26%}.v60-cct-chair{width:28%}.v60-cct-status{left:14px;right:14px;bottom:14px;grid-template-columns:1fr 1fr}.v60-cct-status strong{font-size:14px}
  .v60-layer-stage{min-height:600px;border-radius:26px}.v60-layer-head{top:15px;left:15px;right:15px;width:auto}.v60-layer-ceiling{height:132px}.v60-layer-fixture{left:68%;width:118px;height:100px;bottom:-30px}.v60-layer-beam{top:101px;left:68%;height:285px}.v60-layer-ambient{width:270px}.v60-layer-task{width:145px}.v60-layer-accent{width:92px}.v60-layer-room{top:155px;left:4%;right:4%;bottom:58px}.v60-layer-key{left:12px;right:12px;bottom:10px;justify-content:center}.v60-layer-key span{font-size:9px}.v60-lighting-layers .v8-layer-button{min-height:88px!important}
  .v60-optical-stage{min-height:520px;border-radius:26px}.v60-optical-info{top:15px;left:15px;right:15px;width:auto}.v60-optical-track{top:144px;left:50%;width:160px}.v60-optical-fixture{top:142px;left:50%;width:118px;height:100px}.v60-optical-beam{top:215px!important;left:50%!important;height:225px!important}.v60-optical-target{left:50%;bottom:52px;width:72%;height:125px}.v60-optical-floor-glow{left:50%;bottom:28px;width:270px}
  .v8-lab-controls{padding:22px!important}
}


/* ===== V63 lighting guide real-image update ===== */
.lighting-guide-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(320px,.98fr);align-items:center;gap:42px;position:relative;overflow:hidden}
.lighting-guide-hero .page-hero-content{max-width:720px;position:relative;z-index:2}
.lighting-guide-hero-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.lighting-guide-hero-points span{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;background:rgba(168,213,111,.12);border:1px solid rgba(168,213,111,.18);color:#d8ebb9;font-size:12px;font-weight:700;letter-spacing:.02em}
.lighting-guide-hero-visual{position:relative;z-index:2;display:flex;justify-content:center}
.lighting-guide-hero-card{width:min(100%,500px);padding:26px;border-radius:34px;border:1px solid rgba(168,213,111,.18);background:linear-gradient(180deg,rgba(9,16,11,.92),rgba(5,9,6,.98));box-shadow:0 34px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05)}
.lighting-guide-card-badge{display:inline-flex;min-height:28px;align-items:center;padding:0 12px;border-radius:999px;background:rgba(168,213,111,.12);color:#d8ebb9;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.lighting-guide-hero-card img{display:block;width:min(100%,380px);margin:20px auto 18px;filter:drop-shadow(0 18px 30px rgba(0,0,0,.32))}
.lighting-guide-card-meta strong{display:block;color:#fff;font-size:26px;letter-spacing:-.03em}
.lighting-guide-card-meta p{margin-top:8px;color:rgba(255,255,255,.74);font-size:14px;line-height:1.7}
.lighting-guide-lab-stage{position:relative!important;min-height:600px!important;overflow:hidden!important;border:1px solid rgba(168,213,111,.18)!important;border-radius:34px!important;background:radial-gradient(circle at 22% 16%,rgba(168,213,111,.16),transparent 22%),radial-gradient(circle at 78% 14%,rgba(255,255,255,.08),transparent 20%),linear-gradient(180deg,#071108 0%,#020503 100%)!important;box-shadow:0 34px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.05)!important}
.lighting-guide-lab-stage .v8-lab-backdrop{position:absolute;inset:12% 7% 10%;border-radius:28px;background:linear-gradient(180deg,#d9c59b 0%,#efefea 22%,#f8f7f2 70%,#c7a269 70%,#3c2a1d 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.lighting-guide-lab-stage .v8-lab-wall{position:absolute;inset:20% 12% 18% 14%!important;border-radius:24px!important;background:linear-gradient(180deg,rgba(255,255,255,.80),rgba(240,239,234,.92))!important;border:none!important;box-shadow:0 12px 38px rgba(48,34,18,.14)!important}
.lighting-guide-lab-stage .v8-lab-wall-panels{position:absolute;inset:0;z-index:1;opacity:.28}.lighting-guide-lab-stage .v8-lab-wall-panels i{position:absolute;top:24%;bottom:20%;width:10%;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,0))}.lighting-guide-lab-stage .v8-lab-wall-panels i:first-child{left:18%}.lighting-guide-lab-stage .v8-lab-wall-panels i:last-child{right:18%}
.lighting-guide-lab-stage .v8-lab-art{position:absolute;right:22%!important;bottom:28%!important;width:40%!important;height:28%!important;border-radius:10px!important;background:linear-gradient(135deg,#6f533b,#8ab24d 56%,#291c13)!important;box-shadow:0 14px 28px rgba(0,0,0,.22)!important}
.lighting-guide-lab-stage .v8-lab-track{position:absolute;z-index:3;top:58px;left:50%;width:220px;height:14px;border-radius:999px;background:linear-gradient(90deg,#101915,#283a28,#0b120d);box-shadow:0 10px 20px rgba(0,0,0,.22);transform:translateX(-50%)}
.lighting-guide-lab-stage .v8-lab-beam{position:absolute;z-index:2;top:84px!important;left:50%!important;width:var(--beam-width,210px)!important;height:370px!important;clip-path:polygon(40% 0,60% 0,100% 100%,0 100%)!important;background:linear-gradient(180deg,var(--beam-color,rgba(255,236,181,.76)),rgba(255,255,255,.02))!important;filter:blur(1px) drop-shadow(0 14px 30px rgba(255,248,210,.18))!important;opacity:.78!important;transform:translateX(-50%)!important}
.lighting-guide-lab-stage .v8-lab-beam-secondary{position:absolute;z-index:2;top:106px;left:59%;width:142px;height:294px;clip-path:polygon(35% 0,65% 0,100% 100%,0 100%);background:linear-gradient(180deg,rgba(219,237,174,.36),rgba(168,213,111,.02));filter:blur(1px);opacity:.54;transform:rotate(2deg)}
.lighting-guide-lab-stage .v8-lab-floor-glow{position:absolute;left:30%;right:26%;bottom:13%;height:15%;border-radius:999px;background:radial-gradient(circle at center,rgba(168,213,111,.40),rgba(168,213,111,.10) 52%,transparent 70%);filter:blur(1px);z-index:1}
.lighting-guide-lab-product{position:absolute;left:50%;top:98px;z-index:4;width:min(340px,58%);transform:translateX(-50%)}
.lighting-guide-lab-product img{display:block;width:100%;filter:drop-shadow(0 20px 28px rgba(0,0,0,.34))}
.lighting-guide-lab-stage .v8-lab-gallery-card{position:absolute;left:22px;bottom:20px;z-index:5;width:min(320px,calc(100% - 44px));padding:16px 18px;border:1px solid rgba(168,213,111,.18);border-radius:22px;background:linear-gradient(180deg,rgba(8,14,10,.82),rgba(5,9,6,.94));backdrop-filter:blur(10px);box-shadow:0 20px 36px rgba(0,0,0,.24)}
.lighting-guide-lab-stage .v8-lab-gallery-card span{display:inline-flex;min-height:26px;padding:0 10px;border-radius:999px;background:rgba(168,213,111,.14);color:#d7ebb7;font-size:10px;font-weight:800;letter-spacing:.08em;align-items:center;text-transform:uppercase}.lighting-guide-lab-stage .v8-lab-gallery-card strong{display:block;margin-top:10px;color:#fff;font-size:22px;letter-spacing:-.04em}.lighting-guide-lab-stage .v8-lab-gallery-card p{margin-top:8px;color:rgba(255,255,255,.72);font-size:13px;line-height:1.55}
.v8-section-head .section-copy{margin-top:10px;max-width:60ch;color:rgba(255,255,255,.72)}
@media (max-width: 980px){.lighting-guide-hero{grid-template-columns:1fr;gap:28px}.lighting-guide-hero-visual{order:2}.lighting-guide-lab-stage{min-height:560px!important}.lighting-guide-lab-product{width:min(280px,64%)}.lighting-guide-lab-stage .v8-lab-track{top:72px;width:176px;height:12px}.lighting-guide-lab-stage .v8-lab-beam{top:96px!important;height:300px!important;width:170px!important}.lighting-guide-lab-stage .v8-lab-beam-secondary{top:110px;width:110px;height:238px;left:62%}.lighting-guide-lab-stage .v8-lab-art{right:20%!important;width:44%!important;height:24%!important}}
@media (max-width: 640px){.lighting-guide-hero-card{padding:18px;border-radius:24px}.lighting-guide-card-meta strong{font-size:22px}.lighting-guide-lab-stage{min-height:500px!important}.lighting-guide-lab-product{top:112px;width:min(230px,66%)}.lighting-guide-lab-stage .v8-lab-track{top:82px;width:128px;height:10px}.lighting-guide-lab-stage .v8-lab-beam{top:100px!important;width:118px!important;height:232px!important}.lighting-guide-lab-stage .v8-lab-beam-secondary{top:112px;width:86px;height:190px;left:63%}.lighting-guide-lab-stage .v8-lab-gallery-card{left:16px;right:16px;width:auto;bottom:16px}.lighting-guide-lab-stage .v8-lab-gallery-card strong{font-size:20px}}


/* ==========================================================
   OSTROLUXX V65 — HOME INTERACTIVE LIGHT LAB VISIBILITY FIX
   ========================================================== */
.light-lab-section{grid-template-columns:minmax(360px,.92fr) minmax(520px,1.08fr)!important;align-items:stretch!important;background:radial-gradient(circle at 76% 24%,rgba(123,175,61,.12),transparent 24%),linear-gradient(145deg,#020403 0%,#061008 52%,#020403 100%)!important}
.light-lab-copy{min-height:0!important;max-width:760px!important;padding-top:84px!important;padding-bottom:84px!important}
.light-lab-copy .section-title{max-width:11ch!important}
.light-lab-scene{display:flex!important;align-items:center!important;justify-content:center!important;padding:40px clamp(20px,4vw,38px)!important;min-height:860px!important;background:radial-gradient(circle at 84% 26%,rgba(123,175,61,.12),transparent 24%),linear-gradient(180deg,#060b07 0%,#08100a 100%)!important}
.v60-cct-stage{position:relative!important;width:min(100%,820px)!important;min-height:700px!important;margin-inline:auto!important;overflow:hidden!important;border:1px solid rgba(123,175,61,.26)!important;border-radius:34px!important;background:linear-gradient(180deg,#08110a 0%,#0b150d 55%,#060d08 100%)!important;box-shadow:0 28px 80px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.04)!important;isolation:isolate}
.v60-cct-stage::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 16%,color-mix(in srgb,var(--lab-light) 18%,transparent) 0%,transparent 36%);opacity:.9;z-index:1}
.v60-cct-stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 18%,transparent 84%,rgba(0,0,0,.18));z-index:9}
.v60-cct-head{top:24px!important;left:24px!important;z-index:10!important}
.v60-cct-ceiling{z-index:5!important;height:158px!important;background:linear-gradient(180deg,#131d14 0%,#0b120d 78%,rgba(11,18,13,.2) 100%)!important}
.v60-cct-fixture{z-index:8!important;left:50%!important;bottom:-36px!important;width:156px!important;height:126px!important}
.v60-cct-fixture img{filter:drop-shadow(0 18px 22px rgba(0,0,0,.48)) drop-shadow(0 0 30px rgba(255,255,255,.06))!important}
.v60-cct-beam{z-index:4!important;top:116px!important;left:50%!important;width:320px!important;height:430px!important;transform:translateX(-50%)!important;clip-path:polygon(44% 0,56% 0,100% 100%,0 100%)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--lab-light) 72%,transparent) 0%,color-mix(in srgb,var(--lab-light) 26%,transparent) 46%,transparent 100%)!important;opacity:.72!important;filter:blur(1.5px)!important;transition:background .25s linear,opacity .25s linear!important}
.v60-cct-room{z-index:3!important;left:6%!important;right:6%!important;top:176px!important;bottom:82px!important;overflow:hidden!important;border-radius:28px!important;background:linear-gradient(180deg,#ddc69c 0%,#c89f63 20%,#f1ece0 20%,#ede8de 72%,#d8b991 72%,#8c6632 100%)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 22px 56px rgba(0,0,0,.26)!important}
.v60-cct-room::before{content:"";position:absolute;inset:0 0 30%;background:linear-gradient(120deg,rgba(255,255,255,.25),transparent 36%),linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,0));opacity:.95}
.v60-cct-room::after{content:"";position:absolute;left:18%;right:18%;bottom:8%;height:20%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--lab-light) 28%,transparent) 0%,color-mix(in srgb,var(--lab-light) 8%,transparent) 44%,transparent 72%);filter:blur(12px);opacity:.95}
.v60-cct-wall{display:none!important}
.v60-cct-art{top:24%!important;left:50%!important;width:30%!important;height:28%!important;transform:translateX(-50%)!important;border:10px solid #4a382c!important;border-radius:3px!important;background:linear-gradient(135deg,rgba(99,74,56,.92),rgba(147,189,81,.95) 55%,rgba(84,59,45,.95))!important;box-shadow:0 14px 28px rgba(0,0,0,.2)!important}
.v60-cct-console{left:20%!important;right:20%!important;bottom:24%!important;height:16px!important;border-radius:999px!important;background:#6a4c39!important;box-shadow:0 12px 0 #8a684e,0 18px 30px rgba(0,0,0,.18)!important}
.v60-cct-chair{left:10%!important;bottom:14%!important;width:26%!important;height:24%!important;border-radius:46% 46% 20px 20px!important;background:linear-gradient(180deg,#6f6058,#3d342f)!important;box-shadow:0 18px 28px rgba(0,0,0,.18)!important}
.v60-cct-table{right:12%!important;bottom:17%!important;width:12%!important;height:15%!important;border-radius:10px 10px 18px 18px!important;background:linear-gradient(180deg,#997351,#583f31)!important;box-shadow:0 14px 22px rgba(0,0,0,.16)!important}
.v60-cct-floor-glow{left:26%!important;right:26%!important;bottom:6%!important;height:18%!important;border-radius:50%!important;background:radial-gradient(circle,color-mix(in srgb,var(--lab-light) 40%,transparent) 0%,color-mix(in srgb,var(--lab-light) 14%,transparent) 42%,transparent 72%)!important;filter:blur(10px)!important;opacity:.95!important}
.v60-cct-status{z-index:10!important;left:22px!important;right:22px!important;bottom:18px!important;grid-template-columns:1fr 1.2fr!important}
.v60-cct-status>div{background:rgba(5,10,7,.86)!important;border-color:rgba(168,213,111,.18)!important}
#lightLabScene[data-mood="warm"] .v60-cct-room{background:linear-gradient(180deg,#e0c99d 0%,#cb9f63 20%,#f2ece1 20%,#efe8da 72%,#d9b380 72%,#8d6530 100%)!important}
#lightLabScene[data-mood="neutral"] .v60-cct-room{background:linear-gradient(180deg,#d6c8a6 0%,#c5b28e 20%,#efede7 20%,#f3f2ee 72%,#d7c09e 72%,#836a3f 100%)!important}
#lightLabScene[data-mood="cool"] .v60-cct-room{background:linear-gradient(180deg,#c8d3db 0%,#b6c5ce 20%,#edf2f5 20%,#f5f8fb 72%,#b7c7d0 72%,#63707a 100%)!important}
#lightLabScene[data-mood="warm"] .v60-cct-art{background:linear-gradient(135deg,rgba(120,82,55,.95),rgba(165,199,96,.95) 55%,rgba(86,58,44,.96))!important}
#lightLabScene[data-mood="neutral"] .v60-cct-art{background:linear-gradient(135deg,rgba(111,92,69,.92),rgba(186,200,115,.95) 55%,rgba(86,67,49,.96))!important}
#lightLabScene[data-mood="cool"] .v60-cct-art{background:linear-gradient(135deg,rgba(95,109,119,.9),rgba(130,193,231,.95) 55%,rgba(73,84,95,.96))!important}
@media(max-width:1180px){.light-lab-section{grid-template-columns:1fr!important}.light-lab-copy{padding:76px 24px 34px!important}.light-lab-scene{min-height:740px!important;padding:16px 24px 78px!important}.v60-cct-stage{min-height:620px!important}}
@media(max-width:760px){.light-lab-copy .section-title{font-size:clamp(42px,14vw,70px)!important}.light-lab-scene{min-height:620px!important;padding:12px 18px 70px!important}.v60-cct-stage{min-height:560px!important;border-radius:28px!important}.v60-cct-head{top:16px!important;left:16px!important;right:16px!important}.v60-cct-ceiling{height:130px!important}.v60-cct-fixture{width:122px!important;height:100px!important;bottom:-28px!important}.v60-cct-beam{top:102px!important;width:220px!important;height:320px!important}.v60-cct-room{top:150px!important;left:4%!important;right:4%!important;bottom:92px!important}.v60-cct-art{width:38%!important;height:24%!important}.v60-cct-chair{width:30%!important}.v60-cct-status{grid-template-columns:1fr 1fr!important;left:14px!important;right:14px!important;bottom:14px!important}}
@media(max-width:520px){.light-lab-copy{padding:68px 18px 30px!important}.light-lab-scene{padding:10px 16px 66px!important;min-height:590px!important}.v60-cct-stage{min-height:520px!important}.v60-cct-head strong{font-size:14px!important}.v60-cct-status strong{font-size:14px!important}.v60-cct-status span{font-size:8px!important}}


/* ==========================================================
   OSTROLUXX V66 — INTERACTIVE LIGHT LAB HARD FIX
   Fresh scene markup to avoid old style conflicts
   ========================================================== */
.light-lab-section{grid-template-columns:minmax(360px,.92fr) minmax(560px,1.08fr)!important;align-items:stretch!important;background:radial-gradient(circle at 78% 24%,rgba(123,175,61,.10),transparent 24%),linear-gradient(145deg,#030603 0%,#09120b 60%,#040704 100%)!important}
.light-lab-copy{padding-top:86px!important;padding-bottom:86px!important;max-width:760px!important}
.light-lab-scene{display:flex!important;align-items:center!important;justify-content:center!important;padding:34px clamp(18px,3vw,34px)!important;min-height:850px!important;background:radial-gradient(circle at 84% 22%,rgba(123,175,61,.12),transparent 22%),linear-gradient(180deg,#050905 0%,#071008 100%)!important}
.v60-cct-stage,.v60-cct-head,.v60-cct-ceiling,.v60-cct-room,.v60-cct-status,.v60-cct-beam{display:none!important}
.v66-lab-stage{position:relative;width:min(100%,840px);min-height:710px;border-radius:36px;overflow:hidden;border:1px solid rgba(152,207,86,.20);background:linear-gradient(180deg,#09110a 0%,#0c150d 56%,#081009 100%);box-shadow:0 34px 84px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.04)}
.v66-lab-stage::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 8%,color-mix(in srgb,var(--lab-light) 14%,transparent) 0%,transparent 28%),linear-gradient(180deg,rgba(255,255,255,.03),transparent 18%,transparent 82%,rgba(0,0,0,.16));z-index:20}
.v66-lab-head{position:absolute;top:22px;left:22px;right:22px;display:flex;flex-direction:column;gap:4px;z-index:21}
.v66-lab-head span{display:inline-flex;align-self:flex-start;padding:8px 14px;border-radius:999px;background:rgba(17,30,20,.86);border:1px solid rgba(152,207,86,.18);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#e9f4d8}
.v66-lab-head strong{font-size:22px;line-height:1.2;color:#f5f9ef}
.v66-lab-fixture-wrap{position:absolute;z-index:18;left:50%;top:78px;transform:translateX(-50%);width:240px;height:180px}
.v66-lab-fixture{position:absolute;left:50%;top:0;transform:translateX(-50%);width:210px;height:165px;display:grid;place-items:end center}
.v66-lab-fixture img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 26px rgba(0,0,0,.48)) drop-shadow(0 0 24px rgba(255,255,255,.08))}
.v66-lab-beam{position:absolute;left:50%;top:118px;transform:translateX(-50%);width:340px;height:420px;clip-path:polygon(46% 0,54% 0,100% 100%,0 100%);background:linear-gradient(180deg,color-mix(in srgb,var(--lab-light) 76%,transparent) 0%,color-mix(in srgb,var(--lab-light) 26%,transparent) 48%,transparent 100%);opacity:.70;filter:blur(1.6px)}
.v66-lab-room{position:absolute;left:7%;right:7%;top:204px;bottom:88px;border-radius:32px;overflow:hidden;background:linear-gradient(180deg,#e9dfcb 0%,#f6f1e5 58%,#dcc09a 58%,#8b6437 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 22px 64px rgba(0,0,0,.30)}
.v66-lab-upperglow{position:absolute;left:8%;right:8%;top:0;height:56%;background:linear-gradient(120deg,rgba(255,255,255,.26),transparent 36%),radial-gradient(circle at 50% 0,color-mix(in srgb,var(--lab-light) 14%,transparent) 0%,transparent 72%)}
.v66-lab-art{position:absolute;left:50%;top:18%;transform:translateX(-50%);width:28%;height:26%;border:10px solid #4f3b2e;border-radius:4px;background:linear-gradient(135deg,rgba(103,73,53,.92),rgba(151,195,85,.95) 52%,rgba(88,61,46,.94));box-shadow:0 12px 24px rgba(0,0,0,.18)}
.v66-lab-shelf{position:absolute;left:22%;right:22%;bottom:24%;height:14px;border-radius:999px;background:#674a37;box-shadow:0 10px 0 #87654a,0 16px 24px rgba(0,0,0,.16)}
.v66-lab-sofa{position:absolute;left:9%;bottom:12%;width:28%;height:22%;border-radius:46% 46% 20px 20px;background:linear-gradient(180deg,#716059,#3e3530);box-shadow:0 18px 24px rgba(0,0,0,.16)}
.v66-lab-side{position:absolute;right:12%;bottom:15%;width:14%;height:15%;border-radius:12px 12px 20px 20px;background:linear-gradient(180deg,#9f7853,#5a4032);box-shadow:0 14px 20px rgba(0,0,0,.14)}
.v66-lab-floor{position:absolute;left:0;right:0;bottom:0;height:36%;background:linear-gradient(180deg,rgba(122,95,61,0) 0%,rgba(110,80,49,.18) 12%,rgba(96,69,43,.5) 100%)}
.v66-lab-floorglow{position:absolute;left:22%;right:22%;bottom:7%;height:18%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--lab-light) 42%,transparent) 0%,color-mix(in srgb,var(--lab-light) 12%,transparent) 40%,transparent 72%);filter:blur(14px);opacity:.95}
.v66-lab-status{position:absolute;z-index:21;left:20px;right:20px;bottom:18px;display:grid;grid-template-columns:1fr 1.2fr;gap:12px}
.v66-lab-status>div{padding:14px 16px;border-radius:18px;background:rgba(6,12,8,.86);border:1px solid rgba(152,207,86,.16);backdrop-filter:blur(6px)}
.v66-lab-status span{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#91a08f}
.v66-lab-status strong{display:block;margin-top:5px;font-size:18px;color:#f7fbf1}
#lightLabScene[data-mood="warm"] .v66-lab-room{background:linear-gradient(180deg,#ead9b7 0%,#f7eedf 58%,#dfba82 58%,#926734 100%)}
#lightLabScene[data-mood="warm"] .v66-lab-art{background:linear-gradient(135deg,rgba(128,85,52,.95),rgba(163,196,89,.95) 52%,rgba(95,61,43,.95))}
#lightLabScene[data-mood="neutral"] .v66-lab-room{background:linear-gradient(180deg,#d8d3c6 0%,#f0efe9 58%,#ccb694 58%,#7e6540 100%)}
#lightLabScene[data-mood="neutral"] .v66-lab-art{background:linear-gradient(135deg,rgba(109,93,74,.95),rgba(171,190,106,.95) 52%,rgba(87,71,55,.95))}
#lightLabScene[data-mood="cool"] .v66-lab-room{background:linear-gradient(180deg,#cfd8df 0%,#f3f7fa 58%,#b7c8d1 58%,#61717a 100%)}
#lightLabScene[data-mood="cool"] .v66-lab-art{background:linear-gradient(135deg,rgba(92,108,118,.95),rgba(125,190,228,.95) 52%,rgba(72,86,97,.95))}
@media(max-width:1180px){.light-lab-section{grid-template-columns:1fr!important}.light-lab-copy{padding:78px 24px 34px!important}.light-lab-scene{min-height:760px!important;padding:18px 24px 76px!important}.v66-lab-stage{min-height:630px}}
@media(max-width:760px){.light-lab-copy .section-title{font-size:clamp(42px,14vw,68px)!important}.light-lab-copy{padding:72px 20px 28px!important}.light-lab-scene{min-height:640px!important;padding:14px 18px 70px!important}.v66-lab-stage{min-height:560px;border-radius:28px}.v66-lab-head{top:16px;left:16px;right:16px}.v66-lab-head strong{font-size:18px}.v66-lab-fixture-wrap{top:56px;width:190px;height:150px}.v66-lab-fixture{width:168px;height:134px}.v66-lab-beam{top:92px;width:230px;height:290px}.v66-lab-room{top:160px;left:4%;right:4%;bottom:86px}.v66-lab-art{width:38%;height:24%}.v66-lab-sofa{width:30%}.v66-lab-status{left:14px;right:14px;bottom:14px;grid-template-columns:1fr 1fr}.v66-lab-status strong{font-size:14px}}
@media(max-width:520px){.light-lab-scene{min-height:600px!important;padding:10px 16px 66px!important}.v66-lab-stage{min-height:520px}.v66-lab-head span{font-size:10px;padding:7px 11px}.v66-lab-head strong{font-size:16px}.v66-lab-fixture-wrap{top:54px;width:170px;height:135px}.v66-lab-fixture{width:148px;height:118px}.v66-lab-beam{top:88px;width:200px;height:250px}.v66-lab-status span{font-size:9px}.v66-lab-status strong{font-size:13px}}


/* V67 merge: preserve V62 Lighting Layers clarity fixes */
/* ===== V62 LIGHTING LAYERS clarity fix ===== */
.v60-layer-stage{
  background:
    radial-gradient(circle at 72% 18%, rgba(123,175,61,.12), transparent 22%),
    linear-gradient(180deg,#071109 0%,#050907 55%,#030604 100%) !important;
}
.v60-layer-head{
  background:linear-gradient(180deg, rgba(5,11,8,.88), rgba(6,13,9,.72)) !important;
  border-color:rgba(168,213,111,.20) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
}
.v60-layer-ceiling{
  height:150px !important;
  background:linear-gradient(180deg,#0d1710 0%,#08100b 72%,rgba(8,16,11,.18) 100%) !important;
}
.v60-layer-fixture{
  left:58% !important;
  width:164px !important;
  height:132px !important;
  bottom:-42px !important;
  z-index:8 !important;
}
.v60-layer-fixture img{
  filter:drop-shadow(0 26px 28px rgba(0,0,0,.44)) !important;
}
.v60-layer-room{
  left:5% !important;
  right:5% !important;
  top:170px !important;
  bottom:76px !important;
  border-radius:28px !important;
  background:
    linear-gradient(180deg,#e8e4d9 0%,#f1ede5 52%,#a3886d 52%,#5a4639 100%) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.42), 0 30px 60px rgba(0,0,0,.22) !important;
}
.v60-layer-room::before{
  content:"";position:absolute;left:50%;top:6%;width:56%;height:56%;transform:translateX(-50%);
  background:radial-gradient(circle at 50% 28%, rgba(255,250,232,.68), rgba(221,244,177,.32) 32%, rgba(181,224,103,.10) 56%, transparent 72%);
  filter:blur(10px);opacity:.9;pointer-events:none;
}
.v60-layer-room::after{
  content:"";position:absolute;left:28%;right:18%;bottom:4%;height:23%;
  background:radial-gradient(circle at 50% 46%, rgba(183,221,111,.34), rgba(183,221,111,.12) 38%, rgba(255,247,210,.06) 56%, transparent 74%);
  filter:blur(16px);border-radius:50%;pointer-events:none;
}
.v60-layer-wall{background:linear-gradient(145deg, rgba(255,255,255,.26), transparent 34%), linear-gradient(180deg, rgba(255,255,255,.20), rgba(255,255,255,.05)) !important}
.v60-layer-frame{
  left:42% !important; top:17% !important; width:22% !important; height:26% !important;
  border:10px solid #4a3a30 !important;
  background:
    linear-gradient(135deg, rgba(91,68,50,.92) 0%, rgba(131,182,78,.88) 50%, rgba(75,55,41,.90) 100%) !important;
  box-shadow:0 16px 28px rgba(0,0,0,.18), 0 0 0 10px rgba(255,255,255,.06) inset, 0 0 38px rgba(163,214,104,.26) !important;
}
.v60-layer-console{
  left:26% !important; right:16% !important; bottom:26% !important; height:15px !important;
  background:#654d3c !important; box-shadow:0 10px 0 #85654d, 0 18px 28px rgba(0,0,0,.18) !important;
}
.v60-layer-chair{
  left:10% !important; bottom:13% !important; width:24% !important; height:25% !important;
  background:linear-gradient(180deg,#7b6c61,#4a403a) !important;
  box-shadow:inset 0 8px 14px rgba(255,255,255,.06), 0 18px 28px rgba(0,0,0,.12);
}
.v60-layer-side-table{
  right:11% !important; bottom:16% !important; width:12% !important; height:16% !important;
  background:linear-gradient(180deg,#a07c5e,#644938) !important;
  box-shadow:0 12px 24px rgba(0,0,0,.12);
}
.v60-layer-floor-glow{
  left:27% !important; right:17% !important; bottom:4% !important; height:24% !important;
  background:radial-gradient(circle, rgba(198,230,127,.36), rgba(198,230,127,.10) 38%, rgba(255,247,210,.06) 52%, transparent 72%) !important;
  filter:blur(10px) !important; opacity:1 !important;
}
.v60-layer-beam{
  top:108px !important; left:58% !important; transform:translateX(-50%) !important;
  mix-blend-mode:screen;
}
.v60-layer-ambient{
  width:340px !important; height:400px !important;
  clip-path:polygon(43% 0,57% 0,100% 100%,0 100%) !important;
  background:linear-gradient(180deg, rgba(255,250,229,.46), rgba(215,240,166,.14) 60%, rgba(215,240,166,.02) 100%) !important;
  opacity:.78 !important;
}
.v60-layer-task{
  width:168px !important; height:320px !important;
  clip-path:polygon(46% 0,54% 0,86% 100%,14% 100%) !important;
  background:linear-gradient(180deg, rgba(255,247,213,.72), rgba(208,236,141,.18) 62%, rgba(208,236,141,.02) 100%) !important;
  opacity:.84 !important;
}
.v60-layer-accent{
  width:96px !important; height:270px !important;
  left:67% !important;
  clip-path:polygon(48% 0,52% 0,75% 100%,25% 100%) !important;
  background:linear-gradient(180deg, rgba(255,240,196,.62), rgba(194,226,126,.14) 64%, rgba(194,226,126,.02) 100%) !important;
  opacity:.68 !important;
}
.v60-layer-key{
  left:16px !important; right:16px !important; bottom:14px !important; justify-content:center !important;
}
.v60-lighting-layers[data-active-layer="all"] .v60-layer-ambient,
.v60-lighting-layers[data-active-layer="all"] .v60-layer-task,
.v60-lighting-layers[data-active-layer="all"] .v60-layer-accent{opacity:1 !important}
.v60-lighting-layers[data-active-layer="ambient"] .v60-layer-ambient{opacity:.94 !important}
.v60-lighting-layers[data-active-layer="ambient"] .v60-layer-task,
.v60-lighting-layers[data-active-layer="ambient"] .v60-layer-accent{opacity:.12 !important}
.v60-lighting-layers[data-active-layer="task"] .v60-layer-task{opacity:.9 !important}
.v60-lighting-layers[data-active-layer="task"] .v60-layer-ambient,
.v60-lighting-layers[data-active-layer="task"] .v60-layer-accent{opacity:.12 !important}
.v60-lighting-layers[data-active-layer="accent"] .v60-layer-accent{opacity:.86 !important}
.v60-lighting-layers[data-active-layer="accent"] .v60-layer-ambient,
.v60-lighting-layers[data-active-layer="accent"] .v60-layer-task{opacity:.10 !important}

@media (max-width: 900px){
  .v60-layer-stage{min-height:670px !important}
  .v60-layer-fixture{left:50% !important;width:146px !important;height:116px !important}
  .v60-layer-room{top:182px !important;left:4% !important;right:4% !important;bottom:74px !important}
  .v60-layer-frame{left:37% !important; width:28% !important; height:24% !important}
  .v60-layer-beam{left:50% !important;top:110px !important}
  .v60-layer-ambient{width:290px !important;height:355px !important}
  .v60-layer-task{width:150px !important;height:288px !important}
  .v60-layer-accent{left:60% !important;width:86px !important;height:238px !important}
}
@media (max-width: 640px){
  .v60-layer-stage{min-height:620px !important}
  .v60-layer-head strong{font-size:20px !important}
  .v60-layer-head p{font-size:12px !important}
  .v60-layer-room{top:172px !important; bottom:66px !important}
  .v60-layer-chair{width:26% !important;height:20% !important}
  .v60-layer-side-table{width:14% !important;height:12% !important}
  .v60-layer-frame{left:35% !important; width:32% !important; top:18% !important}
  .v60-layer-ambient{width:240px !important;height:300px !important}
  .v60-layer-task{width:124px !important;height:248px !important}
  .v60-layer-accent{left:60% !important;width:74px !important;height:206px !important}
}


/* V67 merge: preserve V64 product-dialog scrollbar theme */
/* ===== V64 Ostroluxx product-dialog scrollbar theme ===== */
.product-dialog-v5 .dialog-content,
.product-dialog-v5 .dialog-visual-panel,
.product-dialog-v5 .dialog-layout-v5{
  scrollbar-width:thin !important;
  scrollbar-color:#7baf3d #08100a !important;
  scrollbar-gutter:stable;
}

.product-dialog-v5 .dialog-content::-webkit-scrollbar,
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar,
.product-dialog-v5 .dialog-layout-v5::-webkit-scrollbar{
  width:10px !important;
  height:10px !important;
}

.product-dialog-v5 .dialog-content::-webkit-scrollbar-track,
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-track,
.product-dialog-v5 .dialog-layout-v5::-webkit-scrollbar-track{
  border-left:1px solid rgba(123,175,61,.10) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#071009,#0b150d) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.015) !important;
}

.product-dialog-v5 .dialog-content::-webkit-scrollbar-thumb,
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-thumb,
.product-dialog-v5 .dialog-layout-v5::-webkit-scrollbar-thumb{
  min-height:54px !important;
  border:2px solid #08100a !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#a8d56f 0%,#88bd46 38%,#7baf3d 100%) !important;
  box-shadow:0 0 0 1px rgba(168,213,111,.18),0 3px 12px rgba(123,175,61,.22) !important;
}

.product-dialog-v5 .dialog-content::-webkit-scrollbar-thumb:hover,
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-thumb:hover,
.product-dialog-v5 .dialog-layout-v5::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#b8df83,#98ca59 45%,#83b943) !important;
}

.product-dialog-v5 .dialog-content::-webkit-scrollbar-thumb:active,
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-thumb:active,
.product-dialog-v5 .dialog-layout-v5::-webkit-scrollbar-thumb:active{
  background:#a8d56f !important;
}

/* Remove the bright Windows/Chromium scrollbar arrow buttons. */
.product-dialog-v5 .dialog-content::-webkit-scrollbar-button,
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-button,
.product-dialog-v5 .dialog-layout-v5::-webkit-scrollbar-button{
  width:0 !important;
  height:0 !important;
  display:none !important;
  background:transparent !important;
}

.product-dialog-v5 .dialog-content::-webkit-scrollbar-corner,
.product-dialog-v5 .dialog-visual-panel::-webkit-scrollbar-corner,
.product-dialog-v5 .dialog-layout-v5::-webkit-scrollbar-corner{
  background:#08100a !important;
}

/* Keep the scrollbar visually inside the black/green modal on Windows. */
.product-dialog-v5 .dialog-content{
  border-right:1px solid rgba(123,175,61,.08);
}

@media(max-width:760px){
  .product-dialog-v5 .dialog-layout-v5{
    scrollbar-width:thin !important;
    scrollbar-color:#7baf3d #08100a !important;
  }
  .product-dialog-v5 .dialog-layout-v5::-webkit-scrollbar{width:8px !important}
}


/* =====================================================================
   OSTROLUXX V67 — GLOBAL RESPONSIVE + LIGHT LAB FINAL QA LAYER
   ===================================================================== */
:root{
  --v67-page-pad:clamp(18px,3vw,42px);
  --v67-content:1440px;
}
html{overflow-x:clip!important}
body{max-width:100vw!important;overflow-x:clip!important}
main,section,header,footer,nav,dialog{max-width:100vw}
img,video,canvas,svg{max-width:100%;height:auto}
button,a,input,select,textarea{min-width:0}

/* One predictable header system across every page */
.site-header{height:var(--nav-height,84px)!important}
.nav-shell{
  display:grid!important;
  grid-template-columns:minmax(150px,220px) minmax(0,1fr) auto!important;
  width:min(calc(100% - 2*var(--v67-page-pad)),var(--v67-content))!important;
  gap:clamp(14px,2vw,34px)!important;
}
.brand-logo{width:100%!important;max-width:220px!important;height:auto!important}
.nav-list{gap:clamp(12px,1.55vw,26px)!important}
.nav-list a{font-size:clamp(12px,.92vw,15px)!important}
.header-cta{min-height:46px!important;padding-inline:clamp(16px,1.7vw,25px)!important}

/* Typography that cannot overflow narrow screens */
.display-title{font-size:clamp(52px,7vw,112px)!important;line-height:.94!important;overflow-wrap:break-word}
.section-title{font-size:clamp(40px,5vw,76px)!important;line-height:.98!important;overflow-wrap:break-word}
.body-large{font-size:clamp(17px,1.45vw,22px)!important}
.page-hero-content,.home-hero-copy,.light-lab-copy,.split-copy,.contact-hero-copy{min-width:0!important}

/* ---------------- V67 Interactive Light Lab ---------------- */
.light-lab-section{
  display:grid!important;
  grid-template-columns:minmax(360px,.88fr) minmax(560px,1.12fr)!important;
  align-items:stretch!important;
  min-height:0!important;
  height:auto!important;
  background:
    radial-gradient(circle at 78% 22%,rgba(123,175,61,.11),transparent 22%),
    linear-gradient(145deg,#030603 0%,#071008 58%,#030603 100%)!important;
}
.light-lab-copy{
  align-self:center!important;
  width:100%!important;
  max-width:740px!important;
  padding:clamp(72px,7vw,118px) clamp(28px,4.2vw,78px)!important;
}
.light-lab-copy .section-title{max-width:9.5ch!important}
.light-lab-scene{
  /* Never hide the interactive preview behind scroll-reveal state */
  opacity:1!important;
  transform:none!important;
  visibility:visible!important;
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:820px!important;
  padding:38px clamp(20px,3vw,38px)!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 24%,rgba(162,209,99,.10),transparent 26%),
    linear-gradient(180deg,#050a06 0%,#08100a 100%)!important;
}
.v66-lab-stage{
  position:relative!important;
  width:min(100%,800px)!important;
  height:690px!important;
  min-height:0!important;
  margin:auto!important;
  overflow:hidden!important;
  border:1px solid rgba(123,175,61,.22)!important;
  border-radius:32px!important;
  background:linear-gradient(180deg,#09110a 0%,#0c150d 56%,#071008 100%)!important;
  box-shadow:0 30px 78px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.04)!important;
  isolation:isolate!important;
}
.v66-lab-head{
  position:absolute!important;z-index:30!important;top:20px!important;left:20px!important;right:20px!important;
  display:flex!important;flex-direction:column!important;gap:5px!important;
}
.v66-lab-head span{
  display:inline-flex!important;align-self:flex-start!important;align-items:center!important;
  min-height:28px!important;padding:0 11px!important;border-radius:999px!important;
  background:rgba(123,175,61,.13)!important;border:1px solid rgba(168,213,111,.18)!important;
  color:#dcefc0!important;font-size:10px!important;font-weight:800!important;letter-spacing:.09em!important;text-transform:uppercase!important;
}
.v66-lab-head strong{color:#fff!important;font-size:20px!important;line-height:1.2!important}
.v66-lab-fixture-wrap{
  position:absolute!important;z-index:24!important;top:74px!important;left:50%!important;
  width:190px!important;height:160px!important;transform:translateX(-50%)!important;
}
.v66-lab-fixture{
  position:absolute!important;z-index:25!important;top:0!important;left:50%!important;
  display:grid!important;place-items:center!important;width:176px!important;height:140px!important;
  transform:translateX(-50%)!important;
}
.v66-lab-fixture img{
  display:block!important;width:100%!important;height:100%!important;max-width:176px!important;max-height:140px!important;
  object-fit:contain!important;object-position:center!important;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.48))!important;
}
.v66-lab-beam{
  position:absolute!important;z-index:10!important;top:112px!important;left:50%!important;
  width:270px!important;height:390px!important;transform:translateX(-50%)!important;
  clip-path:polygon(46% 0,54% 0,100% 100%,0 100%)!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--lab-light,#ffdba1) 74%,transparent),color-mix(in srgb,var(--lab-light,#ffdba1) 23%,transparent) 52%,transparent)!important;
  opacity:.68!important;filter:blur(1.2px)!important;pointer-events:none!important;
}
.v66-lab-room{
  position:absolute!important;z-index:8!important;left:6%!important;right:6%!important;top:188px!important;bottom:88px!important;
  overflow:hidden!important;border-radius:28px!important;
  background:linear-gradient(180deg,#ead9b7 0%,#f7eee1 58%,#dcb786 58%,#8d6538 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 20px 54px rgba(0,0,0,.28)!important;
}
.v66-lab-upperglow{position:absolute!important;inset:0 0 36%!important;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--lab-light,#ffdba1) 28%,transparent),transparent 62%)!important}
.v66-lab-art{position:absolute!important;left:50%!important;top:18%!important;width:28%!important;height:27%!important;transform:translateX(-50%)!important;border:9px solid #4b392d!important;border-radius:3px!important;background:linear-gradient(135deg,#74513a,#93bc57 52%,#4f382b)!important;box-shadow:0 12px 24px rgba(0,0,0,.18)!important}
.v66-lab-shelf{position:absolute!important;left:21%!important;right:21%!important;bottom:23%!important;height:14px!important;border-radius:999px!important;background:#6c4d39!important;box-shadow:0 10px 0 #87664c,0 15px 24px rgba(0,0,0,.16)!important}
.v66-lab-sofa{position:absolute!important;left:9%!important;bottom:11%!important;width:27%!important;height:22%!important;border-radius:46% 46% 20px 20px!important;background:linear-gradient(180deg,#71635b,#403630)!important}
.v66-lab-side{position:absolute!important;right:11%!important;bottom:14%!important;width:13%!important;height:15%!important;border-radius:12px 12px 18px 18px!important;background:linear-gradient(180deg,#9b7655,#5c4132)!important}
.v66-lab-floor{position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:35%!important;background:linear-gradient(180deg,transparent,rgba(96,68,43,.42))!important}
.v66-lab-floorglow{position:absolute!important;left:20%!important;right:20%!important;bottom:6%!important;height:19%!important;border-radius:50%!important;background:radial-gradient(circle,color-mix(in srgb,var(--lab-light,#ffdba1) 42%,transparent),color-mix(in srgb,var(--lab-light,#ffdba1) 11%,transparent) 44%,transparent 72%)!important;filter:blur(12px)!important}
.v66-lab-status{
  position:absolute!important;z-index:30!important;left:18px!important;right:18px!important;bottom:16px!important;
  display:grid!important;grid-template-columns:1fr 1.25fr!important;gap:10px!important;
}
.v66-lab-status>div{padding:12px 14px!important;border:1px solid rgba(123,175,61,.17)!important;border-radius:16px!important;background:rgba(5,11,7,.88)!important;backdrop-filter:blur(8px)!important}
.v66-lab-status span{display:block!important;color:#91a08f!important;font-size:9px!important;font-weight:800!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.v66-lab-status strong{display:block!important;margin-top:4px!important;color:#fff!important;font-size:15px!important;line-height:1.2!important}

/* Make common two-column / card layouts resilient */
.split,.contact-layout,.content-section .split,.download-grid,.guide-grid,.support-grid,.v8-lab,.v8-lighting-layers{min-width:0!important}
.split>* ,.contact-layout>* ,.download-grid>* ,.guide-grid>* ,.support-grid>* ,.v8-lab>* ,.v8-lighting-layers>*{min-width:0!important}
.product-grid,.product-model-grid,.catalog-grid,.value-grid,.tech-grid,.purpose-grid,.projects-list,.resource-card-grid{min-width:0!important}
.product-card,.catalog-card,.value-card,.tech-card,.purpose-card,.resource-card{min-width:0!important}

/* Tables and data panels: never create horizontal page overflow */
.table-wrap,.product-table-wrap,.spec-table-wrap,.dialog-spec-table-wrap{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
table{max-width:100%;border-collapse:collapse}
.product-tech-table,.spec-table,.dialog-spec-table{width:100%!important;table-layout:fixed!important}
.product-tech-table th,.product-tech-table td,.spec-table th,.spec-table td,.dialog-spec-table th,.dialog-spec-table td{overflow-wrap:anywhere!important;word-break:normal!important}

/* Product dialog / modal safe area */
.product-dialog-v5{max-width:100vw!important;max-height:100dvh!important}
.product-dialog-v5 .dialog-shell,.product-dialog-v5 .dialog-layout-v5{max-width:100%!important;min-width:0!important}
.product-dialog-v5 img{max-width:100%!important;object-fit:contain!important}

/* Forms */
.form-row,.contact-workspace-grid{min-width:0!important}
.field input,.field select,.field textarea{max-width:100%!important}

/* Utility / footer */
.site-footer,.footer-main,.footer-bottom{max-width:100vw!important}
.footer-main>*{min-width:0!important}

@media(max-width:1200px){
  .main-nav,.header-cta{display:none!important}
  .menu-toggle{display:inline-flex!important}
  .nav-shell{grid-template-columns:minmax(150px,200px) auto!important}
  .light-lab-section{grid-template-columns:1fr!important}
  .light-lab-copy{max-width:900px!important;padding:74px var(--v67-page-pad) 34px!important}
  .light-lab-copy .section-title{max-width:12ch!important}
  .light-lab-scene{min-height:760px!important;padding:20px var(--v67-page-pad) 72px!important}
  .v66-lab-stage{height:630px!important;width:min(100%,840px)!important}
  .immersive-3d-section,.contact-workspace-grid,.v8-lab{grid-template-columns:1fr!important}
  .page-hero,.products-hero,.contact-hero{min-height:auto!important}
}

@media(max-width:900px){
  :root{--nav-height:76px}
  .container{width:min(calc(100% - 36px),var(--max))!important}
  .site-logo{max-width:185px!important}
  .page-hero,.products-hero,.contact-hero{padding-top:calc(var(--nav-height) + 52px)!important;padding-inline:20px!important}
  .display-title{font-size:clamp(46px,10vw,76px)!important}
  .section-title{font-size:clamp(38px,8vw,62px)!important}
  .featured-product-grid,.showcase-grid,.project-grid,.application-grid,.about-product-band{grid-template-columns:1fr!important}
  .resource-list-item{grid-template-columns:48px minmax(0,1fr)!important}
  .resource-list-item>a{grid-column:2!important;justify-self:start!important}
  .form-row{grid-template-columns:1fr!important}
  .footer-main{grid-template-columns:1fr 1fr!important}
  .footer-brand{grid-column:1/-1!important}
}

@media(max-width:680px){
  :root{--v67-page-pad:18px}
  .container{width:calc(100% - 32px)!important}
  .site-logo{max-width:164px!important}
  .home-hero{min-height:720px!important;padding:128px 18px 70px!important}
  .home-hero h1,.display-title{font-size:clamp(44px,15vw,66px)!important}
  .section-title{font-size:clamp(36px,12vw,52px)!important}
  .actions{flex-direction:column!important;align-items:stretch!important}
  .actions .button{width:100%!important;justify-content:center!important}
  .light-lab-copy{padding:64px 18px 26px!important}
  .lab-highlights{grid-template-columns:1fr!important}
  .lab-control{margin-top:28px!important}
  .lab-presets{grid-template-columns:1fr!important}
  .light-lab-scene{min-height:590px!important;padding:10px 14px 62px!important}
  .v66-lab-stage{height:510px!important;border-radius:24px!important}
  .v66-lab-head{top:14px!important;left:14px!important;right:14px!important}
  .v66-lab-head strong{font-size:15px!important}
  .v66-lab-fixture-wrap{top:50px!important;width:150px!important;height:124px!important}
  .v66-lab-fixture{width:136px!important;height:108px!important}
  .v66-lab-fixture img{max-width:136px!important;max-height:108px!important}
  .v66-lab-beam{top:84px!important;width:190px!important;height:248px!important}
  .v66-lab-room{top:140px!important;left:4%!important;right:4%!important;bottom:76px!important;border-radius:20px!important}
  .v66-lab-art{width:38%!important;height:24%!important;border-width:6px!important}
  .v66-lab-sofa{width:30%!important}
  .v66-lab-side{width:15%!important}
  .v66-lab-status{left:10px!important;right:10px!important;bottom:10px!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
  .v66-lab-status>div{padding:9px 10px!important;border-radius:12px!important}
  .v66-lab-status strong{font-size:12px!important}
  .immersive-3d-stage{min-height:500px!important}
  .card-scroller{scroll-padding-inline:18px!important}
  .product-tile{min-width:min(84vw,360px)!important}
  .footer-main{grid-template-columns:1fr!important}
  .footer-brand{grid-column:auto!important}
  .dialog-actions,.dialog-actions-secondary{grid-template-columns:1fr!important}
  .product-dialog-v5 .dialog-content{padding-inline:14px!important}
}

@media(max-width:430px){
  .nav-shell{width:calc(100% - 28px)!important}
  .site-logo{max-width:150px!important}
  .page-hero,.products-hero,.contact-hero{padding-inline:16px!important}
  .home-hero{padding-inline:16px!important}
  .display-title{font-size:clamp(40px,14vw,58px)!important}
  .section-title{font-size:clamp(34px,11.5vw,48px)!important}
  .button{min-height:52px!important}
  .v66-lab-stage{height:490px!important}
  .v66-lab-room{top:136px!important;bottom:72px!important}
  .v66-lab-beam{height:232px!important}
  .resource-list-item{grid-template-columns:1fr!important}
  .resource-list-item>a{grid-column:1!important}
}


/* V67 CCT mood colours must override the generic room fill. */
#lightLabScene[data-mood="warm"] .v66-lab-room{background:linear-gradient(180deg,#ead9b7 0%,#f7eee1 58%,#dcb786 58%,#8d6538 100%)!important}
#lightLabScene[data-mood="warm"] .v66-lab-art{background:linear-gradient(135deg,#7e5738,#a4c763 52%,#5d3f2e)!important}
#lightLabScene[data-mood="neutral"] .v66-lab-room{background:linear-gradient(180deg,#d9d4c8 0%,#f1f0eb 58%,#cbb796 58%,#806941 100%)!important}
#lightLabScene[data-mood="neutral"] .v66-lab-art{background:linear-gradient(135deg,#6f604b,#afb97a 52%,#594b3b)!important}
#lightLabScene[data-mood="cool"] .v66-lab-room{background:linear-gradient(180deg,#ccd7df 0%,#f1f6f9 58%,#b8c8d1 58%,#62727b 100%)!important}
#lightLabScene[data-mood="cool"] .v66-lab-art{background:linear-gradient(135deg,#5f707c,#83c1e4 52%,#4d5d68)!important}

/* Short laptop screens: keep content visible without oversized fixed-height scenes. */
@media (min-width:901px) and (max-height:760px){
  .home-hero{min-height:720px!important}
  .light-lab-copy{padding-top:64px!important;padding-bottom:64px!important}
  .light-lab-scene{min-height:700px!important;padding-top:24px!important;padding-bottom:24px!important}
  .v66-lab-stage{height:610px!important}
  .page-hero{min-height:620px!important}
}

/* Large ultrawide screens: stop layouts from stretching too far apart. */
@media (min-width:1700px){
  .light-lab-section,.immersive-3d-section,.home-closing,.content-section>.split{max-width:1920px!important;margin-inline:auto!important}
  .light-lab-copy{padding-left:max(72px,calc((100vw - 1680px)/2))!important}
}

/* ==========================================================
   OSTROLUXX V68 — REAL LIGHTING LAYERS + 2-STEP CONTACT FORM
   ========================================================== */
.v68-layer-real-room{
  position:absolute!important;
  z-index:2!important;
  left:6%!important;
  right:6%!important;
  top:176px!important;
  bottom:72px!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:#0b110d!important;
  box-shadow:0 30px 60px rgba(0,0,0,.30),inset 0 0 0 1px rgba(255,255,255,.08)!important;
}
.v68-layer-real-room>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  transform:scale(1.015)!important;
  filter:saturate(.92) contrast(1.02) brightness(.92)!important;
}
.v68-layer-room-tint{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(4,9,6,.06),transparent 34%,rgba(4,9,6,.08)),
    radial-gradient(circle at 50% 42%,rgba(168,213,111,.07),transparent 48%);
  transition:background .35s ease,opacity .35s ease;
}
.v68-layer-real-room .v60-layer-floor-glow{
  z-index:3!important;
  left:23%!important;
  right:20%!important;
  bottom:1%!important;
  height:26%!important;
  opacity:.86!important;
  background:radial-gradient(circle,rgba(185,225,118,.30),rgba(185,225,118,.08) 46%,transparent 72%)!important;
  filter:blur(13px)!important;
  mix-blend-mode:screen;
}
.v60-layer-stage .v60-layer-beam{z-index:5!important;mix-blend-mode:screen!important}
.v60-lighting-layers[data-active-layer="ambient"] .v68-layer-room-tint{background:radial-gradient(circle at 50% 36%,rgba(201,229,157,.12),transparent 58%),linear-gradient(180deg,rgba(6,12,8,.02),rgba(6,12,8,.08))}
.v60-lighting-layers[data-active-layer="task"] .v68-layer-room-tint{background:radial-gradient(circle at 56% 46%,rgba(255,246,207,.14),transparent 34%),linear-gradient(180deg,rgba(6,12,8,.02),rgba(6,12,8,.08))}
.v60-lighting-layers[data-active-layer="accent"] .v68-layer-room-tint{background:radial-gradient(circle at 54% 34%,rgba(210,225,137,.14),transparent 26%),linear-gradient(180deg,rgba(6,12,8,.04),rgba(6,12,8,.10))}

/* Contact page — two-step form polish */
.contact-form-pro .form-step-divider{
  margin:30px 0 22px;
  padding-top:24px;
  border-top:1px solid rgba(123,175,61,.18);
}
.contact-form-pro .form-step-divider span{
  display:block;
  color:#7baf3d;
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.contact-form-pro .form-step-divider p{
  margin:7px 0 0;
  color:var(--muted,#747474);
  font-size:14px;
  line-height:1.55;
}
.contact-form-pro [data-form-step="2"]{
  padding-bottom:4px;
}
@media(max-width:900px){
  .v68-layer-real-room{left:4%!important;right:4%!important;top:182px!important;bottom:74px!important}
  .v68-layer-real-room>img{object-position:center center!important}
}
@media(max-width:640px){
  .v68-layer-real-room{top:172px!important;bottom:66px!important;border-radius:22px!important}
  .v68-layer-real-room>img{object-position:52% center!important;transform:scale(1.03)!important}
  .contact-form-pro .form-step-divider{margin-top:24px;padding-top:20px}
}


/* ==========================================================
   OSTROLUXX V69 — HOME VISUAL POLISH
   Lighting Layers + real Light Lab + typography + CTA parity
   ========================================================== */

/* Interactive light objects: both CTAs use the same primary style. */
.immersive-3d-copy .actions .button-primary{
  min-width:220px!important;
  justify-content:center!important;
  color:#071008!important;
  background:linear-gradient(135deg,#7baf3d,#a8d56f)!important;
  border-color:#a8d56f!important;
  box-shadow:0 16px 32px rgba(78,125,36,.18)!important;
}
.immersive-3d-copy .actions .button-primary:hover{
  color:#071008!important;
  background:linear-gradient(135deg,#8dc44a,#b6df82)!important;
  transform:translateY(-2px)!important;
}

/* Closing CTA uses the same site typography scale as other sections. */
.home-closing,
.home-closing .section-title,
.home-closing p,
.home-closing .button,
.home-closing .closing-product-label{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif!important;
}
.home-closing .section-title{
  max-width:10ch!important;
  font-size:clamp(43px,6.2vw,76px)!important;
  font-weight:730!important;
  letter-spacing:-.06em!important;
  line-height:.98!important;
}
.home-closing p{
  font-size:clamp(19px,2vw,25px)!important;
  font-weight:500!important;
  letter-spacing:-.025em!important;
  line-height:1.4!important;
}

/* ----------------------------------------------------------
   Lighting Layers — separate information, fixture and room.
   ---------------------------------------------------------- */
.v60-layer-stage{
  min-height:680px!important;
  background:
    radial-gradient(circle at 80% 14%,rgba(123,175,61,.12),transparent 22%),
    linear-gradient(180deg,#061008 0%,#0a130c 58%,#050906 100%)!important;
}
.v60-layer-head{
  top:24px!important;
  left:24px!important;
  width:min(390px,48%)!important;
  min-height:170px!important;
  padding:20px 22px!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,rgba(7,14,9,.94),rgba(5,11,7,.90))!important;
  box-shadow:0 18px 38px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(14px)!important;
}
.v60-layer-head strong{font-size:28px!important;line-height:1.03!important}
.v60-layer-head p{font-size:14px!important;line-height:1.55!important}
.v60-layer-ceiling{
  height:180px!important;
  background:linear-gradient(180deg,#101b12 0%,#09110b 82%,rgba(9,17,11,.16) 100%)!important;
}
.v60-layer-fixture{
  left:auto!important;
  right:8%!important;
  bottom:-44px!important;
  width:160px!important;
  height:132px!important;
  transform:none!important;
  z-index:12!important;
}
.v60-layer-fixture img{
  max-width:160px!important;
  max-height:132px!important;
  filter:drop-shadow(0 22px 26px rgba(0,0,0,.48))!important;
}
.v60-layer-room.v68-layer-real-room{
  left:5%!important;
  right:5%!important;
  top:216px!important;
  bottom:76px!important;
  border-radius:30px!important;
  z-index:2!important;
  box-shadow:0 26px 60px rgba(0,0,0,.30),inset 0 0 0 1px rgba(255,255,255,.08)!important;
}
.v68-layer-real-room>img{
  object-position:center 48%!important;
  transform:scale(1.005)!important;
  filter:saturate(.94) contrast(1.03) brightness(.88)!important;
}
.v68-layer-room-tint{
  background:linear-gradient(180deg,rgba(3,8,5,.02),transparent 50%,rgba(3,8,5,.08))!important;
}
.v60-layer-stage .v60-layer-beam{
  top:136px!important;
  left:auto!important;
  right:calc(8% + 80px)!important;
  transform:translateX(50%)!important;
  z-index:5!important;
  transform-origin:top center!important;
  mix-blend-mode:screen!important;
  filter:blur(1.4px)!important;
}
.v60-layer-ambient{
  width:250px!important;
  height:410px!important;
  background:linear-gradient(180deg,rgba(255,249,225,.40),rgba(215,238,169,.12) 54%,transparent 100%)!important;
}
.v60-layer-task{
  width:145px!important;
  height:370px!important;
  background:linear-gradient(180deg,rgba(255,246,208,.62),rgba(229,244,183,.12) 60%,transparent 100%)!important;
}
.v60-layer-accent{
  width:92px!important;
  height:340px!important;
  right:calc(8% + 44px)!important;
  transform:translateX(50%) rotate(-7deg)!important;
  background:linear-gradient(180deg,rgba(255,230,176,.52),rgba(200,228,137,.10) 62%,transparent 100%)!important;
}
/* Avoid the three strong cones overlapping in Complete Composition. */
.v60-lighting-layers[data-active-layer="all"] .v60-layer-ambient{opacity:.62!important}
.v60-lighting-layers[data-active-layer="all"] .v60-layer-task{opacity:.18!important}
.v60-lighting-layers[data-active-layer="all"] .v60-layer-accent{opacity:.12!important}
.v60-lighting-layers[data-active-layer="ambient"] .v60-layer-ambient{opacity:.78!important}
.v60-lighting-layers[data-active-layer="ambient"] .v60-layer-task,
.v60-lighting-layers[data-active-layer="ambient"] .v60-layer-accent{opacity:.04!important}
.v60-lighting-layers[data-active-layer="task"] .v60-layer-task{opacity:.80!important}
.v60-lighting-layers[data-active-layer="task"] .v60-layer-ambient,
.v60-lighting-layers[data-active-layer="task"] .v60-layer-accent{opacity:.04!important}
.v60-lighting-layers[data-active-layer="accent"] .v60-layer-accent{opacity:.76!important}
.v60-lighting-layers[data-active-layer="accent"] .v60-layer-ambient,
.v60-lighting-layers[data-active-layer="accent"] .v60-layer-task{opacity:.04!important}
.v68-layer-real-room .v60-layer-floor-glow{
  left:46%!important;
  right:8%!important;
  bottom:0!important;
  height:24%!important;
  opacity:.62!important;
  background:radial-gradient(circle,rgba(188,224,122,.24),rgba(188,224,122,.06) 48%,transparent 72%)!important;
}
.v60-layer-key{
  left:50%!important;
  right:auto!important;
  bottom:18px!important;
  transform:translateX(-50%)!important;
  width:max-content!important;
  max-width:90%!important;
  justify-content:center!important;
}

/* ----------------------------------------------------------
   Interactive Light Lab — real photographic room.
   ---------------------------------------------------------- */
.v66-lab-stage{
  min-height:720px!important;
  background:linear-gradient(180deg,#08110a 0%,#0b150d 58%,#061008 100%)!important;
}
.v66-lab-head{
  top:22px!important;
  left:22px!important;
  right:auto!important;
  width:min(340px,calc(100% - 44px))!important;
  padding:14px 16px!important;
  border:1px solid rgba(168,213,111,.18)!important;
  border-radius:18px!important;
  background:rgba(5,11,7,.88)!important;
  box-shadow:0 18px 36px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(12px)!important;
}
.v66-lab-head span{font-size:9px!important}
.v66-lab-head strong{margin-top:5px!important;font-size:19px!important}
.v66-lab-fixture-wrap{
  top:34px!important;
  left:auto!important;
  right:7%!important;
  width:190px!important;
  height:156px!important;
  transform:none!important;
}
.v66-lab-fixture{
  left:50%!important;
  width:170px!important;
  height:138px!important;
  transform:translateX(-50%)!important;
}
.v66-lab-fixture img{
  max-width:170px!important;
  max-height:138px!important;
}
.v66-lab-beam{
  top:100px!important;
  left:50%!important;
  width:235px!important;
  height:420px!important;
  transform:translateX(-50%)!important;
  opacity:.58!important;
  filter:blur(1.2px)!important;
}
.v66-lab-room.v69-lab-real-room{
  left:5%!important;
  right:5%!important;
  top:202px!important;
  bottom:88px!important;
  border-radius:30px!important;
  overflow:hidden!important;
  background:#0b110d!important;
}
.v69-lab-real-room>img{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  filter:saturate(.94) contrast(1.02) brightness(.92)!important;
  transition:filter .35s ease!important;
}
.v69-lab-photo-tint{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(5,10,7,.02),transparent 50%,rgba(5,10,7,.08))!important;
  mix-blend-mode:soft-light!important;
  transition:background .35s ease,opacity .35s ease!important;
}
.v69-lab-real-room .v66-lab-floorglow{
  z-index:3!important;
  left:28%!important;
  right:20%!important;
  bottom:0!important;
  height:22%!important;
  opacity:.62!important;
  mix-blend-mode:screen!important;
}
#lightLabScene[data-mood="warm"] .v69-lab-real-room>img{filter:saturate(.98) contrast(1.02) brightness(.92) sepia(.05)!important}
#lightLabScene[data-mood="warm"] .v69-lab-photo-tint{background:linear-gradient(180deg,rgba(255,202,125,.10),transparent 52%,rgba(255,177,77,.06))!important}
#lightLabScene[data-mood="neutral"] .v69-lab-real-room>img{filter:saturate(.90) contrast(1.01) brightness(.95)!important}
#lightLabScene[data-mood="neutral"] .v69-lab-photo-tint{background:linear-gradient(180deg,rgba(235,240,225,.06),transparent 52%,rgba(202,218,183,.04))!important}
#lightLabScene[data-mood="cool"] .v69-lab-real-room>img{filter:saturate(.80) contrast(1.03) brightness(.96) hue-rotate(8deg)!important}
#lightLabScene[data-mood="cool"] .v69-lab-photo-tint{background:linear-gradient(180deg,rgba(177,216,244,.12),transparent 52%,rgba(151,202,238,.07))!important}
.v66-lab-status{
  left:22px!important;
  right:22px!important;
  bottom:18px!important;
}

@media(max-width:1100px){
  .v60-layer-head{width:min(370px,60%)!important}
  .v60-layer-fixture{right:7%!important}
  .v60-layer-stage .v60-layer-beam{right:calc(7% + 80px)!important}
  .v60-layer-accent{right:calc(7% + 44px)!important}
  .v66-lab-fixture-wrap{right:5%!important}
}
@media(max-width:760px){
  .v60-layer-stage{min-height:650px!important}
  .v60-layer-head{top:14px!important;left:14px!important;width:calc(100% - 28px)!important;min-height:auto!important;padding:15px 16px!important}
  .v60-layer-head strong{font-size:21px!important}
  .v60-layer-head p{font-size:12px!important}
  .v60-layer-ceiling{height:210px!important}
  .v60-layer-fixture{top:112px!important;right:50%!important;bottom:auto!important;width:126px!important;height:104px!important;transform:translateX(50%)!important}
  .v60-layer-stage .v60-layer-beam{top:190px!important;right:50%!important;height:300px!important;transform:translateX(50%)!important}
  .v60-layer-ambient{width:190px!important}
  .v60-layer-task{width:110px!important}
  .v60-layer-accent{right:calc(50% - 26px)!important;width:70px!important;transform:translateX(50%) rotate(-6deg)!important}
  .v60-layer-room.v68-layer-real-room{top:245px!important;left:3%!important;right:3%!important;bottom:68px!important}
  .v60-layer-key{bottom:10px!important}

  .v66-lab-stage{min-height:620px!important}
  .v66-lab-head{top:14px!important;left:14px!important;width:calc(100% - 28px)!important}
  .v66-lab-fixture-wrap{top:104px!important;left:50%!important;right:auto!important;width:145px!important;height:120px!important;transform:translateX(-50%)!important}
  .v66-lab-fixture{width:132px!important;height:108px!important}
  .v66-lab-beam{top:178px!important;width:180px!important;height:300px!important}
  .v66-lab-room.v69-lab-real-room{top:232px!important;left:3%!important;right:3%!important;bottom:78px!important}
  .v66-lab-status{left:10px!important;right:10px!important;bottom:10px!important}
}
@media(max-width:520px){
  .immersive-3d-copy .actions .button-primary{width:100%!important;min-width:0!important}
  .home-closing .section-title{font-size:clamp(38px,11vw,52px)!important}
  .v60-layer-stage{min-height:610px!important}
  .v60-layer-room.v68-layer-real-room{top:238px!important}
  .v66-lab-stage{min-height:570px!important}
  .v66-lab-room.v69-lab-real-room{top:220px!important}
}


/* ===== V70 View Catalogues typography match ===== */
.home-closing .home-closing-catalogue{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif!important;
  font-size:16px!important;
  font-weight:650!important;
  letter-spacing:0!important;
  line-height:1.25!important;
  text-transform:none!important;
  font-style:normal!important;
}


/* ==========================================================
   OSTROLUXX V71 — Button typography + Lighting Guide preview
   ========================================================== */
.home-closing .home-closing-catalogue{
  font-family:inherit!important;
  font-size:16px!important;
  font-weight:500!important;
  letter-spacing:-.01em!important;
  line-height:1.2!important;
  text-transform:none!important;
  font-style:normal!important;
}

/* Lighting Guide: same photorealistic language as Home page previews */
.v71-guide-stage{
  position:relative;
  min-height:620px;
  overflow:hidden;
  border:1px solid rgba(168,213,111,.18);
  border-radius:32px;
  background:linear-gradient(180deg,#071008 0%,#030704 100%);
  box-shadow:0 30px 72px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04);
}
.v71-guide-scene{
  position:absolute;
  inset:84px 28px 28px;
  overflow:hidden;
  border-radius:28px;
  background:#111;
  box-shadow:0 24px 46px rgba(0,0,0,.30);
}
.v71-guide-room-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.92) contrast(1.02) brightness(.88);
  transform:scale(1.01);
}
.v71-guide-photo-tint{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,color-mix(in srgb,var(--technology-cct, rgb(255,214,150)) 14%,transparent),transparent 58%);
  mix-blend-mode:screen;
  opacity:.78;
  transition:background .25s linear,opacity .25s linear;
}
.v71-guide-track{
  position:absolute;
  z-index:7;
  top:0;
  left:50%;
  width:190px;
  height:14px;
  border-radius:0 0 999px 999px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,#0b130d,#263927,#0a120c);
  box-shadow:0 10px 22px rgba(0,0,0,.24);
}
.v71-guide-fixture{
  position:absolute;
  z-index:9;
  top:12px;
  left:50%;
  width:160px;
  height:126px;
  transform:translateX(-50%);
  pointer-events:none;
}
.v71-guide-fixture img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 16px 24px rgba(0,0,0,.48));
}
.v71-guide-stage .v71-guide-beam.v8-lab-beam{
  position:absolute!important;
  z-index:5!important;
  top:104px!important;
  left:50%!important;
  width:var(--beam-width,170px)!important;
  height:390px!important;
  transform:translateX(-50%)!important;
  clip-path:polygon(45% 0,55% 0,100% 100%,0 100%)!important;
  background:linear-gradient(180deg,var(--beam-color,rgba(255,219,152,.74)) 0%,color-mix(in srgb,var(--technology-cct, rgb(255,214,150)) 24%,transparent) 54%,transparent 100%)!important;
  opacity:.66!important;
  filter:blur(1.2px)!important;
  pointer-events:none!important;
  transition:width .2s ease,background .2s linear,opacity .2s ease!important;
}
.v71-guide-floor-glow{
  position:absolute;
  z-index:4;
  left:29%;
  right:29%;
  bottom:4%;
  height:18%;
  border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--technology-cct, rgb(255,214,150)) 30%,transparent) 0%,transparent 72%);
  filter:blur(14px);
  opacity:.78;
  pointer-events:none;
}
.v71-guide-info{
  position:absolute;
  z-index:12;
  top:22px;
  left:22px;
  width:min(320px,calc(100% - 44px));
  padding:18px 20px;
  border:1px solid rgba(168,213,111,.20);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(7,14,9,.92),rgba(5,10,7,.97));
  box-shadow:0 20px 34px rgba(0,0,0,.28);
  backdrop-filter:blur(10px);
}
.v71-guide-info span{
  display:inline-flex;
  min-height:26px;
  align-items:center;
  padding:0 10px;
  border-radius:999px;
  color:#d8ebb9;
  background:rgba(168,213,111,.12);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.v71-guide-info strong{
  display:block;
  margin-top:10px;
  color:#fff;
  font-size:24px;
  font-weight:650;
  letter-spacing:-.035em;
  line-height:1.08;
}
.v71-guide-info p{
  margin-top:8px;
  max-width:31ch;
  color:rgba(240,246,237,.74);
  font-size:13px;
  line-height:1.55;
}
.v8-lab:has(.v71-guide-stage){
  align-items:stretch;
}
.v8-lab:has(.v71-guide-stage) .v8-lab-controls{
  min-height:620px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:34px;
}
@media(max-width:1100px){
  .v71-guide-stage{min-height:560px}
  .v71-guide-scene{inset:80px 20px 22px}
  .v71-guide-fixture{width:140px;height:112px}
  .v71-guide-stage .v71-guide-beam.v8-lab-beam{top:94px!important;height:330px!important}
  .v8-lab:has(.v71-guide-stage) .v8-lab-controls{min-height:auto}
}
@media(max-width:720px){
  .home-closing .home-closing-catalogue{font-size:16px!important;font-weight:500!important}
  .v71-guide-stage{min-height:500px;border-radius:26px}
  .v71-guide-scene{inset:72px 14px 16px;border-radius:22px}
  .v71-guide-info{top:14px;left:14px;width:min(270px,calc(100% - 28px));padding:14px 16px}
  .v71-guide-info strong{font-size:20px}
  .v71-guide-info p{font-size:12px}
  .v71-guide-track{width:138px;height:10px}
  .v71-guide-fixture{top:10px;width:112px;height:90px}
  .v71-guide-stage .v71-guide-beam.v8-lab-beam{top:80px!important;height:265px!important;opacity:.60!important}
  .v71-guide-floor-glow{left:22%;right:22%;height:15%}
}

/* =====================================================================
   OSTROLUXX V72 — FULL-SITE RESPONSIVE ALIGNMENT + WHATSAPP WIDGET
   ===================================================================== */
:root{
  --v72-pad:clamp(16px,3vw,40px);
  --v72-content:1480px;
  --v72-radius:clamp(18px,2vw,32px);
  --v72-gap:clamp(16px,2.2vw,32px);
}
*,*::before,*::after{box-sizing:border-box}
html{width:100%;max-width:100%;overflow-x:clip;-webkit-text-size-adjust:100%}
body{width:100%;max-width:100%;overflow-x:clip}
main,section,article,aside,header,footer,nav,form,dialog{min-width:0;max-width:100%}
img,picture,video,canvas,svg,iframe{display:block;max-width:100%;height:auto}
input,select,textarea,button{font:inherit}
a,button,[role="button"]{touch-action:manipulation}
.container,.section-inner,.v8-section-inner,.product-page-section-inner{
  width:min(calc(100% - (2 * var(--v72-pad))),var(--v72-content));
  max-width:var(--v72-content);
  margin-inline:auto;
}

/* Header / navigation */
.site-header{width:100%;max-width:100vw}
.nav-shell{
  width:min(calc(100% - (2 * var(--v72-pad))),var(--v72-content))!important;
  min-width:0!important;
}
.brand-logo,.site-logo{max-width:min(220px,42vw)!important;height:auto!important}
.nav-list{min-width:0;flex-wrap:nowrap}
.nav-list a{white-space:nowrap}
.mobile-nav{max-width:100vw!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}

/* Universal vertical rhythm */
.content-section,.v8-section{padding-inline:0!important}
.section-head,.v8-section-head{min-width:0}
.display-title,.section-title,h1,h2,h3{max-width:100%;text-wrap:balance}
p{max-width:100%;overflow-wrap:break-word}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.button,.header-cta,.mobile-contact{min-height:48px;max-width:100%;white-space:normal;text-align:center}

/* Grids and cards */
.product-grid,.product-model-grid,.catalog-grid,.value-grid,.tech-grid,.purpose-grid,
.resource-card-grid,.featured-product-grid,.showcase-grid,.project-grid,.application-grid,
.related-product-pages,.product-feature-grid,.v8-grid,.about-product-band{
  min-width:0;
  max-width:100%;
}
.product-card,.product-tile,.catalog-card,.value-card,.tech-card,.purpose-card,.resource-card,
.related-product-page,.v8-card,.guide-card{min-width:0;max-width:100%}
.product-card img,.product-tile img,.catalog-card img,.related-product-page img{object-fit:contain}

/* Product model pages */
.product-page-hero,.product-page-grid,.product-page-media,.product-page-visual,.product-page-copy{min-width:0!important}
.product-page-grid{gap:clamp(24px,4vw,64px)!important}
.product-page-visual img{max-width:100%!important;max-height:min(68vh,760px)!important;object-fit:contain!important}
.product-page-gallery{max-width:100%!important;overflow-x:auto!important;overscroll-behavior-inline:contain!important;scrollbar-width:thin}
.product-page-gallery-thumb{flex:0 0 auto!important}
.related-product-pages{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))!important;gap:16px!important}
.product-feature-grid{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr))!important}
.product-tech-layout{min-width:0!important;gap:clamp(18px,3vw,42px)!important}

/* Tables */
.table-wrap,.product-table-wrap,.spec-table-wrap,.dialog-spec-table-wrap,.downloads-table-wrap{
  width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain
}
table{width:100%;max-width:100%}
th,td{overflow-wrap:anywhere;word-break:normal}

/* Forms */
.form-row,.contact-workspace-grid,.contact-form-pro,.field{min-width:0!important}
.field input,.field select,.field textarea{width:100%!important;max-width:100%!important}
textarea{resize:vertical}

/* Product popup / dialogs */
.product-dialog-v5,.product-3d-dialog{width:min(100vw,100%)!important;max-width:100vw!important;max-height:100dvh!important}
.product-dialog-v5 .dialog-shell,.product-dialog-v5 .dialog-layout-v5,.product-dialog-v5 .dialog-content,
.product-3d-dialog .dialog-shell{min-width:0!important;max-width:100%!important}
.product-dialog-v5 .dialog-layout-v5{overflow:hidden!important}
.product-dialog-v5 .dialog-media,.product-dialog-v5 .dialog-details{min-width:0!important}
.dialog-actions,.dialog-actions-secondary{min-width:0!important}

/* Footer */
.site-footer,.footer-main,.footer-bottom,.footer-cta{width:100%;max-width:100vw;overflow:hidden}
.footer-main{gap:clamp(24px,4vw,56px)!important}
.footer-main>*{min-width:0}
.newsletter{max-width:100%}
.newsletter input{min-width:0;max-width:100%}

/* WhatsApp floating widget */
.ostro-whatsapp-widget{
  position:fixed;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  z-index:780;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:56px;
  padding:0 18px 0 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:linear-gradient(135deg,#25D366,#1fb759);
  color:#06110a!important;
  text-decoration:none!important;
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  line-height:1;
  box-shadow:0 18px 42px rgba(0,0,0,.32),0 0 0 1px rgba(37,211,102,.16);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
}
.ostro-whatsapp-widget:hover{transform:translateY(-2px);box-shadow:0 22px 48px rgba(0,0,0,.38),0 0 0 5px rgba(37,211,102,.09)}
.ostro-whatsapp-widget:focus-visible{outline:3px solid rgba(168,213,111,.55);outline-offset:4px}
.ostro-whatsapp-widget__icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:rgba(0,0,0,.12)}
.ostro-whatsapp-widget__icon svg{width:22px;height:22px;display:block}
.ostro-whatsapp-widget__text{white-space:nowrap}
body:has(dialog[open]) .ostro-whatsapp-widget{opacity:0;pointer-events:none;transform:translateY(12px)}

/* Laptop */
@media (max-width:1280px){
  :root{--v72-content:1180px}
  .main-nav,.header-cta{display:none!important}
  .menu-toggle{display:inline-flex!important}
  .nav-shell{grid-template-columns:minmax(150px,210px) auto!important}
  .display-title{font-size:clamp(48px,7.5vw,90px)!important}
  .section-title{font-size:clamp(40px,5.8vw,68px)!important}
  .product-page-grid,.product-tech-layout,.contact-workspace-grid,.v8-lab,.v8-lighting-layers{grid-template-columns:1fr!important}
  .product-page-copy{max-width:860px!important}
  .product-page-visual{max-width:900px!important;margin-inline:auto!important}
}

/* Tablet landscape / large tablet */
@media (max-width:1024px){
  :root{--v72-pad:clamp(18px,3vw,28px)}
  .page-hero,.products-hero,.contact-hero{min-height:auto!important;padding-top:calc(var(--nav-height,76px) + 48px)!important}
  .split,.content-section>.split,.download-grid,.guide-grid,.support-grid{grid-template-columns:1fr!important}
  .featured-product-grid,.showcase-grid,.project-grid,.application-grid,.about-product-band{grid-template-columns:1fr!important}
  .product-grid,.product-model-grid,.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .footer-main{grid-template-columns:1fr 1fr!important}
  .footer-brand{grid-column:1/-1!important}
  .dialog-actions,.dialog-actions-secondary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Tablet portrait */
@media (max-width:820px){
  :root{--nav-height:74px;--v72-pad:18px}
  .brand-logo,.site-logo{max-width:176px!important}
  .display-title{font-size:clamp(44px,10.5vw,72px)!important}
  .section-title{font-size:clamp(38px,8vw,58px)!important}
  .home-hero{min-height:auto!important;padding-top:calc(var(--nav-height) + 58px)!important;padding-bottom:68px!important}
  .product-grid,.product-model-grid,.catalog-grid{grid-template-columns:1fr!important}
  .product-page-hero{padding-top:calc(var(--nav-height) + 32px)!important}
  .product-page-grid{grid-template-columns:1fr!important}
  .product-page-quick{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .product-page-quick .button{width:100%!important}
  .resource-list-item{grid-template-columns:44px minmax(0,1fr)!important}
  .resource-list-item>a{grid-column:2!important;justify-self:start!important}
  .form-row{grid-template-columns:1fr!important}
  .footer-main{grid-template-columns:1fr!important}
  .footer-brand{grid-column:auto!important}
}

/* Mobile */
@media (max-width:640px){
  :root{--v72-pad:16px}
  .nav-shell{width:calc(100% - 28px)!important}
  .brand-logo,.site-logo{max-width:152px!important}
  .display-title,.home-hero h1{font-size:clamp(40px,14vw,60px)!important;line-height:.94!important}
  .section-title{font-size:clamp(34px,11vw,48px)!important;line-height:1!important}
  .body-large{font-size:17px!important}
  .actions{flex-direction:column;align-items:stretch!important}
  .actions .button{width:100%!important;justify-content:center!important}
  .button,.header-cta,.mobile-contact{min-height:52px}
  .product-page-quick{grid-template-columns:1fr!important}
  .product-page-gallery{gap:9px!important}
  .product-page-gallery-thumb{width:76px!important;min-width:76px!important}
  .product-feature-grid,.v8-grid{grid-template-columns:1fr!important}
  .related-product-pages{grid-template-columns:1fr!important}
  .dialog-actions,.dialog-actions-secondary{grid-template-columns:1fr!important}
  .product-dialog-v5 .dialog-content{padding-inline:12px!important}
  .resource-list-item{grid-template-columns:1fr!important}
  .resource-list-item>a{grid-column:1!important}
  .ostro-whatsapp-widget{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:54px;height:54px;min-height:54px;padding:0;justify-content:center}
  .ostro-whatsapp-widget__text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  .ostro-whatsapp-widget__icon{width:36px;height:36px;flex-basis:36px}
  input,select,textarea{font-size:16px!important}
}

/* Very small phones */
@media (max-width:390px){
  :root{--v72-pad:14px}
  .brand-logo,.site-logo{max-width:142px!important}
  .display-title,.home-hero h1{font-size:clamp(36px,13.5vw,52px)!important}
  .section-title{font-size:clamp(32px,10.5vw,44px)!important}
  .product-page-hero,.page-hero,.products-hero,.contact-hero{padding-inline:14px!important}
  .v8-chip-row{gap:7px!important}
  .v8-chip{font-size:10px!important}
}

/* Short-height laptops / landscape phones */
@media (min-width:821px) and (max-height:760px){
  .home-hero,.page-hero{min-height:auto!important}
  .home-hero{padding-top:calc(var(--nav-height,76px) + 46px)!important;padding-bottom:56px!important}
  .display-title{font-size:clamp(46px,6vw,78px)!important}
}
@media (max-height:560px) and (orientation:landscape){
  .mobile-nav{padding-bottom:24px!important}
  .ostro-whatsapp-widget{width:50px;height:50px;min-height:50px}
}

/* Touch devices: reduce hover-only movement and keep controls usable */
@media (hover:none),(pointer:coarse){
  .v8-tilt,.product-card,.showcase-card{transform:none!important}
  .button:hover,.header-cta:hover,.ostro-whatsapp-widget:hover{transform:none!important}
}

/* Accessibility / reduced motion */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

/* =====================================================================
   OSTROLUXX V73 — HOME VISUAL CONSISTENCY + TARGET-SURFACE PREVIEWS
   ===================================================================== */
:root{
  --v73-home-bg:#061008;
  --v73-card-bg:#0b160d;
  --v73-card-bg-2:#101c12;
  --v73-green:#7baf3d;
  --v73-green-light:#a8d56f;
}

/* 1) “Made to belong” — one consistent green/black surface, no brown cards. */
.featured-products-section{
  background:var(--v73-home-bg)!important;
  color:#f4f7f1!important;
}
.featured-products-head .section-title,
.featured-products-head .body-large{color:#f4f7f1!important}
.featured-products-head .body-large{color:rgba(235,243,231,.72)!important}
.featured-product-grid .featured-product-card,
.featured-product-grid .featured-product-card.fp-large{
  background:linear-gradient(145deg,var(--v73-card-bg) 0%,var(--v73-card-bg-2) 100%)!important;
  color:#f5f9f2!important;
  border:1px solid rgba(123,175,61,.18)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.24)!important;
}
.featured-product-grid .featured-product-card .fp-copy h3{color:#fff!important}
.featured-product-grid .featured-product-card .fp-copy p{color:rgba(235,243,231,.70)!important}
.featured-product-grid .featured-product-card .fp-copy small,
.featured-product-grid .featured-product-card .fp-copy span{color:var(--v73-green-light)!important}
.featured-product-grid .featured-product-card:hover{
  border-color:rgba(168,213,111,.34)!important;
  box-shadow:0 26px 58px rgba(0,0,0,.34),0 0 0 1px rgba(123,175,61,.08)!important;
}

/* Interactive light objects uses the same site background language. */
.immersive-3d-section{
  background:
    radial-gradient(circle at 76% 48%,rgba(123,175,61,.15),transparent 27%),
    var(--v73-home-bg)!important;
}
.immersive-3d-copy .body-large{color:rgba(235,243,231,.72)!important}

/* Pointer stage — make hit-area reliable and movement visually obvious. */
.immersive-3d-stage{
  pointer-events:auto!important;
  touch-action:none!important;
  isolation:isolate!important;
  cursor:grab!important;
  overflow:visible!important;
}
.immersive-3d-stage:active{cursor:grabbing!important}
.immersive-3d-stage .stage-product,
.immersive-3d-stage .stage-grid,
.immersive-3d-stage .stage-halo,
.immersive-3d-stage .stage-orbit,
.immersive-3d-stage .stage-light-beam{pointer-events:none!important}
.immersive-3d-stage .stage-product img{
  object-fit:contain!important;
  background:transparent!important;
}
.immersive-3d-stage.is-pointer-active .stage-product-a{filter:drop-shadow(0 24px 28px rgba(0,0,0,.35))}
.immersive-3d-stage.is-pointer-active .stage-product-b,
.immersive-3d-stage.is-pointer-active .stage-product-c{filter:drop-shadow(0 18px 22px rgba(0,0,0,.30))}

/* Keep the Atmosphere card in the same dark green family as adjacent cards. */
.showcase-grid{background:var(--v73-home-bg)!important}
.showcase-card.dark,
.showcase-card.light,
.showcase-card.wide.theme-linear{
  background:linear-gradient(145deg,#08110a 0%,#101b12 100%)!important;
  color:#f5f9f2!important;
  border-color:rgba(123,175,61,.14)!important;
}
.showcase-card.dark p,
.showcase-card.light p,
.showcase-card.wide.theme-linear p{color:rgba(235,243,231,.70)!important}
.showcase-card .text-link{color:var(--v73-green-light)!important}

/* Shared target-surface language — same visual family as Technology optical preview. */
.v73-home-preview-wrap{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:760px!important;
  padding:34px clamp(20px,3vw,38px)!important;
  background:
    radial-gradient(circle at 78% 26%,rgba(123,175,61,.12),transparent 25%),
    linear-gradient(180deg,#061008 0%,#09140b 100%)!important;
}
.v73-preview-stage{
  position:relative;
  width:min(100%,760px);
  min-height:610px;
  overflow:hidden;
  border:1px solid rgba(123,175,61,.22);
  border-radius:34px;
  background:linear-gradient(180deg,#071109 0%,#0b150d 58%,#050906 100%);
  box-shadow:0 30px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04);
  isolation:isolate;
}
.v73-preview-info{
  position:absolute;
  z-index:12;
  top:24px;
  left:24px;
  width:min(330px,calc(100% - 48px));
  padding:16px 18px;
  border:1px solid rgba(168,213,111,.18);
  border-radius:18px;
  background:rgba(5,10,7,.84);
  backdrop-filter:blur(10px);
  box-shadow:0 16px 34px rgba(0,0,0,.18);
}
.v73-preview-info span{
  color:var(--v73-green-light);
  font-size:9px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.v73-preview-info strong{
  display:block;
  margin-top:8px;
  color:#fff;
  font-size:22px;
  line-height:1.05;
  letter-spacing:-.035em;
}
.v73-preview-info p{
  margin-top:8px;
  color:rgba(240,246,237,.72);
  font-size:13px;
  line-height:1.5;
}
.v73-preview-track{
  position:absolute;
  z-index:9;
  top:88px;
  left:68%;
  width:210px;
  height:12px;
  transform:translateX(-50%);
  border-radius:999px;
  background:linear-gradient(90deg,#101915,#2a402b,#0b120d);
  box-shadow:0 10px 18px rgba(0,0,0,.26);
}
.v73-preview-fixture{
  position:absolute;
  z-index:10;
  top:88px;
  left:68%;
  width:148px;
  height:125px;
  transform:translate(-50%,0);
}
.v73-preview-fixture img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 20px 22px rgba(0,0,0,.48));
}
.v73-preview-beam,
.v73-layer-beam{
  position:absolute;
  z-index:5;
  top:174px;
  left:68%;
  transform:translateX(-50%);
  clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);
  filter:blur(1px);
  pointer-events:none;
  transition:width .25s ease,background .25s ease,opacity .25s ease,transform .25s ease;
}
.v73-cct-beam{
  width:190px;
  height:310px;
  background:linear-gradient(180deg,var(--lab-light,rgb(247,192,119)),rgba(255,255,255,.02));
  opacity:.68;
}
.v73-preview-target{
  position:absolute;
  z-index:4;
  left:68%;
  bottom:78px;
  width:min(56%,370px);
  height:190px;
  transform:translateX(-50%);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding-bottom:18px;
  border:1px solid rgba(168,213,111,.16);
  border-radius:30px;
  overflow:hidden;
  background:
    linear-gradient(145deg,rgba(168,213,111,.10),rgba(255,255,255,.025)),
    #101a12;
  box-shadow:0 20px 45px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.04);
}
.v73-preview-target::before{
  content:"";
  position:absolute;
  inset:14% 12% 28%;
  border-radius:22px;
  background:radial-gradient(circle,var(--lab-light,rgba(247,192,119,.38)) 0%,color-mix(in srgb,var(--lab-light,rgb(247,192,119)) 24%,transparent) 36%,transparent 72%);
  filter:blur(5px);
  opacity:.84;
}
.v73-preview-target>span{
  position:relative;
  z-index:3;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(5,10,7,.78);
  color:#dcead2;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.v73-target-center,
.v73-layer-target-core{
  position:absolute;
  z-index:2;
  left:50%;
  top:48%;
  width:56%;
  height:38%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--lab-light,rgb(247,192,119)) 36%,transparent),transparent 70%);
  filter:blur(12px);
}
.v73-preview-floor-glow{
  position:absolute;
  z-index:3;
  left:68%;
  bottom:38px;
  width:390px;
  height:96px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--lab-light,rgb(247,192,119)) 28%,transparent),transparent 70%);
  filter:blur(9px);
}
.v73-preview-status{
  position:absolute;
  z-index:12;
  left:22px;
  bottom:20px;
  display:grid;
  width:min(310px,calc(100% - 44px));
  grid-template-columns:1fr 1.15fr;
  gap:10px;
}
.v73-preview-status>div{
  padding:12px 14px;
  border:1px solid rgba(168,213,111,.16);
  border-radius:16px;
  background:rgba(5,10,7,.84);
  backdrop-filter:blur(8px);
}
.v73-preview-status span{
  display:block;
  color:#91a08f;
  font-size:9px;
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.v73-preview-status strong{
  display:block;
  margin-top:4px;
  color:#fff;
  font-size:15px;
}

/* Lighting Layers — target-surface preview, not an interior image. */
.v60-lighting-layers{
  grid-template-columns:minmax(480px,1.08fr) minmax(360px,.92fr)!important;
  align-items:stretch!important;
}
.v73-layer-stage{min-height:610px}
.v73-layer-ambient{
  width:300px;
  height:320px;
  background:linear-gradient(180deg,rgba(239,248,220,.34),rgba(168,213,111,.04));
  opacity:.48;
}
.v73-layer-task{
  width:142px;
  height:300px;
  background:linear-gradient(180deg,rgba(255,245,211,.72),rgba(215,238,166,.04));
  opacity:.72;
}
.v73-layer-accent{
  left:75%;
  width:90px;
  height:280px;
  background:linear-gradient(180deg,rgba(255,231,182,.64),rgba(168,213,111,.03));
  opacity:.62;
}
.v73-layer-target{
  background:
    linear-gradient(145deg,rgba(168,213,111,.12),rgba(255,255,255,.02)),
    linear-gradient(180deg,#152019,#0d150f)!important;
}
.v73-layer-target::before{
  background:radial-gradient(circle,rgba(208,237,166,.34) 0%,rgba(168,213,111,.12) 40%,transparent 72%)!important;
}
.v73-layer-floor-glow{
  background:radial-gradient(circle,rgba(168,213,111,.28),transparent 70%)!important;
}
.v73-layer-key{
  position:absolute;
  z-index:12;
  right:22px;
  bottom:22px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  max-width:320px;
  justify-content:flex-end;
}
.v73-layer-key span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(168,213,111,.14);
  background:rgba(5,10,7,.76);
  color:#dcead2;
  font-size:10px;
  font-weight:700;
}
.v73-layer-key i{width:8px;height:8px;border-radius:50%;background:#a8d56f}
.v73-layer-key i.task{background:#f2e1aa}
.v73-layer-key i.accent{background:#dfb56f}
.v73-layer-beam:not(.active){opacity:.04!important}
.v60-lighting-layers[data-active-layer="ambient"] .v73-layer-ambient{opacity:.82!important}
.v60-lighting-layers[data-active-layer="task"] .v73-layer-task{opacity:.92!important}
.v60-lighting-layers[data-active-layer="accent"] .v73-layer-accent{opacity:.90!important}
.v60-lighting-layers[data-active-layer="all"] .v73-layer-ambient{opacity:.34!important}
.v60-lighting-layers[data-active-layer="all"] .v73-layer-task{opacity:.70!important}
.v60-lighting-layers[data-active-layer="all"] .v73-layer-accent{opacity:.26!important}

/* Keep the new decorative product contained in all three requested placements. */
.stage-product-c img,
.showcase-art-atmosphere img,
.tile-art-decorative img{object-fit:contain!important;object-position:center!important}

@media(max-width:1180px){
  .v73-home-preview-wrap{min-height:690px!important;padding:24px!important}
  .v60-lighting-layers{grid-template-columns:1fr!important}
  .v73-preview-stage{min-height:580px}
}
@media(max-width:760px){
  .featured-product-grid .featured-product-card,
  .featured-product-grid .featured-product-card.fp-large{border-radius:24px!important}
  .immersive-3d-stage{min-height:520px!important}
  .v73-home-preview-wrap{min-height:590px!important;padding:14px 18px 64px!important}
  .v73-preview-stage{min-height:520px;border-radius:26px}
  .v73-preview-info{top:15px;left:15px;right:15px;width:auto;padding:14px 15px}
  .v73-preview-info strong{font-size:19px}
  .v73-preview-track{top:138px;left:50%;width:158px}
  .v73-preview-fixture{top:137px;left:50%;width:116px;height:98px}
  .v73-preview-beam,.v73-layer-beam{top:210px;left:50%;height:220px}
  .v73-cct-beam{width:132px}
  .v73-layer-ambient{width:230px}
  .v73-layer-task{width:120px}
  .v73-layer-accent{left:60%;width:76px}
  .v73-preview-target{left:50%;bottom:62px;width:76%;height:130px}
  .v73-preview-floor-glow{left:50%;bottom:30px;width:270px;height:72px}
  .v73-preview-status{left:14px;bottom:14px;width:calc(100% - 28px);grid-template-columns:1fr 1fr}
  .v73-layer-key{left:14px;right:14px;bottom:14px;justify-content:center;max-width:none}
}
@media(max-width:520px){
  .v73-preview-stage{min-height:500px}
  .v73-preview-info p{font-size:12px}
  .v73-preview-status strong{font-size:13px}
  .v73-layer-key span{font-size:9px;padding:6px 8px}
}


/* =====================================================================
   OSTROLUXX V74 — INTERACTION, WHATSAPP & FOOTER ALIGNMENT
   ===================================================================== */

/* Reliable hit area: child visuals never intercept pointer events. */
.immersive-3d-stage{
  position:relative!important;
  pointer-events:auto!important;
  touch-action:pan-y!important;
  cursor:crosshair!important;
  overflow:visible!important;
  isolation:isolate!important;
}
.immersive-3d-stage.is-dragging{touch-action:none!important;cursor:grabbing!important}
.immersive-3d-stage .stage-product,
.immersive-3d-stage .stage-product *,
.immersive-3d-stage .stage-grid,
.immersive-3d-stage .stage-halo,
.immersive-3d-stage .stage-orbit,
.immersive-3d-stage .stage-light-beam,
.immersive-3d-stage .stage-caption{pointer-events:none!important}
.immersive-3d-stage .stage-product{transition:transform .16s cubic-bezier(.2,.7,.2,1),border-color .2s ease,box-shadow .2s ease!important}
.immersive-3d-stage.is-pointer-active .stage-caption{border-color:rgba(168,213,111,.55)!important;color:#d7f5b4!important}

/* WhatsApp: branded dark button with a clearly light-green icon. */
.ostro-whatsapp-widget{
  background:linear-gradient(135deg,#173d20,#0d2a15)!important;
  border-color:rgba(168,213,111,.42)!important;
  color:#f4faef!important;
  box-shadow:0 18px 42px rgba(0,0,0,.34),0 0 0 1px rgba(168,213,111,.13)!important;
}
.ostro-whatsapp-widget__icon{
  background:#a8d56f!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.14),0 8px 20px rgba(123,175,61,.22)!important;
}
.ostro-whatsapp-widget:hover{
  background:linear-gradient(135deg,#1d4b28,#11351b)!important;
  box-shadow:0 22px 48px rgba(0,0,0,.38),0 0 0 5px rgba(168,213,111,.09)!important;
}

/* Homepage preview: no visible "Target surface" label. */
.v73-preview-target>span{display:none!important}

/* Footer: one desktop grid, equal column starts, balanced bottom row. */
.site-footer .footer-main{
  width:min(calc(100% - 56px),var(--max))!important;
  display:grid!important;
  grid-template-columns:minmax(280px,1.55fr) repeat(3,minmax(150px,.72fr))!important;
  align-items:start!important;
  gap:clamp(34px,4vw,66px)!important;
  padding:68px 0 54px!important;
}
.site-footer .footer-main>.footer-brand,
.site-footer .footer-main>.footer-col{
  grid-column:auto!important;
  width:100%!important;
  min-width:0!important;
  align-self:start!important;
  margin:0!important;
}
.site-footer .footer-brand .site-logo{display:inline-flex!important;align-items:center!important;margin:0!important}
.site-footer .footer-brand p{margin-top:18px!important}
.site-footer .footer-social-block{margin-top:22px!important;max-width:100%!important}
.site-footer .footer-col h3{margin:3px 0 18px!important;line-height:1.2!important}
.site-footer .footer-col ul{margin:0!important;padding:0!important}
.site-footer .footer-contact{margin-top:0!important}
.site-footer .footer-bottom{
  width:min(calc(100% - 56px),var(--max))!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:24px!important;
}
.site-footer .footer-bottom>.rapidbizz-credit{justify-self:center!important;text-align:center!important}
.site-footer .footer-bottom>.footer-legal{justify-self:end!important;justify-content:flex-end!important}
@media(max-width:1020px){
  .site-footer .footer-main{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .site-footer .footer-brand{grid-column:1/-1!important}
  .site-footer .footer-bottom{grid-template-columns:1fr!important;justify-items:start!important}
  .site-footer .footer-bottom>.rapidbizz-credit,
  .site-footer .footer-bottom>.footer-legal{justify-self:start!important;text-align:left!important;justify-content:flex-start!important}
}
@media(max-width:620px){
  .site-footer .footer-main{width:calc(100% - 40px)!important;grid-template-columns:1fr!important;gap:34px!important;padding:52px 0 42px!important}
  .site-footer .footer-brand{grid-column:auto!important}
  .site-footer .footer-bottom{width:calc(100% - 40px)!important;gap:12px!important;padding:22px 0 28px!important}
  .site-footer .footer-legal{gap:14px!important}
}


/* V75 — WhatsApp light-green treatment */
.ostro-whatsapp-widget{
  background:#a8d56f!important;
  border-color:rgba(20,70,31,.18)!important;
  color:#0b3f1b!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 0 1px rgba(168,213,111,.22)!important;
}
.ostro-whatsapp-widget__icon{
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 0 0 1px rgba(11,63,27,.08),0 7px 16px rgba(11,63,27,.12)!important;
}
.ostro-whatsapp-widget:hover{
  background:#b6df80!important;
  box-shadow:0 22px 48px rgba(0,0,0,.32),0 0 0 5px rgba(168,213,111,.13)!important;
}


/* ==========================================================
   OSTROLUXX V76 — PRODUCT-SPECIFIC LIGHT EFFECT ALIGNMENT
   ========================================================== */
/* The effect stage now uses a product-type class so the light begins at the
   correct side of the fixture instead of using one generic cone for all 85 products. */
.v8-product-effect-stage{
  --effect-x:50%;
  --effect-y:55%;
  --effect-w:44%;
  --effect-h:42%;
  --effect-rotate:0deg;
  isolation:isolate;
}
.v8-product-effect-stage .v8-product-effect-beam{
  display:block!important;
  position:absolute!important;
  z-index:2!important;
  left:var(--effect-x)!important;
  top:var(--effect-y)!important;
  width:var(--effect-w)!important;
  height:var(--effect-h)!important;
  transform:translateX(-50%) rotate(var(--effect-rotate))!important;
  transform-origin:50% 0!important;
  pointer-events:none!important;
  opacity:.82!important;
  filter:blur(7px)!important;
  animation:v76-effect-breathe 4.6s ease-in-out infinite alternate!important;
  background:linear-gradient(180deg,rgba(255,255,255,.48),rgba(220,235,211,.16) 48%,rgba(123,175,61,0) 100%)!important;
  clip-path:polygon(43% 0,57% 0,100% 100%,0 100%)!important;
}
.v8-product-effect-stage .v8-product-effect-beam::after{
  content:"";
  position:absolute;
  left:50%;bottom:-5%;
  width:115%;height:24%;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,255,255,.20),rgba(168,213,111,.07) 48%,transparent 74%);
  filter:blur(10px);
}
@keyframes v76-effect-breathe{
  from{opacity:.67;filter:blur(7px)}
  to{opacity:.92;filter:blur(9px)}
}

/* Recessed / surface downlights and compact spotlights — beam begins below aperture. */
.v8-product-effect-stage.effect-downlight{
  --effect-x:50%;--effect-y:57%;--effect-w:41%;--effect-h:40%;
}
.v8-product-effect-stage.effect-downlight>img{width:min(58%,480px)!important;height:min(52%,350px)!important;transform:translateY(-9%)!important}

/* Linear luminaires — wide, even wash directly beneath the long body. */
.v8-product-effect-stage.effect-linear{
  --effect-x:50%;--effect-y:55%;--effect-w:72%;--effect-h:38%;
}
.v8-product-effect-stage.effect-linear .v8-product-effect-beam{clip-path:polygon(15% 0,85% 0,100% 100%,0 100%)!important;filter:blur(12px)!important}
.v8-product-effect-stage.effect-linear>img{width:min(78%,610px)!important;height:min(46%,300px)!important;transform:translateY(-10%)!important}

/* Panel lights — broad soft ceiling wash. */
.v8-product-effect-stage.effect-panel{
  --effect-x:50%;--effect-y:54%;--effect-w:76%;--effect-h:39%;
}
.v8-product-effect-stage.effect-panel .v8-product-effect-beam{clip-path:polygon(9% 0,91% 0,100% 100%,0 100%)!important;opacity:.60!important;filter:blur(18px)!important}
.v8-product-effect-stage.effect-panel>img{width:min(68%,540px)!important;height:min(47%,310px)!important;transform:translateY(-10%)!important}

/* Track spots — focused beam projects slightly forward/down. */
.v8-product-effect-stage.effect-track{
  --effect-x:53%;--effect-y:56%;--effect-w:34%;--effect-h:40%;--effect-rotate:-8deg;
}
.v8-product-effect-stage.effect-track>img{width:min(60%,500px)!important;height:min(52%,350px)!important;transform:translateY(-8%)!important}
.v8-product-effect-stage.effect-component .v8-product-effect-beam{display:none!important}
.v8-product-effect-stage.effect-component::after{
  content:"Track component — no emitted light";
  position:absolute;left:50%;bottom:28px;transform:translateX(-50%);
  color:rgba(255,255,255,.42);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
}

/* LED strip / neon — continuous horizontal ambient reflection, not a cone. */
.v8-product-effect-stage.effect-strip .v8-product-effect-beam{
  left:50%!important;top:63%!important;width:78%!important;height:18%!important;
  border-radius:50%!important;clip-path:none!important;
  transform:translateX(-50%)!important;
  background:radial-gradient(ellipse,rgba(255,255,255,.30),rgba(168,213,111,.10) 48%,transparent 74%)!important;
  filter:blur(17px)!important;
}
.v8-product-effect-stage.effect-strip>img{width:min(78%,620px)!important;height:min(50%,330px)!important;transform:translateY(-6%)!important}

/* Horticultural fixture — broad controlled downward distribution. */
.v8-product-effect-stage.effect-grow{--effect-x:50%;--effect-y:55%;--effect-w:78%;--effect-h:40%}
.v8-product-effect-stage.effect-grow .v8-product-effect-beam{clip-path:polygon(8% 0,92% 0,100% 100%,0 100%)!important;opacity:.66!important;filter:blur(16px)!important}
.v8-product-effect-stage.effect-grow>img{width:min(76%,610px)!important;height:min(48%,320px)!important;transform:translateY(-10%)!important}

/* Architectural wall light — symmetric up/down wall wash centered on the fixture. */
.v8-product-effect-stage.effect-wall .v8-product-effect-beam,
.v8-product-effect-stage.effect-decorative .v8-product-effect-beam{
  left:50%!important;top:50%!important;width:62%!important;height:58%!important;
  clip-path:none!important;transform:translate(-50%,-50%)!important;
  background:
    conic-gradient(from 225deg at 50% 50%,transparent 0 12%,rgba(255,255,255,.17) 17%,transparent 25% 62%,rgba(255,255,255,.13) 69%,transparent 77%),
    radial-gradient(ellipse at center,rgba(255,255,255,.16),rgba(168,213,111,.06) 36%,transparent 68%)!important;
  filter:blur(12px)!important;opacity:.72!important;
}
.v8-product-effect-stage.effect-wall .v8-product-effect-beam::after,
.v8-product-effect-stage.effect-decorative .v8-product-effect-beam::after{display:none!important}
.v8-product-effect-stage.effect-wall>img,.v8-product-effect-stage.effect-decorative>img{width:min(58%,480px)!important;height:min(58%,380px)!important}

/* Flood lights — wider forward throw. */
.v8-product-effect-stage.effect-flood{--effect-x:52%;--effect-y:56%;--effect-w:62%;--effect-h:40%;--effect-rotate:-10deg}
.v8-product-effect-stage.effect-flood .v8-product-effect-beam{clip-path:polygon(27% 0,73% 0,100% 100%,0 100%)!important;filter:blur(11px)!important}
.v8-product-effect-stage.effect-flood>img{width:min(60%,500px)!important;height:min(53%,350px)!important;transform:translateY(-7%)!important}

/* Solar street light — broad asymmetric road wash beneath head. */
.v8-product-effect-stage.effect-street{--effect-x:56%;--effect-y:57%;--effect-w:58%;--effect-h:36%;--effect-rotate:-12deg}
.v8-product-effect-stage.effect-street .v8-product-effect-beam{clip-path:polygon(32% 0,68% 0,100% 100%,4% 100%)!important;filter:blur(12px)!important}
.v8-product-effect-stage.effect-street>img{width:min(68%,540px)!important;height:min(58%,380px)!important;transform:translateY(-6%)!important}

/* Inground fixtures emit upward from the floor, so the reflection direction is reversed. */
.v8-product-effect-stage.effect-inground .v8-product-effect-beam{
  left:50%!important;top:20%!important;width:46%!important;height:43%!important;
  transform:translateX(-50%) rotate(180deg)!important;transform-origin:50% 100%!important;
  clip-path:polygon(38% 0,62% 0,100% 100%,0 100%)!important;
}
.v8-product-effect-stage.effect-inground .v8-product-effect-beam::after{display:none!important}
.v8-product-effect-stage.effect-inground>img{width:min(56%,470px)!important;height:min(50%,330px)!important;transform:translateY(18%)!important}

/* Decorative family: keep a soft architectural glow around the luminaire rather than
   forcing the same downlight cone onto pendants / wall pieces with different forms. */
.v8-product-effect-stage.effect-decorative .v8-product-effect-beam{opacity:.58!important}

@media(max-width:760px){
  .v8-product-effect-stage .v8-product-effect-beam{opacity:.68!important}
  .v8-product-effect-stage.effect-component::after{bottom:18px}
}
@media(prefers-reduced-motion:reduce){
  .v8-product-effect-stage .v8-product-effect-beam{animation:none!important}
}


/* ==========================================================
   OSTROLUXX V77 — PREVIEW SURFACE / LIGHT ALIGNMENT / UI POLISH
   ========================================================== */
/* 1. Remove the visible target/surface boxes from all interactive previews.
   The light is now rendered directly on the stage, keeping only a soft falloff. */
.v73-preview-target,
.v73-layer-target,
.v60-optical-target{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  padding:0!important;
  pointer-events:none!important;
}
.v73-preview-target::before,
.v73-layer-target::before,
.v60-optical-target::before{
  border:0!important;
  background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--lab-light,rgb(247,192,119)) 30%,transparent) 0%,color-mix(in srgb,var(--lab-light,rgb(247,192,119)) 12%,transparent) 35%,transparent 72%)!important;
  filter:blur(15px)!important;
  opacity:.9!important;
}
.v73-target-center,.v73-layer-target-core{filter:blur(18px)!important;opacity:.72!important}
.v60-optical-target span{display:none!important}

/* 2. Lighting Layers: every beam starts from the centre of the real fixture aperture.
   Ambient is wide, task is focused, accent angles away only after the origin point. */
.v73-layer-stage{--layer-origin-x:68%;--layer-origin-y:195px}
.v73-layer-stage .v73-preview-fixture{left:var(--layer-origin-x)!important}
.v73-layer-stage .v73-layer-beam{
  top:var(--layer-origin-y)!important;
  left:var(--layer-origin-x)!important;
  transform-origin:50% 0!important;
}
.v73-layer-stage .v73-layer-ambient{
  width:300px!important;
  height:300px!important;
  clip-path:polygon(47% 0,53% 0,100% 100%,0 100%)!important;
  transform:translateX(-50%)!important;
}
.v73-layer-stage .v73-layer-task{
  width:138px!important;
  height:292px!important;
  clip-path:polygon(43% 0,57% 0,100% 100%,0 100%)!important;
  transform:translateX(-50%)!important;
}
.v73-layer-stage .v73-layer-accent{
  left:var(--layer-origin-x)!important;
  width:92px!important;
  height:270px!important;
  clip-path:polygon(42% 0,58% 0,100% 100%,0 100%)!important;
  transform:translateX(-50%) rotate(11deg)!important;
}
.v73-layer-stage .v73-preview-target,
.v73-layer-stage .v73-preview-floor-glow{left:var(--layer-origin-x)!important}
.v73-layer-floor-glow{bottom:34px!important;width:330px!important;height:84px!important;opacity:.52!important;filter:blur(14px)!important}

/* Technology optical preview: surface box removed, beam/glow remain centred. */
.v60-optical-target{height:150px!important;width:min(52%,350px)!important}
.v60-optical-floor-glow{opacity:.54!important;filter:blur(13px)!important}

/* 3. Official WhatsApp brand green (#25D366) with the existing icon treatment. */
.ostro-whatsapp-widget{
  background:#25D366!important;
  border-color:#25D366!important;
  color:#083b1d!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 0 1px rgba(37,211,102,.24)!important;
}
.ostro-whatsapp-widget__icon{background:#fff!important;box-shadow:0 7px 18px rgba(0,0,0,.12)!important}
.ostro-whatsapp-widget:hover{background:#20c95c!important;box-shadow:0 22px 48px rgba(0,0,0,.32),0 0 0 5px rgba(37,211,102,.14)!important}

/* 5. Products landing hero now uses an actual Ostroluxx product render. */
.product-hero-object.product-hero-real{
  right:max(28px,calc((100vw - 1400px)/2))!important;
  bottom:44px!important;
  width:min(42vw,560px)!important;
  height:520px!important;
  transform:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  animation:productObjectFloat 6s ease-in-out infinite alternate!important;
}
.product-hero-real img{
  position:relative;
  z-index:3;
  display:block;
  width:min(92%,470px);
  height:min(88%,450px);
  object-fit:contain;
  filter:drop-shadow(0 34px 38px rgba(0,0,0,.46));
}
.product-hero-real-halo{
  position:absolute;
  z-index:1;
  inset:11% 3% 3%;
  border-radius:50%;
  background:radial-gradient(circle at 52% 54%,rgba(168,213,111,.17),rgba(123,175,61,.07) 38%,transparent 69%);
  filter:blur(8px);
}
@media(max-width:1040px){.product-hero-object.product-hero-real{right:-45px!important;opacity:.72!important}}
@media(max-width:760px){.product-hero-object.product-hero-real{right:-90px!important;bottom:-10px!important;width:430px!important;height:420px!important;opacity:.43!important}}

/* 6. View Catalogues: same calm medium weight as the site's other buttons. */
.home-closing .home-closing-catalogue{font-family:inherit!important;font-weight:500!important;letter-spacing:0!important}

/* Career enquiry mode */
.contact-form-pro [hidden]{display:none!important}


/* ==========================================================
   OSTROLUXX V78 — View Catalogues typography + email branding
   ========================================================== */
.home-closing .home-closing-catalogue{
  font-family:inherit!important;
  font-size:16px!important;
  font-weight:650!important;
  letter-spacing:0!important;
  line-height:normal!important;
  text-transform:none!important;
  font-style:normal!important;
}

/* ==========================================================
   OSTROLUXX V79 — Home catalogue button typography hard fix
   ========================================================== */
/* The installed site font maps intermediate 500/650 weights to a bold face
   in some Windows/Chrome combinations. Force a true regular face here so
   View Catalogues visually matches the calmer CTA typography. */
.home-closing .home-closing-catalogue,
.home-closing a.home-closing-catalogue.button,
.home-closing a.home-closing-catalogue.button-primary{
  font-family:inherit!important;
  font-size:16px!important;
  font-weight:400!important;
  font-variation-settings:"wght" 400!important;
  font-synthesis:none!important;
  letter-spacing:0!important;
  line-height:1.15!important;
  text-transform:none!important;
  font-style:normal!important;
}


/* =====================================================================
   OSTROLUXX V80 — WHATSAPP / PRODUCT HERO / OPTICAL PREVIEW POLISH
   ===================================================================== */

/* 1. Light-green WhatsApp widget, keeping the existing WhatsApp icon. */
.ostro-whatsapp-widget{
  background:#A8D56F!important;
  border-color:#A8D56F!important;
  color:#14321d!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 0 1px rgba(168,213,111,.26)!important;
}
.ostro-whatsapp-widget__icon{background:#fff!important}
.ostro-whatsapp-widget:hover{
  background:#98C95F!important;
  border-color:#98C95F!important;
  box-shadow:0 22px 48px rgba(0,0,0,.32),0 0 0 5px rgba(168,213,111,.14)!important;
}

/* 2. Products hero: reserve a clean visual zone so the real product never overlaps text. */
.products-hero{overflow:hidden!important}
.products-hero-content{
  position:relative!important;
  z-index:5!important;
  max-width:700px!important;
  margin-left:max(54px,calc((100vw - 1320px)/2))!important;
  margin-right:auto!important;
  align-items:flex-start!important;
  text-align:left!important;
}
.products-hero-content .actions{justify-content:flex-start!important}
.products-hero h1{max-width:9.5ch!important;text-wrap:balance!important}
.product-hero-object.product-hero-real{
  z-index:2!important;
  right:max(36px,calc((100vw - 1400px)/2))!important;
  bottom:38px!important;
  width:min(36vw,500px)!important;
  height:470px!important;
}
.product-hero-real img{max-width:100%!important;max-height:100%!important}
@media(max-width:1180px){
  .products-hero-content{max-width:58vw!important;margin-left:34px!important}
  .product-hero-object.product-hero-real{right:-18px!important;width:38vw!important;height:430px!important;opacity:.78!important}
}
@media(max-width:760px){
  .products-hero{min-height:780px!important;padding-bottom:270px!important}
  .products-hero-content{max-width:none!important;margin:0!important;align-items:center!important;text-align:center!important}
  .products-hero-content .actions{justify-content:center!important}
  .products-hero h1{max-width:12ch!important}
  .product-hero-object.product-hero-real{right:50%!important;bottom:-18px!important;width:330px!important;height:285px!important;transform:translateX(50%)!important;opacity:.36!important}
}

/* 3. Lighting Guide live preview now follows the Technology optical-preview language. */
.v80-guide-optical-stage{min-height:590px!important}
.v80-guide-fixture img{object-fit:contain!important}

/* 4. Technology optical preview: remove the visual gap above the luminaire.
      The supplied PNG has transparent top padding, so the visible product is lifted independently of the track. */
.v60-optical-fixture img{
  transform:translateY(-17px) scale(1.04)!important;
  transform-origin:50% 50%!important;
}
.v60-optical-beam{top:160px!important}
@media(max-width:720px){
  .v60-optical-fixture img{transform:translateY(-12px) scale(1.03)!important}
  .v60-optical-beam{top:202px!important}
}

/* Products page footer begins directly with the main footer after V80 CTA removal. */
.products-hero ~ .site-footer .footer-main{border-top:1px solid rgba(168,213,111,.12)}

/* =====================================================================
   OSTROLUXX V81 — WHATSAPP ICON DISC LIGHT-GREEN FIX
   ===================================================================== */
/* The inner circular disc was still forced white by older V77/V80 rules.
   Keep the existing WhatsApp glyph, but make its disc Ostroluxx light green. */
.ostro-whatsapp-widget__icon{
  background:#A8D56F!important;
  border:1px solid rgba(20,50,29,.08)!important;
  box-shadow:none!important;
}

/* =====================================================================
   OSTROLUXX V82 — WHATSAPP ORIGINAL-GREEN ICON FIX
   ===================================================================== */
/* Keep the widget in Ostroluxx light green, but use WhatsApp's original
   brand green (#25D366) for the icon itself. The inner disc is kept very
   light so the green glyph remains clearly visible on every display. */
.ostro-whatsapp-widget__icon{
  background:#EAF9EF!important;
  border:1px solid rgba(37,211,102,.18)!important;
  color:#25D366!important;
}
.ostro-whatsapp-widget__icon svg{
  color:#25D366!important;
  fill:#25D366!important;
}
.ostro-whatsapp-widget__icon svg path,
.ostro-whatsapp-widget__icon svg circle{
  fill:#25D366!important;
  stroke:#25D366!important;
}


/* =====================================================================
   OSTROLUXX V83 — VISIBLE WHATSAPP LOGO ICON
   ===================================================================== */
/* Add a real WhatsApp mark to the floating widget. The button remains
   Ostroluxx light green; the icon uses WhatsApp brand green #25D366. */
.ostro-whatsapp-widget__icon{
  position:relative!important;
  background:#EAF9EF!important;
  border:1px solid rgba(37,211,102,.20)!important;
  color:#25D366!important;
  overflow:hidden!important;
}
.ostro-whatsapp-widget__icon svg{
  display:none!important;
}
.ostro-whatsapp-widget__icon::before{
  content:""!important;
  display:block!important;
  width:22px!important;
  height:22px!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='%2325D366' d='M16.04 3C8.85 3 3 8.75 3 15.82c0 2.27.61 4.49 1.77 6.43L3 29l6.95-1.79a13.2 13.2 0 0 0 6.08 1.48h.01C23.23 28.69 29 22.94 29 15.87 29 8.8 23.23 3 16.04 3Zm0 23.53h-.01a11.05 11.05 0 0 1-5.63-1.53l-.4-.24-4.12 1.06 1.1-3.96-.26-.41a10.65 10.65 0 0 1-1.66-5.63c0-5.9 4.92-10.7 10.98-10.7 6.05 0 10.96 4.8 10.96 10.75 0 5.9-4.91 10.66-10.96 10.66Zm6.02-8.01c-.33-.16-1.96-.95-2.26-1.06-.3-.11-.52-.16-.74.16-.22.32-.85 1.06-1.04 1.28-.19.21-.38.24-.71.08-.33-.16-1.39-.5-2.65-1.61a9.87 9.87 0 0 1-1.84-2.25c-.19-.32-.02-.49.14-.65.15-.14.33-.37.49-.56.16-.19.22-.32.33-.53.11-.21.05-.4-.03-.56-.08-.16-.74-1.75-1.01-2.39-.27-.64-.54-.55-.74-.56h-.63c-.22 0-.58.08-.88.4-.3.32-1.15 1.1-1.15 2.68s1.18 3.11 1.34 3.32c.16.21 2.32 3.47 5.62 4.87.79.33 1.4.52 1.88.66.79.24 1.5.21 2.07.13.63-.09 1.96-.78 2.23-1.54.27-.76.27-1.41.19-1.54-.08-.13-.3-.21-.63-.37Z'/%3E%3C/svg%3E")!important;
}
@media (max-width:760px){
  .ostro-whatsapp-widget__icon::before{width:23px!important;height:23px!important}
}
