/*
 Theme Name:   Stowe Child for Strategic Plan
 Description:  Developed by the UConn i3 office For the Office of the President
 Author:       Joel Salisbury - https://dxgroup.core.uconn.edu
 Template:     cornerstone
 Version:      1
*/
@import url(../beecher-stowe/css/bs-color-husky-blue.css);
@import url(../beecher-stowe/css/bs-font-compressed.css);

:root {
  --background-uconn-blue: #000e2f;
  --background-blue: #03357A;
  --timeline-red:#A80A0A;
  --timeline-orange:#B85900;
  --timeline-green:#006F1F;
  --timeline-blue:#0064D9;
  --timeline-purple:#9300D9;
  --timeline-pink:#D9009C;
}

/** make it so the timeline items fade in on page load **/
.timeline-element{
  
  transition: all 0.5s ease-in-out;
}

.timeline-element.active{
  opacity:1;
  transform: translateY(0px);
}


#categoryFilter{
  max-width: 500px;
}


.timeline-wrap .timeline-element .timeline-photo, .timeline-wrap .timeline-element .timeline-details{
  opacity: 0;
  transform: translateX(0); /* Neutral position */
  transition: all 1s ease-in-out;
  position: relative;
}

.timeline-wrap .timeline-element:nth-child(even) .timeline-photo, .timeline-wrap .timeline-element:nth-child(even) .timeline-details{

  transform: translateX(-50px); /* Slide in from the left */
}

.timeline-wrap .timeline-element:nth-child(odd) .timeline-photo, .timeline-wrap .timeline-element:nth-child(odd) .timeline-details{

  transform: translateX(50px); /* Slide in from the right */
}

.timeline-wrap .timeline-element::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 4px;
  background-color: #fff;
}

.timeline-wrap .timeline-element:nth-child(even)::before {
  left: 0;  /* Align border to the left for even elements */
}

.timeline-wrap .timeline-element:nth-child(odd)::before {
  right: -4px; /* Align border to the right for odd elements */
}







.text-white{
  color:white;
}

#uc-header, #masthead {
  position:relative;
  z-index: 9999;
}

body:has(.timeline-wrap){
  background:url(https://strategicplan.media.uconn.edu/wp-content/uploads/sites/3794/2024/01/skyline191015a0646.jpg);
  background-size:cover;
  background-attachment: fixed;
  /** add an overlay to the background image **/
  background-image: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.5)), url(https://strategicplan.media.uconn.edu/wp-content/uploads/sites/3794/2024/01/skyline191015a0646.jpg);
}

.timeline-wrap{
  padding:50px 0px;
}


.timeline-wrap h3{
  font-size:24px!important;
  padding-top:5px;
  line-height: 1.2;
}

.timeline-wrap sup{
  padding-left:5px;
}

.timeline {
  position: relative;
}

/* The actual timeline (the vertical ruler) */
/* .timeline::after {
  content: '';
  position: absolute;
  width: 6px;
  background-color: white;
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -3px;

} */

/* Container around content */
.timeline-element {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
}

/* The circles on the timeline */
.timeline-element::after {
  content: '';
  position: absolute;
  width: 34px;
  height: 34px;
  right: -19px;
  border: 4px solid #fff;
  top: 15px;
  border-radius: 50%;
  z-index: 1;
} 

/* Place the container to the left */
/* Place the container to the left */


/* Fix the circle for containers on the right side */
.timeline-wrap .timeline-element:nth-child(even)::after {
  left: -16px;
}


.timeline-photo {
  position: relative;
  border-radius:30px 0px 0px 0px;
}

.timeline-element:hover .timeline-photo img{
  
  transition: all 0.3s;
}

.timeline-element:hover .timeline-details{
 background-color:#fff;
  transition: all 0.3s;
}

.timeline-photo img{
  border-radius:30px 0px 0px 0px;
  object-fit:cover;
}

.focus-area-wrap {
  position: relative;
  margin-bottom:10px;
}



