

.rooms-prices-hero .inner{
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:82px 0 42px;
}

.rooms-prices-split{
  grid-template-columns:1.05fr .95fr;
}

.rooms-prices-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:12px;
}

.rooms-prices-aside{
  justify-content:center;
  gap:12px;
  background:rgba(255,255,255,.42);
}

.rooms-prices-pill{
  display:inline-flex;
  width:fit-content;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(95,110,91,.12);
  color:var(--green-dark);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-family:"Segoe UI", Arial, sans-serif;
}

.rooms-prices-aside__value{
  font-size:clamp(1.7rem, 2.8vw, 2.4rem);
  line-height:1.06;
}

.rooms-prices-panel{
  padding:28px 24px;
  background:rgba(255,255,255,.42);
}

.rooms-prices-panel--spaced{
  margin-top:15px;
}

.rooms-prices-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
}

.rooms-prices-card{
  background:rgba(255,255,255,.42);
}

.rooms-prices-card--half{
  min-height:100%;
}

.rooms-prices-card h3{
  margin:0 0 10px;
}

.rooms-prices-card__price{
  margin-bottom:14px;
  color:var(--muted);
  line-height:1.5;
}

.rooms-prices-card__price strong{
  color:var(--text);
  font-size:1.2rem;
}

.rooms-prices-card__note{
  margin:0;
  color:var(--muted);
  line-height:1.6;
}

.rooms-prices-family{
  display:grid;
  gap:8px;
  margin-bottom:14px;
}

.rooms-prices-family strong{
  font-size:1.08rem;
}

.rooms-prices-list{
  margin:0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.6;
}

.rooms-prices-list li + li{
  margin-top:6px;
}

.rooms-prices-list--large{
  line-height:1.7;
}

.rooms-prices-table-wrap{
  overflow-x:auto;
}

.rooms-prices-table{
  width:100%;
  min-width:620px;
  border-collapse:collapse;
  background:#fff;
  border:1px solid rgba(76,68,61,.1);
  border-radius:18px;
  overflow:hidden;
}

.rooms-prices-table th,
.rooms-prices-table td{
  padding:12px 14px;
  border-bottom:1px solid rgba(76,68,61,.08);
  text-align:center;
  vertical-align:middle;
}

.rooms-prices-table thead th{
  background:rgba(246,240,231,.72);
  font-size:.84rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.rooms-prices-table td:first-child,
.rooms-prices-table th:first-child{
  text-align:left;
  min-width:240px;
}

.rooms-prices-table tbody tr:last-child td{
  border-bottom:0;
}

.rooms-prices-table tbody tr.is-highlight td{
  background:rgba(95,110,91,.08);
}

.rooms-prices-bottom{
  text-align:center;
  background:rgba(255,255,255,.42);
}

.rooms-prices-bottom h2{
  margin:0 0 12px;
  font-size:clamp(2rem, 3vw, 3rem);
}

.rooms-prices-bottom p{
  max-width:780px;
  margin:0 auto;
  color:var(--muted);
  line-height:1.65;
}

.rooms-prices-bottom .center-actions{
  margin-top:24px;
}

@media (max-width: 960px){
  .rooms-prices-split{
    grid-template-columns:1fr;
  }

  .rooms-prices-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 820px){
  .rooms-prices-hero{
    min-height:320px;
  }

  .rooms-prices-hero .inner{
    min-height:320px;
    padding:74px 0 28px;
  }

  .rooms-prices-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .rooms-prices-actions .btn{
    width:100%;
  }

  .rooms-prices-panel{
    padding:22px 18px;
  }

  .rooms-prices-table-wrap{
    overflow:visible;
  }

  .rooms-prices-table{
    min-width:0;
    border:0;
    background:transparent;
  }

  .rooms-prices-table thead{
    display:none;
  }

  .rooms-prices-table tbody{
    display:grid;
    gap:12px;
  }

  .rooms-prices-table tr{
    display:block;
    border:1px solid rgba(76,68,61,.1);
    border-radius:16px;
    background:#fff;
    overflow:hidden;
  }

  .rooms-prices-table td{
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto;
    gap:12px;
    align-items:start;
    padding:10px 14px;
    text-align:right;
    border-bottom:1px solid rgba(76,68,61,.08);
  }

  .rooms-prices-table td::before{
    content:attr(data-label);
    text-align:left;
    color:var(--muted);
    font-size:.8rem;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
  }

  .rooms-prices-table td:first-child{
    min-width:0;
    grid-template-columns:1fr;
    text-align:left;
    background:rgba(246,240,231,.62);
    font-weight:600;
  }

  .rooms-prices-table td:first-child::before{
    display:block;
    margin-bottom:4px;
    color:var(--text);
  }

}
