/* Roof Guard Cover — Custom Styles */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300..700;1,9..40,300..700&family=Playfair+Display:wght@500;600;700&display=swap');

:root {
    --gold: #C5A059;
    --gold-dark: #A8864A;
    --navy: #0B1120;
    --navy-light: #151D32;
    --navy-card: #1A2338;
    --accent: #3B82F6;
    --accent-bright: #60A5FA;
}

html { scroll-behavior: smooth; }

body {
    font-family: 'DM Sans', ui-sans-serif, system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
}

.font-display { font-family: 'Playfair Display', Georgia, serif; }

.bg-gold { background-color: var(--gold); }
.bg-gold-dark, .hover\:bg-gold-dark:hover { background-color: var(--gold-dark); }
.bg-navy { background-color: var(--navy); }
.bg-navy-light { background-color: var(--navy-light); }
.bg-navy-card { background-color: var(--navy-card); }
.bg-accent { background-color: var(--accent); }
.hover\:bg-blue-600:hover { background-color: #2563eb; }

.text-gold { color: var(--gold); }
.text-accent { color: var(--accent); }
.text-accent-bright { color: var(--accent-bright); }

.border-gold { border-color: var(--gold); }

.shadow-accent\/25 { box-shadow: 0 10px 15px -3px rgba(59, 130, 246, 0.25); }

#site-header.scrolled {
    background: white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

#site-header.scrolled .nav-link { color: #374151; }
#site-header.scrolled .brand-text { color: #111827; }

@keyframes spin {
    to { transform: rotate(360deg); }
}
.animate-spin { animation: spin 1s linear infinite; }

@keyframes bounce {
    0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(0.8,0,1,1); }
    50% { transform: none; animation-timing-function: cubic-bezier(0,0,0.2,1); }
}
.animate-bounce { animation: bounce 1s infinite; }
