/* PASS 06 — no new page architecture, packaging changes or regenerated product images. */
/* A separate upper-image-only layer lowers peak intensity by 10%. */
.hero-image-softener{
  position:absolute;inset:0 0 auto;height:var(--hero-soften-end,68%);
  z-index:-2;pointer-events:none;opacity:var(--hero-image-reduction,.1);
  background:linear-gradient(to bottom,#030d16 0%,#030d16 58%,transparent 100%);
}
/* Keep the existing hero shade and the entire use-strip fade untouched. */
.glass-hero .hero-description .hero-description-line{display:block;white-space:nowrap}
@media(max-width:600px){
  .glass-hero .hero-description .hero-description-line:first-child{white-space:normal}
  .glass-hero .hero-description .hero-description-line:last-child{white-space:nowrap}
}
/* The plus sign is a context-aware point, not a permanent sewn-edge label. */
.seam-hotspot[data-callout=artwork]{left:58%;top:52%;bottom:auto;transform:translate(-50%,-50%)}
.seam-hotspot[data-callout=weave]{left:83%;top:65%;bottom:auto;transform:translate(-50%,-50%)}
.seam-hotspot[data-callout=artwork]>span,.seam-hotspot[data-callout=weave]>span{left:calc(100% + 1px);right:auto;width:23px}
.seam-hotspot[data-callout=artwork] b,.seam-hotspot[data-callout=weave] b{
  left:calc(100% + 29px);right:auto;background:#071018ec;padding:6px 8px;
  border:1px solid #99aec129;border-radius:4px;line-height:1.4;white-space:normal;
  width:max-content;max-width:128px;text-align:left;pointer-events:none;
}
.seam-hotspot[data-callout=weave]>span{left:auto;right:calc(100% + 1px)}
.seam-hotspot[data-callout=weave] b{left:auto;right:calc(100% + 29px)}
/* Direct, sharply sourced hand/rifle crop — contain the entire selected detail. */
.detail-inspector[data-detail=artwork] .inspector-media{aspect-ratio:1.45;background:#151d29}
.detail-inspector[data-detail=artwork] .inspector-media>#detail-image{object-fit:cover;object-position:center;padding:0 0 30px}
/* A square-framed photo lets the upper-right fabric run off the frame naturally. */
.detail-inspector[data-detail=weave] .inspector-media{aspect-ratio:1;background:#282c31}
.detail-inspector[data-detail=weave] .inspector-media>#detail-image{object-fit:cover;object-position:right bottom;padding:0 0 30px}
.weave-loupe{
  position:absolute;top:18px;right:18px;width:clamp(104px,12vw,154px);aspect-ratio:1;
  border:2px solid #b7c4d1;border-radius:50%;overflow:hidden;margin:0;
  box-shadow:0 0 0 5px #101b2c99,0 8px 24px #0006;background:#0d2340;
  z-index:2;pointer-events:none;
}
.detail-inspector .inspector-media .weave-loupe img{
  position:absolute;inset:0;width:100%;height:100%;padding:0;
  object-fit:cover;object-position:center;transform:none;
}
.weave-loupe figcaption{
  position:absolute;left:0;right:0;bottom:0;text-align:center;background:#071321e6;
  color:#dce5ee;font-size:7px;line-height:1.4;letter-spacing:.12em;padding:9px 0 13px;
}
@media(max-width:1080px){
  .weave-loupe{width:113px;top:15px;right:15px}
  .seam-hotspot[data-callout=artwork] b{max-width:102px;font-size:8px}
}
@media(max-width:600px){
  .weave-loupe{width:clamp(104px,31vw,134px);top:16px;right:16px}
  .detail-inspector[data-detail=artwork] .inspector-media{aspect-ratio:1.38}
  .detail-inspector[data-detail=weave] .inspector-media{aspect-ratio:1}
  .seam-hotspot[data-callout=artwork] b{left:31px;max-width:102px;font-size:8px}
  .seam-hotspot[data-callout=weave] b{left:auto;right:31px}
}
@media(max-width:360px){
  .weave-loupe{width:98px;top:12px;right:12px}
  .weave-loupe figcaption{font-size:6px;padding-bottom:11px}
  .seam-hotspot[data-callout=artwork] b{max-width:81px;font-size:7px;padding:5px 6px}
}
