@import url(https://fonts.googleapis.com/css?family=Montserrat:400,700);
@import url(https://fonts.googleapis.com/css?family=Ubuntu+Condensed);
@import url("/data/Themes/vmcv16/mega-menu.css");

text, tspan {
    font-family: "Ubuntu Condensed";
    font-weight: 400;
}

/* CUSTOM CLASS FOR QUICKBAR WITH FIXED MENU BOOTSTRAP */

#quickbar-container {
    z-index: 1050 !important;
}

.syspopupMenu {
    z-index: 1045 !important;
}

.g-recaptcha {
    display: inline-block;
}
/*
body {
padding-top: 180px;
}
*/

/* CUSTOM CLASSES FOR QSMENU EDIT HOVER */

.body-editmode .qsMenu img {
    box-shadow: 0px 0px 5px #FFFFFF;
}

.body-editmode .qs-edit .qsMenu {
    display: none;
}

.body-editmode .qsMenu {
    position: absolute;
    z-index: 1040;
    padding: 5px;
    margin: 0px auto 0px auto;
}

.body-editmode .qsMenu-title {
    display: none;
    position: absolute;
    z-index: 1041;
    margin-top: -40px;
    background: #000000;
    color: #FFFFFF;
    padding: 2px 5px 2px 5px;
    font-size: 12px;
    white-space: nowrap;
}

.body-editmode .qs-edit:hover .qsMenu,
.body-editmode .qsMenu:hover,
.body-editmode .qsMenu:hover .qsMenu-title {
    display: block; 
}

.body-editmode .qs-edit:hover {
    /* outline: #f4f4f4 solid 1px;
    background-image: url('/data/dataimages/upload/bg-stripe-edit.png') !important;
    background-repeat: repeat; */
}

.body-editmode .qsMenu {
    animation: fadeIn ease-in-out 0.6s;
    animation-iteration-count: 1;
    transform-origin: 50% 50%;
    animation-fill-mode:forwards;
}

/* STANDARD ANIMATIONS */

@keyframes fadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity:100;
    }
}


/* CUSTOM CLASS QS */

.width-100 {
    width: 100%;
}

.max-width-100 {
    max-width: 100%;
}

img.image-detail {
    border-radius: 10px;
    margin-bottom: 60px;
}

.inline-block {
    display: inline-block !important;
}

.tplBookingHome .panel,
.tplListPanels .panel {
    border: none;
}

.tplArticlePub h2, .tplArticlePub h3 {
    color: #006fb7;
}

#dphpub, #dphlink {
    margin-bottom: 60px;
}

#dphpub h6 {
    color: #7c7c7c;
    border-bottom: solid 1px #e9e9e9;
    padding-bottom: 5px;
    margin-bottom: 20px;
}

#dphpub .list-item,
#dphlink .list-item {
    margin-bottom: 20px;
}

#dphpub .list-item .legend,
#dphlink .list-item .legend {
    position: absolute;
    padding: 0px 10px;
    margin-top: -30px;
    height: 30px;
    line-height: 30px;
    overflow: hidden;
    background-color: rgba(0, 111, 183, 0.92);
    color: #FFFFFF;
}

.tplMenuHBootstrap .navbar-toggle .icon-bar {
    background-color: #006fb7 !important;
}


.tplMenuHBootstrap .navbar-toggle:hover .icon-bar,
.tplMenuHBootstrap .navbar-toggle:active .icon-bar,
.tplMenuHBootstrap .navbar-toggle:focus .icon-bar {
    background-color: #FFFFFF !important;
}

.container-body {
    padding: 50px 0px;
}

.container-body.bg-gray {
    background-color: #f4f4f4;
}

.container-body.tplHeader {
    width: 100%;
    background: #FFFFFF;
    padding: 10px 0px;
}

.tplHeader .nav-social a,
.tplHeader .nav-tools a {
    display: inline-block;
    padding: 0px 5px;
    font-weight: bold;
}

.tplHeader .nav-social a {
    color: #000000;
}

.tplHeader .nav-social i,
.tplHeader .nav-tools i,
.tplHeader .nav-social .glyphicon,
.tplHeader .nav-tools .glyphicon {
    font-size: 20px;
}

.tplHeader .nav-social a:hover {
    color: #006fb7;
}

.tplHeader .nav-tools a .tools-label {
    color: #000000;
    margin-top: 5px;
    display: block;
}

.logo {
    display: block;
    margin-bottom: 15px;
}

.logo-home {
    position: absolute;
    z-index: 999;
    width: 100%;
    margin: -185px 0px 0px 0px;
}

.navbar-brand {
    padding: 8px 15px !important;
}

.tplHtmlBodyHome .navbar-brand {
    display: none !important;
}

