:root{--navy:#154280;--red:#ef2c30;--white:#fff;--ink:#1a2233;--muted:#646c7c;--navy-15:#15428026;--navy-25:#15428040;--navy-55:#15428099;--shadow-lg:0 4px 24px #0d2a5238;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Inter", -apple-system, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--sans);color:var(--navy);background:#e9e6df;overflow:hidden}#map{z-index:1;position:absolute;inset:0}.card{z-index:1500;background:var(--white);border-top:3px solid var(--navy);box-shadow:var(--shadow-lg);position:absolute}.eb{letter-spacing:.2em;text-transform:uppercase;color:var(--navy);font-size:10px;font-weight:600}#stat-stack{z-index:1500;flex-direction:column;gap:10px;display:flex;position:absolute;top:16px;right:16px}.stat-badge{text-align:center;opacity:0;min-width:132px;padding:10px 16px;transition:opacity .5s,transform .5s cubic-bezier(.16,1,.3,1);position:static;transform:translate(30px)}.stat-badge.show{opacity:1;transform:none}.tb-num{font-family:var(--serif);color:var(--ink);font-size:32px;font-weight:500;line-height:1}.tb-label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:5px;font-size:9px;line-height:1.45}#building-inset{opacity:0;width:230px;padding:5px 5px 0;transition:opacity .6s,transform .6s cubic-bezier(.16,1,.3,1);top:16px;left:16px;transform:translateY(-16px)}#building-inset.show{opacity:1;transform:none}#building-inset img{width:100%;height:auto;display:block}.bi-caption{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:6px 4px 7px;font-size:9px;font-weight:500}#drivetime-badge{opacity:0;padding:10px 14px;transition:opacity .5s,transform .5s cubic-bezier(.16,1,.3,1);top:150px;left:16px;transform:translate(-30px)}#drivetime-badge.show{opacity:1;transform:none}.dt-row{color:var(--ink);white-space:nowrap;font-size:11px;line-height:1.9}.dt-min{font-family:var(--serif);color:var(--navy);font-size:17px;font-weight:500}#radius-badge{opacity:0;padding:10px 14px;transition:opacity .5s,transform .5s cubic-bezier(.16,1,.3,1);top:16px;left:16px;transform:translate(-30px)}#radius-badge.show{opacity:1;transform:none}.rb-ring{color:var(--ink);white-space:nowrap;align-items:center;gap:7px;font-size:11px;line-height:1.95;display:flex}.rb-swatch{border:1.5px solid var(--navy);border-radius:50%;flex-shrink:0;width:11px;height:11px}.rb-s3{background:#1542804d}.rb-s5{background:#15428029}.rb-s7{background:#1542800f}#info-panel{text-align:center;opacity:0;width:min(540px,100% - 32px);padding:14px 26px 16px;transition:opacity .6s,transform .6s cubic-bezier(.16,1,.3,1);bottom:24px;left:50%;transform:translate(-50%)translateY(24px)}#info-panel.show{opacity:1;transform:translate(-50%)translateY(0)}.ip-status{background:var(--red);color:var(--white);letter-spacing:.18em;text-transform:uppercase;margin-bottom:10px;padding:4px 12px;font-size:10px;font-weight:600;display:inline-block}.ip-suites{justify-content:center;align-items:center;gap:22px;display:flex}.ip-suite-div{background:var(--navy-15);align-self:stretch;width:1px}.ip-sqft{font-family:var(--serif);color:var(--ink);font-size:34px;font-weight:500;line-height:1}.ip-sub{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:5px;font-size:10px}.ip-sub .lc{text-transform:none}.ip-rule{background:var(--navy-15);height:1px;margin:10px 0 8px}.ip-tenants{flex-wrap:wrap;justify-content:center;gap:6px 16px;display:flex}.ip-tenant{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;opacity:0;align-items:center;gap:6px;font-size:10px;transition:opacity .4s,transform .4s;display:flex;transform:translateY(8px)}.ip-tenant.show{opacity:1;transform:none}.ip-dot{background:var(--red);border-radius:50%;width:6px;height:6px}#replay-btn{z-index:1600;background:var(--white);border:1px solid var(--navy-25);color:var(--navy);font:600 10px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-lg);padding:9px 14px;position:absolute;bottom:24px;left:16px}#replay-btn:hover{background:var(--navy);color:var(--white)}.leaflet-container{font-family:var(--sans)}.leaflet-popup-content-wrapper{border-top:3px solid var(--navy);box-shadow:var(--shadow-lg)!important;border-radius:0!important}.popup-title{letter-spacing:.14em;text-transform:uppercase;color:var(--navy);font-size:11px;font-weight:600}.popup-sub{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.5}.prop-pin{background:var(--navy);border:3px solid var(--white);width:48px;height:48px;box-shadow:0 0 0 3px var(--navy-15),0 6px 20px #0d2a528c;border-radius:50% 50% 50% 0;justify-content:center;align-items:center;display:flex;transform:rotate(-45deg)}.prop-pin-inner{color:var(--white);letter-spacing:.06em;text-align:center;font-size:7.5px;font-weight:600;line-height:1.25;transform:rotate(45deg)}.tenant-wrap{align-items:flex-end;display:flex}.tenant-wrap.dir-right{flex-direction:row}.tenant-wrap.dir-left{flex-direction:row-reverse}.tenant-wrap.dir-right .tenant-flag{border-left:3px solid var(--red);margin-bottom:6px;margin-left:6px;transform:translate(-10px)}.tenant-wrap.dir-left .tenant-flag{border-right:3px solid var(--red);margin-bottom:6px;margin-right:6px;transform:translate(10px)}.tenant-wrap .tenant-flag.show{transform:none}.tenant-pin{background:var(--red);border:2.5px solid var(--white);border-radius:50% 50% 50% 0;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex;transform:rotate(-45deg);box-shadow:0 4px 14px #ef2c3073}.tenant-pin-inner{display:flex;transform:rotate(45deg)}.tenant-flag{background:var(--white);color:var(--ink);white-space:nowrap;text-align:center;opacity:0;pointer-events:none;min-width:160px;padding:6px 14px;font-size:12px;font-weight:600;transition:opacity .5s,transform .45s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 10px #0d2a5238}.tenant-flag.show{opacity:1}.amenity-label{background:var(--white);border-left:3px solid var(--navy);color:var(--ink);white-space:nowrap;align-items:center;gap:6px;padding:5px 10px 5px 8px;font-size:11px;font-weight:600;display:flex;box-shadow:0 2px 8px #0d2a522e}.amenity-label .am-dot{background:var(--red);border-radius:50%;flex:none;width:8px;height:8px}@media (width<=700px){#stat-stack,#building-inset,#drivetime-badge{display:none}.tenant-flag{min-width:0;padding:5px 9px;font-size:11px}.ip-sqft{font-size:28px}#info-panel{padding:12px 14px 14px;bottom:64px}}
