/*@import url("../../../p_s-1-k-mmh1sco-ht-tk-f-563.564-a-14280445-app-typekit-e-css.css");*/

@font-face {
    font-family: "mostra-nuova";
    src: url("https://use.typekit.net/af/7a4dea/00000000000000003b9b4793/27/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"),url("https://use.typekit.net/af/7a4dea/00000000000000003b9b4793/27/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"),url("https://use.typekit.net/af/7a4dea/00000000000000003b9b4793/27/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
    font-display: auto;
    font-style: normal;
    font-weight: 400;
}

@font-face {
    font-family: "mostra-nuova";
    src: url("https://use.typekit.net/af/d8512e/00000000000000003b9b4794/27/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"),url("https://use.typekit.net/af/d8512e/00000000000000003b9b4794/27/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"),url("https://use.typekit.net/af/d8512e/00000000000000003b9b4794/27/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
    font-display: auto;
    font-style: normal;
    font-weight: 700;
}

html, body { font-family: sans-serif; }

a {
    color: #527a71;
    font-weight: bold;
}

h1, h2, h3, h4, h5, h6 { font-family: "mostra-nuova",sans-serif; }

h1 {
    font-size: 400%;
    text-align: center;
}

h2 { font-size: 300%; }

h3 { font-size: 125%; }

/* Add a butterfly in the bottom right of h1 titles */
h1>*,
body.path-contact h1,
body.path-agenda h1,
body.path-expos h1,
body.path-le-saviez-vous h1,
body.path-revue-de-presse h1,
body.path-presse h1,
h2 {
    position: relative;
    color: #c14e4b;
}

.path-frontpage h2 { text-align: center; }

h1>*::after, h2::after {
    position: absolute;
    display: inline-block;
    bottom: -0.4em;
    content: " ";
    width: 0.5em;
    height: 0.5em;
    background-image: url(../images/butterfly.svg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

body.path-contact h1::after,
body.path-agenda h1::after,
body.path-expos h1::after,
body.path-le-saviez-vous h1::after,
body.path-revue-de-presse h1::after,
body.path-presse h1::after {
    position: relative;
    display: inline-block;
    bottom: -0.7em;
    content: " ";
    width: 0.5em;
    height: 0.5em;
    background-image: url(../images/butterfly.svg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.hidden { display: none; }
.invisible { visibility: hidden; }

.visually-hidden, #block-flaubert-branding .site-name {
    position: absolute !important;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    width: 1px;
    height: 1px;
    word-wrap: normal;
}
  
.visually-hidden.focusable:active,
.visually-hidden.focusable:focus {
    position: static !important;
    overflow: visible;
    clip: auto;
    width: auto;
    height: auto;
}

/********/
/* Form */
/********/
input[type="text"], input[type="email"], textarea {
    border: 0.1em solid #3db49a;
}

input[type="checkbox"], input[type="email"], textarea {
    border: 0.1em solid #3db49a;
}

button, input[type="button"], input[type="submit"] {
    background-color: #c14e4b;
    color: white;
    border: none;
    padding: 0.5em 1em;
    font-family: "mostra-nuova",sans-serif;
    font-weight: bold;
}

.form-required::after {
    display: inline-block;
    margin: 0 0.2em;
    content: "*";
    font-family: "mostra-nuova",sans-serif;
    font-size: 150%;
    color: #c14e4b;
    background-image: none;
    width: inherit;
    height: inherit;
    vertical-align: text-top;
}

/**************/
/* Front page */
/**************/
body.path-frontpage h1 > span::after { display: none; }

body.path-frontpage h1 span {
    position: relative;
    bottom: -1.7em;
    display: block;
    color: transparent;
    width: 6em;
    height: 4.5em;
    background-image: url("../flaubert21-logo.svg");
    background-size: contain;
    background-position: center bottom;
    background-repeat: no-repeat;
}

body.path-frontpage h1 { margin-bottom: 2em; }

/**********/
/* Header */
/**********/
div.region-header {
    margin-top: 2rem;
    display: flex;
}

#block-flaubert-branding { margin-right: 3em; }

/*******************/
/* Main navigation */
/*******************/
#block-flaubert-main-menu, #block-flaubert-main-menu ul.menu {
    display: flex;
    align-content: center;
    flex-grow: 1;
    margin: 0;
    padding: 0;
}

#block-flaubert-main-menu ul.menu li {
    position: relative;
    top: -3em;
    padding-top: 3em;
    display: flex;
    align-items: center;
    list-style-type: none;
    font-size: 80%;
    margin-left: 1em;
    flex-grow: 1;
}

#block-flaubert-main-menu a {
    padding: 2em 0;
    text-decoration: none;
    text-transform: uppercase;
    color: #c14e4b;
}

#block-flaubert-main-menu ul.menu li:last-child,
#block-flaubert-main-menu ul.menu li:nth-last-child(2) {
    flex-grow: 0;
    position: relative;
    width: 5.5em;
    background-color: #c14e4b;
    align-items: stretch;
    color: white;
    background-repeat: no-repeat;
    background-size: 2em;
}

#block-flaubert-main-menu ul.menu li:last-child {
    margin-left: 0.3em;
    background-image: url("../icons/contact.svg");
    background-position: center 2.4em;
}

