/*==================================================================
  LOGO LOGO LOGO LOGO LOGO THUMBNAIL THUMBNAIL THUMBNAIL THUMBNAIL
==================================================================*/
.logo-sm {
  max-width: 9%;
  float: left;
}
.logo-md {
  max-width: 20%;
  min-height: 100%;
  float: left;
}
.logo-lg, .lock-thumbnail {
  max-width: 25%;
}
.user-thumbnail {
  max-width: 9%;
  min-height: 100%;
  float: left;
}
.logout-thumbnail {
  max-width: 9%;
  max-height: 100%;
  padding-top: 1%;
  float: right;
}
.calendar-thumbnail {
  width: 39px;
  height: 42px;
  margin: 10px 0px 5px 5px;
  float: left;
}


/*==================================================================
  IMG IMG IMG IMG IMG IMG IMG IMG IMG IMG IMG IMG IMG IMG IMG IMG
==================================================================*/
.landing-background {
  background-image: linear-gradient(rgba(255,255,255,0.6), rgba(255,255,255,0.5)), url("/static/images/background-image.jpg");
}
.accRegistration-background {
  background-image: linear-gradient(rgba(255,255,255,0.3), rgba(255,255,255,0.2)), url("/static/images/create-account.jpg");
}
.error-background {
  background-image: linear-gradient(rgba(255,255,255,0.6), rgba(255,255,255,0.5)), url("/static/images/lost-in-the-sea.jpg");
}
.header-image {
  background-image: linear-gradient(rgba(255,255,255,0.6), rgba(255,255,255,0.5)), url("/static/images/header-image.jpg");
}
.courses-images {
  width: 205px;
  height: 193px;
  border-radius: 40px;
  padding: 20px 10px;
}
.masthead {
  background-size: cover;
  min-height: 100vh;
  position: relative;
  /* text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2); */
}
.header-masthead {
  background-size: cover;
  min-height: 20vh;
  position: relative;
  /* text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2); */
}


/*==================================================================
  INPUT INPUT INPUT INPUT INPUT DROPDOWN DROPDOWN DROPDOWN DROPDOWN
==================================================================*/
.dropdown {
  border-radius: 10px;
  box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
}


/*==================================================================
  BUTTON BUTTON BUTTON BUTTON BUTTON BUTTON BUTTON BUTTON BUTTON
==================================================================*/
.safyc-button {
  background-color: #0f4c82;
  color: white;
  font-weight: bolder;
}
.btn-secondary {
  background-color: #C2E5F6;
  box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
  opacity: 75%;
  margin: 20px 1px;
  padding: 27px;
}
.safyc-button:hover, .btn-secondary:hover, .btn-outline-info:hover {
  background-color: #1f89e5;
  color: white!important;
  font-weight: bold;
  text-decoration: underline;
}
.btn-light {
  background-color: white;
  border: 0px;
}


/*==================================================================
  BODY BODY BODY BODY BODY BODY BODY BODY BODY BODY BODY BODY BODY
==================================================================*/
.head-div {
  padding: 5% 5% 9.5%;
}
.row {
  --bs-gutter-x: 0;
}
.side-menu {
  height: 56px;
}
.div-form-design {
  position: relative;
  width: 380px;
  height: 443px;
  padding: 25px 5px 10px;
  border-radius: 20px;
  box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
  opacity: 0.85;
  overflow: hidden;
}
.panel {
  position: relative;
  margin: 1.143rem 2.143rem;
  background-color: white;
  border: 0 solid transparent;
  border-radius: .286rem;
  box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
}
.fas {
  padding: 15px 15px 15px 5px;
}
.callout {
  background-color: #C2E5F6;
  border-radius: 0px;
  pointer-events: none;
}
.callout::after {
  position: absolute;
  box-sizing: content-box;
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  border-width: 20px;
  border-style: solid;
  border-color: #C2E5F6;
  border-bottom-color: transparent;
  border-right-color: transparent;
  border-top-color: transparent;
  top: 0px;
  right: -40px;
}
.rectangle-lean-box {
  background-color: #D8D8D8;
  color: #0f4c82;
  font-weight: bold;
  padding: 5px 20px;
}
.box-middle {
  padding: 25px 5px 10px;
  border-radius: 20px;
  box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
  opacity: 0.85;
}


