/* ------------------------------ general ------------------------------ */
/* icon fonts */
@font-face {
    font-family: 'icomoon';
    src: url('../fonts/icomoon.eot?o0d43t');
    src: url('../fonts/icomoon.eot?o0d43t#iefix') format('embedded-opentype'), url('../fonts/icomoon.ttf?o0d43t') format('truetype'), url('../fonts/icomoon.woff?o0d43t') format('woff'), url('../fonts/icomoon.svg?o0d43t#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}
[class^="icon-"],
[class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-25:before,
.icon-900:before {
    content: "\e900";
    color: #00418d;
}
.icon-901:before {
    content: "\e901";
    color: #00b6e8;
}
.icon-24:before,
.icon-902:before {
    content: "\e902";
    color: #00418d;
}
.icon-10:before,
.icon-903:before {
    content: "\e903";
    color: #00418d;
}
.icon-904:before {
    content: "\e904";
    color: #00b6e8;
}
.icon-905:before {
    content: "\e905";
    color: #00b6e8;
}
.icon-906:before {
    content: "\e906";
    color: #00b6e8;
}
.icon-7:before,
.icon-907:before {
    content: "\e907";
    color: #00418d;
}
.icon-11:before,
.icon-908:before {
    content: "\e908";
    color: #00418d;
}
.icon-14:before,
.icon-909:before {
    content: "\e909";
    color: #00418d;
}
.icon-15:before,
.icon-90a:before {
    content: "\e90a";
    color: #00418d;
}
.icon-12:before,
.icon-90b:before {
    content: "\e90b";
    color: #00418d;
}
/* general */
html,
body {
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: 'Open Sans', sans-serif;
}
button {
    border: none;
    background: none;
}
button:focus,
button:active {
    outline: none;
}
.blue_button {
    padding: 12px 25px !important;
    border: none !important;
    border-radius: 50px !important;
    background: #5eb5e5 !important;
    font-size: 14px !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
    color: #ffffff !important;
}
.blue_button.blue_1 {
    background: #0164bd;
}
.blue_button.blue_2 {
    background: #0174c6;
}
.blue_button.blue_3 {
    background: #0185ce;
}
.blue_button.blue_4 {
    background: #00a3de;
}
.blue_button.blue_5 {
    background: #07549e;
}
.blue_button.blue_alt_6 {
    background: #00b0e5;
}
.blue_button:hover {
    -webkit-box-shadow: 0px 0px 20px rgba(255, 255, 255, 0.5) !important;
    -moz-box-shadow: 0px 0px 20px rgba(255, 255, 255, 0.5) !important;
    box-shadow: 0px 0px 20px rgba(255, 255, 255, 0.5) !important;
    text-shadow: 0 0 2px white !important;
}
.blue_button .glyphicon {
    font-size: 12px;
    margin-left: 10px;
}
.wrapper {
    position: relative;
    max-width: 1255px;
    width: 90%;
    height: 100%;
    margin: 0 auto;
    padding: 30px;
    box-sizing: border-box;
}
p {
    color: #ffffff;
    font-size: 14px;
}
.articleDetail img{
    max-width: 100%;
}
h1 {
    text-align: center;
    color: #2f8dcd;
}
a {
    font-size: 16px;
    color: #ffffff;
    text-decoration: none;
}
a:hover,
a:active,
a:focus {
    color: black;
    text-decoration: none;
}
header {
    width: 100%;
    z-index: 10;
    position: fixed;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}
header .wrapper {
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}
header .logo {
    margin-top: -10px;
    opacity: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    width: 80px;
}
header.homepage .logo {
    opacity: 1;
}
header .rest_right {
    text-align: right;
    float: right;
    padding-top: 10px;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}
header .rest_right > * {
    display: inline-block;
}
header #top_menu {
    list-style-type: none;
}
header #top_menu li {
    display: inline-block;
    margin-right: 20px;
}
header #top_menu li:last-of-type {
    margin-right: 0;
}
header #top_menu li.selected a {
    color: #00b0e5;
}
header #top_menu li a {
    color: white;
    font-weight: bold;
}
.green_button,
header #top_menu li a.konzult_zdarma {
    background: #05d488 !important;
    background: -moz-linear-gradient(left, #05d488 0%, #02c93f 100%) !important;
    background: -webkit-linear-gradient(left, #05d488 0%, #02c93f 100%) !important;
    background: linear-gradient(to right, #05d488 0%, #02c93f 100%) !important;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#05d488', endColorstr='#02c93f', GradientType=1) !important;
    padding: 15px 25px !important;
    margin-left: 30px;
    color: white !important;
    font-weight: bold !important;
    border-radius: 30px !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
}
.green_button:hover ,
header #top_menu li a.konzult_zdarma:hover {
    -webkit-box-shadow: 0px 0px 20px rgba(5, 212, 136, 0.5) !important;
    -moz-box-shadow: 0px 0px 20px rgba(5, 212, 136, 0.5) !important;
    box-shadow: 0px 0px 20px rgba(5, 212, 136, 0.5) !important;
    text-shadow: 0 0 3px white !important;
    color: white !important;
}
header #top_menu li a:hover {
    color: #004587;
}
header .mobile_menu {
    display: none;
    text-align: center;
    background: white;
}
header .mobile_menu > div {
    padding: 7px;
}
header .mobile_menu > div:last-of-type {
    padding-bottom: 20px;
}
header .mobile_menu a {
    color: black;
    font-weight: bold;
    font-size: 18px;
}
header .mobile_menu a.konzult_zdarma {
    color: #02c93f;
}
header .mobile_menu a:hover {
    color: #004587;
}
header #top_menu .selected a,
header .mobile_menu .selected a {
    color: #004587;
}
header .menu_toggler {
    border: none;
    background: none;
    font-size: 30px;
    display: none;
    padding: 0;
    margin-top: 2px;
}
header.main-head #top_menu li a:not(.konzult_zdarma) {
    color: black;
}
header.main-head #top_menu li a:not(.konzult_zdarma):hover {
    color: #004587;
}
header.main-head #top_menu li.selected a {
    color: #00b0e5;
}
header.head_bg {
    background: white;
}
header.head_bg .wrapper {
    padding-top: 20px;
    padding-bottom: 10px;
}
header.head_bg .logo {
    opacity: 1;
}
header.head_bg #top_menu li a:not(.konzult_zdarma) {
    color: black;
}
header.head_bg #top_menu li a:not(.konzult_zdarma):hover {
    color: #004587;
}
header.head_bg #top_menu li.selected a {
    color: #00b0e5;
}
#head_spacer {
    height: 80px;
}
.logo img {
    width: auto;
    height: 50px;
}
.top_description {
    text-align: center;
    position: relative;
    z-index: 5;
}
.top_description h1 {
    color: white;
    font-weight: bold;
    margin-bottom: 25px;
}
#side_path {
    text-align: left;
    margin-top: 20px;
}
#side_path a {
    font-size: 12px;
    color: #7fa9d0;
    text-transform: uppercase;
}
#side_path a.selected {
    color: white;
}
#side_path .glyphicon {
    padding: 0 5px;
    font-size: 8px;
    color: #7fa9d0;
    position: relative;
    top: -1px;
}
#top_menu_list {
    text-align: center;
    padding-top: 30px;
    margin-bottom: -30px;
}
#top_menu_list .filter_descriptor {
    font-size: 16px;
    margin-bottom: 15px;
}
#top_menu_list .filter-head {
    display: none;
}
@media (min-width: 992px) {
    #top_menu_list .filter_descriptor {
        display: none;
    }
    #top_menu_list .filter-head {
        display: inline-block;
        font-weight: 600;
    }
}
#top_menu_list ul {
    list-style-type: none;
    padding-left: 0;
}
#top_menu_list ul li {
    display: inline-block;
    padding: 0 10px;
}
#top_menu_list ul li.selected a {
    padding: 10px 20px;
    background: #00b6e8;
    color: white;
}
#top_menu_list ul li a {
    color: #a9d9ff;
    border-radius: 20px;
}
#top_menu_list ul li a:hover {
    color: white;
}
.on_mobile {
    display: none;
}
/* pupup form */
#popup_form .modal-content {
    padding: 20px 50px;
    border-radius: 10px;
}
#popup_form .modal-content button.close {
    font-size: 30px;
}
#popup_form .modal-content h2 {
    font-weight: bold;
    margin-top: 10px;
    margin-bottom: 20px;
    margin-left: -7px;
}
#popup_form .modal-content label {
    display: block;
    margin-bottom: 2px;
    font-weight: normal;
    font-size: 10px;
    color: #808080;
    cursor: pointer;
}
#popup_form .modal-content span{
    margin-bottom: 2px;
    font-weight: normal;
    font-size: 10px;
    color: #808080;
    cursor: pointer;
}
#popup_form .modal-content label .required {
    color: red;
}
#popup_form .modal-content input[type='text'],
#popup_form .modal-content textarea {
    border: none;
    border-bottom: 1px solid #e0e0e0;
    outline: none;
    font-size: 18px;
    width: 100%;
}
#popup_form .modal-content textarea {
    resize: none;
}
#popup_form .modal-content form > div {
    padding: 10px 0;
}
#popup_form .modal-content form > div.is_error input {
    border-color: red;
}
#popup_form .modal-content .error_area {
    color: red;
    font-size: 10px;
    padding-top: 5px;
}
#popup_form .modal-content .pripojit_soubor label {
    float: right;
    border: 1px solid #e0e0e0;
    padding: 5px 10px;
    margin-top: -5px;
    border-radius: 50px;
    font-size: 12px;
}
#popup_form .modal-content .pripojit_soubor input {
    display: none;
}
#popup_form .modal-content .send_button {
    padding-top: 30px;
    padding-bottom: 20px;
}
#popup_form .modal-content .send_button button {
    width: 100%;
    color: white;
}
#popup_form .modal-content .povinna_pole {
    padding-bottom: 0px;
    text-align: right;
}
/* index */
.slogan {
    text-align: right;
    font-weight: bold;
    position: relative;
    margin-top: 20px;
    z-index: 5;
    opacity: 0;
    -webkit-transition: opacity 2s;
    transition: opacity 2s;
    transition-timing-function: ease-in;
}
.slogan .bigger_s {
    font-size: 66px;
    line-height: 1.2;
}
@media(max-width: 992px){
    .slogan .bigger_s {
        font-size: 46px;
    }
}
.slogan.now_shown {
    opacity: 1;
}
.scroll_down_piktogram {
    position: absolute;
    z-index: 4;
    width: 100%;
    text-align: right;
    -webkit-animation-name: scroll_wobble;
    /* Safari 4.0 - 8.0 */
    -webkit-animation-duration: 1s;
    /* Safari 4.0 - 8.0 */
    animation-name: scroll_wobble;
    animation-duration: 1s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
}
.scroll_down_piktogram .wrapper {
    padding-top: 0;
    padding-bottom: 0;
}
/* Safari 4.0 - 8.0 */
@-webkit-keyframes scroll_wobble {
    0% {
        margin-top: 0;
    }
    50% {
        margin-top: 15px;
    }
    100% {
        margin-top: 0;
    }
}
/* Standard syntax */
@keyframes scroll_wobble {
    0% {
        margin-top: 0;
    }
    50% {
        margin-top: 15px;
    }
    100% {
        margin-top: 0;
    }
}
#sec-proc-s-nami,
#sec-sluzby,
#sec-portfolio,
#sec-blog {
    position: relative;
    z-index: 5;
    margin-top: 20px;
    text-align: center;
}
#sec-proc-s-nami h2,
#sec-sluzby h2,
#sec-portfolio h2,
#sec-blog h2 {
    font-size: 34px;
    font-weight: bold;
    padding: 20px 0;
}
#sec-proc-s-nami {
    padding-top: 10%;
}
#sec-proc-s-nami > .wrapper > p {
    font-size: 18px;
}
#sec-proc-s-nami h3 {
    font-size: 22px;
}
#sec-proc-s-nami button {
    margin-top: 30px;
    margin-bottom: 30px;
}
#sec-proc-s-nami .row {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
#sec-proc-s-nami .row > div {
    flex: 1;
}
#sec-proc-s-nami .extended_hidden {
    display: none;
}
#sec-proc-s-nami .card {
    border: 2px solid #1a60ad;
    border-radius: 15px;
    padding: 25px 15px;
    height: 100%;
    opacity: 0;
}
#sec-proc-s-nami .card .icomoon:before {
    font-size: 60px;
}
#sec-sluzby .row.nudle_container {
    position: relative;
    display: block;
}
#sec-sluzby .row.nudle_container img {
    width: 100%;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    top: 25px;
}
#sec-sluzby h3 {
    margin-top: 20px;
    font-size: 22px;
}
#sec-sluzby .row {
    display: table;
}
#sec-sluzby .row > div {
    display: table-cell;
}
#sec-sluzby .col-sm-6 {
    padding-top: 30px;
    padding-bottom: 30px;
}
#sec-sluzby .col-sm-6 h3 {
    margin-top: 30px;
    margin-bottom: 20px;
}
#sec-sluzby .col-sm-6 a {
    color: white;
    white-space: nowrap;
    padding-right: 20px;
}
#sec-sluzby .col-sm-6 > p {
    margin-bottom: 30px;
}
#sec-sluzby .icomoon:before {
    border: 3px solid #00b6e8;
    background: #00a3de;
    border-radius: 50%;
    font-size: 35px;
    display: inline-block;
    width: 78px;
    height: 78px;
    line-height: 72px;
}
#sec-sluzby .icomoon.ico-first:before {
    background: #0164bd;
    border-color: #0174c6;
}
#sec-sluzby .icomoon.ico-second:before {
    background: #0174c6;
    border-color: #008fd4;
}
#sec-sluzby .icomoon.ico-third:before {
    background: #0185ce;
    border-color: #00a3de;
}
#sec-portfolio {
    position: relative;
    z-index: 5;
    text-align: center;
} 
#sec-portfolio .wrapper > div {
    vertical-align: middle;
}
#portfolio_carousel .carousel-inner{
    padding-bottom: 50px;
}
#portfolio_carousel .carousel-indicators{
    bottom: 0px;
}
#portfolio_carousel .carousel-indicators li{
    font-size: 0;
}
#portfolio_carousel .carousel-indicators li.slick-active{
    background: white;
}
#sec-portfolio .wrapper > div.port_arrow {
    width: 5%;
    font-size: 40px;
}
#sec-portfolio .col-sm-4,
#sec-portfolio .col-sm-6 {
    padding-left: 0;
    padding-right: 0;
}
#sec-portfolio .mediums_row {
    padding-top: 1%;
}
#sec-portfolio .img_container .img_description {
    position: absolute;
    left: 0;
    top: 0;
    padding: 5%;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    display: flex;
    justify-content: center;
    align-items: stretch;
}
#sec-portfolio .img_container .img_description > div {
    width: 100%;
    position: relative;
}
#sec-portfolio .img_container .img_description .tags a {
    color: #7fa9d0;
}
#sec-portfolio .img_container .img_description .tags a:hover {
    color: white;
}
#sec-portfolio .img_container .img_description a.blue_button {
    display: inline-block;
    margin-top: 10px;
    color: white;
    position: absolute;
    inset: 0;
    opacity: 0;
}
#sec-portfolio .img_container.small_p {
    display: inline-block;
    width: 49%;
    position: relative;
}
#sec-portfolio .img_container.big_p,
#sec-portfolio .img_container.medium_p {
    position: relative;
}
#sec-portfolio .img_container:hover .img_description {
    opacity: 1;
    z-index: 2;
}
@media (min-width: 768px){
    #sec-portfolio .img_container:hover img {
        /*-webkit-filter: blur(4px) brightness(0.3);
        filter: blur(4px) brightness(0.3);*/
        transform: scale(1);
    }
}
#sec-portfolio img {
    padding: 5px;
    width: 99%;
    border-radius: 20px;
    transform: scale(0.95);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}
