/* oltamio: animovana scena "web sa sklada pred ocami" (komponent .bs) */
.bs{--a:#2563eb;--b:#dbeafe;--ink:#0f172a;position:relative;width:100%;max-width:560px;aspect-ratio:1.16;container-type:inline-size;font-size:clamp(7px,2.35cqw,13.5px);font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;line-height:1.2;margin-inline:auto}
.bs *{box-sizing:border-box}
.bs-halo{position:absolute;inset:6% 0 4% 4%;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--a) 22%,transparent),transparent 72%);opacity:0;transition:opacity 1s}
.bs.s1 .bs-halo{opacity:1}
.bs-win{position:absolute;inset:4% 4% 9% 3%;background:#fff;border-radius:1.2em;box-shadow:0 2.4em 4.4em -1.4em rgb(15 23 42/.4),0 0 0 1px rgb(15 23 42/.07);overflow:hidden;opacity:0;transform:translateY(2em) scale(.95);transition:opacity .7s,transform .8s cubic-bezier(.2,.8,.2,1)}
.bs.s1 .bs-win{opacity:1;transform:none}
.bs-bar{display:flex;align-items:center;gap:.5em;padding:.75em 1em;background:#f1f5f9;border-bottom:1px solid #e2e8f0}
.bs-bar i{width:.8em;height:.8em;border-radius:50%;background:#cbd5e1}
.bs-bar i:nth-child(1){background:#fca5a5}.bs-bar i:nth-child(2){background:#fcd34d}.bs-bar i:nth-child(3){background:#86efac}
.bs-url{margin-left:.8em;flex:1;max-width:60%;background:#fff;border-radius:2em;padding:.35em 1em;font-size:.86em;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid #e2e8f0}
.bs-page{padding:1em 1.2em;display:flex;flex-direction:column;gap:1.1em;height:calc(100% - 2.9em)}
.bs-nav{display:flex;align-items:center;gap:.8em;opacity:0;transform:translateY(-.8em);transition:.5s}
.bs.s2 .bs-nav{opacity:1;transform:none}
.bs-logo{width:1.7em;height:1.7em;border-radius:.5em;background:var(--a);display:block}
.bs-nav s{display:block;width:3.2em;height:.6em;border-radius:1em;background:#cbd5e1;text-decoration:none}
.bs-nav u{display:block;margin-left:auto;width:4.6em;height:1.7em;border-radius:2em;background:var(--a);opacity:.9}
.bs-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:1.2em;align-items:stretch;flex:1;min-height:0}
.bs-txt{display:flex;flex-direction:column;gap:.7em;justify-content:center}
.bs-h,.bs-p{display:block;height:1.3em;border-radius:.4em;background:var(--ink);transform:scaleX(0);transform-origin:0 50%;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.bs-h.w2{width:62%}.bs-h{width:94%}
.bs-p{height:.6em;background:#cbd5e1;width:88%}.bs-p.w2{width:70%}
.bs.s3 .bs-h,.bs.s3 .bs-p{transform:none}
.bs.s3 .bs-h.w2{transition-delay:.12s}.bs.s3 .bs-p{transition-delay:.3s}.bs.s3 .bs-p.w2{transition-delay:.4s}
.bs-btn{display:block;width:7.2em;height:2.1em;border-radius:2em;background:var(--a);margin-top:.5em;opacity:0;transform:translateY(.8em);transition:.5s .55s;position:relative}
.bs.s3 .bs-btn{opacity:1;transform:none}
.bs-btn.click{animation:bsclick .5s}
.bs-btn.click::after{content:"";position:absolute;inset:-.2em;border-radius:2em;border:2px solid var(--a);animation:bsring .8s ease-out forwards}
@keyframes bsclick{40%{transform:scale(.9)}}
@keyframes bsring{from{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}
.bs-art{border-radius:1em;background:linear-gradient(160deg,var(--b),#fff 130%);position:relative;overflow:hidden;opacity:0;transform:scale(.92);transition:.7s cubic-bezier(.2,.8,.2,1)}
.bs.s4 .bs-art{opacity:1;transform:none}
.bs-art svg{position:absolute;inset:0;width:100%;height:100%}
.bs-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.8em}
.bs-card{border:1px solid #e2e8f0;border-radius:.8em;padding:.8em;display:flex;flex-direction:column;gap:.5em;background:#fff;opacity:0;transform:translateY(1.2em) scale(.96);transition:.55s cubic-bezier(.2,.8,.2,1)}
.bs.s5 .bs-card{opacity:1;transform:none}
.bs.s5 .bs-card:nth-child(2){transition-delay:.15s}.bs.s5 .bs-card:nth-child(3){transition-delay:.3s}
.bs-ic{width:2.4em;height:2.4em;border-radius:.7em;background:color-mix(in srgb,var(--a) 14%,#fff);display:grid;place-items:center}
.bs-ic svg{width:1.4em;height:1.4em;fill:none;stroke:var(--a);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.bs-card b{display:block;height:.55em;border-radius:1em;background:#334155;width:80%}
.bs-card em{display:block;height:.45em;border-radius:1em;background:#e2e8f0;width:56%}
.bs-chip{position:absolute;display:flex;align-items:center;gap:.6em;background:#fff;border-radius:2em;padding:.55em 1.1em .55em .7em;font-size:1.02em;font-weight:700;color:#0f172a;box-shadow:0 .8em 1.8em -.5em rgb(15 23 42/.28),0 0 0 1px rgb(15 23 42/.06);white-space:nowrap;opacity:0;transform:translateY(1em) scale(.9);transition:opacity .5s,transform .6s cubic-bezier(.2,.9,.3,1.3);z-index:3}
.bs-chip i{width:1.9em;height:1.9em;border-radius:50%;background:color-mix(in srgb,var(--a) 16%,#fff);display:grid;place-items:center}
.bs-chip svg{width:1.1em;height:1.1em;fill:none;stroke:var(--a);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.bs-chip.c1{left:-2%;top:23%}.bs-chip.c2{right:-3%;top:41%}.bs-chip.c3{left:7%;bottom:1%}
.bs.s6 .bs-chip{opacity:1;transform:none;animation:bsfloat 5s ease-in-out infinite}
.bs.s6 .bs-chip.c2{transition-delay:.18s;animation-delay:-1.6s}.bs.s6 .bs-chip.c3{transition-delay:.36s;animation-delay:-3.2s}
@keyframes bsfloat{50%{translate:0 -.5em}}
.bs-cur{position:absolute;left:0;top:0;width:2em;height:2em;z-index:5;pointer-events:none;opacity:0;transform:translate(var(--cx,90cqw),var(--cy,105cqw));transition:transform 1.15s cubic-bezier(.45,.05,.2,1),opacity .3s;filter:drop-shadow(0 .2em .3em rgb(0 0 0/.35))}
.bs-cur svg{width:100%;height:100%}
.bs.s7 .bs-cur{opacity:1;transform:translate(var(--tx),var(--ty))}
.bs.s8 .bs-cur{opacity:0}
.bs-toast{position:absolute;right:4%;bottom:0;display:flex;align-items:center;gap:.7em;background:#0f172a;color:#fff;border-radius:1em;padding:.8em 1.2em .8em .9em;font-weight:700;font-size:1.04em;box-shadow:0 1em 2em -.6em rgb(15 23 42/.5);opacity:0;transform:translateY(1.2em) scale(.94);transition:.5s cubic-bezier(.2,.9,.3,1.3);z-index:6}
.bs-toast i{width:1.9em;height:1.9em;border-radius:50%;background:var(--a);display:grid;place-items:center}
.bs-toast svg{width:1.1em;height:1.1em;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.bs-toast span{display:block}.bs-toast small{display:block;font-weight:500;opacity:.7;font-size:.82em}
.bs.s8 .bs-toast{opacity:1;transform:none}
.bs.out .bs-win,.bs.out .bs-chip,.bs.out .bs-toast,.bs.out .bs-halo{opacity:0!important;transition:opacity .6s!important}
/* animacie objektov odboru */
.bs svg .A{fill:var(--a)}.bs svg .B{fill:var(--b)}.bs svg .S{fill:none;stroke:var(--a);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.bs svg .W{fill:#fff}.bs svg .G{fill:#cbd5e1}.bs svg .D{fill:#0f172a}.bs svg .SD{fill:none;stroke:#0f172a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.bs svg .SW{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round}.bs svg .T{fill:color-mix(in srgb,var(--a) 55%,#fff)}
.bs svg [class*=an-]{transform-box:fill-box;transform-origin:center}
@keyframes bsspin{to{transform:rotate(360deg)}}.an-spin{animation:bsspin 7s linear infinite}.an-spin.f{animation-duration:2.6s}.an-spin.r{animation-direction:reverse}
@keyframes bsfl{50%{transform:translateY(-7px)}}.an-float{animation:bsfl 3.4s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes bspu{50%{transform:scale(1.1)}}.an-pulse{animation:bspu 2.2s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes bsfk{0%,100%{transform:scale(1,1)}30%{transform:scale(.93,1.1)}60%{transform:scale(1.05,.94)}}.an-flick{transform-origin:50% 100%!important;animation:bsfk .9s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes bsdash{to{stroke-dashoffset:-24}}.an-dash{stroke-dasharray:7 5;animation:bsdash 1s linear infinite}
@keyframes bsst{0%{opacity:0;transform:translateY(10px)}30%{opacity:.85}100%{opacity:0;transform:translateY(-24px)}}.an-steam{animation:bsst 2.6s ease-out infinite;animation-delay:var(--d,0s)}
@keyframes bsdr{0%{transform:translateY(-14px);opacity:0}15%{opacity:1}85%{opacity:1}100%{transform:translateY(46px);opacity:0}}.an-drop{animation:bsdr 1.7s ease-in infinite;animation-delay:var(--d,0s)}
@keyframes bsgr{from{transform:scaleY(0)}to{transform:scaleY(1)}}.an-grow{transform-origin:50% 100%!important;animation:bsgr 1.1s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--d,0s)}
@keyframes bsbl{0%,100%{opacity:.1;transform:scale(.5) rotate(0)}50%{opacity:1;transform:scale(1) rotate(45deg)}}.an-blink{animation:bsbl 2s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes bssa{0%,100%{transform:rotate(4deg)}50%{transform:rotate(22deg)}}@keyframes bssb{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(-22deg)}}
.an-snip.a{animation:bssa 1.4s ease-in-out infinite}.an-snip.b{animation:bssb 1.4s ease-in-out infinite}
@keyframes bssw{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}.an-sway{transform-origin:50% 0!important;animation:bssw 2.6s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes bslf{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}.an-lift{animation:bslf 1.8s cubic-bezier(.45,0,.55,1) infinite}
@keyframes bsbt{0%,100%{transform:scale(1)}14%{transform:scale(1.13)}28%{transform:scale(1)}42%{transform:scale(1.08)}}.an-beat{animation:bsbt 1.5s ease-in-out infinite}
@keyframes bssh{from{transform:translateX(-90px) skewX(-18deg)}to{transform:translateX(230px) skewX(-18deg)}}.an-shine{animation:bssh 2.6s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes bspa{0%{transform:scaleX(0)}70%,100%{transform:scaleX(1)}}.an-paint{transform-origin:0 50%!important;animation:bspa 3.2s ease-in-out infinite alternate}
@keyframes bsro{0%{transform:translateX(0)}70%,100%{transform:translateX(110px)}}.an-roll{animation:bsro 3.2s ease-in-out infinite alternate}
@keyframes bstp{0%,55%,100%{transform:rotate(-34deg)}72%{transform:rotate(6deg)}}.an-tap{transform-origin:100% 100%!important;animation:bstp 1.4s ease-in infinite}
@keyframes bstl{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.an-tile{animation:bstl .5s ease both;animation-delay:var(--d,0s)}
@keyframes bssl{from{opacity:0;transform:translateX(-34px)}to{opacity:1;transform:none}}.an-slide{animation:bssl .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--d,0s)}
@keyframes bsfw{0%{transform:translateX(-16px);opacity:0}30%{opacity:.9}100%{transform:translateX(22px);opacity:0}}.an-flow{animation:bsfw 2.2s ease-out infinite;animation-delay:var(--d,0s)}
@keyframes bsbo{50%{transform:translateY(-3px)}}.an-bob{animation:bsbo .7s ease-in-out infinite}
@keyframes bsdi{0%{transform:translateY(-70px);opacity:0}55%{transform:translateY(5px);opacity:1}75%{transform:translateY(-3px)}100%{transform:none;opacity:1}}.an-dropin{animation:bsdi .9s cubic-bezier(.3,.7,.4,1) both;animation-delay:var(--d,0s)}
@keyframes bsdw{to{stroke-dashoffset:0}}.an-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:bsdw 1.7s ease both;animation-delay:var(--d,0s)}
@keyframes bslv{from{transform:scale(0) rotate(-20deg)}to{transform:none}}.an-leaf{transform-origin:0 100%!important;animation:bslv .7s cubic-bezier(.3,1.4,.5,1) both;animation-delay:var(--d,0s)}
@keyframes bsmv{from{transform:translateX(0)}to{transform:translateX(34px)}}.an-move{animation:bsmv 2s ease-in-out infinite alternate}
@keyframes bspl{0%,100%{opacity:.35}50%{opacity:1}}.an-glow{animation:bspl 1.6s ease-in-out infinite;animation-delay:var(--d,0s)}
@media (max-width:520px){.bs-chip{font-size:.94em}}
@media (prefers-reduced-motion:reduce){.bs *{animation:none!important;transition:none!important}.bs .bs-win,.bs .bs-nav,.bs .bs-art,.bs .bs-card,.bs .bs-chip,.bs .bs-toast,.bs .bs-halo,.bs .bs-btn{opacity:1;transform:none}.bs-h,.bs-p{transform:none}.bs-cur{display:none}}

/* ---- rozlozenie hera stranok odborov (partials/scene.blade.php + niche/show.blade.php) ---- */
.bs:not([data-sec]){display:none}
.ol-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.ol-hero .page-head{padding:40px 0 24px}
.ol-scene{padding:20px 0 12px;min-width:0}
@media (max-width:860px){.ol-hero{grid-template-columns:1fr;gap:0}.ol-hero .page-head{padding:28px 0 8px}.ol-scene{padding:8px 0 4px}}
