.glassLite{
  background: rgba(10,16,36,.35);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.glass{
  background: linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.05));
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 18px 50px rgba(0,0,0,.35);
}
.glassStrong{
  background: linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.06));
  border:1px solid var(--stroke);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 18px 50px rgba(0,0,0,.35);
}

.btn{
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  color:var(--txt);
  padding:10px 14px;
  border-radius:12px;
  cursor:pointer;
  font-weight:950;
  transition:.15s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.10)}
.btn--ghost:hover{background:rgba(255,255,255,.10)}
.btn--primary{
  border:none;
  background: linear-gradient(135deg, var(--accentA), var(--accentB));
  box-shadow: 0 10px 30px rgba(255,61,190,.25);
}
.btn--primary:hover{filter:brightness(1.06)}
.btn--wide{width:100%;padding:14px 16px;border-radius:14px}

.rentalForm{
  border-radius:18px;
  padding:14px;
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:12px;
  max-width: 680px;
}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:12px;color:rgba(255,255,255,.82);font-weight:950}
.field input,.field select{
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  padding:12px 12px;
  background: rgba(0,0,0,.18);
  color:var(--txt);
  outline:none;
}
.field--full{grid-column:1 / -1}
.field input:focus,.field select:focus{border-color:rgba(255,255,255,.30)}
.formHint{margin-top:-2px;font-size:12px;color:rgba(255,255,255,.72);font-weight:850}
.kbd{border:1px solid rgba(255,255,255,.2);padding:2px 8px;border-radius:8px;background:rgba(255,255,255,.08);font-weight:950}

.badges{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}
.badge{
  padding:10px 12px;border-radius:999px;
  font-weight:950;color:rgba(255,255,255,.90);
  display:inline-flex;align-items:center;gap:10px;
}
.ico{width:18px;height:18px;opacity:.95}

.heroActions{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}

.featureCard{width:min(420px,100%);border-radius:20px;padding:16px}
.featureCard__kicker{font-size:12px;color:rgba(255,255,255,.75);font-weight:950}
.featureCard__title{margin-top:6px;font-size:22px;font-weight:1000}
.featureCard__meta{margin-top:6px;color:var(--muted);font-weight:850}
.featureCard__media{margin-top:12px;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.12)}
.featureCard__media img{width:100%;height:180px;object-fit:cover;display:block}
.featureCard__row{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}

.tile{border-radius:18px;overflow:hidden}
.tile img{width:100%;height:150px;object-fit:cover;display:block}
.tile__body{padding:12px}
.tile__name{font-weight:1000}
.tile__meta{color:var(--muted);font-weight:800;font-size:12px;margin-top:4px}
.tile__row{display:flex;justify-content:space-between;align-items:center;margin-top:10px}
.price{font-weight:1000}

/* CTA */
.cta{
  border-radius:22px;
  padding:18px;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
}
.cta__title{font-weight:1000;font-size:18px}

/* modal */
.modal{
  position:fixed; inset:0; display:none;
  align-items:center; justify-content:center;
  background: rgba(0,0,0,.55);
  z-index:50;
  padding:16px;
}
.modal.is-open{display:flex}
.modal__panel{width:min(720px,100%);border-radius:22px;padding:16px}
.modal__head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.modal__head h3{margin:0;font-size:18px}
.modal__body{margin-top:10px;color:rgba(255,255,255,.84);font-weight:750}
.modal__foot{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}

.stack{margin-top:12px;display:grid;gap:10px}
.input{
  padding:12px;border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.18);
  color:#fff;
}
