/* 北海明珠全站字体规范：系统字体、适中标题、正文400与标题600。仅在前台加载。 */
:root{--site-font:-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue","Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif;--bhmz-title-hero-max:38px;--bhmz-title-hero-min:30px;--bhmz-title-section-max:29px;--bhmz-title-section-min:24px;--bhmz-title-card-max:22px}
html[lang],html[lang] body,html[lang] body *{font-family:var(--site-font)!important}
html[lang] body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.75}
html[lang] body :is(button,input,select,textarea){font-family:var(--site-font)!important;font-style:normal}
html[lang] body :is(h1,h2,h3,h4,h5,h6){font-weight:600!important;letter-spacing:0!important}
html[lang] body h1{font-size:clamp(30px,2.8vw,38px)!important;line-height:1.4!important}
html[lang] body h2{font-size:clamp(24px,2.1vw,29px)!important;line-height:1.45!important}
html[lang] body h3{font-size:clamp(18px,1.55vw,22px)!important;line-height:1.5!important}
html[lang] body :is(.home-hero,.page-hero,.detail-heading-section,.bhmz-article-hero,.hub-hero,.dining-rooms-hero,.dining-v47-hero,.halls-index-hero,.hall-focus-hero,.about-v5-hero,.hi-hero,.bs-hero,.information-center-hero,.records-center-hero) h1{font-size:clamp(30px,2.8vw,38px)!important;font-weight:600!important;line-height:1.4!important;letter-spacing:0!important}
html[lang] body.about-contact-page .about-v5-hero h1,html[lang] body.brand-page .bs-hero h1{font-size:clamp(30px,2.8vw,38px)!important;font-weight:600!important;line-height:1.4!important;letter-spacing:0!important}
html[lang] body :is(.about-v5-section-title,.about-v5-section-head,.about-v5-contact,.bs-section-title,.bs-section-head,.section-heading,.section-head,.dining-section-title) h2{font-size:clamp(24px,2.1vw,29px)!important;font-weight:600!important;line-height:1.45!important;letter-spacing:0!important}
html[lang] body :is(.section-kicker,.section-label,.eyebrow,.about-v5-kicker,.bs-kicker){font-size:11px!important;font-weight:600!important;letter-spacing:.08em!important;line-height:1.7!important}
html[lang] body :is(.btn,.button,.btn-primary,.btn-outline,.booking-submit,.about-v5-text-btn,.about-v5-outline-btn,.about-company-links a){font-weight:600!important;letter-spacing:0!important}
html[lang] body :is(.site-nav,.main-nav,.nav-menu,.header-nav,.site-header nav) :is(a,button){font-weight:600!important;letter-spacing:0!important}
html[lang] body :is(.about-v5-intro-copy,.about-v5-hero-copy,.bs-lead,.bs-story-copy,.bs-content,.article-content,.rich-text,.content-body) :is(p,li){font-size:16px!important;line-height:1.9!important;font-weight:400!important;letter-spacing:0!important}
html[lang] body :is(.about-v5-service-card,.about-v5-value-list,.bs-culture-card,.bs-value-card,.home-dish-card,.dish-card,.hall-card,.room-card) p{font-size:14px!important;line-height:1.8!important;font-weight:400!important;letter-spacing:0!important}
html[lang] body :is(b,strong){font-weight:600}
/* 预约弹层、浮动工具与页脚属于紧凑界面，保留各自字号，仅减轻字重。 */
html[lang] body :is(.booking-modal,.booking-inquiry-modal,.floating-service,.site-footer,.footer-final) :is(h2,h3){font-size:inherit!important;line-height:1.5!important}
@media(max-width:768px){html[lang] body h1,html[lang] body :is(.home-hero,.page-hero,.detail-heading-section,.bhmz-article-hero,.hub-hero,.dining-rooms-hero,.dining-v47-hero,.halls-index-hero,.hall-focus-hero,.about-v5-hero,.hi-hero,.bs-hero,.information-center-hero,.records-center-hero) h1,html[lang] body.about-contact-page .about-v5-hero h1,html[lang] body.brand-page .bs-hero h1{font-size:28px!important;line-height:1.45!important}html[lang] body h2,html[lang] body :is(.about-v5-section-title,.about-v5-section-head,.about-v5-contact,.bs-section-title,.bs-section-head,.section-heading,.section-head,.dining-section-title) h2{font-size:23px!important;line-height:1.5!important}html[lang] body h3{font-size:18px!important}html[lang] body :is(.about-v5-intro-copy,.about-v5-hero-copy,.bs-lead,.bs-story-copy,.bs-content,.article-content,.rich-text,.content-body) :is(p,li){font-size:15px!important;line-height:1.85!important}}

html[lang] body :is(h1,h2){font-weight:600!important;letter-spacing:-.02em!important}
/* 主内容标题覆盖页脚后加载的旧页面标题样式，紧凑弹窗不受影响。 */
html[lang] body[class] main h1{font-size:clamp(30px,2.8vw,38px)!important;line-height:1.4!important;font-weight:600!important;letter-spacing:-.02em!important}
html[lang] body[class] main h2{font-size:clamp(24px,2.1vw,29px)!important;line-height:1.45!important;font-weight:600!important;letter-spacing:-.02em!important}
html[lang] body[class] main h3{font-size:clamp(18px,1.55vw,22px)!important;line-height:1.5!important;font-weight:500!important;letter-spacing:0!important}
html[lang] body h4{font-size:17px!important;line-height:1.5!important}
html[lang] body :is(p,li){font-weight:400}
html[lang] body :is(.hero-copy,.bmw2-copy,.page-hero) p{line-height:1.8!important}
/* 紧凑弹窗保持原有文字尺寸，避免预约表单膨胀。 */
html[lang] body :is(.booking-modal,.booking-inquiry-modal,.floating-service,.site-footer,.footer-final) :is(h2,h3,h4){letter-spacing:0!important}
html[lang] body :is(.btn,.button,.btn-primary,.btn-outline,.booking-submit,.about-v5-text-btn,.about-v5-outline-btn,.about-company-links a){font-weight:500!important}
html[lang] body :is(.site-nav,.main-nav,.nav-menu,.header-nav,.site-header nav) :is(a,button){font-weight:500!important}
@media(max-width:768px){html[lang] body[class] main h1{font-size:28px!important}html[lang] body[class] main h2{font-size:23px!important}html[lang] body[class] main h3{font-size:18px!important}}

/* 导航栏目标题加粗，子菜单保持较轻字重，桌面与手机共用。 */
html[lang] body .site-header .main-nav>a,
html[lang] body .site-header .main-nav .nav-group>a{font-weight:700!important;letter-spacing:0!important}
html[lang] body .site-header .main-nav .submenu a{font-weight:500!important}
html[lang] body .site-header .header-booking{font-weight:600!important}
