body.my-maps-override section#sp-main-body {
  padding: 48px 0px 0px 0px !important;
}

body.my-maps-override div.map_canvas {
  z-index: 0;
}

body.my-maps-override div.map_canvas span.myaddress {
  display: none;
}

body.my-maps-override a.mymap.mymap-inverse.resultmymap {
  content: "Read More";
}

body.my-maps-override div.map_canvas .leaflet-popup-content-wrapper, .leaflet-popup-tip {
  min-height: unset !important;
  float: unset;
}

body.my-maps-override div.map_canvas .leaflet-popup-tip-container {
  margin-left: -10px;
}

body.my-maps-override div.mmlmap {
  width: 100% !important;
}

body.my-maps-override div#locationresult,
body.my-maps-override div#locationlocator,
div#maps div.result-count {
  display: none !important;
  pointer-events: none;
  padding: 0;
}

.e-portfolio > .mod-sppoll > .form-sppoll >.btn.btn-success.btn-poll-result {
 display:none !important;
}


.sclogin.ns-bs5 .btn {
   background-color: #3b99d4;
   border-color: #3b99d4;
   color: #ffffff;
}

.signin-text, .me-1 {
 display: none !important;
}

.sp-sign-in {
 display: none !important;
}

.offcanvas-menu {
   width: 320px;
}

body.ltr.offcanvs-position-left .offcanvas-menu {
   left: -320px;
}

.ns-bs5 ul {
  list-style: none;
  padding-left: 0px;
 }

.ns-bs5 .dropdown-menu.show {
  padding: 10px;
}

.ns-bs5 .dropdown-menu.show > li {
 padding: 5px;
}

/*Remove navigation from OSCampus text lesson*/
#oscampus.oscampus-text .osc-lesson-navigation {
 display: none;
}

/* Fix the spacing of non-sp-page-builder pages. */
body:not(.com-sppagebuilder) {
  section#sp-main-body {
    padding: 75px 0;
  }
  aside#sp-left {
    padding: 0;
  }
}

@media (max-width: 991px) {
  body:not(.com-sppagebuilder) {
    section#sp-main-body {
      padding: 16px 0;
    }
  }
  body.com-sppagebuilder {
    aside#sp-left {
      padding-top: 16px !important;
      div.custom-menu {
        margin-left: 0 !important;
      }
    }

    aside#sp-left div.custom-menu button.sppb-panel-heading {
color: white;
background-color: #3b99d4;

}

    &:has(aside#sp-left div.custom-menu) section.sppb-section:first-child {
      padding-top: 0px !important;
    }

    div.page-content:has(aside#sp-left:has(div.custom-menu))
      > section.sppb-section:first-child {
      padding-top: 0px !important;
    }
  }
}

/* Fix header spacing on all screen sizes.*/
@media (min-width: 992px) and (max-width: 1260px) {
  #sp-header {
    padding: 0 !important;
  }
}

/*Fix OSCampus font size*/
#oscampus.osc-container div,
#oscampus.osc-container p,
#oscampus.osc-container .osc-quiz-options,
#oscampus.osc-container .osc-quiz-question h4,
#oscampus.osc-container .osc-course-info {
  font-size: 18px;
  line-height: 28px;
}

@media (max-width: 991px) {
  #sp-header {
    height: max-content;
  }
}

@media (min-width: 992px) {
  /* Fix logo sizing on desktops. */
  #sp-header {
    height: max-content;

    #sp-menu {
      div.sp-column.justify-content-end {
        justify-content: space-between !important;

        nav.sp-megamenu-wrapper {
          flex-grow: 2;
        }
      }
    }

    /* Hide off-canvas toggle on desktop. */
    #offcanvas-toggler {
      display: none !important;
    }

    #sp-logo {
      margin: auto;
      .logo {
        height: 100%;
        padding: 0.5rem 0;
        img.logo-image {
          height: 100%;
        }
      }
    }
  }
}

/*
      Improve media defaults
    */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

