/* ==== Justmighty design tokens ==== */
:root{
  --ink:#0E0E0E;
  --ink-2:#1A1A1A;
  --ink-3:#1F1F1F;
  --paper:#F3F3F3;
  --paper-2:#E8E8E8;
  --muted:#8D8D8D;
  --muted-2:#484848;
  --coral:#FF747D;
  --coral-2:#FF828A;
  --orange:#F73F00;
  --line:rgba(243,243,243,0.10);
  --line-ink:rgba(26,26,26,0.10);
  --radius-s:8px;
  --radius:14px;
  --radius-l:24px;
  --pad:36px;
  --maxw:1440px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--ink);
  color:var(--paper);
  font-family:"Hubot Sans","Inter",system-ui,sans-serif;
  font-size:16px;
  line-height:1.45;
  -webkit-font-smoothing:antialiased;
  font-feature-settings:"ss01","ss02";
  overflow-x:hidden;
}

a{color:inherit;text-decoration:none}
button{font:inherit;background:none;border:0;color:inherit;cursor:pointer}

.mono{font-family:"JetBrains Mono",ui-monospace,monospace;letter-spacing:.02em}

/* ==== Layout ==== */
.shell{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);position:relative}
.section{position:relative;padding:120px 0}
.section.compact{padding:72px 0}
section[data-screen-label]{position:relative}

.eyebrow{
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--coral);
  font-weight:500;
  display:inline-flex;align-items:center;gap:10px;
}
.eyebrow::before{
  content:"";display:inline-block;width:6px;height:6px;background:var(--coral);border-radius:999px;
}
.eyebrow--no-dot::before{display:none}

/* ==== Headlines ==== */
.h-display{
  font-family:"Hubot Sans";
  text-transform:uppercase;
  font-weight:500;
  font-stretch:75%;
  font-size:clamp(64px, 14vw, 220px);
  line-height:.86;
  letter-spacing:-0.04em;
  margin:0;
}
.h-1{font-family:"Hubot Sans",sans-serif;font-weight:500;font-size:clamp(48px,7vw,96px);line-height:.95;letter-spacing:-.02em;margin:0;text-transform:uppercase}
.h-2{font-family:"Hubot Sans",sans-serif;font-weight:500;font-size:clamp(36px,4.5vw,64px);line-height:1;letter-spacing:-.015em;margin:0;text-transform:uppercase}
.h-3{font-family:"Hubot Sans",sans-serif;font-weight:500;font-size:clamp(24px,2.4vw,32px);line-height:1.1;letter-spacing:-.005em;margin:0;text-transform:uppercase}
.lede{font-size:clamp(18px,1.5vw,22px);line-height:1.4;font-weight:400;color:var(--paper);max-width:54ch}

/* ==== Buttons ==== */
.btn{
  display:inline-flex;align-items:center;gap:12px;
  padding:14px 22px;border-radius:999px;
  background:var(--paper);color:var(--ink);
  font-weight:500;font-size:15px;
  position:relative;
  transition:transform .25s cubic-bezier(.2,.8,.2,1), background .2s, color .2s;
  will-change:transform;
}
.btn:hover{transform:translateY(-2px) scale(1.02)}
.btn--ghost{background:transparent;color:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}
.btn--ghost:hover{background:var(--paper);color:var(--ink)}
.btn--coral{background:var(--coral);color:var(--ink)}
.btn--coral:hover{background:var(--coral-2)}
.btn .arrow{
  width:22px;height:22px;border-radius:999px;
  background:var(--ink);color:var(--paper);
  display:grid;place-items:center;font-size:11px;
}
.btn--ghost .arrow{background:var(--paper);color:var(--ink)}
.btn--coral .arrow{background:var(--ink);color:var(--coral)}

/* ==== Reveal animations (controlled by motion strength) ==== */
[data-reveal]{
  opacity:0;
  transform:translateY(30px);
  transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);
  transition-delay:var(--reveal-delay,0ms);
}
[data-reveal].is-in{opacity:1;transform:none}
.motion-low [data-reveal]{transition-duration:.4s;transform:translateY(8px)}
.motion-low [data-reveal].is-in{transform:none}
.motion-high [data-reveal]{transform:translateY(60px)}
.motion-high [data-reveal].is-in{transform:none}
.motion-low *{animation-duration:0.001ms !important; transition-duration:0.05s !important}

/* ==== Background tone helpers ==== */
.dark{background:var(--ink);color:var(--paper)}
.paper{background:var(--paper);color:var(--ink)}

/* ==== Nav ==== */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 36px;
  transition:background .3s, backdrop-filter .3s, padding .3s;
}
.nav.scrolled{
  background:rgba(14,14,14,.7);
  backdrop-filter:blur(14px) saturate(120%);
  -webkit-backdrop-filter:blur(14px) saturate(120%);
  padding:14px 36px;
  border-bottom:1px solid var(--line);
}
.nav__brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.02em;font-size:18px}
.nav__brand .dot{width:10px;height:10px;background:var(--coral);border-radius:999px}
.nav__brand-logo{height:18px;width:auto;display:block}
.nav__links{display:flex;gap:6px}
.nav__links a{
  padding:10px 14px;border-radius:999px;font-size:14px;color:var(--paper);
  opacity:.75;transition:opacity .2s, background .2s;
}
.nav__links a:hover{opacity:1;background:rgba(243,243,243,.06)}
.nav__links a.is-active,
.nav__links .nav__kh-trigger.is-active{
  opacity:1;background:rgba(243,243,243,.10);
}
.nav__cta{display:flex;align-items:center;gap:12px}
.nav__cta-justask{display:inline-flex;align-items:center;gap:8px}
.nav__cta-tag{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:9px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--coral);
  background:rgba(255,116,125,.12);
  border:1px solid rgba(255,116,125,.35);
  padding:3px 6px;border-radius:999px;
  line-height:1;
}

/* ==== Hero ==== */
.hero{
  position:relative;
  min-height:100vh;
  padding:140px 36px 60px;
  display:flex;flex-direction:column;justify-content:space-between;
  background:radial-gradient(80% 60% at 70% 20%, rgba(255,116,125,.12), transparent 60%) , var(--ink);
  overflow:hidden;
}
.hero__bg{
  position:absolute;inset:0;
  background:url(./assets/hero-bg.png) center/cover no-repeat;
  opacity:.5;
  mix-blend-mode:screen;
  pointer-events:none;
  filter:contrast(1.05) saturate(.9);
}
.hero__grain{
  position:absolute;inset:0;pointer-events:none;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.4' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.06 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  mix-blend-mode:overlay;opacity:.6;
}
.hero__crystal{
  position:absolute;
  right:-8%;
  top:18%;
  width:88vw;max-width:1500px;
  pointer-events:none;
  transform:scaleX(-1) rotate(-8deg);
  filter:drop-shadow(0 60px 100px rgba(0,0,0,.55)) drop-shadow(0 0 80px rgba(255,116,125,.12));
  z-index:1;
}
.hero__topline{
  display:flex;justify-content:space-between;align-items:flex-end;
  font-size:13px;color:var(--paper);opacity:.7;
  position:relative;z-index:2;
  padding-top:60px;
}
.hero__topline .mono{opacity:.85}
.hero__type{
  position:relative;z-index:2;
  display:flex;flex-direction:column;
  margin-top:auto;
}
.hero__line{
  display:flex;align-items:baseline;gap:24px;
  overflow:hidden;
}
.hero__word{
  font-family:"Hubot Sans";
  text-transform:uppercase;
  font-weight:500;
  font-stretch:75%;
  font-size:clamp(80px, 18vw, 280px);
  line-height:.82;
  letter-spacing:-0.045em;
  margin:0;
  color:var(--paper);
  display:block;
}
.hero__word--outline{
  -webkit-text-stroke:1.5px var(--paper);
  color:transparent;
  font-weight:200;
  font-stretch:90%;
  font-style:italic;
}
.hero__word--coral{color:var(--coral)}
.hero__word--white{color:var(--paper);-webkit-text-stroke:0;font-style:normal;letter-spacing:-.04em}
.hero__type--single{gap:8px}
.hero__line--phon{overflow:visible;margin-bottom:-4px}
.hero__phon{
  font-family:"JetBrains Mono",monospace;
  font-size:clamp(13px,1.1vw,16px);
  letter-spacing:.12em;
  color:var(--coral);
  text-transform:lowercase;
  opacity:0;transform:translateY(8px);
  transition:opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1);
  transition-delay:120ms;
  padding-left:6px;
}
.hero.ready .hero__phon{opacity:.92;transform:translateY(0)}
.hero__char{display:inline-block;transform:translateY(110%);transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.hero.ready .hero__char{transform:translateY(0)}

.hero__bottom{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:40px;
  margin-top:48px;
}
.hero__claim{
  font-size:18px;line-height:1.45;color:var(--paper);max-width:38ch;opacity:.85;
}
.hero__cta{display:flex;justify-content:center;gap:12px}
.hero__scroll-btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 18px;border-radius:999px;
  background:transparent;border:1px solid rgba(255,255,255,.25);
  color:var(--paper);cursor:pointer;
  font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  transition:border-color .25s ease, background .25s ease, transform .25s ease;
}
.hero__scroll-btn:hover{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.04)}
.hero__scroll-arrow{display:inline-block;animation:heroScrollBob 1.8s ease-in-out infinite}
@keyframes heroScrollBob{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}
.hero__meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-size:13px;color:var(--paper);opacity:.7}
.hero__meta .pulse{width:8px;height:8px;border-radius:999px;background:#34d27a;box-shadow:0 0 0 0 #34d27a;animation:pulse 2s infinite}
@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(52,210,122,.65)}
  70%{box-shadow:0 0 0 14px rgba(52,210,122,0)}
  100%{box-shadow:0 0 0 0 rgba(52,210,122,0)}
}

/* ==== Marquee ==== */
.marquee{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  overflow:hidden;
  background:var(--ink);
}
.marquee__track{
  display:flex;gap:64px;
  padding:22px 0;
  animation:marquee 40s linear infinite;
  white-space:nowrap;
  font-size:18px;
  color:var(--paper);
  opacity:.85;
  width:max-content;
}
.motion-low .marquee__track{animation-duration:140s}
.motion-high .marquee__track{animation-duration:25s}
.marquee__item{display:inline-flex;align-items:center;gap:24px}
.marquee__item .star{color:var(--coral);font-size:14px}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ==== Intro / stats ==== */
.intro{
  padding:140px 36px;
  background:var(--ink);
  position:relative;
}
.intro__grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:80px;
  align-items:start;
}
.intro__lede{font-size:clamp(28px,3vw,44px);font-weight:600;line-height:1.15;letter-spacing:-.02em;color:var(--paper)}
.intro__lede em{font-style:italic;font-weight:300;color:var(--coral)}
.intro__body{color:#bdbdbd;font-size:17px;line-height:1.55;max-width:48ch}
.stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  margin-top:64px;
}
.stats__cell{
  padding:32px 0;
  display:flex;justify-content:space-between;align-items:baseline;
  border-right:1px solid var(--line);
  padding-right:24px;padding-left:24px;
}
.stats__cell:first-child{padding-left:0}
.stats__cell:last-child{border-right:0;padding-right:0}
.stats__num{
  font-size:clamp(56px,7vw,96px);
  font-weight:800;
  letter-spacing:-.03em;
  line-height:1;
}
.stats__lbl{font-size:13px;color:var(--muted);text-align:right;max-width:14ch}

/* ==== Projects bento ==== */
.projects{padding:140px 36px;background:var(--ink)}
.projects__head{
  display:flex;justify-content:space-between;align-items:end;margin-bottom:48px;gap:40px;
}
.projects__head h2{flex:1}
.bento{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  grid-auto-rows:160px;
  gap:16px;
}
.card{
  position:relative;
  border-radius:var(--radius-l);
  overflow:hidden;
  background:#1A1A1A;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:24px;
  transition:transform .5s cubic-bezier(.2,.8,.2,1);
  isolation:isolate;
  cursor:pointer;
}
.card:hover{transform:translateY(-4px)}
.card__media{
  position:absolute;inset:0;z-index:-1;
  background-size:cover;background-position:center;
  transition:transform .8s cubic-bezier(.2,.8,.2,1), filter .5s;
}
.card:hover .card__media{transform:scale(1.05)}
.card__shade{
  position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg, transparent 30%, rgba(0,0,0,.7) 100%);
}
.card__tags{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.card__tag{
  padding:6px 12px;border-radius:999px;font-size:11px;
  background:rgba(243,243,243,.18);backdrop-filter:blur(10px);
  color:var(--paper);border:1px solid rgba(243,243,243,.18);
  font-weight:500;letter-spacing:.04em;text-transform:uppercase;
}
.card__title{font-size:clamp(28px,3vw,48px);font-weight:700;letter-spacing:-.02em;line-height:.95}
.card__sub{font-size:13px;color:var(--paper);opacity:.7;margin-top:6px}
.card__industry{
  position:absolute;top:20px;right:24px;
  font-family:"JetBrains Mono",monospace;
  font-size:11px;letter-spacing:.06em;
  color:#fff;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  padding:5px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  z-index:3;
}
.card__num{
  position:absolute;top:20px;left:24px;
  font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#fff;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  padding:5px 10px;border-radius:999px;
  z-index:3;
}
  font-size:10px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--paper);opacity:.55;
  padding:5px 9px;border-radius:999px;
  background:rgba(255,255,255,.08);backdrop-filter:blur(6px);
  z-index:3;
}
.card--coral{background:var(--coral);color:var(--ink-2)}
.card--coral .card__title,.card--coral .card__sub,.card--coral .card__num{color:var(--ink-2)}
.card--coral .card__industry{color:var(--ink-2);background:rgba(26,26,26,.12)}
.card--coral .card__tag{background:rgba(26,26,26,.18);border-color:rgba(26,26,26,.2);color:var(--ink-2)}
.card--paper{background:var(--paper);color:var(--ink-2)}
.card--paper .card__title,.card--paper .card__sub,.card--paper .card__num{color:var(--ink-2)}
.card--paper .card__industry{color:var(--ink-2);background:rgba(26,26,26,.08)}

/* bento layout — homepage 5 reálných case studies */
.bento .b-1{grid-column:span 8;grid-row:span 4}
.bento .b-2{grid-column:span 4;grid-row:span 4}
.bento .b-3{grid-column:span 4;grid-row:span 3}
.bento .b-4{grid-column:span 4;grid-row:span 3}
.bento .b-5{grid-column:span 4;grid-row:span 3}

/* ==== Services v2 ==== */
.services{padding:140px 36px;background:var(--paper);color:var(--ink-2);position:relative;overflow:hidden}
.services .eyebrow{color:var(--coral)}
.services .eyebrow::before{background:var(--coral)}
.services__head{
  display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:64px;
}

/* Decorative kámen v sekci */
.services::before{
  content:"";position:absolute;
  right:-200px;top:30%;width:520px;height:520px;
  background:radial-gradient(circle, rgba(255,116,125,.08), transparent 70%);
  border-radius:50%;
  pointer-events:none;
}

/* Edge — Workshop (top) a Vzdělávání (bottom) — bez rámečků, asymetricky */
.svc-edge{
  position:relative;
  padding:0;
  background:transparent;
  border:0;
}
.svc-edge--top{margin:0 0 24px}
.svc-edge--bottom{margin:24px 0 0}

.svc-edge__meta{
  display:flex;align-items:center;gap:18px;
  padding:0 0 20px;
  border-bottom:1px dashed rgba(26,26,26,.18);
  margin-bottom:24px;
}
.svc-edge__chip{
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--coral);font-weight:600;
}
.svc-edge__hand{
  font-family:"Hubot Sans",sans-serif;
  font-style:italic;font-weight:300;
  font-size:18px;color:var(--ink-2);letter-spacing:-.01em;
  position:relative;
  padding-left:22px;
}
.svc-edge__hand::before{
  content:"";position:absolute;left:0;top:50%;
  width:14px;height:1px;background:var(--ink-2);
  transform-origin:left;
}
.svc-edge--bottom .svc-edge__meta{justify-content:flex-end;text-align:right}
.svc-edge--bottom .svc-edge__hand{padding-left:0;padding-right:22px}
.svc-edge--bottom .svc-edge__hand::before{left:auto;right:0}

.svc-edge__row{
  display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start;
  padding:8px 0 32px;
}
.svc-edge--bottom .svc-edge__row{
  grid-template-columns:1.2fr 1fr;
  padding:32px 0 8px;
}
.svc-edge--bottom .svc-edge__title-block{order:2;justify-content:flex-end}
.svc-edge--bottom .svc-edge__text{order:1;text-align:right}
.svc-edge--bottom .svc-edge__title-block{justify-self:end}

.svc-edge__title-block{display:flex;align-items:flex-start;gap:18px;align-self:start}
.svc-edge__num{
  font-size:13px;color:var(--coral);letter-spacing:.04em;font-weight:600;
  padding-top:24px;
}
.svc-edge__title{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(64px,8vw,128px);font-weight:500;font-stretch:75%;
  letter-spacing:-.04em;line-height:.9;color:var(--ink-2);
  text-transform:uppercase;
  margin:0;
}
.svc-edge--bottom .svc-edge__title{font-style:italic;font-weight:300;color:var(--coral)}

.svc-edge__text{display:flex;flex-direction:column;gap:14px;padding-top:18px}
.svc-edge__lead{
  font-family:"Hubot Sans",sans-serif;
  font-style:italic;font-weight:300;
  font-size:24px;line-height:1.3;color:var(--coral);letter-spacing:-.01em;margin:0;
}
.svc-edge--bottom .svc-edge__lead{color:var(--ink-2)}
.svc-edge__desc{font-size:15px;line-height:1.6;color:var(--muted-2);max-width:60ch;margin:0}

/* Hlavní 3 sloupce */
.svc-cols{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border-top:2px solid var(--ink-2);
  border-bottom:2px solid var(--ink-2);
  position:relative;
  margin:8px 0;
}
.svc-cols::before{
  content:"01 — 03 / hlavní flow";
  position:absolute;top:-2px;left:0;
  font-family:"JetBrains Mono",monospace;
  font-size:10px;letter-spacing:.18em;color:var(--coral);text-transform:uppercase;
  background:var(--paper);padding:4px 10px 4px 0;
  transform:translateY(-50%);
  font-weight:600;
}
.svc-cols::after{
  content:"značka → web → propagace";
  position:absolute;bottom:-2px;right:0;
  font-family:"JetBrains Mono",monospace;
  font-size:10px;letter-spacing:.18em;color:var(--muted-2);text-transform:uppercase;
  background:var(--paper);padding:4px 0 4px 10px;
  transform:translateY(50%);
}
.svc-col{
  padding:40px 28px 32px;
  display:flex;flex-direction:column;gap:24px;
  border-right:1px solid rgba(26,26,26,.14);
  position:relative;
  transition:background .35s;
}
.svc-col:last-child{border-right:0}
.svc-col:hover{background:rgba(255,116,125,.05)}

/* Velký index v pozadí každého sloupce */
.svc-col::before{
  content:attr(data-bignum);
  position:absolute;top:24px;right:24px;
  font-family:"Hubot Sans",sans-serif;
  font-size:120px;font-weight:500;font-stretch:75%;
  color:rgba(26,26,26,.04);
  letter-spacing:-.04em;line-height:1;
  pointer-events:none;
  transition:color .35s;
}
.svc-col:hover::before{color:rgba(255,116,125,.18)}

