/* Custom Design & Animation Styles for Pacific Crest HVAC */

:root {
    --brand-navy: #0b1d3a;
    --brand-blue: #1b4d89;
    --brand-accent: #f97316;
    --brand-accent-hover: #ea580c;
    --brand-emergency: #dc2626;
    --brand-gold: #fbbf24;
}

/* Offset for Sticky Header anchors */
html {
    scroll-padding-top: 130px;
}

/* Typography Enhancements */
body {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

/* Smooth Focus States */
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible {
    outline: 2px solid var(--brand-accent);
    outline-offset: 2px;
}

/* Badge Glow & Pulse Effects */
.pulse-badge {
    box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.7);
    animation: pulse-ring 2s infinite cubic-bezier(0.66, 0, 0, 1);
}

@keyframes pulse-ring {
    0% {
        box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.7);
    }
    70% {
        box-shadow: 0 0 0 8px rgba(220, 38, 38, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(220, 38, 38, 0);
    }
}

/* Service Area Card Hover micro-interaction */
.service-area-card {
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.service-area-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 24px -10px rgba(15, 23, 42, 0.12);
}

/* Custom Range Slider Styling */
input[type=range] {
    -webkit-appearance: none;
    appearance: none;
    background: #334155;
    border-radius: 9999px;
    height: 8px;
    outline: none;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #f97316;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(249, 115, 22, 0.5);
    border: 2px solid #ffffff;
    transition: transform 0.15s ease;
}

input[type=range]::-webkit-slider-thumb:hover {
    transform: scale(1.15);
}

/* City Tabs active state */
.city-tab-btn.active {
    background-color: #f97316 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.35);
}

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

::-webkit-scrollbar-track {
    background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
    background: #94a3b8;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: #64748b;
}

/* Custom Toast Alerts */
.toast {
    animation: toast-in 0.3s ease-out forwards;
}

@keyframes toast-in {
    from {
        opacity: 0;
        transform: translateY(12px) scale(0.96);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Print Styles */
@media print {
    #topBar, #mainHeader, .fixed, #pricing, #estimate-form button {
        display: none !important;
    }
}
