/* Version 10: distinct homepage story and image-free interior heroes */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.home-overview {
  padding: clamp(80px, 9vw, 132px) var(--gutter);
  background: #f7fafc;
  color: #071321;
}

.home-overview-intro {
  display: grid;
  grid-template-columns: minmax(440px, 1.08fr) minmax(360px, .92fr);
  column-gap: clamp(46px, 7vw, 120px);
  align-items: start;
  max-width: 1280px;
  margin: 0 auto 56px;
}

.home-overview-intro .section-kicker {
  grid-column: 1 / -1;
  margin: 0 0 28px;
}

.home-overview-intro h2 {
  font-family: Manrope, Inter, sans-serif;
  font-size: clamp(38px, 4.6vw, 68px);
  line-height: 1.03;
  letter-spacing: -.05em;
  margin: 0 0 24px;
  max-width: 880px;
}

.home-overview-intro > p {
  grid-column: 2;
  font-size: 18px;
  line-height: 1.75;
  color: #496174;
  max-width: 790px;
  margin: 0 0 24px;
}

.home-overview-intro .text-link {
  grid-column: 2;
  font-weight: 800;
  color: #087ac6;
}

.home-pathways {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  max-width: 1280px;
  margin: 0 auto;
  border: 1px solid #cbdce8;
  background: #fff;
}

.home-pathways article {
  padding: 38px 34px;
  min-height: 270px;
  border-right: 1px solid #cbdce8;
}

.home-pathways article:last-child {
  border-right: 0;
}

.home-pathways article span,
.home-choice span {
  display: block;
  color: #087fcf;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .14em;
  margin-bottom: 28px;
}

.home-pathways h3 {
  font-family: Manrope, Inter, sans-serif;
  font-size: 28px;
  line-height: 1.15;
  margin: 0 0 18px;
}

.home-pathways p {
  color: #52697b;
  line-height: 1.7;
  margin: 0;
}

.home-choice {
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-width: 1280px;
  margin: 18px auto 0;
  gap: 18px;
}

.home-choice > div {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: 8px 28px;
  padding: 26px 30px;
  background: #071b31;
  color: #fff;
}

.home-choice span {
  grid-column: 1 / -1;
  margin: 0;
  color: #72c5ff;
}

.home-choice strong {
  font-size: 18px;
}

.home-choice a {
  color: #fff;
  font-weight: 800;
}

@media (max-width: 860px) {
  .home-overview-intro {
    grid-template-columns: 1fr;
  }

  .home-overview-intro .section-kicker {
    grid-row: auto;
    margin: 0 0 18px;
  }

  .home-overview-intro > p,
  .home-overview-intro .text-link {
    grid-column: auto;
  }

  .home-pathways,
  .home-choice {
    grid-template-columns: 1fr;
  }

  .home-pathways article {
    min-height: auto;
    border-right: 0;
    border-bottom: 1px solid #cbdce8;
  }

  .home-pathways article:last-child {
    border-bottom: 0;
  }

  .home-choice > div {
    grid-template-columns: 1fr;
  }

  .home-choice span {
    grid-column: auto;
  }
}

@media (max-width: 760px) {
  .inner-page .page-hero {
    min-height: 520px;
    padding: 105px 22px 78px;
  }
}

/* The four-step process is the hero's full-width closing edge. */
body.home-page .approved-hero .hero-proof {
  left: 0;
  right: 0;
  border-right: 0;
  border-left: 0;
  background: linear-gradient(90deg, rgba(4, 12, 24, 0.97), rgba(7, 20, 38, 0.95));
  box-shadow: 0 -18px 42px rgba(2, 9, 18, 0.24);
}

body.home-page .approved-hero .hero-proof > div {
  padding-inline: 2vw;
}

body.home-page .approved-hero .hero-proof > div:first-child {
  padding-left: 7vw;
}

body.home-page .approved-hero .hero-proof > div:last-child {
  padding-right: 7vw;
}

