/* Passes page: mockups 009 Passes (phone) and 095 DeskPasses (desktop); before sale: 111 / 114. */
/* --sloff-pass-member keeps Palm orange inside the cards: poster-art.css turns --sloff-palm-orange into ink on every card, so it is captured out here. */
.sloff-passes{--sloff-pass-member:var(--sloff-palm-orange,#e95421);display:flex;flex-direction:column;gap:var(--sloff-space-4);color:var(--sloff-text);font-family:var(--sloff-font)}
/* Page column: the Passes page shipped in a boxed 1120 px container; line it up with the 1260 px column and gutter every other page gets (elementor-bridge.css). */
body .elementor[data-elementor-type="wp-page"]>.e-con.e-con-boxed:has(>.e-con-inner>.elementor-widget-sloff-passes){--content-width:var(--sloff-content-max,1260px);--padding-left:max(var(--sloff-gutter,16px),calc((100% - var(--sloff-content-max,1260px)) / 2));--padding-right:max(var(--sloff-gutter,16px),calc((100% - var(--sloff-content-max,1260px)) / 2))}
.sloff-passes>*{margin:0}
.sloff-passes__intro{order:0;display:grid;gap:var(--sloff-space-2);margin:0}
.sloff-passes__closed,.sloff-passes__preview,.sloff-passes__empty{order:1}
/* Phone, same order as desktop (Ryan, 2026-10-22; board 009 had finder → cards → member box): Palm member box,
   then the cards, then "Which pass is right for me?". */
.sloff-passes__member{order:2}
.sloff-passes__tiers{order:3}
.sloff-passes__helper{order:4}
.sloff-passes__comparison{order:5}
.sloff-passes__faq{order:6}
.sloff-passes__perks{order:7}

/* Intro */
.sloff-passes .sloff-passes__eyebrow{margin:0;color:var(--sloff-fest-highlight)!important;font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-eyebrow);text-transform:uppercase}
.sloff-passes .sloff-passes__intro h1{margin:0;color:var(--sloff-text);font-size:var(--sloff-fs-display);font-weight:var(--sloff-fw-black);line-height:1;letter-spacing:var(--sloff-ls-display);text-transform:none}
.sloff-passes .sloff-passes__intro p:not(.sloff-passes__eyebrow){max-width:52rem;margin:var(--sloff-space-1) 0 0;color:var(--sloff-text-muted);font-size:var(--sloff-fs-15);line-height:1.5}

/* Shared headings inside the page */
.sloff-passes h2{color:var(--sloff-text);text-transform:none}

/* Tier cards */
.sloff-passes__tiers{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sloff-space-3)}
/* The finder's "Suggested: …" link glides to its card. */
@media (prefers-reduced-motion:no-preference){html:has(.sloff-passes__helper){scroll-behavior:smooth}}
.sloff-passes__card{display:flex;flex-direction:column;gap:var(--sloff-space-3);padding:var(--sloff-space-5);border:1px solid var(--sloff-line);border-radius:var(--sloff-radius-card);background:var(--sloff-surface-1);scroll-margin-top:96px;transition:border-color .2s ease}
.sloff-passes__card.is-featured{border-color:var(--sloff-fest-accent)}
.sloff-passes__card header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"badges badges" "name prices" "avail avail";column-gap:var(--sloff-space-3);row-gap:var(--sloff-space-1);align-items:start}
.sloff-passes__badges{grid-area:badges;display:flex;flex-wrap:wrap;gap:var(--sloff-space-2);margin:0 0 var(--sloff-space-1)}
.sloff-passes .sloff-passes__badge{margin:0;padding:3px 10px;border-radius:var(--sloff-radius-pill);background:var(--sloff-fest-accent);color:var(--sloff-fest-accent-ink);font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-extrabold);letter-spacing:.02em;line-height:1.4;text-transform:uppercase}
.sloff-passes .sloff-passes__badge--suggested{display:none;animation:sloff-pass-badge-in .2s ease-out}
@keyframes sloff-pass-badge-in{from{opacity:0;transform:translateY(-3px)}}
.sloff-passes .sloff-passes__card h2{grid-area:name;margin:0;font-size:var(--sloff-fs-18);font-weight:var(--sloff-fw-extrabold);line-height:1.25}
.sloff-passes .sloff-passes__prices{grid-area:prices;display:flex;flex-direction:column;align-items:flex-end;gap:2px;max-width:8.5rem;margin:0;text-align:right}
.sloff-passes__price{color:var(--sloff-text);font-size:var(--sloff-fs-20);font-weight:var(--sloff-fw-black);line-height:1.1}
.sloff-passes__member-price{color:var(--sloff-pass-member);text-wrap:balance;font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-bold);line-height:1.3}
.sloff-passes .sloff-passes__availability{grid-area:avail;margin:var(--sloff-space-1) 0 0;color:var(--sloff-text-muted);font-size:var(--sloff-fs-13)}
.sloff-passes .sloff-passes__description{margin:0;color:var(--sloff-text-body);font-size:var(--sloff-fs-14);line-height:1.5}
.sloff-passes .sloff-passes__card ul{display:flex;flex-direction:column;gap:2px;margin:0;padding-left:18px;color:var(--sloff-text-body);font-size:var(--sloff-fs-14);line-height:1.55}
.sloff-passes .sloff-passes__editor-notice{margin:0;padding:var(--sloff-space-2);border:1px dashed var(--sloff-line-strong);border-radius:var(--sloff-radius-control);color:var(--sloff-text-muted);font-size:var(--sloff-fs-12)}

