.cta{color:var(--white);cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;padding:.8rem 1.5rem;font-size:1rem;font-weight:600;line-height:1.75rem;transition:all .2s ease-in-out;display:flex;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.cta:hover{opacity:.8}.cta-iconLeft,.cta-iconRight{justify-content:center;align-items:center;display:flex}.cta-iconLeft svg,.cta-iconRight svg{fill:#fff;width:24px;height:24px}.cta-iconLeft{margin-right:.5rem}.cta-iconRight{margin-left:.5rem}.cta.primary{color:#fff;background-color:#57534e}.cta.secondary{opacity:.8;background:0 0;border:2px solid #fff}
.beforeAfter{-webkit-user-select:none;user-select:none;border-radius:12px;width:100%;max-width:800px;height:400px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 10px 30px #0003}.beforeAfter-container{width:100%;height:100%;position:relative}.beforeAfter-image{width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.beforeAfter-imageElement{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.beforeAfter-image-before{z-index:1}.beforeAfter-image-after{z-index:2}.beforeAfter-label{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:3;background-color:#000000b3;border-radius:20px;padding:8px 16px;font-size:14px;font-weight:600;position:absolute;top:20px}.beforeAfter-labelBefore{left:20px}.beforeAfter-labelAfter{right:20px}.beforeAfter-slider{z-index:3;cursor:ew-resize;width:4px;height:100%;position:absolute;top:0;transform:translate(-50%)}.beforeAfter-sliderLine{background-color:#fff;width:6px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 0 10px #0000004d}.beforeAfter-sliderHandle{background-color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:transform .2s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 15px #0000004d}.beforeAfter-sliderHandle:hover{transform:translate(-50%,-50%)scale(1.1)}.beforeAfter-sliderHandle:active{transform:translate(-50%,-50%)scale(.95)}.beforeAfter-sliderArrow{border-style:solid;width:0;height:0;position:absolute}.beforeAfter-sliderArrowLeft{border-width:6px 8px 6px 0;border-color:#0000 var(--brown)#0000 #0000;left:8px}.beforeAfter-sliderArrowRight{border-width:6px 0 6px 8px;border-color:#0000 #0000 #0000 var(--brown);right:8px}.beforeAfter:hover .beforeAfter-sliderHandle{transform:translate(-50%,-50%)scale(1.05)}@media (max-width:767px){.beforeAfter{border-radius:8px;box-shadow:0 5px 15px #00000026}.beforeAfter-label{padding:6px 12px;font-size:12px;top:15px}.beforeAfter-labelBefore{left:15px}.beforeAfter-labelAfter{right:15px}.beforeAfter-sliderHandle{width:35px;height:35px}.beforeAfter-sliderArrowLeft{border-width:5px 6px 5px 0;left:6px}.beforeAfter-sliderArrowRight{border-width:5px 0 5px 6px;right:6px}}@media (hover:none) and (pointer:coarse){.beforeAfter .beforeAfter-sliderHandle{transform:translate(-50%,-50%)scale(1.1)}}
.modal-overlay{z-index:1000;background-color:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:800px;max-height:90vh;padding:10px 10px 20px;position:relative;overflow-y:auto;box-shadow:0 20px 40px #0000004d}.modal-close{cursor:pointer;color:#666;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;padding:20px;font-size:24px;transition:background-color .2s;display:flex;position:absolute;top:15px;right:20px}.modal-close:hover{color:#333;background-color:#f0f0f0}.modal-header{border-bottom:1px solid #eee;padding:20px}.modal-title{color:#333;margin:0 0 10px;font-size:24px;font-weight:600}.modal-description{color:#666;margin:0;font-size:16px;line-height:1.5}.carousel-container{align-items:center;margin-bottom:20px;display:flex;position:relative}.carousel-image-container{border-radius:8px;width:100%;min-height:60vh;margin:0 10px;position:relative;overflow:hidden}.carousel-image{object-fit:cover;transition:transform .3s}.carousel-arrow{cursor:pointer;color:#333;background:#fff;border:2px solid #ddd;border-radius:50%;width:30px;height:30px;transition:all .2s;display:flex}.carousel-arrow:hover:not(.disabled){background:#f8f8f8;border-color:#999}.carousel-arrow.disabled{opacity:.3;cursor:not-allowed;color:#999;background:#f5f5f5;border-color:#e0e0e0}.carousel-indicators{justify-content:center;gap:8px;display:flex}.carousel-indicator{cursor:pointer;background:#ddd;border:none;border-radius:50%;width:12px;height:12px;transition:all .2s}.carousel-indicator:hover{background:#bbb}.carousel-indicator.active{background:#333}@media (min-width:768px){.modal-content{max-height:95vh;margin:10px}.modal-header{padding:20px 20px 15px}.modal-title{font-size:20px}.modal-description{font-size:14px}.modal-carousel{padding:15px 20px 20px}.carousel-image-container{margin:0 10px}.carousel-arrow{width:40px;height:40px;font-size:18px}}
.servicesCard{background-color:var(--white);cursor:pointer;border-radius:20px;flex-direction:column;height:100%;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out;display:flex;overflow:hidden;box-shadow:0 4px 20px #0000001a}.servicesCard:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00000026}.servicesCard-imageContainer{width:100%;height:200px;position:relative;overflow:hidden}.servicesCard-imageContainerImage{object-fit:cover;object-position:center;border-radius:20px 20px 0 0}.servicesCard-imageContainerIcon{background-color:var(--white);border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;top:16px;left:16px;box-shadow:0 2px 8px #0000001a}.servicesCard-imageContainerIcon svg{width:20px;height:20px}.servicesCard-content{flex-direction:column;justify-content:space-between;height:40%;padding:24px;display:flex}.servicesCard-contentTitle{color:var(--black);font-size:1.25rem;font-weight:600;line-height:1.3}.servicesCard-contentDescription{color:#666;margin:0;font-size:.95rem;font-weight:400;line-height:1.5}@media (min-width:768px){.servicesCard-content{padding:28px}.servicesCard-contentTitle{font-size:1.4rem}.servicesCard-contentDescription{font-size:1rem}}
.home-hero{color:#fff;flex-direction:column;display:flex}.home-heroOverlay{height:100vh;margin-top:calc(var(--header-height-container)*-1);background-image:linear-gradient(90deg,#78350fcc,#92400e99,#0000);position:relative}.home-heroOverlayImage{object-fit:cover;object-position:center;z-index:-1}.home-heroContent{top:var(--header-height-container);left:var(--main-padding);right:var(--main-padding);position:absolute;bottom:0}.home-heroTitle{margin-bottom:1.5rem;font-size:2rem;font-weight:700;line-height:1.2}.home-heroTitle span{color:#d6d3d1}.home-heroDescription{margin-bottom:2rem;font-weight:400}.home-heroCtas{flex-direction:column;gap:1rem;margin-bottom:1rem;display:flex}.home-heroTags{flex-direction:column;gap:1rem;display:flex}.home-heroTagsItem{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffff20;border-radius:8px;gap:8px;width:fit-content;padding:1rem;display:flex}.home-heroTagsItem svg{fill:var(--white);width:18px;height:18px}.home-beforeAfter{padding:4rem var(--main-padding);text-align:center;background-image:var(--gradient-background-beige)}.home-services{padding:4rem var(--main-padding)}.home-servicesGrid{grid-template-columns:1fr;gap:2rem;margin-top:3rem;display:grid}.home-contact{padding:4rem var(--main-padding);background-image:var(--gradient-background-beige)}.home-contactInfos,.home-contactAdvantages{background-color:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 4px 6px -1px #0000001a}.home-contactInfosTitle,.home-contactAdvantagesTitle{color:#374151;margin:0 0 1.5rem;font-size:1.25rem;font-weight:700}.home-contactInfosList,.home-contactAdvantagesList{flex-direction:column;gap:1.5rem;display:flex}.home-contactInfosItem,.home-contactAdvantagesItem{align-items:flex-start;gap:1rem;display:flex}.home-contactInfosIcon,.home-contactAdvantagesIcon{background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.home-contactInfosIcon svg,.home-contactAdvantagesIcon svg{color:#6b7280;width:20px;height:20px}.home-contactInfosContent{flex-direction:column;gap:.25rem;display:flex}.home-contactInfosLabel{color:#374151;font-size:.875rem;font-weight:500}.home-contactInfosValue{color:#374151;font-size:.875rem}.home-contactAdvantagesText{color:#374151;font-size:.875rem;line-height:1.5}@media (min-width:768px){.home-heroContent{top:calc(var(--header-height-container) + 50%);transform:translateY(-50%)}.home-heroTitle{font-size:3rem}.home-heroDescription{max-width:600px;font-size:1.2rem;line-height:1.5}.home-heroCtas,.home-heroTags{flex-direction:row}.home-beforeAfter{padding:6rem var(--main-padding)}.home-servicesGrid{grid-template-columns:repeat(2,1fr);gap:2.5rem}.home-contact{grid-template-areas:"title title""description description""infos advantages""form form";gap:2rem;display:grid}.home-contact .title{grid-area:title}.home-contact .description{grid-area:description}.home-contactInfos{grid-area:infos}.home-contactAdvantages{grid-area:advantages}.home-contactForm{grid-area:form}.home-contactInfos,.home-contactAdvantages{margin:0}}@media (min-width:1000px){.home-heroContent{max-width:1000px;margin:0 auto}.home-services{max-width:1200px;margin:0 auto}.home-servicesGrid{grid-template-columns:repeat(3,1fr);gap:3rem}.home-contact{grid-template-columns:1fr 1fr 1fr;grid-template-areas:"title title title""description description description""infos form form""advantages form form";gap:2rem;max-width:1200px;margin:0 auto;display:grid}}
.title{text-align:center}.title-h2{color:var(--brown);margin-bottom:1rem;font-size:2.5rem;font-weight:700}@media (min-width:768px){.title-h2{font-size:3rem}}
.description{color:#666;text-align:center;max-width:600px;margin-bottom:4rem;margin-left:auto;margin-right:auto;font-size:1.1rem;line-height:1.6}@media (min-width:768px){.description{font-size:1.2rem}}
.form{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:1.5rem;padding:2rem;display:flex;box-shadow:0 4px 6px -1px #0000001a}.form-title{color:#374151;text-align:left;margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.form-field{flex-direction:column;gap:.5rem;display:flex}.form-label{color:#374151;margin-bottom:.25rem;font-size:.875rem;font-weight:500}.form-input,.form-select,.form-textarea{color:#374151;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;padding:.75rem;font-size:.875rem;transition:border-color .2s ease-in-out}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-input::placeholder,.form-select::placeholder,.form-textarea::placeholder{color:#9ca3af}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.form-textarea{resize:vertical;min-height:6rem}.form-button{color:#fff;cursor:pointer;background-color:#374151;border:none;border-radius:8px;width:100%;padding:.875rem 1.5rem;font-size:.875rem;font-weight:600;transition:background-color .2s ease-in-out}.form-button:hover{background-color:#1f2937}.form-button:focus{outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-status{text-align:center;color:#065f46;background-color:#d1fae5;border:1px solid #a7f3d0;border-radius:8px;margin-top:1rem;padding:.75rem;font-size:.875rem}.form-status.error{color:#991b1b;background-color:#fee2e2;border:1px solid #fca5a5}@media (min-width:1000px){.form{grid-template-columns:1fr 1fr;grid-template-areas:"title title""nom prenom""email telephone""projectType projectType""message message""button button";gap:2rem;display:grid}.form-title{grid-area:title}.form .prenom{grid-area:prenom}.form .nom{grid-area:nom}.form .email{grid-area:email}.form .telephone{grid-area:telephone}.form .projectType{grid-area:projectType}.form .message{grid-area:message}.form .button{grid-area:button}.form-input{width:auto}}
