/* StorageGuide Finder — isolated shortcode styles */
.sgf-finder {
  --sgf-ink: #101612;
  --sgf-muted: #627169;
  --sgf-line: #dbe8df;
  --sgf-soft: #f2f8f4;
  --sgf-panel: #ffffff;
  --sgf-green: #16824f;
  --sgf-green-dark: #0b5f3c;
  --sgf-green-soft: #e9f7ef;
  --sgf-shadow: 0 26px 80px rgba(11, 95, 60, .14);
  width: 100%;
  margin: clamp(22px, 5vw, 60px) auto;
  color: var(--sgf-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.sgf-finder *, .sgf-finder *::before, .sgf-finder *::after { box-sizing: border-box; }
.sgf-shell {
  max-width: 1180px;
  margin: 0 auto;
  border: 1px solid #b7dfc8;
  border-radius: clamp(26px, 4vw, 42px);
  padding: clamp(22px, 4.5vw, 48px);
  background:
    radial-gradient(circle at 8% 4%, rgba(22, 130, 79, .18), transparent 30%),
    linear-gradient(135deg, #f0faf4, #ffffff 56%, #f7fbf8);
  box-shadow: var(--sgf-shadow);
  overflow: hidden;
}
.sgf-header { max-width: 920px; margin-bottom: clamp(20px, 3vw, 30px); }
.sgf-kicker {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 10px;
  border: 1px solid #bfe4cf;
  border-radius: 999px;
  padding: 7px 10px;
  background: rgba(255,255,255,.76);
  color: var(--sgf-green-dark);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 12px;
  font-weight: 950;
}
.sgf-header h2 { margin: 0; color: var(--sgf-ink); font-size: clamp(34px, 6vw, 76px); line-height: .98; letter-spacing: -.055em; font-weight: 950; }
.sgf-header p { max-width: 780px; margin: 14px 0 0; color: #33413a; font-size: clamp(17px, 2vw, 21px); line-height: 1.55; }
.sgf-widget { max-width: 980px; }
.sgf-quiz-card {
  border: 1px solid var(--sgf-line);
  border-radius: 30px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 42px rgba(9, 41, 25, .07);
  overflow: hidden;
}
.sgf-progress {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border-bottom: 1px solid var(--sgf-line);
  background: #f8fcf9;
}
.sgf-progress button {
  appearance: none;
  border: 0;
  border-right: 1px solid var(--sgf-line);
  background: transparent;
  padding: 14px 10px;
  color: var(--sgf-muted);
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.sgf-progress button:last-child { border-right: 0; }
.sgf-progress span { display: inline-grid; place-items: center; width: 24px; height: 24px; margin-right: 5px; border-radius: 999px; background: #fff; border: 1px solid var(--sgf-line); color: var(--sgf-green-dark); }
.sgf-progress button.is-active { color: var(--sgf-green-dark); background: #fff; }
.sgf-progress button.is-active span, .sgf-progress button.is-complete span { background: var(--sgf-green); border-color: var(--sgf-green); color: #fff; }
.sgf-window { overflow: hidden; }
.sgf-track { display: flex; width: 100%; transition: transform .36s cubic-bezier(.22,.75,.25,1); }
.sgf-step { min-width: 100%; padding: clamp(22px, 4vw, 40px); }
.sgf-step-label { display: inline-flex; margin-bottom: 10px; color: var(--sgf-green-dark); font-size: 12px; font-weight: 950; text-transform: uppercase; letter-spacing: .12em; }
.sgf-step h3 { margin: 0; font-size: clamp(28px, 4vw, 48px); line-height: 1; letter-spacing: -.045em; }
.sgf-step p { max-width: 720px; margin: 12px 0 0; color: #435049; line-height: 1.55; }
.sgf-location-actions { display: grid; grid-template-columns: max-content max-content minmax(260px, 1fr); gap: 12px; align-items: center; margin-top: 22px; }
.sgf-location-actions > span { color: var(--sgf-muted); font-weight: 850; }
.sgf-primary, .sgf-address-row button, .sgf-step-actions button, .sgf-choice-grid button {
  border: 1px solid var(--sgf-green);
  border-radius: 999px;
  padding: 13px 16px;
  background: #fff;
  color: var(--sgf-green-dark);
  cursor: pointer;
  font: inherit;
  font-size: 14px;
  font-weight: 950;
  transition: transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.sgf-primary, .sgf-step-actions .sgf-primary { background: var(--sgf-green); color: #fff; }
.sgf-primary:hover, .sgf-address-row button:hover, .sgf-step-actions button:hover, .sgf-choice-grid button:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(11,95,60,.11); }
.sgf-address-row { display: flex; gap: 8px; min-width: 0; }
.sgf-address-row input {
  width: 100%;
  min-width: 0;
  border: 1px solid #c9d9d0;
  border-radius: 999px;
  padding: 13px 15px;
  color: #122019;
  background: #fff;
  font: inherit;
  font-size: 15px;
}
.sgf-select-label { display: grid; gap: 8px; margin-top: 16px; max-width: 380px; }
.sgf-select-label span { color: var(--sgf-muted); text-transform: uppercase; letter-spacing: .11em; font-size: 12px; font-weight: 950; }
.sgf-select-label select {
  width: 100%;
  appearance: none;
  border: 1px solid #c9d9d0;
  border-radius: 17px;
  padding: 14px 44px 14px 14px;
  color: #122019;
  background: linear-gradient(45deg, transparent 50%, var(--sgf-green) 50%) calc(100% - 22px) center / 7px 7px no-repeat, linear-gradient(135deg, #fff, #f8fbf8);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 750;
}
.sgf-message { min-height: 24px; font-size: 14px; font-weight: 780; }
.sgf-message[data-tone="ok"] { color: var(--sgf-green-dark); }
.sgf-message[data-tone="warn"] { color: #925f17; }
.sgf-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.sgf-choice-grid button { border-color: #c9d9d0; border-radius: 18px; padding: 18px; text-align: left; color: #15251c; background: #fff; }
.sgf-choice-grid button.is-selected { border-color: var(--sgf-green); background: var(--sgf-green-soft); color: var(--sgf-green-dark); box-shadow: inset 0 0 0 1px rgba(22,130,79,.15); }
.sgf-step-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 26px; }
.sgf-results { margin-top: 18px; }
.sgf-empty { display: grid; place-content: center; gap: 8px; padding: 30px; text-align: center; border: 1px dashed #c9ddd0; border-radius: 24px; background: var(--sgf-soft); }
.sgf-empty span, .sgf-card-rank, .sgf-card-badge { color: var(--sgf-green); text-transform: uppercase; letter-spacing: .12em; font-size: 12px; font-weight: 950; }
.sgf-empty strong { display: block; max-width: 440px; font-size: clamp(24px, 3.2vw, 38px); line-height: 1; letter-spacing: -.04em; }
.sgf-empty p { max-width: 470px; margin: 0 auto; color: var(--sgf-muted); font-size: 15px; line-height: 1.55; }
.sgf-result-list { display: grid; gap: 14px; }
.sgf-card { display: grid; grid-template-columns: minmax(150px, 230px) minmax(0, 1fr); gap: 16px; border: 1px solid var(--sgf-line); border-radius: 24px; padding: 14px; background: #fff; }
.sgf-card:first-child { border-color: #9fd7b8; background: linear-gradient(135deg, #ffffff, #f4fbf7); }
.sgf-card-image { min-height: 150px; border-radius: 18px; overflow: hidden; background: linear-gradient(135deg, #dceee3, #f7fbf8); }
.sgf-card-image img { display: block; width: 100%; height: 100%; min-height: 150px; object-fit: cover; }
.sgf-image-empty { display: grid; place-items: center; width: 100%; height: 100%; min-height: 150px; color: var(--sgf-green-dark); font-size: 13px; font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.sgf-card-body { display: grid; gap: 8px; align-content: start; }
.sgf-card-top { display: flex; gap: 10px; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.sgf-card-rank { color: var(--sgf-green-dark); }
.sgf-card-badge { border-radius: 999px; padding: 7px 10px; background: var(--sgf-green-soft); border: 1px solid #bfe4cf; color: var(--sgf-green-dark); letter-spacing: .09em; }
.sgf-card h3 { margin: 0; font-size: clamp(22px, 3vw, 34px); line-height: 1; letter-spacing: -.04em; }
.sgf-card p { margin: 0; color: #33413a; font-size: 15px; line-height: 1.55; }
.sgf-card-address { color: var(--sgf-muted) !important; font-size: 13px !important; }
.sgf-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.sgf-actions a { display: inline-flex; justify-content: center; align-items: center; border-radius: 999px; padding: 12px 15px; text-decoration: none !important; font-weight: 950; border: 1px solid var(--sgf-green); }
.sgf-actions a:first-child { background: #fff; color: var(--sgf-green-dark) !important; }
.sgf-actions a:last-child { background: var(--sgf-green); color: #fff !important; }
.sgf-actions a:hover { transform: translateY(-1px); }
.sgf-footnote { margin: 18px 0 0; color: var(--sgf-muted); font-size: 13px; line-height: 1.5; }
.sgf-finder button:focus, .sgf-finder input:focus, .sgf-finder select:focus, .sgf-actions a:focus { outline: 3px solid rgba(22,130,79,.24); outline-offset: 3px; }
@media (max-width: 800px) {
  .sgf-progress { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sgf-location-actions { grid-template-columns: 1fr; }
  .sgf-location-actions > span { display: none; }
  .sgf-address-row { flex-direction: column; }
  .sgf-choice-grid { grid-template-columns: 1fr; }
  .sgf-card { grid-template-columns: 1fr; }
  .sgf-card-image, .sgf-card-image img, .sgf-image-empty { min-height: 190px; }
}
@media (max-width: 560px) {
  .sgf-shell { padding: 18px; border-radius: 26px; }
  .sgf-step { padding: 18px; }
  .sgf-progress button { font-size: 11px; padding: 12px 8px; }
  .sgf-actions a, .sgf-step-actions button { width: 100%; }
}


/* v1.2: robust one-step-at-a-time display. This avoids Bricks/theme flex/grid rules squeezing all finder steps into columns. */
.sgf-finder .sgf-window {
  overflow: hidden !important;
}
.sgf-finder .sgf-track {
  display: block !important;
  width: 100% !important;
  transform: none !important;
  transition: none !important;
}
.sgf-finder .sgf-step {
  display: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
.sgf-finder .sgf-step.is-active {
  display: block !important;
  animation: sgf-step-in .26s cubic-bezier(.22,.75,.25,1);
}
@keyframes sgf-step-in {
  from { opacity: 0; transform: translateX(18px); }
  to { opacity: 1; transform: translateX(0); }
}

/* v1.2 compact mode for placement inside a homepage hero/card. */
.sgf-finder.sgf-compact {
  margin: 0 !important;
  width: 100% !important;
}
.sgf-finder.sgf-compact .sgf-shell {
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 30px !important;
  overflow: hidden !important;
  background: rgba(255,255,255,.97) !important;
  border-color: rgba(191,228,207,.85) !important;
  box-shadow: 0 26px 70px rgba(0,0,0,.22) !important;
}
.sgf-finder.sgf-compact .sgf-header {
  margin: 0 !important;
  padding: 22px 24px 14px !important;
  max-width: none !important;
}
.sgf-finder.sgf-compact .sgf-kicker {
  margin-bottom: 9px !important;
  background: var(--sgf-green-soft) !important;
}
.sgf-finder.sgf-compact .sgf-header h2 {
  font-size: clamp(28px, 3.2vw, 46px) !important;
  line-height: .98 !important;
  letter-spacing: -.052em !important;
}
.sgf-finder.sgf-compact .sgf-header p {
  margin-top: 10px !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  color: #405047 !important;
}
.sgf-finder.sgf-compact .sgf-widget {
  max-width: none !important;
}
.sgf-finder.sgf-compact .sgf-quiz-card {
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
.sgf-finder.sgf-compact .sgf-progress button {
  padding: 12px 7px !important;
  font-size: 10.5px !important;
  letter-spacing: .07em !important;
}
.sgf-finder.sgf-compact .sgf-progress span {
  width: 21px !important;
  height: 21px !important;
}
.sgf-finder.sgf-compact .sgf-step {
  padding: 22px 24px 24px !important;
}
.sgf-finder.sgf-compact .sgf-step h3 {
  font-size: clamp(28px, 3vw, 42px) !important;
}
.sgf-finder.sgf-compact .sgf-step p {
  font-size: 15px !important;
}
.sgf-finder.sgf-compact .sgf-location-actions {
  grid-template-columns: 1fr !important;
}
.sgf-finder.sgf-compact .sgf-location-actions > span {
  display: none !important;
}
.sgf-finder.sgf-compact .sgf-address-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid button {
  padding: 14px !important;
  font-size: 13px !important;
}
.sgf-finder.sgf-compact .sgf-card {
  grid-template-columns: 120px minmax(0, 1fr) !important;
}
.sgf-finder.sgf-compact .sgf-card-image,
.sgf-finder.sgf-compact .sgf-card-image img,
.sgf-finder.sgf-compact .sgf-image-empty {
  min-height: 118px !important;
}
.sgf-finder.sgf-compact .sgf-footnote {
  margin: 0 !important;
  padding: 0 24px 22px !important;
}
@media (max-width: 680px) {
  .sgf-finder.sgf-compact .sgf-address-row,
  .sgf-finder.sgf-compact .sgf-choice-grid,
  .sgf-finder.sgf-compact .sgf-card {
    grid-template-columns: 1fr !important;
  }
  .sgf-finder.sgf-compact .sgf-card-image,
  .sgf-finder.sgf-compact .sgf-card-image img,
  .sgf-finder.sgf-compact .sgf-image-empty {
    min-height: 180px !important;
  }
}


/* v1.3: flatten Studio shortcode wrapper when the finder is placed inside a generated homepage slot. */
body .sg-shortcode-slot,
body .sg-home-page .sg-home-finder-card .sg-shortcode-slot,
body .sg-home-shortcode-slot {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
}
body .sg-shortcode-slot::before,
body .sg-home-page .sg-home-finder-card .sg-shortcode-slot::before,
body .sg-home-shortcode-slot::before {
  display: none !important;
  content: none !important;
}

/* v1.3: horizontal compact finder for homepage hero placement. */
.sgf-finder.sgf-compact .sgf-shell {
  display: grid !important;
  grid-template-columns: minmax(220px, .78fr) minmax(420px, 1.22fr) !important;
  align-items: stretch !important;
  min-height: 460px !important;
  border-radius: 26px !important;
  border: 1px solid rgba(191,228,207,.9) !important;
  background: rgba(255,255,255,.98) !important;
  box-shadow: 0 18px 54px rgba(0,0,0,.16) !important;
}
.sgf-finder.sgf-compact .sgf-header {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 30px 28px !important;
  border-right: 1px solid var(--sgf-line) !important;
  background: linear-gradient(135deg, #f5fbf7, #ffffff) !important;
}
.sgf-finder.sgf-compact .sgf-kicker {
  align-self: flex-start !important;
  margin-bottom: 14px !important;
}
.sgf-finder.sgf-compact .sgf-header h2 {
  font-size: clamp(30px, 4vw, 54px) !important;
  max-width: 420px !important;
  text-align: left !important;
}
.sgf-finder.sgf-compact .sgf-header p {
  max-width: 420px !important;
  text-align: left !important;
  color: #33453b !important;
  font-size: 15.5px !important;
  line-height: 1.48 !important;
}
.sgf-finder.sgf-compact .sgf-widget {
  display: block !important;
  min-width: 0 !important;
}
.sgf-finder.sgf-compact .sgf-quiz-card {
  height: 100% !important;
  min-height: 460px !important;
  display: grid !important;
  grid-template-rows: auto 1fr !important;
}
.sgf-finder.sgf-compact .sgf-progress {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.sgf-finder.sgf-compact .sgf-progress button {
  min-height: 54px !important;
  padding: 10px 8px !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
}
.sgf-finder.sgf-compact .sgf-window,
.sgf-finder.sgf-compact .sgf-track {
  height: 100% !important;
  min-height: 0 !important;
}
.sgf-finder.sgf-compact .sgf-step {
  min-height: 405px !important;
  height: 405px !important;
  padding: 22px 26px !important;
  overflow: auto !important;
  scrollbar-width: thin !important;
}
.sgf-finder.sgf-compact .sgf-step h3 {
  font-size: clamp(28px, 3.4vw, 48px) !important;
  max-width: 620px !important;
  text-align: left !important;
}
.sgf-finder.sgf-compact .sgf-step p {
  max-width: 640px !important;
  text-align: left !important;
  color: #33453b !important;
  opacity: 1 !important;
}
.sgf-finder.sgf-compact .sgf-step-label {
  display: inline-flex !important;
}
.sgf-finder.sgf-compact .sgf-location-actions {
  grid-template-columns: minmax(180px, .9fr) minmax(0, 1.4fr) !important;
  gap: 12px !important;
  align-items: stretch !important;
}
.sgf-finder.sgf-compact .sgf-location-actions > span {
  display: none !important;
}
.sgf-finder.sgf-compact .sgf-address-row {
  grid-template-columns: minmax(0, 1fr) auto !important;
}
.sgf-finder.sgf-compact .sgf-primary,
.sgf-finder.sgf-compact .sgf-address-row button,
.sgf-finder.sgf-compact .sgf-step-actions button,
.sgf-finder.sgf-compact .sgf-choice-grid button {
  min-height: 48px !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid button {
  padding: 13px !important;
  font-size: 12px !important;
  line-height: 1.28 !important;
}
.sgf-finder.sgf-compact .sgf-select-label {
  max-width: 520px !important;
}
.sgf-finder.sgf-compact .sgf-result-list {
  max-height: 310px !important;
  overflow: auto !important;
  padding-right: 4px !important;
}
.sgf-finder.sgf-compact .sgf-card {
  grid-template-columns: 105px minmax(0, 1fr) !important;
  border-radius: 18px !important;
  padding: 10px !important;
}
.sgf-finder.sgf-compact .sgf-card h3 {
  font-size: clamp(20px, 2.2vw, 28px) !important;
}
.sgf-finder.sgf-compact .sgf-card p {
  font-size: 13px !important;
  line-height: 1.4 !important;
}
.sgf-finder.sgf-compact .sgf-card-image,
.sgf-finder.sgf-compact .sgf-card-image img,
.sgf-finder.sgf-compact .sgf-image-empty {
  min-height: 110px !important;
  height: 100% !important;
}
.sgf-finder.sgf-compact .sgf-footnote {
  display: none !important;
}
@media (max-width: 960px) {
  .sgf-finder.sgf-compact .sgf-shell {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }
  .sgf-finder.sgf-compact .sgf-header {
    border-right: 0 !important;
    border-bottom: 1px solid var(--sgf-line) !important;
    padding: 24px !important;
  }
  .sgf-finder.sgf-compact .sgf-header h2,
  .sgf-finder.sgf-compact .sgf-header p {
    max-width: none !important;
  }
  .sgf-finder.sgf-compact .sgf-quiz-card {
    min-height: 0 !important;
  }
  .sgf-finder.sgf-compact .sgf-step {
    height: auto !important;
    min-height: 360px !important;
    overflow: visible !important;
  }
}
@media (max-width: 680px) {
  .sgf-finder.sgf-compact .sgf-progress {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .sgf-finder.sgf-compact .sgf-location-actions,
  .sgf-finder.sgf-compact .sgf-address-row,
  .sgf-finder.sgf-compact .sgf-choice-grid,
  .sgf-finder.sgf-compact .sgf-card {
    grid-template-columns: 1fr !important;
  }
  .sgf-finder.sgf-compact .sgf-step {
    min-height: 0 !important;
  }
}


/* v1.4: compact hero polish — small title strip, no repeated helper copy, fixed clean horizontal quiz. */
.sgf-finder.sgf-compact {
  margin: 0 auto !important;
  max-width: 100% !important;
}
.sgf-finder.sgf-compact .sgf-shell {
  display: grid !important;
  grid-template-columns: minmax(132px, 180px) minmax(0, 1fr) !important;
  width: 100% !important;
  max-width: 1040px !important;
  min-height: 390px !important;
  padding: 0 !important;
  border-radius: 24px !important;
  border: 1px solid rgba(183, 223, 200, .95) !important;
  background: #fff !important;
  box-shadow: 0 18px 48px rgba(6, 42, 26, .12) !important;
  overflow: hidden !important;
}
.sgf-finder.sgf-compact .sgf-header {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  padding: 22px 20px !important;
  border-right: 1px solid var(--sgf-line) !important;
  border-bottom: 0 !important;
  background: linear-gradient(180deg, #f6fbf8, #ffffff) !important;
}
.sgf-finder.sgf-compact .sgf-kicker {
  margin: 0 !important;
  align-self: flex-start !important;
  padding: 6px 9px !important;
  font-size: 10px !important;
  letter-spacing: .12em !important;
}
.sgf-finder.sgf-compact .sgf-header h2 {
  max-width: 130px !important;
  margin: 0 !important;
  color: #0b1510 !important;
  font-size: 18px !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
  text-align: left !important;
}
.sgf-finder.sgf-compact .sgf-header p {
  display: none !important;
}
.sgf-finder.sgf-compact .sgf-widget,
.sgf-finder.sgf-compact .sgf-quiz-card {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
.sgf-finder.sgf-compact .sgf-quiz-card {
  height: 100% !important;
  min-height: 390px !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
.sgf-finder.sgf-compact .sgf-progress {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  min-width: 0 !important;
}
.sgf-finder.sgf-compact .sgf-progress button {
  min-width: 0 !important;
  min-height: 48px !important;
  padding: 8px 6px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-size: 9.5px !important;
  letter-spacing: .08em !important;
}
.sgf-finder.sgf-compact .sgf-progress span {
  width: 22px !important;
  height: 22px !important;
  margin-right: 4px !important;
}
.sgf-finder.sgf-compact .sgf-step {
  height: 342px !important;
  min-height: 342px !important;
  padding: 24px 28px !important;
  overflow: auto !important;
}
.sgf-finder.sgf-compact .sgf-step-label {
  margin-bottom: 8px !important;
  font-size: 10px !important;
  letter-spacing: .16em !important;
}
.sgf-finder.sgf-compact .sgf-step h3 {
  max-width: 520px !important;
  font-size: clamp(28px, 3.1vw, 40px) !important;
  line-height: .98 !important;
  text-align: left !important;
  overflow-wrap: normal !important;
}
.sgf-finder.sgf-compact .sgf-step p {
  max-width: 560px !important;
  color: #33453b !important;
  opacity: 1 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  text-align: left !important;
}
.sgf-finder.sgf-compact .sgf-location-actions {
  grid-template-columns: minmax(160px, .8fr) minmax(0, 1.35fr) !important;
  gap: 10px !important;
  margin-top: 18px !important;
}
.sgf-finder.sgf-compact .sgf-address-row {
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 8px !important;
}
.sgf-finder.sgf-compact .sgf-primary,
.sgf-finder.sgf-compact .sgf-address-row button,
.sgf-finder.sgf-compact .sgf-step-actions button,
.sgf-finder.sgf-compact .sgf-choice-grid button {
  min-height: 44px !important;
  padding: 10px 13px !important;
  font-size: 12px !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 620px !important;
  gap: 10px !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid button {
  border-radius: 16px !important;
  line-height: 1.22 !important;
}
.sgf-finder.sgf-compact .sgf-step-actions {
  margin-top: 18px !important;
}
.sgf-finder.sgf-compact .sgf-select-label {
  margin-top: 13px !important;
  max-width: 520px !important;
}
.sgf-finder.sgf-compact .sgf-message {
  min-height: 18px !important;
  margin: 8px 0 0 !important;
  font-size: 13px !important;
}
.sgf-finder.sgf-compact .sgf-result-list {
  max-height: 245px !important;
}
@media (max-width: 900px) {
  .sgf-finder.sgf-compact .sgf-shell {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }
  .sgf-finder.sgf-compact .sgf-header {
    padding: 16px 18px !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--sgf-line) !important;
  }
  .sgf-finder.sgf-compact .sgf-header h2 {
    max-width: none !important;
    font-size: 20px !important;
  }
  .sgf-finder.sgf-compact .sgf-step {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
}
@media (max-width: 640px) {
  .sgf-finder.sgf-compact .sgf-progress { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .sgf-finder.sgf-compact .sgf-location-actions,
  .sgf-finder.sgf-compact .sgf-address-row,
  .sgf-finder.sgf-compact .sgf-choice-grid { grid-template-columns: 1fr !important; }
}

/* v1.5: compact finder header returns to a single title row above the quiz. */
.sgf-finder.sgf-compact {
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
}
.sgf-finder.sgf-compact .sgf-shell {
  display: block !important;
  width: 100% !important;
  max-width: 1120px !important;
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 24px !important;
  border: 1px solid rgba(183, 223, 200, .95) !important;
  background: #fff !important;
  box-shadow: 0 16px 44px rgba(5, 31, 19, .12) !important;
  overflow: hidden !important;
}
.sgf-finder.sgf-compact .sgf-header {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  padding: 14px 20px !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--sgf-line) !important;
  background: linear-gradient(135deg, #f8fcfa, #ffffff) !important;
  max-width: none !important;
  margin: 0 !important;
}
.sgf-finder.sgf-compact .sgf-kicker {
  flex: 0 0 auto !important;
  margin: 0 !important;
  align-self: center !important;
  padding: 7px 10px !important;
  border-radius: 999px !important;
  background: var(--sgf-green-soft) !important;
  border: 1px solid #bfe4cf !important;
  color: #0b6f48 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: .14em !important;
  white-space: nowrap !important;
}
.sgf-finder.sgf-compact .sgf-header h2 {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  color: #0b1510 !important;
  font-size: clamp(17px, 2vw, 24px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
  text-align: left !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.sgf-finder.sgf-compact .sgf-header p {
  display: none !important;
}
.sgf-finder.sgf-compact .sgf-widget,
.sgf-finder.sgf-compact .sgf-quiz-card {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}
.sgf-finder.sgf-compact .sgf-quiz-card {
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  min-height: 360px !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
.sgf-finder.sgf-compact .sgf-progress {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  background: #fbfdfb !important;
  border-bottom: 1px solid var(--sgf-line) !important;
}
.sgf-finder.sgf-compact .sgf-progress button {
  min-height: 48px !important;
  padding: 8px 7px !important;
  font-size: 9.5px !important;
  line-height: 1.1 !important;
  letter-spacing: .08em !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.sgf-finder.sgf-compact .sgf-progress span {
  width: 22px !important;
  height: 22px !important;
  margin-right: 5px !important;
}
.sgf-finder.sgf-compact .sgf-window,
.sgf-finder.sgf-compact .sgf-track {
  min-height: 0 !important;
  height: 100% !important;
}
.sgf-finder.sgf-compact .sgf-step {
  height: 312px !important;
  min-height: 312px !important;
  max-height: 312px !important;
  padding: 22px 28px !important;
  overflow: auto !important;
  scrollbar-width: thin !important;
}
.sgf-finder.sgf-compact .sgf-step-label {
  margin-bottom: 7px !important;
  font-size: 10px !important;
  letter-spacing: .16em !important;
}
.sgf-finder.sgf-compact .sgf-step h3 {
  max-width: 720px !important;
  margin: 0 !important;
  font-size: clamp(30px, 3.2vw, 44px) !important;
  line-height: .98 !important;
  letter-spacing: -.05em !important;
  text-align: left !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
.sgf-finder.sgf-compact .sgf-step p {
  max-width: 760px !important;
  margin-top: 9px !important;
  color: #33453b !important;
  opacity: 1 !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
  text-align: left !important;
}
.sgf-finder.sgf-compact .sgf-location-actions {
  display: grid !important;
  grid-template-columns: max-content minmax(310px, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  margin-top: 18px !important;
  max-width: 850px !important;
}
.sgf-finder.sgf-compact .sgf-location-actions > span {
  display: none !important;
}
.sgf-finder.sgf-compact .sgf-address-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 9px !important;
  min-width: 0 !important;
}
.sgf-finder.sgf-compact .sgf-location-bottom-row {
  display: grid !important;
  grid-template-columns: minmax(220px, 520px) auto !important;
  gap: 12px !important;
  align-items: end !important;
  margin-top: 14px !important;
  max-width: 720px !important;
}
.sgf-finder.sgf-compact .sgf-select-label {
  max-width: none !important;
  margin: 0 !important;
}
.sgf-finder.sgf-compact .sgf-location-continue,
.sgf-finder.sgf-compact .sgf-step-actions.sgf-location-continue {
  margin: 0 !important;
  align-self: end !important;
}
.sgf-finder.sgf-compact .sgf-select-label select {
  min-height: 44px !important;
  height: 44px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.sgf-finder.sgf-compact .sgf-primary,
.sgf-finder.sgf-compact .sgf-address-row button,
.sgf-finder.sgf-compact .sgf-step-actions button,
.sgf-finder.sgf-compact .sgf-choice-grid button {
  min-height: 44px !important;
  padding: 10px 14px !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}
.sgf-finder.sgf-compact .sgf-message {
  min-height: 18px !important;
  margin: 8px 0 0 !important;
  font-size: 13px !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  max-width: 780px !important;
  gap: 10px !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid button {
  border-radius: 16px !important;
  line-height: 1.2 !important;
  min-height: 62px !important;
}
.sgf-finder.sgf-compact .sgf-result-list {
  max-height: 215px !important;
  overflow: auto !important;
  padding-right: 4px !important;
}
.sgf-finder.sgf-compact .sgf-card {
  grid-template-columns: 94px minmax(0, 1fr) !important;
  border-radius: 18px !important;
  padding: 10px !important;
}
.sgf-finder.sgf-compact .sgf-card-image,
.sgf-finder.sgf-compact .sgf-card-image img,
.sgf-finder.sgf-compact .sgf-image-empty {
  min-height: 92px !important;
}
.sgf-finder.sgf-compact .sgf-card h3 {
  font-size: clamp(20px, 2.2vw, 28px) !important;
}
.sgf-finder.sgf-compact .sgf-card p {
  font-size: 13px !important;
  line-height: 1.4 !important;
}
.sgf-finder.sgf-compact .sgf-footnote {
  display: none !important;
}
@media (max-width: 900px) {
  .sgf-finder.sgf-compact .sgf-shell {
    min-height: 0 !important;
  }
  .sgf-finder.sgf-compact .sgf-header {
    padding: 14px 16px !important;
  }
  .sgf-finder.sgf-compact .sgf-step {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
  .sgf-finder.sgf-compact .sgf-location-actions,
  .sgf-finder.sgf-compact .sgf-location-bottom-row {
    grid-template-columns: 1fr !important;
    max-width: none !important;
  }
  .sgf-finder.sgf-compact .sgf-address-row {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
}
@media (max-width: 640px) {
  .sgf-finder.sgf-compact .sgf-header {
    flex-wrap: wrap !important;
  }
  .sgf-finder.sgf-compact .sgf-header h2 {
    white-space: normal !important;
  }
  .sgf-finder.sgf-compact .sgf-progress {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .sgf-finder.sgf-compact .sgf-location-actions,
  .sgf-finder.sgf-compact .sgf-address-row,
  .sgf-finder.sgf-compact .sgf-location-bottom-row,
  .sgf-finder.sgf-compact .sgf-choice-grid,
  .sgf-finder.sgf-compact .sgf-card {
    grid-template-columns: 1fr !important;
  }
}


/* v1.6: tighten middle quiz steps so option text never escapes card boxes. */
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"],
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] {
  height: 342px !important;
  min-height: 342px !important;
  padding: 22px 28px !important;
  overflow: auto !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"].is-active,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"].is-active {
  display: flex !important;
  flex-direction: column !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] .sgf-step-label,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] .sgf-step-label {
  margin-bottom: 7px !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] h3,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] h3 {
  font-size: clamp(28px, 3vw, 38px) !important;
  line-height: .96 !important;
  max-width: 620px !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] p,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] p {
  margin-top: 8px !important;
  font-size: 14px !important;
  line-height: 1.38 !important;
  max-width: 610px !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] .sgf-choice-grid,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] .sgf-choice-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 9px !important;
  margin-top: 16px !important;
  align-content: start !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid button {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 56px !important;
  height: auto !important;
  padding: 11px 13px !important;
  border-radius: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: left !important;
  color: #15251c !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  letter-spacing: .015em !important;
  text-transform: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  overflow: hidden !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] .sgf-choice-grid button {
  min-height: 62px !important;
  font-size: 14px !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] .sgf-step-actions,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] .sgf-step-actions {
  margin-top: auto !important;
  padding-top: 14px !important;
}
.sgf-finder.sgf-compact .sgf-step-actions button {
  white-space: nowrap !important;
}
@media (max-width: 760px) {
  .sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"],
  .sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
  .sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] .sgf-choice-grid,
  .sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] .sgf-choice-grid {
    grid-template-columns: 1fr !important;
  }
}

/* v1.7: RiderGuide-inspired compact finder polish.
   This is intentionally scoped to .sgf-compact so regular shortcode embeds remain safe. */
.sgf-finder.sgf-compact {
  --sgf-ink: #f8fff9;
  --sgf-muted: #b9c9bf;
  --sgf-line: rgba(255,255,255,.14);
  --sgf-soft: rgba(255,255,255,.065);
  --sgf-panel: #111714;
  --sgf-green: #16824f;
  --sgf-green-bright: #7ee0a6;
  --sgf-green-dark: #0b5f3c;
  width: 100% !important;
  margin: 0 !important;
  color: var(--sgf-ink) !important;
}
.sgf-finder.sgf-compact .sgf-shell {
  max-width: none !important;
  width: 100% !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 26px !important;
  padding: clamp(18px, 2.3vw, 30px) !important;
  background:
    radial-gradient(circle at 92% 22%, rgba(22,130,79,.28), transparent 36%),
    linear-gradient(135deg, #111613, #151b17 58%, #0b0f0d) !important;
  box-shadow: 0 24px 78px rgba(0,0,0,.34) !important;
  overflow: hidden !important;
}
.sgf-finder.sgf-compact .sgf-header {
  display: flex !important;
  align-items: baseline !important;
  gap: 14px !important;
  max-width: none !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 0 16px !important;
  border-bottom: 1px solid rgba(255,255,255,.14) !important;
  background: transparent !important;
}
.sgf-finder.sgf-compact .sgf-kicker {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--sgf-green-bright) !important;
  font-size: 13px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  letter-spacing: .15em !important;
}
.sgf-finder.sgf-compact .sgf-header h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: clamp(21px, 2.1vw, 34px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.045em !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
.sgf-finder.sgf-compact .sgf-header p,
.sgf-finder.sgf-compact .sgf-footnote {
  display: none !important;
}
.sgf-finder.sgf-compact .sgf-widget,
.sgf-finder.sgf-compact .sgf-quiz-card {
  max-width: none !important;
  width: 100% !important;
}
.sgf-finder.sgf-compact .sgf-quiz-card {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.sgf-finder.sgf-compact .sgf-progress {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  grid-template-columns: none !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
}
.sgf-finder.sgf-compact .sgf-progress::-webkit-scrollbar { display: none !important; }
.sgf-finder.sgf-compact .sgf-progress button {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-width: 0 !important;
  width: auto !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 999px !important;
  padding: 9px 12px !important;
  background: rgba(255,255,255,.045) !important;
  color: rgba(255,255,255,.68) !important;
  font-size: 11px !important;
  letter-spacing: .105em !important;
}
.sgf-finder.sgf-compact .sgf-progress span {
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  border: 1px solid rgba(126,224,166,.35) !important;
  background: rgba(255,255,255,.06) !important;
  color: var(--sgf-green-bright) !important;
  font-size: 11px !important;
}
.sgf-finder.sgf-compact .sgf-progress button.is-active {
  border-color: rgba(126,224,166,.55) !important;
  background: rgba(126,224,166,.10) !important;
  color: #ffffff !important;
}
.sgf-finder.sgf-compact .sgf-progress button.is-active span,
.sgf-finder.sgf-compact .sgf-progress button.is-complete span {
  background: var(--sgf-green) !important;
  border-color: var(--sgf-green) !important;
  color: #fff !important;
}
.sgf-finder.sgf-compact .sgf-window {
  min-height: 318px !important;
  height: 318px !important;
  overflow: hidden !important;
}
.sgf-finder.sgf-compact .sgf-step,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"],
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] {
  height: 318px !important;
  min-height: 318px !important;
  max-height: 318px !important;
  padding: 0 !important;
  overflow: auto !important;
  color: #fff !important;
}
.sgf-finder.sgf-compact .sgf-step-label {
  margin: 0 0 9px !important;
  color: var(--sgf-green-bright) !important;
  font-size: 11px !important;
  letter-spacing: .16em !important;
}
.sgf-finder.sgf-compact .sgf-step h3,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] h3,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] h3 {
  max-width: 680px !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(30px, 3.8vw, 52px) !important;
  line-height: .96 !important;
  letter-spacing: -.055em !important;
  text-align: left !important;
}
.sgf-finder.sgf-compact .sgf-step p,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] p,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] p {
  max-width: 680px !important;
  margin: 10px 0 0 !important;
  color: rgba(236,248,240,.78) !important;
  opacity: 1 !important;
  font-size: 15px !important;
  line-height: 1.44 !important;
  text-align: left !important;
}
.sgf-finder.sgf-compact .sgf-location-actions {
  display: grid !important;
  grid-template-columns: minmax(170px, max-content) minmax(240px, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  margin-top: 22px !important;
  max-width: 920px !important;
}
.sgf-finder.sgf-compact .sgf-address-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
}
.sgf-finder.sgf-compact input,
.sgf-finder.sgf-compact select {
  background: rgba(255,255,255,.075) !important;
  border-color: rgba(255,255,255,.18) !important;
  color: #fff !important;
  box-shadow: none !important;
}
.sgf-finder.sgf-compact input::placeholder { color: rgba(255,255,255,.45) !important; }
.sgf-finder.sgf-compact .sgf-location-bottom-row {
  display: grid !important;
  grid-template-columns: minmax(220px, 420px) auto !important;
  gap: 12px !important;
  align-items: end !important;
  margin-top: 16px !important;
  max-width: 680px !important;
}
.sgf-finder.sgf-compact .sgf-select-label span {
  color: rgba(126,224,166,.86) !important;
}
.sgf-finder.sgf-compact .sgf-select-label select {
  min-height: 46px !important;
  height: 46px !important;
}
.sgf-finder.sgf-compact .sgf-primary,
.sgf-finder.sgf-compact .sgf-address-row button,
.sgf-finder.sgf-compact .sgf-step-actions button {
  min-height: 46px !important;
  border-color: rgba(126,224,166,.65) !important;
  background: var(--sgf-green) !important;
  color: #fff !important;
  font-size: 12px !important;
}
.sgf-finder.sgf-compact .sgf-address-row button,
.sgf-finder.sgf-compact .sgf-step-actions button:not(.sgf-primary) {
  background: rgba(255,255,255,.035) !important;
  color: #fff !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] .sgf-choice-grid,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] .sgf-choice-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 20px !important;
  max-width: 860px !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] .sgf-choice-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid button {
  min-height: 58px !important;
  width: 100% !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.055) !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  letter-spacing: .01em !important;
  text-transform: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  box-shadow: none !important;
}
.sgf-finder.sgf-compact .sgf-choice-grid button.is-selected {
  background: rgba(126,224,166,.15) !important;
  border-color: rgba(126,224,166,.76) !important;
  color: #fff !important;
}
.sgf-finder.sgf-compact .sgf-step-actions {
  margin-top: 22px !important;
  padding-top: 0 !important;
}
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"].is-active,
.sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"].is-active {
  display: block !important;
}
.sgf-finder.sgf-compact .sgf-result-list {
  max-height: 238px !important;
  overflow: auto !important;
  display: grid !important;
  gap: 10px !important;
}
.sgf-finder.sgf-compact .sgf-card,
.sgf-card {
  grid-template-columns: 112px minmax(0, 1fr) !important;
  align-items: stretch !important;
}
.sgf-finder.sgf-compact .sgf-card {
  border-color: rgba(255,255,255,.14) !important;
  background: rgba(255,255,255,.06) !important;
  color: #fff !important;
}
.sgf-card-image,
.sgf-card-image img,
.sgf-image-empty {
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
  height: auto !important;
}
.sgf-finder.sgf-compact .sgf-card-image,
.sgf-finder.sgf-compact .sgf-card-image img,
.sgf-finder.sgf-compact .sgf-image-empty {
  width: 112px !important;
  min-width: 112px !important;
  height: 112px !important;
  min-height: 112px !important;
}
.sgf-finder.sgf-compact .sgf-card h3,
.sgf-finder.sgf-compact .sgf-card p,
.sgf-finder.sgf-compact .sgf-card-address {
  color: #fff !important;
}
.sgf-finder.sgf-compact .sgf-card p,
.sgf-finder.sgf-compact .sgf-card-address {
  color: rgba(235,246,239,.74) !important;
}
.sgf-finder.sgf-compact .sgf-card-badge {
  background: rgba(126,224,166,.12) !important;
  border-color: rgba(126,224,166,.38) !important;
  color: var(--sgf-green-bright) !important;
}
.sgf-finder.sgf-compact .sgf-actions a:first-child {
  background: rgba(255,255,255,.04) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.18) !important;
}
.sgf-finder.sgf-compact .sgf-actions a:last-child {
  background: var(--sgf-green) !important;
  color: #fff !important;
}
@media (max-width: 980px) {
  .sgf-finder.sgf-compact .sgf-shell { border-radius: 24px !important; }
  .sgf-finder.sgf-compact .sgf-window,
  .sgf-finder.sgf-compact .sgf-step,
  .sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"],
  .sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
  .sgf-finder.sgf-compact .sgf-location-actions,
  .sgf-finder.sgf-compact .sgf-location-bottom-row,
  .sgf-finder.sgf-compact .sgf-choice-grid,
  .sgf-finder.sgf-compact .sgf-step[data-sgf-step="1"] .sgf-choice-grid,
  .sgf-finder.sgf-compact .sgf-step[data-sgf-step="2"] .sgf-choice-grid {
    grid-template-columns: 1fr !important;
    max-width: none !important;
  }
  .sgf-finder.sgf-compact .sgf-address-row { grid-template-columns: 1fr !important; }
  .sgf-finder.sgf-compact .sgf-card { grid-template-columns: 96px minmax(0,1fr) !important; }
  .sgf-finder.sgf-compact .sgf-card-image,
  .sgf-finder.sgf-compact .sgf-card-image img,
  .sgf-finder.sgf-compact .sgf-image-empty {
    width: 96px !important;
    min-width: 96px !important;
    height: 96px !important;
    min-height: 96px !important;
  }
}
@media (max-width: 620px) {
  .sgf-finder.sgf-compact .sgf-header { display: block !important; }
  .sgf-finder.sgf-compact .sgf-header h2 { margin-top: 7px !important; }
  .sgf-finder.sgf-compact .sgf-progress { flex-wrap: nowrap !important; }
  .sgf-finder.sgf-compact .sgf-card { grid-template-columns: 1fr !important; }
  .sgf-finder.sgf-compact .sgf-card-image,
  .sgf-finder.sgf-compact .sgf-card-image img,
  .sgf-finder.sgf-compact .sgf-image-empty {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
  }
}


/* v1.8 climate-control line in result cards */
.sgf-card-climate {
  margin: 0 !important;
  color: var(--sgf-green-dark) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}


/* v1.9: harden result card layout so Bricks/theme CSS cannot let text bleed over images. */
.sgf-finder .sgf-card {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(120px, 180px) minmax(0, 1fr) !important;
  gap: clamp(14px, 2vw, 22px) !important;
  align-items: stretch !important;
  overflow: hidden !important;
  isolation: isolate !important;
}
.sgf-finder .sgf-card-image {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: 180px !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
  overflow: hidden !important;
  z-index: 0 !important;
}
.sgf-finder .sgf-card-image img,
.sgf-finder .sgf-image-empty {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}
.sgf-finder .sgf-card-body {
  grid-column: 2 !important;
  grid-row: 1 !important;
  position: relative !important;
  z-index: 1 !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  display: grid !important;
  align-content: start !important;
  gap: 8px !important;
}
.sgf-finder .sgf-card h3,
.sgf-finder .sgf-card p,
.sgf-finder .sgf-card-address,
.sgf-finder .sgf-card-climate,
.sgf-finder .sgf-card-badge,
.sgf-finder .sgf-card-rank {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}
.sgf-finder .sgf-card h3 {
  font-size: clamp(22px, 2.4vw, 34px) !important;
  line-height: 1.02 !important;
}
.sgf-finder .sgf-card-top {
  justify-content: flex-start !important;
}
.sgf-finder .sgf-card-badge {
  white-space: normal !important;
}
.sgf-finder .sgf-actions {
  align-items: center !important;
}
@media (min-width: 981px) {
  .sgf-finder.sgf-compact .sgf-card {
    grid-template-columns: 120px minmax(0, 1fr) !important;
  }
  .sgf-finder.sgf-compact .sgf-card-image,
  .sgf-finder.sgf-compact .sgf-card-image img,
  .sgf-finder.sgf-compact .sgf-image-empty {
    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    height: 120px !important;
    min-height: 120px !important;
  }
  .sgf-finder.sgf-compact .sgf-card h3 {
    font-size: clamp(22px, 2.2vw, 30px) !important;
  }
  .sgf-finder.sgf-compact .sgf-card p {
    font-size: 14px !important;
    line-height: 1.42 !important;
  }
}
@media (max-width: 720px) {
  .sgf-finder .sgf-card,
  .sgf-finder.sgf-compact .sgf-card {
    grid-template-columns: 1fr !important;
  }
  .sgf-finder .sgf-card-image,
  .sgf-finder.sgf-compact .sgf-card-image,
  .sgf-finder .sgf-card-image img,
  .sgf-finder.sgf-compact .sgf-card-image img,
  .sgf-finder .sgf-image-empty,
  .sgf-finder.sgf-compact .sgf-image-empty {
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .sgf-finder .sgf-card-body,
  .sgf-finder.sgf-compact .sgf-card-body {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}
