

#vipPassword {
    padding: 10px;
    border-radius: 8px;
}
.css-vip-modal .input-group-addon label {
    margin: 0 !important;
}

.input-group-addon {
    padding-right: 20px;
}

.animated {
    opacity: 0;
    will-change: transform, opacity;
}

.animated.visible {
    opacity: 1 !important;
    transform: translateY(0);
    visibility: visible !important;
    animation: fadeInUp 0.8s ease-out forwards; /* Die passende Animation hinzufügen */
}


.animated.fade-in-up.visible {
    animation: fadeInUp 0.8s ease-out forwards;
}

.animated.fade-in-left.visible {
    animation: fadeInLeft 0.8s ease-out forwards;
}

.animated.fade-in-right.visible {
    animation: fadeInRight 0.8s ease-out forwards;
}

.modal-body .text-center {
    text-align: left;
}

.banner {
    display: flex;
    align-items: center;
    height: 667px;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}

.text-section {
    flex: 0.5;
    padding: 50px;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #002841;
    height: 100%;
    position: relative;
    z-index: 2;
    text-align: left;
}

.text-section h1 {
    font-size: 2.5rem;
    margin-bottom: 20px;
    color: #FFFFFF;
}
.text-section p {
    font-size: 1rem;
    margin-bottom: 20px;
    color: #FFFFFF;
}

.banner-buttons {
    display: flex;
    gap: 20px;
    justify-content: flex-start;
    margin-top: 20px;
}

.image-section {
    flex: 0.7;
    height: 100%;
    position: relative;
}

.image-section::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50%; /* Breitere Verlaufsfläche */
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 20%, rgba(0, 40, 65, 0.9) 80%, rgba(0, 40, 65, 1) 100%);
    z-index: 1;
    pointer-events: none;
}


.banner-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

@media (max-width: 768px) {
    .banner {
        flex-direction: column;
        height: auto;
        width: 100vw; /* Volle Breite des Viewports */
        position: relative;
        left: 50%;
        right: 50%;
        margin-left: -50vw;
        margin-right: -50vw;
    }
    .image-section {
        flex: none;
        height: auto;
    }
    .banner-image {
        position: relative;
        height: auto;
    }
    .text-section {
        flex: none;
        padding: 50px;
        text-align: center;
    }
    .banner-buttons {
        flex-direction: row;
        justify-content: center;
        text-align: center;
    }
    .image-section::after {
        background: none;
    }

    .btn, .modal-dialog .answer>a, #amazonpayments .lpa-cancel a, .consent-btn {
        text-align: center;
    }

}

.text-section button:hover {
    transform: scale(1.1); /* Vergrößert den Button bei Hover */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); /* Fügt einen Schatten hinzu */
    color: #000;
}  


.benefits-section {
    text-align: center;
}

.benefits-header {
    margin-bottom: 40px;
}

.benefits-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    justify-content: center;
    align-items: start;
}

.benefit-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    height: 100%;
    width: 100%;
    border: 1px solid #eee;
    border-radius: 8px;
    background: #eee;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}

.benefit-image {
    width: 100%;
    height: 100%;
    border-radius: 8px 8px 0 0;
    
}

.benefit-content {
    padding: 20px;
}

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

@media (min-width: 768px) {
    .benefits-grid {
        grid-template-columns: repeat(2, 1fr);
    }
} 

@media (min-width: 1300px) {
    .benefits-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}


.loginvip {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #002841;
}

.flex {
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    
}

.flex-benefits {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    width: 100%;
}

.flex-benefits h2 {
    margin: 0;
}
.flex-benefits p {
    margin: 0;
}
.flex-benefits-team {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 40px;
    padding: 40px 80px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);

}

.btn.btn-third {
    pointer-events: auto !important;
    background: #ffa500;
    border: 1px solid 	#ffa500;
    color:white;
}