/*
.tplMenuHBootstrap .navbar {
border: none;
border-bottom: solid 10px #006fb7;
padding-bottom: 10px;
}
*/
.tplMenuHBootstrap .navbar {
    margin-bottom:0px;
}
.tplMenuHBootstrap .navbar-nav > li {
    background: #FFFFFF;
    margin: 0px 3px 0px 0px;
}

.tplMenuHBootstrap .navbar-nav > li > a {
    font-weight: bold;
    font-size: 18px;
}

.container-body.tplNavPath {
    padding: 0px;
    min-height: 20px;
}

.container-body.tplBookingHome {
    background-color: #006fb7;
}

.tplBookingHome .panel-heading h2 {
    font-size: 30px;
    margin: 5px 0px;
}

.tplBookingHome .panel-heading h4 {
    font-size: 16px;
    margin: 5px 0px;
}

.tplBookingHome .panel-heading .glyphicon {
    font-size: 42px;
    margin-top: 10px;
}

.tplBookingHome .panel-itineraire .panel-body {
    min-height: 233px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.tplBookingHome .panel-itineraire.fourlines .panel-body {
    min-height: 310px;
}

.tplBookingHome .panel-itineraire .panel-body .nav-tabs {
    margin-bottom: 25px;
}

.tplBookingHome .panel-itineraire .panel-body .form-group {
    margin-bottom: 5px;
}

.tplBookingHome .panel-itineraire .panel-body hr {
    margin-top: 5px;
    margin-bottom: 15px;
}

.tplBookingHome .panel-itineraire .panel-body .form-group .btn {
    margin-top: 10px;
}

.tplBookingHome .panel-itineraire.fourlines .panel-body .form-group .btn {
    margin-top: 20px !important;
}

.tplBookingHome .panel-itineraire .panel-heading h2,
.tplBookingHome .panel-itineraire .panel-heading .glyphicon {
    color: #794991;   
}

.tplBookingHome .panel-horaire .panel-heading h2,
.tplBookingHome .panel-horaire .panel-heading .glyphicon {
    color: #5dbec1;   
}

.tplBookingHome .panel-trafic .panel-heading h2,
.tplBookingHome .panel-trafic .panel-heading .glyphicon {
    color: #ef9842;   
}

.panel-footer a.btn-search {
    font-size: 22px;
    font-weight: bold;
    color: #FFFFFF;
}

.panel-footer a.btn-more{
    font-size: 18px;
    font-weight: bold;
    color: #FFFFFF;
}

.panel-footer a.btn-search .glyphicon {
    margin-right: 10px;
}

.panel-footer a.btn-more .glyphicon {
    font-size: 28px;
}

.panel-footer a.btn-search:hover,
.panel-footer a.btn-more:hover {
    opacity: 0.6;
}

.panel-horaire .line-bottom,
.panel-trafic .line-bottom {
    background-image: url('/data/dataimages/upload/bg-line.png');
    background-repeat: no-repeat;
    background-position: center bottom;
}

.panel-horaire .line-top,
.panel-trafic .line-top {
    background-image: url('/data/dataimages/upload/bg-line.png');
    background-repeat: no-repeat;
    background-position: center top;
}

.panel-horaire .line-bottom-top,
.panel-trafic .line-bottom-top {
    background-image: url('/data/dataimages/upload/bg-line.png');
    background-repeat: repeat-y;
    background-position: center center;
}

.panel-horaire .panel-body,
.panel-trafic .panel-body {
    padding: 15px;
}

.panel-horaire .panel-body .row,
.panel-trafic .panel-body .row {
    padding: 0px 10px;
    background-image: url('/data/dataimages/upload/bg-line.png');
    background-repeat: repeat-x;
    background-position: center center;
}

.panel-horaire .panel-body .row .col-xs-3,
.panel-trafic .panel-body .row .col-xs-3 {
    padding: 0px;
}

.panel-horaire .panel-body .line,
.panel-trafic .panel-body .line {
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 50px;
    border-style: solid;
    border-width: 5px;
    color: #000000;
    margin: 14px 10px;
    font-weight: bold;
    font-size: 18px;
    background-color: #FFFFFF;
}

.panel-horaire.fourlines .panel-body .line,
.panel-trafic.fourlines .panel-body .line {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

.panel-trafic .panel-body .line {
    border-color: #f4f4f4;
    color: #d3d3d3;
}

.panel-horaire .panel-body a:hover, 
.panel-horaire .panel-body a.active,
.panel-trafic .panel-body a:hover, 
.panel-trafic .panel-body a.active {
    color: #FFFFFF;
}

.panel-trafic .panel-body a:hover, 
.panel-trafic .panel-body a.active {
    border-style: dotted !important;
    border-color: #f4f4f4 !important;
}

.panel-trafic .popover {
    min-width: 200px;
}

h1 .color201 {
    color: #0073b8 !important;
}

#line201 h1 span,
#line201 .panel-time td a,
#linecolor201 {
    color: #0073b8 !important;
}
#line201 .panel-time,
#line201 .timeline .line,
#line201 .timeline .stop,
a.color201 {
    border-color: #0073b8 !important;
}
#line201 .panel-time .panel-heading,
.badge.color201,
a.color201:hover,
a.color201.active {
    background-color: #0073b8 !important;
    border-color: #0073b8 !important;
}

#line202 h1 span,
#line202 .panel-time td a,
#linecolor202 {
    color: #794991 !important;
}
#line202 .panel-time,
#line202 .timeline .line,
#line202 .timeline .stop,
a.color202 {
    border-color: #794991 !important;
}
#line202 .panel-time .panel-heading,
.badge.color202,
a.color202:hover,
a.color202.active {
    background-color: #794991 !important;
    border-color: #794991 !important;
}

