/* Hercules 20 demo families. */
.hercules-demo-family{--demo-accent:#ff5a1f;--demo-dark:#0d1115;--demo-light:#f5f7f8;--demo-radius:20px;color:#20262d;background:#fff;overflow:hidden}.hercules-demo-family *{box-sizing:border-box}.hercules-demo-family img{display:block;max-width:100%;height:auto}.hercules-demo-container{width:min(1180px,calc(100% - 40px));margin:0 auto}.hercules-demo-section{padding:96px 0}.hercules-demo-kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--demo-accent);font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.hercules-demo-kicker:before{content:"";width:34px;height:3px;background:currentColor}.hercules-demo-heading{max-width:780px;margin-bottom:48px}.hercules-demo-heading h2,.hercules-demo-copy h2{margin:0 0 18px;color:var(--demo-dark);font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-.045em}.hercules-demo-heading p,.hercules-demo-copy>p{margin:0;color:#68727d;font-size:17px;line-height:1.8}.hercules-demo-button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:14px 24px;border:2px solid var(--demo-accent);border-radius:999px;background:var(--demo-accent);color:#fff!important;font-size:13px;font-weight:900;letter-spacing:.07em;text-decoration:none!important;text-transform:uppercase}.hercules-demo-button.is-outline{background:transparent;border-color:#fff}.hercules-demo-stats{padding:34px 0;background:var(--demo-dark);color:#fff}.hercules-demo-stats .hercules-demo-container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.hercules-demo-stat{padding:18px 22px;border-left:3px solid var(--demo-accent)}.hercules-demo-stat strong{display:block;color:#fff;font-size:30px;line-height:1}.hercules-demo-stat span{display:block;margin-top:7px;color:#aeb7c0;font-size:13px}.hercules-demo-intro{background:#fff}.hercules-demo-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:72px}.hercules-demo-copy ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:28px 0 34px;padding:0;list-style:none}.hercules-demo-copy li{position:relative;padding-left:28px;color:#3a434b;font-weight:700}.hercules-demo-copy li:before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--demo-accent);color:#fff;font-size:11px}.hercules-demo-image{position:relative}.hercules-demo-image img{width:100%;min-height:560px;border-radius:var(--demo-radius);object-fit:cover}.hercules-demo-image:after{content:"";position:absolute;right:-22px;bottom:-22px;width:46%;height:52%;border-radius:18px;background:var(--demo-accent);z-index:-1}.hercules-demo-programs{background:var(--demo-light)}.hercules-demo-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.hercules-demo-card{overflow:hidden;border-radius:var(--demo-radius);background:#fff;box-shadow:0 20px 55px rgba(14,20,26,.09);transition:.25s}.hercules-demo-card:hover{transform:translateY(-8px);box-shadow:0 28px 72px rgba(14,20,26,.15)}.hercules-demo-card img{width:100%;height:280px;object-fit:cover}.hercules-demo-card>div{padding:28px}.hercules-demo-card span{color:var(--demo-accent);font-weight:900}.hercules-demo-card h3{margin:8px 0 12px;color:var(--demo-dark);font-size:26px}.hercules-demo-card p{color:#68727d;line-height:1.7}.hercules-demo-card a{color:var(--demo-accent)!important;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important}.hercules-demo-experience{color:#fff;background:var(--demo-dark)}.hercules-demo-experience .hercules-demo-heading h2{color:#fff}.hercules-demo-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.hercules-demo-feature-grid article{padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.04)}.hercules-demo-feature-grid strong{color:var(--demo-accent);font-size:30px}.hercules-demo-feature-grid h3{margin:20px 0 10px;color:#fff;font-size:23px}.hercules-demo-feature-grid p{margin:0;color:#b4bdc5;line-height:1.7}.hercules-demo-team{background:#fff}.hercules-demo-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:30px 0 34px}.hercules-demo-mini-grid div{padding:18px;border-radius:14px;background:var(--demo-light)}.hercules-demo-mini-grid strong{display:block;color:var(--demo-dark)}.hercules-demo-mini-grid span{color:#727d87;font-size:13px}.hercules-demo-plans{background:var(--demo-light)}.hercules-demo-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.hercules-demo-plan-grid article{position:relative;padding:38px;border:1px solid #e0e5e8;border-radius:var(--demo-radius);background:#fff}.hercules-demo-plan-grid article.is-featured{border-color:var(--demo-accent);box-shadow:0 26px 72px rgba(18,25,32,.14);transform:translateY(-12px)}.hercules-demo-plan-grid em{position:absolute;right:16px;top:16px;padding:7px 10px;border-radius:999px;background:var(--demo-accent);color:#fff;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}.hercules-demo-plan-grid h3{margin:0 0 16px;color:var(--demo-dark);font-size:26px}.hercules-demo-plan-grid strong{color:var(--demo-dark);font-size:46px}.hercules-demo-plan-grid span{color:#7a858f}.hercules-demo-plan-grid ul{margin:24px 0 30px;padding:0;list-style:none}.hercules-demo-plan-grid li{padding:10px 0;border-bottom:1px solid #edf0f2;color:#4e5862}.hercules-demo-plan-grid a{display:inline-flex;padding:13px 20px;border-radius:999px;background:var(--demo-accent);color:#fff!important;font-weight:800;text-decoration:none!important}.hercules-demo-testimonials{background:#fff}.hercules-demo-quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.hercules-demo-quote-grid blockquote{margin:0;padding:32px;border:1px solid #e5e9ec;border-radius:var(--demo-radius);color:#39434c;font-size:17px;line-height:1.75;background:#fff}.hercules-demo-quote-grid cite{display:block;margin-top:22px;color:var(--demo-accent);font-style:normal;font-weight:900}.hercules-demo-cta{position:relative;padding:110px 0;color:#fff;background-position:center;background-size:cover}.hercules-demo-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,14,.95),rgba(7,10,14,.64))}.hercules-demo-cta .hercules-demo-container{position:relative;z-index:1}.hercules-demo-cta h2{max-width:820px;margin:0 0 18px;color:#fff;font-size:clamp(42px,7vw,76px);line-height:1.01;letter-spacing:-.05em}.hercules-demo-cta p{max-width:620px;color:#d8dee4;font-size:19px;line-height:1.7}.hercules-demo-cta>div>div{display:flex;gap:14px;margin-top:30px}.hercules-demo-family--modern-gym{--demo-accent:#ff5a1f;--demo-dark:#0d1115}.hercules-demo-family--personal-trainer{--demo-accent:#25c2a0;--demo-dark:#071a18}.hercules-demo-family--crossfit-box{--demo-accent:#f2c94c;--demo-dark:#11100b}.hercules-demo-family--yoga-studio{--demo-accent:#b98cff;--demo-dark:#151022;--demo-light:#faf7ff}.hercules-demo-family--pilates-studio{--demo-accent:#e48f7a;--demo-dark:#241714;--demo-light:#fff8f6}.hercules-demo-family--boxing-mma{--demo-accent:#e63946;--demo-dark:#13090b}.hercules-demo-family--football-academy{--demo-accent:#2fb344;--demo-dark:#07150b}.hercules-demo-family--sports-club{--demo-accent:#2d7ff9;--demo-dark:#071321}.hercules-demo-family--fitness-shop{--demo-accent:#ff7a00;--demo-dark:#17100a}.hercules-demo-family--sports-magazine{--demo-accent:#ff3d71;--demo-dark:#16070d}.hercules-demo-family--online-fitness-coach{--demo-accent:#6c63ff;--demo-dark:#0e0d1b}.hercules-demo-family--sports-charity{--demo-accent:#00a884;--demo-dark:#071612}.hercules-demo-family--womens-fitness{--demo-accent:#d84bb4;--demo-dark:#1b0b18;--demo-light:#fff7fc}.hercules-demo-family--bodybuilding-club{--demo-accent:#d4af37;--demo-dark:#100f0a}.hercules-demo-family--martial-arts{--demo-accent:#d7263d;--demo-dark:#14080b}.hercules-demo-family--cycling-club{--demo-accent:#00b7c7;--demo-dark:#061417}.hercules-demo-family--wellness-center{--demo-accent:#7bbf6a;--demo-dark:#0c170a;--demo-light:#f7fbf5}.hercules-demo-family--sports-rehab{--demo-accent:#2f80ed;--demo-dark:#071321;--demo-light:#f4f8ff}.hercules-demo-family--outdoor-bootcamp{--demo-accent:#f2994a;--demo-dark:#181006}.hercules-demo-family--nutrition-coach{--demo-accent:#57b657;--demo-dark:#0b170b;--demo-light:#f7fcf6}.hercules-demo-variant--2 .hercules-demo-intro .hercules-demo-split,.hercules-demo-variant--7 .hercules-demo-intro .hercules-demo-split,.hercules-demo-variant--12 .hercules-demo-intro .hercules-demo-split,.hercules-demo-variant--17 .hercules-demo-intro .hercules-demo-split{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.hercules-demo-variant--3 .hercules-demo-card-grid,.hercules-demo-variant--8 .hercules-demo-card-grid,.hercules-demo-variant--13 .hercules-demo-card-grid,.hercules-demo-variant--18 .hercules-demo-card-grid{grid-template-columns:1.1fr .95fr .95fr}.hercules-demo-variant--4 .hercules-demo-card,.hercules-demo-variant--9 .hercules-demo-card,.hercules-demo-variant--14 .hercules-demo-card,.hercules-demo-variant--19 .hercules-demo-card{border-radius:4px;box-shadow:none;border:1px solid #e2e7ea}.hercules-demo-variant--5 .hercules-demo-image img,.hercules-demo-variant--10 .hercules-demo-image img,.hercules-demo-variant--15 .hercules-demo-image img,.hercules-demo-variant--20 .hercules-demo-image img{border-radius:50% 50% 12px 12px}.hercules-demo-variant--6 .hercules-demo-feature-grid,.hercules-demo-variant--11 .hercules-demo-feature-grid,.hercules-demo-variant--16 .hercules-demo-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hercules-demo-variant--10 .hercules-demo-heading,.hercules-demo-variant--15 .hercules-demo-heading,.hercules-demo-variant--20 .hercules-demo-heading{margin-left:auto;margin-right:auto;text-align:center}.hercules-demo-variant--10 .hercules-demo-kicker,.hercules-demo-variant--15 .hercules-demo-kicker,.hercules-demo-variant--20 .hercules-demo-kicker{justify-content:center}.hercules-demo-variant--8 .hercules-demo-plans,.hercules-demo-variant--13 .hercules-demo-plans,.hercules-demo-variant--18 .hercules-demo-plans{background:var(--demo-dark);color:#fff}.hercules-demo-variant--8 .hercules-demo-plans .hercules-demo-heading h2,.hercules-demo-variant--13 .hercules-demo-plans .hercules-demo-heading h2,.hercules-demo-variant--18 .hercules-demo-plans .hercules-demo-heading h2{color:#fff}@media(max-width:991px){.hercules-demo-section{padding:78px 0}.hercules-demo-split{grid-template-columns:1fr;gap:44px}.hercules-demo-card-grid,.hercules-demo-plan-grid,.hercules-demo-quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hercules-demo-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hercules-demo-plan-grid article.is-featured{transform:none}}@media(max-width:767px){.hercules-demo-container{width:min(100% - 28px,1180px)}.hercules-demo-stats .hercules-demo-container,.hercules-demo-card-grid,.hercules-demo-plan-grid,.hercules-demo-quote-grid,.hercules-demo-feature-grid,.hercules-demo-copy ul,.hercules-demo-mini-grid{grid-template-columns:1fr}.hercules-demo-image img{min-height:0}.hercules-demo-image:after{display:none}.hercules-demo-cta>div>div{flex-direction:column}.hercules-demo-button{width:100%}}

/* Hercules demos hub */
.hercules-demos-hub {
    padding: clamp(72px, 9vw, 124px) 0;
    background: #f6f7f9;
    color: #111827;
}

.hercules-demos-hub__hero {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto clamp(46px, 7vw, 82px);
    text-align: center;
}

.hercules-demos-hub__eyebrow {
    display: inline-flex;
    margin-bottom: 18px;
    padding: 8px 14px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.hercules-demos-hub__hero h1 {
    max-width: 900px;
    margin: 0 auto 20px;
    font-size: clamp(42px, 7vw, 78px);
    line-height: .98;
    letter-spacing: -.045em;
}

.hercules-demos-hub__hero p {
    max-width: 760px;
    margin: 0 auto;
    color: #5d6572;
    font-size: clamp(17px, 2vw, 21px);
    line-height: 1.75;
}

.hercules-demos-hub__grid {
    display: grid;
    width: min(1320px, calc(100% - 40px));
    margin: 0 auto;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.hercules-demo-preview-card {
    position: relative;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 16px 50px rgba(17, 24, 39, .08);
    transition: transform .25s ease, box-shadow .25s ease;
}

.hercules-demo-preview-card:hover,
.hercules-demo-preview-card:focus-within {
    transform: translateY(-7px);
    box-shadow: 0 24px 70px rgba(17, 24, 39, .15);
}

.hercules-demo-preview-card__media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #111827;
}

.hercules-demo-preview-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.hercules-demo-preview-card:hover .hercules-demo-preview-card__media img,
.hercules-demo-preview-card:focus-within .hercules-demo-preview-card__media img {
    transform: scale(1.045);
}

.hercules-demo-preview-card__badge {
    position: absolute;
    top: 16px;
    left: 16px;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(17, 24, 39, .88);
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
    backdrop-filter: blur(8px);
}

.hercules-demo-preview-card__body {
    padding: 24px 24px 26px;
}

.hercules-demo-preview-card__body h2 {
    margin: 0 0 10px;
    font-size: 24px;
    line-height: 1.2;
}

.hercules-demo-preview-card__body p {
    min-height: 76px;
    margin: 0 0 18px;
    color: #697180;
    line-height: 1.7;
}

.hercules-demo-preview-card__links {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.hercules-demo-preview-card__links a {
    color: #111827;
    font-weight: 900;
    text-decoration: none;
}

.hercules-demo-preview-card__links a:first-child {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    padding: 10px 17px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
}

.hercules-demos-hub__builder-note {
    width: min(1180px, calc(100% - 40px));
    margin: 64px auto 0;
    padding: 30px;
    border-radius: 20px;
    background: #111827;
    color: #e5e7eb;
    text-align: center;
}

.hercules-demos-hub__builder-note strong {
    color: #fff;
}

@media (max-width: 1000px) {
    .hercules-demos-hub__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .hercules-demos-hub__hero,
    .hercules-demos-hub__grid,
    .hercules-demos-hub__builder-note {
        width: min(100% - 28px, 1320px);
    }

    .hercules-demos-hub__grid {
        grid-template-columns: 1fr;
    }

    .hercules-demo-preview-card__body p {
        min-height: 0;
    }
}
/* Hercules fitness shop showcase */
.hercules-demo-shop-showcase {
    padding: clamp(72px, 9vw, 118px) 0;
    background: #f5f6f8;
}

.hercules-demo-shop-showcase__intro {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto 38px;
    text-align: center;
}

.hercules-demo-shop-showcase__intro .hercules-demo-kicker {
    display: inline-flex;
    margin-bottom: 14px;
}

.hercules-demo-shop-showcase__intro h2 {
    max-width: 820px;
    margin: 0 auto 16px;
    color: #111827;
    font-size: clamp(34px, 5vw, 58px);
    line-height: 1.03;
    letter-spacing: -.035em;
}

.hercules-demo-shop-showcase__intro p {
    max-width: 720px;
    margin: 0 auto;
    color: #687080;
    font-size: 18px;
    line-height: 1.75;
}

.hercules-demo-shop-showcase__products {
    width: min(1320px, calc(100% - 40px));
    margin: 0 auto;
}

.hercules-demo-shop-showcase__products .woocommerce {
    width: 100%;
}

.hercules-demo-shop-showcase__products .products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 28px;
}

.hercules-demo-shop-showcase__products .products::before,
.hercules-demo-shop-showcase__products .products::after {
    display: none !important;
}

.hercules-demo-shop-showcase__products .products .product {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
}

.hercules-demo-shop-showcase__actions {
    display: flex;
    margin-top: 38px;
    justify-content: center;
}

.hercules-demo-shop-showcase__actions a {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    padding: 13px 24px;
    border-radius: 999px;
    background: #111827;
    color: #fff !important;
    font-weight: 900;
    text-decoration: none !important;
}

@media (max-width: 1050px) {
    .hercules-demo-shop-showcase__products .products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .hercules-demo-shop-showcase__intro,
    .hercules-demo-shop-showcase__products {
        width: min(100% - 28px, 1320px);
    }

    .hercules-demo-shop-showcase__products .products {
        grid-template-columns: 1fr;
    }
}

/* Hercules View Demo hover overlay */
.hercules-demo-preview-card__media::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(17,24,39,.08),rgba(17,24,39,.82));opacity:0;transition:opacity .3s ease}.hercules-demo-preview-card__media::after{content:"View Demo  →";position:absolute;left:50%;bottom:28px;z-index:2;display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 22px;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(255,255,255,.96);color:#111827;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translate(-50%,14px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}.hercules-demo-preview-card:hover .hercules-demo-preview-card__media::before,.hercules-demo-preview-card:focus-within .hercules-demo-preview-card__media::before,.hercules-demo-preview-card:hover .hercules-demo-preview-card__media::after,.hercules-demo-preview-card:focus-within .hercules-demo-preview-card__media::after{opacity:1}.hercules-demo-preview-card:hover .hercules-demo-preview-card__media::after,.hercules-demo-preview-card:focus-within .hercules-demo-preview-card__media::after{transform:translate(-50%,0)}@media(prefers-reduced-motion:reduce){.hercules-demo-preview-card,.hercules-demo-preview-card__media img,.hercules-demo-preview-card__media::before,.hercules-demo-preview-card__media::after{transition:none!important}}