/* global interior */
body:not(.path-frontpage) main .region-content {
  margin-bottom: 100px;
}

/* block primary */
.block-primary {

  .paragraph {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 0;
    gap: 0 50px;
    width: 100%;
    background-color: var(--bg-primary-color);

    .left,
    .right {
      flex: 1 1 calc(50% - 25px);
    }

    .caption {
      flex: 0 0 100%;
      font-size: 14px;
      display: flex;
      gap: 5px;
      text-transform: capitalize;

      &::before {
        content: "___";
      }
    }

    .title {
      font-size: 50px;
      line-height: 76px;
      font-weight: 600;
      color: var(--color-default);
      font-family: var(--font-heading);
      text-transform: capitalize;
    }

    .text {
      font-size: 20px;
      color: var(--color-default);
      margin: 25px 0 40px;
    }

    .link {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      gap: 0 20px;

      .link-item a {
        color: var(--color-black) !important;
        background: var(--btn-primary-color);
        font-family: var(--font-primary);
        font-weight: 600;
        font-size: 16px !important;
        padding: var(--btn-spacing);
        transition: var(--ani-text-fade);
        text-transform: capitalize;
        text-decoration: none;
        display: inline-block;

        &:hover {
          color: var(--color-default) !important;
        }
      }
    }

    .link div:nth-child(2) a {
      background-color: var(--color-default);

      &:hover {
        color: var(--btn-primary-color) !important;
      }
    }
  }
}

/* block secondary */
.block-secondary {
  margin: 100px 0;

  .paragraph {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 0;
    gap: 0 50px;
    width: 100%;
    background-color: var(--bg-primary-color);

    .left,
    .right {
      flex: 1 1 calc(50% - 25px);
    }

    .caption {
      flex: 0 0 100%;
      font-size: 14px;
      display: flex;
      gap: 5px;
      text-transform: capitalize;

      &::before {
        content: "___";
      }
    }

    .title {
      font-size: 50px;
      line-height: 76px;
      font-weight: 600;
      color: var(--color-default);
      font-family: var(--font-heading);
      text-transform: capitalize;
    }

    .text {
      font-size: 20px;
      color: var(--color-default);
      margin: 25px 0 40px;
    }

    .link {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      gap: 0 20px;

      .link-item a {
        color: var(--color-black) !important;
        background: var(--btn-primary-color);
        font-family: var(--font-primary);
        font-weight: 600;
        font-size: 16px !important;
        padding: var(--btn-spacing);
        transition: var(--ani-text-fade);
        text-transform: capitalize;
        text-decoration: none;
        display: inline-block;

        &:hover {
          color: var(--color-default) !important;
        }
      }
    }

    .link div:nth-child(2) a {
      background-color: var(--color-default);

      &:hover {
        color: var(--btn-primary-color) !important;
      }
    }
  }
}

/* accessory block */
.block-accessory > .field__item {
  margin: 100px 0;
}

/* gallery profile */
.profile-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;

  .profile-item {
    min-width: 0;
  }

  .profile-role {
    font-size: 16px;
    margin: 20px 0 15px;
    border-bottom: 1px solid #0f3a05;
    padding-bottom: 15px;
  }

  .profile-name {
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 10px;
  }

  .profile-photo {
    overflow: hidden;

    img {
      transition: var(--ani-block-img-zoom);

      &:hover {
        transform: var(--ani-block-img-scale);
      }
    }
  }

  /* tablet two-col */
  @media (max-width: 1024px) {
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;

    .profile-item {
      width: 100%;
      max-width: 360px;
    }
  }

  /* phone one-col */
  @media (max-width: 480px) {
    grid-template-columns: 1fr;
    justify-items: center;

    .profile-item {
      width: 100%;
      max-width: 360px;
    }
  }
}

/* gallery photos */
.gallery-photos {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;

  .gallery-photo-item {
    padding: 20px;
    background-color: rgb(36, 83, 26);
    overflow: hidden;

    img {
      transition: var(--ani-block-img-zoom);

      &:hover {
        transform: var(--ani-block-img-scale);
      }
    }
  }
}

/* q&a primary */
.block-qa {
  margin: 100px 0;

  .paragraph {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    padding: 0;
    gap: 0 50px;
    width: 100%;
    background-color: var(--bg-primary-color);

    .left,
    .right {
      flex: 1 1 calc(50% - 25px);
    }

    .caption {
      flex: 0 0 100%;
      font-size: 14px;
      display: flex;
      gap: 5px;
      text-transform: capitalize;

      &::before {
        content: "___";
      }
    }

    .title {
      font-size: 50px;
      line-height: 76px;
      font-weight: 600;
      color: var(--color-default);
      font-family: var(--font-heading);
      text-transform: capitalize;
    }

    .text {
      font-size: 20px;
      color: var(--color-default);
      margin: 25px 0 40px;
    }

    .link {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      gap: 0 20px;

      .link-item a {
        color: var(--color-black) !important;
        background: var(--btn-primary-color);
        font-family: var(--font-primary);
        font-weight: 600;
        font-size: 16px !important;
        padding: var(--btn-spacing);
        transition: var(--ani-text-fade);
        text-transform: capitalize;
        text-decoration: none;
        display: inline-block;

        &:hover {
          color: var(--color-default) !important;
        }
      }
    }

    .link div:nth-child(2) a {
      background-color: var(--color-default);

      &:hover {
        color: var(--btn-primary-color) !important;
      }
    }
  }
}

