/* 0.26.0 homepage: hero with tabbed search, quick links, company and broker, stats, featured, places, appraisal. */
.crh{--ink:#18364a;--ink-deep:#0f2737;--muted:#5d7383;--soft:#f3f5f6;--line:rgba(24,54,74,.12);--accent:#3b6a8c;--ease:cubic-bezier(.32,.72,0,1);--serif:Adamina,Georgia,serif;--sans:'Clarity City',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;width:100%;background:#fff;color:var(--ink);font-family:var(--sans);font-weight:300;overflow-x:clip}
.crh *{box-sizing:border-box}
.crh :is(h1,h2,h3){font-family:var(--serif)!important;font-weight:400!important;color:inherit;margin:0;text-wrap:balance}
.crh :is(p,a,span,li,label,button,select,input,dt,dd,small){font-family:var(--sans)!important}
.crh a{color:inherit}
.crh-skip{position:absolute;left:-9999px}.crh-skip:focus{left:16px;top:16px;z-index:100;padding:10px 14px;background:#fff;color:var(--ink)}
.crh-wrap{width:min(1300px,calc(100% - 64px));margin-inline:auto}
.crh-eyebrow{margin:0 0 14px;font-size:11px;font-weight:500!important;letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}
.crh-eyebrow-light{color:rgba(255,255,255,.85)}
.crh-rule{display:block;width:44px;height:2px;margin:22px 0;background:var(--accent)}
.crh-lead{max-width:52ch;margin:0;font-size:16px;line-height:1.75;color:#3f5868}
.crh .crh-button{display:inline-flex;align-items:center;gap:12px;min-height:50px;padding:12px 26px;border-radius:4px;background:var(--ink);color:#fff!important;font-size:14px;font-weight:500!important;letter-spacing:.03em;text-decoration:none;transition:background-color 300ms,transform 400ms var(--ease)}
.crh-button svg,.crh-link svg,.crh-hero-explore svg{width:15px;height:15px;transition:transform 400ms var(--ease)}
.crh-button:hover{background:var(--ink-deep)}.crh-button:hover svg,.crh-link:hover svg,.crh-hero-explore:hover svg{transform:translateX(3px)}
.crh-button:active{transform:scale(.98)}
.crh .crh-link{display:inline-flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid currentColor;color:var(--ink)!important;font-size:13.5px;font-weight:500!important;text-decoration:none;white-space:nowrap}
.crh :focus-visible{outline:2px solid #41738c;outline-offset:3px}
/* Hero */
.crh-hero{position:relative;display:flex;align-items:center;min-height:clamp(600px,88vh,860px);padding:calc(var(--crn-h,76px) + 40px) 0 150px;color:#fff;isolation:isolate;overflow:hidden;background:var(--ink)}
.crh-hero-media{position:absolute;inset:0;z-index:-2}
.crh-hero-media :is(img,video){position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover}
.crh-hero-media video{opacity:0;transition:opacity 1.2s var(--ease)}.crh-hero-media video.is-playing{opacity:1}
.crh-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,26,38,.62) 0%,rgba(9,26,38,.32) 42%,rgba(9,26,38,0) 70%),linear-gradient(180deg,rgba(9,26,38,.18) 0%,rgba(9,26,38,0) 30%,rgba(9,26,38,0) 70%,rgba(9,26,38,.35) 100%)}
.crh-hero-copy{position:relative}
.crh-hero h1{max-width:16ch;font-size:clamp(46px,6.4vw,92px);line-height:1.02;letter-spacing:-.01em;color:#fff}
.crh .crh-hero-intro{max-width:46ch;margin:22px 0 0;font-size:clamp(15px,1.3vw,18px);line-height:1.65;color:rgba(255,255,255,.9)}
.crh .crh-hero-explore{display:inline-flex;align-items:center;gap:10px;margin-top:26px;padding-bottom:4px;border-bottom:1px solid #fff;color:#fff!important;font-size:14px;font-weight:500!important;text-decoration:none}
.crh .crh-video-toggle{position:absolute;right:0;bottom:-100px;padding:8px 14px;border:1px solid rgba(255,255,255,.5);border-radius:4px;background:rgba(9,26,38,.25);color:#fff;font-size:12px;cursor:pointer}
/* Search card */
.crh-search{position:relative;z-index:3}
.crh-search-card{background:#fff;border-radius:6px;box-shadow:0 30px 70px -30px rgba(9,26,38,.45),0 0 0 1px rgba(24,54,74,.06)}
.crh-tabs{display:flex;gap:0;padding:0 8px;border-bottom:1px solid var(--line)}
.crh .crh-tabs button{position:relative;padding:18px 20px 16px;border:0;background:none;color:var(--muted);font-size:12px;font-weight:500!important;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:color 200ms}
.crh-tabs button:after{content:"";position:absolute;left:20px;right:20px;bottom:-1px;height:2px;background:var(--ink);transform:scaleX(0);transition:transform 400ms var(--ease)}
.crh-tabs button[aria-selected=true]{color:var(--ink)}.crh-tabs button[aria-selected=true]:after{transform:scaleX(1)}
.crh-tabs button:hover{color:var(--ink)}
.crh-search-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:14px;align-items:end;padding:22px 24px 24px}
.crh-search-form[hidden]{display:none}
.crh-search-id{grid-template-columns:minmax(0,1fr) auto}
.crh .crh-search-form label{display:grid;gap:7px;font-size:11px;font-weight:500!important;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.crh .crh-search-form :is(select,input){width:100%;height:50px;padding:0 14px;border:1px solid #d6e0e6;border-radius:4px;background:#fff;color:var(--ink);font-size:15px;font-weight:400!important;letter-spacing:0;text-transform:none;transition:border-color 200ms;appearance:auto}
.crh-search-form :is(select,input):hover{border-color:#9fb3c0}
.crh .crh-search-submit{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;padding:0 26px;border:0;border-radius:4px;background:var(--ink);color:#fff!important;font-size:14px;font-weight:500!important;letter-spacing:.03em;white-space:nowrap;cursor:pointer;transition:background-color 300ms}
.crh-search-submit svg{width:17px;height:17px}.crh-search-submit:hover{background:var(--ink-deep)}
/* Quick links */
.crh-quick{padding:clamp(48px,6vw,80px) 0 clamp(24px,3vw,40px)}
.crh-quick ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none}
.crh-quick li+li{border-left:1px solid var(--line)}
.crh-quick a{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 18px 14px;text-align:center;text-decoration:none;transition:transform 400ms var(--ease)}
.crh-quick a:hover{transform:translateY(-3px)}
.crh-icon{width:34px;height:34px;color:var(--ink)}
.crh-quick .crh-icon{margin-bottom:8px}
.crh .crh-quick-title{font-family:var(--serif)!important;font-size:19px;color:var(--ink)}
.crh .crh-quick-sub{font-size:13px;color:var(--muted)}
/* Company and broker */
.crh-company{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);align-items:center;padding:clamp(72px,9vw,130px) 0}
.crh-company h2{font-size:clamp(38px,4.4vw,62px);line-height:1.06}
.crh-company .crh-button{margin-top:30px}
.crh-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:42px 0 0;padding:0;list-style:none}
.crh-values li{display:flex;flex-direction:column;align-items:center;gap:10px;padding:4px 12px;text-align:center;font-size:13.5px;color:#3f5868}
.crh-values li+li{border-left:1px solid var(--line)}
.crh-values .crh-icon{width:30px;height:30px}
.crh-broker{margin:0;position:relative}
.crh-broker:before{content:"";position:absolute;inset:-28px -28px 120px 18%;z-index:-1;background:repeating-radial-gradient(circle at 80% 30%,transparent 0 18px,rgba(24,54,74,.05) 18px 19px)}
.crh-broker-photo{display:block;aspect-ratio:4/5;max-height:620px;overflow:hidden;background:var(--soft)}
.crh-broker-photo :is(img){display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center 20%;transition:transform 1.4s var(--ease)}
.crh-broker-photo:hover img{transform:scale(1.03)}
.crh-broker-photo .cr-team-initials{display:grid;place-items:center;height:100%;font:400 90px var(--serif);color:rgba(24,54,74,.25)}
.crh-broker figcaption{padding-top:24px}
.crh-broker figcaption .crh-eyebrow{margin-bottom:10px}
.crh-broker h3{font-size:clamp(26px,2.4vw,34px)}
.crh-broker .crh-rule{margin:16px 0}
.crh-broker-empty{display:grid;place-items:center;aspect-ratio:4/5;background:var(--soft);font:400 120px var(--serif);color:rgba(24,54,74,.2)}
/* Stats band */
.crh-stats{position:relative;isolation:isolate;padding:clamp(56px,7vw,96px) 0;background:var(--ink);color:#fff;overflow:hidden}
.crh-stats-bg{position:absolute;inset:0;z-index:-2;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover}
.crh-stats:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,39,55,.88),rgba(24,54,74,.72))}
.crh-stats dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0}
.crh-stats dl>div{display:flex;flex-direction:column-reverse;align-items:center;gap:8px;padding:6px 20px;text-align:center}
.crh-stats dl>div+div{border-left:1px solid rgba(255,255,255,.22)}
.crh .crh-stats dd{margin:0;font-family:var(--serif)!important;font-size:clamp(34px,3.6vw,52px);line-height:1.05;color:#fff}
.crh .crh-stats dt{font-size:14px;color:rgba(255,255,255,.82)}
/* Section heads */
.crh-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:36px}
.crh-head h2{font-size:clamp(32px,3.4vw,48px);line-height:1.1}
.crh-head .crh-rule{margin:18px 0 0}
.crh .crh-sub{max-width:60ch;margin:14px 0 0;font-size:15px;line-height:1.7;color:var(--muted)}
/* Featured */
.crh-featured{padding:clamp(72px,9vw,120px) 0 clamp(40px,5vw,72px)}
.crh-head-actions{display:flex;align-items:center;gap:22px}
/* Places */
/* Appraisal invitation */
/* Cards inside the homepage keep the site card styles. */
.crh .cr-pcard-title{font-family:var(--serif)!important}
/* Responsive */
@media(max-width:1000px){.crh-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.crh-search-form .crh-search-submit{grid-column:1/-1}.crh-search-id{grid-template-columns:1fr}.crh-quick ul{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px}.crh-quick li:nth-child(3){border-left:0}.crh-company{grid-template-columns:1fr}.crh-stats dl>div:nth-child(3){border-left:0}}
@media(max-width:650px){.crh-wrap{width:calc(100% - 32px)}.crh-hero{min-height:620px;padding-bottom:120px}.crh-hero-media img{object-position:var(--cr-mobile-x,50%) var(--cr-mobile-y,50%);object-fit:var(--cr-mobile-fit,cover)}.crh-tabs{padding:0;overflow-x:auto}.crh .crh-tabs button{padding:16px 14px 14px;font-size:11px;letter-spacing:.12em;white-space:nowrap}.crh-search-form{grid-template-columns:1fr;padding:18px}.crh-values{grid-template-columns:1fr;gap:18px}.crh-values li+li{border-left:0}.crh-head{flex-direction:column;align-items:flex-start}.crh-stats dl>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding-top:18px}.crh-stats dl{gap:18px}}
@media(max-width:420px){.crh-quick ul{grid-template-columns:1fr}.crh-quick li+li{border-left:0;border-top:1px solid var(--line);padding-top:14px}}
@media(prefers-reduced-motion:reduce){.crh *{transition:none!important}}
/* 0.26.1 full width inside Elementor's boxed containers: remove the box around the homepage only. */
body:has(.crh) :is(.e-con,.e-con-inner,.elementor-section,.elementor-container,.elementor-column,.elementor-widget-wrap,.elementor-widget-container,.elementor-shortcode,.elementor-element):has(.crh){max-width:none!important;width:100%!important;padding:0!important;margin:0!important;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--content-width:100%;--container-max-width:100%}
html:has(.crh),body:has(.crh){overflow-x:clip}
@supports not selector(:has(*)){.crh{width:100vw;margin-left:calc(50% - 50vw)}}
/* Keyword field with rotating examples. */
.crh-search-form{grid-template-columns:minmax(0,2.2fr) repeat(3,minmax(0,1fr)) auto}
.crh-keyword{position:relative}
.crh-keyword-example{position:absolute;left:15px;bottom:15px;font-size:15px;color:#7d909c;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity 260ms var(--ease),transform 260ms var(--ease)}
.crh-keyword.has-example .crh-keyword-example{opacity:1;transform:none}
.crh-keyword.has-example .crh-keyword-example.is-switching{opacity:0;transform:translateY(-6px)}
.crh-keyword.has-example input::placeholder{color:transparent}
/* Price range: button opening a histogram slider. */
.crh-price{position:relative}
.crh .crh-price-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:50px;padding:0 14px;border:1px solid #d6e0e6;border-radius:4px;background:#fff;color:var(--ink);font-size:15px;font-weight:400!important;letter-spacing:0;text-transform:none;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crh-price-trigger:after{content:"";flex-shrink:0;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.crh-price-trigger[aria-expanded=true]{border-color:var(--ink)}
.crh-price-pop{position:absolute;z-index:20;top:calc(100% + 10px);left:50%;width:min(420px,calc(100vw - 32px));padding:22px 22px 18px;border-radius:8px;background:#fff;box-shadow:0 24px 60px -20px rgba(9,26,38,.4),0 0 0 1px rgba(24,54,74,.08);transform:translateX(-50%);text-transform:none;letter-spacing:0}
.crh-price-pop[hidden]{display:none}
.crh .crh-price-title{margin:0 0 14px;font-family:var(--serif)!important;font-size:19px;color:var(--ink)}
.crh-hist{position:relative;height:92px;margin:0 9px}
.crh-bars{position:absolute;left:0;right:0;bottom:12px;height:64px;display:flex;align-items:flex-end;gap:3px}
.crh-bars i{flex:1;min-height:3px;border-radius:2px 2px 0 0;background:#d3dbe0;transition:background-color 200ms}
.crh-bars i.is-in{background:#5f86a0}
.crh-track{position:absolute;left:0;right:0;bottom:11px;height:2px;background:#d3dbe0}
.crh-track span{position:absolute;top:0;bottom:0;background:var(--ink)}
.crh-hist input[type=range]{position:absolute;left:-9px;right:-9px;bottom:0;width:calc(100% + 18px);height:24px;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none}
.crh-hist input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border:3px solid var(--ink);border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(9,26,38,.25);pointer-events:auto;cursor:grab}
.crh-hist input[type=range]::-moz-range-thumb{width:18px;height:18px;border:3px solid var(--ink);border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(9,26,38,.25);pointer-events:auto;cursor:grab}
.crh-hist input[type=range]::-webkit-slider-runnable-track{background:none}
.crh-hist input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid #41738c;outline-offset:2px}
.crh .crh-bubble{position:absolute;top:0;padding:4px 9px;border-radius:5px;background:var(--ink);color:#fff;font-size:12.5px;font-weight:500!important;white-space:nowrap;transform:translateX(-50%);pointer-events:none}
.crh-price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
.crh .crh-price-inputs label{display:grid;gap:6px;font-size:12px;letter-spacing:.04em;text-transform:none;color:var(--muted)}
.crh-price-box{display:flex;align-items:center;height:46px;border:1px solid #d6e0e6;border-radius:6px;overflow:hidden}
.crh-price-box:focus-within{border-color:var(--ink)}
.crh-price-box b{display:grid;place-items:center;width:22px;height:22px;margin:0 10px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;font-weight:600}
.crh .crh-price-box input{flex:1;min-width:0;height:100%;padding:0 10px;border:0;border-left:1px solid #d6e0e6;border-radius:0;outline:0;font-size:15px}
.crh-price-actions{display:flex;justify-content:space-between;align-items:center;margin-top:16px}
.crh .crh-price-actions button{height:38px;padding:0 16px;border-radius:4px;font-size:13px;cursor:pointer}
.crh .crh-price-clear{border:0;background:none;color:var(--muted);text-decoration:underline;text-underline-offset:3px;padding:0!important}
.crh .crh-price-done{border:0;background:var(--ink);color:#fff!important}
@media(max-width:1180px){.crh-search-form{grid-template-columns:repeat(3,minmax(0,1fr))}.crh-search-form .crh-keyword{grid-column:1/-1}.crh-search-form .crh-search-submit{grid-column:1/-1}}
@media(max-width:650px){.crh-search-form{grid-template-columns:1fr}.crh-price-pop{left:0;transform:none;width:100%}}

.crh .crh-price-field{display:grid;gap:7px}
.crh .crh-price-caption{font-size:11px;font-weight:500!important;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.crh-bubble[hidden]{display:none}
.crh .crh-keyword-example{font-size:15px;font-weight:400!important;letter-spacing:0;text-transform:none}
.crh .crh-search-form .crh-hist input[type=range]{height:24px;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.crh .crh-search-form .crh-price-box input{height:100%;padding:0 10px;border:0;border-left:1px solid #d6e0e6;border-radius:0;background:#fff}
.crh .crh-hist input[type=range]:focus-visible{outline:none}
.crh .crh-hist input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(65,115,140,.35),0 2px 8px rgba(9,26,38,.25)}
.crh .crh-hist input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px rgba(65,115,140,.35)}
/* 0.27.0 full-screen hero: centred headline, two actions, the tabbed search inside the hero, tagline and scroll cue. */
.crh-hero{min-height:100svh;padding:calc(var(--crn-h,76px) + 48px) 0 96px;text-align:center;justify-content:center}
.crh-hero-shade{background:linear-gradient(180deg,rgba(9,26,38,.30) 0%,rgba(9,26,38,.10) 28%,rgba(9,26,38,.18) 55%,rgba(9,26,38,.55) 100%)}
.crh-hero-copy{display:flex;flex-direction:column;align-items:center}
.crh-hero h1{max-width:none;font-size:clamp(44px,6vw,88px);line-height:1.04;text-shadow:0 2px 30px rgba(9,26,38,.35)}
.crh-hero h1 em{font-style:italic;font-family:var(--serif)!important}
.crh .crh-hero-intro{max-width:56ch;margin:18px auto 0;text-shadow:0 1px 16px rgba(9,26,38,.4)}
.crh-hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}
.crh .crh-hero-btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:12px 24px;border:1px solid rgba(255,255,255,.75);border-radius:4px;color:#fff!important;font-size:14px;font-weight:500!important;text-decoration:none;background:rgba(9,26,38,.12);transition:background-color 300ms,color 300ms}
.crh .crh-hero-btn:hover{background:rgba(255,255,255,.16)}
.crh .crh-hero-btn.is-solid{background:#fff;border-color:#fff;color:var(--ink)!important}
.crh .crh-hero-btn.is-solid:hover{background:#eef3f6}
.crh-hero-btn svg{width:15px;height:15px}
.crh-hero .crh-search{width:min(1180px,100%);margin:34px auto 0;text-align:left}
.crh-hero .crh-search-card{box-shadow:0 30px 70px -30px rgba(9,26,38,.6)}
.crh .crh-tagline{display:flex;align-items:center;gap:16px;margin:26px 0 0;font-size:15px;color:rgba(255,255,255,.92);text-shadow:0 1px 12px rgba(9,26,38,.4)}
.crh-tagline:before,.crh-tagline:after{content:"";width:44px;height:1px;background:rgba(255,255,255,.6)}
.crh .crh-scroll{position:absolute;left:50%;bottom:22px;display:grid;place-items:center;width:40px;height:40px;transform:translateX(-50%);color:#fff!important;animation:crh-bob 2.4s var(--ease) infinite}
.crh-scroll svg{width:22px;height:22px}
@keyframes crh-bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,6px)}}
.crh .crh-video-toggle{right:24px;bottom:24px;position:absolute}
.crh-hero .crh-price-pop{text-align:left}
@media(max-width:650px){.crh-hero{padding-bottom:72px}.crh-hero .crh-search{margin-top:26px}.crh .crh-tagline{font-size:13px}.crh-tagline:before,.crh-tagline:after{width:24px}}
@media(prefers-reduced-motion:reduce){.crh .crh-scroll{animation:none}}
/* 0.28.0 hero headline: the original treatment, with "Live" in Cormorant Garamond italic. */
.crh-hero h1{font-size:clamp(42px,5.4vw,80px);line-height:1.08;letter-spacing:0;text-shadow:0 2px 24px rgba(9,26,38,.25)}
.crh .crh-hero h1 em{font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:500;font-style:italic;font-size:1.12em;letter-spacing:-.005em}
/* Featured now follows the quick links; the company section follows the stats band. */
.crh-featured{padding-top:clamp(48px,6vw,80px)}

/* 0.40.0 motion: one load sequence for the hero, then content-specific reveals on scroll. Hidden states exist only
   under .crh-motion (added by home.js when motion is allowed), so the page is fully visible without JavaScript. */
html:has(.crh){scroll-behavior:smooth}
.crh-motion .crh-hero .crh-rise{opacity:0;transform:translate3d(0,22px,0);transition:opacity 1s var(--ease),transform 1.3s var(--ease);transition-delay:calc(180ms + var(--i,0) * 110ms)}
.crh-motion .crh-hero.is-in .crh-rise{opacity:1;transform:none}
.crh-motion .crh-hero-media img{transform:scale(1.06);transition:transform 2.8s var(--ease)}
.crh-motion .crh-hero.is-in .crh-hero-media img{transform:none}
.crh-motion .crh-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .9s var(--ease),transform 1.2s var(--ease);transition-delay:calc(var(--i,0) * 90ms)}
.crh-motion .crh-reveal.is-in{opacity:1;transform:none}
.crh-motion .crh-unveil{clip-path:inset(100% 0 0 0);transition:clip-path 1.3s var(--ease);transition-delay:calc(var(--i,0) * 110ms)}
.crh-motion .crh-unveil img{transform:scale(1.12);transition:transform 1.9s var(--ease);transition-delay:calc(var(--i,0) * 110ms)}
.crh-motion .crh-unveil.is-in{clip-path:inset(0 0 0 0)}
.crh-motion .crh-unveil.is-in img{transform:none}
.crh .crh-stats dd{font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){html:has(.crh){scroll-behavior:auto}}

/* 0.40.0 search header: tabs plus a Map view link on one rule; matching chevrons on every select. */
.crh-search-top{display:flex;align-items:stretch;justify-content:space-between;gap:12px;padding:0 8px;border-bottom:1px solid var(--line)}
.crh-search-top .crh-tabs{padding:0;border-bottom:0;overflow-x:auto;scrollbar-width:none}.crh-search-top .crh-tabs::-webkit-scrollbar{display:none}
.crh .crh-map-tab{display:inline-flex;align-items:center;gap:8px;padding:0 14px;color:var(--muted);font-size:12px;font-weight:500!important;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:color 200ms}
.crh-map-tab svg{width:17px;height:17px;transition:transform 400ms var(--ease)}
.crh .crh-map-tab:hover{color:var(--ink)}.crh-map-tab:hover svg{transform:translateY(-2px)}
.crh-map-tab:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}
.crh .crh-search-form select{appearance:none;-webkit-appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%2318364a' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.crh .crh-price-trigger:after{width:6px;height:6px;margin-right:2px;border-width:0 1.4px 1.4px 0}
.crh .crh-stats dd span{font-family:var(--serif)!important}
@media(max-width:650px){.crh .crh-map-tab{padding:0 8px;letter-spacing:.1em}.crh-map-tab svg{display:none}}

/* 0.40.0 featured showcase: a fluid row with edge fades and a slim progress line instead of buttons. Desktop
   (fine pointer, motion allowed) pins the section and turns page scroll into sideways travel. */
.crh-showcase{position:relative;padding:clamp(72px,9vw,120px) 0 clamp(48px,6vw,80px)}
.crh-showcase .crh-head{margin-bottom:clamp(20px,2.4vw,32px)}
.crh-showcase-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding:10px 0 26px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.crh-showcase-viewport::-webkit-scrollbar{display:none}
.crh-showcase-viewport:focus-visible{outline:2px solid #41738c;outline-offset:-2px}
.crh-showcase-track{display:flex;gap:clamp(16px,2vw,28px);width:max-content;margin:0;padding:0 max(32px,calc((100vw - 1300px)/2));list-style:none;will-change:transform}
.crh-showcase-item{flex:0 0 clamp(280px,30vw,420px);scroll-snap-align:center;opacity:calc(.32 + .68 * var(--f,1));transform:scale(calc(.94 + .06 * var(--f,1)));transform-origin:50% 60%;transition:opacity .45s var(--ease),transform .6s var(--ease)}
.crh-showcase .cr-pcard{height:100%}
.crh-showcase .cr-pcard-frame{aspect-ratio:4/3}
.crh-showcase .cr-pcard-title{font-size:21px}
.crh-showcase-nav{display:flex;align-items:center;gap:18px;margin-top:4px}
.crh .crh-showcase-count{display:inline-flex;align-items:baseline;gap:6px;font-family:var(--serif)!important;font-size:15px;color:var(--muted);font-variant-numeric:tabular-nums}
.crh .crh-showcase-count b{font-family:var(--serif)!important;font-weight:400!important;font-size:22px;color:var(--ink)}
.crh .crh-showcase-count span{font-family:var(--serif)!important}
.crh-showcase-bar{position:relative;flex:1;height:22px;cursor:pointer}
.crh-showcase-bar:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line)}
.crh-showcase-bar i{position:absolute;left:0;right:0;top:calc(50% - 1px);height:2px;background:var(--accent);transform-origin:0 50%;transform:scaleX(var(--p,0));transition:transform .25s linear}
.crh .crh-showcase-hint{font-size:11px;font-weight:500!important;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);transition:opacity .4s var(--ease)}
.crh-showcase.is-end .crh-showcase-hint{opacity:0}
.crh-showcase.is-pinned .crh-showcase-viewport{overflow:hidden;scroll-snap-type:none}
.crh-showcase.is-pinned .crh-showcase-item{transition:none}
@media(max-width:650px){.crh-showcase-item{flex-basis:84vw}.crh-showcase-track{padding:0 8vw}.crh .crh-showcase-hint{display:none}}
@media(prefers-reduced-motion:reduce){.crh-showcase-item{opacity:1;transform:none;transition:none}.crh-showcase-bar i{transition:none}}

/* 0.40.0 news: blog posts and curated outside articles in the showcase row. Posts lead with their image; outside
   articles are typographic cards on soft grey with the source named. */
.crh-news{background:var(--soft)}
.crh-news .crh-sub{max-width:52ch;margin:16px 0 0;color:#3f5868;line-height:1.6}
.crh-news .crh-showcase-viewport{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%)}
.crh-news .crh-showcase-item{flex-basis:clamp(270px,26vw,380px)}
.crh-article{height:100%}
.crh-article a{display:flex;flex-direction:column;height:100%;min-height:360px;border-radius:6px;background:#fff;color:var(--ink);text-decoration:none;overflow:hidden;box-shadow:0 18px 40px -30px rgba(9,26,38,.45),0 0 0 1px var(--line);transition:transform 500ms var(--ease),box-shadow 500ms var(--ease)}
.crh-article a:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(9,26,38,.5),0 0 0 1px var(--line)}
.crh-article a:focus-visible{outline:2px solid #41738c;outline-offset:3px}
.crh-article-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--soft)}
.crh-article-media img{display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;transition:transform 1.4s var(--ease)}
.crh-article a:hover .crh-article-media img{transform:scale(1.04)}
.crh-article-body{display:flex;flex-direction:column;gap:12px;flex:1;padding:22px 24px 24px}
.crh .crh-article-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:11px;font-weight:500!important;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.crh .crh-article-meta time{font-family:var(--sans)!important}
.crh .crh-article-title{font-family:var(--serif)!important;font-size:clamp(20px,1.6vw,24px);line-height:1.25;color:var(--ink)}
.crh-article.is-external:not(.has-image) .crh-article-title{font-size:clamp(23px,1.9vw,28px)}
.crh .crh-article-excerpt{font-size:14.5px;line-height:1.6;color:#3f5868}
.crh .crh-article-go{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:8px;font-size:14px;font-weight:500!important}
.crh-article-go svg{width:15px;height:15px;transition:transform 400ms var(--ease)}
.crh-article a:hover .crh-article-go svg{transform:translate(2px,-2px)}
.crh-article.is-external:not(.has-image) a{background:linear-gradient(var(--accent),var(--accent)) 0 0/100% 3px no-repeat,#fff}

.crh-showcase-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none}.crh-showcase-viewport.is-dragging a{pointer-events:none}
@media(hover:hover) and (pointer:fine){.crh-showcase:not(.is-pinned) .crh-showcase-viewport{cursor:grab}}

/* 0.40.0 legibility: 11px floor on search labels; readable off-focus cards; article title leading. */
.crh .crh-search-form label,.crh .crh-price-caption{font-size:11px}
.crh-showcase-item{opacity:calc(.5 + .5 * var(--f,1))}
.crh .crh-article-title{line-height:1.3}

/* 0.41.0 fluid sections: one spacing scale, fluid gutters and type, softened joins between grounds, and a
   scroll-linked drift on the stats photo where the browser supports it (no JavaScript). */
.crh{--crh-gutter:clamp(20px,4.4vw,64px);--crh-space:clamp(72px,8.5vw,128px);--crh-space-sm:clamp(44px,5.5vw,80px)}
.crh-wrap{width:min(1300px,calc(100% - 2 * var(--crh-gutter)))}
.crh-quick{padding:var(--crh-space-sm) 0 0}
.crh-quick ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.crh .crh-quick-title{font-size:clamp(17px,1.4vw,20px)}
.crh-showcase{padding:var(--crh-space) 0 var(--crh-space-sm)}
.crh-showcase-track{padding-inline:max(var(--crh-gutter),calc((100vw - 1300px) / 2))}
.crh-stats{padding:var(--crh-space-sm) 0}
.crh-company{padding:var(--crh-space) 0;gap:clamp(32px,6vw,110px)}
.crh-news{padding:var(--crh-space) 0;background:linear-gradient(180deg,#fff 0,var(--soft) clamp(80px,12vw,180px),var(--soft) calc(100% - clamp(80px,12vw,180px)),#fff 100%)}
.crh-lead{font-size:clamp(15px,1.15vw,17px)}
.crh .crh-values li{font-size:clamp(13px,1vw,14px)}
.crh .crh-broker-role{margin:8px 0 0;font-size:14px;color:var(--muted)}
.crh .crh-hero-intro{font-size:clamp(15px,1.25vw,18px)}
.crh-stats-bg{transform:scale(1.14)}
@supports (animation-timeline: view()){
 @media(prefers-reduced-motion:no-preference){
  .crh-stats-bg{animation:crh-drift-y linear both;animation-timeline:view()}
  .crh-broker-photo img{animation:crh-drift-soft linear both;animation-timeline:view()}
 }
}
@keyframes crh-drift-y{from{transform:translate3d(0,-7%,0) scale(1.14)}to{transform:translate3d(0,7%,0) scale(1.14)}}
@keyframes crh-drift-soft{from{transform:translate3d(0,-3%,0) scale(1.08)}to{transform:translate3d(0,3%,0) scale(1.08)}}
@media(prefers-reduced-motion:reduce){.crh-stats-bg{transform:none}}

/* 0.41.1: pinned showcase starts near the top instead of centring (no empty band above the heading); quick links
   are type only, with a brass underline drawn on hover. */
.crh-quick a{gap:6px;padding:14px 18px 16px}
.crh .crh-quick-title{background:linear-gradient(var(--accent),var(--accent)) 50% 100%/0 1px no-repeat;padding-bottom:4px;transition:background-size 500ms var(--ease)}
.crh-quick a:hover .crh-quick-title,.crh-quick a:focus-visible .crh-quick-title{background-size:100% 1px}

/* 0.42.0: the pinned showcase sticks at its natural height, centred in the window (top set by home.js), so the page
   keeps one spacing rhythm above and below it. */
.crh-showcase.is-pinned .crh-showcase-pin{position:sticky;top:var(--pin-top,96px)}

/* 0.42.0 subtle scroll touches: rules draw in, headings sharpen as they rise. Same ease and timing as the reveals. */
.crh-motion .crh-reveal .crh-rule,.crh-motion .crh-rule.crh-reveal{transform:scaleX(0);transform-origin:0 50%;transition:transform 1.1s var(--ease) .25s}
.crh-motion .crh-rule.crh-reveal{opacity:1}
.crh-motion .crh-reveal.is-in .crh-rule,.crh-motion .crh-rule.crh-reveal.is-in{transform:none}
.crh-motion :is(.crh-reveal h2,h2.crh-reveal){filter:blur(6px);transition:filter 1s var(--ease)}
.crh-motion :is(.crh-reveal.is-in h2,h2.crh-reveal.is-in){filter:none}

/* 0.42.0 one rhythm: white sections only pad their top, so two of them never stack two gaps; a section before a
   coloured band (stats, news) keeps its bottom gap. */
.crh-quick{padding:var(--crh-space-sm) 0 0}
.crh-showcase{padding:var(--crh-space) 0}
.crh-stats{padding:var(--crh-space-sm) 0}
.crh-company{padding:var(--crh-space) 0 0;align-items:start}
.crh-company-copy{align-self:center}
.crh-news{padding:var(--crh-space) 0}

/* 0.44.0 broker without a photo: a navy monogram panel in the brand blues instead of a pale, empty frame. */
.crh .crh-broker-photo.is-monogram,.crh .crh-broker-empty.is-monogram{position:relative;display:grid;place-items:center;background:radial-gradient(120% 90% at 20% 0%,#2a5374 0%,#18364a 46%,#0f2737 100%);overflow:hidden;border-radius:4px}
.crh .crh-broker-photo.is-monogram:after,.crh .crh-broker-empty.is-monogram:after{content:"";position:absolute;inset:18px;border:1px solid rgba(219,232,242,.28);border-radius:2px;pointer-events:none}
.crh .crh-broker-photo.is-monogram .cr-team-initials,.crh .crh-broker-empty.is-monogram span{display:grid;place-items:center;height:100%;font:400 clamp(72px,9vw,128px)/1 Adamina,Georgia,serif;letter-spacing:.04em;color:#dbe8f2}

/* 0.44.0 glass slider handles on the homepage price popover, matching the Properties sidebar. */
.crh .crh-hist input[type=range]::-webkit-slider-thumb{width:24px;height:24px;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.98) 0,rgba(255,255,255,.62) 38%,rgba(219,232,242,.38) 70%,rgba(255,255,255,.55) 100%);border:1px solid rgba(255,255,255,.9);box-shadow:0 6px 16px -4px rgba(9,26,38,.38),0 1px 2px rgba(9,26,38,.25),inset 0 1px 1px rgba(255,255,255,1),inset 0 -3px 6px rgba(24,54,74,.16),inset 0 0 0 1px rgba(24,54,74,.08)}
.crh .crh-hist input[type=range]::-moz-range-thumb{width:22px;height:22px;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.98) 0,rgba(255,255,255,.62) 38%,rgba(219,232,242,.38) 70%,rgba(255,255,255,.55) 100%);border:1px solid rgba(255,255,255,.9);box-shadow:0 6px 16px -4px rgba(9,26,38,.38),0 1px 2px rgba(9,26,38,.25),inset 0 1px 1px rgba(255,255,255,1),inset 0 -3px 6px rgba(24,54,74,.16),inset 0 0 0 1px rgba(24,54,74,.08)}
/* 0.49.0 hold and drag the featured row (mouse) */
@media (hover:hover) and (pointer:fine){.crh [data-crh-showcase-viewport]{cursor:grab}.crh .is-dragging [data-crh-showcase-viewport]{cursor:grabbing;user-select:none}.crh .is-dragging [data-crh-showcase-viewport] a{pointer-events:none}}
/* 0.50.0 phone: the three search tabs share the width evenly; Map view sits on its own row beneath them. */
@media(max-width:650px){
  .crh .crh-search-top{flex-wrap:wrap;gap:0;padding:0}
  .crh .crh-search-top .crh-tabs{flex:1 1 100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}
  .crh .crh-search-top .crh-tabs button{padding:16px 4px 14px;letter-spacing:.08em;font-size:11.5px;white-space:nowrap}
  .crh .crh-search-top .crh-tabs button:after{left:10px;right:10px}
  .crh .crh-search-top .crh-map-tab{flex:1 1 100%;justify-content:center;min-height:44px;border-top:1px solid var(--line)}
  .crh .crh-search-top .crh-map-tab svg{display:inline-block}
}
@media(max-width:650px){.crh .crh-video-toggle{left:16px;right:auto}}
/* 0.63.0 featured row: arrows instead of scroll-driven movement. */
.crh-showcase-arrows{display:flex;gap:8px;margin-left:auto}
.crh-showcase-arrows button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(24,54,74,.2);border-radius:50%;background:#fff;color:var(--ink);cursor:pointer;transition:border-color .3s,background-color .3s}
.crh-showcase-arrows button:hover{border-color:var(--ink)}
.crh-showcase-arrows button:focus-visible{outline:2px solid #41738c;outline-offset:3px}
.crh-showcase-arrows svg{width:18px;height:18px}
.crh .crh-showcase-hint{display:none}
/* 0.63.0 phones: a shorter hero. Equal-width buttons; island, type and price behind "More filters". */
.crh-more{display:none}
@media(max-width:650px){
  .crh-hero-actions{flex-direction:column;align-items:center}
  .crh .crh-hero-btn{width:min(100%,280px);justify-content:center}
  .crh-search-form.has-more:not(.is-more)>label:not(.crh-keyword),.crh-search-form.has-more:not(.is-more)>.crh-price-field{display:none}
  .crh .crh-more:not([hidden]){display:block;grid-column:1/-1;min-height:40px;padding:0;border:0;background:none;color:var(--ink);font-size:14px;text-decoration:underline;text-underline-offset:3px;text-align:left;cursor:pointer}
  .crh-showcase-arrows{display:none}
}
/* 0.65.0 search card below the hero: it overlaps the bottom of the photo and opens the next section. */
.crh-hero{padding-bottom:150px}
.crh-search-band{position:relative;z-index:4;margin-top:-84px}
.crh-search-band .crh-search{width:min(1180px,100%);margin:0 auto;text-align:left}
.crh-search-band .crh-search-card{box-shadow:0 30px 70px -34px rgba(9,26,38,.5),0 0 0 1px rgba(24,54,74,.06)}
.crh-search-band .crh-price-pop{text-align:left}
.crh-search-band~.crh-quick{margin-top:clamp(12px,2vw,28px)}
@media(max-width:650px){.crh-hero{padding-bottom:96px}.crh-search-band{margin-top:-56px}}
/* The scroll arrow and video button sit above the overlapping search card. */
.crh .crh-scroll{bottom:106px}
.crh .crh-video-toggle{bottom:106px}
@media(max-width:650px){.crh .crh-scroll{display:none}.crh .crh-video-toggle{bottom:70px}}
/* 0.65.1 Map view and Advanced search share the right of the search card's tab bar. */
.crh-search-links{display:flex;align-items:stretch}
.crh .crh-adv-tab{border-left:1px solid var(--line)}
@media(max-width:650px){
  .crh .crh-search-top .crh-search-links{flex:1 1 100%;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
  .crh .crh-search-top .crh-search-links .crh-map-tab{border-top:0;min-height:44px;justify-content:center}
}
