/* Sitewide sponsor bar: ivory / ink / gold. Fixed height so it does not shift the layout. */
:root{--sbar-h:42px}
.sbar{position:fixed;left:0;right:0;bottom:0;z-index:55;box-sizing:border-box;height:calc(var(--sbar-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);display:flex;align-items:center;background:#FBF8F3;color:#2A2421;font-size:13.5px;line-height:1.2;border-top:1px solid #F6CF6E;box-shadow:0 -6px 18px rgba(42,36,33,.06)}
.sbar[hidden]{display:none!important}
.sbar-track{flex:1;min-width:0;overflow:hidden}
.sbar-run{display:inline-flex;align-items:center;white-space:nowrap;animation:sbar-mq 42s linear infinite;will-change:transform}
.sbar:hover .sbar-run,.sbar:focus-within .sbar-run{animation-play-state:paused}
.sbar-item{display:inline-flex;align-items:center;gap:8px;padding:0 32px;color:#2A2421;text-decoration:none}
.sbar-item:hover,.sbar-item:focus{color:#9A7322}
.sbar-item em{font-style:italic;font-family:var(--serif,Georgia,serif);color:#9A7322;font-weight:400}
.sbar-name{font-weight:600}
.sbar-dot{color:#9A7322;opacity:.7}
.sbar-tag{flex:none;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#9A7322;border:1px solid #9A7322;border-radius:999px;padding:1px 8px;font-weight:600}
.sbar-logo{width:20px;height:20px;object-fit:contain;border-radius:4px;background:#fff}
.sbar-x{flex:none;width:42px;height:var(--sbar-h);border:0;background:transparent;color:#2A2421;font-size:22px;line-height:1;cursor:pointer}
.sbar-x:hover,.sbar-x:focus{color:#9A7322;background:rgba(246,207,110,.25)}
@keyframes sbar-mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* Placeholder: a quiet, static house line. No marquee. */
.sbar-ph .sbar-track-ph{display:flex;justify-content:center;align-items:center}
.sbar-ph-link{color:#2A2421;text-decoration:none;font-size:13.5px;padding:0 16px;text-align:center}
.sbar-ph-link:hover,.sbar-ph-link:focus{color:#9A7322;text-decoration:underline;text-underline-offset:3px}
@media (prefers-reduced-motion:reduce){
  .sbar-run{animation:none;flex-wrap:wrap;white-space:normal;justify-content:center;width:100%;padding:0 8px}
  .sbar-track{overflow-x:auto}
  .sbar-item{padding:4px 16px}
}
body.has-sbar{padding-bottom:calc(var(--sbar-h) + env(safe-area-inset-bottom,0px))}
body.has-sbar .as-fab{bottom:calc(var(--sbar-h) + 20px + env(safe-area-inset-bottom,0px))}
body.has-sbar .toast{bottom:calc(var(--sbar-h) + 20px + env(safe-area-inset-bottom,0px))}
@media (max-width:600px){
  :root{--sbar-h:40px}
  .sbar{font-size:12.5px}
  .sbar-item{padding:0 22px;gap:6px}
}
/* On small screens the "Plan this trip" bar stays at the bottom; the sponsor bar sits just above it. */
@media (max-width:800px){
  body.has-pbar.has-sbar{padding-bottom:calc(84px + var(--sbar-h))}
  body.has-pbar .sbar{display:flex!important;bottom:84px;height:var(--sbar-h);padding-bottom:0}
  body.has-pbar.has-sbar .toast{bottom:calc(84px + var(--sbar-h) + 8px)}
  body.has-pbar.has-sbar .as-fab{display:none}
}
.demo-banner{background:#b3261e;color:#fff;font:600 14px/1.4 sans-serif;padding:10px 16px;text-align:center;position:relative;z-index:9999}
