body{margin:0;background:#f6f2e9;color:#173e49;font-family:Inter,Arial,sans-serif}#open-house{font-size:16px;line-height:1.75}#open-house *{box-sizing:border-box}#open-house h1,#open-house h2{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;line-height:1.05}#open-house h1{font-size:clamp(48px,7vw,92px);margin:20px 0}#open-house h2{font-size:clamp(34px,4vw,52px);margin:12px 0 24px}.oh-wrap{width:min(1160px,calc(100% - 48px));margin:auto}.oh-hero{padding:110px 0 80px;min-height:620px;display:flex;align-items:end;background:linear-gradient(90deg,rgba(7,31,39,.85),rgba(7,31,39,.35)),url('../images/events/wedding-reception-aerial.png') center/cover;color:#fff}.oh-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:600}.oh-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 28px;border-radius:28px;background:#d4b06a;color:#173e49;text-decoration:none;font-weight:600;margin:12px 6px 0 0}.oh-intro{padding:80px 0;max-width:780px;text-align:center}.oh-experiences{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-bottom:80px}.oh-experiences img{width:100%;height:280px;object-fit:cover}.oh-experiences h2{margin-top:24px!important;font-size:clamp(30px,3vw,42px)!important}.oh-experiences article:last-child img{object-position:center 75%}.oh-partners{background:#173e49;color:white;padding:70px 0}.oh-partners dl{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px}.oh-partners dt{font-weight:600}.oh-partners dd{margin:6px 0;color:#dfebe9}.oh-rsvp{display:grid;grid-template-columns:1fr 1.4fr;gap:50px;padding:80px 0;scroll-margin-top:100px}.oh-form{background:white;padding:24px;min-width:0}.oh-form a{color:#173e49;text-decoration:underline}.oh-next{padding-bottom:80px;text-align:center}#open-house a:focus-visible{outline:3px solid #b58b38;outline-offset:5px}@media(max-width:760px){.oh-experiences,.oh-rsvp{grid-template-columns:1fr}.oh-partners dl{grid-template-columns:1fr 1fr}.oh-hero{min-height:570px;padding-top:70px}.oh-experiences img{height:260px}.oh-rsvp{gap:20px}.oh-form{padding:16px}}@media(max-width:400px){.oh-partners dl{grid-template-columns:1fr}}