@charset "UTF-8";
/*!
Theme Name: From Scratch
Author: Thomas Villain
Author URI: https://anybodesign.com/
Theme URI: https://github.com/anybodesign/from-scratch
Update URI: https://github.com/anybodesign/from-scratch
Description: A WordPress Starter Theme
Version: 6.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: from-scratch
Tags: one-column, two-columns, right-sidebar, custom-menu, editor-style, featured-images, post-formats, sticky-post, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/
/* ------------------------------------------------------------
//
//  Reset (E. Meyers) + Normalize (Nicolas Gallagher)  + Custom
// 
// ------------------------------------------------------------ */
body {
  margin: 0;
}

html, body,
div, span, object, iframe,
h1, h2, h3, p.cmplz-subtitle, h4, .widget-title, h5, h6,
p, blockquote, pre, a, abbr, address, em, img, ins, kbd, q, s, samp,
small, strong, sub, sup, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, embed,
figure, figcaption, footer, header,
hgroup, nav, section, audio, video {
  vertical-align: baseline;
  box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  vertical-align: baseline;
  display: inline-block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

:root {
  --font_stack: Helvetica, Arial, sans-serif;
  --font_title: "Title", var(--font_stack);
  --font_regular: "Regular", var(--font_stack);
  --font_italic: "Italic", var(--font_stack);
  --font_bold: "Bold", var(--font_stack);
  --font_bolditalic: "BoldItalic", var(--font_stack);
  --font_mono: "Andale Mono", "DejaVu Sans Mono", Courier, monospace;
}

@font-face {
  font-family: "Regular";
  src: url("fonts/barlow-medium-webfont.woff2") format("woff2"), url("fonts/barlow-medium-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Italic";
  src: url("fonts/barlow-mediumitalic-webfont.woff2") format("woff2"), url("fonts/barlow-mediumitalic-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bold";
  src: url("fonts/barlow-bold-webfont.woff2") format("woff2"), url("fonts/barlow-bold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BoldItalic";
  src: url("fonts/barlow-bolditalic-webfont.woff2") format("woff2"), url("fonts/barlow-bolditalic-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Title";
  src: url("fonts/barlowsemicondensed-bold-webfont.woff2") format("woff2"), url("fonts/barlowsemicondensed-bold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Regular-Bebas";
  src: url("fonts/bitter-regular.woff2") format("woff2"), url("fonts/bitter-regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Italic-Bebas";
  src: url("fonts/bitter-italic.woff2") format("woff2"), url("fonts/bitter-italic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bold-Bebas";
  src: url("fonts/bitter-bold.woff2") format("woff2"), url("fonts/bitter-bold.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BoldItalic-Bebas";
  src: url("fonts/bitter-bolditalic.woff2") format("woff2"), url("fonts/bitter-bolditalic.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Title-Bebas";
  src: url("fonts/Bebas.woff2") format("woff2"), url("fonts/Bebas.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Regular-Playfair";
  src: url("fonts/atkinson-hyperlegible-regular.woff2") format("woff2"), url("fonts/atkinson-hyperlegible-regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Italic-Playfair";
  src: url("fonts/atkinson-hyperlegible-italic.woff2") format("woff2"), url("fonts/atkinson-hyperlegible-italic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bold-Playfair";
  src: url("fonts/atkinson-hyperlegible-bold.woff2") format("woff2"), url("fonts/atkinson-hyperlegible-bold.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BoldItalic-Playfair";
  src: url("fonts/atkinson-hyperlegible-bolditalic.woff2") format("woff2"), url("fonts/atkinson-hyperlegible-bolditalic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Title-Playfair";
  src: url("fonts/playfairdisplay-regular.woff2") format("woff2"), url("fonts/playfairdisplay-regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Regular-Luciole";
  src: url("fonts/Luciole.woff2") format("woff2"), url("fonts/Luciole.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Italic-Luciole";
  src: url("fonts/Luciole_Italic.woff2") format("woff2"), url("fonts/Luciole_Italic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bold-Luciole";
  src: url("fonts/Luciole_Bold.woff2") format("woff2"), url("fonts/Luciole_Bold.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BoldItalic-Luciole";
  src: url("fonts/Luciole_Bold_Italic.woff2") format("woff2"), url("fonts/Luciole_Bold_Italic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Title-Luciole";
  src: url("fonts/Luciole_Bold.woff2") format("woff2"), url("fonts/Luciole_Bold.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Regular-Miriam";
  src: url("fonts/Asap-Regular.woff2") format("woff2"), url("fonts/Asap-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Italic-Miriam";
  src: url("fonts/Asap-Italic.woff2") format("woff2"), url("fonts/Asap-Italic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bold-Miriam";
  src: url("fonts/Asap-Medium.woff2") format("woff2"), url("fonts/Asap-Medium.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BoldItalic-Miriam";
  src: url("fonts/Asap-MediumItalic.woff2") format("woff2"), url("fonts/Asap-MediumItalic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Title-Miriam";
  src: url("fonts/Miriam-Libre-Bold.woff2") format("woff2"), url("fonts/Miriam-Libre-Bold.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 2px var(--text_color) dotted;
}
@supports not selector(:focus-visible) {
  a:focus, button:focus, summary:focus {
    outline: 2px var(--text_color) dotted;
  }
}

h1, h2, h3, p.cmplz-subtitle, h4, .widget-title, h5, h6,
.h1-like, .h2-like, .h3-like, .h4-like, .h5-like, .h6-like {
  color: var(--primary_color);
  font-family: var(--font_title);
  font-weight: normal;
  line-height: 1.2;
  margin: 1.25em 0;
}
h1:first-child, h2:first-child, h3:first-child, p.cmplz-subtitle:first-child, h4:first-child, .widget-title:first-child, h5:first-child, h6:first-child,
.h1-like:first-child, .h2-like:first-child, .h3-like:first-child, .h4-like:first-child, .h5-like:first-child, .h6-like:first-child {
  margin-top: 0;
}
h1 b, h1 strong, h2 b, h2 strong, h3 b, p.cmplz-subtitle b, h3 strong, p.cmplz-subtitle strong, h4 b, .widget-title b, h4 strong, .widget-title strong, h5 b, h5 strong, h6 b, h6 strong,
.h1-like b,
.h1-like strong, .h2-like b, .h2-like strong, .h3-like b, .h3-like strong, .h4-like b, .h4-like strong, .h5-like b, .h5-like strong, .h6-like b, .h6-like strong {
  font-weight: normal;
}
h1 i, h1 em, h2 i, h2 em, h3 i, p.cmplz-subtitle i, h3 em, p.cmplz-subtitle em, h4 i, .widget-title i, h4 em, .widget-title em, h5 i, h5 em, h6 i, h6 em,
.h1-like i,
.h1-like em, .h2-like i, .h2-like em, .h3-like i, .h3-like em, .h4-like i, .h4-like em, .h5-like i, .h5-like em, .h6-like i, .h6-like em {
  font-style: normal;
}
.white-text h1, .white-text h2, .white-text h3, .white-text p.cmplz-subtitle, .white-text h4, .white-text .widget-title, .white-text h5, .white-text h6,
.white-text .h1-like, .white-text .h2-like, .white-text .h3-like, .white-text .h4-like, .white-text .h5-like, .white-text .h6-like {
  color: #fff;
}

h1,
.h1-like {
  font-size: 3rem;
}
@media only screen and (min-width: 60em) {
  h1,
  .h1-like {
    font-size: 3.6rem;
  }
}

h2,
.h2-like {
  font-size: 2.4rem;
}
@media only screen and (min-width: 60em) {
  h2,
  .h2-like {
    font-size: 3.2rem;
  }
}

h3, p.cmplz-subtitle,
.h3-like {
  font-size: 2.2rem;
}
@media only screen and (min-width: 60em) {
  h3, p.cmplz-subtitle,
  .h3-like {
    font-size: 2.8rem;
  }
}

h4, .widget-title,
.h4-like {
  font-size: 2rem;
}
@media only screen and (min-width: 60em) {
  h4, .widget-title,
  .h4-like {
    font-size: 2.2rem;
  }
}

h5,
.h5-like {
  font-size: 1.8rem;
}
@media only screen and (min-width: 60em) {
  h5,
  .h5-like {
    font-size: 2rem;
  }
}

h6,
.h6-like {
  font-size: 1.6rem;
}
@media only screen and (min-width: 60em) {
  h6,
  .h6-like {
    font-size: 1.8rem;
  }
}

p {
  margin: 1.5em 0;
}
p:first-child {
  margin-top: 0;
}

b, strong {
  font-family: var(--font_bold);
  font-weight: normal;
}

i, em {
  font-family: var(--font_italic);
  font-style: normal;
}

em strong, strong em,
i strong, strong i,
em b, b em,
i b, b i {
  font-family: var(--font_bolditalic);
  font-weight: normal;
  font-style: normal;
}

li p,
li ul {
  margin-top: 0;
  margin-bottom: 0;
}

::selection {
  background-color: var(--accent_color);
}
.has-inline-color.has-accent-color ::selection, .has-text-color.has-accent-color ::selection, .has-accent-background-color ::selection {
  background-color: var(--text_color);
  color: #fff;
}

p.text-intro, p.has-large-font-size {
  font-size: 2rem;
}
@media only screen and (min-width: 60em) {
  p.text-intro, p.has-large-font-size {
    font-size: 2.2rem;
  }
}

p.text-mentions, p.has-small-font-size {
  font-size: 1.4rem;
}
@media only screen and (min-width: 60em) {
  p.text-mentions, p.has-small-font-size {
    font-size: 1.3rem;
  }
}

.has-text-background-color p, .has-text-background-color li, .has-text-background-color span, .has-text-background-color small, .has-text-background-color time, .has-text-background-color div,
.has-text-background-color h1, .has-text-background-color h2, .has-text-background-color h3, .has-text-background-color h4, .has-text-background-color .widget-title, .has-text-background-color h5, .has-text-background-color h6,
.has-text-background-color label, .has-text-background-color legend, .has-text-background-color address, .has-text-background-color figcaption,
.white-text p,
.white-text li,
.white-text span,
.white-text small,
.white-text time,
.white-text div,
.white-text h1,
.white-text h2,
.white-text h3,
.white-text h4,
.white-text .widget-title,
.white-text h5,
.white-text h6,
.white-text label,
.white-text legend,
.white-text address,
.white-text figcaption {
  color: #fff;
}
.has-text-background-color ::selection,
.white-text ::selection {
  color: var(--text_color);
}

a {
  color: inherit;
  background-color: transparent;
}

a:hover {
  text-decoration: none;
}

img, td,
blockquote, code, pre,
textarea, input, video {
  max-width: 100%;
}

ul, ol {
  padding-left: 2rem;
}
.page-content > ul, .page-content > ol {
  padding-left: 3rem;
}

ul {
  list-style-type: disc;
}

ol {
  list-style-type: decimal;
}

nav ul,
nav ol {
  padding: 0;
  margin: 0;
  list-style-type: none;
}

li ul,
li ol {
  margin-top: 0;
  margin-bottom: 0;
}

img {
  height: auto;
  border: 0;
  border-style: none;
}

figure {
  position: relative;
  margin: 0 0 1rem 0;
}
figure img {
  display: block;
}
figure.noborder img,
figure img.noborder {
  border: 0;
}
figure a[href*="youtube.com"] {
  display: block;
  position: relative;
}
figure a[href*="youtube.com"]::before, figure a[href*="youtube.com"]::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 10;
}
figure a[href*="youtube.com"]::before {
  width: 8rem;
  height: 8rem;
  border-radius: 8rem;
  background-color: rgba(51, 51, 51, 0.9);
  transition: 0.4s ease-in-out;
}
figure a[href*="youtube.com"]::after {
  width: 0;
  height: 0;
  border-color: transparent;
  border-left-color: #fff;
  border-width: 1.2rem;
  border-style: solid;
  left: calc(50% + 0.6rem);
  transform: scaleX(1.4) translateX(-15%) translateY(-40%);
}
figure a[href*="youtube.com"]:focus::before, figure a[href*="youtube.com"]:hover::before {
  transform: translateX(-50%) translateY(-50%) scale(1.2);
  background-color: var(--primary_color);
}
figure a[href*="youtube.com"] img {
  transition: opacity 0.2s ease-in-out;
}
figure a[href*="youtube.com"]:focus img, figure a[href*="youtube.com"]:hover img {
  opacity: 0.7;
}
figure a[href*="youtube.com"]:focus {
  outline: none;
}

figcaption {
  font-size: 1.3rem;
  line-height: 1;
  margin: 1rem 0;
}

q,
blockquote,
blockquote p {
  font-family: var(--font_italic);
  font-style: normal;
  font-size: 2.4rem;
}

blockquote p {
  margin-bottom: 0;
}

cite {
  display: block;
  font-family: var(--font_italic);
  font-style: normal;
  margin-top: 1rem;
  font-size: 85%;
}

iframe {
  width: 100%;
}

small {
  font-size: 75%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

code, pre, samp, kbd {
  white-space: pre-line;
  white-space: pre-wrap;
  font-family: var(--font_mono);
  font-size: 1.6rem;
}

kbd {
  padding: 0 2px;
  border: 1px solid var(--text_color);
  border-radius: 2px;
}

code, pre {
  background-color: #eee;
  color: var(--text_color);
}

code {
  padding: 0.5em;
}
pre code {
  background-color: transparent;
}

pre {
  border: var(--text_color) 1px dashed;
  white-space: pre-line;
}
.page-content > pre {
  padding: 1rem;
  width: calc(100% - 1rem * 2);
}

mark {
  padding: 1rem;
  background: rgba(255, 255, 0, 0.9);
}

.alignleft,
.alignright {
  display: inline;
}

.alignleft {
  float: left;
  margin-right: 2rem;
}

.alignright {
  float: right;
  margin-left: 2rem;
}

.aligncenter {
  display: block;
  clear: both;
  margin: 0 auto;
}

.action-btn, .woocommerce-page #wrapper .button,
.woocommerce-page #wrapper #respond #submit,
.woocommerce #wrapper .button,
.woocommerce #wrapper #respond #submit, input[type=submit].wpcf7-submit, input[type=submit].gform_button, input[type=submit],
.wp-block-button__link,
.wp-block-file__button,
.gform_next_button {
  display: inline-block;
  padding: 1rem 2rem;
  font-size: 1.4rem;
  font-family: var(--font_bold);
  text-transform: uppercase;
  text-decoration: none;
  background-color: var(--accent_color);
  color: var(--btn_text);
  transition: background 0.2s linear;
  border-radius: 0;
}
.action-btn:focus, .woocommerce-page #wrapper .button:focus,
.woocommerce-page #wrapper #respond #submit:focus,
.woocommerce #wrapper .button:focus,
.woocommerce #wrapper #respond #submit:focus, input[type=submit]:focus, .action-btn:hover, .woocommerce-page #wrapper .button:hover,
.woocommerce-page #wrapper #respond #submit:hover,
.woocommerce #wrapper .button:hover,
.woocommerce #wrapper #respond #submit:hover, input[type=submit]:hover,
.wp-block-button__link:focus,
.wp-block-button__link:hover,
.wp-block-file__button:focus,
.wp-block-file__button:hover,
.gform_next_button:focus,
.gform_next_button:hover {
  background-color: var(--text_color);
  color: tomato;
  opacity: 1;
}
.action-btn:focus, .woocommerce-page #wrapper .button:focus,
.woocommerce-page #wrapper #respond #submit:focus,
.woocommerce #wrapper .button:focus,
.woocommerce #wrapper #respond #submit:focus, input[type=submit]:focus,
.wp-block-button__link:focus,
.wp-block-file__button:focus,
.gform_next_button:focus {
  outline: none;
}
.action-btn.has-accent-background-color:hover, .woocommerce-page #wrapper .has-accent-background-color.button:hover,
.woocommerce-page #wrapper #respond .has-accent-background-color#submit:hover,
.woocommerce #wrapper .has-accent-background-color.button:hover,
.woocommerce #wrapper #respond .has-accent-background-color#submit:hover, input.has-accent-background-color[type=submit]:hover, .action-btn.has-accent-background-color:focus, .woocommerce-page #wrapper .has-accent-background-color.button:focus,
.woocommerce-page #wrapper #respond .has-accent-background-color#submit:focus,
.woocommerce #wrapper .has-accent-background-color.button:focus,
.woocommerce #wrapper #respond .has-accent-background-color#submit:focus, input.has-accent-background-color[type=submit]:focus, .action-btn.has-white-background-color:hover, .woocommerce-page #wrapper .has-white-background-color.button:hover,
.woocommerce-page #wrapper #respond .has-white-background-color#submit:hover,
.woocommerce #wrapper .has-white-background-color.button:hover,
.woocommerce #wrapper #respond .has-white-background-color#submit:hover, input.has-white-background-color[type=submit]:hover, .action-btn.has-white-background-color:focus, .woocommerce-page #wrapper .has-white-background-color.button:focus,
.woocommerce-page #wrapper #respond .has-white-background-color#submit:focus,
.woocommerce #wrapper .has-white-background-color.button:focus,
.woocommerce #wrapper #respond .has-white-background-color#submit:focus, input.has-white-background-color[type=submit]:focus, .action-btn.has-bg-background-color:hover, .woocommerce-page #wrapper .has-bg-background-color.button:hover,
.woocommerce-page #wrapper #respond .has-bg-background-color#submit:hover,
.woocommerce #wrapper .has-bg-background-color.button:hover,
.woocommerce #wrapper #respond .has-bg-background-color#submit:hover, input.has-bg-background-color[type=submit]:hover, .action-btn.has-bg-background-color:focus, .woocommerce-page #wrapper .has-bg-background-color.button:focus,
.woocommerce-page #wrapper #respond .has-bg-background-color#submit:focus,
.woocommerce #wrapper .has-bg-background-color.button:focus,
.woocommerce #wrapper #respond .has-bg-background-color#submit:focus, input.has-bg-background-color[type=submit]:focus,
.wp-block-button__link.has-accent-background-color:hover,
.wp-block-button__link.has-accent-background-color:focus,
.wp-block-button__link.has-white-background-color:hover,
.wp-block-button__link.has-white-background-color:focus,
.wp-block-button__link.has-bg-background-color:hover,
.wp-block-button__link.has-bg-background-color:focus,
.wp-block-file__button.has-accent-background-color:hover,
.wp-block-file__button.has-accent-background-color:focus,
.wp-block-file__button.has-white-background-color:hover,
.wp-block-file__button.has-white-background-color:focus,
.wp-block-file__button.has-bg-background-color:hover,
.wp-block-file__button.has-bg-background-color:focus,
.gform_next_button.has-accent-background-color:hover,
.gform_next_button.has-accent-background-color:focus,
.gform_next_button.has-white-background-color:hover,
.gform_next_button.has-white-background-color:focus,
.gform_next_button.has-bg-background-color:hover,
.gform_next_button.has-bg-background-color:focus {
  color: #fff;
}

fieldset {
  margin: 2rem 0;
  border: 0;
  padding: 0;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=date],
input[type=password],
input[type=file],
input[type=number],
input[type=search],
textarea,
select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 2rem 0;
  padding: 1rem;
  color: var(--text_color);
  border: var(--text_color) 1px solid;
  background-color: #fff;
  font-size: 1.6rem;
  font-family: var(--font_regular);
  border-radius: 0;
  appearance: none;
}
input[type=text]:focus-visible,
input[type=email]:focus-visible,
input[type=tel]:focus-visible,
input[type=url]:focus-visible,
input[type=date]:focus-visible,
input[type=password]:focus-visible,
input[type=file]:focus-visible,
input[type=number]:focus-visible,
input[type=search]:focus-visible,
textarea:focus-visible,
select:focus-visible {
  background-color: var(--text_color);
  color: #fff;
  outline: none;
}
input[type=text]:focus-visible option,
input[type=email]:focus-visible option,
input[type=tel]:focus-visible option,
input[type=url]:focus-visible option,
input[type=date]:focus-visible option,
input[type=password]:focus-visible option,
input[type=file]:focus-visible option,
input[type=number]:focus-visible option,
input[type=search]:focus-visible option,
textarea:focus-visible option,
select:focus-visible option {
  color: var(--text_color);
}
@supports not selector(:focus-visible) {
  input[type=text]:focus,
  input[type=email]:focus,
  input[type=tel]:focus,
  input[type=url]:focus,
  input[type=date]:focus,
  input[type=password]:focus,
  input[type=file]:focus,
  input[type=number]:focus,
  input[type=search]:focus,
  textarea:focus,
  select:focus {
    background-color: var(--text_color);
    color: #fff;
    outline: none;
  }
  input[type=text]:focus option,
  input[type=email]:focus option,
  input[type=tel]:focus option,
  input[type=url]:focus option,
  input[type=date]:focus option,
  input[type=password]:focus option,
  input[type=file]:focus option,
  input[type=number]:focus option,
  input[type=search]:focus option,
  textarea:focus option,
  select:focus option {
    color: var(--text_color);
  }
}

input[type=tel] {
  color: var(--wc-form-color-text, #000);
}
input[type=tel]:focus-visible {
  color: #000;
}
@supports not selector(:focus-visible) {
  input[type=tel]:focus {
    color: #000;
  }
}

input[type=search] {
  border-radius: 0;
  padding-left: 1rem;
}

textarea {
  min-height: 18rem;
  resize: vertical;
}

input[type=checkbox]:focus-visible + label,
input[type=radio]:focus-visible + label {
  border-bottom: var(--text_color) 2px dashed;
}

@supports not selector(:focus-visible) {
  input[type=checkbox]:focus + label,
  input[type=radio]:focus + label {
    border-bottom: var(--text_color) 2px dashed;
  }
}
input[type=checkbox],
input[type=radio],
input[type=checkbox] + label,
input[type=radio] + label {
  width: auto;
  margin: 0 0 0.5rem 0;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  right: 0.5em;
  font-size: 2rem;
  cursor: pointer;
}

label, legend {
  display: block;
  font-weight: normal;
  margin: 0;
}

button,
input[type=submit],
input[type=button] {
  border: 0;
  border-radius: 0;
  cursor: pointer;
  appearance: none;
}

::placeholder {
  color: #777;
  font-family: var(--font_italic);
  font-size: 1.4rem;
}

:focus::placeholder,
*:focus::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.gform_fields,
.gfield_checkbox {
  padding: 0;
  list-style: none;
}

.gfield {
  margin-bottom: 1em;
}

.gfield_visibility_ {
  display: none;
  position: absolute !important;
  left: -9000px;
}

.ginput_container_checkbox {
  padding: 2rem 0;
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) {
  padding: 1rem !important;
  margin-bottom: 0 !important;
}

.ginput_container_select {
  margin-bottom: 0;
}
.ginput_container_select select {
  line-height: normal !important;
  padding: 1rem !important;
}

.gform_validation_container, .gform_wrapper .gform_validation_container, body .gform_wrapper .gform_body ul.gform_fields li.gfield.gform_validation_container, body .gform_wrapper li.gform_validation_container, body .gform_wrapper ul.gform_fields li.gfield.gform_validation_container {
  display: none !important;
  position: absolute !important;
  left: -9000px;
}

.wpcf7-response-output {
  border: 0 !important;
  background-color: #B3003C;
  color: #fff;
  margin: 1rem 0 0 0 !important;
  padding: 1rem !important;
  font-family: var(--font_regular);
}
.sent .wpcf7-response-output {
  background-color: var(--accent_color);
  color: var(--text_color);
}
.spam .wpcf7-response-output {
  background-color: var(--primary_color);
  color: #fff;
}

.wpcf7-not-valid {
  border: #B3003C 2px solid !important;
}

.wpcf7-not-valid-tip {
  color: #B3003C;
  margin-top: -2rem;
  padding-top: 0.5rem;
  border-top: #B3003C 4px solid;
  font-family: var(--font_bold);
}

@media only screen and (min-width: 45em) {
  .formfield-half {
    display: flex;
  }
  .formfield-half [class*=formfield-] {
    flex: 1 0 0;
  }
}

.formfield-text,
.formfield-textarea,
.formfield-select,
.formfield-file,
.formfield-checkbox,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox,
.comment-form-cookies-consent,
.gfield_checkbox li,
.formfield-radio,
.gfield_radio li {
  position: relative;
  margin: 1rem 0;
}
@media only screen and (min-width: 45em) {
  .formfield-half .formfield-text:first-child,
  .formfield-half .formfield-textarea:first-child,
  .formfield-half .formfield-select:first-child,
  .formfield-half .formfield-file:first-child,
  .formfield-half .formfield-checkbox:first-child,
  .formfield-half .woocommerce-page #wrapper .woocommerce-form__label-for-checkbox:first-child,
  .woocommerce-page #wrapper .formfield-half .woocommerce-form__label-for-checkbox:first-child,
  .formfield-half .woocommerce #wrapper .woocommerce-form__label-for-checkbox:first-child,
  .woocommerce #wrapper .formfield-half .woocommerce-form__label-for-checkbox:first-child,
  .formfield-half .comment-form-cookies-consent:first-child,
  .formfield-half .gfield_checkbox li:first-child,
  .gfield_checkbox .formfield-half li:first-child,
  .formfield-half .formfield-radio:first-child,
  .formfield-half .gfield_radio li:first-child,
  .gfield_radio .formfield-half li:first-child {
    margin-right: 2rem;
  }
}

.formfield-radio input[type=radio], .gfield_radio li input[type=radio],
.formfield-checkbox input[type=checkbox],
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox],
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox],
.comment-form-cookies-consent input[type=checkbox],
.gfield_checkbox li input[type=checkbox] {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.formfield-radio input[type=radio] + label, .gfield_radio li input[type=radio] + label, .formfield-radio input[type=radio] + span, .gfield_radio li input[type=radio] + span,
.formfield-checkbox input[type=checkbox] + label,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + label,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + label,
.comment-form-cookies-consent input[type=checkbox] + label,
.gfield_checkbox li input[type=checkbox] + label,
.formfield-checkbox input[type=checkbox] + span,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + span,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + span,
.comment-form-cookies-consent input[type=checkbox] + span,
.gfield_checkbox li input[type=checkbox] + span {
  padding: 0 0 0 2.6rem;
}
.formfield-radio input[type=radio] + label::before, .gfield_radio li input[type=radio] + label::before, .formfield-radio input[type=radio] + span::before, .gfield_radio li input[type=radio] + span::before,
.formfield-checkbox input[type=checkbox] + label::before,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + label::before,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + label::before,
.comment-form-cookies-consent input[type=checkbox] + label::before,
.gfield_checkbox li input[type=checkbox] + label::before,
.formfield-checkbox input[type=checkbox] + span::before,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + span::before,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + span::before,
.comment-form-cookies-consent input[type=checkbox] + span::before,
.gfield_checkbox li input[type=checkbox] + span::before {
  content: "";
  vertical-align: middle;
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  top: 0.3rem;
  left: 0;
  border: var(--text_color) 1px solid;
  background-color: #fff;
}
.formfield-radio input[type=radio] + label::after, .gfield_radio li input[type=radio] + label::after, .formfield-radio input[type=radio] + span::after, .gfield_radio li input[type=radio] + span::after,
.formfield-checkbox input[type=checkbox] + label::after,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + label::after,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + label::after,
.comment-form-cookies-consent input[type=checkbox] + label::after,
.gfield_checkbox li input[type=checkbox] + label::after,
.formfield-checkbox input[type=checkbox] + span::after,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + span::after,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + span::after,
.comment-form-cookies-consent input[type=checkbox] + span::after,
.gfield_checkbox li input[type=checkbox] + span::after {
  content: "";
  vertical-align: middle;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}

.formfield-radio input[type=radio] + label::before, .gfield_radio li input[type=radio] + label::before,
.formfield-radio input[type=radio] + span::before,
.gfield_radio li input[type=radio] + span::before {
  border-radius: 100%;
}

.formfield-radio input[type=radio] + label::after, .gfield_radio li input[type=radio] + label::after,
.formfield-radio input[type=radio] + span::after,
.gfield_radio li input[type=radio] + span::after {
  width: 0.6rem;
  height: 0.6rem;
  background-color: var(--primary_color);
  top: 0.9rem;
  left: 0.6rem;
  border-radius: 100%;
  opacity: 0;
  transition: opacity 0.2s linear;
}

.formfield-radio input[type=radio]:checked + label::after, .gfield_radio li input[type=radio]:checked + label::after,
.formfield-radio input[type=radio]:checked + span::after,
.gfield_radio li input[type=radio]:checked + span::after {
  opacity: 1;
}

.formfield-checkbox input[type=checkbox] + label::after, .woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + label::after,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + label::after, .comment-form-cookies-consent input[type=checkbox] + label::after, .gfield_checkbox li input[type=checkbox] + label::after,
.formfield-checkbox input[type=checkbox] + span::after,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + span::after,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox] + span::after,
.comment-form-cookies-consent input[type=checkbox] + span::after,
.gfield_checkbox li input[type=checkbox] + span::after {
  top: 0.5rem;
  left: 0.35rem;
  content: "";
  width: 1rem;
  height: 0.5rem;
  border-left: 4px solid var(--primary_color);
  border-bottom: 4px solid var(--primary_color);
  opacity: 0;
  transform: rotate(-45deg);
  transition: opacity 0.2s linear;
}

.formfield-checkbox input[type=checkbox]:checked + label::after, .woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox]:checked + label::after,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox]:checked + label::after, .comment-form-cookies-consent input[type=checkbox]:checked + label::after, .gfield_checkbox li input[type=checkbox]:checked + label::after,
.formfield-checkbox input[type=checkbox]:checked + span::after,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox]:checked + span::after,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox]:checked + span::after,
.comment-form-cookies-consent input[type=checkbox]:checked + span::after,
.gfield_checkbox li input[type=checkbox]:checked + span::after {
  opacity: 1;
}

.formfield-select--container, .woocommerce-page #wrapper .woocommerce-ordering,
.woocommerce #wrapper .woocommerce-ordering, .widget_categories form, .formfield-select .wpcf7-form-control-wrap, .ginput_container_select {
  position: relative;
  overflow: hidden;
  background-color: #fff;
  border: var(--text_color) 1px solid;
  margin: 0 0 2rem 0;
  padding: 0;
}
.formfield-select--container::after, .woocommerce-page #wrapper .woocommerce-ordering::after,
.woocommerce #wrapper .woocommerce-ordering::after, .widget_categories form::after, .formfield-select .wpcf7-form-control-wrap::after, .ginput_container_select::after {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -0.3rem;
  right: 0.5em;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-top-color: var(--primary_color);
  border-width: 0.6rem;
  border-style: solid;
  pointer-events: none;
}
.formfield-select--container select, .woocommerce-page #wrapper .woocommerce-ordering select,
.woocommerce #wrapper .woocommerce-ordering select, .widget_categories form select, .formfield-select .wpcf7-form-control-wrap select, .ginput_container_select select {
  padding-right: 6rem;
  width: 110%;
  height: auto;
  border: 0;
  margin: 0;
  border-radius: 0;
  appearance: none;
  overflow: hidden;
  text-overflow: ellipsis;
}

.formfield-select--container select::-ms-expand, .woocommerce-page #wrapper .woocommerce-ordering select::-ms-expand,
.woocommerce #wrapper .woocommerce-ordering select::-ms-expand, .widget_categories form select::-ms-expand, .formfield-select .wpcf7-form-control-wrap select::-ms-expand, .ginput_container_select select::-ms-expand {
  display: none;
}

.formfield-file--container {
  position: relative;
  margin: 0 0 2rem 0;
}
.formfield-file--container::after {
  display: inline-block;
  content: "📎";
  font-size: 2rem;
  color: var(--text_color);
  position: absolute;
  top: 0.5em;
  right: 0.5em;
  z-index: 100;
}

.wpcf7-list-item label {
  position: relative;
}

span.wpcf7-list-item {
  margin: 0 1rem 0 0;
}

.formfield-radio input[type=radio]:focus + span, .gfield_radio li input[type=radio]:focus + span,
.formfield-checkbox input[type=checkbox]:focus + span,
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox]:focus + span,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox input[type=checkbox]:focus + span,
.comment-form-cookies-consent input[type=checkbox]:focus + span,
.gfield_checkbox li input[type=checkbox]:focus + span {
  font-family: var(--font_bold);
}
.wpcf7-acceptance label {
  font-family: var(--font_regular);
  font-size: 1.4rem;
  border: 0;
}

.formfield-select .wpcf7-form-control-wrap {
  display: block;
}

/* ------------------------- */
/* = Basics
/* ------------------------- */
html {
  font-size: 62.5%;
}

body {
  font-family: var(--font_regular);
  font-size: 1.6rem;
  line-height: 1.5;
  color: var(--text_color);
  text-size-adjust: none;
  background-color: var(--page_color);
}
@media only screen and (min-width: 60em) {
  body {
    font-size: 1.8rem;
  }
}

html,
body,
#wrapper {
  width: 100%;
  height: 100%;
}

.row {
  display: flex;
  flex-wrap: wrap;
  text-rendering: optimizespeed;
}
.row.align-start {
  align-items: flex-start;
}
.row.align-center {
  align-items: center;
}
.row.align-end {
  align-items: flex-end;
}
.row.align-stretch {
  align-items: stretch;
}
.row.align-baseline {
  align-items: baseline;
}
.row.justify-start {
  justify-content: flex-start;
}
.row.justify-center {
  justify-content: center;
}
.row.justify-end {
  justify-content: flex-end;
}
.row.justify-between {
  justify-content: space-between;
}
.row.justify-around {
  justify-content: space-around;
}
.row.nested {
  margin-left: -1rem;
  margin-right: -1rem;
  margin-top: -1rem;
  margin-bottom: 1rem;
}

.inner {
  position: relative;
  margin: 0 auto;
  max-width: 96rem;
}
.row .inner {
  width: 100%;
}

/* ------------------------- */
/* = Header
/* ------------------------- */
#site_head {
  position: relative;
  background-color: var(--header_color);
}
#site_head > .row {
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 2rem;
}
@media only screen and (min-width: 60em) {
  #site_head > .row {
    flex-direction: row;
  }
  .layout-v2 #site_head > .row {
    flex-direction: column;
    justify-content: flex-start;
  }
}

.site-toolbar {
  position: relative;
  width: 100%;
  padding: 1rem;
}
.has-nav-group .site-toolbar {
  padding: 1rem 2rem;
}
@media only screen and (min-width: 60em) {
  .has-nav-group .site-toolbar {
    padding: 1rem;
  }
}
.site-toolbar.has-search {
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-end;
}
@media only screen and (min-width: 30em) {
  .site-toolbar.has-search {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}
.has-nav-group .site-toolbar.has-search {
  flex-direction: column;
  align-items: flex-start;
}
@media only screen and (min-width: 30em) {
  .has-nav-group .site-toolbar.has-search {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

.toolbar-widgets {
  display: flex;
  align-items: center;
}

.site-brand {
  padding: 1rem;
}
@media only screen and (min-width: 60em) {
  .layout-v2 .site-brand {
    text-align: center;
  }
}
.has-nav-group .site-brand {
  position: relative;
  z-index: 200;
}

.site-nav {
  padding: 1rem;
}

.site-toolbar .searchform {
  position: relative;
}
.site-toolbar .searchform label {
  position: absolute;
  top: 1.25rem;
  right: 3rem;
  padding-left: 2.5rem;
  font-family: var(--font_regular);
  font-size: 1.3rem;
  transition: 0.2s ease-in-out;
  opacity: 0;
  border: 0;
  white-space: nowrap;
}
.site-toolbar .searchform:hover label {
  opacity: 1;
}
.has-nav-group .site-toolbar .searchform:hover label {
  left: 1rem;
  right: auto;
  bottom: -1rem;
  top: auto;
  padding: 0;
}
@media only screen and (min-width: 60em) {
  .has-nav-group .site-toolbar .searchform:hover label {
    top: 1.25rem;
    right: 3rem;
    left: auto;
    bottom: auto;
    padding-left: 2.5rem;
  }
}
.site-toolbar .searchform input[type=search] {
  margin: 0;
  border-color: transparent;
  background-color: transparent;
  transition: 0.3s ease-in-out;
  width: 3rem;
}
.site-toolbar .searchform input[type=search]:focus {
  border-color: var(--primary_color);
  background-color: transparent;
  color: var(--text_color);
  width: 20rem;
}
.site-toolbar .searchform input[type=search]:not(:placeholder-shown) {
  width: auto;
  border-color: var(--text_color);
}
.site-toolbar .searchform input[type=search]:focus + label, .site-toolbar .searchform input[type=search]:not(:placeholder-shown) + label {
  opacity: 0;
  visibility: none;
}
.site-toolbar .searchform input[type=search]:focus + label + #searchsubmit, .site-toolbar .searchform input[type=search]:not(:placeholder-shown) + label + #searchsubmit {
  transform: translateX(-1rem);
  pointer-events: initial;
}
.site-toolbar .searchform input[type=search]:focus + label + #searchsubmit:hover, .site-toolbar .searchform input[type=search]:not(:placeholder-shown) + label + #searchsubmit:hover {
  transform: translateX(-1rem) scale(1.2);
}
.site-toolbar .searchform input[type=search]:focus + label + #searchsubmit:focus-visible, .site-toolbar .searchform input[type=search]:not(:placeholder-shown) + label + #searchsubmit:focus-visible {
  transform: translateX(-1rem) scale(1.2);
}
@supports not selector(:focus-visible) {
  .site-toolbar .searchform input[type=search]:focus + label + #searchsubmit:focus, .site-toolbar .searchform input[type=search]:not(:placeholder-shown) + label + #searchsubmit:focus {
    transform: translateX(-1rem) scale(1.2);
  }
}
.site-toolbar .searchform ::placeholder {
  opacity: 0;
}
.site-toolbar .searchform #searchsubmit {
  display: block;
  width: 2rem;
  height: 2rem;
  padding: 0;
  background: transparent url(img/ui/search.svg) 0 0 no-repeat;
  background-size: contain;
  transition: 0.5s ease-in-out;
  pointer-events: none;
  position: absolute;
  top: 50%;
  margin-top: -1rem;
  right: 0;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}
.site-toolbar .searchform #searchsubmit:focus {
  outline: 2px var(--text_color) dotted;
}

.site-title {
  display: block;
  font-family: var(--font_title);
  text-transform: uppercase;
  font-size: 2.4rem;
  line-height: 1;
  margin: 0;
}
.site-title a,
.site-title img {
  display: block;
}
.site-title img {
  width: auto;
}
@media only screen and (min-width: 60em) {
  .layout-v2 .site-title img {
    margin: 0 auto;
  }
}
.site-title .logo.has-mobile-logo {
  display: none;
}
.site-title .logo-mobile {
  display: block;
}
@media only screen and (min-width: 60em) {
  .site-title .logo.has-mobile-logo {
    display: block;
  }
  .site-title .logo-mobile {
    display: none;
  }
}

.site-desc {
  display: block;
  margin: 0;
  max-width: 22rem;
}
@media only screen and (min-width: 45em) {
  .site-desc {
    max-width: none;
  }
}
@media only screen and (min-width: 60em) {
  .site-desc {
    max-width: 24rem;
  }
}

@media only screen and (min-width: 60em) {
  .sticky-nav #site_head {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    animation: drop_in 0.8s;
    z-index: 100;
  }
  .sticky-nav.admin-bar #site_head {
    top: 46px;
  }
}
@media only screen and (min-width: 60em) and (min-width: 48.875em) {
  .sticky-nav.admin-bar #site_head {
    top: 32px;
  }
}

.skiplinks {
  position: absolute;
  padding-top: 0;
  z-index: 100;
}
.skiplinks a {
  position: fixed;
  top: -6.5rem;
  padding: 1rem;
  background-color: var(--text_color);
  font-family: var(--font_bold);
  color: #fff;
  text-decoration: none;
  transition: top 0.2s ease-in;
}
.skiplinks a:focus {
  outline: none;
  top: -0.5rem;
}
.admin-bar .skiplinks a:focus {
  top: 46px;
}
@media only screen and (min-width: 48.875em) {
  .admin-bar .skiplinks a:focus {
    top: 32px;
  }
}

.toolbar-menu {
  display: flex;
  justify-content: flex-end;
}
.toolbar-menu > li {
  font-size: 1.4rem;
  margin-left: 1rem;
}
@media only screen and (min-width: 45em) {
  .has-search .toolbar-menu > li {
    margin-left: 0;
    margin-right: 1rem;
  }
}
.nav-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  transform: translateX(-110%);
  transition: transform 0.4s ease-in-out;
  z-index: 100;
}
.menu-opened + .nav-container {
  transform: translateX(0);
}
@media only screen and (min-width: 30em) {
  .nav-container {
    width: 80%;
  }
}
@media only screen and (min-width: 45em) {
  .nav-container {
    width: 60%;
  }
}
@media only screen and (min-width: 60em) {
  .nav-container {
    position: relative;
    left: auto;
    padding: 0;
    width: auto;
    background-color: transparent;
    transform: none;
    display: flex;
    flex-direction: column;
  }
}
.has-nav-group .nav-container {
  display: flex;
  flex-direction: column-reverse;
  padding-top: 10rem;
}
@media only screen and (min-width: 60em) {
  .has-nav-group .nav-container {
    flex-direction: column;
    padding-top: 0;
  }
}

.main-menu {
  position: relative;
  width: 100%;
  padding: 1rem;
  background-color: #fff;
}
@media only screen and (min-width: 60em) {
  .main-menu {
    display: flex;
    flex-wrap: wrap;
  }
}
.main-menu > li {
  position: relative;
  display: block;
}
@media only screen and (min-width: 60em) {
  .main-menu > li {
    margin-left: 1rem;
  }
}
@media only screen and (min-width: 75em) {
  .main-menu > li {
    margin-left: 2rem;
  }
}
.main-menu > li > a {
  position: relative;
  display: block;
  padding: 1rem;
  text-decoration: none;
}
.main-menu > li.current-menu-item > a, .main-menu > li.current_page_parent > a {
  font-family: var(--font_bold);
}
.main-menu > li.menu-item-has-children > a {
  padding-right: 2.4rem;
}
@media only screen and (min-width: 75em) {
  .main-menu > li.menu-item-has-children > a {
    padding-right: 1rem;
  }
}
@media only screen and (min-width: 75em) {
  .main-menu > li.menu-item-has-children.unfold-parent > a {
    padding-right: 1.8rem;
  }
  .main-menu > li.menu-item-has-children:hover > .sub-menu {
    left: auto;
    opacity: 1;
  }
  .main-menu > li.menu-item-has-children:hover > .sub-menu > li {
    display: block;
  }
}

.sub-menu-opened + .sub-menu {
  transform: scaleY(1);
  height: auto;
  background-color: var(--header_color);
}
.sub-menu-opened + .sub-menu > li {
  display: block;
}
.sub-menu-opened + .sub-menu > li a {
  display: block;
}
@media only screen and (min-width: 60em) {
  .sub-menu-opened + .sub-menu {
    left: auto;
    opacity: 1;
  }
  .sub-menu-opened + .sub-menu > li {
    display: block;
  }
}

.sub-menu {
  position: relative;
  height: 1px;
  transform: scaleY(0);
  transform-origin: center top;
  overflow: hidden;
  transition: 0.2s ease-in-out;
  background-color: var(--header_color);
}
@media only screen and (min-width: 60em) {
  .sub-menu {
    position: absolute;
    height: auto;
    top: auto;
    left: -999em;
    opacity: 0;
    transform: none;
    min-width: 100%;
    z-index: 100;
    transition: opacity 0.2s ease-in-out;
  }
}
.sub-menu > li {
  font-size: 1.6rem;
}
@media only screen and (min-width: 60em) {
  .sub-menu > li:first-child {
    border-top: 0;
  }
}
@media only screen and (min-width: 75em) {
  .sub-menu > li {
    display: none;
  }
}
.sub-menu > li a {
  display: block;
  padding: 1rem 0;
  padding-left: 1rem;
  text-decoration: none;
  transition: 0.2s ease-in-out;
}
@media only screen and (min-width: 60em) {
  .sub-menu > li a {
    padding: 0.5rem 1rem;
  }
}
.sub-menu-unfold {
  position: absolute;
  top: -0.25rem;
  right: 0;
  display: block;
  height: 4.4rem;
  width: 4.4rem;
  margin-top: 0;
  border: 0;
  padding: 0;
  background: transparent;
}
.sub-menu-unfold span {
  position: absolute;
  display: block;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}
@media only screen and (min-width: 60em) {
  .sub-menu-unfold {
    height: 2.2rem;
    width: 2.2rem;
    top: 1.1rem;
    right: 0;
  }
}
@media only screen and (min-width: 75em) {
  .sub-menu-unfold {
    left: -999rem;
  }
  .sub-menu-unfold:focus {
    left: auto;
    right: 0;
  }
}
.sub-menu-unfold::after, .sub-menu-unfold::before {
  content: "";
  display: block;
  position: absolute;
  top: 2.4rem;
  left: 1.5rem;
  width: 1.6rem;
  height: 0;
  border-top: var(--text_color) 2px solid;
  transition: transform 0.1s ease-in-out;
}
@media only screen and (min-width: 60em) {
  .sub-menu-unfold::after, .sub-menu-unfold::before {
    top: 1rem;
    width: 1rem;
    border-top-width: 1px;
  }
}
.sub-menu-unfold::before {
  left: 1rem;
  transform: rotate(45deg);
}
@media only screen and (min-width: 60em) {
  .sub-menu-unfold::before {
    left: 0.5rem;
  }
}
.sub-menu-unfold::after {
  left: 2rem;
  transform: rotate(-45deg);
}
@media only screen and (min-width: 60em) {
  .sub-menu-unfold::after {
    left: 1.2rem;
  }
}
.sub-menu-unfold.sub-menu-opened::after, .sub-menu-unfold.sub-menu-opened::before {
  left: 1.5rem;
  top: 2.2rem;
  transform: rotate(0);
}
@media only screen and (min-width: 60em) {
  .sub-menu-unfold.sub-menu-opened::after, .sub-menu-unfold.sub-menu-opened::before {
    top: 1rem;
    left: 0.75rem;
  }
}

#menu_toggle {
  position: relative;
}
.has-nav-group #menu_toggle {
  margin-left: 1rem;
}

.burger {
  display: block;
  height: 4.4rem;
  width: 4.4rem;
  border: 0;
  border-radius: 0;
  margin: 0;
  padding: 0;
  cursor: pointer;
  background-color: transparent;
  z-index: 200;
}
.burger .burger-title {
  position: absolute;
  font-size: 1.6rem;
  top: -1rem;
  left: 4.4rem;
  font-family: var(--font_regular);
  color: var(--text_color);
}
.burger > span, .burger > span::before, .burger > span::after {
  position: absolute;
  display: block;
  width: 3.4rem;
  height: 0;
  margin: 0;
  border-top: var(--primary_color) 2px solid;
  transition: 0.15s linear;
}
.burger > span {
  top: 2.1rem;
  left: 0;
}
.burger > span::before, .burger > span::after {
  content: "";
  left: 0;
}
.burger > span::before {
  top: -1.3rem;
  width: 2.6rem;
}
.burger > span::after {
  bottom: -1.1rem;
  width: 1.7rem;
}
.burger.menu-opened > span {
  border-color: transparent;
  width: 0;
}
.burger.menu-opened > span::before, .burger.menu-opened > span::after {
  content: "";
  top: 0;
  left: 0;
  width: 3.4rem;
  border-color: var(--secondary_color);
}
.burger.menu-opened > span::before {
  transform: rotate(-135deg);
}
.burger.menu-opened > span::after {
  transform: rotate(-45deg);
}
.burger:hover {
  background-color: transparent;
}
@media only screen and (min-width: 60em) {
  .burger {
    display: none;
  }
}

#sidebar_toggle {
  position: absolute;
  top: auto;
  right: 1rem;
  transform: translateY(-125%);
  background-color: #fff;
  z-index: 4;
}
#sidebar_toggle .burger-title {
  position: absolute;
  display: block;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}

