/* Theme Name: Logico Child Description: Logico Child Theme Theme URI: https://demo.artureanec.com/themes/logico Author: Artureanec Author URI: https://demo.artureanec.com Template: logico Version: 1.0.0 License: GNU General Public License version 3.0 License URI: http://www.gnu.org/licenses/gpl-3.0.html Text Domain: logico-child */ /* =Theme customization starts here ------------------------------------------------------- */ /* Hide mobile-specific logo by default */ .logo-mobile { display: none !important; } /* ============================================================ MOBILE & TABLET HEADER REFINEMENT (< 1320px) Transition to mobile pill-shape earlier to prevent desktop overlap/wrapping ============================================================ */ @media (max-width: 1320px) { /* Logo toggling */ .logo-desktop { display: none !important; } .logo-mobile { display: block !important; } /* 1. Header Wrapper (Outer): Position & Spacing */ .elementor-5180 .elementor-element.elementor-element-466de1b { position: fixed !important; top: 30px !important; left: 0 !important; right: 0 !important; width: 100% !important; padding-left: 20px !important; padding-right: 20px !important; height: auto !important; z-index: 10000 !important; background: transparent !important; pointer-events: none; } /* 2. The Header Box / Card (Inner) */ .elementor-5180 .elementor-element.elementor-element-e052838 { margin: 0 10px auto !important; width: 100% !important; max-width: 100% !important; background-color: #ffffff !important; border-radius: 25px !important; overflow: hidden !important; box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08) !important; pointer-events: all; display: flex !important; flex-direction: column !important; } /* 3. Main Row Layout Container */ .elementor-5180 .elementor-element.elementor-element-d681ece { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; width: 100% !important; padding: 12px 25px !important; min-height: 70px !important; box-sizing: border-box !important; gap: 0 !important; } /* 4. Logo Container (Left) */ .elementor-5180 .elementor-element.elementor-element-472172e { flex: 1 !important; display: flex !important; align-items: center !important; justify-content: flex-start !important; padding: 0 !important; margin: 0 !important; } /* 5. Menu Container (Right / Hamburger) */ .elementor-5180 .elementor-element.elementor-element-e44ee7e { flex: 0 0 auto !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; padding: 0 !important; margin: 0 !important; } /* 6. Logo Widget Adjustments */ .elementor-5180 .elementor-element.elementor-element-846e53d { width: auto !important; margin: 0 !important; display: flex !important; align-items: center !important; max-width: none !important; } .elementor-5180 .elementor-element.elementor-element-846e53d .hfe-site-logo .hfe-site-logo-container img { margin: 0 !important; max-width: none !important; } .elementor-5180 .elementor-element.elementor-element-846e53d .logo-mobile { width: 180px !important; height: auto !important; min-width: 100px !important; } /* 7. Menu Trigger (Hamburger) alignment */ .elementor-5180 .elementor-element.elementor-element-0b7bf6f .menu-trigger { display: flex !important; align-items: center !important; justify-content: flex-end !important; padding: 5px !important; margin: 0 !important; } /* Hamburger icon customization */ .elementor-5180 .elementor-element.elementor-element-0b7bf6f .hamburger { width: 30px !important; } .elementor-5180 .elementor-element.elementor-element-0b7bf6f .hamburger span { background-color: #1f1f1f !important; height: 2px !important; margin-bottom: 5px !important; } /* Hide desktop-only elements */ .elementor-5180 .elementor-element.elementor-element-0b7bf6f .header-menu-container, .elementor-5180 .elementor-element.elementor-element-2f31137, .elementor-5180 .elementor-element.elementor-element-f961133 { display: none !important; } } /* ============================================================ MEDIUM DESKTOP OPTIMIZATION (1321px - 1480px) Prevents logo/menu overlap on medium screens ============================================================ */ @media (min-width: 1321px) and (max-width: 1480px) { /* Reduce logo size slightly */ .elementor-5180 .elementor-element.elementor-element-846e53d .logo-desktop { width: 130px !important; height: auto !important; } /* Force single line and tighten spacing */ .elementor-5180 .main-menu { display: flex !important; flex-wrap: nowrap !important; white-space: nowrap !important; } .elementor-5180 .main-menu > li > a { padding-left: 8px !important; padding-right: 8px !important; font-size: 13px !important; } /* Reduce container spacing */ .elementor-5180 .elementor-element.elementor-element-d681ece { padding-left: 15px !important; padding-right: 15px !important; gap: 10px !important; } /* Ensure the menu pill container stays compact */ .header-menu-container { padding-left: 8px !important; padding-right: 8px !important; max-width: 750px !important; } /* Scale down the CTA button */ .elementor-5180 .logico-small-button { padding: 10px 20px !important; font-size: 13px !important; } } /* Tablet Scaling (768px - 1024px) */ @media (max-width: 1024px) and (min-width: 768px) { .elementor-5180 .elementor-element.elementor-element-846e53d .logo-mobile { width: 210px !important; } } /* Standard Mobile Scaling */ @media (max-width: 767px) { .elementor-5180 .elementor-element.elementor-element-846e53d .logo-mobile { width: 175px !important; } } /* Extra Small Devise Optimization */ @media (max-width: 480px) { .elementor-5180 .elementor-element.elementor-element-466de1b { top: 15px !important; padding-left: 15px !important; padding-right: 15px !important; } .elementor-5180 .elementor-element.elementor-element-d681ece { padding: 6px 20px !important; min-height: 55px !important; /* Smaller height for small screens */ } .elementor-5180 .elementor-element.elementor-element-846e53d .logo-mobile { width: 155px !important; /* Scaled down for tiny screens */ } } /* ============================================================ HOME SECTION IMAGE RESPONSIVENESS (wp-image-4481) ============================================================ */ /* Fix for Tablet and Mobile */ @media (max-width: 1024px) { .elementor-element.elementor-element-99768ba .elementor-widget-container img.wp-image-4481 { width: 100% !important; max-width: 450px !important; /* Prevent oversized/zoomed appearance on tablets */ height: auto !important; aspect-ratio: auto !important; /* Maintain original proportions */ object-fit: contain !important; /* Ensure no cropping of important content */ margin: 0 auto !important; /* Centering */ display: block !important; padding-bottom: 0px !important; /* Spacing below the image */ } /* Ensure parent container centers the image */ .elementor-element.elementor-element-99768ba { text-align: center !important; } } /* Specific scaling for small mobile phones */ @media (max-width: 767px) { .elementor-element.elementor-element-99768ba .elementor-widget-container img.wp-image-4481 { max-width: 90% !important; /* Reduce scale on small screens */ margin: 0 auto !important; border-radius: 18px !important; /* Consistent rounded edges */ } } /* ============================================================ WHY CHOOSE DOORMILE SECTION RESPONSIVENESS (< 1020px) ============================================================ */ @media (max-width: 1020px) { /* 1. Parent Wrapper: Switch to Column Stack */ .elementor-element.elementor-element-ead59d3 { display: flex !important; flex-direction: column !important; padding-top: 50px !important; padding-bottom: 50px !important; } /* 2. Absolute Image: Pull into Flow and Place First */ .elementor-element.elementor-element-f35119c { position: relative !important; width: 100% !important; max-width: 500px !important; /* Optimal tablet/mobile size */ margin: 0 auto 40px !important; /* Center and add spacing below */ left: auto !important; top: auto !important; order: -1 !important; /* Force to top of stack */ transform: none !important; display: none !important; } /* 3. Content Section: Expand to 100% Width */ .elementor-element.elementor-element-56ecbb3, .elementor-element.elementor-element-56ecbb3 .e-con-inner, .elementor-element.elementor-element-47f8cbe { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding-left: 20px !important; padding-right: 20px !important; } /* Align content consistently for stacked view */ .elementor-element.elementor-element-47f8cbe { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; } /* Adjust specific widgets inside content */ .elementor-element.elementor-element-47f8cbe .logico-title { margin-left: auto !important; margin-right: auto !important; } } /* ============================================================ PROBLEM SECTION - Responsive Layout Fix Targets: "Fragmented Logistics is Broken" section only No button styles included. ============================================================ */ /* Prevent horizontal overflow on the outer container */ .elementor-element.section-shrink-custom[data-id="30fd9d1"], .elementor-element.section-shrink-custom[data-id="30fd9d1"] > .e-con-inner { overflow-x: hidden !important; box-sizing: border-box !important; } @media (max-width: 1024px) { /* Full width with padding so content doesn't touch screen edges */ .elementor-element.section-shrink-custom[data-id="30fd9d1"] > .e-con-inner { max-width: 100% !important; width: 100% !important; padding-left: 20px !important; padding-right: 20px !important; } /* The 4-icon stat grid: wrap into 2 columns on tablet */ .elementor-element.elementor-element-e09c20e { grid-template-columns: repeat(2, 1fr) !important; gap: 24px !important; } /* Description text: prevent overflow */ .elementor-element.elementor-element-5a5c397, .elementor-element.elementor-element-07cd509 { width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; } .elementor-element.elementor-element-07cd509 p { width: 100% !important; overflow-wrap: break-word !important; word-break: break-word !important; } } @media (max-width: 480px) { /* Single column on small mobile */ .elementor-element.elementor-element-e09c20e { grid-template-columns: 1fr !important; } } /* ============================================================ HEADER SCROLL VISIBILITY Home page: hidden until scroll. All other pages: always visible. ============================================================ */ /* Home page: header fades in after scroll (JS adds .header-visible-scrolled) */ .is-home-page .header-hide-until-scroll { opacity: 0 !important; visibility: hidden !important; transform: translateY(-20px); transition: opacity 0.5s ease, visibility 0.5s ease, transform 0.5s ease !important; } .is-home-page .header-hide-until-scroll.header-visible-scrolled { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; } /* Non-home pages: always show header */ body:not(.is-home-page) .header-hide-until-scroll { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; } /* ============================================================ PROBLEM SECTION - Responsive Text & Layout Fix ============================================================ */ /* Prevent overflow at the section container level */ .elementor-element.section-shrink-custom[data-id="30fd9d1"] { overflow-x: hidden !important; max-width: 100vw !important; } .elementor-element.section-shrink-custom[data-id="30fd9d1"] > .e-con-inner { max-width: 1480px !important; width: 100% !important; margin-left: auto !important; margin-right: auto !important; box-sizing: border-box !important; } /* @media (min-width: 1300px) { .elementor-element.section-shrink-custom[data-id="30fd9d1"] > .e-con-inner { max-width: 1300px !important; padding: 0px 50px 10px !important; } } */ @media (max-width: 1024px) { .elementor-element.section-shrink-custom[data-id="30fd9d1"] > .e-con-inner { max-width: 100% !important; padding-left: 20px !important; padding-right: 20px !important; } /* Left column (heading + stats + text): full width */ .elementor-element.elementor-element-03db5d7 { width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; } /* Stats grid: 2 columns on tablet */ .elementor-element.elementor-element-e09c20e { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 20px !important; width: 100% !important; } /* Description text block: prevent overflow */ .elementor-element.elementor-element-5a5c397 { width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; } .elementor-element.elementor-element-07cd509 { width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; } /* Force all text to wrap properly */ .section-shrink-custom p, .section-shrink-custom h3, .section-shrink-custom span { max-width: 100% !important; word-break: break-word !important; overflow-wrap: break-word !important; white-space: normal !important; } } @media (max-width: 480px) { /* Single column stats on small phones */ .elementor-element.elementor-element-e09c20e { grid-template-columns: 1fr !important; } } /* ============================================================ PAGE LOADER - Must cover header on all viewports Header uses z-index: 10000 so loader needs higher ============================================================ */ .page-loader-container { z-index: 100000 !important; } /* ============================================================ CONNECTED LOGISTICS - India Map Image Sizing Widen the map column to fill the gap on the right side ============================================================ */ @media (min-width: 1021px) { /* Image column: force wider */ .elementor-element.elementor-element-96343ba { width: 50% !important; max-width: 60% !important; flex: 0 0 48% !important; padding-right: 10px !important; } /* Text column: take the remaining space */ .elementor-element.elementor-element-71c3e1d { width: 52% !important; max-width: 52% !important; flex: 0 0 52% !important; } /* Map image: fill the wider container */ .elementor-element.elementor-element-99768ba img { width: 100% !important; height: auto !important; object-fit: cover; border-radius: 25px; } }