/* One Manrope hierarchy for the public DeltyWeb website, not ENQIVO siblings. */
body:has(> :is(.topbar, .case-nav)) > :is(.topbar, .case-nav, main, footer, .premium-nav-shell, .site-loader) {
  --font-display: "Manrope", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-family: var(--font-body);
}

/* Existing responsive sizes, colours and content remain owned by each section. */
body:has(> :is(.topbar, .case-nav)) > main h1 {
  font-family: var(--font-body);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -.045em;
}
body:has(> :is(.topbar, .case-nav)) > main h2,
body:has(> .topbar) > .premium-nav-shell h2 {
  font-family: var(--font-body);
  font-weight: 500;
  line-height: 1.06;
  letter-spacing: -.045em;
}
body:has(> :is(.topbar, .case-nav)) > main :is(h3, h4),
body:has(> .topbar) > main .portfolio-flow .showcase.dw-project-cover--compact h3 {
  font-family: var(--font-body);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -.025em;
}
body:has(> :is(.topbar, .case-nav)) > main :is(.eyebrow, .work-eyebrow) {
  font-weight: 600;
}

/* Controls stay firmer than editorial titles; native fields use the same family. */
body:has(> :is(.topbar, .case-nav)) > :is(.topbar, .case-nav, main, footer, .premium-nav-shell) :is(button, input, select, textarea, summary) {
  font-family: var(--font-body);
}
body:has(> :is(.topbar, .case-nav)) > :is(.topbar, .case-nav, main, footer, .premium-nav-shell) :is(button, .button, .nav-link, .nav-item > summary, .portal-nav-link, .footer-links a, .premium-nav-grid strong, .premium-nav-foot a, .case-back) {
  font-weight: 700;
}

/* Brand invariant: the DeltyWeb wordmark retains its original Space Grotesk face. */
body:has(> :is(.topbar, .case-nav)) > :is(.topbar, .case-nav, footer, .premium-nav-shell, .site-loader) :is(.brand, .premium-nav-brand strong, .site-loader-name) {
  font-family: "Space Grotesk", "Manrope", ui-sans-serif, system-ui, sans-serif;
}

/* Section supporting typography: standard label size and one quieter side-intro scale. */
body:has(> :is(.topbar, .case-nav)) > main .work-eyebrow {
  font-size: 13px;
  line-height: 1.55;
  letter-spacing: .11em;
}
body:has(> :is(.topbar, .case-nav)) > main .section-head > p:not(.eyebrow),
body:has(> :is(.topbar, .case-nav)) > main .section-head > div > p:not(.eyebrow),
body:has(> :is(.topbar, .case-nav)) > main .work-process-intro,
body:has(> :is(.topbar, .case-nav)) > main .technology-showcase-head > p,
body:has(> :is(.topbar, .case-nav)) > main .case-gallery-head > p {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: normal;
}
@media (max-width: 600px) {
  body:has(> :is(.topbar, .case-nav)) > main .section-head > p:not(.eyebrow),
  body:has(> :is(.topbar, .case-nav)) > main .section-head > div > p:not(.eyebrow),
  body:has(> :is(.topbar, .case-nav)) > main .work-process-intro,
  body:has(> :is(.topbar, .case-nav)) > main .technology-showcase-head > p,
  body:has(> :is(.topbar, .case-nav)) > main .case-gallery-head > p {
    font-size: 13px;
  }
}
