.gofx-showcase{width:92%;max-width:1540px;margin:90px auto;color:#e8eae9;letter-spacing:.025em}.gofx-showcase *{box-sizing:border-box}.gofx-intro{padding:0 0 44px}.gofx-intro>span,.gofx-index,.gofx-english{font-size:11px;letter-spacing:.14em;color:#88938d}.gofx-intro h2{font-size:clamp(32px,4vw,56px);font-weight:400;line-height:1.3;margin:18px 0}.gofx-intro p{font-size:14px;color:#959d98;line-height:1.8}.gofx-stack{position:relative;padding-bottom:12vh}.gofx-slot{position:sticky;top:5vh;margin-bottom:24vh}.gofx-slot:last-child{margin-bottom:0}.gofx-card{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);background:#121616;border:1px solid #29312d;border-radius:12px;overflow:hidden;transform-origin:center top;box-shadow:0 -16px 60px #0005}.gofx-media{position:relative;aspect-ratio:16/9;background:#090c0b;align-self:start}.gofx-media video{width:100%;height:100%;display:block;object-fit:contain}.gofx-error{position:absolute;bottom:18px;left:20px;color:#bbb;font-size:12px}.gofx-error[hidden]{display:none}.gofx-copy{padding:clamp(20px,2.5vw,38px);display:flex;flex-direction:column;min-width:0}.gofx-copy h3{font-size:clamp(26px,2.7vw,42px);font-weight:400;line-height:1.3;margin:16px 0 8px}.gofx-copy>p{font-size:13px;color:#929c96;line-height:1.8;margin:20px 0;white-space:normal;overflow-wrap:anywhere}.gofx-props{margin:auto 0 0}.gofx-props>div{display:grid;grid-template-columns:minmax(70px,30%) 1fr;gap:12px;border-top:1px solid #2b3330;padding:10px 0;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.gofx-props dt{color:#8d9a92;font-weight:400}.gofx-props dd{margin:0;color:#d4ddd7}.gofx-shade{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none}.gofx-note{font-size:11px;color:#77817b;margin:20px 0}.gofx-slot.gofx-tall{position:relative;top:auto}@media(max-width:1000px){.gofx-card{grid-template-columns:1fr}.gofx-copy{padding:24px}.gofx-copy h3{font-size:28px;margin:10px 0 5px}.gofx-copy>p{margin:12px 0}.gofx-props>div{padding:7px 0}.gofx-slot{top:3vh}.gofx-showcase{margin:60px auto}}@media(prefers-reduced-motion:reduce){.gofx-slot{position:relative;top:0;margin-bottom:35px}.gofx-stack{padding-bottom:0}}



/* Taller, immersive showcase. */
.gofx-card{min-height:640px;height:78vh;max-height:880px;grid-template-columns:60% 40%}
.gofx-media{aspect-ratio:auto;align-self:stretch;height:100%}
.gofx-media video{object-fit:cover}
.gofx-copy{padding:clamp(28px,3.5vw,54px);overflow:auto}
.gofx-copy h3{font-size:clamp(32px,3.4vw,50px);margin-top:28px}
.gofx-copy>p{font-size:15px;line-height:1.9;margin:26px 0 40px}
.gofx-props>div{padding:14px 0;font-size:13px}
@media(max-width:1000px){.gofx-card{grid-template-columns:1fr;height:auto;min-height:0;max-height:none}.gofx-media{height:56vw;min-height:300px;max-height:560px}.gofx-copy{padding:28px;overflow:visible}.gofx-copy>p{margin:16px 0 24px}.gofx-props>div{padding:10px 0}.gofx-slot{position:relative;top:auto;margin-bottom:40px}}



/* Content-driven height: no clipped properties or nested scroll area. */
.gofx-card{height:auto;max-height:none;min-height:clamp(640px,78vh,880px)}
.gofx-copy{overflow:visible}
.gofx-props,.gofx-copy>p{flex-shrink:0}
.gofx-media{height:auto;min-height:100%;overflow:hidden}
.gofx-media video{position:absolute;inset:0}
.gofx-loading{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;padding:24px;background:rgba(9,12,11,.65);color:#ddd;text-align:center;pointer-events:none}
.gofx-loading[hidden]{display:none}
.gofx-loading-text{font-size:13px;font-weight:400;letter-spacing:.05em}
.gofx-spinner{width:30px;height:30px;border:2px solid #ffffff26;border-top-color:#eee;border-radius:50%;animation:gofx-spin .8s linear infinite}
.gofx-loading.is-error .gofx-spinner{display:none}
@keyframes gofx-spin{to{transform:rotate(360deg)}}
@media(max-width:1000px){.gofx-card{min-height:0}.gofx-media{height:clamp(300px,56vw,560px);min-height:0}}
@media(prefers-reduced-motion:reduce){.gofx-spinner{animation:none}}



/* Keep stacking even when cards grow to accommodate more properties. */
.gofx-showcase,.gofx-stack{overflow:visible}
.gofx-slot,.gofx-slot.gofx-tall{position:sticky;top:var(--gofx-stick-top,5vh);margin-bottom:24vh}
.gofx-slot:last-child{margin-bottom:0}
@media(prefers-reduced-motion:reduce){.gofx-slot,.gofx-slot.gofx-tall{position:relative;top:auto;margin-bottom:35px}}



/* Pin cards using document-relative scroll geometry, independent of ancestor sticky containers. */
#go-fx-showcase .gofx-slot{position:relative;top:auto;overflow:visible}
#go-fx-showcase .gofx-card{will-change:translate,transform}
@media(prefers-reduced-motion:reduce){#go-fx-showcase .gofx-card{translate:none!important;will-change:auto}}

