/* ==========================================================================
   Nemeda – štýly webu
   Koncept: „meradlo a príloha zmluvy“. Presnosť technického výkresu:
   jeden výrazný pohyb (stupnica v úvode), svetlé „listy papiera“ pre
   konkrétne dokumenty (ukazovateľ SL-01, ponuky P-01/P-02), všetko ostatné
   pokojné, na linkách namiesto kariet. Akcent = žltá z loga Nemeda.
   Tyrkysová schéma: <html data-accent="teal"> (prepína administrácia).
   ========================================================================== */

/* ---------- Písma (lokálne) ---------- */
/* Archivo – nadpisy, premenlivá hrúbka aj šírka */
@font-face{font-family:"Archivo";font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../fonts/archivo-latin-wdth-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Archivo";font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../fonts/archivo-latin-ext-wdth-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* IBM Plex Mono – len merania a označenia dokumentov */
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/ibm-plex-mono-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* IBM Plex Sans – text */
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/ibm-plex-sans-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-sans-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/ibm-plex-sans-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ---------- Tokeny ----------
   Graphite #262626  pozadie stránky
   Slate    #303030  plochy, panely
   Rule     #474747  linky
   Fog      #B8B8B8  sekundárny text
   Paper    #EDEDED  text
   Nemeda   #F1BB00  akcent – len výzvy k akcii, značka na stupnici, fokus
   Paper    #DADADA  „list prílohy“ (tlmený neutrálne sivý, nie čisto biely) – konkrétne dokumenty (SL-01, ponuky) */
:root{
  --bg:#262626;
  --surface:#303030;
  --surface-2:#383838;
  --line:#474747;
  --line-soft:#3A3A3A;
  --text:#EDEDED;
  --strong:#FFFFFF;
  --muted:#B8B8B8;
  --subtle:#9E9E9E;
  --accent:#F1BB00;
  --accent-hover:#FFCB2E;
  --accent-ink:#1A1A1A;
  --accent-soft:rgba(241,187,0,.14);
  --paper:#DADADA;
  --paper-ink:#161616;
  --paper-muted:#444444;
  --paper-line:#BDBDBD;
  --paper-well:#CBCBCB;
  /* predchádzajúci teplejší papier: #DCDCD7 / #45453F / #BFBFB9 / #CDCDC7 */
  --wrap:1320px;
  --gutter:clamp(16px,3vw,32px);
  --r-s:10px; --r:16px; --r-l:22px;
  --display:"Archivo","IBM Plex Sans",system-ui,sans-serif;
  --sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;
  --ease:cubic-bezier(.2,.7,.2,1);
  --header-h:76px;
  color-scheme:dark;
}
html[data-accent="teal"]{--accent:#2DD4BF;--accent-hover:#5EEAD4;--accent-soft:rgba(45,212,191,.14)}

/* ---------- Základ ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:150px}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh;display:flex;flex-direction:column}
body.no-scroll{overflow:hidden}
main{flex:1 0 auto;outline:none}
img,svg{display:block;max-width:100%}
a{color:inherit}
p{margin:0}
h1,h2,h3{margin:0;text-wrap:balance}
p,li,dd{text-wrap:pretty}
ul,ol,dl,dd{margin:0;padding:0}
button,input,textarea{font:inherit;color:inherit}
::selection{background:var(--accent);color:var(--accent-ink)}
html{scrollbar-color:#4A4A4A var(--bg)}
a{text-underline-offset:.2em}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-60px;z-index:100;background:var(--accent);color:var(--accent-ink);padding:10px 16px;border-radius:var(--r-s);font-weight:600;text-decoration:none}
.skip:focus{top:16px}
.icon{flex:none}
.tnum{font-variant-numeric:tabular-nums}

.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gutter);width:100%}
.section{padding-block:clamp(64px,9vw,120px)}
.section-s{padding-block:clamp(24px,3.5vw,44px)}
.muted{color:var(--muted)}
.subtle{color:var(--subtle)}
.small{font-size:14px}

/* ---------- Typografia (mierka 1,25) ---------- */
.h-display{font-family:var(--display);font-weight:300;font-stretch:108%;letter-spacing:-.035em;line-height:.96;color:var(--strong);font-size:clamp(44px,7.4vw,118px)}
.h-display .h-light{display:block}
.h-display .h-strong{display:block;font-weight:640;font-stretch:100%;letter-spacing:-.04em}
.h-display-page{font-size:clamp(40px,6.2vw,88px);font-weight:420;font-stretch:104%;line-height:1;max-width:18ch}
.h-display-contact{font-size:clamp(36px,4.6vw,64px);font-weight:420;font-stretch:104%;line-height:1.04;max-width:16ch}
.h-1{font-family:var(--display);font-weight:480;font-stretch:104%;font-size:clamp(30px,3.6vw,48px);line-height:1.08;letter-spacing:-.022em;color:var(--strong);max-width:20ch}
.h-2{font-family:var(--display);font-weight:540;font-stretch:102%;font-size:clamp(23px,2.2vw,30px);line-height:1.15;letter-spacing:-.012em;color:var(--strong)}
.h-3{font-family:var(--sans);font-weight:600;font-size:19px;line-height:1.3;color:var(--strong)}
.muted-h{color:var(--muted);font-weight:500;font-size:16px;margin-bottom:20px}
.kicker{font-size:15px;color:var(--muted);margin-bottom:14px}
.lead{font-size:clamp(18px,1.55vw,21px);line-height:1.55;color:var(--muted);max-width:60ch}
.lead-s{font-size:18px;max-width:56ch}

/* ---------- Tlačidlá ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 26px;border-radius:12px;font-size:16px;font-weight:600;text-decoration:none;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background-color .2s,border-color .2s,color .2s}
.btn-sm{min-height:44px;padding:0 18px;font-size:15px;border-radius:10px}
.btn-block{width:100%}
.btn-accent{background:var(--accent);color:var(--accent-ink)}
.btn-accent:hover{background:var(--accent-hover)}
.btn-ghost{border-color:var(--line);color:var(--strong);font-weight:500}
.btn-ghost:hover{border-color:var(--muted)}
.actions{display:flex;flex-wrap:wrap;gap:12px}

/* ==========================================================================
   Hlavička a menu
   ========================================================================== */
.site-header{position:sticky;top:0;z-index:50;padding:12px var(--gutter) 0;view-transition-name:site-header;background:linear-gradient(var(--bg) 12px,rgba(38,38,38,.85) 30px,rgba(38,38,38,0) 100%)}
.bar{position:relative;max-width:var(--wrap);margin:0 auto;display:flex;align-items:center;gap:16px;min-height:60px;padding:8px 8px 8px 18px;background:rgba(38,38,38,.8);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.08);border-radius:16px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--strong);min-height:44px;margin-right:auto}
.brand img{height:28px;width:auto}
.brand span{font-family:var(--display);font-weight:600;font-stretch:118%;font-size:16px;letter-spacing:.16em}

