/* ATA Digital · shared visual language for workspace, forms and offers.
   Loaded after the structural styles. No external fonts or dependencies. */
:root, .customer-portal, .admin-portal {
    --c-canvas: #f5f6f8;
    --c-canvas-deep: #eceff4;
    --c-surface: #fff;
    --c-surface-2: #f8f9fb;
    --c-surface-3: #f0f3f8;
    --c-ink: #182b49;
    --c-ink-2: #3d4d63;
    --c-muted: #627087;
    --c-faint: #68758a;
    --c-line: #e3e7ed;
    --c-line-strong: #cbd3df;
    --c-navy: #142744;
    --c-accent: #285be0;
    --c-accent-deep: #1f49b9;
    --c-accent-ink: #224fbf;
    --c-accent-soft: #edf2ff;
    --c-accent-line: #cfdbfb;
    --r-sm: 8px;
    --r-md: 14px;
    --r-lg: 18px;
    --sh-1: 0 2px 5px rgb(23 41 69 / 3%);
    --sh-2: 0 10px 28px rgb(23 41 69 / 6%);
    --brand-sweep: none;
    --hero-glow: none;
    --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}
body, .customer-portal { background: var(--c-canvas); font-size: 15px; line-height: 1.6; }
h1, .customer-portal h1 { font-weight: 650; letter-spacing: -.04em; }
h2, .customer-portal h2 { font-weight: 650; letter-spacing: -.025em; }
h3 { font-weight: 650; }
.kicker, .customer-portal .kicker { font-size: 11px; letter-spacing: .13em; font-weight: 650; color: var(--c-muted); }
.kicker--accent { color: var(--c-accent-ink); }
.tiny, .customer-portal .tiny { font-size: 12px; line-height: 1.65; }
:focus-visible, .customer-portal :focus-visible { outline: 3px solid var(--c-accent); outline-offset: 4px; }
.btn, .customer-portal .btn { min-height: 44px; padding: 11px 18px; border-radius: 8px; font-size: 13px; font-weight: 600; letter-spacing: 0; box-shadow: none; background: var(--c-accent); border-color: var(--c-accent); transition: background .15s, border-color .15s; }
.btn:hover, .customer-portal .btn:hover { background: var(--c-accent-deep); border-color: var(--c-accent-deep); transform: none; }
.btn--ghost, .customer-portal .btn--ghost { background: #fff; color: var(--c-ink); border-color: var(--c-line-strong); }
.btn--ghost:hover, .customer-portal .btn--ghost:hover { background: var(--c-surface-2); border-color: #9eacc1; }
.btn--sm, .customer-portal .btn--sm { min-height: 36px; font-size: 12px; padding: 7px 12px; }
.btn--lg, .customer-portal .btn--lg { min-height: 48px; font-size: 14px; }
.btn--danger, .customer-portal .btn--danger { background: #b32d42; border-color: #b32d42; color: #fff; }
.btn--danger:hover, .customer-portal .btn--danger:hover { background: #962337; border-color: #962337; }
.btn--dangerghost, .customer-portal .btn--dangerghost { color: #a6273c; background: #fff; border-color: #e3bdc3; }
.btn--dangerghost:hover, .customer-portal .btn--dangerghost:hover { background: #fff1f3; border-color: #ce93a0; }
button:disabled, .btn:disabled { opacity: .55; cursor: not-allowed; }
input:not([type=checkbox]):not([type=radio]), textarea, select,
.customer-portal input:not([type=checkbox]):not([type=radio]), .customer-portal textarea, .customer-portal select { font: inherit; font-size: 14px; border-radius: 8px; background-color: #fff; border: 1px solid var(--c-line-strong); padding: 12px 14px; box-shadow: none; }
input:focus, textarea:focus, select:focus { border-color: var(--c-accent); }
input[type=checkbox], input[type=radio] { accent-color: var(--c-accent); }
label, .field label { font-size: 13px; font-weight: 600; color: var(--c-ink); }
.field__hint, .customer-portal .field__hint { font-size: 12px; line-height: 1.65; }
.field, .customer-portal .field { margin-bottom: 24px; }
textarea { min-height: 128px; }
.panel, .customer-portal .panel { border: 1px solid var(--c-line); border-radius: 14px; box-shadow: var(--sh-1); background: #fff; }
.panel::before, .panel--feature::before { display: none; }
.panel__head, .customer-portal .panel__head { padding: 24px 28px; background: #fff; border-bottom: 1px solid var(--c-line); }
.panel__head h2, .customer-portal .panel__head h2 { font-size: 18px; }
.panel__head p { font-size: 13px; margin-top: 6px; }
.panel__body, .customer-portal .panel__body { padding: 26px 28px; }
.panel__foot { padding: 18px 28px; background: #fff; }
.panel--warn, .customer-portal .panel--warn { border-color: #ebd8b5; }
.panel--accent, .panel--feature { border-color: var(--c-accent-line); }
.panel--feature .panel__head { background: #fff; color: var(--c-ink); border-bottom-color: var(--c-line); }
.panel--feature .panel__head h2, .panel--feature .panel__head h3 { color: var(--c-ink); }
.panel--feature .panel__head p { color: var(--c-muted); }
.panel--feature .kicker, .panel--feature .kicker--accent { color: var(--c-accent-ink); }
.panel--risk, .customer-portal .panel--risk { border-color: var(--c-risk-line); }
.notice, .customer-portal .notice { border-radius: 10px; box-shadow: none; font-size: 13px; }
.pill, .customer-portal .pill { font-size: 11px; padding: 5px 9px; line-height: 1.4; font-weight: 600; box-shadow: none; }
.masthead, .customer-portal .masthead { margin-bottom: 30px; gap: 24px; padding: 0; background: none; border: 0; box-shadow: none; }
.masthead__title { font-size: clamp(27px, 2.5vw, 36px); line-height: 1.18; }
.masthead__lede { font-size: 14px; margin-top: 10px; }
.masthead__actions { align-items: center; }
.crumbs { font-size: 12px; margin-bottom: 14px; }
.viewnav, .admin-portal .anchornav { border: 0; border-bottom: 1px solid var(--c-line); border-radius: 0; background: transparent; box-shadow: none; gap: 8px; padding: 0 0 12px; margin-bottom: 28px; overflow-x: auto; }
.viewnav__link, .admin-portal .anchornav a { font-size: 13px; padding: 10px 14px; border: 0; border-radius: 7px; white-space: nowrap; }
.viewnav__link[aria-current] { color: var(--c-accent-ink); background: var(--c-accent-soft); box-shadow: none; }
.segment { border-radius: 8px; }
.row, .customer-portal .row { padding: 22px 28px; }
.row__title, .customer-portal .row__title { font-size: 14px; font-weight: 600; }
.row__meta, .customer-portal .row__meta { font-size: 12px; margin-top: 5px; }
.row__body { font-size: 14px; }
table, .admin-portal table { font-size: 13px; }
th, .admin-portal th { background: #f8f9fb; color: #627087; font-size: 11px; text-transform: uppercase; letter-spacing: .07em; padding: 15px 22px; }
td, .admin-portal td { padding: 21px 22px; }
tbody tr:hover { background: #fafbfe; }
.metric, .customer-portal .metric { padding: 23px; border: 1px solid var(--c-line); border-radius: 12px; box-shadow: none; }
.metric__value { font-size: 32px; font-weight: 600; }
.metric__value--sm { font-size: 18px; }
.metric__label, .metric__hint { font-size: 12px; }
.meter { height: 6px; border: 0; border-radius: 8px; }
.meter::-webkit-progress-value { background: var(--c-accent); }
.meter::-moz-progress-bar { background: var(--c-accent); }
.meterblock__copy { font-size: 12px; margin-bottom: 10px; }
.blank { padding: 36px 20px; }
.blank h3 { font-size: 18px; }
.blank p { font-size: 14px; max-width: 46ch; margin-inline: auto; }
/* Workspace shell */
.client-sidebar, .admin-sidebar { width: 252px; padding: 32px 20px 20px; background: #fff; color: var(--c-ink); border-right: 1px solid var(--c-line); }
.client-sidebar__brand, .admin-sidebar .client-sidebar__brand { padding: 0 16px 38px; }
.client-sidebar__brand .mark__logo { height: 34px; max-width: 156px; }
.client-sidebar__brand .mark__tag, .admin-sidebar .mark__tag { color: #738198; font-size: 9px; letter-spacing: .2em; margin-top: 8px; }
.client-nav-label, .admin-sidebar .client-nav-label { font-size: 10px; letter-spacing: .13em; color: #788396; margin-bottom: 12px; padding-left: 14px; }
.client-nav { gap: 5px; }
.client-nav a, .admin-sidebar .client-nav a { min-height: 46px; padding: 12px 14px; gap: 12px; font-size: 13px; color: #5c6a80; font-weight: 500; border-radius: 8px; }
.client-nav a:hover, .admin-sidebar .client-nav a:hover { background: #f4f6fa; color: var(--c-ink); }
.client-nav a[aria-current], .admin-sidebar .client-nav a[aria-current] { background: var(--c-accent-soft); color: var(--c-accent-ink); font-weight: 600; box-shadow: none; }
.client-nav svg { width: 18px; height: 18px; }
.admin-sidebar__create { padding-top: 26px; margin-top: 28px; border-top: 1px solid var(--c-line); }
.admin-sidebar__create a { color: #637187; font-size: 12px; padding: 10px 14px; min-height: 42px; }
.admin-sidebar__create a:hover { background: #f4f6fa; color: var(--c-ink); }
.admin-sidebar__bottom { padding-top: 30px; }
.admin-secure { color: #6b7b91; font-size: 10px; }
.client-sidebar__note { background: #f5f7fb; padding: 20px; border: 1px solid var(--c-line); border-radius: 10px; margin: auto 0 24px; }
.client-sidebar__note h2 { font-size: 14px; line-height: 1.5; margin-bottom: 9px; }
.client-sidebar__note p { font-size: 12px; }
.client-note-icon { width: 30px; height: 30px; background: #e7edfa; margin-bottom: 14px; }
.client-sidebar__account, .admin-sidebar .client-sidebar__account { border-color: var(--c-line); padding-top: 18px; }
.client-sidebar__account strong { color: var(--c-ink); font-size: 12px; }
.client-sidebar__account div span, .admin-sidebar .client-sidebar__account div span { color: var(--c-muted); font-size: 11px; }
.customer-portal .who__avatar, .admin-sidebar .who__avatar { background: var(--c-navy); color: #fff; border-radius: 50%; width: 36px; height: 36px; }
.client-logout, .admin-sidebar .client-logout { color: #68758a; font-size: 11px; }
.client-topbar { margin-left: 252px; height: 76px; padding: 0 42px; background: #fff; }
.client-topbar__location, .admin-portal .client-topbar__location { font-size: 12px; gap: 12px; }
.client-topbar__company, .admin-topbar__date { font-size: 11px; }
.customer-portal .work { margin-left: 252px; }
.customer-portal .work__body { width: min(1320px, calc(100% - 84px)); padding: 38px 0 52px; }
.customer-portal .work__foot-inner { width: min(1320px, calc(100% - 84px)); font-size: 11px; }
.work__foot { border-top: 1px solid var(--c-line); }
/* Overview pages */
.admin-welcome, .client-welcome { margin-bottom: 30px; align-items: center; }
.admin-welcome h1, .client-welcome h1 { font-size: clamp(28px, 2.7vw, 38px); line-height: 1.2; margin-bottom: 10px; }
.admin-welcome p, .client-welcome p { font-size: 14px; line-height: 1.65; margin-top: 0; }
.admin-welcome .kicker, .client-welcome .kicker { font-size: 11px; text-transform: uppercase; letter-spacing: .12em; margin-bottom: 12px; }
.admin-stats { gap: 16px; }
.admin-stat { border-radius: 12px; padding: 24px; box-shadow: var(--sh-1); }
.admin-stat > div { font-size: 12px; }
.admin-stat > strong { font-size: 36px; margin: 20px 0 10px; font-weight: 600; }
.admin-stat small { font-size: 11px; }
.admin-stat > div svg { color: #6480af; }
.admin-dashboard-grid { grid-template-columns: minmax(0, 1fr) 300px; gap: 24px; }
.admin-project-list .row__cols { grid-template-columns: minmax(0, 1fr) auto; gap: 14px; }
.admin-project-list .row { padding: 22px 26px; }
.admin-commercial .panel__head { padding: 24px; }
.admin-commercial .panel__head h2 { font-size: 17px; }
.admin-commercial > a { padding: 22px 24px; }
.admin-commercial strong { font-size: 13px; }
.admin-commercial small { font-size: 11px; }
.admin-commercial .panel__foot { font-size: 12px; padding: 18px 24px; }
.admin-shortcuts > a { font-size: 13px; }
.admin-shortcuts small { font-size: 11px; }
.client-dashboard { grid-template-columns: minmax(0, 1fr) 280px; gap: 28px; }
.client-section-heading { margin-bottom: 18px; }
.client-section-heading h2, .client-section-heading h3 { font-size: 16px; }
.client-section-heading > span { font-size: 12px; }
.client-project { border-radius: 14px; box-shadow: var(--sh-1); }
.client-project__identity { padding: 24px 28px; }
.client-project__identity h2 { font-size: 20px; line-height: 1.35; }
.client-project__icon { width: 44px; height: 44px; background: #edf2fc; color: #3862a7; }
.client-action { padding: 34px; gap: 26px; min-height: 250px; background: var(--c-navy); }
.client-action__eyebrow { color: #bed0eb; font-size: 11px; letter-spacing: .04em; margin-bottom: 18px; }
.client-action h3 { font-size: clamp(25px, 2.3vw, 32px); font-weight: 550; max-width: 14ch; margin-bottom: 14px; }
.client-action p { color: #c3cfe0; font-size: 13px; max-width: 39ch; line-height: 1.75; }
.customer-portal .client-action .btn { background: #fff; border-color: #fff; font-size: 13px; color: #182d4d; }
.client-action__steps { min-width: 156px; border-left: 1px solid #3b4e6b; padding-left: 26px; flex-shrink: 0; }
.client-action__steps > span { color: #b4c5e0; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; }
.client-action__steps ol { margin: 20px 0 0; padding: 0; list-style: none; display: grid; gap: 20px; }
.client-action__steps li { display: flex; align-items: center; gap: 12px; color: #d8e3f2; font-size: 12px; }
.client-action__steps b { font-size: 10px; font-weight: 500; color: #9cb5d8; }
.client-project__progress { padding: 24px 28px; }
.client-project__progress > p { font-size: 11px; }
.client-project__body { padding: 0 28px 24px; }
.client-next p { font-size: 14px; }
.client-all-done { font-size: 13px; }
.client-project__foot { padding: 20px 28px; }
.client-documents a { padding: 23px 20px; }
.client-documents strong { font-size: 14px; }
.client-documents small { font-size: 12px; line-height: 1.5; }
.client-documents .client-documents__all { font-size: 12px; }
.client-roadmap { margin-top: 28px; padding: 25px 4px 0; }
.client-roadmap h2 { font-size: 19px; margin-bottom: 23px; }
.client-roadmap li strong { font-size: 13px; }
.client-roadmap li p { font-size: 12px; }
.client-roadmap li > span { font-size: 10px; }
.client-document-list__head { font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }
.admin-tools { display: flex; gap: 18px; flex-wrap: wrap; font-size: 12px; }
.admin-tools a { color: var(--c-muted); }
/* Onboarding and detail views */
.customer-portal .wizard { grid-template-columns: 225px minmax(0, 1fr); gap: 30px; }
.customer-portal .step a { font-size: 13px; padding: 15px 12px; }
.customer-portal .step__meta { font-size: 11px; }
.customer-portal .step__dot { width: 26px; height: 26px; font-size: 11px; }
.customer-portal .step--now a { background: #e9effc; }
.customer-portal .step--now .step__dot { background: var(--c-navy); border-color: var(--c-navy); }
.client-onboarding-meta { font-size: 12px; }
.client-onboarding-progress { padding: 23px 28px; }
.summaryblock { border-radius: 10px; background: #f8f9fc; padding: 22px; border: 1px solid var(--c-line); }
.summaryblock h3 { font-size: 18px; }
.summaryblock p, .summaryblock li { font-size: 13px; }
.customer-portal .fieldgroup { font-size: 13px; color: var(--c-ink); }
.note { box-shadow: none; border: 1px solid var(--c-line); }
.note--team { background: var(--c-accent-soft); }
/* Sign-in and account flows */
.customer-gate { background: #f3f5f8; }
.gate { min-height: 100dvh; padding: 34px 36px 22px; background: none; }
.gate__head { justify-content: flex-start; max-width: 1120px; width: 100%; margin: 0 auto; }
.gate__head .mark__logo { height: 32px; }
.gate__split { max-width: 1120px; width: 100%; grid-template-columns: 1fr 1fr; border: 1px solid #dfe5ed; border-radius: 20px; overflow: hidden; box-shadow: 0 16px 50px rgb(24 43 73 / 6%); }
.gate__brand { background: var(--c-navy); padding: 52px; min-height: 560px; }
.gate__brand::after { display: none; }
.gate__brandcopy h1 { font-size: clamp(30px, 3.2vw, 44px); font-weight: 550; max-width: 11ch; line-height: 1.13; margin-bottom: 22px; color: #fff; }
.gate__brandcopy p { color: #c0cee2; font-size: 14px; line-height: 1.8; max-width: 34ch; }
.gate__points { gap: 16px; margin-top: 34px; }
.gate__points li { color: #d5deeb; font-size: 12px; }
.gate__points svg { color: #97b8ed; }
.gate__brandfoot { font-size: 11px; color: #aabcda; }
.gate__form { background: #fff; display: flex; flex-direction: column; justify-content: center; padding: 48px; }
.gate__card { background: transparent; border: 0; box-shadow: none; padding: 0; }
.gate__title { font-size: 30px; }
.gate__card > p { font-size: 14px; }
.gate__card form { margin-top: 28px; }
.gate__promise { font-size: 10px; line-height: 1.6; margin-top: 26px; }
.gate__links { font-size: 12px; }
.gate__foot { font-size: 11px; padding-top: 24px; }
/* Public commercial document */
.paper { background: #f4f6f9; }
.letterhead { background: #fff; border-bottom: 1px solid var(--c-line); box-shadow: none; position: static; }
.letterhead__inner { max-width: 1140px; padding: 23px 0; }
.letterhead .mark__logo { height: 32px; }
.letterhead__tag { color: #6d7a8e; font-size: 11px; background: none; border: 0; }
.sheet { width: min(1140px, calc(100% - 64px)); }
.sheet--pad { padding-top: 36px; padding-bottom: 60px; }
.offerhead { background: var(--c-navy); padding: 38px 40px; border: 0; border-radius: 14px; box-shadow: none; margin-bottom: 26px; align-items: center; }
.offerhead h1 { color: #fff; font-size: clamp(28px, 3vw, 40px); font-weight: 550; line-height: 1.18; max-width: 20ch; }
.offerhead .kicker { color: #a8bedf; font-size: 10px; margin-bottom: 15px; }
.offerhead .lede { color: #c1cde0; font-size: 14px; margin-top: 14px; }
.offerhead__meta { color: #bdcde4; font-size: 12px; border-left: 1px solid #40516d; padding-left: 32px; line-height: 1.9; }
.offerhead__meta strong { color: #fff; font-size: 13px; }
.offergrid { grid-template-columns: minmax(0, 1fr) 310px; gap: 24px; }
.offergrid .panel__head { padding: 24px; }
.offergrid .panel__body { padding: 24px; }
.offergrid table { font-size: 13px; }
.offergrid td { vertical-align: top; padding: 22px 18px; }
.offergrid td .muted { margin-top: 8px; white-space: pre-line; font-size: 12px; line-height: 1.75; }
.offergrid th { padding: 14px 18px; }
.decisionbox { top: 24px; }
.decisionbox .panel { border: 1px solid var(--c-line); }
.decisionbox .panel__head { background: #fff; padding-bottom: 20px; }
.decisionbox .panel__head h2 { font-size: 22px; }
.decisionbox .panel__head p { font-size: 12px; line-height: 1.75; }
.decisionbox .btn { font-size: 13px; }
.decisionbox .disclosure { margin-top: 12px; padding-top: 17px; border-top: 1px solid var(--c-line); font-size: 12px; }
.offer-process { padding: 24px 5px; }
.offer-process h3 { font-size: 13px; margin-bottom: 16px; }
.offer-process ol { list-style: none; padding: 0; margin: 0; display: grid; gap: 15px; }
.offer-process li { display: flex; gap: 12px; align-items: flex-start; color: var(--c-muted); font-size: 12px; line-height: 1.6; }
.offer-process li span { color: var(--c-accent); font-size: 10px; padding-top: 2px; }
.totals { max-width: 340px; }
.totals__sum { font-size: 18px; border-top: 1px solid var(--c-line); }
.totals__sum strong { font-size: 24px; font-weight: 650; }
.recurring { background: #f2f5fc; border: 1px solid #dde5f5; border-radius: 9px; padding: 17px; }
.centerbox { max-width: 560px; padding-top: 20px; }
.centerbox .panel__body { padding: 36px; }
.centerbox h1 { font-size: 29px; }
.centerbox .otp { font-size: 26px; letter-spacing: .35em; }
/* Responsive behavior: same content and actions, no horizontal page scroll. */
@media (max-width: 1280px) {
    .customer-portal .work__body, .customer-portal .work__foot-inner { width: calc(100% - 56px); }
    .client-topbar { padding-inline: 28px; }
    .client-dashboard, .admin-dashboard-grid { grid-template-columns: minmax(0, 1fr); }
    .client-dashboard__aside { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
    .client-roadmap { grid-column: 2; grid-row: 1 / span 2; padding-top: 0; margin-top: 0; }
    .client-dashboard__aside > .client-section-heading { grid-column: 1; }
    .admin-dashboard-side { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
    .admin-shortcuts { margin-top: 0; }
    .admin-welcome > .cluster { flex-direction: row; }
    .admin-stats { gap: 12px; }
    .admin-stat { padding: 20px; }
}
@media (max-width: 1000px) {
    .client-sidebar { width: 220px; padding-inline: 15px; }
    .customer-portal .work, .client-topbar { margin-left: 220px; }
    .customer-portal .wizard { grid-template-columns: 180px minmax(0, 1fr); gap: 18px; }
    .admin-welcome { flex-wrap: wrap; }
    .offergrid { grid-template-columns: minmax(0, 1fr) 275px; gap: 20px; }
    .gate__brand { padding: 36px; }
    .gate__form { padding: 36px; }
}
@media (max-width: 800px) {
    .client-sidebar { display: none; }
    .customer-portal .work, .client-topbar { margin-left: 0; }
    .client-topbar { height: 64px; padding: 0 22px; }
    .client-mobile-nav { display: block; }
    .client-mobile-nav summary { min-height: 42px; font-size: 12px; }
    .client-mobile-nav nav { width: 250px; max-height: calc(100dvh - 85px); overflow-y: auto; }
    .client-mobile-nav a, .client-mobile-nav button { font-size: 14px; }
    .customer-portal .work__body { width: calc(100% - 40px); padding-top: 28px; }
    .customer-portal .work__foot-inner { width: calc(100% - 40px); }
    .customer-portal .wizard { grid-template-columns: minmax(0, 1fr); }
    .customer-portal .step { flex: 0 0 195px; }
    .customer-portal .stepper { gap: 8px; }
    .offergrid { grid-template-columns: minmax(0, 1fr); }
    .decisionbox { order: 0; position: static; }
    .offerhead { padding: 30px; flex-wrap: wrap; gap: 22px; }
    .offerhead__meta { border: 0; border-top: 1px solid #40516d; padding: 18px 0 0; width: 100%; text-align: left; }
    .letterhead__inner { padding: 20px; }
    .gate { padding: 24px 20px; }
    .gate__split { grid-template-columns: 1fr; }
    .gate__brand { min-height: 0; padding: 32px; }
    .gate__brand > .mark, .gate__brandfoot, .gate__points { display: none; }
    .gate__brandcopy h1 { max-width: 20ch; font-size: 29px; }
    .gate__brandcopy p { max-width: 45ch; margin: 0; font-size: 13px; }
    .gate__form { padding: 32px; }
}
@media (max-width: 560px) {
    .admin-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .admin-stat { padding: 18px; }
    .admin-stat > div { font-size: 11px; }
    .admin-stat > strong { font-size: 29px; }
    .admin-stat small { font-size: 10px; }
    .admin-welcome h1, .client-welcome h1 { font-size: 27px; }
    .admin-welcome p, .client-welcome p { font-size: 13px; }
    .client-project__identity, .client-project__progress, .client-project__foot { padding: 22px; }
    .client-project__identity h2 { font-size: 18px; }
    .client-action { display: block; padding: 28px 24px; }
    .client-action h3 { max-width: 16ch; font-size: 29px; }
    .client-action__steps { border-left: 0; border-top: 1px solid #40516d; margin-top: 28px; padding: 19px 0 0; }
    .client-action__steps ol { display: flex; flex-wrap: wrap; gap: 17px; margin-top: 14px; }
    .client-action__steps li { font-size: 11px; gap: 6px; }
    .client-dashboard__aside, .admin-dashboard-side { display: block; }
    .client-roadmap { margin-top: 28px; }
    .admin-shortcuts { margin-top: 24px; }
    .panel__head, .customer-portal .panel__head, .panel__body, .customer-portal .panel__body { padding: 22px; }
    .row, .customer-portal .row { padding: 20px 22px; }
    .row__cols { grid-template-columns: minmax(0, 1fr); }
    .client-document-list .row__cols { gap: 14px; }
    .admin-project-list .row__cols { grid-template-columns: minmax(0, 1fr); }
    .client-project__foot { align-items: flex-start; flex-direction: column; }
    .customer-portal input:not([type=checkbox]):not([type=radio]), .customer-portal select, .customer-portal textarea, input:not([type=checkbox]):not([type=radio]), select, textarea { font-size: 16px; }
    .admin-documents-table td { padding: 8px 0; }
    .sheet { width: calc(100% - 32px); }
    .sheet--pad { padding-top: 20px; }
    .offerhead { padding: 26px; }
    .offerhead h1 { font-size: 30px; }
    .letterhead__tag { max-width: 110px; text-align: right; font-size: 10px; }
    .offergrid table, .offergrid tbody, .offergrid tr, .offergrid td { display: block; width: 100%; }
    .offergrid thead { display: none; }
    .offergrid tr { padding: 20px 22px; border-bottom: 1px solid var(--c-line); }
    .offergrid td { padding: 4px 0; border: 0; text-align: left; white-space: normal; }
    .offergrid td[data-label]::before { content: attr(data-label); color: var(--c-muted); display: block; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 5px; }
    .offergrid td:first-child { color: var(--c-muted); font-size: 11px; }
    .gate__head { margin-bottom: 26px; }
    .gate__main { flex: none; }
    .gate__brand { padding: 28px; }
    .gate__form { padding: 28px; }
    .gate__title { font-size: 27px; }
    .centerbox .panel__body { padding: 25px; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
@media print {
    .client-sidebar, .client-topbar, .work__foot, .btn, .offer-process { display: none !important; }
    .customer-portal .work { margin: 0; }
    .customer-portal .work__body, .sheet { width: 100%; }
    .offerhead { background: #fff; color: #142744; border: 1px solid #cbd3df; }
    .offerhead h1, .offerhead .kicker, .offerhead .lede, .offerhead__meta, .offerhead__meta strong { color: #142744; }
    .offergrid { display: block; }
}

/* Offer, contract and payment workflow */
.commerce-check{display:flex;gap:12px;align-items:flex-start;margin:18px 0;font-size:14px;line-height:1.6;color:#304562}.commerce-check input{width:19px!important;height:19px;flex:0 0 19px;margin-top:3px;accent-color:#2358ca}.commerce-check span{flex:1}.commerce-invoice{padding:22px 0;border-bottom:1px solid #e4e9f1}.commerce-invoice:last-child{border-bottom:0}.commerce-bank{padding:18px 22px;border-radius:12px;background:#f2f5fb;margin:20px 0}.commerce-bank dl,.commerce-data{display:grid;grid-template-columns:130px minmax(0,1fr);gap:9px 16px;margin:0}.commerce-bank dt,.commerce-data dt{color:#67768c}.commerce-bank dd,.commerce-data dd{margin:0;overflow-wrap:anywhere;font-weight:600}.commerce-callout{padding:18px;border-left:3px solid #2d63cd;background:#f3f6fc;margin-top:20px;line-height:1.7}.commerce-link{overflow-wrap:anywhere}.commerce-billing{margin:22px 0}.commerce-billing .panel__body{max-width:920px}.cluster--between{justify-content:space-between}.grid-two{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:28px}.commerce-billing .field{max-width:520px}@media(max-width:760px){.grid-two{grid-template-columns:1fr}.commerce-bank dl,.commerce-data{grid-template-columns:1fr;gap:3px}.commerce-bank dd{margin-bottom:10px}.commerce-bank{padding:15px}.commerce-check{font-size:13px}.commerce-invoice .btn{width:100%}}

.commerce-files .btn { white-space: normal; text-align: left; justify-content: flex-start; height: auto; min-width: 0; overflow-wrap: anywhere; line-height: 1.5; }

.centerbox .commerce-check, .centerbox .panel .panel { text-align: left; }
