/* Valiant homepage motion; independent of content and admin data. */
.hero-art .brand-plaque{animation:valiant-float 7s ease-in-out infinite;transform:perspective(1000px) rotateX(var(--vm-x,0deg)) rotateY(var(--vm-y,0deg));transition:transform .3s ease-out;will-change:transform;box-shadow:0 25px 65px #0005}
.hero-art .brand-plaque::after{content:"";position:absolute;inset:0;border:1px solid #d6b47766;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 28px #d6b47730;animation:valiant-glow 6s ease-in-out infinite}
.hero-art .orbit{pointer-events:none;animation:valiant-orbit 65s linear infinite}
.hero-art .orbit-two{animation-direction:reverse;animation-duration:85s}
.hero-art .orbit::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#d6b477;top:14%;left:14%;box-shadow:0 0 15px #d6b477aa}
@keyframes valiant-float{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes valiant-glow{0%,100%{opacity:.35}50%{opacity:.9}}
@keyframes valiant-orbit{from{rotate:0deg}to{rotate:360deg}}
@media(max-width:820px){.hero-art .brand-plaque{max-width:76%;animation-duration:9s}.hero-art .orbit{max-width:96%}.hero-art .orbit-two{max-width:100%}}
@media(prefers-reduced-motion:reduce){.hero-art .brand-plaque,.hero-art .brand-plaque::after,.hero-art .orbit{animation:none!important;transition:none!important;transform:none!important;will-change:auto}}

/* Layout correction 20261018: full-width email and aligned service cards. */
#contact .contact-links{width:100%;max-width:760px}
#contact .contact-card[href^="mailto:"]{grid-column:1 / -1;min-width:0;width:100%;box-sizing:border-box}
#contact .contact-card[href^="mailto:"] strong{white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:clamp(12px,2.65vw,17px);max-width:100%;overflow-x:auto}
#services .services-grid{align-items:stretch}
#services .service{display:grid;grid-template-rows:44px minmax(63px,auto) 1fr;row-gap:16px;align-content:start}
#services .service-top{height:44px;min-height:44px;margin:0;align-items:center}
#services .service-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;line-height:1;flex-shrink:0}
#services .service h3{margin:0;align-self:start}
#services .service p{margin:0;align-self:start}
@media(max-width:760px){#services .service{grid-template-rows:44px auto auto}}
