ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
body {
  padding-top: 110px;
}
.top_bar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: #f2f2f2;
  border-bottom: 1px solid #ccc;
  .container {
    display: flex;
    height: 43px;
    justify-content: space-between;
    align-items: center;
    .links_top_bar {
      font-size: 14px;
      color: #707070;
      display: flex !important;
      gap: 16px;
      a {
        color: #707070;
        text-decoration: none;
      }
    }
    .dropdown_language {
      margin: 0 0 0 auto;
display: none;
      ul {
        position: relative;
        padding: 0;
        margin: 0;
        list-style-type: none;
      }
      .lang-toggle {
        width: 137px;
        height: 28px;
        background: #ffffff;
        border: 1px solid #cccccc;
        border-radius: 4px;
        font-size: 14px;
        color: #666666;
        padding: 0 6px;
        gap: 8px;
        display: flex;
        align-items: center;
        span {
          display: block;
          line-height: 14px;
        }
        &:hover {
          text-decoration: none;
          opacity: 0.8;
        }
        .lang-arrow {
          margin-left: 6px;
        }
        &.rotated .lang-arrow {
          transform: rotate(180deg);
        }
      }
      .lang-submenu {
        position: absolute;
        display: none;
        top: 100%;
        right: 0;
        left: 0;
        border: 1px solid #ccc;
        border-top: 0;
        padding: 0;
        margin: -1px 0 0;
        list-style-type: none;
        z-index: 101;
        background: #ffffff;
        border-radius: 0 0 4px 4px;
        a {
          font-size: 14px;
          color: #666666;
          padding: 0 6px;
          gap: 8px;
          display: flex;
          align-items: center;
          &:hover {
            text-decoration: none;
            opacity: 0.8;
          }
        }
      }
    }
  }
}
.header .search_mobile {
  display: none;
}
.header {
  position: fixed;
  top: 43px;
  left: 0;
  right: 0;
  z-index: 999;
  background: #fff;
  border-bottom: 1px solid #ccc;
  .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 67px;
  }
  a.logo {
    margin-bottom: 3px;
  }
  .menu {
    display: flex;
    gap: 48px;
    font-size: 16px;
    a {
      color: #252424;
      transition: text-shadow 0.2s;
      &:hover {
        text-decoration: none;
        text-shadow: 0.5px 0 0 currentColor;
      }
    }
    .active > a {
      font-weight: 700;
    }
    .has-submenu {
      position: relative;
      &:hover .submenu {
        display: block;
      }
      .icone-seta {
        margin-left: 4px;
        transition: transform 0.3s;
      }
      &:hover .icone-seta {
        transform: rotate(180deg);
      }
    }
    .submenu {
      display: none;
      position: absolute;
      top: 100%;
      left: 0;
      background: #fff;
      border: 1px solid #ccc;
      border-radius: 4px;
      padding: 8px 0;
      min-width: 180px;
      z-index: 101;
      li {
        padding: 6px 16px;
      }
    }
  }
  .search_wrapper {
    /* margin: 0 0 0 auto; */
  }
  #searchform {
    width: 248px;
    height: 38px;
    background: #f9f9f9;
    border-radius: 19px;
    .field {
      background: transparent;
      border: 0;
      padding-left: 16px;
      height: 38px;
      width: 206px;
      font-size: 14px;
      color: #707070;
      outline: none;
    }
  }
  .bt-search {
    background: transparent url(../img/icone-search.svg) center no-repeat;
    border: 0;
    height: 38px;
    width: 20px;
    display: inline-block;
    padding: 0;
    outline: none;
    cursor: pointer;
  }
}

footer {
  color: #707070;
  border-top: 1px solid #707070;
  padding: 90px 0;
  .col-sm-2 {
    padding: 0;
  }
  .title_footer {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 16px;
    display: block;
  }
  .social {
    display: flex;
    gap: 37px;
    align-items: end;
    margin-top: 1px;
  }
  .column02 p {
    font-size: 16px;
    line-height: 20px;
    a {
      color: #707070;
      font-size: 16px;
      line-height: 20px;
      margin-bottom: 12px;
      display: flex;
      align-items: center;
      gap: 10px;
      text-decoration: none;
    }
    a:hover {
      text-decoration: underline;
    }
  }
  ul {
    li {
      height: 20px;
      margin-bottom: 12px;
    }
    a {
      color: #141414;
      font-size: 16px;
      line-height: 20px;
      &:hover {
        color: #141414;
        text-decoration: none;
        opacity: 0.8;
      }
    }
  }
  .row02 {
    margin-top: 5px;
    font-size: 14px;
    line-height: 20px;
    align-items: end;
  }
}

.menu-toggle {
  display: none;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 24px;
  height: 18px;
  outline: none !important;
  flex-direction: column;
  justify-content: space-between;
  span {
    display: block;
    width: 24px;
    height: 2px;
    background: #252424;
  }
}

@media (min-width: 768px) {
  .row02 {
    .col-sm-3 {
      padding: 0;
    }
  }
}
@media (max-width: 767px) {
  body {
    padding-top: 103px;
  }
  .header {
    top: 41px;
  }
  .menu-toggle {
    display: flex;
  }
  .header .container {
    position: relative;
    height: 62px;
  }
  .header .logo {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .header .menu {
    display: none;
    flex-direction: column;
    position: absolute;
    top: 63px;
    left: 0;
    right: 0;
    background: #fff;
    border-bottom: 1px solid #ccc;
    padding: 20px;
    gap: 20px;
    z-index: 100;
    &.open {
      display: flex;
    }
  }
  .header .search_wrapper {
    position: static;
    margin-left: auto;
  }
  .header #searchform {
    width: 38px;
    background: transparent;
  }
  .header #searchform .field,
  .header #searchform .icon_close {
    display: none;
  }
  .header .search_mobile {
    display: none;
    position: absolute;
    top: 63px;
    left: 0;
    right: 0;
    background: #f9f9f9;
    border-bottom: 1px solid #ccc;
    padding: 12px 20px;
    z-index: 99;
    &.open {
      display: flex;
      form {
        width: 100%;
      }
    }
    input {
      width: 100%;
      height: 40px;
      border: 1px solid #ccc;
      border-radius: 19px;
      padding: 0 16px;
      font-size: 14px;
      outline: none;
    }
  }
  .top_bar {
    .container {
      justify-content: end;
      height: 41px;
      .links_top_bar {
        display: none !important;
      }
    }
  }
  footer {
    padding: 60px 0;
    .container {
      padding: 0 30px;
    }
    .col-sm-2 {
      padding: 0 15px;
    }
    .column02 {
      margin: 60px 0;
    }
    .row02 {
      flex-direction: column-reverse;
    }
    .copyright {
      margin-top: 33px;
      display: block;
    }
    .logo-group-footer {
      margin-top: 50px;
    }
  }
}
