/* A restrained motion layer that preserves the original brand composition. */
.motion-toggle{position:fixed;bottom:16px;right:16px;z-index:10;border:1px solid #cbd8d3;border-radius:30px;background:#f8f9f6ed;color:var(--navy);padding:9px 14px;font-size:10px;box-shadow:0 3px 15px #1d284909;backdrop-filter:blur(10px)}
.motion-toggle:before{content:'Ⅱ';margin-right:7px;color:var(--teal)}.motion-toggle[aria-pressed=true]:before{content:'▷'}
.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}
.orbit-art{perspective:850px}
.glass-core{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotate(-8deg);transition:transform .65s cubic-bezier(.2,.7,.2,1),box-shadow .6s}
.orbit-art:before,.orbit-art:after{content:'';position:absolute;top:50%;left:50%;width:260px;height:260px;margin:-130px 0 0 -130px;border:1px solid #11b3b34d;border-radius:50%;pointer-events:none;z-index:-1;animation:brand-wave 7s ease-out infinite}
.orbit-art:after{animation-delay:-3.5s}
.o1{animation:orbit-breathe 11s ease-in-out infinite}
.o2{animation:orbit-turn 24s linear infinite}
.o3{animation:orbit-drift 15s ease-in-out infinite}
.orbit-label{animation:label-float 7s ease-in-out infinite}
.label-b{animation-delay:-2.5s}.label-c{animation-delay:-4.5s}
.orbital-dot{animation:dot-pulse 4s ease-in-out infinite}.d2{animation-delay:-2s}
.button{position:relative;overflow:hidden;isolation:isolate;transition:background .3s,transform .3s,box-shadow .3s}
.button:before{content:'';position:absolute;inset:-80% -30%;background:linear-gradient(110deg,transparent 35%,#ffffff24 50%,transparent 65%);transform:translateX(-110%);pointer-events:none;z-index:-1}
.button span,.portal span,.text-link span,.quiet-link span{display:inline-block;transition:transform .3s cubic-bezier(.2,.7,.3,1)}
.service-card{position:relative;overflow:hidden;isolation:isolate;transition:transform .4s cubic-bezier(.2,.7,.3,1),box-shadow .4s,border-color .4s}
.service-card:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 100% 0,#11b3b319,transparent 65%);opacity:0;transition:opacity .4s;pointer-events:none;z-index:-1}
.card-top svg{transition:transform .4s,color .4s}
.portal,.header nav a{transition:color .25s,background .25s,border-color .25s}
.header nav a:before{content:'';position:absolute;bottom:3px;left:0;right:0;height:1px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.header nav a[aria-current]:before{display:none}
.contact-methods>a strong{transition:translate .3s,color .3s}
.cta{position:relative;overflow:hidden;isolation:isolate}.cta>*{position:relative;z-index:1}
.cta:before,.cta:after{content:'';position:absolute;right:-130px;top:50%;width:430px;height:430px;border:1px solid #64d5d82b;border-radius:45%;transform:translateY(-50%);pointer-events:none;animation:cta-wave 25s linear infinite;z-index:0}
.cta:after{width:550px;height:550px;right:-190px;animation-duration:35s;animation-direction:reverse}
.button:focus-visible span,.portal:focus-visible span,.text-link:focus-visible span{transform:translate(3px,-3px)}
.service-card:focus-visible{box-shadow:0 18px 45px #1d284914;border-color:#8bcfc7}
@media(hover:hover) and (pointer:fine){
 .button:hover{box-shadow:0 9px 22px #1d28491f;transform:translateY(-3px)}
 .button:hover:before{transition:transform .8s;transform:translateX(110%)}
 .button:hover span,.portal:hover span,.text-link:hover span{transform:translate(3px,-3px)}
 .quiet-link:hover span{transform:translateX(5px)}
 .service-card:hover{transform:translateY(-7px);box-shadow:0 18px 45px #1d284912;border-color:#9ed5ce}
 .service-card:hover:before{opacity:1}.service-card:hover .card-top svg{transform:translateY(-3px) rotate(-5deg);color:var(--turquoise)}
 .header nav a:hover:before{transform:scaleX(1)}
 .contact-methods>a:hover strong{translate:5px 0}
 .orbit-art:hover .glass-core{box-shadow:inset 4px 6px 10px #fff,inset -14px -15px 30px #8bb7b64d,18px 35px 65px #11b3b32b}
}
@keyframes brand-wave{0%{transform:scale(.82);opacity:0}18%{opacity:.65}100%{transform:scale(1.95);opacity:0}}
@keyframes orbit-breathe{0%,100%{transform:rotate(-27deg) scaleY(.76)}50%{transform:rotate(-17deg) scaleY(.85)}}
@keyframes orbit-turn{from{transform:rotate(37deg) scaleY(.98)}to{transform:rotate(397deg) scaleY(.98)}}
@keyframes orbit-drift{0%,100%{transform:rotate(-27deg) scaleY(1.08)}50%{transform:rotate(-42deg) scaleY(.95)}}
@keyframes label-float{0%,100%{translate:0 0}50%{translate:0 -9px}}
@keyframes dot-pulse{0%,100%{box-shadow:0 0 0 4px #11b3b313;opacity:.7}50%{box-shadow:0 0 0 10px #11b3b308;opacity:1}}
@keyframes cta-wave{from{transform:translateY(-50%) rotate(0deg)}to{transform:translateY(-50%) rotate(360deg)}}
@media(max-width:600px){.orbit-art:before,.orbit-art:after{width:200px;height:200px;margin:-100px 0 0 -100px}.cta:before,.cta:after{opacity:.5}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.glass-core{transform:rotate(-8deg)}.orbit-art:before,.orbit-art:after,.motion-toggle{display:none}}