#line203 h1 span,
#line203 .panel-time td a,
#linecolor203 {
    color: #db9dc2 !important;
}
#line203 .panel-time,
#line203 .timeline .line,
#line203 .timeline .stop,
a.color203 {
    border-color: #db9dc2 !important;
}
#line203 .panel-time .panel-heading,
.badge.color203,
a.color203:hover,
a.color203.active {
    background-color: #db9dc2 !important;
    border-color: #db9dc2 !important;
}

#line204 h1 span,
#line204 .panel-time td a,
#linecolor204 {
    color: #ef9842 !important;
}
#line204 .panel-time,
#line204 .timeline .line,
#line204 .timeline .stop,
a.color204 {
    border-color: #ef9842 !important;
}
#line204 .panel-time .panel-heading,
.badge.color204,
a.color204:hover,
a.color204.active {
    background-color: #ef9842 !important;
    border-color: #ef9842 !important;
}

#line205 h1 span,
#line205 .panel-time td a,
#linecolor205 {
    color: #a3cc8a !important;
}
#line205 .panel-time,
#line205 .timeline .line,
#line205 .timeline .stop,
a.color205 {
    border-color: #a3cc8a !important;
}
#line205 .panel-time .panel-heading,
.badge.color205,
a.color205:hover,
a.color205.active {
    background-color: #a3cc8a !important;
    border-color: #a3cc8a !important;
}

#line206 h1 span,
#line206 .panel-time td a,
#linecolor206 {
    color: #096b35 !important;
}
#line206 .panel-time,
#line206 .timeline .line,
#line206 .timeline .stop,
a.color206 {
    border-color: #096b35 !important;
}
#line206 .panel-time .panel-heading,
.badge.color206,
a.color206:hover,
a.color206.active {
    background-color: #096b35 !important;
    border-color: #096b35 !important;
}

#line207 h1 span,
#line207 .panel-time td a,
#linecolor207 {
    color: #b37535 !important;
}
#line207 .panel-time,
#line207 .timeline .line,
#line207 .timeline .stop,
a.color207 {
    border-color: #b37535 !important;
}
#line207 .panel-time .panel-heading,
.badge.color207,
a.color207:hover,
a.color207.active {
    background-color: #b37535 !important;
    border-color: #b37535 !important;
}

#line208 h1 span,
#line208 .panel-time td a,
#linecolor208 {
    color: #343A98 !important;
}
#line208 .panel-time,
#line208 .timeline .line,
#line208 .timeline .stop,
a.color208 {
    border-color: #343A98 !important;
}
#line208 .panel-time .panel-heading,
.badge.color208,
a.color208:hover,
a.color208.active {
    background-color: #343A98 !important;
    border-color: #343A98 !important;
}

#line209 h1 span,
#line209 .panel-time td a,
#linecolor209 {
    color: #7b1f20 !important;
}
#line209 .panel-time,
#line209 .timeline .line,
#line209 .timeline .stop,
a.color209 {
    border-color: #7b1f20 !important;
}
#line209 .panel-time .panel-heading,
.badge.color209,
a.color209:hover,
a.color209.active {
    background-color: #7b1f20 !important;
    border-color: #7b1f20 !important;
}

#line210 h1 span,
#line210 .panel-time td a,
#linecolor210 {
    color: #d63f35 !important;
}
#line210 .panel-time,
#line210 .timeline .line,
#line210 .timeline .stop,
a.color210 {
    border-color: #d63f35 !important;
}
#line210 .panel-time .panel-heading,
.badge.color210,
a.color210:hover,
a.color210.active {
    background-color: #d63f35 !important;
    border-color: #d63f35 !important;
}

#line211 h1 span,
#line211 .panel-time td a,
#linecolor211 {
    color: #5dbec1 !important;
}
#line211 .panel-time,
#line211 .timeline .line,
#line211 .timeline .stop,
a.color211 {
    border-color: #5dbec1 !important;
}
#line211 .panel-time .panel-heading,
.badge.color211,
a.color211:hover,
a.color211.active {
    background-color: #5dbec1 !important;
    border-color: #5dbec1 !important;
}

