@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Manrope:wght@300;400;500;600;700&display=swap');
:root{--paper:#f5f3ee;--sand:#e8e3d9;--ink:#282824;--soft:#77746e;--rule:#d8d2c8;--gold:#9d8b73}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}.shell{max-width:1640px;margin:auto;padding:0 5.5%}.nav{height:108px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 5.5%;background:rgba(245,243,238,.97);position:relative;z-index:40;border-bottom:1px solid #e4dfd7}.nav.sticky{position:sticky;top:0}.nav img{width:214px;height:85px;object-fit:contain;object-position:left}.links{display:flex;align-items:center;gap:32px;font-size:14px;letter-spacing:.015em}.links a:not(.nav-cta):hover{color:#99856d}.nav-cta{background:var(--ink);color:white;padding:16px 22px;white-space:nowrap;transition:background .3s}.nav-cta:hover,.btn-dark:hover{background:#776753}.menu-btn{display:none;background:none;border:0;font-size:28px}.hero{min-height:min(850px,calc(100svh - 108px));height:780px;position:relative;display:flex;align-items:flex-end;color:white;overflow:hidden;background:#595950}.hero-bg{position:absolute;inset:0;background-position:center 53%;background-size:cover;animation:slowzoom 18s ease-out both}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,20,19,.56),rgba(20,20,19,.08) 75%),linear-gradient(0deg,rgba(0,0,0,.37),transparent 68%)}@keyframes slowzoom{from{transform:scale(1.08)}to{transform:scale(1)}}.hero-inner{position:relative;z-index:2;width:100%;padding-bottom:95px}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.21em;font-weight:500}.hero h1{font-family:Manrope,sans-serif;font-weight:300;font-size:clamp(60px,7.6vw,122px);line-height:1.03;letter-spacing:-.075em;margin:25px 0 30px;max-width:1200px}.hero h1 em{font-weight:500;font-style:normal}.hero p{font-size:clamp(19px,1.65vw,24px);line-height:1.6;max-width:570px;font-weight:300}.hero-actions{display:flex;align-items:center;gap:35px;margin-top:38px;flex-wrap:wrap}.outline-white{display:inline-flex;border:1px solid rgba(255,255,255,.85);padding:18px 25px;gap:35px;font-size:15px;transition:background .3s}.outline-white:hover{background:rgba(255,255,255,.18)}.link-white{font-size:15px;border-bottom:1px solid #fff;padding-bottom:8px}.section{padding:130px 0}.kicker{color:#897b6b;font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}.display{font-family:Manrope,sans-serif;font-size:clamp(42px,5.3vw,78px);font-weight:300;line-height:1.14;letter-spacing:-.065em;margin:22px 0}.lead{font-size:clamp(21px,2vw,29px);line-height:1.6;font-weight:300}.bodycopy{font-size:18px;line-height:1.85;color:#6b6862}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.split .bodycopy{max-width:610px}.text-link{display:inline-flex;align-items:center;gap:34px;border-bottom:1px solid var(--ink);padding-bottom:11px;margin-top:24px;font-size:15px}.text-link:hover{gap:43px}.section-sand{background:#eae6de}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:50px}.section-head .bodycopy{max-width:350px}.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 22px}.service{display:block}.imgwrap{overflow:hidden;background:#c8c2b7;position:relative}.service .imgwrap{height:350px}.imgwrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}.service:hover img,.feature:hover img{transform:scale(1.065)}.service-title{display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:clamp(21px,1.9vw,29px);font-weight:400;letter-spacing:-.045em;margin:22px 0 8px}.service-title span{font-size:25px;color:#8f7c67;transition:transform .3s}.service:hover .service-title span{transform:translate(5px,-5px)}.service p{font-size:16px;color:#6f6b64;line-height:1.75;margin:0}.pill{display:inline-flex;align-items:center;border:1px solid #bcb3a7;padding:13px 18px;margin-top:48px;font-size:14px}.editorial{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:start}.feature{display:block}.feature .imgwrap{height:650px}.feature:nth-child(2){margin-top:110px}.feature:nth-child(2) .imgwrap{height:490px}.feature h3{font-weight:400;font-size:26px;margin:22px 0 7px;letter-spacing:-.04em}.feature p{color:var(--soft);font-size:15px}.note{font-size:13px;line-height:1.7;color:#858077;margin-top:30px}.dark{background:#272824;color:#f5f2eb}.dark .kicker{color:#c2b5a3}.dark h2{max-width:1100px;font-weight:300;font-size:clamp(43px,5.8vw,84px);line-height:1.2;letter-spacing:-.065em;margin:25px 0}.dark p{font-size:20px;line-height:1.8;color:#c7c5bd;max-width:650px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:60px}.step{border-top:1px solid #c7c0b4;padding-top:25px}.step .num{color:#a3917a;font-size:15px}.step h3{font-size:25px;font-weight:400;letter-spacing:-.035em;margin:24px 0 8px}.step p{color:var(--soft);font-size:17px;line-height:1.75}.contact{background:#e8e3da}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:11%}.contact p{font-size:19px;line-height:1.8;color:#6a675f}.contact-info{font-size:20px!important;color:#282824!important}.contact-info a:hover{text-decoration:underline}.form{display:grid;gap:22px}.form label{display:grid;gap:9px;font-size:14px;color:#605d55}.form input,.form textarea,.form select{border:0;border-bottom:1px solid #bcb5aa;background:transparent;padding:14px 0;border-radius:0;width:100%;outline:none;color:#292923;font-size:17px}.form textarea{min-height:115px;resize:vertical}.btn-dark{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;border:0;background:var(--ink);color:#fff;padding:20px 24px;font-size:15px;transition:background .3s}.footer{background:#272824;color:#f5f2eb;padding:65px 0}.footgrid{display:flex;justify-content:space-between;gap:30px;align-items:end}.footgrid img{width:200px;filter:invert(1)}.footer p{font-size:14px;color:#bbb7ae;line-height:1.8}.footer a:hover{text-decoration:underline}.detail-hero{display:grid;grid-template-columns:1fr 1.05fr;min-height:680px}.detail-copy{padding:95px 8% 95px 10.5%;display:flex;flex-direction:column;justify-content:center}.detail-copy h1{font-family:Manrope,sans-serif;font-weight:300;font-size:clamp(52px,5.6vw,88px);line-height:1.1;letter-spacing:-.07em;margin:25px 0}.detail-copy .lead{max-width:640px}.detail-image{background-position:center;background-size:cover;min-height:640px}.crumb{font-size:14px;color:#8d8274;margin-bottom:55px}.crumb a:hover{text-decoration:underline}.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:0 65px;margin-top:55px}.detail-list div{border-top:1px solid var(--rule);padding:22px 0;font-size:19px}.detail-list div span{font-size:14px;color:#9a8a75;margin-right:14px}.detail-bottom{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.detail-bottom .imgwrap{height:520px}.detail-bottom p{font-size:19px;line-height:1.8;color:#6d6961}.reveal{opacity:0;transform:translateY(22px);transition:opacity .9s ease,transform .9s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:1000px){.nav{height:86px}.nav img{width:170px;height:68px}.links{gap:15px;font-size:13px}.hero{min-height:680px}.section{padding:90px 0}.services{grid-template-columns:repeat(2,1fr)}.split{gap:6%}.detail-hero{min-height:550px}.detail-copy{padding:70px 7%}.detail-image{min-height:550px}}@media(max-width:740px){.nav{height:78px}.nav img{width:155px;height:65px}.menu-btn{display:block}.links{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:30px 6%;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--rule);font-size:17px;gap:23px}.links.open{display:flex}.hero{height:730px;min-height:630px}.hero-inner{padding-bottom:65px}.hero h1{font-size:clamp(50px,12vw,79px)}.hero p{font-size:18px}.split,.contact-grid,.detail-bottom{grid-template-columns:1fr;gap:35px}.section-head{display:block}.services{grid-template-columns:1fr;gap:36px}.service .imgwrap{height:370px}.editorial{grid-template-columns:1fr}.feature .imgwrap,.feature:nth-child(2) .imgwrap{height:400px}.feature:nth-child(2){margin-top:0}.steps{grid-template-columns:1fr}.dark h2{font-size:47px}.footgrid{display:block}.detail-hero{grid-template-columns:1fr}.detail-copy{padding:65px 6%}.detail-image{min-height:380px;order:-1}.detail-list{grid-template-columns:1fr}.detail-bottom .imgwrap{height:360px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* Pages légales et pied de page — V8 */
.legal-footer-links{width:100%;max-width:1180px;margin:24px auto 0;padding:20px 0 4px;border-top:1px solid rgba(255,255,255,.18);display:flex;justify-content:center;gap:16px;flex-wrap:wrap;font-size:13px;letter-spacing:.03em}.legal-footer-links a{color:inherit;text-decoration:underline;text-underline-offset:4px;opacity:.85}.legal-footer-links a:hover{opacity:1}.privacy-consent{display:flex!important;align-items:flex-start;gap:12px;margin:12px 0 22px;font-size:13px;line-height:1.6}.privacy-consent input{width:17px!important;height:17px!important;flex:0 0 17px;margin-top:3px;accent-color:#34332f}.privacy-consent a{text-decoration:underline;text-underline-offset:3px}.legal-page{background:#f7f5f0;color:#282823;min-height:60vh;padding:110px 24px 110px}.legal-inner{max-width:920px;margin:auto}.legal-kicker{text-transform:uppercase;letter-spacing:.23em;font-size:12px;color:#928572;margin-bottom:20px}.legal-page h1{font-size:clamp(44px,7vw,82px);font-weight:400;line-height:1.05;letter-spacing:-.04em;margin:0 0 22px}.legal-intro{font-size:18px;line-height:1.8;color:#68645f;margin-bottom:55px}.legal-section{padding:28px 0;border-top:1px solid #d8d2c9}.legal-section h2{font-size:25px;font-weight:500;letter-spacing:-.02em;margin:0 0 15px}.legal-section p{font-size:16px;line-height:1.85;color:#5c5852;margin:0 0 12px}.legal-section a{text-decoration:underline;text-underline-offset:3px}.legal-back{display:inline-block;margin-top:45px;text-decoration:underline;text-underline-offset:5px;font-size:14px}.legal-pending{border-left:3px solid #ab9780;padding-left:14px;color:#6b6257!important}.legal-page strong{color:#2b2926}

/* V9: premium photography, natural proportions, no blurry composite crops */
.service .imgwrap img,.detail-bottom .imgwrap img{object-fit:cover;object-position:center;image-rendering:auto;}
.detail-image{background-size:cover;background-position:center;}

/* V10 — badges et pied de page */
.footer-premium-grid{display:grid;grid-template-columns:1.3fr 1.15fr 1.15fr 1.15fr;gap:2.2rem;padding:3.2rem 0 2rem;align-items:start}
.footer-premium-grid h3{font-family:inherit;font-size:.83rem;letter-spacing:.06em;font-weight:650;margin:0 0 1.25rem;color:#fff}
.footer-brand img{width:138px;max-height:70px;object-fit:contain;object-position:left center;background:#f5f3ee;border-radius:3px;padding:6px}
.footer-brand p{margin:1.2rem 0 .3rem;font-size:.85rem}
.footer-brand small{font-size:.76rem;opacity:.68}
.footer-contact{display:flex;flex-direction:column;gap:.6rem;font-size:.86rem}
.footer-contact a,.footer-contact span{color:inherit;text-decoration:none;line-height:1.55}
.footer-social-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit;line-height:1.5;font-size:.82rem}
.footer-social-link strong{font-weight:650;color:#fff}
.instagram-mark{font-family:Arial,sans-serif;font-size:2.1rem;line-height:1;color:#fff}
.google-mark{font-family:Arial,sans-serif;font-size:2.3rem;font-weight:800;line-height:1;background:linear-gradient(45deg,#4285f4 20%,#34a853 42%,#fbbc05 60%,#ea4335 80%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-rge{display:flex;align-items:center;gap:.7rem;margin-top:1.6rem;font-size:.75rem;letter-spacing:.04em;color:#fff}
.hero-rge img{width:78px;height:42px;object-fit:contain;background:white;border-radius:3px}
.detail-rge{display:flex;align-items:center;gap:1rem;margin-top:1.8rem;font-size:.85rem;color:#57534d;max-width:360px}
.detail-rge img{width:90px;height:48px;object-fit:contain;border:1px solid #ddd8ce;border-radius:4px}
@media(max-width:900px){.footer-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}}
@media(max-width:560px){.footer-premium-grid{grid-template-columns:1fr;gap:1.5rem;padding:2rem 0}.hero-rge{margin-top:1rem}}

/* V11 — retour au pied de page sobre d’origine, icônes sociales cliquables */
.footer .footgrid{align-items:center}.footer .footgrid img{width:200px;max-width:100%;filter:invert(1)}.footer-right{text-align:right}.footer-icon-links{display:flex;justify-content:flex-end;gap:22px;margin:12px 0}.footer-icon-links a{display:inline-flex;align-items:center;gap:9px;color:#f5f2eb;font-size:13px;transition:opacity .2s}.footer-icon-links a:hover{opacity:.7;text-decoration:none}.footer-icon-links svg{flex:none}.footer .legal-footer-links{max-width:1180px}@media(max-width:740px){.footer-right{text-align:left}.footer-icon-links{justify-content:flex-start}.footer .footgrid{display:block}}

/* V13 : subtle cinematic hero push-in and transparent RGE badge */
.hero-bg{animation:heroPushIn 28s ease-out both;will-change:transform}
@keyframes heroPushIn{from{transform:scale(1)}to{transform:scale(1.045)}}
.hero-rge img{width:180px;height:auto;max-height:65px;background:transparent;border-radius:0;object-fit:contain}
@media(max-width:740px){.hero-rge img{width:130px}}
@media(prefers-reduced-motion:reduce){.hero-bg{animation:none!important}}

/* Mouvement doux de la photo principale, comme sur V4 */
.hero-bg{animation:heroApproachV14 26s ease-out both;transform-origin:center center}
@keyframes heroApproachV14{from{transform:scale(1)}to{transform:scale(1.065)}}
@media(prefers-reduced-motion:reduce){.hero-bg{animation:none!important}}

/* V16 — RGE: léger détourage, sans masquer le logo transparent */
.hero-rge img, .detail-rge img {
  box-sizing: content-box;
  padding: 7px 11px;
  background: rgba(255, 255, 255, .92) !important;
  border: 1px solid rgba(177, 158, 129, .48);
  border-radius: 8px !important;
  box-shadow: 0 3px 16px rgba(30, 24, 16, .12);
}
/* Garder le visuel Notre engagement net et sans filtre */
.detail-bottom .imgwrap img { filter: none !important; image-rendering: auto; object-fit: cover; }

/* V18 : clarté commerciale et confort mobile */
.trust-strip{padding:92px 0;background:#f0ece4}.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.trust-grid h2{font-weight:300;letter-spacing:-.05em;font-size:clamp(35px,4vw,62px);line-height:1.18;margin:18px 0}.trust-grid p{font-size:19px;line-height:1.8;color:#6b6862}.trust-grid .text-link{margin-right:20px}.form input:focus,.form select:focus,.form textarea:focus{border-bottom:2px solid #4b453d}.nav a:focus-visible,.btn-dark:focus-visible,.service:focus-visible,.footer a:focus-visible{outline:3px solid #a98b65;outline-offset:5px}.service .imgwrap img{aspect-ratio:4/3}.hero-actions a{min-height:48px;align-items:center}.privacy-consent input{width:auto!important;min-width:18px;min-height:18px}.note a{color:#35332f}.hero .eyebrow{max-width:900px}@media(max-width:740px){.trust-grid{grid-template-columns:1fr;gap:18px}.trust-strip{padding:65px 0}.hero{height:700px}.hero .eyebrow{font-size:11px;letter-spacing:.13em}.hero h1{font-size:clamp(43px,10.5vw,70px)}.hero-actions{gap:16px}.hero-inner{padding-bottom:55px}.section{padding:75px 0}.service .imgwrap{height:310px}}
