:root {
    --color-datahop: #5e91b5;
    --color-datahop-light: #59aae4;
    --color-datahop-lightbackground: #cdeaff;
    --color-success: #4eb77d;
    --color-success-light: #55bd84;
    --color-danger: #a34433;
    --color-danger-light: #d98778;
    --color-background: rgb(248 249 250);
    --color-darkblue: #344767;
    --color-grey: rgb(103, 116, 142);
    --color-lightgrey: #e9ecef;
    --transition-anim-elastic: cubic-bezier(0.64, 0.57, 0.67, 1.53);
    --color-ms-powerapp-dark: #8f2c86;
    --color-ms-powerapp: #de80c2;
    --color-ms-powerapp-light: #e799c9;
    --color-ms-powerautomate-dark: #104bc8;
    --color-ms-powerautomate: #3688f3;
    --color-ms-powerautomate-light: #6db9fc;
    --color-ms-dataverse-dark: #0a5430;
    --color-ms-dataverse: #2ba753;
    --color-ms-dataverse-light: #89e48e;
    --color-ms-powerpages-dark: #433fb3;
    --color-ms-powerpages: #a08fe6;
    --color-ms-powerpages-light: #cec0f5;
    --color-ms-powerbi-dark: #d9980f;
    --color-ms-powerbi: #eec12f;
    --color-ms-powerbi-light: #f7da5e;
}

::-webkit-scrollbar-track {
    border-radius: 6px;
    background-color: #CCCCCC;
}

::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

::-webkit-scrollbar-thumb {
    border-radius: 6px;
    background-color: #777777;
}

.scroll-dark::-webkit-scrollbar-track {
    background-color: rgb(51, 51, 51);
}

.scroll-dark::-webkit-scrollbar-thumb {
    background-color: #686868;
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    max-width: 100svw;
    font-family: "Quicksand", sans-serif;
    overflow-x: hidden;
}

/* .link {
    color: var(--color-datahop-light);
    padding: 0.5rem;
    display: inline-block;
}

.link:hover,
.link:active:hover,
.link:focus:hover {
    color: var(--color-datahop-lightbackground);
}

.link:active,
.link:focus {
    color: var(--color-datahop);
} */

.some-icon {
    display: flex;
    width: 44px;
    height: 44px;
    margin-left: 20px;
}

.overlapping-seperator {
    position: absolute;
    top: -140px;
    width: 100%;
    min-height: 140px;
    object-fit: cover;
}

/*#region navbar*/
/* .page-start {
    height: 70px;
} */

.header {
    background: #fff;
    color: var(--color-darkblue);
    height: 80px;
    width: 100svw;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
}

.header__topnav {
    display: flex;
    justify-content: center;
}

.header__mobile-nav,
.header__mobile-sidebar {
    display: none;
}

.header__bar {
    display: flex;
    width: 100vw;
    justify-content: space-between;

    max-width: 1320px;
    padding-left: 40px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 40px;
}

.header--left {
    display: flex;
    align-items: center;
}

.header--right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}



.navbar__brand {
    margin: 10px 15px;
    height: calc(100% - 20px);
}

.navbar__brand a {
    height: 100%;
    display: flex;
    align-items: center;
}

.navbar__brand img {
    height: 60px;
}




.navbar-menu,
.navbar-menu__submenu,
.sidebar-menu,
.sidebar-menu__submenu {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
}

.navbar-menu__item,
.sidebar-menu__item {
    padding: 0;
    position: relative;
}

.navbar-menu__item.navbar-menu__item--haschildren:after,
.sidebar-menu__item.sidebar-menu__item--haschildren:after {
    content: "";
    position: absolute;
    top: calc((52px / 2) - 7.5px);
    right: 10px;
    height: 15px;
    width: 15px;
    background-image: url(/images/icons/chevron-down.svg);
    background-repeat: no-repeat;
}

.navbar-menu__item-link,
.sidebar-menu__item-link {
    text-decoration: none;
    color: var(--color-darkblue);
    padding: 0 2rem;
    height: 52px;
    white-space: pre;
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 0.9rem;
    cursor: pointer;
}


.navbar-menu__submenu {
    background: #fff;
    z-index: 100;
    position: absolute;
    top: 100%;
    box-shadow: rgba(149, 157, 165, .2) 0 8px 24px;
    visibility: hidden;
    opacity: 0;
    right: 0;
    pointer-events: none;
    display: flex;
    flex-direction: column;
}

