:root{--rouge-collonges:#B8403A;--rouge-sombre:#A03731;--rouge-clair:#C95A54;--beige-parquet:#D4C4B0;--blanc-casse:#FAF8F5;--blanc:#fff;--noir:#1C1C1C;--gris-elegant:#6B6B6B;--gris-tres-clair:#f0f0f0;--beige-clair:#E8DFD4}.skip-link{position:absolute;left:-9999px;background:var(--rouge-collonges);color:var(--blanc);padding:8px 16px;text-decoration:none;z-index:200;font-weight:600;border-radius:4px}.skip-link:focus{position:fixed;left:10px;top:80px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;line-height:1.6;color:var(--noir);background:var(--blanc-casse)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.navbar{background:var(--blanc-casse);padding:1.2rem 0;box-shadow:0 2px 15px rgba(0,0,0,.08);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--beige-clair)}.navbar .container{display:flex;justify-content:space-between;align-items:center}.nav-brand{font-size:1rem;font-weight:600;color:var(--noir);letter-spacing:-.3px;display:flex;align-items:center;gap:.6rem;text-decoration:none;line-height:1.3}.nav-brand span{text-align:center}.nav-brand:hover{color:var(--noir)}.nav-logo{width:42px;height:42px;pointer-events:auto;cursor:pointer}.nav-menu{display:flex;list-style:none;gap:2.5rem}.nav-menu a{text-decoration:none;color:var(--noir);font-weight:500;font-size:.95rem;transition:color .3s ease;position:relative}.nav-menu a::after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:var(--rouge-collonges);transition:width .3s ease}.nav-menu a:hover{color:var(--rouge-collonges)}.nav-menu a:hover::after{width:100%}.nav-toggle{display:none;background:0 0;border:none;cursor:pointer;padding:0;width:30px;height:24px;position:relative}.nav-toggle span{width:100%;height:3px;background:var(--noir);display:block;position:absolute;left:0;transition:all .3s ease-in-out;border-radius:2px}.nav-toggle span:first-child{top:0}.nav-toggle span:nth-child(2){top:50%;transform:translateY(-50%)}.nav-toggle span:nth-child(3){bottom:0}.nav-toggle.active span:first-child{top:50%;transform:translateY(-50%) rotate(45deg)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){bottom:50%;transform:translateY(50%) rotate(-45deg)}.hero{background:var(--noir);color:var(--blanc-casse);padding:140px 20px;text-align:center;position:relative;overflow:hidden;min-height:500px;display:flex;align-items:center;justify-content:center}.hero-slider{position:absolute;top:0;left:0;right:0;bottom:0;z-index:0}.hero-slide{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.5s ease-in-out}.hero-slide.active{opacity:1}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(28,28,28,.85) 0,rgba(42,42,42,.75) 100%);z-index:1}.hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent 0,var(--rouge-collonges) 100%);opacity:.15;z-index:2}.hero-content{position:relative;z-index:3}.hero-content h1{font-size:3.5rem;margin-bottom:.5rem;font-weight:700;letter-spacing:-1px;line-height:1.2}.hero-tagline{font-size:2rem;font-style:italic;color:var(--beige-clair);margin-bottom:1.5rem}.hero-subtitle{font-size:1.3rem;margin-bottom:2.5rem;opacity:.9;color:var(--beige-clair);font-weight:300}.hero-subtitle .phone-number{white-space:nowrap}.btn{display:inline-block;padding:16px 40px;text-decoration:none;border-radius:4px;font-weight:600;transition:all .3s ease;border:none;cursor:pointer;font-size:1rem;letter-spacing:.5px}.btn-primary{background:var(--rouge-collonges);color:var(--blanc-casse)}.btn-primary:hover{color:var(--blanc-casse);background:var(--rouge-sombre);transform:translateY(-2px);box-shadow:0 8px 20px rgba(184,64,58,.3)}.about{padding:100px 20px;background:var(--blanc-casse)}.about h2{font-size:2.8rem;margin-bottom:1.5rem;color:var(--noir);font-weight:700;letter-spacing:-1px}.about p{font-size:1.15rem;line-height:1.8;margin-bottom:2rem;color:var(--gris-elegant)}.section-title{text-align:center;font-size:2.8rem;margin-bottom:3.5rem;color:var(--noir);font-weight:700;letter-spacing:-1px}.about .gallery-grid{margin-top:3.5rem;max-width:900px;margin-left:auto;margin-right:auto}.reviews-section{margin-top:4rem;text-align:center}.reviews-intro{font-size:1.2rem;color:var(--gris-elegant);font-style:italic;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6}.google-reviews-widget{max-width:900px;margin:0 auto;min-height:200px;background:var(--blanc-casse);border-radius:12px;display:flex;align-items:center;justify-content:center}#reviews-widget-iframe{width:100%;border:none;overflow:hidden;display:block;min-height:600px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem;margin-top:2rem}.gallery-item{position:relative;border-radius:12px;background:var(--blanc);box-shadow:0 4px 15px rgba(0,0,0,.1);transition:all .3s ease;display:flex;flex-direction:column;overflow:hidden}.gallery-item:hover{transform:translateY(-8px);box-shadow:0 12px 30px rgba(0,0,0,.15)}.gallery-item img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;border-radius:12px 12px 0 0}.gallery-item:not(.slider-item) img{transition:transform .3s ease}.gallery-item:not(.slider-item):hover img{transform:scale(1.05)}.slider-container{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:12px 12px 0 0;background:var(--gris-tres-clair)}.slider-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.5s ease-in-out,transform .3s ease}.slider-image.active{opacity:1}.slider-item:hover .slider-image{transform:scale(1.05)}.gallery-caption{padding:1.2rem;text-align:center;font-weight:600;font-size:1.1rem;color:var(--noir);background:var(--blanc)}.services{padding:100px 20px;background:var(--beige-clair)}.services-intro{text-align:center;font-size:1.2rem;color:var(--gris-elegant);max-width:600px;margin:-2rem auto 3.5rem auto;line-height:1.7}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2.5rem;max-width:900px;margin:0 auto}.service-card-wide{grid-column:1/-1}.service-card-wide-content{display:flex;align-items:stretch;gap:2rem;width:100%}.service-card-wide-left,.service-card-wide-right,.service-card-wide-section{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.service-card-wide-divider{width:1px;background:var(--beige-clair);align-self:stretch}.service-card-wide .service-list{text-align:left}.service-card-wide-right{justify-content:flex-start}.btn-service{margin-top:1.5rem;padding:12px 28px;font-size:.95rem}.service-card{background:var(--blanc-casse);padding:2.5rem;border-radius:12px;transition:all .3s ease;box-shadow:0 4px 15px rgba(0,0,0,.06);display:flex;flex-direction:column;align-items:center;text-align:center}.service-card:hover{transform:translateY(-8px);box-shadow:0 12px 35px rgba(0,0,0,.12)}.service-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--rouge-collonges),var(--rouge-clair));border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;transition:transform .3s ease}.service-card:hover .service-icon{transform:scale(1.1)}.service-icon img{width:28px;height:28px}.service-card h3{color:var(--noir);margin-bottom:1rem;font-size:1.3rem;font-weight:600}.service-card .service-description{color:var(--gris-elegant);line-height:1.7;font-size:1rem}.service-sector{display:flex;align-items:center;gap:.5rem;color:var(--gris-elegant);font-size:.95rem;margin-top:.75rem}.service-sector img{width:18px;height:18px;filter:brightness(0) saturate(100%) invert(35%) sepia(72%) saturate(1057%) hue-rotate(329deg) brightness(89%) contrast(90%)}.service-list{list-style:none;padding:0;margin:0 0 1rem 0;text-align:left;width:100%}.service-list li{padding:.5rem 0;padding-left:1.5rem;position:relative;color:var(--gris-elegant);border-bottom:1px solid var(--beige-clair)}.service-list li:last-child{border-bottom:none}.service-list li span[aria-hidden]{color:var(--rouge-collonges);font-weight:700;margin-right:.5rem}.team{padding:100px 20px;background:var(--noir);color:var(--blanc-casse);position:relative}.team::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent 0,var(--rouge-collonges) 100%);opacity:.1}.team .container{position:relative;z-index:1}.team .section-title{color:var(--blanc-casse)}.team-card{background:var(--blanc);border-radius:16px;padding:3rem;max-width:700px;margin:0 auto;text-align:center;transition:all .3s ease;box-shadow:0 4px 20px rgba(0,0,0,.1)}.team-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px rgba(0,0,0,.15)}.team-members{display:flex;justify-content:center;gap:3rem;margin-bottom:2rem}.team-member{text-align:center}.member-photo{width:140px;height:140px;background:linear-gradient(135deg,var(--beige-parquet) 0,var(--rouge-collonges) 100%);border-radius:50%;margin:0 auto 1rem;border:4px solid var(--blanc-casse);overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,.1)}.member-photo img{width:100%;height:100%;object-fit:cover;display:block}.member-title{color:var(--rouge-collonges);font-weight:600;margin:.5rem 0;font-size:.85rem;text-transform:uppercase;letter-spacing:1px}.team-member h3{color:var(--noir);font-size:1.3rem;margin-bottom:.25rem}.team-description{color:var(--gris-elegant);line-height:1.7;font-size:1.05rem;max-width:500px;margin:0 auto}.contact{padding:100px 20px;background:var(--beige-clair)}.contact h2{text-align:center;margin-bottom:3rem}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;max-width:950px;margin:0 auto}.contact-info-left{display:flex;flex-direction:column;gap:1.25rem}.contact-info-right{display:flex;flex-direction:column}.info-card-map{background:var(--blanc-casse);border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.06);display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .3s ease}.info-card-map:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.1)}.info-card-map-header{display:flex;align-items:center;gap:1.25rem;padding:1.5rem 2rem}.info-card-map-body{flex:1;padding:0 1rem 1rem 1rem;min-height:0}.info-card-map-body iframe{width:100%;height:100%;min-height:200px;border:none;border-radius:12px}.info-card{background:var(--blanc-casse);border-radius:16px;padding:1.5rem 2rem;box-shadow:0 4px 20px rgba(0,0,0,.06);display:flex;align-items:center;gap:1.25rem;transition:all .3s ease}.info-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.1)}.info-card-icon{width:52px;height:52px;background:linear-gradient(135deg,var(--rouge-collonges),var(--rouge-clair));border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-card-icon img{width:24px;height:24px}.info-card-content{display:flex;flex-direction:column;gap:.2rem}.info-card-content strong{color:var(--noir);font-weight:700;font-size:1.1rem;margin-bottom:.2rem}.info-card-content a,.info-card-content span{color:var(--gris-elegant);font-size:.95rem;line-height:1.4}.info-card-content a:hover{color:var(--rouge-collonges)}.info-highlight{color:var(--rouge-collonges)!important;font-weight:600;font-size:1.05rem!important}.footer{background:var(--noir);color:var(--blanc-casse);padding:2.5rem 0;text-align:center;border-top:3px solid var(--rouge-collonges)}.footer p{color:var(--beige-clair)}@media (max-width:768px){.nav-menu{position:absolute;top:100%;left:0;right:0;background:var(--blanc-casse);flex-direction:column;padding:0 1.5rem;box-shadow:0 8px 20px rgba(0,0,0,.1);gap:1rem;max-height:0;overflow:hidden;opacity:0;transform:translateY(-10px);transition:max-height .4s ease-in-out,opacity .3s ease,transform .3s ease,padding .4s ease}.nav-menu.active{display:flex;max-height:500px;opacity:1;transform:translateY(0);padding:1.5rem}.nav-toggle{display:flex}.hero-content h1{font-size:2.2rem}.hero-subtitle{font-size:1.1rem}.contact-content{grid-template-columns:1fr}.info-card:hover{transform:none}.services-grid{grid-template-columns:1fr;gap:1.5rem}.services-intro{font-size:1.05rem;margin-bottom:2.5rem}.service-card{padding:2rem}.service-card-wide-content{flex-direction:column;gap:1.5rem}.service-card-wide-divider{width:100%;height:1px}.team-members{flex-direction:column;gap:2rem}.team-card{padding:2rem}.section-title{font-size:2.2rem}.about h2{font-size:2.2rem}}a{color:var(--rouge-collonges);text-decoration:none;transition:all .3s ease}a:hover{color:var(--rouge-sombre)}.hero a:not(.btn){color:var(--blanc-casse);font-weight:500;text-decoration:underline;text-decoration-color:var(--rouge-collonges);text-decoration-thickness:2px;text-underline-offset:3px;transition:all .3s ease}.hero a:not(.btn):hover{color:var(--blanc);text-decoration-color:var(--blanc-casse)}li a:not(.nav-menu a),p a{font-weight:500}li a:not(.nav-menu a):hover,p a:hover{color:var(--rouge-sombre)}.acronym{text-decoration:dotted underline;text-underline-offset:2px;cursor:help;color:inherit}.tooltip{position:fixed;background:var(--noir);color:var(--blanc-casse);padding:8px 10px;border-radius:6px;font-size:.95rem;white-space:nowrap;z-index:9999;box-shadow:0 8px 20px rgba(0,0,0,.25);transform:translateY(6px);opacity:0;transition:opacity .15s ease,transform .15s ease;pointer-events:none}.tooltip[data-visible=true]{opacity:1;transform:translateY(0);pointer-events:auto}