/* ========================== Reset ========================= */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
        background-color: #ffffff;
        font-family: 'Open Sans', 'Trebuchet MS', Arial, sans-serif;
        text-align: center;
        box-sizing: border-box;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}


/* remember to define focus styles! */
/*
:focus {
	outline: 0;
}
*/
/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}




/* ======================== HTML5 IE<8 hack ======================= */

main, section, article, aside, header, footer, nav, figure, figcaption {
   display: block;
}




/* ========================= Custom fonts ========================= */

/*
@font-face {
    font-family: 'BebasNeueRegular';
    src: url('http://www.japanweek.cz/fonts/bebasneue-webfont.eot');
    src: url('http://www.japanweek.cz/fonts/bebasneue-webfont.eot') format('embedded-opentype'),
         url('http://www.japanweek.cz/fonts/bebasneue-webfont.woff') format('woff'),
         url('http://www.japanweek.cz/fonts/bebasneue-webfont.ttf') format('truetype')
}
*/




/* ============================ CMS controls ============================= */

#page_body article section {
    position: relative;
}
.admin_controls {
    position: absolute;
    margin-top: -10px;
    background-color: #9c1c1c;
    height: 24px;
    padding-left: 12px;
    padding-right: 12px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
    background-image: url('../images/admin-expand.gif');
    background-position: left center;
    background-repeat: no-repeat;
    z-index: 100;
    
    display: none;
}
    .admin_controls.cmd_edit {
        right: 18px;
    }
    .admin_controls span {
        background-color: #ffffff;
        font-size: 12px;
        height: 22px;
        line-height: 22px;
        border-top: 1px solid #9c1c1c;
        border-bottom: 1px solid #9c1c1c;
        display: inline-block;
        overflow: hidden;
        width: 0;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        color: #bababa;
    }
    .admin_controls:hover span {
        width: auto;
        -webkit-transition: all 1s ease;
        -moz-transition: all 1s ease;
        -o-transition: all 1s ease;
        transition: all 1s ease;
        color: #000000;
    }
    
    .admin_controls.published {
        background-color: #1faa36;
        background-image: url('../images/admin-published.gif');
        background-position: center center;
        right: -10px;
    }
    .admin_controls.unpublished {
        background-color: #999999;
        background-image: url('../images/admin-disabled.gif');
        background-position: center center;
        right: -10px;
    }




/* ========================== Page layout ========================= */

.clear_both {
    clear: both;
}
#large_wrap {
    overflow: hidden;
    width: 100%;
    max-width: 1960px;
    min-width: 280px;
    margin: 0 auto 0 auto;
    background-color: #fdf6ee;
    position: relative;
    box-shadow: 0 0 4px 2px #000000;
}
header#page_top_wrap {
    position: relative;
    z-index: 10;
}
    #logo_shadow_holder, #prim_navi {
        width: 230px;
        height: 126px;
        top: 5px;
    }
        #logo_shadow_holder {
            z-index: 5;
            position: absolute;
            left: 50%;
        }
            #logo_shadow {
                width: 120px;
                height: 118px;
                background-color: #ffffff;
                -moz-box-shadow: 0px -3px 8px 0px #000000;
                -webkit-box-shadow: 0px -3px 8px 0px #000000;
                box-shadow: 0px -3px 8px 0px #000000;
                position: absolute;
                z-index: 5;
                left: -59px;
                top: 7px;
                border-radius: 50%;
            }
    #page_top_bar {
        /* background-color: #fdf6ee; */
        background-color: #ffffff;
        height: 99px;
        -moz-box-shadow: 0px -3px 8px 0px #000000;
        -webkit-box-shadow: 0px -3px 8px 0px #000000;
        box-shadow: 0px -3px 8px 0px #000000;
        position: relative;
        z-index: 20;
    }
        #prim_navi {
            position: relative;
            margin: 0 auto;
            z-index: 20;
            font-family: 'Open Sans', 'Trebuchet MS', Arial, sans-serif;
        }
            #lang_wrap {
                position: absolute;
                left: 229%;
                width: 140px;
                top: 16px;
            }
                #lang_wrap li {
                    float: left;
                    margin-right: 20px;
                    width: 45px;
                }
                    #prim_navi #lang_wrap li a {
                        padding-left: 30px;
                        background-position: left center;
                        background-repeat: no-repeat;
                        text-decoration: none;
                        color: #5e5f5f;
                        font-size: 14px;
                    }
                        #prim_navi #lang_wrap li a:hover, #prim_navi #lang_wrap li a:focus {
                            text-decoration: underline;
                        }
                        #lang_cz {
                            background-image: url('../images/flag-cz.gif');
                        }
                        #lang_en {
                            background-image: url('../images/flag-en.gif');
                        }
                
            #logo {
                display: block;
            }
            #prim_navi_left, #prim_navi_right {
                position: absolute;
                top: 67px;
                width: 500px;
            }
            #prim_navi_left {
                right: 240px;
            }
                #prim_navi_left li {
                    float: right;
                    padding-left: 35px;
                }
            #prim_navi_right {
                left: 240px;
            }
                #prim_navi_right li {
                    float: left;
                    padding-right: 35px;
                }
            #prim_navi li {
                position: relative;
                text-align: center;
            }
                #prim_navi li a {
                    color: #5e5f5f;
                    text-decoration: none;
                    font-size: 18px;
                    -webkit-transition: all 0.3s ease;
                    -moz-transition: all 0.3s ease;
                    -o-transition: all 0.3s ease;
                    transition: all 0.3s ease;
                    
                }
                    #prim_navi li a:hover, #prim_navi li a:focus {
                        -webkit-transition: all 0.3s ease;
                        -moz-transition: all 0.3s ease;
                        -o-transition: all 0.3s ease;
                        transition: all 0.3s ease;
                        color: #ff0000;
                        text-decoration: underline;
                    }
                .nav_dot {
                    width: 5px;
                    height: 5px;
                    border-radius: 50%;
                    background-color: #e1e1e1;
                    display: block;
                    position: absolute;
                    top: 8px;
                }
                    #prim_navi_left .nav_dot {
                        right: -21px;
                    }
                    #prim_navi_right .nav_dot {
                        right: 14px;
                    }

#slider_wrap {
    background-color: #ffffff;
}                
    #slider {
        max-width: 1760px;
        margin: 0 auto;
        background-color: #d8d9da;
        height: 0;
        padding-bottom: 45.75%;
    }

#page_body {
    background-color: #fdf6ee;
    min-height: 200px;
    text-align: center;
    padding-top: 2em;
}

#page_body_lower {
    padding: 10px 3% 10px 3%;
    width: 90%;
    margin: 2em auto 2em auto;
}
    #lower_content {
        width: 70%;
        float: left;
    }
        #lower_content .article_basic p {
            text-align: justify;
        }
    aside {
        width: 28%;
        float: right;
    }
        aside .article_layout_1.variant_1 h3 a {
            text-align: center;
            color: #ff0000;
            -webkit-transition: 0.2s;
            -moz-transition: 0.2s;
            -o-transition: 0.2s;
            transition: all .2s ease;
        }
            aside .article_layout_1.variant_1 h3 a:hover, aside .article_layout_1.variant_1 h3 a:focus {
                color: #000000;
                -webkit-transition: 0.2s;
                -moz-transition: 0.2s;
                -o-transition: 0.2s;
                transition: all .2s ease;
            }
        aside .article_layout_1.variant_1 p {
            text-align: justify;
        }
               
#partners_wrap {
    background-color: #ffffff;
    padding: 2em 4em;
}
    .partner_cnt {
        width: 473px;
        display: table;
        margin: 10px auto;
    }
        #pt_cpp {
            float: left;
        }
        #pt_jpoint {
            float: right;
        }
        .partner_logo {
            width: 165px;
            display: table-cell;
            vertical-align: middle;
        }
            .partner_logo a {
                width: 100%;
            }
                .partner_logo a img {
                    width: 100%;
                }
        .partner_txt {
            width: auto;
            display: table-cell;
            vertical-align: middle;
        }
            #page_body .partner_txt p {
                font-size: 0.9em;
                text-align: left;
                margin: 0 0 0 20px;
            }