.breadcrumbs-nav {
  position: relative;
  margin-bottom: 1rem;
}
.breadcrumbs-nav::before {
  content: "";
  display: block;
  position: absolute;
  width: 6rem;
  height: calc(100% - 0.2rem);
  top: 0;
  right: 0;
  background-image: linear-gradient(to left, #fff 0%, #fff 5%, rgba(255, 255, 255, 0) 100%);
  pointer-events: none;
  z-index: 5;
}
.breadcrumbs-nav .inner {
  padding: 1rem;
  padding-right: 7rem;
  overflow: hidden;
  overflow-x: auto;
  white-space: nowrap;
}
@media only screen and (min-width: 60em) {
  .breadcrumbs-nav .inner {
    padding-right: 1rem;
  }
}
.breadcrumbs-nav span {
  font-size: 1.4rem;
}
.breadcrumbs-nav .current-item {
  font-family: var(--font_italic);
}

.subpages-list {
  display: flex;
  flex-wrap: wrap;
}
.subpages-list > li {
  margin-right: 1.5rem;
}
.subpages-list > li a {
  text-decoration: none;
}
.subpages-list > li.current_page_item a {
  font-family: var(--font_bold);
}

.widget-container ul {
  padding: 0;
  list-style: none;
}
.widget-container ul li a {
  display: block;
  padding: 1rem 0;
}
.widget-container ul li.recentcomments {
  display: block;
  padding: 1rem 0;
}

.social-menu {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.social-menu > li {
  margin-right: 1rem;
}
.social-menu > li a {
  display: block;
  transition: 0.2s ease-in-out;
  text-decoration: none;
}
.social-menu > li a img + span {
  position: absolute;
  display: block;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}
.social-menu > li a:focus, .social-menu > li a:hover {
  transform: translateY(-0.5rem);
}

.share-box p {
  padding-bottom: 0.5rem;
  border-bottom: var(--text_color) 1px solid;
  margin-bottom: 1rem;
}

.share-items {
  list-style: none;
  padding: 0;
  display: flex;
}
.share-items > li {
  display: block;
  margin-right: 1rem;
}
.share-items > li img {
  display: block;
  transition: 0.2s ease-in-out;
}
.share-items > li a {
  text-decoration: none;
}
.share-items > li a:hover img, .share-items > li a:focus img {
  transform: translateY(-0.5rem);
}

.contrast-switch button {
  position: relative;
  display: block;
  width: 40px;
  height: 40px;
  font-family: var(--font_regular);
  color: #fff;
  text-decoration: none;
  font-size: 1.1rem;
  padding: 0;
  margin: 0;
  background-color: transparent;
}
.contrast-switch button span {
  position: absolute;
  display: block;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}
.contrast-switch button img {
  display: block;
  width: 20px;
  height: 20px;
  position: relative;
  top: 0;
  margin: 0 auto;
  transition: 0.2s ease-in-out;
}
.contrast-switch button:focus img, .contrast-switch button:hover img {
  transform: scale(1.1);
}

.toggle-remove {
  display: none !important;
}

.high-contrast .toggle-highcontrast {
  display: none;
}
.high-contrast .toggle-remove {
  display: block !important;
}

.page-wrap.has-sidebar {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 96rem;
}
@media only screen and (min-width: 60em) {
  .page-wrap.has-sidebar {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
  }
}

.page-banner,
.page-content,
.page-sidebar {
  width: 100%;
}

.page-banner {
  margin-bottom: 2rem;
}
.banner-has-bg .page-banner {
  min-height: 20rem;
  background-color: var(--bg_color);
  background-size: cover;
  background-position: center center;
}
@media only screen and (min-width: 45em) {
  .banner-has-bg .page-banner {
    min-height: 29rem;
  }
}
.page-banner .inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 2rem 1rem;
}
.page-banner .page-title {
  margin-bottom: 0;
}
.page-title .search-term {
  font-family: var(--font_bolditalic);
}

.page-content > * {
  width: 100%;
  padding: 0 1rem;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 96rem;
}
@media only screen and (min-width: 45em) {
  .page-content > p, .page-content > [class*=contact-form-7], .page-content .acf-block-text--1col, .page-content #comments {
    padding-right: 20rem;
  }
  .page-content > p.has-text-align-center {
    padding-right: 10rem;
    padding-left: 10rem;
  }
  .has-sidebar .page-content {
    padding-right: 8.3333%;
  }
}
.page-content > *.alignwide {
  max-width: 124.8rem;
}
.page-content > *.alignfull {
  margin-left: 0;
  margin-right: 0;
  max-width: none;
}
.page-content > *.fl-builder-content {
  margin-left: 0;
  margin-right: 0;
  max-width: none;
  padding: 0;
}
.page-content > [class*=wp-block-gallery], .page-content > [class*=wp-block-cover-image], .page-content > [class*=wp-block-quote] {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 96rem;
  margin-bottom: 2rem;
}
.page-content > [class*=wp-block-table], .page-content > [class*=wp-block-verse] {
  position: relative;
  margin: 2rem auto;
  max-width: calc(96rem - 1rem * 2);
}
.page-content > span {
  display: block;
  margin-bottom: 1.5em;
}
@media only screen and (min-width: 60em) {
  .has-sidebar .page-content {
    width: 75%;
  }
}

