/* Visitor-facing type scale: readable body copy on desktop and small screens. */
body {
  font-size: 17px;
  line-height: 1.75;
}
.eyebrow {
  font-size: 12px;
}
.topbar {
  font-size: 12px;
}
.main-nav a {
  font-size: 15px;
}
.header-cta {
  font-size: 14px;
}
.language-switch a {
  font-size: 13px;
}
.button {
  font-size: 15px;
}
.hero-copy > p {
  font-size: 17px;
}
.hero-secondary {
  font-size: 14px;
}
.hero-bottom {
  font-size: 10px;
}
.heading-aside p {
  font-size: 15px;
}
.text-link {
  font-size: 14px;
}
.solution-card h3 {
  font-size: 21px;
}
.solution-card p {
  font-size: 14px;
  min-height: 74px;
}
.solution-card .text-link {
  font-size: 13px;
}
.process-inner .eyebrow {
  font-size: 11px;
}
.process-steps h3 {
  font-size: 18px;
}
.process-steps p {
  font-size: 14px;
}
.process-steps span {
  font-size: 13px;
}
.product-card {
  display: flex;
  flex-direction: column;
}
.product-card-info {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.product-card h3 {
  font-size: 18px;
}
.product-card p {
  font-size: 13px;
  flex: 1;
}
.product-card .text-link {
  font-size: 13px;
}
.product-card .eyebrow {
  font-size: 11px;
}
.portfolio-note {
  font-size: 13px;
}
.cta-section p {
  font-size: 15px;
}
.footer h3 {
  font-size: 14px;
}
.footer-top > div > a:not(.footer-wordmark) {
  font-size: 15px;
}
.footer-contact > span {
  font-size: 12px;
}
.footer-bottom {
  font-size: 13px;
}
.footer-brand > .text-link {
  font-size: 13px;
}
.page-header p {
  font-size: 16px;
}
.breadcrumb {
  font-size: 13px;
}
.catalog-sidebar h2 {
  font-size: 19px;
}
.catalog-sidebar h3 {
  font-size: 13px;
}
.catalog-sidebar > a {
  font-size: 14px;
  min-height: 39px;
}
.catalog-sidebar > a span {
  font-size: 12px;
}
.catalog-toolbar,
.catalog-search input {
  font-size: 14px;
}
.catalog-grid .product-card h3 {
  font-size: 18px;
}
.pagination a {
  font-size: 13px;
  min-width: 33px;
  min-height: 35px;
}
.detail-intro > p {
  font-size: 16px;
}
.detail-benefits span {
  font-size: 14px;
}
.detail-contact {
  font-size: 13px;
}
.detail-tabs a {
  font-size: 15px;
}
.prose {
  font-size: 16px;
  line-height: 1.95;
}
.prose table {
  font-size: 14px;
}
.document-section > p {
  font-size: 15px;
}
.documents-details > summary {
  font-size: 15px;
}
.document-grid a {
  font-size: 13px;
}
.contact-information > .prose,
.contact-information > a {
  font-size: 15px;
}
.contact-information small {
  font-size: 11px;
}
.contact-information .hours {
  font-size: 13px;
}
.inquiry-form label {
  font-size: 14px;
}
.inquiry-form input,
.inquiry-form textarea {
  font-size: 15px;
}
.form-legal {
  font-size: 12px;
}
.form-status {
  font-size: 14px;
}
.reading-aside p {
  font-size: 14px;
}
.reading-aside .button {
  font-size: 13px;
}
.article-card p {
  font-size: 15px;
}
.sitemap-grid ul {
  font-size: 15px;
}
.empty-state p {
  font-size: 15px;
}
.quick-actions > a,
.quick-actions > button {
  font-size: 14px;
}
.callback-dialog > p,
.cookie-dialog > p,
.cookie-option {
  font-size: 15px;
}
.cookie-buttons .button {
  font-size: 13px;
}
@media (min-width: 1550px) {
  .hero-copy > p {
    font-size: 18px;
  }
}
@media (max-width: 1150px) {
  .main-nav {
    gap: 18px;
  }
  .main-nav a,
  .header-cta {
    font-size: 13px;
  }
  .hero-copy > p {
    font-size: 17px;
  }
  .solution-card p {
    min-height: 0;
  }
}
@media (max-width: 850px) {
  .main-nav a {
    font-size: 16px;
  }
  .heading-aside p {
    font-size: 14px;
  }
  .catalog-sidebar > a {
    font-size: 13px;
  }
  .catalog-grid .product-card h3 {
    font-size: 16px;
  }
  .detail-intro > p {
    font-size: 15px;
  }
  .detail-intro .button {
    font-size: 13px;
  }
  .detail-benefits span,
  .detail-contact {
    font-size: 13px;
  }
  .prose {
    font-size: 15px;
  }
}
@media (max-width: 600px) {
  .topbar-inner > span {
    font-size: 9px;
  }
  .topbar-inner > div {
    font-size: 11px;
  }
  .language-switch a {
    font-size: 13px;
  }
  .hero-eyebrow {
    font-size: 11px;
  }
  .hero-copy > p {
    font-size: 15px;
    max-width: 355px;
  }
  .hero-buttons .button {
    font-size: 13px;
  }
  .hero-secondary {
    font-size: 12px;
  }
  .hero-bottom {
    font-size: 8px;
  }
  .hero,
  .hero-inner {
    min-height: 620px;
  }
  .section-heading .eyebrow,
  .cta-section .eyebrow,
  .page-header .eyebrow {
    font-size: 11px;
  }
  .heading-aside p {
    font-size: 14px;
  }
  .solution-card h3 {
    font-size: 19px;
  }
  .solution-card p {
    font-size: 13px;
  }
  .solution-card .text-link {
    font-size: 12px;
    gap: 6px;
  }
  .process-steps h3 {
    font-size: 18px;
  }
  .process-steps p {
    font-size: 13px;
  }
  .process-steps span {
    font-size: 12px;
  }
  .product-card h3,
  .catalog-grid .product-card h3 {
    font-size: 15px;
  }
  .product-card p {
    font-size: 12px;
  }
  .product-card .text-link {
    font-size: 11px;
  }
  .product-card .eyebrow {
    font-size: 10px;
  }
  .portfolio-note {
    font-size: 12px;
  }
  .cta-section p {
    font-size: 14px;
  }
  .footer h3 {
    font-size: 14px;
  }
  .footer-top > div > a:not(.footer-wordmark) {
    font-size: 14px;
  }
  .footer-contact > span,
  .footer-bottom {
    font-size: 13px;
  }
  .page-header p {
    font-size: 14px;
  }
  .breadcrumb {
    font-size: 11px;
  }
  .catalog-sidebar > a {
    font-size: 13px;
  }
  .catalog-toolbar,
  .catalog-search input {
    font-size: 13px;
  }
  .catalog-search {
    width: 210px;
  }
  .detail-tabs a {
    font-size: 13px;
  }
  .detail-contact {
    font-size: 12px;
  }
  .detail-intro .button {
    font-size: 14px;
  }
  .prose {
    font-size: 15px;
  }
  .prose table {
    font-size: 13px;
  }
  .document-section > p {
    font-size: 14px;
  }
  .document-grid a {
    font-size: 13px;
  }
  .inquiry-form input,
  .inquiry-form textarea {
    font-size: 17px;
  }
  .inquiry-form input::placeholder,
  .inquiry-form textarea::placeholder {
    font-size: 14px;
  }
  .inquiry-form label {
    font-size: 14px;
  }
  .inquiry-form .button {
    font-size: 14px;
  }
  .form-legal {
    font-size: 12px;
  }
  .quick-actions > a,
  .quick-actions > button {
    font-size: 13px;
  }
  .callback-dialog > p,
  .cookie-dialog > p {
    font-size: 15px;
  }
  .cookie-buttons .button {
    font-size: 13px;
  }
}