footer {
    padding: 3em;
    background-color: #000000;
    color: #ffffff;
}
    footer p {
        font-size: 18px;
        color: #ffffff;
        line-height: 170%;
    }
.mobile_nav {
    display: none;
}
.responsive_menu {
    display: none;
}

.video_wrap {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    margin-bottom: 10px;
}
    .video_wrap iframe {
        min-height: 350px;
    }

    


/* ========================= CMS elements definitions ======================= */  
/* Article sections */
.article_content {
    width: 59%;
}
    .article_content.align_right {
        float: right;
    }
    .article_content.align_left {
        float: left;
    }
.image_column {
    width: 34%;
    padding-bottom: 2em;
}
    .image_column.align_left {
        float: left;
    }
    .image_column.align_right {
        float: right;
    }
    .image_column .article_image {
        width: 100%;
        margin-bottom: 1em;
    }
    .image_column .article_image.width_liquid {
        width: 100%;
    }
    
@media screen and (max-width: 750px) {
    .image_column {
        width: 50%;
        padding-bottom: 2em;
        margin: 0 auto;
    }
        .image_column.align_left, .image_column.align_right {
            float: none;
        }
        
    .article_content {
        width: 100%;
        float: none;
        clear: both;
    }
}
@media screen and (max-width: 620px) {
    .image_column {
        width: 65%;
    }
}
@media screen and (max-width: 460px) {
    .image_column {
        width: 85%;
        position: relative;
        left: -10px;
        padding-bottom: 1em;
    }
}


/* Common article properties */
#page_body h1, #page_body h2 {
    font-family: 'Teko', sans-serif;
    font-size: 3.5em;
    color: #000000;
    margin-bottom: 0.5em;
    text-align: center;
    display: inline-block;
    padding-left: 70px;
    min-height: 60px;
    background-image: url('../images/h1-bg.gif');
    background-position: left center;
    background-repeat: no-repeat;
    line-height: 60px;
    padding-top: 0.2em;
}
#page_body h3 {
    font-size: 2.7em;
    color: #000000;
    margin-bottom: 0.3em;
    font-family: 'Teko', sans-serif;
}
    #page_body h3 em {
        font-style: normal;
        color: #ff0000;
    }
#page_body h4 {
    font-family: 'Teko', sans-serif;
    font-size: 1.8em;
    color: #000000;
    margin-bottom: 0.7em;
}
    #page_body h4 a {
        color: #ff0000;
        -webkit-transition: 0.2s;
        -moz-transition: 0.2s;
        -o-transition: 0.2s;
        transition: all .2s ease;
    }
        #page_body h4 a:hover, #page_body h4 a:focus {
            color: #000000;
            -webkit-transition: 0.2s;
            -moz-transition: 0.2s;
            -o-transition: 0.2s;
            transition: all .2s ease;
        }
#page_body h5 {
    font-size: 1.2em;
    color: #000000;
    margin-bottom: 0.5em;
}
#page_body p, #page_body ul, #page_body ol {
    font-size: 1em;
    margin: 0 0.3% 1em 0.3%;
}
    #page_body p {
        line-height: 140%;
    }
    
#page_body p a, #page_body ul a, #page_body ol a {
    color: #ff0000;
    text-decoration: underline;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}
    #page_body p a:hover, #page_body p a:focus, #page_body ul a:hover, #page_body ul a:focus, #page_body ol a:hover, #page_body ol a:focus {
        text-decoration: none;
        color: #000000;
        -webkit-transition: 0.2s;
        -moz-transition: 0.2s;
        -o-transition: 0.2s;
        transition: all .2s ease;
    }
#page_body ul {
    line-height: 150%;
    list-style: disc;
    list-style-position: outside;
}
    #page_body ul li {
        padding-bottom: 1em;
        text-align: left;
        margin-left: 1em;
    }
#page_body ol {
    list-style-type: decimal;
    list-style-position: inside;
    line-height: 160%;
}
    #page_body ol li {
        padding-left: 1.5em;
        text-indent: -1.5em;
        padding-bottom: 1em;
    }
    
#page_body p strong, #page_body ul strong, #page_body ol strong {
    font-weight: bold;
    color: #000000;
}


/* Image properties */
.article_image {
    overflow: hidden;
    position: relative;
}
    .article_image.align_left {
        float: left;
        margin-right: 2.5%;
        margin-bottom: 2%;
    }
    .article_image.align_right {
        float: right;
        margin-left: 2.5%;
        margin-bottom: 2%;
    }
    .article_image.align_top {
        float: none;
        margin-bottom: 4%;
        width: 100%;
        height: auto;
    }
    .article_image.width_liquid {
        width: 31%;
    }

    .article_image.width_liquid img, .article_image.align_top img {
        width: 100%;
        height: auto;
    }
    .article_image.has_border {
        border: 6px solid #ffffff;
        transition: all .3s ease;
        box-shadow: 0 0 7px #6d6d6d;
        line-height: 0;
    }
    .article_image a {
        border: none;
        display: block;
        padding-bottom: 0;
        line-height: 0;
    }
        .article_image a img {
            border: none;
        }

    a .img_overlay_bg {
        filter:alpha(opacity=0);
        opacity: 0.0;
        -moz-opacity:0.00;
        -khtml-opacity: 0.00;
        position: absolute;
        left: 50%;
        right: 50%;
        top: 50%;
        bottom: 50%;
        background-color: #000000;
        transition: all .2s ease;
        -webkit-transform: translateZ(0);
    }
        a:hover .img_overlay_bg, a:focus .img_overlay_bg {
            filter:alpha(opacity=50);
            opacity: 0.50;
            -moz-opacity:0.50;
            -khtml-opacity: 0.50;
            left: 0;
            right: 0;
            top: 0;
            bottom: 0;
            transition: all .2s ease;
        }
    a .img_overlay_icon {
        filter:alpha(opacity=0);
        opacity: 0.0;
        -moz-opacity:0.00;
        -khtml-opacity: 0.00;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        background-position: center center;
        background-repeat: no-repeat;
        transition: all .2s ease;
        -webkit-transform: translateZ(0);
    }
        a:hover .img_overlay_icon, a:focus .img_overlay_icon {
            filter:alpha(opacity=80);
            opacity: 0.80;
            -moz-opacity:0.80;
            -khtml-opacity: 0.80;
            transition: all .2s ease;
        }
        .img_overlay_icon.enlarge {
            background-image: url('http://www.japanweek.cz/images/icon-enlarge-img.gif');
        }
        .img_overlay_icon.link {
            background-image: url('../images/icon-link.gif');
        }   

    .article_icon {
        background-position: left center;
        background-repeat: no-repeat;
        margin-top: 2%;
        margin-bottom: 2%;
    }
    
    @media screen and (max-width: 460px) {
        .article_image.align_right, .article_image.align_left {
            width: 96%;
            height: auto;
            float: none;
            margin-left: 0;
            margin-right: 0;
        }
            .article_image.align_right img, .article_image.align_left img {
                width: 100%;
                height: auto;
            }
    }
    
.article_image.image_layout_1 {
    border-radius: 50%;
}
    .article_image.image_layout_1 img {
        border-radius: 50%;
    }
    .article_image.image_layout_1 .img_overlay_bg {
        border-radius: 50%;
    }
    .article_image.image_layout_1 .img_overlay_icon {
        border-radius: 50%;
    }
    .article_image.image_layout_1.align_left {
        margin-right: 3.5%;
    }
    .article_image.image_layout_1.align_right {
        margin-left: 3.5%;
    }