.timeline-tag, .timeline-tag-2{
  display: inline-block;
  bottom: 0px;
  left: 20px;
  color:white;
  font-weight:500;
  background-color:var(--timeline-red);
  padding:0px 5px;
  cursor: pointer;
  margin-bottom: 0px;
  border-top-left-radius: 30px;
  position: relative;
  left: 0px;
  padding-left: 20px;
  padding-bottom: 10px;
  padding-right: 20px;
  padding-top: 12px;
  width:100%;
  line-height: 1.2;
}

.timeline-tag-2{
  

}

.timeline-tag small, .priority-action small{
  display: block;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 700;

}

.timeline__sectionHead {
  font-size: 52px;
  font-weight: 500;
  color: white;
  margin-bottom: 20px;
}


.timeline-details{
  padding:10px 20px 20px 20px;
  background-color:rgba(255,255,255,0.9);
  border-radius:0px 0px 30px 0px;
  transition: all 0.3s;
}

.timeline-date{
  font-weight:700;
  padding:0px;
}

.timeline-filter {


  position: absolute;
  margin-bottom: 20px;
  transition: 0.5s;
  z-index: 9999;
  padding-top:25px;
  max-width: 500px;
}

.timeline-filter a:hover {
  text-decoration: underline;
  color:#fff!important;
}

.timeline-filter p.timeline-filter-description {
  color: #fff;
  font-size: 14px;
  border-left: 4px solid white;
  padding-left: 15px;
  margin-left: 15px;
  max-height: 0px;
  overflow: hidden;
}


.timeline-filter-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.timeline-filter h4 {
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 700;
  color:white;
  margin-bottom: 10px;
  cursor:pointer;
}



.timeline-filter ul {
  padding: 0px;
  margin: 0px;
  transition: 0.5s;
}

/** white links **/
.timeline-filter li {
  list-style: none;
  padding-left: 0px;
  margin-left:0px;
  margin-right: 10px;
  transition: 0.5s;
}



.timeline-filter li .circle {
  display:inline-block;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  margin-right: 5px;
  border: 4px solid white;
  transition: 0.5s;
  position: relative;
  bottom:-10px;
}

.timeline-filter a {
  color: white;
  text-decoration: none;
  margin-bottom: 5px;
  transition: all 0.5s;
  line-height: 32px;;
  padding-top:22px;
  padding-bottom:22px;
}

.timeline-filter a:hover {
  text-decoration: underline;
}

.timeline-filter a:hover .circle {
  border-color: #91b1db;
}

.timeline-filter li.active {
  /** animate the padding from 0-15px slowly **/
  transition: 0.5s;
}

.timeline-filter li.active p.timeline-filter-description {
  max-height: 400px;
  margin-top:10px;
  padding-top: 10px;
  padding-bottom: 10px;
  transition: 0.5s;

  animation: growHeight 0.5s ease-in-out;

}

@keyframes growHeight {
  0% {
    max-height: 0px;
  }
  100% {
    max-height: 400px;
  }
}

@keyframes slideLI {
  0% {
    padding-left: 0px;
  }
  100% {
    padding-left: 15px;
  }
  
}

.timeline-filter li.active a{
  color: #f0f3f7;
  text-decoration: underline;
}


.tag-red, .circle-red::after, .bg-red {
  background-color:var(--timeline-red);
}

.tag-green, .circle-green::after, .bg-green {
  background-color:var(--timeline-green);
}

.tag-orange, .circle-orange::after, .bg-orange {
  background-color:var(--timeline-orange);
}

.tag-blue, .circle-blue::after, .bg-blue {
  background-color:var(--timeline-blue);
}

.tag-purple, .circle-purple::after, .bg-purple {
  background-color:var(--timeline-purple);
}

.tag-pink, .circle-pink::after, .bg-pink{
  background-color:var(--timeline-pink);
}