.navbar-menu__submenu .navbar-menu__submenu {
    left: 100%;
    top: 0;
    right: unset;
}

.navbar-menu__submenu .navbar-menu__item.navbar-menu__item--haschildren:after {
    content: "\f054";
}

.navbar-menu__item.navbar-menu__item--haschildren:hover>.navbar-menu__submenu {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}

.navbar-menu__item:hover>.navbar-menu__item-link {
    color: var(--color-datahop-light);
}


.header__mobile-sidebar {
    height: 100svh;
    width: 100vw;
    pointer-events: none;
}

.header__mobile-sidebar--overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100svw;
    height: 100svh;
    background: rgba(0 0 0 / 50%);
    opacity: 0;
    pointer-events: none;
    transition: 300ms opacity var(--transition-anim-elastic);
}

.header__mobile-sidebar--container {
    position: fixed;
    top: 0;
    left: -100vw;
    height: 100svh;
    background: #fff;
    max-width: 400px;
    width: 100svw;
    transition: 300ms left var(--transition-anim-elastic);
}

.header__mobile-sidebar--header .header__bar {
    width: 100%;
}

.header__mobile-sidebar--header .header--left {
    padding: 0 2rem;
}

.sidebar-menu,
.sidebar-menu__submenu {
    flex-direction: column;
}

.sidebar-menu__submenu {
    background: #fff;
    flex-direction: column;
    margin-left: 2rem;
    display: none;
}

.sidebar-menu__submenu.sidebar-menu__submenu--show {
    display: flex;
}

.sidebar-menu__item.sidebar-menu__item--haschildren:after {
    right: 2rem;
}

.sidebar-menu__item.sidebar-menu__item--haschildren.sidebar-menu--submenu-open:after {
    transform: rotateX(180deg);
}

@media (max-width: 942px) {
    .header__topnav {
        display: none;
    }

    .header__mobile-nav,
    .header__mobile-sidebar {
        display: flex;
    }

    .header__mobile-sidebar.header__mobile-sidebar--show {
        pointer-events: all;
    }

    .header__mobile-sidebar.header__mobile-sidebar--show .header__mobile-sidebar--container {
        left: 0;
        pointer-events: all;
    }

    .header__mobile-sidebar.header__mobile-sidebar--show .header__mobile-sidebar--overlay {
        opacity: 1;
        pointer-events: all;
    }

    .header__bar {
        display: flex;
        width: 100vw;
        justify-content: space-between;

        padding-left: 0px;
        padding-right: 0px;
    }

}

/*#endregion*/

/*#region hero-section*/
.hero-section {
    --herosection-height: 800px;
    margin-top: 80px;
    height: var(--herosection-height);
    max-height: 100svh;
    background-image: url(../images/background.webp);
    background-size: cover;
    background-position: center;
    display: flex;
}

.wrapper.wrapper--fadeout.hero-section:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 200px;
    background: linear-gradient(0deg, rgba(255 255 255 / 100%), rgba(255 255 255 / 0%));
}

.hero-section .wrapper-content {
    flex-direction: row;
    align-items: center;
}

.wrapper-content.wrapper-content--narrow {
    padding: 50px 220px;
}

.wrapper-content.wrapper-content--narrow p {
    line-height: 2em;
    font-size: 1.25rem;
}

.wrapper-content.wrapper-content--narrow h3 {
    font-size: 2.5rem;
    margin-bottom: 0;
}

.wrapper-content.wrapper-content--narrow h4 {
    font-size: 1.8rem;
    margin: 1rem 0 0 0;
}

.wrapper-content.wrapper-content--narrow h5 {
    font-size: 1.3rem;
    margin: 0.5rem 0 0 0;
}

.wrapper-image {
    max-width: 100%;
    max-height: 500px;
}

.wrapper-image.wrapper-image--full {
    width: 100%;
}

.hero-section h1 {
    font-size: 2.5em;
    margin: 0.5em 0;
}

.hero-section h2,
.hero-section h3 {
    font-size: 1.5em;
    margin: 0.5em 0;
    font-weight: 400;
}

.cta-btn {
    padding: 1rem 1.3rem;
    background: var(--color-darkblue);
    color: white;
    border: none;
    border-radius: 18px;
    font-size: 1.5rem;
    cursor: pointer;
    margin-top: 1em;
    text-decoration: none;
    white-space: pre;
    display: inline-flex;
    transition: 180ms linear background-color;
}

.cta-btn:hover {
    background: var(--color-datahop);
}

.hero-left,
.hero-right {
    width: 50%;
}

