/* =============================================
   Dizpoz — Responsive Stylesheet
   Mobile-first breakpoints
   ============================================= */

/* ── 2XL: 1400px+ ─────────────────────────── */
@media (min-width: 1400px) {
    .hero-content h1 {
        font-size: 62px;
    }
}

/* ── LG breakpoint ≤ 1199px ───────────────── */
@media (max-width: 1199px) {
    h1, .hero-content h1 { font-size: 44px; }
    h2 { font-size: 38px; }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .industries-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .values-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-inner {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

    .stat-callout .stat-number {
        font-size: 56px;
    }
}

/* ── MD breakpoint ≤ 991px ─────────────────── */
@media (max-width: 991px) {
    .section-pad {
        padding: 72px 0;
    }

    /* Header nav hidden on tablet/mobile */
    .header-nav {
        display: none;
    }

    .hamburger {
        display: flex;
    }

    .site-header .navbar-brand img {
        height: 44px;
    }

    /* Hero */
    .hero {
        padding: 64px 0 56px;
    }

    .hero-content {
        max-width: 100%;
        margin-bottom: 40px;
    }

    /* Steps connector line */
    .steps-row::before {
        display: none;
    }

    .steps-row {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        margin-top: 32px;
    }

    .step-item {
        display: flex;
        align-items: flex-start;
        gap: 24px;
        text-align: left;
        padding: 24px 0;
        border-bottom: 1px solid #e2e8d8;
    }

    .step-item:last-child {
        border-bottom: none;
    }

    .step-number {
        margin: 0;
        flex-shrink: 0;
        width: 60px;
        height: 60px;
    }

    /* Services */
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Industries */
    .industries-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Benefits */
    .benefits-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    /* Quote form */
    .quote-form-wrapper {
        padding: 40px 32px;
    }

    /* About story */
    .about-story {
        grid-template-columns: 1fr;
        gap: 48px;
        padding: 72px 0;
    }

    .about-story-img img {
        height: 320px;
    }

    /* Service detail */
    .service-detail-inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .service-detail:nth-child(even) .service-detail-inner {
        direction: ltr;
    }

    .service-detail-visual {
        height: 260px;
    }

    /* Industry section */
    .industry-section-inner {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    /* Contact grid */
    .contact-info-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    /* Footer */
    .footer-inner {
        grid-template-columns: 1fr 1fr;
        gap: 36px;
    }

    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ── SM breakpoint ≤ 767px ─────────────────── */
@media (max-width: 767px) {
    h1, .hero-content h1 { font-size: 36px; }
    h2 { font-size: 30px; }
    h3 { font-size: 24px; }

    .section-pad {
        padding: 56px 0;
    }

    /* Header */
    .site-header {
        padding: 16px 0;
    }

    .site-header .navbar-brand img {
        height: 38px;
    }

    /* Hero */
    .hero {
        padding: 48px 0;
    }

    .hero-actions {
        flex-direction: column;
        align-items: flex-start;
    }

    .hero-actions .btn {
        width: 100%;
    }

    /* Services */
    .services-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    /* Industries */
    .industries-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    /* Values */
    .values-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    /* Stat callout */
    .stat-callout {
        flex-direction: column;
        align-items: flex-start;
        padding: 28px 32px;
        gap: 8px;
    }

    .stat-callout .stat-number {
        font-size: 56px;
    }

    /* Quote form */
    .quote-form-wrapper {
        padding: 28px 20px;
    }

    .form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .form-submit {
        justify-content: stretch;
    }

    .form-submit .btn {
        width: 100%;
    }

    /* Page hero */
    .page-hero {
        padding: 48px 0;
    }

    .page-hero h1 {
        font-size: 32px;
    }

    /* CTA banner */
    .cta-banner {
        padding: 56px 0;
    }

    /* Footer */
    .footer-inner {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .footer-legal-links {
        flex-wrap: wrap;
        gap: 12px 20px;
    }

    /* Sister banner */
    .sister-banner .sister-inner {
        flex-direction: column;
        gap: 8px;
    }

    /* Section title */
    .section-title {
        margin-bottom: 36px;
    }

    .section-title p {
        font-size: 16px;
    }
}

/* ── XS: ≤ 480px ────────────────────────────── */
@media (max-width: 480px) {
    h1, .hero-content h1 { font-size: 30px; }

    .btn {
        min-width: 140px;
        font-size: 14px;
    }

    .btn-lg {
        min-width: 100%;
        height: 52px;
    }

    .stat-callout .stat-number {
        font-size: 48px;
    }

    .service-card, .industry-card {
        padding: 28px 20px;
    }
}
