.gw-mobile-summary{display:none}
.gw-mobile-summary a{color:#b8ccff;text-underline-offset:3px}

/* Standalone test only. Every visual override is restricted to <=650 CSS pixels. */
@media(max-width:650px){
  html {scroll-padding-top:16px;}
  .wrap {padding-left:18px;padding-right:18px;}
  section {margin:36px 0;}
   .hero h1 {font-size:30px;line-height:1.25;margin:0 0 12px;}
  h2 {font-size:23px;line-height:1.4;margin:0 0 16px;word-break:keep-all;}
  h3 {font-size:18px;line-height:1.45;margin-bottom:10px;word-break:keep-all;}
  p {font-size:16px;line-height:1.75;word-break:keep-all;overflow-wrap:anywhere;}
  .site-header .wrap {padding-top:12px;padding-bottom:10px;}
  .main-nav {display:flex;gap:16px;overflow-x:visible;white-space:normal;flex-wrap:wrap;padding:8px 0 4px;}
  .main-nav a {flex-shrink:0;font-size:13px;}
  .hero {margin-top:0;padding:30px 0 26px;text-align:left;}
  .hero-text {font-size:15px;line-height:1.75;margin:0 0 18px;}
  .hero .btn {box-sizing:border-box;margin:0 8px 10px 0;padding:12px 16px;font-size:14px;min-height:46px;text-align:center;}
  .hero .btn-primary {background:#aac2ff;}
  .hero .btn[href='/reserve.html'] {border:0;padding-left:2px;padding-right:2px;font-weight:500;}
  .hero-meta {font-size:12px;margin:16px 0 0;}
  .page-toc {display:flex!important;flex-wrap:wrap;gap:8px!important;margin:18px 0 0!important;justify-content:flex-start!important;}
  .page-toc a {font-size:12px!important;line-height:1.4;padding:8px 10px;background:#18213a;border:1px solid #2d3c60;border-radius:7px;text-decoration:none!important;}
  .gw-mobile-summary {display:block;margin:6px 0 18px;padding:14px;border:1px solid #3c527e;border-radius:12px;background:#111b30;}
  .gw-mobile-summary .gw-price-line {display:flex;justify-content:space-between;gap:10px;font-size:14px;line-height:1.8;color:#d4def8;}
  .gw-mobile-summary b {font-size:18px;color:#fff;white-space:nowrap;}
  .gw-mobile-summary p {font-size:12px;line-height:1.65;margin:8px 0 0;color:#bac7e7;}
  .card,.system-step,.guide-card,.link-card {padding:18px;border-radius:12px;}
  .price-grid,.system-grid,.guide-grid,.link-box,.venue-grid {gap:12px;margin-top:20px;}
  .price-table {margin-top:10px;}
  .price-table th,.price-table td {padding:11px 8px;font-size:15px;}
  .price-note {padding:14px;font-size:14px;line-height:1.7;margin-top:16px;}
  .system-step .step-num {font-size:12px;margin-bottom:6px;}
  .system-step p,.guide-card p,.link-card p {font-size:15px;line-height:1.7;margin:8px 0 0;}
  .link-card a {display:inline-block;margin-top:12px;min-height:32px;}
  .btn {padding:11px 16px;min-height:44px;box-sizing:border-box;font-size:14px;}
  .venue-card {position:relative;padding:16px;}
  .venue-image {position:absolute;top:16px;left:16px;width:80px;height:80px;aspect-ratio:1;border-radius:9px;object-fit:cover;}
  .venue-body {padding:0;}
  .venue-name {padding-left:94px;min-height:30px;font-size:20px;margin:5px 0 4px;}
  .venue-old-name {padding-left:94px;font-size:12px;min-height:24px;line-height:1.6;}
  .venue-body p {clear:both;margin:26px 0 10px;font-size:15px;line-height:1.75;}
  .venue-body:has(.venue-name + p) p {margin-top:50px;}
  .venue-body .btn {display:block;width:100%;margin:0;text-align:center;padding:10px 12px;}
  .check-list {margin-top:16px;}
  .check-list li {padding-top:12px;padding-bottom:12px;font-size:15px;}
  .faq-item {padding:0;}
  .faq-item strong[role=button] {position:relative;cursor:pointer;padding:17px 28px 17px 0;margin:0;line-height:1.6;font-size:15px;}
  .faq-item strong[role=button]::after {content:'+';position:absolute;right:1px;top:17px;color:#a9c1ff;font-size:20px;}
  .faq-item strong[aria-expanded=true]::after {content:'−';}
  .faq-item p {padding-bottom:18px;font-size:15px;line-height:1.75;}
  .faq-item strong:focus-visible {outline:2px solid #aac2ff;outline-offset:3px;border-radius:4px;}
  .gw-mobile-cost-table,.gw-mobile-cost-table tbody,.gw-mobile-cost-table tr {display:block;width:100%;}
  .gw-mobile-cost-table thead {display:block;padding:10px;background:#18213a;border-radius:8px;}
  .gw-mobile-cost-table thead tr {display:flex;flex-wrap:wrap;gap:6px 12px;}
  .gw-mobile-cost-table thead th {font-size:12px;padding:0;border:0;}
  .gw-mobile-cost-table tbody tr {margin-top:12px;padding:12px;box-sizing:border-box;background:#0c101c;border:1px solid #2b354e;border-radius:10px;}
  .gw-mobile-cost-table tbody th,.gw-mobile-cost-table tbody td {display:flex;justify-content:space-between;gap:12px;padding:7px 0;text-align:right;}
  .gw-mobile-cost-table tbody th::before,.gw-mobile-cost-table tbody td::before {content:attr(data-gw-label);font-weight:400;color:#b9c6e8;text-align:left;}
  .gw-mobile-cost-table tbody td:last-child {font-size:19px;border:0;color:#acc4ff;}
  footer {padding:26px 0;font-size:13px;}
}
.gw-mobile-venue-nav {display:none;}
@media(max-width:650px){
 .gw-mobile-venue-nav {display:flex;flex-wrap:wrap;gap:8px;margin:18px 0;}
 .gw-mobile-venue-nav a {display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border:1px solid #34466d;border-radius:7px;background:#151f35;color:#b8ccff;text-decoration:none;font-size:13px;}
}

@media(max-width:650px){
 .site-header .wrap{height:auto;min-height:64px;flex-wrap:wrap;gap:4px}
 .main-nav{width:100%;gap:8px 14px}.main-nav a{margin-left:0;min-height:32px;display:inline-flex;align-items:center}
 .venue-grid{grid-template-columns:1fr}.price-grid,.system-grid,.guide-grid,.link-box{grid-template-columns:1fr}
 .hero .wrap,.wrap,main,section,.card,.venue-card{min-width:0}
 .gw-mobile-cost-table{min-width:0!important}
 .table-scroll:has(.gw-mobile-cost-table){overflow:visible}
 .faq-item p[hidden]{display:none}.faq-item strong[role=button]{display:block}
 .gw-mobile-venue-nav a,.venue-card{scroll-margin-top:120px}
 html{scroll-padding-top:120px}
}

/* 2026-10-20 mobile cost table hotfix: keep the six-column table readable as cards */
@media (max-width:650px) {
 #price table.gw-mobile-cost-table {display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;table-layout:auto!important;white-space:normal!important;overflow:visible!important;}
 #price table.gw-mobile-cost-table caption {display:block!important;width:100%!important;box-sizing:border-box;text-align:left;white-space:normal!important;word-break:keep-all!important;overflow-wrap:break-word!important;}
 #price table.gw-mobile-cost-table thead {display:none!important;}
 #price table.gw-mobile-cost-table tbody,#price table.gw-mobile-cost-table tbody tr {display:block!important;width:100%!important;min-width:0!important;box-sizing:border-box;}
 #price table.gw-mobile-cost-table tbody tr > th,#price table.gw-mobile-cost-table tbody tr > td {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(75px,auto)!important;align-items:center!important;gap:12px!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;white-space:normal!important;word-break:keep-all!important;overflow-wrap:normal!important;text-align:right!important;}
 #price table.gw-mobile-cost-table tbody tr > th::before,#price table.gw-mobile-cost-table tbody tr > td::before {display:block!important;min-width:0!important;white-space:normal!important;word-break:keep-all!important;overflow-wrap:break-word!important;text-align:left!important;}
 #price .table-scroll:has(.gw-mobile-cost-table) {width:100%!important;min-width:0!important;overflow:visible!important;}
}
