:root {
    --primary:#983031;
    --text-color:#8e8e8e;
    --border-radius:20px;
    --grey:#e6e6e6;
    --bt-hover:#000;
    --transition:all .25s ease-in-out;
    --swiper-pagination-bottom:2rem;
    --swiper-theme-color:var(--primary);
}

@font-face {
    font-family:'Stolzl';
    src:url('../fonts/Stolzl-Book.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}
@font-face {
    font-family:'Stolzl';
    src:url('../fonts/Stolzl-Medium.woff2') format('woff2');
    font-weight:600;
    font-style:normal;
}
@font-face {
    font-family:'Fofer';
    src:url('../fonts/Fofer.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}
@font-face {
    font-family:'gloriahallelujah';
    src:url('../fonts/gloriahallelujah.woff2') format('woff2');
    font-weight:normal;
    font-style:normal;
}

body {font-family:'Stolzl';color:var(--text-color);overflow-x:hidden;}
h1, .h1, h2, .h2, h3, .h3 {font-family:'Stolzl';text-transform:uppercase;line-height:1.2;letter-spacing:1px;font-weight:600;}
h1 {font-size:1.75rem;}
h1 strong {display:block;font-size:220%;letter-spacing:2px;line-height:0;margin-top:2rem;}
h1 span {display:block;font-size:150%;font-family:'Fofer';text-transform:none;text-align:right;font-weight:normal;letter-spacing:2px;}
h2 {font-size:1.6rem;color:var(--text-color);text-align:center;font-weight:normal;line-height:.9;margin-bottom:3rem;}
h2 span {font-size:1.6rem;color:var(--primary);display:block;font-size:150%;font-family:'gloriahallelujah';letter-spacing:2px;text-transform:none;}
h3 {font-size:1.4rem;color:var(--primary);}
p, ul {line-height:1.4;font-size:.9rem;}
p {max-width:680px;margin-inline:auto;}
ul li {margin-bottom:.5rem;}
a, a:hover, a:focus {color:var(--primary);}
a:hover, a:focus {color:var(--bt-hover);}
p strong, ul strong {text-transform:uppercase;font-size:.9rem;}

a.button, button {display:block;width:fit-content;padding:0 2rem;line-height:3;box-shadow:none;background:var(--primary);color:#fff;letter-spacing:2px;border-radius:var(--border-radius);border:0;text-transform:uppercase;font-weight:600;margin-inline:auto;}
a.button:hover, button:hover, a.button:focus, button:focus {background:var(--bt-hover);}

.fullwidth {max-width:100%;}

.message-important {position:relative;padding:1rem;text-align:center;background:var(--primary);color:#fff;width:100%;}

nav {position:relative;z-index:10;}
nav ul.menu {display:flex;flex-direction:row;list-style:none;position:relative;padding-top:2.5rem;align-items:center;justify-content:flex-end;letter-spacing:1px;margin-left:0;}
nav ul.menu li {display:flex;align-items:center;}
nav ul.menu li.current_page_item a {color:var(--primary);}
nav ul.menu li::after {content:'|';margin-inline:.5rem;}
nav ul.menu li:last-child {position:absolute;right:0;top:.5rem;}
nav ul.menu li:nth-last-child(2)::after, nav ul.menu li:last-child::after {display:none;}
nav ul.menu li:nth-last-child(2) a {padding-right:0;}
nav a {color:var(--text-color);text-transform:uppercase;font-weight:600;font-size:.8rem;}
nav ul.menu li:last-child a {background:var(--grey);color:var(--text-color);border-radius:var(--border-radius);padding:0 0 0 1rem;line-height:2.2;}
nav ul.menu li:last-child a::after {content:'Demandez un devis gratuit';background:var(--primary);color:#fff;border-radius:var(--border-radius);padding-inline:1rem;margin-left:1rem;display:inline-block;}

nav a.bt-menu {display:block;position:fixed;top:-3rem;right:0;color:var(--primary);text-align:center;line-height:50px;font-size:1.4rem;z-index:999;transition:var(--transition);line-height:1;background:#fff;padding:1rem .75rem .5rem 1rem;border-bottom-left-radius:var(--border-radius);}
nav a.bt-menu::before {content:'\f0c9';font-family:"Font Awesome 6 Free";font-weight:600;}
nav a.bt-menu.active::before {content:'\f00d';}
nav a[href^="tel:"] {display:block;margin-left:auto;margin-right:0;width:fit-content;font-family:'gloriahallelujah';color:var(--primary);font-size:110%;margin-top:.5rem;}

.rs {position:fixed;top:1rem;right:1rem;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;transform:scale(.75);}
.rs a {display:flex;align-items:center;justify-content:center;background:var(--primary);border-radius:50%;aspect-ratio:1/1;color:#fff;width:1.8rem;}
.rs a:hover {background:var(--bt-hover);}

body.home header {background:url('../img/header-maison.jpg') no-repeat center;background-size:cover;position:relative;aspect-ratio:2000/1153;margin-bottom:20vh;}
body.home header::before {content:'';background:url('../img/header-maison.png') no-repeat center;background-size:cover;position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;}
body.home header::after {content:'';border:10px solid var(--primary);position:absolute;top:20%;left:10%;width:40%;height:100%;z-index:1;}
body.home header .encart-h1 {position:absolute;top:20%;left:10%;width:40%;height:100%;z-index:3;padding:2rem;display:flex;flex-direction:column;}
body.home header .encart-h1 > * {flex:1;}
body.home header .cell {height:50vh;align-items:center;display:flex;justify-content:center;}
body.home header .encart-h1 h1 {position:relative;z-index:1;color:#fff;}
body.home header .encart-h1 .mots-cles {font-size:3rem;font-weight:600;text-transform:uppercase;color:#fff;letter-spacing:2px;display:flex;align-items:center;margin:0;line-height:1.2;}
body.home header .encart-h1 .mots-cles + p {color:var(--primary);font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;display:flex;align-items:end;}
body.home header .encart-h1 a.button {position:absolute;bottom:-1rem;right:2rem;margin:0;}

body:not(.home) header {background:var(--grey);aspect-ratio:160/69;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:15vh;}
body:not(.home) header .grid-x {width:100%;height:100%;align-items:center;justify-content:center;}
body:not(.home) header .cell {position:relative;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;}
body:not(.home) header h1 {color:var(--primary);font-weight:normal;}
body:not(.home).page-template-nos-realisations header, body:not(.home).page-template-mentions header {aspect-ratio:450/69;}
body:not(.home).page-template-nos-realisations header h1, body:not(.home).page-template-mentions header h1 {text-align:center;width:100%;}
body:not(.home) header .swiper {width:80%;position:absolute;display:block;top:20%;right:1rem;}
body:not(.home, .page-template-nos-realisations, .page-template-mentions) header .cell:first-of-type::before {content:'';width:80%;aspect-ratio:8/7;position:absolute;display:block;right:4rem;top:3rem;background:var(--primary);}
body:not(.home) header .swiper-slide img {aspect-ratio:1/1;object-fit:cover;object-position:center;}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {width:calc(20% - 1.5rem);}
body:not(.home) header .swiper-pagination {text-align:right;}
body:not(.home) header ul {color:var(--primary);list-style-type:none;text-transform:uppercase;font-weight:600;font-size:110%;}

main {position:relative;z-index:1;}
section {position:relative;}

/* Présentation */
section#presentation img:not([alt="MAAF"]) {max-width:50%;}
section#presentation .cell:first-of-type {padding-left:10%;}
section#presentation .cell:last-of-type .reassurance {margin-top:-15vh;}
section#presentation .reassurance {display:flex;flex-direction:row;margin:0;gap:2rem;list-style-type:none;}
section#presentation .reassurance li {background:var(--grey);color:var(--primary);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:calc(100%/3);aspect-ratio:1/1;font-size:1.6rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;line-height:1;}
section#presentation .reassurance li span {display:block;font-family:'gloriahallelujah';color:var(--text-color);text-transform:none;font-weight:normal;letter-spacing:normal;font-size:70%;}

/* Prestations */
section#prestations {max-width:100%;background:url('../img/photo-prestations.jpg') no-repeat center;background-size:cover;aspect-ratio:192/96;margin-top:15vh;}
section#prestations::before {content:'';background:#000;opacity:.4;position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;}
section#prestations::after {content:'';background:url('../img/prestations.png') no-repeat center;background-size:cover;position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;}
section#prestations > div {position:relative;z-index:2;}
section#prestations p {color:#fff;}
section#prestations .shortcuts {position:relative;top:-60px;max-width:90vw;margin-inline:auto;background:var(--primary);height:120px;border-radius:200px;border:1px solid #fff;color:#fff;text-transform:uppercase;font-size:.9rem;font-weight:600;}
section#prestations .shortcuts a {color:#fff;}
section#prestations .shortcuts:before {content:'';display:block;background:var(--primary);width:2px;height:5vh;position:absolute;left:calc(50% - 1px);top:-5vh;}
section#prestations .shortcuts .cell {display:flex;flex-direction:column;align-items:center;justify-content:center;}
section#prestations .shortcuts img {max-height:70px;width:auto;}

/* Qualité */
section#qualite {background:var(--grey);padding:3rem;text-align:center;}
section#qualite::after {content:'';display:block;background:var(--primary);width:2px;height:10vh;position:absolute;left:calc(50% - 1px);bottom:-5vh;}

/* Réalisations */
section#realisations {margin-top:10vh;margin-bottom:10vh;}

/* Réalisation du projet */
section#realisation-projet {position:relative;margin-bottom:10vh;}
section#realisation-projet .etapes_projet {position:relative;}
section#realisation-projet .etapes_projet::before {content:attr(data-numero);position:absolute;font-size:700%;color:var(--grey);width:100%;text-align:center;pointer-events:none;font-weight:bold;z-index:-1;top:0;line-height:.8;}
section#realisation-projet h3, section#realisation-projet p {text-align:center;}
section#realisation-projet h3 {color:var(--text-color);padding:2rem 0;letter-spacing:2px;}
section#realisation-projet .button {margin:2rem auto;}

/* Types de pose */
section#pose-pavage {position:relative;margin-bottom:10vh;}
section#pose-pavage .cell:not(.large-12) {width:calc(100%/5);text-align:center;text-transform:uppercase;}
section#pose-pavage .cell:not(.large-12) img {margin-bottom:1rem;}
section#pose-pavage .button {margin:2rem auto;}

/* Nos réalisations */
section.nos-realisations {margin-bottom:5vh;}
section.nos-realisations a[data-fancybox] {position:relative;display:block;overflow:hidden;}
section.nos-realisations a[data-fancybox] span {position:absolute;background:#983032cf;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;top:100%;left:0;text-transform:uppercase;padding:2rem;transition:var(--transition);text-align:center;font-weight:bold;font-size:.7rem;}
section.nos-realisations a[data-fancybox] span strong {font-size:1rem;}
section.nos-realisations a[data-fancybox] span i {font-style:normal;}
section.nos-realisations a[data-fancybox] span i::after {content:', ';}
section.nos-realisations a[data-fancybox] span i:last-of-type::after {display:none;}
section.nos-realisations a[data-fancybox] span::after {display:block;content:'+';width:2rem;line-height:2rem;border-radius:50%;border:1px solid #fff;aspect-ratio:1/1;margin-top:2rem;}
section.nos-realisations a[data-fancybox] span::after:hover {background:#fff;color:var(--primary);}
section.nos-realisations a[data-fancybox]:hover > span {top:0;}
section.nos-realisations img {aspect-ratio:52/37;object-fit:cover;}
section.nos-realisations .button {margin:2rem auto;}
section.nos-realisations .grid-padding-x > .cell {padding:0.9375rem;}
section.nos-realisations .grid-x {justify-content:center;}

section.liste-categories ul {display:flex;flex-direction:row;align-items:center;justify-content:center;gap:1rem;margin:0;list-style-type:none;}
section.liste-categories ul a.button {background:var(--grey);color:var(--text-color);}
section.liste-categories ul a.button:hover, section.liste-categories ul a.button:focus, section.liste-categories ul a.button.active {background:var(--primary);color:#fff;}

section#section-cta {margin-bottom:10vh;}

footer {background:var(--grey);padding:2rem;text-align:center;position:relative;align-items:center;justify-content:center;display:flex;flex-direction:column;}
footer [itemtype="https://schema.org/Organization"] p {font-size:.8rem;margin:0;}
footer [itemtype="https://schema.org/Organization"] p a {text-decoration:none;color:#fff;}
footer + p {text-align:center;margin:1.5rem auto;font-size:75%;}
footer + p a {color:var(--primary);}
footer::after {content:'';background:url('../img/footer-map.png') no-repeat center left;background-size:cover;width:50%;height:100%;position:absolute;top:0;right:0;}
footer .coordonnees {position:relative;top:-90px;width:100%;max-width:80vw;margin-inline:auto;background:var(--primary);height:140px;color:#fff;font-size:.9rem;font-weight:600;z-index:1;}
footer .coordonnees .cell {display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;}
footer .coordonnees a[href^="tel:"]::before {content:'\f3cd';font-family:"Font Awesome 6 Free";font-weight:600;margin-right:.5rem;}
footer .coordonnees a[href^="mailto:"]::before {content:'\f0e0';font-family:"Font Awesome 6 Free";font-weight:600;margin-right:.5rem;}
footer .coordonnees p[itemprop="address"] {display:flex;align-items:center;justify-content:flex-start;}
footer .coordonnees p[itemprop="address"]::before {content:'\f14e';font-family:"Font Awesome 6 Free";font-weight:600;margin-right:.5rem;}
footer .coordonnees img {max-height:70%;}
footer .coordonnees .rs {flex-direction:row;position:relative;top:0;right:auto;z-index:initial;margin-top:-.5rem;margin-left:.5rem;gap:.5rem;}
footer .coordonnees .rs a {background:#fff;color:var(--primary);}
footer .grid-x {width:100%;}
footer h3 {font-size:1.4rem;color:var(--text-color);text-align:left;font-weight:600;line-height:1.1;margin-bottom:3rem;}
footer h3 span {color:var(--primary);display:block;font-size:100%;font-weight:normal;font-family:'gloriahallelujah';letter-spacing:2px;text-transform:uppercase;}
footer .coordonnees .cell.contacts {display:flex;flex-direction:row;align-items:center;justify-content:space-around;gap:1rem;}


/* Formulaires */
form {position:relative;margin-top:2rem;}
form label {position:relative;margin-bottom:1.5rem;letter-spacing:1px;text-align:left;color:var(--text-color);text-transform:uppercase;}
form label i {display:block;color:var(--text-color);font-style:normal;text-transform:uppercase;}
form label.file {height:auto;margin-bottom:0;padding:.5rem 1rem;line-height:2;box-shadow:none;background:#b0c0d7;border:0;border-radius:var(--border-radius);font-size:.8rem;color:var(--text-color);max-width:450px;margin-left:0;cursor:pointer;}
form label.file::after {content:'\f019';font-family:"Font Awesome 6 Free";font-weight:600;position:absolute;right:-1px;top:0;width:20%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--text-color);color:var(--primary);border-radius:var(--border-radius);font-size:1.4rem;}
form .wpcf7-acceptance label {font-size:.7rem;color:var(--text-color);}
form label > span:not(.wpcf7-list-item-label) {position:absolute;top:0;left:0;line-height:2;padding:.5rem 1rem;text-transform:uppercase;color:var(--text-color);transition:var(--transition);font-size:.8rem;pointer-events:none;}
form ::placeholder {color:var(--grey);}
[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea, select:not([multiple]) {height:auto;margin-bottom:0;padding:.5rem 1rem;line-height:2;box-shadow:none;background:none;border:0;border-bottom:1px solid var(--text-color);font-size:.8rem;color:var(--text-color);}
select:not([multiple]) {margin-left:0;}
[type='file'] {display:none;}
textarea {resize:none;line-height:1.4;max-height:7.45rem;}
textarea[rows] {height:100%;}
[type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus, textarea:focus, select:focus {outline:0;box-shadow:none;border:1px solid var(--text-color);background:none}
[type='text']:focus + span:not(.wpcf7-list-item-label), [type='password']:focus + span:not(.wpcf7-list-item-label), [type='date']:focus + span:not(.wpcf7-list-item-label), [type='datetime']:focus + span:not(.wpcf7-list-item-label), [type='datetime-local']:focus + span:not(.wpcf7-list-item-label), [type='month']:focus + span:not(.wpcf7-list-item-label), [type='week']:focus + span:not(.wpcf7-list-item-label), [type='email']:focus + span:not(.wpcf7-list-item-label), [type='number']:focus + span:not(.wpcf7-list-item-label), [type='search']:focus + span:not(.wpcf7-list-item-label), [type='tel']:focus + span:not(.wpcf7-list-item-label), [type='time']:focus + span:not(.wpcf7-list-item-label), [type='url']:focus + span:not(.wpcf7-list-item-label), [type='color']:focus + span:not(.wpcf7-list-item-label), textarea:focus + span:not(.wpcf7-list-item-label), select + span:not(.wpcf7-list-item-label), [type='text']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='password']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='date']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='datetime']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='datetime-local']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='month']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='week']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='email']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='number']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='search']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='tel']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='time']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='url']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), [type='color']:not(:placeholder-shown) + span:not(.wpcf7-list-item-label), textarea:not(:placeholder-shown) + span:not(.wpcf7-list-item-label) {top:-1rem!important;background:var(--text-color);color:#fff!important;font-size:.6rem!important;line-height:1.2!important;}
[type='checkbox'], [type='radio'] {margin:0;appearance:none;border-radius:40%;border:1px solid var(--text-color);width:1rem;aspect-ratio:1/1;vertical-align:text-bottom;}
[type='checkbox']:checked, [type='radio']:checked {background:var(--text-color);}
[type='submit'] {display:block;width:fit-content;padding:0 2rem;line-height:3;box-shadow:none;background:var(--primary);color:#fff;letter-spacing:2px;border-radius:var(--border-radius);border:0;text-transform:uppercase;font-weight:600;margin-inline:auto 0;}
input:disabled, input[readonly], textarea:disabled, textarea[readonly] {background-color:var(--text-color);}
.wpcf7-spinner {position:absolute;top:calc(50% - 12px);left:calc(50% - 12px);margin:0;background-color:fff;}
.wpcf7-spinner::before {background-color:var(--primary);}
.wpcf7 form .wpcf7-response-output {border-radius:var(--border-radius);border:1px solid var(--primary)!important;text-align:center;font-size:.8rem;margin:0;}

.fancybox__container p {text-align:left;}
.fancybox__container p strong {display:block;}
.fancybox__slide.has-caption {flex-direction:row;}
.fancybox__caption {max-width:400px;padding:1rem 3rem 1rem 1rem;}

/* Animations */
@keyframes zoomPlay {
    0% {transform:scale(1);}
    25% {transform:scale(.8);}
    50% {transform:scale(1.2);}
    75% {transform:scale(.8);}
    100% {transform:scale(1);}
}
@keyframes opacity {
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes SVGTranslateImageX {
    0% {transform:translateX(60px);}
    100% {transform:translateX(0);}
}
@keyframes SVGTranslatePathX {
    0% {transform:translateX(-60px);}
    100% {transform:translateX(0);}
}
@keyframes SVGTranslateImageXChefsOrchestre {
    0% {transform:translateX(60px);}
    100% {transform:translateX(11%);}
}
@keyframes SVGTranslatePathXChefsOrchestre {
    0% {transform:translateX(-60px);}
    100% {transform:translateX(-11%);}
}
@keyframes SVGTranslatePathXChefsOrchestre2 {
    0% {transform:translateX(-60px);}
    100% {transform:translateX(0%);}
}
@keyframes SVGTranslateImageXOrchestre {
    0% {transform:translateX(60px);}
    100% {transform:translateX(8%);}
}
@keyframes SVGTranslatePathXOrchestre {
    0% {transform:translateX(-60px);}
    100% {transform:translateX(-8%);}
}
@keyframes SVGTranslatePathXOrchestre2 {
    0% {transform:translateX(-60px);}
    100% {transform:translateX(0%);}
}


/* Animations all elements */
@keyframes rightToLeft {
    0% {transform:translateX(200px);opacity:0;}
    100% {transform:translateX(0px);opacity:1;}
}
@keyframes leftToRight {
    0% {transform:translateX(-200px);opacity:0;}
    100% {transform:translateX(0px);opacity:1;}
}
@keyframes bottomToTop {
    0% {transform:translateY(200px);opacity:0;}
    100% {transform:translateY(0px);opacity:1;}
}
.not-in-screen {opacity:0;}
.right-to-left {animation:rightToLeft 1s ease-in-out forwards;animation-delay:.5s;}
.left-to-right {animation:leftToRight 1s ease-in-out forwards;animation-delay:.5s;}
.bottom-to-top {animation:bottomToTop 1s ease-in-out forwards;animation-delay:.5s;}

.grid-container {max-width:90vw;}
@media screen and (min-width:1200px) {
}
@media screen and (max-width:1024px) {
    :root {--swiper-pagination-bottom:1rem;}
    p {font-size:.8rem;}
    nav ul.menu {padding-top:3.5rem;}
    body.home header .encart-h1 h1 {font-size:1.2rem;}
    body.home header .encart-h1 h1 strong {font-size:230%;}
    body.home header .encart-h1 .mots-cles {font-size:2rem;}
    body.home header .encart-h1 .mots-cles + p {font-size:80%;}
    .menu a, .menu .button {padding:.25rem 0;}
    section#presentation .reassurance li {font-size:1.1rem;}
    footer .coordonnees {max-width:85vw;}
    footer [itemtype="https://schema.org/Organization"] p {font-size:.7rem;}
    footer h3 {font-size:1.2rem;}
    footer::after {background-position:center right;}
    body:not(.home) header ul {font-size:90%;}
    section#pose-pavage .grid-x {justify-content:center;gap:1rem;}
    section#pose-pavage .cell:not(.large-12) {width:calc(100%/3 - .9375rem);}
}
@media screen and (max-width:800px) {
    :root {--swiper-pagination-bottom:-3rem;}
    nav .menu-mobile {position:fixed;top:-100vh;left:0;width:100%!important;height:100%;background:var(--primary);text-align:center;z-index:99;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:var(--transition);}
    nav .menu-mobile.active {top:0;}
    nav .menu-mobile ul {flex-direction:column;}
    nav .menu-mobile ul li::after {display:none;}
    nav .menu-mobile ul li a {color:#fff;font-size:1rem;line-height:2;padding-inline:0;background:none;}
    nav a.bt-menu {top:0;}
    nav a[href^="tel:"] {color:#fff;margin-inline:auto;}
    nav ul.menu li:last-child {position:relative;}
    nav a.bt-menu {border-radius:0;}
    nav ul.menu li.current_page_item a {color:#fff;text-decoration:underline;}
    .rs {top:3rem;right:.5rem;}
    body.home header .encart-h1 h1 {font-size:.8rem;}
    body.home header .encart-h1 .mots-cles {font-size:1.6rem;}
    body.home header .encart-h1 .mots-cles + p {font-size:60%;}
    body.home header .encart-h1 a.button {font-size:.7rem;}
    section#presentation .reassurance {gap:1rem;}
    section#presentation .reassurance li {font-size:.85rem;}
    section#prestations .shortcuts {font-size:.8rem;}
    section#prestations .shortcuts img {max-height:50px;}
    form label {margin-bottom:1.5rem;}
    form label, form label > span:not(.wpcf7-list-item-label) {font-size:.7rem;line-height:2.5;}
    form .wpcf7-acceptance label {font-size:.6rem;line-height:1.4;}
    body:not(.home) header {aspect-ratio:auto;margin-bottom:5vh;min-height:35vh;}
    body:not(.home) header .swiper {position:relative;width:85%;}
    body:not(.home) header h1 {font-size:1.3rem;padding-top:1rem;}
    section#pose-pavage .cell:not(.large-12) {width:calc(100%/2 - .9375rem);}
    footer .coordonnees .cell.contacts {flex-direction:column;align-items:flex-start;justify-content:center;}
    form {margin-top:0;}
}
@media screen and (max-width:640px) {
    h2 {font-size:1.1rem;}
    .message-important {padding:1rem 3rem 1rem 1rem;text-align:left;font-size:.9rem;}
    nav img {max-width:80%;}
    body.home header {aspect-ratio:auto;}
    body.home header .encart-h1 {width:80%;}
    body.home header::after {top:15%;width:75%;height:110%;}
    body.home header .encart-h1 .mots-cles {font-size:1.4rem;}
    body.home header .encart-h1 .mots-cles + p {margin-bottom:0;}
    body.home header .encart-h1 a.button {bottom:-2rem;}
    section#presentation .cell:last-of-type .reassurance {margin-top:5vh;}
    section#prestations {margin-top:30vh;}
    section#prestations .shortcuts {font-size:.7rem;height:auto;border-radius:var(--border-radius);padding:1rem;top:-25vh;}
    footer .coordonnees {height:fit-content;top:-50px;}
    footer .coordonnees .cell, footer .coordonnees .cell.contacts {align-items:center;text-align:center;}
    footer .coordonnees .cell {padding-bottom:1rem;}
    footer::after {display:none;}
    footer h3 {font-size:.9rem;}
    footer img {max-width:70%;}
    nav ul.menu li:last-child a {padding:0;background:none;color:#fff;}
    nav ul.menu li:last-child a::after {margin-left:0;margin-bottom:.5rem;background:#fff;color:var(--primary);}
    section.liste-categories ul {flex-wrap:wrap;gap:.5rem;}
    section.liste-categories ul a.button {margin:0;}
    body:not(.home) header .cell {margin-bottom:3rem;padding-top:1rem;}
    body:not(.home) header .swiper {width:100%;right:auto;}
    body:not(.home) header .cell:first-of-type::before {width:100%;right:3rem;top:4rem;}
    body:not(.home).page-template-nos-realisations header, body:not(.home).page-template-mentions header {min-height:0;aspect-ratio:260/69;}
    body:not(.home).page-template-nos-realisations header .cell, body:not(.home).page-template-mentions header .cell {padding-top:0;}
}