/* Buy button: Eventive hydrates the host with its own Material UI button and inline styles,
   so these rules need !important. Eventive still owns the click and the checkout. */
.sloff-passes__buy{margin-top:auto;padding-top:var(--sloff-space-2)}
.sloff-passes .eventive-button{display:block;width:100%;min-height:var(--sloff-button-h);margin:0}
/* Until Eventive hydrates (about 1–2 s), the empty host already looks like the finished button, with the label
   Eventive will print (data-buy-label), so the button doesn't pop from an empty outline to a filled pill. */
.sloff-passes .eventive-button:empty{display:flex;box-sizing:border-box;align-items:center;justify-content:center;padding:0 var(--sloff-space-button-x);border:1px solid var(--sloff-fest-accent);border-radius:var(--sloff-radius-pill);background:var(--sloff-fest-accent);color:var(--sloff-fest-accent-ink);cursor:progress}
.sloff-passes .eventive-button:empty::before{content:attr(data-buy-label);font-family:var(--sloff-font);font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-button);line-height:1.2;text-align:center;text-transform:uppercase}
.sloff-passes .eventive-button>.eventive-widget-container,.sloff-passes .eventive-button .eventive__pass-button__button{display:block!important;width:100%!important;margin:0!important;padding:0!important;border-radius:var(--sloff-radius-pill)!important;background:transparent!important;box-shadow:none!important;font-family:var(--sloff-font)!important}
.sloff-passes .eventive-button button{display:block!important;box-sizing:border-box!important;width:100%!important;height:var(--sloff-button-h)!important;min-height:var(--sloff-button-h)!important;margin:0!important;padding:0 var(--sloff-space-button-x)!important;border:1px solid var(--sloff-fest-accent)!important;border-radius:var(--sloff-radius-pill)!important;background:var(--sloff-fest-accent)!important;color:var(--sloff-fest-accent-ink)!important;font-family:var(--sloff-font)!important;line-height:1!important;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease!important}
.sloff-passes .eventive-button button>div,.sloff-passes .eventive-button button>div>div{display:flex!important;align-items:center;justify-content:center;height:100%!important;border-radius:inherit!important;background:transparent!important}
.sloff-passes .eventive-button button span{padding:0!important;color:inherit!important;font-family:var(--sloff-font)!important;font-size:var(--sloff-fs-13)!important;font-weight:var(--sloff-fw-extrabold)!important;letter-spacing:var(--sloff-ls-button)!important;line-height:1.2!important;text-align:center;text-transform:uppercase!important;white-space:normal}
.sloff-passes .eventive-button button>div>span:first-child{display:none!important}/* Material ripple layer */
.sloff-passes .eventive-button button:hover,.sloff-passes .eventive-button button:focus-visible{border-color:var(--sloff-fest-accent-hover)!important;background:var(--sloff-fest-accent-hover)!important}
.sloff-passes .eventive-button button:focus-visible{outline:3px solid var(--sloff-text)!important;outline-offset:3px}
.sloff-passes .eventive-button button[disabled]{border-color:var(--sloff-line-strong)!important;background:transparent!important;color:var(--sloff-text-muted)!important;cursor:not-allowed}

