/* =========================================================================
   investory.cz — doplňkové styly
   main.css a main.bundle.js jsou originály z produkce a NESMÍ se měnit.
   Tenhle soubor se načítá AŽ ZA main.css a jen přepisuje vybraná pravidla.
   Smazáním <link> na tenhle soubor se web vrátí do původního stavu.
   ========================================================================= */

/* -------------------------------------------------------------------------
   1) ZHUŠTĚNÍ — sekce měly příliš mnoho prázdného místa (feedback 2026-09-05)
   ------------------------------------------------------------------------- */
.our-values        { padding: calc(.6 * var(--base-sp)) 0; }
.motivation        { padding: calc(.5 * var(--base-sp)) 0; }
.advantages        { padding: calc(.6 * var(--base-sp)) 0; }
.investments       { padding: calc(.65 * var(--base-sp)) 0; }
.services          { padding: calc(.65 * var(--base-sp)) 0; }
.pricelist         { padding: calc(.65 * var(--base-sp)) 0; }
.faqs              { padding: calc(.6 * var(--base-sp)) 0 calc(.7 * var(--base-sp)); }
.podcasts          { padding-top: calc(.9 * var(--base-sp)); padding-bottom: calc(.8 * var(--base-sp)); }
.team              { padding: calc(.75 * var(--base-sp)) 0; }
.our-story         { padding: calc(.7 * var(--base-sp)) 0 calc(.75 * var(--base-sp)); }
.newsletter        { padding: calc(.7 * var(--base-sp)) 0; }
.stats-items-wrapper { padding: calc(.6 * var(--base-sp)) 0; }
.our-mission .container { padding-top: calc(.8 * var(--base-sp)); padding-bottom: calc(.8 * var(--base-sp)); }
.claim             { padding: calc(.35 * var(--base-sp)) 0 calc(.9 * var(--base-sp)); }

/* karty: pryč s povinnou výškou 360 px, ať jsou vysoké podle obsahu */
.value-item {
    min-height: 0;
    padding: calc(.2 * var(--base-sp)) calc(.14 * var(--base-sp));
}
.value-item h3 { margin-bottom: .75em; }
.value-item .value-item__content > p:last-child { margin-bottom: 0; }
/* schodovité odsazení sudých karet bylo o půl sekce, stačí třetina */
.value-item:nth-of-type(2n+2) { top: calc(.22 * var(--base-sp)); }

/* dvousloupcové „motivační" bloky: druhý odstavec byl o 4 řádky níž */
.motivation p:nth-of-type(2) { margin-top: 1.5em; }
.our-story__top p { margin-bottom: 1em; }
.our-story__bottom { padding-top: calc(.4 * var(--base-sp)); }
.advantages .container > .flexbox:nth-of-type(2) { margin-top: calc(.9 * var(--base-sp)); }
.advantage-item__title { margin-top: 2em; }

/* citát byl 72 px vysoký — přes celou obrazovku */
.claim__text p { font-size: 3rem; }
@media screen and (max-width: 991px) { .claim__text p { font-size: 2.5rem; } }
@media screen and (max-width: 767px) { .claim__text p { font-size: 2rem; } }
@media screen and (max-width: 575px) { .claim__text p { font-size: 1.75rem; } }

/* FAQ: na desktopu zabíralo 7 500 px */
.faq-item__banner { padding: 1em 0; }
.faq-item__content { padding: 0 32px 16px; }

/* -------------------------------------------------------------------------
   2) DEKORATIVNÍ KAPSLE nesmí překrývat text
   ------------------------------------------------------------------------- */
/* main.css dává každé <section> z-index:1, takže sekce je vlastní stacking
   context a kapsle přetékající z následující sekce (.our-values / .services
   mají overflow:visible) se vždy vykreslí PŘES text sekce předchozí.
   Zrušením z-index u <section> se všechny kapsle (z-index 0) dostanou pod
   všechny .container (z-index 1). isolation na video-wrapperu drží štítek
   epizody (z-index:1000 v main.css) uvnitř karty, aby nepřelezl header. */
section { z-index: auto; }
.podcast-item__video-wrapper { isolation: isolate; }
.investory-symbol { z-index: 0; pointer-events: none; }
section > .container { position: relative; z-index: 1; }

/* -------------------------------------------------------------------------
   3) ČITELNOST TEXTU NA FOTOPOZADÍ
   ------------------------------------------------------------------------- */
.story-beginning .container > p,
.story-beginning .container > p a:not(.btn) { color: var(--c-cafe-50); }
.story-beginning .container > p a:not(.btn) { text-decoration: underline; }
.intro-hp__bottom p { color: var(--c-cafe-50); }
.intro-hp__bottom p:nth-of-type(1) { color: var(--c-cafe-400); }

/* -------------------------------------------------------------------------
   4) TLAČÍTKA — .btn je display:flex bez šířky, takže se roztahuje
   ------------------------------------------------------------------------- */
.btn--auto { width: max-content; padding-left: 1.5em; padding-right: 1.5em; }
@media screen and (max-width: 575px) { .btn--auto { width: 100%; } }

/* -------------------------------------------------------------------------
   5) NAVIGACE — ikonky podcastových platforem
   ------------------------------------------------------------------------- */
.nav-podcast { display: inline-flex; align-items: center; gap: .5em; }
.nav-podcast__icons { display: inline-flex; align-items: center; gap: .35em; }
.nav-podcast__icons a { display: inline-flex; opacity: .75; transition: opacity .2s linear; }
.nav-podcast__icons a:hover, .nav-podcast__icons a:focus-visible { opacity: 1; }
.nav-podcast__icons svg { width: 15px; height: 15px; display: block; }

/* -------------------------------------------------------------------------
   6) KONTAKTNÍ PRUH (telefon / e-mail / formulář) — /kontakt, /cesta
   ------------------------------------------------------------------------- */
.contact-strip { display: flex; flex-wrap: wrap; gap: 4px; margin: calc(.35 * var(--base-sp)) 0 0; }
.contact-strip__item {
    flex: 1 1 260px;
    display: flex; flex-direction: column; justify-content: space-between; gap: 1.25em;
    padding: calc(.22 * var(--base-sp)) calc(.16 * var(--base-sp));
    background-color: rgba(255, 255, 255, .6);
    border-radius: 10px;
}
.contact-strip__label {
    text-transform: uppercase; letter-spacing: .06em;
    font-size: .75rem; color: var(--c-cafe-400); margin: 0;
}
.contact-strip__value { font-size: 1.5rem; letter-spacing: -.03em; margin: .35em 0 0; display: block; }
.contact-strip__value a { color: var(--c-blue-950); }
.contact-strip__value a:hover, .contact-strip__value a:focus-visible { color: var(--c-cafe-400); }
.contact-strip__note { font-size: .875rem; margin: .5em 0 0; opacity: .7; }
@media screen and (max-width: 575px) { .contact-strip__value { font-size: 1.25rem; } }

/* -------------------------------------------------------------------------
   7) CENÍK — rozbalovací balíčky
   ------------------------------------------------------------------------- */
.plans { --plans-gap: 4px; display: flex; flex-wrap: wrap; gap: var(--plans-gap); margin-top: calc(.5 * var(--base-sp)); }
.plan {
    flex: 1 1 300px; min-width: 0;
    display: flex; flex-direction: column;
    padding: calc(.24 * var(--base-sp)) calc(.18 * var(--base-sp));
    background-color: var(--c-cafe-50);
    border: 1px solid var(--c-cafe-100);
    border-radius: 10px;
    transition: border-color .2s linear, background-color .2s linear;
}
.plan.is-open { background-color: #fff; border-color: var(--c-blue-950); }
.plan__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 1em; }
.plan__name {
    margin: 0; text-transform: uppercase; letter-spacing: .06em;
    font-size: .75rem; line-height: 1.5; font-weight: 500; color: var(--c-blue-950);
}
.plan__num {
    flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%;
    border: 1px solid var(--c-cafe-400); color: var(--c-cafe-400);
    display: flex; align-items: center; justify-content: center;
    font-size: .6875rem; letter-spacing: .04em;
}
.plan__price { font-size: 1.5rem; letter-spacing: -.04em; margin: 1.5em 0 .25em; }
.plan__for { font-size: .875rem; line-height: 1.5; margin: 0 0 1.5em; opacity: .75; }
.plan__label { text-transform: uppercase; letter-spacing: .06em; font-size: .75rem; color: var(--c-cafe-400); margin: 0 0 1em; }
.plan__list { --line-width: 18px; list-style: none; padding: 0; margin: 0 0 1.75em; }
.plan__list li { position: relative; padding-left: calc(var(--line-width) + .75em); margin-bottom: .85em; font-size: .875rem; line-height: 1.5; }
.plan__list li:last-child { margin-bottom: 0; }
.plan__list li:before {
    content: ""; position: absolute; left: 0; top: .7em;
    width: var(--line-width); height: 1px; background-color: var(--c-cafe-400);
}
.plan__actions { margin-top: auto; display: flex; flex-direction: column; gap: 8px; }
.plan__toggle {
    display: flex; align-items: center; justify-content: space-between; gap: 1em;
    width: 100%; padding: .85em 1.25em;
    border: 1px solid rgba(22, 16, 87, .25); border-radius: var(--btn-height);
    background: transparent; color: var(--c-blue-950);
    font-size: .875rem; font-weight: 500; text-align: left; cursor: pointer;
    transition: border-color .2s linear, background-color .2s linear;
}
.plan__toggle:hover, .plan__toggle:focus-visible { border-color: var(--c-blue-950); background-color: rgba(22, 16, 87, .04); }
.plan__toggle-icon { position: relative; flex: 0 0 auto; width: 16px; height: 16px; }
.plan__toggle-icon:before, .plan__toggle-icon:after {
    content: ""; position: absolute; left: 3px; top: 7.5px; width: 10px; height: 1px;
    background-color: currentColor; transition: transform .2s linear;
}
.plan__toggle-icon:after { transform: rotate(90deg); }
.plan.is-open .plan__toggle-icon:after { transform: rotate(0deg); }
.plan .btn { width: 100%; }