#line212 h1 span,
#line212 .panel-time td a,
#linecolor212 {
    color: #6590a0 !important;
}
#line212 .panel-time,
#line212 .timeline .line,
#line212 .timeline .stop,
a.color212 {
    border-color: #6590a0 !important;
}
#line212 .panel-time .panel-heading,
.badge.color212,
a.color212:hover,
a.color212.active {
    background-color: #6590a0 !important;
    border-color: #6590a0 !important;
}

#line213 h1 span,
#line213 .panel-time td a,
#linecolor213 {
    color: #e43983 !important;
}
#line213 .panel-time,
#line213 .timeline .line,
#line213 .timeline .stop,
a.color213 {
    border-color: #e43983 !important;
}
#line213 .panel-time .panel-heading,
.badge.color213,
a.color213:hover,
a.color213.active {
    background-color: #e43983 !important;
    border-color: #e43983 !important;
}

#line214 h1 span,
#line214 .panel-time td a,
#linecolor214 {
    color: #927db3 !important;
}
#line214 .panel-time,
#line214 .timeline .line,
#line214 .timeline .stop,
a.color214 {
    border-color: #927db3 !important;
}
#line214 .panel-time .panel-heading,
.badge.color214,
a.color214:hover,
a.color214.active {
    background-color: #927db3 !important;
    border-color: #927db3 !important;
}

#line215 h1 span,
#line215 .panel-time td a,
#linecolor215 {
    color: #E96D2B !important;
}
#line215 .panel-time,
#line215 .timeline .line,
#line215 .timeline .stop,
a.color215 {
    border-color: #E96D2B !important;
}
#line215 .panel-time .panel-heading,
.badge.color215,
a.color215:hover,
a.color215.active {
    background-color: #E96D2B !important;
    border-color: #E96D2B !important;
}

#line216 h1 span,
#line216 .panel-time td a,
#linecolor216 {
    color: #919396 !important;
}
#line216 .panel-time,
#line216 .timeline .line,
#line216 .timeline .stop,
a.color216 {
    border-color: #919396 !important;
}
#line216 .panel-time .panel-heading,
.badge.color216,
a.color216:hover,
a.color216.active {
    background-color: #919396 !important;
    border-color: #919396 !important;
}

a.colorGP {
    border-color: #d0b33c !important;
}

.badge.colorpetitprince {
    background-color: #000 !important;
    border-color: #000 !important;
}

.badge.colorGP,
a.colorGP:hover,
a.colorGP.active {
    background-color: #d0b33c !important;
    border-color: #d0b33c !important;
}

a.colorB {
    border-color: #000 !important;
}
.badge.colorB,
a.colorB:hover,
a.colorB.active {
    background-color: #000 !important;
    border-color: #000 !important;
}

.tplArticleLine .line {
    display: block;
    width: 80px;
    height: 80px;
    line-height: 64px;
    border: solid 8px #006fb7;
    color: #000000;
    margin: 0px 0px 0px -38px;
    font-size: 20px;
    text-align: center;
    background-color: #FFFFFF;
}

.tplArticleLine .timeline {
    margin-left: 50px;
}

.tplArticleLine .timeline .stop {
    display: block;
    padding: 8px 0px;
    border-left: solid 6px #006fb7;
}

.tplArticleLine .timeline div {
    display: inline-block;
}

.tplArticleLine .timeline .time {
    width: 20px;
    vertical-align: top;
    margin-left: -47px;
}

.tplArticleLine .timeline .dot {
    width: 20px;
    height: 20px;
    border: solid 3px #000000;
    border-radius: 10px;
    margin: 0px 10px;
    background-color: #FFFFFF;
}

.tplArticleLine .timeline .jonction .dot {
    height: 50px;
}

.tplArticleLine .timeline .label-stop {
    vertical-align: top;
}

.tplArticleLine .timeline .label-stop .arret {
    color: #aaa;
}

.tplArticleLine .timeline .next .label-stop .arret {
    color: #000000;
}

.tplArticleLine .timeline .jonction-lines {
    display: block;
}

.container-body.tplListCarousel {
    padding: 0px;
}

.container-body.tplListPanels {
    background-color: #b4b4b4;
    background-image: url('/data/dataimages/upload/bg-trame.png');
    background-repeat: no-repeat;
    background-position: center bottom;
}

.tplListPanels .panel-color1 .panel-footer {
    background-color: #006fb7;
}

.tplListPanels .panel-color2 .panel-footer {
    background-color: #7db256;
}

.tplListPanels .panel-color3 .panel-footer {
    background-color: #794991;
}


.tplListPanels .panel-body {
    padding-bottom: 0px;
    height: 325px;
    overflow: hidden;
}

.tplListPanels .panel-image {
    margin: 25px -25px 0px -25px;
}

.container-body.tplAddressFooter {
    background: #f4f4f4;
}

.container-body.tplAddressFooter h2 {
    color: #006fb7;
    margin-bottom: 20px;
}

