/* 2026-09-25 store guidance and floating CTA refinement */
body.block-lp{padding-bottom:140px}

/* backdrop-filter creates a containing block for position:fixed in Chromium. */
.campaign-header{backdrop-filter:none;-webkit-backdrop-filter:none}

.campaign-header .header-cta{
  position:fixed;
  left:50%;
  bottom:calc(30px + env(safe-area-inset-bottom, 0px));
  z-index:100;
  width:min(calc(100% - 24px),610px);
  min-height:78px;
  padding:10px 64px 11px 24px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:4px solid #ffd86a;
  border-radius:22px;
  background:linear-gradient(135deg,#ff6c39,#e94627);
  color:#fff;
  text-align:center;
  text-decoration:none;
  box-shadow:0 8px 0 #a93621,0 12px 22px rgba(76,35,21,.32);
  transform:translateX(-50%);
}
.campaign-header .header-cta small{display:block;margin-bottom:2px;color:#fff4c1;font-size:11px;line-height:1.2;font-weight:900;letter-spacing:.06em}
.campaign-header .header-cta strong{font-size:21px;line-height:1.2;font-weight:900;letter-spacing:.03em}
.campaign-header .header-cta span{position:absolute;right:22px;top:50%;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:#df4b29;font:900 28px/1 Arial,sans-serif;transform:translateY(-50%);box-shadow:0 3px 0 rgba(113,39,21,.24)}

.campaign-terms{padding:24px 24px 27px;border-top:10px solid #153c46;background:linear-gradient(180deg,#fff6e8,#fffaf4)}
.campaign-terms::before{display:none;content:none}
.campaign-terms p{padding:15px 12px;border:2px solid #f0d7c3;background:#fff;font-size:13px}
.campaign-terms .section-cta{display:none}

.reserve-section{padding-top:42px;background:linear-gradient(180deg,#fff0dc 0,#fff8ef 300px)}
.store-count{display:table;margin:0 auto 10px;padding:6px 15px;border-radius:999px;background:#153c46;color:#fff;font-size:12px;font-weight:900;letter-spacing:.08em;box-shadow:0 4px 0 #0c2931}
.store-name-list{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0 0 20px;padding:0;list-style:none}
.store-name-list li{display:grid;place-items:center;min-height:48px;padding:8px 5px;border:2px solid #f08a63;border-radius:13px;background:#fff;color:#9d3f27;text-align:center;font-size:12px;line-height:1.35;font-weight:900;box-shadow:0 4px 0 #f3c8b5}
.reserve-section>h2{margin-bottom:16px}
.all-store-note{margin:0 auto 15px;padding:14px 15px 15px;border:3px solid #fff;border-radius:18px;background:linear-gradient(135deg,#ff7a40,#ea512c);color:#fff;text-align:center;box-shadow:0 6px 0 #d54827,0 0 0 3px #f2673a}
.all-store-note strong{display:block;font-size:18px;line-height:1.35;font-weight:900}
.all-store-note span{display:block;margin-top:4px;font-size:12px;line-height:1.5;font-weight:700}
.reserve-intro{margin-bottom:25px}
.reserve-footnote{display:none}

@media(max-width:380px){
  body.block-lp{padding-bottom:128px}
  .campaign-header .header-cta{bottom:calc(22px + env(safe-area-inset-bottom, 0px));min-height:72px;padding-right:54px;border-radius:19px}
  .campaign-header .header-cta strong{font-size:19px}
  .campaign-header .header-cta span{right:16px}
  .store-name-list{gap:5px}
  .store-name-list li{font-size:11px}
}

.store-hours-break{display:block;margin:4px 0;color:#8a5b47;font-size:12px;line-height:1.5;font-weight:800}

/* Store selector anchor links */
.store-name-list li{padding:0;overflow:hidden}
.store-name-list a{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  width:100%;
  min-height:48px;
  padding:7px 4px;
  border-radius:inherit;
  color:inherit;
  text-decoration:none;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.store-name-list a::after{
  content:"↓";
  display:grid;
  place-items:center;
  flex:0 0 17px;
  width:17px;
  height:17px;
  border-radius:50%;
  background:#ffe4d6;
  color:#d84a25;
  font-size:11px;
  line-height:1;
}
.store-name-list a:hover,
.store-name-list a:active{background:#f2673a;color:#fff}
.store-name-list a:hover::after,
.store-name-list a:active::after{background:#fff;color:#d84a25}
.store-name-list a:focus-visible{outline:3px solid #153c46;outline-offset:-3px}
.simple-store{scroll-margin-top:82px}
@media(max-width:380px){
  .store-name-list a{min-height:48px;padding-inline:2px}
  .store-name-list a::after{flex-basis:15px;width:15px;height:15px;font-size:10px}
}