/* The Fool's journey: an illustrated path and a quiet personal notebook. */
.journey-page { --journey-mint:#a5d7c4; --journey-violet:#c2b3eb; --journey-paper:#201a34; padding-bottom:40px; }
.journey-page h1,.journey-page h2,.journey-page h3 { font-family:var(--font-display); font-weight:450; line-height:1.18; }
.journey-page h1 { font-size:clamp(2.6rem,5vw,4.65rem); letter-spacing:-.055em; }
.journey-page h2 { font-size:clamp(1.6rem,3vw,2.35rem); letter-spacing:-.035em; }
.journey-page h3 { font-size:1.25rem; }
.journey-page p { max-width:68ch; }
.journey-overline { color:var(--gold-2); font-size:.9rem; margin-bottom:14px; }
.journey-lead { font-family:var(--font-display); font-size:clamp(1.15rem,2vw,1.45rem); line-height:1.6; color:var(--ink-2); margin-top:22px; }
.journey-intro { display:grid; grid-template-columns:1.08fr 1fr; align-items:center; min-height:680px; gap:30px; padding-top:75px; padding-bottom:65px; }
.journey-intro__copy { position:relative; z-index:2; }
.journey-intro__copy h1 { max-width:8ch; }
.journey-intro__text { color:var(--ink-2); margin:18px 0 22px; max-width:50ch!important; }
.journey-intro__facts { display:flex; flex-wrap:wrap; gap:12px 22px; color:var(--journey-violet); font-size:.9rem; margin-bottom:25px; }
.journey-intro__facts span { display:flex; align-items:center; gap:7px; }
.journey-local-note { margin-top:14px; font-size:.85rem; color:var(--ink-3); max-width:46ch!important; }
.journey-intro__art { position:relative; aspect-ratio:1; color:var(--gold); isolation:isolate; }
.journey-intro__art::before { content:""; position:absolute; inset:12%; border-radius:50%; background:radial-gradient(ellipse,rgba(160,133,219,.17),transparent 70%); filter:blur(20px); }
.journey-orbit { position:absolute; width:112%; height:112%; top:-6%; left:-6%; }
.journey-intro__card { position:absolute; top:17%; width:42%; filter:drop-shadow(0 25px 35px #03020788); }
.journey-intro__card .tcard { --w:100%; }
.journey-intro__card--start { left:18%; transform:rotate(-13deg); z-index:2; }
.journey-intro__card--end { left:48%; top:10%; transform:rotate(13deg); }
.journey-art-caption { position:absolute; left:0; bottom:1%; width:100%; color:var(--gold-2); text-align:center; font-family:var(--font-display); font-size:1.05rem; }
.journey-route { padding-top:40px; padding-bottom:65px; }
.journey-section-head { display:flex; justify-content:space-between; gap:40px; align-items:center; }
.journey-section-head>div { max-width:700px; }
.journey-section-head h2 { margin-bottom:12px; }
.journey-section-head p { color:var(--ink-2); }
.journey-counter { display:flex; align-items:center; gap:15px; flex-shrink:0; }
.journey-counter strong { font:400 4rem/1 var(--font-display); color:var(--gold-2); }
.journey-counter span { max-width:8ch; font-size:.85rem; }
.journey-progress-track { height:4px; margin-top:26px; border-radius:4px; background:var(--night-4); overflow:hidden; }
.journey-progress-track span { width:0; height:100%; display:block; background:linear-gradient(90deg,var(--journey-violet),var(--gold-2)); transition:width .5s var(--ease); }
.journey-legend { display:flex; gap:12px 22px; flex-wrap:wrap; margin:18px 0 38px; color:var(--ink-3); font-size:.8rem; }
.journey-legend span { display:flex; gap:7px; align-items:center; }
.journey-legend i { width:7px; height:7px; border-radius:50%; }
.journey-legend i.is-current { background:var(--gold); }
.journey-legend i.is-complete { background:var(--journey-mint); }
.journey-map { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:46px 22px; position:relative; }
.journey-map::before { content:""; position:absolute; inset:40px 3%; background:repeating-linear-gradient(180deg,transparent,transparent 300px,rgba(212,175,106,.11) 301px,transparent 302px); z-index:-1; }
.journey-node { position:relative; padding:10px 7px 17px; text-align:center; border-radius:100px 100px 14px 14px; transition:background .2s; display:flex; flex-direction:column; align-items:center; }
.journey-node:hover { background:rgba(194,179,235,.055); }
.journey-node__number { background:var(--night-2); border:1px solid var(--line-2); color:var(--ink-3); width:32px; height:32px; border-radius:50%; display:grid; place-items:center; font-size:.85rem; margin:0 auto 15px; position:relative; }
.journey-node__number>span { display:none; position:absolute; right:-6px; bottom:-2px; background:var(--journey-mint); width:17px; height:17px; border-radius:50%; color:#172b24; align-items:center; justify-content:center; }
.journey-node__card { width:100%; max-width:120px; transform:rotate(-3deg); transition:transform .3s var(--ease); }
.journey-node:nth-child(even) .journey-node__card { transform:rotate(3deg); }
.journey-node:hover .journey-node__card { transform:rotate(0); }
.journey-node__card .tcard { --w:100%; }
.journey-node h3 { font-family:var(--font-body); font-size:1rem; line-height:1.3; margin:17px 0 7px; }
.journey-node p { color:var(--ink-3); font-size:.8rem; line-height:1.4; }
.journey-node__state { font-size:.72rem; color:var(--ink-3); margin-top:auto; padding-top:11px; }
.journey-node.is-current { background:radial-gradient(ellipse at 50% 22%,rgba(212,175,106,.14),transparent 75%); }
.journey-node.is-current .journey-node__number { color:var(--cta-ink); background:var(--gold-2); border-color:var(--gold-2); }
.journey-node.is-current .journey-node__state { color:var(--gold-2); }
.journey-node.is-complete .journey-node__number { color:var(--journey-mint); border-color:#a5d7c455; }
.journey-node.is-complete .journey-node__number>span { display:flex; }
.journey-node.is-complete .journey-node__state { color:var(--journey-mint); }
.journey-node.is-future .journey-node__card { opacity:.72; filter:saturate(.65); }
.journey-summary { margin-top:15px; margin-bottom:65px; border:1px solid var(--line-gold); border-radius:32px; padding:clamp(25px,5vw,60px); background:radial-gradient(ellipse at 30% 0%,#45365544,transparent 60%),var(--night-2); }
.journey-summary__intro { max-width:650px; text-align:center; margin:0 auto 40px; }
.journey-summary__intro p { margin-top:16px; color:var(--ink-2); }
.journey-seal { display:grid; place-items:center; margin:0 auto 20px; border:1px solid var(--line-gold); width:72px; height:72px; border-radius:50%; color:var(--gold); }
.journey-resonance { display:grid; grid-template-columns:150px 1fr; gap:34px; max-width:690px; margin:auto; align-items:center; }
.journey-resonance .tcard { --w:150px; transform:rotate(-4deg); }
.journey-resonance h3 { font-size:2rem; margin-bottom:16px; }
.journey-resonance p:not(.journey-overline) { font-size:.95rem; color:var(--ink-2); margin-bottom:22px; }
.journey-summary__actions { display:flex; flex-wrap:wrap; gap:18px; align-items:center; border-bottom:1px solid var(--line-2); padding:35px 0 25px; margin-bottom:8px; }
.journey-summary__actions>span { font-size:.8rem; color:var(--ink-3); }
.journey-journal-collection details { border-bottom:1px solid var(--line); padding:15px 0; }
.journey-journal-collection summary { cursor:pointer; display:flex; gap:12px; font-weight:450; align-items:center; }
.journey-journal-collection summary span { color:var(--gold); font-size:.8rem; min-width:22px; }
.journey-journal-collection p { margin:10px 0 0 34px; font-size:.95rem; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--ink-2); }
.journey-journal-collection .journey-journal-question { color:var(--gold-2); font-family:var(--font-display); }
.journey-bottom { padding-top:15px; padding-bottom:20px; }
.journey-next-world { display:flex; justify-content:space-between; gap:25px; align-items:center; padding:38px 0; border-bottom:1px solid var(--line); }
.journey-next-world h2 { font-size:1.45rem; margin-bottom:10px; }
.journey-next-world p { color:var(--ink-3); font-size:.95rem; max-width:58ch; }
.journey-next-world .btn { flex-shrink:0; }
/* Individual lesson */
.journey-step-nav { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-top:35px; padding-bottom:15px; color:var(--ink-3); font-size:.88rem; }
.journey-step-nav>a { display:flex; align-items:center; gap:7px; }
.journey-step-nav>a:hover { color:var(--gold-2); }
.journey-step-nav>span { white-space:nowrap; }
.journey-step-hero { display:grid; grid-template-columns:1fr 1.2fr; align-items:center; gap:65px; padding-top:50px; padding-bottom:70px; }
.journey-study-art { overflow:clip; padding:20px 0; position:relative; display:grid; place-items:center; isolation:isolate; }
.journey-study-art::before { content:""; position:absolute; inset:-12% -8% 0; background:radial-gradient(ellipse,rgba(178,143,215,.16),transparent 70%); z-index:-1; }
.journey-study-orbit { position:absolute; inset:6% -7% 10%; border:1px solid var(--line-gold); border-radius:50%; transform:rotate(-22deg); z-index:-1; }
.journey-study-orbit::after { content:""; position:absolute; inset:-15px; border:1px dashed #d4af6a25; border-radius:50%; }
.journey-study-card { position:relative; width:min(290px,85%); transform:rotate(-3deg); box-shadow:0 28px 60px -22px #000; border-radius:14px; }
.journey-study-card .tcard { --w:100%; }
.journey-spot { position:absolute; left:var(--x); top:var(--y); transform:translate(-50%,-50%); display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#1d173c; border:2px solid #f4e4c6; color:var(--cream); font-size:.95rem; font-weight:600; box-shadow:0 2px 9px #0009; transition:background .2s,color .2s; }
.journey-spot.is-active { background:var(--gold-2); color:var(--ink-brown); box-shadow:0 0 0 6px #efd7a633,0 2px 9px #0006; }
.journey-art-instruction { margin:30px 0 0; text-align:center; color:var(--ink-3); font-size:.8rem; }
.journey-study-copy h1 { font-size:clamp(2.5rem,4.6vw,4rem); }
.journey-study-copy .journey-lead { font-size:1.12rem; max-width:56ch; }
.journey-symbol-tabs { display:flex; flex-wrap:wrap; gap:8px; margin-top:25px; }
.journey-symbol-tabs button { display:flex; align-items:center; gap:8px; min-height:44px; padding:7px 12px 7px 7px; border-radius:26px; color:var(--ink-2); border:1px solid var(--line-2); font-size:.83rem; text-align:left; transition:background .2s; }
.journey-symbol-tabs button>span { flex-shrink:0; width:24px; height:24px; border-radius:50%; background:var(--night-4); display:grid; place-items:center; color:var(--ink-3); }
.journey-symbol-tabs button.is-active { border-color:var(--line-gold); color:var(--gold-2); background:#d4af6a0c; }
.journey-symbol-tabs button.is-active>span { background:var(--gold-2); color:var(--ink-brown); }
.journey-symbol-panel { border-left:2px solid var(--gold); background:linear-gradient(90deg,#d4af6a0a,transparent); padding:16px 20px; margin-top:17px; min-height:110px; }
.journey-symbol-panel h2 { font-size:1.2rem; margin-bottom:8px; }
.journey-symbol-panel p { font-size:1rem; color:var(--ink-2); }
.journey-image-description { margin:20px 0; color:var(--ink-3); font-size:.85rem; }
.journey-image-description summary { cursor:pointer; min-height:38px; padding:8px 0; }
.journey-image-description p { padding:5px 0 10px; }
.journey-card-link { display:inline-flex; align-items:center; gap:12px; color:var(--gold-2); font-size:.88rem; text-decoration:underline; text-decoration-color:var(--line-gold); text-underline-offset:4px; }
.journey-in-life { padding-top:35px; padding-bottom:65px; border-top:1px solid var(--line); }
.journey-life-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:38px; margin-top:30px; }
.journey-life-grid>div { position:relative; padding-left:38px; }
.journey-life-icon { position:absolute; left:0; top:4px; color:var(--journey-violet); }
.journey-life-grid h3 { font-size:1.2rem; margin-bottom:12px; }
.journey-life-grid p { color:var(--ink-2); font-size:.98rem; }
.journey-journal-section { display:grid; grid-template-columns:.85fr 1.15fr; gap:50px; padding-top:50px; padding-bottom:55px; border-top:1px solid var(--line); }
.journey-journal-heading h2 { font-size:clamp(1.8rem,3.5vw,2.55rem); line-height:1.25; }
.journey-journal-heading>p:last-child { color:var(--ink-3); margin-top:20px; font-size:.95rem; }
.journey-note-form { min-width:0; }
.journey-note-form textarea { width:100%; resize:vertical; min-height:195px; background:linear-gradient(#ffffff01,#ffffff01),repeating-linear-gradient(transparent,transparent 33px,#c2b3eb11 34px,transparent 35px),var(--journey-paper); border:1px solid #c2b3eb2b; border-radius:14px; padding:20px; font:340 1rem/35px var(--font-body); color:var(--ink); }
.journey-note-form textarea::placeholder { color:#b7acca; opacity:1; }
.journey-note-form textarea:disabled { opacity:.6; }
.journey-note-footer { display:flex; justify-content:space-between; gap:12px; margin-top:10px; color:var(--ink-3); font-size:.72rem; }
.journey-note-footer p { display:flex; align-items:flex-start; gap:6px; }
.journey-note-footer svg { flex-shrink:0; margin-top:2px; }
.journey-note-footer>span { white-space:nowrap; }
.journey-exercise { display:flex; gap:14px; margin:28px 0; padding:22px 0; border-block:1px solid var(--line); }
.journey-exercise__mark { flex-shrink:0; color:var(--gold); padding-top:2px; }
.journey-exercise h3 { font-size:1.2rem; margin-bottom:10px; }
.journey-exercise p { color:var(--ink-2); font-size:.95rem; }
.journey-note-actions { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.journey-save-status { font-size:.85rem; color:var(--journey-mint); }
.journey-save-status.is-error { color:var(--danger); }
.journey-account-link { color:var(--ink-3); font-size:.83rem; margin-top:18px; }
.journey-account-link a { color:var(--gold-2); white-space:normal; }
.journey-journal-gate { border:1px solid var(--line-gold); background:#d4af6a0a; padding:15px 18px; margin-bottom:15px; border-radius:12px; display:flex; gap:12px; align-items:center; color:var(--gold-2); font-size:.9rem; }
.journey-journal-gate svg { flex-shrink:0; }
.journey-quiz-section { padding-top:15px; padding-bottom:45px; }
.journey-quiz { border:1px solid var(--line-2); border-radius:18px; overflow:hidden; }
.journey-quiz>summary { list-style:none; display:flex; justify-content:space-between; align-items:center; gap:20px; padding:24px; cursor:pointer; }
.journey-quiz>summary::-webkit-details-marker { display:none; }
.journey-quiz>summary>span { display:grid; grid-template-columns:25px 1fr; align-items:center; gap:2px 13px; }
.journey-quiz>summary>span>svg { color:var(--gold); grid-row:1/3; }
.journey-quiz strong { font:450 1.2rem var(--font-display); }
.journey-quiz small { color:var(--ink-3); font-size:.8rem; }
.journey-quiz[open]>summary>svg { transform:rotate(180deg); }
.journey-quiz-content { display:grid; grid-template-columns:1fr 1fr; gap:30px; padding:5px 25px 30px; }
.journey-quiz-question { margin:0; padding:0; border:0; min-width:0; }
.journey-quiz-question legend { font-size:1rem; font-weight:450; margin-bottom:18px; display:flex; align-items:center; gap:10px; }
.journey-quiz-question legend>span { color:var(--gold); font-size:.8rem; }
.journey-quiz-options { display:grid; gap:8px; }
.journey-quiz-options button { border:1px solid var(--line-2); border-radius:10px; padding:13px 15px; text-align:left; font-size:.9rem; color:var(--ink-2); background:#ffffff03; min-height:48px; }
.journey-quiz-options button:hover { border-color:#c2b3eb77; }
.journey-quiz-options button.is-correct { color:var(--journey-mint); background:#a5d7c40c; border-color:#a5d7c455; }
.journey-quiz-options button.is-wrong { color:var(--gold-2); border-color:var(--line-gold); }
.journey-quiz-feedback { margin-top:15px; color:var(--ink-2); font-size:.9rem; }
.journey-reminder-section { padding-top:10px; padding-bottom:40px; }
.journey-reminder { display:flex; align-items:center; justify-content:space-between; gap:35px; padding:30px; background:#c2b3eb07; border-radius:20px; }
.journey-reminder>div { max-width:500px; display:grid; grid-template-columns:30px 1fr; gap:8px 12px; }
.journey-reminder>div>svg { color:var(--gold); margin-top:4px; }
.journey-reminder h2 { font-size:1.5rem; }
.journey-reminder p { grid-column:2; color:var(--ink-3); font-size:.9rem; }
.journey-reminder form { min-width:280px; }
.journey-reminder form label { display:block; font-size:.85rem; color:var(--ink-2); margin-bottom:10px; }
.journey-reminder form>div { display:flex; gap:10px; }
.journey-reminder input { color-scheme:dark; background:var(--night-3); border:1px solid var(--line-2); border-radius:9px; padding:8px 10px; max-width:110px; min-height:44px; }
.journey-reminder form .small { margin-top:12px; max-width:340px; }
.journey-text-button { color:var(--ink-3); font-size:.8rem; text-decoration:underline; text-underline-offset:3px; min-height:40px; }
.journey-pager { display:flex; justify-content:space-between; align-items:center; gap:30px; padding:35px 0; }
.journey-pager>a { display:flex; align-items:center; gap:15px; font:450 1.3rem var(--font-display); }
.journey-pager small { display:block; font:340 .8rem var(--font-body); color:var(--ink-3); margin-bottom:7px; }
.journey-pager__next { margin-left:auto; text-align:right; }
@media (max-width:1040px) {
 .journey-intro { min-height:600px; }
 .journey-map { grid-template-columns:repeat(4,minmax(0,1fr)); gap:34px 18px; }
 .journey-step-hero { gap:35px; }
 .journey-study-card { width:min(260px,87%); }
 .journey-journal-section { gap:35px; }
 .journey-reminder { align-items:flex-start; }
 .journey-reminder>div { max-width:400px; }
}
@media (max-width:720px) {
 .journey-intro { display:flex; flex-direction:column; padding-top:36px; padding-bottom:25px; gap:8px; align-items:stretch; }
 .journey-intro__copy h1 { max-width:none; font-size:3rem; }
 .journey-intro__copy .journey-lead { font-size:1.15rem; margin-top:14px; }
 .journey-intro__text { margin-top:13px; font-size:.96rem; }
 .journey-intro__facts { gap:9px 18px; font-size:.83rem; margin-bottom:20px; }
 .journey-intro__art { width:85%; max-width:360px; align-self:center; margin:20px 0 0; }
 .journey-intro__card { top:10%; }
 .journey-intro__card--end { top:4%; }
 .journey-art-caption { bottom:3%; font-size:.95rem; }
 .journey-section-head { align-items:flex-start; gap:18px; }
 .journey-section-head h2 { font-size:1.65rem; }
 .journey-section-head p { font-size:.9rem; }
 .journey-counter { display:block; text-align:center; min-width:60px; }
 .journey-counter strong { font-size:3rem; display:block; }
 .journey-counter span { display:block; font-size:.7rem; max-width:9ch; margin-top:5px; }
 .journey-map { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 8px; }
 .journey-node { padding:8px 3px 12px; border-radius:65px 65px 12px 12px; }
 .journey-node__number { margin-bottom:12px; width:28px; height:28px; font-size:.75rem; }
 .journey-node__card { max-width:92px; }
 .journey-node h3 { margin-top:14px; font-size:.86rem; }
 .journey-node p { font-size:.72rem; }
 .journey-node__state { font-size:.65rem; padding-top:8px; }
 .journey-legend { gap:10px 17px; margin:18px 0 28px; }
 .journey-legend>span:last-child { font-size:.75rem; }
 .journey-summary { border-radius:22px; width:calc(100% - 2 * var(--gutter)); padding:25px 20px; }
 .journey-resonance { grid-template-columns:100px 1fr; gap:20px; }
 .journey-resonance .tcard { --w:100px; }
 .journey-resonance h3 { font-size:1.5rem; margin-bottom:10px; }
 .journey-resonance p:not(.journey-overline) { font-size:.85rem; }
 .journey-resonance .journey-overline { font-size:.75rem; }
 .journey-resonance .btn { font-size:.8rem; padding:10px 13px; }
 .journey-next-world { flex-direction:column; align-items:flex-start; gap:20px; }
 .journey-next-world h2 { font-size:1.4rem; }
 .journey-step-nav { padding-top:25px; font-size:.75rem; gap:14px; }
 .journey-step-hero { display:flex; flex-direction:column-reverse; align-items:stretch; padding-top:25px; padding-bottom:40px; gap:35px; }
 .journey-study-copy h1 { font-size:2.8rem; }
 .journey-study-copy .journey-lead { font-size:1.03rem; margin-top:17px; }
 .journey-study-art { margin:15px 0 0; }
 .journey-study-card { width:min(255px,70%); }
 .journey-study-orbit { inset:3% 5% 9%; }
 .journey-art-instruction { margin-top:25px; font-size:.78rem; }
 .journey-symbol-panel { min-height:95px; padding:13px 17px; }
 .journey-symbol-panel h2 { font-size:1.1rem; }
 .journey-symbol-panel p { font-size:.95rem; }
 .journey-image-description { margin:10px 0 15px; }
 .journey-symbol-tabs { margin-top:20px; gap:6px; }
 .journey-symbol-tabs button { font-size:.75rem; gap:6px; padding-right:9px; }
 .journey-in-life { padding-top:30px; padding-bottom:35px; }
 .journey-life-grid { grid-template-columns:1fr; gap:25px; }
 .journey-life-grid h3 { font-size:1.17rem; margin-bottom:8px; }
 .journey-journal-section { grid-template-columns:1fr; gap:25px; padding-top:35px; padding-bottom:35px; }
 .journey-journal-heading h2 { font-size:1.9rem; }
 .journey-journal-heading>p:last-child { margin-top:15px; }
 .journey-note-form textarea { padding:15px; font-size:16px; }
 .journey-note-footer { gap:10px; font-size:.67rem; }
 .journey-note-actions { gap:12px; }
 .journey-save-status { width:100%; }
 .journey-quiz>summary { padding:20px; gap:15px; }
 .journey-quiz strong { font-size:1.05rem; }
 .journey-quiz small { font-size:.72rem; }
 .journey-quiz-content { grid-template-columns:1fr; gap:25px; padding:5px 18px 25px; }
 .journey-reminder { flex-direction:column; gap:25px; padding:22px; }
 .journey-reminder form { min-width:0; width:100%; }
 .journey-reminder form>div { flex-wrap:wrap; }
 .journey-pager { gap:18px; }
 .journey-pager>a { gap:8px; font-size:1.08rem; }
 .journey-pager small { font-size:.72rem; }
}
@media (max-width:370px) {
 .journey-map { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .journey-node__card { max-width:105px; }
 .journey-resonance { grid-template-columns:1fr; text-align:center; }
 .journey-resonance .tcard { --w:130px; margin:0 auto; }
 .journey-intro__copy h1 { font-size:2.55rem; }
}
@media (prefers-reduced-motion:reduce) {
 .journey-page * { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
@media (max-width:370px) {
 .journey-reminder>.btn { max-width:100%; white-space:normal; text-align:center; }
}

.journey-birth-connection { display:flex; align-items:center; gap:8px; color:var(--journey-mint); font-size:.82rem; max-width:34ch!important; text-align:center; margin-top:16px; }
.journey-birth-connection svg { flex-shrink:0; }
.journey-birth-connection a { color:inherit; text-decoration-color:#a5d7c455; }
