/* ============================================
   RESPONSIVE DESIGN - MOBILE OPTIMIZATION
   ============================================ */

/* Large Tablets and Below */
@media (max-width: 1024px) {
    /* Header Responsive */
    .top-info-bar {
        display: none;
    }
    
    .navbar-main {
        padding: 0.75rem 0;
    }
    
    .logo-section .logo-text {
        display: block;
    }
    
    .nav-center {
        order: 3;
        width: 100%;
    }
    
    .nav-actions .btn-solid:not(.mobile-menu-toggle) {
        padding: 0.6rem 1.2rem;
        font-size: 0.9rem;
    }
    
    /* Hero Section Responsive */
    .hero {
        padding: 5rem 0 4rem !important;
        margin-top: 76px !important;
        min-height: auto !important;
    }
    
    .hero-grid {
        grid-template-columns: 1fr !important;
        gap: 3rem !important;
        padding: 0 !important;
    }
    
    .hero-right {
        order: 2;
    }
    
    .hero-stats {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
        padding: 2rem !important;
        gap: 1.5rem !important;
    }
    
    .hero-stats > div {
        padding: 0 !important;
    }
    
    .hero-stats > div:nth-child(2) {
        border-left: none !important;
        border-right: none !important;
        border-top: 2px solid var(--border-color) !important;
        border-bottom: 2px solid var(--border-color) !important;
        padding: 1rem 0 !important;
    }
    
    /* Features Responsive */
    .feature-row {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }
    
    .feature-row > div:first-child {
        order: 1;
    }
    
    .feature-row > div:last-child {
        order: 2;
    }
    
    .features-grid {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
        gap: 1.5rem !important;
    }
    
    .stats-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
        gap: 1.5rem !important;
    }
    
    section {
        padding: 4rem 0 !important;
    }
}

