:root{--cream:#f3efe5;--sage:#a9b59b;--forest:#183b2b;--deep:#10291f;--ink:#1d2923;--white:#fff;--line:#d9ddcf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Playfair Display',serif;font-weight:500}a{color:inherit;text-decoration:none}header{height:84px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(243,239,229,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(24,59,43,.08)}.brand{display:flex;align-items:center;gap:11px;letter-spacing:.12em;font-size:14px}.brand b{color:#547052}.mark{width:35px;height:35px;border:1.5px solid var(--forest);display:grid;place-items:center;border-radius:50%;font-size:24px;color:#547052}nav{display:flex;align-items:center;gap:28px;font-size:13px}nav>a:not(.btn):hover{color:#547052}.btn{display:inline-block;background:var(--forest);color:white;border:0;padding:16px 24px;text-transform:uppercase;letter-spacing:.09em;font:600 11px 'DM Sans';cursor:pointer}.btn.small{padding:13px 18px}.menu{display:none;background:none;border:0;font-size:24px}.hero{height:calc(100vh - 84px);min-height:650px;position:relative;color:white}.hero>img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,28,19,.62),rgba(8,28,19,.08) 70%)}.hero-copy{position:absolute;left:8vw;top:50%;transform:translateY(-50%);max-width:700px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:600;color:#70816a;margin-bottom:20px}.hero .eyebrow{color:#dce3d6}.hero h1{font-size:clamp(54px,6vw,88px);line-height:.98;margin-bottom:24px}.hero-copy>p:not(.eyebrow){font-size:16px;letter-spacing:.08em;margin-bottom:34px}.ghost{margin-left:14px;border-bottom:1px solid white;padding:15px 3px;text-transform:uppercase;letter-spacing:.09em;font-size:11px}.intro{padding:110px 8vw;text-align:center;max-width:1050px;margin:auto}.intro h2,.section-head h2,.about h2,.quote h2,.before h2,.technical h2{font-size:clamp(38px,4vw,58px);line-height:1.08}.intro h2 em,.quote h2 em{font-weight:400;color:#718268}.intro>p:not(.eyebrow){max-width:690px;margin:28px auto;line-height:1.8;color:#536057}.zones{margin-top:44px;padding-top:25px;border-top:1px solid var(--line);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.zones i{color:#7d9276;margin:0 12px}.services{padding:100px 8vw;background:#e6e8dc}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.section-head>p{max-width:380px;color:#5e695f;line-height:1.7}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c7ccbe}.service-grid article{padding:35px 28px 35px 0;border-right:1px solid #c7ccbe;min-height:300px}.service-grid article+article{padding-left:28px}.service-grid article:last-child{border-right:0}.service-grid span{font-family:'Playfair Display';color:#81917a}.service-grid h3{font-family:'Playfair Display';font-size:26px;font-weight:500;margin-top:50px}.service-grid p{line-height:1.65;color:#5e695f;font-size:14px}.service-grid .tax b{display:block;color:#41633d;margin-top:20px}.service-grid small{display:block;font-size:10px;line-height:1.4;margin-top:8px;color:#65705f}.projects{background:var(--deep);color:white;padding:105px 8vw}.light .eyebrow{color:#a9ba9e}.light>p{color:#aeb8b0}.project-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.project{position:relative;height:380px;overflow:hidden}.project.big{grid-row:span 2;height:778px}.project img{width:100%;height:100%;object-fit:cover;transition:.5s}.project:hover img{transform:scale(1.025)}.project:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.project>div{position:absolute;z-index:2;left:30px;bottom:28px}.project p{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#d9e0d4}.project h3{font:500 27px 'Playfair Display';margin-bottom:8px}.project span{font-size:11px;color:#d2d8d2}.before{padding:120px 0 40px}.before-copy{max-width:600px;margin-bottom:45px}.before-copy>p:not(.eyebrow){color:#adb9b0;line-height:1.7}.compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel{height:540px;position:relative}.panel img{width:100%;height:100%;object-fit:cover}.panel span{position:absolute;z-index:2;top:20px;left:20px;background:var(--cream);color:var(--forest);padding:9px 15px;text-transform:uppercase;font-size:10px;letter-spacing:.12em}.technical{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8vw;padding-top:100px}.technical img{width:100%;height:520px;object-fit:cover}.technical p:last-child{line-height:1.8;color:#adb9b0}.about{padding:120px 10vw;display:grid;grid-template-columns:1.4fr .7fr;gap:12vw;align-items:center}.about>div:first-child>p:not(.eyebrow){line-height:1.8;color:#56635a;max-width:650px}.about-card{background:#dfe4d6;padding:50px}.about-card strong{font:500 58px 'Playfair Display';display:block;color:#496446}.about-card span{display:block;line-height:1.5;margin:8px 0 30px}.about-card hr{border:0;border-top:1px solid #bdc7b4;margin:20px 0 30px}.quote{padding:110px 8vw;background:#d9dfd0;display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.quote-intro>p:not(.eyebrow){line-height:1.8;color:#596659}.contact{margin-top:40px;display:flex;flex-direction:column;gap:10px;font-size:14px}.contact a{text-decoration:underline;text-underline-offset:4px}form{background:#f6f3ea;padding:42px}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.09em;margin-bottom:20px}input,select,textarea{width:100%;margin-top:8px;border:0;border-bottom:1px solid #aeb8a9;background:transparent;padding:12px 2px;font:14px 'DM Sans';outline:none}textarea{border:1px solid #c7cdbf;padding:12px;resize:vertical}.file input{border:1px dashed #aab4a3;padding:16px}.file small{display:block;text-transform:none;letter-spacing:0;color:#778076;margin-top:6px}.check{display:flex;gap:10px;align-items:flex-start;text-transform:none;letter-spacing:0;line-height:1.5}.check input{width:auto;margin-top:3px}.tax-info{display:none;background:#e1e9da;color:#365432;padding:12px 15px;font-size:12px;margin:-5px 0 20px}.demo{margin-top:15px;font-size:12px;color:#496446}footer{background:#0c2018;color:#dce3dd;text-align:center;padding:65px 5vw}.footer-brand{justify-content:center;margin-bottom:20px}.footer-brand .mark{border-color:#cbd7ca;color:#cbd7ca}footer p{font-size:12px;color:#9ca99f}footer small{display:block;margin-top:35px;color:#6f8074;font-size:10px}@media(max-width:900px){header{height:70px}nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--cream);padding:25px;flex-direction:column;align-items:flex-start}nav.open{display:flex}.menu{display:block}.hero{height:75vh;min-height:600px}.hero-copy{left:7vw}.hero h1{font-size:52px}.ghost{display:block;margin:18px 0 0;width:max-content}.section-head{display:block}.service-grid{grid-template-columns:1fr 1fr}.service-grid article:nth-child(2){border-right:0}.project-grid,.technical,.about,.quote{grid-template-columns:1fr}.project.big{height:520px;grid-row:auto}.project{height:420px}.compare{grid-template-columns:1fr}.panel{height:420px}.quote{gap:50px}}@media(max-width:560px){.brand{font-size:11px}.hero h1{font-size:43px}.intro,.services,.projects,.about,.quote{padding-left:6vw;padding-right:6vw}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid #c7ccbe;padding-left:0!important}.two{grid-template-columns:1fr}form{padding:25px}.panel{height:330px}.technical img{height:380px}}
.credential{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;margin:34px auto 0;padding:16px 20px;width:max-content;max-width:100%;border:1px solid #cdd3c6;background:rgba(255,255,255,.28);font-size:12px}.credential strong{font-family:'Playfair Display',serif;font-size:20px;font-weight:500;color:#496446}.credential span{text-transform:uppercase;letter-spacing:.09em;color:#596659}.about-card hr:last-of-type{margin-top:20px}@media(max-width:560px){.credential{width:100%;flex-direction:column;gap:5px}.credential span{text-align:center;font-size:10px}}
nav a.active{color:#547052;font-weight:600}.active-btn{box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
.page-hero{padding:120px 8vw 100px;background:linear-gradient(135deg,#eef0e5,#dfe5d6)}.page-hero.dark{background:var(--deep);color:white}.page-hero>div{max-width:880px}.page-hero h1,.devis-page h1{font:500 clamp(48px,6vw,78px)/1.02 'Playfair Display',serif;margin-bottom:24px}.page-hero>div>p:last-child{max-width:650px;line-height:1.8;color:#5b685e}.page-hero.dark>div>p:last-child{color:#b8c1ba}.page-hero.dark .eyebrow{color:#9fb096}
.detail-services{padding:40px 8vw 110px}.detail-services article{display:grid;grid-template-columns:90px 1fr;gap:30px;padding:55px 0;border-bottom:1px solid var(--line)}.detail-services article>span{font:500 28px 'Playfair Display';color:#7c8f75}.detail-services h2{font:500 clamp(32px,4vw,48px) 'Playfair Display';margin-bottom:16px}.detail-services p{max-width:760px;line-height:1.8;color:#5c685f}.detail-services ul{columns:2;max-width:760px;padding-left:18px;line-height:2;color:#394a40}.tax-badge{margin-top:28px;background:#dfe9d8;padding:22px 24px;max-width:760px}.tax-badge strong{display:block;color:#3f633a;font-size:18px}.tax-badge small{display:block;margin-top:7px;color:#5b665a;line-height:1.5}
.page-cta{padding:95px 8vw;text-align:center;background:#dce2d3}.page-cta h2{font:500 clamp(36px,4vw,56px) 'Playfair Display';max-width:850px;margin:0 auto 22px}.page-cta p:not(.eyebrow){max-width:630px;margin:0 auto 28px;line-height:1.7;color:#5c685f}.light-cta{background:#eef0e8}
.portfolio{padding:100px 8vw;background:var(--deep);color:white}.case-study{padding-bottom:120px;margin-bottom:120px;border-bottom:1px solid rgba(255,255,255,.13)}.case-study:last-child{border-bottom:0;margin-bottom:0}.case-copy{max-width:760px;margin-bottom:45px}.case-copy h2{font:500 clamp(38px,4vw,58px) 'Playfair Display';margin-bottom:16px}.case-copy>p:not(.eyebrow){line-height:1.8;color:#b3beb5}.tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.tags span{border:1px solid rgba(255,255,255,.22);padding:7px 11px;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#c9d2cb}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.case-grid img{width:100%;height:420px;object-fit:cover}.case-grid .wide{grid-column:1/-1;height:620px}.before-after-block{display:grid;grid-template-columns:1fr 1fr;gap:14px}.before-after-block>div{height:560px;position:relative}.before-after-block img{width:100%;height:100%;object-fit:cover}.before-after-block span{position:absolute;z-index:2;top:18px;left:18px;background:var(--cream);color:var(--forest);padding:9px 14px;text-transform:uppercase;font-size:10px;letter-spacing:.12em}.night-shot{margin-top:14px;height:650px;position:relative}.night-shot img{width:100%;height:100%;object-fit:cover}.night-shot:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}.night-shot>div{position:absolute;z-index:2;left:34px;bottom:30px;max-width:650px}.night-shot h3{font:500 34px 'Playfair Display';margin:0}
.story{padding:110px 9vw;display:grid;grid-template-columns:1.15fr .85fr;gap:10vw}.story h2,.areas h2{font:500 clamp(38px,4vw,58px) 'Playfair Display';line-height:1.08}.story>div:first-child p:not(.eyebrow){line-height:1.8;color:#5b675e}.values article{padding:25px 0;border-bottom:1px solid var(--line)}.values span{font-family:'Playfair Display';color:#7f9278}.values h3{font:500 28px 'Playfair Display';margin:8px 0}.values p{line-height:1.65;color:#606b62}.timeline{background:#dfe5d6;padding:75px 8vw;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.timeline strong{display:block;font:500 58px 'Playfair Display';color:#496446}.timeline p{max-width:260px;line-height:1.6;color:#5c685e}.areas{padding:110px 9vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:start}.area-list{display:flex;flex-direction:column}.area-list span{font:500 27px 'Playfair Display';padding:20px 0;border-bottom:1px solid var(--line)}
.contact-page{padding:110px 9vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact-card{background:#dfe5d6;padding:48px}.contact-card h2,.contact-side h2{font:500 clamp(36px,4vw,54px) 'Playfair Display'}.contact-line{display:block;padding:22px 0;border-bottom:1px solid #bec8b7}.contact-line span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:#73806f;margin-bottom:8px}.contact-line strong{font-size:17px;line-height:1.5}.contact-side p:not(.eyebrow){line-height:1.8;color:#5b675e;margin-bottom:30px}
.devis-page{padding:100px 8vw;background:#d9dfd0;display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.devis-page .quote-intro>p:not(.eyebrow){line-height:1.8;color:#596659}
@media(max-width:900px){.detail-services article{grid-template-columns:60px 1fr}.story,.areas,.contact-page,.devis-page{grid-template-columns:1fr}.timeline{grid-template-columns:1fr}.case-grid .wide{height:480px}.before-after-block{grid-template-columns:1fr}.before-after-block>div{height:430px}.night-shot{height:520px}}
@media(max-width:560px){.page-hero{padding:80px 6vw 70px}.detail-services{padding-left:6vw;padding-right:6vw}.detail-services article{grid-template-columns:1fr;gap:12px}.detail-services ul{columns:1}.portfolio{padding-left:6vw;padding-right:6vw}.case-grid{grid-template-columns:1fr}.case-grid .wide{grid-column:auto;height:380px}.case-grid img{height:330px}.night-shot{height:430px}.night-shot>div{left:20px;right:20px}.night-shot h3{font-size:27px}.story,.areas,.contact-page,.devis-page{padding-left:6vw;padding-right:6vw}.contact-card{padding:28px}.timeline{padding-left:6vw;padding-right:6vw}}

/* V4 — pages Services & Réalisations : plus organiques, plus légères */
body.services-page .page-hero,body.realisations-page .page-hero{position:relative;overflow:hidden;padding:92px 8vw 78px}
body.services-page .page-hero:after,body.realisations-page .page-hero:after{content:"";position:absolute;width:310px;height:310px;border-radius:48% 52% 60% 40%;right:-70px;top:-95px;background:rgba(129,151,116,.13);transform:rotate(22deg)}
body.services-page .page-hero h1,body.realisations-page .page-hero h1{font-size:clamp(39px,4.6vw,61px);line-height:1.08;max-width:760px}
body.services-page .page-hero{background:linear-gradient(145deg,#f3efe5 0%,#e8ecdf 72%,#dce5d4 100%)}
body.realisations-page .page-hero.dark{background:linear-gradient(145deg,#183b2b,#234937 72%,#2f5742)}
body.services-page .detail-services{padding-top:65px}
body.services-page .detail-services article{background:rgba(255,255,255,.26);border:1px solid rgba(24,59,43,.09);border-radius:22px;padding:38px 42px;margin-bottom:22px;grid-template-columns:65px 1fr;box-shadow:0 12px 35px rgba(24,59,43,.035)}
body.services-page .detail-services article>span{font-size:20px;width:46px;height:46px;border-radius:50%;background:#dfe5d6;display:grid;place-items:center}
body.services-page .detail-services h2{font-size:clamp(29px,3vw,40px)}
body.services-page .detail-services ul{line-height:1.85}
body.realisations-page .portfolio{padding-top:78px;background:linear-gradient(180deg,var(--deep),#143326)}
body.realisations-page .case-study{border:0;background:rgba(255,255,255,.035);padding:42px;border-radius:26px;margin-bottom:58px;box-shadow:0 20px 60px rgba(0,0,0,.08)}
body.realisations-page .case-copy h2{font-size:clamp(32px,3.4vw,46px)}
body.realisations-page .case-grid img,body.realisations-page .before-after-block>div,body.realisations-page .night-shot{border-radius:16px;overflow:hidden}
body.realisations-page .tags span{border-radius:999px;background:rgba(255,255,255,.045)}
@media(max-width:560px){body.services-page .page-hero,body.realisations-page .page-hero{padding:68px 6vw 58px}body.services-page .detail-services article{padding:28px 24px}body.realisations-page .case-study{padding:24px 18px;border-radius:20px}}


/* ===== V5 — pages intérieures plus compactes et plus végétales ===== */
:root{
  --sage-soft:#dfe8d8;
  --sage:#aab99c;
  --anise:#c8d889;
  --almond:#e9edcf;
  --fern:#62805d;
  --moss:#3f6247;
}
.inner-page .page-hero{
  padding:52px 8vw 44px;
  min-height:0;
  position:relative;
  overflow:hidden;
  background:linear-gradient(120deg,#f4f0e6 0%,#edf0df 54%,#dde7d5 100%);
}
.inner-page .page-hero.dark{
  background:linear-gradient(120deg,#17372a 0%,#234b36 58%,#315b42 100%);
}
.inner-page .page-hero:after{
  content:"";
  position:absolute;
  right:5vw;
  top:20px;
  width:145px;
  height:145px;
  opacity:.22;
  background-repeat:no-repeat;
  background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 180'%3E%3Cg fill='none' stroke='%235c7f5d' stroke-width='2'%3E%3Cpath d='M90 160C92 112 91 69 91 19'/%3E%3Cpath d='M91 45C66 42 48 31 37 16C60 15 78 24 91 45Z'/%3E%3Cpath d='M92 71C119 67 138 54 148 36C124 37 106 48 92 71Z'/%3E%3Cpath d='M91 98C64 95 44 82 32 64C57 64 77 76 91 98Z'/%3E%3Cpath d='M91 127C119 122 140 108 152 88C126 90 106 102 91 127Z'/%3E%3C/g%3E%3C/svg%3E");
}
.inner-page .page-hero.dark:after{filter:brightness(2);opacity:.16}
.inner-page .page-hero>div{max-width:760px;position:relative;z-index:1}
.inner-page .page-hero .eyebrow{margin-bottom:10px}
.inner-page .page-hero h1,
.inner-page .devis-page h1,
body.services-page .page-hero h1,
body.realisations-page .page-hero h1{
  font-size:clamp(34px,4vw,48px);
  line-height:1.08;
  margin-bottom:12px;
  letter-spacing:-.015em;
}
.inner-page .page-hero>div>p:last-child{line-height:1.55;max-width:620px;margin-bottom:0}

/* Services : 5 cartes compactes, 2 colonnes */
body.services-page .detail-services{
  padding:34px 8vw 56px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  background:linear-gradient(180deg,#f3efe5,#eef0e5);
}
body.services-page .detail-services article{
  margin:0;
  padding:24px 26px;
  min-height:0;
  display:grid;
  grid-template-columns:44px 1fr;
  gap:17px;
  border-radius:18px;
  border:1px solid rgba(63,98,71,.12);
  box-shadow:none;
  background:#f8f5ec;
}
body.services-page .detail-services article:nth-child(2){background:#e9edcf}
body.services-page .detail-services article:nth-child(3){background:#dfe8d8}
body.services-page .detail-services article:nth-child(4){background:#eef2dc}
body.services-page .detail-services article:nth-child(5){background:#d7e3cf;grid-column:1/-1}
body.services-page .detail-services article>span{
  width:40px;height:40px;font-size:16px;
  background:rgba(255,255,255,.55);color:var(--moss);
}
body.services-page .detail-services h2{font-size:clamp(23px,2.5vw,31px);margin:0 0 8px}
body.services-page .detail-services p{font-size:13.5px;line-height:1.5;margin-bottom:10px;max-width:none}
body.services-page .detail-services ul{
  columns:2;column-gap:28px;
  margin:0;padding-left:18px;line-height:1.65;font-size:13px;max-width:none;
}
body.services-page .tax-badge{margin-top:12px;padding:13px 16px;background:rgba(255,255,255,.46);border-left:3px solid var(--fern)}
body.services-page .tax-badge strong{font-size:16px}
body.services-page .page-cta{padding:48px 8vw;background:linear-gradient(110deg,#dfe8d8,#c8d889)}
body.services-page .page-cta h2{font-size:clamp(28px,3vw,38px);margin-bottom:12px}
body.services-page .page-cta p:not(.eyebrow){margin-bottom:18px}

/* Réalisations : cartes horizontales pour limiter le défilement */
body.realisations-page .portfolio{padding:34px 8vw 54px;background:linear-gradient(180deg,#153428,#1c4030)}
body.realisations-page .case-study{
  display:grid;
  grid-template-columns:minmax(240px,.72fr) minmax(0,1.55fr);
  gap:22px;
  align-items:stretch;
  padding:22px;
  margin-bottom:20px;
  border-radius:18px;
  background:rgba(255,255,255,.045);
}
body.realisations-page .case-copy{margin:0;align-self:center;max-width:none}
body.realisations-page .case-copy .eyebrow{margin-bottom:8px;color:#b9cf9d}
body.realisations-page .case-copy h2{font-size:clamp(25px,2.7vw,35px);line-height:1.12;margin-bottom:10px}
body.realisations-page .case-copy>p:not(.eyebrow){font-size:13.5px;line-height:1.55;margin-bottom:12px}
body.realisations-page .tags{margin-top:10px;gap:6px}
body.realisations-page .tags span{padding:6px 9px;background:rgba(200,216,137,.08);border-color:rgba(200,216,137,.28)}
body.realisations-page .case-grid{grid-template-columns:1.35fr .8fr .8fr;gap:8px}
body.realisations-page .case-grid .wide{grid-column:auto;height:300px}
body.realisations-page .case-grid img{height:300px;border-radius:12px}
body.realisations-page .before-after-block{grid-template-columns:1fr 1fr;gap:8px}
body.realisations-page .before-after-block>div{height:270px;border-radius:12px}
body.realisations-page .night-shot{grid-column:2;margin:8px 0 0;height:210px;border-radius:12px}
body.realisations-page .night-shot h3{font-size:24px}
body.realisations-page .night-shot>div{left:22px;bottom:18px}
body.realisations-page .case-study:nth-of-type(3){grid-template-columns:minmax(240px,.72fr) minmax(0,1.55fr);grid-template-rows:auto auto}
body.realisations-page .case-study:nth-of-type(3) .case-copy{grid-row:1/3}
body.realisations-page .page-cta{padding:46px 8vw;background:linear-gradient(110deg,#eef0df,#dfe8d8)}
body.realisations-page .page-cta h2{font-size:clamp(28px,3vw,38px);margin-bottom:14px}

/* Entreprise : même rythme compact + touches végétales */
.entreprise-page .story{padding:48px 8vw;gap:6vw}
.entreprise-page .story h2,.entreprise-page .areas h2{font-size:clamp(28px,3vw,40px)}
.entreprise-page .story p{line-height:1.6}
.entreprise-page .values{gap:10px}
.entreprise-page .values article{padding:20px;background:#edf1df;border-radius:14px}
.entreprise-page .values article:nth-child(2){background:#dfe8d8}
.entreprise-page .values article:nth-child(3){background:#e9edcf}
.entreprise-page .timeline{padding:28px 8vw;background:linear-gradient(90deg,#dfe8d8,#e9edcf,#c8d889);gap:12px}
.entreprise-page .timeline div{padding:18px 20px;background:rgba(255,255,255,.42);border-radius:14px}
.entreprise-page .timeline strong{font-size:30px}
.entreprise-page .areas{padding:48px 8vw;gap:6vw}
.entreprise-page .area-list{gap:10px}
.entreprise-page .area-list span{padding:13px 16px;background:#eef2dc;border-radius:999px}
.entreprise-page .page-cta{padding:46px 8vw;background:linear-gradient(110deg,#dfe8d8,#c8d889)}

/* Contact et devis : plus d'infos au-dessus de la ligne de flottaison */
.contact-page-body .contact-page{padding:52px 8vw;gap:5vw}
.contact-page-body .contact-card{padding:30px;background:linear-gradient(145deg,#dfe8d8,#eef2dc);border-radius:18px}
.contact-page-body .contact-card h2,.contact-page-body .contact-side h2{font-size:clamp(28px,3vw,40px)}
.contact-page-body .contact-line{padding:14px 0}
.contact-page-body .contact-side{align-self:center}
.devis-page-body .devis-page{padding:52px 8vw;gap:6vw;background:linear-gradient(120deg,#dfe8d8,#eef0df 55%,#e9edcf)}
.devis-page-body .devis-page h1{font-size:clamp(34px,4vw,48px)}
.devis-page-body form{padding:28px;border-radius:18px}
.devis-page-body label{margin-bottom:14px}
.devis-page-body textarea{min-height:100px}

@media(max-width:900px){
  body.services-page .detail-services{grid-template-columns:1fr}
  body.services-page .detail-services article:nth-child(5){grid-column:auto}
  body.realisations-page .case-study,body.realisations-page .case-study:nth-of-type(3){grid-template-columns:1fr}
  body.realisations-page .case-study:nth-of-type(3) .case-copy{grid-row:auto}
  body.realisations-page .night-shot{grid-column:auto}
  body.realisations-page .case-grid{grid-template-columns:1fr 1fr}
  body.realisations-page .case-grid .wide{grid-column:1/-1;height:360px}
  body.realisations-page .case-grid img{height:250px}
}
@media(max-width:560px){
  .inner-page .page-hero{padding:36px 6vw 32px}
  .inner-page .page-hero:after{width:95px;height:95px;right:-6px;top:5px}
  .inner-page .page-hero h1,body.services-page .page-hero h1,body.realisations-page .page-hero h1{font-size:32px}
  body.services-page .detail-services{padding:22px 6vw 38px;gap:10px}
  body.services-page .detail-services article{padding:20px;grid-template-columns:36px 1fr;gap:12px}
  body.services-page .detail-services article>span{width:34px;height:34px}
  body.services-page .detail-services ul{columns:1}
  body.realisations-page .portfolio{padding:22px 6vw 38px}
  body.realisations-page .case-study{padding:16px;margin-bottom:14px}
  body.realisations-page .case-grid{grid-template-columns:1fr 1fr}
  body.realisations-page .case-grid .wide{height:260px}
  body.realisations-page .case-grid img{height:185px}
  body.realisations-page .before-after-block>div{height:230px}
  body.realisations-page .night-shot{height:230px}
  .entreprise-page .story,.entreprise-page .areas,.contact-page-body .contact-page,.devis-page-body .devis-page{padding:36px 6vw}
}

/* ===== V6 — identité plus vivante, palette végétale, one-line & carte de visite ===== */
:root{
  --cream:#f4efe3;
  --cream-2:#fbf7ee;
  --sage:#aebd9f;
  --sage-soft:#dce8d5;
  --almond:#e8edc8;
  --anise:#c7dc73;
  --anise-soft:#e6efb8;
  --leaf:#6e8f58;
  --moss:#3f6247;
  --forest:#183b2b;
  --deep:#10291f;
}
body{background:var(--cream-2)}
header{background:rgba(248,245,235,.94);backdrop-filter:blur(12px);height:78px}
.brand{font-size:13px}
.mark{border:0;border-radius:0;width:38px;height:38px;color:var(--forest);background:transparent;display:grid;place-items:center}
.mark svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.footer-brand .mark{border:0;color:#cbd7ca}

/* Ondulations inspirées de la carte de visite */
.card-inspired,.inner-page .page-hero{background-color:#f7f3e9;background-image:
linear-gradient(120deg,rgba(231,237,207,.82),rgba(220,232,213,.72)),
url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='110' viewBox='0 0 180 110'%3E%3Cg fill='none' stroke='%2399a78f' stroke-width='1' opacity='.20'%3E%3Cpath d='M-10 12C22 2 49 24 80 13s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 24C22 14 49 36 80 25s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 36C22 26 49 48 80 37s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 48C22 38 49 60 80 49s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 60C22 50 49 72 80 61s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 72C22 62 49 84 80 73s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 84C22 74 49 96 80 85s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 96C22 86 49 108 80 97s54-5 84 4 48-2 60-8'/%3E%3C/g%3E%3C/svg%3E");
background-size:auto,180px 110px}
.inner-page .page-hero.dark{background-color:#193c2d;background-image:linear-gradient(120deg,rgba(20,60,43,.95),rgba(57,91,57,.90)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='110' viewBox='0 0 180 110'%3E%3Cg fill='none' stroke='%23dce8d5' stroke-width='1' opacity='.14'%3E%3Cpath d='M-10 12C22 2 49 24 80 13s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 24C22 14 49 36 80 25s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 36C22 26 49 48 80 37s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 48C22 38 49 60 80 49s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 60C22 50 49 72 80 61s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 72C22 62 49 84 80 73s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 84C22 74 49 96 80 85s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 96C22 86 49 108 80 97s54-5 84 4 48-2 60-8'/%3E%3C/g%3E%3C/svg%3E")}

/* Navigation vivante */
nav{gap:8px}
nav>a:not(.btn){padding:9px 12px;border-radius:999px;position:relative;transition:transform .25s ease,background .25s ease,color .25s ease}
nav>a:not(.btn):hover{background:var(--almond);color:var(--forest);transform:translateY(-2px)}
nav a.active{background:var(--anise-soft);color:var(--forest)}
body:not(.loaded) header nav a{opacity:0;transform:translateY(-13px) scale(.97)}
body.loaded header nav a{animation:navIn .55s cubic-bezier(.2,.8,.2,1) both}
body.loaded header nav a:nth-child(1){animation-delay:.05s}body.loaded header nav a:nth-child(2){animation-delay:.11s}body.loaded header nav a:nth-child(3){animation-delay:.17s}body.loaded header nav a:nth-child(4){animation-delay:.23s}body.loaded header nav a:nth-child(5){animation-delay:.29s}body.loaded header nav a:nth-child(6){animation-delay:.35s}
@keyframes navIn{from{opacity:0;transform:translateY(-13px) scale(.97)}to{opacity:1;transform:none}}
.btn{border-radius:999px;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(24,59,43,.16)}.btn-anise{background:var(--anise);color:#243722}

/* Titres plus harmonisés */
.inner-page .page-hero{padding:42px 8vw 38px}
.inner-page .page-hero h1,.inner-page .devis-page h1,body.services-page .page-hero h1,body.realisations-page .page-hero h1{font-size:clamp(31px,3.5vw,43px);line-height:1.08;max-width:780px}
.inner-page .page-hero .eyebrow{color:var(--moss)}
.inner-page .page-hero.dark .eyebrow{color:#cfdda5}
.inner-page .page-hero:after{display:none}

/* One-line decorations */
.line-art{pointer-events:none;position:absolute;opacity:.23;background-repeat:no-repeat;background-size:contain;background-position:center}
.line-art-leaf{right:5vw;top:14px;width:180px;height:150px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 180'%3E%3Cg fill='none' stroke='%23587852' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M36 158C86 126 118 93 143 28'/%3E%3Cpath d='M87 115C61 108 43 92 35 71c29 2 47 16 52 44Z'/%3E%3Cpath d='M111 88c31-4 51-20 62-43-31 1-52 15-62 43Z'/%3E%3Cpath d='M131 57c-16-9-27-21-29-39 20 5 31 18 29 39Z'/%3E%3C/g%3E%3C/svg%3E")}
.line-art-tree{left:-25px;bottom:-18px;width:220px;height:180px;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 190'%3E%3Cg fill='none' stroke='%23587852' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M123 171c-2-37 1-75 4-116M126 100c-18-20-35-31-59-39M127 86c15-19 31-31 50-39M126 121c21-14 38-20 60-19M125 132c-18-11-34-15-54-13'/%3E%3Cpath d='M61 68c-18-2-29-13-31-27 18-1 31 8 31 27ZM180 54c17-4 28-15 30-29-18 0-30 10-30 29ZM190 108c16 3 27 13 29 26-17 0-29-9-29-26ZM66 124c-15 2-25 11-29 23 16 2 27-6 29-23Z'/%3E%3C/g%3E%3C/svg%3E")}

/* Services : davantage de rythme et de couleur */
body.services-page .detail-services{background:linear-gradient(180deg,#fbf7ee,#eef3df);gap:13px;padding-top:26px}
body.services-page .detail-services article{border:0;box-shadow:0 12px 30px rgba(51,73,45,.06);position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
body.services-page .detail-services article:hover{transform:translateY(-4px) rotate(-.15deg);box-shadow:0 18px 34px rgba(51,73,45,.11)}
body.services-page .detail-services article:nth-child(1){background:#f5f1e6}
body.services-page .detail-services article:nth-child(2){background:#e8edc8}
body.services-page .detail-services article:nth-child(3){background:#dce8d5}
body.services-page .detail-services article:nth-child(4){background:#e4efb0}
body.services-page .detail-services article:nth-child(5){background:linear-gradient(110deg,#d4e4c9,#e8edc8)}
body.services-page .detail-services article:after{content:"";position:absolute;right:-28px;bottom:-28px;width:110px;height:110px;border:1px solid rgba(63,98,71,.18);border-radius:48% 52% 42% 58%;transform:rotate(24deg)}
body.services-page .detail-services article>span{background:rgba(255,255,255,.62);box-shadow:inset 0 0 0 1px rgba(63,98,71,.08)}
body.services-page .detail-services h2{font-size:clamp(22px,2.2vw,29px)}

/* Réalisations : moins sévère, cartes colorées */
body.realisations-page .portfolio{background:linear-gradient(180deg,#18382b,#214a35 62%,#2e5b3e);padding-top:26px}
body.realisations-page .case-study{background:rgba(250,247,238,.08);border:1px solid rgba(232,237,200,.12);box-shadow:0 20px 40px rgba(0,0,0,.10);position:relative;overflow:hidden}
body.realisations-page .case-study:nth-child(2){background:rgba(199,220,115,.09)}
body.realisations-page .case-study:nth-child(3){background:rgba(174,189,159,.11)}
body.realisations-page .case-study:before{content:"";position:absolute;width:170px;height:170px;left:-85px;top:-80px;border:1px solid rgba(199,220,115,.22);border-radius:50%}
body.realisations-page .tags span{background:rgba(230,239,184,.12);border-color:rgba(230,239,184,.25)}

/* Accueil : rappel de la carte de visite + avis */
.intro{position:relative;overflow:hidden;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='110' viewBox='0 0 180 110'%3E%3Cg fill='none' stroke='%2399a78f' stroke-width='1' opacity='.12'%3E%3Cpath d='M-10 12C22 2 49 24 80 13s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 36C22 26 49 48 80 37s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 60C22 50 49 72 80 61s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 84C22 74 49 96 80 85s54-5 84 4 48-2 60-8'/%3E%3C/g%3E%3C/svg%3E")}
.home-reviews{position:relative;overflow:hidden;padding:44px 8vw;background:linear-gradient(105deg,#e8edc8,#dce8d5 55%,#c7dc73);display:flex;align-items:center;justify-content:space-between;gap:40px}
.home-reviews>div:not(.line-art){max-width:720px}.home-reviews h2{font:500 clamp(29px,3vw,40px) 'Playfair Display';margin-bottom:10px}.home-reviews p:not(.eyebrow){line-height:1.6;color:#4a5b4e;margin-bottom:0}.home-reviews .btn{flex:0 0 auto}

/* Avis */
.reviews-page .page-hero{position:relative}
.reviews-wrap{padding:34px 8vw 54px;background:linear-gradient(180deg,#faf7ee,#eef3df)}
.reviews-intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:28px;align-items:start}.reviews-intro h2,.review-form-card h2,.owner-preview h2{font:500 clamp(27px,3vw,38px) 'Playfair Display';margin-bottom:10px}
.reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.review-card{background:white;border-radius:18px;padding:20px;box-shadow:0 10px 28px rgba(45,72,43,.08);border-top:4px solid var(--anise)}.review-card .stars{letter-spacing:.14em;color:#78904f;font-size:15px}.review-card p{line-height:1.55;color:#526057}.review-card small{color:#758073}
.review-form-card{margin-top:26px;border-radius:22px;padding:26px;background:linear-gradient(120deg,#dce8d5,#e8edc8);display:grid;grid-template-columns:.65fr 1.35fr;gap:30px;align-items:start}.review-form-card form{padding:24px;border-radius:18px;background:rgba(255,255,255,.72)}
.owner-preview{margin-top:18px;padding:22px 24px;border:1px dashed #91a580;border-radius:18px;background:#f7f4e9}.owner-preview>div:first-child{display:grid;grid-template-columns:1fr auto;column-gap:20px;align-items:center}.owner-preview h2,.owner-preview .eyebrow,.owner-preview p{grid-column:1}.owner-toggle{grid-column:2;grid-row:1/4;background:transparent;border:1px solid var(--moss);color:var(--moss);padding:11px 15px;border-radius:999px;cursor:pointer}.owner-panel{margin-top:20px;border-top:1px solid #cbd5bf;padding-top:16px}.owner-item{display:grid;grid-template-columns:1fr auto;gap:14px;padding:14px 0;border-bottom:1px solid #d7decf}.owner-actions{display:flex;gap:8px;align-items:center}.owner-actions button{border:0;border-radius:999px;padding:8px 11px;cursor:pointer}.owner-actions .approve{background:var(--anise)}.owner-actions .delete{background:#e9ded3}

/* Apparitions douces */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:none}
.detail-services article,.case-study,.values article,.timeline div,.contact-card,.review-form-card{transition:opacity .6s ease,transform .6s ease}

footer{background-color:#10291f;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='110' viewBox='0 0 180 110'%3E%3Cg fill='none' stroke='%23dce8d5' stroke-width='1' opacity='.05'%3E%3Cpath d='M-10 12C22 2 49 24 80 13s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 36C22 26 49 48 80 37s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 60C22 50 49 72 80 61s54-5 84 4 48-2 60-8'/%3E%3Cpath d='M-10 84C22 74 49 96 80 85s54-5 84 4 48-2 60-8'/%3E%3C/g%3E%3C/svg%3E")}

@media(max-width:1000px){nav{gap:3px}nav>a:not(.btn){padding:8px 8px;font-size:12px}.btn.small{padding:11px 13px}}
@media(max-width:900px){header{height:70px}.home-reviews{align-items:flex-start;flex-direction:column}.reviews-intro,.review-form-card{grid-template-columns:1fr}.owner-preview>div:first-child{display:block}.owner-toggle{margin-top:8px}.line-art-leaf{width:110px;height:100px;right:1vw;opacity:.12}}
@media(max-width:560px){.inner-page .page-hero{padding:30px 6vw 27px}.inner-page .page-hero h1,body.services-page .page-hero h1,body.realisations-page .page-hero h1{font-size:29px}.reviews-wrap{padding:24px 6vw 38px}.reviews-grid{grid-template-columns:1fr}.review-form-card{padding:18px}.home-reviews{padding:34px 6vw}.mark{width:32px;height:32px}.mark svg{width:30px;height:30px}}

/* ===== V7 — identité végétale plus expressive ===== */
:root{
  --anis:#c9dc79;
  --almond:#dbe5bf;
  --mint:#cfe3cf;
  --olive:#788b4d;
  --moss:#536a45;
  --sage-light:#e5ecd9;
  --leaf:#6d8e5d;
}
body{overflow-x:hidden;background:
  radial-gradient(circle at 90% 3%,rgba(201,220,121,.22),transparent 18rem),
  radial-gradient(circle at 6% 38%,rgba(207,227,207,.3),transparent 20rem),var(--cream)}
.brand{font-weight:300;letter-spacing:.16em}.brand b{font-weight:500;color:var(--forest)}
.mark{width:39px;height:39px;border:0;border-radius:0;display:grid;place-items:center}
.mark svg{width:100%;height:100%;overflow:visible}.mark path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.mark .logo-shell{stroke:#1d2722;stroke-width:2.45}.mark .logo-gap,.mark .logo-stem{stroke:#1d2722;stroke-width:2.15}.mark .logo-leaf{stroke:#557447;stroke-width:2.3}
header{background:rgba(247,244,235,.93);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
nav a:not(.btn){position:relative;padding:8px 3px}nav a:not(.btn)::after{content:"";position:absolute;left:50%;bottom:1px;width:0;height:2px;background:linear-gradient(90deg,var(--anis),var(--olive));border-radius:99px;transition:.28s;transform:translateX(-50%)}nav a:not(.btn):hover::after,nav a.active::after{width:72%}
.btn{border-radius:999px;box-shadow:0 8px 22px rgba(24,59,43,.12);transition:transform .25s,box-shadow .25s,background .25s}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(24,59,43,.18);background:#234a37}

/* Page headers: compact, decorated, no empty right half */
.page-hero{min-height:330px;padding:66px 8vw 56px;position:relative;overflow:hidden;background:
  linear-gradient(125deg,rgba(238,240,229,.98),rgba(220,231,203,.92) 53%,rgba(201,220,121,.32)),
  repeating-radial-gradient(ellipse at 100% 0,transparent 0 18px,rgba(82,105,73,.035) 18px 20px)}
.page-hero::before{content:"";position:absolute;width:270px;height:270px;border-radius:50%;right:7vw;top:32px;background:rgba(255,255,255,.28);filter:blur(.2px)}
.page-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--forest),var(--leaf),var(--anis),var(--almond),transparent)}
.page-hero>div{max-width:58%;position:relative;z-index:3}.page-hero h1,.devis-page h1{font-size:clamp(36px,4.1vw,58px);line-height:1.03;margin-bottom:15px}.page-hero>div>p:last-child{line-height:1.55;margin-bottom:0}.page-hero .eyebrow{margin-bottom:12px}
.page-hero.dark{background:linear-gradient(130deg,#10291f,#183b2b 54%,#405c39)}

/* Botanical one-line scene injected by JS */
.botanical-scene{position:absolute;right:3.4vw;bottom:-8px;width:min(39vw,560px);height:94%;z-index:2;pointer-events:none;opacity:.88}
.botanical-scene svg{width:100%;height:100%;overflow:visible}.botanical-scene path,.botanical-scene circle,.botanical-scene ellipse{fill:none;stroke:var(--moss);stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.page-hero.dark .botanical-scene path,.page-hero.dark .botanical-scene circle,.page-hero.dark .botanical-scene ellipse{stroke:#b9ce9b}.botanical-scene .accent{stroke:var(--olive);stroke-width:2}.botanical-scene .soft{stroke:#8aa278;opacity:.72}.botanical-scene .flower{stroke:#799251}.botanical-scene .butterfly{stroke:#6f8659}
.botanical-scene .draw{stroke-dasharray:900;stroke-dashoffset:900;animation:drawLine 1.9s cubic-bezier(.4,0,.2,1) forwards}.botanical-scene .d2{animation-delay:.18s}.botanical-scene .d3{animation-delay:.36s}.botanical-scene .d4{animation-delay:.54s}.botanical-scene .d5{animation-delay:.72s}.botanical-scene .d6{animation-delay:.9s}
@keyframes drawLine{to{stroke-dashoffset:0}}

/* Decorative vegetation through inner content */
.inner-page main{position:relative}.inner-page .detail-services,.inner-page .portfolio,.inner-page .company-body,.inner-page .contact-page,.inner-page .devis-page,.inner-page .reviews-wrap{position:relative}
.detail-services{padding:30px 8vw 72px;background:linear-gradient(180deg,#f6f3ea,#edf2df)}
.detail-services article{grid-template-columns:54px 1fr;padding:32px 30px;border:0;border-radius:26px;margin:14px 0;background:rgba(255,255,255,.54);box-shadow:0 9px 28px rgba(58,80,58,.055);position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}
.detail-services article:nth-child(2n){background:rgba(219,229,191,.45)}.detail-services article:nth-child(3n){background:rgba(207,227,207,.45)}.detail-services article:nth-child(4n){background:rgba(201,220,121,.22)}
.detail-services article:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(58,80,58,.09)}
.detail-services article::after{content:"";position:absolute;width:110px;height:110px;border:1px solid rgba(83,106,69,.16);border-radius:50%;right:-37px;bottom:-42px}
.detail-services h2{font-size:clamp(25px,2.7vw,37px);margin-bottom:8px}.detail-services p{line-height:1.55;margin-bottom:9px}.detail-services ul{line-height:1.65;margin:8px 0 0}.detail-services article>span{font-size:22px;color:var(--olive)}
.tax-badge{border-radius:18px;background:linear-gradient(120deg,#e2edca,#d5e6d1)}

/* subtle alternating green ribbons */
.page-cta{padding:68px 8vw;background:linear-gradient(125deg,#dfe8cf,#cfe3cf 55%,#e7efc2);position:relative;overflow:hidden}.page-cta::before{content:"";position:absolute;inset:0;background:repeating-radial-gradient(ellipse at 10% 100%,transparent 0 22px,rgba(84,108,72,.035) 23px 25px);pointer-events:none}

/* Home: poetic moving dandelion */
.hero{overflow:hidden}.hero .dandelion-stage{position:absolute;right:3.5vw;bottom:3.2vh;width:min(30vw,430px);height:min(60vh,560px);z-index:3;pointer-events:none;opacity:.76}.dandelion-stage svg{position:absolute;bottom:0;right:0;width:68%;height:auto}.dandelion-stage .stem,.dandelion-stage .head,.dandelion-stage .leafline{fill:none;stroke:rgba(235,242,221,.92);stroke-width:1.25;stroke-linecap:round}.dandelion-stage .head{stroke-dasharray:4 7}.seed{position:absolute;width:13px;height:22px;opacity:0;animation:seedFly var(--dur) ease-in-out var(--delay) infinite}.seed::before{content:"";position:absolute;width:1px;height:14px;background:rgba(238,244,226,.86);left:6px;bottom:0;transform:rotate(12deg);transform-origin:bottom}.seed::after{content:"";position:absolute;width:11px;height:7px;border-top:1px solid rgba(238,244,226,.9);border-radius:50%;left:1px;top:0;box-shadow:3px -1px 0 -2px rgba(238,244,226,.85),-3px 0 0 -2px rgba(238,244,226,.85)}
@keyframes seedFly{0%{opacity:0;transform:translate(0,0) rotate(0)}12%{opacity:.9}70%{opacity:.72}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r))}}

/* cascading entrance */
body:not(.loaded) header .brand,body:not(.loaded) header nav>*{opacity:0;transform:translateY(-10px)}body.loaded header .brand{animation:dropIn .55s both}.loaded header nav>*{animation:dropIn .5s both}.loaded header nav>*:nth-child(1){animation-delay:.08s}.loaded header nav>*:nth-child(2){animation-delay:.14s}.loaded header nav>*:nth-child(3){animation-delay:.20s}.loaded header nav>*:nth-child(4){animation-delay:.26s}.loaded header nav>*:nth-child(5){animation-delay:.32s}.loaded header nav>*:nth-child(6){animation-delay:.38s}@keyframes dropIn{to{opacity:1;transform:none}}

/* softly feminine botanical details */
.flower-dot{position:absolute;border:1px solid rgba(96,125,79,.25);border-radius:50%;pointer-events:none}.flower-dot::before,.flower-dot::after{content:"";position:absolute;inset:24%;border:1px solid rgba(96,125,79,.20);border-radius:50%}.flower-dot::after{transform:rotate(45deg);border-radius:55% 45% 60% 40%}

@media(max-width:900px){.page-hero{min-height:300px;padding:52px 7vw 44px}.page-hero>div{max-width:72%}.botanical-scene{right:-7vw;width:49vw;opacity:.55}.hero .dandelion-stage{right:-2vw;width:40vw;opacity:.58}.detail-services article{grid-template-columns:42px 1fr;padding:26px 22px}}
@media(max-width:650px){.page-hero>div{max-width:100%;padding-right:0}.botanical-scene{width:62vw;right:-20vw;opacity:.22}.page-hero h1,.devis-page h1{font-size:36px}.detail-services{padding-left:5vw;padding-right:5vw}.detail-services article{display:block}.detail-services article>span{display:block;margin-bottom:7px}.hero .dandelion-stage{width:56vw;right:-12vw;opacity:.36}}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.botanical-scene .draw{stroke-dashoffset:0}}
/* ===== V8 — identité carte de visite + fonds photographiques ===== */
.exact-mark{border:0!important;border-radius:0!important;background:transparent!important;width:38px!important;height:38px!important;overflow:hidden;display:grid!important;place-items:center!important}
.exact-mark img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.08)}
.brand>span:last-child{font-weight:300;letter-spacing:.16em}.brand>span:last-child b{font-weight:300;color:inherit}

/* Inner pages: the approved hero image becomes a translucent, colourful backdrop. */
.inner-page{background:#edf1e7}
.inner-page .page-hero{min-height:245px;padding:38px 8vw 34px;background-image:linear-gradient(90deg,rgba(244,247,238,.90) 0%,rgba(236,242,229,.78) 47%,rgba(222,232,211,.50) 100%),url('assets/hero.png')!important;background-size:cover!important;background-position:center 54%!important}
.inner-page .page-hero.dark{color:var(--ink)!important}
.inner-page .page-hero.dark>div>p:last-child{color:#506056!important}
.inner-page .page-hero>div{max-width:55%;z-index:3}.inner-page .page-hero h1{font-size:clamp(30px,3.25vw,43px)!important;line-height:1.05!important;margin-bottom:12px!important}.inner-page .page-hero .eyebrow{margin-bottom:8px!important}
.inner-page .page-hero::before{width:170px;height:170px;right:9vw;top:22px;background:rgba(220,231,207,.34)}
.inner-page .page-hero::after{height:3px}
.botanical-scene{right:3vw!important;bottom:-8px!important;width:min(38vw,510px)!important;height:102%!important;opacity:.92!important}.page-hero.dark .botanical-scene path,.page-hero.dark .botanical-scene circle,.page-hero.dark .botanical-scene ellipse{stroke:var(--moss)!important}

/* Homepage dandelion: smaller plant, more numerous delicate seeds blended into photo. */
.hero .dandelion-stage{right:1.7vw!important;bottom:0!important;width:min(18vw,260px)!important;height:min(39vh,370px)!important;opacity:.62!important}.dandelion-stage svg{width:62%!important;filter:drop-shadow(0 1px 1px rgba(17,45,31,.15))}.seed{transform:scale(.72);filter:drop-shadow(0 1px 1px rgba(15,43,28,.12))}

/* Keep information dense and let decoration occupy the unused right side, never below titles. */
.detail-services{padding-top:28px}.inner-page .page-hero+section{position:relative}.page-hero .botanical-scene{max-height:250px}

/* Softer signature accents */
nav a{position:relative}nav>a:not(.btn)::after{content:'';position:absolute;left:50%;right:50%;bottom:-7px;height:1px;background:var(--olive);transition:.28s}nav>a:not(.btn):hover::after,nav>a.active::after{left:10%;right:10%}
@media(max-width:900px){.inner-page .page-hero>div{max-width:64%}.botanical-scene{width:40vw!important;right:-1vw!important}.hero .dandelion-stage{width:23vw!important}}
@media(max-width:650px){.inner-page .page-hero{min-height:220px;padding:30px 6vw 26px}.inner-page .page-hero>div{max-width:72%}.botanical-scene{width:44vw!important;right:-13vw!important;opacity:.46!important}.hero .dandelion-stage{width:30vw!important;right:-5vw!important;opacity:.46!important}}

/* V9 — identité Nardiello : logo redessiné, scènes botaniques à droite, envol poétique */
.exact-mark img{object-fit:contain!important;transform:none!important;width:100%!important;height:100%!important}
.brand .exact-mark{width:40px!important;height:40px!important}

/* Les décors végétaux restent strictement dans la moitié droite du bandeau. */
.inner-page .page-hero{display:flex!important;align-items:center!important;min-height:238px!important;padding:34px 8vw!important;isolation:isolate}
.inner-page .page-hero>div:first-child{width:52%!important;max-width:650px!important;position:relative!important;z-index:4!important}
.inner-page .page-hero .botanical-scene{position:absolute!important;left:auto!important;right:5.5vw!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;width:min(38vw,500px)!important;height:205px!important;max-height:none!important;opacity:.88!important;z-index:2!important}
.inner-page .page-hero .botanical-scene svg{height:100%!important;width:100%!important}
.inner-page .page-hero::before{right:8vw!important;top:50%!important;transform:translateY(-50%)!important;width:155px!important;height:155px!important;opacity:.55}

/* Le décor n'ajoute jamais de hauteur sous le titre. */
.inner-page .page-hero+section{margin-top:0!important}

/* Accueil : aucune fleur de pissenlit, uniquement les aigrettes qui partent du CTA vers l'arbre. */
.hero .dandelion-stage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;right:auto!important;bottom:auto!important;opacity:1!important;z-index:4!important;overflow:hidden!important;pointer-events:none!important}
.hero .dandelion-stage>svg{display:none!important}
.hero .seed{position:absolute!important;left:34%!important;top:69%!important;width:12px!important;height:20px!important;transform:scale(.66);opacity:0;filter:drop-shadow(0 1px 1px rgba(12,38,25,.22));animation-name:seedToTree!important;animation-timing-function:cubic-bezier(.33,.05,.42,.98)!important;animation-iteration-count:infinite!important}
@keyframes seedToTree{
  0%{opacity:0;transform:translate(0,0) rotate(-8deg) scale(.55)}
  8%{opacity:.88}
  28%{transform:translate(calc(var(--x)*.24),calc(var(--y)*.20 + 16px)) rotate(18deg) scale(.66)}
  53%{opacity:.78;transform:translate(calc(var(--x)*.52),calc(var(--y)*.50 - 9px)) rotate(-12deg) scale(.62)}
  78%{transform:translate(calc(var(--x)*.78),calc(var(--y)*.77 + 8px)) rotate(27deg) scale(.58)}
  100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r)) scale(.48)}
}

@media(max-width:900px){
  .inner-page .page-hero>div:first-child{width:58%!important}
  .inner-page .page-hero .botanical-scene{right:1vw!important;width:40vw!important;opacity:.68!important}
  .hero .seed{left:31%!important;top:72%!important}
}
@media(max-width:650px){
  .inner-page .page-hero{min-height:205px!important;padding:26px 6vw!important}
  .inner-page .page-hero>div:first-child{width:67%!important;max-width:67%!important}
  .inner-page .page-hero .botanical-scene{right:-14vw!important;width:48vw!important;height:175px!important;opacity:.42!important}
  .inner-page .page-hero h1{font-size:28px!important}
  .hero .seed{left:25%!important;top:73%!important;transform:scale(.54)}
}
/* V10 — galerie photos agrandissable */
body.realisations-page .lightbox-img{cursor:zoom-in;transition:transform .28s ease,filter .28s ease}
body.realisations-page .lightbox-img:hover{transform:scale(1.012);filter:brightness(.94)}
.lightbox{position:fixed;inset:0;z-index:10000;background:rgba(18,30,22,.92);display:flex;align-items:center;justify-content:center;padding:5vh 5vw;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;backdrop-filter:blur(7px)}
.lightbox.open{opacity:1;visibility:visible}.lightbox img{max-width:92vw;max-height:86vh;width:auto;height:auto;object-fit:contain;border-radius:10px;box-shadow:0 24px 70px rgba(0,0,0,.32);transform:scale(.96);transition:transform .25s ease}.lightbox.open img{transform:scale(1)}
.lightbox-close{position:absolute;right:26px;top:18px;width:46px;height:46px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font:300 34px/40px Arial;cursor:pointer}.lightbox-close:hover{background:rgba(255,255,255,.2)}
.lightbox-caption{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);color:#fff;font-size:13px;letter-spacing:.02em;text-align:center;max-width:80vw}
@media(max-width:600px){.lightbox{padding:4vh 3vw}.lightbox img{max-width:94vw;max-height:82vh}.lightbox-close{right:12px;top:12px}}

/* ===== V11 INDEX — emblème phormium circulaire + réalisations recadrées ===== */
header .exact-mark img, footer .exact-mark img{width:44px;height:44px;display:block;object-fit:contain}
header .mark, footer .mark{width:46px;height:46px}
header .brand{gap:12px}
header .brand>span:last-child{line-height:1.18}

.projects-v11{padding-bottom:0}
.projects-v11 .section-head{margin-bottom:28px}
.project-grid-v11 .project{border-radius:22px;overflow:hidden;box-shadow:0 22px 42px rgba(0,0,0,.14)}
.project-grid-v11 .project img{transition:transform .65s cubic-bezier(.2,.75,.2,1)}
.project-grid-v11 .project:hover img{transform:scale(1.035)}
.project-grid-v11 .project>div{background:linear-gradient(0deg,rgba(10,31,22,.86),rgba(10,31,22,.03))}

.site-story{margin:54px 0 0;padding:42px 8vw 48px;background:linear-gradient(120deg,#edf1dc,#dce8d5 56%,#d2e18f);color:var(--ink)}
.site-story-copy{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px 70px;align-items:end;margin-bottom:28px}
.site-story-copy .eyebrow{grid-column:1}.site-story-copy h2{grid-column:1;font:500 clamp(30px,3.5vw,47px) 'Playfair Display';margin:0}.site-story-copy h2 em{color:var(--moss);font-weight:400}.site-story-copy>p:last-child{grid-column:2;grid-row:1/3;align-self:end;max-width:610px;line-height:1.7;color:#526057}
.site-story-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.site-story-steps figure{margin:0;background:rgba(255,255,255,.7);border-radius:20px;overflow:hidden;box-shadow:0 14px 28px rgba(45,72,43,.08)}
.site-story-steps img{width:100%;height:270px;object-fit:cover;display:block}
.site-story-steps figcaption{display:flex;align-items:center;gap:13px;padding:15px 17px;color:#38513f}
.site-story-steps figcaption b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:#fff;font-size:11px;letter-spacing:.08em}
.site-story-steps figcaption span{font-size:13px;font-weight:600}

.before-v11{margin-top:0}
.technical-v11{margin-top:0}

@media(max-width:900px){
  header .exact-mark img, footer .exact-mark img{width:38px;height:38px}header .mark,footer .mark{width:40px;height:40px}
  .site-story-copy{grid-template-columns:1fr;gap:12px}.site-story-copy .eyebrow,.site-story-copy h2,.site-story-copy>p:last-child{grid-column:1;grid-row:auto}.site-story-steps{grid-template-columns:1fr 1fr}.site-story-steps figure:last-child{grid-column:1/-1}.site-story-steps figure:last-child img{height:340px}
}
@media(max-width:600px){
  .site-story{padding:34px 6vw 38px}.site-story-steps{grid-template-columns:1fr}.site-story-steps figure:last-child{grid-column:auto}.site-story-steps img,.site-story-steps figure:last-child img{height:240px}
}

/* V14 — Imaginer & créer : cartes plus vivantes et compactes */
.services-page .detail-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:1120px;margin:0 auto;padding:22px 28px 54px}
.services-page .detail-services article{position:relative;overflow:hidden;border:1px solid rgba(48,78,47,.14);border-radius:24px;padding:28px;background:rgba(250,249,242,.9);box-shadow:0 12px 34px rgba(42,65,38,.07);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.services-page .detail-services article:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(42,65,38,.11);border-color:rgba(83,116,67,.28)}
.services-page .detail-services article>span{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:50%;background:#e8eedf;color:#3e5f3c;font-size:.78rem;letter-spacing:.08em;margin-bottom:14px}
.services-page .detail-services h2{font-size:clamp(1.35rem,2vw,1.75rem);margin:0 0 9px;color:#29452f}
.services-page .detail-services p{margin:0 0 14px;line-height:1.6}
.services-page .detail-services ul{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:0}
.services-page .detail-services li{background:#f0f3e9;border:1px solid rgba(68,96,54,.1);padding:7px 10px;border-radius:999px;font-size:.86rem}
.services-page .detail-services article::after{content:"";position:absolute;width:120px;height:120px;border:1px solid rgba(126,151,94,.16);border-radius:50%;right:-46px;top:-52px}
.services-page .detail-services .tax-service{grid-column:1/-1;background:linear-gradient(110deg,rgba(232,239,218,.97),rgba(248,247,237,.96))}
.services-page .tax-service .tax-badge{margin-top:18px;display:flex;align-items:center;gap:18px;padding:15px 18px;border-radius:17px;background:#fff;border:1px solid rgba(74,103,55,.16)}
.services-page .tax-service .tax-badge strong{white-space:nowrap;color:#355c37;font-family:'Playfair Display',serif;font-size:1.22rem}
.services-page .tax-service .tax-badge small{line-height:1.45;color:#586453}
.services-page .page-hero{min-height:285px}
@media(max-width:760px){.services-page .detail-services{grid-template-columns:1fr;padding:16px 18px 38px}.services-page .detail-services .tax-service{grid-column:auto}.services-page .tax-service .tax-badge{align-items:flex-start;flex-direction:column;gap:5px}}

/* V15 — Vos mots : expérience plus chaleureuse et plus claire */
.reviews-page .reviews-wrap{padding-top:28px}
.reviews-page .reviews-intro{grid-template-columns:.62fr 1.38fr;align-items:center}
.reviews-page .reviews-intro>div:first-child{padding:10px 10px 10px 0}
.reviews-page .reviews-intro h2{color:#29452f}
.reviews-page #emptyReviews{max-width:420px;color:#667267;line-height:1.55}
.reviews-page .review-card{position:relative;overflow:hidden;min-height:160px;padding:24px 24px 20px;border:1px solid rgba(66,94,57,.09);border-top:0}
.reviews-page .review-card::before{content:'“';position:absolute;right:18px;top:-15px;font:500 92px 'Playfair Display',serif;color:rgba(133,160,85,.12)}
.reviews-page .review-card .stars{color:#718c42;font-size:17px;margin-bottom:12px}
.reviews-page .review-form-card{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(218,231,208,.98),rgba(236,239,207,.96));border:1px solid rgba(75,105,62,.10);box-shadow:0 14px 38px rgba(47,72,43,.06)}
.reviews-page .review-form-card::after{content:'';position:absolute;width:210px;height:210px;border:1px solid rgba(88,120,70,.15);border-radius:50%;left:-105px;bottom:-135px;pointer-events:none}
.reviews-page .review-form-card form{position:relative;z-index:1;box-shadow:0 10px 30px rgba(56,78,50,.05)}
.reviews-page .star-picker{display:flex;gap:5px;margin-top:8px;width:max-content}
.reviews-page .star-picker button{appearance:none;border:0;background:transparent;color:#aeb9a6;font-size:29px;line-height:1;padding:1px;cursor:pointer;transition:transform .18s ease,color .18s ease}
.reviews-page .star-picker button:hover{transform:translateY(-2px)}
.reviews-page .star-picker button.on{color:#78934b}
.reviews-page .rating-note{font-size:.82rem;color:#667267;margin:7px 0 0}
.reviews-page .owner-preview{background:rgba(248,247,239,.84);border-style:solid;border-color:rgba(96,119,82,.20)}
.reviews-page .owner-preview .eyebrow{color:#7a8874}
@media(max-width:900px){.reviews-page .reviews-intro{grid-template-columns:1fr}.reviews-page .reviews-intro>div:first-child{padding-right:0}}

/* V16 — Échangeons : contact direct, chaleureux et compact */
.contact-page-body .contact-v16{display:grid;grid-template-columns:.92fr 1.08fr;gap:18px;max-width:1180px;margin:0 auto;padding:30px 28px 24px}
.contact-page-body .contact-primary,.contact-page-body .contact-zone-card{border-radius:24px;box-shadow:0 14px 36px rgba(43,70,43,.07);border:1px solid rgba(57,89,54,.10)}
.contact-page-body .contact-primary{padding:30px;background:linear-gradient(145deg,#dce8d5,#eef2dc)}
.contact-page-body .contact-primary h2,.contact-page-body .contact-zone-card h2{margin:4px 0 12px;font:500 clamp(29px,3vw,41px) 'Playfair Display'}
.contact-page-body .contact-lead{color:#59675d;line-height:1.6;margin:0 0 8px}
.contact-page-body .contact-action{position:relative;padding-right:76px}
.contact-page-body .contact-action i{position:absolute;right:0;bottom:17px;font-style:normal;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#4b7048;border-bottom:1px solid #76936f;padding-bottom:2px}
.contact-page-body .contact-action:hover strong{color:#315a36}
.contact-page-body .contact-zone-card{align-self:stretch;padding:30px;background:linear-gradient(135deg,#f7f4e9 0%,#edf1dc 58%,#dce8d5 100%)}
.contact-page-body .contact-zone-card>p:not(.eyebrow){max-width:650px;color:#59675d;line-height:1.65;margin-bottom:18px}
.contact-page-body .area-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.contact-page-body .area-chips span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(76,103,62,.12);font-size:.84rem;color:#3f5b42}
.contact-page-body .quote-prompt{position:relative;overflow:hidden;background:rgba(255,255,255,.74);border-radius:18px;padding:20px 21px;border-left:3px solid var(--anise)}
.contact-page-body .quote-prompt:after{content:"";position:absolute;width:120px;height:120px;border:1px solid rgba(100,130,78,.15);border-radius:50%;right:-48px;top:-58px}
.contact-page-body .quote-prompt h3{font:500 clamp(22px,2.2vw,29px) 'Playfair Display';margin:3px 0 7px;color:#29452f}
.contact-page-body .quote-prompt p:not(.eyebrow){font-size:.92rem;line-height:1.55;color:#627064;margin:0 0 16px;max-width:530px}
.contact-page-body .quote-prompt .btn{position:relative;z-index:1;display:inline-flex}
.contact-reassurance{max-width:1180px;margin:0 auto 50px;padding:0 28px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.contact-reassurance>div{padding:18px 20px;border-radius:18px;background:#f7f4e9;border:1px solid rgba(66,93,57,.09)}
.contact-reassurance span{display:block;font-size:.72rem;letter-spacing:.12em;color:#7d916f;margin-bottom:8px}.contact-reassurance strong{font:500 20px 'Playfair Display';color:#29452f}.contact-reassurance p{font-size:.88rem;line-height:1.5;color:#697469;margin:7px 0 0}
@media(max-width:850px){.contact-page-body .contact-v16{grid-template-columns:1fr}.contact-reassurance{grid-template-columns:1fr}}
@media(max-width:560px){.contact-page-body .contact-v16{padding:18px 6vw 18px}.contact-page-body .contact-primary,.contact-page-body .contact-zone-card{padding:23px}.contact-reassurance{padding:0 6vw;margin-bottom:36px}.contact-page-body .contact-action{padding-right:0}.contact-page-body .contact-action i{position:static;display:block;width:max-content;margin-top:6px}}

/* V17 — Demande de devis */
.devis-page-body .devis-page{align-items:start}.devis-page-body .quote-intro{position:sticky;top:120px}.devis-page-body .quote-intro h1{max-width:520px}.quote-steps{margin:30px 0 28px;border-top:1px solid rgba(24,59,43,.18)}.quote-steps div{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(24,59,43,.13)}.quote-steps strong{font:500 20px 'Playfair Display';color:#6f8568}.quote-steps span{font-size:13px}.quote-contact{margin-top:25px}.quote-contact>span:first-child{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#6b766c}.devis-page-body form{box-shadow:0 18px 55px rgba(24,59,43,.08);border:1px solid rgba(24,59,43,.08)}.form-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:24px;padding-bottom:17px;border-bottom:1px solid #d7ddcf}.form-heading span{font:500 25px 'Playfair Display';color:var(--forest)}.form-heading small{font-size:10px;color:#758074}.devis-page-body input:focus,.devis-page-body select:focus,.devis-page-body textarea:focus{border-color:#557452}.devis-page-body .file input{border:1px dashed #91a38c;border-radius:10px;background:#eef2e8;padding:18px}.file-count{display:block;margin-top:8px;text-transform:none;letter-spacing:0;color:#4f6e4c;font-size:11px}.devis-page-body .tax-info{border-left:3px solid #6e8a65;border-radius:0 8px 8px 0;line-height:1.55}.quote-submit{width:100%;border-radius:3px}.devis-page-body .demo{line-height:1.5}.devis-page-body .check{margin-top:5px}@media(max-width:900px){.devis-page-body .quote-intro{position:static}.quote-steps{max-width:520px}}@media(max-width:560px){.form-heading{display:block}.form-heading small{display:block;margin-top:6px}}

/* V18 — Mentions légales, confidentialité & information RGPD */
footer small a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.privacy-note{font-size:.76rem;line-height:1.55;color:var(--muted,#657064);margin:.1rem 0 .8rem}.privacy-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.legal-hero{padding:clamp(7rem,11vw,10rem) 7vw 3.5rem;max-width:980px}.legal-hero h1{font-size:clamp(2.6rem,5.2vw,5.4rem);line-height:.96;margin:.5rem 0 1.25rem}.legal-hero h1 em{font-weight:400}.legal-hero>p:last-child{max-width:650px;font-size:1.05rem;line-height:1.7}
.legal-content{padding:1rem 7vw 6rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;max-width:1250px}.legal-content article{background:rgba(255,255,255,.82);border:1px solid rgba(63,91,61,.14);border-radius:22px;padding:clamp(1.5rem,3vw,2.5rem);box-shadow:0 16px 45px rgba(43,64,42,.06)}.legal-content article:nth-child(5){grid-column:1/-1}.legal-content h2{font-family:'Playfair Display',serif;font-size:clamp(1.55rem,2.3vw,2.15rem);margin:.35rem 0 1rem}.legal-content h3{font-size:.95rem;margin:1.5rem 0 .35rem;color:#3f5b3d}.legal-content p{line-height:1.72;margin:.55rem 0;color:#4f5d4f}.legal-content a{color:#3f5b3d}.legal-warning{grid-column:1/-1;background:#edf2df;border-radius:18px;padding:1.25rem 1.5rem;display:flex;gap:1rem;align-items:flex-start}.legal-warning strong{white-space:nowrap;color:#3f5b3d}.legal-warning span{line-height:1.55}
@media(max-width:760px){.legal-content{grid-template-columns:1fr}.legal-content article:nth-child(5){grid-column:auto}.legal-warning{grid-column:auto;display:block}.legal-warning strong{display:block;margin-bottom:.45rem}.legal-hero{padding-left:6vw;padding-right:6vw}.legal-content{padding-left:6vw;padding-right:6vw}}

/* V19 — anti-spam invisible du formulaire devis */
.website-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
/* V20 — avis en ligne */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
