/* ── Skip link ── */
.skip-link {
  position: absolute;
  top: -100%;
  left: var(--spacing-16);
  z-index: var(--z-toast);
  padding: var(--spacing-8) var(--spacing-16);
  background: var(--color-brand-primary);
  color: var(--white);
  font-weight: 500;
  border-radius: var(--border-radius-8);
  text-decoration: none;
  transition: top 0.2s;
}
.skip-link:focus { top: var(--spacing-16); }

/* Visually hidden — для screen readers */
.visually-hidden,
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ── Highlighted (alerts) ── */
.asp-highlighted {
  background: var(--color-bg-info);
  border-bottom: var(--border-width-1) solid var(--color-border-info);
}
.asp-highlighted .container { padding-block: var(--spacing-12); }

/* ── Main ── */
.asp-main { outline: none; }

.asp-content{
width: 100%;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: var(--spacing-8);
}

.asp-content > div, #block-aspgovmd-serviciulsuport{width: 100%;}

.asp-content-top,
.asp-content-bottom {padding-block: var(--spacing-24);}

.asp-section-electronic > .container{
display: flex;
flex-direction: column;
align-items: center;
gap: var(--spacing-32);
align-self: stretch;
}

.asp-section-electronic > .container > div {width: 100%;}

/* ── Content wrap ── */
.asp-content-wrap {
  background: var(--white);
}

/* ── Layout variants ── */
.asp-layout {
  display: grid;
  gap: var(--spacing-0);
}

/* Одна колонка */
.asp-layout--full {
  grid-template-columns: minmax(0, 1fr);
}

/* Сайдбар слева */
.asp-layout--sidebar-first {
  grid-template-columns: 426px minmax(0, 1fr);
}

/* Сайдбар справа */
.asp-layout--sidebar-second {
  grid-template-columns: minmax(0, 1fr) 426px;
}
.asp-sidebar.asp-sidebar--second{padding-left: 42px;}

/* Два сайдбара */
.asp-layout--three-col {
  grid-template-columns: 240px minmax(0, 1fr) 240px;
}

/* ── Sidebar ── */
.asp-sidebar {
  max-width: 100%;
  min-width: 0;
}

.error-404-wrapper {min-height: calc(100vh - 600px); padding: 40px 20px;}
.error-404-content {max-width: 520px;}
.error-404-text {font-size:18px;}
.error-404-code {font-size: 16px;}
.error-404-btn {padding: 10px 24px;}
.error-404-link {text-decoration: underline;}


/* Левый сайдбар — sticky только если помещается в экран (класс ставит JS) */
@media (min-width: 992px) {
  .asp-sidebar--first {
    align-self: start;
  }

  .asp-sidebar--first.asp-sidebar--can-sticky {
    position: sticky;
    top: calc(var(--header-total-height) + var(--spacing-16));
  }
}

/* ── isSectionGray ── */
.isSectionGray {
  background: var(--gray-100);
}

/* ── Text helpers ── */
.text-center { text-align: center; }
.mb-4 { margin-bottom: var(--spacing-16); }
.mb-5 { margin-bottom: var(--spacing-20); }
.mt-5 { margin-top: var(--spacing-20); }
.d-flex { display: flex; }
.justify-content-center { justify-content: center; }


.views-element-container{width: 100%}
.node--uslugi.node--full{margin-top: -20px;}

.gm-style-iw .gm-style-iw-chr{position: absolute!important; right: 2px!important; top: 2px!important;}
.gm-style-iw .gm-style-iw-chr .gm-style-iw-ch{display: none!important;}
.gm-style-iw .gm-style-iw-chr button{ width: 30px!important; height: 30px!important;}
.gm-style-iw .gm-style-iw-chr button > span{margin: 3px!important;}
.gm-style-iw .gm-style-iw-d{overflow: hidden; margin-right: 32px; padding: 10px 0 0!important;}

@media (max-width: 1200px) {
.asp-layout--sidebar-first{ grid-template-columns: 360px minmax(0, 1fr);}
}

/* ── Responsive ── */
@media (max-width: 991px) {
  .asp-layout--sidebar-first,
  .asp-layout--sidebar-second,
  .asp-layout--three-col {grid-template-columns: minmax(0, 1fr);}
  .asp-sidebar--first,
  .asp-sidebar--first .asp-sidebar-region,
  .asp-sidebar--first .asp-sidebar-region > div { width: 100%; }
  /* Левый сайдбар — над контентом (dropdown / гамбургер) */
  .asp-sidebar--first  { order: -1; }
  .asp-sidebar--second { order: 3; }
  .asp-sidebar--first .asp-sidebar-first-menu {
    max-width: inherit;
  }
  .asp-sidebar.asp-sidebar--second { padding-left: 0; }
  .asp-content-wrap.section{padding-block: var(--spacing-24);}
}