/* Mobile Landscape and Tablets */
@media (max-width: 768px) {
    /* Header Mobile Menu */
    .navbar-main {
        padding: 0.75rem 0;
    }
    
    .logo-section .brand-name {
        font-size: 1.25rem;
    }
    
    .logo-section .brand-tagline {
        font-size: 0.65rem;
    }
    
    .logo-section .logo-icon {
        width: 40px;
        height: 40px;
        font-size: 1.25rem;
    }
    
    .nav-center {
        position: fixed;
        top: 76px;
        left: -100%;
        width: 100%;
        height: calc(100vh - 76px);
        background: var(--bg-secondary);
        flex-direction: column;
        padding: 2rem 0;
        transition: left 0.3s ease;
        overflow-y: auto;
        z-index: 999;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    }
    
    .nav-center.active {
        left: 0;
    }
    
    .nav-menu {
        flex-direction: column;
        width: 100%;
        gap: 0;
        left: 0;
    }
    
    .nav-item {
        width: 100%;
        border-bottom: 1px solid var(--border-color);
    }
    
    .nav-link {
        padding: 1.25rem 2rem;
        width: 100%;
        justify-content: flex-start;
        gap: 1rem;
        font-size: 1.1rem;
    }
    
    .nav-link i {
        font-size: 1.25rem;
        width: 30px;
    }
    
    .nav-actions .btn-solid:not(.mobile-menu-toggle) {
        display: none;
    }
    
    .mobile-menu-toggle {
        display: flex;
    }
    
    /* Hero Section Mobile */
    .hero {
        padding: 4rem 0 3rem !important;
        margin-top: 76px !important;
    }
    
    .hero-grid {
        gap: 2.5rem !important;
    }
    
    .hero-right > div:first-child {
        grid-template-columns: 1fr 1fr !important;
    }
    
    h1 {
        font-size: 2rem !important;
        line-height: 1.3 !important;
    }
    
    h2 {
        font-size: 1.75rem !important;
    }
    
    h3 {
        font-size: 1.25rem !important;
    }
    
    p {
        font-size: 1rem !important;
    }
    
    .hero h1 {
        font-size: 2rem !important;
    }
    
    .hero p {
        font-size: 1.05rem !important;
        margin-bottom: 2rem !important;
    }
    
    .hero-stats {
        grid-template-columns: 1fr !important;
        padding: 1.5rem !important;
        gap: 1.5rem !important;
    }
    
    .hero-stats > div {
        text-align: center !important;
        border: none !important;
        padding: 1rem 0 !important;
        border-bottom: 2px solid var(--border-color) !important;
    }
    
    .hero-stats > div:last-child {
        border-bottom: none !important;
    }
    
    .hero-stats > div:nth-child(2) {
        border-top: none !important;
    }
    
    .hero-stats div:first-child {
        font-size: 2rem !important;
    }
    
    /* Feature Blocks Mobile */
    .feature-row {
        padding: 0 !important;
    }
    
    .feature-row > div {
        padding: 2rem !important;
    }
    
    /* Feature Images Responsive */
    .feature-row img {
        height: 300px !important;
    }
    
    .feature-row > div[style*="position: relative"] {
        margin-bottom: 1.5rem;
    }
    
    /* Testimonials Mobile */
    .testimonial-card > div {
        flex-direction: column !important;
        text-align: center !important;
        gap: 1.5rem !important;
    }
    
    .testimonial-card > div > div:first-child {
        margin: 0 auto !important;
    }
    
    .testimonial-card img {
        width: 70px !important;
        height: 70px !important;
    }
    
    .testimonial-card p {
        font-size: 1rem !important;
    }
    
    .slider-arrow {
        width: 40px !important;
        height: 40px !important;
        font-size: 1rem !important;
    }
    
    .slider-prev {
        left: 10px !important;
    }
    
    .slider-next {
        right: 10px !important;
    }
    
    /* Footer Mobile */
    .footer-grid {
        grid-template-columns: 1fr !important;
        gap: 2.5rem !important;
    }
    
    .footer-bottom-bar {
        flex-direction: column !important;
        gap: 1rem !important;
        text-align: center !important;
    }
    
    .footer-social-links {
        justify-content: center !important;
    }
    
    .btn-solid {
        padding: 0.875rem 1.5rem !important;
        font-size: 0.9rem !important;
    }
    
    .btn-lg {
        padding: 1rem 1.75rem !important;
        font-size: 1rem !important;
    }
    
    .features-grid {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }
    
    .card {
        padding: 2rem !important;
    }
    
    .card-icon {
        width: 50px !important;
        height: 50px !important;
        font-size: 1.5rem !important;
        margin-bottom: 1rem !important;
    }
    
    .stats-grid {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }
    
    .stat-card {
        padding: 2rem !important;
    }
    
    .timeline-item {
        padding-left: 2rem !important;
    }
    
    .timeline-content {
        padding: 1.5rem !important;
    }
    
    .testimonial-card {
        padding: 2rem !important;
    }
    
    .slider-arrow {
        width: 40px !important;
        height: 40px !important;
        font-size: 1rem !important;
    }
    
    .slider-arrow.slider-prev {
        left: 10px !important;
    }
    
    .slider-arrow.slider-next {
        right: 10px !important;
    }
    
    .faq-question {
        font-size: 1rem !important;
        padding: 1rem !important;
    }
    
    .faq-answer {
        padding: 0 1rem !important;
    }
    
    .faq-item.active .faq-answer {
        padding: 1rem !important;
    }
    
    section {
        padding: 3rem 0 !important;
    }
    
    .section-header {
        margin-bottom: 2rem !important;
    }
}