/* Column layouts */
.table_two_cols {
    display: table;
    width: 96%;
    box-sizing: border-box;
    margin: 2em auto 2em auto;
}
.table_three_cols {
    display: table;
    width: 75%;
    margin: 2em auto 2em auto;
}
    .table_col {
        display: table-cell;
        text-align: left;
        vertical-align: top;
    }
    .table_padding {
        display: table-cell;
    }
    
    .table_two_cols .table_col {
        width: 48%;
    }
    .table_two_cols .table_padding {
        width: 4%;
    }

    .table_three_cols .table_col {
        width: 30%;
    }
    .table_three_cols .table_padding {            
        width: 2.5%;
    }
    
.table_two_cols .article_image.width_liquid {
    width: 45%;
}    
.table_three_cols .article_image {
    float: none;
    margin-bottom: 4%;
    width: 100%;
    height: auto;
}
.table_three_cols .article_image img {
    width: 100%;
    height: auto;
}
#page_body .table_two_cols h3, #page_body .table_three_cols h3 {
    text-align: center;
}
.table_two_cols p, .table_three_cols p {
    text-align: justify;
}


@media screen and (max-width: 750px) {
    .table_three_cols .table_col {
        display: block;
        width: 97%;
        margin-bottom: 1em;
    }
        .table_three_cols {
            display: block;
        }
        
        .table_three_cols .article_layout_1 .article_image, .table_three_cols .article_layout_2 .article_image {
            float: left;
            width: 33%;
            margin-bottom: 0.5em;
        }
        .article_image.align_top {
            margin-right: 15px;
        }
        #page_body .table_two_cols h3, #page_body .table_three_cols h3 {
            text-align: left;
        }
}

@media screen and (max-width: 620px) {
    .table_two_cols {
        display: block;
    }
        .table_two_cols .table_col {
            width: 96%;
            display: block;
            text-align: center;
        }
        .table_two_cols .article_image {
            float: left;
            width: 40%;
        }
            .table_two_cols .article_image.align_right {
                float: right;
                margin-left: 2.5%;
                margin-bottom: 2%;
            }
}
@media screen and (max-width: 460px) {
    .table_three_cols .article_basic .article_image, .table_three_cols .article_layout_1 .article_image, .table_three_cols .article_layout_2 .article_image {
        width: 40%;
    }
}
@media screen and (max-width: 420px) {
    .table_two_cols .article_basic .article_image, .table_two_cols .article_layout_1 .article_image {
        width: 100%;
    }
}
@media screen and (max-width: 370px) {
    .table_three_cols .article_basic .article_image, .table_three_cols .article_layout_1 .article_image,  .table_three_cols .article_layout_2 .article_image {
        width: 100%;
    }
}


/* ================================= Galleries ============================== */    
.article_gallery {
    width: 35.5%;
}
    .article_gallery.align_left {
        float: left;
    }
    .article_gallery.align_right {
        float: right;
    }
    .main_image {
        float: none;
        width: 100%;
        padding: 0;
        background-color: #234453;
        line-height: 0;
        overflow: hidden;
        position: relative;
    }
    .article_gallery .with_main_image .photos_wrap {
        float: none;
        width: 100%;
    }
    
/* Gallery properties */
.gallery_wrap {
    margin-bottom: 2em;
    overflow: auto;
}
.photos_wrap {
    max-width: 800px;
    margin: 0 auto 0 auto;
}

/* ---------------------------- Default layout gallery ---------------------- */
.layout_default .photo_container {
    width: 29%;
    margin-right: 1.5%;
    margin-left: 1.8%;
    margin-bottom: 1.5%;
    margin-top: 2%;
    float: left;
}
    .layout_default .photo_content {
        display: block;
        text-align: center;
        line-height: 0;
        box-shadow: 0 0 7px #9d9d9d;
        border: 6px solid #ffffff;
        background-color: #e8e8e1;
        
        -webkit-transition: 0.2s;
        -moz-transition: 0.2s;
        -o-transition: 0.2s;
        transition: 0.2s;
        
        -webkit-transform: translateZ(0);
    }
        .layout_default .photo_content:hover, .layout_default .photo_content:focus {
    
            -webkit-transform: scale(1.1);
            -moz-transform: scale(1.1);
            -ms-transform: scale(1.1);
            -o-transform: scale(1.1);
            transform: scale(1.1);

            -webkit-transition: 0.2s;
            -moz-transition: 0.2s;
            -o-transition: 0.2s;
            transition: 0.2s;
        }
        .layout_default img {
            width: 100%;
            height: auto;
            margin: 0 auto 0 auto;
        }
            .layout_default .photo_container.img_portrait a img {
                width: 66%;
                height: auto;
                position: relative;
                /* left: 100%;
                margin-left: -200%; */
            }
            .layout_default .photo_label {
                line-height: 120%;
                padding: 2% 0 2% 0;
                width: 100%;
                display: inline-block;
                font-size: 80%;
                background-color: #ffffff;
                color: #6d6d6d;
            }
                .layout_default a:hover .photo_label, .layout_default a:focus .photo_label {
                    color: #000000;
                }
.layout_default .gallery_breakpoint {
    clear: both;
}

.table_three_cols .layout_default .photo_container {
    float: none;
    width: 75%;
    margin: 0 auto 10px auto;
}


/* ------------------- Mosaic + Circle layout gallery ----------------------- */
.layout_mosaic .photo_container a img.img_portrait, .layout_circles .photo_container a img.img_portrait {
    width: 100%;
}

.main_image {
    float: left;
    display: block;
    width: 48%;
    margin-bottom: 2%;
    margin-right: 1%;
    overflow: hidden;
}
    .main_image img {
        width: 100%;
        height: auto;
        background-color: #234453;
        
        -webkit-transition: 0.2s;
        -moz-transition: 0.2s;
        -o-transition: 0.2s;
        transition: 0.2s;
        
        -webkit-transform: translateZ(0);
    }
        .main_image:hover img, .main_image:focus img {
            /*
            -webkit-transform: scale(1.1);
            -moz-transform: scale(1.1);
            -ms-transform: scale(1.1);
            -o-transform: scale(1.1);
            transform: scale(1.1);
            */

            -webkit-transition: 0.2s;
            -moz-transition: 0.2s;
            -o-transition: 0.2s;
            transition: 0.2s;
        }
.with_main_image .main_image {
    float: left;
}
.layout_mosaic .photos_wrap, .layout_circles .photos_wrap {
    overflow: auto;
}
.with_main_image .photos_wrap {
    width: 50%;
    float: right;
}
.layout_mosaic .photo_container, .layout_circles .photo_container {
    width: 32%;
    margin-left: 2%;
    margin-bottom: 2%;
    float: left;
    overflow: hidden;
    position: relative;
}
    .layout_mosaic .photo_container:nth-child(4n+1), .layout_circles .photo_container:nth-child(4n+1) {
        margin-left: 0;
    }
    .layout_mosaic .photo_container a, .layout_circles .photo_container a {
        display: block;
        line-height: 0;
    }
    .layout_mosaic .photo_container a img, .layout_circles .photo_container a img {
        width: 100%;
        height: auto;
        
        -webkit-transition: 0.2s;
        -moz-transition: 0.2s;
        -o-transition: 0.2s;
        transition: 0.2s;
        
        -webkit-transform: translateZ(0);
    }
        .layout_mosaic .photo_container a:hover img, .layout_mosaic .photo_container a:focus img {
            /*
            -webkit-transform: scale(1.15);
            -moz-transform: scale(1.15);
            -ms-transform: scale(1.15);
            -o-transform: scale(1.15);
            transform: scale(1.15);
            */

            -webkit-transition: 0.2s;
            -moz-transition: 0.2s;
            -o-transition: 0.2s;
            transition: 0.2s;
        }
        .layout_mosaic .photo_label {
            display: none;
        }

.table_two_cols .layout_mosaic .photo_container {
    width: 30%;
    padding-bottom: 29%;
    margin-right: 0.65%;
    margin-bottom: 1%;
    margin-left: 0.65%;
}

        
.table_three_cols .layout_mosaic .photo_container {
    width: 46%;
    padding-bottom: 46%;
    margin-right: 0.75%;
    margin-bottom: 0.75%;
}

