.ml51-page{--ml51-navy:#162B39;--ml51-title:#0E3140;--ml51-blue:#5FAECE;--ml51-blue-hover:#388A95;--ml51-text:#1D2A36;--ml51-soft:#F5FAFD;background:#fff;color:var(--ml51-text);overflow-x:hidden;font-family:inherit}.ml51-page *{box-sizing:border-box}.ml51-shell{width:min(1360px,calc(100% - 64px));margin:0 auto}.ml51-page h1,.ml51-page h2,.ml51-page p{margin-top:0}.ml51-kicker{margin:0 0 14px;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.14em;color:var(--ml51-blue-hover)}.ml51-hero{background:var(--ml51-soft)}.ml51-hero-inner{width:min(1280px,100%);min-height:500px;margin:0 auto;display:grid;grid-template-columns:minmax(0,46fr) minmax(420px,54fr);gap:34px;align-items:center;padding:42px 0}.ml51-hero-copy h1{margin:0 0 18px;max-width:660px;font-size:clamp(46px,4.5vw,64px);line-height:1.02;letter-spacing:-.035em;color:var(--ml51-title)}.ml51-lead{margin:0;max-width:670px;font-size:18px;line-height:1.55;color:#405562}.ml51-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.ml51-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:9px;text-decoration:none!important;font-size:14px;font-weight:800;line-height:1.2;text-transform:uppercase}.ml51-btn--primary{background:var(--ml51-blue);border:1px solid var(--ml51-blue);color:#fff!important}.ml51-btn--primary:hover,.ml51-btn--primary:focus{background:var(--ml51-blue-hover);border-color:var(--ml51-blue-hover);color:#fff!important}.ml51-btn--secondary{background:#fff;border:1px solid var(--ml51-blue);color:var(--ml51-blue-hover)!important}.ml51-btn--secondary:hover,.ml51-btn--secondary:focus{background:#eff8fc;border-color:var(--ml51-blue-hover);color:var(--ml51-navy)!important}.ml51-hero-media img{display:block;width:100%;max-width:650px;height:auto;margin:0 auto}.ml51-login{padding:48px 0 54px;background:#fff}.ml51-login-shell{width:min(1120px,calc(100% - 64px));margin:0 auto;display:grid;grid-template-columns:minmax(0,62fr) minmax(300px,38fr);gap:64px;align-items:start}.ml51-login-shell--logged{display:block;width:min(760px,calc(100% - 64px))}.ml51-login-form h2,.ml51-register h2,.ml51-help h2{margin:0 0 10px;color:var(--ml51-navy);font-size:26px;line-height:1.18}.ml51-intro,.ml51-register p,.ml51-help p{font-size:16px;line-height:1.55;color:#526873}.ml51-register{padding-top:66px}.ml51-register .ml51-btn{margin-top:6px}.ml51-um{margin-top:20px}.ml51-um .um{max-width:none!important;margin:0!important}.ml51-um .um-form{font-size:14px}.ml51-um .um-field{margin-bottom:18px!important}.ml51-um .um-field-label label{font-weight:700!important;color:#283c48!important}.ml51-um input[type=text],.ml51-um input[type=password],.ml51-um input[type=email]{min-height:44px!important;border:1px solid #cadde5!important;border-radius:4px!important}.ml51-um input[type=submit],.ml51-um .um-button{min-height:46px!important;background:var(--ml51-blue)!important;border-radius:4px!important;box-shadow:none!important;font-weight:800!important}.ml51-um input[type=submit]:hover,.ml51-um .um-button:hover{background:var(--ml51-blue-hover)!important}.ml51-um .um-button.um-alt{display:none!important}.ml51-help{background:#EFF8FC;padding:23px 0}.ml51-help-inner{width:min(920px,calc(100% - 64px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.ml51-help h2{margin-bottom:4px;font-size:19px}.ml51-help p{margin:0;font-size:15px}@media(max-width:1024px){.ml51-shell{width:calc(100% - 48px)}.ml51-hero-inner{min-height:450px;grid-template-columns:minmax(0,1fr) minmax(340px,1fr);gap:26px;padding:36px 0}.ml51-hero-copy h1{font-size:46px}.ml51-login-shell{width:calc(100% - 48px);grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:40px}.ml51-login-shell--logged{width:min(760px,calc(100% - 48px))}.ml51-help-inner{width:calc(100% - 48px)}}@media(max-width:767px){.ml51-shell{width:calc(100% - 40px)}.ml51-hero-inner{min-height:0;grid-template-columns:1fr;gap:20px;padding:44px 0}.ml51-hero-copy{text-align:center}.ml51-hero-copy h1{font-size:36px;line-height:1.06}.ml51-lead{font-size:17px;line-height:1.5}.ml51-actions{flex-direction:column;align-items:stretch;margin-top:22px}.ml51-btn{width:100%}.ml51-hero-media img{max-width:520px}.ml51-login{padding:34px 0 38px}.ml51-login-shell,.ml51-login-shell--logged{width:calc(100% - 40px);display:grid;grid-template-columns:1fr;gap:30px}.ml51-login-form h2,.ml51-register h2{font-size:23px}.ml51-register{padding-top:27px;border-top:1px solid #e4edf1}.ml51-help{padding:20px 0}.ml51-help-inner{width:calc(100% - 40px);flex-direction:column;text-align:center;gap:14px}}@media(max-width:390px){.ml51-shell,.ml51-login-shell,.ml51-login-shell--logged,.ml51-help-inner{width:calc(100% - 32px)}.ml51-hero-inner{padding:36px 0}.ml51-hero-copy h1{font-size:34px}.ml51-lead{font-size:16px}.ml51-btn{min-height:46px;padding-inline:16px}.ml51-hero-media img{max-width:360px}}

/* =========================================================
   v0.7.53 — Login width + UM presentation control
   Contract: presentation only. UM #2052 remains logic owner.
   Desktop shell follows the already-approved Macrigi wide-page contract.
   ========================================================= */
@media (min-width:1181px){
  .ml51-shell,
  .ml51-login-shell,
  .ml51-help-inner{
    width:min(1360px,calc(100% - clamp(60px,9.2vw,184px)));
  }
}

.ml51-hero-inner{
  width:100%;
  max-width:none;
  min-height:0;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  padding:44px 0 40px;
}
.ml51-hero-copy h1{max-width:760px}
.ml51-hero-media img{max-width:560px}

.ml51-login{
  padding:46px 0 54px;
  background:#f4f9fb;
}
.ml51-login-shell{
  max-width:1360px;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);
  gap:34px;
}
.ml51-login-shell--logged{max-width:900px}
.ml51-login-form,
.ml51-register{
  background:#fff;
  border:1px solid #d6e3e8;
  border-radius:8px;
}
.ml51-login-form{padding:28px 30px 26px}
.ml51-register{padding:28px 30px;margin-top:56px}
.ml51-register .ml51-btn{margin-top:8px}

