/* ═══════════════════════════════════════════════════════════════════════════
   RGB Business Way — Mobile-First Responsive Design
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── Laptops (≤1400px) ──────────────────────────────────────────────────── */
@media (max-width: 1400px) {
    .hero__visual {
        width: 55vw;
        right: -8%;
    }
    .hero__content {
        max-width: 520px;
    }
}

/* ─── Tablet & Below (≤1100px) ───────────────────────────────────────────── */
@media (max-width: 1100px) {
    :root {
        --container-pad: 32px;
        --section-pad: 96px;
    }
    .navbar__phone { display: none; }
    .hero { min-height: 720px; }
    .hero__visual { width: 48vw; right: -3%; }
    .about__grid,
    .contact__grid,
    .why-choose__inner { gap: 60px; }
    .footer__grid { grid-template-columns: 1.5fr 1fr 1fr; }
    .footer__grid .footer__col:last-child { grid-column: 1 / -1; }
    .footer__address-card { max-width: 420px; }
    .service-block { gap: 55px; }
}

/* ─── Tablet Portrait & Below (≤820px) ───────────────────────────────────── */
@media (max-width: 820px) {
    :root {
        --container-pad: 24px;
        --section-pad: 76px;
    }
    html { scroll-padding-top: 70px; }

    /* Navbar */
    .navbar { top: 10px; }
    .navbar--scrolled { top: 5px; }
    .navbar__links, .navbar__right { display: none; }
    .navbar__inner {
        min-height: 60px;
        padding: 0 20px;
        border-radius: 20px;
        justify-content: space-between;
    }

    /* Hero */
    .hero { min-height: auto; padding-bottom: 0; flex-direction: column; }
    .hero__inner { flex-direction: column; justify-content: flex-start; padding-top: 100px; gap: 40px; }
    .hero__content { padding: 0; text-align: center; display: flex; flex-direction: column; align-items: center; z-index: 2; }
    .hero__eyebrow { justify-content: center; }
    .hero__subtitle { max-width: 520px; }
    .hero__visual { 
        position: relative; 
        width: 100%; 
        max-width: 600px; 
        left: auto; right: auto; bottom: auto; 
        transform: none; 
        margin: 0 auto 40px; 
        opacity: 1; 
        z-index: 1; 
    }
    .hero__stats { position: relative; }
    .hero__stats-grid { grid-template-columns: 1fr 1fr; }
    .hero__stat:nth-child(3) { border-left: 1px solid rgba(255,255,255,.13); }

    /* About */
    .about__grid { grid-template-columns: 1fr; gap: 45px; }
    .about__image-wrapper { max-width: 600px; }
    .about__cards-mini { max-width: 600px; }
    .about__features { grid-template-columns: 1fr 1fr; }

    /* Why Choose */
    .why-choose__inner { grid-template-columns: 1fr; gap: 45px; }
    .why-choose__stats { max-width: 620px; }

    /* Services */
    .services__grid { grid-template-columns: 1fr 1fr; }

    /* Process */
    .process__timeline { grid-template-columns: 1fr 1fr; }
    .process__step:nth-child(3),
    .process__step:nth-child(4) { margin-top: 24px; }

    /* Portfolio */
    .portfolio__grid { grid-template-columns: 1fr; }

    /* Testimonials */
    .testimonial-card { flex-basis: calc((100% - 16px)/2); }

    /* CTA */
    .final-cta__inner {
        grid-template-columns: 1fr;
        padding: 60px 0;
        gap: 23px;
    }

    /* Contact */
    .contact__grid { grid-template-columns: 1fr; gap: 45px; }

    /* Footer */
    .footer__cta-strip {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }
    .footer__grid { grid-template-columns: 1fr 1fr; gap: 30px; }
    .footer__grid .footer__brand { grid-column: 1 / -1; }
    .footer__grid .footer__col:last-child { grid-column: 1 / -1; }

    /* Services page */
    .service-block,
    .service-block:nth-child(even) {
        grid-template-columns: 1fr;
        gap: 32px;
        direction: ltr;
    }
    .service-block:nth-child(even) > * { direction: ltr; }

    /* Quick Actions — Mobile bar */
    .quick-actions {
        right: 12px; bottom: 12px; left: 12px;
        display: grid;
        grid-template-columns: 1.25fr 1fr 1fr;
        gap: 7px;
    }
    .quick-actions__item {
        justify-content: center;
        min-height: 52px;
        padding: 0 10px;
        border-radius: 15px;
        font-size: 12px;
    }
    .quick-actions__item:hover { transform: translateY(-3px); }

    .back-to-top { right: 14px; bottom: 80px; }

    /* Brand Marquee */
    .brand-marquee__track { padding: 14px 0; font-size: 10px; }

    /* General */
    .section { overflow: clip; }
    .hero__stats { padding-bottom: 0; }
    .footer { padding-bottom: 76px; }
    .services::before { top: 20px; left: 18px; }
}

