@font-face {
    font-family: 'Isidora';
    src: url('https://www.knornahrad.cz/website/font/IsidoraSans-Regular.ttf'); 
}
@font-face {
    font-family: 'Isidora-light';
    src: url('https://www.knornahrad.cz/website/font/IsidoraSans-Light.ttf'); 
}
@font-face {
    font-family: 'Isidora-medium';
    src: url('/website/font/IsidoraSans-Medium.ttf'); 
}
@font-face {
    font-family: 'Isidora-Bold';
    src: url('/website/font/IsidoraSans-Bold.ttf'); 
}



* { 
    box-sizing: border-box;
    --padding: 15vw;
    font-size: clamp(15px, 1.5vw, 19px);
    font-family: 'Isidora-medium', sans-serif;
    color:#434343;

    --bold: 'Isidora-Bold', sans-serif;
    --light: 'Isidora-light', sans-serif;


    --modra: #003B6C;
    --cervena: #D9000D;
    --svetlemodra: #F2F5F780;
    --svetleseda: #FCFCFC;
    --cerna: #364043;
    --tmaveseda: #373E5D;


}
.rozsir {
    display: none;
    position: relative;
    z-index: 0;
}


body { 
    margin: 0 auto;
    max-width: 2000px; 
    padding: 0; 
    background:#FCFCFC;
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
    position: relative;
}

.center {
    display: flex;
    justify-content: center;
}

.inline {
    display: inline-block;
}

h1, .h1 {
    font-size: 2.412rem;
    line-height: 1.4em;
    color: white;
}

h2, .h2 {
    font-size: 1.7rem;
    line-height: 1.5em;
}

h3, .h3 {
    font-size: 1.471rem;
    line-height: 1.5em;
}

h4, .h4 {
    font-size: 1.3rem;
    line-height: 1.5em;
}

h5, .h5 { 
    font-size: 1.243em;
    line-height: 1.5em; 
}

h6, .h6 { 
    font-size: 1.132em;
    line-height: 1.5em; 
}
h1.blue, .h1.blue, h2.blue, .h2.blue, h3.blue, .h3.blue {
    color: var(--modra);
}
  
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    margin-top: 0;
    margin-bottom: 0.5em;
    font-family: var(--bold);
    padding-bottom: 0.4em;
}

.uprostred::before {
    content: '';
    width: 3em;
    height: 2px;
    background: var(--cervena);
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}

.vlevo::before {
    content: '';
    width: 3em;
    height: 2px;
    background: var(--cervena);
    position: absolute;
    left: 4px;
    bottom: 0;
}


p {
    font-size: 1rem;
    line-height: 1.5rem;
}

strong {
    font-size: 1rem;
    font-weight: 700;
}

a {
    font-size: 1rem;
    color: var(--cervena);
    font-weight: 600;
    transition: 0.3s all ease-in-out;
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

a.cta, a#pickfiles8x {
    display: inline-block;
    padding: 1rem 2rem 0.8rem 2rem;
    background: var(--cervena);
    color: white;
    text-decoration: none;
    transition: 0.3s all ease-in-out;
    border-radius: 3px;
    border: 1px solid var(--cervena);
    line-height: 1rem;
    font-weight: 300;
}
 
a.cta:hover, a#pickfiles8x:hover {
    background: white;
    color: var(--cervena);

}

a.cta2, a#uploadfiles8x, .cta2 {
    display: inline-block;
    padding: 1rem 2rem 0.8rem 2rem;
    color: var(--cervena);
    background: white;
    text-decoration: none;
    transition: 0.3s all ease-in-out;
    border-radius: 3px;
    border: 1px solid var(--cervena);
    line-height: 1rem;
    font-weight: 300;
    cursor: pointer;
}

a.cta2:hover, a#uploadfiles8x:hover, .cta2:hover {
    color: white;
    background: var(--cervena);

}
a#pickfiles8x, a#uploadfiles8x {
    padding: 0.5rem 1rem;
}

header {
    display: flex;
    align-items: stretch;
    padding: 0 var(--padding);
    height: 7rem;
    min-height: 65px;
    max-width: 2000px;
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;

    transition: .3s ease-in-out; 
    z-index: 100;
    background: var(--modra);

}

header.nabidka-fixni {
    position: fixed;
    height: 75px;
    width: 100%;
    background: var(--modra);
    top: 0;
    z-index: 100;
    padding: 0 var(--padding) 0 var(--padding);
}


header.nabidka-fixni .menu ul li a::after {
    opacity: 0;
}
header.nabidka-fixni .menu ul li a { 
    padding: 0 0 0.6rem 0; 
}

a.logo {
    width: 125px;
    padding-top: 0.6rem;
}

header.nabidka-fixni a.logo {
    padding-bottom: 0.6rem;
}

header.nabidka-fixni a.logo img.desktop {
    display: none;
}
header.nabidka-fixni a.logo img.namobilu {
    display: block;
}


a.logo:hover {
    opacity: 0.8;
}

a.logo img {
    width: 125px;
    height: 100%;
    width: auto;
    display: block;
}

a.logo img.namobilu {
    display: none;
}


.horninabidka {
    display: flex;
    justify-content: flex-end;
}

