.product-site{background:#f1f0eb}
.product-nav{border-bottom:1px solid var(--line)}
.back-link{display:flex;align-items:center;gap:.65rem;color:#65645f;font-size:.68rem}.back-link:hover{color:var(--text)}
.compact-links{display:flex;align-items:center;gap:1.3rem}.compact-links>a{color:#65645f;font-size:.68rem}.compact-links>a:hover{color:#111}
.product-detail{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(390px,.75fr);align-items:start;min-height:calc(100vh - 77px)}
.product-gallery{position:sticky;top:0;align-self:start;display:grid;grid-template-columns:1fr 94px;width:100%;height:clamp(620px,calc(100vh - 77px),760px);height:clamp(620px,calc(100svh - 77px),760px);min-height:0;padding:2rem;border-right:1px solid var(--line);background:#e6e5df}
.admin-bar .product-gallery{top:32px}
.detail-canvas{position:relative;display:grid;place-items:center;overflow:hidden;border:1px solid #d1d0c9;border-radius:1.3rem;background:radial-gradient(circle at 52% 42%,#f8f7f2 0,#e1e0da 58%,#d5d4ce 100%)}
.detail-canvas::after{content:"";position:absolute;right:24%;bottom:14%;left:24%;height:6%;border-radius:50%;background:rgba(47,46,42,.18);filter:blur(18px)}
.detail-canvas .detail-garment{z-index:2;width:min(48%,390px);height:50%;filter:drop-shadow(0 35px 25px rgba(30,29,26,.24));transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .4s ease}
.detail-canvas:hover .detail-garment{transform:scale(1.035);filter:drop-shadow(0 40px 28px rgba(30,29,26,.3))}
.detail-canvas[data-view="back"] .detail-garment{transform:rotateY(180deg)}
.detail-canvas[data-view="detail"] .detail-garment{transform:scale(1.65);filter:contrast(1.05) drop-shadow(0 25px 20px rgba(30,29,26,.2))}
.view-label,.material-note{position:absolute;z-index:4;color:#77766f;font-size:.56rem;letter-spacing:.12em;text-transform:uppercase}.view-label{top:1.3rem;left:1.3rem}.material-note{right:1.3rem;bottom:1.3rem}
.gallery-index{position:absolute;z-index:4;bottom:2.7rem;left:2.7rem;display:flex;align-items:center;gap:.55rem;color:#75746e;font-size:.55rem}.gallery-index i{display:block;width:46px;height:1px;background:#a8a7a1}
.gallery-thumbs{display:flex;flex-direction:column;justify-content:center;gap:.7rem;margin-left:1rem}.gallery-thumbs button{position:relative;display:grid;height:110px;place-items:center;overflow:hidden;border:1px solid #cecdc6;border-radius:.8rem;background:#deddd7;cursor:pointer}.gallery-thumbs button.active{border-color:#252522}.gallery-thumbs .garment{width:48px;height:55px;filter:none}.gallery-thumbs b{position:absolute;right:0;bottom:.45rem;left:0;color:#77766f;font-size:.49rem;font-weight:400;text-align:center}.detail-swatch{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#4b4a47,#171716);box-shadow:inset 8px 8px 14px rgba(255,255,255,.1)}
.gallery-360-button span{position:absolute;z-index:2;display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(20,20,18,.78);color:#fff;font-size:.7rem;letter-spacing:-.03em}.gallery-360-button img{opacity:.62}.gallery-360-button.active img{opacity:.35}
.product-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,6rem)}
.breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:clamp(3rem,9vh,7rem);color:#888781;font-size:.55rem;text-transform:lowercase}.breadcrumb b{color:#222;font-weight:400}
.product-label{margin:0 0 1rem;color:#77766f;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase}
.product-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line)}
.product-title-row h1{font-size:clamp(2.8rem,4.2vw,5rem);line-height:.95}.product-title-row p{margin:0 0 .35rem;font-size:1rem}
.product-description{max-width:520px;margin:1.35rem 0 2.4rem;color:#65645f;font-size:.75rem;line-height:1.75}
.option-block{padding:1rem 0;border-top:1px solid var(--line)}.option-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem;font-size:.62rem;text-transform:lowercase}.option-head b{font-weight:400;color:#6f6e68}.size-guide{border:0;background:transparent;color:#6f6e68;cursor:pointer;font-size:.58rem}
.colour-options{display:flex;gap:.6rem}.colour-options button{width:27px;height:27px;border:5px solid #f1f0eb;border-radius:50%;cursor:pointer;outline:1px solid transparent}.colour-options button.active{outline-color:#222}.grey-choice{background:#4a4946}.black-choice{background:#0d0d0c}
.size-options{display:grid;grid-template-columns:repeat(5,1fr);gap:.45rem}.size-options button{padding:.65rem;border:1px solid #c5c4bd;border-radius:.45rem;background:transparent;color:#6c6b65;cursor:pointer;font-size:.62rem;text-transform:uppercase;transition:.2s ease}.size-options button:hover,.size-options button.active{border-color:#151514;background:#151514;color:#f7f6f1}
.detail-add{display:flex;justify-content:space-between;margin-top:1rem;padding:1rem 1.2rem;border:0;border-radius:99px;background:#10100f;color:#f5f4ef;cursor:pointer;font-size:.7rem}.detail-add strong{font-weight:400}.detail-add:hover span{transform:translateX(4px)}.detail-add span{transition:transform .2s ease}.delivery-note{margin:.75rem 0 1.8rem;color:#74736e;font-size:.55rem}.delivery-note span{padding-right:.35rem;color:#68805e;font-size:.45rem}
.accordions{border-top:1px solid var(--line)}.accordions details{border-bottom:1px solid var(--line)}.accordions summary{display:flex;justify-content:space-between;padding:1rem 0;cursor:pointer;font-size:.65rem;list-style:none}.accordions summary::-webkit-details-marker{display:none}.accordions summary span{transition:transform .2s ease}.accordions details[open] summary span{transform:rotate(45deg)}.accordions details p{max-width:520px;margin:0;padding:0 2rem 1rem 0;color:#77766f;font-size:.62rem;line-height:1.7}
.product-manifesto{position:relative;padding:clamp(5rem,12vw,11rem) var(--pad);overflow:hidden;border-top:1px solid var(--line);background:#e7e6e0}.product-manifesto::after{content:"M";position:absolute;right:-.02em;bottom:-.28em;color:rgba(20,20,18,.035);font-size:40vw;font-weight:600;line-height:1}.product-manifesto p{position:relative;z-index:2;color:#77766f;font-size:.57rem;letter-spacing:.12em;text-transform:uppercase}.product-manifesto h2{position:relative;z-index:2;margin:1.4rem 0 2rem;font-size:clamp(3rem,7vw,8rem);font-weight:300;letter-spacing:-.07em;line-height:.88}.product-manifesto a{position:relative;z-index:2;display:inline-flex;gap:1rem;padding-bottom:.4rem;border-bottom:1px solid #333;font-size:.67rem}
.product-toast{position:fixed;z-index:20;right:1.5rem;bottom:1.5rem;padding:.8rem 1rem;border:1px solid #b8b7b0;border-radius:99px;background:#f8f7f2;box-shadow:0 12px 30px rgba(30,29,26,.14);font-size:.65rem;opacity:0;transform:translateY(15px);pointer-events:none;transition:.3s ease}.product-toast.show{opacity:1;transform:translateY(0)}
@media(max-width:980px){.product-detail{grid-template-columns:1fr}.product-gallery,.admin-bar .product-gallery{position:relative;top:auto;height:auto;min-height:680px;border-right:0;border-bottom:1px solid var(--line)}.product-copy{padding:4rem var(--pad)}.breadcrumb{margin-bottom:3rem}}
@media(max-width:620px){.compact-links>a:not(:first-child){display:none}.back-link span{display:none}.product-detail{display:block}.product-gallery{grid-template-columns:1fr;min-height:520px;padding:1rem}.detail-canvas{min-height:420px}.detail-canvas .detail-garment{width:58%;height:48%}.gallery-thumbs{display:grid;grid-template-columns:repeat(3,1fr);margin:1rem 0 0}.gallery-thumbs button{height:75px}.gallery-index{display:none}.material-note{display:none}.product-copy{padding:3rem 1.1rem}.breadcrumb{margin-bottom:2rem}.product-title-row h1{font-size:3.1rem}.product-description{margin-bottom:1.8rem}.product-manifesto{padding-block:6rem}}
.detail-canvas{border:0;background:#f7f4ee}.detail-canvas::after{display:none}.detail-product-image{position:relative;z-index:2;width:88%;height:82%;object-fit:contain;mix-blend-mode:normal;-webkit-mask-image:radial-gradient(ellipse at center,#000 66%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 66%,transparent 100%);filter:none;transition:transform .55s ease}.detail-canvas:hover .detail-product-image{transform:scale(1.025)}.detail-canvas[data-view="back"] .detail-product-image{transform:scaleX(-1)}.detail-canvas[data-view="detail"] .detail-product-image{transform:scale(1.55)}.gallery-thumbs button,.gallery-thumbs button.active{border:0;background:#f7f4ee}.gallery-thumbs img{width:92%;height:78%;object-fit:contain;mix-blend-mode:normal;-webkit-mask-image:radial-gradient(ellipse at center,#000 64%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 64%,transparent 100%)}.size-options{grid-template-columns:1fr}.grey-choice{background:#3c2f26}.black-choice{background:#0b0a09}
.detail-product-image.is-portrait{align-self:center;width:auto;height:min(620px,68vh);max-width:78%;max-height:none;margin-top:0}

/* Comfortable reading sizes */
.back-link,.compact-links>a{font-size:.76rem}.view-label,.material-note,.gallery-index,.breadcrumb,.product-label{font-size:.68rem}.gallery-thumbs b{font-size:.62rem}.product-description{color:#55544f;font-size:.88rem}.option-head{font-size:.74rem}.size-guide{font-size:.7rem}.size-options button{font-size:.72rem}.detail-add{font-size:.8rem}.delivery-note{font-size:.68rem}.delivery-note span{font-size:.58rem}.accordions summary{font-size:.8rem}.accordions details p{color:#5b5a55;font-size:.78rem}.product-manifesto p{font-size:.68rem}.product-manifesto a{font-size:.76rem}.product-toast{font-size:.75rem}

/* Compact closing statement */
.product-manifesto{padding:clamp(4.5rem,7vw,7rem) var(--pad)}.product-manifesto h2{font-size:clamp(3rem,6vw,6.25rem)}.product-manifesto::after{font-size:28vw}
@media(max-width:620px){.product-manifesto{padding-block:4.5rem}.product-manifesto h2{font-size:3.5rem}}
@media(max-width:620px){.detail-product-image.is-portrait{width:auto;height:360px;max-width:88%;margin-top:2rem}}

/* Preserve transparent photo edges and keep all three gallery photos reachable. */
.detail-product-image[src*="-original-img-"],.gallery-thumbs img[src*="-original-img-"]{-webkit-mask-image:none;mask-image:none}
@media(min-width:621px){.gallery-thumbs:has(>button:nth-child(5))>button{height:92px}}
@media(max-width:620px){.gallery-thumbs:has(>button:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-thumbs:has(>button:nth-child(5)){grid-template-columns:repeat(5,minmax(0,1fr))}}
.gallery-thumbs:has(img[src*="-original-img-"])>button{padding:4px 0 22px}
@media(max-width:620px){.gallery-thumbs:has(img[src*="-original-img-"])>button{height:88px;padding:6px 0 26px}}