.page-sidebar {
  padding: 1rem;
  position: absolute;
  top: auto;
  left: 0;
  width: 100%;
  padding: 1rem;
  background-color: #fff;
  transform: translateX(-110%);
  transition: transform 0.4s ease-in-out;
  z-index: 3;
}
.menu-opened + .page-sidebar {
  transform: translateX(0);
}
@media only screen and (min-width: 30em) {
  .page-sidebar {
    width: 80%;
  }
}
@media only screen and (min-width: 45em) {
  .page-sidebar {
    width: 60%;
  }
}
@media only screen and (min-width: 60em) {
  .page-sidebar {
    display: block;
    position: relative;
    left: auto;
    padding: 0;
    width: auto;
    background-color: transparent;
    transform: none;
  }
  .has-sidebar .page-sidebar {
    width: 25%;
  }
}

hr[data-scroll=in] {
  animation: stretch 1s ease-in-out;
}

section[data-scroll=in],
.wpcf7-form {
  animation: slide_up 1s ease-in-out;
}

.boxed-cta[data-scroll=in] .acf-block-cta-text {
  animation: move_left 1s ease-in-out;
}
.boxed-cta[data-scroll=in] .acf-block-cta-btn {
  animation: move_right 1s ease-in-out;
}

.post-block[data-scroll=in] .post-figure, .acf-block--posts .acf-block-container [data-scroll=in].acf-block-post-item .post-figure, .acf-block--posts .acf-block-container [data-scroll=in].acf-block-post-item .acf-block-post-figure,
.post-block[data-scroll=in] .acf-block-post-figure {
  animation: fade_in 1s ease-in-out;
}
.post-block[data-scroll=in] .post-meta, .acf-block--posts .acf-block-container [data-scroll=in].acf-block-post-item .post-meta, .acf-block--posts .acf-block-container [data-scroll=in].acf-block-post-item .acf-block-post-metas,
.post-block[data-scroll=in] .acf-block-post-metas {
  animation: border_opacity 1s ease-in-out;
}

