/***************** ptBannerLinks *********************/

/* ----- PAGE SCOPE ----- */
#lambertus-links,
#lambertus-links * {
  box-sizing: border-box;
}

/* ----- Banner ----- */
#lambertus-links .billboard-container {
  width: 100%;
  margin: 0 auto;
}

#lambertus-links .banner-img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* ----- Button Section ----- */
#lambertus-links .button-section {
  background: #000;
  width: 100%;
  padding: 10px 5%;
}

#lambertus-links #banner-links-container {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: clamp(10px, 2vw, 20px);
  padding: 20px 0;
}

#lambertus-links .button-section .button {
  flex: 0 0 auto;
  white-space: nowrap;
  color: #000;
  background: #cfb991;
  font-family: "United Sans", Impact, "Arial Black", sans-serif;
  text-transform: uppercase;
  padding: 10px 15px;
  border: 2px solid #8e6f3e;
  border-radius: 4px;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 1px 2px rgba(142, 111, 62, .3);
  transition: all .3s ease;
}

/* ----- Ultra-wide monitors ----- */
@media (min-width: 2560px) {
  #lambertus-links #banner-links-container {
    justify-content: center;
  }
}

/* ----- Tablets & phones ----- */
@media (max-width: 810px) {
  #lambertus-links #banner-links-container {
    padding: 10px 0;
  }

  #lambertus-links .button-section .button {
    width: 100%;
    max-width: none;
  }
}

/* -------- Home1-specific styles -------- */
#home1 .side-by-side-container {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  gap: 40px;
  color: #fff;
}

#home1 .image-side {
  flex: 1;
}

#home1 .image-side img {
  width: 100%;
  height: 100%;
  display: block;
}

#home1 .text-side {
  flex: 2;
}

#home1 .text-side h2 {
  font-size: 2em;
  margin-bottom: 15px;
  color: #ffffff;
}

#home1 .text-side p {
  line-height: 1.6;
}

/* Responsive adjustments for Home1 */
@media (max-width: 768px) {
  #home1 .side-by-side-container {
    flex-direction: column;
    text-align: center;
  }

  #home1 .image-side, 
  #home1 .text-side {
    flex: none;
    width: 100%;
  }

  #home1 .text-side {
    margin-top: 20px;
  }
}

/* ---------- Home2 (Labs & Equipment map) ---------- */
#home2 {
  background-color: #000;
  font-family: Arial, sans-serif;
  color: #fff;
  overflow-x: hidden;
}

/* Intro text */
#home2 .Instruct { text-align: center; padding: 10px; }
#home2 .Instruct h2 { color: #fff; }

/* Map + background (desktop/tablet) */
#home2 .map-wrapper {
  position: relative;
  width: 100vw;
  min-height: 100vh;
  overflow: hidden;
}
#home2 .background-image {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: fill;
  z-index: 0; pointer-events: none;
}

/* Clickable entries */
#home2 .lab-entry { position: absolute; cursor: pointer; z-index: 2; }

/* Skewed image card */
#home2 .skew-wrapper {
  position: relative;
  width: 10vw;
  aspect-ratio: 3 / 2;
  max-width: 150px;
  transform: skew(-20deg);
  overflow: hidden;
  border: 3px solid #000;
  box-shadow: 0 0 10px rgba(0,0,0,0.3);
  transition: transform 0.3s, border-color 0.3s;
  background-color: #000;
}
#home2 .skew-wrapper img.clickable-img {
  width: 100%; height: 100%;
  transform: skew(20deg);
  object-fit: cover;
}
#home2 .skew-wrapper:hover {
  transform: skew(-20deg) scale(1.1);
  border-color: #EBD99F;
}

/* Labels */
#home2 .label {
  width: 8vw; max-width: 150px; min-width: 70px;
  margin-top: 8px;
  pointer-events: auto; cursor: pointer; z-index: 2; position: absolute;
}
#home2 .label1, #home2 .label2, #home2 .label3,
#home2 .label4, #home2 .label5, #home2 .label6 { top: 70%; left: 35%; }

