/* COLORS */

/* Variables */
:root{
    /* COLORS */
    --blanc:             #FFFFFF;
    --light-grannysmith: #B3DE5E;
    --grannysmith:       #AED84D;
    --dark-grannysmith:  #93BD0A;
    --cappuccino:        #A58C6D;
    --espresso:          #504541;
    --watermelon:        #FF5C7A;

    /* SHADOWS */
    --text-shadow: 0 0 .3em rgba(80, 69, 65, .5); /* espresso @50% */
    --box-shadow: 0 0 2rem rgba(80, 69, 65, .4); /* espresso @40% */
    --map-shadow: 0 0 1.5rem rgba(80, 69, 65, .2); /* espresso @20% */

    /* SIZES */
    --narrow: 640px;
    --default: 960px;
    --wide: 1280px;
}

/* Font colors */
.has-blanc-color{color: var(--blanc);}
.has-light-grannysmith-color{
    color: var(--light-grannysmith);
    text-shadow: var(--text-shadow);
}

.has-grannysmith-color{color: var(--grannysmith);}
.has-dark-grannysmith-color{color: var(--dark-grannysmith);}
.has-cappuccino-color{color: var(--cappuccino);}
.has-espresso-color{color: var(--espresso);}
.has-watermelon-color{color: var(--watermelon);}

a.has-blanc-color,
a:visited.has-blanc-color,
a:active.has-blanc-color{color: var(--blanc);}
a.has-light-grannysmith-color,
a:visited.has-light-grannysmith-color,
a:active.has-light-grannysmith-color{color: var(--light-grannysmith);}
a.has-grannysmith-color,
a:visited.has-grannysmith-color,
a:active.has-grannysmith-color{color: var(--grannysmith);}
a.has-dark-grannysmith-color,
a:visited.has-dark-grannysmith-color,
a:active.has-dark-grannysmith-color{color: var(--dark-grannysmith);}
a.has-cappuccino-color,
a:visited.has-cappuccino-color,
a:active.has-cappuccino-color{color: var(--cappuccino);}
a.has-espresso-color,
a:visited.has-espresso-color,
a:active.has-espresso-color{color: var(--espresso);}
a.has-watermelon-color,
a:visited.has-watermelon-color,
a:active.has-watermelon-color{color: var(--watermelon);}

/* Background colors */
.has-blanc-background-color{background-color: var(--blanc);}
.has-grannysmith-background-color{background-color: var(--grannysmith);}
.has-cappuccino-background-color{background-color: var(--cappuccino);}
.has-espresso-background-color{background-color: var(--espresso);}
.has-watermelon-background-color{background-color: var(--watermelon);}

/* Réglage de contraste texte vert sur fond blanc */
.has-blanc-background-color .has-light-grannysmith-color,
a.has-blanc-background-color.has-light-grannysmith-color,
.has-blanc-background-color .has-grannysmith-color,
a.has-blanc-background-color.has-grannysmith-color{color: var(--dark-grannysmith);}

/* Réglage de contraste texte vert sur fond cappuccino */
.has-cappuccino-background-color .has-grannysmith-color,
a.has-cappuccino-background-color.has-grannysmith-color,
.has-cappuccino-background-color .has-dark-grannysmith-color,
a.has-cappuccino-background-color.has-dark-grannysmith-color{color: var(--light-grannysmith);}


/* Elements' colors */
body{
    color: var(--espresso);
    background-color: var(--cappuccino);
}

a:hover{
    color: var(--grannysmith);
}

input[type=submit]:not(:hover):not(:active):not(.has-background){
    color: var(--blanc);
}



/* TYPOGRAPHY */

body{
    font-family: 'Lexend Deca', sans-serif;
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 140%;
    letter-spacing: -0.02em;
}

h1, h2, h3, h4, h5, h6{
    font-weight: 500;
    margin: .3em 0;
}

h1{
    font-size: clamp(2.2rem, .1em + 5vw, 5.5rem);
    line-height: 95%;
}

h2{
    font-size: clamp(2.2rem, .1em + 4vw, 3.7rem);
    line-height: 85%;
}

