.flue-project{
  --bg:#f6f8f5; --surface:#ffffff; --tint:#eaf1e4; --line:#d8e2d3;
  --ink:#10211e; --muted:#4d5e59; --deep:#0b2a25; --forest:#254a31; --olive:#527615; --sun:#e9a21b;
  --on-deep:#ffffff; --on-deep-muted:rgba(255,255,255,.74);
  --bar-eg:#c9a227; --bar-eu1:#9aa3b5; --bar-eu2:#b9b48e; --bar-bat:#7d6a12; --bar-shu:#2f8f4e;
  --font:"Inter","Helvetica Neue",Arial,sans-serif;
  color-scheme:light;
}
.flue-project *{box-sizing:border-box}
.flue-project{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
.flue-project .wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.flue-project h1,.flue-project h2,.flue-project h3{text-wrap:balance;line-height:1.12;margin:0}
.flue-project h2{font-size:clamp(28px,4vw,40px);font-weight:700;letter-spacing:-.02em;color:var(--forest)}
.flue-project h3{font-size:20px;font-weight:700;letter-spacing:-.01em}
.flue-project p{margin:0}
.flue-project .eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--olive)}
.flue-project .lead{font-size:19px;color:var(--muted);max-width:62ch}
.flue-project .prose{display:grid;gap:16px;max-width:68ch}
.flue-project .prose p{color:var(--muted)}
.flue-project .prose strong{color:var(--ink)}
.flue-project section{padding-block:72px}
.flue-project section.tint{background:var(--tint)}
.flue-project .sec-head{display:grid;gap:12px;margin-bottom:36px}
.flue-project a{color:var(--olive)}
.flue-project a:focus-visible,.flue-project button:focus-visible{outline:3px solid var(--sun);outline-offset:3px}
.flue-project .hero{position:relative;background:
  radial-gradient(120% 90% at 85% 10%,rgba(82,118,21,.55),transparent 60%),
  linear-gradient(90deg,rgba(5,27,23,.94),rgba(5,27,23,.72) 55%,rgba(5,27,23,.35)),
  url("/assets/shu-4524cdbd82/3ea400934f515aaa.jpg") center 35%/cover no-repeat,
  var(--deep);color:var(--on-deep);overflow:hidden}
