@media screen and (min-width:1240px){ 

    * {
    box-sizing: border-box;
    max-width: 100%;
    padding-left:30px;
    padding-right: 30px;
    background-color: black;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  }

  img {
    max-width: 100%;
  }

  header, main, main > section, footer {
    display: grid;
    margin-top: 3px;
    background-color: black;
  }

  p{
    color: white;
  }

  header, main, footer{
    max-width: 100%; 
    margin:0 auto; 
  }


  header {
    grid-template-columns: 1fr 1fr; 
    grid-auto-rows: 50px; 
  }

  header nav {
    align-self: center; 
    justify-self:end; 
  }

  #slogan img {
    margin-bottom: 10px;
  }

  #slogan h1{
    align-self: center; 
    justify-self:center; 
  }

  #sobremim {
    padding-top: 10px;
    font-size: 40px;
    justify-self: center;
  }

  #section1 {
    text-align: center;
    justify-content: center;
  }

  #section1 article {
    justify-content: center;
    padding-top: 10px;
  }

  main #section1, main #section2 {
    max-width: 100%;
    height: 100%;
  }

  main #section1 {
    grid-template-columns: 1fr;
    justify-self: center; 
  }

  main #section1 article p {
    align-self: center; 
    justify-self:center; 
  }

  a {
      color: #fff;
      text-decoration: none;
  }

  #textdesign {
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 40px;
    justify-self: center;
  }

  #section2 {
    display: grid; 
    grid-template-columns: repeat(4, 1fr); 
    grid-column-gap: 20px; 
    grid-row-gap: 20px;
    margin: 5px;
    align-self: center; 
    justify-self:stretch;
    width:  100%;
  }

  .container {
    filter: blur(0);
    transform: scale(1);
  }

  .image {
    display: block;
    width: 100%;
    height: auto;
  }

  .overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: .5s ease;
    background-color: #000;
    opacity: 50%
  }

  .container:hover .overlay {
    opacity: 1;
  }

  .text {
    color: white;
    font-size: 20px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
  }

  #foto {
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 40px;
    justify-self: center;
  }

   #section3 {
    display: grid; 
    grid-template-columns: repeat(3, 1fr); 
    grid-column-gap: 20px; 
    grid-row-gap: 20px;
    padding: 20px;
    margin: 5px;
    align-self: center; 
    justify-self:stretch;
    width:  100%;
  }

  #contacts {
    display: grid; 
    grid-template-columns: repeat(3, 1fr);
  }

  #contacts img {
    width: 40px;
  }

 
  .hide-desktop {
    display: none;
  }

  .visible-desktop {
    display: block;
  }

}