/*
	Main CSS THEME
*/

@import "./general/variables.css";
@import "./general/font-color.css";
@import "./general/font-general.css";
@import "./general/font-sizes.css";

@import "./general/buttons.css";
@import "./general/cf7.css";

@import "./general/containers.css";

@import "./general/spacing.css";
@import "./general/general.css";

@import "./general/effects.css";

@import "./components/menu.css";
@import "./components/mega-menu.css";

@import "./components/Footer/footer.css";

@import "./components/popup.css";

@import "./components/Headers/mobile-menu/mob-menu_handle.css";



/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
------------------------------------------ Scrollbar --------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/ 
     body {
        overflow-y: overlay;
     }
    ::-webkit-scrollbar-track
    {
        border-radius: 10px;
        -webkit-box-shadow: unset;
        background-color: transparent;
    }
    ::-webkit-scrollbar
    {
        width: 5px;
        height: 10px; 
        -webkit-box-shadow: unset;
        background-color: transparent;
    }
    ::-webkit-scrollbar-thumb
    {
        border-radius: 10px;
        -webkit-box-shadow: unset;
        background-color: var(--color-main)
    }
    [data-wpr-lazyrender] {
        content-visibility: unset !important;
    }
    #coming-soon-footer-banner,
    .edit-link {
        display: none;
    }

    .stripe-content .link-arrow {
        margin-right: 2.083vw;
    }
    span.screen-reader-text {
        display: none !important;
    }    

    /* Divider Color
    -----------------------------------------*/
        .divider {
            background-color: var(--color-gray);
        }
        .divider.white {
            background-color: var(--color-pure-white);
        }
        .divider-c-1 {
            background-color: var(--color_1);
        }        


/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
----------------------------------- Theme Background Colors -------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
    .theme-b-main {
        background-color: var(--color-main);
    }
    .theme-b-main- {
        background-color: var(--color-main-);
    }
    .theme-b-main-- {
        background-color: var(--color-main--);
    }
    .theme-b-1 {
        background-color: var(--color_1);
    }
    .theme-b-1- {
        background-color: var(--color_1-);
    }

    .theme-b-2 {
        background-color: var(--color_2);
    }

    .theme-b-gray {
        background-color: var(--color-gray);
    }
    .theme-b-gray- {
        background-color: var(--color-gray-);
    }


/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
----------------------------------- Grid general classes ----------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/

	/* General spacing of content 4/5/6 col grid */
	.content-sp {
		padding: 1.042vw;
	}
	.content-sp.abs-p {
		padding: 1.823vw 3.125vw 1.823vw 1.563vw;
	}
	.content-sp_02 {
		padding: 1.563vw;
	}
	.content-sp_03 {
		padding: 2.604vw 6.771vw 2.604vw 3.125vw; /*50px 130px 50px 60px */
	}

	/* When content is under img with bk text and same height */
	.content-equal-h {
    	height: 12.5vw;
    }
	.content-equal-h .btn {
	    margin-top: 1.042vw;
	    min-width: 100%;
	}

   /* One col grid / Banner */
	.one-col-grid .content-sp.abs-p {
        padding: 4.167vw; /*80*/
	}	
	/* Banner with centered content */
	.banner-c .col-content-inner {
	    max-width: 50%;
	    margin: auto;
	}
	/* Banner with content on top left */
	.banner-tl .col-content-inner {
	    max-width: 65%;
	}
	/* Banner with content on bottom left */
	.banner-bl .col-content-inner {
	    max-width: 55%;
	}

	/* Two col grid */
	.two-col-grid .content-sp.abs-p {
	    padding: 2.083vw 3.125vw 1.563vw 1.563vw;
	}
    .two-col-grid .col-content-btn .link-arrow,
    .two-col-grid .col-content-btn .btn {
        margin-top: 2.083vw;
    }
	/* Three col grid */
	.three-col-grid .content-sp.abs-p {
	    padding: 3.125vw 4.167vw 2.083vw 2.083vw;
	}
	.three-col-grid .col-content-btn .btn,
	.four-col-grid .col-content-btn .btn,
	.five-col-grid .col-content-btn .btn,
	.six-col-grid .col-content-btn .btn,
    .carousel .add-to-cart-btn .btn {
	    margin-top: 0.938vw;
	}
    
