publicatio     *, *::before, *::after {
box-sizing: inherit;
}
main, header, nav, footer, section, article {
display: block;
}
html.js #publicum-mobile-nav.menu-open {
display: flex !important;
opacity: 1 !important;
transform: translateY(0);
}
.stack > * + * { 
margin-block-start: var(--space-2); 
}   
.cluster { 
display:flex; 
gap: var(--space-2); 
} 
.section { 
padding-block: var(--space-4); 
}            
.ast-header-navigation-arrow {
display: none;
}
.entry-header { 
margin-bottom: 1.2rem; 
}
mark {
background-color: var(--color-mark);
color: inherit;            
padding: 0 0.15em;
border-radius: 2px;
} @font-face {
font-family: 'IBM Plex Sans';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/IBMPlexSans-Regular.woff2) format('woff2');
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'IBM Plex Sans';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/IBMPlexSans-Italic.woff2) format('woff2');
font-weight: 400;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'IBM Plex Sans';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/IBMPlexSans-SemiBold.woff2) format('woff2');
font-weight: 600;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'IBM Plex Sans';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/IBMPlexSans-Bold.woff2) format('woff2');
font-weight: 700;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Source Sans 3';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/SourceSans3-Regular.woff2) format('woff2');
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Source Sans 3';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/SourceSans3-Italic.woff2) format('woff2');
font-weight: 400;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Source Sans 3';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/SourceSans3-SemiBold.woff2) format('woff2');
font-weight: 600;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Source Sans 3';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/SourceSans3-Bold.woff2) format('woff2');
font-weight: 700;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Luciole';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/luciole/Luciole-Regular.woff2) format("woff2");
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Luciole';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/luciole/Luciole-Bold.woff2) format("woff2");
font-weight: bold;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Amarante';
src: url(//lapetitefabriquedigitale.fr/wp-content/themes/publicum/assets/fonts/Amarante-Regular.woff2) format('woff2');
font-weight: 400;
font-style: normal;
font-display: swap;
}
.luciole-mode {
font-family: "Luciole", Arial, sans-serif !important;
}
h1 { 
font-family: 'IBM Plex Sans', sans-serif;
font-size: clamp(1.6rem, 2.5vw, 1.9rem);
color: var(--color-green-forest) !important;
text-align: left;
text-transform: uppercase;
line-height: 1.4;
}
h2 { 
font-family: 'IBM Plex Sans', sans-serif;
font-size: clamp(1.4rem, 2vw, 1.7rem);
color: var(--color-green-medium);
text-align: left;
text-transform: uppercase;
line-height: 1.3;
font-weight: 600;
}
h3 { 
font-family: 'IBM Plex Sans', sans-serif;
font-size: clamp(1.2rem, 1.5vw, 1.5rem);
color: var(--color-orange-light);
text-align: left;
text-transform: uppercase;
line-height: 2;
font-weight: 600;
}
img {
border-radius: 0.4rem;
} html, body {
font-family: 'Source Sans 3', sans-serif;
font-weight: 400;
font-size: 1;
line-height: 1.6;background-color: #f0f0f0 !important;
transition: opacity 0.25s ease-in-out;
margin: 0;
padding: 0;
box-sizing: border-box;
}
body .ast-desktop-header,
body .ast-above-header,
body .ast-above-header-bar {
border: none !important;
box-shadow: none !important;
outline: none !important;
background-image: none !important;
}
body .ast-above-header::before,
body .ast-above-header::after,
body .ast-above-header-bar::before,
body .ast-above-header-bar::after {
display: none !important;
content: none !important;
}
body .ast-header-break-point .main-header-bar {
box-shadow: none !important;
}
body.admin-bar header.site-header {
top: 2rem;
}
body.fade-out {
opacity: 0;
} :root {
--header-height: 40px; 
}
.cta-section {
width: 100%;
min-height: 28rem;        
position: relative;
overflow: hidden;
left: 50%;
right: 50%;
margin-top: var(--header-height);
margin-left: -50vw;
margin-right: -50vw;
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: var(--color-white);
padding: 0;
background-color: var(--color-green-dark); 
}
.cta-section .cta-bg {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center center;
z-index: 0;
display: block;
}
.cta-content-wrapper {
display: flex;
position: relative;
z-index: 1;
align-items: center;
justify-content: center;
max-width: 90rem;  
margin: 0 auto;
height: auto;          
}
.cta-content {
padding: 2.5rem 2.5rem;
border-radius: 0.4rem;
color: var(--color-white);
flex: 1;
background-color:  rgba(0, 0, 0, 0.55);
}
.cta-content h1 {
font-size: 2rem;   
font-weight: 700; 
margin-bottom: 2rem;
}
.cta-section:hover::before {
background: linear-gradient(to right, rgba(0,0,0,0.2), rgba(0,0,0,0));
}
.cta-content-wrapper,
.cta-content {
position: relative;
z-index: 1;
}
.cta-subtitle-wrapper textarea {
max-height: 37.5rem;
overflow-y: auto;
max-width: 80rem;
}
.cta-title { 
margin: 0; 
line-height: 1.25; 
}
.cta-title .cta-line { 
display: block; text-transform: none;
color: var(--color-white);
}
.cta-content { 
max-width: 90rem; 
} 
@keyframes slideInTop {
from {
opacity: 0;
transform: translateY(-2rem); 
}
to {
opacity: 1;
transform: translateY(0);
}
}
.cta-content {
animation: slideInTop 1.2s cubic-bezier(0.4, 0, 0.2, 1) both;
}
#cta-button {
display: inline-block;
padding: 1rem 2rem; 
font-weight: 700;
font-size: 1.5rem;
line-height: 1.4;
transition: background-color 0.2s ease-in-out;
}
#cta-button:hover {
box-shadow: 0 0.25rem 0.88rem rgba(51,38,0,0.28), 0 0.13rem 0.38rem rgba(51,38,0,0.18);
}
.cta-content h2 {
font-size: 2.5rem;
margin-bottom: 1rem;
color: var(--color-white);
} .page-pdf,
.sidebar-pdf {
margin-top: 1.5rem;
}
.pdf-link {
display: inline-flex;
align-items: center;
gap: 0.7rem;
padding: 0.7rem 1.5rem;
border-radius: 0.4rem;
background: var( --color-gray-medium);
color: var(--color-green-dark);
text-decoration: none;
font-weight: 600;
border: 1.5px solid var(--color-gray-dark);
transition: background-color 0.14s, border 0.14s;
font-size: 1.07rem;
margin-top: 1.2rem;
box-shadow: 0 0.07rem 0.13rem rgba(30,40,20,0.06);
}
.pdf-link:hover,
.pdf-link:focus {
background: var(--color-gray-dark);
border-color: var(--color-orange-hover);
outline: none;
color: var(--color-green-dark);
}
.pdf-link .icon-pdf {
width: 1.7em;
height: 1.7em;
min-width: 1.7em;
min-height: 1.7em;
margin-right: 0.7rem;
flex-shrink: 0;
display: inline-block;
vertical-align: middle;
} .skip-link {
position: absolute;
left: -9999px;
top: auto;
width: 1px;
height: 1px;
overflow: hidden;
text-decoration: none;
}
.skip-link:focus,
.skip-link:focus-visible {
position: fixed;
left: 1rem;
top: 1rem;
width: auto;
height: auto;
padding: 0.5rem 1rem;
background: var(--color-white);
color: var(--color-orange);
border: 2px solid currentColor;
border-radius: 0.4rem;
outline: none;
z-index: 10000;
clip: auto;
clip-path: none;
}
.focus-visible {
outline: 2px solid var(--color-orange);
outline-offset: 1rem;
}
.breadcrumb {
position: absolute;
left: -9999px;
width: 1px;
height: 1px;
overflow: hidden;
}
.sr-only{
position:absolute!important;
width:1px!important;
height:1px!important;
padding:0!important;
margin:-1px!important;
overflow:hidden!important;
clip:rect(0 0 0 0)!important;
clip-path:inset(50%)!important;
white-space:nowrap!important;
border:0!important;
}
a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
outline: 0.13rem solid var(--color-orange);   
outline-offset: 0.25rem;          
border-radius: 0.4rem;            
}
.footer-socials a:focus-visible svg {
outline: 0.13rem solid var(--color-orange);
outline-offset: 0.25rem;
border-radius: 50%; 
}
.icon-link:focus-visible,
.icon-link:hover {
outline: 0.13rem solid var(--color-orange);
outline-offset: 0.25rem;
border-radius: 0.4rem;
opacity: 0.85; 
}
.luciole-mode {
font-family: "Luciole", Arial, sans-serif !important;
}    .publicum-header-container {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1.25rem 2rem;
flex-wrap: nowrap;
background-color: var(--color-green-dark);
box-shadow: 0 0.38rem 2rem rgba(21,55,84,.23),
0 0.09rem 0.38rem rgba(21,55,84,.12);
min-height: 5rem;
height: auto;
} .publicum-header-inner {
height: auto;
min-height: 0;
max-height: none !important;
} header.site-header {
position: sticky;
top: 0;
height: 5rem;
z-index: 1000;
background-color: var(--color-white);
}  .publicum-main-menu {
flex-grow: 1;
display: flex;
justify-content: flex-end;
} .publicum-main-menu .menu-list {
display: flex;
gap: 2rem;
list-style: none;
margin: 0;
padding: 0;
} .publicum-main-menu .menu-list li {
position: relative;
} .publicum-main-menu .menu-list li a {
position: relative;
color: var(--color-orange-light);
font-size: 1.2rem;
font-weight: 600;
line-height: 1.25;
padding: 0.5rem 1rem;
margin: 0;
text-decoration: none;
background: none;
border: none;
transition: color 0.2s;
} .publicum-main-menu .menu-list li a::after {
content: "";
display: block;
width: 0;
height: 0.13rem;
background-color: var(--color-orange-light);
border-radius: 0.4rem;
position: absolute;
left: 0;
bottom: 0.22em;
transition: width 0.2s;
pointer-events: none;
} .publicum-main-menu .menu-list li a:hover,
.publicum-main-menu .menu-list li a:focus {
color: var(--color-beige-light);
}
.publicum-main-menu .menu-list li a:hover::after,
.publicum-main-menu .menu-list li a:focus::after {
width: 100%;
} .publicum-main-menu > .menu-list > li.current-menu-item > a,
.publicum-main-menu > .menu-list > li.current-menu-ancestor > a {
color: var(--color-orange-light);
}
.publicum-main-menu > .menu-list > li.current-menu-item > a::after,
.publicum-main-menu > .menu-list > li.current-menu-ancestor > a::after {
width: 100%;
}  .publicum-main-menu .menu-list li ul {
display: none;
opacity: 0;
pointer-events: none;
transform: translateY(0.1rem) scaleY(0.97);
transition: opacity 0.45s cubic-bezier(0.4, 0, 0.2, 1),
transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
position: absolute;
top: calc(100% + 0.5rem);
left: -1.6rem;
z-index: 999;
background-color: var(--color-beige-light);
padding: 1rem 1.5rem;
min-width: 13.75rem;
box-shadow: 0 0.25rem 0.75rem rgba(0,0,0,0.09);
border-radius: 0.4rem;
list-style: none;
} .publicum-main-menu .menu-list li ul li {
margin: 0.5rem 0;
} .publicum-main-menu .menu-list li ul li a {
color: var(--color-green-dark);
font-size: 1.07rem;
font-weight: 500;
text-decoration: none;
padding: 0.4rem 0.2rem;
display: block;
border-radius: 0.4rem;
white-space: nowrap;
background: none;
transition: background-color 0.18s ease, color 0.18s ease;
} .publicum-main-menu .menu-list li ul li a:hover,
.publicum-main-menu .menu-list li ul li a:focus {
background: var(--color-beige-dark);
color: var(--color-orange-dark);
} .publicum-main-menu .menu-list li:hover > ul,
.publicum-main-menu .menu-list li:focus-within > ul {
opacity: 1;
pointer-events: auto;
transform: translateY(0) scaleY(1);
display: block;
} .site-header {
position: relative;
}  .publicum-burger-toggle {
position: absolute;
right: 1rem;
top: 1rem;
z-index: 999;
display: inline-flex;
flex-direction: column;
justify-content: center;
align-items: center;
width: 2.75rem;
height: 2.75rem;
min-width: 2.75rem;
min-height: 2.75rem;
padding: 0.38rem;
background-color: var(--color-beige-light);
border: none;
border-radius: 0.4rem;
cursor: pointer;
box-shadow: 0 0 0.25rem rgba(0,0,0,0.1);
box-sizing: border-box;
contain: layout paint;
} .publicum-burger-toggle span {
display: block;
width: 2.5rem;
height: 0.25rem;
background-color: var(--color-orange-light);
margin: 0.31rem 0;
border-radius: 0.4rem;
flex-shrink: 0;
will-change: transform;
transition: transform 0.3s ease, opacity 0.3s ease;
} .publicum-burger-toggle.is-active span:nth-child(1) {
transform: translateY(0.88rem) rotate(45deg);
}
.publicum-burger-toggle.is-active span:nth-child(2) {
opacity: 0;
}
.publicum-burger-toggle.is-active span:nth-child(3) {
transform: translateY(-0.88rem) rotate(-45deg);
}  #publicum-mobile-nav ul,
#publicum-mobile-nav ul li {
list-style: none;
margin: 0;
padding: 0;
} #publicum-mobile-nav > .menu {
display: flex;
flex-direction: column;
gap: 0.25rem;
margin: 0;
padding: 0;
list-style: none;
}
#publicum-mobile-nav .menu > li {
margin: 0.5rem 0;
} #publicum-mobile-nav .menu a {
display: block;
position: relative;
color: var(--color-green-dark);
background: none;
font-size: 1.13rem;
font-weight: 500;
text-decoration: none;
padding: 0.4rem 0.2rem;
border-radius: 0.4rem;
white-space: nowrap;
transition: background-color 0.18s ease, color 0.18s ease;
} #publicum-mobile-nav .menu a:hover,
#publicum-mobile-nav .menu a:focus {
background: var(--color-green-medium);
color: var(--color-white);
} #publicum-mobile-nav .menu .current-menu-item > a {
font-weight: bold;
color: var(--color-white);
background: var(--color-green-medium);
} #publicum-mobile-nav .menu .current-menu-ancestor > a {
font-weight: bold;
color: inherit;
background: inherit;
} #publicum-mobile-nav .menu > li > a::after {
content: "";
display: block;
position: absolute;
left: 0;
right: 0;
bottom: 0.18em;
height: 0.13rem;
background-color: var(--color-orange-light);
border-radius: 0.4rem;
width: 0;
transition: width 0.22s;
pointer-events: none;
}
#publicum-mobile-nav .menu > li > a:hover::after,
#publicum-mobile-nav .menu > li > a:focus::after {
width: 100%;
} #publicum-mobile-nav .menu li.menu-item-has-children > a {
padding-right: 2em;
}
#publicum-mobile-nav .menu li.menu-item-has-children > a::before {
content: "";
display: block;
position: absolute;
top: 50%;
right: 0.7em;
width: 0.5em;
height: 0.5em;
border-right: 0.09rem solid var(--color-orange-dark);
border-bottom: 0.09rem solid var(--color-orange-dark);
transform: translateY(-50%) rotate(45deg);
transition: transform 0.22s;
}
#publicum-mobile-nav .menu li.open > a::before {
transform: translateY(-30%) rotate(135deg);
} .submenu-toggle {
background: none;
border: none;
padding: 0.3rem;
margin-left: 0.5rem;
cursor: pointer;
display: inline-flex;
align-items: center;
justify-content: center;
} .submenu-toggle .chevron {
display: block;
width: 0.6rem;
height: 0.6rem;
border-right: 2px solid var(--color-orange-dark);
border-bottom: 2px solid var(--color-orange-dark);
transform: rotate(45deg);
transition: transform 0.2s ease;
} .menu-item-has-children.open .submenu-toggle .chevron {
transform: rotate(135deg);
}  :not(.js) #publicum-mobile-nav .menu-item-has-children > a {
font-weight: bold;
} @media (min-width: 75rem) {
.publicum-burger-toggle,
#publicum-menu-toggle {
display: none !important;
}
} html:not(.js) #publicum-mobile-nav {
display: none;
}
html:not(.js) #publicum-menu-toggle:checked + .publicum-burger-toggle + #publicum-mobile-nav {
display: flex;
} #publicum-mobile-nav {
background-color: var(--color-beige-light);
position: absolute;
top: 100%;
right: 0;
width: 16.25rem;
box-shadow: 0 0.25rem 0.75rem rgba(0,0,0,0.09);
border-radius: 0.4rem;
z-index: 1500;
padding: 1rem 1.5rem;
flex-direction: column;
gap: 0.4rem;
} .publicum-burger-toggle:focus {
outline: none;
}
.publicum-burger-toggle:focus-visible {
outline: 0.1rem solid var(--color-orange-light);
outline-offset: 0.18rem;
box-shadow: 0 0 0 0.1rem rgba(198,106,0,.25);
} @supports not selector(:focus-visible) {
.publicum-burger-toggle:focus {
outline: 0.08rem solid rgba(198,106,0,.5);
outline-offset: 0.18rem;
}
} .visually-hidden {
position: absolute !important;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
border: 0;
} .js #publicum-mobile-nav {
display: none !important;
opacity: 0;
transform: translateY(-0.5rem);
transition: opacity 0.28s ease, transform 0.28s ease;
}
.js #publicum-mobile-nav.menu-open {
display: flex !important;
opacity: 1;
transform: translateY(0);
}
.js .no-js-only { 
display: none !important; 
}
html:not(.js) .js-only { 
display: none !important; 
}
.js #publicmenu { 
display: none !important; 
}  .publicum-header-container .publicum-logo {
display: inline-flex;
align-items: center;
flex: 0 0 auto;               
}
.publicum-header-container .publicum-logo img {
display: block;
height: 3.13rem;              
width: auto;
max-width: 100%;
} .logo {
font-family: "Amarante";
font-size: 2rem;
color: #FFFFFF;
line-height: 1.2; 
margin: 0; 
text-decoration: none;
}
.tagline {
font-family: "Source Sans 3";
font-weight: 300;
font-size: 14px;
color: #e3ebd7;
margin-top: 4px; 
line-height: 1.4;
} .search-toggle-wrapper {
position: relative;
display: inline-block;
}
.search-toggle {
background: var(--color-gray-light);
color: var(--color-green-dark);
border: none;
border-radius: 0.4rem;
padding: 0.35rem 0.8rem;
margin: 0 1rem 0 3rem;
cursor: pointer;
display: inline-flex;
align-items: center;
justify-content: center;
line-height: 1;
transition: background-color 0.18s ease;
}
.search-toggle::-webkit-details-marker { 
display: none; 
}
.search-toggle::marker { 
content: ""; 
}
.search-toggle:hover,
.search-toggle:focus,
.search-toggle:focus-visible {
background-color: var(--color-beige-light);
outline: 2px solid transparent;
box-shadow: 0 0 0 2px rgba(175,68,3,.2);
}
.search-form {
position: absolute;
top: 100%;
right: 0;
min-width: 16.25rem;
background: var(--color-white);
padding: 0.5rem;
z-index: 999;
box-shadow: 0 0.13rem 0.31rem rgba(0,0,0,0.1);
display: flex;
align-items: center;
gap: 0.5rem;
opacity: 0;
visibility: hidden;
transform: translateY(-0.25rem);
pointer-events: none;
transition:
opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1),
transform 0.25s cubic-bezier(0.4, 0, 0.2, 1),
visibility 0s linear 0.25s;
}
.search-toggle-wrapper[open] .search-form {
opacity: 1;
visibility: visible;
transform: none;
pointer-events: auto;
transition:
opacity 0.25s cubic-bezier(.4,0,.2,1),
transform 0.25s cubic-bezier(.4,0,.2,1),
visibility 0s; 
}
.search-toggle-wrapper.open .search-form {
opacity: 1;
visibility: visible;
transform: none;
pointer-events: auto;
transition:
opacity 0.25s cubic-bezier(.4,0,.2,1),
transform 0.25s cubic-bezier(.4,0,.2,1),
visibility 0s;
}
.search-form .search-input {
flex: 1 1 auto;
min-width: 0;
font-size: 1.2rem;
padding: 0.4rem 0.7rem;
border: 1px solid var(--color-gray-light);
border-radius: 0.4rem;
}
.search-form button[type="submit"] {
background-color: var(--color-green-dark);
color: var(--color-white);
border: none;
border-radius: 0.4rem;
font-weight: 600;
font-size: 1.2rem;
padding: 0.45rem 1.2rem;
cursor: pointer;
margin-left: 0.5rem;
transition: background-color 0.18s ease, color 0.18s ease;
}
.search-form button[type="submit"]:hover,
.search-form button[type="submit"]:focus,
.search-form button[type="submit"]:focus-visible {
background-color: var(--color-orange-dark);
color: var(--color-white);
}
.no-js .search-toggle-wrapper:not([open]):not(.open) .search-form {
display: none !important; 
}
.publicum-main-menu .menu-list li ul li.current-menu-item > a {
background: var(--color-beige-dark);
color: var(--color-orange-dark);
font-weight: 600;
}
.search-toggle-wrapper .search-form { display: flex; } 
.search-toggle-wrapper.open .search-form,
.search-toggle-wrapper[open] .search-form {
display: flex !important;
opacity: 1;
visibility: visible;
transform: none;
pointer-events: auto;
transition: opacity .25s cubic-bezier(.4,0,.2,1), transform .25s cubic-bezier(.4,0,.2,1), visibility 0s;
} .avis-section{
background: var(--color-white);
width: 100vw;
position: relative;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
padding: 3rem 0;
box-sizing: border-box;
}
.avis-container{
max-width: 90rem;
margin: 0 auto;
padding: 0 1rem;
}
.avis-title{
font-size: 2rem;
font-weight: 700;
color: var(--color-green-dark);
margin: 0 0 2rem;
}
.avis-list{
display: grid;
gap: 1.8rem;
grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
}
.avis-item {
background: var(--color-white);
border-radius: 0.4rem;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
padding: 1.5rem;
font-size: 1rem;
line-height: 1.6;
transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.avis-item:hover,
.avis-item:focus-within {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
transform: translateY(-0.2rem);
}
.avis-texte{ margin: 0 0 .8rem; font-style: italic; }
.avis-auteur{ margin:0; font-weight:600; color: var(--color-green-medium); } .breves-section {
background: var(--color-white);
width: 100vw;
position: relative;
left: 50%;
right: 50%;
box-sizing: border-box;
margin-left: -50vw;
margin-right: -50vw;
padding: 3rem 0;
z-index: 0;
}
.breves-title {
font-size: 2rem;
font-weight: 700;
color: var(--color-green-dark);
}
.breves-container {
max-width: 90rem;
margin: 0 auto;
padding: 0 1rem;
display: flex;
flex-wrap: wrap;
gap: 2.5rem;
justify-content: flex-start;
}
.breves-item {
flex: 1 1 21.25rem; 
display: flex;
flex-direction: column;
align-items: flex-start;
background: transparent;
min-width: 18.75rem;
}
.breves-icon {
width: 100%;
margin-bottom: 1.2rem;
display: flex;
justify-content: center;
}
.breves-icon img {
width: 100%;
max-width: 100%;
border-radius: 0.4rem; 
display: block;
max-height: 15rem;
object-fit: cover;
}
.breves-content {
width: 100%;
display: flex;
flex-direction: column;
align-items: flex-start;
}
.breves-list {
display: flex;
flex-wrap: wrap;
gap: 2.5rem;
align-items: flex-start;
}
.breves-titre {
font-size: 1.25rem;
font-weight: 700;
margin-bottom: 0.5rem;
color: var(--color-green-dark);
}
.breves-texte {
font-size: 1.01rem;
color: var(--color-gray-dark);
margin-bottom: 0;
} .publications-section-title,
.alertes-section-title {
font-size: var(--heading-h2-font-size, 2rem);
font-weight: 700;
line-height: 1.2;
margin: 0 0 1.2rem;
text-align: left; 
color: var(--color-white);
}
.publications-section {
background: var(--color-white);
width: 100vw;
position: relative;
left: 50%;
right: 50%;
box-sizing: border-box;
margin-left: -50vw;
margin-right: -50vw;
padding: 4rem 0;
z-index: 0;
}
.publications-container {
max-width: 90rem; 
margin: 0 auto;
padding: 0 1rem; 
}
.publications-section-title {
font-size: 2rem;
color: var(--color-green-dark);
margin-bottom: 1.25rem;
font-weight: 700;
}
.publications-content-wrapper {
display: flex;
align-items: flex-start;
flex-wrap: wrap;
gap: 1rem;
}
.publications-section * {
line-height: 1.5;
}
.publications-content {
flex: 1 1 21.25rem;
display: flex;
flex-direction: column;
justify-content: center;
padding-right: 2rem;
}
.publications-chapeau {
font-size: 1.3rem;
font-weight: 700;
margin-bottom: 0.75rem;
color:var(--color-green-dark);
}
.publications-texte {
margin-bottom: 1rem;
font-size: 1.01rem;
}
.publications-image {
flex: 0 0 38rem;      
max-width: 38rem;    
min-width: 15rem;   
display: flex;
align-items: center;
justify-content: center;
}
.publications-image img {
width: 100%;
border-radius: 0.4rem;  
display: block;
max-height: 25rem;
object-fit: cover;
} .alertes-section {
background-color: var(--color-white); 
width: 100vw;
position: relative;
left: 50%;
box-sizing: border-box;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
padding: 2.5rem 0;
z-index: 0;
}
.alertes-section h2,
.alertes-section h3,
.alertes-section p {
color: var(--color-white);
}
.alertes-container {
max-width: 90rem; 
margin: 0 auto;
padding: 0 1rem;
}
.alertes-grid {
display: flex;
justify-content: center;
align-items: stretch;
flex-wrap: wrap;
gap: 2rem;
max-width: 64rem;
margin: 0 auto;
}
.alertes-col h3 {
margin-top: 0;
}
.alertes-list {
margin: 0.5rem 0;         
padding-left: 1.2rem;    
list-style: disc;         
color: var(--color-white);           
}
.alertes-list li {
margin: 0.2rem 0;        
line-height: 1.3;      
}
.alertes-list li::marker {
color: var(--color-white);            
} .logos-section {
background: var(--color-white);
width: 100vw;
position: relative;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
padding: 3rem 0;
box-sizing: border-box;
z-index: 0;
}
.logos-title {
max-width: 90rem;
margin: 0 auto 2rem auto;
padding: 0 1rem;
font-size: 2rem;
font-weight: 700;
color: var(--color-green-dark);
text-align: left;
}
.logos-container {
max-width: 90rem;
margin: 0 auto;
padding: 0 1rem;
display: flex;
flex-wrap: wrap;
gap: 3.5rem;
justify-content: center;     
align-items: center;
width: 100%;
box-sizing: border-box;
}
.logo-item img {
max-height: 5rem;
width: auto;
height: 3.5rem;
display: block;
filter: grayscale(100%);
align-items:center;           
flex: 0 0 auto;  
transition: filter 0.2s ease;
}
.logo-item:hover img,
.logo-item:focus-within img,
.logo-item a:focus-visible img {
filter: grayscale(0%) contrast(1.1);
} .search-page {
width: 100vw;
position: relative;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
background: var(--color-white);
padding: 3rem 0 3.5rem;
box-sizing: border-box;
}
.search-container {
max-width: 90rem;
margin: 0 auto;
padding: 0 2rem;
}
.search-header h1 {
color: var(--color-green-dark);
font-size: 2.3rem;
font-weight: 700;
margin-bottom: 1rem;
padding-bottom: 0.38rem;
}
.results-count {
color: var(--color-gray-medium);
font-size: 1.4rem;
margin-bottom: 2rem;
}
.search-results {
list-style: none;
padding-left: 0;
margin-bottom: 3rem;
}
.search-item {
margin-bottom: 2rem;
}
.search-item-title {
font-size: 1.4rem;
margin-bottom: 0.5rem;
text-transform: none;
}
.search-item-title a {
color: var(--color-green-dark);
text-decoration: underline dotted;
transition: color 0.2s;
}
.search-item-title a:hover {
color: var(--color-green-light);
text-decoration: underline solid;
}
.search-item-excerpt {
font-size: 1.2rem;
margin: 0;
}
.pagination {
display: flex;
justify-content: center;
gap: 1rem;
font-size: 1.5rem;
}
.pagination a,
.pagination span {
padding: 0.5rem 1rem;
border: 1px solid var(--color-green-light);
color: var(--color-green-strong);
text-decoration: none;
transition: background 0.2s, color 0.2s;
}
.pagination a:hover {
background: var(--color-green-light);
color: var(--color-white);
}
.no-results {
text-align: center;
}
.no-results h2 {
font-size: 1.8rem;
margin-bottom: 1rem;
}
.no-results p {
margin-bottom: 2rem;
color: var(--color-gray-medium);
} .acces-rapides-icon {
fill: currentColor;
color: var(--color-gray-medium);
display: block;
padding-bottom: 0;
line-height: 1;
width: 4.5rem;
height: 4.5rem;
margin-bottom: -1.8rem;
}
.icon-link:hover {
opacity: 0.8;
}
.acces-rapides-section {
background: var(--color-white);
width: 100vw;
position: relative;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
padding: 3rem 0;
box-sizing: border-box;
z-index: 0;
}
.acces-rapides-container {
max-width: 90rem;
margin: 0 auto;
padding: 0 1rem;
gap: 0;
}
.acces-rapides-title {
font-size: 2rem;
color: var(--color-green-dark);
font-weight: 700;
text-align: left;
margin-bottom: 2rem;
padding-bottom: 0;
line-height: 1.1;
}
.acces-rapides-links {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 5rem;
margin-top: 0;
padding-top: 0;
padding-bottom: 2rem;
}
.icon-link {
display: flex;
flex-direction: column;
align-items: center;
text-decoration: none;
color: inherit;
max-width: 11rem;
transition: opacity 0.2s ease;
margin-bottom: 0;
}
.acces-rapides-label {
font-size: 0.95rem;
margin-top: 3rem;
padding-top: 0;
line-height: 1.1;
color: var(--color-green-dark);
text-decoration: none;
font-weight: 600;
} .sidebar .btn-group { 
display:flex; 
flex-direction:column; 
gap: var(--space-2); 
}
.sidebar_image.single {
display: block;
width: 100%;
max-width: 37.5rem;
height: auto;
margin-left: 0;
}
.sidebar_image-single-wrapper img {
display: inline-block;
width: 37.5rem;
max-width: 100%;
height: auto;
border-radius: 0.4rem;
box-shadow: 0 0.13rem 0.5rem rgba(0,0,0,0.09);
}
.sidebar_image {
display: flex;
flex-wrap: wrap;
gap: 0.38rem;
padding: 0 0.5rem; 
max-width: 100%;
box-sizing: border-box;
}
.sidebar_image img {
width: calc(50% - 0.19rem); 
max-width: calc(50% - 0.19rem);
height: 7rem;
object-fit: cover;
border-radius: 0.4rem;
background: var(--color-beige-light);
display: block;
}
.sidebar_image.single {
display: block;
width: 100%;
max-width: 37.5rem;
margin-bottom: 0.5rem;
margin-top: 2rem;
border-radius: 0.4rem;
}
.sidebar_image.single img {
display: block;
max-width: 37.5rem;
height: auto;
border-radius: 0.4rem;
box-shadow: 0 0.13rem 0.5rem rgba(0,0,0,0.09);
margin: 0 auto;
}
.page-section-sidebar a {
display: inline-block;
padding: 0.65rem 1.2rem;
background-color: var(--color-orange-light);
color: var(--color-white);
text-decoration: none;
border-radius: 0.4rem;
font-weight: 600;
font-size: 0.8rem;
line-height: 1.4;
border: none;
cursor: pointer;
transition: background-color 0.2s ease-in-out;
}
.page-section-sidebar a:hover {
background-color: var(--color-orange-hover);
}
.page-id-159 .page-section-sidebar,
.page-id-3 .page-section-sidebar,
.page-id-169 .page-section-sidebar {
display: none;
}  .main-page-publicum {
color: var(--color-green-dark);
}
.publicum-wrapper {
max-width: 70rem;
margin: 0 auto;
padding: 2rem 1.5rem;
text-align: center;
}
.h1-page-publicum {
color: var(--color-green-forest) !important;
font-weight: 700;
text-transform: none;
}
.publicum-intro {
min-height: 80vh;
display: flex;
align-items: center;
}
.publicum-section {
scroll-margin-top: 8rem; 
} .publicum-wrapper h1,
.publicum-wrapper h2 {
text-align: center;
margin-bottom: 2rem;
margin-top: 4rem;
}
.publicum-wrapper h3 {
margin-top: 0;
margin-bottom: 1rem;
} .publicum-buttons {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 1rem;
margin-top: 2rem;
margin-bottom: 2rem;
} .publicum-grid {
display: flex;
flex-direction: column;
gap: 2rem;
} ul.list {
margin: 1rem 0;
padding-left: 1.2rem;
}
ul.list li {
margin-bottom: 0.4rem;
} .cta {
text-align: center;
margin-top: 3rem;
}  .cartes-title {
position: relative;
padding-bottom: 0.5rem;
text-transform: uppercase;
font-weight: 700;
font-size: 2rem;
color: var(--color-green-dark);
margin-bottom: 1.2rem;
}
.cartes-title::after {
content: '';
display: block;
width: 6rem;
height: 0.5rem;
border-radius: 0.13rem;
background-color: var(--color-orange-light);
margin-top: 0.5rem;
} .cartes-subtitle {
display: block;
margin-top: 0.7rem;
margin-bottom: 0.7rem;
line-height: 1.3;
letter-spacing: 0.01em;
color: var(--color-green-medium);
font-weight: 600;
} .cartes-intro {
display: block;
color: var(--color-white);
font-size: 1.17rem;
font-weight: 400;
background-color: var(--color-green-dark);
border-radius: 0.4rem;
padding: 0.85rem 1.2rem;
margin-bottom: 1.5rem;
line-height: 1.55;
} .cartes-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
gap: 2.5rem;
align-items: stretch;
margin-top: 2rem;
} .carte-titre {
font-size: 1.4rem;
font-weight: 700;
margin-bottom: 0.5rem;
color: var(--color-green-dark);
}
.carte-soustitre {
font-size: 1.1rem;
line-height: 1.6;
font-weight: 600;
color: var(--color-orange-light);
margin-bottom: 1rem;
} .carte-contenu {
font-size: 1rem;
line-height: 1.5;
margin-bottom: 1.5rem;
color: var(--color-green-dark);
} .carte > .btn {
align-self: center;           
display: inline-flex;
justify-content: center;
align-items: center;
} .carte-icon {
width: 5rem;
height: 5rem;
fill: var(--color-green-light);
display: block;
margin: 0 auto 1rem;
transition: filter .3s ease;
}
.carte-icon:hover {
filter: brightness(0.9);
} .section-accordeon {
background: var(--color-beige-light);
padding: 2rem 1rem;
max-width: 90rem;
margin: auto;
border-radius: 0.4rem;
color: var(--color-green-dark);
}
.accordeon-subtitle {
font-size: 1.5rem;
font-weight: 600;
margin-bottom: 1rem;
margin-top: 2rem;
color: var(--color-green-medium);
}
.accordeon-chapeau {
font-size: 1.1rem;
margin-bottom: 1.5rem;
font-weight: 600;
color: var(--color-green-medium);
}
.accordeon-texte {
font-size: 1.2rem;
margin-bottom: 2rem;
line-height: 1.5;
} .accordeon-accordion {
display: flex;
flex-direction: column;
gap: 1.5rem;
}
.accordeon-item {
background-color: var(--color-white);
border-radius: 0.4rem;
box-shadow: 0 0.13rem 0.38rem rgba(30,40,20,0.06);
overflow: hidden;
}
.accordeon-question {
width: 100%;
padding: 1.25rem 2rem;
font-size: 1.1rem;
font-weight: 600;
color: var(--color-orange-light);
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
background: none;
border: none;
}
.accordeon-question::after {
content: "";
display: inline-block;
width: 1.2rem;
height: 1.2rem;
margin-left: 1rem;
background: url("data:image/svg+xml,%3Csvg ... %3E") no-repeat center;
background-size: contain;
transition: transform 0.3s ease;
}
.accordeon-answer {
padding: 0 2rem;
font-size: 1rem;
line-height: 1.6;
color: var(--color-drak-gray);
background-color: var(--color-white);
overflow: hidden;
max-height: 0;
opacity: 0;
transition: max-height 0.35s ease, opacity 0.3s ease, padding 0.3s ease;
}
details[open] .accordeon-answer {
padding: 2rem;
max-height: 100vh;
opacity: 1;
}
.accordeon-question:focus {
outline: 0.13rem solid var(--color-orange-light);
}
@media (prefers-reduced-motion: reduce) {
.accordeon-question::after {
transition: none;
}
} .agenda-demo {
padding: 3rem 0 3.5rem;
background: var(--color-white);
min-height: 100vh;
}
.agenda-demo .container {
max-width: 43.75rem;
margin: 0 auto;
padding: 0 2rem;
}
.agenda-title {
font-size: 2.1rem;
font-weight: 700;
color: var(--color-green-dark);
margin-bottom: 0.7rem;
}
.agenda-description {
font-size: 1.15rem;
line-height: 1.55;
color: var(--color-green-dark);
margin-bottom: 2.2rem;
}
.agenda-visuel {
display: flex;
flex-direction: column;
align-items: center;
gap: 1.3rem;
}
.agenda-visuel img {
max-width: 21.25rem;
width: 100%;
border-radius: 0.7rem;
box-shadow: 0 0.13rem 0.63rem rgba(0,0,0,0.07);
margin-bottom: 1.2rem;
} .contact-section {
width: 100%;
margin: 0;
padding: 3rem 0;
box-sizing: border-box;
}
.contact-wrapper {
justify-content: space-between;
gap: 4rem;
max-width: 80rem;
margin: 0 auto;
padding: 0 2rem;
} .contact-section > .page-title {
flex: 0 0 100%;
margin-bottom: 1.5rem;
}
.contact-page {
width: 100%;
margin: 0;
padding: 3rem 0;
box-sizing: border-box;
}
.contact-container {
display: flex;
max-width: 80rem;
margin: 0 auto;
gap: 4rem;
padding: 0 2rem;
align-items: flex-start;
flex-wrap: wrap;
}
.contact-container > .page-title {
flex: 0 0 100%;   
margin-bottom: 1.5rem;
}
.contact-left {
flex: 1 1 0;
width: 40rem;
background-color: var(--color-gray-medium);
border-radius: 1.2rem;
padding: 2.4rem 2rem;
font-size: 1.07rem;
display: flex;
flex-direction: column;
gap: 1.8rem;
}
.contact-agenda {
margin-top: 1.2rem;
background: var(--color-gray-medium);
border-radius: 0.7rem;
padding: 1.1rem 1.2rem;
font-size: 1.2rem;
color: var(--color-green-dark);
}
.contact-right {
width: 60rem;
max-width: 40vw;
flex-shrink: 0;
background: var(--color-white);
border-radius: 1.2rem;
box-shadow: 0 0.13rem 1rem rgba(30,40,20,0.08);
padding: 2.1rem 2rem 2.3rem 2rem;
display: flex;
flex-direction: column;
gap: 1.4rem;
}
.contact-right form {
width: 100%;
}
.contact-right input,
.contact-right textarea {
width: 100%;
font-size: 1.2rem;
border-radius: 0.4rem;
border: 1px solid var(--color-gray-medium);
padding: 0.65rem 0.8rem;
margin-bottom: 1.1rem;
background-color: var(--color-gray-light);
}
.contact-right input[type="text"],
.contact-right input[type="email"],
.contact-right input[type="file"],
.contact-right textarea,
.contact-right select {
width: 100%;
background-color: var(--color-white);
color: var(--color-gray-dark);
border: 1px solid var(--color-gray-medium);
padding: 0.65rem 1rem;
font-size: 1.2rem;
border-radius: 0.3rem;
transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
box-sizing: border-box;
}
.contact-right input[type="text"]:hover,
.contact-right input[type="email"]:hover,
.contact-right input[type="file"]:hover,
.contact-right textarea:hover,
.contact-right select:hover {
border-color: var(--color-green-medium);
box-shadow: 0 0 0 1px rgba(122, 140, 92, 0.15);
}
.contact-right input[type="text"]:focus,
.contact-right input[type="email"]:focus,
.contact-right input[type="file"]:focus,
.contact-right textarea:focus,
.contact-right select:focus {
outline: 0.13rem solid var(--color-green-light);
outline-offset: 0.13rem;
border-color: var(--color-green-light);
box-shadow: none;
}
.contact-right label {
display: block;
margin-bottom: 0.5rem;
font-weight: 600;
color: var(--color-green-dark);
font-size: 0.95rem;
}
.contact-right .wpcf7-submit {
margin-top: 1rem;
}
.contact-right input.wpcf7-not-valid,
.contact-right textarea.wpcf7-not-valid,
.contact-right select.wpcf7-not-valid {
border-color: var(--color-orange-dark);
outline: 0.13rem solid var(--color-orange-dark);
outline-offset: 0.13rem;
}
.contact-right .wpcf7-not-valid-tip {
color: var(--color-orange-dark);
font-size: 0.9rem;
margin-top: 0.4rem;
}
.contact-right .wpcf7-response-output {
margin-top: 1.5rem;
padding: 1rem 1.2rem;
border: 0.13rem solid var(--color-orange-dark);
background-color: var(--color-beige-light);
color: var(--color-orange-dark);
font-weight: 600;
font-size: 1.2rem;
border-radius: 0.4rem;
}
.wpcf7 form.sent .wpcf7-response-output {
border: 0.13rem solid var(--color-orange-dark);
}
.contact-right input[type="submit"],
.contact-right button {
background-color: var(--color-gray-medium);
color: var(--color-green-dark);
font-weight: 600;
border-radius: 0.4rem; 
padding: 0.7rem 1.7rem;
font-size: 1.13rem;
border: none;
cursor: pointer;
transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
}
.contact-right input[type="submit"]:hover,
.contact-right button:hover {
background-color:  var(--color-green-light);
color: var(--color-white);
}
.contact-left form {
display: flex;
flex-direction: column;
gap: 1rem;
}
.contact-left input[type="text"],
.contact-left input[type="email"],
.contact-left textarea,
.contact-left select {
width: 100%;
padding: 0.8rem;
border: 1px solid var(--color-gray-light);
background-color: var(--color-white);
font-size: 1.2rem;
border-radius: 0.4rem;
}
.contact-left input:hover,
.contact-left textarea:hover,
.contact-left select:hover {
border-color: var(--color-gray-medium);
background-color: var(--color-white);
}
.contact-left input:focus,
.contact-left textarea:focus,
.contact-left select:focus {
border-color: var(--color-green-dark);
background-color: var(--color-white);
}
.contact-left label {
font-weight: 500;
margin-bottom: 0.3rem;
display: block;
}
.contact-left a {
color: var(--color-orange-dark);
font-size: 1.17rem;
font-weight: 700;
}
.contact-left a:hover {
color: var(--color-orange-bright);
}
.contact-button-wrapper .btn {
color: var(--color-white) !important;
text-align: center;
}
.contact-right iframe {
width: 100%;
height: 25rem;
border: none;
}
.wpcf7-form p {
display: block;
margin: 0;
}
.wpcf7-form-control-wrap[data-name="gdpr-consent"] {
display: inline-block;
}
.wpcf7-list-item {
display: inline-flex;
gap: .6rem;
align-items: flex-start;
} .site-footer {
background-color: var(--color-green-dark);
padding: 2rem 2rem;
font-size: 0.9rem;
}
.footer-content {
display: flex;
flex-direction: row;
justify-content: space-between;
gap: 2rem;
max-width: 90rem;
margin: 0 auto;
}
.footer-column {
flex: 1;
min-width: 0;
}
.footer-column.footer-left {
flex: 0 0 25%;
}
.footer-column.footer-center,
.footer-column.footer-right {
flex: 0 0 37.5%;
} .footer-menu {
list-style: none;
padding: 0;
margin: 0;
}
.footer-menu .menu-item {
margin-bottom: 0.5rem;
}
.footer-menu .menu-link {
text-decoration: none;
color: var(--color-white);
font-size: 1.2rem;
font-weight: 500;
transition: color 0.2s ease;
} .site-footer .footer-menu a:hover { 
color: var(--color-orange-light, #FFA94D); 
} .footer-menu .current-menu-item > .menu-link,
.footer-menu .current_page_item > .menu-link {
color: var(--color-orange-vivid);
font-weight: 600;
} .footer-bottom {
text-align: center;
font-size: 1rem;
color: var(--color-orange-vivid);
border-top: 0.06rem solid var(--color-gray-light);
padding-top: 1rem;
margin-top: 2rem;
}
.footer-bottom a {
color: var(--color-white);
text-decoration: none;
}
.footer-bottom a:hover {
color: var(--color-orange-light);
}
.footer-info-item {
color: var(--color-white);
} .footer-socials svg.footer-icon {
width: 3.5rem;
height: 3.5rem;
fill: currentColor;
vertical-align: middle;
background: none;
box-shadow: none;
transition: filter 0.3s ease; 
}
.footer-socials a:hover svg {
filter: brightness(0.6) saturate(1.5) contrast(1.4);
}
.footer-socials a::after,
.footer-socials a::before {
display: none;
content: none;
}
.footer-socials svg.footer-icon {
vertical-align: middle;
background: none;
box-shadow: none;
}
.footer-socials a {
color: transparent;
}
.footer-column.footer-center {
display: flex;
flex-direction: column;
align-items: center;
} .footer-newsletter {
margin: 5.5rem auto 0;
max-width: 22.5rem;
width: 100%;
}
.footer-newsletter-title {
color: var(--color-white);
}
.footer-newsletter-form form {
display: flex;
justify-content: center;
align-items: center;
gap: .6rem;
flex-wrap: wrap;
}
.footer-newsletter-form input[type="email"] {
box-sizing: border-box;
padding: .6rem .8rem;
border: 1px solid var(--color-gray-light);
border-radius: .4rem;
font-size: .95rem;
min-width: 13.75rem;
}
.footer-newsletter-form button {
padding: .62rem 1.1rem;
border-radius: .4rem;
} .footer-infos {
display: flex;
flex-wrap: wrap;
justify-content: flex-start; 
align-items: flex-start;
gap: 2rem;
padding-right: 3rem;
}
.footer-info-item {
display: flex;
flex-direction: column;
align-items: flex-start;
text-align: center;
max-width: 22rem;
color: var(--color-white);
line-height: 1.6;
} .footer-info-item img {
display: block;
width: 12rem;
height: auto;
margin-bottom: 0.8rem;
border-radius: 0.3rem;
} .footer-info-text {
font-size: 1rem;
font-weight: 400;
line-height: 1.55;
color: var(--color-white);
margin: 0;
padding: 0;
max-width: 20rem;
}
.footer-right,
.footer-infos,
.footer-info-item,
.footer-info-item:last-child {
text-align: left !important;
align-items: flex-start !important;
} .footer-info-item:last-child .footer-info-text {
max-width: 28rem;
font-size: 1rem;
line-height: 1.6;
} .error-403,
.error-404 {
max-width: 600px;
margin: 6rem auto;
padding: 2rem;
text-align: center;
background-color: var(--color-white);
border: 1px solid var(--color-gray-light);
border-radius: 0.5rem;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}
.error-403 h1,
.error-404 h1 {
font-size: 2rem;
margin-bottom: 1rem;
color: var(--color-gray-dark);
}
.error-403 p,
.error-404 p {
font-size: 1.1rem;
margin-bottom: 1rem;
line-height: 1.6;
color: var(--color-gray-dark);
}
.error-403 a,
.error-404 a {
display: inline-block;
margin-top: 1rem;
padding: 0.6rem 1.2rem;
background-color: var(--color-orange-light);
text-decoration: none;
border-radius: 0.3rem;
transition: background-color 0.2s ease-in-out;
}
.error-403 a:hover,
.error-404 a:hover {
background-color: var(--color-beige-light);
} .sitemap-page {
width: 100vw;
position: relative;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
background: var(--color-white);
padding: 3rem 0 3.5rem;
box-sizing: border-box;
}
.sitemap-container {
max-width: 90rem;
margin: 0 auto;
padding: 0 2rem;
}
.sitemap-page h1, .sitemap-page h2 {
color: var(--color-green-dark);
font-size: 2.3rem;
font-weight: 700;
margin-bottom: 2.2rem;
padding-bottom: 0.38rem;
margin-top: 0;
}
.sitemap-page ul,
.sitemap-page ol {
list-style: none;
padding-left: 0;
margin-bottom: 2rem;
}
.sitemap-page li {
position: relative;
padding-left: 1.2rem;
margin-bottom: 0.28rem;
}
.sitemap-page li::before {
content: "›";
position: absolute;
left: 0;
top: 0;
color: var(--color-green-light);
font-weight: bold;
font-size: 1.05em;
}
.sitemap-page a {
color: var(--color-green-dark);
text-decoration: underline dotted;
transition: color 0.2s;
}
.sitemap-page a:hover {
color: var(--color-green-light);
text-decoration: underline solid;
}  .page-section {
position: relative;
inline-size: 100vw;
margin-inline: calc(50% - 50vw);
padding: 3rem 0 3.5rem;
box-sizing: border-box;
background: var(--color-white);
overflow-x: clip;
}
@supports (width: 100dvw) {
.page-section {
inline-size: 100dvw;
margin-inline: calc(50% - 50dvw);
}
} .page-section-content-wrapper {
max-width: 90rem;
margin-inline: auto;
padding-inline: 1rem;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 4rem;
flex-wrap: nowrap;
} .page-section-main-content {
flex: 1 1 0;
min-inline-size: 0;
} .page-section-content-wrapper:has(.page-section-sidebar) {
display: flex;
gap: 2rem;
}
.page-section-content-wrapper:not(:has(.page-section-sidebar)) {
display: block;
} .page-section-sidebar {
width: 20rem;
max-width: 30vw;
min-height: 50vw;
flex-shrink: 0;
background-color: var(--color-gray-light);
border-radius: 0.4rem;
padding: 1rem 1.2rem;
font-size: 1.2rem;
color: var(--color-green-dark);
display: flex;
flex-direction: column;
gap: 1.3rem;
margin-top: 2rem;
}
.sidebar-text {
padding-top: 2rem;
font-size: 1rem;
} .page-title {
position: relative;
padding-bottom: 0.5rem;
text-transform: uppercase;
font-weight: 700;
font-size: 2rem;
}
.page-title::after {
content: '';
display: block;
width: 6rem;
height: 0.5rem;
border-radius: 0.13rem;
background-color: var(--color-orange-light);
margin-top: 0.5rem;
} .page-subtitle {
display: block;
margin-top: 0.7rem;
margin-bottom: 0.7rem;
line-height: 1.3;
letter-spacing: 0.01em;
} .page-intro {
display: block;
color: var(--color-white);
font-size: 1.17rem;
font-weight: 400;
background-color: var(--color-green-medium);
border-radius: 0.4rem;
padding: 0.85rem 1.2rem;
margin-bottom: 1.5rem;
line-height: 1.55;
} .page-gallery {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
gap: 1rem;
margin: 2rem 0 1.2rem 0;
justify-items: center;
align-items: stretch;
}
.page-gallery img {
display: block;
width: 100%;
max-width: 320px;
height: auto;
border-radius: 0.4rem;
object-fit: cover;
box-shadow: 0 0.13rem 0.5rem rgba(0,0,0,0.06);
}
.page-gallery.single {
grid-template-columns: 1fr;
}
.page-gallery-single-wrapper {
margin-bottom: 2rem;
} .page-section-main-content,
.page-section-sidebar {
min-inline-size: 0;
} .page-image-single img,
.sidebar-pdf svg {
display: block;
max-width: 100%;
height: auto;
} .pdf-link,
.sidebar-text a {
overflow-wrap: anywhere;
word-break: break-word;
} .actualites-section {
background: var(--color-white);
width: 100vw;
position: relative;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
padding: 3rem 0;
box-sizing: border-box;
z-index: 0;
}
.actualites-container {
max-width: 90rem;
margin: 0 auto;
padding: 0 1rem;
}
.actualites-title {
font-size: 2rem;
color: var(--color-green-dark);
margin-bottom: 2rem;
font-weight: 700;
text-align: left;
}
.actualites-list {
display: flex;
flex-wrap: wrap;
gap: 2rem;
margin-top: 2rem;
}
.actualites-content {
display: flex;
flex-direction: column;
flex: 1 1 calc((100% - 3 * 2rem) / 4);
border-radius: 0.4rem;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
transition: box-shadow 0.3s ease, transform 0.3s ease;
justify-content: flex-start;
background-color: var(--color-white);
}
.actualites-body {
display: flex;
flex-direction: column;
flex-grow: 1;
padding: 1.2rem 1.25rem;
gap: 0.4rem;
}
.actualites-card-title {
margin: 0 0 0.3rem;
}
.actualites-chapo {
font-size: 1.1rem;
font-weight: 600;
color: var(--color-green-medium);
line-height: 1.45;  
margin: 0 0 0.8rem;
}
.actualites-actions {
margin-top: 1rem !important;
padding-bottom: 1rem;
}
.actualites-actions .btn {
display: inline-block;
}
.actualites-content:hover,
.actualites-content:focus-within {
transform: translateY(-0.15rem);
box-shadow: 0 4px 12px rgba(30, 40, 20, 0.15);
}
.actualites-image {
aspect-ratio: 16/9;
width: 100%;
}
.actualites-image img {
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 0.4rem;
}
.actualites-body {
display: flex;
flex-direction: column;
flex-grow: 1;
justify-content: space-between; 
padding: 1rem 1.25rem 1.5rem;  
}
.actualites-card-title a {
color: var(--color-green-dark);
text-decoration: none;
}
.actualites-card-title a:hover,
.actualites-card-title a:focus {
color: var(--color-green-medium);
text-decoration: underline;
}
.actualites-subtitle {
font-size: 1.2rem;
font-weight: 700;
color: var(--color-green-dark);
margin: 0 0 0.2rem;
}
.actualites-actions {
margin-top: auto; 
padding-bottom: 0.1rem; 
}
.actualites-actions .btn {
display: inline-block;
}
.actualites-chapo {
font-size: 1.2rem;       
font-weight: 600;
color: var(--color-green-medium);
line-height: 1.45;
margin: 0.1rem 0; 
}
.actualites-body .btn {
margin-top: auto; 
}
.actualites-text {
font-size: 0.97rem;
color: var(--color-green-dark);
line-height: 1.55;
margin: 0;
}
.page-text-block a {
color: var(--color-orange-light);
}
.page-text-block a:hover {
color: var(--color-orange-dark);
}
@media (prefers-reduced-motion: reduce) {
.actualites-content { 
transition: none; 
}
} .content-actualites {
background: var(--color-white);
max-width: 90rem;
margin: 0 auto;
padding: 3rem 1.5rem;
box-sizing: border-box;
}
.content-actualites h1 {
font-size: 2.2rem;
font-weight: 700;
color: var(--color-green-dark);
margin: 0 0 0.5rem;
}
.content-actualites-subtitle {
font-size: 1.25rem;
font-weight: 600;
color: var(--color-green-medium);
margin: 0 0 1rem;
}
.content-actualites time {
display: block;
font-size: 0.9rem;
color: var(--color-gray-dark);
margin-bottom: 1rem;
}
.content-actualites .featured-image {
margin: 2rem auto;
max-height: 30rem;
overflow: hidden;
text-align: center;
}
.content-actualites .featured-image img {
display: inline-block;
max-width: 100%;
height: auto;
border-radius: 0.4rem;
}
.content-actualites .post-content {
font-size: 1.2rem;
line-height: 1.7;
color: var(--color-green-dark);
}
.content-actualites .post-content p {
margin-bottom: 1.2rem;
}
.content-actualites .post-content a {
color: var(--color-orange-light);
text-decoration: underline;
}
.content-actualites .post-content a:hover,
.content-actualites .post-content a:focus {
color: var(--color-orange-dark);
}
.content-actualites .back-archive {
margin-top: 3rem;
text-align: left;
}
.content-actualites .back-archive a {
font-weight: 600;
text-decoration: none;
}
.content-actualites .back-archive a:hover,
.content-actualites .back-archive a:focus {
text-decoration: none;
}
.actualites-archive-link {
text-align: center;
margin-top: 3rem;
}
.actualites-archive-link a.btn {
background-color: var(--color-green-dark);
transition: background-color 0.3s ease;
}
.actualites-archive-link a.btn:hover,
.actualites-archive-link a.btn:focus {
background-color: var(--color-green-medium);
} .nav-single-actualites {
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 3rem;
padding-top: 1.5rem;
}
.nav-single-actualites a {
font-weight: 600;
color: var(--color-green-medium);
text-decoration: none;
}
.nav-single-actualites a:hover,
.nav-single-actualites a:focus {
text-decoration: underline;
}
.nav-single-actualites .btn {
font-weight: 600;
color: var(--color-white);
text-decoration: none;
} .archive-actualites {
background: #F0F0F0;
max-width: 90rem;
margin: 0 auto;
padding: 3rem 1.5rem;
box-sizing: border-box;
}
.archive-actualites .page-title {
font-size: 2.2rem;
font-weight: 700;
color: var(--color-green-dark);
margin-bottom: 2.5rem;
padding-bottom: 0.8rem;
}
.archive-actualites .grid-cards {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
gap: 2rem;
} .archive-actualites .card {
display: flex;
flex-direction: column;
background: var(--color-white);
border-radius: 0.4rem;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
overflow: hidden;
transition: transform 0.2s ease, box-shadow 0.2s ease;
text-align: center;
}
.archive-actualites .card .page-title,
.archive-actualites .card .button {
margin-left: auto;
margin-right: auto;
}
.archive-actualites .card:hover,
.archive-actualites .card:focus-within {
transform: translateY(-2px);
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}
.archive-actualites .card-thumb img {
display: block;
width: 100%;
height: auto;
border-radius: 0.4rem;
object-fit: cover;
max-height: 12rem;
}
.card {
background-color: var(--color-white);
} 
.archive-actualites .card-content {
flex-grow: 1;
display: flex;
flex-direction: column;
padding: 1.5rem;
align-items: center;
text-align: center;
}
.archive-actualites .card-title {
font-size: 1.25rem;
font-weight: 700;
color: var(--color-green-forest);
margin-bottom: 1.5rem;
text-align: center;
}
.archive-actualites .card-title a {
color: inherit;
text-decoration: none;
}
.archive-actualites .card-title a:hover,
.archive-actualites .card-title a:focus {
text-decoration: underline;
}
.archive-actualites .card-subtitle {
font-size: 1.2rem;
font-weight: 600;
color: var(--color-green-medium);
margin-bottom: 0.5rem;
}
.archive-actualites time {
display: block;
font-size: 0.9rem;
color: var(--color-gray-dark);
margin-bottom: 1rem;
}
.archive-actualites .card-excerpt {
font-size: 0.95rem;
line-height: 1.6;
color: var(--color-green-dark);
margin-bottom: 1.5rem;
}
.archive-actualites .btn-read-more {
display: inline-block;
margin-top: 1rem;
font-size: 0.95rem;
font-weight: 600;
color: var(--color-green-medium);
text-decoration: none;
border: 1px solid var(--color-green-medium);
border-radius: 0.4rem;
padding: 0.6rem 1.2rem;
transition: all 0.2s ease;
}
.archive-actualites .btn-read-more:hover,
.archive-actualites .btn-read-more:focus {
background: var(--color-green-medium);
color: var(--color-white);
}
.archive-actualites .card-content .btn,
.archive-actualites .card-content .btn-read-more {
align-self: center;
margin-top: auto;
} .archive-actualites .navigation,
.archive-actualites .pagination {
margin-top: 3rem;
text-align: center;
} .section-infos {
width: 100vw;
position: relative;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
background-color: var(--color-white);
padding: 3rem 0;
box-sizing: border-box;
}
.infos-title {
font-size: 2rem;
font-weight: 700;
margin-bottom: 2rem;
color: var(--color-green-dark);
}
.section-infos__container {
max-width: 90rem;
margin: 0 auto;
padding: 0 2rem;
}
.section-infos__title {
font-size: 1.2rem;
font-weight: 600;
color: var(--color-green-dark);
margin-bottom: 2rem;
text-align: left;     
}
.section-infos__cols {
display: flex;
gap: 2.2rem;
flex-wrap: wrap;
width: 100%;
color: var(--color-grey-medium);
}
.section-infos a {
font-size: 1.17rem;
font-weight: 700;
color: var(--color-orange-light);
}
.section-infos__cols a:hover {
color: var(--color-orange-dark);
}
.section-infos__col {
flex: 1 1 0;
min-width: 16.25rem;
background-color: var(--color-beige-light);
border-radius: 1.2rem;
padding: 2rem 1.7rem;
display: flex;
flex-direction: column;
gap: 1.2rem;
} .page-container {
max-width: 70rem;
margin: 0 auto;
padding: 3rem 1.5rem;
}
.page-container a {
color: var(--color-orange-light)
}
.page-container a:hover {
color: var(--color-orange-hover)
}
.page-container a.btn,
.page-container a.btn:hover {
color: var(--color-white);
}
.page-container img {
display: block;
max-width: 100%;
height: auto;
}
.page-title {
font-size: 2.4rem;
font-weight: 700;
margin-bottom: 2.5rem;
line-height: 1.2;
text-align: left;
} .btn {
display: inline-block;
padding: 0.65rem 1.2rem;
background-color: var(--color-orange-light);
color: var(--color-white);
text-decoration: none;
border-radius: 0.4rem;
font-weight: 700;
font-size: 1.2rem;
line-height: 1.4;
border: none;
cursor: pointer;
transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
margin-top: auto;
width: auto;
align-self: flex-start;
box-sizing: border-box;
border-style: solid;
border: var(--btn-border-width) solid var(--btn-border-color);
}
.btn:hover {
background-color: var(--color-orange-hover);
color: var(--color-orange-light);
} .carte {
background-color: var(--color-white);
padding: 2rem;
border-radius: 0.6rem;
box-shadow: 0 2px 6px rgba(0,0,0,0.15);
display: flex;
flex-direction: column;
justify-content: space-between;
text-align: left;
transition: box-shadow 0.3s ease, transform 0.3s ease;
transform: translateY(0);
box-sizing: border-box;
border: var(--card-border-width) solid var(--card-border-color);
}
.carte:hover,
.carte:focus-within {
transform: translateY(-0.15rem);
box-shadow: 0 4px 12px rgba(30,40,20,0.15);
} .sprite-svg {
position: absolute;
width: 0;
height: 0;
overflow: hidden;
display: block;
pointer-events: none;
} .update-badge {
background: var(--color-grey-light);
color: var(--color-white);;
border-radius: 1em;
font-size: .8rem;
padding: 0 .5em;
margin-left: .4em;
vertical-align: middle;
} .screen-reader-text {
position: absolute !important;
width: 1px !important;
height: 1px !important;
padding: 0 !important;
margin: -1px !important;
overflow: hidden !important;
clip: rect(0, 0, 0, 0) !important;
white-space: nowrap !important;
border: 0 !important;
}
.menu-toggle .ast-mobile-menu-trigger-text,
.ast-button-wrap .menu-toggle .ast-mobile-menu-trigger-text,
.ast-header-break-point .ast-button-wrap .menu-toggle .ast-mobile-menu-trigger-text,
.menu-toggle::before,
.menu-toggle::after,
.ast-menu-toggle::before,
.ast-menu-toggle::after,
.ast-icon.icon-arrow,
.ast-menu-toggle {
display: none !important;
content: none !important;
} @media (prefers-reduced-motion: reduce) {
* {
animation: none !important;
transition: none !important;
scroll-behavior: auto !important;
}
}
@media (prefers-reduced-motion: reduce) {
.search-form {
transition: none !important;
transform: none !important;
}
} @media (min-width: 1300px) {
.publicum-burger-toggle {
display: none;
}
.cta-section {
height: auto;
}
}
@media (max-width: 1395px) {
.publicum-main-menu .menu-list {
gap: 0.8rem;
}
.publicum-main-menu .menu-list li a {
padding: 0.4rem 0.6rem;
font-size: 1.3rem;
}
.search-toggle,
.search-toggle-wrapper {
display: none !important;
}
}
@media (max-width: 1315px) {
.publicum-main-menu .menu-list {
gap: 0.6rem;
}
.publicum-main-menu .menu-list li a {
font-size: 1rem;
}
}
@media (max-width: 1350px) {
.publicum-main-menu .menu-list {
gap: 1.2rem;   
}
.publicum-main-menu .menu-list li a {
padding: 0.5rem 0.7rem;  
}
}
@media (max-width: 1200px) {
:root {
--page-pad: 1.5rem;
--su: .75rem;
}
:is(main, .site-main, .site-content, .page-content, .entry-content, .wp-site-blocks, #primary, #content)
> :not(.cta-section) {
padding-inline: var(--page-pad) !important;
}
:is(header, .site-header, #masthead) {
padding-inline: 0;
}
:is(.alignfull, .full-bleed, .actualites-section) {
padding-inline: 0;
}
.cta-content {
flex: 100%;
max-width: 60rem;
margin: 0 auto;
}
.cta-content-wrapper {
max-width: 90%;
margin: 0 auto;
align-items: center;
}
.cta-section {
left: 0;
right: 0;
margin-left: 0;
margin-right: 0;
height: auto;
}
.page-section-sidebar {
width: auto !important;
max-width: 20rem;
flex-shrink: 0 !important;
margin-inline: auto;
padding-top: .55rem;
padding-bottom: .55rem;
display: flex;
flex-direction: column;
gap: 2rem;
}
.page-section-sidebar > * {
margin-top: 0;
margin-bottom: 0;
}
.page-section-sidebar > * + * {
margin-top: .6rem;
}
.page-section-sidebar a { 
margin: 0; 
}
.sidebar_image.single {
margin-top: .75rem;
margin-bottom: .25rem;
}
.page-section-sidebar .sidebar-text :where(p, ul, ol) {
margin-top: 0;
margin-bottom: .5em;
}
.page-section-sidebar .sidebar-text :where(h1, h2, h3, h4) {
margin-top: 0;
margin-bottom: .4em;
}
.page-sidebar-contact {
font-size: 0.95rem;
line-height: 1.5;
}
.page-sidebar-links ul {
list-style: none;
padding: 0;
margin: 0;
}
.page-sidebar-links li {
margin-bottom: 0.5rem;
}
.page-sidebar-links a {
text-decoration: underline;
color: inherit;
transition: opacity 0.2s ease;
}
.page-section-content-wrapper {
display: block !important;
gap: 2rem;
}
.publicum-header-container {
display: flex;
position: relative;
align-items: center;  
}
.publicum-header-inner {
position: relative;
}
.publicum-main-menu {
display: none;
}
.actualites-content {
flex: 1 1 calc((100% - 2 * 2rem) / 3);
max-width: calc((100% - 2 * 2rem) / 3);
}
.breves-item {
min-width: 0;
max-width: 22rem;
width: 100%;
margin: 0 auto; 
}
.map-section {
padding: 1.5rem 0.5rem;
}
.map-title {
font-size: 1.5rem;
}
.map-subtitle {
font-size: 0.95rem;
}
.contact-form-agenda {
flex-direction: column;
}
.contact-container { 
flex-direction: column; 
gap: 2rem; 
}
.contact-right,
.contact-left {
flex: 1 1 100%;
width: 100%;
max-width: 100%;
}
.contact-page {
padding-inline: 0 !important;
}
.contact-container {
padding-inline: var(--page-pad) !important;
max-width: 60rem;
margin-inline: auto;
}
.contact-left,
.contact-right {
padding: 1.5rem 1.2rem;
box-sizing: border-box;
}
.section-infos__title {
font-size: 1.1rem;
margin-bottom: 0.5rem;
font-weight: bold;
}
.section-infos__urgence {
background: #ffeaea;
padding: 1rem;
border-left: 0.25rem solid #cc0000;
}
.section-infos__container {
flex-direction: column;
}
.section-infos__col {
width: 100%;
max-width: 100%;
}
.ecoindex-badges {
display: flex;
flex-direction: column ; 
align-items: flex-start;
gap: 0.5rem; 
}
.ecoindex-badges img {
max-width: 7.5rem;
height: auto;
}
.ecoindex-badges .ecoindex-info {
margin: 0.4rem 0;
line-height: 1.4;
}
.website-carbon {
align-items: flex-start;
text-align: left; margin: 2rem 0;
}
.website-carbon-info {
font-size: 1rem; 
margin-left: 0;
}
.acces-rapides-links {
gap: 0.5rem 2rem;   
}
.logos-container{
justify-content: center;        
column-gap: 1.5rem;           
row-gap: 0.5rem;                
}
.contact-right {
width: 100%;
max-width: 100%;
flex-shrink: 1;
}
.footer-content {
padding-inline: 2rem;     
box-sizing: border-box;
}
.footer-infos {
padding-inline: 2rem !important;
margin-inline: auto;
justify-content: center;
}
.footer-info-item {
max-width: 100%;
}
.footer-info-item img {
width: 10rem;
margin-bottom: 0.6rem;
}
.footer-info-text {
font-size: 0.95rem;
}
.footer-content {
padding-inline: 2rem;      
box-sizing: border-box;
}
}
@media screen and (max-width: 1025px) {
.breves-container {
flex-direction: column;
gap: 1.5rem;
}
.section-infos__cols {
flex-direction: column;
gap: 1.5rem;
}
.section-infos__col {
min-width: 0;
width: 100%;
}
.sitemap-container {
max-width: 98vw;
padding: 0 1rem;
}
.sitemap-page h1 {
font-size: 1.6rem;
padding-bottom: 0.4rem;
}
.agenda-demo .container {
padding: 0 0.4375rem;
}
.agenda-title {
font-size: 1.35rem;
}
.contact-container { 
padding: 0 0.1rem; 
}
.contact-left,
.contact-right {
border-radius: 0.8rem;
padding: 1.3rem 1rem;
}
.contact-right { 
padding-top: 1.6rem; 
}
.contact-button-wrapper a,
p a[href^="mailto"],
p a[href^="https://lapetitefabriquedigitale.fr"],
p a[href^="https://publicum."] {
font-size: 1rem;
}
.cartes-section-content-wrapper {
flex-direction: column;
gap: 2rem;
}
}
@media (max-width: 900px) {
.publications-content-wrapper {
flex-direction: column;
gap: 1.5rem;
}
.publications-image {
max-width: 100%;
min-width: 0;
flex: none;
}
.publications-image img {
max-height: 20rem;
}
.footer-content{
flex-direction: column;
align-items: center;      
text-align: center;
gap: 0.75rem;              
}
.footer-column.footer-left{
align-self: stretch;   
width: 100%;
text-align: left;
}
.footer-column.footer-left .footer-menu{
width: 100%;
text-align: left; 
margin-left: 0;
}
.footer-column.footer-left .footer-menu li{ 
display: block; 
}
.footer-column{ 
margin-bottom: 0; 
}
.footer-column.footer-left,
.footer-column.footer-center,
.footer-column.footer-right{
flex: 1 1 100%;
}
.footer-newsletter{ 
margin-top: 0; 
margin-bottom: 2rem; 
}
.website-carbon{ 
margin-top: 1rem; 
}
.footer-menu{ 
text-align: left; 
}
.footer-menu li{ 
margin: 0.25rem 0; width: 100%; 
}
.footer-bottom{ 
margin-top: 1rem; padding-top: 0.75rem; 
}
.footer-socials{
margin-top: 1.25rem;    
display: flex;
justify-content: center;
gap: .75rem;
}
.ecoindex-badges{ 
column-gap: 0.75rem; 
}
.ecoindex-badges img + img{ 
margin-top: 0.25rem; 
}
.ecoindex-badges p.ecoindex-info{
padding-right: 0;
margin: 0 0 0.25rem 0;
line-height: 1.45;
}
.actualites-content {
flex: 1 1 calc((100% - 1 * 2rem) / 2);
max-width: calc((100% - 1 * 2rem) / 2);
}
}
@media (max-width: 768px) {
.cartes-section-content-wrapper {
padding: 0 1.5rem;
}
.cartes-grid {
grid-template-columns: 1fr;
}
.carte {
align-items: flex-start;
}
} 
@media (max-width: 640px) {
.footer-info-item img {
width: 8.5rem;
}
.footer-info-text {
font-size: 0.9rem;
line-height: 1.5;
}
}
@media (max-width: 650px) {
.cta-content h1 {
font-size: 1.4rem;
}
#cta-button {
font-size: 1.1rem;
padding: 0.8rem 1.4rem;
}
.cta-content-wrapper {
max-height: 90%;
}
}
@media (max-width: 560px) {
.actualites-content {
flex: 1 1 100%;
max-width: 100%;
}
.logo {
height: 2.2rem;     
max-width: 80vw;
font-size: 1.6rem;
}
.tagline {
font-size: 0.7rem;
}
.cartes-grid {
grid-template-columns: 1fr;
}
.avis-list {
grid-template-columns: 1fr;  
gap: 1.2rem;               
}
.avis-item {
width: 100%;
max-width: 100%;
padding: 1.2rem;           
box-sizing: border-box;
overflow-wrap: anywhere;
word-break: break-word;
}
.footer-infos {
text-align: center;
}
}
@media (max-width: 395px) {
.logo {
max-width: 95vw;
height: 1.9rem;
font-size: 1.2rem;
}
.tagline {
font-size: 0.8rem;
}
} @media print {
header,
nav,
footer,
.site-sidebar,
.btn,
.cta,
.no-print {
display: none !important;
}
main,
.site-content,
.content {
width: 100%;
margin: 0;
padding: 0;
}
* {
background: none !important;
color: #000 !important;
box-shadow: none !important;
text-shadow: none !important;
}
a::after {
content: " (" attr(href) ")";
font-size: 90%;
}
h1, h2, h3, h4, h5, h6,
p,
ul,
ol,
table {
page-break-inside: avoid;
font-family: "Sans source 3";
}
body {
line-height: 1.4;
font-size: 12pt;
}
.actualites-list {
display: block !important;
}
.actualites-content {
display: inline-block;
width: 48%;
vertical-align: top;
page-break-inside: avoid;
break-inside: avoid;
margin-bottom: 1rem;
}
.actualites-content:nth-of-type(2n) {
page-break-after: always;
break-after: page;
}
.acces-rapides,
.acces-rapides-container,
.acces-rapides-bloc {
display: none !important;
}
}