* {
    box-sizing: border-box;
    margin:0;
    padding:0;
    list-style: none;
    text-decoration: none;
    font-family: "Montserrat", sans-serif;
}

*::after, *::before{
    margin:0;
    padding:0;
}

:root{
    --primary-color: #0f0c0c;
    --secondary-color: #1a1718;
}

.fs-400{
  font-size:0.8rem;
}

.fs-600 {
  font-size:1.1rem;
}
.fs-700 {
  font-size:1.3rem;
}

body{
    background-color: var(--secondary-color);
}

  .bg-image{
    width:100vw;
    margin-top:100px;
    margin-bottom:-5px;
    /* position: absolute; */
    /* z-index: -1; */
  }

  .tournament{
    width:100vw;
    display:flex;
    flex-direction:column;
    justify-content: space-between;
    padding:1.25rem;
    gap:2rem;
    background-color: var(--primary-color);
    border:none;
  }

  .trnmt-title{
    color:white;
    text-align: center;
    font-size:2rem;
    letter-spacing: 2px;
  }

  .trnmt-body{
    color:white;
    display:flex;
    justify-content: center;
    /* gap:12rem; */
  }

  .trnmt-text{
    font-size:1.5rem;
  }

  .trnmt-body-1 > *{
    padding:0.2rem;
    display:flex;
    flex-direction: row;
    align-items: center;
    gap:0.5rem;
}
  .trnmt-body-2 > *{
    padding:0.2rem;
    display:flex;
    flex-direction: row;
    align-items: center;
    gap:0.5rem;
  }

  .trnmt{
    display:flex;
    padding-top:1rem;
    justify-content: center;
    flex-flow: row wrap;
  }

  .trnmt > li{
    padding-bottom:3rem;
  }

  .trnmt-button{
    text-align: center;
    display: flex;
    gap:1.5rem;
    justify-content: center;
  }

  .trnmt-btn{
    font-size:1.1rem;
    padding: 0.5rem 1rem;
    font-weight:bold;
    border:1px solid white;
    color:white;
    cursor:pointer;
    background-color:transparent;
    /* border-radius:0.5rem */
  }


  .trnmt-btn:hover{
    transition:background-color 150ms ease-in-out;
    background-color:rgb(48, 48, 48);
  }

  .trnmt-type-name{
    text-align: center;
    color:white;
    font-size:2rem;
    font-weight: 500;
  }

  .trnmt-type::after{
    content:"";
    width:100%;
  }

  .trnmt-item{
    display:flex;
    flex-direction: column;
    gap:1rem;
    width:486px;
  }

  .line{
    width:400px;
    margin:auto;
  }

  /* past tournaments */

  .past-tournaments{
    width:100vw;
    display:flex;
    flex-direction:column;
    justify-content: center;
    padding:2rem;
    gap:2rem;
    background-color: whitesmoke;
  }
  
  .title{
    color:black;
    text-align: center;
    font-size:2rem;
    letter-spacing: 2px;
  }
  .main-table{
    display:flex;
    overflow-x:scroll;
  }
  
  .trnmt-table{
    flex-shrink:0;
    flex-grow:1;
    margin-top:2rem;
    border-collapse: collapse;
    line-height:3rem;
    
}

