/* Thermo-Digital global design system override.
   Loaded after styles.css to keep every page and service visually consistent. */

:root {
  color-scheme: dark;
  --td-dark-900: #071c22;
  --td-dark-800: #0b2a30;
  --td-accent: #00d4c8;
  --td-light-bg: #f5f7fa;
  --td-dark-text: #111827;
  --td-light-text: #ffffff;
  --td-copy: rgba(238, 250, 253, 0.88);
  --td-muted: rgba(218, 238, 244, 0.76);
  --td-border: rgba(0, 212, 200, 0.22);
  --td-panel: rgba(7, 28, 34, 0.92);
  --td-panel-strong: rgba(5, 18, 29, 0.96);
  --td-radius: 8px;
  --td-shadow: 0 24px 70px rgba(0, 8, 14, 0.28);
  --td-width: min(1180px, calc(100% - clamp(28px, 6vw, 108px)));
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow-x: hidden;
  color: var(--td-light-text);
  background:
    radial-gradient(circle at 18% 8%, rgba(0, 212, 200, 0.14), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(28, 134, 126, 0.16), transparent 30%),
    linear-gradient(135deg, var(--td-dark-900), var(--td-dark-800)) !important;
  font-family: Inter, Manrope, "Segoe UI", Calibri, Arial, sans-serif;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background:
    repeating-linear-gradient(90deg, rgba(0, 212, 200, 0.035) 0 1px, transparent 1px 72px),
    repeating-linear-gradient(0deg, rgba(0, 212, 200, 0.026) 0 1px, transparent 1px 72px);
}

.site-header,
.site-header.is-scrolled,
body.section-page .site-header,
body.home-overview .site-header,
.article-body .site-header,
.article-body .site-header.is-scrolled {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
  width: 100%;
  color: var(--td-light-text) !important;
  background:
    linear-gradient(135deg, rgba(7, 28, 34, 0.98), rgba(11, 42, 48, 0.96)) !important;
  border-bottom: 1px solid var(--td-border);
  box-shadow: 0 18px 46px rgba(0, 7, 12, 0.34);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.site-header a,
.site-header button,
.site-header .brand-text,
.site-header .brand-text strong,
.site-header .brand-text small,
.site-header .nav-link,
.site-nav a {
  color: var(--td-light-text) !important;
  text-shadow: none !important;
}

.brand-mark,
.site-header.is-scrolled .brand-mark,
body.section-page .brand-mark {
  background: rgba(3, 14, 23, 0.9) !important;
  border: 1px solid rgba(0, 212, 200, 0.28) !important;
}

.landing-page,
.service-detail-page,
.article-page,
main {
  min-width: 0;
  color: var(--td-light-text);
  background: transparent !important;
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero) {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  color: var(--td-light-text);
  background:
    radial-gradient(circle at 78% 22%, rgba(0, 212, 200, 0.18), transparent 30%),
    linear-gradient(135deg, rgba(7, 28, 34, 0.99), rgba(11, 42, 48, 0.97)) !important;
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero)::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(2, 10, 17, 0.34), transparent 58%),
    linear-gradient(180deg, rgba(2, 10, 17, 0.22), rgba(2, 10, 17, 0.08));
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero) > * {
  position: relative;
  z-index: 1;
  min-width: 0;
}

:where(.landing-hero, .service-detail-hero, .article-hero, .page-hero) {
  padding-right: max(clamp(24px, 6vw, 96px), calc((100vw - 1320px) / 2), env(safe-area-inset-right, 0px)) !important;
  padding-left: max(clamp(24px, 6vw, 96px), calc((100vw - 1320px) / 2), env(safe-area-inset-left, 0px)) !important;
}

:where(h1, h2, h3, h4, .semantic-title, .hero-title, .section-title, .founder-name) {
  max-width: 100%;
  color: var(--td-light-text) !important;
  font-family: Inter, Manrope, "Segoe UI", Calibri, Arial, sans-serif;
  font-weight: 850;
  letter-spacing: 0;
  text-shadow: none !important;
  text-wrap: balance;
  overflow-wrap: break-word;
  word-break: normal;
  -webkit-hyphens: auto;
  hyphens: auto;
}

:where(.semantic-line) {
  display: block;
  max-width: 100% !important;
  min-width: 0;
}

:where(p, li, dd, figcaption, small, .hero-subtitle, .section-lead, .article-lead) {
  color: var(--td-copy) !important;
  line-height: 1.72;
}

:where(.eyebrow, .section-kicker, .badge, .chip, .tag, .service-tag) {
  color: var(--td-accent) !important;
}

:where(
  .section,
  .section-band,
  .landing-section,
  .light-section,
  .references-section,
  .technical-video-section,
  .ai-decision-video-section,
  .about-section,
  .contact-section,
  .platform-section,
  .technology-section,
  .service-overview-section,
  .industry-section,
  .insights-section
):not(.hero):not(.landing-hero):not(.article-hero):not(.service-detail-hero) {
  color: var(--td-light-text);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(0, 212, 200, 0.035)),
    rgba(7, 28, 34, 0.86) !important;
}

:where(
  .card,
  .service-card,
  .service-modern-card,
  .service-link-card,
  .case-card,
  .article-card,
  .feature-card,
  .industry-card,
  .technology-card,
  .platform-card,
  .contact-card,
  .legal-card,
  .about-card,
  .benefit-card,
  .metric-card,
  .project-card,
  .video-card,
  .about-video-card,
  .founder-card,
  .article-shell,
  .contact-panel,
  .form-card
) {
  min-width: 0;
  color: var(--td-light-text) !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    var(--td-panel-strong) !important;
  border: 1px solid var(--td-border) !important;
  border-radius: var(--td-radius) !important;
  box-shadow: var(--td-shadow);
}

:where(
  .card p,
  .service-card p,
  .service-modern-card p,
  .service-link-card p,
  .case-card p,
  .article-card p,
  .feature-card p,
  .industry-card p,
  .technology-card p,
  .platform-card p,
  .contact-card p,
  .legal-card p,
  .about-card p,
  .benefit-card p,
  .metric-card p,
  .project-card p
) {
  color: var(--td-copy) !important;
}

:where(a:not(.button):not(.brand):not(.social-profile-button)) {
  color: var(--td-accent) !important;
  text-underline-offset: 0.18em;
}

:where(.button, a.button, button.button, .cta-button, .hero-cta, .service-video-link) {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  color: var(--td-light-text);
  border: 1px solid rgba(0, 212, 200, 0.34) !important;
  border-radius: var(--td-radius) !important;
  font-weight: 800;
  line-height: 1.1;
  white-space: normal;
  touch-action: manipulation;
}

