.pump-gym-lp {
        --black: #111214;
        --ink: #191a1d;
        --charcoal: #2f3033;
        --gray: #70747a;
        --line: #06c755;
        --gold: #b79a60;
        --paper: #f5f5f2;
        --white: #ffffff;
      }

      .pump-gym-lp * { box-sizing: border-box; }

      .pump-gym-lp {
        margin: 0;
        background: #d9d9d6;
        color: var(--ink);
        font-family: "Hiragino Sans", "Noto Sans JP", "Yu Gothic", Arial, sans-serif;
        letter-spacing: 0;
      }

      .pump-gym-lp .page {
        max-width: 1440px;
        width: 100%;
        margin: 0 auto;
        background:
           radial-gradient(circle at 8% 8%, rgba(183,154,96,.12), transparent 24%),
           radial-gradient(circle at 88% 28%, rgba(17,18,20,.06), transparent 26%),
           repeating-linear-gradient(118deg, transparent 0 88px, rgba(17,18,20,.035) 89px 90px),
          linear-gradient(145deg, #f8f8f5 0%, #e7e7e3 48%, #f7f7f4 100%);
        overflow: hidden;
      }

      .pump-gym-lp .hero {
        isolation: isolate;
        position: relative;
        min-height: 1020px;
        color: var(--white);
        background:
           linear-gradient(90deg, rgba(14,15,17,.98) 0%, rgba(14,15,17,.92) 37%, rgba(14,15,17,.42) 65%, rgba(14,15,17,.18) 100%),
           linear-gradient(180deg, rgba(17,18,20,.18) 0%, rgba(17,18,20,.86) 100%),
          var(--pump-hero-image);
        background-size: cover;
        background-position: center right;
      }

      .pump-gym-lp .hero::before {
        content: "";
        position: absolute;
        inset: 104px auto 0 -120px;
        width: 820px;
        background:
           repeating-linear-gradient(118deg, transparent 0 78px, rgba(255,255,255,.045) 79px 80px),
          linear-gradient(148deg, rgba(24,25,28,.97), rgba(38,39,42,.87));
        clip-path: polygon(0 0, 88% 0, 72% 100%, 0% 100%);
        pointer-events: none;
        z-index: -1;
      }

      .pump-gym-lp .hero::after { content: none; }

      .pump-gym-lp .nav {
        position: relative;
        z-index: 5;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 0 72px;
        padding: 26px 0;
        min-height: 104px;
        border-bottom: 1px solid rgba(255,255,255,.12);
      }

      .pump-gym-lp .logo {
        font-size: 32px;
        font-weight: 900;
      }

      .pump-gym-lp .nav-menu {
        display: flex;
        align-items: center;
        gap: 26px;
        color: rgba(255,255,255,.78);
        font-size: 14px;
        font-weight: 700;
      }

      .pump-gym-lp .pill {
        display: inline-flex;
        justify-content: center;
        align-items: center;
        min-height: 48px;
        padding: 0 24px;
        border-radius: 4px;
        background: var(--line);
        color: #fff;
        font-weight: 900;
        box-shadow: 0 18px 40px rgba(6,199,85,.25);
        clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0 100%);
        white-space: nowrap;
      }

      .pump-gym-lp .pill::after {
        content: ">";
        margin-left: 12px;
        font-size: 15px;
      }

      .pump-gym-lp .hero-copy {
        position: relative;
        z-index: 3;
        width: 800px;
        padding: 122px 0 0 72px;
      }

      .pump-gym-lp .small-gold {
        display: flex;
        align-items: center;
        gap: 14px;
        color: #d8c793;
        font-size: 14px;
        font-weight: 900;
      }

      .pump-gym-lp .small-gold::before {
        content: "";
        width: 46px;
        height: 1px;
        background: var(--gold);
      }

      .pump-gym-lp h1, .pump-gym-lp h2 {
        font-family: "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif;
        font-weight: 800;
      }

      .pump-gym-lp h1 {
        position: relative;
        margin: 26px 0 24px;
        font-size: 78px;
        line-height: 1.02;
        text-shadow: 0 16px 40px rgba(0,0,0,.32);
      }

      .pump-gym-lp h1 span { display: block; }

      .pump-gym-lp .hero-impact {
        color: #fff;
        font-size: 154px;
        line-height: .86;
        letter-spacing: 0;
      }

      .pump-gym-lp .hero-line {
        display: block;
        margin-top: 10px;
        color: #ffffff;
      }

      .pump-gym-lp .gold-word { color: #d9c27f; }

      .pump-gym-lp .hero-main {
        margin: 0;
        font-size: 34px;
        line-height: 1.55;
        font-weight: 900;
      }

      .pump-gym-lp .hero-sub {
        width: 610px;
        margin: 22px 0 0;
        color: rgba(255,255,255,.78);
        font-size: 17px;
        line-height: 2;
        font-weight: 700;
      }

      .pump-gym-lp .hero-actions {
        display: flex;
        align-items: center;
        gap: 22px;
        margin-top: 42px;
        max-width: 680px;
      }

      .pump-gym-lp .hero-note {
        color: rgba(255,255,255,.72);
        font-size: 13px;
        line-height: 1.7;
        font-weight: 700;
      }

      .pump-gym-lp .hero-facts {
        position: absolute;
        left: 72px;
        bottom: 66px;
        z-index: 2;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        width: 860px;
        border: 1px solid rgba(255,255,255,.18);
        background: linear-gradient(100deg, rgba(255,255,255,.14), rgba(255,255,255,.04));
        backdrop-filter: blur(8px);
        clip-path: polygon(0 0, 100% 0, 96% 100%, 0 100%);
      }

      .pump-gym-lp .hero-facts div {
        padding: 22px 24px;
        border-right: 1px solid rgba(255,255,255,.14);
        background: rgba(17,18,20,.58);
      }

      .pump-gym-lp .hero-facts div:last-child { border-right: 0; }
      .pump-gym-lp .hero-facts small {
        color: #d8c793;
        font-size: 12px;
        font-weight: 900;
      }
      .pump-gym-lp .hero-facts strong {
        display: block;
        margin-top: 7px;
        font-size: 16px;
      }

      .pump-gym-lp section { padding: 108px 72px; }

      .pump-gym-lp section {
        position: relative;
      }

      .pump-gym-lp section::before { content: none; }

      .pump-gym-lp .section-head {
        display: grid;
        grid-template-columns: .8fr 1fr;
        gap: 80px;
        align-items: end;
        margin-bottom: 54px;
      }

      .pump-gym-lp .kicker {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        color: var(--gold);
        font-size: 13px;
        font-weight: 900;
      }

      .pump-gym-lp .kicker::before {
        content: "";
        width: 38px;
        height: 1px;
        background: var(--gold);
      }

      .pump-gym-lp h2 {
        margin: 12px 0 0;
        font-size: 50px;
        line-height: 1.34;
      }

      .pump-gym-lp .accent {
        color: #b79a60;
        font-size: 1.16em;
      }

      .pump-gym-lp .lead {
        color: #5d6065;
        font-size: 17px;
        line-height: 2.05;
        font-weight: 700;
      }

      .pump-gym-lp .about {
        background:
          linear-gradient(164deg, #ffffff 0%, #f3f3f0 100%);
      }

      .pump-gym-lp .about-grid {
        display: grid;
        grid-template-columns: 1.06fr .94fr;
        gap: 34px;
        align-items: stretch;
      }

      .pump-gym-lp .photo-card {
        position: relative;
        min-height: 490px;
        overflow: hidden;
        border-radius: 10px;
        background-size: cover;
        background-position: center;
        box-shadow: 0 24px 70px rgba(17,18,20,.08);
      }

      .pump-gym-lp .photo-card::after { content: none; }

      .pump-gym-lp .about-text {
        position: relative;
        padding: 46px;
        border: 1px solid #e4e4df;
        border-radius: 4px;
        background:
          linear-gradient(145deg, #ffffff 0%, #f4f4f1 100%);
        clip-path: polygon(7% 0, 100% 0, 100% 100%, 0 100%, 0 8%);
      }

      .pump-gym-lp .about-text h3 {
        margin: 0 0 20px;
        font-size: 30px;
        line-height: 1.5;
      }

      .pump-gym-lp .about-text p, .pump-gym-lp .card p, .pump-gym-lp .reason-card p, .pump-gym-lp .faq p {
        margin: 0;
        color: #60636a;
        font-size: 15px;
        line-height: 1.9;
        font-weight: 700;
      }

      .pump-gym-lp .service {
        background:
          linear-gradient(180deg, #f5f5f2 0%, #eeeeeb 100%);
      }

      .pump-gym-lp .service-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 26px;
        align-items: start;
      }

      .pump-gym-lp .service-grid .card:nth-child(2) { margin-top: 56px; }
      .pump-gym-lp .service-grid .card:nth-child(3) { margin-top: 22px; }

      .pump-gym-lp .card {
        position: relative;
        overflow: hidden;
        border: 1px solid #e1e1dc;
        border-radius: 4px;
        background: #fff;
        box-shadow: 0 18px 48px rgba(17,18,20,.06);
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - 26px), calc(100% - 30px) 100%, 0 100%);
      }

      .pump-gym-lp .card::before { content: none; }

      .pump-gym-lp .card-img {
        height: 260px;
        background-size: cover;
        background-position: center;
      }

      .pump-gym-lp .card-body { padding: 30px; }
      .pump-gym-lp .card h3 {
        margin: 0 0 14px;
        font-size: 24px;
      }

      .pump-gym-lp .reason {
        color: #fff;
        background:
           radial-gradient(circle at 12% 18%, rgba(183,154,96,.12), transparent 28%),
           repeating-linear-gradient(118deg, transparent 0 92px, rgba(255,255,255,.035) 93px 94px),
          linear-gradient(145deg, #111214 0%, #202226 100%);
      }

      .pump-gym-lp .reason h2 { color: #fff; }
      .pump-gym-lp .reason .lead { color: rgba(255,255,255,.7); }

      .pump-gym-lp .reason-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        border: 1px solid rgba(255,255,255,.14);
      }

      .pump-gym-lp .reason-card {
        position: relative;
        min-height: 235px;
        padding: 38px 34px 34px;
        border-right: 1px solid rgba(255,255,255,.12);
        border-bottom: 1px solid rgba(255,255,255,.12);
        background: linear-gradient(145deg, rgba(38,40,44,.96), rgba(29,31,34,.96));
        overflow: hidden;
      }

      .pump-gym-lp .reason-card::after { content: none; }

      .pump-gym-lp .reason-card:nth-child(3n) { border-right: 0; }
      .pump-gym-lp .reason-card:nth-child(n+4) { border-bottom: 0; }

      .pump-gym-lp .num {
        position: absolute;
        right: 20px;
        top: 6px;
        color: #d5bd81;
        font-family: Georgia, serif;
        font-size: 86px;
        font-weight: 700;
        opacity: .24;
      }

      .pump-gym-lp .reason-card h3 {
        margin: 52px 0 12px;
        font-size: 22px;
      }

      .pump-gym-lp .reason-card p { color: rgba(255,255,255,.68); }

      .pump-gym-lp .proof {
        background:
          linear-gradient(180deg, #ffffff 0%, #f4f4f1 100%);
      }

      .pump-gym-lp .proof-imgs {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 22px;
      }

      .pump-gym-lp .proof-imgs img,
      .pump-gym-lp .price-grid img,
      .pump-gym-lp .steps img,
      .pump-gym-lp .event-card img {
        width: 100%;
        display: block;
      }

      .pump-gym-lp .proof-imgs img {
        border-radius: 10px;
        border: 1px solid #e2e2de;
        box-shadow: 0 20px 60px rgba(17,18,20,.08);
      }

      .pump-gym-lp .testimonial-row {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 18px;
        margin-top: 28px;
      }

      .pump-gym-lp .review {
        padding: 28px;
        border-radius: 10px;
        background: #f7f7f4;
        border: 1px solid #e3e3de;
      }

      .pump-gym-lp .stars { color: #d2a936; letter-spacing: 2px; font-weight: 900; }
      .pump-gym-lp .review p {
        margin: 12px 0 0;
        color: #52555a;
        font-size: 14px;
        line-height: 1.85;
        font-weight: 700;
      }

      .pump-gym-lp .wide-cta {
        position: relative;
        overflow: hidden;
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 36px;
        align-items: center;
        padding: 70px 72px;
        color: #fff;
        background:
           radial-gradient(circle at 86% 50%, rgba(6,199,85,.18), transparent 22%),
           repeating-linear-gradient(118deg, transparent 0 80px, rgba(255,255,255,.045) 81px 82px),
          linear-gradient(120deg, #111214, #333539);
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - 54px), 0 100%);
      }

      .pump-gym-lp .wide-cta::after { content: none; }

      .pump-gym-lp .wide-cta h2 {
        margin: 0;
        color: #fff;
        font-size: 42px;
      }
      .pump-gym-lp .wide-cta p {
        margin: 14px 0 0;
        color: rgba(255,255,255,.72);
        font-size: 16px;
        line-height: 1.8;
        font-weight: 700;
      }

      .pump-gym-lp .stores {
        background:
           radial-gradient(circle at 82% 24%, rgba(183,154,96,.08), transparent 28%),
          linear-gradient(180deg, #f6f6f3 0%, #eeeeeb 100%);
      }

      .pump-gym-lp .store-grid {
        display: grid;
        grid-template-columns: 1.1fr .9fr;
        gap: 24px;
        align-items: start;
      }

      .pump-gym-lp .store-grid .store-card:nth-child(2) { margin-top: 74px; }

      .pump-gym-lp .store-card {
        position: relative;
        overflow: hidden;
        border-radius: 4px;
        background: #fff;
        border: 1px solid #e1e1dc;
        box-shadow: 0 18px 48px rgba(17,18,20,.07);
      }

      .pump-gym-lp .store-card::before { content: none; }

      .pump-gym-lp .store-card .photo {
        height: 360px;
        background-size: cover;
        background-position: center;
      }

      .pump-gym-lp .store-card .body {
        padding: 34px;
      }

      .pump-gym-lp .tag {
        color: var(--gold);
        font-size: 12px;
        font-weight: 900;
      }

      .pump-gym-lp .store-card h3 {
        margin: 10px 0 14px;
        font-size: 32px;
      }

      .pump-gym-lp .store-card p {
        margin: 0;
        color: #5c6066;
        font-size: 15px;
        line-height: 1.9;
        font-weight: 700;
      }

      .pump-gym-lp .community {
        background:
          linear-gradient(155deg, #ffffff 0%, #f1f1ee 100%);
      }

      .pump-gym-lp .event-grid {
        display: grid;
        grid-template-columns: 1.15fr .85fr .85fr;
        gap: 18px;
        align-items: start;
      }

      .pump-gym-lp .event-grid .event-card:nth-child(2) { margin-top: 48px; }
      .pump-gym-lp .event-grid .event-card:nth-child(3) { margin-top: 20px; }

      .pump-gym-lp .event-card {
        position: relative;
        overflow: hidden;
        min-height: 330px;
        border-radius: 4px;
        background: #111;
      }

      .pump-gym-lp .event-card img {
        height: 100%;
        object-fit: cover;
        opacity: .86;
      }

      .pump-gym-lp .event-card span {
        position: absolute;
        left: 24px;
        bottom: 22px;
        color: #fff;
        font-size: 20px;
        font-weight: 900;
        padding-left: 18px;
        border-left: 3px solid var(--gold);
        text-shadow: 0 8px 18px rgba(0,0,0,.45);
      }

      .pump-gym-lp .price {
        background:
           radial-gradient(circle at 18% 24%, rgba(183,154,96,.09), transparent 30%),
          linear-gradient(180deg, #f6f6f3 0%, #eeeeeb 100%);
      }

      .pump-gym-lp .price-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
      }

      .pump-gym-lp .price-grid img {
        border-radius: 10px;
        border: 1px solid #e1e1dc;
        box-shadow: 0 18px 55px rgba(17,18,20,.08);
      }

      .pump-gym-lp .trial {
        color: #fff;
        background:
           repeating-linear-gradient(118deg, transparent 0 82px, rgba(255,255,255,.04) 83px 84px),
          linear-gradient(145deg, #111214 0%, #24262a 100%);
        clip-path: polygon(0 48px, 100% 0, 100% 100%, 0 100%);
      }

      .pump-gym-lp .trial h2 { color: #fff; }
      .pump-gym-lp .trial .lead { color: rgba(255,255,255,.68); }

      .pump-gym-lp .steps {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 22px;
        align-items: start;
      }

      .pump-gym-lp .steps .step-card:nth-child(2) { margin-top: 44px; }
      .pump-gym-lp .steps .step-card:nth-child(3) { margin-top: 88px; }

      .pump-gym-lp .step-card {
        position: relative;
        overflow: hidden;
        border-radius: 4px;
        background: #24262a;
        border: 1px solid rgba(255,255,255,.12);
      }

      .pump-gym-lp .step-card::before { content: none; }

      .pump-gym-lp .step-card img {
        height: 260px;
        object-fit: cover;
      }

      .pump-gym-lp .step-card div {
        padding: 28px;
      }

      .pump-gym-lp .step-card h3 {
        margin: 0 0 12px;
        font-size: 23px;
      }

      .pump-gym-lp .step-card p {
        margin: 0;
        color: rgba(255,255,255,.68);
        font-size: 14px;
        line-height: 1.9;
        font-weight: 700;
      }

      .pump-gym-lp .faq {
        background: linear-gradient(180deg, #ffffff 0%, #f5f5f2 100%);
      }

      .pump-gym-lp .faq-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px;
      }

      .pump-gym-lp .faq-item {
        position: relative;
        padding: 24px 28px;
        border-radius: 4px;
        background: #f7f7f4;
        border: 1px solid #e4e4df;
      }

      .pump-gym-lp .faq-item::before {
        content: "Q";
        position: absolute;
        right: 24px;
        top: 18px;
        color: rgba(183,154,96,.18);
        font-family: Georgia, serif;
        font-size: 42px;
        font-weight: 700;
      }

      .pump-gym-lp .faq-item strong {
        display: block;
        margin-bottom: 10px;
        font-size: 17px;
      }

      .pump-gym-lp .contact {
        display: grid;
        grid-template-columns: 1.1fr .9fr;
        gap: 60px;
        align-items: center;
        color: #fff;
        background:
           radial-gradient(circle at 72% 50%, rgba(183,154,96,.14), transparent 26%),
           repeating-linear-gradient(118deg, transparent 0 78px, rgba(255,255,255,.045) 79px 80px),
          linear-gradient(120deg, #111214, #2f3033);
      }

      .pump-gym-lp .contact h2 {
        color: #fff;
        font-size: 56px;
      }

      .pump-gym-lp .contact p {
        color: rgba(255,255,255,.72);
        font-size: 17px;
        line-height: 2;
        font-weight: 700;
      }

      .pump-gym-lp .qr-box {
        display: grid;
        grid-template-columns: 220px 1fr;
        gap: 28px;
        align-items: center;
        padding: 30px;
        border-radius: 12px;
        background: #fff;
        color: var(--ink);
      }

      .pump-gym-lp .qr-box img {
        width: 220px;
        height: 220px;
      }

      .pump-gym-lp .footer {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 36px 72px;
        color: rgba(255,255,255,.64);
        background: #0b0c0d;
        font-size: 13px;
        font-weight: 700;
      }

      .pump-gym-lp .footer strong {
        color: #fff;
        font-size: 22px;
      }

      .pump-gym-lp .fixed {
        position: fixed;
        right: 34px;
        bottom: 28px;
        z-index: 10;
      }

      @media (max-width: 760px) {
        .pump-gym-lp .page { width: 100%; max-width: 390px; margin: 0; }
        .pump-gym-lp .hero { min-height: 980px; background-position: 63% center; }
        .pump-gym-lp .hero::before { inset: 82px auto 0 -120px; width: 430px; clip-path: polygon(0 0, 100% 0, 84% 100%, 0 100%); }
        .pump-gym-lp .nav { margin: 0 22px; padding: 18px 0; min-height: 82px; }
        .pump-gym-lp .logo { font-size: 23px; }
        .pump-gym-lp .nav-menu span { display: none; }
        .pump-gym-lp .nav-menu { gap: 0; }
        .pump-gym-lp .nav-menu .pill { min-height: 42px; padding: 0 16px; font-size: 13px; }
        .pump-gym-lp .hero-copy { width: auto; padding: 70px 22px 0; }
        .pump-gym-lp h1 { font-size: 42px; }
        .pump-gym-lp .hero-impact { font-size: 86px; }
        .pump-gym-lp .hero-main { font-size: 22px; }
        .pump-gym-lp .hero-sub { width: auto; font-size: 14px; }
        .pump-gym-lp .hero-actions { display: block; }
        .pump-gym-lp .hero-actions .pill { width: 100%; }
        .pump-gym-lp .hero-note { display: none; }
        .pump-gym-lp .hero-facts {
          left: 22px;
          bottom: 34px;
          width: 346px;
          grid-template-columns: 1fr 1fr;
          clip-path: none;
        }
        .pump-gym-lp .hero-facts div { padding: 16px; }
        .pump-gym-lp section { padding: 66px 22px; }
        .pump-gym-lp .section-head,
        .pump-gym-lp .about-grid,
        .pump-gym-lp .store-grid,
        .pump-gym-lp .contact,
        .pump-gym-lp .wide-cta {
          grid-template-columns: 1fr;
          gap: 28px;
        }
        .pump-gym-lp h2 { font-size: 34px; }
        .pump-gym-lp .lead { font-size: 14px; }
        .pump-gym-lp .service-grid,
        .pump-gym-lp .reason-grid,
        .pump-gym-lp .proof-imgs,
        .pump-gym-lp .testimonial-row,
        .pump-gym-lp .event-grid,
        .pump-gym-lp .price-grid,
        .pump-gym-lp .steps,
        .pump-gym-lp .faq-grid {
          grid-template-columns: 1fr;
        }
        .pump-gym-lp .service-grid .card:nth-child(2),
        .pump-gym-lp .service-grid .card:nth-child(3),
        .pump-gym-lp .store-grid .store-card:nth-child(2),
        .pump-gym-lp .event-grid .event-card:nth-child(2),
        .pump-gym-lp .event-grid .event-card:nth-child(3),
        .pump-gym-lp .steps .step-card:nth-child(2),
        .pump-gym-lp .steps .step-card:nth-child(3) { margin-top: 0; }
        .pump-gym-lp .reason-card, .pump-gym-lp .reason-card:nth-child(3n), .pump-gym-lp .reason-card:nth-child(n+4) {
          border-right: 0;
          border-bottom: 1px solid rgba(255,255,255,.12);
        }
        .pump-gym-lp .wide-cta { padding: 54px 22px; }
        .pump-gym-lp .wide-cta h2, .pump-gym-lp .contact h2 { font-size: 33px; }
        .pump-gym-lp .qr-box { grid-template-columns: 1fr; }
        .pump-gym-lp .fixed {
          right: 18px;
          left: 18px;
          bottom: 18px;
        }
        .pump-gym-lp .fixed .pill { width: 100%; }
      }