.svc-col__head{display:flex;flex-direction:column;gap:8px;position:relative;z-index:1}
.svc-col__num{font-size:12px;letter-spacing:.14em;color:var(--coral);font-weight:600}
.svc-col__title{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(36px,3.4vw,52px);font-weight:500;font-stretch:75%;
  letter-spacing:-.03em;line-height:.95;color:var(--ink-2);
  text-transform:uppercase;
  margin:0;
}
.svc-col__lead{
  font-family:"Hubot Sans",sans-serif;
  font-style:italic;font-weight:300;
  font-size:18px;line-height:1.35;color:var(--coral);letter-spacing:-.01em;margin:8px 0 0;
}
.svc-col__desc{font-size:14px;line-height:1.55;color:var(--muted-2);margin:0}
.svc-col__bullets{
  list-style:none;padding:0;margin:auto 0 0;
  display:flex;flex-direction:column;gap:14px;
  border-top:1px dashed rgba(26,26,26,.18);padding-top:20px;
  position:relative;z-index:1;
}
.svc-col__bullet{
  display:flex;flex-direction:column;gap:3px;
  position:relative;padding-left:18px;
}
.svc-col__bullet::before{
  content:"";
  position:absolute;left:0;top:8px;
  width:8px;height:1px;background:var(--coral);
}
.svc-col__bullet strong{
  font-size:14px;font-weight:600;color:var(--ink-2);letter-spacing:-.005em;
}
.svc-col__bullet span{font-size:13px;line-height:1.5;color:var(--muted-2)}

/* Detail CTA */
.svc-cta{margin-top:64px;display:flex;justify-content:center}
.svc-cta__link{
  display:inline-flex;align-items:center;gap:18px;
  padding:18px 28px;
  border:1px solid rgba(26,26,26,.2);border-radius:999px;
  text-decoration:none;
  background:rgba(26,26,26,.02);
  transition:background .25s, border-color .25s, transform .25s;
}
.svc-cta__link:hover{background:var(--ink-2);border-color:var(--ink-2);transform:translateY(-2px)}
.svc-cta__link:hover .mono,
.svc-cta__link:hover strong{color:var(--paper)}
.svc-cta__link:hover .svc-cta__arrow{background:var(--coral);color:var(--ink-2)}
.svc-cta__link .mono{font-size:11px;letter-spacing:.16em;color:var(--muted-2);text-transform:uppercase;transition:color .25s}
.svc-cta__link strong{font-size:18px;font-weight:600;color:var(--ink-2);letter-spacing:-.01em;transition:color .25s}
.svc-cta__arrow{
  width:36px;height:36px;border-radius:50%;
  background:var(--coral);color:var(--ink-2);
  display:inline-flex;align-items:center;justify-content:center;font-size:14px;
  transition:transform .25s, background .25s, color .25s;
}
.svc-cta__link:hover .svc-cta__arrow{transform:rotate(45deg)}

/* Legacy expand keep for ServicesPage */
.services__list{border-top:1px solid var(--line-ink)}
.svc{
  display:grid;grid-template-columns:80px 1fr 1fr 60px;gap:24px;padding:36px 8px;
  border-bottom:1px solid var(--line-ink);align-items:center;cursor:pointer;
  transition:background .3s, padding .3s;position:relative;
}
.svc:hover{background:rgba(26,26,26,.04);padding-left:18px;padding-right:18px}
.svc__num{font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--muted-2);letter-spacing:.04em}
.svc__title{font-size:clamp(28px,3.4vw,46px);font-weight:700;letter-spacing:-.02em;line-height:1}
.svc__desc{color:var(--muted-2);font-size:15px;max-width:42ch;line-height:1.5}
.svc__arrow{
  width:44px;height:44px;border-radius:999px;background:var(--ink);color:var(--paper);
  display:grid;place-items:center;font-size:14px;transition:transform .3s, background .3s;justify-self:end;
}
.svc:hover .svc__arrow{background:var(--coral);color:var(--ink);transform:rotate(-45deg) scale(1.05)}
.svc--expand{grid-template-columns:80px 1fr 60px;align-items:start;cursor:pointer}
.svc--expand:hover{padding-left:0;padding-right:0;background:transparent}
.svc--expand:hover .svc__title{color:var(--coral)}
.svc--expand .svc__main{display:flex;flex-direction:column;gap:14px;max-width:none}
.svc--expand .svc__num{padding-top:14px}
.svc--expand .svc__title{font-size:clamp(32px,4vw,56px);font-weight:600;letter-spacing:-.025em;line-height:1;transition:color .25s}
.svc--expand .svc__desc{max-width:64ch;font-size:16px;color:var(--muted-2);margin:0}
.svc--expand .svc__arrow{
  background:transparent;color:var(--ink-2);border:1px solid rgba(26,26,26,.18);
  font-size:24px;font-weight:300;align-self:start;margin-top:6px;
  transition:background .25s, color .25s, border-color .25s, transform .25s;
}
.svc--expand:hover .svc__arrow{background:var(--ink-2);color:var(--paper);border-color:var(--ink-2);transform:none}
.svc--expand.is-open .svc__arrow{background:var(--coral);color:var(--ink-2);border-color:var(--coral);transform:none}
.svc__detail{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.2,.8,.2,1), opacity .42s ease;overflow:hidden;opacity:0}
.svc--expand.is-open .svc__detail{grid-template-rows:1fr;opacity:1}
.svc__detail > *{min-height:0}
.svc__bullets{list-style:none;padding:18px 0 4px;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 32px}
.svc__bullets li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.5;color:var(--ink-2)}
.svc__bullet-mark{color:var(--coral);font-size:14px;line-height:1.6;flex-shrink:0}

/* ==== Justask ==== */
.justask{
  padding:120px 36px;background:var(--coral);color:var(--ink-2);
  position:relative;overflow:hidden;
}
.justask__inner{
  display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;
  position:relative;z-index:2;
}
.justask__title{font-size:clamp(56px,8vw,140px);font-weight:800;letter-spacing:-.04em;line-height:.85}
.justask__title em{font-style:italic;font-weight:200;color:#260F0F}
.justask__body{font-size:17px;line-height:1.5;max-width:46ch;color:#260F0F}
.justask__cta{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
.justask__cta .btn{background:var(--ink-2);color:var(--paper)}
.justask__cta .btn .arrow{background:var(--coral);color:var(--ink-2)}
.justask__cta .btn--ghost{background:transparent;color:var(--ink-2);box-shadow:inset 0 0 0 1px rgba(38,15,15,.4)}
.justask__decor{
  position:absolute;right:-100px;bottom:-150px;width:520px;pointer-events:none;
  filter:drop-shadow(0 30px 60px rgba(38,15,15,.25));
  animation:float 9s ease-in-out infinite;
}
@keyframes float{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-22px) rotate(4deg)}}

/* ==== Crossroads ==== */
.crossroads{padding:140px 36px;background:var(--ink)}
.crossroads__head{text-align:center;margin-bottom:64px}
.cross-list{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
}
.cross{
  border:1px solid var(--line);border-radius:var(--radius-l);
  padding:36px;
  display:flex;flex-direction:column;justify-content:space-between;min-height:300px;
  transition:transform .35s, border-color .35s, background .35s;
  position:relative;overflow:hidden;
}
.cross:hover{transform:translateY(-6px);border-color:var(--coral);background:rgba(255,116,125,.04)}
.cross__num{font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--muted);letter-spacing:.06em}
.cross__title{font-size:48px;font-weight:800;letter-spacing:-.03em;margin:24px 0 8px}
.cross__desc{color:#bdbdbd;font-size:14px;line-height:1.5;max-width:32ch}
.cross__arrow{
  margin-top:24px;display:inline-flex;align-items:center;gap:10px;font-size:13px;color:var(--coral);
  letter-spacing:.04em;text-transform:uppercase;font-weight:500;
}

/* ==== Contact (sales / lead-gen on coral) ==== */
.contact{
  padding:140px 36px;position:relative;overflow:hidden;
  border-top:1px solid var(--line);
}
.contact--coral{
  background: var(--coral);
  color:var(--ink-2);
  border-top:0;
}
.contact--coral::before{
  content:"";
  position:absolute;inset:0;
  background:url("assets/gradient-red.png") center/cover no-repeat;
  transform:scale(-1,-1);
  transform-origin:center;
  pointer-events:none;
  z-index:0;
}
.contact__bg{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 88% 12%, rgba(255,255,255,.12), transparent 30%),
    radial-gradient(circle at 8% 88%, rgba(38,15,15,.18), transparent 35%);
  z-index:1;
}
.contact__grid{display:grid;grid-template-columns:1fr 1.05fr;gap:72px;align-items:stretch}
.contact__lede{padding-top:28px;display:flex;flex-direction:column}
.contact__lede .contact__body{margin-bottom:auto}
.contact__lede .contact__person--tom{margin-top:32px}
.contact--coral .contact__eyebrow,
.contact--coral .contact__eyebrow::before{color:var(--ink-2)}
.contact--coral .contact__eyebrow::before{background:var(--ink-2)}
.contact__title{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(64px,8vw,140px);font-weight:500;letter-spacing:-.035em;line-height:.88;
  color:var(--ink-2);margin:0;
}
.contact__title em{font-style:italic;font-weight:300;color:var(--paper)}
.contact__body{color:rgba(38,15,15,.82);font-size:18px;max-width:46ch;margin-top:28px;line-height:1.5}