@media only screen and (min-width: 45em) {
  .acf-block--textimg[data-scroll=in] .acf-block-textimg-picture {
    animation: slide_right 1s ease-in-out;
  }
  .acf-block--textimg[data-scroll=in] .right .acf-block-textimg-picture {
    animation: slide_left 1s ease-in-out;
  }
  .acf-block--textimg[data-scroll=in] .acf-block-textimg-text {
    animation: slide_left 1s ease-in-out;
  }
  .acf-block--textimg[data-scroll=in] .right .acf-block-textimg-picture {
    animation: slide_right 1s ease-in-out;
  }
}
/* ------------------------- */
/* = Post blocks
/* ------------------------- */
.post-block, .acf-block--posts .acf-block-container .acf-block-post-item {
  position: relative;
}

/* ------------------------- */
/* = Archives
/* ------------------------- */
.the-posts {
  display: flex;
  flex-wrap: wrap;
}
.page-content > .the-posts {
  padding: 0;
}
.has-sidebar .page-content > .the-posts {
  padding-right: 8.3333%;
}
.the-posts .post-block, .the-posts .acf-block--posts .acf-block-container .acf-block-post-item, .acf-block--posts .acf-block-container .the-posts .acf-block-post-item {
  width: calc(100% - 1rem * 2);
  margin: 1rem;
}
@media only screen and (min-width: 30em) {
  .the-posts .post-block, .the-posts .acf-block--posts .acf-block-container .acf-block-post-item, .acf-block--posts .acf-block-container .the-posts .acf-block-post-item {
    width: calc(50% - 1rem * 2);
  }
}
@media only screen and (min-width: 45em) {
  .the-posts .post-block, .the-posts .acf-block--posts .acf-block-container .acf-block-post-item, .acf-block--posts .acf-block-container .the-posts .acf-block-post-item {
    width: calc(33.3333% - 1rem * 2);
  }
  .has-sidebar .the-posts .post-block, .has-sidebar .the-posts .acf-block--posts .acf-block-container .acf-block-post-item, .acf-block--posts .acf-block-container .has-sidebar .the-posts .acf-block-post-item {
    width: calc(50% - 1rem * 2);
  }
}

.widget-container {
  margin-bottom: 4rem;
}

.widget_categories li.cat-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.widget_categories li.cat-item a {
  width: 100%;
}
.widget_search form {
  position: relative;
}
.widget_search #searchsubmit {
  display: block;
  width: 3rem;
  height: 3rem;
  padding: 0;
  background: #fff url(img/ui/search.svg) center center no-repeat;
  background-size: 2rem 2rem;
  border-radius: 50%;
  transition: 0.5s ease-in-out;
  position: absolute;
  top: 50%;
  margin-top: -1.5rem;
  right: 1rem;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}
.widget_search #searchsubmit:hover {
  background-color: var(--accent_color) !important;
  transform: scale(1.2);
}
.widget_search #searchsubmit:focus-visible {
  background-color: var(--accent_color) !important;
  transform: scale(1.2);
}
@supports not selector(:focus-visible) {
  .widget_search #searchsubmit:focus {
    background-color: var(--accent_color) !important;
    transform: scale(1.2);
  }
}

/* ------------------------- */
/* = Singles
/* ------------------------- */
/* ------------------------- */
/* = Pagination
/* ------------------------- */
.trigger {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.trigger button {
  margin: 0 auto;
}

.spinner {
  text-align: center;
  padding: 2rem 0;
}
.spinner svg {
  display: inline-block;
  width: 4.4rem;
  height: 4.4rem;
}
.spinner svg circle {
  fill: var(--text_color);
}
.white-text .spinner svg circle {
  fill: #fff;
}

.no-more {
  display: none;
  text-align: center;
}

.pagination {
  padding: 2rem 0;
}

.nav-links,
.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
}
.nav-links > a, .nav-links > span,
.wp-pagenavi > a,
.wp-pagenavi > span {
  display: block;
  width: 3.4rem;
  height: 3.4rem;
  margin: 0 1rem 1rem 0;
  background-color: var(--text_color);
  color: #fff;
  border-radius: 50%;
  text-align: center;
  line-height: 3.4rem;
}
.white-text .nav-links > a, .white-text .nav-links > span,
.white-text .wp-pagenavi > a,
.white-text .wp-pagenavi > span {
  background-color: #fff;
  color: var(--text_color);
}
.nav-links a,
.wp-pagenavi a {
  text-decoration: none;
  transition: background 0.2s ease-in-out;
}
.nav-links a:hover, .nav-links a:focus,
.wp-pagenavi a:hover,
.wp-pagenavi a:focus {
  background-color: var(--primary_color);
  color: #fff;
}
.nav-links .current,
.wp-pagenavi .current {
  background-color: var(--primary_color);
}
.white-text .nav-links .current,
.white-text .wp-pagenavi .current {
  background-color: var(--primary_color);
}
.nav-links .pages,
.wp-pagenavi .pages {
  position: absolute;
  display: block;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}
.nav-links .previouspostslink span,
.nav-links .nextpostslink span,
.wp-pagenavi .previouspostslink span,
.wp-pagenavi .nextpostslink span {
  position: absolute;
  display: block;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}
.nav-links a.last,
.nav-links a.first,
.nav-links a.next,
.nav-links a.prev,
.wp-pagenavi a.last,
.wp-pagenavi a.first,
.wp-pagenavi a.next,
.wp-pagenavi a.prev {
  position: relative;
  background-color: transparent;
  color: var(--text_color);
  padding: 0 1rem;
  border-radius: 0;
  width: auto;
}
.nav-links a.last::after,
.nav-links a.first::after,
.nav-links a.next::after,
.nav-links a.prev::after,
.wp-pagenavi a.last::after,
.wp-pagenavi a.first::after,
.wp-pagenavi a.next::after,
.wp-pagenavi a.prev::after {
  content: "";
  display: block;
  width: 25%;
  height: 1px;
  border-top: var(--text_color) 1px solid;
  transition: 0.3s ease-in-out;
}
.nav-links a.last:hover::after, .nav-links a.last:focus::after,
.nav-links a.first:hover::after,
.nav-links a.first:focus::after,
.nav-links a.next:hover::after,
.nav-links a.next:focus::after,
.nav-links a.prev:hover::after,
.nav-links a.prev:focus::after,
.wp-pagenavi a.last:hover::after,
.wp-pagenavi a.last:focus::after,
.wp-pagenavi a.first:hover::after,
.wp-pagenavi a.first:focus::after,
.wp-pagenavi a.next:hover::after,
.wp-pagenavi a.next:focus::after,
.wp-pagenavi a.prev:hover::after,
.wp-pagenavi a.prev:focus::after {
  width: 100%;
}
.white-text .nav-links a.last,
.white-text .nav-links a.first,
.white-text .nav-links a.next,
.white-text .nav-links a.prev,
.white-text .wp-pagenavi a.last,
.white-text .wp-pagenavi a.first,
.white-text .wp-pagenavi a.next,
.white-text .wp-pagenavi a.prev {
  color: #fff;
}
.white-text .nav-links a.last::after,
.white-text .nav-links a.first::after,
.white-text .nav-links a.next::after,
.white-text .nav-links a.prev::after,
.white-text .wp-pagenavi a.last::after,
.white-text .wp-pagenavi a.first::after,
.white-text .wp-pagenavi a.next::after,
.white-text .wp-pagenavi a.prev::after {
  border-top-color: #fff;
}

