/* Scoped announcement: the native dialog provides keyboard focus containment. */
.vclub-announcement{--vca-bg:#251d2d;--vca-ink:#faf5ff;--vca-muted:#cdbfd6;--vca-lilac:#d7b3e9;box-sizing:border-box;width:min(900px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);max-height:calc(100svh - 32px);padding:0;border:1px solid #846295;border-radius:26px;margin:auto;background:var(--vca-bg);color:var(--vca-ink);font-family:inherit;box-shadow:0 30px 100px #10091980;overflow:hidden}
.vclub-announcement:not([open]){display:none}
.vclub-announcement::backdrop{background:rgba(12,8,18,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:vca-backdrop .25s ease both}
.vclub-announcement[open]{animation:vca-enter .35s cubic-bezier(.2,.8,.2,1) both}
html:has(.vclub-announcement[open]){overflow:hidden}
.vclub-announcement *{box-sizing:border-box}
.vclub-announcement__inner{display:grid;grid-template-columns:minmax(0,1fr) 35%;max-height:calc(100vh - 34px);max-height:calc(100svh - 34px);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.vclub-announcement__copy{position:relative;z-index:1;padding:36px 18px 30px 36px;background:radial-gradient(ellipse at 0% 0%,#57326855,transparent 75%)}
.vclub-announcement__eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 15px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--vca-lilac)}
.vclub-announcement__eyebrow svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}
.vclub-announcement #vclub-announcement-title{margin:0;color:var(--vca-ink);font-size:clamp(27px,3.3vw,36px);font-weight:850;letter-spacing:-.035em;line-height:1.1;overflow-wrap:normal}
.vclub-announcement #vclub-announcement-title span{display:block;margin-top:5px;color:var(--vca-lilac);font-size:.8em;letter-spacing:-.025em}
.vclub-announcement #vclub-announcement-title:focus{outline:none}
.vclub-announcement__copy p{margin:0 0 13px;color:var(--vca-muted);font-size:15px;line-height:1.6}
.vclub-announcement__copy .vclub-announcement__lead{margin:19px 0 9px;color:var(--vca-ink);font-size:21px;font-weight:750;line-height:1.3;letter-spacing:-.02em}
.vclub-announcement__membership{display:flex;align-items:center;gap:12px;margin:18px 0 10px;padding:13px 14px;border:1px solid #a87cbd80;border-radius:14px;background:#c698e00d}
.vclub-announcement__membership>svg{flex:none;width:29px;height:29px;fill:none;stroke:var(--vca-lilac);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.vclub-announcement__membership strong{display:block;color:var(--vca-lilac);font-size:15px;line-height:1.4}
.vclub-announcement__membership span{display:block;margin-top:3px;color:var(--vca-muted);font-size:12px;line-height:1.5}
.vclub-announcement__copy .vclub-announcement__note{font-size:12px;line-height:1.5;margin:0 0 22px}
.vclub-announcement__actions{display:flex;align-items:flex-start;flex-direction:column;gap:5px}
.vclub-announcement button{font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.vclub-announcement .vclub-announcement__cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;width:100%;padding:11px 15px;border:1px solid #c39bd9;border-radius:13px;background:transparent;color:var(--vca-ink);font-size:14px;font-weight:750;line-height:1.4;transition:background .2s,border-color .2s}
.vclub-announcement__cta svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vclub-announcement .vclub-announcement__cta:hover{background:#c39bd91a;border-color:#ebc9fc}
.vclub-announcement .vclub-announcement__later{align-self:center;min-height:44px;padding:8px 12px;border:0;background:none;color:var(--vca-muted);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.vclub-announcement .vclub-announcement__close{position:absolute;z-index:3;top:12px;right:12px;display:grid;place-items:center;width:44px;height:44px;padding:12px;border:1px solid #d7b3e980;border-radius:50%;background:#251d2de6;color:#fff}
.vclub-announcement__close svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round}
.vclub-announcement .vclub-announcement__close:hover{background:#4b365a}
.vclub-announcement button:focus-visible,[data-club-announcement-open]:focus-visible{outline:3px solid #e4bcfa;outline-offset:3px}
.vclub-announcement__media{position:relative;min-height:300px;overflow:hidden}
.vclub-announcement__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:67% center;-webkit-mask-image:linear-gradient(90deg,transparent,#000 45%);mask-image:linear-gradient(90deg,transparent,#000 45%)}
.vclub-announcement__media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#251d2d 0%,#251d2da6 22%,transparent 60%);pointer-events:none}
.vclub-announcement__image-label{position:absolute;z-index:1;left:23px;right:22px;bottom:37px;color:#fff;text-shadow:0 2px 15px #1e102b}
.vclub-announcement__image-label span,.vclub-announcement__image-label strong{display:block;font-size:27px;font-weight:800;line-height:1.12;letter-spacing:-.03em}
.vclub-announcement__image-label strong{color:#e4bcfa}
.vclub-announcement__image-label small{display:block;margin-top:16px;color:#e9dcec;font-size:11px;letter-spacing:.05em}
.vclub-announcement-link{display:inline-flex;align-items:center;min-height:44px;gap:8px;margin:8px 0 0;padding:7px 0;border:0;background:none;color:var(--text-primary,#d7b3e9);font:inherit;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
@keyframes vca-enter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes vca-backdrop{from{opacity:0}to{opacity:1}}
@media(max-width:600px){.vclub-announcement{width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100svh - 24px);border-radius:22px}.vclub-announcement__inner{grid-template-columns:1fr;max-height:calc(100vh - 26px);max-height:calc(100svh - 26px)}.vclub-announcement__copy{padding:20px 22px 17px}.vclub-announcement__media{order:-1;height:120px;min-height:0}.vclub-announcement__media img{object-position:center 59%;-webkit-mask-image:none;mask-image:none}.vclub-announcement__media:after{background:linear-gradient(0deg,#251d2d,transparent 85%)}.vclub-announcement__image-label{display:none}.vclub-announcement__eyebrow{margin-bottom:11px}.vclub-announcement #vclub-announcement-title{font-size:clamp(25px,6.7vw,34px)}.vclub-announcement__copy p{font-size:14px;line-height:1.55;margin-bottom:11px}.vclub-announcement__copy .vclub-announcement__lead{font-size:19px;margin-top:15px}.vclub-announcement__membership{margin-top:15px;padding:12px}.vclub-announcement__copy .vclub-announcement__note{margin-bottom:17px}.vclub-announcement__close{top:10px;right:10px}}
@media(max-width:360px){.vclub-announcement__copy{padding:16px}.vclub-announcement__media{height:95px}.vclub-announcement__membership{gap:9px}.vclub-announcement__membership strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.vclub-announcement[open],.vclub-announcement::backdrop{animation:none}.vclub-announcement .vclub-announcement__cta{transition:none}}

#vclub-membership{scroll-margin-top:110px}
@media(max-width:600px){#vclub-membership{scroll-margin-top:165px}}

/* Match the club page when the visitor chooses light appearance. */
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement{--vca-bg:#fbf8fe;--vca-ink:#342b40;--vca-muted:#63586d;--vca-lilac:#75458e;border-color:#c9add9;box-shadow:0 25px 80px #3b254d40;color-scheme:light}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement__copy{background:radial-gradient(ellipse at 0% 0%,#dcc7ed40,transparent 75%)}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement__membership{background:#f4edf9;border-color:#c9add9}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement .vclub-announcement__cta{border-color:#b995d2}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement .vclub-announcement__cta:hover{background:#f1e7f8;border-color:#9c74b5}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement .vclub-announcement__close{background:#fff;color:#69417e;border-color:#b995d2}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement .vclub-announcement__close:hover{background:#f1e7f8}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement button:focus-visible{outline-color:#75458e}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement__media:after{background:linear-gradient(0deg,#fbf8fe 0%,#fbf8fef0 40%,transparent 74%)}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement__image-label{color:#342b40;text-shadow:none}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement__image-label strong{color:#75458e}
:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement__image-label small{color:#63586d}
@media(max-width:600px){:is(html[data-vrool-theme="light"],body[data-theme="light"],body.light) .vclub-announcement__media:after{background:linear-gradient(0deg,#fbf8fe,transparent 85%)}}