.table_three_cols .layout_mosaic.with_main_image .main_image {
    width: 96%;
    margin-left: 1%;
    float: none;
}
.table_three_cols .layout_mosaic.with_main_image .photos_wrap {
    width: 100%;
    float: none;
}
.table_three_cols .layout_mosaic.with_main_image .photo_container {
    width: 28%;
    padding-bottom: 28%;
    margin-left: 1.5%;
}


/* ------------------------ Mosaic layout gallery --------------------------- */
.article_gallery .layout_mosaic .main_image {
    width: 100%;
    padding: 0%;
    position: relative;
}


/* ------------------------ Circle layout gallery --------------------------- */
.gallery_wrap.layout_circles {
    overflow: visible;
}
    .main_image.circle {
        width: 43%;
        padding: 1%;
    }
    .layout_circles .main_image {
        border-radius: 50%;
        background-color: #ffffff;
        box-shadow: 0 0 7px #6d6d6d;
    }
        .layout_circles .main_image img {
            border-radius: 50%;
        }
        .article_gallery .main_image.circle {
            width: 96%;
            padding: 2%;
        }
        .layout_circles .img_overlay_bg {
            border-radius: 50%;
        }
            .layout_circles .main_image:hover .img_overlay_bg, .layout_circles .main_image:focus .img_overlay_bg {
                left: 2%;
                top: 2%;
                right: 2%;
                bottom: 2%;
            }
            
            
        .layout_circles .photos_wrap {
            overflow: visible;
        }
            .layout_circles .photo_container {
                border-radius: 50%;
                overflow: visible;
            }
                .layout_circles .photo_content {
                    border-radius: 50%;
                    width: 94%;
                    padding: 3%;
                    background-color: #ffffff;
                    box-shadow: 0 0 7px #6d6d6d;
                }
                    .layout_circles .photo_content img {
                        border-radius: 50%;
                    }
                        .layout_circles .photo_content:hover .img_overlay_bg, .layout_circles .photo_content:focus .img_overlay_bg {
                            left: 3%;
                            top: 3%;
                            right: 3%;
                            bottom: 3%;
                        }

                        
@media screen and (max-width: 750px) {

    .article_gallery.align_left, .article_gallery.align_right {
        width: 50%;
        padding-bottom: 2em;
        margin: 0 auto;
        float: none;
    }
}

@media screen and (max-width: 620px) {
    
    .article_gallery.align_left, .article_gallery.align_right {
        width: 65%;
    }
}

@media screen and (max-width: 460px) {
    
    .article_gallery.align_left, .article_gallery.align_right {
        width: 85%;
        position: relative;
        left: -10px;
        padding-bottom: 1em;
    }
}



/* =================================== Forms ================================ */        