.horninabidka a {
    display: inline-block;
    padding: 0.4rem 1rem 0.4rem 2rem;
    background: var(--cervena);
    position: relative;
    text-decoration: none;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    line-height: 15px;
    transition: 0.3s all ease-in;
}

.horninabidka a:hover {
    background: var(--svetlemodra);
}

.horninabidka a::before {
    content: '';
    width: 0.8rem;
    height: 0.8rem;
    position: absolute;
    left: 0.6rem;
    top: 50%;
    transform: translateY(-50%);
}

.horninabidka a.eshop::before {
    background: url('/website/img/ikona_cta_tuzka.svg') center/cover no-repeat;
}


.horninabidka a span {
    color: white;
    font-size: 15px;
    font-weight: 300;
    line-height: 15px;
}

.horninabidka.mobil {
    display: none;
}

.menu{ 
    height:auto; 
    margin-left: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.menu ul{ 
    height:auto; 
    margin:0; 
    padding:0; 
    display: flex;
    align-items: center;
}

.menu ul li{ 
    list-style: none; 
    height: 100%;
    margin: 0; 
    padding: 0 0.9rem; 
    position: relative;
    text-align: center;
}

.menu ul li:last-child {
    padding-right: 0;
}

.menu ul li a { 
    width: 100%;
    height: 100%;
    color: white;
    font-size: 0.9rem; 
    font-weight: 300;
    padding: 0 0 2rem 0; 
    text-decoration:none; 
    transition: all .3s ease-in-out; 
    display: flex;
    align-items: center;
    position: relative;
}

.menu ul li a:hover {
    color: var(--svetlemodra);

}

.menu ul li a::after {
    content: '';
    width: 100%;
    height: 2px;    
    position: absolute;
    bottom: 1.6rem;
    left: 0;
    background: var(--svetlemodra);
    transition: all .3s ease-in-out;
    opacity: 0; 
}

.menu ul li a:hover::after, .menu ul li a.active::after{ 
    opacity: 1;
}

header.nabidka-fixni .menu ul li a:hover::after, header.nabidka-fixni .menu ul li a.active::after {
    display: none;
}

.menu ul li a.active {
    color: var(--svetlemodra);

}

.menu ul li a span.sipka_dolu {
    border-top: 5px solid var(--cervena);
}

.menu ul li > ul{ 
    display: block;
    position:absolute; 
    top:100%; 
    left:0%; 
    width:auto; 
    opacity:0; 
    visibility:hidden; 
    transition:all .3s ease-in-out;
    z-index: 100;
}

.menu ul li > ul li{ 
    width: 100%;
}

.menu ul li > ul li a{ 
    border-top: none !important;
    width:100%; 
    border-bottom: 1px solid #fff; 
    white-space: nowrap;
    background: #ececec;
    padding: 1rem 1.5rem ;
}

.menu ul li > ul li a:hover {
    background: white;
    color: var(--cervena);
}

.menu ul li > ul li a::after {
    display: none;
}

.menu ul li:hover > ul{ 
    display: block;
    opacity: 1; 
    visibility: visible;
}

.menu ul li > ul li ul{ 
    display: block;
    max-width: 200px;
    left: 100%; 
    top: 0;
}

span.sipka_dolu {
    height: 0;
    width: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-top: 5px solid var(--cerna);
    margin-top: 5px;
    margin-left: 8px;
}


/* TITULKA */

section {
    padding: 3rem var(--padding);
}

section.nadpis {
    background: var(--modra);
    color: white;

    display: flex;
    flex-direction: column;
    align-items: center;
}
section.nadpis h1 {
    order: 2;
    text-align: center;
}

section.nadpis p.podnadpis {
    text-align: center;
    order: 1;
    color: var(--svetlemodra);
    font-size: 1rem;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
    letter-spacing: 2px;
}

section.postup {
    padding-top: 7rem;
    position: relative;
}
section.kestazeni {
    padding-top: 4rem;
}

img.pm1 {
    position: absolute;
    width: 45%;
    height: auto;
    left: 0;
    top: 0;
    z-index: -1;
}

img.pm2 {
    display: none;
}

img.pm3 {
    position: absolute;
    width: 45%;
    height: auto;
    right: 0;
    top: 0;
    z-index: -1;
}

.formular_misto, .box_podpisy, .obalnovinky {
    padding: 3.5rem;
    background: white;
    max-width: 920px;
    box-shadow: 0px 3px 8px #0000001A;
    margin: auto;
}

.flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.flex.plakat {
    border-bottom: 1px solid #E8E8E8;
    padding-bottom: 1rem;
    padding-top: 1rem;
}

.flex.plakat .box_levy {
    flex-basis: 60%;
    padding-left: 2rem;
}
.flex.plakat .box_levy p {
    color: var(--modra);
    font-weight: 600;
}

.flex.plakat .box_pravy {
    flex-basis: 35%;
}

.flex.plakat .box_pravy img {
    width: 100%;
    height: auto;
}
p.docs {
    font-size: 1.3rem;
    font-family: var(--bold);
    color: var(--modra);
    margin-top: 0;
}
p.docs.dalsi {
    margin-top: 3rem;
}
.obaldoc a {
    margin-right: 2rem;
    margin-bottom: 1rem;
    display: inline-block;
}
img.podpis {
    max-width: 50%;
    height: auto;
}
.obalfot {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 1rem;
}
.obalfot a img {
width: 100%;
height: auto;
}


p.tucne {
    position: relative;
    font-size: 1.3rem;
    font-family: var(--bold);
    color: var(--modra);
}

p.tucne.c1::before {
    content: '1.';
}
p.tucne.c2::before {
    content: '2.';
}
p.tucne.c3::before {
    content: '3.';
}
p.tucne.c4::before {
    content: '4.';
}
p.tucne.c5::before {
    content: '5.';
}



p.tucne::before {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 1.8rem;
    height: 1.8rem;
    
    background: var(--modra);
    font-size: 1rem;
    line-height: 1rem;
    font-family: 'Isidora-medium', sans-serif;
    color: white;
    font-weight: 100;
    position: absolute;
    left: -0.5rem;
    top: -0.15rem;
    transform: translateX(-100%);
}

section.titulni {
    padding: 2rem var(--padding) 4rem var(--padding);
    background: var(--modra);
    min-height: calc(100vh - 7rem);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

section.titulni .titlevy, section.titulni .titpravy {
    flex-basis: 48%;
}

section.titulni .titlevy h1 {
    padding-right: 1.5rem;
}

section.titulni .titpravy {
    width: 100%;
    padding-top: 48%;
    position: relative;
    overflow: hidden;
}

section.titulni .titpravy img {
    position: absolute;
    display: block;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
section.svideem {
    padding-top: 7rem;
    padding-bottom: 7rem;
}

section.svideem .komplet {
    flex-basis: 100%;
    padding-top: 2rem;
}

.rozsir {
    padding-top: 4rem;
}

.nahore {
    width: 100%;
    display: flex;
}
.nahore span.first {
    display: block;
    white-space: nowrap;
    padding-right: 1.5rem;
    color: var(--modra);
    font-family: var(--bold);
    font-size: 1.2rem;
}

.nahore span.linka {
    display: block;
    width: 100%;
    position: relative;
}
.nahore span.linka::before {
    content: '';
    width: 100%;
    height: 0.5px;
    position: absolute;
    background: rgba(53, 53, 53, 0.445);
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    opacity: 0.5;
}
.odstavecnew {
    padding-bottom: 2rem;
}
.odstavecnew p {
    width: 100%;
    margin-top: 0.25rem;
    margin-left: auto;
    max-width: 800px;
}



section.flex2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
section.flex2 .box {
    flex-basis: 48%;
}
section.flex2 .box.levy {
    padding-right: 3rem

}
section.flex2 .box.pravy {
    padding-top: 4rem;
}
section.flex2 .box.pravy video {
    border-radius: 6px;
}

.video-js, .vjs-caption-settings {
    position: relative;
    background-color: white;
    border-radius: 6px;
}
p.blue {
    font-family: var(--bold);
    color: var(--modra);
}
p.blok {
    text-align: justify;
}

section.zapojtese {
    background: #F1F1F1;
    padding-top: 5rem;
    padding-bottom: 5rem;
}
section.zapojtese p, section.zapojtese h2 {
    text-align: center;
    
}
section.zapojtese p {
    margin-bottom: 0;
}

.flex_zapojit {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3rem;

}
.flex_zapojit a.cta {
    padding-left: 1rem;
    padding-right: 1rem;
    position: relative;
}

.flex_zapojit .box.levy {
    flex-basis: 58%;
    background: white;
    box-shadow: 0px 3px 8px #0000001A;
    padding: 2rem 3rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
}

.flex_zapojit .box.levy .obalcta {
    display: flex;
    justify-content: space-between;
}


.flex_zapojit p.chci {
    
  position: relative;
    color: var(--modra);
    font-family: var(--bold);
    font-size: 1.2rem;
    text-shadow: 0px 3px 6px #00000029;
    margin-bottom: 2rem;
}

.flex_zapojit .box.pravy p.chci {
    color: white;
}


.flex_zapojit .box.pravy {
    flex-basis: 36%;
    background: var(--modra);
    padding: 2rem 3rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    position: relative;
    box-shadow: 0px 3px 8px #0000001A;
}

.flex_zapojit .box.pravy::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    background: url('/website/img/arch_box_300x200.png') center/cover no-repeat;
    z-index: 0;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
}

section.zapojtese.copotrebuji {
    background: unset;
}
section.zapojtese.copotrebuji .flexnews p, section.zapojtese.copotrebuji .flexnews h2 {
    text-align: left;
}

section.zapojtese.copotrebuji .flexnews h2 {
    font-size: 1.3rem;
    line-height: 1.2em;
    padding-top: 0.5rem;
    padding-bottom: 0;
}

.flexnews {
    padding-top: 3rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.flexnews .box {
    flex-basis: 31%;
    background: white;
    box-shadow: 0px 3px 8px #0000001A;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;

}
.flexnews .box p.obsahnovinky {
    padding-bottom: 1rem;
    margin-top: 0;
}
.flexnews .box a.cta2 {
    margin-top: auto;
}

/* Formuláře */
form.formgrid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 2rem;
    padding-top: 1rem;
}

label {
    display: block;
    position: relative;
    font-weight: 600;
}


label.check::before {
    content: '';
    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 0.5rem;
    bottom: 0.6rem;
    transform: translateY(-50%);
    background: url('https://www.knornahrad.cz/website/img/check.png') center/cover no-repeat;
    z-index: 1;
}

label.phone input {
    padding-left: 3.5rem;
}

label.phone::after {
    content: '+420';
    position: absolute;
    left: 1rem;
    bottom: 0.9rem;
    z-index: 2;
}


.full {
    grid-column: 1/3;
}

.full p {
    font-size: 14px;
    line-height: 18px;
}


input, select, textarea {
    display: block;
    background: #F7F9FA;
    width: 100%;
    padding: 1rem 2rem 0.8rem 1rem;
    border: 1px solid #CFCFCF;
    border-radius: 3px;
    z-index: 2;
    position: relative;
    margin-top: 0.3rem;
    min-height: 3.2rem;
    font-weight: 600;
}
textarea {
    resize: vertical;
}


input::placeholder {
    font-weight: 300;
    font-size: 15px;
}

input:not(:placeholder-shown) {
    background: #68a9bd05;
}

input[type=checkbox] {
    width: 1.3rem;
    height: 1.3rem;
    min-height: unset;
    display: inline-block;
    margin: -0.2rem 0.5rem 0 0;
    cursor: pointer;
}

input.button {
    background: var(--cervena);
    color: white;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    border-radius: 3px;
    transition: 0.3s all ease-in;
    border: 1px solid var(--cervena);
}

input.button:hover {
    background: white;
    color: var(--cervena);
}
.uploader {
    margin-top: 0.3rem;
}

p.procheckbox {
    display: flex;
    align-items: flex-start;
    font-size: 16px;
    font-weight: 600;
    margin-top: 1.5rem;
}

select {
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #68a9bd05;
}

.select {
    position: relative;
}

.select:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 7px 0;
    border-color: var(--cervena) transparent transparent transparent;
    position: absolute;
    right: 11px;
    top: 50%;
    transform: translateY(-50%);
}
/* Formuláře konec */

main {
    padding-top: 7rem;
    background: #FCFCFC;
    position: relative;
    z-index: 2;
    margin-bottom: 570px;
}
main::before {
    content: '';
    width: 100%;
    height: 7rem;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background: var(--modra);
}

main::after {
    content: '';
    width: 100%;
    height: 100px;
    position: absolute;
    left: 0;
    bottom: 0;
    transform: translateY(100%);
    background: transparent linear-gradient(180deg, #E8E8E8 0%, #FFFFFF00 100%) 0% 0% no-repeat padding-box;
}

main img.pravydoplnek {
    position: absolute;
    width: 8vw;
    height: auto;
    right: 3vw;
    bottom: 8rem;
}
main img.levydoplnek {
    position: absolute;
    width: 8vw;
    height: auto;
    left: 3vw;
    bottom: 8rem;
}

main img.pravydoplnek2 {
    position: absolute;
    width: 8vw;
    height: auto;
    right: 3vw;
    top: 25rem;
}
main img.levydoplnek2 {
    position: absolute;
    width: 8vw;
    height: auto;
    left: 3vw;
    bottom: 14rem;
}


footer {
    position: fixed;
    bottom: 0;
    height: 570px;  
    width: 100%;
    padding: 7rem var(--padding) 2rem var(--padding);
    background: white;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 2000px;
}

footer .box1, footer .box2, footer .box3 {
    flex-basis: 30%;
}

footer .box1 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
}

footer .box1 a.cta {
    display: inline-block;
    padding: 0.8rem 2rem;
    background: var(--cervena);
    color: white;
    border-radius: 3px;
    font-weight: 300;
    transition: 0.3s all ease-in;
    border: 1px solid var(--cervena);
}

footer .box1 a.cta:hover {
    color: var(--cervena);
    background: white;
}

footer .box1 a.logofooter {
    display: inline-block;
    width: 50%;
    max-width: 140px;
}

footer .box1 a.logofooter img {
    width: 100%;
    height: auto;
}

footer .box2 {
 display: flex;
 justify-content: center;
 
}

.obalfb {
    width: 350px;
    text-align: center;
    overflow: hidden;
}

.obalfb iframe {
    height: 400px !important;
}

footer .box3 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
}

