.pass-page{color:#e8ebed;background:radial-gradient(circle at top right,#243339,#101619 45%,#0b1013);padding:68px max(22px,calc((100vw - 1190px)/2)) 100px;min-height:78vh;font-family:inherit}.public-site .pass-page .pass-intro{position:relative;top:auto;right:auto;bottom:auto;left:auto;float:none;width:100%;height:auto;max-width:790px;z-index:auto}.pass-eyebrow,.pass-card__index{font-size:11px;letter-spacing:.22em;font-weight:750;color:#adbdba}.pass-intro h1{font-size:clamp(42px,6vw,84px);line-height:1.04;font-weight:800;letter-spacing:-.055em;margin:24px 0}.pass-intro h1 em{font-style:normal;color:#b3d38f}.pass-intro p{color:#bdc6c4;font-size:17px;line-height:1.6;max-width:630px}.demo-flag{display:inline-block;color:#cfe5ac;border:1px solid #55704b;padding:9px 13px;border-radius:4px;font-size:11px;letter-spacing:.1em;margin-top:16px}.season-chooser{display:flex;gap:14px;align-items:center;margin:45px 0 15px}.season-chooser select,.pass-redeem input{background:#162024;color:white;border:1px solid #485653;border-radius:4px;padding:12px 14px;max-width:100%}.pass-current{margin-bottom:20px;color:#aebbb7}.pass-current strong{color:#d5edac}.pass-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pass-card{display:flex;flex-direction:column;padding:29px;background:#171e20;border:1px solid #36413e;border-radius:8px;min-height:430px}.pass-card--featured{border-color:#a8c586;background:linear-gradient(165deg,#253429,#171e20 55%)}.pass-card h2{font-size:30px;color:white;margin:23px 0 5px}.pass-card__price{font-size:42px;color:#d7e6c4}.pass-card__price small{font-size:13px;color:#adb9b2;font-weight:400;margin-left:6px}.pass-card p{color:#b4c2ba;line-height:1.5;min-height:56px}.pass-card ul{padding-left:20px;line-height:1.8;color:#d4dcda;flex:1}.pass-card li{margin:5px 0}.pass-card button,.pass-redeem button{width:100%;border:0;background:#bfd99b;color:#172019;font-weight:800;padding:13px;cursor:pointer;border-radius:3px}.pass-card button:hover,.pass-redeem button:hover{background:white}.pass-note{color:#9ca9a5;line-height:1.6;margin-top:25px}.pass-gifts,.pass-redeem{margin-top:30px;background:#172021;border:1px solid #374540;padding:25px;border-radius:8px}.pass-gifts h2,.pass-redeem h2{color:white}.pass-gift{display:flex;justify-content:space-between;gap:12px;padding:15px 0;border-top:1px solid #41504a;flex-wrap:wrap}.pass-gift code{overflow-wrap:anywhere;color:#d7e6c4}.pass-redeem form{display:flex;gap:12px}.pass-redeem input{flex:1}.pass-redeem button{width:auto;min-width:150px}.pass-login a{color:#d7e6c4}@media(max-width:850px){.pass-grid{grid-template-columns:1fr}.pass-card{min-height:0}.season-chooser{flex-direction:column;align-items:flex-start}.pass-redeem form{flex-direction:column}.pass-redeem button{width:100%}}

.pass-buy{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;background:#ffbd43;color:#172019!important;font-weight:800;border-radius:28px;text-decoration:none;text-align:center}.pass-card{min-width:0;scroll-margin-top:100px}.paypal-slot{width:100%;min-width:0}.pass-feedback{overflow-wrap:anywhere}.pass-card:target{outline:2px solid #ffbd43;outline-offset:3px}.pass-page *{box-sizing:border-box}@media(max-width:600px){.pass-page{padding:32px 16px 56px}.pass-intro h1{font-size:clamp(34px,10vw,54px)}.pass-card{padding:22px}.season-chooser select{width:100%;min-width:0;font-size:16px}.pass-redeem input{min-width:0;font-size:16px}.pass-card h2{font-size:27px}.pass-gifts,.pass-redeem{padding:18px}}

.checkout-notice{padding:20px;margin:0 0 24px;border:1px solid #b3d38f;border-radius:8px;background:#1b2b22}.checkout-notice[hidden]{display:none}.checkout-notice h2,#checkout-dialog h2{color:#d7e6c4;font-size:25px}.checkout-notice small{overflow-wrap:anywhere}#checkout-dialog{background:#172021;color:#eef1e9;border:1px solid #b3d38f;border-radius:12px;padding:26px;max-width:460px;width:calc(100% - 32px)}#checkout-dialog::backdrop{background:#000b}#checkout-dialog button{min-height:48px;width:100%;background:#ffbd43;border:0;border-radius:24px;font-weight:700}#checkout-dialog p{line-height:1.6}

/* Compact season storefront; scoped against legacy public-page styles. */
.public-site .pass-page{padding:34px max(22px,calc((100vw - 1190px)/2)) 64px}
.public-site .pass-page .pass-intro{position:static;max-width:none;margin:0 0 24px;padding:0;text-align:left}
.public-site .pass-page .pass-intro h1{font-size:clamp(30px,3vw,42px);line-height:1.15;letter-spacing:-.035em;text-align:left;margin:10px 0 12px}
.public-site .pass-page .pass-intro p{font-size:15px;line-height:1.6;text-align:left;max-width:720px;margin:0}
.public-site .pass-page .demo-flag{margin:14px 0 0;padding:6px 10px;font-size:10px;letter-spacing:.06em}
.pass-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 0;margin:0 0 20px;border-top:1px solid #34413e;border-bottom:1px solid #34413e}
.public-site .pass-page .season-chooser{margin:0;gap:12px;flex-direction:row;align-items:center;max-width:100%;min-width:0}
.pass-toolbar .season-chooser label{font-size:13px;white-space:nowrap;margin:0}
.pass-toolbar .season-chooser select{font-size:14px;padding:10px 12px;min-width:0;max-width:420px}
.public-site .pass-page .pass-current{margin:0;font-size:13px;line-height:1.5;text-align:left}
.public-site .pass-page .pass-card{padding:24px;min-height:0;gap:0}
.public-site .pass-page .pass-card h2{font-size:25px;line-height:1.25;margin:18px 0 16px;text-align:left}
.public-site .pass-page .pass-card__price{font-size:38px;line-height:1.2;margin-bottom:14px}
.public-site .pass-page .pass-card p{font-size:14px;line-height:1.55;margin:0 0 14px;min-height:65px;text-align:left}
.public-site .pass-page .pass-card ul{font-size:14px;line-height:1.6;margin:0 0 22px;padding-left:18px}
.public-site .pass-page .pass-card li{margin:0 0 8px;text-align:left}
.public-site .pass-page .pass-note,.public-site .pass-page .pass-login{text-align:left;font-size:13px;line-height:1.6;margin:20px 0 0}
.pass-page :focus-visible{outline:2px solid #ffbd43;outline-offset:3px}
@media(max-width:850px){.pass-toolbar{align-items:flex-start}.public-site .pass-page .pass-card p{min-height:0}}
@media(max-width:600px){.public-site .pass-page{padding:24px 16px 48px}.public-site .pass-page .pass-intro{margin-bottom:18px}.pass-toolbar{gap:12px;padding:14px 0}.public-site .pass-page .season-chooser{flex-direction:column;align-items:flex-start;gap:8px;width:100%}.pass-toolbar .season-chooser select{font-size:16px;width:100%;max-width:100%}.public-site .pass-page .pass-card{padding:22px}.public-site .pass-page .pass-card h2{font-size:24px}.public-site .pass-page .pass-card__price{font-size:36px}}

/* Keep gift panels in the page flow above the footer. */
.public-site .pass-page{display:flow-root;float:none;clear:both}
.public-site .pass-page .pass-redeem,.public-site .pass-page .pass-gifts{
 display:block;position:static;float:none;clear:both;width:100%;height:auto;min-height:0;
 margin:24px 0 0;padding:24px;border-radius:10px;text-align:left;
}
.public-site .pass-page .pass-redeem h2,.public-site .pass-page .pass-gifts h2{
 margin:0 0 10px;font-size:22px;line-height:1.3;text-align:left;
}
.public-site .pass-page .pass-redeem p,.public-site .pass-page .pass-gifts p{
 margin:0 0 18px;font-size:14px;line-height:1.6;text-align:left;
}
.public-site .pass-page .pass-redeem form{display:flex;align-items:center;gap:12px;max-width:760px;margin:0}
.public-site .pass-page .pass-redeem input{flex:1;min-width:0;width:auto;margin:0;min-height:48px;background:#10181d;border:1px solid #485653;font-size:16px}
.public-site .pass-page .pass-redeem button{flex:0 0 auto;min-height:48px;margin:0}
@media(max-width:600px){
 .public-site .pass-page .pass-redeem,.public-site .pass-page .pass-gifts{padding:18px;margin-top:20px}
 .public-site .pass-page .pass-redeem form{flex-direction:column;align-items:stretch}
 .public-site .pass-page .pass-redeem input,.public-site .pass-page .pass-redeem button{width:100%}
}

.pass-page .pass-owned{display:block;margin:20px 0 0;padding:11px 14px;border:1px solid #637454;border-radius:5px;background:#263329;color:#e4efd5;font-weight:700;text-align:center}
