.locations-page .container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 20px;
}
.locations-hero {
  padding: 0 0 88px 0;
  color: #fff;
  background:
    linear-gradient(216deg, rgba(0, 0, 0, 0) 33%, rgba(0, 0, 0, 0.6) 76%),
    linear-gradient(0deg, rgba(59, 43, 30, 0.5), rgba(59, 43, 30, 0.5)),
    url("/wp-content/themes/hello-theme-child-master/assets/imgs/banners/treatments-banner.webp");
  background-size: cover;
  background-position: center;
  min-height: clamp(360px, 55vh, 579px);
  display: flex;
  align-items: flex-end;
}
.locations-breadcrumbs a,
.locations-breadcrumbs {
  color: #ededed !important;
  font-size: 20px !important;
  text-decoration: none;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 150%;
}
.locations-title {
  margin: 32px 0 0 0;
}
.locations-banner__inner {
  width: 100%;
}
.locations-grid-section {
  padding: 100px 0 64px;
  background-color: #faf4ef;
}
/* Grid */
.loc-grid {
  display: grid;
  gap: 16px;
}
.loc-grid[data-cols="3"] {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
/* Card */
.loc-card {
  border-radius: 18px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #8b6749;
  display: flex;
  flex-direction: column;
}
.loc-card__media {
  aspect-ratio: 16/10;
  overflow: hidden;
  background: #eee;
}
.loc-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.loc-card__body {
  padding: 14px 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.loc-card__title {
  margin: 0;
}
.loc-card__title a {
  font-size: 18px !important;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.15s ease;
}
.loc-card__title a:hover {
  opacity: 0.75;
}
.loc-card__address a {
  text-decoration: none;
  border-bottom: 1px dashed rgba(0, 0, 0, 0.25);
  color: inherit;
}
.loc-card__desc {
  font-size: 13px;
  opacity: 0.9;
}
.loc-card__actions {
  margin-top: auto;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
/* Responsive */
@media (max-width: 980px) {
  .loc-grid[data-cols="3"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .locations-title {
    font-size: 36px;
  }
}
@media (max-width: 560px) {
  .loc-grid {
    grid-template-columns: 1fr !important;
  }
}
/* === Buttons === */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 18px;
  border-radius: 999px;
  font-size: 14px;
  line-height: 1;
  text-decoration: none;
  border: 1px solid transparent;
  cursor: pointer;
  transition:
    transform 0.12s ease,
    opacity 0.12s ease;
}
@media (max-width: 350px) {
  .btn {
    width: 100%;
  }
}
.btn:hover {
  transform: translateY(-1px);
}
.btn-primary {
  background: #8b6749;
  color: #faf4ef !important;
}
.btn-outline {
  background: transparent;
  border-color: #8b6749;
  color: #8b6749;
}
