body {
    margin: 0;
    background-color: #333333;
    color: #dddddd;
}

header {
    width: 100%;
    height: 100px;
    display: flex;
    flex: auto;
    align-content: center;
    font-family: "Lucida Handwriting", "Helvetica Neue", Helvetica, Arial, sans-serif;
    background-color: #202020;
}

td {
    padding: 2px 5px;
}

a {
    color: #dddddd;
}

input {
    color: black;
}

.nav .open>a, .nav .open>a:focus, .nav .open>a:hover {
    background-color: #202020;
    border-color: #202020;
}

a:focus, a:hover {
    color: #cccccc;
    text-decoration: underline;
}

.home-link {
    text-decoration: none !important;
}

#logo-left {
    margin: auto 0 auto auto;
    color: #eeeeee;
    text-align: center;
}

#logo {
    height: 100px;
}

#logo-right {
    margin: auto auto auto 0;
    color: #eeeeee;
    text-align: center;
}

footer {
    width: 100%;
    height: 50px;
    margin-top: 50px;
    background-color: #202020;
    color: #eeeeee;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

nav {
    font-family: "Lucida Handwriting", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.navbar {
    background-color: #202020;
    border-color: #202020;
}

#nav-bar {
    display: flex;
    justify-content: space-around;
    list-style: none;
}

.navbar-space-under {
    /*margin-bottom: 50px;*/
}

.nav-item-name {
    color: #23527c;
}

.nav-item-selected {
    text-decoration: underline;
    text-decoration-color: #23527c;
}

#content-wrapper {
}

#home-wrapper {
    display: flex;
    flex-direction: column;
}

.home-title {
    font-family: "Lucida Handwriting", "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #23527c;
}

#top-section {
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
    margin: 20px 0;
}

#bottom-section {
    margin: 20px 0;
    text-align: center;
}

#bottom-section-header {
    border-bottom: solid 1px #23527c;
}

#quick-presentation-wrapper {
    flex: 2 2 66%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 20px;
}

#quick-presentation {
}

#event_list_wrapper {
    flex: 1 1 33%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 20px;
}

.btn-dark {
    background-color: #202020bb;
    border-color: #0c0c0c;
    color: #EEEEEE;
    margin-bottom: 20px;
}

#highlights-section {
    display: flex;
    flex-direction: column;
    margin-top: 20px;
}

#goto-galerie {
    margin: 30px auto;
    width: 300px;
}

#gallery-content {
    display: flex;
    flex-direction: column;
    text-align: center;
}

.collapse-facets-button {
    display: none;
}

#albums-wrapper {
    flex-direction: column;
    align-items: center;
}

.facet_group {
    border-bottom: 2px solid darkgrey;
    padding: 10px;
    text-align: center;
}

.facet_list {
    display: flex;
    flex-direction: column;
    align-items: center;
    list-style: none;
    flex-wrap: wrap;
}

.album_list_admin {
    display: flex;
    flex-direction: row;
    align-items: center;
    list-style: none;
    flex-wrap: wrap;
}

.album_item {
    padding: 0.4em 0.8em;
    margin: 0.1em 0;
    border-radius: 10rem;
    min-width: 15rem;
}

#facets-control {
    display: flex;
    flex-direction: column;
}

.btn-facet-selected {
    background-color: #a462a4;
    border-color: #520252;
    color: #FFFFFF;
}

.btn-facet-selected.active.focus, .btn-facet-selected.active:focus, .btn-facet-selected.active:hover,
.btn-facet-selected:active.focus, .btn-facet-selected:active:focus, .btn-facet-selected:active:hover,
.open>.dropdown-toggle.btn-facet-selected.focus, .open>.dropdown-toggle.btn-facet-selected:focus,
.open>.dropdown-toggle.btn-facet-selected:hover {
    color: #fff;
    background-color: #782873;
    border-color: #520252;
}

#search_bar {
    display: flex;
    min-height: 2em;
}

