/* SafariAnts destination rating cards — authoritative final rules.
   Loaded at the end of place.php so it wins over legacy inline style blocks. */
html body.layout-destination .sa-hero-stats-widget > .sa-destination-stats.sa-rating-cards-four {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  align-items:stretch !important;
  gap:16px !important;
  width:calc(100% - 24px) !important;
  margin:12px !important;
  padding:0 !important;
  box-sizing:border-box !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

html body.layout-destination .sa-rating-cards-four > .sa-rating-score,
html body.layout-destination .sa-rating-cards-four > .sa-rating-action {
  display:flex !important;
  position:relative !important;
  box-sizing:border-box !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:150px !important;
  min-height:150px !important;
  max-height:150px !important;
  margin:0 !important;
  padding:12px 8px !important;
  border:1px solid #e1e6e2 !important;
  border-radius:25px !important;
  box-shadow:0 2px 5px rgba(38,55,45,.055) !important;
  overflow:hidden !important;
  color:#59615d !important;
  font-family:inherit !important;
  text-align:center !important;
  background:#fff !important;
}

html body.layout-destination .sa-rating-cards-four > .sa-rating-score {
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  gap:12px !important;
  background:linear-gradient(135deg,#fffdf9 0%,#fff7ec 100%) !important;
}

html body.layout-destination .sa-rating-cards-four > .sa-rating-action {
  -webkit-appearance:none !important;
  appearance:none !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  gap:12px !important;
  cursor:pointer !important;
  font-size:18px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  transition:box-shadow .16s ease !important;
  -webkit-tap-highlight-color:transparent;
}
html body.layout-destination .sa-rating-cards-four > .sa-rating-action-like {
  background:linear-gradient(135deg,#fafffb 0%,#e9f9ef 100%) !important;
}
html body.layout-destination .sa-rating-cards-four > .sa-rating-action-visited {
  background:linear-gradient(135deg,#f8fdff 0%,#e8f7fc 100%) !important;
}
html body.layout-destination .sa-rating-cards-four > .sa-rating-action-share {
  background:linear-gradient(135deg,#fdfaff 0%,#f3edfc 100%) !important;
}
html body.layout-destination .sa-rating-cards-four > .sa-rating-action:hover,
html body.layout-destination .sa-rating-cards-four > .sa-rating-action:focus-visible {
  border-color:#e1e6e2 !important;
  box-shadow:0 3px 9px rgba(38,55,45,.09) !important;
}
html body.layout-destination .sa-rating-cards-four > .sa-rating-action:focus-visible {
  outline:2px solid rgba(57,118,83,.3) !important;
  outline-offset:3px !important;
}
html body.layout-destination .sa-rating-cards-four > .sa-rating-action:disabled {
  opacity:.72 !important;
  cursor:wait !important;
}

/* Action glyphs: outline by default, solid green only when the saved state is active. */
html body.layout-destination .sa-rating-cards-four .sa-rating-action-icon {
  display:block !important;
  flex:0 0 42px !important;
  width:42px !important;
  min-width:42px !important;
  max-width:42px !important;
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  margin:0 !important;
  padding:0 !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  overflow:visible !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-action-icon path {
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:inherit !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-action-like,
html body.layout-destination .sa-rating-cards-four .sa-rating-action-visited {
  color:#07864d !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-action-share {
  color:#168c59 !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-action-like.is-active .sa-rating-action-icon path,
html body.layout-destination .sa-rating-cards-four .sa-rating-action-visited.is-active .sa-rating-action-icon path {
  fill:currentColor !important;
}

/* Visible, consistent labels on all three action cards. */
html body.layout-destination .sa-rating-cards-four .sa-rating-action-label {
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:static !important;
  width:auto !important;
  max-width:100% !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  color:#59615d !important;
  font-family:inherit !important;
  font-size:18px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  text-align:center !important;
}

/* Average rating: score and all five stars on line one; caption on line two. */
html body.layout-destination .sa-rating-cards-four .sa-rating-score > b {
  display:flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#414744 !important;
  font-size:34px !important;
  font-weight:700 !important;
  letter-spacing:-1px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
html body.layout-destination .sa-rating-cards-four [data-sa-average-rating] {
  display:inline-block !important;
  flex:0 0 auto !important;
  color:#414744 !important;
  font:inherit !important;
  line-height:1 !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-buttons {
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-star {
  -webkit-appearance:none !important;
  appearance:none !important;
  display:inline-flex !important;
  flex:0 0 23px !important;
  align-items:center !important;
  justify-content:center !important;
  width:23px !important;
  min-width:23px !important;
  max-width:23px !important;
  height:23px !important;
  min-height:23px !important;
  max-height:23px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#d8dcdd !important;
  color:#fff !important;
  font-family:inherit !important;
  font-size:17px !important;
  font-weight:700 !important;
  line-height:1 !important;
  cursor:pointer !important;
  box-shadow:none !important;
  text-shadow:none !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-star.is-average,
html body.layout-destination .sa-rating-cards-four .sa-rating-buttons.is-previewing .sa-rating-star.is-preview {
  background:#07864d !important;
  color:#ffe16b !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-star:focus-visible {
  outline:2px solid rgba(57,118,83,.4) !important;
  outline-offset:2px !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-caption {
  display:block !important;
  flex:0 0 auto !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#59615d !important;
  font-family:inherit !important;
  font-size:18px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  text-align:center !important;
}
html body.layout-destination .sa-rating-cards-four .sa-rating-status:empty { display:none !important; }
html body.layout-destination .sa-rating-cards-four .sa-rating-status {
  display:block !important;
  margin:0 !important;
  font-size:11px !important;
  line-height:1.2 !important;
}

@media(max-width:760px) {
  html body.layout-destination .sa-hero-stats-widget > .sa-destination-stats.sa-rating-cards-four {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    padding:0 !important;
  }
  html body.layout-destination .sa-rating-cards-four > .sa-rating-score,
  html body.layout-destination .sa-rating-cards-four > .sa-rating-action {
    height:142px !important;
    min-height:142px !important;
    max-height:142px !important;
    border-radius:21px !important;
  }
  html body.layout-destination .sa-rating-cards-four .sa-rating-score > b {
    gap:4px !important;
    font-size:30px !important;
    letter-spacing:-.8px !important;
  }
  html body.layout-destination .sa-rating-cards-four .sa-rating-star {
    flex-basis:21px !important;
    width:21px !important;
    min-width:21px !important;
    max-width:21px !important;
    height:21px !important;
    min-height:21px !important;
    max-height:21px !important;
    font-size:16px !important;
  }
  html body.layout-destination .sa-rating-cards-four .sa-rating-action-icon {
    flex-basis:38px !important;
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
  }
  html body.layout-destination .sa-rating-cards-four .sa-rating-action-label,
  html body.layout-destination .sa-rating-cards-four .sa-rating-caption { font-size:16px !important; }
}
@media(max-width:420px) {
  html body.layout-destination .sa-hero-stats-widget > .sa-destination-stats.sa-rating-cards-four {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  html body.layout-destination .sa-rating-cards-four > .sa-rating-score,
  html body.layout-destination .sa-rating-cards-four > .sa-rating-action {
    padding:10px 5px !important;
  }
  html body.layout-destination .sa-rating-cards-four .sa-rating-score > b { font-size:25px !important; gap:3px !important; }
  html body.layout-destination .sa-rating-cards-four .sa-rating-star {
    flex-basis:18px !important;width:18px !important;min-width:18px !important;max-width:18px !important;
    height:18px !important;min-height:18px !important;max-height:18px !important;font-size:14px !important;
  }
  html body.layout-destination .sa-rating-cards-four .sa-rating-action-label,
  html body.layout-destination .sa-rating-cards-four .sa-rating-caption { font-size:14px !important; }
}