footer .box3 ul {
    list-style: none;
    padding-left: 0;
    width: 100%;
}

footer .box3 ul li {
    padding-bottom: 1rem;
    text-align: right;
}

footer .box3 ul li a {
    color: #4A4A4A;
    font-size: 16px;
    text-decoration: none;
    transition: 0.3s all ease-in;
}

footer .box3 ul li a:hover {
    color: var(--cervena);
    text-decoration: underline;
}

p.autor {
    font-size: 15px;
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 0;
}

a.meho {
    padding: 0.4rem 0 0.4rem 1rem;
    transition: 0.3s all ease-in;
    text-align: right;
    font-size: 15px;
    line-height: 15px;
    display: flex;
    align-items: center;
    border-radius: 3px;
}

a.meho span {
    transition: 0.3s all ease-in;
    font-size: 15px;
    line-height: 15px;
    color: var(--cervena);
}

a.meho span.dia, a.meho span.me {
    position: relative;
    width: 0px;
    left: 0;
    bottom: 0;
    display: inline-block;
    overflow: hidden;
}

a.meho:hover {
    background: #1DB094;
    color: #D7DF21;
    padding: 0.4rem 1rem;
}

a.meho:hover span.mh {
    color: white;
}

a.meho:hover span.dia {
    width: 25px;
    text-align: left;
    color: white;
}

