/* FITQOR GO app — nav link, /fitqor-go page, class-page booking banner */

/* nav link (all pages) */
.nav-cta .nav-app{display:inline-flex;align-items:center;gap:8px;margin-right:10px;padding:8px 16px;border:1.5px solid var(--gold);border-radius:100px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background .2s,color .2s}
.nav-cta .nav-app:hover{background:var(--gold);color:var(--dark-purple)}
.nav-cta .nav-app svg{width:14px;height:14px;flex:none}
@media (max-width:1100px){.nav-cta .nav-app{display:none}}
.mm-cta .nav-app{display:none}
.mm-primary .mm-app{display:flex;align-items:center;gap:10px;color:var(--gold)!important;font-weight:600}

/* store buttons */
.go-stores{display:flex;flex-wrap:wrap;gap:14px}
.go-store{display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:9px 22px 9px 16px;border-radius:14px;background:#000;border:1px solid rgba(255,255,255,.35);color:#fff;text-decoration:none;transition:transform .2s,border-color .2s}
.go-store:hover,.go-store:focus-visible{transform:translateY(-2px);border-color:var(--gold)}
.go-store svg{width:30px;height:30px;flex:none}
.go-store small{display:block;font-size:11px;font-weight:500;letter-spacing:.03em;opacity:.8;line-height:1.1}
.go-store b{display:block;font-size:20px;font-weight:600;line-height:1.15;letter-spacing:-.01em}

/* hero */
.go-hero{position:relative;overflow:hidden;color:#fff;padding:190px 0 90px;background:radial-gradient(900px 700px at 78% 45%,#7a1b9c 0%,#4D0866 40%,#1B0534 85%)}
.go-hero .fib{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent 38%,#000 62%);mask-image:linear-gradient(to right,transparent 38%,#000 62%)}
.go-hero .container{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.go-eyebrow{display:flex;align-items:center;gap:14px;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.go-eyebrow:before{content:"";width:44px;height:3px;background:var(--gold)}
.go-hero h1{margin-top:18px;font-size:clamp(44px,6.2vw,84px);line-height:.98;font-weight:700;letter-spacing:-.02em}
.go-hero h1 em{font-style:normal;color:var(--gold)}
.go-lead{margin-top:24px;max-width:560px;font-size:clamp(18px,1.6vw,22px);line-height:1.45;color:rgba(255,255,255,.9)}
.go-lead b{color:#fff}
.go-actions{margin-top:34px}
.go-qrs{margin-top:30px;display:flex;flex-wrap:wrap;gap:16px}
.go-qr{display:flex;align-items:center;gap:16px;padding:14px;border-radius:22px;background:#fff;color:var(--dark-purple);box-shadow:0 18px 40px rgba(0,0,0,.3)}
.go-qr img{width:120px;height:120px;display:block;flex:none;image-rendering:pixelated}
.go-qr small{display:block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#7b6f95}
.go-qr strong{display:block;margin-top:2px;font-size:22px;line-height:1.1;color:var(--imperial)}
.go-qr span{display:block;margin-top:8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8d7f5c}
@media (hover:none),(max-width:900px){.go-qrs{display:none}}

/* phone mockup */
.go-phone{--w:300px;justify-self:center;width:calc(var(--w) + 20px);padding:10px;border-radius:52px;background:linear-gradient(145deg,#2a2a2e,#0b0b0d);box-shadow:0 0 0 2px #55555c,0 40px 80px rgba(0,0,0,.5),0 0 100px rgba(186,173,142,.18)}
.go-screen{position:relative;width:var(--w);height:calc(var(--w)*1.72);border-radius:42px;overflow:hidden;background:#fff}
.go-screen img.shot{position:absolute;left:0;top:calc(var(--w)*-100/924);width:100%;height:auto;display:block}
.go-screen .book{position:absolute;left:calc(var(--w)*75/924);width:calc(var(--w)*776/924);height:calc(var(--w)*98/924);border-radius:calc(var(--w)*26/924);background:#5b0f78;color:#fff;display:flex;align-items:center;justify-content:center;font-size:calc(var(--w)*34/924);font-weight:600}
.go-screen .b1{top:calc(var(--w)*631/924)}
.go-screen .b2{top:calc(var(--w)*1169/924)}
.go-screen .tc{position:absolute;left:calc(var(--w)*76/924);top:calc(var(--w)*1388/924);width:calc(var(--w)*134/924);height:calc(var(--w)*134/924);border-radius:calc(var(--w)*22/924);overflow:hidden;background:#fff}
.go-screen .tc i{display:block;width:100%;height:100%;background:url(/images/tai_chi_beach_thumb.jpg) no-repeat;background-size:175% auto;background-position:calc(var(--w)*-0.0384) calc(var(--w)*-0.0538)}
.go-screen .fade{position:absolute;left:0;right:0;bottom:0;height:calc(var(--w)*0.2);background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 85%)}

/* steps */
.go-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;counter-reset:s;list-style:none;padding:0}
.go-steps li{position:relative;padding:34px 28px 30px;border-radius:20px;background:var(--warm-white);border:1px solid #e8e5e1}
.go-steps li:before{counter-increment:s;content:counter(s);display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--imperial);color:#fff;font-weight:700;font-size:18px;margin-bottom:18px}
.go-steps h3{font-size:22px;font-weight:700;color:var(--dark-purple);margin-bottom:8px}
.go-steps p{font-size:16px;line-height:1.55;color:#3d3a3a}
.go-sub{text-align:center;max-width:680px;margin:14px auto 0;font-size:18px;line-height:1.5;color:#3d3a3a}
.go-chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px}
.go-chips a{padding:12px 22px;border-radius:100px;border:1.5px solid var(--imperial);color:var(--imperial);font-weight:600;font-size:15px;text-decoration:none;transition:background .2s,color .2s}
.go-chips a:hover,.go-chips a:focus-visible{background:var(--imperial);color:#fff}

/* closing CTA */
.go-cta{background:var(--dark-purple);color:#fff;text-align:center;padding:80px 0}
.go-cta h2{font-size:clamp(30px,4vw,48px);font-weight:700;letter-spacing:-.01em}
.go-cta h2 em{font-style:normal;color:var(--gold)}
.go-cta p{margin:14px auto 30px;max-width:560px;font-size:18px;color:rgba(255,255,255,.85)}
.go-cta .go-stores{justify-content:center}

/* class-page banner */
.go-banner{background:linear-gradient(110deg,var(--dark-purple),var(--imperial));color:#fff;padding:44px 0}
.go-banner .container{display:flex;align-items:center;justify-content:space-between;gap:28px 40px;flex-wrap:wrap}
.go-banner h2{font-size:clamp(24px,2.6vw,34px);font-weight:700;line-height:1.1}
.go-banner h2 em{font-style:normal;color:var(--gold)}
.go-banner p{margin-top:8px;font-size:16px;color:rgba(255,255,255,.85);max-width:520px}
.go-banner .go-more{display:inline-block;margin-top:10px;color:var(--gold);font-weight:600;font-size:15px;text-underline-offset:3px}
.go-banner .go-store{min-height:52px}

@media (max-width:900px){
  .go-hero{padding:150px 0 60px}
  .go-hero .container{grid-template-columns:1fr;gap:40px}
  .go-phone{--w:250px}
  .go-steps{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:480px){
  .go-store{flex:1 1 100%;justify-content:flex-start}
}
@media (prefers-reduced-motion:reduce){.go-store{transition:none}}
