/* Patient intake: scoped to the shortcode output so the site theme stays intact. */
.lm-intake {
  --lm-ink: #163d50;
  --lm-teal: #277a84;
  --lm-teal-dark: #175d68;
  --lm-pale: #eaf3f2;
  --lm-gold: #d8b657;
  --lm-line: #cddfdf;
  --lm-muted: #48636f;
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(32px, 5vw, 72px) clamp(20px, 4vw, 48px);
  color: var(--lm-ink);
  font-size: 17px;
  line-height: 1.65;
}

.lm-intake *, .lm-intake *::before, .lm-intake *::after { box-sizing: border-box; }
.lm-intake h1, .lm-intake h2, .lm-intake h3 { color: var(--lm-ink); }
.lm-intake h1, .lm-intake h2 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.lm-intake h1 { font-size: clamp(36px, 4.8vw, 60px); line-height: 1.12; margin: 0 0 20px; }
.lm-intake h2 { font-size: clamp(27px, 3vw, 36px); line-height: 1.2; margin: 0 0 18px; }
.lm-intake h3 { font-size: 20px; line-height: 1.3; margin: 0 0 12px; }
.lm-intake p { margin: 0 0 18px; }
.lm-intake a:not(.button) { color: var(--lm-teal-dark); text-underline-offset: 3px; }
.lm-intake .button:not(.outline) { color: #fff; }

.lm-intake-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, .8fr);
  align-items: center;
  gap: clamp(24px, 4vw, 52px);
  position: relative;
  overflow: hidden;
  padding: clamp(30px, 5vw, 62px);
  margin-bottom: 32px;
  border: 1px solid var(--lm-line);
  border-radius: 18px;
  background: linear-gradient(120deg, #f9fcfb 15%, var(--lm-pale) 100%);
}
.lm-intake-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 92px;
  height: 4px;
  background: var(--lm-gold);
}
.lm-intake-hero > * { position: relative; }
.lm-intake-hero p:last-child { margin-bottom: 0; }
.lm-intake-hero .lm-intake-eyebrow {
  display: block;
  margin-bottom: 14px;
  color: var(--lm-teal-dark);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.lm-intake-hero img { max-width: min(280px, 65%); max-height: 86px; width: auto; height: auto; object-fit: contain; margin: 0 0 28px; }
.lm-intake-hero .lm-intake-lead { max-width: 760px; color: var(--lm-muted); font-size: clamp(18px, 2vw, 21px); }

.lm-intake-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin: 0 0 32px; }
.lm-intake-card {
  min-width: 0;
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid var(--lm-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 12px 30px #163d500b;
}
.lm-intake-card > :last-child { margin-bottom: 0; }
.lm-intake-card-kicker { display: block; margin-bottom: 12px; color: var(--lm-teal-dark); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.lm-intake-pdf-card { background: #fff; }
.lm-intake-form-card { max-width: 860px; margin: 0 auto; }
.lm-intake-form-intro { margin-bottom: 25px; }
.lm-intake-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.lm-intake-field { display: block; }
.lm-intake-field > input:not([type="file"]) { display: block; width: 100%; min-height: 48px; padding: 11px 14px; border: 1px solid #a9c3c7; border-radius: 7px; background: #fbfdfd; color: var(--lm-ink); font: inherit; }
.lm-intake-check { display: flex; align-items: flex-start; gap: 12px; margin: 0 0 22px; }
.lm-intake-check input { flex: 0 0 auto; width: 19px; height: 19px; margin-top: 5px; accent-color: var(--lm-teal); }
.lm-intake-privacy { font-size: 14px; }
.lm-intake-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.lm-intake-card p, .lm-intake-card li { color: var(--lm-muted); }
.lm-intake-card ul, .lm-intake-card ol { padding-left: 22px; margin: 0 0 18px; }

.lm-intake-steps { counter-reset: lm-intake-step; display: grid; gap: 14px; padding: 0; margin: 0 0 32px; list-style: none; }
.lm-intake-steps > li { counter-increment: lm-intake-step; display: flex; align-items: flex-start; gap: 16px; padding: 18px 20px; border: 1px solid var(--lm-line); border-radius: 10px; background: #f9fcfb; }
.lm-intake-steps > li::before { content: counter(lm-intake-step); display: grid; place-items: center; flex: 0 0 32px; height: 32px; border-radius: 50%; background: var(--lm-teal); color: #fff; font-size: 14px; font-weight: 700; line-height: 1; }
.lm-intake-steps > li strong { color: var(--lm-ink); }

.lm-intake-form { padding: clamp(24px, 4vw, 46px); border: 1px solid var(--lm-line); border-radius: 16px; background: #fff; box-shadow: 0 14px 34px #163d500e; }
.lm-intake-form > :last-child { margin-bottom: 0; }
.lm-intake-form fieldset { min-width: 0; padding: 0; margin: 0 0 30px; border: 0; }
.lm-intake-form legend { display: block; width: 100%; margin-bottom: 20px; padding: 0 0 12px; border-bottom: 1px solid var(--lm-line); color: var(--lm-ink); font: 400 clamp(24px, 2.7vw, 31px)/1.2 Georgia, "Times New Roman", serif; }
.lm-intake-field { min-width: 0; margin: 0 0 22px; }
.lm-intake-field label, .lm-intake-upload label { display: block; margin-bottom: 7px; color: var(--lm-ink); font-size: 15px; font-weight: 650; line-height: 1.5; }
.lm-intake-field label:has(input[type="checkbox"], input[type="radio"]), .lm-intake-field label:has(input[type="checkbox"], input[type="radio"]) + label { font-weight: 400; }
.lm-intake-field input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.lm-intake-field textarea,
.lm-intake-field select,
.lm-intake-form > input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.lm-intake-form > textarea,
.lm-intake-form > select {
  display: block;
  width: 100%;
  min-height: 48px;
  padding: 11px 14px;
  border: 1px solid #a9c3c7;
  border-radius: 7px;
  background: #fbfdfd;
  color: var(--lm-ink);
  font: inherit;
  line-height: 1.45;
}
.lm-intake-field textarea, .lm-intake-form > textarea { min-height: 120px; resize: vertical; }
.lm-intake-field input::placeholder, .lm-intake-field textarea::placeholder { color: #617983; opacity: 1; }
.lm-intake-field small, .lm-intake-upload small, .lm-intake-help { display: block; margin-top: 7px; color: var(--lm-muted); font-size: 14px; line-height: 1.55; }
.lm-intake-field input[type="checkbox"], .lm-intake-field input[type="radio"], .lm-intake-form input[type="checkbox"], .lm-intake-form input[type="radio"] { width: 19px; height: 19px; margin: 2px 9px 0 0; accent-color: var(--lm-teal); vertical-align: text-top; }
.lm-intake-form .lm-intake-check { display: flex; align-items: flex-start; gap: 8px; font-size: 15px; line-height: 1.55; }
.lm-intake-form .lm-intake-check input { flex: 0 0 auto; margin: 3px 0 0; }
.lm-intake-form .lm-intake-check span { flex: 1; }

.lm-intake-upload { padding: 23px; margin: 0 0 25px; border: 1.5px dashed #8ab9bd; border-radius: 11px; background: #f4faf9; }
.lm-intake-upload input[type="file"] { display: block; width: 100%; max-width: 100%; padding: 10px; border: 1px solid var(--lm-line); border-radius: 7px; background: #fff; color: var(--lm-ink); font-size: 15px; line-height: 1.4; }
.lm-intake-upload input[type="file"]::file-selector-button { margin-right: 12px; padding: 9px 13px; border: 1px solid var(--lm-line); border-radius: 5px; background: var(--lm-pale); color: var(--lm-ink); font: inherit; font-weight: 600; cursor: pointer; }
.lm-intake-file-summary { margin: 10px 0 0; color: var(--lm-muted); font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.lm-intake-file-summary:empty { display: none; }
.lm-intake-upload a[hidden], .lm-intake a[hidden] { display: none !important; }

.lm-intake-notice { padding: 18px 22px; margin: 0 0 28px; border-left: 4px solid var(--lm-gold); border-radius: 0 8px 8px 0; background: #fbf8ee; color: var(--lm-ink); font-size: 15px; line-height: 1.6; }
.lm-intake-notice > :last-child { margin-bottom: 0; }
.lm-intake-success { padding: clamp(28px, 4vw, 46px); border: 1px solid #acd5ca; border-radius: 14px; background: #edf8f4; color: var(--lm-ink); }
.lm-intake-success h2 { margin-bottom: 14px; }
.lm-intake-success > :last-child { margin-bottom: 0; }

.lm-intake .lm-intake-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin-top: 24px; }
.lm-intake .lm-intake-button, .lm-intake button[type="submit"], .lm-intake input[type="submit"] { display: inline-flex; align-items: center; justify-content: center; min-height: 49px; padding: 12px 23px; border: 1px solid var(--lm-teal); border-radius: 6px; background: var(--lm-teal); color: #fff; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none; cursor: pointer; }
.lm-intake .lm-intake-button:hover, .lm-intake button[type="submit"]:hover, .lm-intake input[type="submit"]:hover { background: var(--lm-teal-dark); border-color: var(--lm-teal-dark); color: #fff; }
.lm-intake .lm-intake-button:disabled, .lm-intake button[type="submit"]:disabled, .lm-intake input[type="submit"]:disabled { opacity: .55; cursor: wait; }
.lm-intake :is(a, button, input, select, textarea):focus-visible { outline: 3px solid #b78622; outline-offset: 3px; }
.lm-intake [aria-invalid="true"] { border-color: #ad453e !important; }
.lm-intake .lm-intake-error { color: #8c302a; font-size: 14px; font-weight: 600; }

@media (max-width: 700px) {
  .lm-intake-hero { grid-template-columns: 1fr; }
  .lm-intake-form-grid { grid-template-columns: 1fr; gap: 0; }
  .lm-intake { padding: 28px 18px 48px; font-size: 16px; }
  .lm-intake-grid { grid-template-columns: 1fr; gap: 15px; }
  .lm-intake-hero { padding: 28px 23px; }
  .lm-intake-form { padding: 24px 20px; }
  .lm-intake-upload { padding: 18px; }
  .lm-intake .lm-intake-button, .lm-intake button[type="submit"], .lm-intake input[type="submit"] { width: 100%; }
}

@media (prefers-reduced-motion: reduce) { .lm-intake *, .lm-intake *::before, .lm-intake *::after { scroll-behavior: auto !important; transition-duration: 0s !important; animation-duration: 0s !important; } }
.lm-intake-manual > summary {
    font-size: 22px;
    font-weight: 700;
    padding: 16px 18px;
    cursor: pointer;
}/* Make the final intake submission button more prominent */
.lm-intake-form button[type="submit"] {
    font-size: 19px;
    font-weight: 700;
    padding: 16px 28px;
    min-width: 280px;
}