@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Fraunces:ital,opsz,wght,SOFT,WONK@0,9..144,500,0,0;0,9..144,600,0,0;1,9..144,500,0,0&display=swap');
:root{--forest:#143d2c;--deep:#0c281e;--leaf:#668367;--lime:#b5caa2;--wood:#704c36;--cream:#f8f5ee;--sand:#e9dfce;--paper:#fffcf7;--ink:#23382b;--muted:#6d786a;--line:rgba(20,61,44,.13);--shadow:0 22px 60px rgba(12,40,30,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font:16px/1.65 'DM Sans',system-ui,sans-serif;color:var(--ink);animation:fade-in .3s ease-out}img{display:block;max-width:100%;height:auto}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;line-height:1.13;letter-spacing:-.042em;font-weight:600}h1{font-size:clamp(2.9rem,5.8vw,6.2rem);margin:16px 0 22px}h2{font-size:clamp(2.2rem,4vw,4.25rem);margin:14px 0 20px}h3{font-size:1.55rem;margin:0 0 14px}p{margin:0 0 16px}.wrap{width:min(1210px,calc(100% - 48px));margin:auto}.eyebrow{font:800 .72rem/1.4 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#789a66}em{font-style:italic;color:var(--leaf)}.muted{color:var(--muted)}.section{padding:108px 0}.site-header{position:relative;z-index:20;background:var(--deep)}.demo-note{background:#ede8db;color:#654c38;padding:7px 20px;text-align:center;font-weight:700;font-size:.66rem;letter-spacing:.055em}.brand-band{min-height:111px;display:grid;place-items:center;background:linear-gradient(125deg,#0b241b,#173e2a 65%,#0b241b);border-bottom:1px solid #c6dbb522}.brand{display:flex;align-items:center;gap:16px;color:#f9f5e9;font:600 clamp(1.75rem,3vw,2.8rem)/1.1 'Fraunces',Georgia,serif;letter-spacing:-.045em}.brand em{color:#bdd3a4;font-weight:500}.brand small{display:block;margin-top:5px;color:#d6c5a6;font:700 .55rem 'DM Sans',sans-serif;letter-spacing:.24em;text-align:center}.tree-mark{height:53px;width:53px;color:#cbdcab}.brand .tree-mark{filter:drop-shadow(0 4px 14px #96bc8c50)}.nav-band{background:#113223;border-bottom:1px solid #eef5dc26}.navigation{min-height:69px;display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap;padding:9px 0}.navigation a{color:#eeeede;font-weight:700;font-size:.78rem;padding:10px 11px;border-radius:50px;transition:background .18s,color .18s}.navigation a:hover,.navigation a.active{background:#ffffff1c;color:#e3f1c9}.navigation .nav-action{background:#dae8bd;color:#203c2c;margin-left:5px}.navigation .nav-action:hover,.navigation .nav-action.active{background:#f1f5de;color:#163522}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:27px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:51px;padding:13px 23px;font-weight:800;font-size:.88rem;border:1px solid transparent;border-radius:6px;transition:transform .2s,background .2s,box-shadow .2s;line-height:1.4}.button:hover{transform:translateY(-2px);box-shadow:0 9px 25px #00000015}.button-cream{background:#f5efd9;color:#173525}.button-forest{background:var(--forest);color:white}.button-outline-light{background:#ffffff12;border-color:#ffffff99;color:white}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--forest);font-weight:800;font-size:.87rem;border-bottom:1px solid #9cad96;padding-bottom:4px}.text-link:hover{border-color:var(--forest)}.image-disclaimer,.tiny-note{font-size:.8rem;color:var(--muted)}
/* accueil immersive */
.home-hero{position:relative;min-height:680px;display:flex;align-items:center;overflow:hidden;color:white}.hero-bg,.hero-bg img,.hero-tint{position:absolute;inset:0;width:100%;height:100%}.hero-bg img{object-fit:cover;object-position:center 56%;filter:saturate(.9)}.hero-tint{background:linear-gradient(90deg,rgba(5,28,19,.93) 0%,rgba(5,28,19,.78) 38%,rgba(5,28,19,.14) 100%),linear-gradient(0deg,rgba(3,23,15,.4),transparent 36%)}.hero-inner{position:relative;padding:100px 0 88px}.hero-copy{max-width:690px}.hero-copy .eyebrow{color:#dce8c7}.hero-copy h1{font-size:clamp(3.5rem,7vw,7.6rem);line-height:1.02}.hero-copy em{color:#dbecb9}.hero-copy>p{max-width:560px;font-size:1.06rem;color:#f5f6eb}.hero-photo-label{position:absolute;bottom:12px;right:20px;font-size:.68rem;background:#092b21ad;border-radius:4px;padding:4px 8px}.hero-stats{display:flex;gap:35px;flex-wrap:wrap;padding-top:52px}.hero-stats div{display:grid;gap:2px;border-top:1px solid #ffffff70;padding-top:10px;min-width:120px}.hero-stats strong{font:600 1.34rem 'Fraunces',serif}.hero-stats span{font-size:.73rem;letter-spacing:.07em;text-transform:uppercase;color:#e7e9da}.value-strip{background:var(--deep);color:#f3f0e4}.values{display:flex;gap:22px;min-height:70px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:.67rem;letter-spacing:.06em;font-weight:700}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:33px}.section-heading>p{max-width:380px;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.feature-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);min-width:0}.feature-image{position:relative;overflow:hidden}.feature-image img{width:100%;height:275px;object-fit:cover;transition:transform .55s}.feature-card:hover img{transform:scale(1.04)}.feature-badge{position:absolute;bottom:12px;left:12px;color:#173626;background:#eef3e9;padding:7px 12px;font-size:.67rem;font-weight:800;letter-spacing:.08em}.feature-info{padding:25px}.feature-info p{min-height:77px;color:var(--muted);font-size:.92rem}.split-section{background:#e9e4d5}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split-grid p{color:#556355}.split-photos{position:relative;padding:0 18% 8% 0}.split-photos>img{width:100%;height:460px;object-fit:cover;border-radius:210px 210px 10px 10px}.photo-float{position:absolute;right:0;bottom:0;width:41%;border:8px solid var(--sand);border-radius:150px 150px 10px 10px;overflow:hidden}.photo-float img{height:250px;width:100%;object-fit:cover}.inspiration-peek{background:#fcfbf6}.inspiration-grid{display:grid;grid-template-columns:1.1fr .8fr .8fr;gap:13px}.inspiration-grid img{width:100%;height:315px;object-fit:cover}.inspiration-peek .image-disclaimer{margin-top:12px}.cta{background:linear-gradient(120deg,#103525,#194a32 60%,#224a33);color:#fbf9ef;padding:76px 0}.cta-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:center}.cta h2{font-size:clamp(2.3rem,4vw,4.5rem);max-width:800px}.cta p{max-width:600px;color:#e1e9d9}.cta-actions{display:grid;gap:12px}.cta .eyebrow{color:#c7d6ad}.sub-cta{background:#e5e9db;padding:65px 0}.sub-cta-grid{display:flex;justify-content:space-between;align-items:center;gap:40px}.sub-cta-grid>div{max-width:740px}.sub-cta-grid h2{font-size:2.6rem}.sub-cta-grid p{color:var(--muted)}
/* pages */
.page-banner{background:linear-gradient(130deg,#ede9dd,#faf8f1);padding:74px 0}.banner-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:62px}.banner-grid h1{font-size:clamp(2.65rem,5.2vw,5.5rem)}.lead{font-size:1.06rem;color:#5b695a;max-width:550px}.banner-photo{position:relative}.banner-photo img{width:100%;height:450px;object-fit:cover;border-radius:235px 235px 8px 8px;box-shadow:0 22px 45px rgba(20,61,44,.18)}.photo-tag{position:absolute;right:15px;bottom:15px;background:#f5f6eeed;color:var(--forest);padding:7px 10px;font-size:.72rem;font-weight:700}.editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.editorial-card{background:#fff;border:1px solid var(--line);box-shadow:0 9px 30px #153a2420}.editorial-card img{width:100%;height:290px;object-fit:cover}.editorial-card>div{padding:27px}.editorial-card p{color:var(--muted);margin:0}.soft-callout{background:#e1e9dc;padding:24px 27px;margin-top:24px;border-left:4px solid var(--leaf);color:#274734}.about-flow{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;margin-bottom:48px}.about-flow>div:last-child p{color:#617263}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.team-card{display:flex;gap:26px;padding:37px;background:var(--paper);border:1px solid var(--line)}.team-illustration{flex-shrink:0;width:82px;height:82px;border:2px solid var(--forest);border-radius:50%;display:grid;place-items:center;font:600 2.7rem 'Fraunces',serif;color:var(--forest);background:#e2e9dc}.team-illustration.alt{background:#efdfc9;color:var(--wood);border-color:var(--wood)}.team-card p{color:var(--muted)}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:50px}.principles>div{padding-top:20px;border-top:2px solid var(--wood)}.principles b{color:var(--wood)}.principles p{color:var(--muted);margin-top:10px}.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.plan{padding:32px 28px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;align-items:start;min-height:365px}.plan .button{margin-top:auto;width:100%}.plan h3{margin-top:14px}.plan p{color:var(--muted)}.plan b{margin-bottom:26px;margin-top:auto}.plan.featured{background:var(--forest);color:white;transform:translateY(-7px)}.plan.featured p{color:#dbebd9}.plan-icon{font:600 2.8rem 'Fraunces',serif;color:#9fb88f}.plan.featured .plan-icon{color:#e4ebd0}.plan-label{font-size:.7rem;letter-spacing:.15em;font-weight:800;color:#dcefc8}.subscription-math{padding:28px;background:#e3ebdc;margin-top:30px;border-left:4px solid var(--forest)}.subscription-math p{margin:7px 0;color:#4a5b4c}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.gallery-grid figure{margin:0;background:#fff;border:1px solid var(--line)}.gallery-grid img{width:100%;height:280px;object-fit:cover}.gallery-grid figcaption{padding:12px 15px;color:var(--muted);font-size:.75rem}.before-after-info{background:var(--forest);color:white;margin-top:35px;padding:40px}.before-after-info .eyebrow{color:#cddbbd}.before-after-info p{color:#dce8d6}.before-after-info h3{max-width:700px;margin-top:13px}
/* formulaires */
.estimate-section{background:#f2f1e7}.quote-grid{display:grid;grid-template-columns:minmax(0,1.17fr) minmax(300px,.83fr);gap:25px;align-items:start}.quote-form{background:#fff;border:1px solid var(--line);padding:29px;box-shadow:var(--shadow)}.form-step{padding-bottom:26px;margin-bottom:28px;border-bottom:1px solid var(--line)}.form-step:last-child{border:0;padding:0;margin:0}.form-step h3{font-size:1.9rem;margin:9px 0 12px}.step-label{font-size:.71rem;font-weight:800;letter-spacing:.14em;color:var(--wood)}.form-group-title{margin:23px 0 12px;color:var(--forest);font-weight:800}.service-choices{display:grid;gap:10px}.service-option{padding:12px;background:#f7f8f3;border:1px solid #d8dfd1;display:grid;grid-template-columns:21px minmax(0,1fr) 112px;column-gap:11px;align-items:center;cursor:pointer}.service-option.checked{border-color:#3a7854;background:#edf3e8}.service-option>input[type=checkbox]{height:18px;width:18px;accent-color:var(--forest)}.service-option .service-meta{display:grid;gap:2px}.service-option .service-meta strong{font-size:.87rem}.service-option .service-meta small{font-size:.72rem;color:var(--muted);line-height:1.45}.service-option .quantity{display:grid;font-weight:700;font-size:.73rem;gap:2px}.service-option .quantity input{width:100%;min-width:0;background:white;border:1px solid #cbd5c4;padding:8px 10px;border-radius:4px}.service-option:not(.checked) .quantity input{opacity:.45}.mode-options{border:0;padding:0;margin:0;display:grid;gap:12px}.mode-options legend{font-size:.88rem;margin-bottom:10px;font-weight:700}.mode-options label{display:flex;align-items:center;gap:10px;background:#f5f7f2;padding:12px}.mode-options input{accent-color:var(--forest)}#frequency-wrap{margin-top:17px}#frequency-wrap label{display:block;font-weight:700;margin-bottom:5px}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:17px}.field-grid label,.block-field{display:grid;gap:7px;font-size:.87rem;font-weight:700}.field-grid label span,.consent span{color:#aa3e2f}.field-grid input,.field-grid select,.block-field textarea,#frequency{width:100%;min-width:0;padding:12px 13px;border:1px solid #d6dfd0;background:#fbfcf9;border-radius:5px;color:var(--ink)}.field-grid input:focus,.field-grid select:focus,.block-field textarea:focus,#frequency:focus{outline:2px solid #a5bca0;outline-offset:2px}.block-field{margin-bottom:15px}.block-field textarea{min-height:105px;resize:vertical}.upload-group{background:#f4f7f1;padding:20px;margin:22px 0}.upload-group>span{font-weight:800;font-size:.9rem}.upload-group label{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:12px;margin-top:12px;font-size:.79rem;font-weight:700}.upload-group input{width:100%;max-width:100%;min-width:0;font-size:.77rem}.consent{display:flex;gap:10px;margin:18px 0;font-size:.81rem;line-height:1.55;color:#536153}.consent input{flex-shrink:0;margin-top:4px;accent-color:var(--forest)}.submit-button{width:100%;font-size:1rem}.form-error{color:#b44031;font-size:.83rem;font-weight:800;min-height:1em}.quote-aside{position:sticky;top:16px}.estimate-summary{padding:32px;background:var(--deep);color:#fff;box-shadow:var(--shadow)}.estimate-summary .eyebrow{color:#caddb9}.estimate-summary h3{font-size:2rem;margin:11px 0 24px}.summary-lines{display:grid;gap:12px;margin-bottom:22px}.summary-lines>p{font-size:.82rem;color:#d9e9d3}.summary-lines .summary-row{display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid #ffffff26;padding:0 0 11px;font-size:.86rem}.summary-row>span{max-width:77%}.summary-row small{display:block;font-size:.7rem;color:#d2dbcf}.summary-row b{white-space:nowrap}.summary-total{padding:19px 0;border-top:1px solid #ffffff66;border-bottom:1px solid #ffffff66;display:grid;gap:3px}.summary-total small{font-size:.79rem;color:#baccbb}.summary-total strong{font:600 2.7rem 'Fraunces',serif;color:#e1eac7}.subscription-result{display:grid;gap:12px;background:#27543b;padding:18px;margin-top:15px}.subscription-result>div{display:flex;justify-content:space-between;gap:10px;font-size:.83rem}.subscription-result b{white-space:nowrap}.estimate-summary .tiny-note{margin-top:22px;color:#bacdbe}.quick-contact{display:grid;gap:7px;background:#e8ecdc;padding:25px;color:var(--forest)}.quick-contact b{margin-bottom:5px}.quick-contact a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.quick-contact p{margin:9px 0 0;color:#526353;font-size:.83rem}.contact-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:75px;align-items:center}.contact-layout>div>p{max-width:540px;color:var(--muted)}.contact-cards{display:grid;gap:10px;margin:24px 0}.contact-cards a{display:grid;gap:2px;background:#e8ede1;padding:17px 21px}.contact-cards a:hover{background:#d5e2d4}.contact-cards span{font-size:.73rem;letter-spacing:.12em;color:var(--wood);font-weight:800}.contact-cards b{overflow-wrap:anywhere}.contact-visual{position:relative;padding-bottom:40px}.contact-visual img{height:530px;width:100%;object-fit:cover;border-radius:260px 260px 12px 12px}.contact-info-box{position:absolute;bottom:0;left:-30px;max-width:330px;background:var(--forest);color:white;padding:26px}.contact-info-box p{color:#d9e4d7;font-size:.86rem;margin:8px 0 0}.legal-banner .wrap{max-width:1000px}.legal-text{max-width:820px}.legal-text h2{font-size:2rem;margin-top:32px}.legal-text p{color:var(--muted)}
.footer{background:#0b291e;color:#f1f5e8;padding:62px 0 25px}.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:60px}.foot-brand{display:flex;align-items:center;gap:9px;font-weight:800;letter-spacing:.07em}.foot-brand .tree-mark{width:33px;height:33px}.footer p,.footer span,.footer a{font-size:.84rem;color:#d4ddcf}.footer-grid>div{display:grid;align-content:start;gap:8px}.footer-grid b{margin-bottom:9px}.footer a:hover{color:white;text-decoration:underline}.foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:52px;padding-top:20px;border-top:1px solid #ffffff24;color:#d0dbc8;font-size:.75rem}.floating-quote{position:fixed;bottom:23px;right:23px;z-index:40;display:flex;align-items:center;gap:9px;padding:12px 20px;border-radius:90px;background:#e1ebc6;color:#133624;font-weight:800;font-size:.85rem;box-shadow:0 12px 34px #00000040;border:1px solid #fff}
@keyframes fade-in{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){body{animation:none}html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:1060px){.navigation a{padding:7px 9px;font-size:.72rem}.feature-grid{grid-template-columns:repeat(2,1fr)}.hero-photo-label{display:none}.banner-grid,.split-grid,.contact-layout{gap:35px}.quote-grid{grid-template-columns:minmax(0,1fr) 340px}}
@media(max-width:800px){.wrap{width:min(100% - 30px,1210px)}.section{padding:70px 0}.nav-band{overflow-x:auto}.navigation{min-height:55px;justify-content:flex-start;flex-wrap:nowrap;width:max-content;max-width:none;margin-left:14px;white-space:nowrap}.navigation a{font-size:.78rem;padding:8px 11px}.brand-band{min-height:90px}.brand{font-size:1.8rem}.tree-mark{height:45px;width:45px}.home-hero{min-height:640px}.hero-inner{padding:80px 0 70px}.hero-tint{background:linear-gradient(90deg,#082219e0,#08221996)}.hero-copy h1{font-size:4.3rem}.hero-stats{gap:17px}.values{padding:15px 0;justify-content:center;gap:14px}.section-heading{display:block}.section-heading>p{max-width:700px}.banner-grid,.split-grid,.about-flow,.contact-layout,.quote-grid{grid-template-columns:1fr}.banner-photo img{height:390px}.feature-grid,.editorial-grid,.team-grid,.plans,.principles{grid-template-columns:1fr 1fr}.quote-aside{position:static}.cta-grid{grid-template-columns:1fr;gap:18px}.cta-actions{display:flex;flex-wrap:wrap}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.plans .featured{transform:none}.contact-info-box{left:0}.sub-cta-grid{display:block}.sub-cta-grid .button{margin-top:10px}}
@media(max-width:530px){.demo-note{font-size:.59rem;padding:6px 9px}.brand{font-size:1.47rem;gap:9px}.brand .tree-mark{width:39px;height:39px}.brand small{font-size:.5rem}.home-hero{min-height:590px}.hero-inner{padding:67px 0}.hero-copy h1{font-size:3.2rem}.hero-copy>p{font-size:.95rem}.hero-stats{padding-top:34px;gap:13px}.hero-stats div{min-width:80px}.hero-stats strong{font-size:1.15rem}.hero-stats span{font-size:.59rem}.button-row{align-items:stretch}.button-row .button{width:100%}.feature-grid,.editorial-grid,.team-grid,.plans,.principles,.gallery-grid,.footer-grid,.field-grid{grid-template-columns:1fr}.section-heading{margin-bottom:25px}.feature-info p{min-height:auto}.split-photos>img{height:360px}.photo-float img{height:180px}.banner-grid h1{font-size:2.6rem}.banner-photo img{height:310px}.page-banner{padding:53px 0}.team-card{padding:24px;gap:16px}.team-illustration{height:57px;width:57px;font-size:2rem}.quote-form,.estimate-summary{padding:20px}.service-option{grid-template-columns:19px minmax(0,1fr) 83px;column-gap:7px;padding:10px 7px}.service-option .quantity input{padding:7px 5px;font-size:.75rem}.service-option .service-meta small{font-size:.67rem}.service-option .service-meta strong{font-size:.77rem}.mode-options label{font-size:.83rem}.gallery-grid img{height:240px}.footer{padding-bottom:82px}.floating-quote{bottom:12px;right:12px;left:12px;justify-content:center}.contact-visual img{height:365px}.contact-info-box{position:relative;max-width:none}.upload-group label{display:grid;grid-template-columns:1fr;gap:5px}.hero-stats div:last-child{min-width:120px}}

/* V2 : Comparatifs visuels reçus et galerie responsive */
.before-after-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}
.before-after-card{margin:0;min-width:0;background:#fff;color:var(--forest);overflow:hidden}
.before-after-card img{display:block;width:100%;height:260px;object-fit:contain;background:#eef1e9}
.before-after-card figcaption{padding:13px 15px;font-size:.89rem;font-weight:700;line-height:1.35}
.editorial-card p{line-height:1.7}
@media(max-width:900px){.before-after-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.before-after-grid{grid-template-columns:1fr}.before-after-card img{height:auto;max-height:500px;object-fit:contain}}