.site-nav{display:flex;align-items:center;gap:4px}
.nav-list{list-style:none;display:flex;align-items:center;gap:2px}
.nav-link{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:15px;font-weight:500;text-decoration:none;cursor:pointer;transition:color .15s,background-color .15s}
.nav-link:hover,.nav-trigger[aria-expanded="true"]{color:var(--strong);background:rgba(255,255,255,.06)}
.nav-link[aria-current="page"],.nav-link.is-section{color:var(--strong)}
.nav-link[aria-current="page"]::after,.nav-link.is-section::after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:2px;border-radius:1px;background:var(--accent)}
.nav-trigger .icon{opacity:.75;transition:transform .2s var(--ease)}
.nav-trigger[aria-expanded="true"] .icon{transform:rotate(180deg)}
.nav-end{display:flex;align-items:center;gap:6px;margin-left:10px;padding-left:12px;border-left:1px solid var(--line)}
.lang{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:10px;font-size:14px;font-weight:500;letter-spacing:.04em;text-decoration:none;color:var(--muted)}
.lang:hover{color:var(--strong);background:rgba(255,255,255,.06)}

/* Rozbaľovací zoznam Služby (desktop) */
.has-mega{position:relative}
.mega{position:absolute;left:-8px;top:calc(100% + 10px);width:380px;padding:8px;background:#2B2B2B;border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .16s,transform .2s var(--ease),visibility 0s .2s}
.has-mega.is-open .mega{opacity:1;visibility:visible;transform:none;transition:opacity .16s,transform .2s var(--ease)}
html:not(.js) .has-mega:focus-within .mega{opacity:1;visibility:visible;transform:none}
.mega::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.mega-list{list-style:none;display:flex;flex-direction:column}
.mega-item{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:9px;text-decoration:none;color:var(--text);transition:background-color .15s}
.mega-item:hover{background:rgba(255,255,255,.05)}
.mega-title{font-family:var(--display);font-weight:560;font-stretch:104%;font-size:18px;line-height:1.2;color:var(--strong)}
.mega-item:hover .mega-title,.mega-item[aria-current="page"] .mega-title{color:var(--accent)}
.mega-desc{font-size:14px;line-height:1.45;color:var(--muted)}
.mega-all{flex-direction:row;align-items:center;justify-content:space-between;margin-top:4px;border-top:1px solid var(--line-soft);border-radius:0 0 9px 9px}
.mega-all .mega-title{font-family:var(--sans);font-size:15px;font-weight:500}
.mega-all .icon{color:var(--muted);transition:transform .2s var(--ease),color .2s}
.mega-all:hover .icon{transform:translateX(3px);color:var(--accent)}

/* Navigácia v rámci stránky */
.onpage{position:sticky;top:84px;z-index:20;margin-top:8px}
.onpage-inner{overflow-x:auto;scrollbar-width:none}
.onpage-inner::-webkit-scrollbar{display:none}
.onpage-bar{display:inline-flex;align-items:center;padding:5px;border-radius:12px;background:rgba(48,48,48,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line-soft);transition:box-shadow .25s}
.onpage.is-stuck .onpage-bar{box-shadow:0 10px 30px rgba(0,0,0,.35)}
.onpage ul{list-style:none;display:inline-flex;gap:4px}
.onpage a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:8px;font-size:14px;color:var(--muted);text-decoration:none;white-space:nowrap}
.onpage a:hover{color:var(--strong);background:rgba(255,255,255,.06)}
.onpage .onpage-title{gap:8px;max-width:0;padding:0;opacity:0;overflow:hidden;font-family:var(--display);font-weight:560;font-stretch:104%;font-size:15px;color:var(--strong);transition:max-width .35s var(--ease),opacity .25s,padding .35s var(--ease),margin .35s var(--ease)}
.onpage .onpage-title .icon{color:var(--accent)}
.onpage-title{position:sticky;left:0;z-index:1;background:#303030}
.onpage.is-stuck .onpage-title{max-width:300px;padding:0 14px 0 10px;margin-right:6px;opacity:1;border-right:1px solid var(--line);border-radius:8px 0 0 8px}
.onpage a.is-active{color:var(--accent-ink);background:var(--accent)}

/* Tlačidlo menu (mobil) */
.menu-toggle{display:none;align-items:center;gap:10px;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--strong);font-size:15px;font-weight:500;cursor:pointer}
.menu-icon{position:relative;width:18px;height:10px}
.menu-icon span{position:absolute;left:0;right:0;height:2px;border-radius:1px;background:currentColor;transition:transform .25s var(--ease),top .25s var(--ease)}
.menu-icon span:first-child{top:0}
.menu-icon span:last-child{top:8px}
.site-header.is-open .menu-icon span:first-child{top:4px;transform:rotate(45deg)}
.site-header.is-open .menu-icon span:last-child{top:4px;transform:rotate(-45deg)}

