/* Material Theme Overrides */

/* --- Navbar & Header Padding Reductions --- */
.header {
    padding-top: 75px !important;
}

.navbar {
    padding: 4px 0 !important;
}

.sticky {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
}

.sticky .navbar {
    padding: 2px 0 !important;
}

@media (max-width: 991px) {
    .header {
        padding-top: 60px !important;
    }

    .navbar {
        padding: 3px 0 !important;
    }

    .navbar-brand img {
        max-width: 120px !important;
    }

    .navbar-collapse {
        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1) !important;
        border-radius: 0 0 12px 12px !important;
        padding-bottom: 10px !important;
    }
}

@media (max-width: 767px) {
    .header {
        padding-top: 50px !important;
    }

    .navbar {
        padding: 2px 0 !important;
    }

    .navbar-brand img {
        max-width: 110px !important;
    }

    /* Reduce global massive paddings on mobile */
    .pt-120 {
        padding-top: 60px !important;
    }
    .pb-120 {
        padding-bottom: 60px !important;
    }

    .slider-section .single-slider .slider-content {
        padding: 80px 0 !important;
    }
}


/* --- Material UI Elements --- */

/* Buttons */
.theme-btn, .custom-btn {
    border-radius: 8px !important;
    box-shadow: 0 4px 6px rgba(0, 173, 181, 0.2);
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.theme-btn:hover, .custom-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 12px rgba(0, 173, 181, 0.3) !important;
    background-color: #00989e !important;
}

/* Cards & Surfaces */
.service-item, .single-team, .anfahrt-info, .anfahrt-map iframe, .gallery-section .swiper, .contact-section .contact-form {
    border-radius: 16px !important;
    border: none !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.service-item:hover, .single-team:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 20px rgba(0, 173, 181, 0.12), 0 4px 8px rgba(0, 173, 181, 0.08) !important;
}

/* Forms */
.contact-section .custom-input, .contact-section .custom-textarea {
    border-radius: 12px !important;
    border: 1px solid #e0e0e0 !important;
    background-color: #f9fafb !important;
    transition: all 0.25s ease !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.02) !important;
}

.contact-section .custom-input:focus, .contact-section .custom-textarea:focus {
    border-color: #00adb5 !important;
    background-color: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(0, 173, 181, 0.15) !important;
}

/* Material Floating Cookie Banner (Snackbar Style) */
#cookieBanner {
    max-width: 900px;
    margin: 0 auto;
    bottom: 20px !important;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15), 0 4px 10px rgba(0, 0, 0, 0.05) !important;
    border-top: none !important;
    padding: 24px !important;
}

@media (max-width: 767px) {
    #cookieBanner {
        max-width: 90%;
        bottom: 10px !important;
        padding: 16px !important;
    }
}

/* --- Developer Credit --- */
.text-teal {
    color: #00adb5 !important;
}

.text-teal:hover {
    color: #008b8f !important;
}

.dev-credit {
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

.dev-credit:hover {
    opacity: 1;
}
