/* Product details use natural document flow. No fixed-height content panels. */
.fp-product-detail{min-width:0;padding-top:48px;padding-bottom:64px}
.fp-product-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start}
.fp-product-layout>*{min-width:0;max-width:100%}
.fp-product-gallery{position:sticky;top:156px;align-self:start;min-width:0}
.fp-product-gallery img{max-width:100%}
.fp-product-image-viewer{min-width:0;max-width:100%}
.fp-product-image-viewer>a{display:block;max-width:100%;cursor:zoom-in}
.fp-product-image-viewer>a:focus-visible{outline:2px solid var(--brand-accent,#b59255);outline-offset:4px}
.fp-product-thumbnails{max-width:560px}
.fp-product-thumbnail{position:relative;display:block;aspect-ratio:1;min-width:0;overflow:hidden;padding:0;border:2px solid #e7e7e7;border-radius:3px;background:#fff;cursor:pointer;transition:border-color .15s}
.fp-product-thumbnail:hover{border-color:#999}
.fp-product-thumbnail[aria-pressed=true]{border-color:var(--brand-accent,#b59255)}
.fp-product-thumbnail:focus-visible{outline:2px solid var(--brand-accent,#b59255);outline-offset:3px}
/* The lens deliberately contains an image twice the frame size. It must not
   inherit the responsive width cap used by the main image and thumbnails. */
.fp-product-gallery [data-product-image-lens] img{max-width:none!important;max-height:none!important}
@media(hover:none),(pointer:coarse){.fp-product-gallery [data-product-image-lens]{display:none!important}}
.fp-product-content{display:flex;flex-direction:column;gap:32px;min-width:0;overflow-wrap:anywhere}
.fp-product-detail [data-purchase-panel]{height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;position:static!important;display:block!important}
.fp-product-detail [data-short-description]{height:auto!important;max-height:none!important;overflow:visible!important;display:block!important;-webkit-line-clamp:unset!important}
.fp-product-summary-panel h1{font-size:clamp(30px,3.6vw,44px);line-height:1.25;letter-spacing:-.02em;overflow-wrap:anywhere;margin:14px 0 0}
.fp-product-eyebrow{font-size:12px;font-weight:600;line-height:1.6;letter-spacing:.12em;color:var(--brand-accent,#b59255);overflow-wrap:anywhere}
.fp-product-eyebrow a{color:inherit;text-decoration:none}
.fp-product-sku{font-size:13px;line-height:1.7;margin:12px 0 0;color:#777;overflow-wrap:anywhere}
.fp-product-summary-panel [data-product-price]{font-size:clamp(27px,3vw,34px);line-height:1.3;margin-top:22px;font-weight:700;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.fp-product-summary{font-size:16px;line-height:1.85;color:#5d5d5d;margin-top:18px;white-space:pre-line;overflow-wrap:anywhere}
.fp-product-models{display:flex;flex-direction:column;gap:18px;margin-top:28px;min-width:0;max-width:100%}
.fp-model-options{padding:0;margin:0;border:0;min-inline-size:0;max-width:100%}
.fp-detail-label{font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.09em;color:#747474;padding:0;margin-bottom:12px}
.fp-model-option-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px;min-width:0}
.fp-model-option{display:grid;grid-template-columns:17px minmax(0,1fr);align-items:start;gap:10px;min-width:0;max-width:100%;padding:14px;border:1px solid #dedede;border-radius:4px;background:#fff;cursor:pointer;transition:border-color .16s,background-color .16s}
.fp-model-option:hover{border-color:#999;background:#fafafa}
.fp-model-option.is-selected{border-color:#242424;background:#f8f6f1;box-shadow:inset 0 0 0 1px #242424}
.fp-model-option:focus-within{outline:2px solid var(--brand-accent,#b59255);outline-offset:3px}
.fp-model-option input{appearance:auto;width:16px;height:16px;margin:4px 0 0;accent-color:#242424;cursor:pointer}
.fp-model-option-content{display:flex;flex-direction:column;gap:5px;min-width:0}
.fp-model-option-name{font-size:14px;line-height:1.6;font-weight:600;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.fp-model-option-price{font-size:13px;line-height:1.6;color:#666;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.fp-model-stock{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;color:#757575;font-size:13px;line-height:1.6;margin:0}
.fp-model-stock strong{font-weight:600;color:#333}
.fp-product-detail .fp-model-inquiry{display:flex;align-items:center;justify-content:center;min-height:52px;width:100%;padding:15px 24px;border:0!important;border-radius:4px;background:#191919;color:#fff;line-height:1.5;font-size:14px;font-weight:700;letter-spacing:.12em;text-decoration:none;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;position:relative}
.fp-product-detail .fp-model-inquiry:hover{background:#38322a;color:#fff}
.fp-product-detail .fp-model-inquiry:focus-visible{outline:2px solid var(--brand-accent,#b59255);outline-offset:4px}
.fp-product-detail .fp-model-inquiry::before,.fp-product-detail .fp-model-inquiry::after{content:none!important}
.fp-product-specifications,.fp-product-description{min-width:0;padding-top:26px;border-top:1px solid #e7e7e7;margin-top:10px}
.fp-detail-heading,.fp-product-description h2{font-size:19px;line-height:1.5;letter-spacing:0;font-weight:700;margin:0 0 16px}
.fp-detail-spec-list{display:grid;gap:0;min-width:0;margin:0}
.fp-detail-spec-row{display:grid;grid-template-columns:minmax(80px,.8fr) minmax(0,1.6fr);gap:10px 24px;padding:12px 0;border-bottom:1px solid #ededed;min-width:0;align-items:start}
.fp-detail-spec-row:last-child{border-bottom:0;padding-bottom:0}
.fp-detail-spec-row dt,.fp-detail-spec-row dd{min-width:0;max-width:100%;margin:0;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}
.fp-detail-spec-row dt{color:#777;font-weight:500}
.fp-detail-spec-row dd{color:#242424}
.fp-spec-unit{color:#777}
.fp-product-description{margin-top:0}
.fp-product-description .prose{font-size:15px;line-height:1.9;max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:normal;margin-top:0}
.fp-product-description .prose>*{max-width:100%;min-width:0}
.fp-product-description .prose p{margin:0 0 1em}
.fp-product-description .prose :last-child{margin-bottom:0}
.fp-product-description img,.fp-product-description video{max-width:100%!important;height:auto!important}
.fp-product-description iframe{max-width:100%!important}
.fp-product-description table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse}
.fp-product-description td,.fp-product-description th{padding:8px 12px;border:1px solid #e5e5e5;vertical-align:top;white-space:normal;overflow-wrap:anywhere}
.fp-product-description pre{white-space:pre-wrap;overflow-wrap:anywhere;overflow-x:auto}
@media(max-width:1023px){.fp-product-detail{padding-top:28px;padding-bottom:44px}.fp-product-layout{grid-template-columns:minmax(0,1fr);gap:32px}.fp-product-gallery{position:static}.fp-product-content{gap:26px}.fp-product-summary-panel h1{font-size:30px}}
@media(max-width:480px){.fp-product-layout{gap:26px}.fp-model-option-grid{grid-template-columns:minmax(0,1fr)}.fp-model-option{padding:13px 14px}.fp-product-models{margin-top:24px;gap:16px}.fp-detail-spec-row{grid-template-columns:minmax(0,1fr);gap:3px;padding:12px 0}.fp-detail-spec-row dt{font-size:12px}.fp-detail-spec-row dd{font-size:14px}.fp-product-summary{font-size:15px}.fp-product-specifications,.fp-product-description{padding-top:22px}.fp-product-detail .fp-model-inquiry{min-height:50px}}