#sec-portfolio img.small_p {
    display: inline-block;
    width: 49%;
}
#sec-portfolio .to_refs_row {
    margin-top: 30px;
}
#sec-portfolio .to_refs_row a {
    padding: 15px 40px;
    color: white;
}
#sec-blog,
#sec_ceo {
    position: relative;
    z-index: 5;
}
#sec-blog .signature,
#sec_ceo .signature {
    padding: 20px;
    width: 100%;
    max-width: 212px;
}
#sec-blog .photo,
#sec_ceo .photo {
    text-align: center;
}
#sec-blog .photo img,
#sec_ceo .photo img {
    width: 100%;
    max-width: 500px;
}
#sec_ceo {
    margin-top: 60px;
    color: #7fa9d0;
}
#sec_ceo .photo .photo_caption {
    position: absolute;
    margin-left: 10%;
    margin-top: -29%;
    font-size: 1.2vw;
    text-align: left;
    color: white;
}
#sec_ceo .photo .photo_caption .main_caption {
    font-size: 2vw;
    font-weight: bold;
}
#sec-blog .date {
    margin-top: 25px;
    margin-bottom: 15px;
    color: #7fa9d0;
}
#sec-blog h3 {
    font-size: 20px;
}
#sec-blog img {
    width: 100%;
    border-radius: 15px;
}
#sec-blog .blogposts > div {
    margin-top: 40px;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}