/* Mobile Portrait */
@media (max-width: 480px) {
    .container {
        padding: 0 1rem !important;
    }
    
    /* Hero Background Image */
    .hero > div[style*="position: absolute"] img {
        opacity: 0.05 !important;
    }
    
    /* Hero Right Images Responsive */
    .hero-right > div[style*="margin-top"] {
        margin-top: 1.5rem !important;
    }
    
    .hero-right img {
        max-width: 100%;
        height: auto;
    }
    
    /* Hero Grid Mobile */
    .hero-right > div:first-child {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }
    
    .hero-right .card {
        padding: 1.5rem !important;
    }
    
    /* Feature Images Mobile */
    .feature-row img {
        height: 250px !important;
        border-radius: 12px !important;
    }
    
    .feature-row > div[style*="position: absolute"] > div {
        padding: 1.5rem !important;
    }
    
    .feature-row > div[style*="position: absolute"] > div > div:first-child {
        font-size: 2rem !important;
    }
    
    .hero {
        padding: 4rem 0 2rem !important;
    }
    
    h1 {
        font-size: 1.75rem !important;
    }
    
    h2 {
        font-size: 1.5rem !important;
    }
    
    .hero h1 {
        font-size: 1.75rem !important;
        margin-bottom: 1rem !important;
    }
    
    .hero h1 span {
        margin-top: 0.5rem !important;
    }
    
    .hero p {
        font-size: 1rem !important;
    }
    
    .hero-stats div:first-child {
        font-size: 1.75rem !important;
    }
    
    .btn-solid {
        width: 100% !important;
        justify-content: center !important;
    }
    
    .btn-lg {
        padding: 0.875rem 1.5rem !important;
        font-size: 0.95rem !important;
    }
    
    .card {
        padding: 1.5rem !important;
    }
    
    .card-title {
        font-size: 1.1rem !important;
    }
    
    .card-text {
        font-size: 0.95rem !important;
    }
    
    .badge {
        font-size: 0.75rem !important;
        padding: 0.25rem 0.75rem !important;
    }
    
    .testimonial-card {
        padding: 1.5rem !important;
    }
    
    .testimonial-card p {
        font-size: 1rem !important;
    }
    
    .testimonial-card > div:last-child {
        flex-direction: column !important;
        text-align: center !important;
    }
    
    .testimonial-card > div:last-child > div:last-child {
        text-align: center !important;
    }
    
    .slider-dots {
        margin-top: 1.5rem !important;
    }
    
    .slider-dot {
        width: 8px !important;
        height: 8px !important;
    }
    
    section {
        padding: 2.5rem 0 !important;
    }
    
    .timeline-content h3 {
        font-size: 1.1rem !important;
    }
    
    .footer-grid {
        gap: 2rem !important;
    }
    
    .footer-heading {
        font-size: 1rem !important;
    }
    
    .footer-brand {
        gap: 0.75rem !important;
    }
    
    .footer-logo-box {
        width: 45px !important;
        height: 45px !important;
    }
    
    .footer-logo-box i {
        font-size: 1.5rem !important;
    }
    
    .footer-brand-text h3 {
        font-size: 1.25rem !important;
    }
}

/* Extra Small Devices */
@media (max-width: 360px) {
    .hero h1 {
        font-size: 1.5rem !important;
    }
    
    h2 {
        font-size: 1.35rem !important;
    }
    
    .btn-solid span {
        font-size: 0.85rem !important;
    }
    
    .hero-stats div:first-child {
        font-size: 1.5rem !important;
    }
    
    .card-icon {
        width: 45px !important;
        height: 45px !important;
        font-size: 1.25rem !important;
    }
}

/* Landscape Orientation for Mobile */
@media (max-height: 600px) and (orientation: landscape) {
    .hero {
        padding: 3rem 0 2rem !important;
    }
    
    section {
        padding: 2rem 0 !important;
    }
}
/* ============================================
   ABOUT PAGE RESPONSIVE STYLES - MODERN LAYOUT
   ============================================ */

