/*
Theme Name: Aimo Child
Theme URI: http://demo.casethemes.net/aimo
Author: Case-Themes
Author URI: https://casethemes.net/
Description: Introducing Aimo – The Ultimate AI-Powered WordPress Theme Discover the future of WordPress themes with Aimo. This innovative theme harness the power of artificial intelligence to create a truly adaptable and customizable site for any industry or niche.
Version: 1.0.1
Requires PHP: 7.4
Tested up to: 6.0
License: ThemeForest
License URI: https://themeforest.net/licenses
Template: aimo
Text Domain: aimo-child
Copyright (c) 2024 Case-Themes. All rights reserved.
This theme is licensed under the GPL-2.0+ license.
Tags: ai, ai bots, AI chatgtp, ai generator, artificial intelligence, chat gpt bot, data science, deep learning, digital agency, image generator, machine learning, neural network, support bot
*/
.pxl-swiper-wrapper {
	/*flex-wrap: wrap!important;	*/
	row-gap: 16px;
}
.post-layout-service-1 .pxl-swiper-wrapper {
	flex-wrap: wrap!important;
	row-gap: 16px;
}

/* Remove Loader from mobile view to improve speed and stability */

.pxl-blog-style2 .pxl-post--meta.pxl- {
    display: block !important;
}
@media only screen and (max-width: 766px) {
.pxl-image-2d .item{
	display:block !important;
}
}

button.pxl-file-upload-button {
    border-radius: 5px;
    border: 2px solid #ffffff;
    line-height: 40px !important;
    height: 44px;
    margin-top: 0px;
	background-color:var(--primary-color) !important;

}

input.wpcf7-form-control.wpcf7-file.pxl-file-upload-hidden {
    width: 100% !important;
    height: 40px !important;
    z-index: 222222;
    visibility: visible !important;
    opacity: 0;
}
.pxl-footer-ctf1 {
    padding: 0 15px;
}

/* Changes Aug 08.2025 */

@media (max-width: 768px) {
	#pxl-loadding {
		display: none;	
	}
}

/* Changes Sep 01.2025 */

ul.pxl-pricing--feature.pn-collapsed li:nth-child(n+5) {
    display: none;
}
ul.pxl-pricing--feature li {
    display: list-item;
}


/* Margins & Paddings */

body .elementor-225 .elementor-element.elementor-element-2de86b4 {
	padding: 130px 15px 20px 15px;
}

body .elementor-225 .elementor-element.elementor-element-913aee2 {
	padding: 15px 15px 15px 15px;
}

@media screen and (max-width: 768px) {
	.pxl-pricing1 .pxl-pricing--feature {
		margin-bottom: 10px;
	}
	
	body .elementor-225 .elementor-element.elementor-element-a4268f7 {
		padding: 0px 0px 25px 0px;
	}
	
	body .elementor-225 .elementor-element.elementor-element-dfcde46 {
		padding: 0px 0px 10px 0px;
	}
}

.pxl-item--subtitle.px-sub-title-default {
	display: none;
}




/* CookieBot 08.2025 */

/* #CybotCookiebotDialog {
    position: fixed !important;
    bottom: 20px !important;
    left: 20px !important;
    right: auto !important;
    width: auto !important;
    max-width: 350px !important;
    min-width: 300px !important;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
    overflow: visible !important;
	transform: none !important;
    z-index: 99999;
} */

/* #CybotCookiebotDialog *, #CybotCookiebotDialogBodyUnderlay * {
	font-size: 10px !important;
	
} */


/* Dla mobile – dopasowanie */
/* @media (max-width: 768px) {
    #CybotCookiebotDialog {
        left: 10px !important;
        bottom: 10px !important;
        max-width: 95% !important;
        min-width: auto !important;
    }
} */