#sec-blog .blogposts > div a {
    color: white;
}
#sec-blog .blogposts > div a.blue_button {
    opacity: 0;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}
#sec-blog .blogposts > div:hover {
    margin-top: 20px;
}
#sec-blog .blogposts > div:hover a.blue_button {
    opacity: 1;
}
#sec-blog .blogposts > div .tags {
    color: #7fa9d0;
    margin-top: 20px;
    margin-bottom: 30px;
}
#sec-blog .blogposts > div .tags a {
    color: #7fa9d0;
    font-size: 14px;
}
#sec-blog .blogposts > div .tags a:hover {
    color: white;
}
#sec-blog .prejit_do_blogu {
    margin-top: 30px;
}
#sec-blog .prejit_do_blogu a {
    color: white;
    padding: 12px 50px;
    cursor: pointer;
}
#sec-blog.on_blog_page .date:before {
    content: '\e023';
    font-family: 'Glyphicons Halflings';
    padding-right: 7px;
    position: relative;
    top: 2px;
}
#sec-blog.on_blog_page img {
    /* max-height: 250px; */
    border-radius: 20px;
}
#sec-blog.on_blog_page .blogposts .blue_button {
    padding: 12px 50px;
}
/* sluzby */
#sec_with_sidebar {
    position: relative;
    z-index: 5;
}
#sec_with_sidebar .sluzby_menu_back {
    display: none;
}
#sec_with_sidebar .sluzby_menu_back a {
    color: white;
}
#sec_with_sidebar .sluzby_menu_back a:hover {
    color: #00b0e5;
}
#sec_with_sidebar #main_sidebar_list > div {
    margin: 20px 0;
}
#sec_with_sidebar #main_sidebar_list > div.selected .menu_title {
    border-color: #00b6e8;
    background-image: url('../img/menu_sel_arrow.png');
    background-repeat: no-repeat;
    background-size: 100% 100%;
}
#sec_with_sidebar #main_sidebar_list > div a {
    color: white;
}
#sec_with_sidebar #main_sidebar_list > div a:hover {
    color: #00b0e5;
}
#sec_with_sidebar #main_sidebar_list > div .menu_title {
    border-left: 2px solid #0061aa;
    padding: 10px 0 10px 15px;
    cursor: pointer;
    font-size: 16px;
}
#sec_with_sidebar #main_sidebar_list > div .menu_body {
    padding-left: 15px;
    padding-top: 10px;
    color: #a9d9ff;
}
#sec_with_sidebar #main_sidebar_list > div .menu_body .undermenu {
    display: none;
}
#sec_with_sidebar #main_sidebar_list > div .menu_body .undermenu div {
    padding: 5px 0;
    margin-left: 5px;
}
#sec_with_sidebar #main_sidebar_list > div .menu_body .undermenu div:before {
    content: '\e258';
    font-family: 'Glyphicons Halflings';
    color: #0067b4;
    font-size: 10px;
    position: absolute;
    margin-left: -15px;
    margin-top: 4px;
}
#sec_with_sidebar #main_sidebar_list > div .menu_body a {
    color: #a9d9ff;
}
#sec_with_sidebar #main_sidebar_list > div .menu_body a:hover {
    color: #00b0e5;
}
#sec_with_sidebar .sdbr_top_img img {
    width: 100%;
}
#sec_with_sidebar .sdbr_title {
    margin-top: 30px;
    font-size: 18px;
}
#sec_with_sidebar .sdbr_content p {
    margin-top: 10px;
    margin-bottom: 10px;
}
#sec_with_sidebar .sdbr_content p.okay_note {
    color: white;
}
#sec_with_sidebar .sdbr_content p.okay_note:before {
    content: '\e013';
    font-family: 'Glyphicons Halflings';
    font-size: 12px;
    color: #05d488;
    padding-right: 8px;
}
#sec_with_sidebar #target_sluzby {
    display: none;
}
.sluzby_top_heading:not(.heading_main) {
    display: none;
}
#sluzby_cesta {
    text-align: center;
    position: relative;
    z-index: 5;
    display: none;
}
#sluzby_cesta .project_headline h2 {
    font-size: 28px;
    padding-bottom: 30px;
}
#sluzby_cesta .nudle_container {
    position: relative;
}
#sluzby_cesta .nudle_container img {
    width: 100%;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    top: -10px;
}
#sluzby_cesta .round_number {
    border-radius: 50px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    background: #0164bd;
    margin: auto;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 40px;
}
#sluzby_cesta .round_number.blue_1_5 {
    background-color: #0168bf;
}
#sluzby_cesta .round_number.blue_2 {
    background-color: #0174c6;
}
#sluzby_cesta .round_number.blue_3 {
    background-color: #0185ce;
}
#sluzby_cesta .round_number.blue_alt_5 {
    background-color: #0095d7;
}
#sluzby_cesta .round_number.blue_alt_6 {
    background-color: #00b0e5;
}
#sluzby_cesta h2 {
    font-size: 18px;
}
#button_sjednat_konzultaci {
    position: relative;
    z-index: 5;
    text-align: center;
    margin-top: 50px;
}
#button_sjednat_konzultaci a {
    padding: 15px 40px;
    font-size: 16px;
    color: white;
}
/* portfolio */
#portfolio_detail_target {
    padding-bottom: 20px;
    position: relative;
    z-index: 20;
}
#portfolio_detail_target > div {
    display: none;
}
#portfolio_detail_target .container-fluid .row {
    display: flex;
}
#portfolio_detail_target .container-fluid .row > div:not(.port_details) {
    flex: 1;
}
#portfolio_detail_target .container-fluid .row > div:not(.port_details) .img_aligner {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}
#portfolio_detail_target .port_details {
    text-align: left;
    padding-left: 20px;
    flex: 2;
}
#portfolio_detail_target .port_details h2 {
    margin-top: 10px;
}
#portfolio_detail_target .port_details p b {
    color: white;
}
#portfolio_detail_target .port_details .tags a {
    color: #7fa9d0;
    font-size: 14px;
    margin-right: 10px;
}
#portfolio_detail_target .port_details .tags a:hover {
    color: white;
}
#portfolio_detail_target .port_details .close_button {
    position: absolute;
    right: 0;
    font-size: 20px;
    width: 30px;
    height: 30px;
}
#portfolio_detail_target .port_details .close_button span {
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #fff;
    display: block;
    transform: rotate(45deg);
    top: 50%;
    left: 0;;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
