/* Shared responsive layout and touch navigation. */
.slider .slide{position:relative}
.slider .slide .bg{position:absolute;inset:0;width:100%;height:100%}
.slider .slide .bg img{display:block;width:100%;height:100%;object-fit:cover}
.about-3 .animated-circles{position:absolute;inset:0;overflow:hidden;max-width:100%;pointer-events:none}
main,main section,main article,.content-guide .container{min-width:0}
main img,main video{max-width:100%}
main h1,main h2,main h3,main p,.breadcrumb-item,.content-related a{overflow-wrap:anywhere}
.site-header .mobile-menu:focus-visible,.site-header .lang a:focus-visible{outline:2px solid #ffb8bf;outline-offset:3px}
@media(max-width:991px){
 .site-header .bottom-bar .container{position:static;flex-wrap:nowrap;min-height:76px}
 .site-header .bottom-bar a.logo,.site-header .bottom-bar.sticky a.logo{height:48px;max-width:156px;margin-right:10px!important;flex-shrink:0}
 .site-header .bottom-bar .d-flex{gap:6px;min-width:0}
 .site-header .mobile-menu{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;flex-shrink:0}
 .site-header .lang{height:44px;margin-left:0;flex-shrink:0}
 .site-header .lang ul,.site-header .lang ul:hover{display:flex;gap:2px;overflow:visible;background:transparent!important;box-shadow:none}
 .site-header .lang ul li a,.site-header .lang ul li:not(:first-child) a,.site-header .lang ul:hover li a{display:flex;align-items:center;justify-content:center;width:40px;height:44px;padding:4px;margin:0;opacity:1!important;filter:none!important}
 .site-header .lang ul li a img{width:28px;height:21px}
 .site-header .bottom-bar .menu{max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 12px 24px #0003}
 .site-header .bottom-bar .menu nav>ul{display:flex;flex-direction:column;gap:0;margin:0;padding:0}
 .site-header .bottom-bar .menu nav>ul>li>a{white-space:normal;min-height:48px;line-height:1.5;padding:12px 22px}
 .site-header .bottom-bar .menu nav>ul>li>a.big-button{margin:8px 20px 16px;min-height:48px}
 .site-footer-newsletter-grid,.site-footer-main{gap:28px}
 .site-footer-contact>a{overflow-wrap:anywhere;white-space:normal!important}
 .site-footer-contact>a span{min-width:0}
 main input:not([type=checkbox]):not([type=radio]):not([type=hidden]),main textarea,main select,.site-footer-signup input{font-size:16px!important}
 main input:not([type=checkbox]):not([type=radio]):not([type=hidden]),main select{min-height:48px}
 main textarea{max-width:100%;min-height:140px}
 .site-footer-signup input,.site-footer-signup button{min-height:44px;height:auto}
 .site-footer-nav a{display:inline-flex;align-items:center;min-height:44px}
 .site-footer-nav li+li{margin-top:2px}
 .content-related a{display:inline-flex;align-items:center;min-height:44px}
 .content-guide .content-lead{max-width:100%}
 .banner .breadcrumb{flex-wrap:wrap;line-height:1.6}
 .banner .title{max-width:100%;line-height:1.25}
 .gw-actions>a,.svc-cta a,.contact-emergency,.contact-form-panel button{min-height:48px;white-space:normal}
 .gw-cover{min-width:0}
}
@media(max-width:767px){
 .slider.overlap .slide{min-height:440px;min-height:max(440px,calc(78svh - 76px))}
 .slider .slide .content .container{padding-top:24px;padding-bottom:36px}
 .slider .slide .content h1,.slider .slide .content h2{font-size:clamp(29px,7.4vw,44px);line-height:1.2;max-width:100%;margin-bottom:20px}
 .slider .slide .content p{font-size:16px;line-height:1.65}
 .slider .slide .content .eyebrow{white-space:normal;font-size:10px;letter-spacing:.08em;max-width:100%}
 .reveal,.reveal-stagger,.reveal-stagger>*{opacity:1!important;transform:none!important;transition:none!important}
 .gw-intro-grid,.gw-specs-grid{min-width:0}
 .gw-intro h2{font-size:clamp(29px,7.6vw,40px)}
 .gw-intro p,.gw-pillar p,.gw-fact dd,.content-guide p,.content-guide li{font-size:16px}
 .contact-details,.contact-form-panel{min-width:0}
 .contact-method a,.contact-method p{overflow-wrap:anywhere}
 .svc-security-card p,.product-card p{font-size:14px}
 .site-footer-eyebrow{font-size:13px;letter-spacing:.12em}
 .site-footer-newsletter p,.site-footer-brand p,.site-footer-contact p,.site-footer-nav a,.site-footer-contact>a:not(.site-footer-emergency){font-size:16px}
 .site-footer-bottom .site-footer-inner{font-size:14px;line-height:1.7}
 .site-footer h3{font-size:15px;letter-spacing:.06em;margin-bottom:12px}
 .about-us .containerr{width:calc(100% - 32px);padding:32px 20px}
 .about-us .buton a{max-width:100%;white-space:normal}
 .about-us .eyebrow-alert{max-width:100%;white-space:normal;font-size:10px;letter-spacing:.06em;padding:8px 12px}
 .blog-article h1{font-size:clamp(27px,7vw,38px)}
}
@media(max-width:480px){
 .site-footer-main{grid-template-columns:minmax(0,1fr);gap:28px}
 .site-footer-brand,.site-footer-contact{grid-column:auto}
 .site-footer-signup form{flex-direction:column;gap:6px;padding:7px}
 .site-footer-signup input,.site-footer-signup button{width:100%;min-height:46px}
 .site-footer-signup button{font-size:15px}
 .site-footer-emergency{min-height:48px;white-space:normal}
 .gw-actions{display:grid;grid-template-columns:minmax(0,1fr)}
 .gw-button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .gw-fact{grid-template-columns:minmax(0,1fr);gap:8px}
 .contact-form-fields{grid-template-columns:minmax(0,1fr)}
 .contact-field-full{grid-column:auto}
 .contact-details,.contact-form-panel{padding:28px 22px}
 .svc-security-card{flex-direction:column}
 .svc-security-card .svc-card-media{flex-basis:auto;height:120px;padding:20px}
 .svc-security-card .svc-card-media img{max-height:80px}
 .svc-security-card .svc-card-body{padding:22px}
 .banner h1.title,.banner p.title{font-size:clamp(27px,7.2vw,36px)}
 .about-us .buton{display:grid;grid-template-columns:minmax(0,1fr)}
}
@media(max-width:359px){
 .site-header .bottom-bar a.logo,.site-header .bottom-bar.sticky a.logo{max-width:128px;height:44px;margin-right:6px!important}
 .site-header .bottom-bar .d-flex{gap:2px}
 .site-header .lang ul{gap:0}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 .reveal,.reveal-stagger,.reveal-stagger>*{opacity:1!important;transform:none!important;transition:none!important}
 .about-us .alert-icon,.about-us .pulse-dot::after{animation:none!important}
}