.hero-left {
    padding: 4rem 2rem;
}

.hero-right img {
    max-width: 100%;
}

.hero-icon-title {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.hero-section.hero-section--small {
    --herosection-height: 600px;
}


@media (max-width: 1080px) {
    .hero-section {
        max-height: initial;
    }

    .hero-section .wrapper-content {
        flex-direction: column;
    }

    .hero-left,
    .hero-right {
        width: 100%;
    }

    .hero-section {
        height: auto;
    }

    .hero-section .wrapper-content {
        padding: 0;
    }

    .wrapper--powerapps {
        background-position: left;
        background-size: 400%;
    }

    .wrapper-content.wrapper-content--narrow {
        padding: 50px 0;
    }

    .wrapper-content.wrapper-content--narrow p {
        margin: 0 40px;
    }

    .wrapper-content.wrapper-content--narrow h3 {
        margin: 2rem 20px 0 20px;
    }

    .wrapper-content.wrapper-content--narrow h4 {
        margin: 1rem 20px 0 20px;
    }

    .wrapper-content.wrapper-content--narrow h5 {
        margin: 0.5rem 20px 0 20px;
    }
}

/*#endregion*/

/*#region containers*/
.wrapper {
    width: 100%;
    position: relative;
}

.wrapper--dark {
    background: #121a1f;
    color: #ffffff;
}

.wrapper--grey {
    background: var(--color-lightgrey);
}

.wrapper--darkgrey {
    background: var(--color-grey);
    color: #ffffff;
}

.wrapper--end {
    margin-bottom: 100px;
}

.wrapper-content {
    position: relative;
    display: block;
    object-fit: cover;
    max-width: 1320px;
    padding-left: 40px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 40px;

    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    min-height: 100%;
    display: flex;
    padding-bottom: 2rem;
}

.wrapper--full .wrapper-content {
    max-width: initial;
}

.wrapper__title {
    font-size: 2rem;
    text-align: center;
    margin: 0 20px;
}

/* .wrapper__comptitle {
    font-size: 1.5rem;
    margin: 3rem 0 2rem 0;
}

.wrapper__comptitle h2 {
    font-size: 2rem;
    margin: 0;
}

.wrapper__comptitle p {
    font-size: 1.25rem;
    margin: 0;
} */

.wrapper--full-image {
    background-size: cover;
}

.wrapper__col.wrapper__col--dark {
    background: #393939;
}



/*wrapper--box and wrapper--catch*/
.wrapper--box {
    margin: 100px 0;
}

.wrapper--box .wrapper-content {
    display: flex;
    flex-direction: row;
}

.wrapper--box .wrapper-content .wrapper--box__image,
.wrapper--box .wrapper-content .wrapper--box__content {
    width: 50%;
    flex-grow: 0;
}

.wrapper--box .wrapper-content .wrapper--box__content {
    padding: 70px 34px 50px 44px;
    background: #f9f9f9;
}

.wrapper--box .wrapper-content .wrapper--box__image {
    align-self: center;
}

.wrapper--box .wrapper-content .wrapper--box__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wrapper--box .wrapper-content .wrapper--box__content .wrapper__title {
    text-align: left;
    margin: 0;
    color: rgb(55, 61, 66);
}

.wrapper--box .wrapper-content .wrapper--box__content .wrapper__title h2 {
    margin: 0 0 2rem 0;
}

.wrapper--box .wrapper-content .wrapper--box__content .wrapper__content {
    font-size: 1.25rem;
    color: #4f4f4f;
}

.wrapper--box.wrapper--end {
    margin: 100px 0 200px 0;
}


.wrapper--catch .wrapper--box__content {
    width: 40%;
    position: absolute;
    top: 10%;
    left: 0%;
    box-shadow: 0 0 15px 1px rgba(0 0 0 / 10%);
}

.wrapper--box.wrapper--catch .wrapper-content {
    padding: 0;
    justify-content: flex-end;
}


.wrapper--box.wrapper--catch .wrapper--box__content {
    width: 50%;
    position: absolute;
    top: 10%;
    left: 0%;
    box-shadow: 0 0 15px 1px rgba(0 0 0 / 10%);
}

.wrapper--box.wrapper--catch .wrapper--box__image {
    width: 80%;
}

@media (max-width: 1024px) {
    .wrapper--box .wrapper--box__image {
        display: none;
    }

    .wrapper--box .wrapper-content .wrapper--box__content {
        width: 100%;
    }

    .wrapper--box.wrapper--catch .wrapper--box__content {
        position: relative;
    }
}

/*
.wrapper--box {
    margin: 100px 0;
}

.wrapper--box.wrapper--end {
    margin: 100px 0 200px 0;
}

.wrapper--box .wrapper-content {
    display: flex;
    flex-direction: row;
}

.wrapper--box .wrapper-content .wrapper--box__content {
    padding: 70px 34px 50px 44px;
    background: #f9f9f9;
}

.wrapper--box .wrapper-content .wrapper--box__image {
    align-self: center;
}

.wrapper--box .wrapper-content .wrapper--box__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;

}

.wrapper--box .wrapper-content .wrapper--box__content .wrapper__title {
    text-align: left;
    margin: 0;
    color: rgb(55, 61, 66);
}

.wrapper--box .wrapper-content .wrapper--box__content .wrapper__title h2 {
    margin: 0 0 2rem 0;
}

.wrapper--box .wrapper-content .wrapper--box__content .wrapper__content {
    font-size: 1.25rem;
    color: #4f4f4f;
}

.wrapper--catch .wrapper--box__content {
    width: 40%;
    position: absolute;
    top: 10%;
    left: 0%;
    box-shadow: 0 0 15px 1px rgba(0 0 0 / 10%);
}

.wrapper--box.wrapper--catch .wrapper-content {
    padding: 0;
    justify-content: flex-end;
}


.wrapper--box.wrapper--catch .wrapper--box__content {
    width: 50%;
    position: absolute;
    top: 10%;
    left: 0%;
    box-shadow: 0 0 15px 1px rgba(0 0 0 / 10%);
}

.wrapper--box.wrapper--catch .wrapper--box__image {
    width: 80%;
}

@media (max-width: 1024px) {
    .wrapper--box .wrapper--box__image {
        display: none;
    }

    .wrapper--box .wrapper-content .wrapper--box__content {
        width: 100%;
    }
}
*/


/*#endregion*/


/*#region Form Controls*/
form {
    padding-top: 2rem;
}

form .grid {
    padding-bottom: 1rem;
}

input.error {
    background: #ffdcd5;
    border: 1px solid var(--color-danger);
}

.form-input {
    display: flex;
    flex-direction: column;
    position: relative;
    margin-bottom: 0.5rem;
}

.form-input input[disabled],
.form-input select[disabled] {
    cursor: no-drop;
}

.form-input input[readonly],
.form-input input[readonly]:focus,
.form-input select[readonly] {
    border-color: transparent;
    cursor: default;
    outline: none;
}

.form-input input,
.form-input select {
    padding: 0.575rem 1rem;
    font-size: 1rem;
    border-radius: 6px;
}

.form-input textarea {
    --height: 150px;
    --width: 100%;
    min-height: var(--height);
    max-height: var(--height);
    height: var(--height);
    min-width: var(--width);
    max-width: var(--width);
    width: var(--width);
    border-radius: 6px;
    padding: 0.575rem 1rem;
    font-size: 1rem;
    font-family: "Quicksand", sans-serif;
}

.form-end-btn {
    display: flex;
    justify-content: flex-end;
}

.form-btn {
    background: var(--color-success);
    color: white;
    border: none;
    cursor: pointer;
    margin-top: 1em;
    text-decoration: none;
    white-space: pre;
    display: inline-flex;
    border-radius: 6px;
    font-size: 1rem;
    padding: 0.75rem 3rem;
}

.form-input label {
    margin-bottom: 0.5rem;
    font-size: 0.875rem;
}

.form-highlight {
    color: var(--color-danger-light);
    font-weight: bold;
    font-size: 1.5rem;
    position: absolute;
    top: -10px;
}

/* 
.form-input.form-input--icon a {
    position: absolute;
    right: calc(1rem + 2px);
    top: calc(18px + 0.5rem + 0.675rem);
    text-decoration: none;
}

.form-input.form-input--icon>i {
    height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.form-input.form-input--icon input {
    padding-right: 3rem;
} */
/* 
.form-group {
    display: flex;
    gap: 0.5rem;
    flex-direction: column;
}

.form-group .form-input {
    width: 100%;
    flex-grow: 1;
}

.form-group .form-group-item-20,
.form-group .form-group-item-30 {
    width: 100%;
} */

/* .form-input__message {
    font-size: 12px;
    margin-bottom: 0.25rem;
    padding: 0 0.25rem;
}

.form-input__message.form-input__message--error {
    color: #d51313;
} */
/* 
.form-input-group {
    display: flex;
    width: 100%;
    border-radius: 8px;
    border: 1px solid #aaa;
    overflow: hidden;
}

.form-input-group input {
    border: 0;
    width: 100%;
}

.form-input-group .form-input-prefix,
.form-input-group .form-input-suffix {
    padding: 0 1rem;
    background: #ddd;
    display: flex;
    justify-content: center;
    align-items: center;
} */

#duedate {
    display: none !important;
}

