/* Public sign-in page of Elipop, same build-up as the other Elisa apps (Elitravel):
   an illustration with the slogan on one side, the Microsoft sign-in on the other. Contains no personal data. */
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{font-family:Roboto,"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;color:#1d1d26;background:#f6f7f9}
.signin{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,1fr);min-height:100vh}
.signin-visual{position:relative;overflow:hidden;background:#2c2366;color:#fff;isolation:isolate}
.signin-visual svg{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.signin-visual:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#1d1640 0%,#1d164000 26%,#1d164000 55%,#1d1640d9 100%)}
.signin-slogan{position:absolute;left:clamp(28px,7%,72px);right:28px;bottom:clamp(36px,9vh,84px)}
.signin-slogan h1{font-size:clamp(38px,4.6vw,56px);font-weight:700;line-height:1.08;letter-spacing:-1px;margin:0 0 18px;text-shadow:0 2px 18px #0006}
.signin-slogan p{font-size:clamp(17px,1.5vw,20px);margin:0;color:#fffffff2;max-width:420px;line-height:1.5;text-shadow:0 1px 10px #0006}
.signin-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 32px;background:#f6f7f9;position:relative}
.signin-card{width:100%;max-width:340px;display:grid;justify-items:center;gap:22px;text-align:center}
/* The supplied logo has wide white margins: cover-crop it to the wordmark itself. */
.signin-logo{display:block;width:300px;max-width:100%;height:auto;aspect-ratio:300/48;object-fit:cover;object-position:50% 50%}
.signin-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:13px 18px;border-radius:12px;background:#fff;color:#484c50;font-size:15px;font-weight:500;text-decoration:none;border:1px solid #e4e6ea;box-shadow:0 2px 8px #1d1d2614;transition:box-shadow .2s,transform .2s}
.signin-button:hover{box-shadow:0 6px 18px #1d1d2626;transform:translateY(-1px)}
.signin-button:focus-visible,.signin-back:focus-visible{outline:3px solid #8b7be0;outline-offset:3px}
.signin-button svg{width:21px;height:21px;flex-shrink:0}
.signin-help{font-size:15px;line-height:1.6;color:#5f6368;margin:0}
.signin-message{font-size:15px;line-height:1.6;color:#33305a;margin:0;padding:14px 16px;border-radius:12px;background:#f4f2fd;border:1px solid #e6e1fa;width:100%}
.signin-message h2{font-size:17px;margin:0 0 6px;color:#1d1d26}
.signin-back{position:absolute;top:22px;right:24px;font-size:13px;font-weight:600;color:#3a2b8f;text-decoration:none;padding:7px 12px;border-radius:999px;background:#efecfc}
.signin-back:hover{background:#e4defb}

/* Illustration motion: the tree grows once, the sun rises slowly. Off when the visitor prefers less motion. */
.grow-petal{transform-box:fill-box;transform-origin:50% 100%;animation:petal-grow .9s cubic-bezier(.2,.7,.3,1) both}
.grow-petal.p1{animation-delay:.15s}.grow-petal.p2{animation-delay:.3s}.grow-petal.p3{animation-delay:.45s}.grow-petal.p4{animation-delay:.6s}
.sun{animation:sun-rise 2.4s ease-out both}
.step{animation:step-in .5s ease-out both}.step.s2{animation-delay:.2s}.step.s3{animation-delay:.4s}.step.s4{animation-delay:.6s}.step.s5{animation-delay:.8s}
@keyframes petal-grow{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}
@keyframes sun-rise{from{transform:translateY(40px);opacity:.4}to{transform:none;opacity:1}}
@keyframes step-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.grow-petal,.sun,.step{animation:none}.signin-button{transition:none}.signin-button:hover{transform:none}}

@media(max-width:820px){
  .signin{grid-template-columns:1fr;grid-template-rows:minmax(300px,42vh) 1fr}
  .signin-slogan{bottom:26px}
  .signin-slogan h1{font-size:34px;margin-bottom:10px}
  .signin-slogan p{font-size:16px}
  .signin-panel{justify-content:flex-start;padding:56px 22px 64px}
  .signin-back{top:14px;right:16px}
}
