/* Only loaded by 04-connectme.html. Shared variants keep their existing design. */
body { background:#eeeee8; }
.guide-page { padding-top:32px; }
.guide-title { margin-bottom:32px; }
.guide-title h1 { font-size:48px; line-height:1.08; letter-spacing:-.045em; }
.guide-title p, .combined-heading p, .recommendation-intro p,
.recommendation > p, .question-stage > .muted, .question-result-copy,
.offer-main p, .result-heading p, .combined-map-status p { font-size:14px; line-height:1.5; }
.guide-title .eyebrow, .combined-guide .eyebrow, .combined-guide .mono,
.combined-guide .offer-meta, .combined-guide .pill, .combined-guide .reason,
.combined-guide .small, .combined-guide .choice small,
.combined-guide .filter-field label, .combined-guide .map-caption,
.combined-guide .source-note, .combined-guide .answer-history button,
.combined-guide .map-legend button { font-size:12px; line-height:1.5; }
.combined-guide .text-button, .combined-guide .primary, .combined-guide .secondary,
.combined-guide .category-tabs button, .combined-guide .filter-field input,
.combined-guide .filter-field select { font-size:14px; }
.combined-section { padding:32px; margin-bottom:28px; border-top:4px solid var(--coral); }
.combined-section + .combined-section { padding-top:32px; }
#combined-recommendations { background:#faf8f3; }
.combined-heading { margin-bottom:24px; }
.combined-heading h2 { font-size:32px; line-height:1.15; letter-spacing:-.04em; }
.combined-heading .eyebrow { font-weight:750; margin-bottom:8px; }
.recommendation-intro { border-top:0; padding:0 0 24px; align-items:flex-start; }
.recommendation-intro .pill { white-space:nowrap; }
.combined-guide .recommendations { border-color:var(--line); grid-template-rows:repeat(6,auto); }
/* All six rows are shared across the three proposals, including the reason divider. */
.combined-guide .recommendation { display:grid; grid-row:span 6; grid-template-rows:subgrid; gap:0; min-height:0; padding:24px; }
.combined-guide .recommendation:first-child { padding-left:0; }
.combined-guide .recommendation:last-child { padding-right:0; }
.combined-guide .rec-top { margin-bottom:24px; }
.combined-guide .rec-number { font-size:24px; font-weight:750; color:var(--green); }
.combined-guide .recommendation h2, .combined-guide .choice strong,
.combined-guide .question-stage h2, .combined-guide .offer-main h3,
.combined-guide .result-heading h2 { font-size:24px; line-height:1.2; letter-spacing:-.035em; }
.combined-guide .recommendation h2 { margin:0 0 16px; }
.combined-guide .recommendation > p { margin:0 0 24px; }
.combined-guide .recommendation .reason { margin:0; padding-top:16px; }
.combined-guide .recommendation .text-button { justify-self:start; align-self:end; margin-top:16px; }
.combined-guide .save-button[aria-pressed=true] { background:var(--green); color:white; border-color:var(--green); }
#combined-questions { background:var(--green); color:#faf8f3; border-top:4px solid var(--coral); }
#combined-questions .combined-heading p, #combined-questions .eyebrow,
#combined-questions .question-stage > .muted, #combined-questions .question-result-copy,
#combined-questions .answer-history button, #combined-questions .answer-history button::before,
#combined-questions .question-rail .muted { color:#cfddd6; }
#combined-questions .question-layout, #combined-questions .question-rail { border-color:#648378; }
#combined-questions .question-progress span { background:#648378; }
#combined-questions .question-progress span.done { background:var(--coral); }
#combined-questions .choice { background:#faf8f3; color:var(--ink); border-color:#faf8f3; }
#combined-questions .choice .mono, #combined-questions .choice small { color:var(--muted); }
#combined-questions .choice:hover { background:var(--coral); border-color:var(--coral); }
#combined-questions .question-stage h2 { margin-top:8px; }
#combined-questions .pill { border-color:#648378; }
#combined-questions .primary { background:var(--coral); color:var(--ink); border-color:var(--coral); }
#combined-questions .secondary { border-color:#cfddd6; }
#combined-questions :focus-visible { outline-color:#ffc3ac; }
#combined-map { background:#e0e8e4; border-top:4px solid var(--green); margin-bottom:0; }
#combined-map .combined-map-status { border:0; border-left:3px solid var(--green); background:#f3f7f4; padding:12px 16px; }
#combined-map .filter-field input, #combined-map .filter-field select { background:#f3f7f4; }
#combined-map .offer-list { max-height:720px; }
@media(max-width:1000px) {
  .combined-section { padding:24px; }
  .combined-guide .recommendation { padding-inline:16px; }
}
@media(max-width:800px) {
  .guide-title h1 { font-size:32px; }
  .combined-heading h2 { font-size:32px; }
  .combined-guide .recommendations { grid-template-columns:1fr; grid-template-rows:none; }
  .combined-guide .recommendation { display:flex; grid-row:auto; padding:24px 0; border-left:0; }
  .combined-guide .recommendation + .recommendation { border-top:1px solid var(--line); }
  .combined-guide .recommendation .text-button { align-self:flex-start; }
  #combined-map .offer-list { max-height:none; }
}
@media(max-width:520px) {
  .combined-section, .combined-section + .combined-section { padding:24px 16px; }
  .combined-section { margin-inline:-4px; }
  .combined-heading h2 { font-size:24px; }
  .combined-guide .question-stage h2 { font-size:24px; }
  .combined-guide .rec-top { margin-bottom:16px; }
  .combined-guide .recommendation h2 { max-width:none; }
  .combined-guide .recommendation-intro .pill { margin-top:12px; }
  .combined-guide .filter-field { min-width:0; flex-basis:100%; }
  .combined-guide .map-tools { flex-wrap:wrap; }
  .combined-guide .map-tools .mono { max-width:none; }
}