.contact__person--tom{
  display:flex;flex-direction:row;align-items:stretch;gap:20px;
  margin-top:40px;
  padding:18px;border-radius:24px;
  background:rgba(38,15,15,.92);
  border:1px solid rgba(255,255,255,.08);
  width:100%;max-width:520px;text-decoration:none;
  transition:transform .25s ease, border-color .25s ease, background .25s ease;
  box-shadow:0 18px 40px rgba(38,15,15,.25);
}
.contact__person--tom:hover{
  background:rgba(38,15,15,.96);border-color:var(--coral);transform:translateY(-2px);
}
.contact__person-photo{
  width:140px;flex-shrink:0;align-self:stretch;border-radius:16px;
  background-size:cover;background-position:center 20%;
  border:2px solid var(--coral);
}
.contact__person-body{display:flex;flex-direction:column;justify-content:space-between;gap:12px;flex:1;min-width:0}
.contact__person-meta{display:flex;flex-direction:column;line-height:1.2}
.contact__person-meta .mono{
  font-family:"JetBrains Mono",monospace;
  font-size:10px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;
}
.contact__person-meta strong{
  font-size:28px;letter-spacing:-.02em;margin-top:8px;display:block;
  color:var(--paper);font-weight:600;line-height:1;
}
.contact__person-meta span{font-size:12px;margin-top:2px;display:block;color:var(--muted)}
.contact__person-anchor{
  display:flex;flex-direction:column;gap:4px;
  padding-top:10px;border-top:1px solid rgba(243,243,243,.1);
  color:var(--coral);
}
.contact__person-anchor-row{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
}
.contact__person-anchor-label{
  font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.06em;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.contact__person-anchor-row--phone .contact__person-anchor-label{color:#bdbdbd}
.contact__person-anchor-arrow{font-size:16px;line-height:1;transition:transform .25s ease}
.contact__person--tom:hover .contact__person-anchor-arrow{transform:translate(2px,-2px)}

.contact__justask{
  display:inline-flex;flex-direction:column;gap:2px;margin-top:24px;
  padding:0;text-decoration:none;
}
.contact__justask-kicker{
  font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.14em;
  color:rgba(38,15,15,.7);text-transform:uppercase;
}
.contact__justask-cta{
  font-size:16px;font-weight:600;color:var(--ink-2);letter-spacing:-.005em;
  display:inline-flex;align-items:center;gap:8px;
  align-self:flex-start;width:fit-content;
  border-bottom:1px solid rgba(38,15,15,.3);padding-bottom:2px;
  transition:gap .25s ease, border-color .25s ease;
}
.contact__justask:hover .contact__justask-cta{gap:14px;border-color:var(--ink-2)}
.contact__justask-arrow{transition:transform .25s ease}
.contact__justask:hover .contact__justask-arrow{transform:translateX(4px)}

.contact-form{
  background:var(--ink-2);
  border-radius:24px;padding:28px;
  display:flex;flex-direction:column;gap:14px;
  box-shadow:0 30px 80px rgba(38,15,15,.35), 0 8px 24px rgba(38,15,15,.2);
  position:relative;
}
.contact-form__head{
  display:flex;justify-content:space-between;align-items:center;
  padding-bottom:14px;
  margin-bottom:4px;
}
.contact-form__kicker{
  font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.16em;
  color:var(--coral);text-transform:uppercase;font-weight:600;
}
.contact-form__sla{
  font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.06em;
  color:#bdbdbd;display:inline-flex;align-items:center;gap:8px;
}
.contact-form__sla::before{
  content:"";width:7px;height:7px;border-radius:999px;background:#4ade80;
  box-shadow:0 0 0 4px rgba(74,222,128,.18);
}
.contact-form .field label{color:#bdbdbd}
.contact-form .field input,
.contact-form .field textarea{
  background:rgba(243,243,243,.04);border:1px solid rgba(243,243,243,.1);color:var(--paper);
  padding:14px 18px;font-size:14px;
}
.contact-form .field textarea{padding:14px 18px}
.contact-form .field input:focus,
.contact-form .field textarea:focus{border-color:var(--coral);background:rgba(255,116,125,.06)}
.contact-form__cta{
  display:flex;align-items:center;gap:18px;margin-top:8px;flex-wrap:wrap;
}
.contact-form__btn{
  background:var(--coral);color:var(--ink-2);
  font-size:15px;font-weight:600;padding:16px 22px;
  box-shadow:0 12px 30px rgba(255,116,125,.35);
}
.contact-form__btn:hover{background:var(--coral-2);transform:translateY(-2px);box-shadow:0 18px 40px rgba(255,116,125,.45)}
.contact-form__btn .arrow{background:var(--ink-2);color:var(--coral)}
.contact-form__note{font-size:11px;color:var(--muted);max-width:32ch;flex:1;min-width:200px}

.form{
  background:rgba(243,243,243,.04);border:1px solid var(--line);
  border-radius:var(--radius-l);padding:32px;
  backdrop-filter:blur(8px);
}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.field label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.field input,.field textarea{
  background:transparent;border:0;border-bottom:1px solid var(--line);
  padding:10px 0;color:var(--paper);font:inherit;outline:none;
  transition:border-color .3s;
}
.field input:focus,.field textarea:focus{border-color:var(--coral)}
.field textarea{min-height:120px;resize:vertical}
.form__cta{display:flex;justify-content:space-between;align-items:center;margin-top:8px;gap:16px}
.form__note{font-size:11px;color:var(--muted);max-width:28ch}

/* ==== Footer ==== */
.footer{
  background:var(--ink);color:var(--paper);
  padding:80px 36px 32px;
  border-top:1px solid var(--line);
  position:relative;
}
.footer__big{
  font-size:clamp(80px,15vw,240px);
  font-weight:700;
  font-stretch:80%;
  letter-spacing:-.045em;
  line-height:.95;
  margin:24px 0 56px;
  padding-bottom:.22em;
  background:linear-gradient(180deg, var(--paper) 30%, rgba(243,243,243,.12) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-align:left;
  display:block;
  overflow:visible;
}

/* === Footer newsletter === */
.footer__news{
  display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center;
  padding:32px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin-bottom:48px;
}
.footer__news-text h4{
  font-size:28px;font-weight:600;letter-spacing:-.02em;color:var(--paper);
  margin:0 0 6px;line-height:1.1;
}
.footer__news-text h4 em{font-style:italic;font-weight:300;color:var(--coral)}
.footer__news-text p{color:#bdbdbd;font-size:14px;margin:0;max-width:46ch;line-height:1.5}
.footer__news-form{display:flex;gap:8px;align-items:stretch}
.footer__news-input{
  flex:1;min-width:0;
  padding:14px 18px;border-radius:999px;
  background:rgba(243,243,243,.04);border:1px solid var(--line);
  color:var(--paper);font-size:14px;font-family:inherit;
  outline:none;transition:border-color .25s ease, background .25s ease;
}
.footer__news-input::placeholder{color:var(--muted)}
.footer__news-input:focus{border-color:var(--coral);background:rgba(255,116,125,.04)}
.footer__news-btn{
  padding:14px 22px;border-radius:999px;border:0;
  background:var(--coral);color:var(--ink);
  font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.02em;
  cursor:pointer;transition:transform .25s ease, box-shadow .25s ease;
}
.footer__news-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(255,116,125,.35)}
.footer__news-fine{font-family:"JetBrains Mono",monospace;font-size:11px;color:var(--muted);margin-top:10px;letter-spacing:.04em}
@media (max-width:780px){
  .footer__news{grid-template-columns:1fr;gap:20px}
  .footer__news-form{flex-wrap:wrap}
}
.footer__cols{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-bottom:64px}
.footer__col h5{margin:0 0 16px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500}
.footer__col a, .footer__col p{color:var(--paper);opacity:.85;display:block;margin:6px 0;font-size:14px;text-decoration:none}
.footer__col a:hover{color:var(--coral)}
.footer__bot{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px;border-top:1px solid var(--line);padding-top:24px;flex-wrap:wrap;gap:12px}

/* === Footer redesign — main grid === */
.footer__main{
  display:grid;grid-template-columns:1.4fr 1fr;gap:56px;
  margin-bottom:48px;
}
.footer__nav{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.footer__nav-col h5{
  margin:0 0 14px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--muted);font-weight:500;
}
.footer__nav-list{display:flex;flex-direction:column;gap:2px;margin:0 -10px}

.footer__navlink{
  display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;
  padding:10px;margin:0;border-radius:10px;
  color:var(--paper);text-decoration:none;
  font-size:16px;font-weight:500;letter-spacing:-.005em;
  transition:background .25s ease, color .25s ease, padding .25s ease;
}
.footer__navlink:hover{background:rgba(247,63,0,.08);color:var(--coral);padding-left:14px}
.footer__navlink-num{
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.1em;
  color:var(--muted);transition:color .25s ease;
}
.footer__navlink:hover .footer__navlink-num{color:var(--coral)}
.footer__navlink-label{display:block}
.footer__navlink-arrow{
  font-size:14px;opacity:0;transform:translateX(-4px);
  transition:opacity .25s ease, transform .25s ease;color:var(--coral);
}
.footer__navlink:hover .footer__navlink-arrow{opacity:1;transform:translateX(0)}

.footer__contact-line{
  display:flex;flex-direction:column;gap:2px;
  padding:6px 0;text-decoration:none;color:var(--paper);
  border-bottom:1px dashed rgba(243,243,243,.08);
  transition:border-color .25s ease;
}
.footer__contact-line:hover{border-color:var(--coral)}
.footer__contact-line + .footer__contact-line{margin-top:0}
.footer__contact-kicker{
  font-size:10px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase;
}
.footer__contact-val{
  font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--paper);
  transition:color .25s ease;
}
.footer__contact-line:hover .footer__contact-val{color:var(--coral)}
.footer__contact-addr{
  margin:14px 0 0;font-size:13px;line-height:1.5;color:#cfcfcf;
}

/* Socials block */
.footer__socials{
  background:rgba(243,243,243,.03);border:1px solid var(--line);
  border-radius:20px;padding:24px;
  display:flex;flex-direction:column;gap:18px;
}
.footer__socials-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.footer__socials-kicker{
  font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;
}
.footer__socials-meta{
  font-family:"JetBrains Mono",monospace;font-size:11px;color:var(--muted);
}
.footer__socials-list{
  list-style:none;padding:0;margin:0;
  display:grid;grid-template-columns:1fr 1fr;gap:6px;
}
.footer__socials-list a{
  display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;
  padding:10px 12px;border-radius:12px;
  color:var(--paper);text-decoration:none;
  border:1px solid transparent;
  transition:background .25s ease, border-color .25s ease, transform .25s ease;
}
.footer__socials-list a:hover{
  background:rgba(247,63,0,.08);border-color:rgba(247,63,0,.25);
  transform:translateY(-1px);
}
.footer__social-icon{
  width:32px;height:32px;border-radius:8px;
  background:rgba(243,243,243,.06);
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--paper);transition:background .25s ease, color .25s ease;
}
.footer__social-icon svg{width:18px;height:18px}
.footer__socials-list a:hover .footer__social-icon{background:var(--coral);color:var(--ink-2)}
.footer__social-body{display:flex;flex-direction:column;gap:1px;min-width:0}
.footer__social-label{font-size:13px;font-weight:600;letter-spacing:-.005em}
.footer__social-handle{
  font-family:"JetBrains Mono",monospace;font-size:10px;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.footer__social-arrow{
  font-size:13px;color:var(--muted);
  transition:color .25s ease, transform .25s ease;
}
.footer__socials-list a:hover .footer__social-arrow{color:var(--coral);transform:translate(2px,-2px)}

/* Bottom legal row */
.footer__bot-legal{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  font-size:12px;color:var(--muted);
}
.footer__bot-legal a{color:var(--muted);text-decoration:none;transition:color .2s ease}
.footer__bot-legal a:hover{color:var(--coral)}
.footer__bot-sep{color:rgba(243,243,243,.2)}
.footer__bot-build{color:var(--muted);font-size:11px;letter-spacing:.05em}

@media (max-width:980px){
  .footer__main{grid-template-columns:1fr;gap:32px}
  .footer__nav{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .footer__nav{grid-template-columns:1fr}
  .footer__socials-list{grid-template-columns:1fr}
}

/* ==== Page-level (Projekty/Sluzby) ==== */
.page-hero{
  padding:200px 36px 80px;
  background:var(--ink);
  border-bottom:1px solid var(--line);
}
.page-hero h1{
  font-family:"Hubot Sans",sans-serif;
  text-transform:uppercase;
  font-size:clamp(80px,12vw,180px);
  font-weight:500;font-stretch:75%;
  letter-spacing:-.04em;
  line-height:.86;
  margin:24px 0 0;
}
.page-hero .crumb{
  display:flex;gap:8px;color:var(--muted);font-size:13px;letter-spacing:.04em;
}
.page-hero .crumb a:hover{color:var(--coral)}

.proj-grid{
  padding:80px 36px;background:var(--ink);
  display:grid;grid-template-columns:repeat(12,1fr);gap:16px;
}
.proj-grid .card{grid-row:span 3}
.proj-grid .card.lg{grid-column:span 8}
.proj-grid .card.md{grid-column:span 4}
.proj-grid .card.sm{grid-column:span 4}

/* Bento varianta — stejné poměry jako homepage .bento */
.proj-grid--bento{
  grid-auto-rows:80px;
  max-width:1440px;margin:0 auto;width:100%;
}
.proj-grid--bento .card{
  position:relative;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:28px;min-height:auto;
  overflow:hidden;
}
.proj-grid--bento .card .card__num{
  position:absolute;top:24px;left:28px;z-index:3;
}
.proj-grid--bento .card__body{
  position:relative;z-index:2;display:flex;flex-direction:column;gap:8px;
}
.proj-grid--bento .card__tags{margin-bottom:4px}
.proj-grid--bento .card__title{margin:0;font-size:clamp(28px,3vw,44px)}
.proj-grid--bento .card__sub{margin:2px 0 0}

.proj-grid--bento .b-1{grid-column:span 8;grid-row:span 5}
.proj-grid--bento .b-2{grid-column:span 4;grid-row:span 5}
.proj-grid--bento .b-3{grid-column:span 4;grid-row:span 4}
.proj-grid--bento .b-4{grid-column:span 4;grid-row:span 4}
.proj-grid--bento .b-5{grid-column:span 4;grid-row:span 4}

/* services page */
.svc-page-list{padding:60px 36px 120px;background:var(--paper);color:var(--ink-2)}
.svc-detail{
  padding:48px 24px;border-bottom:1px solid var(--line-ink);
  display:grid;grid-template-columns:80px 1fr 1.2fr;gap:32px;align-items:start;
}
.svc-detail h3{font-size:clamp(40px,5vw,72px);font-weight:800;letter-spacing:-.03em;line-height:.95;margin:0}
.svc-detail .lst{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.svc-detail .lst li{
  padding:8px 14px;border:1px solid var(--line-ink);border-radius:999px;font-size:13px;color:var(--muted-2);
}
.svc-detail p{color:var(--muted-2);font-size:16px;line-height:1.55;max-width:50ch}
.svc-detail .num{font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--muted);letter-spacing:.04em}

/* ==== Services Page v2 — System map ==== */
.svcp-hero{
  padding:96px 36px 220px;
  background:var(--ink);color:var(--paper);
  position:relative;overflow:hidden;
  border-bottom:1px solid var(--line);
}
.svcp-hero__mountain{
  position:absolute;
  left:0;right:0;bottom:-1px;
  width:100%;height:auto;
  pointer-events:none;
  z-index:1;
  user-select:none;
}
.svcp-hero::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:60%;
  background:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.35) 60%, rgba(0,0,0,.6) 100%);
  pointer-events:none;
  z-index:1;
}
/* legacy stones — vypnuté */
.svcp-hero__stone{ display:none; }
.svcp-hero__eyebrow{ color:var(--coral); }
.svcp-hero__eyebrow::before{ background:var(--coral); }

.svcp-hero__top{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:64px;
  align-items:center;
}
.svcp-hero__top-left{ min-width:0; }

.svcp-hero__title--full{
  margin:18px 0 0;
  font-family:"Hubot Sans",sans-serif;
  font-weight:500;font-stretch:75%;
  font-size:clamp(40px,5vw,84px);line-height:.95;
  letter-spacing:-.04em;text-transform:uppercase;
  color:var(--paper);max-width:14ch;
  position:relative;
  text-shadow:0 2px 24px rgba(0,0,0,.45);
}
.svcp-hero__title--full em{
  font-style:italic;font-weight:300;color:var(--coral);
}
.svcp-hero__pulled{
  position:relative;
  max-width:520px;
  padding:0 0 0 44px;
  margin:0;
}
.svcp-hero__quote-mark{
  position:absolute;left:0;top:-30px;
  font-family:"Hubot Sans";font-size:84px;line-height:1;
  color:var(--coral);font-weight:300;
  font-style:italic;
}
.svcp-hero__pulled-text{
  font-family:"Hubot Sans";font-weight:300;
  font-size:clamp(18px,1.45vw,22px);line-height:1.5;
  color:#dcdcdc;margin:0;
}
.svcp-hero__pulled-text strong{
  color:var(--paper);font-weight:500;
}
.svcp-hero__pulled-text em{
  font-style:italic;color:var(--coral);font-weight:300;
}
.svcp-hero__areas{
  margin:44px 0 0;
  display:flex;align-items:center;gap:24px;
  flex-wrap:wrap;
}
.svcp-hero__areas-lbl{
  display:inline-block;font-size:11px;letter-spacing:.18em;
  color:var(--coral);margin:0;flex-shrink:0;
}
.svcp-hero__pills{
  list-style:none;padding:0;margin:0;
  display:flex;flex-wrap:wrap;gap:8px;flex:1;
}
.svcp-hero__pills li{
  display:flex;align-items:center;gap:10px;
  padding:10px 18px;border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.02);
  font-family:"Hubot Sans";font-weight:500;font-stretch:75%;
  font-size:14px;text-transform:uppercase;letter-spacing:-.005em;
  transition:border-color .25s, background .25s, color .25s;
  cursor:default;
}
.svcp-hero__pills li:hover{
  border-color:var(--coral);
  background:rgba(255,116,125,.08);
}
.svcp-hero__pill-num{
  font-family:"JetBrains Mono",monospace;
  font-size:10px;color:var(--coral);
  letter-spacing:.18em;font-weight:400;
}
@media (max-width:900px){
  .svcp-hero{ padding:72px 24px 140px; }
  .svcp-hero__top{ grid-template-columns:1fr; gap:32px; }
  .svcp-hero__pulled{ padding-left:36px; max-width:none; }
  .svcp-hero__quote-mark{ font-size:64px;top:-20px; }
}
  position:relative;overflow:hidden;
  border-bottom:1px solid var(--line);
}
.svcp-hero::before{
  content:none;
}
.svcp-hero .crumb{margin-bottom:48px}
.svcp-hero__grid{
  display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:end;
  position:relative;z-index:1;
}
.svcp-hero__left .eyebrow{color:var(--coral)}
.svcp-hero__left .eyebrow::before{background:var(--coral)}
.svcp-hero__title{
  margin:24px 0 0;
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(64px,8.5vw,140px);
  font-weight:500;font-stretch:75%;
  letter-spacing:-.04em;line-height:.92;
  color:var(--paper);
}
.svcp-hero__title em{
  font-style:italic;font-weight:300;color:var(--coral);
}
.svcp-hero__lead{
  max-width:54ch;margin:32px 0 0;
  font-size:18px;line-height:1.55;color:#cbcbcb;
}
.svcp-hero__stats{
  display:flex;flex-direction:column;gap:24px;
  padding:32px 28px;
  border:1px dashed var(--line);
  border-radius:20px;
  background:rgba(255,116,125,.04);
}
.svcp-hero__stat{
  display:flex;flex-direction:column;gap:4px;
  padding-bottom:18px;border-bottom:1px solid var(--line);
}
.svcp-hero__stat:last-child{border-bottom:0;padding-bottom:0}
.svcp-hero__stat strong{
  font-family:"Hubot Sans",sans-serif;
  font-size:56px;font-weight:500;font-stretch:75%;
  color:var(--coral);letter-spacing:-.04em;line-height:.95;
}
.svcp-hero__stat span{font-size:13px;color:#a8a8a8;letter-spacing:-.005em}

/* System section */
.svcp-system{
  padding:120px 36px;
  background:var(--paper);color:var(--ink-2);
  position:relative;overflow:hidden;
}
.svcp-system::before{
  content:"";position:absolute;
  right:-200px;bottom:-200px;width:520px;height:520px;
  background:radial-gradient(circle, rgba(255,116,125,.08), transparent 70%);
  pointer-events:none;
}
.svcp-system__head{margin-bottom:64px;max-width:880px}
.svcp-system__head .mono{
  display:inline-block;
  font-size:11px;letter-spacing:.18em;color:var(--coral);text-transform:uppercase;
  font-weight:600;
  padding:8px 14px;border:1px solid rgba(255,116,125,.4);border-radius:999px;
  margin-bottom:24px;
}
.svcp-system__title{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(48px,6vw,96px);font-weight:500;font-stretch:75%;
  letter-spacing:-.04em;line-height:.95;color:var(--ink-2);
  margin:0;
}
.svcp-system__title em{
  font-style:italic;font-weight:300;color:var(--coral);
  text-decoration:underline;text-decoration-thickness:3px;text-decoration-color:rgba(255,116,125,.5);
  text-underline-offset:8px;
}
.svcp-system__sub{
  margin:24px 0 0;font-size:16px;line-height:1.6;color:var(--muted-2);max-width:48ch;
}

.svcp-system__grid{
  display:grid;grid-template-columns:340px 1fr;gap:48px;align-items:start;
  position:relative;z-index:1;
}

/* MAP — linka procesu */
.svcp-map{
  position:sticky;top:24px;
  display:flex;flex-direction:column;gap:0;
  padding:28px 0;
  border:1px solid rgba(26,26,26,.14);
  border-radius:24px;
  background:rgba(26,26,26,.02);
  position:relative;overflow:hidden;
}
.svcp-map__head,
.svcp-map__foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:0 24px 16px;
  border-bottom:1px dashed rgba(26,26,26,.18);
  margin-bottom:8px;
}
.svcp-map__foot{
  border-bottom:0;border-top:1px dashed rgba(26,26,26,.18);
  padding:16px 24px 0;margin:8px 0 0;
}
.svcp-map__head .mono,
.svcp-map__foot .mono{
  font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;font-weight:600;
}
.svcp-map__hand{
  font-family:"Hubot Sans",sans-serif;
  font-style:italic;font-weight:300;
  font-size:13px;color:var(--ink-2);letter-spacing:-.005em;
}

.svcp-map__list{
  list-style:none;padding:0;margin:0;
  position:relative;
}
/* Vertikální linie procesu */
.svcp-map__list::before{
  content:"";position:absolute;
  left:46px;top:24px;bottom:24px;
  width:2px;background:rgba(26,26,26,.12);
}
.svcp-map__item{
  position:relative;
  display:grid;
  grid-template-columns:24px 36px 1fr auto;
  gap:14px;align-items:center;
  padding:14px 24px 14px 36px;
  cursor:pointer;
  transition:background .25s, padding .25s;
  user-select:none;
}
.svcp-map__item:hover{background:rgba(255,116,125,.05)}
.svcp-map__item.is-active{background:rgba(255,116,125,.1)}
.svcp-map__item.is-active::after{
  content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;
  background:var(--coral);border-radius:0 3px 3px 0;
}

.svcp-map__dot{
  width:14px;height:14px;border-radius:50%;
  background:var(--paper);
  border:2px solid rgba(26,26,26,.3);
  z-index:1;
  transition:background .25s, border-color .25s, transform .25s;
}
.svcp-map__item--core .svcp-map__dot{
  background:var(--ink-2);border-color:var(--ink-2);
}
.svcp-map__item.is-active .svcp-map__dot{
  background:var(--coral);border-color:var(--coral);
  transform:scale(1.25);
  box-shadow:0 0 0 4px rgba(255,116,125,.2);
}
.svcp-map__num{
  font-family:"JetBrains Mono",monospace;font-size:11px;color:var(--muted-2);letter-spacing:.06em;
  text-align:right;
}
.svcp-map__item.is-active .svcp-map__num{color:var(--coral);font-weight:600}
.svcp-map__title{
  font-family:"Hubot Sans",sans-serif;
  font-size:18px;font-weight:500;color:var(--ink-2);letter-spacing:-.01em;
}
.svcp-map__item.is-active .svcp-map__title{font-weight:600}
.svcp-map__chip{
  font-size:9px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted-2);font-weight:600;
  padding:3px 8px;border:1px solid rgba(26,26,26,.18);border-radius:999px;
}
.svcp-map__item--edge .svcp-map__chip{
  color:var(--coral);border-color:rgba(255,116,125,.4);
}

/* DETAIL */
.svcp-detail{
  padding:0;
  display:flex;flex-direction:column;gap:0;
  animation:svcpFade .35s ease;
}
@keyframes svcpFade{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}

.svcp-detail__head{
  padding:0 0 32px;
  border-bottom:2px solid var(--ink-2);
  margin-bottom:32px;
}
.svcp-detail__head-meta{
  display:flex;align-items:center;gap:10px;
  margin-bottom:20px;
}
.svcp-detail__num{
  font-size:13px;letter-spacing:.06em;color:var(--coral);font-weight:600;
  padding:4px 10px;border:1px solid rgba(255,116,125,.4);border-radius:6px;
}
.svcp-detail__chip{
  font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;
  padding:5px 11px;border-radius:999px;
  color:var(--muted-2);border:1px solid rgba(26,26,26,.18);
}
.svcp-detail__chip--core{
  color:var(--ink-2);background:var(--ink-2);color:var(--paper);border-color:var(--ink-2);
}
.svcp-detail__title{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(72px,10vw,160px);font-weight:500;font-stretch:75%;
  letter-spacing:-.05em;line-height:.88;color:var(--ink-2);
  text-transform:uppercase;
  margin:0;
}
.svcp-detail__short{
  font-family:"Hubot Sans",sans-serif;
  font-style:italic;font-weight:300;
  font-size:clamp(20px,2vw,28px);line-height:1.3;color:var(--coral);
  letter-spacing:-.01em;margin:16px 0 0;
}

.svcp-detail__body{
  display:grid;grid-template-columns:1fr 1fr;gap:48px;
  margin-bottom:48px;
}
.svcp-detail__lead{
  font-family:"Hubot Sans",sans-serif;
  font-size:22px;font-weight:400;line-height:1.4;color:var(--ink-2);letter-spacing:-.01em;
  margin:0;
}
.svcp-detail__desc{
  font-size:15px;line-height:1.65;color:var(--muted-2);margin:0;
}

.svcp-detail__parts{
  margin-bottom:48px;
}
.svcp-detail__parts-head{
  margin-bottom:24px;
  display:flex;align-items:center;gap:12px;
}
.svcp-detail__parts-head::before{
  content:"";flex:0 0 24px;height:1px;background:var(--coral);
}
.svcp-detail__parts-head .mono{
  font-size:11px;letter-spacing:.18em;color:var(--coral);text-transform:uppercase;font-weight:600;
}
.svcp-detail__parts-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-top:1px solid rgba(26,26,26,.14);
}
.svcp-part{
  padding:24px 0;
  display:grid;grid-template-columns:32px 1fr;gap:14px;align-items:start;
  border-bottom:1px solid rgba(26,26,26,.14);
  position:relative;
}
.svcp-part:nth-child(odd){border-right:1px solid rgba(26,26,26,.14);padding-right:32px}
.svcp-part:nth-child(even){padding-left:32px}
.svcp-part__idx{
  font-size:11px;color:var(--muted-2);letter-spacing:.06em;
  padding-top:2px;
}
.svcp-part__k{
  font-family:"Hubot Sans",sans-serif;
  font-size:18px;font-weight:600;color:var(--ink-2);letter-spacing:-.01em;
  display:block;
  grid-column:2;
  margin-bottom:6px;
}
.svcp-part__v{
  font-size:14px;line-height:1.55;color:var(--muted-2);
  grid-column:2;
}

.svcp-detail__foot{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-top:1px dashed rgba(26,26,26,.18);
  border-bottom:1px dashed rgba(26,26,26,.18);
}
.svcp-detail__foot-row{
  padding:24px 28px 24px 0;
  display:flex;flex-direction:column;gap:8px;
  border-right:1px dashed rgba(26,26,26,.18);
}
.svcp-detail__foot-row:last-child{border-right:0;padding-right:0;padding-left:28px}
.svcp-detail__foot-row .mono{
  font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;font-weight:600;
}
.svcp-detail__foot-row strong{
  font-family:"Hubot Sans",sans-serif;
  font-size:15px;font-weight:500;color:var(--ink-2);letter-spacing:-.005em;line-height:1.5;
}
.svcp-detail__foot-row--neg .mono{color:var(--muted-2)}
.svcp-detail__foot-row--neg strong{color:var(--muted-2)}

@media (max-width:1100px){
  .svcp-hero__grid{grid-template-columns:1fr;gap:48px}
  .svcp-system__grid{grid-template-columns:1fr;gap:32px}
  .svcp-map{position:static}
  .svcp-detail__body{grid-template-columns:1fr;gap:24px}
  .svcp-detail__parts-grid{grid-template-columns:1fr}
  .svcp-part:nth-child(odd){border-right:0;padding-right:0}
  .svcp-part:nth-child(even){padding-left:0}
  .svcp-detail__foot{grid-template-columns:1fr}
  .svcp-detail__foot-row{border-right:0;border-bottom:1px dashed rgba(26,26,26,.18)}
  .svcp-detail__foot-row:last-child{padding-left:0}
}

/* ==== Tweaks panel: title override ==== */
.jm-only-when-tweaks{display:none}

/* ==== Clients logo marquee ==== */
.logo-marquee{overflow:hidden;width:100%;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logo-marquee__track{
  display:flex;gap:14px;width:max-content;
  animation:marquee 60s linear infinite;
}
.motion-low .logo-marquee__track{animation-duration:200s}
.motion-high .logo-marquee__track{animation-duration:35s}
.logo-pill{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 22px;border-radius:999px;
  border:1px solid var(--line);
  font-size:18px;font-weight:600;letter-spacing:-.01em;
  color:var(--paper);
  white-space:nowrap;
  background:rgba(243,243,243,.02);
  transition:border-color .3s, color .3s;
}
.logo-pill:hover{border-color:var(--coral);color:var(--coral)}
.logo-dot{width:6px;height:6px;border-radius:999px;background:var(--coral);opacity:.7}
.logo-cell{
  display:inline-flex;align-items:center;justify-content:center;
  height:48px;min-width:140px;padding:0 36px;
  opacity:.62;transition:opacity .3s ease, filter .3s ease;
}
.logo-cell img{
  max-height:34px;max-width:160px;width:auto;height:auto;
  object-fit:contain;display:block;
  filter:brightness(0) invert(1);
}
.logo-cell:hover{opacity:1}

/* ==== Stone decor positioning helpers ==== */
.stone-deco{position:absolute;pointer-events:none;mix-blend-mode:screen;will-change:transform}
.stone-deco--parallax{mix-blend-mode:normal;animation:stoneFloat 14s ease-in-out infinite}
@keyframes stoneFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-6deg)}
  50%{transform:translate3d(-12px,-22px,0) rotate(-4deg)}
}