:where(.button.primary, a.button.primary, .hero-cta.primary, .cta-button.primary) {
  color: #03131c !important;
  background: linear-gradient(135deg, var(--td-accent), #38d39f) !important;
}

:where(.button.secondary, .button.ghost, a.button.secondary, a.button.ghost, .service-video-link) {
  color: var(--td-light-text) !important;
  background: rgba(255, 255, 255, 0.085) !important;
}

:where(input, textarea, select) {
  width: 100%;
  min-height: 44px;
  color: var(--td-light-text) !important;
  caret-color: var(--td-accent);
  background: rgba(3, 14, 23, 0.84) !important;
  border: 1px solid rgba(0, 212, 200, 0.32) !important;
  border-radius: var(--td-radius);
}

:where(input, textarea, select)::placeholder {
  color: rgba(238, 250, 253, 0.58) !important;
}

:where(label, legend, .form-label) {
  color: rgba(255, 255, 255, 0.92) !important;
}

:where(button, a, input, textarea, select):focus-visible {
  outline: 3px solid rgba(0, 212, 200, 0.78) !important;
  outline-offset: 3px;
}

:where(img, video, iframe, picture, svg, canvas) {
  max-width: 100%;
}

:where(.landing-visual, .service-detail-visual, .article-hero-visual, .video-frame, .youtube-frame, .media-frame, .image-frame) {
  overflow: hidden;
  border: 1px solid var(--td-border);
  border-radius: var(--td-radius);
  background: rgba(3, 14, 23, 0.74);
  box-shadow: var(--td-shadow);
}

.td-light-surface,
.light-surface {
  color: var(--td-dark-text) !important;
  background: var(--td-light-bg) !important;
}

.td-light-surface :where(h1, h2, h3, h4, p, li, dd),
.light-surface :where(h1, h2, h3, h4, p, li, dd) {
  color: var(--td-dark-text) !important;
}

@media (max-width: 720px) {
  :where(.landing-hero, .service-detail-hero, .article-hero, .page-hero) {
    padding-right: max(20px, env(safe-area-inset-right, 0px)) !important;
    padding-left: max(20px, env(safe-area-inset-left, 0px)) !important;
  }

  :where(h1, .semantic-title) {
    font-size: clamp(30px, 9vw, 42px);
    line-height: 1.12;
  }

  :where(h2, .section-heading h2, .landing-section-heading h2) {
    font-size: clamp(25px, 8vw, 36px);
    line-height: 1.14;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Full-width page background lock: prevents white gutters on article, contact and service pages. */
html,
body {
  width: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #071c22 !important;
  overflow-x: hidden !important;
}

body,
main,
.page-wrapper,
.layout-wrapper,
.contact-page,
.service-page,
.landing-page,
.service-detail-page,
.article-page,
.article-body,
.article-body .landing-page,
.article-body .article-page {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 100vh;
  margin-right: 0 !important;
  margin-left: 0 !important;
  background:
    radial-gradient(circle at 18% 8%, rgba(0, 212, 200, 0.14), transparent 28%),
    linear-gradient(135deg, #071c22 0%, #0b2a30 100%) !important;
}

body > main,
main.landing-page,
main.service-detail-page,
main.article-page {
  display: block;
  inline-size: 100%;
  min-block-size: 100vh;
}

.section-full-bg,
:where(.landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero, .service-cta-band) {
  width: 100vw !important;
  max-width: none !important;
  margin-right: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50vw) !important;
  background:
    radial-gradient(circle at 80% 24%, rgba(0, 212, 200, 0.16), transparent 30%),
    linear-gradient(135deg, #071c22 0%, #0b2a30 100%) !important;
}

.content-container,
.section-inner,
.article-shell,
.landing-page .article-shell,
.article-body .article-page .article-shell {
  width: min(1200px, calc(100% - clamp(28px, 6vw, 112px))) !important;
  max-width: 1200px;
  margin-right: auto !important;
  margin-left: auto !important;
}

:where(.landing-section, .section, .section-band, .article-shell, .contact-panel, .form-card, .contact-card, .service-card, .case-card, .article-card, .feature-card, .industry-card, .technology-card, .platform-card, .legal-card) {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.94) !important;
}

:where(.td-light-surface, .light-surface) {
  background: #f5f7fa !important;
  color: #111827 !important;
}

:where(.td-light-surface, .light-surface) :where(h1, h2, h3, h4, p, li, dd, label) {
  color: #111827 !important;
}

@media (max-width: 720px) {
  .content-container,
  .section-inner,
  .article-shell,
  .landing-page .article-shell,
  .article-body .article-page .article-shell {
    width: min(100% - 24px, 100%) !important;
  }

  .section-full-bg,
  :where(.landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero, .service-cta-band) {
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
  }
}

/* Form selection, tabs and article approach cards: readable states in every browser. */
:where(select) {
  color: #ffffff !important;
  background:
    linear-gradient(135deg, rgba(7, 28, 34, 0.98), rgba(11, 42, 48, 0.96)) !important;
  border: 1px solid rgba(0, 212, 200, 0.42) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 0 0 1px rgba(0, 212, 200, 0.06);
}

:where(select:hover) {
  border-color: rgba(0, 212, 200, 0.72) !important;
  background:
    linear-gradient(135deg, rgba(8, 38, 45, 0.98), rgba(13, 55, 62, 0.96)) !important;
}

:where(select:focus, select:focus-visible) {
  color: #ffffff !important;
  border-color: #00d4c8 !important;
  box-shadow:
    0 0 0 3px rgba(0, 212, 200, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

:where(select option, select optgroup) {
  color: #ffffff !important;
  background-color: #071c22 !important;
}

:where(select option:checked) {
  color: #111827 !important;
  background:
    linear-gradient(135deg, #00d4c8, #38d39f) !important;
  background-color: #00d4c8 !important;
  font-weight: 800;
}

:where(select option:hover, select option:focus) {
  color: #ffffff !important;
  background-color: #0b2a30 !important;
}

:where(
  [role="tab"],
  .tab,
  .tabs button,
  .tab-button,
  .filter-button,
  .option-button,
  .choice-button,
  .requirement-option,
  .request-option,
  .option-card,
  .choice-card
) {
  color: #ffffff !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.94) !important;
  border: 1px solid rgba(0, 212, 200, 0.28) !important;
  border-radius: 8px;
}

:where(
  [role="tab"][aria-selected="true"],
  [role="tab"].active,
  .tab.active,
  .tabs button.active,
  .tab-button.active,
  .filter-button.active,
  .option-button.active,
  .choice-button.active,
  .requirement-option.active,
  .request-option.active,
  .option-card.active,
  .choice-card.active
) {
  color: #111827 !important;
  background: linear-gradient(135deg, #00d4c8, #38d39f) !important;
  border-color: rgba(0, 212, 200, 0.92) !important;
  box-shadow: 0 16px 36px rgba(0, 212, 200, 0.18);
}

:where(
  [role="tab"]:hover,
  .tab:hover,
  .tabs button:hover,
  .tab-button:hover,
  .filter-button:hover,
  .option-button:hover,
  .choice-button:hover,
  .requirement-option:hover,
  .request-option:hover,
  .option-card:hover,
  .choice-card:hover
) {
  border-color: rgba(0, 212, 200, 0.7) !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.11), rgba(0, 212, 200, 0.055)),
    rgba(7, 28, 34, 0.96) !important;
}

:where(
  .dc-card-grid article,
  .dc-impact-grid article,
  .service-result-grid article,
  .article-steps li,
  .article-cta,
  .article-content,
  .approach-card,
  .method-card,
  .process-card,
  .workflow-card
) {
  color: #ffffff !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.94) !important;
  border: 1px solid rgba(0, 212, 200, 0.2) !important;
  border-radius: 8px;
}

:where(
  .dc-card-grid article *,
  .dc-impact-grid article *,
  .service-result-grid article *,
  .article-steps li *,
  .article-cta *,
  .article-content *,
  .approach-card *,
  .method-card *,
  .process-card *,
  .workflow-card *
) {
  color: inherit;
}

:where(
  .dc-card-grid article p,
  .dc-impact-grid article p,
  .service-result-grid article p,
  .article-steps li p,
  .article-content p,
  .article-content li,
  .approach-card p,
  .method-card p,
  .process-card p,
  .workflow-card p
) {
  color: rgba(234, 249, 253, 0.86) !important;
}

:where(.form-consent) {
  color: rgba(234, 249, 253, 0.9) !important;
}

:where(.form-consent input[type="checkbox"]) {
  width: 18px;
  min-width: 18px;
  height: 18px;
  min-height: 18px;
  accent-color: #00d4c8;
}

/* Final dark-theme hardening layer.
   This catches old light wrappers, utility classes and inline background styles
   that otherwise create white areas behind light typography on subpages. */
:where(
  html,
  body,
  main,
  .page,
  .page-wrapper,
  .layout-wrapper,
  .landing-page,
  .service-page,
  .service-detail-page,
  .article-page,
  .article-body,
  .contact-page,
  .legal-page,
  .insights-page
) {
  background:
    radial-gradient(circle at top left, rgba(0, 212, 200, 0.12), transparent 34rem),
    radial-gradient(circle at 85% 12%, rgba(56, 211, 159, 0.08), transparent 30rem),
    linear-gradient(135deg, #071c22 0%, #0b2a30 100%) !important;
  color: #ffffff !important;
}

:where(
  .bg-white,
  .bg-light,
  .light-section,
  .td-light-surface,
  .light-surface,
  .white-section,
  .article-light,
  .content-light,
  [style*="background: white"],
  [style*="background:white"],
  [style*="background: #fff"],
  [style*="background:#fff"],
  [style*="background-color: white"],
  [style*="background-color:white"],
  [style*="background-color: #fff"],
  [style*="background-color:#fff"],
  [style*="background: rgb(255"],
  [style*="background-color: rgb(255"]
) {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.96) !important;
  color: #ffffff !important;
  border-color: rgba(0, 212, 200, 0.22) !important;
}

:where(
  .bg-white,
  .bg-light,
  .light-section,
  .td-light-surface,
  .light-surface,
  .white-section,
  .article-light,
  .content-light,
  [style*="background: white"],
  [style*="background:white"],
  [style*="background: #fff"],
  [style*="background:#fff"],
  [style*="background-color: white"],
  [style*="background-color:white"],
  [style*="background-color: #fff"],
  [style*="background-color:#fff"],
  [style*="background: rgb(255"],
  [style*="background-color: rgb(255"]
) :where(h1, h2, h3, h4, h5, h6, strong, b, label, legend, dt, a) {
  color: #ffffff !important;
}

:where(
  .bg-white,
  .bg-light,
  .light-section,
  .td-light-surface,
  .light-surface,
  .white-section,
  .article-light,
  .content-light,
  [style*="background: white"],
  [style*="background:white"],
  [style*="background: #fff"],
  [style*="background:#fff"],
  [style*="background-color: white"],
  [style*="background-color:white"],
  [style*="background-color: #fff"],
  [style*="background-color:#fff"],
  [style*="background: rgb(255"],
  [style*="background-color: rgb(255"]
) :where(p, li, dd, span, small, figcaption) {
  color: rgba(234, 249, 253, 0.88) !important;
}

:where(
  .hero,
  .landing-hero,
  .service-detail-hero,
  .article-hero,
  .page-hero,
  .contact-hero,
  .cta-section,
  .service-cta-band,
  .video-insight,
  .why-section,
  .technology-section,
  .approach-section,
  .impact-section,
  .requirements-section,
  .contact-section
) {
  background:
    radial-gradient(circle at 82% 18%, rgba(0, 212, 200, 0.14), transparent 24rem),
    linear-gradient(135deg, #071c22 0%, #0b2a30 100%) !important;
  color: #ffffff !important;
}

:where(
  .card,
  .service-card,
  .feature-card,
  .industry-card,
  .technology-card,
  .platform-card,
  .benefit-card,
  .metric-card,
  .project-card,
  .case-card,
  .article-card,
  .blog-card,
  .cta-card,
  .hero-card,
  .about-card,
  .founder-card,
  .contact-card,
  .contact-panel,
  .form-card,
  .legal-card,
  .reference-card,
  .insight-card,
  .workflow-card,
  .process-card,
  .method-card,
  .approach-card,
  .requirement-card,
  .selection-card
) {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.94) !important;
  color: #ffffff !important;
  border: 1px solid rgba(0, 212, 200, 0.22) !important;
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.22);
}

:where(
  .card,
  .service-card,
  .feature-card,
  .industry-card,
  .technology-card,
  .platform-card,
  .benefit-card,
  .metric-card,
  .project-card,
  .case-card,
  .article-card,
  .blog-card,
  .cta-card,
  .hero-card,
  .about-card,
  .founder-card,
  .contact-card,
  .contact-panel,
  .form-card,
  .legal-card,
  .reference-card,
  .insight-card,
  .workflow-card,
  .process-card,
  .method-card,
  .approach-card,
  .requirement-card,
  .selection-card
) :where(h1, h2, h3, h4, h5, h6, strong, b, label, legend, dt) {
  color: #ffffff !important;
}

:where(
  .card,
  .service-card,
  .feature-card,
  .industry-card,
  .technology-card,
  .platform-card,
  .benefit-card,
  .metric-card,
  .project-card,
  .case-card,
  .article-card,
  .blog-card,
  .cta-card,
  .hero-card,
  .about-card,
  .founder-card,
  .contact-card,
  .contact-panel,
  .form-card,
  .legal-card,
  .reference-card,
  .insight-card,
  .workflow-card,
  .process-card,
  .method-card,
  .approach-card,
  .requirement-card,
  .selection-card
) :where(p, li, dd, span, small, figcaption) {
  color: rgba(234, 249, 253, 0.88) !important;
}

:where(input, textarea, select, .form-control, .form-input) {
  background: rgba(3, 16, 24, 0.96) !important;
  color: #ffffff !important;
  border-color: rgba(0, 212, 200, 0.36) !important;
}

:where(input, textarea, select, .form-control, .form-input):hover {
  border-color: rgba(0, 212, 200, 0.62) !important;
}

:where(input, textarea, select, .form-control, .form-input):focus,
:where(input, textarea, select, .form-control, .form-input):focus-visible {
  outline: 3px solid rgba(0, 212, 200, 0.24) !important;
  border-color: rgba(0, 212, 200, 0.9) !important;
}

:where(button, .button, .btn, .cta-button, .primary-button, .secondary-button):disabled,
:where(button, .button, .btn, .cta-button, .primary-button, .secondary-button)[aria-disabled="true"] {
  background: rgba(148, 163, 184, 0.2) !important;
  color: rgba(234, 249, 253, 0.58) !important;
  border-color: rgba(148, 163, 184, 0.26) !important;
  cursor: not-allowed;
}

@media (forced-colors: active) {
  :where(a, button, input, textarea, select, [role="button"], [role="tab"]) {
    forced-color-adjust: auto;
  }
}

/* Data-center and landing detail cards: force readable contrast over legacy light panels. */
:where(
  .dc-risk-section .dc-card-grid > article,
  .dc-card-grid > article,
  .landing-grid > article,
  .landing-page .landing-grid > article,
  .landing-page .dc-card-grid > article,
  .service-detail-page .landing-grid > article,
  .service-detail-page .dc-card-grid > article,
  .article-page .landing-grid > article,
  .article-page .dc-card-grid > article
) {
  background:
    linear-gradient(145deg, rgba(0, 212, 200, 0.14), rgba(255, 255, 255, 0.055)),
    linear-gradient(180deg, rgba(7, 28, 34, 0.98), rgba(5, 18, 29, 0.96)) !important;
  color: #ffffff !important;
  border: 1px solid rgba(0, 212, 200, 0.32) !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28) !important;
  backdrop-filter: blur(14px);
}

:where(
  .dc-risk-section .dc-card-grid > article,
  .dc-card-grid > article,
  .landing-grid > article
) :where(h2, h3, h4, strong, b) {
  color: #ffffff !important;
  text-shadow: none !important;
}

:where(
  .dc-risk-section .dc-card-grid > article,
  .dc-card-grid > article,
  .landing-grid > article
) :where(p, li, span, small) {
  color: rgba(234, 249, 253, 0.9) !important;
  text-shadow: none !important;
}

:where(
  .dc-risk-section .dc-card-grid > article:hover,
  .dc-card-grid > article:hover,
  .landing-grid > article:hover
) {
  border-color: rgba(0, 212, 200, 0.62) !important;
  background:
    linear-gradient(145deg, rgba(0, 212, 200, 0.18), rgba(255, 255, 255, 0.075)),
    linear-gradient(180deg, rgba(8, 38, 46, 0.98), rgba(5, 18, 29, 0.98)) !important;
}

/* Interactive contrast hardening: project focus, requirements, dropdowns, tabs,
   accordions, filters, modals and all revealed selection panels stay readable. */
:where(
  .mini-inquiry-form,
  .contact-form,
  .request-form,
  .project-form,
  .cookie-panel,
  .cookie-options,
  .modal,
  .modal-content,
  .popup,
  .popover,
  .tooltip,
  .dropdown-menu,
  .dropdown-panel,
  .nav-dropdown-panel,
  .accordion,
  .accordion-panel,
  .accordion-content,
  .tab-panel,
  .tabs-panel,
  .filter-panel,
  .selection-panel,
  .choice-panel,
  .requirement-panel,
  .requirements-panel,
  .project-focus-panel,
  .details-panel,
  .detail-panel,
  .info-box,
  .info-panel,
  [role="listbox"],
  [role="menu"],
  [role="dialog"],
  [role="tabpanel"],
  [aria-expanded="true"] + *,
  [data-project-focus],
  [data-requirement],
  [data-requirements],
  [data-panel],
  [data-detail],
  [data-expanded]
) {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.045)),
    rgba(5, 18, 29, 0.97) !important;
  color: #ffffff !important;
  border-color: rgba(0, 212, 200, 0.3) !important;
}

:where(
  .mini-inquiry-form,
  .contact-form,
  .request-form,
  .project-form,
  .cookie-panel,
  .cookie-options,
  .modal,
  .modal-content,
  .popup,
  .popover,
  .dropdown-menu,
  .dropdown-panel,
  .nav-dropdown-panel,
  .accordion-panel,
  .accordion-content,
  .tab-panel,
  .tabs-panel,
  .filter-panel,
  .selection-panel,
  .choice-panel,
  .requirement-panel,
  .requirements-panel,
  .project-focus-panel,
  .details-panel,
  .detail-panel,
  .info-box,
  .info-panel,
  [role="listbox"],
  [role="menu"],
  [role="dialog"],
  [role="tabpanel"],
  [aria-expanded="true"] + *,
  [data-project-focus],
  [data-requirement],
  [data-requirements],
  [data-panel],
  [data-detail],
  [data-expanded]
) :where(h1, h2, h3, h4, h5, h6, strong, b, label, legend, dt, a) {
  color: #ffffff !important;
}

:where(
  .mini-inquiry-form,
  .contact-form,
  .request-form,
  .project-form,
  .cookie-panel,
  .cookie-options,
  .modal,
  .modal-content,
  .popup,
  .popover,
  .dropdown-menu,
  .dropdown-panel,
  .nav-dropdown-panel,
  .accordion-panel,
  .accordion-content,
  .tab-panel,
  .tabs-panel,
  .filter-panel,
  .selection-panel,
  .choice-panel,
  .requirement-panel,
  .requirements-panel,
  .project-focus-panel,
  .details-panel,
  .detail-panel,
  .info-box,
  .info-panel,
  [role="listbox"],
  [role="menu"],
  [role="dialog"],
  [role="tabpanel"],
  [aria-expanded="true"] + *,
  [data-project-focus],
  [data-requirement],
  [data-requirements],
  [data-panel],
  [data-detail],
  [data-expanded]
) :where(p, li, dd, span, small, em, figcaption) {
  color: rgba(234, 249, 253, 0.9) !important;
}

:where(
  .mini-inquiry-form select,
  .contact-form select,
  .request-form select,
  .project-form select,
  select[name="project_focus"],
  select[name="request_type"]
) {
  color-scheme: dark;
  appearance: auto;
  background:
    linear-gradient(145deg, rgba(0, 212, 200, 0.08), rgba(255, 255, 255, 0.035)),
    #031018 !important;
  color: #ffffff !important;
  border: 1px solid rgba(0, 212, 200, 0.45) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

:where(
  .mini-inquiry-form select option,
  .contact-form select option,
  .request-form select option,
  .project-form select option,
  select[name="project_focus"] option,
  select[name="request_type"] option
) {
  background: #071c22 !important;
  color: #ffffff !important;
}

:where(
  .mini-inquiry-form select option:checked,
  .contact-form select option:checked,
  .request-form select option:checked,
  .project-form select option:checked,
  select[name="project_focus"] option:checked,
  select[name="request_type"] option:checked
) {
  background: linear-gradient(135deg, #00d4c8, #38d39f) !important;
  color: #071c22 !important;
  font-weight: 800;
}

:where(
  .mini-inquiry-form select option:hover,
  .mini-inquiry-form select option:focus,
  .contact-form select option:hover,
  .contact-form select option:focus,
  select[name="project_focus"] option:hover,
  select[name="project_focus"] option:focus,
  select[name="request_type"] option:hover,
  select[name="request_type"] option:focus
) {
  background: #0b2a30 !important;
  color: #ffffff !important;
}

:where(
  [role="option"],
  [role="menuitem"],
  [role="radio"],
  [role="checkbox"],
  .dropdown-item,
  .select-option,
  .filter-option,
  .project-focus-option,
  .requirement-option,
  .request-option,
  .checkbox-card,
  .radio-card,
  .cookie-option
) {
  background: rgba(3, 16, 24, 0.94) !important;
  color: #ffffff !important;
  border: 1px solid rgba(0, 212, 200, 0.28) !important;
}

:where(
  [role="option"][aria-selected="true"],
  [role="menuitem"][aria-current="true"],
  [role="radio"][aria-checked="true"],
  [role="checkbox"][aria-checked="true"],
  .dropdown-item.active,
  .dropdown-item[aria-selected="true"],
  .select-option.active,
  .filter-option.active,
  .project-focus-option.active,
  .requirement-option.active,
  .request-option.active,
  .checkbox-card.active,
  .radio-card.active,
  .cookie-option.is-required
) {
  background: linear-gradient(135deg, #00d4c8, #38d39f) !important;
  color: #071c22 !important;
  border-color: rgba(0, 212, 200, 0.86) !important;
}

:where(
  [role="option"]:hover,
  [role="menuitem"]:hover,
  [role="radio"]:hover,
  [role="checkbox"]:hover,
  .dropdown-item:hover,
  .select-option:hover,
  .filter-option:hover,
  .project-focus-option:hover,
  .requirement-option:hover,
  .request-option:hover,
  .checkbox-card:hover,
  .radio-card:hover,
  .cookie-option:hover
) {
  background: rgba(8, 38, 46, 0.98) !important;
  color: #ffffff !important;
  border-color: rgba(0, 212, 200, 0.62) !important;
}

:where(
  [role="option"]:focus-visible,
  [role="menuitem"]:focus-visible,
  [role="radio"]:focus-visible,
  [role="checkbox"]:focus-visible,
  .dropdown-item:focus-visible,
  .select-option:focus-visible,
  .filter-option:focus-visible,
  .project-focus-option:focus-visible,
  .requirement-option:focus-visible,
  .request-option:focus-visible,
  .checkbox-card:focus-within,
  .radio-card:focus-within,
  .cookie-option:focus-within
) {
  outline: 3px solid rgba(0, 212, 200, 0.32) !important;
  outline-offset: 3px;
}

:where(
  [disabled],
  [aria-disabled="true"],
  .is-disabled,
  .disabled
) {
  color: rgba(234, 249, 253, 0.52) !important;
  background: rgba(148, 163, 184, 0.14) !important;
  border-color: rgba(148, 163, 184, 0.22) !important;
}

/* Containment and inquiry polish: keep all text inside frames and align inquiry UI
   with the dark Thermo-Digital homepage style. */
*,
*::before,
*::after {
  box-sizing: border-box;
}

:where(
  .case-card,
  .case-card *,
  .case-body,
  .case-facts,
  .case-facts *,
  .case-outcome,
  .case-outcome *,
  .service-inquiry-box,
  .service-inquiry-box *,
  .mini-inquiry-form,
  .mini-inquiry-form *,
  .contact-form,
  .contact-form *,
  .form-card,
  .form-card *,
  .contact-panel,
  .contact-panel *,
  .card,
  .card *,
  .service-card,
  .service-card *,
  .project-card,
  .project-card *,
  .info-box,
  .info-box *
) {
  max-width: 100%;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
  -webkit-hyphens: auto;
  hyphens: auto;
}

:where(
  .case-card,
  .service-inquiry-box,
  .mini-inquiry-form,
  .contact-form,
  .form-card,
  .contact-panel
) {
  overflow: hidden;
}

:where(.case-grid) {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)) !important;
  align-items: stretch;
  gap: clamp(18px, 2.5vw, 32px) !important;
}

:where(.case-card) {
  display: grid !important;
  grid-template-columns: minmax(132px, 32%) minmax(0, 1fr) !important;
  min-height: auto !important;
  height: auto !important;
  padding: 0 !important;
  border-radius: 10px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.96) !important;
  border: 1px solid rgba(0, 212, 200, 0.28) !important;
}

:where(.case-visual) {
  width: 100%;
  min-width: 0;
  height: 100%;
  min-height: 220px;
  overflow: hidden;
}

:where(.case-visual img) {
  width: 100%;
  height: 100%;
  min-height: 220px;
  object-fit: cover;
}

:where(.case-body) {
  display: flex;
  flex-direction: column;
  gap: clamp(10px, 1.4vw, 16px);
  padding: clamp(18px, 2.2vw, 28px) !important;
  min-width: 0;
  width: 100%;
}

:where(.case-card h3) {
  font-size: clamp(1.15rem, 1.7vw, 1.55rem) !important;
  line-height: 1.16 !important;
  letter-spacing: 0 !important;
  margin: 0 !important;
  text-wrap: balance;
}

:where(.case-summary, .case-card p, .case-card dd, .case-card dt) {
  font-size: clamp(0.86rem, 0.95vw, 0.98rem) !important;
  line-height: 1.5 !important;
}

:where(.case-facts) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.2vw, 14px) !important;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
}

