/* Shared member journey finish. Loaded after each page's functional styles. */
:root {
  --bg: #f5f4ef; --base: #f5f4ef; --surface: #fff; --surface-2: #eef2e8; --raised: #f3f6ed;
  --accent: #345d43; --accent-hover: #22462f; --accent-ink: #fff; --accent-soft: #eaf0e2; --accent-line: #c5d5b9;
  --molten: #345d43; --molten-hover: #22462f; --honey: #345d43; --honey-soft: #eaf0e2; --trust-blue: #345d43;
  --text: #243327; --text-2: #5f6d5b; --text-3: #71806a; --line: #dbe3d2; --line-strong: #cbd8bf; --hairline: #dbe3d2;
  --good: #345d43; --success: #345d43; --warn: #875b17; --bad: #9b3f2d;
  --font: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --display: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --shadow: 0 1px 1px #24382708, 0 18px 48px -36px #24382755;
  --shadow-lift: 0 2px 5px #24382708, 0 24px 48px -30px #24382744;
}
.journey-page { background: var(--bg); color: var(--text); font-family: var(--font); -webkit-font-smoothing: antialiased; overflow-wrap: anywhere; }
.journey-page h1, .journey-page h2, .journey-page h3 { font-family: var(--display); font-weight: 550; letter-spacing: -.05em; line-height: 1.12; }
.journey-page p { line-height: 1.8; }
.journey-page a { color: var(--accent); }
.journey-page a:focus-visible, .journey-page button:focus-visible, .journey-page summary:focus-visible { outline: 3px solid #78966a; outline-offset: 4px; }
.journey-page .brand, .journey-page .brand-mark { color: var(--text); font-family: var(--font); font-size: 16px; font-weight: 650; letter-spacing: -.025em; text-transform: none; text-decoration: none; }
.journey-page .btn, .journey-page .btn-honey, .journey-page .btn-ghost { border-radius: 13px; min-height: 48px; }
.journey-page .btn-primary, .journey-page .btn-honey, .journey-manage #go { background: linear-gradient(180deg, #456d4f, #345d43); color: #fff; border: 1px solid #345d43; box-shadow: 0 1px 0 #ffffff26 inset, 0 4px 8px #24442a14; }
.journey-page .btn-primary:hover, .journey-page .btn-honey:hover, .journey-manage #go:hover { background: #345d43; box-shadow: 0 7px 16px -10px #24442a66; filter: none; }
.journey-page .btn-ghost { background: linear-gradient(180deg, #fff, #f8faf4); color: #4b6841; border-color: #cedbc3; box-shadow: 0 1px 0 #fff inset; }
.journey-page .btn:disabled, .journey-page button:disabled { transform: none; box-shadow: none; }
.journey-page input, .journey-page textarea, .journey-page select, .journey-page .timepick select { background-color: #fbfcf8; color: var(--text); border: 1px solid #d4dfc9; box-shadow: 0 1px 0 #fff; }
.journey-page input:focus, .journey-page textarea:focus, .journey-page select:focus, .journey-page .timepick select:focus { background-color: #fff; border-color: #7e9c6e; outline: 3px solid #e4eddb; outline-offset: 1px; box-shadow: none; }
.journey-page input[readonly] { background: #eff3e9; }
.journey-page input::placeholder, .journey-page textarea::placeholder { color: #829078; }
.journey-page input[type=checkbox] { width: 20px; height: 20px; box-shadow: none; accent-color: var(--accent); }
.journey-page .book-shell { max-width: 680px; padding-top: clamp(30px, 7vw, 64px); }
.journey-page .book-head h1 { font-size: clamp(2.55rem, 8vw, 3.8rem); letter-spacing: -.065em; }
.journey-page .book-head .lead { font-size: 16px; line-height: 1.85; }
.journey-page .book-card, .journey-page .ok, .journey-manage .card { background: #fff; border: 1px solid #dbe3d2; border-radius: 24px; box-shadow: var(--shadow); }
.journey-page .book-card { padding: clamp(22px, 5vw, 36px); }
.journey-page .reassure { font-size: 12px; color: #637658; border-color: #d7e1cd; background: #f5f8ef; }
.journey-page .reassure::before { box-shadow: none; background: #789868; }
.journey-page .slot { border-radius: 14px; background: linear-gradient(160deg, #f7faf1, #fdfefb); border-color: #dce5d2; box-shadow: 0 1px 0 #fff inset; }
.journey-page .slot:hover { background: #f4f8ec; border-color: #c1d3b0; }
.journey-page .slot.sel, .journey-page .slot:has(.slot-radio:checked) { background: #eaf2df; border-color: #8eac77; box-shadow: 0 0 0 1px #b5caa5; }
.journey-page .slot:focus-within { box-shadow: 0 0 0 3px #dce9d0; }
.journey-page .slot .dot { border-color: #b9caaa; }
.journey-page .slot.sel .dot { border-color: #678a50; background: #678a50; }
.journey-page .slot .d { font-size: 15px; font-weight: 600; }
.journey-page .slot .t { font-size: 12px; }
.journey-page .empty { background: #f7faf2; border-color: #d6e1cb; border-radius: 16px; }
.journey-page .book-foot, .journey-page .ob-foot { font-size: 12px; line-height: 1.85; }
.journey-page .privacy-note, .journey-page .defer-note { font-size: 12px; line-height: 1.8; }
.journey-page .ok-mark { background: #edf3e4; border-color: #d1e0c3; box-shadow: 0 1px 0 #fff inset; }
.journey-page .ok-mark::after { border-color: #63894d; }
.journey-page .safeguarding-message { white-space: pre-wrap; text-align: left; margin: 24px auto; padding: 20px; max-width: 540px; background: #faf3e1; border: 1px solid #e5d8b8; border-radius: 14px; color: #71562a; font-size: 16px; line-height: 1.8; }
.journey-page > #done { width: calc(100% - 32px); max-width: 600px; margin: 32px auto; }
.journey-page .ok-when { background: #f2f7e9; border-color: #dce7d0; }
.journey-page .ob-aside { background: linear-gradient(145deg, #edf2e3, #f5f7ee); border-color: #d8e2cb; }
.journey-page .aside-head { letter-spacing: -.06em; font-weight: 550; }
.journey-page .aside-sub { font-size: 16px; line-height: 1.85; }
.journey-page .wiz-progress { background: #d7e2cb; height: 4px; }
.journey-page .wiz-progress i { background: #789768; }
.journey-page .q-label { font-weight: 550; letter-spacing: -.05em; }
.journey-page .q-help { line-height: 1.8; font-size: 15px; }
.journey-page .q-eyebrow { font-size: 11px; letter-spacing: .12em; }
.journey-page .opt, .journey-page .opt-none:hover { background: linear-gradient(160deg, #fff, #fbfdf8); border: 1px solid #dbe5d0; border-radius: 16px; box-shadow: 0 1px 0 #fff inset, 0 5px 12px -12px #34582b88; }
.journey-page .opt:hover { background: #f7fbf0; border-color: #b7cda4; }
.journey-page .opt.sel { background: #e9f1de; border-color: #8cab73; box-shadow: 0 0 0 1px #c4d6b4; }
.journey-page .opt .tick { border-color: #c1d2b1; }
.journey-page .opt.sel .tick { background: #6a8b54; border-color: #6a8b54; }
.journey-page .opt-none { border-style: dashed; background: transparent; box-shadow: none; }
.journey-page .flag-intro, .journey-page .consent9 { background: #edf4e5; border-color: #d0dfc2; }
.journey-page .terms, .journey-page .ack-group { background: #fff; border-color: #dbe5d0; border-radius: 16px; }
.journey-page .terms { color: #5c6e52; }
.journey-page .reflect-badge .n { color: #4e7640; background: none; -webkit-text-fill-color: currentColor; }
.journey-page .sk { background: linear-gradient(90deg, #eaf0e2 25%, #f7faf3 37%, #eaf0e2 63%); background-size: 400% 100%; }
.journey-manage { padding: 24px; }
.journey-manage .card { padding: clamp(26px, 6vw, 46px); max-width: 620px; }
.journey-manage .brand { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 24px; }
.journey-manage h1 { font-size: clamp(2rem, 6vw, 2.8rem); margin-bottom: 18px; }
.journey-manage p.sub { color: #617059; font-size: 15px; line-height: 1.85; }
.journey-manage #go { border-radius: 13px; font-size: 14px; min-height: 50px; }
.journey-manage .foot { color: #718268; font-size: 12px; line-height: 1.85; }
.journey-manage .foot a { color: #4b7040; }
.journey-manage .err { color: #9b3f2d; }
@media (min-width: 900px) {
  .journey-page .ob-split { min-height: 100dvh; max-width: 1280px; grid-template-columns: minmax(330px, 38%) minmax(0, 1fr); }
  .journey-page .ob-content { padding-top: 48px; padding-bottom: 48px; }
  .journey-page .q-label { font-size: clamp(2.2rem, 2.9vw, 2.8rem); }
  .journey-page .q-help { font-size: 16px; }
  .journey-page .opt { font-size: 16px; padding: 20px 22px; }
  .journey-page .ff input, .journey-page .ff textarea, .journey-page .timepick select { font-size: 17px; }
}
@media (max-width: 640px) {
  .journey-page .book-shell { padding: 28px 18px 44px; }
  .journey-page .brand-mark { margin-bottom: 32px; }
  .journey-page .book-head h1 { font-size: 2.6rem; }
  .journey-page .book-head .lead { font-size: 15px; }
  .journey-page .reassure { padding: 8px 12px; }
  .journey-page .book-card, .journey-page .ok { border-radius: 20px; }
  .journey-page .ob-aside { padding: 22px 20px 18px; }
  .journey-page .ob-aside .brand-mark { margin-bottom: 0; }
  .journey-page .ob-content { padding: 24px 20px 40px; }
  .journey-page .q-label { font-size: 1.8rem; }
  .journey-page .q-help { font-size: 14px; }
  .journey-page .opt { font-size: 15px; padding: 17px; }
  .journey-page .aside-meta, .journey-page .wiz-skip { font-size: 11px; }
  .journey-manage { padding: 16px; }
  .journey-manage .card { border-radius: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .journey-page *, .journey-page *::before, .journey-page *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .journey-page .reveal { opacity: 1 !important; transform: none !important; }
  .journey-page .btn:hover, .journey-page .slot:hover { transform: none; }
}
