/* Jevity Family Longevity Network */
:root{--fm-teal:#2dd4a7;--fm-soft:#7cf0cf;--fm-ink:#f3f6f5;--fm-mut:#a9b3b8;--fm-faint:#6a747a;--fm-line:rgba(255,255,255,.09);--fm-card:rgba(255,255,255,.03);--optimal:#2dd4a7;--normal:#f4b64e;--watch:#f0806a}
body.fmbody{background:#05070c}
.fm{color:var(--fm-ink);font-family:"Inter",system-ui,sans-serif;padding-bottom:4rem}
.fm-hero{max-width:820px;margin:0 auto;padding:clamp(2.4rem,6vw,4rem) clamp(1.2rem,5vw,2rem) 1rem;text-align:center}
.fm-kicker{font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fm-teal);font-weight:600}
.fm-hero h1{font-family:"Fraunces",Georgia,serif;font-weight:300;letter-spacing:-.02em;font-size:clamp(2.3rem,6.5vw,4.2rem);line-height:1.03;margin:.6rem 0 1rem}
.fm-hero h1 em{font-style:italic;color:var(--fm-teal)}
.fm-sub{color:var(--fm-mut);max-width:58ch;margin:0 auto;font-size:1.02rem;line-height:1.7}
.fm section,.fm>section{max-width:1080px;margin:0 auto}

.fm-members{max-width:1080px;margin:2.2rem auto 0;padding:0 clamp(1.2rem,5vw,2rem);display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.5rem,4vw,2.5rem);align-items:start}
.fm-tree{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}
.fm-node{background:var(--fm-card);border:1px solid var(--fm-line);border-radius:18px;padding:1.1rem;cursor:pointer;text-align:center;transition:transform .25s,border-color .25s}
.fm-node:hover{transform:translateY(-4px)}
.fm-node.active{border-color:color-mix(in srgb,var(--nc,#2dd4a7) 55%,transparent);background:color-mix(in srgb,var(--nc) 7%,transparent)}
.fm-orb{width:56px;height:56px;border-radius:50%;margin:0 auto .6rem;display:grid;place-items:center;font-family:"Fraunces",serif;font-size:1.4rem;color:#04130d;background:radial-gradient(circle at 32% 28%,#fff,var(--nc,#2dd4a7) 72%);box-shadow:0 0 18px color-mix(in srgb,var(--nc,#2dd4a7) 45%,transparent)}
.fm-node__name{font-weight:600}
.fm-node__rel{font-size:.76rem;color:var(--fm-faint)}
.fm-node__score{margin-top:.5rem;font-family:"Fraunces",serif;font-size:1.5rem;color:var(--nc,#2dd4a7)}
.fm-node__score small{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fm-faint);font-family:"Inter"}
.fm-node__mem{font-size:.72rem;color:var(--fm-faint);font-style:italic;margin-top:.4rem}
.fm-detail{position:sticky;top:1rem;background:var(--fm-card);border:1px solid var(--fm-line);border-radius:20px;padding:1.6rem;min-height:260px}
.fm-detail__top{display:flex;align-items:center;gap:.9rem}
.fm-detail h3{font-family:"Fraunces",serif;font-weight:400;font-size:1.5rem}
.fm-detail__rel{font-size:.78rem;color:var(--fm-faint)}
.fm-detail__read{margin-top:1rem;color:var(--fm-ink);line-height:1.65;font-size:.96rem}
.fm-detail__row{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-top:1px solid var(--fm-line);font-size:.9rem;color:var(--fm-mut)}
.fm-detail__row b{color:var(--fm-ink);font-family:"Fraunces",serif}

.fm-block{padding:clamp(2.5rem,6vh,4rem) clamp(1.2rem,5vw,2rem) 0}
.fm-h2{font-family:"Fraunces",serif;font-weight:300;font-size:clamp(1.8rem,4.5vw,2.8rem);letter-spacing:-.02em}
.fm-lead{color:var(--fm-mut);margin:.5rem 0 1.6rem}
.fm-threads{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.fm-thread{background:var(--fm-card);border:1px solid var(--fm-line);border-top:3px solid var(--tc);border-radius:16px;padding:1.3rem}
.fm-thread__ic{font-size:1.5rem}
.fm-thread h4{font-family:"Fraunces",serif;font-weight:500;font-size:1.15rem;margin:.4rem 0 .5rem}
.fm-thread p{color:var(--fm-mut);font-size:.9rem;line-height:1.6}
.fm-thread__who{margin-top:.7rem;font-size:.74rem;color:var(--fm-faint)}

.fm-grid2{padding:clamp(2.5rem,6vh,4rem) clamp(1.2rem,5vw,2rem) 0;display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.fm-card{background:var(--fm-card);border:1px solid var(--fm-line);border-radius:20px;padding:1.6rem}
.fm-card h3{font-family:"Fraunces",serif;font-weight:400;font-size:1.4rem;margin-bottom:.4rem}
.fm-task{display:flex;align-items:center;gap:.8rem;padding:.7rem 0;border-top:1px solid var(--fm-line)}
.fm-task__who{width:34px;height:34px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;font-family:"Fraunces",serif;font-size:.9rem;color:#04130d;background:var(--wc,#2dd4a7)}
.fm-task__t{font-size:.92rem}.fm-task__t span{display:block;font-size:.76rem;color:var(--fm-faint)}
.fm-task__due{margin-left:auto;font-size:.76rem;color:var(--fm-soft)}
.fm-sos__sub{color:var(--fm-mut);font-size:.85rem;margin-bottom:.6rem}
.fm-sos__row{display:flex;justify-content:space-between;padding:.45rem 0;border-top:1px solid var(--fm-line);font-size:.9rem}
.fm-sos__row span{color:var(--fm-faint)}.fm-sos__row b{font-weight:600}
.fm-foot{max-width:900px;margin:2.6rem auto 0;padding:0 1.4rem;text-align:center;font-size:.76rem;color:var(--fm-faint);line-height:1.6}
@media(max-width:820px){.fm-members{grid-template-columns:1fr}.fm-detail{position:static}.fm-grid2{grid-template-columns:1fr}}