#block-flaubert-main-menu ul.menu li:nth-last-child(2) {
    background-image: url("../icons/calendar.svg");
    background-position: center 2em;
}

#block-flaubert-main-menu ul.menu li:last-child a,
#block-flaubert-main-menu ul.menu li:nth-last-child(2) a {
    display: block;
    width: 100%;
    color: white;
    font-weight: bold;
    text-align: center;
}

/*********************/
/* Footer navigation */
/*********************/
#block-flaubert-footer ul.menu {
    display: flex;
    align-content: center;
    justify-content: space-between;
    margin: 0;
    padding: 0;
}

#block-flaubert-footer ul.menu li {
    display: flex;
    align-items: center;
    list-style-type: none;
    font-size: 80%;
    margin-left: 1em;
}

#block-flaubert-footer a {
    padding: 2em 0;
    text-decoration: none;
    text-transform: uppercase;
    color: #c14e4b;
}

/*************/
/* Last news */
/*************/
#block-last-news .view-actualites {
    position: relative;
    display: grid;
    grid-template-areas: "b" "a" "c";
}

#block-last-news nav.pager .pager__items {
    position: absolute;
    right: 0;
    top: -5em;

    grid-area: b;
    text-align: right;
}

#block-last-news nav.pager a {
    text-decoration: none;
    font-family: "mostra-nuova",sans-serif;
    font-size: 150%;
    font-weight: bold;
    color: #c14e4b;
}

#block-last-news .more-link { grid-area: c; }

#block-last-news .view-content {
    grid-area: a;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}

#block-last-news .views-row {
    box-sizing: border-box;
    flex: 0 0 24%;
    border: 0.05rem solid #63a596;
}

#block-last-news .views-row img {
    width: 100%;
    height: 10em;
    object-fit: cover;
}

#block-last-news .views-row iframe { max-width: 100%; }

#block-last-news .pager__item.is-active { display: none; }

#block-last-news .views-field-title {
    grid-area: a;
    padding: 0 1rem;
    font-family: "mostra-nuova",sans-serif;
    font-size: 130%;
    font-weight: bold;
}

#block-last-news .views-field-title a {
    color: #63a596;
    text-decoration: none;
}

#block-last-news .views-field-body {
    grid-area: c;
    padding: 0 1rem;
}

#block-last-news .more-link {
    margin-top: 2em;
    text-align: center;
}

#block-last-news .more-link a {
    display: inline-block;
    padding: .5em 1em;

    font-family: "mostra-nuova",sans-serif;
    font-weight: bold;
    font-size: 120%;
    text-decoration: none;

    background-color: #c14e4b;
    color: white;
}

/***************/
/* Next events */
/***************/
#block-next-events .view-agenda {
    position: relative;
    display: grid;
    grid-template-areas: "b" "a" "c";
}

#block-next-events .view-content { grid-area: a; }
#block-next-events nav.pager .pager__items {
    position: absolute;
    right: 0;
    top: -5em;

    grid-area: b;
    text-align: right;
}

#block-next-events nav.pager a {
    text-decoration: none;
    font-family: "mostra-nuova",sans-serif;
    font-size: 150%;
    font-weight: bold;
    color: #c14e4b;
}

