*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#F3F5F1;--bg2:#E8EBE5;--white:#fff;
  --navy:#0D1C12;--navy2:#172C1E;
  --green:#157A42;--g2:#1AAF5A;--g3:#E6F4EC;--g4:#C5EAD5;
  --text:#13201A;--t2:#3B5245;--t3:#7A9488;
  --bord:rgba(21,122,66,.13);
  --sh:0 4px 28px rgba(13,28,18,.09);--sh2:0 2px 10px rgba(13,28,18,.06);
}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);max-width:430px;margin:0 auto;overflow-x:hidden;-webkit-font-smoothing:antialiased}

@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.25)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes gshift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

.a1{animation:fadeUp .5s ease both}
.a2{animation:fadeUp .5s .07s ease both}
.a3{animation:fadeUp .5s .14s ease both}
.a4{animation:fadeUp .5s .21s ease both}
.a5{animation:fadeUp .5s .28s ease both}

/* ── STATUS ── */
.status{background:var(--navy);padding:11px 20px 9px;display:flex;justify-content:space-between;align-items:center}
.status span{color:rgba(255,255,255,.55);font-size:11px;font-family:'Syne',sans-serif;font-weight:600}

/* ── NAV ── */
nav{position:sticky;top:0;z-index:200;background:rgba(243,245,241,.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--bord);padding:13px 20px;display:flex;justify-content:space-between;align-items:center}
.logo{font-family:'Syne',sans-serif;font-weight:800;font-size:19px;letter-spacing:-.5px;color:var(--navy)}
.logo em{font-style:normal;color:var(--green)}
.logo-zone{font-size:9px;background:var(--g3);color:var(--green);border:1px solid var(--g4);padding:3px 8px;border-radius:6px;font-weight:700;letter-spacing:.8px;margin-left:6px;vertical-align:middle}
.nav-tel{display:flex;align-items:center;gap:8px;background:var(--navy);color:#fff;font-family:'Syne',sans-serif;font-size:11px;font-weight:700;padding:9px 14px;border-radius:9px;text-decoration:none;letter-spacing:.3px}
.nav-tel-dot{width:7px;height:7px;background:var(--g2);border-radius:50%;animation:pulse 1.8s infinite;flex-shrink:0}

/* ── HERO ── */
.hero{background:var(--navy);padding:32px 20px 0;position:relative;overflow:hidden}
.hero-grid{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.055) 1px,transparent 1px);background-size:26px 26px;pointer-events:none}
.hero-glow{position:absolute;top:-40px;right:-60px;width:260px;height:260px;background:radial-gradient(circle,rgba(21,122,66,.28) 0%,transparent 68%);pointer-events:none}
.hero-glow2{position:absolute;bottom:80px;left:-30px;width:140px;height:140px;background:radial-gradient(circle,rgba(26,175,90,.12) 0%,transparent 70%);pointer-events:none}

.hero-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(26,175,90,.15);border:1px solid rgba(26,175,90,.35);border-radius:100px;padding:5px 13px 5px 7px;margin-bottom:22px}
.badge-dot{width:7px;height:7px;background:var(--g2);border-radius:50%;animation:pulse 2s infinite;flex-shrink:0}
.hero-badge span{font-family:'Syne',sans-serif;font-size:10px;font-weight:700;color:var(--g2);letter-spacing:1px;text-transform:uppercase}

