:root {
  --green-006233: #006233;
  --green-dark-0a4525: #0a4525;
  --green-light-c3d6cd: #c3d6cd;
  --yellow-ffc726: #ffc726;
  --yellow-dark-ffa124: #ffa124;
  --yellow-light-f7e8bc: #f7e8bc;
  --red-bb0202: #bb0202;
  --aqua-00e0c5: #00e0c5;
  --white: #ffffff;
  --gray-fcfcfc: #fcfcfc;
  --gray-efefef: #efefef;
  --gray-dedede: #dedede;
  --gray-cccccc: #cccccc;
  --gray-909090: #909090;
  --gray-5e5e5e: #5e5e5e;
  --gray-282829: #282829;

  --bhsu-black: #282829;
  --black: #000000;

  --shaded-black-to-top: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.9),
    rgba(0, 0, 0, 0.1)
  );
  --shaded-black-to-left: linear-gradient(
    to left,
    rgba(0, 0, 0, 0.9),
    rgba(0, 0, 0, 0.1)
  );
  --shaded-black-to-right: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.9),
    rgba(0, 0, 0, 0.1)
  );

  --font-family-body: "MessinaSans", sans-serif;
  --font-family-heading: "MessinaSerif", serif;
  --font-family-script: "ReenieBeanie", sans-serif;

  --menu-drop-shadow: 1px 1px 4px var(--black);
  --hero-text-drop-shadow: 2px 2px 2px var(--black);
  --card-drop-shadow: 2px 2px 6px 1px rgba(0, 0, 0, 0.55);

  /* updated Bootstrap variables */
  --bs-border-radius: 0 !important;

  /* buttons  */
  --btn-border-radius: 0 !important;
  /* --bs-button-padding-y: 2em; */
}

html {
  height: 100%;
}

body {
  font-family: var(--font-family-body);
  color: var(--black);
  font-feature-settings: "kern"; /* turns on kerning */
  text-rendering: optimizeLegibility; /* emphasise on legibility when rendering, turns on ligatures and kerning */
  -webkit-font-smoothing: antialiased; /* apply font anti-aliasing for Webkit on OSX */
  -moz-osx-font-smoothing: grayscale; /* apply font anti-aliasing for Firefox on OSX */
}

a {
  color: var(--green-006233);
}

/* DEV ONLY  */
.border-red {
  outline: 1px solid red;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  font-family: var(--font-family-heading);
  font-weight: 600;
  font-optical-sizing: auto;
}

.font-family-heading {
  font-family: var(--font-family-heading);
  font-weight: 600;
}
.font-family-body {
  font-family: var(--font-family-body);
}
.font-family-script {
  font-family: var(--font-family-script);
}
.fw-bold {
  font-weight: 900 !important;
}

.bg-white {
  background-color: var(--white) !important;
}

.bg-black {
  background-color: var(--bhsu-black) !important;
}

.bg-primary,
.bg-green {
  background-color: var(--green-006233) !important;
  color: var(--white);
}

.bg-med-light-gray {
  background-color: var(--gray-efefef) !important;
}
.bg-med-gray {
  background-color: var(--gray-cccccc) !important;
}
.bg-med-dark-gray {
  background-color: var(--gray-909090) !important;
}

.text-white {
  color: var(--white) !important;
}

.text-green,
.text-primary {
  color: var(--green-006233) !important;
}

/* headings - start */
h1,
.h1 {
  font-size: 4rem;
}

h2,
.h2 {
  font-size: 2.5rem;
}

h3,
.h3 {
  font-size: 2rem;
}

h4,
.h4 {
  font-size: 1.5rem;
}

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

h6,
.h6 {
  font-size: 1rem;
}

.title {
  color: var(--green-006233);
  font-size: 2em;
}

.home-heading {
  font-size: 5em;
  line-height: 0.4em;
  text-align: center;
  text-transform: uppercase;
  text-shadow: var(--hero-text-drop-shadow);
}
.home-subheading {
  font-size: 3.5em;
  font-family: var(--font-family-heading);
  font-weight: 600;
  text-transform: uppercase;
  text-shadow: var(--hero-text-drop-shadow);
}

@media (max-width: 991px) {
  .home-heading {
    font-size: 3em;
    line-height: 0.8em;
  }
  .home-subheading {
    font-size: 3em;
  }
}

@media (max-width: 525px) {
  .home-heading {
    font-size: 30px;
    line-height: 0.8em;
  }
  .home-subheading {
    font-size: 30px;
  }
}
/* headings - end */

/* opacity - start */
.opacity-30 {
  opacity: 0.3;
}

.opacity-40 {
  opacity: 0.4;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-60 {
  opacity: 0.6;
}

/* opacity - end */

/* shaded overlays */

.shaded-40:after {
  background-image: linear-gradient(
    to top right,
    rgba(0, 0, 0, 0.4),
    rgba(0, 0, 0, 0.4)
  );
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: -1;
}

.shaded-to-right:after {
  background-image: var(--shaded-black-to-right);
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: -1;
}

.shaded-to-left:after {
  background-image: var(--shaded-black-to-left);
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: -1;
}

/* /shaded overlays */

/* text sizes - end */

/* buttons - start */
.btn {
  --bs-btn-border-radius: var(--btn-border-radius);
  border: none;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  position: relative;
  font-family: var(--font-family-heading);
  font-weight: 600;
  z-index: 1;
}

.btn.btn-primary {
  background-color: var(--yellow-ffc726);
  color: var(--black);
}

.btn.btn-secondary {
  background-color: var(--green-006233);
  color: var(--white);
}

.btn.btn-negative-1 {
  background-color: var(--gray-efefef);
  color: var(--black);
}

.btn.btn-negative-2 {
  background-color: var(--gray-efefef);
  color: var(--black);
}

.btn.btn-plain-1 {
  background-color: var(--yellow-ffc726);
  color: var(--black);
}

.btn.btn-plain-2 {
  background-color: var(--green-006233);
  color: var(--white);
}

/* new button styles 072524  */
.btn.side-swipe {
  padding-left: 1.25em;
}
.btn.side-swipe::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 10px;
  background-color: #000;
  -webkit-transition: width 0.2s;
  -o-transition: width 0.2s;
  transition: width 0.2s;
  z-index: -1;
}
.btn.side-swipe:hover::before {
  width: 100%;
}

