/*
Theme Name: WP Bootstrap Starter Child
Theme URI: https://afterimagedesigns.com/wp-bootstrap-starter/
Author: Tony Chabolla
Author URI: https://hasc.hfa.ucsb.edu/
Template: wp-bootstrap-starter
Description:  The best WordPress starter theme based on the most powerful frameworks in the world: "_s" (by Automattic, the main people behind WordPress development), Twitter Bootstrap (the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web) and Font Awesome (or Fontawesome, a full suite of 675+ pictographic icons for easy scalable vector graphics on websites). This theme, like WordPress, is licensed under the GPL. You can use this theme as base for your next WordPress theme project and you are allowed to remove the link at the footer or do whatever you want. Your feedback on how we can continuously improve this WordPress Starter Theme Bootstrap will be highly appreciated. Page templates includes Right-sidebar (default page template), Left-Sidebar, Full-Width, Blank with container, Blank without container Page. Other features - Currently using Bootstrap v4.0.0 , Widgetized footer area, WooCommerce ready, Compatible with Contact Form 7, Compatible with Visual Composer, Compatible with Elementor Page Builder. This theme will be an active project which we will update from time to time. Check this page regularly for the updates.
Version: 3.3.3
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wp-bootstrap-starter
Tags: blog, custom-menu, featured-images, threaded-comments, translation-ready, right-sidebar, custom-background, e-commerce, theme-options, sticky-post, full-width-template
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
# Woocommerce
# Footer
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
:root {
  --navy: #003660;
  --gold: #FEBC11;
  --light-gray: #DCE1E5;
}

/* Title Underscores */

.title-underscore {
	margin-top: 2px;
	height: 5px;
	width: 35%;
  margin-bottom: 20px;
}

.title-underscore-yellow {
	background: #FEBC11;
}

.title-underscore-blue {
	background: var(--navy);
}

.title-underscore-red {
	background: #EF5645;
}

.title-underscore-green {
	background: #7A8D39;
}

body {
  margin: 0;
  -webkit-font-smoothing: auto;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 2.5rem;
}

hr {
  box-sizing: content-box;
  height: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/

.avenir-light {
  font-family:Avenir, "Century Gothic", sans-serif;
  font-weight:100;
  font-style:normal;
}
.avenir-medium {
  font-family:Avenir, "Century Gothic", sans-serif;
  font-weight:400;
  font-style:normal;
}
.avenir-heavy {
  font-family:Avenir, "Century Gothic", sans-serif;
  font-weight:600;
  font-style:normal;
}

.avenir-black-oblique {
  font-family:Avenir, "Century Gothic", sans-serif;
  font-weight:600;
  font-style:italic;
}

.produkt-thin {
  font-family:Produkt, serif;
  font-weight:100;
  font-style:normal;
}

.produkt-regular{
  font-family:Produkt, serif;
  font-weight:400;
  font-style:normal;
}

h1, h2, h3, h4, h5, h6 {
  clear: both;
  color: #3D4952;
  font-family:Avenir, "Century Gothic", sans-serif;
  font-weight:500;
  font-style:normal;
  margin-top: 24px;
  margin-bottom: 15px;
}
h1 {
  font-size: 32px;
  padding-bottom: 10px;
}
h2 {
  font-size: 24px;
  padding-bottom: 0.3em;
  line-height: 1.25;
}
h3 {
  font-size: 18px;
  line-height: 25px;
}
h4 {
  font-size: 16px;
  line-height: 20px;
}
h5 {
  font-size: 14px;
  line-height: 17.5px;
}

p {
  margin-bottom: 1.5em;
}
h1.entry-title {
  font-size: 1.6rem;
  font-family: Produkt, serif;
  font-weight: 400;
  font-style: normal;
  border-bottom: 1px solid var(--light-gray);
  margin-top: none;
}
h2.entry-title {
  font-family: Produkt, serif;
  font-weight: 400;
  font-style: normal;
  border-bottom: 1px solid var(--light-gray);
}
h3.widget-title {
  font-size: 1.2rem;
  font-family: Produkt, serif;
  font-weight: 400;
  font-style: normal;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */
}

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
header#masthead {
  margin-bottom: 0;
  background-color: var(--navy);
  box-shadow: 0 0.5rem 1rem rgba(0,0,0,.05), inset 0 -1px 0 rgba(0,0,0,.1);
  padding: .74rem 1rem;
}