h1{font-family:'Syne',sans-serif;font-weight:800;font-size:37px;line-height:1.04;letter-spacing:-1.5px;color:#fff;margin-bottom:14px}
h1 em{font-style:normal;color:var(--g2)}

.hero-sub{font-size:13.5px;line-height:1.7;color:rgba(255,255,255,.52);margin-bottom:26px;font-weight:300;max-width:330px}

.hero-btns{display:flex;gap:10px;margin-bottom:32px}
.btn-main{flex:1;background:var(--green);color:#fff;font-family:'Syne',sans-serif;font-weight:700;font-size:13px;padding:14px;border-radius:10px;text-decoration:none;text-align:center;box-shadow:0 0 30px rgba(21,122,66,.38);transition:background .2s,transform .15s}
.btn-main:hover{background:var(--g2);transform:translateY(-1px)}
.btn-out{background:rgba(255,255,255,.07);color:rgba(255,255,255,.65);font-family:'Syne',sans-serif;font-weight:600;font-size:13px;padding:14px 16px;border-radius:10px;text-decoration:none;border:1px solid rgba(255,255,255,.11);transition:background .2s;white-space:nowrap}

.hero-stats{display:flex;border-top:1px solid rgba(255,255,255,.07);margin:0 -20px}
.stat{flex:1;padding:16px 0 22px;text-align:center;position:relative}
.stat:not(:last-child)::after{content:'';position:absolute;right:0;top:18%;bottom:18%;width:1px;background:rgba(255,255,255,.08)}
.stat-n{font-family:'Syne',sans-serif;font-weight:800;font-size:21px;color:var(--g2);letter-spacing:-1px;line-height:1}
.stat-l{font-size:9.5px;color:rgba(255,255,255,.38);margin-top:4px;letter-spacing:.5px;text-transform:uppercase}

/* ── DEVIS CARD ── */
.devis-wrap{margin:0 12px;position:relative;z-index:10;margin-top:20px}
.devis-card{background:var(--white);border-radius:20px;overflow:hidden;box-shadow:0 8px 50px rgba(13,28,18,.14),0 2px 8px rgba(13,28,18,.05)}

.devis-head{background:linear-gradient(135deg,var(--green) 0%,var(--navy2) 100%);background-size:200% 200%;animation:gshift 7s ease infinite;padding:17px 20px;display:flex;align-items:center;gap:12px}
.dh-icon{width:40px;height:40px;background:rgba(255,255,255,.14);border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:20px;animation:float 3.5s ease-in-out infinite;flex-shrink:0}
.dh-text h2{font-family:'Syne',sans-serif;font-weight:800;font-size:15px;color:#fff;letter-spacing:-.3px}
.dh-text p{font-size:11px;color:rgba(255,255,255,.6);margin-top:2px}
.dh-badge{margin-left:auto;background:rgba(255,255,255,.14);border-radius:9px;padding:7px 11px;text-align:center;flex-shrink:0}
.dh-badge .n{font-family:'Syne',sans-serif;font-weight:800;font-size:15px;color:#fff;line-height:1}
.dh-badge .l{font-size:8px;color:rgba(255,255,255,.55);letter-spacing:1px;text-transform:uppercase}

/* progress */
.prog{display:flex;align-items:center;padding:16px 20px 0;gap:0}
.pi{display:flex;align-items:center;gap:5px;flex:1}
.pd{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:9px;font-weight:700;flex-shrink:0}
.pd.done{background:var(--green);color:#fff}
.pd.active{background:var(--navy);color:#fff}
.pd.todo{background:var(--bg2);color:var(--t3)}
.pl{font-size:8.5px;color:var(--t3);font-weight:500;white-space:nowrap}
.pl.active{color:var(--navy);font-weight:700}
.pline{flex:1;height:1px;background:var(--bg2);margin:0 3px}
.pline.done{background:var(--green)}

.dform{padding:18px 20px 20px}

/* field */
.flabel{font-family:'Syne',sans-serif;font-size:9.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--t3);margin-bottom:7px;display:flex;align-items:center;gap:5px}
.flabel .req{color:var(--green)}

/* vehicle type tabs */
.vtabs{display:flex;gap:0;background:var(--bg);border-radius:10px;padding:3px;margin-bottom:18px}
.vtab{flex:1;padding:9px 6px;text-align:center;font-family:'Syne',sans-serif;font-size:11px;font-weight:700;color:var(--t3);border-radius:8px;cursor:pointer;transition:all .18s;-webkit-tap-highlight-color:transparent}
.vtab.active{background:var(--white);color:var(--navy);box-shadow:0 1px 6px rgba(13,28,18,.1)}
.vtab-icon{font-size:16px;display:block;margin-bottom:3px}

/* selects styled */
.sel-wrap{position:relative;margin-bottom:14px}
.sel-wrap select{width:100%;background:var(--bg);border:1.5px solid var(--bord);border-radius:10px;padding:12px 38px 12px 14px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--text);outline:none;appearance:none;-webkit-appearance:none;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.sel-wrap select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(21,122,66,.08)}
.sel-wrap::after{content:'▾';position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--t3);font-size:13px;pointer-events:none}

/* autocomplete input */
.inp-wrap{position:relative;margin-bottom:14px}
.inp-wrap input{width:100%;background:var(--bg);border:1.5px solid var(--bord);border-radius:10px;padding:12px 38px 12px 14px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--text);outline:none;-webkit-appearance:none;transition:border-color .2s,box-shadow .2s}
.inp-wrap input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(21,122,66,.08)}
.inp-wrap input::placeholder{color:var(--t3)}
.inp-wrap .ico{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--t3);font-size:13px;pointer-events:none}

