/* Reading sizes shared by the homepage, forms, samples, and private workspace. */
:root { --muted: #586a80; }
body { font-size: 18px; line-height: 1.7; }
.eyebrow { font-size: 12px; letter-spacing: 1.5px; }
.brand-name { font-size: 27px; }
.brand-name small { font-size: 9px; letter-spacing: 1.6px; }
.header-inner { gap: 25px; }
#main-nav { gap: 20px; }
#main-nav > a:not(.button) { font-size: 14px; color: #4e6077; white-space: nowrap; }
#main-nav .button { font-size: 14px; padding: 13px 17px; gap: 14px; }
.button, .text-link, .hero-actions .button, .hire-copy > .button,
.report-card .button, .sample-actions .button, .sample-actions .text-link,
.section-intro .text-link, .submit-button { font-size: 15px; min-height: 50px; }
.text-link { min-height: auto; }
.hero { gap: 60px; }
.hero .eyebrow { font-size: 12px; }
.hero-description { font-size: 18px; line-height: 1.8; max-width: 520px; color: #52647a; }
.hero-actions { gap: 14px; }
.hero-actions .button { padding: 15px 20px; gap: 16px; }
.hero-person p { font-size: 15px; }
.hero-person small { font-size: 14px; color: #63738a; }
.avatar { width: 44px; height: 44px; font-size: 13px; }
.note-top { font-size: 10px; letter-spacing: 1px; }
.note-bottom { font-size: 12px; gap: 14px; }
.operations-note { width: 320px; }
.hero-image figcaption, .photo-index { font-size: 9px; letter-spacing: 1px; }
.market-strip { gap: 36px; grid-template-columns: 1fr 1.5fr .9fr; }
.market-strip .eyebrow { font-size: 10px; color: #617186; }
.market-primary > strong { font-size: 25px; }
.market-experience > div { font-size: 16px; gap: 22px; flex-wrap: wrap; }
.market-note { font-size: 15px; padding-left: 25px; }
.market-note > span { font-size: 14px; color: #63738a; }
.toolkit > p { font-size: 11px; color: #62728a; min-width: 115px; }
.section-intro > p:not(.eyebrow), .service-body p,
.about-copy > p:not(.eyebrow), .process-grid p,
.hire-copy > p:not(.eyebrow), .reports-heading > p,
.report-card > p:not(.report-code), .callers-copy > p:not(.eyebrow),
.contact-copy > p:not(.eyebrow), .faq-list p { font-size: 17px; line-height: 1.8; }
.section-intro > p:not(.eyebrow) { max-width: 350px; }
.service h3 { font-size: 21px; letter-spacing: -.4px; }
.service-number { font-size: 13px; }
.service-body { padding-left: 38px; }
.tags span, .hire-services > span { font-size: 13px; line-height: 1.6; padding: 5px 10px; }
.hire-grid, .services { gap: 70px; }
.hire-copy > p:not(.eyebrow) { color: #52647a; }
.hire-copy > p.hire-small { font-size: 14px; color: #617186; }
.hire-plan-top .eyebrow { font-size: 11px; color: #617186; }
.hire-step > span { font-size: 13px; }
.hire-step h3 { font-size: 19px; }
.hire-step p { font-size: 16px; line-height: 1.7; color: #62728a; }
.hire-applicant-note { font-size: 13px; flex-wrap: wrap; }
.hire-applicant-note > a { font-size: 14px; }
.section-heading > p { font-size: 17px; line-height: 1.8; }
.sample-disclaimer { font-size: 13px; line-height: 1.7; }
.work-grid { gap: 25px; }
.work-preview { height: 310px; }
.work-card-label > div > span { font-size: 11px; letter-spacing: 1px; }
.work-card-label h3 { font-size: 24px; }
.work-card-footer { font-size: 13px; line-height: 1.7; }
.mock-toolbar { font-size: 8px; }
.mock-tabs { font-size: 10px; }
.mock-table > div { font-size: 10px; min-height: 40px; }
.mock-table .mock-table-head { font-size: 8px; }
.contact-dot { font-size: 8px; width: 25px; height: 25px; }
.stage-pill { font-size: 8px; }
.mock-caption, .analysis-preview .mock-caption { font-size: 7px; letter-spacing: .6px; }
.mini-label { font-size: 9px; }
.sequence-badge { font-size: 7px; }
.sequence-step p { font-size: 12px; }
.channel { font-size: 8px; }
.sequence-day { font-size: 7px; }
.sequence-day strong { font-size: 16px; }
.property-meta, .analysis-figures span { font-size: 8px; letter-spacing: .4px; }
.analysis-total span { font-size: 11px; }
.about-principles strong { font-size: 17px; }
.about-principles small { font-size: 15px; color: #63738a; }
.about-art-bottom { font-size: 10px; }
.experience-tag span { font-size: 10px; }
.process-grid > div > span { font-size: 15px; }
.process-grid h3 { font-size: 18px; }
.process-grid p { color: #62728a; }
.report-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.report-card { padding: 30px; }
.report-code { font-size: 11px; }
.report-card h3 { font-size: 26px; min-height: 0; }
.report-card > p:not(.report-code) { color: #5e6f85; }
.report-card li { font-size: 15px; color: #596d85; padding-left: 18px; }
.report-process-note { font-size: 14px; color: #617186; }
.comps-callout strong { font-size: 19px; }
.comps-callout > div > span { font-size: 16px; color: #62728a; }
.comps-callout .text-link { font-size: 15px; }
.callers-copy > p:not(.eyebrow) { max-width: none; }
.role-label { font-size: 11px; }
.caller-role h3 { font-size: 25px; }
.caller-role > p { font-size: 14px; line-height: 1.7; }
.caller-checks { font-size: 15px; }
.callers-copy > p.talent-note { font-size: 14px; color: #bfcbdd; }
.caller-form > h3 { font-size: 28px; }
.form-intro { font-size: 16px; color: #617186; }
.field label, .caller-form .field label { font-size: 14px; }
.field label .optional { font-size: 13px; color: #68788e; }
.field input, .field select, .field textarea,
.caller-form .field input, .caller-form .field select,
.caller-form .field textarea { font-size: 16px; padding: 13px 14px; }
.field input, .field select { min-height: 50px; }
.field input::placeholder, .field textarea::placeholder { color: #748297; }
.field { margin-bottom: 23px; }
.form-note { font-size: 13px; color: #617186; }
.form-status, .form-status a, .form-status button { font-size: 16px; }
.form-reference { font-size: 13px; }
.consent { font-size: 14px; color: #596d85; }
.consent input { width: 18px; height: 18px; margin-top: 4px; }
.faq-list summary { font-size: 18px; }
.email-link { font-size: 17px; gap: 15px; overflow-wrap: anywhere; }
.contact-signature strong { font-size: 17px; }
.contact-signature > div > span { font-size: 14px; }
.contact-copy > p:not(.eyebrow) { max-width: 400px; }
.site-footer { flex-wrap: wrap; gap: 25px; }
.footer-brand .brand-name { font-size: 23px; }
.footer-brand .brand-name small { font-size: 8px; }
.site-footer > p { font-size: 13px; }
.site-footer > div { font-size: 14px; gap: 15px 24px; flex-wrap: wrap; }
dialog { width: min(800px, calc(100% - 32px)); padding: 32px; }
.dialog-top .eyebrow { font-size: 11px; }
.close-dialog { min-width: 42px; height: 42px; }
#order-title, #hire-title, #va-title { font-size: 34px; line-height: 1.25; letter-spacing: -1px; margin-top: 20px; }
.order-intro, #sample-content > p, .sample-brief { font-size: 17px; line-height: 1.8; }
.sample-notice { font-size: 14px; }
.sample-table { font-size: 15px; }
.sample-table th { font-size: 12px; }
.sample-step > span { font-size: 13px; }
.sample-step h3 { font-size: 18px; }
.sample-step p, .sample-calculation > div { font-size: 16px; }
.sample-step small { font-size: 13px; }
.asset-credit { font-size: 11px; }
.workspace-intro, .workspace-empty p { font-size: 17px; }
.workspace-count { font-size: 14px; }
.workspace-filters a { font-size: 14px !important; }
.submission-kind { font-size: 11px; min-width: 115px; }
.submission-kind.assistant { background: #eee8dc; border-color: #d6c8ad; color: #725c35; }
.submission-name { font-size: 18px; }
.submission-name small, .submission time { font-size: 14px; }
.submission-reference, .submission dt { font-size: 13px; }
.submission-email, .submission dd { font-size: 16px; }

/* Dedicated virtual assistant hiring and applicant paths. */
.va-section { background: #f3f0e9; border-top: 1px solid #e8e1d4; }
.va-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 80px; align-items: center; }
.va-copy > .eyebrow { color: #7c6440; }
.va-copy h2 { margin-top: 20px; font-size: 42px; }
.va-copy h2 em { color: #927344; }
.va-copy > p:not(.eyebrow) { font-size: 18px; line-height: 1.8; color: #52647a; margin-top: 24px; }
.va-copy > .button { margin-top: 30px; }
.va-copy > p.va-note { font-size: 14px; margin-top: 16px; color: #66748a; }
.va-scope { background: #fff; border: 1px solid #e0d9cc; padding: 32px; border-radius: 7px; }
.va-scope > .eyebrow { color: #7c6440; padding-bottom: 24px; border-bottom: 1px solid #e7e0d4; }
.va-task { display: flex; gap: 20px; margin-top: 26px; }
.va-task > span { font-size: 13px; color: #8f7447; padding-top: 4px; }
.va-task h3 { font-size: 20px; line-height: 1.4; }
.va-task p { font-size: 16px; color: #62728a; line-height: 1.75; margin-top: 8px; }
.va-applicant { border-top: 1px solid #e7e0d4; padding-top: 24px; margin-top: 28px; }
.va-applicant p { font-size: 15px; color: #62728a; margin-bottom: 8px; }
.va-applicant .text-link { font-size: 16px; }
.talent-paths { display: grid; gap: 12px; margin-top: 26px; }
.talent-paths a { border: 1px solid #647792; background: #ffffff08; border-radius: 5px; padding: 16px 20px; transition: background .2s; }
.talent-paths a:hover { background: #ffffff15; }
.talent-paths strong { display: block; font-size: 19px; font-weight: 600; }
.talent-paths a > span { display: block; font-size: 14px; line-height: 1.6; color: #c4cfdd; margin-top: 4px; }
.talent-paths span > span { color: var(--lime); margin-left: 6px; }
#caller-form { scroll-margin-top: 115px; }

@media (max-width: 1100px) {
  .header-inner { height: 84px; }
  .menu-toggle { display: flex; flex-direction: column; gap: 6px; justify-content: center; width: 44px; height: 44px; border: 1px solid #c7d0dc; border-radius: 4px; background: transparent; padding: 12px; }
  .menu-toggle span { display: block; width: 18px; height: 1px; background: var(--green); transition: transform .2s; }
  .menu-toggle[aria-expanded=true] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-toggle[aria-expanded=true] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  #main-nav { display: none; position: absolute; top: 83px; left: 0; right: 0; background: var(--paper); border-bottom: 1px solid var(--line); padding: 22px 32px; box-shadow: 0 12px 18px #202a360a; }
  #main-nav.is-open { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  #main-nav > a:not(.button) { font-size: 17px; padding: 12px 0; }
  #main-nav .button { margin-left: 0; margin-top: 12px; align-self: flex-start; }
  .hero { gap: 40px; }
  .hero h1 { font-size: 52px; }
  .hero-description { font-size: 17px; }
  .hero-actions { flex-direction: column; align-items: flex-start; }
  .hero-actions .button { font-size: 14px; }
  .operations-note { width: 285px; }
  .market-strip { gap: 25px; grid-template-columns: 1fr 1.5fr; }
  .market-note { display: none; }
  .market-experience > div { font-size: 16px; }
  .services, .hire-grid, .va-grid, .about, .contact-grid { gap: 45px; }
  .work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 35px 25px; }
  .work-preview { height: 310px; }
  .callers-grid { grid-template-columns: 1fr 1.15fr; gap: 40px; }
  .va-copy h2 { font-size: 36px; }
}
@media (max-width: 850px) {
  .brand-name { font-size: 27px; }
  .brand-name small { font-size: 9px; }
  .hero { grid-template-columns: 1fr; gap: 40px; }
  .hero h1 { font-size: 60px; max-width: 680px; }
  .hero-description { font-size: 18px; max-width: 650px; }
  .hero-actions { flex-direction: row; flex-wrap: wrap; }
  .hero-visual, .hero-image { min-height: 430px; }
  .hero-person p { font-size: 15px; }
  .hero-person small { font-size: 14px; }
  .operations-note { width: 320px; left: 20px; }
  .services, .va-grid, .hire-grid, .about, .callers-grid, .contact-grid, .faq-section { grid-template-columns: 1fr; gap: 35px; }
  .section-intro > p:not(.eyebrow) { max-width: 650px; }
  .section-intro h2 br { display: none; }
  .hire-copy > p:not(.eyebrow), .contact-copy > p:not(.eyebrow) { max-width: none; }
  .hire-copy h2, .about-copy h2, .callers-copy h2, .va-copy h2 { font-size: 40px; }
  .hire-copy > p.hire-small { font-size: 14px; }
  .hire-plan-top .eyebrow { font-size: 11px; }
  .hire-services > span { font-size: 13px; }
  .hire-step h3 { font-size: 19px; }
  .hire-step p { font-size: 16px; }
  .hire-applicant-note { font-size: 14px; }
  .hire-applicant-note > a { font-size: 15px; }
  .about-art { max-width: 600px; height: 330px; }
  .callers-copy { position: static; }
  .talent-paths { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reports-heading { flex-direction: column; align-items: flex-start; gap: 20px; }
  .reports-heading > p br { display: none; }
  .report-card { padding: 25px; }
  .report-card h3 { font-size: 24px; }
  .caller-form .form-row { grid-template-columns: 1fr 1fr; gap: 16px; }
  .site-footer > div { max-width: none; }
}
@media (max-width: 600px) {
  .container { width: calc(100% - 40px); }
  .hero h1 { font-size: clamp(40px, 11vw, 54px); letter-spacing: -1.8px; }
  .hero .eyebrow { font-size: 11px; letter-spacing: 1px; }
  .hero-actions { align-items: stretch; max-width: none; flex-direction: column; }
  .hero-actions .button { font-size: 15px; }
  .hero-visual, .hero-image { min-height: 360px; }
  .operations-note { width: 285px; left: 14px; }
  .operations-note > p { font-size: 22px; }
  .operations-note > p em { font-size: 25px; }
  .hero-image figcaption { font-size: 8px; right: 15px; }
  .market-primary { flex-direction: column; align-items: flex-start; gap: 8px; }
  .market-strip { grid-template-columns: 1fr; }
  .market-primary > strong { font-size: 25px; }
  .market-strip .eyebrow { font-size: 10px; }
  .market-experience > div { gap: 8px 20px; font-size: 16px; }
  .toolkit { flex-direction: column; gap: 14px; }
  .toolkit > p { font-size: 11px; }
  .toolkit > p br { display: none; }
  .tool-names { width: 100%; }
  h2 { font-size: 36px; letter-spacing: -1.3px; }
  .hire-copy h2, .about-copy h2, .callers-copy h2, .va-copy h2 { font-size: 35px; }
  .service h3 { font-size: 20px; }
  .service-body { padding-left: 0; }
  .section-intro > p:not(.eyebrow), .service-body p,
  .about-copy > p:not(.eyebrow), .hire-copy > p:not(.eyebrow),
  .reports-heading > p, .report-card > p:not(.report-code),
  .callers-copy > p:not(.eyebrow), .contact-copy > p:not(.eyebrow),
  .faq-list p, .process-grid p { font-size: 17px; }
  .hire-copy > p.hire-small, .callers-copy > p.talent-note { font-size: 14px; }
  .hire-services > span { font-size: 13px; }
  .work-grid, .report-grid, .talent-paths { grid-template-columns: 1fr; }
  .work-card-label h3 { font-size: 24px; }
  .work-card-footer { font-size: 13px; }
  .report-card li { font-size: 15px; }
  .report-card .button { font-size: 15px; }
  .report-code { font-size: 11px; }
  .report-process-note { font-size: 14px; }
  .comps-callout strong { font-size: 19px; }
  .comps-callout > div > span { font-size: 16px; }
  .comps-callout .text-link { font-size: 15px; white-space: normal; }
  .caller-role h3 { font-size: 25px; }
  .caller-role > p { font-size: 14px; }
  .caller-checks { font-size: 15px; }
  .caller-form .form-row, .form-row { grid-template-columns: 1fr; gap: 0; }
  .caller-form, .contact-form { padding: 24px 20px; }
  .field label, .caller-form .field label { font-size: 14px; }
  .field label .optional { font-size: 13px; }
  .consent { font-size: 14px; }
  .form-note { font-size: 13px; }
  .form-status { font-size: 16px; }
  .form-reference { font-size: 13px; }
  .email-link { font-size: 16px; }
  .contact-signature strong { font-size: 17px; }
  .contact-signature > div > span { font-size: 14px; }
  .site-footer > p { font-size: 13px; }
  .site-footer > div { font-size: 14px; }
  .footer-brand .brand-name { font-size: 23px; }
  .footer-brand .brand-name small { font-size: 8px; }
  .va-scope { padding: 24px 20px; }
  .va-task { gap: 14px; }
  .va-task h3 { font-size: 19px; }
  dialog { padding: 24px 20px; }
  #order-title, #hire-title, #va-title, #sample-content h2 { font-size: 29px; }
  .dialog-top .eyebrow { font-size: 10px; }
  .order-intro, #sample-content > p { font-size: 16px; }
  .sample-table { font-size: 15px; }
  .sample-calculation > div { font-size: 15px; }
  .workspace-intro { font-size: 17px; }
  .workspace-filters a { font-size: 13px !important; }
  .workspace-count, .submission time { font-size: 13px; }
  .submission-name { font-size: 17px; }
  .submission-name small { font-size: 14px; }
  .submission dt { font-size: 13px; }
  .submission dd, .submission-email { font-size: 16px; }
}

/* Department addresses stay readable on phones and narrow screens. */
.contact-emails{display:grid;gap:18px;margin-top:30px;min-width:0}.contact-emails dt{font-size:13px;color:#617186}.contact-emails dd{margin:3px 0 0}.contact-emails a{font-size:16px;line-height:1.6;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.form-note a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
