/**
 * Gutenberg Wide Alignments and Floats ----------------------------------------
 * https://developer.wordpress.org/block-editor/how-to-guides/themes/theme-support/#wide-alignments-and-floats
 */
 .wp-block-image figure.alignleft { margin-right:2rem; margin-bottom:1rem }
 .wp-block-image figure.alignright { margin-left:2rem; margin-bottom:1rem }

 /* For captions, we display the figure itself as a table.
    This ensures the figcaption will retain the same width as the image,
    which is important when the caption is long. */
 .wp-block-image figure.alignleft,
 .wp-block-image figure.alignright { display:table }
 .wp-block-image figure.alignleft figcaption,
 .wp-block-image figure.alignright figcaption { display:table-caption; caption-side:bottom }
 .wp-block-image figure.alignright figcaption,
 .wp-block-image figure.alignleft figcaption { font-size:75%; margin-bottom:1rem }

.layout-content > *:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright):not(.single-post),
 article.single-post > *:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright) {
  margin-left: auto;
  margin-right: auto;
  max-width:min(calc(100dvw - 60px), var(--wp--style--global--content-size));
}

.front .alignfull {
  width: 100%;
}

.front .alignwide {
  margin-left: auto !important;
  margin-right: auto !important;
  width: var(--container-width);
  padding-left:var(--container-padding) !important; 
  padding-right:var(--container-padding) !important
}

/* Gutenberg Misc ----------------------------------------------------------- */
/* Padding */
.layout-content :is(.wp-block-group, .wp-block-cover){ padding-top:3rem; padding-bottom:3rem }
.layout-content :is(.wp-block-group, .wp-block-cover).alignwide{ padding-top:4rem; padding-bottom:4rem }
.layout-content :is(.wp-block-group, .wp-block-cover).alignfull{ padding-top:5rem; padding-bottom:5rem }
.layout-content :is(.wp-block-group, .wp-block-cover) :is(.wp-block-group, .wp-block-cover){ padding-top:0; padding-bottom:0 }

/* margin bottom aux colonnes et non au wrapper colonnes afin d'avoir
  marge entre chaque colonne sur mobile  */
.wp-block-columns { margin-bottom:0 }
.wp-block-column { margin-bottom:1.75em }

/* Collapse sections fullwidth with background to Main */
.layout-content > div.alignfull:first-child{ margin-top:calc(var(--main-padding) * -1) }
.layout-content > div.alignfull:last-child{ margin-bottom:calc(var(--main-padding) * -1) }

p.has-drop-cap:not(:focus):first-letter {
  font-size: 6.5em;
}


/* Table */
.wp-block-table table { border-collapse:separate }