@media (max-width:980px){
  .menu-toggle{display:inline-flex}
  .site-header.is-open .bar{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--bg)}
  .site-header.is-open{background:var(--bg)}
  .site-nav{position:fixed;left:0;right:0;bottom:0;top:var(--header-h);z-index:-1;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gutter) 28px;background:var(--bg);overflow-y:auto;opacity:0;visibility:hidden;transition:opacity .2s,visibility 0s .2s}
  .site-header.is-open .site-nav{opacity:1;visibility:visible;transition:opacity .2s}
  .nav-list{flex-direction:column;align-items:stretch;gap:0}
  .nav-item{border-bottom:1px solid var(--line-soft)}
  .bar{background:rgba(38,38,38,.97)}
  .nav-link{width:100%;justify-content:space-between;min-height:64px;padding:0;font-family:var(--display);font-size:24px;font-weight:480;font-stretch:104%;color:var(--strong);background:none!important}
  .nav-link[aria-current="page"]::after{left:0;right:auto;width:24px;bottom:10px}
  /* Služby: na mobile vždy rozbalené – „Služby“ je len nadpis skupiny */
  .nav-trigger{min-height:auto;padding:18px 0 6px;font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--subtle);pointer-events:none}
  .nav-trigger .icon,.nav-link.is-section::after{display:none}
  .mega{position:static;display:block;width:auto;padding:0 0 10px;background:none;border:0;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none;transition:none}
  .mega::before{display:none}
  .mega-item{padding:12px 0;border-radius:0}
  .mega-item:hover{background:none}
  .mega-title{font-size:22px}
  .mega-desc{font-size:14px}
  .mega-item[aria-current="page"]{box-shadow:inset 3px 0 0 var(--accent);padding-left:14px}
  .mega-all{margin-top:4px;border-radius:0}
  .nav-end{margin:auto 0 0;padding:20px 0 0;border:0;justify-content:space-between}
  .nav-end .btn{flex:1;min-height:54px;font-size:16px}
  html:not(.js) .site-nav{position:static;opacity:1;visibility:visible;z-index:auto;padding:0}
  html:not(.js) .bar{flex-wrap:wrap}
  html:not(.js) .menu-toggle{display:none}
  html:not(.js) .mega{display:block}
  .onpage{top:80px}
  /* Lišta sekcií na mobile: celá šírka, bez názvu stránky, posúva sa prstom */
  .onpage-inner{padding-inline:0}
  .onpage-bar{display:flex;width:max-content;min-width:100%;padding:6px var(--gutter);border-radius:0;border-width:1px 0;background:rgba(38,38,38,.97)}
  .onpage .onpage-title,.onpage.is-stuck .onpage-title{display:none}
  .onpage-progress{left:0;right:0}
}

/* ==========================================================================
   Úvod – meradlo
   ========================================================================== */
