/* Readability pass: preserve heading hierarchy, enlarge small copy and controls. */
body.ws-redesign-enabled {
  font-size: 16px;
}

body.ws-redesign-enabled .ws-site-header .ws-primary-nav > a,
body.ws-redesign-enabled .ws-site-header .ws-primary-nav summary,
body.ws-redesign-enabled .ws-site-header .ws-nav-dropdown a {
  font-size: 14px;
}

body.ws-redesign-enabled .ws-site-header .ws-language-switch a {
  font-size: 12px;
}

body.ws-redesign-enabled .ws-site-header .ws-menu-toggle-label,
body.ws-redesign-enabled .ws-button,
body.ws-redesign-enabled .ws-text-link,
body.ws-redesign-enabled .ws-map-link {
  font-size: 14px;
}

/* Home page: descriptions in the compact cards were only 10–13px. */
body.ws-redesign-home .ws-hero-copy {
  font-size: clamp(17px, 1.35vw, 20px);
  font-weight: 600;
}

body.ws-redesign-home .ws-course-card > p,
body.ws-redesign-home .ws-world-card p,
body.ws-redesign-home .ws-benefits-copy > p:not(.ws-kicker),
body.ws-redesign-home .ws-benefit-card p,
body.ws-redesign-home .ws-review-card > p,
body.ws-redesign-home .ws-career > div > span,
body.ws-redesign-home .ws-contact-main > p:not(.ws-kicker) {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}

body.ws-redesign-home .ws-benefit-card h3 {
  font-size: 18px;
  line-height: 1.3;
}

body.ws-redesign-home .ws-link-list a,
body.ws-redesign-home .ws-service-grid a {
  font-size: 15px;
  line-height: 1.4;
}

body.ws-redesign-home .ws-review-card cite,
body.ws-redesign-home .ws-course-meta small,
body.ws-redesign-home .ws-video-note p,
body.ws-redesign-home .ws-kicker,
body.ws-redesign-home .ws-pill {
  font-size: 14px;
}

body.ws-redesign-enabled .ws-contact-details small {
  color: rgba(255, 255, 255, 0.8);
  font-size: 13px;
}

body.ws-redesign-enabled .ws-contact-details :is(p, strong) {
  font-size: 16px;
}

body.ws-redesign-enabled .ws-site-footer .ws-footer-brand > p,
body.ws-redesign-enabled .ws-site-footer .ws-footer-links a {
  color: rgba(255, 255, 255, 0.82);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}

body.ws-redesign-enabled .ws-site-footer .ws-footer-links h3 {
  font-size: 15px;
}

body.ws-redesign-enabled .ws-site-footer .ws-footer-bottom {
  color: rgba(255, 255, 255, 0.75);
  font-size: 14px;
}

/* Course and price templates: readable card descriptions and actions. */
body.ws-redesign-course .ws-english-main :is(p, li),
body.ws-redesign-price .ws-price-main :is(p, li) {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}

body.ws-redesign-course .ws-ec-feature-card h3,
body.ws-redesign-course .ws-course-offer-card h3,
body.ws-redesign-price .ws-price-card-head h3 {
  font-size: 18px;
}

body.ws-redesign-course :is(.ws-ec-button, .ws-ec-text-link, .ws-ec-price-card a),
body.ws-redesign-price :is(.ws-price-card-button, .ws-price-language-nav a, .ws-price-trust-link) {
  font-size: 14px;
}

body.ws-redesign-price .ws-price-badge {
  font-size: 13px;
}

/* Corporate page had 10–12px text in steps, prices and table headings. */
body.ws-redesign-enabled .ws-corp p:not(.ws-corp-eyebrow),
body.ws-redesign-enabled .ws-corp li,
body.ws-redesign-enabled .ws-corp td {
  font-size: 16px !important;
  line-height: 1.6;
}

body.ws-redesign-enabled .ws-corp p:not(.ws-corp-eyebrow),
body.ws-redesign-enabled .ws-corp li {
  font-weight: 600 !important;
}

body.ws-redesign-enabled .ws-corp :is(.ws-corp-eyebrow, .ws-corp-caption, .ws-corp-hero-note, .ws-corp-photo-label span, .ws-corp-language span, .ws-corp-price-top, .ws-corp-period, .ws-corp-amount small, th) {
  font-size: 14px !important;
}

body.ws-redesign-enabled .ws-corp :is(.ws-corp-button, .ws-corp-text-link) {
  font-size: 14px !important;
}

/* Elementor-based pages and the clay-page redesign. */
body.ws-clay-page .ws-clay-panel :is(p, li, .elementor-widget-text-editor),
body.ws-clay-page :is(.ws-summer-card p, .ws-summer-fact span, .ws-summer-support-list span),
body.ws-redesign-enabled:not(.ws-redesign-home) .elementor-widget-text-editor :is(p, li),
body.ws-redesign-enabled:not(.ws-redesign-home) :is(.elementor-icon-box-description, .elementor-image-box-description) {
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.6;
}

body.ws-redesign-enabled:not(.ws-redesign-home) .elementor-element-07fbc89 :is(a, p, span, li) {
  color: rgba(255, 255, 255, 0.82) !important;
}

body.ws-redesign-enabled .ws-unified-contacts .ws-contact-item strong {
  font-size: 16px;
}

@media (min-width: 941px) and (max-width: 1180px) {
  body.ws-redesign-home .ws-benefits-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  body.ws-redesign-course .ws-ec-feature-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.ws-redesign-enabled .ws-site-header .ws-primary-nav {
    gap: 10px;
  }

  body.ws-redesign-enabled .ws-site-header .ws-primary-nav > a,
  body.ws-redesign-enabled .ws-site-header .ws-primary-nav summary {
    font-size: 13px;
  }
}

@media (min-width: 801px) and (max-width: 1100px) {
  body.ws-redesign-enabled .ws-corp .ws-corp-price-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  body.ws-redesign-enabled .ws-site-header .ws-primary-nav {
    grid-template-columns: 1fr;
  }

  body.ws-redesign-enabled .ws-site-header .ws-primary-nav > a,
  body.ws-redesign-enabled .ws-site-header .ws-primary-nav summary {
    font-size: 15px;
  }

  body.ws-redesign-enabled .ws-corp .ws-corp-price-grid {
    grid-template-columns: 1fr;
  }
}
