@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#181917;--paper:#f4f2ed;--wood:#987657;--muted:#66665f;--line:#d9d6ce}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,6vw,6rem);max-width:900px}h2{font-size:clamp(2.2rem,4vw,4.2rem)}h3{font-size:1.5rem}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:0}.header{background:#181917;color:white;position:relative;z-index:2}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:86px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:800 1.45rem Manrope}.brand img{width:62px;height:62px;object-fit:cover}.nav{display:flex;gap:28px;align-items:center;font-size:.9rem}.nav a{text-decoration:none}.nav a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:51px;padding:12px 24px;border:1px solid var(--ink);background:var(--ink);color:white;text-decoration:none;font-weight:700;cursor:pointer;transition:.2s}.button:hover{background:var(--wood);border-color:var(--wood)}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.outline{background:transparent;color:var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.76rem;font-weight:800;color:var(--wood)}.hero{background:#181917;color:white}.hero-grid{display:grid;grid-template-columns:48% 52%;min-height:620px}.hero-content{padding:80px 8% 80px max(24px,calc((100vw - 1200px)/2));align-self:center}.hero p{max-width:500px;color:#d2d0ca;font-size:1.15rem}.hero .eyebrow{color:#c5a889}.hero-image{position:relative;overflow:hidden}.hero-image img{height:100%;width:100%;object-fit:cover}.hero-image:after{content:'Bordeaux · Gironde';position:absolute;bottom:25px;right:25px;background:rgba(24,25,23,.85);padding:8px 16px;color:white;font-size:.85rem}.section{padding:110px 0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.intro p{font-size:1.12rem;color:#55564f}.services{background:#eae7df}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:35px}.section-head h2{margin:0;max-width:750px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.card{min-height:280px;background:var(--paper);padding:32px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;border-top:3px solid var(--wood)}.card span{font-size:2rem;color:var(--wood)}.card h3{margin:0}.card p{margin:12px 0 0;color:var(--muted);font-size:.95rem}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%}.split img{width:100%;aspect-ratio:1.15;object-fit:cover}.split p{color:#55564f}.dark{background:#222420;color:white}.dark p{color:#d4d4ce}.cta{padding:90px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:end;gap:25px}.cta h2{max-width:770px;margin-bottom:0}.page-hero{padding:90px 0 75px;background:#222420;color:white}.page-hero p{max-width:760px;color:#ddd;font-size:1.15rem}.page-hero h1{margin-bottom:22px}.prose{max-width:800px}.prose h2{margin-top:50px;font-size:2rem}.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:45px 0}.service-list article{border-top:1px solid var(--wood);padding:20px 0}.service-list p{color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:10%}.contact-grid aside p{color:var(--muted)}form{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-weight:600;font-size:.9rem}input,select,textarea{width:100%;margin-top:7px;background:white;border:1px solid #aaa9a2;padding:13px;font:inherit;color:var(--ink);border-radius:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--wood);outline-offset:1px}.full{grid-column:1/-1}.fine{font-size:.86rem;color:var(--muted)}.footer{background:#181917;color:#f2f0eb;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer p{color:#bdbeb9}.footer a{display:block;text-decoration:none;margin:8px 0}.footer-bottom{border-top:1px solid #454642;margin-top:50px;padding-top:20px;font-size:.85rem;color:#bdbeb9}.mobile-toggle{display:none}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr}.hero-content{padding:70px 24px}.hero-image{height:400px}.contact-grid{grid-template-columns:1fr}.nav{gap:14px}}@media(max-width:650px){.header .wrap{min-height:72px}.brand img{width:52px;height:52px}.mobile-toggle{display:block;background:none;border:1px solid #777;color:white;padding:8px 12px;font:inherit}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#181917;padding:22px 24px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.wrap{width:min(100% - 32px,1200px)}.section{padding:70px 0}.intro,.split,.service-list{grid-template-columns:1fr;gap:24px}.cards{grid-template-columns:1fr}.card{min-height:190px}.section-head,.cta .wrap{display:block}.cta .button{margin-top:28px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}form{grid-template-columns:1fr}.hero-image{height:300px}.page-hero{padding:65px 0 50px}}
.gallery-section{background:#eae7df}.gallery-note{max-width:380px;color:#62635d;font-size:.91rem;line-height:1.5}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.gallery figure{margin:0;background:var(--paper)}.gallery img{width:100%;aspect-ratio:1.5;object-fit:cover}.gallery figcaption{display:flex;justify-content:space-between;gap:16px;padding:19px 22px;font-family:Manrope,sans-serif;font-weight:750;font-size:1.15rem}.gallery figcaption span{font:400 .85rem 'DM Sans',sans-serif;color:var(--muted);white-space:nowrap}@media(max-width:650px){.gallery{grid-template-columns:1fr;gap:18px}.gallery figcaption{display:block}.gallery figcaption span{display:block;margin-top:3px}}