/* Pass finder: CSS-only radios. Up to eight answers. */
.sloff-passes__helper{display:flex;flex-direction:column;gap:var(--sloff-space-3);padding:var(--sloff-space-4);border-radius:var(--sloff-radius-card);background:var(--sloff-surface-2)}
.sloff-passes__helper-copy{display:flex;flex-direction:column;gap:var(--sloff-space-1)}
.sloff-passes .sloff-passes__helper h2{margin:0;font-size:var(--sloff-fs-16);font-weight:var(--sloff-fw-extrabold);line-height:1.3}
.sloff-passes .sloff-passes__helper p{margin:0;color:var(--sloff-text-muted);font-size:var(--sloff-fs-13)}
.sloff-passes__choices{display:flex;flex-wrap:wrap;gap:var(--sloff-space-2)}
.sloff-passes__choice{position:relative;display:block;flex:1 0 auto;min-width:72px;margin:0;cursor:pointer}
.sloff-passes__choice input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.sloff-passes__choice span{display:flex;min-height:var(--sloff-tap-min);align-items:center;justify-content:center;padding:0 var(--sloff-space-4);border:1px solid var(--sloff-line-strong);border-radius:var(--sloff-radius-pill);color:var(--sloff-text);font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-bold);text-align:center;white-space:nowrap;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.sloff-passes__choice:hover span{border-color:var(--sloff-text)}
.sloff-passes__choice input:checked+span{border-color:var(--sloff-fest-accent);background:var(--sloff-fest-accent);color:var(--sloff-fest-accent-ink)}
.sloff-passes__choice input:focus-visible+span{outline:3px solid var(--sloff-fest-accent);outline-offset:3px}
.sloff-passes__suggestions:empty{display:none}
.sloff-passes .sloff-passes__helper .sloff-passes__suggestion{display:none;margin:0;color:var(--sloff-fest-accent);font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-extrabold)}
.sloff-passes .sloff-passes__suggestion a{color:inherit;font-size:inherit;font-weight:inherit;text-decoration:none}
.sloff-passes .sloff-passes__suggestion a:hover{text-decoration:underline}
.sloff-passes__helper:has(input[value="0"]:checked) .sloff-passes__suggestion[data-choice="0"],
.sloff-passes__helper:has(input[value="1"]:checked) .sloff-passes__suggestion[data-choice="1"],
.sloff-passes__helper:has(input[value="2"]:checked) .sloff-passes__suggestion[data-choice="2"],
.sloff-passes__helper:has(input[value="3"]:checked) .sloff-passes__suggestion[data-choice="3"],
.sloff-passes__helper:has(input[value="4"]:checked) .sloff-passes__suggestion[data-choice="4"],
.sloff-passes__helper:has(input[value="5"]:checked) .sloff-passes__suggestion[data-choice="5"],
.sloff-passes__helper:has(input[value="6"]:checked) .sloff-passes__suggestion[data-choice="6"],
.sloff-passes__helper:has(input[value="7"]:checked) .sloff-passes__suggestion[data-choice="7"]{display:block}
/* The suggested card gets the accent outline and its Suggested badge. */
.sloff-passes:has(.sloff-passes__helper input[value="0"]:checked) .sloff-passes__card[data-suggest~="0"],
.sloff-passes:has(.sloff-passes__helper input[value="1"]:checked) .sloff-passes__card[data-suggest~="1"],
.sloff-passes:has(.sloff-passes__helper input[value="2"]:checked) .sloff-passes__card[data-suggest~="2"],
.sloff-passes:has(.sloff-passes__helper input[value="3"]:checked) .sloff-passes__card[data-suggest~="3"],
.sloff-passes:has(.sloff-passes__helper input[value="4"]:checked) .sloff-passes__card[data-suggest~="4"],
.sloff-passes:has(.sloff-passes__helper input[value="5"]:checked) .sloff-passes__card[data-suggest~="5"],
.sloff-passes:has(.sloff-passes__helper input[value="6"]:checked) .sloff-passes__card[data-suggest~="6"],
.sloff-passes:has(.sloff-passes__helper input[value="7"]:checked) .sloff-passes__card[data-suggest~="7"]{border-color:var(--sloff-fest-accent);--sloff-pass-suggested:1}
.sloff-passes:has(.sloff-passes__helper input[value="0"]:checked) .sloff-passes__card[data-suggest~="0"]:not(.is-featured) .sloff-passes__badge--suggested,
.sloff-passes:has(.sloff-passes__helper input[value="1"]:checked) .sloff-passes__card[data-suggest~="1"]:not(.is-featured) .sloff-passes__badge--suggested,
.sloff-passes:has(.sloff-passes__helper input[value="2"]:checked) .sloff-passes__card[data-suggest~="2"]:not(.is-featured) .sloff-passes__badge--suggested,
.sloff-passes:has(.sloff-passes__helper input[value="3"]:checked) .sloff-passes__card[data-suggest~="3"]:not(.is-featured) .sloff-passes__badge--suggested,
.sloff-passes:has(.sloff-passes__helper input[value="4"]:checked) .sloff-passes__card[data-suggest~="4"]:not(.is-featured) .sloff-passes__badge--suggested,
.sloff-passes:has(.sloff-passes__helper input[value="5"]:checked) .sloff-passes__card[data-suggest~="5"]:not(.is-featured) .sloff-passes__badge--suggested,
.sloff-passes:has(.sloff-passes__helper input[value="6"]:checked) .sloff-passes__card[data-suggest~="6"]:not(.is-featured) .sloff-passes__badge--suggested,
.sloff-passes:has(.sloff-passes__helper input[value="7"]:checked) .sloff-passes__card[data-suggest~="7"]:not(.is-featured) .sloff-passes__badge--suggested{display:inline-block}