/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
----------------------------------- Img Height Classes ------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/

	/* Apply on es: <div class="three-col-grid img-size_01"> */
	.img-size_full img {
		height: 100vh;
	}
	.img-size_full_01 img {
		height: 120vh;
	}
    .img-size_0 img {
        height: 21.875vw; /*420*/
        min-height: 300px;
    }
	.img-size_00 img {
	    height: 25.781vw; /*495*/
	    min-height: 300px;
	}
	.img-size_01 img {
		height: 29.688vw; /*570*/
		min-height: 420px;
	}
	.img-size_02 img {
		height: 31.25vw; /*600*/
		min-height: 530px;
	}
    .img-size_03 img {
        height: 34.896vw; /*670*/
        min-height: 560px;
    }
    .img-size_04 img {
        height: 37.5vw; /*720*/
        min-height: 600px;
    }

/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
----------------------------------- Box Height Classes ------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/

    /* Apply on es: <div class="three-col-grid box-size_01"> */
        .box-size_01 .col-content {
            height: 16.667vw;
            min-height: 280px;
        }


/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------- Title + btn / link structure -----------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
    .stripe-content.align-c .link-arrow, .stripe-content.align-c .btn {
        min-width: max-content;
    }
    .stripe-title.flex-grow {
        margin-right: 2em;
    }

