
:root{--navy:#071218;--teal:#132b35;--mid:#193c4c;--cyan:#63caee;--yellow:#f2cf63;--light:#f2f5f6;--white:#edf6f8;--ink:#071218;--container:1180px;--space-1:16px;--space-2:24px;--space-3:40px;--space-4:64px;--radius-card:7px;--button-hover:#ffd84d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--white);font:16px/1.58 Montserrat,Arial,Helvetica,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}.wrap{width:min(calc(100% - 2 * var(--space-2)),var(--container));margin:auto}.skip{position:absolute;left:-100vw;top:4px;z-index:20;background:#fff;color:#000;padding:12px}.skip:focus{left:6px}.header{position:relative;background:var(--navy);z-index:10}.headbar{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.logo{width:190px;display:block;flex:0 0 auto}.logo img{display:block;width:100%;height:65px;object-fit:contain;mix-blend-mode:screen}.nav{display:flex;align-items:center;gap:clamp(12px,2vw,29px);flex-wrap:wrap}.nav a{text-decoration:none;color:var(--white);font-size:14px;border-bottom:2px solid transparent;padding:10px 0}.nav a:hover,.nav a[aria-current]{color:var(--yellow);border-bottom-color:var(--yellow)}.hamburger{display:none;background:transparent;border:1px solid #607d88;border-radius:6px;padding:8px;color:white}.hamburger span{display:block;width:24px;height:2px;background:var(--white);margin:5px}.hero{position:relative;background:radial-gradient(ellipse at 70% 60%,#124859 0%,#071218 62%);min-height:500px;isolation:isolate;overflow:hidden}.hero-art{position:absolute;inset:0 0 0 41%;background-position:center right;background-size:cover;opacity:.83;mask-image:linear-gradient(to right,transparent,#000 35%);z-index:-1}.hero-home .hero-art{background-image:url('assets/home-hero-clean-v28.jpg')}.hero-what .hero-art{background-image:url('assets/what-hero-art.jpg')}.hero-approach .hero-art{background-image:url('assets/approach-hero-art.jpg')}.hero-sectors .hero-art{background-image:url('assets/sectors-hero-art.jpg')}.hero-about .hero-art{background-image:url('assets/about-hero-art.jpg')}.hero-contact .hero-art{background-image:url('assets/contact-hero-art.jpg')}.hero-strategy .hero-art{background-image:url('assets/strategy-hero-art.jpg')}.hero-change .hero-art{background-image:url('assets/change-hero-art.jpg')}.hero-supply .hero-art{background-image:url('assets/supply-hero-art.jpg')}.hero-body{display:flex;align-items:center;min-height:500px;padding:64px 0 80px}.hero-copy{max-width:660px}.eyebrow{font-size:13px;letter-spacing:.085em;text-transform:uppercase;font-weight:800;color:var(--yellow);margin:0 0 12px}.eyebrow.on-light{color:#755900}.hero h1{font-size:clamp(39px,5vw,72px);line-height:1.08;letter-spacing:-.04em;margin:0 0 24px}.hero h1 em,h2 em{font-style:normal;color:var(--cyan)}.hero-lead{max-width:590px;font-size:clamp(17px,1.55vw,21px);margin:0 0 24px}.btn{display:inline-flex;gap:18px;align-items:center;justify-content:center;padding:13px var(--space-2);background:var(--cyan);color:var(--ink);border-radius:40px;text-decoration:none;font-size:15px;font-weight:700;min-height:48px;border:0;cursor:pointer}.btn:hover{background:var(--button-hover)}.arrow{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}.section{padding:clamp(62px,8vw,105px) 0}.light{color:var(--ink);background:var(--light)}.dark{color:var(--white);background:var(--teal)}.intro{max-width:920px;margin-bottom:36px}.intro h2{font-size:clamp(31px,4vw,52px);line-height:1.13;letter-spacing:-.028em;margin:0 0 18px}.intro .lead{font-size:18px;max-width:830px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.cards.four{grid-template-columns:repeat(2,1fr)}.card{background:var(--mid);color:var(--white);border:1px solid #476875;padding:clamp(22px,3vw,34px);border-radius:var(--radius-card);min-height:195px}.card h3{font-size:clamp(20px,2.3vw,26px);line-height:1.18;margin:10px 0}.card p{font-size:16px;line-height:1.55;margin:0;color:#edf6f8}.card-rule,.small-rule{display:block;height:4px;width:40px;background:var(--yellow);border-radius:3px}.small-number{color:var(--yellow);font-weight:800;letter-spacing:.1em}.linked{text-decoration:none;display:flex;flex-direction:column;transition:transform .2s}.linked:hover{transform:translateY(-3px);border-color:var(--cyan)}.linked p{margin-bottom:30px}.text-link{margin-top:auto;color:var(--cyan);font-weight:700;display:flex;gap:8px;align-items:center}.columns{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.columns article{padding:0 24px 6px 0;border-right:1px solid #acc4cc}.columns article:last-child{border-right:0}.columns h3{font-size:22px;line-height:1.25;margin:12px 0}.columns p{margin:0;max-width:35ch}.dark .columns article{border-color:#4f7885}.art-band{background:linear-gradient(112deg,#071218,#123a48,#071218)}.results{background:linear-gradient(125deg,#071218,#184352)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metrics>div{padding:24px 18px;border:1px solid #4d7380;background:#123341}.metrics strong{display:block;color:var(--cyan);font-size:clamp(36px,4vw,52px);line-height:1}.metrics span,.metrics small{display:block;margin-top:12px}.metrics small{color:#f2cf63;font-size:12px}.cta{padding:var(--space-4) 0}.cta .intro{margin-bottom:15px}.wide-text{max-width:800px;font-size:18px}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(25px,6vw,80px);align-items:start}.contact-panel{background:#fff;border:1px solid #c6dce5;padding:clamp(var(--space-2),3vw,var(--space-3));border-radius:var(--radius-card);box-shadow:0 10px 35px #09242e20}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1)}.form-field{display:flex;flex-direction:column;gap:5px}.form-field.full{grid-column:1/-1}.contact-form label{font-size:14px;font-weight:700}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #708a96;border-radius:4px;padding:12px;color:var(--ink);background:#fff}.contact-form textarea{min-height:122px;resize:vertical}.form-note{font-size:13px;color:#304957;grid-column:1/-1}.form-note a{color:#075d80}.form-submit{justify-self:start;grid-column:1/-1}.form-status{grid-column:1/-1;color:#7d2600;font-size:14px}.footer{background:#071218;color:#edf6f8;padding:36px 0 22px}.footer-main{display:flex;gap:30px;justify-content:space-between;align-items:center;border-bottom:1px solid #36515a;padding-bottom:26px}.footer-main a{font-size:14px}.footer-main p{font-weight:700}.footer-logo{text-decoration:none;letter-spacing:.03em;font-size:19px!important}.footer-logo span{display:block;letter-spacing:.3em;font-size:12px}.footer-bottom{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;color:#bdd0d8;font-size:12px;padding-top:20px}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:100;background:#031015d9;display:grid;place-items:center;padding:16px}.modal-surface{background:var(--light);color:var(--ink);position:relative;max-height:calc(100vh - 32px);overflow-y:auto;width:min(100%,700px);border-radius:9px;padding:clamp(22px,4vw,38px)}.modal-close{position:absolute;right:14px;top:8px;font-size:32px;cursor:pointer;border:0;background:transparent;color:var(--ink)}.policy h1{font-size:clamp(34px,4vw,58px)}.policy h2{margin-top:34px}.policy .wrap{max-width:900px}.policy p{max-width:85ch}:focus-visible{outline:3px solid #ffd84d;outline-offset:3px}@media(max-width:900px){.nav{gap:12px}.headbar{gap:12px}.logo{width:148px}.cards{grid-template-columns:repeat(2,1fr)}.hero-art{left:48%}}@media(max-width:720px){.wrap{width:min(calc(100% - 2 * var(--space-1)),var(--container))}.headbar{min-height:76px}.logo img{height:54px}.hamburger{display:block}.nav{display:none;position:absolute;left:0;right:0;top:76px;flex-direction:column;align-items:stretch;background:#071218;padding:16px 25px;gap:2px;border-top:1px solid #355363}.nav.open{display:flex}.nav a{padding:10px}.hero,.hero-body{min-height:480px}.hero-body{align-items:flex-start;padding:82px 0 60px}.hero-art{inset:0;opacity:.32;mask-image:linear-gradient(to bottom,#000,transparent)}.hero-copy{max-width:100%}.hero h1{font-size:clamp(39px,10vw,57px)}.cards,.cards.four,.columns,.metrics,.contact-layout{grid-template-columns:1fr}.columns article{border-right:0;border-bottom:1px solid #acc4cc;padding:0 0 22px}.columns article:last-child{border:0}.metrics{gap:10px}.footer-main{align-items:flex-start;flex-direction:column;gap:8px}.section{padding:58px 0}}@media(max-width:460px){.contact-form{grid-template-columns:1fr}.form-field.full{grid-column:auto}.form-note,.form-submit,.form-status{grid-column:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* House Style v1.2 controlled component treatment — logo deliberately untouched. */
:root { color-scheme: dark light; }
.btn { transition: background-color .18s ease, color .18s ease; }
.btn:focus-visible, .nav a:focus-visible, .footer a:focus-visible { outline:3px solid var(--button-hover); outline-offset:4px; }
.light .card, .dark .card, .results .card { border-radius:var(--radius-card); }
.light .card { background:var(--mid); color:var(--white); }
.dark .card, .results .card { background:var(--mid); color:var(--white); }
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible { outline:3px solid #0b627f;outline-offset:2px; }
.policy a[aria-current="page"] { font-weight:700; text-decoration:underline; text-underline-offset:3px; }
@media (prefers-reduced-motion:reduce){.btn {transition:none;}}

/* House Style v1.2: explicit responsive gutters, component spacing and card padding.
   Logo rules deliberately unchanged: awaiting visual approval. */
:root { --page-gutter:16px; --component-gap:12px; --card-pad:20px; }
.wrap { width:min(calc(100% - (2 * var(--page-gutter))),var(--container)); }
.cards,.cards.four,.metrics { gap:var(--component-gap); }
.card { padding:var(--card-pad); }
.contact-form { gap:16px; }
@media (min-width:600px) {
  :root { --page-gutter:24px; --component-gap:16px; --card-pad:24px; }
}
@media (min-width:1024px) { :root { --page-gutter:40px; } }
@media (min-width:1440px) { :root { --page-gutter:64px; } }
/* Prevent cross-axis overflow without changing fixed brand artwork. */
img,svg { max-width:100%; }
.hero-copy,.intro,.columns article,.contact-layout > * { min-width:0; }
.hero h1,h2,h3,p { overflow-wrap:break-word; }
@media (max-width:599px) {
  .hero-body { padding-bottom:72px; }
  .hero-copy > .btn { margin-top:20px; }
}
/* Don't animate for reduced motion users. */
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} .linked:hover {transform:none} }

