/*
Theme Name: JasfitGym Theme
Theme URI: https://jasfit.local
Author: Muslim Safar Project / Samara Experience
Author URI: https://example.com
Description: Custom exclusive WordPress theme for JASFIT Gym For Female with customizable premium landing blocks, trainer pages, program pages, membership pages, and integration-ready dashboard styling.
Version: 15.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: jasfitgym
*/

:root{
  --jf-pink:#EC5C9D;
  --jf-tosca:#22B8B8;
  --jf-black:#090B10;
  --jf-soft-black:#12151C;
  --jf-white:#FFFFFF;
  --jf-soft-white:#F8F8FA;
  --jf-grey:#6F7580;
  --jf-radius:22px;
  --jf-shadow:0 22px 70px rgba(12,15,22,.12);
  --jf-font-heading:'Poppins',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --jf-font-body:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --jf-logo-width:142px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--jf-white);color:var(--jf-black);font-family:var(--jf-font-body);line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.jf-container{width:min(1180px,calc(100% - 38px));margin-inline:auto}.screen-reader-text{position:absolute;left:-9999px}
.jf-site-header{position:sticky;top:0;z-index:99;background:rgba(9,11,16,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.jf-header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:26px}.jf-logo img{width:var(--jf-logo-width);max-height:58px;object-fit:contain}.jf-nav{display:flex;gap:30px;align-items:center}.jf-nav a{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;opacity:.82;transition:.22s}.jf-nav a:hover{opacity:1;color:var(--jf-tosca)}.jf-header-cta{background:#fff;color:var(--jf-pink);font-weight:900;font-size:12px;text-transform:uppercase;padding:13px 20px;border-radius:14px;box-shadow:0 12px 35px rgba(0,0,0,.15)}.jf-mobile-toggle{display:none;border:0;background:transparent;color:#fff;font-size:30px;line-height:1}
.jf-section{position:relative;overflow:hidden;padding:92px 0;background-size:cover;background-position:center}.jf-section[data-bg-video="1"] .jf-bg-video{display:block}.jf-bg-video{display:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.jf-section::before{content:"";position:absolute;inset:0;background:var(--jf-overlay,transparent);z-index:1;pointer-events:none}.jf-section>.jf-container{position:relative;z-index:2}.jf-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--jf-tosca);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.09em;margin-bottom:14px}.jf-eyebrow::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--jf-pink)}.jf-heading{font-family:var(--jf-font-heading);font-size:clamp(32px,5vw,68px);line-height:.98;font-weight:900;text-transform:uppercase;letter-spacing:-.055em;margin:0}.jf-title{font-family:var(--jf-font-heading);font-size:clamp(28px,3vw,44px);line-height:1.08;font-weight:900;text-transform:uppercase;letter-spacing:-.045em;margin:0 0 12px}.jf-subtitle{color:var(--jf-grey);max-width:700px;margin:0 auto 34px}.jf-center{text-align:center}.jf-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:14px;padding:15px 22px;background:var(--jf-pink);color:#fff;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.04em;box-shadow:0 14px 35px rgba(236,92,157,.28);border:0;cursor:pointer}.jf-btn.secondary{background:var(--jf-tosca);box-shadow:0 14px 35px rgba(34,184,184,.25)}.jf-btn.ghost{background:transparent;color:var(--jf-tosca);border:1px solid rgba(34,184,184,.45);box-shadow:none}.jf-card{border-radius:var(--jf-radius);background:#fff;box-shadow:var(--jf-shadow);border:1px solid rgba(9,11,16,.06);overflow:hidden}.jf-grid{display:grid;gap:24px}.jf-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.jf-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.jf-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.jf-hero{min-height:760px;display:flex;align-items:center;background:linear-gradient(130deg,#ec5c9d 0%,#ef86b9 32%,#95ecee 70%,#ffffff 100%);padding:120px 0 72px}.jf-hero::after{content:"JASFIT";position:absolute;right:-40px;top:80px;font-family:var(--jf-font-heading);font-size:27vw;font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.15);line-height:1;z-index:0}.jf-hero-wrap{display:grid;grid-template-columns:1.02fr .98fr;gap:44px;align-items:center}.jf-hero-copy{color:#fff;text-shadow:0 12px 30px rgba(0,0,0,.18)}.jf-hero-copy .jf-heading span{display:block}.jf-hero-copy .tone-tosca{color:var(--jf-tosca)}.jf-hero-copy .tone-pink{color:#ff7bb7}.jf-hero-desc{max-width:440px;font-size:17px;line-height:1.55;margin:22px 0 28px;color:rgba(255,255,255,.92)}.jf-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.jf-hero-image{position:relative;align-self:end}.jf-hero-image img{border-radius:34px;filter:drop-shadow(0 40px 80px rgba(9,11,16,.35));object-fit:cover}.jf-hero-features{margin-top:46px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.jf-hero-feature{display:flex;gap:11px;align-items:center;color:#fff;font-size:13px;font-weight:800}.jf-hero-feature i{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:rgba(255,255,255,.17);border:1px solid rgba(255,255,255,.18);color:var(--jf-tosca);font-style:normal}
.jf-membership{background:#fff}.jf-price-card{position:relative;padding:32px 28px;transition:.25s}.jf-price-card:hover{transform:translateY(-7px)}.jf-price-card.popular{border:2px solid rgba(236,92,157,.32);box-shadow:0 30px 90px rgba(236,92,157,.18)}.jf-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--jf-pink);color:#fff;border-radius:999px;padding:7px 15px;font-size:11px;font-weight:900;text-transform:uppercase}.jf-price-card h3{font-family:var(--jf-font-heading);font-size:25px;text-transform:uppercase;margin:0;color:var(--jf-tosca)}.jf-price-card.popular h3{color:var(--jf-pink)}.jf-price{font-size:42px;font-family:var(--jf-font-heading);font-weight:900;letter-spacing:-.05em;margin:18px 0}.jf-price small{font-size:12px;color:var(--jf-grey);letter-spacing:0}.jf-feature-list{list-style:none;padding:0;margin:22px 0 28px;display:grid;gap:11px}.jf-feature-list li{display:flex;gap:10px;align-items:flex-start;font-weight:700;font-size:14px;color:#30333a}.jf-feature-list li::before{content:"✓";display:grid;place-items:center;width:19px;height:19px;flex:0 0 19px;border-radius:50%;background:var(--jf-tosca);color:#fff;font-size:12px}.jf-price-card.popular .jf-feature-list li::before{background:var(--jf-pink)}
.jf-pricelist-page{background:#071316;color:#fff}.jf-pricelist-hero{background:radial-gradient(circle at 25% 0,rgba(34,184,184,.38),transparent 36%),linear-gradient(160deg,#042b2c,#0a0b10 56%,#2c0c1e);padding:86px 0 54px;text-align:center}.jf-pricelist-hero h1{font-size:clamp(54px,9vw,118px);line-height:.85;color:#fff;margin:0;text-transform:uppercase}.jf-pricelist-hero h1 span{color:var(--jf-pink)}.jf-pricelist-box{padding:42px 0 90px}.jf-pricelist-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.jf-list-box{background:var(--box-bg,var(--jf-tosca));border-radius:24px;padding:23px 26px;color:#fff;box-shadow:0 22px 65px rgba(0,0,0,.2)}.jf-list-box.pink{--box-bg:var(--jf-pink)}.jf-list-box h3{margin:0 0 12px;font-family:var(--jf-font-heading);font-size:30px;text-transform:uppercase;text-align:center;border-bottom:2px solid rgba(255,255,255,.55);padding-bottom:8px}.jf-price-row{display:flex;justify-content:space-between;gap:20px;font-size:22px;font-weight:900;text-transform:uppercase}.jf-pricelist-section-title{font-size:42px;font-family:var(--jf-font-heading);font-weight:900;text-transform:uppercase;margin:36px 0 12px}.jf-pill-row{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0}.jf-pill{background:var(--jf-pink);border-radius:999px;padding:15px 24px;font-weight:900;text-transform:uppercase;font-size:20px}.jf-pill.tosca{background:var(--jf-tosca)}
.jf-trainer-dark{background:#080b10;color:#fff}.jf-trainer-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:center}.jf-trainer-track{display:flex;gap:22px;overflow:auto;scroll-snap-type:x mandatory;padding:10px 4px 30px;scrollbar-width:thin}.jf-trainer-card{min-width:260px;scroll-snap-align:start;border-radius:22px;background:#fff;color:#111;overflow:hidden;box-shadow:0 22px 55px rgba(0,0,0,.32)}.jf-trainer-card img{height:300px;width:100%;object-fit:cover}.jf-trainer-card-body{padding:18px}.jf-trainer-card h3{font-family:var(--jf-font-heading);text-transform:uppercase;color:var(--jf-tosca);font-size:18px;margin:0 0 4px}.jf-trainer-card p{font-size:13px;margin:0;color:#4d535c}.jf-trainer-profile{background:#0b0e13;color:#fff;border-radius:34px;padding:30px;display:grid;grid-template-columns:1.1fr .9fr;gap:28px;border:1px solid rgba(255,255,255,.09);box-shadow:0 30px 80px rgba(0,0,0,.28)}.jf-trainer-profile h3{font-family:var(--jf-font-heading);font-size:44px;line-height:.9;color:var(--jf-tosca);text-transform:uppercase;margin:0}.jf-trainer-profile .coach{color:var(--jf-pink);font-weight:900;text-transform:uppercase}.jf-trainer-details{display:grid;gap:24px}.jf-trainer-detail h4{font-size:27px;margin:0 0 8px;color:var(--jf-tosca);font-weight:500}.jf-trainer-detail ul{margin:0;padding-left:0;list-style:none}.jf-trainer-detail li{font-size:19px;color:var(--jf-pink);font-weight:700;margin:5px 0}.jf-trainer-detail li::before{content:'›';color:var(--jf-tosca);font-weight:900;margin-right:8px}.jf-trainer-profile img{border-radius:24px;min-height:520px;width:100%;object-fit:cover;align-self:end}
.jf-programs{background:linear-gradient(135deg,#fde8f2,#fff 55%,#e2fafa)}.jf-program-card{padding:0;text-align:center;transition:.25s}.jf-program-card:hover{transform:translateY(-7px)}.jf-program-card img{height:220px;width:100%;object-fit:cover}.jf-program-card-body{padding:20px 18px 24px}.jf-program-icon{width:60px;height:60px;border-radius:22px;background:var(--jf-pink);color:#fff;display:grid;place-items:center;margin:-52px auto 14px;position:relative;border:6px solid #fff;font-size:24px}.jf-program-card:nth-child(even) .jf-program-icon{background:var(--jf-tosca)}.jf-program-card h3{font-family:var(--jf-font-heading);text-transform:uppercase;margin:0 0 8px;font-size:18px}.jf-program-card p{margin:0;color:#5f6670;font-size:13px}.jf-page-hero{background:linear-gradient(135deg,#0b0d13,#10282a);padding:84px 0;color:#fff;text-align:center}.jf-page-hero .jf-title{font-size:clamp(40px,6vw,82px)}.jf-program-detail-grid{padding:80px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.jf-program-detail{display:grid;grid-template-columns:210px 1fr;gap:24px;align-items:center;padding:20px}.jf-program-detail img{height:230px;width:100%;object-fit:cover;border-radius:18px}.jf-program-detail h2{font-family:var(--jf-font-heading);text-transform:uppercase;margin:0 0 9px;color:var(--jf-pink)}
.jf-why{background:#fff}.jf-why-card{text-align:center;padding:30px 18px;box-shadow:none;border:0;background:transparent}.jf-why-icon{width:70px;height:70px;border-radius:24px;margin:0 auto 17px;display:grid;place-items:center;border:1px solid rgba(236,92,157,.25);color:var(--jf-pink);font-size:28px;background:#fff}.jf-why-card h3{font-family:var(--jf-font-heading);font-size:15px;text-transform:uppercase;margin:0 0 8px}.jf-why-card p{font-size:13px;color:#6b717b;margin:0}.jf-studio{background:#a5eeee}.jf-facility-card img{height:170px;width:100%;object-fit:cover}.jf-facility-card h3{text-align:center;text-transform:uppercase;font-family:var(--jf-font-heading);font-size:13px;margin:14px 10px 18px}.jf-cta{background:linear-gradient(110deg,#ec5c9d,#8ee6e7);color:#fff}.jf-cta-wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:center}.jf-lead-form{background:#fff;border-radius:24px;padding:28px;box-shadow:0 25px 70px rgba(0,0,0,.16)}.jf-lead-form h3{font-family:var(--jf-font-heading);color:var(--jf-pink);text-align:center;margin:0 0 18px;text-transform:uppercase}.jf-input,.jf-select{width:100%;border:1px solid #e7e8ed;border-radius:12px;padding:13px 14px;margin-bottom:12px;font:inherit;color:#111;background:#fff}.jf-site-footer{background:#07080d;color:#fff;padding:56px 0 0}.jf-footer-grid{display:grid;grid-template-columns:1.4fr .7fr .8fr 1fr;gap:34px}.jf-footer-logo{width:180px;margin-bottom:14px}.jf-site-footer h4{font-family:var(--jf-font-heading);text-transform:uppercase;font-size:14px}.jf-site-footer p,.jf-site-footer a{font-size:13px;color:rgba(255,255,255,.7)}.jf-footer-bottom{text-align:center;margin-top:38px;padding:18px;border-top:1px solid rgba(255,255,255,.08);font-size:12px;color:rgba(255,255,255,.55)}
.jf-dashboard-wrap{background:#f7f8fb;min-height:calc(100vh - 82px);padding:28px}.jf-dashboard-shell{display:grid;grid-template-columns:260px 1fr;gap:26px}.jf-sidebar{background:#0b0e13;color:#fff;border-radius:24px;padding:22px;position:sticky;top:110px;height:max-content}.jf-sidebar h3{font-family:var(--jf-font-heading);color:var(--jf-pink);margin:0 0 18px}.jf-sidebar a{display:block;padding:11px 13px;border-radius:12px;color:rgba(255,255,255,.78);font-weight:800;font-size:13px}.jf-sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}.jf-dashboard-main{display:grid;gap:22px}.jf-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.jf-stat-card{background:#fff;border-radius:20px;padding:22px;box-shadow:0 16px 45px rgba(15,20,30,.07);border:1px solid rgba(10,12,18,.05)}.jf-stat-card span{font-size:12px;color:#747b86;text-transform:uppercase;font-weight:900}.jf-stat-card strong{display:block;font-family:var(--jf-font-heading);font-size:34px;line-height:1;margin-top:8px}.jf-table{width:100%;border-collapse:separate;border-spacing:0 10px}.jf-table th{text-align:left;font-size:12px;color:#767e89;text-transform:uppercase}.jf-table td{background:#fff;padding:14px;border-top:1px solid #eef0f4;border-bottom:1px solid #eef0f4}.jf-table td:first-child{border-radius:14px 0 0 14px;border-left:1px solid #eef0f4}.jf-table td:last-child{border-radius:0 14px 14px 0;border-right:1px solid #eef0f4}.jf-badge-status{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:900;text-transform:uppercase;background:#e8fbfb;color:#119393}.jf-badge-status.pending{background:#fff4e5;color:#d88500}.jf-badge-status.expired{background:#ffecef;color:#e33f63}.jf-badge-status.frozen{background:#eef4ff;color:#4d78d8}.jf-badge-status.cancelled{background:#f0f1f3;color:#7a7e86}.jf-notice{border-radius:16px;padding:14px 16px;background:#e8fbfb;color:#0f7474;font-weight:800;margin:14px 0}.jf-error{background:#fff0f4;color:#c62559}.jf-wa-float{position:fixed;right:22px;bottom:22px;z-index:1000}.jf-wa-button{display:flex;align-items:center;gap:10px;background:#25d366;color:#fff;border-radius:999px;padding:14px 18px;font-weight:900;box-shadow:0 18px 44px rgba(37,211,102,.35)}.jf-wa-panel{position:absolute;right:0;bottom:66px;width:310px;background:#fff;color:#111;border-radius:22px;box-shadow:0 24px 80px rgba(0,0,0,.18);padding:18px;display:none}.jf-wa-float.open .jf-wa-panel{display:block}.jf-wa-panel h4{margin:0 0 6px;font-family:var(--jf-font-heading);color:var(--jf-pink)}.jf-wa-panel p{font-size:13px;color:#666;margin:0 0 14px}.jf-wa-panel textarea{height:84px;resize:none}
[data-jf-animate]{opacity:0;transition:opacity .75s ease,transform .75s ease,filter .75s ease}.jf-visible{opacity:1!important;transform:none!important;filter:none!important}[data-jf-animate="fade-up"]{transform:translateY(36px)}[data-jf-animate="fade-left"]{transform:translateX(38px)}[data-jf-animate="fade-right"]{transform:translateX(-38px)}[data-jf-animate="zoom-soft"]{transform:scale(.94);filter:blur(2px)}[data-jf-animate="exclusive-lift"]{transform:translateY(40px) scale(.98)}
@media (max-width:980px){.jf-mobile-toggle{display:block}.jf-nav{display:none;position:absolute;left:18px;right:18px;top:82px;background:#0b0d13;border-radius:20px;padding:16px;flex-direction:column;align-items:flex-start}.jf-site-header.open .jf-nav{display:flex}.jf-header-cta{padding:10px 13px;font-size:10px;border-radius:11px}.jf-hero-wrap,.jf-trainer-layout,.jf-cta-wrap,.jf-footer-grid,.jf-dashboard-shell{grid-template-columns:1fr}.jf-hero{min-height:auto;padding-top:90px}.jf-hero-features{grid-template-columns:repeat(2,1fr)}.jf-grid-3,.jf-grid-4,.jf-grid-5,.jf-stat-grid,.jf-pricelist-grid,.jf-program-detail-grid{grid-template-columns:1fr 1fr}.jf-program-detail{grid-template-columns:1fr}.jf-sidebar{position:static}.jf-trainer-profile{grid-template-columns:1fr}.jf-trainer-profile img{min-height:360px}}
@media (max-width:640px){:root{--jf-logo-width:112px}.jf-container{width:min(100% - 28px,1180px)}.jf-header-inner{height:68px}.jf-nav{top:68px}.jf-section{padding:62px 0}.jf-heading{font-size:43px}.jf-title{font-size:30px}.jf-hero-actions .jf-btn{width:100%}.jf-header-cta{font-size:9px;padding:8px 11px;white-space:nowrap}.jf-grid-3,.jf-grid-4,.jf-grid-5,.jf-stat-grid,.jf-pricelist-grid,.jf-hero-features{grid-template-columns:1fr}.jf-price-row{font-size:18px}.jf-list-box h3{font-size:23px}.jf-pricelist-section-title{font-size:30px}.jf-pill{font-size:14px}.jf-trainer-profile{padding:20px;border-radius:24px}.jf-trainer-detail li{font-size:16px}.jf-trainer-profile h3{font-size:36px}.jf-dashboard-wrap{padding:14px}.jf-table,.jf-table tbody,.jf-table tr,.jf-table td{display:block;width:100%}.jf-table thead{display:none}.jf-table td{border-radius:0!important;border:0!important;border-bottom:1px solid #eef0f4!important}.jf-table tr{display:block;background:#fff;border-radius:16px;margin-bottom:12px;overflow:hidden}.jf-wa-panel{width:min(290px,calc(100vw - 32px))}.jf-wa-button span{display:none}}


/* ===== JasfitGym Theme v3 visual reset ===== */
body{
  background:linear-gradient(180deg,#fbfbfd 0%,#fff 45%,#fafbfd 100%);
  color:#13141a;
}
.jf-site-header{
  background:rgba(255,255,255,.76);
  border-bottom:1px solid rgba(19,20,26,.06);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.jf-nav a{color:#1e2025;opacity:.88}
.jf-nav a:hover{color:var(--jf-pink)}
.jf-mobile-toggle{color:#16181d}
.jf-header-cta{
  background:#fff;
  color:var(--jf-pink);
  border:1px solid rgba(236,92,157,.12);
  box-shadow:0 14px 36px rgba(36,24,40,.08);
  transition:transform .28s ease, box-shadow .28s ease, color .28s ease;
}
.jf-header-cta:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(236,92,157,.16);color:#d84a8b}
.jf-section{padding:98px 0}
.jf-title{font-size:clamp(30px,3.2vw,48px)}
.jf-subtitle{max-width:760px;color:#646a76}
.jf-btn{transition:transform .28s ease, box-shadow .28s ease, background .28s ease}
.jf-btn:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(236,92,157,.18)}
.jf-btn.secondary.soft{background:rgba(18,187,184,.95)}
.jf-btn.ghost:hover{border-color:var(--jf-tosca);background:rgba(18,187,184,.06)}

.jf-hero{
  min-height:810px;
  display:flex;
  align-items:center;
  padding:138px 0 88px;
  background:
    radial-gradient(circle at 18% 18%, rgba(247,117,182,.28), transparent 30%),
    radial-gradient(circle at 86% 22%, rgba(125,227,227,.34), transparent 28%),
    radial-gradient(circle at 62% 82%, rgba(225,206,255,.24), transparent 32%),
    linear-gradient(135deg,#f9c8db 0%,#f4dbe7 22%,#f4f0f8 55%,#d7f6f4 100%);
  isolation:isolate;
}
.jf-hero .jf-container{position:relative;z-index:4}
.jf-hero-layer,
.jf-hero-orb{pointer-events:none;position:absolute;inset:0}
.jf-hero-gridline{
  z-index:1;
  background-image:
    linear-gradient(rgba(255,255,255,.24) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.24) 1px, transparent 1px);
  background-size:80px 80px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.72), transparent 82%);
}
.jf-hero-noise{
  z-index:2;
  opacity:.45;
  background-image: radial-gradient(rgba(255,255,255,.8) .8px, transparent .8px);
  background-size: 8px 8px;
  mix-blend-mode:soft-light;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.5), transparent 90%);
}
.jf-hero-orb{z-index:1;filter:blur(44px);opacity:.9;transition:transform .5s ease}
.jf-hero .orb-a{inset:auto auto 58% 6%;width:270px;height:270px;border-radius:50%;background:rgba(247,131,183,.33);transform:translate(var(--jf-mx,0px),var(--jf-my,0px))}
.jf-hero .orb-b{inset:16% 9% auto auto;width:240px;height:240px;border-radius:50%;background:rgba(123,233,233,.32);transform:translate(calc(var(--jf-mx,0px)*-.9),calc(var(--jf-my,0px)*-.9))}
.jf-hero .orb-c{inset:auto 35% 6% auto;width:220px;height:220px;border-radius:50%;background:rgba(223,190,255,.34);transform:translate(calc(var(--jf-mx,0px)*.5),calc(var(--jf-my,0px)*.5))}
.jf-hero-wrap{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:18px;align-items:end}
.jf-hero-copy{position:relative;z-index:5;color:#17181d;padding-top:18px}
.jf-eyebrow-soft{color:var(--jf-hero-eyebrow-color);background:rgba(255,255,255,.46);border:1px solid rgba(255,255,255,.52);backdrop-filter:blur(10px);padding:10px 16px;border-radius:999px;box-shadow:0 12px 35px rgba(20,22,30,.05);margin-bottom:18px}
.jf-eyebrow-soft::before{background:currentColor}
.jf-hero-title{font-size:clamp(52px,7vw,104px);line-height:.88;letter-spacing:-.065em;margin:0;max-width:720px}
.jf-hero-title .line{display:block;position:relative;transition:transform .28s ease,color .28s ease,text-shadow .28s ease,letter-spacing .28s ease;will-change:transform}
.jf-hero-title .line:hover{transform:translateX(10px) scale(1.01);color:var(--jf-hero-hover-accent)!important;text-shadow:0 18px 45px rgba(255,255,255,.34);letter-spacing:-.05em}
.jf-hero-title .line-1{color:var(--jf-hero-line-1)}
.jf-hero-title .line-2{color:var(--jf-hero-line-2)}
.jf-hero-title .line-3{color:var(--jf-hero-line-3)}
.jf-hero-desc{max-width:520px;margin:24px 0 28px;font-size:18px;color:#5f6775;text-shadow:none}
.jf-hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.jf-hero-features{margin-top:44px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.jf-hero-feature{
  gap:12px;
  align-items:flex-start;
  color:#2c313b;
  font-size:14px;
  font-weight:800;
  background:rgba(255,255,255,.32);
  border:1px solid rgba(255,255,255,.42);
  padding:14px 14px 14px 13px;
  border-radius:18px;
  backdrop-filter:blur(10px);
  box-shadow:0 12px 34px rgba(20,22,30,.06);
}
.jf-hero-feature i{
  width:34px;height:34px;border-radius:12px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(17,20,25,.06);
  color:var(--jf-pink);
  box-shadow:0 10px 20px rgba(236,92,157,.12);
}
.jf-hero-image{position:relative;z-index:4;align-self:end;display:flex;justify-content:flex-end;min-height:540px}
.jf-hero-image-glow{
  position:absolute;right:10%;bottom:12%;width:70%;height:66%;border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.95) 0%, rgba(255,255,255,.46) 34%, rgba(255,255,255,0) 70%);
  filter:blur(12px);z-index:0
}
.jf-hero-image img{
  position:relative;z-index:1;
  width:var(--hero-art-width, 92%);
  max-height:var(--hero-art-maxheight, 840px);
  object-fit:contain;
  transform:translate(var(--hero-art-x,0px), var(--hero-art-y,0px)) scale(var(--hero-art-scale,1));
  transform-origin:bottom right;
  filter:drop-shadow(0 34px 85px rgba(26,27,34,.18));
}

.jf-membership,.jf-why{background:linear-gradient(180deg,#fff 0%,#fcfcfe 100%)}
.jf-programs{background:linear-gradient(180deg,#fff6fa 0%,#fff 48%,#f5fffe 100%)}
.jf-studio{background:linear-gradient(180deg,#effcfb 0%,#f9ffff 100%)}
.jf-cta{
  background:linear-gradient(135deg,rgba(246,237,243,.95),rgba(255,255,255,.96));
}
.jf-price-card,.jf-why-card,.jf-program-card,.jf-facility-card,.jf-lead-form,.jf-trainer-card{
  border:1px solid rgba(15,19,30,.06);
  box-shadow:0 18px 50px rgba(17,21,34,.07);
}
.jf-price-card:hover,.jf-program-card:hover,.jf-why-card:hover,.jf-facility-card:hover,.jf-trainer-card:hover{transform:translateY(-8px)}
.jf-price-card{background:rgba(255,255,255,.94);backdrop-filter:blur(10px)}
.jf-price-card p{color:#7a808a}
.jf-trainer-dark{
  background:linear-gradient(135deg,#0f1218 0%,#131a22 55%,#17151d 100%);
}
.jf-trainer-track{padding-bottom:10px}
.jf-trainer-card{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,248,251,.96));
  min-width:268px;
}
.jf-trainer-card img{height:340px;object-position:center top}
.jf-trainer-card-body h3{color:#20242c}
.jf-trainer-profile{
  background:linear-gradient(135deg,rgba(17,21,30,.98),rgba(13,15,22,.94));
  border:1px solid rgba(255,255,255,.08);
}
.jf-trainer-profile img{box-shadow:0 20px 48px rgba(0,0,0,.25)}
.jf-program-card img,.jf-facility-card img{border-bottom:1px solid rgba(17,20,25,.05)}
.jf-why-card{
  padding:28px 20px 24px;
  border-radius:24px;
  text-align:center;
  background:linear-gradient(180deg,#fff 0%,#fbfbfe 100%);
}
.jf-why-icon{
  width:68px;height:68px;border-radius:22px;margin:0 auto 16px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,rgba(236,92,157,.15),rgba(34,184,184,.14));
  color:var(--jf-pink);font-size:28px;font-weight:900;
}
.jf-why-card h3{margin:0 0 8px;font-family:var(--jf-font-heading);font-size:18px}
.jf-why-card p{margin:0;color:#6b7280;font-size:14px}
.jf-facility-card h3{padding:18px 16px 22px;margin:0;font-family:var(--jf-font-heading);font-size:17px;text-align:center;text-transform:uppercase}
.jf-cta-wrap{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:34px;align-items:center}
.jf-lead-form{padding:28px;border-radius:28px;background:rgba(255,255,255,.86);backdrop-filter:blur(10px)}
.jf-site-footer{background:linear-gradient(135deg,#0a0d13 0%,#10141d 100%);color:rgba(255,255,255,.86)}
.jf-footer-grid{display:grid;grid-template-columns:1.1fr .7fr .7fr 1fr;gap:28px;padding:24px 0 14px}
.jf-site-footer h4{font-family:var(--jf-font-heading);margin:0 0 10px;color:#fff}
.jf-site-footer p,.jf-site-footer a{color:rgba(255,255,255,.74)}
.jf-footer-bottom{padding:20px 0 6px;color:rgba(255,255,255,.54);border-top:1px solid rgba(255,255,255,.08);margin-top:10px}
.jf-page-hero{
  position:relative;
  background:linear-gradient(135deg,#f7cddd 0%,#f3eef8 55%,#dff8f7 100%);
  color:#16191f;
  overflow:hidden;
}
.jf-page-hero::after{
  content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.23) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.23) 1px, transparent 1px);background-size:78px 78px;mask-image:linear-gradient(180deg, rgba(0,0,0,.82), transparent 86%);pointer-events:none
}
.jf-page-hero .jf-subtitle{color:#596170 !important}
.jf-pricelist-page{background:linear-gradient(180deg,#f9fbfd 0%,#ffffff 100%);color:#161920}
.jf-pricelist-hero{
  position:relative;
  background:linear-gradient(135deg,#f6c6dc 0%,#f2ecf7 58%,#d9fbf7 100%);
  color:#10131a;
}
.jf-pricelist-hero h1{color:#12141a}
.jf-pricelist-box .jf-list-box{box-shadow:0 22px 60px rgba(19,20,26,.08)}
[data-jf-animate]{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
[data-jf-animate="fade-left"]{transform:translateX(-32px)}
[data-jf-animate="fade-right"]{transform:translateX(32px)}
[data-jf-animate="zoom-soft"]{transform:scale(.965);transform-origin:center}
[data-jf-animate="exclusive-lift"]{transform:translateY(40px) scale(.98)}
.jf-visible{opacity:1!important;transform:none!important}

@media (max-width: 1100px){
  .jf-hero-wrap{grid-template-columns:1fr}
  .jf-hero-copy{max-width:760px}
  .jf-hero-image{justify-content:center;min-height:initial;margin-top:22px}
  .jf-hero-image img{width:min(640px,90vw);max-height:680px;transform:translate(0,var(--hero-art-y,0px)) scale(var(--hero-art-scale,1))}
  .jf-cta-wrap{grid-template-columns:1fr}
  .jf-footer-grid{grid-template-columns:1fr 1fr}
  .jf-grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 820px){
  .jf-header-inner{height:76px}
  .jf-site-header.open .jf-nav{display:flex}
  .jf-nav{display:none;position:absolute;left:16px;right:16px;top:76px;padding:16px;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 18px 38px rgba(15,17,24,.1);flex-direction:column;align-items:flex-start;gap:10px}
  .jf-nav a{font-size:14px}
  .jf-mobile-toggle{display:block}
  .jf-hero{min-height:auto;padding:118px 0 68px}
  .jf-hero-title{font-size:clamp(44px,13vw,76px)}
  .jf-hero-features{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jf-grid-3,.jf-grid-4,.jf-grid-5,.jf-program-detail-grid,.jf-pricelist-grid,.jf-footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .jf-container{width:min(100% - 24px,1180px)}
  .jf-section{padding:74px 0}
  .jf-header-cta{padding:10px 15px;font-size:11px;border-radius:12px}
  .jf-hero-title{font-size:clamp(38px,14vw,58px);line-height:.9}
  .jf-hero-desc{font-size:16px}
  .jf-hero-features{grid-template-columns:1fr 1fr;gap:10px}
  .jf-hero-feature{font-size:12px;padding:12px}
  .jf-hero-image img{width:min(100%,490px);max-height:520px;transform:translate(0,0) scale(1)}
  .jf-grid-3,.jf-grid-4,.jf-grid-5,.jf-program-detail-grid,.jf-pricelist-grid,.jf-footer-grid{grid-template-columns:1fr}
  .jf-program-detail{grid-template-columns:1fr}
}


/* ===== JasfitGym Theme v4 hero + header refinement ===== */
.jf-site-header{
  position:fixed;
  top:0;left:0;right:0;
  background:transparent!important;
  border-bottom:0!important;
  box-shadow:none!important;
  transition:padding .28s ease;
}
.jf-header-inner{
  height:88px;
  transition:background .28s ease, box-shadow .28s ease, border-color .28s ease, margin-top .28s ease, padding .28s ease;
}
.jf-site-header .jf-header-inner{
  background:transparent;
  border:1px solid transparent;
  border-radius:24px;
  padding-inline:0;
}
.jf-site-header.is-scrolled .jf-header-inner{
  margin-top:12px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(18,24,35,.08);
  box-shadow:0 18px 48px rgba(20,23,34,.10);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  padding-inline:18px;
}
.jf-logo{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
}
.jf-logo-mark img{width:var(--jf-logo-width);max-height:54px;object-fit:contain;display:block}
.jf-logo-subtitle{
  font-size:10px;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.22em;
  color:#505764;
  font-weight:800;
}
.jf-nav a{color:#1b1f27}
.jf-header-cta{background:rgba(255,255,255,.82)}

.jf-hero{
  padding-top:132px!important;
  padding-bottom:0!important;
  min-height:880px!important;
}
.jf-hero-wrap{
  align-items:end!important;
  min-height:calc(880px - 132px);
}
.jf-hero-copy{
  padding-bottom:86px;
}
.jf-hero-title .line-1:hover{color:var(--jf-hero-line-1)!important;filter:brightness(1.05)}
.jf-hero-title .line-2:hover{color:var(--jf-hero-line-2)!important;filter:brightness(1.05)}
.jf-hero-title .line-3:hover{color:var(--jf-hero-line-3)!important;filter:brightness(1.05)}
.jf-hero-image{
  min-height:690px!important;
  align-self:end!important;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  margin-bottom:0;
}
.jf-hero-image img{
  align-self:flex-end;
  margin-bottom:0!important;
  max-height:920px!important;
  width:min(100%, var(--hero-art-width, 92%))!important;
  transform:translate(var(--hero-art-x,0px), var(--hero-art-y,0px)) scale(var(--hero-art-scale,1))!important;
  transform-origin:bottom center!important;
}
.jf-hero-image-glow{bottom:4%!important}
.jf-hero-features{
  gap:18px!important;
}
.jf-hero-feature{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  padding:0!important;
  border-radius:0!important;
}
.jf-hero-feature i{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  width:auto!important;
  height:auto!important;
  color:var(--jf-pink)!important;
  font-size:18px!important;
}

@media (max-width:1100px){
  .jf-hero{min-height:auto!important;padding-bottom:0!important}
  .jf-hero-wrap{min-height:0;align-items:end!important}
  .jf-hero-copy{padding-bottom:28px}
  .jf-hero-image{min-height:auto!important;justify-content:center}
  .jf-hero-image img{max-height:720px!important}
}
@media (max-width:820px){
  .jf-header-inner{height:76px}
  .jf-site-header.is-scrolled .jf-header-inner{margin-top:8px;padding-inline:14px}
  .jf-nav{top:76px}
  .jf-hero{padding-top:110px!important;min-height:auto!important}
  .jf-hero-copy{padding-bottom:20px}
  .jf-hero-image{justify-content:center;align-items:flex-end}
}
@media (max-width:640px){
  .jf-logo-subtitle{font-size:9px;letter-spacing:.18em}
  .jf-header-cta{padding:9px 13px!important;font-size:10px!important;border-radius:12px!important}
  .jf-site-header.is-scrolled .jf-header-inner{margin-top:6px}
  .jf-hero-copy{padding-bottom:14px}
  .jf-hero-features{grid-template-columns:1fr 1fr!important;gap:12px!important}
  .jf-hero-image img{width:min(100%,540px)!important;max-height:none!important}
}


/* JasfitGym v5 page/register responsive refinement */
body.page .jf-page-hero{padding-top:150px!important;padding-bottom:82px!important;min-height:0!important;background:linear-gradient(135deg,#f9cddd 0%,#f7f2f8 58%,#dcfbf8 100%)!important}.jf-page-hero .jf-title{font-size:clamp(42px,6.5vw,82px)!important;letter-spacing:-.065em!important}.jf-page-hero + .jf-section{padding-top:82px!important;padding-bottom:92px!important}.jf-page-hero + .jf-section > .jf-container{width:min(1160px,calc(100% - 38px))}.page-id-register-member .jf-page-hero + .jf-section,.page-register-member .jf-page-hero + .jf-section{background:#fff}
@media (max-width:820px){body.page .jf-page-hero{padding-top:120px!important;padding-bottom:58px!important}.jf-page-hero .jf-title{font-size:clamp(36px,11vw,58px)!important}.jf-page-hero + .jf-section{padding-top:54px!important;padding-bottom:70px!important}}
@media (max-width:560px){.jf-page-hero + .jf-section > .jf-container{width:min(100% - 24px,1160px)}body.page .jf-page-hero{padding-top:108px!important;padding-bottom:46px!important}.jf-page-hero .jf-title{font-size:40px!important}.jf-page-hero .jf-eyebrow{font-size:11px!important}.jf-page-hero + .jf-section{padding-top:36px!important;padding-bottom:56px!important}}


/* ===== JasfitGym Theme v6 refinements ===== */

/* Header: transparent, cleaner actions, no brand subtitle */
.jf-site-header{
  background:transparent!important;
}
.jf-header-inner{
  gap:18px;
}
.jf-header-logo .jf-logo-mark img{
  width:var(--jf-logo-width);
  max-height:58px;
  object-fit:contain;
}
.jf-logo-subtitle{display:none!important}
.jf-header-actions{
  display:flex;
  align-items:center;
  gap:12px;
}
.jf-login-link{
  font-size:12px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#262b34;
  padding:12px 10px;
  border-radius:12px;
  transition:.24s ease;
}
.jf-login-link:hover{
  color:var(--jf-pink);
  background:rgba(236,92,157,.08);
}
.jf-nav,
.jf-nav li{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}
.jf-nav li{
  display:flex;
  align-items:center;
}
.jf-nav ul{margin:0!important;padding:0!important;list-style:none!important}

/* Trainer auto slider */
.jf-trainer-marquee{
  width:100%;
  overflow:hidden;
  position:relative;
  padding:8px 0 10px;
  mask-image:linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
}
.jf-trainer-autoplay{
  display:flex!important;
  gap:22px;
  width:max-content;
  overflow:visible!important;
  scrollbar-width:none!important;
  animation:jfTrainerMarquee 34s linear infinite;
}
.jf-trainer-autoplay::-webkit-scrollbar{display:none!important}
.jf-trainer-marquee:hover .jf-trainer-autoplay{animation-play-state:paused}
.jf-trainer-autoplay .jf-trainer-card{
  flex:0 0 276px;
  min-width:276px;
}
@keyframes jfTrainerMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-50% - 11px))}
}

/* Trainer cards: better image handling */
.jf-trainer-card{
  border-radius:26px!important;
  overflow:hidden;
  background:linear-gradient(180deg,#ffffff 0%,#f8f9fb 100%)!important;
}
.jf-trainer-card img{
  height:340px!important;
  width:100%!important;
  object-fit:cover!important;
  object-position:center top!important;
  background:linear-gradient(135deg,#f7d8e8,#e5fbfb);
}
.jf-trainer-card-body{
  min-height:94px;
}

/* Hero: remove eyebrow spacing, keep foreground as image layer */
.jf-hero-copy .jf-heading{margin-top:0}
.jf-hero-copy{z-index:5}
.jf-hero-image{z-index:3}
.jf-hero-feature{
  color:#242934!important;
}
.jf-hero-feature i{
  color:var(--jf-pink)!important;
}

/* Mobile header/menu refinement */
@media (max-width:820px){
  .jf-header-inner{
    gap:10px;
  }
  .jf-header-actions{
    gap:8px;
    margin-left:auto;
  }
  .jf-login-link{
    padding:9px 8px;
    font-size:10px;
  }
  .jf-header-cta{
    padding:10px 13px!important;
    font-size:10px!important;
    white-space:nowrap;
  }
  .jf-mobile-toggle{
    order:2;
    width:42px;
    height:42px;
    border:1px solid rgba(17,20,25,.14)!important;
    border-radius:12px;
    display:grid!important;
    place-items:center;
    font-size:24px!important;
    background:rgba(255,255,255,.7)!important;
    color:#11151d!important;
  }
  .jf-header-actions{order:3}
  .jf-nav{
    left:22px!important;
    right:22px!important;
    top:78px!important;
    padding:22px 26px!important;
    gap:14px!important;
    border-radius:22px!important;
  }
  .jf-nav li,
  .jf-nav a{
    width:100%;
  }
  .jf-nav a{
    padding:7px 2px 7px 0;
    font-size:14px!important;
    letter-spacing:.05em;
  }
}

/* Mobile hero: image on top layer, text/icons in front */
@media (max-width:640px){
  .jf-hero{
    position:relative;
    min-height:760px!important;
    padding-top:96px!important;
    padding-bottom:36px!important;
  }
  .jf-hero-wrap{
    display:block!important;
    min-height:660px!important;
    position:relative;
  }
  .jf-hero-image{
    position:absolute!important;
    top:70px;
    right:-54px;
    left:auto;
    width:92%;
    height:455px;
    min-height:0!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-end!important;
    z-index:2!important;
    opacity:.78;
    pointer-events:none;
  }
  .jf-hero-image-glow{
    right:8%;
    bottom:6%;
    width:84%;
    height:72%;
    opacity:.65;
  }
  .jf-hero-image img{
    width:100%!important;
    max-width:460px!important;
    height:auto!important;
    max-height:520px!important;
    object-fit:contain!important;
    transform:translate(0,0) scale(1)!important;
    filter:drop-shadow(0 28px 60px rgba(26,27,34,.13));
  }
  .jf-hero-copy{
    position:relative!important;
    z-index:5!important;
    padding-top:42px!important;
    padding-bottom:0!important;
  }
  .jf-hero-title{
    max-width:94%;
    font-size:clamp(44px,15vw,62px)!important;
    text-shadow:0 10px 34px rgba(255,255,255,.55);
  }
  .jf-hero-desc{
    max-width:94%;
    margin-top:220px!important;
    color:#586170!important;
    text-shadow:0 8px 26px rgba(255,255,255,.8);
  }
  .jf-hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    margin-top:18px;
  }
  .jf-hero-actions .jf-btn{
    width:100%;
    min-height:50px;
  }
  .jf-hero-features{
    grid-template-columns:1fr 1fr!important;
    gap:13px 10px!important;
    margin-top:26px!important;
    position:relative;
    z-index:6;
  }
  .jf-hero-feature{
    font-size:12px!important;
    gap:7px!important;
  }
  .jf-hero-feature i{
    font-size:16px!important;
  }
}

/* Mobile footer: compact center logo + two-column menu */
@media (max-width:640px){
  .jf-site-footer{
    text-align:left;
  }
  .jf-footer-grid{
    grid-template-columns:1fr 1fr!important;
    gap:18px 22px!important;
    padding-top:12px!important;
  }
  .jf-footer-grid > div:first-child{
    grid-column:1 / -1;
    text-align:center;
  }
  .jf-footer-logo{
    display:flex;
    justify-content:center;
    margin-bottom:10px;
  }
  .jf-footer-logo img{
    margin-inline:auto;
    max-width:150px;
  }
  .jf-footer-grid > div:first-child p{
    max-width:320px;
    margin:0 auto;
    font-size:13px;
  }
  .jf-footer-grid > div:nth-child(2),
  .jf-footer-grid > div:nth-child(3){
    text-align:left;
  }
  .jf-footer-grid > div:nth-child(4){
    grid-column:1 / -1;
    text-align:center;
    border-top:1px solid rgba(255,255,255,.08);
    padding-top:16px;
  }
  .jf-site-footer h4{
    font-size:13px;
    margin-bottom:8px;
  }
  .jf-site-footer p{
    margin:6px 0;
    font-size:13px;
  }
  .jf-footer-bottom{
    text-align:center;
    font-size:12px;
  }
}


/* ===== JasfitGym Theme v7 — mobile exclusive reset ===== */
.jf-logo-subtitle{display:none!important}
.jf-header-inner{gap:16px!important}
.jf-header-actions{display:flex!important;align-items:center!important;gap:12px!important;margin-left:auto!important}
.jf-login-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#20242c!important;border-radius:14px!important;padding:12px 10px!important;transition:.25s ease!important}
.jf-login-link:hover{color:var(--jf-pink)!important;background:rgba(236,92,157,.08)!important}
.jf-login-icon{font-size:16px!important;line-height:1!important}.jf-login-label{line-height:1!important}
.jf-mobile-toggle{margin-left:0!important;flex:0 0 auto!important}
.jf-header-logo .jf-logo-mark img{display:block!important;object-fit:contain!important}

/* trainer slider: slower and no scrollbar, premium fade */
.jf-trainer-marquee{overflow:hidden!important;position:relative!important;width:100%!important;padding:10px 0 12px!important;mask-image:linear-gradient(90deg,transparent 0%,#000 13%,#000 87%,transparent 100%)!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 13%,#000 87%,transparent 100%)!important}
.jf-trainer-autoplay{display:flex!important;gap:24px!important;width:max-content!important;overflow:visible!important;scrollbar-width:none!important;animation:jfTrainerMarqueeSlow 68s linear infinite!important;will-change:transform!important}
.jf-trainer-autoplay::-webkit-scrollbar{display:none!important}.jf-trainer-marquee:hover .jf-trainer-autoplay{animation-play-state:paused!important}
.jf-trainer-autoplay .jf-trainer-card{flex:0 0 286px!important;min-width:286px!important}
@keyframes jfTrainerMarqueeSlow{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 12px))}}
.jf-trainer-card img{height:360px!important;object-fit:cover!important;object-position:center top!important;background:linear-gradient(135deg,#f6d4e5,#e7fbfb)!important}

/* dashboards: role focused sidebar */
.jf-dashboard-shell .jf-sidebar a{justify-content:flex-start!important}.jf-sidebar{gap:10px!important}.jf-sidebar a:last-child{color:var(--jf-pink)!important}

@media (max-width:820px){
  .jf-site-header{padding:0!important}.jf-header-inner{height:72px!important;display:flex!important;align-items:center!important;gap:8px!important}
  .jf-header-logo{margin-right:auto!important;min-width:0!important;flex:1 1 auto!important}.jf-header-logo .jf-logo-mark img{width:min(var(--jf-logo-width),88px)!important;max-height:42px!important}
  .jf-header-actions{order:2!important;margin-left:0!important;gap:7px!important;flex:0 0 auto!important}.jf-mobile-toggle{order:3!important;margin-left:0!important;flex:0 0 42px!important;display:grid!important;place-items:center!important;width:42px!important;height:42px!important;border-radius:14px!important;background:rgba(255,255,255,.86)!important;border:1px solid rgba(20,24,32,.10)!important;color:#151820!important;box-shadow:0 10px 28px rgba(19,23,32,.08)!important;font-size:23px!important;line-height:1!important}.jf-login-label{display:none!important}.jf-login-link{width:42px!important;height:42px!important;padding:0!important;background:rgba(255,255,255,.68)!important;border:1px solid rgba(20,24,32,.08)!important;box-shadow:0 10px 25px rgba(19,23,32,.06)!important}.jf-login-icon{font-size:17px!important}.jf-header-cta{height:42px!important;padding:0 13px!important;border-radius:14px!important;font-size:9px!important;white-space:nowrap!important;display:inline-flex!important;align-items:center!important}.jf-nav{top:74px!important;left:20px!important;right:20px!important;padding:20px 24px!important;border-radius:22px!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;box-shadow:0 22px 50px rgba(20,24,34,.14)!important}.jf-nav a{padding:8px 2px!important}
}

@media (max-width:640px){
  .jf-container{width:min(100% - 20px,1180px)!important}.jf-hero{min-height:720px!important;padding-top:86px!important;padding-bottom:28px!important;overflow:hidden!important}.jf-hero-wrap{display:block!important;min-height:610px!important;position:relative!important}.jf-hero-image{position:absolute!important;z-index:2!important;top:132px!important;left:50%!important;right:auto!important;width:118vw!important;height:565px!important;min-height:0!important;transform:translateX(-38%)!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;opacity:.72!important;pointer-events:none!important}.jf-hero-image img{width:auto!important;max-width:none!important;height:100%!important;max-height:none!important;object-fit:contain!important;transform:none!important;filter:drop-shadow(0 26px 58px rgba(20,24,33,.16))!important}.jf-hero-image-glow{width:80%!important;height:65%!important;right:6%!important;bottom:8%!important;opacity:.52!important}.jf-hero-copy{position:relative!important;z-index:5!important;padding:22px 0 0!important}.jf-hero-title{font-size:clamp(35px,12.3vw,47px)!important;line-height:.9!important;letter-spacing:-.058em!important;max-width:100%!important;text-shadow:0 10px 35px rgba(255,255,255,.72)!important;overflow:visible!important}.jf-hero-title .line{white-space:nowrap!important;max-width:100%!important}.jf-hero-desc{margin:12px 0 0!important;max-width:92%!important;font-size:14.5px!important;line-height:1.55!important;color:#596272!important;text-shadow:0 10px 28px rgba(255,255,255,.92)!important}.jf-hero-actions{position:relative!important;z-index:6!important;margin-top:278px!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.jf-hero-actions .jf-btn{width:100%!important;min-height:48px!important;border-radius:14px!important;font-size:11px!important}.jf-hero-features{position:relative!important;z-index:6!important;margin-top:18px!important;grid-template-columns:1fr 1fr!important;gap:10px 8px!important}.jf-hero-feature{font-size:11.5px!important;line-height:1.35!important;color:#252b35!important;gap:7px!important}.jf-hero-feature i{font-size:14px!important}.jf-wa-float{right:16px!important;bottom:16px!important}.jf-wa-button{width:54px!important;height:54px!important;box-shadow:0 14px 36px rgba(0,210,116,.24)!important}.jf-wa-button span{display:none!important}
}

@media (max-width:380px){.jf-header-cta{font-size:8.5px!important;padding:0 10px!important}.jf-login-link,.jf-mobile-toggle{width:40px!important;height:40px!important;flex-basis:40px!important}.jf-hero-title{font-size:clamp(32px,11.8vw,42px)!important}.jf-hero-actions{margin-top:270px!important}.jf-hero-image{height:535px!important;top:138px!important}}

/* mobile footer centered and compact */
@media (max-width:640px){
  .jf-site-footer{padding-top:24px!important;text-align:center!important}.jf-footer-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:20px 18px!important;align-items:start!important}.jf-footer-grid>div:first-child{grid-column:1/-1!important;text-align:center!important}.jf-footer-logo{width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;text-align:center!important;margin:0 auto 12px!important}.jf-footer-logo img{display:block!important;margin:0 auto!important;max-width:156px!important;width:156px!important}.jf-footer-grid>div:first-child p{max-width:310px!important;margin:0 auto!important;font-size:13px!important;line-height:1.55!important}.jf-footer-grid>div:nth-child(2),.jf-footer-grid>div:nth-child(3){text-align:left!important}.jf-footer-grid>div:nth-child(4){grid-column:1/-1!important;text-align:center!important;border-top:1px solid rgba(255,255,255,.08)!important;padding-top:18px!important}.jf-site-footer h4{font-size:12px!important;letter-spacing:.04em!important}.jf-site-footer p{font-size:13px!important;margin:7px 0!important}.jf-footer-bottom{text-align:center!important;font-size:12px!important;margin-top:14px!important}}


/* ===== JasfitGym Theme v8 — mobile hero, trainer, membership ===== */
@media (max-width:640px){
  .jf-hero{min-height:1000px!important;padding-top:88px!important;padding-bottom:30px!important;background:linear-gradient(180deg,#fad1e4 0%,#edf9fb 54%,#eaf7f9 100%)!important;}
  .jf-hero-wrap{min-height:890px!important;position:relative!important;}
  .jf-hero-image{top:72px!important;left:50%!important;right:auto!important;width:132vw!important;height:735px!important;transform:translateX(-50%)!important;opacity:.95!important;z-index:2!important;align-items:flex-start!important;}
  .jf-hero-image img{height:100%!important;width:auto!important;max-width:none!important;object-fit:contain!important;object-position:center top!important;filter:drop-shadow(0 28px 58px rgba(20,24,33,.16))!important;}
  .jf-hero-copy{z-index:5!important;padding-top:238px!important;}
  .jf-hero-title{font-size:clamp(42px,14.6vw,59px)!important;line-height:.88!important;max-width:100%!important;text-shadow:0 8px 28px rgba(255,255,255,.55)!important;}
  .jf-hero-title .line{white-space:nowrap!important;}
  .jf-hero-desc{margin-top:8px!important;max-width:96%!important;color:#fff!important;font-size:16px!important;line-height:1.55!important;text-shadow:0 2px 18px rgba(19,24,32,.46)!important;font-weight:700!important;}
  .jf-hero-actions{margin-top:20px!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;}
  .jf-hero-actions .jf-btn{min-height:58px!important;border-radius:20px!important;padding:13px 14px!important;font-size:11px!important;box-shadow:0 20px 40px rgba(17,19,26,.12)!important;}
  .jf-hero-features{margin-top:48px!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:28px 12px!important;position:relative!important;z-index:6!important;}
  .jf-hero-feature{color:#fff!important;font-size:14px!important;line-height:1.32!important;font-weight:900!important;text-shadow:0 2px 14px rgba(18,22,32,.45)!important;gap:10px!important;}
  .jf-hero-feature i{color:#fff!important;font-size:22px!important;text-shadow:0 2px 12px rgba(18,22,32,.35)!important;}
  .jf-mobile-toggle{order:4!important;margin-left:4px!important;}
  .jf-header-actions{order:2!important;margin-left:auto!important;}
  .jf-header-cta{order:2!important;}
  .jf-login-link{order:1!important;}
}
@media (max-width:390px){.jf-hero-title{font-size:clamp(37px,13vw,49px)!important}.jf-hero-actions{gap:10px!important}.jf-hero-actions .jf-btn{font-size:10px!important}.jf-hero-image{height:710px!important}.jf-hero-copy{padding-top:226px!important}}

.jf-trainer-marquee{overflow:hidden!important;cursor:grab;mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;}
.jf-trainer-marquee:active{cursor:grabbing;}
.jf-trainer-autoplay{animation:jfTrainerMarqueeNormal 54s linear infinite!important;gap:26px!important;}
@keyframes jfTrainerMarqueeNormal{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 13px))}}
.jf-trainer-autoplay.dragging{animation-play-state:paused!important;}
.jf-trainer-autoplay .jf-trainer-card{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:30px!important;position:relative;overflow:hidden;}
.jf-trainer-autoplay .jf-trainer-card img{height:430px!important;border-radius:30px!important;object-fit:cover!important;}
.jf-trainer-autoplay .jf-trainer-card:after{content:"";position:absolute;inset:0;border-radius:30px;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.72) 100%);pointer-events:none;}
.jf-trainer-autoplay .jf-trainer-card-body{position:absolute;left:0;right:0;bottom:0;z-index:2;color:#fff;padding:26px 22px!important;background:transparent!important;}
.jf-trainer-autoplay .jf-trainer-card-body h3,.jf-trainer-autoplay .jf-trainer-card-body p{color:#fff!important;text-shadow:0 4px 18px rgba(0,0,0,.38)}

.jf-membership-overview,.jf-pricing-detailed,.jf-program-overview,.jf-facility-premium-grid{display:grid;gap:24px}.jf-membership-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.jf-plan-options{display:grid;gap:10px;margin:20px 0}.jf-plan-row{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid rgba(12,16,24,.08);border-radius:16px;padding:12px 14px;background:rgba(255,255,255,.72)}.jf-plan-row strong{font-family:var(--jf-font-heading);font-size:18px}.jf-label{display:inline-flex;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;background:rgba(34,184,184,.12);color:var(--jf-tosca)}.jf-label.pink{background:rgba(236,92,157,.13);color:var(--jf-pink)}.jf-label.dark{background:#111722;color:#fff}.jf-note-small{font-size:12px;color:#69717c;margin:8px 0 18px}.jf-section-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.jf-pricing-section-title{margin:54px 0 16px;font-family:var(--jf-font-heading);font-size:clamp(28px,4vw,54px);line-height:.98;letter-spacing:-.06em;text-transform:uppercase}.jf-facility-premium-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.jf-facility-premium{background:linear-gradient(180deg,#111722,#080b10);border:1px solid rgba(255,255,255,.08);color:#fff;border-radius:28px;padding:24px;min-height:240px}.jf-facility-premium .icon{font-size:36px;color:var(--jf-tosca);margin-bottom:18px}.jf-facility-premium h3{font-family:var(--jf-font-heading);text-transform:uppercase;margin:0 0 8px}.jf-facility-premium p{color:rgba(255,255,255,.72);font-size:14px}.jf-checkout-summary{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}.jf-summary-box{background:linear-gradient(135deg,#fff,#f7fbfc);border-radius:28px;border:1px solid rgba(13,17,25,.07);padding:24px;box-shadow:0 22px 70px rgba(10,13,20,.08)}.jf-summary-line{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid rgba(13,17,25,.07);padding:11px 0}.jf-summary-total{font-size:28px;font-family:var(--jf-font-heading);font-weight:900;color:var(--jf-pink)}.jf-sisters-fields{display:none}.jf-checkout-form[data-group="SISTERS"] .jf-sisters-fields{display:grid}.jf-pt-alert{background:rgba(236,92,157,.09);border:1px solid rgba(236,92,157,.22);border-radius:22px;padding:20px;color:#3d2531}.jf-dashboard-status-list{display:grid;gap:14px}.jf-session-card{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.jf-admin-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.jf-admin-filters a{padding:9px 13px;border-radius:999px;background:#f1f3f6;font-weight:800;font-size:12px}.jf-admin-actions{display:flex;gap:8px;flex-wrap:wrap}.jf-admin-actions button{border:0;border-radius:10px;padding:8px 11px;background:var(--jf-tosca);color:#fff;font-weight:800;cursor:pointer}
@media(max-width:900px){.jf-membership-overview,.jf-section-split,.jf-checkout-summary{grid-template-columns:1fr}.jf-facility-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.jf-plan-row{font-size:13px}.jf-plan-row strong{font-size:16px}.jf-facility-premium-grid{grid-template-columns:1fr}.jf-summary-total{font-size:22px}.jf-pricing-section-title{font-size:32px}.jf-checkout-summary .jf-btn{width:100%}}


/* ===== JasfitGym Theme v9 premium alignment ===== */
body.admin-bar .jf-site-header{top:0!important}html{margin-top:0!important}.jf-header-inner{justify-content:flex-start!important}.jf-header-logo{flex:0 0 auto}.jf-nav{margin-left:auto!important;margin-right:34px!important}.jf-header-actions{flex:0 0 auto}.jf-header-cta{white-space:nowrap}.jf-login-link{display:inline-grid;place-items:center}.jf-login-label{margin-left:6px}.jf-trainer-layout{grid-template-columns:.72fr 1.28fr}.jf-trainer-marquee{overflow:hidden!important;cursor:grab;padding:10px 0!important;mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 88%,transparent 100%)!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 88%,transparent 100%)!important}.jf-trainer-marquee:active{cursor:grabbing}.jf-trainer-autoplay{gap:28px!important;animation:jfTrainerV9 62s linear infinite!important}.jf-trainer-autoplay.dragging{animation-play-state:paused!important}.jf-trainer-autoplay .jf-trainer-card{display:block;flex:0 0 300px;min-width:300px;height:440px;border:0!important;background:transparent!important;border-radius:34px!important;overflow:hidden;position:relative;box-shadow:none!important}.jf-trainer-autoplay .jf-trainer-card img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;border-radius:34px!important}.jf-trainer-autoplay .jf-trainer-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 38%,rgba(0,0,0,.74) 100%);z-index:1}.jf-trainer-autoplay .jf-trainer-card-body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:24px!important;background:transparent!important;color:#fff!important}.jf-trainer-autoplay .jf-trainer-card h3,.jf-trainer-autoplay .jf-trainer-card p{color:#fff!important;text-shadow:0 4px 18px rgba(0,0,0,.55)}.jf-trainer-autoplay .jf-trainer-card h3{font-size:20px!important}.jf-trainer-autoplay .jf-trainer-card p{opacity:.85}@keyframes jfTrainerV9{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 14px))}}
.jf-membership-overview .jf-price-card,.jf-section-split .jf-price-card{border-radius:28px}.jf-pricing-detailed .jf-title{max-width:860px;margin-inline:auto}.jf-facility-premium-grid{align-items:stretch}.jf-facility-premium{transition:transform .28s ease,box-shadow .28s ease}.jf-facility-premium:hover{transform:translateY(-6px);box-shadow:0 24px 70px rgba(8,12,18,.22)}
@media(max-width:820px){.jf-header-inner{display:grid!important;grid-template-columns:auto 1fr auto auto;gap:8px!important}.jf-header-logo{grid-column:1}.jf-nav{margin:0!important}.jf-header-actions{grid-column:3;margin-left:0!important}.jf-mobile-toggle{grid-column:4;margin-left:0!important}.jf-login-label{display:none!important}.jf-login-link{width:44px!important;height:44px!important;padding:0!important}.jf-nav{left:22px!important;right:22px!important;padding-left:26px!important}.jf-trainer-layout{grid-template-columns:1fr}.jf-trainer-autoplay .jf-trainer-card{flex-basis:72vw;min-width:72vw;height:430px}}
@media(max-width:640px){.jf-hero{min-height:1030px!important;padding-top:84px!important}.jf-hero-wrap{min-height:930px!important}.jf-hero-image{top:82px!important;width:132vw!important;height:780px!important;opacity:.96!important}.jf-hero-copy{padding-top:270px!important}.jf-hero-title{font-size:clamp(40px,13.5vw,56px)!important;line-height:.9!important}.jf-hero-title .line{white-space:nowrap!important}.jf-hero-desc{margin-top:10px!important;max-width:94%!important;color:#fff!important;font-weight:700!important;text-shadow:0 2px 18px rgba(0,0,0,.42)!important}.jf-hero-actions{margin-top:20px!important;grid-template-columns:1fr 1fr!important}.jf-hero-features{margin-top:46px!important;gap:26px 10px!important}.jf-hero-feature,.jf-hero-feature span{color:#fff!important;text-shadow:0 2px 16px rgba(0,0,0,.55)!important}.jf-hero-feature i{color:#fff!important}.jf-trainer-autoplay .jf-trainer-card{height:420px}.jf-site-footer .jf-footer-logo{justify-content:center!important;text-align:center!important}.jf-site-footer .jf-footer-logo img{margin-inline:auto!important}.jf-nav a{padding-left:0!important}}
@media(max-width:390px){.jf-hero-title{font-size:clamp(36px,12.8vw,48px)!important}.jf-hero-image{height:740px!important}.jf-hero-copy{padding-top:250px!important}.jf-hero-actions .jf-btn{font-size:9.5px!important}}

/* ===== JASFIT v10 homepage + mobile refinements ===== */
.jf-home-membership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:34px}
.jf-home-membership-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:end;gap:12px;padding:34px;border-radius:32px;background:linear-gradient(135deg,#fff 0%,#fbfcfd 55%,#f0f8f8 100%);border:1px solid rgba(15,20,28,.06);box-shadow:0 24px 80px rgba(8,12,18,.08)}
.jf-home-membership-card:before{content:"";position:absolute;right:-80px;bottom:-120px;width:320px;height:320px;border-radius:50%;background:rgba(34,184,184,.08)}
.jf-home-membership-card.sisters-card:before{background:rgba(236,92,157,.08)}
.jf-home-membership-copy{position:relative;z-index:2}
.jf-home-membership-copy h3{margin:16px 0 10px;font-family:var(--jf-font-heading);font-size:clamp(30px,2.6vw,52px);line-height:.95;letter-spacing:-.05em;text-transform:uppercase;color:#10131a}
.jf-home-membership-copy p{margin:0;color:#66707d;font-size:15px}
.jf-home-price-list{display:grid;gap:10px;margin:22px 0 14px}
.jf-home-price-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.82);border:1px solid rgba(15,20,28,.07)}
.jf-home-price-row span{font-size:14px;font-weight:700;color:#34404d}
.jf-home-price-row strong{font-family:var(--jf-font-heading);font-size:18px;color:#10131a}
.jf-home-membership-photo{position:relative;z-index:2;align-self:end;height:100%;display:flex;align-items:flex-end;justify-content:flex-end;gap:10px}
.jf-home-membership-photo img{display:block;max-width:100%;height:330px;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 24px 38px rgba(16,19,26,.12))}
.jf-home-membership-photo.dual-photo img{width:50%;height:300px}
.jf-home-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
.jf-home-mini-card{padding:28px;border-radius:28px}
.jf-home-mini-card h3{margin:14px 0 10px;font-family:var(--jf-font-heading);font-size:clamp(24px,2.2vw,38px);line-height:1}
.jf-home-mini-card p{margin:0 0 18px;font-size:14px;color:#66707d}
.jf-home-program-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:34px}
.jf-home-program-card{padding:28px;border-radius:30px;text-align:left}
.jf-home-program-card h3{margin:14px 0 8px;font-family:var(--jf-font-heading);text-transform:uppercase;font-size:clamp(24px,1.9vw,34px);line-height:.98}
.jf-home-program-card p{margin:0;color:#617082;font-size:14px}
.jf-home-program-card .jf-price{margin:18px 0 18px;font-size:30px}
.jf-home-program-card.visit-card{background:linear-gradient(180deg,#fff,#fff6fb)}
@media(max-width:1080px){.jf-home-membership-grid,.jf-home-program-grid{grid-template-columns:1fr 1fr}.jf-home-membership-card{grid-template-columns:minmax(0,1fr) 220px}.jf-home-membership-photo img{height:300px}}
@media(max-width:760px){.jf-home-membership-grid,.jf-home-mini-grid,.jf-home-program-grid{grid-template-columns:1fr}.jf-home-membership-card{grid-template-columns:1fr;padding:var(--jf-mobile-card-padding);gap:18px}.jf-home-membership-photo{min-height:240px;justify-content:center}.jf-home-membership-photo img{height:260px}.jf-home-membership-photo.dual-photo{justify-content:center}.jf-home-membership-photo.dual-photo img{width:44%;height:240px}.jf-home-membership-copy h3{font-size:clamp(26px,8vw,42px)}.jf-home-program-card{padding:var(--jf-mobile-card-padding)}}

/* homepage hero mobile exacting layout */
@media(max-width:640px){
  .jf-container{width:min(100% - (var(--jf-mobile-content-x) * 2),1180px)!important}
  .jf-site-header{top:0!important;padding-top:8px!important}
  .jf-header-inner{height:var(--jf-mobile-header-height)!important;grid-template-columns:auto 1fr auto auto!important;gap:10px!important;padding:12px 14px!important;background:rgba(255,255,255,.76)!important;border:1px solid rgba(255,255,255,.72)!important;backdrop-filter:blur(16px)!important;border-radius:26px!important;box-shadow:0 20px 45px rgba(20,24,33,.08)!important}
  .jf-header-logo img{max-height:34px!important;width:auto!important}
  .jf-login-link,.jf-mobile-toggle,.jf-header-cta{background:#fff!important;border:1px solid rgba(20,24,33,.08)!important;box-shadow:none!important}
  .jf-login-link{width:46px!important;height:46px!important;border-radius:16px!important}
  .jf-header-cta{padding:0 18px!important;height:46px!important;display:inline-flex!important;align-items:center!important;border-radius:18px!important;font-size:11px!important;font-weight:900!important}
  .jf-mobile-toggle{width:46px!important;height:46px!important;border-radius:16px!important;display:grid!important;place-items:center!important;font-size:26px!important;color:#16181d!important}
  .jf-nav{top:calc(var(--jf-mobile-header-height) + 12px)!important;left:var(--jf-mobile-content-x)!important;right:var(--jf-mobile-content-x)!important}
  .jf-hero{min-height:0!important;padding-top:102px!important;padding-bottom:0!important;overflow:hidden!important;background:#dfe7ea!important}
  .jf-hero::after{display:none!important}
  .jf-hero-wrap{position:relative!important;display:block!important;min-height:980px!important}
  .jf-hero-image{position:absolute!important;left:50%!important;right:auto!important;bottom:0!important;top:auto!important;transform:translateX(-50%)!important;width:134vw!important;height:var(--jf-mobile-hero-image-height)!important;min-height:0!important;justify-content:center!important;align-items:flex-end!important;z-index:1!important;pointer-events:none!important}
  .jf-hero-image img{height:100%!important;width:auto!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important;filter:drop-shadow(0 18px 34px rgba(0,0,0,.08))!important;border-radius:0!important}
  .jf-hero-image-glow{display:none!important}
  .jf-hero-copy{position:relative!important;z-index:3!important;padding-top:var(--jf-mobile-hero-copy-top)!important;padding-bottom:var(--jf-mobile-hero-copy-bottom)!important;max-width:100%!important}
  .jf-hero-title{font-size:var(--jf-mobile-hero-title-size)!important;line-height:.88!important;max-width:100%!important;letter-spacing:-.07em!important;margin:0!important}
  .jf-hero-title .line{white-space:nowrap!important}
  .jf-hero-desc{max-width:92%!important;margin:10px 0 16px!important;font-size:var(--jf-mobile-hero-desc-size)!important;line-height:1.42!important;color:rgba(46,54,63,.78)!important;font-weight:500!important;text-shadow:none!important}
  .jf-hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin-top:0!important}
  .jf-hero-actions .jf-btn{width:100%!important;min-height:56px!important;padding:14px 12px!important;font-size:var(--jf-mobile-hero-button-size)!important;border-radius:20px!important;letter-spacing:0!important}
  .jf-hero-features{margin-top:22px!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px 18px!important;padding:0 0 0 6px!important}
  .jf-hero-feature{display:flex!important;align-items:center!important;gap:8px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;font-size:var(--jf-mobile-hero-feature-size)!important;font-weight:700!important;line-height:1.15!important;color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.32)!important}
  .jf-hero-feature span{display:block!important;color:#fff!important;white-space:nowrap!important;font-size:var(--jf-mobile-hero-feature-size)!important;letter-spacing:-.01em!important}
  .jf-hero-feature i{width:auto!important;height:auto!important;background:transparent!important;border:0!important;padding:0!important;color:#fff!important;font-size:15px!important;text-shadow:0 2px 8px rgba(0,0,0,.32)!important}
  .jf-title{font-size:var(--jf-mobile-section-title-size)!important}
  .jf-subtitle,.jf-card p,.jf-note-small,.jf-home-price-row span{font-size:var(--jf-mobile-body-size)!important}
  .jf-site-footer .jf-footer-grid{grid-template-columns:1fr!important;text-align:center!important}
  .jf-site-footer .jf-footer-logo,.jf-site-footer .jf-footer-logo img{margin-inline:auto!important;justify-content:center!important;text-align:center!important}
}
@media(max-width:420px){
  .jf-hero-wrap{min-height:930px!important}
  .jf-hero-image{width:138vw!important;height:calc(var(--jf-mobile-hero-image-height) - 16px)!important}
  .jf-hero-title{font-size:clamp(44px,14vw,var(--jf-mobile-hero-title-size))!important}
  .jf-hero-desc{max-width:95%!important}
  .jf-home-membership-photo img{height:240px}
}

/* ===== JASFIT v11 final revisions ===== */
.jf-home-membership-grid-compact .jf-home-membership-card,
.jf-home-membership-grid-detail .jf-home-membership-card{grid-template-columns:minmax(0,1fr) 280px;min-height:420px}
.jf-home-membership-grid-compact .jf-home-membership-copy,
.jf-home-membership-grid-detail .jf-home-membership-copy{display:grid;align-content:start;gap:16px}
.jf-home-membership-grid-compact .jf-home-membership-copy p,
.jf-home-membership-grid-detail .jf-home-membership-copy p{margin:0;color:#61707d;max-width:440px}
.jf-home-membership-grid-compact .jf-home-membership-copy .jf-btn,
.jf-home-membership-grid-detail .jf-home-membership-copy .jf-btn{justify-self:start}
.jf-home-membership-grid-compact .jf-home-membership-photo.single-photo img,
.jf-home-membership-grid-detail .jf-home-membership-photo.single-photo img{height:360px}
.jf-home-membership-photo.single-frame img{width:100%;height:340px;object-fit:contain;object-position:bottom center}
.jf-page-plan-stack{display:grid;gap:10px;width:100%;margin-top:4px}
.jf-page-plan-row{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.88);border:1px solid rgba(15,20,28,.08);color:#202632}
.jf-page-plan-row strong{font-family:var(--jf-font-heading);font-size:18px;color:#101319}
.jf-page-plan-row:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(20,23,32,.08)}
.jf-pricelist-hero-copy{max-width:720px;margin:18px auto 0;color:#5d6875}
.jf-pricelist-grid-pt{grid-template-columns:repeat(3,minmax(0,1fr))}
.jf-list-box.tosca{background:linear-gradient(180deg,#f4fffe 0%,#ffffff 100%);border:1px solid rgba(34,184,184,.12)}
.jf-price-row.interactive{display:flex;justify-content:space-between;gap:16px;align-items:center;color:inherit}
.jf-membership-steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.jf-membership-step-card{padding:28px;border-radius:28px;background:#fff;border:1px solid rgba(15,20,28,.06);box-shadow:0 18px 48px rgba(17,21,34,.06)}
.jf-membership-step-card span{display:inline-flex;width:40px;height:40px;border-radius:14px;align-items:center;justify-content:center;background:rgba(34,184,184,.1);color:var(--jf-tosca);font-weight:900;margin-bottom:14px}
.jf-membership-step-card h3{margin:0 0 8px;font-family:var(--jf-font-heading);font-size:22px;text-transform:uppercase;line-height:1}
.jf-membership-step-card p{margin:0;color:#61707d}
.jf-home-program-grid-visual{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:34px}
.jf-home-program-photo-card{padding:0!important;overflow:hidden;border-radius:30px;background:#fff;display:flex;flex-direction:column}
.jf-home-program-photo{aspect-ratio:4/5;overflow:hidden;background:linear-gradient(180deg,#fff7fb 0%,#eefdfd 100%)}
.jf-home-program-photo img{width:100%;height:100%;display:block;object-fit:cover}
.jf-home-program-card-body{padding:22px}
.jf-home-program-photo-card h3{margin:12px 0 8px}
.jf-home-program-photo-card p{margin:0 0 18px}
.jf-home-program-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 16px;color:#5e6977;font-size:13px}
.jf-home-program-meta strong{color:#10131a;font-family:var(--jf-font-heading);font-size:24px}
.jf-home-program-photo-card-detail .jf-btn,.jf-home-program-photo-card .jf-btn{width:100%}
.jf-program-page-v11 .jf-subtitle{max-width:720px}
.jf-program-detail-page-v11{background:linear-gradient(180deg,#f7f9fb 0%,#fff 100%)}

@media(max-width:1080px){
  .jf-home-membership-grid-compact .jf-home-membership-card,
  .jf-home-membership-grid-detail .jf-home-membership-card{grid-template-columns:minmax(0,1fr) 230px}
  .jf-home-program-grid-visual,.jf-pricelist-grid-pt,.jf-membership-steps-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .jf-home-membership-grid-compact .jf-home-membership-card,
  .jf-home-membership-grid-detail .jf-home-membership-card{grid-template-columns:1fr;min-height:0}
  .jf-home-membership-grid-compact .jf-home-membership-photo,
  .jf-home-membership-grid-detail .jf-home-membership-photo{justify-content:center;min-height:280px}
  .jf-home-membership-photo.single-frame img{height:280px}
  .jf-home-program-grid-visual,.jf-pricelist-grid-pt,.jf-membership-steps-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
  .jf-site-header{top:0!important;padding-top:10px!important}
  .jf-site-header .jf-header-inner{height:auto!important;min-height:var(--jf-mobile-header-height)!important;padding:10px 12px!important;border-radius:24px!important;background:rgba(255,255,255,.78)!important;border:1px solid rgba(255,255,255,.7)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;box-shadow:0 18px 34px rgba(15,20,28,.08)!important;display:flex!important;align-items:center!important;gap:8px!important}
  .jf-header-logo{flex:1 1 auto!important;min-width:0!important}
  .jf-header-logo img{height:var(--jf-mobile-logo-height)!important;width:auto!important;max-height:none!important}
  .jf-header-actions{gap:8px!important;margin-left:0!important}
  .jf-login-link,.jf-mobile-toggle,.jf-header-cta{height:var(--jf-mobile-header-control-height)!important;min-height:var(--jf-mobile-header-control-height)!important;border-radius:14px!important;border:1px solid rgba(17,20,25,.08)!important;background:#fff!important;box-shadow:none!important}
  .jf-login-link{width:var(--jf-mobile-header-control-height)!important;padding:0!important}
  .jf-login-icon svg,.jf-login-icon{width:var(--jf-mobile-header-icon-size)!important;height:var(--jf-mobile-header-icon-size)!important;font-size:var(--jf-mobile-header-icon-size)!important}
  .jf-mobile-toggle{width:var(--jf-mobile-header-control-height)!important;font-size:calc(var(--jf-mobile-header-icon-size) + 4px)!important}
  .jf-header-cta{padding:0 12px!important;font-size:10px!important;font-weight:900!important}
  .jf-nav{top:calc(var(--jf-mobile-header-height) + 16px)!important;left:var(--jf-mobile-content-x)!important;right:var(--jf-mobile-content-x)!important}

  .jf-hero{padding-top:94px!important;padding-bottom:0!important;background:#e3eaed!important;min-height:0!important;overflow:hidden!important}
  .jf-hero-wrap{position:relative!important;display:block!important;min-height:860px!important}
  .jf-hero-image{position:absolute!important;left:50%!important;right:auto!important;bottom:0!important;top:auto!important;transform:translateX(-50%)!important;width:124vw!important;height:var(--jf-mobile-hero-image-height)!important;z-index:1!important;opacity:1!important;justify-content:center!important;align-items:flex-end!important}
  .jf-hero-image img{height:100%!important;width:auto!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important;filter:drop-shadow(0 16px 30px rgba(0,0,0,.07))!important}
  .jf-hero-copy{position:relative!important;z-index:3!important;padding-top:var(--jf-mobile-hero-copy-shift)!important;padding-bottom:var(--jf-mobile-hero-copy-bottom)!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important}
  .jf-hero-title{font-size:var(--jf-mobile-hero-title-size)!important;line-height:.88!important;letter-spacing:-.07em!important;max-width:100%!important;margin:0!important}
  .jf-hero-desc{max-width:92%!important;margin:12px 0 16px!important;font-size:var(--jf-mobile-hero-desc-size)!important;line-height:1.45!important;color:rgba(54,62,72,.84)!important;font-weight:500!important}
  .jf-hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin-top:0!important}
  .jf-hero-actions .jf-btn{min-height:54px!important;border-radius:18px!important;padding:14px 10px!important;font-size:var(--jf-mobile-hero-button-size)!important}
  .jf-hero-features{margin-top:18px!important;grid-template-columns:1fr 1fr!important;gap:12px 10px!important;padding:0 0 8px 4px!important}
  .jf-hero-feature,.jf-hero-feature span{font-size:var(--jf-mobile-hero-feature-size)!important;line-height:1.18!important;color:#fff!important;text-shadow:0 2px 9px rgba(0,0,0,.22)!important}
  .jf-hero-feature i{color:#fff!important;text-shadow:0 2px 9px rgba(0,0,0,.22)!important}

  .jf-home-membership-grid-compact .jf-home-membership-card,
  .jf-home-membership-grid-detail .jf-home-membership-card{padding:22px!important;border-radius:28px!important}
  .jf-home-membership-grid-compact .jf-home-membership-copy h3,
  .jf-home-membership-grid-detail .jf-home-membership-copy h3{font-size:clamp(28px,9vw,38px)!important}
  .jf-home-membership-grid-compact .jf-home-membership-photo.single-photo img,
  .jf-home-membership-grid-detail .jf-home-membership-photo.single-photo img{height:300px!important}
  .jf-home-membership-photo.single-frame img{height:250px!important}
  .jf-page-plan-row{padding:13px 14px}
  .jf-page-plan-row strong{font-size:16px}
  .jf-home-program-card-body{padding:18px}
}

/* ===== JASFIT v12 showreel + gallery slider + menu refinement ===== */
.jf-nav{margin-left:auto!important;justify-content:flex-end!important}
.jf-showreel{
  position:relative;
  overflow:hidden;
  padding:0!important;
  background:#05070c;
}
.jf-showreel-video{
  display:block;
  width:100%;
  height:min(72vh,760px);
  min-height:420px;
  object-fit:cover;
  object-position:center;
  background:#05070c;
}
.jf-gallery-showcase{
  padding:0!important;
  overflow:hidden;
  background:#fff;
}
.jf-gallery-marquee{
  width:100%;
  overflow:hidden;
  position:relative;
}
.jf-gallery-track{
  display:flex;
  width:max-content;
  will-change:transform;
  animation:jfGallerySlide 56s linear infinite;
}
.jf-gallery-showcase:hover .jf-gallery-track{animation-play-state:paused}
.jf-gallery-item{
  margin:0!important;
  padding:0!important;
  flex:0 0 clamp(210px,20vw,390px);
  height:clamp(260px,30vw,500px);
  overflow:hidden;
  line-height:0;
  background:#111;
}
.jf-gallery-item img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:scale(1.01);
}
@keyframes jfGallerySlide{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media(max-width:640px){
  .jf-showreel-video{height:56vh;min-height:320px}
  .jf-gallery-item{flex-basis:58vw;height:74vw}
  .jf-gallery-track{animation-duration:46s}
}

/* ===== JASFIT v13 mobile + Membership/Program page revision ===== */
@media(max-width:640px){
  .jf-site-header{padding-top:8px!important}
  .jf-site-header .jf-header-inner{min-height:66px!important;padding:9px 12px!important;border-radius:22px!important;gap:8px!important}
  .jf-header-logo img{height:40px!important;max-height:40px!important;width:auto!important}
  .jf-login-link,.jf-mobile-toggle,.jf-header-cta{height:38px!important;min-height:38px!important;border-radius:13px!important}
  .jf-login-link,.jf-mobile-toggle{width:38px!important;flex-basis:38px!important}
  .jf-header-cta{font-size:9px!important;padding:0 11px!important}
  .jf-nav{top:76px!important}
  .jf-hero{padding-top:82px!important;min-height:0!important;background:#e4eef0!important}
  .jf-hero-wrap{min-height:790px!important}
  .jf-hero-image{height:760px!important;width:125vw!important;bottom:0!important;top:auto!important;align-items:flex-end!important;opacity:1!important}
  .jf-hero-copy{padding-top:258px!important;padding-bottom:18px!important}
  .jf-hero-title{font-size:clamp(38px,12.6vw,52px)!important;line-height:.9!important}
  .jf-hero-desc{font-size:13px!important;line-height:1.42!important;margin:10px 0 14px!important;max-width:92%!important;font-weight:500!important;color:rgba(51,58,68,.82)!important;text-shadow:none!important}
  .jf-hero-actions{grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:0!important}
  .jf-hero-actions .jf-btn{min-height:48px!important;border-radius:16px!important;font-size:10px!important;padding:12px 8px!important}
  .jf-hero-features{margin-top:18px!important;gap:10px 8px!important;padding-left:2px!important}
  .jf-hero-feature,.jf-hero-feature span{font-size:10.5px!important;white-space:nowrap!important}
  .jf-home-membership-grid-compact .jf-home-membership-card,.jf-home-membership-grid-detail .jf-home-membership-card{display:flex!important;flex-direction:column!important;gap:12px!important;padding:18px!important}
  .jf-home-membership-grid-compact .jf-home-membership-photo,.jf-home-membership-grid-detail .jf-home-membership-photo{order:-1!important;min-height:220px!important;width:100%!important;justify-content:center!important;align-items:flex-end!important}
  .jf-home-membership-grid-compact .jf-home-membership-photo.single-photo img,.jf-home-membership-grid-detail .jf-home-membership-photo.single-photo img{height:240px!important}
  .jf-home-membership-photo.single-frame img{height:220px!important}
  .jf-home-membership-grid-compact .jf-home-membership-copy,.jf-home-membership-grid-detail .jf-home-membership-copy{gap:10px!important}
  .jf-home-membership-grid-compact .jf-home-membership-copy h3,.jf-home-membership-grid-detail .jf-home-membership-copy h3{font-size:29px!important;margin:6px 0!important}
  .jf-gallery-track{animation-duration:88s!important}
  .jf-site-footer{padding-top:24px!important;text-align:left!important}
  .jf-site-footer .jf-footer-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px 16px!important;text-align:left!important;align-items:start!important}
  .jf-site-footer .jf-footer-grid>div:first-child{grid-column:1/-1!important;text-align:center!important}
  .jf-site-footer .jf-footer-grid>div:nth-child(2),.jf-site-footer .jf-footer-grid>div:nth-child(3){grid-column:auto!important;text-align:left!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:18px!important;padding:14px!important}
  .jf-site-footer .jf-footer-grid>div:nth-child(4){grid-column:1/-1!important;text-align:center!important;border-top:1px solid rgba(255,255,255,.08)!important;padding-top:16px!important}
  .jf-site-footer h4{margin:0 0 8px!important;font-size:11px!important}.jf-site-footer p{margin:6px 0!important;font-size:12px!important;line-height:1.4!important}
}
@media(max-width:380px){.jf-hero-wrap{min-height:760px!important}.jf-hero-image{height:730px!important}.jf-hero-copy{padding-top:246px!important}.jf-hero-title{font-size:clamp(34px,12vw,46px)!important}.jf-hero-actions .jf-btn{font-size:9px!important}}

.jf-v13-page{background:#f7f9fb;color:#121720}.jf-v13-page-hero{padding:118px 0 76px;text-align:center;background:linear-gradient(135deg,#fff7fb 0%,#f4ffff 56%,#ffffff 100%);border-bottom:1px solid rgba(16,22,31,.06)}
.jf-v13-page-hero h1{font-family:var(--jf-font-heading);font-size:clamp(42px,5.4vw,84px);line-height:.9;letter-spacing:-.07em;text-transform:uppercase;max-width:940px;margin:14px auto;color:#10151d}.jf-v13-page-hero p{max-width:720px;margin:0 auto;color:#66717f;font-size:17px;line-height:1.55}.jf-v13-section-head{margin-bottom:30px}.jf-v13-section-head.split{display:grid;grid-template-columns:1fr minmax(280px,420px);gap:24px;align-items:end}.jf-v13-section-head.mini{margin-top:54px}.jf-v13-card-grid{display:grid;gap:24px}.jf-v13-card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.jf-v13-card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.jf-v13-secondary-grid{margin-top:24px}.jf-v13-package-card{position:relative;overflow:hidden;border-radius:34px;padding:30px;background:#fff;border:1px solid rgba(15,20,28,.07);box-shadow:0 22px 70px rgba(16,22,31,.06)}
.jf-v13-package-card.has-image{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:end;min-height:520px}.jf-v13-package-card:before{content:"";position:absolute;right:-90px;bottom:-110px;width:320px;height:320px;border-radius:50%;background:rgba(34,184,184,.09)}.jf-v13-package-card.pink-card:before,.jf-v13-package-card.student:before{background:rgba(236,92,157,.10)}.jf-v13-package-card.dark-card{background:linear-gradient(135deg,#111722,#080b10);color:#fff}.jf-v13-package-card.dark-card p,.jf-v13-package-card.dark-card .jf-note-small{color:rgba(255,255,255,.72)}.jf-v13-card-copy{position:relative;z-index:2}.jf-v13-package-card h3{font-family:var(--jf-font-heading);font-size:clamp(30px,3vw,54px);line-height:.95;letter-spacing:-.06em;text-transform:uppercase;margin:14px 0 10px;color:inherit}.jf-v13-package-card p{color:#657080;line-height:1.55}.jf-v13-card-image{position:relative;z-index:2;margin:0;align-self:end;text-align:center}.jf-v13-card-image img{height:360px;max-width:100%;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 24px 46px rgba(16,22,31,.12))}.jf-v13-plan-stack{display:grid;gap:10px;margin:18px 0}.jf-v13-plan-row{display:flex;justify-content:space-between;gap:16px;align-items:center;color:#17202c;background:rgba(255,255,255,.9);border:1px solid rgba(15,20,28,.08);border-radius:18px;padding:14px 15px;transition:.25s}.jf-v13-plan-row:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(16,22,31,.08)}.jf-v13-plan-row strong{font-family:var(--jf-font-heading);font-size:18px;color:#10151d}.jf-v13-price-big{font-family:var(--jf-font-heading);font-size:clamp(34px,4vw,52px);line-height:1;color:var(--jf-pink);letter-spacing:-.05em;margin:18px 0 10px}.dark-card .jf-v13-price-big{color:#fff}.tosca-card .jf-v13-price-big{color:var(--jf-tosca)}.jf-v13-flow-section{background:#fff}.jf-v13-flow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.jf-v13-flow-grid article{border-radius:26px;padding:24px;background:linear-gradient(180deg,#fff,#f8fbfc);border:1px solid rgba(15,20,28,.06);box-shadow:0 16px 48px rgba(16,22,31,.04)}.jf-v13-flow-grid span{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:14px;background:rgba(34,184,184,.12);color:var(--jf-tosca);font-weight:900}.jf-v13-flow-grid h3{font-family:var(--jf-font-heading);text-transform:uppercase;font-size:20px;margin:14px 0 8px}.jf-v13-flow-grid p{margin:0;color:#66717f}
.jf-v13-program-section{background:linear-gradient(180deg,#f7f9fb 0%,#fff 100%)}.jf-v13-program-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.jf-v13-program-card{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:center;background:#fff;border:1px solid rgba(15,20,28,.07);box-shadow:0 22px 70px rgba(16,22,31,.06);border-radius:32px;overflow:hidden;padding:18px}.jf-v13-program-card figure{margin:0;height:260px;border-radius:24px;overflow:hidden;background:#eefafa}.jf-v13-program-card img{width:100%;height:100%;object-fit:cover}.jf-v13-program-card h3{font-family:var(--jf-font-heading);font-size:clamp(28px,3vw,48px);letter-spacing:-.06em;line-height:.95;text-transform:uppercase;margin:13px 0 8px}.jf-v13-program-card p{color:#66717f;margin:0 0 12px}.jf-v13-program-card strong{display:block;font-family:var(--jf-font-heading);font-size:36px;letter-spacing:-.05em;color:#10151d;margin:0 0 16px}.jf-v13-program-card .jf-btn{width:100%}.visit-card{background:linear-gradient(135deg,#fff,#fff7fb)}
@media(max-width:980px){.jf-v13-card-grid.two,.jf-v13-card-grid.three,.jf-v13-program-grid,.jf-v13-flow-grid,.jf-v13-section-head.split{grid-template-columns:1fr}.jf-v13-package-card.has-image{grid-template-columns:1fr;min-height:0}.jf-v13-card-image{order:-1}.jf-v13-card-image img{height:300px}.jf-v13-program-card{grid-template-columns:1fr}.jf-v13-program-card figure{height:320px}}
@media(max-width:640px){.jf-v13-page-hero{padding:98px 0 44px}.jf-v13-page-hero h1{font-size:38px}.jf-v13-page-hero p{font-size:14px}.jf-v13-pricing-section,.jf-v13-pt-section,.jf-v13-program-section{padding-top:50px!important}.jf-v13-package-card{border-radius:26px;padding:20px}.jf-v13-package-card.has-image{display:flex!important;flex-direction:column!important;gap:12px!important}.jf-v13-card-image{order:-1!important;width:100%;background:linear-gradient(180deg,#fff7fb,#effcfc);border-radius:22px;min-height:230px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.jf-v13-card-image img{height:250px}.jf-v13-package-card h3{font-size:30px}.jf-v13-plan-row{padding:12px 13px;border-radius:15px;font-size:13px}.jf-v13-plan-row strong{font-size:15px}.jf-v13-price-big{font-size:34px}.jf-v13-flow-grid article{padding:20px}.jf-v13-program-card{border-radius:26px;padding:14px}.jf-v13-program-card figure{height:240px;border-radius:20px}.jf-v13-program-card h3{font-size:32px}.jf-v13-program-card strong{font-size:30px}.jf-v13-program-card p{font-size:13px}.jf-v13-card-grid{gap:16px}.jf-v13-program-grid{gap:16px}.jf-v13-secondary-grid{margin-top:16px}}


/* ===== JasfitGym v14: full customizer typography + editable block visuals ===== */
body, .jf-section, .jf-v13-page{font-family:var(--jf-font-body)}
.jf-title, .jf-heading, .jf-v13-page-hero h1, .jf-v13-package-card h3, .jf-v13-program-card h3, .jf-home-membership-copy h3, .jf-home-program-photo-card h3, .jf-trainer-profile h3, .jf-trainer-card h3{font-family:var(--jf-font-heading)!important}
.jf-title{font-size:var(--jf-home-title-size)!important}
.jf-subtitle{font-size:var(--jf-home-subtitle-size)!important}
.jf-home-membership-copy h3,.jf-home-program-photo-card h3,.jf-v13-package-card h3,.jf-v13-program-card h3{font-size:var(--jf-card-title-size)!important}
.jf-home-membership-copy p,.jf-home-program-photo-card p,.jf-v13-package-card p,.jf-v13-program-card p,.jf-note-small,.jf-v13-plan-row span{font-size:var(--jf-card-body-size)!important}
.jf-btn,.jf-header-cta,.jf-login-link,.jf-v13-plan-row,.jf-page-plan-row{font-size:var(--jf-button-text-size)!important}
.jf-v13-page-hero h1,.jf-page-hero .jf-title{font-size:var(--jf-page-title-size)!important}
.jf-v13-page-hero p,.jf-page-hero .jf-subtitle{font-size:var(--jf-page-subtitle-size)!important}
.jf-trainer-autoplay .jf-trainer-card h3{font-size:var(--jf-trainer-name-size)!important}
.jf-trainer-autoplay .jf-trainer-card{height:var(--jf-trainer-card-height)!important}
.jf-trainer-autoplay .jf-trainer-card img{height:100%!important}

/* Membership block image handling for custom images */
.jf-home-membership-card{isolation:isolate}
.jf-home-membership-photo img,.jf-v13-card-image img{object-fit:contain!important;object-position:bottom center!important}
.jf-home-membership-card .jf-btn{margin-top:4px}
.jf-home-membership-copy{word-break:normal}

/* Program block custom images/text */
.jf-home-program-photo-card{transition:transform .28s ease, box-shadow .28s ease}
.jf-home-program-photo-card:hover{transform:translateY(-6px);box-shadow:0 28px 80px rgba(16,22,31,.10)}
.jf-home-program-photo img,.jf-v13-program-card img{object-fit:cover!important;object-position:center!important}
.jf-home-program-card-body .jf-btn{margin-top:2px}

/* Trainer slider/profile: minimal exclusive, auto crop, scalable beyond 5 trainers */
.jf-trainer-marquee{mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%)!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%)!important}
.jf-trainer-autoplay{gap:26px!important;animation-duration:72s!important}
.jf-trainer-autoplay .jf-trainer-card{flex:0 0 310px!important;min-width:310px!important;border-radius:34px!important;overflow:hidden!important;background:transparent!important;border:0!important;box-shadow:none!important;position:relative!important}
.jf-trainer-autoplay .jf-trainer-card img{position:absolute!important;inset:0!important;width:100%!important;object-fit:cover!important;object-position:center top!important;border-radius:34px!important;background:linear-gradient(135deg,#fff2f8,#e9fbfb)!important}
.jf-trainer-autoplay .jf-trainer-card:after{content:"";position:absolute;inset:0;border-radius:34px;background:linear-gradient(180deg,rgba(0,0,0,0) 42%,rgba(0,0,0,.78) 100%);z-index:1;pointer-events:none}
.jf-trainer-autoplay .jf-trainer-card-body{position:absolute!important;left:0!important;right:0!important;bottom:0!important;z-index:2!important;padding:25px 24px!important;background:transparent!important;color:#fff!important}
.jf-trainer-autoplay .jf-trainer-card h3,.jf-trainer-autoplay .jf-trainer-card p{color:#fff!important;text-shadow:0 4px 18px rgba(0,0,0,.55)!important}
.jf-trainer-autoplay .jf-trainer-card p{font-size:13px!important;line-height:1.4;opacity:.86}
.jf-trainer-profile{background:linear-gradient(135deg,#0b0f15 0%,#121823 100%)!important;border-radius:36px!important;padding:34px!important;box-shadow:0 28px 90px rgba(0,0,0,.24)!important;border:1px solid rgba(255,255,255,.08)!important;overflow:hidden!important}
.jf-trainer-profile img{object-fit:cover!important;object-position:center top!important;min-height:520px!important;background:linear-gradient(135deg,#f7d6e6,#e6fbfb)!important}
.jf-trainer-detail h4{font-family:var(--jf-font-heading)!important;font-size:22px!important;font-weight:800!important;letter-spacing:-.02em}
.jf-trainer-detail li{font-size:16px!important;line-height:1.4!important}

/* Page Membership and Program customize-ready layout */
.jf-v13-page-hero{background:linear-gradient(135deg,#fff7fb 0%,#f7feff 55%,#fff 100%)!important}
.jf-v13-page-hero h1{font-family:var(--jf-font-heading)!important}
.jf-v13-page-hero p{font-family:var(--jf-font-body)!important}
.jf-v13-package-card,.jf-v13-program-card{transition:transform .28s ease, box-shadow .28s ease}
.jf-v13-package-card:hover,.jf-v13-program-card:hover{transform:translateY(-4px);box-shadow:0 30px 90px rgba(16,22,31,.10)}

@media(max-width:820px){
  .jf-trainer-autoplay .jf-trainer-card{flex-basis:74vw!important;min-width:74vw!important;height:min(var(--jf-trainer-card-height),460px)!important}
  .jf-trainer-profile{grid-template-columns:1fr!important;padding:24px!important}
  .jf-trainer-profile img{order:-1;min-height:420px!important;max-height:520px!important}
}
@media(max-width:640px){
  .jf-title{font-size:var(--jf-v14-mobile-title-size)!important}
  .jf-home-membership-copy h3,.jf-home-program-photo-card h3,.jf-v13-package-card h3,.jf-v13-program-card h3{font-size:var(--jf-v14-mobile-card-title-size)!important}
  .jf-home-membership-copy p,.jf-home-program-photo-card p,.jf-v13-package-card p,.jf-v13-program-card p,.jf-subtitle,.jf-note-small,.jf-v13-plan-row span{font-size:var(--jf-v14-mobile-body-size)!important}
  .jf-btn,.jf-header-cta,.jf-login-link{font-size:var(--jf-v14-mobile-button-size)!important}
  .jf-v13-page-hero h1{font-size:clamp(34px,11vw,var(--jf-page-title-size))!important}
  .jf-v13-page-hero p{font-size:var(--jf-v14-mobile-body-size)!important}
  .jf-home-membership-photo,.jf-v13-card-image{min-height:230px!important}
  .jf-home-membership-photo img,.jf-v13-card-image img{max-height:280px!important;width:auto!important}
  .jf-home-program-photo,.jf-v13-program-card figure{height:230px!important}
  .jf-v13-program-card{grid-template-columns:1fr!important}
  .jf-trainer-autoplay .jf-trainer-card{flex-basis:78vw!important;min-width:78vw!important;height:420px!important;border-radius:28px!important}
  .jf-trainer-autoplay .jf-trainer-card img,.jf-trainer-autoplay .jf-trainer-card:after{border-radius:28px!important}
  .jf-trainer-profile{border-radius:28px!important;padding:20px!important}
  .jf-trainer-profile img{min-height:360px!important;border-radius:22px!important}
}


/* ===== JASFIT Theme v15 checkout + CTA updates ===== */
.jfgc-register-wrap.is-compact .jfgc-form-card .jfgc-register-summary{margin:4px 0 14px}
.jfgc-register-wrap.is-compact .jf-select{min-height:50px;border-radius:16px}
.jf-checkout-filter-grid label,.jfgc-form-card label{font-weight:800;color:#303845}
@media(max-width:640px){
  .jfgc-register-wrap.is-compact .jfgc-form-card{padding:22px!important}
  .jfgc-register-wrap.is-compact .jf-select{font-size:13px!important}
}
