@media(max-width:760px){
 .mobile-cta{display:none}
 .mobile-cta-ready .mobile-cta{display:flex}
 .header nav a{font-size:23px;min-height:56px;padding-block:13px}
 .contact-fields input,#brief-form select,#brief-form textarea,dialog textarea{font-size:16px;line-height:1.4;min-height:48px}
 #brief-form fieldset label{min-height:44px;display:flex;align-items:center;gap:8px}
 .button,.object-card,.menu-toggle,.mobile-cta{touch-action:manipulation}
 .button:active{transform:translateY(1px) scale(.99);background:#cf4820}
 .object-card:active{transform:scale(.985);background:#edf1e6;border-color:#b5c6a7}
 .menu-toggle:active{background:#526047}
 .mobile-cta:active{background:#cf4820}
 .request-in-view .mobile-cta,.form-editing .mobile-cta{display:none}
 .header.menu-open~.mobile-cta{display:none}
 #brief-form input,#brief-form select,#brief-form textarea{scroll-margin-block:110px 110px}
 dialog{width:calc(100% - 32px);max-width:520px;max-height:calc(100dvh - 32px);overflow:auto;padding:28px 22px}
 dialog .close{width:44px;height:44px;right:8px;top:8px}
 dialog h2{padding-right:12px}
}
@media(hover:none){.button:hover,.object-card:hover{transform:none}.button:active{transform:translateY(1px) scale(.99)}.object-card:active{transform:scale(.985)}}
@media(max-width:370px){.hero h1{font-size:34px;letter-spacing:-1.3px}.hero .button{font-size:18px;gap:16px}}
