/* Property pathways and the real inquiry flow share the Link visual language. */
.calculator-connect { width: 100%; margin: 8px 0 13px; }
.property-pathways { padding-top: 0; padding-bottom: 100px; }
.pathway-intro { display: flex; justify-content: space-between; align-items: flex-start; gap: 35px; margin-bottom: 36px; }
.pathway-intro .eyebrow { padding-top: 8px; }
.pathway-intro h2 { font-size: 37px; text-align: right; }
.pathway-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid #2a3e5a; border-radius: 8px; background: linear-gradient(125deg, #14253c, #0c1829); overflow: hidden; }
.pathway-grid article { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 28px 30px; }
.pathway-grid article + article { border-left: 1px solid #2a3e5a; }
.pathway-grid article > span { color: #91b9eb; font-size: 8px; letter-spacing: .1em; line-height: 1.6; }
.pathway-grid h3 { font-size: 23px; margin: 24px 0 12px; }
.pathway-grid p { color: var(--muted); font-size: 12px; line-height: 1.85; flex: 1; }
.pathway-grid .inline-link { margin-top: 17px; }
#plan-dialog { width: min(700px, calc(100% - 32px)); max-height: calc(100svh - 32px); padding: 40px; overscroll-behavior: contain; }
#plan-dialog h2 { font-size: 37px; }
#plan-dialog .dialog-intro { max-width: 520px; }
#plan-form { display: flex; flex-direction: column; gap: 16px; margin-top: 26px; }
#plan-form .field-grid { gap: 16px; margin-top: 0; }
#plan-form label { display: flex; flex-direction: column; gap: 7px; min-width: 0; font-size: 11px; color: #c4d4ea; line-height: 1.5; }
#plan-form label input, #plan-form label select, #plan-form label textarea { width: 100%; min-width: 0; min-height: 46px; margin: 0; padding: 11px 12px; border: 1px solid #354e70; border-radius: 4px; background: #0b1626; color: var(--text); font-size: 14px; }
#plan-form label textarea { resize: vertical; min-height: 94px; }
#plan-form input::placeholder, #plan-form textarea::placeholder { color: #7d93b2; opacity: 1; }
#plan-form label .optional { display: inline; color: #8196b5; font-size: 10px; }
#plan-form .check-field { flex-direction: row; align-items: flex-start; gap: 12px; font-size: 11px; line-height: 1.65; }
#plan-form .check-field input { width: 18px; min-width: 18px; height: 18px; min-height: 18px; margin: 2px 0 0; padding: 0; accent-color: #81b2fb; }
#plan-form .check-field > span { display: block; }
#plan-form .privacy-inline { padding: 0; font-size: inherit; color: #a2c9ff; text-decoration: underline; text-underline-offset: 3px; }
#plan-form .form-honeypot { display: none; }
#plan-submit { width: 100%; margin-top: 3px; }
#plan-submit:disabled { opacity: .7; }
#plan-form .brief-download { min-height: 36px; margin-top: -8px; }
#plan-form .micro-copy { font-size: 10px; line-height: 1.75; }
#brief-status { font-size: 12px; line-height: 1.75; overflow-wrap: anywhere; color: #bcd7fa; }
#brief-status:empty { display: none; }
#brief-status[data-state="success"] { padding: 15px; border: 1px solid #2f6b74; border-radius: 5px; background: #102c36; color: #bde8e7; }
#brief-status[data-state="error"] { padding: 15px; border: 1px solid #805c58; border-radius: 5px; background: #2d2028; color: #ffc8bb; }
#privacy-dialog { width: min(680px, calc(100% - 32px)); max-height: calc(100svh - 32px); }
#privacy-dialog h2 { font-size: 35px; }
#privacy-dialog p:not(.eyebrow) { font-size: 12px; line-height: 1.85; }
#privacy-dialog p a { color: #afd2ff; text-decoration: underline; }
.privacy-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 16px; }
#privacy-dialog #clear-data { margin-top: 12px; }
@media (max-width: 800px) {
  .property-pathways { padding-bottom: 70px; }
  .pathway-intro { display: block; }
  .pathway-intro h2 { text-align: left; margin-top: 16px; font-size: 34px; }
  .pathway-grid { grid-template-columns: 1fr; }
  .pathway-grid article { padding: 25px; }
  .pathway-grid article + article { border-left: 0; border-top: 1px solid #2a3e5a; }
  .pathway-grid h3 { margin-top: 17px; }
  .pathway-grid .inline-link { padding-top: 8px; margin-top: 10px; min-height: 44px; }
  #plan-dialog { padding: 28px 24px; }
  #plan-form label input, #plan-form label select, #plan-form label textarea { font-size: 16px; }
}
@media (max-width: 480px) {
  #plan-dialog { width: calc(100% - 20px); max-height: calc(100svh - 20px); padding: 27px 20px; }
  #plan-dialog h2 { font-size: 29px; }
  #plan-form { gap: 15px; }
  #plan-form .field-grid { grid-template-columns: 1fr; gap: 15px; }
  #plan-form label { font-size: 12px; }
  #plan-form .check-field, #plan-form .micro-copy { font-size: 11px; }
  #privacy-dialog { padding: 28px 22px; }
  #privacy-dialog h2 { font-size: 30px; }
  #privacy-dialog p:not(.eyebrow) { font-size: 12px; }
  .privacy-actions { flex-direction: column; }
}
