/* ==========================================================
   FINANZVERMITTLUNG SOMMER
   assets/css/style.css
========================================================== */

/* ==========================================================
   RESET
========================================================== */

*,
*::before,
*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

/* ==========================================================
   ROOT
========================================================== */

:root{

    --primary:#0B1F3A;
    --primary-light:#14335d;

    --secondary:#C8A24A;
    --secondary-dark:#b18f40;

    --white:#ffffff;
    --background:#F7F9FC;

    --text:#1f2937;
    --text-light:#6b7280;

    --border:#e5e7eb;

    --success:#22c55e;

    --shadow-small:0 5px 15px rgba(0,0,0,.05);
    --shadow-medium:0 15px 35px rgba(0,0,0,.08);
    --shadow-large:0 30px 80px rgba(0,0,0,.12);

    --radius:20px;
    --transition:.35s ease;

    --container:1280px;

}

/* ==========================================================
   HTML
========================================================== */

html{

    scroll-behavior:smooth;

}

/* ==========================================================
   BODY
========================================================== */

body{

    background:var(--background);

    color:var(--text);

    font-family:"Inter",sans-serif;

    line-height:1.7;

    overflow-x:hidden;

}

/* ==========================================================
   LINKS
========================================================== */

a{

    color:inherit;

    text-decoration:none;

}

/* ==========================================================
   LISTEN
========================================================== */

ul{

    list-style:none;

}

/* ==========================================================
   BILDER
========================================================== */

img{

    display:block;

    max-width:100%;

}

/* ==========================================================
   CONTAINER
========================================================== */

.container{

    width:min(100% - 40px,var(--container));

    margin-inline:auto;

}

/* ==========================================================
   SECTION
========================================================== */

section{

    padding:120px 0;

}

/* ==========================================================
   TYPOGRAPHY
========================================================== */

h1,
h2,
h3,
h4{

    color:var(--primary);

    font-family:"Poppins",sans-serif;

    line-height:1.2;

}

h1{

    font-size:clamp(3rem,6vw,4.8rem);

    margin-bottom:30px;

}

h2{

    font-size:clamp(2rem,4vw,3.2rem);

    margin-bottom:20px;

}

h3{

    font-size:1.4rem;

    margin-bottom:15px;

}

p{

    color:var(--text-light);

}

/* ==========================================================
   BUTTONS
========================================================== */

.btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:16px 34px;

    border-radius:999px;

    font-weight:600;

    transition:var(--transition);

    cursor:pointer;

}

.btn-primary{

    background:var(--secondary);

    color:#fff;

    box-shadow:var(--shadow-medium);

}

.btn-primary:hover{

    background:var(--secondary-dark);

    transform:translateY(-3px);

}

.btn-secondary{

    border:2px solid var(--primary);

    color:var(--primary);

    background:#fff;

}

.btn-secondary:hover{

    background:var(--primary);

    color:#fff;

}

/* ==========================================================
   SECTION HEADER
========================================================== */

.section-heading{

    max-width:760px;

    margin:0 auto 70px;

    text-align:center;

}

.section-badge{

    display:inline-flex;

    align-items:center;

    padding:10px 18px;

    border-radius:999px;

    background:#EEF4FF;

    color:var(--primary);

    font-weight:600;

    margin-bottom:20px;

}
/* ==========================================================
   HEADER
========================================================== */

.header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:1000;

    background:rgba(255,255,255,.92);

    backdrop-filter:blur(16px);

    border-bottom:1px solid rgba(229,231,235,.8);

    transition:var(--transition);

}

.header__container{

    height:90px;

    display:flex;

    align-items:center;

    justify-content:space-between;

}

.logo img{

    height:58px;

}

.nav ul{

    display:flex;

    align-items:center;

    gap:40px;

}

.nav a{

    position:relative;

    font-weight:600;

    color:var(--primary);

    transition:var(--transition);

}

.nav a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:var(--secondary);

    transition:var(--transition);

}

.nav a:hover{

    color:var(--secondary);

}

.nav a:hover::after{

    width:100%;

}

.header__actions{

    display:flex;

    align-items:center;

    gap:18px;

}

.mobile-menu{

    display:none;

    background:none;

    border:none;

    font-size:1.6rem;

    cursor:pointer;

    color:var(--primary);

}

/* ==========================================================
   HERO
========================================================== */

.hero{

    position:relative;

    overflow:hidden;

    padding-top:180px;

    padding-bottom:140px;

}

