@charset "UTF-8";
/*!
 Theme Name:   Parc Naturel des Hautes Fagnes Eifel
 Theme URI:    http://www.botrange.be/
 Description:  Parc Naturel des Hautes Fagnes Eifel
 Author:       Visible
 Author URI:   https://www.visible.be
 Template:     layers-elementor
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  pnhf
*/
:root {
  --theme-color-primary: #E8CC00;
  --theme-color-secondary: #006445;
  --theme-color-secondary-tr: #006445A8;
  --theme-color-tertiary: #95c23d;
  --theme-color-quatro: #d3a300;
  --theme-color-dark: #0a0a0a;
  --theme-color-white: #fff;
  --theme-color-red: #ae3c00;
  --theme-color-success: #95C23D;
  --theme-color-warning: #E27F13;
  --theme-color-danger: #AE3C00;
  --theme-color-gray-900: #1f1f1f;
  --theme-color-gray-700: #505050;
  --theme-color-gray-600: #848484;
  --theme-color-gray-500: #A5A5A5;
  --theme-color-gray-300: #DDDDDD;
  --theme-color-gray-100: #F2F2F2;
  --icon-primary-color: #1f1f1f;
  --icon-accent-color: #9cc31b;
  --icon-context-color: #9cc31b;
  --icon-bottom-color: #ffffff;
  --max-container-width: 1480px;
  --social-color-yt: #FF0000;
  --social-color-fb: #4267B2;
  --social-color-ig: #F56040;
  --social-color-share: #d3a300;
  --loop-item-color: var(--theme-color-white);
  --loop-item-bg-color: var(--theme-color-primary);
  --loop-item-bg-color-hover: var(--theme-color-quatro);
  --theme-border-radius: 20px;
  --theme-block-gap: 20px;
  --font-text: normal 17px/1.35 400 Roboto, Helvetica, sans-serif;
  --font-title: normal 17px/1.35 700 Roboto Slab, Helvetica, sans-serif;
  --icon-size: 24px;
  --bp-tablet: 768px;
  --bp-desktop: 1024px;
  --bp-md: 768px;
  --bp-lg: 1024px;
  --bp-xl: 1200px;
  --bp-xxl: 1420px; }

.no-break {
  -webkit-column-break-inside: avoid;
          break-inside: avoid; }

.elementor-column-gap-default > .elementor-column.section-responsive-padding > .elementor-widget-wrap.elementor-element-populated {
  margin: 10px;
  padding: 20px;
  padding: clamp(20px, calc(10px + 2vw), 50px); }
  body.elementor-device-desktop .elementor-column-gap-default > .elementor-column.section-responsive-padding > .elementor-widget-wrap.elementor-element-populated,
  body[data-elementor-device-mode="desktop"] .elementor-column-gap-default > .elementor-column.section-responsive-padding > .elementor-widget-wrap.elementor-element-populated {
    padding: clamp(20px, calc(10px + 3vw), 50px) clamp(25px, calc(15px + 4vw), 60px); }

.formCheckBoxBase label, form.elementor-form .elementor-field-type-acceptance .elementor-field-option label, form.elementor-form .elementor-field-type-checkbox .elementor-field-option label, .booking_form .reservation-container .form-item.form-checkbox label {
  color: var(--theme-color-gray-900);
  padding-left: 22px;
  position: relative;
  display: inline-block; }

.formCheckBoxBase input, form.elementor-form .elementor-field-type-acceptance .elementor-field-option input, form.elementor-form .elementor-field-type-checkbox .elementor-field-option input, .booking_form .reservation-container .form-item.form-checkbox input {
  display: none; }

.formCheckBoxBase input ~ label::before, form.elementor-form .elementor-field-type-acceptance .elementor-field-option input ~ label::before, form.elementor-form .elementor-field-type-checkbox .elementor-field-option input ~ label::before, .booking_form .reservation-container .form-item.form-checkbox input ~ label::before {
  content: "";
  width: 16px;
  height: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  border-radius: 4px;
  color: transparent;
  border: 2px solid var(--theme-color-primary);
  background-color: transparent;
  position: absolute;
  left: 0;
  -webkit-transition: all 200ms ease-in-out;
  -o-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out; }

.formCheckBoxBase input:checked ~ label::before, form.elementor-form .elementor-field-type-acceptance .elementor-field-option input:checked ~ label::before, form.elementor-form .elementor-field-type-checkbox .elementor-field-option input:checked ~ label::before, .booking_form .reservation-container .form-item.form-checkbox input:checked ~ label::before {
  content: '✓';
  color: #fff;
  background-color: var(--theme-color-quatro);
  border-color: var(--theme-color-quatro); }

.svg-clip {
  width: 0;
  height: 0; }

html {
  scroll-behavior: smooth; }

body {
  font-style: normal;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 400;
  font-family: Roboto, Helvetica, sans-serif;
  color: var(--theme-color-gray-900); }