/* ==== Filter bar (legacy — kept for compat) ==== */
.filterbar{
  display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;
  padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  margin-bottom:48px;
}
.filterbar__group{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.filterbar__lbl{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-right:8px}
.chip{
  padding:8px 14px;border-radius:999px;font-size:13px;
  background:transparent;border:1px solid var(--line);color:var(--paper);cursor:pointer;
  transition:background .2s, border-color .2s, color .2s;
}
.chip:hover{border-color:var(--coral)}
.chip.is-on{background:var(--coral);border-color:var(--coral);color:var(--ink-2);font-weight:500}
.filterbar__count{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--muted)}

/* ==== Filter bar v2 — fbar ====
   Live counts per chip, sliding indicator pill, terminal-style readout.
   Drží justmighty mood: mono labels, korálová akcent, dark plate.
*/
.fbar{
  position:relative;
  display:flex;flex-direction:column;gap:2px;
  padding:10px 16px;
  margin-top:56px;
  margin-bottom:40px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.012);
}
.fbar::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(520px 160px at 10% -30%, rgba(255,124,87,.08), transparent 60%);
}

.fbar__row{
  display:grid;grid-template-columns:72px 1fr;align-items:center;gap:10px;
  padding:2px 0;
}
.fbar__row + .fbar__row{border-top:1px dashed rgba(255,255,255,.07)}

.fbar__lbl{
  font-family:"JetBrains Mono",monospace;
  font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);
  padding-left:2px;
}

.fbar__chips{
  position:relative;
  display:flex;flex-wrap:wrap;
  gap:2px;
}

/* Sliding pill behind active chip — uses measured top/left/width/height */
.fbar__pill{
  position:absolute;top:0;left:0;
  background:var(--coral);
  border-radius:999px;
  transition:transform .42s cubic-bezier(.22,1,.36,1),
             width .42s cubic-bezier(.22,1,.36,1),
             height .42s cubic-bezier(.22,1,.36,1);
  box-shadow:0 6px 18px rgba(255,124,87,.35);
  z-index:0;pointer-events:none;
}

.fchip{
  position:relative;z-index:1;
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 12px;
  border:1px solid transparent;
  border-radius:999px;
  background:transparent;color:var(--paper);
  font-size:13px;font-weight:500;line-height:1.2;
  cursor:pointer;
  transition:color .25s ease, border-color .2s ease, opacity .2s ease;
}
.fchip:hover:not(.is-on):not(.is-dim){
  border-color:rgba(255,255,255,.14);
}
.fchip.is-on{color:var(--ink-2);font-weight:600}
.fchip.is-on .fchip__n{color:rgba(0,0,0,.55);background:rgba(0,0,0,.08);border-color:transparent}
.fchip.is-dim{opacity:.32;cursor:not-allowed}

.fchip__txt{position:relative;z-index:1}
.fchip__n{
  position:relative;z-index:1;
  font-family:"JetBrains Mono",monospace;
  font-size:10px;line-height:1;letter-spacing:.04em;
  padding:2px 4px;border-radius:5px;
  border:1px solid rgba(255,255,255,.10);
  color:var(--muted);
  transition:color .25s ease, background .25s ease, border-color .25s ease;
  font-variant-numeric:tabular-nums;
}

/* Compact meta row */
.fbar__meta{
  display:flex;align-items:center;gap:12px;
  padding:6px 4px 2px;
  border-top:1px dashed rgba(255,255,255,.07);
  margin-top:4px;
}
.fbar__count{
  font-family:"JetBrains Mono",monospace;
  font-size:11px;letter-spacing:.06em;color:var(--muted);
  display:inline-flex;align-items:baseline;gap:6px;
}
.fbar__count strong{
  color:var(--paper);font-size:14px;font-weight:600;
  font-variant-numeric:tabular-nums;
  display:inline-block;
  animation:fbar-pop .3s cubic-bezier(.22,1.2,.36,1);
}
.fbar__clear{
  margin-left:auto;
  font-family:"JetBrains Mono",monospace;
  font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted);
  background:transparent;border:1px solid rgba(255,255,255,.10);
  padding:4px 8px;border-radius:999px;
  cursor:pointer;
  display:inline-flex;align-items:center;gap:5px;
  transition:border-color .2s, color .2s;
}
.fbar__clear:hover{border-color:var(--coral);color:var(--coral)}

@keyframes fbar-pop{
  0%{transform:translateY(-2px) scale(.92);opacity:.4}
  100%{transform:none;opacity:1}
}

@media (max-width: 900px){
  .fbar__row{grid-template-columns:1fr;gap:4px}
  .fbar__lbl{padding-left:6px}
}

/* ==== Project list (filterable) ==== */
.proj-list{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;grid-auto-rows:minmax(280px,auto)}
.proj-list .card{grid-row:span 1}
.proj-list .card.lg{grid-column:span 8}
.proj-list .card.md{grid-column:span 4}
.proj-list .card.sm{grid-column:span 4}
.proj-list .card.xs{grid-column:span 3}
.proj-list .card.full{grid-column:span 12;min-height:520px}

