/* ks-sv4.css — Search pages look (Search Pages Template V4), scoped to body.ks-nb. Pass 4, 2026-10-18 (was the inline
   <style id="ks-sv4"> in agentspot-karen-theme.php). Low-weight defaults: no !important.
   The metric tiles reset paragraph margins with :where() (zero weight) so each tile line's own spacing wins.
   Grids, rows and the Karen photo|text columns take their desktop layout from the blocks' own settings; the
   @media rules at the end are the tablet/phone defaults. */

/* unpositioned = centred grid, for the same reason as .nb-hero (ks-nb.css) */
body.ks-nb .sv4-hero{min-height:82vh;margin:0;text-align:center}
body.ks-nb .sv4-hero:not(.has-custom-content-position){display:grid;place-items:center}
body.ks-nb .sv4-hero .wp-block-cover__inner-container{width:min(900px,92%);padding:140px 0 75px;color:#fff}
body.ks-nb .sv4-kicker{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#e2c991;font-weight:600;margin:0}
body.ks-nb .sv4-hero h1{color:#fff;margin:14px auto 22px}
body.ks-nb .sv4-hero-sub{max-width:760px;margin:0 auto;color:#fff;font-size:17px;line-height:1.75}
body.ks-nb .nb-section.sv4-search{padding:0 0 30px;background:#fff}
body.ks-nb .sv4-search-panel{margin:-48px auto 0;position:relative;z-index:5;background:#fff;border:1px solid var(--line);padding:28px;box-shadow:0 14px 32px rgba(0,0,0,.07)}
body.ks-nb .sv4-search-head h2{font-size:40px;margin:0 0 20px}
body.ks-nb .sv4-search-panel .ks-search,body.ks-nb .sv4-search-panel .ks-search-more,body.ks-nb .sv4-search-panel .ks-search-done{max-width:none;margin:0;box-shadow:none;border:1px solid var(--line)}
body.ks-nb .sv4-search-panel .ks-search-more{border-top:0}
body.ks-nb .sv4-search-panel .ks-search button,body.ks-nb .sv4-search-panel .ks-search-more button{background:#171717}
body.ks-nb .sv4-search-panel .ks-search-note{max-width:none;text-align:left;padding:0}
body.ks-nb .sv4 .wrap>h2{max-width:900px}
body.ks-nb .sv4-copy{max-width:920px;margin-top:24px}
body.ks-nb .sv4-copy p{font-size:16px;line-height:1.88;margin:0 0 20px}
body.ks-nb .sv4-head{max-width:920px;margin-bottom:28px}
body.ks-nb .sv4-head .sv4-lede{max-width:820px;margin:14px 0 0;color:var(--muted)}
body.ks-nb .sv4-idx-shell{border:1px solid var(--line);background:#fff}
body.ks-nb .sv4-chips{padding:15px 18px;border-bottom:1px solid var(--line)}
body.ks-nb .sv4-chip{padding:7px 10px;border:1px solid var(--line);font-size:10px;line-height:1.2;letter-spacing:.1em;text-transform:uppercase;color:#65635f;margin:0}
body.ks-nb .sv4-idx-placeholder{min-height:280px;display:grid;place-items:center;align-content:center;text-align:center;background:#fafafa;padding:30px}
body.ks-nb .sv4-idx-placeholder h3{font-size:34px;margin:0 0 8px}
body.ks-nb .sv4-idx-placeholder p{font-size:13px;color:#777;max-width:560px;margin:0 auto 18px}
body.ks-nb .sv4-idx-placeholder .wp-block-buttons{justify-content:center}
body.ks-nb .sv4-market-chart{background:#fff;border:1px solid #d4d4d4}
body.ks-nb .sv4-market-titlebar{padding:14px 18px;border-bottom:1px solid #d4d4d4}
body.ks-nb .sv4-mt-title{font-family:var(--nbserif);font-size:22px;margin:0;color:var(--ink)}
body.ks-nb .sv4-mt-sub{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#6a6966;margin:0}
body.ks-nb .sv4-metric{position:relative;padding:28px 22px 24px;min-height:245px;background:#fff;border-right:1px solid #d4d4d4;transition:transform .22s ease,box-shadow .22s ease}
body.ks-nb .sv4-metric:last-child{border-right:0}
body.ks-nb .sv4-metric:hover{transform:translateY(-5px);box-shadow:0 16px 32px rgba(0,0,0,.10);z-index:3}
body.ks-nb .sv4-metric :where(p){margin:0}
body.ks-nb .sv4-metric-label{font-family:var(--nbserif);font-size:22px;line-height:1.15;color:#222;min-height:50px;margin-bottom:14px}
body.ks-nb .sv4-metric-value{font-size:clamp(26px,2.6vw,40px);letter-spacing:-.03em;line-height:1;color:var(--ink);white-space:nowrap}
body.ks-nb .sv4-metric-change{font-size:11px;margin-top:10px;color:#7b5b2b;line-height:1.4}
body.ks-nb .sv4-metric-prev{font-size:11px;color:#888;line-height:1.4}
body.ks-nb .sv4-bars{display:flex;gap:9px;align-items:flex-end;margin-top:20px;height:46px;border-bottom:1px solid #ececec}
body.ks-nb .sv4-bar{width:26px;background:#9b9b9b;transition:height .35s ease,background .2s ease}
body.ks-nb .sv4-bar.cur{background:#171717}
body.ks-nb .sv4-metric:hover .sv4-bar.cur{background:var(--gold)}
body.ks-nb .sv4-bar-labels{display:flex;gap:19px;margin-top:5px;font-size:8px;color:#777}
body.ks-nb .sv4-market-foot{padding:10px 16px;font-size:11px;color:#666;border-top:1px solid #d4d4d4;margin:0;line-height:1.6}
body.ks-nb .sv4-nb-card{background:#fff;border:1px solid var(--line);overflow:hidden;margin:0}
body.ks-nb .sv4-nb-media{margin:0;height:230px;overflow:hidden;background:#222}
body.ks-nb .sv4-nb-media img{width:100%;height:230px;object-fit:cover;filter:saturate(.82);transition:transform .6s ease}
body.ks-nb .sv4-nb-card:hover .sv4-nb-media img{transform:scale(1.04)}
body.ks-nb .sv4-nb-body{padding:21px}
body.ks-nb .sv4-nb-body h3{font-size:28px;margin:0 0 8px}
body.ks-nb .sv4-nb-body h3 a{color:var(--ink);text-decoration:none}
body.ks-nb .sv4-nb-body p{font-size:13px;line-height:1.65;min-height:58px;margin-bottom:16px}
body.ks-nb .sv4-dev-card{background:#fff;border:1px solid var(--line);padding:26px}
body.ks-nb .sv4-dev-card .sv4-dev-num{font-size:11px;letter-spacing:.18em;color:#8f743b;margin:0 0 10px}
body.ks-nb .sv4-dev-card h3{font-size:26px;margin:0 0 10px}
body.ks-nb .sv4-dev-card p{font-size:13.5px;line-height:1.7}
body.ks-nb .sv4-karen{gap:62px}
body.ks-nb .sv4-karen-img img{height:480px;width:100%;object-fit:cover;object-position:center top}
body.ks-nb .sv4-karen-copy h2{margin-bottom:18px}
body.ks-nb .sv4-explore-card{margin:0;min-height:290px;align-items:flex-end;justify-content:flex-start;padding:22px;transition:transform .2s ease}
body.ks-nb .sv4-explore-card:hover{transform:translateY(-2px)}
body.ks-nb .sv4-explore-card .wp-block-cover__inner-container{color:#fff;max-width:560px;margin:0}
body.ks-nb .sv4-explore-card h3{font-size:34px;margin:0 0 8px;color:#fff}
body.ks-nb .sv4-explore-card h3 a{color:#fff;text-decoration:none}
body.ks-nb .sv4-explore-card h3 a::after{content:'  ↗';font-family:var(--nbsans);font-size:20px}
body.ks-nb .sv4-explore-card p{font-size:13.5px;line-height:1.7;color:rgba(255,255,255,.88);margin:0}
body.ks-nb .sv4-cta{background:#121212;color:#fff;text-align:center;padding:105px 20px;margin:0}
body.ks-nb .sv4-cta h2{color:#fff}
body.ks-nb .sv4-cta-sub{color:rgba(255,255,255,.72);max-width:720px;margin:0 auto 28px}
@media(max-width:1000px){body.ks-nb .sv4-nb-grid,body.ks-nb .sv4-dev-grid{grid-template-columns:repeat(2,1fr)}body.ks-nb .sv4-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}body.ks-nb .sv4-metric:nth-child(2n){border-right:0}body.ks-nb .sv4-metric:nth-child(5){grid-column:1 / span 2;border-right:0}body.ks-nb .sv4-metric{border-bottom:1px solid #d4d4d4}}
@media(max-width:660px){body.ks-nb .sv4-search-panel{padding:20px}body.ks-nb .sv4-nb-grid,body.ks-nb .sv4-dev-grid,body.ks-nb .sv4-explore-grid,body.ks-nb .sv4-metrics{grid-template-columns:1fr}body.ks-nb .sv4-metric,body.ks-nb .sv4-metric:nth-child(5){grid-column:auto;border-right:0}body.ks-nb .sv4-market-titlebar{display:block}body.ks-nb .sv4-karen-img img{height:360px}}

/* Phones: same as .agent in ks-nb.css — stacked Karen photo|text columns keep their content width. */
@media(max-width:768px){body.ks-nb .sv4-karen>.wp-block-column{width:auto}}