/*#endregion*/

/*#region offer*/
.offers {
    gap: 3rem !important;
}

.offer {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1rem;
    align-items: center;
    height: 100%;
}

.offer__icon {
    border-radius: 50%;
    padding: 2rem;
    height: 150px;
    width: 150px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.offer__icon img {
    max-width: 100%;
    max-height: 100%;
}

.offer__title {
    font-size: 1.5rem;
}

.offer__text {
    flex-grow: 1;
}

@media (max-width: 600px) {

    .offer,
    .offers .col-span-12 {
        max-width: calc(100svw - 6rem);
    }
}

/*#endregion*/

/*#region block*/
.block {
    height: 100%;
    width: 30svw;
    min-width: 700px;
    max-width: 100%;
    position: relative;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(149, 157, 165, .6);
    padding: 3rem;
    background: #ffffff;
    font-size: 1.25rem;
}

.block h2 {
    margin-top: 0;
}

@media (max-width: 768px) {
    .block {
        width: 100%;
        min-width: initial;
        padding: 1rem;
    }

    .block h2 {
        font-size: 2rem;
    }
}

/*#endregion*/

/*#region totem*/
.totem {
    --totem-width: 220px;
    --totem-height: 600px;
    margin-top: 50px;
    height: var(--totem-height);
    width: var(--totem-width);
    background: #fff;
    position: relative;
    border-radius: 8px;
    box-shadow: rgba(149, 157, 165, .2) 0 8px 24px;
    display: flex;
    flex-direction: column;
}

.totem__icon {
    --iconsize: 80px;
    position: absolute;
    top: calc(var(--iconsize) / 2 * -1);
    left: calc((var(--totem-width) / 2) - (var(--iconsize) / 2));
    width: var(--iconsize);
    height: var(--iconsize);
    border-radius: 8px;
}

.totem__icon img {
    max-width: 100%;
    max-height: 100%;
}

.totem__title {
    padding-top: 50px;
    text-align: center;
    font-size: 1.2rem;
}

.totem__text {
    padding: 0 1rem;
    height: 100%;
}

.totem__text ul {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: center;
    height: 100%;
}

.totem__text li {
    font-size: 1.2rem;
    text-align: center;
    height: 33%;
    display: flex;
    flex-grow: 1;
    width: 100%;
    justify-content: center;
    align-items: center;
}

.totem__text li:nth-child(2) {
    border-top: 2px dashed #cecece;
    border-bottom: 2px dashed #cecece;
}

.totem__cta {
    flex-grow: 1;
    padding: 1rem;
    display: flex;
    margin-top: auto;
    justify-content: center;
    align-items: flex-end;
}

@media (max-width: 1300px) {
    .totem {
        --totem-height: auto;
        width: 100%;
        display: flex;
        flex-direction: column;
        min-height: 120px;
    }

    .totem__title {
        text-align: left;
        padding-top: 0;
        padding-left: 120px;
        height: 100px;
        display: flex;
        align-items: center;
    }

    .totem__title h3 {
        margin: 0;
        margin-top: 0.5rem;
    }

    .totem__icon {
        top: 10px;
        height: 100%;
        left: 20px;
    }

    .totem__text {
        padding: 0 1rem;
    }

    .totem__text li:nth-child(2) {
        border: none;
    }

    .totem__cta {
        display: block;
        padding: 1rem;
        display: flex;
        margin-top: auto;
        justify-content: center;
        align-items: flex-end;
    }
}

/*#endregion*/

/*#region info-line*/
.info-line .wrapper-content {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: center;
    padding-top: 4rem;
    padding-bottom: 4rem;
}

.info-item {
    color: #666666;
    font-weight: 100;
    font-size: 2rem;
    text-align: center;
}

@media (max-width: 767px) {
    .info-line {
        display: none;
    }
}

/*#endregion*/

/*#region card*/

.cards.cards-overlapping {
    row-gap: 70px;
}

.cards.cards-overlapping .card {
    top: -3rem;
}

.grid.cards {
    row-gap: 70px;
    /* padding-top: 70px; */
}

.card {
    height: 100%;
    --card-iconsize: 84px;
    position: relative;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(149, 157, 165, .6);
    padding: calc((var(--card-iconsize) / 2) + 1rem) 1rem 1rem 1rem;
    background: #ffffff;
}

.card__icon {
    background: var(--color-darkblue);
    border-radius: 50%;
    height: var(--card-iconsize);
    width: var(--card-iconsize);
    padding: 15px;
    position: absolute;
    top: calc((var(--card-iconsize) / 2) * -1);
    left: calc(50% - (var(--card-iconsize) / 2));
}

.card__icon img {
    max-width: 100%;
    max-height: 100%;
}

.card__title {
    padding: 0 3.5rem 1rem 3.5rem;
    text-align: center;
    font-size: 1.5rem;
}

.card__title h3 {
    margin: 0;
}

@media (max-width: 767px) {
    .cards.cards-overlapping .card {
        top: -1rem;
    }
}

/*#endregion*/

/*#region option*/
.option {
    --option-iconsize: 84px;
    display: flex;
    flex-direction: column;
    row-gap: 50px;
    border-left: 1px solid #383a3a;
    padding-left: 40px;
}

.option__icon {
    width: var(--option-iconsize);
    height: var(--option-iconsize);
}


.option__icon img {
    max-width: 100%;
    max-height: 100%;
}

.option__text {
    font-size: 1.15rem;
    color: #e4ebf0;
}

.option__text h3 {
    font-size: 1.5rem;
    margin-bottom: 20px;
    color: #ffffff;
    font-weight: 600;
}


/*#endregion*/

/*#region process*/
.process-description h3 {
    margin-bottom: 0;
}

.process-description p {
    margin-top: 0.25rem;
}

.timeline {
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
}

.timeline-item {
    width: 200px;
    height: 72px;
    flex-grow: 0;
    flex-shrink: 0;
    background: var(--color-darkblue);
    color: #fff;
    padding: 1rem;
    position: relative;
    padding-left: 60px;
}

.timeline-item:first-child {
    padding-left: 45px;
}

.timeline-item:first-child:before {
    border: 0 none;
}

.timeline-item:before {
    content: "";
    position: absolute;
    top: 0;
    height: 0;
    border-left: 36px solid white;
    border-bottom: 36px inset transparent;
    border-top: 36px inset transparent;
    width: 0;
    left: 0;
}

.timeline-item:after {
    content: "";
    height: 0;
    border-left: 36px solid var(--color-darkblue);
    right: -36px;
    border-top: 36px inset transparent;
    border-bottom: 36px inset transparent;
    z-index: 2;
    width: 0;
    position: absolute;
    top: 0;
}

@media (max-width: 1200px) {
    .timeline {
        flex-direction: column;
        width: 200px;
        flex-shrink: 0;
    }

    .process {
        display: flex;
        flex-direction: row;
    }
}

@media (max-width: 768px) {

    .process {
        display: flex;
        flex-direction: column;
    }

    .timeline {
        gap: 0px;
        align-self: center;
    }

    .timeline-item {
        height: 122px;
        padding: 35px 2rem 0 2rem;

        text-align: center;
    }

    .timeline-item:first-child {
        height: 102px;
        padding: 15px 2rem 0 2rem;
    }

    .timeline-item:last-child {
        height: 92px;
        padding: 35px 2rem 0 2rem;
    }

    .timeline-item:first-child:before {
        display: none;
    }

    .timeline-item:last-child:after {
        display: none;
    }

    .timeline-item:before {
        width: 101%;
        height: 30px;
        border: 0;
        /* background: var(--color-darkblue); */
        background: #ffffff;
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - 20px), calc(50% + 20px) calc(100% - 20px), 50% 100%, calc(50% - 20px) calc(100% - 20px), 0 calc(100% - 20px));
        top: 0;
    }

    .timeline-item:after {
        width: 101%;
        height: 30px;
        border: 0;
        top: initial;
        right: initial;
        bottom: initial;
        left: initial;
        background: #ffffff;
        clip-path: polygon(0 0, calc(50% - 4.14px - 20px) 0, 50% calc(20px + 4.14px), calc(50% + 4.14px + 20px) 0, 100% 0, 100% 100%, 0 100%);
        margin-top: -10px;
        left: 0;
        bottom: -1px;
    }
}

