
.welch-rental {
  --welch-ink:#171717;
  --welch-muted:#666;
  --welch-line:#e2e2e2;
  --welch-soft:#f7f7f5;
  --welch-max:1180px;
  color:var(--welch-ink);
  line-height:1.55;
}
.welch-rental * { box-sizing:border-box; }
.welch-wrap { max-width:var(--welch-max); margin:0 auto; padding:0 24px; }
.welch-top { padding:48px 0 28px; }
.welch-kicker {
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:#666;
}
.welch-rental h1 {
  font-size:clamp(2.3rem,5vw,4.6rem);
  line-height:1;
  margin:8px 0 10px;
  letter-spacing:-.04em;
}
.welch-location { color:var(--welch-muted); font-size:1.08rem; }
.welch-price {
  margin-top:26px;
  font-size:clamp(1.8rem,3vw,2.6rem);
  font-weight:800;
}
.welch-utilities { color:var(--welch-muted); }
.welch-facts {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:30px 0 0;
}
.welch-fact {
  padding:18px;
  border:1px solid var(--welch-line);
  background:var(--welch-soft);
  border-radius:12px;
}
.welch-fact strong { display:block; font-size:1.25rem; }
.welch-fact span { color:var(--welch-muted); font-size:.92rem; }
.welch-gallery {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:14px 0 52px;
}
.welch-gallery img {
  width:100%;
  aspect-ratio:3/2;
  object-fit:cover;
  display:block;
  border-radius:12px;
  background:#eee;
}
.welch-gallery img:first-child {
  grid-column:1/-1;
  aspect-ratio:16/9;
}
.welch-content {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);
  gap:48px;
  padding-bottom:58px;
}
.welch-rental h2 {
  font-size:1.55rem;
  margin:0 0 14px;
  letter-spacing:-.02em;
}
.welch-rental p { margin:0 0 18px; }
.welch-rental ul { margin:0; padding-left:20px; }
.welch-rental li { margin:7px 0; }
.welch-features-title { margin-top:30px !important; }
.welch-panel {
  border:1px solid var(--welch-line);
  border-radius:14px;
  padding:24px;
  background:var(--welch-soft);
}
.welch-panel + .welch-panel { margin-top:18px; }
.welch-rent { font-size:1.7rem; font-weight:800; margin-bottom:4px; }
.welch-small { color:var(--welch-muted); }
.welch-rule { border-top:1px solid var(--welch-line); margin:20px 0; }

@media(max-width:850px) {
  .welch-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .welch-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .welch-content { grid-template-columns:1fr; }
}
@media(max-width:560px) {
  .welch-gallery { grid-template-columns:1fr; }
  .welch-gallery img:first-child {
    grid-column:auto;
    aspect-ratio:3/2;
  }
}
