/* Shared responsive corrections for the five-language site. */
h1, h2, h3 { overflow-wrap: anywhere; }
html[lang="de"] h1, html[lang="de"] h2, html[lang="de"] h3,
html[lang="de"] .tool-fields label { hyphens: auto; }
.company-layout > *, .detail-columns > *, .detail-hero-grid > *,
.tool-title-row > *, .education-card { min-width: 0; }
.education-card p, .tool-fields label { overflow-wrap: anywhere; }
.ref-controls { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto; }
.ref-controls > * { min-width: 0; max-width: 100%; box-sizing: border-box; }
.interview-card .flex-1 { min-width: 0; }
.hz-thumb img[src="/work-assets/fastercapital-news.webp"] { object-fit: contain; padding: 16px; background: #fff; }
@media (max-width: 1100px) {
  .education-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1023px) {
  #personal-stats > div { min-width: 0; }
  #personal-stats .font-heading { font-size: clamp(1.8rem, 5vw, 2.75rem); }
  #stats .stat-item .font-heading { font-size: clamp(1.8rem, 4.4vw, 2.75rem); }
}
@media (max-width: 767px) {
  /* The legacy RTL row reversal must not override the phone card column. */
  html[dir="rtl"] .interview-card > .flex { flex-direction: column !important; }
}
@media (max-width: 640px) {
  .ref-controls { grid-template-columns: minmax(0, 1fr); }
  .ref-controls > * { width: 100%; }
  /* Keep phone browsers from zooming the page when focusing a form field. */
  input:not([type="checkbox"]):not([type="radio"]), select, textarea { font-size: 16px; }
}
@media (max-width: 600px) {
  .tool-title-row { flex-direction: column; gap: 1.1rem; }
  .tool-title-row > div { width: 100%; }
  .tool-title-row .tool-symbol { width: 54px; }
  .education-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 480px) {
  .tool-fields { grid-template-columns: minmax(0, 1fr); }
}

/* Owner's light palette: outer page sections alternate, cards stay distinct. */
:root { --site-ink: #172033; --site-muted: #526174; --site-gray: #f3f4f6; --site-line: #dce2e9; --site-blue: #1d4ed8; }
body, main { background-color: #fff; }
section[data-site-surface="white"] { background: #fff !important; }
section[data-site-surface="gray"] { background: var(--site-gray) !important; }
[data-site-light-ink] { color: var(--site-ink) !important; }
[data-site-light-ink] :is(h1,h2,h3,h4),
[data-site-light-ink] :is(.text-white,[class*="text-white/"]) { color: var(--site-ink) !important; }
[data-site-light-ink] :is(p,li,.hero-subtitle,.role-summary) { color: var(--site-muted) !important; }
[data-site-light-ink] a { color: var(--site-blue); }
[data-site-light-ink] :is(.work-kicker,.highlight-kicker,.role-eyebrow) { color: var(--site-blue) !important; }
[data-site-light-ink] a:is(.primary,.bg-accent,.bg-primary) { background: #2563eb; color: #fff !important; }
[data-site-light-ink] a[class*="border-white"] { border-color: #cbd5e1; color: var(--site-blue) !important; }
[data-site-light-ink] a[class*="border-white"]:hover { background: #e8edf5; border-color: var(--site-blue); }
#hero { min-height: auto; }
#hero #particles, #hero > [aria-hidden="true"], #expertise > [aria-hidden="true"] { display: none; }
#hero .hero-badge { background: #eef2f7; border-color: #d5dde8; }
#hero .hero-badge span { color: #334155 !important; }
#hero .highlight-window { border-color: var(--site-line); }
#hero .highlight-slide a, #hero .highlight-slide .role-all-roles { color: var(--site-blue); }
#hero .home-hero-portrait { border-color: var(--site-line); background: #f3f4f6; }
#hero .home-hero-portrait img { box-shadow: none; }
#hero .highlight-controls button { color: #475569; border-color: #cbd5e1; background: #fff; }
#hero .highlight-controls button:hover { color: #1d4ed8; background: #eff6ff; border-color: #2563eb; }
#hero .highlight-dots button[aria-current="true"] { color: #fff; background: #2563eb; border-color: #2563eb; }
#hero .highlight-label { color: #64748b; }
#hero .highlight-controls button:focus-visible, #hero .highlight-slide a:focus-visible { outline-color: #2563eb; }
#hero .hero-cta a:first-child { color: #fff !important; background: #2563eb !important; }
#hero .hero-cta a:first-child:hover { background: #1d4ed8 !important; }
#hero .hero-cta a:not(:first-child) { color: #1d4ed8 !important; border-color: #cbd5e1; }
#stats { margin-top: 0; padding-block: 28px; }
#stats > div { box-shadow: none; border: 1px solid var(--site-line); }
#expertise a.rounded-2xl { background: #fff !important; border-color: var(--site-line) !important; }
#expertise a.rounded-2xl:hover { border-color: #93b4ed !important; box-shadow: 0 8px 24px rgb(15 23 42 / .06); }
#expertise h3 { color: var(--site-ink) !important; }
#expertise p { color: var(--site-muted) !important; }
#expertise a.rounded-2xl > span { color: var(--site-blue) !important; }
.work-hero:after { display: none; }
.work-tabs a { color: #1d4ed8; background: #fff; border-color: #cbd5e1; }
.work-tabs a:hover { color: #fff; }
.detail-stats { color: var(--site-ink); }
.detail-stats dd { color: var(--site-blue); }
.detail-stats :is(dt,p) { color: var(--site-muted); }
.detail-stats a { color: var(--site-blue); }
/* Original company marks retain their aspect ratios and readable wordmarks. */
.detail-emblem.company-brand { width: 220px; height: auto; max-width: 100%; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.detail-emblem.company-brand:after { display: none; }
.company-brand img { display: block; width: 100%; height: auto; object-fit: contain; }
.portfolio-tile { border-color: var(--site-line); }
#personal-stats .font-heading { color: #2563eb !important; }
.tools-page { background: #fff; }
/* Full-width collection bands, with the original reading width retained. */
.tools-catalogue { max-width: none; padding-inline: 0; }
.tools-catalogue > .tools-collection { padding: 2.5rem max(24px,calc((100% - 1092px)/2)); margin: 0; }
.tools-hero { max-width: none; padding-inline: max(24px,calc((100% - 1092px)/2)); }
#mainNav { background: rgb(255 255 255 / .97) !important; border-bottom: 1px solid #e5e7eb; color: #172033; }
#mainNav > .max-w-7xl { max-width: 1536px; }
#mainNav .site-nav-top, #mainNav .lang-btn { color: #475569 !important; }
#mainNav .site-nav-top:hover, #mainNav .site-nav-top[aria-current="page"],
#mainNav .site-nav-active > summary { color: #1d4ed8 !important; }
#mainNav .lang-btn { border-color: #cbd5e1; }
#mainNav .logo img { filter: brightness(0) !important; }
#mainNav :is(.menu-line-1,.menu-line-2,.menu-line-3) { background-color: #172033 !important; }
footer { background: #fff !important; color: var(--site-ink); border-top: 1px solid var(--site-line); }
footer :is(.text-white,[class*="text-white/"],[class*="text-gray-"],p) { color: #526174 !important; }
footer a:hover { color: #1d4ed8 !important; }
footer img[src$="/images/logo.png"] { filter: brightness(0); }
@media (min-width: 768px) and (max-width: 1439px) {
 #mainNav .hidden.md\:flex.items-center.gap-8 { display: none !important; }
 #mobileMenuBtn { display: flex !important; }
 #mobileMenu { position: fixed !important; top: 80px !important; right: 0 !important; left: 0 !important; bottom: auto !important; max-height: calc(100dvh - 80px) !important; overflow-y: auto !important; background: #fff !important; flex-direction: column !important; align-items: stretch !important; justify-content: flex-start !important; padding: .5rem 1.5rem 1.25rem !important; gap: 0 !important; z-index: 49 !important; }
 #mobileMenuClose { display: none !important; }
}
@media (min-width: 1440px) {
 #mainNav .hidden.md\:flex.items-center.gap-8 { display: flex !important; }
 #mobileMenuBtn { display: none !important; }
}