@media (max-width: 1024px) {
    /* Timeline Grid Collapse */
    section div[style*="grid-template-columns: 1fr auto 1fr"] {
        gap: 2rem !important;
    }
    
    /* Mission & Vision Split Screen */
    section[style*="display: grid"][style*="grid-template-columns: 1fr 1fr"] {
        grid-template-columns: 1fr !important;
    }
    
    section[style*="display: grid; grid-template-columns: 1fr 1fr"] > div {
        padding: 4rem 2.5rem !important;
    }
    
    /* Why Choose Us 3-Column Grid */
    section div[style*="grid-template-columns: repeat(3, 1fr)"] {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    /* CTA Split Design */
    section div[style*="display: grid; grid-template-columns: 1fr 1fr; gap: 4rem"] {
        grid-template-columns: 1fr !important;
        gap: 3rem !important;
    }
}

@media (max-width: 768px) {
    /* Timeline Vertical Layout */
    section div[style*="grid-template-columns: 1fr auto 1fr"] {
        grid-template-columns: auto 1fr !important;
        gap: 1.5rem !important;
    }
    
    section div[style*="grid-template-columns: 1fr auto 1fr"] > div:first-child {
        display: none !important;
    }
    
    section div[style*="grid-template-columns: 1fr auto 1fr"] > div:last-child {
        text-align: left !important;
    }
    
    /* Timeline vertical line adjustment */
    section div[style*="position: absolute; left: 50%; transform: translateX(-50%); width: 3px"] {
        left: 30px !important;
        transform: none !important;
    }
    
    /* 2-Column grids to 1 column */
    section div[style*="grid-template-columns: repeat(2, 1fr)"],
    section div[style*="grid-template-columns: repeat(3, 1fr)"] {
        grid-template-columns: 1fr !important;
    }
    
    /* Team Cards Grid */
    section div[style*="grid-template-columns: repeat(auto-fit, minmax(320px, 1fr))"] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }
    
    /* Achievements Ribbon */
    section[style*="background: linear-gradient(135deg, #fbbf24"] div[style*="grid-template-columns: repeat(auto-fit"] {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }
    
    /* CTA Stats Grid - 2x2 */
    section div[style*="grid-template-columns: 1fr 1fr; gap: 1.5rem"] {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 1rem !important;
    }
    
    section div[style*="padding: 2.25rem"][style*="backdrop-filter"] {
        padding: 1.5rem !important;
    }
    
    section div[style*="padding: 2.25rem"][style*="backdrop-filter"] div[style*="font-size: 2.25rem"] {
        font-size: 1.75rem !important;
    }
}

@media (max-width: 480px) {
    /* Hero Stats Single Column */
    section div[style*="grid-template-columns: repeat(auto-fit, minmax(160px, 1fr))"] {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }
    
    section div[style*="padding: 2rem 1.5rem"][style*="backdrop-filter: blur(12px)"] {
        padding: 1.5rem 1rem !important;
    }
    
    section div[style*="font-size: 3rem; font-weight: 900"] {
        font-size: 2.25rem !important;
    }
    
    /* Timeline Number Badges Smaller */
    section div[style*="width: 60px; height: 60px"][style*="border-radius: 50%"] {
        width: 50px !important;
        height: 50px !important;
        font-size: 1.25rem !important;
    }
    
    section div[style*="box-shadow: 0 0 0 8px var(--bg-primary)"] {
        box-shadow: 0 0 0 5px var(--bg-primary), 0 0 0 8px var(--primary-color) !important;
    }
    
    /* Mission & Vision Compact */
    section[style*="padding: 6rem 4rem"] {
        padding: 3rem 1.5rem !important;
    }
    
    section[style*="padding: 6rem 4rem"] h2 {
        font-size: 2rem !important;
    }
    
    section[style*="padding: 6rem 4rem"] p[style*="font-size: 1.15rem"] {
        font-size: 1rem !important;
    }
    
    section[style*="padding: 6rem 4rem"] div[style*="display: flex; gap: 1.5rem"] {
        flex-direction: column !important;
        gap: 1rem !important;
    }
    
    /* CTA Buttons Stack */
    section div[style*="display: flex; gap: 1.25rem; flex-wrap: wrap"] {
        flex-direction: column !important;
    }
    
    section button[style*="padding: 1.25rem 2.75rem"] {
        width: 100% !important;
        padding: 1rem 1.5rem !important;
    }
    
    /* Team Card Images Smaller */
    section div[style*="height: 280px; overflow: hidden"] {
        height: 220px !important;
    }
    
    /* Decorative Circles Smaller */
    section div[style*="width: 300px; height: 300px; background: rgba(255, 255, 255, 0.08)"] {
        width: 200px !important;
        height: 200px !important;
    }
    
    section div[style*="width: 150px; height: 150px; background: rgba(255, 255, 255, 0.05)"] {
        width: 100px !important;
        height: 100px !important;
    }
    
    /* Achievements Cards Compact */
    section div[style*="padding: 2.5rem 2rem"][style*="text-align: center"] {
        padding: 2rem 1.5rem !important;
    }
    
    section div[style*="width: 70px; height: 70px"][style*="margin: 0 auto"] {
        width: 60px !important;
        height: 60px !important;
    }
    
    /* CTA Stats Single Column */
    section div[style*="grid-template-columns: 1fr 1fr; gap: 1.5rem"] {
        grid-template-columns: 1fr !important;
    }
    
    /* Why Choose Us Cards */
    section div[style*="border-top: 4px solid"] {
        padding: 2rem 1.5rem !important;
    }
    
    section div[style*="font-size: 120px; opacity: 0.03"] {
        font-size: 80px !important;
    }
}