/* ─── Mobile (≤540px) ────────────────────────────────────────────────────── */
@media (max-width: 540px) {
    :root {
        --container-pad: 18px;
        --section-pad: 65px;
    }

    /* Logo */
    .navbar__logo img, .footer__logo img { height: 50px; }

    /* Hero */
    .hero { min-height: auto; padding-bottom: 0; }
    .hero__inner { padding-top: 100px; justify-content: flex-start; }
    .hero__content { padding-top: 0; padding-bottom: 20px; text-align: center; display: flex; flex-direction: column; align-items: center; z-index: 2; }
    .hero__eyebrow { font-size: 10px; margin-bottom: 16px; justify-content: center; }
    .hero__title { font-size: 42px; line-height: 1; }
    .hero__subtitle { margin: 20px 0 32px; font-size: 15px; max-width: 90%; }
    .hero__cta { flex-direction: column; align-items: stretch; width: 100%; max-width: 320px; gap: 15px; }
    .hero__cta .btn { width: 100%; justify-content: center; }
    .hero__visual {
        max-width: 100%;
        margin: 20px auto 40px;
    }
    .hero__float { padding: 8px 12px; font-size: 11px; border-radius: 8px; gap: 6px; }
    .hero__float svg { width: 14px; height: 14px; }
    .hero__float--1 { top: 15%; left: 0%; }
    .hero__float--2 { top: 45%; right: 0%; }
    .hero__float--3 { bottom: 20%; left: 10%; }
    .hero__stats-grid { grid-template-columns: 1fr 1fr; }
    .hero__stat { min-height: 80px; padding: 12px; }
    .hero__stat-number { font-size: 26px; }
    .hero__stat-label { font-size: 11px; }

    /* Section titles */
    .section__title { font-size: 39px; }

    /* About */
    .about__cards-mini { grid-template-columns: 1fr; }
    .about__features { grid-template-columns: 1fr 1fr; }
    .about__feature { padding: 24px 18px; }

    /* Why Choose */
    .why-choose__stats { grid-template-columns: 1fr 1fr; }
    .why-choose__stat { min-height: 128px; padding: 18px; }
    .why-choose__stat-number { font-size: 39px; }

    /* Services */
    .services__grid { grid-template-columns: 1fr; }
    .service-card { min-height: 0; }
    .service-card__icon { margin: 27px 0 15px; }

    /* Process */
    .process__timeline { grid-template-columns: 1fr; }
    .process__step { padding: 24px 0; }
    .process__step:nth-child(n+2) { margin-top: 12px; }
    .process__connector { display: none; }

    /* Portfolio */
    .portfolio__card-image { height: 215px; }

    /* Testimonials */
    .testimonial-card { flex-basis: 100%; }

    /* Contact */
    .contact__form-card { padding: 25px 20px; }
    .form-row { grid-template-columns: 1fr; }

    /* Footer */
    .footer { padding-bottom: 70px; }
    .footer__watermark { bottom: 70px; }
    .footer__grid { grid-template-columns: 1fr; gap: 28px; }
    .footer__grid .footer__brand,
    .footer__grid .footer__col:last-child { grid-column: auto; }
    .footer__bottom {
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }
    .footer__cta-strip { padding: 30px 0; }
    .footer__cta-title { font-size: 22px; }

    /* Services page */
    .hero--sm { min-height: 380px; }
    .service-block__title { font-size: 34px; }
    .service-block__desc { font-size: 16px; }
}

/* ─── Small Mobile (≤390px) ──────────────────────────────────────────────── */
@media (max-width: 390px) {
    .navbar__logo img { width: 35px; height: 35px; }
    .hero__title { font-size: 38px; }
    .hero__float--1 { left: -5%; }
    .hero__float--2 { right: -5%; }
    .about__features { grid-template-columns: 1fr; }
    .quick-actions__item { gap: 5px; font-size: 10px; }
}
