*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{color:#333;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fafafa;font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6}body{min-height:100vh;margin:0}#root{flex-direction:column;min-height:100vh;display:flex}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}h1,h2,h3,h4{margin:0;line-height:1.3}p{margin:0}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.7rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{color:#fff;background:#ba7c61}.btn-primary:hover{background:#a56d52;transform:translateY(-1px);box-shadow:0 4px 12px #ffffff4d}.btn-secondary{color:#fff;background:#ffffff26;border:2px solid #ffffff4d}.btn-secondary:hover{background:#ffffff40}.btn-large{padding:.9rem 2rem;font-size:1.1rem}.text-center{text-align:center}.mt-2{margin-top:2rem}.cta h2{color:#fff;margin-bottom:.8rem;font-size:2rem}html{scroll-behavior:smooth}::selection{color:#364444;background:#a5d6a7}.navbar{z-index:1000;background:#364444;padding:.8rem 0;position:sticky;top:0;box-shadow:0 2px 10px #00000026}.navbar-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex}.navbar-logo{color:#f5ebe6;align-items:center;gap:.5rem;font-size:1.3rem;font-weight:700;text-decoration:none;display:flex}.navbar-logo-img{width:auto;height:119px}.navbar-toggle{color:#f5ebe6;cursor:pointer;background:0 0;border:none;display:none}.navbar-menu{align-items:center;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.navbar-menu a{color:#e0ccc2;border-radius:6px;padding:.5rem .8rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .2s}.navbar-menu a:hover,.navbar-menu a.active{color:#fff;background:#ffffff1f}.btn-devis{align-items:center;gap:.4rem;color:#fff!important;background:#ba7c61!important;border-radius:25px!important;padding:.5rem 1rem!important;font-weight:600!important;display:inline-flex!important}.btn-devis:hover{background:#a56d52!important}@media (width<=768px){.navbar-toggle{display:block}.navbar-menu{background:#364444;flex-direction:column;gap:0;padding:1rem;transition:transform .3s;position:fixed;top:60px;left:0;right:0;transform:translateY(-120%)}.navbar-menu.active{transform:translateY(0)}.navbar-menu a{width:100%;padding:.8rem 1rem;display:block}}.footer{color:#fff;background:#364444;margin-top:auto;padding:3rem 0 0}.footer-container{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;max-width:1200px;margin:0 auto;padding:0 1.5rem;display:grid}.footer-logo{color:#fff;align-items:center;gap:.5rem;margin-bottom:.8rem;font-size:1.2rem;font-weight:700;display:flex}.footer-logo-img{width:auto;height:80px}.footer-section h3{color:#fff;margin-bottom:1rem;font-size:1.1rem}.footer-section p{font-size:.95rem;line-height:1.6}.footer-section ul{margin:0;padding:0;list-style:none}.footer-section ul li{margin-bottom:.5rem;font-size:.95rem}.footer-section ul a{color:#e0ccc2;text-decoration:none;transition:color .2s}.footer-section ul a:hover{color:#fff}.footer-contact p{align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.footer-socials{gap:1rem;margin-top:1rem;display:flex}.footer-socials a{color:#e0ccc2;transition:color .2s}.footer-socials a:hover{color:#fff}.footer-bottom{text-align:center;border-top:1px solid #ffffff1a;margin-top:2rem;padding:1.2rem;font-size:.85rem}.hero{color:#fff;text-align:center;background-color:#364444;justify-content:center;align-items:center;min-height:85vh;display:flex;position:relative;overflow:hidden}.hero-slide{opacity:0;background-position:50%;background-repeat:no-repeat;background-size:cover;transition:opacity 1.5s ease-in-out;position:absolute;inset:0}.hero-slide.active{opacity:1}.hero:before{content:"";z-index:1;background:#36444499;position:absolute;inset:0}.hero-content{z-index:2;max-width:700px;padding:2rem;position:relative}.hero h1{text-shadow:0 2px 10px #0000004d;text-transform:uppercase;margin-bottom:.5rem;font-size:3.2rem}.hero-subtitle{color:#fff;margin-bottom:1rem;font-size:1.4rem}.hero-text{color:#fff;margin-bottom:2rem;font-size:1.1rem;line-height:1.7}.hero-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.features{background:#f5efe9;padding:4rem 0}.features-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem;display:grid}.feature-card{text-align:center;background:#fff;border-radius:12px;padding:2rem 1.5rem;transition:transform .2s;box-shadow:0 2px 12px #0000000f}.feature-card:hover{transform:translateY(-4px)}.feature-card svg{color:#96604a;margin-bottom:1rem}.feature-card h3{color:#364444;margin-bottom:.5rem}.feature-card p{color:#555;line-height:1.6}.services-preview{padding:4rem 0}.services-preview h2{text-align:center;color:#364444;margin-bottom:.3rem;font-size:2rem}.section-subtitle{text-align:center;color:#666;margin-bottom:2.5rem;font-size:1.1rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.service-card{border:2px solid #f5ebe6;border-radius:10px;padding:1.5rem;transition:all .2s}.service-card:hover{border-color:#ba7c61;box-shadow:0 4px 15px #96604a26}.service-card h3{color:#96604a;margin-bottom:.5rem}.service-card p{color:#555;line-height:1.6}.cta{color:#fff;text-align:center;background:linear-gradient(135deg,#96604a,#7d4e3a);padding:4rem 0}.cta h2{margin-bottom:.8rem;font-size:2rem}.cta p{color:#e0ccc2;max-width:600px;margin-bottom:2rem;margin-left:auto;margin-right:auto;font-size:1.1rem}@media (width<=768px){.hero h1{font-size:2.2rem}.hero-subtitle{font-size:1.1rem}}.services-page .page-header{color:#fff;text-align:center;background:linear-gradient(135deg,#364444,#96604a);padding:4rem 1.5rem}.services-page .page-header h1{margin-bottom:.5rem;font-size:2.5rem}.services-page .page-header p{color:#e0ccc2;max-width:600px;margin:0 auto;font-size:1.15rem}.services-list{flex-direction:column;gap:2.5rem;padding:3rem 1.5rem;display:flex}.service-block{background:#fff;border-left:4px solid #ba7c61;border-radius:12px;gap:2rem;padding:2rem;transition:transform .2s;display:flex;box-shadow:0 2px 12px #0000000f}.service-block:hover{transform:translate(4px)}.service-icon{color:#96604a;flex-shrink:0;padding-top:.3rem}.service-info h2{color:#364444;margin-bottom:.5rem;font-size:1.4rem}.service-info p{color:#555;margin-bottom:1rem;line-height:1.7}.service-info ul{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.service-info ul li{color:#96604a;background:#f5ebe6;border-radius:20px;padding:.3rem .8rem;font-size:.85rem;font-weight:500}@media (width<=768px){.service-block{flex-direction:column;gap:1rem}}.about-page .page-header{color:#fff;text-align:center;background:linear-gradient(135deg,#364444,#96604a);padding:4rem 1.5rem}.about-page .page-header h1{margin-bottom:.5rem;font-size:2.5rem}.about-page .page-header p{color:#e0ccc2;font-size:1.15rem}.about-content{padding:3rem 1.5rem}.about-intro{grid-template-columns:1.5fr 1fr;align-items:center;gap:3rem;margin-bottom:3rem;display:grid}.about-text h2{color:#364444;margin-bottom:1rem;font-size:1.8rem}.about-text p{color:#444;margin-bottom:1rem;line-height:1.8}.about-image-placeholder{color:#96604a;background:linear-gradient(135deg,#f5ebe6,#e0ccc2);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:300px;padding:3rem;font-size:1.2rem;font-weight:700;display:flex}.values-section h2{text-align:center;color:#364444;margin-bottom:2rem;font-size:1.8rem}.values-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;display:grid}.value-card{text-align:center;background:#f5efe9;border-radius:12px;padding:2rem 1.5rem;transition:transform .2s}.value-card:hover{transform:translateY(-4px)}.value-card svg{color:#96604a;margin-bottom:1rem}.value-card h3{color:#364444;margin-bottom:.5rem}.value-card p{color:#555;font-size:.95rem;line-height:1.6}@media (width<=768px){.about-intro{grid-template-columns:1fr}}.gallery-page .page-header{color:#fff;text-align:center;background:linear-gradient(135deg,#364444,#96604a);padding:4rem 1.5rem}.gallery-page .page-header h1{margin-bottom:.5rem;font-size:2.5rem}.gallery-page .page-header p{color:#e0ccc2;font-size:1.15rem}.gallery-content{padding:3rem 1.5rem}.gallery-filters{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:2rem;display:flex}.filter-btn{cursor:pointer;color:#96604a;background:#fff;border:2px solid #e0ccc2;border-radius:25px;padding:.5rem 1.2rem;font-size:.9rem;font-weight:500;transition:all .2s}.filter-btn:hover,.filter-btn.active{color:#fff;background:#96604a;border-color:#96604a}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.gallery-card{background:#fff;border-radius:12px;transition:transform .2s;overflow:hidden;box-shadow:0 2px 12px #00000014}.gallery-card:hover{transform:translateY(-4px)}.gallery-placeholder{color:#96604a;background:linear-gradient(135deg,#f5ebe6,#e0ccc2);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;height:200px;font-weight:500;display:flex}.gallery-info{padding:1.2rem}.gallery-category{color:#96604a;background:#f5ebe6;border-radius:15px;margin-bottom:.5rem;padding:.2rem .7rem;font-size:.8rem;font-weight:600;display:inline-block}.gallery-info h3{color:#364444;margin-bottom:.3rem;font-size:1.1rem}.gallery-info p{color:#666;font-size:.9rem;line-height:1.5}.testimonials-page .page-header{color:#fff;text-align:center;background:linear-gradient(135deg,#364444,#96604a);padding:4rem 1.5rem}.testimonials-page .page-header h1{margin-bottom:.5rem;font-size:2.5rem}.testimonials-page .page-header p{color:#e0ccc2;font-size:1.15rem}.testimonials-content{padding:3rem 1.5rem}.testimonials-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.5rem;display:grid}.testimonial-card{background:#fff;border-radius:12px;padding:2rem;transition:transform .2s;position:relative;box-shadow:0 2px 12px #0000000f}.testimonial-card:hover{transform:translateY(-4px)}.quote-icon{color:#e0ccc2;margin-bottom:.5rem}.stars{gap:2px;margin-bottom:1rem;display:flex}.testimonial-text{color:#444;margin-bottom:1.2rem;font-style:italic;line-height:1.7}.testimonial-author{border-top:1px solid #f5ebe6;justify-content:space-between;align-items:center;padding-top:1rem;display:flex}.testimonial-author strong{color:#364444}.testimonial-author span{color:#888;font-size:.9rem}@media (width<=768px){.testimonials-grid{grid-template-columns:1fr}}.quote-page .page-header{color:#fff;text-align:center;background:linear-gradient(135deg,#364444,#96604a);padding:4rem 1.5rem}.quote-page .page-header h1{margin-bottom:.5rem;font-size:2.5rem}.quote-page .page-header p{color:#e0ccc2;font-size:1.15rem}.quote-content{padding:3rem 1.5rem}.quote-grid{grid-template-columns:1.5fr 1fr;align-items:start;gap:2.5rem;display:grid}.quote-form{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 12px #0000000f}.quote-form h2{color:#364444;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:1.4rem;display:flex}.form-group{margin-bottom:1.2rem}.form-group label{color:#333;align-items:center;gap:.4rem;margin-bottom:.4rem;font-size:.95rem;font-weight:600;display:flex}.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;border:2px solid #e0e0e0;border-radius:8px;width:100%;padding:.7rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#ba7c61;outline:none}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.quote-info{flex-direction:column;gap:1.5rem;display:flex}.info-card{background:#f5efe9;border-radius:12px;padding:1.5rem}.info-card h3{color:#364444;margin-bottom:1rem}.info-card ul{padding:0;list-style:none}.info-card ul li{color:#444;padding:.4rem 0;font-size:.95rem}.info-card ul li:before{content:"✓ ";color:#ba7c61;font-weight:700}.info-card p{color:#555;margin-bottom:.8rem}.phone-link{color:#fff;background:#96604a;border-radius:25px;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:1.1rem;font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.phone-link:hover{background:#7d4e3a}.quote-success{text-align:center;padding:4rem 1.5rem}.success-card{background:#f5efe9;border-radius:16px;max-width:500px;margin:0 auto;padding:3rem}.success-card svg{color:#ba7c61;margin-bottom:1rem}.success-card h2{color:#364444;margin-bottom:1rem}.success-card p{color:#555;line-height:1.7}@media (width<=768px){.quote-grid,.form-row{grid-template-columns:1fr}}.contact-page .page-header{color:#fff;text-align:center;background:linear-gradient(135deg,#364444,#96604a);padding:4rem 1.5rem}.contact-page .page-header h1{margin-bottom:.5rem;font-size:2.5rem}.contact-page .page-header p{color:#e0ccc2;font-size:1.15rem}.contact-content{padding:3rem 1.5rem}.contact-grid{grid-template-columns:1fr 1.2fr;align-items:start;gap:2.5rem;display:grid}.contact-info h2{color:#364444;margin-bottom:1.5rem;font-size:1.5rem}.contact-cards{flex-direction:column;gap:1.2rem;display:flex}.contact-card{background:#f9f6f3;border-radius:10px;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.contact-card svg{color:#96604a;flex-shrink:0;margin-top:.2rem}.contact-card h3{color:#364444;margin-bottom:.2rem;font-size:1rem}.contact-card a{color:#96604a;font-weight:500;text-decoration:none}.contact-card a:hover{text-decoration:underline}.contact-card p{color:#555;margin:0;font-size:.95rem}.contact-form-wrapper{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 12px #0000000f}.contact-form h2{color:#364444;margin-bottom:1.5rem;font-size:1.4rem}.contact-form .form-group{margin-bottom:1.2rem}.contact-form label{color:#333;margin-bottom:.4rem;font-size:.95rem;font-weight:600;display:block}.contact-form input,.contact-form textarea{box-sizing:border-box;border:2px solid #e0e0e0;border-radius:8px;width:100%;padding:.7rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.contact-form input:focus,.contact-form textarea:focus{border-color:#ba7c61;outline:none}.contact-success{text-align:center;padding:3rem 1rem}.contact-success svg{color:#ba7c61;margin-bottom:1rem}.contact-success h2{color:#364444;margin-bottom:.5rem}.contact-success p{color:#555}@media (width<=768px){.contact-grid{grid-template-columns:1fr}}
