/* WMG spot – prototype CSS (theme implementation will replace) */
.spot-detail,.spot-cards,.spot-filter{max-width:1080px;margin:0 auto;padding:0 16px;font-family:"Noto Sans JP",sans-serif;line-height:1.7}
.spot-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}
.spot-tag{font-size:12px;padding:2px 10px;border-radius:999px;background:#eef1f4;color:#333;text-decoration:none}
.spot-tag--category{background:#e3f1e8}.spot-tag--traveler{background:#fdf1dc}
.spot-detail__title{font-size:28px;margin:8px 0 12px}
.spot-detail__anchors{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;margin-bottom:24px;border-bottom:1px solid #ddd;padding-bottom:12px}
.spot-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.spot-gallery__item{margin:0}.spot-gallery img,.spot-gallery__single{width:100%;height:auto;border-radius:6px}
.spot-lead{font-size:18px;font-weight:600;margin:24px 0 12px}
.spot-detail__section{margin:40px 0}
/* .spot-detail__section h2{font-size:22px;border-left:5px solid #7a1f2b;padding-left:12px;margin-bottom:16px} */
.spot-dl{margin:0;border-top:1px solid #ddd}
.spot-row{display:grid;grid-template-columns:200px 1fr;border-bottom:1px solid #ddd}
.spot-row dt{background:#ede7d1;padding:12px;font-weight:600}.spot-row dd{margin:0;padding:12px}
@media(max-width:640px){.spot-row{grid-template-columns:1fr}.spot-row dt{padding-bottom:4px}}
.spot-btn{display:inline-block;padding:12px 28px;border-radius:6px;background:#7a1f2b;color:#fff;text-decoration:none;font-weight:600;border:2px solid #7a1f2b;cursor:pointer}
.spot-btn--outline{background:#fff;color:#7a1f2b}
.spot-btn--ota{margin:0 8px 12px 0}.spot-btn--klook{background:#ff5b00;border-color:#ff5b00}
.spot-map{width:100%;height:360px;border:0;margin-top:16px}
.spot-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin:24px auto}
.spot-card{border:1px solid #e3e3e3;border-radius:8px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.spot-card__image{display:block;aspect-ratio:4/3;background:#eee}.spot-card__image img{width:100%;height:100%;object-fit:cover;display:block}
.spot-card__noimage{display:block;width:100%;height:100%;background:repeating-linear-gradient(45deg,#eee,#eee 10px,#f6f6f6 10px,#f6f6f6 20px)}
.spot-card__body{padding:12px 14px 16px}.spot-card__title{font-size:16px;margin:6px 0}.spot-card__title a{color:#222;text-decoration:none}
.spot-card__summary{font-size:13px;color:#555;margin:6px 0}
.spot-badge{display:inline-block;font-size:12px;padding:2px 8px;border:1px solid #7a1f2b;color:#7a1f2b;border-radius:4px}
.spot-filter{background:#f7f7f7;padding:16px;border-radius:8px;margin:24px auto}
.spot-filter__group{border:0;padding:0;margin:0 0 12px}.spot-filter__group legend{font-weight:700;font-size:14px;margin-bottom:4px}
.spot-filter__group label{display:inline-block;margin:0 12px 6px 0;font-size:14px}
.spot-filter__reset{margin-left:16px;font-size:14px}

.spot-archive{max-width:1080px;margin:32px auto;padding:0 16px;font-family:"Noto Sans JP",sans-serif}
.spot-archive__title{font-size:28px;margin:0 0 4px}.spot-archive__count{color:#666;margin:0 0 16px}
.spot-pagination{text-align:center;margin:24px 0}.spot-pagination .page-numbers{display:inline-block;padding:6px 12px;margin:0 2px;border:1px solid #ddd;border-radius:4px;text-decoration:none;color:#333}.spot-pagination .current{background:#7a1f2b;color:#fff;border-color:#7a1f2b}
.spot-filter--ajax button[type=submit]{display:none}
.spot-filter__status{margin:8px 0 0;font-size:13px;color:#666}
#spot-results.is-loading{opacity:.5;transition:opacity .2s}
.spot-pagination a[data-page]{cursor:pointer}
