.osoby_uvod {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    grid-gap: 2rem;
}

.osoby {
    text-align: center;
    display: inline-block;
}

.osoby img {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    margin: auto;
}

.refvypis {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
    grid-gap: 4rem;
}

.reference {
    font-size: 90%;
    text-align: center;
}


/*.reference:nth-last-child(1):nth-child(odd) {
	grid-column: 2 / span 1;
}
*/

.reference h2 {
    padding: 0;
    margin: 0;
    text-align: center;
    font-size: 200%;
    line-height: 90%;
    text-transform: none;
}

.reference p {
    margin:
}

.reference img {
    margin: 10px auto;
    padding: 0;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

a.cudl {
    background: #c10a2f;
    color: #fff !important;
    font-size: 110%;
    margin: 30px auto;
    padding: 15px 30px;
    text-transform: uppercase;
    text-decoration: none;
    display: inline-block;
    font-weight: 600;
}

a.cudl:hover {
    background: #000;
    color: #fff;
}

.clanek {
    width: 100%;
    padding: 10px 10px;
    margin: 0 0 40px 0;
    line-height: 150%;
    display: inline-block;
    vertical-align: top;
    text-align: center;
    font-size: 100%;
}

.clanek img {
    margin: 0 !important;
    border: 0;
}

.clanek h2 {
    padding: 10px 0;
    margin: 0;
}

.clanek h2,
.clanek h2 a {
    text-decoration: none;
    text-align: center;
    font-size: 200%;
    color: #51da3f;
}

.clanek a:hover {
    color: #acc80d
}

.popis h3 {
    background: #c10a2f;
    color: #fff;
    width: 100%;
    padding: 20px 0;
    display: block;
}

.informace {
    width: 49%;
    padding: 5px 20px;
    display: inline-block;
    vertical-align: top;
    min-height: 330px;
}

.informacesto {
    width: 100%;
    padding: 5px 20px;
    display: block;
    min-height: 130px;
}

.popis {
    width: 100%;
    margin: 30px 0;
    padding: 5px;
    border: #ddd solid 1px;
    display: block;
    background: #fff;
}

@media only screen and (max-width:900px) {
    .kat_polozka {
        width: calc(49% - 15px);
        margin: 0 7px 20px;
    }
}

@media only screen and (max-width:768px) {
    .clanek {
        width: 100%;
        padding: 0 15px;
        margin: 10px 0 30px;
    }
    .clanek img {
        display: block;
        float: none !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }
    .clanek h2 {
        padding: 20px 0 0;
        text-align: center;
        line-height: 120%
    }
    .informace {
        width: 100%;
        padding: 5px 0;
        display: block;
        float: none !important;
    }
    .kat_polozka {
        width: 400px;
        margin: 0 7px 20px;
    }
}

@media only screen and (max-width:510px) {
    .refvypis {
        grid-template-columns: 1fr;
    }
}