/* Palm member box */
.sloff-passes__member{display:flex;flex-direction:column;gap:var(--sloff-space-3);padding:var(--sloff-space-5);border:1px solid var(--sloff-palm-orange);border-radius:var(--sloff-radius-card);background:transparent}
.sloff-passes .sloff-passes__member-copy{margin:0;color:var(--sloff-text-body);font-size:var(--sloff-fs-14);line-height:1.5}
.sloff-passes__member-copy strong{color:var(--sloff-palm-orange);font-weight:var(--sloff-fw-extrabold)}
.sloff-passes .sloff-passes__member-actions{display:flex;flex-wrap:wrap;gap:var(--sloff-space-2);margin:0}
.sloff-passes__member-actions a{display:inline-flex;min-height:var(--sloff-tap-min);align-items:center;justify-content:center;box-sizing:border-box;padding:0 var(--sloff-space-4);border:1px solid var(--sloff-line-strong);border-radius:var(--sloff-radius-pill);color:var(--sloff-text)!important;font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-button);text-decoration:none!important;text-transform:uppercase;white-space:nowrap;transition:border-color .2s ease,filter .2s ease}
.sloff-passes__member-actions a:hover{border-color:var(--sloff-text)}
.sloff-passes .sloff-passes__member-actions a.sloff-passes__member-login{border-color:var(--sloff-palm-orange);background:var(--sloff-palm-orange);color:var(--sloff-palm-orange-ink)!important}
.sloff-passes .sloff-passes__member-actions a.sloff-passes__member-login:hover{filter:brightness(1.1)}
.slo-ec-logged-in .sloff-passes__member-login{display:none!important}
/* Signed-in Palm members don't need the member box (Core sets .slo-ec-member; restored before paint on later visits). */
.slo-ec-member .sloff-passes__member{display:none!important}
/* Member prices (passes.js): the member price takes the price's place, the regular price struck through beside it;
   cards no membership rule covers drop the "member price at checkout" line. */
