/* Customer-photo Coverflow lives on the homepage, independently of product photos. */
.product-main-photo{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px}
.product-main-photo>button{grid-column:1/-1}
.product-main-photo>figcaption{grid-column:1;grid-row:2}
.product-photo-tools{grid-column:2;grid-row:2;align-self:center;margin:8px 0}
.home-customer-gallery{background:#f3f6fa;border-block:1px solid var(--line)}
.home-customer-gallery .section-heading>p{max-width:440px;color:var(--muted)}
.customer-coverflow{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:radial-gradient(ellipse at 50% 30%,#fff,#e6edf3)}
.customer-photo-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:28px}
.customer-slide{min-width:0;margin:0;border:1px solid #d3dee8;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 30px #1a222e16}
.customer-slide[hidden]{display:none}
.customer-photo-frame{position:relative;display:block;aspect-ratio:3/2;width:100%;padding:0;border:0;background:#edf2f7;overflow:hidden;cursor:zoom-in}
.customer-photo-frame>picture,.customer-photo-frame>.photo-annotated{display:block;height:100%}
.customer-photo-frame img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain}
.customer-photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#637991;cursor:default;background:linear-gradient(135deg,#e4edf2,#f5f8fa)}
.customer-photo-placeholder svg{width:56px;height:56px;fill:none;stroke:#8ca1b4;stroke-width:1.4}
.customer-photo-placeholder span{font-size:.875rem}
.customer-slide:nth-child(2) .customer-photo-placeholder{background:linear-gradient(135deg,#f1e7db,#faf6f0)}
.customer-slide:nth-child(3) .customer-photo-placeholder{background:linear-gradient(135deg,#deebe2,#f3f8f4)}
.customer-photo-caption{margin:0;padding:20px 24px;text-align:center;font-size:1rem;font-weight:600;color:var(--ink)}
.customer-coverflow.is-enhanced .customer-photo-list{position:relative;display:block;perspective:1200px;isolation:isolate;padding:24px 0;touch-action:pan-y;outline-offset:-4px}
.customer-coverflow.is-enhanced .customer-slide{position:absolute;left:50%;top:24px;width:min(54%,560px);margin:0;opacity:.62;transform:translateX(-50%);transition:transform .35s ease,opacity .35s ease;cursor:pointer}
.customer-coverflow.is-enhanced .customer-slide[data-offset="0"]{position:relative;top:auto;z-index:5;opacity:1;transform:translateX(-50%)}
.customer-coverflow.is-enhanced .customer-slide[data-offset="-1"]{z-index:3;transform:translateX(-82%) scale(.86) rotateY(13deg) rotateZ(-7deg)}
.customer-coverflow.is-enhanced .customer-slide[data-offset="1"]{z-index:3;transform:translateX(-18%) scale(.86) rotateY(-13deg) rotateZ(7deg)}
.customer-coverflow.is-enhanced .customer-slide[data-offset="-2"]{z-index:2;opacity:.42;transform:translateX(-108%) scale(.72) rotateY(18deg) rotateZ(-12deg)}
.customer-coverflow.is-enhanced .customer-slide[data-offset="2"]{z-index:2;opacity:.42;transform:translateX(8%) scale(.72) rotateY(-18deg) rotateZ(12deg)}
.customer-gallery-controls{display:flex;justify-content:center;align-items:center;gap:18px;padding:0 20px 24px}
.customer-gallery-controls[hidden]{display:none}
.customer-gallery-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #c6d3df;border-radius:50%;background:#fff;color:var(--ink);font-size:1.25rem;cursor:pointer}
.customer-gallery-controls span{min-width:60px;text-align:center;color:var(--muted);font-size:.875rem;font-variant-numeric:tabular-nums}
.magnifier-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px 14px;border:1px solid #cbd6e2;border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}
.magnifier-toggle::before{content:"";width:13px;height:13px;border:1.5px solid currentColor;border-radius:50%;box-shadow:5px 6px 0 -4px currentColor;display:block}
.magnifier-toggle[aria-pressed=true]{background:#fff0df;border-color:var(--orange)}
.magnifier-host{position:relative;display:block}
.magnifier-host.magnifier-pinned{touch-action:none}
.magnifier-host.magnifier-visible{cursor:none}
.magnifier-host>.magnifier-lens{position:absolute;z-index:8;display:block;overflow:hidden;pointer-events:none;border:2px solid var(--orange);border-radius:50%;background:#fff;box-shadow:0 3px 18px #1a222e38;contain:strict}
.magnifier-host>.magnifier-lens[hidden]{display:none}
.magnifier-lens>.magnifier-content{position:absolute;display:block;max-width:none;pointer-events:none}
.magnifier-content>picture,.magnifier-content>.photo-annotated{display:block;width:100%;height:100%}
.magnifier-content img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;max-width:none!important;aspect-ratio:auto!important;border-radius:0!important}
.gallery-dialog>.gallery-magnifier-toggle{position:absolute;z-index:3;top:7px;right:60px;min-height:38px}
@media(max-width:560px){
 .product-photo-tools .magnifier-toggle{min-height:36px;padding:6px 10px;font-size:.75rem}
 .customer-coverflow{border-radius:18px}
 .customer-coverflow.is-enhanced .customer-slide{width:78%}
 .customer-photo-placeholder svg{width:44px;height:44px}
 .customer-photo-placeholder span{font-size:.75rem}
 .customer-photo-caption{padding:16px;font-size:.9375rem}
 .customer-photo-list{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.customer-coverflow.is-enhanced .customer-slide{transition:none}}


/* Preserve the current photo facts below the caption and magnifier. */
.product-main-photo>.product-photo-facts{grid-column:1/-1;grid-row:3}