.circle-uconn-blue::after{
  background-image: -webkit-linear-gradient(180deg, var(--background-uconn-blue) 50%, var(--background-uconn-blue) 50%);
}

.circle-orange-green::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-orange) 50%, var(--timeline-green) 50%);
}

.circle-red-pink::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-red) 50%, var(--timeline-pink) 50%);
}

.circle-blue-purple::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-blue) 50%, var(--timeline-purple) 50%);
}

.circle-purple-blue::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-purple) 50%, var(--timeline-blue) 50%);
}

.circle-green-orange::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-green) 50%, var(--timeline-orange) 50%);
}

.circle-pink-red::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-pink) 50%, var(--timeline-red) 50%);
}

.circle-blue-orange::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-blue) 50%, var(--timeline-orange) 50%);
}

.circle-orange-blue::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-orange) 50%, var(--timeline-blue) 50%);
}

.circle-purple-green::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-purple) 50%, var(--timeline-green) 50%);
}

.circle-green-purple::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-green) 50%, var(--timeline-purple) 50%);
}

.circle-pink-blue::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-pink) 50%, var(--timeline-blue) 50%);
}

.circle-blue-pink::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-blue) 50%, var(--timeline-pink) 50%);
}

.circle-purple-pink::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-purple) 50%, var(--timeline-pink) 50%);
}

.circle-pink-purple::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-pink) 50%, var(--timeline-purple) 50%);
}

.circle-green-blue::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-green) 50%, var(--timeline-blue) 50%);
}

.circle-blue-green::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-blue) 50%, var(--timeline-green) 50%);
}

.circle-orange-red::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-orange) 50%, var(--timeline-red) 50%);
}

.circle-red-orange::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-red) 50%, var(--timeline-orange) 50%);
}

.circle-purple-red::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-purple) 50%, var(--timeline-red) 50%);
}

.circle-red-purple::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-red) 50%, var(--timeline-purple) 50%);
}

.circle-green-red::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-green) 50%, var(--timeline-red) 50%);
}

.circle-red-green::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-red) 50%, var(--timeline-green) 50%);
}

.circle-orange-pink::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-orange) 50%, var(--timeline-pink) 50%);
}

.circle-pink-orange::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-pink) 50%, var(--timeline-orange) 50%);
}

.circle-blue-red::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-blue) 50%, var(--timeline-red) 50%);
}

.circle-red-blue::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-red) 50%, var(--timeline-blue) 50%);
}

.circle-purple-orange::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-purple) 50%, var(--timeline-orange) 50%);
}

.circle-orange-purple::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-orange) 50%, var(--timeline-purple) 50%);
}

.circle-green-pink::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-green) 50%, var(--timeline-pink) 50%);
}

.circle-pink-green::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-pink) 50%, var(--timeline-green) 50%);
}

.circle-blue-green::after{
  background-image: -webkit-linear-gradient(180deg, var(--timeline-blue) 50%, var(--timeline-green) 50%);
}




.view-more {
  text-align: center;
  margin: 20px 0;
}

.view-more a {
  display: inline-block;
  padding: 10px 20px;
  background-color: #0073aa;
  color: #fff;
  text-decoration: none;
  border-radius: 5px;
}

.view-more a:hover {
  background-color: #005f8d;
}

.pagination {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.pagination a, .pagination span {
  display: inline-block;
  padding: 10px 20px;
  background-color: #0073aa;
  color: #fff;
  text-decoration: none;
  border-radius: 5px;
  margin-right: 5px;
}

.pagination a:hover {
  background-color: #005f8d;
}

.pagination a.active, .pagination span.current {
  background-color: #005f8d;
}

.pagination a.disabled {
  background-color: #ccc;
  color: #666;
}

.pagination a.disabled:hover {
  background-color: #ccc;
}

#timeline-app {
  
}




