.packages-page { --focus: #157a9f; }
.packages-page .topbar :focus-visible,
.packages-page .package-hero :focus-visible,
.packages-page footer :focus-visible { outline-color: #91c9ff; }
.packages-page [id] { scroll-margin-top: 120px; }
.package-hero {
  padding: clamp(48px, 7vw, 96px) clamp(18px, 4vw, 64px);
  background: radial-gradient(ellipse at top right, #193b38, transparent 65%), #10141c;
}
.package-hero h1 { max-width: 1000px; font-size: clamp(2.6rem, 6.2vw, 5.8rem); line-height: 1.06; }
.package-intro-note { color: var(--muted); margin-top: 24px; }
.package-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; max-width: 1400px; margin: auto; }
.package-card { display: flex; flex-direction: column; padding: clamp(22px, 3vw, 40px); border: 1px solid #d5dbe5; border-radius: 12px; background: #fff; }
.package-card .eyebrow { color: var(--accent-dark); }
.package-card h2 { font-size: clamp(1.65rem, 2.7vw, 2.5rem); line-height: 1.15; max-width: 560px; }
.package-card p { color: #475263; }
.package-card .package-promise { color: var(--paper-ink); margin-bottom: 0; }
.package-example { background: #eff6f4; border-left: 3px solid #218171; padding: 16px; border-radius: 0 6px 6px 0; }
.package-card details { margin: 8px 0 20px; }
.package-bottom { margin-top: auto; padding-top: 20px; border-top: 1px solid #d5dbe5; }
.package-bottom .package-price { font-size: 2rem; font-weight: 800; color: var(--paper-ink); margin: 0; }
.package-price span { font-size: 1rem; font-weight: 500; }
.package-bottom > p:nth-child(2) { margin: 4px 0 18px; }
.package-footnote { max-width: 850px; margin: 32px auto 0; color: var(--paper-muted); }
.package-expect details { color: var(--paper-ink); }
.package-expect details p { color: #475263; }
.package-request { border-top: 1px solid var(--line); }
.packages-page footer nav { flex-wrap: wrap; }
@media (max-width: 900px) {
  .package-grid { grid-template-columns: 1fr; }
  .packages-page [id] { scroll-margin-top: 175px; }
}
@media (max-width: 620px) {
  .packages-page .topbar { position: relative; }
  .packages-page [id] { scroll-margin-top: 16px; }
}
