/**
 *  Base
 */
body {
    font-family: "Roboto Condensed";
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    background-attachment: fixed;
}

a:hover,
a:focus,
a:active {
    text-decoration: none;
}

legend {
    color:#fff;
}

/**
 *  icons
 */
.icon {
    background-image: url(../img/spritesheet.png);
    background-repeat: no-repeat;
    display: inline-block;
}

.icon-cloche {
    width: 66px;
    height: 39px;
    background-position: -5px -5px;
}

.icon-facebook {
    width: 30px;
    height: 30px;
    background-position: -81px -5px;
}

.icon-flag-uk {
    width: 21px;
    height: 16px;
    background-position: -81px -45px;
}

.icon-google {
    width: 30px;
    height: 30px;
    background-position: -5px -71px;
}

.icon-linkedin {
    width: 30px;
    height: 30px;
    background-position: -45px -71px;
}

.icon-instagram {
    width: 30px;
    height: 30px;
    background-position: -160px -76px;
}

.icon-mail {
    width: 35px;
    height: 24px;
    background-position: -121px -5px;
}

.icon-telephone {
    width: 30px;
    height: 29px;
    background-position: -121px -39px;
}

.icon-twitter {
    width: 30px;
    height: 30px;
    background-position: -85px -78px;
}

/**
 *  Layout
 */
html,
body {
    height: 100%;
}
.wrap {
    width: 100%;
    min-height: 100%;
    overflow: hidden;
    position: relative;
}
.container-fluid {
    /* max-width: 1366px; */
    margin: 0 auto;
}
.table-layout {
    display: table;
    width: 100%;
}
.table-layout > * {
    display: table-cell;
    vertical-align: middle;
    float: none;
}

/**
 *  Header
 */
#header {
    position: relative;
    margin-top: 60px;
    z-index: 12;
    width: 100%;
    min-height: 90px;
}
body.bus_home #header {
    position: absolute;
    top: 60px; left: 0;
    margin-top: 0;
}
#header:after {
    content: "";
    height: 52px;
    width: 300%;
    background: #2d3e46;
    opacity: 0.8;
    position: absolute;
    top: 21px;
	left: -100%;
    z-index: 1;
}
#header > * {
    position: relative;
    z-index: 2;
}
#header .item__1 {
    position: absolute;
    top: -60px; left: 15px;
}
#header .item__1 a {
	display: block;
	transition: all 0.3s;
}
#header .item__1 a:hover {
	transform: rotate(360deg);
}
#header .item__1 .btn {
    display: none;
}
#header .item__2 {
    text-align: center;
}
#menu {
   margin-top: 29px;
}
#menu a {
    display: inline-block;
    color: white;
    text-transform: uppercase;
    font-size: 20px;
    padding: 5px 20px;
    position: relative;
    transition: all 0.3s;
}
#menu a:after {
	content: "";
	position: absolute;
	width: 100%; height: 100%;
	top: 0; left: 0;
	background: #f3ff02;
	z-index: -1;
	transform: scale(0);
	transition: all 0.15s;
}
#menu a.active,
#menu a:hover {
    /*background: #f3ff02;*/
    color: #2e3e45;
}
#menu a.active:after,
#menu a:hover:after {
	transform: scale(1);
}
#menu a.active:before,
#menu a:hover:before,
#menu a.active + a:before,
#menu a:hover + a:before {
    background: transparent;
}
#menu a + a:before {
    content: "";
    width: 1px;
    height: 20px;
    background: #657136;
    position: absolute;
    top: 50%; left: -1px;
    margin-top: -10px;
}
#header .switcher {
    position: absolute;
    top: 49px; right: 15px;
    color: white;
}
.lang a {
    color: white;
    margin: 0 5px;
    position: relative;
    top: -10px;
    opacity: 0.7;
}
.lang a.current {
    opacity: 1;
}