#block-next-events .more-link { grid-area: c; }

#block-next-events .view-content {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}

#block-next-events .views-row {
    box-sizing: border-box;
    display: grid;
    grid-template-areas:
        "day year"
        "month time"
        "a a"
        "b b"
        "c c"
        "d d"
        "e e"
        "f f"
        "g g";

    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto auto auto auto 1fr;

    flex: 0 0 32%;
    border: 0.05rem solid #63a596;
}

#block-next-events .pager__item.is-active { display: none; }

#block-next-events .views-field-field-event-date { grid-area: day; }
#block-next-events .views-field-field-event-date-1 { grid-area: month; }
#block-next-events .views-field-field-event-date-2 { grid-area: year; }
#block-next-events .views-field-field-event-date-3 { grid-area: time; }

#block-next-events .views-field-field-event-date,
#block-next-events .views-field-field-event-date-1,
#block-next-events .views-field-field-event-date-2,
#block-next-events .views-field-field-event-date-3 {
    padding-left: 1rem;
    font-family: "mostra-nuova",sans-serif; 
    text-transform: uppercase;
    color: #3db49a;
}

#block-next-events .views-field-field-event-date,
#block-next-events .views-field-field-event-date-1 {
    padding-right: 1rem;
    font-size: 140%;
    font-weight: bold;;
    border-right: 0.05rem solid #3db49a;
}

#block-next-events .views-field-field-event-date-1,
#block-next-events .views-field-field-event-date-3 {
    border-bottom: 0.05rem solid #3db49a;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}

#block-next-events .views-field-field-event-date-2,
#block-next-events .views-field-field-event-date-3 {
    align-self: end;
}

#block-next-events .views-field-title {
    grid-area: a;
    padding: 0 1rem;
    text-transform: uppercase;
    font-weight: bold;
}

#block-next-events .views-field-title a {
    color: #c14e4b;
    text-decoration: none;
}

#block-next-events .views-field-field-event-type {
    grid-area: b;
    padding: 0 1rem;
    margin-bottom: 0.5em;
    text-transform: uppercase;
    color: #c14e4b;
    font-size: 90%;
}

#block-next-events .views-field-body {
    grid-area: c;
    padding: 0 1rem;
}

#block-next-events .views-field-field-city {
    grid-area: d;
    padding: 0 1rem;
    color: #c14e4b;
    text-transform: uppercase;
}

#block-next-events .views-field-field-illustration {
    margin-top: 1rem;
    grid-area: e;
}

#block-next-events .views-field-field-illustration img {
    vertical-align: bottom;
    width: 100%;
    height: 15em;
    object-fit: cover;
}

#block-next-events .more-link {
    margin-top: 2em;
    text-align: center;
}

#block-next-events .more-link a {
    display: inline-block;
    padding: .5em 1em;

    font-family: "mostra-nuova",sans-serif;
    font-weight: bold;
    font-size: 120%;
    text-decoration: none;

    background-color: #c14e4b;
    color: white;
}

/**********/
/* Agenda */
/**********/
.all-events {
    position: relative;
    display: grid;
    grid-template-areas: "b" "a" "c";
}

.all-events nav.pager .pager__items {
    position: absolute;
    right: 0;
    top: -5em;

    grid-area: b;
    text-align: right;
}

.all-events nav.pager a {
    text-decoration: none;
    font-family: "mostra-nuova",sans-serif;
    font-size: 150%;
    font-weight: bold;
    color: #c14e4b;
}

.all-events .more-link { grid-area: c; }

.all-events .view-content {
    grid-area: a;
    display: inline-flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: space-between;
}

.all-events .views-row {
    box-sizing: border-box;
    display: grid;
    grid-template-areas:
        "day year"
        "month time"
        "a a"
        "b b"
        "c c"
        "d d"
        "e e"
        "f f"
        "g g"
        "h h"
        "i i";

    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto 1fr;
    grid-template-rows: auto auto auto auto 1fr;

    flex: 0 0 32%;
    border: 0.05rem solid #63a596;
    margin-bottom: 2em;
}

.all-events .pager__item.is-active { display: none; }

