:root{--navy:#062844;--navy2:#0a3558;--ink:#0d2038;--muted:#65758b;--line:#dfe7ef;--soft:#f5f8fb;--green:#56dc55;--green2:#26b947;--blue:#2b7de9;--white:#fff;--danger:#f45d5d;--shadow:0 18px 55px rgba(6,40,68,.10);--radius:22px;--radius-sm:14px;--container:1180px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.jps-site{margin:0;color:var(--ink);background:#fff;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.jps-container{width:min(var(--container),calc(100% - 40px));margin:0 auto}.screen-reader-text{position:absolute!important;left:-9999px!important}
.jps-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(223,231,239,.85)}.jps-header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.jps-brand img{height:50px;width:auto;object-fit:contain}.jps-brand .custom-logo{height:50px;width:auto}.jps-primary-nav{display:flex;align-items:center;gap:24px}.jps-nav-list{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}.jps-nav-list a{font-size:14px;font-weight:700;color:#20344e}.jps-nav-list a:hover{color:var(--green2)}.jps-nav-actions{display:flex;gap:10px}.jps-menu-toggle{display:none;border:0;background:transparent;padding:6px}.jps-menu-toggle>span:not(.screen-reader-text){display:block;width:24px;height:2px;background:var(--navy);margin:5px}
.jps-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:12px;font-weight:800;font-size:14px;border:1px solid transparent;transition:.2s ease;cursor:pointer}.jps-btn:hover{transform:translateY(-1px)}.jps-btn-primary{background:linear-gradient(135deg,var(--green),#42d850);color:#05261f;box-shadow:0 12px 28px rgba(71,213,80,.26)}.jps-btn-dark{background:var(--navy);color:#fff}.jps-btn-ghost{border-color:#d8e2ea;background:#fff;color:var(--navy)}.jps-btn-outline-light,.jps-btn-ghost-light{border-color:rgba(255,255,255,.55);background:transparent;color:#fff}.jps-btn-small{min-height:40px;padding:0 16px}
.jps-hero{background:linear-gradient(110deg,#031e34 0%,#062d4b 60%,#0a3b5c 100%);color:#fff;overflow:hidden}.jps-hero-grid{min-height:600px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:44px}.jps-hero-copy{padding:70px 0}.jps-badge,.jps-kicker{display:inline-flex;letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:900;color:var(--green)}.jps-hero h1{font-size:clamp(48px,6vw,82px);line-height:.98;letter-spacing:-.055em;margin:18px 0 22px;max-width:780px}.jps-hero h1 span{color:#dfffe3}.jps-hero-copy>p{font-size:19px;color:#d6e2ec;max-width:620px;margin:0 0 30px}.jps-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.jps-hero-proof{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px;color:#bcd2e1;font-size:13px}.jps-hero-visual{height:470px;position:relative;border-radius:34px;overflow:hidden;box-shadow:0 35px 80px rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.15)}.jps-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,30,52,.20),rgba(3,30,52,0) 45%),linear-gradient(0deg,rgba(3,30,52,.30),transparent 55%)}.jps-hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.95)}.jps-floating-card{position:absolute;left:26px;bottom:26px;z-index:3;width:280px;padding:18px;background:rgba(255,255,255,.95);color:var(--ink);border-radius:18px;box-shadow:var(--shadow)}.jps-floating-card strong{display:block;font-size:16px}.jps-floating-card>span{font-size:12px;color:var(--muted)}.jps-floating-card>div{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.jps-floating-card em{font-style:normal;background:#eafbeb;color:#17813b;padding:6px 9px;border-radius:9px;font-size:11px;font-weight:900}
.jps-service-strip{margin-top:-28px;position:relative;z-index:5}.jps-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.jps-service-card{min-height:168px;background:#fff;border-radius:22px;box-shadow:var(--shadow);padding:24px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;border:1px solid #edf2f6;transition:.2s}.jps-service-card:hover{transform:translateY(-4px)}.jps-service-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:24px;font-weight:900}.jps-service-card small{font-weight:900;letter-spacing:.08em}.jps-service-card h2{font-size:20px;margin:5px 0 6px}.jps-service-card p{margin:0;color:var(--muted);font-size:14px}.jps-service-arrow{font-size:24px}.jps-service-social .jps-service-icon{background:#e9fbea;color:#1ba841}.jps-service-regular .jps-service-icon{background:#e9f2fb;color:#0a5c98}.jps-service-coach .jps-service-icon{background:#f0ecff;color:#6949d8}
.jps-section{padding:88px 0}.jps-section-soft{background:var(--soft)}.jps-section-dark{background:linear-gradient(120deg,#031d32,#062f4f);color:#fff}.jps-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px}.jps-section-heading h2{font-size:clamp(32px,4vw,48px);line-height:1.08;margin:8px 0 10px;letter-spacing:-.035em}.jps-section-heading p{margin:0;color:var(--muted);max-width:680px}.jps-heading-light p{color:#bfd0dc}.jps-link{font-weight:900;color:#176bd1;white-space:nowrap}.jps-link-light{color:#a8f5ae}
.jps-event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.jps-event-card{background:#fff;border:1px solid #e4ebf1;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(6,40,68,.07)}.jps-event-image{height:190px;display:block;background-size:cover;background-position:center}.jps-event-body{padding:20px}.jps-card-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.jps-eyebrow{font-size:11px;font-weight:900;color:#557083;text-transform:uppercase;letter-spacing:.06em}.jps-event-body h3{font-size:21px;margin:8px 0}.jps-event-body h3 a:hover{color:var(--green2)}.jps-muted{color:var(--muted)}.jps-small{font-size:12px;color:var(--muted)}.jps-chip-row{display:flex;gap:7px;flex-wrap:wrap}.jps-chip{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eef3f7;color:#41546a;font-size:11px;font-weight:800}.jps-chip-green{background:#e8fae9;color:#168239}
.jps-split{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}.jps-split-media{height:560px;position:relative;border-radius:28px;overflow:hidden;background:#071f34}.jps-split-media img{width:100%;height:100%;object-fit:cover;object-position:center top;opacity:.84}.jps-split-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,28,48,.48),transparent 60%)}.jps-stat-card{position:absolute;left:24px;right:24px;bottom:24px;z-index:2;background:#fff;border-radius:18px;padding:18px;display:flex;justify-content:space-between;gap:20px;box-shadow:var(--shadow)}.jps-stat-card span{color:var(--muted);font-size:13px}.jps-split-copy h2{font-size:clamp(36px,4.5vw,58px);line-height:1.06;letter-spacing:-.04em;margin:10px 0 18px}.jps-split-copy>p{color:var(--muted);font-size:17px}.jps-feature-list{display:grid;gap:12px;margin-top:28px}.jps-feature-list>div{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:18px;border:1px solid var(--line);border-radius:16px}.jps-feature-list>div>span{width:42px;height:42px;border-radius:50%;background:#e8faea;display:grid;place-items:center;font-weight:900;color:#15803a}.jps-feature-list h3{margin:0 0 3px}.jps-feature-list p{margin:0;color:var(--muted)}
.jps-coach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.jps-coach-card{background:#fff;color:var(--ink);border-radius:20px;padding:18px;display:grid;grid-template-columns:96px 1fr;gap:16px}.jps-coach-card img{width:96px;height:126px;object-fit:cover;border-radius:16px}.jps-coach-card h3{margin:3px 0}.jps-coach-card p{margin:0 0 8px;color:var(--muted);font-size:14px}.jps-coach-card small{display:block;color:#68798b}.jps-coach-card a{display:inline-block;margin-top:10px;font-weight:900;color:#16703b}.jps-verified{color:#17a744;font-size:12px;font-weight:900}
.jps-community-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.jps-community-grid article{border:1px solid var(--line);border-radius:20px;padding:26px;background:#fff}.jps-community-grid h3{margin:16px 0 6px}.jps-community-grid p{color:var(--muted)}.jps-community-grid article>span:last-child,.jps-community-grid article>strong{display:block;color:#557083;font-size:13px;margin-bottom:16px}.jps-avatar-mark{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,var(--navy),#0c5b78);color:#fff;display:grid;place-items:center;font-weight:900}.jps-community-grid-large{grid-template-columns:repeat(2,1fr)}
.jps-host-cta{padding:64px 0;background:#eaffeb}.jps-host-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.jps-host-cta h2{font-size:42px;margin:8px 0 10px}.jps-host-cta p{max-width:720px;color:#4d6254}.jps-host-actions{display:flex;gap:10px;flex-shrink:0}.jps-host-actions .jps-btn-ghost-light{color:var(--navy);border-color:#9fb4a5}
.jps-page-hero{padding:84px 0 72px;background:linear-gradient(120deg,#03223a,#083e62);color:#fff}.jps-page-hero h1{font-size:clamp(44px,6vw,70px);line-height:1.02;letter-spacing:-.045em;margin:10px 0 16px}.jps-page-lead{font-size:18px;color:#ccdae4;max-width:780px;margin-bottom:28px}.jps-filterbar{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:78px;z-index:20}.jps-filter-form{display:flex;gap:10px;padding:18px 0;align-items:center;overflow:auto}.jps-filter-form input{min-width:320px;padding:12px 15px;border:1px solid var(--line);border-radius:12px}.jps-filter-pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-weight:800;color:#53677b;white-space:nowrap}.jps-filter-pill.active{background:#eaffeb;border-color:#60dc6a;color:#177238}
.jps-booking-panel{padding:72px 0;background:#f3f8f5}.jps-booking-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.jps-booking-grid h2{font-size:42px;line-height:1.08;margin:8px 0 12px}.jps-booking-grid>div>p{color:var(--muted)}.jps-form{background:#fff;padding:26px;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.jps-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.jps-form label{font-size:12px;font-weight:900;color:#465a6e;display:block}.jps-form input,.jps-form select,.jps-form textarea{width:100%;margin-top:6px;border:1px solid #dbe5ec;border-radius:11px;padding:12px 13px;font:inherit}.jps-form textarea{min-height:110px;resize:vertical}.jps-form .jps-field-full{grid-column:1/-1}.jps-form-note{font-size:12px;color:var(--muted)}
.jps-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:34px}.jps-steps div{border:1px solid var(--line);border-radius:14px;padding:15px;text-align:center;color:#6c7d8f}.jps-steps b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;margin:0 auto 7px;background:#eef3f6}.jps-steps .active{border-color:#64df6e;color:#167337}.jps-steps .active b{background:var(--green);color:#062a1e}.jps-venue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.jps-venue-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}.jps-venue-card img{height:190px;width:100%;object-fit:cover}.jps-venue-card>div{padding:20px}.jps-venue-card h3{font-size:22px;margin:10px 0 2px}.jps-venue-card p{color:var(--muted)}.jps-venue-card ul{padding-left:20px;color:#53677b}.jps-venue-card .jps-btn{width:100%}
.jps-coach-directory{display:grid;gap:18px}.jps-coach-profile{display:grid;grid-template-columns:170px 1fr 190px;gap:24px;border:1px solid var(--line);border-radius:22px;padding:18px;background:#fff;align-items:center}.jps-coach-profile>img{width:170px;height:170px;object-fit:cover;border-radius:18px}.jps-coach-profile h2{font-size:28px;margin:3px 0}.jps-lead-small{font-weight:800;color:#4b6075}.jps-coach-profile-main>p:last-child{color:var(--muted)}.jps-coach-price{display:grid;gap:10px;text-align:right}.jps-coach-price strong{font-size:19px}.jps-coach-price span{color:#ef9c12;font-weight:900}
.jps-prose{max-width:820px}.jps-prose-wide{max-width:none}.jps-prose h2{font-size:40px;line-height:1.1}.jps-prose p{font-size:17px;color:var(--muted)}.jps-values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}.jps-values article{padding:24px;border:1px solid var(--line);border-radius:18px}.jps-values b{color:var(--green2)}.jps-values p{font-size:14px}.jps-contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px}.jps-contact-grid h2{font-size:42px;margin-top:0}.jps-contact-grid>div>p{color:var(--muted)}.jps-contact-card{padding:16px 18px;border:1px solid var(--line);border-radius:14px;margin:10px 0}.jps-contact-card strong{display:block}.jps-contact-card span{font-size:13px;color:var(--muted)}
.jps-dashboard-demo{display:grid;grid-template-columns:210px 1fr;min-height:580px;border:1px solid #dbe5ec;border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}.jps-dashboard-demo aside{background:#052d4b;padding:24px 15px;color:#fff;display:flex;flex-direction:column;gap:4px}.jps-dashboard-demo aside img{height:38px;width:auto;object-fit:contain;object-position:left;margin-bottom:24px}.jps-dashboard-demo aside a{padding:10px 12px;border-radius:8px;color:#d5e2ea;font-size:13px}.jps-dashboard-demo aside a.active{background:#114c66;color:#93f49b}.jps-dashboard-main{padding:28px;background:#f7f9fb}.jps-dashboard-head{display:flex;justify-content:space-between;align-items:center}.jps-dashboard-head h2{margin:3px 0 18px}.jps-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.jps-kpi-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.jps-kpi-grid span{display:block;color:var(--muted);font-size:12px}.jps-kpi-grid strong{font-size:26px}.jps-dashboard-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:18px}.jps-dashboard-columns>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.jps-mini-row{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid #edf1f4}.jps-mini-row img{width:58px;height:48px;object-fit:cover;border-radius:8px}.jps-mini-row b,.jps-mini-row small{display:block}.jps-mini-row small{color:var(--muted)}.jps-operation-list{list-style:none;padding:0;margin:0}.jps-operation-list li{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eef2f5}.jps-operation-list span{color:var(--muted)}
.jps-detail-hero{padding:54px 0;background:#f4f8fb}.jps-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:stretch}.jps-detail-image{min-height:460px;background-size:cover;background-position:center;border-radius:24px}.jps-detail-copy{background:#fff;border:1px solid var(--line);border-radius:24px;padding:34px}.jps-detail-copy h1{font-size:48px;line-height:1.03;margin:8px 0}.jps-detail-venue{color:var(--muted);font-weight:800}.jps-detail-meta{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.jps-detail-meta span{background:#f0f4f7;border-radius:10px;padding:9px 12px;font-size:13px;font-weight:800}.jps-detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.jps-detail-stats div{padding:14px;background:#f6f9fb;border-radius:12px}.jps-detail-stats small,.jps-detail-stats strong{display:block}.jps-detail-stats small{color:var(--muted)}.jps-detail-content{display:grid;grid-template-columns:1fr 320px;gap:50px}.jps-detail-content article p,.jps-detail-content article li{color:#53677b}.jps-detail-content aside{border:1px solid var(--line);border-radius:18px;padding:22px;height:max-content}.jps-detail-content dl{margin:0}.jps-detail-content dt{font-size:11px;text-transform:uppercase;color:var(--muted);font-weight:900;margin-top:12px}.jps-detail-content dd{margin:2px 0 0;font-weight:800}
.jps-footer{background:#041e33;color:#d7e2ea;padding:64px 0 22px}.jps-footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:50px}.jps-footer-logo{height:52px;width:auto;filter:brightness(0) invert(1);opacity:.94}.jps-footer h4{color:#fff;margin:0 0 12px}.jps-footer a{display:block;color:#b9cbd6;padding:5px 0;font-size:14px}.jps-footer a:hover{color:#fff}.jps-muted-light{color:#8fa9ba}.jps-footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding-top:18px;margin-top:42px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#91a9b8}
@media(max-width:980px){.jps-primary-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:20px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.jps-primary-nav.is-open{display:block}.jps-nav-list{display:grid;gap:4px}.jps-nav-list a{display:block;padding:10px}.jps-nav-actions{margin-top:12px}.jps-menu-toggle{display:block}.jps-hero-grid,.jps-split,.jps-booking-grid,.jps-contact-grid,.jps-detail-grid,.jps-detail-content{grid-template-columns:1fr}.jps-hero-grid{padding:0 0 50px}.jps-hero-visual{height:420px}.jps-service-grid,.jps-event-grid,.jps-coach-grid,.jps-venue-grid{grid-template-columns:1fr 1fr}.jps-host-cta-inner{display:block}.jps-host-actions{margin-top:20px}.jps-dashboard-demo{grid-template-columns:160px 1fr}.jps-kpi-grid{grid-template-columns:1fr 1fr}.jps-coach-profile{grid-template-columns:140px 1fr}.jps-coach-profile>img{width:140px;height:150px}.jps-coach-price{grid-column:2;text-align:left;grid-template-columns:1fr 1fr auto;align-items:center}.jps-footer-grid{grid-template-columns:1.3fr 1fr 1fr}.jps-footer-grid>div:last-child{grid-column:2}}
@media(max-width:680px){.jps-container{width:min(100% - 28px,var(--container))}.jps-header-inner{height:68px}.jps-brand img{height:42px}.jps-primary-nav{top:68px}.jps-hero-copy{padding:52px 0 20px}.jps-hero h1{font-size:48px}.jps-hero-copy>p{font-size:16px}.jps-hero-visual{height:350px}.jps-floating-card{width:auto;right:16px;left:16px;bottom:16px}.jps-service-strip{margin-top:20px}.jps-service-grid,.jps-event-grid,.jps-coach-grid,.jps-community-grid,.jps-community-grid-large,.jps-venue-grid,.jps-values{grid-template-columns:1fr}.jps-section{padding:64px 0}.jps-section-heading{display:block}.jps-section-heading .jps-link{display:inline-block;margin-top:16px}.jps-split-media{height:420px}.jps-stat-card{display:block}.jps-stat-card span{display:block;margin-top:4px}.jps-coach-card{grid-template-columns:84px 1fr}.jps-coach-card img{width:84px;height:112px}.jps-host-cta h2,.jps-booking-grid h2,.jps-prose h2,.jps-contact-grid h2{font-size:34px}.jps-steps{grid-template-columns:repeat(5,90px);overflow:auto}.jps-coach-profile{grid-template-columns:92px 1fr}.jps-coach-profile>img{width:92px;height:108px}.jps-coach-profile h2{font-size:22px}.jps-coach-price{grid-column:1/-1;grid-template-columns:1fr;text-align:left}.jps-form-grid{grid-template-columns:1fr}.jps-form .jps-field-full{grid-column:auto}.jps-dashboard-demo{display:block}.jps-dashboard-demo aside{display:none}.jps-dashboard-main{padding:16px}.jps-kpi-grid{grid-template-columns:1fr 1fr}.jps-dashboard-columns{grid-template-columns:1fr}.jps-detail-image{min-height:300px}.jps-detail-copy{padding:22px}.jps-detail-copy h1{font-size:38px}.jps-detail-stats{grid-template-columns:1fr}.jps-footer-grid{grid-template-columns:1fr 1fr}.jps-footer-grid>div:first-child{grid-column:1/-1}.jps-footer-grid>div:last-child{grid-column:auto}.jps-footer-bottom{display:block}.jps-footer-bottom span{display:block;margin-top:5px}}
.jps-flash{position:fixed;top:92px;right:20px;z-index:1200;background:#e7fbe9;color:#126f32;border:1px solid #8ae492;padding:14px 18px;border-radius:12px;box-shadow:var(--shadow);font-weight:800}


/* JPS consolidated visual/content refinement v1.0.2 */
.jps-svg-icon{display:inline-grid;place-items:center;width:1.15em;height:1.15em;vertical-align:-.16em;flex:none}.jps-svg-icon svg{width:100%;height:100%;fill:currentColor}.jps-hero-proof span{display:inline-flex;gap:7px;align-items:center}.jps-service-icon .jps-svg-icon{width:27px;height:27px}.jps-service-card{min-height:154px}.jps-service-card h2{font-size:19px}.jps-card-cta{width:100%;margin-top:14px;min-height:42px}.jps-chip-warn{background:#fff1f0;color:#b42318}.jps-event-image{position:relative;background:linear-gradient(145deg,#073b5b,#0b6a69);overflow:hidden}.jps-event-visual-2{background:linear-gradient(145deg,#082b4b,#215f91)}.jps-event-visual-3{background:linear-gradient(145deg,#173b32,#238b57)}.jps-event-image:before{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(255,255,255,.2);border-radius:50%;right:-60px;top:-90px}.jps-event-image:after{content:"";position:absolute;inset:auto -20px -70px auto;width:260px;height:160px;border:3px solid rgba(94,226,95,.3);border-radius:50%}.jps-event-image-mark{position:absolute;left:20px;bottom:18px;color:#fff;z-index:2;display:flex;align-items:center;gap:9px}.jps-event-image-mark .jps-svg-icon{width:29px;height:29px;color:#68e36b}.jps-event-image-mark b{font-size:14px;max-width:220px}.jps-coach-avatar{width:96px;height:126px;border-radius:16px;background:linear-gradient(145deg,#0a3a5b,#15915c);display:grid;place-items:center;color:#fff;font-size:28px;font-weight:900;letter-spacing:.04em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}.jps-coach-avatar-large{width:170px;height:170px;font-size:42px;border-radius:18px}.jps-coach-detail-avatar{min-height:460px;border-radius:24px;background:linear-gradient(145deg,#062844,#0b6a69);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;gap:14px}.jps-coach-detail-avatar>span{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);font-size:48px;font-weight:900}.jps-coach-detail-avatar small{font-weight:800;color:#cfe4e4}.jps-filter-form{overflow:visible;flex-wrap:wrap}.jps-filter-form select{height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 38px 0 13px;color:#40546a;font-weight:800}.jps-search-field{position:relative;min-width:300px;flex:1}.jps-search-field .jps-svg-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#66798e;z-index:2}.jps-search-field input{width:100%;min-width:0;padding-left:40px}.jps-filter-submit{min-height:44px}.jps-filter-reset{font-size:13px;font-weight:800;color:#5b6e82;padding:10px}.jps-empty-state{text-align:center;padding:64px 22px;border:1px dashed #cfd9e2;border-radius:20px;background:#f9fbfc}.jps-empty-state h2{margin-top:0}.jps-compact-heading{margin-bottom:24px}.jps-venue-visual{height:160px;background:linear-gradient(145deg,#073b5b,#0b6a69);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:20px;color:#fff;position:relative;overflow:hidden}.jps-venue-visual:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.17);border-radius:14px}.jps-venue-visual>span,.jps-venue-visual>small{position:relative;z-index:2}.jps-venue-visual .jps-svg-icon{width:34px;height:34px;color:#66e56b;margin-bottom:6px}.jps-venue-visual small{font-weight:800}.jps-venue-facts{display:grid;gap:9px;margin:16px 0;color:#53677b;font-size:13px}.jps-venue-facts span{display:flex;gap:8px;align-items:flex-start}.jps-venue-facts .jps-svg-icon{color:#15803a;margin-top:2px}.jps-venue-price{font-weight:900;color:#0b3659!important}.jps-assurance-list{display:grid;gap:10px;margin-top:24px}.jps-assurance-list span{display:flex;gap:9px;align-items:center;color:#3e5a4a;font-weight:700}.jps-assurance-list .jps-svg-icon{color:#1aae45}.jps-form-note{background:#f5f8fb;border-radius:9px;padding:10px 12px}.jps-branded-detail-visual{background:linear-gradient(145deg,#062844,#0b6a69);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;gap:16px}.jps-branded-detail-visual .jps-svg-icon{width:90px;height:90px;color:#68e36b}.jps-branded-detail-visual strong{font-size:22px}.jps-mini-visual{width:58px;height:48px;border-radius:8px;background:linear-gradient(145deg,#0a3b5b,#15915c);color:#fff;display:grid;place-items:center;font-weight:900}.jps-page-hero{padding:68px 0 60px}.jps-page-hero h1{font-size:clamp(42px,5vw,62px)}.jps-page-lead{margin-bottom:22px}.jps-coach-profile{box-shadow:0 8px 28px rgba(6,40,68,.055)}.jps-coach-price .jps-btn{min-width:160px}
@media(max-width:680px){.jps-hero-grid{display:flex;flex-direction:column;gap:10px;padding-bottom:28px}.jps-hero-copy{padding:42px 0 10px;width:100%}.jps-hero h1{font-size:44px;margin:14px 0 16px}.jps-hero-actions{display:grid;grid-template-columns:1fr;gap:9px}.jps-hero-actions .jps-btn{width:100%}.jps-hero-proof{margin-top:20px;gap:10px 16px}.jps-hero-visual{width:100%;height:280px;border-radius:22px}.jps-floating-card{display:none}.jps-service-strip{margin-top:18px}.jps-service-card{grid-template-columns:auto 1fr;min-height:0;padding:19px}.jps-service-arrow{display:none}.jps-service-icon{width:48px;height:48px}.jps-page-hero{padding:54px 0 46px}.jps-page-hero h1{font-size:40px}.jps-filterbar{top:68px}.jps-filter-form{display:grid;grid-template-columns:1fr 1fr;gap:9px}.jps-search-field{min-width:0;grid-column:1/-1}.jps-filter-form select{width:100%;min-width:0}.jps-filter-submit{grid-column:1/-1}.jps-filter-reset{text-align:center;grid-column:1/-1}.jps-coach-profile{grid-template-columns:76px 1fr;gap:14px;padding:14px}.jps-coach-avatar-large{width:76px;height:92px;font-size:24px}.jps-coach-price{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px}.jps-coach-price .jps-btn{grid-column:1/-1;width:100%}.jps-steps{grid-template-columns:repeat(5,82px)}.jps-venue-visual{height:130px}.jps-coach-detail-avatar{min-height:260px}.jps-coach-detail-avatar>span{width:110px;height:110px;font-size:36px}}

/* JPS high-quality visual implementation v1.0.4 */
.jps-header{background:#fff}.jps-header-inner{height:74px}.jps-brand img,.jps-brand .custom-logo{height:46px}.jps-nav-list{gap:22px}.jps-nav-list a{font-size:13px}.jps-nav-actions{gap:10px}.jps-nav-actions .jps-btn{min-width:84px}
.jps-hero-v104{position:relative;background:linear-gradient(110deg,#021c30 0%,#052f4f 63%,#06395c 100%)}.jps-hero-v104:after{content:"";position:absolute;left:-2%;right:-2%;bottom:-34px;height:86px;background:linear-gradient(100deg,#0ba13f,#67e74c);border-radius:50% 50% 0 0/48% 48% 0 0;transform:skewY(-1.4deg);z-index:1}.jps-hero-v104 .jps-container{position:relative;z-index:2}.jps-hero-v104 .jps-hero-grid{min-height:520px;grid-template-columns:.86fr 1.14fr;gap:36px}.jps-hero-v104 .jps-hero-copy{padding:58px 0 78px}.jps-hero-v104 .jps-badge{letter-spacing:.26em;color:#4bea63}.jps-hero-v104 .jps-hero h1{}.jps-hero-v104 h1{font-size:clamp(50px,5.2vw,72px);margin:14px 0 16px}.jps-hero-v104 .jps-hero-copy>p{font-size:19px;max-width:520px}.jps-hero-v104 .jps-hero-visual{height:430px;border-radius:0;box-shadow:none;border:0;overflow:visible}.jps-hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center;border-radius:28px;box-shadow:0 30px 70px rgba(0,0,0,.24)}.jps-hero-photo:after{content:"";position:absolute;inset:0;border-radius:28px;background:linear-gradient(90deg,rgba(2,28,48,.32),transparent 34%);pointer-events:none}.jps-hero-v104 .jps-hero-proof{margin-top:24px}.jps-hero-v104 .jps-hero-proof .jps-svg-icon{color:#70e679}
.jps-service-strip{margin-top:-4px;padding-top:58px;background:#fff}.jps-service-grid{gap:14px}.jps-service-card{padding:18px 20px;min-height:146px;grid-template-columns:64px 1fr;border-radius:12px;box-shadow:0 7px 22px rgba(6,40,68,.05)}.jps-service-icon{width:56px;height:56px}.jps-service-card h2{font-size:22px;margin:2px 0}.jps-service-card p{font-size:14px}.jps-service-cta{display:flex;margin-top:11px;min-height:40px;border-radius:9px;align-items:center;justify-content:center;gap:18px;background:linear-gradient(90deg,#eaf9ec,#dff9e5);font-size:13px;font-weight:900;color:#0f6f31}.jps-service-regular .jps-service-cta{background:#eaf3fd;color:#165aa2}.jps-service-coach .jps-service-cta{background:#f1ebff;color:#6642bf}
.jps-featured-socials{padding-top:42px}.jps-featured-socials .jps-section-heading{margin-bottom:18px}.jps-featured-socials .jps-section-heading h2{font-size:36px;margin:0}.jps-event-card-photo{border-radius:14px}.jps-event-card-photo .jps-event-image{height:190px;background-size:cover;background-position:center;position:relative}.jps-event-card-photo .jps-event-image:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,27,47,.32),transparent 56%)}.jps-event-card-photo .jps-event-image:after{display:none}.jps-event-date-badge{position:absolute;left:14px;top:14px;z-index:3;background:#16b23e;color:#fff;border-radius:9px;padding:8px 11px;text-align:center;box-shadow:0 6px 20px rgba(0,0,0,.2);line-height:1}.jps-event-date-badge b,.jps-event-date-badge strong{display:block}.jps-event-date-badge b{font-size:12px;margin-bottom:4px}.jps-event-date-badge strong{font-size:13px}.jps-event-overlay-chips{position:absolute;left:12px;right:12px;bottom:10px;z-index:3;display:flex;gap:6px;flex-wrap:wrap}.jps-event-overlay-chips em{font-style:normal;background:rgba(255,255,255,.94);color:#17324c;padding:6px 10px;border-radius:999px;font-size:10px;font-weight:900}.jps-event-body{padding:15px}.jps-event-body h3{font-size:18px;margin:0 0 8px}.jps-event-meta{display:flex;gap:13px;flex-wrap:wrap;color:#4c647a;font-size:12px}.jps-event-meta span{display:flex;gap:5px;align-items:center}.jps-event-meta .jps-svg-icon{color:#0a5ca3}.jps-card-row-bottom{margin-top:12px}.jps-event-status{font-size:11px;font-weight:900;color:#16813a}.jps-event-status.is-full{color:#b42318}.jps-card-cta{min-height:40px;border-radius:8px;margin-top:12px}
.jps-venue-photo{background-size:cover;background-position:center;justify-content:flex-end}.jps-venue-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,31,52,.78),rgba(4,31,52,.08) 65%)}.jps-venue-photo small{position:relative;z-index:2;color:#fff;font-size:13px}.jps-venue-photo:before{display:none}
.jps-page-hero{position:relative;overflow:hidden}.jps-page-hero:after{content:"";position:absolute;inset:0 0 0 58%;background:linear-gradient(90deg,rgba(3,34,58,.88),rgba(3,34,58,.28)),url('../images/hero-badminton-hq.jpg') center/cover no-repeat;opacity:.38;pointer-events:none}.jps-page-hero>.jps-container{position:relative;z-index:2}
@media(max-width:980px){.jps-hero-v104 .jps-hero-grid{grid-template-columns:1fr;min-height:0}.jps-hero-v104 .jps-hero-copy{padding-bottom:18px}.jps-hero-v104 .jps-hero-visual{height:390px}.jps-service-strip{padding-top:54px}}
@media(max-width:680px){.jps-header-inner{height:68px}.jps-hero-v104:after{bottom:-22px;height:60px}.jps-hero-v104 .jps-hero-copy{padding:38px 0 8px}.jps-hero-v104 h1{font-size:43px;line-height:1.02}.jps-hero-v104 .jps-hero-copy>p{font-size:16px}.jps-hero-v104 .jps-hero-visual{height:265px;margin-bottom:32px}.jps-hero-photo img{border-radius:18px}.jps-service-strip{padding-top:34px;margin-top:0}.jps-service-card{grid-template-columns:52px 1fr;padding:17px}.jps-service-cta{grid-column:2}.jps-featured-socials{padding-top:34px}.jps-featured-socials .jps-section-heading h2{font-size:30px}.jps-event-card-photo .jps-event-image{height:190px}.jps-page-hero:after{inset:0 0 0 35%;opacity:.23}}

/* JPS visual acceptance remediation v1.0.5 */
.jps-hero-v105{position:relative;isolation:isolate;min-height:510px;background:#03233a;color:#fff;overflow:hidden}
.jps-hero-v105:before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,rgba(2,28,48,.98) 0%,rgba(2,28,48,.94) 31%,rgba(2,28,48,.67) 49%,rgba(2,28,48,.12) 74%,rgba(2,28,48,.03) 100%),var(--jps-hero-bg);background-size:cover;background-position:center center;background-repeat:no-repeat}
.jps-hero-v105:after{content:"";position:absolute;left:-4%;right:-4%;bottom:-48px;height:106px;z-index:-1;background:linear-gradient(100deg,#08a03c 0%,#64e84d 62%,#16b84a 100%);border-radius:50% 50% 0 0/58% 58% 0 0;transform:skewY(-1.2deg)}
.jps-hero-v105 .jps-hero-grid{min-height:510px;display:flex;align-items:center;justify-content:flex-start}
.jps-hero-v105 .jps-hero-copy{width:min(610px,56%);padding:62px 0 82px}
.jps-hero-v105 .jps-badge{letter-spacing:.25em;color:#50eb65}
.jps-hero-v105 h1{font-size:clamp(54px,5vw,72px);line-height:1.01;letter-spacing:-.05em;margin:14px 0 16px;max-width:610px}
.jps-hero-v105 h1 span{color:#dfffe3}
.jps-hero-v105 .jps-hero-copy>p{font-size:19px;line-height:1.48;max-width:520px;margin-bottom:26px}
.jps-hero-v105 .jps-hero-actions{gap:10px}
.jps-hero-v105 .jps-hero-actions .jps-btn{min-width:140px}
.jps-hero-v105 .jps-hero-proof{margin-top:25px;color:#d6e6ef}
.jps-hero-v105 .jps-hero-proof .jps-svg-icon{color:#63e66c}
.jps-service-strip{padding-top:52px}
.jps-featured-socials{padding-top:36px}
.jps-featured-socials .jps-section-heading p{margin-top:6px;max-width:580px}
.jps-event-card-photo .jps-event-image{background-position:center center}
.jps-event-card-photo .jps-event-image:before{background:linear-gradient(0deg,rgba(3,27,47,.27),transparent 50%)}
.jps-page-hero{padding:62px 0 54px}
.jps-booking-panel{padding:64px 0}
.jps-coach-avatar{background:linear-gradient(145deg,#0b4b62,#14945c);color:#fff;border:1px solid rgba(255,255,255,.08)}
.jps-coach-avatar-large{box-shadow:inset 0 0 0 1px rgba(255,255,255,.13)}
@media(max-width:980px){
  .jps-hero-v105{min-height:500px}
  .jps-hero-v105:before{background-image:linear-gradient(90deg,rgba(2,28,48,.97) 0%,rgba(2,28,48,.88) 44%,rgba(2,28,48,.30) 72%,rgba(2,28,48,.08) 100%),var(--jps-hero-bg);background-position:60% center}
  .jps-hero-v105 .jps-hero-grid{min-height:500px}
  .jps-hero-v105 .jps-hero-copy{width:62%}
}
@media(max-width:680px){
  .jps-hero-v105{min-height:610px}
  .jps-hero-v105:before{background-image:linear-gradient(180deg,rgba(2,28,48,.98) 0%,rgba(2,28,48,.95) 42%,rgba(2,28,48,.58) 68%,rgba(2,28,48,.20) 100%),var(--jps-hero-bg);background-position:67% center}
  .jps-hero-v105:after{bottom:-31px;height:72px}
  .jps-hero-v105 .jps-hero-grid{min-height:610px;align-items:flex-start}
  .jps-hero-v105 .jps-hero-copy{width:100%;padding:38px 0 170px}
  .jps-hero-v105 h1{font-size:43px;line-height:1.03;max-width:360px}
  .jps-hero-v105 .jps-hero-copy>p{font-size:16px;max-width:350px}
  .jps-hero-v105 .jps-hero-actions{display:grid;grid-template-columns:1fr;gap:9px;max-width:360px}
  .jps-hero-v105 .jps-hero-actions .jps-btn{width:100%}
  .jps-hero-v105 .jps-hero-proof{gap:8px 14px;max-width:350px}
  .jps-service-strip{padding-top:34px}
  .jps-featured-socials .jps-section-heading p{display:none}
  .jps-page-hero{padding:48px 0 42px}
  .jps-page-hero h1{font-size:38px;line-height:1.08}
  .jps-booking-panel{padding:54px 0}
}

/* JPS final homepage polish + favicon implementation v1.0.6 */
.jps-hero-v105{min-height:500px}
.jps-hero-v105:before{background-color:#03233a;background-image:linear-gradient(90deg,rgba(2,28,48,.99) 0%,rgba(2,28,48,.96) 34%,rgba(2,28,48,.70) 52%,rgba(2,28,48,.18) 73%,rgba(2,28,48,.04) 100%),var(--jps-hero-bg);background-size:100% 100%,auto 100%;background-position:center,right center;background-repeat:no-repeat,no-repeat}
.jps-hero-v105:after{bottom:-34px;height:78px;border-radius:50% 50% 0 0/46% 46% 0 0;transform:skewY(-.8deg)}
.jps-hero-v105 .jps-hero-grid{min-height:500px}
.jps-hero-v105 .jps-hero-copy{padding:56px 0 72px;width:min(620px,54%)}
.jps-hero-v105 h1{font-size:clamp(52px,4.8vw,69px);max-width:600px}
.jps-hero-v105 .jps-hero-actions .jps-btn{gap:9px}
.jps-service-strip{padding-top:42px}
.jps-service-card{min-height:138px;padding:17px 19px}
.jps-service-social .jps-service-icon,.jps-service-regular .jps-service-icon,.jps-service-coach .jps-service-icon{background:#e9fbea;color:#159740}
.jps-service-regular .jps-service-cta,.jps-service-coach .jps-service-cta,.jps-service-social .jps-service-cta{background:linear-gradient(90deg,#ebfaed,#def7e5);color:#0f6f31}
.jps-section{padding:74px 0}
.jps-featured-socials{padding-top:34px;padding-bottom:72px}

.jps-how-section{background:linear-gradient(180deg,#fff 0%,#f7fbf8 100%)}
.jps-how-heading{max-width:760px;margin-bottom:28px}
.jps-how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative}
.jps-how-grid article{position:relative;border:1px solid #dfe9e3;background:#fff;border-radius:18px;padding:24px 22px;min-height:220px;box-shadow:0 12px 30px rgba(6,40,68,.05)}
.jps-how-number{position:absolute;right:18px;top:16px;font-size:12px;font-weight:900;color:#8aa397;letter-spacing:.12em}
.jps-how-icon{width:52px;height:52px;border-radius:16px;background:#e9fbea;color:#179744;display:grid;place-items:center;margin-bottom:18px}
.jps-how-icon .jps-svg-icon{width:25px;height:25px}
.jps-how-grid h3{font-size:21px;margin:0 0 8px}
.jps-how-grid p{margin:0;color:var(--muted);font-size:14px}

.jps-community-home{background:#fff}
.jps-community-home-grid{gap:20px}
.jps-community-card{padding:0!important;overflow:hidden;box-shadow:0 12px 32px rgba(6,40,68,.06)}
.jps-community-banner{min-height:120px;padding:22px;display:flex;align-items:flex-end;justify-content:space-between;color:#fff;background:linear-gradient(135deg,#062844,#0b6a69)}
.jps-community-tone-2 .jps-community-banner{background:linear-gradient(135deg,#0b4566,#14885f)}
.jps-community-tone-3 .jps-community-banner{background:linear-gradient(135deg,#102d55,#1a6f85)}
.jps-community-banner .jps-avatar-mark{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);width:60px;height:60px}
.jps-community-banner>span{font-size:12px;font-weight:800;opacity:.92}
.jps-community-body{padding:22px}
.jps-community-body h3{margin:0 0 8px}
.jps-community-body p{margin:0 0 18px}
.jps-community-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:15px;border-top:1px solid #e8eef1}
.jps-community-meta strong{font-size:13px;color:#52697a}
.jps-community-meta a{font-size:13px;font-weight:900;color:#17713a}

.jps-host-cta-v106{padding:72px 0;background:linear-gradient(115deg,#eaffeb 0%,#f4fff4 46%,#e7f8ff 100%)}
.jps-host-cta-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:60px;align-items:center}
.jps-host-copy h2{font-size:clamp(38px,4vw,52px);line-height:1.06;margin:10px 0 14px;letter-spacing:-.035em}
.jps-host-copy p{color:#47645a;max-width:610px;font-size:16px}
.jps-host-preview{background:#062844;color:#fff;border-radius:22px;padding:22px;box-shadow:0 28px 70px rgba(6,40,68,.18)}
.jps-host-preview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.jps-host-preview-head small{display:block;color:#62e86b;font-weight:900;letter-spacing:.12em;font-size:10px}
.jps-host-preview-head strong{display:block;font-size:20px;margin-top:4px}
.jps-host-preview-head>span{font-size:11px;color:#c3d7e3;background:rgba(255,255,255,.08);padding:6px 9px;border-radius:8px}
.jps-host-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:14px}
.jps-host-kpis>div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);padding:13px;border-radius:12px}
.jps-host-kpis b{display:block;font-size:24px;color:#fff}
.jps-host-kpis span{font-size:10px;color:#b9cddd}
.jps-host-list{display:grid;gap:8px}
.jps-host-list>div{display:flex;justify-content:space-between;gap:14px;align-items:center;background:#fff;color:#13293d;padding:11px 12px;border-radius:11px}
.jps-host-list span{display:grid;gap:2px}
.jps-host-list strong{font-size:12px}
.jps-host-list small{font-size:10px;color:#6d7f8f}
.jps-host-list em{font-style:normal;font-size:10px;font-weight:900;color:#16813a;background:#eaf9ec;padding:5px 7px;border-radius:8px;white-space:nowrap}
.jps-host-list em.is-full{color:#a92b20;background:#fff0ef}

.jps-footer-logo-wrap{display:inline-flex;background:#fff;padding:7px 9px;border-radius:10px;margin-bottom:8px}
.jps-footer-logo{height:auto;width:142px;max-width:142px;filter:none;opacity:1}

@media(max-width:980px){
  .jps-hero-v105:before{background-image:linear-gradient(90deg,rgba(2,28,48,.98) 0%,rgba(2,28,48,.92) 44%,rgba(2,28,48,.42) 70%,rgba(2,28,48,.10) 100%),var(--jps-hero-bg);background-size:100% 100%,auto 100%;background-position:center,right center}
  .jps-hero-v105 .jps-hero-copy{width:63%}
  .jps-how-grid{grid-template-columns:1fr 1fr}
  .jps-host-cta-grid{grid-template-columns:1fr;gap:30px}
}
@media(max-width:680px){
  .jps-hero-v105{min-height:590px}
  .jps-hero-v105:before{background-image:linear-gradient(180deg,rgba(2,28,48,.99) 0%,rgba(2,28,48,.96) 40%,rgba(2,28,48,.62) 67%,rgba(2,28,48,.20) 100%),var(--jps-hero-bg);background-size:100% 100%,auto 72%;background-position:center,82% bottom;background-repeat:no-repeat,no-repeat}
  .jps-hero-v105:after{bottom:-22px;height:55px}
  .jps-hero-v105 .jps-hero-grid{min-height:590px}
  .jps-hero-v105 .jps-hero-copy{padding:34px 0 155px;width:100%}
  .jps-hero-v105 h1{font-size:40px;max-width:350px}
  .jps-hero-proof{font-size:11px}
  .jps-service-strip{padding-top:26px}
  .jps-service-card{min-height:0}
  .jps-section{padding:58px 0}
  .jps-how-grid{grid-template-columns:1fr}
  .jps-how-grid article{min-height:0}
  .jps-community-meta{align-items:flex-start;flex-direction:column}
  .jps-host-cta-v106{padding:58px 0}
  .jps-host-kpis{grid-template-columns:1fr 1fr 1fr}
  .jps-host-kpis b{font-size:20px}
  .jps-host-preview{padding:16px}
  .jps-footer-logo{width:128px;max-width:128px}
}

/* v1.0.7 image-completeness remediation */
.jps-coach-photo,.jps-coach-profile-photo{display:block;object-fit:cover;object-position:center top;background:#0c4b61}
.jps-coach-photo{width:96px;height:126px;border-radius:16px}
.jps-coach-profile-photo{width:170px;height:170px;border-radius:18px}
.jps-coach-card{align-items:center}
.jps-coach-detail-photo{min-height:460px;border-radius:24px;background:linear-gradient(145deg,#062844,#0b6a69);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;position:relative}
.jps-coach-detail-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(180deg,transparent,rgba(3,34,58,.88))}
.jps-coach-detail-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center top}
.jps-coach-detail-photo small{position:relative;z-index:2;color:#fff;padding:22px 24px;font-weight:900;letter-spacing:.04em}

.jps-community-photo,.jps-community-directory-photo{position:relative;background-position:center;background-size:cover;background-repeat:no-repeat;overflow:hidden}
.jps-community-photo{height:170px}
.jps-community-photo:after,.jps-community-directory-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,34,58,.04),rgba(3,34,58,.42))}
.jps-community-count,.jps-community-directory-photo>span{position:absolute;left:16px;top:16px;z-index:2;background:rgba(255,255,255,.94);color:#0b3659;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;box-shadow:0 6px 16px rgba(6,40,68,.12)}
.jps-community-submeta{display:flex;flex-wrap:wrap;gap:10px;color:#5d7082;font-size:12px;margin:0 0 14px}
.jps-community-submeta span{display:inline-flex;gap:5px;align-items:center}
.jps-community-submeta .jps-svg-icon{color:#16813a}
.jps-community-directory-grid{gap:20px}
.jps-community-directory-card{padding:0!important;overflow:hidden;box-shadow:0 12px 32px rgba(6,40,68,.06)}
.jps-community-directory-photo{height:190px}
.jps-community-directory-body{padding:22px}
.jps-community-directory-body h3{margin:14px 0 8px}
.jps-community-directory-body p{min-height:46px;margin-bottom:18px}

@media(max-width:980px){
  .jps-coach-profile-photo{width:140px;height:150px}
}
@media(max-width:680px){
  .jps-coach-photo{width:84px;height:112px}
  .jps-coach-profile-photo{width:76px;height:92px;border-radius:14px}
  .jps-coach-detail-photo{min-height:300px}
  .jps-community-photo{height:150px}
  .jps-community-directory-photo{height:170px}
}

/* =========================================================
   v1.0.8 — final visual completeness
   Dedicated venue imagery, unique secondary-page heroes,
   and mobile coaching-filter refinement.
   ========================================================= */
.jps-page-hero--about:after{
  background-image:linear-gradient(90deg,rgba(3,34,58,.92),rgba(3,34,58,.24)),url('../images/hero-about.jpg');
  background-position:center 42%;
}
.jps-page-hero--contact:after{
  background-image:linear-gradient(90deg,rgba(3,34,58,.92),rgba(3,34,58,.26)),url('../images/hero-contact.jpg');
  background-position:center 46%;
}
.jps-page-hero--faq:after{
  background-image:linear-gradient(90deg,rgba(3,34,58,.92),rgba(3,34,58,.26)),url('../images/hero-faq.jpg');
  background-position:center 50%;
}
.jps-page-hero--privacy:after{
  background-image:linear-gradient(90deg,rgba(3,34,58,.94),rgba(3,34,58,.30)),url('../images/hero-privacy.jpg');
  background-position:center 50%;
}
.jps-page-hero--terms:after{
  background-image:linear-gradient(90deg,rgba(3,34,58,.94),rgba(3,34,58,.30)),url('../images/hero-terms.jpg');
  background-position:center 48%;
}

.jps-venue-photo{
  background-size:cover;
  background-position:center;
}
.jps-venue-photo:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(3,34,58,.02) 28%,rgba(3,34,58,.62) 100%);
  pointer-events:none;
}
.jps-venue-photo>small{position:relative;z-index:3}

@media(max-width:680px){
  .jps-filter-form-coach{grid-template-columns:1fr}
  .jps-filter-form-coach select,
  .jps-filter-form-coach .jps-filter-submit,
  .jps-filter-form-coach .jps-filter-reset{grid-column:1/-1;width:100%}
  .jps-filter-form-coach select{font-size:13px;padding-right:34px}
  .jps-page-hero--about:after,
  .jps-page-hero--contact:after,
  .jps-page-hero--faq:after,
  .jps-page-hero--privacy:after,
  .jps-page-hero--terms:after{inset:0 0 0 28%;opacity:.24}
}