#form_wrap {
    position: relative;
}
    #form_intro, #form_outro {
        width: auto;
        display: block;
        background-color: #14252d;
    }
        #page_body #form_wrap #form_intro p, #page_body #form_wrap #form_outro p {
            font-weight: normal;
        }
    #page_body #form_wrap h3 {
        /* color: #33368c;
        font-size: 1.1em; */
    }
    #form_wrap h4 {
        margin-bottom: 0.2em;
    }
    #page_body #form_wrap p {
        margin-bottom: 0;
        font-size: 0.85em;
    }
    #form_wrap input[type="text"], #form_wrap textarea, #form_wrap select {
        border: 1px solid #bbbbbb;
        padding: 0.3em;
        transition: all .2s ease;
        font-size: 0.9em;
    }
        #form_wrap input[type="text"]:hover, #form_wrap input[type="text"]:focus,
        #form_wrap textarea:hover, #form_wrap textarea:focus,
        #form_wrap select:hover, #form_wrap select:focus {
            border: 1px solid #ff9200;
            background-color: #ffe7c7;
            transition: all .2s ease;
        }
        #form_wrap input[type="checkbox"], #form_wrap input[type="radio"] {
            vertical-align: middle;
        }
        #form_wrap input[type="radio"] {
            position: relative;
            top: -2px;
        }
    .form_button {
        font-size: 28px;
        color: #ffffff;
        text-decoration: none;
        padding: 10px 10px;

        background-color: #be1305;
        background: -webkit-linear-gradient(#d23904, #b1050f);
        background: -o-linear-gradient(#d23904, #b1050f);
        background: -moz-linear-gradient(#d23904, #b1050f);
        background: linear-gradient(#d23904, #b1050f);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d23904', endColorstr='#b1050f');

        -moz-border-radius: 8px;
        -o-border-radius: 8px;
        -webkit-border-radius: 8px;
        border-radius: 8px;
        border: 1px solid #153942;
        -moz-box-shadow:
                0px 1px 3px rgba(000,000,000,0.5),
                inset 0px -1px 0px rgba(255,255,255,0.7);
        -webkit-box-shadow:
                0px 1px 3px rgba(000,000,000,0.5),
                inset 0px -1px 0px rgba(255,255,255,0.7);
        box-shadow:
                0px 1px 3px rgba(000,000,000,0.5),
                inset 0px -1px 0px rgba(255,255,255,0.7);
        text-shadow:
                0px 1px 1px rgba(000,000,000,1),
                0px 1px 0px rgba(255,255,255,0.3);
    }
        .form_button:hover, .form_button:focus {
            background: -webkit-linear-gradient(#b1050e, #89040b);
            background: -o-linear-gradient(#b1050e, #89040b);
            background: -moz-linear-gradient(#b1050e, #89040b);
            background: linear-gradient(#b1050e, #89040b);
            filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b1050e', endColorstr='#89040b');
        }
        .form_button:active {
            padding-top: 11px;
            padding-bottom: 9px;

            background: none;
            background-color: #74040a;

            -moz-box-shadow: none;
            -webkit-box-shadow: none;
            box-shadow: none;
        }
        
    #form_back {
        padding: 0.8em 0.4em 0.2em 0.4em;
        color: #ffffff;
        font-size: 0.8em;
        
    }
    #form_bottom_line {
        background-color: #33368c;
        height: 1px;
        position: relative;
        top: -2px;
        margin-bottom: 2em;
        -webkit-transform: translateZ(0);
    }

.field_set {
    border-bottom: 2px solid transparent;
    display: table;
    width: 100%;
    text-align: left;
}
    .field_set.unpublished {
        background-color: #f393b7;
    }
    .field_label {
        padding: 0.8% 1.5% 0.8% 1.5%;
        display: table-cell;
        vertical-align: middle;
        background-color: #000000;
    }
        #page_body #form_wrap .field_label p {
            color: #ffffff;
            font-weight: bold;
            font-size: 0.9em;
        }
        .required_mark {
            color: #d00000;
            position: absolute;
            margin-top: -2px;
            margin-left: -10px;
            font-size: 16px;
        }
        .field_label p {

        }
        .field_label.width_half {
            width: 44.4%;
        }
        .field_label.width_third {
            width: 18.5%;
        }
        .field_label.width_full {
            width: auto;
            display: block;
            border-bottom: 3px solid #ff9200;
        }
        .field_label.width_full.is_header {
            padding-bottom: 1.5%;
        }
        .field_label.width_full.is_separator {
            background-color: transparent;
            padding-bottom: 0.2%;
            border-bottom: none;
        }
    .field_input {
        padding: 0.8% 1.5% 0.8% 1.5%;
        display: table-cell;
        border-left: 3px solid #ff9200;
        background-color: #eeeded;
    }
        .field_input img {
            vertical-align: middle;
        }
        .field_input.width_half {
            width: 44.6%;
        }
        .field_input.width_two_thirds {
            width: 75.5%;
        }
        .field_input.width_full {
            width: auto;
            display: block;
            border-left: none;
        }
        .field_input.field_error {
            background-color: #f393b7;
        }
        #page_body .field_input .err_msg {
            font-size: 0.7em;
            background-image: url('../images/form-exclamation.gif');
            background-position: left center;
            background-repeat: no-repeat;
            padding-left: 20px;
            margin-left: 3px;
        }
        #page_body .field_subtitle {
            font-size: 0.75em;
            margin-left: 3px;
            background-image: url('../images/form-info.gif');
            background-position: left center;
            background-repeat: no-repeat;
            padding-left: 20px;
        }
        #page_body .field_input.field_error .field_subtitle {
            background-image: url('http://www.japanweek.cz/images/form-info-red.gif');
        }
        
        .field_input .prefix {
            margin-right: 0.3em;
        }
            .field_input .prefix.fixed {
                width: 60px;
                text-align: right;
                display: inline-block;
            }
        .field_input .suffix {
            margin-left: 0.3em;
        }

        .input_txt.small {
            width: 7em;
        }
        .input_txt.medium {
            width: 40%;
            min-width: 170px;
        }
        .input_txt.big {
            width: 80%;
        }
        
        .input_area.small {
            min-width: 220px;
            width: 45%;
            height: 4em;
        }
        .input_area.medium {
            min-width: 180px;
            width: 75%;
            height: 4em;
        }
        .input_area.big {
            min-width: 180px;
            width: 96%;
            height: 6em;
        }
        
        .field_option {
            padding: 0.4em 0 0.4em 0;
            padding-left: 1em;
            text-indent: -1em;
        }
            .field_option.big {
                min-width: 158px;
                width: 96%;
            }
            .field_option.medium {
                min-width: 158px;
                width: 47%;
                float: left;
            }
            .field_option.small {
                width: 158px;
                float: left;
            }
            .field_option.unpublished {
                background-color: #f393b7;
            }

    .field_special {
        /* background-color: #f6f5f5; */
    }
            
.trp_container {
    
}
    .field_tpl_holder {
        width: 33.3333%;
        float: left;
        overflow: hidden;
    }
        .field_tpl_holder.field_error {
            background-color: #f393b7;
        }
        .field_tpl_holder.unpublished {
            background-color: #f393b7;
        }
        .tpl_inside {
            border-right: 1px solid #33368c;
            border-bottom: 1px solid #33368c;
            padding: 3.5% 7.5% 3.5% 9.5%;
            display: table;
            overflow: hidden;
            white-space: nowrap;
        }
        .field_tpl_holder:nth-of-type(3n) .tpl_inside {
            border-right: none;
        }
        
        .tpl_label {
            display: table-cell;
            width: 60%;
            overflow: hidden;
        }
            .tpl_label label {
                padding-right: 0.3em;
            }
        .tpl_input {
            display: table-cell;
            width: 25%;
            overflow: hidden;
        }
        .tpl_input .input_txt {
            /* width: 80%; */
        }
        .tpl_suffix {
            display: table-cell;
            width: 15%;
            overflow: hidden;
            padding-left: 0.3em;
        }
        
.styled_select.half_width {
    float: left;
    width: 49%;
    margin-right: 1%;
    text-align: left;
}
.styled_select.third_width {
    float: left;
    width: 32%;
    margin-right: 1%;
    margin-bottom: 3px;
    text-align: left;
}
#date_item_day option:not([value]) {
    display: none;
}
.trp_btm_line {
    border-bottom: 1px solid #33368c;
    position: absolute;
    margin-top: -1px;
    width: 100%;
    clear: both;
}
        
.field_submit {
    background-color: #14252d;
    position: relative;
    top: 2px;
    padding: 1% 2% 1% 2%;
    overflow: auto;
    -webkit-transform: translateZ(0);
}
.form_button.float_left {
    float: left;
}
.float_right {
    float: right;
}


@media screen and (max-width: 1039px) {
    .field_tpl_holder {
        width: 50%;
    }
        .tpl_inside {
            padding: 3.5% 1.5% 3.5% 5.5%;
        }
        .field_tpl_holder:nth-of-type(2n) .tpl_inside {
            border-right: none;
        }
        .field_tpl_holder:nth-of-type(3n) .tpl_inside {
            border-right: none;
        }
        .field_tpl_holder:nth-of-type(2n+1) .tpl_inside {
            border-right: 1px solid #33368c;
        }
}

@media screen and (max-width: 750px) {
    #page_body .field_set, #page_body .field_label#form_intro, #page_body .field_label#form_outro {
        display: block;
        width: 96.5%;
    }
        #page_body .field_label {
            width: 100%;
            display: block;
        }
        #page_body .field_input {
            width: 100%;
            display: block;
            border-left: none;
            border-top: 2px solid #ff9200;
        }
        .field_submit {
            width: 95.5%;
        }
        
    .mobile_nav {
        display: block;
        position: fixed;
        top: 20px;
        left: 25px;
        cursor: pointer;
        z-index: 10;
    }
    .menu_btn {
        position: relative;
    }
    .menu_btn span {
        display: block;
        width: 38px;
        height: 5px;
        margin: 6px 0;
    }
        #menu_caption {
            position: absolute;
            left: 30px;
            top: -4px;
            font-size: 24px;
            color: #ffffff;
            text-shadow: 2px 2px #000000;
        }
    .responsive_menu {
        display: none;
        width: 99.9%;
        margin: 0;
        filter:alpha(opacity=90);
        opacity: 0.9;
        -moz-opacity: 0.9;
        -khtml-opacity: 0.9;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        position: fixed;
        z-index: 100;
        top: 78px;
    }
        .responsive_menu ul li {
            float: left;
            width: 33.333333%;
            display: block;
            text-align: center;
            padding-left: 0;
            text-indent: 0;
            padding-bottom: 0;
        }
            .responsive_menu li:nth-of-type {
                
            }
            .responsive_menu ul li a {
                display: block;
                text-decoration: none;
                font-size: 18px;
                line-height: 35px;
                height: 35px;
                /* border-right: 1px solid #989da1; */
                /* border-bottom: 1px solid #989da1; */
                -webkit-transition: 0.3s ease;
                -moz-transition: 0.3s ease;
                -o-transition: 0.3s ease;
                transition: all .2s ease;
            }
                .responsive_menu li a:hover, .responsive_menu li a:focus {
                    background-color: #ffffff;
                    color: #000000;
                    -webkit-transition: 0.3s ease;
                    -moz-transition: 0.3s ease;
                    -o-transition: 0.3s ease;
                    transition: all .2s ease;
                }
    .expand {
        display: block !important;
    }
        
}

@media screen and (max-width: 640px) {
    .field_tpl_holder {
        width: 100%;
    }
        .tpl_inside {
            padding: 1.5% 1.5% 1.5% 3%;
        }
        .field_tpl_holder .tpl_inside {
            border-right: none;
        }
        .field_tpl_holder:nth-of-type(2n) .tpl_inside {
            border-right: none;
        }
        .field_tpl_holder:nth-of-type(3n) .tpl_inside {
            border-right: none;
        }
        .field_tpl_holder:nth-of-type(2n+1) .tpl_inside {
            border-right: none;
        }
        
    .styled_select.half_width {
        
    }
}

@media screen and (max-width: 460px) {
    .time_separator {
        display: none;
    }
    .p_time {
        clear: both;
        padding-top: 3px;
    }
}

@media screen and (max-width: 360px) {
    .field_submit {
        text-align: center;
    }
    #rate_total_wrap {
        float: none;
        width: 80%;
        margin: 0 auto 4px auto;
    }
    .form_button.float_left {
        float: none;
    }
}




/* ------------------------- Special form items -------------------------- */