.sloff-passes .sloff-passes__price-was{color:var(--sloff-text);font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-bold);line-height:1.2;opacity:.6;text-decoration:line-through}
.sloff-passes__card.is-member-priced .sloff-passes__price{color:var(--sloff-pass-member)}
.sloff-passes .sloff-passes__card.is-member-full .sloff-passes__member-price{color:var(--sloff-text);font-weight:var(--sloff-fw-bold);opacity:.7}
.sloff-passes .sloff-passes__member-price[hidden]{display:none}
/* Phones: the two pills fill the row (and stack when they don't fit) instead of wrapping ragged. */
@media (max-width:767px){
	.sloff-passes__member-actions a{flex:1 1 auto}
	/* Members, pass with no member discount: the note gets its own line under the name instead of squeezing into the price column. */
	.sloff-passes__card.is-member-full header{grid-template-areas:"badges badges" "name prices" "note note" "avail avail"}
	.sloff-passes .sloff-passes__card.is-member-full .sloff-passes__prices{display:contents}
	.sloff-passes__card.is-member-full .sloff-passes__price{grid-area:prices;justify-self:end}
	.sloff-passes .sloff-passes__card.is-member-full .sloff-passes__member-price{grid-area:note;text-align:left}
}

/* Comparison (optional) */
.sloff-passes__comparison{overflow-x:auto;padding:var(--sloff-space-4);border:1px solid var(--sloff-line);border-radius:var(--sloff-radius-card);background:var(--sloff-surface-1)}
.sloff-passes .sloff-passes__comparison h2{margin:0;font-size:var(--sloff-fs-20);font-weight:var(--sloff-fw-extrabold)}
.sloff-passes__comparison table{width:100%;margin-top:var(--sloff-space-3);border-collapse:collapse;text-align:left}
.sloff-passes__comparison th,.sloff-passes__comparison td{padding:var(--sloff-space-3);border-bottom:1px solid var(--sloff-line);color:var(--sloff-text-body)}
.sloff-passes__comparison thead th{color:var(--sloff-text);font-weight:var(--sloff-fw-bold)}

/* FAQ: accordion on phones, open two-column list on desktop. Not a card: undo the sitewide paper panel (poster-art.css). */
body .sloff-passes .sloff-passes__faq.sloff-passes__faq{padding-right:0;padding-left:0;padding-bottom:0;border:0;border-radius:0;background:transparent;color:var(--sloff-text)}
/* Pass cards keep the plain 1px outline from the mockup (no top paper strip). */
body .sloff-passes .sloff-passes__card.sloff-passes__card{border-top-width:1px}
.sloff-passes__faq{display:flex;flex-direction:column;gap:var(--sloff-space-2);padding-top:var(--sloff-space-2)}
.sloff-passes .sloff-passes__faq h2{margin:0;font-size:var(--sloff-fs-16);font-weight:var(--sloff-fw-extrabold)}
.sloff-passes__faq-list{display:flex;flex-direction:column}
.sloff-passes__faq details{padding:var(--sloff-space-3) 0;border-top:1px solid var(--sloff-line)}
.sloff-passes__faq details:last-child{border-bottom:1px solid var(--sloff-line)}
.sloff-passes__faq summary{display:flex;min-height:var(--sloff-tap-min);align-items:center;gap:var(--sloff-space-2);font-size:var(--sloff-fs-14);font-weight:var(--sloff-fw-bold);line-height:1.35;cursor:pointer;list-style:none}
.sloff-passes__faq summary::-webkit-details-marker{display:none}
.sloff-passes__faq summary::before{content:"";flex:none;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid currentColor;transition:transform .2s ease}
.sloff-passes__faq details[open] summary::before{transform:rotate(90deg)}
.sloff-passes .sloff-passes__faq details p{margin:var(--sloff-space-1) 0 0;color:var(--sloff-text-muted);font-size:var(--sloff-fs-13);line-height:1.5}

/* Perks, empty */
.sloff-passes__perks{padding:var(--sloff-space-4);border:1px solid var(--sloff-line);border-radius:var(--sloff-radius-card);background:var(--sloff-surface-1)}
.sloff-passes .sloff-passes__perks h2{margin:0;font-size:var(--sloff-fs-20);font-weight:var(--sloff-fw-extrabold)}
.sloff-passes__perks div{margin-top:var(--sloff-space-3);color:var(--sloff-text-body);line-height:var(--sloff-lh-body)}
.sloff-passes__empty{padding:var(--sloff-space-4);color:var(--sloff-text-muted)}

