/* Mobile polish — certifications, footer and compact responsive corrections */

/* Service hero secondary CTA */
.service-hero .button.secondary{
  color:#fff;
  border-color:rgba(255,255,255,.55);
  background:transparent;
  opacity:1;
}
.service-hero .button.secondary:hover{
  color:#071521;
  background:#fff;
  border-color:#fff;
}

/* Certifications */
.certifications{
  background:#fbfaf6;
}
.certifications .split-heading{
  align-items:start;
}
.certifications .split-heading>div{
  max-width:640px;
}
.certifications .split-heading>p{
  max-width:520px;
}
.certifications .badge-grid{
  gap:14px;
  margin-top:42px;
}
.certifications .badge-card{
  min-height:146px;
  height:auto;
  padding:20px;
  background:#fff;
  border:1px solid var(--tech-line);
  border-radius:14px;
}
.certifications .badge-card img{
  width:auto;
  max-width:100%;
  max-height:96px;
}

/* Footer */
footer{
  background:#07131b;
}
.footer-grid{
  grid-template-columns:minmax(280px,1.25fr) minmax(180px,.7fr) minmax(190px,.7fr);
  gap:56px;
  padding:48px 0 38px;
  align-items:start;
}
.footer-grid>div{
  gap:8px;
}
.footer-grid>div:first-child{
  max-width:430px;
}
.footer-brand{
  margin-bottom:8px;
}
.footer-brand img{
  width:106px;
}
.footer-grid p{
  margin:0;
  max-width:390px;
  font-size:.78rem;
  line-height:1.7;
  color:#8b98a1;
}
.footer-grid>div>strong{
  margin:0 0 8px;
  color:#fff;
  font-size:.84rem;
  letter-spacing:-.01em;
}
.footer-grid a,
.footer-grid span{
  font-size:.76rem;
  line-height:1.45;
}
.footer-bottom{
  padding:16px 0 18px;
}

@media(max-width:1000px){
  /* modern.css is loaded after style.css, so explicitly restore the mobile stack */
  .certifications .split-heading{
    grid-template-columns:1fr;
    gap:20px;
  }
  .certifications .split-heading>p{
    max-width:680px;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:34px 28px;
  }
  .footer-grid>div:first-child{
    grid-column:1/-1;
    max-width:620px;
  }
}

@media(max-width:650px){
  .certifications{
    padding-top:58px;
    padding-bottom:58px;
  }
  .certifications .split-heading{
    display:block;
  }
  .certifications .split-heading .eyebrow{
    margin-bottom:12px;
  }
  .certifications .split-heading h2{
    max-width:310px;
    margin-bottom:18px;
    font-size:clamp(1.8rem,8.5vw,2.35rem);
    line-height:1.03;
  }
  .certifications .split-heading>p{
    font-size:.84rem;
    line-height:1.7;
  }
  .certifications .badge-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:28px;
  }
  .certifications .badge-card{
    min-height:116px;
    padding:14px;
    border-radius:12px;
  }
  .certifications .badge-card img{
    max-height:78px;
  }

  .footer-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:30px 18px;
    padding:34px 0 26px;
  }
  .footer-grid>div:first-child{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:84px 1fr;
    gap:16px;
    align-items:center;
    max-width:none;
    padding-bottom:22px;
    border-bottom:1px solid rgba(255,255,255,.07);
  }
  .footer-brand{
    margin:0;
  }
  .footer-brand img{
    width:78px;
  }
  .footer-grid>div:first-child p{
    font-size:.72rem;
    line-height:1.55;
  }
  .footer-grid>div>strong{
    margin-bottom:7px;
    font-size:.78rem;
  }
  .footer-grid a,
  .footer-grid span{
    font-size:.71rem;
    line-height:1.4;
  }
  .footer-bottom{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:14px 0 16px;
    font-size:.68rem;
  }
}

@media(max-width:390px){
  .certifications .badge-card{
    min-height:108px;
    padding:12px;
  }
  .certifications .badge-card img{
    max-height:72px;
  }
  .footer-grid{
    gap:26px 14px;
  }
  .footer-grid>div:first-child{
    grid-template-columns:70px 1fr;
    gap:14px;
  }
  .footer-brand img{
    width:68px;
  }
}
