/* ==========================================================================
   New Service Solutions — responsive refinements
   Breakpoints match Elementor: tablet <= 1024px, mobile <= 767px.
   Core layout breakpoints live next to their components in style.css;
   this file holds small-screen polish for 480 / 375 / 320px.
   ========================================================================== */
@media (max-width:1024px){
  .nss-feature.is-reverse>.nss-feature-copy,.nss-feature.is-reverse>.nss-feature-copy.e-con{order:-1}
  .nss-hero-visual{max-width:680px}
  .nss-head-row{align-items:flex-start}
}
@media (max-width:767px){
  body{font-size:1rem}
  .nss-card,.nss-card.is-service{padding:26px 22px}
  .nss-work-body{padding:22px 20px 24px}
  .nss-actions{gap:12px}
  .nss-hero-copy .nss-actions>*,.nss-page-hero .nss-actions>*{flex:1 1 220px}
  .nss-hero-copy .nss-actions a.nss-btn,.nss-page-hero .nss-actions a.nss-btn,.nss-hero-copy .nss-actions .elementor-button,.nss-page-hero .nss-actions .elementor-button{width:100%}
  .nss-faq-wrap .nss-head{gap:14px}
  .nss-acc-btn{padding:18px 18px}
  .nss-acc-panel .nss-acc-inner{padding:0 18px 20px}
  .nss-prose{font-size:1.04rem}
  .nss-prose blockquote{padding:22px 22px;font-size:1.1rem}
  .nss-author{flex-direction:column;align-items:flex-start}
  .nss-footer-bottom{flex-direction:column;align-items:flex-start}
}
@media (max-width:480px){
  .nss-header-inner{gap:12px}
  .nss-logo img,.nss-logo svg{height:38px}
  .nss-header-actions{gap:10px}
  .nss-header-phone span.nss-ph-ic{width:42px;height:42px}
  .nss-step{padding:24px 20px}
  .nss-cta-line{font-size:.95rem;padding:14px}
  .nss-filter button{padding:9px 14px;font-size:.9rem}
  .nss-tag,.nss-tag .elementor-heading-title{font-size:.7rem}
}
@media (max-width:375px){
  :root{--gutter:16px}
  .nss-btn,.nss-btnw .elementor-button{padding-inline:20px}
  .nss-hero-chip{display:none}
  .nss-cta-line{word-break:break-word}
}
@media (max-width:340px){
  .nss-logo img{height:34px}
  .nss-header-phone{display:none}
  .nss-display,.nss-display .elementor-heading-title{font-size:2.15rem}
  .nss-h1,.nss-h1 .elementor-heading-title{font-size:1.95rem}
  .nss-h2,.nss-h2 .elementor-heading-title{font-size:1.65rem}
}
@media print{
  .nss-header,.nss-drawer,.nss-footer,.nss-cta,.skip-link{display:none!important}
  .nss-section,.nss-page-hero{padding:24px 0!important;background:#fff!important;color:#000!important}
  .is-dark :is(h1,h2,h3,h4){color:#000!important}
  .js .nss-reveal{opacity:1!important;transform:none!important}
}