.elementor-widget-theme-post-content p:not(:first-child), .elementor-widget-theme-post-content ul:not(:first-child), .elementor-widget-theme-post-content ol:not(:first-child), .elementor-widget-theme-post-content h1:not(:first-child), .elementor-widget-theme-post-content h2:not(:first-child), .elementor-widget-theme-post-content h3:not(:first-child), .elementor-widget-theme-post-content h4:not(:first-child), .elementor-widget-theme-post-content h5:not(:first-child), .elementor-widget-theme-post-content h6:not(:first-child), .elementor-widget-theme-post-content quote:not(:first-child),
.elementor-widget-text-editor p:not(:first-child),
.elementor-widget-text-editor ul:not(:first-child),
.elementor-widget-text-editor ol:not(:first-child),
.elementor-widget-text-editor h1:not(:first-child),
.elementor-widget-text-editor h2:not(:first-child),
.elementor-widget-text-editor h3:not(:first-child),
.elementor-widget-text-editor h4:not(:first-child),
.elementor-widget-text-editor h5:not(:first-child),
.elementor-widget-text-editor h6:not(:first-child),
.elementor-widget-text-editor quote:not(:first-child) {
  margin-top: 1em;
  margin-bottom: 0; }

.elementor-widget-theme-post-content ul,
.elementor-widget-text-editor ul {
  padding-left: 1em;
  list-style-type: disc;
  list-style-position: inside; }
  .elementor-widget-theme-post-content ul > li,
  .elementor-widget-text-editor ul > li {
    list-style-type: disc; }
    .elementor-widget-theme-post-content ul > li::marker,
    .elementor-widget-text-editor ul > li::marker {
      color: var(--theme-color-secondary); }
  .elementor-widget-theme-post-content ul > li + li,
  .elementor-widget-text-editor ul > li + li {
    margin-top: .5em; }

.elementor-location-single.post.type-post > .elementor-section-wrap > .elementor-top-section:not(:first-child) > .elementor-container {
  padding: 0 15px; }

.elementor-widget-heading .elementor-heading-title[class*=elementor-size-] > a {
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  font-family: inherit;
  font-weight: inherit; }

.section-title.large .heading,
h1.heading {
  padding: 0 10px;
  font: normal 17px/1.35 700 Roboto Slab, Helvetica, sans-serif;
  font-size: 30px;
  font-weight: 700;
  color: var(--theme-color-secondary); }

.elementor-section.primary-nav {
  z-index: 1;
  position: relative;
  --logo-width: 75px; }
  .elementor-section.primary-nav::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: 0; }
  .elementor-section.primary-nav > .elementor-container {
    width: auto; }
  .elementor-section.primary-nav .logo-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
    font-size: 20px;
    max-width: 100%;
    min-width: 125px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
            justify-content: center; }
    .elementor-section.primary-nav .logo-container .logo {
      width: var(--logo-width);
      height: calc( 1.405 * var(--logo-width));
      margin-top: -50px; }
    .elementor-section.primary-nav .logo-container .slogan {
      margin: 1em 0 1em 1em;
      color: var(--theme-color-primary);
      font-weight: 700;
      font-family: "Roboto Slab", serif;
      text-transform: uppercase;
      line-height: 0.9;
      font-size: 1em; }
      .elementor-section.primary-nav .logo-container .slogan b, .elementor-section.primary-nav .logo-container .slogan strong {
        font-size: 1.3333em; }
        html[lang="en-US"] .elementor-section.primary-nav .logo-container .slogan b,
        html[lang="de-DE"] .elementor-section.primary-nav .logo-container .slogan b, html[lang="en-US"] .elementor-section.primary-nav .logo-container .slogan strong,
        html[lang="de-DE"] .elementor-section.primary-nav .logo-container .slogan strong {
          font-size: 0.96em; }
        html[lang="nl-NL"] .elementor-section.primary-nav .logo-container .slogan b, html[lang="nl-NL"] .elementor-section.primary-nav .logo-container .slogan strong {
          font-size: 1.12em; }
  .elementor-section.primary-nav .nav-container {
    width: auto;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
            flex: 1 1 auto; }
    .elementor-section.primary-nav .nav-container ul.elementor-nav-menu {
      gap: 0;
      margin-left: 0;
      display: grid;
      grid-template-columns: repeat(1, 1fr); }
      .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
                flex: 0 0 100%;
        border-bottom: 1px solid #fff;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
                flex-direction: column; }
        .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item > a {
          color: var(--theme-color-white);
          text-align: center;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-box-flex: 1;
          -webkit-flex: 1 1 auto;
                  flex: 1 1 auto;
          -webkit-box-align: center;
          -webkit-align-items: center;
                  align-items: center;
          -webkit-box-pack: start;
          -webkit-justify-content: flex-start;
                  justify-content: flex-start;
          padding: .75rem 1rem; }
          .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item > a ._mi {
            display: block;
            width: 32px;
            height: 32px;
            -webkit-filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(38deg) brightness(107%) contrast(101%);
                    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(38deg) brightness(107%) contrast(101%); }
          .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item > a:hover {
            color: var(--theme-color-primary); }
            .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item > a:hover ._mi {
              -webkit-filter: invert(69%) sepia(91%) saturate(1078%) hue-rotate(9deg) brightness(102%) contrast(101%);
                      filter: invert(69%) sepia(91%) saturate(1078%) hue-rotate(9deg) brightness(102%) contrast(101%); }

