/* OfficeMotor. Tmavý podklad, tyrkysová a fialová, písmo Geist. Scéna v úvodu má vlastní scena.css. */
@font-face { font-family: 'Geist'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/fonts/geist-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Geist'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/fonts/geist-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
  --pozadi: #07070d;
  --pozadi-2: #0c0b16;
  --panel: #100f1d;
  --panel-2: #17152b;
  --linka: rgb(255 255 255 / .08);
  --linka-2: rgb(255 255 255 / .14);
  --text: #f2f1f9;
  --text-2: #aba8c4;
  --text-3: #8a87a5;
  --tyrkys: #2fe3d0;
  --tyrkys-2: #17b9aa;
  --fialova: #a77bff;
  --fialova-2: #7c4dff;
  --chyba: #ff8a98;
  --prechod: linear-gradient(95deg, #2fe3d0 0%, #6cb6ff 40%, #a77bff 72%, #d37cff 100%);
  --obal: 1200px;
  --okraj: 20px;
  --pismo: 'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --mono: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  --ease: cubic-bezier(.16, 1, .3, 1);
  color-scheme: dark;
}
@media (min-width: 900px) { :root { --okraj: 40px; } }

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 96px; background: var(--pozadi); scrollbar-color: #2a2840 transparent; }
body { margin: 0; background: var(--pozadi); color: var(--text); font: 400 17px/1.55 var(--pismo); letter-spacing: -.011em; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: clip; }
body::before { content: ''; position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: .05; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
::selection { background: var(--tyrkys); color: var(--pozadi); }
a { color: inherit; text-underline-offset: 3px; text-decoration-thickness: 1px; }
:focus-visible { outline: 2px solid var(--tyrkys); outline-offset: 3px; border-radius: 8px; }
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.preskocit { position: absolute; left: 12px; top: -60px; z-index: 100; background: var(--text); color: var(--pozadi); padding: 10px 14px; border-radius: 8px; }
.preskocit:focus { top: 12px; }
.obal { max-width: var(--obal); margin: 0 auto; padding: 0 var(--okraj); }

h1, h2, h3 { margin: 0; font-weight: 600; text-wrap: balance; }
h2 { font-size: clamp(36px, 5.2vw, 68px); line-height: 1.02; letter-spacing: -.045em; }
h3 { font-size: 20px; line-height: 1.3; letter-spacing: -.02em; }
p { margin: 0; text-wrap: pretty; }
.prechod { background: var(--prechod); background-size: 200% 100%; -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-box-decoration-break: clone; box-decoration-break: clone; }

/* Tlačítka a odkazy */
.tlacitko { position: relative; display: inline-flex; align-items: center; justify-content: center; height: 52px; padding: 0 26px; border-radius: 999px; border: 0; background: var(--prechod); background-size: 140% 100%; background-position: 0 0; color: #07070d; font: 600 16px/1 var(--pismo); letter-spacing: -.012em; text-decoration: none; cursor: pointer; box-shadow: 0 12px 36px -12px rgb(47 227 208 / .55), 0 10px 40px -16px rgb(167 123 255 / .6), inset 0 1px 0 rgb(255 255 255 / .45); transition: transform .25s var(--ease), background-position .5s var(--ease), box-shadow .25s ease; }
.tlacitko:hover { transform: translateY(-1px); background-position: 100% 0; box-shadow: 0 16px 44px -12px rgb(47 227 208 / .7), 0 14px 48px -16px rgb(167 123 255 / .75), inset 0 1px 0 rgb(255 255 255 / .45); }
.tlacitko:active { transform: translateY(1px) scale(.985); }
.tlacitko:disabled { opacity: .5; cursor: default; transform: none; }
.odkaz-sipka { display: inline-flex; align-items: center; gap: 6px; height: 52px; padding: 0 8px; font-weight: 500; font-size: 16px; text-decoration: none; color: var(--text); }
.odkaz-sipka svg { transition: transform .25s var(--ease); }
.odkaz-sipka:hover svg { transform: translateX(3px); }

/* Lišta: plovoucí kapsle */
.lista { position: fixed; top: 14px; left: 0; right: 0; z-index: 50; padding: 0 16px; pointer-events: none; }
.lista-obsah { pointer-events: auto; position: relative; max-width: 820px; margin: 0 auto; height: 56px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 7px 0 18px; background: rgb(14 13 26 / .62); -webkit-backdrop-filter: saturate(1.8) blur(20px); backdrop-filter: saturate(1.8) blur(20px); border: 1px solid var(--linka-2); border-radius: 999px; box-shadow: inset 0 1px 0 rgb(255 255 255 / .07), 0 18px 50px -18px rgb(0 0 0 / .8); transition: background-color .3s ease; }
.lista.je-dole .lista-obsah { background: rgb(14 13 26 / .86); }
.znacka { display: inline-flex; align-items: center; gap: 9px; justify-self: start; text-decoration: none; color: var(--text); font-weight: 600; font-size: 16px; letter-spacing: -.025em; }
.znak { display: block; flex: 0 0 auto; }
.menu { display: flex; align-items: center; gap: 2px; }
.menu a { font-size: 14px; font-weight: 450; color: var(--text-2); text-decoration: none; padding: 8px 14px; border-radius: 999px; transition: background-color .2s ease, color .2s ease; }
.menu a:hover { background: rgb(255 255 255 / .07); color: var(--text); }
.menu .menu-akce { display: none; }
.lista-akce { justify-self: end; height: 42px; display: inline-flex; align-items: center; padding: 0 18px; border-radius: 999px; background: var(--text); color: #07070d; font-size: 14px; font-weight: 600; text-decoration: none; transition: background-color .2s ease, box-shadow .2s ease; }
.lista-akce:hover { background: #fff; box-shadow: 0 0 0 4px rgb(47 227 208 / .18); }
.menu-prepinac { display: none; justify-self: end; width: 42px; height: 42px; border: 0; background: transparent; cursor: pointer; position: relative; border-radius: 999px; }
.menu-prepinac i { position: absolute; left: 12px; right: 12px; height: 1.5px; background: var(--text); border-radius: 2px; transition: transform .3s var(--ease); }
.menu-prepinac i:first-of-type { top: 17px; }
.menu-prepinac i:last-of-type { top: 24px; }
.menu-prepinac[aria-expanded="true"] i:first-of-type { transform: translateY(3.5px) rotate(45deg); }
.menu-prepinac[aria-expanded="true"] i:last-of-type { transform: translateY(-3.5px) rotate(-45deg); }
@media (max-width: 819px) {
  .lista { padding: 0 12px; top: 10px; }
  .lista-obsah { grid-template-columns: 1fr auto; height: 54px; padding: 0 6px 0 16px; }
  .lista-akce { display: none; }
  .menu-prepinac { display: block; }
  .menu { position: absolute; top: calc(100% + 8px); left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 2px; padding: 8px; background: rgb(14 13 26 / .97); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); border: 1px solid var(--linka-2); border-radius: 24px; box-shadow: 0 24px 60px -20px rgb(0 0 0 / .8); visibility: hidden; opacity: 0; transform: translateY(-6px) scale(.98); transform-origin: top center; transition: opacity .2s ease, transform .3s var(--ease), visibility 0s .3s; }
  .menu.otevrene { visibility: visible; opacity: 1; transform: none; transition: opacity .2s ease, transform .3s var(--ease); }
  .menu a { font-size: 17px; color: var(--text); padding: 14px 16px; border-radius: 16px; }
  .menu .menu-akce { display: flex; justify-content: center; margin-top: 6px; background: var(--prechod); color: #07070d; font-weight: 600; }
  .menu .menu-akce:hover { background: var(--prechod); color: #07070d; }
}

/* Úvod */
.uvod { position: relative; padding: 150px 0 40px; isolation: isolate; }
.uvod-zare { position: absolute; inset: 0 0 auto; height: 1100px; z-index: -1; pointer-events: none; overflow: hidden; }
.uvod-zare::before { content: ''; position: absolute; inset: 0; background: radial-gradient(42% 36% at 28% 30%, rgb(47 227 208 / .22), transparent 70%), radial-gradient(40% 38% at 74% 26%, rgb(124 77 255 / .3), transparent 70%), radial-gradient(30% 30% at 50% 62%, rgb(108 182 255 / .12), transparent 70%); filter: blur(10px); }
.uvod-zare::after { content: ''; position: absolute; inset: 0; background-image: linear-gradient(rgb(255 255 255 / .045) 1px, transparent 1px), linear-gradient(90deg, rgb(255 255 255 / .045) 1px, transparent 1px); background-size: 64px 64px; -webkit-mask-image: radial-gradient(60% 50% at 50% 30%, #000 20%, transparent 75%); mask-image: radial-gradient(60% 50% at 50% 30%, #000 20%, transparent 75%); }
.uvod-text { text-align: center; }
.uvod h1 { font-size: clamp(64px, 12.5vw, 168px); line-height: .9; letter-spacing: -.06em; font-weight: 650; padding-bottom: .06em; }
.uvod h1 .radek { display: inline-block; }
.uvod-perex { max-width: 640px; margin: 28px auto 0; font-size: clamp(18px, 1.6vw, 21px); line-height: 1.5; color: var(--text-2); }
.uvod-akce { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px 18px; margin-top: 36px; }

/* Sekce */
.sekce { position: relative; padding: 110px 0; }
@media (min-width: 900px) { .sekce { padding: 150px 0; } }
.sekce-perex { max-width: 620px; margin-top: 22px; font-size: 19px; color: var(--text-2); }

/* Chatbot a ruce */
.srovnani { display: grid; gap: 18px; margin-top: 56px; }
@media (min-width: 860px) { .srovnani { grid-template-columns: 1fr 1fr; gap: 22px; } }
.srov { position: relative; padding: 30px; border-radius: 28px; border: 1px solid var(--linka); background: var(--pozadi-2); display: flex; flex-direction: column; gap: 14px; min-height: 360px; }
.srov-nazev { font-size: 14px; font-weight: 600; color: var(--text-3); margin-bottom: 8px; }
.srov-pata { margin-top: auto; padding-top: 18px; font-size: 18px; font-weight: 550; letter-spacing: -.02em; }
.srov-chat .srov-pata { color: var(--text-2); }
.bublina { max-width: 88%; padding: 13px 17px; border-radius: 20px; font-size: 15.5px; line-height: 1.45; }
.bublina.vy { align-self: flex-end; background: #24223a; border-bottom-right-radius: 6px; }
.bublina.ai { align-self: flex-start; background: #151427; border: 1px solid var(--linka); color: var(--text-2); border-bottom-left-radius: 6px; }
.srov-ruce { border: 1px solid transparent; background: linear-gradient(var(--pozadi-2), var(--pozadi-2)) padding-box, linear-gradient(140deg, rgb(47 227 208 / .7), rgb(167 123 255 / .25) 45%, rgb(167 123 255 / .7)) border-box; box-shadow: 0 40px 100px -50px rgb(124 77 255 / .55); overflow: hidden; }
.srov-ruce::before { content: ''; position: absolute; inset: -40% -20% auto auto; width: 70%; height: 90%; background: radial-gradient(closest-side, rgb(47 227 208 / .14), transparent); pointer-events: none; }
.srov-ruce .srov-nazev { color: var(--tyrkys); }
.kroky-ai { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.kroky-ai li { display: flex; align-items: center; gap: 12px; padding: 13px 16px; border-radius: 16px; background: rgb(255 255 255 / .035); border: 1px solid var(--linka); font-size: 15.5px; }
.kroky-ai li::before { content: ''; flex: 0 0 22px; height: 22px; border-radius: 50%; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22'%3E%3Cpath d='M6.5 11.3l3 3 6-6.3' fill='none' stroke='%2307070d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center no-repeat, var(--prechod); box-shadow: 0 0 0 4px rgb(47 227 208 / .12); }

/* Pás systémů */
.sekce-kam { padding-bottom: 90px; }
.pas { margin-top: 56px; display: grid; gap: 14px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.pas-rada { list-style: none; margin: 0 auto; padding: 0 var(--okraj); display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; max-width: var(--obal); }
.pas-rada li { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; height: 54px; padding: 0 22px 0 18px; border-radius: 999px; border: 1px solid var(--linka-2); background: rgb(255 255 255 / .03); font-size: 16px; font-weight: 500; white-space: nowrap; }
.pas-rada svg { width: 20px; height: 20px; fill: none; stroke: var(--tyrkys); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.pas-rada li:nth-child(3n+2) svg { stroke: var(--fialova); }
.pas-rada li:nth-child(3n) svg { stroke: #6cb6ff; }
.pas.bezi { overflow: hidden; }
.pas.bezi .pas-stopa { display: flex; width: max-content; animation: pas 60s linear infinite; }
.pas.bezi .pas-stopa.zpet { animation-direction: reverse; animation-duration: 70s; }
.pas.bezi .pas-rada { flex-wrap: nowrap; max-width: none; margin: 0; padding: 0 6px; gap: 12px; }
.pas.bezi:hover .pas-stopa { animation-play-state: paused; }
@keyframes pas { to { transform: translateX(-50%); } }
.kam-pozn { margin-top: 40px; max-width: 620px; color: var(--text-3); font-size: 15.5px; }

/* Co zmizí z vašeho dne */
.den-blok { margin-top: 48px; border-radius: 32px; border: 1px solid var(--linka); background: var(--pozadi-2); padding: 14px; }
.zalozky { display: flex; flex-wrap: wrap; gap: 6px; padding: 4px; }
@media (max-width: 699px) { .zalozky { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0 -14px; padding: 4px 14px; scroll-padding: 0 14px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 18px, #000 calc(100% - 18px), transparent); mask-image: linear-gradient(90deg, transparent, #000 18px, #000 calc(100% - 18px), transparent); } .zalozky::-webkit-scrollbar { display: none; } .zalozky button { flex: 0 0 auto; } }
.zalozky button { height: 44px; padding: 0 18px; border-radius: 999px; border: 1px solid transparent; background: transparent; color: var(--text-2); font: 500 15px/1 var(--pismo); letter-spacing: -.01em; cursor: pointer; transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
.zalozky button:hover { color: var(--text); background: rgb(255 255 255 / .05); }
.zalozky button[aria-selected="true"] { color: var(--text); background: rgb(255 255 255 / .07); border-color: var(--linka-2); box-shadow: inset 0 1px 0 rgb(255 255 255 / .06); }
.den-panel { padding: 26px 18px 18px; display: grid; gap: 26px; }
@media (min-width: 900px) { .den-panel { grid-template-columns: 1.4fr 1fr; align-items: center; padding: 34px 30px 26px; gap: 48px; } }
.ukoly { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.ukoly li { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border-radius: 16px; background: rgb(255 255 255 / .03); border: 1px solid var(--linka); font-size: 16.5px; }
.ukoly li span { color: var(--text-3); text-decoration: line-through 1.5px rgb(47 227 208 / .85); transition: color .4s ease, text-decoration-color .4s ease; }
.ukoly li b { flex: 0 0 auto; font-size: 13px; font-weight: 600; color: #07070d; background: var(--prechod); padding: 5px 11px; border-radius: 999px; transition: opacity .35s ease, transform .45s var(--ease); }
.js .ukoly li:not(.hotovo) span { color: var(--text); }
.js .ukoly li:not(.hotovo) span { text-decoration-color: transparent; }
.js .ukoly li:not(.hotovo) b { opacity: 0; transform: scale(.7); }
.zbyva { font-size: clamp(28px, 3.4vw, 44px); line-height: 1.2; letter-spacing: -.03em; font-weight: 550; transition: opacity .5s ease, transform .6s var(--ease); }
.zbyva span { display: block; font-size: 14px; letter-spacing: 0; font-weight: 500; color: var(--tyrkys); margin-bottom: 10px; }
.js .den-panel:not(.dohrano) .zbyva { opacity: 0; transform: translateY(8px); }

/* Jak začneme */
.kroky { list-style: none; margin: 56px 0 0; padding: 0; display: grid; gap: 18px; counter-reset: k; }
@media (min-width: 860px) { .kroky { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; } }
.kroky li { position: relative; padding: 30px 28px 32px; border-radius: 26px; border: 1px solid var(--linka); background: linear-gradient(180deg, rgb(255 255 255 / .035), transparent 70%); }
.krok-cislo { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; margin-bottom: 26px; background: var(--prechod); color: #07070d; font-weight: 650; font-size: 18px; box-shadow: 0 10px 30px -10px rgb(47 227 208 / .6); }
.kroky h3 { margin-bottom: 10px; }
.kroky p { color: var(--text-2); font-size: 16px; }

/* Bezpečnost */
.sekce-tmava .bezpecnost { position: relative; display: grid; gap: 48px; padding-top: 56px; padding-bottom: 56px; }
.sekce-tmava .bezpecnost::before { content: ''; position: absolute; inset: 0 max(0px, calc(var(--okraj) - 24px)); z-index: -1; border-radius: 36px; border: 1px solid var(--linka); background: radial-gradient(60% 70% at 85% 40%, rgb(124 77 255 / .2), transparent 70%), radial-gradient(50% 60% at 10% 90%, rgb(47 227 208 / .1), transparent 70%), var(--pozadi-2); }
.sekce-tmava { isolation: isolate; }
@media (min-width: 960px) { .sekce-tmava .bezpecnost { grid-template-columns: 1fr 1fr; align-items: center; gap: 72px; padding: 80px 72px; } }
@media (max-width: 959px) { .sekce-tmava .bezpecnost { padding-left: calc(var(--okraj) + 8px); padding-right: calc(var(--okraj) + 8px); } }
.zasady { margin: 36px 0 0; display: grid; gap: 22px; }
@media (min-width: 600px) { .zasady { grid-template-columns: 1fr 1fr; } }
.zasady dt { font-weight: 600; margin-bottom: 4px; }
.zasady dd { margin: 0; color: var(--text-2); font-size: 15.5px; }
.pravidla { border-radius: 24px; border: 1px solid var(--linka-2); background: rgb(12 11 24 / .8); box-shadow: 0 40px 100px -40px rgb(0 0 0 / .9), inset 0 1px 0 rgb(255 255 255 / .05); padding: 8px; }
.pravidla-hlava { display: flex; justify-content: space-between; align-items: center; padding: 12px 14px 14px; font-size: 14px; }
.pravidla-hlava span { color: var(--text-3); font-size: 13px; }
.pravidlo { display: grid; gap: 10px; padding: 14px; border-top: 1px solid var(--linka); }
@media (min-width: 520px) { .pravidlo { grid-template-columns: 1fr auto; align-items: center; } }
.pravidlo-nazev { font-size: 15px; font-weight: 500; }
.volby { display: inline-flex; padding: 3px; border-radius: 999px; background: rgb(255 255 255 / .04); border: 1px solid var(--linka); justify-self: start; }
.volby label { position: relative; cursor: pointer; }
.volby input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.volby span { display: block; padding: 7px 12px; border-radius: 999px; font-size: 13px; font-weight: 500; color: var(--text-3); white-space: nowrap; transition: background-color .25s ease, color .25s ease, box-shadow .25s ease; }
.volby label:hover span { color: var(--text); }
.volby input:focus-visible + span { outline: 2px solid var(--tyrkys); outline-offset: 1px; }
.volby input[value="sama"]:checked + span { background: rgb(47 227 208 / .16); color: var(--tyrkys); box-shadow: inset 0 0 0 1px rgb(47 227 208 / .4); }
.volby input[value="schvaleni"]:checked + span { background: rgb(167 123 255 / .18); color: #c6aaff; box-shadow: inset 0 0 0 1px rgb(167 123 255 / .45); }
.volby input[value="vy"]:checked + span { background: rgb(255 255 255 / .1); color: var(--text); box-shadow: inset 0 0 0 1px var(--linka-2); }
.pravidla-pata { padding: 12px 14px 10px; border-top: 1px solid var(--linka); font-size: 13px; color: var(--text-3); }

/* ContentMotor */
.sekce-uzka { padding: 0; }
.sourozenec { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; padding: 28px 0; border-top: 1px solid var(--linka); border-bottom: 1px solid var(--linka); text-decoration: none; color: var(--text-2); }
.sourozenec b { color: var(--text); font-weight: 600; }
.sourozenec-odkaz { display: inline-flex; align-items: center; gap: 6px; color: var(--text); font-weight: 500; font-size: 15px; }
.sourozenec-odkaz svg { transition: transform .25s var(--ease); }
.sourozenec:hover .sourozenec-odkaz svg { transform: translate(2px, -2px); }

/* Kontakt */
.kontakt { display: grid; gap: 48px; }
@media (min-width: 960px) { .kontakt { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 88px; } }
.kontakt-text p { margin-top: 22px; color: var(--text-2); font-size: 18px; max-width: 30em; }
.kontakt-mail { display: inline-block; margin-top: 24px; font-size: 20px; font-weight: 550; color: var(--tyrkys); text-decoration: none; letter-spacing: -.02em; }
.kontakt-mail:hover { text-decoration: underline; }
.formular { display: grid; gap: 18px; padding: 28px; border-radius: 28px; border: 1px solid var(--linka); background: var(--pozadi-2); }
.dvojice { display: grid; gap: 18px; }
@media (min-width: 600px) { .dvojice { grid-template-columns: 1fr 1fr; } }
.pole { display: grid; gap: 7px; }
.pole label { font-size: 14px; font-weight: 500; }
.pole label span { font-weight: 400; color: var(--text-3); margin-left: 4px; }
.pole input, .pole textarea { width: 100%; font: 400 16px/1.45 var(--pismo); color: var(--text); background: rgb(255 255 255 / .03); border: 1px solid var(--linka-2); border-radius: 12px; padding: 13px 15px; transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease; }
.pole textarea { resize: vertical; min-height: 140px; }
.pole textarea::placeholder { color: var(--text-3); opacity: 1; }
.pole input:hover, .pole textarea:hover { border-color: rgb(255 255 255 / .24); }
.pole input:focus, .pole textarea:focus { outline: none; border-color: var(--tyrkys); background: rgb(47 227 208 / .04); box-shadow: 0 0 0 4px rgb(47 227 208 / .14); }
.pole [aria-invalid="true"] { border-color: var(--chyba); }
.chyba { font-size: 13.5px; color: var(--chyba); }
.souhlas { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--text-2); cursor: pointer; }
.souhlas input { width: 18px; height: 18px; margin: 2px 0 0; flex: 0 0 auto; accent-color: var(--tyrkys); }
.past { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.formular-pata { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; margin-top: 6px; }
.hlaska { font-size: 14px; color: var(--text-2); }
.hlaska.chyba { color: var(--chyba); }
.dekujeme { padding: 32px 0; }
.dekujeme h3 { font-size: 26px; letter-spacing: -.025em; margin-bottom: 8px; }
.dekujeme p { color: var(--text-2); }

/* Patička */
.paticka { border-top: 1px solid var(--linka); padding: 40px 0 48px; font-size: 13px; color: var(--text-3); }
.paticka-horni { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; }
.paticka .znacka { font-size: 15px; }
.paticka-odkazy { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.paticka-odkazy a { color: var(--text-2); text-decoration: none; font-size: 14px; }
.paticka-odkazy a:hover { color: var(--text); }
.paticka-pravni { margin-top: 28px; max-width: 70em; line-height: 1.6; }

/* Textová stránka (zásady) */
.text-stranka { max-width: 720px; margin: 0 auto; padding: 150px var(--okraj) 104px; }
.text-stranka h1 { font-size: clamp(36px, 5vw, 56px); line-height: 1.05; letter-spacing: -.045em; margin-bottom: 28px; }
.text-stranka h2 { font-size: 22px; letter-spacing: -.02em; margin: 40px 0 10px; }
.text-stranka p, .text-stranka li { color: var(--text-2); }
.text-stranka p { margin-bottom: 10px; }
.text-stranka a { color: var(--tyrkys); }

/* Pohyb */
@media (prefers-reduced-motion: no-preference) {
  .prechod { animation: prelev 9s ease-in-out infinite alternate; }
  @keyframes prelev { to { background-position: 100% 0; } }
  .js .odhal { opacity: 0; transform: translateY(22px); transition: opacity .9s var(--ease), transform .9s var(--ease); }
  .js .odhal.videt { opacity: 1; transform: none; }
  .js .kroky .odhal:nth-child(2), .js .srovnani .odhal:nth-child(2) { transition-delay: .12s; }
  .js .kroky .odhal:nth-child(3) { transition-delay: .24s; }
  .js .uvod h1 .radek, .js .uvod-perex, .js .uvod-akce { animation: nahoru 1s var(--ease) both; }
  .js .uvod h1 .radek:nth-child(2) { animation-delay: .08s; }
  .js .uvod-perex { animation-delay: .18s; }
  .js .uvod-akce { animation-delay: .28s; }
  @keyframes nahoru { from { opacity: 0; transform: translateY(26px); } }
  .js .kroky-ai li { opacity: 0; transform: translateX(-10px); transition: opacity .5s ease, transform .6s var(--ease); }
  .js .srov-ruce.videt .kroky-ai li { opacity: 1; transform: none; }
  .js .srov-ruce.videt .kroky-ai li:nth-child(1) { transition-delay: .35s; }
  .js .srov-ruce.videt .kroky-ai li:nth-child(2) { transition-delay: .65s; }
  .js .srov-ruce.videt .kroky-ai li:nth-child(3) { transition-delay: .95s; }
  .js .srov-ruce.videt .kroky-ai li:nth-child(4) { transition-delay: 1.25s; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .ukoly li span, .ukoly li b, .zbyva { transition: none; }
}
