.reserve-contact{padding:20px 22px;margin:16px 0;border-radius:10px;background:#f1f8ed;color:#183b21;border:1px solid #c4dcb7;font-family:Arial,sans-serif;font-size:16px;line-height:1.55}
.reserve-contact p{margin:0 0 10px!important}.reserve-contact a{display:inline-block;font-size:18px;font-weight:700;color:#21682a!important;text-decoration:underline}
img.reserve-ready{opacity:1!important;visibility:visible!important}
[class*="animate_"]{opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important}
.dashicons-star-filled:before,.dashicons-star-half:before{content:"★"!important;font-family:Arial,sans-serif!important}
.dashicons-star-empty:before{content:"☆"!important;font-family:Arial,sans-serif!important}
.reserve-notice{position:fixed;z-index:999999;left:16px;right:16px;bottom:16px;margin:auto;max-width:640px;padding:18px 48px 18px 20px;border-radius:10px;background:#fff;color:#222;box-shadow:0 4px 30px #0004;font:16px/1.5 Arial,sans-serif}
.reserve-notice a{color:#21682a;font-weight:700}.reserve-notice button{position:absolute;right:10px;top:8px;border:0;background:none;color:#333;font-size:28px;cursor:pointer}
@media(max-width:600px){.reserve-contact{padding:16px}.reserve-contact a{font-size:17px}}

.reserve-archive-banner {
  margin: 0;
  padding: .45rem .85rem;
  text-align: center;
  background: #eef4f8;
  color: #263949;
  font: .9rem/1.45 system-ui, sans-serif;
}
.reserve-archive-banner a { color: #20577e; font-weight: 700; text-decoration: underline; white-space: nowrap; }
.reserve-mobile-menu { display: none; }
@media (max-width: 900px) {
  .reserve-mobile-menu:not([hidden]) {
    position: absolute;
    z-index: 110;
    top: 100%;
    inset-inline: 0;
    display: grid;
    max-height: min(70vh, 29rem);
    overflow-y: auto;
    background: #20252d;
    padding: .5rem 1rem;
    box-shadow: 0 9px 18px #0003;
  }
  .reserve-mobile-menu a { padding: .6rem .35rem; color: white; }
  .reserve-mobile-menu a:focus-visible { outline: 2px solid white; }
}

.l-section-img { opacity: 1; }
