/* MJM wide editorial sections — migration refinement */
@media(min-width:1100px){
 .mjm-site .mjm-wrap{width:min(1470px,calc(100% - 104px))}
 .mjm-site .mjm-hero-v2{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(42px,5vw,90px)}
 .mjm-portfolio-feature .mjm-wrap,.mjm-process-feature .mjm-wrap{width:min(1550px,calc(100% - 112px))}
}
.mjm-portfolio-feature{position:relative;isolation:isolate;padding-block:clamp(78px,8vw,132px);background:#f1f4f8;overflow:hidden}
.mjm-portfolio-feature:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse 60% 85% at 100% 0%,#dce6f180,transparent 77%),repeating-linear-gradient(90deg,transparent 0,transparent 115px,#607a9b08 116px)}
.mjm-portfolio-head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.65fr);gap:clamp(36px,7vw,125px);align-items:end;margin-bottom:54px}
.mjm-portfolio-head h2{font-size:clamp(47px,5.3vw,82px);max-width:none;line-height:1.04;letter-spacing:-.05em}
.mjm-portfolio-intro{max-width:410px;border-top:1px solid #a4b6cc;padding-top:20px}
.mjm-portfolio-intro p{font-size:16px;line-height:1.72;color:#435a75;margin:0 0 20px}
.mjm-portfolio-count{display:flex;gap:19px;align-items:center;padding-top:9px}
.mjm-portfolio-count strong{font:normal clamp(47px,5.5vw,77px)/1 Georgia,serif;letter-spacing:-.06em;color:#153763}
.mjm-portfolio-count span{text-transform:uppercase;letter-spacing:.12em;font-size:10px;line-height:1.55;font-weight:700;color:#61758e}
.mjm-portfolio-feature .mjm-work-grid{gap:clamp(18px,2vw,31px);grid-template-columns:repeat(2,minmax(0,1fr))}
.mjm-portfolio-feature .mjm-work-card{background:#fff;box-shadow:0 16px 45px #0a294910;transition:transform .3s ease,box-shadow .3s ease;overflow:hidden}
.mjm-portfolio-feature .mjm-work-card:hover{transform:translateY(-5px);box-shadow:0 26px 57px #0a29491e}
.mjm-portfolio-feature .mjm-work-image{height:clamp(235px,23vw,365px);overflow:hidden}
.mjm-portfolio-feature .mjm-work-image img{height:100%;width:100%;object-fit:cover}
.mjm-portfolio-feature .mjm-work-image-flight img,.mjm-portfolio-feature .mjm-work-image-phone img{object-fit:contain}
.mjm-portfolio-feature .mjm-work-cover{min-height:210px;padding:29px clamp(24px,3vw,42px)}
.mjm-portfolio-feature .mjm-work-cover strong{font-size:clamp(34px,3.25vw,51px)}
.mjm-portfolio-feature .mjm-work-info{padding:17px 28px 20px}
.mjm-portfolio-endcap{margin-top:42px;padding-top:25px;border-top:1px solid #b7c6d9;display:flex;align-items:center;justify-content:space-between;gap:30px}
.mjm-portfolio-endcap p{max-width:650px;margin:0;font-size:16px;line-height:1.6;color:#4c617c}
.mjm-portfolio-endcap .mjm-button{flex-shrink:0}
.mjm-process-feature{position:relative;isolation:isolate;overflow:hidden;background:#e8efec;padding-block:clamp(82px,8vw,132px)}
.mjm-process-feature:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 0% 90%,#c8d6d3a0,transparent 50%),repeating-linear-gradient(135deg,transparent 0,transparent 22px,#365b5209 23px,#365b5209 24px)}
.mjm-process-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:60px;align-items:end;margin-bottom:54px}
.mjm-process-head h2{max-width:840px;font-size:clamp(45px,5.1vw,76px)}
.mjm-process-head>p{font-size:17px;line-height:1.7;color:#435d60;max-width:360px}
.mjm-process-feature .mjm-process{gap:15px;border:0;padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}
.mjm-process-feature .mjm-process>div{padding:33px 27px 40px;background:#fffffff0;border:1px solid #d2dfdc;box-shadow:0 13px 28px #274c4310;min-height:280px}
.mjm-process-feature .mjm-process .mjm-number{font-size:16px;color:#315b63;margin-bottom:48px}
.mjm-process-feature .mjm-process h3{font-size:clamp(24px,2vw,33px);line-height:1.13}
.mjm-process-feature .mjm-process p{font-size:14px;line-height:1.7;color:#4a6369}
.mjm-process-foot{margin-top:28px;background:#0d2b50;color:#fff;padding:clamp(25px,3vw,43px);display:flex;justify-content:space-between;align-items:center;gap:30px}
.mjm-process-foot>div:first-child{display:grid;gap:7px}
.mjm-process-foot strong{font:normal clamp(23px,2vw,31px)/1.2 Georgia,serif}
.mjm-process-foot span{font-size:13px;color:#ccdce9}
.mjm-process-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}
.mjm-process-actions .mjm-button{background:#fff!important;color:#0d2b50!important;border-color:#fff!important}
.mjm-process-actions .mjm-text-link{color:#e9f4ff;border-bottom-color:#b2cade}
.mjm-services-feature{background:#fff}
@media(max-width:1050px){
 .mjm-portfolio-head,.mjm-process-head{grid-template-columns:1fr;gap:18px}
 .mjm-portfolio-head .mjm-portfolio-intro{max-width:680px}
 .mjm-process-feature .mjm-process{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mjm-process-foot{align-items:flex-start;flex-direction:column}
}
@media(max-width:650px){
 .mjm-portfolio-feature,.mjm-process-feature{padding-block:70px}
 .mjm-portfolio-feature .mjm-work-grid,.mjm-process-feature .mjm-process{grid-template-columns:1fr}
 .mjm-portfolio-feature .mjm-work-image{height:245px}
 .mjm-portfolio-feature .mjm-work-cover{min-height:180px}
 .mjm-portfolio-head h2,.mjm-process-head h2{font-size:clamp(39px,10vw,54px)}
 .mjm-portfolio-endcap{align-items:flex-start;flex-direction:column}
 .mjm-process-feature .mjm-process>div{min-height:0;padding:28px}
 .mjm-process-feature .mjm-process .mjm-number{margin-bottom:24px}
 .mjm-process-actions{align-items:flex-start;flex-direction:column;gap:15px}
}
@media(prefers-reduced-motion:reduce){.mjm-portfolio-feature .mjm-work-card:hover{transform:none}}
