/**
 * UnifyWizards — Service Show Page Mobile Responsive Stylesheet
 * Ensures clean spacing, responsive typography, perfect image padding/containment,
 * and eliminates text-image collisions on all mobile screen sizes (<= 767px and <= 575px).
 */

/* ==========================================================================
   TABLET & MOBILE GENERAL (<= 991px)
   ========================================================================== */
@media (max-width: 991px) {
    /* Section vertical padding */
    .section-gap {
        padding-top: 54px !important;
        padding-bottom: 54px !important;
    }

    .top-space-30 {
        margin-top: 16px !important;
    }

    /* Headings & Descriptions */
    .sec-title,
    h2.sec-title,
    h3.sec-title {
        font-size: clamp(24px, 5.5vw, 34px) !important;
        line-height: 1.25 !important;
        margin-bottom: 12px !important;
    }

    .sec-title br,
    .banner-title br,
    .wsi__title br {
        display: none !important;
    }

    .sub-title {
        font-size: 13px !important;
        margin-bottom: 8px !important;
    }

    /* Folds / About Sections: Prevent text-image collisions */
    .h6-about {
        padding-top: 50px !important;
        padding-bottom: 50px !important;
    }

    /* When Image is placed in the FIRST column (extra-fold-2 & our-company) */
    .h6-about .row > div:first-child .about-img-area,
    .h6-about .row > .col-xl-6:first-child .about-img-area,
    .h6-about .row > .col-lg-6:first-child .about-img-area {
        margin-top: 0 !important;
        margin-bottom: 28px !important;
        margin-inline-start: 0 !important;
        margin-inline-end: 0 !important;
    }

    /* When Image is placed in the SECOND column (extra-fold) */
    .h6-about .row > div:last-child .about-img-area,
    .h6-about .row > .col-xl-6:last-child .about-img-area,
    .h6-about .row > .col-lg-6:last-child .about-img-area {
        margin-top: 28px !important;
        margin-bottom: 0 !important;
        margin-inline-start: 0 !important;
        margin-inline-end: 0 !important;
    }

    /* Responsive images across all about & fold sections */
    .h6-about .about-img,
    .about-img-area .about-img {
        width: 100% !important;
        border-radius: 18px !important;
        overflow: hidden !important;
        box-shadow: 0 12px 36px rgba(12, 30, 33, 0.08) !important;
    }

    .h6-about .about-img img,
    .about-img-area .about-img img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        object-fit: cover !important;
        display: block !important;
    }

    .about-content-area.h6-about-content {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .h6-about-funfact-wrapper {
        display: none !important;
    }

    /* Get To Know Us section */
    .tj-gtku-section {
        padding-top: 50px !important;
        padding-bottom: 50px !important;
    }

    .tj-gtku-section .gtku-grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    .tj-gtku-section .gtku-image-frame {
        aspect-ratio: 16 / 10 !important;
        width: 100% !important;
        border-radius: 18px !important;
        box-shadow: 0 10px 30px rgba(12, 30, 33, 0.08) !important;
    }

    .tj-gtku-section .gtku-img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
}

/* ==========================================================================
   MOBILE PHONES (<= 767px)
   ========================================================================== */
