/* Family education guide: native controls, no extra assets or animation libraries. */
.family-guide{--family-ink:#001b43;--family-green:#03cc0b;--family-muted:#526378;--family-line:#dce5e7;color:var(--family-ink)}
.family-guide [hidden]{display:none!important}
.no-js [data-family-begin]{display:none!important}
.family-guide h2,.family-guide h3{letter-spacing:-.035em;line-height:1.22}
.family-guide p{line-height:1.75}
/* Keep the introduction short so the start action follows the page title. */
.family-lead{padding:32px 0 0;background:#fafbf7}
.family-lead__grid{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:21px;border-bottom:1px solid #dce5da}
.family-lead__grid h2{font-size:1.45rem;line-height:1.4;letter-spacing:-.025em;font-weight:650;margin:0}
.family-lead .tool-trust{flex-direction:row;flex-wrap:wrap;padding:0;border:0;gap:12px 22px;margin:0}
.family-lead .tool-trust>span{font-size:.75rem}
.family-lead .tool-purpose h2{line-height:1.4}
.family-workspace{padding:0 0 74px;background:linear-gradient(#fafbf7,#f3f7f5)}
.family-guide-meta{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0 23px;font-size:.83rem;line-height:1.6}
.family-guide-meta>span{display:flex;gap:10px;align-items:center;color:#526378}
.family-guide-meta svg{width:20px;height:20px;flex-shrink:0}
.family-guide-meta>a{border:0;background:transparent;padding:8px 0;color:#526378;display:flex;align-items:center;gap:10px;font-size:.76rem;font-weight:600;text-decoration:underline;text-underline-offset:4px;text-align:left}
.family-flow-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,.8fr);gap:28px;align-items:start}
.family-panel{background:white;border:1px solid var(--family-line);border-radius:5px 0 32px 0;box-shadow:0 12px 32px rgb(0 27 67/.035);padding:40px}
.family-panel h2,.family-companion h2{font-size:1.375rem!important;margin:8px 0 16px}
.family-panel .tool-panel-heading{margin-bottom:22px}
.family-panel .tool-panel-heading h2{margin:5px 0 0}
.family-panel p{color:var(--family-muted);font-size:.92rem}
.family-panel .tool-kicker{font-size:.69rem;color:#286e45;margin-bottom:0}
[data-family-start]>h3{font-size:1.1rem;line-height:1.45;margin:0 0 12px;font-weight:650}
.family-companion>h3{font-size:1.05rem;line-height:1.45;margin:0 0 12px;font-weight:650}
.family-duration{font-size:.76rem!important;margin-top:15px!important}
.family-companion{position:sticky;top:130px;padding:32px;background:#e9f1ec;border:1px solid #dae6dd;border-radius:5px 0 28px 0}
.family-companion__icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;background:white;border-radius:50%;margin-bottom:28px;color:#287a45}
.family-companion__icon svg{width:23px;height:23px}
.family-companion .tool-kicker{color:#287a45;font-size:.67rem}
.family-companion p:not(.tool-kicker){font-size:.86rem;color:#435b58}
.family-companion__line{height:1px;background:#cfded3;margin:23px 0}
.family-companion .text-link{font-size:.8rem;gap:10px;margin-top:12px}
.family-progress-meta{display:flex;justify-content:space-between;gap:12px;font-size:.7rem;font-weight:750;margin-bottom:12px;color:#526378}
.family-guide progress{display:block;width:100%;height:5px;appearance:none;border:0;background:#edf1ed;border-radius:5px;margin:0 0 32px;overflow:hidden}
.family-guide progress::-webkit-progress-bar{background:#edf1ed}
.family-guide progress::-webkit-progress-value{background:#269842}
.family-guide progress::-moz-progress-bar{background:#269842}
.family-question{margin:0;padding:0;border:0;min-width:0}
.family-question legend{float:none;display:block;width:100%;font-size:1.375rem;font-weight:750;line-height:1.4;letter-spacing:-.025em;padding:0;margin:0 0 14px;color:var(--family-ink);scroll-margin-top:150px}
.family-question__help{font-size:.86rem!important;margin-bottom:24px;color:#526378}
.family-options{display:grid;gap:10px}
.family-option{display:flex;align-items:center;gap:14px;border:1px solid #d8e3de;padding:16px;background:#fff;border-radius:4px;cursor:pointer;transition:background .16s,border-color .16s;min-height:58px;font-size:.88rem;line-height:1.55}
.family-option:hover{background:#f4f8f3;border-color:#8bb797}
.family-option:has(input:checked){background:#eef8ed;border-color:#288540;box-shadow:inset 3px 0 #288540}
.family-option:has(input:focus-visible){outline:3px solid #001b43;outline-offset:3px}
.family-option input[type=radio]{appearance:auto!important;position:static!important;opacity:1!important;width:18px!important;height:18px!important;min-width:18px;margin:0!important;accent-color:#1e7735;cursor:pointer}
.family-navigation{display:flex;justify-content:space-between;gap:15px;margin-top:30px;padding-top:24px;border-top:1px solid #e8eee9}
.family-guide .button{font-size:.84rem;min-height:48px;white-space:normal;text-align:center;justify-content:center}
.family-button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 17px;border:1px solid #b8c9c0;border-radius:4px;background:transparent;color:var(--family-ink);font-size:.82rem;font-weight:750;line-height:1.5;cursor:pointer;text-decoration:none}
.family-button-secondary:hover{background:#eaf3e8;border-color:#7c9c84}
.family-guide button:focus-visible,.family-guide a:focus-visible{outline:3px solid #0066af;outline-offset:4px}
.family-error{color:#923b2e!important;font-weight:650;margin:18px 0 0}
.family-review-list{list-style:none;margin:22px 0;padding:0;display:grid;gap:8px}
.family-review-list button{width:100%;text-align:left;background:#f8faf7;border:1px solid #dfe8df;border-radius:4px;padding:15px 18px;display:grid;gap:6px;color:var(--family-ink);cursor:pointer}
.family-review-list button:hover{background:#edf5ed;border-color:#96b29c}
.family-review-list strong{font-size:.84rem;line-height:1.5}
.family-review-list span{font-size:.8rem;line-height:1.6;color:#526378}
.family-review-list small{font-size:.7rem;color:#27753e;font-weight:750;margin-top:4px}
.family-result{max-width:980px;margin:auto;background:white;border:1px solid var(--family-line);border-radius:5px 0 32px 0;overflow:hidden;box-shadow:0 15px 40px rgb(0 27 67/.04)}
.family-result__heading{display:flex;gap:24px;align-items:center;justify-content:space-between;background:var(--family-ink);color:white;padding:36px 40px}
.family-result__heading h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:8px 0 16px;color:white;scroll-margin-top:150px}
.family-result__heading .eyebrow{color:#a4efb2}
.family-result__heading p:not(.eyebrow){font-size:.88rem;line-height:1.7;color:#cfdae7;max-width:690px;margin-bottom:0}
.family-result__heading .button{margin-top:22px;font-size:.82rem}
.family-result__contact{padding:28px 40px 0}
.family-result__seal{display:grid;place-items:center;flex-shrink:0;width:76px;height:76px;border:1px solid #35506c;border-radius:50%;color:#90efa4}
.family-result__seal svg{width:34px;height:34px}
.family-result__sections{padding:8px 40px 0}
.family-advice{display:flex;gap:23px;padding:28px 0;border-bottom:1px solid #e4ebe6;break-inside:avoid}
.family-advice__number{font-size:.75rem;color:#288540;font-weight:800;flex-shrink:0;padding-top:3px}
.family-advice h3{font-size:1.15rem;margin:0 0 12px}
.family-advice p{color:#526378;font-size:.9rem;margin:0}
.family-advice__reason{font-size:.73rem!important;border-left:2px solid #c2dac5;padding-left:12px;margin-top:15px!important;color:#526b5a!important;line-height:1.65!important}
.family-conversation{margin:32px 40px;padding:27px;background:#eef5eb;border:1px solid #d8e7d4;border-radius:5px 0 22px 0;break-inside:avoid}
.family-conversation .tool-kicker{color:#2d7542}
.family-conversation h3{font-size:1.1rem;margin:8px 0 18px}
.family-conversation blockquote{font-size:1.1rem;line-height:1.7;font-weight:600;margin:0 0 16px;color:#254d35}
.family-conversation>p:last-child{font-size:.75rem;margin:0;color:#55705b}
.family-result-readings{padding:10px 40px 32px;break-inside:avoid}
.family-result-readings h3{font-size:1.25rem;margin:10px 0 20px}
.family-readings{display:flex;flex-direction:column}
.family-reading{display:flex;align-items:center;gap:18px;padding:18px 0;border-top:1px solid #e3eae5;color:var(--family-ink);text-decoration:none}
.family-reading__number{font-size:.7rem;color:#4e795d;align-self:flex-start;padding-top:5px}
.family-reading>span:nth-child(2){display:grid;gap:5px;flex:1}
.family-reading small{font-size:.66rem;letter-spacing:.03em;text-transform:uppercase;color:#52735d}
.family-reading strong{font-size:.9rem;line-height:1.6;letter-spacing:-.015em}
.family-reading>svg{width:20px;height:20px;flex-shrink:0;color:#3b7b4c}
.family-reading:hover strong{text-decoration:underline;text-underline-offset:4px}
.family-result-readings>.text-link{font-size:.8rem;margin-top:14px}
.family-result__support{margin:0 40px;padding:26px 0;display:grid;grid-template-columns:1.6fr 1fr;gap:25px;border-top:1px solid #e0e9e2}
.family-result__support h3{font-size:1.1rem;margin:7px 0 12px}
.family-result__support p:not(.tool-kicker){font-size:.83rem;color:#526378;margin-bottom:0}
.family-result__support>div:last-child{display:flex;flex-direction:column;justify-content:center;align-items:start;gap:16px}
.family-result__support .text-link{font-size:.8rem}
.family-result__actions{padding:28px 40px 16px;background:#f7faf5;display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid #e2eae0}
.family-result__privacy{font-size:.72rem;padding:0 40px 28px;margin:0;background:#f7faf5;color:#526378}
.family-reset-confirm{padding:20px 40px 30px;background:#f7faf5}
.family-reset-confirm p{font-size:.86rem}
.family-reset-confirm button{margin-right:10px;margin-bottom:8px}
.family-print-footer{display:none}
.family-pending{max-width:780px;margin:10px auto 35px}
.family-pending .button{margin-top:12px}
.family-editorial>section{padding:70px 0;background:white}
.family-editorial>section:nth-child(even){background:#f8faf6}
.family-editorial h2{font-size:clamp(1.7rem,2.6vw,2.35rem)}
.family-editorial .tools-section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:60px}
.family-editorial .tools-section-heading h2{max-width:620px}
.family-editorial-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:32px}
.family-editorial-cards article{padding:28px;border:1px solid #dfe7e0;border-radius:5px 0 25px 0;background:#fafcf8}
.family-editorial-cards .tool-panel-mark{margin-bottom:25px}
.family-editorial-cards h3{font-size:1.15rem;margin:0 0 14px}
.family-editorial-cards p{font-size:.86rem;color:#526378;margin:0}
.family-editorial-citation{font-size:.72rem!important;color:#617369;margin:25px 0 0;grid-column:1/-1}
.family-editorial-citation a{color:#295b3c;text-decoration:underline;text-underline-offset:3px}
.family-editorial-split{display:grid;grid-template-columns:.9fr 1.2fr;gap:55px}
.family-editorial-split>div>p:not(.eyebrow){font-size:.92rem;color:#526378;margin:22px 0}
.family-editorial-split>.family-editorial-citation{margin:-30px 0 0}
.family-conversation-steps{margin:0;padding:0;list-style:none}
.family-conversation-steps li{display:flex;gap:23px;padding:21px 0;border-bottom:1px solid #dfe8df}
.family-conversation-steps li:first-child{padding-top:0}
.family-conversation-steps li>span{color:#297c42;font-size:.8rem;font-weight:800;padding-top:4px}
.family-conversation-steps h3{font-size:1.1rem;margin:0 0 10px}
.family-conversation-steps p{font-size:.88rem;color:#526378;margin:0}
.family-support-panel{display:flex;gap:28px;padding:40px;background:#edf5ed;border:1px solid #d4e2d4;border-radius:5px 0 30px 0}
.family-support-panel>.tool-panel-mark{flex-shrink:0}
.family-support-panel h2{font-size:1.6rem}
.family-support-panel p:not(.eyebrow){max-width:950px;color:#486151;font-size:.91rem}
.family-sources{background:#f0f4ef;padding:50px 0 65px}
.family-sources h2{font-size:1.55rem;margin:10px 0 18px}
.family-sources>.container>p:not(.eyebrow){font-size:.84rem;color:#526378;max-width:800px}
.family-sources ul{display:grid;grid-template-columns:1fr 1fr;gap:20px 40px;list-style:none;padding:20px 0 0;margin:0}
.family-sources li{display:grid;gap:7px;border-top:1px solid #d5e0d3;padding-top:18px}
.family-sources a{display:inline-flex;align-items:center;gap:10px;color:#234e34;font-weight:650;font-size:.8rem;line-height:1.6}
.family-sources svg{width:16px;height:16px;flex-shrink:0}
.family-sources li span{font-size:.74rem;color:#607466;line-height:1.7}
.tools-family-feature{padding:35px 0 65px;background:#fafbf7}
.family-feature-card{display:grid;grid-template-columns:.85fr 1.4fr;overflow:hidden;background:var(--navy,#001b43);border-radius:5px 0 35px 0;color:white;text-decoration:none;border:1px solid #244466}
.family-feature-card__photo{position:relative;overflow:hidden;min-height:290px}
.family-feature-card__photo img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.family-feature-card__body{position:relative;padding:36px 42px;display:flex;flex-direction:column;align-items:start;justify-content:center}
.family-feature-card .tool-kicker{color:#a1efae}
.family-feature-card h2{color:white;font-size:clamp(1.4rem,2.5vw,1.9rem);line-height:1.35;letter-spacing:-.03em;margin:12px 0 18px;max-width:570px}
.family-feature-card p:not(.tool-kicker){font-size:.91rem;line-height:1.75;color:#d1ddea;max-width:590px}
.family-feature-card__action{display:flex;align-items:center;gap:15px;font-size:.82rem;font-weight:750;color:#b0f2b9;border-top:1px solid #3a506c;padding-top:20px;width:100%;margin-top:6px}
.family-feature-card__action svg{width:21px;height:21px;margin-left:auto}
.family-feature-card:hover{color:white;border-color:#4a8a5d}
.family-feature-card:hover .family-feature-card__action{color:white}
.family-blog-invitation{display:flex;align-items:center;gap:22px;padding:25px;background:#f0f6ec;border:1px solid #d3e1cc;border-radius:5px 0 22px 0;margin:32px 0;text-decoration:none;color:#001b43}
.family-blog-invitation>span:first-child{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;color:#287a45}
.family-blog-invitation>span:nth-child(2){display:grid;gap:8px;flex:1}
.family-blog-invitation small{font-size:.67rem;text-transform:uppercase;font-weight:750;letter-spacing:.07em;color:#287a45}
.family-blog-invitation strong{font-size:1.1rem;line-height:1.5}
.family-blog-invitation em{font-style:normal;font-size:.82rem;line-height:1.7;color:#526378}
.family-blog-invitation svg{width:23px;height:23px;flex-shrink:0}
.family-blog-invitation:hover{background:#e8f2e3;border-color:#94b39a;color:#001b43}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.family-feature-card:hover img{transform:scale(1.035)}}
@media(max-width:991px){.family-flow-layout{grid-template-columns:1.5fr .85fr;gap:20px}.family-panel{padding:28px}.family-companion{padding:25px}.family-editorial-split{gap:30px}.family-editorial .tools-section-heading{gap:30px}.family-editorial-cards{gap:16px}.family-editorial-cards article{padding:22px}.family-feature-card__body{padding:30px}}
@media(max-width:767px){.family-lead{padding:25px 0 0}.family-lead__grid{flex-direction:column;align-items:flex-start;gap:13px;padding-bottom:19px}.family-lead__grid h2{font-size:1.35rem}.family-lead .tool-trust{gap:10px 16px}.family-lead .tool-trust>span{font-size:.7rem}.family-flow-layout{grid-template-columns:1fr;gap:24px}[data-family-start]>.button{width:100%}.family-guide-meta{align-items:start;flex-direction:column;gap:4px;padding:20px 0}.family-guide-meta>a{padding-left:30px;font-size:.8rem}.family-companion{position:static;padding:24px}.family-companion__icon{float:left;width:40px;height:40px;margin-right:16px;margin-bottom:10px}.family-companion h2{font-size:1.15rem!important}.family-companion h2 br{display:none}.family-companion__line{margin:18px 0}.family-panel{padding:26px 23px}.family-question legend{font-size:1.22rem}.family-progress-meta{font-size:.64rem}.family-question__help{font-size:.8rem!important}.family-option{padding:14px 12px;font-size:.82rem;gap:11px}.family-result__heading{padding:30px 24px}.family-result__seal{display:none}.family-result__sections{padding:0 23px}.family-advice{gap:13px;padding:25px 0}.family-advice h3{font-size:1.07rem}.family-advice p{font-size:.84rem}.family-conversation{margin:24px 23px;padding:23px}.family-conversation blockquote{font-size:.98rem}.family-result-readings{padding:6px 23px 26px}.family-result__support{margin:0 23px;grid-template-columns:1fr;gap:15px}.family-result__actions{padding:23px 23px 14px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.family-result__actions>.button{grid-column:1/-1}.family-result__actions>*{font-size:.74rem}.family-result__privacy{padding:0 23px 23px;font-size:.68rem}.family-reset-confirm{padding:15px 23px}.family-editorial>section{padding:47px 0}.family-editorial .tools-section-heading,.family-editorial-split{grid-template-columns:1fr;gap:25px}.family-editorial-cards{grid-template-columns:1fr;gap:14px;margin-top:22px}.family-editorial-cards article{padding:25px}.family-editorial-cards .tool-panel-mark{float:left;margin:0 17px 10px 0}.family-editorial-cards h3{padding-top:10px}.family-editorial-cards p{clear:both}.family-editorial-split>.family-editorial-citation{margin:0}.family-support-panel{padding:27px;display:block}.family-support-panel>.tool-panel-mark{margin-bottom:22px}.family-support-panel h2{font-size:1.4rem}.family-sources ul{grid-template-columns:1fr;gap:14px}.family-sources{padding:42px 0}.family-workspace{padding-bottom:45px}.family-feature-card{grid-template-columns:1fr}.family-feature-card__photo{min-height:205px}.family-feature-card__body{padding:27px}.family-blog-invitation{padding:21px;gap:12px}.family-blog-invitation>span:first-child{display:none}.family-blog-invitation strong{font-size:1rem}.tools-family-feature{padding:20px 0 42px}}
@media(max-width:359px){.family-panel{padding:23px 18px}.family-navigation{gap:8px}.family-navigation .button{padding:12px}.family-button-secondary{padding:11px 12px}.family-result__actions{grid-template-columns:1fr}.family-option{font-size:.8rem}.family-progress-meta{flex-direction:column;gap:5px}}
@media(prefers-reduced-motion:reduce){.family-guide *,.family-feature-card *{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:767px){.family-result__contact{padding:24px 23px 0}.family-result__heading .button{width:100%;font-size:.78rem;padding:14px 16px}.family-guide-meta>a{font-size:.74rem}}
