*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;background:#0A1628;color:#F0ECE6;line-height:1.6;overflow-x:hidden}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
:root{--gold:#C9A84C;--dark:#050A12;--navy:#0A1628;--cream:#F0ECE6}

/* LANG SWITCHER */
.lang-switcher{position:fixed;top:10px;right:10px;z-index:1001;display:flex;gap:5px;background:rgba(5,10,18,0.9);padding:6px 10px;border-radius:20px;border:1px solid rgba(201,168,76,0.3)}
.lang-switcher a{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:700;color:rgba(240,236,230,0.6);transition:all .3s}
.lang-switcher a:hover{color:var(--gold)}
.lang-switcher a.active{background:var(--gold);color:var(--dark)}

/* CTA STICKY */
.cta-sticky{position:fixed;bottom:0;left:0;right:0;display:flex;z-index:1000;background:var(--dark);border-top:1px solid var(--gold);padding:8px;gap:8px}
.btn-sticky{flex:1;padding:12px 8px;border-radius:8px;font-weight:700;font-size:13px;text-align:center;border:none;cursor:pointer}
.btn-call{background:var(--gold);color:var(--dark)}
.btn-wa{background:#25D366;color:#fff}
.btn-devis{background:transparent;color:var(--gold);border:1px solid var(--gold)}
@media(min-width:769px){.cta-sticky{display:none}.lang-switcher{top:60px}}

/* HEADER */
.header{background:var(--dark);border-bottom:1px solid rgba(201,168,76,0.3);padding:15px 0;position:sticky;top:0;z-index:100}
.header .container{display:flex;justify-content:space-between;align-items:center}
.logo{font-size:22px;font-weight:900;letter-spacing:2px;color:#fff;display:flex;align-items:center;gap:12px}
.gold{color:var(--gold)}
.tel{font-size:16px;font-weight:700;color:var(--gold)}
.badge{background:var(--gold);color:var(--dark);padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;margin-left:10px}
@media(max-width:768px){.header-contact{display:none}}

/* HERO */
.hero{background:linear-gradient(135deg,var(--navy) 0%,var(--dark) 100%);padding:90px 0 70px;text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23C9A84C' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.5}
.hero h1{font-size:42px;font-weight:900;line-height:1.1;margin-bottom:20px;color:#fff;position:relative}
.subtitle{font-size:20px;color:rgba(240,236,230,0.8);max-width:700px;margin:0 auto 30px;position:relative}
.trust-badges{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:40px;position:relative}
.trust-badges span{background:rgba(201,168,76,0.15);border:1px solid rgba(201,168,76,0.3);padding:8px 16px;border-radius:30px;font-size:14px;font-weight:600}
.hero-cta{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;position:relative}
.btn{display:inline-block;padding:16px 32px;border-radius:12px;font-weight:700;font-size:16px;transition:all .3s;cursor:pointer;border:none}
.btn-primary{background:var(--gold);color:var(--dark)}
.btn-primary:hover{background:#d4b55a;transform:translateY(-2px)}
.btn-wa{background:#25D366;color:#fff}
.btn-wa:hover{background:#128C7E;transform:translateY(-2px)}
.btn-gold{background:transparent;color:var(--gold);border:2px solid var(--gold)}
.btn-gold:hover{background:var(--gold);color:var(--dark)}
.btn-large{padding:20px 48px;font-size:18px;width:100%;max-width:400px}
@media(max-width:768px){.hero{padding:70px 0 40px}.hero h1{font-size:28px}.subtitle{font-size:16px}.trust-badges{gap:10px}.trust-badges span{font-size:12px;padding:6px 12px}}

/* SECTIONS */
.section{padding:60px 0}
.section h2{font-size:32px;font-weight:900;text-align:center;margin-bottom:10px;color:#fff}
.section-subtitle{text-align:center;color:rgba(240,236,230,0.6);margin-bottom:40px;font-size:16px}
@media(max-width:768px){.section{padding:40px 0}.section h2{font-size:24px}}

/* FORMULAIRE */
.devis-section{background:var(--dark)}
.devis-form{max-width:700px;margin:0 auto;background:rgba(10,22,40,0.6);border:1px solid rgba(201,168,76,0.2);border-radius:20px;padding:30px;backdrop-filter:blur(10px)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px}
.devis-form input,.devis-form select{width:100%;padding:14px 16px;border-radius:10px;border:1px solid rgba(201,168,76,0.3);background:rgba(5,10,18,0.8);color:var(--cream);font-size:15px;outline:none;transition:border .3s}
.devis-form input:focus,.devis-form select:focus{border-color:var(--gold)}
.devis-form input::placeholder{color:rgba(240,236,230,0.4)}
.services-check,.transport-check{margin:20px 0;padding:20px;background:rgba(201,168,76,0.05);border-radius:12px;border:1px solid rgba(201,168,76,0.1)}
.services-check p,.transport-check p{font-weight:700;margin-bottom:12px;color:var(--gold)}
.services-check label,.transport-check label{display:block;margin:8px 0;cursor:pointer;font-size:15px}
.services-check input,.transport-check input{margin-right:10px;accent-color:var(--gold)}
.form-note{text-align:center;margin-top:15px;color:rgba(240,236,230,0.5);font-size:13px}
@media(max-width:768px){.form-grid{grid-template-columns:1fr}.devis-form{padding:20px}}

/* CHATBOT */
.chatbot-container{position:fixed;bottom:80px;right:20px;width:350px;max-height:500px;background:var(--dark);border:1px solid var(--gold);border-radius:16px;overflow:hidden;display:none;flex-direction:column;z-index:999;box-shadow:0 20px 60px rgba(0,0,0,0.5)}
.chatbot-header{background:var(--gold);color:var(--dark);padding:15px;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.chatbot-body{flex:1;display:flex;flex-direction:column;padding:15px;overflow:hidden}
.chat-messages{flex:1;overflow-y:auto;margin-bottom:15px;display:flex;flex-direction:column;gap:10px}
.msg{padding:12px 16px;border-radius:12px;max-width:85%;font-size:14px;line-height:1.5}
.msg.bot{background:rgba(201,168,76,0.15);border:1px solid rgba(201,168,76,0.2);align-self:flex-start}
.msg.user{background:rgba(255,255,255,0.1);align-self:flex-end}
.chat-input{display:flex;gap:8px}
.chat-input input{flex:1;padding:12px;border-radius:10px;border:1px solid rgba(201,168,76,0.3);background:rgba(5,10,18,0.8);color:var(--cream);outline:none}
.chat-input button{background:var(--gold);color:var(--dark);border:none;padding:12px 16px;border-radius:10px;font-weight:700;cursor:pointer}
.chatbot-float{position:fixed;bottom:80px;right:20px;width:60px;height:60px;border-radius:50%;background:var(--gold);color:var(--dark);border:none;font-size:28px;cursor:pointer;z-index:998;box-shadow:0 4px 20px rgba(201,168,76,0.4);display:flex;align-items:center;justify-content:center}
@media(max-width:768px){.chatbot-container{width:calc(100% - 40px);bottom:70px;right:20px;left:20px}.chatbot-float{bottom:70px}}

/* SERVICES */
.services-section{background:var(--navy)}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;margin-top:40px}
.service-card{background:rgba(201,168,76,0.05);border:1px solid rgba(201,168,76,0.15);border-radius:16px;padding:30px;text-align:center;transition:all .3s}
.service-card:hover{border-color:var(--gold);transform:translateY(-5px);box-shadow:0 10px 40px rgba(201,168,76,0.1)}
.service-icon{font-size:48px;margin-bottom:15px}
.service-card h3{font-size:18px;margin-bottom:12px;color:var(--gold)}
.service-card p{color:rgba(240,236,230,0.7);font-size:14px;line-height:1.6}

/* GEO SECTION */
.geo-section{background:var(--dark)}
.geo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:40px}
.geo-card{background:rgba(201,168,76,0.05);border:1px solid rgba(201,168,76,0.15);border-radius:16px;padding:25px;transition:all .3s}
.geo-card:hover{border-color:var(--gold)}
.geo-card h3{font-size:18px;color:var(--gold);margin-bottom:12px}
.geo-card p{color:rgba(240,236,230,0.7);font-size:14px;line-height:1.7}
.geo-card strong{color:var(--cream)}

/* TRUST */
.trust-section{background:var(--dark)}
.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:40px}
.trust-item{background:rgba(201,168,76,0.08);border:1px solid rgba(201,168,76,0.2);border-radius:12px;padding:20px;font-weight:600;text-align:center;font-size:16px}
.trust-item strong{color:var(--gold)}

/* SEO */
.seo-section{background:var(--navy)}
.seo-section p{color:rgba(240,236,230,0.7);margin-bottom:15px;line-height:1.8;max-width:800px;margin-left:auto;margin-right:auto;text-align:center}
.seo-section strong{color:var(--cream)}

/* FAQ */
.faq-section{background:var(--dark)}
.faq-grid{max-width:800px;margin:40px auto 0;display:flex;flex-direction:column;gap:15px}
.faq-item{background:rgba(201,168,76,0.05);border:1px solid rgba(201,168,76,0.15);border-radius:12px;overflow:hidden}
.faq-item summary{padding:18px 20px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--gold);font-size:16px}
.faq-item summary::after{content:'+';font-size:22px}
.faq-item[open] summary::after{content:'−'}
.faq-item > div{padding:0 20px 20px;color:rgba(240,236,230,0.8);line-height:1.7;font-size:15px}
.faq-item > div strong{color:var(--gold)}
.faq-item > div a{color:var(--gold);text-decoration:underline}

/* LLMS SECTION (for AI search engines) */
.llms-section{background:var(--navy);border-top:2px solid var(--gold)}
.llms-section p{color:rgba(240,236,230,0.7);max-width:800px;margin:0 auto;text-align:center;line-height:1.8;font-size:15px}

/* FOOTER */
.footer{background:var(--dark);border-top:1px solid rgba(201,168,76,0.2);padding:50px 0 20px}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-bottom:30px}
.footer h4{color:var(--gold);margin-bottom:15px;font-size:16px}
.footer p{color:rgba(240,236,230,0.6);font-size:14px;line-height:1.8}
.footer a{color:var(--gold)}
.footer a:hover{text-decoration:underline}
.copyright{text-align:center;padding-top:20px;border-top:1px solid rgba(201,168,76,0.1);color:rgba(240,236,230,0.4);font-size:13px}

/* SCROLLBAR */
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:var(--dark)}
::-webkit-scrollbar-thumb{background:var(--gold);border-radius:4px}

/* ANIMATIONS */
@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.hero h1,.hero .subtitle,.hero .trust-badges,.hero .hero-cta{animation:fadeIn .8s ease-out forwards}
.hero .subtitle{animation-delay:.2s}
.hero .trust-badges{animation-delay:.4s}
.hero .hero-cta{animation-delay:.6s}

.hero-video{position:absolute;inset:0;background:linear-gradient(120deg,rgba(10,22,40,.88),rgba(5,10,18,.78)),radial-gradient(circle at 20% 20%,rgba(201,168,76,.22),transparent 26%),radial-gradient(circle at 80% 60%,rgba(255,255,255,.08),transparent 22%),url('assets/og-image.svg');background-size:cover;background-position:center;animation:slowPan 18s ease-in-out infinite alternate;filter:saturate(1.1)}
@keyframes slowPan{from{transform:scale(1.02) translateX(-8px)}to{transform:scale(1.08) translateX(8px)}}
.upload-box{display:block;margin:18px 0;padding:18px;border:1px dashed rgba(201,168,76,.45);border-radius:12px;background:rgba(201,168,76,.06);cursor:pointer}
.upload-box span{display:block;color:var(--gold);font-weight:800;margin-bottom:8px}.upload-box small{display:block;color:rgba(240,236,230,.55);margin-top:8px}.devis-form textarea{width:100%;padding:14px 16px;border-radius:10px;border:1px solid rgba(201,168,76,0.3);background:rgba(5,10,18,0.8);color:var(--cream);font-size:15px;outline:none;resize:vertical;margin-bottom:20px}.devis-form textarea:focus{border-color:var(--gold)}
.process-section{background:linear-gradient(180deg,var(--dark),var(--navy))}.process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:35px}.process-card{background:rgba(201,168,76,.06);border:1px solid rgba(201,168,76,.18);border-radius:18px;padding:24px}.process-card span{display:inline-flex;width:38px;height:38px;border-radius:50%;align-items:center;justify-content:center;background:var(--gold);color:var(--dark);font-weight:900;margin-bottom:14px}.process-card h3{color:var(--gold);margin-bottom:10px}.process-card p{color:rgba(240,236,230,.72);line-height:1.6}


/* REPUTATION + SEO LOCAL */
.section-intro{max-width:820px;margin:0 auto 32px;text-align:center;color:rgba(240,236,230,.72);line-height:1.8}.reputation-section{background:linear-gradient(180deg,var(--navy),var(--dark))}.reputation-grid,.local-seo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;margin-top:32px}.review-card,.local-seo-grid>div{background:rgba(201,168,76,.06);border:1px solid rgba(201,168,76,.18);border-radius:18px;padding:24px;box-shadow:0 10px 28px rgba(0,0,0,.18)}.review-card p,.local-seo-grid p{color:rgba(240,236,230,.76);line-height:1.7}.review-card strong,.local-seo-grid h3{display:block;color:var(--gold);margin:14px 0 8px}.review-card small{display:block;color:rgba(240,236,230,.48);font-size:12px;line-height:1.5}.stars{color:var(--gold);letter-spacing:2px;font-size:20px;margin-bottom:12px}.google-next{border-style:dashed}.local-seo-section{background:var(--dark)}

/* LEGAL PAGES */
.legal-page{padding:120px 0 70px;background:linear-gradient(180deg,var(--dark),var(--navy));min-height:70vh}.legal-card{max-width:900px;margin:0 auto;background:rgba(10,22,40,.65);border:1px solid rgba(201,168,76,.2);border-radius:22px;padding:34px}.legal-card h1{color:var(--gold);font-size:clamp(30px,5vw,48px);margin-bottom:18px}.legal-card h2{color:var(--gold);font-size:22px;margin:28px 0 10px;text-align:left}.legal-card p,.legal-card li{color:rgba(240,236,230,.78);line-height:1.8}.legal-card ul{padding-left:22px;margin:10px 0}.legal-card a{color:var(--gold);text-decoration:underline}.legal-note{border-left:4px solid var(--gold);padding:14px 18px;background:rgba(201,168,76,.08);border-radius:10px;margin:20px 0}