.container-body.tplSystemFooter {
    background: #f4f4f4;
    padding-bottom: 10px;
}

.qsPageHeader {
    margin-bottom: 30px;
}


.actions a {
    display: inline-block;
}

.social-link-page {
    margin-top: 60px;   
}

.facebook-page {
    overflow: hidden;   
}

/* CUSTOM CLASSES FOR LANGUAGE */


.language {
    margin: 7px 20px 7px 0px;
}

.language a {
    display: block;
    font-size: 15px;
    color: #000000;
    line-height: 1.2em;
}

.language a:hover,
.language a.active {
    color: #006fb7;
}

.language .glyphicon {
    visibility: hidden;
    font-size: 12px;
}

.language a:hover .glyphicon,
.language .active .glyphicon {
    visibility: visible;
}

/* CUSTOM CLASSES FOR SEARCH */

.search {
    vertical-align: top;
}

/* CUSTOM CLASSES FOR CONTACT FORM */

.legend-required {
    text-align: right;
}

#captcha-control-invalid {
    color: #a94442;
}

.googleMap {
    margin-bottom: 25px;
}

/* CUSTOM CLASSES FOR CAROUSEL */

#qsCarousel .item {
    background-position: center center;
    background-size: cover;
    height: 80px;
    line-height: 80px;
}

.tplHtmlBodyHome #qsCarousel .item {
    background-position: center top;
    background-size: cover;
    height: 465px;
    line-height: 465px;
}

@keyframes slideTop {
    0% {
        opacity:0.5;
        margin-top: 8%;
        transform: rotate(0deg);
    }
    100% {
        opacity:0.95;
        margin-top: 4%;
        transform: rotate(-7deg);
    }
}


.tplHtmlBodyHome #qsCarousel .item .item-info {
    display:inline-block;
}

#qsCarousel .carousel-indicators li,
#qsCarouselPubs .carousel-indicators li{
    width: 16px;
    height: 16px;
    border: none;
    border-radius: 8px;
    margin: 0px;
    background-color: #FFFFFF;
    opacity: 0.5;
}

#qsCarousel .carousel-indicators li.active,
#qsCarouselPubs .carousel-indicators li.active{
    opacity: 1;
}

#qsCarousel .item .item-info {
    display: none;
    animation: slideTop 2s;
    animation-iteration-count: 1;
    width: 275px;
    height: 275px;
    vertical-align: top;
    line-height:normal;
    background: #FFFFFF;
    border-radius: 50%;
    text-align: center;
    opacity:0.95;
    margin: 4% 0% 0% 15%;
    transform: rotate(-7deg);
}

#qsCarousel .item .item-info .bubble {
    display: block;
    position: absolute;
    width: 75px;
    height: 75px;
    background: #FFFFFF;
    border-radius: 50%;
    overflow: hidden;
    bottom: -15px;
    right: 0px;
}

#qsCarousel .item .item-info h3 {
    display: inline-block;
    width: 80%;
    margin: 0px;
    padding: 50px 20px 10px 20px;
    color: #006fb7;
    font-size: 24px;
    font-weight: normal;
}

#qsCarousel .item .item-info h5 {
    display: inline-block;
    width: 80%;
    margin: 0px;
    padding: 10px 20px 10px 20px;
    color: #000000;
}

.tplHtmlBody #qsCarousel .carousel-control .glyphicon {
    display: none;
}

#qsCarousel .carousel-indicators {
    display: none;
    top: 5%;
    left: 10%;
    height: 16px;
}

.tplHtmlBodyHome #qsCarousel .carousel-indicators {
    display: block;
}

#qsCarouselPubs .item .item-image {
    background-position: center bottom;
    background-size: cover;
    height: 355px;
    margin-bottom: 50px;
}

#qsCarouselPubs .item .btn-lg {
    padding: 20px 30px;

}

#qsCarouselPubs .item  .item-info {
    height: 120px;
    margin-bottom: 20px;
}

#qsCarouselPubs .item  .item-info h2 {
    margin-bottom: 30px;
}

#qsCarouselPubs .carousel-control {
    background: transparent;
}

#qsCarouselPubs .carousel-indicators {
    bottom: 20%;
}

#qsMap {
    width: 100%;
    height: 320px;
    border: solid 10px #FFFFFF;
    border-radius: 10px;
}

