/*!
Theme Name: swcc-wp
Theme URI: https://andisites.com
Author: AndiSites
Author URI: https://andisites.com
Description: Description
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: andisites
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

swcc-wp is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/* Full Width Gutenberg */
/* .alignwide { margin-left: -80px; margin-right: -80px } */
.alignfull { margin-left: calc(-100vw / 2 + 100% / 2); margin-right: calc(-100vw / 2 + 100% / 2); max-width: 100vw }
.alignfull img { width: 100vw }
html { line-height: 1.15; -webkit-text-size-adjust: 100%; font-family: "Open Sans", sans-serif; }
body { margin: 0; overflow-x: clip; }
hr { -webkit-box-sizing: content-box; box-sizing: content-box; height: 0; overflow: visible }
pre { font-family: monospace, monospace; font-size: 1em }
a { background-color: transparent; color:#0065bd; }
a:hover { color: #004165 !important; }
abbr[title] { border-bottom: none; text-decoration: underline; -webkit-text-decoration: underline dotted; text-decoration: underline dotted }
b, strong { font-weight: bolder }
code, kbd, samp { font-family: monospace, monospace; font-size: 1em }
small { font-size: 80% }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline }
sub { bottom: -0.25em }
sup { top: -0.5em }
img { border-style: none }
button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0 }
button, input { overflow: visible }
button, select { text-transform: none }
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button }
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0 }
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText }
fieldset { padding: 0.35em 0.75em 0.625em }
legend { -webkit-box-sizing: border-box; box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal }
progress { vertical-align: baseline }
textarea { overflow: auto }
[type="checkbox"], [type="radio"] { -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 }
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto }
[type="search"] { -webkit-appearance: textfield; outline-offset: -2px }
[type="search"]::-webkit-search-decoration { -webkit-appearance: none }
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit }
details { display: block }
summary { display: list-item }
template { display: none }
[hidden] { display: none }
body, button, input, select, optgroup, textarea, ul, ol, li { color: #404040; font-family: "Open Sans", sans-serif; font-size: 16px; font-size: 1rem; line-height: 1.5 }
h1, h2, h3, h4, h5, h6 { clear: both; font-family: "Open Sans", sans-serif; }
p { margin: 0 0 1.5em 0 }
dfn, cite, em, i { font-style: italic }
blockquote { margin: 0 1.5em }
address { margin: 0 0 1.5em }
pre { background: #eee; font-family: "Courier 10 Pitch", courier, monospace; font-size: 15px; font-size: 0.9375rem; line-height: 1.6; margin-bottom: 1.6em; max-width: 100%; overflow: auto; padding: 1.6em }
code, kbd, tt, var { font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace; font-size: 15px; font-size: 0.9375rem }
abbr, acronym { border-bottom: 1px dotted #666; cursor: help }
mark, ins { background: #fff9c0; text-decoration: none }
big { font-size: 125% }
*, *::before, *::after { -webkit-box-sizing: inherit; box-sizing: inherit }
html { -webkit-box-sizing: border-box; box-sizing: border-box }
body { background: #fff }
hr { background-color: #ccc; border: 0; height: 1px; margin-bottom: 1.5em }
ul, ol { margin: 0 0 1.5em 3em }
ul { list-style: disc }
ol { list-style: decimal }
li > ul, li > ol { margin-bottom: 0; margin-left: 1.5em }
dt { font-weight: 700 }
dd { margin: 0 1.5em 1.5em }
img { height: auto; max-width: 100% }
figure { margin: 1em 0 }
table { margin: 0 0 1.5em; width: 100% }
button, input[type="button"], input[type="reset"], input[type="submit"] { border: 1px solid; border-color: #ccc #ccc #bbb; border-radius: 3px; background: #e6e6e6; color: rgba(0, 0, 0, 0.8); font-size: 12px; font-size: 0.75rem; line-height: 1; padding: 0.6em 1em 0.4em }
button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { border-color: #ccc #bbb #aaa }
button:active, button:focus, input[type="button"]:active, input[type="button"]:focus, input[type="reset"]:active, input[type="reset"]:focus, input[type="submit"]:active, input[type="submit"]:focus { border-color: #aaa #bbb #bbb }
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea { color: #666; border: 1px solid #ccc; border-radius: 3px; padding: 3px }
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus, textarea:focus { color: #111 }
select { border: 1px solid #ccc }
textarea { width: 100% }
a { color: #0065bd; text-decoration: none; }
a:visited { color: #800080 }
a:hover, a:focus, a:active { color: #191970 }
/* a:focus { outline: thin dotted } */
a:hover, a:active { outline: 0 }
.main-navigation { display: block; width: 100% }
.main-navigation ul { display: none; list-style: none; margin: 0; padding-left: 0 }
.main-navigation ul ul { -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2); box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2); float: left; position: absolute; top: 100%; left: -999em; z-index: 99999 }
.main-navigation ul ul ul { left: -999em; top: 0 }
.main-navigation ul ul li:hover > ul, .main-navigation ul ul li.focus > ul { display: block; left: auto }
.main-navigation ul ul a { width: 200px }
.main-navigation ul li:hover > ul, .main-navigation ul li.focus > ul { left: auto }
.main-navigation li { position: relative }
.main-navigation a { display: block; text-decoration: none }
.navigation .menu-item {
  position: relative;
}
.navigation .menu-item .menu-item-has-children::after {
  content: "\f04b";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 10px;
  margin-left: 5px;
  position: absolute;
  top: 50%;
  right: 15px;
  z-index: 1;
  /* background: red; */
  color: white;
  padding: 0;
  transform: translateY(-50%);
}
.menu-toggle, .main-navigation.toggled ul { display: block }
@media screen and (min-width:37.5em) {
	.menu-toggle { display: none }
	.main-navigation ul { display: -webkit-box; display: -ms-flexbox; display: flex }
}
.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation { margin: 0 0 1.5em }
.comment-navigation .nav-links, .posts-navigation .nav-links, .post-navigation .nav-links { display: -webkit-box; display: -ms-flexbox; display: flex }
.comment-navigation .nav-previous, .posts-navigation .nav-previous, .post-navigation .nav-previous { -webkit-box-flex: 1; -ms-flex: 1 0 50%; flex: 1 0 50% }
.comment-navigation .nav-next, .posts-navigation .nav-next, .post-navigation .nav-next { text-align: end; -webkit-box-flex: 1; -ms-flex: 1 0 50%; flex: 1 0 50% }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important }
.screen-reader-text:focus { background-color: #f1f1f1; border-radius: 3px; -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; -webkit-clip-path: none; clip-path: none; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: 700; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000 }
#primary[tabindex="-1"]:focus { outline: 0 }
.alignleft { display: inline; float: left; margin-right: 1.5em; margin-bottom: 1.5em }
.alignright { display: inline; float: right; margin-left: 1.5em; margin-bottom: 1.5em }
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; margin-bottom: 1.5em }
.widget { margin: 0 0 1.5em }
.widget select { max-width: 100% }
.sticky {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
}
.updated:not(.published) { display: none }
.page-content, .entry-content, .entry-summary { 
  margin: 70px 0 0; 

  @media screen and (max-width: 992px) {
    margin: 30px 0 0;
  }
}
body.search .entry-content {
  margin: 0 0 0 0;
  padding-bottom: 0px;
} 
body.search .entry-summary { margin: 0; } 
.page-links { clear: both; margin: 0 0 1.5em }
.comment-content a { word-wrap: break-word }
.bypostauthor { display: block }
.infinite-scroll .posts-navigation, .infinite-scroll.neverending .site-footer { display: none }
.infinity-end.neverending .site-footer { display: block }
.page-content .wp-smiley, .entry-content .wp-smiley, .comment-content .wp-smiley { border: none; margin-bottom: 0; margin-top: 0; padding: 0 }
embed, iframe, object { max-width: 100%; border: 0px; }
.custom-logo-link { display: inline-block }
.wp-caption { margin-bottom: 1.5em; max-width: 100% }
.wp-caption img[class*="wp-image-"] { display: block; margin-left: auto; margin-right: auto }
.wp-caption .wp-caption-text { margin: 0.8075em 0 }
.wp-caption-text { text-align: center }
.gallery { margin-bottom: 1.5em }
.gallery-item { display: inline-block; text-align: center; vertical-align: top; width: 100% }
.gallery-columns-2 .gallery-item { max-width: 50% }
.gallery-columns-3 .gallery-item { max-width: 33.33% }
.gallery-columns-4 .gallery-item { max-width: 25% }
.gallery-columns-5 .gallery-item { max-width: 20% }
.gallery-columns-6 .gallery-item { max-width: 16.66% }
.gallery-columns-7 .gallery-item { max-width: 14.28% }
.gallery-columns-8 .gallery-item { max-width: 12.5% }
.gallery-columns-9 .gallery-item { max-width: 11.11% }
.gallery-caption { display: block }

/*Theme layout Option CSS*/

body > #page > .content-area.boxed { width: 1250px; margin: 0 auto; max-width: 100%; padding: 0 20px; position: relative; }
body > #page > .content-area.no-sidebar > main.site-main { width: 100%; }

/* Kadence Fixes */
.wp-block-kadence-advancedbtn.alpha-buttons .button {
  padding:0 !important;
}

.kb-row-layout-wrap.wp-block-kadence-rowlayout { margin: 0 !important }

.wp-block-kadence-column {
	overflow: visible;
}

.box-title {
  color: #004165 !important;
}

hr.wp-block-separator {
  border-top: 1px solid #eee !important;
}

/* Form Overrides */
.gform_wrapper .gsection {
  padding: 0 !important;

  .gsection_title {
    margin: 0 !important;
    padding: 0 !important;
  }
}

#gform_2 {

  .ginput_container_image_choice .gchoice {
    max-inline-size: 300px !important;
    min-inline-size: 300px !important;
  }  

}

#gform_12 {

  .ginput_container_image_choice .gfield-choice-image-wrapper {
    height: 140px;

    img {
      object-fit: contain !important;
    }
  }

  .ginput_container_image_choice .gchoice {
    text-align: center;
    border: 1px solid #dee2e6;
    max-inline-size: inherit !important;
    min-inline-size: inherit !important;
  }  

  #input_12_36 {

    .gfield-choice-input {
      display: none !important;
    }
    
    .gchoice {
      flex: calc(9%);
    }
  }

}

.gform_wrapper.gravity-theme .ginput_container_image_choice .gfield-choice-image-wrapper {
  aspect-ratio: inherit !important;
}

/* Page Numbers blocks center inline */
ul.page-numbers {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: .25rem;
  margin-top:2rem;
  margin-bottom: 2rem;
  justify-content: center!important;
  gap:4px;
}

li span.page-numbers, li a.page-numbers {
  position: relative;
  padding: 0.39rem 0.5rem;
  margin-left: -5px;
  line-height: 1.25;
  color: #0072a3;
  background-color: #fff;
  border: 1px solid #dee2e6;
  font-size: .875rem;
  line-height: 1.5;
}

li span.page-numbers:hover, li a.page-numbers:hover {
  z-index: 2;
  color: #00587f;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

/* CUSTOM STYLES */

h1 {
  color: #888;
  font-size: 30px;
  font-weight: 300;
  margin: 0;
  padding: 0 0 15px 0;
  text-transform: capitalize;
  font-family: "lato", sans-serif;
}

h2 {

  &.line-heading {
    font-size: 30px;
    font-weight: 400;
    letter-spacing: 1px;
    margin-bottom: 40px;
    padding-bottom: 20px;
    position: relative;
    font-family: Oswald, "Open Sans", sans-serif;
    line-height: 40px;
    text-transform: uppercase;
    color: black;

    &::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 50%;
      height: 2px;
      background: #e0e0e0;
      background-image: linear-gradient(to right, #004166, #004166);
      background-size: 25% 100%;
      background-position: center;
      background-repeat: no-repeat;
      transition: background-size 0.5s ease, background-color 0.3s ease;
    }

    &::before {
      content: '';
      position: absolute;
      bottom: -3px;
      left: 50%;
      transform: translateX(-50%);
      width: 8px;
      height: 8px;
      border: 1px solid #004166;
      background: #fff;
      border-radius: 50%;
      z-index: 1;
      transition: transform 0.5s ease, width 0.5s ease, height 0.5s ease;
    }

    &:hover {
      &::after {
        background-size: 80% 80%;
      }

      &::before {
        /* transform: translateX(-50%) scale(1.2); */
      }
    }

    &.brush {

      &::before {
        content: '\f1fc';
        font-family: 'Font Awesome 5 Free';
        font-weight: 900;
        font-size: 30px;
        line-height: 1;
        color: #004165;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: 100%;
        transform: translate(-50%, -50%);
        z-index: 1;
        transition: transform 0.5s ease, width 0.5s ease, height 0.5s ease;
        border: none;
        border-radius: 0;
        background: white;
        padding: 10px;
        width: inherit;
        height: 50px;
        bottom: 0;
      }
    }

    &.briefcase {

      &::before {
        content: '\f0b1';
        font-family: 'Font Awesome 5 Free';
        font-weight: 900;
        font-size: 30px;
        line-height: 1;
        color: #004165;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: 100%;
        transform: translate(-50%, -50%);
        z-index: 1;
        transition: transform 0.5s ease, width 0.5s ease, height 0.5s ease;
        border: none;
        border-radius: 0;
        background: white;
        padding: 10px;
        width: inherit;
        height: 50px;
        bottom: 0;
      }
    }

    &.telescope {

      &::before {
        content: '\f135';
        font-family: 'Font Awesome 5 Free';
        font-weight: 900;
        font-size: 30px;
        line-height: 1;
        color: #004165;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: 100%;
        transform: translate(-50%, -50%);
        z-index: 1;
        transition: transform 0.5s ease, width 0.5s ease, height 0.5s ease;
        border: none;
        border-radius: 0;
        background: white;
        padding: 10px;
        width: inherit;
        height: 50px;
        bottom: 0;
      }
    }

    &.heart {

      &::before {
        content: '\f21e';
        font-family: 'Font Awesome 5 Free';
        font-weight: 900;
        font-size: 30px;
        line-height: 1;
        color: #004165;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: 100%;
        transform: translate(-50%, -50%);
        z-index: 1;
        transition: transform 0.5s ease, width 0.5s ease, height 0.5s ease;
        border: none;
        border-radius: 0;
        background: white;
        padding: 10px;
        width: inherit;
        height: 50px;
        bottom: 0;
      }
    }
  }
}

p {
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
  color: #000;
}

/* Button Styles Overrides */
/* .kb-button {
  border-radius: 50px !important;
}

@keyframes slideOutLeft {
  from {
    opacity: 1;
    transform: translateX(0);
  }
  to {
    opacity: 0;
    transform: translateX(-20px);
  }
}

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.kb-button:hover .kt-btn-icon-side-left {
  animation: slideOutLeft 0.3s ease-in-out 0s forwards, slideInRight 0.3s ease-in-out 0.3s forwards !important;
} */

.kb-button {
  position: relative;
  overflow: hidden;
  border-radius: 50px !important;
}

/* Shared transition for both icons */
.kb-button .kb-svg-icon-wrap {
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Text transition */
.kb-button .kt-btn-inner-text {
  transition: transform 0.3s ease;
}

/* Right clone: position it on the right side, hidden by default */
.kb-button .kb-svg-icon-wrap-right {
  position: absolute;
  right: 16px; /* match your button's right padding */
  top: 50%;
  transform: translate(20px, -50%);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/* === HOVER STATES === */

/* Slide original icon out left */
.kb-button:hover .kb-svg-icon-wrap:not(.kb-svg-icon-wrap-right) {
  transform: translateX(-20px);
  opacity: 0;
}

/* Shift text left */
.kb-button:hover .kt-btn-inner-text {
  transform: translateX(-25%);
}

/* Slide cloned icon in from the right */
.kb-button:hover .kb-svg-icon-wrap-right {
  transform: translate(0, -50%);
  opacity: 1;
  right: 0;
}

.kt-tabs-content-wrap {
  margin-top: -1px;
}

.global-header {
  ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  ul {

    li {

      button {
        display: none !important;
      }

      a {
        display: inline-block;
        text-transform: uppercase;
        font-family: "Open Sans", sans-serif;
        font-size: 14px;
        font-weight: 700;
        padding: 1px 14px !important;
        line-height: 74px;
        position: relative;
        color: #000;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);

        &:hover {
          background: #eee;
          color: rgb(0, 65, 101);
        }
      }

      ul {
        
        li {

          a {
            font-size: 14px;
            background: #333;
            padding: 10px 30px 10px 10px !important;
            line-height: inherit;
            color: #fff !important;
            font-weight: 500;
            font-family: "Open Sans", sans-serif;
            text-transform: uppercase;

            &:hover {
              background: #000;
              color: rgb(0, 65, 101);
            }
          }
        }
      }
    }
  }

  input[type="search"] {
    border-radius: 25px;
    margin-left: 15px;
    height: 40px;
    background: #004166;
    color: white;
    border: 0 none;
    padding: 0 10px !important;
    font-size: 14px;
    font-weight: 500;
    font-family: "Open Sans", sans-serif;

    &::placeholder {
      color: #fff;
      opacity: 1; /* Firefox */
    }

    &:focus {
      outline: none;
    }
  }
}

.alert-bar {
  border-top: 9px solid #9c132e;

  ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;

    li {

      a {
        border: 0 none;
        color: #FFF;
        background: #990033;
        padding: 10px 15px;
        font-size: 25px;
        text-shadow: rgb(255, 255, 255) 0px 1px 0px;
        box-shadow: rgba(255, 255, 255, 0.15) 0px 1px 0px inset, rgba(0, 0, 0, 0.075) 0px 1px 1px;
        border-radius: 4px;

        &:hover {
          background-color: rgb(224, 224, 224);
          background-position: 0px -15px;
          color: rgb(51, 51, 51);
          background-color: rgb(230, 230, 230);
          border-color: rgb(173, 173, 173);
        }
      }
    }
  }
}

/* Full width page header */
.entry-header {
	width: 100vw;
	position: relative;
	margin-left: calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
	padding: 10px 0;
	background: #fbfbfb;
	border-bottom: 4px solid #fff;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.17);
	-moz-box-shadow: 0 0px 4px rgba(0,0,0,0.17);
	-webkit-box-shadow: 0 0px 4px rgba(0, 0, 0, 0.17);
	-ms-box-shadow: 0 0px 4px rgba(0,0,0,0.17);
	-o-box-shadow: 0 0px 4px rgba(0,0,0,0.17);
	z-index: 1;
}

/* Constrain content to container width */
.entry-header .entry-header-inner {
  display: flex;
  justify-content: space-between;
	max-width: 1250px;
	margin: 0 auto;
	padding: 20px 20px 0;
}

.entry-header .entry-header-inner h1 {
  font-weight: 400;
}

.entry-header #breadcrumbs {
  line-height: 40px;
  margin: 0;
  font-size: 12px;
  color: #888;
  text-align: right;
}
.entry-header #breadcrumbs a {
    color: #0065bd;
}

@media screen and (max-width: 768px) {
	.entry-header .entry-header-inner {
		max-width: 100%;
		padding: 0 20px;
	}
}

.entry-date {
    font-size: 14px;
    line-height: 21px;
    font-weight: 400;
    font-family: "Open Sans", sans-serif;
    color: #000;
}

.post-thumbnail {
    margin: 0 -20px;
}
.single-employee .post-thumbnail {
  margin: 0;
}

/* Page thumbnail: break out to full viewport width */
.entry-thumbnail-full-width {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  box-sizing: border-box;
}

.entry-thumbnail-full-width .post-thumbnail {
  margin: 0;
  width: 100%;
}

.entry-thumbnail-full-width .post-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: middle;
}

/* Entry content with sidebar flexbox layout */
.page .entry-content.has-sidebar {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.page .entry-content.has-sidebar .entry-content-main {
	flex: 1;
	min-width: 0; /* Prevents flex item from overflowing */
  max-width: 100% !important;
}

.page .entry-content.has-sidebar.right-sidebar .entry-content-main {
	order: 1;
}

.page .entry-content.has-sidebar.right-sidebar .entry-sidebar {
	order: 2;
	width: 250px;
	flex-shrink: 0;
}

.page .entry-content.has-sidebar.left-sidebar .entry-content-main {
	order: 2;
}

.page .entry-content.has-sidebar.left-sidebar .entry-sidebar {
	order: 1;
	width: 250px;
	flex-shrink: 0;
}

@media screen and (max-width: 992px) {
	.page .entry-content.has-sidebar.left-sidebar .entry-sidebar {
		display: none;
	}
}

.section-header-top {
  background: #f9f9f9;
  border-bottom: 1px solid #e4e4e4 !important;
  padding: 12px 0;
  font-size: 11px;
}

.breadcrumbs {
  font-size: 12px;
  text-align: right;
  color: #888;

  a {
    text-decoration: underline;

    &:hover {
      text-decoration: none;
    }
  }

  .breadcrumb-separator {
    margin: 0 5px;
  }
  
  .current {
    color: #0065bd;
  }
}

.entry-sidebar {
  padding: 20px 15px;
  background-color: #000;

  .sidebar-content {
    /* padding: 20px 15px;
    background-color: #000; */
  }

  .sidebar-page-dropdown {
    display: none;
    margin-bottom: 10px;

    .sidebar-page-select {
      width: 100%;
      padding: 8px 10px;
      border: 1px solid #8c8f94;
      border-radius: 2px;
      font-size: 14px;
    }
  }

  .sidebar-page-list-wrap {
    display: block;
  }

  .sidebar-parent-title {
    color: #ccc;
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 15px 0;
    padding: 0;
    font-family: "Open Sans", sans-serif;

    a {
      color: #ccc;
      text-decoration: none;
      transition: color 0.2s ease;
      font-weight: 500;
      line-height: 1.1;

      &:hover {
        color: #fff !important;
        text-decoration: none !important;
      }
    }
  }

  .sidebar-page-list {
    list-style: none;
    padding: 0;
    margin: 0 0 0 10px;

    li {

      &:last-child {
        margin-bottom: 0;
      }

      &.current-page a {
        display: block;
        background-color: #808080;
        color: #fff;
        padding: 5px 1px 5px 3px;

        &:hover {
          text-decoration: none;
        }
      }
    }

    a {
      color: #ccc;
      text-decoration: none;
      display: block;
      padding: 5px 0;
      transition: color 0.2s ease;
      font-size: 14px;

      &:hover {
        color: #fff !important;
        text-decoration: underline !important;
      }
    }

    /* Nested lists (grandchildren) */
    .sidebar-page-list {
      margin-left: 20px;
      margin-top: 4px;

      a {
        font-size: 14px;
        padding: 5px 0;
      }
    }
  }
}

.section-footer {
  position: relative;
  overflow: hidden;
  font-size: 13px;
  margin-top: 100px;

  &:before {
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 5px;
    width: 100%;
    background: url(/wp-content/uploads/footer_line.png) repeat scroll 0 0;
    height: 1px;
    opacity: .7;
  }

  &:after {
    height: 5px;
    width: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.2);
    content: "";
    position: absolute;
  }

  ul {
    list-style: none;
    padding: 0;
    margin: 0;

    li {
      text-align: center;
      margin-bottom: 10px;

      &:last-child {
        margin-bottom: 0;
      }
    }

    a {
      color: #fff;
      font-size: 13px;
      text-decoration: none;

      &:hover {
        color: #fff;
      }
    }
  }
}

.section-bottom {

  p {
    color: #989898;
    font-size: 14px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    line-height: 1.5;
    margin: 0;
  }
  

  &:after {
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    background: url(/wp-content/uploads/footer_line.png);
    opacity: 0.7;
  }
}

.single-courses .course-details,
.single-employee .employee-details {
  list-style: none;
  margin: 0;
  padding: 0;
}

table {
    border-spacing: 0;
    border-collapse: collapse;
}
.wp-block-table td, .wp-block-table th {
  border: 0 !important;
}
td {
  font-size: 14px;
  line-height: 21px;
  font-weight: 400;
  font-family: "Open Sans", sans-serif;
}

footer {
  clear: both;
}

blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eee;
}

.single .entry-content, 
.single-courses .entry-content, 
.single-employee .entry-content, 
.single-faculty-handbook .entry-content {
    /* max-width: 900px; */
}

.accordion {

  .kt-blocks-accordion-header {
    background: #003b5b !important;
    color: white !important;

    .kt-blocks-accordion-title {
      text-decoration: underline !important;
    }

    .kt-blocks-accordion-icon-trigger {
      
      &:before, &:after {
        background: white !important;
      }
    }
  }
}

.list3 {
  list-style: none;
  padding: 0;
  margin: 0;

  &:before {
    content: "";
    display: block;
  }

  li {
    margin-bottom: 15px;
    padding-left: 25px;
    position: relative;

    &:before {
      background: #e74c3c;
      color: #fff;
      content: "\f061";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      font-size: 10px;
      height: 18px;
      left: 0;
      line-height: 18px;
      position: absolute;
      text-align: center;
      text-indent: 1px;
      top: 3px;
      width: 18px;
    }

    a {
      position: relative;
      top: 2px;
    }

    &:after {
      display: none;
    }
  }
}

/* Directory template */
.directory-intro {
	margin-bottom: 2em;
}

.directory-letters {
	margin-bottom: 2em;

	.directory-letters-list {
		display: flex;
		flex-wrap: wrap;
		gap: 0.25em 0.5em;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.directory-letter-item {
		margin: 0;
	}

	.directory-letter {
		display: inline-block;
		padding: 0.25em 0.5em;
		text-decoration: none;
		color: #0065bd;
		font-weight: 600;

		&:hover {
			color: #004165;
		}

		&.current {
			color: #404040;
			text-decoration: underline;
			cursor: default;
		}
	}
}

.directory-results-title {
	margin-bottom: 1em;
	font-size: 1.25rem;
}

.directory-employee-list {
	list-style: none;
	margin: 0;
	padding: 0;

	&.directory-employee-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 1rem;
	}

	.directory-employee-item {
		margin: 0;
    padding: 10px;
    text-align: center;
	}

	.directory-employee-link {
		display: block;
		text-decoration: none;
		color: inherit;

		.directory-employee-thumbnail {
			display: block;
			margin-bottom: 10px;

			img {
				width: 100%;
				height: auto;
				object-fit: cover;
				border-radius: 4px;
			}
		}

		.directory-employee-name {
			color: #0065bd;
      font-size: 22px;

      &:hover {
        text-decoration: underline;
      }
    }
	}

	.directory-employee-name {
		display: block;
		font-weight: 600;
	}

	.directory-employee-job-title {
		display: block;
		color: #000;
	}
}

.directory-buttons .kt-btn-inner-text {
  padding: 10px 15px 10px 15px !important;
}
.directory-buttons .kb-button:hover .kt-btn-inner-text {
  transform: translateX(0) !important;
}
.directory-buttons .kb-button {
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075) !important;
  border-radius: 3px !important
}

.directory-no-results {
	margin: 0;
	color: #666;
}

/* News template */
.news-template {

  .entry-content-main {
    background: rgba(1, 85, 129, 0.1);
    padding: 10px;
    border-radius: 4px;
  }

  .entry-sidebar {
    background: none;
  }
}

/* Query pagination block */
.wp-block-query-pagination {
  font-weight: 700;
  color: #000;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  justify-content: center;
  margin: 40px 0;
}

.wp-block-query-pagination-numbers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
}

.wp-block-query-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.25em;
  height: 2.25em;
  padding: 0 0.4em;
  background: #fff;
  color: #000;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid #0065bd;
  border-radius: 50%;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.wp-block-query-pagination .page-numbers:hover {
  background: #0065bd;
  color: #fff !important;
  border-color: #0065bd;
}

.wp-block-query-pagination .page-numbers.current {
  background: #0065bd;
  color: #fff;
  border-color: #0065bd;
}

.wp-block-query-pagination .page-numbers.dots {
  border: none;
  background: none;
  min-width: auto;
  border-radius: 0;
}

.wp-block-query-pagination-next {
  font-weight: 700;
  color: #000;
  text-decoration: none;
}

.wp-block-query-pagination-next:hover {
  color: #0065bd;
}

.wp-block-kadence-accordion {
  margin-bottom: 10px;
}

/* Horizontal Tabs Block Overrides */
.kt-tabs-layout-tabs {

  &.kt-tabs-wrap {

    .kt-title-item {
      border-radius: 0 !important;
      border: 1px solid #E5E5E5 !important;
      border-radius: 0 !important;
      padding: 25px !important;
      margin-right: 0 !important;
  
      .kt-tab-title {
        border-radius: 0 !important;
        border: none !important;
        padding: 0px !important;
      }
  
      &.kt-tab-title-active {
        color: #FFF !important;
        background: #004165 !important;
  
        .kt-tab-title {
          background: #004165 !important;
          color: #FFF !important;
      
          &:hover {
            background: #004165 !important;
            color: #FFF;
          }
        }
      }
    }
  }
}

/* Vertical Tabs Block Overrides */
.kt-tabs-wrap.kt-tabs-layout-vtabs {
  display: flex !important;
  align-items: stretch !important;
}

.kt-tabs-wrap.kt-tabs-layout-vtabs .kt-tabs-title-list {
  float: none !important;
}

.kt-tabs-wrap.kt-tabs-layout-vtabs .kt-tabs-content-wrap {
  float: none !important;
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  margin: .5px 0 0 -2px !important;
}

.kt-tabs-wrap.kt-tabs-layout-vtabs .kt-tabs-content-wrap .wp-block-kadence-tab {
  flex: 1 !important;
  border-right: 1px solid #eee !important;
  border-bottom: 1px solid #eee !important;
  border-left: 1px solid #eee !important;
  border-top: 1px solid #eee !important;
}

.kt-tabs-layout-vtabs {

  &.kt-tabs-wrap {
    

    .kt-title-item {
      border-radius: 0 !important;
      border: 1px solid #E5E5E5 !important;
      border-radius: 0 !important;
      padding: 25px !important;
      margin-right: 0 !important;
      margin-bottom: 0px !important;
  
      .kt-tab-title {
        border-radius: 0 !important;
        border: none !important;
        padding: 0px !important;
        background: white !important;
      }
  
      &.kt-tab-title-active {
        color: #004165 !important;
        background: #fff !important;
        border-left: 5px solid #004165 !important;
        border-right: 0px !important;
  
        .kt-tab-title {
          background: #fff !important;
          color: #004165 !important;
      
          &:hover {
            background: #fff !important;
          }
        }
      }
    }

    .kt-inner-tab-inner-content {
      border: 1px solid #eee !important;
    }
  }
}

/* ==========================================================================
   MOBILE HEADER — Matches live site under 991px
   ========================================================================== */

/* --- SECTION-HEADER-TOP --- */
@media screen and (max-width: 991px) {
  .section-header-top > .kt-row-column-wrap {
    grid-template-columns: 1fr !important;
    row-gap: 0 !important;
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .section-header-top .inner-column-1 .kt-inside-inner-col {
    justify-content: center;
  }
  /* Hide social icons + MySCC column */
  .section-header-top .kadence-column51_6f9cb7-15 {
    display: none !important;
  }
  .section-header-top {
    padding: 8px 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .section-header-top {
    padding: 6px 0 !important;
  }
  .section-header-top .inner-column-1 .kt-inside-inner-col {
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 0.5rem;
    row-gap: 0.25rem;
  }
  .section-header-top p {
    font-size: 10px !important;
  }
}

/* --- GLOBAL-HEADER --- */
@media screen and (max-width: 991px) {
  .global-header > .kt-row-column-wrap {
    grid-template-columns: 1fr auto !important;
    row-gap: 0 !important;
  }
  /* Hide the Kadence nav column */
  .global-header .kadence-column51_fc6693-a2 {
    display: none !important;
  }
  /* Hide the search column */
  .global-header .kadence-column51_229451-94 {
    display: none !important;
  }
  .global-header .kadence-column51_de0f3f-5f {
    width: auto;
    flex-shrink: 0;
  }
  .global-header .kadence-column51_de0f3f-5f .kt-inside-inner-col {
    justify-content: flex-start;
  }
  .global-header .custom-logo {
    max-width: 200px;
    height: auto;
  }
  .global-header {
    border-bottom: 1px solid #e4e4e4;
    padding: 10px 0;
  }
}

@media screen and (max-width: 767px) {
  .global-header .custom-logo {
    max-width: 170px;
  }
  .global-header {
    padding: 8px 0;
  }
}

@media screen and (max-width: 480px) {
  .global-header .custom-logo {
    max-width: 150px;
  }
  .section-header-top p {
    font-size: 9px !important;
  }
}


/* ==========================================================================
   HAMBURGER TOGGLE BUTTON (injected by JS into the global-header)
   ========================================================================== */

/* Hidden on desktop */
.scc-mobile-menu-toggle {
  display: none;
}

@media screen and (max-width: 991px) {
  .scc-mobile-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    margin-right: 10px;
    z-index: 10;
    -webkit-tap-highlight-color: transparent;
  }

  .scc-hamburger {
    position: relative;
    width: 22px;
    height: 18px;
  }

  .scc-hamburger span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #000;
    border-radius: 2px;
    left: 0;
    transition: all 0.3s ease;
  }

  .scc-hamburger span:nth-child(1) { top: 0; }
  .scc-hamburger span:nth-child(2) { top: 7px; }
  .scc-hamburger span:nth-child(3) { top: 14px; }

  /* Animate to X when open */
  .scc-menu-open .scc-hamburger span:nth-child(1) {
    top: 7px;
    transform: rotate(45deg);
  }
  .scc-menu-open .scc-hamburger span:nth-child(2) {
    opacity: 0;
  }
  .scc-menu-open .scc-hamburger span:nth-child(3) {
    top: 7px;
    transform: rotate(-45deg);
  }

  /* The toggle button placeholder column (injected by JS) */
  .scc-toggle-column {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
  }
}


/* ==========================================================================
   OFF-CANVAS MOBILE MENU PANEL
   ========================================================================== */

.scc-offcanvas-overlay {
  display: none;
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.scc-offcanvas-overlay.scc-visible {
  display: block;
}

.scc-offcanvas-overlay.scc-active {
  opacity: 1;
}

.scc-offcanvas-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 80%;
  max-width: 440px;
  min-width: 240px;
  height: 100%;
  background: #333;
  color: rgba(255, 255, 255, 0.85);
  z-index: 9999;
  transform: translateX(-100%);
  transition: transform 0.4s ease;
  overflow: hidden;
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  box-sizing: border-box;
}

.scc-offcanvas-menu.scc-active {
  transform: translateX(0);
}

/* Prevent body scroll when menu is open */
body.scc-menu-open {
  overflow: hidden;
}

/* --- Menu panels (stacked for drill-down navigation) --- */
.scc-menu-panel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  transform: translateX(100%);
  transition: transform 0.35s ease;
  background: #333;
}

.scc-menu-panel.scc-panel-active {
  transform: translateX(0);
}

/* The root panel starts active */
.scc-menu-panel.scc-panel-root {
  transform: translateX(0);
}

/* When a sub-panel is active, slide the parent left */
.scc-menu-panel.scc-panel-left {
  transform: translateX(-100%);
}

/* --- Panel navbar (back button + title) --- */
.scc-panel-navbar {
  display: flex;
  align-items: center;
  padding: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  background: #333;
  position: sticky;
  top: 0;
  z-index: 2;
  min-height: 44px;
}

.scc-panel-back {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  min-height: 44px;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.4);
  border: none;
  background: none;
  flex-shrink: 0;
  position: relative;
  padding: 0;
}

.scc-panel-back::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-left: 2px solid rgba(255, 255, 255, 0.4);
  border-bottom: 2px solid rgba(255, 255, 255, 0.4);
  transform: rotate(45deg);
}

.scc-panel-back::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1px;
  background: rgba(0, 0, 0, 0.3);
}

.scc-panel-title {
  flex: 1;
  text-align: center;
  color: rgba(255, 255, 255, 0.4);
  font-size: 14px;
  font-weight: 400;
  padding: 12px 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
}

a.scc-panel-title:hover {
  color: rgba(255, 255, 255, 0.7) !important;
}

/* --- Menu list items --- */
.scc-menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.scc-menu-item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  display: flex;
  flex-wrap: nowrap;
}