/* ==== Justask v2 ==== */
.justask-v2{
  position:relative;background:var(--coral);color:var(--ink-2);overflow:hidden;
  padding:120px 36px;
}
.justask-v2--compact{padding:72px 36px}
.justask-v2__grid{
  display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:stretch;
  position:relative;z-index:2;
}
.justask-v2--compact .justask-v2__grid{gap:48px;align-items:center}
.justask-v2__title{font-family:"Hubot Sans",sans-serif;text-transform:uppercase;font-size:clamp(56px,8vw,140px);font-weight:500;letter-spacing:-.025em;line-height:.92}
.justask-v2--compact .justask-v2__title{font-size:clamp(44px,5.6vw,88px);line-height:.95}
.justask-v2__title em{font-style:italic;font-weight:200;color:#260F0F}
.justask-v2__lede{font-size:20px;line-height:1.45;color:#260F0F;max-width:46ch;margin-top:24px}
.justask-v2--compact .justask-v2__lede{font-size:16px;line-height:1.5;margin-top:16px;max-width:50ch}
.justask-v2__bullets{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:36px;
}
.justask-v2--compact .justask-v2__bullets{gap:10px;margin-top:24px}
.justask-v2--compact .justask-v2__bullet{padding:10px 14px;font-size:13px}
.justask-v2--compact .justask-v2__cta{margin-top:24px}
.justask-v2__bullet{
  display:flex;gap:12px;align-items:flex-start;
  padding:14px 16px;border-radius:14px;
  background:rgba(38,15,15,.08);border:1px solid rgba(38,15,15,.12);
  font-size:14px;color:#260F0F;line-height:1.4;
}
.justask-v2__bullet b{display:block;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#260F0F;margin-bottom:4px}
.justask-v2__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px;align-items:center}
.justask-v2__cta .btn{background:var(--ink-2);color:var(--paper)}
.justask-v2__url{font-family:"JetBrains Mono",monospace;font-size:13px;color:#260F0F;display:inline-flex;align-items:center;gap:8px}
.justask-v2__url::before{content:"→";opacity:.7}

.justask-host{
  background:var(--ink-2);color:var(--paper);
  border-radius:24px;padding:32px;
  display:flex;flex-direction:column;justify-content:space-between;gap:24px;
  position:relative;overflow:visible;
  min-height:480px;
}
.justask-host__photo{
  width:100%;height:280px;border-radius:18px;
  background:#1A1A1A url('./assets/tom-bg.jpg') center/cover;
  position:relative;overflow:hidden;
}
.justask-host__badge{
  position:absolute;top:14px;right:14px;
  padding:8px 14px;border-radius:999px;
  background:var(--coral);color:var(--ink-2);font-size:12px;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;display:inline-flex;gap:8px;align-items:center;
}
.justask-host__badge::before{content:"";width:6px;height:6px;background:var(--ink-2);border-radius:999px}
.justask-host__name{font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:1}
.justask-host__role{font-size:13px;color:var(--muted);letter-spacing:.04em;margin-top:6px;text-transform:uppercase}
.justask-host__quote{font-size:15px;line-height:1.5;color:#bdbdbd;font-style:italic}
.justask-host__quote::before{content:"„";color:var(--coral);font-size:32px;line-height:0;margin-right:6px;vertical-align:-8px}
.justask-host__quote::after{content:""}

/* Compact host card */
.justask-host--compact{
  background:var(--ink-2);color:var(--paper);
  border-radius:20px;padding:0;overflow:hidden;
  display:flex;flex-direction:column;min-height:0;
}
.justask-host__photo-big{
  position:relative;width:100%;aspect-ratio:4/3;
  background:#1A1A1A url('./assets/tom-2.jpg') center top/cover;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.justask-v2__heart{
  position:absolute;z-index:0;
  top:6%;left:30%;width:260px;height:auto;
  opacity:.5;
  transform-origin:50% 55%;
  pointer-events:none;
}
.justask-host__heart{
  position:absolute;top:-72px;left:-44px;width:128px;height:auto;z-index:5;
  filter:drop-shadow(0 22px 40px rgba(0,0,0,.5));
  animation:heartbeat 1.4s ease-in-out infinite;
  transform-origin:50% 55%;
  pointer-events:none;
}
@keyframes heartbeat{
  0%,100%{transform:scale(1) rotate(-8deg)}
  14%{transform:scale(1.14) rotate(-8deg)}
  28%{transform:scale(1) rotate(-8deg)}
  42%{transform:scale(1.08) rotate(-8deg)}
  70%{transform:scale(1) rotate(-8deg)}
}
.motion-low .justask-host__heart{animation:none}
.justask-host__photo-big::after{
  content:"";position:absolute;inset:auto 0 0 0;height:55%;
  background:linear-gradient(to bottom, transparent, rgba(26,26,26,.85));
  pointer-events:none;
}
.justask-host--compact .justask-host__badge{
  position:absolute;top:14px;left:14px;right:auto;bottom:auto;
  padding:6px 12px;font-size:10px;
  background:rgba(255,255,255,.14);color:var(--paper);
  backdrop-filter:blur(8px);
  letter-spacing:.08em;text-transform:uppercase;
  border-radius:999px;
  display:inline-flex;gap:8px;align-items:center;
}
.justask-host--compact .justask-host__badge::before{
  content:"";width:6px;height:6px;background:#7CFFB5;border-radius:999px;
  box-shadow:0 0 8px #7CFFB5;
  animation:pulse 2s ease-in-out infinite;
}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.justask-host__photo-meta{
  position:absolute;left:18px;right:18px;bottom:14px;z-index:2;
  display:flex;justify-content:flex-end;
}
.justask-host__photo-tag{
  font-family:"JetBrains Mono",monospace;font-size:11px;
  color:var(--paper);letter-spacing:.04em;
  padding:5px 10px;border-radius:999px;
  background:rgba(0,0,0,.4);backdrop-filter:blur(6px);
}
.justask-host__info{padding:22px 24px 24px;display:flex;flex-direction:column;gap:12px}
.justask-host__head{display:flex;flex-direction:column;gap:4px;margin:0}
.justask-host--compact .justask-host__name{margin:0;font-size:28px;line-height:1.05;font-weight:700;letter-spacing:-.02em}
.justask-host--compact .justask-host__role{margin:0;font-size:11px;color:var(--coral);letter-spacing:.08em;text-transform:uppercase;font-family:"JetBrains Mono",monospace}
.justask-host__bio{font-size:14px;line-height:1.55;color:#d6d6d6;margin:0}
.justask-host__bio b{color:var(--paper);font-weight:600}
.justask-host--compact .justask-host__quote{
  font-size:13px;line-height:1.55;color:#bdbdbd;font-style:italic;
  padding-top:14px;border-top:1px solid rgba(255,255,255,.08);margin:0;
}
.justask-host--compact .justask-host__quote::before{
  content:"„";color:var(--coral);font-size:24px;line-height:0;
  margin-right:4px;vertical-align:-6px;font-style:normal;
}

.justask-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;
  border-top:1px solid rgba(38,15,15,.18);
  position:relative;z-index:2;
}
.justask-stats__cell{
  padding:24px 0;border-right:1px solid rgba(38,15,15,.18);
  display:flex;flex-direction:column;gap:6px;padding-right:24px;
}
.justask-stats__cell:last-child{border-right:0}
.justask-stats__cell:not(:first-child){padding-left:24px}
.justask-stats__num{font-size:48px;font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--ink-2)}
.justask-stats__lbl{font-size:13px;color:#260F0F;opacity:.85}

.justask-v2__decor{
  position:absolute;right:-12%;bottom:-22%;width:580px;
  pointer-events:none;
  filter:drop-shadow(0 30px 60px rgba(38,15,15,.25));
  animation:float 9s ease-in-out infinite;
  z-index:1;
}

/* ==== Crossroads with knowhub hero ==== */
/* Knowhub hero (vlevo) drží svou přirozenou výšku. O nás + Kariéra (vpravo)
   stojí ve vertikálním stacku tak, aby společně dorovnaly výšku Knowhubu. */
.cross-list-v2{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr;
  grid-template-rows:1fr 1fr;
  gap:16px;
  align-items:stretch;
}
.cross-list-v2 > .cross{display:flex;flex-direction:column;height:100%;min-height:0}
.cross--hero{grid-column:1;grid-row:1 / span 2;background:linear-gradient(180deg, rgba(255,116,125,.08), rgba(255,116,125,.02))}
.cross-list-v2 .cross--hero .cross__num{color:var(--coral)}
.cross-list-v2 > .cross.cross--photo{grid-column:2;grid-row:1 / span 2}
.cross-list-v2 > .cross.cross--stones{grid-column:3;grid-row:1 / span 2}

/* --- Knowhub hero card v3 (event-first) --- */
.cross--knowhub{
  position:relative;overflow:hidden;
  padding:36px 36px 32px;
  background:
    radial-gradient(ellipse at 85% 10%, rgba(255,116,125,.18), transparent 55%),
    linear-gradient(180deg, rgba(255,116,125,.08), rgba(255,116,125,.02));
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  gap:28px;
}
.cross--knowhub:hover{transform:translateY(-6px);border-color:var(--coral);background:
    radial-gradient(ellipse at 85% 10%, rgba(255,116,125,.24), transparent 55%),
    linear-gradient(180deg, rgba(255,116,125,.10), rgba(255,116,125,.03))}

.cross-kh__top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.cross-kh__pulse{
  display:inline-flex;align-items:center;gap:10px;
  padding:7px 14px 7px 12px;border-radius:999px;
  border:1px solid rgba(255,116,125,.35);
  background:rgba(255,116,125,.08);
  font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.06em;color:var(--coral);
  white-space:nowrap;line-height:1;
}
.cross-kh__pulse > span:not(.cross-kh__pulse-dot){
  display:inline-block;
}
.cross-kh__pulse-dot{
  width:8px;height:8px;border-radius:50%;background:#22c55e;
  box-shadow:0 0 0 0 rgba(34,197,94,.55);
  animation:khPulse 1.8s ease-out infinite;
}
@keyframes khPulse{
  0%{box-shadow:0 0 0 0 rgba(255,116,125,.55)}
  70%{box-shadow:0 0 0 10px rgba(255,116,125,0)}
  100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}
}
.motion-low .cross-kh__pulse-dot{animation:none}

.cross-kh__title-block{display:flex;flex-direction:column;gap:14px}
.cross--knowhub .cross__title{font-size:88px;line-height:.92;margin:0;letter-spacing:-.035em}
.cross-kh__lede{
  color:#cfcfcf;font-size:15px;line-height:1.55;max-width:42ch;margin:0;
}

.cross-kh__list{
  list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;
  border-top:1px solid var(--line);
}
.cross-kh__item{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;gap:16px;
  padding:16px 0;
  border-bottom:1px solid var(--line);
  transition:padding-left .25s ease;
}
.cross--knowhub:hover .cross-kh__item{padding-left:6px}
.cross-kh__layer{
  font-family:"JetBrains Mono",monospace;font-size:10px;font-weight:600;
  letter-spacing:.08em;
  padding:5px 8px;border-radius:6px;
  background:rgba(243,243,243,.06);color:#bdbdbd;
  min-width:34px;text-align:center;
}
.cross-kh__layer--pp{background:rgba(255,116,125,.14);color:var(--coral)}
.cross-kh__item-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.cross-kh__kicker{
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.1em;
  color:var(--muted);text-transform:uppercase;
}
.cross-kh__name{
  font-size:16px;color:var(--paper);font-weight:500;letter-spacing:-.01em;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.cross-kh__date{
  font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--paper);
  letter-spacing:.02em;font-feature-settings:"tnum" 1;
}

.cross-kh__foot{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-top:0;
}
.cross-kh__layers{display:inline-flex;gap:6px;flex-wrap:wrap}
.cross-kh__chip{
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.06em;
  padding:5px 9px;border-radius:6px;
  background:rgba(243,243,243,.04);color:#bdbdbd;
  border:1px solid var(--line);
}
.cross-kh__chip--accent{
  background:rgba(255,116,125,.10);color:var(--coral);border-color:rgba(255,116,125,.3);
}
.cross--knowhub .cross__arrow{margin-top:0}

@media (max-width:1080px){
  .cross--knowhub .cross__title{font-size:64px}
}
@media (max-width:560px){
  .cross-kh__name{white-space:normal}
  .cross-kh__layers{display:none}
}

/* --- Side cards (o nás / kariéra) — sjednocené s knowhub kartou --- */
.cross-list-v2 > .cross.cross--photo,
.cross-list-v2 > .cross.cross--stones{
  position:relative;overflow:hidden;
  display:grid;grid-template-rows:1fr auto;gap:0;
  padding:0;
  height:100%;
}
.cross-side__top{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  position:absolute;top:36px;left:36px;right:36px;z-index:3;
}
.cross-side__kicker{
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.1em;
  color:var(--paper);text-transform:uppercase;
  padding:5px 9px;border-radius:6px;
  background:rgba(14,14,14,.55);backdrop-filter:blur(8px);
  border:1px solid rgba(243,243,243,.12);
}
.cross-list-v2 .cross--photo .cross__num,
.cross-list-v2 .cross--stones .cross__num{
  padding:0;border-radius:0;
  background:transparent;backdrop-filter:none;
  border:0;
  color:var(--paper);
}

/* Spodní text + CTA (přes gradient) */
.cross-side__body{
  grid-row:2;
  position:relative;z-index:3;
  padding:24px 24px 18px;
  background:linear-gradient(180deg, rgba(14,14,14,0) 0%, rgba(14,14,14,.85) 35%, rgba(14,14,14,.96) 100%);
  display:flex;flex-direction:column;gap:8px;
}
.cross-list-v2 .cross--photo .cross__title,
.cross-list-v2 .cross--stones .cross__title{font-size:48px;letter-spacing:-.03em;margin:0;line-height:1}
.cross-list-v2 .cross--photo .cross__desc,
.cross-list-v2 .cross--stones .cross__desc{margin:0;max-width:32ch;color:#cfcfcf}

.cross-side__foot{
  grid-row:3;
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  padding:0 24px 22px;
  position:relative;z-index:3;
  background:#0e0e0e;
}
.cross-side__meta{
  font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.06em;
  color:#bdbdbd;
}
.cross-side__cta{
  display:inline-flex;align-items:center;gap:10px;
  padding:11px 18px;border-radius:999px;
  background:var(--coral);color:var(--ink);
  font-size:13px;font-weight:600;letter-spacing:.02em;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.cross-side__cta-arrow{
  display:inline-flex;align-items:center;justify-content:center;
  width:18px;height:18px;transition:transform .25s ease;
}
.cross--photo:hover .cross-side__cta,
.cross--stones:hover .cross-side__cta{transform:translateY(-2px);box-shadow:0 14px 30px rgba(255,116,125,.35)}
.cross--photo:hover .cross-side__cta-arrow,
.cross--stones:hover .cross-side__cta-arrow{transform:translateX(4px)}

/* Také pro Knowhub: přidám solidní CTA do footeru */
.cross--knowhub .cross-kh__cta{
  display:inline-flex;align-items:center;gap:10px;
  padding:11px 18px;border-radius:999px;
  background:var(--coral);color:var(--ink);
  font-size:13px;font-weight:600;letter-spacing:.02em;
  transition:transform .25s ease, box-shadow .25s ease;
}
.cross--knowhub:hover .cross-kh__cta{transform:translateY(-2px);box-shadow:0 14px 30px rgba(255,116,125,.35)}
.cross--knowhub .cross-kh__cta-arrow{transition:transform .25s ease}
.cross--knowhub:hover .cross-kh__cta-arrow{transform:translateX(4px)}

/* media wrapper (pozadí karty) */
.cross-side__media{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  transition:transform .6s ease, filter .6s ease;
}

/* --- O nás (photo) --- */
.cross-side__media--photo{
  background:#0c0c0c;
  grid-row:1;
}
.cross-side__photo{
  position:absolute;inset:0;
  background-size:cover;background-position:center 12%;
  filter:grayscale(.05) contrast(1.05);
  opacity:0;transition:opacity .9s ease;
}
.cross-side__photo.is-on{opacity:1}
.cross-side__photo-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg, rgba(14,14,14,.10) 0%, rgba(14,14,14,.55) 55%, rgba(14,14,14,.94) 100%),
    radial-gradient(ellipse at 30% 0%, rgba(255,116,125,.16), transparent 60%);
}
.cross-side__photo-name{
  position:absolute;top:14px;right:14px;z-index:2;
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.1em;
  color:var(--paper);text-transform:uppercase;
  padding:5px 9px;border-radius:6px;
  background:rgba(14,14,14,.65);backdrop-filter:blur(8px);
  border:1px solid rgba(243,243,243,.12);
}
.cross--photo:hover .cross-side__photo.is-on{transform:scale(1.04);transition:transform .6s ease}
.cross--photo .cross__title{color:var(--paper)}

/* --- Kariéra (stones) --- */
.cross-side__media--stones{
  background:
    radial-gradient(ellipse at 50% 40%, rgba(255,116,125,.10), transparent 60%),
    linear-gradient(180deg, #131313, #0c0c0c);
  grid-row:1;
}
.cross-stone{
  position:absolute;pointer-events:none;
  filter:drop-shadow(0 18px 40px rgba(0,0,0,.55));
  transition:transform .8s ease;
  will-change:transform;
}
/* stones start BELOW the "Staň se kamenem" label (~80px from top) and stay above body text;
   ascending career path: alabastr → grafit → obsidián → rubín → diamant */
.cross-stone--a{left:22%;top:54%;width:130px;transform:rotate(-6deg);z-index:4}
.cross-stone--b{right:-10px;top:42%;width:130px;transform:rotate(12deg);opacity:.95;z-index:2}
.cross-stone--c{left:-12px;top:30%;width:140px;transform:rotate(-8deg);opacity:.95;z-index:3}
.cross-stone--r{right:8%;top:18%;width:150px;transform:rotate(-4deg);z-index:5;filter:drop-shadow(0 18px 40px rgba(0,0,0,.55)) drop-shadow(0 0 24px rgba(255,116,125,.35))}
.cross-stone--d{left:14%;top:9%;width:105px;transform:rotate(8deg);opacity:.98;z-index:1}
.cross--stones:hover .cross-stone--a{transform:rotate(-2deg) translateY(-4px)}
.cross--stones:hover .cross-stone--b{transform:rotate(16deg) translate(-3px,-5px)}
.cross--stones:hover .cross-stone--c{transform:rotate(-4deg) translate(4px,-5px)}
.cross--stones:hover .cross-stone--r{transform:rotate(0deg) translateY(-6px)}
.cross--stones:hover .cross-stone--d{transform:rotate(12deg) translate(2px,-3px)}
.cross--stones .cross__title{color:var(--paper)}
.cross--stones .cross__desc{color:#cfcfcf}

/* ==== Contact form v2 ==== */
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:680px){.field-row{grid-template-columns:1fr}}

@media (max-width:980px){
  .cross-list-v2{grid-template-columns:1fr}
  .justask-v2__grid{grid-template-columns:1fr}
  .justask-v2__bullets{grid-template-columns:1fr}
  .justask-stats{grid-template-columns:1fr;gap:8px}
  .proj-list .card.lg,.proj-list .card.md,.proj-list .card.sm,.proj-list .card.xs,.proj-list .card.full{grid-column:span 12}
}
::selection{background:var(--coral);color:var(--ink)}

/* ==================== JUSTASK PAGE ==================== */
.ja-hero{
  position:relative;overflow:hidden;
  padding:48px 36px 96px;
  background:radial-gradient(ellipse at 70% 20%, rgba(255,116,125,.13), transparent 60%), var(--ink);
}
.ja-hero__top{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 16px;border-radius:999px;
  border:1px solid var(--line);background:rgba(243,243,243,.03);
  font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.16em;color:var(--paper);
  margin-top:24px;
}
.ja-hero__display{
  font-family:"Hubot Sans",sans-serif;
  text-transform:uppercase;
  font-size:clamp(72px,12vw,200px);font-weight:500;letter-spacing:-.025em;line-height:.92;
  margin:32px 0 0;color:var(--paper);
  font-stretch:75%;
}
.ja-hero__line{display:block}
.ja-hero__display em{font-style:italic;font-weight:200;color:var(--coral)}
.ja-hero__display i{font-style:italic;font-weight:300;color:var(--coral)}
.ja-hero__meta{
  display:grid;grid-template-columns:1fr auto;gap:48px;align-items:end;
  margin-top:48px;padding-top:32px;border-top:1px solid var(--line);
}
.ja-hero__lede{font-size:20px;line-height:1.5;color:#cfcfcf;max-width:54ch}
.ja-hero__cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.ja-hero__price{display:flex;flex-direction:column;align-items:flex-end;gap:2px;line-height:1}
.ja-hero__price-strike{font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--muted);text-decoration:line-through}
.ja-hero__price-now{font-size:32px;font-weight:800;color:var(--coral);letter-spacing:-.02em}
.ja-hero__perks{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:64px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ja-perk{display:flex;align-items:center;gap:16px;padding:24px 28px;border-right:1px solid var(--line)}
.ja-perk:last-child{border-right:0}
.ja-perk__ico{font-size:28px;color:var(--coral);line-height:1}
.ja-perk strong{display:block;font-size:20px;letter-spacing:-.02em;color:var(--paper);font-weight:700}
.ja-perk span{font-size:13px;color:var(--muted)}

.ja-marquee{background:var(--coral);color:var(--ink-2);padding:28px 0;overflow:hidden;border-top:1px solid rgba(38,15,15,.15);border-bottom:1px solid rgba(38,15,15,.15)}
.ja-marquee__track{display:flex;gap:48px;width:max-content;align-items:center;animation:marquee 50s linear infinite}
.motion-low .ja-marquee__track{animation-duration:160s}
.motion-high .ja-marquee__track{animation-duration:30s}
.ja-marquee__item{font-size:48px;font-weight:800;letter-spacing:-.04em;display:inline-flex;align-items:center;gap:32px;white-space:nowrap}
.ja-marquee__star{font-size:32px;color:#260F0F}

.ja-section__head{margin-bottom:64px;text-align:center;max-width:760px;margin-left:auto;margin-right:auto}
.ja-section__head h2 em{font-style:italic;font-weight:300;color:var(--coral)}

.ja-personas{padding:120px 36px;position:relative;overflow:hidden}
.ja-personas__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ja-persona{display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:rgba(243,243,243,.03);border:1px solid var(--line);transition:transform .4s, border-color .4s}
.ja-persona.is-active{border-color:var(--coral);transform:translateY(-6px)}
.ja-persona__media{height:280px;background-size:cover;background-position:center;position:relative}
.ja-persona__tag{position:absolute;top:14px;left:14px;padding:8px 14px;border-radius:999px;background:rgba(26,26,26,.85);backdrop-filter:blur(8px);font-size:12px;letter-spacing:.04em;color:var(--paper);text-transform:uppercase;font-weight:500}
.ja-persona__body{padding:28px;display:flex;flex-direction:column;gap:14px;flex:1}
.ja-persona__title{font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--paper)}
.ja-persona__desc{color:#bdbdbd;font-size:15px;line-height:1.5}
.ja-persona__qs{margin-top:auto;padding-top:20px;border-top:1px solid var(--line)}
.ja-persona__qs-lbl{font-size:11px;letter-spacing:.14em;color:var(--coral);text-transform:uppercase;display:block;margin-bottom:10px}
.ja-persona__qs ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.ja-persona__qs li{font-size:14px;color:var(--paper);line-height:1.4;font-style:italic}
.ja-personas__foot{margin-top:64px;padding:36px;border-radius:18px;background:linear-gradient(135deg, rgba(255,116,125,.08), rgba(255,116,125,.02));border:1px dashed rgba(255,116,125,.4);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.ja-personas__foot h4{font-size:22px;font-weight:600;color:var(--paper);letter-spacing:-.01em}
.ja-personas__foot p{color:#bdbdbd;max-width:46ch}

.ja-when{padding:120px 36px;background:#0F0F0F;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ja-when__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px}
.ja-loc{border-radius:20px;padding:32px;border:1px solid var(--line);background:rgba(243,243,243,.02);display:flex;flex-direction:column;gap:24px;position:relative;overflow:hidden}
.ja-loc--brno{background:linear-gradient(180deg, rgba(255,116,125,.06), rgba(255,116,125,.02));border-color:rgba(255,116,125,.3)}
.ja-loc--praha{background:rgba(243,243,243,.04)}
.ja-loc--online{background:var(--coral);color:var(--ink-2);border-color:transparent}
.ja-loc--online .ja-loc__city,.ja-loc--online .ja-loc__addr,.ja-loc--online .ja-loc__online-body{color:var(--ink-2)}
.ja-loc--online .btn{background:var(--ink-2);color:var(--paper)}
.ja-loc__head{display:flex;flex-direction:column;gap:8px}
.ja-loc__city{font-size:36px;font-weight:800;letter-spacing:-.03em;color:var(--paper)}
.ja-loc__addr{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.04em;color:var(--muted)}
.ja-loc__dates{display:flex;flex-direction:column;gap:8px}
.ja-date{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:center;padding:18px 20px;border-radius:12px;background:rgba(26,26,26,.5);border:1px solid var(--line);cursor:pointer;text-align:left;transition:background .2s, border-color .2s, transform .2s}
.ja-date:hover{background:var(--coral);border-color:var(--coral);transform:translateX(4px)}
.ja-date:hover .ja-date__day,.ja-date:hover .ja-date__time,.ja-date:hover .ja-date__cta{color:var(--ink-2)}
.ja-date__day{font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--paper)}
.ja-date__time{font-family:"JetBrains Mono",monospace;font-size:13px;color:#bdbdbd}
.ja-date__cta{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--coral);letter-spacing:.06em}
.ja-loc__cap{font-size:11px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase;margin-top:auto}
.ja-loc__pending{display:flex;flex-direction:column;gap:14px;flex:1;justify-content:center;align-items:flex-start}
.ja-loc__pending h4{font-size:30px;font-weight:700;color:var(--paper);letter-spacing:-.02em;line-height:1}
.ja-loc__pending p{color:#bdbdbd;font-size:14px}
.btn--ghost-light{background:transparent;color:var(--paper);border:1px solid var(--paper)}
.ja-loc__online-body{font-size:15px;line-height:1.5;color:var(--ink-2);flex:1}

.ja-steps{padding:120px 36px;position:relative;overflow:hidden}
.ja-steps__list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative}
.ja-step{position:relative;padding:36px;border-radius:18px;background:rgba(243,243,243,.03);border:1px solid var(--line);display:flex;flex-direction:column;gap:14px}
.ja-step__num{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.14em;color:var(--coral)}
.ja-step__title{font-size:30px;font-weight:700;letter-spacing:-.02em;color:var(--paper)}
.ja-step__desc{color:#bdbdbd;font-size:15px;line-height:1.5}
.ja-step__line{position:absolute;right:-24px;top:50%;width:24px;height:1px;background:var(--line)}

.ja-tomas{padding:120px 36px}
.ja-tomas__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.ja-tomas__photo{position:relative}
.ja-tomas__photo-inner{aspect-ratio:4/5;border-radius:24px;background-size:cover;background-position:center;position:relative;overflow:hidden}
.ja-tomas__chip{position:absolute;padding:10px 16px;border-radius:999px;background:var(--paper);color:var(--ink-2);font-size:13px;font-weight:600;letter-spacing:-.005em;display:inline-flex;align-items:center;gap:8px;box-shadow:0 16px 40px rgba(0,0,0,.4)}
.ja-tomas__chip::before{content:"✦";color:var(--coral)}
.ja-tomas__chip--1{top:20px;right:-20px;animation:float 7s ease-in-out infinite}
.ja-tomas__chip--2{bottom:32%;left:-30px;background:var(--coral);color:var(--ink-2);animation:float 9s ease-in-out infinite reverse}
.ja-tomas__chip--3{bottom:24px;right:24px;animation:float 8s ease-in-out infinite}
.ja-tomas__name{font-family:"Hubot Sans",sans-serif;text-transform:uppercase;font-size:clamp(64px,9vw,140px);font-weight:500;letter-spacing:-.025em;line-height:.92;color:var(--paper)}
.ja-tomas__name em{font-style:italic;font-weight:200;color:var(--coral)}
.ja-tomas__role{font-size:12px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase;margin-top:18px}
.ja-tomas__bio{color:#bdbdbd;font-size:17px;line-height:1.55;margin-top:18px;max-width:54ch}
.ja-tomas__bio strong{color:var(--paper);font-weight:600}
.ja-tomas__links{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.ja-link{display:inline-flex;align-items:center;gap:10px;padding:14px 18px;border-radius:12px;background:rgba(243,243,243,.04);border:1px solid var(--line);color:var(--paper);font-size:14px;font-weight:500;transition:border-color .25s, background .25s}
.ja-link:hover{border-color:var(--coral);background:rgba(255,116,125,.08)}
.ja-link span{color:var(--coral);font-size:18px}

.ja-testimonials{padding:120px 36px;background:var(--paper);color:var(--ink-2)}
.ja-testimonials .eyebrow{color:var(--ink-2)}
.ja-testimonials__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ja-quote{position:relative;padding:48px 40px 40px;border-radius:20px;background:#fff;border:1px solid #E8E8E8;display:flex;flex-direction:column;gap:24px}
.ja-quote__mark{position:absolute;top:20px;left:32px;font-size:96px;font-weight:800;color:var(--coral);line-height:.6;font-family:"Hubot Sans",sans-serif}
.ja-quote blockquote{margin:0;font-size:19px;line-height:1.55;color:var(--ink-2);font-style:italic;padding-top:32px}
.ja-quote figcaption{display:flex;flex-direction:column;gap:4px;padding-top:20px;border-top:1px solid #E8E8E8}
.ja-quote figcaption strong{font-size:18px;font-weight:700;color:var(--ink-2);letter-spacing:-.01em;font-style:normal}
.ja-quote figcaption span{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.06em;color:var(--muted-2)}

.ja-form{padding:120px 36px;position:relative;overflow:hidden;background:var(--ink)}
.ja-form__head{text-align:center;margin-bottom:64px;max-width:760px;margin-left:auto;margin-right:auto}
.ja-form__title{font-family:"Hubot Sans",sans-serif;text-transform:uppercase;font-size:clamp(48px,7vw,96px);font-weight:500;letter-spacing:-.02em;line-height:.95;color:var(--paper)}
.ja-form__title em{font-style:italic;font-weight:200;color:var(--coral)}
.ja-form__lede{font-size:17px;line-height:1.5;color:#bdbdbd;margin-top:18px}
.ja-form__form{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:18px;background:rgba(243,243,243,.03);border:1px solid var(--line);border-radius:24px;padding:36px}
.ja-form__row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ja-field{display:flex;flex-direction:column;gap:8px}
.ja-field label{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
.ja-field input,.ja-field select,.ja-field textarea{padding:14px 16px;border-radius:12px;background:rgba(26,26,26,.5);border:1px solid var(--line);color:var(--paper);font-family:"Hubot Sans",sans-serif;font-size:15px;transition:border-color .2s, background .2s}
.ja-field input:focus,.ja-field select:focus,.ja-field textarea:focus{outline:0;border-color:var(--coral);background:rgba(26,26,26,.8)}
.ja-field textarea{resize:vertical;min-height:120px;font-family:inherit}
.ja-form__consent{display:flex;align-items:center;gap:12px;color:#bdbdbd;font-size:13px;cursor:pointer;margin-top:8px}
.ja-form__consent input{accent-color:var(--coral)}
.ja-form__cta{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:12px}
.btn--big{padding:20px 32px;font-size:17px}
.ja-form__small{font-size:11px;letter-spacing:.14em;color:var(--muted)}

@media (max-width:980px){
  .ja-hero__meta{grid-template-columns:1fr}
  .ja-hero__perks{grid-template-columns:repeat(2,1fr)}
  .ja-perk:nth-child(2){border-right:0}
  .ja-personas__grid,.ja-when__grid,.ja-steps__list,.ja-testimonials__grid,.ja-tomas__grid,.ja-form__row{grid-template-columns:1fr}
  .ja-step__line{display:none}
  .ja-marquee__item{font-size:32px}
}

/* ==== Reduce motion ==== */
@media (prefers-reduced-motion: reduce){
  *{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}

/* ==================== JUSTASK V2 — addressing Tomáš feedback ==================== */
/* Compact hero with handwritten "zdarma" + Tom mini-card */
.ja-hero--compact{padding:120px 36px 72px}
.ja-hero--compact .ja-hero__display{
  font-size:clamp(48px, 8.5vw, 132px); /* ~70% of original */
  line-height:.95;
  margin:24px 0 0;
}
.ja-hero__head{
  display:grid;grid-template-columns:1fr auto;gap:48px;align-items:end;
}
.ja-hero__line--hw{
  margin-top:8px;
  display:flex;align-items:center;
  position:relative;
}
.ja-hero__hw{
  width:clamp(110px,14vw,210px);
  height:auto;color:var(--coral);display:block;
  filter:drop-shadow(0 6px 20px rgba(255,116,125,.25));
}
.hw-path{
  stroke-dasharray:var(--hw-len, 300);
  stroke-dashoffset:var(--hw-len, 300);
  animation:hwDraw 1.6s cubic-bezier(.4,.05,.2,1) forwards;
  animation-delay:var(--hw-delay,0ms);
}
@keyframes hwDraw{ to{ stroke-dashoffset:0; } }
.motion-low .hw-path{animation:none;stroke-dashoffset:0}

.ja-hero__tom{
  display:flex;align-items:center;gap:16px;
  padding:14px 20px 14px 14px;border-radius:999px;
  background:rgba(243,243,243,.04);border:1px solid var(--line);
  margin-bottom:8px;
}
.ja-hero__tom-photo{
  width:64px;height:64px;border-radius:999px;
  background-size:cover;background-position:center 20%;
  border:2px solid var(--coral);flex-shrink:0;
}
.ja-hero__tom-meta{display:flex;flex-direction:column;line-height:1.2}
.ja-hero__tom-meta .mono{font-size:10px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase}
.ja-hero__tom-meta strong{font-size:18px;color:var(--paper);letter-spacing:-.01em;margin-top:2px}
.ja-hero__tom-meta span{font-size:12px;color:var(--muted)}

/* XL anchor variant — clickable, scrolls down to Tomáš section */
.ja-hero__tom--xl{
  display:flex;flex-direction:column;align-items:flex-start;gap:18px;
  padding:24px;border-radius:32px;
  background:rgba(255,255,255,.04);border:1px solid var(--line);
  text-decoration:none;color:inherit;cursor:pointer;
  transition:background .35s ease, border-color .35s ease, transform .35s ease;
  position:relative;align-self:flex-start;margin-bottom:0;
  width:auto;max-width:280px;
}
.ja-hero__tom--xl:hover{
  background:rgba(255,116,125,.10);border-color:var(--coral);
  transform:translateY(-2px);
}
.ja-hero__tom--xl .ja-hero__tom-photo{
  width:100%;height:240px;border-radius:20px;
}
.ja-hero__tom--xl .ja-hero__tom-meta{width:100%}
.ja-hero__tom--xl .ja-hero__tom-meta .mono{font-size:11px}
.ja-hero__tom--xl .ja-hero__tom-meta strong{font-size:26px;letter-spacing:-.02em;margin-top:6px;display:block}
.ja-hero__tom--xl .ja-hero__tom-meta span{font-size:13px;margin-top:2px;display:block}
.ja-hero__tom-anchor{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  width:100%;padding-top:16px;border-top:1px solid var(--line);
  color:var(--coral);
}
.ja-hero__tom-anchor-label{
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.18em;
  text-transform:uppercase;white-space:nowrap;
}
.ja-hero__tom-anchor-arrow{
  font-size:22px;line-height:1;
  animation:tomBounce 2s ease-in-out infinite;
}
@keyframes tomBounce{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(6px)}
}
@media (max-width:680px){
  .ja-hero__tom--xl{max-width:100%;width:100%}
  .ja-hero__tom--xl .ja-hero__tom-photo{height:200px}
}

/* Section head subtitle */
.ja-section__sub{
  margin-top:18px;color:#bdbdbd;font-size:17px;line-height:1.5;
  max-width:62ch;margin-left:auto;margin-right:auto;
}

/* Slim marquee strip embedded in termíny */
.ja-marquee--slim{padding:14px 0;margin:0 -36px 56px}
.ja-marquee--slim .ja-marquee__item{font-size:22px;font-weight:700;letter-spacing:-.02em}
.ja-marquee--slim .ja-marquee__star{font-size:18px}
.ja-marquee--slim .ja-marquee__track{animation-duration:60s}
.ja-when{padding:96px 36px}
.ja-when .ja-section__head{margin-bottom:48px}

/* 4-column personas — DEPRECATED, replaced by .ja-personas2 stage layout */
.ja-personas__grid--4{grid-template-columns:repeat(4,1fr);gap:18px}
.ja-personas__grid--4 .ja-persona__media{height:220px}
.ja-personas__grid--4 .ja-persona__title{font-size:22px;display:flex;flex-direction:column;gap:4px}
.ja-persona__role{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.06em;color:var(--coral);text-transform:uppercase;font-weight:400}
.ja-personas__grid--4 .ja-persona__body{padding:20px;gap:12px}
.ja-personas__grid--4 .ja-persona__desc{font-size:14px}
.ja-personas__grid--4 .ja-persona__qs li{font-size:13px}

/* ─── Personas — minimalistická verze ─── */
.ja-personas-min{padding:80px 36px;background:#0f0f0f;color:var(--paper)}
.ja-personas-min__head{margin-bottom:36px;max-width:880px}
.ja-personas-min__head .h-2{color:var(--paper)}
.ja-personas-min__head em{color:var(--coral);font-style:italic;font-weight:300}
.ja-personas-min__list{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  border-top:1px solid rgba(255,255,255,.1);
}
.ja-personas-min__item{
  display:flex;flex-direction:column;gap:8px;
  padding:24px 20px 24px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
  border-right:1px solid rgba(255,255,255,.1);
}
.ja-personas-min__item:last-child{border-right:0}
.ja-personas-min__num{font-size:11px;letter-spacing:.14em;color:var(--coral)}
.ja-personas-min__name{
  font-family:"Hubot Sans",sans-serif;font-size:28px;font-weight:500;
  letter-spacing:-.01em;line-height:1;color:var(--paper);
}
.ja-personas-min__role{font-size:13px;color:#9a9a9a;line-height:1.4}
@media (max-width:900px){
  .ja-personas-min__list{grid-template-columns:1fr 1fr}
  .ja-personas-min__item:nth-child(2){border-right:0}
}
@media (max-width:560px){
  .ja-personas-min__list{grid-template-columns:1fr}
  .ja-personas-min__item{border-right:0;padding-right:0}
}

/* ─── Personas v2 — scénický stage (deprecated) ─── */
.ja-personas2{padding:120px 36px;position:relative;overflow:hidden}
.ja-personas2__stage{
  margin-top:64px;
  display:grid;grid-template-columns:1.4fr .9fr;gap:32px;align-items:stretch;
}
.ja-personas2__hero{
  position:relative;
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-radius:24px;overflow:hidden;
  background:#121212;border:1px solid var(--line);
  min-height:540px;
  animation:p2Fade .5s cubic-bezier(.4,0,.2,1) both;
}
@keyframes p2Fade{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}
.ja-personas2__photo{
  position:relative;background-size:cover;background-position:center top;
  min-height:540px;
}
.ja-personas2__photo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 60%, rgba(0,0,0,.5) 100%);
  pointer-events:none;
}
.ja-personas2__pcount{
  position:absolute;top:20px;left:20px;z-index:2;
  font-size:11px;letter-spacing:.14em;color:var(--coral);
  background:rgba(0,0,0,.55);backdrop-filter:blur(8px);
  padding:8px 12px;border-radius:999px;
  border:1px solid rgba(255,116,125,.3);
}
.ja-personas2__ptag{
  position:absolute;bottom:20px;left:20px;z-index:2;
  font-family:"JetBrains Mono",monospace;font-size:12px;
  letter-spacing:.08em;text-transform:uppercase;
  color:var(--paper);
  background:rgba(26,26,26,.85);backdrop-filter:blur(10px);
  padding:10px 16px;border-radius:999px;
  border:1px solid var(--line);
}
.ja-personas2__copy{
  padding:44px 40px;display:flex;flex-direction:column;gap:18px;
  border-left:1px solid var(--line);
}
.ja-personas2__name{
  font-size:56px;font-weight:300;letter-spacing:-.03em;color:var(--paper);
  line-height:.95;
}
.ja-personas2__role{
  font-size:11px;letter-spacing:.14em;color:var(--coral);text-transform:uppercase;
}
.ja-personas2__desc{
  color:#cfcfcf;font-size:17px;line-height:1.55;max-width:42ch;
}
.ja-personas2__qs{
  margin-top:auto;padding-top:24px;border-top:1px solid var(--line);
}
.ja-personas2__qs-lbl{
  font-size:11px;letter-spacing:.14em;color:var(--coral);text-transform:uppercase;
  display:block;margin-bottom:14px;
}
.ja-personas2__qs ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.ja-personas2__qs li{
  font-size:16px;color:var(--paper);line-height:1.45;font-style:italic;font-weight:300;
}
.ja-personas2__qs li em{color:var(--coral);font-style:normal;margin:0 2px}

/* List vpravo */
.ja-personas2__list{
  display:flex;flex-direction:column;gap:10px;
}
.ja-personas2__item{
  all:unset;cursor:pointer;
  display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;
  padding:18px 20px;border-radius:14px;
  background:rgba(243,243,243,.02);border:1px solid var(--line);
  transition:background .25s ease, border-color .25s ease;
}
.ja-personas2__item:hover{background:rgba(243,243,243,.04);border-color:rgba(255,116,125,.3)}
.ja-personas2__item.is-on{
  background:linear-gradient(135deg, rgba(255,116,125,.1), rgba(255,116,125,.02));
  border-color:var(--coral);
}
.ja-personas2__itemNum{
  font-size:11px;letter-spacing:.12em;color:var(--coral);
  width:28px;
}
.ja-personas2__itemBody{display:flex;flex-direction:column;gap:3px;min-width:0}
.ja-personas2__itemTag{
  font-size:10px;letter-spacing:.1em;color:#9a9a9a;text-transform:uppercase;
}
.ja-personas2__itemName{
  font-size:20px;font-weight:500;color:var(--paper);letter-spacing:-.01em;
}
.ja-personas2__itemRole{
  font-size:13px;color:#9a9a9a;line-height:1.3;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.ja-personas2__itemArrow{
  font-size:16px;color:#666;transition:color .2s, transform .2s;
}
.ja-personas2__item:hover .ja-personas2__itemArrow{color:var(--coral);transform:translate(2px,-2px)}
.ja-personas2__item.is-on .ja-personas2__itemArrow{color:var(--coral)}

/* Honest reminder */
.ja-personas2__honest{
  margin-top:48px;padding:28px 32px;
  border-radius:16px;
  background:rgba(243,243,243,.02);
  border-left:3px solid var(--coral);
  display:grid;grid-template-columns:160px 1fr;gap:24px;align-items:start;
}
.ja-personas2__honest .mono{font-size:11px;letter-spacing:.14em;color:var(--coral);text-transform:uppercase;padding-top:4px}
.ja-personas2__honest p{color:#bdbdbd;font-size:16px;line-height:1.6;max-width:70ch}

@media (max-width:1100px){
  .ja-personas2__stage{grid-template-columns:1fr}
  .ja-personas2__hero{grid-template-columns:1fr;min-height:auto}
  .ja-personas2__photo{min-height:340px}
  .ja-personas2__copy{border-left:0;border-top:1px solid var(--line)}
  .ja-personas2__name{font-size:44px}
  .ja-personas2__honest{grid-template-columns:1fr;gap:8px}
}

/* Balíčky — emocionální, hravější */
.ja-baliky{
  padding:140px 36px 120px;position:relative;overflow:hidden;
  background:radial-gradient(ellipse at 20% 0%, #1a1a1a 0%, #0F0F0F 50%, #0a0a0a 100%);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.ja-baliky__deco{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.ja-baliky__blob{
  position:absolute;border-radius:50%;filter:blur(80px);opacity:.18;
}
.ja-baliky__blob--1{
  width:520px;height:520px;left:-200px;top:8%;
  background:radial-gradient(circle, var(--coral), transparent 70%);
}
.ja-baliky__blob--2{
  width:420px;height:420px;right:-160px;bottom:10%;
  background:radial-gradient(circle, #f3f3f3, transparent 70%);
  opacity:.05;
}
.ja-baliky__head{max-width:880px}
.ja-baliky__title em{font-style:italic;color:var(--coral);font-weight:300}
.ja-baliky__title i{font-style:italic;font-weight:300;color:var(--paper);text-decoration:underline;text-decoration-color:var(--coral);text-decoration-thickness:3px;text-underline-offset:8px}
.ja-baliky__askstrip{
  display:inline-flex;align-items:center;gap:14px;
  margin-top:28px;padding:12px 18px;
  background:rgba(255,116,125,.06);border:1px dashed rgba(255,116,125,.35);border-radius:999px;
}
.ja-baliky__askstrip .mono{font-size:11px;letter-spacing:.16em;color:var(--coral);text-transform:uppercase}
.ja-baliky__askstrip em{font-family:"Hubot Sans",sans-serif;font-style:italic;font-weight:300;color:var(--paper);font-size:18px}

.ja-baliky__grid{
  margin-top:64px;
  display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:20px;align-items:stretch;
}
.ja-balik{
  position:relative;
  padding:40px 32px 28px;border-radius:28px;
  background:rgba(243,243,243,.025);border:1px solid var(--line);
  display:flex;flex-direction:column;gap:20px;
  transition:transform .4s cubic-bezier(.2,.8,.2,1), border-color .4s, background .4s, box-shadow .4s;
  overflow:hidden;
  isolation:isolate;
}
.ja-balik::after{
  /* subtle grain layer */
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='.5'/></svg>");
  opacity:.04;mix-blend-mode:overlay;z-index:0;
}
.ja-balik > *{position:relative;z-index:1}
.ja-balik:hover{transform:translateY(-8px) rotate(-.3deg);border-color:rgba(255,116,125,.5);box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
.ja-balik--featured{
  background:linear-gradient(160deg,rgba(255,116,125,.08) 0%,rgba(255,116,125,.02) 50%,rgba(243,243,243,.03) 100%);
  border-color:rgba(255,116,125,.5);
  transform:translateY(-12px);
  box-shadow:0 40px 80px -30px rgba(255,116,125,.25), 0 0 0 1px rgba(255,116,125,.2) inset;
}
.ja-balik--featured:hover{transform:translateY(-18px) rotate(-.3deg)}
.ja-balik--featured::before{
  content:"★ NEJČASTĚJŠÍ VOLBA";
  position:absolute;top:-1px;left:50%;transform:translateX(-50%);
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.18em;color:var(--ink);
  padding:7px 16px;
  background:var(--coral);
  border-radius:0 0 12px 12px;
  z-index:2;
}

/* fear quote — inline v price řádku, vpravo */
.ja-balik__fear{
  display:flex;flex-direction:column;gap:2px;
  text-align:right;align-items:flex-end;
  max-width:55%;
}
.ja-balik__fear .mono{font-size:10px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
.ja-balik__fear-quote{
  font-family:"Hubot Sans",sans-serif;
  font-style:italic;font-weight:400;font-size:13px;line-height:1.35;
  color:#bdbdbd;
  letter-spacing:-.01em;
}
.ja-balik--featured .ja-balik__fear-quote{color:var(--coral)}

.ja-balik__stone{
  width:240px;height:240px;margin:0 auto -16px;
  position:relative;
  filter:drop-shadow(0 20px 40px rgba(0,0,0,.6));
  animation:stoneFloat 6s ease-in-out infinite;
}
.ja-balik--featured .ja-balik__stone{animation-duration:5s}
.ja-balik:nth-child(2) .ja-balik__stone{animation-delay:-1.5s}
.ja-balik:nth-child(3) .ja-balik__stone{animation-delay:-3s}
@keyframes stoneFloat{
  0%,100%{transform:translateY(0) rotate(-2deg)}
  50%{transform:translateY(-8px) rotate(2deg)}
}
.ja-balik__stone img{
  width:100%;height:100%;object-fit:contain;
}
.ja-balik--ink .ja-balik__stone img{filter:none}
.ja-balik--coral .ja-balik__stone img{filter:none}
.ja-balik--paper .ja-balik__stone img{filter:none}
.ja-balik__stone-tag{
  position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);
  white-space:nowrap;
  font-size:10px;letter-spacing:.16em;color:var(--paper);text-transform:uppercase;
  padding:6px 10px;
  background:var(--ink);
  border:1px solid var(--line);
  border-radius:999px;
}
.ja-balik--featured .ja-balik__stone-tag{
  background:var(--coral);color:var(--ink);border-color:var(--coral);font-weight:600;
}

.ja-balik__head-block{display:flex;flex-direction:column;gap:2px;text-align:center;margin-top:0}
.ja-balik__name{
  font-family:"Hubot Sans",sans-serif;
  font-size:64px;font-weight:500;letter-spacing:-.04em;line-height:.95;
  color:var(--paper);text-transform:uppercase;font-stretch:75%;
}
.ja-balik--featured .ja-balik__name{color:var(--coral)}
.ja-balik__feels{
  font-family:"Hubot Sans",sans-serif;
  font-style:italic;font-weight:300;
  font-size:18px;color:var(--coral);
  letter-spacing:-.01em;
  margin:0;
}

.ja-balik__forwho{
  font-size:13px;line-height:1.5;color:#bdbdbd;
  text-align:center;
  padding:12px 0;
  border-top:1px dashed var(--line);
  border-bottom:1px dashed var(--line);
  margin:0;
}

.ja-balik__desc{color:#dadada;font-size:14px;line-height:1.6;flex:1;margin:0}

.ja-balik__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.ja-balik__list li{
  font-size:13px;color:var(--paper);
  display:flex;gap:12px;line-height:1.5;align-items:flex-start;
}
.ja-balik__bullet-mark{
  flex-shrink:0;width:6px;height:6px;border-radius:50%;
  background:var(--coral);
  margin-top:8px;
  box-shadow:0 0 0 4px rgba(255,116,125,.12);
}

.ja-balik__price{
  display:flex;justify-content:space-between;align-items:flex-end;gap:12px;
  padding-top:18px;border-top:1px solid var(--line);
}
.ja-balik__price > div{display:flex;flex-direction:column;gap:2px}
.ja-balik__price .mono{font-size:10px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
.ja-balik__price strong{font-size:24px;font-weight:600;color:var(--paper);letter-spacing:-.02em;font-family:"Hubot Sans",sans-serif}
.ja-balik--featured .ja-balik__price strong{color:var(--coral)}
.ja-balik__price-note{
  font-size:11px;line-height:1.3;color:var(--muted);
  font-style:italic;text-align:right;max-width:130px;
}

/* foot — drobná poznámka pod balíčky */
.ja-baliky__foot{
  margin-top:32px;text-align:center;
  display:block;
  text-align:left;padding:0;border:0;border-radius:0;
  text-transform:none;letter-spacing:0;
}
.ja-baliky__foot-note{
  font-family:"JetBrains Mono",monospace;
  font-size:12px;color:#9a9a9a;letter-spacing:.02em;
  margin:0 auto;line-height:1.6;
  max-width:600px;text-align:center;
}
.ja-baliky__foot-row{
  display:flex;align-items:center;gap:18px;
  padding:20px 24px;
  border:1px dashed var(--line);border-radius:18px;
  background:rgba(243,243,243,.02);
}
.ja-baliky__foot-icon{
  font-size:24px;color:var(--coral);
  width:48px;height:48px;flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,116,125,.08);border-radius:50%;
  border:1px solid rgba(255,116,125,.3);
}
.ja-baliky__foot-row > div{display:flex;flex-direction:column;gap:4px}
.ja-baliky__foot-row strong{font-size:15px;color:var(--paper);font-weight:600;letter-spacing:-.01em}
.ja-baliky__foot-row span{font-size:13px;color:#bdbdbd;line-height:1.5}

/* Tomáš v2 — bigger photo, asymmetric */
.ja-tomas--v2{padding:120px 36px;background:var(--ink);position:relative;overflow:hidden}
.ja-tomas__v2-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:center}
.ja-tomas__v2-photo{display:flex;flex-direction:column;gap:24px}
.ja-tomas__v2-photo-inner{
  aspect-ratio:4/5;
  border-radius:24px;background-size:cover;background-position:center 25%;
  position:relative;overflow:hidden;
  box-shadow:0 40px 80px rgba(0,0,0,.5);
}
.ja-tomas__v2-photo-inner::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.7));
  pointer-events:none;
}
.ja-tomas__v2-overlay-name{
  position:absolute;left:32px;bottom:28px;
  font-family:"Hubot Sans",sans-serif;text-transform:lowercase;
  font-size:clamp(48px,5vw,84px);font-weight:500;letter-spacing:-.025em;line-height:.92;
  color:var(--paper);font-stretch:75%;
  z-index:2;
}
.ja-tomas__v2-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;
}
.ja-tomas__v2-stats div{
  background:var(--ink);padding:18px 16px;display:flex;flex-direction:column;gap:4px;
}
.ja-tomas__v2-stats strong{font-size:32px;font-weight:700;letter-spacing:-.02em;color:var(--coral);line-height:1}
.ja-tomas__v2-stats span{font-size:12px;color:var(--muted);line-height:1.3}

.ja-tomas__v2-side{display:flex;flex-direction:column}
.ja-tomas__v2-title{
  font-family:"Hubot Sans",sans-serif;text-transform:uppercase;
  font-size:clamp(56px,7.5vw,108px);font-weight:500;letter-spacing:-.025em;line-height:.92;
  color:var(--paper);font-stretch:75%;margin:0;
}
.ja-tomas__v2-title em{font-style:italic;font-weight:200;color:var(--coral)}

.ja-tomas__v2-cards{display:grid;grid-template-columns:1fr;gap:10px;margin-top:8px}
.ja-tomas__v2-card{
  display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;
  padding:18px 20px;border-radius:14px;
  background:rgba(243,243,243,.04);border:1px solid var(--line);
  transition:border-color .25s, background .25s, transform .25s;
}
.ja-tomas__v2-card:hover{border-color:var(--coral);background:rgba(255,116,125,.06);transform:translateX(4px)}
.ja-tomas__v2-card .mono{font-size:11px;letter-spacing:.14em;color:var(--coral);text-transform:uppercase}
.ja-tomas__v2-card strong{font-size:18px;color:var(--paper);font-weight:600;letter-spacing:-.01em;justify-self:start}
.ja-tomas__v2-card-cta{font-family:"JetBrains Mono",monospace;font-size:12px;color:#bdbdbd;letter-spacing:.06em}

/* Důkaz / Projekty CTA */
.ja-proof{padding:96px 36px;background:var(--coral);color:var(--ink-2);position:relative;overflow:hidden}
.ja-proof__inner{
  display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;
  position:relative;z-index:2;
}
.ja-proof .eyebrow{color:var(--ink-2)}
.ja-proof .eyebrow::before{background:var(--ink-2)}
.ja-proof__cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:36px}
.btn--ink{background:var(--ink-2);color:var(--paper)}
.btn--ink:hover{background:var(--ink)}
.btn--ink .arrow{background:var(--coral);color:var(--ink-2)}
.ja-proof__link{color:var(--ink-2);font-family:"JetBrains Mono",monospace;font-size:13px;letter-spacing:.06em;border-bottom:1px solid var(--ink-2);padding-bottom:2px}
.ja-proof__strip{
  display:flex;flex-wrap:wrap;gap:10px;align-content:flex-start;
}
.ja-proof__chip{
  padding:14px 22px;border-radius:999px;
  background:var(--ink-2);color:var(--paper);
  font-family:"Hubot Sans",sans-serif;font-size:24px;font-weight:600;letter-spacing:-.02em;
  text-transform:lowercase;
  transition:transform .25s, background .25s;
}
.ja-proof__chip:nth-child(2n){background:transparent;color:var(--ink-2);border:1px solid var(--ink-2)}
.ja-proof__chip:hover{transform:rotate(-2deg) scale(1.05)}

/* Testimonials v2 + video */
.ja-testimonials--v2{padding:120px 36px}
.ja-testimonials__grid--4{grid-template-columns:repeat(2,1fr);gap:18px;margin-top:48px}
.ja-testimonials__grid--3{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}

/* Reels — vertikální klipy */
.ja-reels{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  margin:48px 0 0;
}
.ja-reel{margin:0;position:relative}
.ja-reel__poster{
  position:relative;aspect-ratio:9/16;border-radius:20px;overflow:hidden;
  background-size:cover;background-position:center;background-color:var(--ink-2);
  cursor:pointer;display:block;
  transition:transform .35s ease;
}
.ja-reel__poster::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 55%,rgba(0,0,0,.75) 100%);
}
.ja-reel:hover .ja-reel__poster{transform:translateY(-4px)}
.ja-reel__play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;
  width:64px;height:64px;border-radius:999px;
  background:var(--coral);color:var(--ink-2);
  display:grid;place-items:center;
  transition:transform .25s;
  box-shadow:0 8px 24px rgba(0,0,0,.4);
}
.ja-reel__play svg{margin-left:3px}
.ja-reel:hover .ja-reel__play{transform:translate(-50%,-50%) scale(1.08)}
.ja-reel__dur{
  position:absolute;top:14px;right:14px;z-index:2;
  font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.04em;
  color:var(--paper);background:rgba(0,0,0,.5);backdrop-filter:blur(8px);
  padding:5px 9px;border-radius:6px;
}
.ja-reel__tag{
  position:absolute;top:14px;left:14px;z-index:2;
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.14em;
  color:var(--coral);
}
.ja-reel__cap{
  position:absolute;left:18px;right:18px;bottom:18px;z-index:2;
  display:flex;flex-direction:column;gap:2px;color:var(--paper);
}
.ja-reel__cap strong{font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--paper)}
.ja-reel__cap span{font-size:12px;color:rgba(243,243,243,.75)}

.ja-video{
  display:grid;grid-template-columns:1.6fr 1fr;gap:32px;align-items:stretch;
  margin-bottom:48px;
}
.ja-video__player{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:var(--ink-2)}
.ja-video__poster{
  position:absolute;inset:0;background-size:cover;background-position:center;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
}
.ja-video__poster::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.55));
}
.ja-video__play{
  position:relative;z-index:2;
  width:88px;height:88px;border-radius:999px;
  background:var(--coral);color:var(--ink-2);
  display:grid;place-items:center;
  transition:transform .25s;
}
.ja-video__play:hover{transform:scale(1.1)}
.ja-video__play::before{
  content:"";position:absolute;inset:-8px;border-radius:999px;
  border:2px solid var(--coral);opacity:.4;
  animation:videoPulse 2s ease-in-out infinite;
}
@keyframes videoPulse{0%,100%{transform:scale(1);opacity:.4}50%{transform:scale(1.15);opacity:0}}
.ja-video__label{
  position:absolute;left:24px;bottom:24px;z-index:2;
  font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.04em;color:var(--paper);
}
.ja-video__meta{
  background:#fff;border:1px solid #E8E8E8;border-radius:20px;padding:32px;
  display:flex;flex-direction:column;gap:14px;justify-content:center;
}
.ja-video__year{font-size:11px;letter-spacing:.16em;color:var(--coral)}
.ja-video__meta h3{font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--ink-2);line-height:1.1;margin:0}
.ja-video__meta p{color:var(--muted-2);font-size:15px;line-height:1.5;margin:0}
.ja-video__meta strong{color:var(--ink-2)}
.ja-video__years{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}
.ja-video__years span{
  padding:8px 14px;border-radius:999px;background:#F3F3F3;
  font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.04em;color:var(--ink-2);
}
.ja-video__years-now{background:var(--coral) !important;color:var(--ink-2) !important;font-weight:700}

/* Form v2 */
.ja-form--v2{padding:120px 36px;background:var(--ink);position:relative;overflow:hidden}
.ja-form__v2-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start;position:relative;z-index:2}
.ja-form__v2-tom{
  position:sticky;top:32px;
  display:flex;flex-direction:column;gap:18px;
  padding:24px;border-radius:24px;
  background:rgba(243,243,243,.03);border:1px solid var(--line);
}
.ja-form__v2-tom-photo{
  aspect-ratio:1/1;border-radius:18px;
  background-size:cover;background-position:center 25%;
  position:relative;overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.5);
}
.ja-form__v2-tom-photo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.7));
}
.ja-form__v2-tom-name{
  position:absolute;left:18px;bottom:14px;z-index:2;
  font-family:"Hubot Sans",sans-serif;text-transform:lowercase;
  font-size:32px;font-weight:500;letter-spacing:-.02em;line-height:.95;
  color:var(--paper);font-stretch:75%;
}
.ja-form__v2-tom-meta{display:flex;flex-direction:column;gap:10px;padding:0 4px 4px}
.ja-form__v2-tom-meta .mono{font-size:11px;letter-spacing:.14em;color:var(--coral);text-transform:uppercase}
.ja-form__v2-tom-meta p{color:#bdbdbd;font-size:13px;line-height:1.5;margin:0}
.ja-form__v2-link{
  font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--coral);
  border-bottom:1px solid rgba(255,116,125,.4);padding-bottom:2px;
  align-self:flex-start;margin-top:4px;
}

.ja-form__v2-main .ja-form__title{text-align:left}
.ja-form__v2-main .ja-form__form{
  margin:24px 0 0;max-width:none;padding:32px;
}
.ja-field select{
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23F3F3F3' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 18px center;padding-right:44px;
}

/* Crumb */
.crumb{
  display:inline-flex;align-items:center;gap:10px;
  font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.04em;color:var(--muted);
  margin-bottom:8px;
}
.crumb a{color:var(--muted);transition:color .2s}
.crumb a:hover{color:var(--paper)}
.crumb span{color:var(--muted)}

@media (max-width:1100px){
  .ja-personas__grid--4{grid-template-columns:repeat(2,1fr)}
  .ja-baliky__grid{grid-template-columns:1fr;gap:24px}
  .ja-balik--featured{transform:none}
  .ja-balik--featured:hover{transform:translateY(-6px)}
  .ja-baliky__foot{display:block}
  .svc-cols{grid-template-columns:1fr}
  .svc-col{border-right:0;border-bottom:1px solid rgba(26,26,26,.14)}
  .svc-col:last-child{border-bottom:0}
  .svc-edge__row{grid-template-columns:1fr;gap:24px}
  .svc-edge--bottom .svc-edge__row{grid-template-columns:1fr}
  .svc-edge--bottom .svc-edge__title-block{order:1;justify-self:start}
  .svc-edge--bottom .svc-edge__text{order:2;text-align:left}
  .svc-edge--bottom .svc-edge__meta{justify-content:flex-start;text-align:left}
  .svc-edge--bottom .svc-edge__hand{padding-left:22px;padding-right:0}
  .svc-edge--bottom .svc-edge__hand::before{left:0;right:auto}
  .services__head{grid-template-columns:1fr;gap:24px}
  .ja-tomas__v2-grid{grid-template-columns:1fr;gap:48px}
  .ja-form__v2-grid{grid-template-columns:1fr}
  .ja-form__v2-tom{position:static}
  .ja-video{grid-template-columns:1fr}
  .ja-reels{grid-template-columns:repeat(3,1fr)}
  .ja-testimonials__grid--3{grid-template-columns:1fr;gap:18px}
  .ja-testimonials__grid--3 .ja-quote{padding:36px 32px 32px}
  .ja-proof__inner{grid-template-columns:1fr}
  .ja-hero__head{grid-template-columns:1fr}
  .ja-hero__tom{align-self:flex-start}
}

@media (max-width:720px){
  .ja-testimonials__grid--4{grid-template-columns:1fr}
  .ja-testimonials__grid--3{grid-template-columns:1fr}
  .ja-reels{grid-template-columns:1fr;gap:14px}
  .ja-when__grid{grid-template-columns:1fr}
  .ja-balik__name{font-size:36px}
  .ja-tomas__v2-stats{grid-template-columns:1fr}
}

/* ==== Tablet/mobile (basic) ==== */
@media (max-width:980px){
  .hero__bottom{grid-template-columns:1fr;gap:24px}
  .hero__meta{align-items:flex-start}
  .intro__grid{grid-template-columns:1fr;gap:36px}
  .stats{grid-template-columns:1fr}
  .stats__cell{border-right:0}
  .bento{grid-template-columns:repeat(6,1fr)}
  .bento .b-1,.bento .b-2,.bento .b-3,.bento .b-4,.bento .b-5{grid-column:span 6}
  .proj-grid--bento{grid-template-columns:repeat(6,1fr)}
  .proj-grid--bento .b-1,.proj-grid--bento .b-2,.proj-grid--bento .b-3,.proj-grid--bento .b-4,.proj-grid--bento .b-5{grid-column:span 6;grid-row:span 4}
  .services__head{grid-template-columns:1fr}
  .svc{grid-template-columns:60px 1fr 40px}
  .svc__desc{display:none}
  .justask__inner{grid-template-columns:1fr}
  .cross-list{grid-template-columns:1fr}
  .contact__grid{grid-template-columns:1fr}
  .nav__links{display:none}
  .footer__cols{grid-template-columns:1fr 1fr}
}

/* ==== Services flat (svcf) ==== */
.svcf{
  position:relative;
  padding:120px 36px 140px;
  background:var(--paper);
  color:var(--ink);
  border-top:1px solid var(--line);
}
.svcf__intro{margin-bottom:64px;max-width:880px}
.svcf__hero{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(48px,6vw,96px);font-weight:500;letter-spacing:-.025em;line-height:.95;
  margin:0;color:var(--ink);
}
.svcf__hero em{font-style:italic;font-weight:300;color:var(--coral)}
.svcf__list{display:flex;flex-direction:column;gap:0}
.svcf__item{
  display:grid;grid-template-columns:340px 1fr;gap:56px;
  padding:64px 0;
  border-top:1px solid var(--line);
}
.svcf__item:last-child{border-bottom:1px solid var(--line)}
.svcf__head{position:sticky;top:32px;align-self:start;display:flex;flex-direction:column;gap:8px}
.svcf__num{font-size:13px;letter-spacing:.16em;color:var(--coral)}
.svcf__title{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(36px,3.6vw,58px);font-weight:500;letter-spacing:-.02em;line-height:.95;
  margin:0;color:var(--ink);word-break:break-word;
}
.svcf__chip{
  display:inline-flex;width:fit-content;padding:6px 10px;border-radius:999px;
  font-size:10px;letter-spacing:.14em;
  background:rgba(38,15,15,.06);color:var(--muted);
  margin-bottom:8px;
}
.svcf__chip--edu{background:rgba(247,63,0,.1);color:var(--coral)}
.svcf__col{display:flex;flex-direction:column;gap:32px;max-width:760px}
.svcf__lead{
  font-size:22px;line-height:1.4;color:var(--ink);margin:0;
  letter-spacing:-.005em;text-wrap:pretty;
}
.svcf__body{font-size:16px;line-height:1.55;color:var(--muted);margin:0;text-wrap:pretty}
.svcf__parts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}
.svcf__part{
  display:grid;grid-template-columns:240px 1fr;gap:24px;
  padding:18px 0;border-top:1px solid var(--line);align-items:baseline;
}
.svcf__part:last-child{border-bottom:1px solid var(--line)}
.svcf__part-k{font-weight:500;color:var(--ink);font-size:16px;letter-spacing:-.005em}
.svcf__part-v{color:var(--muted);font-size:15px;line-height:1.5;text-wrap:pretty}

/* intro (workshop) — visually distinct, but title aligned to grid */
.svcf__item--intro{
  position:relative;border-top:0;
  padding:64px 0;margin:24px 0 32px;
}
.svcf__item--intro::before{
  content:"";position:absolute;
  inset:-12px -28px;
  background:linear-gradient(180deg, rgba(247,63,0,.05), transparent 80%);
  border:1px dashed rgba(247,63,0,.28);
  border-radius:20px;
  pointer-events:none;z-index:0;
}
.svcf__item--intro > *{position:relative;z-index:1}
.svcf__intro-grid{
  display:grid;grid-template-columns:1fr 1.05fr;gap:32px;align-items:start;
}
.svcf__intro-photo{
  margin:0;position:relative;border-radius:14px;overflow:hidden;
  aspect-ratio:4/3;background:#1a1a1a;
}
.svcf__intro-photo img{width:100%;height:100%;object-fit:cover;display:block}
.svcf__intro-photo figcaption{
  position:absolute;left:14px;bottom:12px;font-size:11px;letter-spacing:.08em;
  color:var(--paper);background:rgba(0,0,0,.5);backdrop-filter:blur(6px);
  padding:6px 10px;border-radius:999px;
}
.svcf__intro-text{display:flex;flex-direction:column;gap:18px}
.svcf__intro-pill{
  display:inline-flex;width:fit-content;align-self:flex-start;
  padding:8px 14px;border-radius:999px;
  background:var(--ink);color:var(--paper);font-size:11px;letter-spacing:.14em;
}

/* cases */
.svcf__cases{display:flex;flex-direction:column;gap:14px;margin-top:8px}
.svcf__cases-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.svcf__cases-label{color:var(--muted);font-size:11px;letter-spacing:.16em}
.svcf__cases-all{
  font-size:12px;letter-spacing:.06em;color:var(--ink);text-decoration:none;
  border-bottom:1px solid currentColor;padding-bottom:2px;
  transition:color .25s ease;
}
.svcf__cases-all:hover{color:var(--coral)}
.svcf__cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.svcf__case{
  position:relative;display:flex;flex-direction:column;justify-content:flex-end;
  aspect-ratio:4/3;padding:18px;border-radius:14px;overflow:hidden;
  background:#222 center/cover no-repeat;color:var(--paper);text-decoration:none;
  border:1px solid var(--line);
  transition:transform .35s ease, border-color .35s ease;
}
.svcf__case:hover{transform:translateY(-4px);border-color:var(--coral)}
.svcf__case--placeholder{
  background:repeating-linear-gradient(135deg, #ededed 0 12px, #f6f4ef 12px 24px);
  color:var(--ink);
}
.svcf__case--placeholder .svcf__case-tag{color:var(--muted)}
.svcf__case--placeholder .svcf__case-title{color:var(--ink)}
.svcf__case-shade{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,.75) 100%);
}
.svcf__case-tag{position:relative;font-size:11px;letter-spacing:.1em;color:rgba(255,255,255,.85);margin-bottom:6px}
.svcf__case-title{
  position:relative;font-family:"Hubot Sans",sans-serif;
  font-size:24px;font-weight:500;letter-spacing:-.015em;line-height:1;
}
.svcf__case-arrow{
  position:absolute;top:14px;right:14px;
  width:34px;height:34px;border-radius:999px;
  background:var(--paper);color:var(--ink);
  display:flex;align-items:center;justify-content:center;font-size:14px;
  transition:transform .35s ease, background .35s ease, color .35s ease;
}
.svcf__case:hover .svcf__case-arrow{background:var(--coral);color:var(--ink-2);transform:translate(2px,-2px)}

/* edu — distinct dark-on-paper card frame, title aligned to grid */
.svcf__item--edu{
  position:relative;border-top:0;color:var(--paper);
  padding:64px 0;margin:32px 0 0;
}
.svcf__item--edu::before{
  content:"";position:absolute;inset:-12px -28px;
  background:#2a2724;
  border-radius:24px;pointer-events:none;z-index:0;
}
.svcf__item--edu > *{position:relative;z-index:1}
.svcf__item--edu .svcf__title{color:var(--paper)}
.svcf__item--edu .svcf__lead{color:var(--paper)}
.svcf__item--edu .svcf__chip{background:rgba(255,255,255,.08);color:rgba(255,255,255,.7)}
.svcf__item--edu .svcf__chip--edu{background:rgba(247,63,0,.18);color:var(--coral)}

/* edu — self-contained design */
.edu{display:flex;flex-direction:column;gap:14px;margin-top:8px}

/* Knowhub hero */
.edu__hero{
  position:relative;display:block;text-decoration:none;color:var(--paper);
  background:linear-gradient(135deg, #2a1410 0%, #1a0a08 100%);
  border:1px solid rgba(247,63,0,.25);
  border-radius:18px;padding:32px;overflow:hidden;
  transition:border-color .35s ease, transform .35s ease;
}
.edu__hero::after{
  content:"";position:absolute;right:-80px;top:-80px;width:300px;height:300px;
  background:radial-gradient(circle, rgba(247,63,0,.18), transparent 70%);
  pointer-events:none;
}
.edu__hero:hover{border-color:var(--coral);transform:translateY(-2px)}
.edu__hero-grid{
  position:relative;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;
}
.edu__hero-left{display:flex;flex-direction:column;gap:14px}
.edu__pill{
  display:inline-flex;width:fit-content;padding:6px 12px;border-radius:999px;
  background:rgba(247,63,0,.15);color:var(--coral);
  font-size:11px;letter-spacing:.14em;
}
.edu__hero-title{
  font-family:"Hubot Sans",sans-serif;font-weight:500;
  font-size:clamp(48px,5vw,72px);letter-spacing:-.025em;line-height:.95;
  margin:0;color:var(--paper);
}
.edu__hero-lede{
  font-size:17px;line-height:1.5;color:rgba(255,255,255,.75);margin:0;
  max-width:42ch;text-wrap:pretty;
}
.edu__chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.edu__chip{
  font-size:11px;letter-spacing:.06em;padding:5px 10px;border-radius:999px;
  background:rgba(255,255,255,.07);color:rgba(255,255,255,.8);
  font-family:"JetBrains Mono","Hubot Sans",monospace;
}
.edu__chip--accent{background:var(--coral);color:var(--ink-2)}

.edu__hero-right{display:flex;align-items:stretch}
.edu__events{
  width:100%;padding:18px;border-radius:14px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  display:flex;flex-direction:column;gap:10px;
}
.edu__events-head{
  display:flex;align-items:center;gap:8px;
  font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.55);
  padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08);
}
.edu__events-dot{
  width:7px;height:7px;border-radius:999px;background:var(--coral);
  box-shadow:0 0 0 4px rgba(247,63,0,.18);
  animation:eduPulse 2s infinite;
}
@keyframes eduPulse{
  0%,100%{box-shadow:0 0 0 4px rgba(247,63,0,.18)}
  50%{box-shadow:0 0 0 8px rgba(247,63,0,.05)}
}
.edu__ev{
  display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;
  padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06);
}
.edu__ev:last-child{border-bottom:0}
.edu__ev-tier{
  font-size:10px;letter-spacing:.1em;text-align:center;
  padding:4px 0;border-radius:6px;
  background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);
}
.edu__ev--pp .edu__ev-tier{background:var(--coral);color:var(--ink-2)}
.edu__ev-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.edu__ev-kicker{font-size:10px;letter-spacing:.1em;color:rgba(255,255,255,.5)}
.edu__ev-name{
  font-size:14px;color:var(--paper);font-weight:500;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.edu__ev-date{font-size:12px;color:rgba(255,255,255,.6);letter-spacing:.04em}

.edu__hero-foot{
  position:relative;display:flex;justify-content:flex-end;align-items:center;
  margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);
}
.edu__hero-cta{
  font-size:14px;letter-spacing:.02em;color:var(--coral);font-weight:500;
}