/* OLD version vertical tools

.tplVerticalTools {
position: fixed;
z-index: 1005;
right: -145px;
bottom: 0px;
margin: 20px;
animation-name: slideLeft;
animation-duration: 0.5s;
}

.tplVerticalTools.open {
animation-name: slideRight;
animation-duration: 0.5s;
right: 0px;
}

.tplVerticalTools.open a.btn-tools {
animation-name: slideMarginLeft;
animation-duration: 0.5s;
margin-left: 0px;
}

.tplVerticalTools a.btn-tools .glyphicon {
animation-name: rotateLeft;
animation-duration: 0.5s;
transform: rotate(0deg);
}

.tplVerticalTools.open a.btn-tools .glyphicon {
animation-name: rotateRight;
animation-duration: 0.5s;
transform: rotate(180deg);
}

.tplVerticalTools a.btn-tools {
animation-name: slideMarginRight;
animation-duration: 0.5s;
font-size: 30px;
color: #000000;
text-shadow: 0px 0px 5px rgba(255, 255, 255, 0.8);
margin-left: -50px;
}

.tplVerticalTools a.btn-tools:hover {
color: #FFFFFF;
text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.8);
}

.tplVerticalTools .list-item a {
display: block;
background-color: #f4f4f4;
width: 95px;
height: 95px;
padding: 10px;
margin: 5px;
opacity: 0.95;
}

.tplVerticalTools .list-item a:hover {
background-color: #0669a9;
color: #FFFFFF;
}

.tplVerticalTools .list-item a label {
height: 35px;
overflow: hidden;
font-size: 16px;
line-height: 1.1em;
margin-bottom: 0px;
}


.tplVerticalTools .list-item a .glyphicon {
font-size: 30px;
}

@keyframes slideRight {
0% {right: -145px;}
100% {right: 0px;}
}

@keyframes slideLeft {
0% {right: 0px;}
100% {right: -145px;}
}

@keyframes slideMarginRight {
0% {margin-left: 0px;}
100% {margin-left: -50px;}
}

@keyframes slideMarginLeft {
0% {margin-left: -50px;}
100% {margin-left: 0px;}
}

@keyframes rotateRight {
0% {transform: rotate(0deg);}
100% {transform: rotate(180deg);}
}

@keyframes rotateLeft {
0% {transform: rotate(180deg);}
100% {transform: rotate(0deg);}
}

*/

.tplVerticalTools {
    position: fixed;
    z-index: 1005;
    width: 100%;
    height: auto;
    bottom: 0;
    top: auto;
    border-top: solid 5px #FFFFFF;
    background-color: #f4f4f4;
}

.tplVerticalTools .list-item a {
    display: inline-block;
    padding: 8px 0px;
    margin: 0px;
    width: 15%;
    vertical-align: top;
}

.tplVerticalTools .list-item a:hover {
    color: #000000;
}

.tplVerticalTools .list-item a .glyphicon {
    font-size: 20px;
}

.tplVerticalTools .list-item a label {
    display: block;
    font-size: 9px;
}

@media (min-width: 480px) {
    .tplVerticalTools .list-item a .glyphicon {
        font-size: 30px;
    }
    .tplVerticalTools .list-item a label {
        font-size: 12px;
    }  
}

@media (min-width: 1430px) {
    .body-editmode .tplVerticalTools .qsMenu {
        margin-left: -120px;
    }

    .tplVerticalTools {
        width: 95px;
        right: 0px;
        bottom: 20px;
        border-top: none;
        margin: 0px;
    }

    .tplVerticalTools .list-item a {
        display: block;
        width: 95px;
        padding: 15px 10px;
        margin: 0px;
        opacity: 0.95;
    }

    .tplVerticalTools .list-item a label {
        font-size: 16px;
        line-height: 1.1em;
        margin-bottom: 0px;
    }
}

.panel-time {
    border-style: solid;
    border-width: 1px;
}

.panel-time .table td span {
    display: inline-block;
    width: 40px;
    font-size: 14px;
}

#line214 .panel-time .table td span {
    width: 55px;
}

.panel-time .panel-heading {
    color: #FFFFFF;
    /* background-color: #006fb7; */
}

.panel-gray {
    border: solid 1px #e9e9e9 !important;
}

.panel-gray .table td span {
    display: inline-block;
    width: 35px;
    font-size: 14px;
}

.panel-gray .panel-heading {
    background-color: #e9e9e9;
}

.info-line .panel-body {
    font-size: 0.8em;
}

.panel-itineraire .glyphicon-info-sign,
.info-line .glyphicon-info-sign {
    color: #006fb7;
}

.container-body.tplGalleryDetail {
    background: #f4f4f4;
}

.tplListLines a.list-item {
    display: block;
    border-style: solid;
    border-width: 8px;
    padding: 10px;
    text-align: center;
    color: #000000;
    height: 165px;
    margin-bottom: 20px;
}

.tplListLines a.list-item h2 {
    margin-top: 15px;
    margin-bottom: 10px;	
}
.tplListLines a.list-item h4 {
    font-size: 15px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.tplListLines a.list-item:hover {
    color: #FFFFFF;
}

.tplListTrafic .panel-default > .panel-heading {
    background-color: #f4f4f4;
}

.tplListTrafic td .btn {
    margin-bottom: 5px;
}

.panel .list-trafic .row {
    margin-right: 0px;
    margin-left: 0px;
}

.list-trafic .row {
    padding-top: 10px;
    padding-bottom: 5px;
    border-bottom: solid 1px #f4f4f4;
}

.list-trafic .row.row-heading {
    font-weight: bold;
    border-bottom: solid 1px #006fb7;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.list-trafic .row.row2 {
    background-color: #f4f4f4;
}

.list-trafic .more-infos .btn {
    margin-bottom: 5px;
    max-width: 100%;
    overflow: hidden;
}

.list-trafic #dphrelated .qsMenu {
    position: relative;	
}