/* ============================================
   PLANS PAGE RESPONSIVE STYLES
   ============================================ */

@media (max-width: 1024px) {
    /* Plans Grid - 2 Columns on Tablet */
    section div[style*="display: grid"][style*="grid-template-columns: repeat(auto-fit, minmax(300px, 1fr))"] {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
        gap: 2rem !important;
    }
    
    /* Featured Plan Scale */
    .card.hover-lift[style*="transform: scale(1.05)"] {
        transform: scale(1) !important;
    }
}

@media (max-width: 768px) {
    /* Plans Grid - Single Column */
    section div[style*="display: grid"][style*="grid-template-columns: repeat(auto-fit, minmax(300px, 1fr))"] {
        grid-template-columns: 1fr !important;
    }
    
    /* Plan Card Adjustments */
    .card.hover-lift > div[style*="padding: 2.5rem 2rem"] {
        padding: 2rem 1.5rem !important;
    }
    
    .card.hover-lift > div[style*="padding: 2rem"] {
        padding: 1.5rem !important;
    }
    
    /* ROI Display Compact */
    div[style*="padding: 1.25rem; border-radius: 12px; text-align: center"] {
        padding: 1rem !important;
    }
    
    /* Comparison Table Scroll */
    .card[style*="overflow-x: auto"] {
        -webkit-overflow-scrolling: touch;
    }
    
    .card table {
        min-width: 600px;
    }
    
    .card th,
    .card td {
        font-size: 0.85rem !important;
        padding: 0.75rem !important;
        white-space: nowrap;
    }
    
    /* Plans Hero Stats */
    section div[style*="display: flex; gap: 3rem; justify-content: center"] {
        gap: 1.5rem !important;
        flex-wrap: wrap !important;
    }
    
    section div[style*="padding: 1.75rem 2.5rem"] {
        padding: 1.25rem 1.75rem !important;
    }
    
    /* Plans CTA Section */
    section div[style*="display: flex; gap: 1.5rem; justify-content: center"] {
        flex-direction: column !important;
        gap: 1rem !important;
    }
    
    section button[style*="padding: 1.25rem 2.5rem"] {
        width: 100% !important;
        padding: 1rem !important;
    }
}

