:root{--home-bg: #5bcce8;--home-text: #2d4a5e;--home-text-dark: #1a3344;--circle-stroke: rgba(255, 255, 255, .85)}html,body{margin:0;padding:0;height:100%}.home-body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:#5bcce8;color:#2d4a5e;min-height:100vh;overflow-x:hidden}.home-body.dark-mode{background-color:#1a3344;color:#a8d4e6}.home-container{position:relative;min-height:100vh;padding:1.5rem 2rem;max-width:1400px;margin:0 auto}.fig-caption{position:absolute;top:1.5rem;left:2rem;font-size:.9375rem;line-height:1.6;z-index:10}.fig-caption p{margin:0}.fig-caption a{color:#2d4a5e;text-decoration:underline;text-underline-offset:3px}.fig-caption a:hover{color:#1a3344}.dark-mode .fig-caption a{color:#a8d4e6}.dark-mode .fig-caption a:hover{color:#fff}.venn-diagram{--venn-scale: 1;position:absolute;top:50%;left:60%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:calc(730px * var(--venn-scale));height:calc(760px * var(--venn-scale))}.circle{position:absolute;width:calc(420px * var(--venn-scale));height:calc(420px * var(--venn-scale));border:2px solid rgba(255,255,255,.85);border-radius:50%;background:transparent;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.dark-mode .circle{border-color:#fff9}.circle-top{top:0;left:calc(90px * var(--venn-scale))}.circle-right{top:calc(250px * var(--venn-scale));left:calc(310px * var(--venn-scale))}.circle-bottom{top:calc(340px * var(--venn-scale));left:0}.circle-label{font-size:1.125rem;font-weight:400;color:#2d4a5e;white-space:nowrap}.dark-mode .circle-label{color:#a8d4e6}.home-content{position:absolute;bottom:5rem;left:2rem;max-width:500px;z-index:10}.home-title{font-family:Georgia,Times New Roman,Times,serif;font-size:4rem;font-weight:700;color:#1a3344;margin:0 0 1rem;line-height:1.1}.dark-mode .home-title{color:#fff}.home-description{font-size:1.0625rem;line-height:1.6;margin:0;color:#2d4a5e}.home-description a{color:#2d4a5e;text-decoration:underline;text-underline-offset:3px}.home-description a:hover{color:#1a3344}.dark-mode .home-description,.dark-mode .home-description a{color:#a8d4e6}.dark-mode .home-description a:hover{color:#fff}.company-info{position:absolute;bottom:1.5rem;left:2rem;font-size:.8125rem;color:#2d4a5e;z-index:10}.company-info p{margin:0}.dark-mode .company-info{color:#a8d4e6}.theme-toggle{position:absolute;bottom:1.5rem;right:2rem;width:36px;height:36px;padding:0;border:2px solid #2d4a5e;border-radius:6px;background:transparent;color:#2d4a5e;cursor:pointer;z-index:10;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.theme-toggle:hover{background:#2d4a5e1a}.theme-toggle:focus{outline:none;box-shadow:0 0 0 2px #2d4a5e4d}.dark-mode .theme-toggle{border-color:#a8d4e6;color:#a8d4e6}.dark-mode .theme-toggle:hover{background:#a8d4e61a}.dark-mode .theme-toggle:focus{box-shadow:0 0 0 2px #a8d4e64d}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon,.dark-mode .theme-toggle .icon-sun{display:block}.dark-mode .theme-toggle .icon-moon{display:none}@media(max-width:1200px){.venn-diagram{--venn-scale: .786;left:62%}}@media(max-width:992px){.venn-diagram{--venn-scale: .619;position:relative;top:auto;left:auto;-webkit-transform:none;transform:none;margin:5rem auto 2rem}.circle-label{font-size:1rem}.fig-caption{position:relative;top:auto;left:auto;margin-bottom:1rem}.home-content{position:relative;bottom:auto;left:auto;max-width:100%;padding:0;margin-top:2rem}.home-title{font-size:3rem}.company-info{position:relative;bottom:auto;left:auto;margin-top:3rem;padding-bottom:1rem}.theme-toggle{position:fixed;bottom:1rem;right:1rem}.home-container{display:block}}@media(max-width:576px){.home-container{padding:1rem}.venn-diagram{--venn-scale: .44}.circle-label{font-size:.875rem}.home-title{font-size:2.25rem}.home-description{font-size:1rem}}
