nav a.active, nav a:hover {
      color: var(--primary);
    }

/* Заголовок страницы Контакты */
    .page-hero {
      text-align: center;
      padding: 24px 0 36px;
    }

.hero-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 16px;
      background: rgba(255, 255, 255, 0.85);
      border: 1px solid var(--glass-border);
      border-radius: var(--radius-pill);
      font-size: 13px;
      font-weight: 700;
      color: var(--primary);
      box-shadow: 0 4px 12px rgba(0, 98, 243, 0.05);
      margin-bottom: 16px;
    }

.page-hero h1 {
      font-size: 46px;
      font-weight: 800;
      letter-spacing: -1px;
      margin-bottom: 12px;
    }

.page-hero h1 span {
      color: var(--primary);
    }

.page-hero p {
      font-size: 17px;
      color: var(--text-muted);
      max-width: 600px;
      margin: 0 auto;
    }

/* Сетка контактов */
    .contacts-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      margin-bottom: 32px;
    }

.contact-card {
      background: var(--glass-bg);
      backdrop-filter: blur(16px);
      border: 1px solid var(--glass-border);
      border-radius: var(--radius-2xl);
      padding: 30px;
      box-shadow: var(--glass-shadow);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      transition: transform 0.2s, border-color 0.2s;
    }

.contact-card:hover {
      transform: translateY(-4px);
      border-color: rgba(0, 98, 243, 0.3);
    }

.card-icon {
      width: 50px;
      height: 50px;
      background: white;
      border-radius: 14px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 22px;
      color: var(--primary);
      box-shadow: 0 4px 12px rgba(0, 98, 243, 0.08);
      margin-bottom: 20px;
    }

.contact-card h3 {
      font-size: 20px;
      font-weight: 700;
      margin-bottom: 10px;
    }

.contact-card p {
      color: var(--text-muted);
      font-size: 15px;
      margin-bottom: 16px;
      line-height: 1.5;
    }

.contact-link {
      color: var(--primary);
      text-decoration: none;
      font-weight: 700;
      font-size: 17px;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }

.contact-link:hover {
      text-decoration: underline;
    }

/* Блок мессенджеров */
    .messengers-block {
      background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(235, 245, 255, 0.9) 100%);
      backdrop-filter: blur(16px);
      border: 1px solid var(--glass-border);
      border-radius: var(--radius-2xl);
      padding: 36px 40px;
      box-shadow: var(--glass-shadow);
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 24px;
      margin-bottom: 32px;
    }

.messengers-text h3 {
      font-size: 24px;
      font-weight: 800;
      margin-bottom: 6px;
    }

.messengers-text p {
      color: var(--text-muted);
      font-size: 15px;
    }

.messengers-buttons {
      display: flex;
      align-items: center;
      gap: 14px;
      flex-wrap: wrap;
    }

.qr-grid {
      display: flex;
      align-items: stretch;
      gap: 18px;
      flex-wrap: wrap;
    }

.qr-card {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
      padding: 16px;
      background: #fff;
      border: 1px solid var(--glass-border);
      border-radius: var(--radius-xl);
      text-decoration: none;
      box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
      transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
    }

.qr-card img {
      width: 140px;
      height: 140px;
      display: block;
    }

.qr-label {
      font-weight: 700;
      font-size: 14px;
      padding: 4px 14px;
      border-radius: var(--radius-pill);
      color: #fff;
    }

.qr-telegram .qr-label { background: #229ED9; }
.qr-instagram .qr-label { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }

.qr-telegram:hover { border-color: rgba(34, 158, 217, 0.5); }
.qr-instagram:hover { border-color: rgba(220, 39, 67, 0.5); }

.qr-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14);
    }

.messenger-btn {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      padding: 14px 24px;
      border-radius: var(--radius-pill);
      text-decoration: none;
      font-weight: 700;
      font-size: 15px;
      color: white;
      transition: all 0.25s ease;
      box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
    }

.btn-telegram {
      background: #229ED9;
    }

.btn-telegram:hover {
      background: #1e8cc0;
      transform: translateY(-2px);
      box-shadow: 0 8px 20px rgba(34, 158, 217, 0.35);
    }

.btn-instagram {
      background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    }

.btn-instagram:hover {
      background: linear-gradient(45deg, #d8822b 0%, #cf5b33 25%, #c62039 50%, #b71e5a 75%, #a51477 100%);
      transform: translateY(-2px);
      box-shadow: 0 8px 20px rgba(220, 39, 67, 0.35);
    }

.msg-icon {
      width: 22px;
      height: 22px;
      fill: currentColor;
    }

/* Блок Карты */
    .map-wrapper {
      background: var(--glass-bg);
      backdrop-filter: blur(16px);
      border: 1px solid var(--glass-border);
      border-radius: var(--radius-2xl);
      padding: 24px;
      box-shadow: var(--glass-shadow);
      margin-bottom: 60px;
    }

.map-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 18px;
      flex-wrap: wrap;
      gap: 12px;
    }

.map-header h3 {
      font-size: 22px;
      font-weight: 800;
    }

.btn-route {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: var(--primary);
      color: white;
      text-decoration: none;
      padding: 10px 20px;
      border-radius: var(--radius-pill);
      font-size: 14px;
      font-weight: 700;
      transition: background 0.2s;
    }

.btn-route:hover {
      background: var(--primary-hover);
    }

.map-frame-box {
      border-radius: var(--radius-xl);
      overflow: hidden;
      height: 420px;
      width: 100%;
      border: 1px solid rgba(0, 98, 243, 0.1);
    }

.map-frame-box iframe {
      width: 100%;
      height: 100%;
      border: 0;
    }

.m-tg {
      background: #229ED9;
      color: white;
    }

/* Адаптивность под экраны */
    @media (max-width: 900px) {
      .contacts-grid {
        grid-template-columns: 1fr;
      }
      .footer-grid {
        grid-template-columns: 1fr;
      }
      .messengers-block {
        flex-direction: column;
        align-items: flex-start;
      }
      .qr-grid {
        justify-content: center;
        width: 100%;
      }
    }

@media (max-width: 768px) {
      .page-hero h1 { font-size: 32px; }
      .mobile-bar { display: flex; }
      body { padding-bottom: 70px; }
      .cookie-card {
        left: 16px;
        right: 16px;
        bottom: 80px;
        max-width: none;
      }
    }