:root{--p:#9b1c4a;--p2:#7a1439;--ink:#231b1f;--mut:#6b5f65;--bg:#fff;--s:#faf5f7;--b:#eadfe4;--r:10px;--w:1120px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--p);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}
h1{font-size:1.75rem;line-height:1.2;margin:.2em 0 .5em}h2{font-size:1.3rem;margin:1.6em 0 .6em}h3{font-size:1.05rem;margin:0 0 .3em}p{margin:.5em 0}
.wrap{max-width:var(--w);margin:0 auto;padding:0 16px}.narrow{max-width:760px}
.site-header{border-bottom:1px solid var(--b);background:var(--bg)}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;min-height:56px;gap:12px}
.logo{font-weight:700;color:var(--ink);font-size:1.1rem;display:flex;align-items:center;gap:8px;white-space:nowrap}.logo-heart{width:24px;height:24px;color:var(--p);display:inline-block;flex:none}.logo-heart:before,.logo-heart:after{content:"";position:absolute;width:18px;height:18px;background:var(--p);border-radius:50%}.logo-heart:before{left:-9px}.logo-heart:after{top:-9px}
.site-header nav{display:flex;gap:14px;flex-wrap:wrap;font-size:.95rem}.site-header nav a{color:var(--ink)}.nav-owner{font-weight:600;color:var(--p)!important}
@media(max-width:640px){.site-header nav{gap:10px;font-size:.88rem}.site-header nav a:nth-child(3){display:none}}
.site-footer{background:var(--s);border-top:1px solid var(--b);margin-top:48px;padding:32px 0;font-size:.92rem;color:var(--mut)}.site-footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}.site-footer strong{display:block;color:var(--ink);margin-bottom:8px}.site-footer a{display:block;color:var(--mut);margin:0;padding:8px 0}.copy{margin-top:24px;font-size:.85rem}
.crumbs{font-size:.85rem;color:var(--mut);margin:14px 0 6px}.crumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:4px}.crumbs li+li:before{content:"›";margin:0 4px}
.hero{background:var(--s);padding:28px 0 22px;border-bottom:1px solid var(--b)}.hero p.lead{font-size:1.05rem;max-width:820px}
.intro{max-width:820px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;margin:16px 0}
.card{border:1px solid var(--b);border-radius:var(--r);overflow:hidden;background:var(--bg);display:flex;flex-direction:column}.card.sponsored{border-color:var(--p);box-shadow:0 0 0 1px var(--p) inset}
.card-img{display:block;aspect-ratio:4/3;background:var(--s);overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover}.nophoto{display:block;width:100%;height:100%;background:linear-gradient(135deg,#f3e6ec,#e9d3dc)}
.card-body{padding:12px 14px 14px}.card h3{font-size:1rem;line-height:1.3}.card h3 a{color:var(--ink)}.card-city{color:var(--mut);font-size:.9rem;margin:2px 0}.card-am{font-size:.85rem;color:var(--mut);margin:4px 0}.card-price{margin:6px 0 0;font-size:.95rem}
.badge{display:inline-block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--p);border:1px solid var(--p);border-radius:4px;padding:1px 6px;margin-bottom:6px}
.links{columns:2;column-gap:24px;padding:0;list-style:none;margin:8px 0}.links li{break-inside:avoid;padding:3px 0}.links small{color:var(--mut)}@media(min-width:760px){.links{columns:3}.links.c4{columns:4}}
.faq{border-top:1px solid var(--b);padding:10px 0}.faq summary{cursor:pointer;font-weight:600}.faq p{margin:8px 0 0;color:#3d3338}
.btn{display:inline-block;background:var(--p);color:#fff!important;padding:12px 20px;border-radius:8px;font-weight:600;text-decoration:none!important;border:0;cursor:pointer;font-size:1rem;text-align:center}.btn:hover{background:var(--p2)}.btn.sec{background:var(--bg);color:var(--p)!important;border:2px solid var(--p);padding:10px 18px}.btn.small{padding:8px 14px;font-size:.9rem}
.cta{border:1px solid var(--b);border-radius:var(--r);padding:18px;background:var(--s);margin:18px 0}.cta .price{font-size:1.35rem;margin:0 0 10px}.cta .price strong{color:var(--p)}.cta .actions{display:flex;flex-wrap:wrap;gap:10px}.cta .actions .btn{flex:1 1 200px}
.contact-list{list-style:none;padding:0;margin:8px 0}.contact-list li{padding:6px 0;border-top:1px solid var(--b)}.contact-list a{font-weight:600}
.room-head{display:grid;gap:20px;margin-top:8px}@media(min-width:900px){.room-head{grid-template-columns:3fr 2fr;align-items:start}}
.gallery{display:grid;gap:6px;grid-template-columns:repeat(4,1fr)}.gallery a{display:block;border-radius:6px;overflow:hidden;background:var(--s);aspect-ratio:4/3}.gallery a:first-child{grid-column:1/-1;aspect-ratio:16/10}.gallery img{width:100%;height:100%;object-fit:cover}.gallery .more{display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--p);background:var(--s);border:1px dashed var(--b);font-size:.9rem;aspect-ratio:4/3;border-radius:6px}
.amen{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.amen h3{color:var(--mut);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.amen ul{padding-left:18px;margin:0}.amen li{padding:2px 0}
.meta{color:var(--mut);font-size:.9rem}
.tags a{display:inline-block;border:1px solid var(--b);border-radius:20px;padding:4px 12px;margin:4px 6px 0 0;font-size:.9rem}
.review{border-top:1px solid var(--b);padding:12px 0}.review .stars{color:#d29a1a;letter-spacing:1px}.review blockquote{margin:6px 0 0;padding-left:12px;border-left:3px solid var(--b);color:#3d3338}.reply{margin:8px 0 0 12px;font-size:.92rem;color:var(--mut)}
form{max-width:640px}label{display:block;font-weight:600;margin:14px 0 4px}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=url],input[type=number],select,textarea{width:100%;padding:10px 12px;border:1px solid #cbbcc3;border-radius:8px;font:inherit;background:#fff}textarea{min-height:120px}.hint{font-size:.85rem;color:var(--mut);margin:2px 0 0}.check{display:flex;align-items:flex-start;gap:8px;font-weight:400;margin:8px 0}.check input{margin-top:4px}
.flash{padding:12px 16px;border-radius:8px;margin:14px auto;max-width:var(--w)}.flash-ok{background:#e8f5ec;color:#1d5a2f}.flash-err{background:#fbe8ec;color:#8a1b33}.flash-info{background:#eef2fb;color:#2b4382}
.hp{position:absolute;left:-9999px;top:-9999px}
table.tbl{border-collapse:collapse;width:100%;font-size:.93rem}.tbl th,.tbl td{border-bottom:1px solid var(--b);padding:8px 6px;text-align:left;vertical-align:top}.tbl th{color:var(--mut);font-weight:600;font-size:.82rem;text-transform:uppercase}
.stat{display:inline-block;min-width:130px;border:1px solid var(--b);border-radius:8px;padding:10px 14px;margin:6px 8px 6px 0}.stat b{display:block;font-size:1.4rem;color:var(--p)}.stat span{font-size:.85rem;color:var(--mut)}
.dash-room{border:1px solid var(--b);border-radius:var(--r);padding:14px;margin:12px 0;display:flex;gap:14px;flex-wrap:wrap;align-items:center}.dash-room img{width:120px;height:90px;object-fit:cover;border-radius:6px}.dash-room .grow{flex:1 1 240px}
.photo-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.photo-admin figure{margin:0;border:1px solid var(--b);border-radius:8px;padding:6px;font-size:.8rem}.photo-admin img{aspect-ratio:4/3;object-fit:cover;width:100%;border-radius:4px}.photo-admin form{display:inline}
.article{max-width:760px}.article img{border-radius:var(--r);margin:16px 0}.article h2{margin-top:1.4em}.article ul,.article ol{padding-left:22px}.post-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.post-list article{border:1px solid var(--b);border-radius:var(--r);overflow:hidden}.post-list img{aspect-ratio:16/9;object-fit:cover;width:100%}.post-list .pb{padding:12px 14px}.post-list .pb small{color:var(--mut)}
.notice{border-left:4px solid var(--p);background:var(--s);padding:10px 14px;margin:12px 0;border-radius:0 8px 8px 0;font-size:.95rem}
.two{display:grid;gap:24px}@media(min-width:800px){.two{grid-template-columns:1fr 1fr}}
.lb{position:fixed;inset:0;background:rgba(20,10,14,.94);display:flex;align-items:center;justify-content:center;z-index:50}.lb img{max-width:96vw;max-height:88vh;width:auto;height:auto;object-fit:contain}.lb button{position:absolute;background:none;border:0;color:#fff;font-size:2rem;cursor:pointer;padding:12px}.lb .x{top:6px;right:10px}.lb .prev{left:6px;top:50%}.lb .next{right:6px;top:50%}

.cals{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.cal{border-collapse:collapse;width:100%;font-size:.85rem;text-align:center}.cal caption{font-weight:600;margin-bottom:6px;text-transform:capitalize}.cal th{color:var(--mut);font-weight:500;font-size:.75rem}.cal td{padding:4px 0;border-radius:4px}.cal .busy{background:#f1d3dc;color:#8a1b33;text-decoration:line-through}.cal .free{background:#eaf6ee}.cal .past{color:#c6bcc0}.cal-key{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:middle;margin:0 4px 0 8px}.cal-key.busy{background:#f1d3dc}.cal-key.free{background:#eaf6ee}
.map{min-height:60px}.map.on{height:380px;border-radius:var(--r);overflow:hidden;border:1px solid var(--b)}.map-sec .btn{margin:4px 0}.leaflet-popup-content a{font-weight:600}
.news{background:var(--s);border:1px solid var(--b);border-radius:var(--r);padding:18px;margin:24px 0}.news form{display:flex;gap:8px;flex-wrap:wrap;max-width:none;align-items:flex-end}.news label{margin:0;flex:1 1 220px}.news input{margin-top:4px}.news .btn{flex:0 0 auto}

.card-note{font-size:.82rem;color:var(--mut);margin:4px 0 0}.card-note.ok{color:#1d5a2f;font-weight:600}
.search input[type=date]{padding:9px 10px}

@font-face{font-family:"Playfair Display";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/playfair-600.woff2) format("woff2")}
.serif,h1,.card h3{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-weight:600}
.site-header .wrap{gap:18px}.site-header nav{align-items:center}.site-header nav>a,.dd summary{color:var(--ink);padding:6px 2px;cursor:pointer;list-style:none;font-size:.95rem}.dd{position:relative}.dd summary::-webkit-details-marker{display:none}.dd summary:after{content:" ⌄";font-size:.8em}.dd-menu{position:absolute;top:100%;left:0;z-index:20;background:#fff;border:1px solid var(--b);border-radius:10px;box-shadow:0 10px 30px rgba(35,27,31,.12);padding:8px;min-width:230px;max-height:70vh;overflow:auto;columns:1}.dd-menu a{display:block;padding:6px 10px;border-radius:6px;color:var(--ink);font-size:.92rem}.dd-menu a:hover{background:var(--s);text-decoration:none}
.hright{display:flex;align-items:center;gap:10px}.ico{color:var(--ink);display:flex;padding:6px}.avatar{width:34px;height:34px;border-radius:50%;background:var(--s);border:1px solid var(--b);display:flex;align-items:center;justify-content:center;color:var(--ink);font-weight:600;text-decoration:none!important}
@media(max-width:760px){.site-header nav{display:none}}
.hero{position:relative;background:#2a1a20 url(/images/hero-bg.webp) center/cover no-repeat;color:#fff;padding:56px 0 46px;border:0}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,12,18,.55),rgba(30,12,18,.7))}.hero .wrap{position:relative;max-width:880px;text-align:center}.hero h1{font-size:2.4rem;margin:.4em 0 .2em}.hbadge{display:inline-block;border:1px solid rgba(255,255,255,.5);border-radius:20px;padding:4px 14px;font-size:.8rem;letter-spacing:.04em}.tagline{font-size:1.15rem;margin:0 auto 22px;max-width:640px;color:rgba(255,255,255,.92)}.hero .lead{color:rgba(255,255,255,.9);font-size:1rem;max-width:820px;margin:0 auto 22px}.hstats{margin-top:14px;font-size:.9rem;color:rgba(255,255,255,.85)}
@media(max-width:640px){.hero{padding:34px 0 30px}.hero h1{font-size:1.7rem}.tagline{font-size:1.15rem}.hero .lead{font-size:.92rem}}
.pill{display:flex;align-items:stretch;background:#fff;border-radius:999px;box-shadow:0 8px 30px rgba(35,27,31,.15);padding:6px;max-width:100%;text-align:left;color:var(--ink)}.pill-q{display:flex;align-items:center;gap:10px;flex:1 1 220px;padding:0 16px;color:var(--p)}.pill-q input{border:0;flex:1;min-width:0;font:inherit;font-size:1.05rem;padding:12px 0;background:none;color:var(--ink);outline:none}.pill-q:focus-within{box-shadow:inset 0 0 0 2px var(--p);border-radius:999px}.pill-d{display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--b);padding:4px 16px;margin:0;font-weight:400;min-width:150px}.pill-d span{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);font-weight:600}.pill-d input{border:0;font:inherit;font-size:1rem;padding:0;background:none;color:var(--ink)}.pill-btn{border:0;background:var(--p);color:#fff;border-radius:999px;padding:0 24px;font:inherit;font-size:1.05rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:10px;margin-left:6px}.pill-btn:hover{background:var(--p2)}
@media(max-width:760px){.pill{flex-wrap:wrap;border-radius:18px;gap:4px;padding:8px}.pill-q{flex-basis:100%;border-bottom:1px solid var(--b);padding:2px 10px}.pill-d{flex:1 1 45%;border-left:0;padding:8px 10px;min-width:0}.pill-d+.pill-d{border-left:1px solid var(--b)}.pill-btn{flex-basis:100%;justify-content:center;padding:14px;margin:6px 0 0;border-radius:14px}.hstats{gap:8px 20px;font-size:.95rem}}
.pill-d{position:relative}.pill-d input[type=date]{min-height:24px;-webkit-appearance:none;appearance:none;width:100%;min-width:0}.pill-d .ph{display:none;position:absolute;left:16px;bottom:8px;font-style:normal;color:#766b70;pointer-events:none;font-size:1rem}.pill-d input[value=""]:not(:focus)+.ph{display:block}@media(max-width:760px){.pill-d .ph{left:10px;bottom:9px}}
.sband{background:#f4ede9;padding:10px 0 24px}.stitle{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:14px}.stitle h1{font-size:2.4rem;margin:0}.eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--p);margin:0 0 4px;font-weight:600}.scount{color:var(--mut);margin:0}
.slayout{display:grid;gap:28px;padding-top:22px}@media(min-width:900px){.slayout{grid-template-columns:270px 1fr}}
.filters{font-size:.95rem}.filters form{max-width:none}.ftitle{font-weight:600;font-size:1.05rem;margin:14px 0 6px;display:flex;justify-content:space-between;align-items:center}.count{background:var(--s);border:1px solid var(--b);border-radius:6px;padding:0 8px;font-size:.8rem}.filters details{border-top:1px solid var(--b);padding:10px 0}.filters summary{cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px;list-style:none}.filters summary::-webkit-details-marker{display:none}.filters summary:after{content:"⌄";margin-left:auto;color:var(--mut)}.filters details[open] summary:after{content:"⌃"}.filters input[type=search],.filters select{margin:8px 0 6px;padding:8px 10px}
.cb-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin:8px 0}.cb{display:flex;align-items:center;gap:8px;font-weight:400;margin:0;font-size:.92rem}.cb input{width:18px;height:18px;accent-color:var(--p)}.more summary{color:var(--p);font-weight:400;font-size:.92rem}.more summary:after{content:"⌄";margin-left:4px}
.filters input[type=range]{width:100%;accent-color:var(--p);margin:10px 0 2px}.range-l{display:flex;justify-content:space-between;font-size:.85rem;color:var(--mut)}
.segs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.seg input{position:absolute;opacity:0;width:0}.seg span{display:block;text-align:center;border:1px solid var(--b);border-radius:8px;padding:8px 4px;font-size:.88rem;cursor:pointer}.seg input:checked+span{background:#ece7e9;border-color:#d9cfd4;font-weight:600}.clear{color:var(--ink);font-size:.9rem;margin-left:8px}
.rhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--b);color:var(--mut);font-size:.95rem}.toggle{display:flex;background:var(--s);border:1px solid var(--b);border-radius:10px;padding:4px}.toggle a{padding:6px 14px;border-radius:7px;color:var(--ink);font-size:.9rem}.toggle a.on{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08);font-weight:600}
.pager{display:flex;justify-content:center;gap:18px;margin:20px 0;align-items:center}.empty{padding:30px 0;color:var(--mut)}
.cards{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px}.card{border-radius:14px;box-shadow:0 2px 10px rgba(35,27,31,.05)}.card.sponsored{border-color:#e9c46a;box-shadow:0 0 0 1px #e9c46a inset}.card-img{position:relative}.badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:4px;align-items:flex-start}.bd{font-size:.72rem;font-weight:600;padding:3px 9px;border-radius:6px;color:#fff;background:rgba(35,27,31,.75)}.bd.gold{background:#d9a441}.bd.teal{background:#3a7d7c}.bd.green{background:#2e7d4f}.bd.grey{background:#6b5f65}.price-pill{position:absolute;right:12px;bottom:12px;background:#fff;color:var(--ink);font-weight:700;font-size:.92rem;padding:5px 10px;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.card h3{font-size:1.15rem;margin:2px 0 6px}.card h3 a:hover{color:var(--p)}.card-city{display:flex;align-items:center;gap:6px;color:var(--mut);font-size:.9rem}.card-city svg{width:15px;height:15px}.dept{margin-left:auto;border:1px solid var(--b);border-radius:6px;padding:1px 8px;font-size:.78rem;color:var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}.chip{background:var(--s);border:1px solid var(--b);border-radius:8px;padding:3px 9px;font-size:.8rem;color:#3d3338}.chip.decor{background:#f3ebee;border-color:#e9d3dc}.card-link{display:block;margin-top:10px;font-size:.9rem;font-weight:600}
.owner-card{background:#fbf1f1;border-color:#f1d8db;padding:22px;display:flex;flex-direction:column;justify-content:center;gap:8px}.owner-card h3{font-size:1.5rem;margin:6px 0}.owner-card ul{list-style:none;padding:0;margin:4px 0 10px}.owner-card li{display:flex;align-items:center;gap:8px;color:var(--p);font-weight:500;margin:6px 0}.owner-card li svg{color:var(--p)}.owner-card .btn{margin-top:auto;text-align:center}

.center{text-align:center}.center h2{font-size:1.9rem;margin:1.6em 0 .2em}.sub{color:var(--mut);margin:0 0 20px}.crown{color:#d9a441}.center .cards{text-align:left}
.slot-card{border:2px dashed #e9c46a;background:#fffbf3;align-items:center;text-align:center;padding:26px 20px;justify-content:center}.slot-card .crown{display:inline-flex;width:52px;height:52px;border-radius:50%;background:#fdf0d5;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:8px}.slot-card h3{font-size:1.3rem;margin:4px 0}.slot-card ul{list-style:none;padding:0;margin:8px 0 14px;color:var(--mut);font-size:.92rem}.slot-card li{margin:4px 0}.slot-card .btn{color:#b8791a!important;border-color:#e9c46a;background:#fff}.slot-card small{display:block;margin-top:10px;color:var(--mut)}
.tabs input{position:absolute;opacity:0;width:0}.tabbar{display:inline-flex;background:#eeeaec;border-radius:10px;padding:4px;margin:0 auto 22px}.tabbar label{padding:8px 26px;border-radius:8px;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:6px}.tabbar label svg{width:16px;height:16px}#t1:checked~.tabbar label[for=t1],#t2:checked~.tabbar label[for=t2],#t3:checked~.tabbar label[for=t3]{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1);font-weight:600}.panel{display:none}#t1:checked~.p1,#t2:checked~.p2,#t3:checked~.p3{display:grid}
.tiles{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;text-align:left}.tile{display:flex;align-items:center;gap:14px;border:1px solid var(--b);border-radius:12px;padding:16px;color:var(--ink);background:#fff}.tile:hover{text-decoration:none;border-color:#d9cfd4;box-shadow:0 4px 14px rgba(35,27,31,.06)}.tile strong{display:block;font-size:1.05rem}.tile small{color:var(--mut)}.tico{width:42px;height:42px;border-radius:50%;background:#fbe8ec;color:var(--p);display:flex;align-items:center;justify-content:center;flex:0 0 42px}.chev{margin-left:auto;color:var(--mut);font-size:1.4rem}
.feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;text-align:center}.feat>div{border:1px solid var(--b);border-radius:14px;padding:26px 20px;background:#fff}.fico{display:inline-flex;width:52px;height:52px;border-radius:50%;background:#fbe8ec;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:8px}.feat h3{font-size:1.15rem}.feat p{color:var(--mut);font-size:.95rem}
.role{background:#fbeef0;border-radius:22px;padding:40px 36px;margin:44px 0;display:grid;gap:30px;align-items:center}@media(min-width:860px){.role{grid-template-columns:1fr 1fr}}.role h2{font-size:2.2rem;margin:.2em 0 .4em}.role>div>p{color:#3d3338}.kpi{border-left:3px solid var(--p);padding-left:14px;margin-top:22px;color:var(--mut)}.kpi b{font-family:"Playfair Display",Georgia,serif;font-size:1.6rem;color:var(--ink);margin-right:8px}.role ul{list-style:none;padding:0;margin:0}.role li{display:flex;flex-direction:column;gap:4px;padding:16px 0 16px 58px;border-top:1px solid #f0d9de;position:relative}.role li:first-child{border-top:0}.role li:before{content:"♥";position:absolute;left:0;top:14px;width:42px;height:42px;border-radius:21px;background:#f6d7dd;color:var(--p);display:flex;align-items:center;justify-content:center}.role li span{color:#3d3338;font-size:.95rem}
.press{background:#f7f6f6;margin:30px -16px;padding:40px 16px;text-align:center}.press>div{display:flex;justify-content:center;gap:56px;flex-wrap:wrap;align-items:center;margin-top:22px}.press img{height:48px;width:auto;filter:grayscale(1);opacity:.7}.eyebrow.center{letter-spacing:.25em;font-size:.95rem;color:#3d3338}
.redcta{background:linear-gradient(135deg,#e63a5b,#c62145);color:#fff;border-radius:22px;padding:46px 24px;text-align:center;margin:40px 0}.heart{display:inline-flex;width:70px;height:70px;border-radius:50%;background:rgba(255,255,255,.2);align-items:center;justify-content:center;font-size:2rem}.redcta h2{font-size:2rem;margin:.5em 0 .4em}.redcta p{max-width:620px;margin:0 auto 22px;color:rgba(255,255,255,.9)}.btn.white{background:#fff;color:var(--p)!important}.btn.ghost{background:none;border:1px solid rgba(255,255,255,.7);color:#fff!important}
.center-h{max-width:820px;margin:40px auto}.center-h h2{text-align:center;font-size:2rem}.center-h p{color:#3d3338;font-size:1.05rem;line-height:1.7}

.pro-hero{background:linear-gradient(135deg,#fdf3f5,#fbe8ec);padding:44px 0 36px}.pro-hero h1{font-size:2.6rem;line-height:1.1}.accent{color:var(--p)}.hbadge.dark,.hbadge.pink{color:var(--p);border-color:#e9c3cd;background:#fff;margin-bottom:10px}.pro-hero .lead{font-size:1.05rem;color:#3d3338}.actions{display:flex;gap:10px;flex-wrap:wrap}.ticks{list-style:none;padding:0;margin:14px 0 0}.ticks li{display:flex;gap:8px;align-items:flex-start;margin:8px 0;color:#3d3338}.ticks svg{color:var(--p);flex:0 0 16px;margin-top:4px}
.kpis{display:grid;gap:14px;align-content:center}.kpis>div{background:#fff;border:1px solid #f0d9de;border-radius:14px;padding:18px 22px;display:flex;align-items:baseline;gap:14px}.kpis b{font-family:"Playfair Display",Georgia,serif;font-size:2rem;color:var(--p)}.kpis span{color:var(--mut)}
.options{text-align:left;margin-top:24px}.opt{border:1px solid var(--b);border-radius:14px;padding:26px;background:#fff}.opt h3{font-size:1.35rem}.inline{display:flex;gap:8px;max-width:none;margin-top:12px}.inline input{flex:1}.sr{position:absolute;left:-9999px}
.offers{text-align:left;margin-top:24px}.offer{border:1px solid var(--b);border-radius:16px;padding:28px;background:#fff;position:relative}.offer.gold{border-color:#e9c46a;background:#fffbf3}.offer h3{font-size:1.5rem;margin:0 0 4px}.offer .price{font-size:1.4rem;font-weight:700;margin:0 0 14px}.offer .price small{font-weight:400;color:var(--mut);font-size:.9rem;margin-left:6px}.reco{position:absolute;top:-12px;right:20px;background:#d9a441;color:#fff;font-size:.75rem;font-weight:600;padding:3px 12px;border-radius:12px}
.cmp{max-width:900px;margin:20px auto 0;text-align:left}.cmp th{font-size:.9rem;text-transform:none;color:var(--ink)}.cmp td:first-child{font-weight:600}
.meta.light{color:rgba(255,255,255,.8)}

.hstats{display:flex;justify-content:center;gap:26px;flex-wrap:wrap}.hstats b{font-weight:700;color:#fff}
.occ{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;margin:22px 0 0}.occ>span{color:var(--mut);margin-right:6px}.chip.big{padding:7px 14px;font-size:.92rem;background:#fff;color:var(--ink)}.chip.big:hover{border-color:var(--p);color:var(--p);text-decoration:none}
.press-inline{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:22px}.press-inline span{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--mut)}.press-inline img{height:30px;width:auto;filter:grayscale(1);opacity:.7}

.btn.gold{background:#d9a441}.btn.gold:hover{background:#b8791a}.offers-list{display:grid;gap:12px}.offer-card{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--b);border-radius:12px;padding:14px;cursor:pointer;font-weight:400;margin:0}.offer-card input{margin-top:6px}.offer-card.full{opacity:.55}.oc-body{display:flex;flex-direction:column;gap:4px}.oc-body strong{font-size:1.05rem}.oc-body small{color:var(--mut)}.oc-price{font-weight:700;color:var(--p)}.oc-left{font-size:.85rem;color:var(--mut)}.offer-card:has(input:checked){border-color:var(--p);background:#fdf3f5}.segs.three{grid-template-columns:repeat(3,1fr)}.seg small{display:block;color:var(--p);font-size:.78rem}
@media print{.site-header,.site-footer,.noprint{display:none}}
/* ---- Fiche love room (v19) : en-tête, mosaïque, encart réservation collant, barre mobile ---- */
.room h1{font-size:2rem;margin:.1em 0 .2em}@media(max-width:640px){.room h1{font-size:1.5rem}}
.rhead{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:flex-start;justify-content:space-between}.rhead .where{color:var(--mut);margin:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rhead .where svg{width:16px;height:16px;color:var(--p)}.rhead .bds{margin:6px 0 0;display:flex;gap:6px}
.bd{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;font-weight:600;padding:3px 9px;border-radius:999px;background:#fff;border:1px solid var(--b)}.bd svg{width:13px;height:13px}.bd.teal{background:#1f6f6b;color:#fff;border-color:#1f6f6b}.bd.gold{background:#b8791a;color:#fff;border-color:#b8791a}
.rchips{margin:8px 0 14px}.chip.price{background:#fbe8ec;color:#8a1b33;font-weight:600;border-color:transparent}
.room-grid{display:grid;gap:28px;align-items:start}@media(min-width:900px){.room-grid{grid-template-columns:minmax(0,1fr) 340px}}
.mosaic{display:grid;gap:8px;grid-template-columns:repeat(4,1fr);grid-auto-rows:120px;position:relative;margin-bottom:8px}.mosaic a{display:block;border-radius:10px;overflow:hidden;background:var(--s)}.mosaic a img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.mosaic a:hover img{transform:scale(1.04)}.mosaic a.main{grid-column:1/3;grid-row:1/3}.mosaic a.hid{display:none}
.mosaic.solo{grid-auto-rows:auto}.mosaic.solo a.main{grid-column:1/-1;grid-row:auto;aspect-ratio:16/10}
@media(min-width:900px){.mosaic{grid-auto-rows:160px}}@media(max-width:640px){.mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:110px}.mosaic a.main{grid-column:1/-1;grid-row:1/3}.mosaic a:nth-child(n+4):not(.main){display:none}}
.all-photos{position:absolute;left:12px;bottom:12px;background:#fff;color:var(--ink);border:1px solid var(--b);border-radius:8px;padding:8px 12px;font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15)}.all-photos:before{content:"▦ "}
.book{position:sticky;top:16px;border:1px solid var(--b);border-radius:14px;padding:20px;background:#fff;box-shadow:0 6px 24px rgba(35,27,31,.07)}.book .eyebrow{text-align:center;margin:0}.book .big{font-family:"Playfair Display",Georgia,serif;font-size:2.4rem;color:var(--p);text-align:center;margin:0;line-height:1.1}.book .meta.center,.book .center{text-align:center}.book .btn.primary{display:block;width:100%;margin:12px 0 4px;font-size:1.05rem;padding:14px 18px}.book .alts{display:grid;gap:8px;margin-top:12px}.book .alts .btn{display:block;width:100%;padding:10px 14px;font-size:.95rem}.book .verified{color:#1f6f6b;font-weight:600;margin-top:12px}.book .verified svg{width:14px;height:14px;vertical-align:-2px}
.book-cal{margin-top:14px;border-top:1px solid var(--b);padding-top:10px}.book-cal .cals{display:block}.book-cal .cal{width:100%;font-size:.82rem}
.mbar{display:none}@media(max-width:899px){.book{position:static}body.has-mbar{padding-bottom:70px}.mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--b);padding:10px 16px;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -4px 16px rgba(0,0,0,.08)}.mbar b{color:var(--p);font-size:1.15rem}.mbar .btn{padding:10px 22px}}
.amen li{list-style:none;display:flex;gap:6px;align-items:flex-start;padding:3px 0}.amen ul{padding:0}.amen li svg{width:15px;height:15px;color:#1f6f6b;flex:none;margin-top:4px}
.chips.opts .chip b{color:var(--p);margin-left:4px}
.similar{margin-top:36px}.similar h2{margin-bottom:0}.similar .sub{color:var(--mut);margin:2px 0 10px}
.lb[hidden]{display:none}.lb .n{position:absolute;top:16px;left:16px;color:#fff;font-size:.9rem;opacity:.85}.lb .x{font-size:2.4rem;line-height:1}.lb .prev,.lb .next{font-size:3rem;transform:translateY(-50%)}
.owner-strip{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between;border:1px dashed #e9c46a;background:#fffbf2;border-radius:14px;padding:18px 22px;margin:18px 0}.owner-strip h2{margin:2px 0 4px;font-size:1.2rem}.owner-strip .eyebrow{color:#b8791a;margin:0}.owner-strip p{margin:0}.owner-strip>p{display:grid;gap:6px;text-align:center}.owner-strip .btn{background:#b8791a}.owner-strip .btn:hover{background:#9a6412}
.room .actions{display:flex;gap:10px;flex-wrap:wrap}

/* thème mis en avant sur la fiche, contacts repliés sous Booking */
.theme-line{margin:6px 0 4px}.theme-pill{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fbe8ec,#f6d9e2);color:#7a1439;border-radius:999px;padding:7px 16px;font-size:1rem;text-decoration:none!important;border:1px solid #f0c9d5}.theme-pill:hover{background:#f6d9e2}.theme-pill strong{font-weight:700}
.theme-over{position:absolute;top:12px;left:12px;background:rgba(35,27,31,.72);color:#fff;border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:600;backdrop-filter:blur(4px)}
.contact-more{margin-top:12px;border-top:1px solid var(--b);padding-top:10px}.contact-more summary{cursor:pointer;font-weight:600;color:var(--p);list-style:none;display:flex;justify-content:space-between;align-items:center}.contact-more summary::-webkit-details-marker{display:none}.contact-more summary:after{content:"+";font-size:1.2rem}.contact-more[open] summary:after{content:"–"}.contact-more .alts{margin-top:10px}
/* blocs données locales (ville, département, région) */
.pstats .pgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:10px 0 14px}.pstats .pgrid div{background:var(--s);border:1px solid var(--b);border-radius:12px;padding:12px 14px}.pstats .pgrid b{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.6rem;color:var(--p);line-height:1.1}.pstats .pgrid span{color:var(--mut);font-size:.85rem}
.bestof .sub{color:var(--mut);margin-top:-4px}.bestof ol{list-style:none;counter-reset:bo;padding:0;margin:14px 0 0;display:grid;gap:10px}.bestof li{counter-increment:bo;display:grid;grid-template-columns:44px 1fr;gap:4px 14px;padding:14px 16px;border:1px solid var(--b);border-radius:12px;background:#fff}.bestof li:before{content:counter(bo);grid-row:1/4;font-family:"Playfair Display",Georgia,serif;font-size:1.6rem;color:var(--p);font-weight:700;line-height:1;padding-top:4px}.bestof .bo-head{font-weight:700;font-size:1.05rem}.bestof .bo-head a{color:var(--ink)}.bestof li p{margin:0}.bestof li p.meta{font-size:.88rem}
.tbl.cmp th.c,.tbl.cmp td.c{text-align:center}.tbl.cmp td.c svg{width:16px;height:16px;color:#1f6f6b}.tbl.cmp .no{color:#c6bcc0}.tbl.cmp td.num,.tbl.cmp th.num{text-align:right;white-space:nowrap}.scroll{overflow-x:auto}

.desc h3{font-size:1.05rem;margin:18px 0 6px}.desc ul{padding-left:20px}.desc li{margin:4px 0}
.rw{border:1px solid var(--b);border-radius:12px;padding:16px 18px;margin:18px 0}.rw h2{margin:0 0 8px;font-size:1.15rem}.rw-old{background:var(--s);padding:10px 14px;border-radius:8px;font-size:.92rem;color:#3d3338;max-height:420px;overflow:auto}.rw-new{padding:10px 14px;border:1px solid var(--b);border-radius:8px;max-height:420px;overflow:auto}.rw-new h3{font-size:1rem;margin:12px 0 4px}
.stats-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:14px 0}.stats-kpis div{background:var(--s);border:1px solid var(--b);border-radius:12px;padding:12px 14px}.stats-kpis b{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.7rem;color:var(--p)}.stats-kpis span{color:var(--mut);font-size:.85rem}
.bars{display:flex;align-items:flex-end;gap:3px;height:140px;border-bottom:1px solid var(--b);padding-bottom:2px}.bars .bar{flex:1;height:100%;display:flex;align-items:flex-end}.bars .bar span{display:block;width:100%;background:#f1d3dc;border-radius:3px 3px 0 0;position:relative;min-height:2px}.bars .bar span i{position:absolute;left:0;right:0;bottom:0;background:var(--p);border-radius:3px 3px 0 0}

.grant select{width:auto;display:inline-block;padding:6px 8px;font-size:.9rem;margin:2px 0}

a.theme-over{text-decoration:none!important;z-index:2}a.theme-over:hover{background:rgba(155,28,74,.85)}

.guide{max-width:820px}.guide .lead{font-size:1.1rem}.guide .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}.guide .kpis div{background:var(--s);border:1px solid var(--b);border-radius:12px;padding:12px 14px}.guide .kpis b{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.6rem;color:var(--p)}.guide .kpis span{color:var(--mut);font-size:.85rem}.glossary dt{font-weight:700;margin-top:10px}.glossary dd{margin:2px 0 0;color:#3d3338}

.dd-cols{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px;min-width:460px}.dd-h{margin:6px 10px 2px;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);font-weight:700}@media(max-width:640px){.dd-cols{grid-template-columns:1fr;min-width:0}}
/* badge thème sur la photo : priorité sur .mosaic a */
.mosaic a.theme-over{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;width:auto;aspect-ratio:auto;background:#231b1f;color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:999px;padding:8px 14px;font-size:.95rem;font-weight:700;letter-spacing:.01em;box-shadow:0 2px 10px rgba(0,0,0,.35);text-decoration:none!important;z-index:2;overflow:visible;backdrop-filter:none}.mosaic a.theme-over:hover{background:var(--p);border-color:#fff}.mosaic a.theme-over img{display:none}

/* territoires aérés */
.facts{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:4px 0 12px;color:var(--mut);font-size:.95rem}.facts b{color:var(--ink);font-weight:700}.facts .sep{color:var(--b)}
.geo-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:8px 0}.geo-card{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--b);border-radius:12px;background:#fff;color:var(--ink);text-decoration:none!important;transition:border-color .15s,box-shadow .15s}.geo-card:hover{border-color:var(--p);box-shadow:0 4px 14px rgba(155,28,74,.10)}.gc-name{font-weight:700}.gc-meta{color:var(--mut);font-size:.88rem}
.cchips{margin:6px 0 0}.cchip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--b);border-radius:999px;padding:6px 12px;margin:0 6px 8px 0;color:var(--ink);text-decoration:none!important;background:#fff;font-size:.95rem}.cchip b{background:var(--s);color:var(--p);border-radius:999px;padding:0 7px;font-size:.8rem}.cchip:hover{border-color:var(--p)}
details.more{margin-top:4px}details.more summary{cursor:pointer;color:var(--p);font-weight:600;list-style:none;display:inline-block;padding:4px 0}details.more summary::-webkit-details-marker{display:none}details.more summary:after{content:" ⌄";font-size:.85em}details.more[open] summary:after{content:" ⌃"}
.owner-strip.soft{background:var(--s);border:1px solid var(--b)}.owner-strip.soft .eyebrow{color:var(--p)}.owner-strip.soft .btn{background:#fff;color:var(--p)!important;border:2px solid var(--p)}

/* rythme vertical des pages commerciales et d'information */
.wrap>section{margin-top:44px}.wrap>section:first-of-type{margin-top:24px}section.center{margin-top:64px}section.center .hbadge{margin-bottom:14px}section.center h2{margin-top:0}
.feat.six{grid-template-columns:repeat(3,1fr)}@media(max-width:860px){.feat.six{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.feat.six{grid-template-columns:1fr}}
.feat>div{display:flex;flex-direction:column;align-items:center}.feat>div p{margin-bottom:0}
.owner-strip{margin:44px 0}.redcta{margin:64px 0 48px}.center-h{margin:56px auto 0}
.pstats,.bestof{margin-top:44px}

/* espace propriétaire : visibilité par fiche */
.dash-room{display:block;padding:16px 18px;border-radius:14px}.dash-head{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-start}.dash-actions{margin:10px 0 0;display:flex;gap:8px;flex-wrap:wrap}
.dash-promos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--b)}.promo{border:1px dashed #e9c46a;background:#fffbf2;border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.promo.on{border-style:solid;border-color:#1f6f6b;background:#f0f8f6}.promo .eyebrow{color:#b8791a;margin:0}.promo.on .eyebrow{color:#1f6f6b}.promo p{margin:0}.promo .btn{align-self:flex-start}
/* retouches QA mobile/desktop */
.kpis b,.stats-kpis b,.pstats .pgrid b{white-space:nowrap}
.owner-strip .eyebrow{margin-bottom:6px}
@media(max-width:640px){.kpis{grid-template-columns:1fr 1fr}.kpis div{padding:10px 12px}.kpis b{font-size:1.5rem}.tbl.cmp{font-size:.85rem}.tbl.cmp th,.tbl.cmp td{padding:6px 5px}.scroll{margin-left:-16px;margin-right:-16px;padding:0 16px}}

/* espace propriétaire : formulaire en cartes, complétude, thème en grille, options */
.dash-top{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:flex-end;justify-content:space-between;margin-bottom:8px}.dash-top h1{margin:0}.dash-nav{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;font-size:.95rem}.dash-nav a{color:var(--ink);padding:6px 2px}.dash-nav a.on{color:var(--p);font-weight:700;border-bottom:2px solid var(--p)}.dash-nav form{display:inline}.linklike{background:none;border:0;color:var(--mut);cursor:pointer;font:inherit;padding:6px 2px}
.dash-kpis{margin:6px 0 18px}
.cbar{margin:10px 0 4px}.cbar-head{display:flex;justify-content:space-between;font-size:.88rem;color:var(--mut)}.cbar-head b{font-size:.95rem}.cbar-track{height:8px;background:var(--s);border-radius:99px;overflow:hidden;margin:4px 0}.cbar-track span{display:block;height:100%;border-radius:99px}.cbar-tips summary{cursor:pointer;color:var(--p);font-size:.9rem;font-weight:600;list-style:none}.cbar-tips summary::-webkit-details-marker{display:none}.cbar-tips summary:after{content:" ⌄"}.cbar-tips[open] summary:after{content:" ⌃"}.cbar-tips ul{margin:6px 0;padding-left:18px;font-size:.92rem}
form .two>div>h2:first-child,form h2{font-size:1.15rem;margin:26px 0 8px;padding:10px 0 0;border-top:1px solid var(--b)}form .two>div>h2:first-child{border-top:0;padding-top:0;margin-top:8px}
.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:6px 0 10px}.tcard{position:relative;display:block;border:1px solid var(--b);border-radius:10px;padding:10px 12px;cursor:pointer;font-weight:500;margin:0;background:#fff}.tcard input{position:absolute;opacity:0}.tcard.on,.tcard:has(input:checked){border-color:var(--p);background:#fbe8ec;color:#7a1439;font-weight:700}
.amen-edit{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.amen-edit h3{margin-bottom:6px}.amen-edit .check{display:block;font-weight:400;margin:4px 0;padding:4px 0}.amen-edit .check input{margin-right:8px}
.opts-edit{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px 24px}.opt-group h3{color:var(--mut);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin:8px 0 4px}.opt-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 0}.opt-row .check{font-weight:400;margin:0}.opt-price{white-space:nowrap;color:var(--mut);font-size:.9rem}.opt-price input{width:72px;padding:5px 8px;font-size:.9rem;display:inline-block}
.save-bar{position:sticky;bottom:0;background:#fff;padding:12px 0;border-top:1px solid var(--b);margin-top:18px;z-index:5;display:flex;gap:10px}
.danger{margin-top:40px;border:1px solid #f1d3dc;border-radius:12px;padding:14px 18px;background:#fff8fa}.danger h2{margin:0 0 6px;font-size:1.05rem;color:#8a1b33}

/* assistant d'ajout en étapes */
.wiz .sub{max-width:720px}.stepper{list-style:none;padding:0;margin:18px 0 22px;display:grid;grid-template-columns:repeat(7,1fr);gap:0;position:relative}.stepper li{text-align:center;position:relative}.stepper li:not(:last-child):after{content:"";position:absolute;top:17px;left:50%;width:100%;height:3px;background:var(--b);z-index:0}.stepper li.done:not(:last-child):after{background:var(--p)}.stepper li>a,.stepper li>span{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--mut);text-decoration:none!important;font-size:.8rem}.stepper b{width:36px;height:36px;border-radius:50%;background:var(--s);border:2px solid var(--b);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--mut)}.stepper li.cur b{background:var(--p);border-color:var(--p);color:#fff}.stepper li.done b{background:var(--p);border-color:var(--p);color:#fff}.stepper li.cur small{color:var(--ink);font-weight:700}
@media(max-width:700px){.stepper{grid-template-columns:repeat(7,1fr)}.stepper small{display:none}.stepper li.cur small{display:block;position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;top:42px}.stepper{margin-bottom:44px}.stepper b{width:30px;height:30px;font-size:.85rem}}
.wiz-form{max-width:none}.wiz-card{background:#fff;border:1px solid var(--b);border-radius:14px;padding:22px 24px}.wiz-card h2{margin:0 0 4px;border:0;padding:0}.wiz-card h2+ .sub{margin-top:0}.wiz-card h2:not(:first-child){margin-top:26px}.wiz-nav{display:flex;justify-content:space-between;gap:12px;margin-top:16px}.wiz-nav .btn{flex:1;text-align:center}
.dup-box{border:1px solid #e9c46a;background:#fffbf2;border-radius:10px;padding:12px 14px;margin:6px 0 14px}.sim-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--b)}.sim-row:first-of-type{border-top:0}
.recap{background:var(--s);border-radius:10px;padding:12px 16px;margin:18px 0}.recap h3{margin:0 0 6px}.recap ul{margin:0;padding-left:18px}
.done{padding:40px 0}.done-ico{display:inline-flex;width:72px;height:72px;border-radius:50%;background:#e8f5ec;color:#1d5a2f;font-size:2rem;align-items:center;justify-content:center;margin-bottom:8px}.done .notice ol{margin:6px 0 0;padding-left:20px}

/* administration : bandeau, pastilles, tableaux */
.admin-top{margin-top:16px}.admin-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.admin-kpis div{background:var(--s);border:1px solid var(--b);border-radius:12px;padding:10px 14px}.admin-kpis b{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.5rem;color:var(--p)}.admin-kpis span{color:var(--mut);font-size:.82rem}.admin-kpis .hot{border-color:#e9c46a;background:#fffbf2}.admin-kpis .hot b{color:#b8791a}
.admin-nav{display:flex;flex-wrap:wrap;gap:4px;margin:12px 0 4px;padding:6px;background:var(--s);border-radius:12px}.admin-nav a{padding:7px 12px;border-radius:8px;color:var(--ink);font-size:.92rem;text-decoration:none!important}.admin-nav a.on{background:#fff;font-weight:700;box-shadow:0 1px 4px rgba(35,27,31,.08)}.admin-nav a b{background:var(--p);color:#fff;border-radius:999px;padding:0 7px;font-size:.75rem;margin-left:2px}
.pills{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.pills .pill{display:inline-block;border:1px solid var(--b);border-radius:999px;padding:5px 12px;font-size:.88rem;color:var(--ink);text-decoration:none!important;background:#fff;box-shadow:none}.pills .pill b{color:var(--mut);font-weight:600;margin-left:4px}.pills .pill.on{background:var(--p);border-color:var(--p);color:#fff}.pills .pill.on b{color:#fff}
.filters input[type=search]{width:auto;min-width:260px;display:inline-block}
.tbl.rooms td{vertical-align:middle}.tbl .acts{white-space:nowrap}.tbl .acts .btn{padding:5px 9px;font-size:.82rem}select.st{width:auto;padding:5px 8px;font-size:.85rem;border-radius:999px;font-weight:600}select.st-published{background:#e8f5ec;color:#1d5a2f}select.st-pending{background:#fff3d6;color:#8a5a00}select.st-blocked{background:#fbe8ec;color:#8a1b33}select.st-incomplete,select.st-draft{background:var(--s)}
.bd.warn{background:#fff3d6;color:#8a5a00;border-color:#f1d78a}.danger-btn{color:#8a1b33!important;border-color:#f1d3dc!important}

.rev{border:1px solid var(--b);border-radius:12px;padding:14px 18px;margin:14px 0}.rev h2,.rev h3{margin:0 0 8px;font-size:1.1rem}.tbl.diff td{vertical-align:top;font-size:.92rem;max-width:420px}.tbl.diff .old{color:var(--mut)}.tbl.diff .new{background:#e8f5ec}.rev-actions{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.photo-admin figure.pend{border-color:#e9c46a;background:#fffbf2}

.tpl-cat{margin:18px 0 6px;color:var(--mut);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em}.tpl{border:1px solid var(--b);border-radius:10px;padding:10px 14px;margin:6px 0;background:#fff}.tpl summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}.tpl summary::-webkit-details-marker{display:none}.tpl summary:after{content:"Modifier";color:var(--p);font-weight:600;font-size:.9rem;white-space:nowrap}.tpl[open] summary:after{content:"Fermer"}.tpl-form{max-width:none;margin-top:8px}.tpl-form textarea{font-family:ui-monospace,Menlo,monospace;font-size:.9rem}.tpl code{background:var(--s);padding:1px 5px;border-radius:4px;font-size:.85rem}

.claim-box{margin-top:16px;border:1px solid #f1d3d8;background:#fdf3f4;border-radius:12px;padding:14px}.claim-head{display:flex;gap:12px;align-items:flex-start}.claim-ico{flex:none;width:40px;height:40px;border-radius:50%;background:#f6dde1;color:var(--p);display:flex;align-items:center;justify-content:center}.claim-box strong{display:block;font-size:1rem;margin-bottom:2px}.claim-box p{margin:0;font-size:.9rem;color:var(--mut);line-height:1.4}.claim-btn{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:12px;box-sizing:border-box}

.qbuy{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.qbuy form{margin:0}.qbuy a.meta{margin-left:4px;text-decoration:underline}.total-line{font-size:1.1rem;margin:14px 0 6px}

.lot-banner{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border:1px dashed #e9c46a;background:#fffbf2;border-radius:12px;padding:12px 16px;margin:14px 0}.lot-room{margin:18px 0 8px;font-size:1.05rem}.lot-room small{font-weight:400;margin-left:6px}

.ac{position:absolute;left:0;right:0;top:100%;z-index:30;margin:2px 0 0;padding:4px 0;list-style:none;background:#fff;border:1px solid var(--b);border-radius:10px;box-shadow:0 8px 24px rgba(35,27,31,.12);text-align:left}.ac li{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;cursor:pointer;font-size:.95rem;color:var(--ink)}.ac li small{color:var(--mut);white-space:nowrap}.ac li:hover,.ac li.on{background:var(--s)}
.zone-form{position:relative}.zone-form .hint{margin:4px 0 0}.pill-q{position:relative}
.slayout.geo{margin-top:36px;scroll-margin-top:16px}.slayout.geo .rhead{flex-wrap:wrap;gap:8px 14px}.slayout.geo .rhead h2{margin:0;font-size:1.3rem;flex-basis:100%}

.intro-more{white-space:nowrap;font-weight:600}.intro-rest .intro{margin-top:0}

.card{position:relative}.card .fav{position:absolute;top:10px;right:10px;z-index:2;width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--p);font-size:1.25rem;line-height:1;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.18)}.card .fav.on{background:var(--p);color:#fff}
.ract{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 4px}.ract button{border:1px solid var(--b);background:#fff;border-radius:999px;padding:7px 14px;font-size:.92rem;cursor:pointer;color:var(--ink)}.ract .fav-btn.on{border-color:var(--p);color:var(--p);font-weight:600}
.favlink{position:relative}.favlink b{position:absolute;top:-4px;right:-6px;background:var(--p);color:#fff;font-size:.66rem;border-radius:999px;padding:1px 5px;line-height:1.3}
.ask{border:1px solid var(--b);border-radius:12px;padding:10px 14px;margin-top:12px}.ask summary{cursor:pointer;font-weight:600;display:flex;justify-content:space-between;list-style:none}.ask summary::-webkit-details-marker{display:none}.ask-form{max-width:none;margin-top:10px}.ask-form textarea{min-height:70px}.ask-form .two{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* pied de page 5 colonnes, réseaux, newsletter */
.site-footer .cols.five{grid-template-columns:1.3fr 1fr 1fr 1fr 1.2fr}@media(max-width:900px){.site-footer .cols.five{grid-template-columns:1fr 1fr}}@media(max-width:560px){.site-footer .cols.five{grid-template-columns:1fr}}
.site-footer .fbrand strong{font-size:1.15rem}.site-footer .social{display:flex;gap:12px;margin-top:10px}.site-footer .social a{display:inline-flex;color:var(--ink);margin:0}
.site-footer .fnews form{display:flex;flex-direction:column;gap:8px;max-width:none}.site-footer .fnews input{padding:10px 12px;border:1px solid var(--b);border-radius:8px}.site-footer .fnews .btn{width:100%;text-align:center}.site-footer .fnews .meta{font-size:.8rem}
.site-footer .copy{text-align:center;margin-top:26px;padding-top:18px;border-top:1px solid var(--b)}
/* bandeau cookies */
.ck{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);width:min(760px,calc(100% - 24px));background:#fff;border:1px solid var(--b);border-radius:14px;box-shadow:0 12px 40px rgba(35,27,31,.18);padding:16px 20px;z-index:60;font-size:.95rem}.ck p{margin:0 0 10px}.ck .ck-b{margin:0}
/* magazine */
.mag-head{text-align:center;max-width:820px;margin:0 auto 22px}.mag-head h1{font-size:2.1rem}.mag-search input{width:min(100%,560px);padding:12px 16px;border:1px solid var(--b);border-radius:10px;font-size:1rem}
.mag-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:10px}.mag-tabs .tab{border:1px solid var(--b);background:#fff;border-radius:10px;padding:8px 14px;cursor:pointer;font-size:.95rem;color:var(--ink)}.mag-tabs .tab.on{background:var(--p);border-color:var(--p);color:#fff}
.mag-hero{display:block;position:relative;min-height:380px;border-radius:16px;overflow:hidden;background:#3a2a30 center/cover no-repeat;color:#fff;text-decoration:none;margin-bottom:36px}.mag-hero:hover{text-decoration:none}.mag-hero .mh-in{position:absolute;inset:auto 0 0 0;padding:120px 28px 26px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.72) 100%);display:flex;flex-direction:column;gap:8px}.mag-hero strong{font-size:clamp(1.4rem,3.2vw,2.3rem);line-height:1.15}.mag-hero .pmeta{color:#fff}.mag-hero .pmeta .chip{background:rgba(255,255,255,.22);color:#fff;border:0}.mag-hero .mh-x{max-width:760px;opacity:.92}.mag-hero .mh-f{font-size:.92rem}.mag-hero .mh-f b{color:#fff}
.pmeta{display:flex;gap:10px;align-items:center;color:var(--mut);font-size:.88rem;margin:0 0 6px}.pmeta .chip{background:var(--s)}.pcard .pfoot{display:flex;justify-content:space-between;align-items:center;margin:8px 0 0;color:var(--mut)}.pcard .pfoot a{font-weight:600}.pcard a img{display:block}.pcard>a{position:relative;display:block}.pcard .bd.gold{position:absolute;top:10px;right:10px}
.mag-sp h2{margin-top:0}.mag-owner{display:flex;gap:18px;align-items:flex-start;border:1px solid #efd9a3;background:linear-gradient(135deg,#fffbf0,#fff);border-radius:14px;padding:22px 24px;margin:36px 0}.mag-owner .mo-ico{flex:none;width:52px;height:52px;border-radius:12px;background:#fff3d6;color:#c48a12;font-size:1.6rem;display:flex;align-items:center;justify-content:center}.mag-owner h2{margin:0 0 6px;font-size:1.35rem}.mag-owner ul{list-style:none;padding:0;margin:8px 0 12px;display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;color:var(--mut)}@media(max-width:640px){.mag-owner{flex-direction:column}.mag-owner ul{grid-template-columns:1fr}}

/* méga-menu */
.mega{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));gap:6px 22px;min-width:720px;padding:6px 4px}.mega.two{grid-template-columns:repeat(2,minmax(210px,1fr));min-width:520px}
.mega>div{border-left:1px solid var(--b);padding-left:14px}.mega>div:first-child{border-left:0;padding-left:0}
.mega .dd-h{display:flex;align-items:center;gap:6px;font-size:.95rem;text-transform:none;letter-spacing:0;color:var(--ink);margin:4px 8px 8px}.mega .dd-h svg{color:var(--p)}
.mega a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px;color:var(--mut)}.mega a:hover{color:var(--ink)}.mega a .n{font-size:.78rem;color:#766b70}
.mega a.more{color:var(--p);font-weight:600;margin-top:4px}.mega .dd-sub{margin:8px 8px 2px;padding-top:8px;border-top:1px solid var(--b);font-size:.78rem;color:var(--mut)}
.mega .mi{display:inline-flex;width:20px;color:var(--p);margin-right:8px;flex:none}.mega.two a{justify-content:flex-start;padding:6px 8px}
@media(max-width:900px){.mega,.mega.two{grid-template-columns:1fr;min-width:0}.mega>div{border-left:0;padding-left:0}}

/* listes avec filtres : trois cartes par ligne, conteneur un peu plus large */
.wrap:has(> .slayout.geo),.wrap.slayout{max-width:1280px}
@media(min-width:1100px){.slayout .cards{grid-template-columns:repeat(3,1fr);gap:18px}}@media(min-width:700px) and (max-width:1099px){.slayout .cards{grid-template-columns:repeat(2,1fr)}}

/* rangée sponsorisés en tête des pages géographiques */
.spf{margin:30px 0 6px}.spf h2{text-align:center;margin:0 0 4px;font-size:1.7rem}.spf h2 .crown{color:#d9a441}.spf .sub{text-align:center;color:var(--mut);margin:0 0 16px}
.spf-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}.spf-row .card.sponsored{border-color:#e9c46a;box-shadow:0 0 0 2px #f6e7b8}
.spf-owner{border:2px dashed #efd9a3;background:linear-gradient(180deg,#fffdf6,#fff8e8);border-radius:14px;padding:26px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.spf-owner .fo-ico{width:52px;height:52px;border-radius:50%;background:#fbecc4;color:#c48a12;font-size:1.5rem;display:flex;align-items:center;justify-content:center}.spf-owner h3{margin:4px 0 0;font-size:1.3rem}.spf-owner p{margin:0;color:var(--mut)}.spf-owner ul{list-style:none;padding:0;margin:6px 0;display:flex;flex-direction:column;gap:4px;color:#8a6d1f;font-size:.92rem}.spf-owner.wide ul{flex-direction:row;gap:18px;flex-wrap:wrap;justify-content:center}.spf-owner small{color:var(--mut)}.btn.gold-o{color:#b07a10!important;border-color:#e9c46a;background:#fff}
@media(max-width:900px){.spf-row{grid-template-columns:1fr 1fr}.spf-owner{grid-column:span 2!important}}@media(max-width:560px){.spf-row{grid-template-columns:1fr}.spf-owner{grid-column:span 1!important}}

/* encart réservation : prix, dates, bouton */
.bprice{text-align:center;margin:0;font-size:1.1rem;color:var(--mut)}.bprice b{font-family:"Playfair Display",Georgia,serif;font-size:2.3rem;color:var(--p);margin:0 2px}.bprice span{font-size:.95rem}
.bdates{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid var(--b);border-radius:12px;overflow:hidden;margin:14px 0 10px;background:#fff}.bdates label{display:flex;flex-direction:column;gap:2px;padding:9px 12px;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);cursor:pointer}.bdates label+label{border-left:1px solid var(--b)}.bdates input{border:0;padding:0;font:inherit;font-size:1rem;color:var(--ink);background:transparent;text-transform:none;letter-spacing:0;min-width:0;width:100%}
.book .bbtn{margin-top:4px}.book .secure{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:6px}.book .bk{display:inline-block;background:#003580;color:#fff;font-weight:700;font-size:.7rem;padding:1px 4px;border-radius:3px;line-height:1.4}
/* connexion par code */
.otp input[name=code]{font-size:1.6rem;letter-spacing:.35em;text-align:center;max-width:260px}.pw-alt{margin-top:22px;border-top:1px solid var(--b);padding-top:12px}.pw-alt summary{cursor:pointer;color:var(--mut);font-weight:600}.pw-alt form{margin-top:10px}form.inline{display:inline}

.similar .cards{grid-template-columns:repeat(4,1fr)}@media(max-width:1000px){.similar .cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.similar .cards{grid-template-columns:1fr}}
/* page des régions */
.reg-head{text-align:center;max-width:720px;margin:10px auto 28px}.reg-head h1{margin:10px 0 8px;font-size:2.2rem}.reg-head .sub{color:var(--mut);margin:0 0 18px}
.reg-ico{display:inline-flex;width:56px;height:56px;border-radius:50%;background:#fdeef1;color:var(--p);align-items:center;justify-content:center}.reg-ico svg{width:24px;height:24px}
.reg-search{display:flex;align-items:center;gap:8px;max-width:560px;margin:0 auto;padding:6px 6px 6px 14px;border:1px solid var(--b);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(35,27,31,.08)}.reg-search input{flex:1;border:0;font:inherit;font-size:1rem;min-width:0;background:transparent}.reg-search .btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px}
.reg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media(max-width:900px){.reg-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.reg-grid{grid-template-columns:1fr}}
.reg-card{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid var(--b);border-radius:14px;background:#fbfafa;color:var(--ink);text-decoration:none!important;transition:transform .15s,box-shadow .15s}.reg-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(35,27,31,.08);background:#fff}
.reg-pin{flex:none;width:44px;height:44px;border-radius:50%;background:#fdeef1;color:var(--p);display:flex;align-items:center;justify-content:center}.reg-pin.small{width:auto;height:auto;background:none}.reg-body{flex:1;display:flex;flex-direction:column}.reg-body strong{font-size:1.05rem}.reg-body small{color:var(--mut)}.reg-chev{color:var(--mut);font-size:1.4rem}
.center{text-align:center}
.reg-grid.four{grid-template-columns:repeat(4,1fr);gap:14px}@media(max-width:1000px){.reg-grid.four{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.reg-grid.four{grid-template-columns:1fr}}
.dep-region{margin-top:30px}.dep-region h2{font-size:1.35rem;margin:0 0 12px}.dep-card{padding:14px 16px}.reg-pin.grey{background:var(--s);color:var(--mut)}

/* recherche d'établissement (page propriétaires) */
.claim-search{display:flex;align-items:center;gap:8px;max-width:none;margin:14px 0 0;padding:6px 6px 6px 14px;border:1px solid var(--b);border-radius:14px;background:#fff;box-shadow:0 6px 20px rgba(35,27,31,.06)}.claim-search:focus-within{border-color:var(--p)}.claim-search .cs-ico{color:var(--p);display:inline-flex}.claim-search input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:1.05rem;padding:10px 4px}.claim-search .btn{padding:10px 16px;white-space:nowrap}
.opt .dup-live{margin-top:10px}.opt .hint{margin-top:10px}
@media(max-width:560px){.claim-search{flex-wrap:wrap;padding:8px}.claim-search input{flex-basis:100%}.claim-search .btn{width:100%;text-align:center}}
.pill-d input[value=""]:not(:focus)::-webkit-datetime-edit{color:transparent}

.bd.red{background:#7a2e2e;color:#fff;border-color:#7a2e2e}.avail.ok{color:#1f6f6b;font-weight:600}.avail.ko{color:#9b1c4a;font-weight:600}
/* Bloc propriétaire en bandeau quand les 3 places sont prises : grille icône | texte | avantages | bouton, jamais de retour à la ligne bancal */
.spf-owner.wide{display:grid;grid-template-columns:auto 1fr auto auto;grid-template-areas:"ico txt list act";align-items:center;text-align:left;padding:14px 22px;gap:8px 22px}.spf-owner.wide .fo-ico{grid-area:ico;width:40px;height:40px;font-size:1.2rem}.spf-owner.wide .fo-txt{grid-area:txt;min-width:0}.spf-owner.wide h3{margin:0;font-size:1.1rem}.spf-owner.wide p{font-size:.92rem}.spf-owner.wide ul{grid-area:list;margin:0;flex-direction:row;gap:16px;flex-wrap:wrap}.spf-owner .fo-act{display:flex;flex-direction:column;align-items:center;gap:4px}.spf-owner.wide .fo-act{grid-area:act;align-items:flex-end}.spf-owner.wide small{font-size:.82rem;white-space:nowrap}
@media(max-width:1180px){.spf-owner.wide{grid-template-columns:auto 1fr auto;grid-template-areas:"ico txt act" "list list list"}.spf-owner.wide ul{justify-content:flex-start;padding-left:62px}}
@media(max-width:900px){.spf-owner.wide{display:flex;flex-direction:column;text-align:center}.spf-owner.wide ul{padding-left:0;justify-content:center}.spf-owner.wide .fo-act{align-items:center}}
/* Fiche : chips à gauche, Sauvegarder / Partager alignés sur la colonne de droite, juste au-dessus du bloc réservation */
.rtop{display:grid;grid-template-columns:minmax(0,1fr);gap:8px 28px;align-items:end;margin-bottom:12px}.rtop .rchips{margin:0}.rtop .ract{margin:0}
@media(min-width:900px){.rtop{grid-template-columns:minmax(0,1fr) 340px}.rtop .ract{justify-content:flex-end}}
/* ===== Ergonomie mobile (audit Booking) ===== */
/* Cartes : note et distance */
.card-rate{margin:2px 0 6px;font-size:.9rem;color:var(--mut)}.card-rate .stars{color:#d9a441}.card-rate b{color:var(--ink)}.card-city .km{color:var(--mut);font-size:.85rem;margin-left:4px}
.rate-link{color:inherit;text-decoration:underline dotted}
/* Fiche : points forts en tuiles, liste complète repliable */
.pforts{list-style:none;padding:0;margin:0 0 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.pforts li{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--b);border-radius:10px;background:#fff;font-size:.92rem}.pforts svg{color:var(--p);flex:none}
.amen-all{border-top:1px solid var(--b);padding-top:8px}.amen-all summary{cursor:pointer;font-weight:600;padding:6px 0;list-style:none;display:flex;align-items:center;gap:6px}.amen-all summary::before{content:"›";display:inline-block;transition:transform .2s;color:var(--mut)}.amen-all[open] summary::before{transform:rotate(90deg)}.amen-all summary::-webkit-details-marker{display:none}.amen-all .amen{margin-top:8px}
/* Galerie : compteur (mobile seulement) */
.galwrap{position:relative}.pcount{display:none;position:absolute;right:10px;bottom:10px;background:rgba(0,0,0,.6);color:#fff;font-size:.8rem;padding:3px 9px;border-radius:999px;pointer-events:none}
/* Barre et tiroir de filtres (mobile seulement) */
.fbar,.fback,.fclose{display:none}
@media(max-width:899px){
  .fbar{display:flex;position:sticky;top:0;z-index:35;background:#fff;border-bottom:1px solid var(--b);margin:0 -16px 12px;padding:6px 10px;gap:6px}.fbar button,.fbar a{flex:1;border:1px solid var(--b);background:var(--s);border-radius:10px;padding:9px 6px;font:inherit;font-size:.92rem;font-weight:600;color:var(--ink);text-align:center;text-decoration:none;cursor:pointer}.fbar .count{background:var(--p);color:#fff;border-radius:999px;padding:0 6px;font-size:.78rem;margin-left:2px}
  .filters{position:fixed;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;background:#fff;z-index:75;border-radius:16px 16px 0 0;padding:14px 16px 20px;box-shadow:0 -12px 40px rgba(35,27,31,.22);transform:translateY(105%);transition:transform .25s ease;-webkit-overflow-scrolling:touch}
  body.fopen .filters{transform:none}body.fopen{overflow:hidden}
  .fclose{position:absolute;right:10px;top:8px;width:36px;height:36px;border:0;background:var(--s);border-radius:50%;font-size:1.3rem;line-height:1;cursor:pointer}body.fopen .fclose{display:block}
  .fback{position:fixed;inset:0;background:rgba(35,27,31,.45);z-index:70}body.fopen .fback{display:block}
  .slayout.geo{gap:0}
  /* bloc propriétaire compact dans la rangée sponsorisée */
  .spf-owner{padding:12px 14px;gap:4px}.spf-owner ul{display:none}.spf-owner .fo-ico{width:32px;height:32px;font-size:1rem}.spf-owner h3{font-size:1rem}.spf-owner p{font-size:.9rem}
  /* Fiche : photos sous le titre, puis bloc réservation, puis le reste */
  .room{display:flex;flex-direction:column}.room-grid,.room-main{display:contents}.room>*,.room-main>*{order:10}.room .crumbs{order:0}.room .rhead{order:1}.room .galwrap{order:2}.room .book{order:3;margin:14px 0 4px}.room .rtop{order:4}
  .similar .cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:2px 2px 10px;scrollbar-width:none}.similar .cards::-webkit-scrollbar{display:none}.similar .card{flex:0 0 80%;scroll-snap-align:start}
}
@media(max-width:640px){
  .crumbs li{display:none}.crumbs li:nth-last-child(2){display:inline}.crumbs li:nth-last-child(2)::before{content:none}.crumbs li:nth-last-child(2) a::before{content:"‹ "}
  .room h1{font-size:1.35rem;line-height:1.2}
  .mosaic{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:6px;border-radius:12px;scrollbar-width:none;grid-auto-rows:auto}.mosaic::-webkit-scrollbar{display:none}
  .mosaic a,.mosaic a.main,.mosaic a.hid,.mosaic a:nth-child(n+4):not(.main){display:block;flex:0 0 100%;scroll-snap-align:start;height:250px;border-radius:0}
  .mosaic a.theme-over,.mosaic .theme-over,.mosaic button.all-photos{display:none!important}.galwrap .pcount{display:block}
  .ck:not([hidden]){display:flex;align-items:center;gap:10px;left:0;right:0;bottom:0;transform:none;width:100%;border-radius:12px 12px 0 0;padding:10px 12px;font-size:.82rem;box-shadow:0 -6px 24px rgba(35,27,31,.15)}.ck p{margin:0}.ck .ck-b{display:flex;gap:6px;flex:0 0 auto}.ck .btn.small{padding:6px 10px}body.has-mbar .ck:not([hidden]){bottom:62px}
  .ck-long{display:none}.ck-short{display:inline}
}
@media(min-width:641px){.ck-short{display:none}}
/* Achat d'emplacement : case de renouvellement automatique */
.auto-renew{display:flex;gap:10px;align-items:flex-start;margin:14px 0 6px;padding:12px 14px;border:1px solid var(--b);border-radius:10px;background:var(--s);font-size:.95rem}.auto-renew input{margin-top:4px}
/* Menu mobile : bouton burger dans l'en-tête, panneau latéral avec destinations et équipements en accordéon */
.burger,.mnav,.mback{display:none}
@media(max-width:760px){
  .burger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:38px;height:38px;border:1px solid var(--b);border-radius:10px;background:#fff;cursor:pointer;padding:0 9px}.burger span{display:block;height:2px;background:var(--ink);border-radius:2px}
  .mnav{position:fixed;top:0;right:0;bottom:0;width:min(88vw,380px);background:#fff;z-index:85;transform:translateX(105%);transition:transform .25s ease;overflow:auto;padding:12px 18px 40px;display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(35,27,31,.22);-webkit-overflow-scrolling:touch}
  body.mopen .mnav{transform:none}body.mopen{overflow:hidden}
  .mnav-top{display:flex;align-items:center;justify-content:space-between;font-size:1.3rem;padding:4px 0 10px;border-bottom:2px solid var(--p)}.mclose{width:38px;height:38px;border:0;background:var(--s);border-radius:50%;font-size:1.4rem;line-height:1;cursor:pointer}
  .mnav>a,.mnav>details>summary{display:block;padding:13px 2px;border-bottom:1px solid var(--b);font-size:1.05rem;font-weight:600;color:var(--ink);text-decoration:none;cursor:pointer;list-style:none}.mnav>details>summary::-webkit-details-marker{display:none}.mnav>details>summary::after{content:"›";float:right;color:var(--mut);transition:transform .2s}.mnav>details[open]>summary::after{transform:rotate(90deg)}
  .mnav-sub{padding:4px 0 10px}.mnav .mega{display:block;min-width:0;padding:0}.mnav .mega>div{margin-bottom:8px}.mnav .dd-h{margin:10px 0 4px;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}.mnav .mega a{display:flex;align-items:center;gap:8px;padding:8px 4px;font-size:.98rem;color:var(--ink);text-decoration:none;border-bottom:1px solid #f3ecef}.mnav .mi{color:var(--p);display:inline-flex}
  .mback{position:fixed;inset:0;background:rgba(35,27,31,.45);z-index:80}body.mopen .mback{display:block}
}
/* Cohabitation visiteurs / propriétaires : barre contextuelle sur sa propre fiche, entrée unique « Espace propriétaire » */
.ownbar{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;background:#fdf3f6;border:1px solid #f1d3dd;border-radius:10px;padding:9px 14px;margin:12px 0 4px;font-size:.92rem}.ownbar strong{color:var(--p)}.ownbar a{color:var(--ink);text-decoration:none;font-weight:600}.ownbar a:hover{color:var(--p)}.ownbar .right{margin-left:auto;color:var(--p)}
.mnav-sep{height:10px}.mnav>a.mown{background:var(--s);border-radius:10px;padding:13px 12px;margin:6px 0;border-bottom:0;display:flex;align-items:center;gap:8px}.mnav .mini{width:26px;height:26px;border-radius:50%;background:var(--p);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem}.mnav .mfav b{display:inline-block;min-width:20px;padding:0 6px;border-radius:999px;background:var(--p);color:#fff;font-size:.78rem;text-align:center;margin-left:4px}
.dash-nav a.meta{margin-left:auto}
@media(max-width:760px){.site-header .favlink,.site-header .avatar{display:none}.hright{gap:8px}.room .ownbar{order:0;margin:8px 0 0}}
/* Captures d'emails : case dans la demande de dispo, section favoris, fenêtre magazine, toast 3e favori */
.news-opt{display:flex;gap:8px;align-items:flex-start;font-size:.9rem;color:var(--mut);margin:8px 0 10px}.news-opt input{margin-top:3px}
.favmail{margin-top:28px}
.npop{position:fixed;right:16px;bottom:16px;width:min(380px,calc(100% - 32px));background:#fff;border:1px solid var(--b);border-radius:14px;box-shadow:0 16px 48px rgba(35,27,31,.22);padding:18px 20px;z-index:65}.npop h3{margin:4px 0 6px;font-size:1.25rem}.npop p{margin:0 0 10px;font-size:.92rem;color:var(--mut)}.npop .eyebrow{color:var(--p);font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.npop form{display:flex;gap:8px}.npop input[type=email]{flex:1;min-width:0;padding:10px 12px;border:1px solid var(--b);border-radius:10px;font:inherit}.npop-x{position:absolute;right:8px;top:8px;width:32px;height:32px;border:0;background:var(--s);border-radius:50%;font-size:1.2rem;cursor:pointer}
@media(max-width:640px){.npop{right:0;left:0;bottom:0;width:100%;border-radius:14px 14px 0 0}.npop form{flex-direction:column}body.has-mbar .npop{bottom:62px}}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;transition:.25s;background:var(--ink);color:#fff;padding:12px 18px;border-radius:999px;font-size:.95rem;z-index:66;box-shadow:0 10px 30px rgba(0,0,0,.25);white-space:nowrap}.toast.on{transform:translate(-50%,0);opacity:1}.toast a{color:#ffd1dd;font-weight:600}
/* ===== Article du magazine : en-tête éditorial, couverture large, colonne de lecture + barre latérale ===== */
.post-wrap{max-width:1180px}
.post-hero{max-width:860px;margin:6px 0 20px}.post-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;color:var(--mut);font-size:.9rem;margin:0 0 12px}.post-meta .cat{background:#fdf3f6;color:var(--p);font-weight:700;padding:4px 11px;border-radius:999px;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}.post-meta .cat.gold{background:#fbf3dc;color:#b07a10}
.post-hero h1{font-size:clamp(1.8rem,3.4vw,2.7rem);line-height:1.15;margin:0 0 12px}.post-hero .lead{font-size:1.15rem;line-height:1.55;color:var(--mut);margin:0}
.post-cover{margin:0 0 30px}.post-cover img{width:100%;height:auto;aspect-ratio:2/1;max-height:520px;object-fit:cover;border-radius:16px;display:block;margin:0}
.post-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:44px;align-items:start}
.post-body{max-width:none;font-size:1.06rem;line-height:1.72}.post-body>p:first-of-type{font-size:1.12rem}.post-body h2{font-size:1.6rem;line-height:1.25;margin:2em 0 .6em;padding-left:14px;border-left:4px solid var(--p)}.post-body h3{font-size:1.22rem;margin:1.6em 0 .5em}.post-body p{margin:0 0 1.1em}.post-body blockquote{margin:1.4em 0;padding:14px 18px;background:#fdf3f6;border-left:4px solid var(--p);border-radius:0 12px 12px 0;font-style:italic}.post-body blockquote p:last-child{margin:0}.post-body table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.95rem;display:block;overflow-x:auto}.post-body th,.post-body td{padding:9px 12px;border-bottom:1px solid var(--b);text-align:left;vertical-align:top}.post-body th{background:var(--s);font-weight:600}.post-body ul,.post-body ol{padding-left:24px;margin:0 0 1.1em}.post-body li{margin:5px 0}.post-body img{width:100%;height:auto;border-radius:12px;margin:8px 0 18px}.post-body a{color:var(--p)}
.toc{background:var(--s);border:1px solid var(--b);border-radius:12px;padding:14px 16px}.toc-h{margin:0 0 6px;font-weight:700;font-size:.95rem}.toc ol{list-style:none;padding:0;margin:0}.toc li{padding:4px 0;font-size:.92rem;line-height:1.35}.toc li.l3{padding-left:14px;font-size:.87rem}.toc a{color:var(--ink);text-decoration:none}.toc a:hover{color:var(--p)}
.toc-m{display:none;margin:0 0 20px;border:1px solid var(--b);border-radius:12px;padding:10px 14px;background:var(--s)}.toc-m summary{font-weight:700;cursor:pointer}.toc-m .toc{border:0;padding:8px 0 0;background:none}
.post-side .sticky{position:sticky;top:16px;display:flex;flex-direction:column;gap:16px}.side-box{border:1px solid var(--b);border-radius:12px;padding:14px 16px}.side-box h3{margin:0 0 8px;font-size:1.05rem}.side-box .links{display:flex;flex-direction:column;gap:6px}.side-box p{margin:0;font-size:.95rem}
.sp-card{display:flex;gap:18px;align-items:center;border:1px solid #f1d3dd;background:#fdf3f6;border-radius:14px;padding:14px;margin:30px 0;text-decoration:none;color:var(--ink)}.sp-card img{width:200px;height:140px;object-fit:cover;border-radius:10px;flex:none;margin:0}.sp-card small{color:#b07a10;font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.74rem}.sp-card strong{display:block;font-size:1.2rem;margin:4px 0 2px;font-family:var(--serif,Georgia,serif)}.sp-card em{display:block;color:var(--mut);font-style:normal;margin-bottom:10px}
@media(max-width:900px){.post-grid{grid-template-columns:1fr;gap:26px}.post-side .sticky{position:static}.toc-m{display:block}.post-side .toc{display:none}.sp-card{flex-direction:column;align-items:stretch}.sp-card img{width:100%;height:190px}.post-body{font-size:1.02rem}.post-body h2{font-size:1.4rem}.post-cover{margin:0 -16px 22px}.post-cover img{border-radius:0;aspect-ratio:16/10}}
/* Bloc magazine (accueil, régions, villes, articles) : en-tête centré, cartes avec couverture, catégorie, date, titre serif et extrait */
.magb{margin:40px 0}.magb-head{text-align:center;margin-bottom:22px}.magb-head h2{margin:0 0 6px;font-size:2rem}.magb-head .sub{margin:0;color:var(--mut)}
.magb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.magc{background:#fff;border:1px solid var(--b);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.magc:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(35,27,31,.1)}
.magc-img{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--s)}.magc-img img{width:100%;height:100%;object-fit:cover;display:block;margin:0;border-radius:0}
.magc-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px}.magc-meta{display:flex;align-items:center;gap:12px;margin:0;font-size:.86rem;color:var(--mut)}.magc-meta .cat{background:var(--s);border:1px solid var(--b);border-radius:999px;padding:3px 10px;font-weight:600;color:var(--ink)}.magc-meta .date{display:inline-flex;align-items:center;gap:5px}.magc-meta svg{width:14px;height:14px}
.magc h3{margin:0;font-size:1.2rem;line-height:1.3}.magc h3 a{color:var(--ink);text-decoration:none}.magc h3 a:hover{color:var(--p)}.magc-x{margin:0;color:var(--mut);font-size:.95rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.magb-more{text-align:center;margin:26px 0 0}
@media(max-width:640px){.magb-head h2{font-size:1.5rem}.magb-grid{grid-template-columns:1fr}}
/* Accueil : nouvelles love rooms, icônes roses, FAQ, bandeau newsletter, bandeau propriétaire */
.newrooms .cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}@media(min-width:1100px){.newrooms .cards{grid-template-columns:repeat(4,1fr);gap:18px}}
.fico{color:var(--p);width:56px;height:56px;background:#fde7ec}.fico svg{width:24px;height:24px}
.faqsec .faqlist{max-width:900px;margin:0 auto;text-align:left;display:flex;flex-direction:column;gap:12px}.faqsec .faq{border:1px solid var(--b);border-radius:12px;padding:16px 20px;background:#fff;margin:0}.faqsec .faq summary{display:flex;justify-content:space-between;align-items:center;font-size:1.08rem;list-style:none}.faqsec .faq summary::-webkit-details-marker{display:none}.faqsec .faq summary::after{content:"⌄";color:var(--mut);font-size:1.2rem;line-height:0}.faqsec .faq[open] summary::after{content:"⌃"}.faqsec .faq p{margin:10px 0 0;color:var(--mut)}
.newsband{margin:64px calc(50% - 50vw) 0;padding:56px 20px;background:linear-gradient(120deg,#fde3ea,#fff3f6 60%,#fde8ee);text-align:center}.newsband .nico{display:inline-flex;width:64px;height:64px;border-radius:50%;background:#fbd0db;color:var(--p);align-items:center;justify-content:center;margin-bottom:14px}.newsband h2{margin:0 0 10px;font-size:2rem}.newsband p{max-width:560px;margin:0 auto 18px;color:var(--mut)}.newsform{display:flex;gap:10px;max-width:560px;margin:0 auto}.newsform input[type=email]{flex:1;min-width:0;padding:12px 14px;border:1px solid var(--b);border-radius:10px;font:inherit;background:#fff}.newsband small{display:block;margin-top:12px;color:var(--mut);font-size:.85rem}
.ownband{background:linear-gradient(90deg,#fff2f5,#fff7f9);border-top:1px solid var(--b);border-bottom:1px solid var(--b);padding:18px 0;margin-top:40px}.ownband .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.ownband strong{font-size:1.05rem}.ownband p{margin:2px 0 0;color:var(--mut);font-size:.95rem}

.city-cta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0 24px}
.newsband.compact{margin-top:48px;padding:40px 20px}.newsband.compact h2{font-size:1.6rem}
@media(max-width:640px){.newsform{flex-direction:column}.newsband h2{font-size:1.5rem}.ownband .wrap{flex-direction:column;align-items:flex-start}}
/* Barre : page active soulignée ; menu mobile : recherche, quatre accordéons, bouton rouge ; pied de page : logo */
header nav a.on,header nav .dd.on summary{color:var(--p);box-shadow:inset 0 -2px 0 var(--p);padding-bottom:3px}
.msearch{display:flex;gap:6px;margin:10px 0 8px}.msearch input{flex:1;min-width:0;padding:11px 12px;border:1px solid var(--b);border-radius:10px;font:inherit;background:#fff}.msearch button{width:46px;border:1px solid var(--b);border-radius:10px;background:#fff;display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}
.mnav>details>summary svg{margin-right:8px;vertical-align:-3px;color:var(--p);width:18px;height:18px}
.mnav-sub>a,.mnav .dd-sub{display:flex;align-items:center;gap:8px;padding:9px 4px;font-size:.98rem;color:var(--ink);text-decoration:none;border-bottom:1px solid #f3ecef}.mnav-sub>a .n,.mnav .mega a .n{margin-left:auto;color:var(--mut);font-size:.85rem}.mnav-sub>a.more{color:var(--p);font-weight:600;border:0}.mnav .dd-sub{margin:8px 0 0;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);border:0}
.mnav>a.mown{background:var(--p);color:#fff;justify-content:center;font-size:1.05rem}.mnav .mini{background:#fff;color:var(--p)}
.flogo{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:inherit;margin-bottom:8px}.flogo .logo-heart{width:26px;height:26px}
/* Logo : jamais de soulignement, ni dans l'en-tête ni dans le pied de page */
.site-header .logo,.site-header .logo:hover,.flogo,.flogo:hover{text-decoration:none}
/* Bandeau propriétaire de l'accueil : discret, collé au pied de page */
.ownband{background:var(--s);border-top:1px solid var(--b);border-bottom:0;padding:12px 0;margin-top:48px}.ownband .wrap{gap:14px}.ownband strong{font-size:.95rem;font-weight:600}.ownband p{font-size:.86rem;margin:0}.ownband .btn{padding:8px 14px;font-size:.88rem;background:#fff;color:var(--p);border:1px solid var(--b)}.ownband .btn:hover{background:var(--p);color:#fff;border-color:var(--p)}
.ownband{margin-bottom:-48px;position:relative}body:has(.ownband) .site-footer{border-top:0}
/* Barre mobile : Trier et Filtrer seulement (le bouton Carte est déjà sous le titre des résultats), moins d'espace avant les résultats */
@media(max-width:899px){.fbar{margin-bottom:0}.slayout.geo{padding-top:6px}.slayout.geo .sresults .rhead{margin-top:4px}}
/* Bandeau propriétaire : fond rose pâle distinct du pied de page, bouton plein lisible */
.ownband{background:#fdf3f6;border-top:1px solid #f1d3dd}.ownband .btn{background:var(--p);color:#fff!important;border:0;padding:10px 16px}.ownband .btn:hover{background:#7d1439}body:has(.ownband) .site-footer{border-top:1px solid var(--b)}
/* Preuves sociales : compteurs réels avec seuils */
.proof{display:inline-flex;align-items:center;gap:6px;margin:6px 0 10px;padding:6px 12px;border-radius:999px;background:var(--s);border:1px solid var(--b);color:var(--mut);font-size:.88rem}.proof svg{color:var(--p)}.book .proof{margin:2px auto 10px;display:flex;justify-content:center;width:fit-content}.proof.light{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.35);color:#fff;margin:0 auto 12px;display:inline-flex}
.oc-left.few{color:var(--p);font-weight:700}

/* v86 : puces d'en-tête de fiche sur une seule ligne, le surplus dans « +N » (script) */
.rchips{flex-wrap:nowrap;overflow:hidden}.rchips .chip{flex:0 0 auto;white-space:nowrap}

/* v87 : magazine, articles sponsorisés et bloc propriétaire côte à côte quand il n'y a qu'un article */
.mag-row.one{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:24px;align-items:start;margin:0 0 36px}.mag-row.one .mag-owner{margin:34px 0 0}.mag-row.one .post-list{grid-template-columns:1fr}@media(max-width:820px){.mag-row.one{grid-template-columns:1fr}.mag-row.one .mag-owner{margin:0}}

/* v90 : page département en mobile, les chambres avant les villes et les prix (ordre desktop inchangé) */
@media(max-width:899px){.wrap.dep{display:flex;flex-direction:column}.wrap.dep>*{order:3}.wrap.dep>.crumbs,.wrap.dep>h1,.wrap.dep>.intro,.wrap.dep>.intro-rest,.wrap.dep>.facts{order:0}.wrap.dep>.spf,.wrap.dep>.fbar,.wrap.dep>#liste{order:1}.wrap.dep>.cchips,.wrap.dep>.pstats{order:2}.wrap.dep>.cchips{margin-top:28px}}

/* v91 : bloc local rédigé sur les pages ville (avant la FAQ) */
.local{margin:36px 0 8px;max-width:760px}.local h3{font-size:1.08rem;margin:22px 0 6px}.local p{line-height:1.62;color:#3d3338}

/* v93 : navigation géographique dans les filtres (départements d'une région, villes d'un département) */
.geo-list{list-style:none;margin:8px 0 0;padding:0;max-height:236px;overflow:auto}.geo-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 0;font-size:.92rem}.geo-list a{color:var(--ink);text-decoration:none}.geo-list a:hover{color:var(--p);text-decoration:underline}.geo-list b{color:var(--mut);font-weight:600;font-size:.82rem;background:var(--s);border-radius:10px;padding:1px 7px}

/* v104 : page Devenir partenaire */
.offer-card.single{display:block;max-width:560px;margin:8px 0 18px}.offer-card.single h2{margin:6px 0 4px}.oc-tag{display:inline-block;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:#8a5a00;background:#fff3d6;border-radius:8px;padding:2px 8px}.oc-price{font-size:1.1rem;margin:0 0 8px}.oc-price b{font-size:1.5rem;color:var(--p)}.offer-card.single ul{padding-left:20px;margin:0}.offer-card.single li{margin:4px 0}

/* v109 : magazine, 24 articles puis « Afficher plus » (les cartes restent dans la page pour Google) */
.mag-more{text-align:center;margin:18px 0 6px}

/* v110 : bandeau offre marques */.owner-strip.brand{border-style:dashed}.center-h .owner-strip{text-align:left}.center-h .owner-strip h2{text-align:left;margin:2px 0 4px}

/* v113 : dépôt de photos */.dropzone{position:relative;border:2px dashed var(--b);border-radius:12px;padding:22px 16px;text-align:center;background:var(--s);transition:border-color .15s,background .15s;margin:6px 0 8px}.dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}.dropzone.over{border-color:var(--p);background:#fbe8ec}.dropzone.busy{opacity:.6;pointer-events:none}.dropzone .dz-text{margin:0;color:var(--mut)}.dropzone .dz-text strong{color:var(--ink)}.up-msg{min-height:1.2em;margin:4px 0 10px;font-size:.92rem;color:#1c6b3a}.up-msg.err{color:#b3261e}

/* v124 : ligne propriétaire sous la liste quand la page n'a pas de sponsorisé */.owner-strip.slot{margin:26px 0 6px}.owner-strip.slot h2{font-size:1.1rem}

/* v127 : icône calendrier visible sur les deux champs de date */.bdates label{min-width:0;overflow:visible}.bdates input[type=date]{max-width:100%}.bdates input[type=date]::-webkit-calendar-picker-indicator{margin-left:0;padding:0;opacity:.75}

/* v131 : barre Où / Quand / Nuits, Autour de moi, badge Nouveau */.pill-d select{border:0;font:inherit;font-size:1rem;padding:0;background:none;color:var(--ink);cursor:pointer}.geo-btn{border:0;background:none;color:var(--p);cursor:pointer;display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:.82rem;font-weight:600;padding:6px 8px;border-radius:999px;white-space:nowrap}.geo-btn:hover{background:#fbe8ec}.geo-btn.wait{opacity:.5}.geo-btn svg{width:14px;height:14px}.bd.new{background:var(--p)}.geo-btn{display:none}   /* déclencheur caché : « Autour de moi » vit dans la liste du champ Où ?, bureau comme mobile */.ac li.geo span{color:var(--p);font-weight:600}.ac li.geo span::before{content:'📍 '}

/* v133 : barre de recherche, colonnes égales et texte d'aide sans chevaucher l'icône */.pill-d{flex:0 0 160px}.pill-d.nights{flex-basis:140px}.pill-d .ph{right:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.95rem}.pill-d input[type=date]{width:100%;min-width:0}.pill-d span{white-space:nowrap}@media(max-width:640px){.pill-d,.pill-d.nights{flex:1 1 45%}}

/* v135 : calendrier d'un mois dans le bloc de réservation ; icônes sauvegarder/partager dans l'entête sur mobile */
.mcal{margin:2px 0 10px;border:1px solid var(--b);border-radius:12px;background:#fff}.mcal summary{cursor:pointer;padding:10px 12px;font-weight:600;list-style:none;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mcal summary::-webkit-details-marker{display:none}.mcal summary .meta{font-weight:400;font-size:.82rem}.mcal summary::after{content:'▾';margin-left:auto;color:var(--mut)}.mcal[open] summary::after{content:'▴'}
.mcal-body{padding:0 10px 10px}.mcal-head{display:flex;align-items:center;justify-content:space-between;margin:2px 0 6px}.mcal-head b{text-transform:capitalize}.mcal-nav{border:1px solid var(--b);background:#fff;border-radius:50%;width:30px;height:30px;font-size:1.1rem;cursor:pointer;color:var(--ink)}.mcal-nav:disabled{opacity:.3;cursor:default}
.mcal-grid{width:100%;border-collapse:separate;border-spacing:2px;text-align:center;font-size:.88rem}.mcal-grid th{color:var(--mut);font-weight:500;font-size:.72rem}.mcal-grid td{padding:6px 0;border-radius:6px}.mcal-grid td.free{background:#eaf6ee;color:#1c6b3a;cursor:pointer}.mcal-grid td.free:hover{background:#cfeedb}.mcal-grid td.busy{background:#f7e3e9;color:#b3536f;text-decoration:line-through}.mcal-grid td.past{color:#c9bfc4}.mcal-grid td.sel{background:var(--p)!important;color:#fff!important}.mcal-grid td.in{background:#fbe8ec!important;color:var(--p)!important}
.mcal-body .meta{margin:8px 0 0;font-size:.78rem}
.ract.mob{display:none}
@media(max-width:760px){.ract.mob{display:flex;gap:6px;margin:0}.ract.mob button{border:1px solid var(--b);background:#fff;border-radius:999px;width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;color:var(--p)}.ract.mob button svg{width:18px;height:18px}.ract.mob .fav-ico.on{background:#fbe8ec}.rtop{display:none}}
@media(max-width:760px){.mcal summary .meta{display:none}}

/* v150 : fiches sans photo, visuel de substitution (cartes et page fiche) */
.nophoto{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;height:100%;min-height:160px;background:linear-gradient(135deg,#f6e9ef,#e6cdd8);color:#b8577b}
.nophoto small{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:#9b1c4a;opacity:.75}
.nophoto-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;min-height:280px;padding:32px 20px;border-radius:14px;background:linear-gradient(135deg,#f6e9ef 0%,#e6cdd8 60%,#dcb9c9 100%);color:#9b1c4a}
.nophoto-hero .nph-t{margin:6px 0 0;font-size:1.05rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.nophoto-hero .nph-s{margin:0;color:#6b3a4c;font-size:.95rem}
.nophoto-hero .nph-a{margin-top:10px;font-size:.9rem;color:#9b1c4a;text-decoration:underline}
@media(max-width:760px){.nophoto-hero{min-height:200px;border-radius:0}}

/* v154 : bouton disponibilités sur les cartes (Booking, avec les dates de la recherche) */
.card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 0;flex-wrap:wrap}
.card-actions .card-link{margin:0}
.card-book{display:inline-block;padding:7px 12px;border-radius:8px;background:var(--p,#9b1c4a);color:#fff;font-size:.86rem;font-weight:600;text-decoration:none;white-space:nowrap}
.card-book:hover{background:#7f1339;color:#fff}

/* v154 : tableaux dans les articles */
.post-body .tbl-wrap{overflow-x:auto;margin:16px 0}
.post-body table{border-collapse:collapse;width:100%;font-size:.92rem}
.post-body th,.post-body td{border:1px solid #eadfe4;padding:8px 10px;text-align:left;vertical-align:top}
.post-body th{background:#faf5f7;color:#9b1c4a;font-weight:700}
.post-body tbody tr:nth-child(even) td{background:#fcf9fa}

/* v155 : fenêtres de la carte enrichies */
.leaflet-popup-content{margin:0!important;line-height:1.35}
.leaflet-popup-content-wrapper{border-radius:12px!important;overflow:hidden;padding:0!important}
.mpop{width:100%;font-family:inherit}
.mpop img{display:block;width:100%;height:120px;object-fit:cover}
.mpop-b{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px}
.mpop-n{font-weight:700;font-size:.98rem;color:#231b1f;text-decoration:none}
.mpop-c{color:#6b5f65;font-size:.82rem}
.mpop-a{color:#3d3238;font-size:.8rem}
.mpop-f{display:flex;justify-content:space-between;align-items:center;margin-top:2px;font-size:.92rem}
.mpop-r{color:#b8860b;font-weight:600}
.mpop-l{display:flex;gap:8px;margin-top:6px}
.mpop-l a{flex:1;text-align:center;padding:6px 8px;border-radius:7px;border:1px solid #eadfe4;color:#9b1c4a;font-weight:600;font-size:.82rem;text-decoration:none}
.mpop-l a.mpop-bk{background:#9b1c4a;color:#fff;border-color:#9b1c4a}

/* v156 : marqueurs dorés des sponsorisés sur la carte */
.mk-gold{background:none;border:0}.mk-gold svg{filter:drop-shadow(0 2px 3px rgba(0,0,0,.35))}
.mpop-sp{display:block;padding:6px 12px 0;color:#8a6512;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}

/* v158 : plusieurs love rooms à la même adresse : marqueur groupé et liste */
.mk-multi{background:#9b1c4a;color:#fff;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem}
.mk-multi.gold{background:#c9962b;color:#231b1f}
.mpop-list{padding:10px 10px 6px}
.mpop-t{margin:0 0 8px;font-size:.8rem;font-weight:700;color:#9b1c4a;letter-spacing:.03em;text-transform:uppercase}
.mpop-row{display:flex;gap:10px;align-items:center;padding:6px 0;border-top:1px solid #eadfe4;text-decoration:none;color:#231b1f}
.mpop-row:first-of-type{border-top:0}
.mpop-row img,.mpop-ph{width:54px;height:40px;border-radius:6px;object-fit:cover;flex:0 0 54px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f6e9ef,#e6cdd8);color:#b8577b}
.mpop-row b{display:block;font-size:.88rem;line-height:1.25}
.mpop-row em{font-style:normal;font-size:.8rem;color:#6b5f65}
/* v159 : carte plus haute sur desktop, fenêtres de marqueur défilantes */
@media(min-width:900px){.map.on{height:min(560px,75vh)}}
.leaflet-popup-content.leaflet-popup-scrolled{border:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
.leaflet-popup-scrolled .mpop-list{padding-bottom:10px}
.px{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.post-body .enbref{background:var(--s);border-left:4px solid #9b1c4a;border-radius:0 10px 10px 0;padding:12px 16px;margin:18px 0 22px;font-size:.98rem}
/* v166 : suggestions de destinations à l'ouverture du champ, en-têtes, icônes, dernières recherches */
.ac{min-width:min(360px,calc(100vw - 32px));padding:6px 0;border-radius:14px;box-shadow:0 14px 40px rgba(35,27,31,.18)}
.ac li{justify-content:flex-start;align-items:center;gap:12px;padding:9px 14px}
.ac li span{display:flex;flex-direction:column;gap:1px;min-width:0}.ac li b{font-weight:600;font-size:.97rem}.ac li small{white-space:normal;font-size:.8rem}
.ac li.ac-h{cursor:default;padding:8px 14px 4px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}.ac li.ac-h:hover{background:none}
.ac-i{flex:0 0 18px;width:18px;height:18px;border-radius:50%;background:#f6e9ef;position:relative}.ac-i::after{content:"";position:absolute;left:6px;top:6px;width:6px;height:6px;border-radius:50%;background:#9b1c4a}
.ac-i.ac-g::after{background:#c9962b;box-shadow:0 0 0 3px rgba(201,150,43,.25)}.ac-i.ac-d{border-radius:5px}.ac-i.ac-d::after{border-radius:1px}.ac-i.ac-r{background:#e6cdd8}
.pill.lg .ac{left:0;right:auto;width:420px;max-width:calc(100vw - 32px)}
@media(max-width:760px){.pill .ac{left:-10px;right:-10px;width:auto;min-width:0}}
.ac li.geo span::before{content:none}.ac li.geo span{color:var(--ink);font-weight:400}.ac li.geo b{color:var(--p)}

.promo-bar{background:var(--p);color:#fff;font-size:.92rem;text-align:center}.promo-bar a{display:block;padding:8px 0;color:#fff}.promo-bar a:hover{text-decoration:none}.promo-bar a:hover strong{text-decoration:underline}.promo-bar strong{white-space:nowrap;margin-left:6px}@media(max-width:640px){.promo-bar{font-size:.84rem}.promo-bar a{padding:7px 0;line-height:1.35}}
/* Accessibilité (audit du 3 nov. 2026) : contour de focus visible au clavier, couleur du site */
:focus-visible{outline:2px solid var(--p);outline-offset:2px}.pill-q input:focus-visible{outline:none}
.near-cta{margin:18px 0 26px}.near-cta .btn{display:inline-flex;align-items:center;gap:8px;font-size:1.05rem;padding:14px 22px}.near-cta .btn.wait{opacity:.7}