:where(.case-facts > div) {
  min-width: 0;
  width: 100%;
  padding: clamp(10px, 1.1vw, 14px) !important;
  border-radius: 8px;
  overflow: hidden;
  background: rgba(3, 16, 24, 0.72) !important;
  border: 1px solid rgba(0, 212, 200, 0.22) !important;
}

:where(.case-facts dt) {
  margin-bottom: 6px;
  color: #5ceee6 !important;
  font-size: clamp(0.68rem, 0.8vw, 0.76rem) !important;
  line-height: 1.25 !important;
  text-transform: uppercase;
}

:where(.case-facts dd) {
  color: rgba(234, 249, 253, 0.92) !important;
  margin: 0 !important;
}

:where(.case-outcome) {
  margin-top: auto;
  padding-top: clamp(10px, 1.1vw, 14px);
  border-top: 1px solid rgba(0, 212, 200, 0.18);
}

:where(.case-outcome strong) {
  display: block;
  font-size: clamp(0.78rem, 0.9vw, 0.9rem) !important;
  line-height: 1.42 !important;
  color: #ffffff !important;
}

:where(.service-inquiry-box) {
  background:
    radial-gradient(circle at top left, rgba(0, 212, 200, 0.14), transparent 22rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.97) !important;
  color: #ffffff !important;
  border: 1px solid rgba(0, 212, 200, 0.34) !important;
  border-radius: 10px !important;
  box-shadow: 0 24px 58px rgba(0, 0, 0, 0.28) !important;
  padding: clamp(22px, 3vw, 36px) !important;
}

:where(.service-inquiry-box h3) {
  color: #ffffff !important;
  font-size: clamp(1.45rem, 2.4vw, 2.35rem) !important;
  line-height: 1.13 !important;
  text-wrap: balance;
}

:where(.service-inquiry-box p, .service-inquiry-box label, .service-inquiry-box span) {
  color: rgba(234, 249, 253, 0.9) !important;
}

:where(.service-inquiry-box .eyebrow) {
  color: #5ceee6 !important;
}

:where(.mini-inquiry-form) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

:where(.mini-inquiry-form input, .mini-inquiry-form select, .contact-form input, .contact-form select, .contact-form textarea) {
  min-height: 46px;
  width: 100%;
  border-radius: 8px !important;
}

@media (max-width: 760px) {
  :where(.case-card) {
    grid-template-columns: 1fr !important;
  }

  :where(.case-visual, .case-visual img) {
    min-height: 190px;
    max-height: 260px;
  }

  :where(.case-facts) {
    grid-template-columns: 1fr !important;
  }
}

/* Full-viewport dark background lock.
   This final layer removes legacy light page shells and keeps every subpage
   visually connected to the Thermo-Digital homepage background. */
:root {
  background: #071c22 !important;
}

