@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

.font-montserrat, .ff-montserrat, .font-montserrat h2, .ff-montserrat h2{
	font-family: 'Montserrat', sans-serif !important;
}

body {
	font-family: 'Montserrat', sans-serif;
}
#milestone-journey{
	overflow-x:hidden;
	overflow-y:hidden;
}
h2{
	padding-left:0;
}
h2:before {display: none;}
@media (min-width: 992px) {
    #milestone-journey .az-row--lg.az-row--reverse-horizontal {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
}
.z-20{
	z-index:20;
}

/* ################################################## RIBBON instance #################################################### */
.masked-vertical-svg {
    width: 100%;
    max-width: 143px;
    height: auto;
  }

.reveal-vertical-mask {
  height: 0;
  overflow: hidden;
  transition: height 6s ease-out;
}
.reveal-vertical-mask.expanded {
  height: 739px; /* or whatever the full height should be */
}

.animate-vertical-mask {
  animation: reveal-vertical-height 6s ease-out forwards;
}

.reverse-vertical-mask {
  animation: hide-vertical-height 6s ease-out forwards;
}

@keyframes reveal-vertical-height {
  to {
    height: 739px;
  }
}

@keyframes hide-vertical-height {
  to {
    height: 0;
  }
}

  .masked-vertical-svg-alt {
    width: 100%;
    max-width: 143px;
    height: auto;
    transform:scale(-1);
  }

.reveal-vertical-mask-alt {
  y: 739;
  height: 0;
  transition: height 6s ease-out;
}
.reveal-vertical-mask-alt.expanded {
	y: 0;
  height: 739px;
}

.animate-vertical-mask-alt {
  animation: reveal-vertical-mask-alt 6s ease-out forwards;
}

@keyframes reveal-vertical-mask-alt {
  to {
    y: 0;
    height: 739px;
  }
}
#milestone-journey .az-row{
	z-index:10;
}
@media (min-width: 992px) {
	#milestone-journey .az-row{
		z-index:10;
		--bs-gutter-x:3.5rem;
	}	
}

/* ################################################## RIBBONS INDIVIDUAL #################################################### */
#milestone-journey .az-row.row-ribbon{
	z-index:1;
}
@media (max-width: 991px) {
	#milestone-journey .az-row.row-ribbon{
		display:none !important;
	}
}
@media (min-width: 992px) {
	#milestone-journey .az-row.row-ribbon-mobile{
		display:none !important;
	}
}
#milestone-journey .ribbon-generic-sm{
    opacity: 0.3;
    position: absolute;
    top: -34vw;
    left: 31vw;
    rotate: -65deg;
    width: 29vw;
    transform: scale(0.9, 0.9);
}
#milestone-journey .ribbon-generic-inverse-sm{
opacity: 0.3;
    position: absolute;
    top: -34vw;
    left: 40vw;
    rotate: 65deg;
    width: 24vw;
    transform: scale(-1.1, 1.1);
}
#milestone-journey .ribbon-2000-sm{
	opacity: 0.3;
  position: absolute;
  top: calc(-36vw - 3rem);
  left: 210px;
  rotate: -55deg;
  width: 92px;
  transform: scale(0.8);
}
#milestone-journey .ribbon-2001-sm{
  opacity: 0.3;
  position: absolute;
  top: calc(-36vw - 3rem);
  left: 210px;
  rotate: -55deg;
  width: 92px;
  transform: scale(0.8);
}
#milestone-journey .ribbon-2001{
	opacity:0.3;
	position:absolute;
	top:calc(-150px - 3rem);
	left:20vw;
	rotate: -55deg;
  max-height: 25vw;
}
#milestone-journey .ribbon-2001-2{
	opacity:0.3;
	position:absolute;
	top:calc(-150px - 3rem);
	right: 210px;
  rotate: -35deg;
  max-width: 110px;
}
#milestone-journey .ribbon-2002{
  opacity: 0.3;
  position: absolute;
  top: calc(-230px - 3rem);
  left: 21vw;
  rotate: -51deg;
  width: 145px;
}

