/* Scoped to directory grids; individual business templates and theme styles are untouched. */
.sag-cluster {
    --sag-ink:#071b38; --sag-blue:#0076d6; --sag-muted:#7791af;
    box-sizing:border-box; position:relative; isolation:isolate; overflow:hidden;
    width:100%; max-width:1200px; margin:28px auto; padding:32px 32px 28px;
    border-radius:22px; color:#f7faff; font:400 16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;
    background:radial-gradient(ellipse at 0% 0%,#174b68 0,transparent 40%),
        radial-gradient(ellipse at 100% 6%,#123256 0,transparent 44%),#081827;
    text-align:start;
}
.sag-cluster *, .sag-cluster *::before, .sag-cluster *::after {box-sizing:border-box}
.sag-cluster::before,.sag-cluster::after {
    content:""; pointer-events:none; position:absolute; z-index:-1; border-radius:50%;
    border:1px solid #17629a; background:linear-gradient(135deg,#08688635,#1642a92b); width:720px; height:500px;
}
.sag-cluster::before {inset-block-start:-370px;inset-inline-start:-90px;transform:rotate(17deg)}
.sag-cluster::after {inset-block-end:-440px;inset-inline-end:-240px;width:900px;height:700px}
.sag-cluster--states {background:radial-gradient(ellipse at 65% -15%,#10495e 0,transparent 50%),#111c26}
.sag-cluster--states::before {display:none}
.sag-cluster [hidden] {display:none!important}

/* Win against .entry-content h2/h3/ul/a/img (theme blue bars, centered titles, list bullets). */
.sag-cluster h2,
.sag-cluster h3,
.sag-cluster ul,
.sag-cluster li,
.sag-cluster a,
.sag-cluster img {
    background:none!important; background-image:none!important; background-color:transparent!important;
    box-shadow:none!important; border:0!important; float:none!important; text-indent:0!important;
    max-width:none!important;
}
.sag-cluster h2,
.sag-cluster h3 {
    padding:0!important; text-align:start!important; width:auto!important; letter-spacing:normal;
    text-transform:none; line-height:1.2;
}
.sag-cluster ul,
.sag-cluster li {list-style:none!important; margin:0!important; padding:0!important; width:auto}
.sag-cluster img {margin:0!important; padding:0!important; border-radius:0}

.sag-cluster .sag-cluster__header {display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:0 0 20px;padding:0;background:none;border:0}
.sag-cluster .sag-cluster__intro {width:100%;min-width:0;max-width:100%}
.sag-cluster .sag-cluster__eyebrow {display:flex;align-items:center;gap:10px;margin:0 0 10px;color:#38c8ff;font-size:13px;font-weight:650;letter-spacing:.14em}
.sag-cluster .sag-cluster__eyebrow::before {content:"";width:8px;height:8px;background:#13cef4;border-radius:50%;box-shadow:0 0 20px #0dcdf870}
.sag-cluster .sag-cluster__title {
    font:750 clamp(26px,3.2vw,46px)/1.15 system-ui,-apple-system,"Segoe UI",sans-serif!important;
    color:#f9fbff!important; letter-spacing:-.035em!important; margin:0 0 12px!important; padding:0!important;
    border:0!important; text-transform:none!important; overflow-wrap:anywhere; background:none!important;
    text-align:start!important; width:auto!important;
}
.sag-cluster .sag-cluster__title::before,.sag-cluster .sag-cluster__title::after {display:none!important;content:none!important}
.sag-cluster .sag-cluster__description {color:#a8c9e8;font-size:clamp(15px,1.6vw,21px);margin:0;line-height:1.6}
.sag-cluster .sag-cluster__intro > :last-child {margin-bottom:0!important}
.sag-cluster .sag-cluster__title:empty,
.sag-cluster .sag-cluster__description:empty {display:none!important}
.sag-cluster .sag-cluster__tools {display:none!important}
.sag-cluster .sag-cluster__tools:empty {display:none!important}
.sag-cluster .sag-cluster__mosaic {
    display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border:1px solid #7eb7e0;
    border-radius:14px;color:#d7efff;background:#ffffff0f;pointer-events:none;
}
.sag-cluster .sag-cluster__mosaic .sag-cluster__icon {width:22px;height:22px}
.sag-cluster .sag-cluster__search {display:none!important}
.sag-cluster .sag-cluster__icon {display:block;width:22px;height:22px;flex-shrink:0}
.sag-cluster .sag-cluster__grid {
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;
    margin:0!important;padding:0!important;list-style:none!important;width:100%!important;background:none!important;
}
.sag-cluster .sag-cluster__grid--single,
.sag-cluster .sag-cluster__grid:has(> .sag-cluster__item:only-child) {
    display:flex!important;
    justify-content:center!important;
    margin:0 auto!important;
}
.sag-cluster .sag-cluster__grid--single .sag-cluster__item,
.sag-cluster .sag-cluster__grid:has(> .sag-cluster__item:only-child) .sag-cluster__item {
    max-width:380px!important;
    width:100%!important;
}
.sag-cluster .sag-cluster__item {list-style:none!important;display:flex;min-width:0;margin:0!important;padding:0!important;background:none!important;border:0!important}
.sag-cluster .sag-cluster__item::before,.sag-cluster .sag-cluster__item::marker {content:none!important}
.sag-cluster a.sag-cluster__card {
    display:flex;flex-direction:column;width:100%;min-width:0;background:#fff!important;color:var(--sag-ink)!important;
    border:2px solid #e1edf8!important;border-radius:15px;padding:2px;overflow:hidden;text-decoration:none!important;
    box-shadow:0 6px 16px #00000012!important;transition:transform .18s ease,box-shadow .18s ease;
}
.sag-cluster a.sag-cluster__card:hover {transform:translateY(-3px);box-shadow:0 9px 25px #008ef330!important;color:var(--sag-ink)!important;text-decoration:none!important;background:#fff!important}
.sag-cluster .sag-cluster__photo {height:auto;aspect-ratio:16/9;overflow:hidden;border-radius:11px 11px 8px 8px;position:relative;background:#304a72}
.sag-cluster .sag-cluster__photo img {display:block;width:100%!important;height:100%!important;object-fit:cover;max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;border-radius:0!important}
.sag-cluster .sag-cluster__photo--empty {display:grid;place-items:center;background:linear-gradient(120deg,#438cdf,#7351a9)}
.sag-cluster .sag-cluster__photo--empty .sag-cluster__icon {width:72px;height:72px;color:#cfbfff;opacity:.65;stroke-width:1.2}
.sag-cluster .sag-cluster__heart {
    position:absolute;top:10px;left:10px;z-index:1;display:grid;place-items:center;
    width:34px;height:34px;border-radius:50%;background:#0b1c2ecc;color:#fff;border:1px solid #ffffff55;
    pointer-events:none;
}
.sag-cluster .sag-cluster__heart .sag-cluster__icon {width:18px;height:18px;stroke-width:1.8;fill:none}
.sag-cluster .sag-cluster__body {display:flex;flex-direction:column;gap:12px;flex:1;padding:14px 14px 13px;min-width:0}
.sag-cluster .sag-cluster__card-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}
.sag-cluster .sag-cluster__name {
    font:730 clamp(16px,1.4vw,19px)/1.35 system-ui,-apple-system,"Segoe UI",sans-serif!important;
    margin:0!important;padding:0!important;color:#081b3a!important;border:0!important;text-transform:none!important;
    letter-spacing:-.025em!important;min-width:0;background:none!important;text-align:start!important;
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-clamp:2!important;
    overflow:hidden!important;text-overflow:ellipsis!important;word-break:normal!important;overflow-wrap:break-word!important;
}
.sag-cluster .sag-cluster__name bdi {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
    overflow:hidden;
    text-overflow:ellipsis;
    word-break:normal;
    overflow-wrap:break-word;
}
.sag-cluster .sag-cluster__name::before,.sag-cluster .sag-cluster__name::after {display:none!important;content:none!important}
.sag-cluster .sag-cluster__category {flex:0 0 auto;padding:4px 9px;background:#eaf0f7;color:#1b3556;border-radius:12px;font-size:11px;line-height:1.5;max-width:44%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sag-cluster .sag-cluster__pin {color:#7793b7;flex-shrink:0;padding-top:4px}
.sag-cluster .sag-cluster__card--cities .sag-cluster__pin {display:grid;place-items:center;background:#ddf3ff;border-radius:50%;width:33px;height:33px;padding:6px;color:#006386}
.sag-cluster .sag-cluster__card--cities .sag-cluster__name {flex:1}
.sag-cluster .sag-cluster__card--cities .sag-cluster__card-footer {justify-content:flex-end}
.sag-cluster .sag-cluster__card--states {padding:8px}
.sag-cluster .sag-cluster__card--states .sag-cluster__photo {border-radius:10px;aspect-ratio:16/9}
.sag-cluster .sag-cluster__card--states .sag-cluster__body {padding:10px 7px 5px;gap:4px}
.sag-cluster .sag-cluster__rating {display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:14px;font-weight:700;line-height:1.3}
.sag-cluster .sag-cluster__stars {position:relative;display:inline-block;font-size:21px;line-height:1;letter-spacing:0;white-space:nowrap;direction:ltr;color:#d2d9e2}
.sag-cluster .sag-cluster__stars>span:last-child {position:absolute;top:0;left:0;overflow:hidden;color:#ffa600}
.sag-cluster .sag-cluster__count {font-size:12px;font-weight:400;color:#617b9b}
.sag-cluster .sag-cluster__card-footer {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}
.sag-cluster .sag-cluster__location {display:flex;align-items:flex-start;gap:5px;color:#657f9f;font-size:12px;line-height:1.4;max-width:100%;overflow-wrap:anywhere}
.sag-cluster .sag-cluster__location .sag-cluster__icon {width:16px;height:18px}
.sag-cluster .sag-cluster__link {display:inline-flex;align-items:center;gap:8px;color:var(--sag-blue)!important;font-size:14px;font-weight:550;text-decoration:none!important;background:none!important}
.sag-cluster .sag-cluster__link .sag-cluster__icon {width:19px;height:19px}
.sag-cluster[dir="rtl"] .sag-cluster__link .sag-cluster__icon--arrow {transform:scaleX(-1)}
.sag-cluster .sag-cluster__chrome {
    display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px 20px;margin:28px 0 0;
}
.sag-cluster .sag-cluster__stat {display:flex;align-items:center;gap:8px;margin:0;color:#cfe4f7;font-size:14px;font-weight:600}
.sag-cluster .sag-cluster__stat .sag-cluster__icon {width:18px;height:18px;color:#7fd4ff}
.sag-cluster .sag-cluster__tagline {margin:0;color:#8eb0d0;font-size:13px;line-height:1.4;text-align:end}
.sag-cluster .sag-cluster__pager-slot {min-height:1px}
.sag-cluster .sag-cluster__pagination {display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin:28px 0 0;padding:0;background:none;border:0}
.sag-cluster .sag-cluster__chrome .sag-cluster__pagination {margin:0}
.sag-cluster .sag-cluster__page {display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:46px;padding:10px 15px;border:1px solid #365471!important;border-radius:10px;background:linear-gradient(140deg,#ffffff08,#ffffff02)!important;color:#f1f6ff!important;font-size:15px;font-weight:550;text-decoration:none!important;box-shadow:none!important;line-height:1.25}
.sag-cluster a.sag-cluster__page:hover {background:#164573!important;border-color:#2cafff!important;color:#fff!important}
.sag-cluster .sag-cluster__page[aria-current] {background:linear-gradient(135deg,#00c5e7,#0875fb)!important;border-color:#30c8ff!important;box-shadow:0 0 18px #08b8ff44!important}
.sag-cluster .sag-cluster__page[aria-disabled] {opacity:.4}
.sag-cluster .sag-cluster__page--prev .sag-cluster__icon--arrow {transform:scaleX(-1)}
.sag-cluster .sag-cluster__page--next .sag-cluster__icon--arrow {transform:none}
.sag-cluster[dir="rtl"] .sag-cluster__page--prev .sag-cluster__icon--arrow {transform:none}
.sag-cluster[dir="rtl"] .sag-cluster__page--next .sag-cluster__icon--arrow {transform:scaleX(-1)}
.sag-cluster .sag-cluster__ellipsis {color:#a5bad1}
.sag-cluster .sag-cluster__summary {color:#a4bed6;font-size:12px;margin:0 0 12px}
.sag-cluster .sag-cluster__feedback {font-size:14px;color:#c5e3fc;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.sag-cluster .sag-cluster__feedback:has(span:not(:empty)) {margin-bottom:14px}
.sag-cluster .sag-cluster__retry {font:inherit;border:1px solid #7ebfe8;border-radius:8px;padding:7px 13px;color:#fff;background:#163755;cursor:pointer;min-height:40px}
.sag-cluster .sag-cluster__empty {text-align:center;color:#c5def1;padding:50px 15px;margin:0;border:1px dashed #48667f;border-radius:14px}
.sag-cluster .sag-cluster__results[aria-busy="true"] {opacity:.6}
.sag-cluster :is(a,button,input):focus-visible {outline:3px solid #22cfff;outline-offset:3px}
.sag-cluster .sag-cluster__sr {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media (max-width:1024px) {
    .sag-cluster .sag-cluster__grid {grid-template-columns:repeat(3,minmax(0,1fr))}
    .sag-cluster .sag-cluster__header {flex-direction:row;align-items:flex-start}
    .sag-cluster .sag-cluster__tools {display:none!important}
    .sag-cluster .sag-cluster__name {font-size:18px!important}
}
@media (max-width:640px) {
    .sag-cluster .sag-cluster__grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
    .sag-cluster .sag-cluster__grid--single,
    .sag-cluster .sag-cluster__grid:has(> .sag-cluster__item:only-child) {
        display:block!important;
    }
    .sag-cluster .sag-cluster__grid--single .sag-cluster__item,
    .sag-cluster .sag-cluster__grid:has(> .sag-cluster__item:only-child) .sag-cluster__item {
        max-width:100%!important;
        width:100%!important;
    }
    .sag-cluster {padding:22px 14px;border-radius:18px;margin:16px auto}
    .sag-cluster .sag-cluster__header {gap:16px}
    .sag-cluster .sag-cluster__page {padding:8px 12px;min-width:40px;min-height:44px}
    .sag-cluster .sag-cluster__pagination {gap:6px}
    .sag-cluster .sag-cluster__description {font-size:15px}
    .sag-cluster .sag-cluster__chrome {grid-template-columns:1fr;justify-items:center;text-align:center;gap:12px}
    .sag-cluster .sag-cluster__tagline,.sag-cluster .sag-cluster__stat {text-align:center}
    .sag-cluster .sag-cluster__body {padding:12px 10px 11px;gap:8px}
}
@media (prefers-reduced-motion:reduce) {.sag-cluster a.sag-cluster__card{transition:none}.sag-cluster a.sag-cluster__card:hover{transform:none}}
