/* A quiet photographic camera movement. The animal itself is not animated. */
.hero{gap:50px;align-items:center;padding-top:36px;padding-bottom:66px;isolation:isolate}
.hero-copy{padding-top:0}
.hero h1{font-size:clamp(78px,7.5vw,110px);letter-spacing:-5px;line-height:1.01;margin-bottom:29px}
.hero .eyebrow{font-size:9px;letter-spacing:1.7px;line-height:1.8;max-width:420px;margin-bottom:28px}
.hero-payoff{font-size:.45em;letter-spacing:-1.6px;margin-top:20px;gap:15px}
.hero-description{font-size:16px;line-height:1.9;max-width:380px;color:#496477;margin-bottom:30px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 26px}
.hero-actions .button{border-radius:5px;min-height:52px;padding:17px 23px;font-size:12px;box-shadow:0 8px 18px #00315b0b;transition:background .2s,transform .2s}
.hero-pet-link{display:inline-flex;align-items:center;gap:14px;font-size:12px;min-height:44px;text-decoration:none;color:#00315b;border-bottom:1px solid #b8ccd9}
.hero-pet-link>span{font-size:19px}
.hero-note{font-size:11px;line-height:1.7;margin-top:32px}
.hero-note .note-line{width:34px;background:#8ba9bb}
.hero-visual{width:100%;max-width:530px;justify-self:end;padding:16px 22px 12px;position:relative;margin:0}
.hero-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 48% 50%,#d8e8f0b0,transparent 67%);transition:opacity .6s ease}
.hero-visual.is-motion-running .hero-atmosphere{animation:hero-atmosphere-glow 24s ease-in-out infinite}
@keyframes hero-atmosphere-glow{0%,100%{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.05) translate(1%,-1%)}}
.hero-orbit{position:absolute;inset:9% -2% 7%;border:1px solid #afc7d273;border-radius:49% 51% 47% 53%;transform:rotate(-13deg);transform-origin:50% 50%}
.hero-orbit-two{inset:3% 6% 1% 0;transform:rotate(12deg);border-color:#d5e1e77a;transform-origin:50% 50%}
.hero-visual.is-motion-running .hero-orbit{animation:hero-orbit-drift-one 32s ease-in-out infinite}
.hero-visual.is-motion-running .hero-orbit-two{animation:hero-orbit-drift-two 38s ease-in-out infinite}
@keyframes hero-orbit-drift-one{0%,100%{transform:rotate(-13deg) scale(1)}50%{transform:rotate(-9deg) scale(1.025)}}
@keyframes hero-orbit-drift-two{0%,100%{transform:rotate(12deg) scale(1)}50%{transform:rotate(15deg) scale(.98)}}
.hero-coordinate{position:absolute;left:29px;bottom:0;color:#6a8597;font-size:8px;letter-spacing:2px}
.hero .image-arch{height:clamp(450px,45vw,620px);border-radius:250px 250px 14px 14px;position:relative;isolation:isolate;box-shadow:0 30px 60px -30px #00315b80;background:#e5eae4;outline:1px solid #ffffffd9;outline-offset:-1px;transition:box-shadow .4s ease}
.hero .image-arch img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 49%;transform-origin:50% 55%;will-change:auto}
.hero-visual.is-motion-running .image-arch img{will-change:transform}
.hero .image-arch:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px #00315b0d;background:linear-gradient(180deg,#ffffff14 0%,transparent 24%,transparent 76%,#00315b0d 100%)}
.hero .photo-caption{left:-13px;bottom:64px;border:1px solid #ffffffd0;border-radius:8px;transform:rotate(-3deg);background:#f2f7f9f7;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:20px 25px;box-shadow:0 18px 40px #00315b16;z-index:2;transition:transform .3s ease,box-shadow .3s ease}
.hero .photo-caption:hover{transform:rotate(-1.5deg) translateY(-2px);box-shadow:0 22px 46px #00315b22}
.hero .photo-caption p{font-size:28px;line-height:1.2}
.hero .caption-mark{color:#537b94}
.hero .image-side-note{right:0;top:42%;color:#55748a}
.hero .scroll-round{right:0;bottom:-22px;width:50px;height:50px;background:#fff;box-shadow:0 7px 20px #00315b0a;border-color:#bed1de;z-index:3;transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.hero .scroll-round:hover{transform:translateY(3px);box-shadow:0 12px 26px #00315b16}
.hero-motion-control{position:absolute;right:37px;bottom:34px;z-index:3;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:9px 15px;border:1px solid #ffffffc0;border-radius:30px;background:#082c42f0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-family:inherit;font-size:10px;line-height:1.5;cursor:pointer;box-shadow:0 6px 18px #00192b26;transition:background .25s,transform .2s,box-shadow .25s}
.hero-motion-control:hover{background:#00315b;transform:translateY(-1px);box-shadow:0 8px 24px #00192b33}
.hero-motion-control[hidden]{display:none}
.motion-control-icon{width:14px;font-size:13px;line-height:1;display:inline-grid;place-items:center}
.hero-motion-control:focus-visible{outline:3px solid #fff;outline-offset:4px}
.hero-pet-link:focus-visible{outline:3px solid #387bb1;outline-offset:5px}
@media(hover:hover) and (pointer:fine){.hero-actions .button:hover{transform:translateY(-2px)}.hero-pet-link:hover{border-color:#00315b}}
@media(max-width:1100px){.hero{gap:25px}.hero h1{font-size:clamp(70px,8.5vw,93px);letter-spacing:-4px}.hero .eyebrow{font-size:8px;letter-spacing:1.1px}.hero-payoff{font-size:.42em;letter-spacing:-1px}.hero-description{font-size:15px}.hero .image-arch{height:510px}.hero-actions{gap:13px 23px}.hero-actions .button{font-size:11px}.hero-pet-link{font-size:11px}.hero .photo-caption{left:0;padding:18px 20px}.hero .photo-caption p{font-size:25px}}
@media(max-width:800px){.hero{gap:19px;padding-top:30px;padding-bottom:58px}.hero h1{font-size:clamp(62px,8.4vw,75px);letter-spacing:-3.7px}.hero .eyebrow{font-size:7px;letter-spacing:.8px;gap:8px;margin-bottom:23px}.hero-description{font-size:13px;line-height:1.85}.hero-actions .button{padding-inline:17px;font-size:10px}.hero-pet-link{font-size:11px}.hero .image-arch{height:470px}.hero-visual{padding:15px 18px 13px}.hero-payoff{font-size:.43em;gap:9px}.hero-asterisk{width:23px;height:25px}.hero-note{font-size:10px;margin-top:24px}.hero .photo-caption{left:-6px;bottom:81px;padding:15px 19px}.hero .photo-caption p{font-size:23px}.hero-motion-control{right:30px;font-size:9px;padding:8px 11px}.hero-coordinate{font-size:7px;letter-spacing:1.4px}}
@media(max-width:560px){.hero{gap:31px;padding-top:24px;padding-bottom:58px}.hero h1{font-size:clamp(62px,17vw,83px);letter-spacing:-3.6px;margin-bottom:23px}.hero .eyebrow{font-size:7px;letter-spacing:1px;line-height:1.8;margin-bottom:22px}.hero-description{font-size:14px;line-height:1.85;max-width:340px;margin-bottom:24px}.hero-payoff{font-size:.45em;margin-top:18px;gap:12px}.hero-actions{gap:11px 24px}.hero-actions .button{font-size:11px;min-height:49px;padding-inline:20px}.hero-pet-link{font-size:11px;min-height:43px}.hero-note{display:none}.hero-visual{max-width:430px;align-self:center;padding:14px 14px 12px}.hero .image-arch{height:430px;border-radius:190px 190px 12px 12px}.hero .photo-caption{left:0;bottom:78px;padding:17px 20px}.hero .photo-caption p{font-size:25px}.hero .image-side-note{right:0;top:40%;font-size:6px}.hero-motion-control{right:27px;bottom:25px;font-size:10px;padding:9px 13px;min-height:40px}.hero .scroll-round{right:0;bottom:-22px;width:44px;height:44px}.hero-coordinate{bottom:0;left:20px;font-size:6px;letter-spacing:1.5px}.hero-orbit{inset:6% 0 6%}.hero-orbit-two{inset:0 4%}}
@media(prefers-reduced-motion:reduce){.hero-actions .button{transition:none}.hero-actions .button:hover{transform:none}.hero .image-arch img{transform:none!important;will-change:auto}.hero-visual.is-motion-running .hero-atmosphere,.hero-visual.is-motion-running .hero-orbit{animation:none!important}}