#portfolio_detail_target .port_details .close_button span + span {
    transform: rotate(-45deg);
}
#portfolio_detail_target .port_details .close_button:hover span {

    transform: rotate(405deg);
}
#portfolio_detail_target .port_details .close_button:hover span + span {

    transform: rotate(-405deg);
}
#portfolio-detail{
    margin-bottom: 10px;
}
#portfolio-detail .carousel-indicators{
    bottom: -30px;
}
#modal .modal-content{
    overflow: hidden;
}
#modal .modal-content img{
    width: 100%;
}    
#modal .modal-dialog{
    top: 50%;
    transform: translateY(-50%);
}
#portfolio_carousel img,
#portfolio_carousel_mobile img {
    cursor: pointer;
}
#portfolio_carousel .carousel-control,
#portfolio_carousel_mobile .carousel-control {
    background: none;
}
#portfolio_carousel .carousel-control.left,
#portfolio_carousel_mobile .carousel-control.left {
    left: -5%;
}
#portfolio_carousel .carousel-control.left span,
#portfolio_carousel_mobile .carousel-control.left span {
    margin-left: -50%;
}
#portfolio_carousel .carousel-control.right,
#portfolio_carousel_mobile .carousel-control.right {
    right: -5%;
}
#portfolio_carousel .carousel-control.right span,
#portfolio_carousel_mobile .carousel-control.right span {
    margin-right: -50%;
}
#portfolio_carousel_mobile .carousel-control {
    background: none;
}
/* blog (taky vyse #sec-blog v indexu) */
#dalsi_blogposts {
    position: relative;
    z-index: 5;
    text-align: center;
    margin-top: 10px;
}
#dalsi_blogposts a {
    color: white;
    padding: 15px 100px;
}
#sec-blogpost {
    position: relative;
    z-index: 5;
    margin-top: -50px;
}
#sec-blogpost h1 {
    text-align: center;
    color: white;
    font-weight: bold;
}
#sec-blogpost h2 {
    font-size: 24px;
}
#sec-blogpost .date {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 40px;
    color: #7fa9d0;
}
#sec-blogpost .date:before {
    content: '\e023';
    font-family: 'Glyphicons Halflings';
    padding-right: 7px;
    position: relative;
    top: 2px;
}
#sec-blogpost .blog_top_image {
    display: block;
    margin: auto;
    width: 100%;
    max-width: 1255px;
    border-radius: 20px;
}
#sec-blogpost .bottom_line > div {
    display: inline-block;
    width: 49%;
    vertical-align: middle;
}
#sec-blogpost .bottom_line > div.tagline a {
    color: #7fa9d0;                   
    margin-right: 10px;
}
#sec-blogpost .bottom_line > div.tagline a:hover {
    color: white;
}
#sec-blogpost .bottom_line > div.tagline b {
    color: white;
}
#sec-blogpost .bottom_line > div.shareline {
    text-align: right;
}
#sec-blogpost .bottom_line > div.shareline a {
    border-radius: 50px;
    background: #2660ad;
    color: #001a43;
    display: inline-block;
    width: 27px;
    height: 27px;
    line-height: 27px;
    text-align: center;
    margin-left: 5px;
}
#sec-blogpost .bottom_line > div.shareline a .fa {
    font-weight: bolder;
}
#sec-blogpost .bottom_line > div.shareline a .fa-facebook {
    margin-left: -1px;
}
.zpet_na_blog {
    text-align: center;
    position: relative;
    z-index: 5;
    margin-top: 10px;
}
.zpet_na_blog a {
    color: white;
}
.zpet_na_blog .glyphicon {
    margin-left: 0;
    padding-right: 5px;
}
/* images & backgrounds */
.top_gradient {
    min-height: 400px;
    background: #e2f1fc;
    background: -moz-linear-gradient(top, #e2f1fc 7%, #ebe3dd 99%);
    background: -webkit-linear-gradient(top, #e2f1fc 7%, #ebe3dd 99%);
    background: linear-gradient(to bottom, #e2f1fc 7%, #ebe3dd 99%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e2f1fc', endColorstr='#ebe3dd', GradientType=0);
}
@media (min-width: 768px) {
    .top_gradient {
        min-height: 600px;
    }
}
.body_gradient {
    background: #004ea5;
    background: -moz-linear-gradient(top, #004ea5 0%, #000c28 100%);
    background: -webkit-linear-gradient(top, #004ea5 0%, #000c28 100%);
    background: linear-gradient(to bottom, #004ea5 0%, #000c28 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004ea5', endColorstr='#000c28', GradientType=0);
    color: white;
}
.body_gradient:not(.main-grad) {
    margin-top: -60%;
    padding-top: 60%;
}
.body_gradient:not(.main-grad) .body_bubliny {
    margin-top: -60%;
    padding-top: 60%;
}
.body_bubliny {
    background-image: url("../img/bg_bubliny.png");
    background-repeat: repeat;
}
.main_vlna img {
    position: absolute;
    margin-top: -500px;
    max-height: 1200px;
    width: 100%;
    opacity: 1;
}
.smaller_vlna img {
    position: absolute;
    margin-top: -15%;
    width: 100%;
    opacity: 0;
    top: 0;
}
.bg_arrive_image {
    position: absolute;
    z-index: 2;
}
.bg_arrive_image.meduza_image {
    margin-top: 15%;
    text-align: right;
    right: 0;
    overflow: hidden;
}
.bg_arrive_image.meduza_image > div {
    margin-right: -500px;
}
.bg_arrive_image.meduza_image > div img {
    width: 80%;
}
.bg_arrive_image.ryby_image > div {
    margin-left: -800px;
}
.bg_arrive_image.ryby_image > div img {
    width: 80%;
}
.bg_arrive_image.zralok_image {
    margin-top: -5%;
}
.bg_arrive_image.zralok_image > div {
    margin-left: -500px;
}
.bg_arrive_image.zralok_image > div img {
    width: 80%;
}
.bg_arrive_image.potapec_image {
    text-align: right;
    right: 0;
    overflow: hidden;
}
.bg_arrive_image.potapec_image > div {
    margin-right: -500px;
}
.bg_arrive_image.potapec_image > div img {
    width: 80%;
}
.dno_img {
    position: relative;
}
.dno_img img {
    position: absolute;
    width: 100%;
    bottom: 0;
    z-index: 1;
}

/* reference header */
body.reference header {
    background-color: #fff;
}
body.reference header .logo {
    opacity: 1;
}
body.reference header #top_menu li a:not(.konzult_zdarma) {
    color: #000;
}
body.reference header #top_menu li a:not(.konzult_zdarma):hover {
    color: #004587;
}

.carousel-control {
    z-index: 10;
}


/* footer */
footer {
    position: relative;
    z-index: 5;
}
footer h2 {
    text-align: center;
    font-size: 34px;
    font-weight: bold;
    padding: 30px 0;
}
footer h3 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
}
footer p {
    color: white;
}
footer p a {
    color: white;
}
footer p a:focus,
footer p a:active {
    color: white;
}
footer p a:hover {
    color: white;
    text-shadow: 0 0 2px white;
}
footer .footer_logo_div {
    text-align: right;
    margin-top: 20px;
}
footer .footer_logo_div .footer_logo {
    max-width: 120px;
    width: 100%;
}
footer .bottom_align, footer .bottom_align a {
    margin-top: 30px;
    font-size: 12px;
}
footer .bottom_align a:hover {
    color: white;
    text-decoration: underline;
}
footer .bottom_align a:focus, footer .bottom_align a:active {
    color: white;
}

@media (min-width: 1500px) {
    #sec_ceo .photo .photo_caption {
        font-size: 18.2px;
    }
    #sec_ceo .photo .photo_caption .main_caption {
        font-size: 30.3px;
    }
}
@media (max-width: 1199px) {
    #sec-sluzby .nudle_container img {
        top: 35px;
    }
    #sluzby_cesta .nudle_container img {
        top: -5px;
    }
    #sec_ceo .photo .photo_caption {
        margin-top: -28%;
    }
    .main_vlna img {
        margin-top: -40%;
    }
    .meduza_image {
        display: none;
    }
}
@media (max-width: 1099px) {
    #sluzby_cesta .nudle_container img {
        top: -2px;
    }
}
@media (max-width: 991px) {
    header #top_menu {
        display: none;
    }
    header .menu_toggler {
        display: inline-block;
    }
    header .rest_right {
        padding-top: 0;
    }
    header .logo {
        opacity: 1;
    }
    .top_description {
        padding-bottom: 20%;
    }
    .top_description h1 {
        color: black;
    }
    .top_description p {
        color: #808080;
    }
    #side_path a,
    #side_path .glyphicon {
        color: #808080;
    }
    #side_path a.selected {
        color: black;
    }
    #sec-proc-s-nami .row {
        display: block;
    }
    #sec-proc-s-nami .row > div {
        width: 100%;
        float: none;
        margin-top: 20px;
    }
    #sec-sluzby .row.nudle_container img {
        display: none;
    }
    #top_menu_list ul li {
        width: 33%;
        padding: 20px 5px;
    }
    #sec-portfolio .img_container .img_description h3 {
        font-size: 26px;
        margin-top: 5px;
        margin-bottom: 5px;
    }
    #sec-portfolio .img_container .img_description p {
        font-size: 10px;
        margin-bottom: 2px;
    }
    #sec-portfolio .img_container .img_description .tags a {
        font-size: 10px;
    }
    #sec-portfolio .img_container .img_description a.blue_button {
        padding: 17px 30px;
        margin-top: 10px;
        font-size: 16px;
    }
    #sluzby_cesta .round_number {
        width: 45px;
        height: 45px;
        line-height: 45px;
        font-size: 16px;
    }
    #sluzby_cesta .nudle_container img {
        display: none;
    }
    .body_gradient:not(.main-grad) {
        margin-top: 0;
        padding-top: 0;
    }
    .body_gradient:not(.main-grad) .body_bubliny {
        margin-top: 0;
        padding-top: 0;
    }
    .smaller_vlna img {
        top: auto;
        margin-top: -20%;
    }
    footer .footer_logo_div {
        text-align: center;
    }
}
@media (max-width: 767px) {
    .row {
        display: block !important;
    }
    .wrapper {
        padding: 10px;
    }
    header .wrapper {
        padding-top: 20px;
    }
    .top_description {
        padding-bottom: 0;
    }
    .on_mobile {
        display: inline-block;
    }
    #popup_form .modal-content {
        padding: 10px 30px;
    }
    #popup_form .modal-content button.close {
        margin-right: -10px;
    }
    #popup_form .modal-content .pripojit_soubor {
        text-align: center;
    }
    #popup_form .modal-content .pripojit_soubor > * {
        display: block;
        margin: auto;
    }
    #popup_form .modal-content .pripojit_soubor label {
        float: none;
        margin-top: 0;
        width: 150px;
    }
    .show_other_refs {
        display: none;
    }
    #sec-proc-s-nami,
    #sec-sluzby,
    #sec-portfolio,
    #sec-blog,
    #sec_ceo {
        margin-top: 0;
    }
    #sec-proc-s-nami h2,
    #sec-sluzby h2,
    #sec-portfolio h2,
    #sec-blog h2,
    #sec_ceo h2 {
        margin-top: 0;
        margin-bottom: 0;
    }
    #sec-proc-s-nami button {
        margin-top: 10px;
        margin-bottom: 10px;
    }
    #sec-proc-s-nami .card p {
        opacity: 1;
    }
    #sec-sluzby .nudle_container img {
        display: none;
    }
    #sec-sluzby .row > div {
        display: block;
    }
    #sec-sluzby .col-sm-6 {
        padding-top: 10px;
        padding-bottom: 20px;
    }
    #sec-sluzby .col-sm-6 h3 {
        margin-top: 10px;
        margin-bottom: 10px;
    }
    #sec_with_sidebar #main_sidebar_list {
        max-width: 300px;
        margin: auto;
    }
    #sec-blog img {
        max-width: 300px;
    }
    #sec-blog h3 {
        margin-top: 5px;
        margin-bottom: 5px;
    }
    #sec-blog .date {
        margin-top: 10px;
        margin-bottom: 5px;
    }
    #sec-blog .tags {
        margin-top: 10px;
        margin-bottom: 20px;
    }
    #sec-blog .blogposts > div a.blue_button {
        opacity: 1;
    }
    #sec-blogpost {
        margin-top: -20px;
    }
    #sec-blogpost .bottom_line > div {
        width: 100%;
        padding: 10px 0;
    }
    #sec-blogpost .bottom_line > div.shareline {
        text-align: left;
    }
    #dalsi_blogposts {
        margin-top: 40px;
    }
    #sec_ceo {
        margin-bottom: -50px;
        margin-top: 40px;
    }
    #sec_ceo .photo .photo_caption {
        margin-top: -158px;
        margin-left: 15%;
        font-size: 24.3px;
    }
    #sec_ceo .photo .photo_caption .main_caption {
        font-size: 42.5px;
    }
    #sec-portfolio .img_container .img_description h3 {
        font-size: 26px;
        margin-top: 20px;
        margin-bottom: 10px;
    }
    #sec-portfolio .img_container .img_description p {
        font-size: 14px;
        margin-bottom: 5px;
    }
    #sec-portfolio .img_container .img_description .tags a {
        font-size: 16px;
    }
    #sec-portfolio .img_container .img_description a.blue_button {
        padding: 17px 30px;
        margin-top: 15px;
        font-size: 16px;
    }
    /*  #portfolio_carousel {
        display: none;
      }*/
    #top_menu_list .filter_descriptor {
        display: inline-block;
    }
    #top_menu_list ul li {
        width: 100%;
        display: none;
    }
    #sluzby_cesta .project_headline h2 {
        padding-bottom: 0;
    }
    #sluzby_cesta .round_number {
        margin-bottom: 20px;
        margin-top: 30px;
    }
    #sluzby_cesta .nudle_container img {
        display: none;
    }
    footer {
        text-align: center;
    }
    footer .kontakt_info > div {
        padding-top: 10px;
    }
    footer .footer_logo_div {
        text-align: center;
    }
}
@media (max-width: 610px) {
    #sec_ceo .photo .photo_caption {
        margin-top: -30%;
        margin-left: 10%;
        font-size: 4vw;
    }
    #sec_ceo .photo .photo_caption .main_caption {
        font-size: 7vw;
    }
}
@media (max-width: 525px) {
    #sec-portfolio .img_container .img_description h3 {
        font-size: 19px;
        margin-top: 5px;
        margin-bottom: 5px;
    }
    #sec-portfolio .img_container .img_description p {
        font-size: 10px;
        margin-bottom: 2px;
    }
    #sec-portfolio .img_container .img_description .tags a {
        font-size: 10px;
    }
    #sec-portfolio .img_container .img_description a.blue_button {
        padding: 10px 18px;
        margin-top: 8px;
        font-size: 15px;
    }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* IE10+ CSS styles go here */
    #sec-portfolio .img_container:hover .img_description {
        background: rgba(0, 0, 0, 0.8);
        border-radius: 20px;
    }
}

.alert.alert-success{
    padding: 10px 15px !important;
    background-color: #02c941;
    border-color: #02c941;
    border-radius: 0;
}
.alert.alert-success p{
    color: #fff;

}