.cm-mission-profile{position:relative;isolation:isolate;background-color:#000;color:#fff;width:100%;overflow:hidden}.cm-mission-profile__media{position:relative;width:100%;height:430px;background-position:center;background-size:cover;background-repeat:no-repeat}.cm-mission-profile__media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,0) 45%,rgba(0,0,0,.42) 100%)}.cm-mission-profile__inner{position:relative;box-sizing:border-box;width:100%;margin:-115px 0 0;z-index:2}.cm-mission-profile__title{margin:0 0 54px;font-size:clamp(54px,8vw,92px);line-height:.94;font-weight:700;letter-spacing:-.045em}.cm-mission-profile__status{display:flex;align-items:center;gap:22px;font:500 22px/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.28em;text-transform:uppercase;margin:25px 0 92px}.cm-mission-profile__dot{width:20px;height:20px;border-radius:50%;flex:0 0 auto}.cm-mission-profile__links{border-top:2px solid rgba(255,255,255,.32)}.cm-mission-profile__block{padding:58px 0 48px;border-bottom:2px solid rgba(255,255,255,.32)}.cm-mission-profile__block-heading{font:500 22px/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.28em;text-transform:uppercase;margin-bottom:28px}.cm-mission-profile__block-text{color:inherit;font-size:clamp(24px,3vw,34px);line-height:1.25}@media(max-width:767px){.cm-mission-profile__media{height:300px}.cm-mission-profile__inner{margin-top:-75px}.cm-mission-profile__title{margin-bottom:38px}.cm-mission-profile__status{font-size:16px;gap:14px;letter-spacing:.22em;margin-bottom:65px}.cm-mission-profile__dot{width:15px;height:15px}.cm-mission-profile__block{padding:42px 0 38px}.cm-mission-profile__block-heading{font-size:16px}}
/* v1.2.70.69: true device-width breakout and phone-friendly hero image */
.elementor-widget-cm_mission_profile{width:100vw!important;max-width:100vw!important;position:relative!important;left:50%!important;margin-left:-50vw!important;margin-right:-50vw!important}
.elementor-widget-cm_mission_profile>.elementor-widget-container{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.cm-mission-profile{width:100vw;max-width:100vw}
@media(max-width:767px){
 .cm-mission-profile__media{width:100vw;max-width:100vw;background-size:cover;background-repeat:no-repeat;background-position:center center;min-height:0;height:430px}
 .cm-mission-profile__inner{width:100%;max-width:100%!important;box-sizing:border-box}
}

/* v1.2.70.70: Mission Profile backgrounds never tile. Kept as !important so
   Elementor's background group cannot accidentally re-enable image repeat. */
.cm-mission-profile__media{background-repeat:no-repeat!important;}

/* v1.2.70.71: mobile uses the same hero background behaviour as desktop/laptop.
   Keep cover/no-repeat/centre and the same default 430px image area instead of
   shrinking the hero based on the phone viewport width. Elementor responsive
   controls can still deliberately override height/position when required. */
@media(max-width:767px){
 .cm-mission-profile__media{background-size:cover!important;background-repeat:no-repeat!important;background-position:center center;height:430px}
}

/* v1.2.70.72: NASA-style shared content alignment.
   The media remains edge-to-edge while every foreground text/detail element
   uses one common responsive content column and left edge. */
.cm-mission-profile__inner{
  max-width:1440px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:clamp(24px,5.5vw,88px)!important;
  padding-right:clamp(24px,5.5vw,88px)!important;
}
.cm-mission-profile__title,
.cm-mission-profile__status,
.cm-mission-profile__links,
.cm-mission-profile__block,
.cm-mission-profile__block-heading,
.cm-mission-profile__block-text{box-sizing:border-box;text-align:left}
@media(max-width:767px){
 .cm-mission-profile__inner{
   max-width:100%!important;
   padding-left:24px!important;
   padding-right:24px!important;
 }
}
