:root{--ivory:#F7F4EC;--sand:#EEE6D6;--champ:#CBBBA0;--gold:#76592A;--ink:#343332;--soft:#5E5A52;--line:rgba(52,51,50,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font:17px/1.65 "Helvetica Neue",Arial,sans-serif}
h1,h2,h3{font-family:Garamond,"EB Garamond","Times New Roman",serif;font-weight:400;line-height:1.1;margin:0 0 .5em}
h1{font-size:clamp(2.4rem,6vw,4.6rem)}h2{font-size:clamp(1.8rem,3.4vw,2.7rem)}h3{font-size:1.4rem}
a{color:inherit;text-decoration-color:#AA8951;text-underline-offset:.2em}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:8px;top:-60px;background:var(--ink);color:#fff;padding:10px 14px}.skip:focus{top:8px}
header{background:rgba(247,244,236,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;flex-wrap:wrap}
.mark{text-decoration:none;display:flex;flex-direction:column;line-height:1}
.mark b{font:400 1.5rem Garamond,"Times New Roman",serif;letter-spacing:.34em;text-transform:uppercase}
.mark small{font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-top:.4rem}
nav{display:flex;gap:22px;flex-wrap:wrap;font-size:.92rem}nav a{text-decoration:none;border-bottom:1px solid transparent;padding:4px 0}nav a:hover,nav a[aria-current]{border-color:#AA8951}
.btn{display:inline-block;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:13px 26px;text-decoration:none;font:500 .95rem Arial,sans-serif;cursor:pointer}
.btn:hover{background:var(--gold);border-color:var(--gold)}.btn.out{background:transparent;color:var(--ink)}.btn.out:hover{background:var(--ink);color:#fff}
.hero{background:linear-gradient(135deg,#2c2b29,#4a4741 60%,#6b6050);color:#fff;padding:clamp(90px,16vw,200px) 0 clamp(60px,9vw,110px)}
.hero h1{font-style:italic;max-width:14ch}.hero p{font-size:1.2rem;max-width:44ch;color:rgba(255,255,255,.92)}
.hero .btn{background:var(--ivory);color:var(--ink);border-color:var(--ivory)}.hero .btn.out{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.sec{padding:clamp(48px,8vw,96px) 0}.sand{background:var(--sand)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));border-bottom:1px solid var(--line);margin:0}
.facts div{padding:22px 18px 22px 0}.facts dt{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700}.facts dd{margin:4px 0 0;font:1.7rem Garamond,serif}
.figs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:28px;list-style:none;padding:28px 0 0;margin:40px 0 0;border-top:1px solid var(--line)}
.figs b{display:block;font:clamp(2.6rem,5vw,4rem) Garamond,serif;color:var(--gold);line-height:1;font-weight:400}.figs span{font-size:.9rem;color:var(--soft)}
.split{display:grid;gap:40px;grid-template-columns:1fr}@media(min-width:900px){.split{grid-template-columns:1fr 1fr}}
.lead{font:clamp(1.25rem,2vw,1.55rem) Garamond,serif;line-height:1.5}
.note{font-size:.84rem;color:var(--soft)}
.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}.card:hover{border-color:#AA8951}
.card a{text-decoration:none;display:flex;flex-direction:column;height:100%}
.card .top{background:var(--ivory);border-bottom:1px solid var(--line);padding:26px 20px;display:flex;justify-content:space-between;align-items:baseline}
.card .lot{font:3rem Garamond,serif;line-height:1;color:var(--gold)}.card .type{font-size:.85rem;color:var(--soft);text-align:right}
.card .body{padding:18px 20px;flex:1;display:flex;flex-direction:column}.card h3{margin:0 0 4px}.card .meta{font-size:.9rem;color:var(--soft);margin:0 0 14px}
.card .foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:12px;flex-wrap:wrap}.price{font:1.4rem Garamond,serif}
.card.sold{opacity:.6}
.st{font-size:.82rem;font-weight:700;display:inline-flex;gap:6px;align-items:center}.st i{width:9px;height:9px;border-radius:50%;background:#3F6B4A;display:inline-block}
.st.reserve{color:#9A6B1E}.st.reserve i{background:#9A6B1E}.st.vendu{color:#7A756C}.st.vendu i{background:none;border:2px solid #7A756C}
.filters{display:grid;gap:14px 20px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;padding:18px 0 24px;border-bottom:1px solid var(--line)}
label{display:block;font-size:.84rem;font-weight:600;margin-bottom:4px}
input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;font:inherit;background:#fff;border:1px solid rgba(52,51,50,.35);padding:12px;border-radius:0;min-height:46px}
.bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0;flex-wrap:wrap}.count{font:1.4rem Garamond,serif;margin:0}
.tog button{font:inherit;border:1px solid rgba(52,51,50,.35);background:none;padding:9px 16px;cursor:pointer}.tog button[aria-pressed=true]{background:var(--ink);color:#fff}
.chips{display:flex;gap:8px;flex-wrap:wrap}.chips button{font:inherit;border:1px solid rgba(52,51,50,.35);background:none;padding:9px 16px;cursor:pointer}.chips button[aria-pressed=true]{background:var(--ink);color:#fff}
.tw{overflow-x:auto;border:1px solid var(--line);background:#fff}table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:780px}
th,td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line)}thead th{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);background:var(--ivory)}td.n,th.n{text-align:right;white-space:nowrap}
tbody th{font:1.25rem Garamond,serif;font-weight:400}
.spec{margin:0}.spec div{display:grid;grid-template-columns:11rem 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.spec dt{color:var(--soft);font-size:.92rem}.spec dd{margin:0}
.pricebox{background:var(--sand);padding:22px 24px;margin:0 0 18px}.pricebox b{display:block;font:clamp(2.2rem,4vw,3rem) Garamond,serif;font-weight:400;line-height:1}
.extras div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.94rem}
.form{display:grid;gap:16px;max-width:760px}.two{display:grid;gap:16px;grid-template-columns:1fr}@media(min-width:640px){.two{grid-template-columns:1fr 1fr}}
.kinds{display:flex;gap:10px;flex-wrap:wrap;border:0;padding:0;margin:0}.kinds label{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(52,51,50,.35);padding:10px 14px;margin:0;font-weight:500;cursor:pointer}
.hp{position:absolute;left:-9999px}.ok{background:#fff;border:1px solid var(--line);padding:26px}.err{background:#fbeee9;border-left:3px solid #a1442e;padding:12px 14px}
.places{list-style:none;padding:0;margin:20px 0;display:grid;gap:0 24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));border-top:1px solid var(--line)}
.places li{padding:18px 0;border-bottom:1px solid var(--line)}.places b{display:block;font:2.2rem Garamond,serif;font-weight:400;color:var(--gold);line-height:1}
.plain{list-style:none;padding:0;margin:16px 0}.plain li{padding:10px 0 10px 20px;border-top:1px solid var(--line);position:relative}.plain li:before{content:"";position:absolute;left:0;top:20px;width:6px;height:6px;background:#AA8951}
.map button{margin-top:10px}.map iframe{width:100%;height:420px;border:0}
footer{background:var(--ink);color:#E9E4D8;margin-top:0}footer a{color:#fff}footer .wrap{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding-top:48px;padding-bottom:40px}
footer h4{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--champ);margin:0 0 8px}footer p{font-size:.92rem;margin:0 0 12px}
.legal{border-top:1px solid rgba(255,255,255,.15);font-size:.78rem;opacity:.8;padding:18px 24px;max-width:1200px;margin:0 auto}
.empty{padding:28px;background:#fff;border:1px dashed var(--champ)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.ph{width:100%;height:auto;display:block;margin:0 0 20px;border:1px solid var(--line)}.plan{background:#fff;padding:10px;object-fit:contain}.mat{width:64px;height:64px;object-fit:cover;float:left;margin:0 14px 6px 0;border:1px solid var(--line)}.pl{background:#fff;border-bottom:1px solid var(--line);padding:12px;height:230px;display:flex;align-items:center;justify-content:center}.pl img{max-width:100%;max-height:100%;object-fit:contain}.gal{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.gal figure{margin:0}.gal img{width:100%;height:auto;display:block}.gal figcaption{font-size:.85rem;color:var(--soft);padding-top:6px}

.plain li:has(>.mat){display:flex;align-items:center;min-height:80px;padding-left:24px}.plain li:has(>.mat)::before{top:50%;transform:translateY(-50%)}.plain li>.mat{float:none;flex:none;display:block;width:64px;height:64px;margin:0 16px 0 0;object-fit:cover;border:1px solid var(--line)}

.mt{display:none}
@media(max-width:760px){header .wrap{min-height:64px;flex-wrap:nowrap;gap:12px}.mark b{font-size:1.2rem}.mt{display:inline-block;background:none;border:1px solid var(--ink);padding:9px 16px;font:500 .9rem Arial,sans-serif;cursor:pointer;color:var(--ink)}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ivory);flex-direction:column;gap:0;padding:4px 24px 14px;border-bottom:1px solid var(--line);font-size:1.05rem}nav.open{display:flex}nav a{padding:14px 0;border-bottom:1px solid var(--line)}nav a:last-child{border-bottom:0}.hero{padding:56px 0 44px}.hero h1{font-size:clamp(2.4rem,11vw,3.4rem);max-width:none;text-align:left}.hero p{text-align:left}.hero .btn{display:block;text-align:center;margin:0 0 10px}.wrap{padding:0 20px}.sec{padding:44px 0}.split{gap:28px}.facts div{padding:16px 12px 16px 0}}

/* Charte CONCORDE : émeraude #103D34, or champagne #C3A26C, ivoire #F7F4EB, greige #D8D1C5, charbon #292B28 */
:root{--ivory:#F7F4EB;--sand:#E7E2D8;--champ:#C3A26C;--ink:#292B28;--emerald:#103D34;--line:rgba(41,43,40,.16)}
body{background:var(--ivory);color:var(--ink)}header{background:rgba(247,244,235,.97)}
.logo{display:block;height:48px;width:auto}.flogo{display:block;width:min(260px,100%);height:auto;margin-bottom:10px}.mark{line-height:0}
a{text-decoration-color:var(--champ)}nav a:hover,nav a[aria-current]{border-color:var(--champ)}
.btn{background:var(--emerald);border-color:var(--emerald)}.btn:hover{background:#0b2d26;border-color:#0b2d26}.btn.out{background:transparent;color:var(--emerald)}.btn.out:hover{background:var(--emerald);color:#fff}
.hero .btn{background:var(--ivory);color:var(--emerald);border-color:var(--ivory)}.hero .btn:hover{background:#fff}.hero .btn.out{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.hero{background:linear-gradient(135deg,#0b2d26,#103D34 60%,#1b5649)}
footer{background:var(--emerald)}footer h4{color:var(--champ)}footer .legal{border-top-color:rgba(195,162,108,.35)}
.card .lot,.figs b,.places b{color:var(--emerald)}.card:hover{border-color:var(--champ)}.plain li:before{background:var(--champ)}
.tog button[aria-pressed=true],.chips button[aria-pressed=true]{background:var(--emerald);border-color:var(--emerald)}.skip{background:var(--emerald)}
.facts dt,thead th,.mark small{color:#7A5F2E}
@media(max-width:760px){.logo{height:38px}}