@media (max-width: 480px) {
    /* Plan Pricing Text */
    .card span[style*="font-size: 3rem"] {
        font-size: 2.5rem !important;
    }
    
    /* ROI Display */
    div[style*="font-size: 2.25rem; font-weight: 800"] {
        font-size: 1.75rem !important;
    }
    
    /* Plan Icon Boxes */
    div[style*="width: 70px; height: 70px"] {
        width: 60px !important;
        height: 60px !important;
    }
    
    div[style*="width: 70px; height: 70px"] i {
        font-size: 1.5rem !important;
    }
    
    /* Feature List Compact */
    ul[style*="list-style: none"] li {
        padding: 0.5rem 0 !important;
        font-size: 0.9rem !important;
    }
    
    ul[style*="list-style: none"] i {
        font-size: 0.95rem !important;
    }
}

/* ============================================
   CONTACT PAGE RESPONSIVE STYLES
   ============================================ */

@media (max-width: 1024px) {
    /* Contact Form and Sidebar Stack */
    section div[style*="display: grid; grid-template-columns: 1fr 400px"] {
        grid-template-columns: 1fr !important;
        gap: 3rem !important;
    }
    
    /* Contact Hero Stats */
    section .card[style*="padding: 1.75rem 2.5rem"] {
        padding: 1.5rem 2rem !important;
    }
}

@media (max-width: 768px) {
    /* Contact Hero Stats Single Column */
    section div[style*="display: flex; gap: 3rem; justify-content: center"] {
        flex-direction: column !important;
        gap: 1.5rem !important;
        align-items: center !important;
    }
    
    .card[style*="padding: 1.75rem 2.5rem"] {
        width: 100% !important;
        max-width: 300px;
    }
    
    /* Contact Form Inputs Stack */
    form div[style*="display: grid; grid-template-columns: 1fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }
    
    /* Contact Card Padding */
    .card[style*="padding: 3rem"] {
        padding: 2rem !important;
    }
    
    .card[style*="padding: 2.5rem"] {
        padding: 2rem !important;
    }
    
    /* Contact Info Icons */
    div[style*="width: 55px; height: 55px"] {
        width: 50px !important;
        height: 50px !important;
    }
    
    div[style*="width: 55px; height: 55px"] i {
        font-size: 1.1rem !important;
    }
    
    /* Office Cards */
    section div[style*="display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr))"] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }
    
    /* Social Media Grid */
    section div[style*="grid-template-columns: repeat(auto-fit, minmax(200px, 1fr))"] {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    }
    
    /* Live Chat Button */
    div[style*="width: 60px; height: 60px"] {
        width: 55px !important;
        height: 55px !important;
    }
    
    div[style*="width: 60px; height: 60px"] i {
        font-size: 1.5rem !important;
    }
}

@media (max-width: 480px) {
    /* Contact Hero Heading */
    section h1[style*="font-size: clamp(2.75rem, 6vw, 5rem)"] {
        font-size: 2.25rem !important;
    }
    
    /* Contact Form Labels and Inputs */
    .form-label {
        font-size: 0.9rem !important;
    }
    
    .form-control {
        padding: 0.875rem !important;
        font-size: 0.95rem !important;
    }
    
    /* Contact Info Compact */
    div[style*="display: flex; align-items: flex-start; gap: 1.25rem"] {
        gap: 1rem !important;
    }
    
    div[style*="font-weight: 700; margin-bottom: 0.5rem"] {
        font-size: 1rem !important;
    }
    
    /* Office Cards Icon Size */
    div[style*="width: 80px; height: 80px"] {
        width: 65px !important;
        height: 65px !important;
    }
    
    div[style*="width: 80px; height: 80px"] i {
        font-size: 1.75rem !important;
    }
    
    /* Social Media Cards Compact */
    section div[style*="grid-template-columns: repeat(auto-fit, minmax(200px, 1fr))"] {
        grid-template-columns: 1fr !important;
    }
    
    .card[style*="padding: 2.5rem 2rem"] {
        padding: 2rem 1.5rem !important;
    }
    
    /* Social Icon Size */
    div[style*="width: 70px; height: 70px; background: #"] {
        width: 60px !important;
        height: 60px !important;
    }
    
    div[style*="width: 70px; height: 70px; background: #"] i {
        font-size: 1.5rem !important;
    }
}
