
:root{--dark:#0b4934;--deep:#083b2a;--green:#168153;--lime:#b9e66a;--ink:#173d2e;--muted:#62796c;--line:#dce8de;--bg:#f5f9f4;--sidebar:244px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:linear-gradient(160deg,#10543b,#0b4632 62%,#073b2a);color:#e9f7ec;display:flex;flex-direction:column;padding:19px 16px 18px;z-index:5;box-shadow:5px 0 22px #002e1c14;overflow-y:auto;gap:16px}.brand{display:block}.brand img{display:block;width:100%;height:auto}.sidebar-intro{border-top:1px solid #ffffff2b;padding-top:18px}.mini-label,.contact-title{font-size:10px;font-weight:850;letter-spacing:1.7px;color:var(--lime)}.sidebar-intro h2{font-size:21px;line-height:1.19;margin:12px 0 8px;letter-spacing:-.4px;color:white}.sidebar-intro h2 em{font-style:normal;color:var(--lime)}.sidebar-intro p{font-size:12px;color:#d2e7d9;margin:0 0 15px}.side-action{display:flex;align-items:center;justify-content:space-between;gap:5px;background:var(--lime);color:#143b24;padding:11px 10px;border-radius:9px;font-size:11px;font-weight:800;margin:8px 0}.side-action-outline{background:#ffffff10;border:1px solid #ffffff65;color:#fff}.side-action:hover{filter:brightness(1.09)}.sidebar-trust{border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;padding:14px 0;display:grid;gap:8px;font-size:11px;color:#e4f5e7}.sidebar-trust div::first-letter{color:var(--lime)}.sidebar-bottom{margin-top:auto;font-size:11px;display:grid;gap:8px;overflow-wrap:anywhere}.sidebar-bottom a:hover{text-decoration:underline}.hours{color:#d3e8d8;line-height:1.65;border-top:1px solid #ffffff30;padding-top:10px}.verify{color:var(--lime);font-weight:750}
main{margin-left:var(--sidebar);min-width:0}.top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px clamp(18px,3%,44px);background:white;border-bottom:1px solid var(--line);min-height:76px}.top-brand{color:#0d5136;font-weight:900;font-size:17px;letter-spacing:.7px;line-height:1.2}.top-brand strong{color:#82b500}.top-brand small{display:block;color:#61816c;font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-top:5px}.top-nav{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.top-nav a,.top-nav button{border:1px solid transparent;background:transparent;color:#184631;padding:10px 13px;border-radius:9px;font-weight:750;font-size:12px;white-space:nowrap}.top-nav a:hover,.top-nav button:hover{background:#eaf5e6}.top-nav .client-top{background:var(--lime);border-color:#9cce54;color:#173e26;box-shadow:0 3px 0 #78a73e}.top-nav .client-top:hover{background:#c7ed86}
.hero{background:radial-gradient(circle at 76% 15%,#2d8560 0%,transparent 47%),linear-gradient(125deg,#0b4833,#176447);color:white;padding:28px clamp(18px,3%,44px);display:grid;grid-template-columns:1fr minmax(250px,.86fr);align-items:center;gap:28px;min-height:230px}.kicker{color:var(--lime);font-size:10px;letter-spacing:2px;font-weight:800}.hero h1{font-size:clamp(27px,3vw,43px);line-height:1.13;letter-spacing:-1px;margin:10px 0}.hero h1 em{font-style:normal;color:var(--lime)}.hero p{max-width:550px;color:#e1f2e7;font-size:13px;margin:0}.hero-logo img{display:block;width:100%;max-height:145px;object-fit:contain}.hero-logo{min-width:0}
.services{padding:34px clamp(18px,3%,44px) 48px}.eyebrow{color:var(--green);font-size:10px;letter-spacing:2px;font-weight:850}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.section-heading h2{font-size:clamp(24px,2.6vw,35px);letter-spacing:-1px;margin:6px 0}.section-heading p{color:var(--muted);margin:0;font-size:13px}.count{font-size:10px;letter-spacing:1.5px;white-space:nowrap;color:var(--green);font-weight:850}
.service-card{display:grid;grid-template-columns:minmax(180px,.68fr) minmax(310px,1.48fr) minmax(250px,1fr);background:white;border:1px solid var(--line);border-radius:19px;overflow:hidden;margin:17px 0;box-shadow:0 10px 30px #0a412015;transition:box-shadow .2s,transform .2s}.service-card:hover{box-shadow:0 15px 36px #0a412022;transform:none}.service-intro,.video-side,.price-side{padding:23px}.service-intro{background:linear-gradient(155deg,#edf7ed,#fbfefb)}.service-num,.side-label{font-size:10px;font-weight:850;letter-spacing:1.3px;color:#35855c}.service-icon{font-size:31px;margin:18px 0 6px}.service-intro h3{font-size:21px;line-height:1.19;margin:6px 0 12px}.service-intro p,.video-side p{font-size:12px;color:var(--muted);line-height:1.6}.custom-tag{display:inline-block;background:#def1d9;color:#326b3a;font-size:10px;font-weight:800;border-radius:30px;padding:7px 11px;margin-top:12px}.video-side{border-left:1px solid var(--line);border-right:1px solid var(--line)}.video-frame{position:relative;min-height:220px;margin-top:13px;background:radial-gradient(circle at 70% 25%,#278462,#0c4935 55%,#062e22);border-radius:13px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:white;gap:10px;text-align:center;padding:24px 12px 39px;overflow:hidden}.video-frame:before{content:'';position:absolute;inset:10px;border:1px solid #ffffff20;border-radius:8px;pointer-events:none}.video-frame .play{display:grid;place-items:center;width:61px;height:61px;border-radius:50%;border:2px solid #b9e66a;color:var(--lime);font-size:23px;padding-left:4px;background:#ffffff12;box-shadow:0 0 0 8px #ffffff09}.video-frame strong{font-size:15px;max-width:95%}.video-frame small{color:#cfe5d7;font-size:11px}.video-bottom{position:absolute;bottom:0;left:0;right:0;background:#001d1490;padding:9px 13px;text-align:left;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#e2f5e8}.video-side p{margin:10px 0 0}.price-side{background:linear-gradient(180deg,#fff,#fbfefb)}.price-side h4{font-size:19px;margin:15px 0 4px;line-height:1.25}.price-note{font-size:12px;color:var(--muted);margin:0 0 12px}.price-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.price-row b{white-space:nowrap;color:#206b45;background:#edf7e9;padding:5px 8px;border-radius:7px;font-size:11px}.quote{display:block;background:var(--lime);color:#193e28;border-radius:9px;text-align:center;font-size:12px;font-weight:850;padding:13px;margin-top:20px}.quote:hover{background:#c7ed86}
.custom{margin:0 clamp(18px,3%,44px) 45px;padding:28px;background:#e6f2df;border-radius:17px;display:flex;justify-content:space-between;align-items:center;gap:24px}.custom h2{margin:8px 0}.custom p{max-width:650px;color:var(--muted);margin:0}.primary{padding:13px 19px;border-radius:9px;display:inline-block;font-weight:800;font-size:13px;background:var(--lime);color:#17321e}.primary:hover{background:#c7ed86}.custom .primary{white-space:nowrap}footer{padding:24px clamp(18px,3%,44px);display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap;color:var(--muted);font-size:11px;border-top:1px solid var(--line)}footer button{border:0;background:transparent;color:var(--green);text-decoration:underline}
.modal{width:min(460px,calc(100vw - 30px));border:0;border-radius:18px;padding:32px;box-shadow:0 30px 100px #00180d70;color:var(--ink)}.modal::backdrop{background:#001c12b8}.modal form{display:grid;gap:16px}.modal .close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:28px;color:#557364}.modal h2{margin:0}.modal p{margin:0;color:var(--muted)}.modal label{font-size:12px;font-weight:750;display:grid;gap:6px}.modal input{padding:12px;border:1px solid #d4e2d5;border-radius:8px;background:#f4f7f4}.modal-icon{font-size:30px}.notice{padding:12px;background:#eff6e8;border-radius:9px;font-size:12px;color:#537052}.full{text-align:center}.phone-link{text-align:center;color:var(--green);font-size:13px;font-weight:700}
@media(max-width:1320px){.service-card{grid-template-columns:minmax(160px,.7fr) minmax(270px,1.35fr)}.price-side{grid-column:1/-1;border-top:1px solid var(--line)}.video-side{border-right:0}.top{align-items:flex-start;flex-direction:column;gap:10px}.top-nav{justify-content:flex-start}}
@media(max-width:850px){:root{--sidebar:0px}.sidebar{position:relative;width:auto;overflow:visible;gap:12px;padding:15px 20px}.brand{max-width:230px}.sidebar-intro{display:none}.sidebar-trust{display:flex;flex-wrap:wrap;gap:12px}.sidebar-bottom{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.sidebar-bottom .hours{border:0;padding:0}.top{flex-direction:row;align-items:center}.hero{grid-template-columns:1fr 1fr}.service-card{grid-template-columns:minmax(150px,.7fr) minmax(260px,1.4fr)}}
@media(max-width:650px){.top{flex-direction:column;align-items:flex-start}.top-nav{gap:4px}.top-nav a,.top-nav button{font-size:11px;padding:8px}.hero{grid-template-columns:1fr;padding:24px 18px}.hero-logo{max-width:430px}.services{padding:30px 15px}.count{display:none}.service-card{grid-template-columns:1fr}.price-side{grid-column:auto}.video-side{border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-intro,.video-side,.price-side{padding:20px}.custom{margin:0 15px 25px;display:block}.custom .primary{margin-top:18px}footer{padding:20px 15px}.sidebar-trust{font-size:10px}}

/* V3 — ajustements demandés : bannière d'abord, navigation ensuite, colonne gauche compacte */
:root{--sidebar:214px}
.sidebar{background:#10523b;padding:14px 13px 16px;gap:13px}
.brand{display:flex;justify-content:center;align-items:center;background:transparent;border:0;padding:0}
.brand img{width:166px;max-width:100%;mix-blend-mode:screen;filter:saturate(1.04);border:0;border-radius:0}
.sidebar-intro{padding-top:12px}
.sidebar-intro h2{margin:0 0 11px;font-size:20px}
.sidebar-intro .since{display:block;margin-bottom:12px}
.sidebar-intro p{margin-bottom:12px}
.side-action-project{background:var(--lime);border:0;color:#143b24}
.sidebar-bottom{gap:9px}
.sidebar-trust{border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;padding:12px 0;gap:7px;margin-top:2px}
.hero{background:radial-gradient(circle at 78% 12%,#2b8060 0%,transparent 52%),linear-gradient(115deg,#10553c,#1b6c4e);min-height:210px;padding-top:25px;padding-bottom:25px}
.top{min-height:58px;padding-top:9px;padding-bottom:9px;background:#f7faf6;border-bottom:1px solid var(--line)}
.top-brand{font-size:12px;letter-spacing:.2px}
.section-heading h2{margin-top:0}
@media(max-width:1320px){.top{flex-direction:row;align-items:center;gap:10px}.top-nav{justify-content:flex-end}}
@media(max-width:1050px){.top{flex-direction:column;align-items:flex-start}.top-nav{justify-content:flex-start}}
@media(max-width:850px){.brand{justify-content:flex-start}.sidebar-trust{display:grid}.sidebar-intro{display:block}.sidebar-bottom{display:grid}.hero{min-height:auto}}
@media(max-width:650px){.top{flex-direction:column;align-items:flex-start}.hero{grid-template-columns:1fr}}

/* V4 — transparence des identités et harmonisation des titres */
.brand img{width:151px;mix-blend-mode:normal;filter:none;object-fit:contain;max-height:112px}
.brand{overflow:visible;min-height:105px}
.hero-logo img{width:100%;max-height:180px;object-fit:contain}
.hero-logo{display:flex;align-items:center;justify-content:center}
.sidebar-intro{padding-top:9px}
.section-heading{justify-content:flex-start}
.section-heading h2{font-size:clamp(25px,2.7vw,37px);line-height:1.18;letter-spacing:-.8px}
.heading-accent{color:#529b2b}
@media(max-width:850px){.brand{min-height:auto}.brand img{max-height:95px}}


/* V5 : présentation plus proche de la maquette approuvée ; conserve le contenu V4 */
:root{--sidebar:244px;--lime:#c8f500;--dark:#064b33;--deep:#003d2b;--line:#d4e5d8;--bg:#f8fbf7}
body{background:var(--bg)}
.sidebar{background:linear-gradient(160deg,#07563b 0%,#003e2b 100%);padding:15px 17px 18px;gap:12px;box-shadow:4px 0 18px #00271818}
.brand{min-height:92px;justify-content:center;border-bottom:1px solid #d6f7dd25;padding-bottom:11px}
.brand img{width:148px;max-height:100px;object-fit:contain}
.sidebar-intro{border:0;padding-top:2px}
.sidebar-intro h2{font-size:22px;text-align:center;line-height:1.18;margin:4px 0 15px}
.sidebar-intro .since{text-align:center;font-size:11px;letter-spacing:2.1px;margin:0 0 25px;position:relative}
.sidebar-intro .since:before,.sidebar-intro .since:after{content:'';display:inline-block;width:24px;height:1px;background:var(--lime);vertical-align:middle;margin:0 7px}
.side-action{min-height:45px;padding:12px 13px;font-size:12px;border-radius:10px;box-shadow:0 3px 0 #7ca300;color:#13321d}
.side-action span{font-size:18px}
.sidebar-bottom{gap:10px;font-size:12px}
.contact-title{font-size:12px;letter-spacing:1.7px}
.sidebar-bottom>a:not(.verify){font-size:12px}
.hours{line-height:1.8}
.sidebar-trust{font-size:11.5px;gap:9px}
.verify{border:1.5px solid var(--lime);padding:10px 11px;border-radius:10px;text-align:center;margin-top:3px;color:var(--lime)}
.hero{position:relative;isolation:isolate;min-height:192px;padding:25px clamp(20px,3%,42px);grid-template-columns:minmax(330px,.9fr) minmax(370px,1.15fr);background:radial-gradient(ellipse at 65% -40%,#1c9160 0%,transparent 65%),linear-gradient(112deg,#03452f 0%,#086a45 72%,#034b32 100%);overflow:hidden}
.hero:before,.hero:after{content:'';position:absolute;pointer-events:none;z-index:-1;border-radius:50%;transform:rotate(-13deg)}
.hero:before{width:75%;height:95px;right:-11%;bottom:-48px;background:linear-gradient(0deg,#a8df03,#c8f500 45%,#459e19 70%,transparent 95%);opacity:.9}
.hero:after{width:78%;height:85px;right:-10%;bottom:-58px;background:#05643d;box-shadow:0 -7px 0 #94c80066}
.hero h1{font-size:clamp(27px,2.9vw,43px);margin:8px 0 10px;line-height:1.07}
.hero p{font-size:12px;max-width:520px}
.hero-identity{display:flex;align-items:center;justify-content:center;gap:22px;width:100%;min-width:0}
.hero-identity>img{width:24%;min-width:100px;max-width:165px;height:auto;max-height:135px;object-fit:contain}
.hero-separator{width:2px;height:105px;background:#e8f9e9aa;flex:none}
.hero-identity-copy{display:flex;flex-direction:column;min-width:0;white-space:nowrap}
.hero-identity-copy strong{color:var(--lime);font-size:clamp(22px,2.5vw,43px);font-weight:900;line-height:1.05;letter-spacing:.3px}
.hero-identity-copy span{font-size:clamp(17px,1.7vw,27px);letter-spacing:4px;color:white}
.hero-identity-copy small{border-top:2px solid var(--lime);padding-top:6px;margin-top:6px;color:#ecf8e8;font-style:italic;font-size:clamp(10px,1vw,15px);white-space:normal}
.top{min-height:58px;padding:9px clamp(20px,3%,42px);background:#f5f9f3}
.top-brand{font-size:10px;letter-spacing:1.2px}
.top-nav{gap:7px}.top-nav a,.top-nav button{font-size:12px;padding:9px 12px}
.top-nav .client-top{background:var(--lime);border-color:#b3d600}
.services{padding-top:28px}
.section-heading{text-align:center;justify-content:center;margin-bottom:26px}
.section-heading h2{display:flex;align-items:center;justify-content:center;gap:20px;font-size:clamp(26px,2.8vw,42px);letter-spacing:-1px;margin:0 0 10px;line-height:1.22}
.heading-rule{width:65px;height:4px;border-radius:3px;background:#80c800;flex:none}
.heading-accent{color:#5aa321}
.section-heading p{font-size:13px}
.service-card{grid-template-columns:minmax(195px,.75fr) minmax(380px,1.62fr) minmax(265px,1.06fr);border-radius:19px;box-shadow:0 7px 18px #0a412018,0 2px 4px #0a41200e;margin:18px 0;border-color:#c8ddce}
.service-intro,.video-side,.price-side{padding:22px}
.service-intro{position:relative;overflow:hidden;background:linear-gradient(140deg,#f5fbf3,#ffffff)}
.service-intro:after{content:'';position:absolute;width:125%;height:85px;background:linear-gradient(135deg,#e6f6d0,#c8ed8b);opacity:.42;bottom:-64px;left:10%;transform:rotate(-15deg);border-radius:50%}
.service-num{display:inline-block;padding:7px 16px;background:#064b33;color:white;border-radius:15px 3px 15px 3px;font-size:11px}
.service-icon{font-size:30px;background:#e2f7d1;width:60px;height:60px;display:grid;place-items:center;border-radius:17px;margin:19px 0 10px}
.service-intro h3{font-size:21px;color:#103d2a}
.service-intro p{font-size:12px}.custom-tag{position:relative;z-index:1}
.side-label{font-size:11px;color:#075339}
.video-frame{min-height:228px;border-radius:13px;background:radial-gradient(circle at 48% 34%,#0e7450,#043e2c 72%);border:1px solid #d0e6d6}
.video-frame:after{content:'';position:absolute;width:80%;height:80px;right:-20%;bottom:-40px;transform:rotate(-16deg);border-radius:50%;background:linear-gradient(#b9ef00,#27974a);opacity:.65;pointer-events:none}
.video-frame .play{width:66px;height:66px;border:3px solid var(--lime);font-size:25px;box-shadow:0 0 0 9px #ffffff0a;z-index:1;color:white}
.video-frame strong,.video-frame small{z-index:1}.video-bottom{z-index:2}
.price-side h4{background:#e7f5dc;border-radius:10px;padding:9px 11px;font-size:18px;margin:12px 0 7px}
.price-row{font-size:12px;padding:13px 0}.price-row b{border-radius:22px;background:#e5f4d8}
.quote{background:var(--lime);font-size:12px;border-radius:10px;box-shadow:0 2px 0 #9cbf00}
@media(max-width:1450px){.service-card{grid-template-columns:minmax(175px,.8fr) minmax(310px,1.4fr) minmax(245px,1fr)}.hero-identity-copy strong{font-size:clamp(21px,2.25vw,34px)}}
@media(max-width:1160px){.service-card{grid-template-columns:minmax(185px,.72fr) minmax(310px,1.4fr)}.price-side{grid-column:1/-1}.hero{grid-template-columns:1fr 1fr}.hero-identity>img{min-width:80px}.hero-identity{gap:12px}.hero-separator{height:80px}}
@media(max-width:850px){:root{--sidebar:0px}.sidebar{width:auto;position:relative}.brand{justify-content:flex-start}.sidebar-intro h2,.sidebar-intro .since{text-align:left}.hero{grid-template-columns:1fr}.hero-identity{justify-content:flex-start}.top{flex-direction:column;align-items:flex-start}.section-heading h2{flex-wrap:wrap}.heading-rule{width:30px}}
@media(max-width:650px){.service-card{grid-template-columns:1fr}.price-side{grid-column:auto}.hero-identity-copy strong{font-size:clamp(19px,6vw,30px)}.hero-identity-copy span{font-size:16px}.hero-identity>img{min-width:68px}.hero-separator{height:68px}.heading-rule{display:none}.section-heading h2{display:block}.sidebar-intro .since:before,.sidebar-intro .since:after{width:15px}}

/* V6 — bannière compacte intégrée, inspirée de la capture fournie */
.hero-v6{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:8px;min-height:120px;padding:13px clamp(20px,3%,42px) 10px;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(112deg,#03442f 0%,#075a3a 68%,#073e2c 100%)}
.hero-v6:before{content:"";position:absolute;inset:auto -10% 15px 16%;height:53px;border-top:5px solid #aaf000;border-radius:50% 50% 0 0;transform:rotate(-5deg);background:transparent;z-index:-1;box-shadow:0 -6px 0 #66aa1280;opacity:.95}
.hero-v6:after{content:"";position:absolute;right:-8%;top:-56px;width:48%;height:100px;transform:rotate(-8deg);border-radius:50%;border-bottom:15px solid #9fe600;box-shadow:0 11px 0 #397f16,0 20px 0 #0b6b3c;z-index:-1;opacity:.93}
.hero-v6-content{position:relative;z-index:1;max-width:760px}
.hero-v6 .kicker{font-size:11px;letter-spacing:1px;color:#c8f500}
.hero-v6 h1{font-size:clamp(20px,2vw,31px);line-height:1.14;letter-spacing:-.7px;margin:2px 0 0;white-space:normal;text-shadow:0 1px 3px #002b1b66}
.hero-v6-nav{position:relative;z-index:2;align-self:flex-end;gap:6px;flex-wrap:wrap}
.hero-v6-nav a,.hero-v6-nav button{color:#f4fff5;background:#002b1b33;border:1px solid #ffffff24;padding:7px 12px;border-radius:7px;font-size:11px;box-shadow:none}
.hero-v6-nav a:hover,.hero-v6-nav button:hover{background:#ffffff20}
.hero-v6-nav .client-top{color:#17391f;background:var(--lime);border-color:#b8d900;box-shadow:0 2px 0 #8bb000;font-weight:850}
.hero-v6-nav .client-top:hover{background:#d9ff43}
@media(max-width:1050px){.hero-v6-nav{align-self:flex-start}}
@media(max-width:650px){.hero-v6{min-height:135px;padding:15px}.hero-v6 h1{font-size:23px}.hero-v6-nav{gap:5px}.hero-v6-nav a,.hero-v6-nav button{font-size:10px;padding:7px 8px}}


/* V7 — fidelity pass to the two visual references, without changing application behavior */
:root{--sidebar:244px;--lime:#b9e66a;--bg:#f8faf8;--line:#d7e5dc}
.sidebar{background:linear-gradient(180deg,#003b29 0%,#003422 62%,#002d20 100%);padding:14px 17px 18px;gap:11px}
.brand{min-height:115px;padding:0 5px 13px;border-bottom:1px solid #c9f7d02b;overflow:visible}
.brand img{width:178px;max-height:none;height:auto;object-fit:contain;object-position:center;filter:none;mix-blend-mode:normal}
.sidebar-intro h2{font-size:21px;line-height:1.18}
.sidebar-intro .since{margin:4px 0 19px}
.side-action{min-height:44px;padding:9px 10px;display:flex;gap:7px;justify-content:space-between;box-shadow:0 3px 0 #88a900;font-size:11px;border-radius:10px}
.side-action .side-icon{font-size:20px;line-height:1;flex:none}
.side-action span:last-child{margin-left:auto;font-size:19px}
.sidebar-bottom{gap:9px;font-size:11.5px}
.contact-title{font-size:12px}
.sidebar-bottom .contact-link{display:flex;align-items:center;gap:9px;line-height:1.3;font-size:11px!important;white-space:nowrap}
.contact-link:before{display:inline-flex;align-items:center;justify-content:center;flex:none;width:18px;font-size:17px;color:var(--lime)}
.contact-phone:before{content:'☎'}
.contact-mail:before{content:'✉'}
.hours{position:relative;padding:12px 0 11px 27px;line-height:1.7;border-bottom:1px solid #ffffff30}
.hours:before{content:'◷';position:absolute;left:0;top:12px;color:var(--lime);font-size:21px}
.sidebar-trust{border-top:0;border-bottom:0;padding:3px 0;gap:8px;font-size:11px}
.sidebar-trust div{padding-left:21px;position:relative}
.sidebar-trust div:before{content:'✓';position:absolute;left:0;color:var(--lime);font-size:16px;font-weight:900;top:-3px}
.verify{border:2px solid var(--lime);border-radius:11px;font-size:11px;box-shadow:0 0 0 1px #b9e66a20;display:block}
.hero-v6{background:linear-gradient(110deg,#003b29,#065038 70%,#003c2b);min-height:132px}
.hero-v6:before{height:66px;right:-6%;bottom:13px;border-top:5px solid #b9e66a;box-shadow:0 -8px 0 #4aab1370;transform:rotate(-6deg)}
.hero-v6:after{border-bottom:17px solid #a8ef00}
.hero-v6 h1{font-size:clamp(22px,2.3vw,34px)}
.services{padding-top:24px}
.section-heading{margin-bottom:26px}
.section-heading h2{font-weight:850;font-size:clamp(28px,2.9vw,43px);color:#122d21;letter-spacing:-1.4px}
.heading-accent{color:#69b517}
.heading-rule{background:#8dc300}
.service-card{grid-template-columns:minmax(190px,.70fr) minmax(360px,1.48fr) minmax(265px,1fr);border-radius:20px;border:1px solid #d5e4d8;box-shadow:0 9px 20px #002b1d1b,0 2px 3px #002b1d10;margin:18px 0}
.service-intro,.video-side,.price-side{padding:19px 21px}
.service-intro{background:linear-gradient(135deg,#fff 65%,#f2fbe7)}
.service-intro:after{height:110px;bottom:-82px;left:2%;width:160%;transform:rotate(-13deg);background:linear-gradient(130deg,#effadf,#b5ef36);opacity:.7}
.service-num{position:relative;margin:-5px 0 9px -7px;padding:7px 21px;background:#06452f;color:#fff;clip-path:polygon(8% 0,100% 0,91% 100%,0 100%);border-radius:0;font-size:11px;letter-spacing:.7px}
.service-icon{width:55px;height:55px;font-size:27px;border-radius:15px;background:#d9f5a1;margin:8px 0 8px}
.service-intro h3{font-size:21px;line-height:1.15;margin:6px 0 9px;color:#132b20}
.service-intro p{color:#4d6054;line-height:1.55}
.custom-tag{background:#e0f8a9;color:#163a23;margin-top:8px}
.video-side{padding:17px 18px}
.side-label{font-size:11px;letter-spacing:.6px;color:#163e29;font-weight:900}
.video-side .side-label:before{content:'▶';color:#77bc18;margin-right:7px}
.video-frame{min-height:235px;margin-top:10px;background:radial-gradient(ellipse at 47% 34%,#1d8060 0%,#075138 55%,#003523 100%);border-radius:12px}
.video-frame:after{width:90%;height:100px;bottom:-48px;right:-25px;transform:rotate(-15deg);background:linear-gradient(0deg,#36a91c,#b9e66a);opacity:.95}
.video-frame .play{width:66px;height:66px;border:3px solid var(--lime);color:white;background:#083c2bc0;box-shadow:0 0 0 7px #b9e66a15}
.video-bottom{background:#001c15bd}
.price-side{padding:17px 19px;background:#fff}
.price-side .side-label:before{content:'◆';color:#91c900;margin-right:7px}
.price-side h4{background:#e7f5d5;border-radius:13px;padding:9px 12px;margin:11px 0 7px;color:#102b1d}
.price-row{padding:11px 0}
.price-row b{background:#e2f5ce;color:#174d2e}
.quote{background:var(--lime);border-radius:11px;padding:13px;margin-top:18px;color:#0a2719}
@media(max-width:1450px){.service-card{grid-template-columns:minmax(165px,.72fr) minmax(300px,1.4fr) minmax(240px,1fr)}}
@media(max-width:1160px){.service-card{grid-template-columns:minmax(185px,.72fr) minmax(310px,1.4fr)}.price-side{grid-column:1/-1}}
@media(max-width:850px){:root{--sidebar:0px}.brand{min-height:auto;justify-content:flex-start}.brand img{max-width:170px}.sidebar{position:relative;width:auto}}
@media(max-width:650px){.service-card{grid-template-columns:1fr}.price-side{grid-column:auto}.brand img{width:150px}}

/* V8 — reproduction HTML/CSS de la maquette validée, sans images factices */
:root{--sidebar:305px;--lime:#b9e66a;--bg:#f7f9f7}
.sidebar{padding:14px 17px 20px;background:linear-gradient(155deg,#003f2e,#002c20 85%);gap:12px}
.brand{min-height:116px;padding:0 8px 12px;border-bottom:0}
.brand img{width:215px;max-width:100%;max-height:118px;object-fit:contain}
.sidebar-intro{padding-top:0;border:0}
.sidebar-intro h2{font-size:23px;font-style:italic;line-height:1.2;text-align:center;margin:3px 0 8px}
.sidebar-intro h2 em{font-style:italic}
.sidebar-intro .since{font-size:15px;letter-spacing:1.5px;margin:8px 0 22px;text-align:center}
.sidebar-intro .since:before,.sidebar-intro .since:after{width:34px;background:#d9e9d6}
.side-action{min-height:52px;font-size:14px;font-weight:850;padding:10px 14px;border-radius:14px;margin:10px 0;background:linear-gradient(180deg,#c7ed86,#b9e66a);box-shadow:0 4px 0 #759b00;justify-content:flex-start}
.side-action .side-icon{font-size:27px;font-weight:900;width:30px}
.side-action span:last-child{font-size:24px}
.sidebar-bottom{margin-top:12px;gap:10px;font-size:13px}
.contact-title{font-size:17px;letter-spacing:1px}
.sidebar-bottom .contact-link{font-size:13px!important;gap:10px}
.contact-link:before{font-size:22px;width:25px}
.hours{font-size:12.5px;line-height:1.55;padding-left:32px}
.hours:before{font-size:25px}
.sidebar-trust{font-size:12.5px;gap:10px;padding:5px 0}
.sidebar-trust div{padding-left:26px}
.sidebar-trust div:before{font-size:22px;top:-6px}
.verify{font-size:13px;padding:13px 8px;border:2px solid var(--lime);border-radius:14px}
.hero-v6{min-height:139px;padding:16px 20px 14px 25px;background:linear-gradient(105deg,#003c2a,#00503a 72%,#003a29);justify-content:space-between}
.hero-v6 .kicker{font-size:14px;letter-spacing:1px}
.hero-v6 h1{font-size:clamp(23px,2.7vw,39px);font-style:italic;font-weight:900;transform:rotate(-2deg);transform-origin:left center;margin:7px 0 0}
.hero-v6 h1 em{font-style:italic}
.hero-v6:before{bottom:0;left:8%;right:-10%;height:58px;border-top:7px solid var(--lime);transform:rotate(-5deg);box-shadow:0 -10px 0 #6baf1480}
.hero-v6:after{top:-65px;right:-10%;width:57%;height:120px;border-bottom:17px solid #b9e66a;box-shadow:0 12px 0 #3a8d19,0 24px 0 #075a3c}
.hero-v6-nav{gap:10px;align-self:flex-end}
.hero-v6-nav a,.hero-v6-nav button{display:inline-flex;align-items:center;gap:8px;min-height:43px;padding:8px 15px;border-radius:13px;background:linear-gradient(#116d50,#003d2b);border:1px solid #ffffff35;font-size:13px;font-weight:800;box-shadow:0 3px 6px #00190e65;color:#fff}
.hero-v6-nav .client-top{background:linear-gradient(#c7ed86,#b9e66a);color:#10291c;border:1px solid #b0d900}
.nav-icon{font-size:20px;line-height:1}
.services{padding:24px clamp(16px,2%,34px) 48px}
.section-heading{margin-bottom:25px}
.section-heading h2{font-size:clamp(26px,3vw,47px);font-weight:900;color:#092e20;letter-spacing:-1.3px}
.heading-accent{color:#5eac13}
.heading-rule{width:90px;height:4px;border-radius:9px;background:#a5dc00}
.section-heading p{font-size:15px;color:#354a3e}
.service-card{grid-template-columns:minmax(225px,.85fr) minmax(390px,1.55fr) minmax(300px,1.14fr);margin:16px 0;border-radius:24px;border:1px solid #d4ddd7;box-shadow:0 10px 17px #001b1030,0 2px 3px #001b1020}
.service-intro,.video-side,.price-side{padding:17px 19px}
.service-intro{background:linear-gradient(160deg,#fff 72%,#e6f9cb);position:relative}
.service-intro:after{bottom:-81px;left:-14%;height:112px;width:155%;background:linear-gradient(130deg,#d8f6aa,#b9e66a);opacity:.8}
.service-num{background:linear-gradient(110deg,#003d2b 88%,#b9e66a 88%);font-size:13px;clip-path:polygon(9% 0,100% 0,93% 100%,0 100%);padding:7px 25px;margin:-5px 0 9px -7px}
.service-icon{background:#d9fa96;border-radius:15px;width:62px;height:62px;font-size:30px;margin:10px 0}
.service-intro h3{font-size:22px;font-weight:850;margin:5px 0 9px}
.service-intro p{font-size:12.5px;line-height:1.5}
.custom-tag{background:#dfff9c;color:#0b361f;font-size:12px;padding:8px 12px;font-weight:800}
.video-side{padding:17px 17px 16px}
.side-label{font-size:13px;letter-spacing:.15px;font-weight:900;color:#082d1d}
.video-frame{min-height:226px;margin-top:10px;border-radius:14px;background:radial-gradient(ellipse at 45% 24%,#116e4c,#003e2b 70%);padding-bottom:46px}
.video-frame:after{right:-30%;bottom:-34px;width:100%;height:100px;background:linear-gradient(180deg,#b9e66a,#31a92b);transform:rotate(-17deg);opacity:.85}
.video-frame .play{height:73px;width:73px;border:4px solid #b9e66a;font-size:28px;box-shadow:0 0 0 6px #b9e66a1c}
.video-frame strong{font-size:17px;max-width:75%;line-height:1.3;text-shadow:0 2px 3px #00180f}
.video-frame small{display:none}
.video-bottom{font-size:11px;letter-spacing:0;padding:9px 12px;align-items:center;background:#00190fe8}
.video-progress{height:4px;flex:1;margin:0 15px;border-radius:5px;background:linear-gradient(to right,#fff 12%,#b8d3c7 12%)}
.price-side{padding:17px 19px}
.price-side h4{font-size:19px;font-weight:900;background:#e8f7c9;border-radius:14px;padding:7px 10px;margin:10px 0 5px}
.price-note{font-size:11.5px;margin:0 0 4px}
.price-row{padding:9px 0;font-size:12px;gap:8px}
.price-row>span{display:flex;align-items:center;gap:10px}
.price-icon{font-size:21px;line-height:1;font-style:normal;color:#147332;width:23px;text-align:center;font-weight:900}
.price-row b{background:#e1f6b7;border-radius:18px;color:#1c3e20;padding:5px 10px;font-size:11px}
.quote{border-radius:15px;font-size:13px;padding:12px 6px;margin-top:13px;background:linear-gradient(#c7ed86,#bffa00);color:#071f12}
@media(max-width:1450px){:root{--sidebar:265px}.brand img{width:185px}.service-card{grid-template-columns:minmax(195px,.8fr) minmax(320px,1.45fr) minmax(265px,1fr)}.hero-v6-nav a,.hero-v6-nav button{font-size:11px;padding:7px 10px}}
@media(max-width:1200px){.service-card{grid-template-columns:minmax(190px,.8fr) minmax(320px,1.45fr)}.price-side{grid-column:1/-1;border-top:1px solid var(--line)}.hero-v6-nav{align-self:flex-start}}
@media(max-width:850px){:root{--sidebar:0px}.sidebar{position:relative;width:auto;overflow:visible}.brand{min-height:auto;justify-content:flex-start}.sidebar-intro h2{text-align:left}.sidebar-intro .since{text-align:left}.sidebar-bottom{margin-top:10px}.hero-v6{min-height:180px}.service-card{grid-template-columns:minmax(190px,.8fr) minmax(290px,1.4fr)}}
@media(max-width:650px){.service-card{grid-template-columns:1fr}.price-side{grid-column:auto}.hero-v6-nav a,.hero-v6-nav button{font-size:11px;padding:8px}.hero-v6 h1{font-size:24px}.section-heading h2{font-size:29px}.heading-rule{display:none}}

/* V9 — retouches limitées validées et navigation fonctionnelle */
.sidebar{overflow-y:auto}.sidebar-intro{flex-shrink:0}.sidebar-bottom{margin-top:auto;padding-top:30px;gap:12px}.verify{margin-top:10px}.sidebar-trust div{font-size:13px}.sidebar-trust div::first-letter{color:inherit}.sidebar-trust div:before{content:'✓';font-size:21px;top:-5px}.sidebar-bottom .contact-link,.hours{font-size:13px!important}.side-action{width:100%;border:0;text-align:left;min-height:52px;gap:9px}.side-action>span:nth-child(2){flex:1}.icon-svg,.side-icon,.nav-icon,.menu-icon,.price-icon,.tag-icon,.quote-icon{width:21px;height:21px;display:inline-block;vertical-align:middle;flex-shrink:0}.side-icon{width:25px;height:25px}.chevron-icon{width:18px;height:18px;transition:transform .2s}.side-action[aria-expanded=true] .chevron-icon{transform:rotate(180deg)}.action-arrow{font-size:23px}.solutions-menu{background:#002d20;border:1px solid #b9e66a70;border-radius:12px;padding:7px;margin:0 0 11px}.solutions-menu[hidden]{display:none}.solutions-menu a{display:flex;gap:10px;align-items:center;padding:9px 7px;color:#f2ffed;border-radius:7px;font-size:12px;font-weight:650}.solutions-menu a:hover,.solutions-menu a:focus-visible{background:#b9e66a24;color:#c7ed86}.menu-icon{width:19px;height:19px;color:#c7ed86}.nav-icon{width:19px;height:19px}.hero-v6-nav{gap:10px}.hero-v6-nav a,.hero-v6-nav button{font-size:13px!important;min-height:47px;padding:10px 15px!important;border:1px solid #a3e88e8a;box-shadow:0 3px 8px #001b1390}.hero-v6-nav a:hover,.hero-v6-nav button:hover{transform:translateY(-1px);filter:brightness(1.15)}.service-card{scroll-margin-top:20px}.service-icon{display:grid;place-items:center;color:#07552f}.service-icon svg{width:36px;height:36px}.custom-tag{display:inline-flex;align-items:center;gap:6px;box-shadow:none;cursor:default}.tag-icon{width:15px;height:15px}.video-frame{background:radial-gradient(ellipse at 45% 25%,#176d4f,#003d2c 73%)}.video-frame:after{opacity:.25}.video-frame:before{background:linear-gradient(150deg,transparent 48%,#60b33c0b 60%,transparent 75%)}.price-note{font-size:13px}.price-row{font-size:14px;font-weight:700;padding:10px 0}.price-row b{font-size:12px}.price-icon{color:#0b713e;width:23px;height:23px}.quote{border:0;width:100%;display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px}.quote-icon{width:19px;height:19px}.custom{display:none}
.project-dialog{width:min(760px,calc(100vw - 26px));max-height:min(91vh,940px);border:1px solid #c8e3cc;border-radius:20px;padding:0;background:#fbfefb;color:#163c2a;box-shadow:0 25px 80px #001d14a0}.project-dialog::backdrop{background:#001b13b8;backdrop-filter:blur(3px)}.project-head{background:linear-gradient(120deg,#003e2b,#116b4c);color:#fff;padding:24px 30px 20px;display:flex;justify-content:space-between;gap:12px}.project-kicker{color:#c7ed86;font-size:11px;font-weight:850;letter-spacing:1.5px}.project-head h2{margin:6px 0;font-size:28px}.project-head p{margin:0;color:#dceee2;font-size:14px}.project-close{align-self:flex-start;border:1px solid #ffffff50;background:#ffffff16;color:white;border-radius:10px;font-size:25px;width:37px;height:37px}.wizard-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:18px 28px 8px}.step{display:grid;justify-items:center;gap:5px;color:#809388}.step span{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#e5eee7;font-size:12px;font-weight:900}.step small{font-size:10px}.step.active span,.step.done span{background:#b9e66a;color:#173c21}.step.active{color:#164f32;font-weight:900}#projectForm{padding:10px 30px 15px}#wizardContent{max-height:48vh;overflow-y:auto;padding:0 4px 8px 0}#wizardContent h3{font-size:21px;margin:8px 0}#wizardContent p{font-size:13px;color:#63766a;margin:4px 0 16px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 19px}.choice{display:flex;align-items:center;gap:9px;background:#f0f8ec;border:1px solid #d9e9d7;border-radius:9px;padding:10px;font-size:13px;font-weight:650;cursor:pointer}.choice:has(input:checked){background:#e2f8b7;border-color:#a3d52d}.choice input,.consent input{accent-color:#388d28;width:16px;height:16px;flex-shrink:0}.form-field{display:grid;gap:6px;margin:12px 0;font-size:13px;font-weight:750}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #c8ddcb;background:white;border-radius:9px;padding:11px 12px;font-size:14px;color:#173d2e;resize:vertical}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:2px solid #b9e66a}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}.consent{display:flex;gap:10px;font-size:12px;line-height:1.5;margin:14px 0}.wizard-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:14px;border-top:1px solid #e2ece3}.wizard-actions button{padding:11px 19px;border-radius:10px;font-weight:800;font-size:13px}.wizard-secondary{border:1px solid #cad9ce;background:white;color:#315c42}.wizard-secondary:disabled{opacity:.4;cursor:default}.wizard-primary{border:0;background:#b9e66a;color:#12351f}.wizard-actions span{font-size:12px;color:#6a8271}.form-footnote{font-size:11px;color:#698071;padding:0 30px 20px;margin:0}.privacy-hint{font-size:12px!important}.sidebar-bottom .verify{margin-bottom:0}
@media(max-width:1450px){.hero-v6-nav a,.hero-v6-nav button{font-size:11px!important;padding:8px 10px!important}}@media(max-width:850px){.sidebar-bottom{margin-top:15px;padding-top:10px}.hero-v6-nav{flex-wrap:wrap}.project-dialog{max-height:95vh}}@media(max-width:520px){.wizard-steps{padding:12px;gap:2px}.step small{font-size:8px}.project-head{padding:18px}.project-head h2{font-size:23px}#projectForm{padding:10px 16px}.choice-grid,.form-grid{grid-template-columns:1fr}.form-footnote{padding:0 16px 16px}.hero-v6-nav a,.hero-v6-nav button{font-size:10px!important}}

/* V10 — icônes raffinées, accordéon de services, fermeture type déconnexion */
.solutions-menu a{font-size:12.5px;gap:10px;padding:8px 6px;transition:background .18s ease,transform .18s ease}
.solutions-menu a:hover{transform:translateX(2px)}
.menu-icon-shell{display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;border:1px solid #b9e66a40;border-radius:9px;background:linear-gradient(145deg,#125c42,#06432f);color:#c7ed86}
.menu-icon-shell .menu-icon{width:19px;height:19px}
.project-close{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;border:1px solid #c7ff6599;border-radius:12px;background:#063827;color:#b9e66a;cursor:pointer;transition:background .18s,transform .18s,box-shadow .18s}
.project-close:hover,.project-close:focus-visible{background:#14583e;transform:translateX(2px);box-shadow:0 0 0 3px #b9e66a2b;outline:none}
.project-close svg{width:24px;height:24px}
.service-accordion{display:grid;gap:9px;margin:12px 0 17px}
.service-group{border:1px solid #d4e5d3;border-radius:12px;background:#f6fbf4;overflow:hidden}
.service-group[open]{border-color:#b3d980;background:#fbfef8}
.service-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:11px;padding:12px 14px;font-weight:800;font-size:14px;color:#174b32}
.service-group summary::-webkit-details-marker{display:none}
.service-group summary:hover{background:#ecf7df}
.service-group-icon{display:grid;place-items:center;width:35px;height:35px;flex:0 0 35px;border-radius:10px;background:#e2f5bf;color:#17603b}
.service-group-icon svg{width:20px;height:20px}
.group-count{margin-left:auto;font-size:11px;color:#317141;white-space:nowrap}
.group-chevron{display:grid;place-items:center;color:#3d7150}
.group-chevron svg{width:18px;height:18px;transition:transform .2s}
.service-group[open] .group-chevron svg{transform:rotate(180deg)}
.service-group-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 12px 13px}
.wizard-question-block{margin-top:18px;border-top:1px solid #dfebdf;padding-top:12px}
.wizard-question-block h4{font-size:16px;margin:5px 0;color:#174b32}
.wizard-question-block p{margin:0 0 10px!important;line-height:1.5}
@media(max-width:540px){.service-group-options{grid-template-columns:1fr}.service-group summary{font-size:12px}.group-count{font-size:10px}}

/* V12 : catégories plus lisibles, homogènes et volontairement fermées au départ. */
.service-accordion{gap:10px}
.service-group{background:#e2efdc;border:1.5px solid #9cbea0;box-shadow:0 1px 2px rgba(9,68,44,.07);transition:background .18s,border-color .18s,box-shadow .18s}
.service-group[open]{background:#edf6e8;border-color:#5e9b69;box-shadow:0 3px 12px rgba(9,68,44,.09)}
.service-group summary{color:#0b422d;font-size:14px;min-height:64px;gap:13px;padding:11px 14px}
.service-group summary:hover,.service-group summary:focus-visible{background:#d3e9c9;outline:none}
.service-group summary:focus-visible{box-shadow:inset 0 0 0 2px #277e50}
.service-group-icon{width:39px;height:39px;flex-basis:39px;background:#c3e5a5;border:1px solid #a8d18e;color:#064c33;border-radius:10px}
.service-group-icon svg{width:23px;height:23px;stroke-width:1.85}
.group-chevron{color:#11553b}
.group-count{color:#185f3d;font-weight:750;background:#d1e9c4;padding:3px 8px;border-radius:100px}
.service-group-options{padding:7px 13px 14px;border-top:1px solid #bdd7b9}
@media(max-width:540px){.service-group summary{font-size:13px;padding:10px 11px;min-height:60px}.service-group-icon{width:36px;height:36px;flex-basis:36px}}

/* V14 — bulle uniquement lors d'une tentative de passage prématurée. */
.wizard-actions{position:relative}
.wizard-scroll-popover{position:absolute;right:0;bottom:calc(100% + 12px);z-index:12;width:min(350px,90%);display:flex;align-items:flex-start;gap:10px;background:#fffdf1;border:1px solid #e4c86a;color:#493e18;box-shadow:0 9px 25px #12351f30;border-radius:12px;padding:13px 14px;font-size:12px;font-weight:650;line-height:1.5}
.wizard-scroll-popover[hidden]{display:none}
.wizard-scroll-popover::after{content:"";position:absolute;right:33px;bottom:-7px;width:12px;height:12px;background:#fffdf1;border-right:1px solid #e4c86a;border-bottom:1px solid #e4c86a;transform:rotate(45deg)}
.scroll-alert-symbol{flex:0 0 21px;width:21px;height:21px;display:grid;place-items:center;background:#ffe59b;border-radius:50%;color:#6c4d00;font-size:14px;font-weight:900}
.wizard-primary{cursor:pointer}

/* V17 : espace d'accueil à la place du doublon de navigation, non interactif. */
.top-nav .welcome-rotator{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:170px;max-width:230px;min-height:39px;padding:8px 13px;border:1px solid rgba(188,246,44,.65);border-radius:13px;color:#e5ffbd;background:rgba(2,57,40,.35);font-size:12px;font-weight:750;text-align:center;cursor:default;user-select:none;box-sizing:border-box}
.welcome-rotator .nav-icon{flex:none;color:#b9e66a}
.welcome-text{display:block;transition:opacity .3s ease;line-height:1.2}
.welcome-text.is-changing{opacity:0}
@media(prefers-reduced-motion:reduce){.welcome-text{transition:none}}
/* Validation accessible de la dernière étape */
.contact-error{margin:9px 0 2px;color:#9b2b21;font-size:13px;font-weight:700;background:#fff2ef;border:1px solid #e8b2a7;border-radius:9px;padding:10px 12px}
.contact-error[hidden]{display:none}

/* V18 — fenêtre de récapitulatif sans alerte navigateur */
.email-preview-dialog{width:min(690px,calc(100vw - 28px));max-height:min(90vh,850px);padding:0;border:1px solid #a4c9ac;border-radius:20px;background:#f9fcf9;color:#173e30;box-shadow:0 22px 75px #001e1880;overflow:auto}
.email-preview-dialog::backdrop{background:#001c17b8;backdrop-filter:blur(3px)}
.email-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;background:linear-gradient(110deg,#004832,#106448);padding:24px 26px;color:#fff}
.email-preview-head h2{font-size:25px;margin:8px 0}.email-preview-head p{font-size:14px;line-height:1.55;margin:0;color:#e2f4e8;max-width:530px}
.email-preview-head .project-close{flex:none}
.email-preview-body{padding:23px 26px 14px}.email-preview-body label{display:block;font-size:14px;font-weight:750;margin-bottom:10px}
.email-preview-body textarea{box-sizing:border-box;display:block;width:100%;height:min(38vh,310px);resize:vertical;border:1px solid #bbd3c0;border-radius:12px;padding:15px;background:white;color:#153d2e;font:13px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace}
.email-preview-status{font-size:13px;line-height:1.55;color:#315e46;margin:12px 0 0}
.email-preview-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;padding:15px 26px 25px}
.email-preview-actions a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
@media(max-width:540px){.email-preview-head,.email-preview-body{padding:18px}.email-preview-actions{padding:12px 18px 20px}.email-preview-actions>*{flex:1 1 100%}}

/* V19 : dimensions immuables de l'espace d'accueil, horloge après trois messages. */
.top-nav .welcome-rotator{width:260px;min-width:260px;max-width:260px;height:46px;min-height:46px;max-height:46px;flex:0 0 260px;overflow:hidden;padding:5px 10px;gap:7px}
.welcome-rotator .nav-icon{width:17px;height:17px;flex:0 0 17px}
.welcome-rotator .welcome-text{min-width:0;max-width:100%;font-size:11px;line-height:1.18;white-space:normal;overflow-wrap:normal;text-wrap:balance}
.welcome-rotator.showing-clock .welcome-text{font-size:18px;font-variant-numeric:tabular-nums;letter-spacing:1px}
@media(max-width:650px){.top-nav .welcome-rotator{width:260px;min-width:0;max-width:100%;flex:0 1 260px}}

/* V21 — retours d'envoi, sans modification de la charte V20 */
.anti-bot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.send-status{margin:12px 24px;padding:12px 15px;border-radius:10px;background:#fff0ed;border:1px solid #dfafa8;color:#842b20;font-size:13px;font-weight:700}
.send-status.success{background:#edf9e8;border-color:#a8d59a;color:#145633}
.send-status[hidden]{display:none}

/* V24 — bannière complète toujours visible pendant le défilement.
   Le menu latéral et le questionnaire restent inchangés. */
.hero-v6 {
  position: sticky;
  top: 0;
  z-index: 4;
}
/* Les ancres de services ne doivent pas être masquées par la bannière. */
.service-card { scroll-margin-top: 165px; }
@media (max-width: 850px) {
  .service-card { scroll-margin-top: 215px; }
}
@media (max-width: 650px) {
  .service-card { scroll-margin-top: 245px; }
}

/* Correctif cartes : aucune animation, aucun déplacement ni changement d'ombre au survol. */
.service-card,
.service-card:hover,
.service-card:focus-within {
  transform: none !important;
  transition: none !important;
  animation: none !important;
  box-shadow: 0 10px 30px #0a412015 !important;
}

/* V27 : accueil personnalisé, sans modification des cartes ni de la bannière V26. */
.v27-settings{position:fixed;right:14px;bottom:14px;z-index:1000;background:#064b35;color:#e8ffbd;border:1px solid #b9e66a;border-radius:12px;padding:9px 13px;font:600 12px inherit;cursor:pointer;box-shadow:0 3px 14px #0003}
.v27-panel{position:fixed;right:14px;bottom:62px;z-index:1001;box-sizing:border-box;width:min(360px,calc(100vw - 28px));background:#fff;color:#17392c;border:2px solid #17734b;border-radius:15px;padding:20px;box-shadow:0 12px 35px #0004;font-family:inherit}
.v27-panel h2{font-size:18px;margin:0 24px 10px 0;color:#064b35}.v27-panel p{font-size:13px;line-height:1.5;margin:0 0 12px}.v27-panel label{display:block;font-size:13px;font-weight:700;margin-bottom:5px}.v27-panel input{box-sizing:border-box;width:100%;padding:10px;border:1px solid #859f94;border-radius:8px;font:inherit}.v27-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.v27-actions button{border:1px solid #789e8d;border-radius:8px;padding:8px 10px;background:#fff;color:#064b35;cursor:pointer;font-size:12px}.v27-actions .v27-primary{background:#086a47;color:white;border-color:#086a47}.v27-close{position:absolute;right:12px;top:9px;border:0;background:transparent;color:#064b35;font-size:25px;cursor:pointer}.v27-toast{position:fixed;right:14px;bottom:65px;z-index:1002;max-width:min(360px,calc(100vw - 28px));box-sizing:border-box;padding:15px 18px;background:#064b35;color:#fff;border:1px solid #b9e66a;border-radius:12px;box-shadow:0 8px 25px #0004;font-size:14px}
@media(prefers-reduced-motion:reduce){.v27-toast,.v27-panel{animation:none}}

/* V28 — signature discrète sous le logo et accès aux préférences intégré à la barre latérale. */
.sidebar-intro{padding-top:7px}
.sidebar-signature{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;margin:0 0 19px;color:#e6f3e9;font-size:12px;line-height:1.35;font-weight:600;letter-spacing:.05px}
.sidebar-signature em{font-style:normal;color:#d4f58d}
.sidebar-signature small{font-size:9px;letter-spacing:1.15px;text-transform:uppercase;color:#b7d4bd;font-weight:700}
.sidebar-intro .side-action{margin:11px 0}
.sidebar-intro .v27-settings{position:static;display:block;width:100%;margin:15px 0 2px;padding:6px 4px;background:transparent;color:#d2ebd6;border:0;border-radius:6px;box-shadow:none;font-family:inherit;font-size:11px;font-weight:600;text-align:center;text-decoration:underline;text-decoration-color:#8cbd94;text-underline-offset:4px;cursor:pointer}
.sidebar-intro .v27-settings:hover,.sidebar-intro .v27-settings:focus-visible{color:#d7edb0;background:#ffffff12}
@media(max-width:850px){.sidebar-signature{align-items:flex-start;text-align:left;margin-bottom:15px}.sidebar-intro .v27-settings{text-align:left}}

/* V29 — signature rapprochée du logo, message de bienvenue temporaire et préférences discrètes. */
.sidebar .brand{padding-bottom:0;min-height:0;margin-bottom:0}
.sidebar .brand img{display:block}
.sidebar .sidebar-intro{padding-top:0}
.sidebar .sidebar-signature{margin-top:2px;margin-bottom:17px;gap:2px;font-size:11px}
.sidebar .sidebar-signature small{font-size:9px}
.v29-greeting{box-sizing:border-box;width:100%;margin-top:15px;padding:12px 10px;border-radius:14px;background:linear-gradient(180deg,#c7ed86,#b9e66a);color:#173c20;font-size:13px;font-weight:800;line-height:1.4;text-align:center;box-shadow:0 4px 0 #759b00}
.v29-greeting[hidden]{display:none!important}
.v29-preferences{position:relative;flex-shrink:0;margin-top:12px;align-self:stretch}
.v29-settings{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;background:transparent;border:1px solid #81b18b55;border-radius:9px;color:#d5e9d7;font:600 11px inherit;cursor:pointer}
.v29-settings:hover,.v29-settings:focus-visible{background:#ffffff15;color:#d7edb0}
.v29-preferences-menu{position:relative;margin-top:6px;padding:5px;background:#003224;border:1px solid #8bbf75;border-radius:10px}
.v29-preferences-menu[hidden]{display:none!important}
.v29-preference-action{width:100%;padding:10px 8px;text-align:left;background:transparent;border:0;color:#e8f7e8;font:600 12px inherit;cursor:pointer;border-radius:7px}
.v29-preference-action:hover,.v29-preference-action:focus-visible{background:#ffffff19}
@media(max-width:850px){.sidebar .sidebar-signature{align-items:center;text-align:center}.v29-preferences{margin-top:12px}}

/* V30 — boutons vert tendre, roue seule dans la navigation supérieure. */
.sidebar .side-action,
.sidebar .side-action-project,
.v29-greeting{background:#b9e66a;color:#173c25;box-shadow:0 3px 0 #78a73e}
.sidebar .side-action:hover,.sidebar .side-action:focus-visible{background:#c7ed86;filter:none}
.v29-preferences{position:relative;align-self:auto;flex-shrink:0;margin:0;display:flex;align-items:center;z-index:15}
.hero-v6-nav .v29-settings{display:grid;place-items:center;width:43px;height:43px;min-height:43px;padding:0!important;border:1px solid #a3e88e8a;border-radius:12px;background:#064b35;color:#e5f5e5;box-shadow:0 3px 8px #001b1390;cursor:pointer}
.hero-v6-nav .v29-settings:hover,.hero-v6-nav .v29-settings:focus-visible{background:#126b4b;color:#fff}
.v29-settings svg{width:20px;height:20px}
.v29-preferences-menu{position:absolute;right:0;top:calc(100% + 9px);width:215px;margin:0;padding:7px;background:#003d2b;box-shadow:0 12px 30px #001c1599;z-index:20}
@media(max-width:850px){.v29-preferences{margin:0;align-self:auto}.hero-v6-nav .v29-settings{width:40px;height:40px;min-height:40px}}

/* V31 — palette vert tendre uniforme et accueil à la place des deux boutons. */
:root{--lime:#b9e66a}
.sidebar .side-action,.sidebar .side-action-project,.hero-v6-nav .client-top,.quote,.wizard-primary,.step.active span,.step.done span{background:#b9e66a!important;color:#173c25!important;box-shadow:0 3px 0 #78a73e}
.sidebar .side-action:hover,.sidebar .side-action:focus-visible,.hero-v6-nav .client-top:hover,.quote:hover{background:#c7ed86!important;filter:none}
.v31-actions-slot{position:relative;min-height:153px}
.v31-actions-slot>.side-action{transition:opacity .15s ease,visibility .15s ease}
.v31-actions-slot.v31-welcoming>.side-action{opacity:0;visibility:hidden;pointer-events:none}
.v31-greeting{position:absolute;inset:0 0 auto 0;min-height:145px;display:flex;align-items:center;justify-content:center;padding:16px;border-radius:14px;background:#b9e66a;color:#173c25;box-shadow:0 3px 0 #78a73e;text-align:center;font-size:15px;font-weight:800;line-height:1.5;opacity:1;transition:opacity 5s linear;z-index:2}
.v31-greeting[hidden]{display:none!important}
.v31-actions-slot.v31-fading .v31-greeting{opacity:0}
@media(prefers-reduced-motion:reduce){.v31-greeting{transition:none}}
@media(max-width:850px){.sidebar .sidebar-intro{display:block}.v31-actions-slot{max-width:340px}}
