:root {
  color-scheme: light;
  --royal: #173f91;
  --royal-dark: #102d69;
  --gold: #d8a91d;
  --muted: #5e6675;
  font-family: "Segoe UI", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--royal-dark); background: #fff; }
a { color: inherit; }
.topbar { min-height: 78px; padding: 0 clamp(24px, 7vw, 104px); display: flex; align-items: center; justify-content: space-between; background: var(--royal); color: white; border-bottom: 4px solid var(--gold); }
.wordmark { text-decoration: none; font-size: 1.5rem; font-weight: 650; letter-spacing: -.04em; }
.wordmark span { color: var(--gold); }
nav { display: flex; gap: clamp(20px, 4vw, 48px); }
nav a { color: #fff; text-decoration: none; font-size: .9rem; }
nav a:hover, nav a:focus-visible { text-decoration: underline; text-underline-offset: 5px; }
.hero { min-height: 530px; padding: 56px clamp(24px, 8vw, 120px) 50px; display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 30px; overflow: hidden; background: #fff; }
.hero-copy { max-width: 490px; }
.tagline { margin: 18px 0 0; color: #a47e0b; font-size: 1rem; font-weight: 600; letter-spacing: .02em; }
h1 { margin: 0; font-family: Georgia, "Times New Roman", serif; color: var(--royal); font-size: clamp(2.75rem, 5.2vw, 4.4rem); line-height: 1; font-weight: 400; letter-spacing: -.055em; white-space: nowrap; }
h1 span { color: var(--gold); }
.intro { max-width: 405px; margin: 26px 0; color: var(--muted); font-size: 1.08rem; line-height: 1.75; }
.house-art { margin: 0; width: 100%; align-self: center; }
.house-art img { display: block; width: 100%; height: auto; }
.house-art figcaption { margin-top: -4px; color: #747b87; font-family: Georgia, "Times New Roman", serif; font-size: .95rem; font-style: italic; text-align: right; }
.story { padding: 76px 24px 82px; background: #f7f9fd; border-top: 1px solid #e7ebf4; }
.story article { max-width: 760px; margin: 0 auto; }
.story h2 { margin: 0 0 26px; color: var(--royal); font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.2rem, 4vw, 3.1rem); font-weight: 400; line-height: 1.1; letter-spacing: -.035em; }
.story article > p:not(.eyebrow) { margin: 0 0 18px; color: var(--muted); font-size: 1.05rem; line-height: 1.85; }
.story article > p:last-child { margin-bottom: 0; }
.together { padding: 32px 24px; text-align: center; background: #f7f9fd; border-top: 1px solid #e7ebf4; }
.eyebrow { margin: 0; color: #9b7710; font-size: .74rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
footer { display: flex; justify-content: space-between; gap: 16px; padding: 24px clamp(24px, 7vw, 104px); background: var(--royal-dark); color: #eef2fc; font-size: .82rem; }
@media (max-width: 760px) {
  .topbar { min-height: 68px; }
  nav { gap: 16px; }
  nav a { font-size: .82rem; }
  .hero { min-height: 0; grid-template-columns: 1fr; gap: 36px; padding: 58px 26px 40px; }
  h1 { font-size: clamp(2.15rem, 9.8vw, 3.8rem); }
  .house-art { max-width: 600px; margin: 0 auto; }
  .house-art figcaption { margin-top: 4px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