.field_special {
    display: table;
    width: 100%;
}
    .car_wrap {
        display: table-cell;
        width: 28%;
        text-align: center;
        background-color: #ffffff;
        padding: 1%;
        box-shadow: 0 0 3px #9f9f9f;
    }
        .car_wrap.car_disabled {
            background-color: #bbbbbb;
        } 
        #page_body .car_wrap p {
            width: 85%;
            margin: 0 auto 0 auto;
        }
        .car_wrap img {
            margin-top: 3px;
            width: 100%;
        }
        .car_selector {
            padding-bottom: 2px;
        }
        #page_body .article_basic #form_wrap .car_rate, #page_body .article_layout_1 #form_wrap .car_rate {
            background-color: #ff9200;
            padding: 2% 0 2% 0;
            color: #ffffff;
            font-weight: bold;
            font-size: 1em;
            margin: 0 auto 0 auto;
        }
            #form_wrap p.car_rate {
                
            }
    .car_spacing {
        display: table-cell;
        width: 5%;
    }
    
    .rate_wrap {
        background-color: #ff9200;
        padding: 0.4em 0.2em 0.4em 0.2em;
        color: #ffffff;
        font-weight: bold;
        font-size: 1em;
        
        text-align: center;
        vertical-align: middle;
        line-height: 150%;
    }
    
    #page_body .gdes_wrap, #page_body .transport_wrap {
        margin: 1% 0 1% 0;
    }
    
        #page_body .gde_selector, #page_body .ent_selector, #page_body .trf_selector {
            list-style-type: none;
            font-size: 0.85em;
            background-color: #ffffff;
            float: left;
            width: 49.5%;
            margin-right: 1%;
            display: table;
            box-shadow: 0 0 3px #9f9f9f;
            
            padding-left: 0;
            text-indent: 0;
            padding-bottom: 0;
        }
            #page_body .gde_selector {
                margin-top: 1px;
                margin-bottom: 2px;
            }
            #page_body .trf_selector {
                width: 100%;
                float: none;
                margin-bottom: 1px;
            }
                #page_body .trf_selector#trf_header {
                    background-color: transparent;
                    box-shadow: none;
                }
                #trf_header .trf_car_label {
                    display: table-cell;
                    width: 80px;
                    background-color: #14252d;
                    padding: 3px 0.2em 0 0.2em;
                    border-left: 1px solid #eeeded;
                    color: #afc7d5;
                    text-align: center;
                    border-top-left-radius: 6px;
                    border-top-right-radius: 6px;
                }
                .trf_selector .rate_wrap {
                    display: table-cell;
                    width: 80px;
                    border-left: 1px solid #ffffff;
                }
            #page_body .gde_selector:nth-of-type(2n) {
                margin-right: 0;
            }
            .item_label {
                display: table-cell;
                vertical-align: middle;
                padding-left: 3px;
                padding-right: 3px;
            }
            .gde_selector .rate_wrap {
                width: 80px;
                display: table-cell;
                text-align: center;
                vertical-align: middle;
                line-height: 150%;
            }
            .trf_selector .item_label {
                padding-left: 0.7em;
            }
            
        #page_body .ent_wrap {
            margin-bottom: 0;
        }
            #page_body .ent_selector {
                width: 100%;
                margin-right: 0;
                margin-top: 3px;
                margin-bottom: 3px;
                display: table;
            }
                #page_body .ent_selector.ent_disabled {
                    background-color: #bbbbbb;
                }
                .ent_name {
                    display: table-cell;
                    vertical-align: middle;
                }
                .ent_tarriff {
                    display: table-cell;
                    width: 180px;
                    text-align: center;
                    vertical-align: middle;
                }
                    .open_days {
                        display: block;
                        font-size: 13px;
                        padding-top: 2px;
                    }
                        .ent_open, .ent_closed {
                            padding: 2px;
                            border-radius: 4px;
                        }
                        .ent_open {
                            background-color: #288130;
                            color: #ffffff;
                        }
                        .ent_closed {
                            background-color: #969696;
                            color: #000000;
                        }
                    .tarriff_dates {
                        display: block;
                        color: #000000;
                        font-size: 12px;
                    }
                .ent_selector .rate_wrap  {
                    width: 90px;
                    display: table-cell;
                    
                }

#rate_total_wrap {
    color: #ffffff;
    font-weight: bold;
    background-color: #ff9200;
    padding: 13px 10px;
    border-radius: 6px;
    font-size: 18px;
}
#more_guides, #more_guides_hide {
    font-size: 0.85em;
    text-align: center;
    padding: 0.5em 1em 0.5em 1em;
    color: #000000;
    text-decoration: underline;
    display: block;
}
    .gdes_more_show #more_guides{
        display: none;
        border: 1px solid red;
    }
    .gdes_more_hide #more_guides_hide{
        display: none;
    }
    .gdes_more_hide ul{
        display: none;
    }
    
#dtl_arrival, #dtl_departure {
    width: 49%;
    float: left;
}
#page_body #form_wrap #dtl_departure p, #page_body #form_wrap #dtl_arrival p {
    margin-bottom: 3px;
}

#dtl_trn_flt {
    width: 49%;
    float: right;
}

@media screen and (max-width: 570px) {
    
    #page_body .gde_selector, #page_body .ent_selector {
        width: 100%;
        margin-top: 3px;
        margin-bottom: 3px;
    }
    
    #dtl_arrival, #dtl_departure {
        width: 100%;
        float: none;
    }

    #dtl_trn_flt {
        width: 100%;
        float: none;
    }
    
    .trf_selector .item_label {
        display: block;
        width: 100%;
    }
    .trf_selector .rate_wrap {
        display: block;
        width: 33.3333%;
        border-left: none;
        float: left;
        padding-left: 0;
        padding-right: 0;
    }
    #trf_header .trf_car_label {
        width: 33%;
    }
    #page_body .trf_selector#trf_header {
        position: relative;
        left: -10px;
    }
    
}
@media screen and (max-width: 460px) {
    .car_wrap {
        width: 29%;
    }
        #page_body .car_wrap p {
            width: 100%;
        }
    .car_spacing {
        width: 2%;
    }
    
    .ent_name {
        display: block;
        width: 100%;
    }
    .ent_tarriff {
        display: block;
        text-align: left;
        padding-left: 3px;
    }
    
}
@media screen and (max-width: 350px) {
    
}


/* ======================== Article specific layouts ====================== */

#page_body section {
    position: relative;
}

/* ----------------------------- Article basic ---------------------------- */
.article_basic {
    padding: 10px 3% 10px 3%;
    text-align: center;
}
    .article_basic {
        text-align: center;
    }

#page_body aside .article_basic p {
    color: #afc7d5;
    font-size: 0.9em;
    line-height: 145%;
}

.article_basic .layout_mosaic {
    background-color: #ffffff;
    padding: 3% 3% 1% 3%;
    
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 10px;
    border-top: 6px solid #234453;
    border-bottom: 6px solid #234453;
    box-shadow: 0 0 7px #9d9d9d;
    margin-bottom: 3%;
}


/* --------------------------- Article layout 1 --------------------------- */
.article_layout_1 {
    padding: 30px 5% 10px 5%;
    text-align: center;
    background-position: center center;
    background-size: cover;
}
    .article_layout_1.variant_1 {
        background-image: url(../images/article-bg-01.jpg);
    }
    .article_layout_1.variant_2 {
        background-color: #e04914;
        /* #ff0000 */
        padding: 15px 5% 10px 5%;
        border-radius: 5px;
        width: 96%;
        margin: 0 auto;
        box-sizing: border-box;
    }
        #page_body .article_layout_1.variant_2 h3 {
            margin-bottom: 0;
            color: #ffffff;
        }
    .btn_read_more {
        text-align: center;
        height: 42px;
    }
        .btn_read_more a {
            position: absolute;
            display: block;
            bottom: 1px;
            left: 10%;
            right: 10%;

            font-size: 16px;
            color: #ffffff;
            text-decoration: none;
            padding: 14px 10px;
            
            background-color: #8d114f;
            background-image: url('../images/btn-arrow-violet.gif');
            background-position: center right;
            background-repeat: no-repeat;
            
            -moz-border-radius: 8px;
            -o-border-radius: 8px;
            -webkit-border-radius: 8px;
            border-radius: 8px;
        }
            .btn_read_more a:hover, .btn_read_more a:focus {
                background-color: #5d0933;
            }
            .btn_read_more a:active {
                background-color: #5d0933;
            }
            