/*==================================================================
  ANIMATION ANIMATION ANIMATION ANIMATION ANIMATION ANIMATION ANIMATION
==================================================================*/
.div-form-design::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -5%;
  width: 380px;
  height: 443px;
  background: linear-gradient(0deg,transparent,#45f3ff,#45f3ff);
  transform-origin: bottom right;
  animation: animate 6s linear infinite;
}
.div-form-design::after {
  content: "";
  position: absolute;
  top: -50%;
  left: -5%;
  width: 380px;
  height: 443px;
  background: linear-gradient(0deg,transparent,#45f3ff,#45f3ff);
  transform-origin: bottom right;
  animation: animate 6s linear infinite;
  animation-delay: -3s;
}
@keyframes animate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.form {
  position: absolute;
  inset: 2px;
  background: white;
  z-index: 10;
}
/*------------------------ Upcoming Courses ----------------------------*/
.side-uc {
  position: relative;
  /* transform: skewY(-10deg); */
}
.side-uc li {
  position: relative;
  background: #0f4c82;
  width: 200px;
  padding: 15px;
  z-index: var(--i);
  transition: 0.5s;
}
.side-uc li:first-child {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-uc li:first-child::before {
  background: #1f5378;
}
.side-uc li:first-child::after {
  background: #1f5378;
}
.side-uc li:hover {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-uc li::before {
  content: "";
  position: absolute;
  top: 0;
  left: -40px;
  width: 40px;
  height: 100%;
  background: #255a8a;
  transform-origin: right;
  transform: skewY(45deg);
  transition: 0.5s;
}
.side-uc li:hover::before {
  background: #1f5378;
}
.side-uc li::after {
  content: "";
  position: absolute;
  top: -40px;
  left: 0;
  width: 100%;
  height: 40px;
  background: #255a8a;
  transform-origin: bottom;
  transform: skewX(45deg);
  transition: 0.5s;
}
.side-uc li:hover::after {
  background: #2982b9;
}
.side-uc li a {
  text-decoration: none;
  color: white!important;
  display: block;
  letter-spacing: 0.01em;
  transition: 0.5s;
}
.side-uc li:hover a {
  color: black!important;
}
.side-uc li:last-child::after {
  box-shadow: -120px 120px 20px rgba(0, 0, 0, 0.25);
}
/*------------------------ Upcoming Events ----------------------------*/
.side-ue {
  position: relative;
}
.side-ue li {
  position: relative;
  background: #0f4c82;
  width: 200px;
  padding: 15px;
  z-index: var(--i);
  transition: 0.5s;
}
.side-ue li:nth-child(2) {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-ue li:nth-child(2)::before {
  background: #1f5378;
}
.side-ue li:nth-child(2)::after {
  background: #1f5378;
}
.side-ue li:hover {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-ue li::before {
  content: "";
  position: absolute;
  top: 0;
  left: -40px;
  width: 40px;
  height: 100%;
  background: #255a8a;
  transform-origin: right;
  transform: skewY(45deg);
  transition: 0.5s;
}
.side-ue li:hover::before {
  background: #1f5378;
}
.side-ue li::after {
  content: "";
  position: absolute;
  top: -40px;
  left: 0;
  width: 100%;
  height: 40px;
  background: #255a8a;
  transform-origin: bottom;
  transform: skewX(45deg);
  transition: 0.5s;
}
.side-ue li:hover::after {
  background: #2982b9;
}
.side-ue li a {
  text-decoration: none;
  color: white!important;
  display: block;
  letter-spacing: 0.01em;
  transition: 0.5s;
}
.side-ue li:hover a {
  color: black!important;
}
.side-ue li:last-child::after {
  box-shadow: -120px 120px 20px rgba(0, 0, 0, 0.25);
}
/*------------------------ Statement of Account ----------------------------*/
.side-soa {
  position: relative;
}
.side-soa li {
  position: relative;
  background: #0f4c82;
  width: 200px;
  padding: 15px;
  z-index: var(--i);
  transition: 0.5s;
}
.side-soa li:nth-child(4) {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-soa li:nth-child(4)::before {
  background: #1f5378;
}
.side-soa li:nth-child(4)::after {
  background: #1f5378;
}
.side-soa li:hover {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-soa li::before {
  content: "";
  position: absolute;
  top: 0;
  left: -40px;
  width: 40px;
  height: 100%;
  background: #255a8a;
  transform-origin: right;
  transform: skewY(45deg);
  transition: 0.5s;
}
.side-soa li:hover::before {
  background: #1f5378;
}
.side-soa li::after {
  content: "";
  position: absolute;
  top: -40px;
  left: 0;
  width: 100%;
  height: 40px;
  background: #255a8a;
  transform-origin: bottom;
  transform: skewX(45deg);
  transition: 0.5s;
}
.side-soa li:hover::after {
  background: #2982b9;
}
.side-soa li a {
  text-decoration: none;
  color: white!important;
  display: block;
  letter-spacing: 0.01em;
  transition: 0.5s;
}
.side-soa li:hover a {
  color: black!important;
}
.side-soa li:last-child::after {
  box-shadow: -120px 120px 20px rgba(0, 0, 0, 0.25);
}
/*------------------------ Change Password ----------------------------*/
.side-cp {
  position: relative;
}
.side-cp li {
  position: relative;
  background: #0f4c82;
  width: 200px;
  padding: 15px;
  z-index: var(--i);
  transition: 0.5s;
}
.side-cp li:last-child {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-cp li:last-child::before {
  background: #1f5378;
}
.side-cp li:last-child::after {
  background: #1f5378;
}
.side-cp li:hover {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-cp li::before {
  content: "";
  position: absolute;
  top: 0;
  left: -40px;
  width: 40px;
  height: 100%;
  background: #255a8a;
  transform-origin: right;
  transform: skewY(45deg);
  transition: 0.5s;
}
.side-cp li:hover::before {
  background: #1f5378;
}
.side-cp li::after {
  content: "";
  position: absolute;
  top: -40px;
  left: 0;
  width: 100%;
  height: 40px;
  background: #255a8a;
  transform-origin: bottom;
  transform: skewX(45deg);
  transition: 0.5s;
}
.side-cp li:hover::after {
  background: #2982b9;
}
.side-cp li a {
  text-decoration: none;
  color: white!important;
  display: block;
  letter-spacing: 0.01em;
  transition: 0.5s;
}
.side-cp li:hover a {
  color: black!important;
}
.side-cp li:last-child::after {
  box-shadow: -120px 120px 20px rgba(0, 0, 0, 0.25);
}
/*------------------------ Normal Side ----------------------------*/
.side-ns {
  position: relative;
  /* transform: skewY(-10deg); */
}
.side-ns li {
  position: relative;
  background: #0f4c82;
  width: 200px;
  padding: 15px;
  z-index: var(--i);
  transition: 0.5s;
}
.side-ns li:first-child::before {
  background: #1f5378;
}
.side-ns li:first-child::after {
  background: #1f5378;
}
.side-ns li:hover {
  background: #33a3ee;
  transform: translateX(50px);
}
.side-ns li::before {
  content: "";
  position: absolute;
  top: 0;
  left: -40px;
  width: 40px;
  height: 100%;
  background: #255a8a;
  transform-origin: right;
  transform: skewY(45deg);
  transition: 0.5s;
}
.side-ns li:hover::before {
  background: #1f5378;
}
.side-ns li::after {
  content: "";
  position: absolute;
  top: -40px;
  left: 0;
  width: 100%;
  height: 40px;
  background: #255a8a;
  transform-origin: bottom;
  transform: skewX(45deg);
  transition: 0.5s;
}
.side-ns li:hover::after {
  background: #2982b9;
}
.side-ns li a {
  text-decoration: none;
  color: white!important;
  display: block;
  letter-spacing: 0.01em;
  transition: 0.5s;
}
.side-ns li:hover a {
  color: black!important;
}
.side-ns li:last-child::after {
  box-shadow: -120px 120px 20px rgba(0, 0, 0, 0.25);
}


/*==================================================================
  TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT
==================================================================*/
.registration-txt {
  font-family: AlibabaSans;
  font-weight: bolder;
  color: #0f4c82;
  margin: 0px;
}
.welcome-txt {
  font-family: AlibabaSans;
  font-size: 8px;
  font-weight: bolder;
  color: #0f4c82;
  margin: 0px;
}
.logout-txt {
  margin: 0px;
  padding: 2% 5px;
  float: right;
}


/*==================================================================
  POP-UP POP-UP POP-UP POP-UP POP-UP POP-UP POP-UP POP-UP POP-UP POP-UP
==================================================================*/
.modal-title {
  padding: 10px;
  margin-left: 90px;
  color: white!important;
}
.modal-content {
  background-image: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.3)), url("/static/images/members.jpg");
  padding: 5px;
  box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.7);
  border-width: 0px;
}
.modal-header, .modal-footer {
  border-bottom-width: 0px;
  border-top-width: 0px;
}

#berthingbackdrop,  #berthingbackdrop0, #berthingbackdrop1, #berthingbackdrop2,
#berthingbackdrop3, #berthingbackdrop4, #berthingbackdrop5, #berthingbackdrop6,
#berthingbackdrop7, #berthingbackdrop8, #berthingbackdrop9 {
  color: #0f4c82;
  font-weight: bold;
}


/*==================================================================
  PASSWORDS PASSWORDS PASSWORDS PASSWORDS PASSWORDS PASSWORDS PASSWORDS
==================================================================*/
/*--- Add a green text color and a checkmark when the requirements are right ----*/
.pwdValid {
  color: black;
  text-decoration: line-through;
}
.pwdValid:before {
  position: relative;
  left: -35px;
  content: "";
}
/*--- Add a red text color and an "x" icon when the requirements are wrong ---*/
.pwdInvalid {
  color: red;
}
.pwdInvalid:before {
  position: relative;
  left: -35px;
  content: "";
}

/*==================================================================
  RESPONSIVE RESPONSIVE RESPONSIVE RESPONSIVE RESPONSIVE RESPONSIVE
==================================================================*/

/*//////////////////////Shrink to mobile screen////////////////////*/
@media (max-width: 580px) {
  .masthead {
    min-height: 100vh;
  }
  .header-masthead {
    min-height: 20vh;
  }
  .head-div {
    width: 180px;
    height: 90px;
  }
  .user-thumbnail {
    max-width: 20%;
    min-height: 100%;
  }
  .logout-thumbnail {
    max-width: 10%;
    max-height: 100%;
    padding-top: 6%;
  }
  .fix-for-resp {
    width: 100%;
  }
}

/*//////////////////////Shrink to tablet screen////////////////////*/
@media (max-width: 1200px) {
  .calendar-thumbnail {
    margin-left: 35%;
  }
}
