.families-page{background:#fffefb}
.families-page h2{margin:13px 0 18px;color:var(--navy);font-family:Fraunces,serif;font-size:clamp(2.35rem,4vw,4.15rem);font-weight:600;line-height:1.08;letter-spacing:-.035em;text-wrap:balance}
.families-page h2 em,.family-hero h1 em{color:var(--coral);font-style:normal}
.family-hero{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);align-items:center;gap:64px;padding-top:68px;padding-bottom:84px}
.family-hero h1{max-width:720px;margin:16px 0 23px;color:var(--navy);font-family:Fraunces,serif;font-size:clamp(3.05rem,5.15vw,5.05rem);font-weight:600;line-height:1.035;letter-spacing:-.05em;text-wrap:balance}
.family-hero__copy>p:not(.eyebrow){max-width:625px;margin:0;color:var(--muted);font-size:1.04rem;line-height:1.72}
.family-hero__actions{display:flex;align-items:center;gap:22px;margin-top:31px}
.family-hero__copy>ul{display:flex;flex-wrap:wrap;gap:8px 21px;margin:25px 0 0;padding:0;list-style:none;color:var(--muted);font-size:.77rem;font-weight:700}
.family-hero__copy>ul li:before{content:"•";margin-right:7px;color:var(--coral)}
.family-hero__visual{display:flex;flex-direction:column;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:28px 28px 16px 16px;background:#fff;box-shadow:0 24px 58px rgba(16,59,74,.12)}
.family-hero__visual img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
.family-hero__visual figcaption{padding:13px 16px;color:var(--muted);font-size:.7rem;font-weight:650;line-height:1.45}
.family-facts{display:grid;grid-template-columns:repeat(4,1fr);max-width:1176px;margin:0 auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.family-facts div{display:grid;gap:3px;padding:25px 22px;border-right:1px solid var(--line)}
.family-facts div:last-child{border-right:0}.family-facts strong{color:var(--navy);font-family:Fraunces,serif;font-size:1.08rem}.family-facts span{color:var(--muted);font-size:.72rem;line-height:1.4}
.family-problem{display:grid;grid-template-columns:.96fr 1.04fr;gap:80px;align-items:start}
.family-problem__body{max-width:620px;padding:9px 0 9px 29px;border-left:3px solid var(--teal)}
.family-problem__body p{margin:0;color:var(--muted);font-size:1rem;line-height:1.75}.family-problem__body p+p{margin-top:19px;color:var(--ink);font-weight:600}
.family-rhythm{display:grid;grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);gap:70px;align-items:center;max-width:none;background:#f2faf7}
.family-rhythm__copy>p:not(.eyebrow){max-width:570px;margin:0;color:var(--muted);line-height:1.72}
.family-rhythm__steps{display:grid;gap:0;margin:34px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
.family-rhythm__steps li{display:grid;grid-template-columns:67px 1fr;gap:17px;padding:20px 0;border-bottom:1px solid var(--line)}
.family-rhythm__steps>li>span{padding-top:3px;color:var(--coral);font-size:.67rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.family-rhythm__steps strong{display:block;color:var(--navy);font-family:Fraunces,serif;font-size:1.28rem}.family-rhythm__steps p{margin:5px 0 0;color:var(--muted);font-size:.82rem;line-height:1.58}
.family-rhythm__screen{display:flex;flex-direction:column;margin:0;overflow:hidden;border:1px solid rgba(16,59,74,.15);border-radius:18px;background:#fff;box-shadow:0 20px 45px rgba(16,59,74,.12)}
.family-rhythm__screen img{display:block;width:100%;height:auto;aspect-ratio:1710/1203;object-fit:contain;object-position:top center;background:#edf4f2}
.family-rhythm__screen figcaption{display:grid;gap:3px;padding:17px 19px}.family-rhythm__screen figcaption span,.family-controls__screen figcaption{color:var(--coral);font-size:.64rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.family-rhythm__screen figcaption strong{color:var(--navy);font-size:.85rem}
.family-value{max-width:none;color:#fff;background:var(--navy)}
.family-value__heading{max-width:820px}.family-value h2{color:#fff}.family-value .eyebrow,.family-value h2 em{color:#ff7967}.family-value__heading>p:not(.eyebrow){max-width:710px;margin:0;color:#c8d9d7;line-height:1.72}
.family-value__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;max-width:1176px;margin:46px auto 0}
.family-value__grid article{grid-column:span 2;min-height:245px;padding:27px;border:1px solid rgba(255,255,255,.15);border-top:4px solid var(--teal);border-radius:14px;background:rgba(255,255,255,.055)}
.family-value__grid article:nth-child(2){border-top-color:var(--sun)}.family-value__grid article:nth-child(3){border-top-color:var(--coral)}.family-value__grid article:nth-child(4){grid-column:2/span 2;border-top-color:#a8d67a}.family-value__grid article:nth-child(5){grid-column:4/span 2;border-top-color:#fff}
.family-value__grid span{color:var(--sun);font-size:.67rem;font-weight:850;letter-spacing:.1em}.family-value__grid h3{margin:48px 0 10px;color:#fff;font-family:Fraunces,serif;font-size:1.45rem;line-height:1.2}.family-value__grid p{margin:0;color:#c8d9d7;font-size:.82rem;line-height:1.65}
.family-conversation{display:grid;grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);gap:85px;align-items:center}
.family-conversation>div>p:not(.eyebrow){max-width:550px;margin:0;color:var(--muted);line-height:1.72}
.family-conversation__prompts{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:prompt}
.family-conversation__prompts li{counter-increment:prompt;display:flex;align-items:center;gap:18px;padding:17px 20px;border:1px solid var(--line);border-radius:10px;color:var(--navy);background:#fff;font-family:Fraunces,serif;font-size:1.2rem;box-shadow:0 8px 18px rgba(16,59,74,.045)}
.family-conversation__prompts li:before{content:"0" counter(prompt);display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;color:var(--navy);background:var(--sun);font-family:"DM Sans",sans-serif;font-size:.66rem;font-weight:850}
.family-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:90px;align-items:center;max-width:none;background:var(--cream)}
.family-controls__copy{max-width:680px}.family-controls__copy>p:not(.eyebrow){max-width:610px;margin:0;color:var(--muted);line-height:1.72}
.family-controls__copy ul{display:grid;gap:0;max-width:610px;margin:31px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
.family-controls__copy li{position:relative;padding:15px 0 15px 27px;border-bottom:1px solid var(--line);color:var(--ink);font-size:.88rem}.family-controls__copy li:before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:900}
.family-controls__screen{justify-self:center;display:flex;flex-direction:column;width:min(100%,370px);margin:0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 22px 45px rgba(16,59,74,.12)}
.family-controls__screen img{display:block;width:100%;height:auto;background:#eff5f3}.family-controls__screen figcaption{padding:13px 16px;background:#fff}
.family-fit__heading{max-width:860px}.family-fit__heading>p:not(.eyebrow){max-width:760px;margin:0;color:var(--muted);line-height:1.72}
.family-fit__columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:42px}
.family-fit__columns article{padding:32px;border:1px solid var(--line);border-radius:15px;background:#fff}.family-fit__columns article:first-child{background:var(--teal-pale)}
.family-fit__columns span{color:var(--coral);font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.family-fit__columns ul{display:grid;gap:0;margin:20px 0 0;padding:0;list-style:none}.family-fit__columns li{position:relative;padding:13px 0 13px 27px;border-top:1px solid rgba(16,59,74,.12);color:var(--ink);font-size:.84rem;line-height:1.55}.family-fit__columns li:before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:900}.family-fit__columns article:last-child li:before{content:"—";color:var(--coral)}
.family-fit__program{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;margin-top:17px;padding:22px 24px;border-left:4px solid var(--sun);background:var(--cream)}.family-fit__program strong{color:var(--navy)}.family-fit__program p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.55}
.family-faq{display:grid;grid-template-columns:.72fr 1.28fr;gap:75px;align-items:start;max-width:none;background:#f7f9f7}
.family-faq__list{border-top:1px solid var(--line)}.family-faq details{border-bottom:1px solid var(--line)}
.family-faq summary{position:relative;padding:23px 42px 23px 0;color:var(--navy);font-weight:800;cursor:pointer;list-style:none}.family-faq summary::-webkit-details-marker{display:none}.family-faq summary:after{content:"+";position:absolute;right:8px;top:16px;color:var(--coral);font-family:Fraunces,serif;font-size:1.65rem}.family-faq details[open] summary:after{content:"−"}
.family-faq details p{margin:0;padding:0 42px 20px 0;color:var(--muted);line-height:1.7}.family-faq details .text-link{margin:0 0 23px}
.family-next{margin-top:92px;margin-bottom:92px;border-radius:20px;color:#fff;background:var(--coral)}
.family-next .eyebrow{color:#fff7d7}.family-next h2{max-width:820px;color:#fff}.family-next>p:not(.eyebrow){max-width:740px;margin:0;color:#fff6f1;line-height:1.7}.family-next nav{display:flex;align-items:center;gap:24px;margin-top:28px}.family-next .text-link{color:#fff}
.family-rhythm,.family-value,.family-controls,.family-faq{padding-right:max(32px,calc((100vw - 1176px)/2));padding-left:max(32px,calc((100vw - 1176px)/2))}
@media(max-width:1100px){.family-hero{grid-template-columns:1fr;gap:42px}.family-hero__visual{max-width:780px}.family-facts{grid-template-columns:1fr 1fr}.family-facts div:nth-child(2){border-right:0}.family-facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}.family-problem,.family-rhythm,.family-conversation,.family-controls,.family-faq{grid-template-columns:1fr;gap:42px}.family-rhythm__screen{max-width:780px}.family-value__grid{grid-template-columns:1fr 1fr}.family-value__grid article,.family-value__grid article:nth-child(4),.family-value__grid article:nth-child(5){grid-column:auto}.family-value__grid article:last-child{grid-column:1/-1}.family-controls__screen{justify-self:start}.family-fit__program{grid-template-columns:1fr}.family-faq{gap:31px}}
@media(max-width:650px){.family-hero{display:flex;flex-direction:column;padding-top:40px;padding-bottom:64px}.family-hero__copy{display:contents}.family-hero__copy>.eyebrow{order:0}.family-hero h1{order:1;margin-top:0;font-size:clamp(2.25rem,10vw,3rem);line-height:1.07}.family-hero__copy>p:not(.eyebrow){order:2;font-size:.96rem}.family-hero__actions{order:3;align-items:stretch;flex-direction:column;width:100%}.family-hero__actions .button{width:100%}.family-hero__visual{order:4;margin:29px 0;border-radius:20px}.family-hero__copy>ul{order:5;display:grid;gap:8px;font-size:.85rem}.family-facts{margin:0 20px}.family-facts div{padding:20px 16px}.family-facts strong{font-size:1rem}.family-problem{gap:27px}.family-problem__body{padding-left:21px}.family-rhythm,.family-value,.family-controls,.family-faq{padding-right:21px;padding-left:21px}.family-rhythm{gap:36px}.family-rhythm__steps li{grid-template-columns:57px 1fr}.family-rhythm__screen{border-radius:13px}.family-rhythm__screen figcaption strong{font-size:.78rem}.family-value__grid{grid-template-columns:1fr;gap:12px;margin-top:35px}.family-value__grid article,.family-value__grid article:last-child{grid-column:auto;min-height:0;padding:23px}.family-value__grid h3{margin-top:27px}.family-conversation{gap:34px}.family-conversation__prompts li{padding:15px 16px;font-size:1.08rem}.family-controls{gap:35px}.family-controls__screen{width:min(100%,340px)}.family-fit__columns{grid-template-columns:1fr}.family-fit__columns article{padding:25px 22px}.family-fit__program{padding:20px}.family-faq summary{font-size:.92rem;line-height:1.45}.family-next{margin:70px 20px;padding-right:23px;padding-left:23px}.family-next nav{align-items:stretch;flex-direction:column}.family-next nav .button{width:100%}}