.ribbon-container-2002new{
	transform: scale(1,1) translate(-91px,-100px) rotate(-4deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2002new{
		transform: scale(1,1) translate(-91px,-100px) rotate(-4deg);
	}
}
.ribbon-container-2003{
	transform: scale(-1,1.1) translate(-300px,-161px) rotate(25deg);
}
.ribbon-container-2004{
	transform: scale(-1.2,1.3) translate(-69px,-90px) rotate(3deg);
}
.ribbon-container-2005new{
		transform: scale(1.2,0.8) translate(-60px,30px) rotate(40deg)
}
@media (min-width: 1440px) {
	.ribbon-container-2005new{
		transform: scale(1.2,0.8) translate(-60px,70px) rotate(27deg);
	}
}
.ribbon-container-2005{
	transform: scale(-1,1.3) translate(20px,-90px) rotate(-8deg);
}
.ribbon-container-2009{
	transform: scale(-0.7,0.7) translate(-360px,39px) rotate(81deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2009{
		transform: scale(-0.9,0.9) translate(-330px,119px) rotate(81deg);
	}
}
.ribbon-container-2015{
	transform: scale(1,0.8) translate(189px,119px) rotate(81deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2015{
		transform: scale(1,0.8) translate(189px,229px) rotate(81deg);
	}
}
.ribbon-container-2017{
	transform: scale(-1,0.9) translate(-150px,-21px) rotate(0deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2017{
		transform: scale(-1,0.9) translate(-90px,-21px) rotate(0deg);
	}
}
.ribbon-container-2017-2{
	transform: scale(1,0.9) translate(-150px,-21px) rotate(0deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2017-2{
		transform: scale(1,0.9) translate(-150px,-21px) rotate(0deg);
	}
}
.ribbon-container-2018{
	transform: scale(0.5,0.46) translate(939px,569px) rotate(57deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2018{
		transform: scale(0.5,0.6) translate(1084px,479px) rotate(57deg);
	}
}
.ribbon-container-2020{
	transform: scale(-0.8,0.8) translate(-169px,139px) rotate(-19deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2020{
		transform: scale(-0.8,0.8) translate(-139px,59px) rotate(-19deg);
	}
}
.ribbon-container-2020-2{
	transform: scale(0.9,0.9) translate(-120px,-1px) rotate(26deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2020-2{
		transform: scale(1,1) translate(-10px,9px) rotate(26deg);
	}
}
.ribbon-container-2022{
	transform: scale(0.8,0.75) translate(-20px,-171px) rotate(52deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2022{
		transform: scale(0.9,0.85) translate(0px,-161px) rotate(52deg);
	}
}
.ribbon-container-2023{
	transform: scale(0.9,0.9) translate(-140px,-271px) rotate(-14deg);
}
@media (min-width: 1440px) {
	.ribbon-container-2023{
		transform: scale(0.9,0.9) translate(-40px,-271px) rotate(-14deg);
	}
}
.ribbon-container-2024{
	transform: scale(0.9,0.9) translate(-190px,19px) rotate(26deg);
}
@media (min-width: 992px) {
	#milestone-journey .row-padding-left{
		padding-left: 13%;
	}
	#milestone-journey .row-padding-left.row-padding-left-special-2022{
		padding-left: 7%;
		padding-right: 6%;
	}
}

/* ################################################## H2 #################################################### */
#milestone-journey h2{
	font-family: 'Montserrat', sans-serif;
	padding-left:0 !important;
	position: relative;
}
@media (max-width: 991px) {
	#milestone-journey .h2-line-container h2, #milestone-journey .h2-line-container h2 span{
		font-size:40px !important;
	}
}
#milestone-journey .h2-line-container {
  display: flex;
  align-items: center;
}

#milestone-journey .h2-line-container h2 {
  margin: 0;
  white-space: nowrap;
  position: relative;
}

/*#milestone-journey .h2-line {
  flex-grow: 1;
  height: 2px;
  background-color: rgba(20, 28, 82, 0.2);
  margin-left: 16px;
}*/
#milestone-journey .h2-line-container::after {
  display:none;
}
#milestone-journey .h2-line-container.with-line::after {
  content: "";
  display: block;          /* or inline-block */
  flex-grow: 1;
  height: 2px;
  margin-left: 16px;
  background-color: rgba(20, 28, 82, 0.2);
}
#milestone-journey .mini-year h2{
	margin-left:-18px;
}

