/* Help at Home page. All rules stay inside this page's main element. */
.help-home-page {
  --help-ink: #183d32;
  --help-ink-soft: #34574a;
  --help-body: #35483e;
  --help-muted: #647267;
  --help-evergreen: #245641;
  --help-evergreen-dark: #173d2e;
  --help-moss: #71815a;
  --help-paper: #fffdf7;
  --help-sage: #e9eee3;
  --help-line: #d5ddce;
  --help-shadow: 0 18px 44px rgba(28, 55, 39, .09);
  max-width: 1240px;
  margin: 0 auto;
  padding: 28px 32px 76px;
  color: var(--help-body);
  font-size: 17px;
  line-height: 1.65;
  overflow-wrap: break-word;
}

.help-home-page *, .help-home-page *::before, .help-home-page *::after { box-sizing: border-box; }
.help-home-page :where(img, svg, video, canvas) { max-width: 100%; }
.help-home-page :where(h1, h2, h3, h4) { color: var(--help-ink); font-family: Georgia, 'Times New Roman', serif; font-weight: 400; letter-spacing: -.035em; line-height: 1.12; }
.help-home-page h1 { font-size: clamp(2.65rem, 5.2vw, 4.8rem); }
.help-home-page h2 { font-size: clamp(2rem, 3.6vw, 3.15rem); }
.help-home-page h3 { font-size: clamp(1.35rem, 2.2vw, 1.75rem); }
.help-home-page p { max-width: 68ch; }
.help-home-page a { color: var(--help-evergreen); text-underline-offset: .18em; }
.help-home-page :where(a, button, input, textarea, select, summary):focus-visible { outline: 3px solid #b36a46; outline-offset: 4px; }
.help-home-page :where(.help-hero-actions a, .help-public a) { min-height: 44px; }

.help-home-page .help-hero {
  position: relative; display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(280px, .97fr);
  align-items: center; gap: clamp(32px, 5vw, 72px); padding: clamp(34px, 6vw, 76px);
  border: 1px solid #e3e4d7; border-radius: 18px;
  background: radial-gradient(ellipse at 8% 0%, #f0f2e6 0, transparent 42%), linear-gradient(135deg, #fbf8ef 0%, #f2f0e4 100%);
  box-shadow: var(--help-shadow); overflow: hidden;
}
.help-home-page .help-hero-copy { position: relative; z-index: 1; min-width: 0; }
.help-home-page .help-hero-copy > :first-child { margin-top: 0; }
.help-home-page .help-hero-copy h1 { max-width: 12ch; margin: 0 0 22px; }
.help-home-page .help-hero-copy p { color: #43574a; font-size: clamp(17px, 1.5vw, 20px); }
.help-home-page .help-hero-copy .eyebrow, .help-home-page .help-hero-copy .help-eyebrow { margin: 0 0 16px; color: #60714d; font: 700 12px/1.5 Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.help-home-page .help-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 27px 0 0; }
.help-home-page .help-hero-actions a {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 12px 20px;
  border: 1px solid var(--help-evergreen); border-radius: 6px; background: var(--help-evergreen); color: #fff;
  font: 700 15px/1.35 Arial, sans-serif; text-align: center; text-decoration: none; transition: background-color .18s ease, transform .18s ease;
}
.help-home-page .help-hero-actions a:hover { background: #173d2e; transform: translateY(-1px); }
.help-home-page .help-hero-actions a + a { background: transparent; color: #173d2e; }
.help-home-page .help-hero-actions a + a:hover { background: #e5eadf; }
.help-home-page .help-hero-note { margin: 18px 0 0; color: var(--help-muted); font-size: 13px; line-height: 1.55; }
.help-home-page .help-hero-photo { position: relative; min-width: 0; margin: 0; }
.help-home-page .help-hero-photo img { display: block; width: 100%; height: clamp(280px, 38vw, 465px); object-fit: cover; object-position: center; border: 7px solid rgba(255,253,247,.82); border-radius: 48% 48% 10px 10px / 34% 34% 10px 10px; box-shadow: 0 14px 34px rgba(28,55,39,.15); }
.help-home-page .help-hero-photo::after { position: absolute; z-index: -1; right: -18px; bottom: -18px; width: 72%; height: 78%; border: 1px solid #bbc8ae; border-radius: 48% 48% 10px 10px / 34% 34% 10px 10px; content: ''; }

.help-home-page .help-start, .help-home-page .help-quote, .help-home-page .help-prep, .help-home-page .help-public, .help-home-page .help-pack, .help-home-page .help-interest { margin-top: clamp(58px, 8vw, 100px); }
.help-home-page .help-section-heading { max-width: 760px; margin: 0 auto 34px; text-align: center; }
.help-home-page .help-section-heading > :first-child { margin-top: 0; }
.help-home-page .help-section-heading h2 { margin: 0 0 14px; }
.help-home-page .help-section-heading p { margin: 0 auto; color: var(--help-muted); }
.help-home-page .help-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.help-home-page .help-step { min-width: 0; padding: 28px 26px 30px; border: 1px solid var(--help-line); border-radius: 10px; background: var(--help-paper); box-shadow: 0 8px 24px rgba(28,55,39,.045); }
.help-home-page .help-step-number { display: grid; place-items: center; width: 38px; height: 38px; margin-bottom: 22px; border: 1px solid #b4c3a8; border-radius: 50%; background: #e9eee3; color: #245641; font: 700 14px/1 Arial,sans-serif; }
.help-home-page .help-step-icon { display: block; margin: 0 0 12px; color: #71815a; font-size: 28px; line-height: 1; }
.help-home-page .help-step h3 { margin: 0 0 12px; }
.help-home-page .help-step p { margin: 0; color: #536257; font-size: 15px; }

.help-home-page .help-quote { padding: clamp(30px, 5vw, 56px); border: 1px solid #e4dac8; border-radius: 12px; background: linear-gradient(125deg, #f4eddf, #fbf8ef 75%); }
.help-home-page .help-quote-intro { display: grid; grid-template-columns: minmax(0,.78fr) minmax(0,1.22fr); gap: 32px; align-items: center; }
.help-home-page .help-quote-intro blockquote { margin: 0; color: #183d32; font: italic clamp(1.5rem,3vw,2.35rem)/1.28 Georgia,serif; letter-spacing: -.025em; }
.help-home-page .help-quote-intro p { margin: 0; color: #526052; }
.help-home-page .help-quote-factors { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 32px; }
.help-home-page .help-quote-factors > * { min-width: 0; padding: 16px 18px; border: 1px solid #ddd4c3; border-radius: 7px; background: rgba(255,253,247,.68); color: #465747; font-size: 14px; }
.help-home-page .help-quote-factors strong { display: block; margin-bottom: 4px; color: #245641; font-size: 15px; }

.help-home-page .help-prep { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(30px,5vw,68px); align-items: center; }
.help-home-page .help-prep h2 { margin: 0 0 16px; }
.help-home-page .help-prep ul { margin: 20px 0 0; padding-left: 1.2em; }
.help-home-page .help-prep li { padding: 0 0 9px 5px; }
.help-home-page .help-prep li::marker { color: #71815a; }
.help-home-page .help-public { padding: clamp(28px,4.5vw,48px); border-radius: 12px; background: #e9eee3; }
.help-home-page .help-public .help-section-heading { margin: 0 0 22px; text-align: left; }
.help-home-page .help-public .help-section-heading p { margin-left: 0; }
.help-home-page .help-public ul[data-help-resources] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.help-home-page .help-public ul[data-help-resources] li { min-width: 0; }
.help-home-page .help-public ul[data-help-resources] a { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; padding: 14px 17px; border: 1px solid #c6d2be; border-radius: 6px; background: #fffdf7; font-weight: 700; text-decoration: none; }
.help-home-page .help-public ul[data-help-resources] a::after { content: '↗'; flex: 0 0 auto; color: #71815a; font-size: 18px; }
.help-home-page .help-public ul[data-help-resources] a:hover { border-color: #245641; background: #fff; }

.help-home-page .help-pack { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.82fr); gap: clamp(30px,6vw,80px); align-items: center; }
.help-home-page .help-pack-copy h2 { margin: 0 0 16px; }
.help-home-page .help-pack-preview { width: min(100%,480px); justify-self: center; padding: 18px; border: 1px solid #c9d2c2; border-radius: 8px; background: #e8ece2; box-shadow: var(--help-shadow); transform: rotate(1.4deg); }
.help-home-page .help-paper { min-height: 300px; padding: clamp(22px,4vw,38px); border: 1px solid #e3dfd0; background: #fffef9; box-shadow: 0 4px 12px rgba(28,55,39,.07); color: #34443a; }
.help-home-page .help-paper-kicker { margin: 0 0 20px; color: #71815a; font: 700 10px/1.4 Arial,sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.help-home-page .help-paper-header { padding-bottom: 15px; border-bottom: 2px solid #183d32; }
.help-home-page .help-paper-header h3 { margin: 0; font-size: clamp(1.45rem,2.5vw,2rem); }
.help-home-page .help-paper-header p { margin: 7px 0 0; color: #647267; font-size: 12px; }
.help-home-page .help-paper-row { display: grid; grid-template-columns: minmax(94px,.42fr) minmax(0,1fr); gap: 12px; padding: 14px 0; border-bottom: 1px solid #e6e3d8; font-size: 12px; }
.help-home-page .help-paper-row strong { color: #245641; }
.help-home-page .help-paper-row span { color: #697269; }

.help-home-page .help-interest { display: grid; grid-template-columns: minmax(0,1fr) minmax(250px,.74fr); gap: clamp(28px,5vw,68px); align-items: center; padding: clamp(30px,5vw,60px); border-radius: 14px; background: #173d2e; color: #eef2e9; }
.help-home-page .help-interest :where(h2,h3) { color: #fffdf7; }
.help-home-page .help-interest-copy h2 { margin: 0 0 16px; }
.help-home-page .help-interest-copy p { color: #e0e9de; }
.help-home-page .help-interest-urgent { padding: 19px 20px; border-left: 3px solid #d2a37d; background: rgba(255,255,255,.08); color: #f1eee4; font-size: 14px; }
.help-home-page .help-interest-urgent p { margin: 0; }
.help-home-page .help-interest-action { margin-top: 20px; }
.help-home-page .help-interest a { color: #fffdf7; }

@media (max-width: 850px) {
  .help-home-page { padding: 20px 22px 58px; }
  .help-home-page .help-hero { grid-template-columns: minmax(0,1fr) minmax(240px,.8fr); gap: 28px; padding: 38px; }
  .help-home-page .help-steps { gap: 12px; }
  .help-home-page .help-step { padding: 23px 20px; }
  .help-home-page .help-prep { gap: 30px; }
}
@media (max-width: 640px) {
  .help-home-page { padding: 15px 16px 46px; font-size: 16px; }
  .help-home-page .help-hero { grid-template-columns: minmax(0,1fr); gap: 27px; padding: 30px 24px 26px; border-radius: 12px; }
  .help-home-page .help-hero-copy h1 { max-width: 13ch; font-size: clamp(2.55rem,12vw,3.7rem); }
  .help-home-page .help-hero-copy p { font-size: 17px; }
  .help-home-page .help-hero-actions { display: grid; grid-template-columns: minmax(0,1fr); }
  .help-home-page .help-hero-actions a { width: 100%; }
  .help-home-page .help-hero-photo { width: min(100%,430px); justify-self: center; }
  .help-home-page .help-hero-photo img { height: min(78vw,360px); min-height: 250px; }
  .help-home-page .help-start, .help-home-page .help-quote, .help-home-page .help-prep, .help-home-page .help-public, .help-home-page .help-pack, .help-home-page .help-interest { margin-top: 58px; }
  .help-home-page .help-section-heading { margin-bottom: 24px; text-align: left; }
  .help-home-page .help-steps { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .help-home-page .help-step { display: grid; grid-template-columns: 40px minmax(0,1fr); column-gap: 15px; padding: 21px; }
  .help-home-page .help-step-number { grid-row: span 2; margin: 0; }
  .help-home-page .help-step-icon { display: none; }
  .help-home-page .help-step h3 { align-self: center; margin: 0 0 8px; }
  .help-home-page .help-quote { padding: 26px 22px; }
  .help-home-page .help-quote-intro, .help-home-page .help-prep, .help-home-page .help-pack, .help-home-page .help-interest { grid-template-columns: minmax(0,1fr); }
  .help-home-page .help-quote-intro { gap: 17px; }
  .help-home-page .help-quote-factors { grid-template-columns: minmax(0,1fr); gap: 8px; margin-top: 21px; }
  .help-home-page .help-quote-factors > * { padding: 13px 15px; }
  .help-home-page .help-public { padding: 26px 21px; }
  .help-home-page .help-public .help-section-heading { margin-bottom: 18px; }
  .help-home-page .help-public ul[data-help-resources] { grid-template-columns: minmax(0,1fr); }
  .help-home-page .help-public ul[data-help-resources] a { min-height: 58px; }
  .help-home-page .help-pack-preview { width: min(100%,430px); }
  .help-home-page .help-paper { min-height: 0; padding: 22px; }
  .help-home-page .help-interest { gap: 20px; padding: 28px 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .help-home-page *, .help-home-page *::before, .help-home-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Match the actual Help at Home markup. */
.help-home-page .eyebrow { color:#687952; font:700 12px/1.5 Arial,sans-serif; letter-spacing:.14em; text-transform:uppercase; }
.help-home-page .help-steps { list-style:none; margin:0; padding:0; }
.help-home-page .help-step { display:flex; flex-direction:column; align-items:flex-start; }
.help-home-page .help-step-icon { width:46px; height:46px; flex:0 0 auto; margin:0 0 18px; }
.help-home-page .help-step p { flex:1; }
.help-home-page .help-step a { display:inline-flex; align-items:center; gap:5px; min-height:44px; margin-top:19px; font-size:15px; font-weight:700; line-height:1.35; }
.help-home-page .help-quote-intro { display:block; max-width:780px; }
.help-home-page .help-quote-intro .eyebrow { margin:0 0 10px; color:#65744f; }
.help-home-page .help-quote-intro h2 { margin:0 0 16px; }
.help-home-page .help-quote-intro p { margin:0 0 15px; max-width:65ch; }
.help-home-page .help-quote-intro a { display:inline-flex; align-items:center; min-height:44px; margin-top:4px; font-weight:700; }
.help-home-page .help-quote-factors { grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.help-home-page .help-quote-factors > div { display:flex; flex-direction:column; align-items:flex-start; padding:20px; }
.help-home-page .help-quote-factors span { display:grid; place-items:center; width:38px; height:38px; margin:0 0 18px; border:1px solid #b8c6a8; border-radius:50%; background:#e9eee3; color:#245641; font:500 22px/1 Georgia,serif; }
.help-home-page .help-quote-factors strong { margin:0 0 5px; font-size:16px; }
.help-home-page .help-quote-factors small { color:#536257; font-size:13px; line-height:1.45; }
.help-home-page .help-prep figure { min-width:0; margin:0; }
.help-home-page .help-prep img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:10px 80px 10px 10px; box-shadow:var(--help-shadow); }
.help-home-page .help-prep p { color:#536257; }
.help-home-page .help-prep .button { display:inline-flex; align-items:center; min-height:48px; margin-top:12px; text-decoration:none; }
.help-home-page .help-public ul[data-help-resources] li { padding:16px 18px; border:1px solid #c6d2be; border-radius:7px; background:#fffdf7; color:#536257; font-size:14px; line-height:1.45; }
.help-home-page .help-public ul[data-help-resources] a { min-height:44px; margin:0 0 4px; padding:0; border:0; background:transparent; font-size:17px; line-height:1.3; }
.help-home-page .help-public ul[data-help-resources] a:hover { border:0; background:transparent; text-decoration:underline; }
.help-home-page .help-public .metric-note { margin:14px 0 0; color:#647267; font-size:12px; }

.help-home-page .help-pack-copy > p:not(.eyebrow) { color:#536257; }
.help-home-page .help-pack-copy > .button { display:inline-flex; align-items:center; min-height:48px; margin-top:8px; text-decoration:none; }
.help-home-page .help-pack-copy > .optional-details { max-width:600px; margin-top:22px; border-radius:7px; }
.help-home-page .help-paper-kicker { display:block; margin-bottom:8px; }
.help-home-page .help-paper > strong { display:block; max-width:16ch; margin-bottom:23px; color:#183d32; font:400 clamp(1.55rem,2.6vw,2.2rem)/1.1 Georgia,serif; letter-spacing:-.035em; }
.help-home-page .help-paper-header, .help-home-page .help-paper-row { display:grid; grid-template-columns:minmax(90px,1.15fr) repeat(2,minmax(0,.8fr)); gap:8px; align-items:center; }
.help-home-page .help-paper-header { padding:9px 0; border-top:2px solid #284e3a; border-bottom:1px solid #c8d3c1; color:#284e3a; font:700 10px/1.3 Arial,sans-serif; }
.help-home-page .help-paper-row { padding:11px 0; }
.help-home-page .help-paper-row span { color:#536257; font:400 11px/1.3 Arial,sans-serif; }
.help-home-page .help-paper-row i { display:block; width:100%; border-bottom:1px solid #bccabc; }
.help-home-page .help-interest-action { margin:0; }
.help-home-page .help-interest-action > p { margin:0 0 18px; color:#e0e9de; }
.help-home-page .help-interest-action > .optional-details { padding:18px 20px; border:1px solid #9fb29d; border-radius:8px; background:#f4f5ec; color:#203f35; }
.help-home-page .help-interest-action > .optional-details summary { color:#203f35; font-weight:700; cursor:pointer; }
.help-home-page .help-interest-action :where(form,label,legend,fieldset,p,a) { color:#203f35; }
.help-home-page .help-interest-action form { margin-top:16px; }
.help-home-page .help-interest-action form a { color:#245641; text-decoration:underline; }
.help-home-page .help-interest-action [data-growth-form] button[type=submit] { min-height:48px; }
.help-home-page .help-interest-copy .eyebrow { color:#bfcbaa; }
@media (max-width:850px) {
  .help-home-page .help-quote-factors { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .help-home-page .help-step { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:start; }
  .help-home-page .help-step-number { grid-column:1; grid-row:1; }
  .help-home-page .help-step-icon { display:none; }
  .help-home-page .help-step :where(h3,p,a) { grid-column:2; }
  .help-home-page .help-step h3 { margin-bottom:8px; }
  .help-home-page .help-step a { margin-top:14px; }
  .help-home-page .help-quote-factors { grid-template-columns:minmax(0,1fr); }
  .help-home-page .help-prep img { border-radius:10px 48px 10px 10px; }
  .help-home-page .help-paper-header, .help-home-page .help-paper-row { grid-template-columns:minmax(78px,1.15fr) repeat(2,minmax(0,.8fr)); }
}

/* Maintain readable small text on the light green and paper surfaces. */
.help-home-page .help-public .eyebrow,
.help-home-page .help-public .help-section-heading p,
.help-home-page .help-public .metric-note,
.help-home-page .help-pack-copy > .eyebrow,
.help-home-page .help-paper-kicker { color:#405a46; }

/* Keep each step icon opposite its number on all screen sizes. */
.help-home-page .help-step-top { display:flex; align-items:flex-start; justify-content:space-between; width:100%; margin-bottom:18px; }
.help-home-page .help-step-top .help-step-number,
.help-home-page .help-step-top .help-step-icon { margin:0; }
@media (max-width:640px) {
  .help-home-page .help-step { display:flex; flex-direction:column; align-items:stretch; }
  .help-home-page .help-step-top .help-step-icon { display:block; }
}

/* Readable excerpt from the actual free comparison pack. */
.help-home-page .pack-source-preview { margin:0; padding:20px; transform:none; background:#fffef9; }
.help-home-page .pack-source-preview table { width:100%; table-layout:fixed; border-collapse:collapse; font:14px/1.4 Arial,sans-serif; }
.help-home-page .pack-source-preview caption { margin-bottom:14px; text-align:left; color:#183d32; font:24px/1.2 Georgia,serif; }
.help-home-page .pack-source-preview th, .help-home-page .pack-source-preview td { padding:10px 8px; border:1px solid #8e9d87; overflow-wrap:anywhere; text-align:left; }
.help-home-page .pack-source-preview th:first-child { width:44%; }
.help-home-page .pack-source-preview thead { background:#e9eee3; }
.help-home-page .pack-source-preview figcaption { margin-top:14px; color:#405a46; font-size:14px; line-height:1.5; }
@media (max-width:400px) { .help-home-page .pack-source-preview { padding:12px; } .help-home-page .pack-source-preview th, .help-home-page .pack-source-preview td { padding:9px 6px; } }

.help-home-page .help-pack { row-gap:22px; }
.help-home-page .help-pack > .optional-details { grid-column:1 / -1; width:100%; max-width:600px; margin:0; border-radius:7px; }
