/* ===== Шапка ===== */
#site-header{position:sticky;top:0;z-index:300;background:rgba(11,15,14,0.82);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(143,163,156,0.13);font-family:'Space Grotesk',sans-serif;
  transition:background .2s,border-color .2s}
#site-header.kb-light{background:rgba(246,244,239,0.92);border-bottom-color:rgba(30,27,20,0.10)}
.kb-topline{position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(34,227,178,0.35),transparent)}
.kb-light .kb-topline{background:linear-gradient(90deg,transparent,rgba(12,143,107,0.28),transparent)}
.kb-header-inner{width:100%;max-width:1400px;margin:0 auto;padding:0 clamp(24px,3vw,40px);height:72px;
  display:flex;align-items:center;gap:28px}
.kb-brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}
.kb-logo{width:34px;height:37px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(34,227,178,0.35));transition:filter .2s}
.kb-light .kb-logo{filter:none}
.kb-brand-text{font-family:'Unbounded',sans-serif;font-weight:500;font-size:13px;
  letter-spacing:0.04em;color:#F3F6F5;white-space:nowrap;transition:color .2s}
.kb-light .kb-brand-text{color:#1E1B14}

.kb-nav{flex:1;display:flex;align-items:center;justify-content:center;gap:4px}
.kb-tab{display:inline-flex;align-items:center;gap:6px;font-family:'Space Grotesk',sans-serif;
  font-size:14px;font-weight:500;padding:9px 14px;border-radius:9px;border:none;background:transparent;
  color:#C9D6D1;cursor:pointer;text-decoration:none;white-space:nowrap;transition:color .15s,background .15s}
.kb-light .kb-tab{color:#3A362C}
.kb-tab:hover{color:#F3F6F5;background:rgba(30,43,39,0.5)}
.kb-light .kb-tab:hover{color:#1E1B14;background:rgba(30,27,20,0.05)}
.kb-tab.is-active{color:#22E3B2;background:rgba(34,227,178,0.10)}
.kb-light .kb-tab.is-active{color:#0C8F6B;background:rgba(12,143,107,0.10)}
.kb-caret{font-size:10px;color:#22E3B2}
.kb-light .kb-caret{color:#0C8F6B}

.kb-dd{position:relative}
.kb-drop{position:absolute;top:calc(100% + 8px);left:0;min-width:258px;
  background:rgba(15,21,19,0.97);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  border:1px solid rgba(143,163,156,0.15);border-radius:14px;padding:8px;
  box-shadow:0 24px 60px rgba(0,0,0,0.55);opacity:0;visibility:hidden;transform:translateY(4px);
  transition:opacity .15s,transform .15s,visibility .15s;z-index:50}
.kb-light .kb-drop{background:rgba(255,253,249,0.98);border-color:#E8E3D9;box-shadow:0 24px 60px rgba(30,27,20,0.14)}
.kb-dd:hover .kb-drop,.kb-dd:focus-within .kb-drop{opacity:1;visibility:visible;transform:translateY(0)}
.kb-drop-wide{min-width:272px}
.kb-drop-item{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:9px;
  text-decoration:none;color:#C9D6D1;font-size:14px;transition:background .15s,color .15s}
.kb-light .kb-drop-item{color:#3A362C}
.kb-drop-item:hover{background:rgba(34,227,178,0.09);color:#F3F6F5}
.kb-light .kb-drop-item:hover{background:rgba(12,143,107,0.08);color:#1E1B14}
.kb-dot{width:5px;height:5px;background:#22E3B2;border-radius:1px;box-shadow:0 0 8px #22E3B2;flex-shrink:0}
.kb-light .kb-dot{background:#0C8F6B;box-shadow:none}

.kb-right{display:flex;align-items:center;gap:14px;flex-shrink:0}
.kb-lang{display:flex;align-items:center;font-family:'JetBrains Mono',monospace;font-size:12px;
  border:1px solid rgba(143,163,156,0.18);border-radius:7px;overflow:hidden}
.kb-light .kb-lang{border-color:#E8E3D9}
.kb-lang-on{padding:5px 9px;background:rgba(34,227,178,0.14);color:#22E3B2}
.kb-light .kb-lang-on{background:rgba(12,143,107,0.14);color:#0C8F6B}
.kb-lang-off{padding:5px 9px;color:#647871;cursor:not-allowed}
.kb-light .kb-lang-off{color:#A7A192}

.kb-cta{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;color:#04140F;
  background:#22E3B2;padding:11px 20px;border:none;border-radius:9px;cursor:pointer;
  box-shadow:0 0 22px rgba(34,227,178,0.4);white-space:nowrap;
  transition:background .2s,box-shadow .2s,color .2s;min-height:44px}
.kb-cta:hover{box-shadow:0 0 34px rgba(34,227,178,0.6)}
.kb-light .kb-cta{background:#0C8F6B;color:#FFFDF9;box-shadow:0 4px 16px rgba(12,143,107,0.28)}
.kb-light .kb-cta:hover{box-shadow:0 6px 22px rgba(12,143,107,0.42)}

.kb-burger{display:none;width:44px;height:44px;flex-direction:column;align-items:center;
  justify-content:center;gap:5px;background:transparent;border:1px solid rgba(143,163,156,0.22);
  border-radius:11px;cursor:pointer;flex-shrink:0}
.kb-light .kb-burger{border-color:rgba(30,27,20,0.14)}
.kb-burger span{display:block;width:20px;height:1.8px;background:#F3F6F5;border-radius:2px;transition:background .2s}
.kb-light .kb-burger span{background:#1E1B14}

/* ===== Мобильное меню ===== */
.kb-mobile{display:none;padding:16px 24px 26px;border-top:1px solid rgba(143,163,156,0.13);
  max-height:calc(100vh - 72px);overflow-y:auto}
.kb-light .kb-mobile{border-top-color:rgba(30,27,20,0.10)}
#site-header.kb-mobile-open .kb-mobile{display:block}
.kb-mobile-group{margin-bottom:14px}
.kb-mobile-title{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.14em;
  color:#647871;text-transform:uppercase;margin:10px 0 6px}
.kb-light .kb-mobile-title{color:#8A8271}
.kb-cta-mobile{width:100%;margin-top:14px}

/* ===== Модальное окно заявки ===== */
.kb-modal{position:fixed;inset:0;z-index:900;display:none}
.kb-modal.is-open{display:block}
.kb-modal-backdrop{position:absolute;inset:0;background:rgba(11,15,14,0.7);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:kbFade .2s ease}
.kb-modal-card{position:relative;max-width:620px;margin:6vh auto 0;background:#FFFDF9;
  border:1px solid #E8E3D9;border-radius:24px;box-shadow:0 40px 90px rgba(30,27,20,0.35);
  animation:kbPop .2s ease;max-height:88vh;overflow:hidden}
@keyframes kbFade{from{opacity:0}to{opacity:1}}
@keyframes kbPop{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
.kb-modal-body{padding:38px;overflow-y:auto;max-height:88vh}
.kb-modal-close{position:absolute;top:14px;right:16px;width:34px;height:34px;border:none;
  background:transparent;font-size:26px;line-height:1;color:#8A8271;cursor:pointer;z-index:2}
.kb-modal-close:hover{color:#1E1B14}
.kb-corner{position:absolute;width:22px;height:22px;pointer-events:none}
.kb-corner-tr{top:14px;right:14px;border-top:1.5px solid rgba(12,143,107,0.5);border-right:1.5px solid rgba(12,143,107,0.5)}
.kb-corner-bl{bottom:14px;left:14px;border-bottom:1.5px solid rgba(12,143,107,0.5);border-left:1.5px solid rgba(12,143,107,0.5)}
.kb-modal-eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.14em;color:#0C8F6B;margin-bottom:14px}
.kb-modal-title{font-family:'Unbounded',sans-serif;font-weight:600;font-size:28px;color:#1E1B14;margin:0 0 12px;line-height:1.15}
.kb-modal-sub{font-size:14.5px;line-height:1.6;color:#6B6558;margin:0 0 26px}
.kb-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.kb-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.kb-field span{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.06em;color:#8A8271}
.kb-field input,.kb-field textarea{width:100%;box-sizing:border-box;min-height:46px;background:#fff;
  border:1px solid #E8E3D9;border-radius:10px;padding:12px 14px;color:#1E1B14;font-size:14px;
  outline:none;font-family:'Space Grotesk',sans-serif;transition:border-color .15s,box-shadow .15s}
.kb-field textarea{min-height:82px;resize:vertical}
.kb-field input:focus,.kb-field textarea:focus{border-color:#0C8F6B;box-shadow:0 0 0 3px rgba(12,143,107,0.12)}
.kb-consent{display:flex;align-items:flex-start;gap:10px;margin:4px 0 22px;cursor:pointer}
.kb-consent input{width:17px;height:17px;margin-top:2px;accent-color:#0C8F6B;flex-shrink:0}
.kb-consent span{font-size:12.5px;line-height:1.5;color:#6B6558}
.kb-consent a{color:#0C8F6B}
.kb-submit{width:100%;min-height:48px;font-family:'Space Grotesk',sans-serif;font-weight:600;
  font-size:15px;color:#FFFDF9;background:#0C8F6B;border:none;border-radius:11px;cursor:pointer;
  box-shadow:0 4px 18px rgba(12,143,107,0.3);transition:box-shadow .2s}
.kb-submit:hover{box-shadow:0 6px 26px rgba(12,143,107,0.45)}
.kb-sent{display:none;text-align:center;padding:26px 0 10px}
.kb-modal.is-sent .kb-form{display:none}
.kb-modal.is-sent .kb-sent{display:block}
.kb-sent-icon{width:60px;height:60px;margin:0 auto 18px;border-radius:50%;background:rgba(12,143,107,0.12);
  color:#0C8F6B;font-size:30px;display:flex;align-items:center;justify-content:center}
.kb-sent-title{font-family:'Unbounded',sans-serif;font-weight:600;font-size:20px;color:#1E1B14;margin-bottom:8px}
.kb-sent-text{font-size:14.5px;color:#6B6558}

/* ===== Адаптив шапки и модалки ===== */
@media (max-width:1024px){
  .kb-header-inner{padding:0 20px;gap:14px}
  .kb-nav{display:none}
  .kb-burger{display:flex}
  .kb-lang{display:none}
  /* Меню, которое отжимало правый блок к краю, здесь скрыто —
     прижимаем его сами, иначе бургер прилипает к логотипу. */
  .kb-right{margin-left:auto}
}
@media (max-width:600px){
  .kb-header-inner{padding:0 16px;gap:12px}
  .kb-brand-text{font-size:11.5px}
  .kb-cta{font-size:12.5px;padding:11px 14px}
  .kb-modal-card{margin:0;max-width:none;height:100%;max-height:100%;border-radius:0}
  .kb-modal-body{padding:26px 18px;max-height:100vh}
  .kb-grid2{grid-template-columns:1fr}
  .kb-modal-title{font-size:23px}
}

/* На узких экранах CTA прячем в мобильное меню — в шапке только бургер */
@media (max-width:560px){
  .kb-right > .kb-cta{display:none}
  .kb-header-inner{gap:10px}
  .kb-brand-text{font-size:11px;letter-spacing:0.02em}
  .kb-logo{width:30px;height:33px}
}


/* ===== ФИКС STICKY =====
   overflow-x:hidden на html/body или на любом предке шапки отключает
   position:sticky. Поэтому переполнение по горизонтали гасим на уровне
   секций, а предков шапки не трогаем. */
html, body { overflow-x: visible; }
section, footer { overflow-x: clip; }

