/* Product stories retain Context’s white rail, square photography and quiet teal actions. */
.product-breadcrumbs{padding-top:24px;font:400 var(--type-caption)/1.5 var(--sans);color:var(--reading)}
.product-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.product-breadcrumbs li+li::before{content:"/";margin-right:8px;color:var(--muted)}
.product-breadcrumbs a{color:var(--teal);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.product-breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.product-breadcrumbs+.product{padding-top:16px}
.product-heading .purchase-guarantee-summary{font:400 var(--type-caption)/1.6 var(--sans);max-width:46ch;margin:0 0 16px;color:var(--reading)}
.product-heading .purchase-reassurance{margin-bottom:10px}
.product-purchase .purchase-reassurance a{color:var(--teal)}
.product-heading .product-contents{max-width:38ch}
.product-copy .product-details>p{padding-block:0 20px}
.product-material-section .feature,.product-recharge-section .feature,.product-light-section .feature,.product-presentation-section .feature{padding-block:var(--chapter-space);gap:var(--editorial-gap)}
.product-light-section .feature-copy,.product-presentation-section .feature-copy{max-width:38ch;padding:0}
.product-light-section h2,.product-presentation-section h2{font:400 var(--type-section)/1.2 var(--sans);text-wrap:balance;margin-bottom:24px}
.product-light-section p,.product-presentation-section p{font:400 var(--type-body)/1.6 var(--sans)}
.product-light-section .text-link,.product-presentation-section .text-link{margin-top:24px}
.product-light-section .feature img{aspect-ratio:5/4;object-fit:cover;width:100%;height:auto;border-radius:0}
.product-presentation-section figure{margin:0}
.product-presentation-section .feature img{width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;border-radius:0}
.product-presentation-section figcaption{font:400 var(--type-caption)/1.5 var(--sans);color:var(--reading);margin-top:12px}
.product-copy details summary::after{transition:transform 180ms ease-out}
.product-copy details[open] summary::after{transform:rotate(45deg);content:"+"}
.product-section-links a,.product-breadcrumbs a,.product-copy details summary{transition:color 180ms ease-out}
.product-main,.product-presentation-photo{transition:transform 600ms cubic-bezier(.16,1,.3,1)}
.product-image-link{overflow:hidden}
@media(hover:hover){.product-image-link:hover .product-main{transform:scale(1.02)}}
@media(max-width:800px){.product-light-section .feature,.product-presentation-section .feature{gap:24px}.product-light-section .feature-copy,.product-presentation-section .feature-copy{max-width:none}.product-light-section .feature-copy{order:2}.product-breadcrumbs{padding-top:12px}.product-breadcrumbs+.product{padding-top:12px}}
@media(max-width:600px){.mobile-purchase:not([hidden]){align-items:center;gap:10px}.mobile-purchase>div{min-width:0}.mobile-purchase .button{padding-inline:14px;font-size:14px}.mobile-purchase span{font-size:12px}.purchase-bar-visible{scroll-padding-bottom:calc(100px + env(safe-area-inset-bottom))}.purchase-bar-visible :focus{scroll-margin-bottom:calc(100px + env(safe-area-inset-bottom))}}
@media(max-width:360px){.mobile-purchase p{font-size:12px}.mobile-purchase span{font-size:12px}.mobile-purchase .button{font-size:13px;padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.product-copy details summary::after,.product-main,.product-presentation-photo,.product-section-links a,.product-breadcrumbs a,.product-copy details summary{transition:none}.product-image-link:hover .product-main{transform:none}}

.specification-download{margin-top:32px;font-size:16px}.specification-download a{display:inline-flex;min-height:44px;align-items:center}

/* The opening spread shares the breadcrumb and chapter rail at every width. */
.product-layout{max-width:none;margin-inline:0}
.product-layout>.gallery{max-width:none;margin-inline:0}
.product .thumbnail{width:100%;height:auto;aspect-ratio:1}
@media(max-width:360px){.product .thumbnails{gap:2px}}

/* The gallery video shares the photo rail and reserves its square viewing area. */
.gallery-film{width:100%}
.gallery-film[hidden],.product-image-link[hidden]{display:none}
.gallery-video{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:center;background:var(--quiet);cursor:pointer}
.gallery-video:focus-visible{outline:3px solid #b68343;outline-offset:3px}
.gallery-video-mark{position:absolute;right:6px;bottom:6px;display:grid;place-items:center;width:24px;height:24px;background:var(--ink);color:var(--paper);border-radius:50%;pointer-events:none}
.gallery-video-mark svg{width:14px;height:14px}
.gallery-video-fallback{font:400 var(--type-caption)/1.5 var(--sans);margin:12px 0 0}
@media(max-width:360px){.gallery-video-mark{right:3px;bottom:3px;width:20px;height:20px}}

.product-heading .gallery-video-link{display:inline-flex;margin-top:20px;min-height:44px}

/* Quiet, accessible controls leave the full square footage unobstructed. */
.gallery-player-controls{display:flex;align-items:center;gap:12px;min-height:52px;padding-top:4px;color:var(--ink);background:var(--paper)}
.gallery-player-controls[hidden]{display:none}
.gallery-player-controls button{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);cursor:pointer}
.gallery-player-controls button:hover{background:var(--quiet);color:var(--teal)}
.gallery-player-controls :focus-visible{outline:3px solid #b68343;outline-offset:1px}
.gallery-play-toggle svg{width:20px;height:20px}
.gallery-pause-symbol,.gallery-play-toggle.is-playing .gallery-play-symbol{display:none}
.gallery-play-toggle.is-playing .gallery-pause-symbol{display:block}
.gallery-seek{flex:1;min-width:0;width:100%;height:44px;margin:0;padding:0;appearance:none;background:transparent;cursor:pointer;border:0;box-shadow:none;border-radius:0}
.gallery-seek:disabled{opacity:.4;cursor:default}
.gallery-seek::-webkit-slider-runnable-track{height:2px;background:var(--ink)}
.gallery-seek::-moz-range-track{height:2px;background:var(--ink)}
.gallery-seek::-webkit-slider-thumb{appearance:none;width:10px;height:10px;margin-top:-4px;border:0;border-radius:50%;background:var(--ink)}
.gallery-seek::-moz-range-thumb{width:10px;height:10px;border:0;border-radius:50%;background:var(--ink)}
.gallery-time{font:400 13px/1 var(--sans);font-variant-numeric:tabular-nums;min-width:30px;text-align:right}
.gallery-player-controls .gallery-captions-toggle{font:500 12px/1 var(--sans);text-decoration:underline;text-underline-offset:4px;text-decoration-color:transparent}
.gallery-captions-toggle[aria-pressed=true]{text-decoration-color:currentColor}
.gallery-video::cue{font:400 16px/1.4 sans-serif;background:rgba(19,38,37,.9);color:white}
@media(max-width:600px){.gallery-player-controls{gap:8px}.gallery-video::cue{font-size:13px}}

/* Fine chapter rules share the outer content rail without crowding the story. */
:is(.product-light-section,.product-recharge-section,.product-specifications,.product-settings,.product-presentation-section){position:relative}
:is(.product-light-section,.product-recharge-section,.product-specifications,.product-settings,.product-presentation-section)::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(var(--content),calc(100% - var(--page-gutter) * 2));height:1px;background:var(--rule);opacity:.65;pointer-events:none}