/*#endregion*/

/*#region footer*/
footer {
    background: var(--color-darkblue);
    color: #fff;
    padding: 60px 0;
}

footer h2 {
    font-size: 2rem;
}

footer a {
    color: #fff;
    text-decoration: none;
}

footer a:hover {
    color: #fff;
}

.footer-btn {
    padding: 0.5rem 1.25rem;
    margin: 0 1rem;
    border-radius: 8px;
    white-space: pre;
}

.footer-btn:hover {
    background: rgba(255 255 255 / 20%);
}

.footer-contact {
    display: flex;
    gap: 4rem;
    width: 100%;
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #cecece;
}

.footer-contact__item {
    border-radius: 12px;
    background: #121a1f;
    display: flex;
    gap: 1rem;
    padding: 1rem;
    align-items: center;
    width: 25%;
}

.footer-contact__item-text {
    font-size: 0.875rem;
}

.footer-contact__item-text h5 {
    margin: 0 0 0.5rem 0;
    font-size: 1.125rem;
}

@media (max-width: 1300px) {
    .footer-contact {
        gap: 2rem;
    }
}

@media (max-width: 1080px) {
    .footer-contact {
        flex-wrap: wrap;
    }

    .footer-contact__item {
        width: calc(50% - 2rem);
    }
}