.btn.btn-primary.side-swipe::before {
  background-color: var(--gray-efefef);
}
.btn.btn-primary.side-swipe:hover {
  color: var(--black);
}
.btn.btn-secondary.side-swipe::before {
  background-color: var(--black);
}
.btn.btn-secondary.side-swipe:hover {
  color: var(--white);
}

.btn.btn-negative-1.side-swipe::before {
  background-color: var(--green-006233);
}
.btn.btn-negative-1.side-swipe:hover {
  color: var(--white);
}
.btn.btn-negative-2.side-swipe::before {
  background-color: var(--yellow-ffc726);
}
.btn.btn-negative-2.side-swipe:hover {
  color: var(--black);
}
/*  */
/*  */
/*  */
/*  */
/*  */
/*  */
/*  */
/*  */
/*  */
/*  */
.cta--button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 10px;
  background-color: #000;
  -webkit-transition: width 0.3s;
  -o-transition: width 0.3s;
  transition: width 0.3s;
  z-index: -1;
}
.cta--button:hover {
  color: #fff;
}
.cta_red {
  background-color: #fff;
  color: #a6192e;
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
}
.cta_red::before {
  background-color: #a6192e;
}

.cta--button:hover::before {
  width: 100%;
}
/* /buttons */

/* link styles  */

.arrow-link {
  color: var(--green-006233);
  text-decoration: none;
  position: relative;
  border-bottom: 1px solid transparent;
}
.arrow-link:after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f178";
  margin-left: 0.25em;
}

.arrow-link:hover {
  border-bottom: 1px solid var(--green-006233);
}

.chevron-link {
  text-decoration: none;
  position: relative;
  border-bottom: 1px solid transparent;
  align-self: start;
}
.chevron-link:after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f054";
  margin-left: 0.25em;
}

.chevron-link:hover {
  border-bottom: 1px solid var(--white);
}

/* / link styles  */

/* backgrounds  */

.bg-topo-map-green {
  background: url(../images/topo-map-green.png) no-repeat 50% 50%;
  background-color: var(--green-dark-0a4525);
}
.bg-campus-map-green {
  background: url(../images/topo-campus-green.png) no-repeat 30% 50%;
  background-color: var(--green-006233);
}
.bg-campus-map-yellow {
  background: url(../images/topo-campus-yellow.png) no-repeat 30% 50%;
  background-color: var(--yellow-ffc726);
}
.bg-treeline-green {
  background: url(../images/treeline-green.png) repeat-x 50% 50%;
  background-color: #c4d6cd;
  background-position-y: bottom;
}
.bg-treeline-yellow {
  background: url(../images/treeline-yellow.png) repeat-x 50% 50%;
  background-color: #f6e8bc;
  background-position-y: bottom;
}

.bg-green-topo {
  background: url(../images/green-topo.png) no-repeat;
  background-size: contain !important;
  background-position-x: right !important;
  background-position-y: top !important;
}

.bg-green-topo.bottom-after {
  height: 260px;
  margin-bottom: -210px;
  position: relative;
  z-index: -1;
}

.bpy-85 {
  background-position-y: 85%;
}

/* /backgrounds  */

/* hero sections (cta) */

.hero-banner {
  background-repeat: no-repeat !important;
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
}

.hero-banner .btn {
  margin-bottom: 1em;
}

.hero-banner-forest {
  background-image: url(../images/treeline-green.png);
  background-position: bottom;
  position: relative;
}

