@media (max-width: 960px) {
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { text-align: center; }
  .hero-copy > p { margin-inline: auto; }
  .hero-actions, .trust-row { justify-content: center; }
  .plant-visual { width: min(100%, 620px); margin-inline: auto; }
  .hero-image { object-position: 58% 53%; }
  .steps-grid { grid-template-columns: 1fr 1fr; }
  .steps-grid::before { display: none; }
  .features-grid { grid-template-columns: repeat(2, 1fr); }
  .features-grid .feature-card, .features-grid .feature-card:nth-child(4) { grid-column: auto; }
  .features-grid .feature-card:last-child { grid-column: 1 / -1; }
  .ideas-grid { grid-template-columns: 1fr 1fr; }
  .filter-bar { grid-template-columns: 1fr 1fr; }
  .filter-count { align-self: center; }
  .agent-shell { grid-template-columns: 1fr; }
  .agent-aside { position: static; }
  .mini-steps { grid-template-columns: repeat(4, 1fr); }
  .agent-shell.report-mode .agent-aside { display: block; }
  .agent-shell.report-mode .mini-steps { grid-column: auto; grid-row: auto; }
  .priority-list { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .section { padding: 76px 0; }
  .nav-inner { min-height: 66px; }
  .menu-button { display: grid; place-items: center; }
  .nav-links { position: absolute; left: 20px; right: 20px; top: 72px; display: none; padding: 12px; border: 1px solid var(--line); border-radius: 16px; background: white; box-shadow: var(--shadow); }
  .nav-links.open { display: grid; }
  .nav-links .btn { margin-top: 6px; }
  .difference-top { grid-template-columns: 1fr; gap: 18px; }
  .difference-grid, .pricing-grid { grid-template-columns: 1fr; }
  .pricing-card.popular { transform: none; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-grid > :first-child { grid-column: 1 / -1; }
  .ideas-grid { grid-template-columns: 1fr; }
  .details-grid, .result-grid { grid-template-columns: 1fr; }
  .risk-card-grid, .allocation-cards { grid-template-columns: 1fr; }
  .deadline-facts { grid-template-columns: 1fr 1fr; }
  .risk-card-grid .selection-card > span { min-height: 96px; }
  .result-trust-row { grid-template-columns: 1fr 1fr; }
  .review-list { grid-template-columns: 1fr; }
  .considerations ul { columns: 1; }
  .high-risk-education ul { grid-template-columns: 1fr; }
  .plan-feedback { grid-template-columns: 1fr; }
  .feedback-status { grid-column: auto; }
}
@media (max-width: 560px) {
  .container { width: min(100% - 26px, var(--max)); }
  .hero { padding: 52px 0 65px; }
  .hero h1 { font-size: clamp(2.5rem, 12vw, 3.7rem); }
  .hero-actions .btn { width: 100%; }
  .plant-visual { min-height: 390px; }
  .hero-image { object-position: 58% 51%; }
  .visual-note { font-size: .62rem; }
  .note-one { left: 10px; top: 35px; }
  .note-two { right: 10px; bottom: 40px; }
  .steps-grid, .features-grid { grid-template-columns: 1fr; }
  .features-grid .feature-card:last-child { grid-column: auto; }
  .flow { font-size: .73rem; }
  .flow span { margin: 0 4px; }
  .difference-panel { padding: 31px 22px; }
  .filter-bar { grid-template-columns: 1fr; }
  .investment-actions { align-items: flex-end; }
  .compare-drawer { align-items: stretch; flex-direction: column; }
  .compare-drawer .btn { width: 100%; }
  .gateway-card { padding: 29px 22px; }
  .modal-backdrop { padding: 0; align-items: end; }
  .modal { max-height: 93dvh; border-radius: 24px 24px 0 0; }
  .modal-body { padding: 18px; }
  .comparison-table th, .comparison-table td { padding: 10px 7px; font-size: .66rem; }
  .agent-main { padding: 23px 18px; }
  .mini-steps { grid-template-columns: 1fr; }
  .result-stats { grid-template-columns: 1fr; }
  .choice-grid { gap: 6px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-grid > :first-child { grid-column: auto; }
  .plan-page-header { padding-top: 48px; }
  .agent-section { padding-top: 20px; }
  .form-actions, .result-actions { flex-direction: column-reverse; }
  .form-actions .btn, .result-actions .btn { width: 100%; }
  .privacy-note { text-align: left; }
  .result-trust-row { grid-template-columns: 1fr; }
  .plan-report-header { align-items: flex-start; }
  .report-sprout { width: 54px; height: 54px; border-radius: 17px; font-size: 1.5rem; }
  .report-section { padding: 20px 16px; }
  .report-section-head { align-items: flex-start; flex-direction: column; gap: 3px; }
  .allocation-total { margin-bottom: 5px; }
  .contribution-chart { gap: 4px; padding-inline: 4px; }
  .contribution-track { width: min(100%, 25px); }
  .contribution-value { display: none; }
  .milestone-row { grid-template-columns: 1fr 1fr; }
  .milestone-row div:nth-child(2) { border-right: 0; }
  .milestone-row div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .considerations, .next-action { align-items: flex-start; }
  .next-action-icon { display: none; }
  .feedback-actions { flex-direction: column; }
  .feedback-actions .btn { width: 100%; }
  .chart-detail { align-items: flex-start; flex-direction: column; gap: 2px; }
  .goal-type-grid, .pace-options, .split-fields { grid-template-columns: 1fr; }
  .split-total, .deadline-report .report-section-head { align-items: flex-start; flex-direction: column; }
  .high-risk-education summary { align-items: flex-start; padding: 18px; }
  .high-risk-education summary small { display: none; }
  .high-risk-education > div { padding-inline: 18px; }
}