/* ################################################## STAR - ROTATE #################################################### */
#milestone-journey .star-2001{
	position: absolute;
    padding-left: 13%;
    padding-right: 13%;
    left:10%;
    bottom: 15px;
}
#milestone-journey .star-2002{
	position: absolute;
    padding-left: 0;
    padding-right: 0;
    width:65%;
    left: -9%;
    top: -85px;
}
#milestone-journey .star-2003{
	position: absolute;
    padding-left: 0;
    padding-right: 0;
    width:60%;
    left:2.6%;
    bottom: 100px;
}
#milestone-journey .star-2004{
	position: absolute;
    padding-left: 0;
    padding-right: 0;
    width:60%;
    left:35%;
    bottom: 100px;
    rotate:15deg;
}
#milestone-journey .star-2005{
	position: absolute;
    padding-left: 10%;
    padding-right: 10%;
    left: 5%;
    bottom: 0;
}
#milestone-journey .star-2007{
	position: absolute;
  padding-left: 0;
  padding-right: 0;
  width: 80%;
  left: 19%;
  bottom: calc(-3px + 1rem);
}
#milestone-journey .star-2015{
	position: absolute;
	padding-left: 0;
	padding-right: 0;
	width: 78%;
	left: 21%;
	bottom: calc(-3px + -1.5rem);
}
#milestone-journey .star-2017{
	position: absolute;
    padding-left: 0;
    padding-right: 0;
    width:60%;
    left:37.5%;
    bottom: 18px;
    rotate:15deg;
}
#milestone-journey .star-2020{
    position: absolute;
    padding-left: 0;
    padding-right: 0;
    width: 80%;
    left: 0%;
    bottom: -24px;
    rotate: -84deg;
}
#milestone-journey .star-2022-1{
    position: absolute;
    padding-left: 0;
    padding-right: 0;
    width: 80%;
    left: 20%;
    bottom: -40px;
    rotate: -134deg;
}
#milestone-journey .star-2022-2{
	position: absolute;
	padding-left: 0;
	padding-right: 0;
	width: 100%;
	left: -23%;
	bottom: 2rem;
	rotate: -5deg;
}
@media (max-width: 991px) {
		#milestone-journey .star-2022-2{
      width: 86%;
      left: -9%;
      bottom: 3rem;
	}
}
#milestone-journey .star-2023{
	position: absolute;
    padding-left: 0;
    padding-right: 0;
    width:60%;
    left:24.5%;
    bottom: 53px;
    rotate:15deg;
}

/* ################################################## STARS - USE WOBBLE from anim #################################################### */
#milestone-journey .wobble {
    -webkit-animation-name: customRotateFadeIn;
    animation-name: customRotateFadeIn;
    animation-duration: 6.0s !important;
  -webkit-animation-duration: 6.0s !important;
  --animate-delay: 0.75s !important;
  -webkit-animation-delay:0.75s !important;
  animation-delay:0.75s !important;
  transform-origin: center center;
  -webkit-transform-origin: center center;
}

@keyframes customRotateFadeIn {
  from {
    transform: rotate(-100deg) translateY(15px);
    opacity: 1;
  }
  to {
    transform: rotate(0deg) translateY(0px);
    opacity: 1;
  }
}

@-webkit-keyframes customRotateFadeIn {
  from {
    -webkit-transform: rotate(-100deg) translateY(15px);
    opacity: 1;
  }
  to {
    -webkit-transform: rotate(0deg) translateY(0px);
    opacity: 1;
  }
}

@keyframes scrollDownFade {
  0% {
    opacity: 0;
    transform: translateY(-4px);
  }
  50% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(4px);
  }
}

.scroll-chevronAnimated {
  animation: scrollDownFade 2s ease-in-out infinite;
}
@media (max-width: 991px) {
	.custom-mobile-no-delay{
		-webkit-animation-delay:0s !important;
		animation-delay:0s !important;
		--animation-delay:0s !important;
	}
}

#milestone-journey .custom-milestone-fade-in{
	
}

















