
/* Disable mobile toolbar  -------------------------------------------------- */
/*
@media (max-width:1199px){
  html[lang] { margin-top:0 !important }
  #wpadminbar { display:none }
}*/

/* Global ------------------------------------------------------------------- */
:root{
  accent-color: var(--primary);
}

@media (prefers-reduced-motion:no-preference) {
  :root {
      scroll-behavior: smooth
  }
}

*, ::after, ::before {
  box-sizing: border-box
}

::-moz-selection{ background:var(--primary-darker); color:var(--white) }
::selection{ background:var(--primary-darker); color:var(--white) }

/* Scrollbar */
/*
::-webkit-scrollbar { width:0.5em; min-width:10px }
::-webkit-scrollbar-track-piece { background:#f1f1f1; width:2px; -webkit-box-shadow:none }
::-webkit-scrollbar-thumb { background-color:#c1c1c1 }
::-webkit-scrollbar-thumb:hover { background:var(--primary) }
html { scrollbar-color:var(--blue) #f1f1f1; scrollbar-width:thin }
*/

html{ height:100%; font-size:inherit }
html{ overflow-x: hidden; } /* Fix Js Scroll event triggered by some css overflow */
body { color:var(--body-color); background:var(--body-bg); font-size: 1rem; font-family:var(--font-primary); line-height:var(--line-height) }
p { margin-bottom:1.5rem }

img{ max-width:100%; height:auto }
figcaption { font-size:.875em; }
kbd { color:var(--white); background-color:var(--black); }
mark { background-color:var(--bg-darker); color:var(--body-color); }

hr.space,
hr.transparent { background-color:transparent }

iframe{ vertical-align: middle }

a{ color:inherit; text-decoration:none }
a:hover{ text-decoration:underline }

[id]{ scroll-margin-top:var(--header-height-mobile) }
@media (min-width: 1200px) {
  [id]{ scroll-margin-top:calc(var(--header-height-sticky) - 1px) }
  body.admin-bar [id]{ scroll-margin-top:calc(var(--header-height-sticky) - 1px) }
}



/* Titles */
.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6 { font-family:var(--font-secondary); margin-bottom:1rem; line-height:1.2 }

.h1, h1 { font-size: calc(1.375rem + 1.5vw) }
@media (min-width: 1200px) {
  .h1, h1 { font-size:2.5rem  }
}

.h2, h2 { font-size: calc(1.325rem + .9vw) }
@media (min-width: 1200px) {
  .h2, h2 { font-size:2.3rem  }
}

.h3, h3 { font-size: calc(1.3rem + .6vw) }
@media (min-width: 1200px) {
  .h3, h3 { font-size:1.5rem; }
}

.h4, h4 { font-size: calc(1.275rem + .3vw) }
@media (min-width: 1200px) {
  .h4, h4 { font-size:1.25rem }
}

.h5, h5 { font-size: 1.15rem }
.h6, h6 { font-size: 1rem }

h2:not(:first-child) { margin-top: 3rem }

/* Blockquote */
blockquote { border-left:5px solid currentColor; background-color:var(--bg-darker); font-size:1.1rem; padding:1.5rem 2rem; font-weight:300 }
blockquote + figcaption{ font-size: .875em; margin-bottom: 1rem }
blockquote>:last-child { margin-bottom:0 }
blockquote>:last-child::before { content: "— " }


/* Table */
table { border-left: var(--border); border-top: var(--border);  border-collapse: separate; border-spacing:0; margin:0 0 1.5rem; width:100%; }
thead th { font-weight:700; text-transform: uppercase; font-family:var(--font-secondary) }
@media (min-width:992px){
  th, td { padding:1.3em; }
}
th, td { padding:.8em; }
caption, th, td { font-weight:400; text-align:left }
th, td { border: var(--border); border-width: 0 1px 1px 0; }

/* Lists */
ul ::marker,
ol ::marker{ color: var(--primary) }


