/* Shared type hierarchy for the five energy pages. Loaded after layout styles.
   Card reference: 18px heading / 16px copy / 1.8 line-height.
   The scope excludes the shared site header and footer. */
.energy-type{
  --type-page:36px;
  --type-section:32px;
  --type-panel:20px;
  --type-card:18px;
  --type-body:16px;
  --type-data:15px;
  --type-caption:13px;
  font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;
  font-size:var(--type-body);
  font-weight:400;
  line-height:1.8;
}
.energy-type :is(h1,h2,h3){letter-spacing:0;font-weight:500}
.energy-type h1,
.energy-type h1:is(.om-title,.sol-title,.ess-title){font-size:var(--type-page);line-height:1.4}
.energy-type h2,
.energy-type h2:is(.om-title,.hz-title,.wy-title,.sol-title,.ess-title),
.energy-type.ess .ess-arch--photo h2.ess-title{font-size:var(--type-section);line-height:1.4;font-weight:500}
.energy-type :is(h3,.om-feature b,.om-step b,.ess-value__row b),
.energy-type .om-matrix__group-head h3,
.energy-type.ess .ess-service-list h3{
  font-size:var(--type-card);font-weight:500;line-height:1.5;letter-spacing:0;
}
.energy-type :is(.hz-model-panel__copy,.sol-panel-copy) h3{font-size:var(--type-panel);line-height:1.5}
.energy-type :is(p,.om-desc,.hz-desc,.wy-desc,.sol-desc,.ess-desc,.om-matrix__item p),
.energy-type.ess .ess-arch--photo .ess-desc,
.energy-type.ess .ess-service-list p{
  font-size:var(--type-body);font-weight:400;line-height:1.8;letter-spacing:0;color:#666b70;
}
.energy-type .page-lead{font-size:var(--type-card);line-height:1.8;color:#30343a}
.energy-type :is(.hz-scene__copy,.wy-scene__copy,.sol-scene__body,.wy-value-copy,.hz-value__item,.wy-value__item,.ess-card__body) h3{margin-bottom:12px}
.energy-type .om-feature b{margin-bottom:12px}
.energy-type.ess .ess-service-list h3{margin-bottom:12px}
.energy-type :is(.om-matrix__item b,.hz-model-panel__fact b,.hz-model-panel__type,.sol-panel-point,.hz-hero__meta b,.wy-hero__mark b){font-size:var(--type-data);font-weight:400;line-height:1.8}
.energy-type .om-matrix__item b{font-weight:500}
.energy-type .hz-compare__row>div{font-size:var(--type-data);line-height:1.8}
.energy-type .hz-compare__row--head>div{font-size:var(--type-body);font-weight:500}
.energy-type :is(.hz-model-tab,.sol-nav button>span){font-size:var(--type-body);font-weight:400;line-height:1.6}
.energy-type :is(figcaption,.hz-model-panel__fact span,.sol-stat span),
.energy-type :is(.hz-value-photo,.hz-process-photo) figcaption,
.energy-type.ess .ess-arch__photo figcaption{font-size:var(--type-caption);font-weight:400;line-height:1.7;letter-spacing:0}
.energy-type :is(.om-label,.hz-label,.wy-label,.sol-label,.ess-label){font-size:12px;font-weight:500;line-height:1.5;letter-spacing:1.6px}
.energy-type :is(.om-step>span,.hz-step>span,.wy-step>span,.ess-card__num),
.energy-type.ess .ess-service-list li::before{font-size:var(--type-caption);font-weight:400;line-height:1.7}
.energy-type :is(.page-more,.hz-cta__btn,.wy-cta__btn,.ess-pill){font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0}
.energy-type :is(.hz-cta,.wy-cta) h2{font-size:26px;line-height:1.5}
.energy-type .sol-stat strong{font-size:36px;font-weight:500;line-height:1.25}
.energy-type .ess-value__row strong{font-size:20px;font-weight:400;line-height:1.5}
@media(max-width:760px){
  .energy-type{--type-page:28px;--type-section:26px;--type-panel:19px;--type-card:18px;--type-body:15px;--type-data:14px}
  .energy-type :is(.hz-cta,.wy-cta) h2{font-size:24px}
  .energy-type .sol-stat strong{font-size:28px}
  .energy-type .sol-nav button>span{font-size:14px}
}