/* ------------------------- */
/* = Comments
/* ------------------------- */
#comments {
  padding: 2rem 1rem;
  width: 100%;
  background-color: var(--bg_color);
}
#comments > * {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 96rem;
}

.comment-list {
  list-style: none;
  padding-left: 0;
}
.comment-list .comment {
  display: flex;
  flex-direction: column;
  margin: 4rem 0;
}
@media only screen and (min-width: 45em) {
  .comment-list .comment {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
  }
}
.comment-list .comment-author.avatar {
  width: 9.6rem;
}
@media only screen and (min-width: 45em) {
  .comment-list .comment-content {
    flex: 1 0 0;
    padding-left: 3rem;
  }
}
.comment-list .comment-content .pending {
  display: block;
  margin: 1rem 0;
  background-color: var(--secondary_color);
  padding: 1rem;
  color: #fff;
}
.comment-list .comment-author-name {
  font-family: var(--font_bold);
  font-size: 1.8rem;
}
.comment-list .comment-date {
  font-size: 1.4rem;
  font-family: var(--font_mono);
  margin-bottom: 2rem;
}
.comment-list .reply {
  width: 100%;
  margin-top: 1rem;
}
@media only screen and (min-width: 45em) {
  .comment-list .reply {
    padding-left: calc(9.6rem + 3rem);
  }
}
.comment-reply-title small {
  display: block;
  font-family: var(--font_regular);
  font-size: 1.6rem;
}
.comment-reply-title small a {
  display: inline-block;
  margin-top: 1rem;
}

.is-layout-flex {
  display: flex;
}

p.has-background,
.wp-block-group.has-background,
.wp-block-column.has-background {
  padding: 2rem;
}

.has-primary-background-color {
  background-color: var(--primary_color);
}

.has-secondary-background-color {
  background-color: var(--secondary_color);
}

.has-accent-background-color {
  background-color: var(--accent_color);
}

.has-text-color-background-color {
  background-color: var(--text_color);
}

.has-bg-background-color {
  background-color: var(--bg_color);
}

.has-white-background-color {
  background-color: #fff;
}

.has-inline-color.has-primary-color,
.has-text-color.has-primary-color {
  color: var(--primary_color);
}

.has-inline-color.has-secondary-color,
.has-text-color.has-secondary-color {
  color: var(--secondary_color);
}

.has-inline-color.has-accent-color,
.has-text-color.has-accent-color {
  color: var(--accent_color);
}

.has-inline-color.has-text-color-color,
.has-text-color.has-text-color-color {
  color: var(--text_color);
}

.has-inline-color.has-bg-color,
.has-text-color.has-bg-color {
  color: var(--bg_color);
}

.has-inline-color.has-white-color,
.has-text-color.has-white-color {
  color: #fff;
}

.wp-block-buttons {
  display: flex;
}
.wp-block-buttons > .wp-block-button {
  margin: 0 1rem 1rem 0;
}

.wp-block-file a:first-child {
  font-family: var(--font_regular);
  text-decoration: none;
  border-bottom: var(--secondary_color) 2px solid;
  transition: border 0.2s ease-in-out;
}
.wp-block-file a:first-child:hover {
  border-bottom-width: 0.4rem;
}
.wp-block-file a:first-child:focus {
  background-color: var(--text_color);
  border-bottom-color: var(--text_color);
  color: #fff;
}

.has-regular-font-size {
  font-size: 1.6rem;
}
@media only screen and (min-width: 60em) {
  .has-regular-font-size {
    font-size: 1.8rem;
  }
}

.has-medium-font-size {
  font-size: 1.8rem;
}
@media only screen and (min-width: 60em) {
  .has-medium-font-size {
    font-size: 2rem;
  }
}

.wp-block-group.has-background > .wp-block-group__inner-container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 96rem;
}

.wp-block-columns {
  display: block;
}
.wp-block-columns .wp-block-column {
  width: 100% !important;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 45em) {
  .wp-block-columns .wp-block-column {
    margin: 0 0.5rem;
  }
  .wp-block-columns .wp-block-column:first-child {
    margin-left: 0;
  }
  .wp-block-columns .wp-block-column:last-child {
    margin-right: 0;
  }
}
@media only screen and (min-width: 45em) {
  .wp-block-columns {
    display: flex;
  }
}

.wp-block-image img {
  max-width: none;
}
.wp-block-image.alignfull {
  width: 100%;
}
.wp-block-image:not([class*=is-resized]) img {
  width: 100%;
  height: auto;
}

.wp-block-details summary {
  display: inline-flex;
  border-bottom: var(--primary_color) 0.2rem solid;
}
.wp-block-details summary::before {
  display: inline-flex;
  content: "›";
  margin-right: 0.5rem;
  margin-top: -0.5rem;
  font-size: 2.2rem;
}
.wp-block-details summary:focus {
  background-color: var(--text_color);
  color: #fff;
}
.wp-block-details[open] summary {
  margin-bottom: 1rem;
}
.wp-block-details[open] summary + p {
  margin-top: 0;
}
.wp-block-details[open] summary::before {
  transform: rotate(90deg);
  margin-top: 0;
  margin-right: 0;
  margin-left: 0.5rem;
}

.wp-block-quote {
  margin-bottom: 2rem !important;
}
.page-content > .wp-block-archives-list,
.page-content > .wp-block-categories-list,
.page-content > .wp-block-latest-posts__list {
  padding-left: 1rem;
}
.wp-block-archives-list li,
.wp-block-categories-list li,
.wp-block-latest-posts__list li {
  margin-left: 0;
  border-bottom: var(--text_color) 1px solid;
}
.wp-block-archives-list li:first-child,
.wp-block-categories-list li:first-child,
.wp-block-latest-posts__list li:first-child {
  border-top: var(--text_color) 1px solid;
}
.wp-block-archives-list li a,
.wp-block-categories-list li a,
.wp-block-latest-posts__list li a {
  padding: 1rem 0;
  text-decoration: none;
  transition: 0.2s ease-in-out;
}
.wp-block-archives-list li a:hover, .wp-block-archives-list li a:focus,
.wp-block-categories-list li a:hover,
.wp-block-categories-list li a:focus,
.wp-block-latest-posts__list li a:hover,
.wp-block-latest-posts__list li a:focus {
  padding-left: 1rem;
  padding-right: 1rem;
  background-color: var(--primary_color);
  color: #fff;
}
.wp-block-archives-list.is-grid li,
.wp-block-categories-list.is-grid li,
.wp-block-latest-posts__list.is-grid li {
  margin-bottom: 0;
}
.wp-block-archives-list.is-grid li:first-child,
.wp-block-categories-list.is-grid li:first-child,
.wp-block-latest-posts__list.is-grid li:first-child {
  border-top: 0;
}

.wp-block-latest-posts__list li a {
  display: block;
}

.wp-block-archives-list,
.wp-block-categories-list {
  list-style: none;
}
.wp-block-archives-list li a,
.wp-block-categories-list li a {
  display: inline-block;
}

hr,
.wp-block-separator {
  height: 0;
  border: 0;
  border-top: var(--text_color) 1px solid;
}
.page-content hr,
.page-content .wp-block-separator {
  width: calc(100% - 4rem);
  margin: 5rem auto;
}
@media only screen and (min-width: 60em) {
  .page-content hr,
  .page-content .wp-block-separator {
    max-width: calc(96rem - 4rem);
  }
}

.page-content .wp-block-separator {
  max-width: 20rem;
}
.page-content .wp-block-separator.is-style-wide {
  max-width: 80%;
}
@media only screen and (min-width: 45em) {
  .page-content .wp-block-separator.is-style-wide {
    max-width: 50rem;
  }
}
.wp-block-separator.has-primary-background-color {
  border-top-color: var(--primary_color);
}
.wp-block-separator.has-secondary-background-color {
  border-top-color: var(--secondary_color);
}
.wp-block-separator.has-accent-background-color {
  border-top-color: var(--accent_color);
}
.wp-block-separator.has-text-background-color {
  border-top-color: var(--text_color);
}
.wp-block-separator.has-bg-background-color {
  border-top-color: var(--bg_color);
}
.wp-block-separator.has-white-background-color {
  border-top-color: white;
}

.wp-block-media-text .wp-block-media-text__content {
  padding: 1rem 0;
}
@media only screen and (min-width: 37.5em) {
  .wp-block-media-text .wp-block-media-text__content {
    padding: 1rem;
    padding-right: 0;
  }
}
@media only screen and (min-width: 60em) {
  .wp-block-media-text .wp-block-media-text__content {
    padding: 2rem;
  }
}
@media only screen and (min-width: 37.5em) {
  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding: 1rem;
    padding-left: 0;
    padding-right: 1rem;
  }
}
@media only screen and (min-width: 60em) {
  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding: 2rem;
  }
}

.page-content > .wp-block-gallery {
  padding-left: 1rem;
}
.wp-block-gallery .blocks-gallery-image figcaption,
.wp-block-gallery .blocks-gallery-item figcaption {
  padding: 1rem;
  background-color: var(--text_color);
}

[class*=acf-block--] .acf-block-container {
  width: 100%;
}
[class*=acf-block--] .acf-block-container.center-max {
  padding: 1rem;
  margin: 0 auto;
  max-width: 96rem;
}

/* ------------------------- */
/* = Footer
/* ------------------------- */
#site_foot {
  position: relative;
  background-color: var(--footer_color);
}

.footer-social {
  width: 100%;
  padding: 1rem;
}

.footer-widgets {
  width: 100%;
}
@media only screen and (min-width: 45em) {
  .footer-widgets {
    display: flex;
    flex-wrap: wrap;
  }
}

.widgets-area {
  padding: 1rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 45em) {
  .widgets-area {
    flex: 1 1 0;
  }
}
@media only screen and (min-width: 60em) {
  .widgets-area {
    max-width: 33.3333%;
  }
}