/* Card positions (example) */
#home2 .img1 { top: 15%; left: 50%; }
#home2 .img2 { top: 65%; left: 58%; }
#home2 .img3 { top: 70%; left: 16%; }
#home2 .img4 { top: 21%; left: 8%; }
#home2 .img5 { top: 15%; left: 83%; }
#home2 .img6 { top: 66%; left: 83%; }

/* List (mobile) */
#home2 .lab-list { display: none; } /* hidden by default */

#home2 .lab-list {
  max-width: 720px;
  margin: 0 auto;
  padding: 16px;
}
#home2 .lab-list-item {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 12px;
  align-items: center;
  width: 100%;
  margin: 10px 0;
  padding: 12px 16px;
  border: 1px solid #e0e0e0;
  border-radius: 12px;
  background: #fff;
  color: #000;
  font: 600 16px/1.4 system-ui, sans-serif;
  text-align: left;
  cursor: pointer;
}
#home2 .lab-list-item img {
  width: 64px; height: 64px; object-fit: cover; border-radius: 8px;
}

/* Popups (class-controlled visibility) */
#home2 .popup {
  display: none;                      /* default hidden */
  position: absolute;                 /* desktop: positioned over the map */
  width: 90%;
  max-width: 320px;
  background: #fff;
  color: #000;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  z-index: 1000;
  overflow-y: auto;
  max-height: 80vh;
}
#home2 .popup.is-open { display: block; }
#home2 .popup-content { text-align: center; }
#home2 .popup-content img {
  width: 100%; height: 180px; object-fit: cover; border-radius: 5px; margin-top: 10px;
}
#home2 .close-btn {
  position: absolute; top: 10px; right: 15px; font-size: 20px; cursor: pointer;
}

/* Desktop popup positions relative to the map */
#home2 .popup1 { top: 15%; left: 30%; }  /* Digital Twin */
#home2 .popup2 { top: 20%; left: 40%; }  /* Lights Out */
#home2 .popup3 { top: 20%; left: 20%; }  /* AI Robotics */
#home2 .popup4 { top: 20%; left: 15%; }  /* Bruker AFM */
#home2 .popup5 { top: 20%; left: 73%; }  /* Zeiss Scanbox */
#home2 .popup6 { top: 10%; left: 70%; }  /* Kardex Lift */

/* Mobile: show list, hide map; popup inline under list item (no bottom sheet) */
@media (max-width: 768px) {
  #home2 .map-wrapper { display: none !important; }
  #home2 .lab-list { display: block; }

  /* hide all popups on mobile by default */
  #home2 .popup { display: none !important; }

  /* when opened inline (JS adds .popup--inline) */
  #home2 .popup.is-open.popup--inline {
    display: block !important;
    position: static !important;     /* inline below the list item */
    width: auto; max-width: none;
    margin: 8px 16px 16px;           /* align with list padding */
    padding: 16px;
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    max-height: none; overflow: visible;
  }

  /* close button inside inline card */
  #home2 .popup.is-open.popup--inline .close-btn {
    position: static; float: right; margin-left: 8px; font-size: 24px; line-height: 1;
  }
}



/***************** Dark Boxes *********************/

.linksContainer {
  background-color: #333;
}

.linksContainer .links {
  padding: 15px 0;
}

.linksContainer .links .columnContainer {
  margin: 15px 0;
}

.linksContainer .links .columnContainer .column {
  width: 100%;
  padding: 45px 10%;
  background-color: #292929;
  color: #fff;
  text-align: center;
}

.linksContainer .links .columnContainer .column .icon {
  margin-bottom: 25px;
  color: #676767;
  font-size: 60px;
}

.linksContainer .links .columnContainer .column .icon img {
  height: 60px;
}

