/* Canonical product cards and their dedicated galleries. */
.table-sizes[hidden]{display:none}
.table-sizes{padding-block:80px 96px}
.table-sizes h2{max-width:620px;font:500 clamp(42px,5vw,76px)/1.04 var(--serif);letter-spacing:-.035em}
.size-intro{max-width:360px;font:14px/1.8 var(--sans);color:var(--olive)}
.size-navigation{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0 56px}
.size-navigation a{border:1px solid var(--line);padding:14px 22px;font:12px/1.5 var(--sans)}
.size-navigation a:hover{background:var(--ink);color:var(--paper)}
.size-group{scroll-margin-top:110px}
.size-group+.size-group{margin-top:80px}
.variant-picker{display:grid;gap:10px;margin:24px 0;font:12px/1.5 var(--sans)}
.variant-picker select{width:100%;min-width:0;padding:14px 10px;background:var(--paper);border:1px solid var(--line);color:var(--ink);font:14px var(--sans)}
.detail-note{white-space:pre-line}
.original-catalog[hidden]{display:none}
.original-catalog{padding-block:80px 96px;border-top:1px solid var(--line);scroll-margin-top:100px}
.original-catalog h2{font:500 clamp(42px,5vw,76px)/1.04 var(--serif);letter-spacing:-.035em}
.original-catalog .product-title{font-size:clamp(23px,2.1vw,34px);line-height:1.15;overflow-wrap:anywhere}
.original-count,.original-reference{font:12px/1.6 var(--sans);color:var(--olive)}
.original-excerpt{font:14px/1.7 var(--sans);color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;margin:18px 0 0}
.original-detail .product-detail-copy h1{font-size:clamp(32px,3.3vw,52px);overflow-wrap:anywhere}
.original-detail .detail-note{font:16px/1.8 var(--sans);max-width:100%;overflow-wrap:anywhere}
.original-source{margin:4px 0 24px;font-size:13px}
@media(max-width:640px){.original-catalog{padding-block:48px 56px}}
@media(max-width:640px){.table-sizes{padding-block:48px 56px}.size-navigation{gap:8px;margin-bottom:36px}.size-navigation a{padding:12px;font-size:11px}.size-group+.size-group{margin-top:56px}}
.catalog-organization{max-width:660px;font-size:14px;line-height:1.7;color:var(--olive);margin:0 0 20px}
.catalog-overview{border-block:1px solid var(--line);padding:18px 0;margin-bottom:32px}
.catalog-overview summary{cursor:pointer;font-size:13px;font-weight:600;padding:5px 0}
.catalog-overview p{font-size:13px;line-height:1.6;margin:18px 0}
.catalog-overview ul{columns:3;column-gap:32px;padding-left:18px;margin:18px 0;font-size:13px;line-height:1.7}
.catalog-overview li{break-inside:avoid;margin-bottom:10px;padding-left:3px}
.catalog-overview a:hover{text-decoration:underline;text-underline-offset:3px}
.catalog-product{min-width:0}
.catalog-group{scroll-margin-top:110px}
.catalog-group+.catalog-group{margin-top:88px}
.catalog-group[hidden]{display:none}
.catalog-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:22px;margin-bottom:30px}
.catalog-group-heading h3{font:500 clamp(38px,4vw,58px)/1 var(--serif);letter-spacing:-.035em;margin:0}
.catalog-group-heading p{max-width:360px;font:13px/1.7 var(--sans);color:var(--olive);margin:0}
.catalog-product .product-media{height:340px;background:var(--paper-deep)}
.catalog-product .product-meta{align-items:flex-start;margin-top:20px}
.catalog-product .product-title{font:500 30px/1.06 var(--serif);letter-spacing:-.025em;overflow-wrap:anywhere;margin:0}
.catalog-product .product-type{font-size:10px;line-height:1.4}
.catalog-product .product-description{font:12px/1.6 var(--sans);color:var(--olive);margin:14px 0 6px}
.catalog-view{display:inline-block;font-size:12px;text-decoration:underline;text-underline-offset:4px;padding:10px 0}
.catalog-gallery{min-width:0;outline-offset:5px}
.photo-stage{position:relative;background:var(--paper-deep);overflow:hidden;touch-action:pan-y}
.photo-link{display:block;height:100%;width:100%}
.photo-stage img.gallery-image{object-fit:cover;object-position:center;width:100%;height:100%;transform:none}
.gallery-controls{position:absolute;z-index:2;bottom:12px;right:12px;display:flex;align-items:center;gap:6px;padding:4px;background:rgba(251,248,243,.96);border:1px solid var(--line);color:var(--ink)}
.gallery-controls button{width:44px;height:44px;background:transparent;border:0;font:20px var(--sans);color:inherit;cursor:pointer}
.gallery-controls button:hover{background:var(--paper-deep)}
.gallery-count{min-width:44px;text-align:center;font:12px var(--sans);font-variant-numeric:tabular-nums}
.gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;max-width:100%;padding:14px 2px 8px;scrollbar-width:thin}
.gallery-thumbnails button{flex:0 0 70px;height:86px;border:1px solid transparent;background:var(--paper-deep);padding:0;overflow:hidden;cursor:pointer}
.gallery-thumbnails img{object-fit:cover;object-position:center;width:100%;height:100%}
.gallery-thumbnails [aria-pressed="true"]{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.gallery-controls button,.gallery-thumbnails button{touch-action:manipulation;user-select:none;-webkit-user-select:none}
.gallery-thumbnails img{pointer-events:none}
.gallery-feedback{position:absolute;z-index:3;top:12px;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:rgba(251,248,243,.96);border:1px solid var(--line);font:12px/1.5 var(--sans);color:var(--ink);pointer-events:none}
.gallery-feedback[hidden],.gallery-feedback button[hidden]{display:none}
.gallery-feedback button{flex-shrink:0;min-height:44px;padding:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;pointer-events:auto;touch-action:manipulation}
.catalog-gallery:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--olive);outline-offset:4px}
.skip-link{position:fixed;top:0;left:24px;transform:translateY(-150%);z-index:100;padding:16px;background:var(--ink);color:var(--paper)}
.skip-link:focus{transform:translateY(0)}
.product-page .site-header{gap:20px}
.header-back{margin-left:auto}
.product-page .language-switcher{margin-right:0}
.product-detail{padding-top:130px;min-height:75vh}
.product-detail>.catalog-back{display:inline-block;margin-bottom:32px;padding:8px 0}
.product-detail-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:start}
.detail-gallery .photo-stage{height:clamp(450px,65vh,760px);padding:0}
.product-detail-copy{padding-top:24px}
.product-detail-copy h1{font-size:clamp(42px,5vw,76px);line-height:.98;overflow-wrap:anywhere;margin-bottom:26px}
.detail-category{line-height:1.6}
.detail-kind{font:11px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--olive);border-top:1px solid var(--line);padding-top:23px;margin-bottom:18px}
.detail-note{font:19px/1.6 var(--serif);max-width:440px}
.detail-availability{font:13px/1.7 var(--sans);margin:24px 0}
.product-inquiry{line-height:1.4;max-width:100%}
.product-inquiry span{font-size:11px;line-height:1.6}
.detail-natural{font:12px/1.8 var(--sans);color:var(--olive);border-top:1px solid var(--line);padding-top:22px;margin-top:28px}
.product-detail-footer{display:flex;justify-content:space-between;align-items:center;gap:24px}
.product-not-found{max-width:700px;padding-block:60px}
.product-not-found h1{font-size:60px;line-height:1.1}
.product-not-found p{line-height:1.7}
@media(min-width:851px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 28px}}
@media(max-width:850px){.catalog-overview ul{columns:2}.product-detail-layout{gap:32px}.product-detail{padding-inline:24px}.detail-gallery .photo-stage{height:480px}.catalog-product .product-media{height:330px}}
@media(max-width:640px){.catalog-group+.catalog-group{margin-top:56px}.catalog-group-heading{align-items:flex-start;flex-direction:column;gap:12px}.product-detail-layout{grid-template-columns:minmax(0,1fr);gap:12px}.product-detail{padding-top:105px}.product-detail-copy{padding-top:20px}.product-detail-copy h1{font-size:48px}.detail-gallery .photo-stage{height:480px;max-height:66vh;padding:0}.header-back{display:none}.product-page .language-switcher{margin-left:auto}.catalog-overview ul{columns:1}.product-detail-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.catalog-product .product-media{height:430px;max-height:65vh}.catalog-product .product-title{font-size:35px}.gallery-controls{bottom:10px;right:10px}.product-detail-copy h1{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