a.meho:hover span.me {
    width: 40px;
    text-align: left;
    color: #D7DF21;
}


/* STATIKA */
section.rozcestnik {
    padding-top: 4rem;
}
section.rozcestnik img.pm1, section.rozcestnik img.pm3 {
    width: 35%;
}
.box_podpisy {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 5rem;
    width: 85%;
    max-width: 1200px;
}
.box_podpisy .boxik {
    flex-basis: calc(50% - 1.75rem);
    padding: 3.5rem 2.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: var(--modra);
    position: relative;
}
.box_podpisy .boxik::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    background: url('https://www.knornahrad.cz/website/img/podpis_box_300x200.png') center/cover no-repeat;
    z-index: 0;
    position: absolute;
    left: 0;
    top: 0;
}

.box_podpisy .boxik.druhy::before {
    background: url('/website/img/arch_box_300x200.png') center/cover no-repeat;
}

.box_podpisy a.cta {
    position: relative;
    margin-top: 1rem;
}

.box_podpisy .boxik h2 {
    text-align: center;
    font-size: 1.25rem;
    line-height: 1.45rem;
    color: white;
    text-shadow: 0px 3px 6px #00000029;
}
.boxdekujeme {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
}

.boxdekujeme img {
    width: 80px;
}

.boxdekujeme h1 {
    margin-top: 2rem;
    margin-bottom: 2rem;
    text-align: center;
    color: #0F8135;
    max-width: 400px;
    font-size: 1.65rem;
    line-height: 1.95rem;
}
.boxdekujeme h1 span {
    font-size: 2.9rem;
    display: inline-block;
    margin-bottom: 1rem;
    font-family: var(--bold);
    font-weight: 900;
    color: #0F8135;
}
a.zelena {
    display: inline-block;
    padding: 0.5rem 1.5rem;
    border: 1px solid #0F8135;
    border-radius: 3px;
    color: #0F8135;
    text-decoration: none;
    transition: 0.3s all ease-in;    
}

