:root { --navy: #12375c; --gold: #e9b92d; --red: #bb3a35; --paper: #fffefb; --muted: #667383; --line: #ccd4dc; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--navy); font-family: Georgia, "Times New Roman", serif; }
a { color: inherit; }
.site-header { width: min(1180px, calc(100% - 56px)); margin: 0 auto; min-height: 112px; display: flex; align-items: center; justify-content: center; border-bottom: 1px solid var(--navy); }
.header-brand { display: flex; align-items: center; gap: 12px; color: var(--navy); text-decoration: none; }
.header-brand img { width: 78px; height: 78px; object-fit: contain; mix-blend-mode: multiply; }
.header-brand span { font: 500 20px/1 Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.hero { min-height: 700px; padding: 105px 24px 100px; text-align: center; display: flex; flex-direction: column; align-items: center; }
.kicker { margin: 0; font: 500 18px/1.2 Georgia, serif; letter-spacing: .18em; text-transform: uppercase; font-variant: small-caps; }
h1 { margin: 34px 0 24px; max-width: 1100px; display: flex; flex-direction: column; align-items: center; font: 300 clamp(66px, 10vw, 132px)/.92 Arial, sans-serif; letter-spacing: .035em; text-transform: uppercase; }
.title-main { display: block; }
.title-from { display: block; margin: .15em 0 .08em; font-family: Georgia, serif; font-size: .45em; font-weight: 400; font-variant: small-caps; letter-spacing: .08em; }
.ornament { display: flex; align-items: center; justify-content: center; gap: 8px; width: 235px; color: var(--gold); margin: 2px auto 28px; }
.ornament i { display: block; height: 7px; flex: 1; background: var(--gold); clip-path: polygon(0 50%,100% 0,100% 100%); }
.ornament i:last-child { transform: rotate(180deg); }
.ornament b { font-size: 11px; }
.intro { max-width: 700px; margin: 0; font-size: clamp(19px, 2vw, 25px); line-height: 1.55; color: #294969; }
.signup { width: min(720px, 100%); margin-top: 52px; text-align: left; }
.signup label { display: block; margin-bottom: 9px; font: 600 10px/1 Arial, sans-serif; text-transform: uppercase; letter-spacing: .18em; }
.fields { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 16px; }
.field-wide { grid-column: 1 / -1; }
.field input { width: 100%; min-width: 0; padding: 15px 16px; border: 1px solid var(--navy); background: #fff; color: var(--navy); outline: none; font: 17px Georgia, serif; }
.field input:focus { box-shadow: inset 0 0 0 2px var(--gold); }
.field input::placeholder { color: #778391; }
.helper-text { display: block; margin-top: 7px; color: var(--muted); font-size: 12px; font-style: italic; }
.mailchimp-trap { position: absolute; left: -5000px; }
.submit-button { width: 100%; min-height: 53px; margin-top: 20px; border: 1px solid var(--navy); background: var(--navy); color: #fff; cursor: pointer; font: 600 11px/1 Arial, sans-serif; text-transform: uppercase; letter-spacing: .14em; transition: background .2s; }
.submit-button:hover { background: #20527f; }
.privacy { margin: 11px 0 0; color: var(--muted); text-align: center; font-size: 13px; font-style: italic; }
footer { width: min(1180px, calc(100% - 56px)); min-height: 105px; margin: 0 auto; border-top: 1px solid var(--navy); display: flex; align-items: center; justify-content: center; font: 11px/1.4 Arial, sans-serif; text-transform: uppercase; letter-spacing: .1em; }
@media (max-width: 680px) {
  .site-header { width: calc(100% - 32px); min-height: 88px; }
  .header-brand img { width: 64px; height: 64px; }
  .header-brand span { font-size: 15px; }
  .hero { min-height: 650px; padding: 95px 20px 85px; }
  .kicker { font-size: 15px; }
  h1 { font-size: clamp(50px, 17vw, 78px); line-height: 1; }
  .title-from { margin-top: .22em; }
  .fields { grid-template-columns: 1fr; }
  .field-wide { grid-column: auto; }
  footer { width: calc(100% - 32px); }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