.table-head{
    background-color: var(--primary-color);
    line-height:4rem;
    color:white;
  }

  .table-body{
    text-align: right;
    border:1px solid black;
  }

  
  
  td, th{
    padding-inline:1rem;
  }

  th:first-child{
    text-align: left;
  }

  td:first-child{
    text-align: left;
  }
  
  td:hover{
    background-color: rgb(220, 220, 220);
  }
  
  tr:nth-child(even){
    background-color: rgb(232, 232, 232);
  }
  tr:nth-child(even) > td:hover{
    background-color: rgb(220, 220, 220);
  }

  th{
    text-align: right;
  }


  .hamburger-menu{
    display:none;
    background:transparent;
    border:none;
    fill:white;
  }

  .error-msg{
    color:#f7f7f7;
    font-weight: 400;
    font-size:0.8rem;
    text-align:center;
  }
  
  /* form modal */

  .form-body{
    display:flex;
    flex-direction: column;
    padding:0.5rem 1rem;
    gap:0.25rem;
  }

  .form-fields{
    display:flex;
    flex-direction: column;
  }

  .custom-field {
    position: relative;
    font-size: 14px;
    border-top: 20px solid transparent;
    margin-bottom: 5px;
    --field-padding: 12px;
  }

  .custom-field input {
    border: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #f2f2f2;
    padding: var(--field-padding);
    border-radius: 3px;
    width:100%;
    outline: none;
    font-size: 14px;
  }

  .custom-field .placeholder {
    position: absolute;
    left: var(--field-padding);
    width: calc(100% - (var(--field-padding) * 2));
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    top: 22px;
    line-height: 100%;
    transform: translateY(-50%);
    color: #aaa;
    transition: 
      top 0.3s ease,
      color 0.3s ease,
      font-size 0.3s ease;
  }

  .placeholder{
    cursor:text;
  }

  .custom-field input.dirty + .placeholder,
  .custom-field input:focus + .placeholder,
  .custom-field input:not(:placeholder-shown) + .placeholder {
    top: -10px;
    font-size: 10px;
    color: #222;
  }

  .custom-field.one input {
    background: none;
    border: 2px solid #0f0c0c;
    transition: border-color 0.3s ease;
  }
  
  .custom-field.one input + .placeholder {
    left: 8px;
    padding: 0 5px;
  }
  
  .custom-field.one input.dirty,
  .custom-field.one input:not(:placeholder-shown),
  .custom-field.one input:focus {
    border-color: #222;
    transition-delay: 0.1s
  }
  
  .custom-field.one input.dirty + .placeholder,
  .custom-field.one input:not(:placeholder-shown) + .placeholder,
  .custom-field.one input:focus + .placeholder {
    top: 0;
    font-size: 10px;
    color: #222;
    background: #fff;
    width: auto
  }
  
  
  
  /* modal */

  .modal{
    display:none;
    position:fixed;
    z-index:99999;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    background-color:rgba(0,0,0,0.5);
  }

  .modal-content{
    background-color:white;
    display:flex;
    flex-direction: column;
    width:min(450px,90%);
    margin: auto;
    box-shadow: 0px 3px 7px rgba(0,0,0,0.2);
    animation-name: modalopen;
    animation-duration:0.3s;
  }


  
  .modal-header{
    display:flex;
    justify-content: space-between;
    background-color:#0f0c0c;
    color:white;
    padding:0.5rem 1rem;
  }

  .modal-title{
    align-self: center;
  }

  .close-modal{
    border:none;
    background-color: inherit;
    color:white;
    cursor: pointer;
    font-size:2rem;
  }

  .modal-body{
    display: flex;
    flex-direction: column;
    gap:1rem;
    padding:1rem;
  }

  .prizes > li{
    list-style:disc;
  }

  .prizes{
    padding-left:2rem;
    padding-top:0.25rem;
  }

  
  .modal-footer{
    display: flex;
    justify-content: flex-end;
    gap:1rem;
    padding:0.5rem 1rem;
    background-color: whitesmoke;
  }
  
  .btn{
    background-color:transparent;
    border:0.5px solid grey;
    color:black;
    font-size:0.9rem;
    padding:0.75rem 1.25rem;
    cursor:pointer;
  }

  .btn-primary{
    background-color:#0f0c0c;
    color:white;
  }

  .btn:hover{
    background-color: rgb(231, 231, 231);
  }

  .btn-primary:hover{
    background-color: #1c1616;
  }

  .btn+.btn{
    margin-left:0.3rem;
  }




/* popup */

  .pop-up{
    display:none;
    position: fixed;
    justify-content: center;
    width:100%;
    top:0;
    left:0;

  }

  .pop-up-msg{
    position:fixed;
    text-align:center;
    top:130px;
    padding: 0.5rem 1rem;
    border-radius:0.5rem;
    background-color:white;
    color:green;
    animation-name:fade-in;
    animation-duration:0.5s;
  }


  /* media queries */

  @media only screen and (max-width:500px){
    p{
      font-size: 0.9rem;
    }

    .trnmt-text{
      font-size:1rem;
    }

    .trnmt-btn{
      font-size:0.9rem;
    }

    .trnmt-type-name{
      font-size:1.6rem;
    }

    h1{
      font-size:2rem;
    }
  }
  
  @media only screen and (max-width:900px){
    .hamburger-menu{
      display:block;
      margin-left:auto;
      margin-right:1rem;
    }
    
    .navbar{
      padding-right:2rem;
    }

    .nav-items{
      display:none;
    }

    .active{
      display:flex;
      flex-direction: column;
      background-color: rgba(15, 12, 12, 0.99);
      position:absolute;
      left:0;
      top:100px;
      width:100vw;
      height:100vh;
      z-index:1000000;
    }
  
    .active > *{
      text-align: center;
      color:white;
      font-weight:bold;
      font-size: 1.1rem;
      padding: 1rem 3rem;
    }
  
    .active > * :hover{
      background-color: inherit;
    }

    .active > li > a{
      padding: 1rem 5rem;
    }

    .active > :first-child{
      margin-top:2rem;
    }
    
  }

  @keyframes modalopen{
    from{
      transform:translateY(150%);
    }
    to{
      transform:translateY(0%);
    }
  }

  @keyframes fade-in{
    from{
      opacity:0;
    }
    to{
      opacity:1;
    }
  }