/* Local-only white-label setup, extending the existing deep-green brand. */
.site-header .brand{min-width:0;max-width:230px}
.site-header .brand>span:last-child{min-width:0}
.site-header .brand-mark{flex-shrink:0}
.site-header .brand strong,.site-header .brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand .custom-brand-logo{display:none;width:auto;max-width:190px;height:44px;object-fit:contain;object-position:left center}
.brand.has-custom-logo{min-width:0}
.brand.has-custom-logo>span{display:none}
.brand.has-custom-logo .custom-brand-logo{display:block}
.site-footer #serviceRegion{color:#bfcebf;margin-bottom:8px}
.site-footer #businessInfo,.site-footer #branchInfo{overflow-wrap:anywhere;max-width:860px;font-size:.875rem;line-height:1.9}
.site-footer #branchInfo{margin-top:6px;color:#bfcebf}
.submission-blocked .contact-channels .text-link,.simple-modal .contact-channels .text-link{color:var(--accent-dark)}
.consultation-hours{flex-basis:100%;margin:0;font-size:.875rem;line-height:1.7;overflow-wrap:anywhere}
.contact-copy .contact-channels .consultation-hours{font-size:.9375rem;margin:0;color:#d8eade}
.site-footer #contactHours{font-size:.875rem;color:#c2d6cb}
.chat-message.bot .consultation-hours{margin-top:12px;color:inherit}
.settings-dialog{display:block;margin:auto;width:680px;max-width:calc(100% - 24px);padding:32px;height:auto;max-height:calc(100dvh - 32px);border-radius:16px;overflow-y:auto}
#settingsForm{overflow:visible;padding:0}
.settings-header{align-items:flex-start;gap:16px;margin-bottom:20px}
.settings-header h2{font-size:1.75rem;line-height:1.4}
.settings-header .icon-btn{min-width:44px;min-height:44px}
.settings-header .eyebrow{font-size:.8125rem;margin-bottom:10px}
.settings-intro{padding:16px 18px;background:#edf4ef;color:#53675a;border:1px solid #cbdcd0;border-radius:8px;font-size:.9375rem;line-height:1.75;margin-bottom:26px}
#settingsForm fieldset{padding:0 0 28px;border:0;border-bottom:1px solid #dce5de;margin:0 0 28px;min-width:0}
#settingsForm legend{font-size:1.125rem;font-weight:750;margin-bottom:18px}
.settings-dialog label{display:block;font-size:.875rem;line-height:1.6;margin:16px 0 0;font-weight:650;min-width:0}
.settings-dialog input,.settings-dialog select{font-size:1rem;max-width:100%;min-width:0;min-height:46px}
.settings-dialog input[type=color]{height:46px;padding:4px}
.settings-dialog input[type=file]{width:100%;padding:10px;background:#f4f7f4;font-size:.875rem;font-weight:400}
.settings-dialog input::file-selector-button{font:inherit;padding:7px 10px;border:1px solid #c8d4cb;border-radius:4px;background:#fff;color:#193b28;margin-right:10px;cursor:pointer}
.settings-dialog .form-two{gap:18px;margin:0}
.settings-dialog .small-note{font-size:.875rem;line-height:1.75;margin:12px 0;color:#5a6d60}
.settings-dialog .text-link{font-size:.875rem;min-height:44px;line-height:1.6}
.settings-dialog .btn{font-size:.9375rem;min-height:48px;white-space:normal}
.master-brand-preview{background:#0b211a;color:#fff;border-left:4px solid var(--accent);padding:24px;display:flex;flex-wrap:wrap;align-items:center;gap:16px;border-radius:8px;min-height:128px}
.master-brand-preview strong{display:block;font-size:1.5rem;line-height:1.45;overflow-wrap:anywhere}
.master-brand-preview span{display:block;font-size:.8125rem;letter-spacing:.12em;line-height:1.7;overflow-wrap:anywhere}
.master-brand-preview small{display:block;width:100%;font-size:.875rem;line-height:1.7;color:#b8d3c3;overflow-wrap:anywhere}
#settingLogoPreview{max-width:100%;max-height:80px;object-fit:contain;object-position:left center}
#settingLogoPreview[hidden],#settingWordmarkPreview[hidden]{display:none}
.master-file-panel{background:#f1f5f2;padding:22px;border:1px solid #d9e4dc;border-radius:10px}
.master-file-panel h3{font-size:1.125rem;margin-bottom:12px}
.master-file-panel p{font-size:.9375rem;line-height:1.75;color:#53675a}
.settings-file-actions{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:18px}
.master-status{font-size:.875rem;line-height:1.75;color:#355a43;border-left:3px solid #5b9470;padding:12px 16px;margin-top:24px;background:#f2f7f3}
.master-download{margin-top:20px;padding:18px;border:1px solid #a7c4b0;border-radius:8px;overflow-wrap:anywhere}
.master-download strong{font-size:1rem}
.master-download p{font-size:.875rem;line-height:1.75;margin:10px 0;color:#53675a}
.master-download .btn{max-width:100%;margin-right:12px;font-size:.875rem}
.master-download .text-link{margin-top:8px}
.settings-dialog .form-error{font-size:.9375rem;line-height:1.75;scroll-margin:20px}
.settings-dialog [aria-invalid=true]{border-color:#b83232;outline:2px solid #b8323233}
.settings-dialog :disabled{opacity:.6;cursor:wait}
.master-submit{margin-top:20px;display:grid;gap:10px}
.master-submit .text-link{justify-content:center}
@media(max-width:767px){
 .settings-dialog{padding:24px 20px;width:calc(100% - 20px);max-width:none;max-height:calc(100dvh - 20px);height:auto;border-radius:12px}
 .settings-header h2{font-size:1.375rem}
 .settings-header .eyebrow{font-size:.75rem;letter-spacing:.13em}
 .settings-dialog .form-two{grid-template-columns:1fr;gap:0}
 .settings-dialog .settings-intro{font-size:.875rem;padding:14px}
 .master-file-panel{padding:16px}
 .master-brand-preview{padding:20px}
 .settings-file-actions{flex-direction:column;align-items:stretch}
 .settings-file-actions .text-link{justify-content:center}
 .brand .custom-brand-logo{max-width:160px;height:38px}
 .site-header .brand{max-width:190px}
}