.btn-secondary {
    background: #6F98AE;
    border-color: #6F98AE;
    color: #FFFFFF;
}
.colorheadline {
    color: black !important;
}
.avatar {
    width: 250px;
}

.benefit-icons {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.benefit-icon {
    width: 30px;
    height: 30px;
}

.accordion {
    width: 100%;
    margin: 2rem auto;
    border: 2px solid #002841;
    border-radius: 4px;
    overflow: hidden;
    color: #000;
  }
  
  .accordion__item + .accordion__item {
    border-top: 2px solid #002841;
  }
  
  .accordion__title {
    padding: 1rem;
    background-color: #f5f5f5;
    cursor: pointer;
    user-select: none;
    position: relative;
    font-weight: bold;
  }
  
  .accordion__title::after {
    content: '+';
    position: absolute;
    right: 1rem;
    transition: transform 0.3s;
  }
  
  .accordion__item.active .accordion__title::after {
    transform: rotate(45deg);
  }
  
  .accordion__content {
    padding: 1rem;
    display: none;
    animation: fadeIn 0.3s ease-in-out;
  }
  
  .accordion__item.active .accordion__content {
    display: block;
  }
  
  @keyframes fadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  
  .btn .btn-primary .mtop {
    margin-top: 30px;
  }

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

}

@media (max-width: 1650px) {
    .flip-card {
        width: 300px !important;
        height: 350px !important;
    }
}


.grid {
    display: grid;
    gap: 30px;
    justify-content: center;
    align-items: center;
    max-width: 1700px;
    text-align: center;
    grid-template-columns: 1fr; /* Standard: 1 Spalte */
}

.grid-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding: 40px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}

.avatar {
    width: 400px;
}

.benefit-icons {
    display: flex;
    gap: 10px;
}

.benefit-icon {
    width: 50px;
    height: 30px;
}

.grid-container-benefits {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    text-align: center;
    width: 100%;
    max-width: 1750px;
  
    margin: auto;
    justify-content: center;
}
.grid-item-benefits {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.grid-item-benefits img {
    width: 75px;
    margin-bottom: 10px;
}




@media (min-width: 768px) {
    .grid {
        grid-template-columns: repeat(2, 1fr); /* 2 Spalten ab 768px */
        margin: auto;
        width: 50%;
    }
}

@media (min-width: 1250px) {
    .grid {
        grid-template-columns: repeat(4, 1fr); /* 4 Spalten ab 1250px */
    }
}

@media (max-width: 768px) {
    .grid-container-benefits {
        grid-template-columns: repeat(1, 1fr) !important; /* 1 Spalten ab 768px */
    }
}

@media (max-width: 1200px) {
    .grid-container-benefits {
        width: 100%;
        grid-template-columns: repeat(2, 1fr); /* 2 Spalten ab 768px */
    }
      
    .banner {
        width: 100vw; /* Volle Breite des Viewports */
        position: relative;
        left: 50%;
        right: 50%;
        margin-left: -50vw;
        margin-right: -50vw;
    }
}

.flip-card {
    width: 350px;
    height: 380px;
    perspective: 1000px;
    cursor: pointer;
    touch-action: manipulation; /* Wichtig für Mobile */
    
}

.flip-inner {
    width: 100%;
    height: 100%;
    position: relative;
    transform-style: preserve-3d;
    transition: transform 0.6s ease;
}

.flip-card:hover .flip-inner,
.flip-card.flip-active .flip-inner {
    transform: rotateY(180deg);
}

.flip-front, .flip-back {
    width: 100%;
    height: 100%;
    position: absolute;
    backface-visibility: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 8px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    padding: 20px;
    transition: box-shadow 0.3s ease;
}

.flip-front {
    background-size: cover;
    background-position: center;
    border-radius: 8px;
}

.flip-back {
    background: #002841;
    color: white;
    transform: rotateY(180deg);
    flex-direction: column;
    justify-content: center;
}

.benefit-icons {
    display: flex;
    gap: 10px;
    margin-top: 10px;
}

.benefit-icon {
    width: 30px;
    height: 30px;
}

@media (max-width: 768px) {
    .grid {
        display: flex;
        flex-direction: column;
        align-items: center;

    }

    .flip-card {
        width: 70% !important;
        height: 350px !important;
    }
    .benefits2 {
        align-items: normal;
    }
}

@media (max-width: 550px) {

    .flip-card {
        width: 70% !important;
        height: 350px !important;
    }
}

.hover-tip {
    position: absolute;
    bottom: 10px;
    right: 10px;
    font-size: 18px;
    color: white;
    background: rgba(0, 0, 0, 0.5);
    padding: 8px 10px;
    border-radius: 50%;
    pointer-events: none; /* Kein Klick auf das Icon */
    opacity: 0.8; /* Leicht transparent */
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

/* Kleines Hover-Highlight */
.flip-card:hover .hover-tip {
    transform: scale(1.2);
    opacity: 1;
}

.image-hover {
    overflow: hidden;
    display: inline-block;
}

.image-hover img {
    transition: transform 0.5s ease-in-out;
}

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

.floating {
    animation: floating 3s ease-in-out infinite;
}

@keyframes floating {
    0% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0); }
}



