/* Lenis owns wheel motion; each menu/dialog keeps its native scroll area. */
html.lenis {scroll-behavior:auto!important}
.ys-navigation__content {overscroll-behavior:contain; -webkit-overflow-scrolling:touch}
.ys-navigation__mobile-actions {display:none}
.ys-motion-word {display:inline-block; vertical-align:baseline}
@media print {
  .ys-motion-word {opacity:1!important; transform:none!important}
}
@media (prefers-reduced-motion:reduce) {
  .ys-motion-word {opacity:1!important; transform:none!important}
}

/* Osmo's mobile hierarchy: menu / centered brand / one main action. */
@media (max-width:767px), (max-width:991px) and (max-height:500px) {
  .ys-navigation {
    --osmo-unit:16px;
    inset:max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) auto max(10px, env(safe-area-inset-left));
  }
  .ys-navigation__bar,
  .ys-navigation.is-open .ys-navigation__bar {
    display:flex; flex-direction:column; width:100%; max-width:100%;
    max-height:calc(100dvh - max(10px, env(safe-area-inset-top)) - max(10px, env(safe-area-inset-bottom)));
    background:var(--ys-lab-paper,#faf7f0); border-radius:6px;
    outline:1px solid rgba(8,47,98,.14); box-shadow:0 4px 24px #082f620c;
  }
  .ys-navigation__top {
    height:60px; min-height:60px; flex-shrink:0; padding:6px;
    display:grid; grid-template-columns:minmax(44px,1fr) auto minmax(100px,1fr); gap:8px;
  }
  .ys-navigation__top::before {display:none}
  .ys-navigation__toggle {
    justify-self:start; height:44px; min-width:44px; padding:0 10px; gap:8px;
  }
  .ys-navigation__label {display:inline; font-size:14px; line-height:1}
  .ys-navigation__hamburger {width:18px; gap:6px}
  .ys-navigation__brand {position:static; transform:none; justify-self:center; min-width:0}
  .ys-navigation__brand img {width:clamp(88px,26vw,112px); height:38px; object-fit:contain; max-width:100%}
  .ys-navigation__actions {justify-self:end; height:44px}
  .ys-navigation__actions .ys-navigation__login {display:none}
  .ys-navigation__actions .ys-navigation__enrol {height:44px; padding:0 12px; min-width:100px}
  .ys-navigation__actions .ys-navigation__button-label {font-size:14px; line-height:1}
  .ys-navigation__panel {min-height:0}
  .ys-navigation__clip {min-height:0}
  .ys-navigation__content {
    display:flex; flex-direction:column; gap:8px; padding:10px;
    max-height:calc(100dvh - 60px - max(10px, env(safe-area-inset-top)) - max(10px, env(safe-area-inset-bottom)));
    overflow-y:auto; touch-action:pan-y;
  }
  .ys-navigation__primary,.ys-navigation__secondary {padding:18px 18px; flex-shrink:0}
  .ys-navigation__eyebrow {font-size:10px; margin-bottom:12px}
  .ys-navigation li a {min-height:52px; padding:14px 0; font-size:24px; line-height:1.2}
  .ys-navigation__secondary li a {font-size:18px; min-height:48px; padding:13px 0}
  .ys-navigation li a>span {opacity:1; transform:none; font-size:17px}
  .ys-navigation__socials {margin-top:0; padding-top:18px}
  .ys-navigation__news {display:none}
  .ys-navigation__mobile-actions {
    display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:6px 0 2px; flex-shrink:0;
  }
  .ys-navigation__mobile-actions :is(.ys-navigation__login,.ys-navigation__enrol) {
    position:relative; overflow:hidden; height:50px; padding:0 16px; display:flex; justify-content:center; border:0; font-size:16px!important;
    color:var(--ys-lab-text,#082f62)!important; transform:none;
  }
  .ys-navigation__mobile-actions .ys-navigation__button-label {font-size:16px; font-weight:400; height:1em; overflow:hidden}
  .ys-navigation__mobile-actions .ys-navigation__login {background:var(--ys-lab-secondary,#ede6d8); border-radius:50px}
  .ys-navigation__mobile-actions .ys-navigation__enrol {background:var(--ys-lab-accent,#bba380); border-radius:3px}
  .ys-navigation__mobile-actions [aria-disabled=true] {cursor:default; opacity:.65}
  .ys-navigation.is-open .ys-navigation__primary,
  .ys-navigation.is-open .ys-navigation__secondary,
  .ys-navigation.is-open .ys-navigation__mobile-actions {
    animation:ys-menu-mobile-enter .5s cubic-bezier(.22,.61,.36,1) both;
  }
  .ys-navigation.is-open .ys-navigation__secondary {animation-delay:.05s}
  .ys-navigation.is-open .ys-navigation__mobile-actions {animation-delay:.1s}
  .ys-navigation__toggle:focus-visible {outline-offset:0}
}
@media (max-width:350px) {
  .ys-navigation__label {display:none}
  .ys-navigation__top {grid-template-columns:44px minmax(0,1fr) 100px}
}
@keyframes ys-menu-mobile-enter {from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce) {
  .ys-navigation.is-open :is(.ys-navigation__primary,.ys-navigation__secondary,.ys-navigation__mobile-actions) {animation:none}
}
