/*!
 * StormLevel, nový web: ostatné stránky (chybová 404, blog, archívy, právne stránky).
 * Nadväzuje na assets/css/stormlevel.css — tokeny, sklo, tlačidlá, hlavička a pätička sú odtiaľ,
 * tu je len rozloženie a typografia obsahu, ktorý úvodná stránka nemá.
 */

/* Hlavička je fixná, preto tmavý pás začína pod ňou rovnako ako hero na úvodnej stránke. */
.sl-sub{display:block}
.sl-head{position:relative;isolation:isolate;padding:calc(80px + clamp(36px,6vw,74px)) 0 clamp(40px,5vw,66px);
  background:radial-gradient(120% 150% at 12% -10%,#3C2B57 0%,#2A1C40 45%,#1A1226 100%);color:#F2EFF4;overflow:hidden}
.sl-head::before{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--line4);z-index:2}
.sl-head > .wrap{position:relative;z-index:1;display:grid;gap:18px;justify-items:start}
.sl-head h1{font-family:var(--display);font-size:clamp(2.1rem,5.2vw,3.6rem);line-height:1.04;letter-spacing:-.01em;max-width:20ch}
.sl-head .lead{color:rgba(255,255,255,.76)}
.sl-kick{font-family:var(--display);font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.84rem;color:var(--gold)}
.sl-kick a{text-decoration:none}
.sl-kick a:hover{text-decoration:underline;text-underline-offset:4px}
.sl-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.sl-acts .btn{text-decoration:none}

.sl-body{position:relative;padding:clamp(44px,5.4vw,76px) 0 clamp(56px,6vw,88px);background:var(--bg);color:var(--text)}
.sl-page-builder .sl-body{padding-top:calc(80px + 24px)}
.sl-builder{width:100%}
.sl-h2{font-family:var(--display);font-size:clamp(1.5rem,2.6vw,2rem);margin:40px 0 18px}

/* zoznam článkov */
.sl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:clamp(18px,2.2vw,26px)}
.sl-card{position:relative;border:1px solid var(--line);border-radius:var(--r);background:var(--chip);overflow:hidden;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.sl-card:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:0 22px 44px -26px rgba(37,24,57,.5)}
.sl-card > a{display:grid;gap:10px;padding:22px;text-decoration:none;color:inherit;height:100%;align-content:start}
.sl-card .sl-thumb{display:block;margin:-22px -22px 6px;overflow:hidden;aspect-ratio:16/9;background:var(--bg-2)}
.sl-card .sl-thumb img{width:100%;height:100%;object-fit:cover}
.sl-card time{font-size:.86rem;color:var(--text-3);letter-spacing:.04em}
.sl-card h2,.sl-card h3{font-family:var(--display);font-size:1.3rem;line-height:1.2;text-wrap:balance}
.sl-card p{color:var(--text-2);font-size:.98rem}
.sl-more{margin-top:auto;padding-top:6px;font-weight:600;color:var(--accent)}
.sl-card:hover .sl-more{text-decoration:underline;text-underline-offset:4px}

/* hľadanie */
.sl-search{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 8px}
.sl-search input{flex:1 1 260px;height:52px;padding:0 18px;border-radius:999px;border:1px solid var(--line-2);
  background:var(--chip);color:var(--text);font:inherit}
.sl-search input::placeholder{color:var(--text-3)}
.sl-search .btn{text-decoration:none}

/* článok */
.sl-hero-img{margin:0 0 28px;border-radius:var(--r);overflow:hidden}
.sl-hero-img img{width:100%;height:auto}
.sl-prose{max-width:72ch;font-size:1.08rem;line-height:1.72;color:var(--text)}
.sl-prose > * + *{margin-top:1.1em}
.sl-prose p,.sl-prose ul,.sl-prose ol,.sl-prose dl{color:var(--text-2)}
.sl-prose h2{font-family:var(--display);font-size:clamp(1.5rem,2.6vw,2rem);margin-top:1.8em;line-height:1.15}
.sl-prose h3{font-family:var(--display);font-size:clamp(1.25rem,2vw,1.5rem);margin-top:1.6em;line-height:1.2}
.sl-prose h4{font-size:1.1rem;margin-top:1.4em}
.sl-prose ul,.sl-prose ol{padding-left:1.3em}
.sl-prose li + li{margin-top:.45em}
.sl-prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.sl-prose a:hover{text-decoration-thickness:2px}
.sl-prose img{height:auto;border-radius:var(--r)}
.sl-prose figure{margin:0}
.sl-prose figcaption{font-size:.9rem;color:var(--text-3);margin-top:.6em}
.sl-prose blockquote{margin:1.4em 0;padding:4px 0 4px 20px;border-left:3px solid var(--gold);font-size:1.12rem;color:var(--text)}
.sl-prose strong{color:var(--text)}
.sl-prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.sl-prose table{width:100%;border-collapse:collapse;font-size:.98rem}
.sl-prose th,.sl-prose td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.sl-prose code,.sl-prose pre{background:var(--bg-2);border-radius:8px}
.sl-prose code{padding:2px 6px;font-size:.92em}
.sl-prose pre{padding:16px;overflow:auto}
.sl-prose iframe,.sl-prose video{max-width:100%;border-radius:var(--r)}

/* stránkovanie a presuny */
.sl-pager{display:flex;flex-wrap:wrap;gap:8px;margin-top:40px}
.sl-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;
  border-radius:999px;border:1px solid var(--line);background:var(--chip);text-decoration:none;color:var(--text)}