@media (max-width: 768px) {
    .footer-contact {
        gap: 1rem;
        flex-direction: column;
    }

    .footer-contact__item {
        width: 100%;
    }
}



/* .list {
    padding: 0;
}

.list__item {
    list-style: none;
    color: #fff;
}

.list__link {
    color: #fff;
    text-decoration: none;
    width: 100%;
    display: flex;
    align-items: center;
    padding: 0.5rem 0;
}

.list__link:hover {
    background: rgba(255 255 255 / 20%);
    border-radius: 8px;
}

.list__link:before {
    content: "";
    position: absolute;
    top: calc(50% - 7.5px);
    right: 10px;
    height: 15px;
    width: 15px;
    background-image: url(/images/icons/chevron-up.svg);
    background-repeat: no-repeat;
} */

/*#endregion*/

/*#region contact*/
.background--full {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}

.contact {
    display: grid;
    padding-bottom: 3rem;
    padding-top: 3rem;
    grid-template-columns: 1fr 1fr;
}

.contact .contact-form {
    padding: 4rem 3rem 2rem 3rem;
    width: 100%;
    background: #393939;
    position: relative;
}

.contact .contact-image {
    width: 100%;
    height: 100%;
}

.contact .contact-form:before {
    content: "";
    background-image: url(../images/contact-envelope.webp);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 10;
    pointer-events: none;
    opacity: 0;
    transform-origin: bottom right;
    transform: scale(0);
    transition: 300ms linear transform, 300ms linear opacity;
}