#milestone-journey .fadeInUp, #milestone-journey .jello {
    -webkit-animation-name: fadeInUp2 !important;
    animation-name: fadeInUp2 !important;
    --animate-duration: 2500ms !important;
    -webkit-animation-duration:2500ms !important;
    animation-duration:2500ms !important;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    opacity:0;
}
@-webkit-keyframes fadeInUp2 {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0,8%,0);
        transform: translate3d(0,8%,0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInUp2 {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0,8%,0);
        transform: translate3d(0,8%,0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInUp, .jello {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}

/* original */


@media (min-width: 992px) {
	.row.row-cols-lg-4 .border-bottom {
		border-bottom: 0 !important;
	}
}

@media (max-width: 991px) {
	.row.row-cols-lg-4 .border-end {
		border-right: 0 !important;
	}
	
}

.section--bg-pattern {
	position:relative;
	overflow: hidden;
}
/*.section--bg-pattern:before {
	content: '';
	background-image: url('/sites/default/files/2025-02/G2.png');
	width: 40vw; height: 40vw;
	position: absolute;
	top: 50%; left: -10%;
	background-size: cover;
}*/
.section--bg-pattern.pattern-position-2:before {
	right: -10%; left: auto;
}
 @media (max-width: 768px) {
 	.section--bg-pattern.pattern-position-1:before {
 		
 	}
}
 @media (max-width: 575px) {
 	.section--bg-pattern.pattern-position-1:before {
 		top: 45%;
 		width: 35vw; height: 35vw;
 	}
}

.img-g1 img {
	margin-top: -300px;
  transform: rotate(15deg);
}

.grid-container {
 display: grid;
 grid-template-columns: 1fr 2px 1fr; /* Two columns with divider */
 grid-template-rows: auto auto; /* Two rows */
 gap: 40px;
 max-width: 900px;
 margin: 0 auto;
 align-items: center;
 }

 .text {
 font-size: 18px;
 font-weight: 400;
 color: #141B4D;
 line-height: 1.5;
 }

 .divider {
 background-color: #8A704C;
 width: 2px;
 height: 100%;
 }

 /* Responsive Design */
 @media (max-width: 768px) {
 .grid-container {
 display: flex;
 flex-direction: column;
 gap: 20px;
 }
 .divider {
 display: none;
 }
 }

.graduates-container {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr; /* Three equal columns */
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px;
}

.graduate-item {
	padding: 20px;
	border-right: 2px solid white;
}

 /* Remove right border from last item */
 .graduate-item:last-child {
 border-right: none;
 }

 /* Responsive adjustments */
 @media (max-width: 768px) {
	.graduates-container {
		display: flex;
		flex-direction: column; /* Stack items */
		padding: 30px;
		gap: 15px;
	}

	.graduate-item {
		border-right: none; /* Remove right border */
		border-bottom: 2px solid white; /* Add bottom border */
		padding-bottom: 15px;
	}

	.graduate-item:last-child {
		border-bottom: none; /* Remove last bottom border */
	}
}

.accolades-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); /* Responsive columns */
	gap: 20px;
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px;
}

.accolade {
	padding: 20px;
	border-right: 2px solid white;
 }

 /* Remove border from last item in each row */
 .accolade:last-child {
	border-right: none;
 }

 /* Responsive adjustments */
 @media (max-width: 768px) {
	.accolades-container {
		grid-template-columns: 1fr; /* Stack items on smaller screens */
		gap: 15px;
		padding: 30px;
	}
 
	.accolade {
		border-right: none; /* Remove all borders for stacked layout */
		border-bottom: 2px solid white; /* Add separator between stacked items */
		padding-bottom: 15px;
	}
 
	.accolade:last-child {
		border-bottom: none; /* Remove last bottom border */
	}
}

.success-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); /* Responsive grid */
	gap: 20px;
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px;
}

.success-item {
	padding: 20px;
	border-right: 2px solid white;
}

/* Remove border from last item in each row */
.success-item:last-child {
	border-right: none;
}

/* Responsive adjustments */
@media (max-width: 768px) {
	.success-container {
		grid-template-columns: 1fr; /* Stack items on smaller screens */
		gap: 15px;
		padding: 30px;
	}
 
	.success-item {
		border-right: none; /* Remove all borders for stacked layout */
		border-bottom: 2px solid white; /* Add separator between stacked items */
		padding-bottom: 15px;
	}
 
	.success-item:last-child {
		border-bottom: none; /* Remove last bottom border */
	}
}

.sustainability-container {
 display: grid;
 grid-template-columns: 1fr 1fr 1fr 1fr; /* Four-column layout */
 max-width: 1200px;
 margin: 0 auto;
 padding: 20px;
 }

 .sustainability-item {
 padding: 20px;
 border-right: 2px solid white;
 }

 /* Remove right border from the last item */
 .sustainability-item:last-child {
 border-right: none;
 }

 /* Responsive adjustments */
 @media (max-width: 768px) {
 .sustainability-container {
 display: flex;
 flex-direction: column; /* Stack items */
 padding: 20px;
 gap: 15px;
 }

 .sustainability-item {
 border-right: none; /* Remove right border */
 border-bottom: 2px solid white; /* Add bottom border */
 padding-bottom: 15px;
 }

 .sustainability-item:last-child {
 border-bottom: none; /* Remove last bottom border */
 }
 }