/* SASDAS MARBLE — cinematic single-product hero. Copy left, product panel right, ambient ground from the photo itself. */
.hs{--ac:#c9a961;--callbar:0px;position:relative;height:100svh;min-height:620px;overflow:hidden;background:#000;isolation:isolate;
  user-select:none;-webkit-user-select:none}
.hs *{box-sizing:border-box}
.hs-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}

/* ambient ground — a blurred copy of the current product photo tints the whole hero */
.hs-amb{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.hs-amb i{position:absolute;inset:-14%;display:block;background-size:cover;background-position:50% 42%;
  filter:blur(72px) saturate(1.2) brightness(.6);transform:scale(1.16);opacity:0;transition:opacity 1.1s ease}
.hs-amb i.on{opacity:.42}
.hs-amb::after{content:"";position:absolute;inset:0;
  background:radial-gradient(110% 80% at 72% 45%,rgba(0,0,0,.12),rgba(0,0,0,.78) 78%)}

.hs-stage{position:absolute;inset:0;z-index:2}
.hs-slide{position:absolute;inset:0;display:grid;align-content:center;justify-items:start;
  grid-template-columns:minmax(0,min(46%,560px));
  padding:clamp(104px,13vh,150px) clamp(24px,4vw,72px) calc(clamp(76px,11vh,116px) + var(--callbar));
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .45s ease,visibility .45s}
.hs-slide[aria-current="true"]{opacity:1;visibility:visible;pointer-events:auto}

/* product panel — right side, full hero height, whole piece in frame */
.hs-plate{position:absolute;top:0;right:0;bottom:0;margin:0;width:min(54%,1040px);
  display:flex;align-items:center;justify-content:center;overflow:hidden;background:none;
  padding:clamp(56px,7vh,92px) clamp(16px,2.4vw,44px) calc(clamp(84px,10vh,116px) + var(--callbar));
  transform:translateY(20px) scale(.985);opacity:0;transition:transform 900ms cubic-bezier(.22,1,.32,1),opacity 700ms ease}
.hs-plate picture{display:flex;width:100%;height:100%;align-items:center;justify-content:center}
.hs-plate img{width:100%;height:100%;object-fit:contain;object-position:50% 50%;display:block;
  filter:drop-shadow(0 30px 70px rgba(0,0,0,.55))}
.hs-slide[aria-current="true"] .hs-plate{transform:none;opacity:1}
.hs.dir-prev .hs-slide:not([aria-current="true"]) .hs-plate{transform:translateY(-20px) scale(.985)}

/* copy */
.hs-copy{min-width:0;max-width:46ch}
.hs-kicker,.hs-title,.hs-desc,.hs-act{opacity:0;transform:translateY(14px);
  transition:opacity .6s ease,transform .8s cubic-bezier(.22,1,.32,1)}
.hs-slide[aria-current="true"] .hs-kicker{opacity:1;transform:none;transition-delay:.08s}
.hs-slide[aria-current="true"] .hs-title{opacity:1;transform:none;transition-delay:.16s}
.hs-slide[aria-current="true"] .hs-desc{opacity:1;transform:none;transition-delay:.24s}
.hs-slide[aria-current="true"] .hs-act{opacity:1;transform:none;transition-delay:.32s}
.hs-kicker{margin:0 0 clamp(16px,2vh,26px);font-family:var(--font-mono);font-size:10px;letter-spacing:2.4px;
  text-transform:uppercase;color:var(--ac)}
.hs-title{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(34px,4.4vw,68px);line-height:.98;
  letter-spacing:clamp(2px,.32vw,5px);text-transform:uppercase;color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.5)}
.hs-desc{margin:clamp(18px,2.4vh,30px) 0 0;max-width:42ch;font-family:var(--font-text,var(--font-mono));
  font-size:clamp(14px,1.05vw,16px);line-height:1.7;color:rgba(255,255,255,.82);text-wrap:pretty}
