/* Mobile-first */
body {
 width: 100%;
 min-height: 100vh;
 color: #000000;
 padding: 0;
 margin: 0;
 font-family: "Lato", sans-serif !important;
 background-image: url('../img/background-UIndy.jpg');
 background-repeat: no-repeat;
 background-position: center;
 background-size: cover;
 box-sizing: border-box !important;
}

main {
 border: 18px solid #1A1A1A;
 min-height: 100vh;
 box-sizing: border-box;
}

.login-container {
 background-color: #ffffff;
 display: flex;
 flex-direction: column;
 justify-content: flex-start;
 max-width: 100%;
 min-height: 350px;
 margin-top: 30%;
 margin-left: 0;
 padding: 20px;
}

.logo-container {
 display: flex;
 justify-content: center;
 align-items: center;
 width: 100%;
 margin-bottom: 30px;
}

.logo-container img {
 max-width: 300px;
 max-height: 70px;
 width: 100%;
 height: auto;
}

.text-container {
 padding: 0;
 padding-left: 20px;
 padding-right: 20px;
 text-align: center;
}

.text-container p {
 font-size: 16px;
 font-style: normal;
 font-weight: 400;
 line-height: 26px;
 letter-spacing: 0.2px;
}

.signin-container {
 text-align: center;
 margin-bottom: 20px;
 padding-top: 20px;
 padding-left: 0;
 padding-right: 0;
}

.signin-container button.signin-button {
 font-size: 14px;
 line-height: 25px;
 font-weight: 700;
 letter-spacing: 0.2px;
 display: flex;
 padding: 12px 30px;
 justify-content: center;
 align-items: center;
 gap: 10px;
 align-self: stretch;
 border-radius: 6px;
 background: #006FBF;
 color: #ffffff;
 width: 100%;
 border: none;
 cursor: pointer;
}

.signin-container button.signin-button:hover,
.signin-container button.signin-button:focus {
 background: #004489;
}

.signin-container button.signin-button:focus {
 box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 4px #006FBF !important;
 outline: none;
}

.signin-container a#samlLoginLinkId {
 font-size: 15px;
 line-height: 25px;
 font-weight: 700;
 letter-spacing: 0.7px;
 display: flex;
 padding: 12px 30px;
 justify-content: center;
 align-items: center;
 gap: 10px;
 align-self: stretch;
 border-radius: 6px;
 background: #006FBF;
 color: #ffffff;
 width: auto;
 border: none;
 cursor: pointer;
 text-decoration: none;
}

.signin-container a#samlLoginLinkId:hover,
.signin-container a#samlLoginLinkId:focus {
 background: #004489;
}

.signin-container a#samlLoginLinkId:focus {
 box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 4px #006FBF !important;
 outline: none;
}


.system-check-container {
 margin-top: 42px;
 text-align: right;
 /* padding-right: 20px; */
}

/* Accessibility helper */
.visuallyHidden:not(:focus):not(:active) {
 position: absolute;
 width: 1px;
 height: 1px;
 margin: -1px;
 border: 0;
 padding: 0;
 white-space: nowrap;
 clip-path: inset(100%);
 clip: rect(0 0 0 0);
 overflow: hidden;
}

.new-window-icon {
 background-image: url(../img/icon-new-window.svg);
 margin-left: 5px;
 display: inline-block;
 width: 15px;
 height: 15px;
 background-size: 15px;
 background-repeat: no-repeat;
}

.system-link {
 color: #006FBF;
 font-size: 16px;
 line-height: 26px;
 font-weight: 400;
 display: inline-block;
 text-decoration: none;
 letter-spacing: 0.2px;
}

.system-link:hover {
 text-decoration: underline;
}

.system-check-container p {
 margin-bottom: 0;
}

@media screen and (min-width: 576px) {
 .logo-container {
  display: block;
 }

 .login-container {
  margin-top: 15%;
  margin-left: 5%;
  max-width: 500px;
  padding: 30px;
 }

 .logo-container img {
  max-width: 350px;
  max-height: 80px;
 }

 .text-container {
  text-align: left;
  padding: 0;
 }

 .text-container p {
  font-size: 18px;
  line-height: 28px;
 }

 .signin-container {
  padding-left: 0px;
  padding-right: 0px;
 }

 .system-link {
  font-size: 18px;
  line-height: 28px;
 }
}

@media screen and (min-width: 992px) {
 .logo-container {
  display: flex;
 }

 .login-container {
  max-width: 600px;
  margin-top: 2%;
  margin-left: 2%;
 }

 .logo-container img {
  max-width: 400px;
  max-height: 93px;
 }

 .text-container {
  text-align: center;
 }

 .text-container p {
  font-size: 19px;
  line-height: 30px;
 }

 .system-link {
  font-size: 19px;
  line-height: 30px;
 }
}

/* Accordion styles */
.accordion {
 padding: 0;
 width: 100%;
 border-radius: 8px;
 border: 1px solid #CDD5DC;
}

h3 {
 font-weight: bold;
 padding: 0;
 margin: 0;
}

.accordion-trigger {
 width: 100%;
 color: #202122;
 background-color: #FFFFFF !important;
 border: none !important;
 border-radius: 8px;
 margin: 0;
 padding: 18px;
 position: relative;
 text-align: left;
 outline: none;
}

