

/* ============================================================
   TIP FAHRSCHULE – MODERN ADVANTAGES
   ============================================================ */

.tip-advantages,
.tip-advantages *,
.tip-advantages *::before,
.tip-advantages *::after {
    box-sizing: border-box;
}


.tip-advantages {

    --tip-red: #e30613;
    --tip-red-dark: #bd0010;

    --tip-yellow: #ffd600;

    --tip-dark: #15171a;
    --tip-text: #555960;
    --tip-muted: #777b81;

    --tip-bg: #f6f6f6;
    --tip-white: #ffffff;
    --tip-border: #e3e3e3;

    position: relative;

    width: 100%;

    padding:
        110px 0;

    overflow: hidden;

    background:
        var(--tip-bg);

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


/* ============================================================
   TOP BRAND LINE
   ============================================================ */

.tip-advantages::before {

    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 3px;

    background:

        linear-gradient(
            90deg,
            var(--tip-red) 0%,
            var(--tip-red) 84%,
            var(--tip-yellow) 84%,
            var(--tip-yellow) 100%
        );
}


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

.tip-advantages__container {

    width:

        min(
            1350px,
            calc(100% - 80px)
        );

    margin:
        0 auto;

    display:
        grid;

    grid-template-columns:
        minmax(0, .95fr)
        minmax(0, 1.05fr);

    gap:
        92px;

    align-items:
        center;
}


/* ============================================================
   VISUAL
   ============================================================ */

.tip-advantages__visual {

    position:
        relative;

    min-width:
        0;
}


/* ============================================================
   IMAGE
   ============================================================ */

.tip-advantages__image {

    position:
        relative;

    width:
        100%;

    overflow:
        hidden;

    background:
        #ddd;

    border-radius:
        5px;
}


.tip-advantages__image > img {

    display:
        block;

    width:
        100%;

    height:
        auto;

    aspect-ratio:
        1.44 / 1;

    object-fit:
        cover;

    object-position:
        center;

    transition:
        transform .7s cubic-bezier(.2,.7,.2,1),
        filter .7s ease;
}


.tip-advantages__image:hover > img {

    transform:
        scale(1.025);

    filter:
        contrast(1.025)
        saturate(1.035);
}


/* ============================================================
   IMAGE COLOR ACCENT
   ============================================================ */

.tip-advantages__image-accent {

    position:
        absolute;

    left: 0;
    right: 0;
    bottom: 0;

    height:
        5px;

    display:
        flex;
}


.tip-advantages__image-accent span {

    width:
        78%;

    background:
        var(--tip-red);
}


.tip-advantages__image-accent i {

    flex:
        1;

    background:
        var(--tip-yellow);
}


/* ============================================================
   IMAGE NOTE
   ============================================================ */

.tip-advantages__image-note {

    display:
        flex;

    align-items:
        flex-start;

    gap:
        14px;

    max-width:
        360px;

    margin:
        23px 0 0 3px;
}


.tip-advantages__image-note-line {

    width:
        34px;

    height:
        1px;

    flex:
        0 0 34px;

    margin-top:
        8px;

    background:
        var(--tip-red);
}


.tip-advantages__image-note div > span {

    display:
        block;

    color:
        var(--tip-muted);

    font-size:
        10px;

    font-weight:
        450;

    line-height:
        1;

    letter-spacing:
        .08em;

    text-transform:
        uppercase;
}


.tip-advantages__image-note strong {

    display:
        block;

    margin-top:
        7px;

    color:
        var(--tip-dark);

    font-size:
        14px;

    font-weight:
        570;

    line-height:
        1.45;

    letter-spacing:
        -.01em;
}


/* ============================================================
   CONTENT
   ============================================================ */

.tip-advantages__content {

    min-width:
        0;
}


/* ============================================================
   EYEBROW
   fein / modern / ohne Punkt
   ============================================================ */

.tip-advantages__eyebrow {

    display:
        flex;

    align-items:
        center;

    gap:
        11px;

    margin-bottom:
        17px;

    color:
        #6d7075;

    font-size:
        10px;

    font-weight:
        450;

    line-height:
        1;

    letter-spacing:
        .075em;

    text-transform:
        uppercase;
}


.tip-advantages__eyebrow > span {

    width:
        30px;

    height:
        1px;

    background:
        var(--tip-red);
}


/* ============================================================
   H2
   ============================================================ */

.tip-advantages h2 {

    max-width:
        650px;

    margin:
        0;

    color:
        var(--tip-dark);

    font-size:

        clamp(
            39px,
            3.45vw,
            54px
        );

    font-weight:
        610;

    line-height:
        1.04;

    letter-spacing:
        -.043em;

    text-wrap:
        balance;
}


.tip-advantages h2 strong {

    position:
        relative;

    display:
        inline-block;

    color:
        var(--tip-red);

    font-weight:
        610;
}


/* kleine gelbe Linie */

.tip-advantages h2 strong::after {

    content: "";

    position:
        absolute;

    left:
        2px;

    bottom:
        -7px;

    width:
        58px;

    height:
        3px;

    background:
        var(--tip-yellow);
}


/* ============================================================
   INTRO
   ============================================================ */

.tip-advantages__intro {

    max-width:
        670px;

    margin:
        27px 0 32px;

    color:
        var(--tip-text);

    font-size:
        15px;

    font-weight:
        400;

    line-height:
        1.72;
}


/* ============================================================
   BENEFIT GRID
   ============================================================ */

.tip-advantages__list {

    display:
        grid;

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

    gap:
        19px 35px;

    margin:
        0;

    padding:
        0;

    list-style:
        none;
}


/* ============================================================
   BENEFIT ITEM
   ============================================================ */

.tip-advantages__list li {

    position:
        relative;

    display:
        flex;

    align-items:
        flex-start;

    gap:
        12px;

    min-width:
        0;

    margin:
        0;

    padding:
        0;
}


/* ============================================================
   CLEAN CHECK
   ============================================================ */

.tip-advantages__check {

    width:
        18px;

    height:
        22px;

    flex:
        0 0 18px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        flex-start;

    padding-top:
        3px;

    color:
        var(--tip-red);

    font-size:
        11px;
}


/* ============================================================
   BENEFIT TEXT
   ============================================================ */

.tip-advantages__list strong {

    display:
        block;

    color:
        var(--tip-dark);

    font-size:
        13px;

    font-weight:
        650;

    line-height:
        1.4;

    letter-spacing:
        -.01em;
}


.tip-advantages__list li div > span {

    display:
        block;

    margin-top:
        4px;

    color:
        #73777d;

    font-size:
        11px;

    font-weight:
        400;

    line-height:
        1.55;
}


/* ============================================================
   ACTIONS
   ============================================================ */

.tip-advantages__actions {

    display:
        flex;

    align-items:
        center;

    flex-wrap:
        wrap;

    gap:
        11px;

    margin-top:
        37px;
}


/* ============================================================
   BUTTON BASE
   ============================================================ */

.tip-advantages-btn {

    min-height:
        59px;

    display:
        inline-flex;

    align-items:
        center;

    overflow:
        hidden;

    border-radius:
        10px;

    text-decoration:
        none !important;

    transition:

        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}


/* ============================================================
   PRIMARY
   ============================================================ */

.tip-advantages-btn--primary {

    color:
        #fff !important;

    background:
        var(--tip-red);

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

    box-shadow:
        0 13px 30px
        rgba(227,6,19,.16);
}


.tip-advantages-btn__text {

    display:
        flex;

    align-items:
        center;

    min-height:
        57px;

    padding:
        0 23px;

    font-size:
        13px;

    font-weight:
        620;

    line-height:
        1;

    letter-spacing:
        -.01em;
}


/* ============================================================
   YELLOW ARROW
   ============================================================ */

.tip-advantages-btn__arrow {

    width:
        58px;

    min-height:
        57px;

    align-self:
        stretch;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    color:
        #111;

    background:
        var(--tip-yellow);

    transition:
        width .27s ease;
}


.tip-advantages-btn__arrow svg {

    width:
        19px;

    height:
        19px;

    fill:
        none;

    stroke:
        currentColor;

    stroke-width:
        1.8;

    stroke-linecap:
        round;

    stroke-linejoin:
        round;

    transition:
        transform .27s ease;
}


/* ============================================================
   PRIMARY HOVER
   ============================================================ */

.tip-advantages-btn--primary:hover {

    transform:
        translateY(-3px);

    background:
        var(--tip-red-dark);

    border-color:
        var(--tip-red-dark);

    box-shadow:
        0 18px 38px
        rgba(227,6,19,.22);
}


.tip-advantages-btn--primary:hover
.tip-advantages-btn__arrow {

    width:
        66px;
}


.tip-advantages-btn--primary:hover
.tip-advantages-btn__arrow svg {

    transform:
        translateX(4px);
}


/* ============================================================
   SECONDARY
   ============================================================ */

.tip-advantages-btn--secondary {

    gap:
        10px;

    padding:
        0 19px;

    color:
        #3d4045 !important;

    background:
        transparent;

    border:
        1px solid
        #d5d5d5;

    font-size:
        12px;

    font-weight:
        500;
}


.tip-advantages-btn--secondary i {

    color:
        var(--tip-red);

    font-size:
        13px;
}


.tip-advantages-btn--secondary:hover {

    color:
        var(--tip-dark) !important;

    transform:
        translateY(-3px);

    background:
        #fff;

    border-color:
        rgba(227,6,19,.28);

    box-shadow:
        0 12px 26px
        rgba(20,22,25,.07);
}


/* ============================================================
   MICRO TRUST
   ============================================================ */

.tip-advantages__micro {

    display:
        flex;

    align-items:
        center;

    flex-wrap:
        wrap;

    gap:
        21px;

    margin-top:
        22px;

    color:
        #797c81;

    font-size:
        10px;

    font-weight:
        430;
}


.tip-advantages__micro span {

    display:
        inline-flex;

    align-items:
        center;

    gap:
        7px;
}


.tip-advantages__micro i {

    color:
        var(--red, #e30613);

    font-size:
        8px;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1100px) {

    .tip-advantages {

        padding:
            90px 0;
    }


    .tip-advantages__container {

        width:
            calc(100% - 54px);

        grid-template-columns:
            minmax(0, .9fr)
            minmax(0, 1.1fr);

        gap:
            55px;
    }


    .tip-advantages__list {

        grid-template-columns:
            1fr;

        gap:
            13px;
    }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 767px) {

    .tip-advantages {

        padding:
            74px 0 78px;
    }


    .tip-advantages__container {

        width:
            calc(100% - 38px);

        grid-template-columns:
            1fr;

        gap:
            46px;
    }


    /* Text vor Bild */
    .tip-advantages__content {

        order:
            1;
    }


    .tip-advantages__visual {

        order:
            2;
    }


    .tip-advantages__eyebrow {

        margin-bottom:
            14px;

        font-size:
            9px;

        font-weight:
            450;
    }


    .tip-advantages h2 {

        font-size:

            clamp(
                35px,
                9.5vw,
                44px
            );

        font-weight:
            600;

        line-height:
            1.05;
    }


    .tip-advantages__intro {

        margin-top:
            23px;

        font-size:
            14px;

        line-height:
            1.65;
    }


    .tip-advantages__list {

        grid-template-columns:
            1fr;

        gap:
            15px;
    }


    .tip-advantages__list strong {

        font-size:
            13px;
    }


    .tip-advantages__list li div > span {

        font-size:
            11px;
    }


    .tip-advantages__actions {

        flex-direction:
            column;

        align-items:
            stretch;

        margin-top:
            29px;
    }


    .tip-advantages-btn {

        width:
            100%;
    }


    .tip-advantages-btn--primary {

        justify-content:
            space-between;
    }


    .tip-advantages-btn__text {

        flex:
            1;
    }


    .tip-advantages-btn__arrow {

        flex:
            0 0 58px;
    }


    .tip-advantages-btn--secondary {

        justify-content:
            center;
    }


    .tip-advantages__micro {

        gap:
            12px 19px;
    }


    .tip-advantages__image {

        border-radius:
            4px;
    }


    .tip-advantages__image > img {

        aspect-ratio:
            1.3 / 1;
    }


    .tip-advantages__image-note {

        margin-top:
            18px;
    }

}


/* ============================================================
   SMALL MOBILE
   ============================================================ */

@media (max-width: 410px) {

    .tip-advantages__container {

        width:
            calc(100% - 30px);
    }


    .tip-advantages__micro {

        align-items:
            flex-start;

        flex-direction:
            column;
    }

}


/* ============================================================
   ACCESSIBILITY
   ============================================================ */

.tip-advantages-btn:focus-visible {

    outline:
        3px solid
        var(--tip-yellow);

    outline-offset:
        4px;
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .tip-advantages__image > img,
    .tip-advantages-btn,
    .tip-advantages-btn__arrow,
    .tip-advantages-btn__arrow svg {

        transition:
            none !important;
    }

}

