.language-switcher { display: flex; align-items: center; flex-shrink: 0; gap: 7px; color: #d5e2d7; }
.language-switcher[hidden] { display: none; }
.language-switcher svg { width: 17px; height: 17px; flex-shrink: 0; color: #d5f680; }
.language-switcher select { width: 113px; max-width: 100%; padding: 8px 5px; border: 1px solid #56665b; border-radius: 8px; background: #192128; color: #f4f6f0; font: inherit; font-size: 12px; cursor: pointer; }
.language-switcher option { background: #192128; color: #f4f6f0; }
.header-inner { gap: 20px; }
.header nav { margin-left: 0; margin-inline-start: auto; gap: 20px; }
.header-contact { margin-left: 0; margin-inline-start: 0; }
.header-contact span { margin-left: 0; margin-inline-start: 12px; }
.brand > span { min-width: 0; }
.price { direction: ltr; unicode-bidi: isolate; }
.price.inquiry-price { font-size: clamp(27px, 3vw, 40px); line-height: 1.2; white-space: normal; overflow-wrap: anywhere; }
.visual-bottom .quoted-duration { font-size: 18px; line-height: 1.4; max-width: 190px; overflow-wrap: anywhere; }
.quote-card .quote-list > div { padding-block: 14px; }
.activation-card .duration { flex-wrap: wrap; gap: 8px; }
.steps p { overflow-wrap: anywhere; }
html[lang="zh-CN"] h1 em { font-size: .78em; letter-spacing: -.025em; text-wrap: balance; }
@media (max-width: 600px) {
  .steps { grid-template-columns: minmax(0, 1fr); gap: 25px; }
}
.footer-inner > div { margin-left: 0; margin-inline-start: auto; }
[dir="rtl"] .price { text-align: right; }
[dir="rtl"] .inquiry-preview { text-align: right; }
[dir="rtl"] .faq-list details p { margin-right: 0; margin-inline-end: 39px; }
html:not([lang="zh-CN"]):not([lang="ja"]):not([lang="ko"]) h1 { font-size: clamp(36px, 3.7vw, 52px); line-height: 1.2; }
html:not([lang="zh-CN"]):not([lang="ja"]):not([lang="ko"]) h2 { line-height: 1.3; }
.quote-list > div { grid-template-columns: minmax(82px, .38fr) minmax(0, 1fr); gap: 20px; }
.visual-bottom { gap: 14px; }
.visual-bottom p { max-width: 51%; }
.resource-label, .resource-orbit { max-width: 58%; overflow-wrap: anywhere; }
@media (max-width: 1180px) {
  .header-inner { min-height: 78px; height: auto; gap: 14px; }
  .header .brand { order: 1; min-width: 0; flex: 1 1 0; padding-block: 12px; }
  .header .brand > span { overflow-wrap: anywhere; }
  .language-switcher { order: 2; margin-inline-start: auto; }
  .header-contact { display: none; }
  .menu-toggle { order: 3; display: grid; place-items: center; width: 35px; min-height: 40px; color: #d5e2d7; border: 0; background: transparent; font-size: 20px; padding: 0; flex-shrink: 0; }
  .menu-toggle .menu-word { display: none; }
  .header nav { display: none; position: absolute; top: 100%; left: 0; right: 0; margin: 0; padding: 17px 20px; border: 1px solid #3b4840; border-top: 0; background: #182126; gap: 0; box-shadow: 0 20px 25px #0002; }
  .header nav.open { display: flex; flex-direction: column; align-items: stretch; }
  .header nav a { padding: 9px 0; }
}
@media (max-width: 760px) {
  .header-inner { min-height: 74px; gap: 10px; }
  .header .brand { font-size: 16px; gap: 9px; }
  .header .brand img { width: 32px; height: 32px; flex-shrink: 0; }
  .header .brand small { font-size: 8px; letter-spacing: .025em; }
  .language-switcher select { width: 94px; font-size: 12px; }
  .language-switcher svg { display: none; }
  html:not([lang="zh-CN"]):not([lang="ja"]):not([lang="ko"]) h1 { font-size: clamp(31px, 8vw, 43px); line-height: 1.25; }
  .hero { overflow-wrap: anywhere; }
  .hero-actions .button { gap: 14px; }
  .resource-visual { min-height: 350px; }
  .visual-top { gap: 6px; }
  .visual-tag { white-space: normal; text-align: center; }
  .resource-label, .resource-orbit { max-width: 62%; }
  .resource-label strong, .resource-orbit strong { font-size: 10px; }
  .visual-bottom { gap: 12px; }
  .visual-bottom p { font-size: 9px; }
  .quote-list > div { grid-template-columns: minmax(70px, .42fr) minmax(0, 1fr); gap: 15px; }
  .button, .text-link { max-width: 100%; overflow-wrap: anywhere; }
  .footer-inner > div { margin-inline-start: 0; }
  [dir="rtl"] .faq-list details p { margin-inline-end: 6px; }
}
@media (max-width: 360px) {
  .language-switcher select { width: 81px; padding-inline: 3px; }
  .header-inner { gap: 8px; }
}
/* Same-basis energy-cost reference: readable at narrow viewports. */
.cost-reference { border-top: 1px solid rgba(17,22,28,.12); }
.cost-reference .cost-intro, .cost-reference > p { max-width: 78ch; line-height: 1.8; }
.cost-reference table { width: 100%; table-layout: fixed; border-collapse: collapse; margin: 28px 0; }
.cost-reference caption { text-align: start; font-size: 14px; padding-bottom: 12px; }
.cost-reference th, .cost-reference td { border-bottom: 1px solid rgba(17,22,28,.12); text-align: start; vertical-align: top; padding: 18px 16px; overflow-wrap: anywhere; }
.cost-reference thead th { background: #edf3e5; font-size: 14px; font-weight: 600; }
.cost-reference tbody td { font-size: 20px; font-weight: 600; }
.cost-reference .cost-limit { border-inline-start: 3px solid #8baf55; padding-inline-start: 16px; }
@media (max-width: 600px) {
  .cost-reference th, .cost-reference td { padding: 12px 8px; font-size: 13px; }
  .cost-reference tbody td { font-size: 16px; }
}
