/* Custom styles for Pro Clean Surface Solutions */

/* Smooth scroll offset for fixed navbar */
section[id] {
    scroll-margin-top: 80px;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #0d0d0d;
}
::-webkit-scrollbar-thumb {
    background: #6b1c1c;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #9c2424;
}

/* Selection color */
::selection {
    background: rgba(185, 47, 47, 0.4);
    color: #f5f0eb;
}

/* Service card hover lift */
.service-card {
    transform: translateY(0);
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.4s ease;
}
.service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 60px rgba(61, 12, 12, 0.3);
}

/* Gallery item hover */
.gallery-item {
    height: 260px;
}
@media (min-width: 768px) {
    .gallery-item {
        height: 300px;
    }
    .gallery-item.row-span-2 {
        height: 620px;
    }
}

/* Process step hover */
.process-step {
    opacity: 1;
}

/* Navbar glass effect */
#navbar {
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
}
#navbar.scrolled {
    background: rgba(7, 7, 7, 0.9);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

/* Mobile menu transitions */
#mobile-menu.open {
    opacity: 1;
    pointer-events: all;
}

/* Menu button animation */
.menu-line {
    display: block;
}
#menu-btn.active .menu-line:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}
#menu-btn.active .menu-line:nth-child(2) {
    opacity: 0;
    transform: scaleX(0);
}
#menu-btn.active .menu-line:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
    width: 1.25rem;
}

/* Mobile links */
.mobile-link {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.4s ease, transform 0.4s ease;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        transition-duration: 0.01ms !important;
    }
    html {
        scroll-behavior: auto;
    }
    .gallery-item img {
        transition: none;
    }
}

/* Gold shimmer on hover for buttons */
button::after, a::after {
    content: '';
}

/* Select dropdown styling */
select option {
    background: #0d0d0d;
    color: #f5f0eb;
    padding: 8px;
}

/* Focus visible styles */
:focus-visible {
    outline: 2px solid #c9952e;
    outline-offset: 2px;
}

/* Print styles */
@media print {
    body {
        background: white;
        color: black;
    }
    #navbar, .gallery-item, #process {
        display: none;
    }
}