html,
body {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-x: clip !important;
  color: #ffffff !important;
  background:
    radial-gradient(circle at 14% 8%, rgba(0, 212, 200, 0.15), transparent 28rem),
    radial-gradient(circle at 86% 16%, rgba(42, 165, 150, 0.14), transparent 30rem),
    linear-gradient(135deg, #071c22 0%, #0b2a30 52%, #062326 100%) !important;
}

body::before,
body::after,
html::before,
html::after {
  background-color: transparent !important;
  box-shadow: none !important;
}

:where(
  body,
  .page,
  .page-shell,
  .page-wrapper,
  .layout-wrapper,
  .main-wrapper,
  .content-wrapper,
  .site-main,
  main,
  .landing-page,
  .service-page,
  .service-detail-page,
  .article-page,
  .article-body,
  .contact-page,
  .legal-page,
  .insights-page,
  body.home-overview,
  body.section-page
) {
  width: 100% !important;
  max-width: none !important;
  min-height: 100svh;
  margin: 0 !important;
  background:
    radial-gradient(circle at 18% 10%, rgba(0, 212, 200, 0.12), transparent 26rem),
    radial-gradient(circle at 88% 20%, rgba(24, 128, 118, 0.15), transparent 32rem),
    linear-gradient(135deg, #071c22 0%, #0b2a30 54%, #062326 100%) !important;
  color: #ffffff !important;
  overflow-x: hidden;
  overflow-x: clip;
}

:where(
  .site-header,
  header,
  .breadcrumb-bar,
  .breadcrumb-section,
  .page-breadcrumb,
  .article-breadcrumb,
  .breadcrumb-wrapper,
  .page-navigation,
  .page-nav,
  .landing-hero,
  .service-detail-hero,
  .article-hero,
  .page-hero,
  .contact-hero,
  .section-band,
  .landing-section,
  .service-section,
  .article-section,
  footer,
  .site-footer
) {
  background:
    radial-gradient(circle at 18% 0%, rgba(0, 212, 200, 0.1), transparent 24rem),
    linear-gradient(135deg, rgba(7, 28, 34, 0.99), rgba(11, 42, 48, 0.97)) !important;
  color: #ffffff !important;
}

:where(
  .container,
  .content-container,
  .section-inner,
  .landing-container,
  .article-container,
  .article-shell,
  .service-container,
  .breadcrumb-container,
  .breadcrumb-list
) {
  width: min(1200px, calc(100% - clamp(32px, 6vw, 96px))) !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

:where(
  [class*="bg-white"],
  [class*="bg-light"],
  [class*="bg-slate-50"],
  [class*="bg-gray-50"],
  [class*="background-light"],
  [class*="light-bg"],
  [style*="background: white"],
  [style*="background:white"],
  [style*="background: #fff"],
  [style*="background:#fff"],
  [style*="background: #ffffff"],
  [style*="background:#ffffff"],
  [style*="background-color: white"],
  [style*="background-color:white"],
  [style*="background-color: #fff"],
  [style*="background-color:#fff"],
  [style*="background-color: #ffffff"],
  [style*="background-color:#ffffff"],
  [style*="background: #f5f5f5"],
  [style*="background:#f5f5f5"],
  [style*="background: #f8fafc"],
  [style*="background:#f8fafc"]
) {
  background:
    radial-gradient(circle at top left, rgba(0, 212, 200, 0.11), transparent 20rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.07), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.96) !important;
  color: #ffffff !important;
  border-color: rgba(0, 212, 200, 0.24) !important;
}

:where(
  .breadcrumb-bar *,
  .breadcrumb-section *,
  .page-breadcrumb *,
  .article-breadcrumb *,
  .landing-hero *,
  .service-detail-hero *,
  .article-hero *,
  .page-hero *,
  .contact-hero *,
  .site-header *,
  .site-footer *
) {
  color: inherit;
}

@supports not (overflow: clip) {
  html,
  body,
  :where(.page, .page-wrapper, .layout-wrapper, main) {
    overflow-x: hidden !important;
  }
}

/* Premium about-section lock: keeps the company message and founder profile
   inside their frames across zoom levels and device widths. */
:where(.about-section) {
  padding-block: clamp(56px, 8vw, 112px) !important;
  background:
    radial-gradient(circle at 16% 18%, rgba(0, 212, 200, 0.13), transparent 28rem),
    radial-gradient(circle at 86% 10%, rgba(31, 150, 137, 0.12), transparent 30rem),
    linear-gradient(135deg, #071c22 0%, #0b2a30 54%, #062326 100%) !important;
}

:where(.about-section .about-layout) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr) !important;
  align-items: stretch !important;
  gap: clamp(28px, 4.8vw, 72px) !important;
  width: min(1200px, calc(100% - clamp(32px, 6vw, 96px))) !important;
  max-width: 1200px !important;
  margin-inline: auto !important;
}

:where(.about-section .about-main, .about-section .founder-card, .about-section .vision-card, .about-section .about-capabilities) {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  border: 1px solid rgba(0, 212, 200, 0.32) !important;
  border-radius: 10px !important;
  background:
    radial-gradient(circle at top left, rgba(0, 212, 200, 0.11), transparent 18rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(0, 212, 200, 0.03)),
    rgba(5, 18, 29, 0.94) !important;
  box-shadow: 0 24px 72px rgba(0, 8, 14, 0.28) !important;
}

:where(.about-section .about-main) {
  padding: clamp(28px, 4.4vw, 52px) !important;
}

:where(.about-section .about-main .eyebrow) {
  margin-bottom: clamp(14px, 1.8vw, 20px) !important;
  color: #5ceee6 !important;
}

:where(.about-section .about-main .semantic-title) {
  display: block !important;
  width: 100% !important;
  max-width: min(100%, 18ch) !important;
  margin: 0 0 clamp(24px, 3vw, 36px) !important;
  color: #ffffff !important;
  font-size: clamp(1.7rem, 3.2vw, 2.65rem) !important;
  line-height: 1.16 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .about-main .semantic-line) {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .about-main p) {
  max-width: 68ch !important;
  color: rgba(234, 249, 253, 0.9) !important;
  font-size: clamp(1rem, 1.05vw, 1.08rem) !important;
  line-height: 1.74 !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

:where(.about-section .founder-card) {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: clamp(18px, 2.2vw, 28px) !important;
  padding: clamp(24px, 3.2vw, 40px) !important;
}

:where(.about-section .founder-profile) {
  display: grid !important;
  grid-template-columns: clamp(128px, 14vw, 170px) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(20px, 3vw, 34px) !important;
}

:where(.about-section .founder-photo) {
  width: clamp(128px, 14vw, 170px) !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

:where(.about-section .founder-photo img) {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}

:where(.about-section .founder-heading) {
  min-width: 0 !important;
  text-align: center !important;
}

:where(.about-section .founder-name) {
  display: block !important;
  max-width: 100% !important;
  margin: 0 0 8px !important;
  color: #ffffff !important;
  font-size: clamp(1.25rem, 2.15vw, 1.72rem) !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .founder-heading .eyebrow) {
  margin: 0 0 16px !important;
  color: rgba(234, 249, 253, 0.88) !important;
  font-size: clamp(0.7rem, 0.85vw, 0.82rem) !important;
  line-height: 1.3 !important;
  white-space: nowrap !important;
}

:where(.about-section .founder-socials) {
  justify-content: center !important;
}

@media (max-width: 980px) {
  :where(.about-section .about-layout) {
    grid-template-columns: 1fr !important;
  }

  :where(.about-section .about-main .semantic-title) {
    max-width: min(100%, 20ch) !important;
    font-size: clamp(1.6rem, 5.2vw, 2.45rem) !important;
  }
}

@media (max-width: 620px) {
  :where(.about-section .about-layout) {
    width: min(100% - 24px, 100%) !important;
    gap: 22px !important;
  }

  :where(.about-section .about-main) {
    padding: clamp(22px, 6vw, 30px) !important;
  }

  :where(.about-section .about-main .semantic-title) {
    max-width: 100% !important;
    font-size: clamp(1.25rem, 5.5vw, 1.75rem) !important;
    line-height: 1.22 !important;
  }

  :where(.about-section .founder-profile) {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    text-align: center !important;
  }

  :where(.about-section .founder-name) {
    font-size: clamp(1.18rem, 5.4vw, 1.46rem) !important;
  }
}

@media (max-width: 390px) {
  :where(.about-section .about-main .semantic-title) {
    font-size: clamp(1.14rem, 5.2vw, 1.42rem) !important;
  }

  :where(.about-section .founder-heading .eyebrow) {
    white-space: normal !important;
  }
}

/* Founder profile language and alignment polish. */
:where(.about-section .founder-card) {
  max-width: 620px !important;
  margin-inline: auto !important;
  align-items: stretch !important;
}

:where(.about-section .founder-profile) {
  width: 100% !important;
  grid-template-columns: minmax(138px, 174px) minmax(260px, 1fr) !important;
  justify-content: center !important;
}

:where(.about-section .founder-heading) {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  text-align: center !important;
}

:where(.about-section .founder-name, .contact-panel .contact-name) {
  max-width: 100% !important;
  margin: 0 !important;
  color: #ffffff !important;
  font-size: clamp(1.32rem, 1.9vw, 1.7rem) !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .founder-heading .eyebrow, .contact-panel .contact-role) {
  max-width: 100% !important;
  margin: 0 !important;
  color: rgba(234, 249, 253, 0.88) !important;
  font-size: clamp(0.82rem, 1vw, 0.96rem) !important;
  font-weight: 800 !important;
  line-height: 1.32 !important;
  text-align: center !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .founder-socials) {
  margin-top: 6px !important;
}

:where(.about-section .founder-card > p) {
  width: 100% !important;
  max-width: 64ch !important;
  margin-inline: auto !important;
  color: rgba(234, 249, 253, 0.9) !important;
  font-size: clamp(0.98rem, 1.03vw, 1.06rem) !important;
  line-height: 1.72 !important;
  text-align: left !important;
  overflow-wrap: break-word !important;
}

@media (max-width: 700px) {
  :where(.about-section .founder-card) {
    padding: clamp(22px, 6vw, 34px) !important;
  }

  :where(.about-section .founder-profile) {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
  }

  :where(.about-section .founder-name, .contact-panel .contact-name) {
    font-size: clamp(1.2rem, 5.2vw, 1.55rem) !important;
  }

  :where(.about-section .founder-heading .eyebrow, .contact-panel .contact-role) {
    font-size: clamp(0.86rem, 3.4vw, 1rem) !important;
    white-space: normal !important;
    text-wrap: balance;
  }
}

@media (max-width: 380px) {
  :where(.about-section .founder-name, .contact-panel .contact-name) {
    font-size: clamp(1.02rem, 5vw, 1.26rem) !important;
  }
}

/* Robust profile card layout: prevents founder name overflow in both languages. */
:where(.about-section .founder-card) {
  width: 100% !important;
  max-width: min(900px, 100%) !important;
  margin: 0 auto !important;
  padding: clamp(24px, 4vw, 48px) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

:where(.about-section .founder-profile) {
  display: grid !important;
  width: 100% !important;
  max-width: 100% !important;
  grid-template-columns: minmax(128px, 160px) minmax(0, 1fr) !important;
  gap: clamp(20px, 4vw, 40px) !important;
  align-items: center !important;
  justify-content: stretch !important;
}

:where(.about-section .founder-heading) {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  align-items: center !important;
  text-align: center !important;
}

:where(.about-section .founder-name) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 10px 0 !important;
  font-size: clamp(1.35rem, 3vw, 2rem) !important;
  line-height: 1.15 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .founder-heading .eyebrow) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 18px 0 !important;
  font-size: clamp(0.95rem, 1.8vw, 1.15rem) !important;
  line-height: 1.35 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: auto !important;
}

:where(.about-section .founder-socials) {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 12px !important;
}

:where(.about-section .founder-card > p) {
  max-width: 100% !important;
  margin-top: clamp(20px, 3vw, 32px) !important;
  font-size: clamp(1rem, 1.5vw, 1.12rem) !important;
  line-height: 1.7 !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

@media (max-width: 768px) {
  :where(.about-section .founder-profile) {
    grid-template-columns: 1fr !important;
    text-align: center !important;
    justify-items: center !important;
  }

  :where(.about-section .founder-photo) {
    margin: 0 auto !important;
  }

  :where(.about-section .founder-name) {
    font-size: clamp(1.3rem, 6vw, 1.9rem) !important;
  }
}

/* About section proportional frames: both cards fit their text instead of stretching awkwardly. */
:where(.about-section .about-layout) {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: start !important;
  gap: clamp(26px, 4vw, 52px) !important;
}

:where(.about-section .about-main, .about-section .founder-card) {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  align-self: start !important;
}

:where(.about-section .about-main) {
  padding: clamp(30px, 4.2vw, 48px) !important;
}

:where(.about-section .founder-card) {
  justify-content: flex-start !important;
  padding: clamp(26px, 3.7vw, 42px) !important;
}

:where(.about-section .founder-profile) {
  grid-template-columns: clamp(132px, 13vw, 158px) minmax(0, 1fr) !important;
  gap: clamp(18px, 3vw, 32px) !important;
}

:where(.about-section .founder-heading) {
  align-items: flex-start !important;
  text-align: left !important;
}

:where(.about-section .founder-name) {
  text-align: left !important;
  font-size: clamp(1.22rem, 2.1vw, 1.72rem) !important;
  overflow-wrap: break-word !important;
}

:where(.about-section .founder-heading .eyebrow) {
  text-align: left !important;
  font-size: clamp(0.86rem, 1.25vw, 1.02rem) !important;
}

:where(.about-section .founder-socials) {
  justify-content: flex-start !important;
}

:where(.about-section .founder-card > p) {
  margin-top: clamp(14px, 2vw, 22px) !important;
}

@media (max-width: 1080px) {
  :where(.about-section .about-layout) {
    grid-template-columns: 1fr !important;
  }

  :where(.about-section .about-main, .about-section .founder-card) {
    max-width: 820px !important;
    margin-inline: auto !important;
  }
}

@media (max-width: 768px) {
  :where(.about-section .founder-heading) {
    align-items: center !important;
    text-align: center !important;
  }

  :where(.about-section .founder-name, .about-section .founder-heading .eyebrow) {
    text-align: center !important;
  }

  :where(.about-section .founder-socials) {
    justify-content: center !important;
  }
}

/* Global UX/UI quality layer: consistent premium layout, typography and component behavior. */
:where(html) {
  font-size: 16px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

:where(body) {
  min-width: 320px;
  font-family: Inter, Manrope, "Segoe UI", Calibri, Arial, sans-serif !important;
  font-size: clamp(1rem, 0.42vw + 0.9rem, 1.0625rem);
  line-height: 1.65;
}

:where(main, section, article, aside, header, footer, nav, div) {
  min-width: 0;
}

:where(.section-inner, .content-container, .landing-container, .service-container, .article-container, .article-shell, .contact-grid, .legal-grid) {
  width: min(1200px, calc(100% - clamp(28px, 6vw, 104px))) !important;
  max-width: 1200px !important;
  margin-inline: auto !important;
}

:where(.section, .section-band, .landing-section, .service-section, .article-section, .contact-section, .legal-section, .insights-section) {
  padding-block: clamp(56px, 7vw, 104px) !important;
}

:where(h1, h2, h3, h4, h5, h6, .semantic-title, .hero-title, .section-title) {
  max-width: 100%;
  margin-top: 0;
  color: #ffffff !important;
  font-family: Inter, Manrope, "Segoe UI", Calibri, Arial, sans-serif !important;
  font-weight: 850 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: auto;
}

:where(p, li, dd, figcaption, label, legend, small) {
  max-width: 72ch;
  color: rgba(234, 249, 253, 0.88) !important;
  line-height: 1.68;
  overflow-wrap: break-word;
  word-break: normal;
}

:where(.eyebrow, .section-kicker, .badge, .chip, .tag, .service-tag) {
  color: #5ceee6 !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
}

:where(.card, .service-card, .service-modern-card, .service-link-card, .case-card, .article-card, .feature-card, .industry-card, .technology-card, .platform-card, .contact-card, .legal-card, .about-card, .benefit-card, .metric-card, .project-card, .video-card, .about-video-card, .contact-panel, .form-card, .vision-card, .about-capabilities, .info-card, .cta-card) {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  border: 1px solid rgba(0, 212, 200, 0.26) !important;
  border-radius: 10px !important;
  background:
    radial-gradient(circle at top left, rgba(0, 212, 200, 0.11), transparent 18rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(0, 212, 200, 0.028)),
    rgba(5, 18, 29, 0.94) !important;
  box-shadow: 0 22px 58px rgba(0, 8, 14, 0.26) !important;
}

:where(.service-card, .service-modern-card, .service-link-card, .case-card, .article-card, .feature-card, .industry-card, .technology-card, .platform-card, .project-card, .benefit-card, .metric-card) {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

:where(.card *, .service-card *, .service-modern-card *, .service-link-card *, .case-card *, .article-card *, .feature-card *, .industry-card *, .technology-card *, .platform-card *, .contact-card *, .legal-card *, .about-card *, .benefit-card *, .metric-card *, .project-card *, .video-card *, .about-video-card *, .contact-panel *, .form-card *, .vision-card *, .about-capabilities *, .info-card *, .cta-card *) {
  min-width: 0;
}

:where(.button, a.button, button.button, .cta-button, .hero-cta, .service-video-link, .contact-link, .footer-request) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  max-width: 100% !important;
  padding: 0.78rem 1.15rem !important;
  border-radius: 8px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

:where(.button:hover, a.button:hover, button.button:hover, .cta-button:hover, .hero-cta:hover, .service-video-link:hover) {
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgba(0, 212, 200, 0.18) !important;
}

:where(input, textarea, select) {
  width: 100%;
  max-width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  color: #ffffff !important;
  background: rgba(3, 14, 23, 0.92) !important;
  border: 1px solid rgba(0, 212, 200, 0.32) !important;
  border-radius: 8px !important;
  font: inherit;
}

:where(input::placeholder, textarea::placeholder) {
  color: rgba(234, 249, 253, 0.58) !important;
}

:where(select option) {
  color: #ffffff !important;
  background: #071c22 !important;
}

:where(img, picture, video, iframe, canvas, svg) {
  max-width: 100% !important;
}

:where(img, video, iframe) {
  height: auto;
  border-radius: 8px;
}

:where(.service-card img, .article-card img, .case-card img, .project-card img, .hero-visual img, .landing-visual img) {
  width: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

:where(.site-header, .site-nav, .brand, .brand-text, .brand-mark) {
  min-width: 0;
}

:where(.site-nav a) {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  color: rgba(255, 255, 255, 0.92) !important;
  text-decoration: none;
}

:where(.site-nav a:hover, .site-nav a:focus-visible) {
  color: #5ceee6 !important;
}

@media (max-width: 768px) {
  :where(.section-inner, .content-container, .landing-container, .service-container, .article-container, .article-shell, .contact-grid, .legal-grid) {
    width: min(100% - 24px, 100%) !important;
  }

  :where(.section, .section-band, .landing-section, .service-section, .article-section, .contact-section, .legal-section, .insights-section) {
    padding-block: clamp(42px, 12vw, 72px) !important;
  }

  :where(h1, .hero-title) {
    font-size: clamp(2rem, 10vw, 3.25rem) !important;
    line-height: 1.08 !important;
  }

  :where(h2, .semantic-title, .section-title) {
    font-size: clamp(1.55rem, 7vw, 2.25rem) !important;
  }

  :where(.button, a.button, button.button, .cta-button, .hero-cta, .service-video-link) {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* Fachartikel: kompakte technische Karten und Systemfluss */
.article-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: clamp(14px, 2vw, 22px);
  margin: clamp(22px, 3vw, 34px) 0;
}

.article-mini-card {
  min-width: 0;
  padding: clamp(18px, 2.4vw, 26px);
  border: 1px solid rgba(103, 232, 249, 0.18);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(0, 212, 200, 0.035)),
    rgba(7, 28, 34, 0.92);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.22);
}

.article-mini-card h3 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: clamp(20px, 2vw, 26px);
  line-height: 1.2;
  text-wrap: balance;
}

.article-mini-card p,
.article-mini-card li {
  color: rgba(236, 250, 255, 0.86);
}

.article-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: stretch;
  margin: clamp(22px, 3vw, 34px) 0;
}

.article-flow span {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 72px;
  align-items: center;
  justify-content: center;
  padding: 14px 18px;
  border: 1px solid rgba(103, 232, 249, 0.22);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(0, 212, 200, 0.2), rgba(9, 31, 40, 0.95));
  color: #ffffff;
  font-weight: 800;
  text-align: center;
  line-height: 1.25;
}

.article-flow span:not(:last-child)::after {
  content: "→";
  position: absolute;
  right: -12px;
  z-index: 2;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #00d4c8;
  color: #062326;
  font-weight: 900;
  line-height: 22px;
  box-shadow: 0 10px 22px rgba(0, 212, 200, 0.26);
}

@media (max-width: 760px) {
  .article-flow {
    grid-template-columns: 1fr;
  }

  .article-flow span:not(:last-child)::after {
    right: auto;
    bottom: -12px;
    transform: rotate(90deg);
  }
}

/* Global premium readability and responsive quality layer */
:root {
  --td-page-bg: #071c22;
  --td-page-bg-2: #0b2a30;
  --td-card-bg: rgba(5, 18, 29, 0.94);
  --td-card-bg-soft: rgba(8, 37, 43, 0.9);
  --td-text-strong: #ffffff;
  --td-text-body: rgba(234, 249, 253, 0.9);
  --td-text-muted: rgba(218, 237, 244, 0.74);
  --td-accent: #00d4c8;
  --td-accent-soft: rgba(0, 212, 200, 0.18);
  --td-line-soft: rgba(103, 232, 249, 0.22);
}

html,
body {
  width: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(0, 212, 200, 0.13), transparent 34rem),
    linear-gradient(135deg, var(--td-page-bg) 0%, var(--td-page-bg-2) 52%, #06171d 100%) !important;
  color: var(--td-text-strong) !important;
  overflow-x: hidden !important;
}

body::before {
  background:
    linear-gradient(rgba(103, 232, 249, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103, 232, 249, 0.025) 1px, transparent 1px) !important;
  background-size: 48px 48px !important;
  opacity: 0.5 !important;
}

:where(main, .page, .page-wrapper, .layout-wrapper, .landing-page, .service-detail-page, .article-page, .contact-page) {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 100vh !important;
  background:
    radial-gradient(circle at 86% 10%, rgba(0, 212, 200, 0.1), transparent 30rem),
    linear-gradient(135deg, rgba(7, 28, 34, 0.98) 0%, rgba(11, 42, 48, 0.98) 52%, rgba(6, 23, 29, 0.98) 100%) !important;
}

:where(.site-header) {
  background: linear-gradient(90deg, rgba(3, 14, 23, 0.94), rgba(7, 28, 34, 0.9)) !important;
  border-bottom: 1px solid rgba(103, 232, 249, 0.14) !important;
  backdrop-filter: blur(18px);
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 82% 22%, rgba(0, 212, 200, 0.16), transparent 31rem),
    linear-gradient(135deg, rgba(3, 14, 23, 0.98), rgba(8, 45, 47, 0.96)) !important;
}

:where(.landing-hero-copy, .service-detail-hero-copy, .article-hero-copy, .contact-hero-copy, .hero-content, .about-main) {
  min-width: 0 !important;
  max-width: min(100%, 720px) !important;
}

:where(.hero-content, .hero-content *, .landing-hero-copy, .landing-hero-copy *, .service-detail-hero-copy, .service-detail-hero-copy *, .article-hero-copy, .article-hero-copy *) {
  text-align: left !important;
}

:where(.hero-content .hero-actions, .hero-content .hero-proof, .hero-content .hero-value-grid, .hero-content .hero-metrics) {
  justify-content: flex-start !important;
}

:where(h1, h2, h3, h4, .semantic-title, .hero-title, .section-title, .article-hero h1, .service-detail-hero h1, .landing-hero h1) {
  max-inline-size: min(100%, 18ch) !important;
  color: var(--td-text-strong) !important;
  font-family: Inter, Manrope, "Segoe UI", Calibri, Arial, sans-serif !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
  overflow-wrap: normal !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

:where(.semantic-line) {
  display: block !important;
  max-width: 100% !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

:where(p, li, dd, figcaption, label, legend, small, em) {
  color: var(--td-text-body) !important;
  line-height: 1.68 !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

:where(.section-heading, .landing-section-heading, .service-section-heading, .article-section-heading) {
  max-width: min(100%, 880px) !important;
}

:where(.section-heading p, .landing-section-heading p, .service-section-heading p, .article-section-heading p, .article-lead, .hero-copy, .section-subtitle) {
  max-width: 70ch !important;
  color: var(--td-text-body) !important;
}

:where(.section, .section-band, .landing-section, .service-section, .article-section, .contact-section, .legal-section, .insights-section) {
  background:
    radial-gradient(circle at top right, rgba(0, 212, 200, 0.08), transparent 28rem),
    linear-gradient(135deg, rgba(7, 28, 34, 0.98), rgba(10, 37, 44, 0.98)) !important;
}

:where(.section-inner, .content-container, .landing-container, .service-container, .article-container, .article-shell, .contact-grid, .legal-grid) {
  min-width: 0 !important;
  max-width: min(1200px, calc(100% - clamp(28px, 6vw, 112px))) !important;
  box-sizing: border-box !important;
}

:where(.card, .service-card, .service-modern-card, .service-link-card, .case-card, .article-card, .article-mini-card, .feature-card, .industry-card, .technology-card, .platform-card, .contact-card, .legal-card, .about-card, .benefit-card, .metric-card, .project-card, .video-card, .about-video-card, .contact-panel, .form-card, .vision-card, .about-capabilities, .info-card, .cta-card, .article-cta) {
  color: var(--td-text-strong) !important;
  background:
    radial-gradient(circle at top left, rgba(0, 212, 200, 0.12), transparent 17rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    var(--td-card-bg) !important;
  border: 1px solid var(--td-line-soft) !important;
  border-radius: 10px !important;
  box-shadow: 0 22px 58px rgba(0, 8, 14, 0.28) !important;
}

:where(.card h1, .card h2, .card h3, .service-card h3, .case-card h3, .article-card h3, .article-mini-card h3, .feature-card h3, .industry-card h3, .technology-card h3, .platform-card h3, .contact-card h3, .legal-card h3, .article-cta h2) {
  max-inline-size: 100% !important;
  color: var(--td-text-strong) !important;
}

:where(.card p, .card li, .service-card p, .case-card p, .article-card p, .article-mini-card p, .feature-card p, .industry-card p, .technology-card p, .platform-card p, .contact-card p, .legal-card p, .article-cta p) {
  color: var(--td-text-body) !important;
}

:where(.seo-landing-links) {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)) !important;
  gap: clamp(14px, 2vw, 20px) !important;
}

:where(.seo-landing-links a) {
  min-width: 0 !important;
  padding: clamp(18px, 2.2vw, 24px) !important;
  border: 1px solid var(--td-line-soft) !important;
  border-radius: 10px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.92) !important;
  color: var(--td-text-strong) !important;
  text-decoration: none !important;
}

:where(.seo-landing-links span) {
  color: #5ceee6 !important;
}

:where(.seo-landing-links strong) {
  display: block !important;
  color: #ffffff !important;
  line-height: 1.22 !important;
  overflow-wrap: break-word !important;
}

:where(.seo-landing-links em) {
  display: block !important;
  margin-top: 8px !important;
  color: var(--td-text-muted) !important;
  font-style: normal !important;
}

:where(input, textarea, select, option, .form-card, .contact-panel) {
  color-scheme: dark !important;
}

:where(input, textarea, select) {
  color: #ffffff !important;
  background: rgba(3, 14, 23, 0.94) !important;
  border-color: rgba(0, 212, 200, 0.32) !important;
}

:where(select option) {
  color: #ffffff !important;
  background: #071c22 !important;
}

:where([class*="bg-white"], [class*="bg-gray-50"], [class*="bg-slate-50"], [style*="background: white"], [style*="background:white"], [style*="background: #fff"], [style*="background:#fff"], [style*="background: #ffffff"], [style*="background:#ffffff"], [style*="background-color: white"], [style*="background-color:white"], [style*="background-color: #fff"], [style*="background-color:#fff"], [style*="background-color: #ffffff"], [style*="background-color:#ffffff"]) {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(0, 212, 200, 0.035)),
    rgba(5, 18, 29, 0.94) !important;
  color: var(--td-text-strong) !important;
}

.article-flow span:not(:last-child)::after {
  content: ">" !important;
}

@media (max-width: 980px) {
  :where(.landing-hero-copy, .service-detail-hero-copy, .article-hero-copy, .contact-hero-copy, .hero-content, .about-main) {
    max-width: 100% !important;
  }

  :where(h1, h2, .semantic-title, .hero-title, .section-title, .article-hero h1, .service-detail-hero h1, .landing-hero h1) {
    max-inline-size: min(100%, 22ch) !important;
  }
}

@media (max-width: 560px) {
  :where(.section-inner, .content-container, .landing-container, .service-container, .article-container, .article-shell, .contact-grid, .legal-grid) {
    max-width: calc(100% - 24px) !important;
  }

  :where(h1, .hero-title, .landing-hero h1, .article-hero h1, .service-detail-hero h1) {
    font-size: clamp(2rem, 10vw, 2.85rem) !important;
    max-inline-size: 100% !important;
  }

  :where(h2, .semantic-title, .section-title) {
    font-size: clamp(1.55rem, 7.4vw, 2.2rem) !important;
    max-inline-size: 100% !important;
  }

  :where(.button, a.button, button.button, .cta-button, .hero-cta, .service-video-link) {
    width: 100% !important;
  }
}

/* Services section: English/German layout clarity and clean image/content separation */
#leistungen .section-heading,
#leistungen .service-section-heading {
  display: grid !important;
  justify-items: start !important;
  align-items: start !important;
  max-width: min(100%, 920px) !important;
  margin-inline: 0 auto !important;
  text-align: left !important;
}