.scc-menu-item a.scc-item-link {
  flex: 1;
  display: block;
  padding: 12px 10px 12px 20px;
  color: rgba(255, 255, 255, 0.85) !important;
  text-decoration: none;
  font-size: 14px;
  font-family: "Open Sans", sans-serif;
  font-weight: 400;
  line-height: 20px;
  transition: background 0.2s ease;
}

.scc-menu-item a.scc-item-link:hover {
  background: rgba(255, 255, 255, 0.05) !important;
  color: #fff !important;
}

/* Submenu arrow button */
.scc-submenu-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
  position: relative;
  flex-shrink: 0;
}

.scc-submenu-arrow::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 1px;
  background: rgba(0, 0, 0, 0.3);
}

.scc-submenu-arrow::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-right: 2px solid rgba(255, 255, 255, 0.4);
  border-top: 2px solid rgba(255, 255, 255, 0.4);
  transform: rotate(45deg);
}

.scc-submenu-arrow:hover::after {
  border-color: rgba(255, 255, 255, 0.7);
}

/* Employee Directory Search block */
.employee-directory-search-block {
  margin: 1em 0;
}

.employee-directory-search-form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  max-width: 100%;
}

.employee-directory-search-input {
  flex: 1;
  min-width: 200px;
  padding: 0.5em 0.75em;
  border: 1px solid #ccc;
  border-radius: 3px;
  font-size: 1rem;
}

.employee-directory-search-submit {
  padding: 0.5em 1em;
  background: #0065bd;
  color: #fff;
  border: none;
  border-radius: 3px;
  font-size: 1rem;
  cursor: pointer;
}

.employee-directory-search-submit:hover {
  background: #004165;
}

.group-stat .kt-progress-label-inside{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center !important;
  gap:6px;
  pointer-events:none;
}

.group-stat .kt-progress-label-inside::before{
  content:"";
  width:30px;
  height:30px;
  display:block;
  background:no-repeat center/contain url("/wp-content/uploads/people-group-solid-full.svg");
}

.group-stat .kb-current-progress-inside{
  display:block;
  line-height:1;
}
.briefcase-stat .kt-progress-label-inside{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center !important;
  gap:6px;
  pointer-events:none;
}

.briefcase-stat .kt-progress-label-inside::before{
  content:"";
  width:30px;
  height:30px;
  display:block;
  background:no-repeat center/contain url("/wp-content/uploads/briefcase-solid-full.svg");
}

.briefcase-stat .kb-current-progress-inside{
  display:block;
  line-height:1;
}