/*==================================================
FONTS & ICONS
==================================================*/

@import 'fonts.css';

/*================================================*/



/*==================================================
THEMES
==================================================*/

:root
{
    --scroll-margin: inset 0 0 10px 10px rgba(0, 0, 0, 0.25);

    --max-width: 1160px;
    --margin: 20px;
    --padding: 10px;
    --banner-text: 128px;
    --ultra-text: 60px;
    --superd-text: 42px;
    --super-text: 28px;
    --big-text: 20px;
    --main-text: 16px;
    --second-text: 13px;
    --third-text: 11px;
    --icon: 16px;
    --btn: 16px;
    --nav-icon: 24px;
    --border-radius: 30px;
    --border-radius-round: 1024px;

    --bg1: #fff;
    --bg2: #f4f4f4;

	--border: 2px solid;
	--border-color: rgba(0,0,0,0.10);

	--text-color: #000;
	--selected-text: #000;
	--selected-bg: rgba(0, 0, 0, 0.10);

    --main-color: #1938b4;
    --second-color: #29ce5e;
    --third-color: #ffca17;
    --fourth-color: #fff;
    --fifth-color: #aebcce;
    --sixth-color: #f1f6fd;
    --seventh-color: #595959;

    --transition: 0.25s;
}





.main-color{color: var(--main-color);}
.second-color{color: var(--second-color);}
.third-color{color: var(--third-color);}
.fourth-color{color: var(--fourth-color);}
.fifth-color{color: var(--fifth-color);}
.sixth-color{color: var(--sixth-color);}
.seventh-color{color: var(--seventh-color);}
.white-color{color: white;}
.black-color{color: black;}
.main-bg-color{background-color: var(--main-color);}
.second-bg-color{background-color: var(--second-color);}
.third-bg-color{background-color: var(--third-color);}
.fourth-bg-color{background-color: var(--fourth-color);}
.fifth-bg-color{background-color: var(--fifth-color);}
.sixth-bg-color{background-color: var(--sixth-color);}
.seventh-bg-color{background-color: var(--seventh-color);}
.white-bg-color{background-color: white;}
.black-bg-color{background-color: black;}
.white-banner-bg{background-color: rgba(255, 255, 255, 0.5);}

/*================================================*/



/*==================================================
MAIN TAGS
==================================================*/

html
{
    line-height: 1.5;
    /*overflow-x: clip;*/
}

html, body
{
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
    border: 0;
}

body
{
    padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
    position: relative;
	font-size: var(--main-text);
	font-family: montserrat-regular;
	color: var(--main-color);
    background-color: var(--bg1);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    overflow-y: overlay;
    /*scroll-behavior: smooth;*/
    -webkit-overflow-scrolling: touch;
    transition: var(--transition);
}

input, textarea, select, .input
{
    width: 100%;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    font-family: montserrat-bold;
    font-size: var(--main-text);
    color: var(--fifth-color);
	background-color: transparent;
	outline: none;
	border: none;
	resize: none;
	box-sizing: border-box;
    -moz-appearance: none;
    -webkit-appearance: none;
    transition: var(--transition);
}

textarea
{
    height: 96px;
}

option
{
    padding: 10px;
    background-color: var(--bg1);
}

input[type="checkbox"], input[type="radio"]
{
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: var(--big-text);
    border: 2px solid var(--second-color);
    border-radius: 5px;
}

input[type="checkbox"]:hover, input[type="radio"]:hover
{
    cursor: pointer;
    border-color: var(--main-color);
}

input[type='checkbox']:before, input[type="radio"]:before
{
    padding: 5px;
    color: transparent;
    font-family: 'icons';
    content: "✔";
    font-size: var(--big-text);
    border: 2px solid;
    border-color: var(--sixth-color);
    border-radius: 5px;
}

input[type='checkbox']:checked:before, input[type="radio"]:checked:before
{
    color: var(--second-color);
    background-color: var(--sixth-color);
    border-color: transparent;
}

input[type='checkbox']:hover:before, input[type='radio']:hover:before
{
    
}

input[type='checkbox']:hover:checked:before, input[type='radio']:hover:checked:before
{
    /*color: var(--second-color);*/
    /*border-color: var(--second-color);*/
    /*background-color: transparent;*/
}

::placeholder
{
    color: var(--fifth-color);
    transition: var(--transition);
}

::selection
{
	color: var(--selected-text);
	background-color: var(--selected-bg);
}

span, img
{
	margin: 0;
	padding: 0;
	border: none;
    display: block;
}

img
{
    max-width: 100%;
    width: auto;
    height: auto;
    margin: auto;
}

h1, h2, h3, h4, h5, h6
{
	/*font-weight: normal;*/
}

a
{
    color: unset;
    text-decoration: none;
}

#body
{
    display: grid;
    grid-template-areas: 
        "header"
        "main"
    ;
    grid-template-rows: auto 1fr;
}

/*================================================*/



/*==================================================
HEADER
==================================================*/

#header
{
    grid-area: header;
    width: -webkit-fill-available;
    width: -moz-available;
    height: 100px;
    padding: 0 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    top: 0;
    z-index: 10;
    transition: var(--transition);
    /*background-color: var(--main-color);
    transition: height var(--transition), background var(--transition);
    /*pointer-events: none;*/
}

.header-scroll
{
    background-color: var(--fourth-color);
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.20);
}

.header-scroll .nav-item:not(.nav-active), .mobile-header .nav-item:not(.nav-active)
{
    color: var(--main-color);
}

.header-scroll #logo, .mobile-header #logo
{
    display: none;
}

.header-scroll #logo-scroll, .mobile-header #logo-scroll
{
    display: flex;
}

.header-scroll .mobile-nav-item, .mobile-header .mobile-nav-item
{
    color: var(--main-color);
}

#logo-container
{
    grid-area: logo;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 2;
    border-radius: unset;
    /*pointer-events: auto;*/
}

#logo, #logo-scroll
{
    width: auto;
    height: 64px;
    display: flex;
    align-items: center;
    /*padding: 50px;*/
}

#logo-scroll
{
    display: none;
}

/*================================================*/



/*==================================================
NAVS
==================================================*/

