/* base */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
h1,h2,h3,p,ul,ol,figure,table{margin:0}
ul,ol{padding:0;list-style:none}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:3px solid #10303a;outline-offset:3px;box-shadow:0 0 0 3px #fff}
.rezSkryte{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rezPreskok{position:absolute;left:1rem;top:-5rem;z-index:60;background:#fff;color:#10303a;padding:.6rem 1rem;border-radius:8px;font-weight:700}
.rezPreskok:focus{top:.5rem}
h2{font-size:clamp(1.7rem,3.4vw,2.8rem);line-height:1.12;font-weight:700;letter-spacing:-.01em}
h3{font-size:1.15rem;line-height:1.3;font-weight:700}
p{max-width:68ch}

/* navigation */
.rezZalozka{position:relative;display:inline-flex;align-items:center;gap:.45rem;min-width:0;font-family:var(--rezCifry);font-size:1rem;font-weight:600;letter-spacing:.03em;line-height:1.2;padding:.55rem 1rem;border-radius:8px 8px 0 0;color:#10303a;text-decoration:none;background:var(--rezFarba);box-shadow:inset 0 -4px 0 rgba(16,48,58,.25);transition:padding .25s ease,transform .2s ease,box-shadow .25s ease}
.rez1Zalozka{--rezFarba:#2bb3ff}
.rez2Zalozka{--rezFarba:#8fd8ff}
.rez3Zalozka{--rezFarba:#5cc6f2}
.rezZalozka:hover{transform:translateY(-2px)}
.rezZalozka:active{transform:translateY(1px)}
.rezZalozka[aria-current="true"]{padding-inline:1.8rem;box-shadow:inset 0 -6px 0 #fff,0 0 0 2px #fff}
.rezZalozka:focus-visible{outline-color:#fff;box-shadow:0 0 0 3px #10303a}
.rezZnamka{font-size:.72rem;letter-spacing:.02em;background:#10303a;color:#fff;padding:.12rem .4rem;border-radius:4px;white-space:nowrap}
.rezVysvetlivka{position:absolute;top:calc(100% + 10px);left:0;width:17rem;max-width:80vw;background:#fff;color:#10303a;padding:.65rem .8rem;border-radius:8px;border-left:6px solid #2bb3ff;font-family:var(--rezPismo);font-size:.86rem;font-weight:400;letter-spacing:0;line-height:1.45;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s;box-shadow:8px 8px 0 rgba(16,48,58,.3)}
.rez2Zalozka:hover .rezVysvetlivka,.rez2Zalozka:focus-visible .rezVysvetlivka{opacity:1;visibility:visible}
.rezOdkazVrchny{color:#fff;font-weight:600;text-underline-offset:5px;text-decoration-thickness:2px;text-decoration-color:#2bb3ff;padding:.4rem .3rem;transition:text-decoration-color .2s,background .2s}
.rezOdkazVrchny:hover{background:rgba(43,179,255,.25)}
.rezOdkazVrchny:active{background:rgba(43,179,255,.45)}
.rezOdkazVrchny:focus-visible{outline-color:#fff;box-shadow:0 0 0 3px #10303a}
.rezZnacka:focus-visible{outline-color:#fff;box-shadow:0 0 0 3px #10303a}
.rezJeZuzena .rezPas{grid-template-columns:auto 1fr auto;padding-block:.35rem}
.rezJeZuzena .rezZnacka{order:-1;font-size:1.15rem;animation:rezPosun .3s ease}
.rezJeZuzena .rezSkupinaVlavo{justify-content:flex-end}
.rezJeZuzena .rezZalozka{font-size:.82rem;padding:.3rem .65rem;border-radius:8px}
.rezJeZuzena .rezZalozka[aria-current="true"]{padding-inline:1.1rem}
.rezJeZuzena .rezZnamka{font-size:0;width:9px;height:9px;padding:0;border-radius:50%}
@keyframes rezPosun{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:none}}

/* hero */
.rezVypln{grid-row:1/-1;position:relative;overflow:hidden;z-index:0;min-width:0}
.rez1Vypln{grid-column:1;background:linear-gradient(180deg,#2bb3ff 0%,#1a6f94 52%,#10303a 100%)}
.rez2Vypln{grid-column:2;background:linear-gradient(180deg,#8fd8ff 0%,#1f6d8c 58%,#10303a 100%)}
.rez3Vypln{grid-column:3;background:linear-gradient(180deg,#5cc6f2 0%,#17607f 46%,#10303a 100%)}
.rez2Vypln img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rez2Vypln::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#10303a 0%,rgba(31,109,140,.9) 33%,rgba(16,48,58,.3) 62%,rgba(143,216,255,.2) 100%)}
.rezMenovka{position:relative;z-index:1;align-self:start;justify-self:start;min-width:0;margin:clamp(.9rem,2vw,1.6rem);max-width:calc(100% - 2rem);background:#eef6fb;color:#10303a;padding:.65rem .95rem;border-radius:8px;border-left:8px solid var(--rezFarba);font-size:.95rem;line-height:1.4}
.rezMenovka strong{display:block;font-family:var(--rezCifry);font-size:1.5rem;letter-spacing:.02em;line-height:1.15}
.rez1Menovka{grid-area:m1;--rezFarba:#2bb3ff}
.rez2Menovka{grid-area:m2;--rezFarba:#1f6d8c}
.rez3Menovka{grid-area:m3;--rezFarba:#5cc6f2}
.rezDoska{grid-area:d;position:relative;z-index:1;align-self:center;justify-self:center;min-width:0;width:min(56rem,92%);margin:1rem 0;background:rgba(16,48,58,.93);color:#fff;padding:clamp(1.25rem,3vw,2.4rem);border-radius:8px;text-align:center;box-shadow:14px 14px 0 rgba(43,179,255,.6)}
.rezDoska h1{text-wrap:balance;font-size:clamp(2.4rem,5.5vw,4.6rem);line-height:1.04;font-weight:700;letter-spacing:-.015em}
.rezDoska p{margin:1rem auto 0;max-width:58ch;font-size:1.1rem}
.rezKroky{display:flex;flex-wrap:wrap;gap:.8rem 1.6rem;justify-content:center;align-items:center;margin-top:1.4rem}
.rezLehota{position:relative;z-index:1;align-self:end;min-width:0;padding:1rem clamp(.9rem,2vw,1.6rem) 1.5rem;color:#fff;font-size:.95rem;line-height:1.4}
.rez1Lehota{grid-area:l1;--rezFarba:#2bb3ff}
.rez2Lehota{grid-area:l2;--rezFarba:#8fd8ff}
.rez3Lehota{grid-area:l3;--rezFarba:#5cc6f2}
.rezCislo{display:block;width:2ch;font-family:var(--rezCifry);font-size:clamp(4rem,9vw,7rem);font-weight:700;line-height:.92;font-variant-numeric:tabular-nums;color:var(--rezFarba)}
.rezJednotka{display:block;font-family:var(--rezCifry);font-size:1.5rem;letter-spacing:.02em;color:var(--rezFarba);margin-bottom:.3rem}

/* buttons and links */
.rezTlacidlo{display:inline-block;font:inherit;font-weight:700;line-height:1.2;padding:.9rem 1.6rem;border-radius:8px;border:4px solid transparent;color:#10303a;cursor:pointer;text-decoration:none;background:linear-gradient(#eef6fb,#eef6fb) padding-box,linear-gradient(90deg,var(--rezFarbaVolby) 0 30%,#2bb3ff 70% 100%) border-box;background-size:100% 100%,300% 100%;background-position:0 0,0 0;transition:background-position .3s ease,transform .15s ease,box-shadow .2s ease}
.rezTlacidlo:hover{background-position:0 0,100% 0;box-shadow:0 6px 0 rgba(16,48,58,.35)}
.rezTlacidlo:active{transform:translateY(3px);box-shadow:none}
.rezTlacidlo[disabled]{opacity:.65;cursor:progress}
.rezTlacidloMale{padding:.5rem .9rem;border-width:3px;font-size:.95rem}
.rezOdkazText{color:inherit;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:#2bb3ff;transition:background .2s}
.rezOdkazText:hover{background:rgba(43,179,255,.28)}
.rezOdkazText:active{background:rgba(43,179,255,.5)}
.rezDoska .rezOdkazText:focus-visible,.rezHranice .rezOdkazText:focus-visible,.rezPata a:focus-visible{outline-color:#fff;box-shadow:0 0 0 3px #10303a}

/* sections */
.rezDelic{height:14px;background:linear-gradient(90deg,#2bb3ff 0 24%,#10303a 24% 68%,#5cc6f2 68% 100%)}
.rezDelicTenky{height:6px}
.rezSekcia{position:relative;display:grid;grid-template-columns:24fr 44fr 32fr;scroll-margin-top:4rem;background-color:#eef6fb;background-image:linear-gradient(180deg,rgba(238,246,251,0) 0%,rgba(238,246,251,.9) 100%),linear-gradient(90deg,transparent 4%,rgba(43,179,255,var(--rezSila1)) 4% 16%,transparent 16% 36%,rgba(31,143,214,var(--rezSila2)) 36% 54%,transparent 54% 80%,rgba(92,198,242,var(--rezSila3)) 80% 94%,transparent 94%)}
.rezBunka{min-width:0;padding-inline:clamp(1.25rem,3vw,2.5rem)}
.rezBunkaA{grid-column:1;padding-left:clamp(3rem,4vw,3.5rem)}
.rezBunkaAb{grid-column:1/3;padding-left:clamp(3rem,4vw,3.5rem)}
.rezBunkaBc{grid-column:2/4}
.rezBunkaC{grid-column:3}
.rezBunkaCela{grid-column:1/-1;padding-left:clamp(3rem,4vw,3.5rem)}
.rezDialka{padding-block:5.5rem 2.5rem}
.rezDialka h2{margin-bottom:1rem}
.rezDialka .rezBunkaA{align-self:end}
.rezSnimka img{width:100%;border-radius:8px}
.rezSnimka figcaption{font-size:.9rem;margin-top:.5rem;line-height:1.45}
.rezSnimkaStlp{position:relative}
.rezSnimkaStlp::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;border-radius:0 0 8px 8px;background:linear-gradient(0deg,rgba(43,179,255,.75),rgba(43,179,255,0));pointer-events:none}
.rezSnimkaStlp figcaption{position:relative;z-index:1}
.rezSnimkaObal{position:relative}
.rezSnimkaObal::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;border-radius:0 0 8px 8px;background:linear-gradient(0deg,var(--rezFarba,rgba(43,179,255,.8)),rgba(43,179,255,0));pointer-events:none}

/* format picker */
.rezVyber{margin-top:1.6rem;background:#fff;border:3px solid #10303a;border-radius:8px;padding:clamp(1rem,2.4vw,1.6rem);box-shadow:12px 12px 0 rgba(43,179,255,.55)}
.rezVyber legend{font-weight:700;font-size:1.1rem;padding:0 .4rem}
.rezVyber fieldset{border:0;padding:0;margin:0}
.rezVolba{display:flex;gap:.75rem;align-items:flex-start;padding:.6rem .75rem;border-radius:8px;cursor:pointer;transition:background .2s ease}
.rezVolba:hover{background:#eef6fb}
.rezVolba:has(input:checked){background:#d3edfc}
.rezVolba input{width:1.25rem;height:1.25rem;margin:.2rem 0 0;flex:none;accent-color:#10303a}
.rezVysledok{margin-top:1rem}
.rezRiadokVysledku{border-left:10px solid var(--rezFarba);background:#eef6fb;padding:.7rem 1rem;margin-top:.6rem;border-radius:0 8px 8px 0;animation:rezVjazd .3s ease}
.rezRiadokVysledku strong{display:block}
.rezRiadokVysledku span{display:block;font-size:.95rem}
.rezStitok{display:inline-block;font-family:var(--rezCifry);font-size:.95rem;letter-spacing:.03em;background:var(--rezFarba);color:#10303a;padding:.1rem .55rem;border-radius:4px;margin:.25rem 0}
.rezZhrnutie{margin-top:1rem;background:#10303a;color:#fff;padding:1rem 1.2rem;border-radius:8px;border-bottom:8px solid var(--rezFarba,#2bb3ff)}
.rezZhrnutie strong{font-family:var(--rezCifry);font-size:1.5rem;letter-spacing:.02em;display:block;margin-bottom:.3rem}
.rezZhrnutie .rezTlacidlo{margin-top:.9rem}
.rezPrazdne{font-size:.95rem;padding:.6rem .75rem}
@keyframes rezVjazd{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}

/* on-site */
.rezOsobne{padding-block:1.5rem 6.5rem}
.rezOsobne h2{max-width:16ch}
.rezPruhy{margin-top:1.4rem}
.rezPruh{background:#fff;border-left:12px solid #1f6d8c;border-radius:0 8px 8px 0;padding:1rem 1.25rem;margin-bottom:.8rem;transition:transform .2s ease,border-color .2s ease}
.rezPruh:hover{transform:translateX(6px);border-left-color:#2bb3ff}
.rezPruhKratky{max-width:34rem}
.rezPruh h3{margin-bottom:.3rem}
.rezPoznamka{background:#10303a;color:#fff;padding:1.2rem 1.3rem;border-radius:8px;border-top:10px solid #8fd8ff;align-self:start;margin-top:4.5rem}
.rezPoznamka p+p{margin-top:.7rem}
.rezPoznamka .rezVelke{font-family:var(--rezCifry);font-size:1.5rem;letter-spacing:.02em;line-height:1.2}

/* services */
.rezSluzby{padding-block:4rem 4.5rem;background-image:linear-gradient(90deg,transparent calc(24% - 3px),rgba(43,179,255,calc(var(--rezSila1) * 2.4)) calc(24% - 3px) 24%,transparent 24% calc(68% - 3px),rgba(31,143,214,calc(var(--rezSila2) * 2.4)) calc(68% - 3px) 68%,transparent 68% calc(100% - 6px),rgba(92,198,242,calc(var(--rezSila3) * 2.4)) calc(100% - 6px))}
.rezSluzby h2{text-align:center;margin:0 auto .6rem}
.rezSluzby .rezPodnadpis{margin:0 auto 1.8rem;text-align:center}
.rezTabulka{width:100%;border-collapse:separate;border-spacing:0 8px;font-size:.98rem;line-height:1.45}
.rezTabulka caption{text-align:left;font-size:.9rem;padding-bottom:.4rem}
.rezTabulka th,.rezTabulka td{padding:.8rem 1rem;text-align:left;vertical-align:top}
.rezTabulka thead th{font-family:var(--rezCifry);font-size:1.5rem;letter-spacing:.02em;color:#10303a}
.rezTabulka thead th:nth-child(2){background:#2bb3ff;border-radius:8px 8px 0 0}
.rezTabulka thead th:nth-child(3){background:#8fd8ff;border-radius:8px 8px 0 0}
.rezTabulka thead th:nth-child(4){background:#5cc6f2;border-radius:8px 8px 0 0}
.rezTabulka tbody tr{background:#fff;transition:box-shadow .2s ease}
.rezTabulka tbody tr:hover{box-shadow:0 0 0 3px #10303a}
.rezTabulka tbody th{width:20%;font-size:1.05rem;border-radius:8px 0 0 8px;border-left:8px solid #10303a}
.rezTabulka tbody td:last-child{border-radius:0 8px 8px 0}
.rezBezObsahu{color:#3f5a63;font-style:italic}
.rezDvojica{display:grid;grid-template-columns:5fr 4fr;gap:clamp(1rem,3vw,2.5rem);align-items:end;margin-top:2.2rem}
.rezDvojica>*{min-width:0}
.rezCennikNadpis{margin:3.5rem 0 1rem;font-size:clamp(1.4rem,2.4vw,1.9rem)}
.rezCennik{display:grid;grid-template-columns:24fr 44fr 32fr;gap:12px;align-items:start}
.rezCena{position:relative;overflow:hidden;min-width:0;color:#fff;padding:1.3rem 1.2rem 1.5rem;border-radius:8px;background:linear-gradient(160deg,#10303a,#1a6f94);border-top:10px solid var(--rezFarba);transition:transform .25s ease,box-shadow .25s ease}
.rezCena::before{content:"";position:absolute;inset:0;background:linear-gradient(200deg,#1a7099,#10303a 75%);opacity:0;transition:opacity .3s ease}
.rezCena>*{position:relative}
.rezCena:hover{transform:translateY(-8px);box-shadow:0 14px 0 var(--rezFarba)}
.rezCena:hover::before{opacity:1}
.rez1Cena{--rezFarba:#2bb3ff}
.rez2Cena{--rezFarba:#8fd8ff;margin-top:1.8rem}
.rez3Cena{--rezFarba:#5cc6f2;margin-top:.6rem}
.rezSuma{display:block;font-family:var(--rezCifry);font-size:clamp(2.6rem,5vw,4rem);font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:var(--rezFarba);margin:.4rem 0 .6rem}
.rezCena h3{font-family:var(--rezCifry);font-size:1.5rem;letter-spacing:.02em}
.rezCena li{padding-left:1rem;border-left:3px solid var(--rezFarba);margin-top:.5rem;font-size:.97rem}
.rezPodCenou{margin-top:1.2rem;font-size:.95rem}

/* form */
.rezDopyt{padding-block:3rem 3.5rem;background-color:#d9eefa}
.rezDopyt h2{font-size:clamp(1.5rem,2.6vw,2.1rem)}
.rezSpojenie{margin-top:1rem;font-size:1.02rem}
.rezSpojenie a{font-weight:700}
.rezAutor{display:grid;grid-template-columns:auto 1fr;gap:.9rem;margin-top:2rem;padding-top:1.2rem;border-top:6px solid #10303a}
.rezMonogram{width:3.6rem;height:3.6rem;border-radius:8px;background:#10303a;color:#8fd8ff;display:grid;place-items:center;font-family:var(--rezCifry);font-size:1.5rem;font-weight:700}
.rezAutor p{font-size:.95rem}
.rezFormular{background:#fff;border:3px solid #10303a;border-radius:8px;padding:clamp(1.1rem,2.6vw,2rem);box-shadow:-12px 12px 0 rgba(16,48,58,.85)}
.rezPole{margin-bottom:1.1rem}
.rezPole label,.rezPole legend{display:block;font-weight:700;margin-bottom:.3rem;padding:0}
.rezPole input[type="text"],.rezPole input[type="email"],.rezPole input[type="tel"],.rezPole textarea{width:100%;font:inherit;color:#10303a;background:#eef6fb;border:2px solid #10303a;border-radius:8px;padding:.7rem .8rem;transition:border-color .2s,background .2s}
.rezPole input:hover,.rezPole textarea:hover{background:#fff}
.rezPole textarea{min-height:8rem;resize:vertical}
.rezPole [aria-invalid="true"]{border-color:#a3261a;background:#fdf0ee}
.rezChyba{color:#a3261a;font-size:.9rem;font-weight:700;min-height:1.2em;margin-top:.2rem}
.rezDvePolia{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
.rezDvePolia>*{min-width:0}
.rezPrepinac{border:0;padding:0;margin:0 0 1.1rem}
.rezMoznosti{display:flex;flex-wrap:wrap;gap:.5rem}
.rezMoznost{position:relative}
.rezMoznost input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.rezMoznost span{display:block;font-family:var(--rezCifry);font-size:1.05rem;letter-spacing:.03em;padding:.55rem 1rem;border-radius:8px;border:2px solid #10303a;background:#fff;transition:background .2s,transform .15s}
.rezMoznost input:hover+span{background:#eef6fb}
.rezMoznost input:checked+span{background:var(--rezFarba);box-shadow:inset 0 -5px 0 #10303a}
.rezMoznost input:focus-visible+span{outline:3px solid #10303a;outline-offset:3px}
.rezMoznost input:active+span{transform:translateY(2px)}
.rezSuhlas{display:flex;gap:.7rem;align-items:flex-start;font-size:.95rem}
.rezSuhlas input{width:1.2rem;height:1.2rem;margin-top:.2rem;flex:none;accent-color:#10303a}
.rezSuhlas label{font-weight:400;margin:0}
.rezStav{font-size:.95rem;margin-top:.7rem;min-height:1.4em}
.rezPrenesene{background:#eef6fb;border-left:8px solid #2bb3ff;padding:.6rem .9rem;margin-bottom:1.1rem;font-size:.95rem;border-radius:0 8px 8px 0}

/* limits */
.rezHranice{padding-block:7rem 5rem;background-color:#10303a;color:#fff;background-image:linear-gradient(90deg,transparent 4%,rgba(43,179,255,calc(var(--rezSila1) * .9)) 4% 16%,transparent 16% 36%,rgba(31,143,214,calc(var(--rezSila2) * .9)) 36% 54%,transparent 54% 80%,rgba(92,198,242,calc(var(--rezSila3) * .9)) 80% 94%,transparent 94%)}
.rezHranice h2{font-size:clamp(2.2rem,5vw,4.2rem);line-height:1.02;max-width:14ch}
.rezZakazy{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rezZakaz{min-width:0;background:rgba(16,48,58,.92);border:3px solid #8fd8ff;border-radius:8px;padding:1.1rem 1.2rem;transition:border-color .2s,transform .2s}
.rezZakaz:hover{border-color:#2bb3ff;transform:translateY(-4px)}
.rezZakazSiroky{grid-column:1/-1;background:#eef6fb;color:#10303a;border-color:#eef6fb}
.rezZakaz h3{font-size:1.25rem;margin-bottom:.4rem}
.rezZakaz p+p{margin-top:.5rem;font-size:.95rem}
.rezKomu{font-weight:700}

/* footer */
.rezPata{background:#0b2229;color:#dcecf4;display:grid;grid-template-columns:24fr 44fr 32fr;padding-block:3rem 1.5rem;font-size:.95rem}
.rezPata>*{min-width:0;padding-inline:clamp(1.25rem,3vw,2.5rem)}
.rezPataZnacka{font-size:1.5rem;font-weight:700;color:#fff;text-decoration:none}
.rezPata p{margin-top:.6rem}
.rezPata li{margin-bottom:.35rem}
.rezPata a{text-underline-offset:4px;text-decoration-color:#2bb3ff;transition:color .2s}
.rezPata a:hover{color:#8fd8ff}
.rezPata a:active{color:#2bb3ff}
.rezPataZoznam{columns:2;column-gap:1.5rem}
.rezUdaje dt{font-size:.85rem;color:#a9c9d8;margin-top:.5rem}
.rezUdaje dd{margin:0;color:#fff}
.rezPataSpodok{grid-column:1/-1;margin-top:2rem;padding-top:1rem;border-top:4px solid #1a6f94}

/* floating format tab */
.rezBocna{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:30;display:flex;align-items:center}
.rezBocna[hidden]{display:none}
.rezBocnaSpust{writing-mode:vertical-rl;font-family:var(--rezCifry);font-size:.95rem;font-weight:600;letter-spacing:.04em;color:#10303a;background:var(--rezFarbaStitku,#2bb3ff);border:2px solid #10303a;border-left:0;border-radius:0 8px 8px 0;padding:.8rem .35rem;cursor:pointer;transition:padding .2s,background .2s}
.rezBocnaSpust:hover{padding-inline:.6rem}
.rezBocnaSpust:active{padding-inline:.25rem}
.rezBocnaPonuka{display:flex;flex-direction:column;gap:.35rem;background:#fff;border:2px solid #10303a;border-radius:8px;padding:.5rem;margin-left:.4rem;box-shadow:6px 6px 0 rgba(16,48,58,.4)}
.rezBocnaPonuka[hidden]{display:none}
.rezBocnaVolba{font-family:var(--rezCifry);font-size:1rem;letter-spacing:.03em;text-align:left;color:#10303a;background:var(--rezFarba);border:0;border-radius:6px;padding:.45rem .8rem;cursor:pointer;transition:transform .15s,box-shadow .2s}
.rezBocnaVolba:hover{box-shadow:inset 0 -4px 0 #10303a}
.rezBocnaVolba:active{transform:translateY(2px)}
.rezBocnaVolba[aria-pressed="true"]{box-shadow:inset 0 0 0 3px #10303a}

/* cookie notice */
.rezSusienky{position:fixed;right:1rem;bottom:1rem;z-index:50;width:min(23rem,calc(100vw - 2rem));background:#fff;color:#10303a;border:3px solid #10303a;border-radius:8px;padding:1rem;font-size:.92rem;line-height:1.45;box-shadow:8px 8px 0 rgba(43,179,255,.6)}
.rezSusienky[hidden]{display:none}
.rezSusienkyTlacidla{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.8rem}
.rezSusienkyVolba{font:inherit;font-weight:700;color:#10303a;background:#eef6fb;border:2px solid #10303a;border-radius:8px;padding:.55rem .5rem;cursor:pointer;transition:background .2s,transform .15s}
.rezSusienkyVolba:hover{background:#8fd8ff}
.rezSusienkyVolba:active{transform:translateY(2px)}

/* reveal */
.rezCaka[data-rez-vstup="stlp"]{opacity:0;transform:translateY(70px)}
.rezCaka[data-rez-vstup="riadok"]{opacity:0;transform:translateX(-22px)}
[data-rez-vstup="stlp"]{transition:opacity var(--rezTempo,.3s) ease,transform var(--rezTempo,.3s) ease}
[data-rez-vstup="riadok"]{transition:opacity .25s ease,transform .25s ease,box-shadow .2s ease}
.rezCena[data-rez-vstup]{transition:opacity var(--rezTempo,.3s) ease,transform var(--rezTempo,.3s) ease,box-shadow .25s ease}

/* breakpoints */
@media (max-width:1280px){
  .rezTabulka thead th{font-size:1.5rem}
  .rezHranice{padding-block:5.5rem 4rem}
}
@media (max-width:1100px){
  .rezTabulka{font-size:.93rem}
  .rezTabulka th,.rezTabulka td{padding:.7rem .75rem}
  .rezCennik{grid-template-columns:1fr 1fr}
  .rez3Cena{grid-column:1/-1;margin-top:0}
  .rezPoznamka{margin-top:2rem}
}
@media (max-width:900px){
  .rezSekcia{grid-template-columns:1fr}
  .rezBunkaA,.rezBunkaAb,.rezBunkaBc,.rezBunkaC,.rezBunkaCela{grid-column:1;padding-left:clamp(1.25rem,5vw,3rem)}
  .rezDialka .rezBunkaA{order:2;margin-top:2rem;max-width:26rem}
  .rezPoznamka{margin:1.2rem clamp(1.25rem,5vw,3rem) 0}
  .rezOsobne h2{max-width:none}
  .rezHranice h2{max-width:none;margin-bottom:1.6rem}
  .rezDopyt .rezBunkaA{margin-bottom:1.8rem}
  .rezPata{grid-template-columns:1fr 1fr}
  .rezPata>*:first-child{grid-column:1/-1;margin-bottom:1.5rem}
  .rezFormular{box-shadow:0 12px 0 rgba(16,48,58,.85)}
}
@media (max-width:768px){
  .rezPas{grid-template-columns:1fr auto;gap:.4rem .5rem;padding:.45rem .6rem .4rem}
  .rezZnacka{grid-column:1/-1;order:-1;font-size:1.3rem;text-align:center}
  .rezJeZuzena .rezPas{grid-template-columns:1fr auto;padding-block:.35rem}
  .rezJeZuzena .rezZnacka{display:none}
  .rezJeZuzena .rezSkupinaVlavo{justify-content:flex-start}
  .rezZalozka,.rezJeZuzena .rezZalozka{font-size:.84rem;padding:.4rem .55rem;border-radius:8px}
  .rezZalozka[aria-current="true"],.rezJeZuzena .rezZalozka[aria-current="true"]{padding-inline:.8rem}
  .rezZnamka{font-size:0;width:9px;height:9px;padding:0;border-radius:50%}
  .rezOdkazVrchny{font-size:.88rem}
  .rezUvod{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:"d" "m1" "l1" "m2" "l2" "m3" "l3";min-height:0}
  .rez1Vypln{grid-column:1;grid-row:2/4}
  .rez2Vypln{grid-column:1;grid-row:4/6}
  .rez3Vypln{grid-column:1;grid-row:6/8}
  .rezDoska{width:100%;margin:0;border-radius:0;box-shadow:none;background:#10303a;border-bottom:10px solid #2bb3ff}
  .rezLehota{display:grid;grid-template-columns:auto 1fr;gap:0 .9rem;align-items:end;padding-top:2.5rem}
  .rezCislo{grid-row:1/3;font-size:4rem}
  .rezTabulka thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .rezTabulka,.rezTabulka tbody,.rezTabulka tr,.rezTabulka th,.rezTabulka td{display:block;width:100%}
  .rezTabulka tbody tr{margin-bottom:1rem;border-radius:8px;border-left:8px solid #10303a}
  .rezTabulka tbody th{width:100%;border-left:0;font-size:1.15rem;padding-bottom:.2rem}
  .rezTabulka td::before{content:attr(data-rez-stlp);display:block;font-family:var(--rezCifry);font-size:.95rem;letter-spacing:.03em;font-weight:600}
  .rezTabulka td{padding-block:.45rem}
  .rezDvojica{grid-template-columns:1fr}
  .rezBocna{top:auto;bottom:.8rem;transform:none;flex-direction:column-reverse;align-items:flex-start}
  .rezBocnaSpust{writing-mode:horizontal-tb;padding:.45rem .7rem}
  .rezBocnaPonuka{margin:0 0 .4rem .4rem}
  .rezSusienky{bottom:3.6rem}
}
@media (max-width:640px){
  .rezCennik{grid-template-columns:1fr}
  .rez2Cena,.rez3Cena{margin-top:0;grid-column:auto}
  .rezZakazy{grid-template-columns:1fr}
  .rezDvePolia{grid-template-columns:1fr}
  .rezPata{grid-template-columns:1fr}
  .rezPata>*{margin-bottom:1.5rem}
  .rezDialka{padding-block:3.5rem 2rem}
  .rezHranice{padding-block:4rem 3rem}
  .rezVyber{box-shadow:0 10px 0 rgba(43,179,255,.55)}
}
@media (max-width:480px){
  body{font-size:1rem}
  .rezOdkazVrchny{font-size:.82rem;padding-inline:.1rem}
  .rezZalozka,.rezJeZuzena .rezZalozka{font-size:.78rem;padding:.4rem .42rem;letter-spacing:0}
  .rezSkupina{gap:.3rem}
  .rezPataZoznam{columns:1}
  .rezDoska p{font-size:1rem}
  .rezMoznost span{font-size:.95rem;padding:.5rem .7rem}
}
@media (max-height:640px) and (min-width:769px){
  .rezDoska{padding:1rem 1.5rem}
  .rezDoska h1{text-wrap:balance;font-size:clamp(2.4rem,4.2vw,3.2rem)}
  .rezDoska p{margin-top:.5rem;font-size:1rem}
  .rezKroky{margin-top:.8rem}
  .rezCislo{font-size:4rem}
  .rezMenovka{margin-block:.7rem}
  .rezMenovka strong{font-size:1.5rem}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .rezCaka[data-rez-vstup]{opacity:1;transform:none}
}

/* inner pages */
.rezTitul{display:grid;grid-template-columns:24fr 44fr 32fr}
.rezTitul .rezVypln{grid-row:1;min-height:clamp(13rem,30vh,19rem)}
.rezTitulDoska{grid-column:1/3;grid-row:1;position:relative;z-index:1;align-self:end;min-width:0;background:rgba(16,48,58,.94);color:#fff;margin-top:2.5rem;padding:1.4rem clamp(1.25rem,3vw,2.5rem) 1.6rem clamp(3rem,4vw,3.5rem);border-radius:0 8px 0 0}
.rezTitulDoska h1{font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.06;font-weight:700;letter-spacing:-.01em}
.rezTitulDoska p{margin-top:.8rem;font-size:1.08rem}
.rezOmrvinky ol{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.9rem;margin-bottom:.8rem}
.rezOmrvinky li+li::before{content:"/";margin-right:.4rem;color:#8fd8ff}
.rezOmrvinky a{text-underline-offset:4px;text-decoration-color:#2bb3ff}
.rezOmrvinky a:hover{color:#8fd8ff}
.rezOmrvinky a:focus-visible{outline-color:#fff;box-shadow:0 0 0 3px #10303a}
.rezObsah{padding-block:3rem 4.5rem}
.rezObsahTesny{padding-block:1rem 3rem}
.rezText h2{font-size:clamp(1.4rem,2.4vw,1.9rem);margin:2.4rem 0 .6rem}
.rezText h2:first-child{margin-top:0}
.rezText h3{margin:1.2rem 0 .3rem}
.rezText p+p{margin-top:.8rem}
.rezText ul{margin:.7rem 0;max-width:68ch}
.rezText ul li{position:relative;padding-left:1.2rem;margin:.45rem 0}
.rezText ul li::before{content:"";position:absolute;left:0;top:.62em;width:.5rem;height:.5rem;background:#2bb3ff}
.rezText ol{margin:.7rem 0;max-width:68ch;counter-reset:rezKrok}
.rezText ol li{counter-increment:rezKrok;position:relative;padding:.7rem 1rem .7rem 3.4rem;background:#fff;border-radius:8px;margin:.5rem 0}
.rezText ol li::before{content:counter(rezKrok);position:absolute;left:0;top:0;bottom:0;width:2.6rem;display:grid;place-items:center;background:#10303a;color:#8fd8ff;font-family:var(--rezCifry);font-size:1.5rem;font-weight:700;border-radius:8px 0 0 8px}
.rezTriStlpce{display:grid;grid-template-columns:24fr 44fr 32fr;gap:12px;margin:1.2rem 0 1.6rem;align-items:start}
.rezStlpec{min-width:0;background:#fff;border-top:10px solid var(--rezFarba);border-radius:8px;padding:1rem 1.1rem 1.2rem;transition:transform .2s ease,box-shadow .2s ease}
.rezStlpec:hover{transform:translateY(-5px);box-shadow:0 10px 0 var(--rezFarba)}
.rezStlpec h3{font-family:var(--rezCifry);font-size:1.5rem;letter-spacing:.02em;margin:0 0 .4rem}
.rezStlpec p{font-size:.97rem}
.rez1Stlpec{--rezFarba:#2bb3ff}
.rez2Stlpec{--rezFarba:#8fd8ff}
.rez3Stlpec{--rezFarba:#5cc6f2}
.rezUdajeSvetle dt{color:#3f5a63;font-size:.9rem;margin-top:.7rem}
.rezUdajeSvetle dd{margin:0;font-size:1.1rem;font-weight:700}
.rezPlocha{background:#10303a;color:#fff;border-radius:8px;padding:1.3rem 1.4rem;border-left:12px solid #2bb3ff;margin:1.6rem 0;max-width:46rem}
.rezPlocha .rezVelke{font-family:var(--rezCifry);font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:.01em;color:#8fd8ff}
.rezPlocha a:focus-visible{outline-color:#fff;box-shadow:0 0 0 3px #10303a}
.rezRozcestie{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-top:1.4rem}
.rezRozcestie a{min-width:0;display:block;background:#fff;border-radius:8px;border-bottom:8px solid #2bb3ff;padding:1rem 1.1rem;text-decoration:none;font-weight:700;transition:transform .2s ease,border-color .2s ease}
.rezRozcestie a span{display:block;font-weight:400;font-size:.95rem;margin-top:.3rem}
.rezRozcestie a:hover{transform:translateY(-4px);border-bottom-color:#10303a}
.rezRozcestie a:active{transform:translateY(1px)}
.rezSnimkaBok{margin-top:1rem}
.rezSnimkaSiroka{margin:0 0 2rem}
@media (max-width:1100px){
  .rezTriStlpce{grid-template-columns:1fr 1fr}
  .rez3Stlpec{grid-column:1/-1}
}
@media (max-width:900px){
  .rezTitulDoska{grid-column:1/-1;padding-left:clamp(1.25rem,5vw,3rem);border-radius:0}
  .rezRozcestie{grid-template-columns:1fr 1fr}
  .rezRozcestie a:first-child{grid-column:1/-1}
}
@media (max-width:640px){
  .rezTriStlpce{grid-template-columns:1fr}
  .rez3Stlpec{grid-column:auto}
  .rezRozcestie{grid-template-columns:1fr}
  .rezRozcestie a:first-child{grid-column:auto}
  .rezTitul .rezVypln{min-height:11rem}
}
@media (max-width:768px){
  .rezPas{padding:.3rem .5rem .35rem;gap:.25rem .4rem}
  .rezZnacka{font-size:1.15rem;line-height:1.2;padding-bottom:0}
  .rezSkupina{align-items:center}
  .rezBocna{top:3.6rem;bottom:auto;flex-direction:column;align-items:flex-start}
  .rezBocnaPonuka{margin:.4rem 0 0 .4rem}
  .rezSusienky{left:0;right:0;bottom:0;width:auto;border-radius:0;border-width:3px 0 0;box-shadow:none;padding:.6rem .8rem;font-size:.85rem}
  .rezSusienkyTlacidla{margin-top:.5rem}
  .rezSusienkyVolba{padding:.4rem .5rem}
}
