/* Lead-form additions only; existing page and hero styling is unchanged. */
.contact-form .field input,
.contact-form .field textarea { font-size: 16px; }
.contact-form .channel-fields { border: 0; padding: 0; margin: 0 0 20px; min-width: 0; }
.contact-form .channel-fields legend { font-size: 16px; margin-bottom: 8px; }
.contact-form .channel-fields legend span { font-weight: 400; }
.contact-form .channel-options { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.contact-form .channel-options label { display: flex; align-items: center; gap: 9px; min-height: 44px; cursor: pointer; font-size: 16px; }
.contact-form .channel-options input { width: 20px; height: 20px; margin: 0; accent-color: #eac57c; }
.contact-form .form-status { min-height: 1.5em; }
.contact-form .form-status:focus { outline: 2px solid currentColor; outline-offset: 5px; }
.contact-form button:disabled { cursor: wait; opacity: .7; }
.contact-form .contact-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }

/* Isolated palette and typography for the new utility pages. */
.p0-page { --p0-ink: #0b201a; --p0-gold: #eac57c; --p0-paper: #f3f0e8; --p0-surface: #fffdf8; background: var(--p0-paper); color: var(--p0-ink); }
.p0-page .p0-main { max-width: 1000px; margin: 0 auto; padding: clamp(56px, 9vw, 120px) 24px; font-family: "DM Sans", sans-serif; }
.p0-page .p0-main h1 { font-family: Georgia, serif; font-size: clamp(44px, 7vw, 80px); font-weight: 400; line-height: 1.05; letter-spacing: -.035em; margin: 16px 0 28px; }
.p0-page .p0-main h2 { font-family: Georgia, serif; font-size: clamp(26px, 4vw, 36px); font-weight: 400; margin: 0 0 16px; }
.p0-page .p0-main p { max-width: 65ch; font-size: 18px; line-height: 1.65; }
.p0-page .p0-main .eyebrow { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.p0-page .p0-card { background: var(--p0-surface); border-top: 3px solid var(--p0-gold); padding: clamp(24px, 4vw, 40px); margin: 40px 0; }
.p0-page .p0-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 28px; margin-top: 32px; }
.p0-page .p0-actions a { color: var(--p0-ink); text-underline-offset: 5px; min-height: 44px; display: inline-flex; align-items: center; }
.p0-page .p0-actions .p0-primary { background: var(--p0-ink); color: var(--p0-paper); padding: 14px 24px; text-decoration: none; }
.p0-page .p0-main a:focus-visible { outline: 3px solid var(--p0-ink); outline-offset: 5px; }