@media screen and (max-width: 768px) {
  /* Main cookie banner container */
  #CybotCookiebotDialog {
    width: 90% !important;
    max-width: 350px !important;
    height: auto !important;
    max-height: 60vh !important;
    position: fixed !important;
    bottom: 20px !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    transform: translateX(-50%) !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
    margin: 0 !important;
  }

  /* Cookie banner content */
  #CybotCookiebotDialogBody {
    padding: 15px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  /* Cookie banner title */
  #CybotCookiebotDialogBodyLevelButtonPreferences,
  #CybotCookiebotDialogBodyContentTitle {
    font-size: 16px !important;
    margin-bottom: 5px !important;
    font-weight: 600 !important;
  }

  /* Cookie description text */
  #CybotCookiebotDialogBodyContentText {
    font-size: 13px !important;
    line-height: 1.3 !important;
    margin-bottom: 15px !important;
    max-height: 120px !important;
    overflow-y: auto !important;
  }

  /* Button container */
  #CybotCookiebotDialogBodyLevelButtons {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin-top: 15px !important;
  }

  /* All buttons styling */
  #CybotCookiebotDialogBodyLevelButtons button,
  #CybotCookiebotDialogBodyButtons button {
    padding: 10px 15px !important;
    font-size: 13px !important;
    border-radius: 6px !important;
    border: none !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
  }

  /* Primary accept button */
  #CybotCookiebotDialogBodyLevelButtonAccept,
  #CybotCookiebotDialogBodyButtonAccept {
    background: #007cba !important;
    color: white !important;
    order: 1 !important;
  }

  /* Secondary buttons */
  #CybotCookiebotDialogBodyLevelButtonDecline,
  #CybotCookiebotDialogBodyButtonDecline {
    background: #f1f1f1 !important;
    color: #333 !important;
    order: 3 !important;
  }

  /* Settings/Details button */
  #CybotCookiebotDialogBodyLevelButtonPreferences,
  #CybotCookiebotDialogBodyButtonDetails {
    background: transparent !important;
    color: #007cba !important;
    text-decoration: underline !important;
    order: 2 !important;
    font-size: 12px !important;
    padding: 8px 15px !important;
  }

  /* Hide detailed settings on mobile to save space */
  #CybotCookiebotDialogDetailBody {
    display: none !important;
  }

  /* Compact checkbox layout if shown */
  #CybotCookiebotDialogBodyLevelButtons label {
    font-size: 12px !important;
    margin: 5px 0 !important;
  }

  /* Close button */
  #CybotCookiebotDialogBodyClose {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    width: 24px !important;
    height: 24px !important;
    background: #f1f1f1 !important;
    border-radius: 50% !important;
    border: none !important;
    cursor: pointer !important;
    font-size: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Overlay background - make it less prominent */
  #CybotCookiebotDialogBackground {
    background: rgba(0, 0, 0, 0.3) !important;
  }
}

/* Extra small screens */
@media screen and (max-width: 480px) {
  #CybotCookiebotDialog {
    width: 95% !important;
    max-width: 320px !important;
    bottom: 10px !important;
  }

  #CybotCookiebotDialogBody {
    padding: 9px !important;
  }
	
	#CybotCookiebotDialog *, #CybotCookiebotDialogBodyUnderlay * {
		font-size: 10px !important;
	}
	
	#CybotCookiebotDialogBodyContent {
		padding: 0.53em 0.625em !important;
	}

  #CybotCookiebotDialogBodyContentText {
    max-height: 100px !important;
    font-size: 12px !important;
  }
	
	#CybotCookiebotDialogBodyContentText {
		margin-bottom: 3px !important;
	}
	#CybotCookiebotDialogBodyLevelButtons {
		margin-top: -1px !important;
	}

  #CybotCookiebotDialogBodyLevelButtons button,
  #CybotCookiebotDialogBodyButtons button {
    padding: 2px 12px !important;
    font-size: 12px !important;
  }
}