/**
 *  Home page
 */
 
 .home {color:#FFFFFF;}
 
 
.fullSlider {
    position: relative;
    z-index: 1;
}
.slick-slider .slick-track, 
.slick-slider .slick-list {
    height: 100%;
    position: relative;
}
.fullSlider .slick-slide {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 100%;
    text-align: center;
    color: white;
    font-size: 27px;
    line-height: 1.1;
    padding-top: 200px;
}
q {
    quotes: "«" "»";
}
q:before,
q:after {
    color: #cad401;
    margin: 0 10px;
}

.bus_reservation {
    width: 360px;
    height: 360px;
    border-radius: 50%;
    /* background: #4d4d4f; */
    background: none;
    position: fixed;
    right: -30px;
    top: 50%;
    margin-top: -150px;
    text-align: center;
    color: white;
    z-index: 10;
    font-size: 18px;
}
.bus_reservation a {
    color: white;
    display: inline-block;
}
.bus_reservation a:after {
	content:"";
	width: 0%;
	height: 1px;
	background: #cad401;
	display: block;
	transition: width 0.3s;
}
.bus_reservation a:hover:after {
	width: 100%;
}
.bus_reservation .icon {
    display: block;
    margin: 20px auto 5px auto;
}
.cloche {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    margin: 30px auto 0 auto;
    background: #2f2f34;
    color: #cad401;
    box-shadow: 10px 3px 0 #38383a;
    padding-top: 16px;
	border: solid 3px #cad401;
}
.cloche .icon {
    display: block;
    margin: 10px auto;
}

/**
 *  Basic page
 */
.content {
    float: none;
    margin: 0 auto;
}
.content .entry {
    background: #2d3e46;
    background: rgba(45,62,70,0.8); 
    color: white;  
    margin-top: 35px;
    margin-bottom: 35px;
    padding: 35px;
    border-radius: 10px;
}
.entry-title {
    border-bottom: solid 1px #cad401;
    padding-top: 85px;
    padding-bottom: 10px;
    margin-bottom: 50px;
    position: relative;
}
.entry-title h1 {
    font-size: 27px;
    text-transform: uppercase;
    color: #cad401;
    margin: 0;
}
.entry-title .img-bus {
    position: absolute;
    bottom: -5px; right: 0;
}
.entry-content p {
    margin-bottom: 33px;
    font-size: 15px;
    font-weight: 300;
}
.entry-content p:last-child {
    margin-bottom: 0;
}
.entry-content .lead {
    color: #cad401;
    font-size: 20px;
    font-weight: 300;
}

/**
 *  Reservation page
 */
body.body_reservation .content .entry {
    background: #2d3e46;
}
body.body_reservation .entry-title {
    padding-top: 0;
    margin-bottom: 0;
}
.nav-tabs {
    border-color: #cad401;
    text-align: right;
    margin-top: 20px;
    margin-bottom: 20px;
}
.nav-tabs>li {
    display: inline-block;
    float: none;
}
.nav-tabs>li>a {
    color: white;
    border-color: #cad401;
    color: #cad401;
}
.nav-tabs>li>a:focus, 
.nav-tabs>li>a:hover,
.nav-tabs>li.active>a, 
.nav-tabs>li.active>a:focus, 
.nav-tabs>li.active>a:hover {
    background: #cad401;
    border-color: #cad401;
    color: #2d3e46;
}
#reservation_block .table-layout {
    width: auto;
}
#reservation_block .table-layout > * + * {
    padding: 0 15px;
}
#reservation_block .table-layout .form-control {
    background: transparent;
    border-color: #cad401;
    color: white;
}
#reservation_block .table-layout .form-control:focus {
    box-shadow: none;
}
#reservation_block h4 {
    color: #cad401;
    font-size: 20px;
    padding: 4px 0 20px 0;
    position: relative;
    padding-left: 45px;
}
#reservation_block h4.bus-name {
    padding-left: 0px;
}

#reservation_block h4 .step {
    color: white;
    width: 34px; height: 34px;
    display: inline-block;
    border-radius:  50%;
    border: solid 1px #cad401;
    text-align: center;
    line-height: 32px;
    position: absolute;
    top: 0; left: 0;
}

@media (min-width: 768px) {
    #reservation_block .col-sm-3 h4 {
        padding-left: 0;
        text-align: center;
    }

    #reservation_block .col-sm-3 h4 .step {
        display: block;
        margin: 0 auto 10px auto;
        position: relative;
    }
}

#reservation_block ul.nav-tabs {border:0;background: #cad4012e; padding: 10px;}
#reservation_block ul.nav-tabs li {margin-right: 10px; padding: 3px;}



.ui-datepicker {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
}

.ui-widget.ui-widget-content,
.ui-datepicker .ui-datepicker-header {
    border: none;
    background: #1f2d34;
    color: white;
}

.ui-datepicker .ui-datepicker-header {
    padding: 10px 0;
}

.ui-corner-all {
    border-radius: 0;
}