a.zelena:hover {
    color: white;
    background: #0F8135;
}

section.novinky {
    padding-top: 4rem;
}
p.datumovka  {
    font-size: 16px;
    color: #989898;
    position: relative;
    margin-top: 0;
    padding-left: 1rem;
}

p.datumovka2 {
    font-size: 16px;
    color: #989898;
    
    margin-top: 0;
}

p.datumovka::before {
    content: '';
    width: 0.7rem;
    height: 0.7rem;
    position: absolute;
    left: 0;
    top: 46%;
    transform: translateY(-50%);
    background: url('/website/img/ikona_datum.svg') center/cover no-repeat;
}


h2.novinky {
    color: var(--modra);
    line-height: 1.3em;
    padding-bottom: 0;
}

.flexnovinky {
    display: flex;
    padding-bottom: 2rem;
    border-bottom: 1px solid #E8E8E8;
    margin-bottom: 2rem;
}

.novinka {
    position: relative;
}

span.kotva {
    position: absolute;
    width: 1px;
    height: 1px;
    top: -8rem;
    left: 0;
}



.novinka:last-of-type .flexnovinky {
    border-bottom: none;
    margin-bottom: 0;
}

.novinky p {
    margin-top: 0;
    margin-bottom: 0.5rem;
}

.flexnovinky a.novinky img {
   width: 260px;
   height: auto;
   margin-left: 1rem;
}



/* MAPA KRAJU */

section.mapakraju {
    padding-top: 4rem;
    position: relative;
}

.mapa_kraju {
    width: 100%;
    margin: auto;
    max-width: 700px;
    position: relative;
}



svg.mapa a path {
    transition: 0.3s all ease-in;
}


svg.mapa a path.st0 {
    fill: var(--cervena);
}
svg.mapa a.nobg path.st0 {
    fill: #364043;
}

svg.mapa a:hover path.st0 {
    fill: #364043;
}

svg.mapa a.nobg {
    pointer-events: none;
}

svg.mapa a:hover path.st0 {
    fill: var(--modra);
}

.mapa_kraju img.zvolte {
    position: absolute;
    right: 0;
    top: -2rem;
    width: 7rem;
}


