/* ================= RESPONSIVE ================= */
@media (max-width: 1199px) {
    .main-nav { display: none; }
    .menu-toggle { display: inline-flex; }
    .portfolio-grid { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 991px) {
    section { padding: 70px 0; }
    .hero h1 { font-size: 44px; }
    .hero { background: linear-gradient(rgba(0,35,72,.9), rgba(0,35,72,.9)), url('../images/about-writing.jpg') center / cover no-repeat; }
    .simple-steps, .services-grid, .testimonial-grid { grid-template-columns: 1fr 1fr; }
    .footer-row { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 767px) {
    body { font-size: 18px; padding-bottom: 84px; }
    section { padding: 56px 0; }
    .container-th { width: 92%; }
    .top-strip { font-size: 17px; }
    .header-row { min-height: 76px; gap: 12px; }
    .header-call { display: none; }
    .logo-mark { width: 44px; height: 44px; }
    .logo-text strong { font-size: 22px; }
    .logo-text small { font-size: 12px; }
    .hero { padding: 40px 0; }
    .hero h1 { font-size: 36px; }
    .lead-text { font-size: 20px; }
    .section-head h2, .about h2, .contact h2 { font-size: 32px; }
    .btn-big { width: 100%; font-size: 20px; }
    .simple-steps, .services-grid, .testimonial-grid { grid-template-columns: 1fr; }
    .portfolio-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .stores li { height: 56px; padding: 8px 14px; }
    .stores img { height: 28px; }
    .phone-box strong { font-size: 27px; }
    .form-card { padding: 28px 20px; }
    .footer-row { grid-template-columns: 1fr; gap: 28px; }
    .main-copyright { flex-direction: column; }

    .mobile-bar { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 950; background: #fff; border-top: 2px solid var(--line); padding: 8px 8px calc(8px + env(safe-area-inset-bottom)); }
    .mobile-bar a { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 60px; border-radius: 10px; font-weight: 800; font-size: 19px; text-decoration: none; }
    .mb-call { background: var(--navy); color: #fff; }
    .mb-msg { background: var(--yellow); color: #111; }
}
