/* Comfortable defaults remain compatible with the reading-size controls. */
body{font-size:16px;line-height:1.65}
.site-body p,.section-heading>p,.v3-hero-intro,.v3-media-credit,.client-main p{font-size:16px}
.v3-header .nav-item>a,.service-site-bar nav>a,.service-page-menu summary{font-size:14px}
.v3-contact-rail,.v3-contact-rail p{font-size:13px}.v3-contact-rail{min-height:43px;height:auto;padding-block:8px}
.brand-name small{font-size:9px;letter-spacing:.06em}.sidebar .brand-name small{font-size:8px}
.button,.button.small,.v3-header .nav-cta,.text-link{font-size:14px}.button.small{min-height:42px}
.v3-header .nav-cta{gap:13px}.v3-header .main-nav{gap:17px}.v3-nav-shell{flex-wrap:wrap}
.v3-floating-note{max-width:380px}.v3-floating-note strong{font-size:15px}.v3-floating-note small{font-size:12px}
.v3-console .workspace,.v3-console table{font-size:15px}.v3-console .workspace p{font-size:15px}
.v3-console .side-link,.v3-console .v3-group-toggle{font-size:14px;line-height:1.5}
.v3-console .detail-line,.v3-console .record-id,.v3-console .form-help,.v3-console .pagination,.v3-console .status{font-size:13px;line-height:1.7}
.v3-console table td{font-size:15px;line-height:1.6}.v3-console table th{font-size:13px;line-height:1.5;letter-spacing:.04em}
.v3-console .record-link{font-size:16px}.v3-console .user-chip strong{font-size:14px}.v3-console .user-chip small{font-size:13px}
.v3-console label,.v3-console input,.v3-console select,.v3-console textarea,.client-main input,.client-main select,.client-main textarea,.auth-card input{font-size:16px}
.v3-console .side-group,.workspace-label{font-size:12px}.v3-console .admin-footer{font-size:13px}
.eyebrow,.v3-console .eyebrow{font-size:12px}.client-tabs{overflow:auto;scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:12px}
.client-tabs a{font-size:14px;white-space:nowrap}.client-main .stat-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.client-stage{background:#eaf4ee;padding:16px;border-radius:12px}.client-message{padding-block:15px;border-bottom:1px solid #dfe7e7}
.related-records>a{display:flex;align-items:center;gap:18px;padding:17px 0;border-bottom:1px solid #e5ecec}.related-records strong{display:block}.related-records>a>.icon{margin-left:auto}
.related-records .status{flex-shrink:0}.client-record{overflow-wrap:anywhere}.registration-form{display:grid;gap:17px}
.registration-form .check-label{align-items:flex-start;font-weight:400}.registration-form .check-label input{width:20px;height:20px;flex-shrink:0;margin-top:3px}
.gallery-viewport{max-height:min(75dvh,900px);overflow-y:scroll;overflow-x:hidden;scrollbar-gutter:stable;padding:8px 16px 8px 4px;overscroll-behavior:contain;border-block:1px solid #e0e9e6}
.gallery-page-options{display:flex;align-items:end;gap:16px;margin-bottom:22px}.gallery-page-options label{margin:0}.gallery-page-options select{min-width:130px}
.gallery-pagination>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gallery-page-number{display:grid;place-items:center;min-width:38px;min-height:42px;border-radius:9px}
.gallery-page-number[aria-current=page]{background:#10334b;color:white}.gallery-grid{padding-bottom:20px}.gallery-grid figcaption{font-size:14px;padding-block:12px}
.calendar-workspace{overflow:hidden}.calendar-workspace-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px;border-bottom:1px solid #dce5ed;flex-wrap:wrap}
.calendar-heading{display:flex;align-items:center;gap:15px}.calendar-heading h2{font-size:27px;margin:0;letter-spacing:-.04em}.calendar-heading .eyebrow{margin:0 0 4px}
.calendar-app-icon{display:grid;place-items:center;background:#e7f0fe;color:#236bd1;border-radius:13px;width:53px;height:53px;font-size:23px}
.calendar-workspace-filter{display:grid;grid-template-columns:150px 1fr 1.4fr 1.4fr auto;gap:16px;align-items:end;padding:20px 25px}.calendar-workspace-filter label{margin:0;min-width:0}
.calendar-view-tabs{display:flex;align-items:center;gap:3px;padding:0 25px;border-bottom:1px solid #e0e7ef;overflow:auto}
.calendar-view-tabs>a{padding:12px 19px;font-size:14px;white-space:nowrap}.calendar-view-tabs>a[aria-current=page]{background:#edf3fe;color:#205bbb;border-bottom:3px solid #246bd1;font-weight:700}
.calendar-view-tabs>span{font-size:13px;margin-left:auto;white-space:nowrap;padding:10px}.calendar-workspace-body{display:grid;grid-template-columns:minmax(0,1fr) 240px}
.calendar-board-scroll{max-height:770px;overflow:auto;scrollbar-gutter:stable;overscroll-behavior:contain}.calendar-board{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));min-width:735px}
.calendar-weekday{padding:13px 6px;text-align:center;font-size:12px;font-weight:650;border-right:1px solid #e6eaf0;border-bottom:1px solid #e6eaf0;background:#f8fafc;position:sticky;top:0;z-index:1}
.calendar-cell{min-height:135px;border-right:1px solid #e1e7ef;border-bottom:1px solid #e1e7ef;padding:7px;overflow:hidden;background:#fff}.calendar-cell.is-outside{background:#fafbfd}.calendar-cell.is-outside>.calendar-date{color:#8594a6}
.calendar-date{width:32px;height:32px;display:grid;place-items:center;margin:0 auto 6px;border-radius:50%;font-size:14px;color:#3e526a;font-weight:650}.calendar-cell.is-today>.calendar-date{background:#2868d0;color:white}.calendar-cell.is-selected{background:#f4f8fe}
.calendar-event-pill{display:block;font-size:13px;line-height:1.5;margin:4px 0;padding:5px 7px;border-radius:6px;overflow-wrap:anywhere;color:#215c46;background:#e0f0e5;border-left:3px solid #269d65}
.calendar-event-pill.observance{background:#e6efff;color:#214c9a;border-color:#4c82d2}.calendar-event-pill.company{background:#f2eafd;color:#71439c;border-color:#9b6ec2}.calendar-event-pill:hover{filter:brightness(.97);text-decoration:underline}
.calendar-board-week .calendar-cell{min-height:500px}.calendar-board-day{grid-template-columns:1fr;min-width:0}.calendar-board-day .calendar-cell{min-height:500px;padding:25px}.calendar-board-day .calendar-date{display:block;width:auto;height:auto;font-size:21px;border-radius:8px;padding:12px;margin-bottom:20px}.calendar-board-day .calendar-event-pill{font-size:17px;padding:18px;margin:15px 0}
.calendar-day-panel{border-left:1px solid #e0e7ef;padding:24px;background:#fbfcfe;min-width:0}.calendar-day-panel h3{font-size:17px;letter-spacing:-.02em}.calendar-day-panel blockquote{font:500 22px/1.6 Georgia,serif;margin:20px 0}.calendar-day-panel cite{font-size:13px;font-style:normal}.calendar-day-panel p{font-size:13px!important;line-height:1.8}.calendar-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#269d65;margin-right:8px}.calendar-dot.observance{background:#4c82d2}.calendar-dot.company{background:#9b6ec2}
.calendar-agenda-row{padding:25px;display:flex;gap:25px;border-bottom:1px solid #e1e7ef}.calendar-agenda-row>time{width:70px;flex-shrink:0;text-align:center;font-size:13px}.calendar-agenda-row>time strong{display:block;font-size:30px}.calendar-agenda-row>div{flex:1}.calendar-agenda-row .calendar-event-pill{font-size:17px}
.calendar-event-dialog{width:min(570px,calc(100% - 30px));padding:32px}.calendar-event-dialog h2{font-size:28px;padding-right:20px}.calendar-event-dialog p{font-size:16px;white-space:pre-line}.calendar-event-dialog .dialog-close{right:13px;top:13px}
.quote-library-scroll{max-height:620px;overflow-y:scroll;overscroll-behavior:contain;padding-right:15px;margin-bottom:24px}.quote-review-row{display:flex;flex-direction:row;align-items:flex-start;gap:14px;padding:20px 0;border-bottom:1px solid #dce6e3}.quote-review-row>input{width:20px;height:20px;flex-shrink:0;margin-top:4px}.quote-review-row small{display:block;margin-top:8px;font-size:13px}
.accounting-welcome{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;margin-bottom:28px;padding:30px;border-radius:18px;background:#10354c;color:#fff}.accounting-welcome h2{font-size:31px;color:white;max-width:670px}.accounting-welcome .eyebrow{color:#b6d7cf}.accounting-welcome p{max-width:680px;color:#d4e2ed}.accounting-welcome .button{background:#c6efb2;color:#10334b}
.accounting-kpis .stat-card{min-width:0}.accounting-kpis strong{font-size:clamp(22px,2vw,32px);overflow-wrap:anywhere}.accounting-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:25px;margin-bottom:25px}.aging-bars{display:grid;gap:21px;margin-block:28px}.aging-bars>div{display:grid;grid-template-columns:110px 1fr auto;gap:15px;align-items:center;font-size:14px}.aging-bars>div>div{height:9px;border-radius:8px;background:#eaf0f5;overflow:hidden}.aging-bars i{display:block;background:#3185b0;height:100%;border-radius:8px}.aging-bars strong{font-size:14px}.accounting-shortcuts{display:grid;gap:0}.accounting-shortcuts a{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #e4ebed;font-size:15px}.accounting-register{max-height:640px;overflow:auto}
.receipt-allocation-editor{min-width:0;padding:24px;border:1px solid #dce5ed;border-radius:12px;margin:15px 0}.receipt-allocation-editor legend{float:none;width:auto;font-weight:700;font-size:20px;padding:0 10px}.receipt-allocation-editor td:first-child{min-width:360px}.receipt-allocation-editor td:nth-child(2){min-width:160px}.receipt-allocation-editor output{font-weight:700;color:#215b64}.profile-sign-preview{width:220px;max-height:130px;object-fit:contain;object-position:left center;margin:15px 0;background:white;border:1px solid #dbe5ec;padding:10px}
.document-signoff{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding-top:30px;margin-top:30px;border-top:1px solid #d9e2e8;break-inside:avoid}.document-signoff p{margin:0 0 5px}.document-signature{max-width:210px;max-height:100px;object-fit:contain;object-position:left center;display:block}.document-stamp{max-width:160px;max-height:150px;object-fit:contain}.document-draft-label{padding:12px;border:2px solid #a2443d;color:#922e27;font-weight:700;text-align:center}.print-document .document-items td,.print-document .document-items th{font-size:14px}.print-document p{font-size:14px}.print-toolbar{flex-wrap:wrap;gap:12px}.document-items tfoot{font-weight:700}
.site-dialog{position:fixed;inset:0;margin:auto;max-height:calc(100dvh - 32px);overflow:auto}.daily-insight>time,.daily-insight cite,.daily-insight .calendar-preference,.daily-insight .daily-event small{font-size:13px}.daily-insight .daily-event strong{font-size:16px}.accessibility-launch .icon{position:static;opacity:1;transform:none;pointer-events:none;background:none;padding:0;color:inherit}
.daily-quote-source{font-size:13px;display:inline-flex;align-items:center;gap:8px;margin-top:9px;text-decoration:underline}.daily-quote-license{display:block;font-size:12px;color:#507066;margin-top:4px}
/* Preserve scaling after these larger baseline sizes have been captured. */
html .reading-text{font-size:calc(var(--reading-font)*var(--reading-scale))!important}
@media(max-width:1200px){.calendar-workspace-body{grid-template-columns:minmax(0,1fr)}.calendar-day-panel{border-left:0;border-top:1px solid #e0e7ef;display:none}.calendar-workspace-filter{grid-template-columns:1fr 1fr}.calendar-view-tabs>span{display:none}.accounting-columns{grid-template-columns:1fr}.v3-header .main-nav{gap:13px!important}}
@media(max-width:760px){.calendar-workspace-toolbar,.calendar-workspace-filter{padding:18px}.calendar-heading h2{font-size:23px}.calendar-workspace-filter{gap:12px}.calendar-view-tabs{padding-inline:12px}.calendar-view-tabs>a{padding:13px}.calendar-board-scroll{max-height:650px}.calendar-board{grid-template-columns:repeat(7,110px)}.calendar-board-day{grid-template-columns:1fr}.accounting-kpis{grid-template-columns:1fr 1fr}.accounting-welcome{padding:24px}.accounting-welcome h2{font-size:27px}.aging-bars>div{grid-template-columns:90px 1fr;gap:8px}.aging-bars strong{grid-column:2}.gallery-viewport{max-height:70dvh;padding-right:10px}.gallery-pagination{align-items:start;gap:15px}.gallery-pagination>div{gap:4px}.v3-contact-rail .container>div{gap:12px}.v3-contact-rail p{display:none}.v3-floating-note{max-width:calc(100% - 35px)}.related-records>a{flex-wrap:wrap}.document-signoff{gap:15px}}
@media(max-width:430px){.accounting-kpis{grid-template-columns:1fr}.calendar-workspace-filter{grid-template-columns:1fr}.print-toolbar .button{font-size:13px}}
@media print{.print-toolbar,.accessibility-launch{display:none!important}.print-document{box-shadow:none;width:auto;margin:0;padding:0}.document-signature,.document-stamp{print-color-adjust:exact}.document-letterhead{break-inside:avoid}.document-signoff{break-inside:avoid}.document-items thead{display:table-header-group}.document-items tr{break-inside:avoid}}
