/* Classmate R2.8.3.9.63 — production copy, legibility and responsive spacing polish.
   Additive overrides only. Desktop/mobile approved compositions and app/dashboard styles remain intact. */
#authGate #cmLandingShell .cm55-desktop,
#authGate #cmLandingShell .cm60-mobile{
  text-rendering: optimizeLegibility;
  font-kerning: normal;
}
#authGate #cmLandingShell .cm55-desktop p{
  color:#3f5d7b;
  line-height:1.5;
}
#authGate #cmLandingShell .cm55-sample-disclaimer{
  display:block;
  font-size:10px;
  line-height:1.4;
  color:#526f8a;
  margin-top:8px;
}
#authGate #cmLandingShell .cm55-metric small{
  color:#526f8a;
  font-size:10.5px;
  line-height:1.35;
}
#authGate #cmLandingShell .cm55-metric>span:not(.cm55-icon){
  color:#1d456d;
  font-size:11.5px;
  line-height:1.3;
}
#authGate #cmLandingShell .cm55-feature-grid p,
#authGate #cmLandingShell .cm55-report-benefits small,
#authGate #cmLandingShell .cm55-process-steps p{
  color:#3f5d7b;
  line-height:1.38;
}
#authGate #cmLandingShell .cm55-report-card>small{
  color:#58738e;
  font-size:10px;
  line-height:1.35;
}
#authGate #cmLandingShell .cm55-report-card>div{
  font-size:10px;
}
#authGate #cmLandingShell .cm55-report-card b{
  font-size:10px;
}
#authGate #cmLandingShell .cm55-footer b{
  font-size:11px;
}
#authGate #cmLandingShell .cm55-footer a,
#authGate #cmLandingShell .cm55-footer-support span{
  font-size:11px;
  line-height:1.4;
  color:#526f89;
}
#authGate #cmLandingShell .cm55-footer-credit{
  font-size:10.5px;
  line-height:1.4;
  color:#526f89;
}
#authGate #cmLandingShell .cm55-learner-inner{
  padding-block:16px;
}
#authGate #cmLandingShell .cm55-parents-inner{
  padding-block:15px;
}
#authGate #cmLandingShell .cm55-process-inner{
  padding-block:18px;
}
#authGate #cmLandingShell .cm55-footer-inner{
  padding-block:19px;
}
#authGate #cmLandingShell .cm55-desktop :is(a,button):focus-visible,
#authGate #cmLandingShell .cm60-mobile :is(a,button):focus-visible,
#authGate #cmLandingShell .cm-public-nav a:focus-visible{
  outline:3px solid #1676e8;
  outline-offset:3px;
}
@media screen and (min-width:1025px) and (max-width:1230px){
  #authGate #cmLandingShell .cm55-learner-inner{padding-block:14px}
  #authGate #cmLandingShell .cm55-parents-inner{padding-block:13px}
  #authGate #cmLandingShell .cm55-process-inner{padding-block:16px}
  #authGate #cmLandingShell .cm55-footer-inner{padding-block:17px}
  #authGate #cmLandingShell .cm55-report-card>div{font-size:9.5px}
}
@media screen and (max-width:1024px){
  #authGate #cmLandingShell .cm60-mobile p{
    color:#435f7a;
    line-height:1.52;
  }
  #authGate #cmLandingShell .cm60-chart-eyebrow{
    font-size:10px;
    color:#55718b;
  }
  #authGate #cmLandingShell .cm60-chart-average span{
    font-size:11px;
    color:#526e88;
  }
  #authGate #cmLandingShell .cm60-profile small{
    font-size:11px;
    color:#5d778f;
    line-height:1.35;
  }
  #authGate #cmLandingShell .cm60-profile .cm60-sample{
    font-size:10.5px;
    color:#4c6b85;
  }
  #authGate #cmLandingShell .cm60-example{
    color:#3f5f7e;
    font-size:10.5px;
  }
  #authGate #cmLandingShell .cm60-report-preview>div:first-child small{
    color:#58748d;
    font-size:10.5px;
    line-height:1.35;
  }
  #authGate #cmLandingShell .cm60-report-end{
    color:#4e6d87;
    font-size:11px;
    line-height:1.4;
  }
  #authGate #cmLandingShell .cm60-steps small{
    color:#536f88;
    font-size:11.5px;
    line-height:1.45;
  }
  #authGate #cmLandingShell .cm60-footer-brand small{
    color:#4f708b;
    font-size:11.5px;
  }
  #authGate #cmLandingShell .cm60-footer p{
    color:#4b6882;
    font-size:12.5px;
    line-height:1.5;
  }
  #authGate #cmLandingShell .cm60-footer nav a{
    font-size:12.5px;
  }
  #authGate #cmLandingShell .cm60-credit{
    color:#4f6c85;
    font-size:11px;
    line-height:1.4;
  }
  #authGate #cmLandingShell .cm60-overview{padding-top:28px;padding-bottom:34px}
  #authGate #cmLandingShell .cm60-learner{padding-top:32px;padding-bottom:36px}
  #authGate #cmLandingShell .cm60-report{padding-bottom:32px}
  #authGate #cmLandingShell .cm60-journey{padding-top:29px;padding-bottom:32px}
  #authGate #cmLandingShell .cm60-footer{padding-top:25px;padding-bottom:22px}
}
@media screen and (max-width:360px){
  /* Keep the learner heading clean at 320px; the decorative arrow otherwise drops to its own row. */
  #authGate #cmLandingShell .cm60-section-figure{display:none!important}
  #authGate #cmLandingShell .cm60-section-head{display:block}
}

@media screen and (min-width:1025px) and (max-width:1100px){
  /* Give the compact desktop breakpoint a little more room for school-facing copy. */
  #authGate #cmLandingShell .cm55-inner{padding-inline:28px}
  #authGate #cmLandingShell .cm55-learner-inner,
  #authGate #cmLandingShell .cm55-cap-inner,
  #authGate #cmLandingShell .cm55-process-inner{
    grid-template-columns:minmax(205px,.30fr) minmax(0,1fr);
    gap:18px;
  }
  #authGate #cmLandingShell .cm55-parents-inner{
    grid-template-columns:17% minmax(175px,1fr) minmax(175px,1fr) minmax(145px,.83fr);
    gap:10px;
  }
}
@media screen and (min-width:1025px) and (max-width:1100px){
  /* Fade the campus photograph before the report copy begins on compact desktop widths. */
  #authGate #cmLandingShell .cm55-parent-photo{
    width:22%;
    mask-image:linear-gradient(to right,#000 42%,transparent 100%);
  }
}
@media screen and (max-width:1024px){
  #authGate #cmLandingShell .cm60-rec-icon{
    flex:0 0 20px;
    width:20px;
    min-width:20px;
    text-align:center;
  }
}
@media screen and (min-width:1025px){
  /* Keep the process-step chevrons inside their grid cells instead of extending past them. */
  #authGate #cmLandingShell .cm55-process-steps li:not(:last-child)::after{right:0}
}
