.auth-page{min-height:100vh;background:#071d31}.auth-brand{position:fixed;z-index:3;top:28px;left:34px}.auth-brand img{width:140px;height:auto}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr}.auth-story{position:relative;overflow:hidden;padding:150px max(40px,7vw) 65px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(115deg,rgba(4,18,31,.95),rgba(7,36,58,.72)),url('assets/hospitality-suite-pool.webp') center/cover}.auth-story::after{content:"";position:absolute;right:-120px;bottom:-120px;width:380px;height:380px;border:1px solid rgba(112,183,68,.28);border-radius:50%;box-shadow:0 0 0 70px rgba(112,183,68,.04),0 0 0 140px rgba(112,183,68,.03)}.auth-story>div{position:relative;z-index:1}.auth-story h1{max-width:700px;margin:0;font:400 clamp(46px,6vw,82px)/1.03 Georgia,serif}.auth-story>div>p:last-child{max-width:610px;color:#cfdae1;font-size:18px}.auth-trust{display:flex;gap:10px;flex-wrap:wrap}.auth-trust span{padding:9px 12px;border:1px solid rgba(255,255,255,.22);font-size:10px;letter-spacing:.09em;text-transform:uppercase}.auth-panel{display:grid;place-items:center;padding:100px 44px 50px;background:#f4f6f3}.auth-card{width:min(100%,510px);padding:45px;background:#fff;border-top:3px solid #70b744;box-shadow:0 28px 80px rgba(3,19,33,.13)}.auth-card h2{margin:0;font:400 38px/1.1 Georgia,serif}.auth-copy{margin:16px 0 28px;color:#667482}.auth-form{display:grid;gap:18px}.auth-form label{display:grid;gap:7px;color:#24384a;font-size:12px;font-weight:700;letter-spacing:.04em}.auth-form input{width:100%;min-height:50px;padding:10px 13px;border:1px solid #ccd4d9;background:#fff;color:#10253b;font-size:16px;border-radius:0}.auth-form input:focus{outline:3px solid rgba(112,183,68,.25);border-color:#70b744}.auth-form button{min-height:52px;border:0;background:#70b744;color:#fff;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;cursor:pointer}.auth-form button[disabled]{opacity:.55;cursor:wait}.auth-error{margin:0;padding:11px 13px;background:#fff2f0;border-left:3px solid #b64b3e;color:#7d2d25;font-size:13px}.auth-help{display:flex;justify-content:space-between;gap:20px;margin-top:24px;padding-top:20px;border-top:1px solid #dce2e5;font-size:12px}.auth-help p{margin:0;color:#667482}.auth-help a{color:#4f842f;font-weight:700;text-decoration:none}.auth-note{margin:22px 0 0;color:#71808c;font-size:11px;line-height:1.65}.portal-loading{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:16px;background:#071d31;color:#fff;text-align:center}.portal-loading span{width:36px;height:36px;border:2px solid rgba(255,255,255,.22);border-top-color:#70b744;border-radius:50%;animation:portal-spin .8s linear infinite}.portal-loading strong{font-size:12px;letter-spacing:.08em}.portal-exit{border:0;background:transparent;cursor:pointer}.portal-live-grid .portal-empty{min-height:270px;display:flex;flex-direction:column;justify-content:center}.portal-empty h2{margin:0 0 14px;font:400 28px/1.15 Georgia,serif}.portal-empty>p:last-child{margin:0;color:#667482;font-size:14px}.portal-account{display:grid;grid-template-columns:.65fr 1.35fr;gap:40px}.portal-account dl{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dce2e5}.portal-account dl div{padding:20px;background:#fafbf9}.portal-account dt{color:#667482;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.portal-account dd{margin:8px 0 0;overflow-wrap:anywhere;font-size:13px;font-weight:700}@keyframes portal-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.auth-layout{grid-template-columns:1fr}.auth-story{min-height:48vh;padding:130px 28px 42px}.auth-panel{padding:36px 20px 60px}.auth-brand{top:20px;left:22px}.auth-card{padding:32px 25px}.portal-account{grid-template-columns:1fr}.portal-account dl{grid-template-columns:1fr}}
@media(max-width:520px){.auth-story h1{font-size:43px}.auth-story>div>p:last-child{font-size:16px}.auth-trust{display:none}.auth-help{display:grid}.auth-card h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.portal-loading span{animation:none}}
.portal-retry{display:inline-flex;min-height:44px;padding:0 18px;align-items:center;justify-content:center;background:#70b744;color:#fff;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.1em}.portal-retry.secondary{background:transparent;border:1px solid rgba(255,255,255,.35)}
/* Fixed brand anchor: independent from the split layout and mobile viewport reflow. */
.auth-brand{position:fixed!important;z-index:1000!important;top:0!important;left:0!important;width:215px;height:112px;padding:24px 0 0 34px;display:flex;align-items:flex-start;background:linear-gradient(135deg,rgba(7,29,49,.98),rgba(7,29,49,.72) 68%,transparent 69%);isolation:isolate;backface-visibility:hidden}
.auth-brand img{display:block;width:140px!important;height:auto;flex:0 0 auto}
@media(max-width:900px){.auth-brand{top:0!important;left:0!important;width:170px;height:94px;padding:18px 0 0 22px}.auth-brand img{width:112px!important}}
.portal-loading[hidden],.portal-protected[hidden]{display:none!important}
[data-member-page="portal"] .portal-request-section{scroll-margin-top:24px;margin-top:34px;padding:clamp(24px,4vw,48px);background:#fff;border:1px solid rgba(7,29,49,.12);display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:clamp(28px,5vw,64px);align-items:start}
[data-member-page="portal"] .portal-request-intro{position:sticky;top:24px}
[data-member-page="portal"] .portal-request-intro h2{margin:12px 0 18px;color:#071d31;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4vw,54px);font-weight:400;line-height:1.02}
[data-member-page="portal"] .portal-request-intro>p:last-child{margin:0;color:#657582;font-size:17px;line-height:1.7}
[data-member-page="portal"] .portal-request-section .hc-form-shell{padding:clamp(22px,3.5vw,40px);box-shadow:none}
@media(max-width:820px){[data-member-page="portal"] .portal-request-section{grid-template-columns:1fr;margin-top:24px;padding:24px 18px;gap:26px}[data-member-page="portal"] .portal-request-intro{position:static}[data-member-page="portal"] .portal-request-intro h2{font-size:38px}[data-member-page="portal"] .portal-request-section .hc-form-shell{padding:24px 16px}}