/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
----------------------------------- Default Header Rules ----------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
    header {
        position: relative;
        z-index: 10 !important;
    }

    /* Breadcumbs
    ----------------------------------------------------------------*/
        .breadcrumbs > * {
            font-family: var(--rg-font);
        }
        .breadcrumbs .breadcrumbs-divider {
            margin: 0 1.5em;
        }
        .breadcrumbs > *:first-child {
            margin-left: 0;
        }
        .breadcrumbs > *:last-child {
            margin-right: 0;
        }
        .breadcrumbs {
            font-family: var(--rg-font);
        }
        .breadcrumbs a {
            font-family: var(--md-font);
        }
        #breadcrumbs a:hover {
            text-decoration: underline;
            text-underline-offset: 2px;
        }        
	    #breadcrumbs {
	        position: relative;
	        z-index: 2;
	    }
	    #breadcrumbs .current-item {
	        font-family: var(--rg-font);
	    }
	    #breadcrumbs a:hover,
	    #breadcrumbs a:hover * {
	        color: var(--color-main-);
	    }

    /* Sticky Header 
    --------------------------------------------*/
        header .top-header-wrapper.still-sticky {
            z-index: 4;
        }
        header .top-header-wrapper.still-sticky {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            transform: translateY(-100%);
            box-shadow: 0px 1px 20px rgb(0 7 148 / 15%);
        }
        header .top-header-wrapper.still-sticky.sticky-header {
            transform: translateY(0);
            transition: transform 0.3s ease-in-out;
        }
        header .top-header-wrapper.still-sticky.sticky-header .logo-sticky {
            position: absolute;
            top: 50%;
            left: 3.125vw;
            height: 80%;
            transform: translateY(-50%);
            display: block !important;
        }


    /* Slider timed dots
    --------------------------------------------*/
        @-webkit-keyframes bulletGrow {
            0% { 
                transform: translateX(-100%);
            }
            100% { 
                transform: translateX(0);
            }
        }
        @keyframes bulletGrow {
            0% { 
                transform: translateX(-100%);
            }
            100% { 
                transform: translateX(0%);
            }
        }

    /* Slider Bullets
    --------------------------------------------*/
        .swiper-pagination-bullet {
            height: 0.625vw; /*12*/ 
            width: 0.625vw; /*12*/
            background-color: var(--color-pure-white);
            margin: 0px 25px !important; /*25*/
        }
        .timing-pagination {
            bottom: 0.365vw !important; /*7*/
        }
        .timing-pagination .swiper-pagination-bullet {
            position: relative;
            margin: 0 0.260vw !important; /*5*/
        }
        .timing-pagination .swiper-pagination-bullet {
            align-items: flex-end;
            display: inline-flex;
            background-color: transparent !important;
        }
        .timing-pagination .swiper-pagination-bullet,
        .timing-pagination .swiper-pagination-bullet-active {
            width: 5.208vw; /*100*/
            height: 1.302vw; /*25*/
            border-radius: unset;
            opacity: 1;
            overflow: hidden;
        }
        .timing-pagination .swiper-pagination-bullet:first-child {
            margin-left: 0 !important;
        }        
        .timing-pagination .swiper-pagination-bullet:before {
            content: '';
            display: block;
            position: relative;
            height: 0.104vw; /*2*/
            width: 100%;
            background-color: #fff;
            transform: translateX(-100%);
            position: absolute;
            bottom: 0;
            left: 0;
            z-index: 2;
        }
        .timing-pagination .swiper-pagination-bullet:after {
            content: '';
            display: block;
            position: relative;
            z-index: 1;
            height: 0.104vw; /*2*/
            width: 100%;
            background-color: rgb(255 255 255 / 50%);
        }
        .timing-pagination .swiper-pagination-bullet-active:before {
            -webkit-animation: bulletGrow 10s linear forwards;
            animation: bulletGrow 10s linear forwards;
            -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
        }
    /* Gallery Slide Arrows
    --------------------------------------------*/
        .swiper-button-next:after, 
        .swiper-rtl .swiper-button-prev:after,
        .swiper-button-prev:after, 
        .swiper-rtl .swiper-button-next:after {
            content: none !important;
        }

        body .swiper-button-next,
        body .swiper-button-prev {
            width: 2.292vw; /*44*/
            height: 2.292vw; /*44*/
            min-width: 30px;
            min-height: 30px;
            display: block !important;
            margin-top: 0 !important;
            z-index: 2 !important;
            -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
        }
        body .swiper-button-next svg,
        body .swiper-button-prev svg{
            width: 100%;
            height: 100%;
        }
        .swiper-button-prev svg {
            -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
            transform: rotate(180deg);
        }

        /* Buttons */
        .slider-buttons svg {
            fill: var(--color-pure-white);
            padding: 0.625vw; /*12*/
            background-color: transparent;
            border-radius: 100%;
            border: 1px solid var(--color-pure-white);
        }

        /* When Buttons are inside a Carousel/Gallery */
        body .swiper-button-prev {
            left: 1.042vw;
        }
        body .swiper-button-next {
            right: 1.042vw;
        }
        /* On white Bk apply class pos-arrows */
        .pos-arrows svg {
            fill: var(--color-main-text);
            border-color: var(--color-main-text);
        }
        /* on dark Bk apply class neg-arrows */
        .neg-arrows svg{
            fill: var(--color-pure-white);
        }

        /*Relative inline arrows
        -----------------------------------------------------------*/
        .relative-arrow {
            display: flex;
            flex-flow: wrap;
        }
        .relative-arrow .swiper-button-next,
        .relative-arrow .swiper-button-prev {
            position: relative;
            top: unset;
            transform: unset !important;
            left: unset !important;
            right: unset !important;
    		border-radius: 100%;
            -webkit-transition: all 0.2s ease-in-out;
            transition: all 0.2s ease-in-out;
        }      
        .relative-arrow .swiper-button-next {
            margin-left: 0.521vw;
        }

        /* Hover effect on arrows */
        .relative-arrow .swiper-button-next,
        .relative-arrow .swiper-button-prev {
            opacity: 0.6;
        }
        .relative-arrow .swiper-button-next:hover,
        .relative-arrow .swiper-button-prev:hover {
            opacity: 1;
        }

        /* Small Arrows */
        .small-arrows .swiper-button-prev, 
        .small-arrows .swiper-button-next {
            width: 1.042vw;
            height: 1.042vw;
            min-width: 12px;
            min-height: 12px;
        }

        /* Other */
        .swiper-button-lock {
            display: none;
        }
        .swiper-button-disabled {
            opacity: 0.3 !important;
        }

/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
------------------------------------- Swiper Slider General -------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
    .swiper-container {
        position: relative;
        overflow: hidden;
    }