/* Vedlejší karty */
.edu__sides{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.edu__side{
  display:flex;flex-direction:column;gap:12px;
  padding:28px;border-radius:14px;text-decoration:none;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  color:var(--paper);min-height:220px;
  transition:background .3s ease, border-color .3s ease, transform .3s ease;
}
.edu__side:hover{
  background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18);
  transform:translateY(-2px);
}
.edu__side-num{font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.5)}
.edu__side-title{
  font-family:"Hubot Sans",sans-serif;font-weight:500;
  font-size:28px;letter-spacing:-.015em;line-height:1.05;margin:0;color:var(--paper);
}
.edu__side-desc{
  font-size:14px;line-height:1.5;color:rgba(255,255,255,.65);margin:0;text-wrap:pretty;
}
.edu__side-meta{
  margin-top:auto;display:flex;justify-content:space-between;align-items:center;
  padding-top:14px;border-top:1px solid rgba(255,255,255,.08);gap:12px;
}
.edu__side-tag{
  font-size:11px;letter-spacing:.06em;padding:4px 10px;border-radius:999px;
  background:rgba(255,255,255,.06);color:rgba(255,255,255,.7);
  font-family:"JetBrains Mono","Hubot Sans",monospace;
}
.edu__side-cta{font-size:13px;color:var(--coral);letter-spacing:.02em}
.edu__side--alt{background:rgba(247,63,0,.05);border-color:rgba(247,63,0,.18)}
.edu__side--alt:hover{border-color:rgba(247,63,0,.4)}