/* Form fields -------------------------------------------------------------- */
input[type="text"],
input[type="name"],
input[type="url"],
input[type="tel"],
input[type="email"],
input[type="search"],
input[type="number"],
input[type="password"],
input[type="date"],
input[type="datetime-local"],
input[type="time"],
input[type="week"],
input[type="month"],
select,
textarea { color:var(--black); width:100%; background-color:#fff; border:var(--border); padding:12px 15px; border-radius:var(--border-radius); line-height:inherit }
textarea { resize:vertical }

input:focus,
textarea:focus{ outline:0; box-shadow:var(--box-shadow) }

select{ min-height:51px; padding:8px 15px }

/* Color */
input[type="color"]{ cursor: pointer; background-color: #fff; border: var(--border); height: 30px; width: 50px; padding: 5px; display: inline-block; vertical-align: middle; }
input[type="color"] ~ label { cursor: pointer; margin-left: 0.5rem; }
input[type="color"]::-webkit-color-swatch-wrapper { padding:0 }

/* Checkbox */
input[type="checkbox"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; width:1.3rem; height:1.3rem; vertical-align: text-bottom; outline: 0; cursor: pointer; box-shadow: 0 0 0 1px var(--primary); background: #fff }
input[type="checkbox"] ~ label { cursor: pointer; margin-left: 0.5rem; }
input[type="checkbox"]::-ms-check { display: none; }
input[type="checkbox"]:checked { background: var(--primary); border: 4px solid #fff }
input[type="checkbox"]:focus { box-shadow: 0 0 0 1px var(--primary), var(--box-shadow); outline:0 }

/* Radio */
input[type="radio"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; width:1.3rem; height:1.3rem; vertical-align: text-bottom; outline: 0; cursor: pointer; box-shadow: 0 0 0 1px var(--primary); border-radius: 2em; background: #fff }
input[type="radio"] ~ label { cursor: pointer; margin-left: 0.5rem; }
input[type="radio"]::-ms-check { display: none; }
input[type="radio"]:checked { background: var(--primary); border: 4px solid #fff }
input[type="radio"]:focus { box-shadow: 0 0 0 1px var(--primary), var(--box-shadow); outline:0 }

/* Placeholders */
::-webkit-input-placeholder { color: rgba(0, 0, 0, .5) }
::-moz-placeholder { color: rgba(0, 0, 0, .5) }
:-ms-input-placeholder { color: rgba(0, 0, 0, .5) }
:-moz-placeholder { color: rgba(0, 0, 0, .5) }

/* Change Autocomplete styles in Chrome*/
/* https://css-tricks.com/snippets/css/change-autocomplete-styles-webkit-browsers/ */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus { -webkit-box-shadow: 0 0 0px 100px #fff inset; /*-webkit-text-fill-color: green;*/ }

input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus { -webkit-box-shadow: 0 0 0px 100px #fff inset, var(--box-shadow); }



/* Tabs */
.tabs{ display:flex; margin:0; padding:0; list-style:none; margin:0 0 3rem 0; flex-wrap:wrap }
.tabs li button{ background:none; color:unset }
.tabs li button:hover,
.tabs li button:focus,
.tabs li button:active{ color:var(--primary); }
.tabs li.active button{ background:var(--primary); color: #fff; pointer-events: none; cursor: default; }




/* Container */
:is(header, footer, .layout-banner, .has-container) .container { width:var(--container-width); margin-left: auto; margin-right: auto; padding-left:var(--container-padding); padding-right:var(--container-padding) }
.container .container { padding-left:0; padding-right:0; width:100% }

/* WordPress Core classes  -------------------------------------------------- */
/* https://codex.wordpress.org/CSS#WordPress_Generated_Classes */

/*.alignnone { margin: 5px 20px 20px 0; }*/
.aligncenter,
div.aligncenter { display: block; margin: 5px auto 5px auto; }
.alignright { float:right; margin: 5px 0 20px 20px; }
.alignleft { float: left; margin: 5px 20px 20px 0; }
a img.alignright { float: right; margin: 5px 0 20px 20px; }
a img.alignnone { margin: 5px 20px 20px 0; }
a img.alignleft { float: left; margin: 5px 20px 20px 0; }
a img.aligncenter { display: block; margin-left: auto; margin-right: auto; }

.wp-caption { background: #fff; border: 1px solid #f0f0f0; max-width: 96%; /* Image does not overflow the content area */ padding: 5px 3px 10px; text-align: center; }
.wp-caption.alignnone { margin: 5px 20px 20px 0; }
.wp-caption.alignleft { margin: 5px 20px 20px 0; }
.wp-caption.alignright { margin: 5px 0 20px 20px; }
.wp-caption img { border: 0 none; height: auto; margin: 0; max-width: 98.5%; padding: 0; width: auto; }
.wp-caption p.wp-caption-text { font-size: 11px; line-height: 17px; margin: 0; padding: 0 4px 5px; }

.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
.screen-reader-text:focus { background-color: #eee; clip: auto !important; clip-path: none; color: #444; display: block; font-size: 1em; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }


/* Main */
.layout-wrapper{ margin:0 auto; min-height:100%; display:flex; flex-direction:column }
.layout-wrapper > main { flex:1 0 auto }

main{ --main-padding:5rem; padding:var(--main-padding) 0; position:relative }
main > .container.has-sidebar{ display:flex; align-items:flex-start;
  width: var(--container-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--container-padding);
  padding-right: var(--container-padding); }
@media (max-width:991px){
  main{ --main-padding:3rem }
  main > .container.has-sidebar{ flex-direction:column; align-items:stretch }
}

.layout-sidebar{ margin:0 3rem 3rem 0; padding:2rem 1.5rem; flex:0 0 300px; border:var(--border); border-radius:var(--border-radius); background-color:transparent; clear:both }
.layout-content{ width:100% }
.layout-content + .layout-sidebar{ margin-left:3rem; margin-right:0 }
@media (max-width:991px){
  .layout-sidebar{ margin-right:0; margin-bottom:1.5rem }
  .layout-content + .layout-sidebar{ margin-left:0; margin-top:1.5rem }
}

/* Header top --------------------------------------------------------------- */
.header-top{ padding:6px 0; border-bottom:var(--border); height:var(--header-height-top) }
.header-top-left,
.header-top-center,
.header-top-right { display:flex; gap:10px }
.header-top-left { justify-content:flex-start }
.header-top-center { justify-content:center }
.header-top-right { justify-content:flex-end }
@media (max-width:1199px){
  .header-top{ display:none }
}


/* Navigation --------------------------------------------------------------- */
.navigation ul{ list-style:none; padding:0; margin:0 }
@media (min-width:1200px){
  .navigation{ --bg-menu:var(--black) }
  .navigation ul{ transition: all 200ms ease }
  .navigation ul li{ position:relative; padding:0 }
  .navigation ul li a{ display: block; text-decoration: none; line-height:1.5rem; transition: all 200ms ease }
  .navigation ul li a:hover,
  .navigation ul li a:focus,
  .navigation ul li:hover > a,
  .navigation ul li:focus-within > a{ background:var(--bg-darker) }
  .navigation ul li.menu-item-has-children > a{ padding-right: 30px; }
  .navigation ul li.menu-item-has-children > a:after{ content:"❯"; font-size:0.75rem; font-weight:600; position: absolute; right: 10px; transform: rotate(90deg); transition: all 200ms ease }
  .navigation ul li.menu-item-has-children:hover > a:after,
  .navigation ul li.menu-item-has-children:focus-within > a:after{ transform: rotate(-90deg) }
  /* Lvl 1 */
  .navigation > div{ height:100% }
  .navigation > div > ul{ display: flex; height:var(--header-height) }
  .navigation > div > ul > li { align-items:center; display:flex }
  .navigation > div > ul > li > a{ display: inline-flex; padding:1.3rem .75rem; height:var(--header-height); align-items: center; position: relative }
  .navigation > div > ul > li > a:before{  content:''; display:block; position:absolute; left:0; width:100%; height:3px; background:var(--primary); bottom:0; transform:scaleX(0); transition:all 200ms ease }
  .bg-primary .navigation > div > ul > li > a:before{ background:#fff }

  .navigation > div > ul > li:focus > a:before,
  .navigation > div > ul > li:hover > a:before,
  .navigation > div > ul > li.current-anchor > a:before,
  .navigation > div > ul > li.current-menu-item > a:not([href*="#"]):before,
  .navigation > div > ul > li.current-menu-ancestor > a:not([href*="#"]):before{ transform:scaleX(1) }
  /* Lvl2 & more */
  .navigation ul ul{ display: block; opacity: 0; pointer-events: none; z-index: 2; width: 200px; display: block; position: absolute; top:100%; left:0; transform: translateY(-50px); box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.15) }
  .transparent-header-home .header.bg-primary .navigation ul ul{ background:var(--primary) }
  .transparent-header-home .header.bg-dark .navigation ul ul{ background:var(--dark) }
  .transparent-header-home .header.bg-light .navigation ul ul{ background:var(--light) }
  .navigation ul li:hover > ul,
  .navigation ul li:focus-within > ul{ opacity: 1; pointer-events: initial; transform:translateY(0) }
  .navigation ul ul li a{ padding:0.8rem 1rem; border-top: var(--border) }
  .navigation ul ul li.current-anchor > a,
  .navigation ul ul li.current-menu-item > a:not([href*="#"]),
  .navigation ul ul li.current-menu-ancestor > a:not([href*="#"]){ background:var(--bg-darker); cursor:default }
  .navigation ul ul li.menu-item-has-children > a:after{ transform: rotate(0deg) }
  .navigation ul ul li.menu-item-has-children:hover > a:after,
  .navigation ul ul li.menu-item-has-children:focus-within > a:after{ transform: rotate(180deg) }
  /* Lvl3 & more */
  .navigation ul ul ul{ top:0; left: 100%; transform: translateX(-50px) }
  .navigation ul ul li:hover > ul,
  .navigation ul ul li:focus-within > ul{ transform: translateX(0) }
  .navigation ul ul ul li:first-of-type > a{ border-top:1px solid var(--bg-menu) }

  /* Btn nav mobile */
  #toggle-nav{ display: none; }
}
@media (max-width:1199px){
  .navigation{ opacity:0; transform:translateY(50px); pointer-events:none; height:calc(100vh - var(--header-height-mobile)); overflow:auto; position:absolute; top:var(--header-height-mobile); left:0; width:100%; background:var(--black); border-top:var(--border); transition:all 200ms ease; }
  .navigation ul{ display: block }
  .navigation ul li{ position: relative; padding: 0; border-bottom:var(--border); cursor: pointer; }
  .bg-black .navigation ul li,
  .bg-dark .navigation ul li {  border-bottom:1px solid rgba(255, 255, 255, .15)  }
  .navigation ul li a { display: block; padding:10px 24px }
  .navigation ul li.menu-item-has-children > a{ margin-right:60px; border-right:var(--border) }
  .navigation ul li.menu-item-has-children > a:after{ content:"❯"; font-weight:600; pointer-events: none; position: absolute; top:9px; right:25px; transform: rotate(90deg);}
  .navigation ul li.current-anchor > a,
  .navigation ul li.current-menu-item > a:not([href*="#"]),
  .navigation ul li.current-menu-ancestor > a:not([href*="#"]){ background:var(--bg-darker); cursor:default }
  /* Header Nav Lvl 2 */
  .navigation ul ul{ display: none; border-top:var(--border) }
  .navigation ul ul.active{ display: block }
  .navigation ul ul > li:last-of-type{ border-bottom:none }
  .navigation ul ul > li > a{ padding-left: 30px; }
  .navigation ul ul ul > li > a{ padding-left: 45px; }
  body.js-navigation-opened{ overflow: hidden; }
  body.js-navigation-opened .navigation{ opacity: 1; transform: translateY(0); pointer-events: initial; }

  /* Btn nav mobile */
  #toggle-nav { width: 64px; height: 100%; cursor: pointer; padding: 16px; position: absolute; top: 0; right: 0; }
  #toggle-nav div { width: 100%; height: 4px; background:currentColor; margin: 5px auto; transition: all 0.3s; backface-visibility: hidden; }
  body.js-navigation-opened #toggle-nav .one { transform: rotate(45deg) translate(5px, 5px); }
  body.js-navigation-opened #toggle-nav .two { opacity: 0; }
  body.js-navigation-opened #toggle-nav .three { transform: rotate(-45deg) translate(7px, -8px); }
}

/* Header ------------------------------------------------------------------- */
.header-logo{ display:flex; align-items:center; gap:15px }
.header-logo:hover,
.header-logo:focus{ text-decoration:none }
.header-logo img{ width: auto; max-height: 85px; max-width: 250px; object-fit: contain; }
.header-logo .header-logo-text{ font-size:2rem; font-weight:600; font-family:var(--font-secondary); text-transform:uppercase; white-space:nowrap }
.header { position: relative }
.header div,
.header ul,
.header li,
.header nav{ background-color:inherit }
.header-fake-sticky{ display:none }
body:is(.is-sticky, .is-stick-up) .layout-wrapper > header{ position:fixed; left:0;top:0; width:100%; transition:all 200ms ease; }
body:is(.is-sticky, .is-stick-up) .header-fake-sticky{ display:block; height:var(--header-height); } 
body:is(.is-sticky, .is-stick-up).has-header-top .header-fake-sticky{ height:calc(var(--header-height) + var(--header-height-top)); } 
body.is-sticky-up.is-scroll-over-header.is-scroll-down:not(.js-navigation-opened) .layout-wrapper > header{ animation:200ms ease-in 1 forwards stickyHeaderClose }
body.is-sticky-up.is-scroll-up .layout-wrapper > header{  animation:200ms ease-in 1 forwards stickyHeader }
@keyframes stickyHeader{
  from{ transform:translateY(-101%) }
  to{ transform:translateY(0) }
}
@keyframes stickyHeaderClose{
  from{ transform:translateY(0) }
  to{ transform:translateY(-101%) }
}

@media (min-width:1200px){
  .layout-wrapper > header{ z-index:600 }
  .header{ height:var(--header-height); display:flex; align-items:center; transition: all 200ms ease; }
  .header > .container{ display:flex; justify-content:space-between; gap:2rem }
  .header-primary{ display:flex; align-items:center }
  .header-secondary{ display:flex; position:relative; justify-content:space-between }

  body.is-sticky.is-scroll-over-header .header{ --header-height:var(--header-height-sticky) }
  body.is-sticky.is-scroll-over-header .header-top{ display:none }
  body.is-sticky.is-scroll-over-header .layout-wrapper > header{ box-shadow: 0px 3px 5px rgba(0, 0, 0, .05) }
  body.is-sticky.admin-bar .layout-wrapper > header{ top:32px }

  /* Transparent header home */
  body.transparent-header-home .header div,
  body.transparent-header-home .header ul,
  body.transparent-header-home .header li,
  body.transparent-header-home .header nav{ background-color:transparent }
  body.transparent-header-home:not(.is-sticky) .header{ position: absolute; background:transparent !important; top: 0; left: 0; width: 100%; }
  body.transparent-header-home:not(.is-sticky) .header .sub-menu{ background:#fff !important }
  body.transparent-header-home.is-sticky .header{ background:#fff !important }
  body.transparent-header-home:not(.is-sticky) .header-top + .header{ top:var(--header-height-top) }
  body.transparent-header-home.admin-bar:not(.is-sticky) .header-top + .header{ top:calc(var(--header-height-top) + 32px ) }
  body.transparent-header-home:not(.is-sticky) .header + .header-fake-sticky{ display:none !important }
}
@media (max-width:1199px){
  .layout-wrapper > header { z-index:99; border-bottom:var(--border) }
  .layout-wrapper > header .container{ padding: 0; width: 100%; }
  .header-primary { height: var(--header-height-mobile); padding: 0 0 0 1.5rem; text-align: center; display: flex; justify-content: space-between; align-items: center; }
  .header-primary.layout-align-mobile-center { justify-content:center; padding:0 }

  .header-logo{ text-align: left; max-width: 50%; }
  .header-logo img{ max-height:40px }
  .header-logo .header-logo-text{ font-size:1.4rem; line-height: 1.4rem; }
  .header-logo img + .header-logo-text{ display: none; } /* On mobile do not display logo + text */

  .header-buttons { position: absolute; top: 0; right: var(--header-height-mobile); height: var(--header-height-mobile); }

  .sidebar-header{ display:none !important }
}


/* Footer ------------------------------------------------------------------- */
.layout-footer.footer--fullwidth{ --container-width:100%  }
.layout-footer .bg-dark + .bg-dark{ border-top: var(--border) }

.sidebar-footer-top{ padding:5rem 0 }

.layout-footer-copyright{ padding:2rem 0; font-size:0.9rem }
.layout-footer-copyright > .container{ display:flex; align-items:center; gap:1rem; justify-content: center; }
@media (max-width:991px) {
  .layout-footer-copyright { padding:1rem 0 }
  .layout-footer-copyright > .container{ flex-direction:column; align-items:center }
  .layout-footer-copyright .footer-copyright { padding:0 0 1rem 0 }
}

/* Top content sidebar ------------------------------------------------------ */
.sidebar-top{ padding:3rem 0 }



/* Cards */
.card { --padding-card:2rem; position:relative; display:flex; flex-direction:column; min-width:0; word-wrap:break-word; background-clip:border-box; border:var(--border); border-radius:var(--border-radius) }
.wp-block-column .card { padding:var(--padding-card); }
.card .card-image { position:relative; overflow:hidden; border-radius:var(--border-radius) var(--border-radius) 0 0 }
.card .card-image img{ width:100% }
.card .card-image-overlay{ background:rgba(0, 0, 0, .75); visibility:hidden; opacity:0; transition:all 0.4s ease; position:absolute; top:0; left:0; width:100%; height:100%; display:flex; align-items: center; justify-content: center }
.card:hover .card-image-overlay{ visibility:visible; opacity:1 }
.card .card-image-overlay a{ margin: 0 .5rem }
.card .card-body { flex:1 1 auto; padding:var(--padding-card); display: flex; flex-direction: column; align-items: flex-start; }
.card .card-body .card-image{ margin-bottom:2rem }
.card .card-body .button{ margin-top:auto }
.card .card-body > :last-child{ margin-bottom:0 }
@media (min-width:1200px){
  .card { --padding-card:2.5rem }
}

/* Card info */
.card.card-info { padding:3rem 2rem 2rem 2rem; margin-top: 2rem; margin-bottom:2rem }
.layout-content .card.card-info { max-width:100%  }
.card.card-info h3 { margin-top:1rem }
.card.card-info .wp-block-column { margin-bottom:1rem }
.card.card-info.card-info2 > .wp-block-group__inner-container,
.card.card-info.card-info3 > .wp-block-group__inner-container { display:flex; /* align-items:center; */ gap: 30px; }
@media (max-width:550px){
  .card.card-info.card-info2 > .wp-block-group__inner-container,
  .card.card-info.card-info3 > .wp-block-group__inner-container { flex-direction:column }
}


/* Galerie ------------------------------------------------------------------ */
.galerie-custom .card-image-overlay svg{ width:24px; fill:white }

/* Page 404 ----------------------------------------------------------------- */
.error404 main { text-align:center }
.error404 main h1{ color: var(--primary); font-size: 6.5rem; margin: 0 0 1rem 0 }

/* Page Links --------------------------------------------------------------- */
.page-links a { border-radius: 2px; display: inline-block; border: 0 none; font-size: 14px; font-weight: 600; line-height: 20px; margin: 0px 3px 3px; padding: 7px 18px; text-align: center; transition: all 0.4s ease 0s; }
.page-links a:hover,
.page-links a:focus { text-decoration: none; }

/* Skip-links --------------------------------------------------------------- */
.skip-links{ position: absolute; z-index: 999; left: 50%; transform: translateX(-50%);  }
.skip-links a{ position: absolute; top: -9999px; opacity: 0; transition: opacity 300ms ease; background:var(--blue); color:#fff; padding: 1rem 2rem; text-decoration: none; display: inline-block; }
.skip-links a:focus{ position: static; opacity:1 }

/* Scroll top Button -------------------------------------------------------- */
a.btn-go-top{ background-color: var(--primary); filter: brightness(0.9); color: #fff; z-index: 90; bottom: 1.3rem; display: none; opacity: 1; padding: 0; border-radius: var(--border-radius); position: fixed; right: 1.3rem; width: 60px; height: 60px; line-height: 53px; text-align: center; }
a.btn-go-top svg{ width:20px; fill:#fff }

/* Widgets ------------------------------------------------------------------ */
.widget{ clear:both }
.widget ul:not([class*="wp-block"]){ padding:0; list-style:none; margin: 0; }
.widget ul:not([class*="wp-block"]) li{ padding: 10px 0; position: relative; border-top: var(--border); }
.widget ul:not([class*="wp-block"]) li:first-of-type{ border-top:none }
.widget ul:not([class*="wp-block"]) li ul { position: relative; top: 10px; }
.widget ul:not([class*="wp-block"]) li ul li:first-of-type{ border-top: var(--border); }
.widget ul:not([class*="wp-block"]) li ul li { padding-left: 10px; border-bottom:none }

/* Widget in header */
header .widget{ margin:0 .5rem; display:inline-block }
header .widget:first-child{ margin-left:0 }
header .widget:last-child{ margin-right:0 }

/* Widget - Gutenberg blocks */
.widget .wp-block-group h2 { font-size: 1.5rem }

/* Widget - Gallery */
.widget .gallery { grid-gap:15px }


/* Blog Pagination & Woocommerce pagination --------------------------------- */
/*
  1.  #main-content pour la spécificité
  2.  [class*="pagination"] pour cibler les différentes paginations
  3.  :not(ul) car le <ul> de la pagination woocommerce a aussi la classe .page-numbers
*/
#main-content [class*="pagination"]{ margin: 3rem 0 0 0; display:block; text-align: center; }
#main-content [class*="pagination"] *{ border:none; margin:0; overflow:hidden; text-align:center }
#main-content [class*="pagination"] .page-numbers i{ vertical-align:bottom }
#main-content [class*="pagination"] .page-numbers:not(ul){ border-radius:var(--border-radius); background-color:#fff; border:var(--border); color:#242526; cursor:pointer; display:inline-block; font-weight:600;
  transition:all 0.3s ease 0s; font-size:18px; line-height:20px; margin:0 3px 10px; padding:8px; white-space:nowrap; width:40px; height:40px; }
#main-content [class*="pagination"] .page-numbers:not(ul):hover,
#main-content [class*="pagination"] .page-numbers:not(ul):focus,
#main-content [class*="pagination"] .page-numbers:not(ul).current{ border-color: var(--primary); background-color: var(--primary); color:#FFF; text-decoration: none; }
#main-content [class*="pagination"] .page-numbers:not(ul).prev,
#main-content [class*="pagination"] .page-numbers:not(ul).next{ min-width: 150px; }
@media (max-width:767px){
  #main-content [class*="pagination"] .page-numbers:not(ul) { font-size: 16px; padding: 8px 4px; width: 30px; }
  #main-content [class*="pagination"] .page-numbers:not(ul).prev,
  #main-content [class*="pagination"] .page-numbers:not(ul).next{ display: none; }
}


.masonry .card-image img{transition:all 200ms ease }
.masonry .card-image:hover img{ opacity: .85; }

/* Lightspeed cache Lazy Load */
img[data-lazyloaded]{ opacity:0 }
img.litespeed-loaded{ transition:all .15s linear .02s; opacity:1 }


/* BLOCS ------------------------------ */

/* Blog */
article p a{ color:var(--secondary); }
article p a:is(:hover, :focus){ text-decoration: underline; }
