.planning-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.planning-links a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px; color: var(--ink); background: var(--off-white); border: 1px solid rgba(201,139,35,.3); border-radius: 6px; font-weight: 700; text-decoration: none; }
.planning-links a:hover { border-color: var(--gold); }
.planning-links a span { flex-shrink: 0; color: var(--gold); }
.planning-band { background: var(--off-white); }
.comparison-help { display: none; margin: 0; color: var(--muted); font-size: .9rem; }
#material-comparison, #service-faq, #quote-checklist { scroll-margin-top: 110px; }
.comparison-scroll { max-width: 100%; overflow-x: auto; border: 1px solid rgba(201,139,35,.3); border-radius: 6px; }
.material-comparison { width: 100%; min-width: 650px; border-collapse: collapse; text-align: left; line-height: 1.6; }
.material-comparison caption { padding: 18px; text-align: left; font-weight: 700; background: var(--off-white); }
.material-comparison th, .material-comparison td { padding: 20px; vertical-align: top; border-bottom: 1px solid rgba(201,139,35,.2); }
.material-comparison thead { color: white; background: var(--black-soft); }
.material-comparison tbody th { min-width: 130px; }
.material-comparison tbody tr:nth-child(even) { background: var(--off-white); }
.material-comparison a { color: inherit; text-underline-offset: 3px; }
.comparison-scroll:focus-visible, .planning-links a:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
@media (max-width: 980px) { .planning-links { grid-template-columns: 1fr; } }
@media (max-width: 700px) { .comparison-help { display: block; } }