/* dropdown suggestion */
.suggest{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--white);border:1.5px solid var(--bord);border-radius:10px;box-shadow:var(--sh);z-index:50;overflow:hidden}
.suggest-item{padding:11px 14px;font-size:13px;color:var(--text);cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--bg2)}
.suggest-item:last-child{border-bottom:none}
.suggest-item:hover{background:var(--g3)}
.suggest-item .si-main{font-weight:500}
.suggest-item .si-sub{font-size:11px;color:var(--t3)}
.suggest-item .si-icon{width:28px;height:28px;background:var(--g3);border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}

/* year slider area */
.year-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:16px}
.ypill{background:var(--bg);border:1.5px solid transparent;border-radius:8px;padding:8px 4px;font-family:'Syne',sans-serif;font-size:12px;font-weight:600;color:var(--t2);cursor:pointer;transition:all .16s;-webkit-tap-highlight-color:transparent;text-align:center}
.ypill:hover,.ypill.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.year-more{font-size:11px;color:var(--green);font-weight:700;cursor:pointer;padding:9px 10px;background:var(--g3);border:1px solid var(--g4);border-radius:8px;transition:background .15s;-webkit-tap-highlight-color:transparent;grid-column:1/-1;text-align:center;margin-top:2px}
.year-more:hover{background:var(--g4)}

/* key types */
.ktypes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}
.ktype{background:var(--bg);border:1.5px solid transparent;border-radius:12px;padding:13px 7px 11px;text-align:center;cursor:pointer;transition:all .18s;-webkit-tap-highlight-color:transparent}
.ktype:hover,.ktype.on{background:var(--g3);border-color:var(--green)}
.ktype-ico{font-size:21px;margin-bottom:7px}
.ktype-name{font-family:'Syne',sans-serif;font-size:10.5px;font-weight:700;color:var(--navy);line-height:1.2}
.ktype-sub{font-size:9px;color:var(--t3);margin-top:3px;line-height:1.3}
.ktype.on .ktype-name{color:var(--green)}

/* zone selector */
.zone-tabs{display:flex;gap:8px;margin-bottom:10px}
.ztab{flex:1;padding:10px 8px;background:var(--bg);border:1.5px solid transparent;border-radius:10px;text-align:center;cursor:pointer;transition:all .18s;-webkit-tap-highlight-color:transparent}
.ztab.on{background:var(--g3);border-color:var(--green)}
.ztab-ico{font-size:16px;margin-bottom:4px}
.ztab-name{font-family:'Syne',sans-serif;font-size:10px;font-weight:700;color:var(--navy)}
.ztab-sub{font-size:9px;color:var(--t3);margin-top:2px}
.ztab.on .ztab-name{color:var(--green)}

