.subpage { min-height: 70vh; }
.page-hero { display: grid; grid-template-columns: 1.15fr .85fr; gap: 80px; align-items: end; padding-top: 110px !important; }
.page-hero h1 { font-size: clamp(3.7rem, 7vw, 7rem); margin-bottom: 0; }
.page-hero .lede { padding-bottom: 18px; }
.contact-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 80px; align-items: start; }
.contact-details article { display: grid; grid-template-columns: 1fr auto; gap: 4px 14px; padding: 23px 0; border-top: 1px solid var(--line); }
.contact-details article > span { grid-column: 1 / -1; color: var(--muted); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }
.contact-details article > a { font: 400 clamp(.95rem, 1.55vw, 1.4rem) var(--serif); text-decoration: none; overflow-wrap: anywhere; }
.contact-details article > small { grid-column: 1 / -1; color: #777a80; }
.copy-button { align-self: center; background: transparent; color: var(--gold-hi); border: 1px solid #e7b84f55; border-radius: 99px; padding: 6px 11px; cursor: pointer; }
.availability { color: var(--muted); font-size: .82rem; }
.message-panel { padding: 44px; border: 1px solid var(--line); background: var(--panel); }
.message-panel h2 { font-size: clamp(2.2rem, 4vw, 4rem); margin-top: 8px; }
.form-intro { color: var(--muted); }
.direct-contact-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 32px; }
.direct-contact-actions .button { display: flex; align-items: center; justify-content: center; text-align: center; min-height: 56px; }
.direct-contact-note { color: var(--muted); font-size: .86rem; line-height: 1.6; margin-top: 24px; }
.direct-contact-note a { color: var(--gold-hi); }
form { display: grid; gap: 20px; margin-top: 35px; }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
label { display: grid; gap: 8px; font-size: .8rem; color: #d5d1c8; letter-spacing: .04em; }
input, select, textarea { width: 100%; background: #07090d; color: var(--ink); border: 1px solid #ffffff2d; border-radius: 8px; padding: 13px 14px; font: inherit; letter-spacing: normal; }
textarea { resize: vertical; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--gold); outline-offset: 2px; }
.optional { color: #777a80; }
.consent { display: flex; align-items: flex-start; gap: 11px; color: var(--muted); line-height: 1.45; }
.consent input { width: auto; margin-top: 4px; }
.honeypot { position: absolute; left: -9999px; }
.form-status { min-height: 25px; margin: 0; color: var(--muted); }
.form-status.success { color: #83e5ad; }
.form-status.error { color: #ffaaa0; }
button:disabled { opacity: .55; cursor: wait; }
.partner-categories > .section-number { margin-bottom: 46px; }
.partner-values { display: grid; grid-template-columns: .7fr 1.3fr; gap: 70px; }
.partner-values .principle-list { margin: 0; }
.affiliate-disclosure { padding: 90px !important; background: linear-gradient(135deg, #141922, #0b0d12); border: 1px solid var(--line) !important; margin-top: 80px !important; margin-bottom: 80px !important; }
.affiliate-disclosure > p:not(.section-number) { max-width: 900px; color: #c4c5c8; font-size: 1.08rem; margin-bottom: 32px; }
.affiliate-disclosure .button { margin: 8px 8px 0 0; }
@media (max-width: 860px) {
  .page-hero, .contact-layout, .partner-values { grid-template-columns: 1fr; gap: 35px; }
  .contact-layout { padding-top: 70px !important; }
  .message-panel { padding: 26px 20px; }
  .field-row { grid-template-columns: 1fr; }
  .direct-contact-actions { grid-template-columns: 1fr; }
  .affiliate-disclosure { padding: 45px 24px !important; }
  .page-hero .lede { padding-bottom: 0; }
}