#leistungen .section-heading *,
#leistungen .service-section-heading * {
  text-align: left !important;
}

#leistungen .service-section-heading .semantic-title {
  max-inline-size: min(100%, 26ch) !important;
  margin-bottom: clamp(14px, 2vw, 22px) !important;
}

#leistungen .service-section-heading p:not(.eyebrow) {
  max-width: 74ch !important;
}

#leistungen .home-service-grid,
#leistungen .service-card-grid {
  align-items: stretch !important;
  gap: clamp(18px, 2.4vw, 28px) !important;
}

#leistungen .service-modern-card,
#leistungen .service-link-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  min-height: 100% !important;
  padding: 0 0 clamp(20px, 2.3vw, 28px) !important;
  overflow: hidden !important;
  text-align: left !important;
}

#leistungen .service-visual,
#leistungen .service-link-card .service-visual {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 0 clamp(16px, 2vw, 22px) !important;
  border-radius: 10px 10px 0 0 !important;
  background: rgba(3, 14, 23, 0.96) !important;
}

#leistungen .service-visual img,
#leistungen .service-visual picture,
#leistungen .service-visual source {
  display: block !important;
}

#leistungen .service-visual img {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  opacity: 0.72 !important;
  filter: saturate(0.96) contrast(1.06) brightness(0.78) !important;
}

#leistungen .service-visual::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(3, 14, 23, 0.08), rgba(3, 14, 23, 0.4)),
    linear-gradient(90deg, rgba(3, 14, 23, 0.28), transparent 54%) !important;
}

#leistungen .temperature-node,
#leistungen .pressure-pill {
  display: none !important;
}

#leistungen .service-link-card .service-icon,
#leistungen .service-icon {
  position: static !important;
  z-index: 3 !important;
  width: max-content !important;
  min-width: 46px !important;
  max-width: 100% !important;
  margin: 0 clamp(20px, 2.4vw, 28px) clamp(10px, 1.2vw, 14px) !important;
  align-self: flex-start !important;
  color: #062326 !important;
  background: linear-gradient(135deg, #72fff6, #00d4c8) !important;
  box-shadow: 0 12px 28px rgba(0, 212, 200, 0.18) !important;
}

#leistungen .service-link-card h3,
#leistungen .service-modern-card h3,
#leistungen .service-link-card p,
#leistungen .service-modern-card p,
#leistungen .service-link-card em,
#leistungen .service-modern-card em,
#leistungen .service-card-actions {
  margin-inline: clamp(20px, 2.4vw, 28px) !important;
  text-align: left !important;
}

#leistungen .service-link-card h3,
#leistungen .service-modern-card h3 {
  margin-top: 0 !important;
  max-inline-size: 100% !important;
  min-height: auto !important;
  color: #ffffff !important;
  font-size: clamp(1.16rem, 1.2vw, 1.42rem) !important;
  line-height: 1.18 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

#leistungen .service-link-card p,
#leistungen .service-modern-card p {
  flex: 1 1 auto !important;
  color: rgba(234, 249, 253, 0.86) !important;
  font-size: clamp(0.96rem, 0.34vw + 0.88rem, 1.04rem) !important;
  line-height: 1.62 !important;
}

#leistungen .service-link-card em,
#leistungen .service-modern-card em,
#leistungen .service-detail-link {
  color: #5ceee6 !important;
  font-style: normal !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

#leistungen .service-card-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: auto !important;
}

#leistungen .service-video-link {
  width: auto !important;
  min-height: 40px !important;
  padding: 0.62rem 0.9rem !important;
}

@media (max-width: 760px) {
  #leistungen .service-section-heading .semantic-title {
    max-inline-size: 100% !important;
  }

  #leistungen .service-card-actions {
    align-items: stretch !important;
  }

  #leistungen .service-video-link,
  #leistungen .service-detail-link {
    width: 100% !important;
  }
}

/* Global QA pass: readability, contrast, card integrity and responsive stability */
:root {
  --td-page-bg: #071c22;
  --td-page-bg-2: #0b2a30;
  --td-surface: rgba(8, 30, 38, 0.92);
  --td-surface-strong: rgba(7, 24, 31, 0.98);
  --td-border: rgba(94, 238, 230, 0.24);
  --td-text: #f7fcff;
  --td-muted: rgba(226, 244, 248, 0.82);
  --td-accent: #00d4c8;
  --td-accent-soft: #6ff8f1;
}

