/* ------------ bootstrap override ------------------- */

.navbar-brand {
    padding: 2px;
}

.navbar-brand>img {
    height: 100%;
}

.nav-pills {
    padding-left: 15px;
}

.nav-pills>li {
    list-style-type: none;
    margin: 15px 0;
}

.nav-pills>li>a {
    padding: 3px 5px;
}

.nav-pills>li.active>a, .nav-pills>li.active>a:focus, .nav-pills>li.active>a:hover {
    background-color: #24c056;
}

/* ---------- / bootstrap override ------------------- */






/* ------------ angular override --------------------- */

.no-animate,
button,
i.fa,
span.fa {
    -webkit-transition: none !important;
    transition: none !important;
}

[ng-cloak], .ng-cloak {
    display: none !important;
}

/* ---------- / angular override --------------------- */








/* ------------ main styles -------------------------- */

body {
    margin: 0;
    padding: 0;
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    background: white;
}

body .background {
    position: fixed;
    height: auto;
    min-height: 100%;
    width: 100%;
    min-width: 100%;
    left: 0;
    top: 0;
}

.page-content {
    margin-top: 51px;
    position: relative;
    z-index: 2;
}

@media (min-width: 768px) and (max-width: 991px) {
    .page-content {
        margin-top: 101px;
    }
}

.page-content .container {
    background-color: rgba(255,255,255,0.8);
    padding: 10px 0 0 0;
}

.home .page-content .container {
    padding: 0;
}

a, .link {
    text-decoration: none !important;
    color: #24c056;
    text-shadow: 0 1px rgba(0,0,0, .1);
    cursor: pointer;
}

a:hover, .link:hover {
    color: #049432;
}

.nav .special {
    color: white;
    border: 2px solid #24c056;
    padding: 5px 10px;
    border-radius: 4px;
}

.nav .special:hover,
.nav li.active .special {
    background-color: #24c056;
}

/* ---------- / main styles -------------------------- */






/* ------------ carousel ----------------------------- */

header.carousel .carousel-indicators {
    display: none;
}

/* ---------- / carousel ----------------------------- */





/* ------------ map ---------------------------------- */

.map-overlay {
    background:transparent;
    position:relative;
    height:400px;
    top:400px;
    margin-top:-400px;
    z-index: 100;
}

.map {
    height: 400px;
}

@media (max-width: 440px) {
    .map {
        height: 180px;
    }

    .map-overlay {
        height:180px;
        top:180px;
        margin-top:-180px;
    }
}

@media (min-width: 441px) and (max-width: 1024px) {
    .map {
        height: 280px;
    }

    .map-overlay {
        height:280px;
        top:280px;
        margin-top:-280px;
    }
}

.home .map {
    border-top: 1px solid black;
    border-bottom: 1px solid black;
}

/* ---------- / map ---------------------------------- */






/* ------------ homepage squares --------------------- */

.square {
    margin: 15px 0;
    padding: 0 !important;
}

.square img.img-responsive {
    margin: auto;
    width: 100%;
    border-radius: 10px;
}

.fb-like {
    border: 1px solid black;
    border-radius: 10px;
    padding: 10px;
    margin-top: 20px;
}

/* ---------- / homepage squares --------------------- */




/* ------------ inline editable item ----------------- */

.editable-item {
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 10px;
    padding: 10px 0;
}

.add-item {
    border: 1px dashed #cccccc;
    border-radius: 10px;
    padding: 30px;
    cursor: pointer;
    margin-bottom: 20px;
}

.add-item:hover {
    border: 1px dashed #24c056;
    background: #ececec;
}

.editable-item .admin-bar {
    display: none;
    position: absolute;
    right: 0;
    z-index: 1000;
    padding-top: 5px;
    padding-right: 20px;
}

.editable-item.editable:hover {
    border: 1px dashed #24c056;
}

.editable-item.editable:hover .admin-bar {
    display: block;
}

/* ---------- / inline editable item ----------------- */





/* ------------ homepage intro ----------------------- */

.ut-intro {
    margin-bottom: 30px;
}

/* ---------- / homepage intro ----------------------- */






/* ------------ banners email ------------------------ */

.banners-actions {
    margin: 10px 0;
}




/* ------------ events ------------------------------- */

.event .event-date {
    font-weight: bold;
    color: #666666;
    margin-bottom: 5px;
}

.event .event-intro {
    margin-bottom: 10px;
}

.event-detail .event-date {
    font-weight: bold;
    color: #666666;
    margin-bottom: 5px;
    font-size: 16px;
}

.event-detail .event-image {
    margin-bottom: 10px;
}

/* ---------- / events ------------------------------- */






/* ------------ sponsors ----------------------------- */

.sponsor-form .img-preview img {
    max-width: 300px;
}

/* ---------- / sponsors ----------------------------- */





/* ------------ galeries ----------------------------- */

.galleries-list .gallery {
    margin: 20px 0;
    padding: 10px 0;
    border-top: 1px dotted #24c056;
}

.galleries-list .gallery h3 {
    margin: 3px 0;
}