.contact .contact-form:after {
    content: "";
    background: #f8dab6;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: bottom right;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2.5rem;
    pointer-events: none;
    opacity: 0;
    transition: 300ms linear transform, 300ms linear opacity;
    text-align: center;

}

.contact.contact--send-confirm .contact-form:before,
.contact.contact--send-confirm .contact-form:after {
    pointer-events: all;
    transform: scale(1);
    opacity: 1;
}

/*#endregion*/

/*#region grid*/
.grid {
    display: grid;
    gap: 1.875rem;
    row-gap: 0.75rem;
    width: 100%;
}

.grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.grid-cols-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
}

.grid-cols-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
}

.grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.grid-cols-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
}

.grid-cols-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
}

.grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.col-span-1 {
    grid-column: span 1 / span 1;
}

.col-span-2 {
    grid-column: span 2 / span 2;
}

.col-span-3 {
    grid-column: span 3 / span 3;
}

.col-span-4 {
    grid-column: span 4 / span 4;
}

.col-span-5 {
    grid-column: span 5 / span 5;
}

.col-span-6 {
    grid-column: span 6 / span 6;
}

.col-span-7 {
    grid-column: span 7 / span 7;
}

.col-span-8 {
    grid-column: span 8 / span 8;
}

.col-span-9 {
    grid-column: span 9 / span 9;
}

.col-span-10 {
    grid-column: span 10 / span 10;
}

.col-span-11 {
    grid-column: span 11 / span 11;
}

.col-span-12 {
    grid-column: span 12 / span 12;
}

