/* Approved hospitality preview: lettering on a continuous paper background. */
.partner-promise.promise-building{background:#f9f8f4;color:#283c32;text-align:left;padding:42px 48px 150px;min-height:0;overflow:hidden}
.partner-promise.promise-building:before{display:none}
.promise-building .promise-copy{position:relative;z-index:1;max-width:680px}
.promise-building .eyebrow{color:#978052;font-size:.85rem;letter-spacing:.12em;margin:0 0 18px}
.promise-building .eyebrow:after{content:'';display:block;width:48px;height:1px;background:#978052;margin-top:16px}
.partner-promise.promise-building h3{font-size:clamp(1.65rem,3.1vw,2.8rem);line-height:1.4;letter-spacing:0;font-weight:400;margin:0 0 24px;color:#283c32}
.promise-building h3 strong{color:#978052;font-size:1.18em;font-weight:400}
.promise-building .promise-rule{display:none}
.promise-building .promise-satisfaction{font-size:1rem;line-height:1.75;color:#535750;margin:0 0 20px}
.promise-building .promise-satisfaction strong{font-size:1.35rem;font-weight:400;color:#283c32;line-height:1.75}
.promise-building .promise-welcome{font-size:1rem;line-height:1.75;color:#535750;margin:0}
.promise-building .promise-welcome:before{content:'';display:block;width:42px;height:1px;background:#978052;margin:0 0 18px}
.promise-building-video{position:absolute;bottom:0;right:0;width:62%;height:auto;display:block;mix-blend-mode:multiply;pointer-events:none}
@media(max-width:700px){
.partner-promise.promise-building{padding:26px 20px 44%;min-height:0}
.promise-building .eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:18px}
.promise-building .eyebrow:after{margin-top:14px;width:28px}
.partner-promise.promise-building h3{font-size:clamp(1.25rem,5.4vw,1.9rem);line-height:1.4;margin-bottom:20px}
.promise-building .promise-satisfaction,.promise-building .promise-welcome{font-size:1rem;line-height:1.7;overflow-wrap:normal;word-break:normal;line-break:strict;text-wrap:pretty}
.promise-building .promise-satisfaction{margin-bottom:18px}
.promise-building .promise-satisfaction strong{font-size:1.12rem}
.promise-building .promise-welcome:before{margin-bottom:14px;width:27px}
.promise-building-video{width:88%;right:0}
.promise-building .promise-satisfaction br,.promise-building .promise-welcome br{display:none}
.promise-building .promise-satisfaction strong{display:block}
html:not([lang=ja]) .partner-promise.promise-building h3{font-size:1.55rem}
}
.promise-building .promise-satisfaction,.promise-building .promise-welcome{word-break:normal;line-break:strict;text-wrap:pretty}

html[lang=ja] .promise-building .promise-welcome{max-width:none;width:100%;letter-spacing:0}
html[lang=ja] .promise-building .welcome-line{display:block;white-space:nowrap}
@media(max-width:700px){html[lang=ja] .promise-building .promise-welcome{font-size:clamp(.875rem,3.55vw,1rem);line-height:1.8}}
@media(max-width:359px){html[lang=ja] .promise-building .welcome-line{white-space:normal}}
/* Full viewport-width animation on phones, with readable text margins. */
@media(max-width:700px){
.partner-promise.promise-building{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:clamp(32px,9.5vw,44px);padding-right:clamp(32px,9.5vw,44px);padding-bottom:68vw;box-sizing:border-box}
.promise-building-video{width:130%;max-width:none;right:auto;left:-15%;bottom:-5vw;height:auto}
}