.tabulkakraju {
    padding-top: 5rem;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
.kraj {
    background: white;
    box-shadow: 0px 3px 8px #0000001A;

}

p.nazevkraje {
    margin-top: 0;
    padding: 1rem;
    background: var(--modra);
    color: white;
    font-size: 1.2rem;
}
p.mesto {
    font-weight: 600;
    color: var(--modra);
    padding: 0 1.2rem;
}

details summary { list-style-type: none; } /* Firefox */
details summary::-webkit-details-marker { display: none; } /* Chrome */
details summary::marker { display: none; }

summary:after {
    content: ' ';
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-left: 1rem;
    background: url('https://www.knornahrad.cz/website/img/ikona_sipka_selectbox.svg') center/cover no-repeat;
    transform: rotate(180deg);
}

details[open] summary::after {
    transform: rotate(0);
}

details {
    padding: 0.6rem 1.2rem;
}

details summary {
    cursor: pointer;
    color: var(--cervena);
    text-decoration: underline;
    margin-bottom: 0.5rem;
}

details summary:hover {
    text-decoration: none;
}

details .obsah {
    background: #F0F3F6;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

details .obsah .boxlevy {
    flex-basis: 67%;
    padding: 1rem;
}

details .obsah .boxlevy p.adresa {
    position: relative;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    color: var(--modra);
    font-weight: 600;
    padding-left: 1.2rem;
}

details .obsah .boxlevy p.adresa::before {
    content: '';
    width: 0.8rem;
    height: 0.8rem;
    position: absolute;
    left: 0;
    top: 0.3rem;
    background: url('https://www.knornahrad.cz/website/img/ikona_adresa.svg') center/cover no-repeat;
}
details .obsah .boxlevy a.web {
    display: inline-block;
    padding-left: 1.2rem;
    position: relative;
    margin-top: 0.5rem;
}
details .obsah .boxlevy a.web::before {
    content: '';
    width: 0.8rem;
    height: 0.8rem;
    position: absolute;
    left: 0;
    top: 0.2rem;
    background: url('https://www.knornahrad.cz/website/img/ikona_web.svg') center/cover no-repeat;
}

details .obsah .boxpravy {
    flex-basis: 27%;
    display: flex;
    align-items: center;
}

details .obsah .boxpravy a {
    display: block;
    width: 100%;
    padding-top: 65%;
    overflow: hidden;
    position: relative;
}

details .obsah .boxpravy a img {
    width: 110%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.box_podpisy.banner {
    display: block;
    box-shadow: none;
       padding: 0;
        max-width: 800px;
        margin-top: 5rem;
        width:100%;
}
p.subnadpisek {
    margin-top: 0;
    margin-bottom: 0.5rem;
    color: var(--svetlemodra);
}

/* KONTAKT */
section.kontakt {
    padding: 5rem var(--padding);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    align-items: flex-start;
}

section.kontakt::before {
    content: '';
    width: 100%;
    height: 13rem;
    background: var(--modra);
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}


section.kontakt .kontaktlevy {
    flex-basis: 31%;
    background: white;
    box-shadow: 0px 3px 8px #0000001A;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.kontakt .kontaktlevy img.kont {
    width: 100%;
    height: auto;
}

section.kontakt .kontaktlevy p {
    text-align: center;
}
a.email {
    position: relative;
    display: inline-block;
    padding: 4rem 1rem 2rem 1rem;
    color: var(--modra);
    font-family: var(--bold);
    text-decoration: none;
    font-size: 1.2rem;
    transition: 0.2s all ease-in;
}
a.email::before {
    content: '';
    width: 1.5rem;
    height: 1rem;
    position: absolute;
    top: 2.5rem;
    left: 50%;
    transform: translateX(-50%);
    background: url('https://www.knornahrad.cz/website/img/ikona_mail.svg') center/cover no-repeat;
    transition: 0.2s all ease-in;
}
a.email:hover {
    text-decoration: underline;
}
a.email:hover::before {
   transform: translateX(-50%) scale(1.3);
}


section.kontakt .kontaktlevy .boxadresa {
    width: calc(100% - 3rem);
    margin-left: auto;
    margin-right: auto;
    border-top: 1px solid #E8E8E8;
    text-align: center;
    padding-top: 2rem;
    padding-bottom: 2rem;
}

section.kontakt .kontaktlevy .boxadresa p {
    color: var(--modra);
}
section.kontakt .kontaktlevy .boxadresa p.bold {
    font-family: var(--bold);
}

section.kontakt .kontaktform {
    flex-basis: 61%;
    box-shadow: 0px 3px 8px #0000001A;
    background: white;
    padding: 3rem;
}
section.kontakt .kontaktform h1 {
    color: var(--modra);
    font-size: 1.5rem;
    line-height: 1.2em;
}
section.kontakt .kontaktform h1.vlevo::before {
     left: 0;
}


/* KONTAKT KONEC*/



@media (max-width: 1500px) {
* { 
    --padding: 10vw;
}

}

@media (max-width: 1300px) {
 section.nadpis {
     padding-top: 2rem;
     padding-bottom: 2rem;
 }
 
    .formular_misto {

        max-width: 80%;
        padding: 1.5rem 2.5rem 2.5rem 2.5rem;
        margin-right: 0;
        margin-left: auto;
    }

    .formular_misto.pm2 {
        margin-left: 0;
        margin-right: auto;
    }

    main img.pravydoplnek {
        right: unset;
        left: 5vw;
    }
    main img.levydoplnek {
        right: 5vw;
        left: unset;
    }
    .mapa_kraju {
       
        max-width: 550px;
    }

    main img.pravydoplnek2, main img.levydoplnek2  {
        width: 4vw;
    }
    .flexnews {
        max-width: 980px;
        margin-left: auto;
        margin-right: auto;
    }
    .flexnews .box {
        flex-basis: 46%;
    }

    .flexnews .box.trojka {
        flex-basis: 100%;
        max-width: 700px;
        margin-left: auto;
        margin-right: auto;
        margin-top: 3rem;
        align-items: center;
    }
    .flexnews .box.trojka p.obsahnovinky {
        max-width: 500px;
        text-align: center;
    }
}

@media (max-width: 1100px) {

* { 
    --padding: 7vw;
}
    header.nabidka-fixni {
    padding: 0 var(--padding);
        height: 65px;
    }
main {
    margin-bottom: 0;
}

footer {
    position: static;
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: auto;
}

footer .box1 {
    grid-column: 1/2;
    grid-row: 1/2;
}
footer .box1 a.logofooter {
    max-width: 95px;
    margin-bottom: 2rem;
}

footer .box2 {
    grid-column: 2/3;
    grid-row: 1/3;
    justify-content: flex-end;
}

footer .box3 {
    padding-top: 1rem;
    grid-column: 1/2;
    grid-row: 2/3;
}
footer .box3 ul li {
   text-align: left;
}
p.autor {
    justify-content: flex-start;
}
img.pravydoplnek.umapykraju {
    display: none;
}
.tabulkakraju, .box_podpisy.banner  {
    max-width: 650px;
}
main img.pravydoplnek2, main img.levydoplnek2  {
    display: none;
}

}


@media (max-width: 1000px) {

header {
    height: 6rem;
}
main {
    padding-top: 6rem;
}

.menu ul li a {
    padding: 0 0 1rem 0;
}
.menu ul li a::after {
    bottom: 0.6rem;
}
section.rozcestnik .box_podpisy {
    padding: 2rem;
}
.box_podpisy .boxik {
    flex-basis: calc(50% - 1rem);
    padding: 2rem;
}
.menu ul li {
    padding: 0 0.4rem;
}

.flexnovinky a.novinky img {
    width: 220px;
}



}
@media (max-width: 900px) {

    section.kontakt .kontaktlevy {
        flex-basis: 40%;
    }

    section.kontakt .kontaktform {
        flex-basis: 52%;
        padding: 2rem;
    }

    form.formgrid.vkontaktu {
        grid-template-columns: 1fr;
    }
    form.formgrid.vkontaktu .full {
        grid-column: 1/2;
    }
    section.kontakt .kontaktform h1 {
        font-size: 1.3rem;
        line-height: 1.4em;
    }
    .flex_zapojit .box.levy .obalcta {
     flex-direction: column;
        align-items: center;
    }
    .flex_zapojit a.cta:nth-child(1) {
        margin-bottom: 1rem;
    }
    .flex_zapojit .box.pravy {
        padding: 1.5rem;
        flex-wrap: nowrap; 
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
    }
    .flex_zapojit .box.levy {
        padding: 1.5rem;
    }
}

@media (max-width: 850px) {
    * {
        font-size: 15px;
    }

    p, strong, a {
        font-size: 1rem;
    }

    h1, .h1 {
        font-size: 1.8rem;
    }
    
    h2, .h2 {
        font-size: 1.6rem;
    }
    
    h3, .h3 {
        font-size: 1.371rem;
    }
    
    h4, .h4 {
        font-size: 1.2rem;
    }
    
}




@media (max-width: 767px) {
span.sipka_dolu {
      display: none;
}

main {
    padding-top: 65px;
}

header, header.nabidka-fixni {
    position: fixed;
    top: 0;
    z-index: 101;
    width: calc(100% - 120px);
    padding-right: 0;
    left: 0;
    transform: unset;
    height: 60px;
    justify-content: space-between;
    background: none;
}

header.nabidka-fixni {
    border-bottom: none;
}

header a.logo {
    display: block;
    width: 42px;
    padding-bottom: 0.6rem;
}
a.logo img.namobilu {
    display: block;
}
a.logo img {
    width: 115px;
    height: auto;
    position: absolute;
    left: var(--padding);
}
a.logo img.desktop {
    display: none;
}
header::after {
   display: none;
}
.horninabidka {
   display: none;
}

.horninabidka.mobil {
    display: flex;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}
.horninabidka.mobil a {
    border-radius: 5px;
}
.horninabidka.mobil a.eshop {
    margin-right: 2rem;
}

img.pm1, img.pm3 {
    display: none;
}
img.pm2 {
    display: block;
    width: 100%;
    height: auto;
} 

.formular_misto {
    max-width: 100%;
    padding: 1.5rem 2.5rem 2.5rem 2.5rem;
    margin-right: 0;
    margin-left: auto;
}
.obalnovinky {
    padding: 2.5rem;
}

section.postup {
    padding-top: 3rem;
}

.obalfb {
    width: 270px;
}

main img.pravydoplnek, main img.levydoplnek {
    display: none;
}

section.rozcestnik .box_podpisy .boxik {
flex-basis: 100%;
}
section.rozcestnik .box_podpisy .boxik:nth-child(1) {
   margin-bottom: 2rem;
}
.flexnovinky a.novinky img {
    width: 170px;
}
input[type=checkbox] {
    width: 2.5rem;
    height: 2.5rem;
    margin: -0.6rem 0.5rem 0 0;
}
section.flex2 {
    justify-content: center;
}
section.flex2 .box {
    flex-basis: 100%;
    max-width: 450px;
}
section.flex2 .box.levy {
    padding-right: 0;
}

section.kontakt {
    justify-content: center;
    padding-top: 3rem;
}
section.kontakt .kontaktlevy, section.kontakt .kontaktform {
    flex-basis: 100%;
    max-width: 375px;

}
section.kontakt .kontaktform {
    margin-top: 3rem;
}

section.kontakt .kontaktlevy img.kont {
    width: 100%;
    height: 220px;
    object-fit: cover;
}



}

@media (max-width: 650px) {
    form.formgrid {
        grid-template-columns: 1fr;
    }
    .full {
        grid-column: 1/2;
    }

footer {
    display: block;
}
footer .box1 {
    align-items: center;
    padding-bottom: 3rem;
}

footer .box2 {
    justify-content: center;
}
footer .box3 {
    padding-top: 2rem;
}
.obalfb {
    width: 285px;
}

footer .box3 ul li {
    text-align: center;
}

p.autor {
    justify-content: center;
}
.flexnovinky {
    flex-direction: column;
}
.flexnovinky a.novinky img {
    width: 100%;
    height: auto;
    margin-top: 1rem;
    margin-left: 0;
}
.obalnovinky {
    padding-bottom: 0.5rem;
}
.flex_zapojit .box.pravy, .flex_zapojit .box.levy {
    flex-basis: 100%;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
}
.flex_zapojit .box.pravy {
    margin-top: 2rem;
}
.flexnews .box, .flexnews .box.trojka {
    flex-basis: 100%;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
}
.flexnews .box:nth-child(1) {
    margin-bottom: 2rem;
}
.obalfot {
    grid-template-columns: repeat(2, 1fr);
}
}

@media (max-width: 600px) {
.flex.plakat .box_levy, .flex.plakat .box_pravy {
    flex-basis: 100%;
}
.flex.plakat .box_pravy img {
    width: unset;
    max-width: 100%;
    margin: auto;
    display: block;
}
p.tucne {
    font-size: 1.1rem;
}

input, label.phone::after, select  {
    font-size: 16px;
}
label.phone input {
    padding-left: 4rem;
}
.box_podpisy.banner {
    margin-bottom: 1rem;
}
section.titulni {
    min-height: unset;
}

section.titulni .titlevy, section.titulni .titpravy {
    flex-basis: 100%;
}
section.titulni .titpravy {
    margin-top: 3rem;
    padding-top: 65%;
}
section.titulni .titpravy img {
    top: 75%;
}

}

@media (max-width: 550px) {

    .horninabidka.mobil a.eshop {
        display: none;
    }
    section.rozcestnik .box_podpisy{
        width: 100%;
    }
}

@media (max-width: 400px) {
    section.postup, section.novinky, section.kontakt, section.zapojtese.copotrebuji {
      padding-left: 0;
      padding-right: 0;
    }
    section.kontakt .kontaktlevy, section.kontakt .kontaktform {
        max-width: unset;
    }
    section.kontakt .kontaktlevy img.kont {
    
        height: 190px;
    }


    section.novinky{
        padding-top: 1rem;
    }
    .flexnovinky a.fancybox {
        pointer-events: none;
    }


    .formular_misto, .obalnovinky {
        padding-left: var(--padding);
        padding-right: var(--padding);
        box-shadow: unset;
    }

    img.pm2 {
        display: none;
    }

    .stinne {
        box-shadow: none;
    }
details .obsah .boxlevy, details .obsah .boxpravy {
    flex-basis: 100%;
}

details .obsah .boxpravy a {
    padding-top: 0;
    position: static;
    pointer-events: none;
}

details .obsah .boxpravy a img {
    width: 100%;
    position: static;
    top: unset;
    left: unset;
    transform: unset;

}
section.mapakraju {
    padding-left: 0;
    padding-right: 0;
}
.tabulkakraju {
    padding-top: 4.1rem;
}
section.titulni .titlevy h1 {
    font-size: 1.6rem;
    line-height: 1.3em;
}
section.kontakt .kontaktform {
    box-shadow: none;
}
.flexnews .box, .flexnews .box.trojka {
    box-shadow: unset;
    border-bottom: 1px solid #E8E8E8;
}
.obalfot {
    grid-template-columns: 1fr;
}
}




@media (min-width: 501px) and (max-width: 650px) {

    * { 
        --padding: 10vw;
    }
}

@media (min-width: 1921px) {

* { 
    --padding: 15vw;}

}



@media (min-height: 1300px) {

}


@media (max-width: 850px) and (min-height: 900px) {
  
}

@media (min-width: 1950px) {
    main::before {
 
        width: 100%;}
    
    
}

@media (min-height: 990px){
    section.titulni {

        min-height: unset;
    }

}

.mt0 {
    margin-top: 0 !important;
}

.mt1 {
    margin-top: 1rem;
}
.mt1-5 {
    margin-top: 1.5rem;
}
.mt2 {
    margin-top: 2rem;
}
.mt3 {
    margin-top: 3rem;
}
.mt4 {
    margin-top: 4rem;
}
.ml2 {
    margin-left: 2rem;
}
.mb2 {
    margin-bottom: 2rem;
}

.pb3 {
    padding-bottom: 3rem;
}