/* Pagination
--------------------------------------------------------------------------------------------------------------*/
    #pagination {
        width: 100%;
    }
    .nav-links {
        position: relative;
        height: 2.083vw; /*40*/
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .page-numbers {
        display: flex;
        justify-content: center;
        align-items: center;

        width: 1.406vw; /*27*/
        height: 1.406vw; /*27*/
        margin-bottom: 0;

        font-size: 0.729vw; /*14*/
        font-family: var(--md-font);
        line-height: 0.5;
        
        background-color: #eaeaea;
        border-radius: 100%;
        color: var(--color-main);
        -webkit-transition: all 0.1s ease-in-out;
        transition: all 0.1s ease-in-out;
    }
    .page-numbers {
        color: var(--color-main);
    }
    .pagination-text {
        display: block;
        margin-top: 0.104vw; /*2*/
    }
    .pagination-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 2.083vw; /*40*/
        width: 2.083vw; /*40*/
        border-radius: 100%;
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-transition: all 0.1s ease-in-out;
        transition: all 0.1s ease-in-out;
    }
    a.next.page-numbers img,
    a.prev.page-numbers img {
        width: 0.521vw; /*10*/
        height: 0.313vw; /*6*/
    }

    .page-numbers.current,
    .page-numbers:not(.dots):hover {
        background-color: var(--color-main-);
        color: #fff !important;
    }
    .page-numbers:not(.dots):hover img {
        filter: invert(1) brightness(10);
    }

/* Woocommerce Pagination
--------------------------------------------------*/
    .nav-links,
    .woocommerce-pagination {
        gap: 0.781vw; /*15*/
    }
    .woocommerce-pagination .next.page-numbers,
    .woocommerce-pagination .prev.page-numbers {
        margin: 0 !important;
        position: relative;
        top: unset !important;
        transform: unset !important;
    }

/* Video Elements
------------------------------------------------------------------------------*/
    .media-container.with-video {
        position: relative;
    }
    .media-container.with-video .video-container iframe {
        width: 100%;
        height: 100%;
    }
    .media-container.with-video .video-container {
        height: 100%;
        position: relative;
        z-index: 1;
    }
    .media-container.with-video .video-placeholder {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 2;
        cursor: pointer;
    }
    .media-container.with-video .video-placeholder:before {
        content: '';
        display: block;
        height: 3.646vw;
        width: 3.646vw;
        min-height: 70px;
        min-width: 70px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background-image: url('data:image/svg+xml,<svg id="Layer_1" style="enable-background:new 0 0 512 512;" version="1.1" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="96 64 320 384"><path d="M405.2,232.9L126.8,67.2c-3.4-2-6.9-3.2-10.9-3.2c-10.9,0-19.8,9-19.8,20H96v344h0.1c0,11,8.9,20,19.8,20 c4.1,0,7.5-1.4,11.2-3.4l278.1-165.5c6.6-5.5,10.8-13.8,10.8-23.1C416,246.7,411.8,238.5,405.2,232.9z"></path></svg>');
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        opacity: 0.7;
        z-index: 3;
        pointer-events: none;
        filter: invert(1);
    }
    .media-container.with-video .video-placeholder:hover:before {
        opacity: 1;
    }



/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
------------------------------------- Svg Arrow Inside a Box ------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
    .arrow-btn svg {
        width: 2.083vw;
        height: 2.083vw;
        display: block;
    }
    .arrow-btn.abs-p {
        right: 1.042vw;
        bottom: 1.042vw;
        -webkit-transition: all .175s cubic-bezier(0.47, -2.05, 0.53, 2.4);
        transition: all .175s cubic-bezier(0.47, -2.05, 0.53, 2.4);
    }
    .arrow-btn svg {
        fill: var(--color-main);
    }
    .arrow-btn.white svg {
        fill: var(--color-white);
    }
    .col-container-inner:hover .arrow-btn {
        right: 0.833vw;
    }  

/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
--------------------------------- Standard CSS effects ------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/

    /* Box Shadow Effect */
    .box-sh_01 {
        box-shadow: 0 2px 15px 0 rgb(0 0 0 / 15%);
    }


/* TO CHECK****** Hover
------------------------------------------------------------------------------------------------------------------------------------*/
    body #content a:not([data-customclass='btn'],
    .wp-block-button__link, .btn):hover{
        /*color: var(--color-yellow) !important;*/
    }

    .menu-icon a:hover {
        color: var(--color-white);
    }


/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
--------------------------------------- Download List  ------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
body ul.download-list > li:not(.menu-item):before {
    content: none;
}
body ul.download-list li {
    margin-left: 0;
}
.download-list svg {
    width: 30px;
    height: 30px;
    min-width: 30px;
}
body .download-list * {
    margin: 0 !important;
}
body .download-list a {
    margin-left: 1em !important;
}
body .download-list li {
    margin-bottom: 1em !important;
}