/* Rebooko v3 — multipage additions */
.snav-links{position:relative}
.snav-drop{position:relative}
.snav-drop>button{display:inline-flex;align-items:center;white-space:nowrap;gap:6px;background:none;border:0;cursor:pointer;font:inherit;font-weight:500;font-size:15px;color:var(--grey-mid);padding:0;transition:color .25s}
.snav-drop>button:hover{color:var(--ink)}
.snav-drop>button .car{font-size:10px;transition:transform .25s}
.snav-drop.open>button .car{transform:rotate(180deg)}
.snav-menu::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.snav-menu{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(6px);background:#fff;border:1px solid var(--hairline);border-radius:16px;box-shadow:0 24px 54px -24px rgba(17,18,19,.28);padding:8px;min-width:230px;opacity:0;pointer-events:none;transition:opacity .25s var(--ease),transform .25s var(--ease)}
.snav-drop.open .snav-menu{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.snav-menu a{display:flex;flex-direction:column;gap:2px;padding:11px 14px;border-radius:11px;font-size:14.5px;font-weight:600;color:var(--ink)}
.snav-menu a small{font-weight:400;font-size:12.5px;color:var(--grey-mid)}
.snav-menu a:hover{background:var(--tint)}
.burger{display:none;appearance:none;background:none;border:0;cursor:pointer;width:40px;height:40px;position:relative}
.burger span{position:absolute;left:9px;right:9px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s var(--ease),opacity .3s;top:14px}
.burger span:nth-child(2){top:19px}
.burger span:nth-child(3){top:24px}
.burger.open span:nth-child(1){transform:translateY(5px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}
@media(max-width:1219px){.burger{display:block}.snav-links .snav-drop,.snav-links .lang-switch{display:none}}
.mnav{position:fixed;inset:0;top:72px;z-index:49;background:var(--paper);padding:26px 22px;display:none;flex-direction:column;gap:4px;overflow-y:auto}
.mnav.open{display:flex}
.mnav a{padding:14px 6px;font-size:19px;font-weight:600;border-bottom:1px solid var(--hairline);display:flex;justify-content:space-between;align-items:center}
.mnav a small{font-size:12px;color:var(--grey-mid);font-weight:500}
.mnav .grp{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--grey-mid);padding:18px 6px 6px}
.stickycta,.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:48;display:none;align-items:center;justify-content:space-between;gap:12px;background:rgba(250,250,247,.92);backdrop-filter:blur(14px);border-top:1px solid var(--hairline);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
.stickycta .m,.sticky-cta .m{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey-mid)}
@media(max-width:760px){.stickycta,.sticky-cta{display:flex}body{padding-bottom:64px}}
.pagehero{padding:clamp(38px,6vw,72px) 0 clamp(26px,4vw,44px)}
.pagehero .h1{font-size:clamp(36px,5.6vw,64px)}
.teasers{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:860px){.teasers{grid-template-columns:1fr}}
.teaser{position:relative;display:block;border:1px solid var(--hairline);border-radius:22px;background:#fff;padding:26px;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
.teaser:hover{transform:translateY(-4px);border-color:var(--cobalt);box-shadow:var(--sh-1)}
.teaser h3{font-size:21px;font-weight:600;letter-spacing:-.015em;margin:10px 0 6px}
.teaser p{color:var(--grey-mid);font-size:15px;max-width:44ch}
.teaser .go{margin-top:16px;display:inline-flex;color:var(--cobalt);font-weight:600;font-size:14.5px}
.workgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:900px){.workgrid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.workgrid{grid-template-columns:1fr}}
.workcard{display:block;border:1px solid var(--hairline);border-radius:20px;overflow:hidden;background:#fff;transition:transform .3s var(--ease),box-shadow .3s}
.workcard:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.workcard img{width:100%;aspect-ratio:16/10;object-fit:cover}
.workcard .wb{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 18px}
.workcard .wb b{font-size:16px;letter-spacing:-.01em}
.workcard .wb span{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey-mid)}
.faq{border-top:1px solid var(--hairline);max-width:820px}
.faq details{border-bottom:1px solid var(--hairline)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 4px;font-size:17px;font-weight:600;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--font-mono);font-size:18px;color:var(--cobalt);transition:transform .25s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .fb{padding:0 4px 20px;max-width:660px;font-size:15.5px;line-height:1.65;color:var(--grey-mid)}
.sec{padding:clamp(44px,7vw,84px) 0}
.sec.alt{background:var(--band);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}

/* logo ako vo V2 */
.snav .brand{font-weight:700;font-size:20px;letter-spacing:-0.02em}
.brand sup{color:var(--cobalt);font-size:.52em;font-weight:600;margin-left:1px}

/* v4: aktívna položka menu */
.snav-links a.is-active,.snav-drop>button.is-active{color:var(--ink);font-weight:600}
.snav-menu a.is-active{background:var(--tint)}
.mnav a.is-active{color:var(--cobalt)}

/* v4: jazykový prepínač */
.lang-drop{position:relative}
.lang-drop>button{display:inline-flex;align-items:center;gap:5px;background:none;border:0;cursor:pointer;font:inherit;font-weight:500;font-size:14px;color:var(--grey-mid);padding:0;transition:color .25s}
.lang-drop>button:hover{color:var(--ink)}
.lang-drop>button .car{font-size:10px;transition:transform .25s}
.lang-drop.open>button .car{transform:rotate(180deg)}
.lang-glyph{font-size:15px;line-height:1}
.lang-cur{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em}
.lang-menu{position:absolute;top:calc(100% + 14px);right:0;background:#fff;border:1px solid var(--hairline);border-radius:14px;box-shadow:0 24px 54px -24px rgba(17,18,19,.28);padding:6px;min-width:150px;max-height:60vh;overflow:auto;opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .25s var(--ease),transform .25s var(--ease)}
.lang-drop.open .lang-menu{opacity:1;pointer-events:auto;transform:translateY(0)}
.lang-menu a{display:block;padding:8px 12px;border-radius:9px;font-size:13.5px;font-weight:500;color:var(--ink)}
.lang-menu a:hover{background:var(--tint)}
.lang-menu a.is-active{background:var(--tint);color:var(--cobalt);font-weight:600}
.mnav-langs{display:flex;flex-wrap:wrap;gap:8px;padding:4px 6px 8px}
.mnav-langs a{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;padding:7px 11px;border:1px solid var(--hairline);border-radius:999px;color:var(--ink)}
@media(max-width:1120px){.lang-drop>button .lang-glyph{display:none}}

/* v4: cookie lišta */
.consent{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;display:flex;justify-content:center;opacity:0;transform:translateY(14px);transition:opacity .35s var(--ease),transform .35s var(--ease);pointer-events:none}
.consent.show{opacity:1;transform:none;pointer-events:auto}
.consent-in{display:flex;align-items:center;gap:18px;max-width:760px;background:#fff;border:1px solid var(--hairline);border-radius:18px;box-shadow:0 30px 70px -28px rgba(17,18,19,.35);padding:16px 20px}
.consent-in p{font-size:13.5px;line-height:1.55;color:var(--ink-soft);margin:0}
.consent-in p a{color:var(--cobalt);font-weight:600}
.consent-btns{display:flex;gap:8px;flex:none}
.consent .btn{padding:10px 16px;font-size:13.5px;white-space:nowrap}
.consent .btn-ghost{background:none;border:1px solid var(--hairline);border-radius:999px;color:var(--grey-mid);cursor:pointer;font:inherit;font-weight:500}
.consent .btn-ghost:hover{color:var(--ink);border-color:var(--grey-mid)}
@media(max-width:640px){.consent-in{flex-direction:column;align-items:stretch;gap:12px}.consent-btns{justify-content:flex-end}body{--consent-pad:1}}

/* v4b: jazykový prepínač — pill lišta ako pôvodný web (nahrádza .lang-drop) */
.lang-switch{display:flex;gap:2px;align-items:center;flex-wrap:wrap;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;border:1px solid var(--hairline);border-radius:999px;padding:4px;background:rgba(250,250,247,.7)}
.snav-links .lang-switch{flex-wrap:nowrap}
.lang-btn{padding:5px 10px;border-radius:999px;border:0;background:none;cursor:pointer;font:inherit;color:var(--grey-mid);transition:color .25s,background .25s;text-transform:uppercase}
.lang-btn:hover{color:var(--ink)}
.lang-btn.is-active{background:var(--ink);color:var(--paper)}
@media (hover:hover) and (pointer:fine){
  .snav-links .lang-switch::after{content:'▾';font-size:9px;color:var(--grey-mid);padding:0 8px 0 2px;transition:transform .3s var(--ease)}
  .snav-links .lang-switch:hover::after,.snav-links .lang-switch:focus-within::after{transform:rotate(180deg)}
  .snav-links .lang-btn{max-width:64px;overflow:hidden;white-space:nowrap;transition:max-width .38s var(--ease),padding .38s var(--ease),opacity .25s}
  .snav-links .lang-switch:not(:hover):not(:focus-within) .lang-btn:not(.is-active){max-width:0;padding-inline:0;opacity:0}
}
.mnav .lang-switch{max-width:min(100%,430px);border-radius:18px;margin:4px 6px 10px}

/* v4b: ink wipe pri zmene jazyka */
.lwipe{position:fixed;inset:0;z-index:1500;background:var(--ink);transform:scaleY(0);transform-origin:top;pointer-events:none;display:grid;place-items:center;transition:transform .42s var(--ease)}
.lwipe.on{transform:scaleY(1)}
.lwipe.out{transform-origin:bottom;transform:scaleY(0)}
.lwipe-word{font-family:var(--font-mono);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--paper);opacity:0;transition:opacity .25s var(--ease),transform .25s var(--ease);transform:translateY(12px)}
.lwipe.on .lwipe-word{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.lwipe{display:none}}

/* v4b: plynulejšie reveal + stagger detí */
.reveal{transform:translateY(18px);transition-duration:.95s}
.stagger>*{opacity:0;transform:translateY(16px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.stagger.in>*{opacity:1;transform:none}
.stagger.in>*:nth-child(1){transition-delay:.05s}.stagger.in>*:nth-child(2){transition-delay:.13s}
.stagger.in>*:nth-child(3){transition-delay:.21s}.stagger.in>*:nth-child(4){transition-delay:.29s}
.stagger.in>*:nth-child(5){transition-delay:.37s}.stagger.in>*:nth-child(6){transition-delay:.45s}
.stagger.in>*:nth-child(7){transition-delay:.53s}.stagger.in>*:nth-child(n+8){transition-delay:.6s}
@media(prefers-reduced-motion:reduce){.stagger>*{opacity:1;transform:none;transition:none}}

/* v4b: jemný parallax (len jemné posuny, desktop) */
@media (hover:hover) and (pointer:fine) and (min-width:900px){[data-plx]{will-change:transform}}

/* ===== prihlasovacie tlačidlo + modál ===== */
.snav-login{border:1px solid var(--hairline);border-radius:999px;padding:9px 16px;font-weight:600;font-size:14px;color:var(--ink)!important;transition:border-color .25s,transform .25s}
.snav-login:hover{border-color:var(--ink);transform:translateY(-1px)}
.lgm{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:18px;opacity:0;transition:opacity .2s var(--ease)}
.lgm.show{opacity:1}
.lgm[hidden]{display:none}
.lgm-back{position:absolute;inset:0;background:rgba(17,18,19,.45);backdrop-filter:blur(3px)}
.lgm-card{position:relative;width:min(440px,100%);background:var(--paper);border-radius:22px;padding:30px 28px 26px;box-shadow:0 40px 90px -30px rgba(17,18,19,.5);border:1px solid var(--hairline)}
.lgm.show .lgm-card{animation:lgmin .25s var(--ease)}
@keyframes lgmin{from{transform:translateY(8px) scale(.985);opacity:.6}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.lgm.show .lgm-card{animation:none}.lgm{transition:none}}
.lgm-x{position:absolute;top:12px;right:14px;appearance:none;background:none;border:0;cursor:pointer;font-size:24px;line-height:1;color:var(--grey-mid);padding:6px}
.lgm-x:hover{color:var(--ink)}
.lgm-card h3{font-size:22px;letter-spacing:-.02em;font-weight:600;margin:0 0 8px}
.lgm-card p{color:var(--grey-mid);font-size:14.5px;line-height:1.55;margin:0 0 14px}
.lgm-card form{display:grid;gap:10px;margin:4px 0 0}
.lgm-card input{width:100%;padding:13px 15px;border:1px solid var(--hairline);border-radius:12px;font:inherit;font-size:15px;background:#fff}
.lgm-card input:focus{outline:2px solid var(--cobalt);outline-offset:0;border-color:transparent}
.lgm-err{color:#B04E28;font-size:13px;margin:0}
.lgm-err[hidden]{display:none}
.lgm-hint{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--grey-mid);margin:16px 0 0}
.lgm-mail{font-weight:700;color:var(--ink);word-break:break-all;margin:0 0 10px}
.lgm-back-btn{appearance:none;background:none;border:0;cursor:pointer;font:inherit;font-size:13.5px;font-weight:600;color:var(--cobalt);padding:0;margin-top:14px;display:block}
.lgm-step .btn{width:100%;justify-content:center}
