﻿/*****************************************************************************************************
	Import Pictos Line premium
******************************************************************************************************/
@import url('/AngularAppFiles/css/premium-line-icons.min.css');

/******************************************************************
	Général
******************************************************************/
@import url('https://fonts.googleapis.com/css?family=Lato:100,100i,300,300i,400,400i,700,700i,900,900i|Roboto:100,100i,300,300i,400,400i,500,500i,700,700i,900,900i&subset=latin-ext');
@import url('https://fonts.googleapis.com/css?family=Offside');

body, html {
    height: auto;
}

body {
    font-family: 'Roboto', sans-serif;
    font-size: 1.5rem;
    line-height: 150%;
    color: #323232;
    min-height: 100vh;
}

:focus {
    outline: 0;
}

a {
    color: #6b9b25;
}

    a:focus, a:hover {
        color: #b9d98a;
        text-decoration: none;
    }

img {
    max-width: 100%;
}

label {
    font-size: inherit;
}

button:focus {
    background-color: inherit;
}

.height-full {
    height: 100% !important;
}

.width-full {
    width: 100% !important;
}

@media screen and (max-width: 1024px) {
    .container {
        width: 100%;
    }
}

/******************************************************** Others general*/
.overflow-x-scroll {
    overflow-x: scroll;
}

.no-wrap {
    white-space: nowrap;
}

.va-middle {
    vertical-align: middle;
}

.d-flex {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-flow: row;
    -moz-flex-flow: row;
    -ms-flex-flow: row;
    flex-flow: row;
}

