@charset "UTF-8";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--cream: #f7f4ef;--cream2: #ede8e0;--dark: #2c2c2c;--green: #5a8f6a;--green2: #3d6b4f;--muted: #9a9488;--border: #ddd8cf}:root .f3{--male-color: #8ea6b9;--female-color: #cd8f85;font-family:DM Sans,sans-serif}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--dark);font-family:DM Sans,sans-serif;font-weight:300;min-height:100vh}header{position:sticky;top:0;z-index:100;background:var(--cream);border-bottom:1.5px solid var(--border);padding:0 48px;height:64px;display:flex;align-items:center;justify-content:space-between;gap:1rem}header img{height:2rem}header img#editIcon{rotate:90deg}header h1{flex-grow:1;font-size:2rem;font-weight:300;margin-bottom:0}header .active-background{display:none}header a{position:relative;border-radius:.5rem}header a:hover{background:var(--cream);background:linear-gradient(135deg,var(--cream) 0%,var(--cream2) 100%)}h1,h2,h3{font-family:Cormorant Garamond,serif;font-weight:500}h1 em,h2 em,h3 em{color:var(--green);font-style:italic}h1{font-size:3rem;line-height:1.2;margin-bottom:.5rem}.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--dark)}.hero{padding:100px 48px 80px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;max-width:1100px;margin:0 auto}@media screen and (max-width:768px){.hero{grid-template-columns:1fr;padding:2rem}}.hero p{line-height:1.75;color:var(--muted)}.hero .hero-visual{background:var(--cream2);border:1.5px solid var(--border);border-radius:16px;padding:40px;display:flex;flex-direction:column;gap:1.5rem;position:relative;overflow:hidden}.hero .divider{width:100%;margin:1rem;height:2px;background:radial-gradient(circle,var(--border) 0%,var(--cream) 100%)}.btn-primary{display:inline-flex;align-items:center;gap:10px;background:var(--dark);color:var(--cream);text-decoration:none;font-size:13px;letter-spacing:.1em;padding:14px 28px;border-radius:4px;transition:background .2s}.btn-primary:hover{background:var(--green2)}form{display:flex;flex-direction:column;gap:1rem}form button{align-self:center}div.inputs{display:grid;grid-template-columns:100px auto;gap:1rem}#FamilyChart{width:100%;color:#fff;height:calc(100vh - 4rem)}#FamilyChart .link{stroke:var(--green2);stroke-width:1.5px}
