:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, sans-serif; background: #08132a; }
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: #08132a; color: #fffdf5; }
button, input, select { font: inherit; }
button { cursor: pointer; }
/* Account, purchase, legal, and staff surfaces use a deliberately separate document layout. */
.site-header { align-items: center; background: #173c31; color: #fff; display: flex; justify-content: space-between; padding: 1rem clamp(1rem, 4vw, 4rem); }
.site-header a { color: #fff; margin-left: 1rem; text-decoration: none; }.site-header__brand { font-weight: 800; margin-left: 0 !important; }.site-header__button { background: transparent; border: 0; color: #fff; cursor: pointer; font: inherit; margin-left: 1rem; }
.flash { background: #dbeed8; color: #173c31; padding: .8rem 1rem; text-align: center; }.flash--alert { background: #f9d9d2; color: #651d12; }
.public-page,.auth-page,.legal-page { color: #2c2018; margin: 0 auto; max-width: 850px; padding: clamp(2rem, 6vw, 5rem) 1.25rem; }.auth-page { max-width: 520px; }.eyebrow { color: #9c3a23; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }.experience-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }.experience-card, .public-page section, .auth-page section { background: #fff; border: 1px solid #eadbc6; border-radius: 16px; margin: 1.5rem 0; padding: 1.5rem; }.public-page .button,.auth-page .button,.public-page button,.auth-page button { background: #9f3a23; border: 0; border-radius: 8px; color: #fff; cursor: pointer; display: inline-block; font: inherit; padding: .7rem 1rem; text-decoration: none; }.stacked-form { display: grid; gap: .75rem; max-width: 560px; }.stacked-form input,.stacked-form select { border: 1px solid #bda98e; border-radius: 7px; font: inherit; padding: .7rem; }.stacked-form label { color: var(--form-label-color); font-size: var(--form-label-size); font-weight: var(--form-label-weight); line-height: 1.5; }.stacked-form :is(input, select, textarea) { color: var(--form-value-color); font-size: var(--form-value-size); font-weight: var(--form-value-weight); }.stacked-form input::placeholder { color: var(--form-placeholder-color); opacity: 1; }.stacked-form label + :is(input, select, textarea) { margin-top: calc(var(--form-field-gap) - .75rem); }.metric-list,.staff-nav { color: #2c2018; display: flex; flex-wrap: wrap; gap: 1rem; list-style: none; padding: 0; }.metric-list li { background: #fff; border: 1px solid #eadbc6; border-radius: 12px; padding: 1rem; } .public-page table { border-collapse: collapse; margin-top: 1rem; width: 100%; }.public-page th,.public-page td { border-bottom: 1px solid #eadbc6; padding: .75rem; text-align: left; vertical-align: top; }
.child-profile-form { color-scheme: light; }
.child-profile-form :is(input, select) { width: 100%; min-width: 0; }
