@media (max-width: 1100px) {
  .site-nav { gap: 1rem; }
  .quote-card { grid-template-columns: repeat(4,1fr); }
  .quote-heading { grid-column: 1/-1; }
  .quote-submit { grid-column: 4; }
  .service-grid { grid-template-columns: repeat(2,1fr); }
  .service-card { min-height: 19rem; }
  .hero-copy { width: 50%; }
  .hero-visual { width: 70%; }
  .hero-quote { width: min(34%, 21rem); }
  .quick-benefits { gap: .45rem; }
  .quick-benefits strong { font-size: .72rem; overflow-wrap: anywhere; }
}
@media (max-width: 850px) {
  :root { --space-8: 5rem; }
  .nav-toggle { display: block; }
  .site-nav { position: absolute; top: calc(100% + 1px); left: 0; right: 0; display: none; align-items: stretch; padding: 1rem; border-bottom: 1px solid var(--color-line); background: var(--color-white); box-shadow: var(--shadow-sm); }
  .site-nav.is-open { display: flex; flex-direction: column; }
  .site-nav a { width: 100%; }
  .nav-toggle[aria-expanded="true"] > span:nth-of-type(2) { transform: translateY(6px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] > span:nth-of-type(3) { opacity: 0; }
  .nav-toggle[aria-expanded="true"] > span:nth-of-type(4) { transform: translateY(-6px) rotate(-45deg); }
  .hero { min-height: 0; padding-bottom: 8rem; background: var(--color-surface); }
  .hero-grid { min-height: 0; display: grid; grid-template-columns: 1fr; }
  .hero-copy { width: 100%; max-width: 43rem; padding-top: var(--space-6); }
  .hero-quote { position: relative; top: auto; right: auto; bottom: auto; width: 100%; max-width: 35rem; display: block; margin-top: 2rem; padding: .75rem; justify-self: end; border-right: 1px solid rgba(255,255,255,.58); border-radius: var(--radius-lg); background: rgba(250,247,240,.86); }
  .hero-visual { position: relative; top: auto; right: auto; bottom: auto; width: 100%; min-height: 27rem; margin-top: 2.5rem; border-radius: 1.25rem; }
  .hero-visual::after { background: linear-gradient(90deg, rgba(250,247,240,.7), transparent 45%); }
  .quote-card { grid-template-columns: repeat(2,1fr); }
  .quote-submit { grid-column: 2; }
  .section-heading { display: block; }
  .section-heading > p { margin-top: 1rem; }
  .benefits-grid, .faq-grid { grid-template-columns: 1fr; gap: 3rem; }
  .tips-grid { grid-template-columns: 1fr; }
  .tips-grid article { min-height: 0; }
  .tips-grid h3 { margin-top: 1rem; }
  .packing-inner { grid-template-columns: 1fr auto; }
  .packing-label { grid-column: 1/-1; }
}
@media (max-width: 600px) {
  :root { --space-7: 3.5rem; --space-8: 4rem; }
  .container { width: min(calc(100% - 1.5rem), var(--container)); }
  .header-inner { min-height: 4.5rem; }
  .site-header .brand { align-self: auto; padding: 0; margin-bottom: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
  .brand-logo { height: 3.35rem; }
  .quote-consent { font-size: .78rem; }
  .hero { padding-top: 0; padding-bottom: 6.5rem; }
  .hero-copy { padding-top: 3rem; }
  h1 { font-size: clamp(2.7rem,13vw,4rem); }
  h2 { font-size: clamp(2.1rem,10vw,3rem); }
  .button-row { display: grid; }
  .desktop-break { display: none; }
  .quick-benefits { grid-template-columns: repeat(2,1fr); gap: 1rem .6rem; }
  .quick-benefits li { min-width: 0; }
  .quick-benefits span { line-height: 1.35; }
  .hero-visual { min-height: 20rem; border-radius: 1rem; }
  .hero-visual img { object-position: 68% center; }
  .quote-wrap { margin-top: -3.5rem; }
  .quote-card { grid-template-columns: 1fr; padding: 1.15rem; }
  .quote-heading, .quote-submit { grid-column: auto; }
  .service-grid, .steps, .benefit-list, .footer-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 18rem; }
  .steps { gap: 1.5rem; }
  .final-cta-inner { display: block; }
  .final-actions { display: grid; margin-top: 1.5rem; }
  .final-cta .button { width: 100%; }
  .packing-inner { grid-template-columns: 1fr; }
  .packing-strip .button { width: 100%; }
  .footer-grid { gap: 2rem; }
  .footer-bottom { display: block; }
  .footer-bottom p + p { margin-top: .5rem; }
}
@media (max-width: 390px) {
  .quick-benefits { grid-template-columns: 1fr 1fr; }
}
