:root {
  --text-body: #143642;  
  --header-foote-back: #0C6E70;  
  --background: #F2F2F2;  
  --back1: #D57B1F;  
  --back2: #8C1C17;  
  
  --font-heading: 'Roboto', sans-serif;
  --font-body: 'Open Sans', sans-serif;
  --font-paragraph: 'Open Sans', sans-serif;
  --font-footer: 'Open Sans', sans-serif;
}


body {
  font-family: var(--font-body);
}

h1, h2, h3 {
  font-family: var(--font-heading);
}

p {
  font-family: var(--font-paragraph);
}

footer {
  font-family: var(--font-footer);
}


@media (max-width: 999px) {
  .hero {
    position: static;  
  }

  h1 {
    font-size: 2.5rem;
    text-align: center;
    font-size: 1.4rem;
  
    border-radius: 1rem;
    margin: 0 auto;
   
    color: var(--back1);
    background-color: none;
    
  }
.hero {
  width: 90%;               
  
  margin: 0 auto;          
  display: block;
  position: static;         
  padding: 1rem;
  box-sizing: border-box;
  text-align: center;       
}

.hero img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;          
  border-radius: 0;
}

  }   
  .data, .weather-section {
    position: static;
    margin: 1rem auto;
   

    background: var(--header-foote-back);
    padding: 1rem;
    border-radius: 8px;
    box-shadow: none;
  }

  .data h2, .weather-section h3 {
    text-align: center;
    font-size: 1.1rem;
    margin-bottom: 1rem;
    background: var(--text-body);
    padding: 0.5rem;
    border-radius: 6px;
    color: var(--background);
  }

  
  .info-group, .weather-section {
    display: grid;
    row-gap: 6px;
    color: var(--background);
  }

  .info-data {
    display: grid;
    grid-template-columns: max-content 15px 1fr;
    align-items: center;
      color: var(--back1);
  }

   .label {
  display: inline-block;  

 
  text-align: right;
   color: var(--background);;  
  font-size: .9rem;           
}
  .colon {
    text-align: right;
    font-weight: bold;
      color: var(--background);
    font-size: .9rem;
  }

  .value {
    text-align: left;
    font-size: .9rem;
      color: var(--background);
  }
.weather-title img {
  width: 60px !important;
  height: 60px !important;
  margin-left: 8px !important;
  vertical-align: middle !important;
  display: inline-block !important;
}
 

footer {

  margin: 0 auto;
  margin-top: -1rem;
  color: var(--background);
  text-align: center;
  background: var(--text-body);
  display: grid;
  padding-bottom: 1rem;
  padding-top: 1rem;
  grid-template-columns: 1fr;
  
}

footer p { 
display: flex;
justify-content: center;  
align-items: center;
font-size: .8rem;  
}

@media (min-width: 500px) and (max-width: 999px) {
  .hero {
 
    margin: 0 auto;
    position: static;
    padding: 1rem;
    box-sizing: border-box;
    text-align: center;
  }

  .hero img {
 
    height: auto;
    display: block;
    margin: 0 auto;
    border-radius: 0;
  }

  h1 {
    font-size: 3rem;
    text-align: center;
    background: none;
    padding: 1rem 0;
    margin:  0 auto;

    color: var(--text-body);
  }

  .data, .weather-section {
    position: static;

 
    margin: 0 auto;
    padding: 1rem;
    background: var(--back1);
    border-radius: 8px;
     }

  .data {
    margin-top: .4rem;
  }

  .weather-section {
    margin-top: .4rem;
  }

  .data h2, .weather-section h3 {
    text-align: center;
    font-size: 1.8rem;
    background: var(--background);
    color: var(--text-body);
    padding: 0.5rem;
    border-radius: 6px;
    margin-bottom: 1rem;
  }

  .info-group, .weather-section {
    display: grid;
    row-gap: 6px;
  }

  .info-data {
    display: grid;
    grid-template-columns: max-content 15px 1fr;
    align-items: center;
    color: var(--background);
  }

  .label {
    display: inline-block;
    margin-left: 4rem;
    width: 140px;
    min-width: 130px;
    text-align: right;
    font-size: 1rem;
    color: var(--text-body);
    padding: 0.3rem 0;
  }

  .colon {
    width: 15px;
    text-align: center;
    font-weight: bold;
    font-size: 1rem;
    color: var(--text-body);
  }

  .value {
    text-align: left;
    font-size: 1rem;
    color: var(--text-body);
    padding: 0.3rem 0;
  }

  footer {
    margin: 30px auto 0;
  
    text-align: center;
    background: var(--text-body);
    margin-top: -.3rem;
  }

  footer p {

    display: flex;
    justify-content: center;
    align-items: center;
    
  }
}
