/* Correct image geometry at the source's natural ratio; mobile has its own photograph. */
.hero-product{padding:0!important;min-height:0;min-width:0}
.hero-product picture{display:block;width:100%;height:100%}
.hero-product img{display:block;width:100%;height:100%;object-fit:cover;object-position:center!important}
.hero-product .micro{color:#303435;text-shadow:0 1px 8px #fff}
.hero-product:after{background:linear-gradient(transparent 80%,#ffffff38)}
.phrase{display:inline-block}
.care-body,.care-benefit p,.method-list p,.booking-guide,.faq-answer{line-break:strict;overflow-wrap:break-word;text-wrap:pretty}
@media(min-width:701px){
 .hero-grid{grid-template-rows:minmax(0,1fr)}
 .hero-main{grid-row:1;min-height:0}
 .hero-support{display:flex;flex-direction:column;min-height:0;height:100%}
 .hero-product{position:relative;flex:none;width:100%;aspect-ratio:16/9}
 .hero-product picture{position:absolute;inset:0}
 .hero-space{flex:1;min-height:0}
 .header:not(.is-scrolled){background:linear-gradient(180deg,#efede8b3,transparent)}
}
@media(max-width:700px){
 .hero-support{display:contents}
 .hero-product{aspect-ratio:auto}
 .hero-product .micro{font-size:6px;letter-spacing:.09em;right:9px;bottom:8px}
 .care-opening{font-size:clamp(14px,3.8vw,16px);letter-spacing:.04em}
 .care-choice>p{font-size:clamp(14px,4vw,16px);line-height:2.05}
 .care-booking-title h3{font-size:clamp(22px,6.5vw,28px);letter-spacing:.07em}
 .care-booking .pill{font-size:12px;letter-spacing:.02em;padding:19px 18px;gap:12px;white-space:nowrap}
 .method-list h4{font-size:15px;line-height:1.95;letter-spacing:.025em}
 .section-heading h2,.story-intro h2,.care-benefit h4,.care-method h3{line-break:strict;text-wrap:balance}
 .story-copy p{line-break:strict;text-wrap:pretty}
}
@media(max-width:359px){.care-booking .pill{font-size:10px;padding:18px 14px;gap:10px}.method-list h4{font-size:14px}}
