/*basic*/
/* Inter Regular */
@font-face {
    font-family: 'Inter';
    font-weight: 400;
    font-style: normal;
    src: url('../fonts/Inter/Inter-Regular.woff2') format('woff2'),
        url('../fonts/Inter/Inter18pt-Regular.woff') format('woff');
}

/* Inter Italic */
@font-face {
    font-family: 'Inter';
    font-weight: 400;
    font-style: italic;
    src: url('../fonts/Inter/Inter-Italic.woff2') format('woff2'),
        url('../fonts/Inter/Inter-Italic.woff') format('woff');
}

/* Inter Bold */
@font-face {
    font-family: 'Inter';
    font-weight: 700;
    font-style: normal;
    src: url('../fonts/Inter/Inter-Bold.woff2') format('woff2'),
        url('../fonts/Inter/Inter-Bold.woff') format('woff');
}

/* Inter Bold Italic */
@font-face {
    font-family: 'Inter';
    font-weight: 700;
    font-style: italic;
    src: url('../fonts/Inter/Inter-BoldItalic.woff2') format('woff2'),
        url('../fonts/Inter/Inter-BoldItalic.woff') format('woff');
}

/*Inter ExtraBold */
@font-face {
    font-family: 'Inter';
    font-weight: 800;
    font-style: normal;
    src: url('../fonts/Inter/Inter-ExtraBold.woff2') format('woff2'),
        url('../fonts/Inter/Inter-ExtraBold.woff') format('woff');
}

/*Inter Black */
@font-face {
    font-family: 'Inter';
    font-weight: 900;
    font-style: normal;
    src: url('../fonts/Inter/Inter-Black.woff2') format('woff2'),
        url('../fonts/Inter/Inter-Black.woff') format('woff');
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: Inter, sans-serif !important;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Inter, sans-serif !important;
}

.custom-template-content {
    background-color: #004F9E;
    color: white;
}

.grid-container {
    max-width: 1110px;
    margin: 0 auto;
    gap: 20px;
    display: flex;
    padding: 20px;
}

/*end basic*/


/* Start of style for header */
.custom-header {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 94vh;
    display: flex;
    align-items: center;
    color: white;
    position: relative;
    padding-left: 5%;
}

.header-content {
    margin-top: -100px;
    margin-left: -20px;
}


/* Responsive Styles for Tablets and Mobile */
@media (min-width: 1900px) {
  .custom-header {
    height: 94vh;
  }
}
@media (max-width: 1024px) {

    /* Tablets */
    .custom-header {
        height: 94vh;
    }

    .header-content {
        margin-top: 0px;
        margin-left: 0px;
        padding-top: 0px;
    }
}

@media (max-width: 768px) {

    /* Mobile */
    .custom-header {
        height: 94vh;
        padding-left: 5%;
        padding-right: 5%;
    }

    .header-content {
        max-width: 70%;
        margin-top: 0px;
        margin-left: 0px;
        padding-top: 0px;
    }


}

/* End of style for header */


/* Start of style for content Element image text */
.white-border {
    border: 4px solid #fff;
    width: 100%;
    margin-top: -185px;
    z-index: 1;
}

.ce-text-image {
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 40px;
    margin: 20px 0;
    display: flex;
    justify-content: center;
}

.ce-inner {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 0px;
}

.ce-image {
    margin-top: 20px;
    scroll-margin-top: 85px;
}

.ce-image img {
    max-width: 100%;
    height: auto;
    display: block;
}

.ce-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: -35px;
}

.ce-text p {
    margin-left: 20px;
    font-size: 18px;
    line-height: 24px;
    color: #fff;
    margin-bottom: 20px;
    font-weight: 500;
}

.ce-button {
    margin-left: 20px;
    width: fit-content;
    display: flex;
    padding: 15px 30px;
    background-color: #FFCC00;
    color: #003366;
    text-decoration: none;
    text-align: center;
    transition: background-color 0.3s ease;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    margin-top: 20px;
}

.ce-button:hover {
    /* background-color: #003366; */
}

.top-scroll-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 600;
    line-height: 30px;
    padding: 20px;
}

.top-scroll-container .icon {
    font-size: 14px;
}

.top-text {
    font-size: 24px;
    font-weight: 600;
    line-height: 30px;
    width: 45%;
}

/* Responsive Styles */
@media (max-width: 1024px) {
    .white-border {
        margin-top: -140px;
    }

    .top-scroll-container .icon {
        font-size: 10px;
    }

    .top-text {
        font-size: 20px;
        width: 90%;
        padding-bottom: 10px;
    }

    .ce-inner {
        flex-direction: row;
        align-items: flex-start;
    }

    .ce-image {
        margin-top: 0px;
        width: 40%;
        padding: 0;
        scroll-margin-top: 75px !important;
    }

    .ce-text {
        width: 60%;
        text-align: left;
        padding-left: 10px;
        padding-top: 13px;
        margin-top: -10px;
    }

    .ce-text p {
        font-size: 18px;
        line-height: 24px;
        margin-left: 0;
    }

    .ce-button {
        align-self: flex-start;
        margin-top: 20px;
        margin-left: 0px;
    }
}