.flue-project .hero .wrap{padding-block:84px 72px;position:relative;z-index:1;display:grid;gap:22px}
.flue-project .hero .eyebrow{color:var(--on-deep-muted)}
.flue-project .hero h1{font-size:clamp(40px,7vw,76px);font-weight:800;letter-spacing:-.03em;max-width:13ch}
.flue-project .hero p{font-size:19px;color:var(--on-deep-muted);max-width:56ch}
.flue-project .hero-art{display:none}
.flue-project .gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:220px;grid-auto-flow:dense;gap:12px}
.flue-project .gallery figure{margin:0;position:relative;overflow:hidden;border-radius:4px;background:var(--line)}
.flue-project .gallery img{width:100%;height:100%;object-fit:cover;display:block}
.flue-project .gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;font-size:13px;line-height:1.35;color:#fff;background:linear-gradient(0deg,rgba(5,22,19,.85),transparent)}
.flue-project .gallery .tall{grid-row:span 2}
.flue-project .gallery .wide{grid-column:span 2}
@media (max-width:860px){.flue-project .gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:200px}
}
@media (max-width:480px){.flue-project .gallery{grid-auto-rows:170px}
}
.flue-project .hmi{margin-top:40px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:32px;align-items:center}
@media (max-width:860px){.flue-project .hmi{grid-template-columns:minmax(0,1fr)}
}
.flue-project .hmi img{width:100%;height:auto;display:block;border-radius:4px;border:1px solid var(--line)}
.flue-project .btn{display:inline-flex;align-items:center;gap:10px;background:var(--olive);color:#fff;text-decoration:none;font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:15px 22px;border-radius:4px;width:max-content;max-width:100%}
.flue-project .btn:hover{filter:brightness(1.08)}
.flue-project .btn.ghost{background:transparent;border:1.5px solid currentColor;color:var(--forest)}
.flue-project .hero .btn.ghost{color:#fff}
.flue-project .btn-row{display:flex;flex-wrap:wrap;gap:12px}
.flue-project .crumb{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-block:18px;border-bottom:1px solid var(--line)}
.flue-project .crumb b{color:var(--ink)}
.flue-project .figs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin-top:40px}
.flue-project .fig{background:var(--surface);padding:24px 22px;display:grid;gap:6px;align-content:start}
.flue-project .fig .n{font-size:clamp(30px,3.6vw,42px);font-weight:800;letter-spacing:-.03em;color:var(--forest);font-variant-numeric:tabular-nums;line-height:1}
.flue-project .fig .l{font-size:14px;color:var(--muted);line-height:1.45}
@media (max-width:820px){.flue-project .figs{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.flue-project .split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}
@media (max-width:860px){.flue-project .split{grid-template-columns:minmax(0,1fr);gap:32px}
}
.flue-project .diagram{background:#fff;border:1px solid var(--line);border-radius:6px;padding:16px;overflow-x:auto}
.flue-project .diagram img{display:block;min-width:720px;width:100%;height:auto}
.flue-project .caption{font-size:13px;color:var(--muted);margin-top:10px}
.flue-project .steps{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 28px;counter-reset:s}
@media (max-width:860px){.flue-project .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:520px){.flue-project .steps{grid-template-columns:minmax(0,1fr)}
}
.flue-project .steps li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start}
.flue-project .steps .k{width:36px;height:36px;border-radius:50%;background:var(--forest);color:var(--bg);display:grid;place-items:center;font-weight:800;font-size:15px;font-variant-numeric:tabular-nums}
.flue-project .steps h3{font-size:16px;margin-bottom:4px}
.flue-project .steps p{font-size:15px;color:var(--muted);line-height:1.55}
.flue-project .cmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:620px){.flue-project .cmp{grid-template-columns:minmax(0,1fr)}
}
.flue-project .card{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:24px;display:grid;gap:12px;align-content:start}
.flue-project .card svg{width:100%;height:auto;display:block}
.flue-project .card .v{font-size:28px;font-weight:800;color:var(--forest);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.flue-project .card p{font-size:15px;color:var(--muted)}
.flue-project .card.hl{border-color:var(--olive);box-shadow:inset 0 0 0 1px var(--olive)}
.flue-project .chem{margin-top:28px;display:flex;flex-wrap:wrap;gap:10px}
.flue-project .chem span{font-size:14px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 14px;color:var(--ink);white-space:nowrap}
.flue-project .chem sub{font-size:.75em}
.flue-project .vs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--surface)}
@media (max-width:720px){.flue-project .vs{grid-template-columns:minmax(0,1fr)}
}
.flue-project .vs > div{padding:28px;display:grid;gap:16px;align-content:start}
.flue-project .vs > div + div{border-left:1px solid var(--line)}
@media (max-width:720px){.flue-project .vs > div + div{border-left:0;border-top:1px solid var(--line)}
}
.flue-project .vs .shu{background:var(--tint)}
.flue-project .vs ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.flue-project .vs li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;font-size:15.5px;line-height:1.5;color:var(--muted)}
.flue-project .vs li::before{content:"";width:10px;height:10px;margin-top:7px;border-radius:50%;background:var(--line)}
.flue-project .vs .shu li::before{background:var(--olive)}
.flue-project .vs .shu li{color:var(--ink)}
.flue-project .units{display:flex;flex-wrap:wrap;gap:8px}
.flue-project .units span{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);border-radius:4px;padding:6px 10px;color:var(--muted);background:var(--bg)}
.flue-project .units span.one{border-color:var(--olive);color:var(--olive)}
.flue-project .photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.flue-project .photos figure{margin:0;display:grid;gap:8px}
.flue-project .photos img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px;display:block;background:var(--line)}
.flue-project .photos figcaption{font-size:13px;color:var(--muted);line-height:1.4}
@media (max-width:560px){.flue-project .photos{grid-template-columns:repeat(2,minmax(0,1fr))}
.flue-project .photos figure:last-child{grid-column:1/-1}
.flue-project .photos figure:last-child img{aspect-ratio:16/10}
}
.flue-project .tbl{overflow-x:auto;border:1px solid var(--line);border-radius:6px;background:var(--surface)}
.flue-project table{border-collapse:collapse;width:100%;font-size:15px;font-variant-numeric:tabular-nums}
.flue-project th,.flue-project td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.flue-project thead th{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700;background:var(--tint)}
.flue-project tbody tr:last-child td{border-bottom:0}
.flue-project td.num,.flue-project th.num{text-align:right;white-space:nowrap}
.flue-project td.shu{color:var(--forest);font-weight:800}
.flue-project .badge{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--olive);color:#fff;border-radius:3px;padding:3px 8px}
.flue-project .legend{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--muted);margin-bottom:20px}
.flue-project .legend span{display:inline-flex;align-items:center;gap:7px}
.flue-project .legend i{width:12px;height:12px;border-radius:2px;display:inline-block}
.flue-project .multiples{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.flue-project .mult{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:18px 20px;display:grid;gap:10px;align-content:start}
.flue-project .mult h3{font-size:15px;display:flex;justify-content:space-between;gap:8px}
.flue-project .mult h3 small{font-weight:500;color:var(--muted);font-size:12px}
.flue-project .row{display:grid;grid-template-columns:96px minmax(0,1fr) 44px;gap:10px;align-items:center;font-size:12.5px;color:var(--muted)}
.flue-project .track{height:12px;background:var(--tint);border-radius:2px;overflow:hidden}
.flue-project .track b{display:block;height:100%;border-radius:2px}
.flue-project .row .val{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}
.flue-project .row.shu .val{color:var(--forest);font-weight:800}
.flue-project .row.na .val{color:var(--muted);font-weight:400}
.flue-project .road{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:3px solid var(--line);position:relative}
@media (max-width:860px){.flue-project .road{grid-template-columns:minmax(0,1fr);border-top:0;border-left:3px solid var(--line)}
}
.flue-project .road li{padding:26px 22px 0 0;display:grid;gap:8px;align-content:start;position:relative}
@media (max-width:860px){.flue-project .road li{padding:0 0 28px 26px}
}
.flue-project .road li::before{content:"";position:absolute;top:-10px;left:0;width:17px;height:17px;border-radius:50%;background:var(--bg);border:3px solid var(--line)}
@media (max-width:860px){.flue-project .road li::before{top:2px;left:-10px}
}
.flue-project .road li.done::before{background:var(--olive);border-color:var(--olive)}
.flue-project .road .st{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--olive)}
.flue-project .road .st.next{color:var(--muted)}
.flue-project .road p{font-size:15px;color:var(--muted);line-height:1.55}
.flue-project .road dl{margin:4px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:13.5px}
.flue-project .road dt{color:var(--muted)}
.flue-project .road dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}
.flue-project .apps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden}
@media (max-width:720px){.flue-project .apps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.flue-project .apps div{background:var(--surface);padding:20px;font-weight:600;font-size:15.5px;display:grid;gap:4px}
.flue-project .apps small{font-weight:400;color:var(--muted);font-size:13.5px}
.flue-project .note{font-size:14px;color:var(--muted);border-left:3px solid var(--sun);padding:4px 0 4px 16px;max-width:72ch}
.flue-project .patent{display:flex;flex-wrap:wrap;gap:12px 32px;font-size:15px}
.flue-project .patent b{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.flue-project .cta{background:var(--deep);color:var(--on-deep)}
.flue-project .cta .wrap{display:grid;gap:18px;padding-block:72px}
.flue-project .cta .eyebrow{color:var(--on-deep-muted)}
.flue-project .cta h2{color:#fff;max-width:20ch}
.flue-project .cta p{color:var(--on-deep-muted);max-width:56ch}
.flue-project .foot{font-size:12.5px;color:var(--muted);padding-block:28px}
@media (prefers-reduced-motion:no-preference){.flue-project .track b{transition:width .6s ease}
}

.flue-project{--bg:#f4f7f2;--tint:#eaf1e4;--forest:#254a31;--olive:#527615;--sun:#f2ad35;display:block}.flue-project .hero .wrap{padding-top:clamp(140px,15vw,180px)}.flue-project img{max-width:100%;height:auto}.flue-project figure{margin:0}.flue-project h1{color:#fff}.flue-project .hero .eyebrow{font-size:12px}.flue-project .cta{padding-block:0}.flue-project .diagram:focus-visible,.flue-project .tbl:focus-visible{outline:3px solid #9ac43a;outline-offset:3px}.flue-project .fig .n{overflow-wrap:normal}@media(max-width:480px){.flue-project .wrap{padding-inline:20px}.flue-project section{padding-block:44px}.flue-project .hero .wrap{padding-block:130px 48px}.flue-project .fig{padding:20px 14px}.flue-project .chem span{white-space:normal}.flue-project .btn{letter-spacing:.06em}.flue-project .tbl table{min-width:520px}}
.flue-project .hero{display:block;min-height:0;height:auto}.flue-project .wrap{width:100%}
