/* Custom Styles for Museum Website */ :root { --color-primary: #7f1d1d; /* red-900 */ --color-secondary: #b45309; /* amber-700 */ --color-accent: #eab308; /* yellow-500 */ } * { scroll-behavior: smooth; } body { font-family: 'Inter', sans-serif; } h1, h2, h3, h4, h5, h6 { font-family: 'Merriweather', serif; } /* Custom Animations */ @keyframes fade-in-up { 0% { opacity: 0; transform: translateY(30px); } 100% { opacity: 1; transform: translateY(0); } } .animate-fade-in-up { animation: fade-in-up 0.8s ease-out forwards; } /* Scroll-triggered animations */ .reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s ease-out; } .reveal.active { opacity: 1; transform: translateY(0); } /* Custom hover effects */ .hover-lift { transition: transform 0.3s ease, box-shadow 0.3s ease; } .hover-lift:hover { transform: translateY(-5px); box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); } /* Navigation blur effect */ .nav-blur { background-color: rgba(255, 255, 255, 0.9); backdrop-filter: blur(10px); box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } /* Image hover zoom */ .img-zoom-container { overflow: hidden; } .img-zoom-container img { transition: transform 0.5s ease; } .img-zoom-container:hover img { transform: scale(1.1); } /* Custom scrollbar */ ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-track { background: #f1f1f1; } ::-webkit-scrollbar-thumb { background: #7f1d1d; border-radius: 5px; } ::-webkit-scrollbar-thumb:hover { background: #991b1b; } /* Form focus styles */ input:focus, textarea:focus { outline: none; box-shadow: 0 0 0 3px rgba(127, 29, 29, 0.2); } /* Mobile menu animation */ #mobile-menu { transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out; max-height: 0; opacity: 0; overflow: hidden; } #mobile-menu.active { max-height: 500px; opacity: 1; } /* Document card hover */ .doc-card { transition: all 0.3s ease; position: relative; overflow: hidden; } .doc-card::before { content: ''; position: absolute; left: 0; top: 0; height: 100%; width: 4px; background-color: #7f1d1d; transform: scaleY(0); transition: transform 0.3s ease; } .doc-card:hover::before { transform: scaleY(1); } /* Hero gradient text */ .gradient-text { background: linear-gradient(135deg, #ffffff 0%, #eab308 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } /* Section divider */ .section-divider { height: 1px; background: linear-gradient(to right, transparent, #7f1d1d, transparent); margin: 3rem 0; } /* Button pulse animation for CTA */ @keyframes pulse-subtle { 0%, 100% { box-shadow: 0 0 0 0 rgba(127, 29, 29, 0.4); } 50% { box-shadow: 0 0 0 10px rgba(127, 29, 29, 0); } } .btn-pulse { animation: pulse-subtle 2s infinite; } /* Responsive typography adjustments */ @media (max-width: 768px) { h1 { font-size: 2.5rem !important; } h2 { font-size: 1.75rem !important; } .hero-stats { flex-direction: column; gap: 1rem; } } /* Print styles */ @media print { nav, footer, .no-print { display: none; } body { font-size: 12pt; line-height: 1.5; } a { text-decoration: none; color: #000; } a[href]:after { content: " (" attr(href) ")"; font-size: 90%; opacity: 0.7; } }