/*GLOBAL STYLES*/
/* CSS H&CS */
 :root {
    /*Campus Design System*/
     --uc-dark-blue: #182B49;
     --uc-mid-blue: #00629B;
     --uc-light-blue: #00C6D7;
     --uc-yellow: #FFCD00;
     --uc-pink: #D462AD;
     --uc-light-beige: #F5F0E6;
     --uc-cool-grey: #747678;
     --white: #FFFFFF;
     --black: #000000;
}

h1 {margin-bottom: 30px;}
h2, h3 {color: #006A96;}
h3 {padding-bottom: 0.4em;}
h4 {font-weight: 800;}
h5 {font-weight: 600;}

footer {margin-top: 20px;}

.center {text-align: center;}

.btn-internal-toggle {display: block;}

.intro {font-size: 1.2em; color: #182b49;}

/*HOMEPAGE Specific*/
.center-tidy {margin: 0px auto; width: 70%;}
@media (max-width: 1024px) {
  .center-tidy {width: 100%;}
}
#home-video {margin: 10px 0px 40px 0px;}

/*Bios*/
.photos > img {margin: 0px auto; padding-bottom: 5px;}

/*Jumbo Video*/
/*#jumbo-video {
    background-size: cover !important;
    background-repeat: no-repeat;
    background-position: 50%;
    background-color: #f5f0e6;
    color: inherit;
}*/

#jumbo-video {
  position: relative; /* Establish positioning context for the iframe */
  width: 100%;
  height: 100vh; /* Or a specific height for your container */
  overflow: hidden; /* Hide overflow from the scaled iframe */
}

#jumbo-video iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw; /* Ensure it's wider than the container */
  height: 100vh; /* Ensure it's taller than the container */
  transform: translate(-50%, -50%) scale(1.5); /* Center and scale to cover */
  min-width: 100%;
  min-height: 100%;
  pointer-events: none; /* Prevent interaction with the iframe */
}

/****************************
  Buttons
*****************************/
 .btn {border-radius: 8px;}

/**************************
  Bio Profiles
 **************************/
/*.bio-intro-pic {border: 1px solid red;}
.bio-intro-pic > img {margin: 0px auto; max-width: 220px; }

#meet-team-bio + .jumbotron img {border-radius: 0px;}*/

#meet-team-intro {
  margin-bottom: 3em;
  overflow: hidden; /* clearfix: forces container to wrap floated children */
}

#meet-team-intro #meet-team-director {
  float: right;
  padding: 2em 4em;
  display: block;
  max-width: 720px;
  width: 40%;
  height: auto;
  box-sizing: border-box; /* padding won't push past max-width */
}

#meet-team-director img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto; /* centers image within the container */
}

@media (max-width: 720px) {
  #meet-team-intro #meet-team-director {
    float: none;
    padding: 2em 2em;
    width: 100%;
  }
}
 
/* 3-up on large, 2-up on medium/small, 1-up on mobile */
.main-section-content .profile {
    display: flex;
    flex-direction: column;
    background: #ffffff;
    /*border: 1px solid #ddd; border-radius: 8px;*/
    overflow: hidden;
    /*box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    padding: 0 0 1rem 0; 
    transition: box-shadow 0.2s ease;*/
    padding: 1em;
    align-items: center;
    text-align: center;
}

/*.main-section-content .profile:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.15);
}*/

/* Force 3-column on large screens (overrides col-lg-3 = 4-col) */
@media (min-width: 992px) {
    .main-section-content .profile {
        width: calc(33.333% - 1rem) !important;
        flex: 0 0 calc(33.333% - 1rem);
    }
}

/* First Name */
.main-section-content .profile p:first-of-type {
    font-family: 'Teko-SemiBold' !important;
    font-spacing: 0.2em;
    font-size: 1.6em; }
 
/*  Modal Overlay */
#bio-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

#bio-modal[hidden] { display: none; }

.bio-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
}

.bio-modal-box {
  position: relative;
  background: #ffffff;
  border-radius: 8px;
  padding: 2.6em;
  max-width: 720px;
  width: 90%;
  z-index: 1;
  box-shadow: 0 8px 32px rgba(0,0,0,0.2);
}

.bio-modal-name {
    font-size: 1.6em;
    margin: 0 0 0.5em;
    color: var(--uc-dark-blue);
}

.bio-modal-body {
  font-size: 1.2em;
  line-height: 1.6;
  color: var(--uc-dark-blue);
}

/*photo*/
.bio-modal-photo { 
  width: 100px;
  height: 100px;
  object-fit: cover;
  object-position: top center;
  border-radius: 50%;
  flex-shrink: 0;
  /*border: 2px solid #006A96;*/
}

.bio-modal-close {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  background: none;
  border: none;
  font-size: 1.25rem;
  cursor: pointer;
  color: var(--uc-dark-blue);
  padding: 0.5em 1em;
  border-radius: 8px;
}

.bio-modal-close:hover, .bio-modal-close:focus-visible {
  outline: 2px solid var(--uc-dark-blue);
  outline-offset: 2px;
  background: var(--uc-dark-blue); color: var(--white);
}

/* Prevent background scroll when modal is open */
body.bio-modal-open {
  overflow: hidden;
}

/*  Meet Staff Button */
.bio-trigger-btn {background: none; border: none; border-radius: 0px; font-size: 1.2em; color: var(--uc-dark-blue);}
.bio-trigger-btn:hover, .bio-trigger-btn:focus-visible {background: var(--uc-yellow); color: var(--uc-dark-blue);}

/*
    Prefooter
 */
.prefooter {
    background-color: var(--uc-light-beige);
}


/*
.bio-trigger-btn {
  background: #006A96;
  color: #fff;
  border: none;
  border-radius: 4px;
  padding: 0.4rem 0.9rem;
  font-size: 0.85rem;
  cursor: pointer;
  margin: 0.5rem 0 0;
}


.bio-trigger-btn:focus-visible {
  outline: 2px solid #182B49;
  outline-offset: 2px;
}*/