@keyframes scroll-partners{0%{transform:translateX(0)}to{transform:translateX(calc(-50%))}}@keyframes scroll-back-forth{0%,to{transform:translateX(-10%)}50%{transform:translateX(10%)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}:root{--primary-color:#9F1916;--primary-color-dark:#6f110f;--secondary-color:#e75552;--text-color:#333333;--text-color-light:#666666;--background-color:#ffffff;--background-color-alt:#e1e1e1;--border-color:#e0e0e0;--success-color:#28a745;--error-color:#dc3545;--gray-100:#f8f9fa;--gray-200:#e9ecef;--gray-300:#dee2e6;--gray-400:#ced4da;--gray-500:#adb5bd;--gray-600:#6c757d;--gray-700:#495057;--gray-800:#343a40;--gray-900:#212529;--max-width:1200px;--header-height:80px;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:2rem;--spacing-xl:3rem;--border-radius:6px;--border-radius-lg:10px;--box-shadow:0 5px 15px rgba(0, 0, 0, 0.05);--box-shadow-hover:0 10px 25px rgba(0, 0, 0, 0.1);--transition-speed:0.3s ease}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body,summary{color:var(--text-color)}body{font-family:"Inter",sans-serif;line-height:1.6;background-color:var(--background-color)}img{max-width:100%;height:auto}iframe{border:0}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-speed)}a:hover{color:var(--primary-color-dark)}ol,ul{list-style-position:inside}.mail-break{word-break:break-word}details{margin:var(--spacing-sm)0;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--gray-100);transition:var(--transition-speed);overflow:hidden}details[open]{box-shadow:var(--box-shadow)}summary{cursor:pointer;font-weight:600;padding:var(--spacing-sm);position:relative;list-style:none}summary::marker{content:""}details p,summary::after{transition:var(--transition-speed)}summary::after{content:">";position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%) rotate(0deg);color:var(--primary-color);font-size:.9rem;opacity:.8}details[open] summary::after{transform:translateY(-50%) rotate(90deg);opacity:1}details p{margin:0;padding:0 var(--spacing-sm) var(--spacing-sm);color:var(--text-color-light);opacity:0;transform:translateY(-5px)}details[open] p{opacity:1;transform:translateY(0)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 20px}#main-nav,.btn{transition:all var(--transition-speed)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;font-size:1rem;font-weight:600;border-radius:var(--border-radius);cursor:pointer;text-align:center;text-decoration:none;border:0;gap:var(--spacing-xs)}.btn i,.btn svg{margin-right:8px}.btn-primary,.btn-primary:hover{background-color:var(--primary-color);color:var(--background-color)}.btn-primary:hover{background-color:var(--primary-color-dark)}.btn-secondary{background-color:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.btn-secondary:hover{background-color:rgba(51,102,204,.1)}.btn-lg{padding:14px 28px;font-size:1.1rem}.btn-submit{background-color:var(--primary-color);color:var(--background-color);width:100%;padding:14px;margin-top:10px}.btn-submit:hover{background-color:var(--primary-color-dark)}section{padding:60px 0}.section-with-bg{background-color:var(--background-color-alt)}.section-header{text-align:center;margin-bottom:40px}.section-header h2{font-size:2.5rem;margin-bottom:10px;color:var(--primary-color)}.section-divider{height:3px;width:80px;background-color:var(--secondary-color);margin:0 auto}.hero{background:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)),url(https://source.unsplash.com/featured/?dog-training,landscape)no-repeat center center;background-size:cover;color:var(--background-color);display:flex;align-items:center;text-align:center;padding:25px 0}.hero .container{max-width:800px}.hero h1,.logo-container{margin-bottom:20px}.logo{width:150px;height:150px;border-radius:50%;object-fit:cover;border:5px solid rgba(255,255,255,.5)}.hero h1{font-size:3.5rem;font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.3)}.tagline{font-size:1.3rem;margin-bottom:40px;font-weight:500}#main-nav{position:sticky;top:0;background-color:var(--background-color);box-shadow:0 2px 15px rgba(0,0,0,.1);z-index:1000}.nav-banner{width:100%;color:var(--gray-100);background-color:var(--primary-color);text-align:center}.nav-banner p:not(:empty){padding:5px 0;font-weight:700;text-transform:math-auto}.nav-container{display:flex;justify-content:space-between;align-items:center;height:var(--header-height)}.logo-small a{display:flex}.nav-logo{width:50px;height:50px;border-radius:50%;object-fit:cover}.nav-links{display:flex;column-gap:var(--spacing-lg);flex-wrap:wrap;justify-content:flex-end;max-width:70%}.nav-links a{font-weight:600;color:var(--text-color);position:relative;padding:6px 0}.features-list li .icon,.nav-links a.highlight,.nav-links a:hover{color:var(--primary-color)}.nav-links a::after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;background-color:var(--primary-color);transition:width var(--transition-speed)}.nav-links a:hover::after{width:100%}.mobile-menu-toggle{display:none;background:0 0;border:0;cursor:pointer;z-index:1}.bar{display:block;width:25px;height:3px;margin:5px auto;background-color:var(--text-color);transition:all var(--transition-speed)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:center}.about-text p{margin-bottom:20px;font-size:1.1rem}.features-list{list-style:none;margin-top:30px}.features-list li{margin-bottom:15px;display:flex;align-items:center;font-weight:500}.features-list li .icon{margin-right:15px;font-size:1.5rem;width:30px;display:flex;justify-content:center}.about-image img{border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow)}.schedule-intro,.schedule-outro{max-width:800px;margin:0 auto 40px;text-align:center;font-size:1.1rem}.schedule-outro{text-align:left}.no-schedule-info{display:none}.table-container:has(.schedule-table tbody:empty):not(.loading) .schedule-table{display:none}.table-container:has(.schedule-table tbody:empty):not(.loading) .no-schedule-info{display:block;text-align:center;font-size:1.2rem;color:var(--text-color-light);margin-top:20px}.table-container{overflow-x:auto;margin-bottom:40px}.schedule-table{width:100%;border-collapse:collapse;background-color:var(--background-color);border-radius:var(--border-radius-lg);overflow:hidden}.schedule-table td,.schedule-table th{padding:15px 20px;text-align:left;border-bottom:1px solid var(--gray-200)}.schedule-table th{background-color:var(--primary-color);color:var(--background-color);font-weight:600;text-transform:uppercase;font-size:.9rem;letter-spacing:1px}.schedule-table tr:last-child td{border-bottom:none}.schedule-table tr:hover{background-color:rgba(51,102,204,.05)}.business-hours li span,.schedule-table .day{font-weight:600;color:var(--primary-color)}.pricing-info h3{text-align:center;margin-bottom:30px;font-size:1.8rem;color:var(--text-color)}.pricing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.pricing-card{background-color:var(--background-color);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--box-shadow);transition:transform var(--transition-speed),box-shadow var(--transition-speed);position:relative}.pricing-card:hover{transform:translateY(-5px);box-shadow:var(--box-shadow-hover)}.pricing-card.featured{border:2px solid var(--secondary-color)}.ribbon{position:absolute;text-align:center;min-width:60%;font-family:monospace;top:15px;right:-35px;transform:rotate(37deg);background-color:var(--secondary-color);color:var(--background-color);padding:5px 40px;font-size:.9rem;font-weight:400;z-index:1;opacity:.8}.pricing-header{background-color:var(--gray-100);padding:20px;text-align:center;border-bottom:1px solid var(--gray-200)}.pricing-header h4{font-size:1.4rem;margin-bottom:10px;color:var(--text-color)}.price{font-size:2rem;font-weight:700;color:var(--primary-color)}.pricing-body{padding:20px;text-align:center}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.gallery-item{position:relative;overflow:hidden;border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow);aspect-ratio:4/3;transition:all var(--transition-speed)}.gallery-item:has(img[src=""]),.team-image:has(img[src=""]){display:none}.gallery-item img,.team-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover img,.team-card:hover .team-image img{transform:scale(1.1)}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;border-radius:0 0 var(--border-radius-lg) var(--border-radius-lg);background:linear-gradient(transparent,rgba(0,0,0,.8));padding:20px;color:var(--background-color);transform:translateY(100%);transition:transform var(--transition-speed)}.gallery-item:hover .gallery-overlay{transform:translateY(0)}.gallery-overlay h4{font-size:1.2rem;margin-bottom:5px}.gallery-overlay p{font-size:.9rem;opacity:.9}.team-intro{text-align:center;max-width:800px;margin:0 auto 40px;font-size:1.1rem}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.team-card{border:2px solid var(--border-color);background-color:var(--background-color);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--box-shadow);transition:transform var(--transition-speed)}.team-card:hover{transform:translateY(-10px)}.team-image{height:300px;overflow:hidden;text-align:center;align-content:center}.team-content{padding:20px}.business-hours h3,.info-item h3,.team-content h3{font-size:1.5rem;margin-bottom:5px;color:var(--text-color)}.team-role{color:var(--primary-color);font-weight:600;margin-bottom:15px}.team-bio{color:var(--text-color-light);margin-bottom:20px;font-size:.95rem}.team-social{display:flex;gap:var(--spacing-sm)}.team-social a{width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:var(--gray-100);color:var(--primary-color);transition:all var(--transition-speed)}.team-social a:hover{background-color:var(--primary-color);color:var(--background-color)}.testimonials-slider{max-width:800px;margin:0 auto;position:relative}.testimonial{background-color:var(--background-color);border-radius:var(--border-radius-lg);padding:30px;box-shadow:var(--box-shadow)}.contact-container{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.contact-info{background-color:var(--background-color);border-radius:var(--border-radius-lg);padding:30px;box-shadow:var(--box-shadow)}.info-item{display:flex;align-items:flex-start;margin-bottom:25px;gap:var(--spacing-md)}.info-icon{width:45px;height:45px;background-color:rgba(51,102,204,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:1.2rem}.business-hours h3,.info-item h3{font-size:1.2rem}.info-item p{color:var(--text-color-light)}.business-hours{margin-top:30px;border-top:1px solid var(--gray-200);padding-top:20px}.business-hours h3{margin-bottom:15px}.business-hours ul{list-style:none}.business-hours li{margin-bottom:10px;display:flex;justify-content:space-between;border-bottom:1px dashed var(--gray-200);padding-bottom:5px}.contact-form-container{background-color:var(--background-color);border-radius:var(--border-radius-lg);padding:30px;box-shadow:var(--box-shadow)}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color)}.form-group input,.form-group textarea{width:100%;padding:12px 15px;border:1px solid var(--gray-300);border-radius:var(--border-radius);transition:border-color var(--transition-speed);font-family:inherit;font-size:1rem}.form-group input:focus,.form-group textarea:focus{outline:0;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(51,102,204,.1)}.form-group.consent{display:flex;align-items:flex-start;gap:var(--spacing-sm)}.form-group.consent input{width:auto;margin-top:6px}.form-group.consent label{font-size:.9rem;font-weight:400}.map-container{height:400px;border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--box-shadow);margin-bottom:20px}.directions{max-width:800px;margin:0 auto;text-align:center}.directions h3{font-size:1.5rem;margin-bottom:10px;color:var(--text-color)}.partners-track{display:flex;align-items:center;gap:var(--spacing-md);justify-content:center;width:100%;flex-wrap:wrap}.partner-item{filter:grayscale(100%);transition:all var(--transition-speed)}.partner-item:hover{filter:grayscale(0%);transform:scale(1.025)}.partner-item img{width:calc(var(--spacing-xl)*2.25);height:auto;object-fit:cover}#calendar{padding:var(--spacing-xl) var(--spacing-lg);margin:0 auto}.section-title{text-align:center;font-size:2.25rem;font-weight:700;margin-bottom:var(--spacing-lg);color:var(--text-color);position:relative;padding-bottom:var(--spacing-md)}.section-title::after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:80px;height:3px;background-color:var(--primary-color);border-radius:2px}.calendar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.calendar-card{background-color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;transition:transform var(--transition-speed),box-shadow var(--transition-speed);box-shadow:var(--box-shadow);display:flex;flex-direction:column;height:100%}.calendar-card:hover{transform:translateY(-8px);box-shadow:var(--box-shadow-hover);border-color:var(--gray-300)}.calendar-date,.calendar-link a{background-color:var(--primary-color)}.calendar-date{color:var(--background-color);padding:var(--spacing-md);font-weight:700;text-align:center;font-size:1.1rem;text-transform:uppercase;border-bottom:3px solid var(--primary-color-dark)}.calendar-content{padding:var(--spacing-lg);flex-grow:1;display:flex;flex-direction:column}.calendar-content h4{margin:0 0 var(--spacing-sm)0;font-size:1.25rem;color:var(--text-color);font-weight:600;line-height:1.3}.calendar-content p{margin:0 0 var(--spacing-md)0;font-size:1rem;color:var(--text-color-light);line-height:1.6;flex-grow:1}.calendar-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:var(--spacing-sm);border-top:1px solid var(--gray-200)}.calendar-location{display:flex;align-items:center;font-size:.9rem;color:var(--gray-600)}.calendar-location svg{margin-right:var(--spacing-xs);width:16px;height:16px}.calendar-link a{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius);font-size:.9rem;font-weight:500;transition:background-color var(--transition-speed);color:#fff;text-decoration:none}.calendar-link:hover a{background-color:var(--secondary-color)}.calendar-link.disabled a{background-color:var(--gray-700);cursor:not-allowed;pointer-events:none}.calendar-link.disabled:hover{background-color:var(--gray-500)}@media (max-width:768px){#calendar{padding:var(--spacing-lg) var(--spacing-md)}.calendar-grid{grid-template-columns:1fr}.section-title{font-size:1.8rem}}#cta{background:linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.7)),url(https://source.unsplash.com/featured/?dog-park)no-repeat center center;background-size:cover;text-align:center;padding:80px 0}.cta-content h2{font-size:2.5rem;margin-bottom:20px}.cta-content p{font-size:1.2rem;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto}#cta,.footer-links a,footer{color:var(--background-color)}footer{background-color:var(--gray-800);padding:60px 0 30px}.footer-content{display:grid;grid-template-columns:1fr 3fr 1fr;gap:var(--spacing-lg);margin-bottom:40px}.footer-links,.footer-logo{display:flex;justify-content:center;align-items:center}.footer-logo img{width:120px;height:120px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.1)}.footer-links{gap:var(--spacing-md);flex-wrap:wrap}.footer-links a{font-weight:500;transition:color var(--transition-speed)}.footer-links a:hover{color:var(--secondary-color)}.footer-bottom,.footer-social{display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-sm)}.footer-social a{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:rgba(255,255,255,.1);color:var(--background-color);transition:all var(--transition-speed)}.footer-social a:hover{background-color:var(--secondary-color);transform:translateY(-5px)}.footer-bottom{justify-content:space-between;padding-top:30px;border-top:1px solid rgba(255,255,255,.1);font-size:.9rem;color:var(--gray-400);flex-wrap:wrap;gap:var(--spacing-lg)}.footer-legal{display:flex;gap:var(--spacing-sm)}.footer-legal a{color:var(--gray-400)}.footer-legal a:hover{color:var(--background-color)}.footer-designer{font-size:.625em;color:var(--background-color-alt)}.footer-designer a{color:var(--secondary-color)}.loading{opacity:.4;pointer-events:none;position:relative}.loading::after{content:"Chargement...";position:absolute;top:65%;left:50%;transform:translate(-50%,-50%);font-style:italic;font-size:1em;color:var(--text-color);animation:pulse 1.2s infinite}@media (max-width:992px){.hero h1{font-size:2.8rem}.about-content,.contact-container,.footer-content{grid-template-columns:1fr}.footer-content{text-align:center}.footer-logo{margin-bottom:20px}.footer-social{justify-content:center;margin-top:20px}.footer-bottom{flex-direction:column;text-align:center}}@media (max-width:768px){section{padding:40px 0}.hero{min-height:500px}.hero h1{font-size:2.2rem}.mobile-menu-toggle{display:block}.nav-links{position:fixed;top:var(--header-height);left:-100%;height:calc(100vh - var(--header-height));width:100%;background-color:var(--background-color);flex-direction:column;align-items:center;justify-content:flex-start;padding-top:40px;transition:left var(--transition-speed);max-width:100%}.nav-links.active{left:0}.section-header h2{font-size:2rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width:576px){.logo{width:120px;height:120px}.hero h1{font-size:1.8rem}.tagline{font-size:1.1rem}.hero-cta{flex-direction:column}.btn{width:100%}.pricing-cards,.team-grid{grid-template-columns:1fr}}.fade-in{animation:fadeIn .6s ease forwards}