#nav
{
    grid-area: nav;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
    gap: 20px;
    /*transition: var(--transition);*/
}

.nav-items
{
    margin: auto;
    display: flex;
    align-items: center;
    gap: 35px;
}

.nav-item
{
    padding: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    position: relative;
    font-size: var(--main-text);
    color: var(--fourth-color);
    font-weight: bold;
    transition: var(--transition);
}

.nav-icon
{
    margin: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
    font-size: var(--nav-icon);
    transition: var(--transition);
}

.nav-img
{
    width: 38px;
}

.nav-text
{
    display: flex;
    align-items: center;
}

.nav-item:hover, .nav-active
{
    cursor: pointer;
    color: var(--third-color) !important;
}





#sm-nav
{
    display: flex;
    align-items: center;
    gap: 20px;
}





#contact-nav
{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
}

.contact-nav-item
{
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: var(--big-text);
}

.contact-block
{
    display: grid;
    justify-content: center;
    align-items: center;
    gap: 50px;
}

.contact-block-item
{

}

.fake-btn
{
    width: fit-content;
    padding: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--main-color);
    font-weight: bold;
    background-color: var(--third-color);
    border-radius: 10px;
    transition: var(--transition);
}





#floating-menu
{
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    position: fixed;
    right: 20px;
    bottom: 20px;
    right: 20px;
    z-index: 10;
}

.floating-menu-item
{
    width: 54px;
    filter: drop-shadow(5px 5px 5px rgb(0, 0, 0, 0.20));
}

.floating-menu-img
{

}





#mobile-nav
{
    grid-area: mobilenav;
    height: auto;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    position: relative;
    z-index: 5;
    font-weight: bold;
    display: none;
}

#mobile-nav-close
{
    display: none;
}

#mobile-nav-open:hover, #mobile-nav-close:hover
{
    cursor: pointer;
}

.mobile-nav-item
{
    /*width: 100%;*/
    padding: 10px 0;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    color: var(--fourth-color);
    /*font-size: var(--big-text);*/
}





.subnav
{
    width: -webkit-fill-available;
    width: -moz-available;
    margin: 0 auto;
    padding: 0;
    padding-bottom: 25px;
    display: flex;
    /*align-items: center;*/
    gap: 20px;
    transition: var(--transition);
    /*overflow: overlay hidden;*/
    /*-webkit-overflow-scrolling: touch;*/
}

.subnav-item, .submenu-item-tall
{
    width: 100%;
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    /*flex-shrink: 0;*/
    /*font-family: montserrat-bold;*/
    position: relative;
    text-align: center;
    font-size: var(--main-text);
    /*font-weight: bold;*/
    color: var(--fourth-color);
    background-color: var(--main-color);
    border-radius: 10px;
    box-shadow: 5px 5px 15px -5px rgba(0, 0, 0, 0.25);
    transition: var(--transition);
}

.submenu-item-tall
{
    min-height: 180px;
    background-color: var(--main-color);
}

.subnav-item:not(.submenu-item-tall):hover, .subnav-active:not(.submenu-item-tall)
{
    cursor: pointer;
    color: var(--main-color);
    background-color: var(--third-color);
}

.submenu-item-tall:hover, .subnav-active
{
    cursor: pointer;
    color: var(--fourth-color);
    background-color: transparent;
}

/*================================================*/



/*==================================================
TEMPLATE
==================================================*/

#main
{
    grid-area: main;
    width: 100%;
    height: 100%;
    margin: auto;
    padding: 0;
    display: flex;
    position: relative;
    z-index: 1;
}

.screen
{
    width: 100%;
    height: 100%;
    padding: 0;
    display: flex;
    flex-direction: column;
    position: absolute;
    inset: 0;
    z-index: 0;
    border: none;
    text-align: center;
    /*
    -webkit-user-select: none;
    -moz-user-select: moz-none;
    -ms-user-select: none;
    user-select: none;
    */
}





.grid-footer
{
    grid-area: footer;
}

.footer
{
    width: auto;
    height: auto;
    padding: 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    text-align: left;
    color: var(--fourth-color);
    background-color: var(--main-color);
    transition: var(--transition);
}

.footer-container
{
    max-width: 1280px;
    display: grid;
    grid-template-areas: 
        "logo contact subscribe"
        "followus work work"
        "copyrights copyrights copyrights"
    ;
    gap: 30px;
}

.footer-row
{
    display: grid;
    grid-auto-flow: column;
    align-items: flex-start;
    gap: 50px;
}

.footer-item
{
    align-items: flex-start;
}

.footer-form
{
    display: grid;
    gap: 10px;
}

.footer-copyright
{
    padding-top: 50px;
    text-align: center;
    border-top: 2px solid var(--fifth-color);
}

.footer-logo{grid-area: logo;}
.footer-contact{grid-area: contact;}
.footer-subscribe{grid-area: subscribe;}
.footer-followus{grid-area: followus;}
.footer-work{grid-area: work;}
.footer-copyrights{grid-area: copyrights;}





.banner-title
{
    font-size: var(--banner-text);
    font-weight: bold;
    font-family: montserrat-bold;
    line-height: 1.25;
}

.ultra-title
{
    font-size: var(--ultra-text);
    font-weight: bold;
    font-family: montserrat-bold;
    line-height: 1.25;
}

.superd-title
{
    font-size: var(--superd-text);
    font-weight: bold;
    font-family: montserrat-bold;
    line-height: 1.25;
}

.super-title
{
    font-size: var(--super-text);
    font-weight: bold;
    font-family: montserrat-bold;
    line-height: 1.25;
}

.big-title
{
    font-size: var(--big-text);
    font-weight: bold;
    font-family: montserrat-bold;
    line-height: 1.25;
}

.main-title
{
    font-size: var(--main-text);
    font-weight: bold;
    font-family: montserrat-bold;
    line-height: 1.25;
}

.second-title
{
    font-size: var(--second-text);
    font-weight: bold;
    font-family: montserrat-bold;
    line-height: 1.25;
}

.third-title
{
    font-size: var(--third-text);
    font-weight: bold;
    font-family: montserrat-bold;
    line-height: 1.25;
}

