/* Copy and layout refresh. Extends the existing brand styles. */
.refresh {--ink:#17283b;--blue:#125dc1;--muted:#526172;--rule:#d9e1e9;--wash:#f2f5f7;color:var(--ink);font-size:16px;background:#fff;}
.refresh h1,.refresh h2,.refresh h3 {color:var(--ink);}
.refresh p {line-height:1.65;}
.refresh a {color:var(--blue);}
.wrap {width:min(1240px,100%);margin-inline:auto;padding-inline:48px;}
.new-header {position:relative;z-index:50;border-bottom:1px solid var(--rule);background:#fff;}
.header-row {display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:94px;}
.brand {display:inline-flex;align-items:center;gap:10px;color:var(--ink)!important;text-decoration:none!important;flex-shrink:0;}
.brand img {width:34px;height:38px;object-fit:contain;}
.brand>span {font-family:var(--font-display);font-size:27px;line-height:1;letter-spacing:-1px;}
.brand small {display:block;font-family:var(--font-body);font-size:9px;letter-spacing:2.2px;margin-top:6px;}
.desktop-nav {display:flex;align-items:center;gap:25px;font-size:13px;}
.desktop-nav>a:not(.button) {color:var(--ink);padding-block:16px;}
.desktop-nav a[aria-current=page] {text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--blue);}
.refresh .button {display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:49px;padding:13px 21px;border:1px solid var(--blue);border-radius:5px;background:var(--blue);color:white;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;transition:background .15s;}
.refresh .button:hover {background:#104997;border-color:#104997;}
.refresh .button.secondary {background:transparent;color:var(--ink);border-color:#b6c4d0;}
.refresh .button.secondary:hover {background:#e8eff7;}
.refresh :is(a,summary):focus-visible {outline:3px solid #125dc1;outline-offset:5px;}
.mobile-menu {display:none;}
.refresh .eyebrow {font-size:11px;letter-spacing:1.7px;color:var(--blue);line-height:1.7;margin-bottom:20px;}
.home-hero {padding:84px 0 72px;background:linear-gradient(110deg,#fbfcfd 0%,#f8fafc 55%,#edf3f8 100%);}
.hero-grid {display:grid;grid-template-columns:1.13fr 1fr;gap:64px;align-items:center;}
.refresh h1 {font-size:clamp(42px,4.6vw,64px);line-height:1.08;letter-spacing:-2px;font-weight:400;}
.refresh h1 em {color:var(--blue);font-weight:400;}
.intro-copy {font-size:18px;color:var(--muted);max-width:53ch;margin:25px 0 0;line-height:1.65!important;}
.actions {display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:29px;}
.text-link {font-size:14px;font-weight:600;display:inline-block;padding-block:8px;}
.hero-note {font-size:12px;color:var(--muted);margin:23px 0 0;}
.operating-model {margin:0;padding:28px 30px;background-color:#e6edf4;background-image:radial-gradient(#bfd0df .7px,transparent .7px);background-size:15px 15px;border:1px solid #cddbe6;border-radius:12px;box-shadow:0 16px 40px #203d5b0a;}
.operating-model figcaption {display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:1.2px;font-weight:600;color:#41576e;margin-bottom:25px;}
.diagram-dot {height:7px;width:7px;border-radius:50%;background:#1268bd;}
.model-top,.model-base {padding:18px 21px;background:#ffffffed;border:1px solid #c8d7e4;border-radius:5px;margin-inline:16px;}
.mini-label {display:block;font-size:10px;letter-spacing:1.4px;line-height:1.6;font-weight:600;}
.model-top .mini-label,.model-base .mini-label {color:#5b6a79;margin-bottom:7px;}
.operating-model strong {display:block;font-size:17px;font-weight:500;}
.connector {height:23px;width:1px;background:#7896b5;margin:auto;position:relative;}
.connector:after {content:'';position:absolute;width:5px;height:5px;border-right:1px solid #7896b5;border-bottom:1px solid #7896b5;transform:rotate(45deg);bottom:2px;left:-2px;}
.model-lead {padding:23px;background:#173858;color:#fff;border-radius:6px;box-shadow:0 7px 14px #17385815;}
.model-lead .mini-label {color:#bbd9f5;margin-bottom:10px;}
.model-lead strong {font-family:var(--font-display);font-size:27px;font-weight:400;}
.model-tags {display:flex;gap:8px;margin-top:17px;flex-wrap:wrap;}
.model-tags span {font-size:10px;border:1px solid #56718b;padding:4px 9px;border-radius:3px;color:#e0edfa;}
.operating-model>p {margin:19px 0 0;text-align:center;font-size:11px;color:#41576e;}
.trust-row {border-bottom:1px solid var(--rule);}
.trust-row .wrap {display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:20px;}
.trust-row span,.trust-row a {display:flex;align-items:center;gap:10px;font-size:12px;font-weight:500;color:#526172;}
.trust-row img {width:39px;height:39px;object-fit:contain;}
.trust-row a {color:var(--blue);}
.content-section {padding:72px 0;}
.content-section.tinted {background:var(--wash);}
.refresh h2 {font-size:clamp(29px,3.1vw,41px);line-height:1.15;letter-spacing:-1px;}
.section-heading {margin-bottom:34px;max-width:750px;}
.section-heading .eyebrow {margin-bottom:12px;}
.service-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.tile {min-width:0;padding:28px;border:1px solid var(--rule);border-radius:7px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;}
.tile-index {display:block;font-family:var(--font-mono);font-size:12px;letter-spacing:.5px;color:var(--blue);margin-bottom:26px;}
.tile h3 {font-size:20px;line-height:1.35;margin-bottom:12px;font-weight:500;letter-spacing:-.5px;}
.tile>p {font-size:15px;color:var(--muted);max-width:52ch;margin-bottom:20px;}
.service-type {font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:1px;padding-top:16px;border-top:1px solid var(--rule);display:block;width:100%;margin-top:auto;}
.service-grid .tile:first-child {background:#f0f5fb;border-color:#b9cee4;}
.tile .text-link {margin-top:9px;}
.three-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.three-grid .tile {background:transparent;border:0;border-top:1px solid #bdcbd8;border-radius:0;padding:25px 12px 0 0;}
.three-grid .tile-index {font-size:23px;margin-bottom:19px;}
.experience-grid {display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;}
.experience-grid>div>p:not(.eyebrow) {max-width:46ch;color:var(--muted);margin:24px 0 14px;}
.proof-panel {padding:33px 38px;border-radius:7px;border:1px solid #c9d8e4;background:#eff4f8;}
.proof-panel>.mini-label {color:#4b6178;}
.proof-stat {font-family:var(--font-display);font-size:72px;letter-spacing:-3px;color:#175c9e;line-height:1.1;margin:28px 0;}
.proof-stat span {font-family:var(--font-body);display:block;font-size:13px;letter-spacing:0;color:#526172;margin-top:9px;}
.proof-foot {border-top:1px solid #c4d3e0;padding-top:22px;font-size:14px;}
.proof-foot p {color:var(--muted);margin:8px 0;}
.principle-row {display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.principle-row>div {display:grid;grid-template-columns:auto 1fr;column-gap:15px;}
.principle-row span {grid-row:1/3;color:var(--blue);font-size:20px;}
.principle-row h3 {font-size:16px;font-weight:500;}
.principle-row p {font-size:13px;margin:7px 0 0;color:var(--muted);}
.contact-band {padding:45px 48px;background:#183650;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:45px;}
.contact-band h2 {color:white;max-width:21ch;font-size:37px;}
.contact-band .eyebrow {color:#a8d0f8;margin-bottom:14px;}
.contact-band p:not(.eyebrow) {color:#c9d9e8;max-width:47ch;font-size:14px;margin:15px 0 0;}
.contact-actions {display:flex;flex-direction:column;align-items:center;gap:16px;flex-shrink:0;}
.contact-actions>a:not(.button) {color:#d8e5ef;font-size:13px;padding:5px;}
.contact-actions .button {background:white;color:#173858;border-color:white;}
.contact-actions .button:hover {background:#deedfa;border-color:#deedfa;}
.new-footer {padding:56px 0 23px;border-top:1px solid var(--rule);background:#fafbfc;}
.footer-grid {display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:50px;}
.footer-grid p:not(.footer-label) {font-size:13px;color:var(--muted);margin-top:22px;}
.footer-grid .footer-label {font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#536274;margin-bottom:15px;}
.footer-grid nav {display:grid;gap:6px;}
.footer-grid>div>a:not(.brand),.footer-grid nav a {display:block;font-size:13px;color:var(--muted);padding-block:4px;overflow-wrap:anywhere;}
.footer-bottom {display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding-top:20px;margin-top:42px;font-size:11px;color:var(--muted);}
.intro {padding:74px 0 66px;background:linear-gradient(115deg,#fafcfd,#eef4f8);border-bottom:1px solid var(--rule);}
.intro h1 {max-width:850px;}
.intro .intro-copy {max-width:660px;}
.intro .actions:empty {display:none;}
.two-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px;}
.two-grid>div>h2 {margin-bottom:22px;}
.two-grid p {color:var(--muted);}
.section-copy {font-size:18px;color:var(--muted);max-width:65ch;margin:0 0 32px;}
.issue-list p {padding:13px 0 13px 22px;border-bottom:1px solid #d1dde7;margin:0;position:relative;font-size:15px;}
.issue-list p:before {content:'→';position:absolute;left:0;color:var(--blue);}
.steps {display:grid;grid-template-columns:repeat(3,1fr);gap:40px;list-style:none;padding:0;margin:0;counter-reset:step;}
.steps li {border-top:1px solid #bdcbd8;padding-top:22px;}
.steps span {font-family:var(--font-mono);color:var(--blue);font-size:13px;}
.steps h3 {font-size:18px;margin:22px 0 12px;font-weight:500;}
.steps p {color:var(--muted);font-size:15px;}
.disclosure {border-bottom:1px solid var(--rule);width:100%;}
.disclosure summary {cursor:pointer;font-size:16px;font-weight:500;padding:21px 28px 21px 0;position:relative;list-style:none;}
.disclosure summary::-webkit-details-marker {display:none;}
.disclosure summary:after {content:'+';position:absolute;right:4px;top:19px;color:var(--blue);font-size:22px;font-weight:400;}
.disclosure[open]>summary:after {content:'−';}
.detail-body {padding:0 0 23px;max-width:80ch;}
.detail-body p {font-size:14px;color:var(--muted);}
.tags {display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;}
.tags span {padding:5px 9px;font-size:11px;color:#4b6178;background:#eef3f7;border-radius:3px;}
.case-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.case-grid .tile {padding:26px;}
.case-grid .tile-index {font-size:11px;}
.tile .case-metric {font-family:var(--font-display);font-size:37px;line-height:1.2;color:#175c9e;letter-spacing:-1px;margin-top:auto;padding-top:17px;}
.case-metric span {display:block;font-family:var(--font-body);font-size:12px;letter-spacing:0;color:var(--muted);margin-top:9px;}
.tile .disclosure {border-top:1px solid var(--rule);border-bottom:0;margin-top:10px;}
.tile .disclosure summary {font-size:13px;}
.compact-callout {display:flex;align-items:center;justify-content:space-between;gap:50px;}
.compact-callout .button {flex-shrink:0;}
.compact-callout p {color:var(--muted);max-width:66ch;margin:17px 0 0;}
.compact-callout h2 {font-size:32px;}
.compact-callout .eyebrow {margin:0 0 13px;}
.gov-top {display:grid;grid-template-columns:1.4fr 1fr;gap:60px;}
.gov-top .identifiers {display:grid;grid-template-columns:105px minmax(0,1fr);gap:0;margin:0!important;}
.gov-top .identifiers dt,.gov-top .identifiers dd {border-bottom:1px solid #d6e0e8;padding:12px 0;font-size:13px;line-height:1.6;overflow-wrap:anywhere;}
.gov-top .identifiers dt {font-family:var(--font-body);letter-spacing:0;text-transform:none;font-weight:500;color:#526172;}
.gov-top .identifiers dd {margin:0;}
.gov-card {background:white;padding:30px;border:1px solid var(--rule);border-radius:7px;align-self:start;}
.cert-images {display:flex;align-items:center;gap:24px;margin-bottom:25px;}
.cert-images img {width:90px;height:90px;object-fit:contain;}
.gov-card h3 {font-size:20px;}
.gov-card ul {padding-left:18px;font-size:14px;line-height:2;}
.gov-card p {font-size:13px;color:var(--muted);}
.supporting {border-top:1px solid var(--rule);padding-top:30px;margin-top:35px;max-width:75ch;}
.supporting h3 {font-size:20px;margin-bottom:15px;}
.supporting p {font-size:15px;color:var(--muted);}
.founder-profile {display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:center;}
.founder-photo {display:block;width:100%;max-height:530px;aspect-ratio:4/5;object-fit:cover;object-position:center 30%;border-radius:6px;}
.founder-profile p:not(.eyebrow) {max-width:50ch;color:var(--muted);}
.founder-profile .profile-lede {font-size:22px;line-height:1.45;margin:24px 0;}
.program-tile {display:flex;align-items:center;gap:30px;}
.program-tile img {width:100px;max-height:100px;object-fit:contain;}
.program-tile h3 {font-size:17px;}
.program-tile p {font-size:14px;margin:10px 0;}
.role-tools {font-size:12px!important;}
@media(min-width:1450px){.wrap{width:1320px;}}
@media(max-width:1080px){.desktop-nav{gap:15px;font-size:12px}.desktop-nav .button{padding:11px 14px;gap:10px}.hero-grid{gap:35px}.wrap{padding-inline:32px}.experience-grid{gap:45px}.case-grid{grid-template-columns:1fr}.case-grid .tile{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.case-grid .tile-index,.case-grid .tile h3,.case-grid .tile>p:not(.case-metric){grid-column:1}.case-grid .case-metric{grid-column:2;grid-row:1/4;margin:0;align-self:center}.case-grid .disclosure{grid-column:1/-1}}
@media(max-width:820px){.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu>summary{list-style:none;cursor:pointer;padding:13px 0 13px 20px;font-size:14px}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu summary span{margin-left:12px;color:var(--blue)}.mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:#fff;padding:16px 32px 25px;box-shadow:0 15px 18px #17283b12;display:grid;gap:5px;border-bottom:1px solid var(--rule)}.mobile-menu nav>a:not(.button){padding:11px 0;color:var(--ink);font-size:15px}.mobile-menu nav .button{margin-top:8px;justify-self:start}.header-row{min-height:79px}.hero-grid{grid-template-columns:1fr;gap:42px}.home-hero{padding:55px 0}.home-hero h1{max-width:620px}.operating-model{width:100%;max-width:530px;justify-self:center}.intro-copy{max-width:600px}.trust-row .wrap{display:grid;grid-template-columns:1fr 1fr;gap:20px}.experience-grid{gap:30px}.proof-panel{padding:26px}.proof-stat{font-size:60px}.contact-band{padding:35px;gap:30px}.contact-band h2{font-size:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.gov-top{grid-template-columns:1fr}.founder-profile{gap:35px}.program-tile{flex-direction:column;align-items:flex-start}.two-grid{gap:25px}.three-grid{gap:20px}.three-grid .tile h3{font-size:18px}}
@media(max-width:600px){.wrap{padding-inline:23px}.refresh h1{font-size:43px;letter-spacing:-1.6px}.refresh h2{font-size:31px}.intro-copy{font-size:16px;margin-top:21px}.refresh .eyebrow{font-size:10px;letter-spacing:1.3px}.home-hero{padding:43px 0 40px}.hero-grid{gap:34px}.hero-note{font-size:11px;max-width:31ch}.actions{gap:17px;margin-top:24px}.button{font-size:13px!important}.text-link{font-size:13px}.operating-model{padding:22px 18px}.operating-model figcaption{font-size:8px;letter-spacing:.8px;margin-bottom:19px}.model-top,.model-base{margin-inline:10px;padding:15px}.model-lead{padding:19px}.model-lead strong{font-size:24px}.operating-model strong{font-size:16px}.model-lead strong{font-size:24px}.mini-label{font-size:9px;letter-spacing:.9px}.trust-row .wrap{gap:17px 10px}.trust-row span,.trust-row a{font-size:10px;gap:7px}.trust-row img{width:30px;height:30px}.content-section{padding:48px 0}.section-heading{margin-bottom:26px}.service-grid,.three-grid,.experience-grid,.two-grid,.principle-row,.steps,.founder-profile{grid-template-columns:1fr;gap:20px}.tile{padding:24px}.tile-index{margin-bottom:20px}.tile>p{font-size:14px}.three-grid .tile{padding-bottom:12px}.three-grid .tile-index{margin-bottom:12px}.three-grid .tile h3{font-size:20px}.experience-grid{gap:29px}.proof-stat{font-size:66px}.principle-row{gap:26px}.contact-band{padding:29px 24px;display:block}.contact-band h2{font-size:30px}.contact-actions{align-items:flex-start;margin-top:25px;gap:12px}.new-footer{padding-top:38px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{font-size:10px;align-items:center}.intro{padding:45px 0}.section-copy{font-size:16px}.steps{gap:27px}.steps h3{margin-top:13px}.case-grid .tile{display:flex}.tile .case-metric{margin:0 0 18px}.compact-callout{display:block}.compact-callout .button{margin-top:23px}.gov-top{gap:32px}.gov-card{padding:24px}.gov-top .identifiers{grid-template-columns:90px minmax(0,1fr)}.gov-top .identifiers dt,.gov-top .identifiers dd{font-size:12px}.founder-photo{max-height:420px}.founder-profile{gap:30px}.program-tile{flex-direction:row;gap:22px;margin-bottom:20px}.program-tile img{width:75px}.disclosure summary{font-size:15px}.mobile-menu nav{padding-inline:23px}}
@media print{.new-header,.new-footer,.contact-band{display:none}.refresh section{padding:20px 0}.wrap{padding:0}.tile,.operating-model{break-inside:avoid}}

.mobile-menu[open]>summary span {display:inline-block;transform:rotate(45deg)}

/* Selected work and case-study pages */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.story-attribution{font-size:13px;color:var(--muted);margin:16px 0 0;max-width:70ch}
.featured-story{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #c8d8e7;border-radius:8px;overflow:hidden;background:#f7fafd}
.featured-story-copy{padding:38px;align-self:center}
.featured-story-copy h3{font-family:var(--font-display);font-weight:400;font-size:34px;line-height:1.18;letter-spacing:-.7px;max-width:23ch}
.featured-story-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);margin:20px 0 13px;max-width:44ch}
.featured-story-visual{padding:36px;background:#eaf1f7;display:flex;flex-direction:column;justify-content:center}
.story-metric{font-family:var(--font-display);font-size:64px;line-height:1.1;letter-spacing:-2px;color:#175c9e}
.story-metric>span{display:block;font-family:var(--font-body);font-size:13px;color:var(--muted);letter-spacing:0;line-height:1.5;margin-top:9px}
.story-diagram{margin:28px 0 0;min-width:0}
.story-diagram figcaption{font-size:11px;color:var(--muted);margin-bottom:16px;line-height:1.5}
.story-flow{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:12px;align-items:stretch}
.story-flow>div{background:#fff;border:1px solid #c6d4e0;border-radius:5px;padding:18px}
.story-flow>div>span{font-size:9px;letter-spacing:1.2px;color:var(--muted);font-weight:600}
.story-flow p{font-size:13px;line-height:1.5;margin:12px 0 0}
.story-flow>b{align-self:center;color:var(--blue);font-weight:400;text-align:center}
.story-flow>.flow-after{background:#183650;color:#fff;border-color:#183650}
.story-flow>.flow-after>span{color:#b9d7f2}
.supporting-stories{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.supporting-story{padding:29px 32px;border:1px solid var(--rule);border-radius:7px;display:flex;flex-direction:column;align-items:flex-start}
.supporting-story h3{font-family:var(--font-display);font-size:26px;line-height:1.2;font-weight:400;max-width:27ch}
.supporting-metric{font-family:var(--font-display);font-size:32px;line-height:1.15!important;color:#175c9e;margin:22px 0 8px;letter-spacing:-.8px}
.supporting-metric>span{font-family:var(--font-body);display:block;font-size:12px;letter-spacing:0;color:var(--muted);margin-top:6px}
.supporting-story .text-link{margin-top:auto}
.founder-inline{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--rule);margin-top:30px;padding-top:26px}
.founder-inline p{font-size:13px;color:var(--muted);max-width:80ch;margin:0}
.founder-inline strong{color:var(--ink);font-weight:500}
.founder-inline .text-link{flex-shrink:0}
.story-intro .story-back{display:block;margin-bottom:28px;width:fit-content}
.story-intro h1{font-size:clamp(38px,4.3vw,60px);max-width:1000px}
.study-overview{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:center}
.study-overview .story-diagram{margin:0}
.study-overview .story-metric{font-size:clamp(38px,4.5vw,64px)}
.study-context{font-size:13px;color:var(--muted);max-width:36ch;margin:22px 0 0}
.study-narrative{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.study-narrative h2{font-size:25px;margin-bottom:18px}
.study-narrative p:not(.eyebrow),.study-narrative li{font-size:15px;color:var(--muted);line-height:1.7}
.study-narrative ul{padding-left:18px;margin:0}
.study-narrative li+li{margin-top:10px}
.study-reading{max-width:850px}
.study-reading>p{color:var(--muted);margin:23px 0}
.related-story{display:flex;flex-direction:column;gap:15px;padding:26px;border:1px solid var(--rule);border-radius:6px;background:#fff;text-decoration:none!important}
.related-story:hover{border-color:var(--blue);background:#f9fbfd}
.related-story>span:first-child{font-size:11px;color:var(--muted)}
.related-story>strong{font-family:var(--font-display);font-size:25px;font-weight:400;line-height:1.25;color:var(--ink)}
@media(max-width:900px){.featured-story{grid-template-columns:1fr}.featured-story-copy h3{max-width:30ch}.featured-story-visual{display:grid;grid-template-columns:.75fr 1.25fr;gap:26px;align-items:center}.featured-story-visual .story-diagram{margin:0}.featured-story-visual .story-metric{font-size:50px}.study-overview{grid-template-columns:1fr;gap:30px}.study-narrative{grid-template-columns:1fr;gap:30px}.study-narrative article{max-width:70ch}}
@media(max-width:600px){.featured-story-copy,.featured-story-visual{padding:25px}.featured-story-copy h3{font-size:29px}.featured-story-visual{display:block}.featured-story-visual .story-diagram{margin-top:26px}.supporting-stories{grid-template-columns:1fr}.supporting-story{padding:25px}.story-flow{gap:8px;grid-template-columns:minmax(0,1fr) 15px minmax(0,1fr)}.story-flow>div{padding:13px 10px}.story-flow p{font-size:12px}.founder-inline{display:block}.founder-inline .text-link{margin-top:10px}.study-narrative h2{font-size:26px}.story-intro .story-back{margin-bottom:20px}}

/* Manufacturing photography and founder portraits */
.plant-scenarios{display:grid;grid-template-columns:1.05fr 1fr;gap:46px;align-items:start}
.plant-photo{margin:0;min-width:0}
.plant-photo img{display:block;width:100%;height:465px;object-fit:cover;object-position:52% center;border-radius:7px}
.plant-photo figcaption{font-size:10px;color:var(--muted);margin-top:10px}
.plant-scenarios-list{display:grid;gap:22px}
.plant-scenarios-list .tile{position:relative;background:transparent;border:0;border-top:1px solid #bdcbd8;border-radius:0;padding:20px 0 0 35px}
.plant-scenarios-list .tile-index{position:absolute;left:0;top:20px;font-size:20px;margin:0;line-height:1.35}
.plant-scenarios-list .tile h3{font-size:20px;margin-bottom:9px}
.plant-scenarios-list .tile>p{margin:0;font-size:14px;max-width:50ch}
.founder-inline-photo{width:86px;height:96px;object-fit:cover;object-position:50% 27%;border-radius:6px;flex-shrink:0}
.founder-inline>p{flex:1}
@media(max-width:900px){.plant-scenarios{grid-template-columns:1fr;gap:30px}.plant-photo img{height:auto;aspect-ratio:16/9}.plant-scenarios-list{gap:23px}.plant-scenarios-list .tile>p{max-width:70ch}}
@media(max-width:600px){.plant-scenarios{gap:26px}.plant-photo img{aspect-ratio:4/3}.plant-scenarios-list .tile{padding-left:29px}.plant-scenarios-list .tile h3{font-size:19px}.founder-inline{display:grid;grid-template-columns:70px minmax(0,1fr);gap:12px 18px;align-items:center}.founder-inline-photo{width:70px;height:84px;grid-row:1/3}.founder-inline>p{font-size:12px}.founder-inline .text-link{grid-column:2;margin:0;padding:0}}

.founder-inline{justify-content:flex-start}.founder-inline>p{max-width:none}

/* -- Home: puzzle graphic, lead service, bullet lists (2026-10-02) -- */
.service-grid--lead{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-grid--lead .tile--lead{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center}
.lead-copy{display:flex;flex-direction:column;align-items:flex-start}
.lead-copy .service-type{margin:4px 0 14px}
.tile-list{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:9px;font-size:14px;line-height:1.45;color:var(--ink)}
.tile-list li{position:relative;padding-left:20px}
.tile-list li:before{content:'';position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:2px;background:var(--blue)}
.tile--lead .tile-list{grid-template-columns:1fr 1fr;column-gap:26px;row-gap:14px;margin:0;font-size:15px}
@media(max-width:980px){.service-grid--lead{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid--lead .tile:last-child{grid-column:1/-1}}
@media(max-width:820px){.service-grid--lead .tile--lead{grid-template-columns:1fr;gap:24px}}
@media(max-width:600px){.service-grid--lead{grid-template-columns:1fr}.service-grid--lead .tile:last-child{grid-column:auto}.tile--lead .tile-list{grid-template-columns:1fr}}
#problems .three-grid .tile-index{font-size:11px;letter-spacing:1px;margin-bottom:14px}
#problems .three-grid{row-gap:34px}

/* -- Five-step engagement (2026-10-02) -- */
.steps--five{grid-template-columns:repeat(5,minmax(0,1fr));gap:28px}
.steps--five h3{font-size:17px}
.steps--five p{font-size:14px}
.steps-note{margin:34px 0 0;padding:16px 20px;border-left:3px solid var(--blue);background:var(--wash);font-size:15px;color:var(--ink)}
@media(max-width:1080px){.steps--five{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:34px}}
@media(max-width:600px){.steps--five{grid-template-columns:1fr;gap:22px}.steps-note{font-size:14px}}
/* -- Home hero: self-fitting puzzle (2026-10-02) -- */
.fit-figure{margin:0;padding:22px 20px 16px;background-color:#e9eff5;background-image:linear-gradient(#d3dfea 1px,transparent 1px),linear-gradient(90deg,#d3dfea 1px,transparent 1px);background-size:20px 20px;background-position:-1px -1px;border:1px solid #cddbe6;border-radius:12px;box-shadow:0 16px 40px #203d5b0a}
.fit-puzzle{display:block;width:100%;height:auto;overflow:visible}
.fit-puzzle .fp-cap{font:600 10px var(--font-body,sans-serif);letter-spacing:1.3px;fill:#41576e}
.fit-puzzle path{transition:fill .6s ease,stroke .6s ease}
.fit-puzzle text{transition:fill .6s ease}
.fit-puzzle .fp-biz,.fit-puzzle .fp-tech{fill:#fff;stroke:#bccfe0;stroke-width:1.2}
.fit-puzzle .fp-slot{fill:#dbe5ee;stroke:#7896b5;stroke-width:1.2;stroke-dasharray:5 4}
.fit-puzzle .fp-kosma{fill:#173858;stroke:#173858}
.fit-puzzle .fp-label{font:600 10px var(--font-body,sans-serif);letter-spacing:1.3px;fill:#5b6a79}
.fit-puzzle .fp-kosma-label{fill:#bbd9f5}
.fit-puzzle .fp-text{font:500 17px var(--font-body,sans-serif);fill:#17283b}
.fit-puzzle .fp-kosma-text{font:400 30px var(--font-display,serif);fill:#fff}
.fit-puzzle .fp-move{transform-box:view-box;transform-origin:220px 190px}
.fit-puzzle .fp-boxes{transform-box:view-box}
.fit-puzzle .fp-float{transform-box:view-box;transform-origin:220px 190px}
.is-interactive .fp-move{filter:drop-shadow(0 10px 14px #17385840)}
.is-floating .fp-float{animation:fpFloat 1.6s ease-in-out infinite}
@keyframes fpFloat{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(0,-5px) rotate(-1deg)}}
.is-animating .fp-move{transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .4s}
.fit-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:8px 0 0;font-size:13px;font-weight:600;color:#125dc1;min-height:20px}
.fit-puzzle .fp-rule{stroke:#8ea6bd;stroke-width:1}
.fit-puzzle .fp-reg{fill:none;stroke:#7896b5;stroke-width:1.2}
.is-interactive:not(.is-fit) .fit-status{visibility:hidden}
@media(prefers-reduced-motion:reduce){.is-floating .fp-float,.is-fit .fit-puzzle,.is-fit .fp-gear,.is-fit .fp-roller,.is-fit .fp-boxes{animation:none}.is-animating .fp-move,.fit-puzzle path,.fit-puzzle text,.fit-puzzle .fp-andon rect{transition:none}}
.fit-puzzle .fp-ico{fill:#8ea6bd}
.fit-puzzle .fp-win{fill:#fff}
.fit-puzzle .fp-ico-k{fill:#6fa3d8}
.fit-puzzle .fp-hole{fill:#173858}
.fit-puzzle .fp-ico,.fit-puzzle .fp-ico-k,.fit-puzzle .fp-win,.fit-puzzle .fp-hole{transition:fill .6s ease}
.fit-puzzle .fp-gear{transform-box:fill-box;transform-origin:center}
.is-fit .fp-gear-a{animation:fpSpin 1.6s cubic-bezier(.3,.6,.3,1) .1s 1}
.is-fit .fp-gear-b{animation:fpSpinR 1.6s cubic-bezier(.3,.6,.3,1) .1s 1}
@keyframes fpSpin{to{transform:rotate(240deg)}}
@keyframes fpSpinR{to{transform:rotate(-308.6deg)}}
.fit-puzzle .fp-bolt{fill:#d5dee7;stroke:#9fb2c4;stroke-width:.8;transition:fill .6s,stroke .6s}
.fit-puzzle .fp-bolt-k{fill:#2c4f74;stroke:#4d6f93}
.fit-puzzle .fp-andon-cap,.fit-puzzle .fp-andon-pole{fill:#5b6a79}
.fit-puzzle .fp-andon-red{fill:#e5484d;filter:drop-shadow(0 0 5px #e5484d99)}
.fit-puzzle .fp-andon-amber{fill:#5c4a1e}
.fit-puzzle .fp-andon-green{fill:#1f3d2e}
.fit-puzzle .fp-andon rect{transition:fill .4s ease}
.fit-puzzle .fp-belt{fill:#8ea6bd}
.fit-puzzle .fp-roller circle{fill:#f4f7fa;stroke:#8ea6bd;stroke-width:1.4}
.fit-puzzle .fp-roller line{stroke:#8ea6bd;stroke-width:1.4}
.fit-puzzle .fp-roller{transform-box:fill-box;transform-origin:center}
.fit-puzzle .fp-box{fill:#d9b77e;stroke:#b8955a;stroke-width:1}
.fit-puzzle .fp-box-tape{stroke:#b8955a;stroke-width:2}
.is-fit .fp-roller{animation:fpRoll 1.1s linear infinite}
.is-fit .fp-boxes{animation:fpBelt 3.2s linear infinite}
@keyframes fpRoll{to{transform:rotate(360deg)}}
@keyframes fpBelt{to{transform:translateX(96px)}}
/* Solved: every piece turns one color (also the no-script / reduced-motion state) */
.fit-figure:not(.is-interactive) .fp-slot,.is-fit .fp-slot{stroke:transparent;fill:transparent}
.fit-figure:not(.is-interactive) .fp-biz,.fit-figure:not(.is-interactive) .fp-tech,.fit-figure:not(.is-interactive) .fp-kosma,
.is-fit .fp-biz,.is-fit .fp-tech,.is-fit .fp-kosma{fill:#125dc1;stroke:#fff;stroke-width:2}
.fit-figure:not(.is-interactive) .fp-label,.is-fit .fp-label{fill:#cfe2fb}
.fit-figure:not(.is-interactive) .fp-text,.is-fit .fp-text{fill:#fff}
.is-fit .fp-move{filter:none}
.fit-figure:not(.is-interactive) .fp-andon-red,.is-fit .fp-andon-red{fill:#4a2427;filter:none}
.fit-figure:not(.is-interactive) .fp-andon-green,.is-fit .fp-andon-green{fill:#2fbf71;filter:drop-shadow(0 0 6px #2fbf71aa)}
.fit-figure:not(.is-interactive) .fp-bolt,.is-fit .fp-bolt{fill:#4f8ad6;stroke:#9cc3f0}
.fit-figure:not(.is-interactive) .fp-ico,.is-fit .fp-ico,.fit-figure:not(.is-interactive) .fp-ico-k,.is-fit .fp-ico-k{fill:#e6f0fd}
.fit-figure:not(.is-interactive) .fp-win,.is-fit .fp-win,.fit-figure:not(.is-interactive) .fp-hole,.is-fit .fp-hole{fill:#125dc1}
.is-fit .fit-puzzle{animation:fpClick .5s ease-out}
@keyframes fpClick{0%{transform:scale(1)}35%{transform:scale(1.018)}100%{transform:scale(1)}}
@media(max-width:600px){.fit-figure{padding:16px 12px 12px}.fit-status{font-size:12px}}
@media(max-width:820px){.fit-figure{width:100%;max-width:530px;justify-self:center}}

/* -- Careers: grouped cybersecurity roles (2026-10-02) -- */
.role-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 52px;align-items:start}
.role-group h3{font-size:12px;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:var(--blue);margin:0 0 4px;padding-bottom:12px;border-bottom:1px solid #bdcbd8}
@media(max-width:820px){.role-groups{grid-template-columns:1fr;gap:36px}}

/* -- Manufacturers: operator photo (2026-10-02) -- */
.op-photo{margin:0}
.op-photo img{display:block;width:100%;height:auto;border-radius:10px;box-shadow:0 16px 40px #203d5b14}
.op-photo figcaption{font-size:11px;color:var(--muted);margin-top:10px}
.focus-block{max-width:760px}
