
/* Изолированная навигация страниц услуг */
.header.svc-header { position:relative; flex-wrap:wrap; }
.svc-header > .brand { flex-shrink:0; }
.svc-header > .back-link { order:3; flex-shrink:0; }
.svc-nav { order:2; display:flex; flex:1 1 auto; align-items:center; justify-content:center; gap:clamp(16px,2.2vw,36px); }
.svc-nav a, .svc-nav button { display:inline-flex; align-items:center; min-height:44px; padding:0; border:0; background:transparent; color:rgba(255,255,255,.85); font:inherit; font-size:15px; line-height:1.4; text-decoration:none; white-space:nowrap; cursor:pointer; }
.svc-nav a:hover, .svc-nav button:hover { color:#7cc7ff; }
.svc-menu-toggle { display:none; }
.svc-nav a:focus-visible, .svc-nav button:focus-visible, .svc-menu-toggle:focus-visible, .svc-modal a:focus-visible, .svc-modal button:focus-visible { outline:2px solid #7cc7ff; outline-offset:4px; }

/* Окно общих контактов */
.svc-modal, .svc-modal * { box-sizing:border-box; }
.svc-modal[hidden] { display:none; }
.svc-modal { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; padding:20px; color:#e7f5ff; }
.svc-modal-backdrop { position:absolute; inset:0; background:rgba(3,6,14,.75); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); }
.svc-modal-card { position:relative; width:min(100%,520px); max-height:calc(100vh - 40px); max-height:calc(100dvh - 40px); overflow-y:auto; overscroll-behavior:contain; padding:32px 32px 26px; border:1px solid rgba(74,163,255,.35); border-radius:24px; background:linear-gradient(180deg,#121c34,#0a101e); box-shadow:0 20px 60px rgba(0,0,0,.5); }
.svc-modal-close { position:absolute; top:16px; right:16px; display:grid; place-items:center; width:36px; height:36px; padding:0; border:1px solid rgba(74,163,255,.2); border-radius:50%; background:rgba(74,163,255,.08); color:#dbefff; cursor:pointer; }
.svc-modal-badge { display:inline-block; margin:0 40px 14px 0; padding:5px 13px; border:1px solid rgba(74,163,255,.35); border-radius:999px; color:#7cc7ff; font-size:12px; }
.svc-modal-title { margin:0 0 10px; color:#fff; font-size:28px; line-height:1.15; }
.svc-modal-desc { margin:0 0 24px; color:#aabbd0; font-size:14px; line-height:1.5; }
.svc-contact-list { display:flex; flex-direction:column; gap:12px; margin-bottom:20px; }
.svc-contact-row { display:flex; align-items:center; gap:14px; padding:16px; border:1px solid rgba(74,163,255,.15); border-radius:16px; background:rgba(74,163,255,.05); color:#e7f5ff; text-decoration:none; }
a.svc-contact-row:hover { border-color:#7cc7ff; background:rgba(74,163,255,.12); }
.svc-contact-icon { display:grid; place-items:center; flex-shrink:0; width:40px; height:40px; border-radius:10px; background:rgba(74,163,255,.1); color:#7cc7ff; }
.svc-contact-body { display:flex; flex:1; min-width:0; flex-direction:column; gap:4px; }
.svc-contact-label { color:#95a6bd; font-size:11px; text-transform:uppercase; }
.svc-contact-value { color:#fff; font-size:16px; font-weight:600; overflow-wrap:anywhere; }
.svc-contact-value-address { font-size:13px; font-weight:400; line-height:1.5; }
.svc-contact-arrow { flex-shrink:0; color:#aabbd0; }
.svc-contact-map { height:280px; margin-bottom:20px; overflow:hidden; border:1px solid rgba(74,163,255,.22); border-radius:16px; }
.svc-contact-map iframe { display:block; width:100%; height:100%; border:0; }
.svc-modal-meta { display:flex; flex-wrap:wrap; gap:12px; padding-top:18px; border-top:1px solid rgba(74,163,255,.15); color:#aabbd0; font-size:12px; }
.svc-modal-meta b { color:#7cc7ff; }
body.svc-modal-open { overflow:hidden; }

/* Планшеты и мобильное меню */
@media (max-width:1100px) {
  .header.svc-header { gap:12px; padding:16px 0; }
  .svc-header > .brand { margin-right:auto; }
  .svc-header > .back-link { order:2; }
  .svc-nav { order:4; flex:0 0 100%; flex-direction:column; align-items:stretch; gap:0; padding:10px; border:1px solid rgba(74,163,255,.25); border-radius:16px; background:#0c1629; }
  .svc-nav a, .svc-nav button { width:100%; min-height:46px; padding:10px 14px; text-align:left; }
  .svc-header.svc-ready .svc-nav:not(.svc-is-open) { display:none; }
  .svc-header.svc-ready .svc-menu-toggle { order:3; display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 13px; border:1px solid rgba(74,163,255,.35); border-radius:12px; background:rgba(13,25,47,.8); color:#e9f5ff; font:inherit; font-size:14px; cursor:pointer; }
}
@media (max-width:620px) {
  .svc-header > .brand { flex:1 1 calc(100% - 110px); min-width:0; }
  .svc-header > .back-link { order:4; margin-bottom:2px; }
  .svc-nav { order:5; }
  .svc-modal { padding:12px; }
  .svc-modal-card { max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); padding:26px 18px 22px; }
  .svc-modal-title { font-size:24px; }
  .svc-contact-row { gap:10px; padding:12px; }
  .svc-contact-value { font-size:15px; }
  .svc-contact-value-address { font-size:12px; }
  .svc-contact-map { height:230px; }
}
