:root {
  --ink: #070a0c;
  --ink-soft: #10171a;
  --ink-blue: #304956;
  --paper: #edf1f2;
  --white: #f6f7f5;
  --muted: #96a6ae;
  --slate: #7f9ca8;
  --accent: #c3e33d;
  --accent-bright: #c9f02a;
  --line: rgba(255,255,255,.16);
  --dark-line: rgba(7,10,12,.13);
  --radius: 24px;
  --container: 1460px;
  --header-h: 148px;
  --ease: cubic-bezier(.2,.8,.2,1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--white);
  background: var(--ink);
  font-family: "Manrope", "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, textarea { font: inherit; }
button { color: inherit; }

.sr-only {
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.skip-link {
  position: fixed; left: 1rem; top: 1rem; z-index: 1000;
  transform: translateY(-200%); background: var(--accent-bright); color: var(--ink);
  padding: .8rem 1rem; border-radius: 999px; font-weight: 800;
}
.skip-link:focus { transform: translateY(0); }
.container { width: min(calc(100% - 116px), 1560px); margin-inline: auto; }

.site-header {
  position: fixed; inset: 0 0 auto; z-index: 100;
  height: var(--header-h); display: flex; align-items: center;
  transition: background .3s var(--ease), backdrop-filter .3s var(--ease), border-color .3s var(--ease);
  border-bottom: 1px solid transparent;
}
.site-header.is-scrolled {
  background: rgba(7,10,12,.78); backdrop-filter: blur(18px);
  border-bottom-color: rgba(255,255,255,.08);
}
.header-inner { display:flex; align-items:center; justify-content:flex-start; gap:0; }
.brand { display:flex; align-items:center; flex:0 0 408px; min-width:0; padding-right:40px; border-right:0; }
.brand-logo { display:block; width:350px; max-width:100%; height:auto; }
.site-nav { display:flex; flex:1; align-items:center; justify-content:space-between; gap:24px; margin-left:34px; text-transform:uppercase; font-size:13px; letter-spacing:.045em; }
.site-nav a { position:relative; padding: 14px 0; white-space:nowrap; }
.site-nav a:not(.nav-cta)::after {
  content:""; position:absolute; left:0; right:100%; bottom:5px; height:2px; background:var(--accent-bright);
  transition:right .25s var(--ease);
}
.site-nav a:hover::after, .site-nav a.is-active::after { right:0; }
.site-nav a.is-active { color:var(--accent-bright); font-weight:700; }
.nav-cta { border:1px solid var(--accent-bright); border-radius:999px; padding:15px 30px !important; color:var(--accent-bright); font-weight:700; }
.nav-cta:hover { background:var(--accent-bright); color:var(--ink); }
.menu-toggle { display:none; }

.hero { position:relative; overflow:hidden; background:var(--ink); }
.hero-stage { position:relative; height:clamp(820px, 57.2vw, 900px); overflow:hidden; }
.hero-media { position:absolute; inset:0; background:#0a0d0e; display:flex; justify-content:flex-end; }
.hero-media img {
  width:auto; max-width:none; height:100%; object-fit:contain; object-position:right center;
  transform:none;
  filter:saturate(.94) contrast(1.01) brightness(.98);
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.18) 4%, rgba(0,0,0,.58) 10%, #000 18%);
  mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.18) 4%, rgba(0,0,0,.58) 10%, #000 18%);
}
.hero-shade {
  position:absolute; inset:0;
  background:
    linear-gradient(90deg,
      rgba(5,8,10,.98) 0%,
      rgba(5,8,10,.95) 24%,
      rgba(5,8,10,.87) 34%,
      rgba(5,8,10,.70) 43%,
      rgba(5,8,10,.45) 51%,
      rgba(5,8,10,.18) 60%,
      rgba(5,8,10,.04) 67%,
      rgba(5,8,10,0) 73%),
    linear-gradient(0deg, rgba(5,8,10,.20) 0%, rgba(5,8,10,0) 30%);
}
.hero-inner {
  position:relative; z-index:2; height:100%; display:flex; align-items:flex-start;
  padding-top:clamp(186px, 13.7vw, 210px);
}
.hero-copy { width:min(735px, 49vw); margin-left:104px; }
.hero h1 { margin:0; font-weight:300; font-size:clamp(58px, 4.45vw, 69px); line-height:1.02; letter-spacing:-.042em; text-wrap:initial; }
.hero-title-main { display:block; white-space:nowrap; }
.hero h1 strong { display:block; margin-top:12px; color:#5e7b87; font-weight:760; line-height:.99; white-space:nowrap; }
.hero h1 strong span { color:var(--accent-bright); }
.accent-rule { width:78px; height:2px; background:var(--accent-bright); margin:34px 0 27px; }
.hero-lead { max-width:none; margin:0 0 34px; font-size:20px; line-height:1.55; color:rgba(255,255,255,.94); text-wrap:initial; }
.hero-lead > span { display:block; white-space:nowrap; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:28px; min-height:58px; padding:0 30px; border-radius:999px; border:1px solid transparent; text-transform:uppercase; letter-spacing:.055em; font-size:14px; font-weight:800; cursor:pointer; transition:transform .2s var(--ease), background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease); }
.button:hover { transform:translateY(-2px); }
.button--primary { background:linear-gradient(90deg, #d2ea48, #c3df3f); color:#0b0e0d; }
.button--ghost { background:transparent; border-color:rgba(255,255,255,.22); color:rgba(255,255,255,.65); cursor:not-allowed; }
.hero-cta { min-width:390px; min-height:64px; padding:0 30px 0 34px; justify-content:space-between; gap:18px; font-size:16px; letter-spacing:.06em; }
.hero-cta span[aria-hidden="true"] { font-size:22px; font-weight:900; line-height:1; transform:translateY(-1px); }
.credentials { display:grid; grid-template-columns:repeat(3,1fr); margin-top:46px; width:min(560px, 100%); max-width:100%; padding-top:30px; border-top:1px solid rgba(255,255,255,.12); }
.credential { min-width:0; padding:0 22px; border-right:1px solid rgba(255,255,255,.18); display:grid; grid-template-rows:48px auto auto; align-items:center; justify-items:center; gap:7px; text-align:center; text-transform:uppercase; }
.credential:first-child { padding-left:0; }
.credential:last-child { padding-right:0; border-right:0; }
.credential-icon { width:48px; height:48px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.4); border-radius:50%; color:var(--accent-bright); font-size:20px; }
.credential-icon svg { width:22px; height:22px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.credential strong { display:flex; align-items:center; justify-content:center; min-height:32px; color:#9bb8c3; font-size:12px; letter-spacing:.12em; text-align:center; }
.credential:first-child strong { color:var(--accent-bright); }
.credential--experience strong { font-size:31px; line-height:1; letter-spacing:-.05em; }
.credential small { display:flex; align-items:flex-start; justify-content:center; min-height:18px; font-size:11px; letter-spacing:.1em; color:rgba(255,255,255,.88); text-align:center; }

.hero-strip { position:relative; z-index:3; display:block; background:linear-gradient(90deg, #243a46 0%, #29424f 50%, #2f4a58 100%); border-top:1px solid rgba(255,255,255,.11); }
.hero-strip-inner { min-height:146px; display:grid; grid-template-columns:1.1fr .85fr .45fr; align-items:center; }
.quote-block { display:flex; align-items:flex-start; gap:18px; padding-right:42px; border-right:1px solid rgba(255,255,255,.18); }
.quote-mark { color:var(--accent-bright); font-family:Georgia, serif; font-size:46px; line-height:.7; }
.quote-block p { margin:0; font-size:16px; line-height:1.58; }
.quote-block em { color:var(--accent-bright); font-style:normal; }
.strip-note { padding:0 44px; color:#cad2d5; line-height:1.6; font-size:15px; border-right:1px solid rgba(255,255,255,.18); }
.strip-link { display:flex; align-items:center; gap:22px; padding-left:44px; }
.play { width:58px; height:58px; border:1px solid var(--accent-bright); border-radius:50%; display:grid; place-items:center; color:var(--accent-bright); font-size:26px; }
.strip-link span:last-child { display:grid; gap:6px; text-transform:uppercase; letter-spacing:.11em; }
.strip-link strong { color:var(--accent-bright); font-size:13px; }
.strip-link small { font-size:11px; }

.section { position:relative; padding: clamp(90px, 9vw, 150px) 0; }
.section--light { background:#eef2f3; color:#111718; }
.section--paper { background:#dfe6e8; color:#111718; }
.section--dark { background:#0c1215; }
.section--risk { background:radial-gradient(circle at 70% 35%, rgba(127,156,168,.22), transparent 36%), #14232b; }
.section--contact { background:#090d0f; }
.section-grid, .split-layout, .risk-layout, .contact-layout { display:grid; grid-template-columns: .85fr 1.15fr; gap: clamp(70px, 8vw, 150px); align-items:start; }
.section-intro h2 { margin:0 0 24px; font-size:clamp(38px, 4.2vw, 66px); line-height:1.04; letter-spacing:-.045em; font-weight:500; }
.section-intro p { margin:0; font-size:18px; line-height:1.7; color:inherit; opacity:.74; max-width:720px; }
.section-intro--wide { max-width:760px; }
.steps { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.step-card { min-height:250px; border:1px solid var(--dark-line); border-radius:var(--radius); padding:28px; background:rgba(255,255,255,.42); display:flex; flex-direction:column; }
.step-card > span { color:#6f8087; font-size:13px; font-weight:800; letter-spacing:.14em; }
.step-card h3 { margin:auto 0 12px; font-size:25px; }
.step-card p { margin:0; color:#4e585c; line-height:1.55; }
.text-link { display:inline-flex; gap:16px; margin-top:34px; color:var(--accent-bright); font-weight:800; text-transform:uppercase; letter-spacing:.08em; font-size:13px; }
.metric-panel { min-height:520px; border:1px solid rgba(255,255,255,.11); border-radius:32px; position:relative; overflow:hidden; display:grid; place-items:center; background:linear-gradient(160deg, #20343f, #0b1114); }
.metric-orbit { position:absolute; width:410px; aspect-ratio:1; border:1px solid rgba(195,227,61,.42); border-radius:50%; }
.metric-orbit::before,.metric-orbit::after,.metric-orbit span { content:""; position:absolute; border:1px solid rgba(108,139,150,.25); border-radius:50%; inset:12%; }
.metric-orbit::after { inset:28%; }
.metric-orbit span { inset:43%; background:var(--accent-bright); border:0; box-shadow:0 0 70px rgba(195,227,61,.3); }
.metric-copy { position:relative; z-index:2; text-align:center; }
.metric-copy small { color:#8e9da3; letter-spacing:.22em; }
.metric-copy strong { display:block; margin-top:18px; font-size:clamp(40px, 4vw, 62px); line-height:1.02; font-weight:600; }

.about-layout { display:grid; grid-template-columns:minmax(330px, .78fr) 1.22fr; gap:clamp(55px, 8vw, 130px); align-items:center; }
.about-photo { border-radius:30px; overflow:hidden; aspect-ratio: 3/4; box-shadow:0 30px 70px rgba(0,0,0,.14); }
.about-photo img { width:100%; height:100%; object-fit:cover; }
.fact-grid { display:grid; grid-template-columns:1fr 1fr; margin-top:44px; border-top:1px solid var(--dark-line); border-left:1px solid var(--dark-line); }
.fact-grid div { min-height:120px; padding:22px; border-right:1px solid var(--dark-line); border-bottom:1px solid var(--dark-line); display:grid; align-content:center; gap:8px; }
.fact-grid strong { font-size:23px; }
.fact-grid span { text-transform:uppercase; color:#68777b; font-size:11px; letter-spacing:.14em; }

.risk-layout { align-items:center; }
.risk-demo { border:1px solid rgba(255,255,255,.14); border-radius:30px; padding:40px; background:rgba(6,10,12,.38); }
.risk-scale { display:grid; grid-template-columns:repeat(10,1fr); gap:8px; }
.risk-scale span { height:10px; border-radius:999px; background:rgba(255,255,255,.12); }
.risk-scale span:nth-child(-n+6) { background:linear-gradient(90deg, #88a3ae, var(--accent)); }
.risk-status { display:flex; align-items:end; justify-content:space-between; margin:34px 0; }
.risk-status span { color:#9aa7aa; font-size:11px; letter-spacing:.16em; }
.risk-status strong { color:var(--accent-bright); font-size:76px; line-height:1; }

.contact-layout { align-items:start; }
.contact-email { display:inline-block; margin-top:32px; color:var(--accent-bright); font-size:20px; }
.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.contact-form label { display:grid; gap:8px; color:#9aa6aa; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.contact-form label:nth-child(4), .contact-form .button, .form-status { grid-column:1 / -1; }
.contact-form input, .contact-form textarea { width:100%; border:1px solid rgba(255,255,255,.15); background:#11191d; color:white; border-radius:14px; padding:15px 16px; outline:none; transition:border-color .2s; resize:vertical; }
.contact-form input:focus, .contact-form textarea:focus { border-color:var(--accent-bright); }
.contact-form .button { justify-self:start; }
.form-status { margin:0; min-height:1.5em; color:var(--accent-bright); }

.site-footer { background:#050708; border-top:1px solid rgba(255,255,255,.08); padding:28px 0; color:#93a0a4; font-size:13px; }
.footer-inner { display:flex; justify-content:space-between; gap:20px; }

.reveal { opacity:0; transform:translateY(22px); transition:opacity .75s var(--ease), transform .75s var(--ease); }
.reveal.is-visible { opacity:1; transform:none; }

@media (max-width: 1180px) {
  .fit-core-item { min-height:360px; }
  .fit-row { grid-template-columns:60px minmax(260px,.9fr) 1.1fr; gap:34px; }

  :root { --header-h: 104px; }
  .brand { flex:0 0 300px; min-width:0; padding-right:0; border-right:0; }
  .brand-logo { width:285px; }
  .site-nav { gap:18px; margin-left:30px; font-size:11px; }
  .nav-cta { padding:13px 20px !important; }
  .hero-stage { height:820px; }
  .hero-inner { padding-top:165px; }
  .hero-copy { width:min(680px, 54vw); margin-left:72px; }
  .hero h1 { font-size:58px; }
  .hero-strip-inner { grid-template-columns:1.05fr .95fr; }
  .strip-link { display:none; }
  .strip-note { border-right:0; }
}

@media (max-width: 900px) {
  .section-heading--fit { margin-bottom:44px; }
  .fit-core { grid-template-columns:1fr; }
  .fit-core-item { min-height:0; padding:34px 0 38px; }
  .fit-core-item + .fit-core-item { border-left:0; border-top:1px solid rgba(7,10,12,.18); padding:38px 0; }
  .fit-core-item h3 { margin:38px 0 18px; }
  .fit-core-item--accent::after { left:0; }
  .fit-row { grid-template-columns:52px 1fr; gap:16px 24px; }
  .fit-row p { grid-column:2; }

  .container { width:min(calc(100% - 40px), var(--container)); }
  .site-header { height:82px; }
  .brand { flex:0 0 auto; }
  .brand-logo { width:225px; }
  .menu-toggle { display:grid; width:48px; height:48px; place-content:center; gap:7px; border:1px solid rgba(255,255,255,.25); border-radius:50%; background:rgba(5,8,10,.38); z-index:111; }
  .menu-toggle span:not(.sr-only) { width:20px; height:1px; background:white; transition:transform .25s, opacity .25s; }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { transform:translateY(4px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-4px) rotate(-45deg); }
  .site-nav { position:fixed; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:100px 40px 50px; background:rgba(7,10,12,.97); backdrop-filter:blur(20px); transform:translateX(100%); transition:transform .35s var(--ease); font-size:18px; gap:20px; }
  .site-nav.is-open { transform:none; }
  .site-nav a { padding:10px 0; }
  .nav-cta { margin-top:14px; padding:16px 28px !important; }
  .hero-stage { height:900px; }
  .hero-media { display:block; }
  .hero-media img { width:100%; height:100%; object-fit:cover; object-position:67% center; transform:none; filter:saturate(.94) brightness(.94); -webkit-mask-image:none; mask-image:none; }
  .hero-shade { background:linear-gradient(0deg, rgba(5,8,10,.96) 0%, rgba(5,8,10,.80) 45%, rgba(5,8,10,.20) 78%), linear-gradient(90deg, rgba(5,8,10,.38), rgba(5,8,10,.02)); }
  .hero-inner { height:100%; align-items:flex-end; padding-top:0; padding-bottom:68px; }
  .hero-copy { width:100%; }
  .hero h1 { font-size:clamp(48px, 9vw, 68px); }
  .hero-title-main { white-space:normal; }
  .hero h1 strong { white-space:normal; }
  .hero-lead > span { display:inline; white-space:normal; }
  .hero-lead > span + span::before { content:" "; }
  .hero-lead { font-size:18px; max-width:630px; }
  .credentials { margin-top:42px; width:min(540px, 100%); padding-top:27px; }
  .credential { min-width:0; padding:0 14px; }
  .credential small { text-align:center; }
  .hero-strip-inner { min-height:130px; grid-template-columns:1fr; }
  .strip-note { display:none; }
  .quote-block { border:0; padding-right:0; }
  .section-grid, .split-layout, .risk-layout, .contact-layout, .about-layout { grid-template-columns:1fr; gap:55px; }
  .about-photo { max-width:520px; }
}

@media (max-width: 620px) {
  .fit-core-item h3 { font-size:27px; }
  .fit-core-item p, .fit-row p { font-size:15px; }
  .fit-row { grid-template-columns:42px 1fr; padding:24px 0 26px; }
  .fit-row h3 { font-size:20px; }

  .container { width:min(calc(100% - 28px), var(--container)); }
  .hero-stage { height:840px; }
  .hero-media img { object-position:68% 15%; }
  .hero-inner { height:100%; padding-top:0; padding-bottom:52px; }
  .hero h1 { font-size:clamp(42px, 12.4vw, 61px); }
  .hero h1 strong { margin-top:8px; }
  .eyebrow { display:none; }
  .hero-lead { font-size:16px; line-height:1.55; }
  .button { width:100%; min-height:56px; padding:0 20px; }
  .hero-cta { min-width:0; min-height:60px; padding:0 22px 0 24px; font-size:15px; }
  .hero-cta span[aria-hidden="true"] { font-size:20px; }
  .credentials { width:100%; grid-template-columns:repeat(3,1fr); }
  .credential { padding:0 8px; grid-template-rows:40px auto auto; }
  .credential-icon { width:40px; height:40px; font-size:19px; }
  .credential-icon svg { width:20px; height:20px; }
  .credential strong { font-size:10px; text-align:center; }
  .credential--experience strong { font-size:24px; }
  .credential small { font-size:9px; }
  .hero-strip-inner { min-height:132px; }
  .quote-block p { font-size:15px; }
  .quote-mark { font-size:38px; }
  .section { padding:78px 0; }
  .section-intro h2 { font-size:clamp(34px, 10vw, 48px); }
  .section-intro p { font-size:16px; }
  .steps { grid-template-columns:1fr; }
  .step-card { min-height:210px; }
  .metric-panel { min-height:420px; }
  .metric-orbit { width:300px; }
  .fact-grid { grid-template-columns:1fr; }
  .contact-form { grid-template-columns:1fr; }
  .contact-form label { grid-column:1 / -1; }
  .risk-demo { padding:28px 20px; }
  .footer-inner { flex-direction:column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
  .reveal { opacity:1; transform:none; }
}

/* ===== v2.6 – conversion structure ===== */
.section-heading { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(260px,.55fr); gap:clamp(50px,8vw,130px); align-items:end; margin-bottom:58px; }
.section-heading h2, .outcome-intro h2, .roles-heading h2, .fit-heading h2 { margin:0; font-size:clamp(38px,3.5vw,54px); line-height:1.06; letter-spacing:-.045em; font-weight:500; }
.section-heading-note { margin:0 0 8px; font-size:15px; line-height:1.7; opacity:.66; }
.section-heading--dark .section-heading-note { color:#aebbc0; }

.section--situations { background:linear-gradient(180deg,#eef2f3 0%,#e2e8ea 100%); }
.situation-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(7,10,12,.17); border-left:1px solid rgba(7,10,12,.17); }
.situation-card { min-height:330px; padding:30px; border-right:1px solid rgba(7,10,12,.17); border-bottom:1px solid rgba(7,10,12,.17); display:flex; flex-direction:column; background:rgba(255,255,255,.22); transition:background .25s var(--ease), transform .25s var(--ease); }
.situation-card:hover { background:rgba(255,255,255,.52); transform:translateY(-4px); }
.situation-card--accent { background:#d4e2c5; }
.situation-card--accent:hover { background:#dce8d1; }
.card-index { color:#74858b; font-size:11px; font-weight:800; letter-spacing:.16em; }
.situation-card h3 { margin:auto 0 15px; font-size:clamp(23px,2vw,31px); letter-spacing:-.025em; }
.situation-card p { margin:0; color:#515d60; line-height:1.6; }

.section--outcomes { background:linear-gradient(135deg,#17262e 0%,#2b4350 48%,#0b1114 100%); }
.outcome-intro { max-width:880px; margin-bottom:64px; }
.outcome-intro h2 { margin-top:0; }
.outcome-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.16); }
.outcome-item { min-height:245px; padding:30px 26px 26px 0; border-right:1px solid rgba(255,255,255,.14); margin-right:26px; display:flex; flex-direction:column; }
.outcome-item:last-child { border-right:0; margin-right:0; }
.outcome-item > span { color:var(--accent-bright); font-size:11px; font-weight:800; letter-spacing:.15em; }
.outcome-item h3 { margin:auto 0 12px; font-size:25px; }
.outcome-item p { margin:0; color:#aeb9bd; line-height:1.55; }
.section-cta { margin-top:58px; padding-top:32px; border-top:1px solid rgba(255,255,255,.14); display:flex; align-items:center; justify-content:space-between; gap:35px; }
.section-cta p { margin:0; color:#c9d0d2; font-size:17px; }

.steps--five { grid-template-columns:1fr 1fr; }
.step-card--wide { grid-column:1/-1; min-height:210px; }

.section--roles { background:#2a414d; }
.roles-heading { max-width:920px; margin-bottom:56px; }
.roles-grid { display:grid; grid-template-columns:1fr 1fr; border:1px solid rgba(255,255,255,.14); }
.role-panel { min-height:480px; padding:44px; background:#182932; }
.role-panel + .role-panel { border-left:1px solid rgba(255,255,255,.14); }
.role-panel--client { background:#355260; }
.role-label, .micro-label, .fit-kicker { color:var(--accent-bright); font-size:11px; font-weight:800; letter-spacing:.15em; }
.role-panel h3 { margin:90px 0 28px; font-size:clamp(30px,3vw,44px); line-height:1.08; letter-spacing:-.035em; }
.role-panel ul, .fit-panel ul { margin:0; padding:0; list-style:none; display:grid; gap:16px; }
.role-panel li, .fit-panel li { position:relative; padding-left:25px; color:#c4cdd0; line-height:1.55; }
.role-panel li::before, .fit-panel li::before { content:"↗"; position:absolute; left:0; top:0; color:var(--accent-bright); }

.split-layout--investments { grid-template-columns:.78fr 1.22fr; }

.section--areas { background:linear-gradient(135deg,#14222a 0%,#263c47 55%,#0c1215 100%); }
.areas-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.area-card { border:1px solid rgba(255,255,255,.12); border-radius:24px; background:rgba(255,255,255,.03); padding:22px 22px 20px; display:grid; grid-template-columns:58px 1fr; gap:16px; min-height:148px; }
.area-card:hover { background:rgba(255,255,255,.05); }
.area-icon { width:52px; height:52px; border-radius:18px; border:1px solid rgba(255,255,255,.12); display:grid; place-items:center; background:rgba(255,255,255,.02); color:var(--accent-bright); }
.area-icon svg { width:26px; height:26px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.area-copy h3 { margin:2px 0 8px; font-size:22px; line-height:1.2; }
.area-copy p { margin:0; color:#9fadb2; line-height:1.55; }

.investment-stack { display:grid; gap:20px; }
.risk-teaser { border:1px solid rgba(255,255,255,.12); border-radius:24px; padding:28px 32px; background:#192a33; display:grid; grid-template-columns:1fr auto; align-items:center; gap:30px; }
.risk-teaser h3 { margin:8px 0 8px; font-size:28px; }
.risk-teaser p { margin:0; max-width:650px; color:#9faeb3; line-height:1.55; }
.risk-teaser-number { color:var(--accent-bright); font-size:64px; line-height:1; }

.section--principles { background:#10191e; }
.principles-layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(60px,8vw,140px); align-items:start; }
.principle-list { border-top:1px solid rgba(255,255,255,.15); }
.principle-row { display:grid; grid-template-columns:50px minmax(250px,.9fr) 1.1fr; gap:25px; align-items:center; padding:27px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.principle-row > span { color:var(--accent-bright); font-size:11px; font-weight:800; letter-spacing:.15em; }
.principle-row h3 { margin:0; font-size:21px; line-height:1.3; }
.principle-row p { margin:0; color:#9caaae; line-height:1.55; }

.section--fit { background:#eef2f3; color:#111718; }
.fit-heading { max-width:920px; margin-bottom:52px; }
.fit-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.fit-panel { min-height:440px; padding:38px; border:1px solid rgba(7,10,12,.14); background:rgba(255,255,255,.5); }
.fit-panel--yes { border-top:5px solid var(--accent); }
.fit-panel--no { border-top:5px solid #7f9ca8; }
.fit-panel--no .fit-kicker { color:#7f9ca8; }
.fit-panel ul { margin-top:95px; gap:20px; }
.fit-panel li { color:#465155; font-size:17px; }
.fit-panel--no li::before { color:#7f9ca8; }
.qualification-note { margin-top:20px; padding:26px 32px; border:1px solid rgba(7,10,12,.14); display:grid; grid-template-columns:250px 1fr; gap:34px; align-items:center; }
.qualification-note span { font-size:10px; font-weight:800; letter-spacing:.14em; color:#6a7d84; }
.qualification-note p { margin:0; color:#394447; line-height:1.6; }

.section--analysis { background:linear-gradient(135deg,#223844 0%,#0b1114 72%); }
.article-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.article-grid--five .article-card:nth-child(4), .article-grid--five .article-card:nth-child(5) { min-height:330px; }
.article-card { min-height:390px; padding:30px; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.025); display:flex; flex-direction:column; transition:transform .25s var(--ease), border-color .25s var(--ease); }
.article-card:hover { transform:translateY(-4px); border-color:rgba(195,227,61,.45); }
.article-card > span { color:var(--accent-bright); font-size:10px; font-weight:800; letter-spacing:.15em; }
.article-card h3 { margin:auto 0 14px; font-size:28px; }
.article-card p { margin:0 0 26px; color:#9fadb2; line-height:1.55; }
.article-card a { color:#6f8087; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; pointer-events:none; }

.faq-layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(60px,8vw,140px); align-items:start; }
.faq-list { border-top:1px solid rgba(7,10,12,.17); }
.faq-list details { border-bottom:1px solid rgba(7,10,12,.17); }
.faq-list summary { cursor:pointer; list-style:none; padding:25px 45px 25px 0; position:relative; font-size:20px; font-weight:600; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:"+"; position:absolute; right:2px; top:21px; font-size:26px; font-weight:300; color:#67808a; transition:transform .2s; }
.faq-list details[open] summary::after { transform:rotate(45deg); }
.faq-list details p { margin:-2px 0 25px; color:#566366; line-height:1.65; max-width:750px; }

.contact-form textarea::placeholder { color:#69777b; text-transform:none; letter-spacing:0; }

@media (max-width:1180px) {
  .situation-grid, .outcome-grid { grid-template-columns:1fr 1fr; }
  .situation-card { min-height:270px; }
  .outcome-item:nth-child(2) { border-right:0; }
  .outcome-item { border-bottom:1px solid rgba(255,255,255,.14); padding-bottom:28px; }
  .article-grid { grid-template-columns:1fr 1fr; }
  .article-grid--five .article-card:last-child { grid-column:auto; min-height:300px; }
}

@media (max-width:900px) {
  .section-heading, .principles-layout, .faq-layout, .roles-grid, .fit-grid { grid-template-columns:1fr; }
  .section-heading { gap:24px; }
  .section-heading-note { max-width:700px; }
  .section-heading--fit .section-heading-note { padding-left:0; margin-top:0; }
  .role-panel + .role-panel { border-left:0; border-top:1px solid rgba(255,255,255,.14); }
  .role-panel { min-height:auto; }
  .role-panel h3 { margin-top:55px; }
  .split-layout--investments { grid-template-columns:1fr; }
  .principle-row { grid-template-columns:40px 1fr; }
  .principle-row p { grid-column:2; }
  .qualification-note { grid-template-columns:1fr; gap:10px; }
}

@media (max-width:620px) {
  .situation-grid, .outcome-grid, .article-grid { grid-template-columns:1fr; }
  .situation-card { min-height:235px; }
  .outcome-item { min-height:210px; margin-right:0; border-right:0; }
  .section-cta { align-items:stretch; flex-direction:column; }
  .step-card--wide { grid-column:auto; }
  .role-panel, .fit-panel { padding:28px 22px; }
  .fit-panel { min-height:auto; }
  .fit-panel ul { margin-top:55px; }
  .risk-teaser { grid-template-columns:1fr; }
  .risk-teaser-number { display:none; }
  .principle-row { grid-template-columns:34px 1fr; gap:15px; }
  .article-card, .article-card:last-child { min-height:300px; grid-column:auto; }
  .faq-list summary { font-size:18px; }
}


/* ===== v2.9 – brand system, rhythm, typography ===== */
body { font-family:"Manrope",sans-serif; }
h1,h2,h3,h4,.site-nav,.button,.eyebrow,.credential strong,.fact-strip strong,.micro-label,.card-index { font-family:"Montserrat",sans-serif; }
p,li,.section-heading-note,.credential small,.faq-list { font-family:"Manrope",sans-serif; }
.eyebrow { letter-spacing:.16em; font-weight:700; }
.eyebrow > span { color:var(--slate); margin-right:12px; }
.section--dark .eyebrow > span,.section--outcomes .eyebrow > span,.section--analysis .eyebrow > span { color:var(--accent-bright); }

.brand-section { position:relative; overflow:hidden; }
.brand-arc { position:absolute; pointer-events:none; border:1px solid rgba(86,123,134,.14); border-radius:50%; }
.brand-arc--right { width:620px; height:620px; right:-365px; top:70px; box-shadow:0 0 0 76px rgba(86,123,134,.035),0 0 0 152px rgba(86,123,134,.025); }
.brand-arc--case { width:700px; height:700px; right:-430px; top:-110px; border-color:rgba(127,156,168,.14); box-shadow:0 0 0 78px rgba(127,156,168,.025),0 0 0 156px rgba(127,156,168,.018); }
.brand-grid { position:absolute; inset:0 0 0 58%; opacity:.13; background-image:linear-gradient(rgba(127,156,168,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(127,156,168,.22) 1px,transparent 1px); background-size:54px 54px; mask-image:linear-gradient(90deg,transparent,black 35%); pointer-events:none; }

/* situations: two anchors, not a tile wall */
.situation-editorial { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid rgba(7,10,12,.18); border-bottom:1px solid rgba(7,10,12,.18); }
.situation-feature { min-height:380px; padding:38px 7vw 38px 0; display:flex; flex-direction:column; position:relative; }
.situation-feature + .situation-feature { border-left:1px solid rgba(7,10,12,.18); padding-left:7vw; padding-right:0; }
.situation-feature .line-icon { width:58px; height:58px; border:1px solid rgba(7,10,12,.35); border-radius:50%; display:grid; place-items:center; font:600 24px Montserrat; margin-bottom:50px; color:#567b86; }
.situation-feature .line-icon--arc { color:#c7d93b; }
.situation-feature h3 { margin:auto 0 16px; max-width:570px; font-size:clamp(30px,3vw,46px); line-height:1.08; letter-spacing:-.04em; }
.situation-feature p { margin:0; max-width:590px; color:#526065; font-size:16px; line-height:1.7; }
.situation-signals { display:grid; grid-template-columns:240px 1fr; gap:50px; padding-top:32px; }
.situation-signals > span { font:700 11px Montserrat; letter-spacing:.13em; color:#607985; text-transform:uppercase; }
.situation-signals ul { margin:0; padding:0; list-style:none; display:flex; flex-wrap:wrap; gap:10px 30px; }
.situation-signals li { position:relative; padding-left:16px; color:#4c5a5f; }
.situation-signals li::before { content:""; width:5px; height:5px; border-radius:50%; background:var(--accent); position:absolute; left:0; top:.7em; }

/* v2.37 – self-identification: mindset first, situations second */
.section-heading--fit { margin-bottom:46px; grid-template-columns:1fr 1fr; gap:0; align-items:end; }
.section-heading--fit h2 { font-size:clamp(38px, 3.5vw, 54px); line-height:1.06; }
.section-heading--fit .section-heading-note { padding-left:clamp(40px,5vw,72px); max-width:630px; margin:0 0 6px; }
.fit-core {
  display:grid;
  grid-template-columns:1fr 1fr;
  border-top:1px solid rgba(7,10,12,.18);
  border-bottom:1px solid rgba(7,10,12,.18);
}
.fit-core-item {
  min-height:270px;
  padding:24px clamp(40px,5vw,72px) 24px 0;
  display:grid;
  grid-template-rows:auto auto auto;
  align-content:start;
  position:relative;
}
.fit-core-item + .fit-core-item {
  border-left:1px solid rgba(7,10,12,.18);
  padding-left:clamp(40px,5vw,72px);
  padding-right:0;
}
.fit-number {
  width:48px;
  height:48px;
  border:1px solid rgba(7,10,12,.30);
  border-radius:50%;
  display:grid;
  place-items:center;
  font:700 11px "Montserrat",sans-serif;
  letter-spacing:.08em;
  color:#567b86;
}
.fit-core-item--accent .fit-number {
  border-color:rgba(195,227,61,.85);
  color:#6c7e09;
}
.fit-core-item h3 {
  margin:28px 0 18px;
  max-width:690px;
  min-height:2.3em;
  font-size:clamp(24px,2.05vw,32px);
  line-height:1.12;
  letter-spacing:-.04em;
  font-weight:520;
  text-wrap:balance;
}
.fit-core-item p {
  margin:0;
  max-width:590px;
  color:#526065;
  font-size:16px;
  line-height:1.72;
}
.fit-core-item--accent::after {
  content:"";
  position:absolute;
  left:clamp(40px,5vw,72px);
  bottom:-1px;
  width:88px;
  height:3px;
  background:var(--accent);
}
.fit-context { margin-top:30px; border-top:1px solid rgba(7,10,12,.18); }
.fit-row {
  display:grid;
  grid-template-columns:74px minmax(300px,.92fr) minmax(340px,1.08fr);
  gap:clamp(28px,4vw,70px);
  align-items:start;
  padding:30px 0 32px;
  border-bottom:1px solid rgba(7,10,12,.18);
}
.fit-row-number {
  font:700 11px "Montserrat",sans-serif;
  letter-spacing:.14em;
  color:#7b929c;
  padding-top:8px;
}
.fit-row h3 {
  margin:0;
  font-size:clamp(20px,1.65vw,26px);
  line-height:1.18;
  letter-spacing:-.025em;
  font-weight:600;
}
.fit-row p {
  margin:0;
  color:#526065;
  line-height:1.68;
  max-width:610px;
}
.fit-row:hover .fit-row-number { color:#7b9100; }

.fit-filter {
  margin-top:44px;
  display:grid;
  grid-template-columns:1fr 1fr;
  border-top:1px solid rgba(7,10,12,.18);
  border-bottom:1px solid rgba(7,10,12,.18);
}
.fit-filter-column {
  padding:30px clamp(40px,5vw,72px) 32px 0;
}
.fit-filter-column + .fit-filter-column {
  border-left:1px solid rgba(7,10,12,.18);
  padding-left:clamp(40px,5vw,72px);
  padding-right:0;
}
.fit-filter-kicker {
  display:block;
  margin-bottom:18px;
  font:700 11px "Montserrat",sans-serif;
  letter-spacing:.12em;
  color:#607985;
}
.fit-filter-column ul {
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:9px;
}
.fit-filter-column li {
  position:relative;
  padding-left:18px;
  color:#2f3b40;
  line-height:1.55;
}
.fit-filter-column li::before {
  content:"";
  position:absolute;
  left:0;
  top:.68em;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--accent);
}
.fit-filter-column--muted li::before { background:#7f9ca8; }


/* outcomes: editorial list */
.outcome-editorial { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(70px,9vw,150px); align-items:start; position:relative; }
.outcome-intro { max-width:700px; margin:0; position:sticky; top:175px; }
.outcome-intro > p:not(.eyebrow) { color:#aebbc0; line-height:1.7; max-width:570px; margin:24px 0 34px; }
.outcome-list { border-top:1px solid rgba(255,255,255,.18); }
.outcome-list article { display:grid; grid-template-columns:66px 1fr; gap:28px; padding:34px 0; border-bottom:1px solid rgba(255,255,255,.18); align-items:start; }
.outcome-list article > span { font:700 11px Montserrat; color:var(--accent-bright); letter-spacing:.15em; padding-top:8px; }
.outcome-list h3 { margin:0 0 7px; font-size:clamp(24px,2.3vw,34px); }
.outcome-list p { margin:0; color:#aeb9bd; line-height:1.6; }

/* process: timeline */
.process-section { background:#edf1f2; }
.process-line { position:relative; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:22px; margin-top:68px; }
.process-track { position:absolute; left:1.6%; right:1.6%; top:39px; height:1px; background:linear-gradient(90deg,rgba(7,10,12,.22) 0%,rgba(86,123,134,.36) 74%,rgba(199,217,59,.50) 100%); }
.process-step { position:relative; min-width:0; padding-right:22px; }
.process-step > span { display:block; font:700 12px Montserrat; color:#567b86; letter-spacing:.15em; margin-bottom:18px; }
.process-step i { display:block; width:17px; height:17px; border-radius:50%; border:2px solid #567b86; background:#edf1f2; position:relative; z-index:2; margin-bottom:21px; }
.process-step i::after { content:""; position:absolute; left:50%; bottom:-10px; width:20px; height:2px; background:#c7d93b; transform:translateX(-50%); border-radius:999px; opacity:.82; }
.process-step--ongoing i { border-color:var(--accent); box-shadow:0 0 0 7px rgba(199,217,59,.12); background:#edf1f2; }
.process-icon { width:34px; height:34px; margin:0 0 14px; color:#567b86; }
.process-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.process-icon svg circle { fill:#edf1f2; }
.process-step--ongoing .process-icon { color:#486d79; }
.process-step h3 { margin:0 0 11px; font-family:Montserrat,sans-serif; font-size:21px; line-height:1.25; letter-spacing:-.015em; }
.process-step p { margin:0; color:#58666a; line-height:1.62; max-width:215px; font-size:14px; }

/* case studies: editorial feature + flat rows */
.case-feature { display:grid; grid-template-columns:.92fr 1.08fr; min-height:470px; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
.case-copy { padding:46px 7vw 46px 0; display:flex; flex-direction:column; }
.case-copy h3 { margin:auto 0 18px; font-size:clamp(34px,3.7vw,58px); line-height:1.04; letter-spacing:-.045em; max-width:680px; }
.case-copy p { margin:0 0 30px; color:#a9b5b9; line-height:1.68; max-width:650px; }
.case-copy a,.case-row a { color:var(--accent-bright); font:700 11px Montserrat; text-transform:uppercase; letter-spacing:.12em; }
.case-dataviz { border-left:1px solid rgba(255,255,255,.18); padding:42px 0 24px 6vw; display:grid; align-content:center; }
.viz-label { display:flex; justify-content:space-between; gap:25px; align-items:end; margin-bottom:18px; }
.viz-label span { font:700 10px Montserrat; letter-spacing:.15em; color:#87a1ad; }
.viz-label strong { font:700 clamp(26px,2.5vw,39px) Montserrat; color:#f6f7f5; }
.case-dataviz svg { width:100%; height:auto; overflow:visible; }
.svg-main,.svg-sub,.svg-key { font-family:Manrope,sans-serif; fill:#aeb9bd; }
.svg-main { font-size:12px; font-weight:700; letter-spacing:1px; }.svg-sub { font-size:9px; }.svg-key { font-size:10px; }
.svg-gridline { stroke:rgba(255,255,255,.12); stroke-width:1; }.svg-accent { fill:#c7d93b; }.svg-slate{fill:#7f9ca8}.svg-muted{fill:#dce4e1}
.case-list { border-bottom:1px solid rgba(255,255,255,.18); }
.case-row { display:grid; grid-template-columns:58px minmax(0,1fr) 170px 95px; gap:28px; align-items:center; padding:28px 0; border-top:1px solid rgba(255,255,255,.14); }
.case-row > span { font:700 11px Montserrat; color:#7f9ca8; }
.case-row small { display:block; color:#7f9ca8; font:700 9px Montserrat; letter-spacing:.14em; margin-bottom:8px; }
.case-row h3 { margin:0; font-size:clamp(20px,1.8vw,28px); line-height:1.25; }
.mini-bars,.mini-compare,.mini-line,.mini-orbit { width:150px; height:52px; position:relative; }
.mini-bars { display:flex; gap:9px; align-items:end; }.mini-bars i{width:17px;background:#7f9ca8}.mini-bars i:nth-child(1){height:19px}.mini-bars i:nth-child(2){height:31px}.mini-bars i:nth-child(3){height:39px}.mini-bars i:nth-child(4){height:50px;background:#c7d93b}
.mini-orbit { border:1px solid rgba(255,255,255,.26); border-radius:50%; width:52px; height:52px; }.mini-orbit::after{content:"";position:absolute;inset:10px;border:1px solid #7f9ca8;border-radius:50%}.mini-orbit i{position:absolute;width:8px;height:8px;background:#c7d93b;border-radius:50%;right:-4px;top:20px}
.mini-compare::before,.mini-compare::after{content:"";position:absolute;left:0;height:10px}.mini-compare::before{width:125px;background:#7f9ca8;top:10px}.mini-compare::after{width:82px;background:#c7d93b;top:31px}.mini-compare i:first-child{position:absolute;left:74px;top:0;width:1px;height:52px;background:rgba(255,255,255,.25)}
.mini-line::before{content:"";position:absolute;left:5px;right:5px;bottom:9px;height:1px;background:rgba(255,255,255,.22)}.mini-line i{position:absolute;left:10px;bottom:14px;width:130px;height:34px;border-top:2px solid #7f9ca8;transform:skewY(-9deg);border-radius:50%}.mini-line::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#c7d93b;right:5px;top:3px}

/* references */
.section--references { background:#f4f6f6; color:#0e0f12; }
.reference-section-heading .eyebrow,
.reference-section-heading .eyebrow--dark { color:#567b86; }

.reference-cards {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:8px;
}
.reference-card {
  position:relative;
  min-height:285px;
  margin:0;
  padding:34px 30px 28px;
  display:flex;
  flex-direction:column;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(86,123,134,.16);
  border-top:3px solid #c7d93b;
}
.reference-card__mark {
  display:block;
  margin-bottom:22px;
  font:500 50px/1 Georgia,serif;
  color:#567b86;
}
.reference-card p {
  margin:0 0 32px;
  font:500 clamp(20px,1.7vw,26px)/1.46 Manrope,sans-serif;
  letter-spacing:-.018em;
  color:#182125;
}
.reference-card footer {
  margin-top:auto;
  display:flex;
  flex-direction:column;
  gap:5px;
}
.reference-card footer strong {
  font:700 12px/1.35 Montserrat,sans-serif;
  letter-spacing:.02em;
  color:#0e0f12;
}
.reference-card footer span {
  font:600 10px/1.35 Montserrat,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#71848c;
}

.reference-proof {
  margin-top:22px;
  display:grid;
  grid-template-columns:175px minmax(0,1fr) auto;
  gap:32px;
  align-items:center;
  padding:30px 32px;
  background:#243a46;
  color:#fff;
}
.reference-proof__visual {
  min-height:82px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding-right:28px;
  border-right:1px solid rgba(255,255,255,.14);
}
.reference-proof__visual svg {
  width:46px;
  height:46px;
  fill:none;
  stroke:#c7d93b;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
  margin-bottom:10px;
}
.reference-proof__visual span {
  color:rgba(255,255,255,.70);
  font:700 9px/1.35 Montserrat,sans-serif;
  letter-spacing:.13em;
}
.reference-proof__copy { min-width:0; }
.reference-proof__eyebrow {
  display:block;
  margin-bottom:6px;
  color:#c7d93b;
  font:700 10px/1.3 Montserrat,sans-serif;
  letter-spacing:.14em;
}
.reference-proof__copy h3 {
  margin:0 0 7px;
  font-family:Montserrat,sans-serif;
  font-size:clamp(19px,1.6vw,24px);
  line-height:1.25;
  letter-spacing:-.018em;
}
.reference-proof__copy p {
  margin:0;
  max-width:680px;
  color:rgba(255,255,255,.66);
  font-size:13px;
  line-height:1.6;
}
.reference-proof__button {
  justify-self:end;
  white-space:nowrap;
}

/* about: no second portrait on homepage */
.about-clean { background:#dfe6e8; }
.about-clean-layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(70px,9vw,150px); align-items:start; }
.about-brandmark { height:430px; position:relative; overflow:hidden; color:#0e0f12; }
.about-brandmark .mark-l { position:absolute; left:6%; top:2%; font:500 320px/1 Montserrat; color:rgba(14,15,18,.08); }
.about-brandmark .mark-c { position:absolute; left:25%; top:15%; font:500 290px/1 Montserrat; color:rgba(86,123,134,.18); }
.about-brandmark i { position:absolute; left:51%; top:14%; width:72px; height:24px; border-left:20px solid transparent; border-right:20px solid transparent; border-top:24px solid #c7d93b; transform:rotate(180deg); opacity:.9; }
.about-brandmark::after { content:""; position:absolute; left:56%; bottom:18%; width:38px; height:14px; background:#7f9ca8; }

.about-story {
  margin-top:26px;
  max-width:780px;
}
.about-story p {
  margin:0;
  color:#4f6269;
  font-size:15px;
  line-height:1.78;
}
.about-story p + p {
  margin-top:18px;
}
.about-story strong {
  color:#182125;
  font-weight:700;
}
.about-story__closing {
  color:#182125 !important;
  font-weight:600;
  font-size:16px !important;
  line-height:1.68 !important;
}
.fact-strip { display:grid; grid-template-columns:repeat(4,1fr); margin-top:46px; border-top:1px solid rgba(14,15,18,.18); border-bottom:1px solid rgba(14,15,18,.18); }
.fact-strip div { padding:24px 20px 24px 0; }
.fact-strip div + div { border-left:1px solid rgba(14,15,18,.18); padding-left:20px; }
.fact-strip strong { display:block; font-size:24px; color:#0e0f12; margin-bottom:5px; }
.fact-strip span { color:#617278; font-size:12px; }

/* navigation has one more item */
.site-nav { gap:16px; font-size:12px; }
.brand { flex-basis:390px; }

@media (max-width:1180px) {
  .outcome-editorial,.case-feature,.about-clean-layout { grid-template-columns:1fr; }
  .areas-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .outcome-intro { position:static; }
  .case-dataviz { border-left:0; border-top:1px solid rgba(255,255,255,.18); padding:36px 0 15px; }
  .case-copy { padding-right:0; min-height:390px; }
  .case-row { grid-template-columns:50px 1fr 145px 80px; }
  .about-brandmark { height:280px; max-width:560px; }
  .about-brandmark .mark-l { font-size:220px; }.about-brandmark .mark-c{font-size:200px;}
}
@media (max-width:900px) {
  .situation-editorial { grid-template-columns:1fr; }
  .areas-grid { grid-template-columns:1fr; }
  .situation-feature + .situation-feature { border-left:0; border-top:1px solid rgba(7,10,12,.18); padding-left:0; }
  .situation-feature { min-height:330px; padding-right:0; }
  .situation-signals { grid-template-columns:1fr; gap:18px; }
  .process-line { grid-template-columns:1fr; gap:0; margin-left:12px; }
  .process-track { left:63px; right:auto; top:20px; bottom:20px; width:1px; height:auto; background:linear-gradient(180deg,rgba(7,10,12,.20),rgba(199,217,59,.45)); }
  .process-step { display:grid; grid-template-columns:48px 26px 38px minmax(0,1fr); gap:12px; padding:18px 0; align-items:start; }
  .process-step > span { margin:5px 0 0; }
  .process-step i { margin:1px 0 0; }
  .process-step i::after { display:none; }
  .process-icon { margin:0; width:30px; height:30px; }
  .process-step h3 { margin:2px 0 6px; }
  .process-step p { grid-column:4; max-width:none; margin:0; }
  .case-row { grid-template-columns:42px 1fr 70px; }.case-row > div:nth-of-type(2){display:none}.case-row a{grid-column:3}
  .fact-strip { grid-template-columns:1fr 1fr; }.fact-strip div:nth-child(3){border-left:0;border-top:1px solid rgba(14,15,18,.18);padding-left:0}.fact-strip div:nth-child(4){border-top:1px solid rgba(14,15,18,.18)}
}
@media (max-width:620px) {
  .case-feature { min-height:0; }.case-copy{min-height:360px;padding-top:25px}.case-dataviz{display:none}
  .case-row { grid-template-columns:32px 1fr; gap:12px; }.case-row a{grid-column:2;margin-top:4px}.case-row > span{padding-top:4px}
  .fact-strip { grid-template-columns:1fr; }.fact-strip div + div { border-left:0; border-top:1px solid rgba(14,15,18,.18); padding-left:0; }
  .about-brandmark { height:210px; }.about-brandmark .mark-l{font-size:165px}.about-brandmark .mark-c{font-size:145px}.about-brandmark i{left:52%;width:48px;height:18px;border-left-width:13px;border-right-width:13px;border-top-width:18px}
}


/* ===== v2.12 – newsletter soft CTA + modal ===== */
.newsletter-soft {
  margin-top:42px;
  padding:30px 0 0;
  border-top:1px solid rgba(255,255,255,.15);
  max-width:560px;
}
.newsletter-soft-kicker,
.newsletter-dialog-kicker {
  display:block;
  color:#7f9ca8;
  font:700 10px/1.3 "Montserrat",sans-serif;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.newsletter-soft h3 {
  margin:12px 0 12px;
  max-width:500px;
  font:600 clamp(24px,2.2vw,34px)/1.12 "Montserrat",sans-serif;
  letter-spacing:-.035em;
}
.newsletter-soft p {
  margin:0 0 22px;
  color:#9faeb3;
  line-height:1.65;
}
.newsletter-trigger {
  display:inline-flex;
  align-items:center;
  gap:16px;
  padding:0;
  border:0;
  background:transparent;
  color:#c7d93b;
  font:700 12px/1.2 "Montserrat",sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  cursor:pointer;
}
.newsletter-trigger span { font-size:18px; line-height:1; }
.newsletter-trigger:hover { color:#d3e657; }
.newsletter-soft small {
  display:block;
  margin-top:13px;
  color:#718188;
  font:500 11px/1.45 "Manrope",sans-serif;
}

.newsletter-modal {
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .25s var(--ease), visibility .25s var(--ease);
}
.newsletter-modal.is-open {
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.newsletter-modal-backdrop {
  position:absolute;
  inset:0;
  background:rgba(4,7,9,.78);
  backdrop-filter:blur(8px);
}
.newsletter-dialog {
  position:relative;
  width:min(100%,620px);
  max-height:min(90vh,760px);
  overflow:auto;
  padding:46px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:28px;
  background:
    radial-gradient(circle at 88% 6%, rgba(127,156,168,.16), transparent 31%),
    #11191d;
  box-shadow:0 30px 90px rgba(0,0,0,.45);
  transform:translateY(16px) scale(.985);
  transition:transform .25s var(--ease);
  outline:none;
}
.newsletter-modal.is-open .newsletter-dialog {
  transform:translateY(0) scale(1);
}
.newsletter-close {
  position:absolute;
  top:18px;
  right:20px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;
  background:transparent;
  color:#c6d0d3;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.newsletter-close:hover { border-color:#7f9ca8; color:#fff; }
.newsletter-dialog h2 {
  margin:14px 0 16px;
  max-width:500px;
  font:600 clamp(32px,4vw,48px)/1.04 "Montserrat",sans-serif;
  letter-spacing:-.045em;
}
.newsletter-dialog-lead {
  margin:0 0 30px;
  color:#a5b2b6;
  line-height:1.7;
}
.newsletter-form {
  display:grid;
  gap:16px;
}
.newsletter-form > label:not(.newsletter-consent) {
  display:grid;
  gap:8px;
  color:#9aa6aa;
  font:700 11px/1.2 "Montserrat",sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.newsletter-form input[type="text"],
.newsletter-form input[type="email"] {
  width:100%;
  border:1px solid rgba(255,255,255,.15);
  background:#0d1417;
  color:#fff;
  border-radius:14px;
  padding:15px 16px;
  outline:none;
  font:500 15px/1.4 "Manrope",sans-serif;
  transition:border-color .2s;
}
.newsletter-form input:focus {
  border-color:var(--accent-bright);
}
.newsletter-consent {
  display:grid;
  grid-template-columns:20px 1fr;
  gap:12px;
  align-items:start;
  margin-top:4px;
  color:#8f9ca1;
  font:500 12px/1.55 "Manrope",sans-serif;
  text-transform:none;
  letter-spacing:0;
}
.newsletter-consent input {
  width:17px;
  height:17px;
  margin:2px 0 0;
  accent-color:var(--accent);
}
.newsletter-submit {
  justify-self:start;
  margin-top:8px;
}
.newsletter-status {
  min-height:1.5em;
  margin:0;
  color:var(--accent-bright);
  font-size:13px;
}
body.newsletter-open {
  overflow:hidden;
}

@media (max-width:620px) {
  .newsletter-soft { margin-top:34px; }
  .newsletter-dialog { padding:38px 22px 28px; border-radius:22px; }
  .newsletter-dialog h2 { font-size:34px; }
  .newsletter-submit { width:100%; }
}

/* v2.13 – final portrait in O mně */
.about-portrait {
  position:relative;
  margin:0;
  width:min(100%,520px);
  aspect-ratio:1239 / 1536;
  overflow:visible;
  border-radius:28px;
  background:#cfd7da;
  box-shadow:0 28px 70px rgba(14,15,18,.16);
}
.about-portrait img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  border-radius:inherit;
}
.about-portrait::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  border:1px solid rgba(14,15,18,.08);
  border-radius:inherit;
}
.about-portrait-accent {
  position:absolute;
  z-index:2;
  right:28px;
  bottom:-16px;
  width:52px;
  height:6px;
  border-radius:999px;
  background:var(--accent);
  box-shadow:18px 14px 0 -1px #7f9ca8;
}
@media (max-width:1180px) {
  .about-portrait { max-width:500px; }
}
@media (max-width:620px) {
  .about-portrait { width:100%; border-radius:22px; }
  .about-portrait-accent { right:20px; bottom:-14px; width:44px; height:5px; box-shadow:14px 11px 0 -1px #7f9ca8; }
}

/* v2.21 – Czech typographic line-break rules */
p, li, blockquote, summary, .section-heading-note,
.role-panel, .case-copy, .reference-quotes, .faq-list, .contact-layout {
  text-wrap: pretty;
}
h1, h2, h3 {
  text-wrap: balance;
}

@media (max-width:900px) {
  .fit-filter { grid-template-columns:1fr; }
  .fit-filter-column { padding:26px 0 28px; }
  .fit-filter-column + .fit-filter-column {
    border-left:0;
    border-top:1px solid rgba(7,10,12,.18);
    padding:28px 0;
  }
}

.fit-filter--single {
  grid-template-columns:1fr;
  margin-top:38px;
}
.fit-filter--single .fit-filter-column {
  padding:26px 0 28px;
}
.fit-filter--single .fit-filter-column + .fit-filter-column {
  border-left:0;
  padding-left:0;
}
.fit-filter--single ul {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px 42px;
}
@media (max-width:900px) {
  .fit-filter--single ul { grid-template-columns:1fr; gap:10px; }
}

/* v2.57 – compact "not a fit" editorial note */
.fit-filter--single {
  margin-top:38px;
  display:grid;
  grid-template-columns:minmax(220px,.42fr) minmax(0,1.58fr);
  align-items:start;
  border-top:1px solid rgba(7,10,12,.18);
  border-bottom:1px solid rgba(7,10,12,.18);
}
.fit-filter--single .fit-filter-column {
  display:contents;
}
.fit-filter--single .fit-filter-kicker {
  grid-column:1;
  margin:0;
  padding:28px 44px 28px 0;
  align-self:start;
  font:700 11px "Montserrat",sans-serif;
  letter-spacing:.12em;
  color:#607985;
}
.fit-filter--single ul {
  grid-column:2;
  margin:0;
  padding:0 0 0 clamp(40px,5vw,72px);
  list-style:none;
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  border-left:1px solid rgba(7,10,12,.18);
}
.fit-filter--single li {
  position:relative;
  padding:18px 0 18px 22px;
  color:#2f3b40;
  line-height:1.5;
  border-bottom:1px solid rgba(7,10,12,.12);
}
.fit-filter--single li:last-child { border-bottom:0; }
.fit-filter--single li::before {
  content:"";
  position:absolute;
  left:0;
  top:1.55em;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#7f9ca8;
}

@media (max-width:900px) {
  .fit-filter--single {
    grid-template-columns:1fr;
  }
  .fit-filter--single .fit-filter-kicker {
    grid-column:1;
    padding:24px 0 18px;
  }
  .fit-filter--single ul {
    grid-column:1;
    padding-left:0;
    border-left:0;
    border-top:1px solid rgba(7,10,12,.18);
  }
}

/* v2.58 – align "not a fit" list with the preceding editorial row */
.fit-filter--single {
  grid-template-columns:74px minmax(300px,.92fr) minmax(340px,1.08fr);
  column-gap:clamp(28px,4vw,70px);
}
.fit-filter--single .fit-filter-kicker {
  grid-column:1 / 3;
  padding:28px 0;
}
.fit-filter--single ul {
  grid-column:3;
  padding-left:0;
  border-left:0;
}
@media (max-width:1180px) {
  .fit-filter--single {
    grid-template-columns:60px minmax(260px,.9fr) 1.1fr;
    column-gap:34px;
  }
}
@media (max-width:900px) {
  .fit-filter--single {
    grid-template-columns:1fr;
  }
  .fit-filter--single .fit-filter-kicker,
  .fit-filter--single ul {
    grid-column:1;
  }
}

/* v2.59 – close the empty middle gap in the "not a fit" block */
.fit-filter--single .fit-filter-kicker {
  grid-column:1;
  padding:28px 0;
}
.fit-filter--single ul {
  grid-column:2 / 4;
  padding-left:0;
  max-width:860px;
}


/* outcomes: compact + interactive */
.section--outcomes {
  background:linear-gradient(135deg,#17262e 0%,#28404c 46%,#0b1114 100%);
  padding:clamp(72px,7vw,100px) 0;
}
.outcome-compact {
  display:grid;
  grid-template-columns:minmax(260px,.76fr) minmax(0,1.24fr);
  gap:clamp(34px,5vw,84px);
  align-items:start;
}
.outcome-summary {
  max-width:470px;
}
.outcome-summary h2 {
  margin:12px 0 0;
  font-size:clamp(34px,3vw,44px);
  line-height:1.08;
  letter-spacing:-.04em;
}
.outcome-summary > p:not(.eyebrow) {
  color:#c3cdd1;
  line-height:1.72;
  margin:20px 0 24px;
  max-width:430px;
}
.outcome-widget {
  min-height:min(54vh,460px);
  padding:28px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:32px;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));
  box-shadow:0 18px 40px rgba(0,0,0,.14);
}
.outcome-nav {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.outcome-chip {
  appearance:none;
  width:100%;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.03);
  color:#eef2f4;
  border-radius:20px;
  padding:15px 16px;
  display:grid;
  grid-template-columns:42px 1fr;
  gap:14px;
  align-items:center;
  text-align:left;
  cursor:pointer;
  transition:border-color .2s var(--ease), background .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);
}
.outcome-chip:hover {
  transform:translateY(-2px);
  border-color:rgba(199,217,59,.34);
}
.outcome-chip.is-active {
  background:rgba(199,217,59,.08);
  border-color:rgba(199,217,59,.48);
  box-shadow:0 0 0 1px rgba(199,217,59,.16) inset;
}
.outcome-chip span:last-child {
  font:700 13px/1.35 Montserrat,sans-serif;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.outcome-chip-icon {
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  display:grid;
  place-items:center;
  color:var(--accent-bright);
  background:rgba(11,17,20,.24);
}
.outcome-chip-icon svg {
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.outcome-panels {
  position:relative;
  margin-top:22px;
}
.outcome-panel {
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  gap:26px;
  align-items:center;
  min-height:190px;
}
.outcome-panel[hidden] { display:none; }
.outcome-panel-number {
  display:inline-block;
  font:700 11px Montserrat,sans-serif;
  letter-spacing:.16em;
  color:var(--accent-bright);
  margin-bottom:10px;
}
.outcome-panel h3 {
  margin:0 0 10px;
  font-size:clamp(28px,2.5vw,36px);
  line-height:1.08;
  letter-spacing:-.04em;
}
.outcome-panel p {
  margin:0;
  color:#aebbc0;
  line-height:1.68;
  max-width:500px;
}
.outcome-visual {
  height:170px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));
  position:relative;
  overflow:hidden;
}
.outcome-visual::before {
  content:"";
  position:absolute;
  inset:16px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.06);
}
.outcome-visual--direction span {
  position:absolute;
  bottom:36px;
  width:22px;
  background:#7f9ca8;
  border-radius:12px 12px 0 0;
}
.outcome-visual--direction span:nth-child(1) { left:42px; height:38px; }
.outcome-visual--direction span:nth-child(2) { left:74px; height:62px; }
.outcome-visual--direction span:nth-child(3) { left:106px; height:88px; background:var(--accent-bright); }
.outcome-visual--direction i {
  position:absolute;
  left:44px;
  top:48px;
  width:92px;
  height:44px;
  border-top:2px solid rgba(255,255,255,.76);
  border-right:2px solid rgba(255,255,255,.76);
  transform:skewY(-24deg) rotate(10deg);
}
.outcome-visual--context span,
.outcome-visual--context i,
.outcome-visual--control span,
.outcome-visual--control i {
  position:absolute;
  border-radius:50%;
}
.outcome-visual--context span { width:18px; height:18px; background:var(--accent-bright); }
.outcome-visual--context span:nth-child(1) { left:42px; top:76px; }
.outcome-visual--context span:nth-child(2) { left:116px; top:44px; background:#7f9ca8; }
.outcome-visual--context span:nth-child(3) { left:122px; top:104px; background:#dce4e1; }
.outcome-visual--context i:nth-child(4),
.outcome-visual--context i:nth-child(5) {
  border:1px solid rgba(255,255,255,.46);
  background:transparent;
}
.outcome-visual--context i:nth-child(4) { left:51px; top:73px; width:77px; height:44px; border-width:1px 0 0 1px; transform:rotate(-18deg); border-radius:0; }
.outcome-visual--context i:nth-child(5) { left:52px; top:82px; width:82px; height:34px; border-width:0 0 1px 1px; transform:rotate(18deg); border-radius:0; }
.outcome-visual--decision span {
  position:absolute;
  left:44px;
  right:44px;
  height:12px;
  border-radius:999px;
  background:rgba(127,156,168,.32);
}
.outcome-visual--decision span:nth-child(1) { top:48px; }
.outcome-visual--decision span:nth-child(2) { top:80px; width:58%; background:rgba(127,156,168,.42); }
.outcome-visual--decision span:nth-child(3) { top:112px; width:76%; background:rgba(199,217,59,.72); }
.outcome-visual--decision i {
  position:absolute;
  right:46px;
  top:41px;
  width:54px;
  height:54px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(11,17,20,.3);
}
.outcome-visual--decision i::before,
.outcome-visual--decision i::after {
  content:"";
  position:absolute;
}
.outcome-visual--decision i::before {
  left:16px; top:25px; width:10px; height:5px; border-left:2px solid var(--accent-bright); border-bottom:2px solid var(--accent-bright); transform:rotate(-45deg);
}
.outcome-visual--decision i::after {
  left:24px; top:17px; width:16px; height:10px; border-left:2px solid var(--accent-bright); border-bottom:2px solid var(--accent-bright); transform:rotate(-45deg);
}
.outcome-visual--control span:nth-child(1) {
  inset:35px;
  border:1px solid rgba(255,255,255,.22);
}
.outcome-visual--control span:nth-child(2) {
  inset:56px;
  border:1px solid rgba(127,156,168,.45);
}
.outcome-visual--control i:nth-child(3),
.outcome-visual--control i:nth-child(4) {
  width:10px;
  height:10px;
  background:var(--accent-bright);
}
.outcome-visual--control i:nth-child(3) { right:42px; top:78px; }
.outcome-visual--control i:nth-child(4) { left:54px; bottom:44px; background:#7f9ca8; }
.outcome-visual--control::after {
  content:"";
  position:absolute;
  left:63px;
  top:50px;
  width:72px;
  height:72px;
  border:2px solid rgba(255,255,255,.68);
  border-left-color:transparent;
  border-bottom-color:transparent;
  border-radius:50%;
  transform:rotate(18deg);
}

@media (max-width:1180px) {
  .outcome-compact { grid-template-columns:1fr; gap:28px; }
  .outcome-summary { max-width:none; }
}
@media (max-width:900px) {
  .section--outcomes { padding:76px 0; }
  .outcome-widget { min-height:0; padding:22px 20px; }
  .outcome-nav { grid-template-columns:1fr; }
  .outcome-panel { grid-template-columns:1fr; }
  .outcome-visual { height:150px; order:-1; }
}


/* v2.62 – content refresh for outcomes */
.outcome-summary > p:not(.eyebrow) {
  max-width: 450px;
}

.outcome-widget {
  min-height: min(56vh, 520px);
}

.outcome-nav {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.outcome-chip {
  min-height: 78px;
}

.outcome-chip span:last-child {
  font-size: 12px;
  line-height: 1.32;
}

.outcome-panels {
  margin-top: 24px;
}

.outcome-panel {
  grid-template-columns: minmax(0, 1fr) 210px;
  min-height: 250px;
}

.outcome-panel h3 {
  margin-bottom: 12px;
}

.outcome-panel-copy p {
  margin: 0;
  color: #aebbc0;
  line-height: 1.72;
  max-width: 560px;
}

.outcome-panel-copy p + p {
  margin-top: 12px;
}

.outcome-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.outcome-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: #dbe2e4;
  font: 600 11px/1.2 "Montserrat", sans-serif;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.outcome-visual {
  height: 190px;
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}

.outcome-visual--time span,
.outcome-visual--time i,
.outcome-visual--money span,
.outcome-visual--money i,
.outcome-visual--capital span,
.outcome-visual--capital i,
.outcome-visual--overview span,
.outcome-visual--relief span,
.outcome-visual--relief i,
.outcome-visual--flex span,
.outcome-visual--flex i {
  position: absolute;
}

.outcome-visual--time span:nth-child(1) {
  inset: 38px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50%;
}
.outcome-visual--time span:nth-child(2) {
  inset: 58px;
  border: 1px solid rgba(127,156,168,.35);
  border-radius: 50%;
}
.outcome-visual--time i:nth-child(3) {
  left: 104px;
  top: 59px;
  width: 2px;
  height: 42px;
  background: var(--accent-bright);
  border-radius: 2px;
}
.outcome-visual--time i:nth-child(4) {
  left: 104px;
  top: 94px;
  width: 34px;
  height: 2px;
  background: #dbe2e4;
  border-radius: 2px;
  transform: rotate(28deg);
  transform-origin: left center;
}

.outcome-visual--money span {
  bottom: 36px;
  width: 26px;
  background: rgba(127,156,168,.5);
  border-radius: 14px 14px 0 0;
}
.outcome-visual--money span:nth-child(1) { left: 48px; height: 48px; }
.outcome-visual--money span:nth-child(2) { left: 84px; height: 78px; }
.outcome-visual--money span:nth-child(3) { left: 120px; height: 112px; background: rgba(199,217,59,.85); }
.outcome-visual--money i {
  left: 46px;
  top: 52px;
  width: 110px;
  height: 46px;
  border-top: 2px solid rgba(255,255,255,.72);
  border-right: 2px solid rgba(255,255,255,.72);
  transform: skewY(-22deg) rotate(10deg);
}

.outcome-visual--capital span {
  width: 74px;
  height: 20px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.04);
  left: 58px;
}
.outcome-visual--capital span:nth-child(1) { top: 46px; }
.outcome-visual--capital span:nth-child(2) { top: 84px; left: 92px; }
.outcome-visual--capital span:nth-child(3) { top: 122px; left: 72px; }
.outcome-visual--capital i {
  left: 120px;
  top: 64px;
  width: 2px;
  height: 56px;
  background: linear-gradient(180deg, rgba(255,255,255,.55), rgba(199,217,59,.75));
}

.outcome-visual--overview {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  padding: 44px;
}
.outcome-visual--overview span {
  position: relative;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}
.outcome-visual--overview span:nth-child(1)::after,
.outcome-visual--overview span:nth-child(2)::after,
.outcome-visual--overview span:nth-child(3)::after,
.outcome-visual--overview span:nth-child(4)::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  top: 18px;
  height: 2px;
  background: rgba(255,255,255,.28);
  box-shadow: 0 12px 0 rgba(255,255,255,.18), 0 24px 0 rgba(199,217,59,.55);
}

.outcome-visual--relief span:nth-child(1) {
  left: 52px;
  right: 52px;
  top: 58px;
  height: 1px;
  background: rgba(255,255,255,.22);
}
.outcome-visual--relief span:nth-child(2) {
  left: 92px;
  top: 88px;
  width: 56px;
  height: 56px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 50%;
}
.outcome-visual--relief i:nth-child(3) {
  left: 122px;
  top: 72px;
  width: 2px;
  height: 26px;
  background: var(--accent-bright);
  border-radius: 2px;
}
.outcome-visual--relief i:nth-child(4) {
  left: 122px;
  top: 98px;
  width: 20px;
  height: 2px;
  background: var(--accent-bright);
  border-radius: 2px;
  transform: rotate(32deg);
  transform-origin: left center;
}

.outcome-visual--flex span {
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.2);
}
.outcome-visual--flex span:nth-child(1) { inset: 34px; }
.outcome-visual--flex span:nth-child(2) { inset: 56px; border-color: rgba(127,156,168,.35); }
.outcome-visual--flex span:nth-child(3) { inset: 78px; border-color: rgba(199,217,59,.55); }
.outcome-visual--flex i:nth-child(4),
.outcome-visual--flex i:nth-child(5) {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--accent-bright);
}
.outcome-visual--flex i:nth-child(4) { right: 40px; top: 82px; }
.outcome-visual--flex i:nth-child(5) { left: 54px; bottom: 40px; background: #7f9ca8; }

@media (max-width: 1180px) {
  .outcome-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .outcome-nav {
    grid-template-columns: 1fr;
  }

  .outcome-panel {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .outcome-visual {
    order: -1;
    height: 160px;
  }
}


/* v2.64 – stronger CTA in outcome section */
.outcome-cta {
  margin-top: 28px;
  min-height: 56px;
  padding: 0 26px 0 30px;
  gap: 18px;
  font-size: 15px;
  letter-spacing: .055em;
}
.outcome-cta span[aria-hidden="true"] {
  font-size: 20px;
  font-weight: 900;
  line-height: 1;
  transform: translateY(-1px);
}


/* v2.65 – generated benefit illustrations */
.outcome-visual--image {
  height: 220px;
  border: 0;
  background: transparent;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
}
.outcome-visual--image::before,
.outcome-visual--image::after {
  display: none !important;
}
.outcome-visual--image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 18px 28px rgba(0,0,0,.18));
}
@media (max-width: 900px) {
  .outcome-visual--image {
    height: 190px;
  }
}

/* v2.68 – Oblasti spolupráce */
.cooperation-areas{background:#f4f6f6}
.cooperation-areas__head{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);gap:72px;align-items:end;margin-bottom:52px}
.cooperation-areas__intro{margin:0;max-width:620px;color:rgba(14,15,18,.72);font-size:17px;line-height:1.72}
.cooperation-areas__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(14,15,18,.16);border-left:1px solid rgba(14,15,18,.16)}
.cooperation-area{min-height:250px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:22px;padding:34px 36px 32px;border-right:1px solid rgba(14,15,18,.16);border-bottom:1px solid rgba(14,15,18,.16);background:rgba(255,255,255,.42)}
.cooperation-area--featured{background:#243a46;color:#fff}
.cooperation-area__number{padding-top:4px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;color:#567b86}
.cooperation-area--featured .cooperation-area__number{color:#c7d93b}
.cooperation-area h3{margin:0 0 14px;font-family:Montserrat,sans-serif;font-size:clamp(23px,2.05vw,31px);line-height:1.12}
.cooperation-area p{margin:0;font-size:15px;line-height:1.66;color:rgba(14,15,18,.72)}
.cooperation-area--featured p{color:rgba(255,255,255,.78)}
.cooperation-area__question{position:relative;margin-top:22px!important;padding:17px 0 0 18px;font-weight:600;color:#0e0f12!important}
.cooperation-area__question:before{content:"";position:absolute;left:0;top:18px;width:4px;height:calc(100% - 18px);min-height:28px;background:#c7d93b}
.cooperation-area--featured .cooperation-area__question{color:#fff!important}
.risk-number-cta{margin-top:34px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center;padding:30px 34px;background:#dce4e1;border-left:5px solid #c7d93b}
.risk-number-cta__eyebrow{display:block;margin-bottom:7px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;letter-spacing:.13em;color:#567b86}
.risk-number-cta h3{margin:0 0 7px;font-family:Montserrat,sans-serif;font-size:clamp(22px,2.1vw,30px);line-height:1.12}
.risk-number-cta p{margin:0;max-width:760px;color:rgba(14,15,18,.68);line-height:1.55}
.risk-number-cta__button{white-space:nowrap}
@media(max-width:960px){.cooperation-areas__head{grid-template-columns:1fr;gap:22px;margin-bottom:36px}.cooperation-areas__grid{grid-template-columns:1fr}.cooperation-area{min-height:0}.risk-number-cta{grid-template-columns:1fr;align-items:start}.risk-number-cta__button{width:fit-content;white-space:normal}}
@media(max-width:640px){.cooperation-area{grid-template-columns:34px minmax(0,1fr);gap:14px;padding:26px 20px 24px}.risk-number-cta{padding:24px 20px}}


/* v2.69 – interactive cooperation areas */
.cooperation-areas--interactive{background:#f4f6f6}
.cooperation-areas__head--interactive{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.75fr);gap:72px;align-items:end;margin-bottom:46px}
.areas-stage{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.65fr);background:#243a46;min-height:560px}
.areas-nav{display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.12)}
.areas-nav__item{appearance:none;border:0;border-bottom:1px solid rgba(255,255,255,.1);background:transparent;color:rgba(255,255,255,.62);display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;text-align:left;padding:0 28px;min-height:92px;cursor:pointer;transition:background .2s ease,color .2s ease}
.areas-nav__item:last-child{border-bottom:0}
.areas-nav__item:hover,.areas-nav__item:focus-visible{background:rgba(255,255,255,.045);color:#fff;outline:none}
.areas-nav__item.is-active{background:#2f4a58;color:#fff}
.areas-nav__num{font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;color:#567b86}
.areas-nav__item.is-active .areas-nav__num{color:#c7d93b}
.areas-nav__label{font-family:Montserrat,sans-serif;font-size:18px;font-weight:650;line-height:1.2}
.areas-detail{position:relative;min-width:0}
.areas-panel{display:none;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:46px;align-items:center;height:100%;padding:54px 52px 48px;color:#fff}
.areas-panel.is-active{display:grid}
.areas-panel__eyebrow{font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;letter-spacing:.14em;color:#c7d93b;margin-bottom:16px}
.areas-panel h3{margin:0 0 20px;font-family:Montserrat,sans-serif;font-size:clamp(30px,3.2vw,48px);line-height:1.06;max-width:720px}
.areas-panel p{margin:0;max-width:650px;color:rgba(255,255,255,.74);font-size:16px;line-height:1.72}
.areas-panel__question{margin-top:30px!important;padding-left:18px;border-left:4px solid #c7d93b;color:#fff!important;font-weight:650}
.areas-visual{position:relative;min-height:330px}
.areas-node,.areas-core,.areas-plan-label,.liquidity-mark,.risk-mark,.debt-label,.pension-goal{position:absolute;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em}
.areas-node{border:1px solid rgba(255,255,255,.24);padding:9px 12px;color:rgba(255,255,255,.7)}
.areas-node--a{left:8%;top:12%}.areas-node--b{right:3%;top:28%}.areas-node--c{left:22%;bottom:10%}
.areas-core{left:45%;top:47%;transform:translate(-50%,-50%);font-size:18px;color:#fff}
.areas-line{position:absolute;height:1px;background:rgba(255,255,255,.26);transform-origin:left center}
.areas-line--1{width:39%;left:18%;top:28%;transform:rotate(18deg)}
.areas-line--2{width:35%;left:47%;top:50%;transform:rotate(-22deg)}
.areas-line--3{width:34%;left:29%;top:65%;transform:rotate(-38deg)}
.areas-accent-dot{position:absolute;width:16px;height:16px;border-radius:50%;background:#c7d93b;left:57%;top:41%}
.areas-step{position:absolute;width:54px;height:54px;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;font-family:Montserrat,sans-serif;font-weight:700}
.areas-step--1{left:8%;bottom:14%}.areas-step--2{left:41%;top:43%}.areas-step--3{right:7%;top:12%;border-color:#c7d93b}
.areas-path{position:absolute;height:1px;background:rgba(255,255,255,.28);transform-origin:left}
.areas-path--1{width:42%;left:18%;bottom:28%;transform:rotate(-24deg)}.areas-path--2{width:40%;left:49%;top:44%;transform:rotate(-28deg)}
.areas-plan-label{right:4%;bottom:16%;color:#c7d93b}
.liquidity-bar{position:absolute;bottom:15%;width:16%;border:1px solid rgba(255,255,255,.3);border-bottom:4px solid #c7d93b}
.liquidity-bar--1{height:30%;left:15%}.liquidity-bar--2{height:52%;left:42%}.liquidity-bar--3{height:75%;right:14%}
.liquidity-mark{left:12%;top:12%;color:rgba(255,255,255,.72)}
.risk-ring{position:absolute;border:1px solid rgba(255,255,255,.28);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.risk-ring--1{width:230px;height:230px}.risk-ring--2{width:150px;height:150px;border-color:rgba(199,217,59,.8)}
.risk-shield{position:absolute;left:50%;top:50%;width:62px;height:78px;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:30px 30px 18px 18px}
.risk-mark{right:7%;top:12%;color:#c7d93b}
.debt-line{position:absolute;height:1px;background:rgba(255,255,255,.27);left:10%}
.debt-line--1{width:70%;top:38%;transform:rotate(-8deg)}.debt-line--2{width:58%;top:60%;transform:rotate(8deg)}
.debt-arrow{position:absolute;right:17%;top:43%;font-size:52px;color:#c7d93b}
.debt-label{left:8%;top:20%;color:rgba(255,255,255,.68)}.debt-label--end{right:8%;left:auto;bottom:16%;top:auto;color:#fff}
.pension-line{position:absolute;left:10%;right:8%;top:54%;height:1px;background:rgba(255,255,255,.27)}
.pension-dot{position:absolute;top:49%;width:18px;height:18px;border-radius:50%;border:2px solid #fff;background:#243a46}
.pension-dot--1{left:18%}.pension-dot--2{left:48%}.pension-dot--3{right:12%;border-color:#c7d93b;background:#c7d93b}
.pension-goal{right:7%;top:30%;color:#c7d93b}
.risk-number-feature{
  margin-top:34px;
  display:grid;
  grid-template-columns:30.38% 52px minmax(0,1fr) auto;
  align-items:center;
  background:#0e0f12;
  color:#fff;
  padding:26px 34px 26px 0;
  min-height:235px;
}
.risk-number-feature__visual{
  grid-column:1;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  padding:0 20px;
}
.risk-number-feature__visual img{
  display:block;
  width:100%;
  max-width:440px;
  height:auto;
  transform:translateY(9px);
}
.risk-number-feature__copy{
  grid-column:3;
  align-self:center;
  min-width:0;
  max-width:700px;
  padding:0;
}
.risk-number-feature__copy::before{content:none}
.risk-number-feature__eyebrow{
  font-family:Montserrat,sans-serif;
  font-size:11px;
  font-weight:700;
  letter-spacing:.14em;
  color:#c7d93b;
}
.risk-number-feature h3{
  margin:6px 0 10px;
  font-family:Montserrat,sans-serif;
  font-size:clamp(24px,2.3vw,34px);
}
.risk-number-feature p{
  margin:0;
  max-width:700px;
  color:rgba(255,255,255,.72);
  line-height:1.65;
  font-style:italic;
}
.risk-number-feature__button{
  grid-column:4;
  justify-self:end;
  align-self:center;
  white-space:nowrap;
  margin-left:34px;
}
@media(max-width:1200px){
  .areas-stage{grid-template-columns:1fr}
  .areas-nav{display:grid;grid-template-columns:repeat(3,1fr);border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
  .areas-nav__item{min-height:82px;padding:16px 18px}
  .areas-panel{grid-template-columns:1fr;gap:24px}
  .areas-visual{min-height:250px}
  .risk-number-feature{grid-template-columns:minmax(320px,.9fr) 34px minmax(0,1fr) auto;padding:26px 30px 26px 0}
  .risk-number-feature__visual{padding:0 18px}
  .risk-number-feature__visual img{max-width:400px}
  .risk-number-feature__copy{max-width:620px}
  .risk-number-feature p{max-width:620px}
  .risk-number-feature__button{margin-left:26px}
}
@media(max-width:920px){
  .risk-number-feature{grid-template-columns:1fr;padding:28px 22px;row-gap:22px}
  .risk-number-feature__visual{grid-column:1;padding:0;justify-content:center}
  .risk-number-feature__visual img{max-width:520px;transform:none}
  .risk-number-feature__copy{grid-column:1;max-width:none}
  .risk-number-feature p{max-width:none}
  .risk-number-feature__button{grid-column:1;justify-self:start;width:fit-content;white-space:normal;margin:0}
}
@media(max-width:720px){
  .cooperation-areas__head--interactive{grid-template-columns:1fr;gap:20px}
  .areas-nav{grid-template-columns:1fr}
  .areas-nav__item{min-height:68px}
  .areas-panel{padding:34px 24px 30px}
  .areas-visual{min-height:220px}
  .risk-number-feature__button{width:100%}
}


/* v2.70 – stronger section heading, redundant intro removed */
.cooperation-areas__title{
  margin-bottom:42px;
}
.cooperation-areas__title h2{
  margin:8px 0 0;
  font-family:Montserrat,sans-serif;
  font-size:clamp(38px,3.5vw,54px);
  line-height:1.06;
  letter-spacing:-.025em;
  color:#0e0f12;
}


/* v2.71 – heading aligned with the website section system */
.section-heading--areas{
  display:block;
  margin-bottom:42px;
}
.section-heading--areas h2{
  max-width:760px;
}


/* v2.72 – contrast fix for cooperation areas heading */
.section-heading--areas .eyebrow,
.section-heading--areas .eyebrow--dark{
  color:#567B86 !important;
}
.section-heading--areas .eyebrow span,
.section-heading--areas .eyebrow--dark span{
  color:#C7D93B !important;
}
.section-heading--areas h2{
  color:#0E0F12 !important;
}


/* v2.74 – generated illustrations for cooperation areas */
.areas-visual--image{
  min-height:330px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
}
.areas-visual--image img{
  display:block;
  width:100%;
  max-width:430px;
  height:330px;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,.18));
}
@media(max-width:1050px){
  .areas-visual--image{min-height:250px}
  .areas-visual--image img{height:250px;max-width:360px}
}
@media(max-width:720px){
  .areas-visual--image{min-height:220px}
  .areas-visual--image img{height:220px;max-width:320px}
}


/* v2.76 – section 01 rebuilt as a compact five-card composition */
.fit-cards-section{
  position:relative;
  overflow:hidden;
}
.fit-cards-section::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-250px;
  top:-210px;
  border:1px solid rgba(86,123,134,.08);
  border-radius:50%;
  box-shadow:
    0 0 0 34px rgba(86,123,134,.035),
    0 0 0 70px rgba(86,123,134,.025),
    0 0 0 108px rgba(86,123,134,.018);
  pointer-events:none;
}
.fit-cards{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
  margin-top:46px;
}
.fit-card{
  position:relative;
  min-width:0;
  min-height:430px;
  padding:28px 24px 30px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(86,123,134,.18);
  border-radius:10px;
  box-shadow:0 12px 30px rgba(14,15,18,.035);
  display:flex;
  flex-direction:column;
}
.fit-card__top{
  min-height:150px;
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  margin-bottom:18px;
  border-bottom:1px solid rgba(86,123,134,.13);
}
.fit-card__number{
  position:absolute;
  top:0;
  left:0;
  font-family:Montserrat,sans-serif;
  font-size:18px;
  line-height:1;
  font-weight:700;
  letter-spacing:.04em;
  color:#567B86;
}
.fit-card__number::after{
  content:"";
  display:block;
  width:26px;
  height:2px;
  margin-top:9px;
  background:#C7D93B;
}
.fit-card__icon{
  width:150px;
  height:112px;
  margin-top:8px;
}
.fit-card__icon img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
.fit-card h3{
  margin:0 0 18px;
  min-height:6.9em;
  font-family:Montserrat,sans-serif;
  font-size:18px;
  line-height:1.38;
  letter-spacing:-.012em;
  color:#0E0F12;
}
.fit-card p{
  margin:0;
  font-size:14px;
  line-height:1.75;
  color:rgba(14,15,18,.70);
}
.fit-filter-bar{
  display:grid;
  grid-template-columns:1.15fr repeat(3,1fr);
  margin-top:24px;
  border:1px solid rgba(86,123,134,.17);
  border-radius:10px;
  background:linear-gradient(90deg,rgba(220,228,225,.60),rgba(244,246,246,.95));
  overflow:hidden;
}
.fit-filter-bar__title,
.fit-filter-bar__item{
  min-width:0;
  display:flex;
  align-items:center;
  gap:18px;
  padding:24px 26px;
}
.fit-filter-bar__item{
  border-left:1px solid rgba(86,123,134,.15);
}
.fit-filter-bar__title{
  font-family:Montserrat,sans-serif;
  font-size:13px;
  font-weight:700;
  line-height:1.45;
  letter-spacing:.08em;
  color:#567B86;
}
.fit-filter-bar__icon{
  flex:0 0 46px;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid #567B86;
  border-radius:50%;
  font-family:Manrope,sans-serif;
  font-size:30px;
  font-weight:300;
  color:#567B86;
}
.fit-filter-bar__item > span{
  flex:0 0 30px;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#567B86;
  font-size:20px;
  line-height:1;
}
.fit-filter-bar__item p{
  margin:0;
  font-size:14px;
  line-height:1.6;
  color:rgba(14,15,18,.75);
}

@media(max-width:1280px){
  .fit-cards{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .fit-card{
    min-height:390px;
  }
  .fit-filter-bar{
    grid-template-columns:1fr;
  }
  .fit-filter-bar__item{
    border-left:0;
    border-top:1px solid rgba(86,123,134,.15);
  }
}
@media(max-width:820px){
  .fit-cards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:560px){
  .fit-cards{
    grid-template-columns:1fr;
    gap:12px;
    margin-top:30px;
  }
  .fit-card{
    min-height:0;
    padding:24px 20px;
  }
  .fit-card__top{
    min-height:128px;
  }
  .fit-card h3{
    min-height:0;
  }
  .fit-filter-bar__title,
  .fit-filter-bar__item{
    padding:20px;
  }
}

/* v2.94 – process section eyebrow in brand slate */
.process-section .eyebrow,
.process-section .eyebrow--dark{
  color:#567B86;
}

/* v2.95 – first section eyebrow in brand slate */
.fit-cards-section .eyebrow,
.fit-cards-section .eyebrow--dark{
  color:#567B86;
}

@media(max-width:1100px){
  .reference-proof{
    grid-template-columns:160px minmax(0,1fr);
  }
  .reference-proof__button{
    grid-column:1/-1;
    justify-self:start;
  }
}
@media(max-width:820px){
  .reference-cards{
    grid-template-columns:1fr;
  }
  .reference-card{
    min-height:0;
  }
  .reference-proof{
    grid-template-columns:1fr;
  }
  .reference-proof__visual{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.14);
    padding-right:0;
    padding-bottom:18px;
  }
  .reference-proof__copy{
    grid-column:1;
  }
  .reference-proof__button{
    grid-column:1;
  }
}
@media(max-width:520px){
  .reference-proof{
    grid-template-columns:1fr;
    padding:26px 22px;
    gap:18px;
  }
  .reference-proof__button{
    width:100%;
    white-space:normal;
  }
}

/* v2.100 – typografická pravidla pro celý web */
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}
p, li, blockquote, summary {
  text-wrap: pretty;
}

/* v2.102 – O mně: řízený nadpis + vizuálnější profesní fakta */
.about-title {
  max-width:820px;
  font-size:clamp(42px,3.75vw,58px) !important;
  line-height:1.03 !important;
  text-wrap:normal !important;
}
.about-title-break { display:block; }

/* místo suchého čtyřsloupcového stripu: 2×2 editorial proof grid */
.fact-strip--about {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  margin-top:44px;
  border:1px solid rgba(14,15,18,.14);
  background:rgba(14,15,18,.14);
}
.fact-strip--about .fact-item {
  min-height:132px;
  padding:24px 26px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:18px;
  align-items:center;
  background:rgba(244,247,247,.72);
  border:0;
}
.fact-strip--about .fact-item + .fact-item {
  border-left:0;
  padding-left:26px;
}
.fact-item__icon {
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(86,123,134,.28);
  border-radius:50%;
  position:relative;
}
.fact-item__icon::after {
  content:"";
  position:absolute;
  right:-3px;
  top:4px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#c7d93b;
}
.fact-item__icon svg {
  width:27px;
  height:27px;
  fill:none;
  stroke:#567b86;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.fact-item__copy {
  min-width:0;
}
.fact-strip--about .fact-item__copy strong {
  display:block;
  margin:0 0 7px;
  color:#101719;
  font:600 18px/1.05 "Montserrat",sans-serif;
  letter-spacing:-.02em;
}
.fact-strip--about .fact-item:first-child .fact-item__copy strong {
  font-size:27px;
}
.fact-strip--about .fact-item__copy span {
  display:block;
  max-width:220px;
  color:#617278;
  font:600 11px/1.45 "Manrope",sans-serif;
}

@media(max-width:1180px){
  .about-title {
    max-width:760px;
  }
}
@media(max-width:700px){
  .about-title-break { display:none; }
  .about-title { text-wrap:balance !important; }
  .fact-strip--about {
    grid-template-columns:1fr;
  }
  .fact-strip--about .fact-item {
    min-height:112px;
  }
}

/* v2.103 – O mně: editorial quote + full-width credentials */
.about-clean-layout {
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  align-items:start;
}

.about-title {
  max-width:780px;
  margin-bottom:0;
  font-size:clamp(42px,3.8vw,59px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em;
  text-wrap:normal !important;
}

.about-story {
  position:relative;
  margin:34px 0 0;
  max-width:790px;
  padding:2px 0 0 34px;
  border-left:1px solid rgba(86,123,134,.34);
}
.about-story__quote {
  position:absolute;
  left:-9px;
  top:-17px;
  width:18px;
  background:#dfe6e8;
  color:#c7d93b;
  font:500 48px/1 Georgia,serif;
  text-align:center;
}
.about-story p {
  margin:0;
  color:#465a61;
  font:italic 500 15px/1.78 "Manrope",sans-serif;
  letter-spacing:-.006em;
  text-wrap:pretty;
}
.about-story p + p {
  margin-top:18px;
}
.about-story strong {
  color:#182125;
  font-weight:700;
}
.about-story__closing {
  color:#182125 !important;
  font-weight:650 !important;
}

/* Full-width line under both portrait and text */
.about-credentials {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:58px;
  padding-top:0;
  border-top:1px solid rgba(14,15,18,.20);
}
.about-credential {
  position:relative;
  min-height:150px;
  padding:25px 28px 18px 0;
}
.about-credential + .about-credential {
  padding-left:30px;
  border-left:1px solid rgba(14,15,18,.14);
}
.about-credential::before {
  content:"";
  position:absolute;
  top:-2px;
  left:0;
  width:42px;
  height:3px;
  background:#c7d93b;
}
.about-credential + .about-credential::before {
  left:30px;
}
.about-credential__index {
  display:block;
  margin-bottom:24px;
  color:#6d939e;
  font:700 9px/1 "Montserrat",sans-serif;
  letter-spacing:.18em;
}
.about-credential strong {
  display:block;
  margin-bottom:8px;
  color:#0e1112;
  font:600 clamp(22px,2.1vw,31px)/1 "Montserrat",sans-serif;
  letter-spacing:-.035em;
}
.about-credential span:last-child {
  display:block;
  max-width:230px;
  color:#617278;
  font:600 12px/1.5 "Manrope",sans-serif;
}

/* neutralizace předchozího ikonového proof-gridu */
.fact-strip--about,
.fact-item,
.fact-item__icon,
.fact-item__copy {
  all:unset;
}

@media(max-width:1180px){
  .about-clean-layout {
    grid-template-columns:1fr;
  }
  .about-portrait {
    max-width:560px;
  }
  .about-credentials {
    grid-column:1;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .about-credential:nth-child(3) {
    border-left:0;
    padding-left:0;
    border-top:1px solid rgba(14,15,18,.14);
  }
  .about-credential:nth-child(3)::before {
    left:0;
  }
  .about-credential:nth-child(4) {
    border-top:1px solid rgba(14,15,18,.14);
  }
}
@media(max-width:700px){
  .about-title br {
    display:none;
  }
  .about-title {
    text-wrap:balance !important;
  }
  .about-story {
    padding-left:24px;
  }
  .about-credentials {
    grid-template-columns:1fr;
    margin-top:42px;
  }
  .about-credential,
  .about-credential + .about-credential,
  .about-credential:nth-child(3),
  .about-credential:nth-child(4) {
    min-height:0;
    padding:22px 0 24px;
    border-left:0;
    border-top:1px solid rgba(14,15,18,.14);
  }
  .about-credential:first-child {
    border-top:0;
  }
  .about-credential + .about-credential::before,
  .about-credential::before {
    left:0;
  }
  .about-credential__index {
    margin-bottom:14px;
  }
}

/* v2.104 – O mně: kompaktní editorial + autentický podpis značky */
.about-clean {
  padding-bottom:0 !important;
  overflow:hidden;
}
.about-main {
  display:grid;
  grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);
  gap:clamp(68px,8vw,132px);
  align-items:stretch;
}
.about-main .about-portrait {
  width:100%;
  max-width:none;
  height:100%;
  min-height:585px;
  aspect-ratio:auto;
  overflow:hidden;
}
.about-main .about-portrait img {
  height:100%;
  object-fit:cover;
  object-position:center center;
}

.about-title {
  max-width:760px;
  margin-bottom:0;
  font-size:clamp(42px,3.7vw,58px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em;
  text-wrap:normal !important;
}
.about-story {
  position:relative;
  margin:30px 0 0;
  max-width:790px;
  padding:0 0 0 31px;
  border-left:1px solid rgba(86,123,134,.38);
}
.about-story__quote {
  position:absolute;
  left:-10px;
  top:-20px;
  width:20px;
  background:#dfe6e8;
  color:#c7d93b;
  font:500 50px/1 Georgia,serif;
  text-align:center;
}
.about-story p {
  margin:0;
  color:#465a61;
  font:italic 500 15px/1.74 "Manrope",sans-serif;
  letter-spacing:-.006em;
  text-wrap:pretty;
}
.about-story p + p {
  margin-top:16px;
}
.about-story strong {
  color:#182125;
  font-weight:700;
}
.about-story__closing {
  color:#182125 !important;
  font-weight:650 !important;
}

/* Jedna souvislá podpisová plocha místo plovoucích štítků */
.about-signature {
  position:relative;
  width:100%;
  margin-top:34px;
  background:#e7edef;
  border-top:1px solid rgba(86,123,134,.22);
  overflow:hidden;
}
.about-signature__mark {
  position:absolute;
  left:-95px;
  top:50%;
  width:430px;
  transform:translateY(-50%);
  opacity:.055;
  pointer-events:none;
}
.about-signature__inner {
  position:relative;
  z-index:1;
  min-height:210px;
  display:grid;
  grid-template-columns:1.15fr .72fr 1fr .72fr 1fr;
  align-items:stretch;
}
.about-signature__lead,
.about-stat {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px 30px;
}
.about-signature__lead {
  padding-left:0;
}
.about-signature__lead > span {
  margin-bottom:10px;
  color:#6d939e;
  font:700 10px/1 "Montserrat",sans-serif;
  letter-spacing:.16em;
}
.about-signature__lead p {
  margin:0;
  max-width:210px;
  color:#182125;
  font:600 20px/1.35 "Manrope",sans-serif;
  letter-spacing:-.02em;
}
.about-stat {
  position:relative;
  border-left:1px solid rgba(14,17,18,.12);
}
.about-stat::before {
  content:"";
  position:absolute;
  left:30px;
  top:0;
  width:34px;
  height:3px;
  background:#c7da46;
}
.about-stat strong {
  display:block;
  margin-bottom:12px;
  color:#0e1112;
  font:600 clamp(22px,2vw,30px)/1 "Montserrat",sans-serif;
  letter-spacing:-.035em;
}
.about-stat--primary strong {
  font-size:clamp(38px,3.4vw,54px);
}
.about-stat span {
  color:#5d7178;
  font:600 11px/1.48 "Manrope",sans-serif;
}

@media(max-width:1180px){
  .about-main {
    grid-template-columns:1fr;
    align-items:start;
  }
  .about-main .about-portrait {
    width:min(100%,520px);
    height:auto;
    min-height:0;
    aspect-ratio:1239 / 1536;
  }
  .about-signature__inner {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .about-signature__lead {
    grid-column:1 / -1;
    min-height:120px;
    border-bottom:1px solid rgba(14,17,18,.12);
  }
  .about-stat {
    min-height:145px;
  }
  .about-stat:nth-of-type(2),
  .about-stat:nth-of-type(4) {
    border-left:0;
  }
}
@media(max-width:700px){
  .about-title br { display:none; }
  .about-title { text-wrap:balance !important; }
  .about-story { padding-left:24px; }
  .about-signature { margin-top:28px; }
  .about-signature__inner {
    grid-template-columns:1fr;
  }
  .about-signature__lead,
  .about-stat {
    min-height:0;
    padding:26px 0;
    border-left:0;
    border-bottom:1px solid rgba(14,17,18,.12);
  }
  .about-stat::before {
    left:0;
  }
  .about-signature__lead {
    grid-column:1;
  }
  .about-signature__mark {
    left:auto;
    right:-130px;
    width:360px;
  }
}

/* v2.105 – O mně: čistá faktická řada bez nadbytečného titulku */
.about-signature__inner {
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.about-signature__lead {
  display:none !important;
}
.about-stat {
  min-height:190px;
}
.about-stat:first-child {
  border-left:0;
  padding-left:0;
}
.about-stat:first-child::before {
  left:0;
}
@media(max-width:1180px){
  .about-signature__inner {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .about-stat:nth-child(odd) {
    border-left:0;
    padding-left:0;
  }
  .about-stat:nth-child(odd)::before {
    left:0;
  }
}
@media(max-width:700px){
  .about-signature__inner {
    grid-template-columns:1fr !important;
  }
  .about-stat {
    min-height:0;
  }
}

/* v2.109 – povinné právní informace */
.legal-disclosure {
  background:#0b1012;
  border-top:1px solid rgba(255,255,255,.08);
  color:#7f8d92;
}
.legal-disclosure__inner {
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:32px;
  align-items:start;
  padding-top:28px;
  padding-bottom:28px;
}
.legal-disclosure__label {
  color:#6d939e;
  font:700 9px/1.4 "Montserrat",sans-serif;
  letter-spacing:.16em;
}
.legal-disclosure p {
  margin:0;
  max-width:1080px;
  color:#87959a;
  font:500 11px/1.7 "Manrope",sans-serif;
  text-wrap:pretty;
}
.legal-disclosure a {
  color:#b5c3c7;
  text-decoration:none;
  border-bottom:1px solid rgba(199,218,70,.35);
}
.legal-disclosure a:hover {
  color:#fff;
  border-color:#c7da46;
}
@media(max-width:720px){
  .legal-disclosure__inner {
    grid-template-columns:1fr;
    gap:12px;
  }
}

/* v2.110 – sekundární kontaktní údaje */
.contact-details {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
  max-width:620px;
}
.contact-detail {
  min-width:0;
  padding:18px 0 0;
  border-top:1px solid rgba(255,255,255,.14);
}
.contact-detail__label {
  display:block;
  margin-bottom:9px;
  color:#6d939e;
  font:700 9px/1.3 "Montserrat",sans-serif;
  letter-spacing:.15em;
}
.contact-detail__value {
  display:block;
  color:#f4f7f7;
  font:600 15px/1.45 "Manrope",sans-serif;
  text-decoration:none;
}
a.contact-detail__value:hover {
  color:#c7da46;
}
.contact-detail small {
  display:block;
  margin-top:6px;
  max-width:245px;
  color:#748388;
  font:500 11px/1.55 "Manrope",sans-serif;
}
@media(max-width:620px){
  .contact-details {
    grid-template-columns:1fr;
    gap:16px;
  }
}

/* v2.115 – kontaktní údaje přesunuty pod formulář */
.contact-side {
  min-width:0;
}
.contact-details--under-form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 28px;
  margin-top:34px;
  max-width:none;
  padding-top:4px;
  border-top:1px solid rgba(255,255,255,.14);
}
.contact-details--under-form .contact-detail {
  padding:20px 0 18px;
  border-top:0;
}
.contact-details--under-form .contact-detail--office {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  column-gap:28px;
  align-items:start;
  border-top:1px solid rgba(255,255,255,.10);
}
.contact-details--under-form .contact-detail--office .contact-detail__label {
  grid-column:1;
}
.contact-details--under-form .contact-detail--office .contact-detail__value {
  grid-column:1;
}
.contact-details--under-form .contact-detail--office small {
  grid-column:2;
  grid-row:1 / span 2;
  align-self:end;
  margin-top:0;
  max-width:260px;
}
@media(max-width:620px){
  .contact-details--under-form {
    grid-template-columns:1fr;
  }
  .contact-details--under-form .contact-detail--office {
    grid-column:1;
    grid-template-columns:1fr;
  }
  .contact-details--under-form .contact-detail--office .contact-detail__label,
  .contact-details--under-form .contact-detail--office .contact-detail__value,
  .contact-details--under-form .contact-detail--office small {
    grid-column:1;
    grid-row:auto;
  }
  .contact-details--under-form .contact-detail--office small {
    margin-top:6px;
  }
}

/* v2.116 – kontakty v jednom řádku pod formulářem */
.contact-details--under-form {
  grid-template-columns:1.35fr .75fr 1.05fr !important;
  gap:0 !important;
  align-items:stretch;
}
.contact-details--under-form .contact-detail,
.contact-details--under-form .contact-detail--office {
  display:block;
  grid-column:auto !important;
  padding:20px 22px 18px !important;
  border-top:0 !important;
  border-left:1px solid rgba(255,255,255,.10);
}
.contact-details--under-form .contact-detail:first-child {
  padding-left:0 !important;
  border-left:0;
}
.contact-details--under-form .contact-detail--office .contact-detail__label,
.contact-details--under-form .contact-detail--office .contact-detail__value,
.contact-details--under-form .contact-detail--office small {
  display:block;
  grid-column:auto !important;
  grid-row:auto !important;
}
.contact-details--under-form .contact-detail--office small {
  margin-top:6px !important;
  max-width:240px;
}
.contact-detail--email .contact-detail__label {
  color:#c7da46;
}
.contact-detail--email .contact-detail__value {
  width:max-content;
  color:#fff;
  font-size:17px;
  font-weight:700;
  padding-bottom:3px;
  border-bottom:1px solid rgba(199,218,70,.55);
}
.contact-detail--email .contact-detail__value:hover {
  color:#c7da46;
  border-color:#c7da46;
}

@media(max-width:820px){
  .contact-details--under-form {
    grid-template-columns:1fr !important;
  }
  .contact-details--under-form .contact-detail,
  .contact-details--under-form .contact-detail--office {
    padding:18px 0 !important;
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,.10) !important;
  }
  .contact-details--under-form .contact-detail:first-child {
    border-top:0 !important;
  }
}

/* v2.117 – skutečně viditelné zvýraznění e-mailu */
.contact-details--under-form .contact-detail--email {
  position:relative;
  margin-top:-1px;
  padding-left:18px !important;
  background:rgba(199,218,70,.065);
}
.contact-details--under-form .contact-detail--email::before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
  background:#c7da46;
}
.contact-details--under-form .contact-detail--email .contact-detail__label {
  color:#c7da46 !important;
}
.contact-details--under-form .contact-detail--email .contact-detail__value {
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:auto;
  color:#ffffff !important;
  font-size:17px;
  font-weight:700;
  border-bottom:1px solid rgba(199,218,70,.55);
}
.contact-details--under-form .contact-detail--email .contact-detail__value > span {
  color:#c7da46;
  font-size:14px;
}
.contact-details--under-form .contact-detail--email .contact-detail__value:hover {
  color:#c7da46 !important;
  border-color:#c7da46;
}
@media(max-width:820px){
  .contact-details--under-form .contact-detail--email {
    padding-left:16px !important;
  }
}

/* v2.118 – oprava kolize zvýraznění e-mailu s prvním sloupcem */
.contact-details--under-form .contact-detail--email {
  box-sizing:border-box;
  padding:20px 22px 18px 26px !important;
  background:rgba(199,218,70,.055);
  box-shadow:inset 3px 0 0 #c7da46;
}
.contact-details--under-form .contact-detail--email::before {
  content:none !important;
}
.contact-details--under-form .contact-detail--email .contact-detail__label,
.contact-details--under-form .contact-detail--email .contact-detail__value {
  position:relative;
  left:0;
}
.contact-details--under-form .contact-detail--email .contact-detail__value {
  padding-bottom:4px;
}
@media(max-width:820px){
  .contact-details--under-form .contact-detail--email {
    padding:18px 0 18px 22px !important;
  }
}

/* v2.119 – definitivní oprava levého odsazení zvýrazněného e-mailu.
   Předchozí pravidlo pro :first-child mělo vyšší specificitu a přepisovalo padding. */
.contact-details--under-form .contact-detail.contact-detail--email:first-child {
  padding-left:26px !important;
  padding-right:22px !important;
  box-shadow:inset 3px 0 0 #c7da46 !important;
}
@media(max-width:820px){
  .contact-details--under-form .contact-detail.contact-detail--email:first-child {
    padding-left:22px !important;
  }
}

/* ===== v2.123 – kompaktní případy z praxe ===== */
.case-row--available { position:relative; }
.case-row--available::before { content:""; position:absolute; inset:0 -18px; background:rgba(199,217,59,.035); pointer-events:none; }
.case-row--available small { color:#c7d93b; }
.case-row__open { justify-self:end; display:inline-flex; align-items:center; gap:7px; white-space:nowrap; text-decoration:none; }
.case-row__open span { font-size:14px; line-height:1; }
.case-status { color:#6f858e; font:700 9px Montserrat,sans-serif; letter-spacing:.12em; text-align:right; }

@media (max-width:1180px) {
  .case-row--available { grid-template-columns:50px minmax(0,1fr) 120px 132px; }
}
@media (max-width:900px) {
  .case-row--available { grid-template-columns:42px 1fr 118px; }
  .case-row--available > div:nth-of-type(2) { display:none; }
  .case-row--available .case-row__open { grid-column:3; }
}
@media (max-width:620px) {
  .case-row--available { grid-template-columns:32px 1fr; }
  .case-row--available .case-row__open { grid-column:2; justify-self:start; margin-top:4px; }
}

/* ===== v2.124 – lákavé popisky případů + výraznější CTA ===== */
.case-row {
  grid-template-columns:58px minmax(0,1fr) 150px 190px;
  padding:32px 0;
}
.case-row__copy { min-width:0; }
.case-row__copy h3 { text-wrap:balance; }
.case-row__copy p {
  margin:10px 0 0;
  max-width:850px;
  color:#9baab0;
  font:500 13.5px/1.62 Manrope,sans-serif;
  text-wrap:pretty;
}
.case-row__copy p strong {
  color:#e9eeee;
  font-weight:600;
}
.case-row--available::before {
  background:rgba(199,218,70,.045);
}
.case-row__open {
  position:relative;
  z-index:1;
  justify-self:end;
  min-height:42px;
  padding:0 15px;
  border:1px solid #c7da46;
  background:#c7da46;
  color:#111719 !important;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.case-row__open:hover {
  background:#d4e65b;
  border-color:#d4e65b;
  transform:translateY(-1px);
}
.case-row__open span { color:#111719; }
.case-status {
  align-self:center;
  padding:9px 0;
}

@media (max-width:1180px) {
  .case-row,
  .case-row--available { grid-template-columns:50px minmax(0,1fr) 110px 180px; }
  .case-row__copy p { max-width:720px; }
}
@media (max-width:900px) {
  .case-row,
  .case-row--available { grid-template-columns:42px minmax(0,1fr) 180px; gap:22px; }
  .case-row > div:nth-of-type(2),
  .case-row--available > div:nth-of-type(2) { display:none; }
  .case-row .case-status,
  .case-row--available .case-row__open { grid-column:3; }
}
@media (max-width:620px) {
  .case-row,
  .case-row--available { grid-template-columns:32px minmax(0,1fr); gap:12px; padding:26px 0; }
  .case-row__copy p { margin-top:9px; font-size:13px; line-height:1.58; }
  .case-row .case-status,
  .case-row--available .case-row__open { grid-column:2; justify-self:start; margin-top:7px; }
  .case-row__open { min-height:40px; }
}

/* ===== v2.126 – finální test ilustrací v případech z praxe ===== */
.case-row {
  grid-template-columns:58px minmax(0,1fr) 210px 190px;
}
.case-row__visual {
  width:210px;
  height:76px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
}
.case-row__visual img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  filter:saturate(.88) contrast(.96);
}
@media (max-width:1180px) {
  .case-row { grid-template-columns:42px minmax(0,1fr) 170px; }
  .case-row > .case-row__visual,
  .case-row--available > .case-row__visual { display:none; }
}
@media (max-width:620px) {
  .case-row,
  .case-row--available { grid-template-columns:32px minmax(0,1fr); }
}

/* ===== v2.129 – vyrovnanější rozestupy číslo / text / tlačítko ===== */
.case-row,
.case-row--available {
  grid-template-columns:96px minmax(0,820px) max-content;
  column-gap:36px;
  align-items:center;
  justify-content:start;
}
.case-row > span:first-child,
.case-row--available > span:first-child {
  display:flex;
  align-items:center;
  justify-content:center;
  align-self:stretch;
  width:100%;
  text-align:center;
}
.case-row__copy {
  padding-left:0;
  max-width:820px;
}
.case-row__copy p {
  max-width:820px;
}
.case-row .case-status,
.case-row--available .case-row__open {
  grid-column:3;
  justify-self:start;
}
.case-row__open {
  margin-left:0;
  padding:0 22px;
}
.case-status {
  min-width:148px;
  text-align:left;
}
.case-row__visual { display:none !important; }

@media (max-width:1180px) {
  .case-row,
  .case-row--available {
    grid-template-columns:84px minmax(0,740px) max-content;
    column-gap:28px;
  }
  .case-row__copy { max-width:740px; }
}
@media (max-width:900px) {
  .case-row,
  .case-row--available {
    grid-template-columns:42px minmax(0,1fr);
    gap:12px 18px;
  }
  .case-row > span:first-child,
  .case-row--available > span:first-child {
    align-self:start;
    justify-content:flex-start;
    width:auto;
  }
  .case-row__copy { padding-left:0; max-width:none; }
  .case-row .case-status,
  .case-row--available .case-row__open {
    grid-column:2;
    justify-self:start;
    margin-top:6px;
  }
}
@media (max-width:620px) {
  .case-row,
  .case-row--available { grid-template-columns:32px minmax(0,1fr); }
}

/* ===== v2.130 – posun aktivního CTA doprava ===== */
@media (min-width:901px) {
  .case-row--available .case-row__open {
    margin-left:38px;
  }
}

/* ===== v2.131 – status PŘIPRAVUJEME na stejné horizontální ose jako CTA ===== */
@media (min-width:901px) {
  .case-row .case-status {
    margin-left:38px;
  }
}


/* v2.138 – ochrana osobních údajů */
.footer-legal-link {
  color:#aebbc0;
  border-bottom:1px solid rgba(195,227,61,.28);
  transition:color .2s var(--ease), border-color .2s var(--ease);
}
.footer-legal-link:hover {
  color:#fff;
  border-color:var(--accent-bright);
}

.privacy-page { background:#eef2f3; color:#172025; }
.privacy-site-header {
  background:#070a0c;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.privacy-header-inner {
  min-height:118px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.privacy-brand { flex:0 1 350px; padding:0; }
.privacy-back {
  display:inline-flex;
  align-items:center;
  gap:14px;
  color:#c7d1d5;
  font:700 12px/1.2 "Montserrat",sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:color .2s var(--ease);
}
.privacy-back:hover { color:var(--accent-bright); }
.privacy-hero {
  background:linear-gradient(135deg,#10181c 0%,#1d313b 100%);
  padding:88px 0 82px;
}
.privacy-hero-inner { max-width:1000px; margin-left:auto; margin-right:auto; }
.privacy-hero .eyebrow { margin:0 0 18px; color:var(--accent-bright); }
.privacy-hero h1 {
  margin:0 0 24px;
  color:#f6f7f5;
  font:600 clamp(44px,5vw,72px)/1.02 "Montserrat",sans-serif;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.privacy-hero p:last-child {
  max-width:850px;
  margin:0;
  color:#c1ccd0;
  font-size:18px;
  line-height:1.72;
}
.privacy-content-section { padding:86px 0 120px; background:#eef2f3; }
.privacy-layout {
  display:grid;
  grid-template-columns:280px minmax(0,860px);
  justify-content:center;
  gap:80px;
  align-items:start;
}
.privacy-toc {
  position:sticky;
  top:32px;
  display:grid;
  gap:0;
  padding:26px 0;
  border-top:1px solid rgba(7,10,12,.18);
  border-bottom:1px solid rgba(7,10,12,.18);
}
.privacy-toc__label {
  margin-bottom:14px;
  color:#54727d;
  font:800 10px/1.3 "Montserrat",sans-serif;
  letter-spacing:.16em;
}
.privacy-toc a {
  padding:9px 0;
  color:#647278;
  font-size:12px;
  line-height:1.5;
  transition:color .2s var(--ease), transform .2s var(--ease);
}
.privacy-toc a:hover { color:#172025; transform:translateX(3px); }
.privacy-document { min-width:0; }
.privacy-block {
  scroll-margin-top:32px;
  padding:0 0 54px;
  margin:0 0 54px;
  border-bottom:1px solid rgba(7,10,12,.13);
}
.privacy-block--last { margin-bottom:0; }
.privacy-block h2 {
  margin:0 0 28px;
  color:#172025;
  font:700 clamp(24px,2.3vw,34px)/1.22 "Montserrat",sans-serif;
  letter-spacing:-.025em;
}
.privacy-block h3 {
  margin:34px 0 14px;
  color:#263940;
  font:700 17px/1.45 "Montserrat",sans-serif;
}
.privacy-block p,
.privacy-block li {
  color:#445258;
  font-size:15px;
  line-height:1.8;
  text-wrap:pretty;
}
.privacy-block p { margin:0 0 18px; }
.privacy-block ul { margin:14px 0 0; padding-left:22px; }
.privacy-block li + li { margin-top:6px; }
.privacy-block a {
  color:#315d6b;
  border-bottom:1px solid rgba(49,93,107,.35);
}
.privacy-block a:hover { color:#172025; border-color:var(--accent); }
.privacy-effective {
  margin-top:34px !important;
  padding:20px 22px;
  border-left:3px solid var(--accent);
  background:rgba(255,255,255,.55);
  color:#263940 !important;
  font-weight:600;
}

@media(max-width:900px){
  .privacy-header-inner { min-height:88px; }
  .privacy-brand .brand-logo { width:225px; }
  .privacy-hero { padding:62px 0 58px; }
  .privacy-content-section { padding:58px 0 90px; }
  .privacy-layout { grid-template-columns:1fr; gap:42px; }
  .privacy-toc { position:static; grid-template-columns:1fr 1fr; column-gap:28px; }
  .privacy-toc__label { grid-column:1/-1; }
}
@media(max-width:620px){
  .privacy-header-inner { min-height:78px; }
  .privacy-brand .brand-logo { width:190px; }
  .privacy-back { font-size:10px; gap:8px; }
  .privacy-hero { padding:48px 0 44px; }
  .privacy-hero p:last-child { font-size:16px; }
  .privacy-content-section { padding:42px 0 74px; }
  .privacy-toc { grid-template-columns:1fr; }
  .privacy-block { padding-bottom:40px; margin-bottom:40px; }
  .privacy-block h2 { font-size:24px; }
  .privacy-block h3 { font-size:16px; }
  .privacy-block p,.privacy-block li { font-size:14px; line-height:1.75; }
  .footer-inner { align-items:flex-start; }
}

/* ===== v2.140 – vlastní nastavení cookies ===== */
.cookie-settings-layout {
  max-width:980px;
}
.cookie-document {
  max-width:none;
}
.cookie-category-list {
  display:grid;
  gap:14px;
  margin:26px 0 0;
}
.cookie-category {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  padding:24px 26px;
  border:1px solid rgba(23,32,37,.12);
  border-radius:18px;
  background:rgba(255,255,255,.62);
}
.cookie-category__copy h3 {
  margin:0 0 7px;
}
.cookie-category__copy p {
  margin:0;
}
.cookie-switch {
  position:relative;
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  width:54px;
  height:30px;
  cursor:pointer;
}
.cookie-switch input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.cookie-switch span {
  position:absolute;
  inset:0;
  border-radius:999px;
  background:#aeb8bc;
  transition:background .2s var(--ease);
}
.cookie-switch span::after {
  content:"";
  position:absolute;
  width:22px;
  height:22px;
  left:4px;
  top:4px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 7px rgba(0,0,0,.18);
  transition:transform .2s var(--ease);
}
.cookie-switch input:checked + span {
  background:var(--accent-bright);
}
.cookie-switch input:checked + span::after {
  transform:translateX(24px);
}
.cookie-switch--locked { cursor:not-allowed; opacity:.72; }
.cookie-settings-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:14px 20px;
  margin-top:28px;
}
.cookie-text-button {
  appearance:none;
  border:0;
  border-bottom:1px solid rgba(23,32,37,.28);
  background:transparent;
  color:#172025;
  cursor:pointer;
  padding:7px 0;
  font:700 11px/1.2 "Montserrat",sans-serif;
  letter-spacing:.08em;
}
.cookie-text-button:hover { border-color:#172025; }
.cookie-settings-status {
  min-height:1.5em;
  margin-top:16px !important;
  font-weight:600;
}
.cookie-consent {
  position:fixed;
  z-index:2500;
  left:20px;
  right:20px;
  bottom:20px;
  max-width:1040px;
  margin:0 auto;
  padding:22px 24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
  background:#0b0f11;
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.28);
}
.cookie-consent[hidden] { display:none; }
.cookie-consent__copy strong {
  display:block;
  margin-bottom:5px;
  font:700 14px/1.3 "Montserrat",sans-serif;
}
.cookie-consent__copy p {
  margin:0;
  color:#c7d1d5;
  font-size:13px;
  line-height:1.55;
}
.cookie-consent__copy a { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.cookie-consent__actions {
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.cookie-consent__button {
  min-height:42px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.24);
  padding:0 16px;
  background:transparent;
  color:#fff;
  cursor:pointer;
  font:700 10px/1 "Montserrat",sans-serif;
  letter-spacing:.07em;
  white-space:nowrap;
}
.cookie-consent__button--primary {
  background:var(--accent-bright);
  border-color:var(--accent-bright);
  color:#101416;
}
@media (max-width:760px) {
  .cookie-category { grid-template-columns:minmax(0,1fr) auto; gap:18px; padding:20px; }
  .cookie-consent { grid-template-columns:1fr; gap:16px; left:12px; right:12px; bottom:12px; padding:18px; }
  .cookie-consent__actions { justify-content:flex-start; }
}
@media (max-width:480px) {
  .cookie-settings-actions { align-items:flex-start; flex-direction:column; }
  .cookie-consent__actions { display:grid; grid-template-columns:1fr 1fr; width:100%; }
  .cookie-consent__button { width:100%; }
  .cookie-consent__button--settings { grid-column:1 / -1; }
}


/* ===== v2.146 – mobile QA / responsive fixes ===== */
/* Prevent accidental page-wide horizontal scrolling. */
html, body {
  max-width: 100%;
  overflow-x: clip;
}
main, section, .container,
.section-heading > *,
.about-main > *,
.outcome-compact > *,
.areas-stage > * {
  min-width: 0;
}

@media (max-width: 900px) {
  /* Header must stay inside the viewport. */
  .header-inner {
    justify-content: space-between;
  }
  .brand {
    flex: 0 1 auto;
    max-width: calc(100% - 62px);
    padding-right: 12px;
  }
  .brand-logo {
    width: min(225px, 100%);
  }
  .menu-toggle {
    flex: 0 0 46px;
    margin-left: auto;
  }
  .site-nav {
    margin-left: 0;
  }

  /* Desktop hero had a left offset that survived into the mobile breakpoint. */
  .hero-copy {
    margin-left: 0 !important;
    max-width: 100%;
  }

  /* All editorial section headings become a true single column on mobile. */
  .section-heading,
  .section-heading--fit {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    align-items: start;
  }
  .section-heading--fit .section-heading-note,
  .section-heading-note {
    padding-left: 0 !important;
    max-width: 100%;
    margin: 0;
  }
}

@media (max-width: 620px) {
  .container {
    width: calc(100% - 32px);
  }

  /* Header */
  .site-header {
    height: 76px;
  }
  .brand-logo {
    width: min(198px, 100%);
  }
  .menu-toggle {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
  }

  /* Hero */
  .hero-inner {
    padding-bottom: 44px;
  }
  .hero h1 {
    font-size: clamp(38px, 11.2vw, 46px);
    line-height: 1.02;
  }
  .hero-lead {
    font-size: 15.5px;
    line-height: 1.58;
  }
  .credentials {
    margin-top: 36px;
    padding-top: 24px;
  }
  .hero-strip-inner {
    min-height: 0;
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .quote-block {
    gap: 12px;
  }
  .quote-block p {
    font-size: 14px;
    line-height: 1.58;
  }

  /* General section rhythm */
  .section {
    padding: 68px 0;
  }
  .section-heading {
    margin-bottom: 34px;
  }
  .section-heading h2,
  .section-heading--fit h2 {
    font-size: clamp(34px, 10vw, 42px);
  }
  .section-heading-note {
    font-size: 14.5px;
    line-height: 1.65;
  }

  /* "Co Vám spolupráce přinese" – six tabs no longer consume six screens. */
  .outcome-widget {
    padding: 16px;
    border-radius: 22px;
  }
  .outcome-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .outcome-chip {
    min-height: 70px;
    padding: 11px 10px;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 9px;
    border-radius: 15px;
  }
  .outcome-chip-icon {
    width: 34px;
    height: 34px;
  }
  .outcome-chip-icon svg {
    width: 18px;
    height: 18px;
  }
  .outcome-chip span:last-child {
    font-size: 10.5px;
    line-height: 1.28;
    letter-spacing: .02em;
  }
  .outcome-panels {
    margin-top: 18px;
  }
  .outcome-panel h3 {
    font-size: clamp(28px, 8vw, 34px);
  }
  .outcome-panel-copy p {
    font-size: 14.5px;
  }
  .outcome-tags {
    gap: 7px;
    margin-top: 17px;
  }
  .outcome-tags span {
    min-height: 30px;
    padding: 0 10px;
    font-size: 9px;
  }
  .outcome-visual--image {
    height: 150px;
  }

  /* Oblasti spolupráce – compact 2×3 selector instead of six tall rows. */
  .areas-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .areas-nav__item {
    min-height: 78px;
    padding: 12px 11px;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 7px;
  }
  .areas-nav__num {
    font-size: 9px;
  }
  .areas-nav__label {
    font-size: 12px;
    line-height: 1.25;
  }
  .areas-panel {
    padding: 30px 20px 26px;
    gap: 18px;
  }
  .areas-panel h3 {
    font-size: clamp(28px, 8vw, 34px);
    line-height: 1.08;
  }
  .areas-panel p {
    font-size: 14.5px;
    line-height: 1.66;
  }
  .areas-panel__question {
    margin-top: 22px !important;
  }
  .areas-visual--image {
    min-height: 170px;
  }
  .areas-visual--image img {
    height: 170px;
    max-width: 270px;
  }
  .risk-number-feature {
    padding: 24px 18px;
  }
  .risk-number-feature__visual img {
    max-width: 330px;
  }

  /* O mně – keep the intentional break; hiding it joined words into one
     unbreakable string ("přivedlazvědavost") and caused overflow. */
  .about-main {
    gap: 34px;
  }
  .about-title {
    font-size: clamp(36px, 10.5vw, 42px) !important;
    line-height: 1.04 !important;
    text-wrap: normal !important;
  }
  .about-title br {
    display: block !important;
  }
  .about-story {
    margin-top: 24px;
    padding-left: 22px;
  }
  .about-story p {
    font-size: 14.5px;
    line-height: 1.72;
  }
  .about-signature {
    margin-top: 24px;
  }
}

@media (max-width: 350px) {
  .outcome-nav,
  .areas-nav {
    grid-template-columns: 1fr;
  }
}


/* ===== v2.148 – mobile polish: O mně medailon ===== */
@media (max-width:700px){
  .about-signature__inner{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    min-height:0;
  }
  .about-stat{
    min-height:104px !important;
    padding:19px 14px !important;
    border-bottom:1px solid rgba(14,17,18,.12);
  }
  .about-stat:nth-child(odd){
    border-left:0 !important;
    padding-left:0 !important;
  }
  .about-stat:nth-child(even){
    border-left:1px solid rgba(14,17,18,.12) !important;
    padding-left:18px !important;
  }
  .about-stat:nth-child(n+3){
    border-bottom:0;
  }
  .about-stat::before{
    left:14px !important;
    width:28px;
  }
  .about-stat:nth-child(odd)::before{
    left:0 !important;
  }
  .about-stat strong{
    margin-bottom:8px;
    font-size:17px;
    line-height:1.05;
  }
  .about-stat--primary strong{
    font-size:31px;
  }
  .about-stat span{
    font-size:10.5px;
    line-height:1.42;
  }
  .about-signature{
    margin-top:22px;
  }
}


/* ===== v2.149 – contact first, newsletter last ===== */
.newsletter-soft--after-contact{
  grid-column:1 / -1;
  width:100%;
  max-width:none;
  margin-top:18px;
  padding-top:30px;
  border-top:1px solid rgba(255,255,255,.15);
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);
  column-gap:56px;
  align-items:end;
}
.newsletter-soft--after-contact h3,
.newsletter-soft--after-contact p{
  grid-column:1;
}
.newsletter-soft--after-contact .newsletter-trigger,
.newsletter-soft--after-contact small{
  grid-column:2;
  justify-self:start;
}
.newsletter-soft--after-contact .newsletter-trigger{
  grid-row:1 / span 2;
  align-self:center;
}
.newsletter-soft--after-contact small{
  margin-top:10px;
}

@media(max-width:900px){
  .newsletter-soft--after-contact{
    grid-template-columns:1fr;
    gap:0;
    margin-top:0;
  }
  .newsletter-soft--after-contact h3,
  .newsletter-soft--after-contact p,
  .newsletter-soft--after-contact .newsletter-trigger,
  .newsletter-soft--after-contact small{
    grid-column:1;
    grid-row:auto;
  }
  .newsletter-soft--after-contact .newsletter-trigger{
    margin-top:20px;
  }
}

@media(max-width:620px){
  .newsletter-soft--after-contact{
    margin-top:4px;
    padding-top:32px;
  }
}


/* ===== v2.150 – definitive mobile contact + medallion order ===== */

/* Newsletter is a real sibling after contact-side, not nested in either column. */
.newsletter-soft--after-contact{
  grid-column:1 / -1 !important;
  width:100% !important;
  max-width:none !important;
  margin-top:18px !important;
  padding-top:30px !important;
}

/* Mobile: explicit visual order regardless of earlier grid rules. */
@media (max-width:900px){
  #kontakt .contact-layout{
    display:flex !important;
    flex-direction:column !important;
    gap:34px !important;
  }
  #kontakt .section-intro{
    order:1 !important;
  }
  #kontakt .contact-side{
    order:2 !important;
    width:100% !important;
  }
  #kontakt .newsletter-soft--after-contact{
    order:3 !important;
    display:block !important;
    width:100% !important;
    margin-top:0 !important;
    padding-top:32px !important;
    border-top:1px solid rgba(255,255,255,.15) !important;
  }
}

/* O mně: four facts in a compact 2×2 grid on phones. */
@media (max-width:700px){
  .about-signature{
    margin-top:22px !important;
  }
  .about-signature__inner{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:auto !important;
    min-height:0 !important;
  }
  .about-signature__inner > .about-stat{
    min-height:92px !important;
    padding:18px 12px !important;
    border-bottom:1px solid rgba(14,17,18,.12) !important;
    border-left:0 !important;
  }
  .about-signature__inner > .about-stat:nth-child(even){
    border-left:1px solid rgba(14,17,18,.12) !important;
    padding-left:16px !important;
  }
  .about-signature__inner > .about-stat:nth-child(n+3){
    border-bottom:0 !important;
  }
  .about-signature__inner > .about-stat::before{
    left:12px !important;
    width:26px !important;
  }
  .about-signature__inner > .about-stat:nth-child(odd)::before{
    left:0 !important;
  }
  .about-signature__inner > .about-stat strong{
    margin-bottom:7px !important;
    font-size:15px !important;
    line-height:1.08 !important;
    letter-spacing:-.025em !important;
  }
  .about-signature__inner > .about-stat.about-stat--primary strong{
    font-size:29px !important;
  }
  .about-signature__inner > .about-stat span{
    font-size:9.5px !important;
    line-height:1.35 !important;
  }
}

/* On very narrow devices keep 2×2; reduce type instead of stacking. */
@media (max-width:360px){
  .about-signature__inner > .about-stat{
    padding-left:8px !important;
    padding-right:8px !important;
  }
  .about-signature__inner > .about-stat:nth-child(even){
    padding-left:12px !important;
  }
  .about-signature__inner > .about-stat strong{
    font-size:13.5px !important;
  }
  .about-signature__inner > .about-stat.about-stat--primary strong{
    font-size:27px !important;
  }
  .about-signature__inner > .about-stat span{
    font-size:9px !important;
  }
}


/* ===== v2.152 – newsletter as a dedicated section ===== */
.newsletter-band{background:#090d0f;color:#f3f6f7;border-top:1px solid rgba(255,255,255,.12);padding:46px 0 52px}
.newsletter-band__inner{margin:0!important;padding:0!important;border:0!important;max-width:none!important;display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);grid-template-areas:"title action" "copy action" "copy meta";column-gap:72px;row-gap:10px;align-items:center}
.newsletter-band__inner h3{grid-area:title;margin:0!important;max-width:none!important;font:600 clamp(28px,2.3vw,38px)/1.08 "Montserrat",sans-serif;letter-spacing:-.035em}
.newsletter-band__inner p{grid-area:copy;margin:0!important;max-width:760px;color:#9faeb3;font-size:15px;line-height:1.65}
.newsletter-band__inner .newsletter-trigger{grid-area:action;justify-self:start;align-self:center;min-height:52px;padding:0 24px;border:1px solid rgba(201,242,10,.35);border-radius:999px;background:rgba(201,242,10,.055);color:#c9f20a}
.newsletter-band__inner .newsletter-trigger:hover{border-color:rgba(201,242,10,.7);background:rgba(201,242,10,.085);color:#d9fb37}
.newsletter-band__inner small{grid-area:meta;margin:0!important;color:#718188;font:500 10.5px/1.45 "Manrope",sans-serif}
@media(max-width:900px){.newsletter-band{padding:38px 0 42px}.newsletter-band__inner{display:block!important}.newsletter-band__inner p{margin-top:14px!important}.newsletter-band__inner .newsletter-trigger{display:inline-flex;margin-top:22px}.newsletter-band__inner small{display:block;margin-top:12px!important}}
@media(max-width:620px){.newsletter-band{padding:34px 0 38px}.newsletter-band__inner h3{font-size:30px}.newsletter-band__inner p{font-size:14px;line-height:1.62}.newsletter-band__inner .newsletter-trigger{width:auto;min-height:48px;padding:0;border:0;border-radius:0;background:transparent}}


/* ===== v2.153 – newsletter under contact text on desktop, last on mobile ===== */

/* Desktop:
   left: contact intro + newsletter
   right: form + contact details
*/
#kontakt .contact-layout{
  display:grid !important;
  grid-template-columns:.85fr 1.15fr !important;
  grid-template-rows:auto auto !important;
  column-gap:clamp(70px,8vw,150px) !important;
  row-gap:30px !important;
  align-items:start !important;
}

#kontakt .section-intro{
  grid-column:1 !important;
  grid-row:1 !important;
  min-width:0;
}

#kontakt .contact-side{
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  min-width:0;
  align-self:start !important;
}

#kontakt .newsletter-soft--contact-left{
  grid-column:1 !important;
  grid-row:2 !important;
  width:100% !important;
  max-width:560px !important;
  margin:0 !important;
  padding:26px 0 0 !important;
  border-top:1px solid rgba(255,255,255,.15) !important;
  display:block !important;
}

#kontakt .newsletter-soft--contact-left h3{
  margin:0 0 12px !important;
  font:600 clamp(24px,2.2vw,34px)/1.12 "Montserrat",sans-serif !important;
  letter-spacing:-.035em !important;
}

#kontakt .newsletter-soft--contact-left p{
  margin:0 0 22px !important;
  max-width:520px !important;
  color:#9faeb3 !important;
  line-height:1.65 !important;
}

#kontakt .newsletter-soft--contact-left .newsletter-trigger{
  display:inline-flex !important;
  margin:0 !important;
}

#kontakt .newsletter-soft--contact-left small{
  display:block !important;
  margin-top:13px !important;
}

/* Mobile:
   intro -> form + contacts -> newsletter
*/
@media(max-width:900px){
  #kontakt .contact-layout{
    display:flex !important;
    flex-direction:column !important;
    gap:34px !important;
  }

  #kontakt .section-intro{
    order:1 !important;
    width:100% !important;
  }

  #kontakt .contact-side{
    order:2 !important;
    width:100% !important;
  }

  #kontakt .newsletter-soft--contact-left{
    order:3 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding-top:32px !important;
  }
}
