/* Contact page styling — designed to sit alongside the existing style.css */
.contact-page {
  min-height: calc(100vh - 150px);
  padding: clamp(70px, 10vw, 130px) 7vw 100px;
  color: #eee4dc;
  background:
    radial-gradient(ellipse at 18% 12%, rgba(128, 73, 43, .16), transparent 38%),
    radial-gradient(ellipse at 85% 75%, rgba(164, 105, 61, .10), transparent 35%),
    #100e0d;
}
.contact-intro {
  max-width: 850px;
  margin: 0 auto 75px;
  text-align: center;
}
.contact-kicker, .contact-section-number {
  color: #d9a36f;
  font-size: 11px;
  letter-spacing: 2.2px;
  line-height: 1.7;
}
.contact-intro h1 {
  margin: 22px 0;
  color: #f1e8df;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 6.5vw, 76px);
  font-weight: 400;
  line-height: 1.08;
}
.contact-intro h1 em, .contact-note h2 em, .contact-thank-you h2 em {
  color: #d9a36f;
  font-weight: 400;
}
.contact-gold-rule {
  width: 68px;
  height: 1px;
  margin: 28px auto;
  background: linear-gradient(90deg, transparent, #d9a36f, transparent);
}
.contact-lead {
  max-width: 650px;
  margin: 0 auto;
  color: #b9aaa0;
  font-size: 15px;
  line-height: 1.9;
}
.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: clamp(35px, 8vw, 110px);
  max-width: 1120px;
  margin: 0 auto;
  align-items: start;
}
.contact-note { padding-top: 10px; }
.contact-note h2, .contact-thank-you h2 {
  margin: 28px 0 22px;
  color: #f1e8df;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 4vw, 49px);
  font-weight: 400;
  line-height: 1.15;
}
.contact-note > p, .contact-thank-you > p {
  max-width: 390px;
  color: #b9aaa0;
  font-size: 14px;
  line-height: 1.9;
}
.contact-email {
  display: inline-block;
  margin-top: 24px;
  color: #e4b47f;
  text-decoration: none;
  border-bottom: 1px solid rgba(228, 180, 127, .45);
  padding-bottom: 6px;
}
.contact-signoff {
  display: block;
  margin-top: 34px;
  color: #8e8179;
  font-family: Georgia, serif;
  font-style: italic;
}
.contact-form-panel {
  padding: clamp(24px, 4vw, 48px);
  border: 1px solid rgba(205, 153, 119, .22);
  background: linear-gradient(145deg, rgba(37, 29, 25, .88), rgba(20, 17, 15, .92));
  box-shadow: 0 24px 70px rgba(0, 0, 0, .22);
}
.contact-field { margin-bottom: 25px; }
.contact-field label {
  display: block;
  margin-bottom: 10px;
  color: #d9a36f;
  font-size: 10px;
  letter-spacing: 1.8px;
}
.contact-field input, .contact-field textarea {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 14px 2px;
  border: 0;
  border-bottom: 1px solid rgba(205, 153, 119, .35);
  border-radius: 0;
  outline: none;
  color: #f0e6dd;
  background: transparent;
  font: inherit;
  font-size: 14px;
  resize: vertical;
  transition: border-color .2s ease;
}
.contact-field input:focus, .contact-field textarea:focus {
  border-bottom-color: #e6ad67;
}
.contact-field input::placeholder, .contact-field textarea::placeholder {
  color: #81756e;
}
.contact-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  min-width: 210px;
  padding: 16px 22px;
  border: 1px solid #e6ad67;
  color: #17110d;
  background: #e6ad67;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.7px;
  cursor: pointer;
  transition: color .25s ease, background .25s ease;
}
.contact-submit:hover, .contact-submit:focus-visible {
  color: #e6ad67;
  background: transparent;
}
.contact-submit:disabled { opacity: .65; cursor: wait; }
.contact-privacy {
  margin: 16px 0 0;
  color: #83766e;
  font-size: 11px;
  line-height: 1.6;
}
.contact-status {
  min-height: 20px;
  margin: 12px 0 0;
  color: #f0a17f;
  font-size: 13px;
  line-height: 1.6;
}
.contact-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.contact-thank-you h2 { margin-top: 24px; }
.contact-thank-you .contact-gold-rule { margin: 28px 0; }
.contact-back-link {
  display: inline-block;
  margin-top: 28px;
  color: #e6ad67;
  font-size: 11px;
  letter-spacing: 1.5px;
  text-decoration: none;
}
.contact-footer {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 25px 7vw;
  color: #8e8179;
  background: #100e0d;
  font-size: 10px;
  letter-spacing: .7px;
}
.contact-footer a { color: inherit; text-decoration: none; }
.contact-nav-current { box-shadow: 0 0 0 1px rgba(230, 173, 103, .25); }
@media (max-width: 760px) {
  .contact-page { padding: 65px 6vw 75px; }
  .contact-intro { margin-bottom: 52px; }
  .contact-layout { grid-template-columns: 1fr; gap: 42px; }
  .contact-note { text-align: center; }
  .contact-note > p { margin-left: auto; margin-right: auto; }
  .contact-footer { flex-direction: column; text-align: center; line-height: 1.8; }
}
