/* Custom styles for Mountain Valley Refrigeration & AC */

:root {
    --burgundy: #7B2D3B;
    --burgundy-light: #9A3D4D;
    --blush: #F4C2C2;
    --blush-light: #F9E5E5;
    --blush-50: #FDF2F2;
    --stone-50: #FAFAF9;
    --stone-100: #F5F5F4;
    --stone-500: #78716C;
    --stone-600: #57534E;
    --stone-800: #292524;
}

/* Playfair Display font setup */
.font-playfair {
    font-family: 'Playfair Display', serif;
}

/* Inter font setup */
.font-inter {
    font-family: 'Inter', sans-serif;
}

/* Custom color classes */
.bg-burgundy {
    background-color: var(--burgundy);
}

.bg-burgundy\/90 {
    background-color: color-mix(in srgb, var(--burgundy) 90%, transparent);
}

.bg-burgundy\/5 {
    background-color: color-mix(in srgb, var(--burgundy) 5%, transparent);
}

.bg-burgundy\/10 {
    background-color: color-mix(in srgb, var(--burgundy) 10%, transparent);
}

.text-burgundy {
    color: var(--burgundy);
}

.text-burgundy\/80 {
    color: color-mix(in srgb, var(--burgundy) 80%, transparent);
}

.text-burgundy\/90 {
    color: color-mix(in srgb, var(--burgundy) 90%, transparent);
}

.text-burgundy\/100 {
    color: color-mix(in srgb, var(--burgundy) 100%, transparent);
}

.bg-blush-50 {
    background-color: var(--blush-50);
}

.bg-blush-100 {
    background-color: var(--blush);
}

.text-blush-500 {
    color: var(--blush);
}

.text-blush-100 {
    color: #FFE5E5;
}

.text-blush-200 {
    color: #FFD4D4;
}

.text-blush-300 {
    color: #FFC4C4;
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: var(--stone-100);
}

::-webkit-scrollbar-thumb {
    background: var(--burgundy);
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--burgundy-light);
}

/* Animation keyframes */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Animation classes */
.animate-fade-in-up {
    animation: fadeInUp 0.8s ease-out forwards;
}

.animate-fade-in {
    animation: fadeIn 0.6s ease-out forwards;
}

/* Delay utilities */
.delay-100 {
    animation-delay: 0.1s;
}

.delay-200 {
    animation-delay: 0.2s;
}

.delay-300 {
    animation-delay: 0.3s;
}

.delay-400 {
    animation-delay: 0.4s;
}

.delay-500 {
    animation-delay: 0.5s;
}

/* Hover effects */
.hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(123, 45, 59, 0.15);
}

/* Mobile menu animations */
.mobile-menu-open #line1 {
    transform: translateY(8px) rotate(45deg);
}

.mobile-menu-open #line2 {
    opacity: 0;
}

.mobile-menu-open #line3 {
    transform: translateY(-8px) rotate(-45deg);
    width: 1.5rem;
}

/* Focus styles for accessibility */
*:focus-visible {
    outline: 2px solid var(--burgundy);
    outline-offset: 2px;
}

/* Print styles */
@media print {
    nav, .mobile-menu, #contact-form button {
        display: none;
    }
    
    body {
        color: #000;
        background: #fff;
    }
    
    .bg-burgundy {
        background-color: #7B2D3B !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
