/*! WhiteGold Media form style (v257, 9 Nov 2026). One look for every client form that holds the calendar: the pricing page
 *  request, the website enquiry form and the CRM's public forms. Look only: wording, field order and where a form sends are
 *  untouched. Add class="wgm-form" to the <form> (and "wgm-form--dark" on a dark panel). Doubled class = beats each page's own rules.
 */
.wgm-form.wgm-form {
  --wf-ink: #161513; --wf-muted: rgba(11,11,10,.6); --wf-line: rgba(11,11,10,.18); --wf-field: #fff; --wf-text: #161513;
  --wf-gold: #b8975a; --wf-gold-2: #d8c08a; --wf-black: #0b0b0a; --wf-err: #b3402c; --wf-err-bg: rgba(179,64,44,.07);
  --wf-ring: rgba(184,151,90,.28); --wf-radius: 10px; --wf-h: 48px;
  font-family: "Inter Tight", system-ui, -apple-system, "Segoe UI", sans-serif;
  display: grid; gap: 18px; color: var(--wf-ink);
}
.wgm-form.wgm-form.wgm-form--dark, .lp-dark .wgm-form.wgm-form, .page-holding .wgm-form.wgm-form {
  --wf-ink: #f3ede2; --wf-muted: rgba(243,237,226,.62); --wf-line: rgba(243,237,226,.2); --wf-field: rgba(243,237,226,.05);
  --wf-text: #f3ede2; --wf-err: #e48a74; --wf-err-bg: rgba(228,138,116,.1);
}
/* labels: small capitals, like the calendar's weekday row (three classes: beats the website's page-specific label rules) */
.wgm-form.wgm-form.wgm-form label, .wgm-form.wgm-form.wgm-form legend, .wgm-form.wgm-form.wgm-form .field > label {
  display: block; margin: 0; font-size: 12px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; color: var(--wf-muted); line-height: 1.4;
}
.wgm-form.wgm-form label > input:not([type=radio]):not([type=checkbox]), .wgm-form.wgm-form label > select, .wgm-form.wgm-form label > textarea { margin-top: 8px; }
/* fields: same height, radius and gold focus as the calendar */
.wgm-form.wgm-form input:not([type=radio]):not([type=checkbox]):not([type=hidden]):not([type=submit]):not([type=file]),
.wgm-form.wgm-form select, .wgm-form.wgm-form textarea {
  display: block; width: 100%; box-sizing: border-box; min-height: var(--wf-h); margin-left: 0; margin-right: 0;
  padding: 12px 14px; border: 1px solid var(--wf-line); border-radius: var(--wf-radius); background-color: var(--wf-field);
  color: var(--wf-text); font: inherit; font-size: 16px; font-weight: 400; line-height: 1.4; letter-spacing: normal; text-transform: none;
  box-shadow: none; transition: border-color .15s, box-shadow .15s; -webkit-appearance: none; appearance: none;
}
.wgm-form.wgm-form textarea { min-height: 120px; resize: vertical; }
.wgm-form.wgm-form select {
  padding-right: 40px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23b8975a' stroke-width='1.6'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center;
}
.wgm-form.wgm-form.wgm-form--dark select option, .lp-dark .wgm-form.wgm-form select option, .page-holding .wgm-form.wgm-form select option { background: #0b0b0a; color: #f3ede2; }
.wgm-form.wgm-form ::placeholder { color: var(--wf-muted); opacity: .75; }
.wgm-form.wgm-form input:focus, .wgm-form.wgm-form select:focus, .wgm-form.wgm-form textarea:focus {
  outline: none; border-color: var(--wf-gold); box-shadow: 0 0 0 3px var(--wf-ring);
}
.wgm-form.wgm-form input[type=file] { font: inherit; font-size: 14px; color: var(--wf-muted); }
.wgm-form.wgm-form input[type=file]::file-selector-button { margin-right: 12px; padding: 10px 16px; border: 1px solid var(--wf-gold); border-radius: 999px; background: transparent; color: var(--wf-ink); font: inherit; cursor: pointer; }
/* choices: normal case, 44 px rows, gold ticks */
.wgm-form.wgm-form fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.wgm-form.wgm-form legend { margin-bottom: 8px; padding: 0; }
.wgm-form.wgm-form.wgm-form label:has(> input[type=radio]), .wgm-form.wgm-form.wgm-form label:has(> input[type=checkbox]), .wgm-form.wgm-form.wgm-form label.opt, .wgm-form.wgm-form.wgm-form label.consent {
  display: flex; align-items: flex-start; gap: 10px; min-height: 44px; padding: 10px 0; text-transform: none; letter-spacing: 0;
  font-size: 15px; font-weight: 400; line-height: 1.45; color: var(--wf-ink); cursor: pointer;
}
.wgm-form.wgm-form input[type=radio], .wgm-form.wgm-form input[type=checkbox] {
  width: 20px; height: 20px; min-height: 0; flex: none; margin: 1px 0 0; accent-color: var(--wf-gold); cursor: pointer;
}
.wgm-form.wgm-form input[type=radio]:focus-visible, .wgm-form.wgm-form input[type=checkbox]:focus-visible { outline: 2px solid var(--wf-gold); outline-offset: 2px; }
.wgm-form.wgm-form .options { display: flex; flex-wrap: wrap; gap: 0 22px; }
.wgm-form.wgm-form a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
/* required mark */
.wgm-form.wgm-form .wgmf-req, .wgm-form.wgm-form .required { color: var(--wf-gold); margin-left: 3px; font-weight: 600; }
.wgm-form.wgm-form .help { margin-top: 6px; font-size: 13px; color: var(--wf-muted); text-transform: none; letter-spacing: 0; }
/* errors: next to the field */
.wgm-form.wgm-form .is-invalid, .wgm-form.wgm-form [aria-invalid=true]:not([type=radio]):not([type=checkbox]) { border-color: var(--wf-err) !important; box-shadow: 0 0 0 3px var(--wf-err-bg) !important; }
.wgm-form.wgm-form .wgmf-err { display: flex; gap: 6px; align-items: flex-start; margin: 6px 0 0; font-size: 13px; line-height: 1.4; color: var(--wf-err); text-transform: none; letter-spacing: 0; font-weight: 500; }
.wgm-form.wgm-form .wgmf-err::before { content: "!"; flex: none; display: inline-grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; background: var(--wf-err); color: #fff; font-size: 11px; font-weight: 700; margin-top: 1px; }
.wgm-form.wgm-form .error-banner, .wgm-form.wgm-form .err:not(:empty) { padding: 12px 14px; border-radius: var(--wf-radius); background: var(--wf-err-bg); border: 1px solid var(--wf-err); color: var(--wf-err); font-size: 14px; }
/* one primary button: the gold pill of the calendar's "Email us" */
.wgm-form.wgm-form button[type=submit], .wgm-form.wgm-form .submit, .wgm-form.wgm-form .wgmc-mail.btn {
  display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; margin: 8px 0 0; padding: 14px 22px;
  border: 0; border-radius: 999px; background: var(--wf-gold); color: var(--wf-black) !important; font: inherit; font-size: 15px; font-weight: 600;
  letter-spacing: .01em; text-transform: none; text-decoration: none; cursor: pointer; justify-self: stretch; transition: background .15s;
}
.wgm-form.wgm-form button[type=submit]:hover:not(:disabled), .wgm-form.wgm-form .submit:hover:not(:disabled) { background: var(--wf-gold-2); border: 0; padding: 14px 22px; }
.wgm-form.wgm-form button[type=submit]:focus-visible, .wgm-form.wgm-form .submit:focus-visible { outline: 2px solid var(--wf-ink); outline-offset: 3px; }
.wgm-form.wgm-form button[type=submit]:disabled, .wgm-form.wgm-form .submit:disabled { opacity: .45; cursor: not-allowed; }
/* two fields side by side on wide screens, one column on a phone */
@media (max-width: 600px) {
  .wgm-form.wgm-form .row2, .wgm-form.wgm-form .grid, .wgm-form.wgm-form .row { grid-template-columns: 1fr !important; }
  .wgm-form.wgm-form .options { flex-direction: column; }
}
/* the calm thank-you (CRM forms) */
.wgmf-done { text-align: center; padding: 36px 8px 16px; font-family: "Inter Tight", system-ui, sans-serif; }
.wgmf-done .wgmf-tick { width: 56px; height: 56px; margin: 0 auto 16px; border-radius: 50%; border: 1px solid #b8975a; display: grid; place-items: center; color: #b8975a; }
.wgmf-done h1 { font-family: "Instrument Serif", "Times New Roman", serif; font-weight: 400; font-size: 34px; margin: 0 0 8px; }
.wgmf-done p { margin: 0 auto; max-width: 420px; font-size: 15px; line-height: 1.55; opacity: .75; }
