@font-face{font-display:swap;font-family:Playfair;font-style:normal;font-weight:700;src:url(/build/fonts/PlayfairDisplay-Black.24889400.ttf) format("truetype")}:root{--primary-color:#0d0d0d;--secondary-color:#3b82bf;--success-color:#d96277;--light-blue:#d9d9d9}body{font-family:Playfair,sans-serif}.navbar-brand{font-size:1.8rem;font-weight:700}.navbar-brand img{height:40px;margin-right:10px;transition:transform .3s ease;width:auto}.navbar-brand:hover img{transform:scale(1.1)}.hero-section{background:linear-gradient(135deg,var(--light-blue) 0,#bbdefb 100%);overflow:hidden;padding:100px 0;position:relative}.hero-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' width='10' height='10' patternUnits='userSpaceOnUse'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='.5' d='M10 0H0v10' opacity='.3'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");bottom:0;content:"";left:0;opacity:.1;position:absolute;right:0;top:0}.hero-content{position:relative;z-index:1}.hero-image img{cursor:pointer;height:400px;transition:transform .3s ease;width:auto}.hero-image:hover img{border:2px solid red;transform:scale(1.2)}.service-card{border:none;border-radius:15px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{box-shadow:0 15px 35px rgba(0,123,255,.1);transform:translateY(-10px)}.service-icon{color:var(--primary-color);font-size:3rem;margin-bottom:1rem}.section-title{margin-bottom:3rem;position:relative}.section-title:after{background:var(--primary-color);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.testimonial-card{background:#f8f9fa;border-radius:15px;margin-bottom:2rem;padding:2rem;position:relative}.testimonial-card:before{color:var(--primary-color);content:'"';font-size:4rem;left:20px;opacity:.3;position:absolute;top:-10px}.contact-section{background:var(--light-blue)}.contact-info{background:#fff;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,.1);padding:2rem}.contact-info .mb-3{align-items:flex-start;display:flex}.contact-info .mb-3 i{flex-shrink:0;margin-top:2px}.contact-info .address-block,.contact-info .horaire-block{flex:1;line-height:1.4}.btn-success-gradient{background:linear-gradient(45deg,var(--success-color),#20c997);border:none;border-radius:25px;color:#fff;font-weight:600;padding:12px 30px;transition:all .3s ease}.btn-success-gradient:hover{background:linear-gradient(45deg,#228b22,var(--success-color));box-shadow:0 8px 20px rgba(40,167,69,.4);color:#fff;transform:translateY(-2px)}.btn-primary{background:linear-gradient(45deg,var(--primary-color),#0056b3);border:none;border-radius:25px;font-weight:600;padding:12px 30px;transition:all .3s ease}.btn-primary:hover{box-shadow:0 8px 20px rgba(0,123,255,.3);transform:translateY(-2px)}.stats-counter{padding:2rem;text-align:center}.counter-number{color:var(--primary-color);font-size:3rem;font-weight:700}.about-section{padding:80px 0}.footer{background:#2c3e50;color:#fff;padding:3rem 0 1rem}.footer h5{color:var(--primary-color);margin-bottom:1rem}.footer a{color:#bdc3c7;text-decoration:none;transition:color .3s ease}.footer a:hover{color:#fff}.navbar-nav .nav-link{font-weight:500;margin:0 10px;transition:color .3s ease}.navbar-nav .nav-link:hover{color:var(--primary-color)!important}@media (max-width:768px){.hero-section{padding:60px 0}.counter-number,.hero-section h1{font-size:2rem}}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:500;margin-bottom:.2rem}.form-group .form-control{width:100%}