.product-curve-hero{
  --curve-paper:#f8f2ec;
  position:relative;
  min-height:clamp(720px,78vw,900px);
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at center,rgba(234,220,206,.13) 0 1px,transparent 1.5px) 0 0/18px 18px,
    linear-gradient(145deg,#20130f 0%,#34231c 50%,#241711 100%);
  color:#fff;
}
.product-curve-hero,.product-curve-hero *{box-sizing:border-box}
.product-curve-hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 48%,rgba(117,82,61,.25),transparent 37%),
    linear-gradient(90deg,rgba(0,0,0,.22),transparent 18% 82%,rgba(0,0,0,.22));
}
.product-curve-hero__heading{
  position:relative;
  z-index:5;
  max-width:1050px;
  margin:0 auto;
  padding:clamp(52px,6vw,82px) 28px 0;
  text-align:center;
}
.product-curve-hero__heading .eyebrow{margin:0 0 18px;color:#91ae70}
.product-curve-hero__heading h1{
  margin:0;
  color:#fff;
  font:500 clamp(52px,6.4vw,94px)/.91 'Playfair Display',serif;
  letter-spacing:-.058em;
  text-wrap:balance;
}
.product-curve-carousel{
  position:relative;
  z-index:2;
  height:clamp(310px,34vw,435px);
  margin-top:clamp(12px,2.3vw,30px);
  cursor:grab;
  touch-action:pan-y;
  user-select:none;
  -webkit-user-select:none;
}
.product-curve-carousel.is-dragging{cursor:grabbing}
.product-curve-carousel__stage{
  position:absolute;
  inset:0;
  overflow:hidden;
  perspective:1150px;
  transform-style:preserve-3d;
}
.product-curve-card{
  position:absolute;
  top:50%;
  left:50%;
  width:clamp(150px,14vw,205px);
  aspect-ratio:3/4;
  overflow:hidden;
  border:1px solid rgba(234,220,206,.62);
  border-radius:clamp(9px,1vw,15px);
  background:var(--curve-paper);
  box-shadow:0 18px 42px rgba(0,0,0,.45);
  color:#34231c;
  text-decoration:none;
  transform-origin:center center;
  will-change:transform,opacity;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.product-curve-card:focus-visible{outline:3px solid #91ae70;outline-offset:5px}
.product-curve-card__image{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  padding:7%;
  background:linear-gradient(145deg,#fff 0%,#f5ebe2 100%);
  pointer-events:none;
}
.product-curve-card__name{
  position:relative;
  z-index:2;
  display:none;
  align-items:center;
  min-height:43px;
  padding:8px 10px;
  border-top:1px solid rgba(117,82,61,.18);
  background:#fff;
  color:#34231c;
  font:500 9px/1.25 'DM Mono',monospace;
  letter-spacing:.025em;
  pointer-events:none;
}
.product-curve-card__veil{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(120deg,rgba(255,255,255,.25),transparent 27% 74%,rgba(52,35,28,.08));
}
.product-curve-carousel__hint{
  position:absolute;
  bottom:4px;
  left:50%;
  z-index:8;
  margin:0;
  transform:translateX(-50%);
  color:#c9a98d;
  white-space:nowrap;
  font:500 10px/1 'DM Mono',monospace;
  letter-spacing:.12em;
}
.product-curve-carousel__hint span{color:#91ae70;font-size:14px}
.product-curve-hero__footer{
  position:relative;
  z-index:6;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:22px;
  max-width:740px;
  margin:0 auto;
  padding:8px 28px clamp(54px,6vw,82px);
  text-align:center;
}
.product-curve-hero__footer p{margin:0;color:#eadcce;font-size:clamp(14px,1.4vw,17px);line-height:1.65}
.product-curve-hero__cta{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:34px;
  min-width:280px;
  padding:17px 20px;
  border:1px solid #eadcce;
  background:#f8f2ec;
  color:#34231c;
  text-decoration:none;
  font:600 11px/1 'DM Mono',monospace;
  letter-spacing:.09em;
  transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease;
}
.product-curve-hero__cta span{color:#5f7f3f;font-size:18px;line-height:0}
.product-curve-hero__cta:hover{transform:translateY(-3px);border-color:#91ae70;background:#91ae70;color:#20130f}
.product-curve-hero__cta:hover span{color:#20130f}
@media(max-width:700px){
  .product-curve-hero{min-height:700px}
  .product-curve-hero__heading{padding:43px 20px 0}
  .product-curve-hero__heading .eyebrow{max-width:310px;margin:0 auto 14px;white-space:normal;font-size:9px;line-height:1.45}
  .product-curve-hero__heading h1{font-size:clamp(41px,11.2vw,51px);line-height:.94}
  .product-curve-carousel{height:302px;margin-top:13px}
  .product-curve-card{display:flex;flex-direction:column;width:128px;border-radius:10px;box-shadow:0 14px 30px rgba(0,0,0,.45)}
  .product-curve-card__image{height:calc(100% - 38px);padding:6%}
  .product-curve-card__name{display:flex;min-height:38px;padding:7px 8px;font-size:8px}
  .product-curve-carousel__hint{bottom:0;font-size:8px}
  .product-curve-hero__footer{gap:18px;padding:15px 22px 48px}
  .product-curve-hero__footer p{width:100%;max-width:410px;font-size:13px;line-height:1.55}
  .product-curve-hero__cta{width:100%;max-width:335px;min-width:0;padding:16px 18px}
}
@media(prefers-reduced-motion:reduce){
  .product-curve-hero__cta{transition:none}
}