.tplListImages .list-item {
    display: block;
    background-color: #f4f4f4;
    margin-bottom: 20px;
    color: #000000;
}

.list-item-content {
    padding: 15px;
    height: 260px;
    overflow: hidden;
    margin-bottom: 20px;
}

.list-item-content h4 {
    color: #006fb7;
}

.list-item-image {
    background-color: #e9e9e9;
    height: 180px;
    line-height: 180px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.list-item-image .noimage.glyphicon,
.img-detail .glyphicon {
    display: inline-block;
    width: 100%;
    color: #FFFFFF;
    font-size: 100px;
    line-height: 100px;
    text-align: center;
    vertical-align: middle;
}

.map-legend {
    background-color: #f4f4f4;
    padding: 10px;
    border: solid 10px #FFFFFF;
}

.map-buttons {
    padding: 10px;
}

.map-buttons button {
    outline: none !important;
}

#inverted-contain {
    position: relative;
    margin-bottom: 60px;
    border: solid 3px #f4f4f4;
    min-height: 350px;
}

#inverted-contain svg {
    min-height: 350px;
}

#inverted-contain.inverted-contain2017,
#inverted-contain.inverted-contain2017 svg {
    min-height: 750px;
}

#horaire {
    border-top: solid 1px #f4f4f4;
}

.nav-line .inline-block {
    width: 60px;
    vertical-align: top;
}

.nav-line .legende-xs {
    font-size: 13px;
    line-height: 1em;
    padding-top: 5px;
    margin: 0px;
}

.nav-line .inline-block.info-btn {
    width: auto;
}

.info-btn a.btn {
    border-color: transparent;
    background: none;
    padding: 10px 5px;
    font-size: 20px;
    color: #006fb7;
}

.tplSearchSimple a .row {
    color: #000000;
}

.tplSearchSimple a:hover .row {
    color: #006fb7;
}

.tplSearchSimple a .row .glyphicon{
    float: left;
    color: #006fb7;
    font-size: 25px;
    margin: -2px 10px 0px -5px;
}

.tplSearchSimple .row {
    padding: 8px 0px;
    border-top: solid 1px #ebebeb;
    background-color: #FFFFFF;
}

.tplSearchSimple .row.row1 {
    background-color: #f4f4f4;
}

.tplSearchSimple .row .badge {
    background-color: #000000;
    margin-left: 15px;
    width: 50px;
}

.tplSearchSimple .row .col.listIcons .btn-sm {
    border-radius: 50%;
    margin: -2px 0px 0px 0px;
    padding: 0px;
    width: 30px;
    height: 30px;
    line-height: 28px;
    overflow: hidden;
}

.switch-timeline .btn {
    margin-top: 5px;
}

body .current-schedule,
body .futur-schedule {
    display: none;
}

body.horaires2017 .current-schedule,
body.horaires2018 .futur-schedule {
    display: inline-block;
}

.tplArticleZones h1,
.tplArticleLine h1 {
    margin-top: 0px;
}

/* badges changements de ligne 2017-18
body #line214 .btn-danger.current-schedule,
body #line209 .btn-default.futur-schedule,
body #line216 .btn-default.futur-schedule {
display: none;
}

.tplListLines .line.color214:before {
content: 'fin 2017';
position: absolute;
z-index: 1;
background-color: #000000;
color: #FFFFFF;
padding: 2px 5px;
font-size: 12px;
font-weight: bold;
top: 0px;
right: 30px;
}

.tplListLines .line.color209:before,
.tplListLines .line.color216:before {
content: 'nouveau 2018';
position: absolute;
z-index: 1;
background-color: #000000;
color: #FFFFFF;
padding: 2px 5px;
font-size: 12px;
font-weight: bold;
top: 0px;
right: 30px;
}
*/

/* CUSTOM CLASS MEDIA QUERIES */