.hero__container{

    display:grid;

    grid-template-columns:1.05fr .95fr;

    align-items:center;

    gap:80px;

}

.hero__badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    background:#EEF4FF;

    color:var(--primary);

    padding:12px 22px;

    border-radius:999px;

    margin-bottom:25px;

    font-weight:600;

}

.hero__badge i{

    color:var(--secondary);

}

.hero p{

    max-width:640px;

    font-size:1.1rem;

    margin-bottom:40px;

}

.hero__buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

/* ==========================================================
   HERO SHAPES
========================================================== */

.hero__shape{

    position:absolute;

    border-radius:50%;

    filter:blur(60px);

    z-index:-1;

}

.hero__shape--one{

    width:500px;

    height:500px;

    background:rgba(200,162,74,.12);

    top:-200px;

    right:-120px;

}

.hero__shape--two{

    width:320px;

    height:320px;

    background:rgba(11,31,58,.05);

    bottom:-150px;

    left:-100px;

}
/* ==========================================================
   HERO DASHBOARD
========================================================== */

.hero__dashboard{

    position:relative;

    background:var(--white);

    border-radius:28px;

    padding:38px;

    box-shadow:var(--shadow-large);

    border:1px solid var(--border);

}

.dashboard__header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:35px;

}

.dashboard__title{

    margin:0;

    font-size:1.4rem;

}

.dashboard__status{

    display:flex;

    align-items:center;

    gap:8px;

    color:var(--success);

    font-weight:600;

    font-size:.95rem;

}

.dashboard__items{

    display:flex;

    flex-direction:column;

    gap:28px;

}

.dashboard__item{

    display:flex;

    flex-direction:column;

    gap:12px;

}

.dashboard__top{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.dashboard__label{

    display:flex;

    align-items:center;

    gap:10px;

    font-weight:600;

    color:var(--primary);

}

.dashboard__label i{

    color:var(--secondary);

    width:20px;

    text-align:center;

}

.dashboard__value{

    font-weight:700;

    color:var(--primary);

}

.dashboard__bar{

    width:100%;

    height:10px;

    background:#edf2f7;

    border-radius:999px;

    overflow:hidden;

}

.dashboard__progress{

    height:100%;

    width:0;

    border-radius:999px;

    background:linear-gradient(90deg,var(--secondary),#e4c67b);

    transition:2s ease;

}

.progress-82{width:82%;}
.progress-74{width:74%;}
.progress-58{width:58%;}
.progress-41{width:41%;}

.dashboard__footer{

    margin-top:35px;

    padding-top:25px;

    border-top:1px solid var(--border);

}

.dashboard__analysis{

    display:flex;

    align-items:center;

    gap:10px;

    font-weight:600;

    color:var(--primary);

}

.dashboard__analysis i{

    color:var(--success);

}

.dashboard__hint{

    margin-top:12px;

}

/* ==========================================================
   HERO SCROLL
========================================================== */

.hero__scroll{

    margin-top:80px;

    display:flex;

    justify-content:center;

    align-items:center;

    gap:15px;

    color:var(--text-light);

}

.hero__mouse{

    width:30px;

    height:48px;

    border:2px solid var(--primary);

    border-radius:30px;

    display:flex;

    justify-content:center;

    padding-top:8px;

}

.hero__wheel{

    width:5px;

    height:10px;

    border-radius:999px;

    background:var(--secondary);

    animation:scrollWheel 2s infinite;

}

@keyframes scrollWheel{

    0%{

        opacity:0;

        transform:translateY(0);

    }

    50%{

        opacity:1;

    }

    100%{

        opacity:0;

        transform:translateY(14px);

    }

}

/* ==========================================================
   STRATEGY SECTION
========================================================== */

.strategy{

    background:var(--white);

}

.strategy__grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}
/* ==========================================================
   STRATEGY CARDS
========================================================== */

.strategy-card{

    background:var(--white);

    padding:40px 35px;

    border-radius:24px;

    border:1px solid var(--border);

    box-shadow:var(--shadow-small);

    transition:var(--transition);

    text-align:center;

}

.strategy-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow-large);

}

.strategy-card__icon{

    width:80px;

    height:80px;

    margin:0 auto 25px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-light)
    );

    color:#fff;

    font-size:2rem;

}

.strategy-card h3{

    margin-bottom:18px;

}

.strategy-card p{

    margin:0;

}

