html {
    margin: 0;
    padding: 0;
    background: #fff;
    font-size: 15px;
}

* {
    box-sizing: border-box;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
    margin: 0;
    padding: 0;
}

body {
    margin: 0;
    padding: 0;
    background: #fff;
    overflow-x: hidden;
}

img {
    width: 100%;
    height: auto;
    display: inline-block;
}

.to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    cursor: pointer;
    z-index: 99;
    border-radius: 3px;
    font-size: 20px !important;
    padding: 11px;
    display: none;
    color: var(--ci-color2) !important;
    background-color: var(--ci-color);
}

img.auto {
    width: auto;
}

img:not([src]) {
    visibility: hidden;
}

@media (min-width: 1000px) {
    .flex-row {
        display: flex;
        flex-direction: row;
        gap: 20px;
    }

    .flex-row > * {
        flex: 50%;
    }
}

.scroll {
    overflow-y: hidden;
    overflow-x: auto;
    padding-right: 10px;
}

/* Grid */
.grid-container.no-gap,
.grid-container-inner.no-gap {
    grid-gap: 0;
}

.grid-container.gap-s,
.grid-container-inner.gap-s {
    grid-gap: 20px;
}

.grid-container.gap-m,
.grid-container-inner.gap-m {
    grid-gap: 30px;
}

.grid-container.gap-l,
.grid-container-inner.gap-l {
    grid-gap: 50px;
}

.grid-container.gap-xl,
.grid-container-inner.gap-xl {
    grid-gap: 60px;
}

.grid-item.pad-l {
    padding: 25px 30px;
}

@media (max-width: 767px) {
    .hide_mobile {
        display: none;
    }
}
@media (min-width: 768px) and (max-width: 999px) {
    .hide_tablet {
        display: none;
    }
}
@media (min-width: 1000px) {
    .hide_desktop {
        display: none;
    }
}

@media (max-width: 999px) {
    .grid-container:not(.no-gap) .grid-item:not(:last-child) {
        margin-bottom: 20px;
    }

    .grid-container.invert,
	.grid-container-inner.invert {
        display: flex;
        flex-direction: column-reverse;
    }

    .grid-container.invert .grid-item:first-child {
        margin-bottom: 0;
    }

    .grid-container:not(.no-gap)  .grid-container.invert .grid-item:last-child {
        margin-bottom: 20px;
    }
}