html,
body {
  background:
    radial-gradient(circle at 14% 8%, rgba(0, 212, 200, 0.12), transparent 34rem),
    linear-gradient(135deg, var(--td-page-bg) 0%, var(--td-page-bg-2) 58%, #06191f 100%) !important;
  color: var(--td-text) !important;
  overflow-x: hidden !important;
}

*,
*::before,
*::after {
  box-sizing: border-box !important;
}

:where(main, .page, .page-wrapper, .layout-wrapper, .landing-page, .service-detail-page, .article-page, .contact-page, .legal-page, .insights-page) {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 100svh !important;
  background:
    radial-gradient(circle at 82% 12%, rgba(0, 212, 200, 0.08), transparent 30rem),
    linear-gradient(135deg, var(--td-page-bg) 0%, var(--td-page-bg-2) 58%, #06191f 100%) !important;
  color: var(--td-text) !important;
  overflow-x: clip !important;
}

:where(.section, .section-band, .landing-section, .service-section, .article-section, .contact-section, .legal-section, .insights-section, .article-shell, .article-content, .service-detail-content) {
  background: transparent !important;
  color: var(--td-text) !important;
}

:where(.section-inner, .content-container, .landing-container, .service-container, .article-container, .contact-container, .legal-container) {
  width: min(100% - clamp(32px, 7vw, 112px), 1240px) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
  min-width: 0 !important;
}

:where(.site-header, .site-header.is-scrolled, .article-body .site-header, .nav-shell, .mobile-menu, .mega-menu, .dropdown-menu) {
  background: rgba(5, 20, 27, 0.92) !important;
  border-color: rgba(94, 238, 230, 0.18) !important;
  color: #ffffff !important;
  backdrop-filter: blur(18px) saturate(1.2) !important;
}

:where(.site-header a, .site-header button, .nav-link, .mobile-menu a, .mobile-menu button, .mega-menu a, .dropdown-menu a) {
  color: rgba(247, 252, 255, 0.94) !important;
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero) {
  display: grid !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  background:
    linear-gradient(110deg, rgba(4, 17, 25, 0.96), rgba(7, 38, 42, 0.94)),
    radial-gradient(circle at 78% 26%, rgba(0, 212, 200, 0.14), transparent 28rem) !important;
  color: #ffffff !important;
  overflow: hidden !important;
}

:where(.hero-content, .hero-copy, .landing-hero-copy, .service-detail-hero-copy, .article-hero-copy, .contact-hero-copy, .page-hero-copy, .about-main, .company-card, .profile-card) {
  min-width: 0 !important;
  max-width: min(100%, 850px) !important;
  overflow: hidden !important;
}

:where(h1, h2, h3, h4, .semantic-title, .hero-title, .section-title, .article-title, .card-title) {
  color: #ffffff !important;
  max-width: 100% !important;
  text-wrap: balance !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

:where(h1, .hero-title, .landing-hero h1, .service-detail-hero h1, .article-hero h1, .page-hero h1) {
  font-size: clamp(2.25rem, 5.1vw, 4.8rem) !important;
  line-height: 1.06 !important;
  letter-spacing: -0.025em !important;
  max-inline-size: min(100%, 15ch) !important;
}

:where(h2, .semantic-title, .section-title) {
  font-size: clamp(1.85rem, 3.4vw, 3.35rem) !important;
  line-height: 1.12 !important;
}

:where(p, li, dd, figcaption, label, input, textarea, select, option, small, .section-lead, .hero-subtitle, .article-lead, .card-copy) {
  overflow-wrap: break-word !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

:where(p, li, dd, figcaption, .section-lead, .hero-subtitle, .article-lead, .card-copy) {
  color: var(--td-muted) !important;
  line-height: 1.72 !important;
  max-width: 85ch !important;
}

:where(.card, .service-card, .service-modern-card, .service-link-card, .case-card, .article-card, .article-mini-card, .feature-card, .industry-card, .technology-card, .platform-card, .contact-card, .legal-card, .about-card, .benefit-card, .profile-card, .cta-card, .service-inquiry-box, .mini-inquiry-form, .form-card, .project-focus-card, .requirement-card) {
  background:
    linear-gradient(145deg, rgba(10, 35, 43, 0.96), rgba(8, 27, 35, 0.98)) !important;
  border: 1px solid var(--td-border) !important;
  color: var(--td-text) !important;
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.24) !important;
  overflow: hidden !important;
}

:where(.card *, .service-card *, .service-modern-card *, .service-link-card *, .case-card *, .article-card *, .article-mini-card *, .feature-card *, .industry-card *, .technology-card *, .platform-card *, .contact-card *, .legal-card *, .about-card *, .benefit-card *, .profile-card *, .cta-card *, .service-inquiry-box *, .mini-inquiry-form *, .form-card *) {
  max-width: 100% !important;
}

:where(.card h3, .service-card h3, .service-modern-card h3, .service-link-card h3, .case-card h3, .article-card h3, .article-mini-card h3, .feature-card h3, .industry-card h3, .technology-card h3, .platform-card h3, .contact-card h3, .legal-card h3) {
  color: #ffffff !important;
  line-height: 1.2 !important;
  max-inline-size: 100% !important;
}

:where(.card p, .card li, .service-card p, .service-modern-card p, .service-link-card p, .case-card p, .case-card li, .article-card p, .article-mini-card p, .feature-card p, .industry-card p, .technology-card p, .platform-card p, .contact-card p, .legal-card p, .about-card p, .benefit-card p) {
  color: rgba(232, 248, 252, 0.86) !important;
}

:where(.service-card-grid, .home-service-grid, .case-grid, .technology-grid, .technology-card-grid, .platform-grid, .article-card-grid, .industry-grid, .legal-grid, .benefit-grid, .reference-grid) {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
  gap: clamp(18px, 2.4vw, 30px) !important;
  align-items: stretch !important;
}

:where(.service-visual, .case-card-media, .article-card-media, .card-media, .media-frame, .image-frame) {
  position: relative !important;
  overflow: hidden !important;
  background: #06151d !important;
}

:where(.service-visual img, .case-card-media img, .article-card-media img, .card-media img, .image-frame img) {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

:where(.service-visual .temperature-node, .service-visual .pressure-pill, .service-visual .floating-label, .card-media .floating-label, .image-frame .floating-label) {
  display: none !important;
}

:where(a, .text-link, .service-detail-link, .article-link, .footer-link) {
  color: var(--td-accent-soft) !important;
  text-underline-offset: 0.18em !important;
}

:where(.button, a.button, button.button, .cta-button, .hero-cta, .service-video-link, .service-detail-link, .form-submit, button[type="submit"]) {
  min-height: 44px !important;
  color: #031318 !important;
  background: linear-gradient(135deg, #6ff8f1 0%, #00d4c8 54%, #43d48b 100%) !important;
  border: 1px solid rgba(111, 248, 241, 0.4) !important;
  box-shadow: 0 18px 36px rgba(0, 212, 200, 0.18) !important;
  font-weight: 800 !important;
}

:where(input, textarea, select) {
  width: 100% !important;
  min-height: 44px !important;
  background: rgba(3, 17, 24, 0.92) !important;
  color: #ffffff !important;
  border: 1px solid rgba(94, 238, 230, 0.34) !important;
  border-radius: 10px !important;
}

:where(input::placeholder, textarea::placeholder) {
  color: rgba(226, 244, 248, 0.62) !important;
}

select option {
  background: #071c22 !important;
  color: #ffffff !important;
}

:where(input:focus, textarea:focus, select:focus, button:focus-visible, a:focus-visible) {
  outline: 3px solid rgba(111, 248, 241, 0.5) !important;
  outline-offset: 3px !important;
}

:where(.tab, .tabs button, .segmented button, .filter-button, .choice-card, .requirement-option, .project-focus-option, [role="tab"], [aria-selected]) {
  color: rgba(247, 252, 255, 0.9) !important;
  background: rgba(5, 22, 30, 0.82) !important;
  border: 1px solid rgba(94, 238, 230, 0.28) !important;
}

:where(.tab.active, .tabs button.active, .segmented button.active, .filter-button.active, .choice-card.active, .requirement-option.active, .project-focus-option.active, [aria-selected="true"]) {
  color: #031318 !important;
  background: linear-gradient(135deg, #6ff8f1, #00d4c8) !important;
  border-color: rgba(111, 248, 241, 0.8) !important;
}

:where(.article-light, .light-section, [class*="bg-white"], [class*="bg-gray-50"], [class*="bg-slate-50"], [style*="background: white"], [style*="background:white"], [style*="background: #fff"], [style*="background:#fff"], [style*="background: #ffffff"], [style*="background:#ffffff"], [style*="background-color: white"], [style*="background-color:white"], [style*="background-color: #fff"], [style*="background-color:#fff"], [style*="background-color: #ffffff"], [style*="background-color:#ffffff"]) {
  background:
    linear-gradient(145deg, rgba(10, 35, 43, 0.96), rgba(8, 27, 35, 0.98)) !important;
  color: var(--td-text) !important;
}

@supports (overflow: clip) {
  :where(html, body, main, .page-wrapper, .layout-wrapper) {
    overflow-x: clip !important;
  }
}

@media (max-width: 1024px) {
  :where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero) {
    grid-template-columns: 1fr !important;
    gap: clamp(24px, 6vw, 44px) !important;
  }

  :where(h1, .hero-title, .landing-hero h1, .service-detail-hero h1, .article-hero h1, .page-hero h1) {
    max-inline-size: 100% !important;
    font-size: clamp(2.05rem, 8.4vw, 3.4rem) !important;
  }
}

@media (max-width: 640px) {
  :where(.section-inner, .content-container, .landing-container, .service-container, .article-container, .contact-container, .legal-container) {
    width: min(100% - 28px, 1240px) !important;
  }

  :where(.card, .service-card, .service-modern-card, .service-link-card, .case-card, .article-card, .article-mini-card, .feature-card, .industry-card, .technology-card, .platform-card, .contact-card, .legal-card, .about-card, .benefit-card, .profile-card, .cta-card) {
    padding-inline: clamp(18px, 5vw, 24px) !important;
  }

  :where(.button, a.button, button.button, .cta-button, .hero-cta, .service-video-link, .service-detail-link, .form-submit, button[type="submit"]) {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* Wide layout pass: use available screen width without sacrificing readable text lines */
:root {
  --td-wide-container: min(100% - clamp(28px, 4.6vw, 96px), 1520px);
  --td-content-container: min(100% - clamp(28px, 4.6vw, 96px), 1440px);
  --td-readable: 78ch;
  --td-readable-wide: 92ch;
}

:where(
  .container,
  .content-container,
  .section-inner,
  .landing-container,
  .service-container,
  .article-container,
  .article-shell,
  .contact-container,
  .contact-grid,
  .legal-container,
  .breadcrumb-container,
  .nav-container,
  .header-container,
  .site-header-inner,
  .hero-inner,
  .hero-shell
) {
  width: var(--td-wide-container) !important;
  max-width: 1520px !important;
  margin-inline: auto !important;
}

:where(.landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero, .hero) {
  padding-inline: var(--hero-container-pad) !important;
}

:where(.landing-hero > .section-inner, .service-detail-hero > .section-inner, .article-hero > .section-inner, .page-hero > .section-inner, .contact-hero > .section-inner, .hero > .section-inner) {
  width: var(--td-wide-container) !important;
  max-width: 1520px !important;
}

:where(.landing-hero-grid, .hero-grid, .service-detail-hero-grid, .article-hero-grid, .contact-hero-grid, .page-hero-grid) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr) !important;
  gap: clamp(42px, 5vw, 92px) !important;
  align-items: center !important;
}

:where(.hero__content, .hero-content, .hero-copy, .landing-hero-copy, .service-detail-hero-copy, .article-hero-copy, .contact-hero-copy, .page-hero-copy) {
  max-width: min(100%, 980px) !important;
}

:where(.about-main, .company-card, .profile-card) {
  max-width: min(100%, 1100px) !important;
}

:where(h1, .hero-title, .landing-hero h1, .service-detail-hero h1, .article-hero h1, .page-hero h1) {
  max-inline-size: min(100%, 20ch) !important;
}

:where(.section-heading, .landing-section-heading, .service-section-heading, .article-section-heading) {
  max-width: min(100%, 1080px) !important;
  margin-inline: 0 auto !important;
}

:where(.section-heading p, .landing-section-heading p, .service-section-heading p, .article-section-heading p, .section-lead, .hero-subtitle, .hero-copy p) {
  max-width: var(--td-readable-wide) !important;
}

:where(.article-shell, .service-detail-content) {
  max-width: min(100%, 1440px) !important;
}

:where(.article-content) {
  max-width: min(100%, 1280px) !important;
}

:where(.article-content > p, .article-content li, .service-detail-content > p, .service-detail-content li, .legal-card p, .legal-card li) {
  max-width: var(--td-readable) !important;
}

:where(.service-card-grid, .home-service-grid, .case-grid, .technology-grid, .technology-card-grid, .platform-grid, .article-card-grid, .industry-grid, .legal-grid, .benefit-grid, .reference-grid) {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)) !important;
  gap: clamp(22px, 2.2vw, 34px) !important;
}

#leistungen .home-service-grid,
#leistungen .service-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr)) !important;
}

:where(.contact-grid, .service-inquiry-grid, .inquiry-grid, .form-grid, .mini-inquiry-form .form-row) {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
  gap: clamp(16px, 1.8vw, 28px) !important;
}

:where(.form-card, .service-inquiry-box, .mini-inquiry-form, .contact-card) {
  width: 100% !important;
  max-width: none !important;
}

:where(.landing-visual, .service-detail-visual, .article-hero-visual, .hero-media, .media-frame, .video-frame, .youtube-frame) {
  width: 100% !important;
  max-width: min(100%, 720px) !important;
  justify-self: stretch !important;
}

@media (min-width: 1760px) {
  :root {
    --td-wide-container: min(100% - 128px, 1680px);
    --td-content-container: min(100% - 128px, 1560px);
  }

  :where(.container, .content-container, .section-inner, .landing-container, .service-container, .article-container, .article-shell, .contact-container, .contact-grid, .legal-container, .breadcrumb-container, .nav-container, .header-container, .site-header-inner, .hero-inner, .hero-shell),
  :where(.landing-hero > .section-inner, .service-detail-hero > .section-inner, .article-hero > .section-inner, .page-hero > .section-inner, .contact-hero > .section-inner, .hero > .section-inner) {
    max-width: 1680px !important;
  }
}

@media (max-width: 1180px) {
  :where(.landing-hero-grid, .hero-grid, .service-detail-hero-grid, .article-hero-grid, .contact-hero-grid, .page-hero-grid) {
    grid-template-columns: 1fr !important;
    gap: clamp(28px, 5vw, 52px) !important;
  }

  :where(.landing-visual, .service-detail-visual, .article-hero-visual, .hero-media, .media-frame, .video-frame, .youtube-frame) {
    max-width: 100% !important;
  }
}

@media (max-width: 700px) {
  :root {
    --td-wide-container: min(100% - 28px, 100%);
    --td-content-container: min(100% - 28px, 100%);
  }

  :where(.container, .content-container, .section-inner, .landing-container, .service-container, .article-container, .article-shell, .contact-container, .contact-grid, .legal-container, .breadcrumb-container, .nav-container, .header-container, .site-header-inner, .hero-inner, .hero-shell) {
    width: var(--td-wide-container) !important;
    max-width: 100% !important;
  }
}

/* Responsive containment refactor: prevent narrow clipping, side gutters and mobile overflow globally */
:root {
  --td-container-max: 1240px;
  --td-container-pad: clamp(16px, 5vw, 48px);
  --td-container: min(calc(100% - (var(--td-container-pad) * 2)), var(--td-container-max));
}

html,
body {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  overflow-x: clip !important;
}

:where(img, video, iframe, svg, canvas, picture) {
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
}

:where(
  .container,
  .content-container,
  .section-inner,
  .landing-container,
  .service-container,
  .article-container,
  .article-shell,
  .contact-container,
  .legal-container,
  .breadcrumb-container,
  .nav-container,
  .header-container,
  .site-header-inner,
  .hero-inner,
  .hero-shell,
  .content-wrapper
) {
  width: var(--td-container) !important;
  max-width: var(--td-container-max) !important;
  min-width: 0 !important;
  margin-inline: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

:where(
  main,
  section,
  article,
  aside,
  header,
  footer,
  nav,
  .page,
  .page-wrapper,
  .layout-wrapper,
  .landing-page,
  .service-detail-page,
  .article-page,
  .contact-page,
  .hero,
  .landing-hero,
  .service-detail-hero,
  .article-hero,
  .page-hero,
  .contact-hero,
  .card,
  .service-card,
  .case-card,
  .article-card,
  .contact-card,
  .founder-card,
  .profile-card,
  .hero-content,
  .about-content,
  .text-block
) {
  max-width: 100% !important;
  min-width: 0 !important;
}

:where(
  .hero-grid,
  .landing-hero-grid,
  .service-detail-hero-grid,
  .article-hero-grid,
  .contact-hero-grid,
  .page-hero-grid,
  .about-grid,
  .cards-grid,
  .service-grid,
  .service-card-grid,
  .home-service-grid,
  .reference-grid,
  .tech-grid,
  .technology-grid,
  .technology-card-grid,
  .case-grid,
  .article-card-grid,
  .industry-grid,
  .benefit-grid,
  .platform-grid,
  .legal-grid,
  .contact-grid,
  .form-grid,
  .service-inquiry-grid,
  .inquiry-grid
) {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
  gap: clamp(16px, 2vw, 28px) !important;
  min-width: 0 !important;
}

:where(
  .hero-grid > *,
  .landing-hero-grid > *,
  .service-detail-hero-grid > *,
  .article-hero-grid > *,
  .contact-hero-grid > *,
  .page-hero-grid > *,
  .about-grid > *,
  .cards-grid > *,
  .service-grid > *,
  .service-card-grid > *,
  .home-service-grid > *,
  .reference-grid > *,
  .tech-grid > *,
  .technology-grid > *,
  .technology-card-grid > *,
  .case-grid > *,
  .article-card-grid > *,
  .industry-grid > *,
  .benefit-grid > *,
  .platform-grid > *,
  .legal-grid > *,
  .contact-grid > *,
  .form-grid > *
) {
  min-width: 0 !important;
  max-width: 100% !important;
}

:where(h1, h2, h3, h4, p, li, a, button, label, input, textarea, select) {
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

:where(h1, h2, .hero-title, .semantic-title, .section-title) {
  max-width: min(100%, 20ch) !important;
}

:where(p, li, .section-lead, .hero-subtitle, .article-lead) {
  max-width: min(100%, 72ch) !important;
}

:where(.semantic-line) {
  display: block !important;
}

:where(.founder-card, .profile-card, .about-section .founder-card, .about-section .profile-card) {
  width: min(100%, 980px) !important;
  max-width: 980px !important;
  margin-inline: auto !important;
}

:where(.founder-name, .profile-name, .about-section .founder-name) {
  white-space: normal !important;
  text-align: center !important;
  max-width: 100% !important;
  font-size: clamp(1.35rem, 3.2vw, 2rem) !important;
  line-height: 1.15 !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
}

:where(.founder-heading .eyebrow, .profile-title, .about-section .founder-heading .eyebrow) {
  text-align: center !important;
  white-space: normal !important;
  max-width: 100% !important;
}

:where(.site-header, .site-header.is-scrolled) {
  width: 100% !important;
  max-width: 100% !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important;
}

:where(.mobile-menu, .search-panel, .cookie-modal, .cookie-banner, .modal, .overlay) {
  max-width: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 768px) {
  :root {
    --td-container-pad: 16px;
    --td-container: calc(100% - 32px);
  }

  :where(
    .container,
    .content-container,
    .section-inner,
    .landing-container,
    .service-container,
    .article-container,
    .article-shell,
    .contact-container,
    .legal-container,
    .breadcrumb-container,
    .nav-container,
    .header-container,
    .site-header-inner,
    .hero-inner,
    .hero-shell,
    .content-wrapper
  ) {
    width: var(--td-container) !important;
    max-width: 100% !important;
  }

  :where(
    .hero-grid,
    .landing-hero-grid,
    .service-detail-hero-grid,
    .article-hero-grid,
    .contact-hero-grid,
    .page-hero-grid,
    .about-grid,
    .cards-grid,
    .service-grid,
    .service-card-grid,
    .home-service-grid,
    .reference-grid,
    .tech-grid,
    .technology-grid,
    .technology-card-grid,
    .case-grid,
    .article-card-grid,
    .industry-grid,
    .benefit-grid,
    .platform-grid,
    .legal-grid,
    .contact-grid,
    .form-grid,
    .service-inquiry-grid,
    .inquiry-grid
  ) {
    grid-template-columns: 1fr !important;
  }

  :where(.desktop-nav, .site-nav) {
    display: none !important;
  }

  :where(.mobile-nav, .mobile-toggle, .menu-toggle) {
    display: flex !important;
  }

  :where(.mobile-menu) {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100svh !important;
    transform: none !important;
    z-index: 1000 !important;
    margin: 0 !important;
  }

  :where(h1, h2, .hero-title, .semantic-title, .section-title) {
    max-width: 100% !important;
  }
}

@media (max-width: 380px) {
  :root {
    --td-container-pad: 12px;
    --td-container: calc(100% - 24px);
  }
}

/* --------------------------------------------------------------------------
   Global Hero Design System
   Central authority for all hero variants across homepage, landing pages,
   service pages, article pages, contact and legal sections.
-------------------------------------------------------------------------- */
:root {
  --hero-container-max: 1200px;
  --hero-container-pad: clamp(20px, 4vw, 64px);
  --hero-padding-block: clamp(72px, 8vw, 120px);
  --hero-gap-eyebrow-title: clamp(16px, 1.7vw, 22px);
  --hero-gap-title-description: clamp(22px, 2.2vw, 30px);
  --hero-gap-description-actions: clamp(28px, 2.6vw, 36px);
  --hero-grid-gap: clamp(36px, 5vw, 72px);
  --hero-bg:
    radial-gradient(circle at 12% 18%, rgba(0, 212, 200, 0.16), transparent 34%),
    linear-gradient(135deg, #071c22 0%, #092a30 54%, #06332f 100%);
  --hero-border: rgba(103, 232, 249, 0.24);
  --hero-title-color: #ffffff;
  --hero-copy-color: rgba(245, 250, 252, 0.84);
  --hero-accent: #00d4c8;
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero) {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding-block: var(--hero-padding-block) !important;
  padding-inline: var(--hero-container-pad) !important;
  min-height: 0 !important;
  height: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, min(100%, 920px));
  justify-content: center;
  align-items: center;
  gap: var(--hero-grid-gap) !important;
  background: var(--hero-bg) !important;
  color: var(--hero-title-color) !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: clip;
  position: relative;
  isolation: isolate;
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero)::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(7, 28, 34, 0.94), rgba(7, 28, 34, 0.78) 58%, rgba(7, 28, 34, 0.92)),
    linear-gradient(rgba(103, 232, 249, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103, 232, 249, 0.045) 1px, transparent 1px);
  background-size: auto, 56px 56px, 56px 56px;
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero)::after,
:where(.hero-image, .hero-scrim) {
  display: none !important;
}

:where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero) > * {
  min-width: 0;
  position: relative;
  z-index: 1;
}

:where(.hero__content, .hero-content, .hero-copy, .landing-hero-copy, .service-detail-hero-copy, .article-hero-copy, .contact-hero-copy, .page-hero-copy) {
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
  align-self: center;
  justify-self: center;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  color: var(--hero-copy-color) !important;
}

:where(.hero__content, .hero__content *, .hero-content, .hero-content *, .hero-copy, .hero-copy *, .landing-hero-copy, .landing-hero-copy *, .service-detail-hero-copy, .service-detail-hero-copy *, .article-hero-copy, .article-hero-copy *, .contact-hero-copy, .contact-hero-copy *, .page-hero-copy, .page-hero-copy *) {
  text-align: center !important;
}

:where(.hero__content, .hero-content, .hero-copy, .landing-hero-copy, .service-detail-hero-copy, .article-hero-copy, .contact-hero-copy, .page-hero-copy) > :where(.eyebrow, .hero-eyebrow, span:first-child) {
  margin: 0 0 var(--hero-gap-eyebrow-title) !important;
}

:where(.hero .eyebrow, .landing-hero .eyebrow, .service-detail-hero .eyebrow, .article-hero .eyebrow, .page-hero .eyebrow, .contact-hero .eyebrow, .hero-eyebrow) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  max-width: 100%;
  color: var(--hero-accent) !important;
  font-size: clamp(0.75rem, 1vw, 0.875rem) !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase;
  text-wrap: balance;
}

:where(.hero h1, .landing-hero h1, .service-detail-hero h1, .article-hero h1, .page-hero h1, .contact-hero h1, .hero-title, .semantic-title) {
  width: 100%;
  max-width: 900px !important;
  margin: 0 !important;
  color: var(--hero-title-color) !important;
  font-family: var(--font-display, "Inter", "Manrope", system-ui, sans-serif) !important;
  font-size: clamp(2.25rem, 4.5vw, 4rem) !important;
  font-weight: 850 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

:where(.semantic-title .semantic-line) {
  display: inline !important;
}

:where(.semantic-title .semantic-line + .semantic-line)::before {
  content: " ";
}

:where(.hero h1 + p, .landing-hero h1 + p, .service-detail-hero h1 + p, .article-hero h1 + p, .page-hero h1 + p, .contact-hero h1 + p, .hero-subtitle, .hero-copy p, .landing-hero-copy > p:not(.eyebrow), .service-detail-hero-copy > p:not(.eyebrow), .article-hero-copy > p:not(.eyebrow), .contact-hero-copy > p:not(.eyebrow)) {
  max-width: 760px !important;
  margin: var(--hero-gap-title-description) auto 0 !important;
  color: var(--hero-copy-color) !important;
  font-size: clamp(1rem, 1.4vw, 1.2rem) !important;
  line-height: 1.6 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-wrap: pretty;
}

:where(.hero-actions, .landing-actions, .hero-content .button, .landing-hero-copy .button, .service-detail-hero-copy .button, .article-hero-copy .button) {
  margin-top: var(--hero-gap-description-actions) !important;
}

:where(.hero-actions, .landing-actions) {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(12px, 1.6vw, 16px) !important;
}

:where(.hero-actions .button, .landing-actions .button, .hero-cta) {
  min-height: 48px;
  padding: 0.85rem 1.25rem !important;
  border-radius: 10px !important;
  font-size: 0.95rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  white-space: normal;
}

:where(.hero__media, .landing-visual, .service-detail-visual, .article-hero-visual, .hero-media, .hero-video-card) {
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  justify-self: center;
  align-self: center;
  aspect-ratio: 16 / 10;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: rgba(4, 20, 26, 0.74) !important;
  border: 1px solid var(--hero-border) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34) !important;
}

:where(.hero__media img, .hero__media picture, .landing-visual img, .service-detail-visual img, .article-hero-visual img, .hero-media img, .landing-visual picture, .service-detail-visual picture) {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}

:where(.article-hero-visual figcaption, .landing-visual figcaption, .service-detail-visual figcaption) {
  color: rgba(245, 250, 252, 0.78) !important;
  background: rgba(3, 18, 24, 0.84) !important;
}