@media (max-width: 767px) {
    /* ── 1. Hero Section & Proposal Form ── */
    .tj-banner-section-2 {
        padding-top: 20px !important;
        padding-bottom: 40px !important;
        overflow: hidden !important;
    }

    .tj-banner-section-2 .banner-content-2 {
        margin-bottom: 24px !important;
    }

    .tj-banner-section-2 .banner-title {
        font-size: clamp(26px, 7.5vw, 38px) !important;
        line-height: 1.2 !important;
        margin-bottom: 14px !important;
    }

    .tj-banner-section-2 .desc p {
        font-size: 14.5px !important;
        line-height: 1.65 !important;
        margin-bottom: 20px !important;
    }

    .tj-banner-section-2 .btn-area {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        margin-bottom: 24px !important;
    }

    .tj-banner-section-2 .btn-area .tj-primary-btn,
    .tj-banner-section-2 .btn-area a.number {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
    }

    .award-width {
        max-width: 110px !important;
        max-height: 44px !important;
        width: auto !important;
        height: auto !important;
        object-fit: contain !important;
        margin: 8px auto !important;
        display: block !important;
    }

    /* Hide large sideways marquee that breaks screen width / covers form */
    .tj-banner-section-2 .brand-name {
        display: none !important;
    }

    .tj-banner-section-2 .banner-img-area {
        margin-top: 24px !important;
        margin-inline-end: 0 !important;
        margin-inline-start: 0 !important;
    }

    .tj-banner-section-2 .banner-img-area::before {
        display: none !important;
    }

    /* Scroll down button */
    .banner-scroll {
        display: none !important;
    }

    /* Proposal form wrapping */
    .uw2-wrap {
        padding: 22px 16px !important;
        border-radius: 16px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .uw2-title {
        font-size: 20px !important;
        line-height: 1.3 !important;
    }

    .uw2-sub {
        font-size: 13px !important;
        margin-bottom: 16px !important;
    }

    .uw2-google-strip {
        padding: 7px 10px !important;
        margin-bottom: 16px !important;
    }

    /* ── 2. Top Services Section (Digital Marketing) ── */
    .tj-team-section {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }

    .dm-services-title,
    .tj-team-section .sec-title {
        margin-top: 0 !important;
        font-size: clamp(24px, 6vw, 32px) !important;
    }

    /* ── 3. Industries We Serve ── */
    .tj-industries-section {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }

    .tj-industries-section .industries-card {
        padding: 16px 10px !important;
        min-height: 136px !important;
        border-radius: 14px !important;
        gap: 8px !important;
    }

    .tj-industries-section .industries-icon {
        width: 44px !important;
        height: 44px !important;
        font-size: 18px !important;
        margin-bottom: 4px !important;
    }

    .tj-industries-section .industries-title {
        font-size: 13px !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        margin: 0 !important;
    }

    .tj-industries-section .industries-description {
        font-size: 11.5px !important;
        line-height: 1.4 !important;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    /* ── 4. Technologies Section ── */
    .tj-technologies-section {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }

    .tj-technologies-section .section-heading {
        margin-bottom: 24px !important;
    }

    .tech-card {
        padding: 18px 16px !important;
        border-radius: 16px !important;
        height: auto !important;
    }

    .tech-card .tech-title {
        font-size: 15.5px !important;
        font-weight: 700 !important;
        margin-bottom: 12px !important;
        display: block !important;
    }

    .tech-items {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }

    .tech-item {
        padding: 8px 10px !important;
        font-size: 12px !important;
        border-radius: 8px !important;
        background: #f8fafc !important;
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
    }

    /* ── 5. Pricing Section (Mobile Cards Layout) ── */
    .pt-header {
        margin-bottom: 20px !important;
        text-align: center !important;
    }

    .pt-title {
        font-size: clamp(22px, 5.5vw, 28px) !important;
        line-height: 1.3 !important;
    }

    .pt-table-head {
        display: none !important;
    }

    .pt-table-wrapper {
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
        overflow: visible !important;
    }

    .pt-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
        background: #ffffff !important;
        border: 1px solid rgba(45, 60, 123, 0.12) !important;
        border-radius: 16px !important;
        padding: 18px 16px !important;
        margin-bottom: 14px !important;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04) !important;
    }

    .pt-service {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
    }

    .pt-service__info {
        flex: 1 !important;
    }

    .pt-service__name {
        font-size: 15.5px !important;
        font-weight: 700 !important;
        color: #111827 !important;
    }

    .pt-service__sub {
        font-size: 12.5px !important;
        color: #6b7280 !important;
        margin-top: 2px !important;
    }

    .pt-price {
        text-align: left !important;
        font-size: 20px !important;
        font-weight: 700 !important;
        color: #2d3c7b !important;
        margin-top: 2px !important;
    }

    .pt-chip-cell {
        display: block !important;
        text-align: left !important;
    }

    .pt-chip {
        display: inline-block !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        padding: 3px 10px !important;
        border-radius: 999px !important;
    }

    .pt-actions {
        display: flex !important;
        width: 100% !important;
        gap: 8px !important;
        margin-top: 4px !important;
        border-top: 1px solid #f1f5f9 !important;
        padding-top: 12px !important;
    }

    .pt-btn-primary,
    .pt-btn-secondary {
        display: flex !important;
        flex: 1 !important;
        text-align: center !important;
        justify-content: center !important;
        align-items: center !important;
        padding: 9px 12px !important;
        font-size: 12.5px !important;
        border-radius: 8px !important;
        font-weight: 600 !important;
    }

    /* ── 6. Why Choose Us Section ── */
    .uw-choose-section {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }

    .uw-choose-heading {
        font-size: clamp(24px, 5.5vw, 34px) !important;
        line-height: 1.25 !important;
        margin-bottom: 10px !important;
    }

    .uw-choose-subtitle {
        font-size: 13.5px !important;
        margin-bottom: 8px !important;
    }

    .uw-choose-intro {
        font-size: 14px !important;
        line-height: 1.6 !important;
        margin-bottom: 20px !important;
    }

    .uw-choose-card {
        padding: 20px 16px !important;
        border-radius: 16px !important;
        height: auto !important;
    }

    .uw-choose-icon {
        width: 52px !important;
        height: 52px !important;
        font-size: 22px !important;
        margin-bottom: 12px !important;
    }

    .span-title-choose {
        font-size: 17px !important;
        font-weight: 700 !important;
        margin-bottom: 8px !important;
        display: block !important;
    }

    .uw-choose-card p {
        font-size: 13.5px !important;
        line-height: 1.55 !important;
    }

    /* ── 7. Working Process Section ── */
    .h5-working-process {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }

    .h5-working-process-wrapper {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    .h5-working-process-item {
        width: 100% !important;
        padding: 20px 16px !important;
        border-radius: 16px !important;
        margin-bottom: 0 !important;
    }

    .h5-working-process-item .title {
        font-size: 17px !important;
        font-weight: 700 !important;
    }

    .h5-working-process-item .desc {
        font-size: 13.5px !important;
        line-height: 1.55 !important;
        margin-top: 10px !important;
    }

    /* ── 8. Wizards Spell (ATM) Section ── */
    .atm-wrap {
        padding: 36px 16px !important;
        border-radius: 20px !important;
    }

    .atm-main-title {
        font-size: clamp(22px, 5.5vw, 28px) !important;
        line-height: 1.25 !important;
        margin-bottom: 10px !important;
    }

    .atm-sub-text {
        font-size: 13.5px !important;
        line-height: 1.6 !important;
        margin-bottom: 20px !important;
    }

    .atm-cards-row {
        flex-direction: column !important;
        align-items: center !important;
        gap: 14px !important;
        min-height: unset !important;
    }

    .atm-card,
    .atm-cards-row.atm-hovered .atm-card,
    .atm-cards-row.atm-hovered .atm-card.atm-focused {
        width: 100% !important;
        max-width: 100% !important;
        transform: none !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        opacity: 1 !important;
        padding: 22px 18px !important;
        border-radius: 16px !important;
    }

    .atm-icon-wrap {
        margin-bottom: 20px !important;
    }

    /* ── 9. Who Should Invest ── */
    .wsi__section {
        padding: 44px 16px !important;
    }

    .wsi__title {
        font-size: clamp(22px, 5.5vw, 30px) !important;
        line-height: 1.25 !important;
    }

    .wsi__intro {
        font-size: 14px !important;
        line-height: 1.6 !important;
        margin-bottom: 20px !important;
    }

    .wsi__cards-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .wsi__q-card {
        padding: 14px 14px !important;
        border-radius: 12px !important;
    }

    .wsi__q-text {
        font-size: 13.5px !important;
        line-height: 1.4 !important;
    }

    .wsi__bottom-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .wsi__info-card {
        padding: 16px 14px !important;
        border-radius: 14px !important;
    }

    .wsi__info-title {
        font-size: 15px !important;
    }

    .wsi__info-text {
        font-size: 13px !important;
        line-height: 1.55 !important;
    }

    /* ── 10. Client Testimonials ── */
    .h9-testimonial {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }

    .svc-test-header {
        margin-bottom: 20px !important;
    }

    .svc-test-heading {
        font-size: clamp(22px, 5.5vw, 30px) !important;
    }

    .svc-test-card {
        padding: 22px 18px !important;
        border-radius: 16px !important;
    }

    .svc-test-desc {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }

    .svc-test-author {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        margin-top: 14px !important;
    }

    .svc-test-avatar {
        width: 44px !important;
        height: 44px !important;
        border-radius: 50% !important;
        object-fit: cover !important;
        flex-shrink: 0 !important;
    }

    /* ── 11. Related Blogs ── */
    .tj-blog-section {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }

    .blog-item {
        border-radius: 16px !important;
        overflow: hidden !important;
        background: #ffffff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05) !important;
        margin-bottom: 16px !important;
    }

    .blog-item .blog-thumb {
        aspect-ratio: 16 / 10 !important;
        width: 100% !important;
        margin-bottom: 0 !important;
    }

    .blog-item .blog-thumb img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }

    .blog-item .blog-content {
        padding: 18px 16px !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
    }

    .blog-item .span-title-black a {
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.35 !important;
    }

    /* ── 12. Services CTA Section ── */
    .tj-cta-section {
        margin-bottom: -180px !important;
    }

    .cta-area {
        flex-direction: column !important;
        border-radius: 16px !important;
        overflow: hidden !important;
    }

    .cta-area .cta-content {
        width: 100% !important;
        padding: 28px 18px 22px 18px !important;
    }

    .cta-area .cta-content .title {
        font-size: clamp(24px, 6vw, 34px) !important;
        line-height: 1.2 !important;
        margin-bottom: 12px !important;
    }

    .cta-desc {
        font-size: 13.5px !important;
        line-height: 1.55 !important;
        margin-bottom: 16px !important;
    }

    .cta-points {
        gap: 8px !important;
        margin-bottom: 20px !important;
    }

    .cta-points li {
        font-size: 13px !important;
    }

    .cta-btn {
        margin-bottom: 8px !important;
    }

    .cta-area .cta-img {
        width: 100% !important;
        position: relative !important;
        height: 240px !important;
        min-height: 240px !important;
        overflow: hidden !important;
    }

    .cta-area .cta-img a.cta-img-link,
    .cta-area .cta-img img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
    }

    .cta-img-badge {
        left: 14px !important;
        bottom: 14px !important;
        padding: 8px 12px !important;
        border-radius: 10px !important;
    }

    .cta-img-badge-num {
        font-size: 18px !important;
    }

    .cta-img-badge-label {
        font-size: 11px !important;
    }

    /* ── 13. FAQ Section ── */
    #service-faq-section {
        margin-top: 36px !important;
        margin-bottom: 36px !important;
    }

    #service-faq-section .atm-main-title {
        font-size: clamp(24px, 5.5vw, 30px) !important;
    }

    /* ── 14. Footer Spacing with CTA ── */
    .tj-cta-section {
        margin-bottom: -210px !important;
    }

    .tj-footer-section {
        padding-top: 250px !important;
    }

    /* ── 15. General Images & Content Protection ── */
    .desc img,
    .s6-desc-content img,
    .about-content-area img {
        max-width: 100% !important;
        height: auto !important;
        border-radius: 14px !important;
        margin: 16px 0 !important;
        display: block !important;
    }
}

/* ==========================================================================
   EXTRA SMALL PHONES (<= 480px / 360px - 414px)
   ========================================================================== */
@media (max-width: 480px) {
    .uw2-row {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .uw2-btn-row {
        flex-direction: column !important;
        gap: 8px !important;
    }

    .uw2-submit,
    .uw2-call {
        width: 100% !important;
        justify-content: center !important;
    }

    .pt-actions {
        flex-direction: column !important;
    }

    .pt-btn-primary,
    .pt-btn-secondary {
        width: 100% !important;
    }

    .tech-items {
        grid-template-columns: 1fr !important;
    }
}
