/* The existing product presentation now occupies a full document. */
.product-page-body .navigation a{font-size:13px;padding:4px 0 14px;letter-spacing:.15px}
.product-page-body .navigation{overflow-x:auto}
.product-page-body #product-dialog.product-page{display:block;position:static;inset:auto;transform:none;width:min(1320px,calc(100% - 100px));max-width:1320px;max-height:none;height:auto;margin:20px auto 0;padding:0;border:0;border-radius:0;box-shadow:none;overflow:visible;overscroll-behavior:auto}
.product-page-body #product-dialog .detail-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px}
.product-page-body #product-dialog .detail-gallery{position:sticky;top:155px;padding:18px 0;min-width:0}
.product-page-body #product-dialog .detail-copy{display:block;padding:18px 0 32px;min-width:0}
.product-page-body #product-dialog .detail-image{display:flex;align-items:center;justify-content:center;padding:32px;background:#fff;min-height:400px}
.product-page-body #product-dialog .detail-image img{display:block;width:100%;height:480px;max-height:60dvh;object-fit:contain;mix-blend-mode:normal}
.product-page-body #product-dialog .detail-copy h1{font-family:var(--font-display,Georgia,serif);font-size:clamp(22px,2vw,29px);font-weight:400;line-height:1.38;letter-spacing:normal;color:var(--gold-type,#293e39);overflow-wrap:anywhere}
.product-page-body .product-breadcrumb{padding:12px 0;line-height:1.5;font-size:11px;gap:10px;flex-wrap:wrap;color:#6e7772;background:#fff}
.product-page-body .product-breadcrumb>span:last-child{overflow-wrap:anywhere;min-width:0;flex:1}
.product-page-body .product-breadcrumb a:hover,.product-back a:hover{text-decoration:underline}
.product-page-body #product-dialog .detail-thumbnails{display:flex;overflow-x:auto;gap:9px;padding:12px 0}
.product-page-body #product-dialog .detail-thumbnails img{width:100%;height:100%;object-fit:contain}
.product-page-body #product-dialog .detail-purchase .button-dark{border:1px solid var(--line,#c7d0cb)}
.product-page-body .gallery-feedback{min-height:22px}
.product-page-body .product-back{padding:0 0 38px;font-size:13px}

/* A denser product-information rhythm keeps long titles and purchase details
   comfortably within view without reducing legibility. */
.product-page-body .detail-heading #detail-brand{font-size:13px;margin-bottom:9px}
.product-page-body .detail-product-code{font-size:11px;margin-top:6px}
.product-page-body .detail-price-block{padding:14px 0 11px}
.product-page-body .detail-price-label{font-size:11px;margin-bottom:6px}
.product-page-body #product-dialog .detail-prices{font-size:24px}
.product-page-body #product-dialog .detail-prices del{font-size:14px;margin-left:9px}
.product-page-body .detail-saving{padding:6px 8px;font-size:11px}
.product-page-body .detail-payment{padding:10px 12px;margin-top:11px}
.product-page-body .payment-heading p{font-size:13px;margin-bottom:2px}
.product-page-body .payment-heading span{font-size:12px;line-height:1.5}
.product-page-body .payment-installments{margin:8px 0 0 28px}
.product-page-body .payment-installments summary{font-size:11px}
.product-page-body .detail-purchase{margin-bottom:16px}
.product-page-body .quantity-field>label{font-size:11px;margin-bottom:6px}
.product-page-body .quantity-control{height:44px}
.product-page-body #product-dialog .detail-purchase .button-dark{min-height:44px;font-size:13px;padding:10px 13px}
.product-page-body #product-dialog .detail-note{font-size:11px!important;margin-top:8px}
.product-page-body #product-dialog .detail-description-block summary{font-size:15px}
.product-page-body #product-dialog .detail-copy #detail-description{font-size:15px;line-height:1.65}
@media(max-width:900px){.product-page-body #product-dialog .detail-layout{gap:24px}.product-page-body #product-dialog .detail-image{padding:20px;min-height:300px}.product-page-body #product-dialog .detail-image img{height:360px}.product-page-body #product-dialog .detail-gallery{top:130px}}
@media(max-width:700px){.product-page-body #product-dialog.product-page{width:calc(100% - 36px);margin-top:12px}.product-page-body #product-dialog .detail-layout{grid-template-columns:1fr;gap:0}.product-page-body #product-dialog .detail-gallery{position:static;padding:18px 0}.product-page-body #product-dialog .detail-copy{padding:10px 0 30px}.product-page-body .product-breadcrumb>span:last-child{flex-basis:100%}.product-page-body #product-dialog .detail-image img{height:360px;max-height:55dvh}.product-page-body .navigation{justify-content:flex-start;gap:22px;padding-inline:18px;white-space:nowrap}.product-page-body #detail-description .description-feature{grid-template-columns:1fr}.product-page-body .header-main{gap:16px}}

.gold-template #hero-product-link{font:400 20px/1.4 var(--font-display,Georgia,serif);color:var(--evergreen,#293e39);letter-spacing:normal;border-bottom:1px solid var(--gold);padding:0 0 5px;text-align:left}
@media(max-width:700px){.gold-template #hero-product-link{font-size:17px}}

/* Clickable main photo and a large, keyboard accessible photo viewer. */
.product-page-body .product-photo-zoom{display:block;position:relative;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.product-page-body #product-dialog .detail-image{position:relative}
.product-page-body #product-dialog .detail-favorite{position:absolute;top:16px;right:16px;z-index:3;display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid var(--gold,#b88a24);border-radius:50%;background:#fff;color:var(--evergreen,#245343);cursor:pointer;transition:background .18s ease,color .18s ease}
.product-page-body #product-dialog .detail-favorite svg{display:block;width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.product-page-body #product-dialog .detail-favorite:hover{background:#f1f6f2}
.product-page-body #product-dialog .detail-favorite[aria-pressed=true]{border-color:var(--evergreen,#245343);background:#eef5ef}
.product-page-body #product-dialog .detail-favorite[aria-pressed=true] svg{fill:currentColor}
.product-page-body .product-favorite-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.product-page-body .header-actions .icon-button svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:540px){.product-page-body .header-actions .icon-button svg{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){.product-page-body #product-dialog .detail-favorite{transition:none}}
.product-page-body .product-photo-zoom .photo-zoom-hint{bottom:0;right:0}
.product-page-body #image-viewer{width:min(1120px,calc(100vw - 48px));max-width:calc(100vw - 48px);max-height:calc(100dvh - 40px)}
.product-page-body #image-viewer .viewer-stage{padding:12px 24px}
.product-page-body #image-viewer #viewer-image{max-height:calc(100dvh - 195px);max-width:100%;width:auto;height:auto;object-fit:contain}
.product-page-body:has(#image-viewer[open]){overflow:hidden}
/* Compact specifications retain their existing type size and all content. */
.product-page-body #detail-description .specification-panel{margin-top:10px}
.product-page-body #detail-description .description-specifications{line-height:1.45}
.product-page-body #detail-description .description-specifications caption{padding:9px 12px}
.product-page-body #detail-description .description-specifications th,.product-page-body #detail-description .description-specifications td{padding:6px 12px}
.product-page-body #detail-description .description-panel{padding:12px 14px}
.product-page-body #detail-description .description-paragraph{margin-bottom:7px}
.product-page-body #product-dialog .detail-description-block{padding-top:12px}
.product-page-body #product-dialog .detail-copy #detail-description{margin-top:9px}
@media(max-width:700px){.product-page-body #image-viewer{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.product-page-body #image-viewer .viewer-stage{padding:10px}.product-page-body #image-viewer .viewer-toolbar{padding:10px 12px}.product-page-body #detail-description .description-specifications th,.product-page-body #detail-description .description-specifications td{padding:6px 9px}}

/* Availability: a quiet evergreen accent with live piece counts. */
.product-page-body #product-dialog .product-stock.detail-availability{display:flex;align-items:center;gap:11px;margin:14px 0 16px;padding:12px 14px;border:1px solid #d7e5dc;border-left:3px solid #638672;border-radius:5px;background:linear-gradient(110deg,#f0f6f2,#fafcfb);color:#2c5942;font-size:15px!important;line-height:1.4}
.product-page-body #product-dialog .product-stock.detail-availability::before{display:none}
.product-page-body .stock-emblem{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border:1px solid #cadfd1;border-radius:50%;background:#fff9;color:#47745b}
.product-page-body .stock-emblem svg{width:17px;height:17px;stroke-width:1.8}
.product-page-body .stock-copy{min-width:0}
.product-page-body #product-dialog .stock-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 9px;font:500 15px/1.4 var(--font-ui,Arial,sans-serif);color:#2c5942;margin:0}
.product-page-body .stock-count{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:400;white-space:nowrap;color:#4f715d}
.product-page-body .stock-count::before{content:'';height:12px;width:1px;background:#b7cebf}
.product-page-body #product-dialog .stock-dispatch{font:400 12px/1.45 var(--font-ui,Arial,sans-serif);margin:3px 0 0;color:#62766a}
.product-page-body .stock-dispatch span{font-weight:500;color:#3a634b}
.product-page-body #product-dialog .product-stock[data-available=false]{background:#f8f8f7;border-color:#e1e1dc;color:#74766e}
.product-page-body #product-dialog .product-stock[data-available=false] .stock-heading{color:#74766e}
.product-page-body .product-stock[data-available=false] .stock-emblem{border-color:#deded8;color:#74766e}
@media(max-width:700px){.product-page-body #product-dialog .product-stock.detail-availability{padding:13px 14px;gap:11px}.product-page-body #product-dialog .stock-heading{font-size:16px}}
/* Sold-out products remain accessible after the entire available selection. */
.gold-template .product-card.is-soldout .product-availability{display:inline-block;align-self:flex-start;font-size:11px;line-height:1.5;color:#81766b;background:#f5f2ee;border:1px solid #e7e1d9;padding:3px 8px;margin-top:8px}
.gold-template .product-card.is-soldout .product-image-button img{opacity:.72}
.gold-template .product-card.is-soldout .product-name{color:#797c77}

/* Burgundy remains distinct from the shop's evergreen availability treatment. */
.gold-template .product-card.is-soldout .product-availability{display:inline-flex;align-items:center;gap:6px;color:#862f44;background:#fbf0f3;border-color:#e8c4ce;border-radius:3px;font-size:12px;font-weight:600;letter-spacing:.02em;padding:4px 9px}
.gold-template .product-card.is-soldout .product-availability::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}
.product-page-body #product-dialog .product-stock[data-available=false]{background:linear-gradient(110deg,#faedf1,#fff9fa);border-color:#e8c5ce;border-left-color:#923a50;color:#812a40}
.product-page-body #product-dialog .product-stock[data-available=false] .stock-heading{color:#812a40;font-size:18px;font-weight:600}
.product-page-body .product-stock[data-available=false] .stock-emblem{border-color:#e0b2bf;color:#923a50;background:#fff8}
.product-page-body #detail-quantity:disabled{opacity:1;color:#812a40;-webkit-text-fill-color:#812a40;background:#fbf8f8}
.product-page-body #product-dialog.is-soldout .quantity-field label{color:#812a40}
.product-page-body #product-dialog.is-soldout .quantity-control{border-color:#dfb5c1;background:#fcf4f6}
.product-page-body #product-dialog.is-soldout .quantity-control button:disabled{color:#a55369;background:#fcf4f6;opacity:1;cursor:default}
.product-page-body #product-dialog.is-soldout #detail-quantity:disabled{background:#fcf4f6;color:#812a40;-webkit-text-fill-color:#812a40}
.product-page-body #product-dialog.is-soldout #detail-demo:disabled{background:#fcf1f4;border-color:#e4bcc7;color:#812a40;opacity:1;cursor:default}
.product-page-body .restock-trigger{display:flex;width:100%;align-items:center;justify-content:center;gap:12px;border:1px solid #d0ded3;border-radius:4px;padding:15px 16px;margin-top:14px;background:#edf3ee;color:#365c46;font:500 14px/1.5 var(--font-ui,Arial,sans-serif);cursor:pointer;transition:background .2s,border-color .2s}
.product-page-body .restock-trigger:hover{background:#e4eee6;border-color:#9bb6a3}
.restock-trigger svg,.restock-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.product-page-body #restock-dialog{box-sizing:border-box;position:fixed;inset:0;width:min(570px,calc(100vw - 32px));max-width:570px;max-height:calc(100dvh - 40px);height:fit-content;margin:auto;padding:32px 36px;border:1px solid #e4d9c9;border-radius:8px;background:#fffdfa;color:#35463e;box-shadow:0 24px 100px #152b2440;overflow-y:auto;font:400 14px/1.65 var(--font-ui,Arial,sans-serif)}
#restock-dialog::backdrop{background:#172e29a6;backdrop-filter:blur(4px)}
.product-page-body:has(#restock-dialog[open]){overflow:hidden}
#restock-dialog .restock-close{position:absolute;right:14px;top:10px;width:36px;height:36px;border:0;background:transparent;color:#69736a;font:300 28px/1 Arial,sans-serif;cursor:pointer}
#restock-dialog .restock-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:15px;border:1px solid #dfbac5;border-radius:50%;background:#fbf0f3;color:#8b344a}
#restock-dialog .restock-eyebrow{margin:0 0 7px;color:#8a7552;font-size:10px;letter-spacing:.16em}
#restock-dialog h2{margin:0;color:#293e39;font:400 30px/1.35 var(--font-display,Georgia,serif)}
#restock-dialog .restock-product{margin:8px 0 18px;padding-bottom:16px;border-bottom:1px solid #e9e1d6;color:#7d5c64;font-size:12px;overflow-wrap:anywhere}
#restock-dialog #restock-intro{margin:0 0 10px;line-height:1.7}
#restock-dialog .restock-reassurance{margin:0 0 22px;color:#70766f;font-size:12px;line-height:1.75}
#restock-form{display:grid;gap:13px}
#restock-form>label{display:grid;gap:5px;font-size:12px;color:#394d43}
#restock-form label>span[aria-hidden]{display:inline;color:#8b344a}
#restock-form label small{font-size:11px;color:#90958d}
#restock-form input:not([type=checkbox]){box-sizing:border-box;width:100%;min-width:0;min-height:43px;border:1px solid #dcded5;border-radius:3px;padding:9px 11px;background:#fff;font:400 14px var(--font-ui,Arial,sans-serif);color:#293e39}
#restock-form input:focus-visible{outline:2px solid #8da797;outline-offset:2px}
#restock-form .restock-consent{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.7;color:#727b72}
#restock-form input[type=checkbox]{flex:0 0 16px;width:16px;height:16px;margin:3px 0 0;accent-color:#355b48}
#restock-form .restock-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#restock-submit{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;border:1px solid #294c3c;border-radius:3px;padding:14px 12px;background:#294c3c;color:#f5ecd9;font:500 13px/1.5 var(--font-ui,Arial,sans-serif);cursor:pointer}
#restock-submit:hover{background:#365e49}
#restock-submit:disabled{cursor:default;opacity:.75}
#restock-status{margin:0;padding:12px;border:1px solid #e4bfca;border-radius:3px;background:#fcf2f5;color:#812a40;font-size:12px}
#restock-status[data-success=true]{background:#eff6f0;border-color:#cbdfd0;color:#355b42}
#restock-dialog .restock-privacy{margin:17px 0 0;color:#93988f;font-size:10px;line-height:1.65}
@media(max-width:600px){.product-page-body #restock-dialog{padding:26px 22px;max-height:calc(100dvh - 24px);width:calc(100vw - 24px)}#restock-dialog h2{font-size:27px}.product-page-body .restock-trigger{font-size:12px;gap:9px}.product-page-body #product-dialog .product-stock[data-available=false] .stock-heading{font-size:17px}}
@media(prefers-reduced-motion:reduce){.product-page-body .restock-trigger{transition:none}}

/* Mobile product heading above gallery — 2026-10-21 */
@media(max-width:767px){
.product-page-body #product-dialog .detail-layout{display:flex!important;flex-direction:column!important;gap:0!important}
.product-page-body #product-dialog .detail-copy{display:contents!important}
.product-page-body #product-dialog .detail-copy> *{order:3;min-width:0}
.product-page-body #product-dialog .detail-copy>.detail-heading{order:1;margin:0 0 14px!important}
.product-page-body #product-dialog .detail-gallery{order:2;position:static!important;width:100%;padding:0 0 16px!important}
}

/* Mobile heading above gallery */
@media(max-width:767px){
.product-page-body #product-dialog .detail-layout{display:flex!important;flex-direction:column!important;gap:0!important}
.product-page-body #product-dialog .detail-copy{display:contents!important}
.product-page-body #product-dialog .detail-copy>*{order:3;min-width:0}
.product-page-body #product-dialog .detail-copy>.detail-heading{order:1;margin:0 0 14px!important}
.product-page-body #product-dialog .detail-gallery{order:2;position:static!important;width:100%;padding:0 0 16px!important}
}

/* Temporarily hide product card payment notice until card activation. 2026-10-29 */