.linksContainer .links .columnContainer .column h2,
.linksContainer .links .columnContainer .column h3 {
  margin: 0;
  padding: 5px 0 7px;
  color: inherit;
  font-family: "acumin-pro-condensed", "Franklin Gothic", sans-serif;
  font-size: 1.75em;
}

.linksContainer .links .columnContainer .column .divider {
  width: 25%;
  height: 3px;
  margin: 0 auto 20px;
  background-color: #C4BFC0;
}

.linksContainer .links .columnContainer .column ul {
  padding: 0;
  list-style-type: none;
  text-align: center;
}

.linksContainer table {
text-align: left;
}

.linksContainer .links .columnContainer .column ul li {
  line-height: 1.5em;
  list-style-type: none;
  padding: 10px 0;
}

.linksContainer .links .columnContainer .column ul li a:link {
  color: #FFFFFF;
  font-weight: 400;
  text-decoration: none;
}

.linksContainer .links .columnContainer .column ul li a:visited
{
  color: #FFFFFF;
  font-weight: 400;
  text-decoration: none;
}

.linksContainer .links .columnContainer .column ul li a:hover,
.linksContainer .links .columnContainer .column ul li a:active {
  color: #fff;
  font-weight: 400;
  text-decoration: underline;
}

.linksContainer .credits, .linksContainer .credits p {
color: #fff;
font-size: 1em !important;
}


/***** Accordion Dark Box *****/    

.linksContainer .table .table {
background-color: transparent;
}

.linksContainer .accordion-block h4 {
color: white !important;
}
/***** END Accordion Dark Box *****/  

/***** Scroll Control Dark Box *****/  

.heightControl {
min-height: 350px; 
max-height: 350px;
}

.heightControl .column{
height: 350px;
overflow:auto;
}

/* width */
div.heightControl ::-webkit-scrollbar {
width: 10px;
}

/* Track */
div.heightControl ::-webkit-scrollbar-track {
background: #292929; 
}

/* Handle */
div.heightControl ::-webkit-scrollbar-thumb {
background: #464646; 
}

/* Handle on hover */
div.heightControl ::-webkit-scrollbar-thumb:hover {
background: #555; 
}


/***** END Scroll Control Dark Box *****/  



/***************** Dark Boxes *********************/





/* proof points edit 
.proof-points-container {
padding: 0px 0px 0px 0px;
}*/


.parallax {
/* The image used */
background-image: url("https://engineering.purdue.edu/IE/Prospective-Students-Template/images/IMG_9488.JPG");

/* Set a specific height */
min-height: 200px; 

/* Create the parallax scrolling effect */
background-attachment: fixed;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}

p {
font-size: 1.25em;
}


/* COVID-19 CSS */
.homepage #covid { background: rgb(207, 185, 145); text-align: center; padding: 10px 10px 0; width: 100%;}
.homepage #covid p { margin-top: 0; font-family: acumin-pro-condensed, "Franklin Gothic", sans-serif; font-weight: 500; font-style: italic; text-transform: uppercase; text-decoration: none; color: #000; font-size: 24px;}
.homepage #covid p a { font-family: acumin-pro-condensed, "Franklin Gothic", sans-serif; font-weight: 500; font-style: italic; text-transform: uppercase; text-decoration: none; color: #000; cursor: pointer; }
.homepage #covid p a:hover { text-decoration: underline; }

.static .carousel-item { display: block; }

.breadcrumb.row { margin-bottom :0; }

.cc-focus-bar .col-6 {
margin-bottom: 15px;
}


