/* Motion lives only inside the illustrated scene and the hero's outside margins. */
.pixie-motion-host{position:relative;isolation:isolate}
.pixie-motion-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;z-index:2;border-radius:inherit}
.pixie-motion-scene{position:relative;display:block;width:100%;overflow:hidden;isolation:isolate;border-radius:8px;line-height:0}
.pixie-motion-scene>img:not(.story-season-art){display:block;width:100%;height:auto;margin:0}
/* Story illustrations retain existing 330px/220px crop rules and festive visibility. */
.pixie-motion-story{max-height:330px;border-radius:0}
.pixie-motion-story>img.story-season-art[data-season-art]{width:100%;max-height:330px;object-fit:cover}
.pixie-motion-scene>.pixie-motion-canvas{mix-blend-mode:normal}
.pixie-motion-hero>.pixie-motion-canvas{z-index:0;opacity:1;mask-image:linear-gradient(to right,#000 0%,#000 7%,transparent 14%,transparent 86%,#000 93%,#000 100%);-webkit-mask-image:linear-gradient(to right,#000 0%,#000 7%,transparent 14%,transparent 86%,#000 93%,#000 100%)}
.pixie-motion-hero>.hero-copy,.pixie-motion-hero>.couple-frame{position:relative;z-index:1}
body header .pixie-motion-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;gap:8px;min-height:44px;min-width:138px;margin:0;padding:10px 13px;border:1px solid color-mix(in srgb,var(--gold,#efc77f) 55%,transparent);border-radius:999px;background:rgba(10,21,31,.24);color:var(--paper,#fff1d5);font:600 11px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:.1px;cursor:pointer;box-shadow:none}
body header .pixie-motion-toggle::before{content:'';display:block;width:8px;height:11px;border-left:2px solid currentColor;border-right:2px solid currentColor;box-sizing:border-box;opacity:.8}
body header .pixie-motion-toggle[aria-pressed=true]::before{width:0;height:0;border-left:8px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:0}
body header .pixie-motion-toggle:hover:not(:disabled){background:rgba(241,205,131,.12);border-color:var(--gold,#efc77f)}
body header .pixie-motion-toggle:focus-visible{outline:3px solid var(--gold,#efc77f);outline-offset:4px}
body header .pixie-motion-toggle:disabled{cursor:default;opacity:.7}
body header .pixie-motion-toggle:disabled::before{width:9px;height:9px;border:1px solid currentColor;border-radius:50%}
/* The device preference and pause control also stop inherited decorative CSS. */
body[data-pixie-motion=paused] .floating,body[data-pixie-motion=paused] .holiday-garland i,body[data-pixie-motion=paused] .snowfall i,
body[data-pixie-motion=hidden] .floating,body[data-pixie-motion=hidden] .holiday-garland i,body[data-pixie-motion=hidden] .snowfall i{animation-play-state:paused!important}
body[data-motion-seasons]>.snowfall{display:none!important}
@media(max-width:700px){body header .pixie-motion-toggle{margin-left:auto;min-width:128px;font-size:10px;padding:9px 12px}.pixie-motion-scene{border-radius:5px}.pixie-motion-hero>.pixie-motion-canvas{opacity:.95}}
@media(prefers-reduced-motion:reduce){.pixie-motion-canvas{opacity:.82}.pixie-motion-host,.pixie-motion-host::before,.pixie-motion-host::after,.pixie-motion-host *{animation:none!important;transition:none!important;scroll-behavior:auto!important}body header .pixie-motion-toggle:disabled::before{border-style:solid}}

@media(max-width:640px){.pixie-motion-story{max-height:220px}.pixie-motion-story>img.story-season-art[data-season-art]{height:220px;max-height:220px;object-fit:cover}}
/* One native, keyboard-accessible invitation. It does not choose a theme. */
.pixie-scene-magic{min-height:44px;min-width:44px;position:absolute;right:12px;bottom:12px;z-index:6;border:1px solid #f3d591aa;border-radius:24px;padding:10px 15px;background:#152239eb;color:#fff2d0;font:600 11px/1.3 'DM Sans',sans-serif;box-shadow:0 2px 10px #0003;cursor:pointer;max-width:calc(100% - 24px)}
.pixie-scene-magic:hover{background:#263c53}.pixie-scene-magic:focus-visible{outline:3px solid #ffe5a8;outline-offset:4px}
@media(max-width:700px){.pixie-scene-magic{right:8px;bottom:8px;padding:9px 12px;font-size:10px;max-width:calc(100% - 16px)}}
@media(prefers-reduced-motion:reduce){.pixie-scene-magic{transition:none}}
