/*==================================================================
  LAPTOP & DESKTOP RESPONSIVE CSS
  - Optimized for all laptop sizes (1024px - 1920px+)
  - Ensures proper layout on large screens
  - Created: 2026-07-15
==================================================================*/

/*==================================================================
  SMALL LAPTOPS & TABLETS LANDSCAPE (1024px - 1366px)
==================================================================*/
@media screen and (min-width: 1024px) and (max-width: 1366px) {

    /* Container max-width */
    .container,
    .wrapper,
    main {
        max-width: 1200px !important;
        margin: 0 auto !important;
        padding: 0 30px !important;
    }

    /* Header */
    .top-navbar {
        padding: 10px 30px !important;
    }

    /* Hero Section */
    .hero-slide {
        min-height: 500px !important;
        padding: 50px 30px !important;
    }

    .hero-container h1 {
        font-size: 42px !important;
        line-height: 1.3 !important;
    }

    .hero-container-para2 {
        font-size: 18px !important;
        line-height: 1.6 !important;
    }

    /* Section Headings */
    h2 {
        font-size: 36px !important;
    }

    h3 {
        font-size: 24px !important;
    }

    /* Grid Layouts - 3 columns */
    .service-solutions-autoplay .slick-track,
    .our-expert-grid-container,
    .how-it-works-grid-container,
    .pricing-plan-grid-container,
    .gallery-card-container,
    .projects-card-container,
    .clean-energy-right-container {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
    }

    /* Cards */
    .service-solutions-card,
    .our-expert-grid-card,
    .projects-card,
    .how-it-works-grid-box {
        padding: 20px !important;
    }

    /* Images */
    .service-solutions-img,
    .our-expert-grid-card img,
    .project-main-img {
        max-height: 280px !important;
        object-fit: cover !important;
    }

    /* Two Column Layouts */
    .why-choose-us-container,
    .clean-energy-container,
    .about-container,
    .contact-container,
    .testimonial-container {
        display: flex !important;
        flex-direction: row !important;
        gap: 40px !important;
        align-items: center !important;
    }

    .why-choose-us-left-container,
    .clean-energy-left-container,
    .about-left-container,
    .contact-left-container,
    .testimonial-left-container {
        flex: 1 !important;
        max-width: 50% !important;
    }

    .why-choose-us-right-container,
    .clean-energy-right-container,
    .about-right-container,
    .contact-right-container,
    .testimonial-right-container {
        flex: 1 !important;
        max-width: 50% !important;
    }

    /* Footer */
    .footer-container {
        padding: 50px 30px !important;
    }

    .footer-links-container {
        display: flex !important;
        gap: 30px !important;
    }
}

/*==================================================================
  MEDIUM LAPTOPS & STANDARD DESKTOPS (1367px - 1600px)
==================================================================*/
@media screen and (min-width: 1367px) and (max-width: 1600px) {

    /* Container max-width */
    .container,
    .wrapper,
    main {
        max-width: 1320px !important;
        margin: 0 auto !important;
        padding: 0 40px !important;
    }

    /* Header */
    .top-navbar {
        padding: 12px 40px !important;
    }

    /* Hero Section */
    .hero-slide {
        min-height: 600px !important;
        padding: 60px 40px !important;
    }

    .hero-container h1 {
        font-size: 52px !important;
        line-height: 1.2 !important;
    }

    .hero-container-para2 {
        font-size: 20px !important;
        line-height: 1.6 !important;
    }

    /* Section Headings */
    h2 {
        font-size: 42px !important;
    }

    h3 {
        font-size: 28px !important;
    }

    /* Grid Layouts - 4 columns */
    .service-solutions-autoplay .slick-track,
    .our-expert-grid-container,
    .how-it-works-grid-container,
    .gallery-card-container,
    .projects-card-container {
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 25px !important;
    }

    /* Clean Energy & Pricing - 3 columns */
    .clean-energy-right-container,
    .pricing-plan-grid-container {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 25px !important;
    }

    /* Cards */
    .service-solutions-card,
    .our-expert-grid-card,
    .projects-card,
    .how-it-works-grid-box {
        padding: 25px !important;
    }

    /* Images */
    .service-solutions-img,
    .our-expert-grid-card img,
    .project-main-img {
        max-height: 320px !important;
        object-fit: cover !important;
    }

    /* Two Column Layouts */
    .why-choose-us-container,
    .clean-energy-container,
    .about-container,
    .contact-container,
    .testimonial-container {
        gap: 50px !important;
    }

    /* Footer */
    .footer-container {
        padding: 60px 40px !important;
    }

    .footer-links-container {
        gap: 40px !important;
    }
}

