@font-face{font-family:DM;src:url('assets/dm-sans-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:DM;src:url('assets/dm-sans-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--paper:#f8f6f0;--ink:#33352e;--green:#344c3d;--light:#e9eadf;--line:#cccfc3;--muted:#64685e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 DM,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #8c704b;outline-offset:5px}input:focus,textarea:focus,select:focus{outline:2px solid var(--green);outline-offset:2px}.wrap{max-width:1320px;width:calc(100% - 112px);margin:auto}.header{padding:31px 0 26px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:28px}.brand{font-size:31px;font-weight:700;letter-spacing:1.2px;line-height:1.15}.brand span{display:block;font-size:15px;font-weight:400;letter-spacing:.8px;margin-top:9px}nav{display:flex;align-items:center;gap:30px;font-size:15px}nav a:hover,.text-link:hover{color:var(--green);text-decoration:underline;text-underline-offset:6px}.nav-contact{border:1px solid var(--green);padding:10px 18px;border-radius:2px}.nav-contact span{margin-left:15px}.eyebrow{font-size:12px;letter-spacing:1.8px;text-transform:uppercase;font-weight:700;margin:0 0 25px;color:var(--green)}h1,h2,blockquote{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2px}h1{font-size:clamp(52px,5.2vw,78px);line-height:1.05;margin:0 0 30px}em{font-weight:400;color:var(--green)}h2{font-size:clamp(36px,3.4vw,50px);line-height:1.16;margin:0}h3{font-size:25px;line-height:1.3;font-weight:400;margin:0 0 12px}p{margin:0 0 20px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;padding:58px 0 68px;align-items:center}.hero-copy{padding:14px 0}.hero-intro{font-size:23px;line-height:1.45}.hero-description{max-width:490px;color:var(--muted);font-size:17px;line-height:1.7;margin-bottom:30px}.hero-description strong{color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:52px;background:var(--green);color:#fff;padding:15px 22px;border:1px solid var(--green);border-radius:2px;cursor:pointer;font-size:16px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#263d2f;transform:translateY(-2px)}.button span{font-size:22px;font-weight:400;line-height:1}.hero-note{font-size:16px;color:var(--muted);max-width:490px;margin:17px 0 0}.hero-image{margin:0;position:relative;min-width:0}.hero-image img{display:block;width:100%;height:560px;object-fit:cover;background:#e3ded0}.hero-image figcaption{padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}.image-note{font-size:10px;color:var(--muted);text-align:right}.ribbon{background:var(--light);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ribbon .wrap{display:flex;justify-content:center;align-items:center;gap:26px;padding-top:20px;padding-bottom:20px;font-size:15px}.ribbon i{font-size:24px;color:#89927d}.section{padding-top:100px;padding-bottom:100px}.approach{display:grid;grid-template-columns:1fr 1fr;gap:90px}.prose{max-width:560px}.prose p{font-size:17px;color:var(--muted)}.prose .lead{font-size:24px;line-height:1.5;color:var(--ink)}.prose .underlined{border-top:1px solid var(--line);padding-top:25px;margin-top:28px;color:var(--green)}.experience{background:var(--green);color:var(--paper)}.experience-inner{text-align:center;padding-top:65px;padding-bottom:65px}.experience .eyebrow{color:#c9d3c0;margin-bottom:25px}.experience blockquote{font-size:clamp(30px,3.5vw,51px);line-height:1.3;margin:0 auto 28px}.experience em{color:#dbe1cb}.experience p:last-child{font-size:16px;color:#d6dbd0;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:50px}.section-heading>p{max-width:415px;color:var(--muted);font-size:17px;margin-bottom:3px}.steps article{display:grid;grid-template-columns:70px 1fr 190px;align-items:start;border-top:1px solid var(--line);gap:32px;padding:32px 0}.steps article:last-child{border-bottom:1px solid var(--line)}.step-number{font-family:Georgia,serif;font-size:28px;color:#7c876f}.steps p{max-width:650px;font-size:17px;color:var(--muted);margin:0}.step-tag{text-align:right;font-size:13px;letter-spacing:.4px;padding-top:10px;color:var(--green)}.scope{display:grid;grid-template-columns:1fr 2fr;gap:35px;margin-top:30px;font-size:15px}.scope p{margin:0;color:var(--muted)}.pricing-section{background:var(--light);padding:80px 0}.pricing{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.pricing h2{margin-bottom:30px}.pricing>div>p:not(.eyebrow){max-width:470px;font-size:17px;color:var(--muted)}.price-card{background:var(--paper);padding:35px 40px;border:1px solid #d5d6ca}.price-label{text-transform:uppercase;font-size:12px!important;letter-spacing:1.2px}.price{display:flex;align-items:baseline;gap:17px;font-family:Georgia,serif;font-size:88px;line-height:1.1;color:var(--green);letter-spacing:-3px}.price>span{font:23px DM,Arial,sans-serif;letter-spacing:0}.price small{display:block;font-size:14px;margin-top:7px;color:var(--muted)}.tax{font-size:13px!important;margin:12px 0 28px}.calculator{border-top:1px solid var(--line);padding-top:23px}.calculator label{font-size:14px}.calc-row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:15px 0}.calc-row select{width:46%;padding:12px;background:#fff;border:1px solid #929d8a;border-radius:2px;color:var(--ink);font-size:17px}.calc-row output{text-align:right;font-size:21px;color:var(--green);font-weight:700}.calc-row output span{display:block;font-size:13px;font-weight:400;color:var(--muted)}.calculator>p{font-size:12px;color:var(--muted);margin-bottom:25px}.price-card .button{width:100%}.questions{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}details{border-bottom:1px solid var(--line);padding:22px 0}details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;font-size:18px;list-style:none;display:flex;gap:25px;justify-content:space-between}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:var(--green);font-size:24px;line-height:1.1}details[open] summary:after{content:'−'}details p{font-size:16px;color:var(--muted);padding-top:17px;margin-bottom:0}.contact-section{border-top:1px solid var(--line);padding:80px 0;background:#efece3}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact h2{margin-bottom:28px}.contact>div>p:last-child{font-size:17px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:14px;margin-bottom:8px}label span{color:var(--green)}input,textarea{width:100%;padding:13px 15px;background:#fff;border:1px solid #bfc2b4;color:var(--ink);border-radius:2px;font-size:16px;margin-bottom:18px}textarea{resize:vertical}::placeholder{color:#767a6e}.form-note{font-size:12px;color:var(--muted);margin-top:14px}.draft{border-top:1px solid var(--line);padding-top:18px;font-size:15px}.draft p{margin:8px 0}.text-link{text-decoration:underline;text-underline-offset:5px;color:var(--green)}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:35px;padding-bottom:35px}.footer .brand{font-size:22px}.footer p,.footer>a{font-size:12px;color:var(--muted);margin:0}.footer .brand span{font-size:15px}
@media(min-width:1600px){.hero-image img{height:610px}.hero{padding-top:75px;padding-bottom:75px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}nav{gap:18px}.brand{font-size:26px}.hero{gap:35px}.hero-image img{height:540px}h1{font-size:56px}.hero-intro{font-size:21px}.approach,.pricing,.contact{gap:45px}.price-card{padding:30px}.steps article{grid-template-columns:50px 1fr 130px;gap:22px}.section{padding-top:75px;padding-bottom:75px}.section-heading{gap:35px}.questions{gap:40px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{flex-direction:column;align-items:flex-start;padding-top:22px;padding-bottom:18px;gap:22px}.brand{font-size:27px}.brand span{font-size:14px}nav{width:100%;justify-content:space-between;gap:12px;font-size:12px}.nav-contact{padding:6px 9px}.nav-contact span{margin-left:5px}.hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:35px;gap:30px}.hero-copy{padding:0}.eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:19px}h1{font-size:clamp(44px,10vw,66px);letter-spacing:-1.8px;margin-bottom:24px}.hero-description{font-size:16px;margin-bottom:24px}.hero-note{font-size:15px}.hero-image img{height:430px}.ribbon .wrap{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;font-size:12px}.ribbon i{display:none}.ribbon strong{font-weight:700}.section{padding-top:55px;padding-bottom:55px}.approach,.questions,.pricing,.contact{grid-template-columns:1fr;gap:30px}h2{font-size:36px;letter-spacing:-1px}.prose .lead{font-size:21px}.prose p{font-size:16px}.experience-inner{padding-top:45px;padding-bottom:45px}.experience blockquote{letter-spacing:-.8px;font-size:31px}.experience p:last-child{font-size:14px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;font-size:16px}.steps article{grid-template-columns:34px 1fr;gap:13px;padding:24px 0}.step-tag{grid-column:2;text-align:left;padding:0;font-size:11px}.step-number{font-size:23px}h3{font-size:22px}.steps p{font-size:15px}.scope{grid-template-columns:1fr;gap:9px;font-size:14px}.pricing-section,.contact-section{padding:50px 0}.price-card{padding:25px}.price{font-size:76px}.questions{gap:28px}summary{font-size:16px}.form-row{grid-template-columns:1fr;gap:0}.footer{flex-wrap:wrap;padding:25px 0;gap:23px}.footer .brand{width:100%}.footer p{font-size:11px}.hero-image figcaption{font-size:12px}.image-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.button:hover{transform:none}}
/* Palette retenue : Sauge et crème. */
:root{--hover:#263d2f;--contact:#efece3;--on-dark:#f8f6f0;--soft-dark:#d6dbd0}
.button:hover{background:var(--hover)}.experience{color:var(--on-dark)}.experience .eyebrow,.experience em,.experience p:last-child{color:var(--soft-dark)}.contact-section{background:var(--contact)}.step-number{color:var(--green)}.price-card{border-color:var(--line)}.calc-row select,input,textarea{border-color:var(--line)}

@media(max-width:360px){.header .brand{font-size:24px;letter-spacing:1px}}

/* Bandeau : petites capitales, plus lisibles. */
.ribbon .wrap{font-size:18px;letter-spacing:1px}
.ribbon .wrap>span,.ribbon .wrap>strong{font-variant-caps:all-small-caps}
@media(max-width:760px){.ribbon .wrap{font-size:16px;letter-spacing:.6px}}

@media(min-width:1051px){.scope{grid-template-columns:220px minmax(0,1fr)}}

@media(min-width:761px) and (max-width:1050px){.ribbon .wrap{gap:16px}}

/* Essai typographique à la place de la photo. */
.hero-statement{background:var(--light);min-height:560px;display:flex;align-items:center;padding:52px 46px;color:var(--green)}
.hero-statement blockquote{margin:0;width:100%;letter-spacing:-1.5px;line-height:1.14}
.hero-statement p{margin:0}
.statement-first{font-size:clamp(34px,3.2vw,47px);color:var(--ink)}
.statement-rule{height:1px;width:72px;background:var(--green);opacity:.45;margin:36px 0}
.statement-second{font-size:clamp(38px,3.65vw,54px)}
.statement-second em{white-space:nowrap}
@media(min-width:1600px){.hero-statement{min-height:610px}}
@media(min-width:761px) and (max-width:1050px){.hero-statement{padding:35px 28px;min-height:540px}.statement-second{font-size:36px}.statement-first{font-size:32px}}
@media(max-width:760px){.hero-statement{min-height:360px;padding:38px 28px}.statement-first{font-size:34px}.statement-second{font-size:38px}.statement-rule{margin:27px 0}}
@media(max-width:360px){.hero-statement{padding:32px 22px}.statement-first{font-size:30px}.statement-second{font-size:33px}}

/* Essai du portrait carré dans la colonne droite. */
.hero-portrait{margin:0;justify-self:center;width:81%;max-width:373px;overflow:hidden}
.hero-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;transform:scale(1.3);transform-origin:50% 15%}
@media(max-width:760px){.hero-portrait{max-width:292px}}

/* Environ 6 mm supplémentaires de chaque côté sur ordinateur. */
@media(min-width:1051px){.wrap{width:calc(100% - 160px);max-width:1272px}}

/* Lien de contact du pied, plus visible. */
.footer > .footer-contact{font-size:16px;font-weight:600;color:#47413C}