.secondary-nav {
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
          order: -1;
  border-bottom: 1px solid #fff; }

nav#breadcrumbs {
  color: var(--theme-color-primary);
  font-weight: bold;
  text-transform: uppercase;
  font-family: "Roboto Slab", Helvetica, sans-serif; }
  nav#breadcrumbs span {
    text-transform: none;
    font-weight: 500;
    font-family: Roboto, Helvetica, sans-serif; }
  nav#breadcrumbs a {
    font-weight: 500;
    color: var(--theme-color-gray-500); }
  nav#breadcrumbs .breadcrumb_last {
    color: var(--theme-color-secondary);
    font-weight: bold; }

ul.menu-parcs {
  -webkit-column-count: 1;
     -moz-column-count: 1;
          column-count: 1;
  -webkit-column-gap: 50px;
     -moz-column-gap: 50px;
          column-gap: 50px;
  -webkit-column-rule: 1px solid var(--theme-color-gray-100);
     -moz-column-rule: 1px solid var(--theme-color-gray-100);
          column-rule: 1px solid var(--theme-color-gray-100); }
  ul.menu-parcs li {
    font-size: 15px;
    color: var(--theme-color-quatro);
    font-weight: 500; }
    ul.menu-parcs li::marker {
      content: '›'; }
    ul.menu-parcs li a {
      text-transform: uppercase;
      color: var(--theme-color-quatro);
      padding: 7px 7px;
      display: block; }
      ul.menu-parcs li a:hover {
        color: var(--theme-color-primary); }

.block-opening-hours {
  -webkit-column-rule: 1px solid #fff;
     -moz-column-rule: 1px solid #fff;
          column-rule: 1px solid #fff; }
  .block-opening-hours table.opening-hours {
    border: none; }
    .block-opening-hours table.opening-hours td, .block-opening-hours table.opening-hours th {
      border: none;
      padding: 0px; }

form#contact_form {
  --field-bg: #ffffff; }

form.elementor-form {
  --field-bg: #f0f0f0;
  accent-color: var(--theme-color-quatro); }
  form.elementor-form label {
    color: var(--theme-color-primary); }
  form.elementor-form .elementor-field-type-textarea.elementor-field-group,
  form.elementor-form .elementor-field-type-email.elementor-field-group,
  form.elementor-form .elementor-field-type-text.elementor-field-group,
  form.elementor-form .elementor-field-type-tel.elementor-field-group {
    position: relative;
    margin-top: 1rem; }
    form.elementor-form .elementor-field-type-textarea.elementor-field-group label,
    form.elementor-form .elementor-field-type-email.elementor-field-group label,
    form.elementor-form .elementor-field-type-text.elementor-field-group label,
    form.elementor-form .elementor-field-type-tel.elementor-field-group label {
      color: var(--theme-color-primary);
      font-style: italic; }
  form.elementor-form .elementor-field-type-tel.elementor-field-group label,
  form.elementor-form .elementor-field-type-textarea.elementor-field-group label,
  form.elementor-form .elementor-field-type-email.elementor-field-group label,
  form.elementor-form .elementor-field-type-text.elementor-field-group label {
    position: absolute;
    left: 25px;
    top: 16.8px;
    -webkit-transition: all 250ms ease;
    -o-transition: all 250ms ease;
    transition: all 250ms ease; }
  form.elementor-form .elementor-field-type-textarea.elementor-field-group.active label,
  form.elementor-form .elementor-field-type-email.elementor-field-group.active label,
  form.elementor-form .elementor-field-type-tel.elementor-field-group.active label,
  form.elementor-form .elementor-field-type-text.elementor-field-group.active label {
    position: absolute;
    left: 25px;
    top: 6px;
    font-size: 10px;
    color: var(--theme-color-gray-600);
    font-style: normal;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-weight: 400; }
  form.elementor-form .elementor-field-textual {
    border: none;
    font-size: 16px;
    line-height: 22px;
    padding: 16.8px 25px 11.2px 25px;
    border-radius: 25px;
    height: 50px;
    background-color: var(--field-bg); }
    form.elementor-form .elementor-field-textual:is(textarea) {
      height: 200px; }
  form.elementor-form .elementor-field-type-acceptance label,
  form.elementor-form .elementor-field-type-checkbox label {
    font-weight: normal; }
  form.elementor-form .elementor-field-type-acceptance .elementor-field-option,
  form.elementor-form .elementor-field-type-checkbox .elementor-field-option {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex; }
    form.elementor-form .elementor-field-type-acceptance .elementor-field-option input,
    form.elementor-form .elementor-field-type-checkbox .elementor-field-option input {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
              flex: 0 0 auto;
      margin-right: 15px; }
    form.elementor-form .elementor-field-type-acceptance .elementor-field-option label,
    form.elementor-form .elementor-field-type-checkbox .elementor-field-option label {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 auto;
              flex: 1 1 auto;
      padding-left: 22px;
      position: relative; }
  form.elementor-form .elementor-field-type-select {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
    -webkit-flex-wrap: nowrap;
            flex-wrap: nowrap; }
    form.elementor-form .elementor-field-type-select label {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
              flex: 0 0 auto;
      padding-right: 1em; }
    form.elementor-form .elementor-field-type-select > span {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 auto;
              flex: 1 1 auto; }
    form.elementor-form .elementor-field-type-select input, form.elementor-form .elementor-field-type-select select {
      border: none; }
  form.elementor-form .elementor-field-type-submit {
    margin-top: 1rem; }
    form.elementor-form .elementor-field-type-submit button {
      -webkit-transition: all 250ms ease;
      -o-transition: all 250ms ease;
      transition: all 250ms ease; }
      form.elementor-form .elementor-field-type-submit button:hover {
        letter-spacing: 0.15em; }

:root {
  --wdgt-icon-size-max: 75px;
  --wdgt-spacing: 15px;
  --wdgt-padding: 15px; }

/** HEADER CONTAINER **/
.header-widget-container {
  border-top: 1px solid #fff;
  margin-left: -1px; }
  .header-widget-container .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
    padding: 0; }
  .header-widget-container .slick-track {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    margin-left: auto; }
    .header-widget-container .slick-track .slick-slide {
      border-left: 1px solid #fff;
      aspect-ratio: 1/1;
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 auto;
              flex: 1 1 auto;
      max-width: 210px;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
              justify-content: center; }

