/* Approved morning-town design, adapted to the live WordPress portal. */
:root{--primary:#b64532;--primary-dark:#963825;--primary-soft:#fff5ee;--accent:#b64532;--brand:#b64532;--ink:#35414a;--muted:#667078;--subtle:#667078;--line:#d9e1e2;--line-dark:#b6c5cb;--surface:#fffefa;--surface-alt:#eff7fa;--mint:#eff7fa;--mint-strong:#dbeaf0;--peach:#fff7dc;--sky:#eaf4f8;--max:1160px}
body{background:var(--surface);color:var(--ink)}
h1,h2,h3{font-family:"Hiragino Maru Gothic ProN","Hiragino Sans",Meiryo,sans-serif;font-weight:800;line-break:strict;word-break:auto-phrase;text-wrap:balance;overflow-wrap:normal}
.site-header{position:relative;background:#fffefa;border-bottom:2px solid #35414a}
.utility-bar,.header-search{display:none}.header-main{display:flex;justify-content:space-between;min-height:112px;gap:24px;padding-block:8px}.brand{display:block;flex:none}.brand-sub{display:block;font-size:12px;line-height:1.5;color:#536570;letter-spacing:0}.hug-wordmark{display:block;width:252px;height:84px;object-fit:contain;mix-blend-mode:multiply}.desktop-nav{gap:25px}.desktop-nav a{font-size:16px}.desktop-nav a:last-child{color:var(--primary)}
.site-footer{background:#eaf4f8;border:0}.footer-brand{font-size:25px}.site-footer a{color:var(--primary)}
.button,.chip,.status-tag{border-radius:5px;box-shadow:none}.button:hover,.purpose-card:hover,.result-card:hover{transform:none;box-shadow:none}.status-tag.yes{background:#fff;border:1px solid #d9e1e2;color:#b64532}
.spot-art{display:inline-block;width:64px;height:64px;flex:none;background:url('illustration-icons.png') no-repeat;background-size:300% 300%;mix-blend-mode:multiply;vertical-align:middle}
.art-utensils{background-position:0 0}.art-trees{background-position:50% 0}.art-cross{background-position:100% 0}.art-stroller{background-position:0 50%}.art-diaper{background-position:50% 50%}.art-chair{background-position:100% 50%}.art-meal{background-position:0 100%}
.art-private-room,.art-tatami,.art-toilet,.art-nursing{background-image:url('equipment-places.png');background-size:200% 200%}.art-private-room{background-position:0 0}.art-tatami{background-position:100% 0}.art-toilet{background-position:0 100%}.art-nursing{background-position:100% 100%}
.search-heading{position:relative;padding-right:120px;min-height:140px}.search-heading:after{content:'';position:absolute;right:24px;bottom:0;width:74px;height:110px;background:url('bird-morning.png') center/contain no-repeat;mix-blend-mode:multiply}
.filter-panel{background:#f1f7fa;top:24px}.filter-title{background:none}.filter-check input{accent-color:#b64532}.search-layout{gap:28px}
.result-card{grid-template-columns:78px minmax(0,1fr);padding:24px;border:1px solid #d4e2e8;border-radius:6px;background:#fff;margin-bottom:16px}.result-image{min-height:76px;height:76px;width:76px;background:none;border:0;display:flex;align-items:center;justify-content:center}.result-image .spot-art{width:76px;height:76px}.result-side{grid-column:2;align-items:flex-end}.result-title{font-size:21px}.result-type{font-size:14px;color:#b64532}.result-description{font-size:14px}.result-meta{font-size:13px}
.facility-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.facility-grid.hug-public{grid-template-columns:repeat(4,minmax(0,1fr))}.facility-cell{background:#fff;border:1px solid #d6e1e5;padding:20px 8px}.facility-cell .spot-art{display:block;width:76px;height:76px;margin:0 auto 10px}.facility-cell dt{font-size:14px}.availability.yes{color:#b64532}.availability.unknown{color:#667078}
.visit-facts>div,.unknown-guide{background:#eff7fa}.detail-sidebar .side-panel{background:#fffdf4}.detail-section-title{font-size:23px}.spot-header h1{font-size:32px}.fact-row dt{background:#f0f6f8}.fact-row dd{background:#fffefa}.verified-grid .spot-art{width:52px;height:52px}.visit-facts .spot-art{width:30px;height:30px}.condition-button .spot-art{width:38px;height:38px}.purpose-icon .spot-art{width:60px;height:60px}
.hug-home svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;vertical-align:middle;flex:none}.hug-home .btn{gap:9px;display:inline-flex;align-items:center;justify-content:center}.hug-home .photo-body>.save{display:flex;align-items:center;justify-content:center}.hug-home .save[aria-pressed=true]{color:#b64532;border-color:#b64532}.hug-home .save[aria-pressed=true] svg{fill:#fff0e3}
@media(max-width:900px){.desktop-nav{gap:16px}.desktop-nav a{font-size:14px}.header-main{min-height:102px}.hug-wordmark{width:222px;height:74px}.filter-panel{top:0}.search-heading{padding-right:110px}}
@media(max-width:600px){.header-main{min-height:93px;gap:12px}.hug-wordmark{width:195px;height:65px}.brand-sub{font-size:10px}.header-inner{padding-inline:18px}.desktop-nav{display:none}.mobile-menu-button{display:flex;margin-left:auto}.mobile-menu{background:#fffefa}.search-heading{padding-right:80px}.search-heading:after{right:12px;width:56px;height:80px}.search-heading .page-title{font-size:25px}.result-card{grid-template-columns:52px minmax(0,1fr);padding:17px;gap:12px}.result-image,.result-image .spot-art{width:52px;height:60px;min-height:60px}.result-title{font-size:19px}.result-side{grid-column:2}.facility-grid,.facility-grid.hug-public{grid-template-columns:repeat(2,minmax(0,1fr))}.facility-cell{padding:14px 4px}.spot-header h1{font-size:26px}.detail-section-title{font-size:21px}.site-footer{padding-bottom:100px}}

/* Keep Japanese headings and labels readable without forced word splitting. */
p,li,a,button,th,td,dt,dd,figcaption,label,summary{line-break:strict;word-break:auto-phrase;overflow-wrap:normal}
.verification-label,.detail-category{font-size:14px}
.hug-home .photo-body form .save{display:flex;align-items:center;justify-content:center}
.result-equipment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#eff7fa;padding:10px;margin:14px 0 0;border-radius:4px}.result-equipment>div{min-width:0;text-align:center}.result-equipment dt{font-size:12px;font-weight:400}.result-equipment dd{margin:0;font-size:14px;font-weight:700;color:#b64532}.result-equipment .unknown{color:#667078;font-size:12px}
@media(max-width:600px){.result-equipment{padding:8px 3px;gap:4px}.result-equipment dt{font-size:11px}.result-equipment dd{font-size:12px}}

.mobile-menu{top:100%}

/* September 14: lighter frame and illustrated footer identity. */
.site-header{border-bottom:0}
.site-footer .footer-brand{display:inline-block;margin-bottom:12px}
.site-footer .hug-wordmark{max-width:100%;height:auto}
/* Detail v2: identity, real photos, one equipment section, then practical actions. */
.th-single .spot-header{margin-bottom:18px;padding-bottom:0;border:0;align-items:start}
.spot-overview{display:flex;align-items:center;gap:28px;margin:0 0 24px}
.spot-gallery{display:flex;flex:1 1 58%;min-width:0;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:6px;scroll-padding:0}
.spot-gallery>a{flex:0 0 88%;scroll-snap-align:start;min-width:0}.spot-gallery>a:only-child{flex-basis:100%}
.spot-gallery img{display:block;width:100%;height:280px;object-fit:cover;border-radius:6px}
.spot-official-photo{margin:0;flex:0 1 340px;min-width:0}.spot-official-photo img{display:block;width:100%;max-height:250px;object-fit:contain;border-radius:6px}.spot-official-photo figcaption{font-size:12px;margin-top:6px;color:var(--muted)}
.spot-introduction{flex:1 1 38%;margin:0;font-size:16px;line-height:1.9;min-width:0}
.spot-category-art{display:flex;align-items:center;gap:14px;flex:none;padding:12px 18px;background:#eff7fa;border-radius:6px}.spot-category-art .spot-art{width:80px;height:80px}.spot-category-art>span:last-child{font-size:15px;font-weight:700}
.th-single .anchor-nav{top:0;margin-top:0;background:#fffefa;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:6px 0;scrollbar-width:thin}
.th-single .anchor-nav a{font-size:14px}.th-single .anchor-nav a.is-current{background:transparent;text-decoration:underline;text-underline-offset:9px}
.th-single .detail-main>section,.th-single #nearby,.community-disclosure{scroll-margin-top:72px}
.th-single .detail-aside{top:78px}.th-single .detail-grid{padding-top:24px}
.equipment-highlights{font-size:15px;color:var(--primary);font-weight:700;margin:0 0 14px}
.th-single .facility-cell.yes{border-color:#b9cbd2}.th-single .facility-cell.unknown{background:#fafbfb}.th-single .facility-cell.unknown .spot-art{opacity:.65}
.equipment-meta{margin-top:14px;font-size:13px;color:var(--muted);line-height:1.8}.equipment-meta p{margin:0 0 8px}.equipment-meta a{color:var(--primary)}.equipment-help{margin-bottom:12px}.equipment-help summary{cursor:pointer}.equipment-help p{padding-top:8px}.equipment-meta>.text-button{display:inline-block;font-size:14px;padding-block:8px}
.community-disclosure{border:1px solid var(--line);border-radius:6px;margin-top:12px;background:#fff}.community-disclosure>summary{padding:18px;font-size:15px;font-weight:700;cursor:pointer}.community-body{padding:0 18px 18px}.community-disclosure[open]>summary{border-bottom:1px solid var(--line);margin-bottom:18px}
@media(max-width:900px){
 .detail-mobile-bar.hug-action-bar{grid-template-columns:1.2fr 1fr 1fr;padding-bottom:env(safe-area-inset-bottom);background:#fffefa}
 .detail-mobile-bar.hug-action-bar.no-off{grid-template-columns:1.2fr 1fr}
 .detail-mobile-bar.hug-action-bar .mbar-item{font-size:13px;min-height:62px;background:#fffefa}
 .detail-mobile-bar.hug-action-bar .mbar-map{color:#b64532;font-weight:800}
 .th-single .detail-page{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
 .th-single .spot-action-panel{display:none}
 .th-single .spot-header{grid-template-columns:1fr}
 .th-single.admin-bar .anchor-nav{top:32px}
}
@media(max-width:600px){
 .spot-overview{flex-wrap:wrap;gap:14px;margin-bottom:18px}.spot-gallery{flex-basis:100%}.spot-gallery img{height:220px}.spot-official-photo{flex-basis:100%;text-align:center}.spot-official-photo img{max-width:340px;max-height:220px;margin:auto}.spot-introduction{flex-basis:100%;font-size:14px;line-height:1.85}.spot-category-art{padding:4px 12px;gap:10px}.spot-category-art .spot-art{width:56px;height:56px}.spot-category-art>span:last-child{font-size:14px}
 .th-single .spot-header h1{font-size:25px;line-height:1.5}.th-single .anchor-nav{margin-inline:0}.th-single .anchor-nav a{padding:10px;font-size:13px}.th-single .detail-section-title{font-size:21px}.th-single .detail-aside{display:block}.th-single .community-body{padding-inline:12px}.community-disclosure>summary{padding:16px 12px}.th-single .facility-cell dt{font-size:13px}
}
/* Category-specific visit planning and related outings. */
.visit-focus{margin:0 0 26px;padding:22px 24px;background:#eff7fa;border-radius:6px}
.visit-focus h2{font-size:20px;margin:0 0 14px}.visit-focus dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}.visit-focus dt{font-weight:700;font-size:15px;margin-bottom:6px}.visit-focus dd{margin:0;font-size:14px;line-height:1.85}.visit-focus a{color:var(--primary);text-underline-offset:3px}
.th-single .detail-grid{display:block}.th-single .detail-main{max-width:920px;margin-inline:auto}
.next-outing{margin-top:34px}.next-note{font-size:13px;color:var(--muted);margin:10px 0 22px;line-height:1.8}.next-outing h3{font-size:19px;margin:24px 0 14px}.outing-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.outing-card{border:1px solid #cbd9df;border-radius:6px;overflow:hidden;background:#fff;min-width:0;display:flex;flex-direction:column}.outing-image{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;background:#f4f8fa;flex:none}.outing-image img{display:block;width:100%;height:100%;aspect-ratio:16/10;object-fit:cover}.outing-image .spot-art{width:84px;height:84px}.outing-body{padding:16px;display:flex;flex-direction:column;flex:1}.outing-body p{font-size:13px;color:var(--muted);margin:0 0 9px}.outing-body h4{font-size:17px;line-height:1.6;margin:0 0 12px}.outing-body h4 a{color:var(--ink);text-decoration:none}.outing-body .outing-distance{margin-top:auto}.outing-detail{font-size:14px;color:var(--primary)}.outing-credit{font-size:12px;color:var(--muted);margin-top:8px}.outing-more{display:inline-block;margin-top:20px;color:var(--primary);font-size:14px}
@media(max-width:700px){.visit-focus{padding:18px}.visit-focus h2{font-size:19px}.visit-focus dl{grid-template-columns:1fr;gap:16px}.visit-focus dl>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px}.visit-focus dt{font-size:14px}.visit-focus dd{font-size:14px}.outing-cards{display:flex;overflow-x:auto;gap:14px;scroll-snap-type:x mandatory;scroll-padding:2px;padding:2px 2px 12px;overscroll-behavior-x:contain}.outing-card{flex:0 0 82%;scroll-snap-align:start}.outing-card:last-child{margin-right:2px}.next-outing h3{font-size:18px}}

/* Match the detail body to the surrounding shared container. */
.th-single .detail-main{max-width:none;width:100%;min-width:0;margin-inline:0}
.outing-card,.home-card.photo-card{position:relative;isolation:isolate}
a.card-cover-link{position:absolute;inset:0;z-index:1;border-radius:6px;text-decoration:none}
a.card-cover-link:focus-visible{outline:3px solid #237fa4;outline-offset:-3px}
.outing-card{border:1px solid #cbd9df;background:#fff}
.outing-card:hover{border-color:#7597a7}
.outing-credit{position:relative;z-index:2}

.result-card{position:relative;isolation:isolate}.result-card:hover{border-color:#7597a7}