@media (max-width: 768px) {

    /* Mobile */
    .white-border {
        margin-top: -160px;
    }

    .top-scroll-container {
        padding: 15px;
    }

    .top-text {
        font-size: 18px;
        line-height: 26px;
        text-align: left;
    }

    .ce-text-image {
        padding-left: 15px;
        padding-right: 15px;
        padding-bottom: 40px;
        margin: 0;
        display: flex;
    }

    .ce-inner {
        flex-direction: column;
        /* align-items: center; */
    }

    .ce-image {
        padding-top: 20px;
        width: 50%;
        scroll-margin-top: 65px !important;
    }
    

    .ce-text {
        width: 100%;
        text-align: left;
        padding-left: 0px;
        padding-top: 13px;
    }


    .ce-text p {
        font-size: 16px;
        line-height: 22px;
    }

    .ce-button {
        font-size: 16px;
        padding: 10px 20px;
        /* margin: 10px auto 0; */
    }
}

@media screen and (min-width: 550px) and (max-width: 768px) {
    .ce-inner {
        margin-top: 30px
    }
}

@media (max-width: 410px) {
    .top-text {
        font-size: 16px;

    }
}

@media screen and (min-width: 768px) and (max-width: 850px) {
    .white-border {
        margin-top: -160px;
    }
}

/* End of style for content Element image text */



/* Start of style content Element Benefits */

.ce-benefits {
    margin-top: 50px;
}

.ce-benefits-cards-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 20px;
    margin: 0;
    padding: 0;
}

.ce-benefits-card {
    background-color: #003366;
    color: #fff;
    padding: 15px;
    display: flex;
    flex-direction: column;
    /* align-items: center;
    text-align: center; */
}

.ce-benefits-card .icon {
    background-color: #003366;
    margin: 0;
    padding: 10px;
}

.ce-benefits-card p {
    padding: 10px;
    font-size: 24px;
    font-weight: 600;
    line-height: 30px;
}

@media (max-width: 1070px) {

    .ce-benefits-card p {
        font-size: 20px;
        line-height: 24px;
    }
}

@media (max-width: 960px) {

    .ce-benefits-card p {
        font-size: 15px;
        line-height: 22px;
    }
}

@media (max-width: 768px) {

    .ce-benefits-cards-container {
        grid-template-columns: repeat(2, 1fr);
    }

    .ce-benefits-card p {
        font-size: 15px;
        line-height: 22px;
    }
}

@media (max-width: 450px) {

    .ce-benefits-cards-container {
        grid-template-columns: 1fr;
    }

    .ce-benefits-card {
        flex-direction: row;
        align-items: center;
        text-align: left;
    }

    .ce-benefits-card .icon {
        margin-right: 10px;
        flex-shrink: 0;
    }

    .ce-benefits-card p {
        padding: 0;
        font-size: 16px;
        padding-top: 20px;
    }
}

.ce-button-center {
    width: fit-content;
    display: flex;
    padding: 15px 30px;
    background-color: #FFCC00;
    color: #003366;
    text-decoration: none;
    text-align: center;
    transition: background-color 0.3s ease;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    margin: 0 auto;
    margin-top: 40px;
}

/* End of style content element benefits */


/* Start of style content element mission */
.ce-mission {
    margin-top: 50px;
    display: flex;
    background-color: #fff;
}

.text-area {
    flex: 0 0 65%;
    padding: 30px;
}

.text-area h2 {
    font-size: 48px;
    font-weight: 600;
    line-height: 58px;
    color: #004f9e;
    margin-bottom: 10px;
}

.text-area p {
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    color: #003366;
    margin-bottom: 15px;
}

.image-area {
    flex: 0 0 35%;
    display: flex;
    justify-content: center;
    padding: 0px;
}

.image-area img {
    max-width: 100%;
    height: auto;
}

/* Responsive Styles */
@media (max-width: 1024px) {
    .text-area {
        flex: 0 0 55%;
        padding: 20px;
    }

    .image-area {
        flex: 0 0 45%;
    }
}

@media screen and (min-width: 950px) and (max-width: 1024px) {
    .text-area {
        flex: 0 0 66.6666%;
    }

    .image-area {
        flex: 0 0 33.3333%;
    }
      .image-area img {
        object-fit: cover !important;
    }
}

@media (max-width: 768px) {
    .ce-mission {
        flex-direction: column;
    }

    .text-area {
        order: 1;
        flex: 1 1 100%;
        padding: 20px;
    }

    .image-area {
        order: 2;
        flex: 1 1 100%;
        padding: 0px;
    }

    .image-area img {
        object-fit: cover;
        width: 100%;
        aspect-ratio: 3 / 2;
    }

    .text-area h2 {
        font-size: 35px;
    }
}

@media (max-width: 450px) {

    .text-area h2 {
        font-size: 30px;
    }
}

/* end of style content element mission */


/* Start of style content element quote */
.main-container {
    background-color: #003366;
    width: 100%;
    margin: 0;
    margin-top: 50px;
}

