/* Mobile layout overrides kept separate for easy device-specific tuning. */
@media (max-width: 900px){
  .wrap{padding-left:24px; padding-right:24px;}
  .section-pad{padding:76px 0;}
  #home{padding-top:126px; padding-bottom:72px;}
  .hero-visual{min-height:480px; margin:0 -12px;}
  .hero-slides{height:440px;}
  .hero-slide{padding:24px 22px;}
  .slide-art{height:220px;}
  .hero-ctas .btn{flex:1 1 220px; justify-content:center;}
  .steps{margin-top:48px;}
  .svc-layout{margin-top:40px;}
}

@media (max-width: 640px){
  .wrap{padding-left:20px; padding-right:20px;}
  .nav-inner .brand-logo{width:48px; height:38px;}
  .nav-inner .brand-text{font-size:16px;}
  .nav-inner .brand-text span{font-size:8.5px; letter-spacing:.12em;}
  .brand{gap:5px;}
  .section-pad{padding:64px 0;}
  .h2{font-size:30px;}
  .lede{font-size:16px;}
  .hero h1{font-size:clamp(36px, 11vw, 52px);}
  .hero .lede{font-size:16px;}
  .hero-visual{min-height:500px; margin-left:0; margin-right:0;}
  .hero-slides{height:460px;}
  .hero-slide{padding:22px 18px;}
  .slide-art{height:170px; margin-top:16px;}
  .hero-slide h3{font-size:21px;}
  .trust-inner{padding:40px 0;}
  .sol-card{min-height:0; padding:30px 24px;}
  .more-card{padding:34px 26px;}
  #cta{padding:72px 0;}
  #cta h2{font-size:30px;}
  .form-row{gap:16px; margin-bottom:16px;}
  footer{padding-top:60px;}
}