*{box-sizing:border-box}
:root{--ink:#123642;--blue:#247fa6;--sand:#f6f1e7;--cream:#fffaf2;--gold:#d6a766;--white:#fff;--shadow:0 24px 80px rgba(18,54,66,.18)}
html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.6}a{color:inherit}.hidden{display:none}
.hero{min-height:100vh;background:url(assets/terrasse-panorama.jpg) center/cover;display:flex;flex-direction:column;position:relative}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,250,242,.92),rgba(255,250,242,.35),transparent);pointer-events:none}.hero>*{position:relative;z-index:1}
.nav{position:fixed;z-index:10;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:18px 7vw;background:rgba(255,255,255,.82);backdrop-filter:blur(16px);box-shadow:0 10px 40px rgba(18,54,66,.08)}.brand{text-decoration:none;font-weight:950}.links{display:flex;align-items:center;gap:16px}.links a{text-decoration:none;font-weight:850}.lang,.menu{border:0;background:transparent;font-weight:950;cursor:pointer}.lang.active{background:var(--ink);color:#fff;border-radius:999px;padding:7px 10px}.menu{display:none;font-size:1.7rem}
.hero-card{max-width:780px;margin:auto 7vw 9vh}.kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:950;color:var(--blue)}h1{font-size:clamp(3.3rem,8vw,7.4rem);line-height:.9;letter-spacing:-.06em;margin:18px 0}h2{font-size:clamp(2.1rem,4.8vw,4.1rem);line-height:1;letter-spacing:-.04em;margin:.25em 0 .5em}.hero-card p:not(.kicker){font-size:1.28rem}.btn{display:inline-block;padding:15px 22px;border-radius:999px;background:var(--ink);color:#fff;text-decoration:none;font-weight:950;margin:8px 8px 0 0}.btn.light{background:#fff;color:var(--ink);box-shadow:var(--shadow)}
section{padding:90px 7vw}.intro{display:grid;grid-template-columns:1fr 1fr;gap:44px;background:#fff}.intro>p{font-size:1.22rem}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;background:var(--cream)}.features article{background:#fff;border-radius:28px;padding:30px;box-shadow:var(--shadow)}.features b{color:var(--gold)}
.gallery-section{background:var(--sand)}.mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:16px}.photo{border:0;border-radius:26px;background:center/cover;box-shadow:var(--shadow);cursor:pointer;position:relative;overflow:hidden}.photo:after{content:attr(data-title-fr);position:absolute;left:14px;right:14px;bottom:14px;background:rgba(255,255,255,.88);border-radius:14px;padding:10px 12px;font-weight:900}.en .photo:after{content:attr(data-title-en)}.p0,.p7,.p10{grid-column:span 2;grid-row:span 2}
.experience{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center;background:#071d26;color:#fff}.experience .kicker{color:#e8c58c}.experience img{width:100%;border-radius:28px;box-shadow:0 30px 90px rgba(0,0,0,.5)}
.info{background:#fff}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.info-grid div{background:var(--sand);border-radius:22px;padding:22px}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;background:linear-gradient(135deg,#eaf7fb,#fff)}.note{font-weight:800;color:#58707a}
form{display:grid;gap:13px;background:#fff;padding:30px;border-radius:28px;box-shadow:var(--shadow)}label{font-weight:900}input,textarea{width:100%;margin-top:6px;border:1px solid #d7e4e8;border-radius:14px;padding:13px;font:inherit}form button{background:var(--ink);color:#fff;border:0;border-radius:999px;padding:15px;font-weight:950;font:inherit;cursor:pointer}
.inventory{background:var(--cream)}.inventory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.inventory-grid article{background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px rgba(18,54,66,.14)}.inventory-grid h3{margin-top:0}.inventory-grid ul{margin:0;padding-left:20px}.inventory-link{display:inline-block;margin-top:26px;background:var(--ink);color:#fff;text-decoration:none;padding:14px 20px;border-radius:999px;font-weight:950}
footer{text-align:center;padding:36px 7vw;background:#071d26;color:#fff}.reveal{opacity:0;transform:translateY(28px);transition:.75s ease}.reveal.visible{opacity:1;transform:none}.lightbox{position:fixed;inset:0;z-index:99;background:rgba(0,0,0,.88);display:grid;place-items:center;padding:40px}.lightbox[hidden]{display:none}.lightbox img{max-width:92vw;max-height:84vh;border-radius:18px}.lightbox p{color:#fff;font-weight:900}.lightbox button{position:absolute;top:18px;right:28px;background:transparent;color:#fff;border:0;font-size:3rem;cursor:pointer}
@media(max-width:980px){.menu{display:block}.links{display:none;position:absolute;left:0;right:0;top:64px;flex-direction:column;background:#fff;padding:24px}.links.open{display:flex}.intro,.experience,.contact{grid-template-columns:1fr}.features,.info-grid,.inventory-grid{grid-template-columns:1fr 1fr}.mosaic{grid-template-columns:repeat(2,1fr)}.p0,.p7,.p10{grid-column:auto;grid-row:auto}}
@media(max-width:640px){section{padding:66px 6vw}.features,.info-grid,.inventory-grid,.mosaic{grid-template-columns:1fr}.photo{min-height:280px}h1{font-size:3.35rem}.hero:after{background:rgba(255,250,242,.7)}.nav{padding:14px 5vw}}
