/* The Property Room — login / create-account modal */
.lm-overlay{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:20px;
  background:rgba(13,32,45,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.lm-overlay.open{display:flex}
.lm{width:100%;max-width:440px;background:#fff;border-radius:24px;box-shadow:0 40px 90px rgba(13,32,45,.42);
  overflow:hidden;position:relative;animation:lmpop .35s cubic-bezier(.2,.8,.2,1)}
@keyframes lmpop{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
.lm__close{position:absolute;top:14px;right:16px;width:34px;height:34px;border:none;background:none;cursor:pointer;
  color:var(--muted);font-size:24px;line-height:1;border-radius:50%;transition:.2s}
.lm__close:hover{color:var(--charcoal-d);background:var(--paper-2)}
.lm__head{padding:36px 36px 0;text-align:center}
.lm__brand{font-family:var(--disp);font-weight:400;font-size:18px;letter-spacing:.26em;text-transform:uppercase;color:var(--charcoal-d)}
.lm__sub{font-size:13px;color:var(--muted);margin-top:8px}
.lm__tabs{display:flex;gap:5px;margin:22px 36px 0;background:var(--paper-2);border:1px solid var(--line);border-radius:100px;padding:5px}
.lm__tab{flex:1;border:none;background:none;cursor:pointer;font-family:var(--disp);font-size:13.5px;font-weight:500;
  color:var(--grey);padding:10px;border-radius:100px;transition:.25s}
.lm__tab.on{background:var(--charcoal-d);color:#fff}
.lm__body{padding:24px 36px 36px}
.lm__pane{display:none}
.lm__pane.on{display:block}
.lm__field{margin-bottom:14px}
.lm__field label{display:block;font-family:var(--disp);font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--charcoal-d);margin-bottom:7px}
.lm__field input{width:100%;padding:13px 16px;border:1px solid var(--line-2);border-radius:12px;
  font-family:var(--body);font-size:15px;color:var(--charcoal-d);outline:none;transition:.2s;background:#fff}
.lm__field input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(71,201,239,.14)}
.lm__btn{width:100%;justify-content:center;margin-top:6px;padding:15px;font-size:15px}
.lm__hint{font-size:12.5px;color:var(--muted);text-align:center;margin-top:16px;line-height:1.6}
.lm__hint a{color:var(--blue-d);cursor:pointer;font-weight:500}
.lm__err{display:none;font-size:12.5px;color:#b5772a;margin-top:8px;text-align:center}
.lm__icon{width:58px;height:58px;border-radius:50%;background:var(--blue-soft);display:grid;place-items:center;margin:4px auto 18px}
.lm__icon svg{width:28px;height:28px;stroke:var(--blue-d);stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.lm__msg h4{font-family:var(--disp);font-weight:500;font-size:21px;color:var(--charcoal-d);margin-bottom:10px;text-align:center}
.lm__msg p{font-size:14px;color:var(--grey);line-height:1.7;margin-bottom:20px;text-align:center}

/* mobile navigation */
@media(max-width:560px){
  .brand{font-size:12px;letter-spacing:.18em}
  .nav__pill{gap:12px;padding:9px 10px 9px 18px}
}
@media(max-width:980px){
  .nav__pill > .btn{display:none}
}
.burger span{transition:transform .25s ease, top .25s ease, bottom .25s ease}
.burger.on span:first-child{transform:rotate(45deg);top:6px}
.burger.on span:last-child{transform:rotate(-45deg);bottom:5px}
.navsheet{position:fixed;top:78px;left:14px;right:14px;z-index:55;display:none;flex-direction:column;gap:2px;padding:12px;
  border-radius:20px;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);
  border:1px solid rgba(255,255,255,.8);box-shadow:0 24px 56px rgba(30,55,90,.2);animation:lmpop .28s cubic-bezier(.2,.8,.2,1)}
.navsheet.open{display:flex}
.navsheet a{font-family:var(--disp);font-size:15px;color:var(--charcoal-d);padding:13px 14px;border-radius:12px;letter-spacing:.02em}
.navsheet a:active,.navsheet a:hover{background:var(--paper-2);color:var(--blue-d)}
.navsheet .btn{margin-top:8px;justify-content:center;width:100%}