/* q&a accordion */
.ckeditor-accordion-container > dl {
  position: relative;
  border-top: 1px solid rgb(182, 182, 182);
  border-bottom: none;
  border-left: none;
  border-right: none;
}

.ckeditor-accordion-container > dl dd {
  padding: 0;
}

.ckeditor-accordion-container > dl dt > a,
.ckeditor-accordion-container > dl dt > a:not(.button) {
  text-decoration: none;
  background-color: transparent;
  border-bottom: 1px solid rgb(182, 182, 182);
  padding: 30px 50px 30px 0;
}

body:not(.path-frontpage) main .node .ckeditor-accordion-container > dl dt > a {
  color: #FFF !important;
  font-weight: normal !important;
}

.ckeditor-accordion-container > dl dt > a:hover,
.ckeditor-accordion-container > dl dt > a:not(.button):hover {
  background-color: transparent;
}

.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle {
  left: auto;
  right: 0;
}

.ckeditor-accordion-container dd > p {
  margin: 20px 0;
}

/* grid blocks */
.grid > .field__item > .paragraph {
  > .field {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;
    height: 100%;

    > .field__item {
      min-height: 480px;
      width: 100%;
      height: 100%;
      background-color: #24531a;

      .paragraph {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
      }
    }

    > .field__item:nth-child(6n + 1) {
      grid-column: span 2;
    }

    > .field__item:nth-child(6n + 5) {
      grid-column: span 2;
    }

    > .field__item:nth-last-child(2):nth-child(odd),
    > .field__item:nth-last-child(1):nth-child(even) {
      grid-column: span 2;
    }

    .grid-text,
    .grid-title {
      margin: 0 20px 20px;
    }

    .grid-title {
      font-size: 28px;
      font-weight: 600;
    }

    .grid-text {
      font-size: 16px;
    }

    .grid-photo {
      width: 100%;
      height: 100%;
      overflow: hidden;

      img {
        transition: var(--ani-block-img-zoom);

        &:hover {
          transform: var(--ani-block-img-scale);
        }
      }

      .field__item {
        width: 100%;
        height: 100%;
      }

      img {
        object-fit: cover;
        width: 100%;
        height: 100%;
      }
    }

    /* tablet two-col */
    @media (max-width: 1024px) {
      grid-template-columns: repeat(2, 1fr);

      > .field__item,
      > .field__item:nth-child(6n + 1),
      > .field__item:nth-child(6n + 5),
      > .field__item:nth-last-child(2):nth-child(odd),
      > .field__item:nth-last-child(1):nth-child(even) {
        grid-column: span 1;
      }
    }

    /* phone one-col */
    @media (max-width: 480px) {
      grid-template-columns: 1fr;

      > .field__item,
      > .field__item:nth-child(6n + 1),
      > .field__item:nth-child(6n + 5),
      > .field__item:nth-last-child(2):nth-child(odd),
      > .field__item:nth-last-child(1):nth-child(even) {
        grid-column: span 1;
      }
    }
  }
}

/* stats block */
body:not(.path-frontpage) main .node .number span {
  font-size: inherit !important;
}

/* contact block */
body:not(.path-frontpage) main .node .contact-links a {
  font-size: 16px !important;
  color: #FFF !important;
  text-decoration: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 15px;
  transition: var(--ani-text-fade);

  &:hover {
    color: var(--btn-primary-color) !important;
  }
}

.contact-links > .field__item > div {
  margin: 20px 0;
}

.contact-links .contact-items {
  div a::before {
    font-family: var(--font-icon-family-free);
    font-weight: var(--font-icon-weight);
    font-size: 26px;
    width: 36px;
    height: 36px;
    text-align: center;
  }

  div:nth-child(1) a::before {
    content: var(--font-icon-email);
  }

  div:nth-child(2) a::before {
    content: var(--font-icon-phone);
  }

  div:nth-child(3) a::before {
    content: var(--font-icon-address);
  }
}

/* contact block forms */
.contact-form label {
  font-size: 12px;
  text-transform: capitalize;
}

.contact-form {

  .form-control {
    background: transparent;
    border-radius: 0;
    padding: 20px;
    color: #FFF;
    transition: background-color 0.2s ease;
  }

  .form-control:focus,
  .form-control:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: inherit;
    box-shadow: none;
  }
}

/* community portal page */
.community-portal-page {

  .nav > .nav-item {
    margin-bottom: 15px;

    .nav-item {
      transition: var(--ani-text-fade);

      &:hover {
        color: var(--btn-primary-color);
      }
    }
  }

  .nav > .nav-item > .nav-link {
    color: var(--color-orange);
    text-transform: uppercase;
    font-size: 26px;
    font-family: var(--font-heading);
    border-bottom: 1px solid;
  }

  .dropdown-toggle::after {
    display: none;
  }

  ul {
    list-style-type: none;
    padding-left: 1rem;

    @media (max-width: 1024px) {
      padding-left: 0;
    }
  }
}