/* GYM PLUS — base styles: shared across every page (nav, footer, floating
   WhatsApp button, mobile CTA bar, generic section/typography, dark theme
   variables, language toggle, scroll-reveal utility).
   Page-specific sections (hero, pricing, etc.) live in their own <page>.css. */
*{margin:0;padding:0;box-sizing:border-box}
:root{--accent:#E8272A;--accent2:#9400D3;--accent3:#6495ED;--dark:#111;--gray:#555;--light:#f5f5f5;--border:#e5e5e5;--bg:#fff;--bg2:#f5f5f5;--text:#111;--text2:#555;--card:#fff;--card-border:#e5e5e5;--nav-bg:rgba(255,255,255,0.97);--footer-bg:#0a0a0a;--plan-bg:#1a1a1a;--plan-border:#2a2a2a}
body.dark{--bg:#0f0f0f;--bg2:#1a1a1a;--text:#f0f0f0;--text2:#aaa;--card:#1a1a1a;--card-border:#2a2a2a;--nav-bg:rgba(15,15,15,0.97);--border:#2a2a2a;--gray:#888;--light:#1a1a1a}
body{font-family:'Segoe UI',Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg);overflow-x:hidden;transition:background .3s,color .3s}
a{text-decoration:none;color:inherit}

/* Nav */
nav{position:fixed;top:0;width:100%;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:16px 48px;background:var(--nav-bg);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);transition:background .3s}
.logo{display:flex;align-items:center}
.logo img{height:36px;width:auto;border-radius:4px;padding:2px 6px}
.logo-text{font-size:1.3rem;font-weight:900;letter-spacing:2px}
.logo-text span{color:var(--accent)}
#navLogoFallback{display:none}
.nav-right{display:flex;align-items:center;gap:12px}
.nav-links{display:flex;gap:28px;font-size:.85rem;font-weight:500;color:var(--gray)}
.nav-links a:hover{color:var(--accent2)}
.nav-cta{background:linear-gradient(135deg,#E8272A,#9400D3);color:#fff;padding:9px 22px;border-radius:4px;font-size:.8rem;font-weight:700;letter-spacing:1px;transition:opacity .2s}
.nav-cta:hover{opacity:.85}
.lang-toggle{display:flex;gap:4px;background:var(--bg2);border-radius:20px;padding:3px}
.lang-btn{padding:4px 12px;border-radius:16px;border:none;background:transparent;font-size:.75rem;font-weight:700;cursor:pointer;color:#888;transition:.2s}
.lang-btn.active{background:var(--bg);color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.15)}
.theme-btn{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:var(--bg2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;color:var(--text)}
.theme-btn:hover{border-color:var(--accent2)}
.theme-btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;display:block}
.theme-btn .icon-sun{display:none}
body.dark .theme-btn .icon-moon{display:none}
body.dark .theme-btn .icon-sun{display:block}

/* Generic section/typography used by any content section on any page */
section{padding:80px 48px;background:var(--bg);transition:background .3s}
.section-tag{font-size:.7rem;letter-spacing:4px;color:var(--accent2);font-weight:700;text-transform:uppercase;margin-bottom:10px}
.section-title{font-size:clamp(1.6rem,3.5vw,2.6rem);font-weight:900;letter-spacing:-1px;margin-bottom:16px;line-height:1.1;color:var(--text)}
.section-sub{font-size:.95rem;color:var(--text2);line-height:1.7;max-width:500px}

/* Generic CTA buttons (reusable, not tied to hero) */
.btn-primary{background:linear-gradient(135deg,#E8272A,#9400D3);color:#fff;padding:13px 30px;border-radius:4px;font-weight:700;font-size:.9rem;transition:opacity .2s}
.btn-primary:hover{opacity:.85}
.btn-secondary{background:transparent;color:#fff;padding:13px 30px;border-radius:4px;font-weight:700;font-size:.9rem;border:1px solid rgba(255,255,255,.3);transition:border-color .2s}
.btn-secondary:hover{border-color:#fff}

/* Footer / contact block — same on every page */
#contact{background:#0a0a0a !important;padding:80px 48px 40px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:48px}
.footer-logo{display:block;margin-bottom:20px}
.footer-logo img{height:44px;width:auto;border-radius:4px;padding:2px 6px}
.footer-logo-fallback{font-size:1.2rem;font-weight:900;letter-spacing:2px;color:#fff;display:none;margin-bottom:20px}
.footer-logo-fallback span{color:var(--accent)}
.info-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}
.info-item span:first-child{font-size:1rem}
.info-item a,.info-item p{font-size:.85rem;color:#666;line-height:1.6}
.info-item a:hover{color:var(--accent)}
.phone-link{display:block;color:#666}
.est-note{font-size:.7rem;color:#333;margin-top:20px}
.map-wrap{border-radius:8px;overflow:hidden;border:1px solid #1a1a1a}
.map-wrap iframe{display:block;width:100%;height:300px;border:0}
.footer-bottom{border-top:1px solid #1a1a1a;padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-bottom p{font-size:.75rem;color:#333}
.footer-map-link{font-size:.75rem;color:#444;display:flex;align-items:center;gap:6px}
.footer-credit{text-align:center;padding:16px 0 4px;margin-top:8px;border-top:1px solid #1a1a1a;font-size:.7rem;color:#333}
.footer-credit a{color:#555;font-weight:600;transition:.2s}
.footer-credit a:hover{color:var(--accent2)}
.social-link{display:inline-flex;align-items:center;gap:8px;border:1px solid #222;border-radius:4px;padding:8px 16px;color:#555;font-size:.8rem;font-weight:600;transition:.2s}
.social-link:hover{border-color:var(--accent2);color:var(--accent2)}

/* Floating WhatsApp button + mobile sticky join bar — every page */
.wa-btn{position:fixed;bottom:28px;right:28px;z-index:150;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#25D366,#128C7E);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,.4);cursor:pointer;transition:.3s;text-decoration:none}
.wa-btn:hover{transform:scale(1.1);box-shadow:0 6px 28px rgba(37,211,102,.55)}
.wa-btn svg{width:28px;height:28px;fill:#fff}
.wa-tooltip{position:absolute;right:68px;background:#111;color:#fff;font-size:.75rem;font-weight:600;padding:6px 12px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:.2s}
.wa-btn:hover .wa-tooltip{opacity:1}
.mobile-join{display:none;position:fixed;bottom:0;left:0;right:0;z-index:140;padding:12px 20px;background:var(--nav-bg);border-top:1px solid var(--border);backdrop-filter:blur(8px)}
.mobile-join a{display:block;text-align:center;background:linear-gradient(135deg,#E8272A,#9400D3);color:#fff;padding:14px;border-radius:6px;font-weight:700;font-size:.95rem;letter-spacing:.5px}

/* Language toggle + scroll-reveal utility — used site-wide */
[data-lang]{display:none}
body.en [data-lang="en"]{display:block}
body.az [data-lang="az"]{display:block}
body.en [data-lang-inline="en"]{display:inline}
body.az [data-lang-inline="az"]{display:inline}
[data-lang-inline]{display:none}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.reveal.visible{opacity:1;transform:none}

@media(max-width:900px){
  nav{padding:14px 20px}
  .nav-links{display:none}
  section,#contact{padding:60px 20px}
  .contact-grid{grid-template-columns:1fr}
  .mobile-join{display:block}
  .wa-btn{bottom:88px}
}
@media(prefers-reduced-motion:reduce){
  .reveal{transition:none;opacity:1;transform:none}
}
