/*!
 * StormLevel, nový web (dizajn liquid glass)
 * Písmo Fira Sans a Fira Sans Extra Condensed: SIL Open Font License 1.1
 */
@font-face { font-family: 'Fira Sans Extra Condensed'; font-weight: 600; font-style: normal; font-display: swap; src: url(../fonts/FiraSansExtraCondensed-600.woff2) format('woff2'); }
@font-face { font-family: 'Fira Sans Extra Condensed'; font-weight: 700; font-style: normal; font-display: swap; src: url(../fonts/FiraSansExtraCondensed-700.woff2) format('woff2'); }
@font-face { font-family: 'Fira Sans'; font-weight: 400; font-style: normal; font-display: swap; src: url(../fonts/FiraSans-400.woff2) format('woff2'); }
@font-face { font-family: 'Fira Sans'; font-weight: 500; font-style: normal; font-display: swap; src: url(../fonts/FiraSans-500.woff2) format('woff2'); }
@font-face { font-family: 'Fira Sans'; font-weight: 400; font-style: italic; font-display: swap; src: url(../fonts/FiraSans-400-italic.woff2) format('woff2'); }
@font-face { font-family: 'Fira Sans'; font-weight: 600; font-style: normal; font-display: swap; src: url(../fonts/FiraSans-600.woff2) format('woff2'); }
@font-face { font-family: 'Fira Sans'; font-weight: 700; font-style: normal; font-display: swap; src: url(../fonts/FiraSans-700.woff2) format('woff2'); }
/* Logotypy klientov (--lg*, --lgr*) sú v assets/css/stormlevel-logos.css, pripája sa len na úvodnej stránke. */

:root{
  --ink:#251839;--plum:#8B1B51;--mag:#D91A5D;--coral:#F05D59;--gold:#F1B743;--mist:#E5E1E6;--fill:#F6F4F7;--muted:#6E6479;--green:#5B8F4E;
  --display:'Fira Sans Extra Condensed','Fira Sans',system-ui,sans-serif;
  --body:'Fira Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --wrap:1240px;--gut:clamp(16px,4vw,40px);--r:16px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --line4:linear-gradient(90deg,var(--plum) 0 25%,var(--mag) 25% 50%,var(--coral) 50% 75%,var(--gold) 75% 100%);
}
/* svetlá téma */
:root,:root[data-theme="light"]{
  --bg:#F6F4F7;--bg-2:#EFEBF1;--text:#251839;--text-2:#574C66;--text-3:#7A7088;
  --line:rgba(37,24,57,.11);--line-2:rgba(37,24,57,.24);--accent:#8B1B51;--accent-2:#D91A5D;
  --chip:rgba(255,255,255,.62);--chip-on:#251839;--chip-on-text:#fff;
  --logo-ink:#251839;--aur-o:.5;
}
:root[data-theme="dark"]{
  --bg:#121019;--bg-2:#1A1724;--text:#F2EFF4;--text-2:#C2BCCB;--text-3:#978FA3;
  --line:rgba(255,255,255,.1);--line-2:rgba(255,255,255,.26);--accent:#F1B743;--accent-2:#F1B743;
  --chip:rgba(255,255,255,.06);--chip-on:#F1B743;--chip-on-text:#251839;
  --logo-ink:#E5E1E6;--aur-o:.16;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#121019;--bg-2:#1A1724;--text:#F2EFF4;--text-2:#C2BCCB;--text-3:#978FA3;
  --line:rgba(255,255,255,.1);--line-2:rgba(255,255,255,.26);--accent:#F1B743;--accent-2:#F1B743;
  --chip:rgba(255,255,255,.06);--chip-on:#F1B743;--chip-on-text:#251839;--logo-ink:#E5E1E6;--aur-o:.16}}

/* sklo: premenné podľa podkladu */
.tone-light,:root[data-theme="light"] .tone-auto{
  --g-bg:linear-gradient(155deg,rgba(255,255,255,.78),rgba(255,255,255,.42));
  --g-rim1:rgba(255,255,255,1);--g-rim2:rgba(255,255,255,.55);--g-hi:rgba(255,255,255,.95);
  --g-shadow:0 30px 60px -30px rgba(37,24,57,.32),0 2px 8px rgba(37,24,57,.05);--g-sheen:rgba(255,255,255,.55);
}
.tone-dark,:root[data-theme="dark"] .tone-auto{
  --g-bg:linear-gradient(155deg,rgba(255,255,255,.13),rgba(255,255,255,.035));
  --g-rim1:rgba(255,255,255,.6);--g-rim2:rgba(255,255,255,.16);--g-hi:rgba(255,255,255,.25);
  --g-shadow:0 30px 70px -28px rgba(4,0,12,.75);--g-sheen:rgba(255,255,255,.14);
  --text:#F2EFF4;--text-2:#C9C0D2;--text-3:#A397AF;--line:rgba(255,255,255,.12);--line-2:rgba(255,255,255,.28);
  --accent:#F1B743;--accent-2:#F1B743;--chip:rgba(255,255,255,.07);--chip-on:#F1B743;--chip-on-text:#251839;--logo-ink:#E5E1E6;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 1.0625rem/1.6 var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
@supports not (overflow-x:clip){html{overflow-x:hidden}}
img,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit}
h1,h2,h3,h4{margin:0;font-weight:700}
p{margin:0;text-wrap:pretty}
li,dd,.msg{text-wrap:pretty}
section[id],footer[id]{scroll-margin-top:92px}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:8px}
.skip{position:fixed;left:16px;top:-80px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:12px;text-decoration:none}
.skip:focus{top:16px}

/* ---------- sklo ---------- */
.glass{position:relative;isolation:isolate;border-radius:var(--r);background:var(--g-bg);
  -webkit-backdrop-filter:blur(22px) saturate(175%);backdrop-filter:blur(22px) saturate(175%);
  box-shadow:var(--g-shadow),inset 0 1px 0 var(--g-hi),inset 0 -1px 0 rgba(255,255,255,.04)}
.glass::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:2;
  background:linear-gradient(140deg,var(--g-rim1),transparent 34%,transparent 64%,var(--g-rim2));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.glass::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:1;opacity:0;transition:opacity .4s var(--ease);
  background:radial-gradient(360px circle at var(--mx,50%) var(--my,0%),var(--g-sheen),transparent 60%)}
.glass:hover::after{opacity:1}

