/* Approved visual refresh. Existing navigation and catalog remain intact. */
html{scrollbar-gutter:stable}
dialog.enquiry-popup,dialog#service-dialog{transform-origin:center;box-shadow:0 28px 90px rgba(16,38,68,.24)}
dialog[data-dialog-motion="opening"]::backdrop{animation:dialogShadeIn 420ms ease both}
dialog[data-dialog-motion="closing"]::backdrop{animation:dialogShadeOut 180ms ease both}
@keyframes dialogShadeIn{from{opacity:0}to{opacity:1}}
@keyframes dialogShadeOut{from{opacity:1}to{opacity:0}}
body{font-family:'Segoe UI',Arial,sans-serif}

.site-header{background:#fff}
.header-main{padding-block:20px;gap:22px}
.main-nav{row-gap:8px}
.main-nav a,.main-nav summary{transition:background .18s,color .18s}
.refreshed-hero.home-intro{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:44px;align-items:center;padding-block:44px 48px}
.refreshed-copy{min-width:0}
.refreshed-hero h1{font-size:clamp(32px,3.35vw,48px);line-height:1.12;letter-spacing:-.035em;max-width:20ch;margin:0 0 24px}
.refreshed-hero .refreshed-copy>p{font-size:17px;line-height:1.65;max-width:54ch;margin:0 0 18px}
.refreshed-hero .home-next-step{color:#4c637c}
.refreshed-hero .home-actions{gap:12px;margin-top:25px}
.refreshed-hero .home-actions .button{font-size:14px;padding-inline:18px;min-height:50px}
.refreshed-hero .service-shortcuts{gap:10px 20px;margin-top:22px;font-size:13px}
.refreshed-visual{position:relative;margin:0;min-width:0;height:500px;overflow:hidden;border-radius:36px 12px 12px 12px;background:#183c6d}
.refreshed-visual>img{width:100%;height:100%;object-fit:cover;object-position:40% center}
.refreshed-visual figcaption{position:absolute;inset:auto 0 0;padding:100px 25px 70px;color:#fff;background:linear-gradient(transparent,rgba(12,34,60,.93));pointer-events:none}
.refreshed-visual figcaption strong{font-size:18px;line-height:1.3}
.refreshed-visual figcaption small{display:block;font-size:11px;margin-top:7px;opacity:.85}
.hero-photo-controls{position:absolute;bottom:20px;left:24px;display:flex;gap:8px}
.hero-photo-controls button{border:1px solid #ffffff99;border-radius:20px;padding:9px 17px;min-height:44px;font-size:13px;font-weight:650;color:white;background:#153359a8}
.hero-photo-controls button[aria-pressed=true]{background:#fff;color:#123d7e}
.hero-photo-controls button:hover{background:#dfe9f7;color:#123d7e}
.refreshed-visual.photo-changing>img{animation:photoReveal .45s ease both}
@keyframes photoReveal{from{opacity:.35;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}
.catalog-hero .quick-catalog{border-radius:16px;border-color:#d4dfeb;box-shadow:none}
.catalog-panel{border-radius:12px}
.catalog-panel h2{font-size:29px}
.catalog-panel input{background:#fff}
.catalog-panel a:not(.catalog-full-link){transition:background .18s,color .18s}
.catalog-panel a:not(.catalog-full-link):hover{color:#174882;background:#edf3fb}
.catalog-photo-strip{gap:24px;margin-block:42px 0}
.catalog-photo-strip figure{height:360px;border-radius:14px;overflow:hidden}
.catalog-photo-strip figure img{height:100%;width:100%;object-fit:cover;transition:transform .35s ease}
.catalog-photo-strip figure:hover img{transform:scale(1.025)}
.catalog-photo-strip figcaption{padding:50px 24px 22px;font-size:18px;background:linear-gradient(transparent,rgba(12,34,60,.92));line-height:1.4}
.gallery-more{display:flex;gap:24px;justify-content:space-between;align-items:center;margin-top:18px;margin-bottom:36px}
.gallery-more p{font-size:12px;color:#5e738a}.gallery-more .button{font-size:14px}
.docs-grid{border-radius:16px}
.sales-contact-bar,.organisation-contact-card{border-radius:12px}
.sales-contact-bar{gap:32px;justify-content:flex-start}
.sales-contact-bar>div:first-child{flex:1}
.site-footer .footer-name{white-space:normal}
.service-section,.education-content{scroll-margin-top:30px}
.site-footer .footer-name{font-size:clamp(17px,2.15vw,26px)}
@media(max-width:1050px){.refreshed-hero.home-intro{gap:25px}.refreshed-visual{height:480px}.refreshed-hero .home-actions{flex-direction:column;align-items:start}.refreshed-hero h1{font-size:37px}.catalog-photo-strip figure{height:300px}}
@media(max-width:760px){.refreshed-hero.home-intro{grid-template-columns:1fr;padding-block:28px 32px;gap:24px}.refreshed-hero h1{font-size:clamp(30px,5.5vw,40px);max-width:24ch;margin-bottom:18px}.refreshed-hero .home-actions{flex-direction:row}.refreshed-hero .refreshed-copy>p{font-size:16px}.refreshed-visual{height:330px;border-radius:24px 10px 10px 10px}.refreshed-visual>img{object-position:center 35%}.catalog-photo-strip{gap:16px}.catalog-photo-strip figure{height:300px}.catalog-photo-strip figcaption{font-size:16px}.gallery-more{flex-direction:column;align-items:start;gap:12px}.gallery-more .button{width:auto}.sales-contact-bar{gap:20px}.header-main{gap:18px}}
@media(max-width:420px){.refreshed-hero .home-actions .button{width:100%}.refreshed-visual{height:285px}.refreshed-hero h1{font-size:31px}.catalog-photo-strip figure{height:250px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(max-width:700px){
 .site-header .brands{flex-direction:row;justify-content:space-between;gap:14px;width:100%;align-items:center}
 .site-header .brands .brand{width:calc(50% - 7px);min-width:0}
 .site-header .brands .brand .logo-icon,.site-header .brands .brand .logo-icon.ais{width:100%;max-width:210px;height:64px;background-size:contain;background-position:center}
 .site-header .header-main{padding-block:14px;gap:14px}
 .site-header .header-phone{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;width:100%;text-align:left;margin:0;font-size:15px}
 .site-header .header-phone>a{white-space:nowrap;font-size:15px;justify-self:start;margin:0}
 .site-header .header-phone br{display:none}
 .site-header .header-phone .max-contact{grid-column:1 / -1;justify-self:start;font-size:13px}
 .site-header .header-callback{margin:0;min-height:44px;padding:9px 14px}
 .site-header .nav-line{padding-block:0 12px}
 .site-header .mobile-toggle{min-height:44px}
}
