/* Compact, photo-first product cards — approved Dreamitt concept. */
.home-products .home-product-grid{align-items:stretch;gap:24px}
.home-products .home-section-header{margin-bottom:28px}
.home-products .home-section-header h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.08}
.home-products .product-section-subtitle{margin:10px 0 0;font-size:clamp(1.1rem,2vw,1.5rem);color:var(--green);line-height:1.4}
.home-products .product-story-card{background:#fff;border:1px solid #eeeae7;border-radius:20px;color:var(--green);cursor:default;overflow:hidden;box-shadow:none;transition:box-shadow .25s ease,border-color .25s ease}
.home-products .product-story-card .home-product-image{width:100%;aspect-ratio:4/3;margin:0;border:0;border-radius:18px;background:var(--grey);isolation:isolate;flex-shrink:0}
.home-products .product-story-card .home-product-slides,.home-products .product-story-card .home-product-slide,.home-products .product-story-card .home-product-slide img{border:0;border-radius:0}
.home-products .product-story-copy{padding:18px 20px 0}
.home-products .product-story-copy h3{margin:0 0 5px;padding:0;border:0;color:var(--green);font:900 clamp(1.5rem,2.25vw,2rem)/1.12 var(--heading);letter-spacing:-.045em}
.home-products .product-story-copy h3::after{display:none}
.home-products .product-story-copy h3 a{color:inherit;text-decoration:none}
.home-products .product-story-description{margin:0;min-height:2.8em;color:var(--green);font-size:clamp(.875rem,1.15vw,1rem);font-weight:650;line-height:1.4}
.home-products .product-story-usps{display:grid;grid-template-columns:1fr;gap:8px;list-style:none;margin:12px 0 0;padding:0}
.home-products .product-story-usps li{display:flex;align-items:center;gap:9px;min-width:0;font-size:clamp(.79rem,1.05vw,.94rem);line-height:1.4}
.home-products .product-story-check{display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;border-radius:50%;background:var(--coral);color:var(--green);font-size:13px;font-weight:800}
.home-products .product-story-footer{margin-top:auto;padding:19px 20px 20px}
.home-products .product-story-cta{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 12px;border-radius:999px;background:var(--coral);color:var(--green);text-decoration:none;font:800 .875rem/1.4 var(--body);transition:background .2s ease}
.home-products .product-story-cta span{font-size:1.25rem;font-weight:400;line-height:1}
.home-products .product-story-cta:hover{background:#ff9d83}
.home-products .product-story-cta:focus-visible,.home-products .product-story-copy h3 a:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.home-products .product-story-card .home-product-offers{top:12px;left:12px;right:12px;gap:6px}
.home-products .product-story-card .home-product-offer,.home-products .product-story-card .home-product-bundle{padding:7px 10px;font-size:.7rem;box-shadow:none}
.home-products .product-story-card .home-product-bundle small{font-size:.6rem}
.home-products .product-story-card .home-product-dots{bottom:2px;background:transparent;padding:0}
.home-products .product-story-card .home-product-dots button{width:36px;height:44px}
.home-products .product-story-card .home-product-dots button::after{width:7px;height:7px;background:#c4c6c6;box-shadow:0 0 0 2px #ffffffa0}
.home-products .product-story-card .home-product-dots button[aria-current=true]::after{width:8px;height:8px;background:var(--coral)}
.home-products .product-story-card .home-product-slides:focus-visible{outline:2px solid var(--green);outline-offset:-3px}
@media(hover:hover) and (pointer:fine){
 .home-products .product-story-card:hover{transform:none;border-color:#e7b7a8;box-shadow:0 8px 24px #2c41410d}
 .home-products .product-story-card:hover .home-product-slide img{transform:scale(var(--photo-zoom,1));filter:brightness(1.025)}
}
@media(max-width:900px){
 .home-products .home-product-grid{grid-template-columns:1fr;gap:24px}
 .home-products .product-story-card{width:100%;max-width:480px;margin-inline:auto}
 .home-products .product-story-copy h3{font-size:1.75rem}
 .home-products .product-story-description{font-size:.94rem;min-height:0}
 .home-products .product-story-usps li{font-size:.875rem}
}
@media(max-width:380px){
 .home-products .product-story-copy{padding:16px 16px 0}
 .home-products .product-story-footer{padding:17px 16px 18px}
 .home-products .product-story-usps li{font-size:.8rem}
}
@media(prefers-reduced-motion:reduce){.home-products .product-story-card,.home-products .product-story-cta{transition:none}.home-products .product-story-card:hover .home-product-slide img{filter:none}}
/* Approved example: real product photography and its exact topper illustration. */
.home-products .product-story-card .home-product-image{aspect-ratio:1.17;background:#efedeb}
.home-products .product-story-card .product-concept-bed img{object-fit:contain;padding:18px 9px 28px;box-sizing:border-box}
.home-products .product-story-card .home-product-offers{justify-content:flex-end;top:20px;left:16px;right:16px}
.home-products .product-concept-label{background:#ffe7e1;color:var(--green);padding:8px 15px;border-radius:999px;font-size:.75rem;line-height:1.25;font-weight:700}
.home-products .product-concept-topper{position:absolute;inset:16% 0 7%;background-image:url('assets/home-card-approved-concept.png');background-repeat:no-repeat;background-size:318.01% 321%;background-position:96.58% 44.84%;background-color:#eeeceb}
.home-products .product-story-check{color:#fff;background:#ff9380}
.home-products .product-story-cta{background:#ff9380;color:#fff}
.home-products .product-story-cta:hover{background:#ec806e}
.home-products .product-story-description{min-height:0}
@media(min-width:901px){.home-products .product-story-description{min-height:2.8em}}

/* Approved Dreambox lifestyle photos: preserve the complete bed. */
.home-products [aria-labelledby="story-dreambox-name"] .home-product-image{aspect-ratio:3/2}
.home-products [aria-labelledby="story-dreambox-name"] .home-product-slide img{object-fit:contain;padding:0;transform:none}

/* Keep new MittPillow studio photographs fully visible. */
.home-products [aria-labelledby="story-mittpillow-name"] .home-product-image{aspect-ratio:3/2}
.home-products [aria-labelledby="story-mittpillow-name"] .home-product-slide img[src*="-optimized.webp"]{object-fit:contain;padding:0;transform:none}
.home-products [aria-labelledby="story-mittpillow-name"] .home-product-dots button{width:26px}

/* Shared 4:3 art direction: centered, edge-to-edge product photography. */
.home-products .product-story-card .home-product-image{aspect-ratio:4/3}
.home-products .product-story-card .home-product-slide img{object-fit:cover;object-position:center;transform:none;padding:0}
.home-products [aria-labelledby="story-dreambox-name"] .home-product-slide img,
.home-products [aria-labelledby="story-mittpillow-name"] .home-product-slide img[src*="-optimized.webp"]{object-fit:cover;object-position:center;transform:none;padding:0}
.home-products .product-story-card:hover .home-product-slide img{transform:none}
.home-products .gallery-playback{position:absolute;top:12px;left:12px;z-index:4;width:40px;height:40px;display:grid;place-items:center;border:1px solid #ffffffbb;border-radius:50%;background:#ffffffe6;color:var(--green);cursor:pointer;box-shadow:0 2px 8px #2c414112}
.home-products .gallery-playback svg{width:15px;height:15px;fill:currentColor;pointer-events:none}
.home-products .gallery-playback:focus-visible{outline:2px solid var(--green);outline-offset:3px}

/* Equal media rows with navigation below the photograph, never over it. */
.home-products .product-story-card .home-product-image{
 display:grid;grid-template-rows:auto 40px;row-gap:10px;aspect-ratio:auto;height:auto;background:#fff;
}
.home-products .product-story-card .home-product-slides{
 position:relative;inset:auto;width:100%;height:auto;aspect-ratio:4/3;border-radius:18px;align-self:start;
}
.home-products .product-story-card .home-product-slide{height:100%;align-self:stretch}
.home-products .product-story-card .home-product-dots{
 position:static;inset:auto;transform:none;justify-self:center;align-self:center;height:40px;margin:0;padding:0;background:#fff;
}
.home-products .product-story-card .home-product-dots button{height:40px}
/* Match the Dreambox deal photo indicator: dark 18px active pill, 7px dots. */
.home-products .product-story-card .home-product-dots{gap:0;justify-content:center}
.home-products .product-story-card .home-product-dots button{width:14px;height:40px;border-radius:0;background:transparent;transition:width .2s ease}
.home-products .product-story-card .home-product-dots button[aria-current="true"]{width:25px;background:transparent}
.home-products .product-story-card .home-product-dots button::after{width:7px;height:7px;border-radius:50%;background:rgba(16,47,76,.3);box-shadow:none;transition:width .2s ease,background-color .2s ease}
.home-products .product-story-card .home-product-dots button[aria-current="true"]::after{width:18px;height:7px;border-radius:999px;background:var(--ink)}

/* Single approved image per homepage product card. */
.home-products .product-story-card .home-product-image-static{grid-template-rows:auto;row-gap:0}
.home-products .product-story-card .home-product-image-static .home-product-slides{overflow:hidden;cursor:default;touch-action:auto}

/* Lead the Dreambox offers with savings and fast delivery. */
/* A single quiet surface ties the photographs and content together. */
.home-products .home-product-grid{gap:24px;align-items:stretch}
.home-products .product-story-card{background:#fcf9f3;border:1px solid #eee9e2;border-radius:24px;box-shadow:0 4px 16px #2c414105}
.home-products .product-story-card .home-product-image-static .home-product-slides{aspect-ratio:1/1;border-radius:0;background:transparent}
.home-products .product-story-card .home-product-image-static{border-radius:0;background:transparent;isolation:auto}
.home-products .product-story-card .home-product-image-static img{object-fit:contain;object-position:center;mix-blend-mode:normal}
.home-products .product-story-copy{padding:16px 26px 0}
.home-products .product-story-copy h3{font-size:clamp(1.5rem,2.1vw,1.85rem);line-height:1.2;letter-spacing:-.035em;margin-bottom:8px}
.home-products .product-story-description{min-height:1.5em;font-size:.94rem;font-weight:500;line-height:1.5;color:#51615c}
.home-products .product-story-usps{gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #2c414112}
.home-products .product-story-usps li{font-size:.875rem;line-height:1.5;align-items:flex-start;gap:10px}
.home-products .product-story-check{flex:0 0 18px;width:18px;height:21px;border-radius:0;background:transparent;color:#b65e4e;font-size:16px}
.home-products .product-story-footer{padding:24px 26px 26px}
.home-products .product-story-cta{min-height:48px;padding:12px 18px;justify-content:space-between;border-radius:14px;background:var(--green);color:#fff;font-size:.875rem;font-weight:700}
.home-products .product-story-cta:hover{background:#405a51}
.home-products .product-story-cta span{color:#ffc8b8}
.home-products .product-story-card .home-product-offers{top:18px;left:18px;right:18px}
.home-products .product-concept-label{background:#fffaf5e6;border:1px solid #eadbd0;padding:7px 12px;font-size:.6875rem;font-weight:650;color:var(--green);letter-spacing:.01em}
.home-products .product-story-copy>.product-concept-label{display:inline-flex;align-items:center;min-height:28px;margin-bottom:12px;background:#ffe5dc;border:0}
/* Match the unmodified MittPillow photograph: circle x=49.6%, y=14.7%, diameter=43.8%. */
.home-products .product-story-card .product-family-stage .home-product-slides{background:#fcf9f3}
.home-products .product-family-stage .home-product-slide::before{content:"";position:absolute;z-index:0;left:49.6%;top:14.7%;width:43.8%;aspect-ratio:1;border-radius:50%;background:#fee0d6}
.home-products .product-story-card .product-family-stage img{position:absolute;z-index:1;inset:4% auto auto 5%;width:90%;height:90%;mix-blend-mode:normal;object-fit:contain;object-position:center;filter:drop-shadow(0 5px 4px #483c2920)}
.home-products [aria-labelledby="story-dreambox-name"] .product-family-stage img{top:3%}
@media(hover:hover) and (pointer:fine){.home-products .product-story-card:hover{border-color:#dacbc0;box-shadow:0 8px 24px #2c41410a}.home-products .product-story-card:hover .home-product-slide img{filter:none}}
@media(min-width:901px) and (max-width:1100px){.home-products .product-story-copy{padding-inline:20px}.home-products .product-story-footer{padding-inline:20px}.home-products .product-story-description{min-height:3em}}
@media(max-width:700px){.home-products .product-story-copy{padding:14px 22px 0}.home-products .product-story-footer{padding:22px}.home-products .product-story-description{min-height:0}.home-products .product-story-usps{margin-top:20px;padding-top:18px}}
.dreambox-deals .home-section-header .dreambox-sale-title{font-size:clamp(3.2rem,7vw,6rem);line-height:1.02;letter-spacing:-.045em}
.dreambox-delivery-highlight{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.3em;margin:20px 0 0;padding:13px 20px;border-radius:16px;background:var(--green);color:#fff;font-size:clamp(1rem,2.2vw,1.5rem);line-height:1.35}
.dreambox-delivery-highlight>span{display:grid;place-items:center;width:1.35em;height:1.35em;margin-right:.2em;border-radius:50%;background:#ff9380;color:var(--green);font-weight:800}
.dreambox-delivery-highlight strong{font-weight:800}
@media(max-width:400px){.dreambox-delivery-highlight{padding:12px 14px;font-size:.94rem}}