/* Mega Menu Configuration */
.sp-megamenu-parent > li,
#sp-menu,
#sp-header .container-inner > .row,
.sp-megamenu-parent {
  position: static !important;
}
.sp-menu-full.container {
  border-top: 1px solid #ececed;
  animation: none !important;
  z-index: 2;
  max-width: 100vw;
  width: 100vw !important;
  padding: 0;
  left: 0 !important;
  bottom: 0;
  top: auto;

  .sp-mega-group {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .sp-group-title,
  .sp-mega-group .item-header > a {
    font-size: 20px !important;
    border-bottom: 1px solid #ebebea;
    text-transform: unset !important;
    text-decoration: none !important;
    transition: color 0.15s ease-in-out;
    &:hover {
      color: #3b99d4;
    }
  }
  .sp-mega-group-child sp-dropdown-items li.sp-menu-item a {
    font-weight: 600 !important;
    font-size: 18px !important;
  }

  .sp-menu-item a {
    font-size: 18px !important;
    letter-spacing: 0px !important;
    transition: border 0.15s ease-in-out;
    border-bottom: 1px solid transparent;
    &:hover {
      border-bottom-color: #ececed;
      color: #33302c !important;
    }
  }
}

.sp-megamenu-wrapper .sp-menu-item a::after {
  display: none !important;
}

/* Hide 3rd Level Sub Menus */
@media (min-width: 840px) {
  .sp-megamenu-parent .sp-dropdown.sp-dropdown-sub .sp-dropdown-inner,
  body.ltr
    .sp-megamenu-parent
    .sp-dropdown
    .sp-dropdown-items
    .sp-has-child
    > a::after {
    display: none;
    visibility: hidden;
  }
}

/* Cursor Improvement */
button:not(:disabled),
a:not(:disabled):has([href]),
a.sppb-btn:not(:disabled) {
  cursor: pointer;
}

/* Search Button */
a.search-button {
  color: #33302c;

  svg {
    color: inherit;
    width: 24px;
    aspect-ratio: 1 / 1;
  }

  &:hover {
    color: #3b99d4;
  }
}

/* Buttons */
.sppb-btn {
  background-color: #4e7994;
  border-radius: 3px;
  padding: 10px 15px;
  border: 1px solid transparent;
  color: #ffffff;
  font-size: 18px;

  transition: all 0.15s ease-in-out;

  &.circle {
    border-radius: 50%;
    aspect-ratio: 1 / 1;
  }

  &:hover {
    background-color: #424d54;
  }

  &:active,
  &:focus {
    background-color: #33302c;
    color: #ffffff;
  }

  &.secondary {
    background-color: #c7634c;

    &:hover {
      background-color: #424d54;
    }

    &:active,
    &:focus {
      background-color: #33302c;
    }
  }

  &.sppb-btn-outline {
    background-color: transparent;
    border-color: #4e7994;
    color: #33302c;

    &:hover {
      background-color: #4e7994;
      border-color: #4e7994;
      color: #ffffff;
    }

    &:active,
    &:focus {
      background-color: #424d54;
      border-color: #424d54;
      color: #ffffff;
    }
  }
}

.sppb-addon-button-group.secondary .sppb-btn,
ul#nav-menu li a {
  background-color: #c7634c;
  color: #ffffff;

  &:hover {
    background-color: #424d54;
  }

  &:active,
  &:focus {
    background-color: #33302c;
  }
}

a.search-button {
  display: block;
  width: max-content;
  height: max-content;
  color: #33302c;

  &[active="true"] {
    color: #4e7994;
  }
  &:hover {
    color: #3b99d4;
  }
}

div#sp-top2 {
  width: min-content;
  margin-left: auto;
}

/* Breadcrumbs */
section#sp-breadcrumbs {
  background: #3b99d4;

  div.container {
    span.fas {
      display: none;
    }

    .breadcrumb {
      background: none;
      margin: 0;
      @media (max-width: 425px) {
        flex-direction: column;
      }
    }

    .breadcrumbs-custom {
      .breadcrumb-item:nth-last-child(2) {
        display: none;
      }
    }

    .breadcrumb-item {
      color: #ffffff;

      font-weight: 800;

      a {
        color: #f5f4f4;
        font-weight: 400;
        &:hover {
          text-decoration: underline;
        }
      }

      &::before {
        color: inherit;
      }
    }
  }
}

/* Educaplay iFrames */
div.game-iframe-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 524px;

  @media (max-height: 650px) {
    height: 375px;
  }

  iframe.game-iframe {
    height: 100%;
    border-radius: 16px;
    aspect-ratio: 4 / 3;
  }
}

/* Escape Room iFrames */
iframe.escape-room-iframe {
  width: 100%;
  border-radius: 16px;
  aspect-ratio: 16 / 9;
}
/* Article Carousels */
.sppb-articles-carousel-img-link {
  display: block;
  height: 150px;

  box-shadow: 0 -6px 12px -3px rgba(49, 41, 41, 0.1);

  img {
    height: 100%;
    width: auto;
    margin: auto;
  }
}

/* Custom Video Frames */
.custom-video-frame iframe {
  max-width: 930px;
  aspect-ratio: 16 / 9;
}

