@media (width >= 991px){body:has(.site-header--mega [data-js=menu-btn][aria-expanded=true]){overflow:hidden}}@media (width < 991px){.nav-open body{overflow:hidden}}.menu{display:flex;flex-direction:column;gap:1.2rem;& ul{list-style:none;margin:0}& a,& button{color:inherit;display:block;line-height:1.1;text-decoration:none}& a[aria-current=page]{text-decoration:underline}& button{appearance:none;background-color:transparent;border:0;cursor:pointer;text-align:left}}.menu__upper{display:flex;gap:var(--space-md);justify-content:flex-end;& ul{display:flex;gap:var(--space-md)}& a,& button{font-size:1.4rem}}.menu-1{align-items:center;display:flex;gap:var(--space-md);@media (width >= 1200px){gap:var(--space-xl)}&>li>a,&>li>button{font-family:var(--heading-font);font-size:1.8rem;&:focus,&:hover,&[aria-expanded=true]{color:inherit;text-decoration:underline;text-decoration-color:var(--color-pink);text-decoration-thickness:.3rem;text-underline-offset:.7rem}}&>li>button{align-items:center;display:flex;gap:var(--space-sm);&:after{aspect-ratio:1/1;background-color:var(--color-black);content:"";flex-shrink:0;width:1.4rem}}&>li:last-child>a{background-color:var(--color-cyan);color:var(--color-black);padding:.5em .8em;text-decoration:none;transition:background-color .2s ease,color .2s ease;&:focus,&:hover{background-color:var(--color-pink);color:var(--color-white)}}& button[aria-expanded=true]+.menu-2{display:flex;& .level-1,& .menu__highlight{animation:submenuFade .4s ease 0s 1 forwards;margin-top:1rem;opacity:0}}}@keyframes submenuFade{0%{margin-top:1rem;opacity:0}to{margin-top:0;opacity:1}}.menu-2{display:none;left:0;padding:var(--content-horizontal-padding);position:absolute;top:100%;width:100%;&>.grid{margin:0 auto;max-width:var(--content-max-width)}& .menu__highlight{align-self:center;display:flex;flex-direction:column;grid-column:6/-2;grid-row:1;z-index:1;& .h4{margin-bottom:.6em}}& .menu-2-wrapper{grid-column:1/-1;grid-row:1;position:relative}& .level-1{border-right:.1rem solid hsla(0,0%,100%,.5);display:flex;flex-direction:column;&>li>a,&>li>button{font-size:2.1rem;padding:var(--space-md);&:focus,&:hover{background-color:hsla(0,0%,100%,.2)}}}& .level-2{column-count:2;display:none;gap:var(--gutter-col);position:absolute;right:0;top:0;width:calc(66.66667% - var(--gutter-col)*11/12*8 + var(--gutter-col)*7);&>li{break-inside:avoid-column}&>li+li{margin-top:var(--space-lg)}&>li>a,&>li>span{font-family:var(--heading-font);font-size:2.1rem;font-weight:700}}& .level-3{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-sm)}& .menu-2-wrapper:has([aria-expanded=true])+.menu__highlight{display:none}& .level-1 button[aria-expanded=true]+.level-2{display:block}}.menu-2-wrapper{& a,& button{align-items:center;display:flex;justify-content:space-between;width:100%;&:focus,&:hover{color:var(--color-cyan)}}& button[aria-expanded=true]{border-right:.4rem solid var(--color-cyan)}& button:after{aspect-ratio:1/1;background-color:var(--color-cyan);content:"";flex-shrink:0;width:1.6rem}}@media (width < 992px){.menu-desktop,.menu__upper{display:none!important}}.menu-mobile{animation:mobileFadeOut .4s ease 0s 1 forwards;background-color:var(--color-blue);flex-direction:column;gap:var(--space-xl);height:calc(100dvh - var(--header-height-mobile));left:0;overflow-y:auto;padding:var(--content-horizontal-padding);position:absolute;top:100%;transform:translateX(100%);width:100%;& .level-1{display:flex;flex-direction:column;gap:var(--space-xs);& a,& button{padding:var(--space-sm) 0;width:100%;&:focus,&:hover,&[aria-expanded=true]{color:var(--color-cyan)}}& button{align-items:center;display:flex;justify-content:space-between}& button:after{aspect-ratio:1/1;background-color:var(--color-cyan);content:"";flex-shrink:0;transform:rotate(90deg);transition:transform .2s ease;width:1.6rem}& button[aria-expanded=true]:after{transform:rotate(-90deg)}&>li>a,&>li>button{font-family:var(--heading-font);font-size:2.4rem}&>li:last-child>a{background-color:var(--color-cyan);color:var(--color-black);display:inline-block;font-size:2.1rem;margin-top:var(--space-xl);padding:.5em .8em;text-decoration:none;transition:background-color .2s ease,color .2s ease;width:auto;&:focus,&:hover{background-color:var(--color-pink);color:var(--color-white)}}& ul{display:none;padding:var(--space-sm) 0 var(--space-md) var(--space-sm)}& button[aria-expanded=true]+ul{display:block}}& .links{display:flex;flex-direction:column;gap:var(--space-md)}}.menu__btn[aria-expanded=false]+.menu-mobile{animation:mobileFadeOut .4s ease 0s 1 forwards;display:none}.menu__btn[aria-expanded=true]+.menu-mobile{animation:mobileFadeIn .4s ease 0s 1 forwards;display:flex}@keyframes mobileFadeIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes mobileFadeOut{0%{display:flex;transform:translateX(0)}99%{transform:translateX(100%)}to{display:none}}@media (width >= 992px){.menu-mobile{display:none!important}}.menu .menu__btn{align-items:center;aspect-ratio:1/1;display:flex;position:relative;width:3.4rem;& span,&:after,&:before{background-color:var(--color-blue);height:.4rem;width:100%}& span{transition:opacity .1s ease}&:after,&:before{content:"";position:absolute;transition:transform .2s ease}&:before{transform:translateY(-250%)}&:after{transform:translateY(250%)}&[aria-expanded=true]{& span{opacity:0}&:before{transform:rotate(45deg)}&:after{transform:rotate(-45deg)}}}@media (width >= 992px){.menu .menu__btn{display:none}}.lang-switcher{position:relative;z-index:3;& .current-lang a{font-weight:700}& button{appearance:none;background-color:transparent;border:0;display:flex;text-transform:capitalize;&:hover{color:var(--color-pink);cursor:pointer}}@media (width >= 992px){& ul{border:.1rem solid var(--color-light);display:none;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);position:absolute;right:0;top:140%}}& button[aria-expanded=true]+ul{animation:langSwitcherFade .3s ease 0s 1 forwards;display:flex;opacity:0;transform:translateY(-1rem)}}@keyframes langSwitcherFade{0%{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:translateY(0)}}.menu-mobile .lang-switcher{margin-bottom:var(--space-sm);margin-top:auto;& ul{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg)}}