/* Surdolog responsive navigation + active-state + wave contract. */
html,body{max-width:100%;overflow-x:clip}
.header,.site-shell-header{width:100%;max-width:100vw;overflow-x:clip}
.header>.container,.site-shell-header>.container{width:100%;max-width:100%;box-sizing:border-box}
.header-inner,.site-shell-inner,.header-actions,.site-shell-actions,.logo,.site-shell-brand{min-width:0}
.header-actions>.lang-switcher,.lang-switcher,.site-shell-lang{flex:0 0 auto!important;max-width:100%;min-width:max-content}

/* Current section is always visible, not hover-only. */
.nav a[aria-current="page"],.nav a.active,
.site-shell-nav a[aria-current="page"],.site-shell-nav a.active{color:var(--text-deep)}
.nav a[aria-current="page"]::after,.nav a.active::after,
.site-shell-nav a[aria-current="page"]::after,.site-shell-nav a.active::after{transform:scaleX(1)!important}
.mobile-menu a[aria-current="page"],.site-shell-mobile-nav a[aria-current="page"]{color:var(--terracotta-deep);font-weight:700}
.lang-switcher .lang-btn[aria-current="page"],.lang-switcher .lang-btn.active,
.site-shell-lang a[aria-current="page"],.site-shell-lang a.active{background:var(--gold);color:var(--text-deep)}
.lang-switcher .lang-btn[aria-disabled="true"],.site-shell-lang a[aria-disabled="true"],.mobile-menu .lang-btn[aria-disabled="true"]{opacity:.42;cursor:not-allowed;pointer-events:none;text-decoration:none}

/* A single visual wave starts at the mark and rolls through menu words. */
@keyframes surdolog-nav-logo-wave{0%{transform:scale(1);box-shadow:0 2px 8px rgba(201,169,97,.18)}45%{transform:scale(1.07);box-shadow:0 0 0 8px rgba(201,169,97,.14)}100%{transform:scale(1);box-shadow:0 2px 8px rgba(201,169,97,.18)}}
@keyframes surdolog-nav-word-wave{0%{background-position:100% 0}100%{background-position:0 0}}
.header.is-navigation-wave .logo-mark,.site-shell.is-navigation-wave .site-shell-mark{animation:surdolog-nav-logo-wave 720ms cubic-bezier(.2,.7,.2,1) both}
.header.is-navigation-wave .nav a,.site-shell.is-navigation-wave .site-shell-nav a{
  background-image:linear-gradient(105deg,currentColor 0%,currentColor 26%,#C9A961 40%,#B87333 50%,#C9A961 60%,currentColor 74%,currentColor 100%);
  background-size:260% 100%;background-position:100% 0;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  animation:surdolog-nav-word-wave 820ms cubic-bezier(.2,.7,.2,1) both
}
.header.is-navigation-wave .nav a:nth-child(1),.site-shell.is-navigation-wave .site-shell-nav a:nth-child(1){animation-delay:120ms}
.header.is-navigation-wave .nav a:nth-child(2),.site-shell.is-navigation-wave .site-shell-nav a:nth-child(2){animation-delay:220ms}
.header.is-navigation-wave .nav a:nth-child(3),.site-shell.is-navigation-wave .site-shell-nav a:nth-child(3){animation-delay:320ms}
.header.is-navigation-wave .nav a:nth-child(4),.site-shell.is-navigation-wave .site-shell-nav a:nth-child(4){animation-delay:420ms}
.header.is-navigation-wave .nav a:nth-child(5),.site-shell.is-navigation-wave .site-shell-nav a:nth-child(5){animation-delay:520ms}
.header.is-navigation-wave .nav a:nth-child(6),.site-shell.is-navigation-wave .site-shell-nav a:nth-child(6){animation-delay:620ms}

/* Intermediate desktop widths: switch to compact navigation before text can push controls outside viewport. */
@media(max-width:1440px){
  .header-inner,.site-shell-inner{gap:12px!important}
  .header-actions,.site-shell-actions{gap:6px!important}
  .nav,.site-shell-nav{gap:12px!important}
  .header-clock,.site-shell-clock{padding:6px 9px!important;gap:5px!important;font-size:11px!important}
  .header-clock .hc-date,.site-shell-clock .hc-date{display:inline!important}
  .header-clock .hc-city,.site-shell-clock .hc-city{display:none!important}
}
@media(max-width:1320px){
  .header-clock,.site-shell-clock{display:inline-flex!important}
  .header-clock .hc-date,.site-shell-clock .hc-date{display:inline!important}
  .header-clock .hc-city,.site-shell-clock .hc-city{display:inline!important}
  .nav,.site-shell-nav{display:none!important}
  .mobile-menu-btn,.site-shell-menu-button{display:inline-flex!important;align-items:center;justify-content:center}
  .header-actions,.site-shell-actions{margin-left:auto!important}
  .logo-subline,.site-shell-role{display:none!important}
}
@media(max-width:900px){
  .header-clock .hc-city,.site-shell-clock .hc-city{display:none!important}
  .header-clock .hc-date,.site-shell-clock .hc-date{display:inline!important}
}
@media(max-width:720px){
  .header-clock,.site-shell-clock{display:none!important}
  .header>.container,.site-shell-header>.container{padding-left:max(14px,env(safe-area-inset-left,0px))!important;padding-right:max(14px,env(safe-area-inset-right,0px))!important}
  .header-inner,.site-shell-inner{gap:7px!important;min-height:58px!important}
  .logo-firstname,.logo-subline,.site-shell-firstname,.site-shell-role{display:none!important}
  .lang-switcher,.site-shell-lang{display:inline-flex!important}
  .lang-switcher .lang-btn,.site-shell-lang a{padding:5px 7px!important;min-width:27px!important;font-size:10.5px!important}
  .site-shell-book{min-width:0!important;padding:8px 11px!important;font-size:11.5px!important}
}
@media(max-width:520px){
  .logo-mark,.site-shell-mark{width:38px!important;height:38px!important;padding:4px!important}
  .logo-surname,.site-shell-surname{font-size:14px!important}
  .header-actions,.site-shell-actions{gap:5px!important}
  .mobile-menu-btn,.site-shell-menu-button{width:36px!important;height:36px!important;padding:6px!important}
}
@media(max-width:430px){
  .logo-text,.site-shell-brand-copy{display:none!important}
  .header-inner,.site-shell-inner{gap:5px!important}
  .lang-switcher .lang-btn,.site-shell-lang a{padding:4px 6px!important;min-width:24px!important;font-size:10px!important}
  .site-shell-book{padding:7px 9px!important;font-size:10.5px!important}
}
@media(max-width:360px){
  .header>.container,.site-shell-header>.container{padding-left:max(9px,env(safe-area-inset-left,0px))!important;padding-right:max(9px,env(safe-area-inset-right,0px))!important}
  .lang-switcher{display:inline-flex!important}
  .lang-switcher .lang-btn,.site-shell-lang a{padding:3px 5px!important;min-width:22px!important;font-size:9.5px!important}
  .header .btn.btn-primary.btn-sm{padding:6px 8px!important;min-width:34px!important}
  .site-shell-book{padding:6px 7px!important}
}
@media(prefers-reduced-motion:reduce){
  .header.is-navigation-wave .logo-mark,.site-shell.is-navigation-wave .site-shell-mark,
  .header.is-navigation-wave .nav a,.site-shell.is-navigation-wave .site-shell-nav a{animation:none!important;background:none!important;-webkit-text-fill-color:currentColor!important}
}
