/* Personalized results share the public site's palette. Keep the layout scoped:
   the strategy partials are also used by profile pages and shared results. */
.brand-continuity .personalized-result-page { padding-block: 1.5rem 3rem; background: var(--ciq-canvas); }
.brand-continuity .personalized-result-page .personalized-result { gap: 1.5rem; background: transparent; box-shadow: none; border: 0; }
.brand-continuity .personalized-result-page :is(section, article, nav, details) { scroll-margin-top: 6rem; }
.brand-continuity .personalized-result-page :is(h1, h2, h3, p, li, dd) { overflow-wrap: anywhere; }

/* Navy introduction and mint annual value, as on the profile strategies. */
.brand-continuity .personalized-result-page .personalized-overview {
  position: relative;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr);
  gap: clamp(1.5rem, 4vw, 3.5rem);
  padding: clamp(1.5rem, 3.5vw, 3rem);
  border: 0;
  border-radius: 24px;
  background: var(--ciq-hero);
  color: #fff;
  box-shadow: 0 12px 32px rgb(16 31 64 / 8%);
}
.brand-continuity .personalized-result-page .personalized-overview h1 { max-width: 17ch; color: #fff; font-size: clamp(2rem, 3.5vw, 3.25rem); line-height: 1.07; }
.brand-continuity .personalized-result-page .personalized-overview .eyebrow { color: var(--ciq-mint); }
.brand-continuity .personalized-result-page .personalized-overview__lede { max-width: 48ch; color: #dce5f4; font-size: 1rem; line-height: 1.55; }
.brand-continuity .personalized-result-page .personalized-strategy-summary { max-width: 100%; margin-top: 1.25rem; padding: .5rem .8rem .5rem .5rem; background: rgb(255 255 255 / 9%); border: 1px solid rgb(255 255 255 / 14%); }
.brand-continuity .personalized-result-page .personalized-strategy-summary > div :is(span, strong) { color: #fff; }
.brand-continuity .personalized-result-page .personalized-strategy-summary strong { font-size: 1rem; }
.brand-continuity .personalized-result-page .strategy-summary-facts { gap: .5rem; margin-top: .75rem; }
.brand-continuity .personalized-result-page .strategy-summary-facts li { border-color: rgb(255 255 255 / 20%); background: transparent; color: #e4edf9; font-size: .8rem; }
.brand-continuity .personalized-result-page .strategy-summary-facts__reason { flex-basis: 100%; padding: .5rem 0 0; border: 0; border-radius: 0; font-weight: 500; line-height: 1.5; }
.brand-continuity .personalized-result-page .personalized-overview__status { color: #dce5f4; font-size: .95rem; }
.brand-continuity .personalized-result-page .personalized-financial-card { min-height: 15rem; padding: 2rem; border: 1px solid #c4dfd0; border-radius: 20px; background: var(--ciq-mint-soft); box-shadow: 0 14px 30px rgb(0 0 0 / 12%); }
.brand-continuity .personalized-result-page .personalized-financial-card__content > span { font-size: .9rem; color: var(--ciq-mint-text); }
.brand-continuity .personalized-result-page .personalized-financial-card__content > strong { font-size: clamp(2.5rem, 4.7vw, 4rem); color: var(--ciq-mint-text); overflow-wrap: anywhere; }
.brand-continuity .personalized-result-page .personalized-financial-card__content > small { font-size: .9rem; color: #36664e; }
.brand-continuity .personalized-result-page .personalized-overview__actions { align-items: flex-start; margin-top: 1.5rem; }
.brand-continuity .personalized-result-page .personalized-overview__actions .button--primary { min-height: 44px; background: var(--ciq-mint); color: var(--ciq-ink); border-color: var(--ciq-mint); box-shadow: none; }
.brand-continuity .personalized-result-page .personalized-overview__actions .button--primary:hover { background: #d3fae9; }
.brand-continuity .personalized-result-page .personalization-share-preview { margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
.brand-continuity .personalized-result-page .personalization-share-preview > summary { min-height: 44px; border: 1px solid #8b9bb9; color: #fff; background: transparent; }
.brand-continuity .personalized-result-page .personalization-share-preview > summary:hover { background: rgb(255 255 255 / 12%); }
.brand-continuity .personalized-result-page .personalization-share-preview__body { left: 0; right: auto; z-index: 5; color: var(--ciq-text); }
.brand-continuity .personalized-result-page .personalization-share-preview__body :is(p, label) { color: var(--ciq-muted); font-size: .875rem; }
.brand-continuity .personalized-result-page :is(a, summary, input):focus-visible { outline: 3px solid #7062d4; outline-offset: 4px; }
.brand-continuity .personalized-result-page .personalized-overview :is(a, summary):focus-visible { outline-color: var(--ciq-mint); }

/* A wrapping section index stays usable at large text sizes and on phones. */
.brand-continuity .personalized-result-page .personalized-section-nav { display: flex; flex-wrap: wrap; gap: .25rem; padding: .5rem; border: 1px solid var(--ciq-border); border-radius: 16px; background: #fff; }
.brand-continuity .personalized-result-page .personalized-section-nav a { flex: 1 1 auto; display: grid; place-items: center; min-height: 44px; padding: .5rem .75rem; color: var(--ciq-muted); font-size: .8rem; }
.brand-continuity .personalized-result-page .personalized-section-nav a:hover { color: var(--ciq-lavender-text); background: var(--ciq-lavender); }
.brand-continuity .personalized-result-page :is(.strategy-scenario, .personalized-spending-strategy, .strategy-frontiers, .personalized-return-detail) { padding: clamp(1.25rem, 2.5vw, 2rem); border: 1px solid var(--ciq-border); border-radius: 20px; background: #fff; box-shadow: none; }
.brand-continuity .personalized-result-page :is(.personalized-section-heading, .strategy-section-heading) { align-items: flex-start; flex-wrap: wrap; gap: .75rem 1.5rem; margin-bottom: 1.25rem; }
.brand-continuity .personalized-result-page :is(.personalized-section-heading, .strategy-section-heading) > div { min-width: 0; }
.brand-continuity .personalized-result-page :is(.personalized-section-heading, .strategy-section-heading) h2 { font-size: clamp(1.4rem, 2.5vw, 1.9rem); }
.brand-continuity .personalized-result-page :is(.personalized-section-heading, .strategy-section-heading) p:not(.eyebrow) { max-width: 65ch; margin-top: .4rem; color: var(--ciq-muted); font-size: .95rem; line-height: 1.5; }
.brand-continuity .personalized-result-page .strategy-scenario__facts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.brand-continuity .personalized-result-page .strategy-scenario__fact { padding: 1rem; }
.brand-continuity .personalized-result-page .strategy-scenario__fact--monthly-spend { background: var(--ciq-lavender); border-color: #ded8f2; }
.brand-continuity .personalized-result-page .strategy-scenario__categories li { max-width: 100%; flex-wrap: wrap; border-radius: 10px; }
.brand-continuity .personalized-result-page .strategy-scenario__categories b { white-space: nowrap; }

/* Full-width card bodies: three horizontal cards no longer squeeze their own
   image and text into two more columns. The same layout works for long names. */
.brand-continuity .personalized-result-page .personalized-portfolio-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: 1rem; }
.brand-continuity .personalized-result-page .personalized-portfolio-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.brand-continuity .personalized-result-page .personalized-portfolio-grid--1 { grid-template-columns: minmax(0, 1fr); }
.brand-continuity .personalized-result-page .personalized-portfolio-card { display: flex; flex-direction: column; align-items: stretch; min-width: 0; min-height: 0; gap: 0; padding: 0; border: 1px solid var(--ciq-border); border-radius: 20px; background: #fff; box-shadow: 0 5px 18px rgb(16 31 64 / 4%); }
.brand-continuity .personalized-result-page .personalized-portfolio-card:hover { transform: none; }
.brand-continuity .personalized-result-page .strategy-card__visual { display: grid; place-items: center; min-height: 12rem; padding: 1.5rem; border-radius: 19px 19px 0 0; background: linear-gradient(135deg, #f3f0fc, #e8e3f7); }
.brand-continuity .personalized-result-page .strategy-card:nth-child(2) .strategy-card__visual { background: linear-gradient(135deg, #eefaf3, #dcf2e8); }
.brand-continuity .personalized-result-page .strategy-card:nth-child(3) .strategy-card__visual { background: linear-gradient(135deg, #fff4ec, #f8e7db); }
.brand-continuity .personalized-result-page .strategy-card__visual :is(.card-art__image, .card-art__placeholder) { width: min(100%, 12rem); height: 7.6rem; object-fit: contain; filter: drop-shadow(0 8px 9px rgb(16 31 64 / 15%)); }
.brand-continuity .personalized-result-page .strategy-card__position { top: 1rem; left: 1rem; width: 2rem; height: 2rem; font-size: .85rem; }
.brand-continuity .personalized-result-page .strategy-card__body { display: flex; flex-direction: column; flex: 1; min-width: 0; min-height: 0; padding: 1.25rem; }
.brand-continuity .personalized-result-page .strategy-card__body h3 { display: block; margin: .25rem 0 .5rem; font-size: 1.15rem; line-height: 1.3; }
.brand-continuity .personalized-result-page .personalized-portfolio-card__role { font-size: .75rem; }
.brand-continuity .personalized-result-page .personalized-portfolio-card__issuer { margin-bottom: 1rem; font-size: .85rem; color: var(--ciq-muted); }
.brand-continuity .personalized-result-page .strategy-card__facts { gap: .75rem 1rem; margin: 0 0 1rem; padding-bottom: 1rem; border-bottom: 1px solid var(--ciq-border); }
.brand-continuity .personalized-result-page .strategy-card__facts dt { color: var(--ciq-muted); font-size: .7rem; }
.brand-continuity .personalized-result-page .strategy-card__facts dd { font-size: .95rem; }
.brand-continuity .personalized-result-page .personalized-portfolio-card .strategy-category-chips { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr)); gap: .65rem; margin: 0 0 1rem; }
.brand-continuity .personalized-result-page .personalized-portfolio-card .strategy-category-chips li { min-width: 0; padding: 0; align-items: center; font-size: .85rem; line-height: 1.4; }
.brand-continuity .personalized-result-page .strategy-card :is(.offer-intel, .offer-intel-chip, .quality-badge) { min-width: 0; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.brand-continuity .personalized-result-page .personalized-portfolio-card__link { align-self: flex-start; margin-top: auto; padding-top: .8rem; font-size: .875rem; }
.brand-continuity .personalized-result-page .personalized-portfolio-grid--1 .strategy-card { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); }
.brand-continuity .personalized-result-page .personalized-portfolio-grid--1 .strategy-card__visual { border-radius: 19px 0 0 19px; }
.brand-continuity .personalized-result-page .strategy-sequence { grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: 1rem; padding: 1.25rem; background: var(--ciq-lavender); border-color: #ded8f2; }
.brand-continuity .personalized-result-page .strategy-sequence li { align-items: flex-start; font-size: .85rem; line-height: 1.5; }
.brand-continuity .personalized-result-page .strategy-sequence__phase { background: var(--ciq-lavender-text); }

/* Readable assignments: amounts align, card labels wrap instead of ellipsizing. */
.brand-continuity .personalized-result-page .personalized-spending-strategy__content { grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: 2rem; align-items: start; }
.brand-continuity .personalized-result-page .personalized-donut-wrap { min-height: 18rem; padding: 1rem; border-radius: 16px; background: #f7f5fc; }
.brand-continuity .personalized-result-page .personalized-donut { width: min(100%, 15rem); }
.brand-continuity .personalized-result-page .personalized-allocation-row { grid-template-columns: 2rem minmax(0, 1fr) minmax(0, .95fr) minmax(4rem, auto); gap: .5rem .75rem; padding: .8rem 0; border-bottom: 1px solid var(--ciq-border); }
.brand-continuity .personalized-result-page .personalized-allocation-row:last-child { border-bottom: 0; }
.brand-continuity .personalized-result-page .personalized-allocation-row__dot { display: none; }
.brand-continuity .personalized-result-page .personalized-allocation-row > strong { font-size: .85rem; line-height: 1.4; }
.brand-continuity .personalized-result-page .personalized-allocation-row > b { grid-column: 4; grid-row: 1; font-size: .85rem; font-variant-numeric: tabular-nums; }
.brand-continuity .personalized-result-page .personalized-allocation-row > b small { display: block; max-width: 10rem; white-space: normal; font-size: .75rem; }
.brand-continuity .personalized-result-page .personalized-allocation-row__card { grid-column: 3; grid-row: 1; justify-self: start; max-width: 100%; padding: .35rem .55rem; border-radius: 8px; font-size: .75rem; white-space: normal; overflow: visible; text-overflow: clip; color: var(--ciq-lavender-text); background: var(--ciq-lavender); }

/* Keep the same complete content on desktop and mobile, with no duplicate
   hidden explanations or lost methodology links at the mobile breakpoint. */
.brand-continuity .personalized-result-page .personalized-dashboard__explanations { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 1rem; }
.brand-continuity .personalized-result-page .personalized-dashboard__explanations > section { padding: 1.5rem; border-radius: 20px; background: var(--ciq-mint-soft); }
.brand-continuity .personalized-result-page .personalized-dashboard__explanations > section:only-child { grid-column: 1 / -1; }
.brand-continuity .personalized-result-page .personalized-dashboard__explanations > section + section { background: var(--ciq-coral); }
.brand-continuity .personalized-result-page .personalized-dashboard__explanations h2 { align-items: flex-start; font-size: 1.25rem; line-height: 1.35; }
.brand-continuity .personalized-result-page .strategy-why__lead { font-size: .95rem; line-height: 1.6; }
.brand-continuity .personalized-result-page :is(.decision-reasons, .decision-tradeoffs) li { padding-block: .65rem; font-size: .875rem; line-height: 1.5; }
.brand-continuity .personalized-result-page .strategy-apply-now { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; align-items: center; background: #f7f5fc; }
.brand-continuity .personalized-result-page .strategy-apply-now .strategy-section-heading { margin: 0; }
.brand-continuity .personalized-result-page .strategy-apply-now__body { max-width: none; padding: 1.25rem; background: #fff; }
.brand-continuity .personalized-result-page .strategy-frontier__facts > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .75rem; align-items: baseline; }
.brand-continuity .personalized-result-page .strategy-frontier__facts dd { max-width: 15ch; font-size: .9rem; }
.brand-continuity .personalized-result-page .personalized-return-detail { display: block; }
.brand-continuity .personalized-result-page .personalized-return-detail h2 { align-items: flex-start; font-size: clamp(1.4rem, 2.5vw, 1.9rem); }
.brand-continuity .personalized-result-page .personalized-return-detail dl > div { gap: 1rem; padding-block: .8rem; font-size: .9rem; }
.brand-continuity .personalized-result-page .personalized-return-detail dd { flex-shrink: 0; font-variant-numeric: tabular-nums; }
.brand-continuity .personalized-result-page .timing-callout { padding: 1.5rem; border: 1px solid #d9d0f0; border-radius: 20px; background: var(--ciq-lavender); color: var(--ciq-ink); font-size: .95rem; }
.brand-continuity .personalized-result-page .timing-callout .button { max-width: 100%; margin-top: 1rem; white-space: normal; text-align: center; }
.brand-continuity .personalized-result-page .personalized-footer-disclosures { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 1rem; }
.brand-continuity .personalized-result-page .personalized-footer-disclosures > * { min-width: 0; margin: 0; border-radius: 20px; }
.brand-continuity .personalized-result-page .personalized-footer-disclosures > :not(details) { padding: 1.5rem; }
.brand-continuity .personalized-result-page .personalized-footer-disclosures > details { grid-column: 1 / -1; }
.brand-continuity .personalized-result-page .decision-method__body { padding: 0 1.25rem 1.25rem; }
.brand-continuity .personalized-result-page .quick-result-facts { grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); }

@media (max-width: 64rem) {
  .brand-continuity .personalized-result-page .personalized-overview { gap: 1.5rem; }
  .brand-continuity .personalized-result-page .strategy-card__body { padding: 1rem; }
  .brand-continuity .personalized-result-page .personalized-spending-strategy__content { grid-template-columns: minmax(0, .55fr) minmax(0, 1fr); gap: 1.25rem; }
  .brand-continuity .personalized-result-page .personalized-allocation-row { grid-template-columns: 2rem minmax(0, 1fr) auto; }
  .brand-continuity .personalized-result-page .personalized-allocation-row > b { grid-column: 3; }
  .brand-continuity .personalized-result-page .personalized-allocation-row__card { grid-column: 2 / -1; grid-row: 2; }
}
@media (max-width: 48rem) {
  .brand-continuity .personalized-result-page { padding-block: .75rem 2rem; }
  .brand-continuity .personalized-result-page .personalized-overview { grid-template-columns: minmax(0, 1fr); padding: 1.5rem; }
  .brand-continuity .personalized-result-page .personalized-financial-card { min-height: 11rem; padding: 1.5rem; }
  .brand-continuity .personalized-result-page .personalized-overview__actions { flex-direction: column; align-items: stretch; }
  .brand-continuity .personalized-result-page .personalization-share-preview__body { position: static; width: 100%; margin-top: .75rem; box-sizing: border-box; }
  .brand-continuity .personalized-result-page .personalized-section-nav a { flex-basis: calc(50% - .25rem); }
  .brand-continuity .personalized-result-page .strategy-scenario__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .brand-continuity .personalized-result-page .strategy-scenario__fact { padding: .75rem; }
  .brand-continuity .personalized-result-page :is(.personalized-portfolio-grid, .personalized-portfolio-grid--1 .strategy-card, .personalized-spending-strategy__content, .personalized-dashboard__explanations, .strategy-apply-now, .personalized-footer-disclosures) { grid-template-columns: minmax(0, 1fr); }
  .brand-continuity .personalized-result-page .personalized-portfolio-grid--1 .strategy-card__visual { border-radius: 19px 19px 0 0; }
  .brand-continuity .personalized-result-page .strategy-card__body { padding: 1.25rem; }
  .brand-continuity .personalized-result-page .personalized-donut-wrap { min-height: 0; padding: .5rem; }
  .brand-continuity .personalized-result-page .personalized-donut { width: 12rem; }
  .brand-continuity .personalized-result-page .personalized-section-heading { flex-direction: column; }
  .brand-continuity .personalized-result-page .strategy-trust { flex-direction: column; }
  .brand-continuity .personalized-result-page .useful-guides-block .card-section-heading { grid-template-columns: minmax(0, 1fr); align-items: start; }
}
@media (max-width: 23rem) {
  .brand-continuity .personalized-result-page .strategy-scenario__facts { grid-template-columns: minmax(0, 1fr); }
  .brand-continuity .personalized-result-page .strategy-frontier__facts > div { grid-template-columns: minmax(0, 1fr); gap: .25rem; }
  .brand-continuity .personalized-result-page .strategy-frontier__facts dd { max-width: none; text-align: left; }
  .brand-continuity .personalized-result-page .personalized-return-detail dl > div { flex-wrap: wrap; }
}
@media print {
  .brand-continuity .personalized-result-page .personalized-section-nav { display: none; }
  .brand-continuity .personalized-result-page .personalized-overview { background: #fff; border: 1px solid var(--ciq-border); box-shadow: none; }
  .brand-continuity .personalized-result-page .personalized-overview :is(h1, p, li, span, strong) { color: var(--ciq-ink); }
}
