:root{--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",Arial,sans-serif}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{width:1.1em;height:1.1em;display:inline-block;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.phone-btn{display:inline-flex;align-items:center;gap:7px}.phone-btn .icon{width:15px;height:15px}
.hero h1{line-height:.91;letter-spacing:-1.5px}.hero-copy{font-size:15px;line-height:1.7;margin-top:16px}.hero .eyebrow,.hero h1,.hero-copy{opacity:0;transform:translateY(18px)}.hero.ready .eyebrow,.hero.ready h1,.hero.ready .hero-copy{opacity:1;transform:none;transition:opacity .7s,transform .7s}.hero.ready h1{transition-delay:.1s}.hero.ready .hero-copy{transition-delay:.2s}.search-shell{width:760px;opacity:0;transform:translateY(24px)}.hero.ready .search-shell{opacity:1;transform:none;transition:opacity .7s .32s,transform .7s .32s}.hero-proof{opacity:0}.hero.ready .hero-proof{opacity:1;transition:opacity .7s .55s}
.search-tab{position:relative;overflow:hidden;min-width:125px;background:rgba(12,42,60,.91)}.search-tab:after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:3px;background:#fff;transition:left .25s,right .25s}.search-tab.active:after{left:22%;right:22%}.search-panel{position:relative}.select-field{transition:background .2s}.select-field:hover,.select-field.open{background:#f8fafb}.field-icon{width:38px;color:var(--navy-800);font-size:19px}.field-icon .icon{width:18px;height:18px}.select-field>button{width:calc(100% - 38px)}.select-field small{font-size:9px;letter-spacing:.15px}.select-field b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select-field>button i{transition:transform .2s}.select-field.open>button i{transform:rotate(180deg)}
.options{z-index:30;top:60px;left:5px;right:5px;min-width:190px;border-radius:10px;box-shadow:0 18px 46px rgba(10,36,52,.18);padding:6px;transform-origin:top;animation:menuIn .2s ease}.options button{font-size:11px;border-radius:6px}.options button:hover,.options button.selected{background:#eef4f6;color:var(--navy-800);font-weight:700}.searchable-options{min-width:260px}.searchable-options label{display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:7px;padding:0 9px;margin-bottom:5px}.searchable-options input{width:100%;height:36px;border:0;outline:0;font-size:11px}.option-list{max-height:190px;overflow:auto}
.budget-options{min-width:330px;padding:16px;left:-50px}.budget-head,.range-labels,.budget-scale{display:flex;justify-content:space-between;align-items:center}.budget-head strong{font-size:12px}.budget-options .budget-reset{width:auto;padding:3px;color:#9b7537;background:none;font-weight:700}.range-labels{margin:18px 0 13px;font:700 16px var(--serif)}.dual-range{height:22px;position:relative}.dual-range:before,.range-fill{content:"";position:absolute;left:0;right:0;top:10px;height:4px;border-radius:3px;background:#d9e1e6}.range-fill{background:var(--gold-500);z-index:1}.dual-range input{position:absolute;inset:0;width:100%;height:22px;margin:0;background:none;pointer-events:none;appearance:none;z-index:2}.dual-range input::-webkit-slider-thumb{appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;border:5px solid var(--navy-800);box-shadow:0 1px 5px rgba(0,0,0,.2);pointer-events:auto;cursor:grab}.dual-range input::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#fff;border:5px solid var(--navy-800);pointer-events:auto;cursor:grab}.budget-scale{font-size:8px;color:var(--muted)}.budget-options .apply-budget{margin-top:13px;background:var(--navy-800);color:#fff;text-align:center}.chip-options{min-width:260px;grid-template-columns:1fr 1fr;gap:5px;padding:10px}.select-field.open .chip-options{display:grid}.chip-options button{border:1px solid var(--border);text-align:center}.chip-options button.selected{border-color:var(--gold-500);background:#faf4e8}
.search-btn{display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden}.search-btn:before{content:"";position:absolute;inset:0;transform:translateX(-110%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent)}.search-btn:hover:before{transform:translateX(110%);transition:transform .65s}.search-btn.loading{opacity:1}.search-spinner{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.search-btn.loading .search-spinner{display:block}.search-btn.loading>svg{display:none}.search-live{position:absolute;left:14px;bottom:-25px;margin:0;color:#fff;font-size:10px;text-shadow:0 1px 5px rgba(0,0,0,.5)}.hero-proof i .icon{width:16px;height:16px}
.scroller{scroll-snap-type:x proximity;scrollbar-width:none}.scroller::-webkit-scrollbar{display:none}.scroller.dragging{scroll-behavior:auto;scroll-snap-type:none;cursor:grabbing;user-select:none}.scroller>*{scroll-snap-align:start}.scroll-progress{height:3px;background:#e3e9ed;border-radius:4px;margin:12px auto 0;max-width:190px;overflow:hidden;display:none}.scroll-progress i{display:block;width:25%;height:100%;background:var(--gold-500);border-radius:4px;transition:transform .15s}.project-card{transition:transform .3s,box-shadow .3s;transform-style:preserve-3d}.gold-icon .icon{width:22px;height:22px}.service-card i .icon{width:20px;height:20px}.stats-grid i .icon{width:23px;height:23px}
.faq-item>button i{font-size:0;width:8px;height:8px;margin-right:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}.faq-item>button[aria-expanded=true] i{transform:rotate(225deg)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.75,.25,1),transform .7s cubic-bezier(.2,.75,.25,1)}.reveal.visible{opacity:1;transform:none}.reveal .locality-card,.reveal .project-card,.reveal .hot-card,.reveal .developer,.reveal .life-card,.reveal .service-card,.reveal .insight-card{opacity:0;transform:translateY(16px);transition:opacity .5s,transform .5s,box-shadow .25s}.reveal.visible .locality-card,.reveal.visible .project-card,.reveal.visible .hot-card,.reveal.visible .developer,.reveal.visible .life-card,.reveal.visible .service-card,.reveal.visible .insight-card{opacity:1;transform:none}.reveal.visible :is(.locality-card,.project-card,.hot-card,.developer,.life-card,.service-card,.insight-card):nth-child(2){transition-delay:.06s}.reveal.visible :is(.locality-card,.project-card,.hot-card,.developer,.life-card,.service-card,.insight-card):nth-child(3){transition-delay:.12s}.reveal.visible :is(.locality-card,.project-card,.hot-card,.developer,.life-card,.service-card,.insight-card):nth-child(4){transition-delay:.18s}.reveal.visible :is(.locality-card,.project-card,.hot-card,.developer,.life-card,.service-card,.insight-card):nth-child(n+5){transition-delay:.24s}.pulse-ring{animation:pulseRing 1.8s infinite}
@keyframes menuIn{from{opacity:0;transform:translateY(-5px) scale(.98)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulseRing{50%{box-shadow:0 0 0 7px rgba(198,165,107,0)}}
@media(max-width:1180px){.search-shell{width:720px}.scroll-progress{display:block}}
@media(max-width:900px){.search-shell{width:100%}.budget-options{left:-65px}}
@media(max-width:640px){.hero .eyebrow,.hero h1,.hero-copy{opacity:1;transform:none}.search-shell{opacity:1;transform:none}.search-panel{overflow:visible}.budget-options{position:fixed;left:16px;right:16px;top:auto;bottom:16px;min-width:0;z-index:150}.search-live{bottom:-29px}.scroll-progress{display:block}}
@media(prefers-reduced-motion:reduce){.hero .eyebrow,.hero h1,.hero-copy,.search-shell,.hero-proof,.reveal,.reveal *{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}}
