.storefront .refined-product {
  --product-line: color-mix(in srgb,var(--theme-fg) 15%,var(--theme-bg));
  --product-muted: color-mix(in srgb,var(--theme-fg) 72%,var(--theme-bg));
  width:min(calc(100% - 72px),1160px); display:grid;
  grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr); column-gap:clamp(32px,5vw,72px); row-gap:26px;
  padding:23px 0 70px; align-items:start;
}
.refined-product .refined-product-breadcrumbs { grid-column:1/-1; display:flex; align-items:center; flex-wrap:wrap; gap:9px; min-width:0; margin:0; color:var(--product-muted); font-size:11px; line-height:1.7; letter-spacing:0; }
.refined-product-breadcrumbs [aria-current] { color:var(--theme-fg); overflow-wrap:anywhere; }
.refined-product-breadcrumbs > span[aria-hidden] { opacity:.45; }
.refined-product .product-gallery-refined { min-width:0; position:sticky; top:92px; }
.product-gallery-stage { position:relative; overflow:hidden; isolation:isolate; border:1px solid var(--product-line); border-radius:3px; background:color-mix(in srgb,var(--theme-fg) 4%,var(--theme-bg)); touch-action:pan-y; }
.product-gallery-figure { height:clamp(340px,43vw,555px); margin:0; }
.product-gallery-expand { display:block; width:100%; height:100%; cursor:zoom-in; }
.product-gallery-expand > img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; transition:opacity .22s ease,transform .8s cubic-bezier(.2,.7,.2,1); }
.product-gallery-stage.is-switching .product-gallery-expand > img { opacity:.25; transform:scale(.985); }
.product-gallery-zoom-hint { position:absolute; top:14px; right:14px; width:32px; height:32px; display:grid; place-items:center; background:color-mix(in srgb,var(--theme-bg) 92%,transparent); color:var(--theme-fg); border-radius:50%; border:1px solid var(--product-line); opacity:.84; transition:transform .3s,opacity .3s; }
.product-gallery-zoom-hint svg { width:15px; height:15px; }
.product-gallery-expand:hover .product-gallery-zoom-hint { transform:scale(1.07); opacity:1; }
.product-gallery-arrows { position:absolute; inset:50% 12px auto; display:flex; justify-content:space-between; pointer-events:none; transform:translateY(-50%); }
.product-gallery-arrows[hidden] { display:none; }
.product-gallery-arrows button { pointer-events:auto; width:36px; height:36px; display:grid; place-items:center; color:var(--theme-fg); background:color-mix(in srgb,var(--theme-bg) 94%,transparent); border:1px solid var(--product-line); border-radius:50%; cursor:pointer; transition:transform .25s,background .25s; }
.product-gallery-arrows button:hover { transform:scale(1.08); background:var(--theme-bg); }
.product-gallery-arrows svg { width:17px; height:17px; }
.product-gallery-counter { position:absolute; right:14px; bottom:13px; padding:5px 9px; background:color-mix(in srgb,var(--theme-bg) 94%,transparent); color:var(--theme-fg); font-size:10px; letter-spacing:.12em; border-radius:20px; font-variant-numeric:tabular-nums; pointer-events:none; }
.product-gallery-thumbnails { display:flex; gap:9px; margin-top:12px; padding:0 0 5px; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:var(--product-line) transparent; }
.product-gallery-thumb { position:relative; flex:0 0 62px; height:73px; display:block; overflow:hidden; background:color-mix(in srgb,var(--theme-fg) 4%,var(--theme-bg)); border:1px solid var(--product-line); border-radius:2px; opacity:.62; transition:opacity .25s,border-color .25s; }
.product-gallery-thumb img { width:100%; height:100%; display:block; object-fit:contain; }
.product-gallery-thumb:hover,.product-gallery-thumb.is-active { opacity:1; border-color:var(--theme-accent); }
.product-gallery-thumb.is-active::after { content:""; position:absolute; right:0; bottom:0; left:0; height:2px; background:var(--theme-accent); }
.product-gallery-footnote { display:flex; justify-content:space-between; gap:16px; padding-top:10px; color:var(--product-muted); font-size:10px; line-height:1.5; letter-spacing:.035em; }
.product-gallery-status { margin:10px 0 0; color:var(--product-muted); font-size:11px; line-height:1.6; }
.product-gallery-status:empty { display:none; }
.storefront .refined-product .refined-product-summary { position:static; top:auto; width:100%; max-width:none; padding:1px 0 0; margin:0; }
.product-heading-top { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.refined-product .product-heading-top .micro-label { max-width:70%; font-size:10px; font-weight:500; letter-spacing:.11em; color:var(--theme-accent); }
.product-stock-label { display:inline-flex; align-items:center; gap:6px; flex-shrink:0; font-size:10px; color:var(--product-muted); }
.product-stock-label i { width:5px; height:5px; border-radius:50%; background:var(--product-muted); }
.product-stock-label i.is-ready { background:var(--theme-accent); }
.storefront .refined-product .product-heading-modern h1 { max-width:450px; margin:13px 0 16px; font:400 clamp(29px,3vw,38px)/1.13 var(--atelier-serif); letter-spacing:-.035em; color:var(--theme-fg); overflow-wrap:break-word; }
.refined-product .product-price-detail-modern { gap:10px; margin:0; align-items:baseline; }
.storefront .refined-product .product-price-detail-modern strong { color:var(--theme-fg); font-size:20px; font-weight:500; letter-spacing:-.015em; }
.refined-product .product-price-detail-modern del { color:var(--product-muted); font-size:12px; }
.refined-product .product-rating-link { gap:9px; margin:0 0 12px; }
.refined-product .product-rating-link > span { color:var(--theme-accent); font-size:12px; letter-spacing:1px; }
.refined-product .product-rating-link b { color:var(--product-muted); font-size:11px; font-weight:400; }
.storefront .refined-product .product-lede-modern { margin:19px 0 20px; color:var(--product-muted); font-size:13px; line-height:1.85; }
.product-finishes { display:flex; gap:24px; flex-wrap:wrap; margin:21px 0 24px; padding:17px 0; border-top:1px solid var(--product-line); border-bottom:1px solid var(--product-line); }
.product-finishes > div { min-width:0; max-width:100%; }
.product-finishes dt { margin-bottom:6px; color:var(--product-muted); font-size:10px; }
.product-finishes dd { margin:0; color:var(--theme-fg); font-size:12px; font-weight:500; overflow-wrap:anywhere; }
.storefront .refined-product .product-purchase-modern { grid-template-columns:82px minmax(0,1fr); gap:9px; margin:22px 0 0; }
.refined-product .product-purchase-modern label { min-height:49px; padding:8px 10px; display:flex; align-items:center; justify-content:space-between; gap:8px; border:1px solid var(--product-line); border-radius:2px; background:transparent; }
.refined-product .product-purchase-modern label span { font-size:10px; color:var(--product-muted); }
.refined-product .product-purchase-modern select { min-width:28px; width:auto; padding:0; border:0; color:var(--theme-fg); font-size:12px; background:transparent; }
.storefront .refined-product .product-purchase-modern .modern-button { min-height:49px; height:auto; padding:13px 20px; display:flex; align-items:center; justify-content:space-between; gap:15px; border-radius:2px; font-size:12px; letter-spacing:.01em; }
.refined-product .product-purchase-modern .modern-button svg { width:17px; height:17px; flex-shrink:0; }
.product-whatsapp-link { display:flex; align-items:center; justify-content:center; gap:9px; min-height:43px; margin-top:9px; padding:11px 16px; color:var(--theme-fg); border:1px solid var(--product-line); border-radius:2px; background:transparent; font-size:11px; transition:background .25s,border-color .25s; }
.product-whatsapp-link:hover { background:color-mix(in srgb,var(--theme-accent) 7%,var(--theme-bg)); border-color:var(--theme-accent); }
.product-whatsapp-link > svg { width:18px; height:18px; flex-shrink:0; color:var(--theme-accent); }
.product-whatsapp-arrow { margin-left:auto; color:var(--theme-accent); font-size:15px; }
.product-payment-refined { display:flex; align-items:flex-start; gap:8px; margin:16px 0 22px; color:var(--product-muted); }
.product-payment-refined > svg { width:16px; height:16px; margin-top:1px; flex-shrink:0; }
.product-payment-refined b { display:block; color:var(--theme-fg); font-size:10px; font-weight:500; line-height:1.6; }
.product-payment-refined p { margin:3px 0 0; font-size:10px; line-height:1.7; }
.product-services-refined { display:grid; grid-template-columns:1fr 1fr; gap:17px; padding:19px 0; border-top:1px solid var(--product-line); border-bottom:1px solid var(--product-line); }
.product-services-refined > :is(div,a) { display:flex; align-items:flex-start; gap:9px; }
.product-services-refined svg { width:20px; height:20px; flex:0 0 20px; color:var(--theme-accent); }
.product-services-refined b { display:block; color:var(--theme-fg); font-size:11px; line-height:1.4; font-weight:500; }
.product-services-refined small { display:block; margin-top:4px; font-size:10px; line-height:1.65; color:var(--product-muted); }
.product-services-refined small i { font-style:normal; color:var(--theme-accent); }
.refined-product .product-accordions-modern { margin-top:15px; }
.refined-product .product-accordions-modern details { border-bottom:1px solid var(--product-line); border-top:0; border-radius:0; }
.storefront .refined-product .product-accordions-modern summary { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:17px 0; color:var(--theme-fg); font-size:12px; font-weight:500; letter-spacing:0; }
.refined-product .product-accordions-modern summary > span { display:block; width:16px; color:var(--product-muted); font-size:17px; font-weight:300; text-align:center; transition:transform .25s; }
.refined-product .product-accordions-modern details[open] summary > span { transform:rotate(45deg); }
.storefront .refined-product .product-accordions-modern details > div { padding:0 0 19px; color:var(--product-muted); font-size:12px; line-height:1.9; }
.refined-product .product-accordions-modern details[open] > div { animation:product-detail-enter .3s ease both; }
.refined-product .spec-grid { display:block; }
.refined-product .spec-grid p { display:grid; grid-template-columns:110px 1fr; gap:10px; margin:0; padding:7px 0; border-bottom:1px solid color-mix(in srgb,var(--product-line) 55%,transparent); }
.refined-product .spec-grid p:last-child { border:0; }
.refined-product .spec-grid b { color:var(--theme-fg); font-size:11px; font-weight:500; }
.refined-product .spec-grid span { font-size:11px; }
.product-policy-link { display:flex; justify-content:space-between; margin-top:12px; padding-top:10px; color:var(--theme-fg); border-top:1px solid var(--product-line); text-decoration:none; }
.refined-product .product-category-tags { display:flex; flex-wrap:wrap; gap:6px; margin:18px 0 0; }
.refined-product .product-category-tags a { padding:5px 0; border:0; background:transparent; color:var(--product-muted); border-radius:0; font-size:10px; }
.refined-product .product-category-tags a + a::before { content:"/"; margin-right:6px; color:var(--product-line); }
.storefront .product-reviews-refined { width:min(calc(100% - 72px),1160px); padding:38px 0 60px; border-top:1px solid color-mix(in srgb,var(--theme-fg) 16%,var(--theme-bg)); }
.product-reviews-refined > header { margin-bottom:26px; }
.storefront .product-reviews-refined h2,.storefront .related-refined h2 { margin-top:9px; font:400 clamp(25px,2.5vw,32px)/1.2 var(--atelier-serif); letter-spacing:-.025em; color:var(--theme-fg); }
.product-reviews-refined .reviews-grid { grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:42px; }
.product-reviews-refined :is(.review-empty,.review-form-card) { padding:24px; border-radius:3px; background:color-mix(in srgb,var(--theme-fg) 3%,var(--theme-bg)); border-color:color-mix(in srgb,var(--theme-fg) 14%,var(--theme-bg)); }
.product-reviews-refined .review-empty h3,.product-reviews-refined .review-form-card h3 { font:400 23px/1.3 var(--atelier-serif); letter-spacing:-.02em; }
.product-reviews-refined .review-empty { min-height:180px; display:flex; flex-direction:column; justify-content:center; }
.product-reviews-refined .review-empty p,.product-reviews-refined .review-form-card > p { font-size:12px; line-height:1.8; color:color-mix(in srgb,var(--theme-fg) 75%,var(--theme-bg)); }
.product-reviews-refined .review-form :is(input,textarea),.product-reviews-refined .rating-options span { border-radius:2px; }
.product-reviews-refined .review-form label > span { font-size:11px; }
.product-reviews-refined .modern-button { min-height:43px; border-radius:2px; font-size:11px; }
.product-reviews-refined .review-item { padding:22px 0; background:transparent; border:0; border-bottom:1px solid color-mix(in srgb,var(--theme-fg) 16%,var(--theme-bg)); border-radius:0; }
.storefront .related-refined { width:min(calc(100% - 72px),1160px); padding:20px 0 72px; }
.product-image-dialog { width:min(1100px,calc(100vw - 48px)); max-width:none; height:min(860px,calc(100dvh - 48px)); max-height:none; margin:auto; padding:0; overflow:hidden; border:1px solid color-mix(in srgb,var(--theme-fg) 20%,var(--theme-bg)); border-radius:4px; color:var(--theme-fg); background:var(--theme-bg); }
.product-image-dialog::backdrop { background:#111914b8; backdrop-filter:blur(8px); }
.product-image-dialog[open] { display:flex; flex-direction:column; animation:product-dialog-enter .25s ease both; }
.product-image-dialog-top { min-height:53px; padding:8px 18px; display:flex; align-items:center; justify-content:space-between; gap:25px; border-bottom:1px solid color-mix(in srgb,var(--theme-fg) 13%,var(--theme-bg)); }
.product-image-dialog-top > span { font-size:12px; text-overflow:ellipsis; white-space:nowrap; overflow:hidden; }
.product-image-dialog-top > button { display:grid; place-items:center; width:34px; height:34px; flex-shrink:0; color:var(--theme-fg); border:0; border-radius:50%; background:color-mix(in srgb,var(--theme-fg) 5%,var(--theme-bg)); cursor:pointer; }
.product-image-dialog-top svg { width:17px; height:17px; }
.product-image-dialog-stage { flex:1; min-height:0; padding:12px; touch-action:pan-y; }
.product-image-dialog-stage img { display:block; width:100%; height:100%; object-fit:contain; }
.product-image-dialog-bottom { min-height:50px; display:flex; align-items:center; justify-content:center; gap:25px; padding:8px 16px; font-size:11px; font-variant-numeric:tabular-nums; }
.product-image-dialog-bottom button { width:36px; height:32px; padding:0; color:var(--theme-fg); border:1px solid color-mix(in srgb,var(--theme-fg) 18%,var(--theme-bg)); border-radius:30px; background:transparent; font-size:19px; cursor:pointer; }
body.product-image-open { overflow:hidden; }
.refined-product :is(a,button,select,input,summary,[tabindex]):focus-visible,.product-image-dialog :is(a,button):focus-visible { outline:2px solid var(--theme-accent); outline-offset:3px; }
.product-gallery-stage:focus-visible { outline-offset:4px; }
.design-noir .product-gallery-stage,.design-noir .product-gallery-thumb { background:color-mix(in srgb,var(--theme-fg) 8%,var(--theme-bg)); }
.design-noir .product-gallery-expand img { mix-blend-mode:normal; }
@keyframes product-detail-enter { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:translateY(0); } }
@keyframes product-dialog-enter { from { opacity:0; transform:translateY(12px) scale(.99); } to { opacity:1; transform:translateY(0) scale(1); } }
@media(max-width:960px) {
  .storefront .refined-product { width:calc(100% - 48px); grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:22px; padding-top:18px; }
  .refined-product .product-gallery-refined { top:83px; }
  .product-gallery-figure { height:clamp(340px,50vw,465px); }
  .product-gallery-thumb { flex-basis:53px; height:65px; }
  .storefront .refined-product .product-heading-modern h1 { font-size:30px; }
  .product-services-refined { gap:12px; }
  .product-services-refined > :is(div,a) { gap:6px; }
  .product-services-refined svg { width:17px; height:17px; flex-basis:17px; }
  .product-reviews-refined .reviews-grid { gap:25px; }
}
@media(max-width:740px) {
  .storefront .refined-product { width:calc(100% - 36px); grid-template-columns:minmax(0,1fr); gap:20px; padding:15px 0 44px; }
  .refined-product .refined-product-breadcrumbs { font-size:10px; gap:7px; row-gap:2px; }
  .refined-product .refined-product-breadcrumbs [aria-current] { display:none; }
  .refined-product .refined-product-breadcrumbs > span[aria-hidden]:last-of-type { display:none; }
  .refined-product .product-gallery-refined { position:static; }
  .product-gallery-figure { height:min(112vw,510px); min-height:290px; }
  .product-gallery-thumbnails { gap:8px; margin-top:10px; }
  .product-gallery-thumb { flex-basis:53px; height:63px; }
  .product-gallery-footnote { padding-top:6px; font-size:9px; }
  .product-gallery-arrows { inset-inline:9px; }
  .product-gallery-arrows button { width:34px; height:34px; }
  .storefront .refined-product .refined-product-summary { padding-top:10px; }
  .storefront .refined-product .product-heading-modern h1 { max-width:450px; margin:12px 0 13px; font-size:31px; line-height:1.13; }
  .storefront .refined-product .product-price-detail-modern strong { font-size:19px; }
  .storefront .refined-product .product-lede-modern { margin:16px 0 18px; font-size:12px; }
  .product-finishes { margin:18px 0 20px; padding:14px 0; }
  .product-payment-refined { margin-bottom:18px; }
  .product-services-refined { gap:18px; padding:17px 0; }
  .product-services-refined > :is(div,a) { gap:9px; }
  .product-services-refined svg { width:20px; height:20px; flex-basis:20px; }
  .storefront .product-reviews-refined { width:calc(100% - 36px); padding:29px 0 37px; }
  .product-reviews-refined .reviews-grid { grid-template-columns:1fr; gap:18px; }
  .product-reviews-refined :is(.review-empty,.review-form-card) { padding:21px; }
  .product-reviews-refined .review-empty { min-height:150px; }
  .storefront .related-refined { width:calc(100% - 36px); padding:15px 0 48px; }
  .related-refined .section-head-modern { gap:15px; align-items:flex-start; }
  .related-refined .section-head-modern .modern-text-link { font-size:10px; white-space:nowrap; margin-top:2px; }
  .storefront .related-refined h2 { font-size:25px; }
  .product-image-dialog { width:calc(100vw - 20px); height:calc(100dvh - 40px); }
  .product-image-dialog-stage { padding:6px; }
  .product-image-dialog-top { padding-inline:13px; }
}
@media(prefers-reduced-motion:reduce) {
  .product-gallery-expand > img,.product-gallery-zoom-hint,.product-gallery-thumb,.product-gallery-arrows button,.product-whatsapp-link,.refined-product .product-accordions-modern summary > span { transition:none; }
  .refined-product .product-accordions-modern details[open] > div,.product-image-dialog[open] { animation:none; }
}
