@media (max-width:920px){
  .wrap{padding:0 20px}
  .menu-toggle{display:inline-flex;flex-direction:column}
  .nav-row{gap:12px;min-width:0;position:relative}
  .logo{flex-shrink:0;max-width:42vw}
  .site-logo{max-width:180px;width:clamp(120px,34vw,180px)}
  .nav-links{background:var(--color-paper);border:1px solid var(--color-line);display:none;left:20px;padding:18px;position:absolute;right:20px;top:76px;z-index:30}
  .nav-links.is-open{display:block}
  .nav-links > .menu,.nav-links .menu{align-items:flex-start;display:grid;gap:14px;width:100%}
  .nav-links li{display:block}
  .nav-links .menu-item-has-children > a{padding-right:0}
  .nav-links .sub-menu{background:transparent;border:none;border-left:2px solid var(--color-brass-light);box-shadow:none;display:grid;gap:4px;left:auto;opacity:0;max-height:0;overflow:hidden;padding:0 0 0 12px;pointer-events:none;position:static;transform:none;transition:all .2s ease}
  .nav-links .menu-item-has-children.is-open > .sub-menu{max-height:400px;opacity:1;padding-top:8px;pointer-events:auto}
  .nav-links .sub-menu a{padding:8px 0}
  .nav-links a{color:var(--color-ink-soft);text-decoration:none;white-space:normal}
  .nav-cta{margin-left:auto}
  .hero-grid,.single-grid,.archive-layout,.about-grid,.contact-grid,.page-shell,.single-hero-row{grid-template-columns:1fr}
  .archive-layout{display:block}
  .about-grid .content-box{grid-row:auto}
  .prop-grid,.service-grid,.feature-list,.process-flow,.story-grid,.contact-hero-meta,.single-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero{min-height:auto;padding:138px 0 54px}
  .hero-actions{align-items:stretch;flex-direction:column}
  .hero-actions .btn{width:100%}
  .section-head,.cta-inner,.footer-bottom{align-items:flex-start;flex-direction:column}
}

@media (max-width:640px){
  .wrap{padding:0 20px}
  .hero{min-height:auto;padding:138px 0 54px}
  .hero h1{font-size:clamp(36px,11vw,52px);white-space:normal}
  .hero p{font-size:16px}
  .hero-inline-phrase,.hero-inline-sub{white-space:normal}
  .hero-actions{display:grid;grid-template-columns:1fr;justify-content:center}
  .nav-cta{display:none}
  .nav-links{left:12px;right:12px;top:70px}
  .nav-links .menu-item-has-children > a{align-items:center;display:flex;justify-content:space-between}
  .site-logo{height:42px;max-width:170px}
  .prop-grid,.service-grid,.feature-list,.process-flow,.story-grid,.footer-grid,.trust-grid,.contact-hero-meta,.single-hero-stats{grid-template-columns:1fr}
  .section-head,.cta-inner,.footer-bottom{align-items:flex-start;flex-direction:column}
  .site-header{padding:16px 0}
  .single-grid,.archive-layout,.about-grid,.contact-grid{grid-template-columns:1fr}
  .contact-card h2{font-size:28px}
  .btn,.btn-primary,.btn-dark,.btn-outline{width:100%}
  .lead-form input,.lead-form select,.lead-form textarea{font-size:16px}
  .story-grid .content-box,.process-step{min-height:auto}
  .site-header .nav-links{transition:opacity .2s ease, transform .2s ease, visibility .2s ease, max-height .25s ease;opacity:0;visibility:hidden;transform:translateY(-6px);max-height:0;overflow:hidden}
  .site-header .nav-links.is-open{opacity:1;visibility:visible;transform:translateY(0);max-height:500px;overflow:visible}
  .site-footer{padding:58px 0 26px}
  .footer-grid{gap:20px}
  .footer-col h4{margin-bottom:10px}
  .footer-col li{margin:6px 0}
}

@media (max-width:430px){
  .wrap{padding:0 16px}
  .site-header{padding:12px 0}
  .site-logo{height:36px;max-width:140px}
  .nav-links{left:10px;right:10px;top:66px;padding:14px}
  .nav-links > .menu,.nav-links .menu{gap:12px}
  .nav-links a{font-size:12px}
  .hero{padding:126px 0 42px}
  .hero h1{font-size:clamp(30px,10.4vw,40px);white-space:normal}
  .hero p{font-size:15px}
  .hero-inline-phrase,.hero-inline-sub{white-space:normal}
  .section-head h2,.archive-title{font-size:clamp(28px,8vw,36px)}
  .process-step,.content-box,.service-card,.value-card,.lead-form{padding:18px 16px}
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .trust-item{padding:18px 12px}
  .btn,.btn-primary,.btn-dark,.btn-outline{padding:12px 16px;font-size:13px}
  .cta-inner h2{font-size:28px}
  .footer-col h4{font-size:17px}
  .site-footer{padding-top:52px}
  .footer-bottom{gap:10px}
}

@media (max-width:360px){
  .hero{padding:116px 0 36px}
  .section-head h2,.archive-title{font-size:clamp(26px,9vw,32px)}
  .nav-links{padding:12px}
  .nav-links a{font-size:11.5px}
  .hero-actions .btn{padding:12px 14px}
  .btn,.btn-primary,.btn-dark,.btn-outline{padding:11px 14px;font-size:12.5px}
  .process-step,.content-box,.service-card,.value-card,.lead-form{padding:16px 14px}
  .footer-col h4{font-size:16px}
  .footer-col li{font-size:14px}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *, *::before, *::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
}
