/* Event banner: a date-windowed festive strip at the top of a page, pushing an
   event happening at one of the marinas. Reads the same takeover config as the
   /links hub (data/links.json takeover.events), shown where promote_on lists the
   page. Self-contained; loaded only on the pages that opt in. */
.evtb{background:linear-gradient(100deg,#102a19 0%,#1c4228 52%,#15321e 100%);border-bottom:2px solid #ECA232}
.evtb-in{max-width:1160px;margin:0 auto;display:flex;align-items:center;gap:14px 18px;flex-wrap:wrap;
  padding-top:12px;padding-bottom:12px;
  padding-left:max(16px,env(safe-area-inset-left,0px));
  padding-right:max(16px,env(safe-area-inset-right,0px))}

/* festive mark */
.evtb-mark{flex:none;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;
  background:rgba(236,162,50,.15);border:1px solid rgba(236,162,50,.35)}
.evtb-mark svg{width:19px;height:19px;fill:#f0b24a}

/* title + date */
.evtb-main{flex:1 1 230px;min-width:0;color:#fff;line-height:1.28}
.evtb-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f0b24a;margin-bottom:1px}
.evtb-title{display:block;font-weight:700;font-size:16px;color:#fff;letter-spacing:.01em}
.evtb-when{display:block;font-size:12.5px;color:#cfe0dc;margin-top:1px}

/* clickable address chip */
.evtb-addr{flex:0 1 auto;display:inline-flex;align-items:center;gap:9px;min-width:0;text-decoration:none;
  background:rgba(236,162,50,.13);border:1px solid rgba(236,162,50,.5);border-radius:10px;padding:8px 13px;color:#fff}
.evtb-addr:hover{background:rgba(236,162,50,.2)}
.evtb-addr .pin{flex:none;display:flex}
.evtb-addr .pin svg{width:17px;height:17px;stroke:#f0b24a;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.evtb-addr .t{min-width:0;font-size:12.5px;line-height:1.25}
.evtb-addr .t b{color:#f0b24a;display:block;font-weight:700;letter-spacing:.02em}

/* CTA + dismiss */
.evtb-cta{flex:none;background:#ECA232;color:#20150a;font-weight:700;font-size:13.5px;text-decoration:none;
  padding:10px 16px;border-radius:9px;white-space:nowrap;transition:filter .15s}
.evtb-cta:hover{filter:brightness(1.06)}
.evtb-x{flex:none;background:transparent;border:0;color:#bcd0ca;font-size:22px;line-height:1;cursor:pointer;padding:2px 4px;align-self:flex-start}
.evtb-x:hover{color:#fff}

@media (max-width:620px){
  .evtb-in{gap:9px 12px;padding-top:11px;padding-bottom:12px;position:relative;align-items:flex-start}
  .evtb-mark{display:none}
  .evtb-main{flex:1 1 auto;min-width:0;padding-right:34px}
  .evtb-title{font-size:15.5px}
  .evtb-when{font-size:12px}
  .evtb-x{position:absolute;top:7px;right:8px;margin:0;padding:4px 8px;font-size:24px}
  .evtb-addr{flex-basis:100%;padding:8px 12px}
  .evtb-addr .t{font-size:12px;line-height:1.3}
  .evtb-cta{order:3;flex-basis:100%;text-align:center;padding:10px 16px;font-size:13.5px}
}
@media (prefers-reduced-motion:reduce){.evtb-cta{transition:none}}
