:root { --navy:#242326; --navy-light:#343237; --cream:#f2f1f3; --paper:#faf9fb; --gold:#76639d; --muted:#c6c1ce; --line:#55515d; --ink:#242326; }
.header, footer { background:#111113; }
.brand { mix-blend-mode:normal; }
h1,h2 { font-family:Arial,Helvetica,sans-serif; font-weight:800; letter-spacing:-1.8px; line-height:1.05; }
h1 { font-size:clamp(46px,5.1vw,78px); }
h1 em { font-style:normal; color:#6e588f; }
h2 { font-size:clamp(35px,3.5vw,54px); }
.button { color:#fff; background:#76639d; border-radius:3px; }
.button:hover { background:#655287; }
.header nav a:hover, .mail-link { color:#c4b4e2; }
.mail-link { border-color:#847198; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline-color:#a18aba; }
.hero-photo img { filter:none; }
.hero-photo::after { background:linear-gradient(transparent,#242326bd); }
.intro,.section-heading>p:not(.eyebrow),.wedding-details p,.wedding-note,.band-heading>div:last-child,.member p,.instagram-line p,.wedding-expectations ul,.event-copy p { color:#59545f; }
.wedding-details article,.wedding-note,.instagram-line,.wedding-expectations h3 { border-color:#d6d1db; }
.list-label,.music-intro>p:not(.eyebrow),.contact-copy>p:not(.eyebrow),.form-help,#form-status { color:#d0cbd6; }
input,select,textarea { border-color:#7b7287; }
input::placeholder,textarea::placeholder { color:#c9c3d0; }
.button.secondary { background:transparent; border-color:#a59baa; color:#f2f1f3; }
.button.secondary:hover { background:#45404c; }
@media(max-width:760px) { h1{font-size:clamp(43px,9.3vw,66px)} h2{font-size:36px} }

.event-copy h3 { margin-bottom: 12px; }
.event-copy .event-reference { font-size: 13px; }
.event-reference a { text-decoration: underline; text-underline-offset: 3px; }
.legal-header { background:#111113; }
