:root{color-scheme:light;--paper:#f5f3ed;--ink:#141414;--quiet:#746f66;--line:#d1cdc3;--accent:#a55137}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:20px/1.45 'EB Garamond',Garamond,Georgia,serif;-webkit-font-smoothing:antialiased}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-underline-offset:4px}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.entry{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(370px,1fr);min-height:calc(100svh - 55px)}
.study{padding:46px clamp(28px,4.7vw,90px) 24px;display:flex;flex-direction:column;min-width:0;overflow:hidden}
.observatory-name{font-size:18px;line-height:1.25;margin:0;color:var(--quiet)}
.title-line h1{line-height:0;margin:23px 0 0 -3px}
.mova-wordmark{display:block;width:clamp(230px,32vw,450px);max-width:100%;height:auto}
.semantic-study{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:290px;margin:24px 0 18px}
.semantic-study>.mova-symbol{display:block;width:78%;max-width:380px;height:auto;animation:drift 22s ease-in-out infinite;transform-origin:50% 50%}
.study-caption{border-top:1px solid var(--line);padding:23px 0 18px}
.study-caption>p{font-size:35px;line-height:1.15;letter-spacing:-.015em;margin:0}
.study-caption em{color:var(--quiet);font-weight:400}
.access{background:var(--ink);color:var(--paper);padding:38px clamp(30px,4.4vw,80px) 24px;display:flex;flex-direction:column}
.access-body{display:flex;flex-direction:column;justify-content:center;flex:1;padding:40px 0 48px;max-width:410px;width:100%;align-self:center}
.access h2{font-weight:400;font-size:clamp(43px,4.05vw,64px);letter-spacing:-.03em;line-height:1.02;margin:0 0 18px}
.access h2 em{font-weight:400;color:#c9c3b7}
.field{margin-top:25px}
.field label{display:block;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#b9b3a8}
.field input{width:100%;min-width:0;border:0;border-bottom:1px solid #565249;border-radius:0;color:var(--paper);background:transparent;padding:13px 0 11px;font-size:23px;outline:none}
.field input:focus{border-color:#e8e0d0;outline:none;box-shadow:0 1px 0 #e8e0d0}
.field input::placeholder{color:#878279;opacity:1}
.field input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #141414 inset;-webkit-text-fill-color:#f5f3ed;caret-color:#f5f3ed}
.password-entry{display:flex;position:relative}
.password-entry input{padding-right:55px}
.password-entry button{position:absolute;right:0;top:13px;border:0;background:none;color:#b9b3a8;padding:7px 0 7px 12px;cursor:pointer;font-size:16px}
.password-entry button:hover{color:#fff}
.form-message{min-height:29px;color:#e8ae95;font-size:17px;line-height:1.3;margin:15px 0}
.enter-button{display:flex;width:100%;align-items:center;justify-content:space-between;background:var(--paper);color:var(--ink);border:1px solid var(--paper);padding:15px 20px;cursor:pointer;font-size:23px;transition:background .2s,transform .2s}
.enter-button:hover{background:#d8d0c0;transform:translateY(-2px)}
.enter-button span:last-child{font-size:28px;line-height:1}
.enter-button:disabled{cursor:wait;opacity:.65;transform:none}
.access-footer{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px 18px;border-top:1px solid #393832;padding-top:18px;color:#a9a59e;font-size:16px}
.access-footer a{color:var(--paper)}
.entry-footer{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:16px clamp(25px,4.7vw,90px);min-height:55px;border-top:1px solid var(--line);font-size:15px;color:var(--quiet)}
.entry-footer span:last-child{text-align:right}
@keyframes drift{0%,100%{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-7px) rotate(.5deg)}}
@media(min-width:1600px){.semantic-study>.mova-symbol{max-width:440px}}
@media(max-width:1000px){.entry{grid-template-columns:minmax(0,1.1fr) minmax(340px,1fr)}.study{padding:38px 30px 24px}.observatory-name{font-size:16px}.mova-wordmark{width:330px}.semantic-study{min-height:270px}.semantic-study>.mova-symbol{width:95%;max-width:350px}.study-caption>p{font-size:30px}.access{padding-left:35px;padding-right:35px}.access h2{font-size:43px}.access-footer{font-size:15px}}
@media(max-width:720px){.entry{display:flex;flex-direction:column;min-height:0}.study{padding:25px 25px 0}.observatory-name{font-size:15px}.title-line h1{margin-top:16px}.mova-wordmark{width:260px}.semantic-study{flex:none;min-height:0;height:190px;margin:7px 0 18px}.semantic-study>.mova-symbol{height:190px;width:auto;max-width:100%;object-fit:contain}.study-caption{display:none}.access{padding:32px 25px 20px}.access-body{padding:0 0 30px;max-width:450px}.access h2{font-size:43px;line-height:1.04;margin:0 0 10px}.field{margin-top:18px}.field input{font-size:22px;padding-top:9px}.access-footer{font-size:15px}.form-message{margin-bottom:10px;min-height:23px}.enter-button{padding:12px 17px}.entry-footer{font-size:12px;padding:15px 20px;gap:12px}}
@media(max-width:370px){.mova-wordmark{width:230px}.observatory-name{font-size:14px}.semantic-study{height:160px}.semantic-study>.mova-symbol{height:160px}.access h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* Doctoral-research affiliation */
.entry{min-height:calc(100svh - 83px)}.entry-footer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:30px;min-height:83px}.ucl-affiliation{display:flex;align-items:center;gap:17px;text-decoration:none;padding:5px 0;color:var(--quiet)}.ucl-affiliation img{display:block;width:106px;height:auto;filter:brightness(0);opacity:.43;transition:opacity .18s}.ucl-affiliation span{border-left:1px solid var(--line);padding-left:16px;font-size:13px;line-height:1.2}.ucl-affiliation:hover img,.ucl-affiliation:focus-visible img{opacity:.72}.ucl-affiliation:hover span{color:var(--ink)}
@media(max-width:1000px){.entry-footer{gap:20px;padding-left:30px;padding-right:30px}.ucl-affiliation{gap:12px}.ucl-affiliation img{width:94px}.ucl-affiliation span{padding-left:12px;font-size:12px}}
@media(max-width:720px){.entry{min-height:0}.entry-footer{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 12px;padding:20px}.entry-footer>.ucl-affiliation{grid-column:1/-1;grid-row:1;justify-self:center}.entry-footer>span:first-child{grid-column:1;grid-row:2}.entry-footer>span:last-child{grid-column:2;grid-row:2}.ucl-affiliation img{width:106px}.ucl-affiliation span{font-size:13px}}
@media(prefers-reduced-motion:reduce){.ucl-affiliation img{transition:none}}