.hero{padding-top:clamp(56px,9vw,128px);padding-bottom:clamp(32px,5vw,56px)}
.gauge{margin:clamp(40px,6vw,72px) 0 clamp(28px,4vw,44px)}
.gauge-track{position:relative;height:96px}
.gauge-caption{margin-top:14px;font-family:var(--mono);font-size:14px;color:var(--subtle)}
.gauge-scale{position:absolute;left:0;right:0;top:38px;height:20px;
  background:
    linear-gradient(var(--line),var(--line)) left 19px/100% 1px no-repeat,
    repeating-linear-gradient(90deg,#6A6A6A 0 1px,transparent 1px 100%) left 0/10% 20px,
    repeating-linear-gradient(90deg,#4A4A4A 0 1px,transparent 1px 100%) left 10px/2% 10px repeat-x}
.gauge-mark{position:absolute;top:0;bottom:0;width:0;left:var(--pos)}
.gauge-mark::before{content:"";position:absolute;left:-1px;width:2px;top:30px;height:36px;border-radius:1px}
.gauge-tag{position:absolute;left:0;transform:translateX(-50%);white-space:nowrap;font-family:var(--mono);font-size:14px;letter-spacing:.02em}
.gauge-signed{--pos:78%}
.gauge-signed::before{background:var(--strong)}
.gauge-signed .gauge-tag{top:0;color:var(--strong)}
.gauge-delivered{--pos:78%}
.gauge-delivered::before{background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}
.gauge-delivered .gauge-tag{bottom:0;color:var(--accent)}
.js .gauge-delivered{animation:gauge-close 1.6s cubic-bezier(.3,.6,.15,1) .5s both}
@keyframes gauge-close{from{left:31%}to{left:78%}}
.hero-foot{display:flex;flex-wrap:wrap;gap:28px 56px;align-items:flex-end;justify-content:space-between}
.hero-foot .lead{flex:1 1 460px}
@media (max-width:640px){.gauge-track{height:88px}.gauge-signed,.gauge-delivered{--pos:70%}.js .gauge-delivered{animation-name:gauge-close-s}}
@keyframes gauge-close-s{from{left:22%}to{left:70%}}

/* ---------- Podstránky ---------- */
.page-hero{padding-top:clamp(48px,7vw,104px);padding-bottom:clamp(20px,3vw,36px)}
.page-hero .lead{margin-top:clamp(20px,2.5vw,32px)}
.breadcrumb{margin-bottom:clamp(20px,2.5vw,32px)}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:10px;font-size:15px;color:var(--subtle)}
.breadcrumb li+li::before{content:"/";margin-right:10px;color:#666}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--strong)}
.breadcrumb [aria-current]{color:var(--text)}

/* Asymetrická mriežka: nadpis vľavo, obsah vpravo */
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px clamp(32px,5vw,80px);align-items:start}
.split-side{position:sticky;top:156px}
.split-tight{margin-bottom:clamp(32px,4vw,56px);align-items:end}
.split-tight .split-side{position:static}
@media (max-width:900px){.split{grid-template-columns:1fr}.split-side{position:static}}

/* Dlaždice špecializácií */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:12px}
.tile{position:relative;display:flex;flex-direction:column;gap:12px;min-height:clamp(220px,20vw,280px);padding:clamp(24px,3vw,36px);border-radius:var(--r-l);background:var(--surface);border:1px solid var(--line-soft);text-decoration:none;color:var(--text);transition:border-color .2s,background-color .2s}
.tile:hover{border-color:var(--accent);background:var(--surface-2)}
.tile-title{margin-top:auto;font-family:var(--display);font-weight:560;font-stretch:104%;font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.02em;color:var(--strong);max-width:14ch}
.tile-text{color:var(--muted);max-width:46ch}
.tile-points{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.tile-points span{font-size:14px;padding:6px 11px;border-radius:999px;border:1px solid var(--line);color:var(--text)}
.tile-go{position:absolute;top:clamp(22px,3vw,32px);right:clamp(22px,3vw,32px);color:var(--muted);transition:color .2s,transform .2s var(--ease)}
.tile:hover .tile-go{color:var(--accent);transform:translate(3px,-3px)}
.strip-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:8px 32px;align-items:center;margin-top:12px;padding:22px clamp(24px,3vw,36px);border-radius:var(--r);border:1px solid var(--line-soft);text-decoration:none;color:var(--text);transition:border-color .2s}
.strip-link:hover{border-color:var(--accent)}
.strip-title{font-family:var(--display);font-weight:540;font-size:21px;color:var(--strong)}
.strip-text{color:var(--muted);font-size:16px}
.strip-link .icon{color:var(--muted)}
.strip-link:hover .icon{color:var(--accent)}
@media (max-width:760px){.strip-link{grid-template-columns:1fr auto}.strip-text{grid-column:1}.strip-link .icon{grid-row:1;grid-column:2}}

/* Problémy */
.problems{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.problems li{padding:26px 0 30px;border-top:1px solid var(--line)}
.problem-title{font-family:var(--display);font-weight:520;font-stretch:104%;font-size:clamp(21px,1.9vw,25px);line-height:1.2;letter-spacing:-.01em;color:var(--strong);margin-bottom:10px}
@media (max-width:640px){.problems{grid-template-columns:1fr}}

/* Dve strany */
.sides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(28px,4vw,48px);border-top:1px solid var(--line)}
.side{padding:clamp(24px,3vw,40px) clamp(0px,3vw,40px) 8px 0}
.side+.side{padding-left:clamp(24px,3vw,40px);border-left:1px solid var(--line)}
.side .h-2{margin-bottom:12px}
@media (max-width:760px){.sides{grid-template-columns:1fr}.side+.side{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

.checks{list-style:none;display:flex;flex-direction:column;gap:10px;margin-top:20px}
.checks li{display:flex;gap:12px;align-items:flex-start;line-height:1.5}
.checks .icon{color:var(--accent);margin-top:3px}
.checks-lines li{padding-bottom:12px;border-bottom:1px solid var(--line-soft)}
.checks-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:0 32px;margin:0}
.checks-cols li{padding:18px 0;border-top:1px solid var(--line);font-size:18px;color:var(--strong)}

/* Pás dôvery: kto za firmou stojí (hneď pod úvodom) */
.proof{display:grid;grid-template-columns:auto minmax(0,1.5fr) minmax(0,1fr);gap:20px clamp(24px,4vw,56px);align-items:center;margin-bottom:clamp(28px,4vw,48px);padding-block:clamp(20px,2.5vw,28px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.proof-photo{display:block;width:clamp(96px,10vw,132px);border-radius:12px;overflow:hidden;background:var(--surface)}
.proof-img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.proof-who{display:flex;flex-direction:column;gap:4px;max-width:60ch}
.proof-name{font-family:var(--display);font-weight:560;font-stretch:104%;font-size:clamp(22px,2vw,28px);line-height:1.15;color:var(--strong)}
.proof-role{font-size:15px;color:var(--subtle)}
.proof-text{margin-top:8px;color:var(--muted);font-size:16px}
.proof-side{display:flex;flex-direction:column;gap:12px;align-self:stretch;justify-content:center;padding-left:clamp(0px,3vw,40px);border-left:1px solid var(--line-soft)}
.proof-label{font-family:var(--mono);font-size:14px;color:var(--subtle)}
.proof-names{list-style:none;display:flex;flex-direction:column;gap:2px;font-family:var(--display);font-weight:500;font-stretch:104%;font-size:20px;color:var(--strong)}
.proof-certs{font-size:16px;color:var(--text);margin-top:-6px}
.certs .name{font-size:clamp(20px,1.9vw,26px)}
.proof-links{display:flex;flex-wrap:wrap;gap:4px 20px;margin-top:4px}
.link-arrow{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:500;color:var(--strong);text-decoration:none}
.link-arrow:hover{color:var(--accent)}
.link-arrow .icon{transition:transform .2s var(--ease)}
.link-arrow:hover .icon:last-child{transform:translateX(3px)}
@media (max-width:980px){.proof{grid-template-columns:auto minmax(0,1fr)}.proof-side{grid-column:1/-1;padding:16px 0 0;border-left:0;border-top:1px solid var(--line-soft)}.proof-names{flex-direction:row;flex-wrap:wrap;gap:0 18px}}
@media (max-width:560px){.proof{align-items:start}.proof-text{display:none}}

/* Záverečná výzva */
.cta-panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px 56px;align-items:end;padding:clamp(40px,6vw,80px) 0 clamp(8px,2vw,24px);border-top:1px solid var(--line)}
.cta-panel .h-1{font-size:clamp(34px,4.4vw,60px);max-width:16ch}
.cta-side{display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.cta-side p{font-size:18px}
@media (max-width:820px){.cta-panel{grid-template-columns:1fr}}

/* ---------- Riadky (definície) ---------- */
.rows>div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:6px 32px;padding:22px 0;border-top:1px solid var(--line)}
.rows>div:last-child{border-bottom:1px solid var(--line)}
.rows dt{font-weight:600;color:var(--strong)}
.rows dd{color:var(--muted)}
.rows-l dt{font-family:var(--display);font-weight:520;font-size:clamp(20px,1.8vw,24px);line-height:1.2}
@media (max-width:640px){.rows>div{grid-template-columns:1fr}}

/* ---------- Cenník ---------- */
.price-table{width:100%;border-collapse:collapse}
.price-table thead th{padding:0 0 12px;font-family:var(--mono);font-size:14px;font-weight:400;color:var(--subtle);text-align:left}
.price-table thead th:last-child,.price-table td{text-align:right}
.price-table tbody th,.price-table td{padding:22px 0;border-top:1px solid var(--line);vertical-align:baseline}
.price-table tbody tr:last-child>*{border-bottom:1px solid var(--line)}
.price-table tbody th{font-family:var(--display);font-weight:520;font-size:clamp(18px,1.6vw,22px);line-height:1.25;color:var(--strong);text-align:left;padding-right:24px}
.price-table td{font-weight:500;color:var(--strong);white-space:nowrap}
.split-side .price-intro{margin-top:14px}
.price-note{margin-top:18px;font-size:14px;color:var(--subtle);max-width:72ch}
.offers-note a{text-decoration:underline}
.offers-note a:hover{color:var(--strong)}

/* ---------- SLM ---------- */
.slm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:clamp(32px,5vw,64px);align-items:start}
.chain{list-style:none;position:relative;display:flex;flex-direction:column;gap:10px}
.chain li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 22px;border-radius:var(--r);background:var(--surface)}
.chain li:nth-child(2){margin-left:clamp(14px,3vw,36px)}
.chain li:nth-child(3){margin-left:clamp(28px,6vw,72px)}
.chain-code{font-family:var(--display);font-weight:640;font-stretch:115%;font-size:20px;color:var(--accent)}
.chain-title{font-weight:600;color:var(--strong)}
.chain-note{font-size:14px;color:var(--subtle)}
@media (max-width:480px){.chain li{grid-template-columns:52px minmax(0,1fr)}.chain-note{grid-column:2}}

.kpi-doc{margin:0;border-radius:var(--r-l);background:var(--paper);color:var(--paper-ink);padding:clamp(24px,3vw,36px);box-shadow:0 30px 60px rgba(0,0,0,.25)}
.kpi-head{display:flex;justify-content:space-between;gap:12px;font-family:var(--mono);font-size:14px;color:var(--paper-muted)}
.kpi-title{font-family:var(--display);font-weight:560;font-stretch:104%;font-size:28px;margin:14px 0 18px}
.kpi-rows>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px;padding:11px 0;border-top:1px solid #D2D2CF;font-size:15px;line-height:1.5}
.kpi-rows dt{color:#5A5A5A}
.kpi-note{margin-top:8px;padding-top:16px;border-top:2px solid #161616;font-size:14px;color:#4A4A4A}
@media (max-width:480px){.kpi-rows>div{grid-template-columns:1fr;gap:2px}}

/* ---------- Asset Management ---------- */
.questions{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.questions li{padding:22px 24px 22px 0;border-bottom:1px solid var(--line);font-family:var(--display);font-weight:420;font-stretch:104%;font-size:clamp(22px,2.4vw,32px);line-height:1.15;color:var(--strong)}
.questions li.is-key{color:var(--accent)}
@media (max-width:760px){.questions{grid-template-columns:repeat(2,minmax(0,1fr))}}

.lifecycle{display:flex;flex-direction:column;gap:12px;margin-top:clamp(28px,4vw,44px)}
.lc-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-bottom:1px solid var(--line)}
.lc-tabs button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:84px;padding:14px 12px 16px 0;border:0;background:none;color:var(--muted);cursor:pointer;text-align:left;font-size:17px;font-weight:600}
.lc-tabs button:hover{color:var(--strong)}
.lc-tabs button::after{content:"";position:absolute;left:0;right:12px;bottom:-1px;height:3px;border-radius:2px;background:transparent;transition:background-color .2s}
.lc-tabs button[aria-selected="true"]{color:var(--strong)}
.lc-tabs button[aria-selected="true"]::after{background:var(--accent)}
.lc-n{font-family:var(--display);font-weight:300;font-stretch:112%;font-size:28px;line-height:1;color:var(--subtle)}
.lc-tabs button[aria-selected="true"] .lc-n{color:var(--accent)}
@media (max-width:760px){.lc-tabs{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto;scrollbar-width:none}}
.lc-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px 56px;padding:clamp(24px,3vw,40px) 0}
.lc-panel[hidden]{display:none}
.lc-panel .h-2{margin-bottom:10px}
.lc-panel.is-entering{animation:panel-in .4s var(--ease) both}
@keyframes panel-in{from{opacity:0;transform:translateY(6px)}}

.domains{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(32px,5vw,72px);margin-top:clamp(28px,4vw,44px)}
.domain{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:28px 0 32px;border-top:1px solid var(--line)}
.domain-head{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 16px}
.domain-icon{grid-row:span 2;color:var(--accent);padding-top:2px}
.domain-head .muted{font-size:16px}
.dots{list-style:none;display:flex;flex-direction:column;gap:6px;padding-left:60px;font-size:15px}
.dots li{position:relative;padding-left:16px;line-height:1.5}
.dots li::before{content:"";position:absolute;left:0;top:.65em;width:6px;height:1px;background:var(--muted)}
@media (max-width:820px){.domains{grid-template-columns:1fr}.dots{padding-left:0}}

.compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(28px,4vw,44px);border-radius:var(--r-l);background:var(--surface);overflow:hidden}
.compare-col{padding:clamp(24px,3vw,40px)}
.compare-col+.compare-col{border-left:1px solid var(--line)}
.compare-col .h-2{margin-bottom:12px}
.compare-example{margin-top:18px;max-width:72ch;color:var(--muted);padding-left:20px;border-left:2px solid var(--accent)}
@media (max-width:760px){.compare{grid-template-columns:1fr}.compare-col+.compare-col{border-left:0;border-top:1px solid var(--line)}}

.tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:20px 56px;align-items:center}
.tools .h-2{margin-bottom:8px}
.tool-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.tool-list li{font-size:14px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);color:var(--text)}

.statement{margin:0;padding:clamp(28px,5vw,64px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.statement blockquote{margin:0;font-family:var(--display);font-weight:300;font-stretch:110%;font-size:clamp(26px,3.4vw,46px);line-height:1.18;letter-spacing:-.02em;color:var(--strong);max-width:28ch;text-wrap:balance}
.statement figcaption{margin-top:20px;font-size:14px;color:var(--subtle)}

/* ---------- Služby: postup ---------- */
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.steps li{position:relative;padding:28px 28px 8px 0}
.steps li+li{padding-left:28px;border-left:1px solid var(--line)}
.step-n{display:block;font-family:var(--display);font-weight:300;font-stretch:112%;font-size:64px;line-height:1;color:var(--subtle);margin-bottom:28px}
.steps li:first-child .step-n{color:var(--accent)}
.steps .h-3{margin-bottom:8px;font-size:20px}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.steps li:nth-child(3){padding-left:0;border-left:0}.steps li:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:520px){.steps{grid-template-columns:1fr}.steps li+li{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

/* ---------- O nás ---------- */
.person{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:32px clamp(32px,5vw,72px);align-items:center}
.person-media{width:100%;max-width:300px}
.person-photo{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-l)}
.monogram{display:grid;place-items:center;aspect-ratio:4/5;border-radius:var(--r-l);background:var(--surface);font-family:var(--display);font-weight:300;font-stretch:112%;font-size:clamp(64px,8vw,104px);letter-spacing:-.04em;color:var(--accent)}
.person-body{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.person-role{margin:-4px 0 6px;font-size:15px;color:var(--subtle)}
.person-media picture{display:block}
.person-text{font-size:18px;color:var(--muted);max-width:62ch}
@media (max-width:760px){.person{grid-template-columns:1fr}.person-media{max-width:220px}}
.names{list-style:none;border-top:1px solid var(--line)}
.names li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:4px 24px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line)}
.name{font-family:var(--display);font-weight:540;font-stretch:104%;font-size:clamp(24px,2.4vw,32px);color:var(--strong)}
.names+.small{margin-top:16px}
@media (max-width:560px){.names li{grid-template-columns:1fr}}
.ref blockquote{margin:0 0 14px;font-size:19px;color:var(--strong)}

/* ---------- Časté otázky ---------- */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:44px;padding:22px 0;cursor:pointer;list-style:none;font-size:clamp(17px,1.5vw,19px);font-weight:500;color:var(--strong)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--accent)}
.faq-icon{display:flex;color:var(--muted);transition:transform .25s var(--ease)}
.faq details[open] .faq-icon{transform:rotate(45deg);color:var(--accent)}
.faq details p{padding:0 40px 24px 0;color:var(--muted);max-width:72ch}