.plan-detail { display: none; width: 100%; margin-top: var(--plans-gap); }
.plan-detail.is-open { display: block; }
.plan-detail__inner {
    background-color: #fff; border: 1px solid var(--c-cafe-100);
    border-radius: 10px; padding: calc(.3 * var(--base-sp)) calc(.24 * var(--base-sp));
}
.plan-detail__head {
    display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between;
    gap: .5em 1.5em; padding-bottom: 1.25em; border-bottom: 1px solid var(--c-cafe-100);
}
.plan-detail__eyebrow { text-transform: uppercase; letter-spacing: .06em; font-size: .75rem; color: var(--c-cafe-400); margin: 0 0 .5em; }
.plan-detail__title { margin: 0; letter-spacing: -.04em; }
.plan-detail__price { font-size: 1.375rem; letter-spacing: -.04em; white-space: nowrap; }
.plan-detail__body { display: flex; flex-wrap: wrap; gap: calc(.3 * var(--base-sp)); padding-top: 1.5em; }
.plan-detail__note { flex: 1 1 240px; font-size: .875rem; line-height: 1.6; opacity: .8; }
.plan-detail__note strong { display: block; margin-bottom: .5em; opacity: 1; color: var(--c-blue-950); }
.plan-detail__list { flex: 2 1 380px; list-style: none; margin: 0; padding: 0; }
.plan-detail__list li { display: flex; gap: .85em; margin-bottom: .85em; font-size: .9375rem; line-height: 1.55; }
.plan-detail__list li:last-child { margin-bottom: 0; }
.plan-detail__index {
    flex: 0 0 auto; width: 22px; height: 22px; margin-top: .1em; border-radius: 50%;
    border: 1px solid var(--c-cafe-400); color: var(--c-cafe-400);
    display: flex; align-items: center; justify-content: center; font-size: .625rem;
}
.plan-detail__actions { margin-top: 1.75em; padding-top: 1.5em; border-top: 1px solid var(--c-cafe-100); display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
@media screen and (max-width: 575px) {
    .plan-detail__actions .btn { width: 100%; }
}

/* -------------------------------------------------------------------------
   8) SKRYTÝ KAPITÁL — kalkulačka v designu webu
   ------------------------------------------------------------------------- */
.calc { margin-top: calc(.4 * var(--base-sp)); }
.calc__card {
    background-color: var(--c-cafe-50); border: 1px solid var(--c-cafe-100);
    border-radius: 10px; padding: calc(.35 * var(--base-sp)) calc(.3 * var(--base-sp));
}
.calc__intro { font-size: .875rem; line-height: 1.6; opacity: .75; margin: 0 0 calc(.3 * var(--base-sp)); }
.calc__field { margin-bottom: calc(.28 * var(--base-sp)); }
.calc__field:last-of-type { margin-bottom: 0; }
.calc__label { display: block; text-transform: uppercase; letter-spacing: .06em; font-size: .75rem; color: var(--c-cafe-400); margin-bottom: .9em; }
.calc__options { display: flex; flex-wrap: wrap; gap: 6px; }
.calc__option {
    padding: .6em 1.1em; border-radius: var(--btn-height);
    border: 1px solid var(--c-cafe-200); background-color: transparent;
    color: var(--c-blue-950); font-size: .875rem; cursor: pointer;
    transition: background-color .2s linear, border-color .2s linear, color .2s linear;
}
.calc__option:hover, .calc__option:focus-visible { border-color: var(--c-blue-950); }
.calc__option[aria-pressed="true"] { background-color: var(--c-blue-950); border-color: var(--c-blue-950); color: #fff; }
.calc__hint { display: block; font-size: .8125rem; opacity: .65; margin: .9em 0 .5em; }
.calc__input {
    width: 100%; max-width: 320px; height: var(--btn-height);
    border: 1px solid var(--c-cafe-200); border-radius: var(--btn-height);
    padding: 0 1.25em; background-color: #fff; color: var(--c-blue-950);
    font-size: .9375rem; letter-spacing: -.02em;
}
.calc__input:focus { outline: none; border-color: var(--c-blue-950); }
.calc__submit { margin-top: calc(.3 * var(--base-sp)); }
.calc__result { display: none; margin-top: calc(.35 * var(--base-sp)); }
.calc__result.is-visible { display: block; }
.calc__result-inner {
    background-color: var(--c-brand-black); color: var(--c-cafe-50);
    border-radius: 10px; padding: calc(.35 * var(--base-sp)) calc(.3 * var(--base-sp));
}
.calc__result-label { text-transform: uppercase; letter-spacing: .06em; font-size: .75rem; color: var(--c-cafe-400); margin: 0 0 .75em; }
.calc__result-value { font-size: 3rem; line-height: 1; letter-spacing: -.06em; margin: 0 0 .5em; color: var(--c-cafe-400); }
.calc__result-note { font-size: .875rem; line-height: 1.6; opacity: .8; margin: 0 0 1.5em; max-width: 640px; }
.calc__result-grid { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: calc(.3 * var(--base-sp)); }
.calc__result-item { flex: 1 1 200px; background-color: rgba(255, 255, 255, .07); border-radius: 10px; padding: 1.25em 1.5em; }
.calc__result-item span { display: block; text-transform: uppercase; letter-spacing: .06em; font-size: .6875rem; color: var(--c-cafe-400); margin-bottom: .6em; }
.calc__result-item strong { font-size: 1.375rem; font-weight: 400; letter-spacing: -.03em; }
@media screen and (max-width: 575px) { .calc__result-value { font-size: 2.25rem; } }

/* -------------------------------------------------------------------------
   9) KOMPAKTNÍ ČÍSLOVANÝ SEZNAM (náhrada karet tam, kde stačí řádek)
   ------------------------------------------------------------------------- */
.steps { list-style: none; margin: 0; padding: 0; }
.steps li {
    display: flex; gap: 1.25em; align-items: baseline;
    padding: .9em 0; border-bottom: 1px solid var(--c-cafe-200);
    font-size: 1rem; line-height: 1.45;
}
.steps li:last-child { border-bottom: 0; }
.steps i { font-style: normal; color: var(--c-cafe-400); font-size: .75rem; flex: 0 0 22px; }
.steps b { font-weight: 500; }
@media screen and (max-width: 575px) { .steps li { font-size: .9375rem; } }

/* -------------------------------------------------------------------------
   10) Dekorace nesmí vyrábět vodorovný posuvník (/o-spolecnosti mělo 86 px)
   ------------------------------------------------------------------------- */
.our-team, .podcasts { overflow: hidden; }

/* -------------------------------------------------------------------------
   11) Dvojice odstavců v .motivation — spojnice se šipkou, ať je vidět,
       že spolu souvisí (dřív to byly dva volně plovoucí bloky textu)
   ------------------------------------------------------------------------- */
.motivation .container > div { position: relative; }
.motivation p:nth-of-type(2)::before {
    content: "";
    position: absolute;
    left: -2.5em; top: -2.4em; width: 1px; height: 3.4em;
    background: linear-gradient(180deg, transparent, var(--c-cafe-400));
}
.motivation p:nth-of-type(2)::after {
    content: "";
    position: absolute;
    left: -2.5em; top: 1em; width: 7px; height: 7px;
    border-right: 1px solid var(--c-cafe-400);
    border-bottom: 1px solid var(--c-cafe-400);
    transform: translate(-3px, -6px) rotate(45deg);
}
@media screen and (max-width: 767px) {
    .motivation p:nth-of-type(2)::before,
    .motivation p:nth-of-type(2)::after { display: none; }
}

/* -------------------------------------------------------------------------
   12) Sekundární tlačítko na fotopozadí — .btn--default je jen bílý text
       bez ohraničení, takže nevypadá klikací
   ------------------------------------------------------------------------- */
.btn--outline {
    border: 1px solid rgba(246, 245, 240, .45);
    padding-left: 1.5em; padding-right: 1.5em;
    transition: border-color .2s linear, background-color .2s linear;
}
.btn--outline:hover, .btn--outline:focus-visible {
    border-color: var(--c-cafe-400);
    background-color: rgba(246, 245, 240, .08);
}

/* -------------------------------------------------------------------------
   13) CENÍK — pruh s bezplatným úvodním krokem nad balíčky
   ------------------------------------------------------------------------- */
.plans-intro {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
    gap: 1.5em; margin-top: calc(.5 * var(--base-sp));
    padding: calc(.22 * var(--base-sp)) calc(.24 * var(--base-sp));
    background-color: var(--c-brand-black); color: var(--c-cafe-50); border-radius: 10px;
    text-align: left;
}
.plans-intro > div { flex: 1 1 380px; }
.plans-intro p { margin: 0; }
.plans-intro__label {
    text-transform: uppercase; letter-spacing: .06em; font-size: .75rem;
    color: var(--c-cafe-400); margin-bottom: .6em !important;
}
.plans-intro__text { font-size: .9375rem; line-height: 1.55; max-width: 62ch; }
@media screen and (max-width: 767px) { .plans-intro { text-align: left; } }

/* -------------------------------------------------------------------------
   14) CENÍK — reálné případy pod balíčky (důkaz, ne jen výčet)
   ------------------------------------------------------------------------- */
.proof { margin-top: calc(.7 * var(--base-sp)); text-align: left; }
.proof__label {
    text-transform: uppercase; letter-spacing: .06em; font-size: .75rem;
    color: var(--c-cafe-400); margin: 0 0 1.25em;
}
.proof__grid { display: flex; flex-wrap: wrap; gap: 4px; }
.proof-item {
    flex: 1 1 280px; min-width: 0;
    background-color: rgba(255, 255, 255, .6);
    border: 1px solid var(--c-cafe-100); border-radius: 10px;
    padding: calc(.22 * var(--base-sp)) calc(.18 * var(--base-sp));
}
.proof-item p { margin: 0; }
.proof-item__meta { font-size: .75rem; letter-spacing: .04em; color: var(--c-cafe-600); margin-bottom: 1em !important; }
.proof-item__title { font-size: 1.0625rem; line-height: 1.35; letter-spacing: -.02em; margin-bottom: 1.25em !important; }
.proof-item__nums { display: flex; gap: 2em; padding-bottom: 1.1em; border-bottom: 1px solid var(--c-cafe-100); margin-bottom: 1.1em; }
.proof-item__nums span { display: block; text-transform: uppercase; letter-spacing: .06em; font-size: .6875rem; color: var(--c-cafe-600); margin-bottom: .35em; }
.proof-item__nums strong { font-size: 1.25rem; font-weight: 400; letter-spacing: -.03em; }
.proof-item__body { font-size: .875rem; line-height: 1.55; opacity: .8; }
.proof__note { margin-top: 1.5em !important; font-size: .875rem; }
.proof__note a { color: var(--c-blue-950); text-decoration: underline; }
.proof__note a:hover, .proof__note a:focus-visible { color: var(--c-cafe-600); }

/* -------------------------------------------------------------------------
   15) PODCAST — odkazy na platformy vedle tlačítka epizod
   ------------------------------------------------------------------------- */
.podcast-links { display: flex; flex-wrap: wrap; gap: 8px; }
.btn--ghost {
    color: var(--c-blue-950); border: 1px solid var(--c-cafe-400); background-color: transparent;
    transition: border-color .2s linear, background-color .2s linear;
}
.btn--ghost:hover, .btn--ghost:focus-visible {
    border-color: var(--c-blue-950); background-color: rgba(22, 16, 87, .05);
}

/* -------------------------------------------------------------------------
   16) KONTRAST — .fc-cafe-400 (#bca888) má na krémovém pozadí poměr 2,2:1;
       norma chce 4,5:1 pro běžný a 3:1 pro velký text. Na tmavých sekcích
       je původní odstín v pořádku, proto ztmavujeme jen na světlém pozadí.
   ------------------------------------------------------------------------- */
.fc-cafe-400,
.preheader,
.stats-item h3,
.value-item i,
.podcast-item__content h3,
.services-item .services__left span { color: #83654b; }          /* >= 4,5:1 na světlém podkladu */

.fs-12.fc-cafe-400,
.fs-14 .fc-cafe-400,
.faq-item__content .fc-cafe-400,
.plan__label, .plan__num, .plan-detail__eyebrow, .plan-detail__index,
.proof__label, .proof-item__meta, .proof-item__nums span,
.contact-strip__label,
.calc__label { color: var(--c-cafe-600); }                        /* 4,9:1 */

/* tmavé sekce a fotopozadí — původní značkový odstín zůstává */
.intro-hp .fc-cafe-400,
.services .fc-cafe-400,
.services-item .services__left span,
.newsletter .fc-cafe-400,
.story-beginning .fc-cafe-400,
.mobile-menu .fc-cafe-400,
.footer .fc-cafe-400,
.plans-intro__label,
.intro-hp__bottom p:nth-of-type(1),
.claim__text p:nth-of-type(1),
.claim__text p:nth-of-type(3),
.our-mission__text p:nth-of-type(1),
.our-mission__text p:nth-of-type(3),
[data-modal] .fc-cafe-400 { color: var(--c-cafe-400); }

/* -------------------------------------------------------------------------
   17) Newsletter — druhá, konkrétnější nabídka pod formulářem
   ------------------------------------------------------------------------- */
.newsletter__alt { font-size: .875rem; margin-top: 1.25em; opacity: .8; }
.newsletter__alt a { color: var(--c-cafe-400); text-decoration: underline; }
.newsletter__alt a:hover, .newsletter__alt a:focus-visible { color: #fff; }
@media screen and (max-width: 991px) { .newsletter__alt { text-align: center; } }

/* -------------------------------------------------------------------------
   18) CENÍK — záruka vrácení peněz pod balíčky
   ------------------------------------------------------------------------- */
.plans-guarantee {
    display: flex; align-items: center; justify-content: center; gap: .75em;
    margin: calc(.3 * var(--base-sp)) 0 0;
    font-size: .9375rem; font-weight: 500; letter-spacing: -.01em;
    color: var(--c-blue-950);
}
.plans-guarantee svg { flex: 0 0 auto; color: var(--c-cafe-600); }
@media screen and (max-width: 575px) {
    .plans-guarantee { align-items: flex-start; text-align: left; }
    .plans-guarantee svg { margin-top: .15em; }
}

/* -------------------------------------------------------------------------
   19) KONTAKT — rezervace termínu je hlavní akce, proto tmavá dlaždice
   ------------------------------------------------------------------------- */
.contact-strip__item--primary {
    background-color: var(--c-brand-black);
    color: var(--c-cafe-50);
    flex: 1.4 1 300px;
}
.contact-strip__item--primary .contact-strip__value { color: var(--c-cafe-50); }
.contact-strip__item--primary .contact-strip__label { color: var(--c-cafe-400); }
.contact-strip__item--primary .contact-strip__note { opacity: .75; }

/* -------------------------------------------------------------------------
   20) POMĚR STRAN OBRÁZKŮ
       main.css nemá globální reset `img{height:auto}` (má jen `.img-responsive`).
       Od dávky 6 mají všechny <img> atributy width/height kvůli CLS. Atribut
       height je ale jen "presentational hint" — jakmile CSS zúží šířku
       (`max-width:100%` u .about-us-intro/.investments__left, `max-width:80%`
       u ikon, `width:100%` na mobilu), výška zůstane na hodnotě z atributu
       a obrázek se svisle natáhne. Naměřeno: img_building −40 %, team.jpg
       −34 %, bg_story na mobilu −88 %.
       `height:auto` dopočítá výšku ze šířky a poměr stran z atributů
       (aspect-ratio) zůstane zachovaný, takže se nezhorší CLS.
       Specificita 0,0,1 — jakékoli pravidlo s třídou (např.
       `.mto__radio-card__img img{height:100%}`) má pořád přednost.
   ------------------------------------------------------------------------- */
img { height: auto; }

/* -------------------------------------------------------------------------
   21) STATISTIKY VE ČTYŘECH SLOUPCÍCH
       main.css počítá se třemi kartami: `.stats-item` nemá šířku (flex se
       roztáhne podle obsahu) a `.stats-item p` má font-size 6rem. Se čtyřmi
       kartami a delšími čísly („15 000 000“) by se to nevešlo na řádek.
       Proto zúžená typografie jen pro variantu --4; původní tříkartová
       varianta zůstává beze změny.
       `.stats-item p span{left:-1em}` v main.css tahá jednotku pod číslo
       (v originále „38,9mil. Kč“ bez mezery). U delších popisků je to
       nečitelné, proto se v této variantě posun ruší.
   ------------------------------------------------------------------------- */
.stats-items-wrapper--4 { gap: calc(.2 * var(--base-sp)) 1.5em; }
/* h3 mají různý počet řádků; flex:1 na nadpisu srovná velká čísla na jednu linku */
.stats-items-wrapper--4 .stats-item { flex: 1 1 210px; min-width: 0; display: flex; flex-direction: column; }
.stats-items-wrapper--4 .stats-item h3 { flex: 1 0 auto; max-width: 22ch; }
.stats-items-wrapper--4 .stats-item p {
    font-size: 3.25rem;
    letter-spacing: -.04em;
    white-space: nowrap;
}
.stats-items-wrapper--4 .stats-item p span {
    left: 0;
    margin-left: .45em;      /* v češtině se před „%“ i jednotkou píše mezera */
    font-size: 1rem;
    white-space: normal;
    /* letter-spacing se dědí jako VYPOČTENÁ hodnota v px: -.04em z 3,25rem je
       -2,08 px, a na 16px jednotce to dělá 13 % šířky znaku — písmena si
       lezou na sebe („nemovitostí" slepené do chuchvalce). Proto reset. */
    letter-spacing: normal;
}
@media screen and (max-width: 1439px) {
    .stats-items-wrapper--4 .stats-item p { font-size: 2.75rem; }
}
@media screen and (max-width: 1199px) {
    .stats-items-wrapper--4 .stats-item { flex: 1 1 45%; }
    .stats-items-wrapper--4 .stats-item p { font-size: 3.25rem; }
}
@media screen and (max-width: 767px) {
    .stats-items-wrapper--4 .stats-item { flex: 1 1 100%; }
    .stats-items-wrapper--4 .stats-item h3 { max-width: none; }
    .stats-items-wrapper--4 .stats-item p { font-size: 3rem; }
    .stats-items-wrapper--4 .stats-item p span { margin-left: .4em; }
}
@media screen and (max-width: 575px) {
    .stats-items-wrapper--4 .stats-item p { font-size: 2.5rem; }
}

/* -------------------------------------------------------------------------
   22) OBJEDNÁVKA BALÍČKU (/objednavka/)
       Formulář staví na třídách kalkulačky (.calc__*), aby stránka vypadala
       jako zbytek webu. Doplněk je jen souhlas, chybová hláška a panel
       s QR kódem.
   ------------------------------------------------------------------------- */
.order-consent {
    display: flex; align-items: flex-start; gap: .75em;
    margin-top: calc(.3 * var(--base-sp));
    font-size: .875rem; line-height: 1.5; cursor: pointer;
}
.order-consent input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: .15em; accent-color: var(--c-blue-950); }
.order-consent a { color: var(--c-blue-950); text-decoration: underline; }
.order-consent a:hover, .order-consent a:focus-visible { color: var(--c-cafe-600); }

.order-error {
    margin: calc(.25 * var(--base-sp)) 0 0;
    padding: .85em 1.25em;
    border-radius: 10px;
    background-color: rgba(150, 40, 40, .08);
    border: 1px solid rgba(150, 40, 40, .3);
    color: #7a2020;
    font-size: .875rem; line-height: 1.5;
}

.order-preview-notice {
    margin: 0;
    padding: 1em 1.2em;
    border: 1px solid rgba(188, 168, 136, .65);
    border-radius: 10px;
    background: rgba(188, 168, 136, .12);
    color: var(--c-blue-950);
    font-size: .875rem;
    line-height: 1.55;
}
.order-preview-notice strong { display: block; margin-bottom: .2em; }

/* QR musí být na bílém podkladu — panel výsledku je tmavý */
.order-pay {
    display: flex; flex-wrap: wrap; gap: calc(.3 * var(--base-sp));
    align-items: flex-start;
    margin-bottom: calc(.3 * var(--base-sp));
}
.order-pay__qr {
    flex: 0 0 auto;
    background-color: #fff; border-radius: 10px;
    padding: 14px 14px 10px; text-align: center;
}
.order-pay__qr svg { display: block; width: 180px; height: 180px; }
.order-pay__qr-note {
    margin: .75em 0 0; font-size: .6875rem; line-height: 1.4;
    text-transform: uppercase; letter-spacing: .06em;
    color: var(--c-cafe-600); max-width: 180px;
}
.order-pay__data { flex: 1 1 320px; min-width: 0; }
.order-pay__data .calc__result-grid { margin-bottom: 0; }
/* dvě dlaždice na řádek — číslo účtu se na jednu čtvrtinu šířky nevejde */
.order-pay__data .calc__result-item { flex: 1 1 45%; }
.order-pay__data .calc__result-item strong { overflow-wrap: anywhere; }

@media screen and (max-width: 575px) {
    .order-pay { gap: calc(.25 * var(--base-sp)); }
    .order-pay__qr { align-self: center; margin: 0 auto; }
    /* dvě dlaždice vedle sebe jsou na mobilu tak úzké, že se v nich láme
       variabilní symbol i číslo účtu — proto jedna na řádek */
    .order-pay__data .calc__result-item { flex: 1 1 100%; }
}

/* na širší obrazovce dvousloupcový formulář — jinak je karta z poloviny prázdná */
@media screen and (min-width: 768px) {
    #form_order {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: calc(.28 * var(--base-sp)) calc(.3 * var(--base-sp));
        align-items: start;
    }
    #form_order .calc__field { margin-bottom: 0; }
    #form_order .calc__input { max-width: none; }
    /* výběr balíčku, poznámka, souhlas, chyba a tlačítko přes obě poloviny */
    #form_order > .calc__field:first-child,
    #form_order > .calc__field:nth-last-of-type(1),
    #form_order > .order-preview-notice,
    #form_order > .order-consent,
    #form_order > .order-error,
    #form_order > p { grid-column: 1 / -1; }
    #form_order > .order-consent { margin-top: 0; }
    #form_order > .order-error { margin-top: 0; }
}

/* Atribut `hidden` má z prohlížeče jen `display:none` se specificitou 0,0,1,
   takže ho pravidla výš (.order-pay{display:flex}, #form_order{display:grid})
   přebijí a skrytý blok zůstane vidět. Tohle to vrací zpátky. */
.order-pay[hidden],
.order-error[hidden],
.order-preview-notice[hidden],
#form_order[hidden] { display: none !important; }

/* Audit 2026-09-08: readable labels, semantic spacing and safe sticky state. */
.stats-items-wrapper--4 .stats-item h3,
.stats-items-wrapper--4 .stats-item p,
.stats-items-wrapper--4 .stats-item p span { color: #83654b; }
.stats-items-wrapper--4 .stats-item p span { margin-left: 0; }
body.page-capital { --ink-muted: #686583; padding-bottom: var(--sticky-space, 0px); }
.page-capital .stickybar[hidden] { display: none !important; }
.page-capital .stickybar:not(.visible) { visibility: hidden; pointer-events: none; }
.page-capital input:focus-visible { outline: 2px solid #83654b; outline-offset: 4px; }
.page-404 .footer__bottom-menu { gap: 1.5rem 3rem; }
.page-404 .footer__bottom-menu > li { min-width: max-content; }

.page-404 .footer__bottom-menu .fc-cafe-400 { color: #83654b; }

/* Snapshot service consent; existing forms remain edited in place. */
.page-capital .lead-form .lead-consent { display:flex; align-items:flex-start; gap:.65rem; flex:1 1 100%; width:100%; font-size:.8125rem; line-height:1.5; color:var(--cream-on-navy); text-transform:none; letter-spacing:normal; }
.page-capital .lead-form .lead-consent input { flex:0 0 18px; width:18px; min-width:18px; height:18px; margin:.2rem 0 0; padding:0; accent-color:#bca888; }
.page-capital .lead-consent a { color:inherit; text-decoration:underline; }
.provider-details { font-size:.875rem; line-height:1.6; max-width:70ch; margin:1rem 0 2rem; }
.legal-update { padding:2rem 0; }
.legal-update p { max-width:85ch; }

/* Karel's review: real people, shorter sections, keyboard and touch support. */
:root { --people-ink:#24233f; --people-muted:#625b56; --people-paper:#f5f0e8; }
:where(a,button,input,select,textarea,[tabindex]):focus-visible { outline:3px solid #116caa!important; outline-offset:4px; box-shadow:0 0 0 7px #fff!important; }
.skip-link { position:fixed; top:12px; left:12px; z-index:100000; transform:translateY(-200%); background:white; color:#161057; padding:14px 20px; }
.skip-link:focus { transform:none; }
[id] { scroll-margin-top:100px; }
.btn,button:not(.header__toggler),.header__nav a,.mobile-menu a,.footer a,.nav-podcast__icons a,.faq-item__banner,[role="button"] { min-height:44px; }
.nav-podcast__icons a { min-width:44px; align-items:center; justify-content:center; opacity:1; }
.header__logo { min-width:110px; min-height:44px; display:flex; align-items:center; }
.header__toggler { min-width:44px; min-height:44px; padding:0; border:0; background:transparent; cursor:pointer; }
.footer a,.mobile-menu a { display:inline-flex; align-items:center; }
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select { min-height:44px; }
.order-consent { min-height:44px; }
.eyebrow { color:#715537; font-size:.76rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; margin:0 0 18px; }
.intro-hp.intro-people { background:var(--people-paper); color:var(--people-ink); padding:140px 0 60px; min-height:0; height:auto; }
.intro-people:before,.intro-people:after { display:none; }
.intro-people > .container { display:grid; grid-template-columns:1.05fr 1fr; gap:48px; align-items:center; }
.intro-people h1 { color:var(--people-ink); font-size:clamp(36px,4.2vw,64px); line-height:1.06; letter-spacing:-.045em; max-width:none; margin:0 0 24px; }
.intro-people h1 span { color:#715537; }
.intro-people .intro-people__lead { font-size:18px; line-height:1.65; max-width:400px; color:var(--people-ink); margin:0 0 28px; }
.intro-people__actions { display:flex; gap:12px; flex-wrap:wrap; }
.intro-people__actions .btn { width:auto; min-width:0; padding:15px 22px; font-size:15px; }
.intro-people .intro-people__note { font-size:13px; color:var(--people-muted); margin:18px 0 0; }
.intro-people__photos { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.intro-people__photos figure { margin:0; min-width:0; }
.intro-people__photos figure:nth-child(2) { margin-top:36px; }
.intro-people__photos img { display:block; width:100%; height:350px; object-fit:cover; object-position:50% 24%; border-radius:100px 100px 5px 5px; }
.intro-people__photos figcaption { color:var(--people-ink); font-size:14px; font-weight:600; margin-top:12px; }
body:has(.intro-people) .header:not(.is-open) { background:#f5f0e8; }
body:has(.intro-people) .header:not(.is-open) .pt1 { fill:#161057; }
body:has(.intro-people) .header:not(.is-open) .header__nav a:not(.btn) { color:#24233f; }
body:has(.intro-people) .header:not(.is-open) .header__toggler span { background:#161057; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:32px; }
.section-heading h2,.team-people h2,.journey h2,.advantages-plain h2,.capital-teaser h2,.founder-story h2 { font-size:clamp(28px,3vw,40px); line-height:1.16; margin:0; color:var(--people-ink); letter-spacing:-.025em; }
.text-link { color:#161057; min-height:44px; display:inline-flex; align-items:center; gap:12px; text-decoration:underline; white-space:nowrap; }
.team-people { padding:52px 0; background:#fffdf9; }
.people-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.people-grid--full { grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:32px; }
.people-card img { width:100%; height:225px; object-fit:cover; object-position:50% 25%; border-radius:4px; display:block; }
.people-card h3 { font-size:20px; margin:18px 0 6px; color:var(--people-ink); }
.people-card .people-role { color:#715537; font-size:12px; line-height:1.5; font-weight:600; margin:0 0 12px; }
.people-card p { color:var(--people-muted); font-size:14px; line-height:1.6; margin:0; }
.people-history { color:var(--people-muted); font-size:14px; border-top:1px solid #ded5c8; padding-top:22px; margin:28px 0 0; }
.people-history a { color:#161057; text-decoration:underline; display:inline-flex; align-items:center; min-height:44px; }
.journey { background:#f5f0e8; padding:64px 0; }
.journey-steps { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:24px; }
.journey-steps li { border-top:1px solid #b5a58e; padding-top:18px; }
.journey-steps li > span { display:block; font-size:13px; color:#715537; margin-bottom:24px; }
.journey-steps h3 { font-size:20px; line-height:1.3; color:var(--people-ink); margin:0 0 14px; }
.journey-steps p { font-size:14px; line-height:1.7; color:var(--people-muted); margin:0; }
.journey-next { border-top:1px solid #b5a58e; margin-top:36px; padding-top:28px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.journey-next h3 { font-size:24px; margin:0 0 8px; }
.journey-next p { font-size:14px; margin:0; }
.advantages-plain { padding:56px 0; }
.benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; margin-top:32px; }
.benefit-grid h3 { font-size:22px; line-height:1.3; margin:0 0 12px; }
.benefit-grid p { font-size:16px; line-height:1.7; margin:0; }
.capital-teaser > .container { display:flex; justify-content:space-between; align-items:center; gap:32px; }
.capital-teaser p { width:auto!important; max-width:520px; margin:16px 0 0; font-size:16px; }
.capital-teaser .eyebrow { font-size:12px; margin:0 0 12px; }
.about-people { text-align:left; padding-bottom:35px; }
.about-people h1 { margin:0 0 20px; }
.about-people p { max-width:600px; }
.founder-story { background:#f5f0e8; padding:64px 0; }
.founder-story .container { display:grid; grid-template-columns:240px 1fr; gap:64px; align-items:center; }
.founder-story img { width:240px; height:300px; object-fit:cover; object-position:50% 20%; border-radius:4px; }
.founder-story h2 span { font-size:20px; white-space:nowrap; }
.founder-story p:not(.eyebrow) { max-width:580px; font-size:17px; line-height:1.7; margin:24px 0; }
.founder-story blockquote { font-size:21px; line-height:1.55; margin:0; max-width:580px; }
.founder-story cite { display:block; font-size:13px; font-style:normal; margin-top:14px; color:#715537; }
.meeting-end { text-align:center; }
.meeting-end p { max-width:480px; margin:24px auto; font-size:17px; line-height:1.6; }
.meeting-contacts { display:flex; justify-content:center; gap:24px; margin-top:24px; flex-wrap:wrap; }
.meeting-contacts a { color:white; min-height:44px; display:inline-flex; align-items:center; }
.anchor-target { display:block; }
@media(max-width:1199px) {
 .header__nav .nav-podcast__icons { display:none; }
 .intro-people > .container { gap:28px; }
 .intro-people__photos img { height:310px; }
 .journey-steps { gap:16px; }
}
@media(max-width:900px) {
 .intro-hp.intro-people { padding-top:110px; }
 .intro-people > .container { grid-template-columns:1fr 1fr; }
 .intro-people__photos img { height:280px; }
 .people-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .journey-steps { grid-template-columns:1fr; }
 .journey-steps li { display:grid; grid-template-columns:44px 1fr; gap:16px; padding-top:20px; }
 .journey-steps li > span { margin:4px 0 0; }
 .journey-steps h3 { margin-bottom:8px; }
 .benefit-grid { gap:24px; }
}
@media(max-width:600px) {
 .intro-hp.intro-people { padding:96px 0 28px; }
 .intro-people > .container { display:flex; flex-direction:column; gap:28px; align-items:stretch; }
 .intro-people h1 { font-size:38px; margin-bottom:16px; }
 .intro-people .intro-people__lead { font-size:16px; margin-bottom:18px; }
 .intro-people .eyebrow { margin-bottom:14px; }
 .intro-people__actions .btn { padding:14px 16px; font-size:14px; }
 .intro-people__photos img { height:195px; border-radius:70px 70px 4px 4px; }
 .intro-people__photos figure:nth-child(2) { margin-top:0; }
 .intro-people__photos figcaption { margin-top:8px; font-size:13px; }
 .intro-people .intro-people__note { font-size:12px; margin-top:12px; }
 .team-people { padding:32px 0; }
 .section-heading { display:block; margin-bottom:24px; }
 .section-heading .text-link { margin-top:12px; }
 .people-grid { gap:28px 16px; }
 .people-card img { height:175px; }
 .people-card h3 { font-size:18px; line-height:1.25; margin-top:12px; }
 .people-card p { font-size:13px; }
 .people-card .people-role { font-size:11px; }
 .journey,.advantages-plain,.founder-story { padding:40px 0; }
 .journey-next,.capital-teaser > .container { align-items:flex-start; flex-direction:column; }
 .benefit-grid { grid-template-columns:1fr; }
 .founder-story .container { grid-template-columns:1fr; gap:28px; }
 .founder-story img { width:180px; height:225px; }
 .founder-story h2 span { display:block; margin-top:10px; }
 .meeting-contacts { gap:4px; flex-direction:column; align-items:center; }
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
 [data-aos],.reveal { opacity:1!important; transform:none!important; }
}
/* Contrast fixes measured in the complete page, including the shared footer. */
.header .btn--cafe,.btn--cafe { color:#161057; background:#d8c5a7; }
.header .btn--cafe:hover,.btn--cafe:hover { color:#fff; background:#5a4339; }
.footer .fc-cafe-400,.claim__text p span { color:#715537; }
.header__nav a { display:inline-flex; align-items:center; }
.header__nav li { display:flex; align-items:center; }
.intro-people__actions .btn { gap:8px; }
button,.btn--prev,.btn--next { min-width:44px; }
input[type="range"] { min-height:44px; }
#cc--main { --cc-btn-primary-bg:#5a4339; --cc-btn-primary-hover-bg:#403028; --cc-btn-primary-text:#fff; --cc-text:#0c0a37; }

/* Investory v13: homepage moves from isolated founder portraits to one team-led first impression. */
.intro-hp.intro-people {
 background:#f5f0e8;
 padding:122px 0 50px;
}
.intro-people > .container {
 grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
 gap:52px;
}
.intro-people h1 {
 max-width:690px;
 letter-spacing:0;
}
.intro-people h1 span {
 display:block;
}
.intro-people .intro-people__lead {
 max-width:520px;
}
.intro-people__media {
 position:relative;
 margin:0;
 min-width:0;
}
.intro-people__media img {
 display:block;
 width:100%;
 height:auto;
 min-height:0;
 aspect-ratio:16 / 10;
 object-fit:cover;
 object-position:50% 46%;
 border-radius:6px;
 box-shadow:0 24px 55px rgba(12,10,55,.16);
}
.intro-people__media figcaption {
 color:#24233f;
 font-size:13px;
 line-height:1.5;
 margin-top:12px;
}
.intro-people__photos {
 display:none;
}
.team-people {
 padding:44px 0 58px;
}
.people-grid,
.people-grid--full {
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:30px 24px;
}
.people-card {
 min-width:0;
 border-top:1px solid #d9cfbf;
 padding-top:14px;
}
.people-card img {
 aspect-ratio:4 / 3;
 height:auto;
 border-radius:6px;
 background:#f5f0e8;
 box-shadow:0 14px 32px rgba(12,10,55,.08);
 object-position:50% 50%;
}
.people-card h3 {
 letter-spacing:0;
}
.people-card .people-role {
 min-height:36px;
 color:#6c5036;
}
.people-card p:not(.people-role) {
 max-width:34ch;
}
.people-history {
 max-width:720px;
}
@media(max-width:1199px) {
 .intro-people > .container {
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
 }
 .intro-people__media img {
  min-height:0;
 }
 .people-card img {
  height:245px;
 }
}
@media(max-width:900px) {
 .intro-people > .container {
  grid-template-columns:1fr;
 }
 .intro-people__media {
  order:-1;
 }
 .intro-people__media img {
  height:54vw;
  min-height:330px;
 }
 .people-grid,
 .people-grid--full {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
}
@media(max-width:600px) {
 .intro-hp.intro-people {
  padding:82px 0 30px;
 }
 .intro-people__media img {
  height:68vw;
  min-height:240px;
  object-position:52% 45%;
 }
 .intro-people__media figcaption {
  font-size:12px;
 }
 .people-grid,
 .people-grid--full {
  grid-template-columns:1fr;
 }
 .people-card {
  display:grid;
  grid-template-columns:120px 1fr;
  gap:16px;
  align-items:start;
 }
 .people-card img {
  height:150px;
 }
 .people-card h3 {
  margin-top:0;
 }
 .people-card .people-role {
  min-height:0;
 }
 .people-card p:not(.people-role) {
  max-width:none;
 }
}
#cc--main .cc-link { color:#5a4339; }
.header__nav a,.footer a,.mobile-menu a { min-width:44px; }
.pagination-wrapper a { min-width:44px; min-height:44px; }
.page-capital .chip,.order-consent,.service-consent { min-height:44px; }
.page-capital .chip:has(input:focus-visible) { outline:3px solid #116caa; outline-offset:4px; box-shadow:0 0 0 7px #fff; }
.podcast-item__content .podcast-episode { font-size:.875rem; color:#715537; margin:0 0 12px; }

/* Investory v21: editorial hero and hub-led journey steps. */
.intro-hp.intro-people.intro-people--editorial {
 position:relative;
 isolation:isolate;
 overflow:hidden;
 min-height:680px;
 padding:150px 0 74px;
 background:#f5f0e8;
 color:#161057;
}
.intro-people--editorial .intro-people__backdrop {
 position:absolute;
 inset:0;
 z-index:-2;
}
.intro-people--editorial .intro-people__backdrop img {
 display:block;
 width:100%;
 height:100%;
 object-fit:cover;
 object-position:52% 42%;
 filter:saturate(.92) contrast(.98);
}
.intro-people--editorial:after {
 content:"";
 position:absolute;
 inset:0;
 z-index:-1;
 background:
  linear-gradient(90deg, rgba(245,240,232,.98) 0%, rgba(245,240,232,.9) 33%, rgba(245,240,232,.32) 62%, rgba(22,16,87,.24) 100%),
  linear-gradient(0deg, rgba(22,16,87,.16), rgba(22,16,87,.02) 58%);
}
.intro-people--editorial > .container {
 display:grid;
 grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
 gap:44px;
 align-items:end;
 min-height:456px;
}
.intro-people--editorial .intro-people__copy {
 max-width:650px;
}
.intro-people--editorial h1 {
 max-width:720px;
 color:#161057;
 font-size:clamp(40px,5.3vw,72px);
 line-height:1.03;
 letter-spacing:-.035em;
 margin-bottom:24px;
}
.intro-people--editorial h1 span {
 display:block;
 color:#715537;
}
.intro-people--editorial .intro-people__lead {
 max-width:520px;
 color:#342f4d;
}
.intro-people--editorial .intro-people__note {
 color:#665f79;
}
.intro-people--editorial .intro-people__media {
 display:none;
}
.intro-people__signal {
 justify-self:end;
 align-self:end;
 max-width:350px;
 padding:16px 18px;
 color:#fff;
 background:rgba(22,16,87,.76);
 border:1px solid rgba(255,255,255,.24);
 border-radius:8px;
 box-shadow:0 20px 60px rgba(22,16,87,.2);
 backdrop-filter:blur(14px);
}
.intro-people__signal p {
 margin:0 0 4px;
 color:#fff;
 font-size:15px;
 font-weight:800;
}
.intro-people__signal span {
 display:block;
 color:rgba(255,255,255,.82);
 font-size:13px;
 line-height:1.45;
}
.people-grid--home {
 grid-template-columns:repeat(4,minmax(0,1fr));
}
.journey-hub {
 background:#f5f0e8;
}
.journey-hub .journey-steps {
 align-items:stretch;
}
.journey-hub .journey-steps li {
 display:grid;
 grid-template-rows:auto 104px auto;
 gap:14px;
 min-height:385px;
 padding:18px 16px;
 background:#fffaf4;
 border-top:1px solid #b5a58e;
}
.journey-hub .journey-num {
 display:block;
 margin:0;
 color:#715537;
 font-size:13px;
 font-weight:800;
 letter-spacing:.08em;
}
.journey-hub-card {
 position:relative;
 display:block;
 height:104px;
 overflow:hidden;
 border:1px solid rgba(22,16,87,.12);
 border-radius:10px;
 background:#e9e3eb;
 box-shadow:0 12px 28px rgba(22,16,87,.08);
}
.journey-hub-card img {
 display:block;
 width:100%;
 height:100%;
 object-fit:cover;
 object-position:50% 12%;
}
.journey-hub-card--locked span {
 position:absolute;
 right:8px;
 bottom:8px;
 padding:5px 8px;
 color:#715537;
 background:rgba(255,250,244,.95);
 border:1px solid rgba(170,140,100,.4);
 border-radius:999px;
 font-size:10px;
 font-weight:800;
}
.journey-hub .journey-steps li > div {
 display:grid;
 grid-template-rows:minmax(58px,auto) 1fr auto;
 gap:10px;
 min-height:202px;
}
.journey-hub .journey-steps h3 {
 min-height:58px;
 margin:0;
}
.journey-hub .journey-steps p {
 margin:0;
}
.journey-link-label {
 align-self:end;
 color:#161057;
 font-size:13px;
 font-weight:850;
 line-height:1.35;
 text-decoration:none;
}
a.journey-link-label:after {
 content:" →";
 color:#aa8c64;
}
.journey-hub .journey-next {
 align-items:center;
 background:#fffaf4;
 border:1px solid rgba(181,165,142,.72);
 border-radius:8px;
 padding:24px;
}
@media(max-width:1199px) {
 .journey-hub .journey-steps {
  grid-template-columns:repeat(3,minmax(0,1fr));
 }
 .journey-hub .journey-steps li {
  min-height:350px;
 }
}
@media(max-width:900px) {
 .intro-hp.intro-people.intro-people--editorial {
  min-height:0;
  padding:118px 0 46px;
 }
 .intro-people--editorial:after {
  background:
   linear-gradient(0deg, rgba(245,240,232,.98) 0%, rgba(245,240,232,.86) 45%, rgba(245,240,232,.32) 100%),
   linear-gradient(90deg, rgba(22,16,87,.18), rgba(22,16,87,.04));
 }
 .intro-people--editorial > .container {
  display:block;
  min-height:560px;
 }
 .intro-people__signal {
  margin-top:34px;
  justify-self:start;
 }
 .people-grid--home,
 .journey-hub .journey-steps {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
 .journey-hub .journey-steps li {
  min-height:0;
 }
}
@media(max-width:600px) {
 .intro-hp.intro-people.intro-people--editorial {
  padding:94px 0 34px;
 }
 .intro-people--editorial > .container {
  min-height:520px;
 }
 .intro-people--editorial h1 {
  font-size:38px;
 }
 .intro-people__signal {
  max-width:none;
 }
 .people-grid--home,
 .journey-hub .journey-steps {
  grid-template-columns:1fr;
 }
 .journey-hub .journey-steps li {
  grid-template-columns:44px 112px 1fr;
  grid-template-rows:auto;
  align-items:start;
 }
 .journey-hub-card {
  height:94px;
 }
 .journey-hub .journey-steps li > div {
  min-height:0;
 }
 .journey-hub .journey-steps h3 {
  min-height:0;
 }
}

/* Investory v22: approved split-premium hero and calmer responsive journey links. */
.intro-hp.intro-people.intro-people--split-premium {
 position:relative;
 overflow:hidden;
 min-height:0;
 padding:132px 0 64px;
 background:#f5f0e8;
 color:#161057;
}
.intro-people--split-premium > .container {
 display:grid;
 grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
 gap:52px;
 align-items:center;
}
.intro-people--split-premium .intro-people__copy {
 max-width:650px;
}
.intro-people--split-premium h1 {
 max-width:720px;
 color:#161057;
 font-size:clamp(40px,5.2vw,72px);
 line-height:1.03;
 letter-spacing:-.035em;
 margin:0 0 24px;
}
.intro-people--split-premium h1 span {
 display:block;
 color:#715537;
}
.intro-people--split-premium .intro-people__lead {
 max-width:520px;
 color:#342f4d;
}
.intro-people--split-premium .intro-people__note {
 color:#665f79;
}
.intro-people--split-premium .intro-people__media {
 display:block;
 position:relative;
 min-width:0;
 margin:0;
 overflow:hidden;
 border-radius:10px;
 box-shadow:0 28px 70px rgba(12,10,55,.16);
 background:#ded6cc;
}
.intro-people--split-premium .intro-people__media:after {
 content:"";
 position:absolute;
 inset:0;
 background:linear-gradient(0deg, rgba(22,16,87,.42), transparent 52%);
 pointer-events:none;
}
.intro-people--split-premium .intro-people__media img {
 display:block;
 width:100%;
 height:auto;
 aspect-ratio:16 / 10;
 object-fit:cover;
 object-position:52% 42%;
 border-radius:0;
 box-shadow:none;
 filter:saturate(.92) contrast(.97);
}
.intro-people--split-premium .intro-people__media figcaption {
 position:absolute;
 left:18px;
 right:18px;
 bottom:18px;
 z-index:2;
 display:flex;
 flex-wrap:wrap;
 gap:8px;
 margin:0;
 color:#fff;
}
.intro-people--split-premium .intro-people__media figcaption span {
 display:inline-flex;
 align-items:center;
 min-height:32px;
 padding:0 10px;
 color:#fff;
 background:rgba(22,16,87,.74);
 border:1px solid rgba(255,255,255,.24);
 border-radius:999px;
 backdrop-filter:blur(10px);
 font-size:12px;
 font-weight:800;
 line-height:1;
}
.journey-hub .journey-steps {
 align-items:stretch;
}
.journey-hub .journey-steps li {
 grid-template-rows:auto 58px 1fr;
 gap:13px;
 min-height:322px;
 padding:18px 16px;
}
.journey-hub-card {
 width:58px;
 height:58px;
 border-radius:11px;
 box-shadow:0 8px 18px rgba(22,16,87,.08);
}
.journey-hub-card img {
 object-position:50% 18%;
}
.journey-hub-card--locked span {
 right:-5px;
 bottom:-5px;
 width:22px;
 height:22px;
 padding:0;
 overflow:hidden;
 color:transparent;
 border-radius:50%;
}
.journey-hub-card--locked span:before {
 content:"";
 position:absolute;
 left:7px;
 top:9px;
 width:8px;
 height:7px;
 border:2px solid #715537;
 border-top:0;
 border-radius:2px;
}
.journey-hub-card--locked span:after {
 content:"";
 position:absolute;
 left:8px;
 top:4px;
 width:6px;
 height:7px;
 border:2px solid #715537;
 border-bottom:0;
 border-radius:7px 7px 0 0;
}
.journey-hub .journey-steps li > div {
 min-height:0;
 grid-template-rows:minmax(58px,auto) 1fr auto;
}
@media(max-width:1199px) {
 .intro-people--split-premium > .container {
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:34px;
 }
 .journey-hub .journey-steps {
  grid-template-columns:repeat(3,minmax(0,1fr));
 }
 .journey-hub .journey-steps li {
  min-height:280px;
 }
}
@media(max-width:900px) {
 .intro-hp.intro-people.intro-people--split-premium {
  padding:110px 0 44px;
 }
 .intro-people--split-premium > .container {
  grid-template-columns:1fr;
 }
 .intro-people--split-premium .intro-people__media {
  order:-1;
 }
 .intro-people--split-premium .intro-people__media img {
  height:54vw;
  min-height:330px;
 }
 .journey-hub .journey-steps {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
}
@media(max-width:600px) {
 .intro-hp.intro-people.intro-people--split-premium {
  padding:90px 0 34px;
 }
 .intro-people--split-premium h1 {
  font-size:38px;
 }
 .intro-people--split-premium .intro-people__media img {
  height:68vw;
  min-height:246px;
 }
 .intro-people--split-premium .intro-people__media figcaption {
  left:12px;
  right:12px;
  bottom:12px;
 }
 .intro-people--split-premium .intro-people__media figcaption span {
  min-height:28px;
  font-size:11px;
 }
 .journey-hub .journey-steps {
  grid-template-columns:1fr;
 }
 .journey-hub .journey-steps li {
  display:grid;
  grid-template-columns:42px 58px minmax(0,1fr);
  grid-template-rows:auto;
  gap:12px;
  min-height:0;
  align-items:start;
 }
 .journey-hub .journey-num,
 .journey-hub-card {
  margin-top:2px;
 }
 .journey-hub .journey-steps li > div {
  display:block;
 }
 .journey-hub .journey-steps h3 {
  min-height:0;
  margin-bottom:8px;
 }
.journey-hub .journey-steps p {
  margin-bottom:10px;
 }
}

/* Investory v23: clearer team-stage hero and fully graphic journey icons. */
.intro-hp.intro-people.intro-people--team-stage {
 position:relative;
 overflow:hidden;
 min-height:0;
 padding:124px 0 56px;
 background:linear-gradient(135deg, rgba(255,253,249,.94) 0%, rgba(245,240,232,.98) 52%, rgba(232,222,207,.76) 100%);
 color:#161057;
}
.intro-people--team-stage > .container {
 display:block;
}
.intro-people--team-stage .intro-people__copy {
 max-width:870px;
}
.intro-people--team-stage h1 {
 max-width:850px;
 color:#161057;
 font-size:clamp(42px,6vw,78px);
 line-height:1.02;
 letter-spacing:0;
 margin:0 0 24px;
}
.intro-people--team-stage h1 span {
 display:block;
 color:#715537;
}
.intro-people--team-stage .intro-people__lead {
 max-width:570px;
 color:#342f4d;
}
.intro-people--team-stage .intro-people__note {
 color:#665f79;
}
.intro-people--team-stage .intro-people__media {
 position:relative;
 display:block;
 margin:42px 0 0;
 overflow:visible;
 border-radius:12px;
 background:#ddd3c4;
}
.intro-people--team-stage .intro-people__media img {
 display:block;
 width:100%;
 height:clamp(340px,38vw,520px);
 object-fit:cover;
 object-position:50% 42%;
 border-radius:12px;
 box-shadow:0 28px 70px rgba(12,10,55,.17);
 filter:saturate(.92) contrast(.98);
}
.intro-people--team-stage .intro-people__media:before {
 content:"";
 position:absolute;
 inset:0;
 z-index:1;
 pointer-events:none;
 border-radius:12px;
 background:linear-gradient(180deg, rgba(22,16,87,.06), rgba(22,16,87,.24)), linear-gradient(90deg, rgba(245,240,232,.16), transparent 44%);
}
.intro-people--team-stage .intro-people__media figcaption {
 position:relative;
 z-index:2;
 max-width:520px;
 margin:14px 0 0;
 color:#625b56;
 font-size:13px;
 line-height:1.5;
}
.journey-graphic {
 background:#f5f0e8;
}
.journey-graphic .journey-steps {
 align-items:stretch;
}
.journey-graphic .journey-steps li {
 display:grid;
 grid-template-rows:auto 68px 1fr;
 gap:14px;
 min-height:328px;
 padding:20px 16px;
 background:#fffaf4;
 border-top:1px solid #b5a58e;
}
.journey-graphic .journey-num {
 display:block;
 margin:0;
 color:#715537;
 font-size:13px;
 font-weight:800;
 letter-spacing:.08em;
}
.journey-graphic .journey-hub-card {
 position:relative;
 display:grid;
 place-items:center;
 width:68px;
 height:68px;
 min-height:68px;
 overflow:visible;
 border:1px solid rgba(113,85,55,.26);
 border-radius:16px;
 background:linear-gradient(135deg,#fffdf9,#eee6d8);
 box-shadow:0 12px 26px rgba(22,16,87,.09);
}
.journey-graphic .journey-hub-card img {
 display:none;
}
.journey-graphic .journey-hub-card:before {
 content:"";
 width:38px;
 height:38px;
 background-repeat:no-repeat;
 background-position:center;
 background-size:38px 38px;
}
.journey-graphic .journey-hub-card:after {
 content:"";
 position:absolute;
 inset:-5px;
 border:1px solid rgba(188,168,136,.28);
 border-radius:20px;
 pointer-events:none;
}
.journey-graphic .journey-hub-card--locked > span {
 position:absolute;
 right:-8px;
 bottom:-8px;
 display:block;
 width:25px;
 height:25px;
 overflow:hidden;
 padding:0;
 color:transparent;
 border:1px solid rgba(188,168,136,.62);
 border-radius:50%;
 background:#fffaf4;
 box-shadow:0 8px 18px rgba(22,16,87,.12);
}
.journey-graphic .journey-hub-card--locked > span:before {
 content:"";
 position:absolute;
 left:7px;
 top:10px;
 width:9px;
 height:8px;
 border:2px solid #715537;
 border-top:0;
 border-radius:2px;
}
.journey-graphic .journey-hub-card--locked > span:after {
 content:"";
 position:absolute;
 left:8px;
 top:4px;
 width:7px;
 height:8px;
 border:2px solid #715537;
 border-bottom:0;
 border-radius:8px 8px 0 0;
}
.journey-graphic .journey-steps li:nth-child(1) .journey-hub-card:before {
 background-image:url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 38 38' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 28h24M10 24V14M18 24V9M26 24V17' stroke='%23161057' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M8 30h22' stroke='%23BCA888' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.journey-graphic .journey-steps li:nth-child(2) .journey-hub-card:before {
 background-image:url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 38 38' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 15h16a3 3 0 0 1 3 3v10H8V18a3 3 0 0 1 3-3Z' stroke='%23161057' stroke-width='2.2' stroke-linejoin='round'/%3E%3Cpath d='M14 15v-3a3 3 0 0 1 3-3h4a3 3 0 0 1 3 3v3M8 21h22' stroke='%23161057' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M19 20v4' stroke='%23BCA888' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.journey-graphic .journey-steps li:nth-child(3) .journey-hub-card:before {
 background-image:url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 38 38' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 18.5 19 11l9 7.5V29H10V18.5Z' stroke='%23161057' stroke-width='2.2' stroke-linejoin='round'/%3E%3Cpath d='M15 29v-8h8v8' stroke='%23161057' stroke-width='2.2' stroke-linejoin='round'/%3E%3Cpath d='m24 13 5 5' stroke='%23BCA888' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.journey-graphic .journey-steps li:nth-child(4) .journey-hub-card:before {
 background-image:url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 38 38' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='12' y='7' width='14' height='24' rx='3' stroke='%23161057' stroke-width='2.2'/%3E%3Cpath d='M16 12h6M16 17h6M16 22h3' stroke='%23161057' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M18 27h2' stroke='%23BCA888' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.journey-graphic .journey-steps li:nth-child(5) .journey-hub-card:before {
 background-image:url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 38 38' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 28h22' stroke='%23161057' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='m10 24 6-6 5 4 7-10' stroke='%23161057' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M24 12h4v4' stroke='%23BCA888' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.journey-graphic .journey-steps li > div {
 display:grid;
 grid-template-rows:minmax(58px,auto) 1fr auto;
 gap:10px;
 min-height:0;
}
.journey-graphic .journey-steps h3 {
 min-height:58px;
 margin:0;
}
.journey-graphic .journey-steps p {
 margin:0;
}
.journey-graphic .journey-link-label {
 align-self:end;
 color:#161057;
 font-size:13px;
 font-weight:850;
 line-height:1.35;
 text-decoration:none;
}
.journey-graphic a.journey-link-label:after {
 content:" →";
 color:#aa8c64;
}
.journey-graphic .journey-next {
 align-items:center;
 background:#fffaf4;
 border:1px solid rgba(181,165,142,.72);
 border-radius:8px;
 padding:24px;
}
@media(max-width:1199px) {
 .journey-graphic .journey-steps {
  grid-template-columns:repeat(3,minmax(0,1fr));
 }
 .journey-graphic .journey-steps li {
  min-height:286px;
 }
}
@media(max-width:900px) {
 .intro-hp.intro-people.intro-people--team-stage {
  padding:108px 0 42px;
 }
 .intro-people--team-stage h1 {
  font-size:clamp(38px,8vw,58px);
 }
 .intro-people--team-stage .intro-people__media img {
  height:56vw;
  min-height:320px;
 }
 .journey-graphic .journey-steps {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
 .journey-graphic .journey-steps li {
  min-height:0;
 }
}
@media(max-width:600px) {
 .intro-hp.intro-people.intro-people--team-stage {
  padding:90px 0 34px;
 }
 .intro-people--team-stage h1 {
  font-size:38px;
 }
 .intro-people--team-stage .intro-people__media {
  margin-top:28px;
 }
 .intro-people--team-stage .intro-people__media img {
  height:70vw;
  min-height:250px;
  object-position:50% 44%;
 }
 .journey-graphic .journey-steps {
  grid-template-columns:1fr;
 }
 .journey-graphic .journey-steps li {
  display:grid;
  grid-template-columns:42px 68px minmax(0,1fr);
  grid-template-rows:auto;
  gap:12px;
  align-items:start;
 }
 .journey-graphic .journey-num,
 .journey-graphic .journey-hub-card {
  margin-top:2px;
 }
 .journey-graphic .journey-steps li > div {
  display:block;
 }
 .journey-graphic .journey-steps h3 {
  min-height:0;
  margin-bottom:8px;
 }
 .journey-graphic .journey-link-label {
  display:inline-flex;
  margin-top:10px;
 }
}

/* Investory v24: editorial cover hero, not a framed team photo. */
.intro-hp.intro-people.intro-people--team-stage {
 isolation:isolate;
 min-height:760px;
 padding:148px 0 92px;
 background:#f5f0e8;
}
.intro-hp.intro-people.intro-people--team-stage:before {
 content:"";
 position:absolute;
 inset:0;
 z-index:-2;
 background:
  linear-gradient(90deg, #f5f0e8 0%, #f5f0e8 38%, rgba(245,240,232,.82) 52%, rgba(245,240,232,.1) 72%),
  linear-gradient(180deg, rgba(22,16,87,.08), rgba(22,16,87,.2));
}
.intro-people--team-stage > .container {
 position:relative;
 display:flex;
 min-height:520px;
 align-items:center;
}
.intro-people--team-stage .intro-people__copy {
 position:relative;
 z-index:3;
 max-width:700px;
 padding-right:24px;
}
.intro-people--team-stage h1 {
 max-width:650px;
 font-size:clamp(42px,5.4vw,76px);
 line-height:1.02;
 letter-spacing:-.025em;
}
.intro-people--team-stage .intro-people__lead {
 max-width:560px;
 font-size:19px;
 line-height:1.62;
}
.intro-people--team-stage .intro-people__media {
 position:absolute;
 inset:0 0 0 auto;
 z-index:1;
 width:min(78vw,1120px);
 margin:0;
 overflow:hidden;
 border-radius:0;
 background:transparent;
}
.intro-people--team-stage .intro-people__media:before {
 content:"";
 position:absolute;
 inset:0;
 z-index:2;
 border-radius:0;
 background:
  linear-gradient(90deg, rgba(245,240,232,.98) 0%, rgba(245,240,232,.82) 24%, rgba(245,240,232,.22) 48%, rgba(22,16,87,.18) 100%),
  linear-gradient(180deg, rgba(245,240,232,.08), rgba(22,16,87,.34));
}
.intro-people--team-stage .intro-people__media img {
 width:100%;
 height:100%;
 min-height:520px;
 object-fit:cover;
 object-position:50% 44%;
 border-radius:0;
 box-shadow:none;
 filter:saturate(.9) contrast(.96);
}
.intro-people--team-stage .intro-people__media figcaption {
 position:absolute;
 right:28px;
 bottom:24px;
 z-index:4;
 max-width:300px;
 margin:0;
 color:rgba(255,255,255,.88);
 font-size:12px;
 line-height:1.45;
 text-align:right;
}
@media(max-width:1199px) {
 .intro-hp.intro-people.intro-people--team-stage {
  min-height:700px;
 }
 .intro-people--team-stage .intro-people__media {
  right:0;
  width:min(82vw,900px);
 }
 .intro-people--team-stage h1 {
  max-width:570px;
 }
}
@media(max-width:900px) {
 .intro-hp.intro-people.intro-people--team-stage {
  min-height:0;
  padding:112px 0 44px;
 }
 .intro-hp.intro-people.intro-people--team-stage:before {
  background:linear-gradient(180deg, #f5f0e8 0%, #f5f0e8 54%, rgba(245,240,232,.92) 70%, rgba(245,240,232,.1) 100%);
 }
 .intro-people--team-stage > .container {
  display:flex;
  flex-direction:column;
  min-height:0;
  align-items:stretch;
 }
 .intro-people--team-stage .intro-people__copy {
  padding-right:0;
 }
 .intro-people--team-stage .intro-people__media {
  position:relative;
  inset:auto;
  order:2;
  width:calc(100% + 30px);
  margin:34px -15px 0;
  height:58vw;
  min-height:340px;
 }
 .intro-people--team-stage .intro-people__media:before {
  background:linear-gradient(180deg, rgba(22,16,87,.04), rgba(22,16,87,.26));
 }
 .intro-people--team-stage .intro-people__media img {
  min-height:0;
 }
}
@media(max-width:600px) {
 .intro-hp.intro-people.intro-people--team-stage {
  padding:92px 0 34px;
 }
 .intro-people--team-stage h1 {
  font-size:38px;
  line-height:1.03;
 }
 .intro-people--team-stage .intro-people__lead {
  font-size:16px;
 }
 .intro-people--team-stage .intro-people__media {
  width:calc(100% + 30px);
  height:62vw;
  min-height:240px;
 }
 .intro-people--team-stage .intro-people__media figcaption {
  left:15px;
  right:15px;
  bottom:12px;
  max-width:none;
  text-align:left;
  font-size:11px;
 }
}

.journey-graphic .journey-preview {
 display:block;
 width:min(100%, 420px);
 aspect-ratio:760 / 475;
 min-height:0;
 padding:0;
 overflow:hidden;
 border:1px solid rgba(188,168,136,.48);
 border-radius:16px;
 background:#f8f4ed;
 box-shadow:0 18px 44px rgba(22,16,87,.12);
}
.journey-graphic .journey-preview:before,
.journey-graphic .journey-preview:after {
 display:none;
 content:none;
}
.journey-graphic .journey-preview img {
 display:block;
 width:100%;
 height:100%;
 object-fit:cover;
}
.journey-graphic .journey-preview:hover,
.journey-graphic a.journey-preview:focus-visible {
 transform:translateY(-2px);
 box-shadow:0 22px 52px rgba(22,16,87,.16);
}
@media(max-width:980px) {
 .journey-graphic .journey-preview {
  width:100%;
  max-width:560px;
 }
}
@media(max-width:560px) {
 .journey-graphic .journey-preview {
  border-radius:12px;
 }
}

/* Investory v35: compact three-column product previews in the journey flow. */
.journey-graphic .journey-steps {
 grid-template-columns:repeat(3, minmax(0, 1fr));
 gap:22px;
}
.journey-graphic .journey-steps li {
 position:relative;
 display:flex;
 flex-direction:column;
 gap:18px;
 min-height:0;
 padding:18px 18px 34px;
 box-sizing:border-box;
 border:1px solid rgba(181,165,142,.55);
 border-radius:10px;
 background:rgba(255,250,244,.7);
}
.journey-graphic .journey-num {
 position:absolute;
 left:16px;
 top:16px;
 z-index:2;
 display:inline-grid;
 place-items:center;
 width:36px;
 height:36px;
 margin:0;
 border-radius:50%;
 font-size:12px;
 color:#fffaf4;
 background:#161057;
 box-shadow:0 10px 22px rgba(22,16,87,.18);
}
.journey-graphic .journey-preview {
 flex:0 0 auto;
 position:relative;
 width:100%;
 max-width:none;
 height:auto;
 min-height:0;
 overflow:hidden;
 aspect-ratio:16 / 9;
 border-radius:14px;
 cursor:pointer;
}
.journey-graphic .journey-preview:before {
 content:"";
 position:absolute;
 inset:0;
 z-index:1;
 display:block;
 background:linear-gradient(180deg, rgba(22,16,87,0) 48%, rgba(22,16,87,.34) 100%);
 opacity:.85;
 pointer-events:none;
 transition:opacity .18s ease;
}
.journey-graphic .journey-preview:after {
 content:"▶ Přehrát ukázku";
 position:absolute;
 right:12px;
 bottom:12px;
 z-index:2;
 display:inline-flex;
 align-items:center;
 gap:7px;
 max-width:calc(100% - 24px);
 min-height:30px;
 padding:6px 11px;
 color:#fffaf4;
 background:rgba(22,16,87,.88);
 border:1px solid rgba(255,250,244,.28);
 border-radius:999px;
 box-shadow:0 10px 24px rgba(22,16,87,.22);
 font-size:12px;
 font-weight:850;
 line-height:1.2;
 pointer-events:none;
 transition:background .18s ease, transform .18s ease, opacity .18s ease;
}
.journey-graphic .journey-preview:hover:after,
.journey-graphic .journey-steps li:focus-within .journey-preview:after {
 content:"Ukázka běží";
 background:rgba(188,168,136,.94);
 color:#161057;
 transform:translateY(-2px);
}
.journey-graphic .journey-preview.is-playing:after {
 content:"Ukázka běží";
 background:rgba(188,168,136,.94);
 color:#161057;
}
.journey-graphic .journey-preview:hover:before,
.journey-graphic .journey-preview.is-playing:before {
 opacity:.55;
}
.journey-graphic .journey-steps li > div {
 display:flex;
 flex:1 1 auto;
 flex-direction:column;
 min-height:0;
}
.journey-graphic .journey-steps h3 {
 min-height:0;
 margin:0 0 10px;
 font-size:20px;
}
.journey-graphic .journey-steps p {
 font-size:14px;
 line-height:1.58;
 margin:0;
}
.journey-graphic .journey-link-label {
 display:inline-flex;
 align-self:flex-start;
 margin-top:auto;
 padding-top:14px;
 padding-bottom:2px;
}
.journey-graphic .journey-preview:hover,
.journey-graphic .journey-steps li:focus-within .journey-preview {
 transform:translateY(-2px);
 box-shadow:0 18px 42px rgba(22,16,87,.16);
}
@media(max-width:1100px) {
 .journey-graphic .journey-steps {
  grid-template-columns:repeat(2, minmax(0, 1fr));
 }
}
@media(max-width:720px) {
 .journey-graphic .journey-steps {
  grid-template-columns:1fr;
 }
 .journey-graphic .journey-steps li {
  gap:18px;
  padding:22px 22px 34px;
 }
 .journey-graphic .journey-num {
  left:22px;
  top:22px;
 }
 .journey-graphic .journey-preview {
  border-radius:14px;
 }
 .journey-graphic .journey-preview:after {
  content:"▶ Ukázka";
 }
 .journey-graphic .journey-preview:hover:after,
 .journey-graphic .journey-preview.is-playing:after {
  content:"Běží";
 }
 .journey-graphic .journey-steps h3 {
  font-size:22px;
 }
 .journey-graphic .journey-steps p {
  font-size:15px;
 }
}
@media(max-width:520px) {
 .journey-graphic .journey-steps li {
  padding:16px 16px 30px;
 }
 .journey-graphic .journey-num {
  width:38px;
  height:38px;
  left:18px;
  top:18px;
  font-size:12px;
 }
 .journey-graphic .journey-steps p {
  font-size:15px;
 }
}

/* Investory v36: live previews without a play overlay. */
.journey-graphic .section-heading {
 align-items:flex-end;
}
.journey-preview-hint {
 display:flex;
 align-items:center;
 gap:10px;
 width:min(100%, 330px);
 margin:0 0 3px auto;
 color:#665f79;
 font-size:13px;
 line-height:1.45;
}
.journey-preview-hint-touch {
 display:none;
}
.journey-live-dot {
 position:relative;
 flex:0 0 auto;
 display:inline-block;
 width:8px;
 height:8px;
 border-radius:50%;
 background:#35745f;
}
.journey-live-dot:after {
 content:"";
 position:absolute;
 inset:-4px;
 border:1px solid #35745f;
 border-radius:50%;
 opacity:.4;
 animation:journey-live-pulse 1.8s ease-out infinite;
}
.journey-graphic .journey-preview {
 display:block;
 width:100%;
 height:auto;
 min-height:0;
 padding:0;
 overflow:hidden;
 aspect-ratio:auto;
 border:1px solid rgba(188,168,136,.48);
 border-radius:14px;
 color:#665f79;
 font:inherit;
 text-align:left;
 background:#fffaf4;
 cursor:pointer;
 appearance:none;
}
.journey-graphic .journey-preview:before,
.journey-graphic .journey-preview:after {
 display:none!important;
 content:none!important;
}
.journey-graphic .journey-preview img {
 display:block;
 width:100%;
 height:auto;
 aspect-ratio:16 / 9;
 object-fit:cover;
}
.journey-preview-meta {
 display:flex;
 align-items:center;
 justify-content:flex-start;
 gap:12px;
 min-height:42px;
 padding:9px 12px;
 border-top:1px solid rgba(188,168,136,.34);
 font-size:12px;
 line-height:1.25;
 transition:background .18s ease;
}
.journey-preview-state {
 display:inline-flex;
 align-items:center;
 gap:8px;
 color:#35745f;
 font-weight:700;
}
.journey-graphic .journey-preview.is-playing .journey-preview-meta {
 background:rgba(53,116,95,.08);
}
.journey-graphic .journey-preview.is-playing .journey-live-dot:after {
 animation-duration:.85s;
}
.journey-graphic .journey-preview:focus-visible {
 outline:3px solid rgba(22,16,87,.28);
 outline-offset:3px;
}
@keyframes journey-live-pulse {
 0% { transform:scale(.65); opacity:.55; }
 75%,100% { transform:scale(1.55); opacity:0; }
}
@media(hover:none) {
 .journey-preview-hint-desktop {
  display:none;
 }
 .journey-preview-hint-touch {
  display:inline;
 }
}
@media(max-width:720px) {
 .journey-graphic .section-heading {
  align-items:flex-start;
  flex-direction:column;
  gap:16px;
 }
 .journey-preview-hint {
  width:100%;
  max-width:360px;
  margin:0;
 }
 .journey-preview-meta {
  min-height:44px;
  padding:10px 13px;
 }
}
@media(prefers-reduced-motion:reduce) {
 .journey-live-dot:after {
  animation:none;
 }
}

/* October 2026 preview: full-bleed opening image and aligned capital teaser. */
.intro-hp.intro-people.intro-people--team-stage {
 overflow:hidden;
}
.intro-people--team-stage > .container {
 position:static;
}
.intro-people--team-stage .intro-people__copy {
 position:relative;
 z-index:4;
}
.intro-people--team-stage .intro-people__media {
 inset:0 0 0 auto;
 width:min(76vw, 1180px);
 height:100%;
}
.intro-people--team-stage .intro-people__media img {
 min-height:100%;
}
.capital-teaser > .container {
 display:grid;
 grid-template-columns:minmax(0, 1fr) auto;
 align-items:center;
 gap:48px;
}
.capital-teaser > .container > div {
 width:auto!important;
 max-width:660px;
 margin:0!important;
}
.capital-teaser .btn {
 justify-self:end;
 align-self:center;
 margin:0;
}
@media(max-width:900px) {
 .intro-people--team-stage > .container {
  position:relative;
 }
 .intro-people--team-stage .intro-people__media {
  position:relative;
  inset:auto;
  width:100vw;
  height:58vw;
  margin:34px 0 0 calc(50% - 50vw);
 }
 .intro-people--team-stage .intro-people__media img {
  min-height:0;
 }
}
@media(max-width:720px) {
 .capital-teaser > .container {
  grid-template-columns:1fr;
  gap:24px;
 }
 .capital-teaser .btn {
  justify-self:start;
 }
}

/* Brand foundation: motto, mission and values in one calm editorial block. */
.brand-foundation {
 padding:104px 0;
 color:#161057;
 background:#fffaf4;
}
.brand-foundation .container {
 display:grid;
 grid-template-columns:minmax(0, .82fr) minmax(0, 1.18fr);
 gap:72px;
 align-items:start;
}
.brand-foundation__intro {
 position:sticky;
 top:120px;
}
.brand-foundation__intro h2 {
 max-width:620px;
 margin:0;
 font-size:clamp(38px, 4.4vw, 64px);
 line-height:1.06;
 letter-spacing:-.035em;
}
.brand-foundation__mission {
 max-width:600px;
 margin:30px 0 0;
 color:#665f79;
 font-size:18px;
 line-height:1.72;
}
.brand-foundation__mission span {
 display:block;
 margin-bottom:8px;
 color:#8b6d4c;
 font-size:12px;
 font-weight:800;
 letter-spacing:.14em;
 text-transform:uppercase;
}
.brand-values {
 display:grid;
 grid-template-columns:repeat(2, minmax(0, 1fr));
 gap:16px;
 margin:0;
 padding:0;
 list-style:none;
}
.brand-values li {
 min-height:250px;
 padding:26px;
 border:1px solid rgba(188,168,136,.46);
 border-radius:12px;
 background:#f5f0e8;
}
.brand-values li > span {
 display:inline-grid;
 place-items:center;
 width:36px;
 height:36px;
 border-radius:50%;
 color:#fffaf4;
 background:#161057;
 font-size:12px;
 font-weight:700;
}
.brand-values h3 {
 margin:38px 0 12px;
 color:#161057;
 font-size:23px;
 letter-spacing:-.02em;
}
.brand-values p {
 margin:0;
 color:#665f79;
 font-size:15px;
 line-height:1.65;
}

/* Readable zoom for animated product previews without shifting the grid. */
@media(hover:hover) and (pointer:fine) {
 .journey-graphic .journey-steps li {
  isolation:isolate;
 }
 .journey-graphic .journey-preview {
  position:relative;
  z-index:2;
  transform-origin:center center;
  transition:transform .24s cubic-bezier(.2,.75,.25,1), box-shadow .24s ease, border-color .24s ease;
 }
 .journey-graphic .journey-steps li:nth-child(3n + 1) .journey-preview {
  transform-origin:left center;
 }
 .journey-graphic .journey-steps li:nth-child(3n) .journey-preview {
  transform-origin:right center;
 }
 .journey-graphic .journey-steps li:hover,
 .journey-graphic .journey-steps li:focus-within {
  z-index:20;
 }
 .journey-graphic .journey-steps li:hover .journey-preview,
 .journey-graphic .journey-steps li:focus-within .journey-preview {
  z-index:30;
  transform:scale(1.46);
  border-color:rgba(188,168,136,.92);
  box-shadow:0 34px 90px rgba(22,16,87,.32);
 }
}
@media(hover:hover) and (pointer:fine) and (max-width:1100px) {
 .journey-graphic .journey-steps li:nth-child(n) .journey-preview {
  transform-origin:center center;
 }
 .journey-graphic .journey-steps li:nth-child(odd) .journey-preview {
  transform-origin:left center;
 }
 .journey-graphic .journey-steps li:nth-child(even) .journey-preview {
  transform-origin:right center;
 }
}

/* Investory Hub is the sixth step, not a separate promotional section. */
.journey-graphic .journey-step--hub .journey-preview--hub {
 background:#161057;
 text-decoration:none;
}
.journey-graphic .journey-step--hub .journey-preview--hub img {
 object-position:top center;
 filter:saturate(.92) contrast(.98);
}
.journey-graphic .journey-step--hub p strong {
 display:block;
 margin-bottom:6px;
 color:#161057;
 font-weight:750;
}

/* Clear hierarchy for the meeting page. */
.page--contact .about-us-intro .container {
 max-width:880px;
}
.page--contact .about-us-intro h1 {
 max-width:780px;
 margin-right:auto;
 margin-left:auto;
 font-size:clamp(46px, 6vw, 80px);
 line-height:1.02;
 letter-spacing:-.04em;
}
.page--contact .about-us-intro h1 + p {
 max-width:660px;
 margin:24px auto 0;
 font-size:19px;
 line-height:1.65;
}
.contact .container {
 max-width:1220px;
}
.contact-strip {
 display:grid;
 grid-template-columns:repeat(6, minmax(0, 1fr));
 gap:16px;
 align-items:stretch;
}
.contact-strip__item {
 grid-column:span 2;
 display:flex;
 width:auto!important;
 min-width:0;
 min-height:230px;
 margin:0!important;
 padding:28px;
 flex:none!important;
 flex-direction:column;
 justify-content:space-between;
 border-radius:12px;
}
.contact-strip__item--primary {
 grid-column:1 / -1;
 display:grid;
 grid-template-columns:minmax(0, 1fr) auto;
 align-items:center;
 gap:48px;
 min-height:0;
 padding:38px 42px;
}
.contact-strip__item--primary > div {
 max-width:720px;
}
.contact-strip__item--primary .btn {
 width:auto;
 white-space:nowrap;
}
.contact-strip__item .btn {
 align-self:flex-start;
 margin-top:24px;
}

/* The closing invitation keeps one visual axis on every breakpoint. */
.meeting-end .container {
 display:flex;
 flex-direction:column;
 align-items:center;
 text-align:center;
}
.meeting-end .btn {
 display:inline-flex;
 width:auto;
 min-width:0;
 margin:0 auto;
}
.meeting-end .meeting-contacts {
 justify-content:center;
}

@media(max-width:980px) {
 .brand-foundation .container {
  grid-template-columns:1fr;
  gap:44px;
 }
 .brand-foundation__intro {
  position:static;
 }
 .brand-values li {
  min-height:220px;
 }
}
@media(max-width:760px) {
 .brand-foundation {
  padding:72px 0;
 }
 .brand-foundation__intro h2 {
  font-size:38px;
 }
 .brand-foundation__mission {
  font-size:16px;
 }
 .brand-values {
  grid-template-columns:1fr;
 }
 .brand-values li {
  min-height:0;
 }
 .brand-values h3 {
  margin-top:26px;
 }
 .contact-strip {
  grid-template-columns:1fr;
 }
 .contact-strip__item,
 .contact-strip__item--primary {
  grid-column:1;
 }
 .contact-strip__item--primary {
  grid-template-columns:1fr;
  gap:24px;
  padding:30px;
 }
 .contact-strip__item {
  min-height:0;
 }
 .contact-strip__item--primary .btn {
  white-space:normal;
 }
}
@media(prefers-reduced-motion:reduce) {
 .journey-graphic .journey-preview {
  transition:none!important;
 }
}