/* Styles for Blocks */
.story-box { margin-top: 30px; }
.story-box a { color: #000; }
.story-box a:hover { text-decoration: none !important; }
.story { background-color: #C4BFC0; display: block; height: 100%; padding: 0; text-decoration: none; }
.story:hover { background-color: #EBD99F; }
.story .title { font-size: 1.1rem; margin: 15px; }
.story .intro { font-size: 1.0rem; margin-left: 10%; margin-right: 10%; }
.story img { background-size: cover; background-position-y: 20%; background-position-x: 50%; height: auto; left: 0; position: absolute; top: 0; width: 100%; }
.story iframe { height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

.feature-box { background-position: right; background-size: cover; border-bottom: 2px solid #000; border-top: 2px solid #000; margin-top: 30px; }
.feature-box:after { background-size: cover !important; background-position: 0% 50% !important; }

.ONE-SIZE {
height                  : 0;
overflow                : hidden;
padding-bottom          : 56.25%;
position                : relative;
}

@media (min-width: 440px) and (max-width: 575.98px) {
.feature-box:after { background-size: cover !important; background-position: 0% 70% !important; }
}

@media (min-width: 576px) {
.feature-box:after { background-size: cover !important; background-position: 0% 50% !important; }
}

@media (min-width: 768px) {
.feature-box:after { background-size: cover !important; background-position: 0% 45% !important; }
}

@media (min-width: 992px) {
.feature-box:after { background-position: 0% 30% !important; }
}

@media (min-width: 1200px) {
.feature-box:after { background-position: 0% 25% !important; }
}

/* End Styles for Blocks */



/* #billboard-links-container .button { background: rgba(0, 0, 0, 0.65); } */

.CALLOUT-intro {
color                   : #000;
font-style              : italic;
padding-top             : 0;
text-align              : left;
}
.CALLOUT-title {
font-weight             : 600;
margin                  : 1.0rem;
}
/* Updates on 08-31-2018 */
.story-content {
margin-bottom       : 60px;
}
.story-content p, .story-content li {
font-size           : 1.25em;
}
.cc-canopy {
position              : absolute;
}
.cc-xl-push {
margin-top            : 30px;
}
.cc-xl-padding {
margin-top            : 30px;
margin-bottom         : 30px;
}
.homepage #news-container .story a {
display: block;
height: 100%;
color: #333;
background-color: #c4bfc0;
text-decoration: none;
}

.cc-container {
padding-bottom     : 30px;
}
.cc-event-details {
border-left        : 2px solid #C28E0E;
}
.cc-month {
color              : #FFF;
background-color   : #C28E0E;
text-transform     : uppercase;
text-align         : center;
letter-spacing     : 1px;
padding            : 3px 2px 2px 2px;
}
.cc-day {
font-size          : 2.5rem;
font-weight        : 600;
text-align         : center;
letter-spacing     : 1px;
}
.cc-focus-bar {
background         : #000;
padding-top        : 30px;
padding-bottom     : 30px;
text-align         : center;
}
.cc-buffer {
background         : #000;
margin-top         : -9rem;
margin-bottom      : 9rem;
padding-top        : 10px;
padding-bottom     : 10px;
width              : 100%;
}
.cc-boost {
text-align         : center;
padding-bottom     : 30px;
padding-top        : 30px;
}
.cc-boost img {
max-height         : 200px;
}
.cc-breadcrumbs {
margin-top         : -9rem;
}
.cc-bouncer {
margin-top         : 9rem;
}
@media (max-width: 767.98px) {
.cc-bouncer, .cc-breadcrumbs {
margin-top         : 0;
}
.cc-buffer {
margin-top         : 0;
margin-bottom      : 0;
}
}
/* ******************************** */

/* Banner updates on 08-09-2018 */
.pinnacle-container {
position           : absolute !important;
background         : rgba(0, 0, 0, 0.50);
/* border             : 2px solid rgba(0, 0, 0, 0.65); */
margin             : 1%;
padding            : 12px;
z-index            : 1;
-webkit-transition : background 2s, border 0.5s; /* Safari */
transition         : background 2s, border 0.5s;
max-width          : 300px;
}
.pinnacle-container:hover {
background         : rgba(0, 0, 0, 0.80);
/* border             : 2px solid rgba(218, 165, 32, 0.65); */
}



/* Banner updates on 07-06-2018 */
#cc-pnp {
background-color : rgba(0, 0, 0, 0.50);
/* border           : 2px solid rgba(0, 0, 0, 0.65); */
color            : rgba(255, 255, 255, 1.0);
display          : none;
padding          : 2px 12px;
}
#cc-pnp:hover {
background-color : rgba(0, 0, 0, 1.0);
cursor           : pointer;
}
.cc-pnp-button {
height           : 30px;
width            : 100%;
position         : absolute;
right            : 4px;
text-align       : right;
/* text-shadow      : 0px 1px 1px rgba(0, 0, 0, 1); */
text-decoration  : none;
top              : 4px;
}


/* Banner updates on 06-01-2018 */
.billboard-container-text {
bottom          : 0px;
margin-bottom   : 100px;
position        : absolute;
font-family     : "acumin-pro-condensed", Impact, "Arial Black", "sans serif";
text-align      : left;
text-decoration : none;
width           : 100%;
line-height     : 1.2;
}
.billboard-container .title {
color           : #000000;
font-size       : 100px !important;
padding         : 0 1em 1em 1em;
text-shadow     : none !important;
font-family     : "acumin-pro-condensed", Impact, "Arial Black", "sans serif";
font-weight     : bold;
}
.billboard-container .subtitle-text {
color           : #000000;
font-size       : 60px !important;
padding         : 0 1em 0 1em;
text-align      : left;
text-shadow     : none !important;
font-family     : "acumin-pro-condensed", Impact, "Arial Black", "sans serif";
font-weight     : bold;
}
.billboard-container .intro_head {
color           : #000000;
font-size       : 1.3rem !important;
margin-bottom   : 0px;
}




#billboard-links-container .button.giving {
background-color: #c28e0e;
border-color: #fff;
}

#billboard-links-container .button.giving:hover {
color: #000;
background-color: #fff;
border-color: #c28e0e;
}


