@media (max-width: 1200px) {
  .hero-grid { grid-template-columns: .86fr 1.14fr; }
  .hero-card-main { left: 142px; }
  .hero-card-top { right: 4px; }
  .hero-card-bottom { right: 0; }
  .brand-card { padding-left: 40px; padding-right: 40px; }
}

@media (max-width: 992px) {
  .container { width: min(100% - 48px, 920px); }
  .main-nav { gap: 24px; }
  .hero { padding-top: 46px; }
  .hero-grid, .about-grid, .network-grid, .contact-grid, .contact-page-grid { grid-template-columns: 1fr; }
  .hero-graphic { height: 430px; max-width: 680px; width: 100%; margin: 0 auto; }
  .stats-grid, .services-grid { grid-template-columns: repeat(2, 1fr); gap: 20px 0; }
  .stat:nth-child(odd), .service-card:nth-child(odd) { border-left: 0; }
  .brand-grid { grid-template-columns: 1fr; max-width: 620px; }
  .network-map { flex-wrap: wrap; justify-content: flex-start; }
  .network-map::before { display: none; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  .container { width: min(100% - 40px, 700px); }
  .nav-shell { min-height: 70px; }
  .brand-mark img { width: 145px; }
  .menu-toggle {
    width: 42px;
    height: 42px;
    display: grid;
    place-content: center;
    gap: 5px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
  }
  .menu-toggle span { width: 20px; height: 2px; background: var(--navy); transition: .2s ease; }
  .main-nav {
    position: fixed;
    inset: 70px 0 auto 0;
    display: grid;
    gap: 0;
    padding: 16px 20px 24px;
    background: #fff;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 24px 40px rgba(8,24,46,.08);
    transform: translateY(-120%);
    transition: transform .22s ease;
  }
  .main-nav.open { transform: translateY(0); }
  .main-nav a { padding: 15px 0; border-bottom: 1px solid var(--line); }
  .main-nav a::after { display: none; }
  .hero-copy h1 { font-size: 48px; }
  .hero-subtitle { font-size: 24px; }
  .hero-description { max-width: none; }
  .hero-graphic { height: 340px; transform: scale(.9); transform-origin: top center; }
  .hero-card-main { width: 190px; height: 190px; left: 115px; top: 136px; }
  .hero-card-main img { width: 86px; }
  .hero-card-top, .hero-card-bottom { width: 230px; height: 118px; border-radius: 22px; }
  .hero-card-top { right: 26px; top: 36px; }
  .hero-card-bottom { right: 14px; bottom: 34px; }
  .hero-card-top .logo-text, .hero-card-bottom .logo-text { font-size: 24px; }
  .about-strip, .content-sections, .contact-page, .page-list { padding: 56px 0; }
  .section-copy h2, .section-heading h2, .contact-strip h2, .network-copy h2, .page-hero h1 { font-size: 34px; }
  .content-grid, .stats-grid, .services-grid { grid-template-columns: 1fr; }
  .stat, .service-card { border-left: 0; border-top: 1px solid var(--line); padding: 22px 0; }
  .stat:first-child, .service-card:first-child { border-top: 0; }
  .brand-card { padding: 0 0 26px; }
  .brand-card p, .brand-card .btn { margin-left: 22px; margin-right: 22px; }
  .services-section { padding-bottom: 48px; }
  .network-map { display: grid; gap: 14px; justify-content: stretch; }
  .network-node, .center-node { width: 100%; min-height: 98px; margin: 0 auto; }
  .network-node::before { display: none; }
  .order-card { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; gap: 24px; }
  .footer-column { padding-left: 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.18); padding-top: 18px; }
}

@media (max-width: 480px) {
  .container { width: min(100% - 36px, 440px); }
  .hero { min-height: auto; padding-bottom: 16px; }
  .hero-copy h1 { font-size: 46px; }
  .hero-subtitle { font-size: 22px; }
  .btn { width: 100%; gap: 18px; padding: 0 18px; }
  .hero-graphic { height: 310px; transform: scale(.78); margin-bottom: -46px; }
  .hero-card-main { left: 92px; }
  .hero-card-top { right: 0; }
  .hero-card-bottom { right: 0; }
  .brand-identity { min-height: 104px; }
  .brand-identity .logo-text { font-size: 27px; }
  .contact-list p, .company-data p { grid-template-columns: 28px 1fr; }
  .page-hero { padding: 60px 0 44px; }
  .content-grid article, .contact-panel, .contact-form { padding: 24px; }
  .back-to-top { right: 18px; bottom: 18px; width: 42px; height: 42px; }
}
