:root{color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-size:16px}*:focus-visible{outline:none}

.navlink{display:inline-flex;align-items:center;gap:.4rem;color:rgba(42,42,42,.82);font-weight:600;transition:color .2s ease,text-decoration-color .2s ease,transform .2s ease;text-decoration:underline;text-decoration-color:rgba(20,20,20,.12);text-underline-offset:6px}
.navlink:hover{color:#141414;text-decoration-color:rgba(249,115,22,.55);transform:translateY(-1px)}
.navlink:focus-visible{border-radius:.75rem;box-shadow:0 0 0 3px rgba(249,115,22,.35);text-decoration-color:rgba(249,115,22,.9)}

.moblink{font-size:1.5rem;line-height:2rem;font-weight:700;color:rgba(255,255,255,.92);padding:.75rem 1rem;border-radius:1rem;transition:transform .2s ease,background-color .2s ease,color .2s ease}
.moblink:hover{background-color:rgba(255,255,255,.12);transform:scale(1.02)}
.moblink:focus-visible{box-shadow:0 0 0 3px rgba(249,115,22,.55);background-color:rgba(255,255,255,.14)}

.pain-card{width:100%;border-radius:1.5rem;border:1px solid rgba(20,20,20,.10);background:rgba(255,255,255,.65);padding:1.25rem;box-shadow:0 10px 30px rgba(20,20,20,.08);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.pain-card:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(249,115,22,.16)}
.pain-card:focus-visible{box-shadow:0 0 0 3px rgba(249,115,22,.35),0 12px 40px rgba(20,20,20,.10)}
.pain-card[aria-expanded="true"]{background:rgba(255,255,255,.78)}
.pain-chevron{transition:transform .22s ease}
.pain-card[aria-expanded="true"] .pain-chevron{transform:rotate(180deg)}

.journey-filter{border-radius:9999px;border:1px solid rgba(20,20,20,.14);background:rgba(255,255,255,.70);padding:.55rem .9rem;font-weight:700;color:rgba(42,42,42,.92);font-size:.9rem;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
.journey-filter:hover{transform:translateY(-1px);background:#fff;box-shadow:0 10px 30px rgba(20,20,20,.08)}
.journey-filter:focus-visible{box-shadow:0 0 0 3px rgba(249,115,22,.35)}
.journey-filter[data-active="true"]{background:rgba(249,115,22,.18);border-color:rgba(249,115,22,.40)}

.journey-node{position:relative;display:flex;flex-direction:column;gap:.25rem;text-align:left;border-radius:1.5rem;border:1px solid rgba(20,20,20,.10);background:rgba(255,255,255,.72);padding:1rem;box-shadow:0 10px 30px rgba(20,20,20,.08);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease,opacity .2s ease}
.journey-node:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(249,115,22,.16)}
.journey-node:focus-visible{box-shadow:0 0 0 3px rgba(249,115,22,.35),0 12px 40px rgba(20,20,20,.10)}
.journey-node[data-hidden="true"]{opacity:.35;filter:saturate(.7) contrast(.95)}
.journey-node[data-selected="true"]{box-shadow:0 12px 40px rgba(249,115,22,.22);border-color:rgba(249,115,22,.45)}
.journey-pill{display:inline-flex;align-items:center;justify-content:center;width:max-content;border-radius:9999px;background:rgba(249,115,22,.18);padding:.25rem .65rem;font-weight:800;color:rgba(20,20,20,.92);font-size:.85rem}
.journey-sub{color:rgba(42,42,42,.78);font-size:.9rem;font-weight:600}

.float-card{box-shadow:0 10px 30px rgba(20,20,20,.08);transform:translate3d(0,0,0);will-change:transform;transition:transform .15s ease}

.stat-card{border-radius:1.5rem;border:1px solid rgba(20,20,20,.10);background:rgba(255,255,255,.70);padding:1.25rem;box-shadow:0 10px 30px rgba(20,20,20,.08);transition:transform .2s ease,box-shadow .2s ease}
.stat-card:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(249,115,22,.16)}
.stat-card:focus-within{box-shadow:0 0 0 3px rgba(249,115,22,.28),0 12px 40px rgba(20,20,20,.10)}

.quote-track{border-radius:1.5rem;border:1px solid rgba(20,20,20,.10);background:rgba(255,255,255,.65);overflow:hidden;box-shadow:0 10px 30px rgba(20,20,20,.08)}
.quote-row{display:flex;gap:.75rem;align-items:center;white-space:nowrap;width:max-content;padding:1rem}
.quote-chip{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;background:rgba(255,251,245,.95);border:1px solid rgba(20,20,20,.10);padding:.55rem .85rem;font-weight:700;color:rgba(42,42,42,.9)}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.float-card,.quote-row,.journey-node,.pain-card,.stat-card{transition:none}.quote-row{animation:none!important}}