.ui-datepicker .ui-datepicker-prev, 
.ui-datepicker .ui-datepicker-next {
    width: 12px; height: 20px;
    padding: 5px;
    cursor: pointer;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-prev:hover {
    background: transparent url('../img/prevPicker.png') no-repeat 0 0;
    border: none;
    top: 10px; left: 10px;
}

.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-next:hover {
    background: transparent url('../img/nextPicker.png') no-repeat 0 0;
    border: none;
    top: 10px; right: 10px;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    background: none;
    display: none;
}

.ui-state-default, 
.ui-widget-content .ui-state-default, 
.ui-widget-header .ui-state-default, 
.ui-button, html .ui-button.ui-state-disabled:hover, 
html .ui-button.ui-state-disabled:active {
    border: solid 1px #cad401;
    background: #1f2d34;
    color: white;
    text-align: center;
    width: 34px; height: 34px;
    border-radius: 50%;
    line-height: 28px;
    margin: 0 auto;
    font-weight: bold;
}

.ui-state-active, 
.ui-widget-content .ui-state-active, 
.ui-widget-header .ui-state-active, 
a.ui-button:active, 
.ui-button:active, 
.ui-button.ui-state-active:hover {
    border: solid 1px #cad401;
    background: #cad401;
    color: #1f2d34;
}

.ui-datepicker-calendar tbody tr:nth-child(odd) {
    background: #26363d;
}

.ui-datepicker-calendar tbody tr td {
    padding: 5px;
}

.ui-radio {
    margin: 20px 0;
}

.ui-radio label {
    position: relative;
    text-align: center;
    padding: 0;
    display: block;
    padding: 6px;
    font-weight: bold;
    color: #838a8d;
}

.ui-radio label.active {
    color: white;
}

.iradio {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    border: solid 1px #1f2d34;
    border-radius: 6px;
}

.iradio.checked {
    border-color: #cad401;
}

span.error {
    color: red;
    display: block;
    font-weight: normal;
}

/**
 *  Footer
 */
#footer {
    background: #2d3e46;
    border-top: solid 4px #cad401;
    color: white;
    padding: 50px 0;
    width: 100%;
}
body.bus_home #footer {
    width: 100%;
    position: fixed;
    bottom: 0; left: 0;
    z-index: 10;
}
#footer a {
    color: white;
    position: relative;
    display: inline-block;
}
#footer a:after {
	content:"";
	width: 0%;
	height: 1px;
	background: #cad401;
	display: block;
	transition: width 0.3s;
}
#footer a:hover:after {
	width: 100%;
}
#footer .lead {
    font-size: 25px;
    text-transform: uppercase;
}
#footer .list-follow {
    font-size: 19px;
    text-align: center;
}
#footer .small,
#footer .small a {
    margin: 0;
    font-size: 11px;
    color: #91979a;
}
#footer .list-follow {
    margin: 0;
    float: right;
}
#footer .list-follow li {
    vertical-align: bottom;
}
#footer .list-follow li + li {
    margin-left: 35px;
}
#footer .list-follow .icon {
    margin: 0 5px;
    position: relative;
    top: 2px;
}
#footer .list-follow .icon:after {
	display: none;
}
#footer .list-follow .icon-telephone,
#footer .list-follow .icon-mail {
    display: block;
    margin: 0 auto 5px auto;
}
#footer .bus {
    position: absolute;
    top: -225px; left: 15px;
    width: 100%;
    max-width: 869px;
    display: none;
}
body.bus_home #footer .bus {
	display: block;
}

/**
 *  Responsive
 */
