@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Work+Sans:wght@400;500;600&display=swap');
:root{--background:#2f257d;--foreground:#ffe7ce;--card:#2f257d;--card-foreground:#ffe7ce;--popover:#2f257d;--popover-foreground:#ffe7ce;--primary:#ffe7ce;--primary-foreground:#2f257d;--secondary:#fb6754;--secondary-foreground:#2f257d;--muted:#3b3186;--muted-foreground:#d5c7dc;--accent:#fb6754;--accent-foreground:#2f257d;--destructive:#ffcabd;--border:#685c9d;--input:#ffe7ce;--ring:#fb6754;--radius:2rem}
*{box-sizing:border-box}html{background:var(--background)}body{margin:0;color:var(--foreground);font-family:'Work Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:#fb6754;color:#2f257d}a{color:inherit;text-decoration:none}
.site-shell{min-height:100svh;display:flex;flex-direction:column;max-width:1800px;margin:auto;padding:0 4.5rem;background:radial-gradient(ellipse at 50% 46%,#47369555,transparent 65%)}
.site-header{display:flex;align-items:center;justify-content:space-between;padding:2.2rem 0;border-bottom:1px solid #ffe7ce26;gap:2rem}.wordmark{font-family:'DM Serif Display',Georgia,serif;font-size:2.2rem;letter-spacing:-.045em;line-height:1.1}.wordmark span{font-size:.72em;letter-spacing:-.02em}.header-note{text-align:right;font-size:.8125rem;line-height:1.5;opacity:.78}
main{flex:1;display:flex;align-items:center;justify-content:center}.hero{width:100%;padding:4.5rem 0 3.4rem;text-align:center}.hero-kicker{display:flex;align-items:center;justify-content:center;gap:1.1rem;font-size:.75rem;font-weight:500;letter-spacing:.16em;margin-bottom:2rem}.hero-kicker span{height:1px;width:2rem;background:#fb6754}
h1{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(3.5rem,7.8vw,7.3rem);font-weight:400;line-height:1.04;letter-spacing:-.045em;margin:0}h1 em{color:#ffb0a0;letter-spacing:-.035em}.intro{max-width:39rem;margin:1.9rem auto 0;font-size:1.125rem;line-height:1.65;color:#e1d6e8}
.signup{max-width:43rem;margin:2.5rem auto 0;min-height:10.7rem}.signup label{display:block;text-align:left;font-size:.9375rem;margin:0 0 .8rem 1.35rem}.form-row{display:flex;gap:.65rem;align-items:stretch}.email-input{flex:1;min-width:0;height:4rem;border:1px solid #ffe7ce69;border-radius:3rem;background:#ffffff07;color:#ffe7ce;padding:0 1.4rem;font-family:inherit;font-size:1rem;box-shadow:none}.email-input::placeholder{color:#d3c5dc}.email-input:focus-visible{outline:2px solid #ffb0a0;outline-offset:3px;box-shadow:none;border-color:#ffb0a0}.subscribe-button{height:auto;min-height:4rem;border-radius:3rem;background:#ffe7ce;color:#2f257d;padding:1rem 1.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;gap:1rem;white-space:normal}.subscribe-button:hover{background:#ffb0a0}.subscribe-button:focus-visible{outline:2px solid #ffb0a0;outline-offset:4px}.subscribe-button svg{width:1.25rem;height:1.25rem}.signup-note{font-size:.75rem;color:#d3c5dc;line-height:1.6;margin:1rem 0 0}.form-status{font-size:.875rem;line-height:1.5;color:#ffcabd;margin:.5rem 0;min-height:1.3rem}.research-topics{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem 1.7rem;font-size:.8125rem;color:#d5c7dc}.research-topics span+span{position:relative}.research-topics span+span:before{content:'/';position:absolute;left:-1rem;color:#a295be}.site-footer{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #ffe7ce26;padding:1.5rem 0 1.7rem;font-size:.75rem;color:#c9bcda}
.success-message{display:flex;align-items:center;justify-content:center;gap:1rem;min-height:9rem;border:1px solid #ffe7ce55;border-radius:1.5rem;background:#ffffff07}.success-message>svg{width:2rem;height:2rem;color:#ffb0a0}.success-message h2{font-family:'DM Serif Display',Georgia,serif;font-size:2rem;font-weight:400;margin:0}.success-message p{margin:.4rem 0 0;font-size:.9375rem}
@media(min-width:1500px){.hero{padding:5.5rem 0}}
@media(max-width:700px){.site-shell{padding:0 1.5rem}.site-header{padding:1.7rem 0}.wordmark{font-size:1.8rem}.header-note{display:none}.hero{padding:3.4rem 0 2.5rem}.hero-kicker{font-size:.75rem;letter-spacing:.08em;gap:.6rem;margin-bottom:1.8rem}.hero-kicker span{width:1rem}h1{font-size:clamp(3rem,10.6vw,4.5rem);line-height:1.08}.intro{font-size:1rem;line-height:1.65;margin-top:1.6rem;max-width:29rem}.signup{margin-top:2rem}.form-row{flex-direction:column;gap:.75rem}.email-input{flex:auto;height:3.75rem}.subscribe-button{min-height:3.75rem}.signup label{margin-left:1.25rem}.signup-note{max-width:20rem;margin:1rem auto 0}.research-topics{font-size:.75rem;gap:.5rem 1.35rem;margin-top:.8rem}.research-topics span+span:before{left:-.8rem}.site-footer{font-size:.75rem;line-height:1.6;align-items:center}.site-footer span:last-child{max-width:9rem;text-align:right}.success-message{padding:1rem;min-height:13rem}.success-message p{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Native controls and base rules previously supplied by the framework. */
html{line-height:1.5;-webkit-text-size-adjust:100%}
button,input{font:inherit;line-height:inherit}
button{border:0}
.subscribe-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background-color .15s ease}
.subscribe-button svg{flex-shrink:0}
button:disabled,input:disabled{opacity:.6;cursor:wait}
.email-input{outline:none}
[hidden]{display:none!important}
@media(max-width:380px){.hero-kicker{flex-wrap:wrap}.hero-kicker span{display:none}.research-topics span+span:before{display:none}.site-footer{flex-wrap:wrap}.site-footer span:last-child{text-align:left;max-width:none}}
