@import url('https://fonts.googleapis.com/css2?family=Work+Sans:wght@400;500;600;700&display=swap');

html, body {
  overflow-x: hidden;
}

.container,
.layout-content.status .masthead-container.basic,
.custom-footer-container {
  max-width: 1310px;
  margin: 0 auto;
  width: 90%;
}

.custom-header-container {
  margin-bottom: 24px !important;

  #topbar {
    background-color: #10161D;
    padding: 20px 0;

    .container {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    
    .takeme {
      color: #fff;
      font-size: 20px;
      line-height: 32px;
      font-weight: 400;
    }
  }
}

body {
  font-family: 'Work Sans', sans-serif;
}

#intro {
  margin-top: 120px;
  
  h1 {
    font-family: 'Work Sans', sans-serif;
    font-size: 48px;
    line-height: 1;
    font-weight: 500;
    margin-bottom: 24px;
  }
  
  p {
    font-size: 20px;
    line-height: 32px;
    font-weight: 400;
    margin-bottom: 0;
    
    &.status-label {
      margin-top: 78px;
      color: #000;
      font-size: 24px;
      font-weight: 600;
    }
  }
}

.status-index {
  .page-status {
    border-radius: 0 !important;
    border: unset !important;
    padding: 30px !important;
    margin-bottom: 120px !important;
    
    h2 {
      font-weight: 500;
      font-size: 32px;
      line-height: 40px;
      margin: 0;
    }
  }
  .components-section,
  .incidents-list,
  .page-footer {
    display: none;
  }
}

#footer {
  position: relative;
  background: #10161D;
  overflow: visible;
  display: flex;
  gap: 64px;
  border: unset;
  padding: 80px 0;
  color: rgba(255, 255, 255, 0.8);
  font-family: 'Work Sans', sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  z-index: 1;
  
  &::before,
  &::after {
    content: '';
    position: absolute;
    top: 0;
    height: 100%;
    background: #10161D;
    z-index: -1;
  }
  &::before {
    left: -100%;
    right: 0;
  }
  &::after {
    right: -100%;
    left: 0;
  }
  
  #col1 {
    display: flex;
    flex-direction: column;
    gap: 24px;
    
    #info {
      span {
        color: #FFF;
        font-size: 20px;
        font-weight: 600;
        line-height: 32px;
      }
      p {
        color: #FFF;
        font-weight: 400;
        line-height: 20px;
      }
    }
  }
  #col2 {
    display: flex;
    flex-direction: column;
    gap: 24px;
    
    #links {
      padding: 0;
      margin: 0;
      list-style: none;
      display: flex;
      gap: 24px;
      
      a {
        color: #FFFFFF;
        text-decoration: unset;
      }
    }
  }
}

#copyright {
  background: #221F41;
  position: relative;
  overflow: visible;
  display: flex;
  padding: 24px 0;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: rgba(255, 255, 255, 0.8);
  font-family: 'Work Sans', sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  z-index: 1;
  
  &::before,
  &::after {
    content: '';
    position: absolute;
    top: 0;
    height: 100%;
    background: #221F41;
    z-index: -1;
  }
  &::before {
    left: -100%;
    right: 0;
  }
  &::after {
    right: -100%;
    left: 0;
  }
}

.masthead {
  &.no-logo::after {
    content: 'This page shows the current status of Topstep Brokerage systems. If something is listed below, the team is aware and working to restore service as quickly as possible.';
    display: block;
    width: 50%;
    font-size: 20px;
    font-weight: 500;
    margin-top: 43px !important;
  }
}

@media (max-width: 768px) {
  #topbar svg {
    width: 216px;
  }
  #topbar .takeme {
    display: none;
  }
  #footer,
  #copyright {
    flex-direction: column;
  }
  #copyright {
    text-align: center;
  }
}

@media (max-width: 480px) {
  #intro {
    margin-top: 32px;
  }
  
  #intro h1 {
    margin-bottom: 35px;
    font-size: 32px;
  }
  
  .status-index .page-status {
    padding: 26px 23px !important;
    margin-bottom: 35px !important;
  }
  
  .layout-content.status.status-index .page-status .status {
    font-size: 20px;
    line-height: 1;
  }
  
  .page-footer {
    display: flex;
    flex-direction: column;
    text-align: center;
    gap: 1em;
  }
  
  #footer {
    padding: 32px 0;
    gap: 32px;
  }
  
  #footer #col2 #links {
    flex-direction: column;
    gap: 1em;
  }
        
}

.layout-content.status.status-index .incident-container .updates-container .update,
.layout-content.status.status-index .incident-container .updates-container small {
  color: #fff;
}

.layout-content.status.status-index .incident-container .updates-container .update {
    margin: 1em 0;
    background-color: #0e0e0e;
    padding: 1em;
}

.layout-content.status.status-index .incident-container .updates-container .update small {
  margin-top: 1.5em;
  display: block;
}