/* Before sale (111 / 114) */
.sloff-passes .sloff-passes__closed{display:grid;gap:var(--sloff-space-3);padding:var(--sloff-space-5) var(--sloff-space-4);border:1px dashed var(--sloff-fest-accent);border-radius:var(--sloff-radius-card);background:transparent}
.sloff-passes .sloff-passes__closed p{margin:0;color:var(--sloff-text-body);line-height:var(--sloff-lh-body)}
.sloff-passes .sloff-passes__closed-eyebrow{color:var(--sloff-fest-accent)!important;font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-eyebrow);text-transform:uppercase}
.sloff-passes .sloff-passes__closed h2{margin:0;font-size:var(--sloff-fs-24);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug)}
.sloff-passes__closed-action .btn-primary{width:100%}
.sloff-passes .sloff-passes__closed-note{color:var(--sloff-text-muted);font-size:var(--sloff-fs-13)}
.sloff-passes .sloff-passes__preview h2{margin:0 0 var(--sloff-space-3);font-size:var(--sloff-fs-20);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug)}
.sloff-passes__preview ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:var(--sloff-space-3);margin:0;padding:0;list-style:none}
.sloff-passes__preview-card{display:flex;flex-direction:column;gap:var(--sloff-space-1);padding:var(--sloff-space-4);border:1px solid var(--sloff-line);border-radius:var(--sloff-radius-card);background:var(--sloff-surface-1)}
.sloff-passes .sloff-passes__preview-card h3{margin:0;font-size:var(--sloff-fs-18);font-weight:var(--sloff-fw-black);line-height:var(--sloff-lh-snug)}
.sloff-passes__preview-copy{margin:0;color:var(--sloff-text-muted);font-size:var(--sloff-fs-13);line-height:var(--sloff-lh-body)}
.sloff-passes__preview-price{margin:0;font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);text-transform:uppercase}
.sloff-passes__preview-price.is-tba{color:var(--sloff-text-faint)}

/* Phone FAQ answers slide open instead of snapping, where the browser can animate to auto height. */
@supports (interpolate-size:allow-keywords){
	@media (max-width:767px){
		.sloff-passes__faq{interpolate-size:allow-keywords}
		.sloff-passes__faq details::details-content{block-size:0;overflow-y:clip;transition:block-size .25s ease,content-visibility .25s allow-discrete}
		.sloff-passes__faq details[open]::details-content{block-size:auto}
	}
}

@media (prefers-reduced-motion:reduce){.sloff-passes *{transition:none!important;animation:none!important}}
@supports selector(::details-content){@media (prefers-reduced-motion:reduce){.sloff-passes__faq details::details-content{transition:none!important}}}