.navbar-brand > a {
  color: rgba(0, 0, 0, 0.9);
  font-size: 1.1rem;
  outline: medium none;
  text-decoration: none;
  color: #fff;
  font-weight: 700;
}

.navbar-brand > a:visited, .navbar-brand > a:hover {
  text-decoration: none;
}

#page-sub-header {
  min-height: 500px;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 0;
  text-align: center;
  font-size: 1.25rem;
  background-size: cover !important;
}
#page-sub-header > div{
  background-color: var(--navy);
  min-width: 50%;
  max-width: 60%;
}

body:not(.theme-preset-active) #page-sub-header h1 {
  line-height: 1.6;
  font-family:Produkt, serif;
  font-weight:400;
  font-style:normal;
  font-size: 4rem;
  /* text-align: left; */
  color: #fff;
  margin: 0 0 1rem;
  border: 0;
  padding: 0;
}

#page-sub-header p {
  color: #fff;
  /* text-align: center; */
  margin-bottom: 0;
  line-height: 1.4;
  font-size: 1.25rem;
  font-weight: 300;
}
body:not(.theme-preset-active) #page-sub-header p {
color: #fff;
}
a.page-scroller {
  color: #fff;
  font-size: 2.6rem;
  display: inline-block;
  margin-top: 2rem;
}
@media screen and (max-width: 360px) {
  body:not(.theme-preset-active) #page-sub-header h1 {
    font-size: 3rem;
  }
  body:not(.theme-preset-active) #page-sub-header {
    font-size: .75rem;
  }
}
@media screen and (min-width: 768px) {
  body:not(.theme-preset-active) #page-sub-header h1 {
    font-size: 3.750rem;
  }
  body:not(.theme-preset-active) #page-sub-header {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 992px) {
  #page-sub-header p {
    max-width: 43rem;
    margin: 0 auto;
  }
}

/* Set CSS rules for main menu nav dropdown links */
@media (max-width: 1199px) {
  .dropdown-item {
    color: var(--light-gray);
  }

  .navbar-nav .dropdown-menu a.dropdown-item:hover,
  .navbar-nav .dropdown-menu a.dropdown-item:focus {
    color: var(--gold);
  }

  .navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23DCE1E5' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  }

  .navbar-light .navbar-toggler-icon:hover,
  .navbar-light .navbar-toggler-icon:focus {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23FEBC11' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  }

  .navbar-light .navbar-toggler {
    border-color: var(--light-gray);
  }

  .navbar-light .navbar-toggler:hover,
  .navbar-light .navbar-toggler:focus
  {
    border-color: var(--gold);
  }

}

/*--------------------------------------------------------------
## Breadcrumbs
--------------------------------------------------------------*/
.breadcrumbs {
  background-color: var(--light-gray);
}

.breadcrumb {
  background-color: var(--light-gray);
}

.breadcrumb a:hover {
  color: var(--gold)
}

.breadcrumb-item + .breadcrumb-item::before {
        content: ">";
    }

/* Used to remove breadcrumb from front page */
.page-id-8837 .breadcrumbs{
  display: none;
}
@media screen and (max-width: 768px) {
  .breadcrumb{
    display:none;
  }
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: var(--navy);
  text-decoration: underline;
}
a:hover{
  color: var(--gold);
}
/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
#masthead nav {
  font-family:Avenir, "Century Gothic", sans-serif;
  font-weight:600;
  font-style:normal;
  padding-left: 0;
  padding-right: 0;
  text-decoration: none;
}


body:not(.theme-preset-active) #masthead .navbar-nav > li > a {
  color: var(--light-gray);
  padding: 0.5rem;
  font-weight: 500;
  /* font-size: 0.875rem; */
  text-decoration: none;
}