.banner-text
{
    font-size: var(--banner-text);
    font-family: montserrat-regular;
    font-weight: normal;
}

.ultra-text{font-size: var(--ultra-text);}
.superd-text{font-size: var(--superd-text);}
.super-text{font-size: var(--super-text);}
.big-text{font-size: var(--big-text);}
.main-text{font-size: var(--main-text);}
.second-text{font-size: var(--second-text);}
.third-text{font-size: var(--third-text);}
.fourth-text{font-size: var(--fourth-text);}





.section, .section-full, .section-half
{
    width: auto;
    height: auto;
    margin: auto 0;
    padding: 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    gap: 0;
    position: relative;
    text-align: left;
    scroll-margin-top: 100px;
    transition: var(--transition);
}

.section-full
{
    min-height: -webkit-fill-available;
    min-height: -moz-available;
}

.section-half{height: 60%;}

.section-banner
{
    padding: 0 !important;
}

.section-header
{
    margin-right: auto;
    display: flex;
    align-items: center;
    gap: 30px;
}

.section-header-icon
{
    width: 64px;
    height: auto;
    margin: 0;
}

.section-limit
{
    max-width: 1280px;
    width: 100%;
    margin: auto;
}

.section-header-separator
{
    width: 4px;
    height: calc(100% - 15px);
    display: flex;
    align-items: center;
    background-color: var(--main-color);
    border-radius: var(--border-radius-round);
}