#search_field {
    flex: auto;
}

.collapse-facets {
    display: flex;
}

#search_bar_separator {
    flex: 1;
}

#galerie-pagination {
    text-align: center;
}

#gallery {
    margin-left: 10px;
    flex: 0 1 100%;
    display: flex;
    flex-direction: column;
}

#gallery-wrapper {
    display: flex;
    flex-flow: column;
    flex: 0 1 100%;
}

#gallery-photos {
    display: flex;
    flex-wrap: wrap;
}

.gallery-photo {
    min-width: 160px;
    height: auto;
    box-shadow: 0 0 5px 2px #202020;
}

.photo-item {
    flex: 0 0 30%;
    display: flex;
    justify-content: center;
    flex-flow: column;
    margin: 10px;
    text-align: center;
}

.photo-item:hover {
    background-color: lightgray;
}

.photo-item:hover>a>.label-photo {
    color: black;
}

.show-facets {
    display: block;
}

.collapse-facets-button[aria-expanded="true"] .show-facets
{display: none;}

.hide-facets {
    display: none;
}

.collapse-facets-button[aria-expanded="true"] .hide-facets
{display: block;}

@media screen and (max-width: 768px) {
    #gallery-content {
        display: flex;
        flex-direction: column;
    }

    #gallery-photos {
        justify-content: center;
    }

    .collapse-facets-button {
        display: block;
        margin: 5px auto;
    }

    #albums-wrapper {
        flex-direction: column;
        align-items: center;
    }

    .collapse-facets {
        display: none;
    }

    .facet_list {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        list-style: none;
        flex-wrap: wrap;
    }

    .album_list_admin {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        list-style: none;
        flex-wrap: wrap;
    }

    #search_bar {
        margin: 2px 20px;
    }
}

.photo-controls {
    margin: auto;
}

#hd-photo {
    max-width: 400px;
    max-height: 400px;
    width: auto;
    height: auto;
}

#add-photo {
    margin: 10px auto;
}

#formset {
    display: flex;
    border: solid 2px darkgrey;
    margin: 20px 0;
}

#photos-list-wrapper {
    flex: 1;
    border: solid 1px darkgrey;
    display: flex;
    flex-direction: column;
}

#photos-list {
    display: flex;
    flex-direction: column;
}

.photo-preview-wrapper {
    min-width: 600px;
    min-height: 600px;
    border: grey 1px solid;
    display: flex;
    align-content: center;
    justify-content: center;
}

.photo-preview {
    width: auto;
    max-width: 600px;
    max-height: 600px;
    align-self: center;
}

#photo-form-wrapper {
    display: flex;
    justify-content: space-evenly;
    align-content: center;
}

#id_image_upload {
    color: #dddddd;
}

.photo-hidden {
    display: none;
}

.photo-visible {
}

#real-form {
    display: none;
}

.split-input {
    display: flex;
    flex-direction: row;
}

.left-input {
    display: flex;
    flex-direction: column;
    flex: 1 1 75%;
}

.right-input {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    flex: 1 1 25%;
    padding: 0 15px;
}

#presentation-section {
    margin-bottom: 30px;
    width: 100%;
}

#highlights-section {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.section-title {
    border-bottom: solid 2px #202020;
    margin: 20px 0;
    width: 100%;
}

#highlights-wrapper {
    display: flex;
    justify-content: space-around;
    width: 100%;
    margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
    #highlights-wrapper {
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        width: 100%;
        margin-bottom: 20px;
    }
}

#selector-wrapper {
    display: flex;
    margin: 10px;
}

.highlight {
    flex: 1 1 25%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#highlights-submit {
    width: 200px;
    margin: 10px;
}

#highlights-form {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#highlights-form-wrapper {
    margin: 20px;
}

