/* 2026-09-10 v1.26
 * - Added readable and prominent delivery messages to exact model cards.
 *
 * 2026-08-27 v1.25
 * - Reduced sibling-variant thumbnails to 180px and stacked their compact labels.
 *
 * 2026-08-27 v1.24
 * - Added compact sibling-variant cards below selected product forms.
 *
 * 2026-08-25 v1.23
 * - Shrink-wrapped and centered Models grids without an empty grey grid surface.
 *
 * 2026-08-25 v1.22
 * - Compacted text dividers, removed their border and aligned their copy with the Collection introduction.
 *
 * 2026-08-25 v1.21
 * - Matched grouped series titles to the Collection introduction size and kept them on one line.
 *
 * 2026-08-25 v1.20
 * - Styled grouped Collection alternatives with image or typographic series dividers.
 *
 * 2026-08-24 v1.19
 * - Prevented legacy full-width blockquotes from overrunning the quote padding.
 * 2026-08-24 v1.18
 * - Restored natural line wrapping inside legacy nowrap content contexts.
 * 2026-08-24 v1.17
 * - Protected responsive quote type from legacy global paragraph sizing.
 * 2026-08-24 v1.16
 * - Matched desktop and tablet quote scaling to the homepage statement proportions.
 * 2026-08-24 v1.15
 * - Reserved extra width for the longest phone quote line.
 * 2026-08-24 v1.14
 * - Preserved all three supplied quote lines at the narrowest phone width.
 * 2026-08-24 v1.13
 * - Kept the longest short-quote line inside a two-column phone grid.
 * 2026-08-24 v1.12
 * - Anchored quote groups to the exact vertical midpoint of their grid area.
 * 2026-08-24 v1.11
 * - Explicitly stretched the quote filler to the complete product-grid row height.
 * 2026-08-24 v1.10
 * - Centered quote groups with an internal grid and compacted mobile attribution.
 * 2026-08-24 v1.9
 * - Reused Collection product cards in the product-detail Models block.
 * - Kept four model columns on desktop and disabled sold-out links.
 * 2026-08-24 v1.8
 * - Centered the complete quote group in the stretched grid cell.
 * 2026-08-24 v1.7
 * - Isolated quote attribution from legacy global site-footer rules.
 * 2026-08-24 v1.6
 * - Enlarged and vertically centered Collection quotes with shared attribution styling.
 * 2026-08-24 v1.5
 * - Styled adaptive short and wide quotes in incomplete Collection grid rows.
 * 2026-08-24 v1.4
 * - Kept prices visible when touch devices have no hover interaction.
 * 2026-08-24 v1.3
 * - Added the shared product-section introduction and responsive Collection grid.
 * 2026-08-22 v1.2
 * - Limited product-card hover motion and price reveals to non-touch devices.
 * 2026-08-22 v1.1
 * - Equalized product-card copy heights with two title lines and one subtitle line.
 * 2026-08-21 v1.0
 * - Added reusable product-card carousel styling.
 */
