@media (max-width: 1150px) {
  .container { width: calc(100% - 64px); }
  .header-inner { gap: 24px; }
  .wordmark { font-size: 23px; }
  .main-navigation { gap: 24px; }
  .hero-grid { gap: 32px; min-height: 730px; padding-top: 44px; }
  .hero h1 { font-size: clamp(68px, 7.5vw, 90px); }
  .service-card { padding: 26px; gap: 18px; min-height: 190px; }
  .service-icon { width: 68px; height: 76px; }
  .service-icon svg { width: 60px; height: 60px; }
  .service-copy strong { font-size: 30px; }
  .service-copy > span:last-child { font-size: 13px; }
  .round-arrow { width: 40px; height: 40px; }
  .hero-car { height: 280px; margin-top: -24px; margin-left: -20px; width: calc(100% + 40px); }
  .hero-car img { top: -42px; }
  .case-card h3 { font-size: 24px; }
  .case-copy, .magazine-copy { padding: 23px; }
  .magazine-card h3 { font-size: 23px; }
  .decision-panel { padding: 52px; }
}
@media (max-width: 900px) {
  .header-cta { display: none; }
  .hero-grid { min-height: 660px; grid-template-columns: 1.12fr 1fr; gap: 24px; }
  .hero h1 { font-size: 65px; }
  .hero-cta { margin-top: 26px; }
  .hero-car { height: 260px; margin-top: -12px; width: calc(100% + 44px); }
  .service-card { min-height: 174px; padding: 22px; gap: 14px; }
  .service-copy strong { font-size: 26px; }
  .service-copy > span:last-child { font-size: 12px; }
  .service-icon { width: 50px; height: 64px; }
  .service-icon svg { width: 48px; height: 48px; }
  .round-arrow { width: 34px; height: 34px; font-size: 24px; }
  .section { padding: 76px 0; }
  .case-cards, .magazine-grid { gap: 20px 16px; }
  .case-copy, .magazine-copy { padding: 22px 20px; }
  .case-card h3, .magazine-card h3 { font-size: 21px; }
  .card-title { gap: 10px; }
  .decision-panel { gap: 32px; padding: 44px; }
  .decision-actions a { font-size: 25px; }
  .process-list li { padding: 28px 20px; min-height: 184px; }
  .step-number { font-size: 48px; }
  .process-list h3 { font-size: 21px; }
}
@media (max-width: 740px) {
  .container { width: calc(100% - 40px); }
  .header-inner { min-height: 76px; position: relative; }
  .wordmark { font-size: 20px; }
  .menu-toggle { display: flex; flex-direction: column; gap: 6px; padding: 14px 8px; border: 0; background: transparent; }
  .menu-toggle span { width: 25px; height: 2px; background: var(--navy); }
  .main-navigation { display: none; position: absolute; top: 66px; left: 0; right: 0; z-index: 5; background: #fff; padding: 28px; border: 1px solid var(--line); border-radius: 24px; font-size: 18px; }
  .main-navigation.is-open { display: flex; flex-direction: column; gap: 26px; }
  .hero-grid { display: block; padding-top: 30px; padding-bottom: 30px; min-height: 0; }
  .hero h1 { font-size: clamp(48px, 14vw, 78px); }
  .hero-cta { margin-top: 23px; min-height: 52px; font-size: 14px; padding: 0 24px; }
  .hero-car { width: calc(100% + 32px); height: clamp(190px, 50vw, 310px); margin-top: -12px; margin-left: -16px; }
  .hero-car img { top: -34px; }
  .hero-services { gap: 12px; margin-top: 10px; }
  .service-card { min-height: 152px; padding: 24px; border-radius: 24px; gap: 20px; }
  .service-icon { width: 60px; height: 70px; }
  .service-icon svg { width: 58px; height: 58px; }
  .service-copy { gap: 7px; }
  .service-number { font-size: 12px; }
  .service-copy strong { font-size: 30px; }
  .service-copy > span:last-child { font-size: 13px; }
  .round-arrow { width: 38px; height: 38px; align-self: center; }
  .section { padding: 64px 0; }
  .section-heading { margin-bottom: 28px; gap: 20px; }
  h2 { font-size: 43px; }
  .text-link { font-size: 13px; gap: 12px; }
  .case-cards, .magazine-grid { grid-template-columns: 1fr; gap: 24px; }
  .case-card, .magazine-card { border-radius: 24px; }
  .case-picture { aspect-ratio: 1.12; }
  .case-card h3 { font-size: 28px; }
  .case-copy, .magazine-copy { padding: 25px; }
  .magazine-card h3 { font-size: 28px; }
  .tag { font-size: 13px; }
  .card-arrow { font-size: 30px; }
  .decision-panel { display: block; padding: 38px 30px; border-radius: 28px; }
  .decision-panel h2 { font-size: 60px; }
  .decision-actions { width: 100%; margin-top: 27px; }
  .decision-actions a { min-height: 78px; font-size: 27px; }
  .service-section { padding-bottom: 0; }
  .process-list { grid-template-columns: 1fr 1fr; gap: 12px; }
  .process-list li { padding: 26px 22px; min-height: 172px; border-radius: 20px; }
  .step-number { font-size: 48px; }
  .process-list h3 { margin-top: 27px; font-size: 22px; }
  .process-note { font-size: 12px; margin-top: 20px; }
  .magazine-filters { gap: 8px; margin-bottom: 28px; }
  .magazine-filters button { min-height: 44px; font-size: 13px; padding: 9px 17px; }
  .closing-section { padding: 64px 0; }
  .closing-inner { display: block; }
  .closing-inner h2 { font-size: 45px; }
  .closing-inner .button { margin-top: 32px; }
  .footer-top { flex-direction: column; align-items: flex-start; gap: 23px; }
  .footer-top > div { gap: 16px; flex-wrap: wrap; font-size: 11px; }
  .site-footer p { font-size: 11px; }
}
@media (max-width: 360px) {
  .service-card { gap: 14px; padding: 21px; }
  .service-icon { width: 48px; }
  .service-copy strong { font-size: 26px; }
  .round-arrow { width: 32px; height: 32px; }
  .wordmark { font-size: 18px; }
  .process-list li { padding: 25px 18px; }
  .process-list h3 { font-size: 20px; }
}