.all-events .views-field-field-event-date { grid-area: day; }
.all-events .views-field-field-event-date-1 { grid-area: month; }
.all-events .views-field-field-event-date-2 { grid-area: year; }
.all-events .views-field-field-event-date-3 { grid-area: time; }

.all-events .views-field-field-date-start { grid-area: day; }
.all-events .views-field-field-date-end { grid-area: month; }
.all-events .views-field-field-date-start-1 { grid-area: year; }
.all-events .views-field-field-date-end-1 { grid-area: time; }

.all-events .views-field-field-event-date,
.all-events .views-field-field-event-date-1,
.all-events .views-field-field-event-date-2,
.all-events .views-field-field-event-date-3,
.all-events .views-field-field-date-start,
.all-events .views-field-field-date-end,
.all-events .views-field-field-date-start-1,
.all-events .views-field-field-date-end-1 {
    padding-left: 1rem;
    font-family: "mostra-nuova",sans-serif; 
    text-transform: uppercase;
    color: #3db49a;
}

.all-events .views-field-field-event-date,
.all-events .views-field-field-event-date-1,
.all-events .views-field-field-date-start,
.all-events .views-field-field-date-end {
    padding-right: 1rem;
    font-size: 140%;
    font-weight: bold;;
    border-right: 0.05rem solid #3db49a;
}

.all-events .views-field-field-event-date-1,
.all-events .views-field-field-event-date-3,
.all-events .views-field-field-date-end,
.all-events .views-field-field-date-end-1 {
    border-bottom: 0.05rem solid #3db49a;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}

.all-events .views-field-field-event-date-2,
.all-events .views-field-field-event-date-3,
.all-events .views-field-field-date-start-1,
.all-events .views-field-field-date-end-1 {
    align-self: end;
}

.all-events .views-field-title,
.all-events .views-field-field-event-type,
.all-events .views-field-body, 
.all-events .views-field-field-city,
.all-events .views-field-field-book-phone,
.all-events .views-field-field-price,
.all-events .views-field-field-address,
.all-events .views-field-field-url {
    padding: 0 1rem;
}

.all-events .views-field-title {
    grid-area: a;
    text-transform: uppercase;
    font-weight: bold;
}

.all-events .views-field-title a {
    color: #c14e4b;
    text-decoration: none;
}

.all-events .views-field-field-event-type {
    grid-area: b;
    margin-bottom: 0.5em;
    text-transform: uppercase;
    color: #c14e4b;
    font-size: 90%;
}

.all-events .views-field-body {
    grid-area: c;
}

.all-events .views-field-field-city {
    grid-area: d;
    padding: 0 1rem;
    color: #c14e4b;
    text-transform: uppercase;
}

.all-events .views-field-field-book-phone { grid-area: e; }
.all-events .views-field-field-price { grid-area: f; }
.all-events .views-field-field-address { grid-area: g; }
.all-events .views-field-field-url { grid-area: h; }
.all-events .views-field-field-illustration {
    grid-area: i;
    margin-top: 1rem;
}

.all-events .views-field-field-illustration img {
    vertical-align: bottom;
    width: 100%;
    height: 15em;
    object-fit: cover;
}

.all-events .more-link {
    margin-top: 2em;
    text-align: center;
}

.all-events .more-link a {
    display: inline-block;
    padding: .5em 1em;

    font-family: "mostra-nuova",sans-serif;
    font-weight: bold;
    font-size: 120%;
    text-decoration: none;

    background-color: #c14e4b;
    color: white;
}

/*****************/
/* Did you know? */
/*****************/
#block-didyouknow {
    margin-top: 3em;
    padding: 1em 0;
    background-color: #c14e4b;
    color: white;
}

#block-didyouknow a { color: white; }

#block-didyouknow h2 {
    color: white;
    margin-bottom: 1em;
}

#block-didyouknow h2::after {
    background-image: url(../images/butterfly-inv.svg);
}

#block-didyouknow>div {
    text-align: center;
    font-size: 130%;
    font-weight: bold;
}

/********************/
/* Admin navigation */
/********************/
#block-flaubert-local-tasks, #block-flaubert-account-menu {
    padding: 0.5rem 1rem 0.5rem 1rem;
    margin-bottom: 0.5rem;
    background-color: #1c6656;
    color: white;
}

