*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #1a3a5c;--primary-light: #2a5a8c;--secondary: #e67e22;--secondary-light: #f39c12;--accent: #27ae60;--bg-color: #ffffff;--bg-alt: #f8fafc;--text-main: #0f172a;--text-muted: #475569;--border-color: #e2e8f0;--card-bg: #ffffff;--tag-bg: #f1f5f9;--radius: 12px;--shadow: 0 4px 24px rgba(0, 0, 0, .08);--shadow-hover: 0 8px 40px rgba(0, 0, 0, .14);--transition: .3s ease;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--surface: var(--card-bg);--border: var(--border-color);--gray-900: #0f172a;--gray-800: #1e293b;--gray-700: #334155;--gray-600: #475569;--gray-200: #e2e8f0;--gray-100: #f1f5f9;--gray-50: #f8fafc}[data-theme=dark]{--primary: #4a90e2;--primary-light: #6aa8eb;--secondary: #e67e22;--secondary-light: #f39c12;--bg-color: #0f172a;--bg-alt: #1e293b;--text-main: #f8fafc;--text-muted: #cbd5e1;--border-color: #334155;--card-bg: #1e293b;--tag-bg: #334155;--shadow: 0 4px 24px rgba(0, 0, 0, .4);--shadow-hover: 0 8px 40px rgba(0, 0, 0, .6);--surface: var(--card-bg);--border: var(--border-color);--gray-900: #f8fafc;--gray-800: #e2e8f0;--gray-700: #cbd5e1;--gray-600: #94a3b8;--gray-200: #334155;--gray-100: #0f172a;--gray-50: #0f172a}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg-color);color:var(--text-main);line-height:1.6;-webkit-font-smoothing:antialiased;transition:background-color var(--transition),color var(--transition)}a{text-decoration:none;color:inherit}button{cursor:pointer;font-family:inherit;border:none}img{max-width:100%;display:block}.container{max-width:1200px;margin:0 auto;padding:0 24px}.reveal{opacity:0;transform:translateY(30px);transition:all .8s ease-out}.reveal.active{opacity:1;transform:translateY(0)}.header{border-bottom:1px solid var(--border-color);padding:12px 0;position:sticky;top:0;z-index:100;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:color-mix(in srgb,var(--bg-color) 85%,transparent);transition:background-color var(--transition),border-color var(--transition)}.header-inner{display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:10px;font-size:1.5rem;font-weight:700;color:var(--primary)}.logo-icon{font-size:1.8rem}.nav{display:flex;align-items:center;gap:24px;font-size:.95rem;font-weight:500}.nav a{color:var(--text-muted);transition:color var(--transition)}.nav a:hover{color:var(--primary)}.nav .btn-outline{padding:8px 20px;border:2px solid var(--primary);border-radius:50px;color:var(--primary);font-weight:600;transition:all var(--transition)}.nav .btn-outline:hover{background:var(--primary);color:#fff}.btn-logout{background:#fff!important;color:#0f172a!important;border:none!important;padding:6px 16px!important;border-radius:50px!important;font-weight:700!important;font-size:.85rem!important;cursor:pointer;box-shadow:0 2px 8px #00000026;transition:all .2s ease}.btn-logout:hover{background:#fee2e2!important;color:#991b1b!important;transform:translateY(-1px)}.nav .btn-primary{padding:8px 24px;background:var(--primary);color:#fff;border-radius:50px;font-weight:600;transition:background var(--transition)}.nav .btn-primary:hover{background:var(--primary-light)}.theme-toggle{background:var(--tag-bg);border-radius:50px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--text-main);transition:all var(--transition)}.theme-toggle:hover{transform:scale(1.1)}.mobile-toggle{display:none;background:none;font-size:1.8rem;color:var(--text-main)}.hero{padding:72px 0 64px;text-align:center;background:linear-gradient(180deg,var(--bg-alt) 0%,var(--bg-color) 100%)}.hero h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800;line-height:1.15;color:var(--text-main);max-width:800px;margin:0 auto 16px}.hero h1 span{color:var(--secondary)}.hero p{font-size:1.2rem;color:var(--text-muted);max-width:600px;margin:0 auto 40px}.search-bar{max-width:700px;margin:0 auto 48px;display:flex;background:var(--card-bg);border-radius:50px;padding:8px;box-shadow:var(--shadow);border:1px solid var(--border-color);transition:box-shadow var(--transition)}.search-bar:focus-within{box-shadow:var(--shadow-hover);border-color:var(--primary)}.search-input{flex:1;border:none;background:transparent;padding:0 24px;font-size:1rem;color:var(--text-main);outline:none}.search-input::placeholder{color:var(--text-muted)}.search-divider{width:1px;background:var(--border-color);margin:8px 0}.btn-search{padding:12px 32px;background:var(--secondary);color:#fff;border-radius:50px;font-weight:700;font-size:1.05rem;transition:background var(--transition),transform var(--transition);box-shadow:0 4px 16px #e67e2259}.btn-search:hover{background:var(--secondary-light);transform:translateY(-2px)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:24px;max-width:800px;margin:0 auto;padding:32px;background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border-color)}.stat-item{text-align:center}.stat-item .number{font-size:2rem;font-weight:800;color:var(--primary)}.stat-item .label{font-size:.9rem;color:var(--text-muted);margin-top:4px}.how-it-works{padding:64px 0;text-align:center;background:var(--bg-color)}.section-title{font-size:2rem;font-weight:700;margin-bottom:12px;color:var(--text-main)}.section-sub{color:var(--text-muted);font-size:1.1rem;margin-bottom:48px}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:32px}.step-card{padding:32px;background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border-color);box-shadow:var(--shadow);transition:transform var(--transition)}.step-card:hover{transform:translateY(-5px)}.step-icon{font-size:2.5rem;margin-bottom:16px;display:inline-block;padding:16px;background:var(--tag-bg);border-radius:50%}.step-card h3{font-size:1.25rem;margin-bottom:12px}.step-card p{color:var(--text-muted)}.categories{padding:64px 0;text-align:center;background:var(--bg-alt)}.category-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.category-tag{padding:12px 32px;background:var(--card-bg);border-radius:50px;font-weight:600;font-size:1rem;color:var(--text-main);transition:all var(--transition);border:1px solid var(--border-color);box-shadow:var(--shadow)}.category-tag:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-3px);box-shadow:var(--shadow-hover)}.offers{padding:80px 0;background:var(--bg-color)}.offers h2,.offers .sub{text-align:center}.offers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;max-width:1000px;margin:48px auto 0}.offer-card{background:var(--card-bg);border-radius:var(--radius);padding:40px 32px;text-align:center;box-shadow:var(--shadow);border:1px solid var(--border-color);transition:all var(--transition);display:flex;flex-direction:column}.offer-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-hover)}.offer-card.popular{border-color:var(--secondary);position:relative}.offer-card.popular:before{content:"⭐ Populaire";position:absolute;top:-14px;left:50%;transform:translate(-50%);background:var(--secondary);color:#fff;padding:4px 20px;border-radius:50px;font-size:.85rem;font-weight:700;letter-spacing:.5px}.offer-card .icon{font-size:2.8rem;margin-bottom:16px}.offer-card h3{font-size:1.4rem;font-weight:700;margin-bottom:8px}.offer-card .price{font-size:2.4rem;font-weight:800;color:var(--primary);margin:16px 0 8px}.offer-card .price span{font-size:1.1rem;font-weight:400;color:var(--text-muted)}.offer-card .desc{color:var(--text-muted);font-size:1rem;margin:16px 0 32px;flex-grow:1}.offer-card .btn-offer{padding:14px 32px;background:var(--primary);color:#fff;border-radius:50px;font-weight:700;font-size:1.05rem;transition:background var(--transition);width:100%}.offer-card .btn-offer:hover{background:var(--primary-light)}.offer-card .btn-offer.secondary{background:var(--secondary)}.offer-card .btn-offer.secondary:hover{background:var(--secondary-light)}.faq{padding:64px 0;background:var(--bg-alt)}.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.faq-item{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border-color);overflow:hidden}.faq-question{width:100%;text-align:left;padding:24px;font-size:1.1rem;font-weight:600;color:var(--text-main);background:none;display:flex;justify-content:space-between;align-items:center;outline:none}.faq-icon{font-size:1.5rem;transition:transform var(--transition);color:var(--primary)}.faq-item.active .faq-icon{transform:rotate(45deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease;background:var(--card-bg)}.faq-answer-inner{padding:0 24px 24px;color:var(--text-muted)}.testimonial{padding:80px 0;text-align:center;max-width:800px;margin:0 auto}.testimonial blockquote{font-size:1.5rem;font-weight:500;color:var(--text-main);line-height:1.6;margin-bottom:24px}.testimonial blockquote:before{content:"“";font-size:3rem;color:var(--secondary);display:block;height:20px;margin-bottom:10px}.testimonial .author{font-weight:600;color:var(--primary);font-size:1.1rem}.testimonial .author span{font-weight:400;color:var(--text-muted);display:block;margin-top:4px}.footer{border-top:1px solid var(--border-color);padding:48px 0 32px;background:var(--bg-color);text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:32px;margin-bottom:24px}.footer-links a{color:var(--text-muted);font-weight:500;transition:color var(--transition)}.footer-links a:hover{color:var(--primary)}.footer p{color:var(--text-muted);font-size:.9rem}@media (max-width: 768px){.nav{display:none;flex-direction:column;gap:16px;padding:24px;position:absolute;top:100%;left:0;width:100%;background:var(--bg-color);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow)}.nav.open{display:flex}.mobile-toggle{display:block}.header-inner{flex-wrap:wrap}.hero{padding:48px 0 40px}.search-bar{flex-direction:column;border-radius:var(--radius);padding:16px;gap:16px;background:var(--card-bg)}.search-input{padding:8px}.search-divider{width:100%;height:1px;margin:0}.btn-search{width:100%}.stats{grid-template-columns:repeat(2,1fr);padding:24px}}@media (max-width: 480px){.stat-item .number{font-size:1.5rem}.offer-card{padding:32px 24px}.section-title{font-size:1.6rem}}
