.article .planning-brief {
  margin: 28px 0;
  padding: 26px;
  border: 1px solid #c5dbe5;
  border-top: 4px solid #43b763;
  border-radius: 10px;
  background: #f3f9fc;
  scroll-margin-top: 100px;
}
.article .planning-brief h3 { margin: 0 0 10px; font-size: 1.5rem; }
.article .planning-brief p { margin: 0 0 16px; }
.planning-brief__fields { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.planning-brief__fields .field { flex: 1 1 240px; min-width: 0; }
.planning-brief__fields .btn { white-space: normal; min-height: 50px; }
.article .planning-brief .planning-brief__note { margin: 12px 0 0; font-size: .875rem; color: #526274; }
.article .planning-brief .planning-brief__error { margin: 12px 0 0; color: #9b2525; }
.planning-brief [hidden] { display: none !important; }
.planning-brief button:disabled { opacity: .7; cursor: wait; }
.planning-brief__success:focus { outline: 2px solid #003b5c; outline-offset: 6px; }
.article .planning-brief .planning-brief__advice { margin: 20px 0 0; padding-top: 16px; border-top: 1px solid #c5dbe5; }
.article .planning-brief-reminder { padding: 20px; border-left: 4px solid #43b763; background: #f3f9fc; }
.article .planning-brief-reminder p { margin: 0 0 12px; }
@media (max-width: 540px) {
  .article .planning-brief { padding: 20px; }
  .planning-brief__fields .field, .planning-brief__fields .btn { flex-basis: 100%; width: 100%; }
}

.article .advice-requests { margin: 24px 0 36px; }
.advice-request { margin: 12px 0; padding: 20px; border: 1px solid #c5dbe5; border-radius: 10px; background: #fff; scroll-margin-top: 100px; }
.advice-request summary { cursor: pointer; font-weight: 700; color: #003b5c; font-size: 1.125rem; }
.advice-request[open] summary { margin-bottom: 16px; }
.advice-request .field { margin-bottom: 16px; }
.advice-request .btn { margin-top: 12px; }
.advice-request [hidden] { display: none !important; }
.advice-request .planning-brief__note { font-size: .875rem; color: #526274; }
.advice-request .planning-brief__error { color: #9b2525; }
.advice-request button:disabled { opacity: .7; cursor: wait; }

.article .eol-gate p { color: #fff; }
.article .eol-gate a { color: #9bd7f0; text-decoration: underline; }

/* Resource preview stays secondary to the pricing review. */
.article .planning-brief { border-top: 1px solid #c5dbe5; background: #f7fafb; }
.brief-preview { display: grid; grid-template-columns: minmax(0, 180px) minmax(0, 1fr); gap: 24px; align-items: center; margin: 24px 0; }
.brief-preview__page { margin: 0; }
.brief-preview__page img { display: block; width: 100%; height: auto; border: 1px solid #d3dee4; box-shadow: 0 8px 20px #003b5c15; border-radius: 4px; }
.brief-preview__page figcaption { margin-top: 8px; color: #526274; font-size: .75rem; line-height: 1.5; }
.article .brief-preview__eyebrow { color: #526274; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.article .brief-preview__sample blockquote { margin: 0 0 16px; padding: 0 0 0 16px; border-left: 3px solid #43b763; color: #003b5c; font-size: 1.05rem; line-height: 1.6; }
.article .brief-preview__sample > p:last-child { font-size: .9rem; color: #526274; }
.planning-brief__fields .btn { background: #fff; color: #003b5c; border: 1px solid #9ab6c5; box-shadow: none; }
.planning-brief__fields .btn:hover { background: #e6f1f6; }
.article .pricing-review-reminder { margin: 32px 0; padding: 24px; border-left: 4px solid #43b763; background: #eef7f3; }
.article .pricing-review-reminder h3 { margin-top: 0; }
@media (max-width: 540px) {
  .brief-preview { grid-template-columns: 1fr; gap: 18px; }
  .brief-preview__page { max-width: 190px; margin: 0 auto; }
}
