@media (max-width: 1024px) {
  /* BASE  */
  .container {
    max-width: 1024px;
    margin: auto;
    padding: 0px 20px;
  }
  /* LAYOUT  */
  .nav-links {
    display: none;
  }
  .icon-bars {
    display: block;
  }
  .md-block {
    display: block;
  }
  .md-grid-cols-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .md-flex {
    display: flex;
  }
  .md-row-center {
    justify-content: center;
  }
  .md-hidden {
    display: none;
  }

  .md-w-full {
    width: 100%;
  }
  .md-w-50 {
    width: 50%;
  }
  /* TYPOGRAPHY   */
  .md-text-center {
    text-align: center;
  }

  /* COMPONENTS  */
  .bg-image {
    height: 600px;
  }
  .list-post {
    display: flex;
    flex-direction: column;
    gap: 32px;
    margin-top: 48px;
    margin-bottom: 48px;
  }
  .featured-post {
    width: 100%;
  }
  .all-post {
    width: 100%;
  }
  .item-post {
    padding: 32px;
  }
  .list-category {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 40px;
  }
  .item-category {
    text-align: center;
  }
  .grid-author {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
  }
  .list-blog {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
  }
  .feedback {
    display: flex;
    flex-direction: column;
    padding: 40px 10px;
    gap: 20px;
  }
  .feedback-left {
    width: 100%;
  }
  .feedback-right {
    width: 100%;
  }
  .newsletter-content {
    display: block;
    gap: 64px;
    padding: 80px 96px;
  }
  .our-story-content {
    position: static;
    width: 100%;
    padding: 20px 0px;
  }
  .our-story img {
    width: 100%;
  }

  /* UTILITES  */

  .md-my-10 {
    margin-top: 40px;
    margin-bottom: 40px;
  }

  .md-px-0 {
    padding-left: 0px;
    padding-right: 0px;
  }
  .md-px-3 {
    padding-left: 12px;
    padding-right: 12px;
  }
  .md-py-3 {
    padding-top: 12px;
    padding-bottom: 12px;
  }
  .md-py-5 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .md-py-12 {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .md-py-20 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .my-12 {
    margin-top: 48px;
    margin-bottom: 48px;
  }
  .pt-20 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .md-pr-0 {
    padding-right: 0px;
  }
  .md-mt-5 {
    margin-top: 20px;
  }
  .md-ml-0 {
    margin-left: 0;
  }
  .md-mt-10 {
    margin-top: 40px;
  }

  .md-bottom-0 {
    bottom: 0;
  }
}

@media (max-width: 640px) {
  /* BASE  */
  .container {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
  }

  /* LAYOUT  */
  .sm-w-full {
    width: 100%;
  }
  .sm-w-50 {
    width: 100%;
  }
  .sm-flex-col {
    display: flex;
    flex-direction: column;
  }
  .sm-grid-cols-1 {
    grid-template-columns: repeat(1, 1fr);
  }

  .sm-block {
    display: block;
  }

  /* COMPONENTS  */
  .heading-display {
    font-size: 36px;
    font-weight: 700;
    line-height: normal;
  }
  .heading-h1 {
    font-size: 32px;
    font-weight: 700;
    line-height: normal;
  }
  .heading-h2 {
    font-size: 28px;
    font-weight: 700;
    line-height: normal;
  }
  .heading-h3 {
    font-size: 24px;
    font-weight: 700;
    line-height: normal;
  }
  .section {
    display: flex;
    flex-direction: column;
    padding: 20px;
    gap: 60px;
  }
  .about-us {
    width: 100%;
  }
  .our-mission {
    width: 100%;
  }

  .list-category {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
    margin-top: 40px;
  }
  .absolute {
    position: static;
    margin-top: 20px;
  }
  .our-story-content {
    width: 100%;
    padding: 0px;
  }
  .our-story img {
    width: 100%;
  }
  .grid-author {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }
  .list-blog {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
  }
  .title {
    display: block;
    margin-bottom: 32px;
  }
  .feedback {
    display: flex;
    flex-direction: column;
    padding: 40px 10px;
    gap: 20px;
  }
  .feedback-left {
    width: 100%;
  }
  .feedback-right {
    width: 100%;
  }

  .footer-top {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .nav-footer {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
  .newsletter-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 80px 10px;
  }
  .newsletter-content h2 {
    text-align: center;
  }
  .newsletter-form {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .email-input {
    padding: 18px 16px;
    border: 1px solid var(--color-dark-gray);
    font-size: 16px;
    outline: none;
    width: 100%;
    background: transparent;
    color: white;
  }
  .btn-primary {
    background-color: var(--color-primary);
    height: 56px;
    width: 100%;
    cursor: pointer;
    font-family: "Sen";
    font-weight: 700;
    font-size: 18px;
  }
  .social {
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: center;
  }

  /* UTILITES  */

  .sm-px-5 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .sm-py-3 {
    padding-top: 12px;
    padding-bottom: 12px;
  }
  .sm-py-5 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .sm-py-10 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sm-py-12 {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .sm-pt-16 {
    padding-top: 64px;
  }
  .sm-my-10 {
    margin-top: 40px;
    margin-bottom: 40px;
  }

  .sm-hidden {
    display: none;
  }
}