/* Fix confirmed contrast issue: light-section eyebrow class reused in dark sections. */
.dark .eyebrow.on-light, .results .eyebrow.on-light { color:var(--yellow); }


/* Content-first staging v2.0 -- visual family and logo source preserved. */
.header {position:sticky;top:0;z-index:50;box-shadow:0 3px 18px #0002}
.hero-home{min-height:700px;background:#071218}
.hero-home .hero-body{min-height:700px;padding:105px 0 145px}
.hero-home .hero-art{inset:0 0 0 41%;background-position:center 39%;background-size:cover;opacity:.58}
.hero-home:after{content:"";position:absolute;inset:auto 0 0;height:155px;background:linear-gradient(transparent,#071218);pointer-events:none}
.hero-home .hero-copy{position:relative;z-index:2}
.section{scroll-margin-top:80px}
.section .eyebrow{color:#755900}
.section.dark .eyebrow{color:var(--yellow)}
.section .card{height:100%}
.section-end{margin:24px 0 0}
.text-link-inline{color:var(--cyan);font-weight:700;text-underline-offset:5px}
.text-link-inline.dark-link{color:#075d80}
.proof-grid,.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.proof-grid>div,.editorial-grid>div{border-top:3px solid var(--yellow);padding-top:16px}
.proof-grid h3,.editorial-grid h3,.feature h3{margin:0 0 10px;font-size:22px;line-height:1.3}
.proof-grid p,.editorial-grid p,.feature p{margin:0;font-size:16px;line-height:1.7}
.evidence-note{margin:36px 0 0;font-size:13px;color:#d0e1e6}
.experience-band{background:linear-gradient(115deg,#071218e8,#132b35e8),url('assets/sectors-hero-art.jpg') center/cover no-repeat}
.feature{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1020px}
.sectors-list{border-top:1px solid #59757d;margin-top:48px;padding-top:25px}
.contact-email{font-weight:700;color:#075d80;overflow-wrap:anywhere}
.small-copy{color:#405c67;font-size:14px}
.contact-panel h2{font-size:24px;margin:0 0 20px}
.hero-approach .hero-art{background-image:url('assets/approach-hero-art.jpg')}
.hero-what .hero-art{background-image:url('assets/what-hero-art.jpg')}
.hero-contact .hero-art{background-image:url('assets/contact-hero-art.jpg')}
@media(max-width:850px){.proof-grid,.editorial-grid{grid-template-columns:1fr 1fr}.feature{gap:28px}}
@media(max-width:720px){.header{position:relative}.hero-home,.hero-home .hero-body{min-height:625px}.hero-home .hero-body{padding:90px 0 150px}.hero-home .hero-art{inset:0;opacity:.25}.proof-grid,.editorial-grid,.feature{grid-template-columns:1fr}.proof-grid,.editorial-grid{gap:25px}.hero-home h1{font-size:clamp(39px,9vw,57px)}.nav{z-index:100}}

/* Approach v2.2: content-led operating-model explanation; locked global header, logo and footer unchanged. */
.belief-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.belief-card{background:#193c4c;color:#edf6f8;padding:clamp(22px,2.5vw,32px);border:1px solid #476875;border-radius:7px;min-width:0}
.belief-card h3{font-size:clamp(25px,2.5vw,31px);line-height:1.2;margin:18px 0 4px}
.belief-card p{line-height:1.65}
.belief-card .belief-sub{font-size:16px;color:#f2cf63;font-weight:700;margin:0 0 18px}
.belief-card .belief-detail{margin:22px 0 0;border-top:1px solid #587580;padding-top:17px}
.principle-note{max-width:980px;margin:28px 0 0;font-size:17px;line-height:1.7;font-weight:600}
.operating-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.operating-grid article{padding:24px;background:#193c4c;border:1px solid #476875;border-radius:7px}
.operating-grid h3{font-size:clamp(22px,2.2vw,28px);margin:17px 0 10px;line-height:1.3}
.operating-grid p{line-height:1.7;margin:0}
.approach-caution{max-width:940px;color:#d0e1e6;font-size:13px;margin:34px 0 0}
@media(max-width:900px){.belief-grid{grid-template-columns:1fr}.operating-grid{gap:16px}}
@media(max-width:680px){.operating-grid{grid-template-columns:1fr}.belief-grid{gap:16px}}

/* v2.3: consistent hero heights; remove screenshot-derived lower artefact from Home artwork */
@media(min-width:721px){.hero,.hero-body,.hero-home,.hero-home .hero-body{min-height:540px}.hero-home .hero-body{padding:64px 0 80px}}
@media(max-width:720px){.hero,.hero-body,.hero-home,.hero-home .hero-body{min-height:480px}.hero-home .hero-body{padding:82px 0 60px}}
.hero-home .hero-art{background-position:center center;background-size:cover;opacity:.58}
.hero-home::after{display:none}
/* v2.3: 3 belief cards with individual brand accents and accessible disclosure */
.belief-grid{align-items:stretch}
.belief-grid .belief-card{--accent:#63caee;display:block;position:relative;border-top:5px solid var(--accent);padding:0;min-height:228px;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.belief-grid .belief-collaboration{--accent:#f2cf63}
.belief-grid .belief-simplification{--accent:#aac9d3}
.belief-card summary{list-style:none;cursor:pointer;padding:28px 28px 24px;min-height:220px;display:flex;flex-direction:column;align-items:flex-start;outline-offset:-4px}
.belief-card summary::-webkit-details-marker{display:none}
.belief-card summary::marker{content:''}
.belief-card summary .small-rule{background:var(--accent)}
.belief-card summary h3{margin:20px 0 4px}
.belief-card summary .belief-sub{color:var(--accent);margin:0 0 15px}
.belief-card .belief-cue{display:block;margin-top:auto;font-size:13px;letter-spacing:.025em;color:#edf6f8;font-weight:700}
.belief-card[open] .belief-cue{opacity:0}
.belief-card .belief-reveal{padding:0 28px 26px;animation:belief-reveal .2s ease-out}
.belief-card .belief-reveal p{margin:0 0 12px;line-height:1.55}
.belief-card .belief-reveal .belief-detail{padding-top:14px;margin-top:14px;border-top:1px solid #587580}
.belief-card:hover,.belief-card:focus-within{transform:translateY(-3px);box-shadow:0 14px 28px #07121830;border-color:var(--accent)}
@keyframes belief-reveal{from{opacity:.3;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.belief-card:not([open]):hover>.belief-reveal{display:block}.belief-card:not([open]):hover .belief-cue{opacity:0}}
@media(prefers-reduced-motion:reduce){.belief-card,.belief-reveal{transition:none;animation:none}}

/* v2.4: layout stability between navigation destinations. No visual redesign. */
html {overflow-y:scroll;scrollbar-gutter:stable;scroll-behavior:auto;}
body {min-height:100vh;min-height:100dvh;}
.header {width:100%;}
.headbar {min-height:90px;}
.nav a {white-space:nowrap;}
@media(max-width:720px){.headbar{min-height:76px;}}

/* v2.5: artwork on a genuine white section. Preserve editable full-width copy.
   Transparent artwork layer is decorative and never includes copy. */
.engage-illustrated{position:relative;isolation:isolate;background:#fff;color:#071218;overflow:hidden}
.engage-illustrated::before{content:"";pointer-events:none;position:absolute;z-index:-2;inset:0;background:url('assets/how-we-engage-light-transparent.png') center right / cover no-repeat;opacity:.84}
.engage-illustrated::after{content:"";pointer-events:none;position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 20%,rgba(255,255,255,.95) 55%,rgba(255,255,255,.84) 77%,rgba(255,255,255,.66) 100%)}
.engage-illustrated .wrap{position:relative;z-index:1}
.engage-illustrated .intro{max-width:100%}
.engage-illustrated .intro .lead{max-width:100%}
.engage-illustrated .editorial-grid{width:100%;max-width:100%}
.engage-illustrated .eyebrow{color:#755900}
@media(max-width:720px){.engage-illustrated::before{background-position:68% center;opacity:.44}.engage-illustrated::after{background:rgba(255,255,255,.91)}}

/* Moonshot House Style - universal action button and SVG arrow, v2.6.
   All directional CTAs are .btn elements; ordinary navigation and policy links remain links. */
:root { --ms-button-arrow-size: 19px; --ms-button-arrow-gap: 18px; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:var(--ms-button-arrow-gap); min-height:48px; padding:13px 24px; background:var(--cyan); color:var(--ink); font-weight:700; text-decoration:none; border:0; border-radius:40px; }
.btn .arrow { width:var(--ms-button-arrow-size); height:var(--ms-button-arrow-size); stroke-width:1.9; flex:0 0 var(--ms-button-arrow-size); }
.btn:hover { background:var(--button-hover); color:var(--ink); }
.section-end .btn { margin-top:0; }
@media(max-width:720px) { :root { --ms-button-arrow-size:17px; --ms-button-arrow-gap:14px; } .btn { min-height:46px; padding:12px 20px; } }
 
/* v2.9 - shared iframe contact form */
.nav .nav-contact{white-space:nowrap;font-size:14px}
.modal-surface{width:min(100%,700px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
.contact-frame{display:block;width:100%;height:540px;min-height:350px;border:0;background:var(--light);overflow:hidden}
@media(max-width:720px){.nav .nav-contact{margin:8px 0}.modal-surface{padding:24px 16px}.contact-frame{height:650px}}

/* v3.0 controlled fixes: no header contact button; original image logo; visible hero asset */
.hero{isolation:isolate}
.hero-art{z-index:0;pointer-events:none}
.hero-body{position:relative;z-index:1}
.hero-home .hero-art{background-image:url('assets/home-hero-clean-v28.jpg');opacity:.88;inset:0 0 0 41%;background-position:center right;mask-image:linear-gradient(to right,transparent,#000 35%)}
.footer-logo{display:inline-flex;align-items:center;line-height:1;max-width:230px}
.footer-logo img{display:block;width:190px;height:auto;max-width:100%;object-fit:contain;mix-blend-mode:normal}
/* Uniform modal on every page: one iframe, one maximum width, no horizontal clipping */
.modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:16px;background:rgba(3,16,21,.86)}
.modal[hidden]{display:none!important}
.modal-surface{position:relative;flex:0 1 680px;width:min(680px,calc(100vw - 32px));height:auto;max-height:calc(100dvh - 32px);overflow-y:auto;overflow-x:hidden;padding:32px 34px 26px;background:#f2f5f6;border-radius:10px;box-shadow:0 20px 65px rgba(0,0,0,.42)}
.modal-surface h2{font-size:clamp(25px,3vw,31px);margin:0 45px 18px 0;line-height:1.2}
.modal-close{right:18px;top:14px;width:40px;height:40px;border-radius:6px;font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center}
.contact-frame{display:block;box-sizing:border-box;width:100%;height:570px;min-height:0;border:0;background:transparent;overflow:hidden}
@media(max-width:720px){.modal{padding:12px;align-items:safe center}.modal-surface{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:25px 20px 20px}.contact-frame{height:740px}.hero-home .hero-art{inset:0;background-position:62% center;opacity:.45;mask-image:linear-gradient(to bottom,#000,transparent)}}

/* v3.1: Home hero - actual image on hero surface, no intermediate layer or bleed. */
.hero.hero-home{
  background-color:#071218;
  background-image:linear-gradient(90deg, #071218 0%, rgba(7,18,24,.96) 26%, rgba(7,18,24,.74) 46%, rgba(7,18,24,.18) 76%), url('assets/home-hero-clean-v31.jpg');
  background-position:center center,center center;
  background-repeat:no-repeat,no-repeat;
  background-size:cover,cover;
}
.hero.hero-home>.hero-art{display:none!important}
@media(max-width:720px){
  .hero.hero-home{
    background-image:linear-gradient(90deg, rgba(7,18,24,.90),rgba(7,18,24,.58)), url('assets/home-hero-clean-v31.jpg');
    background-position:center center,64% center;
  }
}


/* MSL localhost v2 - authorised consolidated release 2026-10-21 */
/* Universal, consistent hero frame: no page-specific hero height variations */
:root { --msl-hero-height: 570px; --msl-header-height: 90px; }
.header .headbar { min-height:var(--msl-header-height); }
.header .logo { width:190px; }
.header .logo img { width:100%; height:auto; max-height:66px; object-fit:contain; mix-blend-mode:normal; }
.hero, .hero.hero-home { min-height:var(--msl-hero-height); height:auto; }
.hero .hero-body, .hero.hero-home .hero-body {
  min-height:var(--msl-hero-height); box-sizing:border-box;
  padding:56px 0 66px; align-items:center;
}
.hero .hero-copy, .hero.hero-home .hero-copy {position:relative;z-index:2;max-width:670px;}
.hero .hero-art {position:absolute;inset:0 0 0 41%; z-index:0;pointer-events:none; background-size:cover;background-position:center center;mask-image:linear-gradient(to right,transparent,#000 35%);}
.hero.hero-home { background-image:linear-gradient(90deg,#071218 0%,rgba(7,18,24,.95) 27%,rgba(7,18,24,.64) 55%,rgba(7,18,24,.22) 100%),url('assets/home-hero-clean-v31.jpg'); background-position:center,center; background-size:cover,cover; background-repeat:no-repeat; }
.hero.hero-home>.hero-art { display:none!important; }
.hero.hero-home::after { display:none!important; }
/* Matched three-card heading and accents - no hover/selected border flashes */
.belief-grid {align-items:stretch;}
.belief-grid .belief-card,
.belief-grid .belief-collaboration,
.belief-grid .belief-simplification { --accent:#63caee; border:1px solid #476875; border-top:5px solid var(--accent); transform:none!important;box-shadow:none!important;transition:none!important; }
.belief-grid .belief-card:hover,
.belief-grid .belief-card:focus-within,
.belief-grid .belief-card[open] {border-color:#476875;border-top-color:var(--accent);transform:none!important;box-shadow:none!important;}
.belief-card summary {min-height:220px; padding:28px 28px 24px;}
.belief-card summary .small-rule {background:var(--accent);width:40px;height:4px;}
.belief-card summary h3 {margin:20px 0 4px;}
.belief-card summary .belief-sub {color:var(--accent);}
.belief-card .belief-cue {margin-top:auto;}
/* Consistent internal dividers irrespective of differing body text lengths */
.belief-card .belief-reveal {min-height:320px;display:flex;flex-direction:column;gap:14px;padding:0 28px 26px;animation:none;}
.belief-card .belief-reveal>p:first-child {min-height:160px;margin:0;}
.belief-card .belief-reveal .belief-detail {border-top:1px solid #587580;margin:0;padding:16px 0 0;}
/* Do not reveal cards on hover: click/tap or keyboard activation only */
@media(hover:hover) and (pointer:fine){.belief-card:not([open]):hover>.belief-reveal{display:none!important}.belief-card:not([open]):hover .belief-cue{opacity:1!important}}
/* One approved complete graphic, displayed without cropping or rewriting text */
.visually-hidden {position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.approach-summary-visual {margin:0;padding:0;background:#071218;line-height:0;width:100%;overflow:hidden;}
.approach-summary-visual img {display:block;max-width:100%;width:100%;height:auto;object-fit:contain;}
@media(max-width:900px) { .belief-card .belief-reveal,.belief-card .belief-reveal>p:first-child {min-height:0;} }
@media(max-width:720px) {
 :root { --msl-hero-height: 500px; --msl-header-height:76px; }
 .header .logo {width:154px;}
 .header .logo img {height:auto;max-height:53px;}
 .hero,.hero.hero-home,.hero .hero-body,.hero.hero-home .hero-body {min-height:var(--msl-hero-height);}
 .hero .hero-body,.hero.hero-home .hero-body {padding:64px 0 68px;align-items:center;}
 .hero .hero-art {inset:0;opacity:.3;mask-image:linear-gradient(to bottom,#000,transparent);}
 .hero.hero-home {background-position:center,64% center;background-image:linear-gradient(90deg,rgba(7,18,24,.92),rgba(7,18,24,.65)),url('assets/home-hero-clean-v31.jpg')}
 .belief-grid .belief-card summary {min-height:174px;}
}
@media(max-width:420px){:root{--msl-hero-height:520px}.hero .hero-body,.hero.hero-home .hero-body{padding:50px 0 55px}}

/* MSL localhost v3 - targeted consolidated summary section only */
.approach-summary-panel{background:#021d27;color:#edf6f8;padding:76px 0 0;overflow:hidden}
.summary-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.summary-flip-card{appearance:none;position:relative;display:block;width:100%;height:255px;padding:0;margin:0;border:1px solid #2d6d7d;border-radius:12px;text-align:left;background:#0b2d3b;color:#edf6f8;cursor:pointer;overflow:hidden;transition:background-color .15s ease}
.summary-flip-card:hover,.summary-flip-card.is-revealed{background:#103947;border-color:#2d6d7d;box-shadow:none;transform:none}
.summary-flip-card:focus-visible{outline:3px solid #f2cf63;outline-offset:3px}
.summary-face{position:absolute;inset:0;padding:27px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;transition:opacity .17s ease;overflow:hidden}
.summary-face-front{opacity:1;visibility:visible}.summary-face-back{opacity:0;visibility:hidden}
.summary-flip-card.is-revealed .summary-face-front{opacity:0;visibility:hidden}
.summary-flip-card.is-revealed .summary-face-back{opacity:1;visibility:visible}
.summary-kicker{display:block;font-size:13px;letter-spacing:.13em;font-weight:700;color:#63caee;text-transform:uppercase;margin:0 0 23px;line-height:1.35}
.summary-kicker::after{content:'';display:block;width:38px;height:3px;background:#63caee;margin-top:12px}
.summary-face strong{font-size:clamp(22px,2vw,32px);line-height:1.13;font-weight:700;letter-spacing:-.025em}
.summary-desc{font-size:clamp(15px,1.15vw,18px);line-height:1.48;max-width:32ch}
.summary-hint{margin-top:auto;font-size:12px;font-weight:700;color:#aed8e6;line-height:1.2;padding-top:10px}
.summary-image-wrap{margin-top:22px;line-height:0;width:100%;overflow:hidden;background:#021d27}
.summary-image-wrap img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:900px){.summary-card-grid{gap:12px}.summary-face{padding:20px}.summary-flip-card{height:270px}.summary-kicker{font-size:11px}.summary-face strong{font-size:21px}.summary-desc{font-size:15px}}
@media(max-width:680px){.approach-summary-panel{padding-top:48px}.summary-card-grid{grid-template-columns:1fr;gap:14px}.summary-flip-card{height:210px}.summary-face{padding:24px}.summary-kicker{font-size:12px;margin-bottom:16px}.summary-face strong{font-size:24px}.summary-desc{font-size:16px;max-width:none}.summary-image-wrap{margin-top:22px;overflow-x:auto;scrollbar-color:#63caee #071218}.summary-image-wrap img{width:max(100%,780px);max-width:none}.summary-card-grid{padding-bottom:4px}}
@media(prefers-reduced-motion:reduce){.summary-flip-card,.summary-face{transition:none}}

/* Localhost v3.1: Four evenly-sized Value Stream Enablement content columns only */
.value-stream-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
@media(max-width:1100px){.value-stream-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.value-stream-grid{grid-template-columns:1fr}}


/* MSL localhost v3.2 - single authoritative page-hero geometry and 4-capability layout.
   These rules intentionally supersede legacy hero declarations above without altering copy/assets. */
html { scrollbar-gutter:stable; scroll-behavior:auto; }
:root { --msl-hero-fixed:600px; --msl-header-fixed:90px; }
.header,.header .headbar { box-sizing:border-box; }
.header .headbar {height:var(--msl-header-fixed)!important;min-height:var(--msl-header-fixed)!important;max-height:var(--msl-header-fixed)!important;}
.hero,.hero.hero-home {height:var(--msl-hero-fixed)!important;min-height:var(--msl-hero-fixed)!important;max-height:var(--msl-hero-fixed)!important;overflow:hidden;}
.hero .hero-body,.hero.hero-home .hero-body {height:100%!important;min-height:0!important;max-height:100%!important;box-sizing:border-box;display:flex;align-items:center!important;padding:40px 0!important;}
.hero .hero-copy,.hero.hero-home .hero-copy {margin:0;max-width:670px;}
.hero .hero-art {inset:0 0 0 41%;background-position:center center;}
.hero.hero-home {background-position:center,center;background-size:cover,cover;}
.editorial-grid.service-four-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start;}
.editorial-grid.service-four-grid>div {min-width:0;}
@media(max-width:1100px){.editorial-grid.service-four-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px){
 :root{--msl-hero-fixed:640px;--msl-header-fixed:76px;}
 .hero,.hero.hero-home {height:var(--msl-hero-fixed)!important;min-height:var(--msl-hero-fixed)!important;max-height:var(--msl-hero-fixed)!important;}
 .hero .hero-body,.hero.hero-home .hero-body {padding:34px 0!important;align-items:center!important;}
 .hero .hero-art {inset:0;background-position:62% center;}
 .editorial-grid.service-four-grid {grid-template-columns:1fr;gap:26px;}
}
@media(max-width:420px){:root{--msl-hero-fixed:690px}}

/* MSL consolidated v4 - consistent neutral interactions and clear accessible focus. */
.btn:hover,.btn:active,.btn:focus,.btn:focus-visible {background:var(--cyan)!important;color:var(--ink)!important;box-shadow:none!important;transform:none!important;}
.btn:focus-visible,.summary-flip-card:focus-visible,.belief-card:focus-within,.nav a:focus-visible,.modal-close:focus-visible{outline:2px solid #536c78!important;outline-offset:3px!important;box-shadow:none!important;}
.summary-flip-card:hover,.summary-flip-card:active,.summary-flip-card:focus,.summary-flip-card.is-revealed{border-color:#2d6d7d!important;box-shadow:none!important;transform:none!important;}
.modal-close{right:19px;top:16px;width:38px;height:38px;border-radius:50%!important;background:transparent!important;border:1px solid #708a96!important;color:#203b46!important;font-size:24px!important;font-weight:400;line-height:1;box-shadow:none!important;}
.modal-close:hover,.modal-close:active{border-color:#304957!important;background:transparent!important;color:#203b46!important;box-shadow:none!important;}
.engage-illustrated .intro p.lead{margin:0 0 14px;max-width:870px;}
.engage-illustrated .intro p.lead:last-child{margin-bottom:0;}
.service-outcomes{margin:28px 0 0;font-size:16px;line-height:1.6;max-width:930px;border-top:1px solid currentColor;padding-top:15px;}
.service-outcomes strong{display:block;margin-bottom:6px;}
.summary-image-wrap img{width:min(100%,1100px)!important;height:auto!important;max-width:100%;margin-inline:auto;display:block;}
@media(max-width:680px){.summary-image-wrap{overflow-x:auto}.summary-image-wrap img{width:max(100%,720px)!important;max-width:none!important}}


/* MSL localhost v4.1 - hero CTA is anchored in a dedicated footer row.
   The fixed row avoids page-to-page movement when headline/lead length varies. */
.hero .hero-body,.hero.hero-home .hero-body {
  display:grid!important;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:minmax(0,1fr) auto;
  align-items:stretch!important;
  padding:36px 0 38px!important;
  row-gap:12px;
}
.hero .hero-body > .hero-copy,.hero.hero-home .hero-body > .hero-copy {
  grid-row:1;
  min-width:0;
  align-self:center;
}
.hero .hero-body > .btn,.hero.hero-home .hero-body > .btn {
  grid-row:2;
  justify-self:start;
  align-self:end;
  margin:0;
}
@media(max-width:720px){
  .hero .hero-body,.hero.hero-home .hero-body {padding:28px 0 32px!important;row-gap:10px;}
}
@media(max-width:420px){
  .hero .hero-body,.hero.hero-home .hero-body {padding:24px 0 30px!important;}
}

/* MSL v4.2 - align the experience attribution note with body reading size. */
.approach-caution { font-size: 16px; line-height: 1.7; max-width: 100%; }
@media (max-width: 680px) { .approach-caution { font-size: 16px; line-height: 1.7; } }

/* MSL localhost v4.3 - restore full approved infographic below the three cards.
   Equal vertical breathing room; retain mobile horizontal pan for text legibility. */
.approach-summary-panel .summary-image-wrap {
  margin-top:64px!important;
  margin-bottom:64px!important;
  padding:0 20px!important;
  width:100%;
  box-sizing:border-box;
  background:transparent!important;
}
.approach-summary-panel .summary-image-wrap img {
  display:block;
  width:min(100%,1400px)!important;
  max-width:100%!important;
  height:auto!important;
  margin-inline:auto;
}
@media(max-width:680px){
  .approach-summary-panel .summary-image-wrap {
    margin-top:32px!important;
    margin-bottom:32px!important;
    padding:0 12px!important;
    overflow-x:auto;
  }
  .approach-summary-panel .summary-image-wrap img {
    width:max(100%,760px)!important;
    max-width:none!important;
  }
}
