.content-wrap{ padding:56px 32px; background:var(--paper); border-top:1px solid var(--line); }
.content-inner{ max-width:820px; margin:0 auto; }
.content-inner h2{ font-size:1.3rem; color:var(--blue-900); margin:38px 0 14px; }
.content-inner h2:first-child{ margin-top:0; }
.content-inner p{ color:#3a4a58; font-size:1rem; line-height:1.75; margin-bottom:16px; }
.content-inner ul{ margin:0 0 16px 20px; color:#3a4a58; font-size:0.97rem; line-height:1.75; }
.content-inner li{ margin-bottom:8px; }
.content-inner a{ color:var(--blue-700); text-decoration:underline; }
.faq-wrap{ margin-top:44px; border-top:1px solid var(--line); padding-top:8px; }
.faq-wrap details{ border-bottom:1px solid var(--line); padding:16px 0; }
.faq-wrap summary{ cursor:pointer; font-family:'Georgia','Iowan Old Style',serif; font-size:1.05rem; color:var(--blue-900); list-style:none; }
.faq-wrap summary::-webkit-details-marker{ display:none; }
.faq-wrap summary::before{ content:'+'; display:inline-block; width:22px; color:var(--blue-400); }
.faq-wrap details[open] summary::before{ content:'\2212'; }
.faq-wrap details p{ margin:12px 0 0 22px; }

.fam-cards{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:14px; margin:8px 0 24px; }
.fam-card{ display:block; border:1px solid var(--line); border-radius:6px; padding:16px 18px; text-decoration:none !important; background:var(--blue-050); }
.fam-card strong{ display:block; font-family:'Georgia','Iowan Old Style',serif; font-weight:400; color:var(--blue-900); font-size:1.05rem; margin-bottom:6px; }
.fam-card span{ display:block; color:#3a4a58; font-size:0.9rem; line-height:1.5; }
.fam-card:hover{ border-color:var(--blue-400); }
.src-box{ margin-top:40px; padding:20px 22px; background:var(--blue-050); border-left:3px solid var(--blue-400); }
.src-box h2{ margin-top:0 !important; font-size:1.05rem !important; }
.src-box ul{ margin-bottom:10px; font-size:0.9rem; }
.src-box p.rev{ font-size:0.85rem; color:#5a6b7a; margin:0; }
.fam-nav{ padding:48px 32px; border-top:1px solid var(--line); }
.fam-nav-inner{ max-width:820px; margin:0 auto; }
.fam-nav h2{ font-size:1.2rem; margin-bottom:14px; }
.fam-nav ul{ list-style:none; columns:2; column-gap:32px; margin-bottom:24px; }
.fam-nav li{ margin-bottom:9px; font-size:0.95rem; break-inside:avoid; }
.fam-nav li a{ color:var(--blue-700); text-decoration:underline; }
.fam-nav li.cur{ color:var(--ink); font-weight:600; }
@media(max-width:640px){ .fam-nav ul{ columns:1; } .fam-nav{ padding:40px 16px; } }
.cta-inline{ margin:26px 0; padding:18px 20px; border:1px solid var(--blue-400); border-radius:6px; background:#fff; }
.cta-inline strong{ display:block; font-family:'Georgia','Iowan Old Style',serif; font-weight:400; font-size:1.08rem; color:var(--blue-900); margin-bottom:6px; }
.cta-inline p{ margin:0 !important; font-size:0.95rem; }
.cta-inline .btns{ margin-top:12px; display:flex; flex-wrap:wrap; gap:10px; }
.cta-inline .btns a{ display:inline-block; padding:9px 16px; border-radius:4px; font-size:0.9rem; text-decoration:none !important; }
.cta-inline .btns a.primary{ background:var(--blue-900); color:#fff; }
.cta-inline .btns a.ghost{ border:1px solid var(--line); color:var(--blue-900); }
.ins-box{ margin:30px 0 0; padding:18px 20px; background:var(--blue-050); border-left:3px solid var(--blue-900); }
.ins-box strong{ display:block; font-family:'Georgia','Iowan Old Style',serif; font-weight:400; font-size:1.05rem; color:var(--blue-900); margin-bottom:6px; }
.ins-box p{ margin:0 !important; font-size:0.94rem; }
.inline-cta{ margin:30px 0 0 !important; padding:14px 18px; background:var(--blue-050); border-radius:6px; font-size:0.95rem; }