/*==================================================================
  LARGE DESKTOPS & WIDE SCREENS (1601px - 1920px)
==================================================================*/
@media screen and (min-width: 1601px) and (max-width: 1920px) {

    /* Container max-width */
    .container,
    .wrapper,
    main {
        max-width: 1536px !important;
        margin: 0 auto !important;
        padding: 0 50px !important;
    }

    /* Header */
    .top-navbar {
        padding: 15px 50px !important;
    }

    /* Hero Section */
    .hero-slide {
        min-height: 700px !important;
        padding: 80px 50px !important;
    }

    .hero-container {
        max-width: 1400px !important;
    }

    .hero-container h1 {
        font-size: 62px !important;
        line-height: 1.2 !important;
    }

    .hero-container-para2 {
        font-size: 22px !important;
        line-height: 1.7 !important;
    }

    /* Section Headings */
    h2 {
        font-size: 48px !important;
    }

    h3 {
        font-size: 32px !important;
    }

    p {
        font-size: 18px !important;
        line-height: 1.8 !important;
    }

    /* Grid Layouts - 4 columns */
    .service-solutions-autoplay .slick-track,
    .our-expert-grid-container,
    .how-it-works-grid-container,
    .gallery-card-container,
    .projects-card-container {
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 30px !important;
    }

    /* Clean Energy & Pricing - 3 columns */
    .clean-energy-right-container,
    .pricing-plan-grid-container {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 30px !important;
    }

    /* Cards */
    .service-solutions-card,
    .our-expert-grid-card,
    .projects-card,
    .how-it-works-grid-box {
        padding: 30px !important;
    }

    /* Images */
    .service-solutions-img,
    .our-expert-grid-card img,
    .project-main-img {
        max-height: 380px !important;
        object-fit: cover !important;
    }

    /* Two Column Layouts */
    .why-choose-us-container,
    .clean-energy-container,
    .about-container,
    .contact-container,
    .testimonial-container {
        gap: 60px !important;
    }

    /* Footer */
    .footer-container {
        padding: 80px 50px !important;
    }

    .footer-links-container {
        gap: 50px !important;
    }
}

/*==================================================================
  ULTRA-WIDE SCREENS (1921px+) - 4K, 5K, Ultra-wide monitors
==================================================================*/
@media screen and (min-width: 1921px) {

    /* Container max-width - prevent content from being too wide */
    .container,
    .wrapper,
    main {
        max-width: 1920px !important;
        margin: 0 auto !important;
        padding: 0 80px !important;
    }

    /* Header */
    .top-navbar {
        padding: 20px 80px !important;
        max-width: 1920px !important;
        margin: 0 auto !important;
    }

    /* Hero Section */
    .hero-slide {
        min-height: 800px !important;
        padding: 100px 80px !important;
    }

    .hero-container {
        max-width: 1600px !important;
    }

    .hero-container h1 {
        font-size: 72px !important;
        line-height: 1.2 !important;
    }

    .hero-container-para2 {
        font-size: 24px !important;
        line-height: 1.8 !important;
    }

    /* Section Headings */
    h2 {
        font-size: 56px !important;
    }

    h3 {
        font-size: 36px !important;
    }

    p {
        font-size: 20px !important;
        line-height: 1.8 !important;
    }

    /* Grid Layouts - 5 columns on ultra-wide */
    .service-solutions-autoplay .slick-track,
    .our-expert-grid-container,
    .how-it-works-grid-container,
    .gallery-card-container,
    .projects-card-container {
        grid-template-columns: repeat(5, 1fr) !important;
        gap: 40px !important;
    }

    /* Clean Energy & Pricing - 4 columns */
    .clean-energy-right-container,
    .pricing-plan-grid-container {
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 40px !important;
    }

    /* Cards */
    .service-solutions-card,
    .our-expert-grid-card,
    .projects-card,
    .how-it-works-grid-box {
        padding: 40px !important;
    }

    /* Images */
    .service-solutions-img,
    .our-expert-grid-card img,
    .project-main-img {
        max-height: 450px !important;
        object-fit: cover !important;
    }

    /* Two Column Layouts - keep reasonable width on ultra-wide */
    .why-choose-us-container,
    .clean-energy-container,
    .about-container,
    .contact-container,
    .testimonial-container {
        max-width: 1800px !important;
        margin: 0 auto !important;
        gap: 80px !important;
    }

    /* Footer */
    .footer-container {
        max-width: 1920px !important;
        margin: 0 auto !important;
        padding: 100px 80px !important;
    }

    .footer-links-container {
        gap: 60px !important;
    }

    /* Buttons - larger on ultra-wide */
    .btn,
    .get-a-quote-btn,
    .our-services-btn {
        font-size: 20px !important;
        padding: 16px 40px !important;
    }
}

