/* Единое меню kitesurfing.tours — разметку генерирует tools/site_nav.py.
   Цвета заданы явно, чтобы шапка выглядела одинаково на страницах
   с разными :root-переменными (например, аренда авто). */
.kst-nav{
  position:sticky;top:0;z-index:60;
  display:block!important;padding:0!important;
  background:rgba(4,29,41,.94);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.1);
  font-family:'Manrope',Arial,sans-serif;line-height:1.3;
}
.kst-nav *{box-sizing:border-box;}
.kst-nav :focus-visible{outline:2.5px solid #ff6a4d;outline-offset:3px;}
.kst-nav__bar{
  position:relative;display:flex;align-items:center;gap:18px;
  max-width:1280px;margin:0 auto;padding:12px 24px;
}
.kst-nav .brand{
  display:flex;align-items:center;gap:9px;flex:none;white-space:nowrap;
  color:#faf6ec;text-decoration:none;
  font-family:'Unbounded',sans-serif;font-weight:600;font-size:15px;letter-spacing:-.01em;
}
.kst-nav .brand .dot{width:8px;height:8px;border-radius:50%;background:#ff6a4d;flex:none;}
.kst-nav .brand b{color:#ff6a4d;font-weight:600;}

.kst-nav__menu{flex:1;min-width:0;}
.kst-nav__list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px;}
.kst-nav__item{position:relative;}
.kst-nav__link{
  display:inline-flex;align-items:center;gap:6px;
  padding:9px 12px;border:0;border-radius:999px;background:none;cursor:pointer;
  color:rgba(255,255,255,.84);font:600 14px/1.2 'Manrope',Arial,sans-serif;
  text-decoration:none;white-space:nowrap;
  transition:color .2s ease,background .2s ease;
}
.kst-nav__link:hover,.kst-nav__link[aria-expanded="true"]{color:#fff;background:rgba(255,255,255,.08);}
.kst-nav__link[aria-current]{color:#fff;}
.kst-nav__link svg{width:14px;height:14px;flex:none;transition:transform .2s ease;}
.kst-nav__link[aria-expanded="true"] svg{transform:rotate(180deg);}
.kst-nav__link--base{color:#ff8a70;}
.kst-nav__link--base[aria-current]{color:#ff8a70;background:rgba(255,106,77,.12);}

.kst-nav__dd{
  display:none;position:absolute;top:calc(100% + 10px);left:0;width:min(540px,92vw);
  padding:12px;border-radius:16px;
  background:#06283a;border:1px solid rgba(255,255,255,.12);
  box-shadow:0 24px 60px rgba(0,0,0,.4);
}
.kst-nav__dd.is-open{display:block;}
.kst-nav__dd ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:2px;}
.kst-nav__dd a{
  display:block;padding:9px 12px;border-radius:10px;
  color:#fff;text-decoration:none;font-weight:600;font-size:14px;line-height:1.3;
}
.kst-nav__dd a small{display:block;margin-top:1px;font-weight:500;font-size:12px;color:rgba(255,255,255,.55);}
.kst-nav__dd a:hover,.kst-nav__dd a[aria-current]{background:rgba(255,255,255,.07);}
.kst-nav__dd a.is-main{grid-column:1/-1;border:1px solid rgba(255,106,77,.45);}
.kst-nav__dd a.is-main small{color:#ff8a70;}
.kst-nav__dd .kst-nav__dd-all{margin-top:8px;color:#ff8a70;font-size:13.5px;}

.kst-nav .header-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex:none;}
.kst-nav .header-wa{
  display:inline-flex;align-items:center;gap:7px;
  padding:9px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.28);
  color:#faf6ec;text-decoration:none;font-size:14px;font-weight:700;
  transition:border-color .2s ease,color .2s ease;
}
.kst-nav .header-wa:hover{border-color:#25D366;color:#fff;}
.kst-nav .header-wa svg{width:16px;height:16px;}
.kst-nav .header-cta{
  display:inline-flex;align-items:center;
  padding:10px 18px;border-radius:999px;background:#ff6a4d;
  color:#fff;text-decoration:none;font-size:13.5px;font-weight:700;
  transition:background .2s ease;
}
.kst-nav .header-cta:hover{background:#e14524;}

.kst-nav__burger{
  display:none;align-items:center;justify-content:center;
  width:42px;height:42px;padding:0;border-radius:50%;
  border:1px solid rgba(255,255,255,.28);background:none;color:#fff;cursor:pointer;
}
.kst-nav__burger span,.kst-nav__burger span::before,.kst-nav__burger span::after{
  display:block;width:18px;height:2px;border-radius:2px;background:currentColor;
  transition:transform .2s ease,background .2s ease;
}
.kst-nav__burger span{position:relative;}
.kst-nav__burger span::before,.kst-nav__burger span::after{content:"";position:absolute;left:0;}
.kst-nav__burger span::before{top:-6px;}
.kst-nav__burger span::after{top:6px;}
.kst-nav__burger[aria-expanded="true"] span{background:transparent;}
.kst-nav__burger[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg);}
.kst-nav__burger[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg);}

/* ---- Подменю «Маврикий — наша база» ---- */
.kst-sub{background:rgba(6,40,58,.7);border-top:1px solid rgba(255,255,255,.08);}
.kst-sub__inner{
  display:flex;align-items:center;gap:16px;
  max-width:1280px;margin:0 auto;padding:0 24px;
  overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
}
.kst-sub__inner::-webkit-scrollbar{display:none;}
.kst-sub__home{
  display:inline-flex;align-items:center;gap:7px;flex:none;padding:12px 0;
  color:#ff8a70;text-decoration:none;white-space:nowrap;
  font:600 11.5px/1 'Unbounded',sans-serif;letter-spacing:.05em;text-transform:uppercase;
}
.kst-sub__home svg{width:15px;height:15px;flex:none;}
.kst-sub ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;}
.kst-sub__link{
  display:block;padding:12px;white-space:nowrap;
  color:rgba(255,255,255,.76);text-decoration:none;font-size:13.5px;font-weight:600;
  border-bottom:2px solid transparent;
  transition:color .2s ease,border-color .2s ease;
}
.kst-sub__link:hover{color:#fff;}
.kst-sub__link[aria-current]{color:#fff;border-bottom-color:#ff6a4d;}
.kst-sub__link--wa{color:#6ee7a0;}
.kst-sub__link--wa:hover{color:#9af0bd;}

/* ---- Планшет и телефон: меню за бургером ---- */
@media (max-width:1099px){
  .kst-nav__burger{display:inline-flex;}
  .kst-nav__menu{
    display:none;position:absolute;left:0;right:0;top:100%;
    max-height:calc(100vh - 66px);overflow-y:auto;
    padding:10px 16px 22px;background:#041d29;
    border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.12);
    box-shadow:0 24px 40px rgba(0,0,0,.4);
  }
  .kst-nav__menu.is-open{display:block;}
  .kst-nav__list{flex-direction:column;align-items:stretch;gap:2px;}
  .kst-nav__link{width:100%;justify-content:space-between;padding:14px 12px;border-radius:12px;font-size:16px;}
  .kst-nav__dd{position:static;width:auto;margin:4px 0 8px;padding:6px;box-shadow:none;background:rgba(255,255,255,.04);}
}
@media (max-width:600px){
  .kst-nav__bar{padding:10px 16px;gap:10px;}
  .kst-nav .brand{font-size:14px;}
  .kst-nav .header-actions{gap:8px;}
  .kst-nav .header-wa span{display:none;}
  .kst-nav .header-wa{padding:9px 11px;}
  .kst-nav__dd ul{grid-template-columns:1fr;}
  .kst-sub__inner{padding:0 16px;gap:10px;}
  .kst-sub__home span{display:none;}
}
@media (max-width:440px){
  /* На узком экране WhatsApp есть в hero, в подменю Маврикия и в меню-бургере */
  .kst-nav .header-wa{display:none;}
}
@media (max-width:370px){
  .kst-nav .header-cta{padding:10px 12px;}
  .kst-nav .brand{font-size:13px;}
}
@media (prefers-reduced-motion:reduce){
  .kst-nav *{transition:none!important;}
}
