/* Optional quick view and direct product links share the existing visual language. */
.ch-product-image-wrap{position:relative;width:100%;min-width:0}
.ch-product-image-wrap .quick-view[hidden]{display:none!important}
.ch-product-image-wrap>a.product-image-button{display:block;position:relative;width:100%;border:0;padding:0;text-decoration:none;overflow:hidden;border-radius:9px}
.ch-product-image-wrap .quick-view{position:absolute;inset:auto 12px 12px auto;display:block!important;width:auto;min-height:34px;margin:0;padding:7px 12px;border:1px solid #d7ddcf;border-radius:5px;background:var(--paper);color:var(--ink);font:600 11px/1.5 Manrope,Arial,sans-serif;text-align:center;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .15s,transform .15s;cursor:pointer}
.ch-product-image-wrap:hover .quick-view,.ch-product-image-wrap:focus-within .quick-view{opacity:1;transform:none;pointer-events:auto}
.product-title-row a.product-title{display:inline;text-decoration:none;color:inherit}
.product-title-row a.product-title:hover{text-decoration:underline;text-underline-offset:3px}
a.card-cta{text-decoration:none;color:var(--ink)}
.ch-product-image-wrap a:focus-visible,.quick-view:focus-visible,a.card-cta:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

/* Read name and price before the gallery on mobile without duplicating headings. */
.ch-product-layout.ch-ux-layout{grid-template-areas:"gallery overview" "gallery purchase";grid-template-rows:auto 1fr;gap:0 7%!important}
.ch-ux-layout>.wp-block-group{margin:0!important;min-width:0}
.ch-product-gallery-column{grid-area:gallery}
.ch-product-overview{grid-area:overview}
.ch-product-purchase{grid-area:purchase;scroll-margin-top:24px}
.ch-product-overview h1{margin:0 0 16px}
.ch-product-purchase.ch-product-summary{padding-top:0}
.ch-product-purchase .ch-sample-choices{margin-top:0}
.ch-product-purchase .ch-availability-link{font:500 12px/1.7 Manrope,Arial,sans-serif;margin:15px 0 0}
.ch-availability-link a{color:var(--ink);text-underline-offset:4px}
.ch-native-options[hidden]{display:none!important}
.ch-enhanced-variations>.variations{display:none!important}
.ch-enhanced-variations .woocommerce-variation-price{display:none}
.ch-enhanced-variations .ch-native-options>.reset_variations{display:inline-block;margin:0 0 16px}
.ch-enhanced-variations .quantity input{border:1px solid #c4cdbb;border-radius:6px;background:var(--paper);color:var(--ink);font:500 14px/1.5 Manrope,Arial,sans-serif}
#collection{scroll-margin-top:24px}
@media(max-width:800px){
 .ch-product-layout.ch-ux-layout{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"overview" "gallery" "purchase";grid-template-rows:auto auto auto;gap:20px!important}
 .ch-ux-layout>.wp-block-group{width:100%;max-width:650px;margin-inline:auto!important}
 .ch-product-overview.ch-product-summary h1{font-size:38px;line-height:1.1;margin:0 0 10px}
 .ch-product-overview.ch-product-summary .ch-product-price{font-size:24px;margin:0 0 10px}
 .ch-product-overview.ch-product-summary .wp-block-post-excerpt{margin:0;font-size:13px;line-height:1.65}
 .ch-product-gallery-column .ch-gallery-hero{aspect-ratio:1.3}
 .ch-product-gallery-column .ch-gallery-main{object-fit:contain}
 .ch-product-gallery-column .ch-gallery-thumbs{margin-top:9px;gap:8px}
 .ch-product-gallery-column .ch-gallery-thumbs button{width:49px;height:49px}
 .ch-product-purchase .ch-sample-choices fieldset{margin-bottom:18px}
}
@media(max-width:560px){
 .ch-product-image-wrap .quick-view{inset:auto 7px 7px auto;min-height:30px;padding:5px 8px;font-size:10px}
 .ch-product-image-wrap:focus-within .quick-view{opacity:1;pointer-events:auto}
 .wp-block-columns.hero{padding-top:8px;row-gap:18px!important}
 .hero-copy h1{font-size:48px;line-height:1.03;margin-bottom:16px}
 .hero-copy .hero-description{font-size:13px;line-height:1.7}
 .hero-copy .wp-block-buttons{margin-top:18px!important}
 .hero-visual{aspect-ratio:1.5}
 .hero-visual figure,.hero-visual img{height:100%!important}
 .category-strip{margin-top:20px;margin-bottom:32px;padding-top:18px;padding-bottom:15px}
 .collection .section-heading{margin-bottom:20px}
 .ch-product-layout.ch-ux-layout{gap:18px!important}
 .ch-product-overview.ch-product-summary h1{font-size:36px;letter-spacing:-1px}
}
@media(hover:none){.ch-product-image-wrap .quick-view{opacity:1;transform:none;pointer-events:auto}}
@media(prefers-reduced-motion:reduce){.ch-product-image-wrap .quick-view{transition:none}}
