/* Batch 1 laser hub cleanup: one hub-only file for section spacing, card grids, and image sizing. */
body.theme-laser {
  --hub-green: #1fb25a;
  --hub-green-dark: #179149;
  --hub-blue: #245b78;
  --hub-ink: #123448;
  --hub-muted: #637284;
  --hub-border: rgba(31, 178, 90, 0.16);
  --hub-shadow: 0 16px 38px rgba(16, 67, 38, 0.08);
}

/* Trust strip belongs immediately under the hero. Keep it clean and compact. */
body.theme-laser .service-trust-strip.service-trust-laser {
  margin: 0 !important;
  border-radius: 0 !important;
  padding: 18px 24px !important;
  background: #f7fbf8 !important;
  border-top: 1px solid rgba(31, 178, 90, 0.12) !important;
  border-bottom: 1px solid rgba(31, 178, 90, 0.12) !important;
}

/* Areas we treat, restore normal treatment area thumbnails. */
body.theme-laser #areas {
  background: #ffffff !important;
  padding-top: 74px !important;
  padding-bottom: 78px !important;
}
body.theme-laser #areas .card-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}
body.theme-laser #areas .area-card {
  padding: 0 !important;
  min-height: 360px !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(31, 178, 90, 0.16) !important;
  box-shadow: 0 10px 26px rgba(16, 67, 38, 0.06) !important;
  display: flex !important;
  flex-direction: column !important;
}
body.theme-laser #areas .area-card::before {
  display: none !important;
}
body.theme-laser #areas .area-photo {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 0 18px !important;
  overflow: hidden !important;
  border-bottom: 1px solid rgba(31, 178, 90, 0.12) !important;
}
body.theme-laser #areas .area-photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
body.theme-laser #areas .area-card h3,
body.theme-laser #areas .area-card p,
body.theme-laser #areas .area-meta {
  padding-left: 20px !important;
  padding-right: 20px !important;
}
body.theme-laser #areas .area-card h3 {
  margin-top: 0 !important;
  color: var(--hub-ink) !important;
  font-size: 1.05rem !important;
  line-height: 1.25 !important;
}
body.theme-laser #areas .area-card p {
  color: var(--hub-muted) !important;
  font-size: 13.5px !important;
  line-height: 1.55 !important;
}
body.theme-laser #areas .area-meta {
  margin-top: auto !important;
  padding-bottom: 18px !important;
}
body.theme-laser #areas .area-price {
  color: var(--hub-green-dark) !important;
}
body.theme-laser #areas .area-link {
  color: var(--hub-ink) !important;
}

/* Hub support sections, smaller images than treatment cards and consistent card heights. */
body.theme-laser .laser-hub-flow-section {
  padding: 70px 24px !important;
}
body.theme-laser .laser-hub-flow-section:nth-of-type(even) {
  background: #f8fbf9 !important;
}
body.theme-laser .laser-hub-support-wrap {
  max-width: 1180px !important;
}
body.theme-laser .laser-hub-section {
  margin: 0 !important;
}
body.theme-laser .aroma-laser-support-head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 24px !important;
  margin-bottom: 28px !important;
}
body.theme-laser .laser-plan-grid,
body.theme-laser .laser-compare-card-grid,
body.theme-laser .laser-guides-grid {
  display: grid !important;
  gap: 22px !important;
  align-items: stretch !important;
}
body.theme-laser .laser-plan-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
body.theme-laser .laser-compare-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
body.theme-laser .laser-guides-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
body.theme-laser .laser-plan-grid .link-card,
body.theme-laser .laser-compare-card-grid .link-card,
body.theme-laser .laser-guides-grid .link-card {
  padding: 0 !important;
  overflow: hidden !important;
  min-height: 0 !important;
  background: #fff !important;
  border: 1px solid rgba(31, 178, 90, 0.14) !important;
  border-radius: 20px !important;
  box-shadow: 0 10px 26px rgba(16, 67, 38, 0.06) !important;
  display: flex !important;
  flex-direction: column !important;
}
body.theme-laser .laser-plan-grid .link-photo,
body.theme-laser .laser-compare-card-grid .link-photo,
body.theme-laser .laser-guides-grid .link-photo {
  display: block !important;
  width: 100% !important;
  height: 148px !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-bottom: 1px solid rgba(31, 178, 90, 0.12) !important;
  background: #eef6f2 !important;
}
body.theme-laser .laser-plan-grid .link-photo {
  height: 138px !important;
}
body.theme-laser .laser-compare-card-grid .link-photo {
  height: 152px !important;
}
body.theme-laser .laser-guides-grid .link-photo {
  height: 145px !important;
}
body.theme-laser .laser-plan-grid .link-photo img,
body.theme-laser .laser-compare-card-grid .link-photo img,
body.theme-laser .laser-guides-grid .link-photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
body.theme-laser .laser-plan-grid .link-card h3,
body.theme-laser .laser-compare-card-grid .link-card h3,
body.theme-laser .laser-guides-grid .link-card h3 {
  padding: 18px 18px 0 !important;
  margin: 0 0 8px !important;
  color: var(--hub-ink) !important;
  font-size: 1rem !important;
  line-height: 1.25 !important;
}
body.theme-laser .laser-plan-grid .link-card p,
body.theme-laser .laser-compare-card-grid .link-card p,
body.theme-laser .laser-guides-grid .link-card p {
  padding: 0 18px !important;
  margin: 0 0 12px !important;
  color: var(--hub-muted) !important;
  font-size: 13.5px !important;
  line-height: 1.55 !important;
  flex: 1 !important;
}
body.theme-laser .laser-plan-grid .small-link,
body.theme-laser .laser-compare-card-grid .small-link,
body.theme-laser .laser-guides-grid .small-link {
  display: block !important;
  padding: 0 18px 18px !important;
  margin-top: auto !important;
  color: var(--hub-green-dark) !important;
  font-weight: 800 !important;
  font-size: 13px !important;
}

/* Keep later hub sections comfortable and not oversized. */
body.theme-laser #pricing,
body.theme-laser #how-it-works,
body.theme-laser .dark-section,
body.theme-laser #locations {
  padding-top: 74px !important;
  padding-bottom: 74px !important;
}

@media (max-width: 1120px) {
  body.theme-laser #areas .card-grid,
  body.theme-laser .laser-plan-grid,
  body.theme-laser .laser-guides-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 900px) {
  body.theme-laser #areas .card-grid,
  body.theme-laser .laser-plan-grid,
  body.theme-laser .laser-compare-card-grid,
  body.theme-laser .laser-guides-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.theme-laser .aroma-laser-support-head {
    display: block !important;
  }
}
@media (max-width: 640px) {
  body.theme-laser #areas .card-grid,
  body.theme-laser .laser-plan-grid,
  body.theme-laser .laser-compare-card-grid,
  body.theme-laser .laser-guides-grid {
    grid-template-columns: 1fr !important;
  }
  body.theme-laser #areas .area-photo {
    aspect-ratio: 16 / 9 !important;
  }
  body.theme-laser .laser-plan-grid .link-photo,
  body.theme-laser .laser-compare-card-grid .link-photo,
  body.theme-laser .laser-guides-grid .link-photo {
    height: 170px !important;
  }
  body.theme-laser .laser-hub-flow-section {
    padding: 54px 20px !important;
  }
}
