/* ========================================
   SEARCH KIT v2.0 — Shared component (Reference: /find-treatment/)
   Used by: /find-treatment/, /states/*, /cities/*
   ======================================== */

:root {
  --sk-green: #1B2A4A;
  --sk-green-light: #E8EDF5;
  --sk-green-dark: #0F1A2E;
  --sk-warm: #F5F0EB;
  --sk-border: #E8E4DF;
  --sk-text: #1a1a1a;
  --sk-text-sec: #6B7280;
  --sk-radius: 14px;
  --sk-shadow: 0 1px 3px rgba(0,0,0,.06), 0 4px 16px rgba(0,0,0,.06);
}

/* ===== HERO (state/city pages) ===== */
.sk-hero {
  background: linear-gradient(135deg, var(--sk-green-dark) 0%, var(--sk-green) 60%, var(--sk-green-dark) 100%);
  color: #fff; padding: calc(56px + 20px) 20px 24px; text-align: center;
}
.sk-hero h1 { font-family: inherit; font-size: 32px; margin: 0 0 6px; font-weight: 700; }
.sk-hero p { opacity: .85; font-size: 15px; margin: 0 auto 8px; max-width: 600px; }
@media(max-width:768px) { .sk-hero { padding: calc(56px + 10px) 16px 18px; } .sk-hero h1 { font-size: 22px; } .sk-hero p { font-size: 14px; } }

/* ===== PAGE TITLE (find-treatment style — no hero bg) ===== */
.sk-page-title { max-width: 1200px; margin: 0 auto; padding: 12px 20px 16px; text-align: center; }
.sk-page-title h1 { font-family: 'Playfair Display', serif; font-size: 32px; font-weight: 700; color: var(--sk-text); margin: 0 0 8px; }
.sk-page-title p { font-size: 15px; color: var(--sk-text-sec); margin: 0 auto; max-width: 600px; }
@media(max-width:768px) { .sk-page-title { padding: 8px 16px 12px; } .sk-page-title h1 { font-size: 24px; } }

