
/* Approved option 31: framed links joined to a distinct proposal action. */
.approved-header header .nav{max-width:1280px;min-height:110px;padding:0 40px;gap:0;column-gap:0}
.approved-header .nav .brand{flex-shrink:0}.approved-header .nav .brand .brand-slogan{font-size:11px}.approved-header .nav .brand .company-logo{width:65px}
.approved-header .nav>nav{margin-left:auto;justify-content:flex-end;gap:5px;align-items:center;flex-shrink:0;border:1px solid #acc7dc;border-right:0;background:#f0f6fa;padding:6px;border-radius:8px 0 0 8px;overflow:visible}
.approved-header #navigation>.nav-main-item{position:static;display:flex;align-items:center;padding:11px 10px;min-height:44px;gap:5px}
.approved-header #navigation>.nav-main-item,.approved-header #navigation>a{background:#fff;border:1px solid #e0e8ef;border-radius:5px}
.approved-header #navigation>.nav-main-item>a,.approved-header #navigation>a{font-size:12px;font-weight:650;white-space:nowrap}
.approved-header #navigation>a{padding:11px 12px;display:flex;align-items:center;min-height:44px}
.approved-header #navigation>.nav-main-item:hover,.approved-header #navigation>a:hover{background:#f5f9fd;border-color:#abcadd}
.approved-header #navigation>.home-menu-link{color:#1766af}
.approved-header #navigation .nav-disclosure summary{padding:2px;width:18px}
.approved-header .nav-actions{display:flex;gap:0}
.approved-header .nav-actions .button.small{height:57px;display:flex;align-items:center;justify-content:center;margin:0;padding:12px 14px;font-size:11px;background:#1766af;color:white;white-space:nowrap;border:1px solid transparent;border-radius:0 7px 7px 0;box-shadow:0 0 0 1px #acc7dc;transform:none;translate:none;transition:background .2s,color .2s}
.approved-header .nav-actions .button.small:hover,.approved-header .nav-actions .button.small:focus{background:#10548f;color:white;border-color:transparent;box-shadow:0 0 0 1px #acc7dc;transform:none;translate:none}
@media(max-width:1250px) and (min-width:981px){.approved-header .nav .brand-slogan{display:none!important}.approved-header header .nav{padding-inline:20px}.approved-header .nav>nav{gap:6px}.approved-header #navigation>.nav-main-item,.approved-header #navigation>a{padding-inline:8px}.approved-header #navigation>.nav-main-item>a,.approved-header #navigation>a{font-size:11px}}
@media(max-width:980px){.approved-header header .nav{padding:16px 22px;min-height:85px;gap:12px}.approved-header .nav-actions{margin-left:auto;gap:8px}.approved-header .nav>nav{margin:0;justify-content:flex-start;gap:10px;padding:12px;border:1px solid #acc7dc;border-radius:8px;background:var(--surface);flex-shrink:1}.approved-header .nav>nav:not(.open){display:none}.approved-header #navigation>.nav-main-item,.approved-header #navigation>a{min-height:44px;padding:12px 15px;width:100%}.approved-header #navigation>.nav-main-item{flex-wrap:wrap}.approved-header #navigation>.nav-main-item>details{flex:1}.approved-header #navigation>.nav-main-item>a{flex:1}.approved-header .nav-actions .button.small{height:auto;min-height:40px;border-radius:6px;font-size:10px;padding:10px 12px}}
@media(max-width:380px){.approved-header .nav-actions .button.small{padding:9px 8px;font-size:9px}.approved-header header .nav{padding-inline:15px;gap:7px}.approved-header .nav-actions{gap:5px}.approved-header .nav .brand .brand-slogan{font-size:9px}}

@media(min-width:981px){.approved-header header .nav{padding-left:40px;padding-right:41px}.approved-header.homepage-layout header .nav{max-width:1290px;padding-left:30px;padding-right:31px}.homepage-layout .mountain-slider{--slide-content-inset:max(30px,calc((100% - 1290px)/2 + 30px))}}

/* One page grid controls the menu and hero content at every breakpoint. */
.approved-header{--site-grid-width:1280px;--site-grid-gutter:40px}.approved-header.homepage-layout{--site-grid-width:1290px;--site-grid-gutter:30px}
.approved-header header .nav,.approved-header.homepage-layout header .nav{max-width:var(--site-grid-width);padding-left:var(--site-grid-gutter);padding-right:calc(var(--site-grid-gutter) + 1px)}
@media(max-width:1100px){.approved-header.homepage-layout{--site-grid-gutter:28px}}
@media(max-width:760px){.approved-header{--site-grid-gutter:22px}.approved-header.homepage-layout{--site-grid-gutter:22px}}
@media(min-width:801px){.approved-header.homepage-layout .mountain-slider{--slide-content-inset:max(var(--site-grid-gutter),calc((100% - var(--site-grid-width))/2 + var(--site-grid-gutter)))}.slide-original{padding-left:max(0px,calc(var(--slide-content-inset) - 30px))}.original-statement{padding:30px;padding-left:min(30px,var(--slide-content-inset));border:0;box-shadow:inset 0 0 0 1px #d7e5f4,0 8px 24px #12355108}.slide-original .original-strip{margin-left:min(30px,var(--slide-content-inset));padding-left:0;padding-right:0}.mountain-slide.slide-av{padding-left:max(0px,calc(var(--slide-content-inset) - 30px))}.slide-av .slide-copy{padding-left:min(30px,var(--slide-content-inset));border:0;box-shadow:inset 0 0 0 1px #ffffff40,0 20px 50px #00162a30}.slide-procurement .slide-visual{transform:none}.slide-procurement .slide-visual img,.slide-cloud .slide-visual img,.slide-education .slide-visual img{box-shadow:none}}
@media(max-width:380px){.approved-header .nav .brand .company-logo{width:56px}.approved-header .nav .brand{gap:7px}.approved-header .nav .brand .brand-slogan{padding-left:7px}.approved-header .nav-actions .button.small{padding-left:6px;padding-right:6px}.approved-header header .nav{gap:5px}}

/* Align the AV glass panel itself with the page's content edge. */
.approved-header.homepage-layout .mountain-slide.slide-av{padding-left:var(--slide-content-inset,var(--site-grid-gutter));padding-right:var(--slide-content-inset,var(--site-grid-gutter))}

/* Approved indicator 15: outlined tabs with an independent dropdown control. */
.approved-header.menu-style-15 #navigation>.nav-main-item{padding:0;gap:0;border-color:#b7d0e6}
.approved-header.menu-style-15 #navigation>.nav-main-item>a{padding:11px 10px;color:inherit}
.approved-header.menu-style-15 #navigation>.nav-main-item summary{display:flex;align-items:center;justify-content:center;border-left:1px solid #c2d7e8;border-radius:0 4px 4px 0;width:31px;min-height:42px;padding:2px;background:#edf5fc;color:inherit;list-style:none}
.approved-header.menu-style-15 summary::-webkit-details-marker{display:none}
.approved-header.menu-style-15 .menu-marker{display:flex;align-items:center;justify-content:center;width:17px;height:17px;color:inherit}
.approved-header.menu-style-15 .menu-marker:before,.approved-header.menu-style-15 .menu-marker:after{content:none}
.approved-header.menu-style-15 .menu-marker svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.approved-header.menu-style-15 #navigation>*{transition:background .18s,color .18s,border-color .18s,box-shadow .18s}
.approved-header.menu-style-15 #navigation>*:is([aria-current],:has(>a[aria-current]),:has(details[open]),:hover,:focus-within){background:#eff7ff;border-color:#1766af;box-shadow:0 3px 0 #b9d6ee;color:#10548f}
.approved-header.menu-style-15 #navigation>.nav-main-item details[open]>summary{background:#1766af;color:#fff}
.approved-header.menu-style-15 details[open] .menu-marker svg{transform:rotate(180deg);stroke-width:2.3}
.approved-header.menu-style-15 summary:focus-visible,.approved-header.menu-style-15 #navigation> a:focus-visible,.approved-header.menu-style-15 #navigation>.nav-main-item>a:focus-visible{outline:2px solid #1766af;outline-offset:3px}
.approved-header.menu-style-15 .mega-menu{color:var(--ink,#123551)}
@media(max-width:980px){
 .approved-header.menu-style-15 .nav>nav.open{overflow:auto;overscroll-behavior:contain}
 .approved-header.menu-style-15 #navigation>*{flex-shrink:0}
 .approved-header.menu-style-15 #navigation>.nav-main-item{position:relative}
 .approved-header.menu-style-15 #navigation>.nav-main-item>a{padding:12px 48px 12px 15px}
 .approved-header.menu-style-15 #navigation>.nav-main-item>details{flex:0 0 100%;width:100%}
 .approved-header.menu-style-15 #navigation>.nav-main-item summary{position:absolute;right:0;top:0;width:36px;min-height:44px}
 .approved-header.menu-style-15 .mega-menu{position:relative;top:auto;left:auto;right:auto;transform:none;width:100%;max-height:none;margin-top:10px}
}
@media(prefers-reduced-motion:reduce){.approved-header.menu-style-15 .menu-marker svg,.approved-header.menu-style-15 #navigation>*{transition:none}}

/* Keep the contact strip on the same grid as the page content. */
.approved-header .topbar>.wrap{max-width:var(--site-grid-width,1280px);padding-left:var(--site-grid-gutter,40px);padding-right:var(--site-grid-gutter,40px)}
.approved-header:has(.pi-gallery) .topbar>.wrap{padding-left:25px;padding-right:25px}
@media(max-width:1100px){.approved-header.homepage-layout .topbar>.wrap{padding-left:28px;padding-right:28px}}
@media(max-width:1050px){.approved-header .topbar>.wrap{padding-left:28px;padding-right:28px}}
@media(max-width:760px){.approved-header .topbar>.wrap{padding-left:22px;padding-right:22px}}
@media(max-width:600px){.approved-header:has(.pi-gallery) .topbar>.wrap{padding-left:22px;padding-right:22px}}

/* Approved flat blue header: retain button colours and the existing dropdown design. */
body.approved-header .nav>nav{background:#1766af;transition:background .2s}
body.approved-header .nav:has(.nav-actions .button.small:is(:hover,:focus))>nav{background:#10548f}
/* Brand reduced by 40 percent from the enlarged preview. */
@media(min-width:981px){body.approved-header .nav .brand{height:58px;align-items:center;align-self:center;gap:7.2px}body.approved-header .nav .brand .company-logo{width:clamp(80.4px,calc(80.4px + (100vw - 1250px)*.078),100.8px);height:auto;max-height:34.8px;align-self:center;margin-block:0}body.approved-header .nav .brand .brand-slogan{font-size:clamp(10.2px,.75vw,11.4px);line-height:17.4px;padding-left:7.2px}}
/* Share one outer height and overlap the join to avoid fractional-pixel seams. */
@media(min-width:981px){body.approved-header .nav>nav,body.approved-header .nav-actions{height:58px;box-sizing:border-box}body.approved-header .nav-actions{position:relative;margin-left:-1px}body.approved-header .nav-actions::before{content:"";position:absolute;inset:0;border:1px solid #acc7dc;border-left:0;border-radius:0 8px 8px 0;pointer-events:none;z-index:1}body.approved-header .nav-actions .button.small{height:100%;padding-left:16px;border-left:0;box-shadow:none!important;clip-path:none}}
body.approved-header.menu-style-15 #navigation>*{box-shadow:none!important;transform:none!important;translate:none!important}
body.approved-header.menu-style-15 #navigation>.nav-main-item>a,
body.approved-header.menu-style-15 #navigation>.nav-main-item summary{box-shadow:none!important;transform:none!important}

/* Fill the dropdown control right to the outer menu-button edges. */
@media(min-width:981px){body.approved-header.menu-style-15 #navigation>.nav-main-item>details{align-self:stretch;display:flex}body.approved-header.menu-style-15 #navigation>.nav-main-item summary{height:auto;align-self:stretch;min-height:42px;width:31px;margin:0;border-top:0;border-bottom:0;border-right:0;border-radius:0 4px 4px 0}body.approved-header.menu-style-15 #navigation>.nav-main-item details[open]>summary{border-left-color:#1766af}}

/* Approved animation 2: navy matches the top bar; navigation buttons do not invert. */
@media(min-width:981px){
body.approved-header.menu-fade .nav{--menu-surround:#12385f;--menu-action-ink:#fff}
body.approved-header.menu-fade .nav:has(.nav-actions .button.small:is(:hover,:focus-visible)){--menu-surround:#fff;--menu-action-ink:#12385f}
body.approved-header.menu-fade .nav>nav,body.approved-header.menu-fade .nav:has(.nav-actions .button.small:is(:hover,:focus))>nav{background:var(--menu-surround);border-color:#12385f;transition:background-color .65s ease}
/* One outer stroke and one shared radius prevent doubled, uneven hover corners. */
body.approved-header.menu-fade .nav-actions{border-radius:0 8px 8px 0;overflow:hidden;background:var(--menu-surround);transition:background-color .65s ease}
body.approved-header.menu-fade .nav-actions .button.small:is(a,:hover,:focus){background:var(--menu-surround);color:var(--menu-action-ink);border-color:transparent;border-radius:0 8px 8px 0;box-shadow:none!important;transform:none;translate:none;transition:background-color .65s ease,color .65s ease}
body.approved-header.menu-fade .nav-actions::before{border-color:#12385f}
body.approved-header.menu-fade .nav-actions:has(.button.small:focus-visible){outline:2px solid #1766af;outline-offset:3px}
body.approved-header.menu-fade .nav-actions .button.small:focus-visible{outline:none}
/* Outline the whole split button, without changing the dropdown positioning. */
body.approved-header.menu-fade.menu-style-15 #navigation>:is(.nav-main-item,a):is(:hover,:focus-within){outline:1px solid #1766af;outline-offset:0}
body.approved-header.menu-fade.menu-style-15 #navigation>.nav-main-item:has(>a:focus-visible,>details>summary:focus-visible){outline:2px solid #1766af;outline-offset:2px}
body.approved-header.menu-fade.menu-style-15 #navigation>.nav-main-item>a:focus-visible,body.approved-header.menu-fade.menu-style-15 #navigation>.nav-main-item>details>summary:focus-visible{outline:none}
}
@media(prefers-reduced-motion:reduce){body.approved-header.menu-fade .nav>nav,body.approved-header.menu-fade .nav-actions,body.approved-header.menu-fade .nav-actions .button.small{transition:none!important}}
.approved-header .mega-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
.approved-header .mega-columns .menu-service-box>a{white-space:nowrap}
@media(max-width:760px){
 .approved-header .mega-columns{grid-template-columns:1fr}
 .approved-header .mega-menu{padding:10px}
 .approved-header .mega-columns .menu-service-box{padding:12px}
 .approved-header .mega-columns .menu-service-box>a{font-size:clamp(11px,3.2vw,14px)}
}

/* Services category descriptions remain on one line. */
.approved-header .mega-columns .menu-service-box>p{white-space:nowrap}
@media(max-width:760px){.approved-header .mega-columns .menu-service-box>p{font-size:clamp(10px,2.8vw,14px)}}
.approved-header .rich-sector-menu{width:min(1190px,calc(100vw - 36px));grid-template-columns:230px minmax(0,1fr)}
.approved-header :is(.menu-sector-grid,.hardware-menu-cards) :is(strong,span){white-space:nowrap}
.approved-header .hardware-sector-links a,.approved-header .procurement-menu h3{white-space:nowrap}
@media(max-width:980px){.approved-header .rich-sector-menu{width:100%}}
@media(max-width:760px){
 .approved-header .rich-sector-menu,.approved-header .procurement-menu{padding:10px}
 .approved-header .menu-sector-grid>a,.approved-header .hardware-menu-cards>a{padding:12px}
 .approved-header :is(.menu-sector-grid,.hardware-menu-cards) span{font-size:clamp(11px,3vw,14px)}
 .approved-header :is(.menu-sector-grid,.hardware-menu-cards) strong{font-size:clamp(12px,3.5vw,17px)}
}

/* Sector proposal card: generated photography softened behind accessible white copy. */
body.approved-header .menu-sector-grid>a.sector-menu-cta{position:relative;isolation:isolate;overflow:hidden;background:#1766af;color:#fff;border:1px solid #1766af;display:flex;flex-direction:column;gap:4px;min-height:0;padding:14px 22px;border-radius:8px}
body.approved-header .menu-sector-grid>a.sector-menu-cta::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(16,71,127,.95),rgba(23,102,175,.74)),url('/assets/sector-menu-workplace.png') center/cover no-repeat;transition:opacity .2s}
body.approved-header .menu-sector-grid>a.sector-menu-cta strong{color:#fff;font-size:17px;line-height:1.3;max-width:none}
body.approved-header .menu-sector-grid>a.sector-menu-cta span{color:#fff}
body.approved-header .sector-menu-cta .sector-menu-cta-copy{font-size:13px;line-height:1.5}
body.approved-header .sector-menu-cta .sector-menu-cta-icons{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:6px;margin:0}
body.approved-header .sector-menu-cta-icons>span{display:flex;align-items:center;gap:5px;font-size:11px}
body.approved-header .sector-menu-cta svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
body.approved-header .sector-menu-cta .sector-menu-cta-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:6px;margin-top:auto;padding-top:5px;width:100%;min-width:0;box-sizing:border-box}
body.approved-header .sector-menu-cta .sector-menu-cta-action{display:block;flex:0 0 auto;min-width:0;max-width:none;white-space:nowrap;text-align:right;font-size:11px;line-height:1.25;font-weight:650}
body.approved-header .menu-sector-grid>a.sector-menu-cta:hover::before{opacity:.85}
body.approved-header .menu-sector-grid>a.sector-menu-cta:focus-visible{outline:2px solid #1766af;outline-offset:3px}
header .nav-main-item:has(>a[href="/services/"]) .mega-menu{border-radius:0 0 14px 14px!important}
body.approved-header.menu-style-15 #navigation .nav-main-item:has(>a[href="/services/"])>.nav-disclosure>.mega-menu{border-radius:0 0 14px 14px!important;overflow:hidden}
body.approved-header.menu-style-15 #navigation .nav-main-item:has(>a[href="/sectors/"])>.nav-disclosure>.rich-sector-menu{border-radius:0 0 14px 14px!important;overflow:hidden}
body.approved-header.menu-style-15 #navigation .nav-main-item:has(>a[href="/company/"])>.nav-disclosure>.rich-company-menu{border-radius:0 0 14px 14px!important;overflow:hidden}
body.approved-header.menu-style-15 #navigation .nav-main-item:has(>a[href="/procurement/"])>.nav-disclosure>.procurement-menu{border-top:3px solid var(--blue,#185bab)!important;border-top-left-radius:0!important;border-top-right-radius:0!important}
@media(min-width:981px){body.approved-header.menu-style-15 #navigation .nav-main-item>.nav-disclosure>:is(.mega-menu,.rich-sector-menu,.procurement-menu,.rich-company-menu,#product-dropdown){width:min(1190px,calc(100vw - 36px))!important;max-width:1190px!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;box-sizing:border-box}}

/* Match the Services header while preserving the homepage content grid. */
@media(min-width:981px){body.approved-header.homepage-layout header .nav{max-width:1280px;padding-left:40px;padding-right:41px}}


/* Use the Services page width and gutters for the homepage address bar. */
.approved-header.homepage-layout .topbar>.wrap{max-width:1280px;padding-left:40px;padding-right:40px}
@media(max-width:1050px){.approved-header.homepage-layout .topbar>.wrap{padding-left:28px;padding-right:28px}}
@media(max-width:760px){.approved-header.homepage-layout .topbar>.wrap{padding-left:22px;padding-right:22px}}
/* Align the desktop header with the shared 1280px content container. */
@media(min-width:981px){
body.approved-header header .wrap.nav{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:40px;padding-right:40px;box-sizing:border-box}
body.approved-header header #navigation{margin-left:auto;flex:1;justify-content:space-between;min-width:0}
}
@media(min-width:981px){body.approved-header header .wrap.nav{column-gap:24px}body.approved-header header #navigation{margin-left:0}}
/* Match the homepage's visible content edges. */
@media(min-width:981px){body.approved-header.homepage-layout header .wrap.nav{max-width:1290px;padding-left:30px;padding-right:30px}body.approved-header.homepage-layout header .nav-actions{margin-left:auto;flex-shrink:0}}
/* Restore the right-aligned joined desktop menu and proposal bar. */
@media(min-width:981px){
body.approved-header header .wrap.nav{column-gap:0}
body.approved-header header #navigation{flex:0 0 auto;margin-left:auto;justify-content:flex-start;border-top-right-radius:0;border-bottom-right-radius:0}
body.approved-header header .nav-actions,body.approved-header.homepage-layout header .nav-actions{margin-left:0}
}
@media(min-width:981px){body.approved-header.homepage-layout header .wrap.nav{max-width:1280px;padding-left:40px;padding-right:40px}}

/* Let vertical touch scrolling pass through decorative banner imagery. */
@media(max-width:980px){.sector-editorial,.sector-editorial-layout,.service-map-hero,.landing-intro-with-photo,.mountain-carousel,.mountain-slide{touch-action:pan-y pinch-zoom!important}.sector-editorial-layout>figure,.service-map-hero .landing-intro-with-photo>figure,.mountain-slide img{pointer-events:none!important}.sector-editorial-layout img,.service-map-hero img{user-select:none;-webkit-user-drag:none;touch-action:pan-y pinch-zoom!important}.sector-editorial-layout>figure:after{pointer-events:none!important}}header .brand img.company-logo{filter:brightness(0) saturate(100%) invert(17%) sepia(32%) saturate(1600%) hue-rotate(174deg) brightness(94%) contrast(94%)!important}
header .brand img.company-logo{filter:none!important;content:url("/assets/it-mountain-logo-navy.svg")!important}
