body[data-page="vip"] #main{background:#161323;color:#fff}
.vip-access{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:clamp(40px,7vw,120px);align-items:start;padding:100px max(24px,7vw);min-height:calc(100svh - 100px);background:radial-gradient(ellipse at 0% 90%,#6200a845,transparent 60%),radial-gradient(ellipse at 100% 0%,#1045df35,transparent 50%),#161323}
.vip-signup-side{display:flex;justify-content:center;padding-top:145px}.vip-signup-trigger{width:min(100%,390px);min-height:86px;padding:18px 28px;border:2px solid #ff5526;border-radius:999px;background:transparent;color:#ff5526;font-family:inherit;font-size:clamp(22px,2.3vw,32px);font-weight:700;line-height:1.25;letter-spacing:.08em;text-align:center;transform:none;box-shadow:none;cursor:pointer}.vip-signup-trigger:hover{background:#ff5526;color:#000}.vip-signup-trigger:focus-visible{outline:2px solid #fff;outline-offset:5px}
.vip-access-card{width:100%;min-height:390px;justify-self:end;border-radius:24px;background:#f7f5f1;color:#000;padding:clamp(24px,3vw,44px);box-shadow:none}.vip-access-card :is(h1,h2){font-size:30px;font-weight:650;letter-spacing:0;margin:0 0 32px;line-height:1.2;color:#000}.vip-access-card p{font-size:15px;line-height:1.5;color:#45414b}.vip-access-card form{display:grid;gap:22px}.vip-access-card label{display:grid;gap:7px;font-size:15px;font-weight:500}.vip-access-card input:not([type=checkbox]),.vip-access-card textarea{box-sizing:border-box;width:100%;min-width:0;height:50px;padding:12px 16px;border:1px solid #77717b;border-radius:16px;background:#fff;color:#000;font:inherit;box-shadow:none}.vip-access-card textarea{height:auto;resize:vertical}.vip-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vip-access-card .vip-consent{display:flex;align-items:flex-start;font-size:13px;font-weight:400;gap:10px}.vip-consent input{flex:0 0 18px;width:18px;height:18px;margin:2px 0;accent-color:#6200a8}.vip-consent a{text-decoration:underline}.vip-submit{height:50px;width:100%;padding:12px 20px;border:1px solid #ff5526;border-radius:999px;background:#ff5526;color:#000;font:inherit;font-weight:700;transform:none}.vip-submit:hover{background:#eb4820}.vip-submit:disabled{opacity:.6;cursor:wait}.vip-form-status:empty{display:none}.vip-download{color:#6200a8;text-decoration:underline}.vip-access-card .vip-connection-note{font-size:12px;line-height:1.55;border-top:1px solid #d7d3cc;margin:24px 0 0;padding-top:18px}.vip-back-login{font:inherit;background:transparent;color:#000;border:0;padding:0;min-height:44px;margin-top:18px;text-decoration:underline;text-underline-offset:4px}.vip-access-card :is(button,input,textarea,a):focus-visible{outline:2px solid #6200a8!important;outline-offset:3px}.vip-access [hidden]{display:none!important}.vip-access-card input:disabled{background:#eae6de;color:#777;cursor:not-allowed}
@media(max-width:800px){.vip-access{grid-template-columns:1fr;padding:48px 24px 64px;gap:36px}.vip-signup-side{padding-top:0}.vip-signup-trigger{min-height:72px}.vip-access-card{max-width:none;min-height:0}}
@media(max-width:440px){.vip-field-pair{grid-template-columns:1fr}.vip-access-card{padding:28px 20px}.vip-access-card :is(h1,h2){font-size:26px}}
/* Original dark palette, retaining the compact registration card. */
body[data-page="vip"] #main{background:#161323;color:#fff}
.vip-access{background:radial-gradient(ellipse at 0% 90%,#6200a845,transparent 60%),radial-gradient(ellipse at 100% 0%,#1045df35,transparent 50%),#161323;color:#fff}
.vip-access{padding-top:56px;padding-bottom:64px}
.vip-signup-trigger{width:min(100%,330px);min-height:64px;padding:14px 24px;font-size:24px;letter-spacing:.04em;background:#fff;color:#000;border-color:#fff}
.vip-signup-trigger:is(:hover,:focus-visible,:active){background:#fa5aca;border-color:#fa5aca;color:#000}
.vip-signup-trigger:focus-visible{outline-color:#fff}
.vip-access-card{position:relative;border:1px solid #6200a830}
.vip-access-card input:not([type=checkbox]),.vip-access-card textarea{border-color:#95839f}
.vip-submit{background:#fff;border-color:#000;color:#000}
.vip-submit:is(:hover,:focus-visible,:active){background:#fa5aca;border-color:#fa5aca;color:#000}
.vip-access-card:has(#vip-apply-panel:not([hidden])){padding:24px;min-height:0}
#vip-apply-panel{max-height:max(360px,calc(100svh - 220px));overflow-y:auto;overscroll-behavior:contain;padding-right:6px}
#vip-apply-panel h2{font-size:25px;line-height:1.2;margin:0 44px 18px 0}
#vip-apply-panel form{gap:12px}
#vip-apply-panel label{font-size:14px;gap:4px}
#vip-apply-panel input:not([type=checkbox]){height:44px;padding:10px 14px;border-radius:14px}
#vip-apply-panel textarea{height:68px;min-height:68px;padding:10px 14px;border-radius:14px}
#vip-apply-panel .vip-submit{height:44px;padding:10px 18px}
#vip-apply-panel .vip-back-login{margin-top:10px}
#vip-apply-panel .vip-connection-note{margin-top:12px;padding-top:12px}
.vip-apply-close{display:none;position:absolute;top:10px;right:10px;width:44px;height:44px;padding:10px;border:0;border-radius:50%;background:transparent;color:#6200a8;z-index:2;cursor:pointer}
.vip-apply-close svg{width:24px;height:24px}
.vip-access-card:has(#vip-apply-panel:not([hidden])) .vip-apply-close{display:flex;align-items:center;justify-content:center}
.vip-apply-close:hover{background:#ede3f2}
@media(max-width:800px){.vip-access{padding-top:36px;gap:28px}.vip-signup-trigger{min-height:60px;font-size:22px}#vip-apply-panel{max-height:max(360px,calc(100svh - 180px))}}

/* Centre the signup and login together in the space below navigation. */
body[data-page="vip"]{--vip-header-height:100px;--vip-notice-height:0px}
body[data-page="vip"]:has(.site-note){--vip-notice-height:32px}
.vip-access{min-height:calc(100svh - var(--vip-header-height) - var(--vip-notice-height));padding-block:40px;align-items:center;align-content:center}
.vip-signup-side{padding-top:0;align-self:center}
.vip-access-card{align-self:center}
@media(max-width:1179px){body[data-page="vip"]{--vip-header-height:86px}}
@media(max-width:800px){.vip-access{padding-block:32px;align-content:center}}

/* Both views occupy the same card so opening registration cannot move the grid. */
.vip-access-card,.vip-access-card:has(#vip-apply-panel:not([hidden])){box-sizing:border-box;height:480px;min-height:480px;padding:28px}
#vip-login-panel,#vip-apply-panel{box-sizing:border-box;height:100%;max-height:100%;overflow-y:auto;overscroll-behavior:contain;padding-right:6px;scrollbar-gutter:stable}
@media(max-width:440px){.vip-access-card,.vip-access-card:has(#vip-apply-panel:not([hidden])){padding:28px 20px}}

/* Keep functional form headings clear without dominating the card. */
.vip-access-card :is(h1,h2),#vip-apply-panel h2{font-size:24px;line-height:1.25}
#vip-apply-heading{text-transform:uppercase}
@media(max-width:440px){.vip-access-card :is(h1,h2),#vip-apply-panel h2{font-size:22px}}
