:root{--ink:#173b33;--forest:#244f44;--cream:#f7f2e8;--sand:#e9dfcf;--white:#fff;--muted:#5c6c66;--accent:#b86846;--serif:'Newsreader',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:400 1rem/1.7 var(--sans);background:#fff}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:.98;letter-spacing:-.03em}h2{font-size:clamp(2.6rem,5vw,5rem)}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:600;color:var(--accent)}.site-header{height:88px;padding:0 clamp(20px,5vw,80px);display:flex;align-items:center;justify-content:space-between;background:#fff;position:relative;z-index:20}.brand{text-decoration:none;line-height:1.15}.brand span{display:block;font:500 1.4rem var(--serif)}.brand small{display:block;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;margin-top:5px}.site-header nav{display:flex;gap:clamp(12px,2vw,30px);align-items:center}.site-header nav a{text-decoration:none;font-size:.85rem;font-weight:500}.nav-cta{border:1px solid var(--forest);border-radius:99px;padding:10px 18px}.menu-button{display:none;background:none;border:1px solid var(--forest);border-radius:99px;padding:8px 15px;color:var(--ink)}.hero{min-height:calc(100vh - 88px);position:relative;display:grid;grid-template-columns:52% 48%;background:var(--cream);overflow:hidden}.hero-photo{background:linear-gradient(90deg,transparent 72%,var(--cream)),url('/assets/chemin-lumiere.png') center/cover no-repeat;min-height:650px}.hero-card{align-self:center;padding:60px clamp(28px,6vw,100px) 80px clamp(30px,5vw,84px)}.hero h1{font-size:clamp(4rem,8vw,8.4rem);margin:15px 0 25px}.hero h1 em{color:var(--accent);font-weight:400}.lead{font:400 clamp(1.25rem,2vw,1.75rem)/1.35 var(--serif);max-width:540px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:38px;flex-wrap:wrap}.button{display:inline-block;border:0;background:var(--forest);color:#fff;text-decoration:none;border-radius:99px;padding:16px 24px;font:600 .9rem var(--sans);cursor:pointer}.text-link{text-decoration:none;font-weight:600;font-size:.9rem}.text-link span{color:var(--accent);margin-left:8px}.hero-note{position:absolute;left:5vw;bottom:35px;color:#fff;font-size:.85rem;line-height:1.5;text-shadow:0 1px 8px #000}.section{padding:clamp(80px,10vw,150px) clamp(24px,8vw,130px);scroll-margin-top:30px}.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw}.intro-grid h2{max-width:800px}.intro-grid div{font-size:1.1rem;padding-top:15px}.soft{background:var(--cream)}.section-heading{max-width:760px;margin-bottom:60px}.section-heading>p:last-child{max-width:580px;font-size:1.1rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d7cdbd}.cards article{background:#fff;padding:45px 36px;min-height:300px}.number{font:400 1rem var(--serif);color:var(--accent)}.cards h3{font:400 2rem var(--serif);margin:55px 0 15px}.notice{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-top:35px;padding:30px;border-top:1px solid #cfc2ae}.notice strong{font-family:var(--serif);font-size:1.3rem}.notice p{margin:0}.relatives{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--forest);color:#fff}.relatives .eyebrow{color:#e6a88e}.relatives-copy{font-size:1.1rem}.relatives ul{list-style:none;padding:15px 0 0}.relatives li{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.2)}.relatives li:before{content:'—';color:#e6a88e;margin-right:14px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;border-top:1px solid var(--sand);padding-top:35px}.timeline span{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.timeline h3{font:400 1.7rem/1.15 var(--serif);margin:18px 0}.quote{font:400 clamp(2rem,4vw,4rem)/1.12 var(--serif);max-width:1000px;margin:100px auto 0;text-align:center;color:var(--accent)}.faq details{max-width:980px;border-top:1px solid #cec2b1;padding:25px 0}.faq details:last-child{border-bottom:1px solid #cec2b1}.faq summary{font:400 1.5rem var(--serif);cursor:pointer;list-style:none;display:flex;justify-content:space-between}.faq summary:after{content:'+';color:var(--accent)}.faq details[open] summary:after{content:'–'}.faq details p{max-width:720px;margin:20px 0 0;color:var(--muted)}.pricing{display:grid;grid-template-columns:1fr .8fr;gap:10vw;align-items:start}.pricing>div:first-child>p:last-child{max-width:620px;font-size:1.1rem}.price-card{background:var(--cream);padding:45px}.price-card p{margin:0}.price-card strong{font:400 2.4rem var(--serif);display:block;margin-top:5px}.price-card span{display:block;color:var(--muted);font-size:.85rem}.price-card hr{border:0;border-top:1px solid #d7cbb9;margin:30px 0}.price-card .button{margin-top:35px}.contact{padding:clamp(80px,10vw,140px) clamp(24px,8vw,130px);background:#dccfba;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact h2{font-size:clamp(3.2rem,6vw,6.5rem)}.contact>div>p:not(.eyebrow):not(.location){max-width:520px}.location{font-weight:600;margin-top:40px}.contact form{display:grid;gap:18px}.contact label{font-size:.82rem;font-weight:600}.contact label span{font-weight:400}.contact input,.contact textarea{display:block;width:100%;border:0;border-bottom:1px solid #796f61;background:transparent;padding:10px 2px;font:inherit;color:var(--ink);outline:none}.contact textarea{border:1px solid #a79a87;margin-top:8px;padding:12px;resize:vertical}.contact form .button{justify-self:start}.contact form small{color:var(--muted)}footer{padding:35px clamp(24px,8vw,130px);display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:center;font-size:.78rem}footer div strong,footer div span{display:block}footer div strong{font:500 1.2rem var(--serif)}footer p{margin:0}.site-header nav a:focus-visible,.button:focus-visible,.menu-button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media(max-width:950px){.menu-button{display:block}.site-header nav{display:none;position:absolute;top:80px;left:16px;right:16px;background:#fff;padding:25px;box-shadow:0 15px 35px #173b3322;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr;min-height:auto}.hero-photo{min-height:48vh;background:linear-gradient(0deg,var(--cream),transparent 35%),url('/assets/chemin-lumiere.png') center/cover no-repeat}.hero-card{padding-top:35px}.hero-note{top:40vh;bottom:auto}.intro-grid,.relatives,.pricing,.contact{grid-template-columns:1fr}.cards,.timeline{grid-template-columns:1fr}.cards article{min-height:auto}.cards h3{margin-top:25px}.notice{grid-template-columns:1fr}.relatives,.pricing,.contact{gap:35px}footer{grid-template-columns:1fr}footer p{margin:0}}@media(max-width:600px){.site-header{height:76px}.brand span{font-size:1.2rem}.hero h1{font-size:3.8rem}.hero-actions{align-items:flex-start;flex-direction:column}.section{padding-top:75px;padding-bottom:75px}.cards article{padding:32px 25px}.quote{margin-top:65px}.price-card{padding:30px 24px}}
