@import url('menu.css');
@import url('responsive.css');
@import url('burger.css');
@import url('up.css');
@import url('pagination_entrearticle.css');
@import url('tarteauxcitrons.css?v=20260702-1');
@import url('accessibilite.css?v=20260703-4');
@import url('fondements-category.css');
@import url('presentation-article.css');
@import url('missions-category.css?v=20260702-1');
@import url('mission-rich-category.css');
@import url('enseignement-article.css');
@import url('agence-publications-category.css');
@import url('agence-publication-article.css');
@import url('contact-article.css');
@import url('page-mission-article.css');


:root {
    --main-font-family: "Poppins", Arial, sans-serif;
    --secondary-font-family: "Poppins", Arial, sans-serif;
    --site-black: #000;
    --site-bronze: #9e8667;
    --site-grey: #999;
    --site-light-grey: #f5f5f5;
    --couleur-principale: var(--site-black);
    --couleur-secondaire: var(--site-bronze);
    --couleur-vert-fonce: var(--site-black);
    --couleur-texte: var(--site-black);
    --couleur-vert-clair: var(--site-grey);
    --couleur-vert-medium: var(--site-bronze);
    --couleur-vert_turquoise: var(--site-bronze);
    --couleur-gris-fonce: var(--site-grey);
    --couleur-gris-clair: var(--site-light-grey);
    --couleur-vert-tres-fonce: var(--site-black);
    --couleur-bleu-fonce: var(--site-black);
}
body {
color: var(--couleur-texte);
background: #fff;
font-family: var(--secondary-font-family)!important;
font-weight: 400;
font-size: clamp(0.875rem, 0.86rem + 0.05vw, 0.9375rem);
font-style: normal;  
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--main-font-family);
}

.site-logo {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.site-logo img,
.logo-wrapper img {
    display: block;
    width: auto;
    max-width: 280px;
    max-height: 116px;
    height: auto;
}

.container,
.grid-child {
    --container-gutter-x: clamp(1rem, 3vw, 2rem);
    width: 100%;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--container-gutter-x);
    padding-left: var(--container-gutter-x);
}

