/* Preview UI only. Small screens are the default; wider layouts extend them. */
:root {
  --ink:#1c2940; --muted:#5b687b; --pink:#d92562; --soft:#fff1f6;
  --blue:#2865a0; --mint:#eaf7f1; --line:#e3e9f0; --paper:#fff;
  --bg:#fff; --pale:#f5f8fc;
  font-family:"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
  color:var(--ink); background:var(--bg); font-synthesis:none;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:20px}
body {margin:0;font-size:16px;line-height:1.75}
button,input,select {font:inherit;color:inherit}
button,a,input,select,summary {touch-action:manipulation}
button,summary {cursor:pointer}
a {color:inherit;text-underline-offset:4px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible {outline:3px solid var(--blue);outline-offset:4px}
button:disabled {cursor:default;opacity:.65}
img {max-width:100%;display:block;object-fit:cover}
figure,p,dl,dd {margin:0}
p+p {margin-top:12px}
h1,h2,h3 {line-height:1.45;overflow-wrap:anywhere}
h1 {font-size:27px;letter-spacing:.01em;margin:10px 0 14px}
h2 {font-size:22px;letter-spacing:.01em;margin:0 0 18px}
h3 {font-size:20px;margin:0 0 8px}
small {font-size:14px}
dt {font-size:14px;color:var(--muted)}
dd {font-weight:700;line-height:1.55;overflow-wrap:anywhere}
ul {padding-left:22px}
summary {list-style:none;min-height:44px;line-height:1.6}
summary::-webkit-details-marker {display:none}
summary:focus-visible {border-radius:8px}
details:not(.v2-area-overview):not(.v2-filter-extra)>summary {padding:10px 0;font-weight:700;font-size:15px}
details:not(.v2-area-overview):not(.v2-filter-extra)>summary::after {content:'＋';float:right;color:var(--blue);margin-left:12px}
details[open]:not(.v2-area-overview):not(.v2-filter-extra)>summary::after {content:'−'}
[hidden] {display:none!important}
.v2-sr-only,.v2-skip {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.v2-skip:focus {clip-path:none;width:auto;height:auto;top:8px;left:16px;z-index:100;padding:12px;background:white}
.v2-preview {background:var(--pale);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;padding:6px 16px;font-size:11px;letter-spacing:.025em;color:var(--muted)}
.v2-preview a {white-space:nowrap;text-decoration:none}
.v2-header {max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 16px;border-bottom:1px solid var(--line)}
.v2-brand {display:flex;align-items:center;gap:8px;text-decoration:none;flex-shrink:0}
.v2-brand img {width:32px;height:32px}
.v2-brand strong {font-size:24px;letter-spacing:-.07em;line-height:1.1;display:block}
.v2-brand small {display:block;font-size:8px;margin-top:4px;letter-spacing:0}
.v2-header nav a {font-size:14px;text-decoration:none;font-weight:700;display:inline-flex;align-items:center;min-height:44px;gap:8px}
.v2-shell {max-width:1184px;padding:0 16px 40px;margin:auto}
.v2-breadcrumbs {display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:15px 0 0}
.v2-breadcrumbs a {min-height:28px;display:inline-flex;align-items:center}
.v2-area-hero {padding:17px 0 20px}
.v2-eyebrow {color:var(--pink);font-weight:700;font-size:14px;letter-spacing:.07em}
.v2-area-hero h1 {font-size:27px;line-height:1.45;margin:8px 0 10px}
.v2-area-hero>p:not(.v2-eyebrow):not(.v2-note) {font-size:16px;color:var(--muted)}
.v2-hero-count {display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;font-size:13px}
.v2-hero-count>span {background:var(--pale);padding:5px 10px;border-radius:7px;color:var(--muted)}
.v2-hero-count strong {font-size:18px;color:var(--ink);margin:0 2px}
.v2-pilot-hero {padding-top:28px;background:radial-gradient(ellipse at 90% 8%,#f0faf7 0,transparent 56%)}
.v2-pilot-hero h1 {font-size:clamp(20px,6.2vw,26px);line-height:1.55}
.v2-summary-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:22px}
.v2-summary-cards>div {padding:13px 5px;background:var(--pale);border:1px solid #ecf0f6;border-radius:13px;text-align:center;min-width:0}
.v2-summary-cards>div:nth-child(2) {background:var(--soft);border-color:#f9e6ed}
.v2-summary-cards>div:nth-child(3) {background:var(--mint);border-color:#e0f0e9}
.v2-summary-cards dt {font-size:12px;font-weight:700;white-space:nowrap;letter-spacing:-.025em}
.v2-summary-cards dd {font-size:30px;font-variant-numeric:tabular-nums;line-height:1.3;margin:6px 0}
.v2-summary-cards dd small {font-size:12px;margin-left:3px;font-weight:500}
.v2-summary-cards>div>span {font-size:11px;color:var(--muted);display:block}
.v2-browse-cta {width:100%;margin-top:20px}
.v2-button,.v2-favorite {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 14px;border:1px solid var(--line);background:#fff;border-radius:11px;font-size:15px;font-weight:700;line-height:1.5;text-decoration:none;text-align:center}
.v2-button--primary {background:var(--pink);color:#fff;border-color:var(--pink);min-height:50px;font-size:16px}
.v2-button--primary:hover {background:#bf1c53;border-color:#bf1c53}
.v2-button--primary>span {margin-left:auto}
.v2-favorite[aria-pressed=true],button[aria-pressed=true] {background:var(--soft);border-color:#efb5cc;color:#b71c51}
.v2-area-overview {background:var(--pale);border:1px solid #e8edf5;border-radius:14px;margin-bottom:20px;padding:13px 16px}
.v2-area-overview>summary {position:relative}
.v2-overview-title {display:block;font-size:13px;color:var(--muted);margin-bottom:5px;padding-right:12px}.v2-overview-title small{font-size:11px;margin-left:7px}
.v2-overview-numbers {display:flex;gap:14px;flex-wrap:wrap;font-size:13px}
.v2-overview-numbers strong {font-size:19px;margin-left:4px;font-variant-numeric:tabular-nums}
.v2-disclosure-hint {position:absolute;right:0;top:0;color:var(--blue);font-size:14px}
.v2-area-overview[open] .v2-disclosure-hint>span {transform:rotate(45deg)}
.v2-filter {display:grid;gap:10px;padding:0 0 4px}
.v2-search,.v2-sort-row>label {min-width:0}
.v2-filter input,.v2-filter select {display:block;min-width:0;width:100%;min-height:48px;border:1px solid #cdd7e4;border-radius:11px;padding:11px 13px;background:#fff;font-size:16px}
.v2-filter input::placeholder {color:#65758b}
.v2-filter input:focus {border-color:var(--blue)}
.v2-sort-row {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.v2-sort-row .v2-button {font-size:14px;padding:10px 12px}
.v2-filter-extra>summary {display:flex;align-items:center;justify-content:space-between;color:var(--blue);font-size:14px;font-weight:700;padding:7px 0}
.v2-filter-extra[open]>summary>span {transform:rotate(45deg)}
.v2-filter-extra[open] {padding-bottom:16px}
.v2-filter-tags {display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 14px}
.v2-filter-tags button {background:white;border:1px solid var(--line);padding:8px 14px;border-radius:24px;font-size:14px;min-height:44px}
.v2-filter-tags button[aria-pressed=true] {color:#b71c51;border-color:#edb0c7;background:var(--soft)}
.v2-section {padding:30px 0;border-bottom:1px solid var(--line);scroll-margin-top:20px}
.v2-section-heading {display:flex;align-items:baseline;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;margin-bottom:18px}
.v2-section-heading h2 {font-size:21px;margin:0}
.v2-result-count,.v2-small-label {color:var(--muted);font-size:13px}
.v2-results {padding-top:12px}
.v2-area-grid,.v2-nearby-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.v2-gym-card {min-width:0;background:white;border:1px solid var(--line);border-radius:19px;overflow:hidden;box-shadow:0 3px 12px #21365306;scroll-margin-top:20px}
.v2-card-media {position:relative;background:var(--pale)}
.v2-card-photo {height:146px;overflow:hidden}
.v2-card-photo>img {width:100%;height:146px}
.v2-card-photo figcaption {position:absolute;bottom:0;right:0;background:#fffffff0;padding:2px 9px;font-size:10px;border-top-left-radius:7px;color:#546074}
.v2-card-photo figcaption a {text-decoration:none}
.v2-photo-empty {height:100px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);background:#f4f7fb}
.v2-photo-empty>img {width:29px;height:29px;opacity:.5}
.v2-photo-empty p {font-size:13px;padding-top:35px}
.v2-photo-empty>img {margin-top:35px}
.v2-card-status {position:absolute;left:12px;top:12px;z-index:1}
.v2-status {display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:7px;background:#eef2f7;color:#556477;font-size:12px;font-weight:700;line-height:1.5}
.v2-status--high {background:#e6f6ee;color:#23634c}
.v2-status--medium {background:#eaf2ff;color:#295d91}
.v2-photo-save {position:absolute;right:12px;top:9px;z-index:1;min-height:44px;padding:6px 12px;font-size:13px;background:#fffffff5;border-color:#e9edf4;box-shadow:0 1px 5px #25385608}
.v2-card-body {padding:18px 18px 20px}
.v2-card-body h3 {font-size:20px;line-height:1.5;margin-bottom:7px}
.v2-card-body h3 a {text-decoration:none}
.v2-card-body h3 a:hover {color:var(--pink)}
.v2-access {font-size:15px;line-height:1.65;color:var(--muted);margin-bottom:14px}
.v2-tags {list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:12px 0;padding:0}
.v2-tags li {padding:5px 9px;background:#f1f5f9;color:#465770;border-radius:6px;font-size:13px;line-height:1.5}
.v2-tags small {display:block;font-size:12px;color:var(--muted);margin-top:2px}
.v2-card-tags {margin:0 0 12px;gap:6px}
.v2-card-tags small {display:inline;font-size:12px;margin-left:4px}
.v2-card-tags li {max-width:100%;overflow-wrap:anywhere}
.v2-card-price {font-size:25px;font-weight:800;letter-spacing:-.025em;line-height:1.45;margin:0 0 16px;font-variant-numeric:tabular-nums}
.v2-price-caption {display:block;font-size:13px;letter-spacing:0;font-weight:500;color:var(--muted);margin-bottom:3px}
.v2-card-price>small {display:inline-block;font-size:13px;font-weight:500;letter-spacing:0;margin-left:5px}
.v2-card-price--unknown {font-size:16px;font-weight:500;letter-spacing:0;line-height:1.65}
.v2-card-facts {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 7px}
.v2-card-facts>div {min-width:0;background:var(--pale);border:1px solid #edf1f6;border-radius:10px;padding:11px 12px}
.v2-card-facts>div:first-child {background:#eef8f5;border-color:#e6f3ee}
.v2-card-facts dt {font-size:12px;margin-bottom:4px}
.v2-card-facts dd {font-size:21px;letter-spacing:-.02em}
.v2-card-facts dd small {font-size:12px;font-weight:500;display:block;line-height:1.65;letter-spacing:0;margin-top:3px}
.v2-card-facts dd.v2-value-unknown,.v2-hero-facts dd.v2-value-unknown {font-size:14px;line-height:1.65;font-weight:500;letter-spacing:0}
.v2-card-more {font-size:14px;margin:3px 0 10px}
.v2-card-more>summary {font-size:14px!important;color:var(--muted);font-weight:500!important}
.v2-card-more p {margin:10px 0}
.v2-card-more dd {font-size:15px;font-weight:500}
.v2-card-more>a {display:block;min-height:40px;padding:8px 0;font-size:14px;color:var(--blue)}
.v2-card-actions {display:grid;gap:8px;margin-top:12px}
.v2-app .v2-card-secondary {display:grid;grid-template-columns:minmax(0,1fr)}
.v2-app .v2-card-secondary .v2-button {font-size:14px;border-color:#e4eaf2}
.v2-card-reason {font-size:13px;color:var(--blue);margin-bottom:8px}
.v2-card-media--compact {height:51px;background:white}
.v2-gym-card--compact .v2-card-body {padding-top:5px}
.v2-gym-card--compact .v2-card-body h3 {font-size:18px}
.v2-gym-card--compact .v2-card-price {font-size:22px;margin-bottom:13px}
.v2-gym-card--compact .v2-access {font-size:14px;margin-bottom:11px}
.v2-gym-card--compact .v2-card-facts dd {font-size:19px}
.v2-gym-card--compact .v2-card-facts dd.v2-value-unknown {font-size:14px}
.v2-route-links,.v2-area-links {display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.v2-route-links>a {display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:12px;padding:17px 15px;border:1px solid var(--line);border-radius:14px;text-decoration:none;background:white;min-height:90px}
.v2-route-links>a:hover {border-color:#e8a2bc;background:#fffafd}
.v2-link-icon {display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:var(--soft);color:var(--pink);font-size:17px;font-weight:800}
.v2-route-links>a:nth-child(2) .v2-link-icon {background:#edf4ff;color:var(--blue)}
.v2-route-links>a:nth-child(3) .v2-link-icon {background:var(--mint);color:#2e6b56}
.v2-route-links strong {display:block;font-size:17px;line-height:1.5}
.v2-route-links small {display:block;color:var(--muted);font-size:13px;line-height:1.6;margin-top:3px}
.v2-route-arrow {color:var(--muted)}
.v2-information {background:var(--pale);padding:22px 18px;border:1px solid var(--line);border-radius:14px;margin-top:28px}
.v2-information h2 {font-size:18px;margin-bottom:12px}
.v2-information p,.v2-information summary {font-size:14px!important;color:var(--muted)}
.v2-text-link {display:inline-flex;min-height:44px;align-items:center;font-size:14px;color:var(--blue);margin-top:10px}
.v2-note {font-size:13px;color:var(--muted);line-height:1.8;margin-top:12px}
.v2-empty,.v2-missing {padding:18px;background:var(--pale);border:1px solid var(--line);border-radius:12px;font-size:15px;line-height:1.75}
.v2-profile-label {display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.v2-profile-label .v2-eyebrow {margin:0}
.v2-hero {display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding:20px 0 22px}
.v2-hero h1 {font-size:27px;margin:12px 0}
.v2-access--hero {font-size:16px;margin-bottom:16px}
.v2-hero-facts {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.v2-hero-facts>div {background:var(--pale);border:1px solid #e9eef5;border-radius:12px;padding:12px;min-width:0}
.v2-hero-facts dd {font-size:20px;margin-top:4px}
.v2-hero-facts dd small {display:block;font-size:13px;font-weight:500;line-height:1.7}
.v2-hero-facts>.v2-main-price {grid-column:1/-1;padding:16px;background:var(--soft);border-color:#fae4ed}
.v2-hero-facts>.v2-main-price dd {font-size:28px;font-variant-numeric:tabular-nums}
.v2-hero-facts>.v2-main-price dd small {display:inline-block;margin-left:6px;font-size:14px}
.v2-hero-facts>.v2-hero-hours {grid-column:1/-1}
.v2-hero-facts>.v2-hero-hours dd {font-size:17px}
.v2-actions {display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 12px}
.v2-hero .v2-actions>* {flex:1;padding:12px 8px;font-size:15px;white-space:nowrap}
.v2-hero-photo {border-radius:16px;overflow:hidden;background:var(--pale)}
.v2-hero-photo>img {width:100%;height:175px}
.v2-hero-photo figcaption {font-size:11px;padding:5px 12px;text-align:right;color:var(--muted)}
.v2-hero-photo.v2-photo-empty {height:96px;border:1px solid var(--line)}
.v2-hero-photo.v2-photo-empty>img {width:30px;height:30px;margin:0}
.v2-hero-photo.v2-photo-empty p {padding:0}
.v2-anchor-nav {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line);margin:0 -2px}
.v2-anchor-nav a {padding:13px 3px;text-decoration:none;text-align:center;font-size:14px;font-weight:700;border-bottom:2px solid transparent}
.v2-anchor-nav a:hover {color:var(--pink);border-color:var(--pink)}
.v2-comparison {padding:22px 18px;border:1px solid #f4dce6;border-radius:17px;background:#fff6f9;margin-top:28px}
.v2-comparison h2 {font-size:22px;margin-top:8px}
.v2-comparison h2 span,.v2-rank {display:inline-block}
.v2-stat-grid dd small {display:block;font-size:13px;font-weight:500}
.v2-comparison .v2-eyebrow {font-size:12px}
.v2-comparison-lead {font-size:16px;line-height:1.9}
.v2-comparison-lead strong {color:var(--pink);font-size:24px;white-space:nowrap}
.v2-stat-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:20px 0 12px}
.v2-stat-grid>div {padding:13px 12px;background:white;border:1px solid var(--line);border-radius:10px;min-width:0}
.v2-stat-grid dt {font-size:12px}
.v2-stat-grid dd {font-size:20px;margin-top:5px}
.v2-stat-grid>div:last-child dd {font-size:15px;line-height:1.65;text-wrap:balance}
.v2-method {font-size:14px;margin-top:14px}
.v2-method>summary {color:var(--blue);font-size:14px!important}
.v2-method[open]>p {margin:14px 0}
.v2-table-scroll {max-width:100%;border-radius:12px;overflow:hidden}
table {width:100%;border-collapse:collapse;text-align:left;font-size:15px}
caption {display:block;text-align:left;font-size:13px;color:var(--muted);padding:0 0 16px;line-height:1.8;text-wrap:balance}
table,thead,tbody,tr,th,td {display:block}
thead {display:none}
tbody {display:grid;gap:16px}
tr {padding:18px;background:var(--pale);border:1px solid var(--line);border-radius:13px;min-width:0}
th,td {padding:10px 0;overflow-wrap:anywhere}
th {font-size:17px;border-bottom:1px solid var(--line);padding-top:0;margin-bottom:5px}
th small,td small {display:block;font-size:13px;font-weight:500;color:var(--muted);margin-top:5px;line-height:1.75}
.v2-plan-mark {color:var(--pink);font-weight:700;font-size:13px}
.v2-plan-table tr {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.v2-plan-table th {grid-column:1/-1}
.v2-plan-table td:nth-child(2) {grid-column:1/-1;font-size:21px;font-weight:700}
.v2-plan-table td::before {content:attr(data-label);display:block;font-size:13px;color:var(--muted);font-weight:500;margin-bottom:4px}
.v2-plan-table td:nth-child(5) {grid-column:1/-1;border-top:1px solid var(--line);margin-top:6px;font-weight:700}
.v2-inline-facts,.v2-detail-facts {display:grid;margin:20px 0;gap:0}
.v2-inline-facts>div,.v2-detail-facts>div {display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}
.v2-inline-facts dd,.v2-detail-facts dd {font-size:16px;font-weight:500;line-height:1.8}
.v2-tags--large {gap:10px}
.v2-tags--large li {padding:10px 13px;font-size:15px;background:var(--mint);color:#335c4e}
.v2-tags--large small {font-size:13px}
#nearby>p {font-size:14px;color:var(--muted);margin-bottom:20px}
.v2-referral>p {font-size:15px}
.v2-referral .v2-missing {margin:16px 0}
.v2-referral-small {display:block;min-height:44px;padding:12px 0;font-size:13px;color:var(--muted)}
.v2-owner {margin-top:30px;padding:22px 18px;border:1px solid var(--line);border-radius:14px;background:var(--pale)}
.v2-owner h2 {font-size:18px;margin:0 0 8px}
.v2-owner p {font-size:14px;color:var(--muted)}
.v2-owner .v2-button {margin-top:16px;width:100%;font-size:14px}
#sources>p {font-size:14px;color:var(--muted)}
.v2-source-disclosure {margin-top:12px}
.v2-sources {padding:0;list-style:none;display:grid;gap:12px}
.v2-sources li {border:1px solid var(--line);border-radius:10px;padding:15px;font-size:15px;background:var(--pale)}
.v2-sources small {display:block;font-size:13px;color:var(--muted);line-height:1.8;margin-top:7px}
#sources details ul:not(.v2-sources) {font-size:14px}
.v2-back {display:inline-flex;align-items:center;min-height:48px;margin-top:24px;font-size:14px}

.v2-footer {max-width:1240px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 20px;margin:auto;padding:24px 16px;color:var(--muted);font-size:12px}
.v2-footer a {min-height:36px;display:inline-flex;align-items:center}
.v2-footer>span {width:100%}
.v2-toast {position:fixed;bottom:22px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:12px 18px;background:var(--ink);color:white;border-radius:12px;font-size:14px;z-index:20;box-shadow:0 5px 20px #172f4d14}
@media(min-width:760px) {
  .v2-preview {padding:6px max(24px,calc((100% - 1152px)/2));font-size:12px}
  .v2-header {padding:22px 32px}
  .v2-brand img {width:40px;height:40px}.v2-brand strong{font-size:28px}.v2-brand small{font-size:10px}
  .v2-header nav a {font-size:16px}
  .v2-shell {padding:0 32px 56px}
  .v2-area-hero {padding:32px 0}
  .v2-area-hero h1 {font-size:38px;line-height:1.5}
  .v2-pilot-hero {padding:46px 0 40px;background:radial-gradient(ellipse at 70% 25%,#edf9f5 0,transparent 65%)}
  .v2-pilot-hero h1 {font-size:39px}
  .v2-summary-cards {max-width:610px;gap:14px;margin-top:25px}
  .v2-summary-cards>div {padding:17px 14px}.v2-summary-cards dt{font-size:14px}.v2-summary-cards dd{font-size:35px}.v2-summary-cards>div>span{font-size:13px}
  .v2-browse-cta {width:auto;padding:14px 25px}
  .v2-mobile-break {display:none}
  .v2-area-page {display:grid;grid-template-columns:1.2fr 1fr;column-gap:34px}
  .v2-area-page>.v2-breadcrumbs {grid-column:1/-1}
  .v2-area-page>.v2-area-overview {align-self:center;margin:0}
  .v2-area-page>.v2-filter,.v2-area-page>.v2-section {grid-column:1/-1}
  .v2-overview-numbers {display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .v2-overview-numbers strong {display:block;font-size:25px;margin:3px 0}
  .v2-area-overview {padding:20px}
  .v2-filter {grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}
  .v2-filter-extra {grid-column:1/-1}
  .v2-section {padding:38px 0}.v2-results{padding-top:16px}
  .v2-section-heading h2 {font-size:25px}.v2-result-count{font-size:14px}
  .v2-area-grid,.v2-nearby-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
  .v2-app .v2-area-grid {align-items:stretch}
  .v2-app .v2-area-grid>.v2-gym-card {display:flex;flex-direction:column}
  .v2-app .v2-area-grid .v2-card-body {display:flex;flex:1;flex-direction:column}
  .v2-app .v2-area-grid .v2-card-actions {margin-top:auto;padding-top:12px}
  .v2-card-photo,.v2-card-photo>img {height:180px}.v2-card-photo.v2-photo-empty{height:180px}.v2-card-photo.v2-photo-empty>img{width:29px;height:29px}
  .v2-card-body {padding:20px}.v2-card-body h3{font-size:21px}
  .v2-card-price {font-size:27px}
  .v2-route-links {grid-template-columns:repeat(3,minmax(0,1fr))}
  .v2-route-links>a {grid-template-columns:38px minmax(0,1fr) 16px;padding:18px 14px;gap:10px}
  .v2-link-icon {width:38px;height:38px}.v2-route-links strong{font-size:16px}
  .v2-information {padding:26px}
  .v2-hero {grid-template-columns:1.16fr 1fr;gap:36px;padding:30px 0;align-items:center}
  .v2-hero h1 {font-size:34px}
  .v2-hero-photo>img {height:345px}
  .v2-hero-photo.v2-photo-empty {height:260px}
  .v2-hero-facts>.v2-main-price dd {font-size:30px}
  .v2-anchor-nav {display:flex;gap:28px}.v2-anchor-nav a{font-size:15px;padding:16px 10px}
  .v2-comparison {padding:28px}
  .v2-comparison h2 {font-size:27px}.v2-comparison-lead strong{font-size:29px}
  .v2-stat-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.v2-stat-grid>div{padding:18px}.v2-stat-grid dd{font-size:23px}
  .v2-area-overview .v2-stat-grid {grid-template-columns:1fr 1fr}
  table {display:table}thead{display:table-header-group;background:var(--pale)}tbody{display:table-row-group}tr,.v2-plan-table tr{display:table-row}th,td{display:table-cell;padding:16px;border-bottom:1px solid var(--line);font-size:15px}
  .v2-table-scroll {overflow-x:auto;border:1px solid var(--line)}
  caption {display:table-caption;padding:15px}.v2-plan-table td::before{display:none}.v2-plan-table td:nth-child(2){font-size:16px}
  th small,td small {font-size:13px}tbody th{min-width:210px}.v2-method tbody th{min-width:190px}
  .v2-inline-facts {grid-template-columns:1fr 1fr;gap:0 25px}
  .v2-detail-facts {grid-template-columns:1fr 1fr;gap:0 25px}.v2-detail-facts>div:nth-child(-n+2){grid-column:1/-1}
  .v2-owner {display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px}.v2-owner .v2-button{width:auto;margin:0;flex-shrink:0}
  .v2-sources {grid-template-columns:1fr 1fr}
  .v2-footer {padding:30px 32px}.v2-footer>span{width:auto;margin-right:auto;align-self:center}
}
@media(min-width:1100px) {
  .v2-area-grid,.v2-nearby-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
  .v2-pilot-hero h1 {font-size:43px}
  .v2-area-hero h1 {font-size:42px}
  .v2-card-body {padding:20px 18px}.v2-card-body h3{font-size:20px}.v2-card-price{font-size:25px}
  .v2-route-links>a {padding:20px;grid-template-columns:44px minmax(0,1fr) 18px;gap:14px}.v2-link-icon{width:44px;height:44px}.v2-route-links strong{font-size:18px}
  .v2-hero h1 {font-size:39px}
}
@media(prefers-reduced-motion:reduce) {
  html{scroll-behavior:auto}*{animation:none!important;transition:none!important}
}

/* Match the existing regional FV assets and palette; keep the pilot layout. */
.v2-area-hero {
  background:
    linear-gradient(180deg,transparent 180px,#fff 310px),
    linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.90) 32%,rgba(255,255,255,.24) 100%),
    url("/assets/img/home-hero-fv-desktop-gym-20260624.png") right top / auto 300px no-repeat,
    #eef7ff;
}
.v2-area-hero h1 {color:#103a6d}
.v2-area-hero .v2-eyebrow {color:#1269d7}
.v2-area-hero>p:not(.v2-eyebrow):not(.v2-note) {color:#0b57b8}
.v2-area-hero .v2-button--primary {background:#1269d7;border-color:#1269d7}
.v2-area-hero .v2-button--primary:hover {background:#0b57b8}
.v2-area-hero .v2-summary-cards>div {background:#eef7fff2;border-color:#d5e6f3}
.v2-area-hero .v2-summary-cards>div:nth-child(2) {background:#eaf8f5f2;border-color:#d6eee9}
@media(min-width:760px) {
  .v2-area-hero {
    background:
      linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.93) 44%,rgba(255,255,255,.16) 76%),
      url("/assets/img/home-hero-fv-desktop-gym-20260624.png") right top / auto 100% no-repeat,
      linear-gradient(135deg,#fff 0%,#eaf7ff 100%);
  }
}
.v2-app .v2-area-hero>p.v2-pilot-count {margin-top:17px;font-size:14px;color:var(--muted)}
.v2-no1{margin-top:20px;padding:18px;border:1px solid #dce9f2;border-radius:16px;background:#f6fbff;color:#173a64}
.v2-no1 strong{display:block;font-size:clamp(17px,4vw,22px);line-height:1.5}
.v2-no1 p{margin:10px 0;font-size:13px;line-height:1.75;color:#3d536c}
.v2-no1 a{font-size:14px;font-weight:700;color:#1269d7}
.v2-prefecture-directory .v2-search{display:block;margin:18px 0}
.v2-city-group{margin:10px 0;border:1px solid #e4eaf1;border-radius:12px;background:#fff;padding:0 14px}
.v2-city-group>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px}
.v2-city-group>summary small{color:#506784}
.v2-city-group ul{list-style:none;margin:0;padding:0 0 10px}
.v2-city-group li{padding:10px 0;border-top:1px solid #edf1f6;overflow-wrap:anywhere}
.v2-city-group li a{color:#1269d7;font-weight:700}
.v2-city-group[hidden],.v2-city-group li[hidden]{display:none}
.v2-more-button{display:block;width:min(100%,360px);margin:24px auto 0;min-height:48px}
.v2-more-button[hidden]{display:none}
.v2-price-observation{padding:16px;border:1px solid #e4eaf1;border-radius:14px;background:#f7fafc;overflow-wrap:anywhere}
.v2-price-observation p{margin:0 0 10px}
.v2-price-observation p+p{color:#233d60;font-weight:700}
.v2-price-observation small{color:#51647a}
