/* P9: approved raster identity, real photography and conceptual process. */
:root{--copper:#d6a47e;--navy:#203653;--steel:#b6c0cc;--muted:#aab6c5}
html{scroll-behavior:smooth;scroll-padding-top:28px}
.site-header{height:126px;background:#fff;width:100%;padding:12px max(32px,calc((100% - 1460px)/2));border:0;gap:30px}
.site-header::before,.site-header::after{display:none}
.brand-raster{display:block;position:relative;overflow:hidden;width:174px;height:102px;background:white}
.brand-raster img{position:absolute;max-width:none;width:200px;height:200px;left:-13px;top:-55px}
.site-header .mobile-menu summary span{background:#203653}
.site-header .mobile-menu nav{background:#fff;color:#203653;top:126px}
.site-header .desktop-nav a,.site-header .header-meta,.site-header .header-meta>a{color:#203653}
.site-header .status i{background:#a26840;box-shadow:none}
.site-header .desktop-nav{gap:28px}
.site-header .header-meta{gap:14px}
.hero{min-height:940px;max-height:1080px}
.hero-grid{opacity:.13;inset:126px 0 126px}
.hero-art{margin:0;inset:126px 0 126px 39%;background:none;animation:none}
.hero-art>img{width:100%;height:100%;object-fit:cover;display:block}
.hero-vignette{background:linear-gradient(90deg,#14263d 0%,rgba(20,38,61,.82) 16%,rgba(20,38,61,.1) 63%),linear-gradient(0deg,rgba(20,38,61,.9),transparent 35%)}
.hero-art figcaption{position:absolute;bottom:24px;right:36px;max-width:340px;font:11px/1.65 Inter,sans-serif;color:#fff;text-align:right}
.hero-art figcaption a{text-decoration:underline;text-underline-offset:3px}
.hero-content{height:calc(100% - 126px - 126px);pointer-events:none}
.hero-copy{pointer-events:auto;width:min(670px,52vw)}
.hero h1{font-size:clamp(60px,5.2vw,82px);margin-top:22px}
.hero-lede{color:#d1d9e1;max-width:480px}
.project-stage{font:11px/1.6 'IBM Plex Mono',monospace;color:#d5dce5;margin:16px 0 0}
.button-primary{background:#d6a47e;border-color:#d6a47e;color:#14263d;box-shadow:none}
.button-primary:hover{background:#e5b892;border-color:#e5b892}
.button-secondary{border-color:#8291a3}
.proof-line{font-size:13px}
.process-rail{background:#102137}
.process-rail li p{color:#bdc6d0}
.intro-section{padding-block:100px}
.about-detail-section{padding-bottom:100px;gap:64px}
.technology-section,.impact-section{background:#192e47}
.technology-section{padding-block:105px}
.section-heading>p,.intro-text,.operator-columns p,.layers-intro>p:last-child,.layers-grid p,.fit-heading>p:last-child,.fit-criteria p,.priority-copy,.service-sticky>p:not(.eyebrow),.service-list p,.responsibility-grid p,.value-grid p,.evidence-grid p,.development-timeline p,.faq-intro>p:last-child,.faq-list details>p,.development-heading>div:last-child>p:first-child{color:#bac5d2}
.process-concept{margin-block:58px 85px;padding:30px 34px 26px;background:#f7f5f0;color:#203653;border-top:4px solid #b87e56}
.concept-top{display:flex;justify-content:space-between;gap:24px;color:#5d6b7b;font-size:11px;line-height:1.5}
.concept-top .micro-label{color:#895332;white-space:nowrap}
.process-concept h3{font:500 clamp(25px,2.8vw,40px)/1.2 'Space Grotesk',sans-serif;letter-spacing:-.035em;margin:30px 0 38px}
.concept-flow{display:grid;grid-template-columns:1fr 48px 1.1fr 48px 1fr;align-items:center;gap:14px}
.concept-inputs{display:grid;gap:14px}
.concept-node{padding:22px;background:#fff;border:1px solid #d7dbe0;min-width:0}
.concept-number{font:10px/1.5 'IBM Plex Mono',monospace;color:#81502f;letter-spacing:.045em;display:block;margin-bottom:16px}
.concept-node strong,.concept-reaction strong{display:block;font:500 21px/1.25 'Space Grotesk',sans-serif}
.concept-node p,.concept-reaction p{font-size:13px;line-height:1.6;color:#536172;margin:12px 0 0}
.concept-arrow{font:300 36px/1 Inter,sans-serif;text-align:center;color:#a46b42}
.concept-reaction{padding:30px 24px;background:#203653;color:#fff;align-self:stretch;display:flex;flex-direction:column;justify-content:center;border:1px solid #203653}
.concept-reaction .concept-number{color:#dfb18f}
.concept-reaction p{color:#d3dce7}
.reaction-symbol{display:flex;align-items:center;justify-content:center;gap:14px;padding:25px 0 40px;font:400 24px 'Space Grotesk',sans-serif}
.reaction-symbol span{border:1px solid #9e846f;padding:16px 8px;min-width:70px;text-align:center;border-radius:50%}
.reaction-symbol i{font-style:normal;color:#d6a47e}
.concept-output{padding:30px 22px;border-color:#c99b79}
.output-label{display:inline-block;margin-top:30px;border-top:1px solid #c99b79;padding-top:14px;color:#81502f;font:10px 'IBM Plex Mono',monospace;text-transform:uppercase}
.process-concept figcaption{border-top:1px solid #d7dbe0;margin-top:32px;padding-top:18px;font-size:12px;line-height:1.7;color:#536172;max-width:100%}
.context-photo{margin-block:46px 58px}
.context-photo img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;object-position:center 59%}
.context-photo figcaption{display:flex;justify-content:space-between;gap:30px;margin-top:16px;font-size:11px;line-height:1.7;color:#b6c0cc}
.context-photo figcaption>span:first-child{color:#d6a47e;font-family:'IBM Plex Mono',monospace;max-width:230px;text-transform:uppercase;letter-spacing:.05em}
.context-photo figcaption>span:last-child{max-width:640px}
.context-photo a,.photo-credits a{text-decoration:underline;text-underline-offset:3px}
.priority-card{background:#192e47}.priority-card::after{opacity:.06}
.fit-section,.service-section,.development-section,.faq-section{padding-block:100px}
.development-status{color:#dfb18f}
.photo-credits{padding-block:55px;border-bottom:1px solid #35465b;color:#b6c0cc}
.photo-credits h2{font:500 18px 'Space Grotesk',sans-serif;color:#f6f4ef;margin:0 0 16px}
.photo-credits p,.photo-credits li{font-size:12px;line-height:1.8}
.photo-credits ul{padding-left:20px;max-width:1080px}
.photo-credits li+li{margin-top:12px}
.site-footer{padding-block:26px;gap:24px}.site-footer .brand{transform:none}
.site-footer .brand-raster{width:139px;height:82px}.site-footer .brand-raster img{width:176px;height:176px;left:-19px;top:-49px}
a:focus-visible,summary:focus-visible{outline:2px solid #d6a47e;outline-offset:5px}
@media(max-width:1200px){.header-meta .status{display:none}.site-header{gap:20px}.site-header .desktop-nav{gap:18px}.concept-flow{gap:10px;grid-template-columns:1fr 24px 1.1fr 24px 1fr}.concept-node,.concept-reaction{padding:20px 16px}.reaction-symbol{gap:8px;font-size:19px}.reaction-symbol span{min-width:57px;padding:14px 7px}}
@media(max-width:900px){.site-header{height:116px;padding:7px 24px;grid-template-columns:1fr auto}.site-header .header-meta{display:none}.site-header .mobile-menu summary span{background:#203653}.site-header .mobile-menu nav{top:116px;background:#fff;color:#203653}.hero{height:auto;max-height:none;min-height:0;padding-bottom:126px}.hero-content{height:auto;padding-top:64px;padding-bottom:420px}.hero-copy{width:min(620px,100%)}.hero h1{max-width:620px;font-size:clamp(48px,8vw,70px)}.hero-art{inset:auto 0 126px;height:480px}.hero-art>img{object-position:center 54%}.hero-vignette{background:linear-gradient(180deg,#14263d,rgba(20,38,61,.2) 46%,rgba(20,38,61,.55))}.hero-art figcaption{right:24px;bottom:24px}.concept-flow{grid-template-columns:1fr}.concept-inputs{grid-template-columns:1fr 1fr}.concept-arrow{transform:rotate(90deg);padding:6px}.concept-reaction{padding:25px}.reaction-symbol{padding:20px 0}.concept-output{padding:24px}.concept-top{flex-direction:column;gap:8px}.concept-reaction strong{text-align:center}.concept-reaction p{text-align:center}.context-photo figcaption{flex-direction:column;gap:8px}.about-detail-section{gap:40px}.service-section{gap:50px}}
@media(max-width:600px){.site-header{padding-inline:16px}.brand-raster{width:151px;height:89px}.brand-raster img{width:192px;height:192px;left:-21px;top:-54px}.hero-content{padding-top:42px;padding-bottom:365px}.hero h1{font-size:48px}.hero-lede{font-size:16px}.hero-art{height:405px}.hero-actions{flex-direction:column;align-items:stretch;max-width:340px;gap:12px}.hero-actions .button{justify-content:space-between}.proof-line{align-items:flex-start;line-height:1.5;max-width:300px}.hero{padding-bottom:160px}.hero-art{bottom:160px}.process-rail{height:160px}.hero-art figcaption{left:20px;right:20px;font-size:10px;text-align:left}.project-stage{font-size:10px}.process-concept{padding:24px 20px}.concept-inputs{grid-template-columns:1fr}.concept-node strong,.concept-reaction strong{font-size:23px}.concept-node p,.concept-reaction p{font-size:14px}.concept-number{font-size:11px}.concept-top{font-size:12px}.process-concept figcaption{font-size:12px}.context-photo img{min-height:270px;object-fit:cover}.context-photo figcaption{font-size:11px}.intro-section,.technology-section,.fit-section,.service-section,.development-section,.faq-section{padding-block:70px}.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between}.site-footer p{max-width:180px}.site-footer p:last-child{width:100%;max-width:none}.photo-credits{padding-block:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.site-footer .brand-raster{height:96px}.site-footer .brand-raster img{top:-43px}
@media(max-width:600px){.site-header .brand-raster{width:151px;height:96px}.site-header .brand-raster img{width:176px;height:176px;left:-12px;top:-43px}.proof-line{display:block}.proof-target{display:none}.proof-line strong{margin-left:4px}}