/* pro koho */
.svcf__forwhom{
  position:relative;
  margin-top:96px;
  display:grid;grid-template-columns:1.15fr .85fr;gap:0;align-items:stretch;
  background:var(--paper);
  border-radius:24px;overflow:hidden;
  border:1px solid rgba(247,63,0,.18);
  box-shadow:0 30px 80px -40px rgba(247,63,0,.25);
}
.svcf__forwhom-text{
  padding:56px;
  display:flex;flex-direction:column;gap:24px;justify-content:center;
  background:linear-gradient(180deg, rgba(247,63,0,.07), rgba(247,63,0,.02));
}
.svcf__forwhom-kicker{
  color:var(--coral);font-size:12px;letter-spacing:.14em;
  display:inline-flex;align-items:center;gap:10px;
}
.svcf__forwhom-kicker::before{
  content:"";width:36px;height:1px;background:var(--coral);display:inline-block;
}
.svcf__forwhom-pitch{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(28px,2.4vw,38px);font-weight:500;letter-spacing:-.02em;line-height:1.05;
  margin:0;color:var(--ink);text-wrap:pretty;
}
.svcf__forwhom-pitch em{font-style:italic;font-weight:300;color:var(--coral)}
.svcf__forwhom-body{
  font-size:16px;line-height:1.6;color:var(--muted);margin:0;
  max-width:54ch;text-wrap:pretty;
}
.svcf__forwhom-marks{
  display:flex;gap:8px;flex-wrap:wrap;margin-top:6px;
}
.svcf__forwhom-mark{
  font-size:11px;letter-spacing:.1em;
  padding:6px 12px;border-radius:999px;
  background:rgba(38,15,15,.05);color:var(--ink);
  font-family:"JetBrains Mono","Hubot Sans",monospace;
}
.svcf__forwhom-photo{
  position:relative;background:#1a1a1a;min-height:380px;
  background-size:cover;background-position:center;
}
.svcf__forwhom-photo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 50%, rgba(0,0,0,.7));
}
.svcf__forwhom-photocap{
  position:absolute;left:24px;bottom:24px;color:var(--paper);
  font-size:13px;letter-spacing:.04em;z-index:2;
  display:flex;flex-direction:column;gap:4px;
}
.svcf__forwhom-photocap .mono{font-size:10px;color:rgba(255,255,255,.6);letter-spacing:.16em}
.svcf__forwhom-stone{
  position:absolute;width:120px;height:120px;
  right:-30px;top:-30px;opacity:.5;z-index:3;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.3));
  pointer-events:none;
}