.highlight-photo-item {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.highlight-photo {
    min-width: 160px;
    height: auto;
    box-shadow: 0 0 5px 2px #202020;
}

.highlighted {
    border: solid 3px darkblue;
}

.label-photo {
    color: #dddddd;
}

.album_name {
    color: #dddddd;
}

.album-title {
    text-align: center;
    color: #dddddd;
    text-decoration: underline;
}

.dashboard-album {
    background: #202020;
    border-radius: 20px;
    margin: 20px;
    padding: 10px;
    text-align: center;
}

#dashboard {
    display: flex;
    flex-flow: wrap;
}

.dashboard-group {
    display: flex;
    flex-flow: wrap;
}

.dashboard-tile {
    display: flex;
    flex-flow: column;
    flex: 1 1 25%;
    justify-content: center;
}

.dashboard-tile-content {
    display: flex;
    flex-flow: column;
    flex: 0 0 25%;
    text-align: center;
    font-size: 4em;
}

.dashboard-group-title {
    color: #dddddd;
}

.contact-form {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.contact-form .checkbox, .contact-form .radio {
    margin: 0;
}

.contact-form-group {
    width: 100%;
}

#contact-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.enlarge_btn {
    display: none;
}

#details-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}

#hd_photo-wrapper {
    display: flex;
    flex-direction: row;
    flex: 1 1 65%;
}

#thumbnails {
    display: flex;
    flex-direction: column;
    overflow: auto;
    max-height: 400px;
    width: 120px;
    direction: rtl;
    margin-right: 15px;
}

#thumbnails::-webkit-scrollbar {
    width: 10px;
}

#thumbnails::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}

#thumbnails::-webkit-scrollbar-thumb {
  background-color: darkgrey;
  outline: 1px solid slategrey;
}

.photo-thumbnail {
    margin: 5px 5px 15px 5px;
    width: 100px;
    height: 100px;
    min-width: 100px;
    min-height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.thumbnail-selected {
    box-shadow: 0 0 3px 2px #202020;
}

.enlarge_pane_contain {
    max-width: 400px;
    max-height: 400px;
}

#photo-details {
    display: flex;
    flex-direction: column;
    flex: 1 1 35%;
}

.photo-ref {
    display: none;
}

#contact_for_ref {
    margin-top: 15px;
}

#price-helper-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#presentation {
    margin: 0 20px;
}

#event_detail {
    margin: 0 20px;
}

#siret {
    font-size: 0.4em;
}

.nav-item {
    padding: 10px 15px;
}

.dropdown-menu {
    background-color: #303030;
}

.dropdown-menu>li>a {
    color: #dddddd;
}

.empty-frame {
    width: 300px;
    height: 300px;
    background-color: grey;
    color: #dddddd;
    display: flex;
    align-items:center;
    justify-content:center;
    font-size: xx-large;
}

#presentation img {
    max-width: 100%;
    height: auto;
}

@media screen and (max-width: 768px) {#nav-bar {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        list-style: none;
        align-items: flex-end;
    }

    .navbar-space-under {
        margin-bottom: 20px;
    }

    #logo-left {
        margin: auto 0 auto auto;
        color: #eeeeee;
        text-align: center;
        font-size: 20px;
    }

    #logo {
        height: 50px;
        width: auto;
    }

    #logo-right {
        margin: auto auto auto 0;
        color: #eeeeee;
        text-align: center;
        font-size: 20px;
    }

    header {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom: 10px;
    }

    .nav-item {
        padding: 0 10px;
    }

    #navbar-container {
        background-color: #303030;
    }

    .enlarge_pane_contain {
        max-width: 300px;
        max-height: 300px;
        margin: auto;
    }

    #hd_photo-wrapper {
        flex-direction: column-reverse;
    }

    #thumbnails {
        flex-direction: row;
        overflow: auto;
        width: auto;
        direction: ltr;
        margin: auto;
    }

    #hd-photo {
        max-width: 300px;
        max-height: 300px;
        width: auto;
        height: auto;
    }
}

.captcha {
    margin-left: 10px;
    margin-bottom: 5px;
}