body:not(.theme-preset-active) #masthead .navbar-nav > li > a:hover{
  color: #fff;
  font-weight: 500;
  border-bottom: 0.3em solid var(--gold);
  text-decoration: none;
}
body:not(.theme-preset-active) #masthead .navbar-nav > li.current_page_item > a {
  color: #fff;
  font-weight: 500;
  border-bottom: .3em solid var(--gold);
  text-decoration: none;
}
.nav-link{
  font-size: 1em;
}
.navbar-brand {
  height: auto;
  width: 15rem;
  display: inline-block;
  padding-top: .3125rem;
  padding-bottom: .3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-toggle .icon-bar {
  background: #000 none repeat scroll 0 0;
}

.dropdown-menu .dropdown-toggle::after {
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
  border-top: 0.3em solid transparent;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children {
    position: relative;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children>.dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
    -webkit-border-radius: 0 6px 6px 6px;
    -moz-border-radius: 0 6px 6px;
    border-radius: 0 6px 6px 6px;
}
.dropdown.menu-item-has-children .dropdown.menu-item-has-children:hover>.dropdown-menu {
    display: block;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children>a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #ccc;
    margin-top: 5px;
    margin-right: -10px;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children:hover>a:after {
    border-left-color: #fff;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children.pull-left {
    float: none;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children.pull-left>.dropdown-menu {
    left: -100%;
    margin-left: 10px;
    -webkit-border-radius: 6px 0 6px 6px;
    -moz-border-radius: 6px 0 6px 6px;
    border-radius: 6px 0 6px 6px;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

.dropdown-item {
  line-height: 1.2;
  padding-bottom: 0.313rem;
  padding-top: 0.313rem;
}

.dropdown-menu {
  min-width: 12.500rem;
}

.dropdown .open .dropdown-menu {
  display: block;
  left: 12.250em;
  top: 0;
}

.dropdown-menu .dropdown-item {
  white-space: normal;
  background: transparent;
  line-height: 1.6;
}
.dropdown-menu .dropdown-item:hover {
  background: transparent;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .dropdown-menu li > .dropdown-menu {
    right: -9.875rem;
    top: 1.375rem;
  }
}
@media screen and (max-width: 991px) {
  .navbar-nav .dropdown-menu {
    border: medium none;
    margin-left: 1.250rem;
    padding: 0;
  }

  .dropdown-menu li a {
    padding: 0;
  }

  #masthead .navbar-nav > li > a {
    padding-bottom: 0.625rem;
    padding-top: 0.313rem;
  }

  .navbar-light .navbar-toggler {
    border: medium none;
    outline: none;
  }
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
  overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%;
}
.comment-content.card-block {
  padding: 20px;
}

.navigation.post-navigation {
  padding-top: 1.875rem;
}

.post-navigation .nav-previous a,
.post-navigation .nav-next a {
  border: 1px solid #ddd;
  border-radius: 0.938rem;
  display: inline-block;
  padding: 0.313rem 0.875rem;
  text-decoration: none;
}

.post-navigation .nav-next a::after {
  content: " \2192";
}

.post-navigation .nav-previous a::before {
  content: "\2190 ";
}

.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
  background: #eee none repeat scroll 0 0;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 0.313rem;
  line-height: normal;
  padding: 0.938rem 1.438rem 0.875rem;
  text-decoration: none;
  top: 0.313rem;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

a img.alignright {
  float: right;
  margin: 0.313rem 0 1.25rem 1.25rem;
}

a img.alignnone {
  margin: 0.313rem 1.25rem 1.25rem 0;
}

a img.alignleft {
  float: left;
  margin: 0.313rem 1.25rem 1.25rem 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption.alignnone {
  margin: 0.313rem 1.25rem 1.25rem 0;
}

.wp-caption.alignleft {
  margin: 0.313rem 1.25rem 1.25rem 0;
}

.wp-caption.alignright {
  margin: 0.313rem 0 1.25rem 1.25rem;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  font-size: 0.875rem;
  /* Make sure select elements fit in widgets. */
}
.widget select {
  max-width: 100%;
}

.widget_search .search-form input[type="submit"] {
  display: none;
}

.nav > li > a:focus,
.nav > li > a:hover {
  background-color: #eee;
  text-decoration: none;
}
.half-rule {
  width: 6rem;
  margin: 2.5rem 0;
}
.widget_categories .nav-link {
  display: inline-block;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
#content.site-content {
  padding-bottom: 3.75rem;
  padding-top: 1.125rem;
}

.sticky .entry-title::before {
  content: '\f08d';
  font-family: "Font Awesome\ 5 Free";
  font-size: 1.563rem;
  left: -2.5rem;
  position: absolute;
  top: 0.375rem;
  font-weight: 900;
}

.sticky .entry-title {
  position: relative;
}

.single .byline,
.group-blog .byline {
  display: inline;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

.page-template-blank-page .entry-content,
.blank-page-with-container .entry-content {
  margin-top: 0;
}

.post.hentry {
  margin-bottom: 4rem;
}

.posted-on, .byline, .comments-link {
  color: #9a9a9a;
}

.entry-title > a {
  color: inherit;
}

/*--------------------------------------------------------------
## Directory Page
--------------------------------------------------------------*/
.dir-card {
  margin-bottom: 1.5em;
}
.dir-img{
  display: block;
  width: 100%;              /* Fills the width of its container */
  aspect-ratio: 1 / 1;      /* Forces a square shape */
  object-fit: cover;        /* Crops the image to cover the container */
  max-width: 300px;         /* Ensures the image doesn't exceed 150px */
  min-width: 299px;
  margin-right: 10px;
  object-position: top;
}
.card-body {
  display: flex;
}

.card h5{
  font-size: 1.25rem;
}

@media only screen and (max-width: 768px) {
  .card-body {
    flex-direction: column;
  }

  .card-body a{
    line-height: 0;   /* Removes extra space below the inline element */
    display: inline-block;  /* Ensure it respects the line-height setting */
  }
  
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

.comment-body .pull-left {
  padding-right: 0.625rem;
}

.comment-list .comment {
  display: block;
}

.comment-list {
  padding-left: 0;
}

.comments-title {
  font-size: 1.125rem;
}

.comment-list .pingback {
  border-top: 1px solid rgba(0, 0, 0, 0.125);
  padding: 0.563rem 0;
}

.comment-list .pingback:first-child {
  border: medium none;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  background: #f1f1f1 none repeat scroll 0 0;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  padding: 0.313rem 0.313rem 0;
  text-align: center;
}
.wp-caption img[class*="wp-image-"] {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 100%;
  padding: 0;
  width: auto;
}
.wp-caption .wp-caption-text {
  font-size: 0.688rem;
  line-height: 1.063rem;
  margin: 0;
  padding: 0.625rem;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}
.gallery-item .gallery-columns-2 {
  max-width: 50%;
}
.gallery-item .gallery-columns-3 {
  max-width: 33.33333%;
}
.gallery-item .gallery-columns-4 {
  max-width: 25%;
}
.gallery-item .gallery-columns-5 {
  max-width: 20%;
}
.gallery-item .gallery-columns-6 {
  max-width: 16.66667%;
}
.gallery-item .gallery-columns-7 {
  max-width: 14.28571%;
}
.gallery-item .gallery-columns-8 {
  max-width: 12.5%;
}
.gallery-item .gallery-columns-9 {
  max-width: 11.11111%;
}

.gallery-caption {
  display: block;
}
/*--------------------------------------------------------------
# Directory
--------------------------------------------------------------*/
.sorting-bar {
  padding-bottom: 10px
}

.dept-button {
  /* background-color: #ffffff; */
  border-radius: 3px;
  border: 1px solid var(--navy);
  /* box-shadow: rgba(255, 255, 255, .7) 0 1px 0 0 inset; */
  box-shadow: #ffffff;
  box-sizing: border-box;
  color: var(--navy);
  cursor: pointer;
  display: inline-block;
  font-family: -apple-system,system-ui,"Segoe UI","Liberation Sans",sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.15385;
  margin: 0;
  outline: none;
  padding: 5px .8em;
  position: relative;
  text-align: center;
  text-decoration: none;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  vertical-align: baseline;
  white-space: nowrap;
}

.dept-button:hover,
.dept-button:focus {
  background-color: #DCE1E5;
  color: var(--navy);
}

.dept-button:focus {
  box-shadow: 0 0 0 4px rgba(0, 149, 255, .15);
}

.dept-button:active {
  background-color: #DCE1E5;
  box-shadow: none;
  /* color: #DCE1E5; */
}

.selected {
  box-shadow: 0 0 0 4px rgba(0, 149, 255, .15);
}

/*--------------------------------------------------------------
# Plugin Compatibility
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Woocommerce
--------------------------------------------------------------*/
.woocommerce-cart-form .shop_table .coupon .input-text {
  width: 8.313rem !important;
}

.variations_form .variations .value > select {
  margin-bottom: 0.625rem;
}

.woocommerce-MyAccount-content .col-1,
.woocommerce-MyAccount-content .col-2 {
  max-width: 100%;
}

/*--------------------------------------------------------------
## Elementor
--------------------------------------------------------------*/
.elementor-page article .entry-footer {
  display: none;
}

.elementor-page.page-template-fullwidth #content.site-content {
  padding-bottom: 0;
  padding-top: 0;
}

.elementor-page .entry-content {
  margin-top: 0;
}

/*--------------------------------------------------------------
## Visual Composer
--------------------------------------------------------------*/
.vc_desktop article .entry-footer {
  display: none;
}

.vc_desktop #content.site-content {
  padding-bottom: 0;
  padding-top: 0;
}

.vc_desktop .entry-content {
  margin-top: 0;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer#colophon {
  font-size: 85%;
}
body:not(.theme-preset-active) footer#colophon {
  color: #99979c;
  background-color: #f7f7f7;
}
.navbar-dark .site-info {
  color: #fff;
}
.copyright {
  font-size: 0.875rem;
  margin-bottom: 0;
  text-align: center;
}

.copyright a, footer#colophon a {
  color: inherit;
}

@media screen and (max-width: 767px) {
  #masthead .navbar-nav > li > a {
    padding-bottom: 0.938rem;
    padding-top: 0.938rem;
  }
}
/*--------------------------------------------------------------
# Media Query
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Notebook
--------------------------------------------------------------*/
@media only screen and (max-width: 1280px) {
  html {
    font-size: 95%;
  }
}

@media screen and (max-width: 1199px) {
  .navbar-dark .dropdown-item {
    color: #fff;
  }
  .navbar-nav .dropdown-menu {
    background: transparent;
    box-shadow: none;
    border: none;
  }
}
/*--------------------------------------------------------------
## Netbook
--------------------------------------------------------------*/
@media only screen and (max-width: 1024px) {
  html {
    font-size: 90%;
  }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 960px) {
  html {
    font-size: 85%;
  }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 768px) {
  html {
    font-size: 80%;
  }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 480px) {
  html {
    font-size: 75%;
  }
}

/*--------------------------------------------------------------
## staff cards
--------------------------------------------------------------*/
.staff-descr {
  overflow-wrap: break-word;
}

.staff-name {
  font-size: 1.2rem;
  color: var(--navy);
}

.staff-title {
  font-style: italic;
  font-size: 1rem;
}
@media all and (min-width: 769px) {
  .staff-photo {
    float: right;
  }
}

@media all and (max-width: 768px) {
  .staff-photo {
    text-align: left;
  }
}

/*--------------------------------------------------------------
## Homepage
--------------------------------------------------------------*/

.home .entry-title {
  display: none;
}

h1.front-page, h2.front-page {
  font-family: Produkt, serif;
	font-weight: 400;
  margin: 0;
  padding: 0;
}

.front-page h1, .front-page h2 {
  font-family: Produkt, serif;
	font-weight: 400;
  margin: 0;
  padding: 0;
}


/* For viewports 1200px and wider (horizontal layout) */
@media (min-width: 1200px) {
  /* Target the news posts container */
  .news-content {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; /* Optional spacing between items */
  }
  .news-content .news-container {
    flex: 1 1 calc(33.33% - 20px); /* Three per row, adjust as needed */
  }

  /* Target the events posts container; adjust selectors as needed */
  .events-container .upcoming-events {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
  }
  .events-container .upcoming-events li {
    flex: 1 1 calc(33.33% - 20px);
  }
}

/* For viewports below 1200px (vertical layout) */
@media (max-width: 1199px) {
  .news-content,
  .events-container .upcoming-events {
    display: block;
  }
  .news-content .news-container,
  .events-container .upcoming-events li {
    width: 100%;
    margin-bottom: 20px;
    list-style: none;
  }

  .events-container ul {
    padding-left: 0;
    margin-left: 0;
  }  
  .view-all {
    text-align: right;
  }
}

.event-featured-img {
  display: block;
  width: 100%;      /* Force a uniform width */
  aspect-ratio: 1 / 1;
  /* max-width: 300px;
  min-width: 299px; */
  object-fit: cover; /* Optional: crops the image to fill the container */
  object-position: top;
}

.view-all{
  display: flex;
  justify-content: flex-end;
}


/*--------------------------------------------------------------
## Student highlight page
--------------------------------------------------------------*/

/* Target the link text in the pictures */
p.link-button a {
  background-color: var(--navy);
  color: var(--light-gray);
  padding: 5px;
}

/*--------------------------------------------------------------
## Author page
--------------------------------------------------------------*/

.staff-profile-container .metaslider + p {
  margin-top: 100px;
}