/* === V58: targeted mobile alignment repair ===
   Reverts the problematic icon overlay behaviour and only tightens:
   1) mobile statistics / experience strip alignment
   2) mobile footer contact icon alignment
*/
@media (max-width: 760px){
  /* Mobile stats / experience strip - keep black, clean 4-column layout */
  .stats,
  .stats-white{
    background:#050505!important;
    overflow:hidden!important;
  }

  .stats .wrap,
  .stats-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    background:#050505!important;
    border-top:1px solid rgba(255,255,255,.22)!important;
    border-bottom:1px solid rgba(255,255,255,.22)!important;
  }

  .stats .stat,
  .stats-grid article{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:center!important;
    gap:6px!important;
    min-width:0!important;
    min-height:160px!important;
    padding:22px 6px 18px!important;
    margin:0!important;
    color:#fff!important;
    background:#050505!important;
    border:0!important;
    border-right:1px solid rgba(255,255,255,.22)!important;
    overflow:hidden!important;
  }

  .stats .stat:last-child,
  .stats-grid article:last-child{
    border-right:0!important;
  }

  .stats .stat img,
  .stats-grid article img{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    display:block!important;
    width:40px!important;
    height:40px!important;
    max-width:40px!important;
    max-height:40px!important;
    min-width:40px!important;
    object-fit:contain!important;
    margin:0 auto 4px!important;
    opacity:1!important;
    z-index:auto!important;
    flex:0 0 auto!important;
  }

  .stats .stat b,
  .stats-grid article b{
    display:block!important;
    position:static!important;
    transform:none!important;
    font-size:29px!important;
    line-height:.95!important;
    letter-spacing:-1px!important;
    color:#ff4a13!important;
    margin:0!important;
    white-space:nowrap!important;
    z-index:auto!important;
  }

  .stats .stat h3,
  .stats-grid article h3{
    display:block!important;
    font-size:12px!important;
    line-height:1.05!important;
    color:#fff!important;
    margin:0!important;
    text-align:center!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  .stats .stat p,
  .stats .stat span,
  .stats-grid article p,
  .stats-grid article span{
    display:block!important;
    font-size:11.5px!important;
    line-height:1.25!important;
    color:#fff!important;
    margin:0!important;
    text-align:center!important;
    max-width:92px!important;
    overflow:visible!important;
    word-break:normal!important;
  }

  /* Footer contact information - straight, aligned icon/text rows */
  .footer-contact-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    align-items:start!important;
    justify-items:stretch!important;
    width:100%!important;
    margin:12px 0 0!important;
  }

  .footer-contact-list .contact-icon-line,
  .contact-icon-line{
    display:grid!important;
    grid-template-columns:22px minmax(0,1fr)!important;
    align-items:start!important;
    gap:12px!important;
    width:100%!important;
    min-height:24px!important;
    color:#fff!important;
    text-align:left!important;
  }

  .footer-contact-list .contact-icon-line img,
  .contact-icon-line img{
    display:block!important;
    position:static!important;
    transform:none!important;
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    max-width:18px!important;
    object-fit:contain!important;
    margin:3px auto 0!important;
    opacity:1!important;
    filter:none!important;
  }

  .footer-contact-list .contact-icon-line a,
  .footer-contact-list .contact-icon-line span,
  .contact-icon-line a,
  .contact-icon-line span{
    display:block!important;
    font-size:15px!important;
    line-height:1.35!important;
    color:#fff!important;
    text-align:left!important;
    padding:0!important;
    margin:0!important;
    word-break:normal!important;
  }
}

@media (max-width: 430px){
  .stats .stat,
  .stats-grid article{
    min-height:154px!important;
    padding:20px 4px 16px!important;
    gap:5px!important;
  }
  .stats .stat img,
  .stats-grid article img{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    max-width:36px!important;
  }
  .stats .stat b,
  .stats-grid article b{
    font-size:25px!important;
  }
  .stats .stat h3,
  .stats-grid article h3{
    font-size:10.5px!important;
  }
  .stats .stat p,
  .stats .stat span,
  .stats-grid article p,
  .stats-grid article span{
    font-size:10.5px!important;
    max-width:78px!important;
  }
}