/* BIG SCREEN LEFT */

 .CybotCookiebotDialogBackdrop,
    #CybotCookiebotDialogBackdrop {
        display: none !important;
        visibility: hidden !important;
    }

    /* Clean positioning for the dialog */
    #CybotCookiebotDialog {
        position: fixed !important;
        bottom: 20px !important;
        left: 20px !important;
        right: auto !important;
        top: auto !important;
        max-width: 420px !important;
        width: 420px !important;
        z-index: 2147483647 !important;
        border-radius: 8px !important;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15) !important;
        background: #ffffff !important;
        border: 1px solid #e1e1e1 !important;
        transform: none !important;
        margin: 0 !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* Prevent any centering or modal behavior */
    #CybotCookiebotDialog.CybotCookiebotDialogActive,
    #CybotCookiebotDialog[style*="transform"] {
        position: fixed !important;
        bottom: 20px !important;
        left: 20px !important;
        right: auto !important;
        top: auto !important;
        transform: none !important;
        margin: 0 !important;
    }

    /* Clean content styling */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyContent {
        padding: 16px !important;
        background: transparent !important;
        border: none !important;
    }

    /* Title styling */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyContentTitle {
        font-size: 15px !important;
        font-weight: 600 !important;
        margin-bottom: 8px !important;
        color: #333 !important;
    }

    /* Description text */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyContentText {
        font-size: 12px !important;
        line-height: 1.4 !important;
        color: #666 !important;
        margin-bottom: 12px !important;
    }

    /* Button container */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyButtons {
        display: flex !important;
        gap: 6px !important;
        margin-top: 12px !important;
        flex-wrap: wrap !important;
    }

    /* Individual buttons */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyButton {
        flex: 1 !important;
        min-width: 75px !important;
        padding: 4px 10px !important;
        border-radius: 4px !important;
        font-size: 11px !important;
        font-weight: 500 !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        text-align: center !important;
        border: none !important;
			line-height: 25px;
    }

    /* Allow All button */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyButtonAccept {
        background-color: #4CAF50 !important;
        color: white !important;
    }

    /* Allow Selection button */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyButtonSettings {
        background-color: #2196F3 !important;
        color: white !important;
    }

    /* Deny button */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyButtonDecline {
        background-color: #f44336 !important;
        color: white !important;
    }

    /* Hover effects */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyButton:hover {
        opacity: 0.9 !important;
        transform: translateY(-1px) !important;
    }

    /* Cookie categories section */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyContentControls {
        margin-top: 10px !important;
        padding-top: 10px !important;
        border-top: 1px solid #eee !important;
    }

    /* Toggle switches */
    #CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButton {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 6px 0 !important;
        font-size: 11px !important;
    }


/* Small screen converted left bottom cookieBot */

@media screen and (max-width: 768px) {
    #CybotCookiebotDialog {
        position: fixed !important;
        bottom: 15px !important;
        left: 15px !important;
        right: 15px !important;
        top: auto !important;
        max-width: none !important;
        width: auto !important;
        z-index: 2147483647 !important;
        border-radius: 8px !important;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15) !important;
        background: #ffffff !important;
        border: 1px solid #e1e1e1 !important;
        transform: none !important;
        margin: 0 !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* Prevent any centering or modal behavior on mobile */
    #CybotCookiebotDialog.CybotCookiebotDialogActive,
    #CybotCookiebotDialog[style*="transform"] {
        position: fixed !important;
        bottom: 15px !important;
        left: 15px !important;
        right: 15px !important;
        top: auto !important;
        transform: none !important;
        margin: 0 !important;
        width: auto !important;
    }
}

/* Extra small screens */
@media screen and (max-width: 480px) {
    #CybotCookiebotDialog {
        bottom: 10px !important;
        left: 10px !important;
        right: 10px !important;
    }

    #CybotCookiebotDialog.CybotCookiebotDialogActive,
    #CybotCookiebotDialog[style*="transform"] {
        bottom: 10px !important;
        left: 10px !important;
        right: 10px !important;
    }
}

/* End Of Cookie~Bot  */



/* Scrollbar */

/* WordPress Navigation Bar Smooth Scrolling Optimization */

