.outcome-intro{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(3rem,8vw,8rem);align-items:start}.outcome-intro>div:first-child{position:sticky;top:2rem}.outcome-list{border-top:1px solid var(--line)}.outcome-list article{display:grid;grid-template-columns:52px 1fr;gap:.4rem 1.25rem;padding:1.55rem 0;border-bottom:1px solid var(--line)}.outcome-list article>span{grid-row:1/3;color:var(--amber);font-size:.72rem;font-weight:800}.outcome-list h3{margin:0;font-size:clamp(1.25rem,2vw,1.75rem)}.outcome-list p{margin:0;color:#655f57;line-height:1.65;max-width:700px}.light-head h2,.dark-section h2{color:#fff}.light-head .kicker,.dark-section .kicker{color:var(--gold)}.section-copy{max-width:430px;color:#bdb5ac;line-height:1.7;margin:0}.lifecycle{display:grid;grid-template-columns:repeat(5,1fr);border-left:1px solid #ffffff2b;border-top:1px solid #ffffff2b}.lifecycle>div{min-height:180px;padding:1.5rem;border-right:1px solid #ffffff2b;border-bottom:1px solid #ffffff2b;display:flex;flex-direction:column;justify-content:space-between}.lifecycle strong{font-size:1.08rem}.lifecycle span{color:#b8afa5;font-size:.75rem;line-height:1.55;text-transform:uppercase;letter-spacing:.07em}.service-grid-v2{grid-template-columns:repeat(5,1fr)}.service-grid-v2 .service-card{min-height:360px;padding:1.5rem}.service-grid-v2 .service-card h3{margin-top:4rem;font-size:1.25rem}.visual-proof{background:#e8e3da}.proof-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(3rem,8vw,8rem);align-items:center}.proof-layout.reverse{grid-template-columns:.92fr 1.08fr}.proof-layout.reverse .proof-media{order:2}.proof-media img{width:100%;height:min(62vw,720px);object-fit:cover}.proof-copy h2{margin-bottom:1.6rem}.proof-copy>p{color:#5d564e;line-height:1.8;font-size:1.05rem}.proof-points{border-top:1px solid var(--line);margin-top:2rem}.proof-points>div{display:grid;grid-template-columns:150px 1fr;gap:1.2rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}.proof-points span{color:#655f57;line-height:1.6}.partner-fit{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem)}.partner-fit-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.partner-fit-grid article{min-height:210px;padding:1.7rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.partner-fit-grid h3{font-size:1.25rem;margin-bottom:1rem}.partner-fit-grid p{color:#655f57;line-height:1.65;margin:0}.global-section{background:#100d0b;color:#fff;padding-block:clamp(5rem,9vw,8rem)}.global-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,8rem);align-items:center}.global-layout h2{margin-bottom:1.5rem}.global-layout p{color:#bdb5ac;line-height:1.8}.light-link{color:#fff;display:inline-block;margin-top:1rem}.global-visual{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem;padding:clamp(1.5rem,4vw,3rem);border:1px solid #ffffff30;background:#17120f}.global-visual span{padding:.85rem 1rem;border:1px solid #ffffff33;font-size:.7rem;font-weight:800;letter-spacing:.09em}.global-visual b{color:var(--gold)}.evidence-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);align-items:center}.evidence-section>div:first-child>p:last-child{color:#655f57;line-height:1.8;max-width:700px}.evidence-panel{border-top:3px solid var(--red);background:#15110e;color:#fff;padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1px;background-clip:padding-box}.evidence-panel strong{grid-column:1/-1;font-size:1.4rem;padding-bottom:1.5rem}.evidence-panel span{padding:1rem;border-top:1px solid #ffffff25;color:#c8c0b7;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.about-system{display:grid;gap:3rem}.about-principles{padding-top:6rem}.values-v2{grid-template-columns:repeat(4,1fr);margin-bottom:0}.values-v2 article{min-height:290px}.service-longcopy{margin-top:2rem;color:#5f5850;line-height:1.8;font-size:1rem}.service-framework{margin-top:0}.framework-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff2b;border-left:1px solid #ffffff2b}.framework-grid article{min-height:180px;padding:1.7rem;border-right:1px solid #ffffff2b;border-bottom:1px solid #ffffff2b}.framework-grid span{color:var(--gold);font-size:.72rem;font-weight:800}.framework-grid h3{margin-top:4.2rem;margin-bottom:0;font-size:1.3rem}.service-trust{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,8vw,8rem)}.trust-list{border-top:1px solid var(--line)}.trust-list article{padding:1.35rem 0;border-bottom:1px solid var(--line)}.trust-list strong{font-size:1.05rem}.trust-list p{color:#655f57;line-height:1.7;margin:.45rem 0 0}.service-visual{padding-block:clamp(5rem,9vw,8rem)}
@media(max-width:1050px){.service-grid-v2{grid-template-columns:repeat(2,1fr)}.lifecycle{grid-template-columns:repeat(3,1fr)}.values-v2{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.outcome-intro,.proof-layout,.proof-layout.reverse,.partner-fit,.global-layout,.evidence-section,.service-trust{grid-template-columns:1fr}.outcome-intro>div:first-child{position:static}.proof-layout.reverse .proof-media{order:0}.lifecycle{grid-template-columns:1fr 1fr}.partner-fit-grid{grid-template-columns:1fr 1fr}.service-grid-v2{grid-template-columns:1fr 1fr}.framework-grid{grid-template-columns:1fr 1fr}.section-copy{max-width:none}.proof-media img{height:min(78vw,620px)}}
@media(max-width:560px){.service-grid-v2,.lifecycle,.partner-fit-grid,.values-v2,.framework-grid{grid-template-columns:1fr}.proof-points>div{grid-template-columns:1fr;gap:.35rem}.partner-fit-grid article{min-height:0}.lifecycle>div{min-height:140px}.evidence-panel{grid-template-columns:1fr}.global-visual{gap:.55rem}.global-visual span{padding:.7rem .8rem}.service-grid-v2 .service-card{min-height:285px}}


/* UI/UX refinement pass 2.1 */
.section{padding-block:clamp(4.25rem,7vw,6.5rem)}
.page-hero{padding-block:clamp(4.5rem,8vw,7rem)}
.page-hero>p:last-child,.intro>p,.body-lead,.about-grid p,.proof-copy>p,.service-longcopy,.trust-list p,.partner-fit-grid p,.outcome-list p{color:#4c463f}
.dark-section .section-copy,.global-layout p,.deal-grid>div>p{color:#d0c8bf}
.hero-copy{color:#ece7e0}

/* Header */
.site-header{height:94px;background:rgba(11,9,7,.96);border-bottom:1px solid rgba(247,178,92,.12)}
.home .site-header{background:linear-gradient(180deg,rgba(5,4,3,.72),rgba(5,4,3,.16));backdrop-filter:blur(6px)}
.header-inner{height:94px;border-bottom:0}
.brand img,.custom-logo{height:68px}
.primary-nav>ul{gap:1.65rem}
.primary-nav>ul>li{position:relative}
.primary-nav>ul>li>a{position:relative;padding:.9rem 0}
.primary-nav>ul>li>a:after{content:'';position:absolute;left:0;right:100%;bottom:.45rem;height:2px;background:var(--red);transition:right .2s ease}
.primary-nav>ul>li:hover>a:after,.primary-nav>ul>li.current-menu-item>a:after,.primary-nav>ul>li.current-menu-parent>a:after{right:0}
.primary-nav>ul>li:last-child>a{border:1px solid #ffffff4d;padding:.85rem 1.1rem}
.primary-nav>ul>li:last-child>a:after{display:none}
.primary-nav .menu-item-has-children>a{padding-right:1rem}
.primary-nav .menu-item-has-children>a:before{content:'+';position:absolute;right:0;top:50%;transform:translateY(-52%);color:var(--gold);font-size:.8rem}
.primary-nav .sub-menu{position:absolute;top:calc(100% + .25rem);left:-1.25rem;min-width:300px;display:block!important;visibility:hidden;opacity:0;transform:translateY(8px);background:#120f0c;border:1px solid #ffffff21;padding:.6rem;z-index:60;box-shadow:none;transition:opacity .18s ease,transform .18s ease,visibility .18s}
.primary-nav .sub-menu:before{content:'Services';display:block;padding:.7rem .85rem .55rem;color:var(--gold);font-size:.64rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;border-bottom:1px solid #ffffff1d;margin-bottom:.25rem}
.primary-nav .menu-item-has-children:hover>.sub-menu,.primary-nav .menu-item-has-children:focus-within>.sub-menu{visibility:visible;opacity:1;transform:none}
.primary-nav .sub-menu li{display:block!important;width:100%}
.primary-nav .sub-menu a,.primary-nav .sub-menu li:last-child a{display:flex!important;align-items:center;justify-content:space-between;border:0!important;padding:.8rem .85rem!important;color:#ddd5cc!important;font-size:.84rem;line-height:1.35}
.primary-nav .sub-menu a:after{content:'→';position:static!important;width:auto;height:auto;background:none!important;color:var(--gold);opacity:.55;transition:transform .18s ease,opacity .18s ease}
.primary-nav .sub-menu a:hover,.primary-nav .sub-menu a:focus{background:#1d1814;color:#fff!important}
.primary-nav .sub-menu a:hover:after,.primary-nav .sub-menu a:focus:after{transform:translateX(3px);opacity:1}

/* Services archive */
.services-archive-hero{padding-bottom:4rem}
.services-editorial{padding-top:2rem}
.services-editorial-intro{display:grid;grid-template-columns:1.05fr .65fr;gap:clamp(2rem,8vw,7rem);align-items:end;margin-bottom:3rem}
.services-editorial-intro p{margin:0;color:#4c463f;line-height:1.75;max-width:520px}
.services-editorial-list{border-top:1px solid var(--line)}
.services-editorial-list>a{display:grid;grid-template-columns:48px 54px minmax(0,1fr) auto;gap:1.25rem;align-items:center;padding:1.8rem 0;border-bottom:1px solid var(--line);transition:padding .18s ease,background .18s ease}
.services-editorial-list>a:hover{padding-left:1rem;padding-right:1rem;background:#e8e3da}
.services-editorial-list .service-index{font-size:.72rem;color:var(--amber);font-weight:800}
.service-editorial-icon svg{width:28px;height:28px;color:var(--amber)}
.services-editorial-list h3{margin:0 0 .35rem;font-size:clamp(1.35rem,2.3vw,2.25rem)}
.services-editorial-list p{margin:0;color:#4c463f;line-height:1.6;max-width:760px}
.services-editorial-list strong{font-size:.78rem;white-space:nowrap}
.archive-lifecycle{margin-top:0}

/* Service page process */
.framework-grid article{min-height:230px;display:flex;flex-direction:column}
.framework-grid h3{margin:3.25rem 0 .75rem}
.framework-grid p{margin:0;color:#cfc6bd;line-height:1.6;font-size:.9rem}

/* About visual */
.about-visual{overflow:hidden;background:#ddd6cc}
.about-visual img{height:auto;aspect-ratio:16/7;object-fit:cover;object-position:center 48%}
.about-principles{padding-top:4.75rem}

/* Footer lead + footer */
.mjh-footer-lead{background:#e20c12;color:#fff}
.mjh-footer-lead-inner{min-height:250px;padding-block:clamp(2.5rem,5vw,4.5rem);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:end}
.mjh-footer-lead span{display:block;margin-bottom:1.1rem;font-size:.68rem;font-weight:800;letter-spacing:.16em;color:#ffd8da}
.mjh-footer-lead h2{max-width:850px;font-size:clamp(2.25rem,4.7vw,4.5rem);line-height:.98;color:#fff}
.mjh-footer-lead a{display:inline-flex;align-items:center;gap:.8rem;border:1px solid #ffffff8a;padding:1rem 1.2rem;font-size:.84rem;font-weight:800;white-space:nowrap}
.mjh-footer-lead a:hover{background:#fff;color:var(--ink)}
.site-footer{padding:4.25rem 0 1.5rem;border-top:1px solid #ffffff14;background:#0b0907}
.footer-grid{grid-template-columns:1.45fr .8fr 1fr 1.15fr;gap:clamp(2rem,5vw,4.5rem)}
.footer-grid>div:first-child{padding-right:2rem}
.footer-logo{height:90px;margin-bottom:.4rem}
.footer-grid>div:first-child p{max-width:260px;color:#d1c8bf;font-size:.72rem;text-transform:uppercase;letter-spacing:.13em}
.footer-grid strong{color:var(--gold);font-size:.66rem;letter-spacing:.15em}
.footer-grid a{position:relative;width:max-content;max-width:100%;color:#c9c0b7}
.footer-grid a:after{content:'';position:absolute;left:0;right:100%;bottom:.15rem;height:1px;background:var(--gold);transition:right .2s ease}
.footer-grid a:hover{color:#fff}
.footer-grid a:hover:after{right:0}
.footer-grid p{color:#b8afa6}
.footer-bottom{margin-top:3.25rem;padding-top:1.25rem;color:#938a82}
.footer-bottom a{color:#c9c0b7}

/* Better density in repeated sections */
.partner-fit-grid article{min-height:185px}
.values-v2 article{min-height:250px}
.service-grid-v2 .service-card{min-height:330px}
.evidence-section{padding-bottom:5rem}
.global-section{padding-block:clamp(4.5rem,7vw,6.25rem)}
.service-trust{padding-top:4.75rem;padding-bottom:5rem}

@media(max-width:850px){
  .site-header,.header-inner{height:82px}
  .brand img,.custom-logo{height:60px}
  .primary-nav{top:82px;background:#120f0c;border:1px solid #ffffff21;padding:.65rem}
  .primary-nav>ul{gap:0}
  .primary-nav>ul>li>a{padding:.9rem!important;border:0!important}
  .primary-nav>ul>li>a:after{display:none}
  .primary-nav .menu-item-has-children>a:before{right:.9rem}
  .primary-nav .sub-menu{position:static;visibility:visible;opacity:1;transform:none;min-width:0;border:0;border-top:1px solid #ffffff17;margin:0 .65rem .4rem;padding:.35rem 0 .3rem;background:transparent}
  .primary-nav .sub-menu:before{display:none}
  .primary-nav .sub-menu a,.primary-nav .sub-menu li:last-child a{padding:.68rem .85rem .68rem 1.25rem!important;font-size:.8rem;color:#cfc6bd!important}
  .services-editorial-intro,.mjh-footer-lead-inner{grid-template-columns:1fr}
  .mjh-footer-lead-inner{align-items:start;gap:1.8rem}
  .mjh-footer-lead a{width:max-content}
  .services-editorial-list>a{grid-template-columns:38px 42px 1fr}
  .services-editorial-list>a>strong{display:none}
  .about-visual img{aspect-ratio:4/3}
}
@media(max-width:560px){
  .section{padding-block:3.75rem}
  .page-hero{padding-block:3.8rem 3.4rem}
  .services-archive-hero{padding-bottom:2.7rem}
  .services-editorial{padding-top:1rem}
  .services-editorial-list>a{grid-template-columns:30px 1fr;gap:.7rem 1rem;padding:1.35rem 0}
  .service-editorial-icon{display:none}
  .services-editorial-list p{font-size:.92rem}
  .framework-grid article{min-height:0}
  .framework-grid h3{margin:2rem 0 .6rem}
  .mjh-footer-lead-inner{min-height:0;padding-block:2.8rem}
  .mjh-footer-lead h2{font-size:clamp(2rem,11vw,3rem)}
  .mjh-footer-lead a{width:100%;justify-content:space-between}
  .site-footer{padding-top:3.5rem}
  .footer-grid>div:first-child{padding-right:0}
  .footer-logo{height:82px}
  .about-visual img{aspect-ratio:1/1;object-position:center}
}


/* QA hardening pass 2.2: contrast, overflow, desktop/tablet/mobile */
html,body{width:100%;max-width:100%}
body,#main-content,.site-header,.site-footer,.mjh-footer-lead{min-width:0}
.shell,.header-inner,.footer-grid,.footer-grid>div,.section-head,.section-head>div,.outcome-intro>div,.proof-layout>div,.partner-fit>div,.global-layout>div,.evidence-section>div,.detail-hero>div,.detail-body>div,.service-trust>div,.contact-layout>div,.field-row>*{min-width:0}
img,svg,video,iframe{max-width:100%}
.footer-grid a,.footer-grid p,.footer-bottom,.contact-details span,.services-editorial-list p,.service-card h3,.service-card p{overflow-wrap:anywhere}

/* Explicit light-surface text contract */
.outcome-intro h2,.outcome-intro h3,
.services-section h2,.services-section h3,
.visual-proof h2,.visual-proof h3,
.partner-fit h2,.partner-fit h3,
.evidence-section>div:first-child h2,
.page-hero h1,
.about-grid h2,.about-principles h2,.about-principles h3,
.services-editorial h2,.services-editorial h3,
.detail-hero h1,.detail-body h2,
.service-trust h2,.service-trust h3,
.contact-copy h1,.contact-form label,
.legal h1,.legal h2{color:var(--ink)}

/* Dark-surface text contract */
.hero,.hero h1,.hero h2,.hero h3,.hero strong,
.dark-section,.dark-section h1,.dark-section h2,.dark-section h3,.dark-section strong,
.global-section,.global-section h1,.global-section h2,.global-section h3,.global-section strong,
.cta,.cta h1,.cta h2,.cta h3,.cta strong,
.mjh-footer-lead,.mjh-footer-lead h1,.mjh-footer-lead h2,.mjh-footer-lead h3,.mjh-footer-lead strong,
.site-footer,.site-footer h1,.site-footer h2,.site-footer h3{color:#fff}
.dark-section p,.dark-section li,.dark-section .section-copy,.dark-section .framework-grid p{color:#d6cec5}
.global-section p{color:#d6cec5}
.site-footer p,.site-footer a{color:#c9c0b7}
.site-footer strong{color:var(--gold)}

/* Preserve intentional inversions */
.service-card:hover h3,.service-card:hover strong{color:#fff}
.evidence-panel,.evidence-panel strong{color:#fff}
.button.primary{color:#fff;background:var(--red)}
.button.light{color:var(--ink);background:#fff}
.button.ghost{color:#fff}

/* Forms: explicit readable states */
.contact-form{color:var(--ink)}
.contact-form input,.contact-form select,.contact-form textarea{min-width:0;max-width:100%;color:var(--ink);background:#f8f5f0}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#6f675f;opacity:1}
.contact-form select option{color:var(--ink);background:#fff}
.form-note{color:#5f5850}
.notice.success{color:#17351f}
.notice.error{color:#571919}

/* Footer: fix the cascade that kept four columns on tablet/mobile */
.footer-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,1.15fr)}
.footer-grid a{width:auto;max-width:100%;word-break:break-word}
.footer-bottom{gap:1.5rem;flex-wrap:wrap}

/* Prevent grid/flex children from creating viewport overflow */
.lifecycle,.service-grid-v2,.partner-fit-grid,.framework-grid,.values-v2,.proof-points,.global-visual,.services-editorial-list{min-width:0;max-width:100%}
.lifecycle>*,.service-grid-v2>*,.partner-fit-grid>*,.framework-grid>*,.values-v2>*{min-width:0}
.global-visual{overflow-wrap:anywhere}
.global-visual span{min-width:0;max-width:100%}

/* Defensive clipping only after fixing the actual overflow sources above */
html,body{overflow-x:clip}

@media(max-width:1100px){
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 3rem}
  .footer-grid>div:first-child{padding-right:0}
}

@media(max-width:850px){
  .primary-nav{max-height:calc(100svh - 82px);overflow-y:auto;overflow-x:hidden}
  .primary-nav,.primary-nav ul,.primary-nav li,.primary-nav a{min-width:0;max-width:100%}
  .primary-nav .sub-menu a{white-space:normal;overflow-wrap:anywhere}
  .mjh-footer-lead-inner>*{min-width:0}
  .mjh-footer-lead h2{max-width:100%}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .detail-hero,.detail-body,.contact-layout,.about-grid,.proof-layout,.partner-fit,.global-layout,.evidence-section,.service-trust{gap:2.5rem}
}

@media(max-width:560px){
  .shell{width:calc(100% - 30px);max-width:1240px}
  .hero h1{font-size:clamp(2.65rem,12vw,3.35rem);line-height:.96;letter-spacing:-.045em}
  .hero-copy{font-size:1rem;line-height:1.62}
  .hero-actions{display:grid;grid-template-columns:1fr;width:100%}
  .hero-actions .button{width:100%;white-space:normal;text-align:center}
  .hero-rail{flex-wrap:wrap;line-height:1.45}
  .footer-grid{grid-template-columns:minmax(0,1fr);gap:2.25rem}
  .footer-bottom{display:grid;grid-template-columns:1fr;gap:.75rem}
  .mjh-footer-lead a{max-width:100%;white-space:normal}
  .contact-form{padding:1.25rem}
  .field-row{grid-template-columns:minmax(0,1fr)}
  .global-visual{display:grid;grid-template-columns:minmax(0,1fr);gap:.55rem}
  .global-visual b{display:none}
  .global-visual span{width:100%}
  .page-hero h1,.detail-hero h1,.contact-copy h1{overflow-wrap:break-word;word-break:normal}
}

@media(max-width:380px){
  .shell{width:calc(100% - 24px)}
  .hero h1{font-size:2.5rem}
  .page-hero h1,.detail-hero h1,.contact-copy h1{font-size:2.55rem}
  .mjh-footer-lead h2{font-size:2rem}
  .primary-nav{left:12px;right:12px}
}
