.family-page{margin:0;padding:0;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--gray-900,#211a34);line-height:1.6;background:#fff}
.family-page a:focus-visible,.family-home a:focus-visible,.family-page summary:focus-visible{outline:3px solid #7257fa;outline-offset:5px;border-radius:4px}
.family-skip{position:fixed;top:-100px;left:16px;background:#fff;padding:12px 18px;z-index:100;color:#3c2e7f}
.family-skip:focus{top:12px}
.family-page .nav{top:0;left:0;border-bottom:1px solid #eeedf3}
.family-shell{max-width:1240px;margin:0 auto;padding:115px 36px 24px;min-width:0}
.family-breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:14px;color:#615c6e;margin-bottom:34px}
.family-breadcrumbs a{color:#51428b;text-underline-offset:3px}
.family-eyebrow{display:block;color:#655392;font-size:12px;line-height:1.5;font-weight:750;letter-spacing:.07em;text-transform:uppercase;margin-bottom:12px}
.family-article-header{max-width:950px;margin-bottom:44px}
.family-article-header h1,.family-hub h1{font-size:clamp(29px,3.1vw,44px);font-weight:780;letter-spacing:-.035em;line-height:1.16;margin:0 0 22px;text-wrap:balance}
.family-description{font-size:19px;line-height:1.6;color:#5e586c;max-width:850px}
.family-meta{font-size:13px;color:#696274;margin-top:20px;display:flex;gap:8px;flex-wrap:wrap}
.family-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(230px,280px);gap:64px;align-items:start}
.family-sidebar{grid-column:2;grid-row:1;position:sticky;top:108px;font-size:14px}
.family-toc{padding:22px;background:#f7f6fc;border:1px solid #e7e3f3;border-radius:14px}
.family-toc summary{cursor:pointer;font-weight:750;color:#332949}
.family-toc ol{list-style:decimal;margin:16px 0 0;padding-left:20px;font-size:13px}
.family-toc li{color:#514b60;margin:10px 0;line-height:1.5}
.family-toc a{color:#514b60;text-decoration:none}
.family-toc a:hover{text-decoration:underline;text-underline-offset:3px}
.family-all-link{display:inline-block;margin:16px 0;color:#6146d2;font-weight:650}
.family-body{grid-column:1;grid-row:1;min-width:0;font-size:17px;line-height:1.85;color:#302b3a}
.family-body>p:first-child{font-size:20px;line-height:1.75;color:#302744}
.family-body p{margin:0 0 20px}
.family-body h2{font-weight:750;font-size:27px;line-height:1.3;letter-spacing:-.02em;margin:44px 0 18px;scroll-margin-top:110px;color:#251e37}
.family-body h3{font-size:21px;font-weight:700;margin:28px 0 12px}
.family-body ul{list-style:disc;padding-left:24px;margin:20px 0 28px;font-size:inherit}
.family-body li{color:inherit;padding-left:3px;margin:9px 0}
.family-body a{color:#6146d2;text-underline-offset:3px;overflow-wrap:anywhere}
.family-body blockquote{border-left:3px solid #7257fa;margin:24px 0;padding:22px 26px;background:#f7f5ff;border-radius:0 10px 10px 0;font-size:16px}
.family-body blockquote p{margin:0}
.family-table{overflow-x:auto;max-width:100%;margin:28px 0;border:1px solid #e8e4f1;border-radius:10px}
.family-table table{border-collapse:collapse;width:100%;min-width:540px;font-size:14px;line-height:1.6}
.family-table th,.family-table td{text-align:left;padding:15px;vertical-align:top;border-bottom:1px solid #e8e4f1;border-right:1px solid #e8e4f1}
.family-table th{font-weight:700;background:#f3f0fc;color:#332747}
.family-table tr:last-child td{border-bottom:0}
.family-sources{border-top:1px solid #e9e6f1;margin-top:42px;padding-top:6px;font-size:13px;line-height:1.65;color:#656070}
.family-sources h2{font-size:20px;margin:24px 0 12px}
.family-sources ul{font-size:13px;margin:16px 0}
.family-cta{background:#f1edff;border:1px solid #e0d8ff;border-radius:16px;padding:30px;margin:36px 0 0}
.family-cta h2{font-size:26px;margin:0 0 16px}
.family-cta p{font-size:16px;line-height:1.75}
.family-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:13px 22px;background:#7257fa;color:#fff!important;font-size:15px;font-weight:700;line-height:1.45;border-radius:10px;text-decoration:none;text-align:center;transition:background .15s}
.family-button:hover{background:#5d43df}
.family-related{margin-top:72px;padding-top:36px;border-top:1px solid #eae7f1}
.family-related h2,.family-group h2,.family-home h2{font-weight:760;font-size:30px;line-height:1.25;letter-spacing:-.025em;margin:0 0 25px;color:#251e37;scroll-margin-top:110px}
.family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.family-card{display:flex;flex-direction:column;min-width:0;padding:25px;border:1px solid #e8e4ef;border-radius:14px;background:#fff;text-decoration:none;color:#302b3a;transition:border-color .15s}
.family-card:hover{border-color:#a797e8}
.family-card .family-eyebrow{font-size:10px;letter-spacing:.06em}
.family-card h3{font-size:19px;font-weight:730;line-height:1.4;margin:0 0 12px;color:#2e2343}
.family-card p{font-size:14px;line-height:1.7;color:#625b6f;margin:0 0 22px}
.family-card-link{margin-top:auto;color:#654bd4;font-size:13px;font-weight:700}
.family-hub-header{background:#f3f0fc;border-radius:20px;padding:44px;max-width:100%;margin:0 0 30px}
.family-hub-header h1{max-width:900px}
.family-hub-header>p{max-width:760px;font-size:19px;line-height:1.65;color:#5a526c;margin-bottom:26px}
.family-categories{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 55px}
.family-categories a{display:inline-block;border:1px solid #e6e0f1;border-radius:30px;padding:10px 15px;color:#5b477f;text-decoration:none;font-size:13px;font-weight:650;line-height:1.4}
.family-categories a:hover{background:#f3f0fc}
.family-group{margin:55px 0}
.family-rating-links{display:grid;grid-template-columns:1fr 1fr;gap:14px;list-style:none;margin:0;padding:0;font-size:15px}
.family-rating-links a{color:#6146d2;text-underline-offset:3px}
.family-home{max-width:1200px;margin:70px auto 20px;padding:38px;background:#f5f2ff;border-radius:18px;line-height:1.6}
.family-home>p{font-size:16px;color:#5e566f;max-width:760px;margin-bottom:24px}
.family-home .family-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:26px 0}
.family-page .footer{margin-left:0;width:100%;margin-top:90px}
.family-page .footer__bg{width:100%}
@media(max-width:1000px){.family-layout{grid-template-columns:minmax(0,1fr);gap:24px}.family-sidebar{grid-row:1;grid-column:1;position:static}.family-body{grid-row:2}.family-toc{padding:20px}.family-toc ol{columns:2;column-gap:28px}.family-toc li{break-inside:avoid}.family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.family-article-header{margin-bottom:28px}}
@media(max-width:600px){.family-shell{padding:105px 20px 20px}.family-breadcrumbs{margin-bottom:26px;font-size:12px}.family-article-header h1,.family-hub h1{font-size:29px;letter-spacing:-.03em}.family-description{font-size:16px}.family-meta{font-size:12px}.family-toc ol{columns:1}.family-body{font-size:16px;line-height:1.85}.family-body>p:first-child{font-size:18px}.family-body h2{font-size:23px;margin-top:34px}.family-body blockquote{padding:18px;font-size:15px}.family-cta{padding:24px 20px}.family-cta h2{font-size:23px}.family-button{width:100%;padding:14px 16px}.family-grid,.family-home .family-grid{grid-template-columns:1fr}.family-card{padding:23px}.family-related{margin-top:48px}.family-related h2,.family-group h2,.family-home h2{font-size:26px}.family-hub-header{padding:28px 23px;border-radius:14px}.family-hub-header>p{font-size:16px}.family-categories{margin-bottom:35px;gap:8px}.family-categories a{font-size:12px;padding:9px 12px}.family-group{margin:40px 0}.family-rating-links{grid-template-columns:1fr}.family-home{padding:25px 20px;margin-top:40px}.family-page .footer__copywrite{text-align:center;padding:0 20px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.family-card,.family-button{transition:none}}
@media(max-width:600px){.family-page .nav{padding:0 16px}.family-page .nav__items{display:flex;gap:14px;margin:0 0 0 auto;padding:0}.family-page .nav__item{margin:0}.family-page .nav__item-link{font-size:12px}.family-page .nav__menu{display:none}}
