      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }

      @import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

      @font-face {
        font-family: "Roboto Thin";
      }

      .morning-clrs {
        --background: linear-gradient(248.66deg, #ff7e7e 0%, #8159a9 100%);
      }

      .afternoon-clrs {
        --background: linear-gradient(248.66deg, #6192ca 0%, #7571ec 100%);
      }

      .night-clrs {
        --background: linear-gradient(248.66deg, #322956 0%, #674ea9 100%);
      }

      body {
        font-family: "Roboto", sans-serif;
        background-image: var(--background);
        background-attachment: fixed;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        padding: 1rem;
      }

      .app-container {
        --text-shadow: -4.51px 2.26px 0.75px rgba(0, 0, 0, 0.15);
        color: white;
        padding: 1.5rem;
        border-radius: 10px;
      }

      .app-container header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 2.5rem;
      }
      .weather-section {
        margin-bottom: 1rem;
      }

      .weather-section img {
        width: 100px;
      }

      .temp-wrapper {
        display: flex;
        font-family: "Roboto Thin", sans-serif;
      }

      .temp {
        display: flex;
      }

      .temp h1 {
        font-size: 6.875rem;
        font-weight: 100;
        text-shadow: var(--text-shadow);
      }

      .temp .degree {
        font-size: 2vw;
      }

      .weather-description {
        align-self: flex-end;
        position: relative;
        left: -15px;
        text-transform: capitalize;
      }

      .date-section {
        margin-bottom: 1rem;
        font-family: "Roboto Thin";
      }

      .date {
        font-size: 2rem;
        margin-bottom: 0.5rem;
      }

      .day-and-hour {
        font-size: 1.5rem;
        margin-bottom: 2rem;
      }

      .weather-details {
        font-family: "Roboto Thin", sans-serif;
        display: flex;
        align-items: center;
        text-align: center;
        gap: 0.5rem;
        margin-bottom: 60px;
      }

      .weather-details img {
        width: 17px;
      }

      .detail {
        display: contents;
      }

      .forecast-section {
        position: relative;
      }

      .forecast {
        display: flex;
        gap: 0.5rem;
        overflow-y: auto;
      }

      .forecast-day-card {
        display: grid;
        gap: 0.5rem;
        justify-items: center;
        align-content: space-between;
        background-color: rgba(255, 255, 255, 0.2);
        padding: 1rem 0.5rem;
        border-radius: 0.6rem;
        border: 1px solid rgba(255, 255, 255, 0.373);
      }

      .forecast-section img {
        width: 50px;
      }

      @media (min-width: 570px) {
        body {
          height: 100vh;
          place-items: center;
        }
      }

      @media (min-width: 650px) {
        .app-container {
          padding: 2rem 4rem;
        }
      }