.accordion-trigger[aria-expanded="true"] {
 background-color: white !important;
}

.accordion-trigger:focus .accordion-title,
.accordion-trigger:hover .accordion-title {
 text-decoration: underline;
}

.accordion-trigger:focus {
 box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 4px #006FBF;
}

.accordion-trigger:hover {
 cursor: pointer;
}


.accordion-trigger[aria-expanded="true"] .accordion-icon {
 content: url(../img/arrow-collapse.svg);
 height: 18px;
 width: 18px;
 animation-name: icon-jiggle;
 animation-duration: 0.38s;
}

.accordion button::-moz-focus-inner {
 border: none !important;
}

.accordion-title {
 margin: 0;
 display: flex;
 justify-content: space-between;
 /* NEW */
 padding-right: 2rem;
 /* Reserve space for icon */
 align-items: center;
 pointer-events: none;
 padding: 0;
 outline: none !important;
 color: #202122;
 font-size: 16px;
 font-weight: 700;
 line-height: 24px;
 position: relative;
 /* Ensure context if icon remains absolute */

}

.acc-title-text {
 display: block;
 font-size: 14px;
 font-style: normal;
 font-weight: 700;
 line-height: 18px;
 letter-spacing: 0.2px;
}

.accordion-icon {
 /* content: url(../img/arrow-expand.svg);
 height: 18px;
 width: 18px;
 pointer-events: none;
 position: absolute;
 right: 1rem;
 display: block;
 top: calc(50% - 9px);
 margin: 0;
 animation-name: icon-wiggle;
 animation-duration: 0.38s; */
 content: url(../img/arrow-expand.svg);
 height: 18px;
 width: 18px;
 pointer-events: none;
 margin-left: 0.5rem;
 animation-name: icon-wiggle;
 animation-duration: 0.38s;
}

/* Create Creator+ -Style Open Icon Animation */
@keyframes icon-jiggle {
 from {
  transform: rotate(10deg);
 }

 25% {
  transform: rotate(-10deg);
 }

 50% {
  transform: rotate(10deg);
 }

 75% {
  transform: rotate(-10deg);
 }

 to {
  transform: rotate(0deg);
 }
}

/* Create Creator+ -Style Closed Icon Animation */
@keyframes icon-wiggle {
 from {
  transform: rotate(10deg);
 }

 25% {
  transform: rotate(-10deg);
 }

 50% {
  transform: rotate(10deg);
 }

 75% {
  transform: rotate(-10deg);
 }

 to {
  transform: rotate(0deg);
 }
}

.accordion p,
.accordion a {
 font-size: 16px;
 font-style: normal;
 font-weight: 400;
 line-height: 24px;
 letter-spacing: 0.2px;
}

.accordion-panel {
 margin: -5px 0 0 0;
 padding: 6px 18px 18px 18px;
 background-color: white;
 border-bottom-left-radius: 8px;
 border-bottom-right-radius: 8px;
}

/* For Edge bug https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/4806035/ */
.accordion-panel[hidden] {
 display: none;
}

.accordion-panel:not([hidden]) {
 border: none;
}

.accordion-panel p {
 margin: 15px 0 15px 0;
}

.login-help,
.online-login-help {
 border-top: 1px solid #CDD5DC;
 padding-top: 0;
}



form .failed {
 color: #CD2026;
 line-height: 200%;
 margin-left: 30px;
 text-align: center;
}

input {
 border-radius: 6px;
 border-color: #6E7477;
}

.hidden {
 display: none !important;
}

label {
 width: 100%;
 font-size: 14px;
 line-height: 18px;
 text-align: left;
 font-weight: 700;
 color: #494C4E;
}

#username,
#password {
 width: 90%;
 height: 12px;
 margin: 5px 0 10px 0;
 border: 1px solid #9EA5A9;
 padding: 13px 9px;
 background: #FFFFFF;
}

#username {
 margin-bottom: 19px;
}

#username:focus,
#password:focus {
 border: 1px solid #E3E9F1;
}

.login-button {
 width: fit-content;
 background-color: #E3E9F1;
 border: 2px solid #E3E9F1;
 border-radius: 6px;
 color: #202122;
 cursor: pointer;
 font-size: 14px;
 line-height: 18px;
 font-weight: 700;
 -webkit-border-radius: 6px;
 -moz-border-radius: 6px;
 padding: 12px 30px !important;
 text-decoration: none;
 display: block;
 text-align: center;
 margin-top: 18px;
 margin-bottom: 18px;
 appearance: none;
}

#login {
 color: #202122;
 background-color: #e3e9f1 !important;
 opacity: 1;
 border: 2px solid #e3e9f1 !important;
 font-size: 14px;
 line-height: 18px;
 font-weight: 700;
}

#login:hover,
#login:focus {
 background-color: #cdd5dc !important;
 border-color: #cdd5dc !important;
}

#login:focus {
 box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 4px #006FBF !important;
 outline: none;
}

.button-forgot-password-container {
 display: flex;
 justify-content: flex-start;
 align-items: center;
 gap: 16px;
}

.button-forgot-password-container p {
 margin: 0;
 padding-left: 0;
 font-size: 16px;
 line-height: 24px;
}