
.family-dynamics-page{max-width:var(--max);margin:0 auto;padding:2rem 3.4rem 5rem;color:var(--ink)}
.family-dynamics-page h1,.family-dynamics-page h2,.family-dynamics-page h3,.family-dynamics-page button,.family-dynamics-page label,.family-dynamics-page a{font-weight:400}
.family-dynamics-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;margin:1rem 0 2rem;padding:clamp(2rem,5vw,4rem);border-radius:var(--r-xl);background:var(--cream)}
.family-dynamics-hero:after{content:"";position:absolute;z-index:-1;right:7%;top:-28%;width:28rem;max-width:42vw;aspect-ratio:1;border:1px solid rgba(117,126,62,.18);border-radius:50%;box-shadow:0 0 0 2.5rem rgba(131,106,172,.035),0 0 0 5rem rgba(189,220,212,.20)}
.family-dynamics-hero-copy{max-width:790px}.family-dynamics-hero h1{max-width:19ch;margin:.6rem 0 1rem;color:var(--green);font-family:Newsreader,Georgia,serif;font-size:clamp(2.45rem,4.6vw,4.2rem);font-weight:400;letter-spacing:-.035em;line-height:1.04}.family-dynamics-lead{max-width:690px;color:var(--muted);font-size:1.06rem;line-height:1.65}
.family-dynamics-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.35rem}.family-dynamics-actions .button{min-height:48px;font-weight:400}.family-dynamics-actions .button.secondary{border-color:var(--green);background:transparent;color:var(--green)}
.family-dynamics-count{display:flex;width:clamp(150px,18vw,210px);aspect-ratio:1;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(117,126,62,.22);border-radius:50%;background:var(--pacific);color:var(--green);font-family:Newsreader,Georgia,serif;text-align:center}.family-dynamics-count span:first-child{font-size:clamp(4.4rem,8vw,6.5rem);font-weight:400;line-height:.85}.family-dynamics-count span:last-child{max-width:12ch;margin-top:.7rem;font-family:Roboto,system-ui,sans-serif;font-size:.82rem;line-height:1.35;letter-spacing:.06em;text-transform:uppercase}
.family-dynamics-index{padding:1rem 0 2rem}.family-dynamics-index-head{max-width:760px;margin:0 0 1.25rem}.family-dynamics-index h2,.dynamics-category h2,.family-dynamics-next h2{color:var(--green);font-family:Newsreader,Georgia,serif;font-size:clamp(2rem,3.5vw,3.2rem);font-weight:400;line-height:1.08;letter-spacing:-.025em}.family-dynamics-index-head h2{margin:.35rem 0 .55rem}.family-dynamics-index-head>p:last-child,.dynamics-category-head>p:last-child{color:var(--muted);font-size:1rem;line-height:1.6}
.dynamics-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.42fr);gap:1rem;align-items:end;margin:1.4rem 0 1rem;padding:1.2rem;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--cream)}.dynamics-search-field,.dynamics-select-field{display:grid;gap:.45rem}.dynamics-controls label{color:var(--green);font-size:.88rem;letter-spacing:.03em}.dynamics-controls input,.dynamics-controls select{width:100%;min-height:50px;padding:.75rem .85rem;border:1px solid rgba(117,126,62,.32);border-radius:var(--r-sm);background:var(--white);color:var(--ink);font:400 1rem/1.4 Roboto,system-ui,sans-serif}.dynamics-controls input:focus-visible,.dynamics-controls select:focus-visible,.dynamics-clear:focus-visible,.family-dynamics-page a:focus-visible{outline:3px solid var(--purple);outline-offset:3px}.dynamics-search-field{position:relative}.dynamics-search-field input{padding-right:8rem}.dynamics-clear{position:absolute;right:.5rem;bottom:.47rem;min-height:38px;padding:.45rem .7rem;border:0;border-radius:var(--r-sm);background:var(--cream);color:var(--green);font:400 .84rem/1.2 Roboto,system-ui,sans-serif;cursor:pointer}.dynamics-clear[hidden]{display:none}
.family-dynamics-topic-nav{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}.family-dynamics-topic-nav a{display:flex;min-height:40px;align-items:center;gap:.5rem;padding:.5rem .7rem;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--green);font-size:.86rem;line-height:1.2}.family-dynamics-topic-nav a:hover{border-color:var(--purple);background:var(--cream);text-decoration:none}.family-dynamics-topic-nav a span{color:var(--purple);font-size:.74rem;letter-spacing:.06em}.dynamics-results-status{min-height:1.5em;margin:1rem 0;color:var(--muted);font-size:.88rem}.dynamics-empty{padding:1rem;border-left:3px solid var(--purple);background:var(--cream);color:var(--ink)}
.dynamics-category{padding:2rem 0 2.35rem;border-top:1px solid var(--line);scroll-margin-top:1rem}.dynamics-category[hidden],.dynamics-item[hidden]{display:none!important}.dynamics-category-head{max-width:820px;margin-bottom:1.1rem}.dynamics-category-head h2{margin:.35rem 0 .55rem}.dynamics-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:0;padding:0;list-style:none}.dynamics-item{min-width:0}.dynamics-item details{height:100%;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--cream)}.dynamics-item details[open]{border-color:rgba(131,106,172,.6);background:var(--white)}.dynamics-item summary{display:grid;grid-template-columns:2.45rem minmax(0,1fr) auto;align-items:start;gap:.62rem;min-height:82px;padding:.95rem;list-style:none;cursor:pointer}.dynamics-item summary::-webkit-details-marker{display:none}.dynamics-number{padding-top:.15rem;color:var(--purple);font-size:.76rem;letter-spacing:.08em}.dynamics-question{color:var(--green);font-family:Newsreader,Georgia,serif;font-size:clamp(1.12rem,1.55vw,1.38rem);font-weight:400;line-height:1.2}.dynamics-open-label{align-self:center;color:var(--muted);font-size:.76rem;text-align:right}.dynamics-answer{padding:.1rem 1.1rem 1.1rem 4rem;color:var(--ink)}.dynamics-answer-label{margin:0 0 .35rem;color:var(--purple);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.dynamics-answer>p:not(.dynamics-answer-label){margin:0;font-size:.95rem;line-height:1.6}.dynamics-topic-cta{display:inline-flex;margin:.8rem 0 0;color:var(--green);font-size:.9rem;text-decoration:underline;text-underline-offset:4px}.dynamics-item summary:focus-visible{outline:3px solid var(--purple);outline-offset:-4px}
.dynamics-reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:.75rem;margin:1.1rem 0 2.25rem}.dynamics-review{padding:1.2rem;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--cream)}.dynamics-review h3{margin:.35rem 0 .5rem;color:var(--green);font-family:Newsreader,Georgia,serif;font-size:1.45rem;font-weight:400;line-height:1.2}.dynamics-review-intro{margin:0 0 .7rem;color:var(--muted);font-size:.9rem;line-height:1.55}.dynamics-review blockquote{margin:.7rem 0;padding:.75rem .9rem;border-left:2px solid var(--purple);background:rgba(255,255,255,.55)}.dynamics-review blockquote p{margin:0;color:var(--green);font-family:Newsreader,Georgia,serif;font-size:1.18rem;font-weight:400;line-height:1.38}.dynamics-review-author{margin:.55rem 0 .2rem;color:var(--ink);font-size:.88rem}.dynamics-review-source{margin:.1rem 0 .5rem;color:var(--muted);font-size:.75rem}.dynamics-review-link{color:var(--green);font-size:.88rem;text-decoration:underline;text-underline-offset:3px}
.family-dynamics-note{max-width:980px;margin:0 auto 2.2rem;padding:1rem 1.2rem;border-left:3px solid var(--purple);background:var(--cream);color:var(--muted);font-size:.88rem;line-height:1.6}.family-dynamics-note p{margin:0}.family-dynamics-next{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.65fr);gap:2rem;align-items:center;padding:clamp(1.7rem,4vw,3.2rem);border-radius:var(--r-xl);background:var(--green);color:var(--white)}.family-dynamics-next .eyebrow,.family-dynamics-next h2{color:var(--white)}.family-dynamics-next h2{max-width:17ch;margin:.4rem 0 .7rem}.family-dynamics-next>div:first-child>p:last-child{max-width:680px;color:rgba(255,255,255,.86);line-height:1.6}.family-dynamics-next-actions{display:grid;justify-items:start;gap:.8rem}.family-dynamics-next-actions .button{min-height:48px;font-weight:400}.family-dynamics-next-actions .button.secondary{border-color:var(--pacific);color:var(--white)}.family-dynamics-path-link{color:var(--white);font-size:.9rem;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.family-dynamics-page{padding-inline:2rem}.family-dynamics-hero{gap:1rem}.family-dynamics-count{width:160px}.dynamics-list{grid-template-columns:1fr}.family-dynamics-next{grid-template-columns:1fr}.family-dynamics-topic-nav{gap:.45rem}}
@media(max-width:700px){.family-dynamics-page{padding:1rem 1.1rem 3rem}.family-dynamics-hero{grid-template-columns:minmax(0,1fr);gap:1rem;margin:.45rem 0 1.4rem;padding:1.35rem;border-radius:var(--r-lg)}.family-dynamics-hero:after{right:-30%;top:6%;width:17rem;max-width:none}.family-dynamics-hero h1{max-width:19ch;font-size:clamp(2.2rem,9vw,3rem)}.family-dynamics-lead{font-size:.98rem}.family-dynamics-actions{display:grid;grid-template-columns:1fr}.family-dynamics-actions .button{width:100%;white-space:normal;text-align:center}.family-dynamics-count{width:auto;min-height:75px;aspect-ratio:auto;flex-direction:row;justify-self:stretch;gap:1rem;margin-top:.35rem;padding:.8rem 1rem;border-radius:var(--r-md)}.family-dynamics-count span:first-child{font-size:3.2rem}.family-dynamics-count span:last-child{max-width:none;margin:0;text-align:left}.family-dynamics-index{padding-top:.3rem}.family-dynamics-index h2,.dynamics-category h2,.family-dynamics-next h2{font-size:clamp(1.9rem,8vw,2.5rem)}.dynamics-controls{grid-template-columns:1fr;gap:.75rem;padding:.9rem}.dynamics-search-field input{padding-right:7.2rem}.family-dynamics-topic-nav{display:grid;grid-template-columns:1fr 1fr}.family-dynamics-topic-nav a{min-height:48px;align-items:flex-start;border-radius:var(--r-sm);font-size:.8rem}.family-dynamics-topic-nav a span{padding-top:.08rem}.dynamics-category{padding:1.65rem 0}.dynamics-item summary{grid-template-columns:2rem minmax(0,1fr);gap:.55rem;min-height:72px;padding:.8rem}.dynamics-question{font-size:1.2rem}.dynamics-open-label{grid-column:2;text-align:left;font-size:.72rem}.dynamics-answer{padding:.1rem .9rem 1rem 3.35rem}.dynamics-reviews{grid-template-columns:1fr;margin:1rem 0 1.6rem}.dynamics-review{padding:1rem}.family-dynamics-next{padding:1.35rem;border-radius:var(--r-lg)}.family-dynamics-next-actions{justify-items:stretch}.family-dynamics-next-actions .button{text-align:center;white-space:normal}}
@media(prefers-reduced-motion:reduce){.family-dynamics-topic-nav a{transition:none}}