/* ---------- Kontakt ---------- */
.contact-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:48px clamp(40px,6vw,88px);align-items:start;padding-bottom:clamp(64px,9vw,120px)}
.contact-list{margin-top:36px;border-top:1px solid var(--line)}
.contact-list>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.contact-list dt{display:flex;align-items:center;gap:10px;color:var(--subtle)}
.contact-list dd{text-align:right;color:var(--strong)}
.contact-list a{text-decoration:none}
.contact-list a:hover{color:var(--accent)}
.form-card{padding:clamp(24px,3vw,40px);border-radius:var(--r-l);background:var(--surface)}
.form-card form{display:flex;flex-direction:column;gap:20px;margin-top:20px}
.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:20px}
.field{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--muted);margin:0;padding:0;border:0;min-width:0}
.field legend{padding:0;margin-bottom:10px}
.field input,.field textarea{width:100%;min-height:52px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--strong);font-size:16px;transition:border-color .2s,box-shadow .2s}
.field textarea{resize:vertical;min-height:150px}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip-check{position:relative;cursor:pointer}
.chip-check input{position:absolute;opacity:0;width:1px;height:1px}
.chip-check span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line);font-size:15px;color:var(--text);transition:background-color .15s,border-color .15s,color .15s}
.chip-check:hover span{border-color:var(--muted)}
.chip-check input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.chip-check input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}
.form-card a{color:var(--accent)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.field input[aria-invalid="true"]{border-color:#FF8A8D}
.field-err{font-size:14px;line-height:1.4;color:#FFB8B5}
.form-error{margin-top:12px;padding:14px 16px;border-radius:12px;border:1px solid #D9534F;background:rgba(217,83,79,.12);color:#FFB8B5}
.form-success{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:16px 0}
.ok-icon{color:var(--accent)}

/* ---------- Text (GDPR) ---------- */
.prose{max-width:760px}
.prose h2{font-family:var(--display);font-weight:540;font-size:22px;margin:40px 0 10px;color:var(--strong)}
.prose h2:first-child{margin-top:0}
.prose p{color:var(--muted)}
.prose a{color:var(--accent)}
.page-hero .subtle{margin-top:16px}

/* ---------- Ďalej ---------- */
.next-link{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label icon" "title icon";gap:4px 16px;align-items:center;padding:26px clamp(24px,3vw,36px);border-radius:var(--r-l);border:1px solid var(--line-soft);text-decoration:none;color:var(--strong);transition:border-color .2s}
.next-label{grid-area:label;font-size:14px;color:var(--subtle)}
.next-title{grid-area:title;font-family:var(--display);font-weight:540;font-stretch:104%;font-size:clamp(22px,2.4vw,30px)}
.next-link .icon{grid-area:icon;color:var(--muted);transition:transform .2s var(--ease),color .2s}
.next-link:hover{border-color:var(--accent)}
.next-link:hover .icon{transform:translateX(4px);color:var(--accent)}

/* ==========================================================================
   Päta
   ========================================================================== */
.site-footer{padding:clamp(48px,6vw,80px) var(--gutter) 16px;background:#222}
.footer-card{max-width:var(--wrap);margin:0 auto;border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:36px 56px;padding:clamp(32px,4vw,48px) 0 32px}
@media (max-width:960px){.footer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}.footer-about{grid-column:1/-1}}
.footer-about{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.footer-about .brand{margin-right:0}
.footer-about p{color:var(--muted);max-width:40ch;font-size:16px}
.f-label{font-size:14px;font-weight:500;color:var(--subtle);margin-bottom:10px}
.site-footer ul{list-style:none;display:flex;flex-direction:column;gap:2px;font-size:15px}
.site-footer nav a{display:inline-flex;align-items:center;min-height:40px;text-decoration:none;color:var(--text)}
.site-footer a:hover{color:var(--accent)}
.f-contact{gap:10px!important;color:var(--muted)}
.f-contact a{text-decoration:none;color:var(--text)}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;padding:20px 0 24px;border-top:1px solid var(--line-soft);font-size:14px;color:var(--subtle)}
.footer-legal{display:flex;flex-direction:column;gap:3px}
.footer-bottom a{color:var(--subtle)}

/* ==========================================================================
   Pohyb
   ========================================================================== */
/* Prechod medzi podstránkami: krátke prelínanie (View Transitions API) */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vt-out .18s ease-in both}
::view-transition-new(root){animation:vt-in .3s var(--ease) both}
::view-transition-group(site-header){animation-duration:0s}
@keyframes vt-out{to{opacity:0}}
@keyframes vt-in{from{opacity:0}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  ::view-transition-old(root),::view-transition-new(root){animation:none}
  .js .gauge-delivered,.lc-panel.is-entering{animation:none}
  *{transition-duration:0s!important}
}

@media print{
  .site-header,.site-footer,.menu-toggle,.skip,.gauge{display:none}
  body{background:#fff;color:#000}
}

/* ---------- Prvý krok: vstupné služby ---------- */
.offers-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:16px clamp(32px,5vw,80px);align-items:end;margin-bottom:clamp(28px,4vw,44px)}
.offers-head .muted{font-size:18px;max-width:56ch}
@media (max-width:900px){.offers-head{grid-template-columns:1fr}}
.offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:12px}
.offer{display:grid;grid-template-rows:subgrid;grid-row:span 7;gap:16px;padding:clamp(24px,3vw,36px);border-radius:var(--r-l);background:var(--paper);color:var(--paper-ink);box-shadow:0 30px 60px rgba(0,0,0,.25)}
.offer-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--paper-line);font-family:var(--mono);font-size:14px;color:var(--paper-muted)}
.offer-title{font-family:var(--display);font-weight:560;font-stretch:104%;font-size:clamp(24px,2.3vw,30px);line-height:1.12;letter-spacing:-.012em}
.offer-text{color:var(--paper-muted)}
.offer-label{font-size:15px;font-weight:600;margin-bottom:2px}
.offer .checks{margin-top:10px}
.offer .checks .icon{color:var(--paper-ink)}
.offer-terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin-top:auto;border-top:2px solid var(--paper-ink)}
.offer-terms>div{padding:14px 0 4px}
.offer-terms dt{font-size:14px;color:var(--paper-muted)}
.offer-terms dd{font-size:16px;font-weight:500;line-height:1.4}
.offer-terms dd.tnum{white-space:nowrap}
.offer-needs{font-size:15px;color:var(--paper-muted);padding:14px 16px;border-radius:12px;background:var(--paper-well)}
.offer-needs strong{display:block;font-weight:600;color:var(--paper-ink);margin-bottom:2px}
.offer .btn{justify-self:start}
.btn-ink{background:var(--paper-ink);color:var(--paper)}
.btn-ink:hover{background:#000;color:var(--accent)}
.btn-ink .icon{transition:transform .2s var(--ease)}
.btn-ink:hover .icon{transform:translateX(3px)}
.offer :focus-visible{outline-color:var(--paper-ink)}
.offers-note{margin-top:16px;font-size:14px;color:var(--subtle)}

/* ==========================================================================
   Efekty a animácie
   ========================================================================== */

/* 1 · Dlaždica služby sa pri prechode premení na nadpis podstránky */
.vt-slm{view-transition-name:vt-slm}
.vt-asm{view-transition-name:vt-asm}
::view-transition-group(vt-slm),::view-transition-group(vt-asm){animation-duration:.55s;animation-timing-function:var(--ease)}
::view-transition-old(vt-slm),::view-transition-old(vt-asm){animation:vt-title-out .3s ease both;height:100%;width:auto;object-fit:contain;object-position:left top}
::view-transition-new(vt-slm),::view-transition-new(vt-asm){animation:vt-title-in .45s .1s ease both;height:100%;width:auto;object-fit:contain;object-position:left top}
@keyframes vt-title-out{to{opacity:0}}
@keyframes vt-title-in{from{opacity:0}}

/* 4 · Nadpisy sa pri načítaní jemne „roztiahnu“ (premenlivá šírka písma Archivo) */
.js .h-display-page,.js .h-display-contact{animation:h-stretch 1.2s var(--ease) both}
.js .hero .h-display{animation:h-stretch 1.3s var(--ease) both}
.js .hero .h-display .h-strong{animation:h-stretch-strong 1.3s var(--ease) .12s both}
@keyframes h-stretch{from{font-stretch:88%;letter-spacing:-.05em}}
@keyframes h-stretch-strong{from{font-stretch:84%;letter-spacing:-.055em}}

/* 2 · Reťazec SLA → OLA → UC sa nakreslí pri skrolovaní */
.chain{padding-left:30px}
.chain li{position:relative;--ind:0px}
.chain li:nth-child(2){--ind:clamp(14px,3vw,36px)}
.chain li:nth-child(3){--ind:clamp(28px,6vw,72px)}
.chain::before{content:"";position:absolute;left:9px;top:34px;bottom:34px;width:2px;border-radius:1px;background:linear-gradient(var(--accent),rgba(241,187,0,.25));transform-origin:top}
html[data-accent="teal"] .chain::before{background:linear-gradient(var(--accent),rgba(45,212,191,.25))}
.chain li::before{content:"";position:absolute;top:50%;left:calc(-21px - var(--ind));width:calc(21px + var(--ind));height:2px;margin-top:-1px;background:var(--line);transform-origin:left}
.chain li::after{content:"";position:absolute;top:50%;left:calc(-26px - var(--ind));width:12px;height:12px;margin-top:-6px;border-radius:50%;background:var(--bg);border:2px solid var(--accent)}
.js .chain-anim::before{transform:scaleY(0);transition:transform 1.1s var(--ease) .15s}
.js .chain-anim li{opacity:.25;transform:translateX(-14px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.js .chain-anim li::before{transform:scaleX(0);transition:transform .45s var(--ease)}
.js .chain-anim li::after{transform:scale(0);transition:transform .4s var(--ease)}
.js .chain-anim .chain-code{color:var(--subtle);transition:color .4s}
.js .chain-anim.is-drawn::before{transform:none}
.js .chain-anim.is-drawn li,.js .chain-anim.is-drawn li::before,.js .chain-anim.is-drawn li::after{opacity:1;transform:none}
.js .chain-anim.is-drawn .chain-code{color:var(--accent)}
.js .chain-anim.is-drawn li:nth-child(1),.js .chain-anim.is-drawn li:nth-child(1)::before,.js .chain-anim.is-drawn li:nth-child(1)::after,.js .chain-anim.is-drawn li:nth-child(1) .chain-code{transition-delay:.2s}
.js .chain-anim.is-drawn li:nth-child(2),.js .chain-anim.is-drawn li:nth-child(2)::before,.js .chain-anim.is-drawn li:nth-child(2)::after,.js .chain-anim.is-drawn li:nth-child(2) .chain-code{transition-delay:.55s}
.js .chain-anim.is-drawn li:nth-child(3),.js .chain-anim.is-drawn li:nth-child(3)::before,.js .chain-anim.is-drawn li:nth-child(3)::after,.js .chain-anim.is-drawn li:nth-child(3) .chain-code{transition-delay:.9s}
.chain li:hover::after{background:var(--accent)}

/* 3 · Melónové SLA: zvonku „papierový“ report (ako SL-01), vnútri tmavá realita.
   Farby len ako tlmené signály: zelená v stave reportu, červená pri problémoch. */
/* rovnaká mriežka ako ukážka SL-01 (.slm-grid), aby mali obe karty rovnakú šírku */
.melon-sec{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:32px clamp(32px,5vw,64px);align-items:center}
.melon-copy .h-1{margin:8px 0 16px}
.melon-copy .muted{max-width:48ch}
.melon-note{margin-top:16px;font-size:14px;color:var(--subtle)}
.melon{--g:#275C31;--g-soft:rgba(39,92,49,.12);--bad:#E8958E;--mx:50%;--my:50%;position:relative;display:grid;min-height:360px;border-radius:var(--r-l);background:var(--paper);color:var(--paper-ink);box-shadow:0 30px 60px rgba(0,0,0,.3);overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent}
.melon-face{grid-area:1/1;display:flex;flex-direction:column;gap:14px;padding:clamp(24px,3vw,36px) clamp(24px,3vw,36px) 84px}
.melon-label{font-family:var(--mono);font-size:14px;color:var(--paper-muted)}
.melon-big{font-family:var(--display);font-weight:300;font-stretch:110%;font-size:clamp(56px,7vw,96px);line-height:1;letter-spacing:-.03em;color:var(--paper-ink)}
.melon-status{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:6px 12px;border-radius:999px;font-size:14px;font-weight:500;background:var(--g-soft);color:var(--g)}
.melon-rows{list-style:none;margin-top:6px;border-top:1px solid var(--paper-line)}
.melon-rows li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;border-bottom:1px solid var(--paper-line);font-size:15px;color:var(--paper-ink)}
.melon-ok{color:var(--g)}
.melon-in{background:var(--surface);color:var(--text);clip-path:circle(0 at var(--mx) var(--my));transition:clip-path 1.2s cubic-bezier(.45,0,.2,1)}
.melon-in .melon-label{color:var(--muted)}
.melon-issues{list-style:none;display:flex;flex-direction:column;gap:12px}
.melon-issues li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;font-size:16px;line-height:1.45;color:var(--text)}
.melon-issues .icon{color:var(--bad);margin-top:2px}
.melon-bad{margin-top:auto;background:rgba(232,149,142,.12);color:var(--bad)}
.melon.is-open .melon-in{clip-path:circle(150% at var(--mx) var(--my))}
.melon-toggle{position:absolute;left:clamp(24px,3vw,36px);bottom:24px;z-index:2;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:var(--paper-ink);color:var(--paper);font:inherit;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s,border-color .2s}
.melon-toggle:hover{border-color:var(--accent);background:#000;color:var(--accent)}
html:not(.js) .melon-toggle{display:none}
html:not(.js) .melon{display:flex;flex-direction:column;cursor:auto}
html:not(.js) .melon-in{clip-path:none}

/* 5 · Lišta postupu čítania pod podmenu */
.onpage-bar{position:relative}
.onpage-progress{position:absolute;left:10px;right:10px;bottom:-1px;height:2px;border-radius:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;pointer-events:none}

@media (prefers-reduced-motion:reduce){
  .js .h-display-page,.js .h-display-contact,.js .hero .h-display,.js .hero .h-display .h-strong{animation:none}
  .js .chain-anim::before,.js .chain-anim li,.js .chain-anim li::before,.js .chain-anim li::after{transform:none;opacity:1}
  .js .chain-anim .chain-code{color:var(--accent)}
  .melon-in{transition:none}
  ::view-transition-group(vt-slm),::view-transition-group(vt-asm),::view-transition-old(vt-slm),::view-transition-new(vt-slm),::view-transition-old(vt-asm),::view-transition-new(vt-asm){animation:none}
}

/* Po prepnutí jazyka (obnova miesta na stránke) bez úvodných animácií nadpisu a meradla */
.lang-restore .h-display-page,.lang-restore .h-display-contact,.lang-restore .hero .h-display,.lang-restore .hero .h-display .h-strong,.lang-restore .gauge-delivered{animation:none!important}
