/* ============================================================
 * Connectica.ru — FIX STYLES (mobile menu + form fallback)
 * Injected by connectiva-fix.js companion CSS file.
 * Loaded after Bazium template CSS so we can override safely.
 * ============================================================ */

/* ---- Burger button (always present, hidden on desktop) ---- */
.page-header-23__burger{
  display:none;
  background:transparent;
  border:none;
  padding:6px;
  cursor:pointer;
  -webkit-appearance:none;
  align-self:center;
  margin-left:auto;
}
.page-header-23__burger svg{ display:block; width:28px; height:28px; }
.page-header-23__burger svg line,
.page-header-23__burger svg path{
  stroke:#222;
  fill:none;
  stroke-width:2;
  stroke-linecap:round;
}
.page-header-23__burger:hover svg line,
.page-header-23__burger:hover svg path{ stroke:#999; }

/* ---- Mobile side-nav panel (always in DOM, hidden off-canvas) ---- */
.page-header-23-side-nav.menu-toggle-1000{
  /* keep the Bazium base styles, but make sure the panel is visually correct
     even when no Angular is loaded. */
  background:#ffffff;
  color:#222222;
}
.page-header-23-side-nav.menu-toggle-1000 .page-header-23-side-nav__close-btn{
  background:transparent;
  border:none;
  padding:6px;
  cursor:pointer;
  -webkit-appearance:none;
}
.page-header-23-side-nav.menu-toggle-1000 .page-header-23-side-nav__close-btn svg{
  width:26px; height:26px;
}
.page-header-23-side-nav.menu-toggle-1000 ul.cnx-mobile-menu{
  list-style:none;
  margin:0;
  padding:0;
}
.page-header-23-side-nav.menu-toggle-1000 .cnx-mobile-menu__link{
  display:block;
  padding:16px 4px;
  text-decoration:none;
  color:#222;
  font-family:"Montserrat",sans-serif;
  font-weight:500;
  font-size:20px;
  line-height:1.25;
  border-bottom:1px solid #e8e8e8;
}
.page-header-23-side-nav.menu-toggle-1000 .cnx-mobile-menu__link:hover{ color:#ff4800; }
.page-header-23-side-nav.menu-toggle-1000 .cnx-mobile-messengers{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid #e8e8e8;
}
.page-header-23-side-nav.menu-toggle-1000 .cnx-mobile-messengers a{
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
.page-header-23-side-nav.menu-toggle-1000 .cnx-mobile-messengers svg{
  width:34px; height:34px;
  fill:#222;
}
.page-header-23-side-nav.menu-toggle-1000 .cnx-mobile-messengers a:hover svg{
  fill:#ff4800;
}

/* Overlay behind the side-nav panel */
.cnx-side-nav__overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.45);
  z-index:899;
  opacity:0;
  pointer-events:none;
  transition:opacity .35s ease;
}
.cnx-side-nav__overlay.is-active{
  opacity:1;
  pointer-events:auto;
}
.page-header-23-side-nav.menu-toggle-1000.is-active{
  transform:translate3d(100%, 0, 0) !important;
  visibility:visible;
}

/* ---- Responsive: show burger, hide desktop nav+controls, on narrow screens ---- */
@media (max-width: 1000px){
  body:not(.bazium-no-resp) .page-header-23__burger{ display:block; }
  body:not(.bazium-no-resp) .page-header-23__nav{ display:none !important; }
  body:not(.bazium-no-resp) .page-header-23__controls{ display:none !important; }
}

/* ---- Forms fallback styling (when Angular didn't bootstrap) ---- */
form.form[data-cnx-enhanced] .form__item{
  margin-bottom:12px;
}
form.form[data-cnx-enhanced] .text-input{
  width:100%;
  padding:12px 14px;
  border:1px solid #e8e8e8;
  border-radius:8px;
  font-size:16px;
  font-family:"Open Sans",sans-serif;
  box-sizing:border-box;
  background:#fff;
  color:#222;
}
form.form[data-cnx-enhanced] .text-input:focus{
  outline:none;
  border-color:#ff4800;
  box-shadow:0 0 0 2px rgba(255,72,0,.15);
}
form.form[data-cnx-enhanced] .text-input_error{
  border-color:#e74c3c !important;
  background:#fff5f5;
}
form.form[data-cnx-enhanced] .form__input-error{
  color:#e74c3c;
  font-size:13px;
  margin-top:6px;
  font-family:"Open Sans",sans-serif;
}
form.form[data-cnx-enhanced] .form__submit{
  margin-top:8px;
}
form.form[data-cnx-enhanced] .form__status{
  margin-top:14px;
  padding:12px 14px;
  border-radius:8px;
  font-family:"Open Sans",sans-serif;
  font-size:14px;
  line-height:1.5;
  display:none;
}
form.form[data-cnx-enhanced] .form__status.is-success{
  display:block;
  background:#e8f7ee;
  color:#1d7e3e;
  border:1px solid #b6e2c4;
}
form.form[data-cnx-enhanced] .form__status.is-error{
  display:block;
  background:#fdecea;
  color:#c0392b;
  border:1px solid #f5b7b1;
}
form.form[data-cnx-enhanced] .form__submit-btn{
  cursor:pointer;
}
form.form[data-cnx-enhanced] .form__submit-btn[disabled]{
  opacity:.6;
  cursor:progress;
}
/* honeypot field — must be invisible to humans, visible to bots */
form.form[data-cnx-enhanced] .cnx-honeypot{
  position:absolute !important;
  left:-9999px !important;
  top:auto !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  tab-index:-1 !important;
}
