:root{font-family:Arial,Helvetica,sans-serif;color:#17243b;background:#f2f5fb;font-size:16px;line-height:1.5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit}.wrap{width:min(1150px,calc(100% - 40px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:100;background:#0000a6;color:#fff;border-bottom:5px solid #d30909}.header-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none}.brand-logo{display:block;width:82px;height:auto;max-height:70px;object-fit:contain;flex:none}.brand-name{font-size:.85rem;font-weight:800;line-height:1.18;letter-spacing:.09em}.brand-name strong{display:block;font-size:1.38rem;letter-spacing:.06em}.header-price{font-size:.75rem;font-weight:800;letter-spacing:.08em;text-align:right}.header-price strong{display:block;font-size:1.2rem;letter-spacing:0}.main-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:42px;padding-top:46px;padding-bottom:45px;align-items:start}.intro{margin:0 0 30px}.eyebrow{font-size:.82rem;letter-spacing:.16em;color:#d30909;font-weight:900;margin:0 0 8px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.45rem,5vw,4.2rem);letter-spacing:-.055em;line-height:1.05;margin-bottom:14px;color:#0000a6}.intro>p:last-child{font-size:1.08rem;max-width:61ch;color:#4a5670;margin:0}.form-section{background:#fff;border:1px solid #dce2ef;border-radius:16px;padding:27px 30px;margin-bottom:18px;box-shadow:0 8px 28px rgba(10,24,70,.04)}.section-heading{display:flex;gap:15px;align-items:start;margin-bottom:25px}.section-num{display:grid;place-items:center;flex:none;width:40px;height:40px;background:#edf0ff;color:#0000a6;border-radius:10px;font-weight:900}.section-heading h2{font-size:1.5rem;letter-spacing:-.025em;margin:0 0 1px}.section-heading p{color:#657087;margin:0}.field-grid{display:grid;gap:17px;margin-bottom:17px}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.address{grid-template-columns:2fr .9fr .55fr .8fr}.field-grid.address .street{grid-column:1/-1}.field-grid label,.choice-label{display:block;color:#27354b;font-weight:700;font-size:.91rem}.field-grid input,.field-grid select{display:block;width:100%;min-height:46px;margin-top:7px;padding:10px 12px;border:1px solid #bfc9d8;border-radius:8px;background:#fff;color:#17243b;outline:none}.field-grid input:focus,.field-grid select:focus{border-color:#0000a6;box-shadow:0 0 0 3px #0000a622}.field-grid input[aria-invalid=true]{border-color:#bb1515}.choice-fieldset,.person-card{border:0;padding:0;margin:0;min-width:0}.choice-fieldset legend{font-weight:700;font-size:.96rem;padding:0;margin:3px 0 10px}.choice-row{display:flex;flex-wrap:wrap;gap:10px}.choice{display:inline-flex;align-items:center;gap:8px;border:1px solid #cbd3e1;border-radius:9px;padding:10px 12px;min-height:46px;font-weight:600;font-size:.94rem;cursor:pointer;background:#fff}.choice:has(input:checked){border-color:#0000a6;background:#eef0ff;color:#0000a6}.choice input{accent-color:#0000a6;width:17px;height:17px;margin:0}.people-list{display:grid;gap:15px}.person-card{background:#f8faff;border:1px solid #dce2ef;border-radius:12px;padding:19px;margin-bottom:16px}.person-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.person-heading h3{font-size:1.08rem;margin:0}.remove-button{background:none;color:#a31522;border:0;text-decoration:underline;font-size:.9rem;padding:7px}.person-options{margin-bottom:0}.card-choice .choice-row{margin-top:7px}.card-choice .choice{padding:8px 15px}.add-button{border:2px dashed #a9b7d8;color:#0000a6;background:#f8faff;font-weight:800;border-radius:10px;padding:11px 17px;min-height:46px}.add-button span{font-size:1.3rem;line-height:0;margin-right:5px}.checkout{display:grid;grid-template-columns:1fr auto;align-items:center;background:#0000a6;color:#fff;border-radius:16px;padding:25px 30px;gap:15px;box-shadow:0 14px 30px #0000a621}.checkout-label{font-weight:800;font-size:1.15rem;margin:0}.checkout-caption{color:#e2e7ff;margin:2px 0 0}.total{font-size:2.5rem;letter-spacing:-.05em;line-height:1}.submit-button{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:9px;background:#d30909;color:#fff;padding:15px 20px;min-height:54px;font-weight:800;text-decoration:none;text-align:left;font-size:1rem}.submit-button:hover{background:#b10808}.submit-button span{font-size:1.35rem}.fine-print{grid-column:1/-1;color:#e2e7ff;margin:0;font-size:.86rem}.side-column{padding-top:66px}.info-card{background:white;border:1px solid #dce2ef;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px rgba(10,24,70,.07)}.price-head{background:#0000a6;color:#fff;padding:25px 26px;border-bottom:5px solid #d30909}.price-head>span{display:block;font-weight:800;letter-spacing:.1em;font-size:.82rem}.price-head strong{font-size:2.6rem;letter-spacing:-.06em;line-height:1.25}.price-head small{font-size:1rem;font-weight:500;letter-spacing:0}.info-body{padding:24px 26px}.info-body h2{font-size:1.2rem;margin-bottom:12px}.rate{display:grid;grid-template-columns:1fr auto;gap:1px 9px;padding:13px 0;border-bottom:1px solid #e3e8f2}.rate>span{font-weight:700}.rate strong{color:#0000a6;white-space:nowrap}.rate small{grid-column:1/-1;color:#607087;font-size:.84rem}.rate small.regular-price{grid-column:1/-1;text-align:right}.info-foot{color:#56647c;font-size:.9rem;margin:18px 0 0}.notice{padding:14px 17px;border-radius:9px;margin-bottom:17px;font-weight:600}.notice-setup{background:#fff7db;border:1px solid #e5c866;color:#604809}.notice-error{background:#fff0f0;border:1px solid #e2abab;color:#942121}.success{background:#fff;border:1px solid #dce2ef;border-radius:16px;padding:34px;box-shadow:0 12px 30px rgba(10,24,70,.06)}.success-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#e3f5e8;color:#17703a;font-size:1.7rem;font-weight:900;margin-bottom:18px}.success h2{font-size:2.1rem;color:#0000a6;letter-spacing:-.04em;margin-bottom:10px}.success>p:not(.eyebrow){color:#4b5a70}.receipt{display:grid;grid-template-columns:1fr auto;gap:10px;border-block:1px solid #dce2ef;padding:19px 0;margin:24px 0}.receipt strong{text-align:right;overflow-wrap:anywhere}.payment-link{width:100%}.success .payment-note{font-size:.9rem;margin:17px 0 0}.footer{padding:0 0 35px;color:#647087;font-size:.88rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}[hidden]{display:none!important}:focus-visible{outline:3px solid #d30909;outline-offset:3px}@media(max-width:850px){.main-grid{grid-template-columns:1fr;gap:18px}.side-column{padding-top:0;grid-row:1}.main-column{grid-row:2}.info-card{max-width:none}.info-body{display:block}}@media(max-width:580px){.wrap{width:min(100% - 28px,1150px)}.header-inner{min-height:76px}.brand-logo{width:72px;max-height:61px}.brand-name{font-size:.69rem}.brand-name strong{font-size:1.05rem}.header-price{display:none}.main-grid{padding-top:30px;gap:24px}.intro{margin-bottom:23px}.intro>p:last-child{font-size:1rem}.form-section{padding:22px 18px}.section-heading{gap:11px;margin-bottom:20px}.section-heading h2{font-size:1.33rem}.section-heading p{font-size:.93rem}.field-grid.two,.field-grid.address{grid-template-columns:1fr}.field-grid.address .street{grid-column:auto}.field-grid{gap:15px}.person-card{padding:16px}.person-options{margin-bottom:0}.choice-row{gap:7px}.choice{font-size:.88rem;padding:9px 10px}.checkout{padding:21px 18px}.success{padding:24px 20px}}

.club-welcome{padding-top:28px;color:#4a5670}.club-welcome p{margin:0}

.copy-button{display:inline-flex;align-items:center;border:1px solid #aebbd5;border-radius:8px;background:#fff;color:#0000a6;padding:9px 13px;font-weight:800;margin:-8px 0 18px;min-height:42px}.copy-button:hover{background:#eef0ff}

.resort-logo-link{display:flex;align-items:center;justify-content:center;padding:0;min-height:0;margin:0 0 20px;transition:transform .15s ease,box-shadow .15s ease}.resort-logo-link:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000a626}.resort-logo-link img{display:block;width:100%;max-width:320px;height:auto;object-fit:contain}

.notice-closed{background:#edf0ff;border:1px solid #bfc8ef;color:#0000a6}.card-prices{display:flex;gap:24px;margin-top:8px}.card-prices>div{font-weight:700;font-size:.84rem;letter-spacing:.02em}.card-prices strong{display:block;font-size:2rem;letter-spacing:-.05em;line-height:1.1}@media(max-width:580px){.card-prices{gap:18px}.card-prices strong{font-size:1.8rem}}

.security-verification{grid-column:1/-1;min-width:0}.security-verification .fine-print{margin-top:8px}.security-verification #turnstileWidget{min-height:65px}
