.todo {
    color: magenta;
}

.tp-banner-thumb {
    height: 500px;
}

@media (prefers-reduced-motion: no-preference) {
    .tp-hero-title {
        font-size: 180px;
    }
}


/* GENERAL */
@media (min-width: 1400px) {
    .container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl {
        max-width: 1600px !important;
    }
}


.tp-btn {
    text-transform: none;
}

/* NAVIGATION */
/* NAVIGATION */
.tp-main-menu nav ul li a {
    font-size: 18px;
}

.tp-main-menu .bbmotion-navigation-color nav ul li a {
    /* remove if you want black color in navigation */
    color: var(--tp-common-white);
    font-size: 18px;
}


/* HOME - SERVICES */
/* Fluide, responsive Titelgröße Mobile→Desktop auf der <h2> (nicht dem Link),
   damit die line-height proportional mitschrumpft – sonst entstehen mobil
   große Leerräume ober-/unterhalb. Ersetzt das frühere
   "font-size: 90px !important", das die Template-Breakpoints aushebelte. */
.tp-service-title {
    font-size: clamp(26px, 6.5vw, 90px);
}
/* Titel standardmäßig schwarz – das Template setzt opacity:0.3 (wirkte hellgrau)
   und macht ihn erst beim Hover voll sichtbar. Hover behält Unterstrich + Pfeil. */
.tp-service-title a {
    opacity: 1;
}
/* Mobile: Abstände zwischen den Leistungen straffen (Template-Margins + Leading
   sind für die großen Desktop-Titel gedacht, mobil dadurch zu luftig). */
@media (max-width: 767px) {
    .tp-service-title {
        line-height: 1.05;
        margin-bottom: 0;
    }
    .tp-service-list-wrap .tp-service-item.mb-5 {
        margin-bottom: 4px;
    }
}

/* HOME - TEXT SLIDER (über Footer): schwarzes Band → Schrift + Trennpunkt weiß */
.shop-text-slider span {
    color: var(--tp-common-white);
}
.shop-text-slider span span {
    background: var(--tp-common-white);
}

/* HOME - TESTIMANTIOLS */
.reviewed-on-google-container {
    min-height: 20px;
    width: 20%;
}

/* ABOUT US */
.tp-about-thumb {
    border-radius: 16px;
    overflow: hidden;
    height: 553px;
}

.tp-about-thumb img {
    height: 850px;
    object-fit: cover;
    margin-top: -30px;
}

/* REFERENCeS */



/* FOOTER */
.tp-hero-social a {
    border: 1px solid var(--tp-common-black);
}

.ca-footer-subtitle::before {
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    background: var(--tp-common-black);
    top: 7px;
    left: 0;
    border-radius: 50px;
}

/* SCROLL-TO-TOP über dem WhatsApp-Floating-Button stapeln (gleiche Spalte unten rechts) */
/* WhatsApp-Button: bottom 24px + 56px Höhe + 12px Abstand = 92px */
.back-to-top-wrapper {
    right: 30px; /* WhatsApp right 24px + (56-44)/2 für mittige Ausrichtung der Spalte */
}
.back-to-top-wrapper.back-to-top-btn-show {
    bottom: 92px;
}
@media (max-width: 575px) {
    .back-to-top-wrapper {
        right: 19px; /* WhatsApp right 16px + (50-44)/2 */
    }
    .back-to-top-wrapper.back-to-top-btn-show {
        bottom: 78px; /* WhatsApp bottom 16px + 50px + 12px */
    }
}
