@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=DM+Mono:wght@300;400;500&display=swap');
:root {
  --black: #080a0f; --dark: #0d0f17; --panel: #111420; --border: #1a1d2e;
  --red: #c41e1e; --red-dim: #7a1212; --gold: #b8924a;
  --white: #f0ede8; --gray: #6b7280; --light: #9ca3af;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { background: var(--black); color: var(--white); font-family: 'DM Mono', monospace; overflow-x: hidden; }
nav { position: fixed; top: 0; left: 0; right: 0; z-index: 100; padding: 20px 60px; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid transparent; transition: all 0.4s; }
nav.scrolled { background: rgba(8,10,15,0.97); border-color: var(--border); backdrop-filter: blur(12px); }
.nav-logo { font-family: 'Cormorant Garamond', serif; font-size: 22px; font-weight: 600; letter-spacing: 0.15em; color: var(--white); text-decoration: none; }
.nav-logo span { color: var(--red); }
.nav-links { display: flex; gap: 36px; align-items: center; }
.nav-links a { color: var(--gray); text-decoration: none; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; transition: color 0.2s; }
.nav-links a:hover, .nav-links a.active { color: var(--white); }
.nav-cta { background: var(--red) !important; color: var(--white) !important; padding: 10px 24px !important; }
.nav-cta:hover { background: #a01818 !important; }
.divider { height: 1px; background: linear-gradient(to right, transparent, var(--border), transparent); margin: 0 60px; }
section { padding: 80px 60px; }
.section-tag { font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--red); margin-bottom: 20px; display: flex; align-items: center; gap: 12px; }
.section-tag::before { content: ''; display: block; width: 24px; height: 1px; background: var(--red); }
.section-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(36px, 4vw, 56px); font-weight: 300; line-height: 1.1; margin-bottom: 24px; }
.section-title em { font-style: italic; color: var(--gold); }
.section-body { font-size: 13px; line-height: 1.9; color: var(--light); max-width: 640px; letter-spacing: 0.02em; }
.btn-primary { background: var(--red); color: var(--white); padding: 16px 40px; font-family: 'DM Mono', monospace; font-size: 11px; letter-spacing: 0.15em; text-transform: uppercase; text-decoration: none; border: none; cursor: pointer; transition: background 0.2s; display: inline-block; }
.btn-primary:hover { background: #a01818; }
.btn-ghost { color: var(--gray); font-size: 11px; letter-spacing: 0.12em; text-decoration: none; text-transform: uppercase; transition: color 0.2s; border: 1px solid var(--border); padding: 16px 40px; display: inline-block; }
.btn-ghost:hover { color: var(--white); border-color: var(--white); }
footer { padding: 60px; border-top: 1px solid var(--border); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; }
.footer-logo { font-family: 'Cormorant Garamond', serif; font-size: 20px; font-weight: 600; letter-spacing: 0.15em; }
.footer-logo span { color: var(--red); }
.footer-copy { font-size: 11px; color: var(--gray); }
.footer-links { display: flex; gap: 32px; }
.footer-links a { font-size: 11px; color: var(--gray); text-decoration: none; transition: color 0.2s; }
.footer-links a:hover { color: var(--white); }
@keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
.fade-up { opacity: 0; animation: fadeUp 0.8s ease forwards; }
.fade-up-1 { animation-delay: 0.1s; } .fade-up-2 { animation-delay: 0.25s; }
.fade-up-3 { animation-delay: 0.4s; } .fade-up-4 { animation-delay: 0.55s; }

/* Layout fix */
section, .page-hero, .contact-layout { max-width: 1400px; margin-left: auto; margin-right: auto; width: 100%; }
nav { max-width: 100%; }
footer { max-width: 1400px; margin-left: auto; margin-right: auto; }
.divider { max-width: 1400px; margin-left: auto; margin-right: auto; }
