/* Shared navigation, child-page layouts, and review fixes. Original product files stay unchanged. */
.header nav>a[aria-current=page]:not(.nav-contact){color:var(--action);text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px}
.header nav .nav-contact[aria-current=page]{background:var(--action-hover);box-shadow:inset 0 -3px 0 #fff}
.header .logo{min-height:44px;display:flex;align-items:center}
.header .menu-toggle{min-width:44px;min-height:44px}
.breadcrumb{padding-top:24px;padding-bottom:4px;font-size:13px;color:var(--muted)}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:0 12px;padding:0;margin:0;align-items:center}
.breadcrumb li{display:flex;align-items:center;min-height:44px;gap:12px;overflow-wrap:anywhere}
.breadcrumb li+li:before{content:'/';color:var(--muted)}
.breadcrumb a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.breadcrumb [aria-current=page]{color:var(--ink)}
.subpage main>.section:first-of-type{padding-top:48px}
.subpage .page-heading{font-size:clamp(34px,4.4vw,66px);line-height:1.24;letter-spacing:-2.5px;margin:0;overflow-wrap:break-word;text-wrap:balance}
.subpage .page-heading em{color:var(--action)}
.subpage .section-label{margin-bottom:40px}
.subpage .about-grid{gap:64px}
.subpage .film .page-heading{margin-top:30px;color:var(--cream)}
.subpage .film .page-heading em{color:var(--cream)}
.subpage .contact .page-heading{font-size:clamp(32px,3.4vw,52px);margin-top:24px}
.subpage .only-copy h3{font-size:clamp(28px,2.8vw,41px)}
.section-actions{display:flex;flex-wrap:wrap;gap:12px 24px;margin:40px auto 0;max-width:1440px;width:calc(100% - 112px)}
section.wrap>.section-actions{width:100%}
.detail-link,.store-detail-link{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:48px;padding:10px 0;border-bottom:1px solid currentColor;color:var(--action);font-size:14px;font-weight:600;line-height:1.5}
.detail-link:hover,.store-detail-link:hover{color:var(--action-hover)}
.detail-link span,.store-detail-link span{font-size:20px}
.film .detail-link{color:#fff}
.store-card h3 a{display:block;text-underline-offset:6px}
.store-card h3 a:hover{text-decoration:underline}
.store-detail-link{margin-top:24px;width:100%}
.footer-links{display:flex;flex-wrap:wrap;gap:4px 28px;padding:0 0 28px;font-size:14px;font-weight:600}
.footer-links a{display:inline-flex;align-items:center;min-height:44px}
.footer-links a:hover{color:var(--action);text-decoration:underline;text-underline-offset:5px}
.related-pages{padding-top:64px;padding-bottom:72px;border-top:1px solid var(--line)}
.related-pages h2{font-size:28px;letter-spacing:-1px;margin-top:12px}
.related-pages>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}
.related-pages>div>a{border:1px solid var(--line);padding:24px;display:flex;gap:24px;justify-content:space-between;align-items:center;font-size:18px;font-weight:600;min-width:0;transition:background .2s,border-color .2s}
.related-pages>div>a:hover{background:var(--paper);border-color:var(--action)}
.related-pages>div>a>span:last-child{color:var(--action)}
.store-detail-heading{margin:6px 0 40px}
.store-detail-heading h1{margin:18px 0!important}
.store-detail-heading>p:last-child{color:var(--muted);font-size:18px}
.store-detail-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;align-items:stretch}
.store-hero-image{display:flex;flex-direction:column;justify-content:center;min-width:0}
.store-hero-image img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;background:var(--paper)}
.store-hero-image figcaption{font-size:12px;margin-top:12px;color:var(--muted)}
.store-brand-panel{background:var(--paper);padding:60px 40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:340px;border:1px solid var(--line)}
.store-brand-panel img{width:min(100%,340px)}
.store-brand-panel span{font-size:11px;letter-spacing:2px;margin-top:28px}
.store-brand-panel strong{margin-top:50px;font-size:34px;font-weight:500;letter-spacing:3px;color:var(--action)}
.store-visit{border-top:3px solid var(--orange);background:var(--paper);padding:32px;min-width:0}
.store-visit h2{font-size:26px;letter-spacing:-1px;margin:18px 0 24px}
.store-visit address{font-style:normal;font-size:17px;line-height:1.7}
.store-visit .store-actions{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.store-visit .detail-link{font-size:13px;width:100%;gap:12px}
.visit-note{font-size:13px;color:var(--muted);line-height:1.8;margin:24px 0 12px}
.store-gallery{padding-top:24px}
.store-gallery .section-head{margin-bottom:28px}
.store-gallery .section-head h2{font-size:36px}
.store-gallery>.detail-link{margin-top:30px}
.gallery-tabs button,.copy-inquiry,.back-top{min-height:44px}
.back-top{display:inline-flex;align-items:center}
.copy-inquiry{padding:10px 0}
input,select,textarea{border-color:#8F8378}
.film :focus-visible,#film-dialog :focus-visible{outline-color:#fff}
dialog .dialog-close{position:sticky;top:12px;float:right;margin:12px 12px 0 0}
.dialog-caption{clear:both}
.collection-open-hint,.only-showcase-label,.section-note,.form-note,.map-help{font-size:12px!important}
.section-head>p,.section-head>div{max-width:500px}
@media(max-width:1050px){.section-actions{width:calc(100% - 64px)}.store-detail-grid{gap:28px}.store-visit{padding:24px}.subpage .about-grid{gap:40px}.subpage .page-heading{font-size:48px;letter-spacing:-2px}}
@media(max-width:760px){
 .breadcrumb{font-size:12px;padding-top:16px}.breadcrumb ol{gap:0 9px}.breadcrumb li{gap:9px}
 .subpage main>.section:first-of-type{padding-top:28px}.subpage .section-label{margin-bottom:28px}
 .subpage .page-heading{font-size:36px;letter-spacing:-1.7px;line-height:1.28}.subpage .about-grid{gap:32px}
 .section-actions{width:calc(100% - 40px);margin-top:28px;gap:10px 20px}.section-actions .detail-link{font-size:13px}
 .footer-links{gap:0 22px;font-size:13px;padding-bottom:24px}.related-pages{padding-top:36px;padding-bottom:42px}
 .related-pages h2{font-size:25px}.related-pages>div{grid-template-columns:1fr;gap:12px;margin-top:22px}.related-pages>div>a{padding:20px;font-size:16px}
 .store-detail-heading{margin:0 0 28px}.store-detail-heading>p:last-child{font-size:15px}.store-detail-grid{grid-template-columns:1fr;gap:28px}
 .store-visit{padding:24px}.store-visit address{font-size:16px}.store-brand-panel{padding:40px 28px;min-height:260px}.store-brand-panel strong{margin-top:36px;font-size:30px}
 .store-gallery .section-head{display:block}.store-gallery .section-head h2{font-size:30px}.store-gallery .section-head>p{margin-top:16px;font-size:12px}
 .dialog-caption h2{font-size:20px}.dialog-caption{padding:18px}.dialog-close{font-size:13px}
}
@media(max-width:360px){.subpage .page-heading{font-size:32px}.store-visit{padding:20px}.store-visit .store-actions{grid-template-columns:1fr}.footer-links{gap:0 18px}}
@media(prefers-reduced-motion:reduce){.related-pages>div>a{transition:none}}
