@import "tailwindcss"; /* Re Evolution Art brand fonts */ @font-face { font-family: 'Krown'; src: url('/fonts/Krown-Bold.otf') format('opentype'); font-weight: 700; font-style: normal; font-display: swap; } @font-face { font-family: 'Krown'; src: url('/fonts/Krown-Regular.otf') format('opentype'); font-weight: 400; font-style: normal; font-display: swap; } @font-face { font-family: 'Narrenschiff'; src: url('/fonts/Narrenschiff-Regular.otf') format('opentype'); font-weight: 400; font-style: normal; font-display: swap; } @font-face { font-family: 'Narrenschiff'; src: url('/fonts/Narrenschiff-Light.otf') format('opentype'); font-weight: 300; font-style: normal; font-display: swap; } :root { --bg-cream: #faf8f5; --bg-dark: #1a1a1a; --bg-darker: #0f0f0f; --text-dark: #2d2d2d; --text-light: #f5f5f5; --text-muted: #6b6b6b; --accent-gold: #c9a962; --accent-lavender: #d4c4e8; --accent-pink: #e8c4d4; --accent-mint: #c4e8d4; --accent-rose: #e8d4c4; } * { margin: 0; padding: 0; box-sizing: border-box; } html { scroll-behavior: smooth; } body { background: var(--bg-cream); color: var(--text-dark); font-family: var(--font-cormorant), 'Cormorant Garamond', Georgia, serif; line-height: 1.8; } /* Typography */ h1, h2, h3, h4 { font-family: var(--font-cormorant), 'Cormorant Garamond', Georgia, serif; font-weight: 300; letter-spacing: 0.05em; } .font-sans-alt { font-family: var(--font-montserrat), 'Montserrat', sans-serif; } /* Navigation */ .nav-link { font-family: var(--font-montserrat), 'Montserrat', sans-serif; font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; text-decoration: none; color: var(--text-dark); transition: color 0.3s ease; padding: 0.5rem 1rem; } .nav-link:hover { color: var(--accent-gold); } /* Elegant button styles */ .btn-outline { display: inline-block; padding: 0.875rem 2rem; border: 1px solid var(--text-dark); border-radius: 50px; font-family: var(--font-montserrat), 'Montserrat', sans-serif; font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; text-decoration: none; color: var(--text-dark); transition: all 0.3s ease; background: transparent; cursor: pointer; } .btn-outline:hover { background: var(--text-dark); color: var(--bg-cream); } .btn-outline-light { border-color: var(--text-light); color: var(--text-light); } .btn-outline-light:hover { background: var(--text-light); color: var(--bg-dark); } .btn-filled { display: inline-block; padding: 0.875rem 2rem; background: var(--text-dark); border: 1px solid var(--text-dark); border-radius: 50px; font-family: var(--font-montserrat), 'Montserrat', sans-serif; font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; text-decoration: none; color: var(--bg-cream); transition: all 0.3s ease; cursor: pointer; } .btn-filled:hover { background: transparent; color: var(--text-dark); } /* Service cards */ .service-card { padding: 3rem 2rem; border-radius: 1rem; text-align: center; transition: transform 0.3s ease, box-shadow 0.3s ease; background: white; } .service-card:hover { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08); } .service-card.lavender { background: var(--accent-lavender); } .service-card.pink { background: var(--accent-pink); } .service-card.mint { background: var(--accent-mint); } .service-card.rose { background: var(--accent-rose); } /* Section spacing */ .section { padding: 6rem 2rem; } @media (min-width: 768px) { .section { padding: 8rem 4rem; } } /* Decorative elements */ .divider { width: 60px; height: 1px; background: var(--accent-gold); margin: 2rem auto; } .divider-wide { width: 120px; } /* Image placeholder */ .img-placeholder { background: linear-gradient(135deg, var(--accent-lavender) 0%, var(--accent-pink) 100%); display: flex; align-items: center; justify-content: center; color: var(--text-dark); font-size: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase; } /* Testimonial */ .testimonial { font-style: italic; font-size: 1.125rem; max-width: 600px; margin: 0 auto; text-align: center; } .testimonial-card { background: white; padding: 2.5rem; border-radius: 1rem; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04); text-align: center; } /* Footer */ .footer-link { font-family: var(--font-montserrat), 'Montserrat', sans-serif; font-size: 0.75rem; letter-spacing: 0.1em; color: var(--text-light); text-decoration: none; opacity: 0.7; transition: opacity 0.3s; } .footer-link:hover { opacity: 1; } /* Hero section */ .hero-gradient { background: linear-gradient( 180deg, var(--bg-cream) 0%, rgba(212, 196, 232, 0.2) 50%, var(--bg-cream) 100% ); } /* Dark sections */ .dark-section { background: var(--bg-dark); color: var(--text-light); } .darker-section { background: var(--bg-darker); color: var(--text-light); } /* Animations */ @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @keyframes fadeInUp { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: translateY(0); } } .fade-in { animation: fadeIn 0.8s ease forwards; } .fade-in-up { animation: fadeInUp 1s ease forwards; } /* Staggered animations */ .stagger-1 { animation-delay: 0.1s; } .stagger-2 { animation-delay: 0.2s; } .stagger-3 { animation-delay: 0.3s; } .stagger-4 { animation-delay: 0.4s; } /* Quote styling */ .quote-mark { font-size: 4rem; line-height: 1; color: var(--accent-gold); opacity: 0.5; } /* Glassmorphism effect */ .glass { background: rgba(255, 255, 255, 0.7); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.3); } /* Mobile menu */ .mobile-menu { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: var(--bg-cream); z-index: 100; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2rem; } /* Event cards */ .event-card { background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 1rem; padding: 2rem; transition: all 0.3s ease; } .event-card:hover { background: rgba(255, 255, 255, 0.08); border-color: var(--accent-gold); }