/* Location picker: State dropdown, City dropdown, one button.
   Uses the site's design tokens from style.css. */
.lp{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; gap:16px; align-items:end;
    max-width:820px; padding:24px; background:#fff; border:1px solid var(--border); border-radius:4px;}
.lp-field label{display:block; margin-bottom:6px; font-size:.75rem; font-weight:700; letter-spacing:.03em; color:var(--stone);}
.lp select{width:100%; height:46px; padding:0 40px 0 14px; border:1px solid var(--border); border-radius:var(--radius);
    background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238A8175' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>") no-repeat right 14px center;
    -webkit-appearance:none; appearance:none; font:inherit; font-size:.95rem; color:var(--ink); cursor:pointer;
    text-overflow:ellipsis;}
.lp select:hover:not(:disabled){border-color:var(--stone);}
.lp select:focus-visible{outline:2px solid var(--gold); outline-offset:1px;}
.lp select:disabled{background-color:var(--off-white); color:var(--stone); cursor:not-allowed;}
.lp-go{height:46px; padding:0 26px;}
.lp-note{grid-column:1 / -1; margin:0; font-size:.85rem; color:var(--stone);}
.lp-note[hidden]{display:none;}

/* Collapsed list of plain links (keeps every page reachable without JavaScript) */
.lp-all{max-width:820px; margin-top:20px; font-size:.9rem;}
.lp-all summary{cursor:pointer; color:var(--gold-deep); font-weight:600; padding:6px 0;}
.lp-links{list-style:none; margin:12px 0 0; padding:0; max-height:320px; overflow-y:auto; overscroll-behavior:contain;
    display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:0; border:1px solid var(--border); border-radius:4px; background:#fff; scrollbar-width:thin;}
.lp-links a{display:block; padding:9px 14px; border-bottom:1px solid var(--border); color:var(--ink);}
.lp-links a:hover{background:var(--off-white); color:var(--gold-deep);}
.lp-none{color:var(--stone); margin:10px 0 0;}

@media (max-width:640px){
  .lp{grid-template-columns:minmax(0,1fr); padding:18px;}
  .lp-go{width:100%;}
}
