.ldg-carousel{position:relative;max-width:100%;--ldg-gap:18px}.ldg-track{display:flex;gap:var(--ldg-gap);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;padding:4px 2px 16px}.ldg-card{flex:0 0 calc((100% - (var(--ldg-columns) - 1)*var(--ldg-gap))/var(--ldg-columns));min-width:0;border:1px solid #e6e6e6;border-radius:12px;overflow:hidden;background:#fff;scroll-snap-align:start;color:#222}.ldg-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.ldg-content{padding:16px}.ldg-content h3{font-size:1.12rem;line-height:1.35;margin:0 0 8px}.ldg-content p{margin:0 0 10px}.ldg-price{font-weight:700}.ldg-button{display:inline-block;padding:10px 15px;background:#fac600;color:#333!important;border-radius:22px;text-decoration:none!important;font-weight:600}.ldg-controls{display:flex;justify-content:flex-end;gap:8px;margin-bottom:10px}.ldg-controls button{cursor:pointer;border:1px solid #ddd;border-radius:50%;background:#fff;width:38px;height:38px;font-size:24px}.ldg-official-search,.ldg-official-booking{width:100%;--ldg-psb-color-primary:#fac600;--ldg-bnb-color-primary:#fac600}.ldg-official-search #lodgify-search-bar,.ldg-official-booking #lodgify-book-now-box{width:100%}@media(max-width:900px){.ldg-card{flex-basis:calc((100% - var(--ldg-gap))/2)}}@media(max-width:600px){.ldg-card{flex-basis:88%}}

.ldg-detail{max-width:1050px;margin:auto}.ldg-detail h1{margin:18px 0}.ldg-detail-image{width:100%;max-height:540px;object-fit:cover;border-radius:12px}.ldg-description{margin:20px 0;line-height:1.7;white-space:normal}.ldg-back{display:inline-block;margin-bottom:10px}.ldg-detail #lodgify-book-now-box{width:100%}

.ldg-catalog{width:100%;max-width:1250px;margin:0 auto}.ldg-catalog>h2{margin:0 0 24px}.ldg-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ldg-catalog-grid .ldg-card{width:100%;min-width:0}.ldg-catalog-image-link{display:block}.ldg-catalog-grid .ldg-card img{width:100%;aspect-ratio:4/3;object-fit:cover}@media(max-width:900px){.ldg-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.ldg-catalog-grid{grid-template-columns:1fr}}

/* Fiche enrichie : photos et réservation native Lodgify */
.ldg-detail{max-width:1180px}.ldg-detail-location{color:#666;margin-top:0}.ldg-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}.ldg-gallery>a{display:block;overflow:hidden;border-radius:12px;aspect-ratio:4/3}.ldg-gallery>a:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.ldg-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.ldg-gallery a:hover img{transform:scale(1.025)}.ldg-features{font-weight:600;padding:12px 0;border-bottom:1px solid #e9e9e9}.ldg-detail-description{margin:24px 0}.ldg-booking-panel{border:1px solid #e6e6e6;padding:22px;border-radius:14px;margin:16px 0 30px}.ldg-booking-fallback{font-size:.9rem;color:#666;margin:14px 0 0}.ldg-booking-fallback a{text-decoration:underline}@media(max-width:700px){.ldg-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.ldg-gallery>a:first-child{grid-column:span 2;grid-row:auto;aspect-ratio:16/10}.ldg-booking-panel{padding:12px}}

/* SEDDIA v2: fiche de type plateforme, adaptative et indépendante du thème */
.ldg-detail-v2{max-width:1320px;margin:0 auto;color:inherit}.ldg-detail-v2 .ldg-detail-header h1{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.18;margin:12px 0}.ldg-detail-v2 .ldg-detail-header p{color:#666;margin:0}.ldg-detail-v2 .ldg-gallery{margin:24px 0 32px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;border-radius:18px;overflow:hidden}.ldg-detail-v2 .ldg-gallery>a{border-radius:0}.ldg-detail-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,370px);gap:48px;align-items:start}.ldg-detail-main{min-width:0}.ldg-feature-chips{display:flex;flex-wrap:wrap;gap:10px;padding:16px 0 22px;border-bottom:1px solid #e5e7eb}.ldg-feature-chips span{padding:9px 14px;border:1px solid #e5e7eb;border-radius:30px;font-weight:600;font-size:.92rem}.ldg-detail-v2 h2{font-size:1.45rem;margin:0 0 15px}.ldg-detail-v2 .ldg-detail-description{padding:30px 0;border-bottom:1px solid #e5e7eb;margin:0}.ldg-detail-v2 .ldg-description{margin:0;line-height:1.8}.ldg-amenities{padding:30px 0}.ldg-amenities ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;list-style:none;padding:0;margin:0}.ldg-amenities li:before{content:'✓';font-weight:700;margin-right:10px;color:#3c785f}.ldg-reservation-aside{position:relative}.ldg-detail-v2 .ldg-booking-panel{position:sticky;top:25px;margin:0;padding:24px;border:1px solid #e5e7eb;box-shadow:0 8px 35px rgba(0,0,0,.07);background:#fff;border-radius:18px;color:#222}.ldg-detail-v2 .ldg-booking-panel h2{font-size:1.25rem}.ldg-detail-v2 .ldg-booking-panel .ldg-price{margin:0 0 18px}.ldg-booking-fallback{line-height:1.5}@media(max-width:900px){.ldg-detail-columns{grid-template-columns:1fr;gap:28px}.ldg-detail-v2 .ldg-booking-panel{position:static}.ldg-detail-v2 .ldg-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.ldg-detail-v2 .ldg-gallery>a:first-child{grid-column:span 2;grid-row:auto;aspect-ratio:16/10}}@media(max-width:560px){.ldg-amenities ul{grid-template-columns:1fr}.ldg-detail-v2 .ldg-booking-panel{padding:16px}}
