@media (max-width:760px){
html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}body{-webkit-text-size-adjust:100%;text-size-adjust:100%}img,video,iframe{max-width:100%!important}
.wrap,main.wrap,.rent-wrap,.owner-wrap,.page-wrap,.container{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
header.top.top-native-v43,.top-native-v43{height:72px!important;min-height:72px!important;max-height:72px!important;padding:0 14px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:9px!important;background:#fff!important;border-bottom:1px solid #e7eee8!important;box-sizing:border-box!important;overflow:visible!important;position:relative!important;z-index:10000!important}
.top-native-v43 .brand{display:flex!important;align-items:center!important;gap:9px!important;flex:1 1 auto!important;min-width:0!important;max-width:calc(100% - 56px)!important;height:72px!important;margin:0!important;padding:0!important;overflow:hidden!important;text-decoration:none!important}
.top-native-v43 .brand img{display:block!important;width:38px!important;height:38px!important;min-width:38px!important;max-width:38px!important;min-height:38px!important;max-height:38px!important;object-fit:contain!important;flex:0 0 38px!important;margin:0!important}
.top-native-v43 .brand-text{display:block!important;min-width:0!important;overflow:hidden!important;line-height:1.05!important}
.top-native-v43 .brand-text b{display:block!important;font-size:16px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:#17351f!important}
.top-native-v43 .brand-text small{display:block!important;margin-top:3px!important;font-size:8.5px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:300px!important;color:#738078!important}
.desktop-nav-native-v43{display:none!important}.mobile-nav-native-v43{display:block!important;visibility:visible!important;opacity:1!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;max-width:46px!important;max-height:46px!important;flex:0 0 46px!important;margin:0!important;padding:0!important;position:static!important;transform:none!important}
.mobile-nav-native-v43>summary{display:grid!important;place-items:center!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#0d6b37!important;box-shadow:none!important;list-style:none!important}.mobile-nav-native-v43>summary::-webkit-details-marker{display:none!important}.mobile-nav-native-v43>summary::marker{display:none!important;content:""!important}.mobile-nav-native-v43 .lm-menu-bars-v169{display:block!important;color:#0d6b37!important;background:transparent!important;border:0!important;box-shadow:none!important;font-size:34px!important;line-height:1!important;font-weight:700!important}
.mobile-nav-panel-native-v43{position:fixed!important;top:72px!important;left:10px!important;right:10px!important;width:auto!important;max-width:none!important;max-height:calc(100vh - 84px)!important;overflow:auto!important;z-index:10002!important}
main h1,.wrap h1,.rent-wrap h1{font-size:28px!important;line-height:1.08!important;margin-top:18px!important}main h2,.wrap h2,.rent-wrap h2{line-height:1.12!important}p,li,label,input,select,textarea,button,a{overflow-wrap:anywhere}form:not(.fav-mini-form):not(.inline-form){max-width:100%!important}input,select,textarea{max-width:100%!important;box-sizing:border-box!important}.filters,.booking-dates,.experience-dynamic-form-v114,.owner-form,.subscriber-form,.login-form{grid-template-columns:1fr!important;gap:10px!important}.filters input,.filters select,.filters button,.booking-card input,.booking-card select,.booking-card textarea{width:100%!important;min-height:44px!important}
.properties-page-v114 .grid,.grid.properties-grid,.properties-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.properties-page-v114 .card,.properties-page-v114 .airbnb-card-v100,.properties-page-v114 .card-v121{min-width:0!important;width:100%!important;border-radius:16px!important;overflow:hidden!important}.properties-page-v114 .card-photo-wrap img{width:100%!important;aspect-ratio:1/1!important;height:auto!important;object-fit:cover!important}.properties-page-v114 .card-body-v100{padding:8px!important}.properties-page-v114 .card h3{font-size:12.5px!important;line-height:1.15!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.properties-page-v114 .card-location,.properties-page-v114 .card-mini-stats,.properties-page-v114 .terms{font-size:9.5px!important;line-height:1.2!important}.properties-page-v114 .price{font-size:12px!important;line-height:1.2!important}.properties-page-v114 .card-actions-v121{display:none!important}
.detail-title-row{display:block!important}.detail-title-row h1{font-size:28px!important;line-height:1.08!important}.detail-location{font-size:13px!important;line-height:1.3!important}.detail-action-row-v117{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;margin-top:14px!important}.detail-action-row-v117>*{min-width:0!important;width:100%!important;box-sizing:border-box!important}.more-actions-v117{grid-column:1/-1!important}.more-actions-v117 summary{width:100%!important}
.nearby-section{width:100%!important;margin-top:24px!important}.nearby-section .section-line{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:8px!important;margin-bottom:10px!important}.nearby-section .section-line h2{margin:0!important;max-width:78%!important;font-size:20px!important;line-height:1.08!important}.nearby-section .section-line a{flex:0 0 auto!important;white-space:nowrap!important;font-size:11px!important}.nearby-row.nearby-compact-v116{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;overflow:visible!important;padding:0!important}.nearby-row.nearby-compact-v116 .nearby-mini-card-v116{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;min-width:0!important;width:100%!important;height:auto!important;border-radius:16px!important;overflow:hidden!important;background:#fff!important}.nearby-row.nearby-compact-v116 .nearby-mini-card-v116>img{display:block!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1/1!important;object-fit:cover!important}.nearby-row.nearby-compact-v116 .nearby-mini-body-v116{padding:8px 8px 10px!important;display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important}.nearby-row.nearby-compact-v116 .nearby-mini-badge-v116{align-self:flex-start!important;padding:4px 6px!important;font-size:8.5px!important;line-height:1.1!important}.nearby-row.nearby-compact-v116 .nearby-mini-body-v116 h3{margin:0!important;min-height:27px!important;font-size:12px!important;line-height:1.14!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.nearby-row.nearby-compact-v116 .nearby-mini-body-v116 p{margin:0!important;font-size:9.5px!important;line-height:1.18!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.nearby-row.nearby-compact-v116 .nearby-mini-body-v116 strong{display:block!important;margin-top:2px!important;font-size:11.5px!important;line-height:1.15!important}.review-form-box summary{font-size:15px!important;line-height:1.25!important;padding:13px 14px!important}
.rent-grid,.rent-properties-grid,.rent-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.rent-card,.rent-property-card{min-width:0!important}.rent-card img,.rent-property-card img{width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:cover!important}.owner-grid,.login-grid,.register-grid,.subscriber-grid{grid-template-columns:1fr!important}.owner-card,.login-card,.register-card,.subscriber-card{width:100%!important;max-width:100%!important;box-sizing:border-box!important}.site-footer,.footer{overflow:hidden!important}.footer-columns,.footergrid{display:grid!important;grid-template-columns:1fr!important;gap:18px!important}.footer-bottom{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:6px!important}
}
@media(max-width:390px){.properties-page-v114 .grid,.grid.properties-grid,.properties-grid,.nearby-row.nearby-compact-v116{gap:8px!important}.nearby-row.nearby-compact-v116 .nearby-mini-body-v116 h3{font-size:11.5px!important}.nearby-row.nearby-compact-v116 .nearby-mini-body-v116 strong{font-size:11px!important}}

/* V23.40G-FOOTER-MOBILE-CENTER
   Correction strictement limitée au footer partagé des pages secondaires.
   L'accueil utilise son footer .footer propre et n'est pas concerné. */
@media (max-width:760px){
  html body .site-footer .footer-columns{
    width:calc(100% - 34px)!important;
    max-width:1180px!important;
    margin:0 auto!important;
    padding:0 0 20px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    justify-items:center!important;
    text-align:center!important;
  }
  html body .site-footer .footer-columns > div{
    width:100%!important;
    max-width:430px!important;
    margin:0 auto!important;
    text-align:center!important;
  }
  html body .site-footer .footer-brand{
    max-width:430px!important;
    margin:0 auto!important;
    text-align:center!important;
  }
  html body .site-footer .footer-brand img{
    display:block!important;
    margin:0 auto 9px!important;
  }
  html body .site-footer .footer-columns h2,
  html body .site-footer .footer-columns h3,
  html body .site-footer .footer-columns h4{
    text-align:center!important;
  }
  html body .site-footer .footer-columns h2::after,
  html body .site-footer .footer-columns h3::after,
  html body .site-footer .footer-columns h4::after{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html body .site-footer .footer-columns a,
  html body .site-footer .footer-columns p{
    text-align:center!important;
  }
  html body .site-footer .footer-bottom{
    width:calc(100% - 34px)!important;
    max-width:1180px!important;
    margin:0 auto!important;
    padding:12px 0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    justify-items:center!important;
    align-items:center!important;
    text-align:center!important;
  }
  html body .site-footer .footer-bottom > *{
    width:100%!important;
    text-align:center!important;
  }
}

/* === V23.40I FOOTER SECONDAIRE = ACCUEIL === */
/* Référence visuelle : footer de index.php (.footer / .footergrid). */
.site-footer{
  background:#042818 !important;
  color:#fff !important;
  padding:28px 24px !important;
  margin-top:30px !important;
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
  border-radius:0 !important;
  text-align:left !important;
}
.site-footer .footer-columns{
  display:grid !important;
  grid-template-columns:1.3fr 1fr 1fr 1fr !important;
  gap:24px !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
.site-footer .footer-brand,
.site-footer .footer-columns > div{
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
.site-footer .footer-brand img{
  display:none !important;
}
.site-footer h3{
  margin:1em 0 !important;
  font-size:14px !important;
  line-height:1.2 !important;
  color:#ecd16f !important;
}
.site-footer p{
  color:#fff !important;
  font-size:12px !important;
  line-height:1.45 !important;
  margin:7px 0 !important;
}
.site-footer a{
  display:block !important;
  color:#dce8df !important;
  font-size:12px !important;
  line-height:1.35 !important;
  margin:7px 0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  text-decoration:none !important;
}
.site-footer a:hover,
.site-footer a:focus{
  color:#fff !important;
  text-decoration:underline !important;
}
/* L'Accueil n'a pas cette barre séparée : on la masque pour obtenir le même rendu. */
.site-footer .footer-bottom{
  display:none !important;
}
@media(max-width:699px){
  .site-footer{
    padding:28px 22px !important;
  }
  .site-footer .footer-columns{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
}
/* === FIN V23.40I === */

/* === V23.40J MARGES PAGES SECONDAIRES V21 === */
/*
   Les pages comme experiences.php utilisent encore les classes V21
   (.v21-wrap, .v21-page-hero, .v21-service-grid, etc.) alors que leur
   feuille historique n'est plus chargée par le header restauré.
   On rétablit uniquement les règles de mise en page nécessaires.
*/
.v21-wrap{
  width:100% !important;
  max-width:1200px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:20px !important;
  padding-right:20px !important;
  box-sizing:border-box !important;
}
.v21-page-hero{
  background:#eaf3ec !important;
  padding:44px 0 !important;
}
.v21-page-hero h1{
  font-size:42px !important;
  line-height:1.12 !important;
  margin:0 0 10px !important;
}
.v21-page-hero p{
  max-width:780px !important;
  color:#56685b !important;
}
.v21-section{
  padding-top:42px !important;
  padding-bottom:42px !important;
}
.v21-service-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}
.v21-service-card{
  background:#fff !important;
  border:1px solid #e2eae4 !important;
  border-radius:18px !important;
  padding:22px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
.v21-service-card img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  border-radius:12px !important;
}
.v21-service-card h3{
  margin:10px 0 8px !important;
  color:#0b6b37 !important;
}
.v21-service-card p{
  color:#617066 !important;
  line-height:1.5 !important;
}
.v21-eyebrow{
  display:inline-block !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  font-size:12px !important;
  font-weight:900 !important;
  color:#c4871b !important;
  margin-bottom:10px !important;
}
.v21-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  border-radius:11px !important;
  padding:11px 16px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}
.v21-btn.outline{
  background:transparent !important;
  color:#0b6b37 !important;
  border:1px solid #b9d2c1 !important;
}

/* Le footer secondaire garde sa propre largeur pleine, mais son contenu
   conserve une vraie marge intérieure sur tous les écrans. */
.site-footer .footer-columns{
  box-sizing:border-box !important;
  width:100% !important;
  max-width:1200px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media(max-width:1050px){
  .v21-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:650px){
  .v21-wrap{
    padding-left:16px !important;
    padding-right:16px !important;
  }
  .v21-page-hero{
    padding:30px 0 !important;
  }
  .v21-page-hero h1{
    font-size:32px !important;
  }
  .v21-section{
    padding-top:28px !important;
    padding-bottom:32px !important;
  }
  .v21-service-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .v21-service-card{
    padding:16px !important;
  }
  .site-footer .footer-columns{
    padding-left:0 !important;
    padding-right:0 !important;
  }
}
/* === FIN V23.40J === */


/* V23.47G FILIGRANE MENU MOBILE - DEBUT */
/* Empêche le panneau du menu mobile fermé de laisser une bande verte au bord gauche. */
@media (max-width: 760px){
  details.mobile-nav-native-v43:not([open]) > .mobile-nav-panel-native-v43{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
}
/* V23.47G FILIGRANE MENU MOBILE - FIN */


/* V23.47J HERO MOBILE CLEAN */
@media (max-width: 767px){
  .v21-page-hero{
    background:#fff !important;
    box-shadow:none !important;
  }
}

/* === V23.47K BANNIERES PAGES SECONDAIRES === */
@media (max-width: 768px) {
  .v21-page-hero {
    background: linear-gradient(135deg, #0f6b37 0%, #0b4d2b 100%) !important;
    border-radius: 24px !important;
    padding: 28px 22px !important;
    box-shadow: 0 14px 32px rgba(10, 70, 38, 0.18) !important;
    overflow: hidden !important;
  }
  .v21-page-hero .v21-eyebrow,
  .v21-page-hero .eyebrow,
  .v21-page-hero small {
    color: #d6a63c !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }
  .v21-page-hero h1,
  .v21-page-hero h2,
  .v21-page-hero .title {
    color: #fff !important;
    font-weight: 800 !important;
  }
  .v21-page-hero p,
  .v21-page-hero .subtitle,
  .v21-page-hero .intro {
    color: rgba(255,255,255,.92) !important;
  }
}
/* === FIN V23.47K === */

/* === SCI LemMarket V23.47L — bannière secondaire mobile compacte === */
@media (max-width: 768px) {
  .v21-page-hero {
    width: calc(100% - 32px) !important;
    max-width: none !important;
    margin: 16px auto 22px !important;
    padding: 22px 20px 24px !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .v21-page-hero .v21-wrap,
  .v21-page-hero .wrap,
  .v21-page-hero .container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .v21-page-hero h1,
  .v21-page-hero h2,
  .v21-page-hero .title {
    margin: 6px 0 12px !important;
    line-height: 1.08 !important;
  }

  .v21-page-hero p,
  .v21-page-hero .subtitle,
  .v21-page-hero .intro {
    margin: 0 !important;
    line-height: 1.48 !important;
  }

  .v21-page-hero .v21-eyebrow,
  .v21-page-hero .eyebrow,
  .v21-page-hero small {
    display: block !important;
    margin: 0 0 8px !important;
  }
}
/* === fin V23.47L === */