/* Tablet */
@media (min-width: 767px) {

    .sm\:col-span-2 {
        grid-column: span 2 / span 2;
    }

    .sm\:col-span-3 {
        grid-column: span 3 / span 3;
    }

    .sm\:col-span-4 {
        grid-column: span 4 / span 4;
    }

    .sm\:col-span-5 {
        grid-column: span 5 / span 5;
    }

    .sm\:col-span-6 {
        grid-column: span 6 / span 6;
    }

    .sm\:col-span-7 {
        grid-column: span 7 / span 7;
    }

    .sm\:col-span-8 {
        grid-column: span 8 / span 8;
    }

    .sm\:col-span-9 {
        grid-column: span 9 / span 9;
    }

    .sm\:col-span-10 {
        grid-column: span 10 / span 10;
    }

    .sm\:col-span-11 {
        grid-column: span 11 / span 11;
    }

    .sm\:col-span-12 {
        grid-column: span 12 / span 12;
    }

    .sm\:col-1 {
        max-width: 8.333333333333333%;
    }

    .sm\:col-2 {
        max-width: 16.66666666666667%;
    }

    .sm\:col-3 {
        max-width: 25%;
    }

    .sm\:col-4 {
        max-width: 33.333333333333333%;
    }

    .sm\:col-5 {
        max-width: 41.66666666666667%;
    }

    .sm\:col-6 {
        max-width: 50%;
    }

    .sm\:col-7 {
        max-width: 58.333333333333333%;
    }

    .sm\:col-8 {
        max-width: 66.66666666666666%;
    }

    .sm\:col-9 {
        max-width: 75%;
    }

    .sm\:col-10 {
        max-width: 83.333333333333333%;
    }

    .sm\:col-11 {
        max-width: 91.66666666666666%;
    }

    .sm\:col-12 {
        max-width: 100%;
    }
}

/* Tablet Horizontal */
@media (min-width: 1024px) {
    .lg\:col-span-1 {
        grid-column: span 1 / span 1;
    }

    .lg\:col-span-2 {
        grid-column: span 2 / span 2;
    }

    .lg\:col-span-3 {
        grid-column: span 3 / span 3;
    }

    .lg\:col-span-4 {
        grid-column: span 4 / span 4;
    }

    .lg\:col-span-5 {
        grid-column: span 5 / span 5;
    }

    .lg\:col-span-6 {
        grid-column: span 6 / span 6;
    }

    .lg\:col-span-7 {
        grid-column: span 7 / span 7;
    }

    .lg\:col-span-8 {
        grid-column: span 8 / span 8;
    }

    .lg\:col-span-9 {
        grid-column: span 9 / span 9;
    }

    .lg\:col-span-10 {
        grid-column: span 10 / span 10;
    }

    .lg\:col-span-11 {
        grid-column: span 11 / span 11;
    }

    .lg\:col-span-12 {
        grid-column: span 12 / span 12;
    }
}

/* Desktop */
@media (min-width: 1300px) {
    .xl\:col-span-1 {
        grid-column: span 1 / span 1;
    }

    .xl\:col-span-2 {
        grid-column: span 2 / span 2;
    }

    .xl\:col-span-3 {
        grid-column: span 3 / span 3;
    }

    .xl\:col-span-4 {
        grid-column: span 4 / span 4;
    }

    .xl\:col-span-5 {
        grid-column: span 5 / span 5;
    }

    .xl\:col-span-6 {
        grid-column: span 6 / span 6;
    }

    .xl\:col-span-7 {
        grid-column: span 7 / span 7;
    }

    .xl\:col-span-8 {
        grid-column: span 8 / span 8;
    }

    .xl\:col-span-9 {
        grid-column: span 9 / span 9;
    }

    .xl\:col-span-10 {
        grid-column: span 10 / span 10;
    }

    .xl\:col-span-11 {
        grid-column: span 11 / span 11;
    }

    .xl\:col-span-12 {
        grid-column: span 12 / span 12;
    }

    .xl\:col-1 {
        max-width: 8.333333333333333%;
    }

    .xl\:col-2 {
        max-width: 16.66666666666667%;
    }

    .xl\:col-3 {
        max-width: 25%;
    }

    .xl\:col-4 {
        max-width: 33.333333333333333%;
    }

    .xl\:col-5 {
        max-width: 41.66666666666667%;
    }

    .xl\:col-6 {
        max-width: 50%;
    }

    .xl\:col-7 {
        max-width: 58.333333333333333%;
    }

    .xl\:col-8 {
        max-width: 66.66666666666666%;
    }

    .xl\:col-9 {
        max-width: 75%;
    }

    .xl\:col-10 {
        max-width: 83.333333333333333%;
    }

    .xl\:col-11 {
        max-width: 91.66666666666666%;
    }

    .xl\:col-12 {
        max-width: 100%;
    }

}

/*#endregion*/