:root{--ink:#18322c;--paper:#f5f1e8;--lime:#d9ef6f;--cream:#fffdf8;--muted:#71807a;--line:#d8ddd7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 Arial,sans-serif}img{max-width:100%;display:block}a{color:inherit}.skip{position:fixed;top:-100px;left:1rem;z-index:99;background:white;padding:1rem}.skip:focus{top:1rem}.topbar{height:82px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:rgba(255,253,248,.94);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20;border-bottom:1px solid #e7e8e2}.brand{text-decoration:none;letter-spacing:.19em;font-size:18px}.brand b{display:inline-grid;place-items:center;width:42px;height:42px;background:var(--ink);color:var(--paper);letter-spacing:0;border-radius:50%}nav{display:flex;align-items:center;gap:2rem}nav a{text-decoration:none;font-size:14px}.nav-cta{background:var(--ink);color:white;padding:.8rem 1.15rem}.menu{display:none;border:0;background:none;font:inherit}.hero{height:calc(100vh - 82px);min-height:650px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,25,21,.84) 0%,rgba(8,25,21,.3) 58%,rgba(8,25,21,.08)),linear-gradient(0deg,rgba(8,25,21,.32),transparent 50%)}.hero-copy{position:absolute;left:7vw;top:50%;transform:translateY(-52%);max-width:680px}.eyebrow{margin:0 0 1.25rem;font-weight:700;font-size:12px;letter-spacing:.2em}.green{color:#41705e}.lime{color:var(--lime)}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(52px,7vw,104px);line-height:.93;margin:0 0 1.75rem;letter-spacing:-.045em}h1 em{color:var(--lime);font-weight:400}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:540px;color:#ebeee9}.hero-actions{display:flex;align-items:center;gap:1.6rem;margin-top:2rem}.button{border:0;padding:1rem 1.45rem;text-decoration:none;font-weight:700;display:inline-flex;gap:1.5rem;align-items:center;cursor:pointer;font-size:15px}.button.light{background:var(--cream);color:var(--ink)}.button.lime{background:var(--lime);color:var(--ink)}.text-link{text-underline-offset:5px}.price-card{position:absolute;right:4vw;bottom:3.5vw;background:var(--paper);color:var(--ink);padding:1.35rem 1.6rem;min-width:300px}.price-card span,.price-card small{display:block}.price-card span{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.price-card strong{display:block;font:32px Georgia,serif;margin:.25rem 0}.price-card small{color:var(--muted)}.facts{display:grid;grid-template-columns:repeat(5,1fr);padding:0 4vw;border-bottom:1px solid var(--line)}.facts div{padding:2rem;border-right:1px solid var(--line)}.facts div:last-child{border:0}.facts b{display:block;font:38px Georgia,serif}.facts span{color:var(--muted);font-size:13px}.split{display:grid;grid-template-columns:42% 58%;gap:8vw;padding:8rem 7vw}.sticky{align-self:start;position:sticky;top:120px}.split h2,.section-title h2,.equipment h2,.location h2,.contact h2,.tour h2{font-size:clamp(40px,5vw,72px);line-height:1.02;letter-spacing:-.035em;margin:.5rem 0 1.5rem}.intro{font-size:20px;max-width:560px;color:#53625d}.feature-list article{display:grid;grid-template-columns:62px 1fr;gap:1.5rem;padding:2.4rem 0;border-top:1px solid var(--line)}.feature-list article:last-child{border-bottom:1px solid var(--line)}.feature-list article>span{font-size:12px;color:var(--muted)}.feature-list h3{font-size:30px;margin:0 0 .8rem}.feature-list p{margin:0;color:#5d6c66;max-width:620px}.gallery-section{background:var(--paper);padding:7rem 4vw}.section-title{max-width:880px;margin:0 auto 3rem;text-align:center}.section-title>p:last-child{color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:360px;gap:12px;max-width:1500px;margin:auto}.tile{position:relative;padding:0;border:0;overflow:hidden;background:#ddd;cursor:zoom-in}.tile.wide{grid-column:span 2}.tile img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.tile:hover img{transform:scale(1.035)}.tile span{position:absolute;left:1rem;bottom:1rem;background:rgba(255,253,248,.94);padding:.55rem .8rem;color:var(--ink);font-size:13px}.split-dark{background:var(--ink);color:white;display:grid;grid-template-columns:36% 64%;gap:5vw;padding:7rem 5vw}.tour>div:first-child{align-self:center}.tour>div:first-child>p:not(.eyebrow){color:#bdc9c5;max-width:500px}.tour-link{display:inline-block;margin-left:1rem;color:white;font-size:14px}.viewer{min-height:630px;position:relative;overflow:hidden;background:#0d1f1a}.viewer>img{width:100%;height:100%;object-fit:cover;opacity:.78}.viewer>span{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:110px;height:110px;border-radius:50%;border:1px solid white;font:24px Georgia,serif;background:rgba(10,30,24,.45)}.viewer iframe{width:100%;height:100%;border:0}.disclaimer{grid-column:1/-1;margin:0;color:#91a29c;font-size:12px}.equipment{padding:7rem 6vw}.equipment .section-title{text-align:left;margin-left:0}.chips{display:flex;flex-wrap:wrap;gap:.75rem}.chips span{border:1px solid var(--line);border-radius:99px;padding:.8rem 1.2rem}.location{background:var(--paper);align-items:center}.map-card{min-height:480px;background:var(--ink);color:white;padding:4rem;display:flex;flex-direction:column;justify-content:flex-end;position:relative}.map-card:before,.map-card:after{content:"";position:absolute;background:#345047}.map-card:before{height:1px;left:0;right:0;top:38%}.map-card:after{width:1px;top:0;bottom:0;left:58%}.pin{position:absolute;left:58%;top:38%;transform:translate(-50%,-50%);z-index:2;width:70px;height:70px;border-radius:50% 50% 50% 0;rotate:-45deg;background:var(--lime);color:var(--ink);display:grid;place-items:center;font:700 20px Arial}.pin::first-line{rotate:45deg}.map-card p,.map-card a{position:relative;z-index:2}.map-card a{color:var(--lime)}.times{list-style:none;padding:0;margin:2rem 0}.times li{display:grid;grid-template-columns:80px 1fr;padding:1rem 0;border-top:1px solid var(--line)}.times li:last-child{border-bottom:1px solid var(--line)}.times b{font:24px Georgia,serif}.contact{background:var(--lime);display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;padding:7rem}.contact-card{background:var(--cream);padding:2.5rem;align-self:center}.contact-card>span,.contact-card>small{display:block;color:var(--muted)}.contact-card>strong{display:block;font:36px Georgia,serif;margin:.5rem 0 0}.contact-card .button{background:var(--ink);color:white;margin-top:2rem;width:100%;justify-content:space-between}footer{padding:2rem 4vw;display:flex;gap:2rem;align-items:center;justify-content:space-between;font-size:13px}dialog{border:0;padding:0;background:#0b1714;color:white;width:min(94vw,1400px);max-width:none}dialog::backdrop{background:rgba(4,12,9,.88)}dialog img{width:100%;max-height:82vh;object-fit:contain}dialog p{padding:0 1.5rem 1rem}.close{position:absolute;right:1rem;top:1rem;width:44px;height:44px;border:0;border-radius:50%;background:white;font-size:28px;cursor:pointer}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}:focus-visible{outline:3px solid #5ba486;outline-offset:4px}
@media(max-width:900px){.menu{display:block}.topbar{flex-wrap:wrap}.topbar nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--cream);padding:1rem 5vw 2rem;flex-direction:column;align-items:flex-start;box-shadow:0 15px 20px #0001}.topbar nav.open{display:flex}.hero{min-height:720px}.hero-copy{left:6vw;right:6vw;top:42%}.price-card{left:6vw;right:auto;bottom:5vw}.facts{grid-template-columns:repeat(2,1fr)}.facts div{padding:1.4rem}.split,.split-dark,.contact{grid-template-columns:1fr;padding:5rem 6vw}.sticky{position:static}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:280px}.tile.wide{grid-column:span 1}.viewer{min-height:520px}.contact{gap:2rem}footer{align-items:flex-start;flex-direction:column}.tour-link{display:block;margin:1rem 0}}
@media(max-width:560px){h1{font-size:50px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:.9rem}.price-card{right:6vw;min-width:0}.price-card strong{font-size:27px}.facts{grid-template-columns:1fr 1fr}.facts div:last-child{grid-column:1/-1}.gallery{grid-template-columns:1fr;grid-auto-rows:280px}.split-dark{padding-left:5vw;padding-right:5vw}.viewer{min-height:480px}.map-card{min-height:380px;padding:2rem}.contact-card{padding:1.5rem}.contact{padding:4rem 5vw}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.tile img{transition:none}}

/* Palette inspirée de la façade : terre cuite, sable et métal anthracite. */
:root{--ink:#24211f;--paper:#eee8df;--lime:#d7804b;--cream:#fbf8f3;--muted:#756f69;--line:#d8cfc4;--copper:#b85e33;--anthracite:#2f3030}
.brand b{background:var(--copper)}
.topbar{background:rgba(251,248,243,.94);border-color:var(--line)}
.nav-cta{background:var(--anthracite)}
.hero{background:var(--anthracite)}
.hero>img{object-position:center 48%}
.shade{background:linear-gradient(90deg,rgba(26,23,21,.86) 0%,rgba(26,23,21,.42) 54%,rgba(26,23,21,.08)),linear-gradient(0deg,rgba(26,23,21,.38),transparent 54%)}
.green,.copper{color:var(--copper)}
.split-dark{background:var(--anthracite)}
.viewer{background:#171615}
.viewer>img{opacity:.42;filter:saturate(.85)}
.viewer>small{position:absolute;left:50%;top:calc(50% + 78px);transform:translateX(-50%);width:100%;text-align:center;color:#fff;font-size:13px;letter-spacing:.06em}
.plan-section{background:var(--cream);align-items:center}
.plan-copy{align-self:center}
.plan-image{min-height:640px;background:#fff;border:1px solid var(--line)}
.plan-image img{width:100%;height:100%;max-height:720px;object-fit:contain;padding:1.5rem}
.map-card{padding:0;min-height:520px;background:var(--anthracite);overflow:hidden}
.map-card:before,.map-card:after,.map-card .pin{display:none}
.map-card iframe{width:100%;height:520px;border:0;filter:saturate(.75) contrast(.96)}
.map-card a{position:absolute;left:1rem;bottom:1rem;background:var(--anthracite);color:#fff;padding:.8rem 1rem;text-decoration:none}
.contact{background:var(--copper);color:white}
.contact .lime{color:white}
.contact-card{color:var(--ink)}
:focus-visible{outline-color:var(--copper)}
@media(max-width:900px){.plan-image{min-height:500px}.map-card,.map-card iframe{min-height:460px;height:460px}}
@media(max-width:560px){.plan-image{min-height:420px}.hero>img{object-position:58% center}.map-card,.map-card iframe{min-height:400px;height:400px}}
