/* Public-site reading sizes; keep the established Poppins and heading scale. */
body{font-size:15px}
.header .navigation{gap:24px}
.header .nav-links{font-size:14px;gap:20px}
.header .nav-links>a:not(.button){white-space:nowrap}
.header .nav-links .nav-store-cta{font-size:12px;font-weight:500;line-height:1.5;max-width:none;white-space:nowrap;padding:11px 16px;letter-spacing:0}
.topbar .topbar-account{font-size:12px}
.quick-links .promo p,.promo-free-store p{font-size:15px;line-height:1.75}
.quick-links .promo p{max-width:300px}
.quick-links .small-button,.quick-links .promo-status,.promo-free-store .small-button{font-size:12px;line-height:1.5;letter-spacing:.35px;padding:8px 14px}
.quick-links .promo{min-height:240px}
.quick-links .promo-copy{min-width:0}
.section-heading>p,.ds-theme-showcase .section-heading>p{font-size:15px;line-height:1.75}
.ds-theme-card .ds-theme-card-copy p,.ds-theme-card p{font-size:14px;line-height:1.7;min-height:48px}
.ds-theme-card .ds-theme-visit{font-size:13px}
.service-card p,.benefits p,.approach-grid p,.detail-main p,.project-detail p,.process-grid p,.blog-card p,.solution-card>p,.solution-card ul,.contact-next p{font-size:15px;line-height:1.8}
.service-card p{min-height:0;flex:1}
.service-card h3{font-size:17px}
.benefits h3,.approach-grid h3{font-size:16px}
.outline-link,.side-contact .button,.solution-card .button,.project-detail .button,.inquiry-actions .button,.contact-form-wrap .button{font-size:13px;letter-spacing:.35px}
.brand-card .brand-card-label,.project-label{font-size:14px}
.brand-invite-kicker{font-size:11px;letter-spacing:1px}
.section-note,.experience-brand>p,.step-number,.approach-grid strong,.form-note,.contact-form-wrap .form-note{font-size:13px;line-height:1.75}
.contact-form-wrap input,.contact-form-wrap select,.contact-form-wrap textarea{font-size:16px;line-height:1.5}
.contact-form-wrap label,.inquiry-field label{font-size:14px}
.contact-form-wrap .submission-status,.submission-status,.inquiry-actions p{font-size:13px;line-height:1.75}
.footer-promo p{font-size:14px;line-height:1.7}
.footer-promo>div>span{font-size:12px}
.footer-grid h2{font-size:13px}
.footer-grid a:not(.brand),.footer-grid button,.footer-grid p{font-size:14px;line-height:1.9}
.copyright{font-size:12px;line-height:1.7}
.side-services a,.side-contact p,.faq-list details p,.project-facts,.project-facts>div{font-size:14px;line-height:1.8}
.faq-list summary{font-size:15px}
.scope-grid h3{font-size:14px}
.article-body p{font-size:16px}
.article-bottom{font-size:13px}
.contact-channel address,.company-address address{font-size:15px;line-height:1.85}
.company-strip dt,.phone-details .phone-caption,.inquiry-field label small{font-size:12px}
.company-strip dd,.company-registration dd,.phone-mobile-links a{font-size:14px}
/* Switch to the existing collapsible menu before the larger labels get tight. */
@media(max-width:1100px){
  .header .navigation{min-height:90px}
  .header .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;border:0;background:#f6f7fa;border-radius:6px;flex-shrink:0}
  .header .menu-toggle span{width:22px;height:2px;background:var(--navy);margin-inline:auto;transition:transform .2s}
  .header .menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .header .menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
  .header .menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .header .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:15px 24px 25px;box-shadow:0 12px 20px #19315516;align-items:stretch;gap:2px;font-size:15px}
  .header .nav-links.is-open{display:flex;flex-direction:column}
  .header .nav-links .nav-store-cta{max-width:none;margin-top:10px;font-size:12px}
}
@media(min-width:601px) and (max-width:900px){
  .quick-links .promo{padding:26px;gap:12px;align-items:flex-start;flex-wrap:wrap}
  .quick-links .promo-copy{flex-basis:100%}
  .quick-links .promo p{max-width:none}
  .quick-links .promo-illustration{margin-left:auto;width:100px;height:105px;flex-basis:100px}
}
@media(max-width:600px){
  .quick-links .promo{min-height:240px}
  .quick-links .promo p{font-size:14px}
  .quick-links .promo-illustration{width:84px;height:118px;flex-basis:84px}
  .promo-free-store p{font-size:14px}
  .ds-theme-card p{min-height:0}
  .footer-promos .footer-promo{min-height:205px}
}
@media(max-width:360px){
  .quick-links .promo{flex-wrap:wrap}
  .quick-links .promo-copy{flex-basis:100%}
  .quick-links .promo-illustration{margin-left:auto}
}
