/* One real little film on warm paper. The 4K hero is always the underlying photograph. */
.tiny-spark.icon{display:inline-block;width:23px;height:23px;vertical-align:middle;stroke-width:2}
.ribbon-flower.icon{width:27px;height:27px;stroke-width:1.5;flex:none}
.camper-heading-star.icon{width:85px;height:55px;stroke-width:2.1;fill:none;transform:rotate(9deg)}
.dog-hello{position:absolute;z-index:8;left:var(--dog-x,28.8%);top:var(--dog-y,52.3%);width:80px;height:80px;padding:0;background:transparent;border:0;border-radius:50%;transform:translate(-50%,-50%);color:var(--cream);touch-action:manipulation;isolation:isolate}
.dog-hello-ring{position:absolute;inset:0;display:block;border-radius:50%;transition:transform .35s var(--ease),background .35s,opacity .2s}
.dog-hello-ring svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;opacity:.75;filter:drop-shadow(0 1px 3px #11283b66);transition:transform .45s var(--ease)}
.dog-hello-ring i{position:absolute;inset:36px;border:1px solid currentColor;border-radius:50%;opacity:.7;box-shadow:0 1px 3px #11283b44}
.dog-hello-invite{position:absolute;left:65px;bottom:68px;white-space:nowrap;display:block;font:italic 22px/1.2 var(--handwritten,Daydream,Georgia,serif);text-shadow:0 1px 7px #11283b77;transform:rotate(-9deg);transform-origin:left bottom;transition:transform .4s var(--ease),opacity .2s}
.dog-hello-invite svg{position:absolute;width:67px;height:38px;left:-42px;top:25px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.dog-hello:hover .dog-hello-ring,.dog-hello:focus-visible .dog-hello-ring{transform:scale(1.1);background:#f8f1df0c}
.dog-hello:hover .dog-hello-ring svg,.dog-hello:focus-visible .dog-hello-ring svg{transform:rotate(12deg)}
.dog-hello:hover .dog-hello-invite,.dog-hello:focus-visible .dog-hello-invite{transform:rotate(-4deg) translateY(-3px)}
.dog-hello:active .dog-hello-ring{transform:scale(.93)}
.dog-hello:focus-visible{outline:3px solid var(--cream);outline-offset:5px}
.dog-hello-open .dog-hello-ring{opacity:.24}
.dog-hello-open .dog-hello-invite,.dog-hello-mounted[data-hello-state=still] .dog-hello-invite{opacity:0;pointer-events:none}
.dog-hello-open .dog-hello:hover .dog-hello-ring,.dog-hello-open .dog-hello:focus-visible .dog-hello-ring{opacity:.8}
.dog-hello-content{position:absolute;inset:0;z-index:6;pointer-events:none}
.dog-hello-postcard{position:absolute;width:264px;height:176px;padding:6px 6px 10px;background:var(--cream,#f8f1df);border:1px solid var(--navy,#11283b);border-radius:2px;box-shadow:0 7px 19px #11283b30,1px 2px 0 #f8f1df66;transform:rotate(2deg);opacity:1;pointer-events:none}
.dog-hello-window{position:relative;width:100%;height:100%;overflow:hidden;background:var(--cream,#f8f1df)}
.dog-hello-postcard .dog-hello-film,.dog-hello-postcard .dog-hello-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:30% 50%;opacity:1;transform:none;animation:none;pointer-events:none}
.dog-hello-close{position:absolute;z-index:9;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;display:grid;place-items:center;background:transparent;border:0;color:var(--navy,#11283b);border-radius:50%;touch-action:manipulation}
.dog-hello-close>span{display:grid;place-items:center;width:23px;height:23px;border:1px solid currentColor;border-radius:50%;background:var(--cream,#f8f1df);box-shadow:0 2px 5px #11283b20;transition:transform .18s var(--ease)}
.dog-hello-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.dog-hello-close:hover>span,.dog-hello-close:focus-visible>span{transform:rotate(8deg) scale(1.08)}
.dog-hello-close:active>span{transform:scale(.9)}
.dog-hello-close:focus-visible{outline:2px solid var(--cream);outline-offset:1px}
.dog-hello-response{position:absolute;left:calc(var(--dog-x,28.8%) + 22px);top:calc(var(--dog-y,52.3%) + 43px);color:var(--cream);opacity:0;transform:rotate(-8deg) translateY(4px);font-size:24px;text-shadow:0 1px 7px #11283b88;pointer-events:none;white-space:nowrap;transition:opacity .22s,transform .4s var(--ease)}
.dog-hello-cued .dog-hello-response{opacity:1;transform:rotate(-8deg) translateY(0)}
.dog-hello-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dog-hello-mounted[data-hello-state=error] .dog-hello-status{z-index:9;top:16px;left:16px;width:auto;height:auto;max-width:min(260px,calc(100% - 32px));margin:0;padding:10px 14px;clip:auto;white-space:normal;color:var(--cream);background:#11283bd9;border-radius:12px;font-size:12px;line-height:1.5}
.dog-hello-mounted[data-hello-state=loading] .dog-hello-ring,.dog-hello-mounted[data-hello-state=poster-loading] .dog-hello-ring{animation:dog-wait 1.3s ease-in-out 16}
@keyframes dog-wait{0%,100%{opacity:.8}50%{opacity:.3}}
/* Preserve the approved opacity-only arrival, including phone and tablet crops. */
@media(max-width:1050px){.hero-photo>img{animation:hero-photo-reveal 1.6s var(--ease) both}}
@media(max-width:1280px){.dog-hello{width:64px;height:64px}.dog-hello-ring i{inset:29px}.dog-hello-invite{left:54px;bottom:59px;font-size:20px}.dog-hello-response{top:calc(var(--dog-y,52.3%) + 35px);font-size:22px}}
@media(max-width:680px){.dog-hello{width:48px;height:48px}.dog-hello-ring i{inset:22px}.dog-hello-invite{left:38px;bottom:43px;font-size:16px}.dog-hello-invite svg{width:41px;height:26px;left:-23px;top:19px}.dog-hello-response{left:calc(var(--dog-x,28.8%) + 18px);top:calc(var(--dog-y,52.3%) + 28px);font-size:18px}.camper-heading-star.icon{width:49px;height:36px}}
html.motion-off .dog-hello *,html.motion-off .dog-hello-content *,html.motion-off .dog-hello-close *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.dog-hello *,.dog-hello-content *,.dog-hello-close *{animation:none!important;transition:none!important}}
