/* ============================================================
   HOTELS - LISTING (Hotels.aspx)
   ------------------------------------------------------------
   Page-only rules for the hotel listing cards (hotels/hotel-listing.jpg).
   Loads after common.css - see /website/FrontEnd/STYLE-GUIDE.md.
   Reuses .container / .section-pad / .btn / .btn-gold and the
   colour + type tokens from there.
   ============================================================ */

.hotel-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
}

/* The whole card links to the hotel's detail page. */
.hotel-card{
  display:flex;
  flex-direction:column;
  background:#fff;
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 2px 12px rgba(0,0,0,.08);
  color:var(--ink);
  transition:box-shadow .25s ease;
}
.hotel-card:hover{box-shadow:0 6px 22px rgba(0,0,0,.14);}

.hotel-card-img{aspect-ratio:2/1;overflow:hidden;}
.hotel-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.hotel-card:hover .hotel-card-img img{transform:scale(1.03);}

.hotel-card-body{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:22px 20px 20px;
}
.hotel-card-name{
  font-size:18px;
  font-weight:600;
  line-height:1.35;
  text-decoration:underline;
  text-underline-offset:3px;
  margin-bottom:22px;
}
.hotel-card-address{
  font-size:14px;
  line-height:1.6;
}
.hotel-card-location{
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:10px;
  font-size:12px;
  line-height:1.4;
}
.hotel-card-location svg{color:var(--gold);flex-shrink:0;}

/* Pinned to the bottom so buttons line up across a row of cards. */
.hotel-card-body > p:last-of-type{margin-bottom:24px;}
.hotel-card-btn{
  width:100%;
  margin-top:auto;
  font-size:12px;
}
.hotel-card:hover .hotel-card-btn::before{transform:scaleX(1);}

@media (max-width:1100px){
  .hotel-grid{grid-template-columns:repeat(2,1fr);gap:24px;}
}
@media (max-width:640px){
  .hotel-grid{grid-template-columns:1fr;}
}
