/* Content is visible without JavaScript. Motion never controls access to content. */
.pointer-ink{position:fixed;inset:0;pointer-events:none;z-index:6;contain:strict}
.motion-control{font-weight:500;line-height:1.2;font-family:inherit;font-size:11px;letter-spacing:.04em;min-height:44px;padding:10px 15px;border:1px solid #c8d2df;border-radius:100px;color:#243d5a;background:#fff;cursor:pointer;justify-self:start;align-self:start}
.motion-control:focus-visible{outline:3px solid #6399df;outline-offset:4px}
.motion-control:disabled{cursor:default;opacity:.85}
.conversation-art .motion-control{position:absolute;bottom:20px;left:22px;z-index:4;background:rgba(14,31,49,.85);color:#fff;border-color:rgba(255,255,255,.4);backdrop-filter:blur(8px)}
.flp-motion .conversation-art img{animation:flp-drift 12s ease-in-out infinite;transform-origin:50% 60%;will-change:transform}
.flp-motion .conversation-art::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--pointer-x,60%) var(--pointer-y,35%),rgba(107,172,242,.2),transparent 55%);mix-blend-mode:screen}
.flp-motion .conversation-art::before{content:'';position:absolute;z-index:2;pointer-events:none;inset:-50%;background:linear-gradient(112deg,transparent 42%,rgba(165,203,251,.12) 49%,transparent 56%);animation:flp-light 9s ease-in-out infinite}
@keyframes flp-drift{0%,100%{transform:scale(1.035) translateY(0)}50%{transform:scale(1.065) translateY(-7px)}}
@keyframes flp-light{0%,100%{transform:translateX(-18%) rotate(-6deg);opacity:.15}50%{transform:translateX(18%) rotate(6deg);opacity:1}}
.flp-motion .button{transition:transform .22s ease,background .22s ease,box-shadow .22s ease}
.flp-motion .service-card,.flp-motion .preview-grid img,.flp-motion .work-gallery img{transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s ease}
@media(hover:hover) and (pointer:fine){.flp-motion .button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #182b4620}.flp-motion .button:active{transform:translateY(0)}.flp-motion .service-card:hover{transform:translateY(-5px);box-shadow:0 14px 35px #182b4610}.flp-motion .preview-grid a:hover img,.flp-motion .work-gallery a:hover img{transform:translateY(-4px);box-shadow:0 12px 30px #182b4618}}
.motion-paused .conversation-art img,.motion-paused .conversation-art::before{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.pointer-ink{display:none}.flp-motion .conversation-art img,.flp-motion .conversation-art::before{animation:none!important}.flp-motion .button,.flp-motion .service-card,.flp-motion .preview-grid img,.flp-motion .work-gallery img{transition:none!important;transform:none!important}}

.conversation-sticker{position:absolute;right:24px;bottom:92px;z-index:3;background:#ecf0b3;color:#182b46;padding:14px 18px;font-family:Georgia,serif;font-size:21px;font-style:italic;line-height:1.15;transform:rotate(-7deg);box-shadow:3px 5px 0 #050e1840;pointer-events:none}.conversation-spark{position:absolute;right:27px;top:66px;z-index:3;color:#ecf0b3;font-size:70px;line-height:1;pointer-events:none}.flp-motion .conversation-spark{animation:flp-spark 7s ease-in-out infinite}.flp-motion .conversation-sticker{animation:flp-sticker 8s ease-in-out infinite}.confetti-button{position:absolute;bottom:20px;right:22px;z-index:4;min-height:44px;padding:10px 14px;border:1px solid #ffffff80;border-radius:100px;background:#ecf0b3;color:#182b46;font:500 11px/1.2 system-ui,sans-serif;cursor:pointer}.confetti-button:hover{background:#f5f7ce}.confetti-button:focus-visible{outline:3px solid #fff;outline-offset:4px}.confetti-button:disabled{opacity:.65;cursor:default}.flp-confetti{position:fixed;inset:0;pointer-events:none;z-index:20;overflow:hidden}.confetti-piece{position:absolute;width:8px;height:13px;pointer-events:none}@keyframes flp-spark{0%,100%{transform:rotate(-10deg) scale(.94)}50%{transform:rotate(15deg) scale(1.07)}}@keyframes flp-sticker{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(-4deg) translateY(-6px)}}.motion-paused .conversation-spark,.motion-paused .conversation-sticker{animation-play-state:paused}@media(max-width:400px){.conversation-art .motion-control{left:12px;padding:10px}.confetti-button{right:12px;padding:10px}.conversation-sticker{font-size:18px;right:20px}.conversation-spark{font-size:55px}}@media(prefers-reduced-motion:reduce){.conversation-spark,.conversation-sticker{animation:none!important}.flp-confetti{display:none}}

.conversation-art{overflow:clip}
