:root{font-family:Arial,Helvetica,sans-serif;color:#f7f4ec;background:#252d1f;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 55% 0%,#414735,#242b20 65%);min-height:100vh}.app{max-width:1700px;margin:auto;padding:22px 18px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:2px 4px}.brand{display:flex;align-items:center;gap:12px}.brand-icon{font-family:Georgia,serif;font-size:28px;font-weight:bold;border:2px solid #f2eee3;border-radius:50%;width:42px;height:42px;display:grid;place-items:center}.brand strong{font-size:13px;letter-spacing:2px}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#b5b9a9;margin-top:6px}.header-right{font-size:10px;letter-spacing:2px;color:#c6c8bb}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#92aa7b;margin-left:8px}.categories{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:10px;margin-bottom:18px}.category{min-width:0;height:116px;border:0;border-radius:10px;background:#3b4032;color:#f7f5ef;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;cursor:pointer;transition:background .2s}.category:hover{background:#505847}.category.active{background:#f3eee5;color:#252b20}.category .symbol{font-size:37px;line-height:1}.category .label{font-size:11px;font-weight:bold;letter-spacing:.2px;text-align:center}.explorer{height:min(690px,calc(100vh - 215px));min-height:520px;border:1px solid #c2c4b5;border-radius:15px;overflow:hidden;display:flex;background:#303729}.sidebar{width:390px;flex-shrink:0;display:flex;flex-direction:column;background:linear-gradient(130deg,#313a2b,#252c20)}.filters{padding:20px 18px 15px;border-bottom:1px solid #505747}.search{height:58px;border:1px solid #9a9f8c;border-radius:9px;display:flex;align-items:center;padding:0 14px;gap:10px}.search span{font-size:34px}.search input{width:100%;background:transparent;border:0;outline:0;color:#fff;font-size:14px}.search input::placeholder{color:#bdc0b3}.radius-row{display:flex;align-items:center;gap:15px;margin-top:20px}.radius-row>span{font-size:12px;letter-spacing:.6px;font-weight:bold}.radius-group{display:flex;flex:1;border:1px solid #555b4a;border-radius:8px;overflow:hidden}.radius-group button{background:transparent;color:#fff;border:0;flex:1;padding:12px 5px;cursor:pointer;font-size:13px}.radius-group button.active{background:#f1ece3;color:#242820;border-radius:6px;font-weight:bold}.result-heading{display:flex;justify-content:space-between;padding:15px 20px 6px;font-size:11px;letter-spacing:1.3px;color:#c3c7b9}.results{overflow:auto;flex:1;padding:0 18px}.place{width:100%;text-align:left;background:transparent;color:#fff;border:0;border-bottom:1px solid #505747;display:flex;align-items:center;gap:13px;padding:13px 3px;cursor:pointer}.place:hover,.place.selected{background:#3c4534}.place-icon{flex-shrink:0;width:74px;height:66px;display:grid;place-items:center;border-radius:8px;background:#424d3c;font-size:28px}.place-info{min-width:0;flex:1}.place-info strong{font-size:13px;line-height:1.35;display:block}.place-info small{font-size:12px;color:#c3c6b8;display:block;margin-top:8px;line-height:1.4}.place-arrow{font-size:24px;font-weight:200}.placeholder{padding:25px 8px;color:#c9ccbf;font-size:14px;line-height:1.6}.sidebar-footer{font-size:10px;color:#b9bdb0;padding:10px 20px;border-top:1px solid #505747}.map-panel{flex:1;min-width:0;position:relative;background:#c9c9b8}#map{position:absolute;inset:0}.map-placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#d7d1bc,#a4b7a2);display:grid;place-items:center;color:#273326}.map-placeholder-inner{max-width:350px;text-align:center;padding:25px}.map-placeholder-pin{display:inline-grid;place-items:center;width:74px;height:74px;border-radius:50%;background:#263323;color:white;font:40px Georgia,serif}.map-placeholder h2{font:28px Georgia,serif}.map-placeholder p{line-height:1.6}.map-placeholder button,.primary{border:0;border-radius:7px;background:#273426;color:#fff;padding:13px 20px;cursor:pointer}.map-top-label{position:absolute;top:18px;left:20px;background:#293426;color:white;border-radius:5px;padding:10px 14px;font-size:11px;letter-spacing:1px;pointer-events:none}.map-controls{position:absolute;right:18px;top:20px;display:flex;flex-direction:column;gap:5px}.map-controls button{background:#fff;color:#222;border:0;border-radius:7px;width:43px;height:43px;font-size:26px;cursor:pointer;box-shadow:0 1px 6px #0002}.map-toast{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);background:#293426;color:#fff;border-radius:7px;padding:11px 16px;font-size:12px;display:none;max-width:90%;text-align:center}.map-toast.show{display:block}.pin{width:35px;height:35px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;color:white;font-size:17px;box-shadow:0 2px 7px #0005;cursor:pointer}.pin.property{width:64px;height:64px;background:#2d392a;font:32px Georgia,serif;border-width:3px}.pin.selected{transform:scale(1.18);outline:3px solid #f6eee0}.gm-style-iw{color:#202820}dialog{border:0;border-radius:12px;padding:0;max-width:450px;width:calc(100% - 30px);box-shadow:0 20px 70px #0007}dialog::backdrop{background:#0009}.setup-form{padding:25px;position:relative;color:#263022}.setup-form h2{margin-top:0}.setup-form p{line-height:1.6;font-size:14px}.setup-form label{display:block;font-size:13px;font-weight:bold}.setup-form input{display:block;margin:8px 0 14px;width:100%;padding:13px;border:1px solid #bbb;border-radius:6px}.setup-form .note{font-size:12px;color:#626b5c}.setup-form .close{position:absolute;top:10px;right:13px;background:transparent;border:0;font-size:25px;cursor:pointer}@media(max-width:1050px){.categories{grid-template-columns:repeat(5,1fr)}.category{height:88px}.category .symbol{font-size:27px}.category .label{font-size:10px}.explorer{height:670px}.sidebar{width:330px}}@media(max-width:650px){.app{padding:12px}.header-right{display:none}.categories{display:flex;overflow-x:auto;gap:7px;padding-bottom:5px}.category{min-width:115px;height:83px}.explorer{flex-direction:column;height:auto;min-height:0}.map-panel{height:410px;order:0;flex:none}.sidebar{order:1;width:100%;height:450px}.map-top-label{top:12px;left:12px}.map-controls{top:12px;right:12px}.brand strong{font-size:11px}}
/* v2: brand, unified icon system, responsive mobile explorer */
.brand-icon{width:35px;height:45px;border:0;border-radius:0;object-fit:contain;display:block;flex:none}
.brand strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(17px,2vw,25px);letter-spacing:0;font-weight:normal;text-transform:none}
.brand small{font-size:10px;letter-spacing:1.8px}
.brand{gap:16px}.brand>div{border-left:1px solid #9a9f8c;padding-left:16px}
.amenity-svg{width:34px;height:34px;display:block;flex:none}
.category .symbol{display:grid;place-items:center;height:40px}.category .symbol .amenity-svg{width:36px;height:36px}
.place-icon .amenity-svg{width:30px;height:30px;color:#f5f0e7}
.pin .amenity-svg{width:19px;height:19px}
.pin.property{width:66px;height:66px;border-radius:50% 50% 50% 8px;transform:rotate(-45deg);display:grid;place-items:center}
.pin.property img{width:30px;height:42px;object-fit:contain;transform:rotate(45deg)}
.pin.property.selected{transform:rotate(-45deg) scale(1.15)}
.placeholder-logo{width:65px;height:85px;object-fit:contain;background:#293426;border-radius:8px;padding:12px}
.mobile-radius,.mobile-sheet-handle{display:none}
@media(min-width:651px) and (max-width:1200px){.categories{display:flex;overflow-x:auto;gap:9px;scrollbar-width:thin}.category{min-width:132px;height:96px}.explorer{height:650px}.sidebar{width:340px}}
@media(max-width:650px){
 html,body{height:100%;overflow-x:hidden}.app{padding:0;min-height:100dvh;display:flex;flex-direction:column}
 header{padding:14px 17px 9px;margin:0}.brand{gap:10px}.brand>div{padding-left:12px}.brand-icon{width:27px;height:39px}
 .brand strong{font-size:clamp(17px,5vw,24px);white-space:nowrap}.brand small{font-size:8px;letter-spacing:1px;margin-top:5px}
 .categories{display:flex;flex:none;gap:8px;padding:10px 14px 14px;margin:0;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;mask-image:linear-gradient(to right,#000 0%,#000 93%,transparent 100%)}
 .categories::-webkit-scrollbar{display:none}.category{flex:0 0 105px;min-width:105px;height:79px;gap:5px;scroll-snap-align:start;border:1px solid #59604e}
 .category .symbol{height:33px}.category .symbol .amenity-svg{width:28px;height:28px}.category .label{font-size:9px;line-height:1.2;letter-spacing:0}
 .explorer{display:block;position:relative;border:0;border-radius:0;flex:1;height:calc(100dvh - 145px);min-height:510px;overflow:hidden}
 .map-panel{position:absolute;inset:0;height:auto;min-height:0}.map-top-label{display:none}
 .map-controls{top:76px;right:13px}.map-controls button{width:41px;height:41px}
 .mobile-radius{display:flex;position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:2;border-radius:24px;background:#f3eee5;padding:3px;box-shadow:0 2px 12px #0003;white-space:nowrap}
 .mobile-radius button{border:0;background:transparent;color:#253021;padding:9px 17px;border-radius:20px;font-size:13px;cursor:pointer}
 .mobile-radius button.active{background:#273526;color:#fff;font-weight:700}
 .sidebar{position:absolute;z-index:3;bottom:0;left:0;right:0;width:100%;height:225px;max-height:calc(100% - 90px);border-radius:23px 23px 0 0;box-shadow:0 -8px 24px #0003;transition:height .25s ease;overflow:hidden}
 .sidebar.expanded{height:78%}.mobile-sheet-handle{display:grid;place-items:center;height:26px;flex:none;cursor:pointer;touch-action:manipulation}
 .mobile-sheet-handle span{width:48px;height:5px;background:#929b87;border-radius:10px}
 .filters{padding:5px 16px 8px}.search{height:40px}.search span{font-size:25px}.search input{font-size:13px}
 .radius-row{display:none}.result-heading{padding:10px 18px 5px}.results{padding:0 15px}.place{padding:10px 2px}.place-icon{width:51px;height:49px}.place-icon .amenity-svg{width:26px;height:26px}
 .sidebar-footer{display:none}.map-toast{bottom:240px;width:max-content}
}
@media(max-width:360px){.brand strong{font-size:16px}.brand small{font-size:7px}.category{flex-basis:94px;min-width:94px}}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}

/* V3 refinements: tightly cropped brand asset and more comfortable mobile spacing */
.brand-icon{width:27px;height:43px;object-fit:contain}
@media(max-width:650px){
  .brand-icon{width:23px;height:35px}
  .categories{gap:12px;padding-left:17px;padding-right:17px;padding-top:12px;padding-bottom:16px;scroll-padding-left:17px}
  .category{flex-basis:110px;min-width:110px}
}
@media(max-width:360px){.category{flex-basis:102px;min-width:102px}}

/* V5: Framer 600px embed — all component sections fit within the iframe. */
html,body{width:100%;height:100%;min-height:0;overflow:hidden}
body{min-height:0}
.app{height:600px;max-height:600px;min-height:0;display:flex;flex-direction:column;padding:12px 14px;overflow:hidden}
header{flex:none;margin:0 0 10px;padding:0 4px;min-height:40px}
.brand-icon{height:34px;width:23px}
.brand strong{font-size:19px}.brand small{font-size:8px;margin-top:3px}
.header-right{font-size:8px}
.categories{flex:none;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:6px;margin:0 0 10px;padding:0;overflow:visible}
.category{height:70px;min-width:0;gap:5px;border-radius:7px}
.category .symbol{height:27px}.category .symbol .amenity-svg{height:25px;width:25px}
.category .label{font-size:8px;line-height:1.2}
.explorer{flex:1;height:auto;min-height:0;overflow:hidden;border-radius:10px}
.sidebar{width:32%;min-width:230px;min-height:0}
.filters{padding:11px 11px 9px}.search{height:37px;padding:0 9px}.search span{font-size:23px}.search input{font-size:11px}
.radius-row{margin-top:9px;gap:7px}.radius-row>span{font-size:9px}.radius-group button{padding:7px 3px;font-size:10px}
.result-heading{padding:10px 12px 5px;font-size:9px}.results{min-height:0;padding:0 10px}
.place{padding:8px 2px;gap:9px}.place-icon{height:40px;width:43px}.place-icon .amenity-svg{width:23px;height:23px}
.place-info strong{font-size:11px}.place-info small{font-size:10px;margin-top:3px}.sidebar-footer{padding:7px 12px;font-size:9px}
.map-top-label{top:11px;left:11px;padding:8px 10px;font-size:9px}.map-controls{top:11px;right:11px}.map-controls button{height:34px;width:34px;font-size:20px}
@media(min-width:651px) and (max-width:1200px){
 .categories{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));overflow:visible;gap:5px}
 .category{min-width:0;height:70px}
 .sidebar{width:34%;min-width:220px}
}
@media(max-width:750px) and (min-width:651px){
 .categories{display:flex;overflow-x:auto;scrollbar-width:thin;gap:7px;padding-bottom:3px}
 .category{flex:0 0 84px;min-width:84px;height:66px}
 .category .label{font-size:8px}
}
@media(max-width:650px){
 html,body{height:100%;overflow:hidden}
 .app{height:600px;min-height:0;max-height:600px;padding:0;display:flex;flex-direction:column}
 header{min-height:52px;padding:8px 12px 5px;margin:0}.brand-icon{width:22px;height:32px}.brand strong{font-size:17px}.brand small{font-size:7px}
 .categories{display:flex;flex:none;gap:9px;overflow-x:auto;overflow-y:hidden;padding:8px 12px 10px;margin:0;scrollbar-width:none;mask-image:linear-gradient(to right,#000 0%,#000 94%,transparent 100%)}
 .category{flex:0 0 90px;min-width:90px;height:65px;gap:3px;border:1px solid #59604e}.category .symbol{height:25px}.category .symbol .amenity-svg{width:23px;height:23px}.category .label{font-size:8px}
 .explorer{display:block;position:relative;flex:1;height:auto;min-height:0;border:0;border-radius:0;overflow:hidden}
 .map-panel{position:absolute;inset:0;height:auto;min-height:0}.sidebar{position:absolute;bottom:0;left:0;right:0;width:100%;height:168px;max-height:calc(100% - 70px);min-width:0;border-radius:18px 18px 0 0;overflow:hidden}
 .sidebar.expanded{height:75%}.mobile-sheet-handle{height:20px}.mobile-sheet-handle span{width:40px;height:4px}
 .filters{padding:2px 12px 5px}.search{height:31px}.result-heading{padding:7px 12px 3px}.results{padding:0 11px}
 .map-controls{top:62px;right:9px}.map-controls button{height:34px;width:34px}.mobile-radius{top:9px}.mobile-radius button{padding:7px 13px;font-size:11px}.map-toast{bottom:180px}
 .sidebar-footer{display:none}.radius-row{display:none}.map-top-label{display:none}
}

/* V6 — mobile: larger usable results tray inside the 600px iframe. */
@media (max-width:650px){
  .sidebar{height:272px;max-height:calc(100% - 112px);display:flex;flex-direction:column}
  .sidebar.expanded{height:calc(100% - 75px);max-height:calc(100% - 75px)}
  .results{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding-bottom:12px}
  .filters,.result-heading,.mobile-sheet-handle{flex:none}
  .map-toast{bottom:282px}
}

/* 440 ESSA — navy colourway based on #24324A. Preserves V6 sizing and interactions. */
:root{color:#f7f9fc;background:#24324A}
body{background:radial-gradient(circle at 50% 0%,#354965,#24324A 76%)}
.brand>div{border-left-color:#8292a9}
.brand small,.header-right{color:#c7d1df}
.live-dot{background:#a6c1db}
.category{background:#344762;color:#f7f9fc;border-color:#526783}
.category:hover{background:#435a77}
.category.active{background:#eaf0f7;color:#24324A}
.explorer{border-color:#8596ad;background:#293b55}
.sidebar{background:linear-gradient(135deg,#344761,#1e2a3e)}
.filters,.sidebar-footer{border-color:#52647c}
.search{border-color:#91a2b8}
.search input::placeholder,.result-heading,.place-info small,.sidebar-footer{color:#c7d3e2}
.radius-group{border-color:#62758e}
.radius-group button.active{background:#eaf0f7;color:#24324A}
.place{border-color:#52647c}
.place:hover,.place.selected{background:#435b7a}
.place-icon{background:#526b8b}
.map-top-label,.map-toast{background:#24324A}
.pin.property{background:#24324A}
.mobile-radius{background:#eaf0f7}
.mobile-radius button{color:#24324A}
.mobile-radius button.active{background:#24324A;color:#fff}
.mobile-sheet-handle span{background:#91a4be}
.map-placeholder{background:linear-gradient(135deg,#e5edf6,#b6c9df);color:#24324A}
.map-placeholder-pin,.map-placeholder button{background:#24324A}
.placeholder-logo{background:#24324A}
