:root{--m253-ink:#102f3b;--m253-muted:#718691;--m253-line:#e4ecef;--m253-paper:#f6f9fa;--m253-cyan:#08a7c2;--m253-deep:#112f3d;--m253-green:#19835e;--m253-danger:#b24545}

/* top bar */
.topbar{grid-template-columns:122px minmax(320px,1fr) auto!important;gap:14px!important;min-height:72px!important;padding:10px 12px 10px 16px!important;border-radius:24px!important}
.brand{width:108px!important}.brand img{max-width:108px!important}
.v253TopActions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.v253TopButton{height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 13px;border:1px solid #dce7ea;border-radius:14px;background:#fff;color:#244652;text-decoration:none;font:800 11px/1 Inter,ui-sans-serif,system-ui;white-space:nowrap;cursor:pointer;box-shadow:0 8px 20px rgba(15,47,61,.05);transition:.16s ease}
.v253TopButton:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(15,47,61,.09)}
.v253TopButton.primary{background:linear-gradient(135deg,#08a9c5,#087b96);border-color:transparent;color:#fff}.v253TopButton.account{background:#123848;color:#fff;border-color:#123848}
.v253TopIcon{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:7px;background:rgba(8,167,194,.10);font-size:12px;font-weight:900;line-height:1}.primary .v253TopIcon,.account .v253TopIcon{background:rgba(255,255,255,.14)}

/* compact, predictable controls */
.v253PanelBackdrop{position:fixed;inset:0;z-index:43;background:rgba(7,21,29,.16);backdrop-filter:blur(2px)}
.controlsPanel{z-index:44!important;width:360px!important;max-height:calc(100vh - 116px)!important;overflow:auto!important;border-radius:22px!important;box-shadow:0 30px 90px rgba(7,28,40,.25)!important}
.controlsPanel button,.controlsPanel input,.controlsPanel select{max-width:100%}
.v253FullscreenExit{position:fixed;z-index:10000;right:18px;bottom:18px;height:46px;padding:0 16px;border:0;border-radius:14px;background:#102f3d;color:#fff;font-weight:850;box-shadow:0 18px 40px rgba(9,36,49,.28);cursor:pointer}

/* property drawer */
.propertyPanel{width:430px!important;max-height:calc(100vh - 108px)!important;border-radius:24px!important;background:#fff!important;overflow:auto!important;box-shadow:0 30px 95px rgba(7,27,39,.27)!important}
.propertyPanelBrand{height:62px!important;padding:0 16px!important;background:#fff!important;border-bottom:1px solid var(--m253-line)!important;position:sticky!important;top:0!important;z-index:40!important}
.propertyPanelBrand img{width:88px!important}.propertyPanelBrand button{width:34px!important;height:34px!important;display:grid!important;place-items:center!important;border-radius:11px!important}.propertyPanelBrand button svg{width:17px!important;height:17px!important;max-width:17px!important;max-height:17px!important;display:block!important}
.propertyMediaViewport{height:255px!important;background:#eef3f5!important}.mlyStreetViewer{height:255px!important;min-height:255px!important;border-radius:0!important;background:#eef3f5!important}.mlyStreetViewer canvas{width:100%!important;height:100%!important}
.mediaTabbar{padding:8px 10px!important;gap:6px!important}.mediaTabbar button{height:32px!important;padding:0 10px!important;border-radius:10px!important;font-size:9px!important}
.mediaThumbs{height:78px!important;padding:8px 10px!important}.mediaThumbs button{width:82px!important;min-width:82px!important;height:60px!important}.mediaStageActions button{height:34px!important;padding:0 10px!important;border-radius:10px!important;font-size:9px!important}
.modernProperty{padding:18px 18px 88px!important}.propertyIdentity h2{font-size:22px!important;letter-spacing:-.02em!important}.propertyPriceCard{margin:16px 0!important;padding:16px!important;border-radius:16px!important;background:linear-gradient(135deg,#113544,#176178)!important}.propertyPriceCard strong{font-size:30px!important}
.propertyFacts{gap:8px!important}.propertyFacts>div:not(.factsEmpty){min-height:68px!important;padding:11px!important;border-radius:13px!important}.propertyFacts span,.marketStrip span{font-size:8px!important}.propertyFacts strong{font-size:11px!important;overflow-wrap:anywhere}
.marketStrip{gap:7px!important}.marketStrip>div{min-width:0!important;padding:10px 6px!important}.marketStrip strong{font-size:10px!important;overflow-wrap:anywhere}
.amenitiesGrid{grid-template-columns:1fr 1fr!important}.amenityItem{padding:9px!important;min-height:56px!important}.amenityItem i{width:31px!important;height:31px!important}.amenityItem svg{width:16px!important;height:16px!important;max-width:16px!important;max-height:16px!important}

/* property actions: explicit icon bounds prevent oversized SVGs */
.propertyActionBar{position:sticky!important;bottom:0!important;z-index:50!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important;padding:10px 12px calc(10px + env(safe-area-inset-bottom))!important;background:rgba(255,255,255,.97)!important;border-top:1px solid var(--m253-line)!important;backdrop-filter:blur(14px)!important}
.propertyActionBar .propertyAction{min-width:0!important;min-height:52px!important;height:52px!important;padding:0 5px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;border:0!important;border-radius:13px!important;font-size:8.5px!important;font-weight:900!important;line-height:1!important;overflow:hidden!important}
.propertyActionBar .propertyAction svg{width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;max-width:17px!important;max-height:17px!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;overflow:visible!important}
.propertyActionBar .value{background:#08a6c1!important;color:#fff!important}.propertyActionBar .buy{background:#123b4c!important;color:#fff!important}.propertyActionBar .sell{background:#ecf3f5!important;color:#244a58!important}.propertyActionBar .walkThere{background:#edf7f9!important;color:#087c92!important}.propertyActionBar .maps{background:#f1f4f5!important;color:#425e69!important}

/* modern modal forms */
.featureModalCard{width:min(600px,calc(100vw - 28px))!important;border-radius:26px!important;box-shadow:0 32px 100px rgba(5,22,32,.30)!important}.featureModalHead{height:66px!important;padding:0 22px!important}.featureModalTitle{font-size:24px!important;padding:22px 24px 0!important;letter-spacing:-.025em!important}.easySearchForm,.valuationBody{padding-left:24px!important;padding-right:24px!important}.easySearchForm textarea{min-height:118px!important;border-radius:17px!important;background:#f9fbfb!important;font-size:15px!important}.featurePrimary{height:50px!important;border-radius:14px!important;background:linear-gradient(135deg,#08a8c4,#087d98)!important;box-shadow:0 12px 28px rgba(8,151,178,.20)!important}.easyExamples{padding:14px 24px 24px!important}.easyExamples button{min-height:34px!important;padding:8px 10px!important;border-radius:10px!important;font-size:9px!important}
.valuationAddress{border-radius:15px!important;padding:14px!important}.valuationFields{gap:12px!important}.valuationFields input,.valuationFields select{height:46px!important;border-radius:12px!important;background:#fbfcfc!important}.valuationFields label>span{font-size:9px!important;display:flex!important;align-items:center!important;gap:7px!important}.valuationFields label>span:before{content:'';width:7px;height:7px;border-radius:50%;background:#08a6c1;box-shadow:0 0 0 4px rgba(8,166,193,.10)}
.leadWizardCard{border-radius:26px!important}.leadFields input,.leadFields select,.leadFields textarea{border-radius:12px!important}.leadActions button{border-radius:12px!important}

/* safe full screen Mapillary, same live viewer */
.streetStage:fullscreen,.streetStage:-webkit-full-screen{background:#071015!important;width:100vw!important;height:100vh!important}.streetStage:fullscreen .mlyStreetViewer,.streetStage:-webkit-full-screen .mlyStreetViewer{height:100vh!important;min-height:100vh!important;border-radius:0!important}.streetStage:fullscreen .mediaStageMeta,.streetStage:-webkit-full-screen .mediaStageMeta{bottom:20px!important;left:20px!important}.streetStage:fullscreen .mediaStageActions,.streetStage:-webkit-full-screen .mediaStageActions{top:20px!important;right:20px!important}

@media(max-width:1120px){.topbar{grid-template-columns:108px minmax(220px,1fr)!important}.v253TopActions{grid-column:1/-1;justify-content:flex-start;overflow-x:auto;padding-bottom:2px}.v253TopButton{flex:0 0 auto}.topbar{min-height:124px!important}.mapTools{top:146px!important}.propertyPanel{top:146px!important;max-height:calc(100vh - 160px)!important}}
@media(max-width:860px){.topbar{left:8px!important;right:8px!important;top:8px!important;grid-template-columns:86px 1fr!important;min-height:120px!important}.brand{width:82px!important}.brand img{max-width:82px!important}.v253TopActions{gap:6px!important}.v253TopButton{height:38px!important;padding:0 10px!important;font-size:9px!important}.v253TopIcon{width:17px;height:17px;font-size:10px}.propertyPanel{left:8px!important;right:8px!important;bottom:8px!important;top:auto!important;width:auto!important;max-height:74vh!important}.propertyActionBar{grid-template-columns:repeat(5,minmax(0,1fr))!important}.propertyActionBar .propertyAction{height:48px!important;min-height:48px!important}.amenitiesGrid{grid-template-columns:1fr!important}.controlsPanel{left:8px!important;right:8px!important;top:auto!important;bottom:8px!important;width:auto!important;max-height:72vh!important}.v253FullscreenExit{left:8px;right:8px;bottom:8px}}
/* compact form icons */
.leadFields label>span{display:flex!important;align-items:center!important;gap:7px!important;font-size:9px!important;font-weight:850!important;color:#5c747e!important}.leadFields label>span:before{width:19px;height:19px;border-radius:7px;background:#edf7f9;color:#087f95;display:grid;place-items:center;font-size:9px;font-weight:900;flex:0 0 auto}.leadFields label:has(#leadName)>span:before{content:'N'}.leadFields label:has(#leadEmail)>span:before{content:'@'}.leadFields label:has(#leadPhone)>span:before{content:'☎'}.leadFields label:has(#leadPosition)>span:before{content:'⌂'}.leadFields label:has(#leadTimeframe)>span:before{content:'◷'}.leadFields label:has(#leadFinance)>span:before{content:'£'}.leadFields label:has(#leadReason)>span:before{content:'↗'}.leadFields label:has(#leadMessage)>span:before{content:'✎'}.leadFields input,.leadFields select,.leadFields textarea{background:#fbfcfc!important;border:1px solid #dce6e8!important;box-shadow:none!important}.leadFields input:focus,.leadFields select:focus,.leadFields textarea:focus{border-color:#08a6c1!important;box-shadow:0 0 0 3px rgba(8,166,193,.09)!important;outline:none!important}