.image-wavy-right-border,
.image-wavy-left-border {
  min-height: 400px;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero-banner.centered {
  justify-content: center;
}

.hero-banner .hero-banner-text {
  color: var(--white);
}

.hero-banner.tall {
  height: 400px;
}

.hero-banner.tall .hero-banner-text {
  margin-bottom: unset;
  display: flex;
}

.hero-banner.tall .hero-banner-text span {
  display: block;
}

.hero-banner-text a {
  text-decoration: none;
}

.hero-banner-text a:hover {
  text-decoration: underline;
}

.hero-banner.short {
  min-height: 260px;
  padding: 4em 0;
}

.bg-topo {
  background-image: url("_resources/images/topo-map-white.png");
  background-size: cover;
  background-position: center;
  height: 100px;
  margin-bottom: 60px;
  position: absolute;
}

@media (min-width: 768px) {
  .image-wavy-right-border {
    position: absolute;
    background-repeat: no-repeat;
    background-size: cover;
    --mask: radial-gradient(
          96.05px at calc(100% - 135px) 50%,
          #000 99%,
          #0000 101%
        )
        0 calc(50% - 120px) / 100% 240px,
      radial-gradient(96.05px at calc(100% + 75px) 50%, #0000 99%, #000 101%)
        calc(100% - 60px) 50%/100% 240px repeat-y;
    -webkit-mask: var(--mask);
    mask: var(--mask);
  }
  .image-wavy-left-border {
    position: absolute;
    right: 0;
    background-repeat: no-repeat;
    background-size: cover;
    --mask: radial-gradient(96.05px at 135px 50%, #000 99%, #0000 101%) 0
        calc(50% - 120px) / 100% 240px,
      radial-gradient(96.05px at -75px 50%, #0000 99%, #000 101%) 60px 50%/100%
        240px repeat-y;
    -webkit-mask: var(--mask);
    mask: var(--mask);
  }
}

@media (min-width: 992px) {
  .hero-banner.tall {
    height: 600px;
  }

  .hero-banner.tall .hero-banner-text {
    margin-bottom: -125px;
  }
}

/* video hero  */
.hero-video .play-pause,
.hero-video .play {
  position: absolute;
  z-index: 999;
  color: var(--white);
  background-color: var(--green-006233);
  width: 40px;
  height: 40px;
  top: 500px;
  right: 30px;
  border: 1px solid var(--white);
}

.hero-video .play-pause:hover,
.hero-video .play-pause:focus {
  background-color: var(--yellow-ffc726);
  color: var(--black);
}

.hero-video {
  position: relative;
  display: flex;
  flex-direction: column;
}

.hero-video,
.hero-video video,
.hero-video img {
  width: 100%;
  height: 600px;
  object-fit: cover;
  overflow: hidden;
}

.hero-video .hero-video-bg {
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

.hero-video .video-caption {
  position: relative;
  top: -400px;
  z-index: 1;
  /* background-color: rgba(0, 0, 0, 0.5); */
  padding: 60px 40px 20px 40px;
  color: var(--white);
  align-self: center;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.wavy-bottom:after,
.wavy-bottom-wrapper:after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 140px;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 1920 192.1'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; %7D .cls-2 %7B fill: %23006233; %7D .cls-3 %7B fill: %23c3d6cd; %7D %3C/style%3E%3C/defs%3E%3C!-- Generator: Adobe Illustrator 28.7.1, SVG Export Plug-In . SVG Version: 1.2.0 Build 142) --%3E%3Cg%3E%3Cg id='Layer_1'%3E%3Cg id='Layer_2'%3E%3Cpath class='cls-1' d='M1616.5,123.4c-42.1-17.2-57.1-26.3-92.3-35.9-2.9-.8-28.7-7.5-58.3-11.6-168-23.2-200.5,41.4-323.5,2C1049.4,48.1,1039.7,2,961.2,0h-2.1c-78.5,2.1-88.2,48.1-181.2,77.9-122.9,39.4-155.5-25.2-323.5-2-29.9,4.1-56.9,11.2-58.3,11.6-31,8.6-48,17.3-82.1,31.5-19.2,8-49.4,20.5-85.9,32.3-24.2,7.8-72.5,22.1-135.3,31.6-26.3,4-57.6,7.4-92.9,8.9h1920c-38.1-2-72.3-6.1-101.9-10.8-22.2-3.6-59.4-9.7-106.2-23.4-41.6-12.2-75.1-25.8-95.5-34.1h.2Z'/%3E%3Cg%3E%3Cpath id='Path_4592' class='cls-2' d='M995.2,173.4c-2.9-3.4-5.9-7.2-8.9-11.5-2.7-3.8-5.1-7.5-7.3-11.1h11.3c-2.9-3.6-5.8-7.2-8.8-11.1-2.3-3-4.5-5.9-6.6-8.8h11.8c-2.7-3.1-5.3-6.2-8-9.4-2.2-2.6-4.3-5.1-6.4-7.7h12.3c-2.2-2.7-4.5-5.7-6.7-8.8-1.8-2.5-3.5-5-5-7.4h10.2c-2.9-3.5-5.7-7.1-8.2-10.9-2-2.9-3.8-5.8-5.3-8.5h9.4c-2.5-3-5-6.4-7.5-10-4.2-6.2-7.9-12.7-11.1-19.4-3.2,6.8-6.9,13.2-11.1,19.4-2.5,3.7-5,7-7.5,10h9.4c-1.5,2.7-3.3,5.6-5.3,8.5-2.5,3.8-5.3,7.4-8.2,10.9h10.2c-1.5,2.4-3.2,4.9-5,7.4-2.3,3.2-4.5,6.1-6.7,8.8h12.3c-2.1,2.5-4.2,5.1-6.4,7.7-2.7,3.2-5.4,6.3-8,9.4h11.8c-2.1,2.9-4.3,5.8-6.6,8.8-3,3.8-5.9,7.5-8.8,11.1h11.3c-2.1,3.5-4.6,7.2-7.3,11.1-3,4.2-6,8-8.9,11.5h26.4v18.7h16.6v-18.7h26.9-.3Z'/%3E%3Cpath id='Path_4593' class='cls-3' d='M929.2,156.4c-2.1-2.5-4.3-5.2-6.4-8.3-2-2.8-3.7-5.5-5.3-8h8.1c-2.1-2.6-4.2-5.2-6.4-8-1.7-2.1-3.2-4.3-4.8-6.4h8.5c-1.9-2.2-3.9-4.5-5.8-6.8-1.6-1.8-3.1-3.7-4.7-5.5h8.9c-1.6-2-3.2-4.1-4.9-6.4-1.3-1.8-2.5-3.6-3.6-5.3h7.4c-2.1-2.5-4.1-5.1-6-7.9-1.4-2.1-2.7-4.2-3.8-6.2h6.8c-1.8-2.2-3.6-4.6-5.4-7.2-3-4.5-5.7-9.2-8-14-2.3,4.9-5,9.6-8,14-1.8,2.7-3.6,5.1-5.4,7.2h6.8c-1.1,2-2.4,4-3.8,6.2-1.8,2.7-3.8,5.3-6,7.9h7.4c-1.1,1.7-2.3,3.5-3.6,5.3-1.6,2.3-3.3,4.4-4.9,6.4h8.9c-1.5,1.8-3.1,3.7-4.7,5.5-1.9,2.3-3.9,4.5-5.8,6.8h8.5c-1.5,2.1-3.1,4.2-4.8,6.4-2.1,2.8-4.2,5.4-6.4,8h8.2c-1.5,2.6-3.3,5.2-5.3,8-2.2,3-4.3,5.8-6.4,8.3h19.1v13.5h12v-13.5h19.6Z'/%3E%3Cpath id='Path_4594' class='cls-3' d='M1042.2,156.4c-2.1-2.5-4.3-5.2-6.4-8.3-2-2.8-3.7-5.5-5.3-8h8.1c-2.1-2.6-4.2-5.2-6.4-8-1.7-2.1-3.2-4.3-4.8-6.4h8.6c-1.9-2.2-3.9-4.5-5.8-6.8-1.6-1.8-3.1-3.7-4.7-5.5h8.9c-1.6-2-3.2-4.1-4.9-6.4-1.3-1.8-2.5-3.6-3.6-5.3h7.4c-2.1-2.5-4.1-5.1-5.9-7.9-1.4-2.1-2.7-4.2-3.8-6.2h6.8c-1.8-2.2-3.6-4.6-5.4-7.2-3-4.5-5.7-9.2-8-14.1-2.3,4.9-5,9.6-8,14-1.8,2.7-3.6,5.1-5.4,7.2h6.8c-1.1,2-2.4,4-3.8,6.2-1.8,2.7-3.8,5.3-6,7.9h7.4c-1.1,1.7-2.3,3.5-3.6,5.3-1.6,2.3-3.3,4.4-4.9,6.4h8.9c-1.5,1.8-3.1,3.7-4.7,5.5-1.9,2.3-3.9,4.5-5.8,6.8h8.5c-1.5,2.1-3.1,4.2-4.8,6.4-2.1,2.8-4.2,5.4-6.4,8h8.1c-1.5,2.6-3.3,5.2-5.3,8-2.2,3-4.3,5.8-6.4,8.3h19.1v13.5h12v-13.5h19.5Z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); /* (original) background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 1920 147' style='enable-background:new 0 0 1920 147;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23FFFFFF;%7D .st1%7Bfill:%230A4525;%7D .st2%7Bopacity:0.4;fill:%230A4525;%7D%0A%3C/style%3E%3Cg id='Layer_3_copy'%3E%3Cg%3E%3Cg%3E%3Cpath class='st0' d='M1920,146.8H0c55.8-0.5,193.4-4.4,295.5-29.6c140-34.6,231.3-57.6,323.2-36.1c54.6,12.8,161.1,11,223.6-34.1 C904.9,2,942.3,0.5,959.2,0.5h1.5c16.9,0,54.4,1.5,116.9,46.6c62.6,45.1,169,46.9,223.6,34.1c91.8-21.5,183.1,1.5,323.2,36.1 C1726.6,142.4,1864.2,146.3,1920,146.8z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3Cg id='Layer_6'%3E%3Cg%3E%3Cpath class='st1' d='M984.7,112.5h-18.4V126h-12.7v-13.5h-18.4c8.4-9.8,12.9-17.3,12.9-17.3h-9.6c5.6-5.6,11-14.5,11-14.5h-8.2 c5.6-5.1,9.5-12.5,9.5-12.5h-8.7c5.5-4.1,9.9-11.8,9.9-11.8h-7.8c6.2-7,9.1-14.1,9.1-14.1h-6.6C954.5,32.4,960,21,960,21 s5.5,11.4,13.2,21.3h-6.6c0,0,3,7.1,9.1,14.1H968c0,0,4.4,7.6,9.9,11.8h-8.7c0,0,3.9,7.4,9.5,12.5h-8.2c0,0,5.4,8.9,11,14.5h-9.6 C971.9,95.2,976.3,102.7,984.7,112.5z'/%3E%3Cpath class='st2' d='M936.5,102.7h-13.8v10.2h-9.5v-10.2h-13.8c6.3-7.3,9.6-12.9,9.6-12.9h-7.2c4.2-4.2,8.3-10.9,8.3-10.9H904 c4.2-3.8,7.1-9.4,7.1-9.4h-6.5c4.1-3.1,7.4-8.8,7.4-8.8h-5.8c4.6-5.3,6.9-10.6,6.9-10.6h-5c5.8-7.5,9.9-16,9.9-16s4.1,8.5,9.9,16 h-5c0,0,2.2,5.3,6.9,10.6H924c0,0,3.3,5.7,7.4,8.8h-6.5c0,0,2.9,5.6,7.1,9.4h-6.2c0,0,4.1,6.7,8.3,10.9h-7.2 C926.9,89.8,930.2,95.4,936.5,102.7z'/%3E%3Cpath class='st2' d='M1020.5,102.7h-13.8v10.2h-9.5v-10.2h-13.8c6.3-7.3,9.6-12.9,9.6-12.9h-7.2c4.2-4.2,8.3-10.9,8.3-10.9H988 c4.2-3.8,7.1-9.4,7.1-9.4h-6.5c4.1-3.1,7.4-8.8,7.4-8.8h-5.8c4.6-5.3,6.9-10.6,6.9-10.6h-5c5.8-7.5,9.9-16,9.9-16s4.1,8.5,9.9,16 h-5c0,0,2.2,5.3,6.9,10.6h-5.8c0,0,3.3,5.7,7.4,8.8h-6.5c0,0,2.9,5.6,7.1,9.4h-6.2c0,0,4.1,6.7,8.3,10.9h-7.2 C1010.9,89.8,1014.2,95.4,1020.5,102.7z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); */
  background-position: bottom;
  background-repeat: no-repeat;
  margin-bottom: -1px;
  z-index: 9;
}

.wavy-bottom:after {
  display: flex;
}

.wavy-bottom-wrapper:after {
  display: block;
  position: relative;
  top: -139px;
}

@media screen and (min-width: 3000px) {
  .wavy-bottom:after,
  .wavy-bottom-wrapper:after {
    background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 1920 100.1'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; %7D .cls-2 %7B fill: %23006233; %7D .cls-3 %7B fill: %23c3d6cd; %7D %3C/style%3E%3C/defs%3E%3C!-- Generator: Adobe Illustrator 28.7.1, SVG Export Plug-In . SVG Version: 1.2.0 Build 142) --%3E%3Cg%3E%3Cg id='Layer_1'%3E%3Cg id='Layer_2'%3E%3Cpath class='cls-1' d='M1740.6,57.9c-12.4-3.7-24.9-4.9-28.3-5.3-3-.3-6.3-.5-10.3-.5-38.4-.4-41.9,12.3-78,16-56.6,5.8-66.8-23.6-126-18-30.6,2.9-24.8,10.4-68.8,16.7-18.8,2.7-55.3,5.9-98.5.2-55.4-7.3-58.8-20.8-110.9-28-86.2-11.9-102.9,21.2-165.9,1-47.7-15.3-52.7-38.9-93-40h-1.9c-40.3,1.1-45.3,24.7-93,40-63.1,20.2-79.8-12.9-165.9-1-52.2,7.2-55.5,20.7-111,28-43.2,5.7-79.7,2.5-98.5-.2-44-6.3-38.2-13.8-68.8-16.7-59.2-5.6-69.4,23.8-126,18-36.1-3.7-39.6-16.4-78-16-4,0-7.3.2-10.3.6-2.9.3-15.6,1.5-28.3,5.2-11.9,3.6-17.9,7.7-27.7,12.7-19,9.7-35.2,14-46.1,16.9-10.5,2.8-16.8,3.6-62,8.2-11.2,1.1-26,2.6-43.7,4.4h1920c-6.4-.6-20.1-2-37.5-3.7-58.2-5.9-84.4-8.9-112.9-24.9h0c-14.7-7.2-17.9-10.2-29-13.6h.3Z'/%3E%3Cg%3E%3Cpath id='Path_4592' class='cls-2' d='M977.5,90.5c-1.5-1.8-3-3.7-4.6-5.9-1.4-2-2.7-3.9-3.8-5.7h5.8c-1.5-1.8-3-3.7-4.5-5.7-1.2-1.5-2.3-3-3.4-4.5h6.1c-1.4-1.6-2.8-3.2-4.1-4.8-1.1-1.3-2.2-2.6-3.3-3.9h6.3c-1.1-1.4-2.3-2.9-3.5-4.5-.9-1.3-1.8-2.6-2.6-3.8h5.3c-1.5-1.8-2.9-3.7-4.2-5.6-1-1.5-1.9-3-2.7-4.4h4.8c-1.3-1.6-2.6-3.3-3.8-5.2-2.2-3.2-4.1-6.5-5.7-10-1.7,3.5-3.6,6.8-5.7,10-1.3,1.9-2.6,3.6-3.8,5.2h4.8c-.8,1.4-1.7,2.9-2.7,4.4-1.3,1.9-2.7,3.8-4.2,5.6h5.3c-.8,1.2-1.7,2.5-2.6,3.8-1.2,1.6-2.3,3.1-3.5,4.5h6.3c-1.1,1.3-2.2,2.6-3.3,3.9-1.4,1.6-2.8,3.2-4.1,4.8h6.1c-1.1,1.5-2.2,3-3.4,4.5-1.5,2-3,3.9-4.5,5.7h5.8c-1.1,1.8-2.3,3.7-3.8,5.7-1.5,2.2-3.1,4.1-4.6,5.9h13.6v9.6h8.6v-9.6h13.9-.3Z'/%3E%3Cpath id='Path_4593' class='cls-3' d='M943.5,81.7c-1.1-1.3-2.2-2.7-3.3-4.3-1-1.4-1.9-2.8-2.7-4.1h4.2c-1.1-1.3-2.2-2.7-3.3-4.1-.8-1.1-1.7-2.2-2.5-3.3h4.4c-1-1.1-2-2.3-3-3.5-.8-1-1.6-1.9-2.4-2.9h4.6c-.8-1-1.7-2.1-2.5-3.3-.7-.9-1.3-1.9-1.9-2.8h3.8c-1.1-1.3-2.1-2.6-3.1-4-.7-1.1-1.4-2.2-2-3.2h3.5c-.9-1.1-1.8-2.4-2.8-3.7-1.6-2.3-3-4.7-4.1-7.2-1.2,2.5-2.6,4.9-4.1,7.2-.9,1.4-1.9,2.6-2.8,3.7h3.5c-.6,1-1.2,2.1-2,3.2-1,1.4-2,2.8-3.1,4h3.8c-.6.9-1.2,1.8-1.9,2.8-.8,1.2-1.7,2.3-2.5,3.3h4.6c-.8,1-1.6,1.9-2.4,2.9-1,1.2-2,2.3-3,3.5h4.4c-.8,1.1-1.6,2.2-2.5,3.3-1.1,1.4-2.2,2.8-3.3,4.1h4.2c-.8,1.3-1.7,2.7-2.7,4.1-1.1,1.6-2.2,3-3.3,4.3h9.8v7h6.2v-7h10.2Z'/%3E%3Cpath id='Path_4594' class='cls-3' d='M1001.7,81.7c-1.1-1.3-2.2-2.7-3.3-4.3-1-1.4-1.9-2.8-2.7-4.1h4.2c-1.1-1.3-2.2-2.7-3.3-4.1-.8-1.1-1.7-2.2-2.5-3.3h4.4c-1-1.1-2-2.3-3-3.5-.8-1-1.6-1.9-2.4-2.9h4.6c-.8-1-1.7-2.1-2.5-3.3-.7-.9-1.3-1.9-1.9-2.8h3.8c-1.1-1.3-2.1-2.6-3.1-4-.7-1.1-1.4-2.2-2-3.2h3.5c-.9-1.1-1.8-2.4-2.8-3.7-1.6-2.3-3-4.7-4.1-7.2-1.2,2.5-2.6,4.9-4.1,7.2-.9,1.4-1.9,2.6-2.8,3.7h3.5c-.6,1-1.2,2.1-2,3.2-1,1.4-2,2.8-3.1,4h3.8c-.6.9-1.2,1.8-1.9,2.8-.8,1.2-1.7,2.3-2.5,3.3h4.6c-.8,1-1.6,1.9-2.4,2.9-1,1.2-2,2.3-3,3.5h4.4c-.8,1.1-1.6,2.2-2.5,3.3-1.1,1.4-2.2,2.8-3.3,4.1h4.2c-.8,1.3-1.7,2.7-2.7,4.1-1.1,1.6-2.2,3-3.3,4.3h9.8v7h6.2v-7h10.2Z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  }
}

/* /hero sections  */

.page-header {
  background-color: var(--light-gray);
  padding: 30px 0;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

/* alerts  */
body:has(.alert-emergency) header {
  padding-top: 56px;
}
body:has(.alert-emergency) header .navbar.fixed-top {
  margin-top: 56px;
}

.alert {
  border-radius: 0;
  border: none;
  position: fixed;
  z-index: 9999;
  width: 100%;
  --bs-alert-margin-bottom: 0;
}

.alert-danger {
  --bs-alert-color: var(--bs-white);
  --bs-alert-bg: var(--red-bb0202);
  --bs-alert-link-color: var(--bs-white);
}

.alert-danger .btn-close {
  --bs-btn-close-color: #fff;
  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFF' %3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
  --bs-btn-close-opacity: 0.5;
  --bs-btn-close-hover-opacity: 1;
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 1.25rem 1rem;
  color: var(--bs-btn-close-color);
  border: 0;
}

/* /alerts  */

/* lists  */
ul.chevron-bullets {
  list-style: none;
}

ul.chevron-bullets li:before {
  content: "\f101";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-right: 0.5em;
  color: var(--green-006233);
}

/* /lists  */

/* yellow-lines  */
hr.yellow-100 {
  content: "";
  height: 2px;
  width: 100px;
  background-color: var(--yellow-ffc726);
  border-top: none;
  opacity: 1;
  margin: 0;
}
/* /yellow-lines  */

/* fast facts */
.fast-facts {
  padding: 4em 0;
}

.fast-facts .fact {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  text-align: center;
  padding-bottom: 1em;
}

.fast-facts .fact .text {
  font-weight: bold;
  font-size: 1.25em;
}

.fast-facts .fact .number {
  font-size: 4em;
  font-family: var(--font-family-heading);
  font-weight: 600;
  width: 120%;
  padding: 1.25rem;
}

.fast-facts.yellow {
  background: url(../images/Gold_Accolades_Background_UPDATED.svg) no-repeat 30%
    50%;
  background-size: cover;
  color: var(--green-006233);
}

.fast-facts.yellow .fact .number {
  background: url(../images/Accolades_Green.svg) no-repeat 50%;
}

.fast-facts.green {
  background: url(../images/topo-campus-green.png) no-repeat 30% 50%;
  background-color: var(--green-006233);
  color: var(--yellow-ffc726);
}

.fast-facts.green .fact .number {
  background: url(../images/Accolades_Gold.svg) no-repeat 50%;
}

.fast-facts.green .text {
  color: var(--white);
}

/* /fast facts */

/* accordion  */

.accordion {
}

.accordion-item:first-of-type,
.accordion-item:first-of-type > .accordion-header .accordion-button,
.accordion-item:last-of-type,
.accordion-item:last-of-type > .accordion-header .accordion-button {
  border-radius: 0 !important;
}

.accordion-item {
  margin: 0.5em 0;
}

.accordion-item:not(:first-of-type) {
  border: var(--bs-accordion-border-width) solid
    var(--bs-accordion-border-color);
}

.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\2b";
  background-image: none;
  transition: none;
}

@media screen and (min-width: 992px) {
  .sidenav-heading.accordion-button::after {
    display: none;
  }
}

.accordion-button:not(.collapsed)::after {
  content: "\2212";
  background-image: none;
  margin-right: 6px;
}

.accordion.green .accordion-item .accordion-header .accordion-button {
  background-color: var(--green-006233);
  color: var(--white);
}

.accordion.green .accordion-item .accordion-header .accordion-button::after {
  color: var(--yellow-ffc726);
}

.accordion.green
  .accordion-item
  .accordion-header
  .accordion-button:not(.collapsed) {
  background-color: var(--gray-efefef);
  color: var(--green-006233);
}

.accordion.green
  .accordion-item
  .accordion-header
  .accordion-button:not(.collapsed)::after {
  color: var(--green-006233);
}
.accordion .accordion-item .accordion-body a {
  display: block;
}

/* /accordion  */

/* tabbed panels */

.nav-tabs .nav-link {
  border-radius: 0;
}

.nav-tabs .nav-link {
  background-color: var(--green-006233);
  color: var(--white);
  border: 1px solid var(--gray-efefef);
}

.tab-content > .active,
.nav-tabs .nav-link.active {
  background-color: var(--gray-efefef);
  border: 1px solid transparent;
}

.nav-tabs .nav-link:not(.active):hover {
  text-decoration: underline;
}

.tab-pane {
  padding: 2em;
}

/* /tabbed panels */

/* news & events  */

.news-briefs .card {
  border: none;
}
/* 
.news .card .card-img-top-small {
  height: 200px;
  background-position: center top;
  background-size: cover;
} */
.news-briefs .card a {
  text-decoration: none !important;
}

.news-briefs .card .card-body {
  padding: 0;
}
.news-briefs .card a .h5 {
  text-decoration: underline !important;
  display: block;
  margin-bottom: 0.5em;
}
.news-briefs .card a p {
  color: var(--black);
}
/*  */

.news-cards a.card {
  text-decoration: none;
  display: flex;
  flex: 1 1 100%;
}

@media (min-width: 768px) {
  .news-cards a.card {
    flex: 2 1 50%;
  }
}

.news-cards a.card:hover .card-body .card-title,
.news-cards a.card:hover .card-body .card-title-black {
  text-decoration: underline;
}

.news-cards .card .card-body {
  padding: 1em 0;
}

.news-cards .card .card-body .card-title,
.news-cards .card .card-body .card-title-black {
  line-height: 1.25em;
  font-size: 1.5em;
}

.news-events-header {
  margin-bottom: 20px;
}

.news-events-footer {
  display: flex;
}

.event-item {
  margin-bottom: 15px;
}

.event-item-header {
  font-size: 1.25em;
  line-height: 24px;
}

.event-item-header a {
  text-decoration: none;
  color: var(--black);
  margin: 0.5em 0;
  position: relative;
  display: inline-block;
}

.event-item-header a:hover,
.event-item-header a:focus {
  text-decoration: underline;
}

.events .event-item {
  display: flex;
  margin-bottom: 20px;
  position: relative;
  align-items: flex-start;
}

.events .event-item .event-date,
.events .event-item .event-text {
  position: relative;
}

.event-item .event-date {
  vertical-align: middle;
  padding: 0 2em 0 1em;
}

.event-item .event-date .event-month {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-size: 1.5em;
  color: var(--green-006233);
  margin-top: -5px;
  font-family: var(--font-family-heading);
  font-weight: 600;
}

.event-item .event-date .event-day {
  display: block;
  text-align: center;
  font-size: 2.75em;
  line-height: 1em;
  color: var(--green-006233);
  font-family: var(--font-family-heading);
  font-weight: 600;
}
.events-image-right {
  background-size: cover !important;
}
.events-block-video {
  display: flex;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  pointer-events: none;
}
/* sidenav-menu */
.sidenav-menu {
  /* margin: 0 2em; */
}
.sidenav-menu ul {
  list-style-type: none;
  padding: 0;
}
.sidenav-menu ul li {
  padding: 0;
}
.sidenav-menu ul li:not(:last-child) {
  border-bottom: 1px solid var(--green-006233);
}
.sidenav-menu ul li a {
  text-decoration: none;
  color: var(--green-006233);
  padding: 1em 1em 1em 1.5em;
  display: block;
  position: relative;
}
.sidenav-menu ul li a:hover {
  text-decoration: underline;
}
.sidenav-menu ul li a.active {
  background-color: var(--green-006233);
  color: var(--white);
}
.sidenav-menu ul li a.active:hover {
  text-decoration: none;
  cursor: default;
}

@media screen and (min-width: 768px) {
  .sidenav-menu,
  .contact-card {
    margin-left: 1em;
  }
  /* green arrow indicators are only for desktop  */
  .sidenav-menu ul li a.active:before {
    content: "";
    position: absolute;
    left: -40px;
    top: 18px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 30px 20px 30px;
    border-color: transparent transparent var(--green-006233) transparent;
    transform: rotate(270deg);
  }
}

.news-article-byline {
  color: var(--gray-5e5e5e);
  display: flex;
  flex-flow: row nowrap;
}
.news-article-byline .source {
  text-transform: uppercase;
  margin-right: 15px;
}
.news-article-byline .source:after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f111";
  font-size: 0.3em;
  margin-left: 5px;
  margin-top: 10px;
  position: absolute;
}
.news-article-byline .category:not(:last-child):after {
  content: ", ";
}

/* news events - end */

/* fifty-fifty  */

.fifty-fifty .image-side {
  background-size: contain;
  background-repeat: no-repeat;
  background-position-x: center;
}

.fifty-fifty .video-thumbs a {
  text-decoration: none !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

@media (max-width: 768px) {
  .fifty-fifty .image-side.height-540 {
    height: 540px;
  }
  .fifty-fifty .image-side.height-480 {
    height: 480px;
  }
}

.fifty-fifty .video-thumbs a:after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f144";
  font-size: 2.5em;
  color: var(--white);
  position: absolute;
  top: 40%;
}

.fifty-fifty .video-thumbs a:hover img {
  scale: 1.1;
  transition: all 0.3s;
}

.ratio-9x16 {
  --bs-aspect-ratio: 177.77%;
}

/* /fifty-fifty  */

/* cards */

.card,
.card .card-img-top {
  border: none;
  border-radius: 0;
}
.card {
  display: flex;
  align-self: stretch;
}

.card .card-body .card-title {
  color: var(--green-006233);
  font-size: 1.75em;
  font-weight: 600;
}

/* profile cards */

.profile-card {
  box-shadow: var(--card-drop-shadow);
  background-color: var(--gray-efefef) !important;
}

/* .card.profile {
  display: flex;
}
.card.profile .card-body {
  display: flex;
  flex-flow: row nowrap;
  padding: 0;
}
.card.profile img {
  display: flex;
  /* flex: 0 0 auto; */
/* } 
.card.profile .text-content {
  display: flex;
  flex: 4 0 75%;
  flex-flow: column nowrap;
  padding: 1em 2em;
}
*/
.faculty-card-container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
  gap: 20px;
}
.faculty-card-container .card {
  box-shadow: var(--card-drop-shadow);
}
/* /cards */

/* contact card  */

.contact-card {
  padding: 1.5em;
}

.contact-card p {
  padding-bottom: 0;
}

/* /contact card  */

/* sideby videos  */
.col-video {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.col-video iframe {
  width: 100%;
}

.col-video .title {
  font-family: var(--font-family-heading);
  margin-top: 0.5em;
  font-weight: 600;
}
/* /sideby videos  */

/* carousel  */
.carousel .carousel-inner .carousel-item .caption {
  background: rgba(0, 0, 0, 0.5);
  display: block;
  padding-left: 2em;
  height: 60px;
  top: -60px;
  position: relative;
  font-size: 1.5em;
  color: var(--white);
  display: flex;
  align-items: center;
}
.carousel-indicators [data-bs-target] {
  background-color: var(--green-dark-0a4525);
}
@media screen and (max-width: 768px) {
  .carousel .carousel-inner .carousel-item .caption {
    padding-left: 0.5em;
  }
}
/* /carousel  */

/* video modal  */
#videoModal .modal-dialog {
  /* max-width: 800px; */
  margin: 30px auto;
}

#videoModal .modal-body {
  position: relative;
  padding: 0px;
}

#videoModal .btn-close {
  position: absolute;
  background-color: white;
  right: -30px;
  top: 0;
}
/*  */