.galleries-list .gallery .place-date {
    color: #999999;
    font-weight: bold;
    margin-bottom: 10px;
}


.gallery-images .gallery {
    margin-bottom: 20px;
    border-top: 1px dotted #24c056;
    padding-top: 15px;
}

.gallery-images .image-container {
    margin-bottom: 20px;
}

.gallery-images .image-actions {
    padding: 5px;
    text-align: center;
}

.gallery-images .back-button {
    margin-top: 10px;
    text-align: center;
}


@media (max-width: 440px) {
    .gallery-preview .image-container {
        margin-bottom: 20px;
    }

    .gallery-goto {
        margin-bottom: 20px;
    }
}

/* ---------- / galeries ----------------------------- */






/* ------------ images dropzone ---------------------- */

.dropzone-container {
    margin: 20px 0;
}

.dropzone-container .dropzone {
    border: 1px dashed #cccccc;
    border-radius: 10px;
    padding: 30px;
    background: #ececec;
}

.dropzone-container .dropzone.dragover {
    border: 2px dashed #24c056;
}

.dropzone-container .dropzone .fileupload_label {
    color: #24c056;
    cursor: pointer;
}
.dropzone-container .dropzone .fileupload_label:hover {
    color: #049432;
}

.dropzone-container .image-preview {
    text-align: center;
    margin: 15px 0;
}

/* ---------- / images dropzone ---------------------- */






/* ------------ users -------------------------------- */

.users-container .search {
    margin: 10px 0;
}

/* ---------- / users -------------------------------- */






/* ------------ jobs coach --------------------------- */

.jobs-page .dropzone {
    border: 1px dashed #cccccc;
    border-radius: 10px;
    padding: 30px;
    background: #ececec;
}

.jobs-page .dropzone .fileupload_label {
    color: #24c056;
    cursor: pointer;
}
.jobs-page .dropzone .fileupload_label:hover {
    color: #049432;
}

.jobs-page .dropzone .fileupload_label #fileupload {
    display: none;
}

.jobs-page #files {
    margin: 10px 0;
}

.jobs-page #files .thumbnail {
    border: 0;
    border-bottom: 1px solid #cccccc;
    border-radius: 0;
    padding: 7px 5px 2px 5px;
    margin: 0;
}

.jobs-page #files .thumbnail.invalid {
    background-color: #ffcaca;
    color: #7b8490;
    font-style: italic;
}

.jobs-page #files .thumbnail .filename {
    padding-left: 10px;
    line-height: 20px;
    vertical-align: text-bottom;
}

.jobs-page #files .thumbnail .fa-close {
    cursor: pointer;
}

.jobs-page #files .thumbnail .fa-close:hover {
    color: red;
}

.jobs-page #message,
.jobs-page #success,
.jobs-page #invalid-files {
    display: none;
    margin: 15px 0;
}

.jobs-page form button i {
    display: none;
}

/* ---------- / jobs coach --------------------------- */






/* ------------ inscriptions ------------------------- */

.inscription-places {
    padding: 20px 0;
}

.inscription-places .place {
    margin-bottom: 10px;
    text-align: center;
}


/* ---------- / inscriptions ------------------------- */






/* ------------ session/event list ------------------- */

.city-intro .infos {
    margin-bottom: 10px;
}

.city-session {
    margin-bottom: 20px;
}

.city-session .actions .subscription-possible a {
    font-size: 18px;
}

.city-sponsors .city-sponsor {
    margin-bottom: 15px;
}

/* ---------- / session/event list ------------------- */







/* ------------ session detail ----------------------- */

.session-detail h2 {
    margin-bottom: 20px;
}

.session-detail .subscription {
    padding-top: 50px;
}

.session-detail .timetable {
    font-size: 16px;
    padding: 10px 0;
}

@media (max-width: 768px) {
    .session-detail .session-moreinfo {
        margin-top: 20px;
    }
}

/* ---------- / session detail ----------------------- */





/* ------------ session subscription ----------------- */

.session-subscription .confirmation-intro {
    font-size: 16px;
    padding: 10px 0;
}

.session-subscription .session-description {
    text-align: center;
    font-size: 24px;
    padding: 20px 0;
}

.session-subscription .confirmation-buttons {
    text-align: center;
}

/* ---------- / session subscription ----------------- */






/* ------------ user register ------------------------ */

.newmember-form h3 {
    border-bottom: 1px solid #24c056;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

.ng-valid {
    border-color: #24c056;
}

.ng-invalid-required,
.ng-invalid {
    border-color: #c62621;
}

input[type=radio].ng-invalid-required {
    outline: 1px solid #c62621;
}

.genders {
    display: flex;
}

.genders .radio {
    padding-right: 20px;
}

/* ---------- / user register ------------------------ */






/* ------------ contact ------------------------------ */

.vcard {
    margin-top: 10px;
}

.vcard .fn {
    font-weight: 700;
}

/* ---------- / contact ------------------------------ */







/* ------------ footer ------------------------------- */

footer {
    padding: 0 15px;
}

.copyright p {
    padding-top: 38px;
}

.voilab-brand > span {
    font-size: 6em;
}

/* ---------- / footer ------------------------------- */