/* Supporting pages: light Poppins, generous panels and rounded actions. */
main:not(.co-assessor) .page-hero,
main:not(.co-assessor) .resource-hero { padding: 32px 0 56px; background: #FFFFFF; }
main:not(.co-assessor) .page-hero h1,
main:not(.co-assessor) .resource-hero h1,
.model-detail-main .guide-heading h1 {
  max-width: 22ch;
  color: #142C4B;
  font-family: var(--font, 'Poppins', Arial, sans-serif);
  font-size: clamp(30px, 8vw, 36px);
  font-weight: 400;
  font-style: normal;
  line-height: 1.2;
  letter-spacing: -.035em;
  text-wrap: balance;
}
main:not(.co-assessor) .page-hero h1 br,
main:not(.co-assessor) .resource-hero h1 br,
.model-detail-main .guide-heading h1 br { display: initial; }
main:not(.co-assessor) .page-lead,
main:not(.co-assessor) .page-intro > p:not(.eyebrow),
main:not(.co-assessor) .resource-hero-grid > div > p:not(.eyebrow) {
  max-width: 56ch;
  margin-top: 22px;
  color: #53647C;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.85;
}
main:not(.co-assessor) .breadcrumbs { margin-bottom: 28px; font-size: 11px; }
main:not(.co-assessor) .breadcrumbs a { color: #53647C; text-decoration-color: #A8B9D2; }
main:not(.co-assessor) .breadcrumbs a:hover { color: #2155E8; }
main:not(.co-assessor) .page-actions { margin-top: 28px; gap: 14px 22px; }
main:not(.co-assessor) .page-actions .text-link { min-height: 44px; color: #2155E8; font-size: 13px; }
main:not(.co-assessor) .hero-facts { margin-top: 24px; gap: 10px 20px; color: #53647C; font-size: 11px; }
main:not(.co-assessor) .page-hero-grid,
main:not(.co-assessor) .resource-hero-grid,
main:not(.co-assessor) .stage-grid,
main:not(.co-assessor) .story-grid { gap: 38px; }
main:not(.co-assessor) .page-hero-grid .editorial-photo img,
main:not(.co-assessor) .editorial-story .editorial-photo img { border-radius: 26px; }
main:not(.co-assessor) .page-section .section-heading h2,
main:not(.co-assessor) .related-section .section-heading h2,
main:not(.co-assessor) .stage-grid > div:not(.stage-document):not(.finance-preview) > h2,
main:not(.co-assessor) .story-grid > div > h2,
main:not(.co-assessor) .page-faq .faq-grid > div > h2,
main:not(.co-assessor) .closing-card h2 {
  color: #142C4B;
  font-family: var(--font, 'Poppins', Arial, sans-serif);
  font-size: clamp(28px, 7.2vw, 34px);
  font-weight: 400;
  font-style: normal;
  line-height: 1.22;
  letter-spacing: -.035em;
  text-wrap: balance;
}
main:not(.co-assessor) .page-section .section-heading > p,
main:not(.co-assessor) .related-section .section-heading > p { color: #53647C; font-size: 15px; line-height: 1.85; }
main:not(.co-assessor) .page-hero .button,
main:not(.co-assessor) .resource-hero .button,
main:not(.co-assessor) .guide-heading .button,
main:not(.co-assessor) .page-section .button,
main:not(.co-assessor) .editorial-story .button,
main:not(.co-assessor) .closing-section .button {
  min-height: 50px;
  padding: 14px 24px;
  border-radius: 999px;
  box-shadow: none;
  font-size: 13px;
  font-weight: 500;
}

/* The gallery retains each document's own style inside a broader display panel. */
main:not(.co-assessor) .library-grid { gap: 22px; }
main:not(.co-assessor) .library-card.model-card {
  padding: 0;
  overflow: hidden;
  border: 1px solid #D9E3F2;
  border-radius: 26px;
  background: #FFFFFF;
  box-shadow: none;
}
main:not(.co-assessor) .library-card.model-card:hover { border-color: #A8B9D2; transform: none; box-shadow: none; }
main:not(.co-assessor) .library-card .library-art,
main:not(.co-assessor) .library-card .premium-model-art { border-radius: 0; background: #F2F6FC; }
main:not(.co-assessor) .library-card .model-card-copy { padding: 24px; }
main:not(.co-assessor) .library-card .model-card-copy h3 {
  color: #142C4B;
  font-family: var(--font, 'Poppins', Arial, sans-serif);
  font-size: 21px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -.025em;
}
main:not(.co-assessor) .library-card .model-card-copy p { color: #53647C; font-size: 13px; line-height: 1.85; }
main:not(.co-assessor) .library-card .card-meta { margin-top: 22px; padding-top: 18px; border-top: 1px solid #D9E3F2; font-size: 11px; }
main:not(.co-assessor) .library-toolbar { gap: 22px; padding-bottom: 26px; }
main:not(.co-assessor) .search-field > span { color: #142C4B; font-size: 13px; font-weight: 500; }
main:not(.co-assessor) .search-field input { min-height: 52px; padding-inline: 19px; border-radius: 999px; font-size: 16px; }
main:not(.co-assessor) .filter-group button { min-height: 44px; padding: 10px 16px; border-radius: 999px; font-size: 12px; font-weight: 400; }
main:not(.co-assessor) .library-meta { margin-block: 24px; font-size: 12px; }
main:not(.co-assessor) .models-footnote { color: #53647C; font-size: 12px; line-height: 1.8; }
main:not(.co-assessor) .resource-grid,
main:not(.co-assessor) .benefits-grid { gap: 20px; }
main:not(.co-assessor) .resource-card,
main:not(.co-assessor) .benefit-card {
  padding: 28px 25px;
  border: 0;
  border-radius: 26px;
  background: #F2F6FC;
  box-shadow: none;
}
main:not(.co-assessor) .resource-card:hover { background: #E8F0FF; border: 0; transform: none; box-shadow: none; }
main:not(.co-assessor) .resource-card h3,
main:not(.co-assessor) .benefit-card h2 { color: #142C4B; font-family: var(--font, 'Poppins', Arial, sans-serif); font-size: 23px; font-weight: 400; line-height: 1.35; letter-spacing: -.025em; }
main:not(.co-assessor) .resource-card > p,
main:not(.co-assessor) .benefit-card p { color: #53647C; font-size: 14px; line-height: 1.85; }
main:not(.co-assessor) .resource-card > .text-link { font-size: 13px; font-weight: 500; }
main:not(.co-assessor) .resource-card .resource-icon { width: 40px; height: 40px; color: #2155E8; }

main:not(.co-assessor) .page-faq { border: 0; background: #FFFFFF; }
main:not(.co-assessor) .page-faq .faq-list details { border-color: #D9E3F2; }
main:not(.co-assessor) .page-faq .faq-list summary { padding-block: 22px; color: #142C4B; font-size: 15px; font-weight: 400; line-height: 1.7; }
main:not(.co-assessor) .page-faq .faq-list summary > span { border: 0; border-radius: 50%; background: #F2F6FC; color: #2155E8; }
main:not(.co-assessor) .page-faq .faq-list details > p { color: #53647C; font-size: 14px; line-height: 1.85; }
main:not(.co-assessor) .closing-card { padding: 34px 26px; border: 0; border-radius: 28px; background: #E8F0FF; box-shadow: none; }
main:not(.co-assessor) .closing-card h2 { max-width: 26ch; }
main:not(.co-assessor) .closing-card p:not(.eyebrow) { max-width: 56ch; color: #53647C; font-size: 15px; line-height: 1.85; }
main:not(.co-assessor) .closing-card small { color: #53647C; font-size: 12px; line-height: 1.75; }
main:not(.co-assessor) .stage-section,
main:not(.co-assessor) .stage-section.stage-reverse { border: 0; background: #FFFFFF; }
main:not(.co-assessor) .process-summary { gap: 10px; border: 0; }
main:not(.co-assessor) .process-summary > a { padding: 18px 14px; border: 0; border-radius: 18px; background: #F2F6FC; font-size: 13px; }
main:not(.co-assessor) .process-summary > a:hover { background: #E8F0FF; }
main:not(.co-assessor) .guide-advice { border: 1px solid #D9E3F2; border-radius: 22px; background: #F2F6FC; }
main:not(.co-assessor) .guide-advice > summary { font-size: 14px; font-weight: 500; }
main:not(.co-assessor) .finance-preview { border: 1px solid #D9E3F2; border-radius: 26px; box-shadow: none; }
main:not(.co-assessor) .finance-preview .finance-heading h2 { font-family: var(--font, 'Poppins', Arial, sans-serif); font-size: 26px; font-weight: 400; letter-spacing: -.03em; }
main:not(.co-assessor) .finance-preview .finance-balance { border-radius: 18px; }
main:not(.co-assessor) .finance-preview .finance-balance > strong { font-weight: 500; }
main:not(.co-assessor) .finance-featured { border: 0; border-radius: 28px; }
main:not(.co-assessor) .finance-featured h2 { font-family: var(--font, 'Poppins', Arial, sans-serif); font-weight: 400; letter-spacing: -.03em; }
main:not(.co-assessor) .finance-featured .text-link { padding: 13px 22px; border-radius: 999px; font-size: 13px; }

/* Access remains a local preview with visible validation and readable inputs. */
.auth-page,
.auth-page .auth-story h2,
.auth-page .auth-form-content h1,
.auth-page .auth-sample-monogram,
.auth-page .auth-sample-customer { font-family: var(--font, 'Poppins', Arial, sans-serif); }
.auth-page .auth-form-content h1 { color: #142C4B; font-size: 32px; font-weight: 400; line-height: 1.2; letter-spacing: -.03em; }
.auth-page .auth-intro { color: #53647C; font-size: 14px; line-height: 1.85; }
.auth-page .auth-back-link { padding-inline: 18px; border-radius: 999px; font-size: 12px; }
.auth-page .auth-field input { min-height: 54px; border-radius: 14px; font-size: 16px; }
.auth-page .auth-field label { font-size: 13px; font-weight: 400; }
.auth-page .auth-submit { min-height: 54px; padding-inline: 22px; border-radius: 999px; font-weight: 500 !important; }
.auth-page .auth-preview-notice { padding: 18px 16px; border-radius: 18px; }
.auth-page .auth-preview-notice p { font-size: 13px; line-height: 1.8; }
.auth-page .auth-awareness label > span { font-size: 13px; line-height: 1.8; }
.auth-page .auth-story { padding: 34px 26px; border-radius: 28px; }
.auth-page .auth-story h2 { color: #FFFFFF; font-size: 34px; font-weight: 400; line-height: 1.2; letter-spacing: -.03em; }
.auth-page .auth-story-description { color: #DEE8FF; font-size: 14px; line-height: 1.85; }
.auth-page .auth-feedback, .auth-page .auth-recovery p { border-radius: 16px; }

.brand-guide { font-family: var(--font, 'Poppins', Arial, sans-serif); }
.brand-guide .brand-hero h1 { font-family: var(--font, 'Poppins', Arial, sans-serif); font-size: 34px; font-weight: 400; line-height: 1.2; letter-spacing: -.035em; }
.brand-guide h2, .brand-guide h3 { font-family: var(--font, 'Poppins', Arial, sans-serif); font-weight: 400; }
.brand-guide .brand-direction { padding: 28px; border: 0; border-radius: 26px; background: #F2F6FC; }
.brand-guide .brand-direction p, .brand-guide .brand-direction ul { color: #53647C; font-size: 14px; line-height: 1.9; }
.brand-guide .swatch { border-radius: 24px; }
.brand-guide .swatch-info strong { font-weight: 500; font-size: 13px; }
.brand-guide .swatch-info p { font-size: 12px; }
.brand-guide .brand-sample { padding: 32px 26px; border-radius: 28px; }
.brand-guide .type-display { font-family: var(--font, 'Poppins', Arial, sans-serif); font-size: 34px; font-weight: 400; }
.brand-guide .brand-principles span { padding: 8px 14px; border-radius: 999px; font-size: 11px; }

@media (min-width: 580px) {
  main:not(.co-assessor) .page-hero,
  main:not(.co-assessor) .resource-hero { padding-block: 48px 76px; }
  main:not(.co-assessor) .page-hero h1,
  main:not(.co-assessor) .resource-hero h1,
  .model-detail-main .guide-heading h1 { font-size: 44px; }
  main:not(.co-assessor) .page-section .section-heading h2,
  main:not(.co-assessor) .related-section .section-heading h2,
  main:not(.co-assessor) .stage-grid > div:not(.stage-document):not(.finance-preview) > h2,
  main:not(.co-assessor) .story-grid > div > h2,
  main:not(.co-assessor) .page-faq .faq-grid > div > h2,
  main:not(.co-assessor) .closing-card h2 { font-size: 38px; }
  main:not(.co-assessor) .closing-card { padding: 46px 40px; }
  main:not(.co-assessor) .library-card .model-card-copy { padding: 28px; }
  .auth-page .auth-form-content h1 { font-size: 36px; }
  .auth-page .auth-story { padding: 46px 38px; }
  .brand-guide .brand-hero h1 { font-size: 44px; }
}
@media (min-width: 1000px) {
  main:not(.co-assessor) .page-hero,
  main:not(.co-assessor) .resource-hero { padding-block: 56px 100px; }
  main:not(.co-assessor) .page-hero h1,
  main:not(.co-assessor) .resource-hero h1,
  .model-detail-main .guide-heading h1 { font-size: clamp(44px, 4.2vw, 54px); }
  main:not(.co-assessor) .page-hero-grid,
  main:not(.co-assessor) .resource-hero-grid,
  main:not(.co-assessor) .stage-grid,
  main:not(.co-assessor) .story-grid { gap: 64px; }
  main:not(.co-assessor) .page-lead,
  main:not(.co-assessor) .page-intro > p:not(.eyebrow),
  main:not(.co-assessor) .resource-hero-grid > div > p:not(.eyebrow) { font-size: 16px; }
  main:not(.co-assessor) .closing-card { padding: 60px; }
  .auth-page .auth-story h2 { font-size: 44px; }
  .brand-guide .brand-hero h1 { font-size: 52px; }
  .brand-guide .brand-direction { padding: 36px; }
}
@media (max-width: 359px) {
  main:not(.co-assessor) .page-hero h1,
  main:not(.co-assessor) .resource-hero h1,
  .model-detail-main .guide-heading h1 { font-size: 30px; }
  main:not(.co-assessor) .library-card .model-card-copy { padding: 22px 20px; }
  main:not(.co-assessor) .filter-group button { padding-inline: 13px; font-size: 11px; }
  main:not(.co-assessor) .closing-card { padding: 30px 22px; }
  .auth-page .auth-form-content h1, .auth-page .auth-story h2 { font-size: 30px; }
  .brand-guide .brand-direction { padding: 24px; }
}