.vereinskollektion {
    max-width: 1700px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: auto;
}
.swiper-container {
    padding-top: 0 !important;
}
.swiper-slide img {
    width: 300px;
}

@media (max-width: 768px) {
    .swiper-slide img {
        width: 200px !important;
    }
}

.swiper-button-prev, .swiper-button-next {
    color: #000;
    z-index: 10;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: flex;
}

    /* Container für die gesamte Strecke */
/* Global */
.body-strecke {
    padding: 100px 20px;
    text-align: center;
    position: relative;
}

/* Headline */
.header-strecke {
    max-width: 600px;
    margin: 0 auto 40px;
}
.subheadline-strecke {
    color: #7099AF;
    font-weight: bold;
    margin-bottom: 5px;
}

.headline-strecke {
    color:black;
}

/* SVG Linie */
.line-svg-strecke {
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 80%;
}

/* Strecke Container */
.container-strecke {
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative;
    justify-content: center;
    max-width: 1700px;
    margin: auto;
    gap: 20px;
}

/* Schritte */
.schritt-strecke {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    position: relative;
    margin: 20px 0;
    transition: transform 0.3s ease;
}
.schritt-strecke:hover {
    transform: translateY(-5px);
}

/* Nummer Kreis */
.nummer-strecke {
    background-color: #7099AF;
    color: white;
    border-radius: 50%;
    width: 80px;
    height: 80px;
    font-size: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-weight: bold;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

/* Text */
.inhalt-strecke {
    margin-left: 15px;
    text-align: left;
}
.text-strecke {
    color: black;
}

/* Button */
.button-strecke {
    margin-top: 10px;
    padding: 10px 20px;
    border: none;
    border-radius: 8px;
    background-color: #007BFF;
    color: white;
    font-size: 16px;
    cursor: pointer;
    transition: background 0.3s ease;
}


/* Mobile Anpassungen */
@media (max-width: 1200px) {
    .line-svg-strecke {
        display: none;
    }
    .schritt-strecke {
        flex-direction: column;
        text-align: center;
        width: 100%;
        max-width: 100%;
    }
    .inhalt-strecke {
        margin-left: 0;
        margin-top: 10px;
        margin-left: 0;
        margin-top: 10px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }
    .nummer-strecke {
        width: 50px;
        height: 50px;
        font-size: 24px;
    }
}

@media (max-width:1350px) {
    .container-strecke {
        flex-direction: column;
    }
}


.benefitsblue {
    padding-top: 50px;
    background: #f2f2f2;
    width: 100vw; /* Volle Breite des Viewports */
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.brand-slider-container {
    position: relative;
    width: 100%;
    margin: auto;
}
.brand-slider {
    width: 100%;
    overflow: hidden;
}
.brand-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding: 20px;
    border: 1px solid grey;
    border-radius: 10px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}

.brand-wrapper {
    gap: 20px;
}
.brand-slider-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 10px;
    cursor: pointer;
}
.brand-slider-button-prev {
    left: -40px;
}
.brand-slider-button-next {
    right: -40px;
}
.brand-slide img {
    width: 150px;
    height: 100px;
    
}




