/* Premium Motion: CSS surfaces and existing GSAP, no WebGL or scroll hijacking. */
.premium-rays{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;contain:paint}
.premium-rays i{position:absolute;top:-32%;right:6%;width:27%;height:145%;background:linear-gradient(180deg,#f6d89133,#d4a62a0a 65%,transparent);transform:rotate(27deg);transform-origin:top;opacity:.65}
.premium-rays i:nth-child(2){right:24%;width:9%;opacity:.4;transform:rotate(36deg)}
.premium-rays i:nth-child(3){right:-6%;width:12%;opacity:.3;transform:rotate(18deg)}
.gold-entry .entry-content{position:relative;z-index:1}
.gold-entry .premium-rays{left:30%}
.premium-cta{position:relative;isolation:isolate;box-shadow:0 4px 20px #00000020}
.premium-cta:before{content:"";position:absolute;inset:3px;border:1px solid #fff6d7aa;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;transform:scale(.97)}
.premium-cta:is(:hover,:focus-visible):before{opacity:1;transform:scale(1)}
.gold-stage .portal-card[data-spotlight],.live-club .reward-card[data-spotlight]{position:relative;isolation:isolate;transition:border-color .18s,box-shadow .18s,border-radius .25s}
[data-spotlight]:after{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;background:radial-gradient(360px circle at var(--spot-x,50%) var(--spot-y,25%),#d4a62a18,transparent 75%);opacity:0;transition:opacity .18s}
[data-spotlight][data-pointer-active]:after,[data-spotlight]:focus-within:after{opacity:1}
.live-club [data-spotlight]:focus-within{border-color:#8f6914;box-shadow:0 0 0 1px #8f691433}
.live-club .membership-card[data-tilt]{position:relative;isolation:isolate;overflow:hidden;box-shadow:0 18px 40px #10110f1c;transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .22s ease-out}
.membership-card[data-tilt]:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse at var(--spot-x,70%) var(--spot-y,15%),#f4dca32b,transparent 60%);z-index:-1}
.membership-card .card-sheen{position:absolute;inset:-30%;pointer-events:none;background:linear-gradient(110deg,transparent 35%,#fff2bd1a 49%,transparent 62%);transform:translateX(25%);z-index:-1}
.membership-card .card-top{color:#e7c676}
.membership-card .card-bottom strong{line-height:1.8;overflow-wrap:anywhere}
.live-club .confirmed-points>span{font:inherit;color:inherit}
.confirmed-points{font-variant-numeric:tabular-nums;display:inline-block;min-width:1ch}
.live-club .club-nav button{position:relative;transition:background-color .16s,color .16s,border-color .16s}
.live-club .club-nav button:before{content:"";position:absolute;left:0;top:28%;bottom:28%;width:3px;border-radius:3px;background:#e7bc50;opacity:0;transform:scaleY(.3);transition:transform .16s,opacity .16s;pointer-events:none}
.live-club .club-nav button[aria-current=page]:before{opacity:1;transform:scaleY(1)}
.gold-stage .decision-step{transition:background-color .18s,color .18s}
.gold-stage .decision-step:hover{background:#e7bc500a;color:#ffe4a0}
/* Operational feedback never moves the button under the pointer. */
.admin-workspace :is(.block-list>button,.editor-tabs button,.media-choice,.application-row,.dashboard-stats>button){transition:background-color .16s,border-color .16s,box-shadow .16s}
.admin-workspace .block-list>button.is-selected{box-shadow:inset 3px 0 #b48828,0 3px 12px #25231c08}
.live-club :is(button,a)[aria-disabled=true],.live-club button:disabled{cursor:not-allowed}
.live-club .app-notice{border-inline-start:3px solid #39705a}
.live-club .app-notice--error{border-inline-start-color:#963c30}
.admin-workspace :is(input,textarea,select):focus-visible{outline-offset:2px;box-shadow:0 0 0 5px #d4a62a12}
@media(prefers-reduced-motion:no-preference){
 .premium-rays i{animation:gold-light-arrival 1.1s cubic-bezier(.16,1,.3,1) both}
 .live-club[data-card-intro] .membership-card .card-sheen{animation:card-light-arrival 1s ease-out both}
 .live-club .app-notice{animation:operation-arrival .16s ease-out}
}
@keyframes gold-light-arrival{from{opacity:0;translate:24px -12px}to{translate:0 0}}
@keyframes card-light-arrival{from{transform:translateX(-35%);opacity:0}to{transform:translateX(25%);opacity:1}}
@keyframes operation-arrival{from{opacity:.65}to{opacity:1}}
@media(hover:hover) and (pointer:fine){
 [data-spotlight][data-pointer-active]{border-color:#b7903e;box-shadow:0 8px 24px #25231c0d}
 .membership-card[data-pointer-active]{will-change:transform}
}
@media(max-width:900px){
 .live-club.member-workspace .club-nav button:before{left:34%;right:34%;top:0;bottom:auto;width:auto;height:2px;transform:scaleX(.3)}
 .live-club.member-workspace .club-nav button[aria-current=page]:before{transform:scaleX(1)}
}
@media(max-width:600px){
 .gold-stage .portal-hero{height:auto;min-height:450px}
 .gold-stage .portal-hero .hero-copy{padding:26px 22px 30px}
 .gold-stage .portal-hero h1{font-size:31px;line-height:1.48}
 .gold-stage .portal-hero p:not(.club-kicker){line-height:1.85;margin-bottom:18px}
 .gold-stage .portal-hero .club-kicker{margin-bottom:12px}
 .gold-stage .hero-access{margin-top:18px}
 .premium-rays{left:28%}
 .premium-rays i{opacity:.35}
 .gold-entry .wordmark{margin-bottom:20px}
 .gold-entry h1{font-size:30px;line-height:1.5;margin:18px 0}
 .gold-entry .intro-steps{margin-top:24px}
}
@media(prefers-reduced-motion:reduce){
 .premium-rays i,.membership-card .card-sheen,.live-club .app-notice{animation:none!important}
 .live-club .membership-card[data-tilt]{transform:none!important}
 [data-spotlight]:after{background:none!important}
 .live-club *,.gold-entry *{scroll-behavior:auto!important;transition:none!important}
}
/* A grid image must follow its column width, including when Thai copy wraps. */
@media(min-width:601px){
 .gold-stage .programme-editorial .portal-card:first-child{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
 .gold-stage .programme-editorial .portal-card:first-child .image-window{width:100%;min-width:0;aspect-ratio:auto}
}
/* Keep membership geometry inside its grid, including the 901–1100px rail layout. */
.member-workspace .overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;max-width:1000px;gap:28px}
.member-workspace .overview-grid>*{min-width:0}
.live-club.member-workspace .membership-card{box-sizing:border-box;width:100%;max-width:420px;min-width:0;min-height:0;height:auto;aspect-ratio:1.6;padding:24px;justify-self:start}
.live-club.member-workspace .membership-card:after{width:auto;height:auto;border:0}
.member-workspace .membership-card .card-orbit{width:42%;height:auto;aspect-ratio:1;right:7%;top:15%;opacity:.8}
.member-workspace .membership-card .card-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}
.member-workspace .membership-card .card-bottom>span:first-child{min-width:0}
.member-workspace .membership-card .card-bottom strong{font-size:14px;line-height:1.6}
.member-workspace .membership-card .card-bottom>span:last-child{font-size:9px}
.member-workspace .points-panel{min-width:0;max-width:420px;padding:18px 0}
.member-workspace .points-number{flex-wrap:wrap}
@media(max-width:760px){.member-workspace .overview-grid{grid-template-columns:minmax(0,1fr);gap:16px}.live-club.member-workspace .membership-card{padding:22px}.member-workspace .points-panel{padding:8px 0}}