.table_three_cols .article_layout_1.variant_2 {
    padding: 0 5px 1em 5px;
    text-align: center;
    border-left: 8px solid #fed305;
}
    .table_three_cols .article_layout_1.variant_2 p {
        padding: 0 2%;
        text-align: center;
    }
            

/* --------------------------- Article layout 2 --------------------------- */
    
.article_layout_2 {
    padding: 0 2%;
}
#page_body .table_two_cols .article_layout_2 ul {
    line-height: 125%;
}
    #page_body .table_two_cols .article_layout_2 ul li {
        padding-bottom: 0.3em;
    }
.table_three_cols .article_layout_2 {
    padding: 0 5px 1em 5px;
    text-align: center;
}
    .table_three_cols .article_layout_2 p {
        padding: 0 2%;
        text-align: center;
    }
    
.article_layout_2.variant_1 {
    border-left: 8px solid #fed305;
}
.article_layout_2.variant_2 {
    border-left: 8px solid #e04914;
}
.article_layout_2.variant_3 {
    border-left: 8px solid #8e104f;
}
.article_layout_2.variant_4 {
    border-left: 8px solid #024999;
}
.article_layout_2.variant_5 {
    border-left: 8px solid #64b47b;
}

/* ========================= News column overwrites ======================= */

#page_body aside h2 {
    color: #ffffff;
    font-size: 1.5em;
    text-align: left;
    background: none;
    margin-bottom: 0;
}
#page_body aside .article_layout_1 {
    border: none;
    padding: 2% 4% 4% 4%;
}
#page_body aside .article_layout_1 h3 {
    padding: 2% 0 1% 0;
    margin-bottom: 0;
    font-size: 1.4em;
}




/* ============================= Page specific ============================ */

#main_logos {
    margin-top: 3em;
}
    .main_logo_holder {
        float: left;
        width: 50%;
    }
        .main_logo_holder a {
            margin: 5px auto;
            display: block;
        }
            #main_logo_iff a {
                width: 130px;
                margin-top: 20px;
            }
            #main_logo_praha a {
                width: 100px;
                margin-bottom: 20px;
            }
        .main_logo_holder img {
            width: 100%;
            height: auto;
        }
        
/* -------------------------------- Program ------------------------------- */

#page_id_3 .table_three_cols {
    width: 96%;
}
#page_id_3 .table_three_cols .article_layout_2 {
    padding: 0 2%;
    text-align: left;
}
#page_id_3 .table_three_cols .article_layout_2 p {
    text-align: left;
    padding: 0;
}
#page_id_3 #page_body .table_three_cols .article_layout_2 ul {
    line-height: 120%;
    list-style-position: outside;
}
#page_id_3 #page_body .table_three_cols .article_layout_2 ul li {
    padding-bottom: 0.3em;
}
#page_id_3 #page_body .table_three_cols .article_layout_2 p em a {
    display: block;
    margin-left: 4%;
    margin-right: 4%;
    font-size: 16px;
    font-style: normal;
    color: #ffffff;
    text-decoration: none;
    padding: 14px 10px;
    background-color: #8d114f;
    background-image: url('../images/btn-arrow-violet.gif');
    background-position: center right;
    background-repeat: no-repeat;
    -moz-border-radius: 8px;
    -o-border-radius: 8px;
    -webkit-border-radius: 8px;
    border-radius: 8px;
}
#page_id_3 #page_body .table_three_cols .article_layout_2 p em a:hover, #page_id_3 #page_body .table_three_cols .article_layout_2 p em a:focus {
    background-color: #5d0933;
}
    .btn_read_more a:active {
        background-color: #5d0933;
    }
    
/* -------------------------------- Umělci ------------------------------- */

#page_id_4 .table_three_cols {
    width: 100%;
}
#page_id_4 .table_three_cols .article_layout_2 {
    padding: 0 1.5%;
    text-align: left;
}
#page_id_4 .table_three_cols .article_layout_2 p {
    text-align: justify;
    padding: 0;
}
#page_id_4 #page_body .table_three_cols .article_layout_2 p em a {
    display: block;
    margin-left: 4%;
    margin-right: 4%;
    font-size: 16px;
    font-style: oblique;
    color: #ffffff;
    text-decoration: none;
    padding: 14px 10px;
    background-color: #8d114f;
    background-image: url('../images/btn-arrow-violet.gif');
    background-position: center right;
    background-repeat: no-repeat;
    -moz-border-radius: 8px;
    -o-border-radius: 8px;
    -webkit-border-radius: 8px;
    border-radius: 8px;
}
#page_id_4 #page_body .table_three_cols .article_layout_2 p em a:hover, #page_id_4 #page_body .table_three_cols .article_layout_2 p em a:focus {
    background-color: #5d0933;
}
    .btn_read_more a:active {
        background-color: #5d0933;
    }

    
#page_id_10 .table_three_cols, #page_id_18 .table_three_cols {
    width: 100%;
}
#page_id_10 .table_three_cols .article_layout_2, #page_id_18 .table_three_cols .article_layout_2 {
    padding: 0 1.5%;
    text-align: left;
}
#page_id_10 .table_three_cols .article_layout_2 p, #page_id_18 .table_three_cols .article_layout_2 p {
    text-align: justify;
    padding: 0;
}
#page_id_10 #page_body .table_three_cols .article_layout_2 p em a, #page_id_18 #page_body .table_three_cols .article_layout_2 p em a {
    display: block;
    margin-left: 4%;
    margin-right: 4%;
    font-size: 16px;
    font-style: oblique;
    color: #ffffff;
    text-decoration: none;
    padding: 14px 10px;
    background-color: #8d114f;
    background-image: url('../images/btn-arrow-violet.gif');
    background-position: center right;
    background-repeat: no-repeat;
    -moz-border-radius: 8px;
    -o-border-radius: 8px;
    -webkit-border-radius: 8px;
    border-radius: 8px;
}
#page_id_10 #page_body .table_three_cols .article_layout_2 p em a:hover, #page_id_10 #page_body .table_three_cols .article_layout_2 p em a:focus, #page_id_18 #page_body .table_three_cols .article_layout_2 p em a:hover, #page_id_18 #page_body .table_three_cols .article_layout_2 p em a:focus {
    background-color: #5d0933;
}
    .btn_read_more a:active {
        background-color: #5d0933;
    }

#page_id_4 .table_three_cols, #page_id_10 .table_three_cols, #page_id_18 .table_three_cols {
    margin-top: 0;
}


/* -------------------------------- Rezervace ------------------------------- */

#rsvn_wrap .article_layout_1.variant_2 {
    width: 100%;
    margin-bottom: 2%;
}
.rsvn_event_cnt {
    float: left;
    width: 45%;
    border-left: 8px solid #bf3a7d;
    border-left-width: 8px;
    padding: 0 2%;
    text-align: left;
    margin-bottom: 2%;
}
    .rsvn_event_cnt.variant_2 {
        border-left-color: #8e104f;
    }
    .rsvn_event_cnt.variant_3 {
        border-left-color: #024999;
    }
.rsvn_field {
    padding: 3px 0 3px 0;
    font-size: 1.1em;
}
.rsvn_exceeded {
    background-color: #f393b7;
}

.err_tab {
    background-color: #f393b7;
    padding: 1em;
    margin-bottom: 1em;
}
#page_body #form_wrap .err_tab p {
    font-size: 1em;
    padding-bottom: 1em;
    text-align: left;
    margin-left: 1em;
}

/* ========================== Media queries ========================= */

@media screen and (min-width: 1760px) {
    #slider {
        padding-bottom: 805px;
    }
}

