/* Responsive Overrides */

@media (max-width: 1400px) {
    .hero-composition-right { width: 500px; height: 500px; }
    .inner-orbit { width: 440px; height: 440px; }
    .outer-orbit { width: 540px; height: 540px; }
    .hero-main-img-wrapper { width: 360px; height: 360px; }
    .hero-watermark { font-size: 220px; left: -10%; }
}

@media (max-width: 1200px) {
    .text-hero { font-size: clamp(44px, 5vw, 58px); }
    .hero-composition-right { width: 420px; height: 420px; }
    .inner-orbit { width: 360px; height: 360px; }
    .outer-orbit { width: 460px; height: 460px; }
    .hero-main-img-wrapper { width: 280px; height: 280px; }
    .hero-floating-card { padding: 1rem; }
    .hero-floating-card h4 { font-size: 1.4rem; }
    .hero-ppp-card { padding: 12px 18px; font-size: 9px; right: -10px; }
    .hero-dot-grid { display: none; }
    
    .about-composition { height: 500px; }
    .about-main-img-wrapper { height: 400px; }
    .about-sec-image { width: 45%; height: 200px; bottom: 80px; }
    .about-headset-badge { bottom: 250px; }
    .panel-number { font-size: 2.8rem; }
    
    /* People */
    .people-visual-composition { width: 780px; right: 0; }
    .people-main-image { border-radius: 35% 0 0 35%; }
    .metric-right { right: 20px; bottom: 120px; }
    .testimonial-text { font-size: 24px; }
    .quote-mark { font-size: 100px; }
}

@media (max-width: 992px) {
    /* Mobile Navigation Fix */
    .navbar-custom { 
        height: auto !important; 
        min-height: 70px; 
        padding: 12px 0 !important; 
        background: rgba(6, 16, 31, 0.96) !important; 
        backdrop-filter: blur(20px); 
        border-bottom: 1px solid rgba(255,255,255,0.08); 
    }
    .navbar-brand .brand-logo-img { height: 34px; }
    .navbar-collapse {
        background: #08111F;
        border: 1px solid rgba(40, 107, 255, 0.25);
        border-radius: 16px;
        padding: 20px;
        margin-top: 14px;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.8);
        position: relative;
        z-index: 9999;
    }
    .navbar-nav {
        gap: 6px;
        margin-bottom: 14px !important;
    }
    .nav-link {
        margin: 0 !important;
        padding: 10px 14px !important;
        border-radius: 8px;
        font-size: 13px;
        display: block;
        color: rgba(255, 255, 255, 0.85) !important;
    }
    .nav-link:hover, .nav-link.active {
        background: rgba(40, 107, 255, 0.15);
        color: #FFFFFF !important;
    }
    .navbar-collapse .btn-custom-outline,
    .navbar-collapse .btn-custom-primary {
        width: 100%;
        display: flex;
        justify-content: center;
        margin-top: 6px;
    }

    /* Padding Reductions */
    .section-editorial { padding: 90px 0; }
    .section-stats { padding: 50px 0; }
    .section-cta { padding: 100px 0; }
    
    /* Hero */
    .hero-section { flex-direction: column; text-align: left; padding-top: 120px; padding-bottom: 60px; height: auto; min-height: 0; }
    .hero-content .row { flex-direction: column; }
    .hero-content .col-lg-5 { width: 100%; margin-bottom: 4rem; }
    
    .hero-text-wrapper { transform: none; max-width: 100%; }
    
    .hero-composition-right { margin: 0 auto; margin-bottom: 2rem; }
    .hero-watermark { font-size: 160px; bottom: 5%; right: -5%; }
    
    /* About */
    .about-composition { height: 600px; margin-top: 4rem; }
    .about-main-img-wrapper { height: 450px; left: 0; width: 85%; }
    .about-sec-image { bottom: 100px; width: 50%; height: 240px; }
    .about-headset-badge { bottom: 300px; right: 25%; }
    
    /* Services */
    .services-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
    .services-heading { font-size: clamp(34px, 4vw, 48px); }
    
    /* Why 3% */
    .why-cards-grid { grid-template-columns: repeat(2, 1fr); }
    .why-port-tl { left: 2%; }
    .why-port-tr { right: 2%; }
    .why-port-bl { left: 5%; }
    .why-port-br { right: 2%; }
    
    /* People Section */
    .people-float-port, .people-vertical-text, .people-metric { display: none; }
    
    /* Testimonial */
    .test-blob { display: none; }
    .test-client-port { width: 120px; height: 120px; margin-bottom: 2rem; }
    
    /* Disable Custom Cursor */
    .custom-cursor { display: none !important; }
    
    /* Industries Redesign */
    .ind-cards-grid { grid-template-columns: repeat(2, 1fr); }

    /* Process Redesign */
    .proc-steps-wrapper { padding: 0 2%; }
    .proc-step { width: 200px; }
    .proc-card { height: 280px; }
    .proc-wave-svg { top: 120px; }
    .step-1, .step-2, .step-3, .step-4 { transform: translateY(0); }
    .proc-wave-svg { display: none; }
    .proc-mobile-line { display: block; position: absolute; top: 135px; left: 5%; width: 90%; height: 2px; background: rgba(40,107,255,0.2); }
    .proc-step::before, .proc-step::after { display: none; }

    /* People Redesign */
    .people-heading { font-size: clamp(38px, 6vw, 56px); }
    .section-people-redesign { height: auto; }
    
    .people-visual-composition { width: 680px; right: 0; }
    .metric-top { right: 200px; }
    .metric-right { right: 10px; bottom: 130px; }
    
    .people-feature-panel { right: 5%; width: min(680px, calc(100vw - 40px)); height: 95px; }
    .fp-item { gap: 10px; padding: 0 5px; }
    .fp-icon { width: 40px; height: 40px; font-size: 16px; }
    .fp-title { font-size: 13px; }
    .fp-sub { font-size: 11px; }
}

