.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-65 .elementor-element.elementor-element-7a1d7228 .elementor-menu-toggle{margin-left:auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for nav-menu, class: .elementor-element-7a1d7228 */.elementor-65 .elementor-element.elementor-element-7a1d7228 { flex-shrink: 1; min-width: 0; }/* End custom CSS */
/* Start custom CSS *//* =====================================================================
   PAYSAGES SERVICES - CSS COMMUN A TOUT LE SITE
   (place dans le header car il se charge sur toutes les pages)
   ===================================================================== */

/* 1. Polices
   - Avenir Heavy (800) : graisse du grand titre H1 de la maquette. Le fichier est dans la
     mediatheque mais n'etait pas declare dans Elementor > Polices personnalisees.
   - Nata Sans (non proposee nativement par Elementor). */
@font-face { font-family: 'Avenir'; font-style: normal; font-weight: 800; font-display: swap; src: url('/wp-content/uploads/2026/10/Avenir-Heavy.ttf') format('truetype'); }
@font-face { font-family: 'Nata Sans'; font-style: normal; font-weight: 100 900; font-display: swap; src: url(https://fonts.gstatic.com/s/natasans/v1/1q2EY5KBClBit88SU_t-wc4avEU.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Nata Sans'; font-style: normal; font-weight: 100 900; font-display: swap; src: url(https://fonts.gstatic.com/s/natasans/v1/1q2EY5KBClBit88SU_t-z84a.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* 2. SURLIGNAGE VERT ("fluo") DANS LES TITRES
   Dans un titre portant la classe ps-h1 ou ps-h2, tout texte SOULIGNE
   (bouton U de l'editeur de texte) s'affiche avec le surlignage vert. */
.ps-h1 u, .ps-h1 span, .ps-h2 u, .ps-h2 span {
  --ps-fluo-h: 55%;
  text-decoration: none;
  background-image: linear-gradient(var(--ps-vert, #80C82D), var(--ps-vert, #80C82D));
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% var(--ps-fluo-h);
  padding: 0 .12em .1em 0;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.ps-h1 u, .ps-h1 span { --ps-fluo-h: 32%; background-position: 0 67%; padding: 0 .06em 0 0; }
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .ps-h1 u, .ps-h1 span, .ps-h2 u, .ps-h2 span { animation: ps-fluo-in linear both; animation-timeline: view(); animation-range: entry 0% entry 100%; }
  }
}
@keyframes ps-fluo-in { from { background-size: 0% var(--ps-fluo-h); } to { background-size: 100% var(--ps-fluo-h); } }

/* 3. MENU PRINCIPAL (widget Menu avec la classe ps-nav)
   Espace entre deux liens = 2 x la variable ci-dessous (Elementor l'applique de chaque cote) :
   30px -> 60px comme sur la maquette en 1920px. */
.ps-nav { --e-nav-menu-horizontal-menu-item-margin: clamp(5px, calc(4.515vw - 56.7px), 30px); }
.ps-nav .elementor-nav-menu--main .elementor-nav-menu { flex-wrap: nowrap; white-space: nowrap; }
.ps-nav .elementor-nav-menu--main .elementor-nav-menu a,
.ps-nav .elementor-nav-menu--main .elementor-nav-menu a:visited {
  font-family: var(--ps-font-titre, 'Inter'), sans-serif; font-size: clamp(14px, calc(0.4167vw + 8px), 16px); font-weight: 400; line-height: 1.2;
  color: var(--ps-texte, #000); padding: 10px;
  text-decoration: underline 3px transparent; text-underline-offset: 6px; transition: text-decoration-color .2s ease;
}
.ps-nav .elementor-nav-menu--main .elementor-nav-menu a:hover,
.ps-nav .elementor-nav-menu--main .elementor-nav-menu a.elementor-item-active { color: var(--ps-texte, #000); text-decoration-color: var(--ps-vert, #80C82D); }
.ps-nav .elementor-nav-menu--main .elementor-nav-menu a.has-submenu { padding-inline-end: 10px; }
.ps-nav .sub-arrow { color: var(--ps-vert, #80C82D); font-size: 14px; padding: 0 0 0 10px; margin: 0; }
.ps-nav .sub-arrow svg { fill: currentColor; width: 0.75em; height: auto; }
.ps-nav .elementor-nav-menu--main .sub-menu { background-color: var(--ps-blanc, #fff); border: 1px solid var(--ps-gris-bordure, #E6E6E6); white-space: normal; }
.ps-nav .elementor-nav-menu--main .sub-menu a { font-size: 15px; }

/* Menu deroulant (burger) : pleine largeur, colle sous la barre du header */
.elementor-location-header .elementor-element.ps-nav,
.elementor-location-header .e-con:has(> .ps-nav) { position: static; }
.ps-nav .elementor-nav-menu--dropdown { background-color: var(--ps-blanc, #fff); box-shadow: 0 12px 30px rgba(0,0,0,.08); }
.ps-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container { position: absolute; top: 100% !important; left: 0 !important; right: 0; width: 100% !important; margin-top: 0; z-index: 9997; border-top: 1px solid var(--ps-gris-bordure, #E6E6E6); }
.ps-nav .elementor-nav-menu--dropdown a, .ps-nav .elementor-nav-menu--main .sub-menu a { font-family: var(--ps-font-titre, 'Inter'), sans-serif; font-size: 16px; color: var(--ps-texte, #000); padding: 14px 24px; text-decoration: none; }
.ps-nav .elementor-nav-menu--dropdown a.elementor-sub-item { font-size: 15px; padding-left: 44px; }
.ps-nav .elementor-nav-menu--dropdown a:hover, .ps-nav .elementor-nav-menu--dropdown a.elementor-item-active,
.ps-nav .elementor-nav-menu--main .sub-menu a:hover { background-color: var(--ps-vert, #80C82D); color: var(--ps-texte, #000); }
.ps-nav .elementor-menu-toggle { color: var(--ps-noir, #2B2B2B); background-color: transparent; font-size: 30px; padding: 4px; }
.ps-nav .elementor-menu-toggle svg { fill: currentColor; }

/* Le menu complet ne tient qu'a partir de 1367px : en dessous on affiche le burger
   (meme disposition que sur tablette : logo a gauche, Contact + burger a droite) */
@media (min-width: 1025px) and (max-width: 1366px) {
  .elementor .ps-nav .elementor-nav-menu--main { display: none; }
  .elementor .ps-nav .elementor-menu-toggle { display: flex; }
  .elementor .ps-nav .elementor-nav-menu--dropdown { display: block; }
  .elementor-location-header .e-con:has(.ps-nav) { justify-content: space-between; padding-inline: 30px; }
  .elementor-location-header .e-con:has(> .ps-nav) { flex-direction: row-reverse; gap: 20px; }
}/* End custom CSS */