/*
 * 北海明珠官网 V4.10.27
 * 前台逐页标题字号与深浅背景对比统一。
 * 本文件最后加载，仅调整前台标题、段落换行和酒店介绍页异常配色。
 */

:root{
  --bhmz-title-hero-max:46px;
  --bhmz-title-hero-min:32px;
  --bhmz-title-section-max:36px;
  --bhmz-title-section-min:27px;
  --bhmz-title-card-max:28px;
}
html[data-title-size="standard"]{
  --bhmz-title-hero-max:50px;
  --bhmz-title-section-max:39px;
  --bhmz-title-card-max:30px;
}
html[data-title-size="large"]{
  --bhmz-title-hero-max:54px;
  --bhmz-title-section-max:42px;
  --bhmz-title-card-max:32px;
}

/* 所有一级页面首屏标题：控制最大字号、行距和每行长度。 */
body .home-hero h1,
body .page-hero h1,
body .detail-heading-section h1,
body .bhmz-article-hero h1,
body .hub-hero h1,
body .content-list-hero h1,
body .information-center-hero h1,
body .records-center-hero h1,
body .record-detail-hero h1,
body .activity-center-hero h1,
body .activity-detail-hero h1,
body .dining-v47-hero h1,
body .dining-rooms-hero h1,
body .halls-index-hero h1,
body .hall-focus-hero h1,
body .hall-photo-archive-hero h1,
body .about-v5-hero h1,
body .hi-hero h1,
body .bs-hero h1,
body .junren-slide-copy h1{
  max-width:860px!important;
  font-size:clamp(var(--bhmz-title-hero-min),3.15vw,var(--bhmz-title-hero-max))!important;
  line-height:1.18!important;
  letter-spacing:-.03em!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  text-wrap:balance;
}

/* 首页主标题可略大，但不再出现占满首屏的超大字。 */
body.home-redesign-page .home-hero h1{
  max-width:820px!important;
  font-size:clamp(36px,3.7vw,52px)!important;
}

/* 文章和资讯标题通常较长，进一步限制宽度与字号。 */
body.bhmz-id-article .bhmz-article-hero h1,
body.content-hero-page .detail-heading-section h1,
body.activity-detail-page .activity-detail-hero h1,
body.banquet-record-detail-page .record-detail-hero h1{
  max-width:900px!important;
  font-size:clamp(30px,2.85vw,43px)!important;
  line-height:1.24!important;
}

/* 各一级页面板块标题逐项统一，避免某一个模板突然放大。 */
body .section-title h2,
body .home-section-title h2,
body .halls-index-intro h2,
body .halls-section-heading h2,
body .hall-focus-heading h2,
body .hall-focus-intro h2,
body .hall-records-heading h2,
body .dining-section-heading h2,
body .dining-reasons-intro h2,
body .dining-booking-copy h2,
body .records-section-heading h2,
body .activity-center-featured-copy h2,
body .about-v5-section-title h2,
body .about-v5-section-head h2,
body .about-v5-contact h2,
body .hi-section-heading h2,
body .hi-now-copy h2,
body .hi-reasons-title h2,
body .hi-story-bridge h2,
body .hi-final-inner h2,
body .bs-section-heading h2,
body .bs-origin-copy h2,
body .bs-culture-heading h2,
body .bs-craft-copy h2,
body .bs-future h2,
body .junren-story-copy h2,
body .junren-section-head h2{
  max-width:820px;
  font-size:clamp(var(--bhmz-title-section-min),2.45vw,var(--bhmz-title-section-max))!important;
  line-height:1.25!important;
  letter-spacing:-.025em!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  text-wrap:balance;
}

/* 酒店介绍页当前截图对应区域：恢复浅色商务背景与正确文字对比。 */
body.hotel-intro-page .hi-facts{
  background:transparent!important;
}
body.hotel-intro-page .hi-reasons{
  color:#173754!important;
  background:linear-gradient(180deg,#f7f9fc 0%,#edf3f9 100%)!important;
}
body.hotel-intro-page .hi-reasons-title .hi-section-kicker{
  color:#245fae!important;
}
body.hotel-intro-page .hi-reasons-title h2{
  max-width:560px;
  color:#173754!important;
  font-size:clamp(28px,2.35vw,36px)!important;
}
body.hotel-intro-page .hi-reasons-title p{
  color:#66778d!important;
}
body.hotel-intro-page .hi-story-bridge,
body.hotel-intro-page .hi-final-cta{
  color:#fff!important;
}
body.hotel-intro-page .hi-story-bridge h2,
body.hotel-intro-page .hi-story-bridge p,
body.hotel-intro-page .hi-final-cta h2,
body.hotel-intro-page .hi-final-cta p{
  color:#fff!important;
}

/* 卡片标题不与页面标题争抢视觉层级。 */
body .hi-service-card h3,
body .hall-choice-panel h3,
body .home-activity-feature h2,
body .home-dining-copy h2,
body .home-brand-story h2{
  font-size:clamp(24px,2vw,var(--bhmz-title-card-max))!important;
  line-height:1.28!important;
  letter-spacing:-.02em!important;
}

/* 通用长标题：允许自然换行，不强行挤成一行。 */
body h1,
body h2,
body h3{
  text-rendering:optimizeLegibility;
}
body main h1,
body main h2{
  word-break:normal;
  overflow-wrap:anywhere;
}

@media(max-width:980px){
  :root{
    --bhmz-title-hero-max:42px;
    --bhmz-title-section-max:34px;
  }
  body .hi-reasons-title{position:static!important}
}

@media(max-width:760px){
  :root{
    --bhmz-title-hero-min:30px;
    --bhmz-title-hero-max:35px;
    --bhmz-title-section-min:24px;
    --bhmz-title-section-max:30px;
    --bhmz-title-card-max:26px;
  }
  body.home-redesign-page .home-hero h1{
    font-size:clamp(32px,8vw,38px)!important;
  }
  body.bhmz-id-article .bhmz-article-hero h1,
  body.content-hero-page .detail-heading-section h1,
  body.activity-detail-page .activity-detail-hero h1,
  body.banquet-record-detail-page .record-detail-hero h1{
    font-size:clamp(28px,7vw,34px)!important;
  }
  body .hi-reasons-title h2{
    font-size:clamp(25px,6.6vw,30px)!important;
  }
}