.wp-block-image + h2{
    margin-top: -.25em;
}

h3{
    font-size: clamp(1.65rem, .1em + 3vw, 2.2rem);
    line-height: 120%;
}

h4{
    font-size: clamp(1.4rem, .1em + 2vw, 1.65rem);
    line-height: 120%;
}

h5{
    font-size: clamp(1.3rem, .1em + 1vw, 1.4rem);
    font-weight: 800;
    line-height: 120%;
}

p{
    font-size: clamp(1.22rem, .1em + 1vw, 1.3rem);
    margin: .25em 0;
}

b,
strong{
    font-weight: 800;
}



/* COMMON */

.wp-block{
    margin-top: 0;
    margin-bottom: 0;
}

/* alignnarrow (classe d'alignement custom) */
.alignnarrow{
	width:  100%;
	max-width:  var(--narrow);
	margin-left: auto;
	margin-right: auto;
}

/* Buttons block */
.wp-block-buttons{
    margin-top: 1rem;
}

/* Social links block */
.wp-block-social-links{
    margin-top: .5rem;
    margin-bottom: 0;
}

.wp-social-link{
    font-size: 3rem;
}

.wp-block-social-links .wp-social-link a {
    padding: .1em;
}

/* Separator blocks */
.wp-block-separator{
    opacity: 1;
}

.wp-block-separator:not(.is-style-dots),
.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
    height: 3px !important;
    background-color: currentColor;
    max-width: 100% !important;
    margin: 3rem auto 2rem !important;
}

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
    max-width: 20rem !important;
}

.wp-block-separator.is-style-dots{
    margin: 2rem auto 2rem !important;
}

.wp-block-separator.is-style-dots::before{
    content: "∴";
    font-size: 2.5rem;
    line-height: 100%;
}

/* block colonnes */
.wp-block-columns{
    padding: 2rem;
    justify-content: center;
    column-gap: 2rem;
    row-gap: 2rem;
}

/* Espacement vertical exception */
.wp-block-group.has-background .wp-block-columns{
    row-gap: 0 !important;
}

.wp-block-group .wp-block-columns,
.wp-block-columns .wp-block-columns{
    padding: 0;
}

.wp-block-column.has-background{
    padding: 2rem;
}

.wp-block-columns .wp-block-column{
    margin-left: 0;
    margin-right: 0;
}

.wp-block-columns.food .wp-block-column .wp-block-image:first-of-type{
    margin-top: -8rem;
}

/* colonnes custom avec image offset */
.food.wp-block-columns .wp-block-column{
    margin-top: 6rem;
}

.food.wp-block-columns .wp-block-column .wp-block-image:first-of-type{
    margin-top: -8rem;
}

.food.wp-block-columns .wp-block-column .wp-block-image:first-of-type img{
    border-radius: 100%;
    border: var(--blanc) .75rem solid;
}

/* Coloration de la map */
div.wpmapblockrender{
    filter: sepia(.08) saturate(2.4) hue-rotate(354deg);
}

/* Shadows */
#masthead,
.entry-content > .has-background:not(hr),
.wp-block-cover,
.food .wp-block-column.has-background,
#colophon{
    box-shadow: var(--box-shadow);
}

/* Marges normales */
.entry-content > *{
	padding-left: 2rem;
	padding-right: 2rem;
}




/* MEDIA QUERIES */

@media screen and (min-width: 1280px) {
    .food.wp-block-columns{
        padding: 0 3.5rem;
        column-gap:3.5rem;
    }

	.food.wp-block-columns .wp-block-column{
        border-radius: 40px 0 0 0;
    }

    .food.wp-block-columns .wp-block-column .wp-block-image:first-of-type{
        margin-left: -4.5rem;
    }
}

@media screen and (min-width: 960px) {
    .entry-content > div.wpmapblockrender{
        box-shadow: var(--map-shadow);
    }
}

@media screen and (max-width: 1279px) {
	.food.wp-block-columns .wp-block-column .wp-block-image:first-of-type{
		margin-left: auto;
		margin-right: auto;
        text-align: center;
	}
}