/* Article Thumbnails */
.custom-video-list .sppb-article-img-wrap {
  img {
    height: 175px;
  }
}
.sppb-article-img-wrap {
  width: 100%;

  img {
    margin: auto;
  }
}
.sppb-article-info-wrap {
  margin-top: 8px;

  h3 {
    font-size: 18px;
  }
}

/* Article readmore */
.article-list .article .readmore a {
  color: #ec430f;
  font-weight: 500;
}

/* Article Images */
.article-full-image {
  img {
    margin: auto;
    max-height: 40vh;
    width: auto;
  }
}

/* Side Menus */
.sp-module.custom-menu {
  padding: 0 !important;
  margin: 0 !important;
}
ul.menu-theme-match {
  ul.menu-child {
    margin-left: 16px !important;
  }
  width: max-content;
  max-width: 100%;
  margin: 0 auto;
  padding-left: 0 !important;
  margin-bottom: 0 !important;
  list-style: none;
  ul {
    list-style: none;
  }
  li {
    border: none !important;
    width: max-content;
    max-width: 100%;
    a {
      transition: border-color 0.15s ease-in-out;
      border-bottom: 1px solid transparent;
      color: #33302c !important;
      width: max-content;
      max-width: 100%;
      padding: 0 !important;
      margin: 4px 0;

      &:hover {
        border-bottom-color: #33302c;
      }
    }
    &.current > a {
      border-bottom-color: #c7634c;
    }
  }
}

a.sppb-btn:hover {
  color: #ffffff;
}

aside#sp-left {
  padding: 75px 0 0 0;

  div.sp-module {
    margin-top: 0 !important;
    margin-left: 1rem !important;
    border-left: none;
    border-right: none;
    border-top: none;
    padding: 15px 30px;
    &:first-child {
      padding-top: 0;
    }
    &:last-child {
      border-bottom: none;
      padding-bottom: 0;
    }

    &:has(.recognition-scroller) {
      padding-left: 0px;
      padding-right: 0px;
    }
  }

  .sp-module-title {
    border-bottom: none !important;
    margin: 0 !important;
    width: 100%;
    text-align: center;
  }
}

/* Footer Spacing Fix */
.footer-container .sppb-row-column {
  padding: 0 !important;
}

/* Contact Display Fix */
div.contact-category {
  background-color: #f5f4f4;
  border-radius: 32px;
  padding: 91px 32px;
  > h2 {
    font-size: 68px;
    font-weight: 700;
    color: #33302c;
  }
}
.contact-miscinfo {
  > h3,
  div.me-2 {
    display: none;
  }
}
div.com-contact-category__items {
  table.com-content-category__table {
    thead {
      display: none;
    }
    display: block;
    border: none;
    tbody {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      border: none;
      background: none;

      @media (max-width: 768px) {
        grid-template-columns: 1fr 1fr;
      }

      @media (max-width: 425px) {
        grid-template-columns: 1fr;
      }

      td {
        display: none;
      }
      tr {
        border: none;
        background: none;

        border-bottom: 1px solid #b8b7b5;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;

        th {
          border: none;
          box-shadow: none;

          a {
            display: flex;
            align-items: center;
            gap: 8px;
            img {
              padding: 0;
              border: none;
              border-radius: 8px;
              width: auto;
              max-height: 50px;
            }
          }
        }
      }
    }
  }
}

/* Card Interaction Fix */
div.row div.card:not([noclick]) {
  cursor: pointer;
}

@media (max-width: 575.98px) {
  .sppb-addon-title {
    font-size: 50px;
  }
}

.badge.bg-danger.featured-article-badge {
  position: static;
}

#sp-top2 > div.sp-column {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

/* Set User Menu min width*/
.sp-profile-dropdown {
min-width: 150px !important;
}
@media only screen and (max-width: 425px){
  .eb-page-heading {
    font-size: 50px;
  }
h1{
font-size: 50px; !important;
}
}

/* Center training agenda image*/
.article-full-image.float-training-agenda-logo {
 text-align: center;
}

.article-full-image.float-training-agenda-logo > img {
 max-width: 220px;
}

/* Docman Document View Improvements */
div.docman_document_layout {
    div.docman_document {
        h1.koowa_header {
            font-size: 36px;
            font-weight: bold;
            span.label { font-size: 18px; }
        }
        div.docman_download {
            display: flex; flex-direction: column; gap: 8px; align-items: center;
            width: 100%; min-width: unset; max-width: unset; margin: 0px; float: unset;
            a.btn { width: 100%; display: flex; align-items: center; justify-content: center; gap: 8px; max-width: 300px; flex-wrap: wrap; }
        }
    }
}