@media (max-height: 768px) {
    #footer .bus {
        max-width: 469px;
        top: -125px;
    }
}
@media (max-height: 1024px) and (max-width: 768px) {
    #footer .bus {
        max-width: 469px;
        top: -125px;
    }
}
@media (max-width: 1170px) {
    /* header */
    #header .item__1 a {
        display: block;
        width: 170px;
    }
    #menu {
        margin-top: 35px;
    }
    #menu a {
        font-size: 16px;
        padding: 0 12px;
    }
    #header .switcher {
        font-size: 12px;
    }
    /* home page */
    .fullSlider .slick-slide { 
        font-size: 20px;
    }
    /* basic page */
    .entry-title .img-bus {
        width: 300px;
    }
}
@media (max-width: 1023px) {
    #header {
        margin-top: 0;
    }
    body.bus_home #header {
        top: 0;
    }
    #header:after {
        top: 55px;
    }
    #header .item__1 {
        position: relative;
        width: auto;
        top: 0; left: 0;
    }
    #header .item__1 .btn {
        display: inline-block;
        float: right;
        margin-top: 42px;
        background: none;
        border: solid 2px #cad401;
        color: #cad401;
    }
    #header .item__1 .btn:focus {
        outline: 0;
    }
    #header .item__1 a {
        display: block;
        width: 130px;
    }
    #menu {
        margin-top: 0;
    }
    #menu a {
		z-index:100000;
        display: block;
        padding: 10px 20px;
    }
    #menu a + a:before {
        width: 20px;
        height: 1px;
        margin: 10px auto;
        position: absolute;
        top: -12px; left: 50%;
        margin-left: -10px;
        display: block;
    }
    #header .switcher {
        position: absolute;
        top:72px;
		right:83px;
    }
    .lang a {
        top: 0;
    }
    #navigation {
        display: none;
        background: #2d3e46;
        background: rgba(45,62,70,0.8);
        margin: -5px -15px 0 -15px;
        padding: 20px 0;
    }
    #navigation.open {
        display: block;
    }
    /* basic page */
    .entry-title .img-bus {
        width: 200px;
    }
    .bus_reservation {
        display: none;
    }
}
@media (max-width: 960px) {
    /* footer */
    #footer .lead {
        font-size: 16px;
    }
    #footer .list-follow {
        font-size: 14px;
    }
    #footer .list-follow li + li {
        margin-left: 10px;
    }
}

@media (max-width: 767px) {
    /* home page */
    .slick-slider .slick-track, 
    .slick-slider .slick-list,
    .slick-slider .slick-slide {
        /* min-height: 600px; */
        position: relative;
    }
    .bus_reservation { 
        width: 160px;
        height: 160px;
        font-size: 11px;
        right: -15px;
        top: 50%;
        margin-top: 50px;
    }
    .cloche {
        width: 80px;
        height: 80px;
        margin-bottom: 15px;
    }
    .cloche .icon {
        margin-top: -5px;
        margin-bottom: 5px;
    }
    .bus_reservation .icon-telephone,
    .bus_reservation .icon-mail {
        display: none;
    }
    .bus_reservation {
    	display: none;
    }
    /* page reservation */
    .nav-tabs {
        margin-top: 30px;
        border: none;
    }
    .nav-tabs > li {
        width: 50%;
        float: left;
        text-align: center;
    }
    .nav-tabs > li > a {
        border-radius: 0;
    }
    /* footer */
    #footer {
        padding: 30px 0;
    }
    body.bus_home #footer {
        position: relative;
    }
    #footer .lead {
        font-size: 16px;
        text-align: center;
    }
    #footer .list-follow {
        font-size: 14px;
        float: none;
    }
    #footer .list-follow li,
    #footer .list-follow li + li {
        display: block;
        margin: 20px 0;
    }
    #footer .small {
        text-align: center;
        margin-top: 15px;
    }
    #footer .bus { 
        max-width: 269px;
        top: -70px;
    }
}

@media (max-width: 479px) {
    /* basic page */
    .entry-title .img-bus {
        display: none;
    }
    /* page basic */
    .content .entry {
        padding-left: 15px;
        padding-right: 15px;
    }
    /* page reservation*/
    .ui-state-default, 
    .ui-widget-content .ui-state-default, 
    .ui-widget-header .ui-state-default, 
    .ui-button, html .ui-button.ui-state-disabled:hover, 
    html .ui-button.ui-state-disabled:active {
        width: 20px; height: 20px;
        line-height: 15px;
        font-size: 10px;
        font-weight: normal;
    }
    /* footer */
    #footer .bus {
        max-width: 180px;
        top: -47px;
    }
}

.ui-radio {
    display: inline-block;
    position: relative;
    text-align: center;
    padding: 0;
    display: block;
    padding: 6px;
    font-weight: bold;
    color: #ffffff;
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: 400;
    cursor: pointer;
    border: solid 1px #1f2d34;
    border-radius: 6px;
    text-align:center;
    white-space: initial;
}
.ui-radio:hover,
.ui-radio:focus,
.ui-radio.selected {
    border: solid 1px #cad401;
    color: #ffffff;
}
.service_pas_visible {
    /* display:none; */
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    font-weight:400;
}

.wc_payment_methods,
.wc_payment_methods * {
    color:black !important;
}

#observations-et-suggestions {
    width:100%;
}


/*  enquete satisfaction   */