/* Main navigation container - covers most WordPress themes */
.navbar,
.nav-menu,
.main-navigation,
.site-navigation,
#main-nav,
.elementor-nav-menu,
.site-header {
    /* Enable hardware acceleration for smooth performance */
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    will-change: transform;
    
    /* Smooth transitions with optimized easing */
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    
    /* Optimize rendering performance */
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    perspective: 1000px;
}

/* Sticky/Fixed navbar optimization - crucial for smooth scrolling */
.navbar.sticky,
.navbar.fixed,
.site-header.sticky,
.elementor-sticky,
.fixed-header {
    /* Use transform instead of top/position changes for better performance */
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    
    /* Smooth sticky behavior */
    transition: transform 0.3s ease-out, background-color 0.3s ease;
    -webkit-transition: -webkit-transform 0.3s ease-out, background-color 0.3s ease;
}

/* Mobile-specific optimizations */
@media (max-width: 768px) {
    .navbar,
    .nav-menu,
    .main-navigation,
    .site-header {
        /* Enable momentum scrolling on iOS Safari */
        -webkit-overflow-scrolling: touch;
        
        /* Optimize for mobile rendering */
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        
        /* Faster transitions for mobile */
        transition: transform 0.2s ease-out;
        -webkit-transition: -webkit-transform 0.2s ease-out;
    }
    
    /* Mobile hamburger menu optimization */
    .mobile-menu,
    .nav-menu.mobile,
    .hamburger-menu {
        /* Hardware acceleration for mobile menu */
        transform: translate3d(0, 0, 0);
        -webkit-transform: translate3d(0, 0, 0);
        will-change: transform, opacity;
        
        /* Smooth mobile menu animations */
        transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
        -webkit-transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    }
}

/* Optimize individual menu items */
.navbar a,
.nav-menu a,
.main-navigation a,
.elementor-nav-menu a,
.menu-item a {
    /* Hardware acceleration for menu links */
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    
    /* Smooth hover transitions */
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
}

/* Dropdown/submenu optimization */
.navbar .dropdown-menu,
.nav-menu .sub-menu,
.main-navigation .sub-menu,
.elementor-nav-menu .sub-menu {
    /* Hardware acceleration for dropdowns */
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    will-change: transform, opacity;
    
    /* Smooth dropdown animations */
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Optimize scroll performance during scrolling */
.scrolling .navbar,
.scrolling .site-header {
    /* Disable pointer events during scroll for better performance */
    pointer-events: none;
    transition: none;
    -webkit-transition: none;
}

.scrolling .navbar *,
.scrolling .site-header * {
    pointer-events: auto;
}

/* Performance optimizations for layout and rendering */
.navbar,
.site-header,
.main-navigation {
    /* Contain layout and paint operations for better performance */
    contain: layout style paint;
    
    /* Create new stacking context for better compositing */
    isolation: isolate;
}

/* Elementor-specific optimizations */
.elementor-section.navbar-section,
.elementor-container.navbar-container,
.elementor-widget-nav-menu {
    /* Hardware acceleration for Elementor navigation elements */
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    will-change: transform;
}

/* Global smooth scrolling improvements */
html {
    scroll-behavior: smooth;
}

/* Overall page scroll optimization */
body {
    /* Enable hardware acceleration for entire page */
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    
    /* Optimize touch scrolling on mobile devices */
    -webkit-overflow-scrolling: touch;
}

/* Accessibility: Respect user's motion preferences */
@media (prefers-reduced-motion: reduce) {
    .navbar,
    .nav-menu,
    .main-navigation,
    .elementor-nav-menu,
    .site-header {
        transition: none;
        -webkit-transition: none;
        animation: none;
    }
    
    html {
        scroll-behavior: auto;
    }
}

/* Additional optimization for common WordPress themes */
.header-wrapper,
.site-branding,
.custom-logo {
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
}

/* Optimize search and other interactive elements in navbar */
.navbar .search-form,
.navbar .search-field,
.site-header .search-toggle {
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
}