/*tooltip*/  
.timeline-tag .tooltiptext,  .timeline-tag-2 .tooltiptext {
  opacity: 0;
  width: 100%;
  background-color: black;
  color: #fff;
  text-align: center;
  border-radius: 0px 0px 30px 0px;
  padding: 5px 0;
  bottom: 100%;
  left: 50%;
  margin-left: 0%;
  transition: opacity 0.4s;
 
  /* Position the tooltip */
  position: absolute;
  z-index: 1;
}

.timeline-tag:hover .tooltiptext,  .timeline-tag-2:hover .tooltiptext {
  opacity: 1;


}

/** Priority action inset box **/
.priority-action{
  background-color:var(--background-blue);
  padding:20px;
  padding-top:5px;
  border-radius: 0px 0px 30px 0px;
  
 
  
  color:#fff;
  transition: all 1s;
  font-size:14px;
}


.timeline-link-wrap {
  border-top:1 px dashed #eee;
  display: flex;
  justify-content: end;
}

.priority-action p {
  border-left: 3px solid white;
  padding-left:15px;
  margin-bottom:0px;
}

.priority-action.bg-blue{
  background-color:var(--timeline-blue);
}

.priority-action.bg-red{
  background-color:var(--timeline-red);
}

.priority-action.bg-green{
  background-color:var(--timeline-green);
}

.priority-action.bg-orange{
  background-color:var(--timeline-orange);
}

.priority-action.bg-purple{
  background-color:var(--timeline-purple);
}

.priority-action.bg-pink{
  background-color:var(--timeline-pink);
}






.priority-action h5{
  color:white;
}


/*button stuff*/
.timeline-wrap .btn {
  background-image: linear-gradient(90deg, #03357a 50%, #F0F3F7 50%)!important;
  border-radius: 20px 5px!important;
  border: 3px solid #F0F3F7!important;
  border-color: #D9E0E9 !important;
  background-size: 229%!important;
  background-repeat: no-repeat!important;
  background-position: 99%!important;
  transition: all 0.85s cubic-bezier(0.68, -0.55, 0.265, 1.55)!important;
  text-transform: uppercase!important;
  letter-spacing: 0.16em!important;
  padding: 13px 43px 11px!important;
  color: #333 !important;
  display: inline-block!important;
  margin-bottom: 0!important;
  font-weight: normal!important;
  text-align: center!important;
  vertical-align: middle!important;
  cursor: pointer!important;
  white-space: normal!important;
  font-size: 14px!important;
  line-height: 1.428571429!important;
  user-select: none!important;
  text-decoration: none !important;
}

.timeline-wrap .btn:hover, .timeline-wrap .btn:focus{
  background-color: #03357a!important;
  background-image: linear-gradient(90deg, #03357a 50%, #F0F3F7 50%)!important;
  color: #fff !important;
  border-color: #062b5e !important;
  background-position: 0%!important;
}

/* Media queries - Responsive timeline on screens less than 600px wide */
@media screen and (max-width: 991px) {
/* Place the timelime to the left */
  .timeline::after {
    left: 34px;
  }

/* Full-width containers */
  .timeline-element {
    width: 100%;
    margin:0 auto;
  }

/* Make sure that all arrows are pointing leftwards */
  .timeline-element::before {
    left: 20px;
    border: medium solid white;
    border-width: 10px 10px 10px 0;
    border-color: transparent white transparent transparent;
  }

/* Make sure all circles are at the same spot */
 .timeline-wrap .timeline-element::after {
    left: 25px!important;
  }

/* Make all right containers behave like the left ones */
 .timeline-wrap .timeline-element:nth-child(even) {
    left: 0%;
  }

   /** Hide the left border on the timeline **/
   .timeline-wrap .timeline-element::before {
    display: none;
  }

  /** Make the timeline elements full width but no wider than 100% **/
  .timeline-wrap .timeline-element {
    width: 100%;
    max-width: 100%;
  }

  .timeline-photo{
    max-width: 100%;
  }

  /** condense the timeline filter menu on mobile **/
  .timeline-filter {
    display: none;
  }


}