#block-flaubert-local-tasks a, #block-flaubert-account-menu a {
    display: inline-block;
    padding: 0.2em 1em;
    font-weight: bold;
    color: white;
    text-decoration: underline;
}

#block-flaubert-local-tasks a:focus, #block-flaubert-local-tasks a:hover,
#block-flaubert-account-menu a:focus, #block-flaubert-account-menu a:hover {
    background-color: #258a75;
}

#block-flaubert-local-tasks ul.menu, #block-flaubert-account-menu ul.menu {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#block-flaubert-local-tasks ul.menu li, #block-flaubert-account-menu ul.menu li {
    display: inline-block;
}

#block-flaubert-local-tasks a.is-active, #block-flaubert-account-menu a.is-active {
    background-color: black;
}

/******************/
/* Partners logos */
/******************/
#block-logosdespartenaires {
    border-top: 0.1em solid #c14e4b;
    text-align: center;
}

#block-logosdespartenaires .bandeau-partenaires img {
    display: inline-block;
    margin-right: 1rem;
    width: auto;
    height: 6rem;
}

/*************/
/* Event map */
/*************/
#block-event-map, #block-expos-map {
    margin-bottom: 6em;
}

/*****************/
/* Mini-calendar */
/*****************/
#block-mini-calendar td {
    border: none;
    text-align: center;
    height: 3em;
    vertical-align: middle;
}

#block-mini-calendar a {
    text-decoration: none;
    font-weight: bold;
}

#block-mini-calendar .past,
#block-mini-calendar .past a,
#block-mini-calendar .past-month,
#block-mini-calendar .past-month a,
#block-mini-calendar .future-month,
#block-mini-calendar .future-month a {
    color: #8ef2dc;
}

#block-mini-calendar .today {
    background-color: transparent;
    border: 0.1em solid #63a596;
}

#block-mini-calendar h3 {
    display: flex;
    margin: 0;
    text-transform: uppercase;
    color: #527a71;
}

#block-mini-calendar h3 span {
    padding: 0.5em 1em;
    border: 0.05rem solid #63a596;    
}

#block-mini-calendar h3 span:first-child {
    margin-right: 1em;
    flex-grow: 1;
}

/***************/
/* Agenda page */
/***************/
body.page-node-type-agenda .field--name-field-illustration img {
    width: 100%;
    height: auto;
}

body.page-node-type-agenda .field--name-field-event-date {
    margin-bottom: 0.5em;
    font-family: "mostra-nuova",sans-serif;   
    font-size: 130%;
    font-weight: bold;
    color: #527a71;
}

/**************************/
/* Menu agenda/exposition */
/**************************/
#block-menudelagenda, #block-menudesexpositions {
    margin-bottom: 2em;
    border: 0.05rem solid #63a596;
}

#block-menudelagenda .menu, #block-menudesexpositions .menu {
    margin: 0 0.3em 0.3em 0.3em;
    padding: 0;
    display: flex;
    justify-content: space-around;
}

#block-menudelagenda .menu-item, #block-menudesexpositions .menu-item {
    width: 100%;
    text-align: center;
    margin: 0;
    font-family: "mostra-nuova",sans-serif;   
    font-size: 140%;
    font-weight: bold;
    text-transform: uppercase;
}

#block-menudelagenda .is-active, #block-menudesexpositions .is-active {
    background-color: #c14e4b;
    color: white;
}

#block-menudelagenda a, #block-menudesexpositions a {
    display: block;
    padding: 0.75em 0;
    text-decoration: none;
}

/*****************/
/* Espace presse */
/*****************/
.view-presse .views-table tr {
    margin-bottom: 2em;
    border: 0.05rem solid #63a596;
}

.view-presse .views-table th {
    text-align: center;
    font-family: "mostra-nuova",sans-serif;
    font-size: 140%;
    font-weight: bold;
    text-transform: uppercase;
}

.view-presse .views-table td, .view-presse .views-table th {
    padding: 0.7rem;
    vertical-align: top;
}

.view-presse .views-field-changed {
    min-width: 10em;
}