.footer-copyright {
  padding: 1rem;
}
@media only screen and (min-width: 45em) {
  .footer-copyright {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
  }
}
.footer-copyright p {
  margin-bottom: 0;
  margin-right: 1rem;
  font-size: 1.4rem;
}
.footer-menu {
  display: flex;
  flex-wrap: wrap;
}
.footer-menu li {
  margin: 0 1rem 0 0;
  font-size: 1.4rem;
}
/* ------------------------- */
/* = Animations
/* ------------------------- */
@keyframes drop_in {
  0% {
    transform: translateY(-100%);
  }
  50% {
    transform: translateY(0);
  }
  75% {
    transform: translateY(-10%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes pop_in {
  0% {
    transform: translateY(-1rem);
  }
  50% {
    transform: translateY(0);
  }
  75% {
    transform: translateY(-0.5rem);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes go_back {
  0% {
    margin-right: 2.5rem;
  }
  50% {
    margin-right: 1rem;
  }
  75% {
    margin-right: 1.5rem;
  }
  100% {
    margin-right: 1rem;
  }
}
@keyframes fall_in {
  from {
    opacity: 0;
    margin-top: -1.5rem;
  }
  to {
    opacity: 1;
    margin-top: 0;
  }
}
@keyframes slide_down {
  from {
    opacity: 0;
    top: -2.5rem;
  }
  to {
    opacity: 1;
    top: 0;
  }
}
@keyframes slide_up {
  from {
    opacity: 0;
    top: 2.5rem;
  }
  to {
    opacity: 1;
    top: 0;
  }
}
@keyframes slide_left {
  from {
    transform: translateX(2.5rem);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slide_right {
  from {
    transform: translateX(-2.5rem);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes move_left {
  from {
    margin-left: 2.5rem;
  }
  to {
    margin-left: 0;
  }
}
@keyframes move_right {
  from {
    margin-left: -2.5rem;
  }
  to {
    margin-left: 0;
  }
}
@keyframes fade_in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes stretch {
  from {
    transform: scaleX(0.1);
  }
  to {
    transform: none;
  }
}
@keyframes border_opacity {
  from {
    border-bottom-color: transparent;
  }
  to {
    border-bottom-color: initial;
  }
}
/* ------------------------- */
/* = Plugins
/* ------------------------- */
.cmplz-dropdown {
  position: relative;
  margin-bottom: 0.5rem;
}

.cmplz-service-header {
  background-color: var(--bg_color);
  padding: 1rem;
}
.cmplz-service-header p {
  font-size: 1.6rem;
  margin: 0.5rem 0;
}
.cmplz-service-header::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-width: 1rem;
  border-style: solid;
  border-top-color: inherit;
  position: absolute;
  right: 1rem;
  top: 2.4rem;
  border-top-color: var(--primary_color);
  transition: 0.3s ease-in-out;
}
[open] .cmplz-service-header::after {
  transform: rotate(180deg);
  top: 1.4rem;
}

.cmplz-service-description,
.cmplz-sharing-data,
.cookies-per-purpose {
  padding: 1rem;
  font-size: 75%;
}

.cookies-per-purpose {
  background-color: #f4f4f4;
  border-top: #ccc 1px solid;
  margin-bottom: 1rem;
}
.cookies-per-purpose h5 {
  font-family: var(--font_bold);
  color: var(--text_color);
  font-size: 1.6rem;
}

p#user_switching_switch_on {
  position: fixed;
  bottom: 3rem;
  left: 3rem;
}
p#user_switching_switch_on a {
  display: inline-flex;
  padding: 0.5rem 1rem;
  background-color: var(--accent_color);
  color: var(--text_color);
  font-size: 1.4rem;
  border-radius: 0.4rem;
  text-decoration: none;
  transition: background 0.3s ease-in-out;
}
p#user_switching_switch_on a:hover, p#user_switching_switch_on a:focus {
  background-color: var(--text_color);
  color: #fff;
}

/* ------------------------- */
/* = Misc
/* ------------------------- */
.error404 .page-content .searchform {
  margin-bottom: 2rem;
}

/* ------------------------- */
/* = Helpers
/* ------------------------- */
.screen-reader-text,
.a11y-hidden {
  position: absolute;
  display: block;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
}

.out-of-reach {
  display: none;
}

.clearfix {
  clear: both;
  float: none;
}

.floatl {
  float: left;
}

.floatr {
  float: right;
}

.txtr {
  text-align: right;
}

.txtl {
  text-align: left;
}

.txtc {
  text-align: center;
}

.woocommerce-page #wrapper .woocommerce-form,
.woocommerce #wrapper .woocommerce-form {
  border-color: var(--text_color);
  border-radius: 0;
}
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox {
  margin: 0;
}
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox span::before,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox span::before {
  top: 0.75rem !important;
}
.woocommerce-page #wrapper .woocommerce-form__label-for-checkbox span::after,
.woocommerce #wrapper .woocommerce-form__label-for-checkbox span::after {
  top: 0.95rem !important;
}
.woocommerce-page #wrapper .button,
.woocommerce-page #wrapper #respond #submit,
.woocommerce #wrapper .button,
.woocommerce #wrapper #respond #submit {
  border-radius: 0;
  font-weight: normal;
}
.woocommerce-page #wrapper .form-row,
.woocommerce #wrapper .form-row {
  margin-bottom: 2rem;
}
.woocommerce-page #wrapper .woocommerce-ordering,
.woocommerce #wrapper .woocommerce-ordering {
  width: 100%;
}
@media only screen and (min-width: 45em) {
  .woocommerce-page #wrapper .woocommerce-ordering,
  .woocommerce #wrapper .woocommerce-ordering {
    width: auto;
  }
}
.woocommerce-page #wrapper .woocommerce-MyAccount-navigation ul,
.woocommerce #wrapper .woocommerce-MyAccount-navigation ul {
  border-top: var(--text_color) 1px solid;
  margin-top: 0;
  margin-bottom: 4rem;
}
.woocommerce-page #wrapper .woocommerce-MyAccount-navigation ul > li,
.woocommerce #wrapper .woocommerce-MyAccount-navigation ul > li {
  display: block;
}
.woocommerce-page #wrapper .woocommerce-MyAccount-navigation ul > li a,
.woocommerce #wrapper .woocommerce-MyAccount-navigation ul > li a {
  display: block;
  padding: 1rem 0;
  border-bottom: var(--text_color) 1px solid;
  text-decoration: none;
  transition: background 0.4s ease-in-out;
}
@media only screen and (min-width: 60em) {
  .woocommerce-page #wrapper .woocommerce-MyAccount-content,
  .woocommerce #wrapper .woocommerce-MyAccount-content {
    padding-left: 8.3333%;
  }
}
.woocommerce-page #wrapper .woocommerce-error,
.woocommerce-page #wrapper .woocommerce-info,
.woocommerce-page #wrapper .woocommerce-message,
.woocommerce #wrapper .woocommerce-error,
.woocommerce #wrapper .woocommerce-info,
.woocommerce #wrapper .woocommerce-message {
  border-top: 0;
}
.woocommerce-page #wrapper .woocommerce-info::before,
.woocommerce #wrapper .woocommerce-info::before {
  color: var(--primary_color);
}
.woocommerce-page #wrapper ul.products,
.woocommerce #wrapper ul.products {
  margin: 0 auto;
  padding: 0 1rem;
}
.woocommerce-page #wrapper ul.products li::before,
.woocommerce #wrapper ul.products li::before {
  content: none;
}
.woocommerce-page #wrapper .product a img,
.woocommerce #wrapper .product a img {
  transition: opacity 0.2s ease-in-out;
}
.woocommerce-page #wrapper .product a:hover img,
.woocommerce-page #wrapper .product a:focus img,
.woocommerce #wrapper .product a:hover img,
.woocommerce #wrapper .product a:focus img {
  opacity: 0.7;
}
.woocommerce-page #wrapper .product img,
.woocommerce #wrapper .product img {
  margin: 0;
}
.woocommerce-page #wrapper .product .woocommerce-loop-product__title,
.woocommerce #wrapper .product .woocommerce-loop-product__title {
  font-size: 2.2rem;
}
.woocommerce-page #wrapper .product .price,
.woocommerce #wrapper .product .price {
  color: var(--secondary_color);
  font-family: var(--font_bold);
  font-size: 2.8rem;
}
.woocommerce-page #wrapper .entry-summary,
.woocommerce #wrapper .entry-summary {
  padding-right: 4rem;
}
@media only screen and (min-width: 60em) {
  .woocommerce-page #wrapper .entry-summary,
  .woocommerce #wrapper .entry-summary {
    padding-top: 1rem;
  }
}
.woocommerce-page #wrapper .single_add_to_cart_button,
.woocommerce #wrapper .single_add_to_cart_button {
  height: 4.3rem;
}
.woocommerce-page #wrapper ul.tabs li,
.woocommerce #wrapper ul.tabs li {
  border-radius: 0;
  background-color: var(--bg_color);
  color: var(--text_color);
}
.woocommerce-page #wrapper ul.tabs li.active,
.woocommerce #wrapper ul.tabs li.active {
  background-color: #fff;
}
.woocommerce-page #wrapper ul.tabs li::after, .woocommerce-page #wrapper ul.tabs li::before,
.woocommerce #wrapper ul.tabs li::after,
.woocommerce #wrapper ul.tabs li::before {
  content: none;
}
.woocommerce-page #wrapper .stars a,
.woocommerce #wrapper .stars a {
  color: var(--secondary_color);
  text-decoration: none;
}
.woocommerce-page #wrapper .stars a::after,
.woocommerce #wrapper .stars a::after {
  content: none;
}
.woocommerce-page #wrapper .stars a.active ~ a::before,
.woocommerce #wrapper .stars a.active ~ a::before {
  color: var(--text_color);
}
.woocommerce-page #wrapper #coupon_code,
.woocommerce #wrapper #coupon_code {
  min-width: 12rem;
}
.woocommerce-page #wrapper table.shop_table,
.woocommerce #wrapper table.shop_table {
  border: 0;
}
.woocommerce-page #wrapper table.shop_table th,
.woocommerce #wrapper table.shop_table th {
  font-weight: normal;
}
.woocommerce-page #wrapper .cart_totals table.shop_table th,
.woocommerce #wrapper .cart_totals table.shop_table th {
  color: var(--primary_color);
}

.white {
  color: #FFF;
}

.hidden {
  display: none !important;
}

#back2top path {
  fill: #f95604;
}

#menu-main-menu {
  color: #15275a;
}

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

header .nav-container {
  flex-direction: row;
}
@media (max-width: 991px) {
  header .nav-container #menu-main-menu {
    padding-top: 70px;
  }
}
header .nav-container .cart-container {
  display: flex;
  align-items: baseline;
  flex-direction: column;
}
@media (max-width: 991px) {
  header .nav-container .cart-container {
    padding-left: 20px;
  }
}
@media (min-width: 992px) {
  header .nav-container .cart-container {
    align-items: center;
    flex-direction: row;
  }
}
@media (max-width: 991px) {
  header .nav-container .cart-container .cart-icon {
    margin-bottom: 20px;
  }
}
header .nav-container .cart-container .cart-icon a.cart-link {
  background: #f95604;
  border-radius: 50px;
  padding: 13px;
  display: flex;
  position: relative;
}
header .nav-container .cart-container .cart-icon a.cart-link > .cart-count {
  position: absolute;
  top: 0;
  right: 0;
  background: var(--page_color);
  font-size: 13px;
  width: 18px;
  text-align: center;
  border-radius: 30px;
  color: #15275a;
}
header .nav-container .cart-container .user-account {
  background: #f95604;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  padding: 10px;
  margin-left: 15px;
  width: 110px;
}
header .nav-container .cart-container .user-account > a {
  text-decoration: inherit;
}

.hero-slider {
  position: relative;
}
.hero-slider::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 2;
  pointer-events: none;
}
.hero-slider > .elementor-image-carousel-wrapper {
  height: 70vh;
}
.hero-slider > .elementor-image-carousel-wrapper figure.swiper-slide-inner {
  height: 70vh;
}
.hero-slider > .elementor-image-carousel-wrapper figure.swiper-slide-inner > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (max-width: 991px) {
  .hero-slider > .elementor-image-carousel-wrapper figure.swiper-slide-inner > img {
    height: 70vh;
    object-fit: cover;
  }
}

.hero-hours::before {
  width: 15px;
  height: 10;
  height: 15px;
  content: "";
  background: var(--e-global-color-secondary);
  position: absolute;
  left: 20px;
  border-radius: 50px;
  top: 17px;
}
@media (min-width: 992px) {
  .hero-hours::before {
    top: 10px;
  }
}
@media (max-width: 991px) {
  .hero-hours > div {
    display: flex;
    flex-direction: column;
  }
}
.hero-hours.after-open::before {
  background: #00A96E;
}
.hero-hours span {
  color: rgba(166, 173, 187, 0.8);
}

.animate-customPing {
  position: relative;
  isolation: isolate;
}
@media (min-width: 992px) {
  .animate-customPing {
    position: absolute !important;
    left: 50px;
    top: 50px;
  }
}
.animate-customPing::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: currentColor;
  border-radius: inherit;
  z-index: -1;
  animation: customPing 3s cubic-bezier(0, 0, 0.2, 0.5) infinite;
}

.or > p {
  margin: 0 !important;
}

@keyframes customPing {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  75% {
    transform: scale(1.1);
    opacity: 0.5;
  }
  100% {
    transform: scale(1.1);
    opacity: 0;
  }
}
.best-sales.all-products .custom-products-container .custom-products-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  width: 100%;
  overflow-y: scroll;
  scrollbar-width: none;
}
.best-sales.all-products .custom-products-container .custom-products-grid::-webkit-scrollbar {
  display: none;
}
.best-sales.all-products .custom-products-container .custom-products-grid > .custom-product {
  width: calc(25% - 5px);
  min-width: inherit;
}
.best-sales .custom-products-container .notice {
  background: #f95604;
  color: #000;
  padding: 30px;
  border-radius: 12px;
  font-size: 14px;
  margin-bottom: 20px;
}
.best-sales .custom-products-container .notice h3, .best-sales .custom-products-container .notice p.cmplz-subtitle, .best-sales .custom-products-container .notice h4, .best-sales .custom-products-container .notice .widget-title {
  margin: 0;
  color: #000;
  font-size: 20px;
}
@media (max-width: 991px) {
  .best-sales .custom-products-container .notice h3.ampoule, .best-sales .custom-products-container .notice p.ampoule.cmplz-subtitle, .best-sales .custom-products-container .notice h4.ampoule, .best-sales .custom-products-container .notice .ampoule.widget-title {
    text-align: center;
  }
}
.best-sales .custom-products-container .notice .text {
  margin: 10px 0 20px;
}
.best-sales .custom-products-container .notice .button {
  background: #FFF;
  color: #f95604;
  border-radius: 3px;
  padding: 8px 16px;
  font-weight: bold;
}
.best-sales .custom-products-container .custom-products-grid {
  display: flex;
  gap: 20px;
  overflow: scroll;
  position: relative;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product {
  min-width: 280px;
  background: #15275a;
  border: 1px solid #15275a;
  border-radius: 12px;
  margin-top: 10px;
  transition: 0.3s;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product.show-filters {
  border: 1px solid #FFF;
}
@media (max-width: 991px) {
  .best-sales .custom-products-container .custom-products-grid > .custom-product.show-filters {
    width: 100%;
  }
}
.best-sales .custom-products-container .custom-products-grid > .custom-product:hover {
  margin-top: 0;
  margin-bottom: 10px;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .product-image {
  background: #FFF;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .product-image > img {
  max-height: 200px;
  width: auto;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container {
  padding: 10px 20px 20px;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container h3, .best-sales .custom-products-container .custom-products-grid > .custom-product .text-container p.cmplz-subtitle {
  margin: 0;
  color: #FFF;
  font-size: 22px;
}
@media (max-width: 991px) {
  .best-sales .custom-products-container .custom-products-grid > .custom-product .text-container h3, .best-sales .custom-products-container .custom-products-grid > .custom-product .text-container p.cmplz-subtitle {
    text-align: center;
  }
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container h3 a, .best-sales .custom-products-container .custom-products-grid > .custom-product .text-container p.cmplz-subtitle a {
  color: #FFF;
  font-size: 22px;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .price-quantity-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 25px 0;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .price-quantity-container > .custom-quantity-wrapper {
  display: flex;
  background: rgba(249, 86, 4, 0.3);
  align-items: center;
  border-radius: 9999px;
  padding: 1px 4px;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .price-quantity-container > .custom-quantity-wrapper > button {
  background: #f95604;
  padding: 0;
  height: 35px;
  width: 35px;
  border-radius: 100px;
  color: #FFF;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .price-quantity-container > .custom-quantity-wrapper > .quantity {
  width: 50px;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .price-quantity-container > .custom-quantity-wrapper > .quantity input[type=number] {
  background: transparent;
  text-align: center;
  margin: 0;
  border: none;
  cursor: default;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .price-quantity-container > .custom-quantity-wrapper > .quantity input[type=number]::-webkit-outer-spin-button, .best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .price-quantity-container > .custom-quantity-wrapper > .quantity input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .button-container {
  text-align: center;
  display: flex;
  flex-direction: column;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .button-container > a {
  background: #f95604;
}
.best-sales .custom-products-container .custom-products-grid > .custom-product .text-container > .button-container > a.added_to_cart {
  margin-top: 10px;
  font-size: 15px;
  background: #FFF;
  color: #f95604;
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
}

.compose-formule img {
  border-top-right-radius: 12px !important;
  border-top-left-radius: 12px !important;
  height: 270px !important;
}
.compose-formule .step-text {
  transition: 0.3s;
}
.compose-formule .step-text p {
  margin: 0;
}
.compose-formule:hover .step-text {
  background-color: #f95604 !important;
}

.product-categories {
  /* Effets au survol */
}
.product-categories .product-categories-grid {
  display: grid;
  gap: 20px;
  margin: 30px 0;
}
@media (min-width: 992px) {
  .product-categories .product-categories-grid {
    grid-template-columns: repeat(var(--grid-columns, 3), 1fr);
  }
}
.product-categories .product-category-card {
  position: relative;
  height: var(--grid-height, 300px);
  display: flex;
  overflow: hidden;
  border-radius: 8px;
  text-decoration: none;
}
.product-categories .category-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  transition: transform 0.5s ease;
}
.product-categories .category-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(21, 39, 90, 0.5);
  z-index: 1;
}
.product-categories .category-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: all 0.4s ease;
}
.product-categories .category-title {
  color: white;
  margin-bottom: 0;
  transform: translateY(0);
  transition: all 0.4s ease;
}
.product-categories .category-title::after {
  content: "";
  background: #FFF;
  width: 70px;
  height: 2px;
  position: absolute;
  bottom: -10px;
  left: 0;
  left: calc(50% - 35px);
}
.product-categories .category-hover-text {
  color: white;
  opacity: 0;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-top: 10px;
  transform: translateY(20px);
  transition: all 0.4s ease;
}
.product-categories .product-category-card:hover .category-background {
  transform: scale(1.05);
}
.product-categories .product-category-card:hover .category-content {
  transform: translateY(-10px);
}
.product-categories .product-category-card:hover .category-title {
  transform: translateY(-10px);
}
.product-categories .product-category-card:hover .category-hover-text {
  opacity: 1;
  transform: translateY(0);
}

.pourquoi-nous-choisir .elementor-icon {
  background: rgba(249, 86, 4, 0.3);
  padding: 10px;
  border-radius: 50px;
}

.delivery-zone {
  /* Styles pour la visibilité des contrôles admin */
}
.delivery-zone .delivery-zones-container {
  font-family: Arial, sans-serif;
  max-width: 1200px;
  margin: 0 auto;
}
.delivery-zone .controls {
  background: #f5f5f5;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.delivery-zone .controls button {
  padding: 8px 15px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.3s;
}
.delivery-zone .controls button:hover {
  background: #f0f0f0;
}
.delivery-zone .controls .zone-btn[data-zone=rouge] {
  background-color: #FF0000;
  color: white;
}
.delivery-zone .controls .zone-btn[data-zone=orange] {
  background-color: #FFA500;
  color: white;
}
.delivery-zone .controls .zone-btn[data-zone=verte] {
  background-color: #008000;
  color: white;
}
.delivery-zone .controls .zone-btn[data-zone=violette] {
  background-color: #800080;
  color: white;
}
.delivery-zone #zone-checker {
  margin-top: 20px;
  padding: 15px;
  background: #15275a;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
}
.delivery-zone #zone-checker > .inputs {
  display: flex;
}
.delivery-zone #zone-checker > .inputs #address-input, .delivery-zone #zone-checker > .inputs #address-input-modal {
  flex-grow: 1;
  margin: 0;
  border-color: grey;
  border-radius: 4px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23999'%3E%3Cpath d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 25px 25px;
  background-position: 10px center;
  padding-left: 45px;
  background-color: var(--page_color);
  min-width: 200px;
  height: 45px;
  color: #15275a;
}
.delivery-zone #zone-checker > .inputs #check-address, .delivery-zone #zone-checker > .inputs #check-address-modal,
.delivery-zone #zone-checker > .inputs .localize-me {
  background: #f95604;
  height: 45px;
  font-weight: 500;
  flex-shrink: 0;
  min-width: 150px;
  margin-left: 10px;
}
.delivery-zone #zone-checker > .inputs .localize-me {
  color: #f95604;
  background: #FFF;
}
.delivery-zone .zone-result {
  margin-top: 15px;
  padding: 10px;
  background: #15275a;
  border: 1px solid grey;
  border-radius: 4px;
  color: #FFF;
  display: none;
}
.delivery-zone .zone-result p {
  margin: 0;
}
.delivery-zone .map {
  position: relative;
}
.delivery-zone .map #delivery-zones-map {
  height: 600px;
  width: 100%;
  margin: 20px 0;
  border: 1px solid #ddd;
  border-radius: 4px;
}
.delivery-zone .map .delivery-legend {
  position: absolute;
  top: 0px;
  background-color: white;
  padding: 10px;
  border-radius: 5px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}
@media (max-width: 991px) {
  .delivery-zone .map .delivery-legend {
    margin: 5px;
  }
}
@media (min-width: 992px) {
  .delivery-zone .map .delivery-legend {
    width: 380px;
    left: 10px;
    top: 10px;
  }
}
.delivery-zone .map .delivery-legend ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.delivery-zone .map .delivery-legend li {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
  color: #000;
  font-size: 16px;
  padding: 5px 8px; /* Ajout d'un padding pour un meilleur rendu de surlignage */
  border-radius: 4px; /* Bords légèrement arrondis */
  transition: background-color 0.3s ease, font-weight 0.3s ease, border-color 0.3s ease; /* Transition douce pour le surlignage */
  border: 2px solid transparent; /* Bordure transparente par défaut pour éviter le saut */
}
.delivery-zone .map .delivery-legend li:last-child {
  margin-bottom: 0;
}
.delivery-zone .map .delivery-legend li.highlighted-legend {
  background-color: #f95604; /* Un bleu très clair, ou une autre couleur douce */
  font-weight: bold; /* Rendre le texte en gras pour plus d'emphase */
  border-color: #15275a; /* Bordure légèrement plus prononcée */
  color: #FFF;
}
.delivery-zone .map .delivery-legend .color-box {
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  margin-right: 10px;
  border-radius: 4px; /* Bords légèrement arrondis pour les boîtes de couleur */
  flex-shrink: 0;
}
.delivery-zone .map .delivery-legend .color-box.rouge {
  background-color: #FF0000;
}
.delivery-zone .map .delivery-legend .color-box.orange {
  background-color: #FFA500;
}
.delivery-zone .map .delivery-legend .color-box.verte {
  background-color: #008000;
}
.delivery-zone .map .delivery-legend .color-box.violette {
  background-color: #800080;
}
@media (max-width: 768px) {
  .delivery-zone .controls {
    flex-direction: column;
    gap: 5px;
  }
  .delivery-zone .controls button {
    width: 100%;
  }
  .delivery-zone #zone-checker {
    flex-direction: column;
  }
  .delivery-zone #zone-checker > .inputs {
    flex-direction: column;
    gap: 10px;
  }
  .delivery-zone #zone-checker > .inputs #address-input, .delivery-zone #zone-checker > .inputs #address-input-modal {
    width: 100%;
  }
  .delivery-zone #zone-checker > .inputs #check-address, .delivery-zone #zone-checker > .inputs #check-address-modal,
  .delivery-zone #zone-checker > .inputs .localize-me {
    width: 100%;
    margin-left: 0;
  }
}
.delivery-zone .admin-controls {
  display: none;
}

