.services{background:var(--color-bg-light);padding:2rem var(--spacing-unit);display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.services a{display:inline-block}.services a:hover,.services a:active{transform:scale(1.1)}.services p{max-width:44rem;margin:0 auto 1.8rem}.services-list{list-style:none}.service-card{display:flex;flex-direction:row;align-items:stretch;background:var(--color-bg-light);border-radius:var(--border-radius-large);overflow:hidden;box-shadow:var(--shadow-md);margin:2rem auto;max-width:62rem;cursor:pointer;backface-visibility:hidden;opacity:0;transform:translateY(6rem) scale(1);transition:opacity 0.8s ease-out,transform 1s ease-out;will-change:opacity,transform,box-shadow}.service-card.visible{opacity:1;transform:translateY(0) scale(1)}.service-card:hover,.service-card:active{transform:translateY(-.6rem);box-shadow:0 20px 40px rgb(0 0 0 / .15);transition:transform 0.3s ease,box-shadow 0.3s ease}.service-card:hover .service-card-img,.service-card:active .service-card-img{background-color:#e6e6e6}.service-card-text{flex:1;padding:2.5rem 3rem;display:flex;flex-direction:column;justify-content:center;background:rgb(255 255 255 / .85);transition:background-color 0.3s ease}.service-card:hover .service-card-text,.service-card:active .service-card-text{background:var(--color-bg-light)}.service-label{font-size:1.3rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:.75rem;display:inline-block;opacity:.9;transition:opacity 0.3s ease}.service-card:hover .service-label,.service-card:active .service-label{opacity:1;color:var(--color-secondary-dark)}.service-card-text h3{font-size:2.2rem;margin-bottom:1.2rem;transition:color 0.3s ease}.service-card:hover .service-card-text h3,.service-card:active .service-card-text h3{color:var(--color-secondary-dark)}.service-card-text .accent{color:#5a3b0f;font-weight:900;letter-spacing:.03em}.service-card-text p{opacity:.9;transition:opacity 0.4s ease}.service-card:hover .service-card-text p,.service-card:active .service-card-text p{opacity:1}.service-card-text ul{margin:0 0 1.8rem}.service-link{cursor:pointer;align-self:flex-start;font-weight:700;color:var(--color-bg-light);background-color:var(--color-secondary-dark);padding:.75rem 1.8rem;border-radius:var(--border-radius-large);text-decoration:none;box-shadow:0 6px 12px rgb(138 94 33 / .6);transition:background-color 0.3s ease,box-shadow 0.3s ease,transform 0.15s ease}.service-link:hover,.service-link:focus-visible,.service-link:active{background-color:var(--color-secondary-darker);box-shadow:0 10px 20px rgb(110 72 24 / .8);transform:translateY(-2px);color:var(--color-bg-light)}.service-card-img{flex:0 0 500px;max-width:100%;overflow:hidden;border-radius:var(--border-radius-large) 0 0 var(--border-radius-large);background-color:#f0f0f0;perspective:50rem;display:flex;justify-content:center}.service-card-img img{display:block;width:auto;height:100%;max-height:800px;object-fit:cover;object-position:center;transform:scale(1) translateZ(0);transform-origin:center center;transition:transform 0.5s cubic-bezier(.25,.8,.25,1)}.service-card-img img:hover,.service-card-img img:active{transform:scale(1.1)}.pourquoi-nous{background:linear-gradient(to right,#f8fafc,var(--color-bg-light));padding:60px 20px;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}.avantages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:30px;list-style:none;padding:0;margin:0 auto;max-width:70rem}.avantages-grid li{background:var(--color-bg-light);border-radius:var(--border-radius-large);padding:25px 20px;text-align:center;box-shadow:var(--shadow-md);transition:transform 0.3s ease,box-shadow 0.3s ease}.avantages-grid li:hover,.avantages-grid li:active{transform:translateY(-6px) scale(1.03);box-shadow:0 10px 24px rgb(0 0 0 / .08)}.icone-wrap{width:3rem;height:3rem;margin:0 auto 15px;background-color:#e0f0ff;border-radius:50%;display:flex;align-items:center;justify-content:center}.icone-wrap img,.icone-wrap svg.icon{width:2rem;height:2rem}.avantages-grid h3{margin:10px 0 10px;color:var(--color-primary-dark)}.avantages-grid p{font-size:1.2rem}.secteur{padding:2rem var(--spacing-unit)}.secteur p{max-width:44rem;margin:0 auto 2rem;text-align:center}.villes-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;list-style:none;padding:0;margin-top:1rem}.villes-list li{margin:0}.villes-list li a.btn-ville{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;background-color:var(--color-bg-light);padding:.7rem 2rem;border-radius:3.5rem;font-weight:700;font-size:1.1rem;text-decoration:none;color:var(--color-primary-dark);cursor:pointer;border:2px solid var(--color-primary-dark);box-shadow:var(--shadow-md);transition:transform 0.3s cubic-bezier(.34,1.56,.64,1),box-shadow 0.3s ease,background-color 0.3s ease,color 0.3s ease,border-color 0.3s ease;white-space:nowrap;min-width:14rem}.villes-list .btn-ville img,.villes-list .btn-ville svg.icon{width:2rem;height:2rem;flex-shrink:0;display:block}.villes-list li a.btn-ville:hover,.villes-list li a.btn-ville:focus-visible,.villes-list li a.btn-ville:active{background-color:#d0e4fb;border-color:var(--color-primary-dark);color:var(--color-primary-dark);transform:translateY(-10px) scale(1.15);box-shadow:0 10px 24px rgb(11 92 194 / .4)}.faq{max-width:56rem;margin:2rem auto 4rem;padding:2.5rem 2rem;background:linear-gradient(145deg,#ffffff 0%,#f7faff 100%);border-radius:var(--border-radius-large);box-shadow:0 3px 8px rgb(15 23 42 / .05),0 14px 28px rgb(15 23 42 / .08),0 25px 45px rgb(15 23 42 / .06);position:relative}.faq dl{margin:0;padding:0}.faq dt{background:linear-gradient(145deg,#ffffff 0%,#f7faff 100%);color:var(--color-primary-dark);border:2px solid var(--color-primary);border-top-left-radius:2rem;border-top-right-radius:2rem;border-bottom-left-radius:2rem;border-bottom-right-radius:2rem;padding:1.1rem 1.5rem;margin:.85rem 0;font-size:1.3rem;font-weight:800;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:border-bottom-left-radius 0.3s ease,border-bottom-right-radius 0.3s ease,background-color 0.3s ease,color 0.3s ease,border-color 0.3s ease,transform 0.3s cubic-bezier(.25,.46,.45,.94),box-shadow 0.3s ease;outline:none;position:relative;box-shadow:var(--shadow-md);text-align:left}.faq dt:hover,.faq dt:focus-visible{background:linear-gradient(145deg,#e8f0fe 0%,#dbe9fc 100%);border-color:var(--color-primary-dark);color:var(--color-primary-darker);transform:translateY(-4px) scale(1.02);box-shadow:0 8px 20px rgb(30 136 229 / .25)}.faq dt:active{transform:translateY(-1px) scale(1.01);box-shadow:0 4px 10px rgb(30 136 229 / .2);background:linear-gradient(145deg,#d6e3f8 0%,#c8d9f5 100%)}.faq dt.expanded{background:linear-gradient(145deg,#e8f0fe 0%,#dbe9fc 100%);border-color:var(--color-primary-dark);color:var(--color-primary-darker);transform:translateY(0);box-shadow:0 6px 16px rgb(30 136 229 / .2);border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:0}.faq dt::after{content:"▶";font-size:1.25rem;font-weight:700;color:inherit;margin-left:1rem;display:inline-block;transition:transform 0.3s ease,color 0.3s ease;flex-shrink:0}.faq dt.expanded::after{transform:rotate(90deg)}.faq dd{position:relative;padding:1.25rem 1.25rem 1.25rem 2.75rem;background:#fdfdfd;border:2px solid var(--color-primary-dark);border-top:none;border-bottom-left-radius:2rem;border-bottom-right-radius:2rem;box-shadow:inset 0 2px 8px rgb(0 0 0 / .08);font-size:1.1rem;color:#333;overflow:hidden;max-height:0;transition:max-height 0.4s ease-out,padding-top 0.4s ease-out,padding-bottom 0.4s ease-out}.faq dd p{margin:0;padding:0;overflow-wrap:break-word}.faq dd::before{content:'';position:absolute;left:1.25rem;top:1.25rem;height:calc(100% - 2.5rem);width:5px;background-color:#0003;border-radius:3px}.faq dd.expanded{padding-top:.75rem;padding-bottom:1rem}.avis{will-change:transform,opacity;contain:layout paint;transform:translateZ(0);background:linear-gradient(145deg,#ffffff 0%,#ffffff 70%,#f7faff 100%);padding:2rem 1.5rem;border-radius:var(--border-radius-large);margin:0;box-shadow:0 1px 2px rgb(15 23 42 / .04),0 5px 14px rgb(15 23 42 / .06),0 18px 35px rgb(15 23 42 / .06);font-size:1.2rem;font-style:italic;position:absolute;width:88%;max-width:53rem;max-height:250px;overflow-y:auto;top:var(--spacing-unit);left:50%;opacity:0;transform:translateX(calc(-50% + 100%));box-sizing:border-box;pointer-events:none;z-index:0;transition:opacity 0.8s ease-in-out,transform 0.8s ease-in-out}.avis.active{will-change:transform,opacity;contain:layout paint;transform:translateZ(0);opacity:1;transform:translateX(-50%) scale(1);pointer-events:auto;z-index:5;transition:opacity 0.5s ease-out,transform 0.5s cubic-bezier(.175,.885,.32,1.275)}.avis.out-left,.avis.out-right{will-change:transform,opacity;contain:layout paint;transform:translateZ(0);opacity:0;pointer-events:none;z-index:1;visibility:hidden;transition:opacity 0.4s ease,transform 1s ease}.avis.out-left{transform:translateX(calc(-50% - 100%))}.avis.out-right{transform:translateX(calc(-50% + 100%))}.avis:not(.active):not(.out-left):not(.out-right){opacity:0;pointer-events:none;transform:translateX(calc(-50% + 100%));z-index:0;visibility:hidden;transition:none}.avis.active:hover,.avis.active:active{box-shadow:0 3px 8px rgb(15 23 42 / .06),0 14px 28px rgb(15 23 42 / .1),0 0 16px rgb(30 136 229 / .35);transition:transform 0.45s cubic-bezier(.68,-.55,.27,1.55),box-shadow 0.45s ease;cursor:pointer;z-index:10}.avis cite{display:block;margin-top:.8rem;font-style:normal;font-weight:700;color:var(--color-primary);text-align:right}.avis-clients .container{max-width:56rem;margin:2rem auto;padding:1.5rem;background:linear-gradient(145deg,#ffffff 0%,#f4f8fc 100%);border-radius:var(--border-radius-large);box-shadow:0 3px 8px rgb(15 23 42 / .05),0 14px 28px rgb(15 23 42 / .07);position:relative}.liste-avis{position:relative;min-height:280px;overflow-x:hidden;overflow-y:visible;transition:min-height 0.3s ease-in-out}.google-reviews-link{text-align:center;margin-top:3rem}.google-reviews-link p{font-weight:700;color:var(--color-primary-darker);letter-spacing:.03em}.bloc-avis-google{background:linear-gradient(135deg,#f8fafc 0%,#eef4fb 100%);padding:1.5rem var(--spacing-unit);border-radius:var(--border-radius-large);text-align:center;box-shadow:0 2px 5px rgb(15 23 42 / .03),0 8px 18px rgb(15 23 42 / .05)}.btn-avis-google{display:inline-flex;align-items:center;gap:.7rem;background-color:var(--color-bg-light);padding:.8rem 1.6rem;border-radius:var(--border-radius-pill);font-weight:600;text-decoration:none;color:#000;cursor:pointer;border:2px solid var(--color-primary-dark);box-shadow:var(--shadow-md);opacity:0;transform:translateY(200px) scale(1);transition:opacity 0.8s ease-out,transform 0.5s cubic-bezier(.34,1.56,.64,1),box-shadow 0.3s ease,background-color 0.3s ease,color 0.3s ease;will-change:opacity,transform}.bloc-avis-google .btn-avis-google.visible{opacity:1;transform:translateY(0) scale(1)}.bloc-avis-google .btn-avis-google:hover,.bloc-avis-google .btn-avis-google:focus-visible,.bloc-avis-google .btn-avis-google:active{background-color:#e8f0fe;border-color:var(--color-accent-google);color:var(--color-accent-google);transform:translateY(-10px) scale(1.25);box-shadow:0 10px 24px rgb(66 133 244 / .4)}.google-logo{width:2.5rem;height:2.5rem;margin-right:var(--spacing-unit);vertical-align:middle}.etoiles{display:inline-flex;gap:4px}.etoiles img,.etoiles svg.icon{width:1.25rem;height:1.25rem}.btn-prev,.btn-next{position:absolute;top:50%;transform:translateY(-50%);background:rgb(0 0 0 / .05);border:none;font-size:1rem;padding:.3rem .8rem;border-radius:50%;cursor:pointer;transition:background-color 0.3s;z-index:10}.btn-prev:hover,.btn-next:hover,.btn-prev:focus-visible,.btn-next:focus-visible,.btn-prev:active,.btn-next:active{background:rgb(0 0 0 / .15)}.btn-prev{left:.5rem}.btn-next{right:.5rem}.bloc-avis-google-footer{background:none;padding:0;margin:0;max-width:none;box-shadow:none;text-align:center;border-radius:0;font-size:1.6rem}.bloc-avis-google-footer .btn-avis-google{border:none;box-shadow:none;padding:.6rem var(--spacing-unit);background-color:#fff0;color:var(--color-primary-dark);font-weight:600;transform:none;transition:color 0.3s ease,transform 0.3s ease;opacity:1}.bloc-avis-google-footer .btn-avis-google:hover,.bloc-avis-google-footer .btn-avis-google:focus-visible,.bloc-avis-google-footer .btn-avis-google:active{background-color:#fff0;border:none;color:var(--color-primary-darker);text-decoration:underline;box-shadow:none;transform:scale(1.15)}.bloc-avis-google p{margin-bottom:1.5rem;opacity:.9}.btn-avis-google .btn-text{color:var(--color-primary-dark);font-weight:700;font-size:1.6rem}.devis-gratuit{text-align:center;gap:.6rem;font-size:2.2rem;font-weight:900;text-decoration:underline;text-decoration-color:var(--color-primary-dark);text-decoration-thickness:.2rem;text-underline-offset:.25rem;margin:1.5rem 0}.devis-gratuit .icone-tel{fill:var(--color-primary-dark);transition:fill 0.3s ease}.devis-gratuit a{display:inline-block;transition:transform 0.3s ease,text-decoration-color 0.3s ease}.devis-gratuit a:hover,.devis-gratuit a:focus-visible,.devis-gratuit a:active{transform:scale(1.1);text-decoration-color:var(--color-primary-darker)}.devis-gratuit a:hover .icone-tel,.devis-gratuit a:focus-visible .icone-tel,.devis-gratuit a:active .icone-tel{fill:var(--color-primary-darker)}.contact{padding:2rem var(--spacing-unit);text-align:center}.contact p{display:flex;align-items:center;justify-content:center;gap:.5rem}.contact p strong{display:flex;align-items:center;gap:.3rem}.contact-mail,.contact-phone{color:var(--color-primary-dark);font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:color 0.3s ease}.contact-mail:hover,.contact-mail:focus-visible,.contact-mail:active,.contact-phone:hover,.contact-phone:focus-visible,.contact-phone:active{color:var(--color-primary-darker);text-decoration:underline}footer{background:#000;color:var(--color-bg-light);text-align:center;padding:var(--spacing-unit);font-size:1rem}.footer-links{margin-top:.5rem;font-size:1.4rem}.footer-links a{color:var(--color-text-light);margin:0 .5rem}.footer-links a:hover,.footer-links a:focus-visible,.footer-links a:active{color:var(--color-primary);text-decoration:underline}#map{height:400px;border-radius:var(--border-radius-large);margin-top:1.5rem;opacity:0;transform:translateY(100px) scale(1);transition:opacity 0.8s ease-out,transform 1s ease-out;will-change:opacity,transform,box-shadow}#map.visible{opacity:1;transform:translateY(0)}.contain{max-width:44rem;margin:0 auto;padding:20px;background-color:var(--color-bg-light)}.contain ul{list-style:disc inside;margin-bottom:var(--spacing-unit);margin-top:var(--spacing-unit)}.footer-villes-container{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4rem;margin:4rem auto;max-width:1100px;padding:0 var(--spacing-unit)}.footer-villes-col{flex:1;min-width:320px;text-align:left}.footer-villes-col h3{font-size:1.3rem;margin-bottom:2rem;color:var(--color-bg-light);font-weight:700;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid var(--color-primary);padding-bottom:.5rem}.villes-grid{display:grid;grid-template-columns:repeat(3,minmax(max-content,1fr));gap:1rem 1.5rem}.villes-grid a{font-size:1rem;text-decoration:none;color:var(--color-text-light);opacity:.8;display:flex;align-items:center;white-space:nowrap;transition:opacity 0.3s ease,color 0.3s ease,transform 0.3s ease}.villes-grid a::before{content:"•";color:var(--color-primary);font-weight:700;margin-right:.5rem;flex-shrink:0;transition:transform 0.3s ease}.villes-grid a:hover,.villes-grid a:focus-visible{opacity:1;color:var(--color-primary);transform:translateX(3px)}@media (max-width:768px){.service-card{flex:1 1 auto;flex-direction:column;max-width:100%}.service-card-img{width:100%;height:auto;flex:unset;border-radius:20px 20px 0 0;border-right:none;overflow:hidden}.service-card-img img{display:block;width:100%;height:auto;aspect-ratio:16 / 9;border-radius:20px 20px 0 0;object-fit:cover}.service-card-text{width:100%;padding:1.5rem 2rem;backdrop-filter:none;background:#fff}.avantages-grid{grid-template-columns:repeat(2,1fr);gap:20px}.avantages-grid li{padding:20px 15px;font-size:.95rem}.avantages-grid h3{font-size:1.1rem}.avantages-grid p{font-size:1rem}.villes-list{gap:.6rem}.villes-list li a.btn-ville{padding:.5rem 1.8rem;font-size:.9rem;text-align:center;min-width:auto}.villes-list .btn-ville .ville-logo{width:2rem;height:2rem}.faq dt{font-size:1.15rem}.faq dt::after{font-size:1.1rem}.faq dd div{font-size:1.05rem}h2{font-size:2rem;line-height:1;margin-bottom:1.5rem}.avis-clients .container{padding:1rem}.avis{padding:1.2rem 1.4rem;font-size:1rem;width:80%}.btn-prev,.btn-next{font-size:1rem;padding:.5rem .6rem}.btn-avis-google{padding:.7rem 1.2rem;font-size:1.15rem;flex-direction:column;gap:.3rem;text-align:center}.btn-avis-google .stars{justify-content:center}.bloc-avis-google-footer .btn-avis-google,.btn-avis-google .btn-text{font-size:1.3rem}.contact p{font-size:1rem;flex-direction:column;gap:.3rem}.contact-mail,.contact-phone{font-size:1.1rem}.footer-links{font-size:1.2rem}.footer-villes-container{flex-direction:column;gap:2.5rem;margin:2rem auto;padding-bottom:5rem}.footer-villes-col{min-width:100%;text-align:center}.footer-villes-col h3{font-size:1.2rem;margin-bottom:1.5rem;display:inline-block;border-bottom:2px solid var(--color-primary);padding-bottom:.3rem}.villes-grid{display:block;margin:0 auto;padding:0 0 0 20px;width:fit-content;list-style-type:disc}.villes-grid li{text-align:left;padding:0;margin:0}.villes-grid a{font-size:1.05rem;padding:.6rem .8rem;display:inline-block}}