/*---------------------------------------
  IMPORTS
---------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&display=swap');

/*---------------------------------------
  BASE
---------------------------------------*/
body {
    margin: 0;
    background-color: #112152 !important;
    font-family: 'Montserrat', sans-serif!important;
}
@font-face {
  font-family: 'Michigan Signature';
  src: url('/fonts/MichiganSignature.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Apotek';
  src: url('/fonts/Apotek-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}
/*---------------------------------------
  HERO (static fallback)
---------------------------------------*/
.hero-section {
  position: relative;
  /* background-image: url('/assets/images/hero.jpg'); */
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  padding: 8rem 0;
  color: #fff;
  min-height: 550px;
}
.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(62, 81, 135, 0.85);
}
.hero-content {
  position: relative;
  z-index: 1;
  border: 8px solid #fff;
  border-radius: 20px;
  padding: 2em;
}

.custom-header-text {
  font-family: 'Michigan Signature', cursive;
  color: #c10538 !important;
  text-shadow:
    -2px -2px 0 #fff,
     2px -2px 0 #fff,
    -2px  2px 0 #fff,
     2px  2px 0 #fff,
    -2px  0px 0 #fff,
     2px  0px 0 #fff,
     0px -2px 0 #fff,
     0px  2px 0 #fff;
  text-transform: capitalize!important;
}



.hero-content-2 {
  position: relative;
  z-index: 1;
  border-radius: 20px;
  padding: 2em;
}
.signature-text {
  font-family: 'Michigan Signature', cursive;
}

@media (max-width: 767.98px) {
  h1.display-2 {
    width: 100%;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  h1.display-2 span {
    white-space: normal !important;
  }
}


p {
    line-height: 2em;
}


/*---------------------------------------
  ABOUT SECTION
---------------------------------------*/
.about-section {
  padding: 2rem 0;
  background-color: white!important;
}

/*---------------------------------------
  TESTIMONIALS SECTION
---------------------------------------*/

.testimonial-image-wrapper {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.testimonial-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0; /* remove circle */
}



/*---------------------------------------
  Page Styles - Grunge
---------------------------------------*/

.introduction {
  background: transparent url('/assets/images/grunge.png') repeat-x center top!important;
  background-color: transparent;
  padding: 5rem 1.5rem 1rem;
  margin-top: -30px;
  z-index: 99;
}

.introduction-sub {
  background: transparent url('/assets/images/grunge.png') repeat-x center top!important;
  background-color: transparent;
  padding: 5rem 1.5rem 1rem;
  margin-top: -65px;
}

.custom-bg {
  position: relative;
  display: block;
}


/*---------------------------------------
  Page BG
---------------------------------------*/
.page-bg {
  background-color: rgb(255, 255, 255);
  padding: 2rem 0;
}

.bg-custom {
  background: linear-gradient(rgba(255, 255, 255, 0.9), rgba(249, 246, 239, 0.4)), url(/assets/images/uploads/secondary-bg.png) repeat;
  padding: 5rem 1rem;
}

.bg-cornstalk {
  background:url(/assets/images/uploads/cornstalks-background.jpg) repeat;
  padding: 5rem 1rem;
}

/*---------------------------------------
  Board Directory 
---------------------------------------*/
.board-directory h2 {
  font-family: 'Michigan Signature', cursive!important;
  text-transform:capitalize;
  color:#c10538!important;
}

.staff-directory h2 {
  font-family: 'Michigan Signature', cursive!important;
  text-transform:capitalize;
  color:#c10538!important;
}

/*---------------------------------------
  FOOTER
---------------------------------------*/

.footer {
  /* background-color: #111e47; */
  color: #112152;
  padding: 3rem 0;
  max-width:1100px;

}
/* .footer-custom {
  background-image: linear-gradient(135deg, rgba(17, 33, 82) 15%, rgba(12, 45, 148, 0.5) 50%, rgba(12, 45, 148, 0.6) 100%), url(/assets/images/hero2.webp);
  background-size: contain;
  background-position: center;
  background-repeat: repeat;
} */

.footer a {
  color: #f5f2ee;
  text-decoration: none;
}
.footer-last {
  background-color: #111;
  padding: 15px;
}

/*---------------------------------------
  HEADINGS
---------------------------------------*/
h1, h2, h3 {
  font-family: 'Apotek', sans-serif;
  font-weight:bolder;
  color:#c10538!important;
  text-transform:uppercase;
  letter-spacing: 3px;
}

h4, h5, h6 {
  font-family: 'Apotek', sans-serif;
  font-weight:bolder;
  color:#000000!important;
  text-transform:uppercase;
  letter-spacing: 3px;
}


.text-secondary {
    color: #112152 !important;
}

/*---------------------------------------
  NAVBAR
---------------------------------------*/
.navbar span {
  display: inline-block;
  line-height: 1;
  max-width: 380px;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 16px 12px;
  color: #fff;
  font-size: 23px;
  font-weight: 600;
}
.navbar a {
  text-decoration: none !important;
}
.navbar img {
  height: 100px;
  width: auto;
  vertical-align: top;
}
.navbar {
  max-width: 1200px;
  margin: 2rem auto;
  border-radius: 10px;
  padding: 0.5rem 1rem;
  background-color: #112152!important;
  /* background-image:
    linear-gradient(135deg,
      rgba(17, 33, 82) 15%,
      rgba(12, 45, 148, 0.5) 50%,
      rgba(12, 45, 148, 0.6) 100%),
    url('/assets/images/hero2.webp'); */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  /* border-bottom: 2px solid #112d7d;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25); */
  z-index:999999;
}
.navbar-nav .nav-link {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-weight: 600;
  color: #fff !important;
  word-spacing:15px;
}
.navbar-nav .nav-link.active {
  color: #bea878 !important;
}

/* Dark background for dropdown */
.navbar-dark .navbar-nav .nav-item.dropdown .dropdown-menu {
  background-color: #bea878; /* Dark background color */
  padding: 10px 15px; /* More padding around dropdown items */
}

/* White font color for dropdown items */
.navbar-dark .navbar-nav .nav-item.dropdown .dropdown-item {
  color: white; /* White text color */
}

/* Change the dropdown item background to primary on hover */
.navbar-dark .navbar-nav .nav-item.dropdown .dropdown-item:hover {
  background-color: #c10538; /* Bootstrap primary color */
  color: white; /* White text on hover */
}

/* Add some padding around dropdown items */
.navbar-dark .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-item {
  padding: 10px 15px; /* More spacing inside the dropdown items */
}

/* Optionally, active dropdown item can have a different style */
.navbar-dark .navbar-nav .nav-item.dropdown .dropdown-item.active {
  background-color: #c10538; /* Primary color for active item */
  color: white; /* White text */
}




/*---------------------------------------
  MOBILE TWEAKS
---------------------------------------*/
@media (max-width: 767.98px) {
  .navbar-collapse {
    margin-top: 15px;
    background-color: #000;
    padding: 25px;
  }
  .mobile-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
  .mobile-header a {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .mobile-header a img,
  .mobile-header a .QTKDff {
    margin-bottom: 0.5rem;
  }
  .navbar-toggler {
    margin-bottom: 1rem;
    align-self: center;
  }
  .navbar-collapse .navbar-nav {
    justify-content: flex-start;
    margin-left: 0 !important;
  }
}

/*---------------------------------------
  CREDITS & LOGOS
---------------------------------------*/
#nebraska-web-designers {
  margin: 0 auto !important;
  display: block;
  padding-bottom: 20px;
}
.idealhtml img {
  margin-top: 25px !important;
  display: block;
  width: 150px;
  margin: 0 auto;
}

/*---------------------------------------
  BUTTONS
---------------------------------------*/
.btn-contact {
  background-color: rgba(67, 29, 42, 1);
  border: 1px solid rgba(225, 223, 219, 1);
  color: rgba(225, 223, 219, 1);
  font-family: 'Open Sans', sans-serif;
  font-size: 12pt;
  line-height: 22px;
  padding: 0.375rem 0.75rem;
  border-radius: 0.25rem;
  text-decoration: none;
  display: inline-block;
}
.btn-contact:hover,
.btn-contact:focus {
  background-color: rgba(55, 24, 34, 1);
  border-color: rgba(200, 198, 194, 1);
  color: rgba(225, 223, 219, 1);
}
.btn-facebook {
  background-color: #ffffff !important;
  color: #bea878 !important;
  border: 1px solid #bea878;
}
.btn-facebook:hover {
  background-color: #bea878;
  color: #ffffff;
}

/*---------------------------------------
  CAROUSEL
---------------------------------------*/
.carousel-item img {
  height: 555px;
  object-fit: cover;
  object-position: center center;
  width: 100%;
}


/*---------------------------------------
  VIDEO BACKGROUND (object-fit cover)
---------------------------------------*/
/* .video-background-holder {
  position: relative;
  width: 100%;
  height: calc(100vh - 72px);
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.video-background-holder iframe {
  position: absolute;
  inset: 0;                
  width: 100%;
  height: 100%;
  border: none;
  pointer-events: none;
  object-fit: cover;       
  z-index: 0;
}

.video-background-overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0,0,0,0.4);
  z-index: 1;
}

.video-background-content {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
} */

/* ---
IMAGE BG USING THE OLD VIDEO CSS
--- */

.video-background-holder {
  position: relative;
  width: 100%;
  height: calc(100vh - 72px); /* desktop */
  max-height: 650px!important;
  overflow: hidden;
  margin: 0;
  padding: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* On phones, reduce hero height to prevent crowding */
@media (max-width: 768px) {
  .video-background-holder {
    height: auto;
    padding: 4rem 0;
  }

  .video-background-content {
    position: static;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .video-background-content {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  }
}





/* buttons */

/* Base button style */
.newsletter-group .newsletter-btn {
  background-color: #c10538; /* red background */
  color: #ffffff;            /* white text */
  border: 1px solid #ffffff; /* white border */
  border-radius: 0.25rem;     /* optional rounding to match Bootstrap */
  transition: background-color 0.2s ease;
}

.newsletter-group .newsletter-btn:hover,
.newsletter-group .newsletter-btn:focus {
  background-color: #bea878; /* gold hover */
  color: #ffffff;            /* keep text white */
}

.newsletter-txt { z-index: 1;}


/* -----------------
Homepage Featured Section - Blogs 
-------------------*/

#featureSlider {
  display: flex;
  transition: transform 1s ease;
}



/* Desktop (3 per row) */
.feature-card {
  flex: 0 0 33.3333%;
  max-width: 33.3333%;
  padding: 0 0.5rem;
}

/* Medium screens (2 per row) */
@media (max-width: 991.98px) {
  .feature-card {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

/* Small screens (1 per row) */
@media (max-width: 767.98px) {
  .feature-card {
    flex: 0 0 100%;
    max-width: 100%;
  }
}



#paginationDots span {
  height: 10px;
  width: 10px;
  background-color: #aaa;
  margin: 0 5px;
  border-radius: 50%;
  display: inline-block;
  opacity: 0.5;
  transition: opacity 0.3s ease;
  cursor: pointer;
}
#paginationDots span.active {
  background-color: #fff;
  opacity: 1;
}


#prevSlide,
#nextSlide {
  top: 50%;
  transform: translateY(-50%);
}

/* Eesponsive wrap for mobile */

@media (max-width: 768px) {
  .feature-card {
    width: 100% !important;
  }
}

  #paginationDots span {
    display: inline-block;
    width: 10px;
    height: 10px;
    background: #aaa;
    border-radius: 50%;
    margin: 0 5px;
    cursor: pointer;
    transition: background 0.3s ease;
  }

  #paginationDots span.active {
    background: #fff;
  }


/*  Ideal HTML
========================================================================== */

#nebraska-web-designers {margin:0px auto 0px!important;display: block;}
.idealhtml img {margin-top:15px;}
#nebraska-web-designers{padding: 25px;background-color: #000000;}
#nebraska-web-designers .idealhtml{display: block;/* width:150px; *//*! margin-top: 0px; */margin: 0px auto;text-align: center;}

#nebraska-web-designers .idealhtml img {margin: 0px auto!important;display: block!important;}



