/* Shared typography from the September 9 feedback. Logos remain image assets. */
body, input, select, textarea, button { font-family: Helvetica, Arial, sans-serif; }
body { font-size: 16px; line-height: 26px; color: #000; }
h1, .step h2, .form-title, .page-title { font-size: 34px; line-height: 1.2; font-weight: 700; color: #27083d; }
.header strong, .header-title, .status-title { font-size: 20px; font-weight: 700; color: #dc006d; }
p, .intro, .form-description, .step p.step-description { font-size: 16px; line-height: 26px; }
.btn-primary, .button:not(.secondary) { font-size: 15px; font-weight: 700; color: #fff; }
.footer, footer { font-size: 11px; line-height: 18px; color: #b7b0bb; }
.footer p, footer p { font-size: inherit; line-height: inherit; }
.emergency .number strong { font-size: 32px; font-weight: 700; color: #fff; overflow-wrap: anywhere; }
.step p.step-description { color: #000; }
.summary-item { background: #27083d; }
.summary-item .label { color: #eee; }
.summary-item .value { font-size: 32px; font-weight: 700; color: #fff; overflow-wrap: anywhere; }
@media (max-width: 480px) { h1, .step h2, .form-title, .page-title { font-size: 30px; } }

/* Keep custom controls aligned with the tenant application typography. */
.custom-select-trigger,.custom-select-option,.custom-select-search input,.dp-footer button,.dp-selector-item {font-family:Helvetica,Arial,sans-serif;}
.btn {border-radius:50px;min-height:48px;}
.step h2 {margin-bottom:12px;}

input[type="text"],input[type="email"],input[type="tel"],input[type="date"],input[type="number"],select,textarea,.btn {font-family:Helvetica,Arial,sans-serif;}

.input-group input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),.input-group select {font-family:Helvetica,Arial,sans-serif;}

.checkbox-group{display:grid!important;grid-template-columns:20px minmax(0,1fr);align-items:start;column-gap:12px;}
.checkbox-group input[type="checkbox"]{width:20px!important;height:20px!important;margin:2px 0 0!important;padding:0!important;}
.checkbox-group label{width:auto!important;display:block!important;margin:0!important;line-height:24px!important;}
.marketing-prefs .checkbox-group{margin-bottom:10px;}

/* September 22: consistent public form spacing and mobile navigation. */
.header{justify-content:space-between!important;flex-wrap:nowrap!important;gap:12px;}
.header .logo{flex:0 1 auto;max-width:40%;object-fit:contain;}
.header .back-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;white-space:nowrap;font-family:Helvetica,Arial,sans-serif;font-weight:700;font-size:14px;line-height:20px;min-height:44px;padding:8px 16px;border-radius:999px;box-sizing:border-box;}
.form-wrapper{padding:32px;}
.step p.step-description{margin-bottom:24px;}
.input-group{margin-bottom:20px;}
.button-group{margin-top:24px;gap:12px;}
.radio-group{gap:16px;}
.radio-option label{font-size:16px!important;font-weight:600!important;}
.date-picker-dropdown{box-sizing:border-box;max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;}
.dp-month-btn,.dp-year-btn{border:1px solid #ddd;background:#f7f4f8;min-height:40px;padding:6px 10px;font-family:Helvetica,Arial,sans-serif;}
.dp-month-btn::after,.dp-year-btn::after{content:' ▾';color:#dc006d;}
.dp-header-center{min-width:0;flex-wrap:wrap;justify-content:center;}
.dp-year-grid{overscroll-behavior:contain;}
@media(max-width:768px){.date-picker-dropdown{width:100%!important;max-height:85dvh;padding:16px 16px calc(16px + env(safe-area-inset-bottom));}.dp-day{min-height:40px;}.dp-footer button{min-height:44px;}}
@media(max-width:480px){.header{padding:12px 15px;gap:8px;}.header .back-button{font-size:13px;padding:8px 12px;}.form-wrapper{padding:24px 16px;}.button-group{margin-top:24px;}.radio-option label{padding:16px 18px;}}

/* Keep checkbox labels aligned independently of text-input styling. */
input[type="checkbox"]{box-sizing:border-box!important;width:20px!important;height:20px!important;min-width:20px;min-height:20px!important;max-height:20px!important;flex:0 0 20px;padding:0!important;accent-color:#dc006d;vertical-align:middle;}
.checkbox-group{align-items:start!important;margin-bottom:12px;}
.checkbox-group label{padding:0!important;align-self:center;}
.marketing-prefs{display:flex;flex-wrap:wrap;gap:12px 20px;}
.marketing-prefs .checkbox-group{display:flex!important;align-items:center!important;gap:8px;margin:0;}
.marketing-prefs .checkbox-group input{margin:0!important;}
.header-inner{width:100%;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:12px;}
.header-inner img{max-width:40%;}
.header-inner .back-button{font-size:14px;line-height:20px;font-weight:700;padding:8px 16px;min-height:44px;}
@media(max-width:480px){.header-inner{padding:12px 15px;gap:8px;}.header-inner .back-button{font-size:13px;padding:8px 12px;}.header-inner img{width:120px;}.shell .content{padding:24px 16px;}}
