/* HearTech interactive tools (home) */
.journey{margin-top:40px;background:#fff;border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);overflow:hidden}
.stations{display:grid;grid-template-columns:repeat(7,1fr);background:var(--paper)}
.st{padding:18px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;font-weight:700;font-size:13.5px;color:var(--ink2);border-bottom:3px solid transparent;transition:.25s}
.st b{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--lilac);font-family:var(--en);color:var(--violet)}
.st:hover{color:var(--ink)}
.st.on{color:var(--ink);border-color:var(--violet);background:#fff}
.st.on b{background:var(--grad);color:#fff;border-color:transparent}
.panels{padding:34px 40px}
.pn{display:none}.pn.on{display:block;animation:in .4s}
.pn h3{font-size:23px;margin-bottom:12px}
.pn p,.pn li{color:var(--ink2)}
.pn ul{padding-inline-start:20px;margin-bottom:16px}.pn li{margin-bottom:8px}
.pn .btn{margin-top:10px}

.weeks{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.wk{background:var(--paper);border-radius:22px;padding:22px}
.wk h3{font-size:17px;margin-bottom:12px}
.tick{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-top:1px solid var(--line);font-size:14.5px;cursor:pointer}
.tick input{accent-color:var(--violet);width:18px;height:18px;margin-top:4px;flex:none}
.tick input:checked+span{color:var(--muted);text-decoration:line-through}
.wk-progress{display:flex;align-items:center;gap:14px;max-width:520px;margin:26px auto 0}
.wk-progress .meter{flex:1;height:10px}
.wk-progress b{font-family:var(--en);font-size:20px}

.hub-cities span{padding:14px;border-radius:14px;background:var(--paper);font-weight:700;text-align:center}

@media (max-width:980px){.stations{grid-template-columns:repeat(4,1fr)}.weeks{grid-template-columns:1fr 1fr}.panels{padding:26px}}
@media (max-width:620px){.st{font-size:12px;padding:12px 4px}.weeks{grid-template-columns:1fr}}

/* intake (free consultation request) */
.intake{display:grid;grid-template-columns:.85fr 1.15fr;background:#fff;border-radius:30px;box-shadow:var(--shadow);border:1px solid var(--line);overflow:hidden}
.intake .side{background:var(--grad);color:#fff;padding:40px;position:relative;overflow:hidden}
.intake .side p{opacity:.92}
.intake .perks{list-style:none;margin-top:16px;display:grid;gap:8px;font-weight:600}
.intake .body{padding:36px 40px}
.fs{display:none}.fs.on{display:grid;gap:12px;animation:in .4s}
.fs h3{font-size:19px}
.picks{display:flex;flex-wrap:wrap;gap:8px}
.pick input{position:absolute;opacity:0;pointer-events:none}
.pick span{display:inline-block;padding:10px 16px;border-radius:14px;border:1.5px solid var(--line);font-weight:700;font-size:14.5px;cursor:pointer;transition:.2s}
.pick input:checked+span{border-color:var(--violet);background:var(--lilac);color:var(--violet)}
.pick span:hover{border-color:var(--violet)}
.fs .btn{justify-self:start;margin-top:8px}
.shake{animation:shake .35s}
@keyframes shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.hub-cities a{padding:14px;border-radius:14px;background:var(--paper);font-weight:700;text-align:center;transition:.25s}
.hub-cities a:hover{background:var(--grad);color:#fff}
@media (max-width:980px){.intake{grid-template-columns:1fr}.intake .side,.intake .body{padding:26px}}
