/* Main homepage only; comparison previews retain their own banner. */
.main-home-banner{min-height:620px!important;align-items:stretch}
.main-home-banner .signature-copy{padding:40px 10%;align-self:center}
.main-home-banner .signature-copy h1{font-size:clamp(49px,4.8vw,76px);line-height:1.04;letter-spacing:-1.5px;margin:20px 0 25px}
.main-home-banner .signature-copy p{font-size:17px;line-height:1.7;max-width:450px}
.main-home-banner .signature-photo{min-height:620px!important;isolation:isolate;background:#eee5d9}
.main-hero-slide{position:absolute;inset:0;overflow:hidden;opacity:0;transition:opacity .8s ease;pointer-events:none}
.main-hero-slide[data-active=true]{opacity:1}
.main-hero-backdrop{position:absolute;inset:-25px;background-size:cover;background-position:center;filter:blur(22px);opacity:.3;transform:scale(1.06)}
.main-hero-slide img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:var(--cake-focus,50% 50%);padding:0;box-sizing:border-box}
.main-home-banner .signature-caption{z-index:3;left:20px;right:20px;bottom:18px;padding:14px 18px}
.main-hero-label{position:absolute;bottom:94px;left:20px;z-index:2;padding:5px 9px;background:#fff9ed;color:#654a20;border:1px solid #dfc796;font-size:12px}
.main-hero-controls{position:absolute;z-index:4;top:15px;right:15px;display:flex;align-items:center;gap:3px;background:#fffcf5f5;padding:3px 5px;border-radius:5px;box-shadow:0 2px 12px #00000015}
.main-hero-controls button{min-width:44px;min-height:44px;border:0;background:transparent;color:#634512;font-size:16px;padding:9px}
.main-hero-controls button[data-main-pause]{font-size:13px;min-width:54px}
.main-hero-controls button:focus-visible{outline:3px solid #b07413;outline-offset:1px}
.main-hero-controls [data-main-count]{font-size:12px;color:#634512;min-width:39px;text-align:center;font-variant-numeric:tabular-nums}
.main-hero-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1100px){.main-home-banner{min-height:580px!important}.main-home-banner .signature-photo{min-height:580px!important}.main-home-banner .signature-copy{padding:32px 8%}.main-home-banner .signature-copy h1{font-size:54px}}
@media(max-width:760px){.main-home-banner{min-height:0!important}.main-home-banner .signature-copy{padding:30px 6%}.main-home-banner .signature-copy h1{font-size:clamp(43px,10vw,58px);margin:16px 0 20px}.main-home-banner .signature-copy p{font-size:16px}.main-home-banner .signature-photo{min-height:420px!important}.main-hero-slide img{padding:0}.main-home-banner .signature-caption{left:12px;right:12px;bottom:12px;padding:12px 15px}.main-hero-controls{top:10px;right:10px}.main-hero-label{left:12px;bottom:87px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.main-hero-slide{transition:none}}

/* Each photo fills the stage; framing follows the cake rather than the room. */
.main-hero-backdrop{display:none}
.main-hero-slide:has(img[src="/assets/hero-wedding-aj-v2.webp"]){--cake-focus:50% 42%}
.main-hero-slide:has(img[src="/assets/custom-gold-roses.webp"]){--cake-focus:50% 47%}
.main-hero-slide:has(img[src="/assets/pink-gold-celebration-closeup.webp"]){--cake-focus:50% 40%}
.main-hero-slide:has(img[src="/assets/custom-cherry-bows-table.webp"]){--cake-focus:50% 50%}
.main-hero-slide:has(img[src="/assets/ivory-pearl-celebration.webp"]){--cake-focus:50% 64%}
.main-hero-slide:has(img[src="/assets/final-purple-floral.webp"]){--cake-focus:50% 59%}
.main-hero-slide:has(img[src="/assets/final-fruit-cream.webp"]){--cake-focus:50% 48%}
.main-hero-slide:has(img[src="/assets/final-gold-purple.webp"]){--cake-focus:50% 53%}
.main-hero-slide:has(img[src="/assets/final-black-gold.webp"]){--cake-focus:50% 50%}
.main-hero-slide:has(img[src="/assets/review-wedding-lace-candles-visualisation.webp"]){--cake-focus:50% 45%}
.main-hero-slide:has(img[src="/assets/birthday-chocolate.webp"]){--cake-focus:50% 50%}
.main-hero-slide:has(img[src="/assets/round-strawberry-drip.webp"]){--cake-focus:50% 47%}
.main-hero-slide:has(img[src="/assets/review-sheet-chocolate-cherries.webp"]){--cake-focus:50% 43%}
.main-hero-slide:has(img[src="/assets/final-princess-castle.webp"]){--cake-focus:50% 43%}
.main-hero-slide:has(img[src="/assets/cupcake-boxed-selection.webp"]){--cake-focus:50% 52%}
.main-hero-slide:has(img[src="/assets/sheet-chocolate-fudge.webp"]){--cake-focus:50% 50%}
.main-hero-slide:has(img[src="/assets/kids-racecar-design.webp"]){--cake-focus:50% 43%}
.main-hero-slide:has(img[src="/assets/parfait.webp"]){--cake-focus:50% 50%}
.main-hero-slide:has(img[src="/assets/kids-dinosaur.webp"]){--cake-focus:50% 40%}
.main-hero-slide:has(img[src="/assets/pastry-iced-roll.webp"]){--cake-focus:50% 50%}
.main-hero-slide:has(img[src="/assets/parfait-assortment.webp"]){--cake-focus:50% 50%}
.main-hero-slide:has(img[src="/assets/dessert-table.webp"]){--cake-focus:50% 56%}

.main-hero-slide:has(img[src="/assets/final-pink-barbie-banner.jpg"]){--cake-focus:50% 30%}
