/* Standalone membership page only; the parent theme owns all widgets and checkout. */
.gofo-membership #gofo-membership {
    --gofo-accent: #df4489;
    --muted-2-color: #69707d;
    background: radial-gradient(ellipse 650px 430px at 15% 260px, #efadd729, transparent), radial-gradient(ellipse 660px 430px at 88% 300px, #9cb6fa26, transparent);
    overflow: clip;
}
.gofo-membership.dark-theme #gofo-membership { --muted-2-color: #aeb5c1; }
.gofo-membership #gofo-membership .widget-container { width: calc(100% - 96px); max-width: 1160px; }
.gofo-membership #gofo-membership > div:first-of-type { padding-top: 76px; padding-bottom: 76px; }
.gofo-membership .tilt-cases-title { font-size: clamp(38px, 3.8vw, 54px); font-weight: 600; line-height: 1.4; letter-spacing: -.025em; }
.gofo-membership .tilt-cases-title .t-sub { font-size: .72em; margin-top: 12px; }
.gofo-membership .title-highlight { background: linear-gradient(110deg, #e14c99, #9263dc); -webkit-background-clip: text; background-clip: text; color: transparent; }
.gofo-membership .tilt-cases-subtitle { max-width: 480px; font-size: 16px; line-height: 1.95; }
.gofo-membership .tilt-cases-features { font-size: 14px; margin: 24px 0; }
.gofo-membership .tilt-cases-actions .but { padding: 13px 25px; font-size: 16px; min-height: 48px; }
.gofo-membership .tilt-cases-actions .jb-pink { background: linear-gradient(110deg, #e34a90, #af57bf); box-shadow: 0 10px 28px #d8509429; }
.gofo-membership .tilt-cases-trust { margin-top: 26px; font-size: 12px; }
.gofo-membership .tilt-cases-showcase { width: 100%; height: auto; aspect-ratio: 25 / 22; }
.gofo-membership .gofo-device {
    position: absolute; box-sizing: border-box;
    background: linear-gradient(125deg, #373a40 0%, #181a1e 26%, #090a0c 49%, #292c32 73%, #101114 100%);
    border: 1px solid #41454d;
    box-shadow: inset 0 0 0 1px #ffffff20, 0 12px 24px #10121a24;
}
.gofo-membership .gofo-device-glare { position: absolute; inset: 1px; border-radius: inherit; pointer-events: none; z-index: 4; background: linear-gradient(125deg, #ffffff12, transparent 28%, transparent 62%, #ffffff06 63%, transparent 85%); box-shadow: inset 0 1px 0 #ffffff30; }
.gofo-membership .gofo-device-screen { position: relative; overflow: hidden; background: #202126; border: 2px solid #111216; }
.gofo-membership .gofo-device-screen img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: top; border: 0; border-radius: 0; margin: 0; }
/* MacBook Air 13.6-inch display; dark lid and separate tapered lower chassis. */
.gofo-membership .gofo-macbook { width: 84%; left: 8%; top: 3%; padding: 1.1% 1.1% 1.7%; border-radius: 12px 12px 5px 5px; z-index: 1; }
.gofo-membership .gofo-macbook .gofo-device-screen { aspect-ratio: 2560 / 1664; border-radius: 6px 6px 2px 2px; }
.gofo-membership .gofo-macbook .gofo-device-screen img { position: absolute; inset: 0; }
.gofo-membership .gofo-macbook .gofo-device-screen::before { content: ''; position: absolute; z-index: 2; width: 12%; height: 4%; top: 0; left: 44%; border-radius: 0 0 5px 5px; background: #101114; }
.gofo-membership .gofo-macbook-base { position: absolute; width: 110%; left: -5%; height: 5%; bottom: -3%; border-radius: 1px 1px 55% 55% / 1px 1px 80% 80%; background: linear-gradient(#656971, #32353b 45%, #141619 90%, #3b3e44); box-shadow: 0 2px 2px #16191f33; }
.gofo-membership .gofo-macbook-base::after { content: ''; position: absolute; width: 17%; height: 35%; left: 41.5%; top: 0; border-radius: 0 0 6px 6px; background: linear-gradient(#141619, #52565e); }
/* iPad Air 11-inch body, landscape: 247.6 x 178.5 mm. */
.gofo-membership .gofo-ipad { width: 61%; aspect-ratio: 247.6 / 178.5; left: 1.5%; bottom: 1.5%; border-radius: 6% / 8.3%; z-index: 2; }
.gofo-membership .gofo-ipad .gofo-device-screen { position: absolute; width: 96.8%; height: auto; aspect-ratio: 2360 / 1640; left: 1.6%; top: 3.35%; border: 0; border-radius: 4.5% / 6.5%; }
.gofo-membership .gofo-ipad::before { content: ''; position: absolute; width: 1.2%; aspect-ratio: 1; top: 1.4%; left: 49.4%; border-radius: 50%; background: radial-gradient(circle at 40% 35%, #385674, #14191f 65%); }
/* iPhone 17 Pro body: 71.9 x 150 mm; 1206 x 2622 display. */
.gofo-membership .gofo-iphone { width: 20%; aspect-ratio: 71.9 / 150; right: 1.5%; bottom: 1.5%; border: 0; border-radius: 18% / 8.63%; z-index: 3; }
.gofo-membership .gofo-iphone .gofo-device-screen { position: absolute; width: 92.6%; height: auto; aspect-ratio: 1206 / 2622; left: 3.7%; top: 1.75%; border: 0; border-radius: 16% / 7.36%; }
.gofo-membership .gofo-iphone .gofo-device-screen img { position: absolute; top: 8%; height: 92%; }
.gofo-membership .gofo-iphone .gofo-device-screen::before { content: ''; position: absolute; z-index: 2; top: 2.1%; left: 34%; width: 32%; height: 3.6%; border-radius: 999px; background: #050506; box-shadow: inset -2px 0 2px #243043; }
.gofo-membership .gofo-iphone .gofo-device-screen::after { content: ''; position: absolute; z-index: 2; bottom: 1.5%; left: 32%; width: 36%; height: 1%; border-radius: 999px; background: #eff0f3; }
.gofo-membership .gofo-iphone::before, .gofo-membership .gofo-iphone::after { content: ''; position: absolute; width: 2%; background: linear-gradient(90deg, #202328, #626771); border-radius: 2px; }
.gofo-membership .gofo-iphone::before { left: -2%; top: 24%; height: 10%; box-shadow: 0 15px 0 #3b3f47; }
.gofo-membership .gofo-iphone::after { right: -2%; top: 30%; height: 13%; }
.gofo-membership .produck-plan-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.gofo-membership .produck-plan-card { min-width: 0; max-width: none; width: 100%; }
.gofo-membership .produck-plan-card-inner { padding: 32px 25px; }
.gofo-membership .plan-card-sub { min-height: 42px; line-height: 1.6; }
.gofo-membership .plan-card-features { font-size: 14px; line-height: 1.8; }
.gofo-membership .produck-plan-btn { min-height: 46px; }
.gofo-membership .produck-plan-foot { line-height: 1.9; max-width: 880px; margin: 24px auto 0; }
.gofo-membership .produck-plan-trust-bar { margin-top: 32px; }
.gofo-membership .fi-title { font-size: clamp(28px, 3vw, 40px); line-height: 1.5; }
.gofo-membership .fi-desc { font-size: 16px; line-height: 2; }
.gofo-membership .fi-desc p { margin: 0 0 18px; }
.gofo-membership .fi-desc a { color: var(--gofo-accent); }
.gofo-membership .fi-panels { box-shadow: 0 10px 32px #15152a0d; border-radius: 14px; overflow: hidden; }
.gofo-membership .produck-plan-card-inner { box-shadow: 0 6px 24px #15152a08; }
.gofo-membership .produck-plan-card.is-featured .produck-plan-card-inner { transform: none; box-shadow: 0 6px 24px #d8509412; }
.gofo-membership .fi-title, .gofo-membership .plan-card-title, .gofo-membership .big-title { font-weight: 600; }
.gofo-membership .produck-faq-summary { line-height: 1.85; }
.gofo-membership #gofo-plans { scroll-margin-top: 100px; }
.gofo-membership #gofo-membership a:focus-visible,
.gofo-membership #gofo-membership button:focus-visible { outline: 3px solid #bf4c98 !important; outline-offset: 4px; }
@media (max-width: 1100px) {
    .gofo-membership .produck-plan-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .gofo-membership #gofo-membership .widget-container { width: calc(100% - 40px); padding-left: 0; padding-right: 0; }
    .gofo-membership #gofo-membership > div:first-of-type { padding-top: 35px; padding-bottom: 20px; }
    .gofo-membership .tilt-cases-left { order: 0; }
    .gofo-membership .tilt-cases-right { order: 1; }
    .gofo-membership .tilt-cases-title { font-size: 40px; }
    .gofo-membership .tilt-cases-subtitle { font-size: 15px; }
    .gofo-membership .tilt-cases-showcase { margin-top: 25px; }
    .gofo-membership .tilt-cases-trust { gap: 12px; }
    .gofo-membership .produck-plan-cards { grid-template-columns: 1fr; gap: 24px; }
    .gofo-membership .plan-card-sub { min-height: 0; }
    .gofo-membership .produck-plan-card-inner { padding: 28px; }
    .gofo-membership .fi-desc { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
    .gofo-membership #gofo-membership * { scroll-behavior: auto; transition: none !important; animation: none !important; }
}
