/* Optional decorative motion; never hide content or intercept scrolling. */
.home-service-card{position:relative;isolation:isolate;overflow:hidden}
.home-service-card::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:radial-gradient(190px circle at var(--spot-x,50%) var(--spot-y,50%),#2056bd12,transparent 75%);opacity:0;transition:opacity .18s}
@media(hover:hover) and (pointer:fine){.home-service-card:hover::before{opacity:1}.home-service-card:hover{box-shadow:0 4px 16px #173a7910}}
.btn:active:not(:disabled){transform:translateY(1px)}
.home-service-card:focus-visible::before{opacity:1}

/* Small enamel emblem: two readable faces, a dark edge and a passing reflection. */
.site-header .logo-mark.brand-emblem-stage{position:relative;overflow:visible;background:transparent;box-shadow:none;perspective:380px}
.brand-emblem-stage::before{content:'';position:absolute;inset:3px 1px -2px;border-radius:inherit;background:#15202d12;box-shadow:0 3px 7px #15202d20;pointer-events:none}
.brand-emblem{position:relative;display:block;width:100%;height:100%;border-radius:inherit;transform-style:preserve-3d}
.brand-emblem::before{content:'';position:absolute;inset:0;border-radius:inherit;background:#15171b;box-shadow:0 0 0 1px #44464b;transform:translateZ(0)}
.brand-emblem-face{position:absolute;inset:0;overflow:hidden;border-radius:inherit;background:#050506;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(2px);box-shadow:0 0 0 1px #ffffff24,inset 0 1px 1px #ffffff26}
.brand-emblem-face img{border-radius:inherit}
.brand-emblem-back{transform:rotateY(180deg) translateZ(2px)}
.brand-emblem-face::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff24,transparent 42%,transparent 70%,#ffffff09);box-shadow:inset 0 1px 1px #ffffff33,inset 0 -1px 1px #ffffff16}
.brand-emblem.is-turning{animation:ap-emblem-turn 900ms both}
.brand-emblem.is-turning .brand-emblem-face::after{animation:ap-emblem-light 900ms ease-out both}
@keyframes ap-emblem-turn{
  0%{transform:rotateX(0) rotateY(0);animation-timing-function:cubic-bezier(.45,0,.8,.4)}
  20%{transform:rotateX(-9deg) rotateY(-22deg);animation-timing-function:cubic-bezier(.22,.65,.3,1)}
  80%{transform:rotateX(4deg) rotateY(366deg);animation-timing-function:cubic-bezier(.2,.7,.3,1)}
  100%{transform:rotateX(0) rotateY(360deg)}
}
@keyframes ap-emblem-light{0%,100%{opacity:.8}35%{opacity:.4}70%{opacity:1}}
.site-footer .brand-motion-toggle{min-height:44px;padding:8px 0;color:inherit;font:inherit;font-size:.8125rem;text-decoration:underline;text-underline-offset:3px;text-align:left}
.brand-motion-toggle[hidden]{display:none}
@media(prefers-reduced-motion:reduce){
  .home-service-card::before{display:none}
  .btn:active:not(:disabled){transform:none}
  .brand-emblem.is-turning,.brand-emblem.is-turning .brand-emblem-face::after{animation:none}
}