@media (min-width: 1000px) {

	/* GRID STARTING */
    .grid-container {
        display: grid;
        grid-gap: 40px;
        grid-template-columns: repeat(6, 1fr);
    }

    .grid-container.boxed {
        max-width: 1300px;
        margin-left: auto;
        margin-right: auto;
        padding: 80px;
    }

    .grid-container.pad-s {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .grid-container.pad-m {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .grid-container.pad-l {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .grid-container.pad-xl {
        padding-top: 100px;
        padding-bottom: 100px;
    }

    .grid-container-inner {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: repeat(6, 1fr);
    }

    .scroll.full-height {
        height: calc(100vh - 373px);
    }

    .scroll.no-height-limit {
        height: auto;
        overflow: visible;
    }

    .grid-item {
        width: 100%;
    }

    .grid-item.pad-l {
        padding: 40px 50px;
    }

    .grid-item.row-start-1 {
        grid-row-start: 1;
    }

    .grid-item.row-start-2 {
        grid-row-start: 2;
    }

    .grid-item.row-start-3 {
        grid-row-start: 3;
    }

    .grid-item.row-start-4 {
        grid-row-start: 4;
    }

    .grid-item.row-start-5 {
        grid-row-start: 5;
    }

    .grid-item.row-span-1 {
        grid-row-end: span 1;
    }

    .grid-item.row-span-2 {
        grid-row-end: span 2;
    }

    .grid-item.row-span-3 {
        grid-row-end: span 3;
    }

    .grid-item.row-span-4 {
        grid-row-end: span 4;
    }

    .grid-item.row-span-5 {
        grid-row-end: span 5;
    }

    .grid-item.row-span-6 {
        grid-row-end: span 6;
    }

    .grid-item.col-start-1 {
        grid-column-start: 1;
    }

    .grid-item.col-start-2 {
        grid-column-start: 2;
    }

    .grid-item.col-start-3 {
        grid-column-start: 3;
    }

    .grid-item.col-start-4 {
        grid-column-start: 4;
    }

    .grid-item.col-start-5 {
        grid-column-start: 5;
    }

    .col {
        grid-column-end: span 2;
    }

    .col-s {
        grid-column-end: span 3;
    }

    .col-m {
        grid-column-end: span 6;
    }

    .col-l {
        grid-column-end: span 6;
    }

    .col-xl {
        grid-column-end: span 6;
    }

    .col-full {
        grid-column-end: span 6;
    }

    .col-max {
        grid-column-end: span 6 !important;
    }

    .col.to-half {
        grid-column-end: span 3;
    }

    .col.to-full {
        grid-column-end: span 6;
    }

    .col-s.to-third {
        grid-column-end: span 2;
    }

    .col-s.to-half {
        grid-column-end: span 3;
    }

    .col-s.to-full {
        grid-column-end: span 6;
    }

    .col-l.to-half {
        grid-column-end: span 2;
    }

    .col-l.to-m {
        grid-column-end: span 3;
    }

    .col-l.to-two-thirds {
        grid-column-end: span 4;
    }

    .col-m.to-half {
        grid-column-end: span 3;
    }

    .col-full.to-half {
        grid-column-end: span 3;
    }

    .col-full.to-third {
        grid-column-end: span 2;
    }

    .scroll {
        height: 340px;
        overflow: auto;
    }
}

@media (min-width: 1300px) {

    .grid-item.pad-l {
        padding: 50px 60px;
    }

    .col {
        grid-column-end: span 1;
    }

    .col-s {
        grid-column-end: span 2;
    }

    .col-m {
        grid-column-end: span 3;
    }

    .col-l {
        grid-column-end: span 4;
    }

    .col-xl {
        grid-column-end: span 5;
    }

    .col-full {
        grid-column-end: span 6;
    }

    .col-max {
        grid-column-end: span 6 !important;
    }

    .col.to-half {
        grid-column-end: span 1;
    }

    .col.to-full {
        grid-column-end: span 1;
    }

    .col-s.to-half {
        grid-column-end: span 2;
    }

    .col-s.to-full {
        grid-column-end: span 2;
    }

    .col-m.to-half {
        grid-column-end: span 3;
    }

    .col-m.to-full {
        grid-column-end: span 3;
    }

    .col-l.to-half {
        grid-column-end: span 4;
    }

    .col-l.to-m {
        grid-column-end: span 4;
    }

    .col-full.to-half {
        grid-column-end: span 6;
    }

    .col-full.to-third {
        grid-column-end: span 6;
    }
}

::-webkit-scrollbar {
    width: 6px;
    height: 5px;
    cursor: pointer;
}

::-webkit-scrollbar-track {
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.1);
}

::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.3);
}

/* RESPONSE */
#response_container {
    position: fixed;
    bottom: 0;
    left: 50%;
    margin-left: -250px;
    width: 500px;
    z-index: 99999;
}

.response {
    z-index: 99999;
    padding: 11px 25px 10px 30px;
    font-size: 16px;
    line-height: 1.6;
    background-color: #303030;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
    border-radius: 9px;
}

.response .resp_text {
    padding-right: 15px;
    color: #fff;
}

.response .resp_icon {
    font-size: 25px;
    line-height: 1.2;
    margin-bottom: -2px;
}

.response .resp_icon i {
    color: #fff;
}

.response.alert {
    background-color: #dc3545;
}

@media (max-width: 767px) {
    .response {
        width: 100%;
        left: 0;
        bottom: 0;
        padding: 12px 20px;
        margin: 0 10px 10px 10px;
    }

    #response_container {
        width: calc(100% - 20px);
        left: 0;
        margin-left: 0;
    }

    .response .resp_icon {
        font-size: 19px;
    }

    .response .resp_text {
        font-size: 15px;
    }
}

.cookies-prompt {
    background-color: #fafafa;
    padding: 35px 40px;
    max-width: 650px;
    border-radius: 10px;
    width: 100%;
    color: #444;
    -webkit-box-shadow: 0 6px 9px -9px black;
    box-shadow: 0 6px 9px -9px black;
}

.cookies-prompt svg {
    height:30px;
    width:30px;
    margin-right:15px;
}
.cookies-prompt .head {
    font-size:25px;
    font-weight:bold;
}

.cookies-prompt .text {
    margin-bottom: 25px;
    line-height: 20px;
}