@media (max-width: 768px) {
    .brand-slider-container {
        width: 100%;
    }
    .brand-slider-pagination {
        display: none !important;
    }

    .brand-slider-button-prev {
        display: none
    }
    .brand-slider-button-next {
        display: none
    }
    .brand-slide img {
        width: 120px !important;
        height: 70px;
    }
    
}

.collection-slider-container {
    position: relative;
    width: 100%;
    margin: auto;
}
.collection-slider {
    width: 100%;
    overflow: hidden;
}

.collection-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding: 10px;
    border-radius: 8px;
}
.collection-slide img {
    width: 300px;
    height: 250px;
    object-fit: contain;
}
.collection-slider-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 10px;
    cursor: pointer;
}
.collection-slider-button-prev {
    left: -40px;
}
.collection-slider-button-next {
    right: -40px;
}
.collection-slider-pagination {
    display: block;
    text-align: center;
    margin-top: 10px;
}
@media (max-width: 768px) {
    .collection-slider-pagination {
        display: block;
    }
    .collection-slider-container {
        width: 100%;
  }

  .collection-slider-button-prev {
    display: none;
    }
    .collection-slider-button-next {
        display: none;
    }
}

@media (max-width: 1300px) {
    .collection-slider-container {
        width: 100%;
  }
}


.benefit-flex {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.left-wrapper {
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: flex-start;
}

.wrapper-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.mockupimg {
    max-width: 900px;
}

.card-title {
    color: Black;
    margin: 0;

}
.card-text {
    color: black;
    margin: 0;
}

.icon-be-wrapper {
    height: 80px;
    display: flex;
    justify-content: center;
}
.benefiticon {
    width: 65px;
    height: 65px;
}

@media (max-width: 1500px) {
    .mockupimg {
        max-width: 600px;
    }
}

@media (max-width: 1200px) {
    .benefit-flex {
        flex-direction: column;
        align-items: center;
    }
    
    .benefit-left {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        justify-content: center;
    }
    
    .left-wrapper {
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }
    
    .benefit-right {
        margin-top: 30px;
        text-align: center;
    }
}


@media (max-width: 768px) {
    .mockupimg {
        max-width: 100%;
    }
    .benefit-left {
        grid-template-columns: repeat(1, 1fr);

    }
    
}

.brand-slider-wrapper {
    overflow: hidden;
    position: relative;
    width: 100%;
}

.brand-slider .swiper-wrapper {
    display: flex;
    transition-timing-function: linear !important; /* Verhindert Ruckeln */
    will-change: transform;
    padding-bottom: 0 !important;
}


.collection-slider-wrapper {
    overflow: hidden;
    position: relative;
    width: 100%;
}


.mobile-arrow {
    display: none;
}

@media (max-width: 1350px) {
    .desktop-arrow { display: none !important; }
    .mobile-arrow { display: block !important; }
}

.illustration {
    width: 200px;
}

.image-video {
    width: 80%;
    max-width: 1200px; /* Optional: Maximale Breite */
    display: block;
    margin: 0 auto; /* Zentriert das Video */
}

@media (max-width: 768px) {
    .image-video {
        width: 100%;
    }
}



  .modal-body  .row {
        align-items: center;
    }

    @media (max-width: 768px) {
        .modal-body  .row {
            gap: 15px;
        }
        #content-wrapper {
            margin-top: 0;
        }
        
    }