/*** WIDGETS ***/
.tpl-pnhf-el-wdgt--icon {
  font-size: var(--wdgt-icon-size);
  max-width: var(--wdgt-icon-size); }
  .tpl-pnhf-el-wdgt--icon .lws-icon-value,
  .tpl-pnhf-el-wdgt--icon img, .tpl-pnhf-el-wdgt--icon svg {
    width: 1em;
    height: 1em;
    font-size: var(--wdgt-icon-size); }

.pnhf-el-wdgt {
  --icon-primary-color: #fff;
  padding: var(--wdgt-padding); }
  .pnhf-el-wdgt .elementor-widget:not(:last-child) {
    margin-bottom: 0; }
  .pnhf-el-wdgt .elementor-icon-box-wrapper .elementor-icon-box-icon {
    font-size: var(--wdgt-icon-size-max);
    max-width: 1em;
    max-height: 1em;
    margin: 0 auto .2em auto; }
    .pnhf-el-wdgt .elementor-icon-box-wrapper .elementor-icon-box-icon .elementor-icon {
      font-size: 1em; }
    .pnhf-el-wdgt .elementor-icon-box-wrapper .elementor-icon-box-icon svg, .pnhf-el-wdgt .elementor-icon-box-wrapper .elementor-icon-box-icon img {
      width: 1em;
      height: 1em;
      -o-object-fit: contain;
         object-fit: contain; }
  .pnhf-el-wdgt .elementor-icon-box-wrapper .elementor-icon-box-title, .pnhf-el-wdgt .elementor-icon-box-wrapper .elementor-icon-box-title a {
    font-weight: bold;
    font-size: 17px;
    line-height: 1.2;
    text-transform: none; }
  .pnhf-el-wdgt .pnhf-el-wdgt--icon {
    font-size: var(--wdgt-icon-size-max);
    max-width: 1em;
    max-height: 1em;
    display: block;
    margin: 0 auto .2em auto; }
  .pnhf-el-wdgt--icon-text .elementor-icon svg {
    fill: #fff; }
  .pnhf-el-wdgt .pnhf-el-wdgt--title:is(h4) {
    font: var(--font-text);
    color: #ffffff;
    text-transform: none; }
  .pnhf-el-wdgt .pnhf-el-wdgt--info:is(h5) {
    font: var(--font-text);
    color: var(--theme-color-quatro);
    font-weight: bold;
    text-transform: none; }
  .pnhf-el-wdgt.pnhf-access-ok {
    --icon-accent-color: var(--theme-color-success); }
  .pnhf-el-wdgt.pnhf-access-limited {
    --icon-accent-color: var(--theme-color-success); }
  .pnhf-el-wdgt.pnhf-access-ko {
    --icon-accent-color: var(--theme-color-danger); }
  .pnhf-el-wdgt--weather {
    color: #fff; }

.pnhf-el-wdgt--weather {
  color: #fff;
  --icon-primary-color: #fff; }
  .pnhf-el-wdgt--weather--icon .lws-icon-value {
    font-size: calc(var(--wdgt-icon-size-max) / 1.3);
    margin-bottom: 0.2em;
    line-height: 1;
    color: currentColor;
    text-align: center;
    width: 100%;
    display: block; }
    .pnhf-el-wdgt--weather--icon .lws-icon-value .wi.ico-size-1 {
      font-size: 1em !important; }
  .pnhf-el-wdgt--weather--temp {
    color: currentColor;
    font: var(--font-title);
    font-weight: 600;
    font-size: calc(var(--wdgt-icon-size-max)/1.75);
    letter-spacing: -0.1em;
    text-align: center; }
  .pnhf-el-wdgt--weather--info {
    color: currentColor;
    font-size: 17px; }
    .pnhf-el-wdgt--weather--info:first-letter {
      text-transform: uppercase; }

.pnhf-weather--icon {
  color: #fff; }
  .pnhf-weather--icon .lws-icon-value {
    font-size: 70px;
    color: currentColor;
    text-align: center; }
  .pnhf-weather--icon .pnhh-weather--temp, .pnhf-weather--icon .pnhf-weather--temp {
    color: currentColor;
    font: var(--font-title);
    font-size: 45px;
    text-align: center; }
  .pnhf-weather--icon .pnhf-weather-info {
    font-size: 17px; }

.ecs-post-loop > .container {
  width: 100%; }

.elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .elementor-post, .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .post {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: stretch;
  -webkit-justify-content: stretch;
          justify-content: stretch;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1; }
  .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .elementor-post .elementor-section-wrap, .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .post .elementor-section-wrap {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: stretch;
    -webkit-justify-content: stretch;
            justify-content: stretch; }
    .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .elementor-post .elementor-section-wrap > .elementor-section, .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .post .elementor-section-wrap > .elementor-section {
      -webkit-box-flex: 1;
      -webkit-flex: 1;
              flex: 1; }
      .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .elementor-post .elementor-section-wrap > .elementor-section > .elementor-container, .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .elementor-post .elementor-section-wrap > .elementor-section > .elementor-container > .elementor-column, .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .post .elementor-section-wrap > .elementor-section > .elementor-container, .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .post .elementor-section-wrap > .elementor-section > .elementor-container > .elementor-column {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
                flex: 1;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: stretch;
        -webkit-justify-content: stretch;
                justify-content: stretch; }
      .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .elementor-post .elementor-section-wrap > .elementor-section .elementor-widget-image, .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .post .elementor-section-wrap > .elementor-section .elementor-widget-image {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
                flex: 0 0 auto; }
      .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .elementor-post .elementor-section-wrap > .elementor-section .loop-item-content-wrapper, .elementor-widget.elementor-widget-posts .elementor-posts.elementor-posts--skin-custom .post .elementor-section-wrap > .elementor-section .loop-item-content-wrapper {
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 auto;
                flex: 1 1 auto; }

.elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex; }
  .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__card {
    border-radius: var(--theme-border-radius);
    overflow: hidden;
    background: var(--loop-item-bg-color);
    -webkit-transition: background-color 150ms ease;
    -o-transition: background-color 150ms ease;
    transition: background-color 150ms ease; }
    .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__card:hover {
      --loop-item-bg-color: var(--loop-item-bg-color-hover); }
      .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__card:hover .elementor-post__thumbnail img {
        width: 110%; }
    .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__card .elementor-post__title a,
    .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__card .elementor-post__excerpt p,
    .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__card .elementor-post__read-more {
      color: var(--loop-item-color); }
  .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__thumbnail__link {
    overflow: hidden;
    margin-bottom: 0; }
  .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__thumbnail {
    -webkit-clip-path: url("#publi-clip-path");
            clip-path: url("#publi-clip-path"); }
    .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__thumbnail img {
      -webkit-transition: width 150ms ease;
      -o-transition: width 150ms ease;
      transition: width 150ms ease; }
    .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__thumbnail::after {
      display: none; }
  .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__text {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
            flex: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column; }
    .elementor-widget.elementor-widget-posts .elementor-widget-container .elementor-posts-container > .elementor-post .elementor-post__text .elementor-post__read-more {
      margin-top: auto; }

.agenda-loop-item .elementor-flip-box {
  border-radius: 20px;
  overflow: hidden;
  -webkit-transition: -webkit-box-shadow 300ms ease;
  transition: -webkit-box-shadow 300ms ease;
  -o-transition: box-shadow 300ms ease;
  transition: box-shadow 300ms ease;
  transition: box-shadow 300ms ease, -webkit-box-shadow 300ms ease; }
  .agenda-loop-item .elementor-flip-box:hover {
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.25);
            box-shadow: 0 0 30px rgba(0, 0, 0, 0.25); }

.agenda-loop-item .elementor-widget-flip-box .elementor-flip-box__front .elementor-flip-box__layer__title::after {
  content: "";
  width: 50px;
  height: 4px;
  border-radius: 2px;
  background-color: var(--theme-color-primary);
  margin-top: .5em;
  display: block; }

.agenda-loop-item .elementor-flip-box__back {
  -webkit-background-size: 33% 33% !important;
          background-size: 33% !important;
  background-position: 85% 140%; }

:root {
  --rules-list-block-gap: 20px;
  --rules-list-cols: 1; }

.rules-list ol {
  color: #fff;
  counter-reset: rules;
  display: grid;
  -webkit-column-gap: var(--rules-list-block-gap);
     -moz-column-gap: var(--rules-list-block-gap);
          column-gap: var(--rules-list-block-gap);
  grid-template-columns: repeat(var(--rules-list-cols), 1fr); }
  .rules-list ol > li {
    padding-top: var(--rules-list-block-gap);
    padding-bottom: var(--rules-list-block-gap);
    border-top: 1px solid #fff; }
  .rules-list ol > li:nth-child(1), .rules-list ol > li:nth-child(2) {
    border-top: none; }
  .rules-list ol > li::before {
    counter-increment: rules;
    /* On incrémente le compteur section */
    content: counter(rules);
    /* On affiche le compteur */
    font-size: 35px;
    font-weight: bold;
    color: var(--theme-color-quatro);
    display: block; }

.form-item-base, .booking_form .reservation-container .form-item.form-text, .booking_form .reservation-container .form-item.form-select {
  position: relative;
  background: #fff;
  min-height: 50px;
  border-radius: 30px;
  padding: 7px 25px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }
  .form-item-base label, .booking_form .reservation-container .form-item.form-text label, .booking_form .reservation-container .form-item.form-select label {
    color: var(--theme-color-primary);
    font-style: italic; }

.booking_form .reservation-container .submiting_content.wpdev-help-message.alert.alert-warning.alert-success {
  background-color: var(--theme-color-secondary);
  border: none;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  opacity: 1 !important; }

.booking_form .reservation-container table.datepick {
  font-family: Roboto;
  text-shadow: none !important; }

.booking_form .reservation-container .block_hints .block_free a, .booking_form .reservation-container .block_hints .block_time, .booking_form .reservation-container .datepick-inline .date_available a {
  text-shadow: none; }

.booking_form .reservation-container .block_hints .block_free, .booking_form .reservation-container .block_hints .block_time, .booking_form .reservation-container .block_hints .block_check_in_out div.check-in-div, .booking_form .reservation-container .block_hints .block_check_in_out div.check-out-div, .booking_form .reservation-container .datepick-inline .date_available, .booking_form .reservation-container .datepick-inline .timespartly.check_in_time div.check-in-div, .booking_form .reservation-container .datepick-inline .timespartly.check_out_time div.check-out-div {
  background-color: var(--theme-color-tertiary); }

.booking_form .reservation-container .block_hints .date_approved.block_check_in_out, .booking_form .reservation-container .block_hints .block_booked, .booking_form .reservation-container .datepick-inline .date_approved, .booking_form .reservation-container .block_hints .block_booked a, .booking_form .reservation-container .datepick-inline .date_approved a {
  background-color: var(--theme-color-red); }

.booking_form .reservation-container .booking_form_div input[type="button"]:hover, .booking_form .reservation-container .wpbc-payment-form input[type="button"]:hover {
  border: none; }

.booking_form .reservation-container .btn {
  color: var(--theme-color-primary);
  border: 1px solid var(--theme-color-primary);
  background: transparent;
  -webkit-transition: all 250ms ease;
  -o-transition: all 250ms ease;
  transition: all 250ms ease; }
  .booking_form .reservation-container .btn:hover {
    background: var(--theme-color-quatro);
    border-color: var(--theme-color-quatro);
    color: #fff; }

.booking_form .reservation-container .form-item label {
  color: var(--theme-color-primary);
  font-style: italic; }

.booking_form .reservation-container .form-item.form-checkbox label {
  color: var(--theme-color-gray-700); }

.booking_form .reservation-container .form-item.form-text label {
  position: absolute;
  top: 50%;
  left: 25px;
  -webkit-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 200ms ease-in-out;
  -o-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
  color: var(--theme-color-primary); }

.booking_form .reservation-container .form-item.form-text.active label {
  top: 12px;
  color: var(--theme-color-gray-500);
  font-size: 8px;
  text-transform: uppercase;
  font-style: normal;
  letter-spacing: 0.1em;
  font-weight: 500; }

.booking_form .reservation-container .form-item.form-text input {
  font-size: 16px;
  line-height: 22px;
  padding: 0; }

.booking_form .reservation-container .form-item.form-select {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
          justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .booking_form .reservation-container .form-item.form-select label {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
            flex: 0 0 auto;
    padding-right: 1em; }
  .booking_form .reservation-container .form-item.form-select > span {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
            flex: 1 1 auto; }
  .booking_form .reservation-container .form-item.form-select input, .booking_form .reservation-container .form-item.form-select select {
    border: none; }

.booking_form .reservation-container .form-item.form-text-area textarea {
  border: none;
  border-radius: 20px; }

.booking_form .reservation-container input[type='text'], .booking_form .reservation-container input[type='email'], .booking_form .reservation-container input[type='data'],
.booking_form .reservation-container input[type='number'], .booking_form .reservation-container input[type='password'], .booking_form .reservation-container input[type='phone'] {
  border: none; }

.activity-info-block .elementor-widget-text-editor ul li::marker,
.activity-tarif-block .elementor-widget-text-editor ul li::marker {
  color: currentColor; }

.activity-info-block--container > .elementor-widget-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap; }
  .activity-info-block--container > .elementor-widget-wrap > .elementor-element {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
            flex: 0 0 auto; }
  .activity-info-block--container > .elementor-widget-wrap .activity-info-block--title {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 75%;
            flex: 1 1 75%; }
  .activity-info-block--container > .elementor-widget-wrap .activity-info-block--icons {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 25%;
            flex: 1 1 25%;
    --icon-size: 40px; }
  .activity-info-block--container > .elementor-widget-wrap .activity-info-block--goodtoknow::before {
    content: '';
    display: block;
    width: 4px;
    height: 100%;
    background: #fff;
    border-radius: 2px;
    position: absolute; }

.pnhf-activity {
  border-radius: 20px;
  overflow: hidden;
  --icon-size: 30px; }
  .pnhf-activity a {
    font-family: inherit; }
  .pnhf-activity .elementor-widget-theme-post-featured-image {
    -webkit-clip-path: url("#publi-clip-path");
            clip-path: url("#publi-clip-path"); }
  .pnhf-activity .elementor-widget-theme-post-featured-image .elementor-widget-container::before {
    content: '';
    width: 60px;
    height: 60px;
    background: transparent url(/wp-content/uploads/2021/08/search.svg) no-repeat center center;
    -webkit-background-size: contain;
            background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
         -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 0;
    -webkit-transition: opacity 350ms ease;
    -o-transition: opacity 350ms ease;
    transition: opacity 350ms ease;
    z-index: 3;
    -webkit-filter: brightness(10);
            filter: brightness(10); }
  .pnhf-activity .elementor-widget-theme-post-featured-image .elementor-widget-container::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #d3a300b3;
    opacity: 0;
    -webkit-transition: opacity 350ms ease;
    -o-transition: opacity 350ms ease;
    transition: opacity 350ms ease;
    z-index: 2;
    left: 0;
    top: 0; }
  .pnhf-activity .elementor-widget-theme-post-featured-image .elementor-widget-container img {
    -webkit-transition: -webkit-transform 350ms ease;
    transition: -webkit-transform 350ms ease;
    -o-transition: -o-transform 350ms ease;
    transition: transform 350ms ease;
    transition: transform 350ms ease, -webkit-transform 350ms ease, -o-transform 350ms ease; }
  .pnhf-activity:hover .elementor-widget-theme-post-featured-image .elementor-widget-container::before,
  .pnhf-activity:hover .elementor-widget-theme-post-featured-image .elementor-widget-container::after {
    opacity: 1;
    -webkit-transition: opacity 350ms ease;
    -o-transition: opacity 350ms ease;
    transition: opacity 350ms ease; }
  .pnhf-activity:hover .elementor-widget-theme-post-featured-image .elementor-widget-container img {
    -webkit-transform: scale(1.05);
         -o-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-transform-origin: center center;
         -o-transform-origin: center center;
            transform-origin: center center; }
  .pnhf-activity__tags {
    margin-top: calc(var(--icon-size) * -1.25);
    margin-bottom: 10px; }

:root {
  --project-color: #E8CC00; }

.project_type-agriculture {
  --project-color: #C3967D; }

.project_type-developpement {
  --project-color: #F38F69; }

.project_type-education {
  --project-color: #C9587B; }

.project_type-energie {
  --project-color: #EA5D23; }

.project_type-nature {
  --project-color: #BCC100; }

.project_type-paysage {
  --project-color: #91D1EA; }

.project_type-tourisme {
  --project-color: #F8CA00; }

.pnhf-project__loop-item {
  border-radius: 20px;
  overflow: hidden;
  background-color: var(--project-color); }
  .pnhf-project__loop-item a {
    font-family: inherit; }
  .pnhf-project__loop-item .elementor-widget-theme-post-featured-image {
    -webkit-clip-path: url("#publi-clip-path");
            clip-path: url("#publi-clip-path"); }
  .pnhf-project__loop-item .elementor-widget-theme-post-featured-image .elementor-widget-container img {
    -webkit-transition: -webkit-transform 250ms ease;
    transition: -webkit-transform 250ms ease;
    -o-transition: -o-transform 250ms ease;
    transition: transform 250ms ease;
    transition: transform 250ms ease, -webkit-transform 250ms ease, -o-transform 250ms ease; }
  .pnhf-project__loop-item:hover .elementor-widget-theme-post-featured-image .elementor-widget-container img {
    -webkit-transform: scale(1.05);
         -o-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-transform-origin: center center;
         -o-transform-origin: center center;
            transform-origin: center center; }
  @media (min-width: 480px) {
    :root {
      --rules-list-block-gap: 20px;
      --rules-list-cols: 2; } }
  @media screen and (min-width: 576px) {
          .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item:last-child {
            border-right: 1px solid #fff; } }
  @media (min-width: 768px) {
    :root {
      --theme-block-gap: 20px; }
    :root {
      --rules-list-block-gap: 30px;
      --rules-list-cols: 3; }
    .rules-list ol > li:nth-child(3) {
      border-top: none; } }
  @media screen and (min-width: 768px) {
    .section-title.large .heading,
    h1.heading {
      font-size: 33px; }
      .elementor-section.primary-nav .logo-container {
        max-width: 7em; }
      .elementor-section.primary-nav .nav-container .elementor-widget-nav-menu, .elementor-section.primary-nav .nav-container .elementor-widget-nav-menu .elementor-widget-container, .elementor-section.primary-nav .nav-container .elementor-widget-nav-menu .elementor-nav-menu__container {
        height: 100%; }
        .elementor-section.primary-nav .nav-container ul.elementor-nav-menu {
          margin-left: auto;
          display: grid;
          grid-auto-flow: row;
          grid-template-columns: repeat(4, 1fr); }
          .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item {
            border-left: 1px solid #fff; }
            .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item > a {
              -webkit-box-orient: vertical;
              -webkit-box-direction: normal;
              -webkit-flex-direction: column;
                      flex-direction: column;
              -webkit-box-align: center;
              -webkit-align-items: center;
                      align-items: center;
              -webkit-box-pack: start;
              -webkit-justify-content: flex-start;
                      justify-content: flex-start;
              padding: 2rem 1rem; }
              .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item > a ._mi {
                width: 48px;
                height: 48px;
                -webkit-box-flex: 1;
                -webkit-flex: 1;
                        flex: 1; }
    ul.menu-parcs {
      -webkit-column-count: 2;
         -moz-column-count: 2;
              column-count: 2;
      -webkit-column-gap: 75px;
         -moz-column-gap: 75px;
              column-gap: 75px; } }
  @media (min-width: 1024px) {
    :root {
      --theme-block-gap: 30px; }
    :root {
      --wdgt-icon-size-max: 50px; }
    :root {
      --rules-list-block-gap: 30px;
      --rules-list-cols: 4; }
    .rules-list ol > li:nth-child(4) {
      border-top: none; }
  .booking_form .reservation-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px; }
    .booking_form .reservation-container .calendar-container {
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
              order: 2; } }
  @media screen and (min-width: 1024px) {
    .section-title.large .heading,
    h1.heading {
      font-size: 43px; }
      .elementor-section.primary-nav .logo-container {
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
                justify-content: flex-start; }
        .elementor-section.primary-nav .logo-container .logo {
          position: relative;
          margin-top: -1em;
          -webkit-transform: translateY(-0.33em);
               -o-transform: translateY(-0.33em);
                  transform: translateY(-0.33em); }
      .elementor-section.primary-nav .logo-container {
        --logo-width: 115px;
        font-size: 30px;
        max-width: 330px;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
                flex-direction: row; }
        .elementor-section.primary-nav .logo-container .slogan {
          margin: auto 0 1em 1em;
          -webkit-align-self: center;
                  align-self: center; }
  header.elementor-location-header > .elementor-section-wrap {
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column; }
    header.elementor-location-header > .elementor-section-wrap > section {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
              flex: 0 0 auto; }
      header.elementor-location-header > .elementor-section-wrap > section.section-center {
        margin: auto 0; }
    ul.menu-parcs {
      -webkit-column-count: 3;
         -moz-column-count: 3;
              column-count: 3;
      -webkit-column-gap: 100px;
         -moz-column-gap: 100px;
              column-gap: 100px; } }
  @media (min-width: 1200px) {
    :root {
      --theme-block-gap: 50px; }
    :root {
      --rules-list-block-gap: 30px;
      --rules-list-cols: 5; }
    .rules-list ol > li:nth-child(5) {
      border-top: none; } }
  @media screen and (min-width: 1200px) {
        .elementor-section.primary-nav .logo-container .slogan {
          margin: 0 0 0 1em; }
        .elementor-section.primary-nav .nav-container ul.elementor-nav-menu {
          display: inline-grid;
          grid-auto-flow: column;
          grid-template-columns: repeat(7, 1fr); }
          .elementor-section.primary-nav .nav-container ul.elementor-nav-menu > .menu-item:last-child {
            border-right: none; }
    .secondary-nav > .elementor-container {
      padding-left: calc(115px + 30px); } }
  @media screen and (min-width: 1420px) {
      .elementor-section.primary-nav > .elementor-container {
        margin-left: calc( 50vw - 660px); }
    .secondary-nav > .elementor-container {
      margin-left: calc( 50vw - 660px);
      padding-left: calc(115px + 30px); } }
  @media (min-width: 1420px) {
    :root {
      --wdgt-padding: 20px;
      --wdgt-icon-size-max: 75px; } }
