.mobile-menu{justify-content:flex-start;padding:145px max(24px,calc((100% - 1200px)/2)) 40px;overflow-y:auto}
.mobile-menu::before{border-radius:0 0 0 125px;background:var(--brand-navy);transform:translateY(-24px);transition:transform .35s ease,opacity .35s ease}
.menu-layout{position:relative;z-index:1;width:100%;max-width:1200px;margin:0 auto;opacity:0;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease}
.mobile-menu.is-open .menu-layout{opacity:1;transform:none;transition:opacity .35s ease .15s,transform .35s ease .15s}
.mobile-menu nav.mega-menu{display:grid;grid-template-columns:.85fr 1.4fr;width:100%;gap:90px;margin:0;opacity:1;visibility:visible;transition:none;align-items:start}
.mobile-menu.is-open nav.mega-menu{transition:none}
.menu-label{margin:0 0 20px;color:#d9e3ec;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.mobile-menu .menu-primary>a{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;font:500 32px/1.25 var(--sans);letter-spacing:-.025em;padding:12px 0;margin:0;border-bottom:1px solid #ffffff20}
.mobile-menu .menu-primary>a:hover{padding:12px 0;color:var(--brand-coral)}
.menu-link-arrow{font-size:21px;opacity:0;transition:opacity .2s ease}.menu-primary>a:hover .menu-link-arrow,.menu-primary>a:focus-visible .menu-link-arrow{opacity:1}
.mobile-menu a[aria-current="page"]{color:var(--brand-coral)}
.menu-primary>a[aria-current="page"]:before{content:'';position:absolute;left:-17px;width:5px;height:5px;background:var(--brand-coral);border-radius:50%}
.menu-specialties{border-left:1px solid #ffffff26;padding-left:42px;margin-top:2px}
.menu-specialties summary{display:flex;align-items:center;gap:14px;list-style:none;color:var(--brand-coral);font:500 20px/1.4 var(--sans);margin-bottom:26px;cursor:default}
.menu-specialties summary::-webkit-details-marker{display:none}.menu-specialties summary .line-icon{width:32px;height:32px}.menu-expand{display:none}
.menu-specialties-links{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.mobile-menu .menu-specialties-links>a{font:400 17px/1.5 var(--sans);letter-spacing:0;margin:0;padding:13px 0;border-bottom:1px solid #ffffff16}
.mobile-menu .menu-specialties-links>a:hover{padding:13px 0;color:var(--brand-coral)}
.menu-contact-bar{display:flex;align-items:center;gap:30px;flex-wrap:wrap;border-top:1px solid #ffffff30;margin-top:55px;padding-top:25px}
.menu-contact-caption{font-size:13px;color:#cfdae4;margin-right:auto}
.menu-contact-bar a{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:#fff}
.menu-contact-bar a:hover{color:var(--brand-coral)}.menu-contact-bar .line-icon{width:23px;height:23px}
.menu-contact-bar a:focus-visible,.menu-specialties summary:focus-visible{outline:2px solid var(--brand-coral);outline-offset:6px}
body.menu-open .site-header .search-link,body.menu-open .site-header .lang{visibility:hidden}
@media(min-width:768px) and (max-width:1050px){.mobile-menu nav.mega-menu{gap:45px;grid-template-columns:.8fr 1.3fr}.menu-specialties{padding-left:26px}.mobile-menu .menu-primary>a{font-size:28px}.menu-specialties-links{gap:0 22px}.mobile-menu .menu-specialties-links>a{font-size:16px}.menu-contact-bar{gap:20px}}
@media(max-width:767px){
.mobile-menu{padding:110px 26px 35px}.mobile-menu::before{border-radius:0 0 0 65px}
.mobile-menu nav.mega-menu{display:block;width:100%}.menu-label{font-size:11px;margin-bottom:14px}
.mobile-menu .menu-primary>a{font-size:27px;padding:11px 0}.mobile-menu .menu-primary>a:hover{padding:11px 0}
.menu-specialties{border-left:0;padding:0;margin:30px 0 0}.menu-specialties summary{cursor:pointer;margin:0;font-size:18px;gap:12px;padding:12px 0}.menu-specialties summary .line-icon{width:27px;height:27px}
.menu-expand{display:block;margin-left:auto;font-size:25px;transition:transform .2s}.menu-specialties[open] .menu-expand{transform:rotate(45deg)}
.menu-specialties-links{display:grid;grid-template-columns:1fr;padding:10px 0}.mobile-menu .menu-specialties-links>a{font-size:16px;padding:12px 0}
.menu-contact-bar{margin-top:28px;padding-top:22px;gap:18px;align-items:flex-start;flex-direction:column}.menu-contact-caption{font-size:12px}.menu-contact-bar a{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.mobile-menu::before,.menu-layout,.mobile-menu.is-open .menu-layout{transition:none;transform:none}}
