.neo-collections{background:#f1e7d8}
.neo-hero-visual{background:radial-gradient(ellipse at 50% 48%,#fffaf1 0%,#f4e3cd 43%,#ff2b3d 82%)}
.neo-hero-product{mix-blend-mode:multiply;filter:contrast(1.16) saturate(1.2)}
.neo-collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.neo-collection-card{position:relative;display:block;min-width:0;aspect-ratio:4/5;overflow:hidden;background:#e8ddce;border-radius:6px}
.neo-collection-card::after{content:'';position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(18,14,12,.82))}
.neo-collection-card>img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.neo-collection-card:hover>img{transform:scale(1.045)}
.neo-collection-card[data-enquiry-product$="bath-scrub"]>img{object-fit:contain;padding:22px 24px 64px;background:#fffaf1}
.neo-collection-card[data-enquiry-product$="bath-scrub"]::after{inset:66% 0 0;background:linear-gradient(transparent,rgba(18,14,12,.82))}
.neo-collection-copy{position:absolute;z-index:1;left:17px;right:13px;bottom:15px;display:grid;gap:6px;color:#fff}
.neo-collection-copy small,.neo-collection-copy b{font-size:8px;letter-spacing:1px;font-weight:800}
.neo-collection-copy strong{font-family:var(--neo-display);font-size:clamp(24px,3vw,38px);font-weight:400;line-height:.9}
.neo-collection-copy b{margin-top:5px}
.neo-vibe-recommendation{margin-top:22px;padding:22px;background:#f5e8d8;border:1px solid rgba(20,17,15,.12);border-radius:6px}
.neo-vibe-recommendation[hidden]{display:none}
.neo-vibe-recommendation-heading{margin-bottom:14px}
.neo-vibe-recommendation-heading .neo-label{margin-bottom:5px}
.neo-vibe-recommendation-heading h3{margin:0 0 4px;font-family:var(--neo-display);font-size:32px;font-weight:400;line-height:1}
.neo-vibe-recommendation-heading>p:last-child{margin:0;color:var(--neo-muted);font-size:11px;line-height:1.55}
.neo-vibe-match-card{display:grid;grid-template-columns:minmax(120px,190px) 1fr;align-items:center;gap:18px;background:var(--neo-paper);padding:12px;border-radius:5px}
.neo-vibe-match-image{display:block;aspect-ratio:1/1;overflow:hidden;background:#eadfce}
.neo-vibe-match-image img{width:100%;height:100%;object-fit:cover}
.neo-vibe-match-details{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.neo-vibe-match-details>strong{font-size:14px}
.neo-vibe-match-details .neo-btn{min-height:38px;padding:9px 14px;font-size:8px}
.neo-collection-grid+.neo-section-top{margin-top:20px}
.catalog-enquiry-card .product-visual img{object-fit:contain;background:#fff}
.catalog-enquiry-card .product-line{align-items:center}
.catalog-enquiry-card .price{color:var(--neo-red-deep);font-size:10px;white-space:normal;text-align:right}
.catalog-enquiry-card .product-actions .btn{width:100%}
@media(max-width:900px){.neo-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.neo-collection-grid{gap:9px}.neo-collection-copy{left:10px;right:8px;bottom:10px}.neo-collection-copy small,.neo-collection-copy b{font-size:7px}.neo-collection-copy strong{font-size:clamp(22px,6vw,32px)}.neo-collection-card[data-enquiry-product$="bath-scrub"]>img{padding:16px 18px 58px}.neo-vibe-recommendation{padding:14px}.neo-vibe-match-card{grid-template-columns:100px 1fr;gap:12px}.neo-vibe-match-details{gap:8px}.neo-vibe-match-details>strong{font-size:11px}}
.product-gallery{min-width:0}
.product-gallery-stage{position:relative;display:grid;place-items:center;aspect-ratio:1/1;overflow:hidden;background:var(--cream)}
.product-gallery-stage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transition:opacity .16s ease}
.product-gallery-thumbnails{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory}
.product-gallery-thumb{position:relative;flex:0 0 calc((100% - 32px)/5);min-width:52px;min-height:52px;scroll-snap-align:start}
.product-gallery-thumb[aria-pressed=true]{border:2px solid var(--red)}
.product-gallery-thumb:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.product-gallery-thumb img{width:100%;height:100%;object-fit:contain}
.product-gallery-number{position:absolute;left:4px;top:4px;display:grid;place-items:center;width:20px;height:20px;background:rgba(255,253,251,.94);color:var(--ink);font-size:10px;font-weight:700}
.product-gallery-missing{padding:16px;color:var(--muted);font-size:13px;text-align:center}
.product-gallery-thumb .product-gallery-missing{position:absolute;inset:0;display:grid;place-items:center;padding:2px;font-size:8px}
.product-image-missing{width:100%;height:100%;display:grid;place-items:center;padding:16px;background:var(--cream);color:var(--muted);font-size:12px;text-align:center}
.product-detail-title{font-family:var(--serif);font-size:clamp(30px,4vw,48px);font-weight:400;line-height:1.08;margin:0 0 12px}
.product-availability{font-size:12px;color:var(--muted)}
.product-note-field{display:grid;gap:7px;margin:14px 0;font-size:12px;font-weight:600}
.product-note-field textarea{width:100%;min-height:62px;padding:10px;border:1px solid var(--line);background:#fff;resize:vertical}
.product-note-field .quantity-control{width:max-content}
.product-template-section{padding:14px 0;border-top:1px solid var(--line)}
.product-template-section summary{cursor:pointer;font-weight:700}
.product-template-section p{color:var(--muted);font-size:13px;line-height:1.7}
.cart-item-image-placeholder{width:76px;height:76px;display:grid;place-items:center;flex:0 0 76px;background:var(--cream);color:var(--red)}
.cart-price-disclaimer{margin:12px 0;color:var(--muted);font-size:12px}
.checkout-message-preview{margin:16px 0;padding:14px;background:var(--cream);border:1px solid var(--line)}
.checkout-message-preview h4{margin:0 0 8px;font-size:12px}
.checkout-message-preview pre{max-height:240px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 var(--sans)}
@media(max-width:650px){.product-gallery-thumbnails{gap:7px}.product-gallery-thumb{flex-basis:64px}.product-detail-title{font-size:34px}}
@media(prefers-reduced-motion:reduce){.product-gallery-stage img{transition:none}}

.neo-product-image{background:linear-gradient(145deg,#fffaf1,#f1e7d8)}
.neo-product-image::after{display:none}
.neo-product-image img{object-fit:contain;padding:12px;mix-blend-mode:normal}
.neo-product-card:nth-child(2) .neo-product-image,.neo-product-card:nth-child(3) .neo-product-image{background:linear-gradient(145deg,#fffaf1,#f1e7d8)}
.neo-product-card:hover .neo-product-image img{transform:none}
@media(max-width:560px){
  .neo-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .neo-product-image{aspect-ratio:1/1}
  .neo-product-image img{padding:7px}
  .neo-product-badge{left:7px;top:7px;padding:5px 7px;font-size:6px;letter-spacing:.5px}
  .neo-product-fav{right:7px;top:7px;width:25px;height:25px;font-size:16px}
  .neo-product-index{left:8px;bottom:7px;font-size:6px}
  .neo-product-details{padding:10px 9px}
  .neo-product-title-row{display:block}
  .neo-product-title-row h3{font-size:clamp(20px,6vw,25px)}
  .neo-product-title-row>strong{display:block;margin-top:5px;font-size:11px}
  .neo-product-details>p{font-size:9px;line-height:1.45;margin:7px 0 10px}
  .neo-product-actions{padding-top:9px}
  .neo-product-more{font-size:7px;letter-spacing:.5px}
  .neo-product-footnote{align-items:flex-start;font-size:9px;line-height:1.5}
}
