/* Style partagé des pages collections — Appart-Hôtel Berck (love room, balnéo, vue mer, famille) */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:#090909;color:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-x:clip}
a{color:#c9a84c;text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;display:block}
.topnav{background:#0b0b0b;border-bottom:1px solid #1e1e1e;padding:10px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.topnav .brand{font-family:'Playfair Display',serif;color:#c9a84c;font-size:1.15rem;letter-spacing:.04em}
.topnav .links{display:flex;gap:16px;flex-wrap:wrap;font-size:.85rem}
.topnav .links a{color:#bbb}.topnav .links a.on{color:#c9a84c;font-weight:600}
.breadcrumb{padding:14px 24px;font-size:.85rem;color:#999;max-width:1100px;margin:0 auto}
.breadcrumb a{color:#c9a84c}.breadcrumb span{color:#666;margin:0 6px}
.hero{position:relative;max-height:480px;overflow:hidden}
.hero img{width:100%;height:480px;object-fit:cover}
.hero-overlay{position:absolute;inset:auto 0 0 0;background:linear-gradient(transparent,rgba(9,9,9,.92));padding:60px 24px 24px}
.hero-inner{max-width:1100px;margin:0 auto}
.hero .badge{display:inline-block;background:#c9a84c;color:#090909;padding:4px 14px;border-radius:20px;font-size:.78rem;font-weight:700;margin-bottom:10px;letter-spacing:.04em}
.hero h1{font-family:'Playfair Display',serif;font-size:2.3rem;line-height:1.15;color:#c9a84c}
.container{max-width:1100px;margin:0 auto;padding:0 24px}
.section{padding:36px 0;border-bottom:1px solid #1e1e1e}
.section h2{font-family:'Playfair Display',serif;font-size:1.65rem;color:#c9a84c;margin-bottom:16px}
.section h3{font-family:'Playfair Display',serif;font-size:1.2rem;color:#e6c76a;margin:18px 0 8px}
.lead{font-size:1.1rem;color:#ddd;line-height:1.8;max-width:860px}
.lead strong{color:#fff}
p.txt{color:#ccc;line-height:1.8;margin:.6em 0;max-width:860px}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:12px;border:1px solid #222;border-radius:12px}
table.compare{width:100%;border-collapse:collapse;font-size:.9rem;min-width:640px;background:#111}
table.compare th,table.compare td{padding:11px 12px;text-align:left;border-bottom:1px solid #222;white-space:nowrap}
table.compare th{background:#161616;color:#c9a84c;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
table.compare td:first-child{font-weight:600;color:#fff}
table.compare tr:last-child td{border-bottom:none}
.yes{color:#7ed07e;font-weight:700}.no{color:#666}
.choose{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:8px}
.choose a{background:#141414;border:1px solid #222;border-radius:12px;padding:16px 18px;color:#fff;display:block;transition:border-color .2s}
.choose a:hover{border-color:#c9a84c;text-decoration:none}
.choose .k{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#888;margin-bottom:4px}
.choose .v{font-family:'Playfair Display',serif;color:#c9a84c;font-size:1.1rem}
.choose .why{font-size:.85rem;color:#aaa;margin-top:4px}
.logement{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;align-items:start;padding:28px 0;border-bottom:1px solid #1e1e1e}
.logement:last-child{border-bottom:none}
.logement img{width:100%;height:280px;object-fit:cover;border-radius:12px;border:1px solid #222}
.logement h3{margin-top:0}
.logement .meta{color:#999;font-size:.9rem;margin-bottom:10px}
.logement .meta b{color:#c9a84c}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}
.chips span{background:#141414;border:1px solid #2a2a2a;border-radius:20px;padding:5px 12px;font-size:.82rem;color:#ddd}
.chips span::before{content:"\2713 ";color:#c9a84c;font-weight:700}
.btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.btn{display:inline-block;padding:11px 22px;border-radius:30px;font-weight:700;font-size:.92rem;transition:background .2s,transform .2s}
.btn.gold{background:#c9a84c;color:#090909}.btn.gold:hover{background:#d4b65e;text-decoration:none;transform:translateY(-1px)}
.btn.line{border:1px solid #c9a84c;color:#c9a84c}.btn.line:hover{background:#1a1a1a;text-decoration:none}
.others{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.others a{background:#141414;border:1px solid #222;border-radius:12px;padding:16px;color:#fff;display:block}
.others a:hover{border-color:#c9a84c;text-decoration:none}
.others strong{color:#c9a84c;font-size:1.05rem}.others span{color:#999;font-size:.88rem;display:block;margin-top:4px}
.infos{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.infos div{background:#141414;border:1px solid #222;border-radius:12px;padding:16px}
.infos b{color:#c9a84c;display:block;margin-bottom:4px;font-size:.95rem}
.infos p{color:#bbb;font-size:.9rem;line-height:1.6}
.faq details{background:#141414;border:1px solid #222;border-radius:10px;margin-bottom:10px;padding:0 18px}
.faq summary{cursor:pointer;padding:14px 0;font-weight:600;color:#fff;list-style:none;position:relative;padding-right:28px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:12px;color:#c9a84c;font-size:1.3rem}
.faq details[open] summary::after{content:"\2212"}
.faq p{color:#ccc;padding:0 0 16px;line-height:1.7}
.cta-final{text-align:center;padding:48px 24px;background:linear-gradient(180deg,#0d0d0d,#141414);border-top:1px solid #1e1e1e}
.cta-final h2{font-family:'Playfair Display',serif;color:#c9a84c;font-size:1.7rem;margin-bottom:8px}
.cta-final p{color:#bbb;margin-bottom:18px}
footer{border-top:1px solid #222;padding:32px 24px;text-align:center;color:#666;font-size:.85rem}
footer a{color:#c9a84c}footer .footer-links{margin-bottom:12px;display:flex;justify-content:center;gap:20px;flex-wrap:wrap}
@media(max-width:760px){
  .hero img{height:300px}.hero h1{font-size:1.55rem}.hero-overlay{padding:40px 16px 16px}
  .container{padding:0 16px}.breadcrumb{padding:12px 16px}
  .logement{grid-template-columns:1fr;gap:14px}.logement img{height:220px}
  .section{padding:28px 0}.section h2{font-size:1.4rem}
  .topnav{padding:10px 16px}.topnav .links{font-size:.8rem;gap:12px}
}
