.__todas_oficinas {
  & .__header {
    transform: translateY(-70px);

    & h4 {
      font-size: 15px;
      font-weight: 800;
      color: #494949;
    }

    & span {
      font-family: 'Alex Brush', cursive;
      font-size: 60px;
      color: #f6be4a;
      font-weight: 400;
      line-height: 0.6;
    }
  }

  & .__grid {
    display: flex;
    flex-direction: column;
    gap: 60px;
    margin-bottom: 60px;

    & .__item {
      display: flex;
      align-items: start;
      padding-bottom: 30px;
      position: relative;

      &::after {
        content: '';
        width: calc(100% - 200px);
        height: calc(100% - 135px);
        background: #F5F5F5;
        position: absolute;
        right: 0;
        bottom: 0;
        z-index: -1;
      }

      & .__img {
        width: 445px;
        position: relative;
        z-index: 1;
        aspect-ratio: 445/286;

        & img {        
          width: 100%;
          height: 100%;
          object-fit: cover;
        }

        &::before {
          content: '';
          width: calc(100% + 30px);
          height: calc(100% + 30px);
          background: #1F3215;
          box-shadow: 3px 3px 6px #0000004F;
          position: absolute;
          top: 0;
          left: 0;
          z-index: -1;
        }
      }
      & .__txt {
        width: calc(100% - 445px);
        min-height: 320px;
      }

      & .__title {
        display: flex;
        align-items: center;    
        position: relative;
        z-index: 1;

        & .--icon {
          width: 135px;
          aspect-ratio: 1/1;
          display: flex;
          align-items: center;
          justify-content: center;
          background: #2F4B20;
        }
      }

      & .__info {
        padding: 40px 20px 35px 80px;
        
        & h5 {
          font-size: 30px;
	        color: #494949;
	        font-weight:900;
	        line-height: 1.2;

          & .title-oficina {
            font-family: 'Alex Brush', cursive;
            width: 100%;
            display: block;
            font-size: 52px;
            font-weight: 400;
            text-transform: lowercase;
            color: #253c18;
            line-height: 0.7;
          }
        }
      }
    
      &:nth-child(even) {
        flex-direction: row-reverse;

        &::after {
          left: 0;
        }

        & .__img {
          &::before {
            left: -30px;
            box-shadow: -3px 3px 6px #0000004F;
          }
        }

        & .__title {
          justify-content: end;
        }

        & .__info {
          padding: 40px 80px 35px 20px;

          & h5 {
            text-align: end;
          }
        }
      }
    }
  }

  & .__button {
    display: flex;
    justify-content: center;
    margin-bottom: 100px;

    & a {
      width: 210px;
      display:block;
      text-align: center;
      background:#2f4b20;
      color:#fff;
      display: inline-block;
      text-align: center;
      padding: 15px 15px;
      font-size: 20px;
      font-weight: 600;
      margin-right: 3px;
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease;
    }
  }
}

/* RESPONSIVE */

@media (max-width: 1200px) {
  .__todas_oficinas {
    & .__header {
      transform: translateY(-50px);
  
      & span {
        font-size: 55px;
      }
    }
  
    & .__grid {
      gap: 50px;
      margin-bottom: 50px;
  
      & .__item {
        &::after {
          height: calc(100% - 120px);
        }
  
        & .__img {
          width: 400px;
        }
        & .__txt {
          width: calc(100% - 400px);
          min-height: 290px;
        }
  
        & .__title {  
          & .--icon {
            width: 120px;
          }
        }
  
        & .__info {
          padding: 30px 20px 30px 60px;
          
          & h5 {
            font-size: 25px;
            
            & .title-oficina {
              font-size: 45px;
            }
          }
        }
      
        &:nth-child(even) {  
          & .__info {
            padding: 30px 60px 30px 20px;
          }
        }
      }
    }
  
    & .__button {
      margin-bottom: 80px;
  
      & a {}
    }
  }
}

@media (max-width: 1024px) {
  .__todas_oficinas {
    & .__header {
      transform: translateY(-35px);
    }
  
    & .__grid {
      gap: 30px;
      margin-bottom: 30px;
  
      & .__item {
        &::after {
          height: calc(100% - 100px);
        }
  
        & .__img {
          width: 350px;

          &::before {
            width: calc(100% + 20px);
            height: calc(100% + 20px);
          }
        }
        & .__txt {
          width: calc(100% - 350px);
          min-height: 245px;
        }
  
        & .__title {  
          & .--icon {
            width: 100px;
          }
        }
  
        & .__info {
          padding: 20px 20px 20px 40px;
          
          & h5 {
            font-size: 18px;
            
            & .title-oficina {
              font-size: 35px;
            }
          }
        }
      
        &:nth-child(even) {  
          & .__info {
            padding: 20px 40px 20px 20px;
          }
        }
      }
    }
  
    & .__button {
      margin-bottom: 50px;
  
      & a {
        font-size: 18px;
      }
    }
  }
}

@media (max-width: 800px) {
  .__todas_oficinas {
    & .__header {
      transform: translateY(0px);
      margin-bottom: 30px;
    }
  
    & .__grid {  
      & .__item {
        flex-direction: column-reverse!important;
        padding: 0;

        &::after {
          display: none;
        }
  
        & .__img {
          width: 100%;

          &::before {
            display: none;
          }
        }
        & .__txt {
          width: 100%;
          min-height: auto;
          display: flex;
          align-items: center;
          gap: 10px;
        }
  
        & .__title {  
          & .--icon {
            width: 70px;

            & img {
              width: 70%;
            }
          }
        }
  
        & .__info {
          padding: 0px;
          
          & h5 {
            font-size: 16px;
            line-height: 1;
            
            & .title-oficina {
              font-size: 25px;
            }
          }
        }
      
        &:nth-child(even) {  
          & .__txt {
            flex-direction: row-reverse;
          }
          & .__info {
            padding: 0px;
          }
        }
      }
    }
  
    & .__button {
      margin-bottom: 50px;
  
      & a {
        font-size: 16px;
      }
    }
  }
}