/* Carré Noir — Location/Mieten (page + formulaire)
   Notes:
   - Styles page sous .rental-page-box
   - Styles formulaire sous .rental-card
*/

/* ===== Page wrapper (texte + galerie + formulaire) ===== */
.rental-page-box{
  background: #fff;
  padding: 40px 48px;
  margin: 0 auto 40px;
  border: 1px solid rgba(0,0,0,0.10);
  box-sizing: border-box;
}

@media (max-width: 900px){
  .rental-page-box{
    padding: 22px 18px;
  }
}

/* Galerie: éviter les images écrasées */
.rental-page-box #gallery img,
.rental-page-box .gallery-image img,
.rental-page-box img.only-mobile{
  width: 100%;
  height: auto !important;
  display: block;
}

/* Galerie: desktop vs mobile + mobile en 2 colonnes */
#gallery img.only-mobile{
  display: none; /* desktop: on garde l'image dans le <a> */
}

@media (max-width: 900px){
  /* mobile: éviter doublons (le snippet sort 2 images par item) */
  #gallery a.gallery-image img{
    display: none !important;
  }
  #gallery img.only-mobile{
    display: block !important;
  }

  
  
  /* ===== FIX: sur mobile, désactiver le "masonry colonnes" et forcer 2 colonnes ===== */
@media (max-width: 900px){

  /* Le snippet met class="masonry" sur <ul id="gallery"> → on neutralise l'effet colonnes */
  .rental-page-box #gallery.masonry{
    -webkit-column-count: unset !important;
    -moz-column-count: unset !important;
    column-count: unset !important;
    -webkit-column-gap: 0 !important;
    -moz-column-gap: 0 !important;
    column-gap: 0 !important;

    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  /* Chaque item prend 50% */
  .rental-page-box #gallery.masonry > li{
    width: calc(50% - 10px) !important;
    min-width: calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
    margin: 0 !important;
    break-inside: auto !important;
  }

  /* Important si lightbox.css met des largeurs via grid-col-xx */
  .rental-page-box #gallery.masonry > li.grid-col-14,
  .rental-page-box #gallery.masonry > li.grid-col-22{
    min-width: calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
  }
}

  
  
  
  /* 2 colonnes */
  #gallery{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  #gallery li{
    min-width: calc(50% - 10px);
    max-width: calc(50% - 10px);
  }
}

/* ===== Formulaire (bloc) ===== */
.rental-card{
  background:#fff;
  max-width: 980px;
  margin: 0 auto 60px auto;
  padding: 40px;
  border: 1px solid rgba(0,0,0,.08);
  color: #111;
}

.rental-card h1,
.rental-card h2{
  margin-top: 0;
  margin-bottom: 10px;
}

.rental-card p{
  margin: 0 0 18px 0;
  line-height: 1.5;
  color: rgba(0,0,0,0.75);
}

.rental-card form{
  margin-top: 10px;
}

.rental-card .rental-form-row{
  margin-bottom: 16px;
}

.rental-card .rental-form-row > label{
  display: block;
  margin: 0 0 8px 0;
  font-size: 13px;
  font-weight: 600;
  color: rgba(0,0,0,0.70);
}

.rental-card input[type="text"],
.rental-card input[type="email"],
.rental-card input[type="date"],
.rental-card textarea{
  width: 100%;
  padding: 10px 10px;
  border: 1px solid rgba(0,0,0,0.18);
  border-radius: 0;
  background: #fff;
  color: #111;
  box-sizing: border-box;
  font-size: 14px;
  outline: none;
}

.rental-card textarea{
  min-height: 120px;
  resize: vertical;
}

.rental-card input[type="text"]:focus,
.rental-card input[type="email"]:focus,
.rental-card input[type="date"]:focus,
.rental-card textarea:focus{
  border-color: rgba(0,0,0,0.45);
}

.rental-card .rental-inline{
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}

.rental-card .rental-inline label{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
  margin: 0;
  color: rgba(0,0,0,0.80);
  line-height: 1.6;
}

.rental-card input[type="radio"]{
  transform: translateY(1px);
}

.rental-card input[name="duration_other"]{
  margin-top: 10px;
}

.rental-card .rental-actions{
  margin-top: 22px;
}

.rental-card .rental-actions button,
.rental-card .rental-actions input[type="submit"]{
  display: inline-block;
  padding: 12px 18px;
  border-radius: 0;
  border: 1px solid rgba(0,0,0,0.10);
  background:#111;
  color:#fff;
  font-size: 14px;
  font-weight: 700;
  cursor:pointer;
}

.rental-card .rental-actions button:hover,
.rental-card .rental-actions input[type="submit"]:hover{
  opacity: 0.92;
}

@media (max-width: 720px){
  .rental-card{
    padding: 22px 18px;
    margin-bottom: 40px;
  }
  .rental-card .rental-inline{
    gap: 10px;
  }
}