body.home-page .hero-services {
  color: #dce8f5;
  background: linear-gradient(90deg, #08172a, #0b2039 50%, #08172a);
  border-top: 1px solid rgba(117, 189, 255, 0.24);
  border-bottom: 1px solid rgba(117, 189, 255, 0.2);
  grid-template-columns: repeat(5, minmax(0, 1fr));
  display: grid;
  box-shadow: 0 18px 45px rgba(2, 9, 18, 0.2);
}

body.home-page .hero-services a {
  min-width: 0;
  min-height: 70px;
  padding: 18px 14px;
  border-right: 1px solid rgba(255, 255, 255, 0.12);
  place-items: center;
  display: grid;
  color: #dce8f5;
  letter-spacing: 0.08em;
  text-align: center;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 800;
  transition: color 0.18s, background 0.18s;
}

body.home-page .hero-services a:last-child { border-right: 0; }

body.home-page .hero-services a:hover,
body.home-page .hero-services a:focus-visible {
  color: #fff;
  background: rgba(40, 166, 255, 0.14);
}

@media (max-width: 760px) {
  body.home-page .approved-hero .hero-proof {
    left: 0;
    right: 0;
  }

  body.home-page .approved-hero .hero-proof > div,
  body.home-page .approved-hero .hero-proof > div:first-child,
  body.home-page .approved-hero .hero-proof > div:last-child {
    padding: 16px 20px;
  }

  body.home-page .hero-services { grid-template-columns: 1fr 1fr; }

  body.home-page .hero-services a {
    min-height: 62px;
    padding: 15px 12px;
    border-right: 1px solid rgba(255, 255, 255, 0.12);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 10px;
  }

  body.home-page .hero-services a:nth-child(2n) { border-right: 0; }

  body.home-page .hero-services a:last-child {
    grid-column: 1 / -1;
    border-bottom: 0;
  }
}


/* Mobile stabilization v13 */
@media (max-width: 760px) {
  html,body{width:100%;max-width:100%;overflow-x:clip}
  body *,body *::before,body *::after{box-sizing:border-box}
  main,section,article,div,form,nav,header,footer{min-width:0}
  img,svg,video,canvas{max-width:100%;height:auto}
  h1,h2,h3,p,a,span,strong{overflow-wrap:break-word}
  body.home-page .approved-hero{display:block;min-height:0;overflow:hidden}
  body.home-page .approved-hero .hero-content{width:100%;margin:0;padding:126px 20px 38px}
  body.home-page .approved-hero h1{max-width:100%;font-size:clamp(43px,12.4vw,58px);line-height:.98}
  body.home-page .hero-lead{max-width:100%;font-size:16px;line-height:1.62}
  body.home-page .hero-actions{width:100%}
  body.home-page .hero-actions .button{width:100%;max-width:100%;min-height:54px;padding:14px 16px;text-align:center}
  body.home-page .approved-hero .hero-proof{position:relative;inset:auto;width:100%;grid-template-columns:1fr 1fr;border-right:0;border-left:0}
  body.home-page .approved-hero .hero-proof>div,body.home-page .approved-hero .hero-proof>div:first-child,body.home-page .approved-hero .hero-proof>div:last-child{min-width:0;padding:18px 20px}
  body.home-page .approved-hero .hero-proof>div:nth-child(2n){border-right:0}
  body.home-page .hero-services{position:static;width:100%;grid-template-columns:1fr 1fr}
  .home-overview,.markets-section,.wifi-section,.standards-section,.credential-band,.connected-capabilities,.cta,.policy-band,.detail,.process,.contact-layout,.proof,footer{width:100%;max-width:100%;padding-left:20px;padding-right:20px}
  .home-overview-intro,.home-pathways,.home-choice,.markets,.wifi-story-inner,.standards-list,.credential-band,.connected-capabilities,.policy-band,.detail,.contact-layout{grid-template-columns:minmax(0,1fr)}
  .home-overview-intro{display:grid;width:100%;row-gap:20px}
  .home-overview-intro h2,.connected-copy h2,.cta h2,.credential-band h2,.section-intro h2{max-width:100%;font-size:clamp(34px,10vw,48px);line-height:1.04}
  .home-overview-intro>p,.home-overview-intro .text-link{grid-column:auto}
  .home-pathways article,.home-choice>div,.connected-card,.home-page .intake-grid>a{width:100%;max-width:100%}
  .connected-capabilities{display:grid;gap:30px;align-items:stretch}
  .connected-copy,.connected-card{min-width:0}
  .connected-card{padding:26px 22px}
  .connected-card h3{font-size:28px;line-height:1.15;word-break:normal}
  .connected-card p{font-size:15px;line-height:1.7}
  .cta{padding-top:66px;padding-bottom:66px}
  .cta>p{max-width:100%;font-size:16px;line-height:1.7}
  .home-page .intake-grid{width:100%;max-width:100%;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:30px}
  .home-page .intake-grid>a{min-height:0;padding:24px 22px}
  .home-page .intake-grid span{margin:18px 0;font-size:21px}
  .credential-list,.steps,.process,.service-grid,.form-grid,.choice-row,.checks{grid-template-columns:minmax(0,1fr)}
  .inner-page .page-hero{min-height:0;padding:112px 20px 72px}
  .inner-page .page-hero h1{font-size:clamp(40px,11.5vw,58px);line-height:1}
  .inner-page form{width:100%;padding:24px 18px}
  footer{grid-template-columns:minmax(0,1fr)}
}


/* Mobile connected-capabilities specificity fix v14 */
@media (max-width:760px){
  body.home-page .connected-capabilities{grid-template-columns:minmax(0,1fr);gap:30px;align-items:stretch}
  body.home-page .connected-copy,body.home-page .connected-card{width:100%;max-width:100%;min-width:0}
  body.home-page .connected-card{padding:26px 22px}
  body.home-page .connected-card h3{font-size:28px;line-height:1.15;word-break:normal;overflow-wrap:normal}
  body.home-page .connected-card p{font-size:15px;line-height:1.7}
}


/* Sitewide full wordmark lockup */
footer .footer-wordmark{position:relative;display:inline-flex;align-items:baseline;width:max-content;height:52px;flex-shrink:0;font-family:Manrope,Inter,Arial,sans-serif;font-size:22px;font-weight:800;line-height:1;letter-spacing:-.04em}
footer .footer-wordmark span{color:#f4f7fb}
footer .footer-wordmark strong{color:#28a6ff}
footer .footer-wordmark small{position:absolute;left:1px;top:28px;width:190px;color:#98a8bb;font-size:8px;letter-spacing:.16em;text-transform:uppercase}
footer .footer-wordmark em{position:absolute;left:1px;top:40px;width:230px;color:#58b4ff;font-size:8px;font-style:normal;letter-spacing:.04em;white-space:nowrap}
@media(max-width:760px){footer .footer-wordmark{font-size:19px;height:48px}footer .footer-wordmark small{top:24px;font-size:7px}footer .footer-wordmark em{top:34px;font-size:7px}}