.idf-deps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.dep-pill{background:var(--bg);border:1.5px solid transparent;border-radius:7px;padding:5px 10px;font-size:11px;font-weight:500;color:var(--t2);cursor:pointer;transition:all .16s;-webkit-tap-highlight-color:transparent}
.dep-pill:hover,.dep-pill.on{background:var(--g3);border-color:var(--green);color:var(--green);font-weight:700}

/* divider */
.div{height:1px;background:var(--bg2);margin:4px -20px 18px}

/* estimate */
.estim{background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);border-radius:14px;padding:18px;margin-bottom:14px;position:relative;overflow:hidden}
.estim::before{content:'';position:absolute;top:-24px;right:-24px;width:110px;height:110px;background:radial-gradient(circle,rgba(21,122,66,.32) 0%,transparent 70%)}
.estim-tag{display:inline-flex;align-items:center;gap:5px;background:rgba(26,175,90,.18);border:1px solid rgba(26,175,90,.32);border-radius:100px;padding:4px 10px;margin-bottom:11px}
.estim-tag span{font-family:'Syne',sans-serif;font-size:9px;font-weight:700;color:var(--g2);letter-spacing:1px;text-transform:uppercase}
.etag-dot{width:5px;height:5px;background:var(--g2);border-radius:50%;animation:pulse 1.6s infinite}
.eprice{font-family:'Syne',sans-serif;font-weight:800;font-size:38px;color:#fff;letter-spacing:-2px;line-height:1;margin-bottom:5px}
.eprice span{font-size:16px;color:rgba(255,255,255,.45);font-weight:400;letter-spacing:0}
.edetail{font-size:11px;color:rgba(255,255,255,.42);line-height:1.55}
.edetail strong{color:rgba(255,255,255,.72);font-weight:500}
.eincludes{display:flex;gap:6px;flex-wrap:wrap;margin-top:13px}
.etag{background:rgba(255,255,255,.07);border-radius:6px;padding:4px 9px;font-size:10px;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:4px}
.etag::before{content:'✓';color:var(--g2);font-weight:700}

.btn-confirm{width:100%;background:var(--green);color:#fff;font-family:'Syne',sans-serif;font-weight:800;font-size:14px;padding:15px;border-radius:12px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 22px rgba(21,122,66,.3);transition:background .2s,transform .15s;margin-bottom:11px}
.btn-confirm:hover{background:var(--g2);transform:translateY(-1px)}
.bc-arr{width:20px;height:20px;background:rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px}

/* ── ACOMPTE ── */
.acompte-box{background:var(--white);border:2px solid var(--green);border-radius:16px;padding:18px;margin-bottom:12px;animation:fadeUp .3s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.acompte-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--bg2)}
.acompte-icon{width:42px;height:42px;background:var(--g3);border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.acompte-title{font-family:'Syne',sans-serif;font-weight:800;font-size:14px;color:var(--navy);margin-bottom:2px}
.acompte-sub{font-size:11px;color:var(--t3)}
.acompte-why{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.acompte-why-item{font-size:11px;color:var(--t2);display:flex;align-items:center;gap:7px}
.acompte-why-item span{color:var(--green);font-weight:700;font-size:12px}
.acompte-serrurier{background:var(--g3);border:1px solid var(--g4);border-radius:10px;padding:10px 14px;margin-bottom:14px}
.as-zone{font-family:'Syne',sans-serif;font-size:11px;font-weight:700;color:var(--green)}
.btn-acompte{display:flex;align-items:center;justify-content:center;width:100%;background:var(--navy);color:#fff;font-family:'Syne',sans-serif;font-weight:800;font-size:14px;padding:15px;border-radius:12px;text-decoration:none;margin-bottom:10px;transition:background .2s,transform .15s;box-shadow:0 4px 18px rgba(13,28,18,.2)}
.btn-acompte:hover{background:var(--green);transform:translateY(-1px)}
.acompte-secure{text-align:center;font-size:10px;color:var(--t3);margin-bottom:4px}
.ou-divider{text-align:center;position:relative;margin:4px 0 10px}
.ou-divider::before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:var(--bg2)}
.ou-divider span{background:var(--white);padding:0 12px;font-size:11px;color:var(--t3);position:relative;z-index:1}
.btn-tel{display:flex;align-items:center;justify-content:center;width:100%;background:transparent;color:var(--navy);font-family:'Syne',sans-serif;font-weight:700;font-size:13px;padding:13px;border-radius:12px;text-decoration:none;border:1.5px solid var(--bord);margin-bottom:14px;transition:border-color .2s,background .2s}
.btn-tel:hover{border-color:var(--green);background:var(--g3)}
.fine{text-align:center;font-size:10px;color:var(--t3);display:flex;align-items:center;justify-content:center;gap:10px}
.fine span{display:flex;align-items:center;gap:3px}
.fine span::before{content:'✓';color:var(--green);font-weight:700}

/* ── REASSURANCE BAND ── */
.reassure{display:flex;background:var(--g3);border-top:1px solid var(--g4);border-bottom:1px solid var(--g4);padding:16px 20px;gap:0;margin-top:0}
.rb{flex:1;text-align:center;position:relative}
.rb:not(:last-child)::after{content:'';position:absolute;right:0;top:10%;bottom:10%;width:1px;background:var(--g4)}
.rb-icon{font-size:18px;margin-bottom:4px}
.rb-text{font-family:'Syne',sans-serif;font-size:10px;font-weight:700;color:var(--green);line-height:1.3}

/* ── SECTION ── */
.section{padding:36px 20px}
.eye{display:flex;align-items:center;gap:9px;margin-bottom:8px}
.eye-line{width:22px;height:2px;background:var(--green);border-radius:2px}
.eye-txt{font-family:'Syne',sans-serif;font-size:9.5px;font-weight:700;letter-spacing:2px;color:var(--green);text-transform:uppercase}
.stitle{font-family:'Syne',sans-serif;font-weight:800;font-size:25px;color:var(--navy);letter-spacing:-1px;line-height:1.1;margin-bottom:20px}
.stitle em{font-style:normal;color:var(--green)}

/* service cards */
.scard{background:var(--white);border-radius:15px;padding:18px;margin-bottom:9px;display:flex;align-items:flex-start;gap:14px;box-shadow:var(--sh2);border:1px solid rgba(13,28,18,.04);transition:transform .2s,box-shadow .2s}
.scard:hover{transform:translateY(-2px);box-shadow:var(--sh)}
.scard-ico{width:44px;height:44px;background:var(--g3);border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0}
.scard-info{flex:1;min-width:0}
.scard-name{font-family:'Syne',sans-serif;font-weight:700;font-size:13.5px;color:var(--navy);margin-bottom:3px}
.scard-desc{font-size:11.5px;color:var(--t2);line-height:1.5}
.scard-price{font-family:'Syne',sans-serif;font-weight:800;font-size:14px;color:var(--green);margin-top:6px}
.scard-arr{color:var(--t3);font-size:15px;margin-top:13px;transition:color .2s,transform .2s}
.scard:hover .scard-arr{color:var(--green);transform:translateX(3px)}

/* ── ZONES ── */
.zones-section{background:var(--navy);padding:36px 20px}
.zones-section .eye-line{background:var(--g2)}
.zones-section .eye-txt{color:var(--g2)}
.zones-section .stitle{color:#fff}
.zones-section .stitle em{color:var(--g2)}

.zone-map{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px;margin-bottom:16px;position:relative;overflow:hidden}
.zone-map::before{content:'';position:absolute;top:-30px;right:-30px;width:120px;height:120px;background:radial-gradient(circle,rgba(21,122,66,.2) 0%,transparent 70%)}
.zm-head{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.zm-badge{background:var(--green);color:#fff;font-family:'Syne',sans-serif;font-size:9px;font-weight:700;padding:4px 10px;border-radius:6px;letter-spacing:1px}
.zm-title{font-family:'Syne',sans-serif;font-weight:700;font-size:15px;color:#fff}

.dep-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:14px}
.dep-box{background:rgba(26,175,90,.12);border:1px solid rgba(26,175,90,.25);border-radius:8px;padding:8px 4px;text-align:center}
.dep-num{font-family:'Syne',sans-serif;font-weight:800;font-size:14px;color:var(--g2);line-height:1}
.dep-name{font-size:9px;color:rgba(255,255,255,.4);margin-top:3px;line-height:1.2}

.zone-other{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px}
.zo-ico{font-size:22px;flex-shrink:0}
.zo-text{}
.zo-title{font-family:'Syne',sans-serif;font-weight:700;font-size:13px;color:rgba(255,255,255,.7);margin-bottom:3px}
.zo-sub{font-size:11px;color:rgba(255,255,255,.35);line-height:1.5}

/* ── MARQUEE ── */
.mband{background:var(--navy2);padding:22px 20px;overflow:hidden}
.mband-title{font-family:'Syne',sans-serif;font-size:9.5px;font-weight:700;letter-spacing:2px;color:rgba(255,255,255,.28);text-transform:uppercase;text-align:center;margin-bottom:16px}
.mouter{overflow:hidden;mask:linear-gradient(90deg,transparent,black 12%,black 88%,transparent);-webkit-mask:linear-gradient(90deg,transparent,black 12%,black 88%,transparent)}
.minner{display:flex;animation:scroll 20s linear infinite;width:max-content}
.mitem{padding:0 22px;font-family:'Syne',sans-serif;font-weight:600;font-size:12.5px;color:rgba(255,255,255,.3);letter-spacing:.8px;transition:color .2s}
.mitem:hover{color:rgba(255,255,255,.75)}

/* ── WHY ── */
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:0}
.wcard{background:var(--white);border-radius:15px;padding:18px 15px;box-shadow:var(--sh2);border:1px solid rgba(13,28,18,.04)}
.wcard.wide{grid-column:1/-1;display:flex;align-items:center;gap:14px}
.w-ico{font-size:26px;margin-bottom:9px}
.wcard.wide .w-ico{margin-bottom:0;font-size:30px;flex-shrink:0}
.w-num{font-family:'Syne',sans-serif;font-weight:800;font-size:24px;color:var(--green);letter-spacing:-1px;line-height:1;margin-bottom:4px}
.w-lbl{font-size:11px;color:var(--t2);line-height:1.4}
.wcard.wide .w-info .w-num{font-size:20px}

/* ── PROCESS ── */
.proc-section{background:var(--navy);padding:36px 20px}
.proc-section .eye-line,.proc-section .eye-txt{color:var(--g2) !important;background:var(--g2) !important}
.proc-section .stitle{color:#fff}
.proc-section .stitle em{color:var(--g2)}
.step{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px;position:relative}
.step:not(:last-child)::after{content:'';position:absolute;left:17px;top:36px;width:2px;height:calc(100% - 6px);background:rgba(255,255,255,.06)}
.step-n{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-weight:800;font-size:12px;color:var(--g2);flex-shrink:0}
.step-t{font-family:'Syne',sans-serif;font-weight:700;font-size:13.5px;color:#fff;margin-top:9px;margin-bottom:4px}
.step-d{font-size:11.5px;color:rgba(255,255,255,.4);line-height:1.6}

/* ── REVIEWS ── */
.rev-score{display:flex;align-items:center;gap:14px;background:var(--white);border-radius:15px;padding:17px;margin-bottom:11px;box-shadow:var(--sh2)}
.rs-big{font-family:'Syne',sans-serif;font-weight:800;font-size:40px;color:var(--navy);letter-spacing:-2px;line-height:1}
.rs-stars{color:#F59E0B;font-size:15px;letter-spacing:2px;margin-bottom:4px}
.rs-count{font-size:11px;color:var(--t3)}
.rcard{background:var(--white);border-radius:15px;padding:17px;margin-bottom:9px;box-shadow:var(--sh2);border:1px solid rgba(13,28,18,.04)}
.rhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}
.rname{font-family:'Syne',sans-serif;font-weight:700;font-size:13px;color:var(--navy)}
.rstars{color:#F59E0B;font-size:11.5px}
.rtext{font-size:12.5px;color:var(--t2);line-height:1.6;font-style:italic}
.rveh{display:inline-flex;align-items:center;gap:4px;background:var(--bg2);border-radius:6px;padding:3px 8px;font-size:10px;color:var(--t2);margin-top:8px}
.rdate{font-size:10px;color:var(--t3);margin-top:5px}

/* ── FINAL CTA ── */
.fcta{background:var(--green);padding:38px 20px;text-align:center;position:relative;overflow:hidden}
.fcta::before,.fcta::after{content:'';position:absolute;border-radius:50%}
.fcta::before{top:-50px;left:-50px;width:200px;height:200px;background:rgba(255,255,255,.07)}
.fcta::after{bottom:-40px;right:-40px;width:170px;height:170px;background:rgba(13,28,18,.1)}
.fcta h2{font-family:'Syne',sans-serif;font-weight:800;font-size:26px;color:#fff;letter-spacing:-1px;line-height:1.12;margin-bottom:9px;position:relative;z-index:2}
.fcta p{font-size:12.5px;color:rgba(255,255,255,.65);margin-bottom:26px;position:relative;z-index:2}
.btn-wh{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--green);font-family:'Syne',sans-serif;font-weight:800;font-size:13.5px;padding:15px 26px;border-radius:11px;text-decoration:none;box-shadow:0 4px 22px rgba(13,28,18,.14);transition:transform .15s,box-shadow .15s;position:relative;z-index:2}
.btn-wh:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(13,28,18,.2)}

/* ── FOOTER ── */
footer{background:var(--navy);padding:34px 20px 26px}
.flogo{font-family:'Syne',sans-serif;font-weight:800;font-size:19px;color:#fff;letter-spacing:-.5px;margin-bottom:9px}
.flogo em{font-style:normal;color:var(--g2)}
.ftagline{font-size:12px;color:rgba(255,255,255,.32);line-height:1.65;margin-bottom:26px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:26px}
.fcol h4{font-family:'Syne',sans-serif;font-size:9.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--g2);margin-bottom:13px}
.fcol ul{list-style:none}
.fcol li{margin-bottom:9px}
.fcol a{font-size:12.5px;color:rgba(255,255,255,.36);text-decoration:none;transition:color .2s}
.fcol a:hover{color:#fff}
.fbottom{border-top:1px solid rgba(255,255,255,.06);padding-top:18px;font-size:10.5px;color:rgba(255,255,255,.18);line-height:1.65}

/* ══════════════════════════════
   RESPONSIVE DESKTOP
══════════════════════════════ */
@media (min-width: 768px) {
  body { max-width: 100%; }
  
  .hero { padding: 60px 10% 0; }
  h1 { font-size: 52px; }
  .hero-sub { font-size: 16px; max-width: 520px; }
  
  .sim-wrap { max-width: 680px; margin: 24px auto 0; }
  
  .section { padding: 56px 10%; }
  
  /* Grid desktop pour les cartes */
  .cards-desktop {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
  }
  
  .zone-map .dep-grid { grid-template-columns: repeat(4, 1fr); }
  
  footer { padding: 48px 10% 32px; }
  .fgrid { grid-template-columns: repeat(3, 1fr); }
  
  .mband { padding: 28px 10%; }
  
  /* Nav desktop */
  nav { padding: 16px 8%; }
  .logo { font-size: 22px; }
}

@media (min-width: 1024px) {
  .hero { display: grid; grid-template-columns: 1fr 1fr; align-items: center; min-height: 80vh; padding-bottom: 60px; }
  .hero-stats { margin: 0; border-radius: 0 0 0 16px; }
  .sim-wrap { max-width: 800px; }
}
