@font-face{font-family:"Roboto";font-style:normal;font-weight:300 900;font-stretch:100%;font-display:swap;src:url(?spsd-nv-asset=font-latin-ext&v=b4d9fc5a) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Roboto";font-style:normal;font-weight:300 900;font-stretch:100%;font-display:swap;src:url(?spsd-nv-asset=font-latin&v=b4d9fc5a) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  /* barvy podle logo manuálu SPŠD */
  --navy:#002B4F;      /* modrá = škola, studium */
  --navy-2:#003A69;    /* hover */
  --navy-50:#EAF0F6;
  --orange:#EB5D43;    /* praxe při studiu – jen čáry, šipky, podtržení */
  --red:#FF0033;       /* zaměstnání v DPP */
  --ink:#1B1F2A; --muted:#5B6475; --line:#DDE2EA; --bg:#F4F6F9;
  --wrap:3440px;
  --font:"Roboto",Arial,sans-serif;
  --mono:"Roboto Mono",ui-monospace,monospace;
  --shadow:0 14px 30px -14px rgba(0,43,79,.35);
  --bgicons:url("?spsd-nv-asset=bg-ikony&v=b4d9fc5a"); /* rastr ikon z logo manuálu, HD */
}
*{box-sizing:border-box}
body{margin:0;font-family:var(--font);font-size:16px;line-height:1.5;color:var(--ink);background:#fff url("https://www.sps-dopravni.cz/wp-content/themes/wolverine-child/assets/images/background.jpg") center top/1600px auto repeat}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(24px,calc(5vw - 48px),72px)}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-50px;z-index:300;background:#fff;color:var(--navy);font-weight:700;padding:10px 14px;border-radius:4px;transition:top .15s}
.skip:focus{top:10px}
.chev3{height:11px;width:16px;flex-shrink:0}
.chv{width:14px;height:14px;flex-shrink:0;color:var(--orange)}
.card .chv{color:#fff}

/* ============ UŽŠÍ HORNÍ LIŠTA (v1) ============ */
/* horní lišta ve stylu červené lišty dpp.cz: 48 px, verzálky s ikonou, záložky se zaoblenými horními rohy */
.util{background:var(--navy);color:#fff;font-size:14px}
.util .wrap{display:flex;justify-content:space-between;align-items:stretch;min-height:48px;gap:16px}
.util nav{display:flex;align-items:stretch}
.util a{display:inline-flex;align-items:center;gap:9px;padding:0 16px;font-weight:500;white-space:nowrap;border-radius:8px 8px 0 0;transition:background-color .15s}
.util nav:first-child a{text-transform:uppercase;letter-spacing:.5px;font-weight:700}
@media (hover:hover){.util a:hover{background:rgba(255,255,255,.12)}}
.util a:focus-visible{outline:2px solid #fff;outline-offset:-5px}
.util .ico{height:18px;width:auto;flex-shrink:0}
.util .ico.w{height:14px}
.util .right a{color:#D5DFEA;padding:0 12px}
.util .right .ico{height:14px;opacity:.85}
.util .lg{margin-left:-5px}
@media (max-width:1240px){.util .lg{display:none}.util a{padding:0 12px}.util .right a{padding:0 9px}}
@media (max-width:1100px){.util .wrap{gap:8px}.util a{padding:0 9px;gap:7px;font-size:13px}.util .right a{padding:0 7px}}

/* ============ HLAVIČKA S MEGA-MENU (v1) ============ */
.hdr{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}
.hdr .wrap{display:flex;align-items:center;gap:20px;min-height:80px}
.brand{display:flex;align-items:center;gap:16px;flex-shrink:0}
.brand .spsd{height:38px;width:auto}
.brand .sep{width:1px;height:36px;background:var(--line)}
.brand .dpp{height:46.5px;width:auto}
.mainnav{display:flex;margin-left:auto}
.mainnav>.item>a{display:flex;align-items:center;gap:6px;padding:28px 11px;font-weight:700;font-size:14.5px;letter-spacing:.3px;text-transform:uppercase;color:var(--navy);white-space:nowrap;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:7px;transition:text-decoration-color .15s}
.mainnav>.item:hover>a,.mainnav>.item:focus-within>a{text-decoration-color:var(--orange)}
.mainnav .caret{width:10px;height:10px;transition:transform .2s}
.mainnav>.item:hover .caret,.mainnav>.item:focus-within .caret{transform:rotate(180deg)}
.mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);box-shadow:0 24px 40px -22px rgba(0,43,79,.4);opacity:0;visibility:hidden;transform:translateY(-4px);transition:.15s}
.mainnav>.item:hover .mega,.mainnav>.item:focus-within .mega{opacity:1;visibility:visible;transform:none}
.mega .wrap{display:grid;gap:0;align-items:stretch;padding-top:26px;padding-bottom:10px;min-height:0}
.mega .cols-4{grid-template-columns:1.05fr 1fr 1.15fr 1fr}
.mega .cols-3{grid-template-columns:repeat(3,1fr)}
.mega .col{padding:0 28px 22px;border-left:1px solid var(--line)}
.mega .col:first-child{padding-left:0;border-left:0}
.mega h4{margin:0 0 8px;padding-bottom:8px;border-bottom:2px solid var(--navy);font-size:14px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;color:var(--navy)}
.mega h4 span{font-weight:500;letter-spacing:.2px;text-transform:none;color:var(--muted)}
.mega ul{list-style:none;margin:0 0 18px;padding:0}
@media (min-width:2200px){.mega h4{max-width:560px}}
.mega ul:last-child{margin-bottom:0}
.mega li a{display:block;padding:5px 0;font-size:15.5px;line-height:1.35;color:var(--ink)}
@media (hover:hover){.mega li a:hover{color:var(--navy);text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:4px}}
/* sloupec s hlavními akcemi – jen jemně odlišený, nekřičí */
/* Přijetí ke studiu / Rychlé odkazy: obyčejný první sloupec, odkazy jen o kousek tučnější */
.mega .col.key li a{font-weight:500;color:var(--navy)}
.mega .col.key .when{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:1px}
.mega .col.key li a .t{display:block}
.mega .mfoot{grid-column:1/-1;border-top:1px solid var(--line);padding:14px 0 16px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:14.5px;color:var(--muted)}
.mega .mfoot a{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--navy)}
@media (hover:hover){.mega .mfoot a:hover{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:4px}}
.hdr-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
@media (max-width:340px){.hdr .wrap{gap:6px!important}.brand{gap:7px!important}}
.search-btn{display:flex;align-items:center;gap:8px;margin-left:8px;padding:10px 2px 10px 20px;border:0;border-left:1px solid var(--line);border-radius:0;background:none;color:var(--navy);font:inherit;font-weight:700;font-size:14.5px;letter-spacing:.3px;text-transform:uppercase;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:7px;transition:text-decoration-color .15s}
.search-btn[aria-expanded="true"]{text-decoration-color:var(--orange)}@media (hover:hover){.search-btn:hover{text-decoration-color:var(--orange)}}
.search-btn svg{width:17px;height:17px;flex-shrink:0}
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;border-radius:999px;padding:11px 20px;border:2px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer}
@media (hover:hover){.btn:hover{background:var(--navy-2);border-color:var(--navy-2)}}
.btn.light{background:#fff;color:var(--navy);border-color:#fff}
@media (hover:hover){.btn.light:hover{background:var(--navy-50)}}
.btn.ghost{background:transparent;color:#fff;border-color:#fff}
@media (hover:hover){.btn.ghost:hover{background:rgba(255,255,255,.1)}}
.burger{display:none;flex-direction:column;align-items:center;gap:1px;border:0;background:none;color:var(--navy);padding:4px 2px;cursor:pointer;font:inherit;font-size:10.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;line-height:1}
.burger svg{width:28px;height:28px;display:block}

/* ============ HLEDÁNÍ – NAŠEPTÁVAČ (v1, bez Ctrl K) ============ */
.searchbar{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 16px 30px -22px rgba(0,43,79,.35);display:none}
.searchbar.open{display:block}
.hdr.searching .mega{display:none}
.searchbar{z-index:3}
.searchbar .wrap{padding-top:22px;padding-bottom:24px;min-height:0;display:block}
.searchbar form{display:flex;gap:10px;align-items:stretch}
.searchbar label.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.searchbar input{flex:1;height:48px;border:1px solid #B9C3D1;border-radius:4px;padding:0 14px;font:inherit;font-size:17px;color:var(--ink);background:#fff}
.searchbar input:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,43,79,.12)}
.searchbar button.go{height:48px;padding:0 26px;border:0;border-radius:4px;background:var(--navy);color:#fff;font:inherit;font-weight:700;font-size:16px;cursor:pointer}
@media (hover:hover){.searchbar button.go:hover{background:var(--navy-2)}}
.searchbar button.x{flex-shrink:0;width:48px;height:48px;display:grid;place-items:center;padding:0;border:1px solid #B9C3D1;border-radius:4px;background:#fff;color:var(--navy);cursor:pointer}
.searchbar button.x svg{width:20px;height:20px}
@media (hover:hover){.searchbar button.x:hover{background:var(--navy-50);border-color:var(--navy)}}
.searchbar button.x:focus-visible{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,43,79,.12)}
.sres{margin-top:16px;max-width:980px}
.sres .cnt{margin:0 0 8px;font-size:14.5px;color:var(--muted)}
.sres .cnt b{color:var(--ink)}
.sres ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.sres li a{display:grid;grid-template-columns:96px 1fr auto;align-items:center;gap:0 18px;padding:11px 12px;border-bottom:1px solid var(--line);color:var(--ink)}
.sres li a.act{background:var(--navy-50)}@media (hover:hover){.sres li a:hover{background:var(--navy-50)}}
.sres .typ{justify-self:start;font-size:11.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--navy);background:#fff;border:1px solid #C9D3DF;border-radius:3px;padding:3px 7px;line-height:1.2}
.sres .tt{font-size:16.5px;font-weight:500;color:var(--navy)}
.sres .tt b{font-weight:700;background:#FFE9E4;border-radius:2px;padding:0 1px}
.sres .pth{display:block;font-size:13.5px;font-weight:400;color:var(--muted);margin-top:1px}
.sres .go-i{width:16px;height:16px;color:#9AA5B5}
@media (hover:hover){.sres li a:hover .go-i{color:var(--orange)}}
.sres .all{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-weight:700;color:var(--navy)}
@media (hover:hover){.sres .all:hover{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:4px}}

/* ============ KARUSEL (v2) ============ */
.carousel{position:relative;background:#e9edf3;max-width:3440px;margin:0 auto}
.slides{position:relative;width:100%;aspect-ratio:1790/663;max-height:780px;overflow:hidden}
.strack{display:flex;height:100%;transition:transform .65s cubic-bezier(.45,0,.2,1);will-change:transform;touch-action:pan-y}
.strack>*{flex:0 0 100%;width:100%;height:100%;margin:0}
.strack img{width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%);user-select:none;-webkit-user-drag:none;display:block}
@media (min-width:2200px){.strack img{object-position:var(--wpos,var(--pos,50% 50%))}}
.pslide{position:relative;overflow:hidden}
.pslide figcaption{position:absolute;left:clamp(84px,10vw,190px);bottom:0;max-width:min(540px,52%);display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:clamp(18px,1.9vw,28px) clamp(20px,2.2vw,32px);color:#fff;background:var(--navy);border-bottom:4px solid var(--orange);box-shadow:0 -12px 34px -18px rgba(0,0,0,.5)}
.pslide .k{font-weight:700;font-size:15px;letter-spacing:1px;text-transform:uppercase;color:#fff;border-bottom:3px solid var(--orange);padding-bottom:3px}
.pslide strong{font-size:clamp(22px,2.3vw,38px);line-height:1.1;font-weight:900;text-transform:uppercase;text-wrap:balance}
.pslide .d{font-size:clamp(15px,1.1vw,18px);max-width:32em;color:#D5DFEA}
.pslide .cta{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-weight:700;font-size:16px;letter-spacing:.4px;text-transform:uppercase;padding:11px 18px;border:2px solid #fff;border-radius:4px}
@media (hover:hover){.pslide .cta:hover{background:#fff;color:var(--navy)}}
.pslide .cta .chv{width:16px;height:16px}
/* celý okraj u šipky je ztmavený přechodem – šipka je čitelná na každém banneru */
.car-btn{position:absolute;top:0;bottom:0;width:clamp(64px,8vw,130px);border:0;padding:0 18px;color:#fff;cursor:pointer;display:flex;align-items:center;background:none;z-index:2}
.car-btn::before{content:"";position:absolute;inset:0;opacity:.75;transition:opacity .2s}
.car-btn.prev{left:0;justify-content:flex-start}.car-btn.prev::before{background:linear-gradient(90deg,rgba(0,0,0,.42),rgba(0,0,0,0))}
.car-btn.next{right:0;justify-content:flex-end}.car-btn.next::before{background:linear-gradient(270deg,rgba(0,0,0,.42),rgba(0,0,0,0))}
.car-btn:focus-visible::before{opacity:1}@media (hover:hover){.car-btn:hover::before{opacity:1}}
.car-btn .ci{position:relative;width:46px;height:46px;border-radius:50%;border:2px solid rgba(255,255,255,.9);display:grid;place-items:center;transition:background .2s}
@media (hover:hover){.car-btn:hover .ci{background:rgba(255,255,255,.15)}}
.car-btn svg{width:22px;height:22px}
.cnav{display:flex;justify-content:center;align-items:center;gap:14px;padding:14px 0 0}
/* počítadlo „02 / 06“ – vždy je jasné, kde člověk je */
.ccount{font-size:13px;font-weight:700;letter-spacing:.8px;color:#8A95A6;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}
.ccount b{color:var(--navy)}
.ccount i{font-style:normal;margin:0 5px;color:#B8C2CF}
/* čárky: všechny stejně dlouhé, aktuální je tmavě modrá (i když je karusel zastavený myší) */
.dots{display:flex;align-items:center;gap:6px}
.dots button{width:28px;height:21px;border:0;padding:0;background:none;cursor:pointer;position:relative}
/* čárka je jediný prvek: šedá, aktuální tmavě modrá; průběh je oranžová vrstva uvnitř stejného tvaru,
   takže okraje vždy sedí přesně a začátek není „useknutý“ */
.dots button::before{content:"";position:absolute;left:0;right:0;top:9px;height:3px;border-radius:2px;background:#C9D2DE;transition:background-color .2s}
@media (hover:hover){.dots button:not([aria-current="true"]):hover::before{background:#8E9BAE}}
.dots button[aria-current="true"]::before{top:8px;height:5px;border-radius:3px;background:linear-gradient(var(--orange),var(--orange)) 0 0/0% 100% no-repeat,var(--navy)}
.carousel.auto .dots button[aria-current="true"]::before{animation:dotfill 10s linear forwards}
.carousel.auto:is(.hover,.focus,.hold,.tabhidden) .dots button[aria-current="true"]::before{animation-play-state:paused}
@keyframes dotfill{from{background-size:0% 100%}to{background-size:100% 100%}}
/* plakát nebo banner s textem: zobrazí se celý, po stranách je rozmazaná kopie (nic se neořízne) */
.bslide{position:relative;overflow:hidden;background:#10263b}
.strack .bslide img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(24px) brightness(.6) saturate(1.2);transform:scale(1.12)}
.strack .bslide img.fg{position:relative;object-fit:contain}
.zbtn{position:absolute;inset:0;z-index:1;border:0;padding:0;background:none;cursor:zoom-in}
.zbadge{position:absolute;right:clamp(84px,9vw,150px);bottom:16px;display:inline-flex;align-items:center;gap:7px;background:rgba(0,43,79,.9);color:#fff;font:inherit;font-size:14px;font-weight:700;padding:8px 12px;border-radius:4px}
.zbadge svg{width:17px;height:17px}
.zbtn:focus-visible .zbadge{background:var(--navy);text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:3px}@media (hover:hover){.zbtn:hover .zbadge{background:var(--navy);text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:3px}}
/* prohlížeč plakátu: neprůhledné pozadí, nahoře název a Zavřít, plakát nejdřív celý; klepnutím se přiblíží a jde posouvat (bez viditelných posuvníků) */
.lbox{position:fixed;inset:0;z-index:120;background:#0A1726;color:#fff;display:flex;flex-direction:column}
.lbox[hidden]{display:none}
.lbar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:env(safe-area-inset-top) 10px 0 20px;border-bottom:1px solid rgba(255,255,255,.12)}
.lbar b{min-width:0;font-size:15px;font-weight:700;letter-spacing:.2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lbx{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;border:0;background:none;color:#fff;font:inherit;font-size:14px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;padding:10px 8px}
.lbx svg{width:24px;height:24px}
.lsc{flex:1;min-height:0;display:flex;padding:16px;overflow:auto;overscroll-behavior:contain;scrollbar-width:none}
.lsc::-webkit-scrollbar{display:none}
.lsc img{display:block;margin:auto;max-width:100%;max-height:100%;width:auto;height:auto;cursor:zoom-in;user-select:none;-webkit-user-drag:none}
.lbox.zoom .lsc{padding:0}
.lbox.zoom .lsc img{max-width:none;max-height:none;cursor:grab}
.lbox.zoom.drag .lsc img{cursor:grabbing}
.lhint{flex-shrink:0;margin:0;padding:12px 16px calc(14px + env(safe-area-inset-bottom));text-align:center;color:#C9D6E4;font-size:14px;border-top:1px solid rgba(255,255,255,.08)}
.lhint .h-out,.lhint .m{display:none}
.lbox.zoom .lhint .h-in{display:none}
.lbox.zoom .lhint .h-out{display:inline}
@media (pointer:coarse){.lhint .d{display:none}.lhint .m{display:inline}}
/* koláž: fotky se skládají samy podle šířky obrazovky (PC 9, tablet 7, mobil 3) */
/* koláž „Ze života školy“ (v23): šikmá mozaika – spoje dlaždic mají sklon jako šipky z loga */
.kslide{background:#fff}
.kmos{--s:clamp(16px,2.1vw,38px);--gp:5px;height:100%;display:flex;flex-direction:column;gap:var(--gp)}
.krow{flex:1 1 0;min-height:0;display:flex;margin:0 calc(-1 * var(--s))}
.kt{position:relative;display:block;flex:var(--g,1) 1 0;min-width:0;margin-left:calc(var(--gp) - var(--s));clip-path:polygon(var(--s) 0,100% 0,calc(100% - var(--s)) 100%,0 100%);overflow:hidden;transition:flex-grow .55s cubic-bezier(.3,.7,.2,1)}
.kt:first-child{margin-left:0}
.kt img{transition:transform .7s cubic-bezier(.3,.7,.2,1)}
a.kt:focus-visible{flex-grow:calc(var(--g,1) * 1.5)}@media (hover:hover){a.kt:hover{flex-grow:calc(var(--g,1) * 1.5)}}
a.kt:focus-visible img{transform:scale(1.05)}@media (hover:hover){a.kt:hover img{transform:scale(1.05)}}
a.kt:focus-visible{outline:none}
.kt .lab{position:absolute;left:14px;bottom:14px;background:var(--navy);color:#fff;font-size:13px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;padding:5px 10px;border-left:3px solid var(--orange);white-space:nowrap;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s;pointer-events:none}
.kt:first-child .lab{left:calc(var(--s) + 14px)}
a.kt:focus-visible .lab{opacity:1;transform:none}@media (hover:hover){a.kt:hover .lab{opacity:1;transform:none}}
.ktxt{background:var(--navy) var(--bgicons) center/cover;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;padding:0 calc(var(--s) + 12px) 0 calc(var(--s) + 22px);border-bottom:4px solid var(--orange)}
.pslide .ktxt strong{font-size:clamp(18px,1.75vw,30px)}
.pslide .ktxt .cta{font-size:clamp(13px,1vw,16px);padding:clamp(7px,.7vw,11px) clamp(10px,1vw,18px)}
/* příjezd dlaždic: když se koláž objeví, dlaždice najedou zprava jedna po druhé */
@media (prefers-reduced-motion:no-preference){
  .kslide.on .kt{animation:ktin .5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--k,0) * 45ms + 150ms)}
}
@keyframes ktin{from{opacity:0;transform:translateX(60px)}to{opacity:1;transform:none}}
.kslide figcaption{display:none}
.carousel{background:transparent!important}

/* ============ NADPISY S TRAMVAJOVOU LINKOU (v2) ============ */
.sec{padding:44px 0 16px}
/* nadpisy sekcí: čára = kolej, na ní stojí vozidla MHD (vektor) */
.sec-h{display:flex;align-items:flex-end;margin-bottom:26px}
.sec-h h2{margin:0 18px -1px 0;font-size:24px;font-weight:900;letter-spacing:.5px;text-transform:uppercase;color:var(--navy);line-height:1;white-space:nowrap}
.track{flex:1;min-width:0;container-type:inline-size;display:flex;justify-content:flex-end;align-items:flex-end;gap:14px;min-height:34px;padding:0 2px 2px;border-bottom:3px solid var(--navy);color:var(--navy);position:relative}
.track::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:3px;background:repeating-linear-gradient(90deg,var(--navy) 0 3px,transparent 3px 14px);opacity:.35}
.track svg{display:block;flex-shrink:0}
.track .tram{height:36px;width:auto}
.track .bus{height:30px;width:auto;max-width:100%}
/* metro je dlouhé: když se nevejde, ořízne se zleva (vidět zůstane čelo s kabinou) a konec se ztrácí */
.track .metro{height:30px;width:349px;max-width:100%}
@media (min-width:561px){@container (max-width:348.5px){.track .metro{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px);mask-image:linear-gradient(90deg,transparent,#000 40px)}}}

/* ============ KARTY AKTUALIT (v2) ============ */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.card{display:flex;flex-direction:column;color:#fff;background:var(--navy);border-bottom:4px solid var(--orange);transition:transform .15s,box-shadow .15s}
@media (hover:hover){.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}}
.card .img{aspect-ratio:4/3;overflow:hidden;background:#cfd3e3}
@media (min-width:2200px){.card .img{aspect-ratio:16/9}}
@media (min-width:2900px){.card .img{aspect-ratio:2/1}}
.card .img img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
@media (hover:hover){.card:hover .img img{transform:scale(1.04)}}
.card .body{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.card time{font-size:13px;font-weight:500;letter-spacing:.3px;color:#AFC3D8}
.card h3{margin:6px 0 14px;font-size:clamp(18px,1.45vw,21px);font-weight:700;line-height:1.25;letter-spacing:-.1px;text-wrap:balance}
.nw{white-space:nowrap}
@media (min-width:561px){.nwd{white-space:nowrap}}
.card .more{margin-top:auto;font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}
@media (hover:hover){.card:hover .more{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:3px}}
.all-link{display:flex;justify-content:flex-end;margin-top:18px}
.all-link a{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:14.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--navy)}
@media (hover:hover){.all-link a:hover{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:4px}}

/* ============ PÁS S ROBŮTKEM ============ */
.robot-band{margin-top:40px;background:var(--navy) var(--bgicons) center/cover;color:#fff;border-radius:6px;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,440px) minmax(0,1fr);grid-template-areas:"l txt r";align-items:end;column-gap:12px;padding:0 16px;position:relative}
.robot-band .txt{grid-area:txt;align-self:center;text-align:center;padding:44px 0;position:relative;z-index:1}
.robot-band .tag{display:inline-block;background:#fff;color:var(--navy);font-weight:900;font-size:15px;padding:4px 10px;margin-bottom:18px}
.robot-band h2{margin:0 0 12px;font-size:40px;font-weight:900;line-height:1.05}
.robot-band p{margin:0 auto 24px;font-size:18px;color:#D5DFEA;max-width:440px}
.robot-band .ctas{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
/* robůtci ve dvou skupinách po stranách textu, stojí kousek nad spodní hranou */
.crew{display:flex;justify-content:center;align-items:flex-end;margin-bottom:26px;min-width:0;container-type:inline-size}
.crew.cl{grid-area:l}.crew.cr{grid-area:r}
.crew img{width:auto;max-width:none;flex-shrink:0;margin:0 2cqw;filter:drop-shadow(0 12px 14px rgba(0,0,0,.4));transition:transform .25s;position:relative}
@media (hover:hover){.crew img:hover{transform:translateY(-6px)}}
/* levá skupina je zrcadlově otočená, aby robůtci z obou stran koukali k textu */
.crew.cl img{transform:scaleX(-1)}
@media (hover:hover){.crew.cl img:hover{transform:scaleX(-1) translateY(-6px)}}
.crew .bike{height:min(29cqw,190px)}.crew .sum{height:min(34cqw,222px)}.crew .mak{height:min(40cqw,260px)}
.crew .main{height:min(35cqw,228px)}.crew .aut{height:min(31cqw,202px)}.crew .win{height:min(27cqw,176px)}
/* užší skupina (menší monitor, tablet): jen dva robůtci, ať nejsou namačkaní */
@container (max-width:400px){
  .crew .bike,.crew .win{display:none}
  .crew .sum{height:44cqw}.crew .mak{height:52cqw}
  .crew .main{height:46cqw}.crew .aut{height:42cqw}
}

/* ============ PARTNEŘI (v2, nová HD loga) ============ */
.partners{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:4px 0 34px}
.plogo{background:#fff;border:1px solid var(--line);border-radius:6px;padding:24px 26px 18px;display:flex;flex-direction:column;justify-content:space-between;gap:16px;min-width:0}
@media (hover:hover){.plogo:hover{border-color:#B9C3D1;box-shadow:0 10px 24px -16px rgba(0,43,79,.4)}}
.plogo img{height:64px;width:auto;max-width:100%;object-fit:contain;object-position:left center}
.plogo span{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}

/* ============ PATIČKA (v1) ============ */
footer{background:var(--navy);color:#D5DFEA;padding:56px 0 0;margin-top:30px}
.fgrid{display:grid;grid-template-columns:auto minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:36px}
.fgrid>div{min-width:0}
.fgrid>div:first-child{min-width:auto}
footer h4{color:#fff;margin:0 0 14px;font-size:14px;font-weight:700;letter-spacing:1px;text-transform:uppercase}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
@media (hover:hover){footer a:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:3px}}
.flogo{background:#fff;border-radius:6px;padding:12px 16px;display:inline-flex;align-items:center;gap:16px;margin-bottom:18px}
.flogo img{width:auto;max-width:none;flex-shrink:0}
.flogo .spsd{height:33px}
.flogo .dpp{height:41px}
.flogo .sep{width:1px;height:32px;background:var(--line)}
.finfo{margin:0;line-height:1.6}
.faddr{display:grid;grid-template-columns:32px minmax(0,1fr);gap:0 12px;align-items:start}
.faddr .cgt{align-items:stretch}
.fmap{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-top:8px;font-weight:700;color:#fff}
.fsh{display:none}
.finfo small{display:block;color:#9FB3C8;font-size:14px;margin-top:6px}
.social{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap}
.social a{width:40px;height:40px;border-radius:6px;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff}
@media (hover:hover){.social a:hover{background:rgba(255,255,255,.18)}}
.social svg,.social img{width:18px;height:18px}
.social a[aria-label="YouTube"] svg{width:20px}
.fbottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.14);margin-top:44px;padding:18px 0 22px;font-size:14px;color:#9FB3C8}
.fbottom nav{display:flex;gap:20px;flex-wrap:wrap}
.fbottom nav .nl{display:none}
/* kontakt: ikona + kdo to je + telefon / e-mail */
.cg{display:grid;grid-template-columns:32px minmax(0,1fr);gap:0 12px;align-items:start;margin-bottom:14px}
.cgi{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff}
.cgi svg{width:15px;height:15px}
.cgt{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.cgl{font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#9FB3C8;line-height:1.3;margin:1px 0 3px}
.cgt a{color:#fff;font-size:15.5px;line-height:1.55;overflow-wrap:anywhere}
/* skupiny odkazů: na PC obyčejný nadpis, na mobilu rozbalovací */
.fh{all:unset;display:block;cursor:default}
.fh .cv{display:none}
.fbody{display:block}
footer a.more{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:#fff;margin-top:4px}

/* ============ COOKIE (v2) ============ */
.cookie{position:fixed;left:20px;bottom:20px;z-index:80;width:min(420px,calc(100vw - 32px));background:#fff;border-radius:6px;box-shadow:0 18px 44px -14px rgba(0,43,79,.5);padding:18px 20px 16px}
.ck-head{display:flex;align-items:center;gap:10px;margin-bottom:6px;color:var(--navy);font-size:16px}
.cookie p{margin:0 0 14px;font-size:14px;line-height:1.55;color:var(--muted)}
.cookie p a{color:var(--navy);text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:3px}
.cookie .btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cookie .btns button{font:inherit;font-size:14px;font-weight:700;padding:10px 12px;border-radius:4px;cursor:pointer;border:1.5px solid var(--navy);background:var(--navy);color:#fff}
@media (hover:hover){.cookie .btns button:hover{background:var(--navy-2)}}
.ck-set{display:block;margin:10px auto 0;background:none;border:0;padding:2px;font:inherit;font-size:13.5px;color:var(--navy);text-decoration:underline;cursor:pointer}
.cookie[hidden]{display:none}

/* ============ MOBILNÍ MENU (v1) ============ */
.dback{position:fixed;inset:0;z-index:89;background:rgba(0,43,79,.45);opacity:0;visibility:hidden;transition:.25s}
.dback.open{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);z-index:90;background:#E9EDF2;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;transform:translateX(100%);visibility:hidden;transition:transform .28s ease,visibility .28s;box-shadow:-20px 0 40px -20px rgba(0,0,0,.35)}
.drawer.open{transform:none;visibility:visible}
body.lock{overflow:hidden}
.dtop{position:sticky;top:0;z-index:2;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:64px;padding:0 16px;border-bottom:1px solid var(--line)}
.dtop .dtitle{font-size:20px;font-weight:700;color:var(--navy);letter-spacing:.2px}
.dclose{display:flex;flex-direction:column;align-items:center;gap:1px;border:0;background:none;color:var(--navy);cursor:pointer;font:inherit;font-size:10.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;padding:4px 2px;line-height:1}
.dclose svg{width:28px;height:28px}
.dblk{background:#fff;margin-top:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dblk.first{margin-top:0;border-top:0}
.dsec{padding:16px}
.dh{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--navy)}
.dh::before{content:"";width:4px;height:16px;border-radius:2px;background:var(--orange)}
.dblk>.dh{margin:0;padding:16px 16px 12px}
.dblk.dsec>.dh{padding:0;margin-bottom:12px}
.dquick{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dquick a{display:flex;align-items:center;gap:10px;min-height:52px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--navy);font-weight:700;font-size:15px;line-height:1.2}
.dquick a:active{background:var(--navy-50)}
.dquick .ico{height:18px;width:auto;flex-shrink:0;color:var(--navy)}
.dquick .ico.w{height:14px}
.dquick a:last-child:nth-child(odd){grid-column:1/-1}
.dsearch{display:flex;gap:8px}
.dsearch input{flex:1;min-width:0;height:46px;border:1px solid #B9C3D1;border-radius:4px;padding:0 12px;font:inherit;font-size:16px}
.dsearch input:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,43,79,.12)}
.dsearch button{height:46px;padding:0 16px;border:0;border-radius:4px;background:var(--navy);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.dnav{border-top:1px solid var(--line)}
.dnav>:last-child{border-bottom:0}
.dnav details,.dnav>a{border-bottom:1px solid var(--line)}
.dnav summary,.dnav>a{display:flex;justify-content:space-between;align-items:center;min-height:54px;padding:0 16px;font-weight:700;font-size:16px;letter-spacing:.3px;text-transform:uppercase;color:var(--navy);cursor:pointer;list-style:none}
.dnav summary::-webkit-details-marker{display:none}
.dnav .cv{width:20px;height:20px;transition:transform .2s;color:var(--muted)}
.dnav summary{transition:background .2s}
.dnav details[open] summary{background:var(--bg)}
.dnav details[open] .cv{transform:rotate(180deg);color:var(--navy)}
.dnav details.closing .cv{transform:none;color:var(--muted)}
.dnav details{position:relative}
/* silnější čára pod rozbalenou položkou se objeví až po dokončení animace (při zavírání zmizí hned) */
.dnav .dline{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--navy);opacity:0;pointer-events:none}
.dnav details.opened .dline{opacity:1;transition:opacity .18s}
.dnav .sub{background:var(--bg);overflow:hidden;transition:height .28s ease}
.dnav .sin{padding:0 16px 14px}
.dnav .sub h5{margin:16px 0 2px;padding-bottom:6px;border-bottom:2px solid var(--navy);font-size:12px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;color:var(--navy)}
.dnav .sub .dkey a{font-weight:500;color:var(--navy)}
.dnav .sub a{display:block;padding:9px 0;font-size:16px;color:var(--ink);border-bottom:1px solid var(--line)}
.dnav .sub a:last-child{border-bottom:0}
.dnav .sub a.all{font-weight:700;color:var(--navy);display:flex;align-items:center;gap:8px;border-bottom:0;padding-top:12px}
.dserv{padding:0 16px 8px}
.dserv a{display:flex;align-items:center;gap:12px;padding:10px 0;color:var(--navy);font-weight:500}
.dserv .ico{height:16px;width:22px;color:var(--navy)}
.dcontact{margin-top:10px;flex-grow:1;background:var(--navy);color:#D5DFEA;padding:18px 16px 22px;font-size:15px}
.dcontact a{display:flex;align-items:center;gap:10px;color:#fff;padding:6px 0;overflow-wrap:anywhere}
.dcontact .fi{width:16px;height:16px;opacity:.8;flex-shrink:0}
.dcontact .dh{color:#fff;margin-bottom:6px}
.dcontact .lab{margin:14px 0 2px;font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#9FB3C8}
.dcontact .adr{margin:4px 0 0;color:#fff;line-height:1.6}
.dcontact small{display:block;color:#9FB3C8;font-size:13px;margin-top:4px}
.dcontact .more{font-weight:700;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.14)}
.dcontact .social{margin-top:14px}
.dsoc{display:flex;flex-direction:column;justify-content:center;padding:22px 16px calc(22px + env(safe-area-inset-bottom))}
.dsoc .dh{margin-bottom:0}
.dcontact .social a{padding:0;justify-content:center}

/* ============ POZNÁMKY ============ */
.nbtn{position:fixed;right:16px;bottom:20px;z-index:70;border:0;border-radius:4px;background:#FFB020;color:#1B1F2A;font:inherit;font-weight:700;font-size:13.5px;padding:10px 14px;cursor:pointer;box-shadow:0 6px 16px -6px rgba(0,0,0,.4)}
.npanel{position:fixed;top:0;right:0;bottom:0;width:min(420px,92vw);z-index:95;background:#fff;border-left:1px solid var(--line);padding:22px 22px 60px;overflow:auto;transform:translateX(100%);visibility:hidden;transition:transform .2s,visibility .2s}
body.notes .npanel{transform:none;visibility:visible}
.npanel h3{margin:0 0 4px;color:var(--navy);font-size:20px}
.npanel p.s{margin:0 0 14px;color:var(--muted);font-size:14px}
.npanel h4{margin:18px 0 6px;font-size:13px;letter-spacing:.8px;text-transform:uppercase;color:var(--muted)}
.npanel ul{margin:0;padding-left:18px;font-size:14.5px}
.npanel li{margin-bottom:8px}
.npanel li b{color:var(--navy)}
.npanel .x{position:absolute;top:14px;right:14px;border:0;background:none;font-size:22px;cursor:pointer;color:var(--muted)}

/* ============ RESPONZIVITA ============ */
@media (max-width:1400px){.search-btn{padding-left:16px}}
@media (max-width:1240px){
  .search-btn .txt{display:none}
  .mainnav>.item>a{padding-left:10px;padding-right:10px;font-size:14px}
}
@media (max-width:1320px){
  .fgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}
  .fgrid>div:first-child{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;gap:4px 32px;align-items:start;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.14)}
  .fgrid>div:first-child .flogo{grid-row:1/3;margin-bottom:0}
  .fgrid>div:first-child .social{margin-top:14px;padding-left:44px}
}
@media (max-width:1300px){
  .robot-band{grid-template-columns:minmax(0,1fr) 340px minmax(0,1fr)}
  .robot-band h2{font-size:34px}
  .brand{gap:12px}.brand .spsd{height:32px}.brand .dpp{height:39.2px}.brand .sep{height:30px}
}
@media (max-width:1180px){
  .brand{gap:10px}.brand .spsd{height:27px}.brand .dpp{height:33px}.brand .sep{height:26px}
  .mainnav>.item>a{padding-left:8px;padding-right:8px;font-size:13.5px}
  .search-btn{margin-left:2px;padding-left:12px}
}
@media (max-width:1080px){
  .pslide .d{display:none}
  .kt.xt{display:none}
  .kmos{--s:clamp(12px,2vw,22px);--gp:4px}
  .kt .lab{font-size:12px}
  .robot-band{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"txt txt" "l r";column-gap:0;padding:0 12px}
  .robot-band .txt{padding:34px 12px 8px}
  .robot-band h2{font-size:32px}
  .crew{margin-bottom:18px}
  .util,.mainnav,.hdr-actions .search-btn{display:none}
  .burger{display:flex}
  .hdr-actions{margin-left:auto}
  .hdr .wrap{min-height:64px;gap:10px}
  .brand{gap:10px;min-width:0}
  .brand .spsd{height:clamp(21px,6.6vw,30px)}
  .brand .dpp{height:clamp(25.7px,8.1vw,36.8px)}
  .brand .sep{height:clamp(20px,6vw,28px)}
}
@media (max-width:1000px){
  .mainnav>.item>a{padding-left:7px;padding-right:7px;font-size:13.5px}
  .search-btn{margin-left:2px;padding-left:12px}
}
@media (max-width:1080px){
  .cards{grid-template-columns:repeat(2,1fr)}

}
@media (max-width:900px){
  .wrap{padding:0 16px}
  .car-btn{width:56px;padding:0 10px}
  .car-btn .ci{width:36px;height:36px}

  .partners{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .fgrid{grid-template-columns:minmax(0,1fr);gap:0}
  .fgrid>div{min-width:0}
  .flogo{display:flex;justify-content:center;gap:14px;padding:12px;width:100%}
  .flogo .spsd{height:clamp(22px,6.8vw,28px)}
  .flogo .dpp{height:clamp(27px,8.3vw,34.3px)}
  .flogo .sep{height:24px}
  .fgrid>div:first-child{display:block;border-bottom:0;padding-bottom:28px}
  .fgrid>div:first-child .flogo{margin-bottom:24px}
  /* horní část patičky na mobilu (v25): sídlo jako řádek s ikonou, nad sítěmi nadpis – stejně jako kontakty */
  .faddr{grid-template-columns:40px minmax(0,1fr);gap:0 14px}
  .faddr .cgi{width:40px;height:40px;margin-top:2px}
  .faddr .cgi svg{width:16px;height:16px}
  .faddr .cgl{margin:0 0 3px}
  .finfo{line-height:1.55;font-size:16px;color:#fff}
  .finfo .acm{display:none}
  .finfo .anl{display:block}
  .finfo small{margin-top:8px}
  .fmap{margin-top:12px}
  .fsh{display:flex;align-items:center;gap:10px;margin:26px 0 12px}
  .fsh::before{content:"";width:4px;height:16px;border-radius:2px;background:var(--orange);flex-shrink:0}
  .fgrid>div:first-child .social{margin-top:0;padding-left:0}
  /* === patička na mobilu (v24) === */
  .fcontact{border-top:1px solid rgba(255,255,255,.14);padding:24px 0 26px}
  .fcontact h4,.fh{display:flex;align-items:center;gap:10px}
  .fcontact h4::before,.fh::before{content:"";width:4px;height:16px;border-radius:2px;background:var(--orange);flex-shrink:0}
  .fcontact h4{margin-bottom:8px}
  .cg{grid-template-columns:40px minmax(0,1fr);gap:0 14px;margin:0;padding:12px 0;border-top:1px solid rgba(255,255,255,.08)}
  .cg:first-of-type{border-top:0}
  .cgi{width:40px;height:40px;margin-top:2px}
  .cgi svg{width:18px;height:18px}
  .cgl{margin:0 0 1px}
  .cgt a{display:block;font-size:17px;line-height:1.35;padding:5px 0}
  footer .fcontact a.more{display:flex;justify-content:center;width:100%;margin-top:12px;padding:13px 16px;border:1.5px solid rgba(255,255,255,.35);border-radius:4px}
  .facc{border-top:1px solid rgba(255,255,255,.14)}
  .facc h4{margin:0}
  .fh{width:100%;min-height:58px;cursor:pointer;box-sizing:border-box}
  .fh .cv{display:block;margin-left:auto;width:20px;height:20px;color:#9FB3C8;transition:transform .25s}
  .facc.open .fh .cv{transform:rotate(180deg);color:#fff}
  .fh:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
  .fbody{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
  .facc.open .fbody{grid-template-rows:1fr}
  .fbody>ul{overflow:hidden;min-height:0;gap:0;visibility:hidden;transition:visibility 0s .3s}
  .facc.open .fbody>ul{visibility:visible;transition-delay:0s}
  .fbody li:last-child{padding-bottom:10px}
  .fbody li a{display:flex;justify-content:space-between;align-items:center;padding:13px 0;font-size:16px;color:#E4EBF3;border-top:1px solid rgba(255,255,255,.08)}
  .fbody li a::after{content:"";flex-shrink:0;width:7px;height:7px;border:solid #7F97B0;border-width:2px 2px 0 0;transform:rotate(45deg);margin-right:5px}
  .fbottom{flex-direction:column;align-items:center;text-align:center;gap:8px;margin-top:0;padding:20px 0 calc(22px + env(safe-area-inset-bottom))}
  .fbottom nav{order:-1;display:flex;flex-wrap:wrap;justify-content:center;gap:0}
  .fbottom nav a{display:inline-flex;align-items:center;padding:5px 0;font-size:14.5px;color:#C9D6E4}
  .fbottom nav a:not(:last-child)::after{content:"";width:3px;height:3px;border-radius:50%;background:#5E7A96;margin:0 11px}
  .fbottom nav a.re::after{display:none}
  .fbottom nav .nl{display:block;flex-basis:100%;height:0}
  .fbottom>span{font-size:13px;color:#8FA6BE}
  .nbtn{transition:opacity .2s}
  body.foot-end .nbtn{opacity:0;pointer-events:none}
}
@media (max-width:760px){
  .car-btn{display:none}
  .slides{aspect-ratio:4/3}
  .strack img{object-position:var(--mpos,var(--pos,50% 50%))}
  .strack .bslide.mcrop img.fg{object-fit:cover}
  .pslide figcaption{left:0;bottom:0;max-width:calc(100% - 24px);padding:10px 16px 11px;gap:5px;border-bottom-width:3px;box-shadow:none}
  .pslide .d,.pslide .cta{display:none}
  .pslide .k{font-size:11.5px;border-bottom-width:2px;padding-bottom:2px}
  .zbadge{right:10px;bottom:10px;font-size:13px;padding:7px 10px}
  .kt:not(.m){display:none}
  .kmos{--s:14px;--gp:4px}
  .kt .lab{display:none}
  .kslide figcaption{display:flex}
  .pslide strong{font-size:clamp(16px,4.7vw,22px);line-height:1.15}
  .cookie{left:0;right:0;bottom:0;width:100%;border-radius:8px 8px 0 0;padding:18px 16px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -10px 34px -10px rgba(0,43,79,.45)}
  .cookie .btns button{min-height:48px;font-size:15px}
  .cookie p{font-size:15px}
  body.ck-open .nbtn{bottom:auto;top:12px}
}
@media (max-width:560px){
  .robot-band{grid-template-columns:minmax(0,1fr);grid-template-areas:"txt" "stage";padding:0}
  .robot-band .txt{padding:30px 20px 0;text-align:left}
  .robot-band p{margin-left:0}
  /* tři robůtci souměrně: prostřední větší, krajní dva stejně velcí a stejně daleko od středu,
     pozice podle středu těla (ne podle obrázku – tyče a deštník by střed posunuly) */
  .crew,.crew.cl,.crew.cr{grid-area:stage;position:relative;display:block;height:var(--stage);margin:20px 0 0;container-type:normal}
  .robot-band{--stage:45vw;--side:33vw;--mid:42vw}
  .crew img{position:absolute;bottom:0;margin:0;width:auto;max-width:none;transition:none}
  .crew .bike,.crew .aut,.crew .win{display:none}
  .robot-band .crew.cl .sum,.robot-band .crew.cl .sum:hover{height:var(--side);left:23%;transform:translateX(-66%) scaleX(-1)}
  .robot-band .crew.cl .mak,.robot-band .crew.cl .mak:hover{height:var(--mid);left:50%;transform:translateX(-41%);z-index:2}
  .robot-band .crew.cr .main,.robot-band .crew.cr .main:hover{height:var(--side);left:77%;transform:translateX(-39%)}
  .robot-band h2{font-size:27px}
  .robot-band p{font-size:16.5px}
  .robot-band .ctas{flex-direction:column}
  .robot-band .ctas .btn{justify-content:center;padding:13px 20px}
  .cards{grid-template-columns:1fr}
  .sres li a{grid-template-columns:70px 1fr auto;gap:0 10px;padding:10px 4px;align-items:start}
  .sres .typ{font-size:10.5px;padding:3px 5px;margin-top:3px;letter-spacing:.5px}
  .sres .tt{font-size:16px}
  .sres .go-i{align-self:center}
  .searchbar button.x{display:none}
  .card{display:grid;grid-template-columns:120px 1fr}
  .card .img{aspect-ratio:auto;height:100%}
  .card h3{font-size:17px;margin-bottom:8px}
  .sec-h h2{font-size:20px}
  .track{gap:7px}
  .track .tram{height:23px}.track .bus{height:20px}.track .metro{height:20px;width:233px}
  @container (max-width:232.5px){.track .metro{-webkit-mask-image:linear-gradient(90deg,transparent,#000 28px);mask-image:linear-gradient(90deg,transparent,#000 28px)}}
  .cnav{padding-top:12px;gap:12px}.ccount{font-size:12px}.dots{gap:5px}.dots button{width:24px}
  .car-btn{width:44px;padding:0 6px}
  .car-btn .ci{width:30px;height:30px;border-width:1.5px}
  .car-btn svg{width:16px;height:16px}
  .partners{grid-template-columns:1fr}
  .plogo img{height:56px}
  footer{padding-top:36px}
  .flogo{display:flex;justify-content:center;gap:14px;padding:12px;width:100%}
  .flogo .spsd{height:clamp(22px,6.8vw,28px)}
  .flogo .dpp{height:clamp(27px,8.3vw,34.3px)}
  .flogo .sep{height:24px}
  .social{justify-content:space-between;gap:6px}
  .social a{width:auto;flex:1;max-width:52px;height:46px}
  .nbtn{bottom:14px;right:10px;padding:7px 10px}
}

/* ===== podstránka v3 ===== */
/* Škálování: všechno v obsahu je v em. Základ roste plynule se šířkou okna:
   16 px do ~1400 px, 19 px na ~2000 px, 21 px od ~2400 px. */
main.page{font-size:clamp(16px,calc(9px + .5vw),21px);--side:21em}

/* kde jsem: lišta, hlavní menu, mega-menu, mobilní menu */
.mainnav>.item.cur>a{text-decoration-color:var(--orange)}
.util .right a[aria-current="page"]{background:#fff;color:var(--navy)}
.util .right a[aria-current="page"] .ico{opacity:1}
.mega li.here a{position:relative;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:10px}
.mega li.here a::before{content:"";position:absolute;left:-14px;top:6px;bottom:6px;width:3px;border-radius:2px;background:var(--orange)}
.mega .you,.dnav .you{font-size:11.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#fff;background:var(--navy);padding:1px 7px;border-radius:3px}
.dblk a.here{font-weight:700;border-color:var(--navy)!important;box-shadow:inset 3px 0 0 var(--orange);background:var(--navy-50)}

/* záhlaví stránky */
.phead{background:var(--bg);border-bottom:1px solid var(--line)}
.phead .wrap{padding-top:1.1em;padding-bottom:2.4em}
.crumbs ol{list-style:none;margin:0 0 1.6em;padding:0;display:flex;flex-wrap:wrap;gap:.25em 0;font-size:.875em;color:var(--muted)}
.crumbs li+li::before{content:"›";margin:0 .6em;color:#9AA6B5}
.crumbs a{color:var(--navy);text-decoration:underline;text-decoration-color:rgba(0,43,79,.25);text-underline-offset:3px}
.crumbs [aria-current]{color:var(--ink)}
.phead h1{margin:0 0 .35em;font-size:2.4em;font-weight:900;line-height:1.1;letter-spacing:.02em;text-transform:uppercase;color:var(--navy)}
.phead .lead{margin:0 0 1.3em;max-width:44em;font-size:1.125em;line-height:1.6;color:#3A4354}
.phead .ctas{display:flex;align-items:center;gap:.6em 1.5em;flex-wrap:wrap}
main.page .btn{font-size:1em;padding:.7em 1.3em;gap:.6em}
.tlink{display:inline-flex;align-items:center;gap:.5em;font-weight:700;color:var(--navy);text-decoration:underline;text-decoration-color:rgba(0,43,79,.3);text-underline-offset:4px}
.tlink .i{width:1.15em;height:1.15em}
@media (hover:hover){.tlink:hover{text-decoration-color:var(--orange)}}

/* rozvržení: přes celou šířku, boční sloupec 21em */
.pgrid{display:grid;grid-template-columns:minmax(0,1fr) var(--side);gap:3.5em;align-items:start;padding-top:2.2em;padding-bottom:4em}
.pmain{min-width:0}
.psec{margin-top:3em}
main.page .sec-h{margin-bottom:1.25em}
main.page .sec-h h2{font-size:1.5em}
main.page .track{min-height:0}
main.page p{line-height:1.6}

/* upozornění */
.notice{display:flex;gap:.75em;align-items:flex-start;background:var(--navy-50);border-left:3px solid var(--navy);border-radius:0 4px 4px 0;padding:.9em 1.1em}
.notice .i{width:1.25em;height:1.25em;flex-shrink:0;color:var(--navy);margin-top:.15em}
.notice p{margin:0}

/* kurzy: řádky */
.courses{border-top:1px solid var(--line)}
.course{display:grid;grid-template-columns:minmax(13em,20em) minmax(0,1fr);gap:.5em 2.5em;padding:1.3em 0;border-bottom:1px solid var(--line)}
.cinfo{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15em .7em}
.course h3{margin:0;font-size:1.2em;font-weight:700;line-height:1.3;color:var(--navy)}
.cmeta{margin:0;font-weight:700;color:var(--ink);white-space:nowrap}
.cmeta span{font-weight:400;color:var(--muted)}
.cmeta span::before{content:" · "}
.cbody p{margin:0 0 .35em}
.codes{list-style:none;margin:0;padding:0;display:grid;gap:.3em}
.codes b{color:var(--navy);white-space:nowrap}
.cnorm{margin:.6em 0 0!important;font-size:.875em;color:var(--muted)}

/* soubor (ceník) */
.file{display:flex;align-items:center;gap:1em;margin-top:1.4em;background:#fff;border:1px solid var(--line);border-radius:6px;padding:.9em 1.1em}
.file .fi{width:2.75em;height:2.75em;flex-shrink:0;display:grid;place-items:center;background:var(--navy-50);border-radius:6px;color:var(--navy)}
.file .fi .i{width:1.5em;height:1.5em}
.file .ft{flex:1;min-width:0;display:grid;gap:.1em}
.file .ft b{color:var(--navy);font-size:1.05em}
.file .ft>span{color:var(--muted);font-size:.875em}
.file .fd{display:inline-flex;align-items:center;gap:.4em;font-weight:700;font-size:.9em;text-transform:uppercase;letter-spacing:.3px;color:var(--navy);white-space:nowrap}
.file .arr,.mlink .arr,main.page .btn .arr{width:1em;height:1em;color:var(--orange)}
@media (hover:hover){.file:hover{border-color:#B9C3D1}}

/* přihlášky */
.ptext{margin:0 0 .9em;max-width:46em}
.forms{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--line);border-radius:6px}
.forms li{display:flex;align-items:center;justify-content:space-between;gap:1em;padding:.75em 1.1em;border-top:1px solid var(--line)}
.forms li:first-child{border-top:0}
.forms .fn{font-weight:500}
.fbtn{flex-shrink:0;display:inline-flex;align-items:center;gap:.5em;border:1.5px solid var(--navy);border-radius:999px;padding:.45em .9em;font-weight:700;font-size:.875em;color:var(--navy);white-space:nowrap}
.fbtn .i{width:1.1em;height:1.1em}
@media (hover:hover){.fbtn:hover{background:var(--navy);color:#fff}}

/* pro žáky SPŠD: zvýrazněný modrý blok (jako pás s robůtky na homepage, jen menší) */
.stud{position:relative;overflow:hidden;margin-top:3.2em;background:var(--navy) var(--bgicons) center/cover;color:#fff;border-radius:6px;padding:2em 2.2em 2.2em}
.stud .ssym{position:absolute;right:1.6em;top:1.6em;width:5.5em;height:auto;opacity:.95}
.stud .tag{display:inline-block;background:#fff;color:var(--navy);font-weight:900;font-size:.85em;padding:.2em .6em;margin-bottom:.8em}
.stud h2{margin:0 0 1em;font-size:1.75em;font-weight:900;line-height:1.1;text-transform:uppercase;letter-spacing:.02em}
.scols{display:grid;grid-template-columns:1fr 1fr;gap:1.2em 2.5em;max-width:62em}
.scols>div{border-top:1px solid rgba(255,255,255,.22);padding-top:.9em}
.stud h3{margin:0 0 .35em;font-size:1.1em;color:#fff}
.stud p{margin:0;color:#D5DFEA}
.stud .btn.light{margin-top:1.6em;background:#fff;color:var(--navy);border-color:#fff}
@media (hover:hover){.stud .btn.light:hover{background:var(--navy-50)}}

/* dílna – ukázka */
.gal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75em}
.gph{margin:0;aspect-ratio:4/3;display:grid;place-content:center;justify-items:center;gap:.5em;text-align:center;border:1px dashed #B9C3D1;border-radius:6px;background:var(--bg);color:var(--muted);font-size:.875em;line-height:1.35;padding:.6em}
.gph .i{width:1.8em;height:1.8em;color:#9AA6B5}

/* boční sloupec – lepí se pod hlavičkou */
.pside{position:sticky;top:calc(var(--hdr-h,80px) + 1.25em);display:grid;gap:1.25em;min-width:0}
.sbox{container-type:inline-size;background:#fff;border:1px solid var(--line);border-radius:6px;padding:1.25em 1.4em}
.sbox h2{margin:0 0 .9em;font-size:.875em;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--navy)}
.cname{margin:0 0 .8em;display:flex;flex-wrap:wrap;align-items:baseline;gap:.1em .6em}
.cname>span{color:var(--muted);font-size:.94em}
.clist{margin:0;display:grid;border-top:1px solid var(--line)}
.clist>div{display:grid;gap:.1em;padding:.6em 0;border-bottom:1px solid var(--line)}
.clist>div:last-child{border-bottom:0;padding-bottom:0}
.clist dt{font-size:.85em;color:var(--muted)}
.clist dd{margin:0;overflow-wrap:anywhere}
.clist a{color:var(--navy);font-weight:500}
.place{padding:0;overflow:hidden}
.place img{width:100%;height:auto;aspect-ratio:437/309;object-fit:cover;border-radius:6px 6px 0 0}
.place .pin{padding:1.1em 1.4em 1.25em}
.place .prow{display:grid;gap:.6em}
.place .addr{margin:0}
.mlink{display:inline-flex;align-items:center;gap:.5em;font-weight:700;font-size:.9em;letter-spacing:.3px;text-transform:uppercase;color:var(--navy)}
@media (hover:hover){.mlink:hover{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:4px}}

/* zástupné údaje: normálně vypadají jako hotové, přepínač v poznámkách je zvýrazní */
.ph{display:none;vertical-align:1px;margin-left:4px;background:#FFE08A;color:#5C4400;font:700 11px/1.5 var(--mono);letter-spacing:.3px;text-transform:uppercase;padding:0 6px;border-radius:3px}
body.phshow .ph{display:inline-block}
body.phshow .phv{background:#FFE08A;box-shadow:0 0 0 3px #FFE08A;border-radius:2px}
body.phshow .gph{border-color:#E3B341;background:#FFF8E1}

/* zobrazení bloků WordPressu */
body.wpshow [data-wp]{outline:2px dashed var(--orange);outline-offset:4px;position:relative}
body.wpshow [data-wp]::after{content:attr(data-wp);position:absolute;top:-13px;left:10px;z-index:6;background:var(--orange);color:#fff;font:700 11px/1.7 var(--mono);padding:0 7px;border-radius:3px;white-space:nowrap;pointer-events:none}
body.wpshow .place,body.wpshow .stud{overflow:visible}
.npanel .wpt{margin:4px 8px 14px 0}

/* breakpointy */
@media (max-width:1180px){.course{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}}
@media (max-width:1024px){
  .pgrid{grid-template-columns:minmax(0,1fr);gap:2.5em}
  .pside{position:static;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
}
@media (max-width:760px){
  .phead .wrap{padding-bottom:1.8em}
  .crumbs ol{margin-bottom:1.1em}
  .phead h1{font-size:2em}
  .phead .lead{font-size:1.05em}
  .course{grid-template-columns:minmax(0,1fr);gap:.6em;padding:1.1em 0}
  .scols{grid-template-columns:minmax(0,1fr)}
  .stud{padding:1.6em 1.25em 1.6em}
  .stud .ssym{width:3.6em;top:1.3em;right:1.1em}
  .gal{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pside{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .phead .ctas .btn{flex:1 1 100%;justify-content:center}
  .forms li{flex-direction:column;align-items:flex-start;gap:.5em}
  .file{flex-wrap:wrap;gap:.75em .9em}
  .file .fd{flex-basis:100%;padding-left:3.65em}
  .stud .btn.light{width:100%;justify-content:center}
}
@media (max-width:420px){
  .crumbs li:nth-child(2),.crumbs li:nth-child(3){display:none}
  .crumbs li:nth-child(4)::before{content:"› … ›"}
  .gal{gap:.5em}
}

/* ===== patička podstránky (od 761 px; mobil beze změny) =====
   Logo, sídlo a sítě drží pohromadě v prvním sloupci. Písmo roste se šířkou jako obsah. */
@media (min-width:761px){
  footer{font-size:clamp(15px,calc(8.5px + .5vw),20px);padding-top:3em}
  .fgrid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2.6em 3em}
  .fgrid>div:first-child{grid-column:auto;display:block;padding:0;border:0;min-width:0;container-type:inline-size}
  .fgrid>div:first-child .flogo{display:inline-flex;margin:0 0 1.5em;gap:1em;padding:.75em 1em}
  .flogo .spsd{height:min(2.15em,calc((100cqi - 66px) / 11.3))}
  .flogo .dpp{height:min(2.67em,calc((100cqi - 66px) / 11.3 * 1.242))}
  .flogo .sep{height:2em}
  .faddr{display:block}
  .faddr .cgi,.fcontact .cgi{display:none}
  .faddr .cgl{display:block;color:#fff;margin:0 0 .8em;font-size:.875em;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
  footer h4{font-size:.875em;margin:0 0 .9em;letter-spacing:.07em}
  .finfo{font-size:1em;line-height:1.6}
  .finfo small{font-size:.875em}
  .fmap{margin-top:.6em}
  .fgrid>div:first-child .social{margin:1.4em 0 0;padding:0;gap:.5em}
  .fgrid>div:first-child .social a{width:2.6em;height:2.6em}
  .social svg,.social img{width:1.15em;height:1.15em}
  .cg{display:block;margin:0 0 .8em}
  .fcontact .cgl{font-size:.85em;font-weight:400;letter-spacing:0;text-transform:none;color:#9FB3C8;margin:0}
  .cgt a{font-size:1em;line-height:1.5}
  footer a.more{margin-top:.4em}
  footer ul{gap:.6em}
  footer li a{font-size:1em}
  .fbottom{margin-top:3em;font-size:.875em}
}
@media (min-width:1180px){
  .fgrid{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr))}
}

/* široký box (tablet, mobil na šířku): popisek vlevo a údaj vpravo, mapa vedle adresy */
@container (min-width:26em){
  .clist>div{grid-template-columns:9em minmax(0,1fr);gap:1em;align-items:baseline}
  .place .prow{display:flex;align-items:center;justify-content:space-between;gap:.6em 1.5em}
}

/* patička v37: pozadí s ikonami školy, nadpis nad sítěmi */
footer{background:linear-gradient(rgba(0,43,79,.55),rgba(0,43,79,.55)),var(--navy) var(--bgicons) center top/cover}
@media (min-width:761px){
  .fgrid>div:first-child .fsh{display:block;margin:1.6em 0 0;font-size:.875em;letter-spacing:.07em}
  .fgrid>div:first-child .fsh+.social{margin-top:.8em}
}
html{overflow-anchor:none}

/* ===== Obsah stránky z WPBakery (třídy spsd-* v poli „Extra class name“) ===== */
.spsd-content{--gx:clamp(24px,calc(5vw - 48px),72px)}
.spsd-content .vc_row,.spsd-content .wpb_column,.spsd-content .vc_column-inner,.spsd-content .wpb_wrapper,.spsd-content .wpb_content_element{margin:0;padding:0;float:none;width:auto;min-height:0;box-shadow:none}
.spsd-content .vc_row::before,.spsd-content .vc_row::after{content:none}
.spsd-content p:empty{display:none}
.spsd-content .wpb_text_column>.wpb_wrapper>:first-child{margin-top:0}
.spsd-content .wpb_text_column>.wpb_wrapper>:last-child{margin-bottom:0}
.spsd-content [id]{scroll-margin-top:calc(var(--hdr-h,80px) + 1em)}
.spsd-content a{color:var(--navy)}

/* drobečky (vypisuje snippet) + záhlaví stránky */
.spsd-top{background:var(--bg);display:flow-root}
.spsd-top .wrap{padding-top:1.1em}
.spsd-top .crumbs ol{margin-bottom:1.6em}
.spsd-content .spsd-phead{background:var(--bg);border-bottom:1px solid var(--line);padding:0 var(--gx) 2.4em}
.spsd-content .spsd-phead>.wpb_column{max-width:calc(var(--wrap) - 2 * var(--gx));margin:0 auto}
.spsd-phead h1{margin:0 0 .35em;font-size:2.4em;font-weight:900;line-height:1.1;letter-spacing:.02em;text-transform:uppercase;color:var(--navy)}
.spsd-phead p{margin:0 0 1.3em;max-width:44em;font-size:1.125em;line-height:1.6;color:#3A4354}
.spsd-phead p.spsd-ctas{display:flex;align-items:center;gap:.6em 1.5em;flex-wrap:wrap;max-width:none;margin:0;font-size:1em;color:var(--ink)}
.spsd-btn,.spsd-content .spsd-btn{display:inline-flex;align-items:center;gap:.6em;font-weight:700;font-size:1em;line-height:1.5;border-radius:999px;padding:.7em 1.3em;border:2px solid var(--navy);background:var(--navy);color:#fff;text-decoration:none}
@media (hover:hover){.spsd-content .spsd-btn:hover{background:var(--navy-2);border-color:var(--navy-2);color:#fff}}
.spsd-tlink{display:inline-flex;align-items:center;gap:.5em;font-weight:700;color:var(--navy);text-decoration:underline;text-decoration-color:rgba(0,43,79,.3);text-underline-offset:4px}
.spsd-tlink::before{content:"";width:1.15em;height:1.15em;flex-shrink:0;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z%22/%3E%3Cpath d=%22M14 3v5h5M9 13h6M9 17h4%22/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z%22/%3E%3Cpath d=%22M14 3v5h5M9 13h6M9 17h4%22/%3E%3C/svg%3E") center/contain no-repeat}
@media (hover:hover){.spsd-tlink:hover{text-decoration-color:var(--orange)}}

/* rozvržení: hlavní sloupec + boční sloupec 21em */
.spsd-content .spsd-pgrid{display:grid;grid-template-columns:minmax(0,1fr) var(--side);gap:3.5em;align-items:start;padding:2.2em var(--gx) 4em;max-width:var(--wrap);margin:0 auto}
.spsd-content .spsd-pmain{min-width:0}
.spsd-content .spsd-pside{position:sticky;top:calc(var(--hdr-h,80px) + 1.25em);min-width:0;align-self:start}
.admin-bar .spsd-content .spsd-pside{top:calc(var(--hdr-h,80px) + 1.25em + 32px)}
.spsd-pside>.vc_column-inner>.wpb_wrapper{display:grid;gap:1.25em}
.admin-bar .hdr{top:32px}

/* nadpis sekce s kolejí */
.spsd-content .spsd-sec,.spsd-content .spsd-forms{margin-top:3em}
.spsd-content .spsd-sec{margin-bottom:1.25em}
.spsd-pmain h2{display:flex;align-items:flex-end;gap:18px;margin:0 0 .8333em;font-size:1.5em;font-weight:900;letter-spacing:.5px;text-transform:uppercase;color:var(--navy);line-height:1;white-space:nowrap}
.spsd-pmain h2::after{content:"";flex:1;min-width:0;height:10px;margin-bottom:-6px;background:linear-gradient(var(--navy),var(--navy)) 0 0/100% 3px no-repeat,repeating-linear-gradient(90deg,rgba(0,43,79,.35) 0 3px,transparent 3px 14px) 0 7px/100% 3px no-repeat}
.spsd-pmain p{margin:0 0 .9em;max-width:46em;line-height:1.6}

/* upozornění */
.spsd-content .spsd-notice{display:flex;gap:.75em;align-items:flex-start;background:var(--navy-50);border-left:3px solid var(--navy);border-radius:0 4px 4px 0;padding:.9em 1.1em}
.spsd-notice::before{content:"";flex:0 0 1.25em;height:1.25em;margin-top:.15em;background:var(--navy);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229.5%22/%3E%3Cpath d=%22M12 11v6M12 7.5v.01%22/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229.5%22/%3E%3Cpath d=%22M12 11v6M12 7.5v.01%22/%3E%3C/svg%3E") center/contain no-repeat}
.spsd-notice .wpb_wrapper{flex:1;min-width:0}
.spsd-notice p{margin:0;max-width:none}

/* kurzy: řádky (název + délka vlevo, obsah vpravo) */
.spsd-content .spsd-course{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.3em 0}
.spsd-content .spsd-course+.spsd-course{border-top:0}
.spsd-course>.wpb_wrapper{display:grid;grid-template-columns:minmax(13em,20em) minmax(0,1fr);column-gap:2.5em;row-gap:0;align-items:start}
.spsd-course h3{grid-column:1;grid-row:1/span 30;margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.125em .583em;font-size:1.2em;font-weight:700;line-height:1.3;color:var(--navy)}
.spsd-course h3 span{font-size:.8333em;font-weight:700;color:var(--ink);white-space:nowrap}
.spsd-course h3 small{font-size:1em;font-weight:400;color:var(--muted)}
.spsd-course h3 small::before{content:" · "}
.spsd-course>.wpb_wrapper>:not(h3){grid-column:2;margin:0 0 .35em;max-width:none}
.spsd-course>.wpb_wrapper>:last-child{margin-bottom:0}
.spsd-course ul{list-style:none;padding:0;display:grid;gap:.3em}
.spsd-course li strong,.spsd-course li b{color:var(--navy);white-space:nowrap}
.spsd-course>.wpb_wrapper>p.spsd-norm{margin:.6em 0 0;font-size:.875em;color:var(--muted)}

/* soubor (ceník) */
.spsd-content .spsd-file{margin-top:1.4em}
.spsd-file p{margin:0;max-width:none}
.spsd-content .spsd-file a{display:grid;grid-template-columns:2.75em minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:1em;row-gap:.1em;align-items:center;background:#fff;border:1px solid var(--line);border-radius:6px;padding:.9em 1.1em;color:var(--ink);text-decoration:none}
.spsd-file a::before{content:"";grid-column:1;grid-row:1/3;width:2.75em;height:2.75em;border-radius:6px;background:var(--navy-50) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23002B4F%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z%22/%3E%3Cpath d=%22M14 3v5h5M9 13h6M9 17h4%22/%3E%3C/svg%3E") center/1.5em no-repeat}
.spsd-file a strong{grid-column:2;grid-row:1;align-self:end;color:var(--navy);font-size:1.05em}
.spsd-file a span{grid-column:2;grid-row:2;align-self:start;color:var(--muted);font-size:.875em}
.spsd-file a::after{content:"Stáhnout";grid-column:3;grid-row:1/3;padding-right:1.45em;font-weight:700;font-size:.9em;text-transform:uppercase;letter-spacing:.3px;color:var(--navy);white-space:nowrap;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23EB5D43%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m9 6 6 6-6 6%22/%3E%3C/svg%3E") right center/1.1em no-repeat}
@media (hover:hover){.spsd-content .spsd-file a:hover{border-color:#B9C3D1}}

/* přihlášky */
.spsd-forms ul{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--line);border-radius:6px}
.spsd-forms li{display:flex;align-items:center;justify-content:space-between;gap:1em;padding:.75em 1.1em;border-top:1px solid var(--line)}
.spsd-forms li:first-child{border-top:0}
.spsd-forms li strong{font-weight:500}
.spsd-forms li em{flex-shrink:0;font-style:normal;font-size:.875em;color:var(--muted);white-space:nowrap}
.spsd-content .spsd-forms li a{flex-shrink:0;display:inline-flex;align-items:center;gap:.5em;border:1.5px solid var(--navy);border-radius:999px;padding:.45em .9em;font-weight:700;font-size:.875em;color:var(--navy);white-space:nowrap;text-decoration:none}
.spsd-forms li a::after{content:"";width:1.1em;height:1.1em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 4h6v6M20 4l-9 9M18 14v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h5%22/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 4h6v6M20 4l-9 9M18 14v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h5%22/%3E%3C/svg%3E") center/contain no-repeat}
@media (hover:hover){.spsd-content .spsd-forms li a:hover{background:var(--navy);color:#fff}}

/* pro žáky SPŠD: modrý blok */
.spsd-content .spsd-stud{position:relative;overflow:hidden;margin-top:3.2em;background:var(--navy) var(--bgicons) center/cover;color:#fff;border-radius:6px;padding:2em 2.2em 2.2em}
.spsd-stud::before{content:"";position:absolute;right:1.6em;top:1.6em;width:5.5em;aspect-ratio:474/328;background:url("?spsd-nv-asset=symbol-neg&v=b4d9fc5a") center/contain no-repeat;opacity:.95}
.spsd-stud .wpb_wrapper{position:relative}
.spsd-pmain .spsd-stud p.spsd-tag{display:table;background:#fff;color:var(--navy);font-weight:900;font-size:.85em;line-height:1.5;padding:.25em .7em;margin:0 0 1.15em;border-radius:2px}
.spsd-pmain .spsd-stud h2{display:block;margin:0 0 1em;font-size:1.75em;font-weight:900;line-height:1.1;text-transform:uppercase;letter-spacing:.02em;color:#fff;white-space:normal}
.spsd-pmain .spsd-stud h2::after{content:none}
.spsd-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.2em 2.5em;max-width:62em}
.spsd-cols>div{border-top:1px solid rgba(255,255,255,.22);padding-top:.9em}
.spsd-stud h3{margin:0 0 .35em;font-size:1.1em;color:#fff}
.spsd-pmain .spsd-stud p{margin:0;color:#D5DFEA}
.spsd-pmain .spsd-stud p.spsd-snote{margin-top:1.6em}
.spsd-content .spsd-stud a{display:inline-flex;align-items:center;gap:.6em;margin-top:1.6em;background:#fff;color:var(--navy);border:2px solid #fff;border-radius:999px;padding:.7em 1.3em;font-weight:700;text-decoration:none}
.spsd-stud a::after{content:"";width:1em;height:1em;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23EB5D43%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m9 6 6 6-6 6%22/%3E%3C/svg%3E") center/contain no-repeat}
@media (hover:hover){.spsd-content .spsd-stud a:hover{background:var(--navy-50)}}

/* boční boxy */
.spsd-content .spsd-box{container-type:inline-size;background:#fff;border:1px solid var(--line);border-radius:6px;padding:1.25em 1.4em}
.spsd-box h2{margin:0 0 .9em;font-size:.875em;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--navy)}
.spsd-box p{margin:0 0 .8em;line-height:1.6}
.spsd-content p.spsd-pending{display:flex;gap:.6em;align-items:flex-start;background:#FDF1EE;border-left:3px solid var(--orange);border-radius:0 4px 4px 0;padding:.75em .9em;margin:0 0 1em;color:var(--ink)}
.spsd-content p.spsd-pending::before{content:"";flex:0 0 1.15em;height:1.15em;margin-top:.2em;background:var(--orange);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229.5%22/%3E%3Cpath d=%22M12 7v5l3 2%22/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229.5%22/%3E%3Cpath d=%22M12 7v5l3 2%22/%3E%3C/svg%3E") center/contain no-repeat}
.spsd-content p.spsd-pending strong{display:block;color:var(--navy)}
.spsd-box a{display:inline-flex;align-items:center;gap:.5em;font-weight:700;font-size:.9em;letter-spacing:.3px;text-transform:uppercase;color:var(--navy);text-decoration:none}
.spsd-box a::after{content:"";width:1em;height:1em;flex-shrink:0;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23EB5D43%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m9 6 6 6-6 6%22/%3E%3C/svg%3E") center/contain no-repeat}
@media (hover:hover){.spsd-box a:hover{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:4px}}
.spsd-content .spsd-place{padding:0 0 1.25em;overflow:hidden}
.spsd-place>.wpb_wrapper{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1.5em;align-items:center}
.spsd-place>.wpb_wrapper>*{grid-column:1/-1;margin-left:1.4em;margin-right:1.4em}
.spsd-place>.wpb_wrapper>p.spsd-photo{margin:0 0 1.1em}
.spsd-place img{display:block;width:100%;height:auto;aspect-ratio:437/309;object-fit:cover;border-radius:6px 6px 0 0}
.spsd-place p.spsd-addr{margin-bottom:0}
.spsd-place p.spsd-map{margin-top:.6em;margin-bottom:0}

/* breakpointy */
@media (max-width:1180px){.spsd-course>.wpb_wrapper{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}}
@media (max-width:1024px){
  .spsd-content .spsd-pgrid{grid-template-columns:minmax(0,1fr);gap:2.5em}
  .spsd-content .spsd-pside{position:static}
  .spsd-pside>.vc_column-inner>.wpb_wrapper{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
}
@media (max-width:900px){.spsd-content{--gx:16px}}
@media (max-width:782px){.admin-bar .hdr{top:46px}}
@media (max-width:760px){
  .spsd-content .spsd-phead{padding-bottom:1.8em}
  .spsd-top .crumbs ol{margin-bottom:1.1em}
  .spsd-phead h1{font-size:2em}
  .spsd-phead p{font-size:1.05em}
  .spsd-content .spsd-course{padding:1.1em 0}
  .spsd-course>.wpb_wrapper{grid-template-columns:minmax(0,1fr)}
  .spsd-course h3{grid-row:auto;margin-bottom:.6em}
  .spsd-course>.wpb_wrapper>:not(h3){grid-column:1}
  .spsd-cols{grid-template-columns:minmax(0,1fr)}
  .spsd-content .spsd-stud{padding:1.6em 1.25em}
  .spsd-stud::before{width:3.6em;top:1.3em;right:1.1em}
  .spsd-pside>.vc_column-inner>.wpb_wrapper{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:600px){.admin-bar .hdr{top:0}}
@media (max-width:560px){
  .spsd-phead p.spsd-ctas .spsd-btn{flex:1 1 100%;justify-content:center}
  .spsd-forms li{flex-direction:column;align-items:flex-start;gap:.5em}
  .spsd-forms li:not(:has(a)){flex-direction:row;align-items:center}
  .spsd-content .spsd-file a{grid-template-columns:2.75em minmax(0,1fr);row-gap:.1em;column-gap:.9em}
  .spsd-file a::after{grid-column:2;grid-row:3;justify-self:start;margin-top:.5em}
  .spsd-content .spsd-stud a{width:100%;justify-content:center}
}

/* široký box: mapa vedle adresy */
@container (min-width:26em){
  .spsd-place p.spsd-addr{grid-column:1;margin-right:0}
  .spsd-place p.spsd-map{grid-column:2;margin-top:0;margin-left:0}
}

/* mobilní menu: aktuální stránka – podbarvení se zaoblením, odsazené od linky, štítek Jste zde */
.dblk .dserv a.here{box-shadow:none;border:0;background:var(--navy-50);border-radius:6px;margin:2px -12px;padding:10px 12px;font-weight:700}
.dblk .dserv a.here::after{content:"Jste zde";margin-left:auto;font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#fff;background:var(--navy);padding:2px 7px;border-radius:3px}
/* hledání: kompaktní panel pod tlačítkem Hledat (ne přes celou šířku) */
@media (min-width:761px){
  .searchbar{--gxh:clamp(24px,calc(5vw - 48px),72px);left:auto;right:max(var(--gxh),calc((100% - var(--wrap)) / 2 + var(--gxh)));width:min(520px,calc(100% - 2 * var(--gxh)));border:1px solid var(--line);border-top:0;border-radius:0 0 8px 8px;box-shadow:0 18px 32px -20px rgba(0,43,79,.45)}
  .searchbar .wrap{max-width:none;padding:12px}
  .searchbar form{gap:8px}
  .searchbar input{height:42px;font-size:15px;padding:0 12px}
  .searchbar button.go{height:42px;padding:0 18px;font-size:15px}
  .searchbar button.x{width:42px;height:42px}
  .searchbar button.x svg{width:18px;height:18px}
}
@media (min-width:761px) and (max-width:900px){.searchbar{--gxh:16px}}
/* ===== prvky SPŠD ve WPBakery (v5): běžné řádky a sloupce bez tříd ===== */
.spsd-content{overflow-x:clip;position:relative;z-index:0}
.spsd-content a.btn:not(.light){color:#fff}
.spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid){display:flex;flex-wrap:wrap;align-items:stretch;gap:2.5em 3.5em;max-width:var(--wrap);margin:0 auto;padding:2.2em var(--gx) 0}
.spsd-content>.vc_row:not(.spsd-phead):not(.spsd-pgrid):first-child,.spsd-content .wpb-content-wrapper>:first-child>.vc_row:not(.spsd-phead):not(.spsd-pgrid),.spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid):has(.spsd-e-hero){padding-top:0}
.spsd-content>.vc_row:not(.spsd-phead):not(.spsd-pgrid):last-child,.spsd-content .wpb-content-wrapper>:last-child>.vc_row:not(.spsd-phead):not(.spsd-pgrid){padding-bottom:4em}
.spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.wpb_column{flex:1 1 0;min-width:0}
.spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.vc_col-sm-12{flex:1 1 100%}
.spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.vc_col-sm-4{flex:0 0 var(--side)}
.spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.vc_col-sm-4>.vc_column-inner{position:sticky;top:calc(var(--hdr-h,80px) + 1.25em)}
.admin-bar .spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.vc_col-sm-4>.vc_column-inner{top:calc(var(--hdr-h,80px) + 1.25em + 32px)}
.spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.vc_col-sm-4>.vc_column-inner>.wpb_wrapper{display:grid;gap:1.25em;align-content:start}
.spsd-e-hero.phead{position:relative;background:none;border:0;padding:0 0 2.4em}
.spsd-e-hero.phead::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:-100vmax;right:-100vmax;background:var(--bg);border-bottom:1px solid var(--line)}
.spsd-content .wpb_wrapper>.spsd-e-sec{margin-top:3em}
.spsd-content .wpb_wrapper>.spsd-e-sec:first-child,.spsd-content .wpb_wrapper>.spsd-e-stud:first-child{margin-top:0}
.notice .nt{flex:1;min-width:0}
.notice .nt>*{margin:0 0 .5em}
.notice .nt>:last-child{margin-bottom:0}
.spsd-content .wpb_wrapper>.course:first-child,.spsd-content :not(.course)+.course{border-top:1px solid var(--line)}
.spsd-e-forms .ptext>*{margin:0 0 .5em}
.spsd-e-forms .ptext>:last-child{margin-bottom:0}
.forms .fstate{flex-shrink:0;font-size:.875em;color:var(--muted);white-space:nowrap}
.stud .tag{display:table;margin:0 0 1.15em;padding:.25em .7em;border-radius:2px}
.stud .snote{margin-top:1.6em}
.sbox .call{margin:1em 0 0}
.sbox .cname+.call,.sbox .clist+.call{margin-top:1.1em}
@media (max-width:1024px){
  .spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.wpb_column{flex-basis:100%}
  .spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.vc_col-sm-4>.vc_column-inner{position:static}
  .spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.vc_col-sm-4>.vc_column-inner>.wpb_wrapper{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
}
@media (max-width:760px){
  .spsd-e-hero.phead{padding-bottom:1.8em}
  .spsd-content .vc_row:not(.spsd-phead):not(.spsd-pgrid)>.vc_col-sm-4>.vc_column-inner>.wpb_wrapper{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){.forms li:not(:has(.fbtn)){flex-direction:row;align-items:center}}
.brand>a,.flogo>a{display:flex;align-items:center;flex-shrink:0;min-width:0}
/* prvky šablony a pluginů, které na této stránce nechceme */
.spsd-new h1,.spsd-new h2,.spsd-new h3,.spsd-new h4,.spsd-new h5,.spsd-new h6{font-family:inherit}
.back-top-top-wrap,#search_popup_wrapper{display:none!important}