@media (max-width:900px){
  .svcf{padding:80px 20px}
  .svcf__item{grid-template-columns:1fr;gap:24px;padding:48px 0}
  .svcf__head{position:static}
  .svcf__part{grid-template-columns:1fr;gap:6px}
  .svcf__cases-grid{grid-template-columns:1fr}
  .svcf__edu-row{grid-template-columns:1fr}
  .edu__hero-grid{grid-template-columns:1fr}
  .edu__sides{grid-template-columns:1fr}
  .svcf__intro-grid{grid-template-columns:1fr}
  .svcf__item--intro::before,
  .svcf__item--edu::before{inset:0 -16px}
  .svcf__forwhom{grid-template-columns:1fr}
  .svcf__forwhom-text{padding:32px}
  .svcf__forwhom-photo{min-height:240px}
}

/* ==== Services-page Crossroads (svcx) ==== */
.cross-list-v2 > .cross.cross--projects{
  background:#1a0a08;color:var(--paper);overflow:hidden;
  padding:0;position:relative;
  height:604px;min-height:604px;
}
.cross--projects::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(60% 50% at 80% 20%, rgba(247,63,0,.18), transparent 70%),
    radial-gradient(50% 40% at 10% 90%, rgba(247,63,0,.08), transparent 70%);
}
.svcx2{
  position:relative;width:100%;height:100%;
  display:grid;grid-template-rows:auto 1fr auto;
  padding:32px;gap:20px;
}
.svcx2__kicker{align-self:flex-start}

/* hero block: photo + 500+ */
.svcx2__hero{
  display:grid;grid-template-columns:1fr 1fr;gap:20px;
  align-items:stretch;min-height:0;
  flex:1;
}
.svcx2__photo{
  margin:0;border-radius:14px;overflow:hidden;
  background:#222 center/cover no-repeat;
  border:1px solid rgba(255,255,255,.08);
  position:relative;
  display:flex;flex-direction:column;justify-content:flex-end;
  transition:transform .4s ease;
}
.svcx2__photo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 50%, rgba(0,0,0,.78));
  pointer-events:none;
}
.svcx2__photo-tag{
  position:relative;z-index:2;padding:14px;color:var(--paper);
  display:flex;flex-direction:column;gap:3px;
}
.svcx2__photo-name{font-family:"Hubot Sans",sans-serif;font-size:18px;font-weight:500;letter-spacing:-.015em;line-height:1}
.svcx2__photo-meta{font-size:9px;letter-spacing:.12em;color:rgba(255,255,255,.75);text-transform:uppercase}
.cross--projects:hover .svcx2__photo{transform:translateY(-3px)}

/* counter */
.svcx2__counter{
  display:flex;flex-direction:column;justify-content:center;gap:10px;
  padding:8px 4px;
}
.svcx2__counter-num{
  font-family:"Hubot Sans",sans-serif;font-weight:500;
  font-size:clamp(72px,8vw,124px);letter-spacing:-.05em;line-height:.85;
  color:var(--coral);
  display:inline-flex;align-items:baseline;
}
.svcx2__counter-plus{font-size:.55em;margin-left:4px;color:var(--paper);opacity:.7}
.svcx2__counter-label{
  font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.6);
  font-family:"JetBrains Mono",monospace;text-transform:uppercase;line-height:1.4;
}

/* bottom block */
.svcx2__bottom{
  position:relative;z-index:5;
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
  flex-wrap:wrap;
}
.svcx2__title{
  font-family:"Hubot Sans",sans-serif;font-weight:500;
  font-size:clamp(40px,4.4vw,68px);letter-spacing:-.025em;line-height:.95;
  margin:0;color:var(--paper);
  white-space:nowrap;
}
.svcx2__title em{font-style:italic;font-weight:300;color:var(--coral)}
.svcx2__cta{
  display:inline-flex;align-items:center;gap:10px;
  padding:12px 20px;border-radius:999px;
  background:var(--coral);color:var(--ink-2);
  font-size:13px;font-weight:500;letter-spacing:.02em;
  transition:transform .35s ease, box-shadow .35s ease;
}
.svcx2__cta-arrow{transition:transform .35s ease}
.cross--projects:hover .svcx2__cta{transform:translateY(-2px);box-shadow:0 14px 30px rgba(247,63,0,.35)}
.cross--projects:hover .svcx2__cta-arrow{transform:translateX(4px)}

.cross--meeting .cross-stone--a{top:30%;left:10%;width:50%}
.cross--meeting .cross-stone--b{top:55%;left:35%;width:38%}
.cross--meeting .cross-stone--r{top:15%;left:55%;width:30%}

/* light variant for the meeting card */
.cross-list-v2 > .cross.cross--light{
  background:#fafaf7;
  border-color:var(--line);
}
.cross-list-v2 > .cross.cross--light::after{display:none}
.cross-list-v2 .cross--light .cross__num{color:#1a1a1a;opacity:.55}
.cross-list-v2 .cross--light .cross__title{color:#0e0e0e}
.cross-list-v2 .cross--light .cross__desc{color:#3a3a3a}
.cross-list-v2 .cross--light .cross-side__meta{color:#6a6a6a}
.cross-list-v2 .cross--light .cross-side__body{
  background:transparent;
}
.cross-list-v2 .cross--light .cross-side__foot{
  background:transparent;
  border-top:1px solid var(--line);
}
.cross-list-v2 .cross--light .cross-side__cta{
  background:#0e0e0e;color:#fafaf7;
}
.cross--light:hover .cross-side__cta{box-shadow:0 14px 30px rgba(0,0,0,.18)!important}

@media (max-width:900px){
  .svcx2__stack{min-height:240px}
  .svcx2__card-name{font-size:18px}
}
.filosofie{
  position:relative;overflow:hidden;
  padding:140px 36px;
  background:var(--paper);
  color:var(--ink);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.filosofie::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(60% 50% at 90% 10%, rgba(247,63,0,.06), transparent 60%),
    radial-gradient(50% 60% at 0% 100%, rgba(38,15,15,.04), transparent 70%);
  z-index:0;
}
.filosofie .shell{ position:relative; z-index:1 }
.filosofie__head{
  display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;
  margin-bottom:96px;
}
.filosofie__head-text{display:flex;flex-direction:column;align-items:flex-start}
.filosofie__art{
  margin:0;position:relative;align-self:stretch;
  border-radius:18px;overflow:hidden;
  border:1px solid var(--line);
  background:#1a1a1a;
  aspect-ratio:4/3;
}
.filosofie__art img{width:100%;height:100%;object-fit:cover;display:block}
.filosofie__art figcaption{
  position:absolute;left:16px;bottom:14px;
  font-size:11px;letter-spacing:.08em;color:var(--paper);
  background:rgba(0,0,0,.5);backdrop-filter:blur(6px);
  padding:6px 10px;border-radius:999px;
}
.filosofie__stone{
  position:absolute;pointer-events:none;z-index:0;
  right:-180px;top:-120px;width:480px;
  opacity:.18;
  transform:rotate(-12deg);
  filter:saturate(.7);
}
.filosofie__stone--accent{
  right:auto;left:-160px;top:auto;bottom:-180px;
  width:380px;opacity:.22;
  transform:rotate(20deg);
  filter:none;
}
.filosofie__title{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(56px,7vw,120px);font-weight:500;letter-spacing:-.03em;line-height:.92;
  margin:0;
}
.filosofie__title em{font-style:italic;font-weight:300;color:var(--coral)}
.filosofie__lede{
  font-size:18px;line-height:1.55;color:var(--muted);
  max-width:46ch;margin:24px 0 0;text-wrap:pretty;text-align:left;
}
.filosofie__list{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:0;
  border-top:1px solid var(--line);
}
.filosofie__item{
  display:grid;grid-template-columns:72px 1fr;gap:28px;align-items:start;
  padding:36px 32px 36px 0;
  border-bottom:1px solid var(--line);
  position:relative;
  transition:background .3s ease;
}
.filosofie__item:nth-child(odd){border-right:1px solid var(--line);padding-right:48px}
.filosofie__item:nth-child(even){padding-left:48px}
.filosofie__item:hover{background:rgba(247,63,0,.025)}
.filosofie__item:hover .filosofie__num{color:var(--coral)}
.filosofie__num{
  font-size:13px;letter-spacing:.16em;
  color:var(--muted);
  padding-top:6px;
  transition:color .3s ease;
}
.filosofie__principle{
  font-family:"Hubot Sans",sans-serif;
  font-size:clamp(20px,1.6vw,26px);font-weight:500;letter-spacing:-.012em;
  line-height:1.2;margin:0 0 12px;color:var(--ink);
  text-wrap:balance;
}
.filosofie__copy{
  font-size:15px;line-height:1.55;color:var(--muted);margin:0;max-width:46ch;
  text-wrap:pretty;
}
.filosofie__item:last-child:nth-child(odd){
  grid-column:1 / -1;
  border-right:none;
  padding-right:32px;
  background:linear-gradient(90deg, rgba(247,63,0,.04), transparent 60%);
}
.filosofie__item:last-child:nth-child(odd) .filosofie__copy{max-width:60ch}
.filosofie__item:last-child:nth-child(odd):hover{background:linear-gradient(90deg, rgba(247,63,0,.08), transparent 60%)}

/* ==== Dark variant svcf (used by /o-nas hodnoty) ==== */
.svcf--dark{background:#0E0E0E;color:var(--paper);padding:120px 36px}
.svcf--dark .svcf__intro .eyebrow{color:var(--coral)}
.svcf--dark .svcf__hero{color:var(--paper)}
.svcf--dark .svcf__hero em{color:var(--coral);font-style:italic;font-weight:300}
.svcf--dark .svcf__item--home{border-top:1px solid rgba(255,255,255,.1)}
.svcf--dark .svcf__item--home:first-child{border-top:0}
.svcf--dark .svcf__num{color:var(--coral)}
.svcf--dark .svcf__title{color:var(--paper)}
.svcf--dark .svcf__lead{color:var(--paper)}
.svcf--dark .svcf__part{border-top:1px solid rgba(255,255,255,.08)}
.svcf--dark .svcf__part:last-child{border-bottom:1px solid rgba(255,255,255,.08)}
.svcf--dark .svcf__part-k{color:var(--paper)}
.svcf--dark .svcf__part-v{color:#9a9a9a}
.onas-values-svcf__head{align-items:center;gap:20px;flex-wrap:wrap}
.onas-values-svcf__title{
  display:flex;align-items:center;gap:24px;margin:0;
  font-family:"Hubot Sans",sans-serif;
}
.onas-values-svcf__bigsym{
  width:96px;height:96px;object-fit:contain;flex:none;
  filter:drop-shadow(0 14px 28px rgba(0,0,0,.55));
}
.onas-values-svcf__word{
  font-family:"Hubot Sans",sans-serif;letter-spacing:.005em;
  font-size:clamp(56px,7vw,96px);font-weight:500;line-height:.9;
  text-transform:uppercase;
}
.onas-values-svcf__cz{
  color:#9a9a9a;font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  padding-bottom:8px;margin-left:auto;
}
.onas-values-svcf__body{
  color:#bdbdbd;font-size:16px;line-height:1.6;margin:0;text-wrap:pretty;max-width:60ch;
}
.svcf--dark .svcf__lead{color:var(--paper);font-size:20px;line-height:1.45}
.onas-values-svcf__photo{justify-content:flex-end;min-height:380px}
@media (max-width:900px){
  .onas-values-svcf__bigsym{width:72px;height:72px}
  .onas-values-svcf__cz{margin-left:0;padding-bottom:0}
}

/* ==== Services (homepage variant) — kompaktní řádek se 1 case kartou ==== */
.svcf--home .svcf__item--home{padding:48px 0}
.svcf-home__row{
  display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:start;
}
.svcf-home__left{display:flex;flex-direction:column;gap:24px;min-width:0}
.svcf-home__left .svcf__parts{margin-top:4px}
.svcf-home__left .svcf__part{grid-template-columns:200px 1fr;gap:18px;padding:14px 0}

.svcf-home__case{
  position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;
  padding:24px;min-height:340px;border-radius:16px;overflow:hidden;
  background:#1a1a1a center/cover no-repeat;color:var(--paper);
  text-decoration:none;isolation:isolate;
  transition:transform .35s ease, box-shadow .35s ease;
}
.svcf-home__case:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,.18)}
.svcf-home__case--placeholder{background:#1a1a1a;border:1px dashed rgba(255,255,255,.18)}
.svcf-home__case-shade{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,.72) 100%);
}
.svcf-home__case > *:not(.svcf-home__case-shade){position:relative;z-index:2}
.svcf-home__case-kicker{
  position:absolute;top:18px;left:24px;z-index:2;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.78);
}
.svcf-home__case-tag{
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.78);
}
.svcf-home__case-title{
  font-family:"Hubot Sans",sans-serif;font-size:clamp(28px,3.4vw,42px);
  font-weight:500;letter-spacing:-.018em;line-height:.98;color:var(--paper);
}
.svcf-home__case-arrow{
  position:absolute;top:18px;right:24px;z-index:2;
  font-size:20px;color:var(--paper);
  transition:transform .3s ease;
}
.svcf-home__case:hover .svcf-home__case-arrow{transform:translate(3px,-3px)}

@media (max-width:900px){
  .svcf-home__row{grid-template-columns:1fr;gap:28px}
  .svcf-home__left .svcf__part{grid-template-columns:1fr;gap:6px}
  .svcf-home__case{min-height:260px}
}

@media (max-width:900px){
  .filosofie{padding:96px 24px}
  .filosofie__head{grid-template-columns:1fr;gap:32px;margin-bottom:56px}
  .filosofie__art{aspect-ratio:16/10}
  .filosofie__list{grid-template-columns:1fr}
  .filosofie__item,
  .filosofie__item:nth-child(odd),
  .filosofie__item:nth-child(even){
    padding:28px 0;border-right:none;padding-left:0;padding-right:0;
  }
  .filosofie__item:last-child:nth-child(odd){
    grid-column:auto;background:none;
  }
  .filosofie__stone{display:none}
}