@media (max-width: 1024px) {
  :where(.hero, .landing-hero, .service-detail-hero, .article-hero, .page-hero, .contact-hero) {
    grid-template-columns: 1fr !important;
    gap: clamp(28px, 5vw, 48px) !important;
  }

  :where(.hero__content, .hero-content, .hero-copy, .landing-hero-copy, .service-detail-hero-copy, .article-hero-copy, .contact-hero-copy, .page-hero-copy) {
    justify-self: center;
    width: 100% !important;
    max-width: 900px !important;
  }

  :where(.hero__media, .landing-visual, .service-detail-visual, .article-hero-visual, .hero-media, .hero-video-card) {
    width: 100% !important;
    max-width: 720px !important;
    margin-inline: auto !important;
    justify-self: center;
  }
}

@media (max-width: 640px) {
  :root {
    --hero-container-pad: 22px;
    --hero-padding-block: clamp(56px, 14vw, 78px);
  }

  :where(.hero h1, .landing-hero h1, .service-detail-hero h1, .article-hero h1, .page-hero h1, .contact-hero h1, .hero-title, .semantic-title) {
    font-size: clamp(2rem, 10vw, 3rem) !important;
    line-height: 1.12 !important;
    max-width: 100% !important;
  }

  :where(.hero-actions, .landing-actions) {
    width: 100%;
  }

  :where(.hero-actions .button, .landing-actions .button, .hero-cta) {
    width: 100%;
    justify-content: center;
  }
}

/* --------------------------------------------------------------------------
   Contact / inquiry form final alignment
   Keeps submit text such as "Anfrage sicher senden" centered and prevents
   misplaced labels, consent text, status messages and controls.
-------------------------------------------------------------------------- */
:where(.contact-form, .mini-inquiry-form) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(14px, 1.8vw, 22px) !important;
  align-items: start !important;
}