.delivery-modal {
  display: none;
  position: fixed;
  z-index: 999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}
.delivery-modal .delivery-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.delivery-modal .delivery-modal-header h3, .delivery-modal .delivery-modal-header p.cmplz-subtitle {
  margin: 0;
}
.delivery-modal .delivery-modal-content {
  background-color: var(--page_color);
  margin: 2% auto;
  padding: 10px;
  border: 1px solid #888;
  max-width: 1140px;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  width: 98%;
}
@media (min-width: 992px) {
  .delivery-modal .delivery-modal-content {
    width: 85%;
    padding: 20px;
  }
}
.delivery-modal .delivery-modal-content .delivery-modal-body .delivery-zones-container .zone-checker .zone-result {
  margin-top: 10px;
}
.delivery-modal .delivery-modal-content .delivery-modal-body .delivery-zones-container .zone-checker .zone-result p {
  margin: 0;
}
.delivery-modal .delivery-modal-content .delivery-modal-body .delivery-zones-container .map {
  background: #15275a;
  margin-top: 20px;
  border-radius: 4px;
}
@media (max-width: 991px) {
  .delivery-modal .delivery-modal-content .delivery-modal-body .delivery-zones-container .map {
    padding: 5px 0;
  }
}
@media (min-width: 992px) {
  .delivery-modal .delivery-modal-content .delivery-modal-body .delivery-zones-container .map {
    margin-bottom: 18px;
    padding-bottom: 18px;
  }
}
.delivery-modal .delivery-modal-content .delivery-modal-body .delivery-zones-container .map .delivery-legend {
  position: relative;
  box-shadow: inherit;
  background: transparent;
  width: inherit;
  left: inherit;
  padding: 0 15px;
}
.delivery-modal .delivery-modal-content .delivery-modal-body .delivery-zones-container .map .delivery-legend li {
  color: #FFF;
}
.delivery-modal .delivery-modal-content .delivery-modal-body .notice {
  background: #f95604;
  color: #000;
  padding: 30px;
  border-radius: 12px;
  font-size: 14px;
  text-align: left;
}
@media (max-width: 991px) {
  .delivery-modal .delivery-modal-content .delivery-modal-body .notice {
    margin-top: 20px;
  }
}
.delivery-modal .delivery-modal-content .delivery-modal-body .notice h4, .delivery-modal .delivery-modal-content .delivery-modal-body .notice .widget-title {
  color: #000;
  margin-bottom: 10px;
}
.delivery-modal .delivery-modal-close {
  color: #aaa;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
}
.delivery-modal .delivery-modal-close:hover {
  color: #333;
}
.delivery-modal .delivery-modal-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.delivery-modal .delivery-modal-button {
  background: #f95604;
  color: white;
  border: none;
  padding: 8px 16px;
  border-radius: 4px;
  cursor: pointer;
}
.delivery-modal .delivery-modal-option {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  color: #15275a;
}
.delivery-modal .delivery-modal-option > input {
  margin: 0;
}
.delivery-modal #delivery-zones-map {
  height: 420px !important;
}

body.admin-logged-in .delivery-zone .admin-controls {
  display: flex;
  flex-wrap: wrap;
}

