/* Template layout and palette retained; only brand, accessibility and content integration adjustments. */
#logo img{width:182px;height:auto!important;background:#fff;border-radius:4px;padding:7px 10px}footer .logo-footer{max-width:185px;background:white;padding:8px;border-radius:4px}#menu-btn{background:transparent;border:0;color:inherit}#mainmenu a:focus-visible,.btn-main:focus-visible,button:focus-visible{outline:3px solid var(--primary-color);outline-offset:4px}.concept-label{position:absolute;bottom:90px;right:32px;z-index:5;color:#fff9;font-size:10px}.hero-pause{position:absolute;bottom:90px;left:32px;z-index:5;background:#0f264780;border:1px solid #ffffff70;color:#fff;border-radius:4px;padding:5px 12px;font-size:12px}.hero-pause:focus{outline:2px solid var(--primary-color)}.hover img[src*="/assets/"]{object-fit:cover;aspect-ratio:1.25}.image[src*="/assets/"]{object-fit:cover}.west-inner header{position:relative!important;background:var(--bg-dark-1)!important}.west-inner .inner-content{padding-top:0!important}.west-inner .section{padding:80px max(6%,calc((100vw - 1320px)/2));}.west-inner h1{font-size:60px;line-height:1.1}.west-inner h2{font-size:40px}.west-inner .eyebrow{color:#648225;font-weight:600;font-size:13px;letter-spacing:.08em}.west-inner .lead{font-size:20px;max-width:760px}.west-inner .detail-hero,.west-inner .detail-body,.west-inner .contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.west-inner .detail-hero{background:#f6f7f4;align-items:center}.west-inner .detail-hero>img{width:100%;height:400px;object-fit:cover;border-radius:6px}.west-inner .breadcrumb{display:block;margin-bottom:30px}.west-inner .checks{padding-left:20px}.west-inner .checks li{margin-bottom:12px}.west-inner .fine{font-size:14px}.west-inner .stats{display:flex;gap:30px;flex-wrap:wrap;padding:24px 0}.west-inner .stats strong{display:block;font-size:28px;color:var(--bg-dark-1)}.west-inner .stats span{font-size:13px}.west-inner .text-link{font-weight:600;text-decoration:underline}.west-inner .brochure{display:flex;gap:45px;justify-content:space-between;background:#f7f7f7}.west-inner .solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}.west-inner .solution{border:1px solid #ddd;padding:25px;border-radius:5px}.west-inner .solution h3{font-size:24px;margin-top:15px}.west-inner .number{color:#648225}.west-inner .contact-details a{display:block;font-size:19px;margin:12px 0}.west-inner form{border:1px solid #ddd;border-radius:6px;padding:30px}.west-inner .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.west-inner label{display:block;margin-bottom:18px;font-size:14px;font-weight:600}.west-inner input,.west-inner textarea,.west-inner select{display:block;padding:12px;width:100%;border:1px solid #b3bdc7;border-radius:4px;background:white;color:#222;margin-top:7px;font:inherit}.west-inner .consent{display:flex;align-items:start;gap:10px;font-size:13px;font-weight:400}.west-inner .consent input{width:18px;margin-top:5px;flex-shrink:0}.west-inner .trap{position:absolute;left:-10000px}.west-inner .success{color:#00653f;background:#e9f7ed;padding:15px}.west-inner .error{color:#a12020}.west-inner .narrow{max-width:1000px;margin:auto}.west-inner .page-intro{min-height:50vh}.west-inner .btn-main{border:0;cursor:pointer}.west-inner form .btn-main{color:#111}.service-image{aspect-ratio:1.25;object-fit:cover}
@media(max-width:991px){#logo img{width:150px}.west-inner .detail-hero,.west-inner .detail-body,.west-inner .contact-layout{grid-template-columns:1fr;gap:30px}.west-inner .solution-grid{grid-template-columns:1fr 1fr}.west-inner h1{font-size:48px}.west-inner .brochure{flex-direction:column}.concept-label{bottom:20px;right:20px}.hero-pause{bottom:20px;left:20px}#mainmenu a{min-height:44px}#menu-btn{min-width:44px;min-height:44px}}
@media(max-width:480px){.west-inner .form-grid,.west-inner .solution-grid{grid-template-columns:1fr}.west-inner h1{font-size:40px}.west-inner h2{font-size:32px}.west-inner form{padding:20px}.swiper .fs-sm-10vw{font-size:11vw!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.wow,.anim-order-1,.anim-order-2{visibility:visible!important;opacity:1!important}}

@media(min-width:992px){#mainmenu{display:flex;align-items:center;white-space:nowrap}#mainmenu>li>a{font-size:13px;padding-left:11px;padding-right:11px}.menu_side_area .btn-main{font-size:12px;white-space:nowrap;padding-left:14px;padding-right:14px}#logo img{width:155px}.header-col-mid{padding:0 10px}}
.swiper-button-prev:after,.swiper-button-next:after{font-family:Arial!important;font-size:42px!important;line-height:1!important}.swiper-button-prev:after{content:'‹'!important}.swiper-button-next:after{content:'›'!important}
@media(max-width:480px){.concept-label{font-size:8px}}

#topbar .d-flex>a{color:white;font-size:12px}
/* WestH2 white header: isolated from the Solaria demo navigation. */
body header.brand-header,body.west-inner header.brand-header,body header.brand-header.header-mobile,body header.brand-header.smaller{position:sticky!important;top:0!important;left:auto;background:#fff!important;color:#292b48;overflow:visible!important;height:auto!important;border-bottom:1px solid #dbeaf2;box-shadow:0 3px 18px #19384c08;backdrop-filter:none!important;z-index:1001;transition:none}
.brand-container{width:calc(100% - 96px);max-width:1440px;margin:auto}.brand-topbar{background:#f1f8fc;border-bottom:1px solid #e1eef5;font-size:12px;font-weight:500;line-height:1.5;color:#42617a}.brand-topbar>.brand-container{min-height:35px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand-contact{display:flex;align-items:center;gap:25px}.brand-topbar a{color:#345874!important}.brand-topbar a:hover{color:#007da9!important}.brand-header-row{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand-logo{flex-shrink:0;display:block}.brand-logo img{width:172px;height:auto;display:block;padding:0;border:0;border-radius:0;background:transparent}.brand-header nav{height:auto;float:none;margin:0}.brand-header #brand-navigation{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:600;line-height:1.5}.brand-header #brand-navigation>a,.brand-dropdown>summary{color:#292b48;padding:16px 0;white-space:nowrap;cursor:pointer;transition:color .2s}.brand-header #brand-navigation>a:hover,.brand-header #brand-navigation>a[aria-current="page"],.brand-dropdown>summary:hover,.brand-dropdown[open]>summary{color:#0087b6}.brand-dropdown{position:relative}.brand-dropdown>summary{list-style:none;display:flex;align-items:center;gap:8px}.brand-dropdown>summary::-webkit-details-marker{display:none}.brand-dropdown>summary:after{content:'';display:block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}.brand-dropdown[open]>summary:after{transform:rotate(225deg) translate(-2px,-1px)}.brand-dropdown>div{position:absolute;left:-20px;top:calc(100% + 12px);min-width:285px;padding:10px;background:#fff;box-shadow:0 15px 35px #223d5420;border:1px solid #e0edf4;border-top:3px solid #43a9d8;border-radius:0 0 6px 6px}.brand-dropdown>div>a{display:block;color:#292b48;font-size:14px;padding:12px;border-radius:3px;line-height:1.4}.brand-dropdown>div>a:hover{color:#007da9;background:#eff8fc}.brand-header #brand-navigation>.brand-cta{background:#0785b4;border:1px solid #0785b4;border-radius:4px;color:white;display:flex;gap:18px;align-items:center;padding:13px 18px;margin-left:6px}.brand-header #brand-navigation>.brand-cta:hover{background:#292b48;border-color:#292b48;color:#fff}.brand-menu-toggle{display:none}.brand-header a:focus-visible,.brand-header button:focus-visible,.brand-header summary:focus-visible{outline:3px solid #4aaadd;outline-offset:5px;border-radius:3px}.brand-header #brand-navigation>a[aria-current="page"]:not(.brand-cta){box-shadow:0 2px 0 #43a9d8}
@media(min-width:1024px) and (max-width:1300px){.brand-container{width:calc(100% - 64px)}.brand-header #brand-navigation{gap:17px;font-size:13px}.brand-header-row{gap:22px}.brand-logo img{width:156px}.brand-header #brand-navigation>.brand-cta{padding:12px 14px;gap:12px}}
@media(max-width:1023px){.brand-container{width:calc(100% - 48px)}.brand-header-row{height:86px}.brand-logo img{width:158px}.brand-menu-toggle{display:flex;align-items:center;justify-content:center;gap:12px;min-width:96px;min-height:44px;padding:10px 13px;border:1px solid #d7e9f3;border-radius:4px;background:#f5fafd;color:#292b48;font:600 13px var(--body-font);cursor:pointer}.brand-menu-icon{width:18px;display:grid;gap:4px}.brand-menu-icon i{display:block;width:18px;height:2px;background:#0087b6;transition:transform .2s,opacity .2s}.brand-menu-toggle[aria-expanded="true"] .brand-menu-icon i:nth-child(1){transform:translateY(6px) rotate(45deg)}.brand-menu-toggle[aria-expanded="true"] .brand-menu-icon i:nth-child(2){opacity:0}.brand-menu-toggle[aria-expanded="true"] .brand-menu-icon i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.brand-header #brand-navigation{display:none;position:absolute;left:0;right:0;top:100%;padding:12px 24px 24px;max-height:calc(100dvh - 122px);overflow-y:auto;background:#fff;border-bottom:1px solid #d7e8f1;box-shadow:0 15px 25px #19384c15;gap:0}.brand-header #brand-navigation.is-open{display:block}.brand-header #brand-navigation>a,.brand-dropdown>summary{display:flex;align-items:center;justify-content:space-between;padding:15px 0;min-height:50px;white-space:normal;font-size:15px;border-bottom:1px solid #e6eff4}.brand-header #brand-navigation>a[aria-current="page"]:not(.brand-cta){box-shadow:none;color:#0087b6}.brand-dropdown>div{position:static;min-width:0;border:0;box-shadow:none;background:#f2f8fc;padding:5px 12px;border-radius:4px;margin-bottom:8px}.brand-dropdown>div>a{padding:13px 10px;min-height:44px}.brand-header #brand-navigation>.brand-cta{justify-content:center;margin:20px 0 0;padding:14px;color:white;min-height:48px}.brand-address{display:none}.brand-topbar>.brand-container{justify-content:flex-end}.brand-topbar .brand-contact{width:100%;justify-content:space-between;gap:15px}.brand-brochure{display:none}}
@media(max-width:480px){.brand-container{width:calc(100% - 40px)}.brand-topbar{font-size:11px}.brand-topbar>.brand-container{min-height:31px}.brand-header-row{height:80px}.brand-logo img{width:149px}.brand-menu-toggle{min-width:88px}.brand-header #brand-navigation{max-height:calc(100dvh - 112px);padding-left:20px;padding-right:20px}}
body:not(.west-inner) #content{padding-top:0!important}
/* The demo applies an extra mobile content offset for its old absolute header. */
body #content{margin-top:0!important}
/* Solen index-3 proportions: 1200px container with 15px inner gutters. */
:root{--west-content-width:1200px;--west-header-width:1170px}
body header.brand-header,body.west-inner header.brand-header,body header.brand-header.header-mobile,body header.brand-header.smaller{position:fixed!important;top:10px!important;left:50%!important;transform:translateX(-50%);width:calc(100% - 30px);max-width:var(--west-header-width);margin:0!important;border:1px solid #dce9f1;border-radius:2px;box-shadow:0 6px 28px #092a4420}
.brand-header .brand-container{width:100%;max-width:none;padding-left:26px;padding-right:26px}.brand-topbar{border-radius:2px 2px 0 0}.brand-header-row{border-radius:0 0 2px 2px;background:#fff}
body #content>.container,body #content section>.container,body footer>.container,body footer .subfooter>.container,body #content .sw-caption>.container{width:100%;max-width:var(--west-content-width);margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}
body.west-inner .inner-content{padding-top:170px!important}.west-inner .section{width:100%;max-width:var(--west-content-width);margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}
@media(min-width:1024px) and (max-width:1150px){.brand-header #brand-navigation{gap:13px;font-size:12px}.brand-logo img{width:150px}.brand-header-row{gap:20px}.brand-header #brand-navigation>.brand-cta{padding:12px 13px;font-size:12px;gap:10px}.brand-header .brand-container{padding-left:20px;padding-right:20px}.brand-contact{gap:18px}.brand-topbar{font-size:11px}}
@media(max-width:1023px){body header.brand-header,body.west-inner header.brand-header,body header.brand-header.header-mobile,body header.brand-header.smaller{width:calc(100% - 30px);top:10px!important}.brand-header .brand-container{padding-left:20px;padding-right:20px}.brand-header #brand-navigation{border-radius:0 0 4px 4px;max-height:calc(100dvh - 150px)}body.west-inner .inner-content{padding-top:155px!important}.west-inner .section{padding-left:24px;padding-right:24px}}
@media(max-width:480px){body header.brand-header,body.west-inner header.brand-header,body header.brand-header.header-mobile,body header.brand-header.smaller{width:calc(100% - 24px);top:10px!important}.brand-header .brand-container{padding-left:16px;padding-right:16px}.brand-header .brand-logo img{width:139px}.brand-header .brand-menu-toggle{min-width:82px;padding-left:10px;padding-right:10px}.brand-topbar{font-size:10px}.brand-contact{gap:10px}.brand-header #brand-navigation{padding-left:16px;padding-right:16px;max-height:calc(100dvh - 145px)}.west-inner .section{padding-left:20px;padding-right:20px}body.west-inner .inner-content{padding-top:145px!important}}
/* WestH2 hero identity with a flat photographic crossfade. */
.west-hero{--primary-color:#0785b4;--primary-color-rgb:7,133,180;--bg-dark-1:#242c46;--bg-dark-1-rgb:36,44,70;background:#242c46}
.west-hero .swiper,.west-hero .swiper-slide{background:#242c46}
.west-hero .sw-overlay{opacity:1!important;background:linear-gradient(90deg,rgba(25,35,60,.87) 0%,rgba(24,44,67,.68) 40%,rgba(16,65,91,.22) 100%),linear-gradient(0deg,rgba(23,34,57,.65),transparent 55%)}
.west-hero .swiper-inner,.west-hero .wow,.west-hero [class*="anim-order-"]{animation:none!important;visibility:visible!important;opacity:1}
.west-hero .hero-brand-accent{color:#78c9ed}
.west-hero .subtitle{color:#a2d9ef!important;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:14px}
.west-hero .subtitle:before{content:'';display:inline-block;width:32px;height:2px;background:#4baad9;flex-shrink:0}
.west-hero .sw-caption p{color:#e3edf4;line-height:1.7}
.west-hero .btn-main{background:#0785b4!important;color:#fff!important;border:1px solid #46a6cf;box-shadow:none;border-radius:4px}
.west-hero .btn-main:hover{background:#292b48!important;color:#fff!important;border-color:#83ccec}
.west-hero .swiper-button-prev,.west-hero .swiper-button-next{width:42px;height:42px;border:1px solid #a3c8df66;border-radius:50%;background:#23364f40;color:#d0e8f7}
.west-hero .swiper-button-prev:after,.west-hero .swiper-button-next:after{font-size:30px!important}
.west-hero .hero-pause{border-color:#9bcee877;background:#24344c88;border-radius:4px;color:#e2f3fc}
.west-hero .swiper-slide>.abs{background:#20304bd9;border-top:1px solid #8ebfd444;padding:20px 0!important}
.west-hero .swiper-slide>.abs h6{font-size:13px;color:#e2f1fa;margin:0;font-weight:500}
.west-hero .swiper-slide>.abs .d-flex>div{padding-left:16px;border-left:2px solid #4baad9}
.west-hero .concept-label{color:#c2dceb}
@media(max-width:600px){.west-hero .subtitle{font-size:10px;letter-spacing:.08em;gap:10px}.west-hero .subtitle:before{width:22px}.west-hero .sw-overlay{background:linear-gradient(90deg,rgba(25,35,60,.9),rgba(21,57,79,.5)),linear-gradient(0deg,#1c30466e,transparent)}.west-hero .swiper-button-prev,.west-hero .swiper-button-next{width:32px;height:32px}.west-hero .swiper-button-prev:after,.west-hero .swiper-button-next:after{font-size:24px!important}.west-hero .sw-caption p{line-height:1.65}}
.west-hero .swiper-button-prev,.west-hero .swiper-button-next{top:auto;bottom:120px;margin-top:0;left:auto}.west-hero .swiper-button-next{right:max(24px,calc((100% - 1170px)/2))}.west-hero .swiper-button-prev{right:max(78px,calc((100% - 1170px)/2 + 54px))}
@media(max-width:600px){.west-hero .swiper-button-prev,.west-hero .swiper-button-next{bottom:64px}.west-hero .swiper-button-next{right:20px}.west-hero .swiper-button-prev{right:62px}}
/* Hero CTA and flat box-dissolve image transition. */
.west-hero .hero-project-cta{display:inline-flex!important;align-items:center;justify-content:center;gap:18px;padding:13px 20px;line-height:1.5}
.west-hero .hero-project-cta .hero-cta-label{display:inline!important;position:static!important;transform:none!important;opacity:1!important}
.west-hero .hero-cta-icon{display:block;flex-shrink:0;color:inherit}
.west-hero .sw-caption{z-index:3}.west-hero .sw-overlay{z-index:2;pointer-events:none}
.hero-dissolve{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;contain:layout paint}
.hero-dissolve-tile{position:absolute;overflow:hidden;opacity:1;animation:westBoxDissolve 700ms cubic-bezier(.3,0,.25,1) both}
.hero-dissolve-photo{position:absolute;background-size:cover;background-position:center;background-repeat:no-repeat}
@keyframes westBoxDissolve{from{opacity:1}to{opacity:0}}
.west-hero .swiper-slide-active .sw-caption{animation:westHeroCopyFade 650ms ease both}
@keyframes westHeroCopyFade{from{opacity:.2}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.hero-dissolve{display:none}.west-hero .swiper-slide-active .sw-caption{animation:none!important}}

/* Compact mobile header: less vertical space, with a full-size menu target. */
@media(max-width:1023px){
 .brand-header .brand-topbar>.brand-container{min-height:26px;padding-top:0;padding-bottom:0}
 .brand-header .brand-header-row{height:64px;padding-top:6px;padding-bottom:6px}
 .brand-header .brand-logo img{width:124px}
 .brand-header .brand-menu-toggle{padding-top:8px;padding-bottom:8px;min-height:44px}
 body.west-inner .inner-content{padding-top:120px!important}
 .brand-header #brand-navigation{max-height:calc(100dvh - 112px)}
}
@media(max-width:1023px){
 .brand-header .brand-header-row{height:64px;min-height:0;padding-top:5px!important;padding-bottom:5px!important}
 .brand-header .brand-logo{padding:0!important;margin:0;line-height:0}
 .brand-header .brand-logo img{width:114px;max-height:51px;object-fit:contain}
 body.west-inner .inner-content{padding-top:110px!important}
}
@media(max-width:1023px){
 body header.brand-header,body.west-inner header.brand-header,body header.brand-header.header-mobile,body header.brand-header.smaller{padding-top:0!important;padding-bottom:0!important}
}
