/* Contact Us. Newly written from the live page's own stylesheet (BRAG-REFERENCE39, final
   effective values). The live page renders the site inquiry form (.baa-inquiry-form), confirmed
   2026-10-21 (BRAG-PUBLIC-PREVIEW-02); its field rules below come from that stylesheet. */
.contact { padding: 60px 20px 64px; color: var(--ink); font-family: var(--font-body); line-height: 1.65; }
.contact .gold-star { color: var(--gold); }
.contact__inner { max-width: 680px; margin: 0 auto; }
.contact__head { margin-bottom: 36px; text-align: center; }
.contact__eyebrow { margin: 0 0 12px; color: var(--bronze); font-size: 10px; font-weight: 700; line-height: 1.6; letter-spacing: .16em; text-transform: uppercase; }
.contact h1 { margin: 0 0 16px; font: 500 clamp(46px, 6vw, 66px)/1.05 var(--font-display); letter-spacing: -.025em; }
.contact__intro { max-width: 470px; margin: 0 auto; color: #444; font-size: 16px; }
.contact__panel { position: relative; padding: 40px; border: 1px solid #E8E3D9; border-top-color: var(--gold); background: radial-gradient(ellipse at 50% 100%, rgba(228, 180, 70, .055), transparent 65%), #fff; box-shadow: 0 12px 30px rgba(30, 24, 14, .035); }
.contact__panel::before { content: ""; position: absolute; top: 8px; left: 8px; width: 30px; height: 30px; border-top: 1px solid rgba(228, 180, 70, .55); border-left: 1px solid rgba(228, 180, 70, .55); pointer-events: none; }
.contact__follow { max-width: 490px; margin: 32px auto 0; font-size: 15px; line-height: 1.7; text-align: center; }
.contact__follow p { margin: 0 0 12px; color: #444; }
.contact__follow a { color: var(--bronze); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.contact__follow a:hover { color: var(--ink); }
.contact__follow a:focus-visible { outline: 2px solid var(--bronze); outline-offset: 4px; }
.contact__signoff { display: flex; align-items: center; justify-content: center; gap: 18px; margin: 32px 0 0; font-size: 14px; text-align: center; }
.contact__signoff::before, .contact__signoff::after { content: ""; flex: 1; max-width: 90px; height: 1px; background: #E8E3D9; }
@media (max-width: 600px) {
  .contact { padding: 40px 0 44px; }
  .contact__head { margin-bottom: 28px; }
  .contact__panel { padding: 28px 18px; }
  .contact__intro { font-size: 15px; }
  .contact__follow { margin-top: 28px; }
  .contact__signoff { gap: 12px; font-size: 13px; }
}
@media (max-width: 380px) { .contact__panel { padding-left: 8px; padding-right: 8px; } }

/* Inquiry form (live rules: .baa-contact .baa-inquiry-form) */
.inquiry-form p { margin: 0 0 18px; }
.inquiry-form label { display: block; margin-bottom: 6px; font-weight: 700; font-size: 14px; }
.inquiry-form input, .inquiry-form textarea { display: block; box-sizing: border-box; width: 100%; padding: 12px; border: 1px solid #ccc4b6; border-radius: 3px; background: #fff; color: #111; font: 16px/1.5 Arial, sans-serif; }
.inquiry-form input:focus, .inquiry-form textarea:focus { outline: 2px solid #916342; outline-offset: 2px; }
.inquiry-form button { width: 100%; min-height: 50px; padding: 12px; border: 1px solid #e4b446; border-radius: 3px; background: #e4b446; color: #111; font: 700 16px/1.2 Arial, sans-serif; cursor: pointer; }
.inquiry-form button:hover { background: #111; color: #e4b446; }
.inquiry-form button:focus-visible { outline: 2px solid #916342; outline-offset: 3px; }
.inquiry-form .inquiry-note { font-size: 13px; line-height: 1.5; color: #444; }
/* States (new; the live error/success wording is not known, so these messages are labelled previews) */
.inquiry-form [aria-invalid="true"] { border-color: #a1271b; box-shadow: inset 4px 0 0 #a1271b; }
.inquiry-error { display: block; margin-top: 6px; color: #8f1f14; font-size: 14px; font-weight: 700; }
.inquiry-error::before { content: "! "; }
.inquiry-error[hidden], .inquiry-errors[hidden], .inquiry-status[hidden], .inquiry-form[hidden] { display: none; }
.inquiry-errors, .inquiry-status { margin: 0 0 22px; padding: 14px 16px; border: 1px solid; font-size: 15px; line-height: 1.55; }
.inquiry-errors { border-color: #d9a49c; background: #fdf1ef; color: #6f1a10; }
.inquiry-errors ul { margin: 8px 0 0; padding-left: 20px; }
.inquiry-errors a { color: #6f1a10; font-weight: 700; }
.inquiry-status--success { border-color: #a9c9a3; background: #eff7ed; color: #1f4a1a; }
.inquiry-status--failure { border-color: #d9a49c; background: #fdf1ef; color: #6f1a10; }
.inquiry-status:focus, .inquiry-errors:focus { outline: 2px solid #916342; outline-offset: 2px; }
.sim-tag { display: inline-block; margin-right: 6px; padding: 1px 6px; border: 1px dashed currentColor; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
/* Preview control bar: review tool only, never part of the WordPress page */
.sim-bar { display: flex; flex-wrap: wrap; gap: 8px; margin: -12px -12px 26px; padding: 12px; border: 1px dashed #b98a2f; background: #fff8e6; font-size: 13px; }
.sim-bar__label { flex-basis: 100%; margin: 0; color: #4a3a17; }
.sim-bar button { padding: 6px 10px; border: 1px solid #b98a2f; background: #fff; color: #4a3a17; font: 700 12px/1.2 Arial, sans-serif; cursor: pointer; }
.sim-bar button:focus-visible { outline: 2px solid #916342; outline-offset: 2px; }