.justify-center {
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.flex-wrap {
    -webkit-flex-flow: row wrap;
    -moz-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.flex-align-center {
    -ms-flex-align: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    align-items: center;
}

.flex-1 {
    -moz-flex: 1 auto;
    -ms-flex: 1 auto;
    flex: 1 auto;
}

/******************************************************** Text styles*/
h1, h2, h3, h4, h5, h6 {
    font-family: 'Lato', sans-serif;
    margin: 20px 0;
    line-height: 1.3;
}

h1 {
    font-size: 3.7rem;
}

h2 {
    font-size: 3rem;
    font-weight: 300;
    line-height: 1.2;
}

h3 {
    font-size: 2.5rem;
    font-weight: 300;
    line-height: 1.2;
}

.font-italic {
    font-style: italic !important;
}

.font-weight-light {
    font-weight: 300 !important;
}

.font-weight-bold {
    font-weight: 700 !important;
}

.font-bigger {
    font-size: 150%;
}

.font-big {
    font-size: 200%;
}
/******************************************************** bg and colors styles*/
.bg-transparent {
    background-color: transparent !important;
}

.bg-light-grey {
    background-color: whitesmoke;
}

.text-red {
    color: #fd2000;
}

.text-green {
    color: #6b9b25;
}

/******************************************************** padding and margins*/
.no-margin {
    margin: 0;
}

.no-margin-left {
    margin-left: 0;
}

.no-margin-right {
    margin-right: 0;
}

.no-margin-top {
    margin-top: 0;
}

.no-margin-bottom {
    margin-bottom: 0 !important;
}

.no-padding {
    padding: 0;
}

.no-padding-left {
    padding-left: 0;
}

.no-padding-right {
    padding-right: 0;
}

.no-padding-top {
    padding-top: 0;
}

.no-padding-bottom {
    padding-bottom: 0;
}

.margin-right {
    margin-right: 15px;
}

/******************************************************************
	Panels
******************************************************************/
.panel-group {
    width: 100%;
}

    .panel-group .panel-default > .panel-heading {
        color: #ddd;
        background-color: #333;
        border-color: #ddd;
    }

    .panel-group .panel-heading a {
        text-decoration: none;
        color: inherit;
    }

        .panel-group .panel-heading a h4:after {
            font-family: 'Material Icons';
            content: "keyboard_arrow_down";
            float: right;
            color: inherit;
        }

        .panel-group .panel-heading a.collapsed h4:after {
            content: "keyboard_arrow_right";
        }

/******************************************************************
	Navbar
******************************************************************/
/******************************************************** Navigation Menu */
.navbar-custom {
    background-color: #333;
    color: #ffffff;
    border: none;
    border-radius: 0;
    font-family: 'Offside', cursive;
    text-transform: uppercase;
    border-left: 1px solid #999999;
    text-align: center;
}

    .navbar-custom .navbar-nav > li > a {
        font-size: inherit;
    }

        .navbar-custom .navbar-nav > li > a:focus,
        .navbar-custom .navbar-nav > li > a:hover,
        .navbar-default .navbar-nav > li > a:focus,
        .navbar-default .navbar-nav > li > a:hover {
            color: #b9d98a;
            background-color: transparent !important;
        }

.navbar-right > li > a {
    padding: 10px 5px;
}

.navbar {
    border: none;
    height: auto;
    box-shadow: none;
    margin-bottom: 20px;
}

.navbar-custom-top {
    padding: 0;
    border: none !important;
    margin-top: 50px;
    /*box-shadow: 0 14px 28px rgba(0,0,0,0.06), 0 10px 10px rgba(0,0,0,0.06);
	background-color: #ffffff;*/
}

    .navbar-custom-top .navbar-header-top {
        width: 100%;
        background-color: #333;
        display: inline-block;
        color: #ddd;
        padding: 5px 0;
    }

        .navbar-custom-top .navbar-header-top .md-button {
            min-height: 26px;
            line-height: 26px;
            font-size: 12px;
        }

    .navbar-custom-top .navbar-header {
        /*width: 100%;
		display: -moz-box;
		display: -webkit-flexbox;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-flex;
		display: flex;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		align-items: center;*/
    }

        .navbar-custom-top .navbar-header > .text {
            -webkit-flex: 1;
            -ms-flex: 1;
            flex: 1;
        }

    .navbar-custom-top .material-icons {
        vertical-align: middle;
    }


.navbar-toggle {
    float: left;
}

    .navbar-toggle .icon-bar {
        background-color: whitesmoke;
    }

.navbar-custom .navbar-nav > li > a {
    color: whitesmoke;
}

@media screen and (max-width: 767px) {
    .navbar-custom .navbar-nav > li {
        float: none;
        text-align: left;
    }
}

/******************************************************************
	Main
******************************************************************/
.all-page {
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    min-height: 100vh;
    background-color: #fafafa;
}

.main {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    /*padding: 50px 0;*/
}

.block {
    padding: 30px;
}


/********************************************* Others*/
.block-email {
    background-color: #333333;
    padding: 20px;
    margin: 20px 0;
}

.bloc-petit {
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

    .bloc-petit .logos {
        text-align: center;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }

        .bloc-petit .logos > img {
            padding: 0 25px;
            width: 100%;
        }


    .bloc-petit .text {
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }

        .bloc-petit .text > p {
            margin-bottom: 0;
        }

    .bloc-petit h2 {
        margin: 10px 0;
        color: #6b9b25;
        font-size: 1.5em;
        text-transform: uppercase;
        margin: 10px 0;
        border-left: none;
        padding: 0;
        font-weight: normal;
    }


.bloc-table {
    background-color: #f5f5f5;
    margin-bottom: 20px;
    padding: 20px 10px;
    box-shadow: 0 2px 5px 0 rgba(0,0,0,.16);
}

.table .md-button.md-fab {
    margin: 0;
}

.table md-checkbox {
    margin: 10px 0;
}

.btn-group-vertical {
    text-align: right;
    width: 100%;
}

.bloc-bleu-clair {
    padding: 20px;
    background-color: rgb(217, 239, 242);
}

.bloc-search {
    background-color: floralwhite;
    margin-bottom: 20px;
    padding: 20px 10px;
    box-shadow: 0 2px 5px 0 rgba(0,0,0,.16);
}

.bloc-msg {
    box-shadow: 0 2px 5px 0 rgba(0,0,0,.16);
    padding: 20px;
    margin: 10px 0 20px 0;
    background-color: #ffffff;
}

    .bloc-msg .posted-text {
        margin-top: 5px;
        opacity: 0.5;
    }

.bloc-doc {
    margin-bottom: 10px;
}

    .bloc-doc .bloc-pictos {
        /*background-color: #fafafa;*/
        background-color: #f5f5f5;
    }

    .bloc-doc .bloc-bleu-clair {
        padding: 5px;
        margin-bottom: 0;
        display: -moz-box;
        display: -webkit-flexbox;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: -moz-flex;
        display: flex;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        background-color: rgb(210, 242, 246);
    }

        /*.bloc-doc .bloc-bleu-clair:hover {
			background-color: rgb(210, 242, 246);
			text-decoration: none;
		}*/

        .bloc-doc .bloc-bleu-clair i {
            font-size: inherit;
            vertical-align: middle;
            margin-top: 3px;
            margin-right: 5px;
        }

.panel-body.bloc-doc {
    margin-bottom: 0;
}

.bloc-switch md-switch {
    float: right;
}

.bloc-liste-ent {
    margin-bottom: 30px;
    font-size: 12px;
}

    .bloc-liste-ent a {
        color: #4c4c4c;
    }

        .bloc-liste-ent a:hover {
            color: #6b9b25;
        }
/******************************************************************
	Form
******************************************************************/
/*------------------------------------- Form de base*/
form {
    margin-bottom: 30px;
}

fieldset > legend {
    padding-bottom: 10px;
    color: #fd2000;
}

/******************************************************** Material FORMATED */
/*------------------------------------- input Container*/
md-input-container {
    padding: 2px 5px;
    margin: 10px 0;
}

    md-input-container .md-errors-spacer {
        display: none;
    }

    /*------------------------------------- Inputs*/
    md-input-container .md-input {
        border-bottom: 1px solid rgba(0,0,0,0.12) !important;
        margin: 0 !important;
    }

    md-input-container .md-placeholder,
    md-input-container label:not(.md-no-float):not(.md-container-ignore) {
        font-weight: 300;
        margin-bottom: 0px;
    }

    md-input-container label:not(.md-container-ignore) {
        left: 3px;
    }

    md-input-container:not(.md-input-invalid).md-input-focused label {
        color: #6b9b25 !important;
    }

    md-input-container:not(.md-input-invalid).md-input-focused .md-input {
        border-color: #6b9b25 !important;
        box-shadow: none !important;
    }

input:not([type]), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.materialize-textarea {
    font-size: inherit;
}

.block-email md-input-container .md-input {
    color: rgba(255,255,255,0.87) !important;
    border-color: rgba(255,255,255,0.87) !important;
}

.block-email md-input-container .md-placeholder,
.block-email md-input-container label:not(.md-no-float):not(.md-container-ignore) {
    color: rgba(255,255,255,0.87) !important;
}

@media only screen and (max-width: 767px) {
    .layout-row {
        flex-wrap: wrap;
    }

    *[class*="flex-"] {
        max-width: 100% !important;
    }
}

/*------------------------------------- Buttons*/
.btn-file {
    position: relative;
    overflow: hidden;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 95%;
}

    .btn-file input[type=file] {
        position: absolute;
        top: 0;
        right: 0;
        min-width: 100%;
        min-height: 100%;
        font-size: 100px;
        text-align: right;
        filter: alpha(opacity=0);
        opacity: 0;
        outline: none;
        background: white;
        cursor: inherit;
        display: block;
    }

.md-button {
    font-weight: 300;
    min-width: 100px;
    white-space: normal;
}
    /*primary raised*/
    .md-button.md-primary.md-raised {
        color: rgba(255,255,255,0.87);
        background-color: #333;
    }

    .md-button.md-primary.md-raised-solideo {
        color: rgba(255,255,255,0.87);
        background-color: #003366;
    }

    .md-button.md-primary.md-raised:not([disabled]):hover,
    .md-button.md-primary.md-raised:not([disabled]).md-focused {
        background-color: #555;
    }

    /*primary link*/
    .md-button.md-default-theme.md-primary, .md-button.md-primary {
        color: #fd2000;
    }

    /*warn raised*/
    .md-button.md-warn.md-raised {
        color: rgba(255,255,255,0.87);
        background-color: #fd2000;
    }

        .md-button.md-warn.md-raised:not([disabled]):hover {
            background-color: #fd2000;
        }

    /*fab primary*/
    .md-button.md-primary.md-fab {
        background-color: #fd2000;
    }

        .md-button.md-primary.md-fab:not([disabled]):hover {
            background-color: #fd2000;
        }

    /*default raised*/
    .md-button.md-default.md-raised {
        color: #ffffff;
        background-color: #6b9b25;
    }

        .md-button.md-default.md-raised:not([disabled]):hover,
        .md-button.md-default.md-raised:not([disabled]).md-focused {
            background-color: #7da543;
        }

    /*md-icon-button accent (red)*/
    .md-button.md-default-theme.md-accent,
    .md-button.md-accent,
    .md-button.md-accent:not([disabled]) md-icon {
        color: #fd2000;
    }

    /*md-icon-button primary (red)*/
    .md-button.md-icon-button.md-primary,
    .md-button.md-icon-button.md-primary:not([disabled]) md-icon {
        color: lightblue;
    }

    /*secondary raised*/
    .md-button.md-secondary.md-raised {
        color: #ffffff;
        background-color: lightblue;
    }

        .md-button.md-secondary.md-raised:not([disabled]):hover {
            background-color: #c3eaf7;
        }

    /*secondary raised*/
    .md-button.md-turquoise.md-raised {
        color: #ffffff;
        background-color: #1daca8;
    }

        .md-button.md-turquoise.md-raised:not([disabled]):hover {
            background-color: #27e0db;
        }

/*------------------------------------- md-selects*/
md-select:not([disabled]):focus .md-select-value {
    border-bottom-width: 1px;
}

md-select.md-default-theme .md-select-value,
md-select .md-select-value {
    /*border-bottom-color: inherit !important;*/
    min-height: 27px;
}

.md-select-value.md-select-placeholder {
    border-bottom-color: rgba(0,0,0,0.12);
}

md-input-container.md-input-focused:not(.md-input-has-value) md-select.md-default-theme .md-select-value, md-input-container.md-input-focused:not(.md-input-has-value) md-select .md-select-value, md-input-container.md-input-focused:not(.md-input-has-value) md-select.md-default-theme .md-select-value.md-select-placeholder, md-input-container.md-input-focused:not(.md-input-has-value) md-select .md-select-value.md-select-placeholder {
    color: #6b9b25;
}

md-select.md-default-theme:not([disabled]):focus .md-select-value, md-select:not([disabled]):focus .md-select-value {
    border-bottom-color: #6b9b25;
}

md-select-menu md-content md-option[selected]:focus {
    color: #6b9b25;
}

md-select-menu.md-default-theme md-content md-option[selected], md-select-menu md-content md-option[selected] {
    color: #6b9b25;
}

.md-icon-input {
    position: absolute;
    margin: 0;
    right: 2px;
    left: auto;
}

/*------------------------------------- md-radio*/
.md-on,
md-radio-button .md-on {
    background-color: #6b9b25;
}

md-radio-button.md-default-theme.md-checked .md-off,
md-radio-button.md-checked .md-off {
    border-color: #6b9b25;
}

/*------------------------------------- md-switch + md-checkbox*/
[type="checkbox"]:not(:checked), [type="checkbox"]:checked {
    opacity: 1 !important;
    position: relative !important;
    pointer-events: inherit !important;
}

md-checkbox {
    margin-bottom: 5px;
}

    md-checkbox.md-default-theme.md-checked .md-ink-ripple,
    md-checkbox.md-checked .md-ink-ripple {
        color: #6b9b25;
    }

    md-checkbox.md-default-theme.md-checked .md-icon,
    md-checkbox.md-checked .md-icon {
        background-color: #6b9b25;
    }

md-switch.md-default-theme.md-checked.md-primary .md-bar,
md-switch.md-checked.md-primary .md-bar {
    background-color: limegreen;
    opacity: 0.3;
}

md-switch.md-default-theme.md-checked.md-primary .md-thumb,
md-switch.md-checked.md-primary .md-thumb {
    background-color: limegreen;
}

/*------------------------------------- md-calendar*/
md-calendar table {
    width: auto !important;
}

/******************************************************** Ng-table FORMATED */
tr {
    /*border: none;*/
    border-radius: 0px;
}

.table > tbody > tr > td {
    padding: 5px 10px;
    vertical-align: middle;
}

.table > thead > tr > th {
    border: transparent !important;
    border-radius: 0px !important;
}

.table thead {
    background-color: #333;
    color: #ffffff;
}

.ng-table th {
    text-align: left;
    font-weight: 300;
}

    .ng-table th.sortable .sort-indicator:before, .ng-table th.sortable.sort-desc .sort-indicator:after {
        border-top: 4px solid #ffffff;
    }

    .ng-table th.sortable .sort-indicator:after, .ng-table th.sortable .sort-indicator:before {
        border-color: #ffffff transparent;
    }

/*----------------------------------------- Pagination ng-table*/
.ng-table-pager {
    text-align: right;
}

.pagination > .active > a,
.pagination > .active > a:hover,
.pagination > .active > a:focus {
    background-color: #fd2000;
    border-color: #fd2000;
}

.pagination > li > a,
.pagination > li > a:hover,
.pagination > li > span {
    color: #fd2000;
}

/******************************************************** TreeView */
.angular-ui-tree .material-icons {
    vertical-align: middle;
    color: #fd2000;
}

.angular-ui-tree .angular-ui-tree-handle {
    line-height: 30px;
    font-weight: 300;
}

.angular-ui-tree-empty {
    display: none;
}

/*-------------------------------------------------------------------------------
	Intro Section
---------------------------------------------------------------------------------*/
.intro-section {
    position: relative;
    padding: 30px;
    color: #ffffff;
    background: #6b9b25;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    align-items: center;
}

    .intro-section > div {
        width: 50%;
    }

        .intro-section > div:last-of-type {
            text-align: right;
        }

        .intro-section > div h2 {
            font-weight: 300;
            color: #ffffff;
            font-size: 28px;
            border-left: none;
            padding-left: 0;
        }

/*-------------------------------------------------------------------------------
	Footer
---------------------------------------------------------------------------------*/
.footer-pane {
    background-color: #333;
    color: #ffffff;
    padding: 20px 0;
}

.footer-logo img {
    display: inline-block;
    max-width: 100%;
}

.footer-nav {
    background-color: #333;
    color: #ffffff;
    border: none;
    border-radius: 0;
    font-family: 'Offside', cursive;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 20px;
}

    .footer-nav ul {
        padding: 0;
    }

    .footer-nav li {
        position: relative;
        display: inline-block;
        margin: 0px 0px 0px 20px;
        font-size: 15px;
    }

    .footer-nav > ul > li > a {
        display: block;
        line-height: 1.4em;
        font-size: 85%;
        color: #f5f5f5;
        transition: all 300ms ease-in;
        -webkit-transition: all 300ms ease-in;
        -ms-transition: all 300ms ease-in;
        -o-transition: all 300ms ease-in;
        -moz-transition: all 300ms ease-in;
    }

        .footer-nav > ul > li > a:focus,
        .footer-nav > ul > li > a:hover,
        .footer-nav > ul > li > a:focus,
        .footer-nav > ul > li > a:hover {
            color: #b9d98a;
            background-color: transparent !important;
            text-decoration: none;
        }

.footer-bottom {
    position: relative;
    color: #ddd;
}

    .footer-bottom .copy {
        font-size: 12px;
        margin-top: 20px;
    }

/******************************************************************
	PROGRESS BAR
*********************************************************************/
.progress {
    padding: 5px;
    position: relative;
    margin: 10px 0;
    /*height: 35px;*/
    text-align: center;
    border-radius: 0;
    display: none;
    background-color: transparent;
    border: 1px solid #4b606a;
}

    .progress .progress-bar {
        height: 100%;
        border-radius: 0;
        background-color: turquoise;
        width: 0;
        box-shadow: none;
    }

    .progress .status {
        top: 25%;
        left: 50%;
        position: absolute;
        display: inline-block;
        color: #4b606a;
    }


/******************************************************************
	CSSLOAD
*********************************************************************/
#cssload {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .8);
    z-index: 9999;
    display: none; /* flex : contexte sur le parent */
    flex-direction: column; /* direction d'affichage verticale */
    justify-content: center; /* alignement vertical */
    background-attachment: fixed;
    background-size: cover;
}

.cssload-container {
    position: relative;
}

.cssload-whirlpool,
.cssload-whirlpool::before,
.cssload-whirlpool::after {
    position: absolute;
    top: 50%;
    left: 50%;
    border: 1px solid rgb(204,204,204);
    border-left-color: #6b9b25;
    border-radius: 974px;
    -o-border-radius: 974px;
    -ms-border-radius: 974px;
    -webkit-border-radius: 974px;
    -moz-border-radius: 974px;
}

.cssload-whirlpool {
    margin: -24px 0 0 -24px;
    height: 49px;
    width: 49px;
    animation: cssload-rotate 1150ms linear infinite;
    -o-animation: cssload-rotate 1150ms linear infinite;
    -ms-animation: cssload-rotate 1150ms linear infinite;
    -webkit-animation: cssload-rotate 1150ms linear infinite;
    -moz-animation: cssload-rotate 1150ms linear infinite;
}

    .cssload-whirlpool::before {
        content: "";
        margin: -22px 0 0 -22px;
        height: 43px;
        width: 43px;
        animation: cssload-rotate 1150ms linear infinite;
        -o-animation: cssload-rotate 1150ms linear infinite;
        -ms-animation: cssload-rotate 1150ms linear infinite;
        -webkit-animation: cssload-rotate 1150ms linear infinite;
        -moz-animation: cssload-rotate 1150ms linear infinite;
    }

    .cssload-whirlpool::after {
        content: "";
        margin: -28px 0 0 -28px;
        height: 55px;
        width: 55px;
        animation: cssload-rotate 2300ms linear infinite;
        -o-animation: cssload-rotate 2300ms linear infinite;
        -ms-animation: cssload-rotate 2300ms linear infinite;
        -webkit-animation: cssload-rotate 2300ms linear infinite;
        -moz-animation: cssload-rotate 2300ms linear infinite;
    }



@keyframes cssload-rotate {
    100% {
        transform: rotate(360deg);
    }
}

@-o-keyframes cssload-rotate {
    100% {
        -o-transform: rotate(360deg);
    }
}

@-ms-keyframes cssload-rotate {
    100% {
        -ms-transform: rotate(360deg);
    }
}

@-webkit-keyframes cssload-rotate {
    100% {
        -webkit-transform: rotate(360deg);
    }
}

@-moz-keyframes cssload-rotate {
    100% {
        -moz-transform: rotate(360deg);
    }
}

/***************************************************************************************************************************************************************************
***************************************************************************************************************************************************************************
***************************************************************************************************************************************************************************
***************************************************************************************************************************************************************************
***************************************************************************************************************************************************************************
***************************************************************************************************************************************************************************
****************************************************************************************************************************************************************************/

/*****************************************************************************************************
	CSS Page ANNUAIRE
******************************************************************************************************/
body {
    font-size: 13px;
}

h3 {
    font-size: 16px;
    font-weight: 400;
}

ol, ul {
    padding: 0;
    margin: 1em 0;
}

ul {
    list-style: none;
}

/*-------------------------------------------------------------------------------------------
	Search
--------------------------------------------------------------------------------------------*/
.box {
    /*margin: 15px 0;*/
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

    .box h4 {
        /* flex: 1; */
        display: -moz-box;
        display: -webkit-flexbox;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: -moz-flex;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        justify-content: flex-end;
        height: 60px;
    }

        .box h4.panel-title {
            display: block;
            font-size: 14px;
            height: auto;
            border-bottom: none;
            padding: 0;
        }

.partenaire > div.form-search {
    margin: 0 48px;
}

div.form-search h4 {
    /*margin: 0.83em 0;*/
}

div.form-search .bloc-button {
    margin: 50px 0;
}

div.form-search .panel-default {
    border: none;
    box-shadow: none;
}

    div.form-search .panel-default > .panel-heading {
        color: #f5f5f5;
        background-color: #333;
        border-color: transparent;
        border-radius: 0px;
    }

        div.form-search .panel-default > .panel-heading a {
            display: -moz-box;
            display: -webkit-flexbox;
            display: -ms-flexbox;
            display: -webkit-flex;
            display: -moz-flex;
            display: flex;
            -webkit-flex-direction: row;
            -ms-flex-direction: row;
            flex-direction: row;
            -ms-flex-align: center;
            -webkit-align-items: center;
            -webkit-box-align: center;
            align-items: center;
        }


            div.form-search .panel-default > .panel-heading a:hover,
            div.form-search .panel-default > .panel-heading a:focus,
            div.form-search .panel-default > .panel-heading a:active {
                color: #ffffff;
                text-decoration: none;
            }

            div.form-search .panel-default > .panel-heading a > span:first-of-type {
                padding: 0 15px 0 0;
                -webkit-flex: 1;
                -ms-flex: 1;
                flex: 1;
            }

    div.form-search .panel-default .panel-title > a > span.icon-panel:before {
        color: #b9d98a;
        font-family: "Icomoon";
        content: "\e115";
    }

    div.form-search .panel-default .panel-title > a.collapsed > span.icon-panel:before {
        content: "\e114";
    }

    div.form-search .panel-default > .panel-collapse {
        padding: 0 15px;
    }

.space {
    margin-bottom: 15px;
}

.searched-tags {
    background-color: #fafafa;
    margin: 0;
}

    .searched-tags > span {
        border: 1px dotted #333;
        display: inline-block;
        margin: 5px;
        padding: 5px;
    }

        .searched-tags > span > span {
            font-size: 0.8em;
            font-weight: normal;
            margin: 10px;
            padding-right: 10px;
        }

.tag:not(:last-of-type):after {
    content: ", ";
}

/*-------------------------------------------------------------------------------------------
	Result Search 
--------------------------------------------------------------------------------------------*/
.results-search > div {
    margin: 15px;
}

.result-box {
    border: 1px solid #ddd;
    position: relative;
    height: 295px;
    margin-bottom: 35px;
    padding: 20px 30px;
    display: block;
}

    .result-box div {
        color: #6b9b25;
        font-size: 1em;
        text-transform: uppercase;
        margin: 0 0 10px 0;
        line-height: 21px;
        text-decoration: none;
        display: block;
    }

    .result-box p {
        font-weight: 300;
        font-size: 0.9em;
        line-height: 1.5em;
        max-height: 192px;
        text-decoration: none;
        color: #333;
        /*overflow: hidden;*/
    }

    .result-box:hover {
        background-color: #6b9b25;
        text-decoration: none;
    }

        .result-box:hover div,
        .result-box:hover p {
            color: #fff;
        }

    .result-box:focus {
        text-decoration: none;
    }

@media only screen and (max-width: 1221px) and (min-width: 992px) {
    .result-box {
        height: 420px;
        padding: 20px;
    }
}

@media only screen and (max-width: 767px) {

    .partenaire > div {
        margin: 0;
    }

    .result-box {
        height: auto;
    }
}

/*-------------------------------------------------------------------------------------------
	Logos Partenaires
--------------------------------------------------------------------------------------------*/
.bloc-logos > div > a {
    display: inline-block;
    height: 150px;
    text-align: center;
}

    .bloc-logos > div > a > span {
        display: table-cell;
        height: inherit;
        max-width: 110px;
        text-align: center;
        vertical-align: middle;
    }

@media (max-width: 767px) {
    .bloc-logos > div > a {
        height: auto;
        padding-bottom: 40px;
        padding-left: 0;
        padding-right: 0;
    }

        .bloc-logos > div > a > span {
            display: inline-block;
            max-width: 100%;
        }
}

/*********************************
	Modals
**********************************/
.modal {
    max-height: none;
    width: auto;
    background-color: transparent;
}

.modal-footer {
    text-align: center;
    display: inline-block;
    width: 100%;
}

    .modal-footer .show-item {
        display: inline-block !important;
    }

    .modal-footer .link-button {
        min-width: 100px;
    }


/*** 
====================================================================
	Full Modal LOG IN
====================================================================
***/

.full-modal .modal-dialog {
    width: 80%;
    height: 100%;
    margin: 0 auto;
    padding: 0;
}

.full-modal .modal-content {
    height: auto;
    min-height: 100%;
    border-radius: 0;
}

    .full-modal .modal-content .modal-header {
        border-bottom: none;
    }

    .full-modal .modal-content .close {
        font-size: 80px;
        font-weight: 100;
        filter: alpha(opacity=50);
        opacity: .5;
    }

        .full-modal .modal-content .close:focus,
        .full-modal .modal-content .close:hover {
            filter: alpha(opacity=100);
            opacity: 1;
            outline: none;
        }

    .full-modal .modal-content h1 {
        text-transform: uppercase;
        border-left: none;
        padding-left: 0;
        margin: 0.3em 0;
    }

.full-modal .modal-footer {
    text-align: center !important;
}


/*** 
====================================================================
	SLIDER Partenaires
====================================================================
***/
.slider.slick-slider {
    height: auto;
}

.slick-track {
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    align-items: center;
}

.slider {
    width: 95%;
    margin: 50px auto;
}

.slick-slide {
    margin: 0px 20px;
}

    .slick-slide img {
        width: 100%;
    }

.slick-prev:before,
.slick-next:before {
    color: black;
}

.slick-track {
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    align-items: center;
}

.slick-slide {
    transition: all ease-in-out .3s;
    opacity: .2;
}

.slick-active {
    opacity: 1;
}

.slick-current {
    opacity: 1;
}

/******************************************************************
	CSSLOAD
*********************************************************************/
#cssload {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .8);
    z-index: 9999;
    display: none; /* flex : contexte sur le parent */
    flex-direction: column; /* direction d'affichage verticale */
    justify-content: center; /* alignement vertical */
    background-attachment: fixed;
    background-size: cover;
}

.cssload-container {
    position: relative;
}

.cssload-whirlpool,
.cssload-whirlpool::before,
.cssload-whirlpool::after {
    position: absolute;
    top: 50%;
    left: 50%;
    border: 1px solid rgb(204,204,204);
    border-left-color: #6b9b25;
    border-radius: 974px;
    -o-border-radius: 974px;
    -ms-border-radius: 974px;
    -webkit-border-radius: 974px;
    -moz-border-radius: 974px;
}

.cssload-whirlpool {
    margin: -24px 0 0 -24px;
    height: 49px;
    width: 49px;
    animation: cssload-rotate 1150ms linear infinite;
    -o-animation: cssload-rotate 1150ms linear infinite;
    -ms-animation: cssload-rotate 1150ms linear infinite;
    -webkit-animation: cssload-rotate 1150ms linear infinite;
    -moz-animation: cssload-rotate 1150ms linear infinite;
}

    .cssload-whirlpool::before {
        content: "";
        margin: -22px 0 0 -22px;
        height: 43px;
        width: 43px;
        animation: cssload-rotate 1150ms linear infinite;
        -o-animation: cssload-rotate 1150ms linear infinite;
        -ms-animation: cssload-rotate 1150ms linear infinite;
        -webkit-animation: cssload-rotate 1150ms linear infinite;
        -moz-animation: cssload-rotate 1150ms linear infinite;
    }

    .cssload-whirlpool::after {
        content: "";
        margin: -28px 0 0 -28px;
        height: 55px;
        width: 55px;
        animation: cssload-rotate 2300ms linear infinite;
        -o-animation: cssload-rotate 2300ms linear infinite;
        -ms-animation: cssload-rotate 2300ms linear infinite;
        -webkit-animation: cssload-rotate 2300ms linear infinite;
        -moz-animation: cssload-rotate 2300ms linear infinite;
    }



@keyframes cssload-rotate {
    100% {
        transform: rotate(360deg);
    }
}

@-o-keyframes cssload-rotate {
    100% {
        -o-transform: rotate(360deg);
    }
}

@-ms-keyframes cssload-rotate {
    100% {
        -ms-transform: rotate(360deg);
    }
}

@-webkit-keyframes cssload-rotate {
    100% {
        -webkit-transform: rotate(360deg);
    }
}

@-moz-keyframes cssload-rotate {
    100% {
        -moz-transform: rotate(360deg);
    }
}



/*************************************************************Page Détail*/
.content-detail {
}

    .content-detail h1 {
        border-left: none;
        margin-left: 0;
        padding: 0 20px;
    }

    .content-detail h3 {
        line-height: 1.5;
        font-size: 16px;
        text-transform: uppercase;
        border-bottom: 1px solid darkgreen;
        color: darkgreen;
        font-weight: 600;
    }

    .content-detail .region .h3 {
        line-height: 1.5;
        border-bottom: 1px solid darkgreen;
        color: #6b9b25;
        font-weight: 600;
    }

.intro-financeur {
    width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    -o-flex-direction: row;
    flex-direction: row;
}

    .intro-financeur > div {
        background-color: #f7f7f7;
        margin: 10px 5px;
        -webkit-box-flex: 1 0 0%;
        -moz-box-flex: 1 0 0%;
        -webkit-flex: 1 0 0%;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
        padding: 30px 15px;
        text-align: center;
        max-width: 100%;
    }

    .intro-financeur h4 {
        border-bottom: none;
    }

.ctc-bloc {
    padding: 0 20px;
    margin-bottom: 20px;
}

.coordonnes-financeur {
    background-color: #f5f4f4;
    padding: 0 40px;
    height: auto;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    align-items: center;
}

    .coordonnes-financeur > .bloc-contact {
        padding: 20px 0;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }

        .coordonnes-financeur > .bloc-contact .bloc-site {
            padding-bottom: 20px !important;
        }

    /*.coordonnes-financeur > .bloc-contact .bloc-site .link {
				font-size: 1.3em;
			}*/

    .coordonnes-financeur .link {
        word-break: break-all;
    }


.navig-financeur .link-button {
    font-size: 0.75em;
    min-width: 200px;
    padding: 15px;
    text-transform: uppercase;
}

.mise-a-jour {
    background-color: #f5f4f4;
    padding: 10px;
    margin: 20px 0;
}

@media only screen and (max-width: 767px) {
    .bloc-detail-financeur {
        display: block;
    }

    .menu-sideB-financeur {
    }

        .menu-sideB-financeur button {
            padding: 15px 10px;
        }

            .menu-sideB-financeur button > i {
                color: #ffffff;
            }

                .menu-sideB-financeur button > i.icon-close-menuG {
                    display: none;
                }

            .menu-sideB-financeur button[aria-expanded="true"] > i.icon-close-menuG {
                display: block;
            }

            .menu-sideB-financeur button[aria-expanded="true"] > i.icon-open-menuG {
                display: none;
            }

        .menu-sideB-financeur .menu-sideB-title {
            line-height: 52px;
            padding: 0 15px;
            color: #ffffff;
            text-transform: uppercase;
            font-size: 0.85em;
            font-weight: 700;
        }

        .menu-sideB-financeur > ul {
            border-top: 1px solid #7FC05F;
            background-color: #6b9b25;
            margin: 0;
            padding: 15px 0;
        }

            .menu-sideB-financeur > ul > li {
                margin-left: 15px;
            }

                .menu-sideB-financeur > ul > li:hover,
                .menu-sideB-financeur > ul > li:focus,
                .menu-sideB-financeur > ul > li:active,
                .menu-sideB-financeur > ul > li.active {
                    margin-left: 13px;
                }

    .intro-financeur {
        width: 100%;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }

        .intro-financeur > div {
            margin: 5px 0;
            padding: 15px;
        }

            .intro-financeur > div > h4 {
                margin-top: 0;
                padding: 0;
            }

    .content-financeur .paragraphe {
        margin: 20px 0;
    }

    .coordonnes-financeur {
        padding: 10px;
        min-height: auto;
    }

        .coordonnes-financeur > .bloc-contact {
            padding: 10px 0;
        }

            .coordonnes-financeur > .bloc-contact .bloc-site {
                padding-bottom: 25px !important;
            }

    .navig-financeur > div {
        text-align: center;
        margin: 10px 0;
    }

    .navig-financeur .link-button {
        float: none !important;
    }
}

.word-break {
    word-break: break-all;
}

/************************************************************
	Page DETAIL
*************************************************************/
.icon {
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: 'liga';
}

.content-detail h1 {
    padding: 0;
}

.content-detail h3 {
    border-bottom: 1px solid #aa0630;
    color: #aa0630;
}

.content-detail h5 {
    margin-bottom: 0;
    text-transform: uppercase;
}

.tag-bloc {
    padding: 0 15px !important;
}

.tag-section {
    position: relative;
}

.tag-shape {
    position: relative;
    background: #6b9b25;
    display: inline-block;
    height: 76px;
    margin-left: 0;
    margin-top: 0;
    width: 100px;
}

    .tag-shape.big {
        width: 140px;
    }

    .tag-shape:after {
        border-top: 35px solid #6b9b25;
        border-left: 50px solid transparent;
        border-right: 50px solid transparent;
        content: "";
        height: 0;
        left: 0;
        position: absolute;
        bottom: -35px;
        width: 0;
    }

    .tag-shape.big:after {
        border-left: 70px solid transparent;
        border-right: 70px solid transparent;
    }

.text-tag {
    color: #fff;
    position: absolute;
    top: 35px;
    left: 50%;
    transform: translate(-50%, -50%);
}

.bloc-resp {
    padding: 15px;
}

.ca-item {
    padding: 0 15px;
    border-right: 1px solid #6b9b25;
}

    .ca-item:last-of-type {
        border-right: none;
    }

.item-tiret:after {
    content: " - ";
}

.item-tiret:last-of-type:after {
    content: "";
}


.intro-financeur > div {
    margin: 15px 0;
}

.mise-a-jour {
    padding: 10px 15px !important;
    -moz-flex: 0 auto !important;
    -ms-flex: 0 auto !important;
    flex: 0 auto !important;
    margin: 15px 0 0 0 !important;
}

.bloc-text-contact > div {
    padding: 15px;
    width: 50%;
}

.item-border-right {
    border-right: 1px solid #004a7f;
}

.bloc-secteurs > div {
    width: 33%;
    padding: 15px;
}

    .bloc-secteurs > div > p {
        margin-bottom: 0;
    }

@media (max-width: 767px) {
    .ca-item,
    .item-border-right {
        border-right: none;
    }

    .bloc-text-contact > div, .bloc-secteurs > div {
        width: 100%;
    }
}

/* 2.12 To Top Button */
#to-top {
    position: fixed;
    right: 30px;
    bottom: -100px;
    z-index: 1;
    padding: 9px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    background: rgba(34, 34, 34, 0.8);
    color: #fff;
    font-size: 30px;
    line-height: 20px;
    cursor: pointer;
    -webkit-transition: 0.75s;
    transition: 0.75s;
}

    #to-top:hover {
        background: #6b9b25;
    }



/*******************************************************************************
TIMELINE
*******************************************************************************/


.timeline-haut,
.timeline-bas {
    font-size: 15px;
}

    .timeline-haut > div, .timeline-bas > div {
        margin: 0 10px;
        width: 100%;
        flex-direction: column;
    }

.circle {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
    position: relative;
}

    .circle i {
        vertical-align: middle;
        text-align: center;
    }

    .circle .img-circle {
        text-align: center;
        margin: 0 auto;
        width: 40px;
        height: 40px;
        font-size: 20px;
        border: 2px solid #aa0630;
        border-radius: 50%;
        color: #aa0630;
        display: flex;
        align-items: center;
        justify-content: center;
    }


        .circle .img-circle::after {
            content: '';
            position: absolute;
            left: 65%;
            top: 50%;
            width: 45%;
            height: 2px;
            background: #a6d606;
            z-index: 0;
        }

        .circle .img-circle::before {
            content: '';
            position: absolute;
            left: 0;
            top: 50%;
            width: 35%;
            height: 2px;
            background: #a6d606;
            z-index: 0;
        }

.timeline > div {
    flex: 1;
}

    .timeline > div:first-of-type .img-circle::before,
    .timeline > div:last-of-type .img-circle::after {
        display: none;
    }

