/* ====== (1) Общие мелкие правки под макет ====== */
    :root{
      --ml-blue-900:#0b2b52;
      --ml-blue-700:#0f3b73;
      --ml-blue-600:#165aa6;
      --ml-blue-500:#1f6fd1;
      --ml-gray-50:#f6f8fb;
    }
    body{ background: var(--ml-gray-50); }
 
    #header .navbar{
      transition: padding .22s ease, min-height .22s ease;
    }
    #header .navbar-brand img{
      transition: transform .22s ease, width .22s ease, height .22s ease;
      transform-origin: left center;
    }
    #header .nav-link,
    #header .navbar-brand span{
      transition: font-size .22s ease, padding .22s ease, margin .22s ease;
    }

    /* shrink: padding */
    body.header-is-sticky #header .navbar,
    body.is-header-sticky #header .navbar,
    #header.is-sticky .navbar,
    #header.header-is-sticky .navbar,
    #header.is-header-sticky .navbar{
      padding-top: .25rem !important;
      padding-bottom: .25rem !important;
    }

    /* shrink: logo */
    body.header-is-sticky #header .navbar-brand img,
    body.is-header-sticky #header .navbar-brand img,
    #header.is-sticky .navbar-brand img,
    #header.header-is-sticky .navbar-brand img,
    #header.is-header-sticky .navbar-brand img{
      transform: scale(.88);
    }

    /* shrink: links */
    body.header-is-sticky #header .nav-link,
    body.is-header-sticky #header .nav-link,
    #header.is-sticky .nav-link,
    #header.header-is-sticky .nav-link,
    #header.is-header-sticky .nav-link{
      padding-top: .35rem !important;
      padding-bottom: .35rem !important;
      font-size: .95rem;
    }

    /* ====== (2) HERO ====== */
    .ml-hero {
      position: relative;
      min-height: 820px;
      overflow: hidden;
      border-bottom: 1px solid rgba(12, 40, 78, .08);
      background: linear-gradient( 270deg, rgba(11, 43, 82, 0.17) 0%, rgba(31,111,209,.25) 55%, rgba(255,255,255,.05) 100% ) ;
        background-position: 20%;
background-repeat: no-repeat;
background-size: cover;
    }

    .ml-hero::after{
      content:"";
      position:absolute; inset:0;
      background: radial-gradient(900px 500px at 80% 30%, rgba(255,255,255,.20), rgba(255,255,255,0) 60%);
      pointer-events:none;
    }
    .ml-hero .container{ position: relative; z-index: 2; }

    .ml-hero-panel{
      background: rgba(255,255,255,.92);
      border: 1px solid rgba(15, 59, 115, .10);
      border-radius: 14px;
      box-shadow: 0 14px 35px rgba(15, 59, 115, .18);
      padding: 22px 22px;
      max-width: 520px;
      margin-left: auto;
    }
    .ml-hero h1, .ml-hero p { color: #0f3b73;}
    .checklist{
      list-style:none;
      padding:0; margin:0 0 16px 0;
      color:#233a56;
    }
    .checklist li{
      display:flex; gap:10px; align-items:flex-start;
      padding:6px 0;
      font-size:15px;
    }
    .check{
      width:18px; height:18px;
      border-radius:50%;
      background:rgba(11,94,215,.12);
      display:inline-flex; align-items:center; justify-content:center;
      margin-top:2px;
      flex:0 0 auto;
      color:var(--ml-blue-600);
      font-weight:900;
      line-height: 1;
    }

    /* ====== (3) Карточки услуг ====== */
    .ml-service-card{
      background:#fff;
      border:1px solid rgba(15,59,115,.10);
      border-radius: 14px;
      box-shadow: 0 10px 24px rgba(15, 59, 115, .08);
      height: 100%;
    }
    .ml-service-icon{
      width: 44px; height: 44px;
      border-radius: 12px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(31,111,209,.10);
      color: var(--ml-blue-600);
      flex: 0 0 auto;
    }

    /* ====== (4) Врачи ====== */
    .ml-section-title{
      font-weight: 800;
      color: var(--ml-blue-700);
    }
    .ml-doctor-card{
      background:#fff;
      border:1px solid rgba(15,59,115,.10);
      border-radius: 14px;
      overflow:hidden;
      height: 100%;
      box-shadow: 0 12px 26px rgba(15, 59, 115, .08);
    }
    .ml-doctor-photo{
      height: 210px;
      background: #e9eef7 url('<?= $nc_parent_template_folder_path; ?>/assets/images/demo/clinic/doctor-1.jpg') center/cover no-repeat;
    }
    .ml-doctor-photo.p2{ background-image:url('/assets/images/demo/clinic/doctor-2.jpg'); }
    .ml-doctor-photo.p3{ background-image:url('/assets/images/demo/clinic/doctor-3.jpg'); }
    .ml-doctor-photo.p4{ background-image:url('/assets/images/demo/clinic/doctor-4.jpg'); }

    /* ====== (5) Footer ====== */
    .ml-footer{
      background:#fff;
      border-top:1px solid rgba(15,59,115,.10);
    }
    .ml-footer a{ text-decoration:none; }
    .ml-footer a:hover{ text-decoration:underline; }

    /* ====== (H) Header phone: чтобы не "уезжал" в collapse на мобильных ====== */
    .ml-header-phone a{ text-decoration:none; }

    .btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #4a73a8;
  --bs-btn-border-color: #4a73a8;
    }
.btn:hover {
  background-color: #355175;
  border-color: #355175;
  color: var(--bs-btn-hover-color);
}

@keyframes ma-bg-move {
  0%   { background-position: -500px 0; }
  50%  { background-position: 1000px 0; }
  100% { background-position: 1000px 0; }
}

.my-btn {
  background-color: #4a73a8;
  background-image: linear-gradient(270deg, transparent 30%, #6b95d0, transparent 100%);
  background-repeat: no-repeat;
  animation: ma-bg-move 4.6s linear infinite;
  color: #fff;
}

#js_header_spacer {
    display: none;
    height: 104px;
}

/* показываем только на md и выше */
@media (min-width: 768px) {
    #js_header_spacer {
        display: block;
    }
    .ml-hero {
    background-position: top;
}
}



.ml-doctor-photo {
  height: 340px;
}



.modal-content {
    border: none;
    position: relative;
    overflow: visible !important; /* Важно! */
} 
.btn-close-custom {
    position: absolute !important;
    top: -10px !important;
    right: -10px !important;
    background: #dbdbdb !important;
    border: 0 !important;
    border-radius: .35rem !important;
    box-sizing: content-box !important;
    height: 2em !important;
    padding: .25em !important;
    width: 2em !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #000 !important;
    z-index: 99999 !important; /* Выше лоадера */
    pointer-events: auto !important;
}

.btn-close-custom:hover {
    background: #c6c6c6 !important;
}

.btn-close-custom svg {
    pointer-events: none !important;
    width: 1em !important;
    height: 1em !important;
}
 
