/* === V54: mobile structure, hero image visibility, accreditation/footer polish === */

/* Mobile hero: keep the image visible instead of turning into a dark block */
@media(max-width:760px){
  .hero,
  .homepage-v7 .hero,
  .home-hero,
  .generic-hero{
    min-height:620px!important;
    align-items:flex-start!important;
    background-size:cover!important;
    background-position:68% center!important;
    overflow:hidden!important;
  }
  .hero:before,
  .homepage-v7 .hero:before,
  .generic-hero:before{
    background:
      linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,.48) 34%,rgba(0,0,0,.86) 72%,#050505 100%),
      linear-gradient(90deg,#050505 0%,rgba(0,0,0,.78) 42%,rgba(0,0,0,.22) 100%)!important;
  }
  .hero .inner,.hero-inner,.generic-hero .container,.homepage-v7 .hero .inner{
    width:min(92vw,680px)!important;
    margin:0 auto!important;
    padding:112px 0 46px!important;
  }
  .hero h1,.generic-hero h1,.homepage-v7 .hero h1{
    font-size:44px!important;
    line-height:.96!important;
    max-width:92vw!important;
    margin-bottom:18px!important;
  }
  .hero p,.hero-text,.generic-hero p,.homepage-v7 .hero p{
    font-size:18px!important;
    line-height:1.45!important;
    max-width:92vw!important;
  }
  .hero .cta-row,.generic-hero .cta-row,.home-hero .actions{
    margin-top:28px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .hero .cta-row .btn,.generic-hero .cta-row .btn,.home-hero .actions .btn{
    width:100%!important;
    min-height:60px!important;
    font-size:18px!important;
  }
}

/* Service/half black cards on mobile: make cards easier to read and evenly spaced */
@media(max-width:760px){
  .services-band{padding:46px 0!important;}
  .services-layout{display:grid!important;grid-template-columns:1fr!important;gap:24px!important;width:min(92vw,680px)!important;margin:0 auto!important;}
  .services-intro{padding:0!important;}
  .services-intro h2{font-size:38px!important;line-height:.96!important;}
  .service-tile{min-height:0!important;height:auto!important;display:block!important;border-radius:8px!important;overflow:hidden!important;}
  .service-tile .tile-img{height:255px!important;background-size:cover!important;background-position:center!important;}
  .service-tile:before{display:none!important;}
  .service-tile .tile-copy{padding:62px 30px 34px!important;background:#050505!important;position:relative!important;}
  .service-tile span{top:-44px!important;left:30px!important;width:88px!important;height:88px!important;background:#121212!important;border:3px solid var(--orange)!important;z-index:5!important;}
  .service-tile span img{width:44px!important;height:44px!important;}
  .service-tile h3{font-size:34px!important;line-height:.92!important;margin:0 0 22px!important;max-width:92%!important;}
  .service-tile p{font-size:18px!important;line-height:1.45!important;max-height:none!important;overflow:visible!important;margin-bottom:34px!important;}
  .service-tile em{position:static!important;display:block!important;text-align:right!important;font-size:38px!important;margin-top:8px!important;}
}

/* Mobile trust/value icons under hero */
@media(max-width:760px){
  .strip .wrap,.values-grid,.stats-grid{grid-template-columns:1fr!important;}
  .feature,.values article,.stats-grid article{
    padding:32px 28px!important;
    border-right:0!important;
    border-bottom:1px solid #ddd!important;
    display:grid!important;
    grid-template-columns:88px 1fr!important;
    gap:20px!important;
    text-align:left!important;
    align-items:center!important;
  }
  .feature img,.values img,.stats-grid img{width:64px!important;height:64px!important;margin:0!important;}
  .feature h3,.values h3{font-size:26px!important;margin:0 0 8px!important;}
  .feature p,.values p{font-size:17px!important;line-height:1.42!important;}
}

/* Accreditations: central, cleaner and balanced on mobile */
.trust-grid .rated{text-align:left;}
.trust-grid h3{margin-bottom:14px!important;}
.trust-grid .logos img{height:auto!important;object-fit:contain!important;}
@media(max-width:760px){
  .trust-grid{
    width:min(92vw,680px)!important;
    padding:42px 0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:32px!important;
    text-align:center!important;
  }
  .trust-grid .rated,
  .trust-grid .cover,
  .trust-grid > div{text-align:center!important;}
  .trust-grid .rated span{display:block;font-size:20px!important;margin-bottom:4px!important;}
  .trust-grid .rated img{height:22px!important;margin:0 auto 8px!important;display:block!important;}
  .trust-grid .rated b{display:block!important;font-size:48px!important;line-height:1!important;margin:4px 0!important;}
  .trust-grid .rated small{font-size:17px!important;}
  .trust-grid h3{font-size:28px!important;text-align:center!important;margin:0 0 24px!important;}
  .trust-grid .logos{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:28px 30px!important;
    justify-items:center!important;
    align-items:center!important;
    width:100%!important;
  }
  .trust-grid .logos img{max-width:185px!important;max-height:82px!important;width:auto!important;}
  .trust-grid .cover span{font-size:18px!important;display:block!important;margin-bottom:6px!important;}
  .trust-grid .cover b{font-size:36px!important;line-height:.94!important;display:block!important;}
  .trust-grid .cover small{font-size:17px!important;display:block!important;margin-top:8px!important;}
}

/* Mobile CTA box: central and less disjointed */
@media(max-width:760px){
  .final-cta{padding:18px 0 34px!important;}
  .cta-box,.cta-band{
    width:min(92vw,680px)!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
    padding:36px 26px!important;
    text-align:center!important;
    border-radius:8px!important;
  }
  .cta-box h2,.cta-band h2{font-size:38px!important;line-height:.98!important;text-align:center!important;}
  .cta-box p,.cta-band p{font-size:19px!important;line-height:1.45!important;text-align:center!important;}
  .cta-box .btn,.cta-band .btn{width:100%!important;min-height:62px!important;font-size:18px!important;}
  .phone-icon{display:none!important;}
}

/* Footer mobile: central structure, balanced logo/NICEIC, corrected button */
@media(max-width:760px){
  .footer{padding:44px 0 18px!important;text-align:center!important;}
  .footer .cols,.footer-grid{
    width:min(92vw,680px)!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:36px!important;
    text-align:center!important;
  }
  .footer .logo,.footer-logo,.footer .brand-logo{margin:0 auto 18px!important;width:230px!important;max-width:70vw!important;height:auto!important;}
  .footer h4{font-size:24px!important;margin:0 0 14px!important;text-align:center!important;}
  .footer p,.footer a{font-size:19px!important;line-height:1.55!important;text-align:center!important;}
  .footer-contact-list{align-items:center!important;justify-items:center!important;width:100%!important;}
  .footer-contact-list .contact-icon-line{
    justify-content:center!important;
    text-align:center!important;
    font-size:20px!important;
    line-height:1.35!important;
    display:flex!important;
    align-items:center!important;
  }
  .footer-contact-list .contact-icon-line img{width:24px!important;height:24px!important;min-width:24px!important;}
  .footer-niceic-logo,.footer-cert img,.footer img[src*="niceic"],.footer img[src*="NICEIC"]{
    margin:0 auto 22px!important;
    width:280px!important;
    max-width:78vw!important;
    height:auto!important;
    background:transparent!important;
    object-fit:contain!important;
  }
  .footer .footer-cta-button,.footer a.footer-cta-button,.footer .btn{
    width:100%!important;
    min-height:62px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding:0 22px!important;
    margin:10px auto 0!important;
    font-size:18px!important;
    border-radius:6px!important;
  }
  .copy,.copyright{font-size:15px!important;line-height:1.5!important;margin-top:34px!important;padding-top:18px!important;text-align:center!important;}
}

/* Better mobile section spacing so content does not feel stacked randomly */
@media(max-width:760px){
  .section{padding:48px 0!important;}
  .premium-seo,.seo-section,.why-section{padding:54px 0!important;}
  .white{padding-top:42px!important;padding-bottom:42px!important;}
}