/* Exact Core action palette: no improvised secondary colour. */
.ml51-btn--secondary,
.ml51-btn--secondary:visited{
  background:#fff!important;
  border-color:#5FAECE!important;
  color:#5FAECE!important;
}
.ml51-btn--secondary:hover,
.ml51-btn--secondary:focus,
.ml51-btn--secondary:active{
  background:#f4f9fb!important;
  border-color:#388A95!important;
  color:#388A95!important;
}

/* UM #2052 — visual integration only. */
.ml51-um .um,
.ml51-um .um-form{width:100%!important;max-width:none!important}
.ml51-um .um-field{margin-bottom:20px!important}
.ml51-um .um-field-label{margin-bottom:8px!important}
.ml51-um .um-field-label label{
  color:#162B39!important;
  font-size:14px!important;
  line-height:1.3!important;
  font-weight:800!important;
}
.ml51-um input[type=text],
.ml51-um input[type=password],
.ml51-um input[type=email]{
  width:100%!important;
  min-height:50px!important;
  padding:0 14px!important;
  background:#fff!important;
  border:1px solid #d6e3e8!important;
  border-radius:6px!important;
  color:#1D2A36!important;
  box-shadow:none!important;
  font-size:15px!important;
}
.ml51-um input[type=text]:focus,
.ml51-um input[type=password]:focus,
.ml51-um input[type=email]:focus{
  border-color:#5FAECE!important;
  box-shadow:0 0 0 3px rgba(95,174,206,.14)!important;
  outline:0!important;
}
.ml51-um .um-col-alt .um-left{
  float:none!important;
  width:100%!important;
}
.ml51-um input[type=submit],
.ml51-um .um-button{
  width:100%!important;
  min-height:48px!important;
  padding:0 22px!important;
  background:#5FAECE!important;
  border:1px solid #5FAECE!important;
  border-radius:6px!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:14px!important;
  font-weight:800!important;
}
.ml51-um input[type=submit]:hover,
.ml51-um input[type=submit]:focus,
.ml51-um .um-button:hover,
.ml51-um .um-button:focus{
  background:#388A95!important;
  border-color:#388A95!important;
  color:#fff!important;
}
.ml51-um .um-field-checkbox-option,
.ml51-um .um-link-alt{color:#526873!important}
.ml51-um .um-link-alt:hover{color:#388A95!important}
.ml51-help-inner{max-width:1360px}

@media(max-width:1024px){
  .ml51-shell,.ml51-login-shell,.ml51-help-inner{width:calc(100% - 56px)}
  .ml51-hero-inner{grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:26px;padding:36px 0}
  .ml51-login-shell{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:26px}
  .ml51-register{margin-top:48px}
}
@media(max-width:767px){
  .ml51-shell,.ml51-login-shell,.ml51-login-shell--logged,.ml51-help-inner{width:calc(100% - 40px)}
  .ml51-hero-inner{grid-template-columns:1fr;gap:18px;padding:30px 0 26px}
  .ml51-hero-copy{text-align:center}
  .ml51-hero-copy h1{font-size:34px;max-width:none}
  .ml51-hero-media img{max-width:390px}
  .ml51-login{padding:28px 0 34px}
  .ml51-login-shell{grid-template-columns:1fr;gap:18px}
  .ml51-login-form,.ml51-register{padding:22px 20px}
  .ml51-register{margin-top:0;text-align:center}
  .ml51-register .ml51-btn{width:100%}
  .ml51-help-inner{display:grid;grid-template-columns:1fr;text-align:center}
}
@media(max-width:390px){
  .ml51-shell,.ml51-login-shell,.ml51-login-shell--logged,.ml51-help-inner{width:calc(100% - 32px)}
  .ml51-hero-inner{padding:26px 0 22px}
  .ml51-hero-copy h1{font-size:30px}
  .ml51-login-form,.ml51-register{padding:19px 16px}
}


/* v0.7.121 — PAGE-SPECIFIC FINAL WIDTH CONTRACT */
@media (min-width:1440px){.ml51-shell{box-sizing:border-box!important;width:auto!important;max-width:none!important;margin-left:clamp(140px,10vw,190px)!important;margin-right:clamp(140px,10vw,190px)!important;padding-left:0!important;padding-right:0!important}}
@media (min-width:1025px) and (max-width:1439px){.ml51-shell{box-sizing:border-box!important;width:auto!important;max-width:none!important;margin-left:36px!important;margin-right:36px!important;padding-left:0!important;padding-right:0!important}}
@media (min-width:768px) and (max-width:1024px){.ml51-shell{box-sizing:border-box!important;width:auto!important;max-width:none!important;margin-left:24px!important;margin-right:24px!important;padding-left:0!important;padding-right:0!important}}
@media (max-width:767px){.ml51-shell{box-sizing:border-box!important;width:auto!important;max-width:none!important;margin-left:14px!important;margin-right:14px!important;padding-left:0!important;padding-right:0!important}}
@media (max-width:430px){.ml51-shell{margin-left:11px!important;margin-right:11px!important}}

.ml51-login-shell{width:100%!important;max-width:1120px!important;margin-left:auto!important;margin-right:auto!important}
.ml51-login-shell--logged{max-width:900px!important}
@media(max-width:767px){.ml51-login-shell,.ml51-login-shell--logged{width:auto!important;max-width:none!important;margin-left:14px!important;margin-right:14px!important}}
@media(max-width:430px){.ml51-login-shell,.ml51-login-shell--logged{margin-left:11px!important;margin-right:11px!important}}
