/* Calm video surfaces: only the selected film opens and plays. */
.site-promo-trigger{cursor:pointer;font:inherit;color:inherit}
.site-promo-trigger:focus-visible{outline:3px solid #25261f;outline-offset:5px}
.site-promo-card{position:relative;display:block;width:100%;padding:0;border:0;background:#08264b;overflow:hidden;text-align:left;aspect-ratio:16/9}
.site-promo-card>img{display:block;width:100%;height:100%;object-fit:cover;transition:filter .2s}
.site-promo-card:hover>img{filter:brightness(.9)}
.site-promo-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:#ffd400;color:#25261f;box-shadow:0 4px 24px #0003}
.site-promo-play svg{width:25px;height:25px;fill:currentColor;margin-left:3px}
.site-promo-duration{position:absolute;right:14px;bottom:14px;background:#1d1d1be8;color:#fff;padding:5px 10px;font-size:14px;line-height:1.4;border-radius:2px}
.site-promo-dialog{box-sizing:border-box;width:min(1100px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:0;background:#fff;color:#25261f;overflow:auto;overscroll-behavior:contain}
.site-promo-dialog::backdrop{background:#121b29c9;backdrop-filter:blur(4px)}
.site-promo-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 20px}
.site-promo-dialog .site-promo-heading{margin:0;font:400 20px/1.35 Arial,Helvetica,sans-serif;letter-spacing:-.02em}
.site-promo-dialog .site-promo-close{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;background:transparent;color:#25261f;font:32px/1 Arial,Helvetica,sans-serif;cursor:pointer}
.site-promo-dialog :focus-visible{outline:2px solid #a83b29;outline-offset:2px}
.site-promo-video{display:block;width:100%;aspect-ratio:16/9;max-height:calc(100dvh - 160px);background:#071d36;object-fit:contain}
.site-promo-feedback{padding:12px 20px;font:15px/1.6 Arial,Helvetica,sans-serif}
.site-promo-feedback:has(>p[hidden]):has(>button[hidden]):has(>a[hidden]){display:none}
.site-promo-dialog .site-promo-status{margin:0}
.site-promo-dialog .site-promo-retry,.site-promo-fallback{font:inherit;color:#25261f;background:none;border:0;cursor:pointer;padding:9px 0;margin-right:22px;text-decoration:underline;text-underline-offset:4px}
.site-promo-dialog [hidden]{display:none!important}
.sm-shop .sm-product-promo{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;width:calc(100% - 40px);margin:18px 20px 0;padding:12px 14px;border:1px solid #c1c3b9;background:#fff;font-size:15px;line-height:1.5;text-align:center}
.sm-product-promo svg{width:19px;height:19px;flex:none}
.sm-collection-promo{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:48px;margin-top:64px;margin-bottom:24px;padding:36px;background:#ffd400}
.sm-collection-promo h2{margin:15px 0;font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.15;letter-spacing:-.04em}
.sm-collection-promo p{font-size:17px;line-height:1.7;max-width:380px}
.sm-collection-promo .sm-eyebrow{font-size:13px;line-height:1.5}
/* The poster stays intact; the child and toy remain central in the hero. */
.sm-shop .sm-hero.sm-hero-family{grid-template-columns:.8fr 1.2fr;align-items:stretch;min-height:0}
.sm-shop .sm-hero-family .sm-hero-copy{padding:40px 36px}
.sm-shop .sm-hero-family h1{font-size:clamp(40px,4vw,59px)}
.sm-shop .sm-hero-family .sm-hero-visual{min-height:0;background:#e8e4d7;display:flex;align-items:center;aspect-ratio:auto}
.sm-shop .sm-hero-family picture{display:block;width:100%}
.sm-shop .sm-hero-family .sm-hero-image{display:block;position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:55% 50%;margin:0;aspect-ratio:16/9}
.sm-shop .sm-story.sm-story-poster{display:block;background:#04244c}
.sm-shop .sm-story-poster .sm-story-art{display:block;min-height:0;background:#04244c;overflow:hidden}
.sm-shop .sm-story-poster .sm-story-art picture{display:block;width:100%}
.sm-shop .sm-story-poster .sm-story-art img{display:block;width:100%;height:auto;max-height:none;margin:0;padding:0;transform:none;mix-blend-mode:normal;aspect-ratio:5/2;object-fit:contain}
.sm-shop .sm-story-poster .sm-story-copy{display:grid;grid-template-columns:.9fr 1.2fr auto;align-items:center;gap:28px;padding:32px 38px}
.sm-shop .sm-story-poster h2{margin:0;font-size:clamp(28px,3vw,42px)}
.sm-shop .sm-story-poster .sm-story-copy p{margin:0;font-size:17px;line-height:1.7}
.sm-shop .sm-story-poster .sm-story-link{margin:0;font-size:15px;gap:12px;white-space:nowrap}
@media(max-width:1040px){.sm-shop .sm-hero.sm-hero-family{grid-template-columns:1fr 1.15fr}.sm-shop .sm-hero-family .sm-hero-copy{padding:34px 25px}.sm-shop .sm-hero-family h1{font-size:42px}.sm-collection-promo{gap:30px;padding:28px}.sm-shop .sm-story-poster .sm-story-copy{grid-template-columns:1fr 1fr;padding:28px;gap:24px}.sm-shop .sm-story-poster .sm-story-link{grid-column:1/-1;justify-self:start}}
@media(max-width:700px){.sm-shop .sm-hero.sm-hero-family{grid-template-columns:1fr}.sm-shop .sm-hero-family .sm-hero-copy{padding:34px 26px}.sm-shop .sm-hero-family h1{font-size:47px}.sm-shop .sm-hero-family .sm-hero-image{position:static;height:auto;object-fit:contain}.sm-collection-promo{grid-template-columns:1fr;gap:24px;margin-top:42px;padding:26px}.sm-collection-promo h2{font-size:32px}.sm-shop .sm-story-poster .sm-story-copy{grid-template-columns:1fr;padding:28px 26px;gap:22px}.sm-shop .sm-story-poster h2{font-size:35px}.site-promo-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.site-promo-dialog-head{padding:10px 12px;gap:12px}.site-promo-dialog .site-promo-heading{font-size:18px}.site-promo-feedback{padding:12px 16px}.site-promo-play{width:56px;height:56px}}
@media(max-width:374px){.sm-shop .sm-hero-family h1{font-size:40px}.sm-collection-promo{padding:22px}.sm-shop .sm-story-poster .sm-story-copy{padding:26px 22px}.sm-shop .sm-story-poster .sm-story-link{white-space:normal;text-align:left}}
@media(prefers-reduced-motion:reduce){.site-promo-card>img{transition:none}}
