#header-text-nav-container.shs-header-fixed{position:fixed;box-sizing:border-box;top:var(--shs-header-top,0px);left:var(--shs-header-left,0px);width:var(--shs-header-width,100%);z-index:9990;background:rgba(255,255,255,.95);box-shadow:0 2px 16px #21171014}
@supports(backdrop-filter:blur(12px)){#header-text-nav-container.shs-header-fixed{background:rgba(255,255,255,.73);backdrop-filter:saturate(150%) blur(22px);-webkit-backdrop-filter:saturate(150%) blur(22px)}}
#header-text-nav-container.shs-header-fixed:focus-within{background:rgba(255,255,255,.88)}
.shs-header-spacer{height:0;pointer-events:none}
.shs-has-social-dock #scroll-up{display:none!important}
.shs-social-dock{position:fixed;z-index:9900;right:max(18px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));display:grid;gap:9px}
.shs-social-dock details{position:relative}
.shs-social-dock summary,.shs-social-dock .shs-dock-top{box-sizing:border-box;display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid #ece7e4;border-radius:50%;background:#fff;color:#27242a;box-shadow:0 4px 14px #2717111c;cursor:pointer;list-style:none;text-decoration:none;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.shs-social-dock .shs-dock-top[hidden]{display:none}
.shs-social-dock .shs-dock-top:not([hidden]){animation:shs-dock-enter .22s ease-out both}
.shs-social-dock summary::-webkit-details-marker{display:none}
.shs-social-dock svg{width:22px;height:22px}
.shs-social-dock .shs-wechat summary{color:#087741}
.shs-social-dock .shs-dock-top{color:#a6291b}
.shs-social-dock details[open]>summary{background:#f8f1ee;border-color:#e9d6ce}
@media(hover:hover){.shs-social-dock :is(summary,.shs-dock-top):hover{transform:translateY(-2px);box-shadow:0 6px 18px #27171129}}
.shs-social-dock :is(summary,a):focus-visible{outline:2px solid #a6291b;outline-offset:3px}
.shs-douyin-panel{position:absolute;right:calc(100% + 12px);bottom:0;box-sizing:border-box;width:min(164px,calc(100vw - 82px));max-height:calc(100dvh - 165px);overflow:auto;padding:11px;background:#fff;border:1px solid #ece4e0;border-radius:12px;box-shadow:0 6px 24px #21171024;transform-origin:right bottom;animation:shs-popup-enter .23s cubic-bezier(.22,.75,.25,1) both;font-size:12px;line-height:1.45}
.shs-douyin-panel img{display:block;width:100%;height:auto;margin:7px 0 4px;border-radius:5px}
.shs-douyin-panel p{margin:5px 0;color:#655d59}
@keyframes shs-popup-enter{from{opacity:0;transform:translateX(8px) scale(.94)}to{opacity:1;transform:translateX(0) scale(1)}}
@keyframes shs-dock-enter{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.shs-social-dock .shs-dock-top:not([hidden]),.shs-douyin-panel{animation:none}.shs-social-dock :is(summary,.shs-dock-top){transition:none;transform:none}}
body.wp-theme-spacious{font-size:15px}
#masthead #header-text-nav-wrap{padding-block:11px}
#masthead #site-title a{font-size:clamp(15px,1.65vw,22px)}
#masthead #site-description{font-size:10px;margin-top:3px}
#masthead #site-navigation.main-navigation a{font-size:14px}
#masthead .custom-logo{max-height:48px;width:auto}
body.home .corp-slider .corp-slide-content :is(h1,h2){font-size:clamp(29px,4.5vw,59px);line-height:1.2}
body.home .corp-slider .corp-slide-content p:not(.corp-eyebrow){font-size:clamp(13px,1.35vw,17px)}
body.home .entry-content :is(.corp-intro,.corp-section-head,.corp-vision) h2{font-size:clamp(25px,3vw,37px);margin-bottom:14px}
body.home .entry-content :is(.corp-intro,.corp-section-head,.corp-vision) p{font-size:15px}
body.page-id-10 .header-post-title-container .inner-wrap{padding-block:9px}
body.page-id-10 .header-post-title-class{font-size:24px;padding:0}
body.page-id-10 #main{padding:18px 0 12px;min-height:0}
body.page-id-10 #post-10,body.page-id-10 #post-10 .entry-content{margin:0;padding:0}
body.page-id-10 #reservation{box-sizing:border-box;max-width:960px;margin:0 auto;padding:clamp(18px,3vw,32px);gap:clamp(16px,3vw,34px);grid-template-columns:.8fr 1.2fr;background:#faf6f3;color:#2e2522;border:1px solid #ece0da;border-radius:12px}
body.page-id-10 #reservation .corp-eyebrow{display:none}
body.page-id-10 #reservation .corp-book-copy h2{color:#2e2522;font-size:clamp(22px,3vw,31px);margin:0 0 12px}
body.page-id-10 #reservation .corp-book-copy>p:not(.corp-eyebrow){color:#544943;font-size:14px;margin:0;line-height:1.65}
body.page-id-10 #reservation .corp-book-note{color:#66564e;border-color:#e7d9d2;margin-top:12px;padding-top:10px}
body.page-id-10 #reservation .corp-form-panel h3{color:#2e2522;font-size:20px;margin:0 0 10px}
body.page-id-10 #reservation .corp-form-panel h3>span{display:none}
body.page-id-10 #reservation .corp-field{margin-bottom:8px}
body.page-id-10 #reservation .corp-field>span{color:#423631;font-size:13px;margin-bottom:3px}
body.page-id-10 #reservation .corp-field :is(input,select){min-height:40px;height:40px;box-sizing:border-box;padding:6px 10px;margin:0;font-size:14px;background:#fff;color:#2e2522;border:1px solid #ddcec7}
body.page-id-10 #reservation .corp-consent{color:#4e423c;margin:7px 0 8px;font-size:12px;line-height:1.45}
body.page-id-10 #reservation .corp-submit{min-height:42px;padding:7px 14px;background:#a6291b;color:#fff}
body.page-id-10 #reservation .corp-form-status:empty{display:none}
body.page-id-10 #reservation .corp-form-small{color:#66564e;margin:6px 0 0;font-size:11px;line-height:1.45}
body.page-id-10 .sh-foot{padding:10px 16px}
body.page-id-10 .sh-foot strong{font-size:14px}
body.page-id-10 .sh-foot p,body.page-id-10 .sh-foot .sh-copyright{margin:3px 0 0;padding-top:0;font-size:11px}
@media(max-width:760px){body.page-id-10 #reservation .corp-book-copy{margin-bottom:14px}body.page-id-10 #reservation .corp-book-copy h2 br{display:none}body.page-id-10 #reservation .corp-book-note{margin-top:6px;padding-top:6px}body.page-id-10 #main{padding-top:10px}.shs-social-dock{right:max(9px,env(safe-area-inset-right))}}
/* Consultation fits a typical desktop and phone viewport without locking scroll. */
body.page-id-10 #page{margin-block:0}
body.page-id-10 .header-post-title-container{padding:0;margin:0}
body.page-id-10 .header-post-title-container .inner-wrap{padding-block:8px}
body.page-id-10 .header-post-title-class{margin:0;line-height:1.2}
body.page-id-10 #main{padding:10px 0 8px}
body.page-id-10 #reservation .corp-form-panel h3{padding:0;margin:0 0 8px;line-height:1.25}
body.page-id-10 #reservation .corp-field{margin-bottom:6px}
body.page-id-10 #reservation .corp-field>span{line-height:1.35}
body.page-id-10 #reservation .corp-form-status{margin:0}
body.page-id-10 .sh-foot{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px 20px;padding:8px 12px}
body.page-id-10 .sh-foot>p:first-of-type{display:none}
body.page-id-10 .sh-foot p,body.page-id-10 .sh-foot strong,body.page-id-10 .sh-foot .sh-copyright{margin:0;padding:0;border:0;line-height:1.5}
@media(max-width:760px){
 body.page-id-10 #reservation{padding:14px}
 body.page-id-10 #reservation .corp-book-copy h2,body.page-id-10 #reservation .corp-book-copy>p{display:none}
 body.page-id-10 #reservation .corp-book-copy{margin:0 0 10px}
 body.page-id-10 #reservation .corp-book-note{margin:0;padding:0;border:0}
 body.page-id-10 #reservation .corp-book-note br{display:none}
 body.page-id-10 #reservation .corp-book-note{line-height:1.45}
}

.shs-social-dock summary img{display:block;width:22px;height:22px;margin:0}
.shs-brand-wechat,.shs-line-icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;background:currentColor;mask:var(--shs-icon) center/contain no-repeat;-webkit-mask:var(--shs-icon) center/contain no-repeat;flex:none}
.shs-brand-wechat{width:23px;height:23px;--shs-icon:url(assets/site-icons/wechat.svg)}
.shs-chevron-left{--shs-icon:url(assets/site-icons/chevron-left.svg)}
.shs-chevron-right{--shs-icon:url(assets/site-icons/chevron-right.svg)}
.shs-chevron-down{--shs-icon:url(assets/site-icons/chevron-down.svg)}
.shs-chevron-up{--shs-icon:url(assets/site-icons/chevron-up.svg)}
.shs-arrow-up{--shs-icon:url(assets/site-icons/arrow-up.svg);font-size:21px}
.corp-slider.shs-corporate-slider .corp-control:is([data-carousel-prev],[data-carousel-next])::before{width:23px;height:23px;border:0;transform:translate(-50%,-50%);background:#fff;mask:var(--shs-icon) center/contain no-repeat;-webkit-mask:var(--shs-icon) center/contain no-repeat}
.corp-slider.shs-corporate-slider .corp-control[data-carousel-prev]{--shs-icon:url(assets/site-icons/chevron-left.svg)}
.corp-slider.shs-corporate-slider .corp-control[data-carousel-next]{--shs-icon:url(assets/site-icons/chevron-right.svg)}

/* Keep the native H1 for assistive technology, without a duplicate title banner. */
#masthead .header-post-title-container{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}

body.wp-theme-spacious{padding-top:0!important}
body.wp-theme-spacious #page{margin-top:0}

/* Motion cues: use the existing visual system rather than loading a UI kit. */
@media(prefers-reduced-motion:no-preference){
 #main :is(.corp-button,.corp-text-link,.corp-submit,.shs-field-primary,.shs-field-secondary) .shs-line-icon{transition:translate .22s cubic-bezier(.2,.7,.3,1)}
 #main :is(.corp-button,.corp-text-link,.corp-submit,.shs-field-primary,.shs-field-secondary):focus-visible .shs-line-icon{translate:3px 0}
 #main :is(.corp-button,.corp-submit,.shs-field-primary):active{scale:.98}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 #main :is(.corp-button,.corp-text-link,.corp-submit,.shs-field-primary,.shs-field-secondary):hover .shs-line-icon{translate:4px 0}
 #main :is(.corp-service-card,.corp-news-card,.shs-field-service-grid article,.shs-field-gallery-grid figure){transition:translate .26s cubic-bezier(.2,.7,.3,1),box-shadow .26s ease}
 #main :is(.corp-service-card,.corp-news-card,.shs-field-service-grid article,.shs-field-gallery-grid figure):hover{translate:0 -4px;box-shadow:0 10px 24px #381d1517}
 #main :is(.shs-field-gallery-grid,.shs-field-gallery-feature) img{transition:scale .55s cubic-bezier(.2,.7,.3,1)}
 #main :is(.shs-field-gallery-grid figure,.shs-field-gallery-feature):hover img{scale:1.04}
}

/* Compact inner pages and a shared small footer. */
body.wp-theme-spacious:not(.home) #main{padding-top:12px;padding-bottom:18px}
body.wp-theme-spacious:not(.home) #main :is(.shs-field-services,.shs-field-gallery){padding-block:16px 22px}
body.wp-theme-spacious:not(.home) #main :is(.shs-field-services,.shs-field-gallery)>header{margin-bottom:16px}
body.wp-theme-spacious:not(.home) #main :is(.shs-field-services,.shs-field-gallery)>header h2{font-size:clamp(25px,3vw,38px)}
body.wp-theme-spacious:not(.home) #main :is(.shs-field-services,.shs-field-gallery)>header p{margin-bottom:0}
body.wp-theme-spacious .sh-foot{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:5px 22px;padding:11px 18px;text-align:center}
body.wp-theme-spacious .sh-foot :is(strong,p,.sh-copyright){display:block;margin:0;padding:0;border:0;font-size:12px;line-height:1.55}
body.wp-theme-spacious .sh-foot strong{font-size:14px}
body.page-id-10 .sh-foot>p:first-of-type{display:block}
body.page-id-10 #reservation{display:block;width:min(100%,570px);max-width:570px;margin:8px auto 12px;padding:clamp(19px,3vw,28px);background:#fff;border-color:#ece4df;box-shadow:0 5px 24px #381d1508}
body.page-id-10 #reservation .corp-form-panel h3{font-size:clamp(23px,3vw,29px);margin-bottom:5px}
.shs-reservation-lead{margin:0 0 14px;color:#665a54;font-size:13px;line-height:1.6}
body.page-id-10 #reservation .corp-field input::placeholder{color:#726762}
body.page-id-10 #reservation .corp-submit{border-radius:8px;box-shadow:none}
@media(min-width:1100px){#masthead #header-text-nav-container>.inner-wrap{width:calc(100% - 64px);max-width:none}}
@media(max-width:600px){body.wp-theme-spacious .sh-foot{gap:4px 12px;padding-inline:12px}}

/* Compact contact and mini-program additions; preserve the supplied scannable pixels. */
.shs-social-dock .shs-phone summary{color:#a6291b}
.shs-social-dock .shs-miniapp summary{color:#07b85d}
.shs-phone-panel{width:180px;text-align:center;padding:16px 10px}
.shs-phone-panel a{font-size:17px;font-weight:700;white-space:nowrap;color:#242428;text-decoration:none}
.shs-miniapp-panel{width:204px;padding:8px}
.shs-miniapp-code{position:relative;width:100%;aspect-ratio:1;overflow:hidden;border-radius:8px;background:#f7f7f7}
.shs-miniapp-code img{position:absolute;left:0;top:0;height:100%;width:auto;max-width:none;margin:0;border-radius:0}
