.family > a { display:block; background:#071a31; }
.family article { height:100%; transition:background .2s,transform .2s; }
.family > a:hover article { background:#0d2b4d; transform:translateY(-3px); }
.family b { display:block; margin-top:18px; color:var(--cyan); font-size:.68rem; letter-spacing:.12em; }
.family-bar { max-width:1440px; margin:auto; min-height:38px; padding:7px 42px; display:flex; align-items:center; justify-content:space-between; gap:18px; background:#010812; border-bottom:1px solid #203750; color:#9db0c1; font-size:.68rem; font-weight:800; letter-spacing:.08em; }
.family-bar-links { display:flex; gap:18px; align-items:center; }
.family-bar a:hover,.family-bar a[aria-current="page"] { color:var(--yellow); }
.footer-policy-links { margin-top:7px; display:flex; gap:14px; flex-wrap:wrap; }
.footer-policy-links a { color:#b9c8d5; }
.footer-policy-links a:hover { color:var(--yellow); }
.legal-copy { max-width:900px; }
.legal-copy section { margin:0 0 38px; padding-bottom:28px; border-bottom:1px solid #c5d0d9; }
.legal-copy h2 { font-size:1.75rem; }
.legal-copy h3 { margin-bottom:.2em; }
.cookie-banner { position:fixed; z-index:100; left:20px; right:20px; bottom:20px; max-width:1120px; margin:auto; padding:22px 24px; background:#071a31; border:1px solid var(--yellow); box-shadow:0 20px 70px #000b; display:grid; grid-template-columns:1fr auto; gap:22px; align-items:center; }
.cookie-banner[hidden],.cookie-panel[hidden] { display:none; }
.cookie-banner h2 { font-size:1.1rem; margin:0 0 5px; }
.cookie-banner p { font-size:.78rem; color:#b8c7d4; margin:0; max-width:720px; }
.cookie-actions { display:flex; gap:9px; flex-wrap:wrap; }
.cookie-actions button { cursor:pointer; border:1px solid #61778c; background:transparent; color:#fff; padding:10px 13px; font-weight:900; font-size:.68rem; letter-spacing:.05em; }
.cookie-actions .accept { background:var(--yellow); border-color:var(--yellow); color:#06101d; }
.cookie-panel { grid-column:1/-1; border-top:1px solid #29445f; padding-top:16px; }
.cookie-row { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-bottom:14px; }
.cookie-row small { color:#9db0c1; }
.cookie-status { color:var(--yellow); font-weight:900; }
@media(max-width:620px){.family-bar{padding:8px 18px;align-items:flex-start;flex-direction:column;gap:4px}.family-bar-links{gap:12px}.cookie-banner{left:10px;right:10px;bottom:10px;grid-template-columns:1fr}.cookie-actions{justify-content:flex-start}}