.ce-zitat {
    background-color: #003366;
    display: grid;
    grid-template-columns: 20% 78%;
    gap: 20px;
    width: 100%;
    max-width: 100%;
    /* padding: 20px; */
    align-items: center;
    justify-content: center;
    padding-top: 30px;
    padding-bottom: 30px;
}

.image-zitat img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 50%;
    width: 190px;
    height: auto;
}

.content-zitat {
    padding-top: 20px;
}

.content-zitat .text {
    font-size: 24px;
    font-weight: 600;
    line-height: 30px;
    margin-bottom: 30px;
}

.content-zitat .name {
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    margin-bottom: 0px;
}

.content-zitat .position {
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;

}

@media (max-width: 768px) {
    /* .ce-zitat {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .image-zitat {
        margin-bottom: 20px;
    } */

    .ce-zitat {
        padding-top: 10px;
        padding-bottom: 10px;
        align-items: flex-start;
        grid-template-columns: 30% 65%;
    }

    .content-zitat {
        padding-top: 0px;
    }

    .content-zitat .text {
        font-size: 18px;
        font-weight: 600;
        line-height: 23px;
        margin-bottom: 30px;
    }

    .content-zitat .name {
        font-size: 16px;
        font-weight: 700;
        line-height: 22px;
        margin-bottom: 0px;
    }

    .content-zitat .position {
        font-size: 16px;
        font-weight: 400;
        line-height: 22px;

    }

    .image-zitat img {}
}

/*End of sylte content element quote */

/*Start of image text card element*/
.ce-image-text-cards {
    margin-top: 50px;
}

.ce-image-text-cards-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 20px;
    margin: 0;
    padding: 0;
}

.ce-image-text-card {
    background-color: #003366;
    color: #fff;
    padding: 0px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    cursor: pointer;
    transition: background-color 0.3s ease;
    height: 400px;
}

.ce-image-text-card:hover {
    background-color: #004080;
}

.ce-image-text-card .image {
    background-color: #003366;
    margin: 0;
    padding: 0px;
    overflow: hidden;
}

.ce-image-text-card .image img {
    width: 100%;
    height: auto;
    transition: transform 0.3s ease;
}

.ce-image-text-card .image:hover img {
    transform: scale(1.1);
}

.ce-image-text-card p {
    font-size: 24px;
    padding: 20px 20px 0px 20px;
    font-weight: 600;
    line-height: 30px;
}

/* Styling für das Modal Video player */
.modal {
    display: none;
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
}

.modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fefefe;
    width: 100%;
    max-width: 900px;
    height: 60%;
    max-height: 900px;
    padding: 0;
    border-radius: 8px;
    overflow: hidden;
    padding-right: 35px;
    padding-left: 35px;
}

.close {
    position: absolute;
    top: 4px;
    right: 10px;
    color: #FFCC00;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
}

.close:hover,
.close:focus {
    color: #009640;
}

.modal-content iframe {
    width: 100%;
    height: 100%;
    border: 0;
}


@media (max-width: 876px) {
    .ce-image-text-cards-container {
        grid-template-columns: repeat(2, 1fr);
    }

    .ce-image-text-card {
        height: 330px;
    }

    .ce-image-text-card p {
        font-size: 18px;
        padding: 10px 10px 0px 10px;
        font-weight: 600;
        line-height: 25px;
    }

    .ce-image-text-card .image img {
        transition: transform 0.3s ease;
    }

    .modal-content {
        width: 90%;
    }
}

@media (max-width: 450px) {
    .ce-image-text-cards-container {
        grid-template-columns: 1fr;
    }


    .ce-image-text-card .image img {
        transition: transform 0.3s ease;

    }

    .modal-content {
        width: 90%;
        height: 30%;
        padding-right: 10px;
        padding-left: 10px;

    }

    .close {}

}

.ce-button-center {
    width: fit-content;
    display: flex;
    padding: 15px 30px;
    background-color: #FFCC00;
    color: #003366;
    text-decoration: none;
    text-align: center;
    transition: background-color 0.3s ease;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    margin: 0 auto;
    margin-top: 40px;
}

/*end of image text card element */


/* Start of style FAQ element */
.ce-faq {
    display: flex;
    justify-content: center;
    margin: 50px auto;
    width: 100%;
}

.faq-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 25px 40px;
    width: 100%;
    border: 2px solid white;
    color: white;
    font-size: 20px;
    font-weight: 600;
    text-decoration: none;
    line-height: 1.4;
    transition: background-color 0.3s;
}

.faq-link:hover {
    background-color: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.faq-text {
    margin-right: auto;

}

.scroll-arrow-wrap {
    margin-top: -20px;
}

/* Responsive Styles for Mobile */
@media (max-width: 768px) {
    .faq-link {
        padding: 10px 20px;
        font-size: 18px;
    }

    .faq-text {
        font-size: 16px;
    }


    .ce-faq .icon {
        font-size: 8px;
    }

    .faq-link:hover {
        background-color: rgba(255, 255, 255, 0.1);
        color: #fff;
    }

    .scroll-arrow-wrap {
        /* font-size: 20px; */
    }
}

/* End of style FAQ element */