/* MODAL */
.modal-container {
    height: 100vh;
    width: 100vw;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    padding: 0 8%;
    background-color: #00000055;
    display: flex;
    justify-content: center;
    align-items: center;
}

.modal-container.dark {
    background-color: #000000aa;
}

.modal-inner {
    max-width: 600px;
    width: 100%;
    max-height: 90%;
    overflow-y: auto;
    display: block;
    background-color: #fff;
    border-radius: 10px;
    -webkit-box-shadow: 0 0 9px 5px rgba(0, 0, 0, 0.05);
    box-shadow: 0 0 9px 5px rgba(0, 0, 0, 0.05);
}

.modal-inner.warning {
    border: 1px solid red;
}

.modal-title {
    display: flex;
    border-bottom: 1px solid #ddd;
    padding: 15px 20px;
}

.modal-title-label {
    flex-grow: 1;
}

.modal-closer {
    cursor: pointer;
    margin-left: 15px;
    font-size: 20px;
}

.modal-content {
    padding: 15px 20px;
}

.modal-content.modal_uploads,
.uploads_grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 530px) {
    .modal-content.modal_uploads,
    .uploads_grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (min-width: 767px) {
    .modal-content.modal_uploads,
    .uploads_grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}
@media (min-width: 1000px) {
    .modal-content.modal_uploads,
    .uploads_grid {
        grid-template-columns: repeat(7, minmax(0, 1fr));
    }
}
@media (min-width: 1300px) {
    .modal-content.modal_uploads,
    .uploads_grid {
        grid-template-columns: repeat(9, minmax(0, 1fr));
    }
}
@media (min-width: 1920px) {
    .modal-content.modal_uploads,
    .uploads_grid {
        grid-template-columns: repeat(12, minmax(0, 1fr));
    }
}

.modal-content .map {
    height:70vh !important;
}



.loader-container {
    height: 100vh;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999999;
    background: #ffffffcc;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* HTML: <div class="loader"></div> */
.loader {
    width: 40px;
    height: 40px;
    --c:no-repeat linear-gradient(var(--ci-color) 0 0);
    background: var(--c),var(--c),var(--c),var(--c);
    background-size: 21px 21px;
    animation: l5 1.5s infinite cubic-bezier(0.3,1,0,1);
}
@keyframes l5 {
   0%   {background-position: 0    0,100% 0   ,100% 100%,0 100%}
   33%  {background-position: 0    0,100% 0   ,100% 100%,0 100%;width:60px;height: 60px}
   66%  {background-position: 100% 0,100% 100%,0    100%,0 0   ;width:60px;height: 60px}
   100% {background-position: 100% 0,100% 100%,0    100%,0 0   }
}

/*!* Loader *!*/
/*#loader {*/
/*    height: 100vh;*/
/*    width: 100%;*/
/*    position: fixed;*/
/*    top: 0;*/
/*    left: 0;*/
/*    z-index: 999999999;*/
/*    background: #ffffffab;*/
/*}*/

/*#loader .lds-facebook {*/
/*    position: absolute;*/
/*    top: 50%;*/
/*    left: 50%;*/
/*    z-index: 99999;*/
/*    display: inline-block;*/
/*    width: 80px;*/
/*    height: 80px;*/
/*    margin-top: -40px;*/
/*    margin-left: -40px;*/
/*}*/

/*#loader .lds-facebook div {*/
/*    display: inline-block;*/
/*    position: absolute;*/
/*    left: 8px;*/
/*    width: 16px;*/
/*    background: var(--ci-color);*/
/*    animation: lds-facebook 1.2s cubic-bezier(0, 0.5, 0.5, 1) infinite;*/
/*}*/

/*#loader .lds-facebook div:nth-child(1) {*/
/*    left: 8px;*/
/*    animation-delay: -0.24s;*/
/*}*/

/*#loader .lds-facebook div:nth-child(2) {*/
/*    left: 32px;*/
/*    animation-delay: -0.12s;*/
/*}*/

/*#loader .lds-facebook div:nth-child(3) {*/
/*    left: 56px;*/
/*    animation-delay: 0s;*/
/*}*/

/*@keyframes lds-facebook {*/
/*    0% {*/
/*        top: 8px;*/
/*        height: 64px;*/
/*    }*/

/*    50%,*/
/*	100% {*/
/*        top: 24px;*/
/*        height: 32px;*/
/*    }*/
/*}*/