/* Clear section landmarks and an explicit treatment-booking action. */
#first-visit #faq>.visit-phase{font-family:"Noto Sans JP",sans-serif;font-size:19px;font-weight:600;line-height:1.6;color:#795259;background:#f2e6e2;border-left:4px solid #946b70;border-radius:0 7px 7px 0;padding:14px 18px;margin:36px 0 12px;letter-spacing:.03em}
#booking .consult-welcome{grid-template-columns:minmax(0,1.6fr) minmax(210px,1fr)}
#booking .consult-host{justify-self:center;width:100%;max-width:240px}
body>.mega .menu-treatment-booking{display:none}
body>header.luce-main-header .nav{gap:20px}
body>header.luce-main-header .nav>a.header-treatment-booking{background:#946b70;color:#fffaf5;border:1px solid #b89195;border-radius:5px;min-height:48px;padding:10px 16px;font-weight:600;text-shadow:none}
body>header.luce-main-header .header-treatment-booking:focus-visible{outline:2px solid #f0d9b7;outline-offset:4px}
@media(max-width:1000px) and (min-width:861px){body>header.luce-main-header .nav{gap:12px}body>header.luce-main-header .nav>a{font-size:12px}}
@media(max-width:860px){
 body>.mega .menu-treatment-booking{display:block;grid-column:1/-1;margin:0}
 body>.mega .menu-treatment-booking>a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;min-height:54px;background:#795259;color:#fffaf5;border-radius:8px;font:600 16px/1.6 "Noto Sans JP",sans-serif;text-decoration:none}
 body>.mega .menu-treatment-booking>p{font-size:12px;line-height:1.7;color:#795259;margin:8px 0 0}
 body>.tabs .reserve{font-size:11px;font-weight:600}
}
@media(max-width:680px){
 #first-visit #faq>.visit-phase{font-size:17px;padding:12px 14px;margin-top:28px}
 #booking .consult-welcome{grid-template-columns:1fr}
 #booking .consult-host{justify-self:center;justify-content:center;max-width:none}
}

#booking .booking-send-instruction{font-size:13px;line-height:1.8;color:#795259}
@media(max-width:860px){
 body>.mega .menu-treatment-booking>a.menu-consult-secondary{background:#fffaf5;color:#795259;border:1px solid #b9978e;margin-top:12px;font-size:14px;min-height:48px;padding:12px 16px}
 body>.mega{overflow-y:auto;overscroll-behavior:contain;max-height:calc(100dvh - var(--luce-hh,82px) - 92px - env(safe-area-inset-bottom,0px))}
 body>.mega .wrap{min-width:0}
 body>.mega .menu-treatment-booking{min-width:0}
 body>.mega .menu-treatment-booking>a{overflow-wrap:anywhere}
 body>.tabs{padding-bottom:env(safe-area-inset-bottom,0px)}
 body>.tabs>a,body>.tabs>button{min-width:0}
}

/* Let long booking labels wrap without widening their content column. */
@media(max-width:860px){
 #booking .consult-welcome-main,#booking .booking-direct>div,.price-next-step{min-width:0}
 #booking a.cta,.price-next-step a.cta{box-sizing:border-box;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.7}
 #booking a.cta>span[aria-hidden],.price-next-step a.cta>span[aria-hidden]{flex-shrink:0}
}
