/* One coherent, photo-first SWMO homepage. Scoped away from CRM and other pages. */
body.swmo-discover { --discover-ink:#142b32; --discover-green:#175b4b; --discover-line:#e1e7e5; background:#fff!important; color:var(--discover-ink); font-family:'DM Sans',Arial,sans-serif; padding-top:0!important; padding-bottom:0!important; }
.swmo-discover * { box-sizing:border-box; }
.swmo-discover :is(a,button,input,select):focus-visible { outline:3px solid #d2a84b!important; outline-offset:4px; }
.swmo-discover [hidden] { display:none!important; }
.swmo-discover .site-header { position:relative!important; height:88px!important; min-height:88px!important; background:#fff!important; border:0!important; box-shadow:none!important; }
.swmo-discover .header-wrap { width:min(1440px,100%)!important; max-width:none!important; height:88px!important; padding:0 48px!important; gap:24px!important; }
.swmo-discover .logo { font-size:25px!important; letter-spacing:-1px; color:#164c40!important; line-height:1.05!important; font-weight:800!important; }
.swmo-discover .logo span { display:block!important; font-size:11px!important; font-weight:600!important; letter-spacing:3px!important; text-transform:uppercase; margin-top:5px; }
.swmo-discover .header-nav { gap:25px!important; margin-left:auto; }
.swmo-discover .header-nav a { color:#263c40!important; font-size:14px!important; font-weight:600!important; }
.swmo-discover .header-nav .header-nav-message { display:none!important; }
.swmo-discover .header-nav-cta { background:var(--discover-green)!important; color:#fff!important; border:0!important; border-radius:7px!important; padding:12px 18px!important; box-shadow:none!important; font-size:13px!important; }
.swmo-discover .header-phone-link { display:none!important; }
.swmo-discover .header-kw-link { border-left:1px solid var(--discover-line); padding-left:20px; }
.swmo-discover .swmo-saved-trigger { background:none; color:var(--discover-ink); border:0; font-size:13px; padding:10px; }
.swmo-discover #hero.hero-cover { min-height:590px!important; height:auto!important; margin:0 22px!important; border-radius:16px!important; padding:76px 20px 42px!important; overflow:hidden!important; display:flex!important; align-items:center!important; }
.swmo-discover .hero-cover__slideshow { inset:0!important; }
.swmo-discover .hero-cover__slide { width:100%!important; height:100%!important; object-fit:cover!important; object-position:center 54%!important; }
.swmo-discover .hero-cover__overlay { background:linear-gradient(90deg,rgba(9,31,33,.72),rgba(9,31,33,.28)),linear-gradient(0deg,rgba(9,31,33,.26),transparent)!important; }
.swmo-discover .hero-cover__inner { width:100%!important; max-width:1000px!important; padding:0!important; position:relative!important; z-index:2; }
.swmo-discover .hero-cover__content { max-width:840px!important; margin:auto!important; padding:0!important; text-align:center!important; }
.swmo-discover .hero-search-kicker { display:block!important; color:#fff!important; font-size:11px!important; font-weight:700!important; letter-spacing:3px!important; margin:0 0 16px!important; }
.swmo-discover .hero-title-main { max-width:none!important; margin:0 0 18px!important; font-size:clamp(44px,5.5vw,76px)!important; line-height:1.02!important; letter-spacing:-3px!important; font-weight:750!important; color:#fff!important; text-shadow:0 2px 24px #102c3329!important; }
.swmo-discover .hero-lead { display:block!important; max-width:none!important; margin:0 0 28px!important; color:#f6faf9!important; font-size:17px!important; line-height:1.5!important; }
.discover-intents { display:flex; justify-content:center; gap:32px; margin:0 auto 14px; }
.discover-intents a { text-decoration:none; color:#fff; padding:9px 2px; border-bottom:2px solid transparent; font-size:14px; font-weight:600; }
.discover-intents a[aria-current] { border-color:#fff; }
.swmo-discover #hero-search-form { width:min(760px,100%)!important; max-width:760px!important; margin:0 auto!important; background:#fff!important; padding:7px!important; border-radius:10px!important; border:0!important; box-shadow:0 8px 35px #001b3038!important; }
.swmo-discover #hero .hero-search-simple { display:flex!important; flex-direction:row!important; padding:0!important; align-items:center!important; gap:6px!important; min-height:58px!important; border:0!important; background:transparent!important; box-shadow:none!important; }
.swmo-discover #hero .hero-search-actions { width:auto!important; flex:0 0 auto!important; margin:0!important; }
.swmo-discover #hero .search-suggest-wrap { flex:1 1 0%!important; min-width:0!important; width:auto!important; }
.swmo-discover #hero .search-suggest-wrap input { width:100%!important; }
.swmo-discover #hero-search-input { flex:1!important; min-width:0!important; height:58px!important; padding:0 18px!important; color:#182d34!important; font-size:17px!important; border:0!important; background:#fff!important; border-radius:6px!important; box-shadow:none!important; }
.swmo-discover #hero-search-submit { width:auto!important; min-width:128px!important; height:54px!important; background:var(--discover-green)!important; color:white!important; font-size:14px!important; font-weight:700!important; border:0!important; border-radius:7px!important; box-shadow:none!important; }
.swmo-discover #hero-search-submit svg { display:none; }
.swmo-discover .hero-search-filters-row { display:none!important; }
.discover-search-extras { display:flex; align-items:center; justify-content:center; gap:24px; margin-top:16px; color:#fff; font-size:12px; }
.discover-search-extras #discover-locate { display:inline-flex; justify-content:center; gap:10px; align-items:center; min-height:48px; border:1px solid #ffffffb3; border-radius:999px; padding:12px 22px; background:#fff; color:#174d3e; font:inherit; font-size:14px; font-weight:700; box-shadow:0 4px 16px #0002; cursor:pointer; transition:background .18s,box-shadow .18s; }
.discover-search-extras #discover-locate:hover { background:#eaf4ef; box-shadow:0 6px 20px #0003; }
.discover-search-extras #discover-locate:focus-visible { outline:3px solid #f7ca75; outline-offset:4px; }
.discover-search-extras #discover-locate:disabled { cursor:wait; opacity:.75; }
#discover-location-status { color:inherit; font-size:14px; line-height:1.5; text-align:center; }
#discover-for-you { scroll-margin-top:100px; }
@media(prefers-reduced-motion:reduce) { .discover-search-extras #discover-locate { transition:none; } }
#discover-location-status { margin:6px 0 0; color:#fff; font-size:13px; }
.swmo-discover .hero-popular-cities { margin:23px 0 0!important; }
.swmo-discover .hero-popular-cities__label,.swmo-discover #hero-more-areas { display:none!important; }
.swmo-discover .hero-cities-row { display:flex!important; justify-content:center!important; gap:16px!important; flex-wrap:wrap!important; }
.swmo-discover .popular-chip { min-height:30px!important; padding:3px!important; background:transparent!important; border:0!important; border-radius:0!important; color:#fff!important; font-size:12px!important; font-weight:500!important; box-shadow:none!important; text-decoration:underline; text-underline-offset:4px; }
.discover-section { max-width:1280px; margin:0 auto; padding:58px 40px; }
.discover-section-head { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-bottom:22px; }
.discover-eyebrow { margin:0 0 10px; color:var(--discover-green); font-size:10px; font-weight:800; letter-spacing:2px; }
.discover-section h2 { font-size:32px; line-height:1.17; letter-spacing:-1px; margin:0 0 10px; font-weight:750; color:var(--discover-ink); }
.discover-section-head p:not(.discover-eyebrow) { margin:0; font-size:14px; color:#68767a; line-height:1.6; }
.discover-text-link { color:var(--discover-green); font-size:13px; font-weight:700; text-decoration:none; white-space:nowrap; }
.discover-text-link span { font-size:22px; margin-left:12px; }
.discover-context { display:flex; align-items:center; gap:16px; margin-bottom:22px; font-size:12px; }
.discover-context span { background:#edf4f0; padding:9px 13px; border-radius:30px; font-weight:600; color:#1a5749; }
.discover-context button { padding:6px 0; color:#536668; background:none; border:0; text-decoration:underline; text-underline-offset:3px; font:inherit; cursor:pointer; }
.discover-recent-searches { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:-4px 0 22px; font-size:11px; color:#71817a; }
.discover-recent-searches button { background:#fff; border:1px solid #dce5df; color:#285b4b; border-radius:5px; padding:7px 11px; font:inherit; cursor:pointer; }
.discover-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 22px; }
.discover-card { min-width:0; background:#fff; border:1px solid #dfe6e3; border-radius:12px; overflow:hidden; box-shadow:0 4px 15px #173f3710; transition:transform .2s,box-shadow .2s; }
.discover-card:hover { transform:translateY(-4px); box-shadow:0 12px 28px #173f3720; }
.discover-card-photo { position:relative; aspect-ratio:1.48; background:#edf2ef; }
.discover-card-photo a { display:block; height:100%; }
.discover-card-photo img { width:100%; height:100%; object-fit:cover; display:block; }
.discover-card-badge { position:absolute; top:14px; left:14px; padding:6px 10px; background:#fff; color:#245547; border-radius:5px; font-size:10px; font-weight:700; box-shadow:0 2px 7px #0002; pointer-events:none; }
.discover-card-photo button { position:absolute; top:11px; right:12px; background:#fff; color:#28413a; border:0; border-radius:50%; width:40px; height:40px; font-size:29px; line-height:1; cursor:pointer; box-shadow:0 2px 7px #0002; }
.discover-card-photo button[aria-pressed=true] { color:#a3333e; }
.discover-card-info { display:block; padding:18px 18px 16px; color:var(--discover-ink); text-decoration:none; }
.discover-card-info strong { display:block; font-size:28px; font-weight:800; letter-spacing:-1px; margin:0 0 9px; }
.discover-card-specs { display:flex; gap:5px; align-items:center; font-size:12px; margin:0 0 9px; white-space:nowrap; }
.discover-card-specs i { height:12px; width:1px; background:#cdd8d3; margin:0 3px; }
.discover-card-address { margin:0 0 13px; font-size:12px; line-height:1.5; }
.discover-card-courtesy { font-size:9px; color:#6d7877; margin:0; line-height:1.5; }
.discover-status,.discover-privacy { font-size:11px; color:#77817e; line-height:1.6; margin:17px 0 0; }
.discover-privacy { margin-top:5px; }
.discover-skeleton { border:1px solid #e2e8e4; border-radius:12px; padding-bottom:25px; overflow:hidden; }
.discover-skeleton div { aspect-ratio:1.48; background:#eaf0ed; }
.discover-skeleton span { display:block; height:15px; margin:18px 20px 0; width:64%; background:#edf1ef; border-radius:4px; }
.discover-collections { border-top:1px solid #e9eeeb; }
.discover-places { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.discover-places>a { position:relative; height:320px; border-radius:12px; overflow:hidden; color:#fff; }
.discover-places img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.discover-places>a:hover img { transform:scale(1.04); }
.discover-places>a::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,#0c302de6,transparent 85%); }
.discover-places span { position:absolute; bottom:26px; left:25px; right:20px; z-index:1; }
.discover-places small { display:block; font-size:9px; letter-spacing:1.6px; margin-bottom:10px; }
.discover-places strong { display:block; font-size:27px; letter-spacing:-.6px; line-height:1.15; }
.discover-places em { display:block; font-size:11px; font-style:normal; margin-top:14px; }
.discover-agent { max-width:1200px; padding:38px; background:#edf3ef; border-radius:16px; display:grid; grid-template-columns:280px 1fr; gap:65px; align-items:center; margin:12px auto 58px; }
.discover-agent>img { width:100%; height:310px; object-fit:cover; object-position:top; border-radius:9px; }
.discover-agent h2 { font-size:39px; }
.discover-agent p:not(.discover-eyebrow) { max-width:540px; color:#566b63; font-size:14px; line-height:1.85; }
.discover-agent-actions { display:flex; align-items:center; gap:24px; margin:24px 0 14px; }
.discover-agent-actions a { color:var(--discover-green); font-weight:700; font-size:13px; text-decoration:none; }
.discover-agent-actions button { padding:13px 18px; background:var(--discover-green); border:0; border-radius:6px; color:#fff; font-size:12px; cursor:pointer; }
.discover-agent small { font-size:11px; color:#65776e; }
.swmo-discover #homepage-listings-preview { background:#f6f8f6!important; color:var(--discover-ink)!important; border:0!important; padding:48px 0!important; margin:0!important; }
.swmo-discover #homepage-listings-preview .container { max-width:1280px!important; padding:0 40px!important; }
.swmo-discover .homepage-preview-band__head { margin-bottom:20px!important; }
.swmo-discover #homepage-preview-heading { font-size:28px!important; color:var(--discover-ink)!important; letter-spacing:-.7px; text-transform:none!important; }
.swmo-discover #homepage-preview-grid { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:22px!important; overflow:visible!important; padding:0!important; }
.swmo-discover #homepage-preview-grid .premium-card { display:flex!important; flex-direction:column!important; width:100%!important; min-width:0!important; max-width:none!important; height:auto!important; background:#fff!important; color:var(--discover-ink)!important; border:1px solid #dfe6e3!important; border-radius:12px!important; box-shadow:0 3px 12px #173f3710!important; }
.swmo-discover #homepage-preview-grid .listing-card-photo-wrap { width:100%!important; height:auto!important; aspect-ratio:1.48!important; border-radius:0!important; flex:none!important; }
.swmo-discover #homepage-preview-grid .listing-card-photo-btn { height:100%!important; }
.swmo-discover #homepage-preview-grid img { height:100%!important; object-fit:cover!important; }
.swmo-discover .homepage-preview-card-info { padding:17px!important; background:#fff!important; }
.swmo-discover #homepage-preview-grid .premium-card-price { font-size:27px!important; color:var(--discover-ink)!important; text-shadow:none!important; font-weight:800!important; }
.swmo-discover #homepage-preview-grid .premium-card-address { color:#415751!important; font-size:12px!important; text-shadow:none!important; }
.swmo-discover #homepage-preview-grid .listing-card-actions { margin-top:auto!important; padding:0 16px 14px!important; background:#fff!important; }
.swmo-discover #homepage-preview-grid .listing-card-btn { color:var(--discover-green)!important; border:1px solid #d9e4de!important; background:#fff!important; font-size:11px!important; min-height:36px!important; border-radius:5px!important; }
.swmo-discover #homepage-preview-grid .listing-card-btn--primary { background:#edf4ef!important; }
.swmo-discover #homepage-preview-grid .premium-card--overlay-list .listing-card-photo-btn { height:auto!important; }
.swmo-discover #homepage-preview-grid .premium-card--overlay-list .listing-card-photo-wrap { aspect-ratio:auto!important; height:auto!important; overflow:visible!important; background:#fff!important; }
.swmo-discover #homepage-preview-grid .premium-card--overlay-list img { height:auto!important; aspect-ratio:1.48!important; border-radius:0!important; }
.swmo-discover #homepage-preview-grid .listing-card-photo-overlay { position:static!important; inset:auto!important; padding:18px!important; background:#fff!important; min-height:0!important; text-align:left!important; pointer-events:none!important; }
.swmo-discover #homepage-preview-grid .listing-card-photo-overlay::before,.swmo-discover #homepage-preview-grid .listing-card-photo-overlay::after { display:none!important; }
.swmo-discover #homepage-preview-grid .premium-card-meta { color:#53665e!important; font-size:12px!important; text-shadow:none!important; }
.swmo-discover #homepage-preview-grid .homepage-preview-tap-hint { display:none!important; }
.swmo-discover #homepage-preview-status { color:#61716b!important; font-size:12px!important; }
.swmo-discover #browse-categories { background:#fff!important; margin:0!important; padding:20px 0 40px!important; }
.swmo-discover #home-value-promo { background:#edf3ef!important; padding:44px 20px 15px!important; border:0!important; }
.swmo-discover #home-value-promo h2 { color:var(--discover-ink)!important; font-size:28px!important; }
.swmo-discover #seller-cta { background:#edf3ef!important; padding-bottom:40px!important; border:0!important; }
.swmo-discover #expert-cta-bar,.swmo-discover .expert-dock,.swmo-discover .sticky-expert-cta { display:none!important; }
.swmo-discover .site-footer { background:#f6f8f6!important; color:#3f514b!important; border-top:1px solid #e1e8e3; }
.discover-mobile-nav { display:none; }
.discover-mobile-nav svg { width:23px; height:23px; display:block; margin:3px 0 4px; }
@media(min-width:1000px) { .swmo-discover #hero{ background-position:center!important; } }
@media(max-width:1000px) {
 .swmo-discover .header-wrap{padding:0 24px!important}.swmo-discover .header-nav{gap:15px!important}.swmo-discover .header-nav a{font-size:12px!important}.swmo-discover .header-kw-link{display:none!important}
 .discover-agent{margin-left:24px;margin-right:24px;gap:32px;grid-template-columns:230px 1fr}.discover-agent h2{font-size:32px}.discover-card-specs{font-size:11px}
}
@media(max-width:767px) {
 .swmo-discover #hero #hero-search-submit { width:48px!important; min-width:48px!important; display:grid!important; place-items:center; padding:0!important; font-size:0!important; }
 .swmo-discover #hero #hero-search-submit::after { content:''; display:block; width:24px; height:24px; background:center/24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E"); }
 .swmo-discover #hero-search-submit svg { display:none; }
 .swmo-discover #hero-search-submit .discover-submit-label { display:none; }
 body.swmo-discover{padding-bottom:76px!important}.swmo-discover .site-header,.swmo-discover .header-wrap{height:72px!important;min-height:72px!important}.swmo-discover .header-wrap{padding:0 22px!important;justify-content:space-between!important}.swmo-discover .logo{font-size:24px!important}.swmo-discover .logo span{font-size:9px!important}
 .swmo-discover .header-nav:not(.is-open){display:none!important}.swmo-discover .header-nav.is-open{display:flex!important;flex-direction:column!important;position:absolute!important;top:72px!important;left:0!important;right:0!important;padding:24px!important;background:#fff!important;z-index:1000!important;box-shadow:0 20px 30px #173f3720!important;margin:0!important;gap:10px!important}.swmo-discover .header-nav.is-open a{font-size:16px!important;padding:10px!important}.swmo-discover .nav-toggle{display:flex!important;color:var(--discover-ink)!important;background:none!important;border:0!important;width:44px!important;height:44px!important}.swmo-discover .nav-toggle__bars span{background:var(--discover-ink)!important}
 .swmo-discover #hero.hero-cover{margin:0 12px!important;border-radius:12px!important;min-height:510px!important;padding:45px 20px 30px!important}.swmo-discover #hero .hero-title-main{font-size:46px!important;letter-spacing:-2px!important;margin-bottom:18px!important}.swmo-discover .hero-search-kicker{font-size:9px!important;letter-spacing:2px!important}.swmo-discover .hero-lead{font-size:14px!important;margin-bottom:22px!important}.discover-intents{gap:25px;margin-bottom:12px}.discover-intents a{font-size:13px}
 .swmo-discover #hero-search-form{padding:5px!important}.swmo-discover #hero-search-input{padding:0 10px!important;height:54px!important;font-size:14px!important}.swmo-discover .hero-search-simple{min-height:54px!important}.swmo-discover #hero-search-submit{min-width:70px!important;padding:0 10px!important;height:48px!important;font-size:12px!important}.discover-search-extras{margin-top:14px;font-size:11px}.discover-search-extras>span{display:none}.swmo-discover .hero-cities-row{gap:8px 15px!important}.swmo-discover .popular-chip{font-size:11px!important}.swmo-discover .hero-popular-cities{margin-top:14px!important}
 .discover-section{padding:36px 22px}.discover-section h2{font-size:27px;letter-spacing:-.8px}.discover-eyebrow{font-size:9px;letter-spacing:1.6px}.discover-section-head{gap:14px;align-items:flex-start;margin-bottom:20px}.discover-section-head p:not(.discover-eyebrow){font-size:13px}.discover-text-link{font-size:11px;line-height:1.5;max-width:65px;white-space:normal;flex-shrink:0}.discover-text-link span{display:block;margin-left:0}.discover-context{gap:12px;font-size:10px;flex-wrap:wrap}.discover-context span{padding:8px 12px}.discover-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:0 0 18px;scrollbar-width:thin}.discover-card{min-width:min(83vw,350px);scroll-snap-align:start;flex:0 0 min(83vw,350px)}.discover-card-photo{aspect-ratio:1.4}.discover-card-info strong{font-size:28px}.discover-card-specs{font-size:12px}.discover-skeleton{flex:0 0 83vw;min-width:83vw}.discover-privacy{font-size:10px}
 .discover-places{display:flex;overflow-x:auto;gap:15px;scroll-snap-type:x mandatory;padding-bottom:12px}.discover-places>a{height:285px;flex:0 0 80%;scroll-snap-align:start}.discover-places strong{font-size:27px}.discover-agent{margin:4px 22px 36px;padding:24px;display:flex;flex-direction:column;gap:25px;align-items:stretch}.discover-agent>img{width:100%;height:270px;object-position:center 25%}.discover-agent h2{font-size:30px}.discover-agent p:not(.discover-eyebrow){font-size:13px}.discover-agent-actions{align-items:flex-start;flex-direction:column;gap:18px}
 .swmo-discover #homepage-listings-preview{padding:34px 0!important}.swmo-discover #homepage-listings-preview .container{padding:0 22px!important}.swmo-discover #homepage-preview-heading{font-size:25px!important}.swmo-discover #homepage-preview-grid{grid-template-columns:1fr!important}.swmo-discover .homepage-preview-band__head .btn{font-size:11px!important;padding:9px!important;min-width:0!important}.swmo-discover .homepage-preview-more-wrap{margin-top:22px!important}
 .discover-mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;justify-content:space-around;align-items:center;background:#fffffff5;backdrop-filter:blur(16px);border-top:1px solid #e0e7e2;padding:9px 8px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px #16372a08}.discover-mobile-nav a,.discover-mobile-nav button{display:flex;align-items:center;flex-direction:column;gap:3px;padding:0;min-width:50px;border:0;background:none;color:#566961;text-decoration:none;font:500 10px 'DM Sans',sans-serif;cursor:pointer}.discover-mobile-nav span{font-size:26px;line-height:30px;font-family:Arial,sans-serif}.discover-mobile-nav a:first-child{color:#175b4b}.swmo-discover.modal-open .discover-mobile-nav,.swmo-discover:has(dialog[open]) .discover-mobile-nav{display:none}
}
@media(prefers-reduced-motion:reduce){.swmo-discover *{scroll-behavior:auto!important;transition:none!important}}
/* Override the legacy photo-overlay rail only inside the new homepage. */
body.swmo-discover #swmo-main-content #homepage-listings-preview #homepage-preview-grid { grid-template-columns:repeat(3,minmax(0,1fr))!important; max-height:none!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card { position:relative!important; height:auto!important; max-height:none!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .listing-card-photo-btn,
body.swmo-discover #swmo-main-content #homepage-preview-grid .listing-card-photo-wrap { position:relative!important; inset:auto!important; height:auto!important; aspect-ratio:auto!important; overflow:visible!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid img { position:static!important; inset:auto!important; width:100%!important; height:auto!important; aspect-ratio:1.48!important; object-fit:cover!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .listing-card-photo-overlay { display:flex!important; flex-direction:column!important; align-items:flex-start!important; justify-content:flex-start!important; gap:7px!important; background:#fff!important; transform:none!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .listing-card-photo-overlay p { margin:0!important; }
@media(max-width:767px) { body.swmo-discover #swmo-main-content #homepage-listings-preview #homepage-preview-grid { grid-template-columns:1fr!important; } }

/* Refinement pass: direct search language, readable addresses, homes first. */
.discover-section-head .discover-text-link { font-size:14px; }
.discover-card-info { padding:17px 18px; }
.discover-card-address { font-size:16px; line-height:1.45; margin:10px 0 11px; }
.discover-card-street { display:block; font-weight:650; color:#20352e; }
.discover-card-area { display:block; color:#54635c; margin-top:2px; font-size:14px; }
.discover-card-specs { font-size:14px; gap:6px; }
.discover-card-specs i { margin:0 4px; }
.discover-card-courtesy { font-size:10px; }
.discover-preferences { border-top:1px solid #e6ebe7; padding-top:14px; margin-top:16px; font-size:12px; color:#61746b; }
.discover-preferences summary { cursor:pointer; width:fit-content; padding:5px 0; min-height:32px; }
.discover-preferences .discover-context { margin:12px 0; }
.discover-preferences .discover-recent-searches { margin:10px 0; }
@media(max-width:767px) {
 body.swmo-discover .site-header,body.swmo-discover .header-wrap { height:64px!important; min-height:64px!important; }
 body.swmo-discover .header-nav.is-open { top:64px!important; }
 body.swmo-discover #hero.hero-cover { min-height:230px!important; margin:0!important; border-radius:0!important; padding:16px 20px 14px!important; }
 body.swmo-discover #hero .hero-title-main { font-size:46px!important; line-height:1.03!important; margin:0 0 14px!important; letter-spacing:-1.8px!important; }
 body.swmo-discover #hero .hero-search-kicker,body.swmo-discover #hero .hero-lead,body.swmo-discover #hero .hero-popular-cities { display:none!important; }
 body.swmo-discover #hero .hero-cover__overlay { background:linear-gradient(0deg,#102b3659,#102b3666)!important; }
 .discover-intents { display:none; }
 .discover-intents a { padding:6px 2px; font-size:13px; }
 body.swmo-discover #hero #hero-search-form { border-radius:10px!important; padding:6px!important; }
 body.swmo-discover #hero #hero-search-input { height:52px!important; padding:0 12px!important; font-size:16px!important; }
 body.swmo-discover #hero .hero-search-simple { min-height:52px!important; }
 body.swmo-discover #hero #hero-search-submit { width:46px!important; min-width:46px!important; height:48px!important; }
 .discover-search-extras { margin-top:10px; }
 #discover-location-status:empty { display:none; }
 body.swmo-discover #discover-for-you { padding:25px 20px 32px!important; }
 #discover-for-you .discover-section-head { gap:16px; margin-bottom:20px; align-items:flex-start; }
 #discover-for-you h2 { font-size:24px; line-height:1.18; letter-spacing:-.7px; margin:0 0 8px; }
 #discover-for-you .discover-section-head p { font-size:15px; line-height:1.4; color:#646971; }
 #discover-for-you .discover-text-link { display:inline-flex; align-items:center; min-height:44px; padding:0; max-width:none; font-size:12px; white-space:nowrap; }
 #discover-grid.discover-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; overflow:visible; padding:0; }
 #discover-grid .discover-card { width:100%; min-width:0; max-width:none; border-radius:13px; box-shadow:0 3px 13px #193a2914; }
 #discover-grid .discover-card-photo { aspect-ratio:1.8; }
 #discover-grid .discover-card-photo button { top:10px; right:10px; width:44px; height:44px; font-size:33px; }
 #discover-grid .discover-card-info { padding:15px 15px 16px; }
 #discover-grid .discover-card-info strong { font-size:32px; margin-bottom:10px; line-height:1; }
 #discover-grid .discover-card-specs { font-size:15px; line-height:1.4; gap:5px; margin-bottom:9px; }
 #discover-grid .discover-card-address { font-size:17px; line-height:1.35; margin:0 0 11px; }
 #discover-grid .discover-card-area { font-size:15px; margin-top:3px; }
 #discover-grid .discover-card-courtesy { font-size:10px; line-height:1.4; }
 #discover-grid .discover-skeleton { min-width:0; width:100%; }
 .discover-mobile-nav { padding-top:7px; padding-bottom:calc(7px + env(safe-area-inset-bottom)); }
 .discover-mobile-nav a,.discover-mobile-nav button { font-size:11px; min-height:44px; }
 .discover-mobile-nav svg { width:25px; height:25px; margin:1px 0 4px; }
 .discover-preferences .discover-context { font-size:12px; }
 .discover-preferences .discover-privacy { font-size:12px; }
 body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-price { font-size:30px!important; }
 body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-address { font-size:16px!important; line-height:1.45!important; white-space:normal!important; overflow:visible!important; }
 body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-meta { font-size:14px!important; line-height:1.45!important; }
 .discover-preferences button { min-height:44px; }
}
@media(max-width:359px) {
 body.swmo-discover #hero .hero-title-main { font-size:41px!important; }
 body.swmo-discover #hero.hero-cover { padding-left:16px!important; padding-right:16px!important; }
 body.swmo-discover #discover-for-you { padding-left:16px!important; padding-right:16px!important; }
 #discover-grid .discover-card-specs { font-size:13px; }
 #discover-for-you h2 { font-size:22px; }
}
@media(min-width:768px) and (max-width:1050px) {
 .swmo-discover #discover-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.swmo-discover #swmo-main-content #homepage-listings-preview #homepage-preview-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
 .discover-places strong { font-size:23px; }
}
/* Original SWMO roof-and-Ozarks wordmark; independent of old text-logo rules. */
body.swmo-discover #site-header .header-wrap .swmo-brand-link { display:flex!important; align-items:center!important; flex:0 0 auto!important; width:224px!important; max-width:none!important; min-width:0!important; padding:0!important; margin:0!important; line-height:0!important; text-decoration:none!important; }
body.swmo-discover #site-header .swmo-brandmark { display:block!important; width:224px!important; height:54px!important; overflow:visible; flex:none; }
@media(max-width:1050px) {
 body.swmo-discover #site-header .header-wrap .swmo-brand-link { width:194px!important; }
 body.swmo-discover #site-header .swmo-brandmark { width:194px!important; height:47px!important; }
}
@media(max-width:767px) {
 body.swmo-discover #site-header .header-wrap { padding-left:16px!important; padding-right:16px!important; }
 body.swmo-discover #site-header .header-wrap .swmo-brand-link { width:202px!important; }
 body.swmo-discover #site-header .swmo-brandmark { width:202px!important; height:48px!important; }
 body.swmo-discover #site-header .nav-toggle { box-shadow:none!important; border:0!important; border-radius:6px!important; }
}
@media(max-width:359px) {
 body.swmo-discover #site-header .header-wrap .swmo-brand-link { width:185px!important; }
 body.swmo-discover #site-header .swmo-brandmark { width:185px!important; height:44px!important; }
}
/* Never constrain a complete listing to the old photo-only 260px hit area. */
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card,
body.swmo-discover #swmo-main-content #homepage-preview-grid .homepage-preview-card-hit,
body.swmo-discover #swmo-main-content #homepage-preview-grid .listing-card-photo-wrap,
body.swmo-discover #swmo-main-content #homepage-preview-grid .listing-card-photo-overlay {
 height:auto!important; min-height:0!important; max-height:none!important; clip-path:none!important; contain:none!important;
}
body.swmo-discover #swmo-main-content #homepage-preview-grid .homepage-preview-card-hit { overflow:visible!important; }
body.swmo-discover #swmo-main-content #homepage-listings-preview { background:#fff!important; background-image:none!important; }
body.swmo-discover #swmo-main-content #homepage-listings-preview::before,
body.swmo-discover #swmo-main-content #homepage-listings-preview::after { display:none!important; }
body.swmo-discover #swmo-main-content #homepage-listings-preview>.container { width:100%!important; max-width:1280px!important; margin:0 auto!important; padding:0 40px!important; }
body.swmo-discover #swmo-main-content #homepage-listings-preview h2 { text-shadow:none!important; filter:none!important; line-height:1.2!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card { border-radius:13px!important; box-shadow:0 3px 13px #193a2914!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid img { aspect-ratio:1.8!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .listing-card-photo-overlay { padding:16px!important; gap:9px!important; text-align:left!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-price { order:0; font-size:30px!important; line-height:1.1!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-meta { order:1; font-size:15px!important; line-height:1.4!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-address { order:2; display:block!important; white-space:normal!important; -webkit-line-clamp:unset!important; font-size:17px!important; line-height:1.4!important; font-weight:650!important; color:#20352e!important; }
.discover-legacy-area { display:block; color:#54635c; font-size:15px; font-weight:400; margin-top:2px; }
.discover-legacy-courtesy { order:3; font-size:10px; line-height:1.4; color:#6d7877; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .discover-legacy-save { position:absolute!important; z-index:4; top:10px!important; right:10px!important; left:auto!important; width:44px!important; height:44px!important; border:0!important; border-radius:50%!important; background:#fff!important; color:#254c3f!important; font-size:33px!important; line-height:1!important; padding:0!important; box-shadow:0 2px 7px #0002!important; cursor:pointer; }
@media(max-width:767px) {
 body.swmo-discover #swmo-main-content #homepage-listings-preview>.container { padding:0 20px!important; }
 body.swmo-discover #swmo-main-content #homepage-listings-preview { padding:26px 0 34px!important; }
 body.swmo-discover #swmo-main-content #homepage-listings-preview h2 { font-size:24px!important; letter-spacing:-.6px!important; }
 body.swmo-discover #swmo-main-content #homepage-preview-grid { gap:24px!important; }
 body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-price { font-size:32px!important; }
}
/* Native touch scrolling keeps photo swipes independent of vertical page scroll. */
body.swmo-discover #swmo-main-content .discover-photo-track {
 display:flex!important; width:100%!important; aspect-ratio:1.8!important;
 overflow-x:auto!important; overflow-y:hidden!important; scroll-snap-type:x mandatory;
 scrollbar-width:none; overscroll-behavior-x:contain; border-radius:0;
}
.discover-photo-track::-webkit-scrollbar { display:none; }
body.swmo-discover #swmo-main-content .discover-photo-track img {
 position:static!important; display:block!important; flex:0 0 100%!important;
 width:100%!important; min-width:100%!important; max-width:100%!important;
 height:100%!important; aspect-ratio:1.8!important; object-fit:cover!important;
 scroll-snap-align:start; transform:none!important; filter:none!important;
}
body.swmo-discover #swmo-main-content .discover-gallery-controls {
 position:absolute!important; top:0!important; left:0!important; width:100%!important;
 aspect-ratio:1.8; pointer-events:none; z-index:3;
}
body.swmo-discover #swmo-main-content .discover-gallery-controls button {
 pointer-events:auto; position:static!important; padding:0!important; margin:0!important;
 border:0!important; cursor:pointer; box-shadow:none!important; line-height:1!important;
}
body.swmo-discover #swmo-main-content .discover-gallery-controls .discover-gallery-prev,
body.swmo-discover #swmo-main-content .discover-gallery-controls .discover-gallery-next {
 position:absolute!important; top:50%!important; transform:translateY(-50%);
 width:34px!important; height:34px!important; border-radius:50%!important;
 background:#ffffffed!important; color:#173f35!important; font:30px Arial!important;
 box-shadow:0 1px 5px #0003!important;
}
body.swmo-discover #swmo-main-content .discover-gallery-controls .discover-gallery-prev { left:9px!important; right:auto!important; }
body.swmo-discover #swmo-main-content .discover-gallery-controls .discover-gallery-next { right:9px!important; left:auto!important; }
body.swmo-discover #swmo-main-content .discover-gallery-controls button:disabled { opacity:0; pointer-events:none; }
body.swmo-discover #swmo-main-content .discover-gallery-dots {
 position:absolute; bottom:9px; left:50%; transform:translateX(-50%); display:flex;
 gap:0; padding:0 6px; border-radius:20px; background:#0005;
}
body.swmo-discover #swmo-main-content .discover-gallery-controls .discover-gallery-dot {
 width:22px!important; height:26px!important; background:transparent!important;
 border-radius:0!important; display:grid; place-items:center;
}
.discover-gallery-dot::after { content:''; width:6px; height:6px; border-radius:50%; background:#ffffff85; }
.discover-gallery-dot[aria-current=true]::after { background:#fff; width:8px; height:8px; }
.discover-gallery-controls button:focus-visible { outline:3px solid #175b4b!important; outline-offset:2px; }
/* A shorter homepage: search, two useful home collections, one seller invitation. */
html body.swmo-discover #discover-collections,
html body.swmo-discover #discover-agent,
html body.swmo-discover #browse-categories,
html body.swmo-discover #home-value-promo,
html body.swmo-discover #seller-cta,
html body.swmo-discover #most-viewed-homes,
html body.swmo-discover #featured-homes,
html body.swmo-discover #luxury-homes,
html body.swmo-discover #homepage-preview-pagination,
html body.swmo-discover #swmo-lead-fab,
html body.swmo-discover main>section[aria-labelledby="regional-service-title"] { display:none!important; }
html body.swmo-discover #homepage-preview-grid>article:nth-of-type(n+5) { display:none!important; }
html body.swmo-discover #swmo-main-content #homepage-preview-grid .zillow-card-tags { display:none!important; }
html body.swmo-discover #swmo-main-content #homepage-preview-grid .discover-legacy-status { position:absolute; top:11px; left:11px; z-index:3; padding:6px 10px; background:#fffffff2; color:#245547; font-size:11px; font-weight:700; border-radius:5px; box-shadow:0 1px 5px #0001; }
html body.swmo-discover #swmo-main-content #homepage-listings-preview { padding-top:30px!important; }
html body.swmo-discover #homepage-preview-grid .listing-card-price-drop { font-size:12px!important; font-weight:500!important; order:3; color:#59685f!important; }
html body.swmo-discover #swmo-main-content #homepage-listings-preview .homepage-preview-more { background:#fff!important; color:#175b4b!important; border:1px solid #cbd9d2!important; box-shadow:none!important; border-radius:8px!important; padding:11px 20px!important; min-height:44px!important; font-size:14px!important; }
html body.swmo-discover #homepage-preview-view-all-top { display:none!important; }
html body.swmo-discover .discover-section { padding-top:32px; padding-bottom:26px; }
html body.swmo-discover .discover-seller-simple { max-width:1200px; margin:12px auto 40px; padding:28px 32px; background:#f3f6f3; border:1px solid #e1e7e2; border-radius:12px; display:flex; gap:28px; align-items:center; justify-content:space-between; }
.discover-seller-simple h2 { margin:0 0 8px; color:#193e32; font-size:26px; line-height:1.2; letter-spacing:-.5px; }
.discover-seller-simple p { margin:0; max-width:620px; font-size:15px; line-height:1.6; color:#52645b; }
.discover-seller-simple>a { flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; gap:18px; padding:12px 18px; min-height:46px; background:#175b4b; color:#fff; border-radius:7px; text-decoration:none; font-size:14px; font-weight:650; }
html body.swmo-discover:is(body,#swmo-calm-scope) .site-footer.site-footer--compliant { background:#f7f8f7!important; color:#42564b!important; border-top:1px solid #dce4dd!important; padding:32px 20px calc(92px + env(safe-area-inset-bottom,0px))!important; }
html body.swmo-discover:is(body,#swmo-calm-scope) .site-footer :is(p,span,small,nav) { color:#42564b!important; opacity:1!important; text-shadow:none!important; }
html body.swmo-discover:is(body,#swmo-calm-scope) .site-footer a { color:#175b4b!important; opacity:1!important; text-shadow:none!important; text-decoration:underline; text-underline-offset:3px; }
html body.swmo-discover:is(body,#swmo-calm-scope) .site-footer .footer-inner { max-width:1120px!important; margin:auto!important; padding:0!important; }
html body.swmo-discover:is(body,#swmo-calm-scope) .site-footer .footer-links { display:flex!important; flex-wrap:wrap; justify-content:center; gap:12px 20px; margin:22px 0!important; font-size:12px!important; line-height:1.6!important; }
html body.swmo-discover:is(body,#swmo-calm-scope) .site-footer .footer-fair { font-size:12px!important; line-height:1.7!important; max-width:980px; margin:12px auto!important; }
html body.swmo-discover:is(body,#swmo-calm-scope) .site-footer :is(.footer-tagline,.footer-office,.footer-legal) { font-size:13px!important; line-height:1.7!important; margin:10px 0!important; }
@media(max-width:767px){
 html body.swmo-discover .discover-seller-simple { margin:8px 20px 30px; padding:24px; display:block; }
 .discover-seller-simple h2 { font-size:23px; }
 .discover-seller-simple>a { margin-top:18px; }
}
@media(min-width:768px){html body.swmo-discover .site-footer.site-footer--compliant { padding-bottom:40px!important; }}
@media(min-width:1100px){html body.swmo-discover #homepage-preview-grid { grid-template-columns:repeat(4,minmax(0,1fr))!important; }}
/* Price-first hierarchy: strong black amount, a compact facts row, full address. */
.swmo-discover #discover-grid .discover-card-info strong,
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-price {
 color:#111116!important; font-family:'DM Sans',Arial,sans-serif!important; font-weight:900!important;
 font-size:34px!important; line-height:1.1!important; letter-spacing:-1.2px!important; text-shadow:none!important;
}
.swmo-discover #discover-grid .discover-card-info { padding:15px 16px 16px; }
.swmo-discover #discover-grid .discover-card-info strong { margin-bottom:10px; }
.swmo-discover #discover-grid .discover-card-specs { color:#222229; display:flex; flex-wrap:wrap; align-items:baseline; gap:4px; font-size:14px; line-height:1.5; margin:0 0 8px; white-space:normal; }
.swmo-discover #discover-grid .discover-card-specs b { font-weight:700; }
.swmo-discover #discover-grid .discover-card-specs i { display:inline-block; background:#73737a; height:13px; width:1px; margin:0 4px; align-self:center; }
.swmo-discover #discover-grid .discover-card-address { color:#25252b; font-size:16px; line-height:1.5; font-weight:400; }
.swmo-discover #discover-grid .discover-card-street { display:inline; font-weight:400; color:inherit; }
.swmo-discover #discover-grid .discover-card-area { display:inline; color:inherit; font-size:inherit; margin:0; }
.swmo-discover #discover-grid .discover-card-area::before { content:', '; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-meta { color:#222229!important; font-size:14px!important; line-height:1.5!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-address { color:#25252b!important; font-size:16px!important; line-height:1.5!important; font-weight:400!important; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .discover-legacy-area { display:inline; color:inherit; font-size:inherit; margin:0; }
body.swmo-discover #swmo-main-content #homepage-preview-grid .discover-legacy-area::before { content:', '; }
@media(max-width:359px) {
 .swmo-discover #discover-grid .discover-card-info strong,body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-price { font-size:30px!important; }
 .swmo-discover #discover-grid .discover-card-specs,body.swmo-discover #swmo-main-content #homepage-preview-grid .premium-card-meta { font-size:12px!important; }
}
