/******/
/*** SECTIONS ***/
/******/

/* BLOG */

.card-image {
	height: 6rem;
}

.categories {
	gap: 2rem;
}

.categories a {
	text-decoration: none;
}

.share-text {
	font-weight: 700;
}

.blog-categories {
	gap: .5rem;
}

/* CALL TO ACTION */

.call-to-action h3, .background-green.call-to-action .button {
	color: var(--color-saffron);
}

.background-green.call-to-action a.button.secondary {
	color: var(--color-saffron);
	border-color: var(--color-saffron);
}

.cta-background {
	max-width: 70%;
	right: 0;
}

/* COLUMNS */

.columns.background-cream h3, .columns.background-cream .text-link {
	color: var(--color-green);
}

/* INTRO INNER */

.background-purple.intro-inner h3 {
	color: var(--color-blue);
}

/* INTRO HOME */

.horizontal-scroll-wrapper {
	position: relative;
	width: 100vw;
	padding-bottom: 3rem;
	overflow: hidden;
}

.horizontal-scroll-track {
	display: flex;
	height: 100%;
	will-change: transform;
	position: sticky;
	top: 0;
	gap: 1.75rem;
}

.scroll-image-item {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.scroll-image-item img {
	max-width: 100%;
	max-height: 100%;
	height: auto;
	width: auto;
	object-fit: cover;
}

/* Hide scrollbar for all browsers */
.horizontal-scroll-track::-webkit-scrollbar {
	display: none;
}

.horizontal-scroll-track {
	scrollbar-width: none;
	-ms-overflow-style: none;
	height: 20.1875rem;
	margin-left: -5rem;
}

body, html {
	scroll-behavior: smooth;
}

.intro-home h1 {
	color: var(--color-green);
}

/* EVENTS */

.featured-label {
	color: var(--color-green);
}

.events .event-card {
	margin-right: 2rem;
}

.intro-featured img {
	max-height: 40.875rem;
	object-fit: cover;
}

.event-excerpt p {
	margin-block-start: 0;
}

/* EVENTS SLIDER */

.event-image img {
	height: 16.875rem;
	object-fit: cover;
}
.swiper-pagination {
	display: flex;
	align-items: center;
	gap: .5rem;
	padding-bottom: .5rem;
}
.swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	background: #bfccc2;
	opacity: 1;
	border-radius: 50%;
}
.swiper-pagination-bullet-active {
	background: var(--color-green)!important;
}
.events-slider .grid-100.display-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.custom-prev, .custom-next {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 999;
}
	
.swiper-pagination-bullets.swiper-pagination-horizontal {
	left: auto;
}
	
.arrows-container {
	gap:1rem;
	flex: 1;
}
	
.swiper-arrow {
	width: 3rem;
	height: 3rem;
	cursor: pointer;
}