#dean-container:after {
background-image: url('homepage/background-images/dean-arms-atrium-bg.jpg');
}

/* Added by E. Gray - Homepage Dean Block 4/19/18 */
.deanmore {
float:right;
color: #939393 !important;
text-decoration:underline;
}


/* Media queries for a given screen size or LARGER */

/* Extra small devices (portrait phones, less than 576px)
No media query since this is the default in Bootstrap */


/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

#billboard-links-container { background: none !important; }

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

#billboard-links-container { background: none !important; }

}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {

#billboard-links-container { background: none !important; }

}




/* Media queries for a given screen size or SMALLER */

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
#billboard-container .billboard-container-text {
margin-bottom : 0;
}
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
#billboard-container .billboard-container-text {
margin-bottom : 0;
}
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Extra large devices (large desktops)
No media query since the extra-large breakpoint has no upper bound on its width */





/* Banner updates on 06-08-2018 */
.billboard-container .title.cc-xl-title {
font-size      : 3em !important;
/*  text-transform : uppercase;*/
}
.billboard-container .intro_head.cc-xl-intro-head {
background     : rgba(0, 0, 0, 0.8);
font-size      : 2.0em !important;
text-transform : uppercase;
color          : #DAA520 !important;
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

.billboard-container .title.cc-xl-title           { font-size : 2.0em !important; }
.billboard-container .intro_head.cc-xl-intro-head { font-size : 1.4em !important; }
.pinnacle-container { width : 127px; }

}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.billboard-container .title.cc-xl-title           { font-size : 1.6em !important; }
.billboard-container .intro_head.cc-xl-intro-head { font-size : 1.2em !important; }
.pinnacle-container { width: 127px; }

}

/* Smaller devices */
@media (max-width: 575.98px) {
.pinnacle-container { background: rgb(255, 255, 255); border: 0; margin: auto; position: relative !important; height: auto; width: 100%; }
.pinnacle-container img { content:url("https://engineering.purdue.edu/wraps/blocks/images/150-years-of-giant-leaps-horizontal.png"); }
.pinnacle-container:hover { background: rgba(0, 0, 0, 0.10); border: 0; }
}