@media (min-width: 768px) {
    .actions a {
        font-size: 20px;
        height: 36px;
        line-height: 36px;
        margin-top: 7px;
    }
    .container-body.tplNavPath .breadcrumb {
        padding: 0px;
        margin: 0px;
    }
    .container-body.tplNavPath {
        padding: 20px 0px 0px 0px;
    }
    .tplMenuHBootstrap .navbar-default {
        background: transparent;
    }
    .tplHeader .nav-social a {
        color: #000000;
        height: 60px;
        line-height: 60px;
    }
    .tplHeader .nav-social a,
    .tplHeader .nav-tools a {
        display: inline-block;
        padding: 0px 8px;
        font-weight: bold;
    }
    .tplHeader .nav-social i,
    .tplHeader .nav-tools i,
    .tplHeader .nav-social .glyphicon,
    .tplHeader .nav-tools .glyphicon {
        font-size: 30px;
    }
    .tplMenuHBootstrap .navbar-collapse {
        padding-right: 0px;
        padding-left: 0px;
    }
    .container-body.tplHeader {
        position: fixed;
        height: 105px;
        top: 0px;
        z-index: 1001;
        padding-top: 25px;
    }
    .pagetitle {
        padding-top: 105px;
    }
    .tplMenuHBootstrap {
        position: absolute;
        z-index: 1000;
        width: 100%;
        margin: -65px 0px 0px 0px;
    }

    @keyframes slideDown {
        0% {
            opacity:0.2;
            margin-top: 0px;
        }
        100% {
            opacity:1;
            margin-top: 105px;
        }
    }
    .pagetitle-min .tplMenuHBootstrap {
        animation: slideDown 0.5s;
        animation-iteration-count: 1;
        position: fixed;
        z-index: 1000;
        top: 0px;
        margin-top: 105px;
        padding-top: 20px;
        padding-bottom: 20px;
        background: #006fb7;
    }
    .map-tools {
        position: absolute;
        top: 0px;
        right: 0px;
        z-index: 1;
    }
} 

@media (max-width: 767px) {

    .text-left-xs {
        text-align: left;
    }
    .text-right-xs {
        text-align: right;
    }
    .text-center-xs {
        text-align: center;
    }

    .tplMenuHBootstrap .container {
        padding-right: -15px !important;
        padding-left: -15px !important;
    }

    .tplHtmlBodyHome #qsCarousel .item {
        background-position: center center;
        background-size: cover;
        height: 280px;
        line-height: 280px;
    }

    #qsCarousel .item .item-info {
        width: 225px;
        height: 225px;
        margin: 4% 0% 0% 0%;
    }
    #qsCarousel .item .item-info .bubble {
        width: 50px;
        height: 50px;
        bottom: 0px;
        right: 0px;
    }
    #qsCarousel .item .item-info h3 {
        font-size: 20px;
        padding: 35px 10px 5px 10px;
    }
    #qsCarousel .item .item-info h5 {
        font-size: 14px;
        padding: 5px 10px 5px 10px;
    }
    #qsCarousel .carousel-control .glyphicon {
        display: none;
    }
    .panel-trafic .panel-body a,
    .panel-horaire .panel-body a {
        width: 50px;
        height: 50px;
        line-height: 40px;
    }
    .tplListLines a.list-item h4 {
        font-size: 13px;
        margin-top: 0px;
        margin-bottom: 0px;
    }
    .horaires2017 .btn {
        margin-top: 0px;
    }
    .container-body {
        padding: 25px 0px;
    }
    h1, h2 {
        font-size: 30px !important;
        margin: 10px 0px !important;
    }
    h3 {
        font-size: 26px !important;
        margin: 0px !important;
    }
    .facebook-page {
        margin-bottom: 20px;   
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .text-left-sm {
        text-align: left;
    }
    .text-right-sm {
        text-align: right;
    }
    .text-center-sm {
        text-align: center;
    }
    .tplMenuHBootstrap .navbar-nav > li > a {
        font-size: 16px;
        padding: 8px 4px;
        max-width: 100px;
        height: 54px;
        line-height: 1.1em;
        text-align: center
    }
    .container-body {
        padding: 25px 0px;
    }
    h1, h2 {
        font-size: 30px !important;
        margin: 10px 0px !important;
    }
    h3 {
        font-size: 26px !important;
        margin: 0px !important;
    }
    .container.container-logo {
        margin-bottom: -50px;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .text-left-md {
        text-align: left;
    }
    .text-right-md {
        text-align: right;
    }
    .text-center-md {
        text-align: center;
    }
    .tplMenuHBootstrap .navbar-nav > li > a {
        font-size: 16px;
        padding: 16px 8px;
    }
    .container.container-logo {
        margin-bottom: -70px;
    }
}

@media (min-width: 1200px) {
    .text-left-lg {
        text-align: left;
    }
    .text-right-lg {
        text-align: right;
    }
    .text-center-lg {
        text-align: center;
    }
    #qsCarousel .carousel-control .glyphicon {
        font-size: 50px;
    }
    #modal-trafic .modal-dialog {
        min-width: 980px;
    }
    .container.container-logo {
        margin-bottom: -70px;
    }
}

@media print {
    a[href]:after {
        content: none !important;
    }

    .tplNavPath,
    .pagetitle,
    .tplFooter,
    .tplSystemFooter,
    .tplVerticalTools, 
    .tplArticleLine #ligne {
        display: none;
    }
    .container-body,
    .tplArticleLine #inverted-contain,
    .tplArticleLine .panel {
        page-break-after: always;
    }
}