/* Desktop (095): member box above the cards, finder under them, featured buy button filled, others outlined. */
@media (min-width:768px){
	.sloff-passes{gap:var(--sloff-space-6)}
	.sloff-passes__member{order:1}
	.sloff-passes__tiers{order:2}
	.sloff-passes__helper{order:3}
	.sloff-passes .sloff-passes__intro h1{font-size:52px}
	.sloff-passes .sloff-passes__intro p:not(.sloff-passes__eyebrow){font-size:17px}
	.sloff-passes .sloff-passes__eyebrow{font-size:var(--sloff-fs-13)}

	.sloff-passes__member{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--sloff-space-6);padding:var(--sloff-space-5) var(--sloff-space-6)}
	.sloff-passes .sloff-passes__member-copy{font-size:var(--sloff-fs-15)}
	.sloff-passes .sloff-passes__member-actions{flex:none;flex-wrap:nowrap}

	/* At most three across (095); fewer tiers share the row. */
	.sloff-passes__tiers{grid-template-columns:repeat(auto-fit,minmax(min(100%,max(300px,(100% - 2 * var(--sloff-space-5)) / 3)),1fr));gap:var(--sloff-space-5)}
	.sloff-passes__card{gap:var(--sloff-space-3);padding:var(--sloff-space-6)}
	.sloff-passes__card header{grid-template-columns:minmax(0,1fr);grid-template-areas:"badges" "name" "prices" "avail";row-gap:var(--sloff-space-3)}
	.sloff-passes__tiers:has(.sloff-passes__badges) .sloff-passes__card header::before{content:"";grid-area:badges;min-height:21px}
	.sloff-passes__badges{margin:0}
	.sloff-passes .sloff-passes__card h2{font-size:var(--sloff-fs-22);font-weight:var(--sloff-fw-black)}
	.sloff-passes .sloff-passes__prices{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:2px var(--sloff-space-3);max-width:none;text-align:left}
	.sloff-passes__price{color:var(--sloff-fest-accent);font-size:30px}
	.sloff-passes__member-price{font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-extrabold)}
	.sloff-passes .sloff-passes__card ul{gap:6px;line-height:1.45}

	.sloff-passes .sloff-passes__card:not(.is-featured) .eventive-button button,.sloff-passes .sloff-passes__card:not(.is-featured) .eventive-button:empty{border-color:var(--sloff-text)!important;background:transparent!important;color:var(--sloff-text)!important}
	.sloff-passes .sloff-passes__card:not(.is-featured) .eventive-button button:hover,.sloff-passes .sloff-passes__card:not(.is-featured) .eventive-button button:focus-visible{border-color:var(--sloff-fest-accent)!important;background:var(--sloff-fest-accent)!important;color:var(--sloff-fest-accent-ink)!important}

	.sloff-passes__helper{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy choices" "copy suggest";column-gap:var(--sloff-space-6);row-gap:var(--sloff-space-2);align-items:center;padding:var(--sloff-space-6) 28px;border:1px solid var(--sloff-line);background:var(--sloff-surface-1)}
	.sloff-passes__helper-copy{grid-area:copy}
	.sloff-passes .sloff-passes__helper h2{font-size:var(--sloff-fs-20)}
	.sloff-passes .sloff-passes__helper p{font-size:var(--sloff-fs-14)}
	.sloff-passes__choices{grid-area:choices;display:flex;flex-wrap:wrap;justify-content:flex-end}
	.sloff-passes__choice{flex:0 0 auto}
	.sloff-passes__choice span{padding:0 18px}
	/* Fixed dark text: the year Look turns --sloff-ink white, which made the chosen answer a blank white pill. */
	.sloff-passes__choice input:checked+span{border-color:var(--sloff-text);background:var(--sloff-text);color:#000}
	.sloff-passes__suggestions{grid-area:suggest;justify-self:end}

	.sloff-passes__faq{display:grid;grid-template-columns:minmax(200px,320px) minmax(0,1fr);gap:var(--sloff-space-6) 40px;padding-top:var(--sloff-space-4)}
	.sloff-passes .sloff-passes__faq h2{font-size:var(--sloff-fs-24)}
	.sloff-passes__faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
	.sloff-passes__faq details,.sloff-passes__faq details:last-child{padding:18px 0;border-top:1px solid var(--sloff-line);border-bottom:0}
	.sloff-passes__faq summary{font-size:var(--sloff-fs-16);font-weight:var(--sloff-fw-extrabold)}
	.sloff-passes .sloff-passes__faq details p{margin-top:6px;font-size:var(--sloff-fs-14)}

	.sloff-passes .sloff-passes__closed{justify-items:center;padding:var(--sloff-space-6);text-align:center}
	.sloff-passes .sloff-passes__closed h2{font-size:var(--sloff-fs-32)}
	.sloff-passes__closed-action .btn-primary{width:auto}
}

/* Desktop FAQ answers stay open where the browser can style ::details-content; older browsers keep the accordion. */
@supports selector(::details-content){
	@media (min-width:768px){
		.sloff-passes__faq summary{min-height:0;cursor:default;pointer-events:none}
		.sloff-passes__faq summary::before{display:none}
		.sloff-passes__faq details::details-content{content-visibility:visible;block-size:auto}
	}
}
/* Early bird: the regular price struck through above the price being charged, with a small label under it.
   A member price replaces both (passes.js adds .is-member-priced and shows its own struck-through price). */
.sloff-passes .sloff-passes__price-regular{color:var(--sloff-text);font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-bold);line-height:1.2;opacity:.6;text-decoration:line-through}
.sloff-passes .sloff-passes__early{color:var(--sloff-fest-accent);font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-extrabold);letter-spacing:.04em;line-height:1.2;text-transform:uppercase}
.sloff-passes__card.is-member-priced .sloff-passes__price-regular,.sloff-passes__card.is-member-priced .sloff-passes__early{display:none}
.sloff-passes__sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
