:root{color-scheme:dark;--ink:#f2f7f4;--muted:#b7c9bf;--purple:#9fd9bf;--night:#0d2119;--line:#ffffff29}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--night);color:var(--ink);font:16px/1.7 'PingFang SC','Microsoft YaHei',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #dbff8f;outline-offset:6px}img{max-width:100%;display:block}header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;border-bottom:1px solid var(--line);background:#123b2b}.brand{display:flex;gap:10px;align-items:center;font-size:27px;font-weight:650;letter-spacing:-1px}.brand img{filter:invert(1)}.brand span{font-size:12px;font-weight:400;letter-spacing:2px;color:var(--muted);margin-left:10px}nav{display:flex;align-items:center;gap:36px;font-size:14px}.nav-contact{border:1px solid #ffffff55;border-radius:99px;padding:9px 18px}.nav-contact span{margin-left:22px}.hero{background:linear-gradient(180deg,#123b2b 0%,#0d2119 65%)}.hero-top{padding:54px 6vw 28px;max-width:1700px;margin:auto}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--muted);margin:0 0 20px}h1{font-size:clamp(38px,5.3vw,85px);font-weight:500;line-height:1.2;letter-spacing:-2px;margin:0 0 25px}h1 span{color:#9fd9bf}.hero-bottom{display:flex;justify-content:space-between;align-items:center}.hero-bottom p{color:var(--muted);margin:0;font-size:16px}.hero-bottom a{border-bottom:1px solid #ffffff77;padding:8px 0;font-size:14px}.hero-bottom a span{margin-left:40px}.mobile-break{display:none}.universe{height:650px;position:relative;overflow:hidden;isolation:isolate;margin:0 2vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 50% 48%,#2a543e55,transparent 68%)}.universe-note{position:absolute;inset:22px 3vw auto;display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;color:#b4d0c1;z-index:2;pointer-events:none}.sky{position:absolute;inset:0;opacity:.4;background-image:radial-gradient(circle,#aed7c1 1px,transparent 1.5px),radial-gradient(circle,#fff8 1px,transparent 1.5px);background-size:113px 97px,191px 139px;background-position:17px 39px,83px 69px;mask-image:linear-gradient(transparent,#000 30%,#000 80%,transparent)}.cluster-world{height:100%;width:100%;transition:transform .65s cubic-bezier(.2,.7,.2,1);transform-origin:var(--focus-x,50%) var(--focus-y,50%)}.universe.focused .cluster-world{transform:scale(1.12)}.cluster{position:absolute;left:var(--x);top:var(--y);width:300px;height:300px;transform:translate(-50%,-50%);transition:opacity .35s}.cluster svg{width:100%;height:100%;overflow:visible;pointer-events:none}.cluster path{stroke:#9ed0b5;stroke-width:.6;opacity:.35}.cluster circle{fill:#9fd4b8;opacity:.6}.cluster .hub{position:absolute;left:50%;top:50%;display:flex;gap:10px;align-items:flex-start;transform:translate(-12px,-12px);white-space:nowrap;font-size:18px;line-height:1.4;text-shadow:0 1px 8px #0d2119}.hub small{display:block;font-size:11px;color:#bacec3;letter-spacing:1px;margin-top:5px}.spark{color:#c3f4da;font-size:23px;text-shadow:0 0 20px #8febba}.orbit-shot{position:absolute;left:35px;top:32px;width:94px;height:62px;padding:3px;background:#293e33;border:1px solid #acd7c04d;box-shadow:0 8px 30px #0005;transform:rotate(-7deg);transition:transform .35s}.orbit-shot img{width:100%;height:100%;object-fit:cover;object-position:top}.cluster:nth-child(2n) .orbit-shot{left:190px;top:30px;transform:rotate(6deg)}.cluster:nth-child(3n) .orbit-shot{left:35px;top:206px}.orbit-label{position:absolute;left:190px;top:230px;font-size:10px;color:#9bb5a7;letter-spacing:1px}.cluster:hover .orbit-shot,.cluster:focus-within .orbit-shot{transform:rotate(0) scale(1.22);z-index:3}.cluster:hover path{opacity:.8}.cluster-world:has(.cluster:hover) .cluster:not(:hover){opacity:.36}.map-caption{position:absolute;bottom:20px;left:3vw;font-size:11px;color:#94aa9d}.mobile-map{display:none}.project-index{display:grid;grid-template-columns:repeat(6,1fr);padding:0 4vw;border-bottom:1px solid var(--line)}.project-index a{padding:24px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px}.project-index a:hover{background:#ffffff0a}.project-index a span:first-child{font:11px monospace;color:#a1b7a9}.project-index a span:last-child{color:var(--purple)}.stories,.operations{padding:95px 6vw 20px}.stories{background:#ffffff;color:#1c211e}.operations{background:#ffffff;color:#1c211e}.section-heading{display:grid;grid-template-columns:1fr 1.8fr 1.2fr;gap:40px;align-items:start;padding-bottom:65px;border-bottom:1px solid currentColor}.section-heading h2{font-size:clamp(30px,3.4vw,52px);font-weight:500;line-height:1.3;margin:0;letter-spacing:-1px}.section-heading p:last-child{font-size:14px;align-self:end;margin:0}.stories .eyebrow{color:#54605a}.case{padding:70px 0;display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.5fr);gap:7vw;border-bottom:1px solid #8885;scroll-margin-top:30px}.case:last-child{border-bottom:0}.case h3{font-size:30px;font-weight:500;line-height:1.35;margin:0 0 20px}.case-intro{font-size:18px}.case dt{font-size:12px;opacity:.65;margin-top:22px}.case dd{margin:6px 0;font-size:14px;line-height:1.9}.status{font-size:12px;opacity:.7;margin-top:25px}.steps{list-style:none;padding:15px 0 0;display:flex;gap:12px;flex-wrap:wrap;font-size:12px}.steps li+li:before{content:'→';margin-right:12px;opacity:.5}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:start}.shot:first-child{grid-column:1/-1}.shot img{width:100%;height:auto;max-height:490px;object-fit:contain;object-position:top;background:#d9d7d1;box-shadow:0 10px 30px #0001;border:1px solid #0001}.shot span,.dialog-gallery span{display:block;font-size:11px;margin:10px 0;opacity:.7}.gallery:has(.shot:only-child){display:block}.about{padding:100px 14vw;background:#142b21;position:relative}.about h2{font-size:48px;font-weight:500;line-height:1.3;margin:0 0 30px}.about>p:not(.eyebrow){max-width:620px;font-size:18px;color:#b7c9bf}.text-link{display:inline-block;border-bottom:1px solid #ffffff66;margin:10px 0 40px}.other{max-width:620px;border-top:1px solid var(--line);padding-top:20px;font-size:13px;color:#b7c9bf}.other summary{cursor:pointer}.contact{padding:75px 6vw 95px;background:#b5e6cc;color:#172b20}.contact p{font-size:14px}.contact>a{font-size:clamp(32px,5vw,72px);display:flex;justify-content:space-between;line-height:1.5;border-bottom:1px solid #172b2066;padding-bottom:15px}.contact span{transition:transform .3s}.contact a:hover span{transform:translate(10px,-10px)}footer{padding:50px 6vw;font-size:12px;color:#a1b7a9}.footer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}footer img{display:inline;width:14px;height:14px}footer a:hover{text-decoration:underline}.project-dialog{color:var(--ink);background:#193c2d;border:1px solid #acdcc24d;border-radius:3px;width:min(940px,92vw);max-height:88dvh;padding:45px;overflow:auto;box-shadow:0 30px 100px #0008}.project-dialog::backdrop,.lightbox::backdrop{background:#07100bb8;backdrop-filter:blur(6px)}dialog h2{font-size:34px;font-weight:500;line-height:1.3;margin:0 35px 15px 0}.badge{display:inline-block;font-size:11px;border:1px solid #acdcc24d;padding:3px 10px;color:#c4ded0}.dialog-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}.dialog-gallery img{width:100%;height:170px;object-fit:contain;background:#ffffff08}.dialog-gallery a:only-child{grid-column:1/-1}.dialog-gallery a:only-child img{height:auto;max-height:400px}.close{position:absolute;right:16px;top:12px;font-size:30px;border:0;background:transparent;width:44px;height:44px;line-height:1}.pill{display:inline-flex;justify-content:space-between;gap:60px;padding:10px 20px;background:#b7d3c6;color:#172b20;border-radius:50px;font-size:14px}.lightbox{background:#10271c;color:white;border:1px solid #ffffff33;width:min(1300px,96vw);padding:55px 20px 20px;max-height:96dvh}.lightbox>img{max-height:76dvh;width:100%;object-fit:contain}.lightbox>a{display:inline-block;font-size:13px;margin-top:15px}.skip{position:absolute;top:-100px;background:white;color:black;padding:15px;z-index:10}.skip:focus{top:10px}body.modal-open{overflow:hidden}.broken-image{min-height:120px}.broken-image::after{content:'截图暂时无法加载，可继续阅读项目说明';font-size:12px}.mobile-map{display:none}@media(min-width:1600px){.universe{height:730px}.cluster{width:350px;height:350px}.orbit-shot{width:115px;height:75px}}
@media(max-width:760px){header{height:68px;padding:0 20px}.brand{font-size:24px}.brand span{display:none}nav{gap:18px;font-size:12px}.nav-contact{padding:7px 10px}.nav-contact span{display:none}nav>a:nth-child(2){display:none}.hero-top{padding:42px 24px 30px}h1{font-size:40px;letter-spacing:-1.5px;max-width:350px;line-height:1.3}h1 span{white-space:nowrap}.hero-bottom{display:block}.hero-bottom p{font-size:14px}.hero-bottom>a{display:inline-block;margin-top:18px}.mobile-break{display:block}.universe{height:68px;margin:0 20px;overflow:hidden}.universe-note,.cluster-world,.map-caption,.sky{display:none}.mobile-map{display:block;background:transparent;border:0;text-align:left;width:100%;height:66px;font-size:13px}.universe.expanded{height:490px}.universe.expanded .cluster-world{display:block;position:absolute;inset:65px 0 0;height:420px}.universe.expanded .sky{display:block}.cluster{width:140px;height:140px}.cluster .hub{font-size:12px}.hub small,.orbit-label{display:none}.spark{font-size:16px}.orbit-shot{width:46px;height:32px;left:20px;top:8px}.cluster:nth-child(2n) .orbit-shot{left:90px;top:10px}.cluster:nth-child(3n) .orbit-shot{left:20px;top:100px}.cluster .hub{transform:translate(-15px,-7px)}.project-index{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:15px 20px 25px;gap:12px}.project-index a{flex:0 0 180px;scroll-snap-align:start;border:1px solid var(--line);padding:22px 14px;min-height:85px;background:#ffffff05}.stories,.operations{padding:55px 24px 0}.section-heading{display:block;padding-bottom:35px}.section-heading h2{font-size:34px;margin-bottom:22px}.section-heading p:last-child{font-size:13px}.case{display:block;padding:40px 0}.case h3{font-size:27px}.case-intro{font-size:16px}.gallery{margin-top:30px;gap:12px}.shot img{max-height:320px}.about{padding:65px 24px}.about h2{font-size:36px}.about>p:not(.eyebrow){font-size:15px}.contact{padding:45px 24px 60px}footer{padding:40px 24px}footer .brand{font-size:26px}.project-dialog{padding:36px 22px 25px;width:94vw}.project-dialog h2{font-size:26px}.dialog-gallery{grid-template-columns:1fr;max-height:42dvh;overflow:auto}.dialog-gallery img{height:190px}.lightbox{padding-top:50px}.lightbox>img{max-height:70dvh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.project-index a>img{display:none}.project-index a span:first-of-type{font:11px monospace;color:#a1b7a9}
@media(max-width:760px){.project-index a{flex:0 0 220px;display:grid;grid-template-columns:20px 1fr 15px;gap:12px;padding:12px}.project-index a>img{display:block;grid-column:1/-1;width:100%;height:115px;object-fit:cover;object-position:top;background:#ffffff09}.project-index a span:first-of-type{font-size:10px}}
/* Shared lecture-atlas geometry, adapted to the public homepage. */
.universe{height:750px;background:#091c14}.cluster-world{position:absolute;width:1800px;height:1200px;transform-origin:0 0;transition:none}.universe.focused .cluster-world{transform:none}.atlas-edges{position:absolute;inset:0;width:1800px;height:1200px;overflow:visible;pointer-events:none}.atlas-edges path{fill:none;stroke:#a0eec4;stroke-width:.8}.module-edge{opacity:.65}.twig-edge{opacity:.38}.ray-edge{opacity:.23}.thumb-edge{opacity:.5}.atlas-hub,.atlas-node,.atlas-leaf,.atlas-shot{position:absolute;transition:opacity .25s;transform:scale(var(--inverse));transform-origin:0 0}.atlas-hub{font-size:13px;white-space:nowrap;line-height:1;z-index:3;padding-left:13px;color:#e0faec;text-shadow:0 0 15px #000}.atlas-hub:before{content:'';width:6px;height:6px;position:absolute;left:0;top:3px;background:#b2f2d0;transform:rotate(45deg);box-shadow:0 0 15px #b0f1ce}.atlas-node,.atlas-leaf{border:0;padding:0;background:#9dc6b0;width:4px;height:4px;border-radius:50%;cursor:pointer}.atlas-node:before,.atlas-leaf:before{content:'';position:absolute;inset:-7px}.atlas-leaf{width:2px;height:2px;opacity:.6}.atlas-node.ai,.atlas-leaf.ai{background:#a0c5c3}.atlas-label{position:absolute;top:-7px;left:10px;font-size:11px;font-weight:400;line-height:18px;white-space:nowrap;color:#d0e5da;opacity:0;pointer-events:none;text-shadow:0 1px 4px #000}.atlas-label.left{left:auto;right:10px}.atlas-node.atlas-selected .atlas-label{opacity:.85}.atlas-leaf:hover,.atlas-node:hover{background:#c6ffe7;z-index:8;opacity:1}.atlas-leaf:hover .atlas-label,.atlas-node:hover .atlas-label,.atlas-node:focus-visible .atlas-label{opacity:1;background:#10271c;padding:2px 5px}.atlas-leaf .atlas-label{max-width:240px;white-space:normal;min-width:130px}.atlas-shot{width:65px;height:44px;margin:-22px 0 0 -32px;padding:3px;border:1px solid #a7c6b566;background:#1d2d24;z-index:4}.atlas-shot img{width:100%;height:100%;object-fit:cover;object-position:top}.atlas-shot:hover,.atlas-shot:focus-visible{z-index:10;box-shadow:0 0 0 2px #c1e9d4}.atlas-dim{opacity:.1!important;pointer-events:none}.atlas-controls{position:absolute;right:22px;bottom:18px;display:flex;gap:6px;z-index:8}.atlas-controls button{border:1px solid #ffffff25;background:#10271c;min-width:34px;height:34px;font-size:12px;padding:0 10px}.atlas-info{position:absolute;right:28px;top:76px;width:240px;background:#10271ce8;border:1px solid #a1bdae33;padding:22px;z-index:7}.atlas-info h2{font-size:23px;font-weight:500;line-height:1.4;margin:0 0 14px}.atlas-info p{font-size:13px;color:#bed3c8;line-height:1.8}.atlas-info .eyebrow{font-size:10px;display:block;margin-bottom:12px}.atlas-info .pill{margin-top:12px;padding:7px 16px;font-size:12px}.steps li+li:before{content:'·'}.contact span{display:none}.project-index a span:last-child{color:inherit}.project-index a{justify-content:flex-start}.project-index a>span:first-of-type{margin-right:12px}.universe-note{font-size:10px}.atlas-node:focus-visible{outline-offset:7px}@media(max-width:760px){.universe{height:68px}.universe.expanded{height:540px}.universe.expanded .cluster-world{position:absolute;inset:auto;width:1800px;height:1200px}.atlas-controls,.atlas-info{display:none}.universe.expanded .atlas-controls{display:flex;right:10px;bottom:10px}.universe.expanded .atlas-info:not([hidden]){display:block;right:10px;top:auto;bottom:55px;width:190px;padding:12px}.atlas-info h2{font-size:17px}.atlas-info p{font-size:11px;max-height:66px;overflow:auto}.atlas-info .eyebrow{display:none}.atlas-info .pill{margin-top:0}.atlas-hub{font-size:11px}.atlas-shot{width:40px;height:28px;margin:-14px 0 0 -20px}.atlas-label{font-size:10px}.mobile-map{position:relative;z-index:9;background:#0d2119}.project-index a{justify-content:normal}.project-index a{grid-template-columns:20px 1fr}}

/* Embedded lecture constellation and single-page contact heading. */
.lecture-atlas{display:block;width:100%;height:100%;border:0;background:#071610}
.contact h2{font-size:clamp(32px,5vw,72px);font-weight:400;line-height:1.5;margin:0;border-bottom:1px solid #172b2066;padding-bottom:15px}
@media(max-width:760px){.lecture-atlas{display:none}.universe.expanded .lecture-atlas{display:block;position:absolute;top:66px;height:474px}.mobile-map{position:absolute;top:0;left:0}}

/* Compact editorial headings and legal footer. */
.hero-top>.eyebrow{font-size:17px;letter-spacing:.12em}
.section-heading-inline{grid-template-columns:240px minmax(0,1fr);align-items:center}
.section-heading-inline h2{font-size:clamp(30px,3.2vw,50px);white-space:nowrap}
.compact-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 6vw;font-size:11px;flex-wrap:wrap}
.compact-footer p{margin:0}.compact-footer>div{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
@media(max-width:1000px){.section-heading-inline{grid-template-columns:1fr;gap:14px}.section-heading-inline h2{white-space:normal}}
@media(max-width:760px){.hero-top>.eyebrow{font-size:16px}.compact-footer{padding:22px 24px;gap:10px}.compact-footer>p,.compact-footer>div{width:100%}.section-heading-inline h2{font-size:30px}}

.quote-dialog{background:#193c2d;color:#f2f7f4;border:1px solid #acdcc24d;border-radius:8px;width:min(560px,92vw);max-height:90dvh;padding:36px;overflow:auto}
.quote-dialog::backdrop{background:#07100bb8;backdrop-filter:blur(6px)}
.quote-dialog h2{margin-bottom:12px}.quote-dialog>p{font-size:14px;color:#c1d4ca}
.quote-dialog label{display:block;font-size:14px;margin:18px 0}.quote-dialog input,.quote-dialog textarea{display:block;width:100%;box-sizing:border-box;background:#10271c;color:#fff;border:1px solid #6b8879;border-radius:4px;font:inherit;padding:12px;margin-top:8px}.quote-dialog textarea{resize:vertical}
.quote-dialog .pill{border:0;cursor:pointer}.quote-note{font-size:12px!important;line-height:1.8}.quote-dialog [hidden]{display:none!important}#quote-ready{border-top:1px solid #6b8879;margin-top:22px;padding-top:8px}#quote-ready p{font-size:14px}
@media(max-width:760px){.quote-dialog{padding:30px 22px}.quote-dialog input,.quote-dialog textarea{font-size:16px}}

.back-top{display:inline-flex;align-items:center;min-height:44px;margin-top:20px;font-size:14px;color:#b7d3c6;text-decoration:underline;text-underline-offset:6px}

/* Compact about section; keep the return link beside the copy. */
.about{padding:52px 6vw;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:48px;row-gap:16px;align-items:end}
.about>.eyebrow,.about>h2{grid-column:1/-1;margin:0}.about>p:not(.eyebrow){grid-column:1;max-width:820px;margin:0}.about>.back-top{grid-column:2;grid-row:3;margin:0;white-space:nowrap}
@media(max-width:760px){.about{padding:36px 24px;column-gap:16px;row-gap:18px}.about>p:not(.eyebrow){grid-column:1/-1}.about>.back-top{grid-column:2;grid-row:4;justify-self:end}.about h2{font-size:32px}}

/* Equal side columns keep the filing links centered in the page. */
.compact-footer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.compact-footer>div{justify-content:center;text-align:center}.compact-footer>a{justify-self:end}
@media(max-width:1000px){.compact-footer{grid-template-columns:minmax(0,1fr)}.compact-footer>div{justify-self:center}.compact-footer>a{justify-self:end}}

/* Mobile reading layout: keep the complete constellation visible on entry. */
@media(max-width:760px){
 .hero-top{padding:28px 20px 22px}
 .hero-top>.eyebrow{font-size:13px;margin-bottom:16px}
 h1{font-size:clamp(22px,6.2vw,42px);letter-spacing:-.04em;max-width:none;white-space:nowrap;margin-bottom:16px;line-height:1.35}
 .hero-bottom p{font-size:13px;line-height:1.8;text-wrap:pretty}
 .universe{height:380px;height:clamp(320px,95vw,520px);margin:0 12px}
 .lecture-atlas{display:block;position:absolute;inset:0;height:100%;width:100%}
 .stories,.operations{padding:36px 20px 0}
 .section-heading{padding-bottom:24px}
 .section-heading h2,.section-heading-inline h2{font-size:clamp(20px,5.3vw,30px);letter-spacing:-.04em;margin-bottom:12px}
 .case{padding:30px 0}.case h3{font-size:clamp(21px,5.6vw,29px);letter-spacing:-.04em;margin-bottom:14px}
 .case-intro{font-size:15px}.case .eyebrow{margin-bottom:14px}
 .about{padding:30px 20px}.about h2{font-size:clamp(21px,5.6vw,30px);letter-spacing:-.04em}
 .dialog-gallery{max-height:none;overflow:visible}
 nav>a{min-height:44px;display:inline-flex;align-items:center}
}

/* Make the AI contribution readable before opening the underlying workflow. */
.ai-story{margin:24px 0;padding:20px;border-left:3px solid #1f6f4f;background:#1f6f4f0b}
.ai-story .ai-label{font-size:11px;letter-spacing:.08em;color:#1f6f4f;margin:0 0 8px}
.ai-story h4{font-size:18px;line-height:1.5;font-weight:550;margin:0 0 10px}
.ai-story>p:not(.ai-label){font-size:14px;line-height:1.8;margin:0}
.ai-story details{margin-top:14px;border-top:1px solid #8884;padding-top:10px}
.ai-story summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;font-size:13px;font-weight:500}
.ai-story details dl{margin:0}.ai-story dt{font-size:12px;opacity:.7;margin-top:12px}.ai-story dd{font-size:13px;line-height:1.8;margin:4px 0 0}
.project-dialog .ai-story{border-color:#9fd9bf;background:#9fd9bf0b}
.project-dialog .ai-label{color:#9fd9bf}
@media(max-width:760px){.ai-story{padding:16px;margin:20px 0}.ai-story h4{font-size:17px}}

/* Keep the AI chapter heading and introduction together. */
.section-heading-ai{grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start;padding-bottom:40px}
.section-heading-ai>.eyebrow{margin:10px 0 0}
.section-heading-ai h2{font-size:clamp(30px,3.2vw,50px);margin:0 0 16px}
.section-heading-ai .section-heading-copy>p{font-size:14px;line-height:1.8;margin:0;color:#54605a}
@media(max-width:1000px){.section-heading-ai{grid-template-columns:1fr;gap:14px}.section-heading-ai>.eyebrow{margin:0}}
@media(max-width:760px){.section-heading-ai{display:grid;padding-bottom:24px}.section-heading-ai h2{font-size:clamp(20px,5.3vw,30px);margin-bottom:12px}.section-heading-ai .section-heading-copy>p{font-size:13px}}

.case-example{font-size:12px;line-height:1.7;color:#54605a;margin:0 0 16px}
.case .eyebrow:has(+.case-example),.project-dialog .eyebrow:has(+.case-example){margin-bottom:6px}
.project-dialog .case-example{color:#b7c9bf}
@media(max-width:760px){
 .compact-footer{padding:24px 20px calc(20px + env(safe-area-inset-bottom));gap:14px;text-align:center;border-top:1px solid var(--line)}
 .compact-footer .footer-identity{display:grid;gap:4px;font-size:12px;line-height:1.8}
 .compact-footer .footer-identity>span:last-child{font-size:11px;color:#94aa9d}
 .compact-footer .footer-separator{display:none}
 .compact-footer .footer-filings{display:flex;flex-direction:column;gap:4px;align-items:center;font-size:11px;line-height:1.8}
 .compact-footer .footer-filings a{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:28px;max-width:100%}
 .compact-footer>a{justify-self:center;display:inline-flex;align-items:center;min-height:32px;margin-top:0}
}

/* Light brand introduction frames the dark interactive constellation. */
header{background:#ffffff;color:#1f6f4f;border-bottom-color:#dfe4e1}
header .brand img{filter:none}
header .nav-contact{border-color:#b7d3c6}
header .nav-contact:hover{background:#e4efe8}
.hero{background:#ffffff;color:#1c211e}
.hero-top>.eyebrow,.hero-bottom p{color:#54605a}
.hero h1{color:#1f6f4f}
.hero h1 span{color:#175840}
.hero .project-index{border-bottom-color:#dfe4e1}
.hero .project-index a{color:#1f6f4f}
.hero .project-index a>span:first-of-type{color:#54605a}
.hero .project-index a:hover{background:#e4efe8}
@media(max-width:760px){
 .hero .project-index a{background:#fff;border-color:#dfe4e1}
}

/* Match the original site's logo typography and shared vector colour. */
header .brand{color:#175840;gap:10px;min-height:44px}
header .brand .brand-mark{display:block;flex:0 0 auto;height:26px;width:auto;color:inherit}
header .brand .brand-wordmark{display:inline;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","HarmonyOS Sans SC","Source Han Sans SC","Noto Sans SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;font-size:18px;font-weight:700;letter-spacing:-.021em;color:inherit;line-height:1;margin:0}
@media(max-width:600px){header .brand .brand-mark{height:23px}}

.operations .eyebrow,.operations .case-example{color:#54605a}
.operations h2,.operations h3{color:#175840}
.operations :focus-visible{outline-color:#1f6f4f}
