.plans-page { --plan-green: #a9d4b3; }
.plans-page main { max-width: 1120px; margin-inline: auto; }
.plans-page main h2 { font-size: 1.5rem; line-height: 1.3; letter-spacing: -.025em; }
.plans-nav-current { color: var(--home-orange); min-height: 44px; display: inline-flex; align-items: center; }
.plans-intro { padding: 64px 0 40px; }
.plans-intro h1 { max-width: none; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.15; letter-spacing: -.04em; text-wrap: balance; }
.plans-lead { max-width: 64ch; color: #b4bac3; font-size: 1.125rem; line-height: 1.65; margin: 20px 0 0; text-wrap: pretty; }
.plan-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; scroll-margin-top: 30px; }
.plan-card { display: flex; flex-direction: column; min-width: 0; padding: 32px; border: 1px solid #303640; border-radius: 8px; background: #0e1219; }
.plans-page .plan-card h2 { font-size: 1.75rem; }
.plan-purpose { margin: 22px 0 0; color: #ffc49f; font-size: 1.125rem; line-height: 1.5; letter-spacing: -.02em; }
.plan-card { scroll-margin-top: 30px; }
.plan-description { color: #b4bac3; line-height: 1.65; font-size: 1rem; margin: 20px 0 24px; }
.plan-list-label { margin: 0 0 12px; font-size: 1rem; line-height: 1.65; color: #d3d8e0; }
.plan-features { padding: 0 0 0 1.1rem; margin: 0 0 28px; display: grid; gap: 10px; }
.plan-features li { padding-left: 5px; color: #bfc5cf; font-size: 1rem; line-height: 1.65; }
.plan-features li::marker { color: #808b9b; font-size: .75em; }
.plan-action { margin-top: auto; padding-top: 22px; border-top: 1px solid #303640; }
.plan-scope { margin: 0 0 18px; color: #bfc5cf; font-size: .9375rem; line-height: 1.65; }
.plan-cta { width: 100%; }
.plans-page .button-primary { box-shadow: none; }
.plans-page .button-primary:hover { transform: none; }
.plans-founder-section { margin-top: 48px; padding-block: 42px; border-top: 1px solid var(--home-line); }
.founder-story { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 48px; margin-top: 30px; }
.founder-headshot { display: block; width: 100%; height: auto; border-radius: 6px; }
.founder-identity { margin: 16px 0 0; font-size: .9375rem; line-height: 1.65; }
.founder-identity span { display: block; color: #a9b0bc; margin-top: 3px; font-size: .875rem; }
.founder-linkedin { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 4px; font-size: .875rem; color: #bfc5cf; }
.founder-linkedin svg { flex: none; }
.founder-linkedin:hover { color: var(--home-orange); }
.founder-copy { min-width: 0; }
.founder-copy p { margin: 0 0 18px; color: #bfc5cf; font-size: 1rem; line-height: 1.75; text-wrap: pretty; }
.founder-copy p:last-child { margin-bottom: 0; }
.founder-identity a, .faq-answer a, .demo-direct a { color: var(--home-orange); text-decoration: underline; text-underline-offset: 4px; }
.founder-identity a:hover, .faq-answer a:hover, .demo-direct a:hover { color: #ffc39f; }
.plans-faq, .plans-enquiries { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.75fr); gap: 48px; border-top: 1px solid var(--home-line); padding-block: 42px; }
.plans-questions details { border-bottom: 1px solid #303743; }
.plans-questions summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 24px; min-height: 64px; padding: 18px 0; font-size: 1rem; line-height: 1.65; cursor: pointer; }
.plans-questions details:first-child summary { min-height: 46px; padding-top: 0; }
.plans-questions summary::-webkit-details-marker { display: none; }
.plans-questions summary span { color: #a9b0bc; font-size: 1.25rem; flex-shrink: 0; }
.plans-questions summary:hover { color: var(--home-orange); }
.plans-questions summary:focus-visible { outline: 2px solid var(--home-orange); outline-offset: 4px; }
.plans-questions details[open] summary span { transform: rotate(45deg); }
.faq-answer { padding: 0 24px 22px 0; }
.faq-answer p { color: #b4bac3; font-size: 1rem; line-height: 1.75; margin: 0 0 16px; }
.faq-answer p:last-child { margin-bottom: 0; }
.faq-answer h3 { margin: 24px 0 10px; font-size: 1.125rem; line-height: 1.5; letter-spacing: -.015em; }
.faq-answer h3:first-child { margin-top: 0; }
.faq-answer h4 { margin: 18px 0 6px; font-size: 1rem; line-height: 1.65; font-weight: 500; }
.plans-enquiries { margin-bottom: 24px; scroll-margin-top: 30px; }
.demo-intro { min-width: 0; }
.demo-intro p { color: #a9b0bc; font-size: 1rem; line-height: 1.7; margin: 18px 0 0; }
.demo-form { position: relative; min-width: 0; display: grid; gap: 18px; }
.demo-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.demo-form label { display: block; color: #d3d8e0; font-size: .875rem; line-height: 1.6; }
.demo-form input, .demo-form select, .demo-form textarea { display: block; width: 100%; min-width: 0; margin-top: 8px; padding: 12px; border: 1px solid #47515e; border-radius: 4px; background: #0b0f15; color: var(--home-ink); font: inherit; font-size: 1rem; }
.demo-form textarea { resize: vertical; min-height: 110px; }
.demo-form select:focus-visible, .demo-form textarea:focus-visible { outline: 2px solid var(--home-orange); outline-offset: 4px; }
.demo-form textarea::placeholder { color: #8e98a8; }
.demo-optional { color: #a9b0bc; }
.demo-form .button { cursor: pointer; justify-content: space-between; }
.demo-form .button:disabled { opacity: .6; cursor: wait; transform: none; }
.demo-status { margin: 0; font-size: .9375rem; line-height: 1.6; color: var(--plan-green); }
.demo-status:empty { display: none; }
.demo-status.error { color: #ffa391; }
.demo-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.plans-footer-links { display: flex; gap: 25px; }
.plans-page .site-footer { font-size: .875rem; }
@media (max-width: 760px) {
  .plans-intro { padding: 42px 0 30px; }
  .plans-lead { font-size: 1rem; }
  .plan-grid { grid-template-columns: 1fr; gap: 20px; }
  .plan-card { padding: 26px; }
  .plans-founder-section { margin-top: 32px; padding-block: 32px; }
  .founder-story { grid-template-columns: 150px minmax(0, 1fr); gap: 24px; }
  .plans-faq, .plans-enquiries { grid-template-columns: minmax(0, 1fr); gap: 24px; padding-block: 32px; }
  .plans-enquiries { margin-bottom: 8px; }
}
@media (max-width: 560px) {
  .founder-story { grid-template-columns: minmax(0, 1fr); }
  .founder-profile { max-width: 200px; }
}
@media (max-width: 420px) {
  .plans-page .site-frame { width: calc(100% - 2rem); }
  .plans-page .site-header { flex-wrap: wrap; gap: 12px; padding-block: 16px; }
  .plans-page .site-brand img { width: 110px; }
  .plans-page .site-nav { flex-wrap: wrap; gap: .8rem; }
  .plans-page .site-nav .button { gap: .6rem; padding-inline: .8rem; }
  .plan-card { padding: 22px; }
  .demo-fields { grid-template-columns: 1fr; }
  .plans-page .site-footer { flex-direction: column; gap: 8px; }
}