/* vrstvy farieb (strata) */
.strata{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.strata i{position:absolute;left:-25%;width:150%;border-radius:999px;filter:blur(38px);opacity:.9;transform:rotate(-7deg)}
.strata i:nth-child(1){top:4%;height:16%;background:linear-gradient(90deg,transparent,#4A3C63 30%,#3A2E50 70%,transparent);animation:drift 26s ease-in-out infinite alternate}
.strata i:nth-child(2){top:28%;height:12%;background:linear-gradient(90deg,transparent 5%,#5A4C74 40%,#3B2F52 85%,transparent);opacity:.7;animation:drift 31s ease-in-out -8s infinite alternate-reverse}
.strata i:nth-child(3){top:52%;height:5%;background:linear-gradient(90deg,transparent 15%,var(--gold) 50%,rgba(240,93,89,.6) 80%,transparent);animation:drift 23s ease-in-out -4s infinite alternate;opacity:.42}
.strata i:nth-child(4){top:70%;height:12%;background:linear-gradient(90deg,transparent 10%,#43365B 45%,#2F2444 80%,transparent);animation:drift 35s ease-in-out -12s infinite alternate-reverse;opacity:.8}
@keyframes drift{from{transform:translate3d(-7%,0,0) rotate(-7deg)}to{transform:translate3d(7%,-4%,0) rotate(-5deg)}}
.grain::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.13;mix-blend-mode:overlay;
  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' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}

/* jemné farebné škvrny pod svetlými sekciami */
.aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;-webkit-mask:linear-gradient(transparent,#000 14%,#000 86%,transparent);mask:linear-gradient(transparent,#000 14%,#000 86%,transparent)}
.aurora i{position:absolute;border-radius:50%;filter:blur(90px);opacity:var(--aur-o)}
.aurora i:nth-child(1){width:46vw;height:46vw;max-width:640px;max-height:640px;background:#BDB2CC;left:-12vw;top:8%}
.aurora i:nth-child(2){width:38vw;height:38vw;max-width:540px;max-height:540px;background:var(--gold);right:-8vw;top:30%;opacity:calc(var(--aur-o)*.75)}
.aurora i:nth-child(3){width:34vw;height:34vw;max-width:480px;max-height:480px;background:#E7DCC8;left:35%;bottom:-10%;opacity:calc(var(--aur-o)*.6)}

/* ---------- typografia ---------- */
.h-display{font-family:var(--display);font-weight:700;letter-spacing:-.005em;line-height:.94}
.h2{font-family:var(--display);font-weight:700;font-size:clamp(2.35rem,4.6vw,4.1rem);line-height:1;letter-spacing:-.005em;text-wrap:balance}
.h2 .tw{display:block}
.h2 .tw em,.why-head .h2 em{font-style:normal;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 40' preserveAspectRatio='none'%3E%3Cpath d='M3 14 C40 7 90 10 140 8 S250 5 300 7 S380 6 397 9 L395 30 C350 34 300 31 250 33 S140 35 90 32 S30 35 5 31 Z' fill='%23F1B743' fill-opacity='.68'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:0 86%;background-size:100% 38%;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .06em}
.js .h2 .tw em,.js .why-head .h2 em{background-size:0 38%;transition:background-size 1.1s cubic-bezier(.65,.05,.25,1) .45s}
.js .in .h2 .tw em,.js .why-head.in .h2 em{background-size:100% 38%}
@media (prefers-reduced-motion:reduce){.js .h2 .tw em,.js .why-head .h2 em{transition:none;background-size:100% 38%}}
:root[data-theme="dark"] .h2 .tw em,:root[data-theme="dark"] .why-head .h2 em,.tone-dark .h2 .tw em{color:var(--gold);background-position:0 100%;background-size:100% 12%}
.js:root[data-theme="dark"] .h2 .tw em,.js:root[data-theme="dark"] .why-head .h2 em,.js .tone-dark .h2 .tw em{background-size:0 12%}
.js:root[data-theme="dark"] .in .h2 .tw em,.js:root[data-theme="dark"] .why-head.in .h2 em,.js .tone-dark .in .h2 .tw em{background-size:100% 12%}
.lead{font-size:clamp(1.12rem,1.5vw,1.3rem);line-height:1.55;color:var(--text-2);max-width:60ch}
.sec{position:relative;padding:clamp(48px,5.6vw,80px) 0}
.sec > .wrap{position:relative;z-index:1}
#precostormlevel{padding-bottom:clamp(36px,4.5vw,60px)}
#akovampomahamerast{padding-top:clamp(36px,4.5vw,60px)}
#ktostojizastormlevel{padding-bottom:clamp(32px,4vw,56px)}
#kontakt{padding-top:clamp(32px,4vw,56px)}
.sec-head{display:grid;gap:20px;margin-bottom:clamp(32px,4vw,52px)}
:where(section,footer).tone-auto{background:var(--bg);color:var(--text)}
:where(section,footer).tone-dark{background:#251939;color:var(--text)}

/* tlačidlá */
.btn{--h:52px;display:inline-flex;align-items:center;gap:10px;height:var(--h);padding:0 24px;border-radius:999px;border:0;cursor:pointer;
  font-weight:600;font-size:1rem;text-decoration:none;white-space:nowrap;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s}
.btn-primary{color:#251839;background:linear-gradient(160deg,#F7CB6A,var(--gold) 55%,#E6A62E);box-shadow:0 10px 28px -12px rgba(241,183,67,.75),inset 0 1px 0 rgba(255,255,255,.55)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 34px -12px rgba(241,183,67,.85),inset 0 1px 0 rgba(255,255,255,.6)}
.btn-glass{color:var(--text);border-radius:999px}
.btn-glass.glass{--r:999px}
.btn-glass:hover{transform:translateY(-2px)}
.btn svg{width:18px;height:18px}
.chipx{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:999px;font-size:.84rem;font-weight:500;color:var(--text-2);background:var(--chip);border:1px solid var(--line)}

/* ---------- hlavička ---------- */
.hdr{position:fixed;z-index:50;top:0;left:0;right:0;pointer-events:none;transition:top .55s var(--ease)}
.hdr .bar{pointer-events:auto;margin:0 auto;width:100%;max-width:100%;height:80px;display:flex;align-items:center;gap:18px;
  padding:0 max(var(--gut),calc((100% - var(--wrap))/2 + var(--gut)));border-radius:0;
  transition:max-width .6s var(--ease),width .6s var(--ease),height .5s var(--ease),padding .6s var(--ease),border-radius .6s var(--ease),background .5s var(--ease)}
.hdr:not(.compact) .bar::before{background:linear-gradient(0deg,var(--g-rim2),transparent 1.5px)}
.hdr.compact{top:12px}
body.admin-bar .hdr{margin-top:32px}
@media (max-width:782px){body.admin-bar .hdr{margin-top:46px}}
.e-con.sl-el{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--content-width:100%;--container-max-width:100%;padding:0}
.sl-el > .elementor-widget-html,.sl-el .elementor-widget-container{margin:0!important;padding:0!important}
.hdr.compact .progress{left:22px;right:22px}
.hdr.compact .bar{width:calc(100% - 24px);max-width:calc(var(--wrap) + 120px);height:64px;padding:0 10px 0 22px;border-radius:18px}
.hdr[data-on="dark"] .bar{--g-bg:linear-gradient(155deg,rgba(58,42,84,.5),rgba(37,25,57,.42));--g-rim1:rgba(255,255,255,.6);--g-rim2:rgba(255,255,255,.18);--g-hi:rgba(255,255,255,.28);
  --g-shadow:0 18px 40px -18px rgba(0,0,0,.6);--g-sheen:rgba(255,255,255,.14);--text:#fff;--text-2:rgba(255,255,255,.78);--logo-ink:#E5E1E6;--line:rgba(255,255,255,.18)}
.hdr[data-on="light"] .bar{--g-bg:linear-gradient(155deg,rgba(255,255,255,.82),rgba(255,255,255,.62));--g-rim1:#fff;--g-rim2:rgba(255,255,255,.6);--g-hi:#fff;
  --g-shadow:0 18px 40px -20px rgba(37,24,57,.35);--g-sheen:rgba(255,255,255,.6);--text:#251839;--text-2:#4F4560;--logo-ink:#251839;--line:rgba(37,24,57,.14)}
.hdr .bar.refract{-webkit-backdrop-filter:blur(14px) saturate(180%);backdrop-filter:url(#liquid) blur(10px) saturate(185%)}
.logo{display:block;flex:none;color:var(--text)}
.logo svg{height:46px;width:auto;overflow:visible}
.hdr .logo svg{height:60px;transition:height .35s var(--ease)}
.hdr.compact .logo svg{height:50px}
.nav{display:flex;gap:2px;margin-left:auto}
.nav a{position:relative;display:block;padding:9px 13px;border-radius:999px;text-decoration:none;font-size:.95rem;font-weight:500;color:var(--text-2);transition:color .2s,background .2s}
.nav a:hover{color:var(--text);background:rgba(127,110,150,.12)}
.nav a.on{color:var(--text)}
.nav a.on::after{content:"";position:absolute;left:13px;right:13px;bottom:3px;height:2px;border-radius:2px;background:var(--line4)}
.hdr .cta{--h:46px;padding:0 20px;font-size:.95rem}
/* jemný odlesk tlačidla len v nerozbalenej hornej lište, pri posune sa zastaví */
.hdr .cta{position:relative;overflow:hidden;isolation:isolate}
.hdr .cta::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.7) 50%,transparent 68%);transform:translateX(-130%)}
.hdr:not(.compact) .cta{animation:ctaglow 6s ease-in-out 2s infinite}
.hdr:not(.compact) .cta::after{animation:ctashine 6s ease-in-out 2s infinite}
@keyframes ctashine{0%,60%{transform:translateX(-130%)}80%,100%{transform:translateX(130%)}}
@keyframes ctaglow{0%,50%,100%{box-shadow:0 10px 28px -12px rgba(241,183,67,.75),inset 0 1px 0 rgba(255,255,255,.55)}70%{box-shadow:0 0 0 5px rgba(241,183,67,.16),0 12px 30px -10px rgba(241,183,67,.95),inset 0 1px 0 rgba(255,255,255,.6)}}
@media (prefers-reduced-motion:reduce){.hdr .cta,.hdr .cta::after{animation:none!important}}
.iconbtn{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:transparent;cursor:pointer;color:var(--text);transition:background .2s,transform .2s}
.iconbtn:hover{background:rgba(127,110,150,.14)}
.iconbtn svg{width:20px;height:20px}
.i-sun{display:none}
/* prepínač režimu: označenie automatického režimu a prechod kruhom od tlačidla */
#themeBtn{position:relative}
#themeBtn::after{content:"A";position:absolute;right:-3px;bottom:-3px;width:17px;height:17px;border-radius:50%;display:none;place-items:center;font:700 .62rem/1 var(--body);background:var(--gold);color:#251939;box-shadow:0 0 0 2px rgba(0,0,0,.15)}
:root[data-tmode="auto"] #themeBtn::after{display:grid}
::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}
::view-transition-new(root){animation:vtcircle .75s cubic-bezier(.45,.05,.25,1)}
@keyframes vtcircle{from{clip-path:circle(0 at var(--vtx,90%) var(--vty,40px))}to{clip-path:circle(150vmax at var(--vtx,90%) var(--vty,40px))}}
/* úvod cez deň a v noci: viditeľná zmena hneď po prepnutí */
.hero-photo{transition:filter 1s var(--ease)}
:root[data-theme="light"] .hero[data-hv="e"] .hero-photo{filter:saturate(.85) brightness(.96)}
:root[data-theme="dark"] .hero[data-hv="e"] .hero-photo{filter:saturate(.6) brightness(.58)}
:root[data-theme="light"] .hero[data-hv="e"] .hero-photo::after{background:linear-gradient(0deg,#1B1329 0%,transparent 32%),linear-gradient(90deg,rgba(37,25,57,.28),rgba(255,255,255,.04))}
:root[data-theme="dark"] .hero[data-hv="e"] .hero-photo::after{background:linear-gradient(0deg,#120c1c 0%,transparent 40%),linear-gradient(90deg,rgba(20,12,32,.55),rgba(20,12,32,.25))}
:root[data-theme="dark"] .hero .hmark{opacity:.75;filter:blur(3px) saturate(.9) drop-shadow(0 0 26px rgba(240,93,89,.55))}

:root[data-theme="dark"] .i-sun{display:block}:root[data-theme="dark"] .i-moon{display:none}
.menu-btn{display:none}
.progress{position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;overflow:hidden;opacity:.9;z-index:3}
.progress span{display:block;height:100%;width:100%;background:var(--line4);clip-path:inset(0 calc(100% - var(--p,0)*100%) 0 0)}
.sheet{pointer-events:auto;position:absolute;top:calc(100% + 8px);left:var(--gut);right:var(--gut);padding:14px;display:none;--r:18px;
  --g-bg:linear-gradient(160deg,rgba(52,38,76,.96),rgba(30,20,46,.96));--g-rim1:rgba(255,255,255,.45);--g-rim2:rgba(255,255,255,.12);--g-hi:rgba(255,255,255,.18);--g-shadow:0 24px 50px -20px rgba(0,0,0,.7);--g-sheen:rgba(255,255,255,.08);
  color:#fff;--line:rgba(255,255,255,.14)}
.hdr[data-on="light"] .sheet{--g-bg:linear-gradient(160deg,rgba(255,255,255,.97),rgba(246,244,247,.96));--g-rim1:#fff;--g-rim2:rgba(255,255,255,.6);--g-hi:#fff;--g-shadow:0 24px 50px -20px rgba(37,24,57,.4);color:#251839;--line:rgba(37,24,57,.12)}
.sheet a{color:inherit}
.sheet a:active,.sheet a:hover{background:rgba(127,110,150,.16)}
.sheet a::after{content:"";width:8px;height:8px;border:solid currentColor;border-width:2px 2px 0 0;transform:rotate(45deg);opacity:.5}
.sheet a{display:flex;justify-content:space-between;align-items:center;padding:16px 14px;border-radius:10px;text-decoration:none;font-size:1.15rem;font-weight:600}
.sheet a + a{border-top:1px solid var(--line)}
.hdr.open .sheet{display:block;animation:sheetIn .35s var(--ease)}
@keyframes sheetIn{from{opacity:0;transform:translateY(-8px) scale(.98)}}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(120% 90% at 80% 10%,#2F2444 0%,#251939 45%,#15101F 100%);color:#fff;overflow:hidden}
.hero .wrap{position:relative;z-index:2}
.hero-photo{position:absolute;inset:0;z-index:0;background-position:70% 40%;background-size:cover;background-repeat:no-repeat;opacity:.62;filter:saturate(.75) contrast(1.05);animation:kenburns 38s ease-in-out infinite alternate}
/* symbol loga na oblohe: vrstvy fotka, symbol, budova */
.hstage{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none}
.hmark{position:absolute;width:26%;height:auto;aspect-ratio:713/213;overflow:visible;--mp:1;
  left:calc(41.44% + 38.67%*var(--mp));top:32%;
  transform:translate(-50%,-50%) rotate(-6deg);opacity:.62;filter:blur(3px) saturate(.75) drop-shadow(0 0 22px rgba(240,93,89,.3))}
html:not(.js) .hmark{display:none}
.hbld{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 40%;pointer-events:none}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(37,25,57,.94) 0%,rgba(37,25,57,.7) 45%,rgba(37,25,57,.3) 100%),linear-gradient(0deg,#1B1329 0%,transparent 45%)}
.hero .hero-photo ~ .strata{opacity:.4}
.hero .hero-photo ~ .wrap .lens{opacity:.55}
/* Varianty úvodnej fotky (data-hv na sekcii .hero) */
.hero[data-hv] .hero-photo{animation:kenburns2 40s ease-in-out infinite alternate}
@keyframes kenburns2{from{transform:scale(1.01)}to{transform:scale(1.06) translate3d(-1%,-.6%,0)}}
.hero[data-hv="b"] .hero-photo{opacity:1;filter:saturate(.55) brightness(.62) contrast(1.05)}
.hero[data-hv="b"] .hero-photo::after{background:linear-gradient(90deg,rgba(37,25,57,.9) 0%,rgba(37,25,57,.6) 42%,rgba(37,25,57,.18) 100%),linear-gradient(0deg,#1B1329 0%,transparent 40%)}
.hero[data-hv="b"] .strata{opacity:.14}
.hero[data-hv="c"] .hero-photo{opacity:1;filter:contrast(1.15) brightness(.95);background-color:#35264D;background-blend-mode:luminosity}
.hero[data-hv="c"] .hero-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,12,32,.88) 0%,rgba(20,12,32,.55) 45%,rgba(20,12,32,.1) 100%),linear-gradient(0deg,#1B1329 0%,transparent 40%)}
.hero[data-hv="c"] .hero-photo::after{background:linear-gradient(115deg,rgba(37,25,57,0) 40%,rgba(139,27,81,.18) 80%,rgba(241,183,67,.16) 100%);mix-blend-mode:soft-light}
.hero[data-hv="c"] .strata{opacity:.12}
.hero[data-hv="d"] .hero-photo{opacity:1;filter:grayscale(1) contrast(1.15) brightness(.6)}
.hero[data-hv="d"] .hero-photo::after{background:linear-gradient(90deg,rgba(18,14,26,.92) 0%,rgba(18,14,26,.55) 45%,rgba(18,14,26,.1) 100%),linear-gradient(0deg,#16111F 0%,transparent 40%)}
.hero[data-hv="d"] .strata i{display:none}.hero[data-hv="d"] .strata i:nth-child(3){display:block;opacity:.5}
.hero[data-hv="e"] .hero-photo{opacity:1;filter:saturate(.7) brightness(.78)}
.hero[data-hv="e"] .hero-photo::after{background:linear-gradient(0deg,#1B1329 0%,transparent 35%),linear-gradient(90deg,rgba(37,25,57,.35),rgba(37,25,57,.05))}
.hero[data-hv="e"] .strata{opacity:0}
.hero[data-hv="e"] .hero-copy{background:linear-gradient(155deg,rgba(37,25,57,.62),rgba(37,25,57,.42));-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);
  border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:clamp(24px,3.4vw,44px);box-shadow:0 30px 60px -30px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.18)}
.hvsw{position:fixed;left:50%;bottom:16px;translate:-50% 0;max-width:calc(100vw - 16px);overflow-x:auto;scrollbar-width:none;z-index:95;display:flex;align-items:center;gap:6px;padding:6px 6px 6px 14px;border-radius:999px;background:rgba(20,14,30,.88);color:#fff;font:600 .85rem/1 var(--body);box-shadow:0 10px 30px rgba(0,0,0,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.hvsw > *{flex:none}
.hvsw button{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;cursor:pointer;font:600 .9rem/1 var(--body)}
.hvsw button[aria-pressed="true"]{background:var(--gold);color:#251939;border-color:transparent}
body.ck-on .hvsw{bottom:auto;top:90px}
body.lock .hvsw,body.nwin-open .hvsw{display:none}
@keyframes kenburns{from{transform:scale(1.04) translate3d(0,0,0)}to{transform:scale(1.14) translate3d(-2%,-1.5%,0)}}
.hero-grid{flex:1;display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(32px,5vw,80px);align-items:center;padding-top:150px;padding-bottom:60px}
.hero h1{font-size:clamp(3.4rem,8vw,7.4rem);color:#fff;text-wrap:balance}
.hero h1 .l2{display:block;background:linear-gradient(100deg,#fff 0%,#FBE7BD 45%,var(--gold) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.brandline{width:148px;height:6px;border-radius:3px;background:var(--line4);margin:30px 0 26px}
.hero .lead{color:rgba(255,255,255,.84);max-width:30ch;font-size:clamp(1.2rem,1.9vw,1.55rem);line-height:1.45}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}
.hero .btn-glass{color:#fff}
.stack{position:relative;height:560px;--px:0;--py:0}
.stat{position:absolute;width:min(380px,84%);padding:30px 32px 28px;color:#fff;transition:transform .6s var(--ease)}
.stat b{display:block;font-family:var(--display);font-size:clamp(4.4rem,7.4vw,6.2rem);line-height:.9;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.stat b sup{font-size:.5em;vertical-align:.7em;margin-left:2px;color:var(--gold)}
.stat > span{display:block;margin-top:10px;font-size:clamp(1.05rem,1.3vw,1.22rem);color:rgba(255,255,255,.8)}
.stat.s1{top:0;left:4%;transform:translate3d(calc(var(--px)*-14px),calc(var(--py)*-10px),0)}
.stat.s2{top:190px;left:30%;transform:translate3d(calc(var(--px)*22px),calc(var(--py)*16px),0)}
.stat.s3{top:380px;left:12%;transform:translate3d(calc(var(--px)*-30px),calc(var(--py)*22px),0)}
.lens{position:absolute;right:-20%;top:96px;width:640px;height:auto;aspect-ratio:713/213;overflow:visible;opacity:.85;pointer-events:none;
  transform:translate3d(calc(var(--px)*10px),calc(var(--py)*8px),0) rotate(-7deg);transition:transform .8s var(--ease);filter:drop-shadow(0 30px 40px rgba(0,0,0,.25))}
@keyframes spin{to{transform:rotate(360deg)}}

/* pás log */
.logos{position:relative;z-index:2;padding-top:22px;padding-bottom:30px}
.logos-cap{font-size:.92rem;color:rgba(255,255,255,.62);margin-bottom:14px}
.marquee{--r:16px;overflow:hidden;padding:20px 0;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.track{display:flex;align-items:center;gap:56px;width:max-content;animation:marquee 70s linear infinite;padding-left:56px}
.marquee:hover .track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
.lg{flex:none;height:38px;background:currentColor;color:rgba(255,255,255,.74);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat;transition:color .3s}
.lg:hover{color:#fff}
.lg.tall{height:52px}
.lg.sm{height:27px}.lg.sm.tall{height:38px}

/* ---------- prečo ---------- */
.why-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(36px,6vw,96px);align-items:start}
.why-head{position:sticky;top:120px}
.why-head .h2{font-size:clamp(2.6rem,5.4vw,4.8rem)}
.why-head .h2 span{display:block}

.why-intro p + p{margin-top:18px}
.why-intro{font-size:1.14rem;color:var(--text-2);margin-bottom:40px}
.why-intro p:first-child{color:var(--text);font-size:1.28rem;line-height:1.5}
.acc{display:grid;gap:14px}
@media (min-width:901px){
  .why-grid{grid-template-areas:"head intro" "acc acc";row-gap:clamp(40px,4.5vw,64px);align-items:end}
  .why-side{display:contents}
  .why-head{grid-area:head;position:static}
  .why-intro{grid-area:intro}
  .why-intro p:last-child{margin-bottom:0}
  .acc{grid-area:acc;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}
  .acc.flat details{display:flex;flex-direction:column}
  .acc.flat summary{cursor:default;padding-bottom:12px}
  .acc.flat .pm{display:none}
  .acc.flat .body{padding:0 28px 26px 78px}
}
.acc details{--r:14px;padding:0}
.acc summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:22px 24px;border-radius:14px;position:relative;z-index:3}
.acc summary::-webkit-details-marker{display:none}
.acc summary h3{font-size:1.3rem;font-weight:600;line-height:1.25;flex:1}
.acc .lvl{flex:none;width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:var(--chip);border:1px solid var(--line)}
.acc .lvl i{display:block;width:16px;height:3px;border-radius:2px;background:var(--c);box-shadow:0 -5px 0 var(--c),0 5px 0 var(--c);opacity:.95}
.acc .pm{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid var(--line-2);position:relative;transition:transform .35s var(--ease),background .3s}
.acc .pm::before,.acc .pm::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.6px;background:currentColor;transform:translate(-50%,-50%)}
.acc .pm::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .35s var(--ease)}
.acc details[open] .pm{transform:rotate(180deg);background:var(--chip)}
.acc details[open] .pm::after{transform:translate(-50%,-50%) rotate(0)}
.acc .body{padding:0 24px 24px 78px;color:var(--text-2);position:relative;z-index:3}
.statement{position:relative;margin-top:clamp(48px,6vw,84px);border-radius:20px;overflow:hidden;background:#251939;color:#fff;padding:clamp(40px,6vw,84px) clamp(24px,6vw,84px)}
.statement-in{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}
.statement p.pre{font-size:1.15rem;color:rgba(255,255,255,.8);max-width:52ch;margin-bottom:22px}
.statement blockquote{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(2.1rem,4.3vw,3.9rem);line-height:1.02;text-wrap:balance;max-width:20ch}
.statement blockquote em{font-style:normal;color:var(--gold)}
.statement .smark{position:absolute;z-index:0;right:-12%;top:50%;width:68%;height:auto;aspect-ratio:713/213;overflow:visible;transform:translateY(-46%) rotate(-8deg);opacity:.85;pointer-events:none}
.statement .sfrost{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(37,25,57,.82) 0%,rgba(37,25,57,.6) 42%,rgba(37,25,57,.12) 75%,rgba(37,25,57,.05) 100%);
  -webkit-backdrop-filter:blur(7px) saturate(140%);backdrop-filter:blur(7px) saturate(140%)}
.statement .sfrost::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 52%,rgba(255,255,255,.08) 62%,transparent 72%)}
.claims{display:grid;align-items:end}
.statement .claims blockquote{grid-area:1/1;opacity:0;transform:translateY(16px);transition:opacity .9s var(--ease),transform .9s var(--ease);pointer-events:none}
.statement .claims blockquote.on{opacity:1;transform:none;pointer-events:auto}
html:not(.js) .statement .claims blockquote:first-child{opacity:1;transform:none}
html:not(.js) .cldots{display:none}
.cldots{display:flex;gap:8px;margin-top:30px}
.cldots button{width:30px;height:20px;padding:8px 0;border:0;background:none;cursor:pointer;position:relative}
.cldots button::before{content:"";position:absolute;left:0;right:0;top:8px;height:4px;border-radius:2px;background:rgba(255,255,255,.22)}
.cldots button i{position:absolute;left:0;right:0;top:8px;height:4px;border-radius:2px;background:var(--gold);transform-origin:left;transform:scaleX(0)}
.cldots button.on i{animation:clprog 7s linear forwards}
.statement.paused .cldots button.on i{animation-play-state:paused}
.cldots.still button.on i{animation:none;transform:none}
@keyframes clprog{to{transform:scaleX(1)}}

/* ---------- služby ---------- */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.svc{--r:14px;display:flex;flex-direction:column;gap:14px;min-height:268px;padding:26px 26px 22px;color:var(--text);transition:transform .35s var(--ease)}
.svc:hover{transform:translateY(-4px)}
.svc > *:not(.more){position:relative;z-index:3}
.svc .more .lk{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:space-between;width:100%;position:static}
.svc .more span,.svc .more i{position:relative;z-index:3}
.svc .more .lk::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:4}
.svc:has(.lk:focus-visible){outline:2px solid var(--gold);outline-offset:3px}
.ref .art .strata i{animation:none;filter:blur(16px);height:20%;opacity:1}
.svc .no{font-family:var(--display);font-weight:700;font-size:clamp(3rem,4.2vw,3.9rem);line-height:.82;letter-spacing:-.01em;font-variant-numeric:tabular-nums;display:flex;align-items:flex-end;gap:14px;margin-bottom:4px;color:transparent;--nb:#DDD5E3;background:linear-gradient(100deg,var(--gold),#E6A62E) no-repeat 0 0/0% 100%,linear-gradient(var(--nb),var(--nb));-webkit-background-clip:text;background-clip:text;transition:background-size .5s var(--ease)}
:root[data-theme="dark"] .svc .no{--nb:rgba(255,255,255,.16)}
.svc .no::after{content:"";height:1px;flex:1;margin-bottom:.12em;background:var(--line);-webkit-text-stroke:0}
.svc:hover .no,.svc:focus-within .no{background-size:100% 100%,auto}
.svc h3{font-size:1.36rem;line-height:1.2;font-weight:600;text-wrap:balance}
.svc p{font-size:.98rem;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.svc .more{margin-top:auto;display:flex;align-items:center;justify-content:space-between;font-size:.92rem;font-weight:600;color:var(--text)}
.svc .more i{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);transition:background .3s,color .3s,transform .3s var(--ease)}
.svc:hover .more i{background:var(--text);color:var(--bg);transform:rotate(90deg)}
.svc .more svg{width:16px;height:16px}
.ctaband{position:relative;overflow:hidden;margin-top:28px;border-radius:18px;background:#251839;color:#fff;padding:clamp(30px,4vw,48px);display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.ctaband .strata i{filter:blur(40px);opacity:.7}
.ctaband > div:not(.strata){position:relative;z-index:2}
.ctaband h3{font-family:var(--display);font-size:clamp(2rem,3.4vw,2.9rem);line-height:1}
.ctaband p{color:rgba(255,255,255,.82);margin-top:10px;max-width:46ch}

/* dialóg služby */
dialog{border:0;padding:0;background:transparent;color:var(--text);max-width:min(760px,calc(100vw - 24px));width:100%;max-height:calc(100dvh - 40px);overflow:visible}
dialog:focus,dialog:focus-visible{outline:none}
dialog::backdrop{background:rgba(19,12,31,.45);-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%)}
dialog[open]{animation:dlgIn .4s var(--ease)}
@keyframes dlgIn{from{opacity:0;transform:translateY(16px) scale(.98)}}
.dlg{--r:20px;max-height:calc(100dvh - 40px);overflow:auto;padding:clamp(26px,4vw,44px)}
.dlg{overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none}
.dlg::-webkit-scrollbar{display:none;width:0;height:0}
.dlg.glass::before,.dlg.glass::after{display:none}
dialog::after,.dlgbox::after{content:"";position:absolute;inset:0;border-radius:20px;padding:1px;pointer-events:none;z-index:5;background:linear-gradient(140deg,var(--g-rim1),transparent 34%,transparent 64%,var(--g-rim2));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.dlg .sfade{--p:clamp(26px,4vw,44px);position:sticky;z-index:5;display:block;height:0;margin:0 calc(var(--p)*-1);pointer-events:none;opacity:0;transition:opacity .3s var(--ease);--fc:rgba(247,245,249,.97)}
.dlg .sfade::before{content:"";position:absolute;left:0;right:0;height:64px}
:root[data-theme="dark"] .dlg .sfade{--fc:rgba(40,28,58,.97)}
.dlg .sfade.top{top:0}
.dlg .sfade.top::before{top:calc(var(--p)*-1);background:linear-gradient(var(--fc) 30%,transparent);border-radius:20px 20px 0 0}
.dlg .sfade.top button{top:calc(8px - var(--p))}
.dlg .sfade.bot{bottom:0}
.dlg .sfade.bot::before{bottom:calc(var(--p)*-1);background:linear-gradient(transparent,var(--fc) 70%);border-radius:0 0 20px 20px}
.dlg .sfade.bot button{bottom:calc(10px - var(--p))}
.dlg .sfade.on{opacity:1}
.dlg.hasph{padding-top:0}
.dlg.hasph .sfade.top::before{top:0}
.dlg.hasph .sfade.top button{top:8px}
.dlg .sfade button{position:absolute;left:50%;transform:translateX(-50%);z-index:1;pointer-events:auto;display:flex;align-items:center;gap:6px;height:32px;padding:0 12px 0 10px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg);color:var(--text-2);font:500 .82rem/1 var(--body);cursor:pointer;box-shadow:0 6px 16px -8px rgba(0,0,0,.35)}
.dlg .sfade button svg{width:16px;height:16px}
.dlg .sfade.bot button svg{animation:nudge 1.6s ease-in-out infinite}
.dlg .sfade.top button svg{animation:nudgeu 1.6s ease-in-out infinite}
@keyframes nudge{50%{transform:translateY(3px)}}@keyframes nudgeu{50%{transform:translateY(-3px)}}
.dlg-photo{margin:0 calc(clamp(26px,4vw,44px)*-1) 26px;height:200px;border-radius:20px 20px 0 0;background-position:center;background-size:cover;background-repeat:no-repeat;position:relative}
.dlg-photo::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(37,25,57,.1),rgba(37,25,57,.55))}
.dlg-photo:empty:not([style]){display:none}
.dlg .lead2{font-size:1.15rem;line-height:1.5;color:var(--text);margin-bottom:12px}
.rlref{display:grid;gap:8px}
.rlref button{display:grid;grid-template-columns:52px 1fr 16px;gap:12px;align-items:center;text-align:left;width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--chip);cursor:pointer;color:var(--text);font:inherit;font-size:.94rem;line-height:1.35}
.rlref button:hover{border-color:var(--accent)}
.rlref .y{font-family:var(--display);font-weight:600;color:var(--accent);font-size:1.1rem}
.rlref svg{width:16px;height:16px}
.grp{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.grp > div{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--chip)}
.grp b{display:block;font-size:.95rem;font-weight:600;margin-bottom:6px;line-height:1.3}
.grp ul{margin:0;padding-left:18px;color:var(--text-2);font-size:.92rem;line-height:1.45}
.grp li+li{margin-top:3px}
.grp li.hd{list-style:none;margin-left:-18px;margin-top:10px;font-weight:600;color:var(--text)}
.grp li.hd:first-child{margin-top:0}
.dlg .intro{color:var(--text-2);font-size:.96rem;margin:-4px 0 14px}
:root[data-theme="light"] .dlg{--g-bg:linear-gradient(155deg,rgba(255,255,255,.92),rgba(255,255,255,.78))}
:root[data-theme="dark"] .dlg{--g-bg:linear-gradient(155deg,rgba(44,30,64,.92),rgba(30,20,45,.86))}
.dlg > *{position:relative;z-index:3}
.dlg:focus,.dlg:focus-visible{outline:none}
.xclose:focus{outline:none}
.xclose:focus-visible::after{opacity:1;filter:blur(3px)}
.xclose{position:absolute;right:18px;top:18px;z-index:6;border-color:transparent;background:rgba(255,255,255,.55)}
:root[data-theme="dark"] .xclose{background:rgba(255,255,255,.08)}
.xclose::before,.xclose::after{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none}
.xclose::before{background:conic-gradient(from 0deg,#8B1B51 0%,#D91A5D 18%,#F05D59 34%,#F1B743 48%,#FFD56B 62%,#F1B743 74%,#F05D59 86%,#8B1B51 100%);
  -webkit-mask:radial-gradient(closest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2px));mask:radial-gradient(closest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2px));animation:ringspin 4s linear infinite}
.xclose::after{inset:-5px;background:conic-gradient(from 0deg,rgba(139,27,81,.45) 0%,rgba(217,26,93,.45) 18%,rgba(240,93,89,.5) 34%,rgba(241,183,67,.75) 50%,rgba(255,213,107,.8) 62%,rgba(241,183,67,.75) 74%,rgba(240,93,89,.5) 86%,rgba(139,27,81,.45) 100%);filter:blur(6px);opacity:.6;
  -webkit-mask:radial-gradient(closest-side,transparent 70%,#000 85%,transparent 100%);mask:radial-gradient(closest-side,transparent 70%,#000 85%,transparent 100%);animation:ringspin 4s linear infinite reverse,ringpulse 2.4s ease-in-out infinite}
.xclose:hover::before{animation-duration:1.2s}
.xclose svg{position:relative;z-index:1}
.xclose:hover{transform:rotate(90deg)}
.dlg .no{font-family:var(--display);font-weight:600;color:var(--accent);font-size:1.1rem}
.dlg h3{font-family:var(--display);font-size:clamp(2rem,4vw,2.9rem);line-height:1;margin:8px 48px 18px 0;text-wrap:balance}
.dlg p.first{color:var(--text-2);font-size:1.05rem}
.dlg h4{font-size:.98rem;font-weight:600;margin:28px 0 12px;color:var(--text)}
.ben{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.ben li{position:relative;padding-left:30px;color:var(--text-2);font-size:.98rem;line-height:1.45}
.ben li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:var(--gold)}
.ben li::after{content:"";position:absolute;left:7px;top:6px;width:5px;height:9px;border:solid #251839;border-width:0 2px 2px 0;transform:rotate(45deg)}
.rolechips{display:flex;flex-wrap:wrap;gap:8px}
.rolechips button{height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--chip);cursor:pointer;font-size:.92rem;font-weight:500}
.rolechips button:hover{border-color:var(--accent)}
.dlg .foot{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding-top:22px;border-top:1px solid var(--line)}
.foot-b{display:flex;flex-wrap:wrap;gap:8px}
.foot-b .btn[hidden]{display:none}
.dlg .foot small{color:var(--text-3)}

/* ---------- výsledky ---------- */
.res{background:radial-gradient(110% 90% at 15% 100%,#30254A 0%,#251939 45%,#15101F 100%);color:#fff;overflow:hidden}
.res .strata{transform:scaleY(-1)}
.res-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.tile{--r:16px;grid-column:span 2;padding:26px 28px 28px;min-height:250px;display:flex;flex-direction:column}
.tile:nth-child(4),.tile:nth-child(5){grid-column:span 3;min-height:210px}
.tile > *{position:relative;z-index:3}
.tile .top{display:flex;align-items:center;justify-content:space-between;color:rgba(255,255,255,.86);font-weight:600}
.tile .top svg{width:26px;height:26px;color:var(--gold)}
.tile .val{font-family:var(--display);font-weight:700;font-size:clamp(3.6rem,6.4vw,5.6rem);line-height:.9;margin-top:auto;padding-top:26px;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.tile .val small{font-size:.36em;font-weight:600;margin-right:.3em;color:rgba(255,255,255,.7);letter-spacing:0}
.tile .val.word{font-size:clamp(2.6rem,4.4vw,3.8rem)}
.tile .cap{color:rgba(255,255,255,.78);margin-top:10px}
.gauge{height:6px;border-radius:3px;background:rgba(255,255,255,.12);margin-top:18px;overflow:hidden}
.gauge span{display:block;height:100%;width:var(--g);border-radius:3px;background:var(--line4);background-size:calc(100%/var(--gf)) 100%;transform-origin:0 50%;transform:scaleX(0);transition:transform 1.6s var(--ease) .2s}
.in .gauge span,.no-anim .gauge span{transform:scaleX(1)}

/* ---------- referencie ---------- */
.ref-wrap{position:relative}
.ref-rail{display:flex;gap:18px;overflow-x:auto;padding:6px var(--gut) 76px;margin:0 calc(var(--gut)*-1) -46px;scrollbar-width:none;-webkit-mask:linear-gradient(90deg,transparent,#000 var(--gut),#000 calc(100% - var(--gut)),transparent);mask:linear-gradient(90deg,transparent,#000 var(--gut),#000 calc(100% - var(--gut)),transparent)}
/* šípky po stranách lišty, vo výške tmavej hlavičky kariet, aby neprekrývali text */
.rnav{position:absolute;top:75px;translate:0 -50%;z-index:5;width:52px;height:52px;color:#fff}
.rnav.glass{--g-bg:linear-gradient(155deg,rgba(255,255,255,.2),rgba(255,255,255,.06));--g-rim1:rgba(255,255,255,.6);--g-rim2:rgba(255,255,255,.2);--g-hi:rgba(255,255,255,.3);--g-shadow:0 10px 24px -10px rgba(0,0,0,.5);-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%)}
.rnav:disabled{opacity:.35;cursor:default}
.rnav.prev{left:calc(var(--gut)*-.5 - 10px)}.rnav.next{right:calc(var(--gut)*-.5 - 10px)}
.rnav svg{position:relative;z-index:3}
.ref-rail::-webkit-scrollbar{display:none}
.ref{--r:16px;flex:none;width:min(330px,78vw);display:flex;flex-direction:column;overflow:hidden;transition:transform .35s var(--ease)}
.ref:hover{transform:translateY(-4px)}
.ref > *:not(.more){position:relative;z-index:3}
.ref .art{position:relative;height:138px;overflow:hidden;background:#251939;border-radius:16px 16px 0 0;color:#fff;padding:18px 22px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.ref .art .strata i{filter:blur(26px)}
.ref .art .mark,.ref .art .frost{display:none}
[data-rv="mark"] .ref .art .strata{display:none}
[data-rv="mark"] .ref .art{background:radial-gradient(130% 150% at 90% 0%,#3A2B52 0%,#251939 55%,#1B1229 100%)}
[data-rv="mark"] .ref .art .mark{display:block;position:absolute;z-index:0;opacity:.72;filter:saturate(.95);width:56%;height:auto;aspect-ratio:713/213;right:7%;top:12%;transform:rotate(-4deg)}
[data-rv="mark"] .ref .art .frost{display:block;position:absolute;inset:0;z-index:1;
  background:linear-gradient(160deg,rgba(255,255,255,.08) 0%,rgba(37,25,57,.1) 45%,rgba(30,20,46,.46) 100%);
  -webkit-backdrop-filter:blur(5px) saturate(120%);backdrop-filter:blur(5px) saturate(120%);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(255,255,255,.06)}
[data-rv="mark"] .ref .art .frost::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.12) 42%,transparent 54%)}
[data-rv="mark"] .ref:nth-child(6n+2) .art .mark{width:52%;right:auto;left:8%;top:10%;transform:rotate(3deg)}
[data-rv="mark"] .ref:nth-child(6n+3) .art .mark{width:60%;right:20%;top:8%;transform:rotate(-7deg)}
[data-rv="mark"] .ref:nth-child(6n+4) .art .mark{width:50%;right:5%;top:16%;transform:none}
[data-rv="mark"] .ref:nth-child(6n+5) .art .mark{width:54%;right:auto;left:24%;top:12%;transform:rotate(5deg) scaleX(-1)}
[data-rv="mark"] .ref:nth-child(6n) .art .mark{width:58%;right:auto;left:6%;top:9%;transform:rotate(-5deg)}
.ref .art b{position:relative;z-index:2;font-family:var(--display);font-size:2.3rem;line-height:.8;font-weight:700;color:var(--gold);flex:none}
.ref .art .rl{position:relative;z-index:2;height:50px;max-width:72%;flex:0 1 auto;background:#fff;-webkit-mask:var(--m) left bottom/contain no-repeat;mask:var(--m) left bottom/contain no-repeat}
.ref .art .rl.tall{height:64px}
.ref .art .rn{position:relative;z-index:2;font-family:var(--display);font-weight:600;font-size:1.32rem;line-height:1.1;color:#fff;max-width:74%;text-wrap:balance}
.ref .in-r{padding:20px 22px 18px;display:flex;flex-direction:column;gap:12px;flex:1}
.ref .cl{font-size:.86rem;color:var(--text-3);line-height:1.35}
.ref .more{margin-top:auto;padding-top:4px}
.ref .more .lk{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:.92rem;font-weight:600;color:var(--text)}
.ref .more .lk::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:4}
.ref .more span,.ref .more i{position:relative;z-index:3}
.ref .more i{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);transition:background .3s,color .3s,transform .3s var(--ease)}
.ref:hover .more i{background:var(--text);color:var(--bg);transform:rotate(90deg)}
.ref .more svg{width:16px;height:16px}
.ref:has(.lk:focus-visible){outline:2px solid var(--gold);outline-offset:3px}
.ref h3{font-size:1.1rem;line-height:1.3;font-weight:600;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.ref p{font-size:.96rem;color:var(--text-2)}
.ref .roles{display:flex;flex-wrap:wrap;gap:6px}
.rail-ctl{display:flex;gap:10px;align-items:center}
.rail-ctl .iconbtn{width:50px;height:50px}
.rdlg-logo{height:56px;margin:6px 0 14px;max-width:70%;background:var(--text);-webkit-mask:var(--m) left center/contain no-repeat;mask:var(--m) left center/contain no-repeat}
.all{margin-top:34px}
.all > summary{left:50%;transform:translateX(-50%);transition:left .75s cubic-bezier(.45,.05,.25,1),transform .75s cubic-bezier(.45,.05,.25,1)}
.all[open] > summary{left:0;transform:none}
.all[open] > :not(summary){animation:allin .7s var(--ease) .6s both}
.all.closing > :not(summary){animation:allout .35s var(--ease) both}
@keyframes allin{from{opacity:0;transform:translateY(18px)}}
@keyframes allout{to{opacity:0;transform:translateY(12px)}}
@media (prefers-reduced-motion:reduce){.all > summary{transition:none}.all[open] > :not(summary),.all.closing > :not(summary){animation:none}}
.all > summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:12px;height:54px;padding:0 24px;border-radius:999px;font-weight:600;position:relative;z-index:3}
.all > summary::-webkit-details-marker{display:none}
.all > summary .glass-in{position:absolute;inset:0;border-radius:inherit;z-index:-1}
.all[open] > summary svg{transform:rotate(180deg)}
.all > summary svg{width:18px;height:18px;transition:transform .3s}
.yrs{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 18px}
.yrs button{height:38px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);background:var(--chip);cursor:pointer;font-weight:500;font-variant-numeric:tabular-nums}
.yrs button[aria-pressed="true"]{background:var(--chip-on);color:var(--chip-on-text);border-color:transparent}
.rlist{--r:16px;padding:6px 0}
.rlist details{border-top:1px solid var(--line);position:relative;z-index:3}
.rlist details:first-child{border-top:0}
.rlist summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:64px 1.1fr 1.6fr 24px;gap:20px;align-items:center;padding:16px 24px}
.rlist summary::-webkit-details-marker{display:none}
.rlist summary .y{font-family:var(--display);font-weight:600;font-size:1.15rem;color:var(--accent);font-variant-numeric:tabular-nums}
.rlist summary .c{font-weight:600;font-size:.98rem;line-height:1.35}
.rlist summary .n{color:var(--text-2);font-size:.96rem;line-height:1.4}
.rlist summary .ch{width:18px;height:18px;transition:transform .3s;color:var(--text-3)}
.rlist details[open] .ch{transform:rotate(180deg)}
.rlist .d{padding:0 24px 22px calc(24px + 64px + 20px);display:grid;gap:12px;color:var(--text-2);font-size:.98rem}
.rlist .d .roles{display:flex;flex-wrap:wrap;gap:6px}
.rlist details[hidden]{display:none}

/* ---------- Nallia ---------- */
.nal{background:radial-gradient(90% 80% at 85% 30%,#30254A 0%,#221832 50%,#140F1E 100%);color:#fff;overflow:hidden}
.nal-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,96px);align-items:center}
.nal .nlogo{display:block;width:min(340px,80%);height:auto;margin-bottom:6px}
.nal h2{font-family:var(--display);font-size:clamp(4rem,9vw,8rem);line-height:.85;font-weight:700;letter-spacing:-.01em}
.nal .sub{display:block;font-family:var(--display);font-size:clamp(1.7rem,3vw,2.5rem);font-weight:600;color:var(--gold);margin-top:12px}
.nal .lead{color:rgba(255,255,255,.84);margin:26px 0 34px;max-width:44ch}
.stage{position:relative;min-height:600px}
.stage .orb{inset:auto;left:50%;top:6%;margin:0;width:min(400px,76vw);height:min(400px,76vw);translate:-50% 0;opacity:.55;filter:blur(40px)}
.nl-wrap{position:absolute;left:75%;bottom:96px;width:min(300px,50%);translate:-50% 0;z-index:2}
.nl{position:relative;aspect-ratio:820/993;transition:opacity .9s var(--ease),transform 1.1s cubic-bezier(.2,.9,.25,1.15)}
.js .nl:not(.in){opacity:0;transform:translateY(28px) scale(.97)}
.nl img{position:absolute;inset:0;width:100%;height:100%}
.nl .hand{transform-origin:15.05% 44.66%}
.nl .ant{transform-origin:41.06% 7.74%}
.nl.hi .hand{animation:wave 2.4s cubic-bezier(.45,.05,.35,1)}
.nl.hi .ant{animation:ant 2.4s ease-out}
@keyframes wave{0%,100%{transform:rotate(0)}14%{transform:rotate(-14deg)}30%{transform:rotate(7deg)}46%{transform:rotate(-12deg)}62%{transform:rotate(5deg)}78%{transform:rotate(-4deg)}}
@keyframes ant{0%,100%{transform:rotate(0)}18%{transform:rotate(-7deg)}38%{transform:rotate(5deg)}58%{transform:rotate(-3deg)}78%{transform:rotate(1.5deg)}}
.nl .glow{position:absolute;border-radius:50%;background:radial-gradient(closest-side,rgba(255,196,90,.6),rgba(255,170,40,.2) 55%,transparent);mix-blend-mode:screen;opacity:.2;animation:glow 4s ease-in-out infinite alternate}
.nl .glow.l{left:33.5%;top:15.2%;width:19.6%;height:20.5%}.nl .glow.r{left:62.3%;top:14.7%;width:19.6%;height:20.5%}
@keyframes glow{to{opacity:.5}}
.nl-shadow{position:absolute;left:75%;bottom:86px;width:min(250px,44%);height:30px;translate:-50% 0;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.5),transparent)}
.bub{position:absolute;z-index:3;--r:16px;color:#fff;--g-bg:linear-gradient(155deg,rgba(255,255,255,.16),rgba(255,255,255,.05));transition:opacity .6s var(--ease),transform .6s var(--ease)}
.bub > *{position:relative;z-index:3}
.bub.b3{left:0;right:0;bottom:24px;margin:0 auto;width:min(460px,100%);display:flex;align-items:center;gap:8px;padding:7px 7px 7px 20px;border-radius:999px;transition-delay:1.6s}
.bub.b3:focus-within{box-shadow:var(--g-shadow),0 0 0 2px rgba(241,183,67,.6)}
.bub input{flex:1;min-width:0;background:none;border:0;outline:none;color:#fff;font:inherit;font-size:1rem;padding:10px 0}
.bub input::placeholder{color:rgba(255,255,255,.6)}
.bub .cb{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);flex:none;border:0;color:#fff;cursor:pointer;transition:background .25s,transform .25s var(--ease)}
.bub .cb:hover{background:rgba(255,255,255,.22);transform:scale(1.06)}
.bub .cb.send{background:var(--gold);color:#251939}
.bub .cb.mic.rec{background:var(--coral);animation:recp 1.2s ease-in-out infinite}
@keyframes recp{50%{box-shadow:0 0 0 10px rgba(240,93,89,.18)}}
.bub .cb svg{width:18px;height:18px}
.nlog{--nfade:8px;position:absolute;left:0;top:10px;z-index:3;width:min(290px,51%);max-height:470px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:var(--nfade) 10px 10px 2px;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s;
  -webkit-mask:linear-gradient(transparent,#000 var(--nfade));mask:linear-gradient(transparent,#000 var(--nfade));transition:opacity .6s var(--ease),transform .6s var(--ease);transition-delay:.9s}
.js .stage:not(.on) .nlog,.js .stage:not(.on) .bub{opacity:0;transform:translateY(10px)}
.nlog:hover,.nlog:focus-within{scrollbar-color:rgba(255,255,255,.3) transparent}
.nlog::-webkit-scrollbar{width:6px}.nlog::-webkit-scrollbar-track{background:transparent}
.nlog::-webkit-scrollbar-thumb{background:transparent;border-radius:3px}.nlog:hover::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3)}
.bub .cb.exp .i-c{display:none}.nwin .bub .cb.exp .i-o{display:none}.nwin .bub .cb.exp .i-c{display:block}
.nhere{position:absolute;left:0;top:30px;width:min(290px,51%);display:grid;gap:14px;justify-items:start;color:rgba(255,255,255,.8);z-index:3}
.nhere[hidden]{display:none}
.nwin{position:fixed;right:22px;bottom:22px;z-index:70;width:min(400px,calc(100vw - 24px));height:min(640px,calc(100dvh - 110px));--r:22px;display:flex;flex-direction:column;color:#fff;
  --g-bg:linear-gradient(160deg,rgba(52,38,76,.86),rgba(30,20,46,.9));transform-origin:100% 100%;animation:nwinIn .45s var(--ease)}
.nwin[hidden]{display:none}
@keyframes nwinIn{from{opacity:0;transform:translateY(18px) scale(.94)}}
.nwin > *{position:relative;z-index:3}
.nwin-h{display:flex;align-items:center;gap:12px;padding:14px 12px 14px 16px;border-bottom:1px solid rgba(255,255,255,.12)}
.nwin-h > div{flex:1;min-width:0}
.nwin-h b{display:block;font-size:1.05rem}
.nwin-h small{display:flex;align-items:center;gap:6px;color:rgba(255,255,255,.65);font-size:.82rem}
.nwin-h small i{width:7px;height:7px;border-radius:50%;background:#7BC96F;box-shadow:0 0 0 3px rgba(123,201,111,.2)}
.nwin-h .iconbtn{width:40px;height:40px;border-color:rgba(255,255,255,.16);color:#fff}
.nwin-h .iconbtn svg{width:18px;height:18px}
.nav-av{width:44px;height:44px;border-radius:50%;flex:none;background:radial-gradient(circle at 50% 30%,#4a3c66,#251939) ;background-repeat:no-repeat;background-position:59% 2%,0 0;background-size:150% auto,100% 100%;box-shadow:0 0 0 2px rgba(241,183,67,.7)}
.nwin-b{flex:1;min-height:0;display:flex;flex-direction:column}
.nwin .nlog{position:static;width:auto;max-height:none;flex:1;padding:16px 14px 12px;-webkit-mask:linear-gradient(transparent,#000 var(--nfade));mask:linear-gradient(transparent,#000 var(--nfade));transform:none!important;opacity:1!important}
.nwin .nlog .m{max-width:86%}
.nwin .bub.b3{position:relative;left:auto;right:auto;bottom:auto;margin:0 12px 12px;width:auto;transform:none!important;opacity:1!important}
.nwin .nnote{position:static;padding:0 0 10px;margin:0}
body.nwin-open .totop{opacity:0;pointer-events:none}
@media (max-width:640px){.nwin{inset:0;width:auto;height:auto;border-radius:0;--r:0px}}
.nlog .m{--r:16px;padding:12px 16px;font-size:.98rem;line-height:1.45;color:#fff;max-width:92%;flex:none;--g-bg:linear-gradient(155deg,rgba(255,255,255,.16),rgba(255,255,255,.05));animation:min .45s var(--ease)}
.nlog .m > *{position:relative;z-index:3}
.nlog .m.n{align-self:flex-start;border-radius:16px 16px 16px 4px}
.nlog .m.u{align-self:flex-end;border-radius:16px 16px 4px 16px;--g-bg:linear-gradient(155deg,rgba(241,183,67,.34),rgba(241,183,67,.16))}
.nlog .m a,.nlog .m button.lnk{color:var(--gold);font-weight:600;background:none;border:0;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.nlog .typing{align-self:flex-start;flex:none}
@keyframes min{from{opacity:0;transform:translateY(8px)}}
.qr{display:flex;flex-wrap:wrap;gap:6px;flex:none}
.qr button{height:34px;padding:0 13px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;font:inherit;font-size:.88rem;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s}
.qr button:hover{background:rgba(241,183,67,.2);border-color:var(--gold)}
.nnote{position:absolute;left:0;right:0;bottom:-6px;text-align:center;font-size:.8rem;color:rgba(255,255,255,.5)}
.nl.talk .glow{animation-duration:.5s}

.orb{position:absolute;inset:0;margin:auto;width:min(440px,84vw);height:min(440px,84vw);
  background:conic-gradient(from var(--a,0deg),#4A3C63,var(--plum),var(--coral),var(--gold),#6E6479,#4A3C63);
  border-radius:42% 58% 63% 37% / 41% 44% 56% 59%;filter:blur(22px) saturate(125%);translate:-18% -14%;animation:blob 14s ease-in-out infinite alternate,spin2 22s linear infinite;opacity:.95}
@keyframes blob{0%{border-radius:42% 58% 63% 37% / 41% 44% 56% 59%}50%{border-radius:58% 42% 38% 62% / 55% 38% 62% 45%}100%{border-radius:38% 62% 52% 48% / 36% 57% 43% 64%}}
@keyframes spin2{to{rotate:360deg}}
.chat{position:relative;z-index:2;width:min(380px,100%);--r:20px;--g-bg:linear-gradient(155deg,rgba(48,26,70,.52),rgba(28,15,44,.46));padding:18px;display:flex;flex-direction:column;gap:14px}
.chat > *{position:relative;z-index:3}
.chat-h{display:flex;align-items:center;gap:12px;padding:4px 4px 14px;border-bottom:1px solid rgba(255,255,255,.14)}
.av{width:44px;height:44px;border-radius:50%;flex:none;background:conic-gradient(from 30deg,var(--plum),var(--mag),var(--coral),var(--gold),var(--plum));box-shadow:inset 0 0 0 3px rgba(255,255,255,.25);animation:spin 9s linear infinite}
.chat-h b{display:block;font-size:1.05rem}
.chat-h small{display:block;color:rgba(255,255,255,.66);font-size:.84rem}
.msg{max-width:88%;padding:13px 16px;border-radius:14px 14px 14px 4px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);font-size:.97rem;line-height:1.5}
.msg + .msg{margin-top:-6px}
.typing{display:flex;gap:5px;padding:14px 16px;width:max-content;border-radius:18px 18px 18px 6px;background:rgba(255,255,255,.08)}
.typing i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.7);animation:dot 1.3s ease-in-out infinite}
.typing i:nth-child(2){animation-delay:.18s}.typing i:nth-child(3){animation-delay:.36s}
@keyframes dot{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}
.compose{display:flex;align-items:center;gap:8px;margin-top:4px;padding:6px 6px 6px 18px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16)}
.compose span{flex:1;color:rgba(255,255,255,.55);font-size:.95rem}
.compose button{width:42px;height:42px;border-radius:50%;border:0;display:grid;place-items:center;cursor:pointer;background:rgba(255,255,255,.12);color:#fff}
.compose button.send{background:var(--gold);color:#251839}
.compose svg{width:18px;height:18px}

/* ---------- tím ---------- */
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:start}
.roles-wrap{display:flex;flex-wrap:wrap;gap:10px}
.role{display:inline-flex;align-items:center;text-decoration:none;height:46px;padding:0 18px;border-radius:999px;border:1px solid var(--line-2);background:var(--chip);cursor:pointer;font-weight:500;font-size:.98rem;color:var(--text);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease)}
.role:hover{transform:translateY(-2px);border-color:var(--accent)}
.role[aria-pressed="true"]{background:var(--chip-on);color:var(--chip-on-text);border-color:transparent}
.panel{--r:18px;position:relative;scroll-margin-top:90px;min-height:0;padding:clamp(26px,3.4vw,40px);display:flex;flex-direction:column}
.panel > *{position:relative;z-index:3}
.tblwrap{position:sticky;top:100px}
.tbl{position:relative;aspect-ratio:900/1034;max-width:560px;margin:0 auto}
.tbl img{position:absolute;inset:3%;width:94%;height:94%}
.tbl img.dk{display:none}
:root[data-theme="light"] .tbl{background:#fff;border-radius:18px;box-shadow:0 30px 60px -30px rgba(37,24,57,.3),0 2px 8px rgba(37,24,57,.05)}
:root[data-theme="light"] #ktostojizastormlevel .panel{--r:18px;--g-bg:#fff;--g-shadow:0 30px 60px -30px rgba(37,24,57,.3),0 2px 8px rgba(37,24,57,.05)}
:root[data-theme="dark"] .tbl img.lt{display:none}:root[data-theme="dark"] .tbl img.dk{display:block}
.tbl .tlogo{position:absolute;left:37%;top:44.5%;width:26%;--logo-ink:#251939;opacity:.92;pointer-events:none}
.spot{text-decoration:none;position:absolute;width:13%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;cursor:pointer;z-index:2}
.brandring{--rw:3px;--ring:conic-gradient(from 0deg,#8B1B51 0%,#D91A5D 18%,#F05D59 34%,#F1B743 48%,#FFD56B 62%,#F1B743 74%,#F05D59 86%,#8B1B51 100%)}
.spot::before,.spot::after{content:"";position:absolute;inset:5%;border-radius:50%;pointer-events:none;opacity:0;transition:opacity .35s var(--ease),transform .35s var(--ease);transform:scale(.85)}
.spot::before{background:conic-gradient(from 0deg,#8B1B51 0%,#D91A5D 18%,#F05D59 34%,#F1B743 48%,#FFD56B 62%,#F1B743 74%,#F05D59 86%,#8B1B51 100%);
  -webkit-mask:radial-gradient(closest-side,transparent calc(100% - 4.5px),#000 calc(100% - 4px));mask:radial-gradient(closest-side,transparent calc(100% - 4.5px),#000 calc(100% - 4px));animation:ringspin 3.2s linear infinite;filter:saturate(1.15) brightness(1.06)}
.spot::after{inset:-4%;background:conic-gradient(from 0deg,rgba(139,27,81,.5) 0%,rgba(217,26,93,.5) 18%,rgba(240,93,89,.55) 34%,rgba(241,183,67,.8) 50%,rgba(255,213,107,.85) 62%,rgba(241,183,67,.8) 74%,rgba(240,93,89,.55) 86%,rgba(139,27,81,.5) 100%);filter:blur(10px);
  -webkit-mask:radial-gradient(closest-side,transparent 62%,#000 78%,transparent 100%);mask:radial-gradient(closest-side,transparent 62%,#000 78%,transparent 100%);animation:ringspin 3.2s linear infinite reverse,ringpulse 2.4s ease-in-out infinite}
.spot:hover::before{opacity:.75;transform:scale(1)}
.spot.on::before{opacity:1;transform:scale(1)}
.spot.on::after{opacity:1;transform:scale(1)}
@keyframes ringspin{to{rotate:360deg}}
@keyframes ringpulse{0%,100%{scale:.92}50%{scale:1.12}}
.spot b{position:absolute;left:50%;bottom:100%;translate:-50% -4px;white-space:nowrap;font-size:.82rem;font-weight:600;padding:6px 10px;border-radius:999px;background:#251939;color:#fff;opacity:0;pointer-events:none;transition:opacity .2s,translate .2s;box-shadow:0 8px 20px -8px rgba(0,0,0,.5)}
.spot.dn b{bottom:auto;top:100%;translate:-50% 4px}
.spot.on b{opacity:1}
@media (hover:hover){.spot:hover b{opacity:1}}
@media (hover:none){.spot:hover::before{opacity:0}.spot.on::before{opacity:1}}
.spot.on b{background:var(--gold);color:#251939}
.team-side{display:grid;gap:22px;align-content:start}
#pbody .hint{color:var(--text-2)}
/* tím: varianty rozloženia B (predvolená rola) a C (úvodná karta a automatická prehliadka) */
.tcap,.tvctl{display:none}
#ktostojizastormlevel:not([data-tv="a"]) .team-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"tbl panel" "roles roles" "cap cap";row-gap:22px;align-items:stretch}
#ktostojizastormlevel:not([data-tv="a"]) .team-side{display:contents}
#ktostojizastormlevel:not([data-tv="a"]) .tblwrap{grid-area:tbl;position:static;display:flex;align-items:center}
#ktostojizastormlevel:not([data-tv="a"]) .tbl{width:100%}
#ktostojizastormlevel:not([data-tv="a"]) .roles-wrap{grid-area:roles;justify-content:center;gap:10px 10px;max-width:none;margin:8px 0 0}
#ktostojizastormlevel:not([data-tv="a"]) .role{height:40px;padding:0 16px;font-size:.92rem;position:relative}
#ktostojizastormlevel:not([data-tv="a"]) .tcap{display:block;grid-area:cap;text-align:center;color:var(--text-3);font-size:.9rem;margin:0}
#ktostojizastormlevel:not([data-tv="a"]) .panel{grid-area:panel;position:relative;top:auto;align-self:stretch;min-height:0}
#ktostojizastormlevel[data-tv="c"] .tvctl:not([hidden]){display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-top:18px;padding:0;border:0;background:none;color:var(--text-3);font:500 .86rem/1 var(--body);cursor:pointer}
.tvctl:hover{color:var(--text)}
.tvctl .tvi{width:26px;height:26px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;position:relative}
.tvctl .tvi::before,.tvctl .tvi::after{content:"";position:absolute;top:8px;width:3px;height:10px;background:currentColor;border-radius:1px}
.tvctl .tvi::before{left:9px}.tvctl .tvi::after{left:14px}
.tvctl.play .tvi::after{display:none}
.tvctl.play .tvi::before{left:10px;top:7px;width:0;height:0;background:none;border-left:8px solid currentColor;border-top:6px solid transparent;border-bottom:6px solid transparent;border-radius:0}
.role.tvon::after{content:"";position:absolute;inset:-5px;border-radius:999px;padding:2.5px;pointer-events:none;z-index:2;
  background:conic-gradient(from 0deg,#D91A5D 0deg,#F05D59 calc(var(--tvp,0)*180deg),#F1B743 calc(var(--tvp,0)*360deg),transparent calc(var(--tvp,0)*360deg + .5deg));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);
  animation:tvpulse 1.6s ease-in-out infinite}
.role.tvon.tvpaused::after{animation:none;opacity:.5}
@keyframes tvpulse{0%,100%{opacity:.8;inset:-5px}50%{opacity:1;inset:-7px;padding:3px}}
@media (prefers-reduced-motion:reduce){.role.tvon::after{animation:none}}
.tintro .kick{font-family:var(--display);font-weight:700;font-size:clamp(2rem,3.4vw,2.8rem);line-height:1.02;color:var(--text);margin:0 0 16px;text-wrap:balance}
.tintro p{color:var(--text-2);font-size:1.04rem}
.ailk{color:var(--text);font-weight:600;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:3px;cursor:pointer}
.ailk:hover{text-decoration-color:currentColor}
.tintro .tai{font-weight:700;color:var(--text);text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold)}
.tintro .tai:hover{box-shadow:inset 0 -8px 0 rgba(241,183,67,.45)}
.tintro .tnext{margin-top:22px;color:var(--text-3);font-size:.9rem}
#pbody{transition:opacity .35s var(--ease)}
#pbody:has(.tintro){display:flex;flex-direction:column;justify-content:center}
#pbody.swap{opacity:0}
@media (max-width:900px){
  #ktostojizastormlevel:not([data-tv="a"]) .team-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"tbl" "roles" "cap" "panel"}
  #ktostojizastormlevel:not([data-tv="a"]) .panel{position:relative;top:0}
  #ktostojizastormlevel:not([data-tv="a"]) .roles-wrap{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;max-width:none;margin:0 calc(var(--gut)*-1);padding:4px var(--gut) 6px;scrollbar-width:none;-webkit-mask:linear-gradient(90deg,transparent,#000 var(--gut),#000 calc(100% - var(--gut)),transparent)}
  #ktostojizastormlevel:not([data-tv="a"]) .roles-wrap::-webkit-scrollbar{display:none}
  #ktostojizastormlevel:not([data-tv="a"]) .role{flex:none}
}

.panel .empty{margin:auto 0;display:grid;justify-items:start;gap:26px}
.panel .empty svg{width:min(260px,70%);height:auto}
.panel .empty p{color:var(--text-2)}
.panel h3{font-family:var(--display);font-size:clamp(2.1rem,3.6vw,3rem);line-height:1;text-wrap:balance}
.panel .desc{color:var(--text-2);font-size:1.06rem;margin-top:16px}
.panel h4{font-size:.95rem;margin:28px 0 12px}
.svlinks{display:grid;gap:8px}
/* digitálni kolegovia s AI (karty 16 až 18) */
.svc-ai{position:relative}
.svc-ai::before{background:linear-gradient(140deg,#D91A5D,transparent 32%,transparent 62%,#F1B743)!important;padding:1.5px!important}
.svc-ai .aib{position:absolute;top:24px;right:24px;z-index:3;height:26px;padding:0 10px;border-radius:999px;display:grid;place-items:center;font:700 .74rem/1 var(--body);letter-spacing:.06em;color:#251939;background:linear-gradient(120deg,#F05D59,#F1B743)}
.svc-ai .no{margin-right:56px}
.svc p.kind{font-size:.86rem;font-weight:600;letter-spacing:.02em;color:var(--accent);margin-top:-8px;-webkit-line-clamp:1}
.svlinks a{display:flex;align-items:center;gap:12px;padding:13px 16px;border-radius:10px;border:1px solid var(--line);color:var(--text);text-decoration:none}
.svlinks a:hover{border-color:var(--accent)}
.svlinks .n{font-family:var(--display);font-weight:700;color:var(--accent);margin-right:10px;font-variant-numeric:tabular-nums}

.svlinks button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:13px 16px;border-radius:10px;border:1px solid var(--line);background:var(--chip);cursor:pointer;font-weight:500}
.svlinks button:hover{border-color:var(--accent)}
.svlinks svg{width:16px;height:16px;flex:none}
.fullrole{margin-top:22px;--h:44px;font-size:.95rem;align-self:flex-start}
.panel .count{margin-top:auto;padding-top:24px;color:var(--text-3);font-size:.92rem}

/* ---------- kontakt ---------- */
.ct-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(24px,4vw,56px);align-items:stretch}
.form{--r:18px;padding:clamp(26px,4vw,46px);display:flex;flex-direction:column}
.form > *{position:relative;z-index:3}
.fgrid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto 1fr;gap:10px 28px;flex:1}
.f.full:has(textarea){display:flex;flex-direction:column}
.f.full:has(textarea) textarea{flex:1}
.f{position:relative;padding-top:20px}
.f.full{grid-column:1/-1}
.f input,.f textarea{width:100%;border:0;border-bottom:1.5px solid var(--line-2);background:transparent;color:var(--text);font:inherit;font-size:1.08rem;padding:10px 0 12px;border-radius:0;outline:none;transition:border-color .25s}
.f textarea{resize:none;min-height:120px;line-height:1.5}
.f label{position:absolute;left:0;top:30px;color:var(--text-3);pointer-events:none;transition:transform .25s var(--ease),color .25s,font-size .25s;transform-origin:0 0}
.f input:focus + label,.f input:not(:placeholder-shown) + label,.f textarea:focus + label,.f textarea:not(:placeholder-shown) + label{transform:translateY(-26px);font-size:.86rem;color:var(--accent)}
.f::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--line4);transform:scaleX(0);transform-origin:0 50%;transition:transform .45s var(--ease)}
.f:focus-within::after{transform:scaleX(1)}
.f.full:has(textarea)::after{bottom:6px}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.fnote{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between;margin-top:30px}
.fnote small{color:var(--text-3);font-size:.9rem;max-width:42ch;line-height:1.45}
.fnote small a{color:var(--text-2)}
.info{display:grid;gap:18px}
.card{--r:16px;padding:26px 28px}
.card > *{position:relative;z-index:3}
.card h3{font-size:1rem;font-weight:600;color:var(--text-3);margin-bottom:10px}
.card p{font-size:1.06rem}
.card a{text-decoration:none}
.card a:hover{color:var(--accent)}
.card .big{font-family:var(--display);font-size:1.7rem;font-weight:600;line-height:1.15;display:block}
dl.bill{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:0;font-size:.98rem}
dl.bill{gap:6px 18px}
dl.bill dt{color:var(--text-3);white-space:nowrap}
dl.bill dt::after{content:":"}
dl.bill dd{margin:0;font-variant-numeric:tabular-nums}
.totop{position:fixed;right:22px;bottom:22px;z-index:45;width:56px;height:56px;--r:50%;border-radius:50%;display:grid;place-items:center;color:#fff;text-decoration:none;
  --g-bg:linear-gradient(155deg,rgba(60,44,84,.78),rgba(37,25,57,.7));opacity:0;transform:translateY(16px) scale(.9);pointer-events:none;transition:opacity .4s var(--ease),transform .4s var(--ease),bottom .3s var(--ease)}
.totop.show{opacity:1;transform:none;pointer-events:auto}
.totop:hover{transform:translateY(-3px)}
.totop .ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);z-index:3}
.totop .ring circle{fill:none;stroke:rgba(255,255,255,.14);stroke-width:2.5}
.totop .ring .pr{stroke:var(--gold);stroke-linecap:round;stroke-dasharray:157.08;stroke-dashoffset:calc(157.08 - 157.08*var(--p,0))}
.totop .ar{width:20px;height:20px;position:relative;z-index:3}
@media (max-width:640px){.totop{right:14px;bottom:14px;width:50px;height:50px}}
.rstatic{display:none}
.rstatic:target{display:block;scroll-margin-top:100px}
#pbody:has(.rstatic:target) .hint{display:none}
.rstatic h3{font-family:var(--display);font-size:clamp(2.1rem,3.6vw,3rem);line-height:1}
.rstatic .desc{color:var(--text-2);font-size:1.06rem;margin-top:16px}
.rstatic h4{font-size:.95rem;margin:24px 0 12px}
.rstatic .svlinks a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-radius:10px;border:1px solid var(--line);background:var(--chip);text-decoration:none;font-weight:500}
.cssdlg{display:none;position:fixed;inset:0;z-index:80;background:rgba(19,12,31,.55);padding:20px 12px;align-items:center;justify-content:center}
.cssdlg:target{display:flex}
.dlgbox{position:relative;width:100%;max-width:760px}
.cssdlg .dlg{max-height:calc(100dvh - 40px);overflow:auto}
.cssdlg .close{text-decoration:none}
.cssdlg.open{display:flex}
body.lock{overflow:hidden}
.legal .dlgbox{max-width:860px}
.doc{color:var(--text-2);font-size:1rem;line-height:1.65}
.doc h4{color:var(--text);font-size:1.12rem;margin:30px 0 10px}
.doc h5{color:var(--text);font-size:1rem;font-weight:600;margin:20px 0 6px}
.doc p+p{margin-top:10px}
.doc ul{margin:10px 0;padding-left:20px}.doc li+li{margin-top:6px}
.doc a{color:var(--accent);word-break:break-all}
.ltab{overflow-x:auto;margin:16px 0;border:1px solid var(--line);border-radius:12px}
.ltab table{width:100%;border-collapse:collapse;font-size:.94rem;min-width:520px}
.ltab th{background:#251939;color:#fff;text-align:left;font-weight:600;padding:10px 14px}
.ltab td{padding:10px 14px;border-top:1px solid var(--line);vertical-align:top}

/* právne dokumenty: obsah v kartách, rovnaký v okne aj na samostatnej stránke */
.lcards{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.lcard table{display:block;max-width:100%;overflow-x:auto}
.lcard{border-radius:16px;padding:clamp(20px,2.6vw,30px);background:rgba(37,24,57,.035);border:1px solid var(--line)}
:root[data-theme="dark"] .lcard{background:rgba(255,255,255,.045)}
.lcard h2{font-family:var(--display);font-weight:700;font-size:clamp(1.25rem,1.8vw,1.5rem);line-height:1.15;color:var(--text);margin:0 0 12px}
.doc .lcard h5{margin-top:18px}
.doc .lcard > :last-child{margin-bottom:0}
.lfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:14px 0 4px}
.lfacts > div{border-radius:12px;padding:12px 14px;background:#fff;border:1px solid var(--line)}
:root[data-theme="dark"] .lfacts > div{background:rgba(255,255,255,.06)}
.lfacts span{display:block;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin-bottom:4px}
.lfacts b{display:block;font-weight:600;color:var(--text);line-height:1.4}
.lfacts a{word-break:normal;overflow-wrap:anywhere}
.lfacts > div{min-width:0}
/* samostatná stránka dokumentu (WordPress: /pravidla-pouzivania-cookies/, /zasady-ochrany-osobnychudajov/) */
.legalpage,.lp-doc{display:none}
html[data-view] .legalpage{display:block;padding:clamp(120px,14vw,150px) 0 clamp(56px,7vw,90px)}
html[data-view] #obsah > section:not(.legalpage){display:none}
html[data-view="cookies"] .lp-doc[data-doc="cookies"],html[data-view="privacy"] .lp-doc[data-doc="privacy"]{display:block}
.lpwrap{max-width:900px}
.lpback{--h:44px;display:inline-flex;align-items:center;gap:8px;padding:0 18px 0 14px;margin-bottom:28px}
.lpkick{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 10px}
.lp-doc .h2{margin:0 0 14px}
.lp-doc .lead{margin:0 0 30px}
:root[data-theme="light"] .legalpage .lcard{background:#fff;box-shadow:0 18px 40px -26px rgba(37,24,57,.28)}
.lpset{margin-top:22px}
.ck{position:fixed;left:22px;bottom:22px;z-index:85;width:min(460px,calc(100vw - 24px));--r:18px;padding:22px 22px 20px;animation:dlgIn .5s var(--ease)}
.ck[hidden]{display:none}
.ck > *{position:relative;z-index:3}
.ck h3{font-family:var(--display);font-size:1.6rem;line-height:1;margin-bottom:10px}
.ck p{font-size:.9rem;line-height:1.5;color:var(--text-2)}
.ck p a{color:var(--accent)}
.ck-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.ck-btns .btn{--h:42px;padding:0 16px;font-size:.92rem}
.ck-btns .btn[hidden]{display:none}
.ck-sec{background:var(--chip);color:var(--text);border:1px solid var(--line-2)}
.ck-sec:hover{border-color:var(--accent)}
.ck-cats{display:grid;gap:8px;margin-top:14px;max-height:40vh;overflow:auto}
.ck-cats[hidden]{display:none}
.ck-cat{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--chip);cursor:pointer}
.ck-cat b{display:block;font-size:.94rem}.ck-cat small{display:block;color:var(--text-3);font-size:.82rem;line-height:1.4;margin-top:2px}
.ck-cat input{position:absolute;opacity:0;pointer-events:none}
.ck-cat i{flex:none;width:42px;height:24px;border-radius:12px;background:var(--line-2);position:relative;transition:background .25s}
.ck-cat i::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .25s var(--ease);box-shadow:0 1px 3px rgba(0,0,0,.3)}
.ck-cat input:checked + i{background:var(--gold)}
.ck-cat input:checked + i::after{transform:translateX(18px)}
.ck-cat input:disabled + i{opacity:.6}
.ck-cat input:focus-visible + i{outline:2px solid var(--gold);outline-offset:2px}
@media (max-width:640px){.ck{left:12px;right:12px;bottom:12px;width:auto;padding:18px}.ck-btns .btn{flex:1 1 auto;justify-content:center}}
body.ck-on .totop{bottom:auto;top:-100px}
.cssdlg .rolechips span{display:inline-flex;align-items:center;height:34px;padding:0 13px;border-radius:999px;border:1px solid var(--line-2);background:var(--chip);font-size:.9rem}
.nojs{position:fixed;left:12px;right:12px;bottom:12px;z-index:90;padding:12px 16px;border-radius:12px;background:#251939;color:#fff;font-size:.9rem;line-height:1.4;box-shadow:0 10px 30px rgba(0,0,0,.35)}
html:not(.js) .hdr .bar{--g-bg:linear-gradient(155deg,rgba(58,42,84,.9),rgba(37,25,57,.88))}
html:not(.js) #themeBtn,html:not(.js) .rnav,html:not(.js) #nexp,html:not(.js) #nmic{display:none}
html:not(.js) .totop{opacity:1;transform:none;pointer-events:auto;bottom:90px}
html:not(.js) .sheet:target{display:block}
.toast{visibility:hidden;position:fixed;left:50%;bottom:24px;z-index:60;transform:translate(-50%,140%);--r:999px;padding:14px 22px;font-weight:500;transition:transform .5s var(--ease);max-width:calc(100vw - 32px)}
.toast.show{visibility:visible;transform:translate(-50%,0)}
.toast > span{position:relative;z-index:3}

/* ---------- pätička ---------- */
.ftr{position:relative;background:#16111F;color:#E9E5EC;padding:72px 0 34px;overflow:hidden}
.ftr::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--line4);z-index:2}
.ftr > .wrap{position:relative;z-index:1}
.ftr-photo{position:absolute;inset:0;background-position:center 60%;background-size:cover;background-repeat:no-repeat;opacity:.5}
.ftr-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#16111F 0%,rgba(22,17,31,.55) 45%,rgba(22,17,31,.75) 100%),linear-gradient(90deg,#16111F 0%,rgba(22,17,31,.2) 60%)}
.ftr{padding-top:84px}
.ftr-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}
.ftr .logo svg{height:84px}
.ftr p.tag{margin-top:20px;color:rgba(255,255,255,.66);max-width:28ch}
.ftr h3{font-size:.95rem;font-weight:600;color:rgba(255,255,255,.55);margin-bottom:14px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.ftr a,.ftr .lnk{color:#E9E5EC;text-decoration:none;opacity:.88;background:none;border:0;padding:0;cursor:pointer;font-size:1rem;text-align:left}
.ftr a:hover,.ftr .lnk:hover{opacity:1;color:#fff;text-decoration:underline;text-underline-offset:4px}
.soc{display:flex;gap:10px}
.soc a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);opacity:1}
.soc a:hover{background:rgba(255,255,255,.1);text-decoration:none}
.soc svg{width:18px;height:18px}
.ftr-bot{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;margin-top:56px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.55);font-size:.92rem}

/* ---------- reveal ---------- */
.js [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js [data-reveal].in{opacity:1;transform:none}

/* ---------- responzívnosť ---------- */
@media (max-width:1100px){
  .nav{display:none}
  .menu-btn{display:grid}
  .hdr .cta{display:none}
  .hdr .tools{margin-left:auto}
  .svc-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr;padding-top:128px;gap:20px}
  .stack{height:400px;margin-top:8px}
  .stat{width:min(300px,74%);padding:20px 22px}
  .stat b{font-size:4.1rem}
  .stat.s1{left:0}
  .stat.s2{top:135px;left:auto;right:0}
  .stat.s3{top:270px;left:6%}
  .lens{width:340px;right:-90px;top:auto;bottom:70px}
  .why-grid,.team-grid,.ct-grid,.nal-grid{grid-template-columns:1fr}
  .why-head{position:static}
  .res-grid{grid-template-columns:1fr 1fr}
  .tile,.tile:nth-child(4),.tile:nth-child(5){grid-column:span 1;min-height:200px}
  .tile:nth-child(5){grid-column:span 2}
  .statement-in{grid-template-columns:1fr}
  .statement .smark{width:130%;right:-55%;top:18%;opacity:.7}
  .statement .sfrost{background:linear-gradient(180deg,rgba(37,25,57,.55),rgba(37,25,57,.8))}
  .panel{position:relative;top:0;min-height:0;order:-1}
  .tblwrap{position:static}
  .stage{min-height:540px;order:2}
  .nl-wrap{width:min(300px,62%)}
  .stage{min-height:640px}
  .nlog{left:0;right:0;width:auto;max-height:250px}
  .nl-wrap{left:50%;width:min(230px,58%);bottom:92px}
  .nl-shadow{left:50%;bottom:84px}
  .stage .orb{top:38%}
  .ftr-grid{grid-template-columns:1fr 1fr}
  .ftr-grid > :first-child{grid-column:1/-1}
}
@media (max-width:640px){
  body{font-size:1rem}
  .hdr.compact{top:8px}
  .hdr .bar{height:64px;gap:8px}
  .hdr.compact .bar{height:60px;padding:0 8px 0 16px}
  .hdr .logo svg{height:48px}
  .hdr.compact .logo svg{height:46px}
  .iconbtn{width:44px;height:44px}
  .svc-grid{grid-template-columns:1fr}
  .svc{min-height:0}
  .res-grid{grid-template-columns:1fr}
  .tile,.tile:nth-child(5){grid-column:auto;min-height:0}
  .ben{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr;grid-template-rows:none}
  .acc .body{padding:0 20px 22px 20px}
  .acc summary{padding:18px 18px;gap:14px}
  .acc summary h3{font-size:1.14rem}
  .rlist summary{grid-template-columns:52px 1fr 20px;gap:4px 14px;padding:16px 18px}
  .rlist summary .n{grid-column:2/3}
  .rlist summary .ch{grid-column:3;grid-row:1}
  .rlist .d{padding:0 18px 20px 18px}
  .card a{text-decoration:none}
  dl.bill{gap:6px 12px;font-size:.94rem}
  .ftr-grid{grid-template-columns:1fr}
  .marquee{padding:16px 0}
  .lg{height:30px}.lg.tall{height:42px}
  .lg.sm{height:21px}.lg.sm.tall{height:30px}
  .track{gap:40px}
  .dlg .foot .btn{width:100%;justify-content:center}
  .rnav{width:44px;height:44px}.rnav.prev{left:2px}.rnav.next{right:2px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .track{animation:none;flex-wrap:wrap;width:auto;justify-content:center;padding:0 20px;row-gap:26px}
  .track [aria-hidden="true"]{display:none}
  .js [data-reveal]{opacity:1;transform:none}
}

/* výkon: animácie bežia len keď ich je vidieť */
/* Karta prehliadača na pozadí: nič sa nemá hýbať. */
html.sl-bg *,html.sl-bg *::before,html.sl-bg *::after{animation-play-state:paused!important}
/* Sekcia mimo viewportu: pauza zmrazí animáciu, pri návrate plynule pokračuje. */
.sl-off,.sl-off *,.sl-off *::before,.sl-off *::after{animation-play-state:paused!important}
/* Lišta súhlasu s cookies prekrývala tlačidlo späť hore: kým je hore, tlačidlo je nad ňou. */
body.cky-up .totop{bottom:var(--cky,22px)}
