/* ========= RESET & BASE ========= */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:104px;-webkit-text-size-adjust:100%}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;color:#111;background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-x:clip} /* v12_03: clip místo hidden – hidden dělá z body scroll kontejner a vypíná position:sticky na celé stránce */
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:none;background:none}
ul,ol{list-style:none}

:root{
  --yellow:#FFD500;
  --yellow-2:#FFC400;
  --black:#0a0a0a;
  --ink:#111;
  --dark:#15171a;
  --dark-2:#1d2024;
  --line:#2a2d31;
  --muted:#8a8f96;
  --white:#fff;
  --radius:4px;
  --radius-btn:7px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --container:1200px;
}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}
.header a:focus-visible,.section--yellow a:focus-visible,.sticky-btn--phone:focus-visible{outline-color:var(--black)}

.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--black);color:var(--yellow);padding:12px 20px;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:1.5px;font-size:14px}
.skip-link:focus{left:0}

.ico{width:1em;height:1em;flex-shrink:0;vertical-align:-.12em}

.container{max-width:var(--container);margin:0 auto;padding:0 24px}
.narrow{max-width:880px;margin:0 auto}
.small{font-size:14px}
.muted{color:var(--muted)}

/* ========= TYPO ========= */
h1,h2,h3,h4,.h2{font-family:'Anton','Oswald',sans-serif;font-weight:400;letter-spacing:.5px;line-height:1.05;text-transform:uppercase}
h1{font-size:clamp(40px,7vw,88px)}
.h2{font-size:clamp(32px,4.5vw,56px);margin-bottom:16px}
h3{font-size:22px;letter-spacing:.3px}
.lead{font-size:18px;color:#444;max-width:760px;margin-bottom:32px}
.eyebrow{display:inline-block;font-family:'Oswald',sans-serif;font-weight:600;font-size:13px;letter-spacing:3px;text-transform:uppercase;color:#666;margin-bottom:14px}
.eyebrow--yellow{color:var(--yellow);position:relative;padding-left:36px}
.eyebrow--yellow::before{content:"";position:absolute;left:0;top:50%;width:24px;height:2px;background:var(--yellow);transform:translateY(-50%)}
.eyebrow--black{color:var(--black);padding-left:36px;position:relative}
.eyebrow--black::before{content:"";position:absolute;left:0;top:50%;width:24px;height:2px;background:var(--black);transform:translateY(-50%)}
/* Číslovaná metodická kostra sekcí (01–08) */
.eyebrow__no{font-weight:700;margin-right:11px;font-size:1.15em;letter-spacing:1px;font-variant-numeric:tabular-nums;opacity:.92}
.eyebrow--yellow:has(.eyebrow__no),.eyebrow--black:has(.eyebrow__no){padding-left:0}
.eyebrow--yellow:has(.eyebrow__no)::before,.eyebrow--black:has(.eyebrow__no)::before{display:none}

/* ========= BUTTONS ========= */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:16px 30px;font-family:'Oswald',sans-serif;font-weight:600;font-size:16px;letter-spacing:1.5px;text-transform:uppercase;border-radius:var(--radius-btn);transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease),color .2s var(--ease),border-color .25s var(--ease);cursor:pointer;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.985)}
.btn .ico{transition:transform .25s var(--ease)}
.btn--primary{background:var(--yellow);color:var(--black);box-shadow:0 4px 14px rgba(255,213,0,.3),0 1px 3px rgba(0,0,0,.18)}
.btn--primary:hover{background:var(--yellow-2);box-shadow:0 10px 26px rgba(255,213,0,.45),0 3px 8px rgba(0,0,0,.22)}
.btn--ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.btn--ghost:hover{background:#fff;color:var(--black);border-color:#fff;box-shadow:0 8px 22px rgba(0,0,0,.25)}
.section:not(.section--dark):not(.section--cta) .btn--ghost{color:var(--black);border-color:rgba(0,0,0,.45)}
.section:not(.section--dark):not(.section--cta) .btn--ghost:hover{background:var(--black);color:#fff;border-color:var(--black)}
.btn--yellow{background:var(--yellow);color:var(--black);box-shadow:0 4px 14px rgba(255,213,0,.3),0 1px 3px rgba(0,0,0,.18)}
.btn--yellow:hover{background:var(--yellow-2);box-shadow:0 10px 26px rgba(255,213,0,.45),0 3px 8px rgba(0,0,0,.22)}
.btn--dark{background:var(--black);color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.28)}
.btn--dark:hover{background:#222;box-shadow:0 10px 26px rgba(0,0,0,.4)}
.btn--outline-dark{background:transparent;color:var(--black);border:1.5px solid rgba(0,0,0,.6)}
.btn--outline-dark:hover{background:var(--black);color:#fff;border-color:var(--black);box-shadow:0 8px 22px rgba(0,0,0,.25)}
.btn--block{width:100%}
.btn--large{padding:20px 42px;font-size:18px}
.btn--phone-sm{background:var(--black);color:var(--yellow);padding:10px 18px;font-size:14px;letter-spacing:1px;border:2px solid var(--black);box-shadow:0 2px 8px rgba(0,0,0,.25)}
.btn--phone-sm:hover{background:#1a1a1a}
/* tlačítka s ikonou telefonu – jemný „zazvonění" náklon ikony na hover (decentní) */
.btn:hover .ico{transform:scale(1.08)}

/* ========= TOPBAR ========= */
.topbar{background:#000;color:#fff;font-size:13px;border-bottom:1px solid #222}
.topbar__inner{display:flex;gap:24px;justify-content:flex-end;align-items:center;padding:10px 24px;flex-wrap:wrap}
.topbar__item{color:#ddd;letter-spacing:.5px}
.topbar__phone strong{color:var(--yellow)}
.topbar__loc{color:#888}

/* ========= HEADER ========= */
.header{background:var(--yellow);position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.header__inner{display:flex;align-items:center;gap:24px;padding:10px 24px;min-height:80px}
.logo img{height:64px;width:auto}
.logo__text{display:flex;flex-direction:column;gap:2px;line-height:1.15;padding-left:14px;white-space:nowrap}
.logo__text strong{font-family:'Oswald',sans-serif;font-weight:700;font-size:17px;letter-spacing:1px;text-transform:uppercase;color:var(--black)}
.logo__rot{display:inline-block;transition:opacity .32s var(--ease)}
.logo__text span{display:none;font-family:'Oswald',sans-serif;font-weight:500;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(0,0,0,.65)}
.nav{display:flex;gap:22px;margin-left:auto;font-family:'Oswald',sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:1px;font-size:14px}
.nav a{position:relative;padding:6px 0;color:var(--black);white-space:nowrap}
.nav a:hover{color:#000}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--black);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.nav a:hover::after{transform:scaleX(1)}
.nav-toggle{display:none;flex-direction:column;gap:5px;padding:8px;margin-left:auto}
.nav-toggle span{display:block;width:26px;height:3px;background:#000;border-radius:2px}

/* ========= HERO ========= */
.hero{position:relative;min-height:88vh;display:flex;align-items:flex-start;overflow:hidden;color:#fff;padding:40px 0 60px}
.hero__bg{position:absolute;inset:0;background-size:cover;background-position:72% 50%;background-repeat:no-repeat;filter:contrast(1.04) saturate(1.04)}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.86) 0%,rgba(10,10,10,.66) 40%,rgba(10,10,10,.32) 68%,rgba(10,10,10,.12) 100%),linear-gradient(180deg,rgba(10,10,10,.28) 0%,rgba(10,10,10,.34) 55%,rgba(10,10,10,.62) 100%)}
.hero__ghost{position:absolute;left:-2vw;top:50%;transform:translateY(-50%);font-family:'Anton',sans-serif;font-size:clamp(180px,28vw,400px);color:transparent;-webkit-text-stroke:2px rgba(255,213,0,.55);letter-spacing:8px;line-height:.9;pointer-events:none;user-select:none;z-index:1;white-space:nowrap}
.hero__inner{position:relative;z-index:2;max-width:980px;width:100%;min-width:0;animation:heroUp .7s cubic-bezier(.22,.61,.36,1) both}
@keyframes heroUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.hero .eyebrow{color:var(--yellow);padding-left:36px;position:relative}
.hero .eyebrow::before{content:"";position:absolute;left:0;top:50%;width:24px;height:2px;background:var(--yellow);transform:translateY(-50%)}
.hero h1{color:#fff;margin-bottom:24px;text-shadow:0 4px 30px rgba(0,0,0,.5)}
.hero__mark{background:var(--yellow);color:#000;padding:0 12px;display:inline-block}
.hero__markadd{color:#fff;display:inline-block;margin-left:2px;text-shadow:0 3px 18px rgba(0,0,0,.6)}
.hero__helper{font-size:.45em;letter-spacing:.3px;text-transform:uppercase;margin-left:.6em;vertical-align:baseline;white-space:nowrap} /* v12_59: popisek musí zůstat na JEDNOM řádku hned vedle žlutého boxu. Při .56em byl box+popisek širší než .hero__inner (980px) a popisek se zalamoval pod box – zmenšeno a doplněn nowrap. */
.hero__w-mob{display:none}
@media (max-width:1024px){
  .hero__w-pc{display:none}
  .hero__w-mob{display:inline}
  /* „za pomocníka" zůstává vedle „od 600 Kč/h" na jednom řádku, stejně velké jako „za práci horolezce" */
  .hero__helper{display:inline;margin-left:.48em;font-size:.55em;letter-spacing:.3px;vertical-align:baseline;white-space:nowrap} /* v11_99: kompenzace odstraněné mezery ve zdroji – tablet beze změny */
  /* „za práci horolezce" na vlastní řádek, na jeden řádek */
  .hero__markadd:not(.hero__helper){display:block;margin-left:0;margin-top:3px;font-size:.55em;letter-spacing:.5px;white-space:nowrap;line-height:1.05}
}
.hero__sub{font-size:clamp(16px,1.4vw,19px);color:#e9e9e9;max-width:760px;margin-bottom:36px;text-shadow:0 2px 14px rgba(0,0,0,.62)}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px}
.hero__usps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;border-top:1px solid rgba(255,255,255,.15);padding-top:28px}
.hero__usps li{font-size:13px;color:#d2d2d2;text-transform:uppercase;letter-spacing:1px;line-height:1.45;text-shadow:0 1px 9px rgba(0,0,0,.55)}
.hero__usps strong{display:block;font-family:'Anton',sans-serif;font-size:32px;color:var(--yellow);letter-spacing:1px;margin-bottom:6px;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.hero__refs{margin-top:28px;font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:#a6acb2;text-shadow:0 1px 8px rgba(0,0,0,.5)}

/* ========= STRIP ========= */
.strip{background:#000;color:#fff;padding:18px 0;border-top:4px solid var(--yellow)}
.strip__inner{display:flex;flex-wrap:wrap;gap:32px;justify-content:space-around;align-items:center;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:1.4px;font-size:13.5px;line-height:1.35;color:#ccc}
.strip__inner span{position:relative;padding-left:22px}
.strip__inner span::before{content:"▲";color:var(--yellow);position:absolute;left:0;top:0;font-size:11px}

/* ========= SECTIONS ========= */
.section{padding:100px 0}
.section--dark{background:var(--dark);color:#eaeaea}
.section--dark .lead{color:#b9bdc2}
.section--dark p{color:#c8ccd1}
.section--yellow{background:var(--yellow);color:#000}
.section--yellow .lead,.section--yellow p{color:#1a1a1a}
.h2--black{color:#000}
.section--cta{background:linear-gradient(135deg,#15171a 0%,#0a0a0a 100%);color:#fff}
.section--cta p,.section--cta .lead{color:#cfd2d6}

/* ========= CARDS ========= */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}
.card{background:#1d2024;border:1px solid #2a2d31;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,border-color .25s}
.card:hover{transform:translateY(-6px);border-color:var(--yellow)}
.card--featured{border-color:var(--yellow);position:relative;box-shadow:0 20px 60px rgba(255,213,0,.15)}
.card__badge{position:absolute;top:16px;right:16px;background:var(--yellow);color:#000;font-family:'Oswald',sans-serif;font-weight:700;font-size:12px;letter-spacing:1.5px;padding:6px 12px;text-transform:uppercase;z-index:2;border-radius:2px}
.card__img{height:220px;background-size:cover;background-position:center;border-bottom:3px solid var(--yellow)}
.card__body{padding:28px;display:flex;flex-direction:column;gap:14px;flex:1}
.card__body h3{color:#fff;font-size:28px}
.card .price{font-family:'Oswald',sans-serif}
.card .price strong{font-size:32px;color:var(--yellow);font-weight:700;letter-spacing:1px}
.card .price span{color:#9aa0a6;font-size:14px;text-transform:uppercase;letter-spacing:1.5px;margin-left:6px}
.card__meta{font-family:'Oswald',sans-serif;font-size:12.5px;letter-spacing:1.5px;text-transform:uppercase;color:#9aa0a6;border-top:1px solid #2a2d31;border-bottom:1px solid #2a2d31;padding:10px 0;flex:none !important}
/* opakovací školení – decentně odlišený panel */
.course-repeat{margin-top:24px;display:flex;gap:32px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:30px 32px;background:var(--dark-2);border:1px solid #2a2d31;border-top:3px solid var(--yellow);border-radius:6px;transition:border-color .25s}
.course-repeat:hover{border-color:var(--yellow)}
.course-repeat__info{display:flex;flex-direction:column;gap:10px;flex:1;min-width:min(260px,100%)}
.course-repeat__info h3{color:#fff;font-size:24px}
.course-repeat__info p{color:#b9bdc2;font-size:15px;max-width:560px}
.course-repeat__action{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.course-repeat .price{font-family:'Oswald',sans-serif;white-space:nowrap}
.course-repeat .price strong{font-size:30px;color:var(--yellow);font-weight:700;letter-spacing:1px}
.course-repeat .price span{color:#9aa0a6;font-size:13px;text-transform:uppercase;letter-spacing:1.5px;margin-left:6px}
.card p{color:#b9bdc2;font-size:15px;flex:1}
.card .btn{margin-top:auto}

.callout{margin-top:56px;background:#0a0a0a;border-left:6px solid var(--yellow);padding:32px 36px;display:flex;flex-direction:column;gap:14px;align-items:flex-start;border-radius:4px}
.callout h3{color:var(--yellow);font-size:26px}
.callout p{color:#d5d9de;max-width:720px}

/* ========= SPLIT ========= */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.split__media{min-height:480px;background-size:cover;background-position:center;border-radius:4px;border:3px solid var(--yellow);box-shadow:0 30px 60px rgba(0,0,0,.4)}
.split__media--portrait{aspect-ratio:1086/1184;min-height:0;background-position:center top}
.split__content p:not(:last-child){margin-bottom:14px}
#nv p:not(:last-child){margin-bottom:14px}
.split__content .h2{color:inherit}
.section--dark .split__content .h2{color:#fff}
.checklist{margin:24px 0 32px;display:grid;gap:12px}
.checklist li{position:relative;padding-left:32px;color:#3c4146;font-size:16px}
.section--dark .checklist li{color:#c8ccd1}
.checklist li::before{content:"";position:absolute;left:0;top:8px;width:18px;height:18px;background:var(--yellow);clip-path:polygon(14% 44%,0 65%,40% 100%,100% 16%,86% 0,38% 68%);filter:drop-shadow(.7px 0 0 #0a0a0a) drop-shadow(-.7px 0 0 #0a0a0a) drop-shadow(0 .7px 0 #0a0a0a) drop-shadow(0 -.7px 0 #0a0a0a)}
.cta-row{display:flex;gap:14px;flex-wrap:wrap}
.cta-row--spaced{margin-top:40px}

/* ========= REFERENCE ========= */
.section--refs{background:#101214;border-top:1px solid #232629}
.refs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px}
.ref{display:flex;flex-direction:column;gap:8px;padding:28px 26px;background:rgba(255,255,255,.03);border:1px solid #2a2d31;border-top:3px solid var(--yellow);border-radius:4px;transition:background .25s,border-color .25s}
.ref:hover{background:rgba(255,213,0,.06);border-color:var(--yellow)}
.ref__name{font-family:'Oswald',sans-serif;font-weight:600;font-size:19px;letter-spacing:.5px;text-transform:uppercase;color:#fff}
.ref__tag{font-family:'Oswald',sans-serif;font-size:12.5px;letter-spacing:2px;text-transform:uppercase;color:#9aa0a6}

.ai-excerpt{margin-top:28px;padding:18px 22px;background:rgba(255,213,0,.1);border-left:4px solid var(--yellow);font-size:14px;color:#4a4f54 !important;border-radius:2px}
.section--dark .ai-excerpt{background:rgba(255,213,0,.08);color:#b9bdc2 !important}

/* ========= GRID 4 ========= */
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:48px}
.feat{background:rgba(255,255,255,.03);border:1px solid #2a2d31;padding:28px 24px;border-radius:4px;transition:background .25s,border-color .25s}
.feat:hover{background:rgba(255,213,0,.06);border-color:var(--yellow)}
.feat__num{font-family:'Anton',sans-serif;color:var(--yellow);font-size:42px;margin-bottom:8px;letter-spacing:1px}
.feat h3{color:#fff;font-size:20px;margin-bottom:8px}
.feat p{color:#b9bdc2;font-size:14px;line-height:1.55}

/* ========= STEPS ========= */
.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:48px;counter-reset:step}
.steps li{position:relative;padding:28px 22px;background:#fafafa;border-top:4px solid var(--yellow);border-radius:4px}
.steps li span{font-family:'Anton',sans-serif;color:var(--yellow);font-size:48px;display:block;line-height:1;margin-bottom:12px;-webkit-text-stroke:1px #000}
.steps li h3{font-size:18px;margin-bottom:8px}
.steps li p{font-size:14px;color:#555}

/* ========= TERMÍNY ========= */
.terminy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px}
.termin{background:#000;color:#fff;padding:32px 28px;border-radius:4px;border-left:6px solid #fff}
.termin h3{color:var(--yellow);font-size:24px;margin-bottom:14px}
.termin p{color:#ddd;font-size:16px}
.termin__tags{display:flex;flex-wrap:wrap;gap:8px}
.termin__tag{display:inline-flex;align-items:center;gap:8px;font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:#e7e7e7;border:1px solid rgba(255,255,255,.25);padding:7px 12px;border-radius:2px}
.termin__tag b{color:#000;background:var(--yellow);font-weight:700;padding:1px 7px;border-radius:2px;letter-spacing:1px}
.termin__tag b.op{background:#fff;color:#000;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}

/* ========= KNOWLEDGE ========= */
.kb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px}
.kb article{padding:24px;border:1px solid #eee;border-left:4px solid var(--yellow);background:#fafafa;border-radius:2px}
.kb h3{font-size:18px;margin-bottom:8px;color:#000}
.kb p{font-size:14px;color:#555;line-height:1.6}

/* ========= FORM ========= */
.form{margin-top:32px;display:grid;grid-template-columns:minmax(0,1fr);gap:18px;background:rgba(255,255,255,.04);padding:32px;border-radius:6px;border:1px solid rgba(255,255,255,.1)}
.form__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.form label{display:flex;flex-direction:column;gap:6px;font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--yellow);min-width:0}
.form input,.form select,.form textarea{width:100%;min-width:0;font-family:'Inter',sans-serif;font-size:16px;padding:14px 16px;background:#fff;color:#111;border:2px solid transparent;border-radius:3px;outline:none;letter-spacing:0;text-transform:none;font-weight:400}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--yellow);box-shadow:0 0 0 4px rgba(255,213,0,.2)}
.form .check{flex-direction:row;align-items:center;gap:10px;color:#cfd2d6;font-family:'Inter',sans-serif;font-size:14px;letter-spacing:0;text-transform:none}
.form .check input{width:18px;height:18px;padding:0}

/* ========= FAQ ========= */
.faq{margin-top:40px;display:grid;gap:10px}
.faq details{background:#fafafa;border:1px solid #ececec;border-left:4px solid var(--yellow);border-radius:2px;transition:background .2s}
.faq details[open]{background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.06)}
.faq summary{cursor:pointer;padding:20px 24px;font-family:'Oswald',sans-serif;font-weight:600;font-size:17px;color:#000;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:28px;color:var(--black);font-weight:300;transition:transform .2s;flex-shrink:0}
.faq details[open] summary::after{content:"−"}
.faq details p{padding:0 24px 22px;color:#444;font-size:15px}

/* ========= CONTACT ========= */
.contact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px}
.contact__card{display:flex;flex-direction:column;gap:8px;padding:32px 28px;background:#0a0a0a;border:1px solid #2a2d31;border-radius:4px;transition:border-color .25s,transform .25s}
.contact__card[href]:hover{border-color:var(--yellow);transform:translateY(-4px)}
.contact__label{font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#8a8f96}
.contact__value{font-family:'Anton',sans-serif;font-size:28px;color:#fff;letter-spacing:.5px}
.contact__value--email{font-size:21px;word-break:break-word;text-transform:lowercase}
.contact__cta{margin-top:8px;font-family:'Oswald',sans-serif;font-size:14px;letter-spacing:1.5px;text-transform:uppercase;color:var(--yellow)}

/* Firemní / fakturační údaje (kontaktní sekce) */
.bizinfo{margin-top:24px;padding:26px 28px;background:var(--dark-2,#121417);border:1px solid var(--line);border-radius:var(--radius);position:relative;overflow:hidden}
.bizinfo::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--yellow),var(--yellow-2))}
.bizinfo__title{font-family:'Oswald',sans-serif;font-weight:600;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--yellow);margin-bottom:18px}
.bizinfo__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 32px}
.bizinfo__row{display:flex;flex-direction:column;gap:3px;min-width:0}
.bizinfo__row dt{font-family:'Oswald',sans-serif;font-size:11.5px;letter-spacing:1.6px;text-transform:uppercase;color:#8a8f96}
.bizinfo__row dd{font-family:'Oswald',sans-serif;font-weight:600;font-size:17px;letter-spacing:.4px;color:#fff;word-break:break-word}
.bizinfo__link{display:inline-flex;align-items:center;gap:9px;margin-top:20px;
  font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;letter-spacing:.6px;
  color:var(--yellow);text-decoration:none;border-bottom:1px solid rgba(255,213,0,.4);padding-bottom:2px;
  transition:color .2s var(--ease),border-color .2s var(--ease)}
.bizinfo__link:hover{color:#ffe27a;border-bottom-color:var(--yellow)}
.bizinfo__link .ico{width:18px;height:18px;flex:none}
@media (max-width:600px){
  .bizinfo{padding:22px 20px}
  .bizinfo__grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .bizinfo__link{font-size:13px}
}

/* ========= FOOTER ========= */
.footer{background:#000;color:#aaa;padding:60px 0 0}
.footer__inner{display:grid;grid-template-columns:2fr minmax(0,1fr) minmax(0,1fr);gap:48px}
/* v12_42: sloupec „Co je na webu" (rozklikávací) jen na tabletu/mobilu.
   Na PC a větších (≥1025px) se celý sloupec odstraní a mřížka je 2sloupcová. */
@media (min-width:1025px){
  .footer__inner{grid-template-columns:2fr minmax(0,1fr)}
  .footer__col-acc{display:none}
}
.footer h4{color:var(--yellow);font-size:18px;margin-bottom:14px}
/* v12_24: rozklikávací sloupec v patičce (nadpis podtržený, seznam se rozbalí) */
.footer__acc summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.footer__acc summary::-webkit-details-marker{display:none}
.footer__acc summary h4{margin-bottom:0;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;display:inline-block}
.footer__acc summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--yellow);border-bottom:2px solid var(--yellow);transform:rotate(45deg);transition:transform .25s var(--ease);margin-top:-3px}
.footer__acc[open] summary::after{transform:rotate(-135deg);margin-top:3px}
.footer__acc summary:hover h4{color:#ffdf3a}
.footer__acc ul{margin-top:14px}
.footer__acc:not([open]) ul{display:none}
.footer ul{display:grid;gap:8px}
.footer a:hover{color:var(--yellow)}
.footer img{margin-bottom:16px}
.footer__logo{width:210px;max-width:62%;height:auto;display:block}
.footer p{color:#aaa;font-size:14px;margin-bottom:10px}
.footer__bottom{margin-top:40px;padding:18px 0 14px;border-top:1px solid #1a1a1a;font-size:13px;color:#666}
/* v12_23: pata – odkaz na oficiální web + poznámka o vlastním obsahu */
.footer__bottom p{margin:0 0 6px;color:#888;font-size:13px;line-height:1.5}
.footer__bottom p:last-child{margin-bottom:0}
.footer__site{color:#aaa !important}
.footer__site strong{color:#cfcfcf;font-weight:700}
.footer__site a{color:var(--yellow);border-bottom:1px solid rgba(255,213,0,.35);transition:border-color .2s var(--ease)}
.footer__site a:hover{border-bottom-color:var(--yellow)}
/* v12_25: na mobilu odkaz na oficiální web na samostatném řádku */
@media (max-width:600px){
  .footer__site-sep{display:none}
  .footer__site-link{display:inline-block;margin-top:6px}
}
.footer__copy{color:#777 !important}
.footer__updated{color:#6d6d6d !important;font-size:12px !important}
.footer__owncontent{color:#6d6d6d !important;font-size:12px !important}

/* ========= BAND – INDIVIDUÁLNÍ PŘÍSTUP ========= */
.band{background:var(--black);color:#eaeaea;padding:64px 0;border-top:4px solid var(--yellow)}
.band__inner{text-align:center}
.band .eyebrow--yellow{padding-left:0}
.band .eyebrow--yellow::before{display:none}
.h2--band{font-size:clamp(26px,3.2vw,40px);color:#fff;margin-bottom:14px}
.band p{color:#c8ccd1;max-width:720px;margin:0 auto;font-size:17px}

/* ========= STICKY MOBILNÍ CTA (výměna „Volné termíny" ⇄ telefon) ========= */
.sticky-bar{display:none}
@media (max-width:680px){
  .sticky-bar{
    display:block;position:fixed;left:16px;right:16px;bottom:16px;
    height:56px;z-index:60;
  }
}
.sticky-btn{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;gap:10px;
  font-family:'Oswald',sans-serif;font-weight:700;letter-spacing:1.5px;
  text-transform:uppercase;font-size:16px;border-radius:10px;
  opacity:0;transform:translateY(8px) scale(.99);pointer-events:none;
  transition:opacity .4s var(--ease),transform .4s var(--ease),box-shadow .3s var(--ease);
  will-change:opacity,transform;
}
.sticky-btn .ico{font-size:18px;transition:transform .25s var(--ease)}
.sticky-btn:active{transform:translateY(0) scale(.975)}
/* Telefonní – brandová žlutá */
.sticky-btn--phone{background:var(--yellow);color:#0a0a0a;box-shadow:0 8px 24px rgba(0,0,0,.35),0 2px 6px rgba(255,213,0,.25)}
/* Volné termíny – tmavá varianta se žlutým rámem (jasně odlišená, klidná) */
.sticky-btn--inquiry{
  background:#15171a;color:var(--yellow);
  border:2px solid var(--yellow);
  box-shadow:0 8px 24px rgba(0,0,0,.4),0 0 16px rgba(255,213,0,.14);
}
/* Stav: zobrazeny Volné termíny – jemný jednorázový nástup */
.sticky-bar.is-inquiry .sticky-btn--inquiry{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;animation:stickyIn .45s var(--ease)}
.sticky-bar.is-inquiry .sticky-btn--inquiry:active .ico{transform:scale(1.1)}
/* Stav: zobrazen telefon – jemný jednorázový nástup */
.sticky-bar.is-phone .sticky-btn--phone{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;animation:stickyIn .45s var(--ease)}
@keyframes stickyIn{
  0%{opacity:0;transform:translateY(8px) scale(.99)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}

/* První „Zavolat nyní" v hero (jen mobil): start tmavý, po prvním zobrazení
   CTA „Volné termíny" jemný přechod na brandovou žlutou */
@media (max-width:680px){
  .hero__cta .btn--primary{
    background:#1d2024;color:#fff;
    box-shadow:0 6px 20px rgba(0,0,0,.4);
    transition:background .55s var(--ease),color .55s var(--ease),box-shadow .55s var(--ease),transform .25s var(--ease);
  }
  .hero__cta .btn--primary.hero-call--activate{
    background:var(--yellow);color:var(--black);
    box-shadow:0 6px 20px rgba(255,213,0,.35),0 2px 6px rgba(0,0,0,.2);
    animation:heroCallPop .55s cubic-bezier(.34,1.4,.5,1);
  }
}
@keyframes heroCallPop{
  0%{transform:scale(1)}
  45%{transform:scale(1.045)}
  100%{transform:scale(1)}
}

/* ========= RESPONSIVE ========= */
@media (max-width:1320px){
  .nav{gap:16px;font-size:13.5px;letter-spacing:.8px}
  .header__inner{gap:16px}
}
@media (max-width:1300px){
  .logo__text{display:none}
}
@media (max-width:1024px){
  .logo__text{display:flex}
  .logo__text span{display:block}
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kb{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kb article:last-child{grid-column:1/-1}
  .steps{grid-template-columns:minmax(0,1fr);max-width:680px;margin-left:auto;margin-right:auto;gap:14px}
  .steps li{display:grid;grid-template-columns:64px 1fr;column-gap:20px;align-items:start;border-top:none;border-left:4px solid var(--yellow);padding:22px 24px}
  .steps li span{font-size:40px;margin-bottom:0;grid-row:1/3}
  .steps li h3{margin-bottom:6px}
  .cards{grid-template-columns:minmax(0,1fr);max-width:560px;margin-left:auto;margin-right:auto}
  .terminy,.contact{grid-template-columns:minmax(0,1fr);max-width:560px;margin-left:auto;margin-right:auto}
  .refs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .split{grid-template-columns:1fr;gap:32px}
  .split__media{min-height:340px}
  .split__media--portrait{aspect-ratio:1086/1184;min-height:0;max-width:430px;margin-left:auto;margin-right:auto;width:100%}
  .footer__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .footer__inner > div:first-child{grid-column:1/-1}
  .nav{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(255,199,44,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-direction:column;padding:20px 24px;gap:18px;border-top:2px solid #000;box-shadow:0 16px 30px rgba(0,0,0,.18)}
  .nav.open{display:flex}
  .nav-toggle{display:flex}
  .header{position:relative}
  .btn--phone-sm{display:none}
  .logo__text strong{font-size:15px}
  .logo__text span{font-size:11px}
  html{scroll-padding-top:24px}
}
@media (max-width:680px){
  .section{padding:64px 0}
  .hero{min-height:auto;padding:26px 0 48px}
  .hero h1{margin-bottom:20px}
  .hero__cta{margin-bottom:40px}
  .hero__usps{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;padding-top:24px}
  .hero__usps li{hyphens:none;-webkit-hyphens:none;overflow-wrap:break-word}
  .hero__usps strong{font-size:28px}
  .hero__refs{margin-top:24px;font-size:12px;line-height:1.7}
  .kb,.grid-4,.steps,.refs,.footer__inner{grid-template-columns:minmax(0,1fr)}
  .form__row{grid-template-columns:minmax(0,1fr)}
  .strip__inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;font-size:12.5px;letter-spacing:1.5px}
  .feat{display:grid;grid-template-columns:56px 1fr;column-gap:16px;align-items:start;padding:20px}
  .feat__num{font-size:30px;margin-bottom:0;grid-row:1/3;line-height:1.1}
  .feat h3{margin-bottom:4px}
  .feat p{grid-column:2}
  .footer__inner > div:first-child{grid-column:auto}
  .h2{margin-bottom:14px}
  .lead{font-size:17px;margin-bottom:26px}
  .topbar__inner{justify-content:center;font-size:12px;gap:8px 16px;padding:8px 16px}
  .topbar__loc{display:none}
  body{padding-bottom:84px}
  .hero__ghost{font-size:40vw}
  .callout{padding:24px;border-left-width:4px}
  .callout .btn{width:100%}
  .course-repeat{padding:24px 20px;gap:18px}
  .course-repeat__info h3{font-size:22px}
  .course-repeat__action{width:100%;align-items:stretch;gap:12px;padding-top:18px;border-top:1px solid #2a2d31}
  .course-repeat__action .price{display:flex;align-items:baseline;justify-content:space-between}
  .course-repeat__action .btn{width:100%}
  .band{padding:52px 0}
  .band p{font-size:16px}
  .form{padding:22px 18px}
  .btn--large{padding:18px 28px;font-size:16px}
  .steps li{grid-template-columns:52px 1fr;column-gap:16px;padding:20px}
  .steps li span{font-size:34px}
  .contact__value{font-size:24px}
  .contact__value--email{font-size:18px}
  .faq summary{padding:16px 18px;font-size:16px}
  .faq details p{padding:0 18px 18px}
}
@media (max-width:480px){
  .hero__cta .btn{width:100%}
  .header__inner{gap:12px}
  .cta-row .btn{width:100%}
  .logo img{height:52px}
  .logo__text{padding-left:12px}
  .logo__text strong{font-size:13.5px;letter-spacing:.5px}
  .logo__text span{display:none}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .btn,.card,.feat,.contact__card,.ref,.nav a::after{transition:none}
  .btn:hover,.card:hover,.contact__card[href]:hover{transform:none}
  .btn:hover .ico,.sticky-btn:active .ico{transform:none}
  .sticky-btn{transition:none;animation:none}
  .sticky-bar.is-inquiry .sticky-btn--inquiry,.sticky-bar.is-phone .sticky-btn--phone{animation:none}
  .hero__inner{animation:none}
  .hero__cta .btn--primary{background:var(--yellow);color:var(--black);transition:none}
  .hero__cta .btn--primary.hero-call--activate{animation:none}
}

/* Úprava 2026-06-09: sjednocení pozadí loga s horní lištou */
.logo{display:flex;align-items:center;background:var(--yellow);padding:0;border-radius:0;line-height:0;flex-shrink:0}
.logo img{display:block;background:var(--yellow)}

@media (max-width:360px){
  .logo__text strong{font-size:12px;letter-spacing:.3px}
  .logo img{height:46px}
}
@media (max-width:330px){
  .logo__text{display:none}
}
@media (max-width:340px){
  .h2{font-size:26px;overflow-wrap:break-word}
  h1{font-size:34px}
}

/* ============================================================
   ÚPRAVA 2026-06-14 — modernizace v12.2
   1) Prémiový scroll efekt CTA „Zavolat nyní"
   2) Mobilní „dot" navigace (tři tečky u pravého okraje)
   3) Decentní mikrointerakce
   ============================================================ */

/* ---------- 1) CTA „ZAVOLAT NYNÍ" – prémiový efekt při scrollu ---------- */
/* Decentní lesklý přejezd při vstupu tlačítka do viewportu + jemné
   „dýchání" stínu, dokud je CTA na obrazovce. Nikdy agresivní. */
.btn--call{position:relative;overflow:hidden;isolation:isolate}
.btn--call::after{
  content:"";position:absolute;top:-20%;bottom:-20%;left:-75%;width:55%;
  background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%);
  transform:skewX(-18deg);opacity:0;pointer-events:none;z-index:3;
  mix-blend-mode:soft-light;
}
.btn--call.cta-reveal::after{animation:ctaSheen 1.1s var(--ease) .12s 1}
@keyframes ctaSheen{
  0%{left:-75%;opacity:0}
  12%{opacity:1}
  60%{opacity:1}
  100%{left:135%;opacity:0}
}
/* Jemné, pomalé „dýchání" stínu, jen když je CTA viditelné (nerušivé) */
.btn--call.cta-inview{animation:ctaBreath 3.6s ease-in-out infinite}
.btn--call.cta-inview:hover,.btn--call.cta-inview:focus-visible,
.btn--call.cta-inview:active{animation:none}
@keyframes ctaBreath{
  0%,100%{box-shadow:0 4px 14px rgba(255,213,0,.30),0 1px 3px rgba(0,0,0,.18)}
  50%{box-shadow:0 9px 26px rgba(255,213,0,.46),0 2px 8px rgba(0,0,0,.22)}
}

/* ---------- 3) Mikrointerakce – jemný zoom obrázku karty ---------- */
.card__img{transition:transform .45s var(--ease)}
.card:hover .card__img{transform:scale(1.045)}

/* ---------- 2) MOBILNÍ „DOT" NAVIGACE ---------- */
.dotnav{display:none}
@media (max-width:680px){
  .dotnav{display:block}

  /* Spouštěč – tři nenápadné tečky u pravého okraje, svisle na střed */
  .dotnav__trigger{
    position:fixed;top:88px;right:0;z-index:62;
    transform:translateX(10px);
    width:42px;height:74px;display:flex;align-items:center;justify-content:center;
    background:transparent;border:0;border-radius:16px 0 0 16px;
    opacity:0;pointer-events:none;-webkit-tap-highlight-color:transparent;
    transition:opacity .55s var(--ease),transform .55s var(--ease);
  }
  .dotnav.is-ready .dotnav__trigger{opacity:1;pointer-events:auto;transform:translateX(0)}
  .dotnav__dots{display:flex;flex-direction:column;gap:7px;padding:4px 0}
  .dotnav__dots i{
    width:6px;height:6px;border-radius:50%;background:#0a0a0a;opacity:.30;
    box-shadow:0 0 0 1px rgba(255,255,255,.28);
    transition:opacity .3s var(--ease),transform .35s var(--ease),background .3s var(--ease),box-shadow .3s var(--ease);
  }
  /* Adaptivní kontrast – nad tmavými sekcemi tečky zežloutnou */
  .dotnav.on-dark .dotnav__dots i{background:var(--yellow);opacity:.42;box-shadow:0 0 0 1px rgba(0,0,0,.35)}
  .dotnav__trigger:hover .dotnav__dots i,
  .dotnav__trigger:focus-visible .dotnav__dots i{opacity:.9}
  .dotnav__trigger:active{transform:translateX(0) scale(.93)}

  /* Otevřený stav – tečky se rozestoupí (náznak „aktivní") */
  .dotnav.is-open .dotnav__dots i{opacity:.95}
  .dotnav.is-open .dotnav__dots i:nth-child(1){transform:translateY(7px)}
  .dotnav.is-open .dotnav__dots i:nth-child(3){transform:translateY(-7px)}

  /* Zatmavení pozadí */
  .dotnav__scrim{
    position:fixed;inset:0;z-index:65;background:rgba(8,9,11,.52);
    -webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .35s var(--ease),visibility .35s var(--ease);
  }
  .dotnav.is-open .dotnav__scrim{opacity:1;visibility:visible;pointer-events:auto}

  /* Vysouvací panel navigace */
  .dotnav__panel{
    position:fixed;top:0;right:0;bottom:0;z-index:70;
    width:min(84vw,322px);
    background:linear-gradient(160deg,#15171a 0%,#0c0d0f 100%);
    border-left:3px solid var(--yellow);
    box-shadow:-22px 0 56px rgba(0,0,0,.5);
    padding:26px 22px calc(22px + env(safe-area-inset-bottom)) 24px;
    display:flex;flex-direction:column;
    transform:translateX(106%);pointer-events:none;
    transition:transform .42s var(--ease);
    overflow-y:auto;overscroll-behavior:contain;
  }
  .dotnav.is-open .dotnav__panel{transform:translateX(0);pointer-events:auto}
  .dotnav__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
  .dotnav__title{
    font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:3px;
    text-transform:uppercase;color:var(--yellow);margin:0;padding-left:2px}
  .dotnav__close{
    flex:0 0 auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center;
    border-radius:50%;background:rgba(255,255,255,.06);color:#e9eaec;
    font-size:26px;line-height:1;border:1px solid rgba(255,255,255,.12);
    -webkit-tap-highlight-color:transparent;
    transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}
  .dotnav__close span{margin-top:-3px}
  .dotnav__close:hover,.dotnav__close:focus-visible{background:var(--yellow);color:#0a0a0a;border-color:var(--yellow)}
  .dotnav__close:active{transform:scale(.92)}
  .dotnav__close-btn{
    margin-top:12px;width:100%;padding:13px 18px;border-radius:10px;
    background:transparent;color:#cfd2d6;border:1.5px solid rgba(255,255,255,.22);
    font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;letter-spacing:1.5px;text-transform:uppercase;
    -webkit-tap-highlight-color:transparent;
    transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}
  .dotnav__close-btn:hover,.dotnav__close-btn:focus-visible{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.4)}
  .dotnav__close-btn:active{background:rgba(255,255,255,.1)}
  .dotnav__list{display:flex;flex-direction:column;gap:2px;margin-bottom:20px}
  .dotnav__list a{
    display:block;padding:13px 14px;border-radius:9px;position:relative;
    font-family:'Oswald',sans-serif;font-weight:500;font-size:17px;letter-spacing:.6px;color:#e9eaec;
    transition:background .2s var(--ease),color .2s var(--ease),padding-left .2s var(--ease)}
  .dotnav__list a::before{
    content:"";position:absolute;left:6px;top:50%;width:3px;height:58%;
    background:var(--yellow);border-radius:2px;
    transform:translateY(-50%) scaleY(0);transform-origin:center;
    transition:transform .22s var(--ease)}
  .dotnav__list a:hover,.dotnav__list a:active{background:rgba(255,255,255,.05);padding-left:20px}
  .dotnav__list a.is-current{color:var(--yellow);background:rgba(255,213,0,.08);padding-left:20px}
  .dotnav__list a.is-current::before{transform:translateY(-50%) scaleY(1)}
  .dotnav__cta{
    margin-top:auto;display:flex;align-items:center;justify-content:center;text-align:center;
    padding:15px 18px;background:var(--yellow);color:#0a0a0a;border-radius:10px;
    font-family:'Oswald',sans-serif;font-weight:700;font-size:14.5px;letter-spacing:1.2px;text-transform:uppercase;
    box-shadow:0 6px 18px rgba(255,213,0,.3);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
  .dotnav__cta:hover{box-shadow:0 9px 24px rgba(255,213,0,.42)}
  .dotnav__cta:active{transform:scale(.98)}

  /* Zámek scrollu + skrytí spodního CTA, ať se nepřekrývají */
  body.dotnav-lock{overflow:hidden}
  body.dotnav-lock .sticky-bar{opacity:0;pointer-events:none;transition:opacity .25s var(--ease)}
}

/* ---------- Respektování prefers-reduced-motion ---------- */
@media (prefers-reduced-motion:reduce){
  .btn--call.cta-reveal::after{animation:none;opacity:0}
  .btn--call.cta-inview{animation:none}
  .card:hover .card__img{transform:none}
  .dotnav__trigger,.dotnav__panel,.dotnav__scrim,.dotnav__dots i{transition:none}
}

/* ============================================================
   ÚPRAVA 2026-06-14 — v15
   • úkol 1: mobilní hero CTA – čistý vertikální stack bez kolizí
   • úkol 2/12: odlišení opakovacího školení (doplňkové)
   ============================================================ */

/* Opakovací školení – kicker, který ho odlišuje od úrovní L1–L3 */
/* Mobilní hero: hlavní CTA „Zavolat nyní" a „Nezávazně poptat" se nesmí
   překrývat ani tlačit – čistý vertikální stack s jasným rozestupem. */
@media (max-width:680px){
  .hero__cta{flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:12px;margin-bottom:32px}
  .hero__cta .btn{width:100%}
}

/* ============================================================
   ÚPRAVA 2026-06-14 — v16
   • mini-galerie (slider) u karet školení L1 / L2 / L3
   • tlačítko tří teček – žlutý rámeček + pulz po 1. použití
   • cena opakovacího školení – „od 1 200 Kč“ / „bez DPH“ vlevo
   ============================================================ */

/* ---------- SLIDER U KARET ŠKOLENÍ ---------- */
/* Kontejner dědí pevnou výšku 220px z .card__img → žádný layout shift. */
.vps-slider{position:relative;overflow:hidden}
.vps-slider__track{position:absolute;inset:0}
.vps-slider__img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center;
  opacity:0;transform:scale(1);
  transition:opacity .9s var(--ease),transform .45s var(--ease);
  will-change:opacity;
}
/* Fallback bez JS / jediná fotka: zobrazí se první snímek */
.vps-slider__img:first-child{opacity:1}
/* Po startu JS řídí viditelnost přes .is-active */
.vps-slider.is-ready .vps-slider__img{opacity:0}
.vps-slider.is-ready .vps-slider__img.is-active{opacity:1}
/* Jemný zoom aktivní fotky při hoveru (nahrazuje původní zoom kontejneru) */
.card:hover .vps-slider{transform:none}
.card:hover .vps-slider__img.is-active{transform:scale(1.045)}

/* Indikátor – decentní průhledné kroužky, aktivní je žlutý */
.vps-slider__dots{
  position:absolute;left:0;right:0;bottom:11px;z-index:3;
  display:flex;gap:9px;justify-content:center;align-items:center;
}
.vps-slider__dot{
  width:9px;height:9px;border-radius:50%;padding:0;border:0;cursor:pointer;
  background:rgba(255,255,255,.32);
  box-shadow:0 0 0 1px rgba(0,0,0,.35),0 1px 4px rgba(0,0,0,.45);
  -webkit-tap-highlight-color:transparent;
  transition:background .3s var(--ease),transform .3s var(--ease),box-shadow .3s var(--ease);
}
.vps-slider__dot:hover{background:rgba(255,255,255,.55)}
.vps-slider__dot.is-active{
  background:var(--yellow);transform:scale(1.18);
  box-shadow:0 0 0 1px rgba(0,0,0,.5),0 0 8px rgba(255,213,0,.6);
}

/* ---------- TLAČÍTKO TŘÍ TEČEK – JEMNÝ ADAPTIVNÍ NÁZNAK ---------- */
.dotnav__trigger::after{
  content:"";position:absolute;top:18px;bottom:18px;left:9px;right:9px;
  border-radius:12px;border:1px solid transparent;
  box-shadow:0 0 0 0 rgba(255,213,0,0);
  pointer-events:none;
  transition:border-color .45s var(--ease),box-shadow .45s var(--ease);
}
/* Po prvním použití jen decentní, poloprůhledný náznak – bez výrazného glow,
   barva se přizpůsobuje pozadí (žlutá nad tmavým, jemný tmavý hairline nad světlým) */
.dotnav.is-visited .dotnav__trigger::after{
  border-color:rgba(18,20,23,.20);
  box-shadow:inset 0 0 5px rgba(18,20,23,.06);
}
.dotnav.is-visited.on-dark .dotnav__trigger::after{
  border-color:rgba(255,213,0,.30);
  box-shadow:inset 0 0 6px rgba(255,213,0,.10);
}
/* visited jen lehce zvýrazní tečky, barvu řídí adaptivní logika (on-dark) */
.dotnav.is-visited:not(.on-dark) .dotnav__trigger .dotnav__dots i{opacity:.5}
.dotnav.is-visited.on-dark .dotnav__trigger .dotnav__dots i{opacity:.6}
/* Krátké, jemné pulznutí po otevření/zavření – malý dosah, poloprůhledné */
.dotnav.is-pulse .dotnav__trigger::after{animation:dotnavPulse .7s var(--ease)}
@keyframes dotnavPulse{
  0%{box-shadow:0 0 0 0 rgba(255,213,0,.30)}
  60%{box-shadow:0 0 0 5px rgba(255,213,0,0)}
  100%{box-shadow:0 0 0 0 rgba(255,213,0,0)}
}

/* ---------- CENA OPAKOVACÍHO ŠKOLENÍ – STACK VLEVO ---------- */
.course-repeat__action .price.price--stack{
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;
  gap:2px;line-height:1.05;text-align:left;
}
.course-repeat .price--stack span{margin-left:0;text-align:left}

/* ---------- prefers-reduced-motion: tlumení pohybu ---------- */
@media (prefers-reduced-motion:reduce){
  .vps-slider__img{transition:opacity .001ms}
  .card:hover .vps-slider__img.is-active{transform:none}
  .vps-slider__dot{transition:none}
  .dotnav.is-pulse .dotnav__trigger::after{animation:none}
  .dotnav__trigger::after{transition:none}
}

/* ============================================================
   ÚPRAVA 2026-06-15 — v17
   • úkol 7: kompaktní header při scrollu (plynulé, s hysterezí)
   • úkol 5: kurzor pointer u prokliknutelného slideru
   ============================================================ */

/* ---------- úkol 7: KOMPAKTNÍ HEADER PŘI SCROLLU ---------- */
.header{transition:box-shadow .3s var(--ease),background-color .3s var(--ease)}
.header__inner{transition:min-height .3s var(--ease),padding-top .3s var(--ease),padding-bottom .3s var(--ease)}
.header .logo img{transition:width .3s var(--ease),height .3s var(--ease)}
.header .logo__text strong,.header .logo__text span{transition:font-size .3s var(--ease),opacity .3s var(--ease)}

.header.header--compact{box-shadow:0 4px 16px rgba(0,0,0,.18)}
.header.header--compact .header__inner{min-height:58px;padding-top:5px;padding-bottom:5px}
.header.header--compact .logo img{width:54px;height:54px}
.header.header--compact .logo__text span{opacity:.78}

@media (prefers-reduced-motion:reduce){
  .header,.header__inner,.header .logo img,
  .header .logo__text strong,.header .logo__text span{transition:none}
}

/* ---------- úkol 5: prokliknutelný / swipovatelný slider ---------- */
.vps-slider--interactive .vps-slider__track{cursor:pointer}

/* ============================================================
   ÚPRAVA 2026-06-15 — v18
   • úkol 1/4: řízení ořezu nových fotek v kartách (object-position)
   ============================================================ */
.vps-slider__img.img-focus-center{object-position:center center}
.vps-slider__img.img-focus-top{object-position:center 22%}
.vps-slider__img.img-focus-bottom{object-position:center 78%}
.vps-slider__img.img-focus-left{object-position:left center}
.vps-slider__img.img-focus-right{object-position:right center}

/* ============================================================
   ÚPRAVA 2026-06-16 — v19
   • animace fotky instruktora po kliknutí (zlatý ripple + glow)
   • dotnav: indikátor pozice na stránce + stav při tažení (drag-scroll)
   ============================================================ */

/* ---------- Fotka instruktora – jemná mikroanimace po kliknutí ---------- */
.instructor-photo{position:relative;cursor:pointer}
.instructor-photo::after{
  content:"";position:absolute;inset:-3px;border-radius:inherit;pointer-events:none;
  opacity:0;box-shadow:0 0 0 0 rgba(255,213,0,0);
}
.instructor-photo--pulse{animation:instrPulse .6s var(--ease)}
.instructor-photo--pulse::after{animation:instrRipple .65s var(--ease)}
@keyframes instrPulse{0%{transform:scale(1)}45%{transform:scale(1.02)}100%{transform:scale(1)}}
@keyframes instrRipple{
  0%{opacity:1;box-shadow:0 0 0 0 rgba(255,213,0,.55),0 0 20px rgba(255,213,0,.40)}
  100%{opacity:0;box-shadow:0 0 0 18px rgba(255,213,0,0),0 0 34px rgba(255,213,0,0)}
}

/* ---------- dotnav – stav při tažení (drag-scroll) ---------- */
.dotnav__trigger{touch-action:none}            /* drag-scroll řídí JS, brání dvojímu scrollu */
/* stav při vědomém tažení po tlačítku */
.dotnav.is-dragging .dotnav__trigger{transform:translateX(0) scale(1.05)}
.dotnav.is-dragging .dotnav__dots i{background:var(--yellow);opacity:.9}
.dotnav.is-dragging .dotnav__trigger::after{
  border-color:rgba(255,213,0,.38);
  box-shadow:inset 0 0 7px rgba(255,213,0,.14);
}

@media (prefers-reduced-motion:reduce){
  .instructor-photo--pulse,.instructor-photo--pulse::after{animation:none}
  .dotnav.is-dragging .dotnav__trigger{transform:translateX(0)}
}

/* ============================================================
   ÚPRAVA 2026-06-16 — v21
   • menu tečky jako pohyblivý jezdec (poloha = pozice na stránce)
   ============================================================ */
/* plynulý posun jezdce při běžném scrollu; při tažení drží přesně pod prstem */
.dotnav__trigger{transition:opacity .55s var(--ease),transform .55s var(--ease),top .12s ease-out}
.dotnav.is-dragging .dotnav__trigger{transition:opacity .55s var(--ease),transform .2s var(--ease),top 0s}
@media (prefers-reduced-motion:reduce){
  .dotnav__trigger{transition:opacity .55s var(--ease),transform .55s var(--ease),top 0s}
}

/* ============================================================
   ÚPRAVA 2026-06-16 — v22
   • štítek návaznosti kurzů v kartách L2 / L3
   ============================================================ */
.card__prereq{
  display:flex;align-items:center;gap:9px;
  font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:1.2px;
  text-transform:uppercase;font-weight:600;color:var(--yellow);
  margin-top:-2px;
}
.card__prereq::before{
  content:"";flex:none;width:16px;height:2px;border-radius:2px;
  background:var(--yellow);box-shadow:0 0 6px rgba(255,213,0,.5);
}

/* ============================================================
   ÚPRAVA 2026-06-16 — v23
   • mobil: skrytí nativního posuvníku (polohu ukazují tři tečky)
   ============================================================ */
@media (max-width:680px){
  html{scrollbar-width:none;-ms-overflow-style:none}
  html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0;display:none}
}

/* ============================================================
   ÚPRAVA 2026-06-17 — v24
   3) tenká žlutá linie mezi legislativou a poptávkou
   4) štítek „Základní školení" (sdílí .card__prereq – beze změny stylu)
   5) jemné odhalení FAQ položek
   6) autorská FAQ položka + sr-only (skrytá SEO věta)
   2) telefonní CTA na konci stránky – dočasný černý rámeček
   8) skrytí spodního navigačního bloku „Web" na mobilu
   ============================================================ */

/* 3) jednoduchý světlý oddělovač přes celou šířku nad #poptavka */
#poptavka{position:relative}
#poptavka::before{
  content:"";position:absolute;top:0;left:0;
  width:100%;height:1px;
  background:rgba(255,255,255,.12);pointer-events:none;
}

/* 5) FAQ – jemné odhalení (fade-up); bez JS/efektu zůstávají položky viditelné */
.faq details.faq-reveal{opacity:0;transform:translateY(12px)}
.faq details.faq-reveal--in{
  opacity:1;transform:none;
  transition:opacity .5s var(--ease),transform .5s var(--ease);
}
.faq summary:hover{color:#111}
.faq details:hover{border-left-color:#ffdf3a}

/* 6) sr-only (přístupná, ale vizuálně skrytá SEO věta) */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* autorská FAQ položka – decentní žlutý akcent */
.faq details.faq__item--author{box-shadow:0 0 0 1px rgba(255,213,0,.35)}
.faq details.faq__item--author[open]{box-shadow:0 6px 22px rgba(0,0,0,.07),0 0 0 1px rgba(255,213,0,.5)}

/* 2) telefonní CTA na konci stránky – dočasný prémiový černý rámeček */
.contact__card--phone{transition:box-shadow .4s var(--ease),transform .4s var(--ease)}
.phone-cta--end-highlight{
  box-shadow:0 0 0 2px #0a0a0a,0 0 0 5px rgba(255,213,0,.45),0 14px 30px rgba(0,0,0,.18);
  animation:phoneEndPulse .7s var(--ease);
}
@keyframes phoneEndPulse{
  0%{box-shadow:0 0 0 0 #0a0a0a,0 0 0 0 rgba(255,213,0,0)}
  55%{box-shadow:0 0 0 3px #0a0a0a,0 0 0 8px rgba(255,213,0,.35)}
  100%{box-shadow:0 0 0 2px #0a0a0a,0 0 0 5px rgba(255,213,0,.45),0 14px 30px rgba(0,0,0,.18)}
}

@media (max-width:680px){
  /* 8) skrytí spodního navigačního bloku „Web" na mobilu */
  .footer__col-web{display:none}
}
@media (prefers-reduced-motion:reduce){
  .faq details.faq-reveal{opacity:1;transform:none}
  .contact__card--phone{transition:none}
  .phone-cta--end-highlight{animation:none}
}

/* ============================================================
   ÚPRAVA 2026-06-17 — v25
   IV) zrušení modrého zvýraznění prohlížeče po kliknutí na fotky
   V)  úplné odstranění žlutého rámečku kolem menu tří teček
   ============================================================ */
/* V) žádný rámeček kolem teček (v žádném stavu) – tečky i funkce zůstávají */
.dotnav__trigger::after{display:none!important}

/* IV) klik na fotky bez modrého tap-highlightu / modrého rámečku prohlížeče */
.instructor-photo,.vps-slider,.vps-slider__track,.vps-slider__img,
.split__media,.split__media--portrait{
  -webkit-tap-highlight-color:transparent;
}
.instructor-photo{outline:none;-webkit-user-select:none;user-select:none}
.instructor-photo:focus,.instructor-photo:focus-visible,
.vps-slider__img:focus,.vps-slider__track:focus{outline:none}

/* ============================================================
   ÚPRAVA 2026-06-17 — v26
   VI) tematické ikony + jemné oddělovače v horním menu (desktop)
   ============================================================ */
.nav a{display:inline-flex;align-items:center;gap:7px}
.nav__ico{width:1.22em;height:1.22em;opacity:.92;flex:none;
  transition:opacity .2s var(--ease),transform .25s var(--ease)}
.nav a:hover .nav__ico{opacity:1;transform:translateY(-1px)}
@media (min-width:1025px){
  /* Úkol – prémiovější, lépe čitelná horní lišta:
     větší a sytější písmo (škáluje s šířkou displeje, ale nepřeteče),
     výraznější ikony a decentní „pill" podsvit u aktivní položky. */
  .nav{gap:2px; font-size:clamp(13px, .42vw + 7.4px, 14px); font-weight:600; letter-spacing:.4px}
  .nav a{
    padding:9px 12px; gap:8px; border-radius:8px; color:#0a0a0a;
    transition:background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);
  }
  .nav a:hover, .nav a:focus-visible{background:#0a0a0a; color:var(--yellow); transform:translateY(-1px); box-shadow:0 7px 18px rgba(0,0,0,.3)}
  .nav a:hover .nav__ico, .nav a:focus-visible .nav__ico{opacity:1; color:var(--yellow); transform:translateY(-1px)}
  .nav a::after{display:none}   /* zvýraznění řeší tmavý chip, ne podtržení */
  /* jemné svislé oddělovače – kratší, vystředěné, méně rušivé než plná linka */
  .nav a:not(:first-child){position:relative}
  .nav a:not(:first-child)::before{
    content:""; position:absolute; left:-1px; top:50%; transform:translateY(-50%);
    width:1px; height:18px; background:rgba(0,0,0,.16);
  }
  .nav a:hover::before{opacity:0}
  /* spodní zvýraznění zarovnané s obsahem položky, o něco výraznější */
  .nav a::after{left:12px; right:12px; height:2.5px; bottom:4px}
}
@media (min-width:1025px){
  .header .btn--phone-sm{display:none}  /* telefon je v horní liště – uvolní místo pro 8 položek menu */
}

/* Úkol – horní žlutá lišta: silnější, prémiovější vzhled na PC a větších displejích.
   Vyšší lišta s jemným tmavým spodním lemem a širší vnitřní řádek, aby se větší
   menu pohodlně vešlo i s logo-textem (obsah stránek zůstává v 1200px). */
@media (min-width:1025px){
  .header{box-shadow:0 3px 14px rgba(0,0,0,.12); border-bottom:1px solid rgba(0,0,0,.14)}
  .header__inner{max-width:1360px; min-height:90px; gap:28px}
  .logo img{height:68px}
}

/* Úkol – mobilní rozklikávací menu ve žluté liště: čistší, profesionálnější
   a prémiovější vnitřek. Každá položka je přehledný řádek s ikonou v tmavém
   „chipu", jemným oddělovačem a decentní šipkou cíle. */
@media (max-width:1024px){
  .nav{
    padding:10px 14px 14px;
    gap:0;
    background:rgba(14,15,19,.86);                         /* tmavé sklo – částečně průhledné */
    -webkit-backdrop-filter:blur(16px) saturate(1.2);
    backdrop-filter:blur(16px) saturate(1.2);
    border-top:2px solid var(--yellow);
    box-shadow:0 26px 46px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.06);
  }
  .nav a{
    display:flex; align-items:center; gap:14px; width:100%;
    padding:14px 8px; border-radius:10px;
    font-size:15px; font-weight:600; letter-spacing:.8px; color:#f1f2f4;   /* světlý, čitelný text */
    border-bottom:1px solid rgba(255,255,255,.08);
    transition:background .2s var(--ease), padding-left .2s var(--ease), color .2s var(--ease);
  }
  .nav a:last-child{border-bottom:none}
  .nav a:hover, .nav a:active, .nav a:focus-visible{background:rgba(255,213,0,.13); padding-left:14px; color:#fff}
  /* ikona v jemném žlutém chipu – prémiový akcent na tmavém skle */
  .nav .nav__ico{
    width:38px; height:38px; padding:9px; flex:none; opacity:1;
    border-radius:10px; background:rgba(255,213,0,.14); color:var(--yellow);
    border:1px solid rgba(255,213,0,.28);
    transition:background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);
  }
  .nav a:hover .nav__ico, .nav a:active .nav__ico{background:var(--yellow); color:#0a0a0a}
  /* jemná šipka napravo naznačující přechod na sekci */
  .nav a::after{
    content:""; position:static; display:block; flex:none; margin-left:auto;
    width:8px; height:8px; background:none; opacity:.65; transform:rotate(-45deg); transform-origin:center;
    border-right:2px solid rgba(255,255,255,.5); border-bottom:2px solid rgba(255,255,255,.5);
  }
  .nav a:hover::after, .nav a:active::after{border-color:var(--yellow); opacity:1}
}

/* ============================================================
   ÚPRAVA 2026 — přestavba na firemní web „Výškové práce Anděl"
   Pouze ADITIVNÍ doplňky pro nové sekce (recenze, pásmo působnosti,
   poznámka k nacenění). Sdílí stávající designové tokeny – beze
   změny existujících pravidel, animací a responzivity.
   ============================================================ */

/* --- Recenze zákazníků (sdílí vizuální jazyk .ref / karet) --- */
.reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:40px}
.review{display:flex;flex-direction:column;gap:16px;padding:28px 26px;background:rgba(255,255,255,.03);border:1px solid #2a2d31;border-left:3px solid var(--yellow);border-radius:4px;transition:background .25s,border-color .25s}
.review:hover{background:rgba(255,213,0,.06);border-color:var(--yellow)}
.review__quote{color:#dfe3e7;font-size:16px;line-height:1.6}
.review__quote::before{content:"„";color:var(--yellow);font-family:'Anton',sans-serif;font-size:30px;line-height:0;vertical-align:-10px;margin-right:4px}
.review__meta{margin-top:auto;font-family:'Oswald',sans-serif;font-size:12.5px;letter-spacing:1.5px;text-transform:uppercase;color:#9aa0a6}
.review__meta strong{display:block;color:#fff;font-size:15px;letter-spacing:.6px;text-transform:none;margin-bottom:2px}
@media (max-width:1024px){.reviews{grid-template-columns:minmax(0,1fr);max-width:560px;margin-left:auto;margin-right:auto}}

/* --- Pásmo působnosti / poznámka k nacenění --- */
.note{margin-top:28px;padding:18px 22px;background:rgba(255,213,0,.1);border-left:4px solid var(--yellow);font-size:15px;color:#4a4f54;border-radius:2px}
.section--dark .note{background:rgba(255,213,0,.08);color:#c8ccd1}
/* Zdrojová/metodická poznámka – kontrastní na žluté sekci */
.note--source{background:rgba(10,10,10,.055);border-left-color:#0a0a0a;color:#3d3a2e}
/* v12_45: odkaz na PDF tahák */
.pdf-dl{margin:14px 0 0;font-size:14px;color:#5a5647}
.pdf-dl a{display:inline-flex;align-items:center;font-weight:700;color:#0a0a0a;
  border-bottom:2px solid var(--yellow);padding-bottom:1px;text-decoration:none}
.pdf-dl a:hover{background:rgba(255,213,0,.25)}
.pdf-dl .ico{font-size:15px}
.note--source strong{color:#0a0a0a}
/* Poznámka o DPH u cen */
.vat-note{margin-top:16px;font-family:'Oswald',sans-serif;font-weight:600;font-size:13.5px;letter-spacing:.4px;text-transform:uppercase;color:#0a0a0a}
.section--yellow .vat-note{color:#0a0a0a}
.hero__vat{margin-top:14px;font-family:'Oswald',sans-serif;font-size:12.5px;letter-spacing:1.4px;text-transform:uppercase;color:#c7cccf}
/* Závěrečné shrnutí – principy metodiky (číslování navazuje na kroky 01–08) */
.principles{list-style:none;counter-reset:pr;display:grid;gap:22px;margin-top:38px;max-width:880px}
.principles li{counter-increment:pr;position:relative;padding-left:74px}
.principles li::before{content:counter(pr,decimal-leading-zero);position:absolute;left:0;top:-6px;font-family:'Anton',sans-serif;font-size:46px;line-height:1;color:rgba(10,10,10,.17)}
.principles h3{font-size:19px;margin:0 0 5px;color:#0a0a0a;font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:.2px}
.principles p{margin:0;color:#2a2b23;font-size:15.5px;line-height:1.58;max-width:660px}
@media(max-width:600px){.principles li{padding-left:58px}.principles li::before{font-size:37px}}
.areas{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.areas span{font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:#1a1a1a;background:rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.18);padding:8px 14px;border-radius:3px}
.section--dark .areas span{color:#e7e7e7;background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.18)}

/* =====================================================================
   ===  MODERNIZACE 2026  =============================================
   Zachovává industriální identitu (černá + žlutá). Pouze:
   (1) lehké doladění barev → grafit + sytější zlatá
   (2) přepracovaný FORMÁT a ROZLOŽENÍ boxů a prvků
   Vše jako override existujících tříd – HTML i JS beze změny.
   ===================================================================== */

/* (1) ---- LEHKÉ DOLADĚNÍ PALETY (grafit + zlatá), ostřejší geometrie ---- */
:root{
  --yellow:#FFC72C;      /* sytější, o něco teplejší zlatá místo neonové */
  --yellow-2:#F2B61C;
  --black:#0a0c0f;       /* grafitová čerň s chladným nádechem */
  --ink:#0f1216;
  --dark:#13171c;
  --dark-2:#191e25;
  --line:#2b323b;        /* chladnější hairline */
  --muted:#8b929c;
  --radius:2px;          /* ostřejší, techničtější rohy */
  --radius-btn:3px;
}
.hero__ghost{-webkit-text-stroke-color:rgba(255,199,44,.5)}

/* (2) ---- RYTMUS SEKCÍ + NADPISY ---- */
.section{padding:clamp(82px,11vh,128px) 0}
.h2{font-size:clamp(32px,4.6vw,58px);letter-spacing:.3px;line-height:1.0}
.eyebrow{font-size:12px;letter-spacing:3.5px}
.lead{font-size:18px;line-height:1.62}

/* ---- STRIP: segmentovaný pruh ---- */
.strip{padding:0;border-top:none}
.strip__inner{justify-content:stretch;gap:0;padding:0}
.strip__inner span{flex:1;text-align:center;padding:18px 10px;border-left:1px solid #1c1f24;padding-left:10px}
.strip__inner span:first-child{border-left:none}
.strip__inner span::before{position:static;display:inline-block;margin-right:9px;font-size:9px;vertical-align:2px}
@media (max-width:760px){.strip__inner{flex-wrap:wrap}.strip__inner span{flex:1 1 50%;border-top:1px solid #1c1f24}}

/* ---- HERO: segmentované staty ---- */
.hero__usps{gap:0;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);overflow:hidden}
.hero__usps li{padding:20px 22px;border-left:1px solid rgba(255,255,255,.12)}
.hero__usps li:first-child{border-left:none}
.hero__usps strong{font-size:30px}
@media (max-width:640px){.hero__usps{grid-template-columns:repeat(2,1fr)}.hero__usps li:nth-child(odd){border-left:none}.hero__usps li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.12)}}

/* ---- KARTY SLUŽEB: hairline dlaždice + horní akcentní linka ---- */
.cards{gap:18px;margin-top:52px}
.card{background:var(--dark-2);border:1px solid var(--line);border-radius:var(--radius);position:relative}
.card::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease);z-index:3}
.card:hover{transform:translateY(-6px);border-color:#3a424c}
.card:hover::after{transform:scaleX(1)}
.card__img{height:208px;border-bottom:1px solid var(--line)}
.card__body{padding:30px 28px;gap:13px}
.card__body h3{font-size:25px;line-height:1.08}
.card__meta{border:none;border-top:1px solid var(--line);padding:12px 0 0;margin-top:2px;color:#9aa0a6}
/* index dlaždice */
.card__body h3::before{content:counter(svc,decimal-leading-zero);counter-increment:svc;display:block;font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:2px;color:var(--yellow);margin-bottom:10px}
.cards{counter-reset:svc}
.card--featured{box-shadow:0 24px 60px rgba(255,199,44,.12);border-color:var(--yellow)}
.card__badge{top:0;right:0;border-radius:0 0 0 4px;padding:8px 14px}

/* tři rovnocenné silné boxy na desktopu */
@media (min-width:921px){
  .cards{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.card--featured{grid-row:auto;grid-column:auto}

/* ---- COURSE-REPEAT panel ---- */
.course-repeat{border-radius:var(--radius);border:1px solid var(--line);border-top:3px solid var(--yellow);padding:32px 34px}
/* ---- CALLOUT ---- */
.callout{border-radius:var(--radius);border-left-width:4px}

/* ---- DETAILNÍ VÝČET (kb): bento hairline mřížka ---- */
.kb{gap:1px;background:#e6e6e6;border:1px solid #e6e6e6;border-radius:var(--radius);overflow:hidden;margin-top:48px}
.kb article{background:#fff;border:none;border-radius:0;padding:28px 26px;position:relative;transition:background .25s}
.kb article::before{content:"";position:absolute;left:0;top:0;width:0;height:0;border-style:solid;border-width:14px 14px 0 0;border-color:var(--yellow) transparent transparent transparent;opacity:0;transition:opacity .25s}
.kb article:hover{background:#fafafa}
.kb article:hover::before{opacity:1}
.kb h3{font-size:17.5px}

/* ---- HODNOTY (grid-4 / feat): bento hairline + spodní akcent ---- */
.grid-4{gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:48px}
.feat{background:var(--dark);border:none;border-radius:0;padding:34px 28px;position:relative}
.feat::before{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--yellow);transition:width .35s var(--ease)}
.feat:hover{background:rgba(255,199,44,.05)}
.feat:hover::before{width:100%}
.feat__num{font-size:36px;color:var(--yellow);-webkit-text-stroke:0}

/* ---- REFERENCE & PRO KOHO: editorial index řádky ---- */
.refs{display:block;border-top:1px solid var(--line);margin-top:44px;counter-reset:rl}
.ref{display:grid;grid-template-columns:46px minmax(0,1.3fr) minmax(0,1fr);gap:22px;align-items:center;
  padding:22px 4px;border-bottom:1px solid var(--line);counter-increment:rl;position:relative;transition:padding .3s var(--ease),background .3s var(--ease)}
.ref::before{content:counter(rl,decimal-leading-zero);font-family:'Oswald',sans-serif;font-weight:600;font-size:13px;letter-spacing:1.5px;color:var(--muted)}
.ref:hover{padding-left:18px;background:rgba(255,255,255,.02)}
.ref:hover::before{color:var(--yellow)}
.ref__name{font-size:clamp(18px,2vw,25px);letter-spacing:.3px}
.ref__tag{justify-self:end;text-align:right;letter-spacing:1.5px}
@media (max-width:680px){.ref{grid-template-columns:34px 1fr;gap:6px 14px;padding:18px 2px}.ref__tag{grid-column:2;justify-self:start;text-align:left}}

/* ---- RECENZE: ostřejší dlaždice s velkým uvozovákem ---- */
.reviews{gap:18px;margin-top:44px}
.review{background:var(--dark-2);border:1px solid var(--line);border-left:3px solid var(--yellow);border-radius:var(--radius);padding:30px 28px;position:relative}
.review:hover{border-color:#3a424c;border-left-color:var(--yellow);background:rgba(255,199,44,.04)}
.review__quote{font-size:16.5px}

/* ---- STEPS: propojená moderní časová osa ---- */
.steps{gap:14px;margin-top:54px;position:relative}
.steps::before{content:"";position:absolute;top:31px;left:9%;right:9%;height:2px;
  background:repeating-linear-gradient(90deg,var(--yellow) 0 14px,transparent 14px 26px);z-index:0}
.steps li{background:transparent;border:none;border-radius:0;padding:0 12px;text-align:center}
.steps li span{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 18px;
  border:2px solid var(--yellow);border-radius:50%;background:#fff;color:#111;font-size:25px;-webkit-text-stroke:0;position:relative;z-index:1}
.steps li h3{font-size:17px}
@media (max-width:820px){
  .steps{grid-template-columns:1fr;gap:0;max-width:520px;margin-left:auto;margin-right:auto}
  .steps::before{top:0;bottom:0;left:31px;right:auto;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--yellow) 0 14px,transparent 14px 26px)}
  .steps li{display:grid;grid-template-columns:64px 1fr;gap:18px;text-align:left;padding:14px 0;align-items:start}
  .steps li span{margin:0}
}

/* ---- FAQ: plochý editorial akordeon ---- */
.faq{gap:0;margin-top:44px;border-top:1px solid #e6e6e6}
.faq details{background:transparent;border:none;border-bottom:1px solid #e6e6e6;border-radius:0}
.faq details[open]{background:transparent;box-shadow:none}
.faq summary{padding:24px 4px;font-size:clamp(17px,1.7vw,21px)}
.faq summary::after{display:grid;place-items:center;width:34px;height:34px;border:1.5px solid rgba(0,0,0,.25);border-radius:50%;font-size:22px;line-height:0}
.faq details[open] summary::after{border-color:var(--yellow);background:var(--yellow)}
.faq details p{padding:0 4px 26px;font-size:15.5px;max-width:80ch}

/* ---- KONTAKT: dlaždice s horní akcentní linkou ---- */
.contact{gap:18px;margin-top:44px}
.contact__card{background:var(--dark-2);border:1px solid var(--line);border-radius:var(--radius);padding:34px 30px;position:relative;overflow:hidden}
.contact__card::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.contact__card[href]:hover::after{transform:scaleX(1)}
.contact__card[href]:hover{border-color:#3a424c}

/* ---- SPLIT média: tenký rám + rohové „ticky" ---- */
.split__media{border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 30px 70px rgba(0,0,0,.45);position:relative}
.split__media::before,.split__media::after{content:"";position:absolute;width:22px;height:22px;border:3px solid var(--yellow);z-index:2}
.split__media::before{top:-1px;left:-1px;border-right:none;border-bottom:none}
.split__media::after{bottom:-1px;right:-1px;border-left:none;border-top:none}

/* ---- FORMULÁŘ: ostřejší, techničtější ---- */
.form{border-radius:var(--radius);padding:clamp(26px,3vw,40px);border-color:rgba(255,255,255,.12)}
.form input,.form select,.form textarea{border-radius:var(--radius);border:1px solid #2f343b;background:#0e1115;color:#fff}
.form input::placeholder,.form textarea::placeholder{color:#6f757d}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--yellow);box-shadow:0 0 0 3px rgba(255,199,44,.18)}
.form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23FFC72C' stroke-width='1.6'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:42px}

/* ---- CENÍK (žlutá sekce): jemné odsazení boxů ---- */
.section--yellow .areas span{border-radius:var(--radius)}
/* Ceník – lepší čitelnost: větší mezery mezi odstavci + zvýraznění klíčových informací */
#cenik p{margin-bottom:22px; line-height:1.8}
#cenik p:last-of-type{margin-bottom:26px}
#cenik p strong{font-weight:700; color:#000}
@media (max-width:600px){ #cenik p{margin-bottom:18px; line-height:1.78} }
/* pomocná třída – skrýt obsah jen na mobilu */
.hide-m{display:inline}
@media (max-width:600px){ .hide-m{display:none} }
/* pomocná třída – zobrazit obsah jen na mobilu (opak .hide-m) */
.only-m{display:none}
@media (max-width:600px){ .only-m{display:inline} }
/* (úkol) bílý text jen na mobilu – lepší čitelnost vybraných vět */
@media (max-width:600px){ .wht-m, .wht-m strong{color:#fff} }

/* ---- BUTTONY: o stupínek ostřejší ---- */
.btn{border-radius:var(--radius-btn);letter-spacing:1.8px}

/* --- Recenze: bodové hodnocení + zákazníci (úkol reference) --- */
.review{position:relative;padding-right:64px}
.review__score{position:absolute;top:24px;right:22px;font-family:'Oswald',sans-serif;font-weight:700;
  font-size:13px;letter-spacing:.5px;color:var(--black);background:var(--yellow);padding:5px 9px;border-radius:3px;line-height:1}
.review__meta{display:flex;flex-direction:column;gap:2px;font-family:'Oswald',sans-serif;font-size:12.5px;
  letter-spacing:1px;text-transform:uppercase;color:#9aa0a6;margin-top:auto}
.review__meta strong{color:#fff;font-size:15px;letter-spacing:.4px;text-transform:none}
@media (min-width:681px) and (max-width:1024px){.reviews{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}}

.clients{margin-top:44px;border-top:1px solid var(--line);padding-top:28px}
.clients__label{display:block;font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:2.5px;
  text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.cl-short{display:none}
@media (max-width:600px){
  .clients__label{font-size:12px;letter-spacing:1.2px;white-space:normal;line-height:1.4}
  .cl-full{display:none}
  .cl-short{display:inline}
}
.clients__list{display:flex;flex-wrap:wrap;gap:10px}
.clients__list li{font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;letter-spacing:.6px;
  color:#e7e7e7;background:rgba(255,255,255,.04);border:1px solid var(--line);padding:10px 16px;border-radius:var(--radius);
  transition:border-color .25s,background .25s}
.clients__list li:hover{border-color:var(--yellow);background:rgba(255,199,44,.06)}

/* =====================================================================
   ===  ÚPRAVY – pořadí služeb, zelený akcent, prémiové recenze  ======
   ===================================================================== */

/* Jednotný tmavě zelený odstín (zaveden a používán konzistentně:
   spojovací proužek v „Bezpečnost a odbornost" + boxy hodnocení). */
:root{
  --green:#15281f;
  --green-2:#1c3528;
  --green-line:#2e4d3b;
}

/* (1) Hlavní služba (.card--featured = 2. v pořadí) vždy vizuálně uprostřed na PC.
   DOM pořadí A,B,C (na mobilu logicky shora dolů). */
@media (min-width:921px){
  .cards .card:nth-child(1){order:1}  /* Rizikové výškové práce → vlevo */
  .cards .card:nth-child(2){order:2}  /* Hlavní služba → uprostřed */
  .cards .card:nth-child(3){order:3}  /* Školení a revize OOPP → vpravo */
}
/* po přeskupení by číslování L→R nedávalo smysl – decentně skryjeme */
.card__body h3::before{content:none}

/* (3) Zelený spojovací proužek přes celou šířku obou sloupců */
.ai-excerpt--full{width:100%;margin-top:34px;border-radius:var(--radius)}
.section--dark .ai-excerpt--full{
  background:var(--green);
  border:1px solid var(--green-line);
  border-left:4px solid var(--yellow);
  color:#cfe3d7 !important;
}
.section--dark .ai-excerpt--full strong{color:#fff}

/* (5)+(6) Prémiové, kompaktní a vyrovnané boxy hodnocení na tmavě zeleném pozadí */
.reviews{gap:16px;margin-top:40px}
.review{
  background:var(--green);
  border:1px solid var(--green-line);
  border-left:1px solid var(--green-line);
  border-radius:var(--radius);
  padding:26px 26px;
  display:flex;flex-direction:column;gap:16px;
  justify-content:flex-start;min-height:236px;position:relative;
  transition:background .25s,border-color .25s,transform .25s}
.review:hover{background:var(--green-2);border-color:#3a6149;transform:translateY(-4px)}
/* hodnocení = jemný zlatý akcent, ne dominantní plocha */
.review__score{position:static;align-self:flex-start;
  font-family:'Oswald',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.5px;
  color:var(--yellow);background:transparent;border:1px solid rgba(255,199,44,.45);
  padding:4px 11px;border-radius:999px;line-height:1}
.review__score::before{content:"★ ";color:var(--yellow);font-size:11px}
/* citace – těžiště boxu, čistá typografie i u krátkých textů */
.review__quote{flex:1;display:flex;align-items:center;margin:0;
  color:#eef3f0;font-size:16.5px;line-height:1.5;letter-spacing:.1px}
.review__quote::before{content:"“";font-family:'Anton',sans-serif;color:var(--yellow);
  opacity:.5;font-size:30px;line-height:0;margin-right:8px;align-self:flex-start;transform:translateY(14px)}
/* patička – jméno + typ zakázky, oddělená jemnou linkou */
.review__meta{margin-top:0;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);
  display:flex;flex-direction:column;gap:3px;
  font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#8fae9c}
.review__meta strong{color:#fff;font-size:15px;letter-spacing:.4px;text-transform:none;font-family:'Inter',sans-serif;font-weight:600}
@media (max-width:560px){.review{min-height:0}}

/* =====================================================================
   ===  MOBILNÍ OPTIMALIZACE  =========================================
   ===================================================================== */

/* (A) Konec vodorovného přetékání – skryté dekorace / redundantní navigace */
@media (max-width:600px){
  .hero__ghost{display:none}            /* na mobilu velkou vrstvu nezobrazujeme – tam je výrazný podpis ANDĚL */
}
@media (max-width:680px){
  .dotnav{display:none}                 /* redundantní s hamburger menu + přetékalo off-canvas */
  /* v12_27: dřív .footer{padding-bottom:96px} + body{padding-bottom:84px}
     dělalo dvojí rezervu = moc velká prázdná mezera pod textem patičky.
     Zmenšeno na 24px – plovoucí spodní tlačítko text nepřekryje, mezera
     je přirozená. */
  .footer{padding-bottom:24px}
}

/* (B) Tlačítka se na mobilu nesmí ořezávat – text se zalomí, CTA přes celou šířku */
@media (max-width:560px){
  .btn{white-space:normal;text-align:center;line-height:1.25}
  .btn--large{padding:17px 22px;font-size:15px}
  .hero__cta,.cta-row{flex-direction:column;align-items:stretch}
  .hero__cta .btn,.cta-row .btn{width:100%}
}

/* (C) Kratší stránka, čistší svislý rytmus, sjednocené velikosti */
@media (max-width:560px){
  .section{padding:58px 0}
  .container{padding:0 18px}
  .h2{font-size:clamp(26px,7.5vw,34px)}
  .lead{font-size:16.5px}
  .eyebrow{font-size:11.5px;letter-spacing:2.5px}

  .hero{min-height:auto;padding:30px 0 46px}
  .hero h1{font-size:clamp(34px,10vw,46px)}
  .hero__sub{font-size:16px;margin-bottom:26px}
  .hero__usps{margin-top:28px;padding-top:22px;gap:0}
  .hero__usps strong{font-size:24px}
  .hero__refs{margin-top:22px;font-size:12px}

  .cards{margin-top:30px}
  .card__body{padding:24px 22px;gap:11px}
  .card__body h3{font-size:23px}
  .kb,.grid-4,.values,.reviews,.contact,.refs,.steps,.aud,.pricegrid{margin-top:26px}
  .clients{margin-top:30px}
  .feat{padding:26px 22px}
  .review{padding:22px 22px}
  .section__head,.section .lead{margin-bottom:0}
}

/* (D) Pojistka proti přetečení na úzkých displejích
   v12_03: overflow-x:clip (s fallbackem hidden) – hidden na html/body
   vypínalo position:sticky (přišpendlenou fotku v sekci 05 i jinde) */
@media (max-width:768px){
  html,body{overflow-x:hidden;overflow-x:clip}
  .hero__inner,.container{max-width:100%}
}

/* =====================================================================
   ===  SLIDER HODNOCENÍ (jeden prémiový rámeček)  ====================
   ===================================================================== */
.revslider{margin-top:40px;max-width:900px}
@media (min-width:601px){ .revslider{max-width:none} }   /* PC: box hodnocení na celou šířku sekce */
.revslider__viewport{overflow:hidden;border:1px solid var(--green-line);border-left:3px solid var(--yellow);
  background:linear-gradient(180deg,var(--green-2),var(--green));border-radius:var(--radius);
  box-shadow:0 30px 70px rgba(0,0,0,.42)}
.revslider__track{display:flex;will-change:transform;transition:transform .55s var(--ease)}
.revslide{flex:0 0 100%;min-width:0;box-sizing:border-box;padding:46px 52px;
  display:flex;flex-direction:column;gap:22px;min-height:296px}
.revslide__score{align-self:flex-start;font-family:'Oswald',sans-serif;font-weight:600;font-size:13px;
  letter-spacing:.6px;color:var(--yellow);border:1px solid rgba(255,199,44,.45);padding:5px 13px;border-radius:999px;line-height:1}
.revslide__quote{flex:1;display:flex;align-items:center;margin:0;color:#eef3f0;
  font-size:clamp(18px,2.1vw,23px);line-height:1.5;letter-spacing:.1px;font-weight:500}
.revslide__quote::before{content:"“";color:var(--yellow);opacity:.45;font-family:'Anton',sans-serif;
  font-size:46px;line-height:0;margin-right:10px;vertical-align:-14px}
.revslide__meta{display:flex;flex-direction:column;gap:3px;margin:0;
  font-family:'Oswald',sans-serif;font-size:12.5px;letter-spacing:1px;text-transform:uppercase;color:#8fae9c}
.revslide__meta strong{color:#fff;font-size:17px;letter-spacing:.3px;text-transform:none;font-family:'Inter',sans-serif;font-weight:600}
.revslider__nav{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:24px}
.revslider__arrow{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  background:transparent;border:1px solid var(--line);color:#cfd3d8;font-size:22px;line-height:1;cursor:pointer;
  transition:border-color .2s,color .2s,background .2s}
.revslider__arrow:hover{border-color:var(--yellow);color:var(--yellow);background:rgba(255,199,44,.07)}
.revslider__dots{display:flex;gap:9px;align-items:center}
.revslider__dots button{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.22);border:0;padding:0;cursor:pointer;
  transition:width .3s var(--ease),background .3s,border-radius .3s}
.revslider__dots button.is-on{width:26px;border-radius:6px;background:var(--yellow)}
@media (max-width:560px){
  .revslide{padding:30px 24px;min-height:340px;gap:18px}
  .revslide__quote{font-size:18px}
  .revslider__nav{gap:14px}
}

/* =====================================================================
   ===  OPRAVA: tří-tečkové mobilní menu (viditelné + kontrastní)  ====
   ===================================================================== */
@media (max-width:680px){
  .dotnav{display:block}                 /* znovu zapnuté tří-tečkové menu */
  .nav-toggle{display:none}              /* na telefonu používáme tří-tečkové menu (bez duplicity) */
  .dotnav__trigger{
    background:rgba(18,20,24,.34);
    -webkit-backdrop-filter:saturate(150%) blur(11px);backdrop-filter:saturate(150%) blur(11px);
    border:1px solid rgba(255,255,255,.16);border-right:none;
    box-shadow:0 6px 18px rgba(0,0,0,.18);
    width:46px;height:82px;
  }
  /* Nad tmavými sekcemi sklo decentně potemní (ladí + drží kontrast teček) */
  .dotnav.on-dark .dotnav__trigger{background:rgba(10,12,15,.42);border-color:rgba(255,199,44,.30)}
  .dotnav.is-open .dotnav__trigger{background:rgba(10,12,15,.55)}
  /* Tečky: adaptivní kontrast – na světlém pozadí tmavé s jemnou září,
     nad tmavými sekcemi žluté s tmavým lemem; vždy čitelné a decentní. */
  .dotnav__trigger .dotnav__dots i{
    width:6px;height:6px;border-radius:50%;
    background:#0a0a0a;opacity:.6;box-shadow:0 0 0 1.4px rgba(255,255,255,.6);
  }
  .dotnav.on-dark .dotnav__trigger .dotnav__dots i{
    background:var(--yellow);opacity:.95;box-shadow:0 0 0 1.2px rgba(0,0,0,.45);
  }
}

/* =====================================================================
   ===  ÚPRAVY 2026/06  ================================================
   Doladění desktopu + Affekt zakončení. Pouze aditivní override,
   sdílí stávající tokeny (žlutá/grafit), HTML/JS jádro beze změny.
   ===================================================================== */

/* (C) HERO – nová fotka: lezec je vpravo (~74 % šířky, ~55 % výšky).
   Na desktopu se ořezává výška → řídíme svislou pozici; na mobilu se
   ořezávají boky → posun doprava, aby lezec zůstal vždy v záběru. */
@media (min-width:1025px){
  .hero__bg{transform:none;background-position:58% 48%}
}
@media (min-width:1500px){
  .hero__bg{transform:none;background-position:54% 46%}
}
@media (max-width:768px){
  .hero__bg{background-position:75% 42%}
}
@media (max-width:420px){
  .hero__bg{background-position:77% 40%}
}
@media (prefers-reduced-motion:reduce){
  .hero__bg{transition:none}
}

/* (F1) BEZPEČNOST A ODBORNOST – vyrovnání desktopu:
   fotka se na PC roztáhne na výšku obsahu (žádné prázdné místo vedle). */
@media (min-width:821px){
  #bezpecnost .split{align-items:stretch}
  #bezpecnost .split__media{min-height:380px;height:100%}
}

/* (F2) Decentní oddělovač mezi „Bezpečnost a odbornost" a „Proč Výškové práce Anděl"
   (obě sekce mají tmavé pozadí – potřebují vizuální předěl). */
#bezpecnost{padding-bottom:clamp(58px,6.8vh,88px)}
#proc{padding-top:0}
#proc > .container{position:relative;padding-top:clamp(58px,6.8vh,88px)}
#proc > .container::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:clamp(150px,44%,380px);height:1px;background:var(--line)}
/* středový značkový prvek oddělovače – oválná karabina (SVG v HTML, .sec-link) */
.sec-link{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);
  background:var(--dark);padding:0 12px;line-height:0;color:var(--yellow);z-index:1;pointer-events:none}
.sec-link svg{width:42px;height:29px;display:block;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}
.sec-link img{width:54px;height:54px;display:block;object-fit:contain;
  filter:drop-shadow(0 2px 7px rgba(0,0,0,.5))}

/* (G) O SPOLEČNOSTI – logo místo velké „portrétové" plochy: zmenšit,
   centrovat a zobrazit celé (contain) na decentním grafitovém poli. */
#o-nas .split__media.instructor-photo{
  aspect-ratio:1/1;min-height:0;max-width:340px;width:100%;
  margin-inline:auto;align-self:center;
  background-size:contain;background-repeat:no-repeat;background-position:center;
  background-color:#0c0e11;
}
@media (max-width:1024px){
  #o-nas .split__media.instructor-photo{max-width:300px}
}

/* (H) REFERENCE – vycentrovat prémiový rámeček, aby na desktopu
   nepůsobil odsazený doleva (vyvážené, konzistentní zobrazení). */
.revslider{margin-left:auto;margin-right:auto}
.revslide{min-height:300px;justify-content:space-between}

/* (K) VYBRANÍ ZÁKAZNÍCI A REALIZACE – responzivní, vyvážené štítky.
   Štítky rovnoměrně vyplní řádek; osamocený štítek na posledním řádku
   se roztáhne na celou šířku místo malého „zbytku". */
.clients__list{gap:10px}
.clients__list li{flex:1 1 200px;text-align:center;display:flex;align-items:center;justify-content:center}
@media (max-width:520px){
  .clients__list li{flex:1 1 100%}
}

/* (A) AFFEKT – decentní, profesionální zakončení webu (ne „nalepená reklama") */
/* v12_24: Prémiová patičková reklama na AI nástroj (nahrazuje Affekt) */
.footpromo{border-top:1px solid #1a1a1a;margin-top:48px}
.footpromo__inner{display:flex;align-items:center;gap:22px;flex-wrap:wrap;
  padding:26px 0 8px}
.footpromo__media{flex:0 0 auto;background:#000;border:1px solid rgba(255,213,0,.3);border-radius:12px;
  padding:9px;box-shadow:0 10px 26px rgba(0,0,0,.5)}
.footpromo__media img{width:60px;height:60px;display:block}
.footpromo__text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.footpromo__label{font-family:'Oswald',sans-serif;font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--yellow)}
.footpromo__title{font-family:'Oswald',sans-serif;font-weight:600;font-size:16px;color:#f0f0f0;line-height:1.25}
.footpromo__desc{font-size:12.5px;line-height:1.5;color:#8b9098;max-width:520px}
.footpromo__cta{flex:0 0 auto;display:inline-flex;align-items:center;
  font-family:'Oswald',sans-serif;font-weight:700;font-size:13.5px;letter-spacing:.6px;text-transform:uppercase;
  padding:12px 22px;border-radius:8px;background:var(--yellow);color:#0a0a0a;text-decoration:none;
  box-shadow:0 4px 14px rgba(255,213,0,.28);transition:background .2s var(--ease),transform .14s var(--ease),box-shadow .2s var(--ease)}
.footpromo__cta:hover{background:#ffdf3a;transform:translateY(-2px);box-shadow:0 8px 22px rgba(255,213,0,.4)}
.footpromo__cta:active{transform:translateY(0)}
/* v12_43: nové prvky promo (badge zdarma, akční blok, poznámka pod CTA) */
.footpromo__badge{display:inline-block;background:var(--yellow);color:#0a0a0a;font-weight:700;
  padding:2px 8px;border-radius:5px;margin-right:8px;letter-spacing:1.4px}
.footpromo__action{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:6px}
.footpromo__note{font-size:11px;letter-spacing:.4px;color:#8b9098}
.footpromo__desc strong{color:#e6e9ec;font-weight:700}

/* v12_43: na PC a větších (≥1025px) prémiová, výrazně konverznější varianta */
@media (min-width:1025px){
  .footpromo{margin-top:56px;border-top:none}
  .footpromo__inner{
    position:relative;gap:30px;padding:30px 34px;margin-bottom:8px;
    border:1px solid rgba(255,213,0,.42);border-radius:18px;
    background:
      radial-gradient(120% 160% at 12% 0%, rgba(255,213,0,.14), transparent 55%),
      linear-gradient(180deg, rgba(255,213,0,.06), rgba(255,213,0,.015));
    box-shadow:0 18px 46px rgba(0,0,0,.5), inset 0 0 0 1px rgba(255,213,0,.06);
    overflow:hidden;
  }
  /* jemný zlatý „glow" pruh nahoře */
  .footpromo__inner::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,transparent,var(--yellow),transparent);opacity:.7}
  .footpromo__media{background:#0a0a0a;border-color:rgba(255,213,0,.5);border-radius:14px;padding:11px;
    box-shadow:0 12px 30px rgba(0,0,0,.55),0 0 0 4px rgba(255,213,0,.06)}
  .footpromo__media img{width:76px;height:76px}
  .footpromo__label{font-size:12px;letter-spacing:2.4px;color:var(--yellow)}
  .footpromo__badge{padding:3px 10px;font-size:11px}
  .footpromo__title{font-size:23px;font-weight:700;color:#fff;line-height:1.2}
  .footpromo__desc{font-size:14px;color:#c2c7cd;max-width:600px;margin-top:2px}
  .footpromo__cta{font-size:15.5px;padding:15px 30px;border-radius:10px;
    box-shadow:0 8px 22px rgba(255,213,0,.36);animation:footpromoPulse 2.6s var(--ease) infinite}
  .footpromo__cta:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(255,213,0,.5);animation-play-state:paused}
  .footpromo__note{font-size:12px;color:#9aa0a7}
}
@keyframes footpromoPulse{
  0%,100%{box-shadow:0 8px 22px rgba(255,213,0,.34)}
  50%{box-shadow:0 8px 30px rgba(255,213,0,.6)}
}
@media (max-width:640px){
  .footpromo__inner{gap:16px}
  .footpromo__media{padding:8px}
  .footpromo__media img{width:52px;height:52px}
  .footpromo__title{font-size:15px}
  .footpromo__action{width:100%;order:3}
  .footpromo__cta{width:100%;justify-content:center}
  .footpromo__text{flex-basis:calc(100% - 90px)}
}
@media (prefers-reduced-motion:reduce){
  .footpromo__cta{transition:none;animation:none}
  .footpromo__cta:hover{transform:none}
}

/* ============================================================
   ===  ÚPRAVY 2026/06 – várka 2  =============================
   ============================================================ */

/* (3) HERO BADGE – badge zůstává čistý; značkový nápis „ANDĚL" je nově
   řešen jako samostatná plovoucí vrstva v hero (.hero__ghost) níže. */
.hero__mark{position:relative}

/* (13) DOTNAV – odstranit rušivý silný žlutý focus ring.
   Tenké ohraničení boxu (1px) i funkce zůstávají; přístupnost zachována
   decentním neutrálním focusem. */
.dotnav__trigger:focus{outline:none}
.dotnav__trigger:focus-visible{outline:1.5px solid rgba(255,255,255,.55);outline-offset:1px}

/* (1) MOBILNÍ HEADER – proporce dvou pruhů + viditelný hamburger v hlavní liště */
@media (max-width:680px){
  /* A) černý utility bar – o něco vyšší a čitelnější */
  .topbar__inner{padding:11px 16px;font-size:12.5px;gap:6px 18px}
  /* B) žlutá hlavní lišta – nižší a kompaktnější (logo zůstává čitelné) */
  .header__inner{min-height:56px;padding:7px 16px;gap:12px}
  .header .logo img{height:44px}
  .logo__text{padding-left:11px}
  .logo__text strong{font-size:14px;letter-spacing:.5px}
  .logo__text span{display:none}            /* podtitulek skryt → kompaktnější lišta */
  /* hamburger zpět do hlavičky – vpravo, dobře klikatelný a čitelný */
  .nav-toggle{display:flex !important;margin-left:auto;padding:9px 6px}
  .nav-toggle span{width:26px;height:3px;background:#000}
}
@media (max-width:380px){
  .header .logo img{height:40px}
  .header .logo__text strong{font-size:12.5px;letter-spacing:.3px}
}

/* =====================================================================
   ===  HERO – plovoucí značková vrstva „ANDĚL"  (várka 3) ============
   Prémiový industriální outline watermark: tři vrstvy (glow → outline →
   světelný sweep), jemné plování, světelný shimmer. Sedí pod hlavním
   obsahem (z-index pod .hero__inner) → „HOROLEZECKOU TECHNIKOU" zůstává
   plně čitelné. Responzivní; respektuje prefers-reduced-motion.
   ===================================================================== */
.hero__ghost{
  left:-3vw; right:auto; top:45%;
  font-family:'Anton',sans-serif;
  font-size:clamp(120px,12vw,210px);
  letter-spacing:8px; line-height:.9; white-space:nowrap;
  color:transparent;
  -webkit-text-stroke:1.6px rgba(255,255,255,.42);
  z-index:1; pointer-events:none; user-select:none;
  transform:translateY(-50%);
  animation:ghostFloat 16s ease-in-out infinite;
  will-change:transform;
}
.hero__ghost::before,
.hero__ghost::after{
  content:attr(data-text);
  position:absolute; left:0; top:0; white-space:nowrap;
  /* font-size / letter-spacing / line-height / font-family se dědí → přesný překryv */
}
/* vrstva 1 – měkký bílý glow (hloubka, napojení na bílý nadpis) */
.hero__ghost::before{
  color:rgba(255,255,255,.26);
  -webkit-text-stroke:0;
  filter:blur(13px);
  z-index:-1;
  animation:ghostGlow 9s ease-in-out infinite;
}
/* vrstva 3 – pomalý světelný přejezd přes outline */
.hero__ghost::after{
  color:transparent;
  -webkit-text-stroke:0;
  background-image:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.8) 50%,transparent 62%);
  -webkit-background-clip:text; background-clip:text;
  background-size:280% 100%; background-repeat:no-repeat;
  background-position:210% 0;
  animation:ghostSheen 9s ease-in-out infinite;
}
@keyframes ghostFloat{
  0%,100%{transform:translateY(-50%)}
  50%{transform:translateY(calc(-50% - 18px))}
}
@keyframes ghostGlow{
  0%,100%{opacity:.5}
  50%{opacity:1}
}
@keyframes ghostSheen{
  0%{background-position:210% 0}
  55%,100%{background-position:-120% 0}
}

/* TABLET – velká vrstva „LUKÁŠ ANDĚL" (menší, aby se vešla) */
@media (min-width:601px) and (max-width:1024px){
  .hero__ghost{left:-3vw; font-size:clamp(72px,10vw,140px); letter-spacing:6px; -webkit-text-stroke-width:1.5px}
}
/* DESKTOP – výraznější a prostorovější */
@media (min-width:1025px){
  .hero__ghost{left:-6vw; font-size:clamp(100px,9.4vw,178px); letter-spacing:9px; -webkit-text-stroke-width:1.7px}
}
/* Navazující „& SPOL." k velké vrstvě „LUKÁŠ ANDĚL" – tablet i desktop.
   Stejný outline styl, velká verzálka, jemně jiný prémiový zlatý odstín. */
.hero__ghost-amp{
  display:none;
  font-family:'Anton',sans-serif; text-transform:uppercase;
  line-height:.9; white-space:nowrap;
  color:transparent;
  -webkit-text-stroke:1.6px rgba(255,206,64,.62);   /* prémiové zlaté, jemně jiný odstín */
  text-shadow:0 0 26px rgba(255,198,40,.20);
  pointer-events:none; user-select:none;
}
/* TABLET – „& spol." citlivě vpravo dole u velké vrstvy (bez přetékání) */
@media (min-width:601px) and (max-width:1024px){
  .hero__ghost-amp{display:block; position:absolute; right:.04em; bottom:-.52em;
    font-size:.38em; letter-spacing:4px; -webkit-text-stroke-width:1.2px}
}
/* DESKTOP – rok vpravo od „CENÍK" (menší, aby nezasahoval do autorské karty) */
@media (min-width:1025px){
  .hero__ghost-amp{display:block; position:absolute; left:100%; bottom:.16em; margin-left:.2em;
    font-size:.4em; letter-spacing:5px}
}

/* MOBIL / menší tablet – dekorativní vrstvu „ANDĚL" nezobrazujeme.
   Na úzkém hero by velký watermark zasahoval do nadpisu nebo by při
   zapnutém „omezit pohyb" působil staticky a rušivě. Hero zůstává čisté;
   prémiová plovoucí vrstva je vyhrazena pro desktop. */
@media (max-width:768px){
  .hero__ghost,
  .hero__ghost::before,
  .hero__ghost::after{display:none !important}
}
@media (prefers-reduced-motion:reduce){
  .hero__ghost,.hero__ghost::before,.hero__ghost::after{animation:none}
}

/* =====================================================================
   ===  MOBIL – plovoucí značkový podpis „ANDĚL" u badge  (várka 4) ===
   Ukotvený k pravému dolnímu rohu žlutého badge (do volného místa, kde
   NENÍ hlavní text). Outline s tmavým keylinem (čitelný na žluté i tmavé),
   zlatý glow (hloubka) a pomalý světelný přejezd. Jemné plování.
   Na desktopu se nezobrazuje – tam je velká vrstva .hero__ghost.
   ===================================================================== */
/* =====================================================================
   ===  HERO BRAND SIGNATURE  (várka 6)  ==============================
   Plovoucí značkový podpis ukotvený k pravému dolnímu rohu žlutého badge.
   Responzivně:  mobil = „ANDĚL" · tablet/desktop = „L. ANDĚL".
   Navazující foreground akcent „& spol." (script) tvoří s podpisem
   jeden vrstvený brand-signature celek. Velká vrstva „LUKÁŠ ANDĚL"
   (.hero__ghost) je vyhrazená pro desktop.
   ===================================================================== */
.hero__mark{overflow:visible}
.hero__mark-sig{
  display:none; position:absolute; right:3%; bottom:-.30em;
  font-family:'Anton',sans-serif; line-height:.9; white-space:nowrap;
  color:rgba(255,255,255,.16);
  -webkit-text-stroke:1.5px rgba(255,255,255,.92);
  filter:drop-shadow(0 2px 7px rgba(0,0,0,.55));
  transform:rotate(-3deg);
  pointer-events:none; user-select:none; z-index:3;
  animation:sigReveal 1.1s cubic-bezier(.22,.61,.36,1) both, sigFloat 8.5s ease-in-out 1.1s infinite; will-change:transform,opacity;
}
.hero__mark-sig::before{           /* bílý glow / hloubka */
  content:attr(data-text); position:absolute; left:0; top:0; white-space:nowrap;
  color:rgba(255,255,255,.65); -webkit-text-stroke:0; filter:blur(6px); z-index:-1;
  animation:sigGlow 6.5s ease-in-out infinite;
}
.hero__mark-sig::after{            /* světelný přejezd */
  content:attr(data-text); position:absolute; left:0; top:0; white-space:nowrap;
  color:transparent; -webkit-text-stroke:0;
  background-image:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.85) 50%,transparent 60%);
  -webkit-background-clip:text; background-clip:text;
  background-size:280% 100%; background-repeat:no-repeat; background-position:210% 0;
  animation:sigSheen 7s ease-in-out infinite;
}
/* „& spol." – signaturní akcent (script), navazuje vpravo dole */
.hero__sig-amp{
  position:absolute; right:-.06em; bottom:-.60em;
  font-family:'Caveat',cursive; font-weight:700;
  -webkit-text-stroke:0; color:var(--yellow);
  font-size:.56em; line-height:1; white-space:nowrap;
  transform:rotate(-2deg);
  text-shadow:0 2px 9px rgba(0,0,0,.6), 0 0 16px rgba(255,213,0,.4);
  z-index:4; opacity:0;
  animation:ampIn 1.1s cubic-bezier(.22,.61,.36,1) .8s both, ampFloat 8.5s ease-in-out 2s infinite;
}
/* výběr varianty podle zařízení */
@media (max-width:600px){
  .hero__mark-sig.sig--m{display:block; font-size:clamp(44px,16.5vw,100px); right:max(2%,14px); bottom:-.42em;
    color:#fff;                                       /* plná bílá výplň – navazuje na bílý nadpis VÝŠKOVÉ PRÁCE */
    -webkit-text-stroke:1.3px rgba(10,10,10,.8);      /* decentní jemný obrys */
    text-shadow:0 3px 12px rgba(0,0,0,.6);
    filter:none;
    /* (úkol) animace jen při prvním načtení – nápis jednou vystoupá do nejvyšší
       polohy a tam trvale zůstane (žádné nekonečné plování). */
    animation:sigReveal 1.1s cubic-bezier(.22,.61,.36,1) both,
              sigRiseOnce 1.6s cubic-bezier(.22,.61,.36,1) 1.1s forwards}
  .hero__mark-sig.sig--m::before{display:none}  /* (úkol) bílá záře / glow odebrána – čistší, prémiovější dojem */
  .hero__mark-sig.sig--m::after{display:none}        /* sheen na plné bílé výplni neuplatníme */
  /* (úkol 5) „& spol." – menší, čistší, technický, ve firemní žluté */
  .sig--m .hero__sig-amp{
    font-family:'Oswald',sans-serif; font-weight:600; text-transform:uppercase;
    letter-spacing:1.5px; font-size:.3em; color:var(--yellow);
    -webkit-text-stroke:0; text-shadow:0 2px 7px rgba(0,0,0,.5);
    right:.02em; bottom:-.46em; transform:none;
    animation:ampInCalm 1s ease .9s both;
  }

  /* (úkol 1) Klidný statický podpis – bez přejezdu / blikání přes písmena, decentní obrys */
  .sig--m .sig-l{color:#fff; -webkit-text-stroke:1.3px rgba(10,10,10,.8)}
}
@keyframes ampInCalm{from{opacity:0; transform:translateY(7px)} to{opacity:1; transform:none}}
@media (min-width:601px){
  .hero__mark-sig.sig--lg{display:none}   /* na tabletu i PC nahrazeno velkou vrstvou LUKÁŠ ANDĚL */
}
/* Na PC (desktop) malý podpis „L. ANDĚL & spol." nezobrazujeme –
   na desktopu zůstává jen velká vrstva „LUKÁŠ ANDĚL" (.hero__ghost). */
@media (min-width:1025px){
  .hero__mark-sig.sig--lg{display:none}
}
@keyframes sigReveal{
  0%{opacity:0; transform:rotate(-3deg) translateY(14px) scale(.965)}
  60%{opacity:1}
  100%{opacity:1; transform:rotate(-3deg) translateY(0) scale(1)}
}
@keyframes sigFloat{
  0%{transform:rotate(-3deg) translateY(0)}
  28%{transform:rotate(-2.4deg) translateY(-5px)}
  58%{transform:rotate(-3.5deg) translateY(-8px)}
  82%{transform:rotate(-2.8deg) translateY(-3px)}
  100%{transform:rotate(-3deg) translateY(0)}
}
/* (úkol) Jednorázový výstup nápisu do nejvyšší polohy – konečný stav zůstává (forwards) */
@keyframes sigRiseOnce{
  0%{transform:rotate(-3deg) translateY(0)}
  62%{transform:rotate(-3.4deg) translateY(-10px)}
  100%{transform:rotate(-3deg) translateY(-8px)}
}
@keyframes sigGlow{0%,100%{opacity:.4}50%{opacity:.85}}
@keyframes sigSheen{0%{background-position:210% 0}55%,100%{background-position:-120% 0}}
@keyframes ampIn{0%{opacity:0;transform:rotate(-2deg) translate(8px,6px) scale(.9)}100%{opacity:1;transform:rotate(-2deg) translate(0,0) scale(1)}}
@keyframes ampFloat{
  0%{transform:rotate(-2deg) translateY(0)}
  50%{transform:rotate(-1.3deg) translateY(-6px)}
  100%{transform:rotate(-2deg) translateY(0)}
}
@media (prefers-reduced-motion:reduce){
  .hero__mark-sig,.hero__mark-sig::before,.hero__mark-sig::after,.hero__sig-amp{animation:none}
  .hero__mark-sig{opacity:1; transform:rotate(-3deg)}
  .hero__sig-amp{opacity:1}
  .sig--m .sig-l{animation:none; color:#fff}
}

/* (várka 5) Hierarchie hero nadpisu – „Tábor" jemně utlumené, aby oko
   vnímalo značku „Výškové práce Anděl" (bílý nadpis + plovoucí bílé ANDĚL). */
.hero__city{opacity:.6; font-weight:inherit}
@media (min-width:1025px){ .hero__city{opacity:1} }  /* PC výjimka: „TÁBOR" bílé */

/* =====================================================================
   ===  SEKČNÍ NAVIGACE nahoru/dolů (jen PC + tablet)  ================
   Prémiová žlutá tlačítka pro skok na předchozí/další hlavní sekci.
   ===================================================================== */
.secnav{position:fixed; right:18px; top:50%; transform:translateY(-50%);
  z-index:55; display:none; flex-direction:column; gap:12px}
@media (min-width:681px){ .secnav{display:flex} }
.secnav__btn{
  width:50px; height:50px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(12,14,17,.55); backdrop-filter:blur(7px) saturate(140%);
  -webkit-backdrop-filter:blur(7px) saturate(140%);
  color:var(--yellow); border:1.5px solid rgba(255,213,0,.7);
  cursor:pointer; box-shadow:0 8px 22px rgba(0,0,0,.4);
  transition:background .22s var(--ease), color .22s var(--ease),
             transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease)}
.secnav__btn svg{width:22px; height:22px; display:block}
.secnav__btn:hover{background:var(--yellow); color:#0a0a0a; border-color:var(--yellow);
  transform:translateY(-2px); box-shadow:0 12px 28px rgba(255,213,0,.28)}
.secnav__btn:active{transform:translateY(0)}
.secnav__btn:focus-visible{outline:2px solid var(--yellow); outline-offset:3px}
@media (min-width:1025px) and (max-width:1200px){ .secnav{right:12px} }
@media (prefers-reduced-motion:reduce){
  .secnav__btn{transition:none}
  .secnav__btn:hover{transform:none}
}

/* =====================================================================
   ===  VÁRKA 8  (úkoly 8–13)  =======================================
   ===================================================================== */

/* (10) Vybraní zákazníci – právní forma žlutě, prémiově zakomponovaná */
.clients__lf{color:inherit; font-weight:inherit; font-size:inherit; letter-spacing:inherit}

/* (9) Hvězdičky v hodnocení – větší, masivnější, prémiové, tenký černý obrys */
.revslide__score{display:flex; align-items:center; gap:.55em; flex-wrap:wrap; margin-bottom:8px}
.revstars{display:inline-block; font-size:1.95em; line-height:1; letter-spacing:2px;
  color:var(--yellow); -webkit-text-stroke:1.3px #0a0a0a;
  text-shadow:0 2px 6px rgba(0,0,0,.4); -webkit-font-smoothing:antialiased}
.revslide__pct{font-family:'Oswald',sans-serif; font-weight:700; letter-spacing:1px; color:#fff; font-size:1.05em}
@media (max-width:600px){ .revstars{font-size:1.5em; letter-spacing:1px} }

/* (8) CTA „Více informací" – na mobilu/tabletu atraktivnější, na desktopu zpět
   do původního stylu (plynule animovaný přechod). */
.btn--skoleni{transition:background .45s var(--ease), background-position .45s var(--ease),
  box-shadow .45s var(--ease), transform .25s var(--ease), color .35s var(--ease)}
@media (max-width:1024px){
  .btn--skoleni{
    background-image:linear-gradient(120deg,#ffd500 0%,#ffe863 50%,#ffd500 100%);
    background-size:220% 100%;
    box-shadow:0 10px 24px rgba(255,213,0,.3), 0 2px 8px rgba(0,0,0,.35);
    animation:skoleniShine 4.6s ease-in-out infinite;
  }
}
@keyframes skoleniShine{0%,100%{background-position:0 0}50%{background-position:100% 0}}

/* (úkol 1) Mobil – tlačítko „Více informací" sjednoceno s ostatními tlačítky u boxů
   (plochá značková žlutá, stejný stín, bez třpytivého gradientu a animace). */
@media (max-width:600px){
  .btn--skoleni{background-image:none; background-color:var(--yellow);
    box-shadow:0 4px 14px rgba(255,213,0,.3),0 1px 3px rgba(0,0,0,.18);
    animation:none}
}

/* (úkol 4) Mobil – „VÝŠKOVÉ PRÁCE" nepatrně větší a v čisté signální bílé,
   aby vedlo pozornost a vizuálně navazovalo na plovoucí bílý nápis ANDĚL.
   „TÁBOR" (.hero__city) ponecháno beze změny. Desktop neovlivněno. */
@media (max-width:600px){
  .hero__lead{font-size:1.06em; color:#fff}
}

/* (11) Mobil – jemný žlutý rámeček kolem fotek ve slideru boxu „Rizikové výškové práce" */
@media (max-width:680px){
  .cards .card:first-child .vps-slider{
    box-shadow:inset 0 0 0 2px rgba(255,213,0,.5), 0 8px 20px rgba(0,0,0,.3);
    border-radius:5px;
  }
}

/* (12) O společnosti – neviditelný rotator dvou obrázků: prémiové prolnutí + jemný zoom */
.onas-rot{position:relative; overflow:hidden; border-radius:8px}
/* Rámeček střídaných fotek je čtvercový (obě fotky jsou 1:1) → žádné oříznutí nahoře/dole */
.split__media--portrait.onas-rot{aspect-ratio:1/1}
.onas-rot__img{position:absolute; inset:0; background-size:contain; background-repeat:no-repeat;
  background-position:center; background-color:#0c0e11;
  opacity:0; transform:scale(1.05);
  transition:opacity 1.25s var(--ease), transform 7s linear; will-change:opacity,transform}
.onas-rot__img--a{opacity:1; transform:scale(1)}
.onas-rot.is-b .onas-rot__img--a{opacity:0; transform:scale(1.05)}
.onas-rot.is-b .onas-rot__img--b{opacity:1; transform:scale(1)}

/* (13) O společnosti – rohové grafiky kolem střídajících se obrázků odebrány */
#o-nas .instructor-photo::before,
#o-nas .instructor-photo::after{display:none !important}
@media (prefers-reduced-motion:reduce){
  .btn--skoleni{animation:none}
  .onas-rot__img{transition:opacity .6s var(--ease); transform:none !important}
}

/* ============================================================
   (úkol) Mobilní vylepšení – galerie boxů + reference zákazníků
   ============================================================ */

/* Úkol 2 – galerie hlavních boxů: na mobilu/jednosloupcovém zobrazení
   nahrazujeme pevnou výšku poměrem 4:3 (= poměr zdrojových fotografií),
   takže se na širších mobilech neořezávají hlavy a postavy. Desktop (3 sloupce) beze změny. */
@media (max-width:920px){
  .card__img{height:auto; aspect-ratio:4/3}
}

/* Úkol – „Vybraní zákazníci a realizace".
   DESKTOP (>=601px): plnohodnotné referenční karty s detailem (2 sloupce). */
.client > summary{list-style:none; outline:none}
.client > summary::-webkit-details-marker{display:none}
.cn-d{display:none}   /* varianty názvu reference: .cn-d = desktop, .cn-m = mobil */
@media (min-width:601px){
  .clients{margin-top:34px}
  .clients__label{display:flex; align-items:center; gap:12px; font-size:13px; letter-spacing:2.4px; color:#cfd4da; margin-bottom:22px}
  .clients__label::before{content:""; width:28px; height:2px; background:var(--yellow); flex:none}
  .clients__list{display:grid; grid-template-columns:repeat(2,1fr); gap:18px; align-items:start; counter-reset:cl}
  .client{
    position:relative; counter-increment:cl;
    background:linear-gradient(158deg, rgba(255,255,255,.058), rgba(255,255,255,.018));
    border:1px solid rgba(255,255,255,.09);
    border-left:3px solid var(--yellow);
    border-radius:12px; overflow:hidden; padding:22px 24px;
    transition:transform .28s var(--ease), border-color .28s var(--ease), box-shadow .28s var(--ease), background .28s var(--ease);
  }
  .client::before{
    content:counter(cl,decimal-leading-zero);
    position:absolute; top:14px; right:20px; pointer-events:none;
    font-family:'Anton',sans-serif; font-size:34px; line-height:1; letter-spacing:1px;
    color:rgba(255,213,0,.14);
  }
  .client:hover{
    transform:translateY(-4px); border-color:rgba(255,213,0,.5);
    box-shadow:0 18px 42px rgba(0,0,0,.42);
    background:linear-gradient(158deg, rgba(255,213,0,.07), rgba(255,255,255,.018));
  }
  .client > summary{
    display:block; cursor:default; position:relative;
    padding:0 58px 13px 0; margin-bottom:13px;
    border-bottom:1px solid rgba(255,255,255,.08);
    font-family:'Oswald',sans-serif; font-weight:600; font-size:18px; letter-spacing:.4px;
    color:#fff; text-align:left; line-height:1.25;
  }
  .client > summary::after{display:none}
  .client__detail{display:block; padding:0}
  .client__detail p{margin:0; color:#d6dbe1; font-size:14px; line-height:1.65}
  .client__detail p.client__spec{
    margin-top:15px; padding-top:14px; border-top:1px solid rgba(255,255,255,.08);
    color:#c3b994; font-size:13px; line-height:1.6;
  }
  .client__spec::before{
    content:"Specifika a bezpečnost"; display:table;
    font-family:'Oswald',sans-serif; font-weight:600; font-size:10px; letter-spacing:1.4px; text-transform:uppercase;
    color:#0a0a0a; background:var(--yellow); padding:3px 9px; border-radius:4px;
    margin-bottom:10px;
  }
  .cn-m{display:none}
  .cn-d{display:inline}
}

/* MOBIL (<=600px): prémiové rozklikávací boxy s detailem zakázky */
@media (max-width:600px){
  .clients__list{display:block; gap:0; counter-reset:cl}
  .client{
    counter-increment:cl;
    position:relative;
    background:linear-gradient(160deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
    border:1px solid rgba(255,255,255,.085);
    border-left:3px solid var(--yellow);
    border-radius:var(--radius);
    margin-bottom:12px; overflow:hidden;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.045), 0 6px 16px rgba(0,0,0,.22);
    transition:border-color .25s, background .25s, box-shadow .25s, transform .2s var(--ease);
  }
  .client[open]{
    background:linear-gradient(160deg, rgba(255,213,0,.075), rgba(255,255,255,.02));
    border-left-color:var(--yellow);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 14px 30px rgba(0,0,0,.36);
  }
  .client > summary{
    display:flex; align-items:center; justify-content:flex-start; gap:0;
    padding:16px 16px; cursor:pointer;
    font-family:'Oswald',sans-serif; font-weight:600; font-size:15.5px; letter-spacing:.4px;
    color:#eef0f2; text-align:left; line-height:1.28;
  }
  /* Industriální pořadové číslo reference + jemný oddělovač – působí jako datasheet, ne jako prostý seznam */
  .client > summary::before{
    content:counter(cl,decimal-leading-zero);
    flex:none; align-self:center;
    font-family:'Anton',sans-serif; font-weight:400; font-size:15px; line-height:1; letter-spacing:.5px;
    color:rgba(255,213,0,.62);
    margin-right:12px; padding-right:12px;
    border-right:1px solid rgba(255,255,255,.12);
  }
  .client[open] > summary::before{color:var(--yellow)}
  .client > summary .clients__lf{margin-left:.34em; color:#c9ccd1; font-weight:600}   /* právní označení hned vedle názvu */
  .client > summary::after{margin-left:auto}          /* ovládací +/− vždy u pravého okraje */
  .client > summary:hover{color:#fff}
  .client > summary::after{
    content:""; flex-shrink:0; width:26px; height:26px; border-radius:50%;
    border:1.5px solid rgba(255,255,255,.28);
    background-color:rgba(255,255,255,.04);
    background-image:
      linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82)),
      linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82));
    background-size:11px 1.6px, 1.6px 11px;
    background-position:center, center;
    background-repeat:no-repeat;
    transition:transform .3s var(--ease), border-color .25s, background-color .25s, opacity .25s;
  }
  .client[open] > summary::after{
    transform:rotate(135deg);
    border-color:var(--yellow);
    background-color:rgba(255,213,0,.14);
    background-image:
      linear-gradient(#ffd500,#ffd500),
      linear-gradient(#ffd500,#ffd500);
  }
  .client__detail{padding:2px 17px 16px; overflow:hidden}
  .client__detail p{margin:0; color:#d2d7dd; font-size:14px; line-height:1.62}
  .client__detail p.client__spec{
    margin-top:13px; padding-top:13px;
    border-top:1px solid var(--line);
    color:#b6ad99; font-size:13px;
  }
  .client__spec::before{
    content:"Specifika a bezpečnost"; display:block;
    font-family:'Oswald',sans-serif; font-weight:600; font-size:10px; letter-spacing:2px; text-transform:uppercase;
    color:var(--yellow); margin-bottom:6px; opacity:.9;
  }
}

/* ===== Úkol – Poptávej.cz zvýrazněný odkaz pod textem hodnocení ===== */
/* Nenápadné inline odkazy v textu hodnocení (bez tučného zvýraznění) */
.poptavej-inline,
.ext-records{
  color:#fff; font-weight:inherit; text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.34);
  transition:color .2s var(--ease), border-color .2s var(--ease);
}
.poptavej-inline:hover,
.ext-records:hover{color:var(--yellow); border-bottom-color:rgba(255,213,0,.6)}

/* ===== Úkol 5 – „Zobrazit více realizací": skryté boxy + prémiové tlačítko ===== */
.client--extra{display:none}
.clients.is-expanded .client--extra{display:block; animation:clientReveal .5s var(--ease) both}
@keyframes clientReveal{
  from{opacity:0; transform:translateY(14px)}
  to{opacity:1; transform:translateY(0)}
}
@media (prefers-reduced-motion:reduce){
  .clients.is-expanded .client--extra{animation:none}
}

/* MOBIL – reference 9–15 mají jemně odlišný prémiový vizuál, aby po rozkliknutí
   seznam opticky neztěžkl a působil jako kurátorovaný „prémiový" výběr. */
@media (max-width:600px){
  .client--extra{
    border:1px solid rgba(255,213,0,.2);
    border-left:3px solid transparent;
    background:
      linear-gradient(180deg, var(--yellow) 0%, var(--yellow-2) 100%) left/3px 100% no-repeat,
      linear-gradient(160deg, rgba(255,213,0,.07), rgba(255,255,255,.012));
    box-shadow:inset 0 1px 0 rgba(255,213,0,.15), 0 6px 16px rgba(0,0,0,.24);
  }
  .client--extra[open]{
    background:
      linear-gradient(180deg, var(--yellow) 0%, var(--yellow-2) 100%) left/3px 100% no-repeat,
      linear-gradient(160deg, rgba(255,213,0,.11), rgba(255,255,255,.02));
    box-shadow:inset 0 1px 0 rgba(255,213,0,.2), 0 14px 30px rgba(0,0,0,.38);
  }
  /* Číslování 01–15 je vizuálně jednotné – boxy 9–15 používají stejný styl čísla
     jako 1–8 (zlatý text s oddělovačem), liší se jen jemným pozadím a lištou. */
  .client--extra > summary::after{border-color:rgba(255,213,0,.4)}
}

.clients__more{display:flex; justify-content:center; margin-top:26px}
.btn-more{
  position:relative; isolation:isolate; overflow:hidden;
  display:inline-flex; align-items:center; gap:12px;
  padding:15px 30px; cursor:pointer;
  font-family:'Oswald',sans-serif; font-weight:600; font-size:15px; letter-spacing:1.6px; text-transform:uppercase;
  color:#fff; background:linear-gradient(150deg, rgba(255,255,255,.07), rgba(255,255,255,.02));
  border:1px solid rgba(255,213,0,.32); border-radius:var(--radius-btn);
  box-shadow:0 8px 26px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .28s var(--ease), border-color .28s var(--ease), box-shadow .28s var(--ease), color .25s var(--ease);
}
.btn-more::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:3px;
  background:linear-gradient(var(--yellow), var(--yellow-2));
}
.btn-more__glow{
  position:absolute; inset:-40% -10%; z-index:-1; pointer-events:none;
  background:radial-gradient(120px 60px at 50% 120%, rgba(255,199,44,.4), transparent 70%);
  opacity:0; transition:opacity .35s var(--ease);
}
.btn-more:hover{
  transform:translateY(-2px); border-color:rgba(255,213,0,.7); color:#fff;
  box-shadow:0 16px 38px rgba(0,0,0,.46), 0 0 0 1px rgba(255,213,0,.18), inset 0 1px 0 rgba(255,255,255,.08);
}
.btn-more:hover .btn-more__glow{opacity:1}
.btn-more:active{transform:translateY(0) scale(.99)}
.btn-more__chev{width:18px; height:18px; flex:none; transition:transform .35s var(--ease)}
.btn-more[aria-expanded="true"] .btn-more__chev{transform:rotate(180deg)}
.btn-more[aria-expanded="true"]{border-color:rgba(255,213,0,.55)}
@media (max-width:600px){
  .btn-more{width:100%; justify-content:center; padding:15px 22px; font-size:13.5px; letter-spacing:1.3px}
  .clients__more{margin-top:18px}
}

/* DESKTOP – nové rozbalené boxy mají odlišnou, prémiovou grafiku ladící s okolím */
@media (min-width:601px){
  .client--extra{
    background:linear-gradient(158deg, rgba(255,213,0,.07), rgba(255,255,255,.012));
    border-color:rgba(255,213,0,.22);
    border-left:3px solid transparent;
    border-image:linear-gradient(180deg, var(--yellow), var(--yellow-2)) 1;
  }
  .client--extra::before{color:rgba(255,213,0,.2)}   /* zvýrazněné pořadové číslo */
  .client--extra:hover{
    border-color:rgba(255,213,0,.6);
    box-shadow:0 18px 44px rgba(0,0,0,.46), 0 0 0 1px rgba(255,213,0,.12);
    background:linear-gradient(158deg, rgba(255,213,0,.11), rgba(255,255,255,.016));
  }

  /* „Skrýt / Zobrazit více realizací" – na PC ve sbaleném i rozbaleném stavu
     kompaktní tlačítko přes celou šířku řádku, vždy vycentrované na střed
     (dřív rozbalené tlačítko vyplňovalo osamocenou levou buňku jako vysoká karta). */
  .clients__list .clients__more{grid-column:1 / -1; justify-content:center; margin-top:14px}
  .clients.is-expanded .clients__list .clients__more{
    grid-column:1 / -1; align-self:auto; justify-content:center; margin-top:22px;
  }
  .clients.is-expanded .clients__list .clients__more .btn-more{
    width:auto; height:auto; min-height:0;
    flex-direction:row; justify-content:center; gap:12px;
    padding:14px 32px; border-radius:var(--radius-btn);
    font-size:14px; letter-spacing:1.6px;
    border:1px solid rgba(255,213,0,.42);
    background:linear-gradient(150deg, rgba(255,213,0,.1), rgba(255,255,255,.02));
    box-shadow:0 10px 30px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.06);
  }
  .clients.is-expanded .clients__list .clients__more .btn-more::before{display:none}
  .clients.is-expanded .clients__list .clients__more .btn-more__chev{
    width:19px; height:19px; padding:0; border:none; border-radius:0;
    background:none; color:var(--yellow);
    transition:transform .35s var(--ease);
  }
  .clients.is-expanded .clients__list .clients__more .btn-more__label{font-size:14px; color:#fff}
  .clients.is-expanded .clients__list .clients__more .btn-more__glow{
    background:radial-gradient(140px 70px at 50% 120%, rgba(255,199,44,.4), transparent 70%);
  }
  .clients.is-expanded .clients__list .clients__more .btn-more:hover{
    transform:translateY(-2px); border-color:rgba(255,213,0,.7);
    box-shadow:0 16px 38px rgba(0,0,0,.46), 0 0 0 1px rgba(255,213,0,.18), inset 0 1px 0 rgba(255,255,255,.08);
  }
  .clients.is-expanded .clients__list .clients__more .btn-more:hover .btn-more__chev{
    background:none; border:none; transform:translateY(-1px) rotate(180deg);
  }
}

/* (úkol) Prémiový proklik na sekci „Vybraní zákazníci a realizace" */
.ref-jump{
  display:inline-flex; align-items:center; gap:13px;
  max-width:100%; margin:22px 0 2px; padding:13px 20px;
  border:1px solid var(--line); border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
  text-decoration:none;
  transition:border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);
}
.ref-jump:hover, .ref-jump:focus-visible{
  border-color:var(--yellow); transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(0,0,0,.32);
  background:linear-gradient(180deg, rgba(255,213,0,.07), rgba(255,255,255,.015));
}
.ref-jump__label{font-family:'Oswald',sans-serif; font-weight:600; letter-spacing:.4px; color:#fff; font-size:15px}
.ref-jump__hint{color:#9aa0a6; font-size:12.5px}
.ref-jump__hint::before{content:"·"; margin-right:9px; color:var(--yellow)}
.ref-jump__chev{width:22px; height:22px; flex-shrink:0; margin-left:6px; color:var(--yellow); animation:refChev 1.8s ease-in-out infinite}
@keyframes refChev{0%,100%{transform:translateY(0)} 50%{transform:translateY(4px)}}
@media (max-width:600px){
  .ref-jump{display:flex; gap:9px; padding:13px 16px}
  .ref-jump__label{font-size:14.5px}
  .ref-jump__hint{margin-left:0}
  .ref-jump__chev{margin-left:auto}
}
@media (prefers-reduced-motion:reduce){ .ref-jump__chev{animation:none} }

/* Úkol – ref-jump v hero: zobrazen na všech zařízeních, grafika přizpůsobená.
   PC/tablet: kompaktní inline odkaz; mobil: prémiový tmavý panel pod „Vybrané reference". */
@media (min-width:601px){
  .ref-jump--hero{
    display:inline-flex; margin:20px 0 2px; padding:13px 24px;
    background:rgba(10,10,10,.30);
    -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px);
    border:1px solid rgba(255,255,255,.14); border-left:3px solid var(--yellow);
  }
  .ref-jump--hero:hover, .ref-jump--hero:focus-visible{
    background:rgba(10,10,10,.42); border-color:var(--yellow); transform:translateY(-2px);
    box-shadow:0 14px 30px rgba(0,0,0,.30);
  }
}
@media (max-width:600px){
  .ref-jump--hero{
    width:100%; margin:20px 0 6px; padding:15px 17px; gap:11px;
    background:rgba(10,10,10,.44);
    -webkit-backdrop-filter:blur(5px); backdrop-filter:blur(5px);
    border:1px solid rgba(255,255,255,.16);
    border-left:3px solid var(--yellow);
    border-radius:12px;
  }
  .ref-jump--hero:hover, .ref-jump--hero:focus-visible{
    background:rgba(10,10,10,.54);
    border-color:var(--yellow);
  }
  .ref-jump--hero .ref-jump__label{font-size:15px}
  .ref-jump--hero .ref-jump__chev{margin-left:auto}
}

/* Blokové zarovnání vybraných odstavců (zadání) */
.is-justify{text-align:justify;text-align-last:left;-webkit-hyphens:none;hyphens:none}

/* Hero podnadpis na mobilu: povolit dělení slov (jazyk cs), aby justify
   netvořil velké mezery – dlouhé slovo se raději rozdělí na konci řádku. */
@media (max-width:600px){
  .hero__sub.is-justify{
    -webkit-hyphens:auto;
    -ms-hyphens:auto;
    hyphens:auto;
  }
  /* Zvýraznění hero textu na mobilu: světlejší barva + jemný stín pro
     čitelnost přes fotku + mírně větší, vyladěné písmo. */
  .hero__sub{
    font-size:17.5px;
    line-height:1.6;
    color:#fff;
    text-shadow:0 1px 2px rgba(0,0,0,.55), 0 2px 14px rgba(0,0,0,.28);
  }
}

/* ==========================================================================
   POPTÁVKOVÝ FORMULÁŘ – honeypot, chybová hláška, prémiový děkovný box
   ========================================================================== */

/* Honeypoty – neviditelné pro uživatele, dostupné pro roboty */
.hp-field{
  position:absolute !important;
  left:-9999px !important;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}

/* Nenápadná chybová hláška ve formuláři */
.form__error{
  margin:2px 0 0;
  padding:12px 16px;
  border-radius:var(--radius);
  background:rgba(255,80,80,.1);
  border:1px solid rgba(255,120,120,.35);
  color:#ffd9d9;
  font-family:'Inter',sans-serif;
  font-size:14px;
  line-height:1.5;
}
.form__error a{color:var(--yellow);font-weight:600;text-decoration:underline;text-underline-offset:2px}

/* Prémiový děkovný box */
.form-success{
  margin-top:32px;
  padding:clamp(30px,4vw,48px);
  text-align:center;
  background:
    radial-gradient(120% 120% at 50% -20%, rgba(255,199,44,.12) 0%, rgba(255,199,44,0) 55%),
    linear-gradient(160deg, #191e25 0%, #0e1115 100%);
  border:1px solid rgba(255,199,44,.28);
  border-radius:var(--radius);
  box-shadow:0 24px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.05);
  animation:formSuccessIn .5s var(--ease) both;
}
.form-success .eyebrow--yellow{margin-bottom:10px;padding-left:0}
.form-success .eyebrow--yellow::before{display:none}

.form-success__icon{
  width:68px;height:68px;
  margin:0 auto 18px;
  display:flex;align-items:center;justify-content:center;
  color:var(--black);
  background:var(--yellow);
  border-radius:50%;
  box-shadow:0 8px 24px rgba(255,199,44,.4), 0 0 0 8px rgba(255,199,44,.12);
  animation:formSuccessPop .55s var(--ease) .08s both;
}
.form-success__icon svg{width:34px;height:34px}

.form-success__title{
  font-family:'Anton','Oswald',sans-serif;
  font-weight:400;
  letter-spacing:.5px;
  line-height:1.06;
  text-transform:uppercase;
  color:#fff;
  font-size:clamp(26px,3.4vw,40px);
  margin:0 0 14px;
}
.form-success__text{
  font-family:'Inter',sans-serif;
  font-size:17px;
  line-height:1.6;
  color:#cfd2d6;
  max-width:520px;
  margin:0 auto 8px;
}
.form-success__text--muted{color:var(--muted);font-size:15px;margin-bottom:0}
.form-success__cta{
  margin-top:26px;
  justify-content:center;
  flex-wrap:wrap;
}
.form-success .btn--ghost{color:#fff;border-color:rgba(255,255,255,.45)}
.form-success .btn--ghost:hover{background:#fff;color:var(--black);border-color:#fff}

@keyframes formSuccessIn{
  from{opacity:0;transform:translateY(14px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes formSuccessPop{
  0%{transform:scale(.4);opacity:0}
  60%{transform:scale(1.08)}
  100%{transform:scale(1);opacity:1}
}
@media (prefers-reduced-motion:reduce){
  .form-success,.form-success__icon{animation:none}
}

/* =====================================================================
   CENÍK VÝŠKOVÝCH PRACÍ – rozšiřující komponenty (znalostní centrum)
   Navazuje na stávající designový jazyk: žlutý akcent, ostré rohy,
   Oswald v nadpisech. Přidáno v rámci přestavby na cenový portál.
   ===================================================================== */

/* ---- Orientační cenová tabulka ---- */
.ptable-wrap{margin-top:40px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid rgba(0,0,0,.16);border-radius:var(--radius)}
.ptable{width:100%;border-collapse:collapse;min-width:640px;background:#fff;font-size:15px}
.ptable thead th{
  background:var(--black);color:#fff;text-align:left;font-family:'Oswald',sans-serif;
  text-transform:uppercase;letter-spacing:1px;font-size:13px;font-weight:600;
  padding:14px 18px;border-bottom:3px solid var(--yellow)
}
.ptable tbody th{
  text-align:left;font-weight:700;color:#0a0a0a;padding:16px 18px;
  border-bottom:1px solid #ececec;vertical-align:top;width:30%
}
.ptable tbody td{padding:16px 18px;border-bottom:1px solid #ececec;color:#4a4f54;vertical-align:top}
.ptable tbody tr:last-child th,.ptable tbody tr:last-child td{border-bottom:none}
.ptable tbody tr:hover{background:#fafafa}
.ptable .ptable__price{font-family:'Oswald',sans-serif;font-weight:600;color:#0a0a0a;white-space:nowrap;font-size:16px}
.ptable__tier{display:block;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#8a7400;font-family:'Oswald',sans-serif;margin-bottom:3px}
.section--yellow .ptable-wrap{border-color:rgba(0,0,0,.22)}
/* Dvousloupcový položkový ceník: užší min-width, cena zarovnaná vpravo */
.ptable--items{min-width:420px}
.ptable--items thead th:last-child,.ptable--items tbody td:last-child{text-align:right}
.ptable--items tbody th{font-weight:500;color:#2a2d30}
.ptable--items .ptable__price{font-size:17px}

/* ---- Cenový štítek uvnitř karty úrovně dodavatele ---- */
.tier-price{
  display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
  margin:2px 0 12px;padding-bottom:14px;border-bottom:1px dashed rgba(255,255,255,.18)
}
.tier-price__val{font-family:'Oswald',sans-serif;font-size:24px;font-weight:600;color:var(--yellow);line-height:1}
.tier-price__unit{font-size:13px;color:var(--muted);letter-spacing:.5px}
.card .tier-price{border-bottom-color:#ececec}
.card .tier-price__val{color:#0a0a0a}
.card--featured .tier-price__val{color:#0a0a0a}

/* ---- Srovnávací blok 600 vs 3000 ---- */
.vs{display:grid;grid-template-columns:1fr auto 1fr;gap:0;margin-top:44px;align-items:stretch;
   border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--dark)}
.vs__col{padding:30px 28px}
.vs__col--low{background:rgba(255,255,255,.02)}
.vs__col--high{background:rgba(255,213,0,.05)}
.vs__price{font-family:'Oswald',sans-serif;font-size:30px;font-weight:600;line-height:1;margin-bottom:4px;color:#fff}
.vs__col--high .vs__price{color:var(--yellow)}
.vs__cap{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-family:'Oswald',sans-serif;margin-bottom:16px}
.vs__list{list-style:none;display:flex;flex-direction:column;gap:9px}
.vs__list li{position:relative;padding-left:22px;font-size:14.5px;color:#cfd3d8;line-height:1.5}
.vs__list li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;border-radius:1px;background:var(--yellow);opacity:.85}
.vs__col--low .vs__list li::before{background:#6b7078}
.vs__mid{display:flex;align-items:center;justify-content:center;padding:0 6px;background:var(--black);
  font-family:'Anton',sans-serif;color:var(--yellow);font-size:20px;letter-spacing:1px}
@media (max-width:760px){
  .vs{grid-template-columns:1fr}
  .vs__mid{padding:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
}

/* ---- Slovník pojmů ---- */
.glossary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#e6e6e6;
  border:1px solid #e6e6e6;border-radius:var(--radius);overflow:hidden;margin-top:40px}
.glossary div{background:#fff;padding:20px 22px}
.glossary dt{font-family:'Oswald',sans-serif;font-weight:600;color:#0a0a0a;font-size:16px;margin-bottom:5px}
.glossary dd{font-size:14px;color:#555;line-height:1.6}
.section--dark .glossary{background:var(--line);border-color:var(--line)}
.section--dark .glossary div{background:var(--dark)}
.section--dark .glossary dt{color:#fff}
.section--dark .glossary dd{color:#b7bcc2}
@media (max-width:640px){.glossary{grid-template-columns:1fr}}

/* ---- Upozornění „orientační ceny" ---- */
.disclaimer{margin-top:24px;padding:16px 20px;border:1px dashed rgba(0,0,0,.3);border-radius:var(--radius);
  font-size:14.5px;color:#4a4f54;background:rgba(0,0,0,.03)}
.disclaimer strong{color:#0a0a0a}
.section--dark .disclaimer{border-color:rgba(255,255,255,.28);color:#c8ccd1;background:rgba(255,255,255,.03)}
.section--dark .disclaimer strong{color:#fff}

/* ============================================================
   05 · ÚROVNĚ NÁROČNOSTI – jeden prémiový box s jedním sliderem
   ============================================================ */
.levels{margin-top:48px;display:grid;grid-template-columns:1.02fr .98fr;background:#1d2024;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.levels__media{position:relative;min-height:470px;border-right:1px solid var(--line);background:#0f1113}
.levels__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.035);transition:opacity .8s var(--ease),transform 1.3s var(--ease)}
.levels__img.is-active{opacity:1;transform:scale(1)}
.levels__badge{position:absolute;top:16px;left:16px;z-index:3;background:var(--yellow);color:#000;font-family:'Oswald',sans-serif;font-weight:700;font-size:12px;letter-spacing:1.4px;text-transform:uppercase;padding:6px 12px;border-radius:2px;box-shadow:0 4px 14px rgba(0,0,0,.4)}
.levels__ptag{position:absolute;left:0;bottom:0;z-index:3;background:var(--yellow);color:#000;display:inline-flex;flex-direction:column;align-items:flex-start;font-family:'Oswald',sans-serif;padding:11px 22px;border-top-right-radius:10px;box-shadow:0 -6px 22px rgba(0,0,0,.3);line-height:1.08}
.levels__ptag-val{font-weight:700;font-size:23px;letter-spacing:.4px}
.levels__ptag-unit{font-weight:600;font-size:11px;letter-spacing:.7px;text-transform:uppercase;opacity:.78;margin-top:3px}
.levels__panel{display:flex;flex-direction:column;padding:12px 14px 24px}
.levels__tabs{display:flex;flex-direction:column}
.levels__tab{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;width:100%;text-align:left;background:transparent;border:0;border-left:3px solid transparent;border-bottom:1px solid var(--line);padding:17px 16px;cursor:pointer;transition:background .25s var(--ease),border-color .25s var(--ease)}
.levels__tab:last-child{border-bottom:0}
.levels__tab:hover{background:rgba(255,255,255,.035)}
.levels__tab.is-active{background:rgba(255,213,0,.06);border-left-color:var(--yellow)}
.levels__tab:focus-visible{outline:2px solid var(--yellow);outline-offset:-2px}
.levels__tno{font-family:'Anton',sans-serif;font-size:30px;line-height:1;color:#3a3f45;min-width:32px;text-align:center;transition:color .25s var(--ease)}
.levels__tab.is-active .levels__tno{color:var(--yellow)}
.levels__tmain{display:flex;flex-direction:column;gap:3px;min-width:0}
.levels__tname{font-family:'Oswald',sans-serif;font-weight:600;font-size:16px;color:#cfd3d8;line-height:1.24;transition:color .25s var(--ease)}
.levels__tab.is-active .levels__tname{color:#fff}
.levels__tmeta{font-size:11.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-family:'Oswald',sans-serif}
.levels__tprice{display:flex;flex-direction:column;align-items:flex-end;font-family:'Oswald',sans-serif;font-weight:600;font-size:15px;color:var(--yellow);white-space:nowrap;line-height:1.15}
.levels__tunit{font-weight:500;font-size:10px;letter-spacing:.4px;text-transform:uppercase;color:var(--muted);margin-top:2px}
.levels__panels{padding:22px 16px 6px;min-height:130px}
.levels__pan p{color:#c4c8cd;font-size:15.5px;line-height:1.62}
.levels__pan[hidden]{display:none}
.levels__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:10px 16px 0;margin-top:auto}
.levels__note{font-family:'Oswald',sans-serif;font-size:11.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted)}
.levels__cta{padding:13px 24px}
@media (max-width:860px){
  .levels{grid-template-columns:1fr}
  .levels__media{min-height:0;aspect-ratio:16/10;border-right:0;border-bottom:1px solid var(--line)}
  /* v12_07: Cenový štítek na fotce – decentní prémiový „chip":
     tmavé sklo s rozostřením (jako autorská karta v hero), žlutá cena,
     jemný žlutý akcent. Nezakrývá fotku, drží značkový styl.
     Tablet/PC (≥861px) beze změny – plný žlutý štítek. */
  .levels__ptag{
    left:10px; bottom:10px;
    background:rgba(10,11,14,.74);
    -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
    color:var(--yellow);
    border:1px solid rgba(255,213,0,.32);
    border-left:3px solid var(--yellow);
    border-radius:8px;
    padding:7px 12px 8px;
    box-shadow:0 8px 22px rgba(0,0,0,.45);
  }
  .levels__ptag-val{font-size:16px;text-shadow:0 1px 8px rgba(0,0,0,.55)}
  .levels__ptag-unit{font-size:9.5px;letter-spacing:.6px;color:#cfd3d8;opacity:1;margin-top:2px}
  .levels__panel{padding:8px 6px 20px}
  .levels__tab{padding:15px 14px;gap:13px}
  .levels__tname{font-size:15px}
  .levels__tprice{font-size:13.5px}
  .levels__panels{padding:18px 14px 6px;min-height:0}
  .levels__foot{padding:12px 14px 0}
}
@media (max-width:480px){
  .levels__tab{grid-template-columns:auto 1fr;grid-template-rows:auto auto;row-gap:4px}
  .levels__tno{grid-row:1 / span 2}
  .levels__tprice{grid-column:2;justify-self:start;align-items:flex-start}
}
@media (max-width:600px){
  .lv-note-opt{display:none}
  .levels__badge{display:none}
}
@media (prefers-reduced-motion:reduce){
  .levels__img{transition:opacity .001s}
}
.levels__img[data-lv="4"]{object-position:center 44%}

/* ============================================================
   01 · ORIENTAČNÍ CENÍK – prémiové bílé karty (náhrada tabulek)
   Responzivní od základu: žádný horizontální scroll, kompaktní řádky.
   ============================================================ */
.pcard{background:#fff;border-radius:14px;box-shadow:0 26px 64px rgba(0,0,0,.18);overflow:hidden;margin-top:40px}
.pcard__head{display:flex;justify-content:space-between;align-items:center;gap:16px;
  background:#0a0a0a;color:#fff;padding:14px 26px;
  font-family:'Oswald',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:1.6px;text-transform:uppercase}
.pcard__head span:last-child{color:var(--yellow)}

/* --- Pásma náročnosti (číslované řádky) --- */
.ptiers{list-style:none;margin:0;padding:0}
.ptier{position:relative;display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:start;padding:22px 26px;border-bottom:1px solid #eee}
.ptier:last-child{border-bottom:0}
.ptier__no{font-family:'Anton',sans-serif;font-size:42px;line-height:.82;color:#0a0a0a;min-width:40px}
.ptier--featured{background:rgba(255,213,0,.09)}
.ptier--featured::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--yellow)}
.ptier--featured .ptier__no{color:#0a0a0a}
.ptier__body{min-width:0}
.ptier__top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}
.ptier__name{margin:0;font-family:'Oswald',sans-serif;font-weight:600;font-size:18px;line-height:1.22;color:#0a0a0a}
.ptier__chip{display:inline-block;margin-left:8px;background:#0a0a0a;color:var(--yellow);
  font-family:'Oswald',sans-serif;font-weight:700;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;
  padding:3px 8px;border-radius:3px;vertical-align:middle;transform:translateY(-2px)}
.ptier__price{display:flex;flex-direction:column;align-items:flex-end;font-family:'Oswald',sans-serif;font-weight:700;font-size:19px;color:#0a0a0a;white-space:nowrap;line-height:1.12}
.ptier__punit{font-weight:500;font-size:10.5px;letter-spacing:.4px;text-transform:uppercase;color:#7c8288;margin-top:2px}
.ptier__when{margin:7px 0 0;color:#5b6065;font-size:14.5px;line-height:1.55}

/* --- Jednotkové ceny (ceníkový seznam s leaderem) --- */
.plist{list-style:none;margin:0;padding:6px 0}
.plist__row{display:flex;align-items:baseline;gap:8px;padding:13px 26px}
.plist__row + .plist__row{border-top:1px solid #f1f1f1}
.plist__name{color:#20242a;font-size:15.5px;font-weight:500;line-height:1.35}
.plist__lead{flex:1 1 18px;min-width:16px;align-self:center;border-bottom:1px dotted rgba(10,10,10,.26);height:0;transform:translateY(2px)}
.plist__price{font-family:'Oswald',sans-serif;font-weight:700;font-size:16.5px;color:#0a0a0a;white-space:nowrap}

@media (max-width:600px){
  .pcard{border-radius:12px;margin-top:32px}
  .pcard__head{padding:12px 18px;font-size:11.5px;letter-spacing:1.2px}
  .ptier{grid-template-columns:auto 1fr;gap:14px;padding:17px 18px}
  .ptier__no{font-size:34px;min-width:32px}
  .ptier__name{font-size:16.5px}
  .ptier__price{font-size:17px}
  .ptier__when{font-size:13.5px;margin-top:6px}
  .plist__row{padding:12px 18px;gap:6px}
  .plist__name{font-size:14.5px}
  .plist__price{font-size:15.5px}
}
@media (max-width:380px){
  .ptier__top{gap:2px 10px}
  .ptier__price{font-size:16px}
}

/* Upozornění na práci ve dvou (ceník, sekce 01) */
.crewnote{display:flex;gap:14px;align-items:flex-start;margin-top:16px;padding:16px 20px;background:rgba(10,10,10,.055);border-left:4px solid #0a0a0a;border-radius:6px}
.crewnote__ico{flex:none;width:26px;height:26px;color:#0a0a0a;margin-top:1px}
.crewnote p{margin:0;color:#3d3a2e;font-size:14.5px;line-height:1.6}
.crewnote strong{color:#0a0a0a}
@media (max-width:600px){
  .crewnote{padding:14px 16px;gap:11px}
  .crewnote__ico{width:22px;height:22px}
  .crewnote p{font-size:13.5px}
}

/* 04 · Formy ceny – 4 boxy jako vyvážené 2×2 (bez prázdného místa) */
@media (min-width:681px){
  .kb--forms{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kb--forms article:last-child{grid-column:auto}
}

/* 05 · Ovládání boxu úrovní – prev / pauza / next */
.levels__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.levels__ctrls{display:inline-flex;gap:6px}
.levels__ctrl{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:8px;color:#cfd3d8;cursor:pointer;transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),transform .14s var(--ease)}
.levels__ctrl svg{width:18px;height:18px;display:block}
.levels__ctrl:hover{background:rgba(255,213,0,.12);border-color:var(--yellow);color:var(--yellow)}
.levels__ctrl:active{transform:scale(.93)}
.levels__ctrl:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}
.levels__ctrl--toggle .ic-play{display:none}
.levels__ctrl--toggle.is-paused .ic-pause{display:none}
.levels__ctrl--toggle.is-paused .ic-play{display:block}
/* v12_02: Na mobilu/tabletu (≤1024px) se ovládání v patičce boxu skrývá –
   je duplicitní s plovoucí lištou ZPĚT / PAUZA / DALŠÍ, která se v sekci 05
   zobrazuje automaticky. Na PC (≥1025px) zůstává beze změny. */
@media (max-width:1024px){
  .levels__ctrls{display:none}
}
@media (max-width:600px){
  /* Diskrétní, decentní ovládání – ať nepřekáží */
  .levels__actions{gap:10px;width:100%;justify-content:space-between}
  .levels__ctrls{gap:4px}
  .levels__ctrl{width:34px;height:34px;border-radius:7px;background:transparent;border-color:rgba(255,255,255,.14);color:var(--muted)}
  .levels__ctrl svg{width:15px;height:15px}
}

/* 07 · Cena v souvislostech – fotka kalkulace (jemný filtr, ořez na komín+kalkulačku) */
.split__media--cost{filter:contrast(1.06) saturate(1.04) brightness(1.01);background-position:center 45%}

/* Tenký decentní separátor mezi sekcemi 05 (Náročnost) a 06 (Modelový příklad) */
#priklad-den{border-top:1px solid rgba(255,255,255,.07)}

/* Ceník jednotkových cen – fotka na pozadí + vyvážený poloprůhledný překryv */
.pcard--photo{background:linear-gradient(rgba(10,11,13,.86),rgba(10,11,13,.9)),url('../img/vyskove-prace-lezec-prihradovy-stozar-bily.webp?v=2') center/cover;background-color:#0f1113}
.pcard--photo .pcard__head{background:#fff;color:#0a0a0a;border-bottom:1px solid rgba(0,0,0,.1)}
.pcard--photo .pcard__head span:last-child{color:#0a0a0a}
.pcard--photo .plist__name{color:#e9ebed;text-shadow:0 1px 7px rgba(0,0,0,.7)}
.pcard--photo .plist__price{color:var(--yellow);text-shadow:0 1px 9px rgba(0,0,0,.85)}
.pcard--photo .plist__row + .plist__row{border-top-color:rgba(255,255,255,.5)}
.pcard--photo .plist__lead{border-bottom-color:rgba(255,255,255,.24)}


/* Proč se ceny liší – v12_04: tři odstavce zarovnané do bloku na všech
   zobrazeních; mezera před prvním odstavcem a rozestupy mezi odstavci.
   (Původní mechanika .pl – věty jako bloky na mobilu – odstraněna.) */
.proc-lead{margin-top:1.05em}
.lead + .proc-lead{margin-top:30px}

/* HERO – autorský řádek (kdo ceník sestavil), hned pod úvodem */
.hero__byline{position:relative;display:flex;align-items:center;gap:14px;margin:22px 0 6px;max-width:640px;
  padding:11px 14px 11px 11px;background:rgba(10,11,14,.9);border:1px solid rgba(255,255,255,.22);
  border-radius:14px;text-decoration:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  box-shadow:0 14px 40px rgba(0,0,0,.45);
  transition:border-color .25s var(--ease),background .25s var(--ease),transform .25s var(--ease)}
.hero__byline:hover{border-color:var(--yellow);background:rgba(10,11,14,.95);transform:translateY(-1px)}
.hero__byline__av{width:58px;height:58px;flex:none;border-radius:50%;object-fit:cover;object-position:center 40%;
  border:2px solid var(--yellow);box-shadow:0 4px 14px rgba(0,0,0,.4)}
.hero__byline__txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.hero__byline__txt strong{color:#fff;font-family:'Oswald',sans-serif;font-weight:600;font-size:15px;line-height:1.28;letter-spacing:.3px}
.hero__byline__txt span{color:#cbd0d5;font-size:12.5px;line-height:1.45}
.hero__byline__arr{width:18px;height:18px;flex:none;color:var(--yellow);opacity:.85;margin-left:2px;align-self:flex-start;transition:transform .25s var(--ease)}
.hero__byline:hover .hero__byline__arr{transform:translate(2px,-2px)}
@media (max-width:600px){
  .hero__byline{gap:11px;padding:10px 12px;margin:18px 0 20px}
  .hero__byline__av{width:48px;height:48px}
  .hero__byline__txt strong{font-size:13.5px}
  .hero__byline__txt span{font-size:11.5px}
  .hero__byline__arr{display:none}
}

/* ÚKOL v11_94 — delší popisek „za práci horolezce / specialisty" na mobilu/tabletu:
   povolit zalomení (dřív white-space:nowrap přetékal a ořezával „specialisty").
   „za práci horolezce" drží pohromadě (nbsp), zalomí se jen před „/ specialisty". */
@media (max-width:1024px){
  .hero__markadd:not(.hero__helper){white-space:normal}
}

/* ÚKOL v11_95 — na mobilu (2sloupcová mřížka ≤640px) mají boxy „850 až 1 250"
   a „1 500 až 3 000" místo osamocené zkratky „Kč/h" ve druhém řádku plný tvar
   „Kč/hodina" (vejde se a zaplní prázdné místo). Na tabletu/desktopu (4sloupcová
   mřížka) zůstává kompaktní „Kč/h" – dlouhý tvar by se do úzkých sloupců nevešel. */
.hero__usps .usp-hod{display:none}
@media (max-width:640px){
  .hero__usps .usp-h{display:none}
  .hero__usps .usp-hod{display:inline}
}


/* ============================================================
   MODÁLNÍ MEDAILONEK AUTORA – prémiový box, responzivní
   ============================================================ */
button.hero__byline{cursor:pointer;font:inherit;color:inherit;text-align:left;width:100%;-webkit-appearance:none;appearance:none}
.hero__byline__arr{width:20px;height:20px}

.modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:26px;
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s var(--ease),visibility .3s var(--ease)}
.modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.modal__backdrop{position:absolute;inset:0;background:rgba(6,7,9,.74);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.modal__dialog{position:relative;width:100%;max-width:730px;max-height:88vh;display:flex;flex-direction:column;
  background:#15171a;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  box-shadow:0 44px 130px rgba(0,0,0,.62);transform:translateY(16px) scale(.985);
  transition:transform .34s var(--ease);outline:none}
.modal.is-open .modal__dialog{transform:none}
.modal__close{position:absolute;top:14px;right:14px;z-index:3;width:42px;height:42px;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:11px;color:#cfd3d8;cursor:pointer;
  transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),transform .15s var(--ease)}
.modal__close:hover{background:rgba(255,213,0,.14);border-color:var(--yellow);color:var(--yellow)}
.modal__close:active{transform:scale(.94)}
.modal__close:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}
.modal__close svg{width:18px;height:18px}
.modal__head{display:flex;align-items:center;gap:16px;padding:26px 56px 20px 28px;border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,213,0,.05),transparent)}
.modal__av{width:66px;height:66px;flex:none;border-radius:50%;object-fit:cover;object-position:center 40%;
  border:2px solid var(--yellow);box-shadow:0 6px 18px rgba(0,0,0,.4)}
/* v12_30: dvě osoby vedle sebe (Lukáš + Michal) ve stejném stylu – tablet/PC a větší. */
.modal__head{flex-wrap:wrap}
.modal__person{display:flex;align-items:center;gap:16px;min-width:0}
.modal__person--michal{padding-left:22px;margin-left:6px;border-left:1px solid var(--line)}
/* v12_40: na mobilu jen Lukáš (Michal skrytý) – bez střídání. */
@media (max-width:600px){
  .modal__person--michal{display:none}
}
.modal__head-txt{min-width:0}
.modal__eyebrow{display:block;font-family:'Oswald',sans-serif;font-weight:600;font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--yellow)}
.modal__title{margin:3px 0 0;font-family:'Oswald',sans-serif;font-weight:700;font-size:25px;line-height:1.1;color:#fff}
.modal__role{margin:3px 0 0;font-family:'Oswald',sans-serif;font-size:12.5px;letter-spacing:.8px;text-transform:uppercase;color:#a9aeb4}
.modal__body{padding:22px 28px;overflow-y:auto;-webkit-overflow-scrolling:touch;color:#c6cbd0;font-size:15.5px;line-height:1.68}
.modal__body p{margin:0 0 15px}
.modal__body p:last-child{margin-bottom:0}
.modal__body strong{color:#fff;font-weight:600}
.modal__foot{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:18px 28px 24px;border-top:1px solid var(--line);background:rgba(0,0,0,.16)}
.modal__foot .btn{padding:12px 22px}

/* zamčení scrollu pozadí, když je modal otevřený */
html.modal-open{overflow:hidden}
html.modal-open body{overflow:hidden}

@media (max-width:600px){
  .modal{padding:0;align-items:stretch;justify-content:stretch}
  .modal__dialog{max-width:none;max-height:100dvh;height:100dvh;border-radius:0;border:0}
  .modal__head{padding:20px 52px 16px 18px}
  .modal__av{width:54px;height:54px}
  .modal__title{font-size:22px}
  .modal__body{padding:18px;font-size:15px}
  .modal__foot{padding:16px 18px calc(18px + env(safe-area-inset-bottom));position:sticky;bottom:0}
  .modal__foot .btn{flex:1 1 auto;justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  .modal,.modal__dialog{transition:opacity .001s}
  .modal__dialog{transform:none}
}

/* Trust-strip (kredence) – skrytý na mobilu i tabletu, jen desktop */
@media (max-width:1024px){
  .strip{display:none}
}

/* Hero boxy na mobilu – menší prostrkání a písmo, aby se texty vešly bez zlomů */
@media (max-width:600px){
  .hero__usps li{letter-spacing:.3px;font-size:12px}
  .hero__usps strong{font-size:21px;letter-spacing:.5px}
}

/* Sekce 02 – mobilní verze: 9 faktorů sloučených do 5 boxů */
.kb-mobile{display:none}
@media (max-width:680px){
  .kb:not(.kb-mobile){display:none}      /* skryjeme 9 boxů */
  .kb-mobile{display:grid;grid-template-columns:1fr}   /* zobrazíme 5 boxů */
}

/* ============================================================
   Plovoucí ovládání úrovní (mobil + tablet ≤1024) u sekce 05
   ============================================================ */
.lvbar{position:fixed;left:16px;right:16px;bottom:16px;z-index:70;
  display:none;grid-template-columns:1fr auto 1fr;gap:8px;padding:8px;
  background:rgba(15,16,19,.94);border:1px solid rgba(255,255,255,.16);border-radius:14px;
  box-shadow:0 14px 44px rgba(0,0,0,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transform:translateY(160%);opacity:0;pointer-events:none;
  transition:transform .34s var(--ease),opacity .34s var(--ease)}
@media (max-width:1024px){ .lvbar{display:grid} }
.lvbar.is-visible{transform:none;opacity:1;pointer-events:auto}
/* v12_09: maska pod lištou – tmavý pás přes celou šířku až ke spodní hraně
   displeje; zakrývá obsah, který by prosvítal kolem lišty a pod ní.
   Nahoře jemně přechází do průhledna, ať nevzniká tvrdá linka. */
.lvbar::before{
  content:""; position:absolute; z-index:-1; pointer-events:none;
  left:-16px; right:-16px; bottom:-16px; top:-14px;
  background:linear-gradient(to bottom, rgba(21,23,26,0), var(--dark) 24px);
}
.lvbar__btn{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;
  background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:10px;color:#e6e8ea;
  font-family:'Oswald',sans-serif;font-weight:700;font-size:14px;letter-spacing:1.2px;text-transform:uppercase;cursor:pointer;
  transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),transform .14s var(--ease)}
.lvbar__btn:hover{background:rgba(255,213,0,.12);border-color:var(--yellow);color:var(--yellow)}
.lvbar__btn:active{transform:scale(.96)}
.lvbar__btn:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}
.lvbar__btn svg{width:20px;height:20px;flex:none}
.lvbar__btn--toggle{background:var(--yellow);color:#0a0a0a;border-color:var(--yellow);min-width:120px}
.lvbar__btn--toggle:hover{background:#ffdf3a;color:#0a0a0a}
.lvbar__btn--toggle .ic-play{display:none}
.lvbar__btn--toggle.is-paused .ic-pause{display:none}
.lvbar__btn--toggle.is-paused .ic-play{display:block}
/* Když je lišta úrovní vidět, dočasně schováme hlavní sticky CTA (mobil) */
body.lvbar-on .sticky-bar{opacity:0;pointer-events:none;visibility:hidden;transition:opacity .3s var(--ease)}
@media (max-width:420px){
  .lvbar__btn{font-size:12.5px;letter-spacing:.6px;gap:5px}
  .lvbar__btn--toggle{min-width:96px}
}

/* Fotka Lukáš + Michal uvnitř modalu – vizuální předěl dlouhého textu */
.modal__figure{position:relative;margin:22px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#0f1113}
.modal__figure img{display:block;width:100%;height:auto}
/* Titulek přímo na fotografii (dolní část) – prémiový, dobře čitelný díky
   jemnému tmavému přechodu + textovému stínu. Dvě úrovně: jména + role. */
.modal__figure figcaption{
  position:absolute; left:0; right:0; bottom:0; z-index:2;
  display:flex; flex-direction:column; gap:3px; align-items:center; text-align:center;
  padding:52px 16px 15px;
  background:linear-gradient(to top,
    rgba(6,7,9,.92) 0%, rgba(6,7,9,.78) 34%, rgba(6,7,9,.42) 66%, rgba(6,7,9,0) 100%);
}
.modal__figcap-names{
  font-family:'Oswald',sans-serif; font-weight:600; font-size:15px; letter-spacing:.7px;
  text-transform:uppercase; color:#fff; line-height:1.2;
  text-shadow:0 2px 12px rgba(0,0,0,.85), 0 1px 2px rgba(0,0,0,.9);
}
.modal__figcap-role{
  font-family:'Oswald',sans-serif; font-weight:500; font-size:11px; letter-spacing:1.4px;
  text-transform:uppercase; color:var(--yellow); line-height:1.35;
  text-shadow:0 1px 10px rgba(0,0,0,.9), 0 1px 2px rgba(0,0,0,.95);
}
/* jemná zlatá dělicí linka mezi jmény a rolí – prémiový akcent */
.modal__figcap-role::before{
  content:""; display:block; width:34px; height:2px; margin:0 auto 7px;
  background:linear-gradient(90deg, transparent, var(--yellow), transparent); opacity:.85;
}
@media (max-width:600px){
  .modal__figure figcaption{padding:46px 12px 12px}
  .modal__figcap-names{font-size:13.5px}
  .modal__figcap-role{font-size:10px; letter-spacing:1px}
}

/* Nadtitulek hero – „Odborný článek o cenách" světle šedě, zbytek žlutě */
.hero .eyebrow__soft{color:#c9ccd1}

/* „Výškové práce Anděl" v poznámce o původu čísel – od tabletu výš nezalamovat */
@media (min-width:601px){ .nb-nowrap{white-space:nowrap} }

/* Citace v callout „Klíčové sdělení" – tučně, bílé, zvýrazněné */
.callout__key{color:#fff;font-weight:600;font-size:1.05em}

/* Ovládání úrovní – prémiová „lákací" animace na PC, ať uživatel tlačítka použije */
@keyframes lvCtrlInvite{
  0%, 68%, 100%{ box-shadow:0 0 0 0 rgba(255,213,0,0); border-color:var(--line); color:#cfd3d8; transform:none }
  80%{ box-shadow:0 0 0 4px rgba(255,213,0,.15), 0 0 18px rgba(255,213,0,.22); border-color:rgba(255,213,0,.6); color:var(--yellow); transform:translateY(-3px) }
  90%{ box-shadow:0 0 0 2px rgba(255,213,0,.08), 0 0 10px rgba(255,213,0,.12); border-color:rgba(255,213,0,.3); transform:translateY(-1px) }
}
@media (min-width:1025px){
  .levels__ctrl{ animation:lvCtrlInvite 4.8s var(--ease) 2.2s infinite; will-change:transform, box-shadow }
  .levels__ctrls .levels__ctrl:nth-child(2){ animation-delay:2.35s }
  .levels__ctrls .levels__ctrl:nth-child(3){ animation-delay:2.5s }
  /* při najetí i po interakci je klid – animace neruší hover/používání */
  .levels__ctrls:hover .levels__ctrl,
  .levels__ctrl:focus-visible{ animation:none }
}
@media (prefers-reduced-motion:reduce){ .levels__ctrl{ animation:none !important } }

/* „reálně" v hero nadpisu – jen PC a větší (na mobilu „Kolik stojí výškové práce?") */
.hero__realne{display:none}
@media (min-width:769px){ .hero__realne{display:inline} }

/* ============================================================
   Box úrovní na mobilu/tabletu – přišpendlená (sticky) fotka
   Řádky 1–4 při scrollu zajedou nahoru pod fotku, dole zůstane
   čitelný odstavec aktuální úrovně → fotku i text vidíš najednou.
   v12_00: sticky přesunut z fotky na obal .levels__stick a pod
   fotkou se při přišpendlení ukáže políčko .levels__cap s názvem
   a podrobným popisem AKTUÁLNÍ úrovně (plní JS, viz main.js).
   Políčko zmizí kousek před koncem sekce, aby nepřekrylo patičku
   boxu (poznámka o DPH, ovládání, CTA). Na ≥861px (dvousloupcový
   layout, fotka a text vedle sebe) je vše beze změny.
   ============================================================ */
@media (max-width:860px){
  .levels{overflow:visible}                          /* nutné, aby sticky fungoval */
  .levels__stick{position:sticky; top:20px; z-index:4}  /* v12_05: přišpendlení o kus níž od horní hrany */
  /* v12_09: maska nad fotkou – v barvě pozadí sekce zakrývá obsah,
     který při scrollu projíždí za fotkou v mezeře nad žlutým rámováním */
  .levels__stick::before{
    content:""; position:absolute; left:-2px; right:-2px; bottom:100%; height:26px;
    background:var(--dark);
  }
  /* v12_10: prázdný pás pod fotkou (~2 mm) – text zajíždí pod NĚJ,
     ne přímo pod hranu fotky. Zobrazuje se jen při přišpendlení
     (třída is-pinned z JS), jinak by v klidu zasahoval do řádku 1. */
  .levels__stick::after{
    content:""; position:absolute; left:0; right:0; z-index:-1;
    top:calc(100% - 10px); height:24px;              /* 10px schováno pod fotkou + 14px viditelná mezera */
    background:#1d2024;                               /* barva pozadí boxu */
    opacity:0; transition:opacity .2s var(--ease);
  }
  .levels.is-pinned .levels__stick::after{opacity:1}
  .levels__media{
    overflow:hidden; border-radius:10px 10px 0 0;
    border-top:3px solid var(--yellow);              /* v12_05: viditelné ohraničení vršku fotky */
    box-shadow:0 -14px 28px rgba(0,0,0,.6), 0 16px 30px rgba(0,0,0,.5); /* stín i nad fotkou – odděluje ji od obsahu, který projíždí za ní */
  }
  .levels__panel{position:relative; z-index:1}       /* obsah (taby + odstavec) scrolluje pod fotkou */

  /* Políčko s aktuálním slidem – v12_08: kompaktní JEDEN řádek
     (malé číslo + krátký název, menším písmem; cena je na štítku fotky).
     Konstantní výška, žádné „otevírání". Překrývá řádky pod fotkou. */
  .levels__cap{
    position:absolute; left:0; right:0; top:100%;
    display:flex; align-items:center; gap:10px;
    padding:9px 14px;
    background:#22262b;
    border:1px solid var(--line); border-top:0; border-left:3px solid var(--yellow);
    border-radius:0 0 10px 10px;
    box-shadow:0 22px 40px rgba(0,0,0,.55);
    opacity:0; visibility:hidden; transform:translateY(-8px); pointer-events:none;
    transition:opacity .28s var(--ease), transform .28s var(--ease), visibility 0s linear .28s;
  }
  .levels.is-stuck .levels__cap{
    opacity:1; visibility:visible; transform:none; pointer-events:auto;
    transition:opacity .28s var(--ease), transform .28s var(--ease);
  }
  /* v12_10: stejný prázdný pás pod políčkem – text zajíždí pod něj,
     ne přímo pod hranu políčka (mizí a objevuje se spolu s políčkem) */
  .levels__cap::after{
    content:""; position:absolute; left:0; right:0; z-index:-1;
    top:calc(100% - 10px); height:24px;
    background:#1d2024;
  }
  .levels__cap-no{font-family:'Anton',sans-serif;font-size:18px;line-height:1;color:var(--yellow);flex:0 0 auto}
  .levels__cap-name{
    font-family:'Oswald',sans-serif;font-weight:600;font-size:13px;color:#fff;
    line-height:1.2;letter-spacing:.3px;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;
  }
}
@media (min-width:861px){
  .levels__stick{display:contents}                   /* obal na PC „zmizí" – grid zůstává 1:1 jako dřív */
  .levels__cap{display:none}
}
@media (prefers-reduced-motion:reduce){ .levels__cap{transition:none} }

/* Obecné přepínání textu PC / mobil (≤768 = mobil) */
.u-mob{display:none}
@media (max-width:768px){ .u-pc{display:none} .u-mob{display:inline} }

/* v12_15: Přepínač textu položky v hlavičce zarovnaný na hranici hamburgeru
   (≤1024px). Vodorovná lišta (PC) ukazuje „AI Kalkulátor", hamburger
   „Ověřit nabídku". Nezávislé na globálním ≤768px přepínači výše. */
.nav .u-mob{display:none}
.nav .u-pc{display:inline}
@media (max-width:1024px){
  .nav .u-pc{display:none}
  .nav .u-mob{display:inline}
}

/* DIČ v autorské kartě – skryté na mobilu */
@media (max-width:600px){ .byline-dic{display:none} }

/* „VÝŠKOVÉ PRÁCE ANDĚL" v úvodu referencí – odkaz, zvýrazněné, o něco větší */
.vpa-brand{color:var(--yellow);text-decoration:none;font-size:1.08em;font-weight:700;
  border-bottom:2px solid rgba(255,213,0,.5);text-shadow:0 0 14px rgba(255,213,0,.38);
  transition:border-color .2s var(--ease),color .2s var(--ease),text-shadow .2s var(--ease)}
.vpa-brand strong{font-weight:700;letter-spacing:.5px}
.vpa-brand--inline{font-size:1em}   /* brand odkaz uvnitř běžného odstavce – bez zvětšení */
.vpa-brand:hover{border-bottom-color:var(--yellow);color:#ffdf3a;text-shadow:0 0 20px rgba(255,213,0,.6)}

/* Footer logo – na mobilu vystředěné */
@media (max-width:680px){ .footer__logo{margin-left:auto;margin-right:auto} }

/* Zvýrazněná zářivě bílá tučná věta */
.hl-bright{color:#fff;font-weight:700;text-shadow:0 0 12px rgba(255,255,255,.28)}

/* Autorská karta – prémiová „lákací" animace na PC, ať na ni lidé kliknou.
   PC a větší zobrazení: zářivý PLATINOVÝ obrys (kovový conic-gradient rám)
   s putujícím světelným odleskem; na hover se rám ztiší a prokreslí zlatá
   záře ve značkové žluté. Mobil/tablet zůstává beze změny. */
@keyframes bylineInvite{
  0%, 70%, 100%{ box-shadow:0 14px 40px rgba(0,0,0,.45), 0 0 16px rgba(226,232,242,.14); transform:none }
  80%{ box-shadow:0 14px 40px rgba(0,0,0,.45), 0 0 0 3px rgba(238,243,250,.20), 0 0 30px rgba(226,232,242,.38); transform:translateY(-2px) }
  88%{ box-shadow:0 14px 40px rgba(0,0,0,.45), 0 0 18px rgba(226,232,242,.20); transform:translateY(-1px) }
}
@keyframes bylineArr{
  0%, 70%, 100%{ transform:none; opacity:.85 }
  80%{ transform:scale(1.28); opacity:1 }
  88%{ transform:scale(1.1); opacity:.96 }
}
/* Putující odlesk po platinovém rámu (posun background-position – plynulé všude) */
@keyframes bylineGlint{
  0%{ background-position:115% 0, 0 0 }
  46%{ background-position:-15% 0, 0 0 }
  100%{ background-position:-15% 0, 0 0 }
}
@media (min-width:1025px){
  .hero__byline{
    border-color:transparent;                          /* původní 1px rámeček nahrazuje platinový prstenec */
    box-shadow:0 14px 40px rgba(0,0,0,.45), 0 0 16px rgba(226,232,242,.14);
    animation:bylineInvite 5.6s var(--ease) 2.5s infinite;
    will-change:transform, box-shadow;
  }
  /* Platinový kovový rám: statický conic-gradient (kov) + linear-gradient odlesk nahoře */
  .hero__byline::after{
    content:"";position:absolute;inset:-2px;border-radius:16px;padding:2px;
    background:
      linear-gradient(115deg, rgba(255,255,255,0) 40%, rgba(255,255,255,.92) 50%, rgba(255,244,200,.55) 53%, rgba(255,255,255,0) 62%) 115% 0 / 250% 100% no-repeat,
      conic-gradient(from 215deg,
        #8b9099, #eef1f5 12%, #ffffff 20%, #b7bdc6 32%,
        #7c828c 47%, #e6e9ee 59%, #fdfdfe 67%, #a9aeb7 82%, #8b9099);
    -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, linear-gradient(#000 0 0);
    mask-composite:exclude;
    pointer-events:none;
    animation:bylineGlint 5.6s var(--ease) 2.5s infinite;
  }
  .hero__byline__arr{ animation:bylineArr 5.6s var(--ease) 2.5s infinite; transform-origin:center }
  /* Při najetí klid + zlatá záře ve značkové žluté (výzva ke kliknutí) */
  .hero__byline:hover{
    animation:none;
    box-shadow:0 14px 40px rgba(0,0,0,.45), 0 0 0 3px rgba(255,213,0,.16), 0 0 28px rgba(255,213,0,.28), 0 0 14px rgba(226,232,242,.18);
  }
  .hero__byline:hover::after{ animation:none; background-position:-15% 0, 0 0 }
  .hero__byline:hover .hero__byline__arr{ animation:none }
  /* Fallback: bez podpory mask-composite se pseudo-rám nevykreslí, zůstane původní rámeček */
  @supports not ((mask-composite:exclude) or (-webkit-mask-composite:xor)){
    .hero__byline{ border-color:rgba(226,232,242,.55) }
    .hero__byline::after{ content:none }
  }
}
@media (prefers-reduced-motion:reduce){ .hero__byline, .hero__byline__arr, .hero__byline::after{ animation:none !important } }

/* Výčet referenčních zákazníků – bílým písmem pro zvýraznění */
.clients-white{color:#fff}

/* ============================================================
   ÚKOL v11_86 — Modernizace horního menu (PC a větší zobrazení)
   • Text položek = stejný FONT jako mini-logo (.logo__text strong:
     Oswald 700 / letter-spacing / UPPERCASE) a stejná VELIKOST 17px
     na velkých monitorech; na užších noteboocích plynule zmenší (clamp),
     aby se 8 položek + logo nikdy nezlomilo ani nevytvořilo vodorovný posun.
     (Pozn.: původní lišta se na 1025–1550px vodorovně přetékala – toto to
     zároveň opravuje, takže menu se teď vejde na všech desktopech.)
   • Ikony dostanou prémiový „mincový" chip (kruh s vlasovým obrysem),
     v klidu decentní, na hover se celá položka ztmaví a mince se rozzáří žlutě.
   Mobilní/tabletové menu (≤1024px) zůstává beze změny.
   ============================================================ */
@media (min-width:1025px){
  /* širší horní řádek + kompaktnější logo = prostor, aby text mohl na
     velkých monitorech dorůst na 17px jako u loga (obsah stránek zůstává 1200px) */
  .header__inner{max-width:1600px; gap:18px}
  .logo img{height:60px}

  .nav{
    gap:2px;
    font-family:'Oswald',sans-serif;   /* shodný font s mini-logem */
    font-weight:700;                    /* shodná váha */
    letter-spacing:.8px;
    text-transform:uppercase;
  }
  .nav a{
    padding:8px 10px; gap:8px; border-radius:10px; color:#0a0a0a;
    transition:background .22s var(--ease), color .22s var(--ease),
               transform .22s var(--ease), box-shadow .22s var(--ease);
  }

  /* PRÉMIOVÁ „MINCOVÁ" IKONA — kruhový chip s vlasovým obrysem a jemným leskem */
  .nav .nav__ico{
    width:1.5em; height:1.5em; padding:.24em; flex:none; opacity:1;
    border-radius:50%;
    color:#0a0a0a;
    background:rgba(0,0,0,.05);
    border:1.4px solid rgba(0,0,0,.24);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.4), 0 1px 2px rgba(0,0,0,.12);
    transition:background .22s var(--ease), color .22s var(--ease),
               border-color .22s var(--ease), box-shadow .22s var(--ease);
  }

  /* HOVER / FOCUS — celá položka jako tmavá pilulka, ikona-mince se rozsvítí žlutě */
  .nav a:hover, .nav a:focus-visible{
    background:#0a0a0a; color:var(--yellow);
    transform:translateY(-1px);
    box-shadow:0 9px 22px rgba(0,0,0,.34);
  }
  .nav a:hover .nav__ico, .nav a:focus-visible .nav__ico{
    background:rgba(255,213,0,.16); color:var(--yellow);
    border-color:rgba(255,213,0,.85);
    box-shadow:inset 0 0 0 1px rgba(255,213,0,.25), 0 0 12px rgba(255,213,0,.4);
  }

  .nav a::after{display:none}                       /* zvýraznění řeší tmavá pilulka */
  .nav a:not(:first-child)::before{background:rgba(0,0,0,.14)}
  .nav a:hover::before, .nav a:focus-visible::before{opacity:0}
}

/* TIER A — užší desktopy 1025–1300px (logo-text je zde skrytý stejně jako v originále):
   kompaktnější mince, aby se 8 položek vešlo bez posunu; velikost roste s šířkou. */
@media (min-width:1025px) and (max-width:1300px){
  .logo img{height:54px}
  .nav{gap:1px}
  .nav a{padding:8px 8px; gap:7px}
  .nav .nav__ico{width:1.4em; height:1.4em; padding:.2em; border-width:1.2px}
  .nav{font-size:clamp(11px, 1.5vw - 6px, 13.6px)}
}

/* TIER B — velké displeje ≥1301px (zobrazuje se i logo-text): text dorůstá
   plynule až na 17px = přesně velikost textu u mini-loga (.logo__text strong). */
@media (min-width:1301px){
  .nav{font-size:clamp(10px, 1.131vw - 4.71px, 17px)}
}

/* MIKRO-TIER — nejužší desktopy 1025–1120px (těsně nad mobilním menu):
   ještě kompaktnější logo, mince a rozpal, aby text zůstal čitelný a nic se neposouvalo. */
@media (min-width:1025px) and (max-width:1120px){
  .logo img{height:46px}
  .header__inner{gap:10px}
  .nav a{padding:7px 6px; gap:5px}
  .nav .nav__ico{width:1.28em; height:1.28em; padding:.15em; border-width:1.1px}
  .nav{font-size:clamp(11px, 1.5vw - 4.5px, 12.8px)}
}

/* ============================================================
   ÚKOL v11_96 — Mobil: popisek „za pomocníka" vedle „od 600 Kč/h"
   byl příliš malý (jen ~0,28× ceny). Zvětšen na ~0,55× ceny (stejný
   poměr jako na tabletu/desktopu), aby byl dobře čitelný a zároveň
   se stále vešel na jeden řádek. Aby se dvojice vešla i s větším
   popiskem, jsou cenové boxy na mobilu o něco menší (obě ceny
   stejně, zůstávají výrazné). Na ≤345px jemně menší, ať se vejde
   i na velmi úzké telefony. Tablet/desktop beze změny.
   ============================================================ */
@media (max-width:600px){
  .hero__mark{font-size:0.80em; padding:0 7px}
  .hero__helper{
    display:inline; white-space:nowrap; vertical-align:baseline;
    margin-left:7px; letter-spacing:.2px; text-transform:none;
    font-size:0.44em;
  } /* v11_99: mezera zmenšena cca na polovinu – dřív margin 6px + mezera ve zdroji (~8px), teď jen 7px */
}
@media (max-width:345px){
  .hero__mark{font-size:0.72em; padding:0 6px}
  .hero__helper{font-size:0.42em; margin-left:6px} /* v11_99: drobná kompenzace odstraněné mezery ve zdroji */
}

/* ============================================================
   ÚKOL v11_91 — Autorská karta („Sestavili…") na mobilu/tabletu:
   na malých zobrazeních nebylo patrné, že se dá rozkliknout.
   Přidána jasná spodní výzva „Zobrazit profil autora ›", jemná
   pulzující pozvánka a zřetelná odezva na dotek. Na PC (≥1025px)
   zůstává původní platinový obrys + animovaná šipka beze změny.
   ============================================================ */
.byline-tap{display:none}

@media (max-width:1024px){
  .hero__byline{
    display:grid; cursor:pointer;
    grid-template-columns:auto minmax(0,1fr);
    grid-template-areas:"av txt" "tap tap";
    column-gap:12px; row-gap:10px; align-items:center;
  }
  .hero__byline__av{grid-area:av}
  .hero__byline__txt{grid-area:txt}
  .byline-tap{grid-area:tap}
  .hero__byline__arr{display:none}   /* na mobilu/tabletu nahrazeno jasnou spodní výzvou */

  .byline-tap{
    display:flex; align-items:center; justify-content:center; gap:8px;
    margin-top:0; padding-top:10px;
    border-top:1px solid rgba(255,255,255,.14);
    color:var(--yellow);
    font-family:'Oswald',sans-serif; font-weight:600; font-size:12.5px;
    letter-spacing:1.4px; text-transform:uppercase;
  }
  .byline-tap__chev{width:15px; height:15px; flex:none}

  /* zřetelná odezva na dotek (tap) */
  .hero__byline:active{
    transform:scale(.99);
    border-color:var(--yellow);
    background:rgba(10,11,14,.98);
    box-shadow:0 10px 30px rgba(0,0,0,.5), 0 0 0 2px rgba(255,213,0,.2);
  }
  .hero__byline:active .byline-tap{color:#fff}
}

/* jemná „dýchající" pozvánka, ať je jasné, že jde o tlačítko (bez rušení) */
@media (max-width:1024px) and (prefers-reduced-motion:no-preference){
  .hero__byline{animation:bylineTapInvite 3s var(--ease) 1.2s infinite}
  .byline-tap__chev{animation:bylineTapChev 3s var(--ease) 1.2s infinite}
}
@keyframes bylineTapInvite{
  0%, 70%, 100%{ box-shadow:0 14px 40px rgba(0,0,0,.45); border-color:rgba(255,255,255,.22) }
  82%{ box-shadow:0 14px 40px rgba(0,0,0,.45), 0 0 0 3px rgba(255,213,0,.16), 0 0 22px rgba(255,213,0,.32);
       border-color:rgba(255,213,0,.72) }
  90%{ box-shadow:0 14px 40px rgba(0,0,0,.45), 0 0 0 1px rgba(255,213,0,.1);
       border-color:rgba(255,213,0,.45) }
}
@keyframes bylineTapChev{
  0%, 70%, 100%{ transform:translateX(0) }
  82%{ transform:translateX(4px) }
  90%{ transform:translateX(1px) }
}
@media (prefers-reduced-motion:reduce){
  .byline-tap__chev{animation:none !important}
}

/* ============================================================
   ÚKOL v12_12 — AI Audit cenových nabídek (konverzní blok)
   Prémiová karta mezi ceníkem (01) a faktory (02): logo nástroje
   na černé dlaždici se žlutým prstencem, titulek, přínosy se
   žlutými odškrtnutími, výrazné CTA a důvěryhodná poznámka.
   ============================================================ */
.audit{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:48px;align-items:center;
  background:linear-gradient(135deg,#101215 0%,#1b1e23 52%,#101215 100%);
  border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:12px;
  padding:46px 50px;position:relative;overflow:hidden;
  box-shadow:0 30px 70px rgba(0,0,0,.4)}
.audit::after{content:"";position:absolute;top:-140px;left:-80px;width:420px;height:420px;pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,213,0,.07),transparent 70%)}
.audit__media{position:relative;z-index:1;background:#000;border:1px solid rgba(255,213,0,.28);border-radius:16px;
  padding:20px;box-shadow:0 18px 44px rgba(0,0,0,.55)}
.audit__media img{width:100%;height:auto;display:block}
.audit__body{position:relative;z-index:1;min-width:0}
.audit__title{font-family:'Anton','Oswald',sans-serif;font-weight:400;text-transform:uppercase;
  font-size:clamp(25px,2.8vw,36px);line-height:1.12;letter-spacing:.5px;color:#fff;margin:14px 0 16px}
.audit__lead{color:#c8ccd1;font-size:15.5px;line-height:1.66;max-width:640px}
.audit__toolname{color:#fff} /* v12_38: název nástroje bíle */
.audit__points{margin:20px 0 28px;display:grid;gap:10px}
.audit__points li{position:relative;padding-left:30px;color:#d6dade;font-size:15px;line-height:1.5}
.audit__points li::before{content:"";position:absolute;left:0;top:1px;width:19px;height:19px;border-radius:50%;
  background:rgba(255,213,0,.13);border:1px solid rgba(255,213,0,.45)}
.audit__points li::after{content:"";position:absolute;left:5px;top:6px;width:9px;height:5px;
  border-left:2px solid var(--yellow);border-bottom:2px solid var(--yellow);transform:rotate(-45deg)}
.audit__cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.audit__btn{padding:15px 28px;font-size:15px}
.audit__note{flex:1;min-width:220px;font-size:12.5px;line-height:1.5;color:var(--muted);text-align:justify;text-align-last:left;-webkit-hyphens:none;hyphens:none}
@media (max-width:900px){
  .audit{grid-template-columns:1fr;gap:26px;padding:30px 22px 26px}
  .audit__media{max-width:200px;margin:0 auto;padding:14px}
  .audit__title{text-align:left}
  .audit__btn{width:100%;justify-content:center}
  .audit__cta{gap:12px}
  .audit__note{flex-basis:100%}
}