:where(.contact-form .form-wide, .contact-form .form-consent, .contact-form .form-status, .contact-form button[type="submit"], .mini-inquiry-form .mini-form-wide, .mini-inquiry-form .form-status, .mini-inquiry-form button[type="submit"]) {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

:where(.contact-form label, .mini-inquiry-form label) {
  min-width: 0 !important;
  width: 100% !important;
  display: grid !important;
  gap: 8px !important;
  align-content: start !important;
  text-align: left !important;
}

:where(.contact-form label > span, .mini-inquiry-form label > span) {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: break-word !important;
  line-height: 1.35 !important;
}

:where(.contact-form input, .contact-form select, .contact-form textarea, .mini-inquiry-form input, .mini-inquiry-form select, .mini-inquiry-form textarea) {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

:where(.contact-form .form-consent, .mini-inquiry-form .form-consent, .mini-form-consent) {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 10px !important;
  text-align: left !important;
  overflow: visible !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

:where(.contact-form .form-consent input, .mini-inquiry-form .form-consent input, .mini-form-consent input) {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 2px 0 0 !important;
}

:where(.contact-form .form-consent label, .mini-inquiry-form .form-consent label, .mini-form-consent label) {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  color: rgba(234, 249, 253, 0.92) !important;
  font-size: clamp(0.88rem, 1vw, 0.98rem) !important;
  font-weight: 650 !important;
  line-height: 1.5 !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: auto !important;
}

:where(.contact-form .form-consent span, .mini-inquiry-form .form-consent span, .mini-form-consent span) {
  min-width: 0 !important;
  overflow-wrap: break-word !important;
  line-height: 1.5 !important;
}

:where(.contact-form .form-consent a, .mini-inquiry-form .form-consent a, .mini-form-consent a) {
  color: #62f2ea !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 0.18em !important;
}

:where(.contact-form .form-consent a:hover, .mini-inquiry-form .form-consent a:hover, .mini-form-consent a:hover) {
  color: #ffffff !important;
}

:where(.form-error) {
  grid-column: 2 / -1 !important;
  width: 100% !important;
  margin: 2px 0 0 !important;
  color: #ffd6d0 !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  overflow-wrap: break-word !important;
}

:where(.form-error[hidden]) {
  display: none !important;
}

/* About headline polish: keeps the company triad calm, readable and inside the card. */
:where(.about-section .about-main .semantic-title) {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 clamp(22px, 3vw, 34px) !important;
  color: #ffffff !important;
  font-family: var(--font-display, "Inter", "Manrope", system-ui, sans-serif) !important;
  font-size: clamp(1.85rem, 3vw, 2.65rem) !important;
  font-weight: 850 !important;
  line-height: 1.18 !important;
  letter-spacing: -0.012em !important;
  text-align: left !important;
  text-wrap: balance;
  overflow: visible !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .about-main .semantic-title .semantic-line) {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  text-wrap: balance;
  overflow: visible !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .about-main .semantic-title .semantic-line + .semantic-line)::before {
  content: "" !important;
}

@media (max-width: 760px) {
  :where(.about-section .about-main) {
    padding: clamp(22px, 6vw, 34px) !important;
  }

  :where(.about-section .about-main .semantic-title) {
    font-size: clamp(1.38rem, 6.3vw, 2.15rem) !important;
    line-height: 1.2 !important;
    letter-spacing: -0.006em !important;
  }
}

@media (max-width: 420px) {
  :where(.about-section .about-main .semantic-title) {
    font-size: clamp(1.22rem, 6vw, 1.55rem) !important;
    line-height: 1.24 !important;
  }
}

:where(.contact-form button[type="submit"], .mini-inquiry-form button[type="submit"], .button.form-wide, .button.mini-form-wide) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  place-content: center !important;
  text-align: center !important;
  min-height: 52px !important;
  padding: 0.95rem 1.25rem !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

:where(.form-status) {
  width: 100% !important;
  text-align: center !important;
  overflow-wrap: break-word !important;
}

@media (max-width: 760px) {
  :where(.contact-form, .mini-inquiry-form) {
    grid-template-columns: 1fr !important;
  }
}

/* Global card and profile containment system.
   Prevents clipped names, roles, contact data and card copy across all pages. */
:root {
  --card-padding: clamp(24px, 3vw, 40px);
  --card-gap: clamp(14px, 2vw, 24px);
  --card-radius: 12px;
  --card-border: 1px solid rgba(92, 238, 230, 0.26);
  --card-background:
    radial-gradient(circle at 12% 0%, rgba(0, 212, 200, 0.12), transparent 18rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(0, 212, 200, 0.028)),
    rgba(5, 18, 29, 0.94);
  --card-title-size: clamp(1.28rem, 2vw, 1.75rem);
  --card-text-size: clamp(0.95rem, 1.1vw, 1.05rem);
}

:where(
  .card,
  .service-card,
  .service-modern-card,
  .service-link-card,
  .case-card,
  .article-card,
  .feature-card,
  .industry-card,
  .technology-card,
  .platform-card,
  .legal-card,
  .about-card,
  .benefit-card,
  .metric-card,
  .project-card,
  .video-card,
  .about-video-card,
  .contact-panel,
  .form-card,
  .vision-card,
  .about-capabilities,
  .info-card,
  .cta-card,
  .founder-card,
  .profile-card
) {
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: var(--card-padding) !important;
  border: var(--card-border) !important;
  border-radius: var(--card-radius) !important;
  background: var(--card-background) !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

:where(
  .card *,
  .service-card *,
  .service-modern-card *,
  .service-link-card *,
  .case-card *,
  .article-card *,
  .feature-card *,
  .industry-card *,
  .technology-card *,
  .platform-card *,
  .legal-card *,
  .about-card *,
  .benefit-card *,
  .metric-card *,
  .project-card *,
  .video-card *,
  .about-video-card *,
  .contact-panel *,
  .form-card *,
  .vision-card *,
  .about-capabilities *,
  .info-card *,
  .cta-card *,
  .founder-card *,
  .profile-card *
) {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  hyphens: auto !important;
}

:where(.contact-panel, .about-section .founder-card, .profile-card) {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: var(--card-gap) !important;
  text-align: center !important;
}

:where(.about-section .founder-profile) {
  display: grid !important;
  grid-template-columns: clamp(132px, 13vw, 166px) minmax(0, 1fr) !important;
  gap: clamp(20px, 3vw, 36px) !important;
  align-items: center !important;
  width: 100% !important;
}

:where(.about-section .founder-heading) {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  text-align: center !important;
}

:where(.about-section .founder-name, .contact-panel .contact-name, .profile-card__name, .profile-name) {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: var(--card-title-size) !important;
  font-weight: 760 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: none !important;
}

:where(.about-section .founder-heading .eyebrow, .contact-panel .contact-role, .profile-card__role, .profile-title) {
  margin: 0 !important;
  color: rgba(234, 249, 253, 0.9) !important;
  font-size: clamp(0.94rem, 1.25vw, 1.08rem) !important;
  font-weight: 650 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-transform: none !important;
  white-space: normal !important;
  text-wrap: balance;
  overflow-wrap: anywhere !important;
}

:where(.about-section .founder-card > p, .contact-panel .contact-address, .contact-panel .contact-note, .profile-card__content) {
  width: 100% !important;
  margin: 0 !important;
  color: rgba(234, 249, 253, 0.9) !important;
  font-size: var(--card-text-size) !important;
  line-height: 1.65 !important;
  text-align: left !important;
  overflow-wrap: break-word !important;
}

:where(.contact-panel .contact-link, .profile-card__contact) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  justify-content: center !important;
  gap: 6px 10px !important;
  width: 100% !important;
  min-height: 44px !important;
  padding: 12px 16px !important;
  border: 1px solid rgba(92, 238, 230, 0.24) !important;
  border-radius: 10px !important;
  background: rgba(4, 22, 28, 0.72) !important;
  color: #ffffff !important;
  text-align: center !important;
  text-decoration: none !important;
}

:where(.contact-panel .contact-link span, .profile-card__contact span) {
  color: rgba(192, 247, 244, 0.82) !important;
  font-size: clamp(0.78rem, 0.9vw, 0.9rem) !important;
  font-weight: 760 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

:where(.contact-panel .contact-link strong, .profile-card__contact strong) {
  color: #ffffff !important;
  font-size: clamp(0.94rem, 1.2vw, 1.05rem) !important;
  font-weight: 780 !important;
  line-height: 1.35 !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 768px) {
  :where(.about-section .founder-profile) {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
  }

  :where(.about-section .founder-card, .contact-panel, .profile-card) {
    padding: clamp(22px, 6vw, 34px) !important;
  }

  :where(.about-section .founder-card > p, .contact-panel .contact-address, .contact-panel .contact-note, .profile-card__content) {
    text-align: left !important;
  }
}

/* --------------------------------------------------------------------------
   Form spacing and label flow system.
   Root cause fix: labels stay in normal document flow and every form group has
   stable vertical rhythm across desktop, tablet and mobile.
-------------------------------------------------------------------------- */
:root {
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 12px;
  --space-base: 16px;
  --space-lg: 24px;
  --space-xl: 32px;
  --space-2xl: 48px;
  --form-group-gap: var(--space-sm);
  --form-row-gap: var(--space-lg);
  --form-column-gap: var(--space-lg);
  --form-field-min-height: 52px;
  --form-field-padding-block: 12px;
  --form-field-padding-inline: 16px;
  --form-radius: 10px;
}

:where(.contact-form, .mini-inquiry-form, .request-form, .project-form, .form-card form) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: var(--form-column-gap) !important;
  row-gap: var(--form-row-gap) !important;
  align-items: start !important;
  align-content: start !important;
  overflow: visible !important;
}

:where(.contact-form label, .mini-inquiry-form label, .request-form label, .project-form label, .form-card form label) {
  position: static !important;
  inset: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: var(--form-group-gap) !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
  text-align: left !important;
  overflow: visible !important;
}

:where(.contact-form label > span, .mini-inquiry-form label > span, .request-form label > span, .project-form label > span, .form-card form label > span, .form-label, legend) {
  position: static !important;
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
  color: rgba(234, 249, 253, 0.92) !important;
  font-size: clamp(0.9rem, 1vw, 1rem) !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  letter-spacing: 0.01em !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: auto !important;
}

:where(.contact-form input, .contact-form select, .contact-form textarea, .mini-inquiry-form input, .mini-inquiry-form select, .mini-inquiry-form textarea, .request-form input, .request-form select, .request-form textarea, .project-form input, .project-form select, .project-form textarea, .form-card input, .form-card select, .form-card textarea) {
  position: static !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: var(--form-field-min-height) !important;
  height: auto !important;
  margin: 0 !important;
  padding: var(--form-field-padding-block) var(--form-field-padding-inline) !important;
  transform: none !important;
  translate: none !important;
  box-sizing: border-box !important;
  border-radius: var(--form-radius) !important;
  font: inherit !important;
  font-size: 1rem !important;
  line-height: 1.45 !important;
  overflow: visible !important;
}

:where(.contact-form textarea, .mini-inquiry-form textarea, .request-form textarea, .project-form textarea, .form-card textarea) {
  min-height: 120px !important;
  resize: vertical !important;
}

:where(.contact-form .form-wide, .contact-form .form-status, .contact-form button[type="submit"], .mini-inquiry-form .mini-form-wide, .mini-inquiry-form .form-status, .mini-inquiry-form button[type="submit"], .form-card .form-wide) {
  grid-column: 1 / -1 !important;
}

:where(.contact-form .form-consent, .mini-form-consent, .mini-inquiry-form .form-consent) {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  column-gap: var(--space-md) !important;
  row-gap: var(--space-sm) !important;
  align-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

:where(.contact-form .form-consent input[type="checkbox"], .mini-form-consent input[type="checkbox"], .mini-inquiry-form .form-consent input[type="checkbox"]) {
  grid-column: 1 !important;
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
}

:where(.contact-form .form-consent label, .mini-form-consent label, .mini-inquiry-form .form-consent label) {
  grid-column: 2 !important;
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(234, 249, 253, 0.94) !important;
  font-size: clamp(0.92rem, 1vw, 1rem) !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
  text-align: left !important;
  overflow-wrap: break-word !important;
  hyphens: auto !important;
}

:where(.contact-form .form-consent label span, .mini-form-consent label span, .mini-inquiry-form .form-consent label span) {
  display: inline !important;
  width: auto !important;
}

:where(.contact-form .form-consent a, .mini-form-consent a, .mini-inquiry-form .form-consent a) {
  display: inline !important;
  white-space: nowrap !important;
}

:where(.form-error) {
  grid-column: 2 / -1 !important;
  margin: 0 !important;
  line-height: 1.45 !important;
}

@media (max-width: 768px) {
  :where(.contact-form, .mini-inquiry-form, .request-form, .project-form, .form-card form) {
    grid-template-columns: 1fr !important;
    row-gap: var(--form-row-gap) !important;
  }
}

/* --------------------------------------------------------------------------
   Final form, select and request-card correction.
   This is intentionally the last form layer: labels stay in normal flow,
   select menus keep readable dark states, and inquiry surfaces cannot fall
   back to pale cards with pale text.
-------------------------------------------------------------------------- */
:where(form[data-contact-form], .contact-form, .mini-inquiry-form) {
  isolation: isolate !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

:where(form[data-contact-form]) :where(label:not(.cookie-option):not(.site-search-field)) {
  position: static !important;
  inset: auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
  color: rgba(239, 252, 255, 0.94) !important;
  text-align: left !important;
  overflow: visible !important;
}

:where(form[data-contact-form]) :where(label:not(.cookie-option):not(.site-search-field) > span, .form-label, legend) {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
  color: rgba(239, 252, 255, 0.96) !important;
  font-size: clamp(0.9rem, 0.9vw, 1rem) !important;
  font-weight: 760 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: auto !important;
}

:where(form[data-contact-form]) :where(input:not([type="checkbox"]):not([type="hidden"]):not(.form-honeypot), select, textarea) {
  appearance: auto !important;
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  transform: none !important;
  translate: none !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(92, 238, 230, 0.36) !important;
  border-radius: 10px !important;
  background: #061922 !important;
  color: #f7fcff !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
  font: inherit !important;
  font-size: 1rem !important;
  line-height: 1.45 !important;
  overflow: visible !important;
}

:where(form[data-contact-form]) :where(select) {
  color-scheme: dark !important;
  cursor: pointer !important;
}

:where(form[data-contact-form]) :where(option, optgroup) {
  background: #061922 !important;
  color: #f7fcff !important;
}

:where(form[data-contact-form]) :where(input:not([type="checkbox"]):not(.form-honeypot):focus, select:focus, textarea:focus) {
  border-color: #5ceee6 !important;
  background: #04141c !important;
  color: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(0, 212, 200, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
  outline: 0 !important;
}

:where(form[data-contact-form]) :where(input:not([type="checkbox"]):not(.form-honeypot):hover, select:hover, textarea:hover) {
  border-color: rgba(92, 238, 230, 0.58) !important;
}

:where(form[data-contact-form]) :where(textarea) {
  min-height: 128px !important;
  resize: vertical !important;
}

:where(form[data-contact-form] .form-honeypot, .contact-form .form-honeypot, .mini-inquiry-form .form-honeypot) {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  min-width: 1px !important;
  max-width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

:where(form[data-contact-form]) :where(.form-wide, .mini-form-wide, button[type="submit"], .form-status) {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

:where(form[data-contact-form]) :where(button[type="submit"]) {
  position: static !important;
  min-height: 54px !important;
  margin: 0 !important;
  transform: none !important;
  translate: none !important;
  color: #03131c !important;
  background: linear-gradient(135deg, #5ceee6, #38d39f) !important;
  border: 1px solid rgba(92, 238, 230, 0.55) !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

:where(.service-inquiry-box .mini-inquiry-form) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

:where(.service-inquiry-box .mini-inquiry-form > label) {
  grid-column: auto !important;
}

:where(.service-inquiry-box .mini-inquiry-form > .mini-form-wide, .service-inquiry-box .mini-inquiry-form > button, .service-inquiry-box .mini-inquiry-form > .form-status) {
  grid-column: 1 / -1 !important;
}

@media (max-width: 900px) {
  :where(.service-inquiry-box .mini-inquiry-form) {
    grid-template-columns: 1fr !important;
  }
}

:where(.service-inquiry-box, .contact-panel, .form-card, .request-card, .inquiry-card) {
  background:
    linear-gradient(145deg, rgba(7, 31, 35, 0.96), rgba(6, 54, 51, 0.9)) !important;
  color: #f7fcff !important;
  border-color: rgba(92, 238, 230, 0.28) !important;
}

:where(.service-inquiry-box *, .contact-panel *, .form-card *, .request-card *, .inquiry-card *) {
  color: inherit;
}

/* Cookie and checkbox repair: global input sizing must never turn checkboxes
   into full-width panels. */
:where(input[type="checkbox"], input[type="radio"]) {
  appearance: auto !important;
  display: inline-block !important;
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  max-height: 20px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  flex: 0 0 20px !important;
  border-radius: 5px !important;
  accent-color: #00d4c8 !important;
  transform: none !important;
  translate: none !important;
}

:where(.cookie-banner) {
  position: fixed !important;
  inset: auto clamp(14px, 2vw, 24px) clamp(14px, 2vw, 24px) !important;
  z-index: 1200 !important;
  display: flex !important;
  justify-content: center !important;
  pointer-events: none !important;
}

:where(.cookie-panel) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr) !important;
  gap: 18px !important;
  width: min(1080px, calc(100vw - 32px)) !important;
  max-width: calc(100vw - 32px) !important;
  min-width: 0 !important;
  max-height: min(82vh, 760px) !important;
  overflow: auto !important;
  padding: clamp(18px, 2vw, 26px) !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(92, 238, 230, 0.28) !important;
  border-radius: 14px !important;
  background:
    radial-gradient(circle at 86% 18%, rgba(0, 212, 200, 0.14), transparent 32%),
    linear-gradient(145deg, rgba(5, 20, 29, 0.98), rgba(6, 43, 45, 0.96)) !important;
  color: #f7fcff !important;
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.42) !important;
  pointer-events: auto !important;
}

:where(.cookie-options) {
  display: grid !important;
  gap: 12px !important;
  min-width: 0 !important;
}

:where(.cookie-option) {
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 14px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(92, 238, 230, 0.24) !important;
  border-radius: 12px !important;
  background: rgba(3, 16, 24, 0.92) !important;
  color: #f7fcff !important;
  overflow: visible !important;
}

:where(.cookie-option.is-required) {
  background: rgba(5, 38, 45, 0.96) !important;
  color: #f7fcff !important;
  opacity: 1 !important;
}

:where(.cookie-option span) {
  display: block !important;
  min-width: 0 !important;
  color: inherit !important;
}

:where(.cookie-option strong) {
  display: block !important;
  color: #ffffff !important;
  font-size: clamp(0.95rem, 1vw, 1rem) !important;
  line-height: 1.35 !important;
  overflow-wrap: break-word !important;
}

:where(.cookie-option em) {
  display: block !important;
  margin-top: 4px !important;
  color: rgba(234, 249, 253, 0.78) !important;
  font-style: normal !important;
  font-size: clamp(0.86rem, 0.95vw, 0.95rem) !important;
  line-height: 1.5 !important;
  overflow-wrap: break-word !important;
}

:where(.cookie-actions) {
  grid-column: 1 / -1 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 12px !important;
}

@media (max-width: 720px) {
  :where(.cookie-panel) {
    grid-template-columns: 1fr !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: 86vh !important;
  }

  :where(.cookie-actions) {
    justify-content: stretch !important;
  }

  :where(.cookie-actions .button) {
    flex: 1 1 100% !important;
    width: 100% !important;
  }
}

/* --------------------------------------------------------------------------
   Reference / case-card typography repair.
   Prevents narrow fact boxes from producing broken, unprofessional word
   stacks such as "Reak-tion" or "Betriebs-kennzahlen".
-------------------------------------------------------------------------- */
:where(.references-section .case-grid, .case-grid) {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)) !important;
  gap: clamp(22px, 3vw, 36px) !important;
  align-items: stretch !important;
}

:where(.references-section .case-card, .case-card) {
  display: grid !important;
  grid-template-columns: 1fr !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border-radius: 10px !important;
}

:where(.case-visual) {
  width: 100% !important;
  min-height: 240px !important;
  max-height: 280px !important;
  margin: 0 !important;
  overflow: hidden !important;
}

:where(.case-visual img) {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

:where(.case-body) {
  display: flex !important;
  flex-direction: column !important;
  gap: clamp(12px, 1.4vw, 18px) !important;
  min-width: 0 !important;
  padding: clamp(22px, 2.6vw, 32px) !important;
}

:where(.case-card h3) {
  max-width: 100% !important;
  margin: 0 !important;
  color: #ffffff !important;
  font-size: clamp(1.22rem, 1.55vw, 1.55rem) !important;
  font-weight: 780 !important;
  line-height: 1.18 !important;
  letter-spacing: -0.01em !important;
  text-wrap: balance !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

:where(.case-summary, .case-card p, .case-facts dd, .case-outcome strong) {
  color: rgba(234, 249, 253, 0.9) !important;
  font-size: clamp(0.96rem, 1.05vw, 1.05rem) !important;
  line-height: 1.58 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

:where(.case-facts) {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
}

:where(.case-facts > div) {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
  align-items: start !important;
  min-width: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(92, 238, 230, 0.2) !important;
  border-radius: 10px !important;
  background: rgba(3, 16, 24, 0.54) !important;
}

:where(.case-facts dt) {
  margin: 0 !important;
  color: #5ceee6 !important;
  font-size: clamp(0.72rem, 0.85vw, 0.82rem) !important;
  font-weight: 820 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

:where(.case-facts dd) {
  margin: 0 !important;
  min-width: 0 !important;
}

:where(.case-outcome) {
  margin-top: auto !important;
  padding-top: 14px !important;
  border-top: 1px solid rgba(92, 238, 230, 0.16) !important;
}

:where(.case-outcome span) {
  display: block !important;
  margin-bottom: 6px !important;
  color: #5ceee6 !important;
  font-size: clamp(0.72rem, 0.85vw, 0.82rem) !important;
  font-weight: 820 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

:where(.case-outcome strong) {
  display: block !important;
  color: #ffffff !important;
  font-size: clamp(0.92rem, 1vw, 1rem) !important;
  font-weight: 760 !important;
  line-height: 1.45 !important;
  text-transform: none !important;
}

@media (max-width: 920px) {
  :where(.references-section .case-card, .case-card) {
    grid-template-columns: 1fr !important;
  }

  :where(.case-visual) {
    min-height: 220px !important;
  }
}

@media (max-width: 560px) {
  :where(.case-body) {
    padding: 20px !important;
  }

  :where(.case-facts > div) {
    grid-template-columns: 1fr !important;
  }
}

/* --------------------------------------------------------------------------
   Mobile header and navigation authority.
   This final layer resolves older conflicting rules where the mobile JS opened
   .site-nav while later responsive overrides still kept it hidden.
-------------------------------------------------------------------------- */
:root {
  --td-mobile-header-height: 82px;
  --td-mobile-nav-z: 5000;
}

:where(.site-header) {
  z-index: var(--td-mobile-nav-z) !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

:where(.site-header .brand, .site-header .brand-text, .site-header .site-nav, .site-header .language-switch) {
  min-width: 0 !important;
}

:where(.nav-toggle) {
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: rgba(92, 238, 230, 0.22) !important;
}

@media (min-width: 1121px) {
  :where(.nav-toggle) {
    display: none !important;
  }

  :where(.site-nav:not(.is-static)) {
    display: flex !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }
}

@media (max-width: 1120px) {
  :where(.site-header) {
    min-height: var(--td-mobile-header-height) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto auto !important;
    align-items: center !important;
    gap: clamp(8px, 2.2vw, 14px) !important;
    padding:
      calc(env(safe-area-inset-top, 0px) + 10px)
      max(14px, env(safe-area-inset-right, 0px))
      10px
      max(14px, env(safe-area-inset-left, 0px)) !important;
    color: #ffffff !important;
    background:
      linear-gradient(135deg, rgba(3, 17, 24, 0.98), rgba(7, 42, 47, 0.96)) !important;
    border-bottom: 1px solid rgba(92, 238, 230, 0.18) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.2) !important;
    backdrop-filter: blur(18px) saturate(1.2) !important;
  }

  :where(.site-header .brand) {
    width: auto !important;
    max-width: 100% !important;
    gap: clamp(8px, 2vw, 12px) !important;
  }

  :where(.site-header .brand-mark) {
    width: clamp(132px, 32vw, 210px) !important;
    max-width: 42vw !important;
    min-width: 0 !important;
    flex: 0 1 auto !important;
  }

  :where(.site-header .brand-text) {
    display: none !important;
  }

  :where(.site-search-button, .language-switch, .nav-toggle) {
    position: relative !important;
    z-index: calc(var(--td-mobile-nav-z) + 2) !important;
    flex: 0 0 auto !important;
  }

  :where(.site-search-button) {
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    justify-content: center !important;
    padding: 0 !important;
    border-radius: 999px !important;
  }

  :where(.site-search-button strong) {
    display: none !important;
  }

  :where(.language-switch) {
    display: inline-flex !important;
    margin: 0 !important;
    gap: 4px !important;
    padding: 4px !important;
    border: 1px solid rgba(92, 238, 230, 0.24) !important;
    border-radius: 999px !important;
    background: rgba(3, 16, 24, 0.55) !important;
  }

  :where(.language-switch button) {
    min-width: 38px !important;
    min-height: 38px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
  }

  :where(.nav-toggle) {
    display: inline-flex !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(238, 252, 255, 0.82) !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    background: rgba(3, 16, 24, 0.42) !important;
  }

  :where(.site-nav:not(.is-static)) {
    position: fixed !important;
    inset:
      calc(var(--td-mobile-header-height) + env(safe-area-inset-top, 0px) + 10px)
      max(14px, env(safe-area-inset-right, 0px))
      auto
      max(14px, env(safe-area-inset-left, 0px)) !important;
    z-index: calc(var(--td-mobile-nav-z) + 1) !important;
    display: none !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100svh - var(--td-mobile-header-height) - 30px) !important;
    max-height: calc(100dvh - var(--td-mobile-header-height) - 30px) !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 14px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    border: 1px solid rgba(92, 238, 230, 0.28) !important;
    border-radius: 18px !important;
    color: #ffffff !important;
    background:
      radial-gradient(circle at 10% 0%, rgba(92, 238, 230, 0.18), transparent 34%),
      linear-gradient(145deg, rgba(3, 18, 27, 0.98), rgba(7, 50, 49, 0.98)) !important;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.44) !important;
    -webkit-backdrop-filter: blur(20px) saturate(1.18) !important;
    backdrop-filter: blur(20px) saturate(1.18) !important;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    isolation: isolate !important;
  }

  :where(.site-nav:not(.is-static).is-open) {
    display: grid !important;
  }

  :where(.site-nav:not(.is-static) a, .site-nav:not(.is-static) button, .nav-dropdown > a) {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 13px 14px !important;
    border: 1px solid rgba(92, 238, 230, 0.12) !important;
    border-radius: 12px !important;
    color: #f5feff !important;
    background: rgba(255, 255, 255, 0.055) !important;
    font-size: clamp(0.95rem, 2.8vw, 1.04rem) !important;
    font-weight: 760 !important;
    line-height: 1.28 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    -webkit-hyphens: none !important;
    hyphens: none !important;
    text-decoration: none !important;
    touch-action: manipulation !important;
  }

  :where(.site-nav:not(.is-static) a:hover, .site-nav:not(.is-static) a:focus-visible, .site-nav:not(.is-static) a.is-active) {
    color: #061a1f !important;
    background: linear-gradient(135deg, #5ceee6, #39d7b2) !important;
    border-color: rgba(92, 238, 230, 0.72) !important;
    outline: none !important;
  }

  :where(.nav-dropdown) {
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    gap: 8px !important;
  }

  :where(.nav-dropdown-panel) {
    position: static !important;
    inset: auto !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    max-height: min(54svh, 460px) !important;
    margin: 0 !important;
    padding: 8px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    border: 1px solid rgba(92, 238, 230, 0.16) !important;
    border-radius: 14px !important;
    background: rgba(3, 16, 24, 0.64) !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  :where(.nav-dropdown.is-expanded .nav-dropdown-panel) {
    display: grid !important;
    gap: 8px !important;
  }

  :where(body.nav-open) {
    overflow: hidden !important;
    touch-action: none !important;
  }
}

@media (max-width: 640px) {
  :root {
    --td-mobile-header-height: 76px;
  }

  :where(.site-header) {
    grid-template-columns: minmax(0, 1fr) auto auto auto !important;
    gap: 7px !important;
    padding-inline: 10px !important;
  }

  :where(.site-header .brand-mark) {
    width: clamp(118px, 34vw, 168px) !important;
    max-width: 38vw !important;
  }

  :where(.site-search-button, .nav-toggle) {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    border-radius: 11px !important;
  }

  :where(.language-switch button) {
    min-width: 34px !important;
    min-height: 34px !important;
    padding-inline: 7px !important;
    font-size: 0.72rem !important;
  }
}

@media (max-width: 390px) {
  :where(.site-header .brand-mark) {
    width: clamp(104px, 31vw, 132px) !important;
    max-width: 34vw !important;
  }

  :where(.language-switch) {
    padding: 3px !important;
  }

  :where(.language-switch button) {
    min-width: 31px !important;
    min-height: 31px !important;
    padding-inline: 5px !important;
  }

  :where(.site-search-button, .nav-toggle) {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
  }
}

/* Static subpages do not include the homepage hamburger script. Keep their
   header links usable on touch devices as a wrapped, full-width link band. */
@media (max-width: 1120px) {
  :where(.site-nav.is-static) {
    position: static !important;
    display: flex !important;
    grid-column: 1 / -1 !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: none !important;
    gap: 8px !important;
    margin-top: 8px !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  :where(.site-nav.is-static a) {
    flex: 1 1 min(100%, 180px) !important;
    min-height: 44px !important;
    justify-content: center !important;
    padding: 11px 12px !important;
    border: 1px solid rgba(92, 238, 230, 0.18) !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.06) !important;
    text-align: center !important;
  }
}

@media (max-width: 720px) {
  :where(.cookie-banner) {
    inset: auto 10px 10px !important;
    max-width: calc(100vw - 20px) !important;
    overflow: hidden !important;
  }

  :where(.cookie-panel) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  :where(.cookie-actions) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  :where(.cookie-actions .button) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    justify-content: center !important;
  }

  :where(.sticky-project-button) {
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: calc(100vw - 24px) !important;
    transform: none !important;
  }
}

:where(.form-honeypot) {
  position: absolute !important;
  inset: auto !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  opacity: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  pointer-events: none !important;
}