@media screen and (min-width: 1560px) {
    #prim_navi_left, #prim_navi_right {
        width: 600px;
        top: 59px;
    }
        #prim_navi li a {
            font-size: 20px;
        }
            .nav_dot {
                top: 8px;
            }
    #lang_wrap {
        left: 246%;
    }      
    #page_body {
        font-size: 150%;
    }
        .btn_read_more a, #page_id_3 #page_body .table_three_cols .article_layout_2 p em a {
            font-size: 22px;
        }
        
    #main_logo_praha a {
        width: 140px;
    }
    #main_logo_iff a {
        width: 200px;
    }
    .article_layout_1.variant_2, .table_two_cols, #page_id_3 .table_three_cols {
        width: 90%;
    }
    
    .partner_cnt {
        width: 700px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 1300px) {
    #prim_navi li a {
        font-size: 16px;
    }
        .nav_dot {
            top: 6px;
        }
        
    #lang_wrap {
        left: 220%;
        top: 6px;
    }
    #page_body_lower {
        width: 95%;
    }
    aside {
        width: 27%;
        float: right;
        padding-right: 0;
    }
    
    #page_id_4 .table_three_cols .article_layout_2 {
        border-left-width: 5px;
    }
    
    .rsvn_event_cnt {
        border-left-width: 5px;
    }
}

@media screen and (max-width: 1100px) {
    #prim_navi_right li {
        padding-right: 25px;
    }
        #prim_navi_right .nav_dot {
            right: 10px;
        }
    #prim_navi_left li {
        padding-left: 25px;
    }
        #prim_navi_left .nav_dot {
            right: -16px;
        }
        
    #lang_wrap {
        left: 209%;
    }
        
    .table_three_cols {
        width: 90%;
    }
    .table_two_cols {
        width: 96%;
    }
    #page_body_lower {
        width: 96%;
        padding: 10px 2% 10px 2%;
    }
    
    .form_button {
        font-size: 22px;
    }
    
    #pt_cpp {
        float: none;
    }
    #pt_jpoint {
        float: none;
    }
    
}

@media screen and (max-width: 980px) {
    
    #page_body {
        padding-top: 80px;
    }
    #page_id_1 #page_body {
        padding-top: 0;
    }
    
    #logo_shadow_holder {
        position: fixed;
    }
    
    #lang_wrap {
        top: 23px;
        left: 180%;
    }
    
    #slider {
        padding-top: 69px;
    }
    
    #page_top_bar {
        height: 69px;
        position: fixed;
        width: 100%;
    }
        #logo_shadow_holder, #prim_navi {
            width: 140px;
            height: 80px;
            top: 5px;
        }
            #prim_navi img {
                width: 100%;
                height: auto;
            }
            #logo_shadow {
                width: 80px;
                height: 78px;
                left: -39px;
                top: 3px;
            }
    
    
    nav {
        display: none;
    }
    
    .mobile_nav {
        display: block;
        position: fixed;
        top: 15px;
        left: 25px;
        cursor: pointer;
        z-index: 200;
    }
    .menu_btn {
        position: relative;
    }
        .menu_btn span {
            display: block;
            width: 38px;
            height: 5px;
            margin: 6px 0;
            background-color: #000000;
            -moz-border-radius: 3px;
            -o-border-radius: 3px;
            -webkit-border-radius: 3px;
            border-radius: 3px;
        }
        #menu_caption {
            position: absolute;
            left: 30px;
            top: -4px;
            font-size: 24px;
            color: #000000;
            text-shadow: 2px 2px #000000;
        }
    .responsive_menu {
        display: none;
        width: 99.9%;
        margin: 0;
        filter:alpha(opacity=90);
        opacity: 0.9;
        -moz-opacity: 0.9;
        -khtml-opacity: 0.9;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        position: fixed;
        z-index: 100;
        top: 69px;
        left: 0;
        border-left: 1px solid #989da1;
        border-top: 1px solid #989da1;
    }
        .responsive_menu span {
            display: none;
        }
        .responsive_menu ul li {
            float: left;
            width: 50%;
            display: block;
            text-align: center;
            padding-left: 0;
            text-indent: 0;
            padding-bottom: 0;
        }
            .responsive_menu li:nth-of-type {
                
            }
            .responsive_menu ul li a {
                display: block;
                color: #ffffff;
                text-decoration: none;
                font-size: 22px;
                line-height: 55px;
                height: 55px;
                background-color: #000000;
                border-right: 1px solid #989da1;
                border-bottom: 1px solid #989da1;
                -webkit-transition: 0.3s ease;
                -moz-transition: 0.3s ease;
                -o-transition: 0.3s ease;
                transition: all .2s ease;
            }
                .responsive_menu li a:hover, .responsive_menu li a:focus {
                    background-color: #ffffff;
                    color: #000000;
                    -webkit-transition: 0.3s ease;
                    -moz-transition: 0.3s ease;
                    -o-transition: 0.3s ease;
                    transition: all .2s ease;
                }
    .expand {
        display: block !important;
    }
    
    .table_three_cols .article_layout_2 {
        border-left-width: 5px;
    }
    #page_id_1 .table_three_cols strong {
        display: none;
    }
    
    .rsvn_event_cnt {
        float: none;
        width: 95%;
        margin-bottom: 3%;
    }
}

@media screen and (max-width: 800px) {
    #lower_content {
        width: 100%;
        float: none;
    }
    aside {
        width: 94%;
        padding: 0 3%;
    }
}

@media screen and (max-width: 750px) {
    #page_id_1 .table_three_cols strong {
        display: inline;
    }
    #page_id_1 #page_body .table_three_cols .article_layout_2 h4, #page_id_1 #page_body .table_three_cols .article_layout_2 p {
        text-align: left;
        margin-left: 34%;
    }
    #page_id_3 #page_body .table_three_cols .article_layout_2 p em a {
        margin-left: 8%;
        margin-right: 8%;
    }
    
    .artist_perex {
        padding-left: 36.5%;
    }
}

@media screen and (max-width: 640px) {
    
    #lang_wrap {
        left: 140%;
    }
    
    #page_body h1, #page_body h2 {
        font-size: 2.5em;
        line-height: 42px;
        text-align: left;
    }
    #page_body h3 {
        font-size: 2em;
    }
    
    #partners_wrap {
        padding: 1em 1em 2em 1em;
    }
        .partner_cnt {
            width: auto;
        }
            .partner_logo {
                display: block;
                margin: 10px auto;
            }
            .partner_txt {
                display: block;
            }
                #page_body .partner_txt p {
                    text-align: center;
                    margin: 0;
                }
}

@media screen and (max-width: 560px) {
    .responsive_menu ul li {
        width: 100%;
    }
    #lang_wrap {
        left: 110%;
    }
    .video_wrap iframe {
        min-height: 274px;
    }
}

@media screen and (max-width: 460px) {
    #page_id_1 .table_three_cols strong {
        display: none;
    }
    #page_id_1 #page_body .table_three_cols .article_layout_2 h4, #page_id_1 #page_body .table_three_cols .article_layout_2 p {
        margin-left: 42%;
    }
    .artist_perex {
        padding-left: 44.5%;
    }
    
    #lang_wrap {
        top: 9px;
        left: 138%;
    }
        #lang_wrap li {
            float: none;
            margin-bottom: 10px;
        }
        
    .video_wrap iframe {
        min-height: 224px;
    }
}

@media screen and (max-width: 370px) {
    .mobile_nav {
        left: 8px;
    }
    #lang_wrap {
        left: 110%;
    }
    #page_id_1 .table_three_cols strong {
        display: inline;
    }
    #page_id_1 #page_body .table_three_cols .article_layout_2 h4, #page_id_1 #page_body .table_three_cols .article_layout_2 p {
        text-align: center;
        margin-left: auto;
    }
    #page_body h1, #page_body h2 {
        font-size: 2em;
        line-height: 34px;
    }
    #page_body h3 {
        font-size: 1.7em;
    }
    .artist_perex {
        padding-left: 0;
    }
    .video_wrap iframe {
        min-height: 180px;
    }
}