/* Layout and interaction improvements; existing brand colors stay unchanged. */
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
input,select,textarea{scroll-margin-top:130px}
.hf-service-card,.office-map-panel,.service-intro-card{overflow-wrap:anywhere}
.hf-service-card,.office-map-panel{min-width:0}
.hf-main .hf-hero{overflow:visible;position:relative;z-index:2}
.hf-search.enjaz-search-host{z-index:30}
@media(max-width:700px){
 input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}
 .ej-dialog input,.hf-search input,.directory-tools input,.request-form input,.request-form select,.request-form textarea{font-size:16px}
 .hf-brand-scene{inset-inline-end:0;max-width:100%}
 .form-field,.field,.request-card{min-width:0}
 .filter-chip,.audience-chip,.text-link,button[type=submit]{min-height:44px}
 .hf-service-card>p{font-size:12px;line-height:2}
 .hf-hero-description{font-size:14px;line-height:2}
}
@media(prefers-reduced-motion:no-preference){
 .enjaz-just-revealed{animation:enjaz-intro .35s ease-out both}
 @keyframes enjaz-intro{from{opacity:.7;transform:translateY(8px)}to{opacity:1;transform:none}}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .enjaz-just-revealed{animation:none}
}

/* Visible focus complements the shared desktop and touch interaction states. */
:where(.mobile-contact-actions a,.enjaz-call,.ej-main-nav>a,.ej-dialog-nav>a){touch-action:manipulation}
@media(prefers-reduced-motion:reduce){
 .ej-service,.ej-service>.ej-icon,.mobile-contact-actions>a{transition:none!important}
 .ej-service:hover,.ej-service:hover>.ej-icon,.ej-service:focus-visible>.ej-icon{transform:none}
}