@media (min-width: 576px) {
    .container,
    .grid-child {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container,
    .grid-child {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container,
    .grid-child {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container,
    .grid-child {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .container,
    .grid-child {
        max-width: 1320px;
    }
}


.home-hero-page .footer-columns {
    padding-top: 0;
    padding-bottom: 0;
}



.imgh {
    border-bottom: 1px dotted var(--couleur-vert-medium);
    padding-bottom: 25px;
    margin-bottom: 25px;
}

/* Bouton d'edition frontend Joomla - style ameliore */
.icons .float-end a {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--couleur-principale);
  color: #fff !important;
  font-weight: 500;
  border-radius: 8px;
  padding: 6px 12px;
  text-decoration: none;
  font-size: 0.875rem;
  transition: all 0.2s ease-in-out;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}

.icons .float-end a:hover {
  background: var(--couleur-secondaire);
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

.icons .float-end a .icon-edit::before {
  content: "\f044"; /* fa-pencil-alt */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.icons .float-end {
  position: relative;
  z-index: 10;
}

/* Tooltip custom Joomla */
.icons .float-end [role="tooltip"] {
  display: none; /* on masque le tooltip Joomla moche */
}

.quote {
    font-size: 24px;
    text-align: center;
}

.niveau_gris {
    background-color:  var(--couleur-gris-clair);
}

.baseline {
	text-align: right;
      font-size: clamp(16px, 3vw, 24px);
	color: var(--couleur-principale);   
}

.reseauxfooter h3 {    text-align: center;font-size: 30px;    color: black;}

.site-footer {
    border-top: 1px solid #dcdcdc;
}

.footer-columns {
    padding-top: 50px;
    padding-bottom: 50px;
}

.menu-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.35rem 1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.menu-footer li {
    list-style: none;
}

.menu-footer a {
    color: #999;
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1.4;
    text-decoration: none;
    transition: color 0.2s ease;
}

.menu-footer a:hover,
.menu-footer a:focus-visible,
.menu-footer .active > a,
.menu-footer .current > a {
    color: #000;
    text-decoration: underline;
    text-underline-offset: 0.22em;
}

@media (max-width: 767.98px) {
    .menu-footer {
        justify-content: flex-start;
    }
}



.com-content-article h1.titre_orange {color: var(--couleur-principale);
    text-align: left;
    font-size: 36px;
    font-weight: bold;
    margin: 0px 0px 10px 0px;}

.footerlogo img {
    width: 80%;
    height: auto;
}

/* Smartphones (moins de 576px) */
@media (max-width: 575.98px) {
    .footerlogo img {
        width: 30%;
        margin-bottom: 15px;
    }
}

/* Petits ecrans (>=576px et <768px) */
@media (min-width: 576px) and (max-width: 767.98px) {
    .footerlogo img {
        width: 50%;
    }
}

/* Moyens ecrans (>=768px et <992px) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .footerlogo img {
        width: 45%;
    }
}

/* Grands ecrans (>=992px et <1200px) */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .footerlogo img {
        width: 70%;
    }
}

/* Tres grands ecrans (>=1200px) */
@media (min-width: 1200px) {
    .footerlogo img {
        width: 80%;
    }
}





.reseauxfooter {
    padding-bottom: 35px;
}



@media (max-width: 575.98px) {
    .slidevide {
        min-height: 227px;
    }
    .slidevideintranet {
        min-height: 180px;
    }
}

/* >=576px (sm) */
@media (min-width: 576px) {
    .slidevide {
        min-height: 229px;
    }
  .slidevideintranet {
        min-height: 180px;
    }
}

/* >=768px (md) */
@media (min-width: 768px) {
    .slidevide {
        min-height: 251px;
    }
  .slidevideintranet {
        min-height: 200px;
    }
}

/* >=992px (lg) */
@media (min-width: 992px) {
    .slidevide {
        min-height: 251px;
    }
   .slidevideintranet {
        min-height: 200px;
    }
}

/* >=1200px (xl) */
@media (min-width: 1200px) {
    .slidevide {
        min-height: 251px;
    }
   .slidevideintranet {
        min-height: 200px;
    }
  
}




a.suiveznoussurinstagram  {    text-decoration: none!important;}


.footervisite {

    margin-top: -30px;
}


.logofooter img {
  width: 100%;
  height: auto;
  max-width: 358px;
}




.footervisite a {text-decoration: underline;}
.footervisite a:hover, .footervisite a:focus  {text-decoration: none;}




.suivez_nous_instagram_footer {
    padding-left: 0.7rem;
}

.uk-scope .uk-dotnav>.uk-active>* {
    background-color: var(--couleur-secondaire);
    border-color: transparent;
}

.uk-scope .uk-dotnav>*>* {
    display: block;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: 0 0;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    border: 1px solid var(--couleur-secondaire);
    transition: .2s ease-in-out;
    transition-property: background-color, border-color;
}


.nrf-widget.map-widget .map-item { z-index: -6;}






/* Supprime les puces de la liste */

.fields-container {
    list-style: none; /* Supprime les puces */
    padding: 0; /* Supprime le padding par defaut */
    margin: 0; /* Supprime les marges par defaut */
}



/* Ajoute un contour a chaque figure */

.fields-container .field-entry .item {

    border: 2px solid var(--couleur-secondaire); /* Contour avec la couleur specifiee */

    border-radius: 4px; /* Coins legerement arrondis (optionnel) */

    padding: 5px; /* Espace interieur pour une meilleure apparence */

    margin: 10px; /* Espacement entre les figures */

}



/* Ajoute un effet au survol (optionnel) */

.fields-container .field-entry .item:hover {

    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Effet d'ombre au survol */

    transform: scale(1.05); /* Legere mise en avant */

    transition: all 0.3s ease; /* Animation fluide */

}





.visually-hidden {display:none;}





.sansmarge {

    padding-right: 0px;

    padding-left: 0px;

}




.footer a {

    color: var(--couleur-secondaire)!important;

    text-decoration: none;

}









.adressefooter{ 

   

    margin: 8px 0px;

}







.intro_titre {

    font-size: 1.7em;

    text-align: center;

    text-transform: uppercase;

    letter-spacing: 3px;

}






.grid-child {

    display: flex;

}







.footer {

 background-color: var(--couleur-gris-clair);
    border-top: 1px solid  var(--couleur-vert-medium);
    padding-top: 50px;
    padding-bottom: 50px;
        color: var(--couleur-gris-fonce);
}



.nivmenu {

          height: 100px;
   

    width: 100%;

    position: absolute;

}




.uk-scope .uk-h1, .uk-scope .uk-h2, .uk-scope .uk-h3, .uk-scope .uk-h4, .uk-scope .uk-h5, .uk-scope .uk-h6, .uk-scope .uk-heading-2xlarge, .uk-scope .uk-heading-3xlarge, .uk-scope .uk-heading-large, .uk-scope .uk-heading-medium, .uk-scope .uk-heading-small, .uk-scope .uk-heading-xlarge, .uk-scope h1, .uk-scope h2, .uk-scope h3, .uk-scope h4, .uk-scope h5, .uk-scope h6 {

}



.swiper-button-next:after, .swiper-button-prev:after {

    font-family: swiper-icons;

    font-size: 1.5em;

    font-weight: 600;

    text-transform: none !important;

    letter-spacing: 0;

    font-variant: initial;

    line-height: 1;

    color: black;

}







ul.reseauxsociauxmenu > li > a.reseaux span.visually-hidden {

    display: none;

}

button.scroll-to-top.show {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translate(-50%, 0) !important;
}

body:has(.nav-overlay.show) ._access-icon._access,
body:has(.nav-overlay.show) .cookie-manager-button,
body:has(.nav-overlay.show) .scroll-to-top,
body:has(.nav-overlay.show) #tarteaucitronAlertBig {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.site-main--home {
    margin: 0;
    padding: 0;
}

.home-hero {
    position: relative;
    display: flex;
    align-items: stretch;
    min-height: 100svh;
    overflow: hidden;
    color: var(--couleur-principale);
    background: #000;
}

.home-hero__background {
    position: absolute;
    inset: 0;
    z-index: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.home-hero__inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-height: 100svh;
    padding-top: clamp(7.75rem, 12vw, 11rem);
    padding-bottom: clamp(2.5rem, 6vw, 4.5rem);
}

.home-hero__content {
    max-width: min(760px, 100%);
}

.home-hero__title {
    margin: 0 0 clamp(1rem, 2vw, 1.5rem);
    color: inherit;
    font-family: var(--main-font-family);
    font-size: clamp(2.4rem, 6vw, 5.8rem);
    font-weight: 600;
    line-height: 0.98;
}

.home-hero__text {
    color: var(--couleur-principale);
    font-size: clamp(1.05rem, 1.45vw, 1.35rem);
    line-height: 1.65;
}

.home-hero__text h1 {
    margin: 0;
    color: var(--couleur-principale);
    font-size: clamp(1.5em, 2.2vw, 2em);
    font-weight: 600;
    line-height: 0.98;
}

.home-hero__text > :last-child {
    margin-bottom: 0;
}

.home-hero__text a {
    color: inherit;
    text-decoration-color: rgba(255, 255, 255, 0.55);
    text-underline-offset: 0.18em;
}

.home-hero__text a:hover,
.home-hero__text a:focus-visible {
    color: #fff;
    text-decoration-color: #fff;
}

@media (max-width: 767.98px) {
    .home-hero__inner {
        align-items: center;
        padding-top: 6.5rem;
        padding-bottom: 3rem;
    }
}

.skip-link {
    position: fixed;
    top: 0.75rem;
    left: 0.75rem;
    z-index: 10000;
    transform: translateY(-150%);
    padding: 0.75rem 1rem;
    background: var(--site-black);
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    border-radius: 0;
    transition: transform 0.16s ease;
}

.skip-link:focus,
.skip-link:focus-visible {
    transform: translateY(0);
    color: #fff;
    outline: 3px solid var(--site-bronze);
    outline-offset: 3px;
}

#main-content:focus {
    outline: none;
}