/* Button */
.wp-block-button__link { 
  width: auto;
  background:transparent; 
  border:none;
  color:var(--primary); 
  padding:var(--button-padding); 
  outline: 0;
  text-decoration:none; 
  font-family:var(--font-secondary); 
  font-size:14px; 
  text-transform:uppercase; 
  font-weight:500; 
  position: relative; 
  transition: all 300ms ease-in-out;   
}
.wp-block-button__link:active { opacity: .66; }
.wp-block-button__link:active:after { opacity: .66; }
.wp-block-button__link:is(:hover, :focus){ color: var(--primary); text-decoration: none;  }
.wp-block-button__link::before { content: ''; height:1px; width: 100%; display: block;  position: absolute; left: 0; opacity: 1; bottom: 0; background:var(--primary); transform: scaleX(1) translateZ(0);  transition: all 500ms cubic-bezier(0.77, 0, 0.175, 1);  } 
.wp-block-button__link::after { content: ''; height:1px; width: 100%; display: block;  position: absolute; left: 0; opacity: 1; bottom: 0; background:#000; transform: scaleX(0) translateZ(0); z-index: 2;  transition: all 500ms cubic-bezier(0.77, 0, 0.175, 1); transform-origin:center left;  } 
.wp-block-button__link:is(:hover, :focus){ color:var(--dark) }
.wp-block-button__link:is(:hover, :focus)::after{ transform: scaleX(1) translateZ(0);  }

.wp-block-button__link.has-blanc-color:is(:hover, :focus){ color: var(--primary) !important }
.wp-block-button__link.has-blanc-color:is(:hover, :focus):after{ background: var(--primary); }

.wp-block-button__link.has-primary-color:is(:hover, :focus){ color: var(--dark) !important }
.wp-block-button__link.has-primary-color:is(:hover, :focus):after{ background: var(--dark); }

.wp-block-button__link.has-secondary-background-color:before{  background-color:var(--secondary) }
.wp-block-button__link.has-tertiary-background-color:before{ background-color:var(--tertiary) }
.wp-block-button__link.has-accent-background-color:before{ background-color:var(--accent) }
.wp-block-button__link.has-light-background-color:before{ background-color:var(--light) }
.wp-block-button__link.has-dark-background-color:before{ background-color:var(--dark) }
.wp-block-button__link.has-blanc-background-color:before{ background-color:var(--white) }
.wp-block-button__link.has-noir-background-color:before{ background-color:var(--black) }

.wp-block-button__link.has-secondary-background-color:is(:hover, :focus){ color:var(--secondary) }
.wp-block-button__link.has-tertiary-background-color:is(:hover, :focus){ color:var(--tertiary) }
.wp-block-button__link.has-accent-background-color:is(:hover, :focus){ color:var(--accent) }
.wp-block-button__link.has-light-background-color:is(:hover, :focus){ color:var(--light) }
.wp-block-button__link.has-dark-background-color:is(:hover, :focus){ color:var(--dark) }
.wp-block-button__link.has-blanc-background-color:is(:hover, :focus){ color:var(--white) }
.wp-block-button__link.has-noir-background-color:is(:hover, :focus){ color:var(--black) }

.wp-block-button__link[style*="background-color"]{ border-color:transparent; }  /* Custom color */
.wp-block-button__link[style*="background-color"]:before{ background: transparent; }
.wp-block-button__link[style*="background-color"]:is(:hover, :focus){ color: #fff; filter: brightness(1.15); }

.wp-block-button__link.has-blanc-color::before {
    background: #fff;
}


.is-style-outline { color:var(--primary) }
.is-style-outline .wp-block-button__link{ background:transparent }
.is-style-outline .wp-block-button__link::before { background:var(--primary); opacity:0; transform: scale(0)  } 
.is-style-outline .wp-block-button__link:not([style*="color"]):is(:hover, :focus) { color: #fff !important;  } 
.is-style-outline .wp-block-button__link:is(:hover, :focus) { border-color:var(--primary); } 
.is-style-outline .wp-block-button__link:is(:hover, :focus)::before { opacity:1; transform: scale(1) } 

.is-style-outline .wp-block-button__link.has-secondary-color{ border-color:var(--secondary) }
.is-style-outline .wp-block-button__link.has-tertiary-color{ border-color:var(--tertiary) }
.is-style-outline .wp-block-button__link.has-light-color{  border-color:var(--light); color:rgba(0,0,0,.2) !important; }
.is-style-outline .wp-block-button__link.has-light-color:is(:hover, :focus){ color:rgba(0,0,0,.2) !important; }
.is-style-outline .wp-block-button__link.has-blanc-color{  border-color:var(--white); color:rgba(0,0,0,.2) !important; }
.is-style-outline .wp-block-button__link.has-blanc-color:is(:hover, :focus){ color:rgba(0,0,0,.2) !important; }
.is-style-outline .wp-block-button__link.has-dark-color{ border-color:var(--dark) }
.is-style-outline .wp-block-button__link.has-noir-color{ border-color:var(--black) }

.is-style-outline .wp-block-button__link.has-secondary-color::before{ background:var(--secondary);  }
.is-style-outline .wp-block-button__link.has-tertiary-color::before{ background:var(--tertiary); }
.is-style-outline .wp-block-button__link.has-light-color::before{ background:var(--light);  }
.is-style-outline .wp-block-button__link.has-blanc-color::before{ background:var(--white);  }
.is-style-outline .wp-block-button__link.has-dark-color::before{ background:var(--dark); }
.is-style-outline .wp-block-button__link.has-noir-color::before{ background:var(--black); }

.is-style-outline .wp-block-button__link[style*="color"]:is(:hover, :focus){ border-color: currentColor; filter: brightness(1.2); } /* for a custom color */
.is-style-outline .wp-block-button__link[style*="color"]::before{ background:transparent }



.wp-block-file .wp-block-file__button { display: inline-block; font-family:var(--font-secondary); letter-spacing: 1px; font-size: 15px; font-size: 0.9375rem; text-transform: uppercase; font-weight: 500; border-radius:var(--border-radius); background: var(--primary); color: #fff; line-height: 1; padding: 1.5em 2.5em; }
.wp-block-file .wp-block-file__button:hover { cursor: pointer; filter:brightness(1.2); text-decoration:none; }

/* .wp-block-cover.alignleft,
.wp-block-cover.alignright { max-width: 400px; } */

/* quote */
.wp-block-quote,
.wp-block-quote.is-style-large { margin-top: 2.5rem; margin-bottom: 2.5rem; font-size: 20px; font-size: 1.25rem; padding-left: 4.5rem; position: relative; font-style: italic; }

.wp-block-quote:before,
.wp-block-quote.is-style-large:before { content: '“'; font-size: 100px; font-size: 6.25rem; font-style: italic; position: absolute; top: 0; left: 0; line-height: 1; }
.wp-block-quote p:last-of-type,
.wp-block-quote.is-style-large p:last-of-type { margin-bottom: 0; }

.wp-block-quote cite,
.wp-block-quote .wp-block-quote__citation,
.wp-block-quote.is-style-large cite,
.wp-block-quote.is-style-large .wp-block-quote__citation { margin-top: 1.5rem; font-size: 16px; font-size: 1rem; font-family:var(--font-secondary); color: #707070; text-transform: uppercase; font-style: normal; font-weight: 500; display: inline-block; }

/* pullquote */
.wp-block-pullquote { border-top: 2px solid #dbdee1; border-bottom: 2px solid #dbdee1; padding: 3.75rem 0; margin-top: 2.5rem; margin-bottom: 2.5rem; font-size: 20px; font-size: 1.25rem; text-align: left; }
.wp-block-pullquote blockquote { margin: 0; }
.wp-block-pullquote p { font-size: inherit; }
.wp-block-pullquote p:last-of-type { margin-bottom: 0; }
.wp-block-pullquote.alignfull blockquote { margin: 0 1.5rem; }
.wp-block-pullquote cite,
.wp-block-pullquote .wp-block-pullquote__citation { margin-top: 1.5rem; font-size: 16px; font-size: 1rem; font-family:var(--font-secondary); color: #707070; text-transform: uppercase; font-style: normal; font-weight: 500; display: inline-block; }
.wp-block-pullquote.is-style-solid-color { padding: 3.75rem; border: 0; }
.wp-block-pullquote.is-style-solid-color blockquote { max-width: 100%; }
.wp-block-pullquote.is-style-solid-color blockquote p { font-size: inherit; }
.wp-block-pullquote.is-style-solid-color blockquote cite,
.wp-block-pullquote.is-style-solid-color blockquote .wp-block-pullquote__citation { text-transform: uppercase; color: inherit; }

p.has-background { padding:2rem 1.5rem }
@media (min-width:768px) {
  p.has-background { padding:3.75rem }
}


.wp-block-separator { background: #f3f9fd; color: #f3f9fd; height: 2px; }
.wp-block-separator.is-style-dots { height: auto; background: transparent; border-bottom: 8px dotted currentColor; }
.wp-block-separator.is-style-dots:not(.has-background) { border-bottom: 8px dotted #f1f4f7; }
.wp-block-separator.is-style-dots:before { display: none; }
.wp-block-separator:not(.is-style-dots):not(.is-style-wide) { max-width: 300px; }

.wp-block-search .wp-block-search__input { border:var(--border) }

ol.wp-block-latest-comments { padding-left:0 }

.font-primary{ font-family: var(--font-primary);}