.product-showcase { position:relative; box-sizing:border-box; padding:64px 0 88px; overflow:hidden; background:#f6f3ec; }
.product-showcase-intro { width:min(1480px,calc(100vw - 80px)); margin:0 auto 52px; }
.product-showcase-intro h2 { max-width:none; margin:0!important; color:#25201d; font-family:'Reem Kufi',sans-serif; font-size:clamp(30px,4vw,56px); font-weight:300; line-height:1.12; letter-spacing:.055em; }
.product-showcase-intro p { max-width:760px; margin:18px 0 0; color:rgba(37,32,29,.7); font:400 16px/1.65 "avenir-lt-pro",sans-serif; }
.product-cards { flex:1 1 auto; width:100%; max-width:100%; min-height:0; overflow:visible; }
.product-cards .swiper-wrapper { position:absolute; inset:0; height:auto; min-height:0; }
.product-card { position:relative; height:100%; }
.product-card::after { position:absolute; top:0; right:0; bottom:0; width:1px; background:linear-gradient(to bottom,rgba(37,32,29,.12) 0%,rgba(37,32,29,.12) calc(100% - 80px),transparent 100%); content:""; pointer-events:none; }
.product-card a { display:grid; grid-template-rows:minmax(0,1fr) auto; height:100%; color:#25201d!important; text-decoration:none; }
.product-card-media { position:relative; display:flex; align-items:center; justify-content:center; min-height:0; padding:clamp(28px,4vw,68px); overflow:hidden; background:#eeece7; }
.product-card-shadow { position:absolute; z-index:0; inset:0; display:block; width:100%; height:100%; object-fit:cover; transform-origin:center; transition:transform .2s cubic-bezier(.16,1,.3,1); pointer-events:none; }
.product-card-product { position:relative; z-index:1; display:block; width:100%; height:100%; object-fit:contain; transition:transform .2s cubic-bezier(.16,1,.3,1); }
body:not(.is-touch-device) .product-card a:hover .product-card-product,.product-card a:focus-visible .product-card-product { transform:translateY(-8px); }
body:not(.is-touch-device) .product-card a:hover .product-card-shadow,.product-card a:focus-visible .product-card-shadow { transform:scaleX(.92); }
.product-card-copy { height:106px; padding:22px 24px 18px; overflow:hidden; background:#f6f3ec; box-sizing:border-box; }
.product-card-copy-with-delivery { height:auto; min-height:106px; overflow:visible; }
.product-card-copy .spread { display:flex; align-items:baseline; justify-content:space-between; gap:18px; width:100%; }
.product-card-copy strong,.product-card-copy small { display:block; font-family:"avenir-lt-pro",sans-serif; line-height:1.35; }
.product-card-copy strong { display:-webkit-box; flex:1 1 auto; min-width:0; height:2.7em; overflow:hidden; font-size:16px; font-weight:500; letter-spacing:.035em; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; }
.product-card-copy small { margin-top:7px; color:rgba(37,32,29,.58); font-size:9px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.product-card-copy small:not(.product-card-stock) { flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.product-card-price { flex:0 0 auto; opacity:0; font:500 16px/1.35 "avenir-lt-pro",sans-serif; letter-spacing:.035em; white-space:nowrap; transition:opacity .2s ease; }
body:not(.is-touch-device) .product-card a:hover .product-card-price,.product-card a:focus-visible .product-card-price { opacity:1; }
body.is-touch-device .product-card-price { opacity:1; }
.product-card-stock { flex:0 0 auto; text-align:right; white-space:nowrap; }
.product-card-delivery { display:block; margin-top:14px; color:rgba(37,32,29,.72); font:500 12px/1.5 "avenir-lt-pro",sans-serif; letter-spacing:.015em; }
.product-card-delivery-prominent { padding:12px 14px; border-left:3px solid #8a5a2b; background:rgba(138,90,43,.09); color:#25201d; font-weight:700; }
.holthin-delivery-notice { max-width:720px; margin:20px 0; color:#25201d; font:500 15px/1.55 "avenir-lt-pro",sans-serif; letter-spacing:.01em; }
.holthin-delivery-notice-prominent { padding:16px 18px; border-left:4px solid #8a5a2b; background:rgba(138,90,43,.1); font-size:16px; font-weight:700; }
.holthin-delivery-notice-cart { margin:16px 0 4px; }
.product-card-disabled a { cursor:default; pointer-events:none; }
.holthin-other-variants { width:100%; max-width:720px; margin:60px auto 100px; padding:0 20px; box-sizing:border-box; }
.holthin-other-variants h2 { margin:0 0 30px!important; text-align:left; }
.holthin-other-variants-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,180px)); justify-content:start; gap:30px; }
.holthin-other-variant { width:100%; max-width:180px; }
.holthin-other-variant a { display:block; color:inherit!important; text-decoration:none; }
.holthin-other-variant-media { display:flex; align-items:center; justify-content:center; width:100%; max-width:180px; aspect-ratio:1; overflow:hidden; }
.holthin-other-variant-media img { display:block; width:100%; max-width:180px; height:100%; object-fit:contain; transition:transform .2s cubic-bezier(.16,1,.3,1); }
body:not(.is-touch-device) .holthin-other-variant a:hover img,.holthin-other-variant a:focus-visible img { transform:translateY(-6px); }
.holthin-other-variant-copy { display:block; padding-top:12px; }
.holthin-other-variant-copy strong { font:500 14px/1.35 "avenir-lt-pro",sans-serif; letter-spacing:.035em; }
.holthin-other-variant-copy small { display:block; margin-top:5px; color:rgba(37,32,29,.58); font:700 9px/1.35 "avenir-lt-pro",sans-serif; letter-spacing:.12em; text-align:left; text-transform:uppercase; white-space:nowrap; }
.product-cards-button { position:absolute; z-index:5; top:calc((100% - 106px)/2); display:flex; align-items:center; justify-content:center; width:52px; height:52px; margin-top:-26px; padding:0; border:1px solid rgba(37,32,29,.16); border-radius:50%; background:#f6f3ec; color:#25201d; font-size:23px; cursor:pointer; }
.product-cards-button::after { content:none!important; }
.product-cards-button.swiper-button-disabled { opacity:0; pointer-events:none; }
.product-cards-prev { left:28px; }
.product-cards-next { right:28px; }
.product-cards-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:1px; width:100%; background:rgba(37,32,29,.12); }
.product-cards-grid .product-card { min-width:0; height:auto; background:#f6f3ec; }
.product-cards-grid .product-card-media { aspect-ratio:1/1.12; }
.product-cards-grid .product-card::after { display:none; }
.product-cards-grid.product-model-cards { display:inline-grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:100%; max-width:100%; margin-top:30px; background:transparent; vertical-align:top; }
.dial-flex-wrapper[dials-count="1"] .product-model-cards { grid-template-columns:minmax(0,1fr); max-width:25%; }
.dial-flex-wrapper[dials-count="2"] .product-model-cards { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:50%; }
.dial-flex-wrapper[dials-count="3"] .product-model-cards { grid-template-columns:repeat(3,minmax(0,1fr)); max-width:75%; }
.product-series-groups { width:100%; }
.product-series-group { width:100%; overflow:hidden; background:#f6f3ec; }
.product-series-group + .product-series-group { margin-top:1px; }
.product-series-divider { position:relative; display:flex; align-items:flex-end; width:100%; box-sizing:border-box; overflow:hidden; }
.product-series-divider-image { min-height:clamp(280px,38vw,600px); padding:clamp(34px,5vw,80px); background:#25201d; color:#f6f3ec; }
.product-series-divider-image::after { position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,rgba(18,15,13,.04) 10%,rgba(18,15,13,.72) 100%); content:""; pointer-events:none; }
.product-series-divider-image img { position:absolute; z-index:0; inset:0; display:block; width:100%; height:100%; max-height:none; object-fit:cover; }
.product-series-divider-text { min-height:0; align-items:center; padding:52px 0; border-top:0; background:#f6f3ec; color:#25201d; }
.product-series-divider-copy { position:relative; z-index:2; width:min(860px,100%); }
.product-series-divider-text .product-series-divider-copy { width:min(1480px,calc(100vw - 80px)); margin-right:auto; margin-left:auto; }
.product-series-divider-copy h3 { margin:0!important; overflow:hidden; color:inherit; font-family:'Reem Kufi',sans-serif; font-size:clamp(30px,4vw,56px); font-weight:300; line-height:1.12; letter-spacing:.055em; text-overflow:clip; text-transform:uppercase; white-space:nowrap; }
.product-series-divider-copy p { display:-webkit-box; max-width:720px; margin:clamp(14px,2vw,24px) 0 0; overflow:hidden; color:inherit; font:400 clamp(13px,1.25vw,18px)/1.55 "avenir-lt-pro",sans-serif; letter-spacing:.02em; opacity:.82; -webkit-box-orient:vertical; -webkit-line-clamp:3; line-clamp:3; }
.product-cards-grid-filler { --product-quote-padding:clamp(36px,6vw,96px); position:relative; display:block; align-self:stretch; width:100%; min-width:0; padding:0; background:#f6f3ec; box-sizing:border-box; color:#25201d; container-type:inline-size; }
.product-cards-grid-filler[hidden],.product-cards-grid-quote[hidden] { display:none; }
.product-cards-grid-filler[data-empty-slots="1"] { --product-quote-padding:clamp(16px,3vw,40px); }
.product-cards-grid-quote { position:absolute; top:50%; right:var(--product-quote-padding); left:var(--product-quote-padding); width:auto!important; max-width:none; margin:0; color:inherit; font-family:"avenir-lt-pro",sans-serif; font-style:normal; text-transform:uppercase; transform:translateY(-50%); }
.product-cards-grid-quote p { margin:0; font:inherit!important; letter-spacing:inherit!important; white-space:normal!important; }
.product-cards-grid-quote p span { white-space:normal!important; }
.product-cards-grid-quote-short { font-size:clamp(17px,1.8vw,36px); font-weight:400; line-height:1.18; letter-spacing:.05em; }
.product-cards-grid-quote-short span { display:block; }
.product-cards-grid-quote-long { font-size:clamp(26px,3.25vw,58px); font-weight:400; line-height:1.16; letter-spacing:.055em; }
.product-cards-grid-quote .product-cards-grid-quote-attribution { display:flex!important; flex-flow:row nowrap; align-items:center; justify-content:flex-start; gap:clamp(12px,4cqi,22px); width:100%; margin-top:clamp(22px,7cqi,42px); color:#8a735e; font-size:clamp(9px,2.5cqi,14px); font-weight:600; line-height:1.2; letter-spacing:.18em; }
.product-cards-grid-quote-attribution::before { flex:0 0 clamp(30px,18cqi,84px); height:1px; background:#25201d; content:""; }
.product-cards-grid-quote cite { display:block; flex:0 1 auto; margin:0; font-style:normal; white-space:nowrap; }
@media (min-width:900px) { .product-cards-grid{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (min-width:1600px) { .product-cards-grid{grid-template-columns:repeat(4,minmax(0,1fr))} }
@media (max-width:800px) { .product-cards-grid.product-model-cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:100%}.dial-flex-wrapper[dials-count="1"] .product-model-cards{grid-template-columns:minmax(0,1fr);max-width:50%} }
@media (max-width:720px) { .product-showcase{padding:34px 0 56px}.product-showcase-intro{width:calc(100vw - 40px);margin-bottom:30px}.product-card-media{padding:28px}.product-card-copy{height:92px;padding:18px 18px 14px}.product-card-copy-with-delivery{height:auto;min-height:92px}.product-card-copy .spread{gap:9px}.product-card-copy strong,.product-card-price{font-size:14px}.product-card-delivery{font-size:10px;line-height:1.45}.product-card-delivery-prominent{padding:10px}.product-cards-grid .product-card-media{aspect-ratio:1/1.2;padding:18px}.product-cards-grid .product-card-copy{padding-right:12px;padding-left:12px}.product-cards-grid .product-card-copy strong,.product-cards-grid .product-card-price{font-size:12px}.product-cards-grid .product-card-copy small{font-size:8px}.holthin-other-variants{margin-top:40px;padding-right:14px;padding-left:14px}.holthin-other-variants-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.product-series-divider-image{min-height:clamp(240px,72vw,360px);padding:30px 20px}.product-series-divider-text{padding:34px 0}.product-series-divider-text .product-series-divider-copy{width:calc(100vw - 40px)}.product-series-divider-copy p{margin-top:12px;font-size:12px;line-height:1.5;-webkit-line-clamp:3;line-clamp:3}.product-cards-grid-filler[data-empty-slots="1"]{--product-quote-padding:14px}.product-cards-grid-quote-short{font-size:clamp(9px,4.6cqi,14px);line-height:1.22;letter-spacing:.025em}.product-cards-grid-quote .product-cards-grid-quote-attribution{gap:8px;margin-top:14px;font-size:7px;letter-spacing:.08em}.product-cards-grid-quote-attribution::before{flex-basis:18px}.product-cards-button{top:calc((100% - 92px)/2);width:44px;height:44px;margin-top:-22px}.product-cards-prev{left:14px}.product-cards-next{right:14px} }