.event-date-bubble {
	top: 0;
	right: 1rem;
	border-radius: 0 0 3.75rem 3.75rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

.event-day {
	font-size: 2rem;
	font-weight: 700;
}

.event-location {
	font-weight: 700;
}

.category {
	border-radius: 0.3125rem;
	padding: .5rem;
	width: fit-content;
	background-color: var(--color-blue);
	color: var(--color-plum);
}

.truncate {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 1rem;
}

.community-living {
	background-color: var(--color-gold);
	color: var(--color-plum);
}

.local-events {
	background-color: var(--color-blue);
	color: var(--color-plum);
}

.austin-homes {
	background-color: var(--color-saffron);
	color: var(--color-plum);
}

.outdoor-activities {
	background-color: var(--color-walnut);
	color: var(--color-cream) !important;
}

/* FAQ */

.bench-image {
	margin-bottom: -7rem;
}

@media screen and (max-width: 47.9375rem) {
	.bench-image {
		margin-bottom: 0rem;
	}
}

/* FUTURE */

.future-bike {
	width: 15.25rem;
	height: 15.25rem;
	bottom: 10% !important;
	left: 20% !important;
}

.future-background {
	height: 38rem;
	margin-top: -10rem;
	z-index: 3;
	position: relative;
}

@media screen and (max-width: 91rem) {
	.future-background {
		height: 29rem;
	}
}

.future-column.active {
	transform: scale(1.03);
}

.future-bike.mobile-bike {
	transition: transform .35s ease, top .35s ease;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.future-clouds {
	z-index: 4;
	margin-top: -14rem;
}

.future-column {
	border-radius: 1.25rem;
	z-index: 2;
}

@media screen and (min-width: 48rem) {
	
	.future-column  {
		padding-bottom: 20rem;
		margin-bottom: -5rem;
	}

	.future-columns .grid-33.active .future-column {
		padding-bottom: 25rem;
		margin-top: -5rem;
	}

	.future-columns:has(.active) {
    	padding-top: 5rem;
	}
	
}

@media screen and (max-width: 47.9375rem) {
	.future-column {
		padding-bottom: 1rem;
	}
	
	.future-columns .grid-33:first-child .future-column {
		padding-bottom: 1rem;
	}
	
	.future-background {
		height: 20rem;
		margin-top: 0rem;
	}

	.future-clouds {
		margin-top: 0rem;
	}
	
	.future-bike {
		width: 7.25rem;
		height: 7.25rem;
	}
}

/* IMAGE FULL */

.image-full h2 {
	color: var(--color-green);
}

.image-full-parallax {
	top:0;
	left: auto !important;
	right: 0 !important;
	width: 15.6875rem;
}

@media screen and (max-width: 47.9375rem) {
	.image-full-parallax {
		top:0;
		left: auto !important;
		right: 0 !important;
		width: 7rem;
	}
}

/* IMAGE GALLERY */

.image-gallery .social-links img {
	width: 2.25rem;
	height: 2.2rem;
	padding-right: .5rem;
}

.image-gallery .social-links a {
	text-decoration: none;
	color: var(--color-green);
	padding-right: 1rem;
}

.gallery-image {
	padding-right: 1rem;
}

@media screen and (max-width: 47.9375rem) {
	.gallery-image {
		padding-right: 0;
		padding-left: 0;
	}
	
	.gallery-grid:nth-child(2n+1) .gallery-image { 
		padding-right: .5rem; 
	}
	
	.gallery-grid:nth-child(2n) .gallery-image { 
		padding-left: .5rem; 
	}
	
	.social-links {
		flex-wrap: wrap;
	}
}

/* IMAGE SCROLLER */

.image-full-wrapper { 
    position: relative; 
    overflow: hidden; 
}

.image-caption { 
    bottom: -100%; 
    left: 0; 
    color: #fff; 
	padding: 1.25rem 1.875rem; 
}

.caption-text p {
	color: #fff; 
}

.image-full-wrapper:hover .image-caption { 
    bottom: 0; 
}

.image-parallax-top-right { 
    top: 0; 
    right: 0; 
    width: 23rem;
    z-index: 3;
    transform-origin: center; 
    pointer-events: none; 
}

@media (max-width: 47.9375rem) {
    .image-caption { 
        bottom: 0; 
    }
	
	.image-parallax-top-right {  
		width: 10rem;
	}
}

.transition-bottom { 
    transition: bottom 0.3s ease; 
}

.image-scroller .swiper-pagination-bullet {
    background: #7dada2;
}

/* TEAM */

.four-team .team-name {
	font-family: "sofia-pro";
	font-size: 1.25rem;
	font-style: normal;
	font-weight: 700;
}

.four-team .team-image img {
	max-height: 18.5rem;
	max-width: 18.5rem;
}

.team-description p {
	font-size: 1rem;
}

.team-socials {
	display: flex;
	gap: .5rem;
}

/* TEXT STATS */

.text-stats h3 {
	color: var(--color-green);
}

.stat-number {
	color: var(--color-green);
	font-size: 4.12719rem;
	font-weight: 700;
}

.background-cream .stat-text {
	color: var(--color-purple);
	font-size: 1.23813rem;
	font-family: "bree", sans-serif;
}

.text-stats.background-cream .button.secondary {
	color: var(--color-green);
	border: solid .125rem var(--color-green);
}

.text-stats img {
	height: 9.375rem;
}

@media screen and (min-width: 48rem) {
	.stat-item:nth-child(odd) {
		margin-right: 5%;
	}

	.stat-item:nth-child(even) {
		margin-left: 5%;
	}
}

/* TEXT VIDEO */

.video-thumbnail-container {
	position: relative;
	cursor: pointer;
}

.video-thumbnail-container .play-button-overlay {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80px;
	height: auto;
}

.video-container {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	padding-top: 0;
	margin-bottom: 0;
}

.video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.text-video.background-purple .button.secondary {
	border-color: var(--color-saffron);
	color: var(--color-saffron);
}

.text-video.background-purple .button.primary {
	background-color: var(--color-saffron);
	border-color: var(--color-saffron);
}

.video-badge {
	width: 25.25rem;
	height: 25.25rem;
	z-index: -1;
	left: -5%;
	bottom: -10%;
}

@media (max-width: 47.9375rem) {
	.video-badge {
		width: 20.25rem;
		height: 20.25rem;
	}
}


/* TITLE TEXT */

.icon-container img {
	width: 3rem;
}

.bottom-image {
	height: 20rem;
}

/* TIMELINE */

.timeline-image img {
	border-radius: 18.75rem;
	object-fit: cover;
}

.timeline h2, .timeline .button {
	color: var(--color-gold);
}

.timeline-line {
	position: relative;
	width: 100%;
}
.timeline-dots {
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.timeline-bar {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 0.1875rem;
	background: var(--color-cream);
	transform: translateY(-50%);
	z-index: 1;
}
.timeline-progress {
	position: absolute;
	top: 50%;
	left: 0;
	height: 0.1875rem;
	background: var(--color-gold);
	transform: translateY(-50%);
	width: 0;
	z-index: 2;
	transition: width 0.4s ease;
}
.timeline-dot {
	background: none;
	border: none;
	position: relative;
	cursor: pointer;
	flex: 1;
	text-align: center;
	z-index: 4;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.timeline-dot::before {
	content: '';
	display: block;
	width: 1.25rem;
	height: 1.25rem;
	border-radius: 50%;
	background: var(--color-cream);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	transition: background 0.25s ease, transform 0.25s ease;
}
.timeline-dot.past::before {
	background: var(--color-gold);
}
.timeline-dot.active::before {
	background: var(--color-gold);
	transform: translateY(-50%) scale(1.05);
}
.timeline-year {
	margin-top: 4rem;
	font-size: 1.5rem;
	font-style: normal;
	font-family: "Bree";
	font-weight: 400;
	line-height: 140%;
	position: relative;
	z-index: 5;
	color: var(--color-cream);
	transition: color 0.25s ease;
}
.timeline-year.past,
.timeline-year.active {
	color: var(--color-gold);
}
.timeline-entry {
	display: none;
}
.timeline-entry.active {
	display: flex;
}

/* FOOTER */

.footer-menu ul, .socials-menu ul {
	display: -webkit-box;
  	display: -webkit-flex;
  	display: -ms-flexbox;
  	display: flex;
  	align-items: flex-start;
  	justify-content: flex-start;
	flex-wrap: wrap;
}

.footer-menu li, .socials-menu li {
	width: calc(50% - .75rem);
	margin-bottom: .75rem;
}

.footer-menu li a, .socials-menu a {
	text-decoration: none;
	font-size: 0.875rem;
	font-style: normal;
	font-weight: 400;
	font-family: "sofia-pro", sans-serif;
	text-transform: none;
	letter-spacing: 0;
}

.socials-menu img {
	width: 1.5rem;
	height: 1.5rem;
	padding-right: 1rem;
}

.socials-menu a {
	padding-bottom: 1rem;
}

.footer-logo img {
	max-width: 12.9375rem;
}

.socials-menu li {
	width: calc(100% - .75rem);
	margin-bottom: .75rem;
}

.footer-watermark img {
	opacity: .05;
	margin-bottom: -7.5rem;
}