/* ptVideo_Wide */
/* Center the video and adjust its size */
.video-container {
    background: #EEE;
    display: flex;
    justify-content: center; /* Centers horizontally */
    align-items: center; /* Centers vertically */
    flex-direction: column;
    padding: 30px 0;
    text-align: center; /* Ensures text elements are centered */
}
.video-container .row {
    justify-content: center; /* Centers Bootstrap row content */
}
/* Make the iframe container larger */
.video-iframe-container {
    width: 90%; /* Adjust width as needed */
    max-width: 960px; /* Prevent it from getting too large */
    height: 0;
    padding-bottom: 56.25%; /* Maintain 16:9 aspect ratio */
    position: relative;
    margin-bottom: 30px;
}

/* Ensure the iframe fits the container */
.video-container .video-iframe-container iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}


/* Proof Points */
/*.row.rtb-cards {
padding: 3rem 0;
}*/

.row.rtb-cards .columns {
display: flex;
/*margin: -0.75rem;*/
}


.row.rtb-cards .columns:not(:last-child) {
border-right: 1px solid #cfb991;
}

@media (max-width: 992px) {
.rtb-cards .columns {
border-right: none !important;
padding-bottom: 30px;
}
.rtb-cards .columns .pu-proofpoint .column {
border-bottom: 1px solid #cfb911;
}  
}

.pu-proofpoint {
width: 100%;
display: flex;
flex-direction: row;
justify-content: center;
background: none;
color: black;
min-height: 250px
}

.pu-proofpoint .container {
padding: 3.0875rem 1rem 1.25rem;
display: flex;
flex-direction: column;
flex: 0 1 auto;
align-items: center;
max-width: 318px;
width: 100%;
margin-left: 0;
margin-right: 0;
position: relative;
}

.pu-proofpoint__lead {
font-size: 1.5rem;
line-height: 1.3;
font-weight: 700;
margin-bottom: 0.3125rem !important;
font-family: acumin-pro, "Franklin Gothic", sans-serif;
text-align: center;
position: absolute;
top: 14px;
left: 0;
width: 100%;
}

.pu-proofpoint__highlighted {
font-size: 5rem;
line-height: 0.7;
margin-bottom: 0 !important;
text-align: center;
text-transform: uppercase;
font-family: "United Sans", Impact, "Arial Black", "sans serif";
font-weight: 400;
margin-top: 0.5rem;
}

.pu-proofpoint__content {
font-weight: 700;
font-size: 1.25rem;
text-align: center;
line-height: 1.5;
white-space: pre-wrap;
font-family: acumin-pro, "Franklin Gothic", sans-serif;
margin-bottom: 1rem;
padding: 0 1.5rem;
}

.pu-proofpoint__source {
font-family: acumin-pro, "Franklin Gothic", sans-serif;
font-weight: 400;
font-size: 0.875rem;
text-align: center;
line-height: 1.4;
font-style: italic;
white-space: pre-wrap;
margin-bottom: 0 !important;
font-weight: 400 !important;
}

a.pu-proofpoint__source, a:hover.pu-proofpoint__source, a:link.pu-proofpoint__source, a:visited.pu-proofpoint__source, a:active.pu-proofpoint__source {
color: black;
}

.pp_form { 
display: table;
padding-bottom: 50px;      
}

.pp_form_section { 
display: table-row;
padding: 10 0px;  
}

.pp_form_label { 
display: table-cell;
padding: 5px 0px; 
}

.pp_form_input { 
display: table-cell; 
}

.pp_form_submit {
margin-top: 5px;
}

.table-dark {
background-color: #292929;
}

.table-dark th, .table-dark td, .table-dark thead th {
border-color: #c4bfc0;
}

.table-dark td.highlight {
font-weight: bold;
color: #ddb945;
}

.heading3Gold {
  color: #DDB945 !important;
}

.italicCenter {
  text-align: center; 
  font-style: italic;
}