/* ===== VARIABLES CSS ===== */:root{/* Couleurs primaires */ --color-primary:#1e40af;--color-primary-dark:#1e3a8a;--color-secondary:#2563eb;--color-accent:#fbbf24;--color-accent-dark:#f59e0b;--color-success:#10b981;--color-error:#dc2626;--color-error-dark:#b91c1c;/* Couleurs neutres */ --color-text:#1f2937;--color-text-medium:#374151;--color-text-gray:#4b5563;--color-text-light:#6b7280;--color-text-lighter:#9ca3af;--color-bg:#f9fafb;--color-bg-light:#f3f4f6;--color-white:#ffffff;--color-border:#e5e7eb;--color-slate:#64748b;--color-slate-light:#94a3b8;--color-slate-lighter:#cbd5e1;--color-slate-lightest:#e2e8f0;--color-blue-light:#60a5fa;--color-blue-lighter:#93c5fd;--color-yellow-light:#fcd34d;--color-yellow-bg:#fffbeb;--color-brown:#78350f;/* Couleurs footer */ --color-footer-dark:#1e293b;--color-footer-medium:#334155;--color-footer-bottom:#0f172a;/* Espacements */ --spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;/* Breakpoints (pour référence,pas utilisables directement) */ /* 320px,480px,768px,1024px,1200px,1440px,1920px */}/* ===== RESET & BASE ===== */*{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(--color-text);background:var(--color-white);}/* ===== SKIP LINK ACCESSIBILITÉ (WCAG 2.4.1) ===== */.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:var(--color-white);padding:0.75rem 1.5rem;text-decoration:none;font-weight:600;z-index:10000;border-radius:0 0 0.5rem 0;transition:top 0.2s;}.skip-link:focus{top:0;outline:3px solid var(--color-accent);outline-offset:2px;}/* ===== FOCUS VISIBLE PERSONNALISÉ (WCAG 2.4.7) ===== *//* Supprimer outline navigateur par défaut */*:focus{outline:none;}/* Outline custom sur éléments interactifs */a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px;border-radius:0.25rem;}/* Focus boutons primaires */.btn-submit:focus-visible,.cta-button:focus-visible,.btn-devis:focus-visible{outline:3px solid var(--color-white);outline-offset:3px;box-shadow:0 0 0 6px rgba(251,191,36,0.3);}/* Focus liens navigation */nav a:focus-visible,.nav-link:focus-visible{background:rgba(30,64,175,0.1);outline:2px solid var(--color-accent);outline-offset:4px;}/* Focus dropdown button */.dropdown-toggle:focus-visible{background:rgba(30,64,175,0.1);outline:2px solid var(--color-accent);outline-offset:2px;}/* Focus checkboxes/radios */input[type="checkbox"]:focus-visible,input[type="radio"]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;}/* Indicateur focus déplacement clavier */:focus-visible{transition:outline 0.15s ease-in-out,box-shadow 0.15s ease-in-out;}/* ===== LAYOUT GLOBAL ===== */.container{max-width:1280px;margin:0 auto;padding:0 2rem;}/* ===== HEADER & NAVIGATION ===== */.site-header{background:var(--color-white);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:1000;box-shadow:0 2px 4px rgba(0,0,0,0.05);}.header-container{max-width:1200px;margin:0 auto;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;}/* Logo */.header-logo a{display:flex;align-items:center;gap:0.75rem;text-decoration:none;font-size:1.25rem;font-weight:700;color:var(--color-primary);transition:opacity 0.3s;}.header-logo a:hover{opacity:0.8;}.logo-image{height:40px;width:auto;display:block;}.logo-text{white-space:nowrap;}/* Navigation desktop */.header-nav{display:flex;align-items:center;gap:1.5rem;flex:1;}.nav-link{color:var(--color-text-medium);text-decoration:none;font-size:0.9375rem;font-weight:500;padding:0.5rem 0;border-bottom:2px solid transparent;transition:all 0.3s;background:none;border:none;cursor:pointer;font-family:inherit;}.nav-link:hover{color:var(--color-secondary);border-bottom-color:var(--color-secondary);}/* Dropdown */.nav-dropdown{position:relative;}.dropdown-toggle{display:flex;align-items:center;gap:0.25rem;}.arrow{font-size:0.75rem;transition:transform 0.3s;}.nav-dropdown:hover .arrow{transform:rotate(180deg);}.dropdown-menu{position:absolute;top:100%;left:0;background:var(--color-white);border:1px solid var(--color-border);border-radius:0.5rem;box-shadow:0 4px 12px rgba(0,0,0,0.1);padding:0.5rem 0;min-width:220px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all 0.3s;z-index:100;}.nav-dropdown:hover .dropdown-menu,.dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0);}.dropdown-menu a{display:block;padding:0.75rem 1rem;color:var(--color-text-medium);text-decoration:none;font-size:0.9375rem;transition:background 0.2s;}.dropdown-menu a:hover{background:var(--color-bg-light);color:var(--color-secondary);}.dropdown-divider{height:1px;background:var(--color-border);margin:0.5rem 0;}/* Highlight dropdown items */.dropdown-menu .dropdown-highlight{font-weight:600;color:var(--color-error);}/* CTA Devis */.header-cta{display:flex;}.btn-devis{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);color:var(--color-white);padding:0.625rem 1.25rem;border-radius:0.5rem;text-decoration:none;font-weight:600;font-size:0.9375rem;transition:all 0.3s;white-space:nowrap;}.btn-devis:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(37,99,235,0.3);}/* Burger mobile */.burger-menu{display:none;flex-direction:column;gap:0.25rem;background:none;border:none;cursor:pointer;padding:0.5rem;}.burger-menu span{width:24px;height:2px;background:var(--color-text-medium);border-radius:2px;transition:all 0.3s;}.burger-menu.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}.burger-menu.active span:nth-child(2){opacity:0;}.burger-menu.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px);}/* Menu mobile */.mobile-nav{display:none;flex-direction:column;background:var(--color-bg);border-top:1px solid var(--color-border);padding:1rem 1.5rem;max-height:0;overflow:hidden;transition:max-height 0.3s;}.mobile-nav.active{display:flex;max-height:600px;}.mobile-nav a{color:var(--color-text-medium);text-decoration:none;padding:0.75rem 0;border-bottom:1px solid var(--color-border);font-size:1rem;}.mobile-section{margin:1rem 0;}.mobile-section-title{font-weight:700;color:var(--color-primary);font-size:0.875rem;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:0.5rem;}.mobile-section a{padding-left:1rem;font-size:0.9375rem;}.mobile-nav .mobile-cta{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);color:var(--color-white);padding:0.875rem;border-radius:0.5rem;text-align:center;font-weight:600;margin-top:1rem;border:none;}/* ===== FOOTER ===== */.site-footer{background:linear-gradient(135deg,var(--color-footer-dark) 0%,var(--color-footer-medium) 100%);color:var(--color-slate-lightest);padding:3rem 0 0 0;margin-top:4rem;}.footer-container{max-width:1200px;margin:0 auto;padding:0 1.5rem;}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-bottom:2rem;}.footer-col{display:flex;flex-direction:column;}.footer-title{color:var(--color-white);font-size:1rem;font-weight:700;margin-bottom:1rem;text-transform:uppercase;letter-spacing:0.05em;}.footer-links,.footer-trust,.footer-contact{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.625rem;}.footer-links a,.footer-contact a{color:var(--color-slate-lighter);text-decoration:none;font-size:0.9375rem;transition:color 0.3s;}.footer-links a:hover,.footer-contact a:hover{color:var(--color-blue-light);}.site-footer .footer-highlight{color:var(--color-accent);font-weight:600;}.site-footer .footer-highlight:hover{color:var(--color-yellow-light);}.site-footer .footer-cta-link{color:var(--color-blue-light);font-weight:600;}.site-footer .footer-cta-link:hover{color:var(--color-blue-lighter);}.footer-trust{font-size:0.875rem;color:var(--color-slate-light);}.footer-contact{gap:1rem;}.footer-contact strong{color:var(--color-white);font-size:0.875rem;display:block;margin-bottom:0.25rem;}.footer-contact a{display:inline-block;}/* Bottom bar */.footer-bottom{background:var(--color-footer-bottom);padding:1.5rem 0;margin-top:2rem;border-top:1px solid var(--color-footer-medium);}.footer-bottom-content{text-align:center;}.footer-copyright{color:var(--color-slate-light);font-size:0.875rem;margin:0 0 0.5rem 0;}.footer-legal{color:var(--color-slate);font-size:0.8125rem;margin:0;}/* ===== SECTIONS PAGES ===== *//* Hero Section */.hero{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:white;padding:5rem 2rem;text-align:center;position:relative;overflow:hidden;}.hero h1{font-size:3rem;font-weight:800;margin-bottom:1.5rem;line-height:1.1;}.hero-subtitle{font-size:1.5rem;margin-bottom:2rem;opacity:0.95;line-height:1.4;}.hero-cta{display:flex;gap:1.5rem;justify-content:center;align-items:center;margin-bottom:2.5rem;flex-wrap:wrap;}.btn-primary{display:inline-block;background:var(--color-accent);color:var(--color-primary);padding:1.25rem 3rem;border-radius:0.75rem;text-decoration:none;font-weight:700;font-size:1.25rem;box-shadow:0 10px 25px rgba(251,191,36,0.4);transition:all 0.3s ease;}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(251,191,36,0.5);}.btn-secondary{display:inline-block;background:rgba(255,255,255,0.15);color:white;padding:1.25rem 3rem;border-radius:0.75rem;text-decoration:none;font-weight:700;font-size:1.25rem;border:2px solid rgba(255,255,255,0.3);transition:all 0.3s ease;}.btn-secondary:hover{background:rgba(255,255,255,0.25);transform:translateY(-3px);}.hero-trust{display:flex;gap:2rem;justify-content:center;align-items:center;flex-wrap:wrap;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.2);font-size:1rem;}.hero-trust span{font-weight:600;}/* Services Section */.services-section{padding:4rem 2rem;background:white;}.services-section h2{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:1rem;}.section-subtitle{text-align:center;font-size:1.125rem;color:var(--color-text-light);margin-bottom:3rem;}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin:3rem 0;}.service-card{padding:2rem;border:2px solid var(--color-border);border-radius:0.75rem;text-align:center;transition:all 0.3s ease;background:white;}.service-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,0.12);border-color:var(--color-secondary);}.service-icon{font-size:3rem;margin-bottom:1rem;}.service-card h3{font-size:1.5rem;font-weight:600;margin-bottom:0.5rem;}.service-price{font-size:2rem;font-weight:700;color:var(--color-secondary);margin:1rem 0;}.service-description{color:var(--color-text-light);margin:1rem 0;font-size:0.9375rem;line-height:1.5;}.service-features{list-style:none;text-align:left;margin:1.5rem 0;padding:0;}.service-features li{padding:0.5rem 0;color:var(--color-text-gray);font-size:0.9375rem;}.btn-service{display:inline-block;background:var(--color-secondary);color:white;padding:0.75rem 2rem;border-radius:0.5rem;text-decoration:none;font-weight:600;margin-top:1rem;transition:all 0.3s ease;}.btn-service:hover{background:var(--color-primary);transform:translateY(-2px);}/* Combo Banner */.combo-banner{display:flex;align-items:center;justify-content:center;gap:2rem;padding:2rem;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);border-radius:0.75rem;margin-top:3rem;flex-wrap:wrap;}.combo-icon{font-size:3rem;}.combo-text{flex:1;min-width:300px;}.combo-text strong{font-size:1.5rem;color:var(--color-text);display:block;margin-bottom:0.5rem;}.combo-text p{color:var(--color-brown);font-size:1rem;margin:0;}.btn-combo{display:inline-block;background:var(--color-error);color:white;padding:1rem 2rem;border-radius:0.5rem;text-decoration:none;font-weight:700;transition:all 0.3s ease;}.btn-combo:hover{background:var(--color-error-dark);transform:translateY(-2px);}/* Why Section */.why-section{padding:4rem 2rem;background:var(--color-bg);}.why-section h2{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:3rem;}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:3rem 0;}.why-card{padding:2rem;background:white;border-radius:0.75rem;box-shadow:0 4px 12px rgba(0,0,0,0.08);text-align:center;transition:all 0.3s ease;}.why-card:hover{transform:translateY(-5px);box-shadow:0 12px 24px rgba(0,0,0,0.12);}.why-icon{font-size:3rem;margin-bottom:1rem;}.why-card h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem;}.why-card p{color:var(--color-text-light);font-size:0.9375rem;line-height:1.6;}/* Zones Section */.zones-section{padding:4rem 2rem;background:white;}.zones-section h2{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:1rem;}.zones-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:3rem 0;}.zone-card{padding:2rem;border:2px solid var(--color-border);border-radius:0.75rem;text-align:center;transition:all 0.3s ease;background:white;}.zone-card:hover{transform:translateY(-5px);box-shadow:0 12px 24px rgba(0,0,0,0.12);border-color:var(--color-secondary);}.zone-card h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem;}.zone-card p{color:var(--color-text-light);font-size:0.9375rem;margin:1rem 0;line-height:1.6;}.btn-zone{display:inline-block;background:var(--color-secondary);color:white;padding:0.75rem 2rem;border-radius:0.5rem;text-decoration:none;font-weight:600;margin-top:1rem;transition:all 0.3s ease;}.btn-zone:hover{background:var(--color-primary);transform:translateY(-2px);}.zones-note{text-align:center;margin-top:2rem;padding:1.5rem;background:var(--color-yellow-bg);border-radius:0.75rem;border:2px solid var(--color-accent);font-size:1rem;}.zones-note a{color:var(--color-secondary);font-weight:600;text-decoration:none;}.zones-note a:hover{text-decoration:underline;}/* Testimonials Section */.testimonials-section{padding:4rem 2rem;background:var(--color-bg);}.testimonials-section h2{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:3rem;}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:3rem 0;}.testimonial-card{padding:2rem;background:white;border-radius:0.75rem;box-shadow:0 4px 12px rgba(0,0,0,0.08);}.stars{font-size:1.25rem;margin-bottom:1rem;color:var(--color-accent);}.testimonial-text{font-size:0.9375rem;color:var(--color-text-gray);line-height:1.6;margin-bottom:1rem;font-style:italic;}.testimonial-author{font-size:0.875rem;color:var(--color-text-light);}.testimonial-author strong{color:var(--color-text);font-size:0.9375rem;}.testimonial-date{color:var(--color-text-lighter);font-size:0.8125rem;}/* CTA Final Section */.cta-final-section{padding:5rem 2rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:white;text-align:center;}.cta-final-section h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem;}.cta-subtitle{font-size:1.25rem;margin-bottom:2.5rem;opacity:0.95;}.cta-buttons{display:flex;gap:1.5rem;justify-content:center;align-items:center;margin-bottom:3rem;flex-wrap:wrap;}.btn-primary-large{display:inline-block;background:var(--color-accent);color:var(--color-primary);padding:1.5rem 3.5rem;border-radius:0.75rem;text-decoration:none;font-weight:700;font-size:1.375rem;box-shadow:0 10px 25px rgba(251,191,36,0.4);transition:all 0.3s ease;}.btn-primary-large:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(251,191,36,0.5);}.btn-secondary-large{display:inline-block;background:rgba(255,255,255,0.15);color:white;padding:1.5rem 3.5rem;border-radius:0.75rem;text-decoration:none;font-weight:700;font-size:1.375rem;border:2px solid rgba(255,255,255,0.3);transition:all 0.3s ease;}.btn-secondary-large:hover{background:rgba(255,255,255,0.25);transform:translateY(-3px);}.cta-contact{padding-top:2rem;border-top:1px solid rgba(255,255,255,0.2);}.cta-contact p{font-size:1rem;margin-bottom:0.5rem;opacity:0.95;}.cta-phone{font-size:1.75rem;font-weight:700;margin:1rem 0;}.cta-phone a{color:white;text-decoration:none;border-bottom:2px solid rgba(255,255,255,0.5);transition:all 0.3s ease;}.cta-phone a:hover{border-bottom-color:var(--color-accent);}.cta-hours{font-size:0.875rem;opacity:0.85;margin:0;}/* ===== ARIA VALIDATION FORMULAIRES (WCAG 3.3.1) ===== *//* Input invalide */input[aria-invalid="true"],textarea[aria-invalid="true"],select[aria-invalid="true"]{border-color:var(--color-error) !important;border-width:2px;background:rgba(220,38,38,0.05);}/* Message erreur avec role="alert" */.error-message[role="alert"],.error-message.show{color:var(--color-error);font-size:0.875rem;margin-top:0.5rem;display:flex;align-items:center;gap:0.5rem;font-weight:500;}.error-message{display:none;}/* ===== RESPONSIVE ===== */@media (max-width:1920px){.container{max-width:1400px;}}@media (max-width:1440px){.container{max-width:1200px;}}@media (max-width:1200px){.services-grid{grid-template-columns:repeat(2,1fr);}}@media (max-width:1024px){.header-nav{gap:1rem;}.nav-link{font-size:0.875rem;}.footer-grid{grid-template-columns:repeat(2,1fr);gap:2rem;}.hero h1{font-size:2.5rem;}.hero-subtitle{font-size:1.25rem;}.why-grid{grid-template-columns:repeat(2,1fr);}.zones-grid{grid-template-columns:repeat(2,1fr);}.testimonials-grid{grid-template-columns:repeat(2,1fr);}}@media (max-width:768px){.header-nav,.header-cta{display:none;}.burger-menu{display:flex;}.header-container{padding:0.875rem 1rem;}.logo-image{height:32px;}.logo-text{font-size:1.125rem;}.site-footer{padding:2rem 0 0 0;}.footer-grid{grid-template-columns:1fr;gap:2rem;padding:0 1rem;}.footer-col{padding-bottom:1.5rem;border-bottom:1px solid var(--color-footer-medium);}.footer-col:last-child{border-bottom:none;}.footer-bottom{padding:1rem 0;}.footer-copyright,.footer-legal{font-size:0.8125rem;}.hero{padding:5rem 1.5rem 3rem;}.hero h1{font-size:2rem;}.hero-subtitle{font-size:1.125rem;}.hero-cta{flex-direction:column;}.btn-primary,.btn-secondary{width:100%;max-width:400px;}.hero-trust{flex-direction:column;gap:1rem;}.services-grid{grid-template-columns:1fr;}.why-grid{grid-template-columns:1fr;}.zones-grid{grid-template-columns:1fr;}.testimonials-grid{grid-template-columns:1fr;}.combo-banner{flex-direction:column;text-align:center;padding:1.5rem 1rem;}.combo-text{min-width:100%;}.combo-text p{font-size:0.9rem;line-height:1.5;}.cta-buttons{flex-direction:column;}.btn-primary-large,.btn-secondary-large{width:100%;max-width:400px;}}@media (max-width:480px){.footer-title{font-size:0.9375rem;}.footer-links a,.footer-contact a{font-size:0.875rem;}.footer-contact{gap:0.75rem;}.hero h1{font-size:1.75rem;}.hero-subtitle{font-size:1rem;}.btn-primary,.btn-secondary{font-size:1.125rem;padding:1rem 2rem;}.services-section h2,.why-section h2,.zones-section h2,.testimonials-section h2,.cta-final-section h2{font-size:2rem;}.btn-primary-large,.btn-secondary-large{font-size:1.125rem;padding:1rem 2rem;}}@media (max-width:320px){.hero h1{font-size:1.5rem;}.container{padding:0 1rem;}}/* ============================================ TESTIMONIALS SECTION ============================================ */.testimonials-section{padding:4rem 0;background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);}.testimonials-section h2{text-align:center;font-size:2.25rem;margin-bottom:0.5rem;color:var(--color-primary);}.section-subtitle{text-align:center;font-size:1.125rem;color:#64748b;margin-bottom:3rem;}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-bottom:3rem;}.testimonial-card{background:white;padding:2rem;border-radius:12px;box-shadow:0 4px 6px rgba(0,0,0,0.05);transition:transform 0.2s,box-shadow 0.2s;}.testimonial-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(0,0,0,0.1);}.stars{color:#fbbf24;font-size:1.25rem;margin-bottom:1rem;letter-spacing:2px;}.testimonial-text{font-size:1rem;line-height:1.6;color:#334155;margin-bottom:1.5rem;font-style:italic;}.testimonial-author{display:flex;align-items:center;gap:1rem;}.avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);color:white;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;flex-shrink:0;}.testimonial-author strong{display:block;font-size:1rem;color:var(--color-primary);}.testimonial-author span{font-size:0.875rem;color:#64748b;}.testimonials-cta{text-align:center;padding:2rem;background:white;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,0.08);}.testimonials-cta .btn-primary{display:inline-block;padding:1rem 2.5rem;background:var(--color-primary);color:white;font-size:1.125rem;font-weight:600;border-radius:8px;text-decoration:none;transition:transform 0.2s,box-shadow 0.2s;}.testimonials-cta .btn-primary:hover{transform:scale(1.05);box-shadow:0 8px 16px rgba(30,64,175,0.3);}.testimonials-cta .cta-subtitle{margin-top:1rem;font-size:0.9375rem;color:#64748b;}@media (max-width:768px){.testimonials-section{padding:3rem 0;}.testimonials-section h2{font-size:1.75rem;}.testimonials-grid{grid-template-columns:1fr;gap:1.5rem;}.testimonial-card{padding:1.5rem;}}/* ============================================ SOCIAL PROOF BAR ============================================ */.social-proof-bar{padding:3rem 0;background:linear-gradient(135deg,var(--color-primary) 0%,#1e3a8a 100%);color:white;}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;text-align:center;}.stat-item{padding:1rem;}.stat-number{font-size:3rem;font-weight:700;line-height:1;margin-bottom:0.5rem;color:var(--color-accent);text-shadow:0 2px 4px rgba(0,0,0,0.2);}.stat-small{font-size:2rem;opacity:0.9;}.stat-label{font-size:1rem;opacity:0.9;font-weight:500;}@media (max-width:768px){.social-proof-bar{padding:2rem 0;}.stat-number{font-size:2.5rem;}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;}}/* ============================================ TRUST BADGES ============================================ */.trust-badges{padding:2.5rem 0;background:#f8fafc;border-top:1px solid #e2e8f0;}.badges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:2rem;text-align:center;}.badge-item{display:flex;flex-direction:column;align-items:center;gap:0.5rem;}.badge-icon{font-size:2.5rem;margin-bottom:0.5rem;}.badge-item strong{font-size:1rem;color:var(--color-primary);font-weight:600;}.badge-item span{font-size:0.875rem;color:#64748b;}@media (max-width:768px){.trust-badges{padding:2rem 0;}.badges-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;}.badge-icon{font-size:2rem;}}/* ============================================ URGENCY BANNER ============================================ */.urgency-banner{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-left:4px solid #f59e0b;border-radius:8px;margin-bottom:2rem;animation:pulse 2s infinite;}@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.95;}}.urgency-icon{font-size:2.5rem;flex-shrink:0;}.urgency-content strong{display:block;font-size:1.125rem;color:#78350f;margin-bottom:0.25rem;}.urgency-content p{font-size:0.9375rem;color:#92400e;margin:0;}.urgency-content span{font-weight:700;color:#dc2626;}@media (max-width:768px){.urgency-banner{padding:1rem;}.urgency-icon{font-size:2rem;}.urgency-content strong{font-size:1rem;}.urgency-content p{font-size:0.875rem;}}/* ============================================ FAQ PAGE ============================================ */.faq-page .page-intro{font-size:1.125rem;color:var(--color-text-gray);max-width:800px;margin:0 auto 3rem;text-align:center;}/* Filtres catégories */.faq-filters{display:flex;flex-wrap:wrap;gap:0.75rem;justify-content:center;margin-bottom:3rem;padding:0 1rem;}.filter-btn{padding:0.625rem 1.25rem;font-size:0.9375rem;font-weight:600;border:2px solid var(--color-border);background:var(--color-white);color:var(--color-text-medium);border-radius:50px;cursor:pointer;transition:all 0.2s ease;}.filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#eff6ff;}.filter-btn.active{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary);}/* Liste FAQ */.faq-list{max-width:900px;margin:0 auto;}.faq-item{background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;margin-bottom:1rem;overflow:hidden;transition:all 0.3s ease;}.faq-item:hover{border-color:var(--color-primary);box-shadow:0 4px 12px rgba(30,64,175,0.08);}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;font-size:1.0625rem;font-weight:600;color:var(--color-text);background:transparent;border:none;cursor:pointer;text-align:left;transition:color 0.2s ease;}.faq-question:hover{color:var(--color-primary);}.faq-icon{font-size:1.5rem;color:var(--color-primary);font-weight:400;flex-shrink:0;transition:transform 0.3s ease;}.faq-item.open .faq-icon{transform:rotate(45deg);}.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.4s ease,padding 0.4s ease;padding:0 1.5rem;color:var(--color-text-gray);font-size:0.9375rem;line-height:1.7;}.faq-item.open .faq-answer{max-height:1000px;padding:0 1.5rem 1.5rem;}.faq-answer p{margin-bottom:1rem;}.faq-answer p:last-child{margin-bottom:0;}.faq-answer ul,.faq-answer ol{margin:1rem 0 1rem 1.5rem;}.faq-answer li{margin-bottom:0.5rem;}.faq-answer strong{color:var(--color-text);font-weight:600;}.faq-answer table{font-size:0.875rem;}/* CTA final FAQ */.faq-cta{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border-radius:12px;padding:3rem 2rem;text-align:center;margin-top:4rem;}.faq-cta h2{font-size:1.75rem;color:var(--color-text);margin-bottom:0.75rem;}.faq-cta p{font-size:1.125rem;color:var(--color-text-gray);margin-bottom:2rem;}.faq-cta .cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;}.faq-cta .btn-primary,.faq-cta .btn-secondary{padding:0.875rem 2rem;font-size:1.0625rem;font-weight:600;border-radius:8px;text-decoration:none;transition:all 0.2s ease;display:inline-block;}.faq-cta .btn-primary{background:var(--color-primary);color:var(--color-white);border:2px solid var(--color-primary);}.faq-cta .btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);}.faq-cta .btn-secondary{background:var(--color-white);color:var(--color-primary);border:2px solid var(--color-primary);}.faq-cta .btn-secondary:hover{background:var(--color-primary);color:var(--color-white);}/* Responsive FAQ */@media (max-width:768px){.faq-filters{gap:0.5rem;}.filter-btn{padding:0.5rem 1rem;font-size:0.875rem;}.faq-question{padding:1rem;font-size:0.9375rem;}.faq-icon{font-size:1.25rem;}.faq-answer{padding:0 1rem;font-size:0.875rem;}.faq-item.open .faq-answer{padding:0 1rem 1rem;}.faq-cta{padding:2rem 1.5rem;}.faq-cta h2{font-size:1.5rem;}.faq-cta p{font-size:1rem;}.faq-cta .cta-buttons{flex-direction:column;}.faq-cta .btn-primary,.faq-cta .btn-secondary{width:100%;}}/* ============================================ FORMULAIRE DEVIS ============================================ *//* Correction CRITIQUE:Textarea sans classe dans devis.html */textarea{width:100%;max-width:100%;padding:1rem 1.25rem;border:2px solid var(--color-border);border-radius:0.5rem;font-size:1.125rem;font-family:inherit;transition:all 0.3s ease;background:white;resize:vertical;min-height:100px;box-sizing:border-box;}textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(30,64,175,0.1);}/* Correction CRITIQUE:Inputs sans classe .form-group dans devis.html */input[type="text"],input[type="email"],input[type="tel"],select{width:100%;max-width:100%;padding:1rem 1.25rem;border:2px solid var(--color-border);border-radius:0.5rem;font-size:1.125rem;font-family:inherit;transition:all 0.3s ease;background:white;min-height:52px;box-sizing:border-box;}input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(30,64,175,0.1);}/* Checkboxes universelles plus grandes */input[type="checkbox"]{width:1.5rem;height:1.5rem;min-width:1.5rem;min-height:1.5rem;cursor:pointer;}.devis-page{padding:2rem 0 4rem;background:var(--color-bg);}.devis-container{max-width:800px;margin:0 auto;padding:0 1rem;}.devis-header{text-align:center;margin-bottom:2rem;padding:0 1rem;}.devis-header h1{font-size:2.5rem;font-weight:800;color:var(--color-primary);margin-bottom:1rem;line-height:1.2;}.devis-header p{font-size:1.125rem;color:var(--color-text-gray);line-height:1.6;}.devis-form{background:white;padding:2rem;border-radius:1rem;box-shadow:0 4px 20px rgba(0,0,0,0.1);margin:0 1rem;}.form-section{margin-bottom:2rem;}.form-section h2{font-size:1.5rem;font-weight:700;color:var(--color-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:0.5rem;}.form-group{margin-bottom:1.5rem;}.form-group label{display:block;font-weight:600;color:var(--color-text);margin-bottom:0.5rem;font-size:1rem;}.form-group input[type="text"],.form-group input[type="email"],.form-group input[type="tel"],.form-group textarea,.form-group select{width:100%;padding:1rem 1.25rem;border:2px solid var(--color-border);border-radius:0.5rem;font-size:1.125rem;font-family:inherit;transition:all 0.3s ease;background:white;min-height:48px;}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(30,64,175,0.1);}.form-group textarea{min-height:100px;resize:vertical;}.checkbox-group{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;}.checkbox-item{display:flex;align-items:center;gap:0.5rem;}.checkbox-item input[type="checkbox"]{width:1.5rem;height:1.5rem;cursor:pointer;flex-shrink:0;}.checkbox-item label{margin:0;font-weight:400;cursor:pointer;font-size:1rem;line-height:1.5;}.info-box{background:var(--color-yellow-bg);border-left:4px solid var(--color-accent);padding:1rem;border-radius:0.5rem;margin-top:1rem;font-size:0.9375rem;line-height:1.6;}.info-box strong{color:var(--color-brown);}.consent-group{margin:2rem 0;padding:1.5rem;background:var(--color-bg-light);border-radius:0.5rem;}.consent-item{display:flex;align-items:flex-start;gap:0.75rem;margin-bottom:1rem;}.consent-item:last-child{margin-bottom:0;}.consent-item input[type="checkbox"]{margin-top:0.25rem;width:1.25rem;height:1.25rem;flex-shrink:0;cursor:pointer;}.consent-item label{font-size:0.9375rem;line-height:1.6;cursor:pointer;}.consent-item a{color:var(--color-primary);text-decoration:underline;}.submit-btn,.btn-submit{width:100%;background:var(--color-success);color:white;padding:1.25rem 2rem;font-size:1.125rem;font-weight:700;border:none;border-radius:0.75rem;cursor:pointer;transition:all 0.3s ease;display:flex;align-items:center;justify-content:center;gap:0.5rem;}.submit-btn:hover,.btn-submit:hover{background:#059669;transform:translateY(-2px);box-shadow:0 6px 20px rgba(16,185,129,0.4);}.submit-btn:active,.btn-submit:active{transform:translateY(0);}.required{color:var(--color-error);font-weight:700;}/* Responsive Formulaire Devis */@media (max-width:768px){.devis-container{padding:0 1rem;}.devis-header h1{font-size:1.875rem;}.devis-header p{font-size:1rem;}.devis-form{padding:1.5rem;border-radius:0.75rem;}.form-section h2{font-size:1.25rem;}.form-group label{font-size:0.9375rem;}.form-group input[type="text"],.form-group input[type="email"],.form-group input[type="tel"],.form-group textarea,.form-group select{padding:0.75rem;font-size:1rem;}.checkbox-group{flex-direction:column;gap:0.75rem;}.submit-btn{padding:1rem 1.5rem;font-size:1rem;}.info-box{font-size:0.875rem;padding:0.875rem;}.consent-group{padding:1rem;}.consent-item label{font-size:0.875rem;}}@media (max-width:480px){.devis-header h1{font-size:1.5rem;}.devis-form{padding:1rem;}.form-section{margin-bottom:1.5rem;}.form-group{margin-bottom:1rem;}}/* ============================================ PHASE 1:CLASSES GLOBALES CRITIQUES Utilisées sur 4-7 pages (haute priorité) ============================================ *//* Trust Badges (6 pages) */.trust-badge{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:white;border-radius:0.75rem;box-shadow:0 2px 8px rgba(0,0,0,0.06);transition:all 0.3s ease;}.trust-badge:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.1);}.trust-badge-icon{font-size:2.5rem;flex-shrink:0;line-height:1;}.trust-badge strong{display:block;font-size:1.125rem;font-weight:700;color:var(--color-primary);margin-bottom:0.25rem;}.trust-badge div{line-height:1.4;color:var(--color-text-gray);font-size:0.9375rem;}/* CTA Final (7 pages) */.cta-final{padding:5rem 2rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:white;text-align:center;}.cta-final h2{font-size:2.5rem;font-weight:800;margin-bottom:1rem;color:white;}.cta-final p{font-size:1.25rem;margin-bottom:2rem;opacity:0.95;color:white;}.cta-final .btn-primary{background:var(--color-accent);color:var(--color-text);font-weight:700;font-size:1.25rem;padding:1.25rem 2.5rem;}.cta-final .btn-primary:hover{background:var(--color-accent-dark);transform:translateY(-3px);box-shadow:0 8px 25px rgba(251,191,36,0.4);}/* Badge Popular (5 pages) */.popular{position:relative;border:3px solid var(--color-accent);box-shadow:0 6px 20px rgba(251,191,36,0.3);}.popular::before{content:'⭐ POPULAIRE';position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--color-accent);color:var(--color-text);padding:0.375rem 1rem;border-radius:9999px;font-size:0.75rem;font-weight:700;text-transform:uppercase;white-space:nowrap;z-index:10;}/* Forfaits (4 pages services) */.forfaits{padding:4rem 2rem;background:var(--color-bg);}.forfaits h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;}.forfaits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:3rem 0;}.forfait-card{position:relative;background:white;padding:2rem;border-radius:1rem;box-shadow:0 4px 12px rgba(0,0,0,0.08);text-align:center;transition:all 0.3s ease;border:2px solid transparent;}.forfait-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,0.12);border-color:var(--color-primary);}.forfait-icon{font-size:3rem;margin-bottom:1rem;line-height:1;}.forfait-card h3{font-size:1.5rem;font-weight:600;color:var(--color-text);margin-bottom:0.75rem;}.forfait-card p{color:var(--color-text-gray);margin:1rem 0;font-size:0.9375rem;}.forfait-price{font-size:2.25rem;font-weight:800;color:var(--color-primary);margin:1rem 0;}/* FAQ Sections (4 pages services) */.faq{padding:4rem 2rem;background:white;}.faq h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:3rem;}.faq .faq-item{background:var(--color-bg-light);border-radius:0.75rem;margin-bottom:1rem;overflow:visible;border:1px solid var(--color-border);}.faq .faq-question{padding:1.25rem 1.5rem;font-weight:600;font-size:1.0625rem;color:var(--color-text);cursor:pointer;display:flex;align-items:center;gap:0.75rem;transition:background 0.2s ease;}.faq .faq-question:hover{background:var(--color-bg);}.faq .faq-answer{padding:0 1.5rem 1.25rem;color:var(--color-text-gray);line-height:1.7;font-size:0.9375rem;}/* Services (3 pages) */.services{padding:4rem 2rem;background:var(--color-bg);}.services h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:3rem;}/* Responsive Classes Globales */@media (max-width:768px){.trust-badge{flex-direction:column;text-align:center;padding:1.25rem;}.trust-badge-icon{font-size:2rem;}.cta-final{padding:3rem 1.5rem;}.cta-final h2{font-size:1.875rem;}.cta-final p{font-size:1rem;}.forfaits-grid{grid-template-columns:1fr;gap:1.5rem;}.forfait-card{padding:1.5rem;}.forfait-price{font-size:1.875rem;}.faq h2{font-size:1.875rem;}.faq .faq-question{padding:1rem;font-size:0.9375rem;}.faq .faq-answer{padding:0 1rem 1rem;font-size:0.875rem;}}@media (max-width:480px){.cta-final h2{font-size:1.5rem;}.forfait-icon{font-size:2.5rem;}.forfait-card h3{font-size:1.25rem;}}/* ============================================ PHASE 2:PAGES SERVICES SPÉCIFIQUES CSS pour montage-meubles,fixations,luminaires,manutention ============================================ *//* MONTAGE-MEUBLES:Enseignes */.enseignes{padding:4rem 2rem;background:white;}.enseignes h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;}.enseignes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin:2rem 0;}.enseigne-card{padding:1.5rem;background:var(--color-bg-light);border-radius:0.75rem;text-align:center;border:2px solid var(--color-border);transition:all 0.3s ease;}.enseigne-card:hover{border-color:var(--color-primary);background:white;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.08);}.enseigne-card h3{font-size:1.5rem;font-weight:600;color:var(--color-primary);margin-bottom:0.5rem;}.enseigne-card p{font-size:0.875rem;color:var(--color-text-gray);line-height:1.5;}/* FIXATIONS-MURALES:Types de murs */.types-murs{padding:4rem 2rem;background:white;}.types-murs h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;}.murs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:2rem 0;}.mur-card{padding:2rem;background:var(--color-bg-light);border-radius:0.75rem;border-left:4px solid var(--color-success);transition:all 0.3s ease;}.mur-card:hover{background:white;box-shadow:0 4px 12px rgba(0,0,0,0.08);transform:translateY(-2px);}.mur-card h3{font-size:1.5rem;font-weight:600;color:var(--color-success);margin-bottom:1rem;}.mur-card p{font-size:0.9375rem;color:var(--color-text-gray);line-height:1.7;}/* FIXATIONS-MURALES:Outils professionnels */.outils-pro{padding:4rem 2rem;background:var(--color-bg);}.outils-pro h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;}.outils-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin:2rem 0;}.outil-item{padding:1.5rem;background:white;border-radius:0.75rem;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,0.06);transition:all 0.3s ease;}.outil-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.1);}.outil-icon{font-size:2.5rem;margin-bottom:0.75rem;line-height:1;}.outil-item div:nth-child(2){font-weight:600;margin-bottom:0.5rem;color:var(--color-text);}.outil-item div:nth-child(3){font-size:0.875rem;color:var(--color-text-gray);line-height:1.5;}/* INSTALLATION-LUMINAIRES:Modèle service */.service-model{padding:4rem 2rem;background:var(--color-bg);}.service-model h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:2rem 0;}.model-card{padding:2rem;background:white;border-radius:0.75rem;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,0.08);transition:all 0.3s ease;}.model-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.12);}.model-card h3{font-size:1.5rem;font-weight:600;color:var(--color-error);margin-bottom:1rem;}.model-card p{color:var(--color-text-gray);line-height:1.7;font-size:0.9375rem;}/* Warning Box (luminaires) */.warning-box{background:var(--color-yellow-bg);border-left:4px solid var(--color-accent);padding:1.5rem;border-radius:0.75rem;margin-top:2rem;}.warning-box p{margin:0;line-height:1.7;color:var(--color-text);}.warning-box strong{color:var(--color-brown);font-weight:700;}/* MANUTENTION:Équipement */.equipement{padding:4rem 2rem;background:var(--color-bg);}.equipement h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;}.equipement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin:2rem 0;}.equipement-item{padding:1.5rem;background:white;border-radius:0.75rem;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,0.06);transition:all 0.3s ease;}.equipement-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.1);}.equipement-icon{font-size:2.5rem;margin-bottom:0.75rem;line-height:1;}.equipement-item div:nth-child(2){font-weight:600;margin-bottom:0.5rem;color:var(--color-text);}.equipement-item div:nth-child(3){font-size:0.875rem;color:var(--color-text-gray);line-height:1.5;}/* Responsive Pages Services */@media (max-width:768px){.enseignes h2,.types-murs h2,.outils-pro h2,.service-model h2,.equipement h2{font-size:1.875rem;}.enseignes-grid{grid-template-columns:1fr;gap:1rem;}.enseigne-card{padding:1.25rem;}.murs-grid{grid-template-columns:1fr;gap:1.5rem;}.mur-card{padding:1.5rem;}.outils-grid,.equipement-grid{grid-template-columns:repeat(2,1fr);gap:1rem;}.outil-item,.equipement-item{padding:1rem;}.outil-icon,.equipement-icon{font-size:2rem;}.model-grid{grid-template-columns:1fr;gap:1.5rem;}.model-card{padding:1.5rem;}.warning-box{padding:1rem;font-size:0.875rem;}}@media (max-width:480px){.enseignes h2,.types-murs h2,.outils-pro h2,.service-model h2,.equipement h2{font-size:1.5rem;}.outils-grid,.equipement-grid{grid-template-columns:1fr;}}/* ============================================ PHASE 3:COMBO-MONTAGE-FIXATION.HTML 20 classes pour page combos ============================================ *//* Hero Combo avec discount badge */.discount{display:inline-block;background:var(--color-accent);color:var(--color-text);padding:0.5rem 1.5rem;border-radius:9999px;font-weight:700;font-size:1rem;text-transform:uppercase;margin-bottom:1rem;box-shadow:0 4px 12px rgba(251,191,36,0.3);}/* Economy Banner */.economy-banner{padding:2rem;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);text-align:center;color:var(--color-brown);}.economy-banner h2{font-size:2rem;font-weight:800;margin-bottom:0.5rem;color:var(--color-text);}.economy-banner p{font-size:1.125rem;margin:0;color:var(--color-brown);}/* Combos Section */.combos{padding:4rem 2rem;background:var(--color-bg);}.combos h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:3rem;}.combos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem;margin:3rem 0;}.combo-card{position:relative;background:white;padding:2.5rem;border-radius:1rem;box-shadow:0 4px 16px rgba(0,0,0,0.1);transition:all 0.3s ease;border:2px solid transparent;}.combo-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px rgba(0,0,0,0.15);border-color:var(--color-primary);}.badge-popular{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--color-error);color:white;padding:0.5rem 1.25rem;border-radius:9999px;font-size:0.75rem;font-weight:700;text-transform:uppercase;white-space:nowrap;z-index:10;box-shadow:0 4px 12px rgba(220,38,38,0.3);}.combo-title{font-size:1.75rem;font-weight:700;color:var(--color-primary);text-align:center;margin-bottom:0.75rem;}.combo-items{margin:2rem 0;display:flex;flex-direction:column;gap:1rem;}.combo-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:var(--color-bg-light);border-radius:0.5rem;transition:background 0.2s ease;}.combo-item:hover{background:var(--color-bg);}.combo-item-icon{font-size:2rem;flex-shrink:0;line-height:1;}.combo-pricing{margin:2rem 0;padding:1.5rem;background:var(--color-bg-light);border-radius:0.75rem;text-align:center;}.price-before{font-size:1rem;color:var(--color-text-gray);text-decoration:line-through;margin-bottom:0.5rem;}.price-after{font-size:2.5rem;font-weight:800;color:var(--color-primary);margin-bottom:0.5rem;}.price-economy{display:inline-block;background:var(--color-success);color:white;padding:0.5rem 1.25rem;border-radius:9999px;font-weight:700;font-size:0.9375rem;}/* Advantages Section */.advantages{padding:4rem 2rem;background:white;}.advantages h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:3rem;}.advantages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;margin:2rem 0;}.advantage-card{padding:2rem;background:var(--color-bg-light);border-radius:0.75rem;text-align:center;transition:all 0.3s ease;}.advantage-card:hover{background:white;box-shadow:0 4px 12px rgba(0,0,0,0.08);transform:translateY(-2px);}.advantage-icon{font-size:3rem;margin-bottom:1rem;line-height:1;}/* Responsive Combos */@media (max-width:768px){.economy-banner h2{font-size:1.5rem;}.economy-banner p{font-size:0.9375rem;}.combos-grid{grid-template-columns:1fr;gap:2rem;}.combo-card{padding:2rem 1.5rem;}.combo-title{font-size:1.5rem;}.price-after{font-size:2rem;}.advantages-grid{grid-template-columns:1fr;gap:1.5rem;}.advantage-card{padding:1.5rem;}.advantage-icon{font-size:2.5rem;}}@media (max-width:480px){.discount{font-size:0.875rem;padding:0.375rem 1rem;}.economy-banner h2{font-size:1.25rem;}.combo-title{font-size:1.25rem;}.combo-item-icon{font-size:1.5rem;}.badge-popular{font-size:0.625rem;padding:0.375rem 0.875rem;}}/* ============================================ PHASE 3:BLOG.HTML 10 classes pour page blog ============================================ *//* Blog Hero */.blog-hero{padding:4rem 2rem 3rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:white;text-align:center;}.blog-hero h1{font-size:3rem;font-weight:800;margin-bottom:1rem;color:white;}.blog-hero p{font-size:1.25rem;opacity:0.95;max-width:800px;margin:0 auto;color:white;}/* Blog Filters */.blog-filters{display:flex;justify-content:center;gap:1rem;padding:2rem;background:var(--color-bg);flex-wrap:wrap;}.blog-filters .filter-btn{padding:0.75rem 1.5rem;background:white;border:2px solid var(--color-border);border-radius:9999px;font-weight:600;color:var(--color-text-gray);cursor:pointer;transition:all 0.3s ease;font-size:0.9375rem;}.blog-filters .filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-bg-light);}.blog-filters .filter-btn.active{background:var(--color-primary);color:white;border-color:var(--color-primary);}/* Blog Grid */.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2.5rem;padding:3rem 2rem;max-width:1280px;margin:0 auto;}/* Blog Card */.blog-card{background:white;border-radius:1rem;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,0.08);transition:all 0.3s ease;display:flex;flex-direction:column;}.blog-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,0.12);}.blog-card-image{width:100%;height:220px;object-fit:cover;display:block;}.blog-card-content{padding:1.5rem;flex:1;display:flex;flex-direction:column;}.blog-card-category{display:inline-block;background:var(--color-accent);color:var(--color-brown);padding:0.375rem 0.875rem;border-radius:0.375rem;font-size:0.8125rem;font-weight:700;margin-bottom:1rem;width:fit-content;}.blog-card h2{font-size:1.375rem;font-weight:700;color:var(--color-text);margin-bottom:0.75rem;line-height:1.3;}.blog-card-excerpt{font-size:0.9375rem;color:var(--color-text-gray);line-height:1.6;margin-bottom:1rem;flex:1;}.blog-card-meta{display:flex;gap:1rem;font-size:0.875rem;color:var(--color-text-light);margin-bottom:1rem;padding-top:1rem;border-top:1px solid var(--color-border);}.blog-card-link{color:var(--color-primary);font-weight:600;text-decoration:none;font-size:0.9375rem;display:inline-flex;align-items:center;gap:0.375rem;transition:all 0.2s ease;}.blog-card-link:hover{color:var(--color-primary-dark);gap:0.625rem;}/* Responsive Blog */@media (max-width:768px){.blog-hero h1{font-size:2rem;}.blog-hero p{font-size:1rem;}.blog-filters{padding:1.5rem 1rem;}.blog-filters .filter-btn{padding:0.625rem 1.125rem;font-size:0.875rem;}.blog-grid{grid-template-columns:1fr;gap:2rem;padding:2rem 1rem;}.blog-card-image{height:200px;}.blog-card-content{padding:1.25rem;}.blog-card h2{font-size:1.25rem;}}@media (max-width:480px){.blog-hero{padding:3rem 1.5rem 2rem;}.blog-hero h1{font-size:1.5rem;}.blog-filters{gap:0.5rem;}.blog-filters .filter-btn{padding:0.5rem 0.875rem;font-size:0.8125rem;}.blog-card h2{font-size:1.125rem;}.blog-card-meta{flex-direction:column;gap:0.5rem;}}/* ============================================ PHASE 4:CONTACT.HTML + DEVIS.HTML COMPLÉMENTS 25 classes formulaires et pages contact ============================================ *//* Contact Hero */.contact-hero{padding:4rem 2rem 3rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:white;text-align:center;}.contact-hero h1{font-size:3rem;font-weight:800;margin-bottom:1rem;color:white;}.contact-hero p{font-size:1.25rem;opacity:0.95;color:white;}/* Contact Main */.contact-main{padding:4rem 2rem;background:var(--color-bg);}/* Contact Grid */.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;max-width:1200px;margin:0 auto;}/* Contact Info */.contact-info{background:white;padding:2.5rem;border-radius:1rem;box-shadow:0 4px 16px rgba(0,0,0,0.08);}.contact-info h2{font-size:2rem;font-weight:700;color:var(--color-primary);margin-bottom:2rem;}.contact-item{display:flex;align-items:flex-start;gap:1.25rem;padding:1.5rem;background:var(--color-bg-light);border-radius:0.75rem;margin-bottom:1.5rem;transition:all 0.3s ease;}.contact-item:hover{background:var(--color-bg);transform:translateX(4px);}.contact-item:last-child{margin-bottom:0;}.contact-icon{font-size:2rem;flex-shrink:0;line-height:1;}.contact-details h3{font-size:1.125rem;font-weight:600;color:var(--color-text);margin-bottom:0.5rem;}.contact-details p{margin:0;color:var(--color-text-gray);line-height:1.6;}.contact-details a{color:var(--color-primary);text-decoration:none;font-weight:600;transition:color 0.2s ease;}.contact-details a:hover{color:var(--color-primary-dark);text-decoration:underline;}/* Contact Form */.contact-form{background:white;padding:2.5rem;border-radius:1rem;box-shadow:0 4px 16px rgba(0,0,0,0.08);}.contact-form h2{font-size:2rem;font-weight:700;color:var(--color-primary);margin-bottom:2rem;}.form-note{background:var(--color-bg-light);padding:1rem;border-radius:0.5rem;margin-top:1rem;font-size:0.875rem;color:var(--color-text-gray);line-height:1.6;}/* Map Section */.map-section{max-width:1200px;margin:3rem auto 0;padding:2.5rem;background:white;border-radius:1rem;box-shadow:0 4px 16px rgba(0,0,0,0.08);}.map-section h2{font-size:2rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;text-align:center;}.map-description{text-align:center;font-size:1.125rem;color:var(--color-text-gray);margin-bottom:2rem;}.map-container{width:100%;height:450px;border-radius:0.75rem;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,0.1);}.map-container iframe{width:100%;height:100%;border:none;}/* DEVIS.HTML Compléments *//* Header déjà créé en Phase 1,ajout classes manquantes */.header{padding:3rem 2rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:white;text-align:center;}.form-container{max-width:900px;margin:0 auto;padding:2rem;}.form-label{display:block;font-weight:600;color:var(--color-text);margin-bottom:0.5rem;font-size:1rem;}.service-checkbox{display:flex;align-items:center;gap:0.75rem;padding:1rem;background:var(--color-bg-light);border-radius:0.5rem;cursor:pointer;transition:all 0.2s ease;margin-bottom:0.75rem;}.service-checkbox:hover{background:var(--color-bg);}.service-checkbox input[type="checkbox"]{width:1.25rem;height:1.25rem;cursor:pointer;flex-shrink:0;}.service-content{flex:1;}.service-details{font-size:0.875rem;color:var(--color-text-gray);margin-top:0.25rem;line-height:1.5;}.combo-badge{display:inline-block;background:var(--color-accent);color:var(--color-brown);padding:0.25rem 0.625rem;border-radius:0.375rem;font-size:0.75rem;font-weight:700;text-transform:uppercase;margin-left:0.5rem;}.estimation-box{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:white;padding:2rem;border-radius:0.75rem;margin:2rem 0;text-align:center;}.estimation-box h3{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:white;}.price-display{font-size:2.5rem;font-weight:800;margin:1rem 0;color:white;}.duration{font-size:1.125rem;opacity:0.9;color:white;}.economy{display:inline-block;background:var(--color-accent);color:var(--color-brown);padding:0.5rem 1.25rem;border-radius:9999px;font-weight:700;margin-top:1rem;}.success-message{background:var(--color-success);color:white;padding:1.5rem;border-radius:0.75rem;text-align:center;font-weight:600;margin-top:1.5rem;animation:slideIn 0.3s ease;display:none;}.success-message.show{display:block !important;}@keyframes slideIn{from{opacity:0;transform:translateY(-20px);}to{opacity:1;transform:translateY(0);}}/* Responsive Contact + Devis */@media (max-width:768px){.contact-hero h1{font-size:2rem;}.contact-hero p{font-size:1rem;}.contact-main{padding:2rem 1rem;}.contact-grid{grid-template-columns:1fr;gap:2rem;}.contact-info,.contact-form{padding:1.5rem;}.contact-info h2,.contact-form h2{font-size:1.5rem;}.contact-item{padding:1.25rem;}.contact-icon{font-size:1.75rem;}.map-section{padding:1.5rem;margin:2rem 1rem 0;}.map-section h2{font-size:1.5rem;}.map-container{height:350px;}.form-container{padding:1rem;}.estimation-box{padding:1.5rem;}.price-display{font-size:2rem;}}@media (max-width:480px){.contact-hero h1{font-size:1.5rem;}.contact-item{flex-direction:column;text-align:center;}.map-container{height:300px;}.service-checkbox{flex-direction:column;text-align:center;}}/* ============================================ PHASE 5 FINALE:ZONES + PAGES LÉGALES 10 dernières classes pour finalisation 100% ============================================ *//* GENEVE.HTML + LAUSANNE.HTML:Communes */.communes{padding:4rem 2rem;background:var(--color-bg);}.communes h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;}.communes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:2rem 0;}.commune-item{padding:1rem 1.5rem;background:white;border-radius:0.5rem;text-align:center;font-weight:600;color:var(--color-text);box-shadow:0 2px 6px rgba(0,0,0,0.06);transition:all 0.3s ease;border:2px solid transparent;}.commune-item:hover{border-color:var(--color-primary);background:var(--color-bg-light);transform:translateY(-2px);box-shadow:0 4px 10px rgba(0,0,0,0.1);}/* GENEVE.HTML + LAUSANNE.HTML:Testimonials */.testimonials{padding:4rem 2rem;background:white;}.testimonials h2{text-align:center;font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:3rem;}.testimonial-card{max-width:800px;margin:0 auto 2rem;padding:2rem;background:var(--color-bg-light);border-radius:0.75rem;border-left:4px solid var(--color-primary);box-shadow:0 2px 8px rgba(0,0,0,0.06);transition:all 0.3s ease;}.testimonial-card:hover{transform:translateX(4px);box-shadow:0 4px 12px rgba(0,0,0,0.1);}.testimonial-card:last-child{margin-bottom:0;}/* PAGES LÉGALES:mentions-legales,politique-confidentialite,cgv */.legal-page{max-width:900px;margin:0 auto;padding:4rem 2rem;background:white;line-height:1.8;}.legal-page h1{font-size:2.5rem;font-weight:800;color:var(--color-primary);margin-bottom:1.5rem;text-align:center;}.legal-page h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin-top:3rem;margin-bottom:1rem;padding-bottom:0.5rem;border-bottom:2px solid var(--color-border);}.legal-page h3{font-size:1.375rem;font-weight:600;color:var(--color-text);margin-top:2rem;margin-bottom:1rem;}.legal-page p{margin-bottom:1rem;color:var(--color-text-gray);}.legal-page ul{margin:1rem 0;padding-left:2rem;}.legal-page ul li{margin-bottom:0.5rem;color:var(--color-text-gray);}.legal-page a{color:var(--color-primary);text-decoration:underline;font-weight:600;}.legal-page a:hover{color:var(--color-primary-dark);}.legal-page strong{color:var(--color-text);font-weight:700;}.last-updated{text-align:center;font-size:0.9375rem;color:var(--color-text-light);font-style:italic;padding:1rem;background:var(--color-bg-light);border-radius:0.5rem;margin-bottom:2rem;}/* Responsive Zones + Légales */@media (max-width:768px){.communes h2,.testimonials h2{font-size:1.875rem;}.communes-grid{grid-template-columns:repeat(2,1fr);}.commune-item{padding:0.875rem 1rem;font-size:0.9375rem;}.testimonial-card{padding:1.5rem;}.legal-page{padding:2rem 1.5rem;}.legal-page h1{font-size:1.875rem;}.legal-page h2{font-size:1.5rem;margin-top:2rem;}.legal-page h3{font-size:1.25rem;}}@media (max-width:480px){.communes h2,.testimonials h2{font-size:1.5rem;}.communes-grid{grid-template-columns:1fr;}.commune-item{padding:0.75rem;}.testimonial-card{padding:1.25rem;}.legal-page{padding:2rem 1rem;}.legal-page h1{font-size:1.5rem;}.last-updated{font-size:0.875rem;padding:0.875rem;}}/* ============================================ FIN CSS COMPLET VOS-MONTAGES V3.0 Total:~3800 lignes CSS | 16 pages 100% complètes ============================================ */