/*
	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/grid.css";


/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
------------------------------------------ Scrollbar --------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/ 
    body {
        overflow-y: overlay;
    }
    ::-webkit-scrollbar-track
    {
        border-radius: 10px;
        -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
        background-color: transparent;
    }
    ::-webkit-scrollbar
    {
        width: 11px;
        -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
        background-color: transparent;
    }
    ::-webkit-scrollbar-thumb
    {
        border-radius: 10px;
        -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
        background-color: rgba(0, 0, 0, 0.3);
    }

    /* Divider Color
    -----------------------------------------*/
        .divider {
            background-color: var(--color-main);
        }


/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
----------------------------------- Theme Background Colors -------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
    .theme-b-main {
        background-color: var(--gray-700);
    }
    .theme-b-main- {
        background-color: var(--gray-700-a90);
    }
    .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-1-- {
        background-color: var(--color_1--);
    }
    .theme-b-2 {
        background-color: var(--color_2);
    }
    .theme-b-2- {
        background-color: var(--color_2-);
    }
    .theme-b-2-- {
        background-color: var(--color_2--);
    }
    .theme-b-3 {
        background-color: var(--color_3);
    }
    .theme-b-3- {
        background-color: var(--color_3-);
    }
    .theme-b-3-- {
        background-color: var(--color_3--);
    }
    .theme-grad {
        background: rgb(52, 52, 52);
        background: linear-gradient(180deg, rgb(255 87 87) 00%, rgba(179, 20, 38, 1) 100%);
    }
    
/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
----------------------------------- 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_00 img {
	    height: 21.875vw;
	    min-height: 300px;
	}
	.img-size_01 img {
		height: 30.208vw;
		min-height: 420px;
	}
	.img-size_02 img {
		height: 37.5vw;
		min-height: 560px;
	}
    .img-size_03 img {
        height: 43.75vw;
        min-height: 680px;
    }

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

    /* Apply on es: <div class="three-col-grid box-size_01"> */
        .box-size_00 .col-content {
            height: 14.583vw; /*280*/
            min-height: 220px;
        }
        .box-size_01 .col-content {
            height: 16.667vw;
            min-height: 280px;
        }
        .box-size_02 .col-content {
            height: 25vw;
            min-height: 380px;
        }
        .box-size_03 .col-content {
            height: 29.167vw;
            min-height: 460px;
        }


/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
----------------------------------- News Boxes Classes ------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
    .col-content-info {
        margin-bottom: .5em;
        gap: 1vw;
    }
    .col-content-excerpt p {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
    }


/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
-------------------------------- 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;
    }
    #header-content {
        z-index: 1;
    }

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

        #breadcrumbs a:hover,
        #breadcrumbs a:hover * {
            color: var(--color-main-);
        }

    /* Sticky Header 
    --------------------------------------------*/
        header .top-header-wrapper.still-sticky .top-bar {
            display: none;
        }
        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%);
        }
        header .top-header-wrapper.still-sticky.sticky-header {
            transform: translateY(0);
            transition: transform 0.3s ease-in-out;
        }

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

        /*Relative inline arrows
        -----------------------------------------------------------*/
        .relative-arrow {
            display: flex;
            flex-flow: nowrap;
        }
        .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%;
    }
    .prev.page-numbers, 
    .next.page-numbers {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translatey(-50%);
        padding: 0;
        display: flex;
        align-items: center;
    }
    .prev.page-numbers {
        left: 0;
    }
    .next.page-numbers {
        right: 0;
    }
    .nav-links {
        position: relative;
        height: 2.083vw; /*40*/
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .page-numbers {
        margin-bottom: 0;
        padding: 0 0.417vw; /*0 8*/
        text-align: center;
        line-height: 1;
        color: var(--color-main-text);
        font-family: var(--sbd-font);
        -webkit-transition: all 0.1s ease-in-out;
        transition: all 0.1s ease-in-out;
    }
    a.page-numbers:not(.next, .prev) {
        color: var(--color-main-text);
    }
    a.page-numbers:not(.next, .prev):hover {
        color: var(--color-main-);
    }
    .page-numbers.current {
        font-family: var(--sbd-font);
        font-size: 0.833vw; /*16*/
    }
    .pagination-text {
        display: block;
        margin-top: 0.104vw; /*2*/
    }
    .pagination-btn {
        -webkit-transition: all 0.1s ease-in-out;
        transition: all 0.1s ease-in-out;
    }
    .pagination-btn .arrow-btn svg {
        width: 1.146vw;
        height: 1.146vw;
    }
    .page-numbers,
    .page-numbers svg {
        -webkit-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;        
    }
    .page-numbers svg {
        fill: var(--color-main-text);
    }
    .next .pagination-btn {
        margin-left: 0.521vw; /*10*/
    }
    .prev .pagination-btn {
        margin-right: 0.521vw; /*10*/
    }
    .next.page-numbers:hover,
    .prev.page-numbers:hover {
        color: var(--color-main-);
    }
    .page-numbers:hover svg {
        fill: var(--color-main-);
    }
    .prev svg {
        -webkit-transform: rotate(182deg);
        -ms-transform: rotate(182deg);
        transform: rotate(182deg);
    }

/* 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);
    }



/* ----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
------------------------------------- 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;
    }