.hs-act{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(10px,1.2vw,16px);margin-top:clamp(24px,3.4vh,42px)}
.hs-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 clamp(16px,1.6vw,26px);
  border:1px solid rgba(255,255,255,.5);border-radius:9999px;background:none;
  font-family:var(--font-mono);font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:#fff;text-decoration:none;
  white-space:nowrap;transition:border-color .3s ease,opacity .3s ease}
.hs-btn.wa{border-color:var(--ac)}
.hs-btn:hover{border-color:#fff;opacity:.9}
.hs-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-family:var(--font-mono);font-size:11px;
  letter-spacing:2.2px;text-transform:uppercase;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.34);
  padding-bottom:2px;transition:border-color .3s ease,opacity .3s ease}
.hs-link:hover{border-color:var(--ac);opacity:.9}

/* specs — under the copy, left column */
.hs-spec{margin:clamp(26px,4vh,48px) 0 0;display:grid;grid-auto-flow:column;grid-template-columns:repeat(3,minmax(0,auto));
  gap:clamp(24px,3vw,52px);text-align:left;justify-self:start;padding-top:clamp(16px,2.2vh,26px);
  border-top:1px solid rgba(255,255,255,.16);min-width:0}
.hs-spec>div{opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .8s cubic-bezier(.22,1,.32,1)}
.hs-slide[aria-current="true"] .hs-spec>div{opacity:1;transform:none}
.hs-slide[aria-current="true"] .hs-spec>div:nth-child(1){transition-delay:.3s}
.hs-slide[aria-current="true"] .hs-spec>div:nth-child(2){transition-delay:.38s}
.hs-slide[aria-current="true"] .hs-spec>div:nth-child(3){transition-delay:.46s}
.hs-spec dt{font-family:var(--font-mono);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.7)}
.hs-spec dd{margin:8px 0 0;font-family:var(--font-display);font-weight:400;font-size:clamp(17px,1.6vw,24px);
  letter-spacing:1.5px;text-transform:uppercase;color:#fff;white-space:nowrap}

/* chrome */
.hs-nav{position:absolute;right:clamp(24px,4vw,72px);bottom:calc(clamp(24px,3.5vh,44px) + var(--callbar));z-index:5;
  display:flex;align-items:center;gap:14px}
.hs-arrow{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.34);border-radius:50%;
  background:none;color:#fff;cursor:pointer;transition:border-color .3s ease,opacity .3s ease}
.hs-arrow:hover{border-color:#fff}
.hs-arrow svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.hs-arrow:focus-visible,.hs-thumb:focus-visible{outline:2px solid var(--ac);outline-offset:3px}
.hs-count{margin:0 0 0 6px;font-family:var(--font-mono);font-size:11px;letter-spacing:2px;color:rgba(255,255,255,.72)}
.hs-count b{font-weight:400;color:#fff}

.hs-thumb{position:absolute;right:calc(clamp(24px,4vw,72px) + 150px);bottom:calc(clamp(24px,3.5vh,44px) + var(--callbar));z-index:5;
  width:clamp(64px,5.4vw,84px);aspect-ratio:4/5;padding:0;border:1px solid rgba(255,255,255,.28);background:#0a0a0a;
  overflow:hidden;cursor:pointer;transition:border-color .3s ease}
.hs-thumb:hover{border-color:#fff}
.hs-thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:.82;transition:opacity .4s ease}
.hs-thumb:hover img{opacity:1}
.hs-thumb span{position:absolute;left:0;right:0;bottom:0;padding:5px 4px 6px;background:rgba(0,0,0,.62);
  font-family:var(--font-mono);font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:#fff}
.hs-tagline{display:none}

/* tablet */
@media (max-width:1024px){
  .hs{--callbar:84px}
  .hs-slide{grid-template-columns:minmax(0,52%);padding:clamp(88px,11vh,118px) clamp(22px,3.4vw,44px) calc(clamp(40px,6vh,72px) + var(--callbar))}
  .hs-plate{width:50%;padding:clamp(70px,9vh,96px) clamp(14px,2vw,28px) calc(clamp(78px,9vh,104px) + var(--callbar))}
  .hs-thumb{display:none}
  .hs-desc{margin-top:14px;font-size:14px;line-height:1.6;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .hs-act{margin-top:20px;gap:10px}
  .hs-btn{padding:0 16px;font-size:10px;letter-spacing:1.6px}
  .hs-link{display:none}
  .hs-spec{gap:clamp(16px,2.6vw,30px)}
  .hs-spec dt{font-size:10px;letter-spacing:1.6px}
  .hs-spec dd{margin-top:5px;font-size:16px;letter-spacing:1px}
  .hs-thumb{display:none}
}

/* phones — full-bleed product on top, whole piece in frame, copy beneath */
@media (max-width:900px){
  .hs{height:auto;min-height:100svh;display:flex}
  .hs-amb i.on{opacity:.55}
  .hs-amb::after{background:linear-gradient(180deg,rgba(0,0,0,.52) 0,rgba(0,0,0,.2) 26%,rgba(0,0,0,.5) 58%,rgba(0,0,0,.88) 100%)}
  .hs-stage{position:relative;inset:auto;width:100%;display:grid}
  .hs-slide{position:relative;inset:auto;grid-area:1/1;display:flex;flex-direction:column;align-items:stretch;
    justify-items:stretch;grid-template-columns:none;gap:0;min-height:100svh;
    padding:clamp(64px,9vh,84px) 0 calc(20px + var(--callbar))}
  .hs-plate{position:relative;top:auto;right:auto;bottom:auto;order:1;width:100%;flex:1 1 auto;
    min-height:46svh;padding:0 26px 8px}
  .hs-plate img{object-position:50% 50%;filter:drop-shadow(0 24px 48px rgba(0,0,0,.5))}
  .hs-copy{order:2;max-width:none;flex:0 0 auto;padding:0 22px;margin-top:18px;position:relative;z-index:2}
  .hs-spec{order:3;flex:0 0 auto;margin:18px 22px 0;padding-top:14px;
    grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;justify-self:stretch}
  .hs-spec dt{font-size:10px;letter-spacing:1.6px}
  .hs-spec dd{margin-top:5px;font-size:15px;letter-spacing:1px;white-space:normal}
  .hs-kicker{margin-bottom:8px;font-size:10px;letter-spacing:2px}
  .hs-title{font-size:clamp(28px,8.2vw,40px);letter-spacing:2px;line-height:.96}
  .hs-desc{margin-top:10px;font-size:13px;line-height:1.6;max-width:none;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .hs-act{margin-top:16px;gap:8px;flex-wrap:nowrap}
  .hs-btn{flex:1 1 0;min-width:0;padding:0 12px;font-size:10px;letter-spacing:1.4px}
  .hs-link{display:none}
  .hs-nav{left:18px;top:74px;bottom:auto;gap:10px}
  .hs-arrow{width:44px;height:44px;background:rgba(0,0,0,.34);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
  .hs-count{margin-left:2px;padding:4px 8px;border-radius:9999px;background:rgba(0,0,0,.34);font-size:10px}
  .hs-thumb{display:none}
}
/* small phones — two nowrap CTAs overflowed a 320px viewport; stack them instead */
@media (max-width:400px){
  .hs-act{flex-wrap:wrap;gap:10px}
  .hs-btn{flex:1 1 100%;font-size:11px;letter-spacing:1.6px;padding:0 14px}
  .hs-spec{gap:8px}
  .hs-spec dd{font-size:14px;letter-spacing:.5px}
}
@media (max-width:900px) and (max-height:640px){
  .hs-plate{min-height:38svh}
  .hs-desc{display:none}
}
@media (min-width:901px) and (max-height:700px){
  .hs{min-height:0}
  .hs-slide{padding-top:86px}
  .hs-title{font-size:clamp(26px,3.2vw,42px)}
  .hs-desc{margin-top:12px;font-size:13.5px;line-height:1.55;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .hs-act{margin-top:16px}
  .hs-spec{margin-top:24px}
  .hs-spec dd{font-size:16px}
}
@media (prefers-reduced-motion:reduce){
  .hs-plate,.hs-kicker,.hs-title,.hs-desc,.hs-act,.hs-spec>div{transition-duration:1ms;transform:none}
}