.section-main
{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.section-content
{
    width: auto;
    height: auto;
    margin: 100px;
    position: relative;
}

.section-content-center
{
    width: auto;
    height: auto;
    margin: 50px;
    text-align: center;
    position: relative;
}
.
.section-content-normal
{
    width: auto;
    height: auto;
    margin: 20px;
    text-align: center;
    position: relative;
}

.section-content-full
{
    width: 100%;
    text-align: center;
}

.section-margin
{
    margin: 60px 40px;
    padding: 0 !important;
}

.section-blocks
{
    max-width: 1280px;
    width: -webkit-fill-available;
    width: -moz--available;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    align-items: center;
    gap: 50px;
    /*line-height: 1.25;*/
    text-align: center;
}

.section-block
{

}

.section-blocks-1fr-auto
{
    grid-template-columns: 1fr auto;
}

.section-mini
{
    max-width: 870px;
    width: -webkit-fill-available;
    width: -moz--available;
    margin: auto;
    display: flex;
    gap: 50px !important;
    overflow: hidden;
}

.section-max-img
{
    max-width: 1080px;
    width: 100%;
    height: auto;
    margin: 50px auto;
    padding: 0;
}

.section-extra
{
    width: auto;
    margin: auto;
    display: grid;
    grid-template-columns: auto 1fr auto;
    justify-content: center;
    align-items: flex-start;
}

.quote-img
{
    width: 64px;
    position: relative;
    top: -30px;
}

.title-flex
{
    display: flex;
    gap: 20px;
}

.title-flex img
{
    margin: 0;
    padding: 0;
}

.logo-banner
{
    width: 640px;
    height: auto;
}

.logo-evento-v
{
    width: auto;
    height: auto;
    max-height: 540px;
    margin: auto;
}

.fixed
{
    position: fixed;
    z-index: -1;
    pointer-events: none;
}

.one-container
{
    max-width: 1024px;
    width: 100%;
}

.text-limit
{
    max-width: 960px;
    margin: auto;
}

.green-rectangle
{
    padding: 5px 10px;
    background-color: var(--second-color);
}

.flex-icons
{
    max-width: 1208px;
    padding: 20px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 50px;
    text-align: center;
}

.flex-icon
{
    max-width: 240px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    flex: 1;
    font-size: var(--big-text);
    font-family: montserrat-bold;
}

.flex-icon-img
{
    width: 150px;
    height: auto;
    filter: drop-shadow(5px 5px 5px rgb(0, 0, 0, 0.20));
}

.icon
{
    max-width: 150px;
    width: auto;
    height: auto;
    margin: auto;
    padding: 20px;
}

.action-btn
{
    transition: var(--transition);
}

.action-btn:hover
{
    cursor: pointer;
    color: var(--main-color);
}

.tiny-img
{
    max-width: 64px;
    width: auto;
    margin: auto;
    padding: 20px;
}

.small-img
{
    max-width: 120px;
    width: auto;
    margin: auto;
    padding: 20px;
}

.normal-img
{
    max-width: 180px;
    width: auto;
    margin: auto;
    padding: 20px;
}

.big-img
{
    max-width: 240px;
    max-height: 240px;
    width: 100%;
    height: auto;
    margin: auto;
    padding: 20px;
    object-fit: contain;
    object-position: center;
    aspect-ratio: 2 / 1;
}

.bigx2-img
{
    max-width: 360px;
    width: auto;
    margin: auto;
    padding: 20px;
}

.absolute-img-left
{
    width: 240px;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.absolute-img-right
{
    width: 240px;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: -1;
}

.sticky-top
{
    position: sticky;
    top: 0;
}

.line
{
    width: 100%;
    height: 7px;
    margin: 30px 0;
}

.line-vertical
{
    width: 7px;
    height: 100%;
    margin: 0;
}

.width-fit{width: fit-content !important;}
.min-width{min-width: 260px !important;}
.text-center{text-align: center;}
.text-left{text-align: left;}
.text-right{text-align: right;}
.text-justify{text-align: justify;}
.text-shadow{text-shadow: 0 5px 10px rgba(0, 0, 0, 0.25);}
.shadow{box-shadow: 0 10px 20px 0px rgba(0, 0, 0, 0.15);}
.drop-shadow{filter: drop-shadow(0px 20px 20px rgb(0, 0, 0, 0.50));}
.display-none{display: none !important;}
.visibility{visibility: hidden;}
.nomargin{margin: 0 !important;}
.margin{margin: var(--margin) !important;}
.margin-auto{margin: auto !important;}
.margin-left-auto{margin-left: auto !important;}
.margin-right-auto{margin-right: auto !important;}
.margin-left-0{margin-left: 0 !important;}
.margin-right-0{margin-right: 0 !important;}
.margin-bottom-auto{margin-bottom: auto !important;}
.nopadding{padding: 0 !important;}
.padding-v
{
    padding-top: 100px !important;
    padding-bottom: 100px !important;
}
.padding
{
    width: fit-content;
    margin: auto;
    padding: 5px 20px;
}
.no-v-padding
{
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.line-height{line-height: 1.5;}

.border-radius{border-radius: 20px;}

.justify-content-start{justify-content: flex-start !important;}
.justify-content-center{justify-content: center !important;}
.align-self-top{align-self: flex-start !important;}
.align-items-start{align-items: flex-start !important;}





.anim{opacity: 0;}

.video-container
{
    max-width: 960px;
    width: auto;
    height: auto;
    margin: auto;
    padding: 20px;
    aspect-ratio:  16 / 9;
    overflow: hidden;
}

.video-block
{
    height: 0;
    padding-bottom: 56.25%;
    position: relative;
    border: 2px solid var(--main-color);
    border-radius: var(--border-radius);
    overflow: hidden;
}

.video-block iframe, .video-block object, .video-block embed
{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: var(--border-radius);
}

/*================================================*/



/*==================================================
POSTS
==================================================*/

.posts-cards
{
    max-width: 1024px;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    justify-content: center;
    align-items: center;
    gap: 50px;
}

.post-card
{
    border-radius: 25px;
    box-shadow: 5px 10px 20px -10px rgba(0,0,0,0.50);
}

.post-card-info
{ 
    padding: 30px;
    display: grid;
    grid-template-rows: 1fr 1fr auto;
    gap: 20px;
}

.post-card-header
{
    background-color: var(--main-color);
}

.posr-card-body
{

}

.post-card-footer
{
    display: flex;
}

.post-img-row
{
    max-width: 150px;
    margin: 0;
    padding: 20px 0;
}

.post-flex-col-to-row
{
    display: grid;
    grid-template-columns: 150px 2fr;
    justify-content: center;
    align-items: center;
    gap: 50px;
}





.posts-service-grid
{
    height: 100%;
    margin: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 50px;
}

.post-service
{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 30px;
}

.post-service-image
{
    width: 180px;
    height: 180px;
    background-color: var(--sixth-color);
}

.post-service-img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.post-service-info
{
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.post-service-title
{
    width: fit-content;
    height: fit-content;
    margin: 0;
    padding: 10px 20px;
    background-color: var(--third-color);
    border-radius: 10px;
}

.post-service-text
{
    height: fit-content;
    margin: 0;
    line-height: 1.25;
    display: -webkit-box;
    text-align: justify;
    color: var(--sixth-color);
    -webkit-line-clamp: 7;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.post-service-btn
{
    width: fit-content;
    height: fit-content;
    margin: auto;
    padding: 20px 50px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--fourth-color);
    background-color: var(--second-color);
    border: 2px solid var(--second-color);
    border-radius: 10px;
    transition: var(--transition);
}

.post-service-btn:hover
{
    cursor: pointer;
    color: var(--second-color);
    background-color: transparent;
}

.post-service-icon
{
    width: 20px;
    height: auto;
}





.posts-security-grid
{
    max-width: 1280px;
    margin: 0 auto 50px auto;
    display: column;
    columns: 2;
    /*align-items: flex-start;*/
    gap: 50px;
}

.post-security
{
    margin-bottom: 50px;
    padding: 40px;
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 0px;
    font-weight: bold;
    background-color: var(--fourth-color);
    border-radius: 15px;
    box-shadow: 0 0 30px -5px rgba(0, 0, 0, 0.15);
}

.post-security-title
{
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 20px;
}

.post-security-icon
{
    width: 72px;
    height: auto;
}

.security-box
{
    margin: 30px 0;
    padding: 50px;
    background-color: var(--fourth-color);
    border-radius: 20px;
    box-shadow: 0 0 30px -5px rgba(0, 0, 0, 0.15);
}





.posts-formation-grid
{
    max-width: 1280px;
    height: 100%;
    margin: auto;
    margin-bottom: 30px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: flex-start;
    gap: 50px;
}

.post-formation
{
    padding: 50px;
    display: grid;
    gap: 30px;
    font-weight: bold;
    background-color: var(--fourth-color);
    border-radius: 15px;
    box-shadow: 0 0 30px -5px rgba(0, 0, 0, 0.15);
}

.post-formation-title
{
    display: grid;
    align-items: center;
    gap: 20px;
    text-align: center;
}

.post-formation-icon
{
    width: 150px;
    height: auto;
    position: relative;
}





.posts-project-grid
{
    max-width: 1580px;
    height: 100%;
    margin: auto;
    margin-bottom: 30px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: flex-start;
    gap: 50px;
}

.post-project
{
    height: 100%;
    display: grid;
    grid-template-areas: 
        "image"
        "info"
    ;
    grid-template-rows: auto 1fr;
    gap: 10px;
    font-weight: bold;
    border-radius: 15px;
    box-shadow: 0 0 30px -5px rgba(0, 0, 0, 0.15);
    overflow: hidden;
}

.post-project-info
{
    grid-area: info;
    padding: 30px;
    display: grid;
    gap: 20px;
}

.post-project-title
{
    display: grid;
    align-items: center;
    gap: 20px;
    text-align: center;
}

.post-project-icon
{
    width: 150px;
    height: auto;
    position: relative;
}

.post-image-container
{
    height: 320px;
}

.post-project-image
{
    grid-area: image;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}





.project-container
{
    height: 100%;
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: 1fr 1fr;
    justify-content: center;
    align-items: center;
}

.project-block-bg
{
    width: auto;
    height: 100%;
    padding: 0 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: white;
}

.project-bg-blue{background-color: rgba(25, 56, 188, 0.70);}
.project-bg-yellow{background-color: rgba(255, 210, 23, 0.70);}
.project-bg-green{background-color: rgba(41, 214, 94, 0.70);}

.project-block
{
    max-width: 50%;
    margin: auto;
    padding: 50px;
    background-color: rgba(255, 255, 255, 0.9);
    box-shadow: 10px 10px 10px -5px rgba(0, 0, 0, 0.30);
}

.project-block-info
{
    text-align: center;
}





.security-grid
{
    width: 100%;
}

.security-block
{
    display: grid;
    gap: 20px;
}

.security-block-flex
{
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
}





.resources-grid
{
    width: 100%;
}

.resources-block
{
    margin-top: 30px;
    display: grid;
    gap: 30px;
    align-self: flex-start;
}





.map-columns
{
    width: auto;
    /*height: 100%;*/
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 50px;
}

.map-column
{
    width: auto;
    height: auto;
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 0px;
    text-align: left;
}

.map-column-title
{
    margin: 0;
    padding: 10px;
    color: var(--third-color);
    background-color: var(--main-color);
}

.map-column-block
{
    padding: 10px;
    display: grid;
    align-self: flex-start;
    gap: 20px;
    text-align: left;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}

.map-column-block:last-child
{
    border: none;
}

.map-column-info
{

}

.map-image
{
    padding: 20px;
    position: relative;
}

.map-img
{
    max-width: 640px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.map-square-data
{
    height: fit-content;
    margin: auto;
    margin: 0;
    display: grid;
    grid-template-areas: 
        "title title"
        "loading loading"
        "data2021 data2022"
        "projection projection"
    ;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.map-square
{
    width: 120px;
    height: auto;
    margin: auto;
    padding: 20px 0;
    display: grid;
    align-items: center;
    grid-gap: 10px;
    color: white;
    background-color: var(--main-color);
    border-radius: 15px;
}

.map-square-counter
{
    padding: 20px;
    color: var(--main-color);
    background-color: var(--third-color);
    border: 6px solid #ff0000;
}

.map-square-title
{
    grid-area: title;
}

.map-square-loading
{
    grid-area: loading;
    display: grid;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.map-square-loading-img
{
    width: 50px;
    height: auto;
}

.map-square2021
{
    grid-area: data2021;
}

.map-square2022
{
    grid-area: data2022;
}

.map-square-date
{
    padding: 5px;
    color: var(--main-color);
    font-family: montserrat-black;
    font-weight: bold;
    background-color: white;
}

.map-square-info
{
    font-size: var(--super-text);
    font-weight: bold;
}

.map-square-note-text
{
    grid-area: projection;
    padding: 5px;
}

.circular-progress
{
    width: 150px;
    height: 150px;
    padding: 20px;
    display: grid;
    place-items: center;
    position: relative;
    border-radius: 50%;
}

.circular-progress:before
{
    content: "";
    width: 84%;
    height: 84%;
    position: absolute;
    background-color: #222;
    border-radius: 50%;
    transition: var(--transition);
}

.value-container
{
    position: relative;
    font-size: 50px;
    color: #231c3d;
}

.map-progress-counter
{
    color: white;
    position: absolute;
    padding: 10px;
}

.arrow-down
{
    border-style: solid;
    border-width: 25px 25px 0 25px;
    border-color: #30BF74 transparent transparent transparent;
    position: absolute;
    left: 25%;
    bottom: -24px;
}

.arrow-down-yellow
{
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: var(--third-color) transparent transparent transparent;
    position: absolute;
    bottom: -15px;
}

.subnav-item:hover .arrow-down
{
    /*border-color: var(--main-color) transparent transparent transparent;*/
}

.about-history
{
    max-width: 960px;
}

.about-block-img
{
    width: auto;
    height: auto;
    padding: 0 150px !important;
    position: relative;
    top: 40px;
    z-index: 1;
}

.about-extra-padding-v
{
    padding-top: 150px !important;
    padding-bottom: 150px !important;
}

.about-movidana-textbox
{
    max-width: 960px;
    margin: auto;
}

/*================================================*/



/*==================================================
CONTACT FORM
==================================================*/

.form
{
    max-width: 480px;
    margin: auto;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    border-radius: 20px;
}

.input-group
{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.input-block
{
    width: 100%;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 2px solid var(--fifth-color);
    border-radius: 10px;
    transition: var(--transition);
}

.input-check
{
    width: 100%;
    padding: 10px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    transition: var(--transition);
}

.input-compress
{
    /*width: auto;*/
}

.input-flex
{
    width: auto;
    display: flex;
    align-items: center;
    gap: 5px;
}

.input-flex > *
{
    width: auto;
}

.input-icon
{
    width: 24px;
    height: auto;
}

.contact-field-error
{
    border-color: red;
}

.btn, .btn2, .btn3, .btn4
{
    width: auto;
    padding: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--fourth-color);
    font-weight: bold;
    font-size: var(--big-text);
    background-color: var(--second-color);
    border: 2px solid var(--second-color);
    border-radius: 10px;
    transition: var(--transition);
}

.btn:hover
{
    /*color: var(--second-color);*/
    cursor: pointer;
    color: var(--second-color);
    background-color: white;
}

.btn2
{
    font-size: var(--second-text);
    color: var(--fourth-color);
    background-color: var(--main-color);
    border-radius: 0;
}

.btn2:hover
{
    cursor: pointer;
}

.btn3
{
    margin: unset;
    color: var(--fourth-color);
    background-color: var(--main-color);
    border: 2px solid var(--main-color);
}

.btn3:hover
{
    cursor: pointer;
    color: var(--main-color);
    background-color: transparent;
}

.btn4
{
    padding: 15px 20px;
    background-color: white;
    border-color: white;
}

.btn4 .btn-text
{
    color: var(--main-color);
}

.btn4:hover
{
    cursor: pointer;
    color: white;
    background-color: var(--second-color);
    border-color: var(--second-color);
}

.btn4:hover .btn-text
{
    color: white;
}

.btn-link
{
    /*padding: 2.5px;*/
    color: var(--main-color);
    font-weight: bold;
    border-bottom: 1px solid
}

.btn-text
{
    height: auto;
    padding: 5px;
    color: var(--fourt-color);
    font-weight: bold;
}

.btn-text:hover
{
    cursor: pointer;
    color: var(--second-color);
}

/*================================================*/



/*==================================================
BANNER
==================================================*/

.full-banner
{
    width: 100%;
    height: 100%;
    display: flex;
    /*flex-direction: column;*/
    justify-content: space-around;
    align-items: center;
    position: relative;
    /*background-color: var(--main-color);*/
    overflow: hidden;
}

.banner-full
{
    width: 100%;
    height: 100%;
    margin: auto;
    display: flex;
    position: absolute;
    inset: 0;
    z-index: -1;
    object-fit: cover;
    object-position: center;
    overflow: hidden;
}

.banner-full2
{
    width: 100%;
    height: 100%;
    margin: auto;
    display: flex;
    position: fixed;
    top: 0;
    z-index: -1;
    object-fit: cover;
    object-position: center;
    overflow: hidden;
}

.banner-dark-filter
{
    filter: contrast(70%) blur(5px);
}

.banner-softdark-filter
{
    filter: contrast(70%) brightness(0.80);
}

.banner-info-block
{
    width: auto;
    height: auto;
    padding: 40px;
    display: grid;
    grid-template-rows: 1fr auto;
    grid-gap: 20px;
    align-items: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    text-align: left;
    color: var(--fourth-color);
    /*background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), transparent);*/
    /*background-image: radial-gradient(circle at left, var(--main-color) 100%, transparent 100%);*/
    /*border-radius: 0 1000px 1000px 0;*/
    /*box-shadow: 50px 50px 50px 0 rgba(0, 0, 0, 0.5);*/
}

.banner-info-block-center
{
    display: flex;
    justify-content: center;
}

.banner-info-block-top
{
    margin: auto;
    display: flex;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
}

.banner-shadow
{
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.30);
}

.banner-shadow-left
{
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0.85), transparent);
}

.banner-info
{
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.banner-numbers
{
    display: flex;
    gap: 10px;
    font-size: var(--second-text);
}

.banner-num
{
    opacity: 0.25;
    transition: var(--transition);
}

.banner-num:hover, .banner-num-active
{
    opacity: 1;
}

.banner-bg
{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    object-fit: cover;
    object-position: center;
    /*border-radius: 50px;*/
    overflow: hidden;
}

.half-banner-bg
{
    width: 100%;
    height: 100%;
    position: relative;
    object-fit: cover;
    object-position: center;
    overflow: hidden;
}

.banner-bg-right
{
    width: auto;
    height: 100%;
    max-height: 720px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: -1;
    object-fit: cover;
    object-position: center;
    /*border-radius: 50px;*/
    overflow: hidden;
}

.banner-grid
{
    width: 100%;
    height: 100%;
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: 1fr 1fr 1fr;
    align-items: center;
    gap: 20px;
    background-color: white;
}

.banner-slide
{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.banner-grid-bg
{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 0;
}


.banner-grid-info
{
    width: 100%;
    min-height: 100px;
    padding: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
    color: white;
    font-size: var(--big-text);
    font-weight: bold;
    background-color: rgba(255, 210, 23, 0.70);
    text-shadow: 0 5px 10px rgba(0, 0, 0, 0.25);
}

.banner-arrow-down
{
    width: 100px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 70px;
    z-index: 1;
}

.banner-arrow-down:hover
{
    /*cursor: pointer;*/
}

.banner-filter
{
    mix-blend-mode: luminosity;
    opacity: 0.10 !important;
    filter: blur(5px);
}

.banner-title-margin
{
    margin-top: -180px !important;
    position: relative;
    z-index: 1;
}

.swiper, .swiperlogos, .swiperconvenios
{
    width: 100%;
    height: 100%;
    position: relative;
}

.swiper-wrapper
{
    
}

.swiper-slide
{
    display: grid;
    align-items: center;
}

.swiper-pagination
{
    width: auto;
    bottom: 25px !important;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    grid-gap: 20px;
}

.swiper-pagination-bullet
{
    width: 24px;
    height: 24px;
    margin: 0 !important;
    background-color: white;
    border: 7.5px solid transparent;
    opacity: 0.25;
    transition: var(--transition);
}

.swiper-pagination-bullet-active
{
    background-color: white;
    border-color: var(--main-color);
    opacity: 1;
}

.swiper-button-prev
{
    top: 40%;
    left: -20px;
}

.swiper-button-next
{
    top: 40%;
    right: -20px;
}





.symmetrical-slider
{
    
}

.symmetrical-slide
{
    display: grid;
    grid-template-rows: 50% 1fr;
    align-items: flex-start;
}

/*================================================*/



/*==================================================
MAP
==================================================*/

.gmap
{
    height: 320px;
    position: relative;
    border-radius: var(--border-radius);
    overflow: hidden;
    /*box-shadow: 0 10px 20px 0px rgba(0, 0, 0, 0.15);*/
}

.gmap iframe, .playlist iframe
{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.embed-container
{
    width: 100%;
    height: 100%;
    height: 360px;
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

.embed-container iframe, .embed-container object
{
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

small
{
    position: absolute;
    z-index: 40;
    bottom: 0;
    margin-bottom: -15px;
}

/*================================================*/



/*==================================================
POPUPS
==================================================*/

.popup
{
    width: 100%;
    height: 100%;
    margin: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;
    color: black;
    background-color: rgba(0,0,0,0.5);
}

.popup-container
{
    /*max-width: 960px;*/
    /*max-height: 540px;*/
    width: calc(100% - 40px);
    height: calc(100% - 40px);
    display: grid;
    grid-template-areas: 
        "popupheader"
        "popupmain"
        "popupfooter"
    ;
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr auto;
    background-color: var(--bg2);
    /*border-radius: var(--border-radius);*/
    box-shadow: 0 100px 100px -10px rgba(0,0,0,0.25);
    overflow: hidden;
}

.popup-content
{
    grid-area: popupmain;
    width: auto;
    height: auto;
    margin: var(--padding);
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    overflow: hidden overlay;
    -webkit-overflow-scrolling: touch;
    /*transition: var(--transition);*/
}

.popup-header
{
    grid-area: popupheader;
    margin: var(--margin);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    position: relative;
    top: 0;
    right: 0;
    z-index: 2;
    font-weight: bold;
    /*transition: var(--transition);*/
}

.popup-info
{
    width: 100%;
    height: auto;
    margin: auto 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: var(--super-text);
    /*transition: var(--transition);*/
}

.popup-icon
{
    padding: 10px;
}

.popup-icon:hover
{
    cursor: pointer;
}

.popup-footer
{
    grid-area: popupfooter;
    margin: var(--padding);
    display: flex;
    justify-content: flex-end;
    align-items: center;
    grid:  20px;
    position: relative;
    z-index: 2;
    font-weight: bold;
    /*transition: var(--transition);*/
}

.popup-close
{
    color: black;
    font-size: var(--big-text);
}

.popup-img
{
    max-width: fit-content;
    max-height: fit-content;
    width: 100%;
    height: auto;
    margin: auto;
    border-radius: var(--border-radius);
}

/*================================================*/



/*==================================================
WEBKIT SCROLL
==================================================*/

::-webkit-scrollbar
{
	width: 15px;
	height: 0;
}

::-webkit-scrollbar-thumb
{
    border: 3px solid transparent;
	border-radius: var(--border-radius-round);
    box-shadow: var(--scroll-margin);
}

/*================================================*/



/*==================================================
RESPONSIVE
==================================================*/

@media (max-width: 1500px)
{
    .nav-items
    {
        padding: 20px;
        gap: 30px;
    }

    .nav-item
    {
        padding: 5px;
    }
}

@media (max-width: 1480px)
{
    :root
    {
        --margin: 20px;
        --padding: 10px;
        --banner-text: 78px;
        --ultra-text: 32px;
        --superd-text: 28px;
        --super-text: 20px;
        --big-text: 15px;
        --main-text: 13px;
        --second-text: 11px;
        --third-text: 9px;
        --icon: 16px;
        --btn: 16px;
        --nav-icon: 20px;
    }

    #header
    {
        height: 75px;
        padding: 0 30px;
    }

    #logo, #logo-scroll
    {
        height: 50px;
    }

    .nav-items
    {
        padding: 20px;
        gap: 20px;
    }

    .nav-item
    {
        padding: 5px;
    }

    .subnav-item
    {
        padding: 20px 20px;
    }

    .submenu-item-tall
    {
        max-width: 50%;
        min-height: 150px;
    }

    .section, .section-full
    {
        padding: 35px;
        gap: 0;
    }

    .section-content-center
    {
        margin: 30px;
    }

    .section-limit{max-width: 1024px;}

    .section-max-img
    {
        max-width: 720px;
    }

    .text-limit{max-width: 640px;}

    .banner-arrow-down
    {
        width: 75px;
    }

    .flex-icons
    {
        max-width: 1024px;
        gap: 25px;
    }

    .flex-icon
    {
        font-size: var(--main-text);
    }

    .flex-icon-img
    {
        max-width: 120px;
    }

    .post-img-v
    {
        max-height: 480px;
    }

    .form
    {
        max-width: 360px;
        padding: 30px;
    }

    .section-margin
    {
        margin: 40px 25px;
    }

    .post-security, .post-formation
    {
        padding: 30px;
    }

    .posts-service-grid
    {
        grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
    }

    .posts-security-grid, .posts-formation-grid
    {
        max-width: 840px;
        grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
    }

    .post-security-icon{width: 64px;}

    .posts-project-grid
    {
        max-width: 1024px;
        width: 100%;
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    }

    .post-image-container
    {
        height: 240px;
    }

    .post-project-info
    {
        padding: 20px;
    }

    .post-service-text
    {
        -webkit-line-clamp: 4;
    }

    .post-service-image
    {
        width: 160px;
        height: 160px;
    }

    .post-formation-icon
    {
        width: 100px;
    }

    .map-img{max-width: 380px;}

    .logo-banner
    {
        width: 480px;
    }

    .contact-blocks
    {
        max-width: 1024px;
    }

    .contact-block
    {
        gap: 25px;
    }

    .section-blocks
    {
        max-width: 1024px;
    }

    .bigx2-img
    {
        max-width: 260px;
    }

    .big-img
    {
        max-width: 200px;
        max-height: 200px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .nav-img
    {
        width: 32px;
    }

    input, select .input
    {
        height: 26px;
    }

    textarea
    {
        height: 60px;
    }

    .shadow{box-shadow: 0 5px 15px 0px rgba(0, 0, 0, 0.15);}

    .btn
    {
        padding: 15px;
    }

    .post-img-row
    {
        max-width: 120px;
    }

    .post-flex-col-to-row
    {
        grid-gap: 25px;
    }

    .about-history
    {
        max-width: 640px;
    }

    .about-block-img
    {
        padding: 0 100px !important;
        top: 20px;
    }

    .about-extra-padding-v
    {
        padding-top: 100px !important;
        padding-bottom: 100px !important;
    }
    .about-movidana-textbox
    {
        max-width: 640px;
    }

    .btn4{padding: 10px 20px;}

    .absolute-img-left{width: 180px;}
    .absolute-img-right{width: 180px;}

    .security-box
    {
        margin: 20px 0;
        padding: 40px;
    }

    .circular-progress
    {
        width: 120px;
        height: 120px;
    }

    .banner-title-margin
    {
        margin-top: -150px !important;
    }
}

@media (max-width: 1180px)
{
    #header
    {
        padding: 0 20px;
    }

    .nav-items
    {
        padding: 15px;
        gap: 15px;
    }

    .nav-item
    {
        font-size: var(--second-text);
    }
}

@media (max-width: 1080px)
{
    .section, .section-full
    {
        padding: 25px;
    }

    .section-content-center
    {
        margin: 25px;
    }
}

@media (max-width: 1024px)
{
    .section,
    .section-full,
    .section-content-center
    {
        padding: 20px;
    }

    .section-margin
    {
        margin: 20px 20px;
    }

    .section-content-center
    {
        margin: 30px 0;
        padding: 0;
        /*text-align: left;*/
    }

    .btn, .btn2, .btn3
    {
        padding: 15px;
    }

    .icon
    {
        max-width: 64px;
    }

    .input-group
    {
        flex-direction: column;
    }

    .input-block
    {
        width: -webkit-fill-available;
        width: -moz-available;
    }
}

@media (max-width: 960px)
{
    :root
    {
        --banner-text: 42px;
        --ultra-text: 32px;
        --superd-text: 24px;
        --super-text: 24px;
        --big-text: 13px;
        --main-text: 11px;
        --second-text: 9px;
        --third-text: 7px;
        --icon: 16px;
        --btn: 16px;
        --nav-icon: 20px;
    }

    #header
    {
        height: 64px;
        display: grid !important;
        grid-template-areas: 
            "logo mobilenav"
            "nav nav"
        ;
        grid-template-rows: auto 1fr;
    }

    #logo-container
    {
        height: 64px;
        padding: 0;
        align-self: flex-start;
    }

    #logo, #logo-scroll
    {
        height: 40px;
        margin-left: 0;
    }

    #logo-mobile
    {
        max-height: 48px;
    }

    #nav
    {
        width: 100%;
        height: 100%;
        margin-bottom: auto;
        align-items: flex-start;
        justify-content: flex-start;
        overflow-y: overlay;
        -webkit-overflow-scrolling: touch;
    }

    .nav-items
    {
        margin: 0 auto;
        padding: 20px;
        flex-direction: column;
        gap: 20px;
        display: none;
    }

    .nav-item{font-size: var(--big-text);}

    .mobile-header
    {
        height: 100vh !important;
        color: var(--main-color);
        background-color: var(--fourth-color);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
    }

    #mobile-nav
    {
        height: 64px;
        display: flex;
        align-self: flex-start;
    }

    .nav-show
    {
        display: flex !important;
    }

    .nav-hide
    {
        display: none !important;
    }

    .subnav
    {
        overflow-x: overlay;
    }

    .subnav-item
    {
        max-width: 70%;
        flex-shrink: 0;
    }

    .submenu-item-tall
    {
        max-width: 50%;
        min-height: 100px;
    }





    .floating-menu-item
    {
        width: 38px;
    }





    .flex-icons
    {
        gap: 20px;
        font-size: var(--main-text);
    }

    .flex-icon
    {
        /*gap: 20px;*/
    }

    .flex-icon-img
    {
        max-width: 100px;
    }





    .btn, .btn2, .btn3, .btn4
    {
        padding: 10px;
    }





    .section-banner
    {
        /*min-height: unset;*/
    }

    .section-header
    {
        gap: 20px;
    }

    .section-header-icon
    {
        width: 48px;
    }

    .section-blocks-1fr-auto
    {
        grid-template-columns: auto;
    }

    .section-blocks
    {
        max-width: unset;
        grid-template-columns: 1fr;
    }

    .quote-img
    {
        width: 32px;
    }

    .banner-title-margin
    {
        margin-top: -100px;
    }

    .banner-arrow-down{width: 50px;}





    .posts-service-grid
    {
        grid-template-columns: 1fr;
    }

    .post-service
    {
        gap: 20px;
    }

    .post-service-image
    {
        width: 100px;
        height: 100px;
    }





    .posts-security-grid, .posts-formation-grid
    {
        display: grid;
        grid-template-columns: 1fr;
    }

    .posts-security-grid{gap: 30px}

    .post-security
    {
        margin-bottom: 0;
    }

    .post-security-icon{width: 48px;}

    .post-formation-icon
    {
        width: 84px;
    }





    .project-container
    {
        grid-auto-flow: row;
        grid-template-columns: unset;
        grid-template-rows: auto auto;
    }

    .project-block-bg
    {
        grid-row: 1 / 2;
    }

    .project-block
    {
        max-width: unset;
        margin: 20px;
        padding: 20px;
        font-size: var(--main-text);
    }

    .project-block-info *
    {
        font-size: var(--main-text);
    }





    .post-project
    {
        /*grid-template-areas: "image info";*/
        /*grid-template-rows: auto;*/
    }

    .post-project-info
    {
        padding: 15px;
    }

    .post-image-container
    {
        /*height: auto;*/
    }





    .post-security, .post-formation
    {
        padding: 20px;
    }





    .section-mini
    {
        /*width: auto;*/
        text-align: justify;
    }





    .security-block-flex
    {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
    }

    .line-vertical
    {
        display: none;
    }





    .contact-block
    {
        justify-content: flex-start;
    }





    .banner-info-block
    {

    }

    .banner-info-block-top
    {
        height: auto;
        position: relative;
    }

    .banner-info-block-top > *
    {
        margin: 0;
    }

    .logo-banner
    {
        max-width: 320px;
    }





    .swiper-pagination-bullet
    {
        width: 20px;
        height: 20px;
    }

    .swiper-button-prev
    {
        left: 10px;
    }

    .swiper-button-next
    {
        right: 10px;
    }

    .bigx2-img
    {
        max-width: 200px;
    }

    .big-img
    {
        max-width: 120px;
        max-height: 120px;
        padding: 10px;
    }

    .about-block-img
    {
        padding: 0 20px !important;
        top: 20px;
    }

    .absolute-img-left{width: 100px;}
    .absolute-img-right{width: 100px;}

    .green-rectangle{padding: 5px 7.5px;}

    .security-box
    {
        padding: 30px;
    }





    .footer-container
    {
        display: grid;
        grid-template-areas: 
            "logo"
            "contact"
            "subscribe"
            "followus"
            "work"
            "copyrights"
        ;
        gap: 30px;
    }

    .footer .big-img
    {
        max-width: 240px;
    }
}

@media (max-width: 720px)
{
    :root
    {
        --ultra-text: 28px;
    }

    .banner-grid
    {
        grid-auto-flow: row;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr 1fr 1fr;
    }

    .banner-grid-info
    {
        min-height: unset;
        padding: 10px;
    }
}

@media (max-width: 640px)
{
    :root
    {
        --banner-text: 32px;
        --ultra-text: 28px;
        --super-text: 20px;
    }

    .swiper-button-prev, .swiper-button-next
    {
        display: none;
    }
}

@media (max-width: 480px)
{

}

@media (max-width: 320px)
{

}

@media (prefers-color-scheme: light)
{
    
}

@media (prefers-color-scheme: dark)
{
    
}

.floating-menu-img {
    visibility: hidden;
}