.member-enrollment-content { background: #e9e9e9 url('../../images/geometric-background.png') top center / 100% auto no-repeat; min-height: 100vh; }
.member-enrollment-container { max-width: 1240px; margin: auto; padding: 38px 60px 65px; }
.member-enrollment-breadcrumbs { font-size: 11px; text-transform: uppercase; margin-bottom: 32px; }
.member-enrollment-breadcrumbs a { font-size: inherit; }
.member-enrollment-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.member-enrollment-heading h1 { font: italic 700 48px/1.2 'Playfair Display', Georgia, serif; text-transform: none; margin: 0; }
.member-enrollment-heading img { flex-shrink: 0; }
.member-enrollment-intro { max-width: 760px; padding-bottom: 24px; border-bottom: 1px solid #ccc; }
.member-enrollment-page a { color: #00703c; }
.member-enrollment-intro a, .member-enrollment-new a, .member-lookup-result a { text-decoration: underline; }
.member-lookup-heading { display: flex; align-items: baseline; gap: 24px; margin: 24px 0; }
.member-lookup-heading h2 { font: 800 14px 'Open Sans', sans-serif; text-transform: uppercase; }
.member-lookup-heading p { font-size: 13px; }
.member-required { color: #124734; font-size: 14px; }
.member-lookup-options { border: 0; padding: 0; margin-bottom: 20px; display: flex; gap: 24px; flex-wrap: wrap; }
.member-lookup-options legend { font-size: 13px; margin-bottom: 8px; }
.member-lookup-options label { font-size: 14px; cursor: pointer; }
.member-lookup-options input { accent-color: #00703c; }
.member-enrollment-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.member-field { min-width: 0; }
.member-field label { display: block; background: #fff; padding: 10px 15px 0; color: #705f46; font-size: 12px; text-transform: uppercase; font-weight: 800; letter-spacing: .8px; }
.member-field input { display: block; background: #fff; width: 100%; height: 42px; border: 1px solid transparent; padding: 4px 15px 10px; border-radius: 0; font-size: 16px; color: #231f20; }
.member-field input:focus { outline: 2px solid #00703c; outline-offset: -2px; }
.member-field input[aria-invalid=true] { border-color: #a52222; }
.member-field-error { display: block; color: #a52222; font-size: 13px; margin: 4px 0; }
.member-lookup-result { border-left: 4px solid #00703c; background: #fff; padding: 20px; margin: 24px 0; overflow-wrap: anywhere; }
.member-lookup-result p { margin: 0 0 10px; }
.member-enrollment-actions { display: flex; gap: 28px; align-items: center; justify-content: flex-end; padding-top: 28px; margin-top: 28px; border-top: 1px solid #ccc; }
.member-enrollment-actions button { background: #00703c; color: white; min-width: 160px; padding: 15px 30px; border: 0; font-weight: 800; font-size: 12px; letter-spacing: 1px; text-transform: uppercase; cursor: pointer; }
.member-enrollment-actions button:disabled { opacity: .65; cursor: wait; }
.member-enrollment-actions a { text-transform: uppercase; font-size: 12px; font-weight: 800; }
.member-enrollment-new { margin-top: 24px; }
.member-enrollment-page [hidden] { display: none !important; }
@media(max-width: 767px) {
  .member-enrollment-page > .sidebar { display: none; }
  .member-enrollment-page > .page-content-wrap { margin-left: 0; width: 100%; }
  .member-enrollment-container { padding: 24px 20px 40px; }
  .member-enrollment-heading { align-items: flex-start; flex-direction: column-reverse; }
  .member-enrollment-heading h1 { font-size: 38px; }
  .member-enrollment-fields { grid-template-columns: 1fr; }
  .member-lookup-heading { display: block; }
  .member-enrollment-actions { justify-content: space-between; }
}