@media (max-width: 768px) {
    .text-hero { font-size: clamp(38px, 6vw, 48px); }
    .btn-custom-primary, .btn-custom-outline { width: 100%; justify-content: center; margin-bottom: 1rem; }
    
    .hero-composition-right { width: 320px; height: 320px; }
    .hero-main-img-wrapper { width: 220px; height: 220px; }
    .inner-orbit { width: 280px; height: 280px; }
    .outer-orbit { width: 340px; height: 340px; }
    .hero-card-1, .hero-card-2 { padding: 0.8rem 1rem; }
    .hero-card-1 h4, .hero-card-2 h4 { font-size: 1.2rem; }
    .hero-ppp-card, .hero-portrait-2, .hero-dot-grid { display: none; }
    
    .stat-item { padding: 0 1rem; margin-bottom: 2rem; }
    .tiny-dot { display: none; }
    
    .about-composition { height: auto; }
    .about-main-img-wrapper { position: relative; width: 100%; height: 400px; border-radius: 40px 20px 50px 20px; box-shadow: none; left: 0; }
    .about-sec-image { position: relative; bottom: auto; right: auto; width: 70%; height: 200px; margin-top: -100px; margin-left: auto; display: block; box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
    .about-headset-badge { bottom: 180px; right: 20px; }
    .about-statement-panel { position: relative; bottom: auto; left: auto; width: 100%; flex-direction: column; text-align: center; margin-top: -30px; padding: 30px; }
    .panel-divider { width: 100%; height: 1px; margin: 15px 0; }
    .about-bg-shape, .about-curved-line, .about-dot-grid { display: none; }
    
    /* Services */
    .services-grid { grid-template-columns: 1fr; gap: 15px; }
    .services-heading { font-size: clamp(28px, 6vw, 38px); }
    /* Why 3% */
    .why-cards-grid { grid-template-columns: 1fr; }
    .why-heading { font-size: clamp(34px, 8vw, 42px); }
    .why-portrait { width: 70px; height: 70px; border-width: 2px; }
    .why-port-tl { top: -20px; left: 0; }
    .why-port-tr { top: -10px; right: 0; }
    .why-port-bl { bottom: 0; left: 0; }
    .why-port-br { bottom: -20px; right: 0; }
    .port-curve-accent { display: none; }
    
    /* Process Redesign */
    .section-process-editorial { padding: 90px 0; }
    .proc-heading { font-size: clamp(36px, 8vw, 44px); }
    .proc-steps-wrapper { flex-direction: column; align-items: center; gap: 40px; padding: 0; margin-top: 40px; }
    .proc-step { width: 100%; max-width: 380px; align-items: center; }
    .proc-mobile-line {
        top: 0; left: 50%; transform: translateX(-50%); width: 2px; height: 100%;
        background: linear-gradient(to bottom, rgba(40,107,255,0.5), rgba(40,107,255,0.1));
    }
    .proc-icon-wrapper { margin-bottom: 20px; }
    .proc-node { margin-bottom: 20px; }
    .proc-card { height: auto; padding: 30px 25px; }
    .proc-bg-glow, .proc-dot-pattern, .proc-curved-shape, .proc-yellow-dot { display: none; }
    
    .testimonial-text { font-size: 20px; }
    
    /* Industries Redesign */
    .ind-cards-grid { grid-template-columns: 1fr; }
    .ind-heading { font-size: clamp(36px, 8vw, 44px); }
    .ind-bg-gradient, .ind-dot-grid, .ind-curved-line, .ind-yellow-dots { display: none; }
    .section-industry-expertise { padding: 80px 0; }

    /* People Redesign (Final Composition) */
    .section-people-redesign { height: auto; padding: 80px 0 60px; min-height: auto; }
    .people-left-col { max-width: 100%; margin-bottom: 40px; }
    .people-row { flex-direction: column; text-align: center; }
    .people-eyebrow { justify-content: center; }
    .people-heading { font-size: clamp(40px, 8vw, 54px); }
    .people-yellow-divider { margin: 30px auto; }
    .people-desc { margin: 0 auto; }
    .people-cta-group { justify-content: center; }
    .btn-people-secondary { margin-left: 0 !important; margin-top: 20px; width: 100%; justify-content: center; }
    .btn-people-primary { width: 100%; justify-content: center; }
    
    .people-right-col { position: relative; height: auto; width: 100%; padding: 0; display: flex; flex-direction: column; align-items: center; }
    .people-visual-composition { width: 100%; height: auto; right: auto; margin-top: 40px; display: flex; flex-direction: column; align-items: center; }
    
    .people-curve-outline { display: none; }
    
    .people-main-image { position: relative; inset: auto; width: 100%; height: 380px; border-radius: 40px; }
    
    .people-metric-card { position: relative; top: auto !important; right: auto !important; bottom: auto !important; left: auto !important; width: 100%; max-width: 350px; margin-top: 15px; }
    
    .people-feature-panel { position: relative; bottom: auto; left: auto; right: auto; transform: none !important; width: calc(100% - 32px); height: auto; display: flex; flex-direction: column; padding: 20px; gap: 0; margin: 30px auto 0; box-sizing: border-box; }
    .fp-item { width: 100%; justify-content: center; text-align: left; padding: 15px 0; }
    .fp-item:not(:last-child)::after { width: 80%; height: 1px; bottom: 0; top: auto; right: auto; left: 10%; transform: none; }
    .fp-text { text-align: left; }
    
    .bg-people-radial-new, .bg-people-dots-grid, .d1, .d2, .d3 { display: none; }
    .people-bottom-wave { display: none; }
    
    /* Final CTA Redesign */
    .cta-title { font-size: clamp(40px, 8vw, 48px); line-height: 0.98; }
    .cta-actions { flex-direction: column; width: 100%; align-items: center; gap: 16px; }
    .cta-primary, .cta-secondary { width: 100%; max-width: 300px; }
    .cta-watermark { font-size: 140px; }
    .cta-orbit svg ellipse { display: none; }
    
    /* Footer Redesign */
    .footer-section { padding: 80px 0 30px; }
    .footer-intro { margin-bottom: 60px; }
    .footer-huge-title { font-size: clamp(44px, 8vw, 52px); }
    .footer-grid { grid-template-columns: 1fr; gap: 40px; }
    .footer-brand { order: -1; margin-bottom: 20px; } /* Ensure it stays on top of the grid */
    
    /* Make company, solutions, resources 2-column if possible, or leave them stacking */
    .footer-column { text-align: left; }
    
    .footer-watermark { font-size: 150px; }
    .footer-orbit, .footer-particles { display: none; }
    
    .footer-bottom { flex-direction: column; align-items: flex-start; gap: 20px; }
    .fb-right { flex-direction: column; align-items: flex-start; gap: 10px; }
    .fb-divider { display: none; }
    
    /* =======================================
       ABOUT PAGE V2 MOBILE RESPONSIVE
       ======================================= */
    
    /* Hero */
    .abv2-hero { padding: 100px 0 0 0; flex-direction: column; height: auto; }
    .abv2-hero-container { flex-direction: column; }
    .abv2-hero-content { width: 100%; padding: 0 20px; text-align: center; }
    .abv2-hero-heading { font-size: clamp(48px, 10vw, 60px); margin-bottom: 24px; }
    .abv2-hero-desc { margin: 0 auto 30px; }
    .abv2-hero-actions { justify-content: center; flex-direction: column; width: 100%; }
    .abv2-btn-primary, .abv2-btn-secondary { width: 100%; max-width: 320px; }
    
    .abv2-hero-visual { width: 100%; height: 500px; margin-top: 60px; }
    .abv2-hero-img { border-radius: 100px 100px 0 0; }
    .abv2-hero-outline { border-radius: 100px 100px 0 0; left: -10px; width: calc(100% + 20px); }
    .abv2-badge { padding: 8px 16px 8px 8px; gap: 10px; }
    .badge-icon { width: 36px; height: 36px; font-size: 16px; }
    .badge-text strong { font-size: 16px; }
    .badge-text { font-size: 9px; }
    .badge-1 { top: 20px; left: 10px; }
    .badge-2 { bottom: 20px; right: 10px; }
    .badge-3 { bottom: 80px; left: 10px; }

    /* Story */
    .abv2-story { padding: 80px 0; }
    .abv2-story-watermark { font-size: 120px; top: -20px; }
    .abv2-story-text-col { padding: 0 20px; }
    .abv2-story-img { width: 100%; height: 400px; transform: none; border-radius: 0 100px 0 100px; margin-top: 40px; }
    .abv2-story-label { bottom: -20px; left: 20px; }

    /* Philosophy */
    .abv2-philosophy { padding: 80px 0; }
    .abv2-phil-row { flex-direction: column; text-align: center; gap: 20px; padding: 40px 10px; }
    .phil-number { width: auto; font-size: 32px; }
    .phil-desc-col { padding: 0; }
    .phil-arrow { display: none; }

    /* Mission / Vision */
    .abv2-mv-container { grid-template-columns: 1fr; border-radius: 20px; }
    .abv2-mv-panel { padding: 60px 30px; }
    .mv-bg-text { font-size: 80px; }
    .mv-connector-line { display: none; }

    /* Values */
    .abv2-values { padding: 80px 0; }
    .abv2-values-masonry { grid-template-columns: 1fr; }
    .val-large, .val-sm { grid-column: span 1; }
    .val-item { padding: 40px 30px; }
    .val-item .val-title { font-size: 28px; }

    /* People */
    .abv2-people { padding: 80px 0; }
    .abv2-people-collage { height: auto; display: flex; flex-direction: column; gap: 20px; align-items: center; }
    .p-img-main, .p-img-sup1, .p-img-sup2 { position: relative; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; width: 100% !important; max-width: 320px; height: 350px !important; border-radius: 30px !important; transform: none !important; }
    .p-label { bottom: 10px; left: 10px; font-size: 9px; padding: 10px 16px; }

    /* Statement */
    .abv2-statement { padding: 120px 0; }
    .statement-giant-text { font-size: 140px; left: 50%; transform: translate(-50%, -50%); }
    .statement-gradient { background: linear-gradient(0deg, #07111F 10%, rgba(7,17,31,0.7) 60%, rgba(7,17,31,0.3) 100%); }
    .statement-pill { padding: 12px 20px; font-size: 10px; }

    /* CTA */
    .abv2-cta { padding: 100px 0; }
}

@media (max-width: 992px) and (min-width: 769px) {
    /* Tablet specific adjustments for the 5 column grid */
    .footer-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-brand { grid-column: 1 / -1; }
    .footer-contact { grid-column: 1 / -1; }

    /* ABOUT PAGE V2 TABLET RESPONSIVE */
    .abv2-hero-content { width: 60%; }
    .abv2-hero-visual { width: 40%; }
    .abv2-values-masonry { grid-template-columns: repeat(2, 1fr); }
    .val-large, .val-sm { grid-column: span 1; }
    .abv2-people-collage { transform: scale(0.75); transform-origin: top left; }
}