/* gallery with side-illustration  */

.side-illustration {
  height: 520px;
  background-size: 100%;
  background-position: top;
  background-repeat: no-repeat;
}

@media screen and (min-width: 992px) {
  .side-illustration {
    background-position: center;
    height: 570px;
    margin-left: -20%;
  }
}

.students-with-bike {
  background-image: url("../images/3_students_1_bike.svg");
}

/* news header carousel  */
.news-header-carousel .slick-autoplay-toggle-button {
  color: #fff;
  bottom: 160px;
}

.news-header-carousel .slick-dots {
  bottom: 90px;
}

/*  hero-banner tall justify-content-center align-items-start */
.news-header-carousel .slide {
  color: var(--white);
  height: 400px;
  background-size: cover;
}

.news-header-carousel .slide {
  color: var(--white);
  height: 400px;
}

.news-header-carousel .slide .container {
  display: flex;
  height: 100%;
  align-items: center;
}

.news-header-carousel .slide .container .content {
  margin-bottom: unset;
  display: flex;
  flex-flow: column nowrap;
}

.news-header-carousel .slide .container .content span {
  display: block;
}

.news-header-carousel .slide .container .content h1 {
  font-size: 2em !important;
}

.news-header-carousel .slide .container .content a {
  text-decoration: none;
  font-size: 1.5em;
  display: inline-block;
  color: var(--white);
  font-family: var(--font-family-body);
  font-weight: 600;
}

.news-header-carousel .slide .container .content a span.fas {
  display: inline;
  font-size: 0.75em;
}

.news-header-carousel .slide .container .content a:hover {
  text-decoration: underline;
}

@media (min-width: 992px) {
  .news-header-carousel .slide {
    height: 600px;
  }

  .news-header-carousel .slide .container .content h1 {
    font-size: 4em !important;
  }

  .news-header-carousel .slide .container .content a {
    text-decoration: none;
    font-size: 2.5em;
  }

  .news-header-carousel .slide .container .content {
    /* margin-bottom: -125px; */
  }
}

/* swipe-on-mobile */
.swipe-on-mobile .slick-slide,
.video-thumbs .slick-slide {
  padding: 0 0.75em;
  box-sizing: border-box;
}
/*  */