.strategy__quote{

    margin-top:80px;

    padding:70px;

    border-radius:30px;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-light)
    );

    text-align:center;

    color:#fff;

}

.strategy__quote h3{

    color:#fff;

    font-size:2rem;

    margin-bottom:20px;

}

.strategy__quote p{

    color:rgba(255,255,255,.88);

    max-width:780px;

    margin:0 auto 35px;

}

/* ==========================================================
   SERVICES
========================================================== */

.services{

    background:var(--background);

}

.services__grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:35px;

}

.service-card{

    background:#fff;

    border-radius:24px;

    padding:40px;

    border:1px solid var(--border);

    box-shadow:var(--shadow-small);

    transition:var(--transition);

}

.service-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow-large);

}

.service-card__icon{

    width:75px;

    height:75px;

    border-radius:20px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(
        135deg,
        var(--secondary),
        #d9bb6b
    );

    color:#fff;

    font-size:1.9rem;

    margin-bottom:25px;

}

.service-card__list{

    margin-top:25px;

    display:flex;

    flex-direction:column;

    gap:14px;

}

.service-card__list li{

    display:flex;

    align-items:center;

    gap:12px;

    font-weight:500;

}

.service-card__list i{

    color:var(--success);

}
/* ==========================================================
   PROCESS
========================================================== */

.process{

    background:var(--white);

}

.process__grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.process-card{

    position:relative;

    background:#fff;

    border:1px solid var(--border);

    border-radius:24px;

    padding:40px 30px;

    text-align:center;

    transition:var(--transition);

    box-shadow:var(--shadow-small);

    overflow:hidden;

}

.process-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow-large);

}

.process-card__number{

    position:absolute;

    top:20px;

    right:25px;

    font-size:3rem;

    font-weight:800;

    color:rgba(11,31,58,.06);

    font-family:"Poppins",sans-serif;

}

.process-card__icon{

    width:80px;

    height:80px;

    margin:0 auto 25px;

    border-radius:20px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-light)
    );

    color:#fff;

    font-size:2rem;

}

.process-card h3{

    margin-bottom:18px;

}

/* ==========================================================
   FINANCE CHECK
========================================================== */

.finance-check{

    background:linear-gradient(
        180deg,
        #f8fbff,
        #eef5ff
    );

}

.finance-check__content{

    display:grid;

    grid-template-columns:1fr 520px;

    gap:70px;

    align-items:center;

}

.finance-check__advantages{

    margin:35px 0;

    display:flex;

    flex-direction:column;

    gap:18px;

}

.finance-check__advantages li{

    display:flex;

    align-items:center;

    gap:14px;

    font-weight:600;

}

.finance-check__advantages i{

    color:var(--success);

}

.score-card{

    background:#fff;

    border-radius:30px;

    padding:40px;

    box-shadow:var(--shadow-large);

    border:1px solid var(--border);

}

.score-card__header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:35px;

}

.score-card__header span{

    background:#eef4ff;

    color:var(--primary);

    padding:8px 18px;

    border-radius:999px;

    font-size:.85rem;

    font-weight:600;

}
/* ==========================================================
   SCORE CARD
========================================================== */

.score-circle{

    width:180px;

    height:180px;

    margin:0 auto 40px;

    border-radius:50%;

    background:conic-gradient(
        var(--secondary) 0deg 260deg,
        #edf2f7 260deg 360deg
    );

    display:flex;

    justify-content:center;

    align-items:center;

    position:relative;

}

.score-circle::before{

    content:"";

    position:absolute;

    width:140px;

    height:140px;

    background:#fff;

    border-radius:50%;

}

.score-circle__value{

    position:relative;

    z-index:2;

    font-size:3rem;

    font-family:"Poppins",sans-serif;

    font-weight:700;

    color:var(--primary);

    line-height:1;

}

.score-circle__text{

    position:absolute;

    bottom:42px;

    left:50%;

    transform:translateX(-50%);

    font-size:.9rem;

    color:var(--text-light);

    z-index:2;

    text-align:center;

    width:120px;

}

