/* Native consent controls remain visible and keyboard-operable on every contact route. */
#gbContactPageForm .gb-checkbox-input input[type="checkbox"] {
  display: block !important;
  position: static !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  accent-color: #0a3825;
  cursor: pointer;
}
#gbContactPageForm .gb-checkbox-input > .checkmark { display: none !important; }
#gbContactPageForm .gb-checkbox-row { min-height: 44px; }
#gbContactPageForm .gb-checkbox-row[hidden],
#gbContactPageForm .gb-owner-message-help[hidden] { display: none !important; }
#gbContactPageForm .gb-checkbox-text { font-size: 14px !important; line-height: 1.6 !important; }
#gbContactPageForm .gb-checkbox-input input:focus-visible,
#gbContactPageForm :is(a, button):focus-visible { outline: 3px solid #8b6c2c; outline-offset: 4px; }
#gbContactPageForm :is(input:not([type="checkbox"]), select, textarea):focus-visible { outline: 2px solid #0a3825; outline-offset: 2px; }

/* Only the known owner landing-page route gets the compact consultation view. */
html.gb-owner-contact .gb-contact-wrapper { background: #f7f5ef; padding-top: var(--gb-owner-header-space, 0px); }
html.gb-owner-contact .gb-contact-wrapper .gb-contact-hero {
  height: auto !important;
  min-height: 0 !important;
  padding: 30px 20px !important;
  margin-bottom: 28px !important;
  background: #0a3825 !important;
  text-align: left;
}
html.gb-owner-contact .gb-contact-wrapper .gb-contact-hero .gb-hero-overlay { display: none; }
html.gb-owner-contact .gb-hero-content { width: 100%; max-width: 1160px; padding: 0; animation: none; }
html.gb-owner-contact .gb-hero-eyebrow { font-size: 14px !important; font-weight: 400; text-transform: none; letter-spacing: .02em !important; margin-bottom: 8px !important; color: #d7e3da; }
html.gb-owner-contact .gb-contact-wrapper .gb-contact-hero h1 { font: 700 clamp(30px, 3.3vw, 42px)/1.15 Georgia, serif !important; letter-spacing: -.025em; margin-bottom: 12px !important; color: #fff; }
html.gb-owner-contact .gb-contact-wrapper .gb-contact-hero p { font-size: 16px !important; line-height: 1.65 !important; max-width: 65ch; margin: 0; opacity: 1; color: #e2e9e3; }
html.gb-owner-contact .gb-contact-container { gap: 32px; margin-bottom: 48px; }
html.gb-owner-contact .gb-form-card { padding: 28px !important; opacity: 1; animation: none; }
/* The page heading names the request; keep the redundant form heading for AT. */
html.gb-owner-contact .gb-form-header .gb-headline { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
html.gb-owner-contact .gb-form-header .gb-divider { display: none; }
html.gb-owner-contact .gb-form-header .gb-subline { margin: 0 0 24px !important; font-size: 15px !important; line-height: 1.65 !important; color: #526259; }
html.gb-owner-contact #gbContactPageForm .gb-form-grid { gap: 18px !important; }
html.gb-owner-contact #gbContactPageForm .gb-form-group { min-width: 0; padding-right: 0; }
html.gb-owner-contact #gbContactPageForm .gb-label { font-size: 14px !important; line-height: 1.5; letter-spacing: 0 !important; text-transform: none; }
html.gb-owner-contact #gbContactPageForm :is(.gb-input-field, .gb-select-field, .gb-textarea) { font-size: 16px !important; min-height: 50px; padding: 12px 14px !important; border-color: #cfd5cd; background: #fff; color: #183b2d; }
html.gb-owner-contact #gbContactPageForm ::placeholder { color: #66736c; opacity: 1; }
html.gb-owner-contact #gbContactPageForm .gb-select-field { padding-right: 40px !important; }
html.gb-owner-contact #gbContactPageForm .gb-textarea { min-height: 116px !important; }
html.gb-owner-contact #gbContactPageForm .gb-owner-message-help { margin: 0; font: inherit; font-size: 14px; line-height: 1.6; color: #526259; }
html.gb-owner-contact #gbContactPageForm .gb-btn { min-height: 54px; text-transform: none; letter-spacing: 0; }
html.gb-owner-contact .gb-team-card { opacity: 1; animation: none; }
html.gb-owner-contact .gb-team-desc { display: none; }
html.gb-owner-contact .gb-team-image-wrapper { height: 220px; }
html.gb-owner-contact .gb-info-list { padding: 0; list-style: none; }
html.gb-owner-contact .gb-info-list li { margin: 0 0 6px; padding: 12px 0; }
html.gb-owner-contact .gb-info-list li:hover { transform: none; }
html.gb-owner-contact .gb-info-detail { min-width: 0; overflow-wrap: anywhere; }
@media(max-width: 600px) {
  html.gb-owner-contact .gb-contact-wrapper .gb-contact-hero { padding: 22px 20px !important; margin-bottom: 16px !important; }
  html.gb-owner-contact .gb-form-card { padding: 22px 18px !important; }
  html.gb-owner-contact .gb-form-header .gb-subline { margin-bottom: 20px !important; }
  html.gb-owner-contact #gbContactPageForm .gb-form-grid { gap: 16px !important; }
}
/* The existing regular CAPTCHA is 304px wide; preserve its full frame at 320px. */
@media(max-width: 380px) {
  html.gb-owner-contact #gbContactPageForm .g-recaptcha { transform: scale(.78); transform-origin: top left; width: 304px; margin-bottom: -17px; }
}
