/* Shared image hotspot: the outer 44px target does not obscure the image. */
.sezen-product-hotspot {
  position:absolute;
  left:var(--hotspot-x);
  top:var(--hotspot-y);
  z-index:3;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  padding:0;
  transform:translate(-50%,-50%);
  border:0;
  border-radius:50%;
  background:transparent;
  color:#241d17;
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.sezen-product-hotspot-face {
  position:relative;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid rgba(45,35,27,.23);
  border-radius:50%;
  background:rgba(255,253,249,.96);
  box-shadow:0 3px 13px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.3);
  transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;
}
.sezen-product-hotspot-face::after {
  content:"";
  position:absolute;
  inset:-5px;
  border:1px solid rgba(255,255,255,.78);
  border-radius:50%;
  animation:sezen-hotspot-ring 3.2s ease-out infinite;
  pointer-events:none;
}
.sezen-product-hotspot-plus,
.sezen-product-hotspot-plus::after { display:block;content:"";background:currentColor;border-radius:1px; }
.sezen-product-hotspot-plus { width:12px;height:1.5px;position:relative; }
.sezen-product-hotspot-plus::after { position:absolute;width:1.5px;height:12px;left:5.25px;top:-5.25px; }
.sezen-product-hotspot:hover .sezen-product-hotspot-face,
.sezen-product-hotspot:focus-visible .sezen-product-hotspot-face { transform:scale(1.12);box-shadow:0 5px 18px rgba(0,0,0,.32),0 0 0 4px rgba(255,255,255,.44); }
.sezen-product-hotspot:active .sezen-product-hotspot-face { transform:scale(.94); }
.sezen-product-hotspot.is-active .sezen-product-hotspot-face,
.sezen-product-hotspot[aria-pressed=true] .sezen-product-hotspot-face { background:#352920;color:#fff;border-color:rgba(255,255,255,.9);box-shadow:0 5px 18px rgba(0,0,0,.32),0 0 0 4px rgba(255,255,255,.57); }
.sezen-product-hotspot:focus-visible { outline:2px solid #fff;outline-offset:2px; }
@keyframes sezen-hotspot-ring { 0% { transform:scale(.82);opacity:.65; } 75%,100% { transform:scale(1.38);opacity:0; } }

/* The controls live inside each slide's rendered image frame. */
[data-sezen-lookbook] .lookbook-image-frame { isolation:isolate; }
[data-sezen-lookbook] .sezen-look-controls { position:absolute;top:50%;left:clamp(5px,1.5vw,14px);right:clamp(5px,1.5vw,14px);bottom:auto;z-index:4;display:flex;justify-content:space-between;transform:translateY(-50%);pointer-events:none; }
[data-sezen-lookbook] .sezen-look-controls button { display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid rgba(255,255,255,.78);border-radius:50%;background:rgba(32,27,23,.42);color:#fff;box-shadow:0 3px 14px rgba(0,0,0,.18);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);pointer-events:auto;translate:0 var(--sezen-arrow-shift,0px);transition:background .2s ease,transform .2s ease,box-shadow .2s ease,translate .2s ease; }
[data-sezen-lookbook] .sezen-look-controls button:hover { background:rgba(32,27,23,.8);color:#fff;transform:scale(1.06);box-shadow:0 5px 18px rgba(0,0,0,.26); }
[data-sezen-lookbook] .sezen-look-chevron { display:block;width:9px;height:9px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);margin-left:-3px; }
[data-sezen-lookbook] [data-sezen-next] .sezen-look-chevron { margin-left:-4px; }
[data-sezen-lookbook] [data-sezen-prev] .sezen-look-chevron { transform:rotate(-135deg);margin-left:4px; }
@media(prefers-reduced-motion:reduce) {
  .sezen-product-hotspot-face,.sezen-product-hotspot-face::after,[data-sezen-lookbook] .sezen-look-controls button { animation:none;transition:none; }
}
/* Keep sold-out photography intact; the old opacity rule blended primary and hover photos. */
.product-card.is-sold-out .product-image-wrap .product-card-image.is-primary,
.product-card.is-sold-out:hover .product-image-wrap.has-hover-image .product-card-image.is-primary { opacity:1!important;transform:none!important; }
.product-card.is-sold-out .product-image-wrap .product-card-image.is-hover,
.product-card.is-sold-out:hover .product-image-wrap.has-hover-image .product-card-image.is-hover { opacity:0!important;transform:none!important; }
.product-card .sz-product-tag.is-out-of-stock,.sz-pdp-tags .sz-product-tag.is-out-of-stock {
  gap:8px;
  min-height:34px;
  padding:9px 13px;
  border:1px solid rgba(255,255,255,.92);
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  box-shadow:0 0 0 1px rgba(22,19,17,.35),0 7px 20px rgba(0,0,0,.32);
}
.product-card .sz-product-tag.is-out-of-stock::before,.sz-pdp-tags .sz-product-tag.is-out-of-stock::before {
  content:"";
  flex:0 0 6px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:currentColor;
}
@media(max-width:560px){.product-card .sz-product-tag.is-out-of-stock{min-height:31px;padding:7px 10px;font-size:10px;letter-spacing:.08em}}
.product-card.is-sold-out .quick-buy-btn { opacity:1;transform:none; }
.sz-product-tag[hidden] { display:none; }
.hero-slide:not(.is-active) { pointer-events:none; }
.hero-slide .sezen-product-hotspot.is-in-hero-text-zone { opacity:0; visibility:hidden; pointer-events:none; }
.commerce-campaign-line-saving { color:#76553b; font-weight:600; }
.commerce-campaign-savings,.commerce-campaign-next { border:1px solid rgba(129,94,65,.22); background:#f9f5ee; border-radius:12px; padding:12px 14px; color:#5d4634; }
.commerce-campaign-savings { display:flex; flex-wrap:wrap; align-items:center; gap:4px 10px; justify-content:space-between; }
.commerce-campaign-savings small { flex-basis:100%; }
.commerce-campaign-next { font-size:.9rem; }

/* Give the mobile hero its own header row so the logo stays off the product photo. */
@media(max-width:720px){
  body:has([data-hero-slider]) .site-header{background:rgba(255,253,248,.97)!important;color:#211b17!important;border-color:#e9dfd3!important;box-shadow:0 8px 24px rgba(31,23,17,.08)}
  body:has([data-hero-slider]) .site-header:not(.is-solid):not(.is-locked-solid) .icon-btn{color:#211b17!important}
  body:has([data-hero-slider]) .hero-slider{margin-top:94px!important}
}

