.water-page { color: var(--text); background: #fff; }
.water-page * { letter-spacing: 0; }
.water-page main [id] { scroll-margin-top: 104px; }
.water-page a:focus-visible, .water-page button:focus-visible { outline: 3px solid var(--primary); outline-offset: 4px; }
.water-page .water-hero { padding: 152px 0 64px; background: #fff; }
.water-page .fs-hero__layout { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 46px; }
.water-page .fs-hero__copy h1 { font-size: 40px; line-height: 1.3; font-weight: 600; }
.water-page .fs-hero__sub { font-size: 19px; }
.water-page .fs-hero__desc { max-width: 510px; }
.water-page .fs-hero__proof { gap: 26px; }
.water-page .fs-hero__proof b { color: var(--text); font: 600 16px/1.5 "Microsoft YaHei", sans-serif; }
.water-page .fs-hero__proof span { font-size: 12px; }
.water-page .fs-button { border-radius: 6px; }
.water-page .fs-button:hover { transform: none; box-shadow: none; }
.water-page .fs-button--ghost { border-color: transparent; background: transparent; padding-inline: 12px; }
.water-page .fs-button--ghost:hover { color: var(--primary); text-decoration: underline; }
.water-hero-figure, .water-loop-figure { margin: 0; }
.water-hero-figure a, .water-loop-figure a { position: relative; display: block; background: #fff; }
.water-hero-figure img, .water-loop-figure img { display: block; width: 100%; height: auto; object-fit: contain; }
.water-loop-figure img { max-height: 550px; }
.water-summary-figure img { max-height: 440px; }
.water-edge-figure { position: relative; }
.water-edge-figure img { max-height: none; }
.water-edge-anchor { position: absolute; top: 0; }
.water-page #water-sense .water-summary-figure img { max-height: 340px; }
.water-service-grid.water-sense-sources { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 22px; border-top: 1px solid var(--line); padding-top: 12px; }
.water-sense-sources h3 { display: flex; align-items: center; gap: 10px; }
.water-sense-sources h3 i { font-size: 20px; }
.water-hero-figure figcaption, .water-loop-figure figcaption { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px; color: var(--muted); font-size: 12px; line-height: 1.8; margin-top: 12px; }
.water-hero-figure figcaption { row-gap: 6px; }
.water-hero-caption { flex-basis: 100%; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.8; text-align: center; overflow-wrap: anywhere; }
.water-key { display: inline-flex; align-items: center; gap: 7px; }
.water-key::before { content: ""; width: 16px; border-top: 2px solid var(--accent); }
.water-key--data::before { border-color: var(--primary); border-top-style: dashed; }
.water-image-zoom { position: absolute; right: 10px; bottom: 10px; display: grid; place-items: center; width: 36px; height: 36px; background: #fff; border: 1px solid var(--line); border-radius: 6px; color: var(--primary); }
@media (hover: hover) and (pointer: fine) {
  .water-image-zoom { opacity: 0; transition: opacity .15s ease; }
  [data-water-image]:hover .water-image-zoom, [data-water-image]:focus-visible .water-image-zoom { opacity: 1; }
}
.water-page .fs-section { padding: 56px 0; background: #fff; border-top: 1px solid #edf0f2; }
.water-page .fs-section:not(.fs-section--alt) { background: #fff; }
.water-page .fs-section-head { max-width: 840px; margin-bottom: 26px; }
.water-page .fs-section-head h2 { font-size: 28px; line-height: 1.45; margin-bottom: 12px; }
.water-page .fs-section-head .fs-eyebrow { color: var(--primary); font-size: 13px; margin-bottom: 16px; }
.water-page .fs-adv-card { border-radius: 8px; padding: 24px; }
.water-page .fs-adv-card h3 { font-size: 18px; }
.water-note { margin: 22px 0 0; color: var(--muted); font-size: 12px; line-height: 1.9; }
.water-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; padding: 26px 0 0; margin: 28px 0 0; border-top: 1px solid var(--line); gap: 22px; }
.water-flow li { display: flex; align-items: flex-start; gap: 14px; min-width: 0; }
.water-flow li > span { color: var(--gold); font: 600 13px/1.8 ui-monospace, monospace; }
.water-flow h3 { margin: 0 0 9px; font-size: 17px; line-height: 1.5; font-weight: 600; }
.water-flow p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.85; }
.water-architecture { border-block: 1px solid var(--line); }
.water-architecture-row { display: grid; grid-template-columns: 100px minmax(0, 1fr) 200px; gap: 25px; align-items: center; padding: 26px 0; }
.water-architecture-row + .water-architecture-row { border-top: 1px solid var(--line); }
.water-layer { color: var(--primary); font-size: 15px; font-weight: 600; }
.water-architecture h3 { font-size: 19px; margin: 0 0 8px; font-weight: 600; }
.water-architecture p { font-size: 14px; color: var(--muted); line-height: 1.85; margin: 0; }
.water-protocol { color: var(--muted); font-size: 13px; line-height: 1.7; text-align: right; }
.water-service-grid, .water-record-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin-top: 32px; }
.water-service-grid article, .water-record-grid article { min-width: 0; }
.water-service-grid i, .water-record-grid i { color: var(--primary); font-size: 25px; }
.water-service-grid h3, .water-record-grid h3 { font-size: 18px; font-weight: 600; margin: 14px 0 10px; }
.water-service-grid p, .water-record-grid p { color: var(--muted); font-size: 14px; line-height: 1.9; margin: 0; }
.water-scenarios { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.water-scenarios article { border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 24px; }
.water-scenarios article > span { color: var(--gold); font-size: 12px; }
.water-scenarios h3 { font-size: 18px; font-weight: 600; margin: 12px 0; line-height: 1.5; }
.water-scenarios p { color: var(--muted); font-size: 14px; line-height: 1.85; margin: 0; }
.water-guard-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 32px; margin: 30px 0 0; }
.water-guard-list > div { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 14px; border-top: 1px solid var(--line); padding-top: 20px; }
.water-guard-list dt { color: var(--primary); font-size: 14px; font-weight: 600; }
.water-guard-list dd { color: var(--muted); font-size: 13px; line-height: 1.8; margin: 0; }
.water-rollout { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 26px; list-style: none; padding: 0; margin: 0; }
.water-rollout li { border-top: 2px solid #c7e9e7; padding-top: 22px; }
.water-rollout b { color: var(--gold); font: 600 14px/1.5 ui-monospace, monospace; }
.water-rollout h3 { font-size: 18px; font-weight: 600; line-height: 1.5; margin: 12px 0; }
.water-rollout p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.9; }
.water-page #water-console { min-height: auto; padding: 56px 0; background: #f7f9fa; border-top: 1px solid #edf0f2; }
.water-page #water-console::before, .water-page #water-console .sp-jarvis__monitor::after, .water-page #water-console .jv-panel::before { display: none; }
.water-page #water-console .sp-section-head { transform: none !important; max-width: 100%; margin-bottom: 0; }
.water-page #water-console .sp-section-intro { margin-bottom: 0; }
.water-page #water-console .sp-jarvis__monitor { margin-top: 24px; padding: 0; border-radius: 8px; box-shadow: none; overflow: hidden; }
.water-page #water-console h2 { font-size: 28px; line-height: 1.45; }
.water-page #water-console .jv-screen { aspect-ratio: auto; min-height: 470px; border: 0; border-radius: 0; background: #fff; transform: none !important; will-change: auto; }
.water-page #water-console .jv-topbar, .water-page #water-console .jv-col, .water-page #water-console .jv-core, .water-page #water-console .jv-bottom { transform: none !important; }
.water-page #water-console .jv-topbar, .water-page #water-console .jv-bottom { background: #fff; }
.water-page #water-console .jv-topbar { flex-wrap: wrap; padding: 14px 18px; font-size: 11px; gap: 8px 20px; }
.water-page #water-console .jv-main { grid-template-columns: minmax(0, 24fr) minmax(0, 44fr) minmax(0, 32fr); padding: 20px; gap: 20px; }
.water-page #water-console .jv-col, .water-page #water-console .jv-core { min-width: 0; gap: 20px; }
.water-page #water-console .jv-panel { border: 0; border-radius: 0; padding: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
.water-page #water-console .jv-panel__title { font-size: 11px; line-height: 1.5; gap: 8px; flex-wrap: wrap; }
.water-page #water-console [data-jv-ring-title], .water-page #water-console [data-jv-stats-title], .water-page #water-console [data-jv-wave-title] { display: none; }
.water-page #water-console .jv-reactor { width: 136px; max-width: 100%; }
.water-page #water-console .jv-reactor__value b { font-size: 24px; }
.water-page #water-console .jv-reactor__value span { font-size: 10px; }
.water-page #water-console .jv-reactor__fill { filter: none; }
.water-page #water-console .jv-stats { gap: 12px; }
.water-page #water-console .jv-stat { font-size: 11px; line-height: 1.5; }
.water-page #water-console .jv-core { align-items: stretch; justify-content: flex-start; border-inline: 1px solid #edf0f2; padding-inline: 20px; }
.water-page #water-console .water-console-trend { flex: 1; min-height: 220px; }
.water-page #water-console .water-console-trend canvas { display: block; width: 100%; height: 220px; min-height: 180px; }
.water-page #water-console .jv-core__readout { justify-content: space-between; flex-wrap: wrap; gap: 12px; padding-top: 14px; border-top: 1px solid #edf0f2; font-size: 11px; line-height: 1.6; }
.water-page #water-console .jv-chat { min-height: 260px; max-height: 320px; overflow-y: auto; mask-image: none; gap: 10px; }
.water-page #water-console .jv-chat li { padding: 9px 10px; border: 0; border-radius: 4px; box-shadow: none; font-size: 12px; overflow-wrap: anywhere; }
.water-page #water-console .jv-chat li.is-jarvis { background: #f2f5f6; }
.water-page #water-console .jv-chat li.is-user { background: #edf7f4; }
.water-page #water-console .jv-chat__typing[hidden] { display: none; }
.water-page #water-console .jv-command { border-radius: 6px; box-shadow: none; min-height: 38px; }
.water-page #water-console .jv-command input { font-size: 12px; }
.water-page #water-console .jv-dock { border: 0; padding: 0; background: transparent; backdrop-filter: none; gap: 6px; }
.water-page #water-console .jv-dock button { width: 34px; height: 34px; border-radius: 6px; }
.water-page #water-console .jv-dock button:hover, .water-page #water-console .jv-dock button:focus-visible { transform: none; box-shadow: none; }
.water-page .water-contact { background: #eef4f8; padding: 64px 0; }
.water-contact h2 { font-size: 32px; line-height: 1.4; }
.water-page .water-contact .fs-button { border-radius: 999px; }
.water-page .water-contact .fs-button--primary:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(11,169,155,.28); }
.water-contact .fs-cta__inner > p:not(.fs-eyebrow) { max-width: 760px; margin: -8px 0 26px; color: var(--muted); font-size: 14px; line-height: 1.85; }
.water-page .lh-site-footer__brand p { max-width: none; white-space: nowrap; }
@media (min-width: 1001px) {
  .water-page .lh-site-footer__grid { grid-template-columns: minmax(270px, 1.2fr) minmax(0, 1fr) minmax(0, 1fr) 130px; gap: 28px; }
}
.water-image-dialog { border: 0; border-radius: 8px; padding: 54px 16px 16px; width: min(1500px, 96vw); max-width: 96vw; max-height: 94vh; background: #fff; }
.water-image-dialog::backdrop { background: #10222fb8; }
.water-image-dialog > img { display: block; width: 100%; max-width: none; height: auto; }
.water-dialog-toolbar { position: sticky; top: 0; left: 0; height: 0; z-index: 1; width: 100%; }
.water-dialog-tools { position: absolute; top: -42px; right: 0; display: flex; gap: 8px; }
.water-dialog-tools form { margin: 0; }
.water-dialog-tools button { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%; background: #fff; color: var(--primary); cursor: pointer; }
.water-dialog-tools button:hover { background: var(--surface-2); }
html.water-dialog-open { overflow: hidden; }
@media (max-width: 1100px) {
  .water-page .fs-hero__copy h1 { font-size: 34px; }
  .water-page .fs-hero__layout { gap: 30px; }
  .water-page .fs-hero__proof { gap: 16px; }
  .water-page .fs-hero__proof b { font-size: 16px; }
}
@media (max-width: 1000px) {
  .water-page .water-hero { padding-top: 116px; padding-bottom: 40px; }
  .water-page .fs-hero__layout { grid-template-columns: 1fr; }
  .water-page .fs-hero__desc { max-width: 730px; }
  .water-hero-figure { max-width: 760px; }
  .water-flow, .water-rollout { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .water-architecture-row { grid-template-columns: 80px minmax(0, 1fr); gap: 14px 22px; }
  .water-protocol { grid-column: 2; text-align: left; }
  .water-scenarios { grid-template-columns: 1fr; }
  .water-page .lh-site-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
  .water-page #water-console .jv-main { grid-template-columns: 1fr; padding: 18px; }
  .water-page #water-console .jv-core { border-inline: 0; padding: 0 0 20px; border-bottom: 1px solid #edf0f2; }
  .water-page #water-console .jv-col--left { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .water-page #water-console .jv-col--right { border-top: 1px solid #edf0f2; padding-top: 20px; }
  .water-page #water-console .jv-chat { min-height: 220px; }
}
@media (max-width: 600px) {
  .water-service-grid.water-sense-sources { grid-template-columns: 1fr; }
  .water-page .water-hero { padding-top: 104px; padding-bottom: 30px; }
  .water-page .fs-hero__copy h1 { font-size: 28px; }
  .water-page .fs-hero__sub { font-size: 17px; }
  .water-page .fs-hero__proof { gap: 16px 20px; margin-top: 26px; }
  .water-page .fs-hero__proof b { font-size: 16px; }
  .water-page .fs-section, .water-page #water-console { padding: 40px 0; }
  .water-page .fs-section-head h2, .water-page #water-console h2 { font-size: 24px; }
  .water-contact h2 { font-size: 26px; }
  .water-page .fs-adv-card { padding: 20px; }
  .water-flow, .water-rollout, .water-service-grid, .water-record-grid, .water-guard-list { grid-template-columns: 1fr; gap: 24px; }
  .water-architecture-row { grid-template-columns: 1fr; gap: 10px; padding: 22px 0; }
  .water-protocol { grid-column: auto; }
  .water-architecture h3 { font-size: 18px; }
  .water-guard-list > div { grid-template-columns: 80px minmax(0, 1fr); gap: 12px; }
  .water-image-zoom { width: 30px; height: 30px; right: 5px; bottom: 5px; }
  .water-page .water-contact { padding: 44px 0; }
  .water-page #water-console .jv-stat { font-size: 10px; }
  .water-page #water-console .jv-main { padding: 14px; gap: 16px; }
  .water-page #water-console .jv-col--left { gap: 14px; }
  .water-page #water-console .jv-core__readout { gap: 8px; font-size: 10px; }
  .water-hero-figure figcaption { gap: 6px 12px; font-size: 11px; }
}