.opening-hours-container .horaires-ouverture {
  display: flex;
}
@media (max-width: 991px) {
  .opening-hours-container .horaires-ouverture {
    flex-direction: column;
  }
}
.opening-hours-container .horaires-ouverture > .jour-horaire {
  display: flex;
  justify-content: space-between;
  padding: 12px 15px;
  border-radius: 12px;
  background: #15275a;
  flex: 1;
}
@media (max-width: 991px) {
  .opening-hours-container .horaires-ouverture > .jour-horaire {
    margin-bottom: 1px;
  }
}
@media (min-width: 992px) {
  .opening-hours-container .horaires-ouverture > .jour-horaire {
    flex-direction: column;
  }
  .opening-hours-container .horaires-ouverture > .jour-horaire:not(:first-child) {
    margin-left: 6px;
  }
}
.opening-hours-container .horaires-ouverture > .jour-horaire.current-day {
  background-color: #f95604;
  color: white;
  font-weight: bold;
}
.opening-hours-container .horaires-ouverture > .jour-horaire > .jour {
  text-transform: capitalize;
}
@media (min-width: 992px) {
  .opening-hours-container .horaires-ouverture > .jour-horaire > .jour {
    margin-bottom: 10px;
  }
}
body.single-product .summary.entry-summary.composez-votre-formule {
  width: 100%;
}
@media (max-width: 991px) {
  body.single-product .summary.entry-summary.composez-votre-formule {
    padding: 0 !important;
  }
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps {
  /* Conteneur de l'indicateur d'étape */
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-menu .mspc-menu-item {
  background-color: rgb(209, 213, 219);
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-menu .mspc-menu-item:not(.disabled) {
  background: rgb(34, 197, 94);
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-menu .mspc-menu-item.mspc-active {
  background-color: #f95604;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-step-indicator-container {
  margin: 15px 0;
  padding: 20px;
  background: #15275a;
  border-radius: 8px;
  border-left: 4px solid #f95604; /* Couleur verte WooCommerce */
  /* Titre de l'étape */
  /* Description sous le titre */
  /* Styles pour les états des prix */
  /* Animation pour l'item actif du menu */
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-step-indicator-container .step-title {
  font-size: 1.2em;
  font-weight: 600;
  margin-bottom: 8px;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-step-indicator-container .under-step {
  font-size: 0.95em;
  color: #666;
  line-height: 1.4;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-step-indicator-container .under-title .hidden {
  display: none;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-step-indicator-container .mspc-menu-item.mspc-active {
  font-weight: bold;
  color: #77a464;
  position: relative;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-step-indicator-container .mspc-menu-item.mspc-active:after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #77a464;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content {
  border: none;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations {
  display: flex;
  padding: 0;
  flex-wrap: wrap;
}
@media (min-width: 992px) {
  body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations {
    gap: 20px;
  }
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation {
  background: #15275a;
  flex-direction: column;
  padding: 0;
  margin-top: 10px;
  gap: inherit;
  border: 1px solid #15275a;
  width: 100%;
}
@media (min-width: 992px) {
  body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation {
    width: 31.8%;
  }
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation:hover {
  border: 1px solid rgb(209, 213, 219);
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation.mspc-active {
  border: 1px solid #f95604;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation .mspc-attribute-image {
  height: 162px;
  width: 100%;
  background-size: cover;
  padding: 0;
  margin: 0;
  background-position: center;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation .text {
  padding: 25px 0px 20px 25px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation .text .mspc-radio {
  position: absolute;
  right: 20px;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation .text .mspc-radio input[type=radio]::before {
  background: #f95604;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation .text .show-price {
  color: #f95604;
  margin-top: 5px;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-variations .mspc-variation .text .show-include {
  color: #00A96E;
  margin-top: 5px;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap {
  display: inherit;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .recap-header {
  color: #f95604;
  text-align: center;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .recap-items-wrapper {
  display: flex;
  gap: 10px;
}
@media (max-width: 991px) {
  body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .recap-items-wrapper {
    flex-wrap: wrap;
  }
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .recap-items-wrapper .mspc-variation {
  cursor: inherit;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .mspc-total-price-container {
  background: #15275a;
  margin: 50px auto;
  padding: 30px 50px;
  border-radius: 6px;
}
@media (min-width: 992px) {
  body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .mspc-total-price-container {
    width: 450px;
  }
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .mspc-total-price-container > .mspc-total-price {
  display: flex;
  justify-content: space-between;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .mspc-total-price-container > .mspc-total-price > span {
  color: #f95604;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .mspc-total-price-container > .mspc-add-to-cart {
  border-radius: 6px !important;
  width: 100%;
  margin-top: 30px;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-content .mspc-recap .mspc-total-price-container > .mspc-add-to-cart:hover {
  color: #f95604 !important;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-clear-selection-container {
  margin-top: 30px;
  display: flex;
  justify-content: center;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-clear-selection-container .mspc-clear-selection {
  border-radius: 6px !important;
  max-width: 280px;
  text-align: center;
}
body.single-product .summary.entry-summary.composez-votre-formule .mspc-module-steps .mspc-clear-selection-container .mspc-clear-selection:hover {
  color: #f95604 !important;
}
body.single-product .summary.entry-summary.composez-votre-formule .variations_form {
  display: none;
}

body.page-id-613 .sms-auth-form {
  max-width: 400px;
  margin: 20px auto;
  padding: 20px;
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #15275a;
}
body.page-id-613 .sms-auth-form input[type=tel], body.page-id-613 .sms-auth-form input[type=text] {
  padding: 10px;
  margin: 10px 0;
  border-radius: 4px;
  color: #15275a;
}
body.page-id-613 .sms-auth-form button {
  width: 100%;
  padding: 12px;
  background: #f95604;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}
body.page-id-613 .sms-auth-form button:hover {
  background: #FFF;
  color: #f95604;
}
body.page-id-613 .sms-auth-form .success {
  color: green;
  background: #d4edda;
  padding: 10px;
  border-radius: 4px;
  margin: 10px 0;
}
body.page-id-613 .sms-auth-form .error {
  color: red;
  background: #f8d7da;
  padding: 10px;
  border-radius: 4px;
  margin: 10px 0;
}
body.page-id-613 .sms-auth-form .code-info {
  background: #666;
  padding: 15px;
  border-radius: 4px;
  margin: 10px 0;
}

@media (max-width: 991px) {
  body.page-id-169 h1.page-title,
  body.page-id-170 h1.page-title,
  body.page-id-171 h1.page-title,
  body.page-id-2497 h1.page-title {
    text-align: center;
  }
}
body.page-id-169 .page-content,
body.page-id-170 .page-content,
body.page-id-171 .page-content,
body.page-id-2497 .page-content {
  display: flex;
  justify-content: center;
}
@media (min-width: 992px) {
  body.page-id-169 .page-content,
  body.page-id-170 .page-content,
  body.page-id-171 .page-content,
  body.page-id-2497 .page-content {
    padding: 20px;
  }
}
body.page-id-169 .page-content .woocommerce-error::before,
body.page-id-170 .page-content .woocommerce-error::before,
body.page-id-171 .page-content .woocommerce-error::before,
body.page-id-2497 .page-content .woocommerce-error::before {
  content: "";
}
body.page-id-169 .page-content .wc-block-cart,
body.page-id-169 .page-content .wc-block-checkout,
body.page-id-169 .page-content .woocommerce-order,
body.page-id-169 .page-content .woocommerce,
body.page-id-169 .page-content #cmplz-document,
body.page-id-170 .page-content .wc-block-cart,
body.page-id-170 .page-content .wc-block-checkout,
body.page-id-170 .page-content .woocommerce-order,
body.page-id-170 .page-content .woocommerce,
body.page-id-170 .page-content #cmplz-document,
body.page-id-171 .page-content .wc-block-cart,
body.page-id-171 .page-content .wc-block-checkout,
body.page-id-171 .page-content .woocommerce-order,
body.page-id-171 .page-content .woocommerce,
body.page-id-171 .page-content #cmplz-document,
body.page-id-2497 .page-content .wc-block-cart,
body.page-id-2497 .page-content .wc-block-checkout,
body.page-id-2497 .page-content .woocommerce-order,
body.page-id-2497 .page-content .woocommerce,
body.page-id-2497 .page-content #cmplz-document {
  background: #15275a;
  border-radius: 12px;
  padding: 5px 20px;
}
body.page-id-169 .page-content .wc-block-cart .wc-block-cart__submit-container a,
body.page-id-169 .page-content .wc-block-checkout .wc-block-cart__submit-container a,
body.page-id-169 .page-content .woocommerce-order .wc-block-cart__submit-container a,
body.page-id-169 .page-content .woocommerce .wc-block-cart__submit-container a,
body.page-id-169 .page-content #cmplz-document .wc-block-cart__submit-container a,
body.page-id-170 .page-content .wc-block-cart .wc-block-cart__submit-container a,
body.page-id-170 .page-content .wc-block-checkout .wc-block-cart__submit-container a,
body.page-id-170 .page-content .woocommerce-order .wc-block-cart__submit-container a,
body.page-id-170 .page-content .woocommerce .wc-block-cart__submit-container a,
body.page-id-170 .page-content #cmplz-document .wc-block-cart__submit-container a,
body.page-id-171 .page-content .wc-block-cart .wc-block-cart__submit-container a,
body.page-id-171 .page-content .wc-block-checkout .wc-block-cart__submit-container a,
body.page-id-171 .page-content .woocommerce-order .wc-block-cart__submit-container a,
body.page-id-171 .page-content .woocommerce .wc-block-cart__submit-container a,
body.page-id-171 .page-content #cmplz-document .wc-block-cart__submit-container a,
body.page-id-2497 .page-content .wc-block-cart .wc-block-cart__submit-container a,
body.page-id-2497 .page-content .wc-block-checkout .wc-block-cart__submit-container a,
body.page-id-2497 .page-content .woocommerce-order .wc-block-cart__submit-container a,
body.page-id-2497 .page-content .woocommerce .wc-block-cart__submit-container a,
body.page-id-2497 .page-content #cmplz-document .wc-block-cart__submit-container a {
  background: #f95604;
  border-radius: 3px;
  text-decoration: inherit;
}
body.page-id-169 .page-content .wc-block-cart .wc-block-components-button,
body.page-id-169 .page-content .wc-block-checkout .wc-block-components-button,
body.page-id-169 .page-content .woocommerce-order .wc-block-components-button,
body.page-id-169 .page-content .woocommerce .wc-block-components-button,
body.page-id-169 .page-content #cmplz-document .wc-block-components-button,
body.page-id-170 .page-content .wc-block-cart .wc-block-components-button,
body.page-id-170 .page-content .wc-block-checkout .wc-block-components-button,
body.page-id-170 .page-content .woocommerce-order .wc-block-components-button,
body.page-id-170 .page-content .woocommerce .wc-block-components-button,
body.page-id-170 .page-content #cmplz-document .wc-block-components-button,
body.page-id-171 .page-content .wc-block-cart .wc-block-components-button,
body.page-id-171 .page-content .wc-block-checkout .wc-block-components-button,
body.page-id-171 .page-content .woocommerce-order .wc-block-components-button,
body.page-id-171 .page-content .woocommerce .wc-block-components-button,
body.page-id-171 .page-content #cmplz-document .wc-block-components-button,
body.page-id-2497 .page-content .wc-block-cart .wc-block-components-button,
body.page-id-2497 .page-content .wc-block-checkout .wc-block-components-button,
body.page-id-2497 .page-content .woocommerce-order .wc-block-components-button,
body.page-id-2497 .page-content .woocommerce .wc-block-components-button,
body.page-id-2497 .page-content #cmplz-document .wc-block-components-button {
  background: #f95604;
  border-radius: 3px;
  color: #FFF;
  font-weight: bold;
}
body.page-id-169 .page-content .wc-block-cart a.wc-block-checkout__login-prompt,
body.page-id-169 .page-content .wc-block-cart .woocommerce-form-login-toggle,
body.page-id-169 .page-content .wc-block-checkout a.wc-block-checkout__login-prompt,
body.page-id-169 .page-content .wc-block-checkout .woocommerce-form-login-toggle,
body.page-id-169 .page-content .woocommerce-order a.wc-block-checkout__login-prompt,
body.page-id-169 .page-content .woocommerce-order .woocommerce-form-login-toggle,
body.page-id-169 .page-content .woocommerce a.wc-block-checkout__login-prompt,
body.page-id-169 .page-content .woocommerce .woocommerce-form-login-toggle,
body.page-id-169 .page-content #cmplz-document a.wc-block-checkout__login-prompt,
body.page-id-169 .page-content #cmplz-document .woocommerce-form-login-toggle,
body.page-id-170 .page-content .wc-block-cart a.wc-block-checkout__login-prompt,
body.page-id-170 .page-content .wc-block-cart .woocommerce-form-login-toggle,
body.page-id-170 .page-content .wc-block-checkout a.wc-block-checkout__login-prompt,
body.page-id-170 .page-content .wc-block-checkout .woocommerce-form-login-toggle,
body.page-id-170 .page-content .woocommerce-order a.wc-block-checkout__login-prompt,
body.page-id-170 .page-content .woocommerce-order .woocommerce-form-login-toggle,
body.page-id-170 .page-content .woocommerce a.wc-block-checkout__login-prompt,
body.page-id-170 .page-content .woocommerce .woocommerce-form-login-toggle,
body.page-id-170 .page-content #cmplz-document a.wc-block-checkout__login-prompt,
body.page-id-170 .page-content #cmplz-document .woocommerce-form-login-toggle,
body.page-id-171 .page-content .wc-block-cart a.wc-block-checkout__login-prompt,
body.page-id-171 .page-content .wc-block-cart .woocommerce-form-login-toggle,
body.page-id-171 .page-content .wc-block-checkout a.wc-block-checkout__login-prompt,
body.page-id-171 .page-content .wc-block-checkout .woocommerce-form-login-toggle,
body.page-id-171 .page-content .woocommerce-order a.wc-block-checkout__login-prompt,
body.page-id-171 .page-content .woocommerce-order .woocommerce-form-login-toggle,
body.page-id-171 .page-content .woocommerce a.wc-block-checkout__login-prompt,
body.page-id-171 .page-content .woocommerce .woocommerce-form-login-toggle,
body.page-id-171 .page-content #cmplz-document a.wc-block-checkout__login-prompt,
body.page-id-171 .page-content #cmplz-document .woocommerce-form-login-toggle,
body.page-id-2497 .page-content .wc-block-cart a.wc-block-checkout__login-prompt,
body.page-id-2497 .page-content .wc-block-cart .woocommerce-form-login-toggle,
body.page-id-2497 .page-content .wc-block-checkout a.wc-block-checkout__login-prompt,
body.page-id-2497 .page-content .wc-block-checkout .woocommerce-form-login-toggle,
body.page-id-2497 .page-content .woocommerce-order a.wc-block-checkout__login-prompt,
body.page-id-2497 .page-content .woocommerce-order .woocommerce-form-login-toggle,
body.page-id-2497 .page-content .woocommerce a.wc-block-checkout__login-prompt,
body.page-id-2497 .page-content .woocommerce .woocommerce-form-login-toggle,
body.page-id-2497 .page-content #cmplz-document a.wc-block-checkout__login-prompt,
body.page-id-2497 .page-content #cmplz-document .woocommerce-form-login-toggle {
  display: none;
}
body.page-id-169 .page-content .wc-block-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-169 .page-content .wc-block-cart .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-169 .page-content .wc-block-checkout .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-169 .page-content .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-169 .page-content .woocommerce-order .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-169 .page-content .woocommerce-order .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-169 .page-content .woocommerce .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-169 .page-content .woocommerce .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-169 .page-content #cmplz-document .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-169 .page-content #cmplz-document .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-170 .page-content .wc-block-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-170 .page-content .wc-block-cart .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-170 .page-content .wc-block-checkout .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-170 .page-content .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-170 .page-content .woocommerce-order .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-170 .page-content .woocommerce-order .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-170 .page-content .woocommerce .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-170 .page-content .woocommerce .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-170 .page-content #cmplz-document .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-170 .page-content #cmplz-document .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-171 .page-content .wc-block-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-171 .page-content .wc-block-cart .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-171 .page-content .wc-block-checkout .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-171 .page-content .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-171 .page-content .woocommerce-order .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-171 .page-content .woocommerce-order .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-171 .page-content .woocommerce .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-171 .page-content .woocommerce .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-171 .page-content #cmplz-document .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-171 .page-content #cmplz-document .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-2497 .page-content .wc-block-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-2497 .page-content .wc-block-cart .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-2497 .page-content .wc-block-checkout .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-2497 .page-content .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-2497 .page-content .woocommerce-order .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-2497 .page-content .woocommerce-order .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-2497 .page-content .woocommerce .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-2497 .page-content .woocommerce .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
body.page-id-2497 .page-content #cmplz-document .wp-block-woocommerce-cart-order-summary-coupon-form-block,
body.page-id-2497 .page-content #cmplz-document .wp-block-woocommerce-checkout-order-summary-coupon-form-block {
  padding: 10px 5px;
  border-radius: 6px;
  border: 2px solid #f95604;
}
body.page-id-169 .page-content .wc-block-cart .continue-shopping-button,
body.page-id-169 .page-content .wc-block-checkout .continue-shopping-button,
body.page-id-169 .page-content .woocommerce-order .continue-shopping-button,
body.page-id-169 .page-content .woocommerce .continue-shopping-button,
body.page-id-169 .page-content #cmplz-document .continue-shopping-button,
body.page-id-170 .page-content .wc-block-cart .continue-shopping-button,
body.page-id-170 .page-content .wc-block-checkout .continue-shopping-button,
body.page-id-170 .page-content .woocommerce-order .continue-shopping-button,
body.page-id-170 .page-content .woocommerce .continue-shopping-button,
body.page-id-170 .page-content #cmplz-document .continue-shopping-button,
body.page-id-171 .page-content .wc-block-cart .continue-shopping-button,
body.page-id-171 .page-content .wc-block-checkout .continue-shopping-button,
body.page-id-171 .page-content .woocommerce-order .continue-shopping-button,
body.page-id-171 .page-content .woocommerce .continue-shopping-button,
body.page-id-171 .page-content #cmplz-document .continue-shopping-button,
body.page-id-2497 .page-content .wc-block-cart .continue-shopping-button,
body.page-id-2497 .page-content .wc-block-checkout .continue-shopping-button,
body.page-id-2497 .page-content .woocommerce-order .continue-shopping-button,
body.page-id-2497 .page-content .woocommerce .continue-shopping-button,
body.page-id-2497 .page-content #cmplz-document .continue-shopping-button {
  box-shadow: inherit;
  width: 100%;
  margin-top: 10px;
}
body.page-id-169 .page-content .wc-block-cart .continue-shopping-wrapper-checkout,
body.page-id-169 .page-content .wc-block-checkout .continue-shopping-wrapper-checkout,
body.page-id-169 .page-content .woocommerce-order .continue-shopping-wrapper-checkout,
body.page-id-169 .page-content .woocommerce .continue-shopping-wrapper-checkout,
body.page-id-169 .page-content #cmplz-document .continue-shopping-wrapper-checkout,
body.page-id-170 .page-content .wc-block-cart .continue-shopping-wrapper-checkout,
body.page-id-170 .page-content .wc-block-checkout .continue-shopping-wrapper-checkout,
body.page-id-170 .page-content .woocommerce-order .continue-shopping-wrapper-checkout,
body.page-id-170 .page-content .woocommerce .continue-shopping-wrapper-checkout,
body.page-id-170 .page-content #cmplz-document .continue-shopping-wrapper-checkout,
body.page-id-171 .page-content .wc-block-cart .continue-shopping-wrapper-checkout,
body.page-id-171 .page-content .wc-block-checkout .continue-shopping-wrapper-checkout,
body.page-id-171 .page-content .woocommerce-order .continue-shopping-wrapper-checkout,
body.page-id-171 .page-content .woocommerce .continue-shopping-wrapper-checkout,
body.page-id-171 .page-content #cmplz-document .continue-shopping-wrapper-checkout,
body.page-id-2497 .page-content .wc-block-cart .continue-shopping-wrapper-checkout,
body.page-id-2497 .page-content .wc-block-checkout .continue-shopping-wrapper-checkout,
body.page-id-2497 .page-content .woocommerce-order .continue-shopping-wrapper-checkout,
body.page-id-2497 .page-content .woocommerce .continue-shopping-wrapper-checkout,
body.page-id-2497 .page-content #cmplz-document .continue-shopping-wrapper-checkout {
  text-align: right;
  margin-top: 10px;
}
body.page-id-169 .page-content .wc-block-cart .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-169 .page-content .wc-block-checkout .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-169 .page-content .woocommerce-order .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-169 .page-content .woocommerce .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-169 .page-content #cmplz-document .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-170 .page-content .wc-block-cart .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-170 .page-content .wc-block-checkout .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-170 .page-content .woocommerce-order .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-170 .page-content .woocommerce .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-170 .page-content #cmplz-document .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-171 .page-content .wc-block-cart .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-171 .page-content .wc-block-checkout .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-171 .page-content .woocommerce-order .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-171 .page-content .woocommerce .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-171 .page-content #cmplz-document .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-2497 .page-content .wc-block-cart .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-2497 .page-content .wc-block-checkout .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-2497 .page-content .woocommerce-order .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-2497 .page-content .woocommerce .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout,
body.page-id-2497 .page-content #cmplz-document .continue-shopping-wrapper-checkout > a.continue-shopping-button-checkout {
  heght: 42px;
  font-size: 13px;
  box-shadow: inherit;
  text-decoration: inherit;
}

body.page-id-696 .content-area,
body.page-id-729 .content-area {
  margin-top: 30px;
}
body.page-id-696 .content-area > .elementor > .contact-section,
body.page-id-729 .content-area > .elementor > .contact-section {
  background: #15275a;
  max-width: 1140px;
  margin: 0 auto;
}

body.error404 .page-content {
  background: #15275a;
  border-radius: 12px;
  padding: 5px 20px;
  max-width: 960px;
  margin: 0 auto;
}

footer > div {
  justify-content: center;
}
footer > div .footer-widgets .widgets-area {
  display: flex;
  margin: 0 auto;
  gap: 100px;
  max-width: 600px;
  align-items: center;
  justify-content: center;
}
footer > div .footer-widgets .widgets-area img {
  width: 170px;
}
footer > div .footer-widgets .widgets-area .footer-links {
  display: flex;
  flex-direction: column;
}
footer > div .footer-widgets .widgets-area .footer-links .title, footer > div .footer-widgets .widgets-area .footer-links a {
  color: #15275a;
}
footer > div .footer-widgets .widgets-area .footer-links .title {
  font-weight: 900;
}
footer > div .footer-copyright {
  color: #15275a;
  font-size: 14px;
}
footer > div .footer-copyright a {
  margin-left: 4px;
}

.sms-login-section form, .sms-register-section form {
  border: 1px solid #cfc8d8;
  padding: 20px;
}
.sms-login-section form #sms_code, .sms-register-section form #sms_code {
  color: #000;
}

/*# sourceMappingURL=style.css.map */