.score-list{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.score-item{

    display:flex;

    flex-direction:column;

    gap:10px;

}

.score-item__top{

    display:flex;

    justify-content:space-between;

    font-weight:600;

    color:var(--primary);

}

.score-item__bar{

    width:100%;

    height:10px;

    background:#edf2f7;

    border-radius:999px;

    overflow:hidden;

}

.score-item__progress{

    height:100%;

    border-radius:999px;

    background:linear-gradient(
        90deg,
        var(--secondary),
        #e5cb82
    );

}

.progress-85{

    width:85%;

}

.progress-76{

    width:76%;

}

.progress-60{

    width:60%;

}

.progress-48{

    width:48%;

}

.score-card__footer{

    margin-top:35px;

    padding-top:25px;

    border-top:1px solid var(--border);

    display:flex;

    gap:12px;

    align-items:flex-start;

    color:var(--text-light);

}

.score-card__footer i{

    color:var(--secondary);

    margin-top:3px;

}

/* ==========================================================
   ADVANTAGES
========================================================== */

.advantages{

    background:#ffffff;

}

.advantages__grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.advantage-card{

    background:#fff;

    border:1px solid var(--border);

    border-radius:24px;

    padding:40px 30px;

    text-align:center;

    transition:var(--transition);

    box-shadow:var(--shadow-small);

}

.advantage-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow-large);

}

.advantage-card i{

    font-size:2.5rem;

    color:var(--secondary);

    margin-bottom:25px;

}

.advantage-card h3{

    margin-bottom:18px;

}
/* ==========================================================
   TESTIMONIALS
========================================================== */

.testimonials{

    background:var(--background);

}

.testimonials__grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.testimonial-card{

    background:#fff;

    border-radius:24px;

    padding:40px;

    border:1px solid var(--border);

    box-shadow:var(--shadow-small);

    transition:var(--transition);

}

.testimonial-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow-large);

}

.testimonial-card__stars{

    display:flex;

    gap:6px;

    margin-bottom:25px;

    color:#f5b301;

}

.testimonial-card p{

    margin-bottom:35px;

}

.testimonial-card__author{

    display:flex;

    align-items:center;

    gap:18px;

}

.testimonial-card__avatar{

    width:60px;

    height:60px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-light)
    );

    color:#fff;

    font-weight:700;

}

.testimonial-card__author strong{

    display:block;

    color:var(--primary);

}

.testimonial-card__author span{

    color:var(--text-light);

    font-size:.95rem;

}

/* ==========================================================
   AKADEMIE
========================================================== */

.academy{

    background:#ffffff;

}

.academy__grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.academy-card{

    background:#fff;

    border:1px solid var(--border);

    border-radius:24px;

    padding:40px;

    transition:var(--transition);

    box-shadow:var(--shadow-small);

}

.academy-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow-large);

}

.academy-card i{

    font-size:2.5rem;

    color:var(--secondary);

    margin-bottom:25px;

}

.academy-card p{

    margin-bottom:30px;

}

.academy-card a{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:var(--primary);

    font-weight:600;

    transition:var(--transition);

}

.academy-card a:hover{

    color:var(--secondary);

}
/* ==========================================================
   CONTACT
========================================================== */

.contact{

    background:linear-gradient(
        180deg,
        #f8fbff,
        #eef5ff
    );

}

.contact__grid{

    display:grid;

    grid-template-columns:1fr 580px;

    gap:70px;

    align-items:start;

}

.contact__content{

    padding-right:30px;

}

.contact__info{

    margin-top:45px;

    display:flex;

    flex-direction:column;

    gap:24px;

}

.contact__item{

    display:flex;

    align-items:flex-start;

    gap:20px;

}

.contact__icon{

    width:60px;

    height:60px;

    border-radius:18px;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-light)
    );

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:1.35rem;

    flex-shrink:0;

}

.contact__item h4{

    margin-bottom:6px;

}

.contact__item p{

    margin:0;

}

.contact__form-wrapper{

    background:#fff;

    border-radius:28px;

    padding:45px;

    border:1px solid var(--border);

    box-shadow:var(--shadow-large);

}

.contact__form{

    display:flex;

    flex-direction:column;

    gap:24px;

}

.form-group{

    display:flex;

    flex-direction:column;

}

.form-group label{

    margin-bottom:10px;

    color:var(--primary);

    font-weight:600;

}

.form-group input,
.form-group select,
.form-group textarea{

    width:100%;

    border:1px solid var(--border);

    border-radius:14px;

    padding:16px 18px;

    font-size:1rem;

    font-family:"Inter",sans-serif;

    transition:var(--transition);

    background:#fff;

}

