#genealogia.features-general{display:block;position:relative;height:360vh;padding:0;margin:24px 14px 0 0;border:0;background:transparent;border-radius:0;overflow:visible}
.family-stage{position:sticky;top:0;height:100svh;min-height:640px;box-sizing:border-box;padding:clamp(24px,4vw,64px);overflow:hidden;background:radial-gradient(ellipse at 0 0,#55704b 0,transparent 65%),#173b2b;color:#f3f1df;border-radius:30px}
.family-stage>div{height:100%;position:relative}.family-stage .general-kicker{color:#c5d4a7;font-size:11px;letter-spacing:.18em}.family-stage h2{color:#f3f1df;font-weight:500;font-size:clamp(32px,4.7vw,70px);margin:12px 0!important;letter-spacing:-.05em}.family-stage p{color:#c2cdb6!important}.family-stage>div>p:first-of-type{max-width:550px;font-size:14px;line-height:1.5}.family-controls{position:absolute;right:0;top:12px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.family-controls label{font-size:11px;letter-spacing:.05em;color:#c4d2b7}.family-controls select{background:#ffffff0d;color:#f4f3df;border:1px solid #a8bb8e70;padding:12px 38px 12px 16px;border-radius:30px;font:inherit;font-size:14px}.family-controls option{background:#23432d}
#family-tree{position:absolute;top:190px;bottom:72px;left:0;right:0}#family-tree svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}#family-tree path{fill:none;stroke:#cedca4;stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1}#family-tree path.active{stroke:#edffc0;stroke-width:3}#family-tree button{position:absolute;transform:translate(-50%,-50%);width:19%;max-width:200px;border:0;background:none;color:#f3f1df;font:inherit;text-align:center;padding:0;cursor:pointer}#family-tree button b{display:block;font-size:18px;font-weight:500;margin-top:7px}#family-tree button small{display:inline-block;color:#c2cdb6;background:#234530;padding:4px 10px;border-radius:20px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}#family-tree button:focus-visible{outline:2px solid #efffc2;outline-offset:6px;border-radius:18px}.family-animal{display:block;background-repeat:no-repeat;background-size:300% 300%;width:120px;height:120px;margin:auto}.family-animal.cutout{width:100%;height:clamp(95px,12vh,160px);filter:drop-shadow(0 14px 14px #0b211c55)}.family-animal.portrait{border-radius:50%;box-shadow:0 0 0 5px #afc79715,0 14px 30px #0d291c55}#family-detail{position:absolute;bottom:15px;left:0;font-size:13px;margin:0;max-width:70%;line-height:1.5}.family-stage>div>small{position:absolute;bottom:0;left:0;font-size:9px;color:#b4c3a8}.family-scroll-hint{position:absolute;right:0;bottom:30px;font-size:9px;letter-spacing:.15em;color:#cad8b5}.family-features{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:50px 5%;margin-bottom:30px}.family-features article{border-bottom:0!important}.family-features h3{font-size:21px}
@media(max-width:900px){.family-stage h2{max-width:65%}.family-stage>div>p:first-of-type{max-width:65%;font-size:12px}.family-animal.portrait{width:90px;height:90px}}
@media(max-width:699px){#genealogia.features-general{margin:12px 0;height:340vh}.family-stage{padding:26px 20px;border-radius:22px;min-height:600px}.family-stage h2{font-size:36px;max-width:100%}.family-stage>div>p:first-of-type{max-width:100%;font-size:12px}.family-controls{position:static;flex-direction:row;align-items:center;justify-content:space-between;margin:14px 0}.family-controls select{padding:8px 25px 8px 12px;font-size:12px}#family-tree{top:220px;bottom:75px}#family-tree button{width:38%}#family-tree button b{font-size:15px}.family-animal.portrait{width:72px;height:72px}.family-animal.cutout{height:75px}#family-tree button small{font-size:8px}.family-scroll-hint{bottom:49px;font-size:8px;left:0}#family-detail{font-size:11px;max-width:100%;bottom:20px}.family-stage>div>small{font-size:8px}.family-features{grid-template-columns:1fr;gap:12px}}
@media(prefers-reduced-motion:reduce){#genealogia.features-general{height:auto}.family-stage{position:relative}}

/* Transparent animal sprites; no frames or background. */
.family-animal.sprite-cutout{width:clamp(90px,12vh,160px);height:clamp(90px,12vh,160px);border-radius:0;box-shadow:none;filter:drop-shadow(0 14px 14px #0b211c55)}
#family-tree svg{z-index:0;pointer-events:none}#family-tree button{z-index:1}
@media(max-width:699px){.family-animal.sprite-cutout{width:75px;height:75px}}

.digital-register{display:grid;grid-template-columns:.85fr 1.35fr;gap:clamp(24px,4vw,65px);align-items:center;margin:25px 14px 30px 0;padding:clamp(24px,4vw,65px);background:#e8eedf;border-radius:30px;color:#23432d;scroll-margin-top:20px}.digital-copy h2{font-size:clamp(32px,3.5vw,57px);font-weight:500;line-height:1.08;letter-spacing:-.045em;margin:20px 0}.digital-copy p{line-height:1.7;color:#52664c;font-size:15px;max-width:48ch}.digital-copy .btn{display:inline-block;margin-top:15px;background:#23432d;color:#f2f5e6;padding:15px 24px;border-radius:30px;text-decoration:none}.digital-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.digital-tags span{font-size:11px;border:1px solid #b8c6ab;border-radius:20px;padding:7px 11px}.digital-visual{margin:0;min-width:0}.digital-visual img{display:block;width:100%;height:auto;border-radius:22px}.digital-note{background:#23432d;color:#eff4e2;padding:24px;border-radius:18px;margin:-12px 18px 0;position:relative;box-shadow:0 15px 30px #23432d15}.digital-note span,.digital-note strong,.digital-note small{display:block}.digital-note span{font-size:9px;letter-spacing:.12em;color:#c4d4ae}.digital-note strong{font-weight:500;font-size:20px;line-height:1.4;margin:9px 0}.digital-note small{font-size:12px;color:#c4d4ae}.digital-visual figcaption{font-size:10px;color:#627459;margin:16px 18px}@media(max-width:900px){.digital-register{grid-template-columns:1fr;margin:16px 0}.digital-copy h2 br{display:none}.digital-copy h2{max-width:18ch}.digital-copy p{max-width:64ch}.digital-note{margin:-10px 12px 0;padding:20px}.digital-note strong{font-size:18px}}
