.hvac-iaq-page{--hvac-iaq-deep:#102d50;--hvac-iaq-blue:#1e88ff;--hvac-iaq-pale:#f4f8fc}
.hvac-iaq-hero{background:linear-gradient(90deg,rgba(247,250,255,.98) 0%,rgba(247,250,255,.95) 45%,rgba(247,250,255,.68) 64%,rgba(247,250,255,.12) 100%),url("/assets/img/pages/all/home.webp") center 47%/cover no-repeat}
.hvac-iaq-hero .iaq-hero__grid{min-height:500px}
.hvac-iaq-hero .iaq-hero__lead strong{font-weight:600}
.hvac-iaq-flow{overflow:hidden;background:#fff}
.hvac-iaq-flow__diagram{display:grid;grid-template-columns:minmax(370px,.96fr) minmax(120px,.3fr) minmax(400px,1.24fr);align-items:center;gap:0;max-width:1280px;margin:0 auto}
.hvac-iaq-flow__source,.hvac-iaq-flow__branch{position:relative;box-sizing:border-box;border:1px solid #d5e3f2;border-radius:14px;background:#fff;box-shadow:0 16px 38px rgba(18,45,76,.08)}
.hvac-iaq-flow__source{z-index:2;padding:30px 32px;background:linear-gradient(145deg,#fff,#f1f7fd);color:var(--iaq-ink)}
.hvac-iaq-flow__source h3,.hvac-iaq-flow__branch h3{margin:8px 0 14px;font-size:clamp(20px,1.45vw,26px);font-weight:500;line-height:1.2}
.hvac-iaq-flow__step{margin:0;color:#67aeff;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.hvac-iaq-flow__sensing{display:grid;justify-items:center;gap:14px;margin-top:12px}
.hvac-iaq-flow__product{display:grid;justify-items:center;margin:0}
.hvac-iaq-flow__product img{display:block;object-fit:contain;filter:drop-shadow(0 12px 16px rgba(18,45,76,.2))}
.hvac-iaq-flow__product--sensor{grid-template-columns:142px 1fr;align-items:center;justify-items:start;width:100%}
.hvac-iaq-flow__product--sensor img{width:132px;height:104px}
.hvac-iaq-flow__product--controller img{width:min(100%,330px);height:164px}
.hvac-iaq-flow__product figcaption{margin-top:2px;color:#405a73;font-size:12px;font-weight:700}
.hvac-iaq-flow__product figcaption small{display:block;margin-top:3px;color:#72869a;font-size:10px;font-weight:500;line-height:1.35}
.hvac-iaq-flow__optional{position:relative;width:100%;padding:16px 8px 8px;border-top:1px dashed #83b9ed}
.hvac-iaq-flow__optional-label{position:absolute;top:-10px;left:50%;padding:3px 9px;border:1px solid #b9d8f5;border-radius:999px;background:#f5f9fd;color:#3f8fe2;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transform:translateX(-50%)}
.hvac-iaq-flow__metrics{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:14px}
.hvac-iaq-flow__metrics span{padding:6px 9px;border:1px solid #c7d9eb;border-radius:999px;background:#fff;color:#3f5870;font-size:11px}
.hvac-iaq-flow__pulse{position:absolute;top:22px;right:24px;width:13px;height:13px;border-radius:50%;background:#59a7ff}
.hvac-iaq-flow__links{width:100%;height:480px;overflow:visible}
.hvac-iaq-flow__link{fill:none;stroke:#87bfff;stroke-width:3;stroke-dasharray:8 10;stroke-dashoffset:0}
.hvac-iaq-flow__branches{display:grid;gap:18px}
.hvac-iaq-flow__branch{padding:24px 26px;border-color:#6daeff;box-shadow:0 18px 42px rgba(30,136,255,.1)}
.hvac-iaq-flow__branch h3{color:var(--iaq-ink)}
.hvac-iaq-flow__branch>p:last-child{margin:0;color:var(--iaq-copy);font-size:14px;line-height:1.65}
.hvac-iaq-page .iaq-features a{display:flex;align-items:center;min-height:50px;padding:12px 16px;border:1px solid #45617e;color:#fff;font-size:14px;text-decoration:none;transition:border-color .2s ease,background .2s ease}
.hvac-iaq-page .iaq-features a:hover,.hvac-iaq-page .iaq-features a:focus-visible{border-color:#72b4ff;background:rgba(72,136,248,.14);outline:0}
.dcv-plenum-integration{overflow:hidden;background:#f4f8fc}
.dcv-plenum-integration__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);align-items:center;gap:clamp(56px,7vw,110px)}
.dcv-plenum-integration__visual{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) auto minmax(0,.88fr);align-items:center;gap:30px;min-height:440px;padding:20px 0;border:0;border-radius:0;background:transparent;box-shadow:none}
.dcv-plenum-integration__visual:before{display:none}
.dcv-plenum-integration__product{position:relative;z-index:1;display:grid;justify-items:center;margin:0;text-align:center}
.dcv-plenum-integration__product img{display:block;width:100%;height:310px;object-fit:contain;filter:drop-shadow(0 18px 18px rgba(18,45,76,.2))}
.dcv-plenum-integration__product--damper img{height:275px}
.dcv-plenum-integration__product figcaption{margin-top:18px;color:#23405f;font-size:14px;font-weight:700}
.dcv-plenum-integration__connector{position:relative;z-index:2;display:block;color:#1e88ff;text-align:center}
.dcv-plenum-integration__connector b{display:block;width:auto;height:auto;border:0;border-radius:0;background:transparent;font-size:64px;font-weight:300;line-height:1;box-shadow:none}
.dcv-plenum-integration__connector small{display:none}
.dcv-plenum-integration__copy{max-width:650px}
.dcv-plenum-integration__copy h2{margin:0;color:#23405f;font-size:clamp(30px,2.5vw,42px);font-weight:500;line-height:1.15}
.dcv-plenum-integration__copy>p:not(.gas-label){margin:22px 0 0;color:#4d6073;font-size:16px;line-height:1.76}
.dcv-plenum-integration__copy .gas-btn{margin-top:30px}
@media(max-width:900px){.hvac-iaq-flow__diagram{grid-template-columns:1fr;gap:22px}.hvac-iaq-flow__source{width:min(100%,520px);margin-inline:auto}.hvac-iaq-flow__links{width:100%;height:110px;transform:rotate(90deg)}.hvac-iaq-flow__branches{gap:14px}}
@media(max-width:980px){.dcv-plenum-integration__grid{grid-template-columns:1fr;gap:42px}.dcv-plenum-integration__copy{max-width:760px}}
@media(max-width:780px){.hvac-iaq-hero{background:linear-gradient(rgba(247,250,255,.94),rgba(247,250,255,.9)),url("/assets/img/pages/all/home.webp") center/cover no-repeat}.dcv-plenum-integration__visual{min-height:360px;padding:20px 0}.dcv-plenum-integration__product img{height:225px}.dcv-plenum-integration__product--damper img{height:205px}.dcv-plenum-integration__copy h2{font-size:clamp(27px,7vw,34px)}}
@media(max-width:600px){.dcv-plenum-integration__visual{grid-template-columns:1fr;gap:20px}.dcv-plenum-integration__product img,.dcv-plenum-integration__product--damper img{height:210px}.dcv-plenum-integration__connector b{font-size:54px}.dcv-plenum-integration__copy .gas-btn{width:100%}}
@media(max-width:520px){.hvac-iaq-flow__source{padding:28px 22px}.hvac-iaq-flow__branch{padding:22px}.hvac-iaq-flow__links{height:80px}}

/* Mobile layout for sections after the hero; desktop and section 1 stay intact. */
@media (max-width: 780px) {
  .hvac-iaq-page > section:not(.iaq-hero) { padding-block: 44px; }
  .hvac-iaq-page > .gas-section > .gas-container,
  .hvac-iaq-page #system-architecture > .gas-container--wide { width: calc(100% - 32px); max-width: none; margin-inline: auto; }
  .hvac-iaq-page > section:not(.iaq-hero) h2 { font-size: 25px; line-height: 1.4; margin: 8px 0 18px; }
  .hvac-iaq-page > section:not(.iaq-hero) p:not(.gas-label) { font-size: 15px; line-height: 1.8; }
  .hvac-iaq-page .hvac-capability-section { padding-inline: 16px; }
  .hvac-iaq-page .hvac-capability-layout { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 24px; }
  .hvac-iaq-page .hvac-capability-photo { min-height: 0; height: auto; aspect-ratio: 16 / 10; border-radius: 14px; }
  .hvac-iaq-page .hvac-capability-photo::after { display: none; }
  .hvac-iaq-page .hvac-capability-content { padding: 0; }
  .hvac-iaq-page .hvac-capability-content > header { margin-bottom: 6px; }
  .hvac-iaq-page .hvac-capability-section .hvac-capability-grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .hvac-iaq-page .hvac-capability-section .hvac-capability-card { grid-template-columns: 44px minmax(0, 1fr); gap: 14px; padding: 20px 0; min-height: 0; border-bottom: 1px solid #dce7f1; }
  .hvac-iaq-page .hvac-capability-section .hvac-capability-card:last-child { border-bottom: 0; }
  .hvac-iaq-page .hvac-capability-section .hvac-capability-icon { width: 44px; height: 44px; }
  .hvac-iaq-page .hvac-capability-icon svg { width: 30px; height: 30px; }
  .hvac-iaq-page .hvac-capability-card h3 { margin: 0 0 8px; font-size: 18px; }
  .hvac-iaq-page .hvac-capability-card p { margin: 0; }
  .hvac-iaq-page .hvac-model-note { padding: 16px; border-radius: 10px; }

  /* Replace the fixed-width desktop matrix with readable system groups. */
  .hvac-iaq-page .hvac-centered { text-align: left; }
  .hvac-iaq-page .hvac-topology-scroller { width: 100%; margin: 24px 0 0; padding: 0; overflow: visible; }
  .hvac-iaq-page .hvac-topology-canvas { width: 100%; min-width: 0; display: flex; flex-direction: column; gap: 16px; backdrop-filter: none; }
  .hvac-iaq-page .hvac-topology-cloud { padding: 20px; gap: 10px; }
  .hvac-iaq-page .hvac-topology-cloud strong { max-width: none; font-size: 18px; }
  .hvac-iaq-page .hvac-topology-cloud small { font-size: 12px; letter-spacing: 0; }
  .hvac-iaq-page .hvac-topology-controller { padding: 20px 16px; gap: 16px; }
  .hvac-iaq-page .hvac-topology-controller-images { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto; flex: none; gap: 16px; }
  .hvac-iaq-page .hvac-topology-controller-images img { width: 100%; height: 130px; }
  .hvac-iaq-page .hvac-topology-controller strong { font-size: 17px; }
  .hvac-iaq-page .hvac-topology-controller small { padding: 0; border: 0; font-size: 13px; }
  .hvac-iaq-page .hvac-topology-lane { display: flex; flex-direction: column; align-items: stretch; gap: 18px; padding: 20px 14px; min-height: 0; }
  .hvac-iaq-page .hvac-topology-lane > header { align-self: stretch; padding: 0 0 14px; border-bottom: 1px solid #e3edf6; }
  .hvac-iaq-page .hvac-topology-lane > header::after { display: none; }
  .hvac-iaq-page .hvac-topology-lane > header h3 { display: inline; margin-left: 8px; font-size: 18px; }
  .hvac-iaq-page .hvac-topology-lane > header small { display: block; margin-top: 8px; font-size: 13px; }
  .hvac-iaq-page .hvac-topology-lane .hvac-topology-module { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); height: auto; gap: 20px 12px; }
  .hvac-iaq-page .hvac-topology-module figure { padding: 0; transform: none; }
  .hvac-iaq-page .hvac-topology-lane .hvac-topology-module img { width: 100%; height: 108px; }
  .hvac-iaq-page .hvac-topology-lane .hvac-topology-node { width: auto; height: auto; padding: 0; }
  .hvac-iaq-page .hvac-topology-lane .hvac-topology-node img { width: 100%; max-width: 150px; height: 108px; }
  .hvac-iaq-page .hvac-topology-lane .hvac-topology-node-group { width: 100%; height: auto; margin: 0; grid-template-columns: minmax(0, 1fr) 26px minmax(0, 1fr); gap: 8px; }
  .hvac-iaq-page .hvac-topology-module figcaption,
  .hvac-iaq-page .hvac-topology-node figcaption { font-size: 13px; line-height: 1.5; margin-top: 8px; }
  .hvac-iaq-page .hvac-topology-module::before,
  .hvac-iaq-page .hvac-topology-module figure::after,
  .hvac-iaq-page .hvac-topology-node::after,
  .hvac-iaq-page .hvac-topology-node-group::after { display: none; }
  .hvac-iaq-page #system-architecture .hvac-caption { text-align: left; margin-top: 24px; }

  .hvac-iaq-page .hvac-split { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .hvac-iaq-page .hvac-iaq .hvac-split > div:first-child { order: 0; }
  .hvac-iaq-page .iaq-features { grid-template-columns: minmax(0, 1fr); gap: 10px; margin-top: 22px; }
  .hvac-iaq-page .iaq-features > * { padding: 12px 14px; min-height: 48px; font-size: 15px; border-radius: 8px; }
  .hvac-iaq-page .hvac-iaq-carousel { grid-template-columns: 32px minmax(0, 1fr) 32px; gap: 4px; padding-bottom: 34px; }
  .hvac-iaq-page .hvac-iaq-stage { min-height: 0; aspect-ratio: 4 / 3; }
  .hvac-iaq-page .hvac-iaq-arrow { width: 32px; height: 44px; font-size: 28px; }
  .hvac-iaq-page .hvac-iaq-media .hvac-section-cta { margin-top: 24px; max-width: 100%; text-align: center; white-space: normal; }
  .hvac-iaq-page .p11-related-products__actions { flex-wrap: wrap; gap: 16px; }
  .hvac-iaq-page .p11-related-products__track { grid-auto-columns: 88%; gap: 16px; }
  .hvac-iaq-page .hvac-project-carousel { margin-top: 24px; padding: 0 0 62px; }
  .hvac-iaq-page .hvac-project-viewport { scroll-snap-type: x mandatory; }
  .hvac-iaq-page .hvac-case-grid { gap: 16px; }
  .hvac-iaq-page .hvac-case-card { flex-basis: 90%; min-width: 0; padding: 0 18px 24px; border-radius: 12px; }
  .hvac-iaq-page .hvac-case-card .case-image { height: auto; aspect-ratio: 4 / 3; margin: 0 -18px 20px; border-radius: 12px 12px 0 0; }
  .hvac-iaq-page .hvac-case-card h3 { font-size: 19px; }
  .hvac-iaq-page .hvac-project-arrow { top: auto; bottom: 0; width: 44px; height: 44px; transform: none; }
  .hvac-iaq-page .hvac-project-arrow--prev { left: calc(50% - 52px); }
  .hvac-iaq-page .hvac-project-arrow--next { right: calc(50% - 52px); }
}

@media (max-width: 780px) {
  .hvac-iaq-page .hvac-capability-content .gas-title { width: 100%; max-width: none; }
  .hvac-iaq-page #hvac-iaq-products .r290-related-products__intro { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .hvac-iaq-page #hvac-iaq-products .r290-related-products__heading { width: 100%; max-width: none; }
  .hvac-iaq-page #hvac-iaq-products .r290-related-products__explore { display: inline-flex; width: auto; white-space: nowrap; }
  .hvac-iaq-page #hvac-iaq-products .gas-container { padding-bottom: 56px; }
  .hvac-iaq-page #hvac-iaq-products .p11-related-products__controls { top: auto; bottom: 22px; left: calc(50% - 52px); right: calc(50% - 52px); }
  .hvac-iaq-page #hvac-iaq-products .p11-related-products__arrow { width: 44px; height: 44px; }
}