.form-group textarea{

    resize:vertical;

    min-height:180px;

}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{

    outline:none;

    border-color:var(--secondary);

    box-shadow:0 0 0 4px rgba(200,162,74,.15);

}

/* ==========================================================
   CAREER TEASER
========================================================== */

.career-teaser{

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-light)
    );

    text-align:center;

    color:#fff;

}

.career-teaser__content{

    max-width:900px;

    margin:auto;

}

.career-teaser .section-badge{

    background:rgba(255,255,255,.12);

    color:#fff;

}

.career-teaser h2{

    color:#fff;

    margin:30px 0;

}

.career-teaser p{

    color:rgba(255,255,255,.85);

    max-width:700px;

    margin:0 auto 40px;

}
/* ==========================================================
   FOOTER
========================================================== */

.footer{

    background:#081627;

    color:rgba(255,255,255,.85);

    padding:90px 0 30px;

}

.footer__grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr 1fr;

    gap:60px;

    margin-bottom:60px;

}

.footer__logo {
    display: block;
    width: 140px !important;
    height: auto !important;
    max-width: 100%;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    margin-bottom: 25px;
}
.footer__column h3{

    color:#fff;

    margin-bottom:25px;

    font-size:1.2rem;

}

.footer__column p{

    color:rgba(255,255,255,.70);

    margin-bottom:30px;

    line-height:1.8;

}

.footer__column ul{

    display:flex;

    flex-direction:column;

    gap:16px;

}

.footer__column li{

    display:flex;

    align-items:center;

    gap:10px;

    color:rgba(255,255,255,.70);

}

.footer__column a{

    color:rgba(255,255,255,.70);

    transition:var(--transition);

}

.footer__column a:hover{

    color:var(--secondary);

}

.footer__social{

    display:flex;

    gap:15px;

}

.footer__social a{

    width:46px;

    height:46px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(255,255,255,.08);

    color:#fff;

    transition:var(--transition);

}

.footer__social a:hover{

    background:var(--secondary);

    transform:translateY(-5px);

}

.footer__bottom{

    border-top:1px solid rgba(255,255,255,.10);

    padding-top:30px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:20px;

}

.footer__bottom p{

    margin:0;

    color:rgba(255,255,255,.60);

}

.footer__links{

    display:flex;

    align-items:center;

    gap:25px;

}

.footer__links a{

    color:rgba(255,255,255,.70);

    transition:var(--transition);

}

.footer__links a:hover{

    color:var(--secondary);

}

/* ==========================================================
   SIMPLE ANIMATIONS
========================================================== */

.fade-up{

    opacity:0;

    transform:translateY(40px);

    transition:1s ease;

}

.fade-up.active{

    opacity:1;

    transform:translateY(0);

}

::selection{

    background:var(--secondary);

    color:#fff;

}

/* ==========================================================
   ENDE STYLE.CSS
========================================================== */

/* ==========================================================
   RESPONSIVE
========================================================== */


@media (max-width:1100px){

    .hero__container,
    .contact__grid{

        grid-template-columns:1fr;

    }

    .hero{

        padding-top:150px;

        text-align:center;

    }

    .hero__content p{

        margin-left:auto;

        margin-right:auto;

    }

    .hero__buttons{

        justify-content:center;

    }

    .footer__grid{

        grid-template-columns:repeat(2,1fr);

    }

    .career-teaser__content{

        padding:60px 40px;

    }

}

@media (max-width:850px){

    .nav{

        display:none;

    }

    .mobile-menu{

        display:block;

    }

    .header__actions .btn{

        display:none;

    }

    section{

        padding:80px 0;

    }

    .hero{

        padding-top:130px;

    }

    .strategy__quote{

        padding:45px 30px;

    }

    .contact__form-wrapper{

        padding:30px;

    }

}

@media (max-width:600px){

    .footer__column .footer__logo{
       width: 140px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    display: block;}

    .footer__grid{
        grid-template-columns:1fr;
    }

    .hero__buttons{
        flex-direction:column;
    }

    .btn{
        width:100%;
    }

    .dashboard__header{
        flex-direction:column;
        align-items:flex-start;
        gap:12px;
    }

    .career-teaser__content{
        padding:45px 25px;
    }

    .contact__form-wrapper{
        padding:25px;
    }

}
/* FINALER FOOTER-LOGO-FIX */

img.footer__logo {
    width: 140px !important;
    height: auto !important;
    max-width: 140px !important;
    min-width: 0 !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    display: block !important;
}