html{background:#000}.jpx-standalone{margin:0!important;background:#000!important;color:#f3f3f3!important;min-height:100%;font-family:inherit}.jpx-standalone .jpx-tax-page{background:#000;color:#f3f3f3}.jpx-standalone #wpadminbar{z-index:99999}

:root{--jpx-orange:#f28c18;--jpx-orange-soft:rgba(242,140,24,.12);--jpx-ink:#f5f5f5}
.jpx-wrap{max-width:1240px;margin:0 auto;padding:38px 24px 64px}
.jpx-brandbar{display:flex;align-items:center;gap:22px;margin:0 0 36px}
.jpx-brandmark{display:flex;flex-direction:column;align-items:center;gap:8px;width:150px;flex:0 0 auto;text-decoration:none;color:inherit}
.jpx-brandmark img{display:block;width:82px;height:auto;object-fit:contain}
.jpx-brandtag{display:block;text-align:center;font-size:.78rem;line-height:1.25;letter-spacing:.035em;color:rgba(255,255,255,.72);white-space:nowrap}.jpx-brandline{height:1px;background:linear-gradient(90deg,rgba(242,140,24,.72),rgba(242,140,24,.14));flex:1}
.jpx-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}
.jpx-section-head h2,.jpx-club-header h1{margin:.12em 0 0;font-size:clamp(2.15rem,5vw,4rem);line-height:.96;letter-spacing:-.04em;color:inherit}
.jpx-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:800;color:var(--jpx-orange);opacity:1}
.jpx-club-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.jpx-club-card{position:relative;display:block;min-height:330px;border-radius:22px;overflow:hidden;text-decoration:none;color:#fff;background:#171717 var(--jpx-bg) center/cover no-repeat;border:1px solid rgba(242,140,24,.14)}
.jpx-club-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.86))}
.jpx-club-content{position:absolute;inset:auto 22px 22px;display:flex;align-items:end;gap:16px}
.jpx-logo-box{width:82px;height:82px;background:#fff;border-radius:18px;display:grid;place-items:center;padding:10px;flex:0 0 auto}
.jpx-logo-box img{max-width:100%;max-height:100%;object-fit:contain}
.jpx-club-meta{display:flex;flex-direction:column;min-width:0}.jpx-club-meta strong{font-size:1.6rem;line-height:1.05}.jpx-club-meta small{opacity:.78;margin-top:4px}.jpx-club-meta em{font-size:.8rem;font-style:normal;margin-top:10px;color:#ffc071}
.jpx-club-header{display:flex;align-items:center;gap:26px;margin-bottom:18px;padding:4px 0 10px}
.jpx-club-logo-large{width:120px;height:120px;border-radius:24px;background:#fff;border:1px solid rgba(242,140,24,.3);padding:14px;display:grid;place-items:center;box-shadow:0 10px 34px rgba(0,0,0,.22)}
.jpx-club-logo-large img{width:100%;height:100%;object-fit:contain}
.jpx-club-header p{margin:.5rem 0 0;opacity:.68;font-size:1rem}
.jpx-filter-row{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 30px}
.jpx-filter{border:1px solid rgba(242,140,24,.42);background:transparent;color:inherit;border-radius:999px;padding:9px 16px;cursor:pointer;transition:.2s ease}
.jpx-filter:hover{border-color:var(--jpx-orange);background:var(--jpx-orange-soft)}
.jpx-filter.is-active{background:var(--jpx-orange);border-color:var(--jpx-orange);color:#111}
.jpx-game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.jpx-game-card{border-radius:18px;overflow:hidden;border:1px solid rgba(242,140,24,.18);background:rgba(127,127,127,.055);transition:transform .2s ease,border-color .2s ease}
.jpx-game-card:hover{transform:translateY(-2px);border-color:rgba(242,140,24,.58)}
.jpx-game-card[hidden]{display:none}.jpx-game-card a{color:inherit;text-decoration:none;display:block}
.jpx-game-image{aspect-ratio:4/3;position:relative;overflow:hidden;background:#1d1d1d}.jpx-game-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.jpx-game-card:hover .jpx-game-image img{transform:scale(1.025)}
.jpx-view-pill{position:absolute;right:12px;bottom:12px;background:var(--jpx-orange);color:#111;padding:8px 12px;border-radius:999px;font-size:.78rem;font-weight:800;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.jpx-game-body{padding:15px 16px 18px}.jpx-game-topline{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;opacity:.6;display:flex;justify-content:space-between;gap:10px}.jpx-game-body h3{margin:7px 0 3px;font-size:1.25rem;color:var(--jpx-orange)}.jpx-game-body p{margin:0;font-size:.9rem;opacity:.68}.jpx-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#fff;letter-spacing:.12em;text-transform:uppercase}.jpx-tax-page{min-height:60vh}
@media(max-width:900px){.jpx-club-grid,.jpx-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.jpx-wrap{padding:24px 14px 44px}.jpx-brandbar{margin-bottom:26px;gap:14px}.jpx-brandmark{width:120px}.jpx-brandmark img{width:68px}.jpx-brandtag{font-size:.68rem;white-space:normal;max-width:120px}.jpx-club-grid,.jpx-game-grid{grid-template-columns:1fr}.jpx-club-card{min-height:280px}.jpx-club-header{align-items:center;gap:16px}.jpx-club-logo-large{width:84px;height:84px;border-radius:18px;padding:10px}.jpx-club-header h1{font-size:clamp(2rem,10vw,3rem)}.jpx-club-meta strong{font-size:1.35rem}}


/* === JatoiPix Lightroom Galleries v1.5.0: club-card layout fixes === */
.jpx-club-card{
    min-height:360px;
}
.jpx-club-content{
    inset:auto 20px 20px;
    align-items:flex-end;
    gap:14px;
}
.jpx-logo-box{
    width:76px;
    height:76px;
    min-width:76px;
    min-height:76px;
    max-width:76px;
    max-height:76px;
    box-sizing:border-box;
    overflow:hidden;
    border-radius:16px;
    padding:9px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}
.jpx-logo-box img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    object-fit:contain !important;
    object-position:center !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
}
.jpx-club-meta{
    flex:1 1 auto;
    min-width:0;
    padding-bottom:1px;
}
.jpx-club-meta strong{
    display:block;
    font-size:clamp(1.25rem,2.1vw,1.7rem);
    line-height:1.02;
    letter-spacing:-.02em;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
}
.jpx-club-meta small{
    display:block;
    margin-top:5px;
    line-height:1.25;
}
.jpx-club-meta em{
    display:block;
    margin-top:8px;
    line-height:1.2;
}
.jpx-club-shade{
    background:linear-gradient(180deg,rgba(0,0,0,.06) 20%,rgba(0,0,0,.28) 55%,rgba(0,0,0,.88) 100%);
}

@media(max-width:900px){
    .jpx-club-card{min-height:330px}
    .jpx-logo-box{
        width:70px;height:70px;min-width:70px;min-height:70px;max-width:70px;max-height:70px;
    }
}
@media(max-width:600px){
    .jpx-club-card{min-height:310px}
    .jpx-club-content{
        inset:auto 16px 16px;
        gap:12px;
    }
    .jpx-logo-box{
        width:64px;height:64px;min-width:64px;min-height:64px;max-width:64px;max-height:64px;
        border-radius:14px;
        padding:8px;
    }
    .jpx-club-meta strong{
        font-size:1.22rem;
        line-height:1.05;
    }
    .jpx-club-meta small{font-size:.82rem}
    .jpx-club-meta em{font-size:.76rem}
}


/* === v1.6.0: group club galleries by Team === */
.jpx-team-sections{display:flex;flex-direction:column;gap:54px;margin-top:8px}
.jpx-team-section{min-width:0}
.jpx-team-section[hidden]{display:none}
.jpx-team-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    padding-bottom:13px;
    margin-bottom:19px;
    border-bottom:1px solid rgba(242,140,24,.34);
}
.jpx-team-kicker{
    display:block;
    margin-bottom:5px;
    color:var(--jpx-orange);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.jpx-team-heading h2{
    margin:0;
    color:inherit;
    font-size:clamp(1.8rem,3.8vw,2.8rem);
    line-height:1;
    letter-spacing:-.035em;
}
.jpx-team-count{
    flex:0 0 auto;
    padding:7px 11px;
    border:1px solid rgba(242,140,24,.32);
    border-radius:999px;
    color:rgba(255,255,255,.72);
    font-size:.74rem;
    white-space:nowrap;
}
.jpx-brandmark{
    text-decoration:none;
}
.jpx-brandtag{
    display:block;
    margin-top:7px;
    color:rgba(255,255,255,.7);
    font-size:.76rem;
    line-height:1.25;
    letter-spacing:.01em;
    white-space:nowrap;
}
@media(max-width:600px){
    .jpx-team-sections{gap:42px}
    .jpx-team-heading{align-items:flex-start;margin-bottom:15px}
    .jpx-team-heading h2{font-size:1.75rem}
    .jpx-team-count{font-size:.7rem;padding:6px 9px}
    .jpx-brandtag{font-size:.69rem;white-space:normal;max-width:150px}
}


/* === v1.7.0: per-team gallery pagination === */
.jpx-team-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:22px}
.jpx-team-pagination[hidden]{display:none}
.jpx-page-btn{appearance:none;border:1px solid rgba(242,140,24,.34);background:transparent;color:inherit;min-width:36px;height:36px;padding:0 11px;border-radius:999px;cursor:pointer;font:inherit;font-size:.78rem;line-height:1;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.jpx-page-btn:hover:not(:disabled){border-color:var(--jpx-orange);background:var(--jpx-orange-soft)}
.jpx-page-btn.is-active{background:var(--jpx-orange);border-color:var(--jpx-orange);color:#111;font-weight:800}
.jpx-page-btn:disabled{cursor:default;opacity:.34}
.jpx-page-btn.jpx-page-arrow{min-width:42px;font-weight:700}
.jpx-page-status{width:100%;text-align:center;margin-top:3px;color:rgba(255,255,255,.52);font-size:.7rem;letter-spacing:.04em}
@media(max-width:600px){.jpx-team-pagination{gap:6px;margin-top:18px}.jpx-page-btn{min-width:34px;height:34px;padding:0 9px}.jpx-page-btn.jpx-page-arrow{min-width:38px}}


/* === v1.8.0: centered club logo + team filter === */
.jpx-club-logo-large{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
}
.jpx-club-logo-large img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    margin:auto !important;
    padding:0 !important;
    transform:none !important;
}
.jpx-filter-block{margin:14px 0 0}
.jpx-filter-label{
    display:block;
    margin:0 0 7px;
    color:var(--jpx-orange);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.17em;
    text-transform:uppercase;
}
.jpx-season-filter-row,.jpx-team-filter-row{margin:0 0 14px}
.jpx-team-filter{
    appearance:none;
    border:1px solid rgba(242,140,24,.42);
    background:transparent;
    color:inherit;
    border-radius:999px;
    padding:9px 16px;
    cursor:pointer;
    transition:.2s ease;
    font:inherit;
    font-size:.82rem;
}
.jpx-team-filter:hover{
    border-color:var(--jpx-orange);
    background:var(--jpx-orange-soft);
}
.jpx-team-filter.is-active{
    background:var(--jpx-orange);
    border-color:var(--jpx-orange);
    color:#111;
    font-weight:800;
}
@media(max-width:600px){
    .jpx-filter-block{margin-top:12px}
    .jpx-team-filter{padding:8px 13px;font-size:.76rem}
}


/* === v1.8.1: larger Jatoi PIX branding === */
.jpx-brandmark{
    width:150px !important;
    flex:0 0 150px !important;
}
.jpx-brandmark img{
    width:100% !important;
    height:auto !important;
}
.jpx-brandtag{
    color:#fff !important;
    opacity:1 !important;
    font-size:.82rem !important;
    font-weight:500;
    margin-top:8px !important;
}
@media(max-width:600px){
    .jpx-brandmark{
        width:120px !important;
        flex-basis:120px !important;
    }
    .jpx-brandtag{
        font-size:.75rem !important;
        max-width:180px !important;
    }
}


/* === v1.9.0: stronger team delineation === */
.jpx-team-sections{
    gap:62px !important;
}
.jpx-team-section{
    position:relative;
    padding:22px 22px 26px;
    border:1px solid rgba(242,140,24,.16);
    border-radius:22px;
    background:rgba(255,255,255,.018);
}
.jpx-team-section:nth-child(even){
    background:rgba(255,255,255,.035);
}
.jpx-team-heading{
    margin:-4px -4px 22px !important;
    padding:0 0 14px !important;
    border-bottom:1px solid rgba(242,140,24,.52) !important;
}
.jpx-team-heading > div{
    min-width:0;
}
.jpx-team-kicker{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    margin:0 0 8px !important;
    padding:5px 9px;
    border-radius:999px;
    background:var(--jpx-orange);
    color:#111 !important;
    font-size:.62rem !important;
    font-weight:900 !important;
    letter-spacing:.14em !important;
    line-height:1;
}
.jpx-team-heading h2{
    font-size:clamp(1.9rem,3.8vw,2.9rem) !important;
    line-height:.98 !important;
}
.jpx-team-count{
    background:rgba(242,140,24,.08);
    border-color:rgba(242,140,24,.5) !important;
    color:#fff !important;
}
.jpx-team-section .jpx-game-grid{
    margin-top:2px;
}
.jpx-team-section + .jpx-team-section{
    margin-top:4px;
}
@media(max-width:600px){
    .jpx-team-sections{
        gap:42px !important;
    }
    .jpx-team-section{
        padding:16px 14px 20px;
        border-radius:18px;
    }
    .jpx-team-heading{
        margin:0 0 16px !important;
        padding-bottom:12px !important;
    }
    .jpx-team-heading h2{
        font-size:1.7rem !important;
    }
}


/* === v1.9.1: white Photo Galleries heading === */
.jpx-section-head h2{
    color:#fff !important;
    opacity:1 !important;
}

/* === v2.0.0: Latest Galleries === */
.jpx-home-galleries{padding-top:46px}
.jpx-latest-section{margin-bottom:62px}
.jpx-latest-head{margin-bottom:22px}
.jpx-latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.jpx-latest-card{overflow:hidden;border:1px solid rgba(242,140,24,.22);border-radius:20px;background:rgba(255,255,255,.035);transition:transform .2s ease,border-color .2s ease}
.jpx-latest-card:hover{transform:translateY(-2px);border-color:rgba(242,140,24,.62)}
.jpx-latest-card a{display:block;color:inherit;text-decoration:none}
.jpx-latest-image{position:relative;aspect-ratio:16/10;overflow:hidden;background:#171717}
.jpx-latest-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.jpx-latest-card:hover .jpx-latest-image img{transform:scale(1.025)}
.jpx-latest-badge{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:999px;background:var(--jpx-orange);color:#111;font-size:.66rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.jpx-latest-body{padding:15px 16px 18px}
.jpx-latest-body h3{margin:7px 0 4px;color:var(--jpx-orange);font-size:1.25rem;line-height:1.12}
.jpx-latest-body p{margin:0;color:rgba(255,255,255,.7);font-size:.86rem;line-height:1.35}
.jpx-club-collection{padding-top:2px}
@media(max-width:900px){.jpx-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jpx-latest-card:first-child{grid-column:span 2}}
@media(max-width:600px){.jpx-home-galleries{padding-top:28px}.jpx-latest-section{margin-bottom:48px}.jpx-latest-grid{grid-template-columns:1fr}.jpx-latest-card:first-child{grid-column:auto}.jpx-latest-image{aspect-ratio:4/3}}


/* === v2.1.0: Family intro === */
.jpx-family-section{
    margin-top:76px;
    padding:44px 0 20px;
    border-top:1px solid rgba(242,140,24,.24);
}
.jpx-family-copy{
    max-width:760px;
    margin:0 auto 30px;
    text-align:center;
}
.jpx-family-copy h2{
    margin:8px 0 14px;
    color:#fff;
    font-size:clamp(2.2rem,5vw,4rem);
    line-height:.98;
    letter-spacing:-.04em;
}
.jpx-family-copy p{
    margin:0 auto;
    max-width:720px;
    color:rgba(255,255,255,.72);
    font-size:1rem;
    line-height:1.7;
}
.jpx-family-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
    max-width:900px;
    margin:0 auto;
}
.jpx-family-card{
    overflow:hidden;
    border:1px solid rgba(242,140,24,.22);
    border-radius:22px;
    background:rgba(255,255,255,.035);
}
.jpx-family-photo{
    aspect-ratio:4/3;
    overflow:hidden;
    background:#151515;
}
.jpx-family-photo img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}
.jpx-family-placeholder{
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:30px;
    text-align:center;
    color:rgba(255,255,255,.55);
    font-size:.88rem;
}
.jpx-family-card-body{
    padding:18px 20px 21px;
}
.jpx-family-year{
    display:inline-block;
    margin-bottom:6px;
    color:var(--jpx-orange);
    font-size:.7rem;
    font-weight:900;
    letter-spacing:.16em;
}
.jpx-family-card-body h3{
    margin:0 0 5px;
    color:#fff;
    font-size:1.55rem;
    line-height:1.05;
}
.jpx-family-card-body p{
    margin:0;
    color:rgba(255,255,255,.67);
    font-size:.92rem;
}
@media(max-width:650px){
    .jpx-family-section{margin-top:54px;padding-top:34px}
    .jpx-family-grid{grid-template-columns:1fr}
    .jpx-family-copy{text-align:left}
    .jpx-family-copy p{font-size:.95rem}
}


/* === v2.1.2: Remove excess top gap when family intro is first === */
.jpx-home-galleries{
    padding-top:0 !important;
}
.jpx-home-galleries > .jpx-family-section:first-child{
    margin-top:0 !important;
    padding-top:18px !important;
}
@media(max-width:600px){
    .jpx-home-galleries{
        padding-top:0 !important;
    }
    .jpx-home-galleries > .jpx-family-section:first-child{
        margin-top:0 !important;
        padding-top:12px !important;
    }
}


/* === v2.1.3: Instagram footer === */
.jpx-instagram-footer{
    margin-top:72px;
    padding:30px 20px 34px;
    border-top:1px solid rgba(242,140,24,.28);
    text-align:center;
}
.jpx-instagram-footer span{
    display:block;
    margin-bottom:7px;
    color:rgba(255,255,255,.62);
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.15em;
    text-transform:uppercase;
}
.jpx-instagram-footer a{
    display:inline-block;
    color:var(--jpx-orange);
    font-size:1.45rem;
    font-weight:800;
    line-height:1.1;
    text-decoration:none;
    transition:opacity .2s ease,transform .2s ease;
}
.jpx-instagram-footer a:hover{
    opacity:.82;
    transform:translateY(-1px);
}
@media(max-width:600px){
    .jpx-instagram-footer{
        margin-top:52px;
        padding:26px 14px 30px;
    }
    .jpx-instagram-footer a{
        font-size:1.3rem;
    }
}


/* === v2.1.4: Instagram icon/link treatment === */
.jpx-instagram-footer .jpx-instagram-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    color:var(--jpx-orange);
    text-decoration:none;
}
.jpx-instagram-footer .jpx-instagram-link:hover{
    opacity:.86;
    transform:translateY(-1px);
}
.jpx-instagram-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    flex:0 0 36px;
    border:1px solid rgba(242,140,24,.58);
    border-radius:11px;
    background:rgba(242,140,24,.08);
}
.jpx-instagram-icon svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
}
.jpx-instagram-icon .jpx-instagram-dot{
    fill:currentColor;
    stroke:none;
}
.jpx-instagram-link strong{
    font-size:1.45rem;
    font-weight:800;
    line-height:1.1;
}
@media(max-width:600px){
    .jpx-instagram-icon{
        width:34px;
        height:34px;
        flex-basis:34px;
    }
    .jpx-instagram-link strong{
        font-size:1.3rem;
    }
}
