.header{position:sticky;top:0;background:var(--color-white);border-bottom:1px solid var(--color-border);z-index:1000}.header .container{display:flex;align-items:center;justify-content:space-between;height:var(--header-height)}.header-logo{font-size:1.25rem;font-weight:700;color:var(--color-primary-dark);display:flex;align-items:center;gap:.5rem;white-space:nowrap}.header-logo svg{width:32px;height:32px;flex-shrink:0}.header-nav{display:flex;align-items:center;gap:.25rem}.header-nav a{padding:.5rem .75rem;font-size:.9rem;font-weight:500;color:var(--color-text);border-radius:var(--radius-md);transition:.2s;white-space:nowrap}.header-nav a:hover{color:var(--color-primary);background:var(--color-primary-light)}.header-nav .nav-cta{background:var(--color-cta);color:#fff;padding:.5rem 1.25rem}.header-nav .nav-cta:hover{background:var(--color-cta-hover);color:#fff}.header-phone{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#fff;font-size:1rem;white-space:nowrap;background:var(--color-primary);padding:.5rem 1.25rem;border-radius:var(--radius-lg);transition:background .2s}.header-phone:hover{background:var(--color-primary-dark);color:#fff}.header-phone svg{width:20px;height:20px}.burger{display:none;background:0 0;border:none;cursor:pointer;padding:.5rem;flex-direction:column;gap:5px}.burger span{display:block;width:24px;height:2px;background:var(--color-text);border-radius:2px;transition:.3s}.mobile-menu{display:none;position:fixed;top:var(--header-height);left:0;right:0;bottom:0;background:var(--color-white);z-index:999;padding:2rem var(--section-px);flex-direction:column;gap:.5rem;overflow-y:auto}.mobile-menu.is-open{display:flex}.mobile-menu a{display:block;padding:1rem;font-size:1.125rem;font-weight:500;border-radius:var(--radius-lg);transition:background .2s}.mobile-menu a:hover{background:var(--color-primary-light);color:var(--color-primary)}.mobile-menu .nav-cta{background:var(--color-primary);color:#fff;text-align:center;margin-top:.5rem}.mobile-menu .mobile-social{display:flex;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.mobile-menu .mobile-social a{padding:.75rem;background:var(--color-light);border-radius:50%;display:flex;align-items:center;justify-content:center}.mobile-menu .mobile-social svg{width:24px;height:24px;fill:var(--color-primary)}.hero{background:var(--color-white);color:var(--color-text);min-height:calc(100dvh - var(--header-height));display:flex;align-items:center;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;top:-30%;right:-15%;width:60%;height:120%;background:radial-gradient(ellipse,rgba(var(--color-primary-rgb),.06) 0,transparent 70%);pointer-events:none}.hero::after{content:'';position:absolute;bottom:-20%;left:-10%;width:50%;height:80%;background:radial-gradient(ellipse,rgba(var(--color-primary-rgb),.04) 0,transparent 70%);pointer-events:none}.hero .container{position:relative;z-index:1}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;padding:4rem 0}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--color-primary-light);border:1px solid rgba(var(--color-primary-rgb),.2);color:var(--color-primary-dark);padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:500;margin-bottom:1.5rem}.hero-badge .dot{width:8px;height:8px;background:#22c55e;border-radius:50%;animation:2s infinite pulse}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}.hero h1{margin-bottom:1.5rem;color:var(--color-text)}.hero h1 span{color:var(--color-cta)}.hero-subtitle{font-size:1.25rem;color:var(--color-text-secondary);margin-bottom:2.5rem;line-height:1.7}.hero .btn-group .micro-copy{color:var(--color-text-secondary)}.hero-image{border-radius:var(--radius-xl);overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-image img{width:100%;max-height:480px;object-fit:cover;border-radius:var(--radius-xl)}.rappel{background:linear-gradient(135deg,#0f1c24,var(--color-dark) 50%,#0f1c24);color:#fff;padding:5rem 0;position:relative;overflow:hidden}.rappel::before{content:'';position:absolute;top:-40%;left:-10%;width:50%;height:140%;background:radial-gradient(ellipse,rgba(var(--color-primary-rgb),.08) 0,transparent 70%);pointer-events:none}.rappel .container{position:relative;z-index:1}.rappel-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.rappel-left h2{margin-bottom:1rem;font-size:2.25rem}.rappel-left .subtitle{color:rgba(255,255,255,.7);margin-bottom:2rem;font-size:1.0625rem;line-height:1.7}.rappel-features{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.rappel-feature{display:flex;align-items:center;gap:1rem;background:rgba(255,255,255,.06);border:1px solid rgba(var(--color-primary-rgb),.15);border-radius:var(--radius-lg);padding:1rem 1.25rem}.rappel-feature-icon{width:40px;height:40px;min-width:40px;background:rgba(var(--color-primary-rgb),.15);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.rappel-feature-icon svg{width:20px;height:20px;stroke:var(--color-primary);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.rappel-feature span{font-size:.9375rem;color:rgba(255,255,255,.85);font-weight:500}.rappel-urgency{background:rgba(var(--color-primary-rgb),.1);border:1px solid rgba(var(--color-primary-rgb),.25);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem}.rappel-urgency-dot{width:10px;height:10px;min-width:10px;background:#22c55e;border-radius:50%;animation:2s infinite pulse;box-shadow:0 0 8px rgba(34,197,94,.5)}.rappel-urgency-text{font-size:.9375rem;font-weight:600;color:var(--color-primary-light)}.rappel-urgency-text small{display:block;font-weight:400;color:rgba(255,255,255,.6);font-size:.8125rem;margin-top:.25rem}.rappel-card{background:var(--color-white);border:2px solid var(--color-border);border-radius:var(--radius-xl);padding:2.5rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.4)}.rappel-card-title{font-size:1.375rem;font-weight:700;color:var(--color-text);margin-bottom:.5rem}.rappel-card-sub{font-size:.9375rem;color:var(--color-text-secondary);margin-bottom:2rem;line-height:1.6}.rappel-form .form-group{margin-bottom:1.25rem}.rappel-form label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem;color:var(--color-text)}.rappel-form input{width:100%;min-height:48px;padding:.75rem 1rem;border:2px solid var(--color-border);border-radius:var(--radius-lg);background:0 0;color:var(--color-text);font-size:1rem;font-family:var(--font-family);transition:border-color .2s,box-shadow .2s}.rappel-form input::placeholder{color:#9ca3af}.rappel-form input:focus{outline:0;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.15)}.rappel-form .btn{width:100%;min-height:52px;font-size:1.0625rem;margin-top:.5rem}.rappel-card .micro-copy{color:var(--color-text-secondary);text-align:center;margin-top:1rem;font-size:.8125rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem}.gallery-item{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card)}.gallery-item .placeholder-img{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;padding:1.5rem;text-align:center;font-weight:500;font-size:.875rem;color:var(--color-primary-dark)}.gallery-item figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;padding:2rem 1rem 1rem;font-size:.875rem;font-weight:500}.reviews-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2.5rem}.zone-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.zone-badge{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem;text-align:center;transition:.2s}.zone-badge:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.zone-badge .arr-num{font-size:1.25rem;font-weight:700;color:var(--color-primary);display:block;margin-bottom:.25rem}.zone-badge .arr-name{font-size:.75rem;color:var(--color-text-secondary);line-height:1.4}.tarif-table-wrap{overflow-x:auto;margin-bottom:1.5rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.tarif-table{min-width:600px}.tarif-table thead{background:var(--color-primary-dark);color:#fff}.tarif-table th{padding:1rem 1.5rem;text-align:left;font-weight:600;font-size:.9375rem}.tarif-table td{padding:1rem 1.5rem;font-size:.9375rem;border-bottom:1px solid var(--color-border)}.tarif-table tbody tr:nth-child(2n){background:var(--color-light)}.tarif-table tbody tr:hover{background:var(--color-primary-light)}.tarif-table td:last-child{font-weight:600;color:var(--color-primary-dark);white-space:nowrap}.tarif-mention{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:2rem;padding:1rem;background:var(--color-primary-light);border-radius:var(--radius-lg);border-left:4px solid var(--color-primary)}.faq-list{max-width:800px;margin:0 auto}.faq-item{border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:.75rem;overflow:hidden;transition:border-color .2s}.faq-item:hover,.faq-item[open]{border-color:var(--color-primary)}.faq-item summary{cursor:pointer;padding:1.25rem 1.5rem;font-weight:600;font-size:1rem;display:flex;align-items:center;justify-content:space-between;list-style:none;gap:1rem}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'+';font-size:1.5rem;font-weight:700;color:var(--color-primary);flex-shrink:0;transition:transform .2s}.faq-item[open] summary::after{content:'-'}.faq-item .faq-answer{padding:0 1.5rem 1.25rem;color:var(--color-text-secondary);line-height:1.7}.faq-answer a{color:var(--color-primary);text-decoration:underline}.devis-form-card{background:rgba(255,255,255,.05);padding:2rem;border-radius:var(--radius-xl);border:1px solid rgba(255,255,255,.1)}.devis-form-card label{color:rgba(255,255,255,.9)}.devis-form-card .form-input{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff}.devis-form-card .form-input::placeholder{color:rgba(255,255,255,.4)}.devis-form-card .form-input:focus{border-color:var(--color-primary)}.devis-text{color:rgba(255,255,255,.8);margin-bottom:1rem}.devis-image{aspect-ratio:16/10;max-width:400px;border-radius:var(--radius-xl);overflow:hidden}.footer{background:var(--color-dark);color:var(--color-text-alt);padding:4rem 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.1)}.footer-logo{font-size:1.25rem;font-weight:700;color:var(--color-accent);display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.footer-logo svg{width:28px;height:28px}.footer-text{color:rgba(255,255,255,.6);font-size:.9375rem;line-height:1.6}.footer h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:#fff}.footer-links{display:flex;flex-direction:column;gap:.5rem}.footer-links a{color:rgba(255,255,255,.6);font-size:.9375rem;transition:color .2s}.footer-links a:hover{color:var(--color-accent)}.footer-contact-link{display:flex;align-items:center;gap:.75rem;color:rgba(255,255,255,.6);font-size:.9375rem;margin-bottom:.75rem}.footer-contact-link svg{width:18px;height:18px;fill:var(--color-accent);flex-shrink:0}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0;font-size:.8125rem;color:rgba(255,255,255,.4)}.footer-social{display:flex;gap:.75rem}.footer-social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);transition:background .2s}.footer-social a:hover{background:var(--color-primary)}.footer-social svg{width:18px;height:18px;fill:#fff}.floating-buttons{position:fixed;bottom:1.5rem;right:1.5rem;z-index:998;display:none;flex-direction:column;gap:.75rem}.floating-btn{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.25);transition:transform .2s}.floating-btn:hover{transform:scale(1.1)}.floating-btn svg{width:24px;height:24px;fill:#fff}.floating-btn-phone{background:var(--color-primary)}.floating-btn-whatsapp{background:#25d366}