#wpcf7-f720-p718-o1 .wpcf7-radio .wpcf7-list-item-label {display:none;}
#wpcf7-f720-p718-o1 .wpcf7-radio span.wpcf7-list-item {padding:0 10px 0 24px;}
#wpcf7-f720-p718-o1 .wpcf7-radio span.wpcf7-list-item:nth-child(1){background:url('../img/smiley_1.png') no-repeat;}
#wpcf7-f720-p718-o1 .wpcf7-radio span.wpcf7-list-item:nth-child(2){background:url('../img/smiley_2.png') no-repeat;}
#wpcf7-f720-p718-o1 .wpcf7-radio span.wpcf7-list-item:nth-child(3){background:url('../img/smiley_3.png') no-repeat;}
#wpcf7-f720-p718-o1 .wpcf7-radio span.wpcf7-list-item:nth-child(4){background:url('../img/smiley_4.png') no-repeat;}

.reservation-choix_boissons .woocommerce ul.products li.product  {display:block;float:left;width:100%;margin-bottom:20px;}
.reservation-choix_boissons .woocommerce  ul.products li.product img {display:none;}
.reservation-choix_boissons .woocommerce  ul.products li.product h2 {border:none;text-align: left;}
.reservation-choix_boissons .woocommerce  ul.products li.product .gwp_desc_produit {float:left;}
.reservation-choix_boissons .woocommerce  ul.products li.product .price {float:right;width:40px;text-align: right;}
.reservation-choix_boissons .woocommerce  ul.products li.product .quantity {float:right;margin: 0 10px;}



.reservation-choix_menus .woocommerce ul.products li.product  {display:block;float:left;width:100%;margin-bottom:20px;}
.reservation-choix_menus .woocommerce  ul.products li.product img {display:none;}
.reservation-choix_menus .woocommerce  ul.products li.product h2 {float:left;width:44%;border:none;text-align: left;}
.reservation-choix_menus .woocommerce  ul.products li.product .gwp_desc_produit {float:left;width: 85%;}
.reservation-choix_menus .woocommerce  ul.products li.product .price {float:right;text-align:right;width:40px;margin-top:32px}
.reservation-choix_menus .woocommerce  ul.products li.product .gwp_gty {float:left;width: 93%;}
.reservation-choix_menus .woocommerce  ul.products li.product .quantity {float:right;margin: 0 10px;}

.woocommerce table.shop_table td small.includes_tax {
	float:right;
	}

.complet {color:red;}
.presque_complet {font-size:13px;color:orange;}


.parcours:before {background: url("../images/bus.png") no-repeat center center;background-size: cover;}




.main-content {margin-top: 58px;}

.toppage {position: fixed;top: 0; left: 0; right: 0;z-index: 99999;box-shadow: 0 3px 3px rgba(0, 0, 0, .15);}
@media (max-width: 991px) {
	.toppage .header-logo,
	.toppage .header-logo:before,
	.toppage .header-logo img,
	.toppage .flashnews,
	.toppage .flashnews-wrap {-webkit-transition: all .4s 0s; transition: all .4s 0s;}
	.toppage--scroll .header-logo {top: -55px;}
	.toppage--scroll .header-logo:before {width: 100px;height: 82px;border-radius: 120px 120px 0 0;}
	.toppage--scroll .header-logo img {width: 80px;}
	.toppage--scroll .flashnews {height: 30px;}
	.toppage--scroll .flashnews-wrap {padding: 7px 0;font-size: .9em;}
}
@media (min-width: 992px) {
	.main-content {margin-top: 160px;}
	.toppage--top {position: absolute;}
	.toppage--scroll {position: fixed;}
	.toppage--scroll .header-topbar .d-flex {height: 36px;}
	.toppage--scroll .header-logo {left: 15px;top: -30px;}
	.toppage--scroll .header-logo:before {left: -10px;top: 6px;width: 140px;height: 105px;}
	.toppage--scroll .header-logo img {width: 120px;}
	.toppage--scroll ul.nav-menu {padding: 7px 0 4px;}
	.toppage--scroll ul.nav-menu a {padding: 6px 11px;}
	.toppage--scroll ul.nav-menu li.nav-resa a {font-size: 16px;}
	.toppage--scroll ul.nav-menu ul.sub-menu {top: 34px;}
	.toppage--scroll .flashnews {height: 30px;}
	.toppage--scroll .flashnews p {font-size: 1em;}
	.toppage--scroll .flashnews-wrap {padding: 5px 0;font-size: .9em;}
}