.sl-pager .page-numbers:hover{border-color:var(--line-2)}
.sl-pager .page-numbers.current{background:var(--chip-on);color:var(--chip-on-text);border-color:transparent;font-weight:600}
.sl-nextprev{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:48px;padding-top:24px;border-top:1px solid var(--line)}
.sl-nextprev a{color:var(--text-2);text-decoration:none;max-width:38ch}
.sl-nextprev a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.sl-nextprev .next{margin-left:auto;text-align:right}
.sl-back{margin-top:40px}
.sl-back .btn{text-decoration:none}

@media (max-width:640px){
  .sl-head{padding-top:calc(74px + 34px)}
  .sl-card > a{padding:18px}
  .sl-card .sl-thumb{margin:-18px -18px 4px}
  .sl-nextprev .next{margin-left:0;text-align:left}
}
@media (prefers-reduced-motion:reduce){.sl-card{transition:none}.sl-card:hover{transform:none}}

/* Elementor Kit nastavuje písmo triedou .elementor-kit-*, ktorá má vyššiu váhu ako body
   v stormlevel.css. Na týchto stránkach preto písmo nového webu nastavíme triedou. */
.hdr,.sheet,.sl-sub,.sl-head,.sl-body,.ftr{font-family:var(--body)}
.sl-head h1,.sl-kick,.sl-h2,.sl-card h2,.sl-card h3,.sl-prose h2,.sl-prose h3{font-family:var(--display)}
.sl-prose,.sl-prose p,.sl-prose li{font-family:var(--body)}

/* ---------- stránka služby ---------- */
.sl-svc{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(28px,4vw,64px);align-items:start}
.sl-svc .sl-prose{max-width:none}
.sl-ticks{list-style:none;padding-left:0!important;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px 22px}
.sl-ticks li{position:relative;padding-left:30px;margin:0!important}
.sl-ticks li::before{content:"";position:absolute;left:0;top:.35em;width:18px;height:18px;border-radius:50%;background:var(--gold)}
.sl-ticks li::after{content:"";position:absolute;left:5px;top:calc(.35em + 5px);width:8px;height:4px;border-left:2px solid #251939;border-bottom:2px solid #251939;transform:rotate(-45deg)}
.sl-roles dt{font-family:var(--display);font-weight:600;font-size:1.15rem;color:var(--text);margin-top:1em}
.sl-roles dd{margin:.3em 0 0}
.sl-cta{position:sticky;top:110px;padding:26px;border-radius:var(--r);display:grid;gap:14px;justify-items:start}
.sl-cta h2{font-family:var(--display);font-size:1.4rem;line-height:1.2}
.sl-cta p{color:var(--text-2);line-height:1.7}
.sl-cta .btn{text-decoration:none}
.sl-list .sl-card h3{font-size:1.12rem}
.sl-back{margin-top:34px}
.sl-back .btn{text-decoration:none}
@media (max-width:900px){.sl-svc{grid-template-columns:1fr}.sl-cta{position:static}}

/* hlavička stránky služby s fotkou v pozadí (rovnaký princíp ako budova v úvode hlavnej stránky) */
.sl-head-ph{min-height:clamp(440px,58vh,600px);display:flex;align-items:flex-end;background:#1A1226}
.sl-head-ph > .wrap{width:100%}
.sl-head-img{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;transform:scale(1.04);animation:slheadin 1.6s cubic-bezier(.2,.7,.2,1) both}
.sl-head-img::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(26,18,38,.93) 0%,rgba(30,20,46,.82) 38%,rgba(34,22,52,.42) 72%,rgba(34,22,52,.2) 100%),
             linear-gradient(0deg,rgba(26,18,38,.75) 0%,rgba(26,18,38,0) 45%,rgba(26,18,38,.55) 100%)}
@keyframes slheadin{from{opacity:0;transform:scale(1.1)}to{opacity:1;transform:scale(1.04)}}
.sl-head-ph h1{text-shadow:0 2px 24px rgba(0,0,0,.35)}
.sl-head-ph .lead{color:rgba(255,255,255,.88);max-width:56ch}
@media (max-width:700px){.sl-head-img::after{background:linear-gradient(0deg,rgba(26,18,38,.95) 0%,rgba(26,18,38,.8) 55%,rgba(26,18,38,.5) 100%)}}
@media (prefers-reduced-motion:reduce){.sl-head-img{animation:none}}

/* ---------- stránky referencií (od 1.14.0) ---------- */
.sl-head-ref h1{max-width:26ch;font-size:clamp(1.9rem,4.2vw,3rem)}
.sl-reflogo{height:54px;max-width:min(320px,70%);margin-top:8px;background:#fff;opacity:.92;-webkit-mask:var(--m) left center/contain no-repeat;mask:var(--m) left center/contain no-repeat}
.sl-facts{display:flex;flex-wrap:wrap;gap:12px;margin:1.6em 0 0}
.sl-facts > div{padding:12px 18px;border:1px solid var(--line);border-radius:14px;background:var(--chip);min-width:140px}
.sl-facts dt{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}
.sl-facts dd{margin:4px 0 0;font-family:var(--display);font-weight:600;font-size:1.15rem;color:var(--text)}
.sl-links{list-style:none;padding-left:0!important;display:flex;flex-wrap:wrap;gap:10px}
.sl-links li{margin:0!important}
.sl-links a{display:inline-block;padding:9px 16px;border-radius:999px;border:1px solid var(--line-2);background:var(--chip);color:var(--text);text-decoration:none;font-weight:500}
.sl-links a:hover{border-color:var(--accent)}
.sl-refmeta{font-size:.86rem;color:var(--text-3);letter-spacing:.04em}
.sl-refcard h2,.sl-refcard h3{font-size:1.12rem}
.sl-back{display:flex;flex-wrap:wrap;gap:10px}
