/* El Fortin Order Location Selector — standalone styles */
.efols-backdrop[hidden] { display: none !important; }
.efols-backdrop {
  position: fixed; inset: 0; z-index: 999999;
  background: rgba(15, 11, 9, .72);
  display: flex; align-items: center; justify-content: center;
  padding: 20px; overflow-y: auto; box-sizing: border-box;
}
.efols-dialog {
  position: relative; box-sizing: border-box;
  width: min(100%, 352px);
  padding: 33px 19px 35px;
  background: #fff8ec; color: #4b291f;
  border-radius: 12px; text-align: center;
  box-shadow: 0 18px 55px rgba(0,0,0,.24);
  font-family: Georgia, 'Times New Roman', serif;
}
.efols-close {
  position: absolute; right: 8px; top: 7px;
  display: grid; place-items: center;
  width: 31px; height: 31px; padding: 0;
  color: #151515; background: transparent; border: 0;
  border-radius: 3px; font: 26px/1 Arial, sans-serif; cursor: pointer;
}
.efols-close:hover { background: #f6e8d4; }
.efols-close:focus-visible, .efols-location:focus-visible {
  outline: 2px solid #165d9d; outline-offset: 3px;
}
.efols-eyebrow {
  margin: 0 0 7px; font: 700 10px/1.5 Georgia, serif;
  letter-spacing: .18em; text-transform: uppercase; color: #4b291f;
}
.efols-dialog h2 {
  margin: 0 0 9px; padding: 0; font: 700 25px/1.2 Georgia, 'Times New Roman', serif;
  color: #4b291f; text-transform: none;
}
.efols-dialog p {
  margin: 0 0 19px; padding: 0; font: 13px/1.45 Georgia, 'Times New Roman', serif;
  color: #4b291f;
}
.efols-locations { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.efols-location, .efols-location:visited {
  display: flex; justify-content: center; align-items: center; gap: 4px;
  min-height: 51px; padding: 7px 6px; box-sizing: border-box;
  border: 1px solid #bf1020; border-radius: 6px;
  background: #fffdfa; color: #850d18;
  font: 700 14px/1.2 Georgia, 'Times New Roman', serif;
  text-decoration: none; transition: background .15s ease;
}
.efols-location:hover { background: #fff0e7; color: #850d18; }
.efols-pin { font: 13px/1 Arial, sans-serif; }
@media (max-width: 350px) {
  .efols-dialog { padding-left: 14px; padding-right: 14px; }
  .efols-locations { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .efols-location { transition: none; } }
