/* Shared readability and responsive improvements, scoped to existing components. */
html{scroll-padding-top:110px}body{overflow-wrap:break-word}img{max-width:100%}
body p,body li{font-size:max(1em,15px)}
body nav,body .text-link,body .portfolio-card p,body .steps p,body .clients article p{font-size:14px}
body .fine,body .quiet,body small,body .figure-note,body .portfolio-note,body .capital-note,body .footer-bottom,body figcaption{font-size:13px!important;line-height:1.65}
body label,body .contact label,body .field{font-size:15px}
body input,body select,body textarea{font:inherit;font-size:16px!important;max-width:100%}
body button,body .button,body .header-cta{min-height:44px;font-size:14px}
body button:disabled{cursor:wait;opacity:.65}
body a:focus-visible,body button:focus-visible,body input:focus-visible,body select:focus-visible,body textarea:focus-visible,body summary:focus-visible{outline:3px solid #b98624;outline-offset:4px}
body summary{min-height:44px;padding-block:10px;cursor:pointer}
body .menu,body .menu-button{min-width:48px;min-height:44px}
[data-enquiry-status]{min-height:1.6em;margin-top:16px!important;font-size:16px!important;line-height:1.6}
.enquiry-consent{display:flex!important;gap:12px;align-items:flex-start;margin-block:16px;line-height:1.6}
.enquiry-consent input{flex:none;width:20px!important;height:20px;margin-top:4px!important}
.enquiry-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden}
.enquiry-privacy{font-size:14px!important;line-height:1.65}
.human-photo{width:100%;height:clamp(260px,36vw,470px);object-fit:cover;display:block;border-radius:3px}
.human-figure{margin:28px 0 48px}.human-figure figcaption{margin-top:10px}
.related-sites{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px}.related-sites a{text-decoration:underline;text-underline-offset:5px}
body .card-photo{aspect-ratio:16/10;height:auto;min-height:160px}body .card-photo>img{object-fit:cover}
body .contact address small{color:#c4ccce}body .form-status{color:#e5c687}
@media(max-width:760px){html{scroll-padding-top:90px}body nav{font-size:16px}body section{scroll-margin-top:95px}body .header-cta{font-size:13px}body .hero-image{min-height:360px}body .hero-image img{object-position:center}body .contact,.calculator,.split,.console-body{min-width:0}body input,body textarea,body select{width:100%}body .filters{flex-wrap:wrap;gap:8px}body .filters button{flex-grow:1}body table{min-width:0}body th,body td{overflow-wrap:anywhere}body dialog{max-width:calc(100vw - 24px)}body .hero h1{overflow-wrap:normal}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
