/* GEMBA-OS content uses the existing enmono header/footer; rules stay page-local. */
.gemba-page #PAGES_CONTAINER{min-width:0;min-height:0}
.gemba-content{box-sizing:border-box;background:#f0efec;color:#292a26;font:18px/1.85 Georgia,"Yu Mincho","Hiragino Mincho ProN",serif;width:100%;overflow-wrap:anywhere}
.gemba-content *{box-sizing:border-box}
.gemba-section{max-width:1044px;margin:0 auto;padding:48px 32px;border-bottom:1px solid #d1cdc3}
.gemba-section:last-child{border-bottom:0}
.gemba-copy{margin:0 0 24px}
.gemba-copy p,.gemba-section>p{margin:0 0 16px}
.gemba-content h1{font-size:clamp(30px,4vw,48px);line-height:1.45;font-weight:500;margin:0 0 8px}
.gemba-content h2{font-size:clamp(24px,2.6vw,30px);line-height:1.6;margin:0 0 24px;font-weight:500}
.gemba-content h3{font-size:24px;line-height:1.65;margin:24px 0}
.gemba-content h5{font-size:22px;line-height:1.6;margin:0 0 8px}
.gemba-content img{display:block;width:100%;height:auto;max-width:100%;margin:24px auto}
.gemba-content a{color:#225c5d;text-decoration:underline;text-underline-offset:4px}
.gemba-content .gemba-button{display:inline-block;background:#2c7072;color:#fff;text-decoration:none;padding:12px 24px;border-radius:3px;margin:12px 0}
.gemba-content a:hover{opacity:.85}
.gemba-content a:focus-visible,.gemba-content input:focus-visible,.gemba-content textarea:focus-visible{outline:3px solid #cc5c2d;outline-offset:4px}
.gemba-hero{padding-top:24px}
.gemba-hero>.gemba-copy:first-child{text-align:center}
.gemba-scenes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:32px}
.gemba-scenes figure{margin:0}
.gemba-scenes img{aspect-ratio:1;object-fit:cover;margin:0 0 12px}
.gemba-scenes figcaption{font-size:17px;line-height:1.6}
.gemba-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.gemba-people img{width:240px;aspect-ratio:1;object-fit:cover}
.gemba-people h5,.gemba-people>div>p{text-align:center}
.gemba-form{max-width:760px;margin:32px auto 0;font-family:Arial,"Yu Gothic",sans-serif}
.gemba-form h3{font-weight:700}
.gemba-form-embed>p{font-size:16px;line-height:1.7}
.gemba-form-embed iframe{display:block;width:100%;height:1320px;border:0;background:transparent}
.gemba-form-embed .migration-form-note{margin-top:12px}
.gemba-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.gemba-form label{display:block;margin-bottom:16px}
.gemba-form input:not([type=checkbox]),.gemba-form textarea{display:block;width:100%;padding:12px;background:white;border:1px solid #777;border-radius:0;color:#222;font:inherit}
.gemba-form fieldset{margin:20px 0;padding:16px;border:1px solid #999}
.gemba-form legend{padding:0 8px}
.gemba-form input[type=checkbox]{appearance:auto;vertical-align:middle;margin-right:6px;width:18px;height:18px}
.gemba-form button{padding:12px 28px;background:#2c7072;color:white;font:inherit;border:0}
#scenes,#gemba-contact{scroll-margin-top:85px}
.gemba-mobile-header,.gemba-mobile-footer{display:none}
@media(max-width:640px){
 .gemba-page #site-root{min-width:0!important}
 .gemba-page #pageBackground_n8mwe{min-width:0!important;width:100%!important}
 .gemba-page #masterPage{display:block!important;grid-template-columns:minmax(0,1fr)!important}
 .gemba-page #SITE_HEADER,.gemba-page #SITE_FOOTER,.gemba-page .pinnedTopRight,.gemba-page .pinnedMiddleRight{display:none!important}
 .gemba-mobile-header,.gemba-mobile-footer{display:block;box-sizing:border-box;width:100%;padding:20px;background:#c2bec8;color:#222;font:16px/1.7 Arial,"Yu Gothic",sans-serif}
 .gemba-mobile-header img{display:block;width:200px;max-width:100%;height:auto;margin:0 auto 16px}
 .gemba-mobile-header nav,.gemba-mobile-footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px}
 .gemba-mobile-header details{flex-basis:100%;text-align:center}.gemba-mobile-header summary{cursor:pointer}.gemba-mobile-header details ul{padding:0;list-style:none}.gemba-mobile-header details li{margin:8px 0}
 .gemba-mobile-header a,.gemba-mobile-footer a{color:inherit;text-decoration:underline;text-underline-offset:4px}
 .gemba-mobile-footer h2{font-size:26px;margin:24px 0 12px}
 .gemba-mobile-footer p{margin:12px 0;overflow-wrap:anywhere}
 .gemba-section{padding:32px 20px}
 .gemba-scenes,.gemba-people,.gemba-form-row{grid-template-columns:minmax(0,1fr)}
 .gemba-people{gap:28px}
 .gemba-form-embed iframe{height:1580px}
 .gemba-content{font-size:16px}
 .gemba-content h1{font-size:30px}
}