/* ===== BREADCRUMB ===== */
.sk-bread { max-width: 1200px; margin: 0 auto; padding: 8px 20px 0; }
.sk-bread ol { display: flex; gap: 6px; list-style: none; margin: 0; padding: 0; font-size: 13px; color: var(--sk-text-sec); }
.sk-bread li + li::before { content: "\203A"; margin-right: 6px; color: #ccc; }
.sk-bread a { color: var(--sk-green); text-decoration: none; }
.sk-bread a:hover { text-decoration: underline; }
@media(max-width:768px) { .sk-bread { padding: 4px 16px 0; } }

/* Hero breadcrumb variant */
.sk-bread--hero { margin: -20px auto 0; padding: 0 20px; position: relative; z-index: 1; }
.sk-bread--hero ol { display: inline-flex; padding: 8px 16px; font-size: 13px; color: rgba(255,255,255,.7); background: rgba(0,0,0,.15); border-radius: 8px; }
.sk-bread--hero a { color: rgba(255,255,255,.9); }

/* ===== STATS BAR ===== */
.sk-stats { display: flex; gap: 16px; flex-wrap: wrap; justify-content: center; max-width: 800px; margin: 24px auto 0; padding: 20px; background: rgba(255,255,255,.1); border-radius: 12px; }
.sk-stat { text-align: center; min-width: 80px; }
.sk-stat__num { display: block; font-size: 28px; font-weight: 700; color: #fff; }
.sk-stat__label { font-size: 12px; opacity: .7; text-transform: uppercase; letter-spacing: .5px; }
@media(max-width:768px) { .sk-stats { gap: 10px; padding: 12px; } .sk-stat__num { font-size: 22px; } }

/* ===== ACCREDITATION ===== */
.sk-accred { display: flex; align-items: center; justify-content: center; gap: 24px; flex-wrap: wrap; padding: 16px 20px; max-width: 1200px; margin: 0 auto; border-top: 1px solid var(--sk-border); }
.sk-accred__item { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--sk-text-sec); font-weight: 500; }
.sk-accred__item svg { width: 28px; height: 28px; flex-shrink: 0; }
@media(max-width:768px) { .sk-accred { gap: 16px; } .sk-accred__item { font-size: 11px; } .sk-accred__item svg { width: 22px; height: 22px; } }

/* ===== STICKY SEARCH HEADER ===== */
.sk-header { background: #fff; border-bottom: 1px solid var(--sk-border); padding: 14px 0; position: sticky; top: var(--sk-header-top, 72px); z-index: 40; box-shadow: 0 2px 8px rgba(0,0,0,.04); }
.sk-header__inner { display: flex; gap: 10px; align-items: center; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
@media(max-width:768px) {
  .sk-header { top: var(--sk-header-top-m, 64px); padding: 10px 0; }
  .sk-header__inner { flex-wrap: wrap; }
}

/* ===== SEARCH INPUT ===== */
.sk-search { flex: 1; position: relative; }
.sk-search input, input.sk-search { width: 100%; border: 2px solid var(--sk-border); border-radius: 50px; padding: 16px 20px 16px 44px; font-size: 16px; font-family: inherit; outline: none; transition: all .2s; background: #fff; box-sizing: border-box; min-height: 52px; }
.sk-search input:focus, input.sk-search:focus { border-color: var(--sk-green); box-shadow: 0 0 0 3px color-mix(in srgb, var(--sk-green) 15%, transparent); }
.sk-search__icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--sk-text-sec); pointer-events: none; }
@media(max-width:768px) { .sk-search { order: 1; width: 100%; flex: unset; } }

/* Standalone search bar (state/city pages) */
.sk-search-section { max-width: 1200px; margin: 0 auto; padding: 24px 20px; }
.sk-search-bar { display: flex; gap: 10px; margin-bottom: 16px; }
.sk-search-input {
  flex: 1; padding: 13px 16px 13px 44px; border: 2px solid var(--sk-border); border-radius: 50px;
  font-size: 15px; font-family: inherit; outline: none; transition: all .2s;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2.5'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") 16px center no-repeat;
}
.sk-search-input:focus { border-color: var(--sk-green); box-shadow: 0 0 0 3px rgba(45,106,79,.12); }
@media(max-width:768px) { .sk-search-bar { flex-direction: column; } }

/* ===== FILTER PILLS (simple — state/city pages) ===== */
.sk-filter-row { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
.sk-filter-btn {
  padding: 9px 16px; border: 2px solid var(--sk-border); border-radius: 50px;
  font-size: 13px; font-weight: 600; background: #fff; cursor: pointer;
  font-family: inherit; color: var(--sk-text); transition: all .15s; white-space: nowrap; flex-shrink: 0;
}
.sk-filter-btn:hover { border-color: #ccc; background: #fafafa; }
.sk-filter-btn.active { border-color: var(--sk-green); background: var(--sk-green-light); color: var(--sk-green-dark); }

/* ===== FILTER PILLS (advanced — find-treatment with dropdowns) ===== */
.sk-pills { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; -ms-overflow-style: none; padding: 2px 4px 2px 0; }
.sk-pills::-webkit-scrollbar { display: none; }
.sk-pill {
  display: inline-flex; align-items: center; gap: 6px; padding: 10px 16px;
  border: 2px solid var(--sk-border); border-radius: 50px; font-size: 14px; font-weight: 500;
  background: #fff; cursor: pointer; white-space: nowrap; transition: all .15s; font-family: inherit; color: var(--sk-text); flex-shrink: 0;
}
.sk-pill:hover { border-color: #ccc; background: #fafafa; }
.sk-pill.active, .sk-pill.dropdown-open { border-color: var(--sk-green); background: var(--sk-green-light); color: var(--sk-green-dark); }
.sk-pill svg { width: 16px; height: 16px; opacity: .5; }
.sk-pill.active svg, .sk-pill.dropdown-open svg { opacity: 1; }
.sk-pill__badge { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 50%; background: var(--sk-green); color: #fff; font-size: 10px; font-weight: 700; margin-left: 4px; }
@media(max-width:768px) {
  .sk-pills { order: 2; width: 100%; margin-top: 6px; padding: 2px 0; gap: 6px;
    mask-image: linear-gradient(to right, #000 85%, transparent); -webkit-mask-image: linear-gradient(to right, #000 85%, transparent); }
  .sk-pills.scrolled-end { mask-image: none; -webkit-mask-image: none; }
  .sk-pill { padding: 8px 12px; font-size: 13px; gap: 4px; }
  .sk-pill svg { width: 14px; height: 14px; }
}

/* Clear filters button */
.sk-clear-btn {
  display: none; align-items: center; gap: 4px; padding: 8px 14px;
  border: 2px solid #ef4444; border-radius: 50px; font-size: 13px; font-weight: 600;
  background: #fef2f2; color: #dc2626; cursor: pointer; white-space: nowrap; font-family: inherit; flex-shrink: 0;
}
.sk-clear-btn:hover { background: #fee2e2; border-color: #dc2626; }
.sk-clear-btn.visible { display: inline-flex; }
.sk-clear-btn svg { width: 14px; height: 14px; }

/* ===== DROPDOWNS ===== */
.sk-dropdown { position: fixed; min-width: 280px; max-width: calc(100vw - 32px); background: #fff; border-radius: var(--sk-radius); box-shadow: 0 4px 24px rgba(0,0,0,.12); border: 1px solid var(--sk-border); padding: 8px; z-index: 60; display: none; max-height: 320px; overflow-y: auto; }
.sk-dropdown.open { display: block; }
.sk-dropdown__item { padding: 10px 14px; border-radius: 8px; cursor: pointer; font-size: 14px; transition: background .1s; display: flex; justify-content: space-between; align-items: center; }
.sk-dropdown__item:hover { background: var(--sk-warm); }
.sk-dropdown__item.selected { background: var(--sk-green-light); color: var(--sk-green-dark); font-weight: 600; }
.sk-dropdown__count { font-size: 12px; color: var(--sk-text-sec); font-weight: 400; }
.sk-dropdown--multi .sk-dropdown__item { padding: 8px 14px; }
.sk-dropdown--multi label { display: flex; align-items: center; gap: 8px; cursor: pointer; font-size: 14px; flex: 1; }
.sk-dropdown--multi input[type=checkbox] { width: 16px; height: 16px; accent-color: var(--sk-green); cursor: pointer; flex-shrink: 0; }
.sk-dropdown--multi .sk-dropdown__count { margin-left: auto; }
@media(max-width:768px) { .sk-dropdown { left: 8px !important; right: 8px !important; min-width: 0 !important; width: auto !important; } }

/* ===== QUICK TAGS ===== */
.sk-quick { padding: 12px 20px 4px; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; max-width: 1200px; margin: 0 auto; box-sizing: border-box; }
.sk-quick::-webkit-scrollbar { display: none; }
.sk-quick-tag { padding: 7px 14px; border-radius: 50px; font-size: 13px; font-weight: 500; background: var(--sk-warm); color: var(--sk-text); cursor: pointer; white-space: nowrap; border: 1px solid transparent; transition: all .15s; flex-shrink: 0; }
.sk-quick-tag:hover { background: #ede8e2; }
.sk-quick-tag.active { background: var(--sk-green); color: #fff; }
@media(max-width:768px) {
  .sk-quick { mask-image: linear-gradient(to right, #000 85%, transparent); -webkit-mask-image: linear-gradient(to right, #000 85%, transparent); }
  .sk-quick.scrolled-end { mask-image: none; -webkit-mask-image: none; }
}

/* ===== ACTIVE FILTER CHIPS ===== */
.sk-active-filters { display: flex; gap: 6px; flex-wrap: wrap; padding: 8px 20px 0; max-width: 1200px; margin: 0 auto; box-sizing: border-box; }
.sk-active-chip { display: inline-flex; align-items: center; gap: 4px; padding: 5px 12px; background: var(--sk-green-light); color: var(--sk-green-dark); border-radius: 50px; font-size: 12px; font-weight: 600; cursor: pointer; border: 1px solid rgba(45,106,79,.2); transition: all .15s; }
.sk-active-chip:hover { background: #c7ebd5; }
.sk-active-chip svg { width: 12px; height: 12px; }

/* ===== STATUS BAR ===== */
.sk-status { display: flex; justify-content: space-between; align-items: center; padding: 16px 20px 12px; max-width: 1200px; margin: 0 auto; position: relative; z-index: 1; box-sizing: border-box; }
.sk-status__count { font-size: 15px; color: var(--sk-text-sec); }
.sk-status__count strong { color: var(--sk-text); font-weight: 700; }
.sk-status__sort select { border: 1px solid var(--sk-border); border-radius: 8px; padding: 7px 28px 7px 10px; font-size: 13px; font-family: inherit; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='3'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 8px center no-repeat; -webkit-appearance: none; appearance: none; cursor: pointer; }
@media(max-width:768px) {
  .sk-status { flex-wrap: wrap; gap: 8px; padding: 10px 12px 8px; }
  .sk-status__count { flex: 1; }
  .sk-status__sort { margin-left: auto; }
}

/* ===== RESULT INFO (simple variant) ===== */
.sk-result-info { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; font-size: 14px; color: var(--sk-text-sec); position: relative; z-index: 1; }
.sk-result-info strong { color: var(--sk-text); }
@media(max-width:768px) { .sk-result-info { flex-wrap: wrap; gap: 8px; } }

/* ===== VIEW TOGGLE ===== */
.sk-view-toggle { display: flex; gap: 4px; background: var(--sk-warm); border-radius: 8px; padding: 3px; }
.sk-view-btn { padding: 7px 14px; border: none; border-radius: 6px; font-size: 13px; font-weight: 600; font-family: inherit; cursor: pointer; background: transparent; color: var(--sk-text-sec); transition: all .15s; display: flex; align-items: center; gap: 5px; }
.sk-view-btn.active { background: #fff; color: var(--sk-text); box-shadow: 0 1px 3px rgba(0,0,0,.1); }
.sk-view-btn svg { width: 15px; height: 15px; }
@media(max-width:768px) {
  .sk-view-toggle { order: 3; width: 100%; }
  .sk-view-btn { flex: 1; justify-content: center; }
}

/* ===== CARDS GRID ===== */
.sk-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 20px; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
@media(max-width:768px) { .sk-grid { padding: 0 12px; gap: 16px; } }
.sk-card {
  display: flex; flex-direction: column; background: #fff; border: 1px solid var(--sk-border);
  border-radius: var(--sk-radius); overflow: hidden; text-decoration: none; color: inherit;
  transition: all .2s; cursor: pointer; position: relative;
}
.sk-card:hover { box-shadow: var(--sk-shadow); transform: translateY(-2px); border-color: #d0ccc7; }
.sk-card__img { width: 100%; height: 180px; object-fit: cover; background: var(--sk-warm); display: block; }
.sk-card__body { padding: 16px 18px 18px; flex: 1; display: flex; flex-direction: column; }
.sk-card__top { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 6px; }
.sk-card__name { font-size: 17px; font-weight: 700; color: var(--sk-text); margin: 0; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.sk-card__verified { flex-shrink: 0; margin-left: 8px; margin-top: 2px; }
.sk-card__loc { display: flex; align-items: center; gap: 5px; font-size: 13.5px; color: var(--sk-text-sec); margin: 0 0 10px; }
.sk-card__loc svg { width: 14px; height: 14px; flex-shrink: 0; color: var(--sk-green); }
.sk-card__tags { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: auto; }
.sk-card__footer { display: flex; justify-content: space-between; align-items: center; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--sk-border); }
.sk-card__phone { font-size: 13px; font-weight: 600; color: var(--sk-green); display: flex; align-items: center; gap: 5px; }
.sk-card__phone svg { width: 14px; height: 14px; }
.sk-card__cta { font-size: 13px; font-weight: 600; color: var(--sk-green); display: flex; align-items: center; gap: 4px; }
.sk-card__cta svg { width: 14px; height: 14px; transition: transform .2s; }
.sk-card:hover .sk-card__cta svg { transform: translateX(3px); }

/* Compact card (no image) */
.sk-card--compact { flex-direction: row; }
.sk-card--compact .sk-card__body { padding: 14px 16px; }

@media(max-width:768px) {
  .sk-grid { grid-template-columns: 1fr; }
  .sk-card { flex-direction: row; }
  .sk-card__img { width: 120px; height: auto; min-height: 140px; flex-shrink: 0; }
  .sk-card__body { padding: 12px 14px; }
  .sk-card__name { font-size: 15px; }
  .sk-card__footer { flex-direction: column; align-items: flex-start; gap: 6px; padding-top: 8px; }
}
@media(max-width:480px) { .sk-card__img { width: 100px; min-height: 120px; } }

/* ===== TAGS ===== */
.sk-tag { font-size: 12px; font-weight: 600; padding: 4px 10px; border-radius: 6px; letter-spacing: .01em; }
.sk-tag--o { background: #ecfdf5; color: #065f46; }
.sk-tag--r { background: #ede9fe; color: #5b21b6; }
.sk-tag--d { background: #fff7ed; color: #9a3412; }
.sk-tag--c { background: #eff6ff; color: #1e40af; }
.sk-tag--s { background: #fdf2f8; color: #9d174d; }

/* ===== LOAD MORE ===== */
.sk-load { text-align: center; padding: 28px 0 40px; }
.sk-load button { padding: 14px 36px; background: var(--sk-green); color: #fff; border: none; border-radius: 50px; font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; transition: all .2s; box-shadow: 0 2px 8px rgba(45,106,79,.2); }
.sk-load button:hover { background: var(--sk-green-dark); box-shadow: 0 4px 16px rgba(45,106,79,.3); transform: translateY(-1px); }
.sk-load__info { font-size: 13px; color: var(--sk-text-sec); margin-top: 10px; }

/* Simple show more (state/city) */
.sk-show-more { display: block; margin: 20px auto; padding: 12px 32px; border: 2px solid var(--sk-green); border-radius: 50px; background: #fff; color: var(--sk-green); font-size: 14px; font-weight: 700; cursor: pointer; font-family: inherit; }
.sk-show-more:hover { background: var(--sk-green); color: #fff; }

/* ===== EMPTY STATE ===== */
.sk-empty { text-align: center; padding: 60px 20px; display: none; max-width: 1200px; margin: 0 auto; }
.sk-empty svg { margin-bottom: 16px; color: var(--sk-text-sec); opacity: .4; }
.sk-empty h3 { font-size: 20px; margin: 0 0 8px; color: var(--sk-text); }
.sk-empty p { color: var(--sk-text-sec); margin: 0; }

/* ===== SKELETON ===== */
.sk-skeleton { background: var(--sk-warm); border-radius: var(--sk-radius); overflow: hidden; animation: skPulse 1.5s ease-in-out infinite; }
.sk-skeleton--img { height: 180px; }
.sk-skeleton--text { height: 16px; border-radius: 4px; margin: 8px 18px; }
.sk-skeleton--text-short { width: 60%; }
@keyframes skPulse { 0%,100% { opacity: 1; } 50% { opacity: .5; } }

/* ===== MAP ===== */
#skMap { display: none; height: 500px; border-radius: var(--sk-radius); border: 1px solid var(--sk-border); margin: 0 auto 20px; max-width: 1200px; overflow: hidden; z-index: 1; padding: 0 20px; box-sizing: content-box; }
#skMap.visible { display: block; }
@media(max-width:768px) { #skMap { height: 65vh; padding: 0 12px; } }
.sk-map-popup { font-family: 'DM Sans', sans-serif; font-size: 13px; line-height: 1.4; }
.sk-map-popup strong { font-size: 14px; color: var(--sk-text); }
.sk-map-popup a { color: var(--sk-green); font-weight: 600; text-decoration: none; }
.sk-map-popup a:hover { text-decoration: underline; }
@media(max-width:768px) {
  #skMap { height: 360px; border-radius: 10px; }
  .map-active .sk-quick, .map-active .sk-accred, .map-active .sk-page-title p { display: none; }
  .map-active .sk-page-title h1 { font-size: 18px; margin: 0; }
  .map-active .sk-page-title { padding: 8px 16px 4px; }
  .map-active #skMap { height: 65vh; min-height: 400px; }
  .map-active .sk-pills { margin-top: 0; }
  .map-active .sk-hero p, .map-active .sk-accred { display: none; }
  .map-active .sk-hero h1 { font-size: 18px; margin: 0; }
  .map-active .sk-hero { padding: calc(72px + 12px) 16px 12px; }
}

/* ===== QUICK ANSWER BOX ===== */
.sk-qa { background: var(--sk-green-light); border-left: 4px solid var(--sk-green); border-radius: 0 var(--sk-radius) var(--sk-radius) 0; padding: 20px 24px; margin: 24px auto; max-width: 1200px; }
.sk-qa__q { font-weight: 700; font-size: 17px; margin: 0 0 8px; color: var(--sk-green-dark); }
.sk-qa__a { margin: 0; line-height: 1.65; color: var(--sk-text); }

/* ===== CITIES GRID ===== */
.sk-cities { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-bottom: 32px; }
.sk-city-link { display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; background: #fff; border: 1px solid var(--sk-border); border-radius: 10px; text-decoration: none; color: var(--sk-text); font-weight: 500; font-size: 14px; transition: all .15s; }
.sk-city-link:hover { border-color: var(--sk-green); background: var(--sk-green-light); color: var(--sk-green-dark); }
.sk-city-count { background: var(--sk-warm); padding: 2px 8px; border-radius: 50px; font-size: 12px; font-weight: 600; color: var(--sk-text-sec); }
@media(max-width:768px) { .sk-cities { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); } }

/* ===== STATES GRID ===== */
.sk-states-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px; margin-top: 20px; padding: 0 20px; max-width: 1200px; margin-left: auto; margin-right: auto; box-sizing: border-box; }
.sk-state-card { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 16px 12px; background: #fff; border: 1px solid var(--sk-border); border-radius: 10px; text-decoration: none; color: var(--sk-text); transition: all .15s; text-align: center; }
.sk-state-card:hover { border-color: var(--sk-green); background: var(--sk-green-light); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,.08); }
.sk-state-abbr { font-size: 20px; font-weight: 700; color: var(--sk-green); }
.sk-state-name { font-size: 14px; font-weight: 600; color: var(--sk-text); }
.sk-state-count { font-size: 12px; color: var(--sk-text-sec); }
.sk-state-link { display: flex; align-items: center; gap: 8px; padding: 12px 16px; background: #fff; border: 1px solid var(--sk-border); border-radius: 10px; text-decoration: none; color: var(--sk-text); font-weight: 500; font-size: 14px; transition: all .15s; }
.sk-state-link:hover { border-color: var(--sk-green); background: var(--sk-green-light); color: var(--sk-green-dark); }
.sk-state-link svg { width: 16px; height: 16px; color: var(--sk-green); flex-shrink: 0; }
@media(max-width:768px) { .sk-states-grid { grid-template-columns: repeat(2, 1fr); } }

/* ===== SEO CONTENT ===== */
.sk-content { max-width: 900px; margin: 0 auto; padding: 48px 20px; }
.sk-content h2 { font-family: 'Playfair Display', serif; font-size: 24px; margin: 32px 0 12px; color: var(--sk-text); }
.sk-content h2:first-child { margin-top: 0; }
.sk-content p { line-height: 1.75; color: var(--sk-text-sec); margin: 0 0 16px; font-size: 15px; }
.sk-content ul { margin: 0 0 16px; padding-left: 20px; color: var(--sk-text-sec); line-height: 1.8; }
@media(max-width:768px) { .sk-content { padding: 32px 16px; } }

/* ===== SECTION (generic) ===== */
.sk-section { padding: 48px 20px; max-width: 1200px; margin: 0 auto; }
.sk-section--alt { background: var(--sk-warm); }
.sk-section h2 { font-family: 'Playfair Display', serif; font-size: 28px; margin: 0 0 16px; color: var(--sk-text); }
.sk-section p { line-height: 1.7; color: var(--sk-text-sec); margin: 0 0 16px; }
@media(max-width:768px) { .sk-section h2 { font-size: 22px; } }

/* ===== FAQ ===== */
.sk-faq { max-width: 900px; margin: 0 auto; padding: 0 20px 48px; }
.sk-faq h2 { font-family: 'Playfair Display', serif; font-size: 24px; margin: 0 0 20px; text-align: center; }
.sk-faq details { border: 1px solid var(--sk-border); border-radius: 10px; margin-bottom: 8px; background: #fff; overflow: hidden; }
.sk-faq summary { padding: 16px 20px; font-weight: 600; font-size: 15px; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.sk-faq summary::-webkit-details-marker { display: none; }
.sk-faq summary::after { content: '+'; font-size: 20px; font-weight: 300; color: var(--sk-text-sec); transition: transform .2s; }
.sk-faq details[open] summary::after { content: '\2212'; }
.sk-faq .sk-faq__body { padding: 0 20px 16px; line-height: 1.7; color: var(--sk-text-sec); font-size: 14.5px; }

/* ===== HELP FORM ===== */
.sk-help-form { background: linear-gradient(135deg, var(--sk-green-dark) 0%, var(--sk-green) 100%); border-radius: var(--sk-radius); padding: 36px 32px; margin: 32px auto; max-width: 1200px; color: #fff; text-align: center; }
.sk-help-form h2 { font-family: 'Playfair Display', serif; font-size: 26px; margin: 0 0 8px; color: #fff; }
.sk-help-form p { opacity: .85; margin: 0 0 20px; font-size: 15px; }
.sk-help-form__row { display: flex; gap: 10px; max-width: 600px; margin: 0 auto; flex-wrap: wrap; }
.sk-help-form__input { flex: 1; min-width: 180px; padding: 13px 16px; border: 2px solid rgba(255,255,255,.3); border-radius: 50px; background: rgba(255,255,255,.15); color: #fff; font-size: 15px; font-family: inherit; outline: none; transition: border .2s; }
.sk-help-form__input::placeholder { color: rgba(255,255,255,.6); }
.sk-help-form__input:focus { border-color: #fff; background: rgba(255,255,255,.2); }
.sk-help-form__btn { padding: 13px 28px; border: none; border-radius: 50px; background: #fff; color: var(--sk-green-dark); font-size: 15px; font-weight: 700; font-family: inherit; cursor: pointer; transition: all .15s; white-space: nowrap; }
.sk-help-form__btn:hover { background: var(--sk-green-light); transform: scale(1.02); }
.sk-help-form__note { font-size: 12px; opacity: .6; margin-top: 12px; }
@media(max-width:768px) { .sk-help-form { padding: 28px 20px; margin: 24px 16px; } .sk-help-form h2 { font-size: 22px; } .sk-help-form__row { flex-direction: column; } .sk-help-form__input { min-width: 0; } }

/* ===== CTA BLOCK ===== */
.sk-cta-block { background: linear-gradient(135deg, var(--sk-green-dark), var(--sk-green)); border-radius: var(--sk-radius); padding: 40px 32px; text-align: center; margin: 40px auto; max-width: 1200px; color: #fff; }
.sk-cta-block h2 { font-family: 'Playfair Display', serif; font-size: 28px; margin: 0 0 12px; color: #fff; }
.sk-cta-block p { margin: 0 0 20px; opacity: .85; font-size: 15px; }
.sk-cta-block a { display: inline-flex; align-items: center; gap: 8px; background: #fff; color: var(--sk-green-dark); padding: 14px 28px; border-radius: 50px; font-weight: 700; font-size: 16px; text-decoration: none; transition: all .2s; box-shadow: 0 4px 12px rgba(0,0,0,.15); }
.sk-cta-block a:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,.2); }
@media(max-width:768px) { .sk-cta-block { padding: 28px 20px; margin: 24px 16px; } }

/* Full-width CTA variant */
.sk-cta { background: linear-gradient(135deg, var(--sk-green-dark), var(--sk-green)); text-align: center; padding: 48px 20px; color: #fff; }
.sk-cta h2 { font-family: 'Playfair Display', serif; font-size: 28px; margin: 0 0 12px; }
.sk-cta p { opacity: .85; margin: 0 auto 20px; max-width: 500px; }
.sk-cta a { display: inline-block; padding: 14px 32px; background: #fff; color: var(--sk-green-dark); border-radius: 50px; font-weight: 700; text-decoration: none; font-size: 16px; }
.sk-cta a:hover { transform: scale(1.03); }

/* ===== SOURCES ===== */
.sk-sources { margin-top: 20px; }
.sk-sources a { display: block; color: var(--sk-green); text-decoration: none; font-size: 14px; padding: 6px 0; border-bottom: 1px solid var(--sk-border); }
.sk-sources a:hover { color: var(--sk-green-dark); }

/* ===== COMPARE BAR ===== */
.sk-compare-bar { display: none; position: fixed; bottom: 0; left: 0; right: 0; background: var(--sk-green-dark); color: #fff; padding: 12px 20px; z-index: 100; align-items: center; justify-content: center; gap: 12px; font-size: 14px; font-weight: 600; box-shadow: 0 -4px 20px rgba(0,0,0,.15); }
.sk-compare-bar.visible { display: flex; }
.sk-compare-bar button { padding: 10px 20px; border: 2px solid #fff; border-radius: 50px; background: transparent; color: #fff; font-size: 14px; font-weight: 700; cursor: pointer; font-family: inherit; transition: all .15s; }
.sk-compare-bar button:hover { background: #fff; color: var(--sk-green-dark); }
.sk-compare-bar .sk-compare-clear { border-color: rgba(255,255,255,.4); font-weight: 500; font-size: 13px; }
.sk-card__compare { position: absolute; top: 10px; right: 10px; width: 32px; height: 32px; border-radius: 8px; background: rgba(255,255,255,.92); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 2; transition: all .2s; box-shadow: 0 1px 4px rgba(0,0,0,.1); color: var(--sk-text-sec); }
.sk-card__compare:hover { background: #fff; color: var(--sk-green); box-shadow: 0 2px 8px rgba(0,0,0,.15); transform: scale(1.1); }
.sk-card__compare.selected { background: var(--sk-green); color: #fff; box-shadow: 0 2px 8px rgba(45,106,79,.3); }
.sk-card__compare.selected svg { fill: currentColor; }
@media(max-width:768px) { .sk-compare-bar { bottom: 52px; padding: 10px 16px; font-size: 13px; } }

/* ===== TRUST BAR (injected by JS) ===== */
.sk-trust { display: flex; align-items: center; justify-content: center; gap: 32px; flex-wrap: wrap; padding: 16px 20px; max-width: 1200px; margin: 8px auto 0; background: var(--sk-warm); border-radius: 10px; }
.sk-trust__item { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--sk-text); font-weight: 600; white-space: nowrap; }
.sk-trust__num { font-size: 22px; font-weight: 800; color: var(--sk-green); letter-spacing: -.5px; }
@media(max-width:768px) { .sk-trust { gap: 16px 24px; padding: 14px 16px; } .sk-trust__num { font-size: 18px; } .sk-trust__item { font-size: 12px; } }

/* ===== INSURANCE LOGOS ===== */
.sk-insurance { max-width: 1200px; margin: 0 auto; padding: 24px 20px 8px; text-align: center; }
.sk-insurance__title { font-size: 13px; font-weight: 600; color: var(--sk-text-sec); text-transform: uppercase; letter-spacing: .5px; margin-bottom: 16px; }
.sk-insurance__logos { display: flex; align-items: center; justify-content: center; gap: 28px; flex-wrap: wrap; opacity: .75; filter: grayscale(30%); transition: all .3s; }
.sk-insurance__logos:hover { opacity: 1; filter: grayscale(0%); }
.sk-insurance__logos img { height: 42px; width: auto; max-width: 150px; object-fit: contain; }
@media(max-width:768px) { .sk-insurance__logos { gap: 16px; } .sk-insurance__logos img { height: 28px; max-width: 100px; } }

/* ===== STAR RATING (on cards) ===== */
.sk-card__rating { display: flex; align-items: center; gap: 5px; margin-bottom: 8px; }
.sk-card__stars { display: flex; gap: 1px; }
.sk-card__stars svg { width: 16px; height: 16px; }
.sk-card__stars .star-full { fill: #f59e0b; stroke: #f59e0b; }
.sk-card__stars .star-half { fill: url(#halfGrad); stroke: #f59e0b; }
.sk-card__stars .star-empty { fill: #e5e7eb; stroke: #e5e7eb; }
.sk-card__rating-text { font-size: 13px; color: var(--sk-text-sec); font-weight: 600; }

/* ===== RECOVERY RESOURCES ===== */
.sk-resources { max-width: 1200px; margin: 0 auto; padding: 48px 20px; }
.sk-resources h2 { font-family: 'Playfair Display', serif; font-size: 26px; margin: 0 0 8px; color: var(--sk-text); text-align: center; }
.sk-resources > p { text-align: center; color: var(--sk-text-sec); margin: 0 0 28px; font-size: 15px; }
.sk-resources__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.sk-resource-card { display: flex; gap: 14px; align-items: flex-start; padding: 20px; background: #fff; border: 1px solid var(--sk-border); border-radius: var(--sk-radius); text-decoration: none; color: inherit; transition: all .2s; }
.sk-resource-card:hover { box-shadow: var(--sk-shadow); transform: translateY(-2px); border-color: #d0ccc7; }
.sk-resource-card__icon { width: 44px; height: 44px; border-radius: 12px; background: var(--sk-green-light); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.sk-resource-card__icon svg { width: 22px; height: 22px; stroke: var(--sk-green); fill: none; stroke-width: 2; }
.sk-resource-card__text h3 { font-size: 15px; font-weight: 700; margin: 0 0 4px; color: var(--sk-text); }
.sk-resource-card__text p { font-size: 13px; margin: 0; color: var(--sk-text-sec); line-height: 1.5; }
@media(max-width:768px) { .sk-resources__grid { grid-template-columns: 1fr; } }

/* ===== HOW IT WORKS ===== */
.sk-steps { max-width: 1200px; margin: 0 auto; padding: 48px 20px; text-align: center; }
.sk-steps h2 { font-family: 'Playfair Display', serif; font-size: 26px; margin: 0 0 8px; color: var(--sk-text); }
.sk-steps > p { color: var(--sk-text-sec); margin: 0 0 32px; font-size: 15px; }
.sk-steps__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 900px; margin: 0 auto; position: relative; }
.sk-steps__grid::before { content: ''; position: absolute; top: 36px; left: 15%; right: 15%; height: 3px; background: linear-gradient(to right, var(--sk-green-light), var(--sk-green), var(--sk-green-light)); z-index: 0; border-radius: 2px; }
.sk-step { position: relative; z-index: 1; }
.sk-step__num { width: 72px; height: 72px; border-radius: 50%; background: var(--sk-green-light); display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; border: 3px solid #fff; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.sk-step__num svg { width: 32px; height: 32px; stroke: var(--sk-green); fill: none; stroke-width: 2; }
.sk-step h3 { font-size: 16px; font-weight: 700; margin: 0 0 6px; color: var(--sk-text); }
.sk-step p { font-size: 13px; color: var(--sk-text-sec); margin: 0; line-height: 1.5; }
@media(max-width:768px) { .sk-steps__grid { grid-template-columns: 1fr; gap: 20px; max-width: 320px; } .sk-steps__grid::before { display: none; } .sk-step { display: flex; gap: 16px; text-align: left; } .sk-step__num { width: 56px; height: 56px; flex-shrink: 0; margin: 0; } .sk-step__num svg { width: 26px; height: 26px; } }

/* ===== TESTIMONIALS ===== */
.sk-testimonials { max-width: 1200px; margin: 0 auto; padding: 48px 20px; }
.sk-testimonials h2 { font-family: 'Playfair Display', serif; font-size: 26px; margin: 0 0 28px; color: var(--sk-text); text-align: center; }
.sk-testimonials__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; }
.sk-testimonial { background: #fff; border: 1px solid var(--sk-border); border-radius: var(--sk-radius); padding: 24px; position: relative; box-shadow: 0 2px 12px rgba(0,0,0,.06); transition: transform .2s, box-shadow .2s; }
.sk-testimonial:hover { transform: translateY(-3px); box-shadow: 0 6px 20px rgba(0,0,0,.1); }
.sk-testimonial::before { content: '\201C'; font-size: 48px; font-family: Georgia, serif; color: var(--sk-green-light); position: absolute; top: 12px; left: 20px; line-height: 1; }
.sk-testimonial__text { font-size: 14px; line-height: 1.7; color: var(--sk-text-sec); margin: 0 0 16px; padding-top: 20px; font-style: italic; }
.sk-testimonial__author { display: flex; align-items: center; gap: 10px; }
.sk-testimonial__avatar { width: 40px; height: 40px; border-radius: 50%; background: var(--sk-green-light); display: flex; align-items: center; justify-content: center; font-weight: 700; color: var(--sk-green); font-size: 16px; flex-shrink: 0; }
.sk-testimonial__name { font-size: 14px; font-weight: 700; color: var(--sk-text); }
.sk-testimonial__role { font-size: 12px; color: var(--sk-text-sec); }
.sk-testimonial__stars { display: flex; gap: 2px; margin-bottom: 4px; }
.sk-testimonial__stars svg { width: 16px; height: 16px; fill: #f59e0b; filter: drop-shadow(0 1px 1px rgba(245,158,11,.3)); }
@media(max-width:768px) { .sk-testimonials__grid { grid-template-columns: 1fr; } }

/* ===== RECENTLY VIEWED ===== */
.sk-recent { max-width: 1200px; margin: 0 auto; padding: 0 20px 32px; }
.sk-recent h3 { font-size: 16px; font-weight: 700; color: var(--sk-text); margin: 0 0 12px; display: flex; align-items: center; gap: 8px; }
.sk-recent h3 svg { width: 18px; height: 18px; color: var(--sk-text-sec); }
.sk-recent__list { display: flex; gap: 10px; overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; }
.sk-recent__list::-webkit-scrollbar { display: none; }
.sk-recent__item { display: flex; align-items: center; gap: 8px; padding: 10px 16px; background: #fff; border: 1px solid var(--sk-border); border-radius: 10px; text-decoration: none; color: var(--sk-text); font-size: 13px; font-weight: 500; white-space: nowrap; flex-shrink: 0; transition: all .15s; }
.sk-recent__item:hover { border-color: var(--sk-green); background: var(--sk-green-light); }
.sk-recent__item svg { width: 14px; height: 14px; color: var(--sk-green); flex-shrink: 0; }

/* ===== MATCHING WIZARD ===== */
.sk-wizard { max-width: 700px; margin: 0 auto; padding: 0 20px 32px; }
.sk-wizard__card { background: #fff; border: 2px solid var(--sk-border); border-radius: var(--sk-radius); padding: 32px; text-align: center; position: relative; overflow: hidden; }
.sk-wizard__progress { display: flex; gap: 4px; margin-bottom: 24px; }
.sk-wizard__progress-bar { flex: 1; height: 4px; border-radius: 2px; background: var(--sk-border); transition: background .3s; }
.sk-wizard__progress-bar.active { background: var(--sk-green); }
.sk-wizard__step { display: none; }
.sk-wizard__step.active { display: block; }
.sk-wizard__icon { width: 56px; height: 56px; border-radius: 50%; background: var(--sk-green-light); display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; }
.sk-wizard__icon svg { width: 28px; height: 28px; stroke: var(--sk-green); fill: none; stroke-width: 2; }
.sk-wizard__q { font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 700; margin: 0 0 8px; color: var(--sk-text); }
.sk-wizard__sub { font-size: 14px; color: var(--sk-text-sec); margin: 0 0 24px; }
.sk-wizard__options { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.sk-wizard__opt { padding: 14px 16px; border: 2px solid var(--sk-border); border-radius: 12px; background: #fff; cursor: pointer; font-size: 14px; font-weight: 600; font-family: inherit; color: var(--sk-text); transition: all .15s; text-align: left; display: flex; align-items: center; gap: 10px; }
.sk-wizard__opt:hover { border-color: var(--sk-green); background: var(--sk-green-light); }
.sk-wizard__opt.selected { border-color: var(--sk-green); background: var(--sk-green-light); color: var(--sk-green-dark); }
.sk-wizard__opt-icon { width: 32px; height: 32px; border-radius: 8px; background: var(--sk-warm); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.sk-wizard__opt-icon svg { width: 18px; height: 18px; stroke: var(--sk-green); fill: none; stroke-width: 2; }
.sk-wizard__result { padding: 24px; background: var(--sk-green-light); border-radius: 12px; margin-top: 16px; }
.sk-wizard__result h3 { font-size: 20px; margin: 0 0 8px; color: var(--sk-green-dark); }
.sk-wizard__result p { font-size: 14px; color: var(--sk-text); margin: 0 0 16px; }
.sk-wizard__result-btn { display: inline-flex; align-items: center; gap: 8px; padding: 12px 24px; background: var(--sk-green); color: #fff; border: none; border-radius: 50px; font-size: 15px; font-weight: 700; font-family: inherit; cursor: pointer; text-decoration: none; transition: all .15s; }
.sk-wizard__result-btn:hover { background: var(--sk-green-dark); }
.sk-wizard__back { margin-top: 16px; background: none; border: none; color: var(--sk-text-sec); font-size: 13px; cursor: pointer; font-family: inherit; }
.sk-wizard__back:hover { color: var(--sk-text); }
@media(max-width:768px) { .sk-wizard__card { padding: 24px 20px; } .sk-wizard__q { font-size: 18px; } .sk-wizard__options { grid-template-columns: 1fr; } }

/* ===== SSR/JS TOGGLE ===== */
#skSsr { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 20px; }
.js-loaded #skSsr { display: none; }
#skGrid { display: none; }
.js-loaded #skGrid { display: grid; }
@media(max-width:768px) { #skSsr { grid-template-columns: 1fr; } #skSsr .sk-card { flex-direction: row; } #skSsr .sk-card__img { width: 120px; height: auto; min-height: 140px; flex-shrink: 0; } }

/* === FIXES v2 === */
/* Breadcrumb inside hero */
.sk-hero .sk-bread { padding: 0; margin: 0 0 16px; color: rgba(255,255,255,.7); }
.sk-hero .sk-bread a { color: rgba(255,255,255,.9); }
.sk-hero .sk-bread span { color: rgba(255,255,255,.6); }

/* Hero font — inherit from site, not hardcoded Playfair */
.sk-hero h1 { font-family: inherit; }
.sk-page-title h1 { font-family: inherit; }

/* Search input when used directly (not wrapped) */
.sk-search-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; max-width: 1200px; margin: 0 auto; padding: 12px 20px; }
@media(max-width:768px) { .sk-search-row { flex-direction: column; padding: 8px 16px; } }

/* Trust bar numbers — use brand color not hardcoded green */
.sk-trust strong { color: var(--sk-green); }

/* Fix tag "M" display — hide single-char tags */
.sk-tag:empty, .sk-card-tags .sk-tag { text-transform: capitalize; }

/* Hero stats bar */
.sk-hero-stats { display: flex; gap: 24px; justify-content: center; margin-top: 10px; font-size: 15px; opacity: .9; }
.sk-hero-stats strong { font-size: 18px; }
@media(max-width:768px) { .sk-hero-stats { gap: 16px; font-size: 13px; } .sk-hero-stats strong { font-size: 16px; } }

/* City grid */
.sk-city-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; margin-top: 16px; }

/* Search icon inside input */
.sk-search-row { position: relative; }
.sk-search-icon { position: absolute; left: 36px; top: 50%; transform: translateY(-50%); color: #94a3b8; pointer-events: none; z-index: 1; }
@media(max-width:768px) { .sk-search-icon { left: 28px; } }

/* Filter pill icons */
.sk-pill svg.sk-pill-icon { width: 14px; height: 14px; margin-right: 4px; flex-shrink: 0; }

/* Articles section */
.sk-articles { max-width: 1200px; margin: 0 auto; padding: 32px 20px; }
.sk-articles h2 { font-size: 24px; font-weight: 700; margin: 0 0 20px; }
.sk-articles-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.sk-article-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--sk-border); border-radius: var(--sk-radius); overflow: hidden; text-decoration: none; color: var(--sk-text); transition: all .2s; }
.sk-article-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.1); transform: translateY(-2px); }
.sk-article-card img { width: 100%; height: 180px; object-fit: cover; }
.sk-article-card__body { padding: 16px; }
.sk-article-card__cat { font-size: 11px; text-transform: uppercase; letter-spacing: .5px; color: var(--sk-green); font-weight: 600; margin-bottom: 6px; }
.sk-article-card__title { font-size: 16px; font-weight: 600; line-height: 1.35; margin: 0 0 8px; }
.sk-article-card__excerpt { font-size: 13px; color: var(--sk-text-sec); line-height: 1.5; margin: 0; }
.sk-article-card__meta { font-size: 12px; color: var(--sk-text-sec); margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--sk-border); }
@media(max-width:768px) { .sk-articles-grid { grid-template-columns: 1fr; } .sk-article-card img { height: 160px; } }

/* ===== COMPAT: Alternate class names used by some templates ===== */

/* .sk-compare-btn (alt for .sk-card__compare) */
.sk-compare-btn { position: absolute; top: 10px; right: 10px; width: 32px; height: 32px; border-radius: 8px; background: rgba(255,255,255,.92); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 2; transition: all .2s; box-shadow: 0 1px 4px rgba(0,0,0,.1); color: var(--sk-text-sec); font-size: 0; padding: 0; }
.sk-compare-btn:hover { background: #fff; color: var(--sk-green); box-shadow: 0 2px 8px rgba(0,0,0,.15); }
.sk-compare-btn.selected { background: var(--sk-green); color: #fff; }

/* select.sk-sort (alt for .sk-status__sort select) */
select.sk-sort { border: 1px solid var(--sk-border); border-radius: 8px; padding: 7px 28px 7px 10px; font-size: 13px; font-family: inherit; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='3'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 8px center no-repeat; -webkit-appearance: none; appearance: none; cursor: pointer; color: var(--sk-text); }

/* .sk-status-right wrapper */
.sk-status-right { display: flex; align-items: center; gap: 10px; }
@media(max-width:768px) { .sk-status-right { gap: 8px; } }

/* .sk-view-active (alt for .sk-view-btn.active) */
.sk-view-btn.sk-view-active { background: #fff; color: var(--sk-text); box-shadow: 0 1px 3px rgba(0,0,0,.1); }

/* #skCount bare span — status count padding fix */
.sk-status > #skCount { font-size: 15px; color: var(--sk-text-sec); }
.sk-status > #skCount strong { color: var(--sk-text); font-weight: 700; }

/* .sk-card-img, .sk-card-body, .sk-card-rating etc. (alt flat names) */
.sk-card-img { position: relative; overflow: hidden; }
.sk-card-img img { width: 100%; height: 180px; object-fit: cover; background: var(--sk-warm); display: block; }
.sk-card-body { padding: 16px 18px 18px; flex: 1; display: flex; flex-direction: column; }
.sk-card-body h3 { font-size: 17px; font-weight: 700; color: var(--sk-text); margin: 0 0 4px; line-height: 1.3; }
.sk-card-body h3 a { color: inherit; text-decoration: none; }
.sk-card-body h3 a:hover { color: var(--sk-green); }
.sk-card-loc { display: flex; align-items: center; gap: 5px; font-size: 13.5px; color: var(--sk-text-sec); margin: 0 0 10px; }
.sk-card-loc svg { width: 14px; height: 14px; flex-shrink: 0; color: var(--sk-green); }
.sk-card-tags { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: auto; }
.sk-card-actions { display: flex; justify-content: space-between; align-items: center; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--sk-border); }
.sk-card-phone { font-size: 13px; font-weight: 600; color: var(--sk-green); text-decoration: none; display: flex; align-items: center; gap: 5px; }
.sk-card-detail { font-size: 13px; font-weight: 600; color: var(--sk-green); text-decoration: none; }
.sk-card-detail:hover { color: var(--sk-green-dark); }
.sk-card-rating { display: flex; align-items: center; gap: 3px; margin-bottom: 6px; font-size: 14px; color: var(--sk-text-sec); }
.sk-card-rating .sk-star { width: 16px; height: 16px; color: #F59E0B; }
.sk-card-rating .sk-star-empty { color: #E2E8F0; }
.sk-card-rating span { font-weight: 700; color: var(--sk-text); margin-left: 2px; }
.sk-card-rating small { color: var(--sk-text-sec); }

/* .sk-load-more / .sk-load-btn (alt names) */
.sk-load-more { text-align: center; padding: 28px 0 40px; }
.sk-load-btn { padding: 14px 36px; background: var(--sk-green); color: #fff; border: none; border-radius: 50px; font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; transition: all .2s; box-shadow: 0 2px 8px rgba(45,106,79,.2); }
.sk-load-btn:hover { background: var(--sk-green-dark); box-shadow: 0 4px 16px rgba(45,106,79,.3); transform: translateY(-1px); }

/* .sk-clear-all button in empty state */
.sk-clear-all { background: none; border: none; color: var(--sk-green); font-weight: 600; cursor: pointer; text-decoration: underline; font-size: inherit; font-family: inherit; }

/* Mobile card compat */
@media(max-width:768px) {
  .sk-card-img img { height: auto; min-height: 140px; }
  .sk-card-body h3 { font-size: 15px; }
  .sk-card-actions { flex-direction: column; align-items: flex-start; gap: 6px; padding-top: 8px; }
  .sk-status { padding: 10px 12px 8px; }
}

/* FAQ button-based (auto-generated by search-kit.js) */
.sk-faq__item { border: 1px solid var(--sk-border, #e5e7eb); border-radius: 10px; margin-bottom: 8px; background: #fff; overflow: hidden; }
.sk-faq__q { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 16px 20px; font-weight: 600; font-size: 15px; cursor: pointer; border: none; background: none; text-align: left; gap: 12px; font-family: inherit; color: inherit; }
.sk-faq__q svg { width: 20px; height: 20px; min-width: 20px; transition: transform .2s; stroke: var(--sk-text-sec, #6b7280); }
.sk-faq__item.open .sk-faq__q svg { transform: rotate(180deg); }
.sk-faq__a { display: none; padding: 0 20px 16px; line-height: 1.7; color: var(--sk-text-sec, #6b7280); font-size: 14.5px; }
.sk-faq__item.open .sk-faq__a { display: block; }

/* ===== FACILITY DETAIL ENRICHMENT ===== */
.fd-trust-banner { max-width:1100px; margin:0 auto; padding:8px 20px; }
.fd-trust-banner__inner { display:flex; flex-wrap:wrap; gap:16px; justify-content:center; padding:12px 20px; background:#F0FDF4; border:1px solid #BBF7D0; border-radius:10px; }
.fd-trust-banner__item { display:flex; align-items:center; gap:6px; font-size:13px; font-weight:600; color:#065F46; white-space:nowrap; }
@media(max-width:768px){ .fd-trust-banner__inner { gap:8px; padding:10px 14px; } .fd-trust-banner__item { font-size:12px; } }

.fd-programs__grid { display:grid; grid-template-columns:1fr; gap:10px; }
.fd-program-card { display:flex; gap:14px; padding:16px; background:#F8FAFC; border:1px solid #E2E8F0; border-radius:10px; align-items:flex-start; }
.fd-program-card__icon { min-width:40px; height:40px; display:flex; align-items:center; justify-content:center; background:#ECFEFF; border-radius:8px; color:var(--sk-accent, #0891B2); }
.fd-program-card__icon svg { stroke:var(--sk-accent, #0891B2); }
.fd-program-card__name { font-size:15px; font-weight:600; margin:0 0 4px; }
.fd-program-card__desc { font-size:13.5px; color:#64748B; line-height:1.6; margin:0; }
.fd-program-card--cta { background:#F0FDFA; border-color:#99F6E4; }
.fd-program-card--cta a { color:var(--sk-accent, #0891B2); font-weight:600; }

.fd-expect__steps { display:grid; gap:12px; }
.fd-expect__step { display:flex; gap:14px; align-items:flex-start; }
.fd-expect__num { min-width:36px; height:36px; display:flex; align-items:center; justify-content:center; background:var(--sk-accent, #0891B2); color:#fff; border-radius:50%; font-weight:700; font-size:15px; }
.fd-expect__step h3 { font-size:15px; margin:0 0 4px; }
.fd-expect__step p { font-size:13.5px; color:#64748B; line-height:1.6; margin:0; }

.fd-faq__item { border:1px solid #E2E8F0; border-radius:10px; margin-bottom:8px; background:#fff; overflow:hidden; }
.fd-faq__q { display:flex; justify-content:space-between; align-items:center; width:100%; padding:14px 18px; font-weight:600; font-size:14.5px; cursor:pointer; border:none; background:none; text-align:left; gap:12px; font-family:inherit; color:inherit; }
.fd-faq__q svg { min-width:18px; transition:transform .2s; stroke:#94A3B8; }
.fd-faq__item.open .fd-faq__q svg { transform:rotate(180deg); }
.fd-faq__a { display:none; padding:0 18px 14px; line-height:1.7; color:#64748B; font-size:14px; }
.fd-faq__item.open .fd-faq__a { display:block; }

.fd-articles__grid { display:grid; gap:10px; }
.fd-article-card { display:block; padding:14px 18px; background:#F8FAFC; border:1px solid #E2E8F0; border-radius:10px; text-decoration:none; color:inherit; transition:border-color .2s; }
.fd-article-card:hover { border-color:var(--sk-accent, #0891B2); }
.fd-article-card__cat { display:block; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.5px; color:var(--sk-accent, #0891B2); margin-bottom:4px; }
.fd-article-card__title { display:block; font-size:14.5px; font-weight:600; color:#0F172A; }

.fd-bottom-cta { background:linear-gradient(135deg, #0F766E 0%, #0891B2 100%); padding:48px 20px; text-align:center; margin-top:32px; }
.fd-bottom-cta__inner { max-width:600px; margin:0 auto; }
.fd-bottom-cta h2 { color:#fff; font-size:24px; margin:0 0 8px; }
.fd-bottom-cta p { color:rgba(255,255,255,.85); font-size:15px; margin:0 0 20px; }
.fd-bottom-cta__btn { display:inline-flex; align-items:center; gap:10px; background:#fff; color:#0F766E; font-size:18px; font-weight:700; padding:14px 32px; border-radius:12px; text-decoration:none; transition:transform .15s; }
.fd-bottom-cta__btn:hover { transform:scale(1.03); }
.fd-bottom-cta__btn svg { stroke:#0F766E; }
.fd-bottom-cta__sub { font-size:13px!important; color:rgba(255,255,255,.7)!important; margin-top:12px!important; }

/* ===== FACILITY DETAIL RESPONSIVE LAYOUT ===== */
@media(max-width:768px){
  .fd-layout { grid-template-columns:1fr !important; }
  .fd-layout > aside { position:static !important; }
}

/* Facility detail review cards */
.fd-reviews__grid { display:grid; gap:12px; }
.fd-review { background:#F8FAFC; border:1px solid #E2E8F0; border-radius:10px; padding:16px; }
.fd-review__stars { display:flex; gap:1px; margin-bottom:8px; }
.fd-review__stars svg { width:14px; height:14px; fill:#F59E0B; }
.fd-review__text { font-size:14px; color:#475569; line-height:1.7; margin:0 0 10px; font-style:italic; }
.fd-review__author { font-size:13px; font-weight:600; color:#0F172A; }
.fd-review__date { font-size:12px; color:#94A3B8; }

/* Insurance logo strip for facility */
.fd-insurance-logos { display:flex; flex-wrap:wrap; gap:16px; align-items:center; margin-top:12px; }
.fd-insurance-logos img { height:32px; width:auto; max-width:120px; object-fit:contain; opacity:.7; filter:grayscale(20%); }

/* Compare widget */
.fd-compare { background:#F0FDFA; border:1px solid #99F6E4; border-radius:12px; padding:20px; margin-bottom:24px; }
.fd-compare h2 { font-size:16px; margin:0 0 12px; }
.fd-compare__list { display:grid; gap:8px; }
.fd-compare__item { display:flex; align-items:center; gap:12px; background:#fff; border:1px solid #E2E8F0; border-radius:8px; padding:12px 14px; text-decoration:none; color:inherit; transition:border-color .2s; }
.fd-compare__item:hover { border-color:var(--sk-accent, #0891B2); }
.fd-compare__item-name { font-size:14px; font-weight:600; color:#0F172A; }
.fd-compare__item-loc { font-size:12px; color:#64748B; }
.fd-compare__item-tags { display:flex; gap:4px; margin-top:4px; }
.fd-compare__item-tag { font-size:11px; background:#ECFEFF; color:#0891B2; padding:2px 8px; border-radius:4px; }

/* Admission form */
.fd-form { background:#F8FAFC; border:1px solid #E2E8F0; border-radius:12px; padding:20px; margin-bottom:24px; }
.fd-form h2 { font-size:16px; margin:0 0 4px; }
.fd-form p { font-size:13px; color:#64748B; margin:0 0 16px; }
.fd-form__field { display:block; width:100%; padding:10px 14px; border:1px solid #E2E8F0; border-radius:8px; font-size:14px; font-family:inherit; margin-bottom:10px; box-sizing:border-box; }
.fd-form__field:focus { outline:none; border-color:var(--sk-accent, #0891B2); }
.fd-form__btn { display:block; width:100%; padding:12px; background:var(--sk-accent, #0891B2); color:#fff; border:none; border-radius:8px; font-size:15px; font-weight:600; cursor:pointer; font-family:inherit; }
.fd-form__btn:hover { opacity:.9; }
.fd-form__note { font-size:11px; color:#94A3B8; text-align:center; margin-top:8px; }

/* === Facility Detail v3 additions === */

/* Photo Gallery */
.fd-gallery { margin-bottom:20px; border-radius:12px; overflow:hidden; }
.fd-gallery__main { width:100%; aspect-ratio:16/9; overflow:hidden; background:#F1F5F9; border-radius:12px; }
.fd-gallery__main img { width:100%; height:100%; object-fit:cover; }
.fd-gallery__thumbs { display:flex; gap:8px; margin-top:8px; }
.fd-gallery__thumb { width:72px; height:54px; border-radius:8px; overflow:hidden; cursor:pointer; border:2px solid transparent; opacity:.7; transition:opacity .2s, border-color .2s; }
.fd-gallery__thumb--active { border-color:var(--sk-accent, #0891B2); opacity:1; }
.fd-gallery__thumb:hover { opacity:1; }
.fd-gallery__thumb img { width:100%; height:100%; object-fit:cover; }
.fd-gallery__more { width:72px; height:54px; border-radius:8px; background:#F1F5F9; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:600; color:#64748B; cursor:pointer; }

/* Insurance Logos (replacing text pills) */
.fd-insurance-logos { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.fd-ins-logo { display:flex; flex-direction:column; align-items:center; gap:4px; width:100px; text-align:center; }
.fd-ins-logo img { height:36px; width:auto; max-width:90px; object-fit:contain; filter:grayscale(.3); transition:filter .2s; }
.fd-ins-logo:hover img { filter:grayscale(0); }
.fd-ins-logo span { font-size:10px; color:#94A3B8; line-height:1.2; }

/* Reviews with avatars */
.fd-reviews__grid { display:grid; gap:16px; }
.fd-review { background:#F8FAFC; border:1px solid #E2E8F0; border-radius:12px; padding:20px; }
.fd-review__head { display:flex; align-items:center; gap:12px; margin-bottom:12px; }
.fd-review__avatar { width:40px; height:40px; border-radius:50%; color:#fff; display:flex; align-items:center; justify-content:center; font-size:16px; font-weight:700; flex-shrink:0; }
.fd-review:nth-child(1) .fd-review__avatar { background:#0891B2; }
.fd-review:nth-child(2) .fd-review__avatar { background:#8B5CF6; }
.fd-review:nth-child(3) .fd-review__avatar { background:#059669; }
.fd-review__author { font-weight:600; font-size:14px; }
.fd-review__meta { display:flex; align-items:center; gap:6px; margin-top:2px; }
.fd-review__date { font-size:12px; color:#94A3B8; }
.fd-review__text { color:#475569; line-height:1.7; font-size:14px; margin:0 0 10px; font-style:italic; }
.fd-review__verified { display:flex; align-items:center; gap:4px; font-size:11px; color:#059669; font-weight:500; }
.fd-review__verified svg { stroke:#059669; }

/* Compare Table */
.fd-compare__table { overflow-x:auto; margin-bottom:8px; }
.fd-compare__table table { width:100%; border-collapse:collapse; font-size:14px; }
.fd-compare__table th { text-align:left; font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:#94A3B8; padding:8px 12px; border-bottom:2px solid #E2E8F0; }
.fd-compare__table td { padding:12px; border-bottom:1px solid #F1F5F9; vertical-align:middle; }
.fd-compare__current { background:#F0FDF4; }
.fd-compare__current td { border-bottom:2px solid #BBF7D0; }
.fd-compare__types { font-size:11px; color:#64748B; margin-top:2px; }
.fd-compare__rating { font-weight:700; margin-right:4px; }
.fd-compare__you { font-size:11px; font-weight:600; color:#059669; background:#ECFDF5; padding:2px 8px; border-radius:4px; }
.fd-compare__view { font-size:13px; font-weight:500; color:var(--sk-accent, #0891B2); text-decoration:none; }
.fd-compare__view:hover { text-decoration:underline; }

/* Form v3 additions */
.fd-form__note { display:flex; align-items:center; justify-content:center; gap:4px; }
.fd-form__note svg { flex-shrink:0; }

/* Mobile */
@media(max-width:768px){
  .fd-gallery__thumbs { gap:6px; }
  .fd-gallery__thumb { width:56px; height:42px; }
  .fd-gallery__more { width:56px; height:42px; font-size:12px; }
  .fd-insurance-logos { gap:8px; }
  .fd-ins-logo { width:80px; }
  .fd-ins-logo img { height:28px; }
  .fd-compare__table { font-size:13px; }
  .fd-compare__table th, .fd-compare__table td { padding:8px; }
  .fd-review { padding:16px; }
}

/* === Rich Article Cards === */
.fd-articles__grid--rich { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:16px; }
.fd-article-card--rich { display:flex; flex-direction:column; border-radius:12px; overflow:hidden; background:#fff; border:1px solid #E2E8F0; box-shadow:0 1px 3px rgba(0,0,0,.06); transition:transform .2s,box-shadow .2s; }
.fd-article-card--rich:hover { transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,.1); border-color:var(--sk-accent, #0891B2); }
.fd-article-card__img { width:100%; height:160px; overflow:hidden; background:#F1F5F9; }
.fd-article-card__img img { width:100%; height:100%; object-fit:cover; }
.fd-article-card__body { padding:14px 16px; display:flex; flex-direction:column; gap:6px; flex:1; }
.fd-article-card--rich .fd-article-card__cat { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.6px; color:var(--sk-accent, #0891B2); }
.fd-article-card--rich .fd-article-card__title { font-size:14.5px; font-weight:600; color:#0F172A; line-height:1.4; }
.fd-article-card__tags { display:flex; gap:6px; flex-wrap:wrap; margin-top:4px; }
.fd-article-card__tag { font-size:11px; padding:2px 8px; background:#F0FDF4; color:#065F46; border-radius:20px; border:1px solid #BBF7D0; font-weight:500; }

/* === Nearby Centers Rich Cards === */
.fd-nearby__grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px; }
.fd-nearby__card { display:block; text-decoration:none; color:inherit; background:#fff; border:1px solid #E2E8F0; border-radius:12px; overflow:hidden; transition:transform .2s,box-shadow .2s; position:relative; }
.fd-nearby__card:hover { transform:translateY(-3px); box-shadow:0 8px 20px rgba(0,0,0,.08); }
.fd-nearby__card-accent { height:4px; background:linear-gradient(90deg, hsl(var(--card-hue,200),70%,50%), hsl(calc(var(--card-hue,200)+30),70%,60%)); }
.fd-nearby__card-body { padding:16px; }
.fd-nearby__card-header { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; margin-bottom:8px; }
.fd-nearby__card-name { font-size:15px; font-weight:700; color:#0F172A; margin:0; line-height:1.3; }
.fd-nearby__card-badge { display:flex; align-items:center; gap:3px; font-size:11px; color:#059669; font-weight:600; white-space:nowrap; background:#F0FDF4; padding:2px 8px; border-radius:20px; border:1px solid #BBF7D0; }
.fd-nearby__card-loc { display:flex; align-items:center; gap:4px; font-size:13px; color:#64748B; margin:0 0 8px; }
.fd-nearby__card-loc svg { flex-shrink:0; stroke:#94A3B8; }
.fd-nearby__card-rating { display:flex; align-items:center; gap:4px; margin-bottom:10px; }
.fd-nearby__card-rating span { font-size:14px; font-weight:700; color:#0F172A; }
.fd-nearby__card-tags { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:12px; }
.fd-nearby__tag { font-size:11px; padding:3px 10px; background:#F0F9FF; color:#0369A1; border-radius:20px; border:1px solid #BAE6FD; font-weight:500; }
.fd-nearby__card-footer { display:flex; align-items:center; justify-content:space-between; padding-top:12px; border-top:1px solid #F1F5F9; }
.fd-nearby__card-beds { display:flex; align-items:center; gap:4px; font-size:12px; color:#64748B; }
.fd-nearby__card-beds svg { stroke:#94A3B8; }
.fd-nearby__card-link { font-size:13px; font-weight:600; color:var(--sk-accent, #0891B2); }
.fd-nearby__card:hover .fd-nearby__card-link { text-decoration:underline; }

/* === Sidebar CTA (no form) === */
.fd-sidebar-cta { background:linear-gradient(135deg,#F0FDFA,#ECFEFF); border:1px solid #99F6E4; border-radius:14px; padding:24px 20px; text-align:center; }
.fd-sidebar-cta__icon { display:flex; justify-content:center; margin-bottom:12px; }
.fd-sidebar-cta__icon svg { stroke:var(--sk-accent, #0891B2); }
.fd-sidebar-cta h3 { font-size:17px; margin:0 0 8px; color:#0F172A; }
.fd-sidebar-cta p { font-size:13px; color:#475569; margin:0 0 16px; line-height:1.5; }
.fd-sidebar-cta__btn { display:block; width:100%; padding:14px; background:var(--sk-accent, #0891B2); color:#fff; border-radius:10px; font-size:17px; font-weight:700; text-decoration:none; text-align:center; transition:background .2s; }
.fd-sidebar-cta__btn:hover { background:#0E7490; }
.fd-sidebar-cta__list { list-style:none; padding:0; margin:16px 0 0; text-align:left; }
.fd-sidebar-cta__list li { display:flex; align-items:center; gap:8px; font-size:13px; color:#334155; padding:6px 0; }
.fd-sidebar-cta__list li svg { stroke:#059669; flex-shrink:0; }

@media(max-width:768px){
  .fd-articles__grid--rich { grid-template-columns:1fr; }
  .fd-nearby__grid { grid-template-columns:1fr; }
}

/* === SEO Content Section === */
.fd-seo-subtitle{font-size:1.35rem;font-weight:700;color:#0f172a;margin:0 0 12px;line-height:1.3}
.fd-seo-desc p{color:#475569;font-size:.935rem;line-height:1.75;margin:0 0 10px}
.fd-seo-why{font-size:1.1rem;font-weight:700;color:#0f172a;margin:20px 0 10px}
.fd-seo-bullets{list-style:none;padding:0;margin:0 0 8px}
.fd-seo-bullets li{display:flex;align-items:flex-start;gap:8px;padding:6px 0;color:#334155;font-size:.9rem;line-height:1.5}
.fd-seo-bullets svg{flex-shrink:0;color:#10b981;margin-top:2px}