/*==================================================================
  GENERAL LAPTOP/DESKTOP OPTIMIZATIONS (All screens 1024px+)
==================================================================*/
@media screen and (min-width: 1024px) {

    /* Ensure smooth scrolling */
    html {
        scroll-behavior: smooth !important;
    }

    /* Body */
    body {
        overflow-x: hidden !important;
        width: 100% !important;
    }

    /* All sections - proper spacing */
    section,
    .section {
        padding: 60px 0 !important;
    }

    /* Cards - proper hover effects */
    .service-solutions-card:hover,
    .our-expert-grid-card:hover,
    .projects-card:hover,
    .how-it-works-grid-box:hover,
    .latest-news-grid-card:hover {
        transform: translateY(-8px) !important;
        box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15) !important;
        transition: all 0.3s ease !important;
    }

    /* Images - proper aspect ratio */
    .service-solutions-img,
    .our-expert-grid-card img,
    .project-main-img,
    .gallery-img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4/3 !important;
        object-fit: cover !important;
        border-radius: 10px !important;
    }

    /* Buttons - proper sizing */
    .btn,
    .get-a-quote-btn,
    .our-services-btn,
    button[type="submit"] {
        padding: 14px 32px !important;
        font-size: 16px !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        transition: all 0.3s ease !important;
    }

    .btn:hover,
    .get-a-quote-btn:hover,
    .our-services-btn:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 6px 20px rgba(52, 83, 10, 0.3) !important;
    }

    /* Forms - proper width */
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="password"],
    textarea,
    select {
        width: 100% !important;
        padding: 12px 16px !important;
        font-size: 16px !important;
        border-radius: 8px !important;
        border: 1px solid #ddd !important;
    }

    /* Footer - multi-column layout */
    .footer-top-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        gap: 40px !important;
    }

    .footer-links-container {
        display: flex !important;
        gap: 30px !important;
    }

    /* Testimonials - side by side */
    .testimonial-container {
        display: flex !important;
        flex-direction: row !important;
        gap: 40px !important;
        align-items: center !important;
    }

    .testimonial-left-container {
        flex: 0 0 400px !important;
        max-width: 400px !important;
    }

    .testimonial-right-container {
        flex: 1 !important;
    }

    /* Contact Page - side by side */
    .contact-container,
    .modern-contact-wrapper {
        display: flex !important;
        flex-direction: row !important;
        gap: 40px !important;
    }

    .contact-left-container {
        flex: 1 !important;
    }

    .contact-right-container {
        flex: 1 !important;
    }

    /* Gallery - proper grid */
    .gallery-card-container,
    .projects-card-container {
        display: grid !important;
        gap: 25px !important;
    }

    /* Blog - masonry layout */
    .masonry-grid {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 25px !important;
    }

    /* Pricing Plans - 3 columns */
    .pricing-plan-grid-container {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 25px !important;
    }

    /* Stats - 4 columns */
    .stats-container {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 25px !important;
    }

    /* Team - 4 columns */
    .team-grid {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 25px !important;
    }

    /* Desktop Navigation - show */
    .desktop-nav {
        display: flex !important;
    }

    /* Mobile Menu - hide */
    .menu-toggle,
    .mobile-nav {
        display: none !important;
    }

    /* Hide cursor dot (custom cursor) on laptops if needed */
    .cursor {
        display: block !important;
    }
}

/*==================================================================
  FIX: Prevent horizontal scroll on all laptop sizes
==================================================================*/
@media screen and (min-width: 1024px) {
    html,
    body {
        overflow-x: hidden !important;
        max-width: 100vw !important;
    }

    * {
        box-sizing: border-box !important;
    }

    .row,
    [class*="row"] {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .container-fluid {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

/*==================================================================
  END OF LAPTOP/DESKTOP RESPONSIVE CSS
==================================================================*/
