/* Plain Words typography and layout retained; maroon ties both sites to Andrew's wordmark. */
body.site-primary, body.site-sleep {
  --brand: #720b20; --brand-dark: #4b0715; --accent: #843524; --accent-soft: #f2e1dc;
  --accent-light: #f4c3bc; --foot: #35282c;
}
.logo-lockup { display: grid; justify-items: center; gap: 3px; }
.logo-lockup img { width: 218px; height: auto; }
.logo-lockup small { color: var(--brand); font: 600 .65rem/1.2 var(--sans); text-transform: uppercase; letter-spacing: .14em; }
.site-footer .logo-lockup { padding: 9px 15px; border-radius: 10px; background: var(--paper); }
.nav { gap: 18px; }
.head-row { gap: 18px; }
.head-book { padding-inline: 18px; }
.head-row .brand { flex-shrink: 1; min-width: 0; }
.hero .eyebrow { max-width: 44ch; }
.selfpay-card .field { margin-top: 20px; }
#advantage-answer { margin-top: 16px; }
.cross-site { flex-wrap: wrap; }
.cross-site > .eyebrow { flex-basis: 100%; margin-bottom: 0; font: 600 .73rem/1.5 var(--sans); }
.inquiry-form > fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
.inquiry-form .btn[type=submit] { margin-top: 20px; }
.inquiry-form button:disabled { opacity: .6; cursor: wait; }
.contact-fields > .field:has(textarea) { grid-column: 1 / -1; }
.days { border: 1px solid #7e8980; border-radius: 12px; padding: 12px 16px; min-width: 0; }
.days legend { font-size: .85rem; font-weight: 600; }
.day-options { display: flex; flex-wrap: wrap; gap: 0 15px; }
.day-options label { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; font-size: .85rem; }
.day-options input { width: 19px; height: 19px; accent-color: var(--brand); }
.honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
[data-form-note][data-state=error] { border: 2px solid #9a2638; color: #641221; background: #fff3f4; }
[data-form-note][data-state=success] { border: 2px solid #346147; color: #244734; background: #f0f6ee; }
[data-captcha] { margin-top: 14px; }
.waitlist-toggle { margin-top: 22px; }
#medicare-waitlist { padding: 24px 0 0; margin-top: 20px; border: 0; border-top: 1px solid var(--line); border-radius: 0; }
.legal-page { max-width: 820px; padding-block: 65px 85px; }
.legal-page h1 { font-size: clamp(2.5rem, 6vw, 4rem); margin-bottom: 24px; }
.legal-page h2 { font-size: 1.8rem; margin: 38px 0 14px; }
.legal-page p { margin-bottom: 18px; }
.modal-open { overflow: hidden; }
dialog { width: min(960px, calc(100% - 24px)); max-height: 94dvh; padding: 24px; border: 1px solid var(--line); border-radius: 20px; background: var(--paper); color: var(--ink); }
dialog::backdrop { background: #21171ecc; }
.dialog-head { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 15px; }
.dialog-head h2 { font-size: 2rem; }
dialog iframe { display: block; width: 100%; height: 65dvh; border: 0; margin-top: 15px; background: #fff; }
@media (max-width: 1180px) and (min-width: 1021px) { .logo-lockup img { width: 180px; } .head-book { font-size: .8rem; padding-inline: 12px; } .nav { gap: 12px; } }
@media (max-width: 560px) {
  .logo-lockup img { width: 166px; }
  .logo-lockup small { font-size: .53rem; }
  .head-book { font-size: .75rem; padding-inline: 10px; }
  .head-row { gap: 9px; }
  .dock { grid-template-columns: 1.7fr 1fr; }
  .dock .btn { font-size: .78rem; }
  .hero .eyebrow { font-size: .62rem; }
  .inquiry-form .btn { width: 100%; }
}
@media (max-width: 370px) { .logo-lockup img { width: 125px; } .head-book { font-size: .7rem; } .head-row { gap: 6px; } }
