/* Pricing and membership terms, including narrow mobile screens. */
.home-page .pricing-heading h2{white-space:normal;text-wrap:balance}
.pricing .price-toggle{grid-template-columns:48px minmax(0,1fr) 28px}
.pricing .price-label{min-width:0}
.pricing .price-item{gap:24px;padding-block:22px;align-items:center}
.pricing .price-item>span{min-width:0;flex:1}
.pricing .price-item strong{font-size:22px;line-height:1.3}
.pricing .price-item small{font-size:16px;line-height:1.55}
.pricing .price-action{display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex:0 0 auto}
.pricing .product-price{display:block;font-family:var(--heading);font-size:26px;line-height:1.3;white-space:nowrap}
.pricing .product-price small{font-family:var(--body);font-size:15px;font-weight:500}
.pricing .price-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:2px solid var(--ink);font:600 16px/1.25 var(--body);white-space:nowrap}
.pricing .price-button-soon{background:var(--cream);color:var(--ink);box-shadow:none;cursor:default;opacity:1}
.pricing .intro-fine-print{margin:4px 0 0;max-width:800px}
.pricing .intro-fine-print small{font-size:14px;line-height:1.6;font-weight:400}
.pricing .intro-fine-print em{font-style:italic}
.pricing .price-group.coral{--fill:#c8b8ff}
.pricing .price-group.coral.open,.pricing .price-group.coral.open .price-toggle{color:var(--ink)}
.pricing .membership-inclusions{font-size:18px;font-weight:500;line-height:1.65}
.pricing .membership-summary{padding:22px;border:1px solid var(--ink);border-radius:16px;background:var(--cream);margin:20px 0}
.pricing .membership-summary p{font-size:16px;line-height:1.65;margin:0 0 16px}
.pricing .membership-summary p:last-child{margin-bottom:0}
.membership-terms-trigger{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:18px 22px;border:2px solid var(--ink);border-radius:14px;background:var(--ink);color:var(--cream);font-weight:600;font-size:17px;line-height:1.5;text-decoration:none;box-sizing:border-box}
.membership-terms-trigger span{font-size:28px}
.membership-terms-trigger:focus-visible,.pricing .price-toggle:focus-visible{outline:3px solid var(--ink);outline-offset:-5px}
body.membership-dialog-open{overflow:hidden}
.membership-dialog{width:min(860px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:2px solid var(--ink);border-radius:24px;background:var(--cream);color:var(--ink);box-shadow:10px 10px 0 #30384355;overflow:hidden}
.membership-dialog:not([open]){display:none}
.membership-dialog[open]{display:flex;flex-direction:column}
.membership-dialog::backdrop{background:#202833b3}
.membership-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px;background:var(--lime);border-bottom:2px solid var(--ink);flex-shrink:0}
.membership-dialog-head h2{font-family:var(--heading);font-size:clamp(21px,3vw,30px);line-height:1.2;margin:0;letter-spacing:-.025em}
.membership-dialog-close{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 14px;border:2px solid var(--ink);border-radius:100px;background:var(--cream);color:var(--ink);font:600 15px/1.2 var(--body);cursor:pointer;flex-shrink:0}
.membership-dialog-close span{font-size:24px}
.membership-dialog-content{padding:26px;overflow-y:auto;overscroll-behavior:contain;min-height:0;font-size:17px;line-height:1.65;overflow-wrap:anywhere}
.membership-dialog-content p{margin:0 0 20px}
.membership-dialog-content a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.membership-dialog-content ul{padding-left:24px;margin:0 0 20px}
.membership-dialog-content li{margin:0 0 8px}
.membership-dialog-content .membership-guide{font-weight:500;font-size:15px}
.membership-dialog-content .policy-accordions{display:grid;gap:8px;margin:18px 0 24px}
.membership-dialog-content details{border:2px solid var(--ink);border-radius:12px;overflow:hidden}
.membership-dialog-content summary{position:relative;padding:16px 48px 16px 18px;list-style:none;cursor:pointer}
.membership-dialog-content summary::-webkit-details-marker{display:none}
.membership-dialog-content summary::after{content:'+';position:absolute;right:18px;top:12px;font-size:26px}
.membership-dialog-content summary h3{font:600 17px/1.45 var(--body);margin:0;letter-spacing:.01em}
.membership-dialog-content details[open] summary{background:var(--sky);border-bottom:1px solid var(--ink)}
.membership-dialog-content details[open] summary::after{content:'−'}
.membership-dialog-content .policy-answer{padding:20px}
.membership-dialog-content .policy-answer>:last-child{margin-bottom:0}
.membership-dialog-content .membership-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}
.membership-dialog-content .membership-options>div{background:var(--lime);border-radius:12px;padding:18px}
.membership-dialog-content h4{font:600 18px/1.4 var(--body);margin:0 0 12px}
.membership-dialog-content .membership-options p{margin:0}
.membership-dialog-content blockquote{background:var(--sky);border-left:4px solid var(--ink);padding:18px;margin:0 0 20px}
.membership-dialog button:focus-visible,.membership-dialog summary:focus-visible,.membership-dialog a:focus-visible{outline:3px solid var(--ink);outline-offset:-4px}
@media(max-width:600px){.pricing .price-toggle{gap:12px;padding-inline:12px}.pricing .price-item{flex-direction:column;align-items:stretch;gap:16px}.pricing .price-action{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.pricing .price-item strong{font-size:20px}.pricing .product-price{font-size:24px}.pricing .membership-summary{padding:18px}.membership-terms-trigger{padding:16px;font-size:16px}.membership-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:18px}.membership-dialog-head{padding:18px 14px;gap:12px}.membership-dialog-head h2{font-size:20px}.membership-dialog-close{padding:8px 10px;font-size:13px}.membership-dialog-content{padding:18px 12px;font-size:16px}.membership-dialog-content .policy-answer{padding:16px}.membership-dialog-content .membership-options{grid-template-columns:1fr}}

/* Give the voucher embed the full accordion width on every screen. */
.pricing .voucher-widget{width:100%;min-width:0;min-height:420px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:16px;box-sizing:border-box}
.pricing .voucher-widget>[data-eversports-widget-id]{width:100%;min-width:0}
.pricing .voucher-widget iframe{max-width:100%;border:0}
@media(max-width:600px){.pricing .voucher-widget{padding:8px;border-radius:12px}}

.membership-dialog:not([open]) *::after{content:none}
