/* Shared layout and typography for the fork, without replacing its original identity. */
:root{--lani-wide:1040px;--lani-reading:800px;--lani-card-radius:16px;--font-serif:'Shippori Mincho',serif;--font-heading:'Shippori Mincho',serif;--font-sans:'Noto Sans JP',sans-serif;--font-en:'Cormorant Garamond',serif;--font-bodoni:'Cormorant Garamond',serif;--font-script:'Cormorant Garamond',serif;--font-num:'Cormorant Garamond',serif}
body{font-family:var(--font-sans)}
body .section .section-tag,body .about-meta .section-tag,body .section-subtag,body .menu-category-tag,body .hm-split-content .hm-lux-tag{font-family:var(--font-en)!important;font-size:12px!important;font-weight:500!important;letter-spacing:.18em!important;line-height:1.6!important}
body .section .section-tag,body .about-meta .section-tag{margin-bottom:14px!important}
body .section h2.section-title,body #voice .section-title,body .section h2.contact-title{font-family:var(--font-heading)!important;font-size:30px!important;font-weight:500!important;line-height:1.75!important;letter-spacing:.07em!important;color:#554437!important;margin-top:0!important;margin-bottom:20px!important;text-wrap:balance}
body .section-title-wrap{margin-bottom:36px!important}
#menu>.container{width:100%!important;max-width:1088px!important;padding-inline:24px!important;box-sizing:border-box!important}
#menu .menu-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;width:100%!important;max-width:none!important;margin-inline:auto!important}
#menu .option-grid-unified{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;width:100%!important;max-width:none!important;margin-inline:auto!important;align-items:stretch!important}
#menu .menu-card,#menu .option-card-item{width:100%!important;max-width:none!important;min-width:0!important;border:1px solid #e2dbd1!important;border-radius:var(--lani-card-radius)!important;box-shadow:0 6px 24px #41311f07!important;overflow:hidden}
#menu .hairmake-split-card{width:100%!important;max-width:none!important;margin:0!important;border:1px solid #e2dbd1!important;border-radius:var(--lani-card-radius)!important;box-shadow:0 6px 24px #41311f07!important;grid-template-columns:minmax(0,40%) minmax(0,60%)!important;box-sizing:border-box}
#menu .menu-card-body{padding:28px 24px!important;min-width:0}
#menu .menu-card-body h3,#menu .option-card-title,#menu .hm-split-content .hm-lux-title{font-family:var(--font-heading)!important;font-size:20px!important;line-height:1.8!important;letter-spacing:.03em!important;font-weight:500!important;color:#554437!important;white-space:normal!important;overflow-wrap:anywhere!important;margin-bottom:14px!important}
#menu .menu-desc,#menu .option-card-item .menu-desc,#menu .hm-split-content .hm-lux-lead{font-family:var(--font-sans)!important;font-size:13px!important;line-height:2.1!important;color:#6b5e51!important}
#menu .option-section-header .sub-section-title{font-family:var(--font-heading)!important;font-size:24px!important;line-height:1.75!important;font-weight:500!important}
#menu .option-card-item .menu-card-img-wrap,#menu .menu-card-img-wrap{border-radius:15px 15px 0 0!important}
#menu .hm-split-content{padding:36px!important;min-width:0}
#menu .hm-split-content .hm-lux-rates-list{width:100%!important;max-width:none!important}
#menu .hm-split-content .hm-lux-row{padding:16px 12px!important;gap:14px!important}
#menu .hm-split-content .hm-lux-name{font-size:15px!important;line-height:1.7!important}
#menu .hm-split-content .hm-lux-desc{font-size:11px!important;line-height:1.9!important}
#faq .faq-accordion-container,#faq .faq-accordion-list,#faq .faq-list{max-width:var(--lani-reading)!important;margin-inline:auto!important}
#faq>.container{max-width:848px!important;padding-inline:24px!important}
#faq .faq-accordion-question{font-family:var(--font-heading)!important;font-size:15px!important;line-height:1.8!important}
#access .route-guide-box{width:100%!important;max-width:var(--lani-reading)!important;margin:36px auto 0!important;padding:32px!important;box-sizing:border-box!important}
#access .route-steps{width:100%!important;max-width:none!important;gap:16px!important}
#access .route-step{padding:20px 24px!important;gap:20px!important;align-items:flex-start!important}
#access .step-text{font-family:var(--font-sans)!important;font-size:14px!important;line-height:1.95!important;min-width:0!important}
#access .route-guide-title{font-family:var(--font-heading)!important;font-size:21px!important;line-height:1.7!important;margin-bottom:26px!important}
@media(min-width:641px) and (max-width:1000px){#menu .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#menu .menu-grid>.menu-card:last-child{grid-column:1 / -1;width:calc((100% - 24px)/2)!important;justify-self:center}#menu .menu-card-body{padding:25px 20px!important}#menu .menu-card-body h3,#menu .option-card-title,#menu .hm-split-content .hm-lux-title{font-size:18px!important}#menu .hairmake-split-card{grid-template-columns:1fr!important;max-width:700px!important;margin-inline:auto!important}#menu .hm-split-content{padding:30px!important}}
@media(max-width:640px){body .section h2.section-title,body #voice .section-title,body .section h2.contact-title{font-size:24px!important;line-height:1.8!important;letter-spacing:.04em!important;margin-bottom:18px!important}body .section .section-tag,body .about-meta .section-tag,body .section-subtag,body .menu-category-tag,body .hm-split-content .hm-lux-tag{font-size:11px!important;letter-spacing:.16em!important}body .section-title-wrap{margin-bottom:28px!important}#menu>.container{padding-inline:20px!important}#menu .menu-grid,#menu .option-grid-unified{grid-template-columns:1fr!important;gap:24px!important;width:100%!important;max-width:560px!important}#menu .hairmake-split-card{grid-template-columns:1fr!important;max-width:560px!important;margin-inline:auto!important}#menu .menu-card-body,#menu .option-card-item .menu-card-body{padding:26px 22px!important}#menu .menu-card-body h3,#menu .option-card-title,#menu .hm-split-content .hm-lux-title{font-size:18px!important;line-height:1.8!important;margin-bottom:13px!important}#menu .menu-desc,#menu .option-card-item .menu-desc,#menu .hm-split-content .hm-lux-lead{font-size:12px!important}#menu .option-section-header .sub-section-title{font-size:20px!important}#menu .hm-split-content{padding:28px 22px!important}#menu .hm-split-content .hm-lux-row{padding:14px 8px!important}#menu .hm-split-content .hm-lux-row.highlight{margin-inline:-22px!important;padding-inline:30px!important}#menu .hm-split-content .hm-lux-name{font-size:14px!important}#faq>.container{padding-inline:20px!important}#faq .faq-accordion-question{font-size:14px!important}#access .route-guide-box{padding:24px 16px!important;margin-top:28px!important}#access .route-step{padding:17px 16px!important;gap:14px!important}#access .step-text{font-size:13px!important;line-height:1.9!important}#access .route-guide-title{font-size:19px!important;margin-bottom:20px!important}}
@media(min-width:641px) and (max-width:1000px){#menu .hairmake-split-card{max-width:none!important}}
