/**
 * Styles for the about page
 *
 * @copyright   2026, ON1
 */

/* !- Hero */
#hero {
	align-items: center;
	aspect-ratio: 2880 / 900;
	background: url(https://ononesoft.cachefly.net/images/company/desert-sunset-photo-edited-with-on1-photo-raw@2x.jpg) center center no-repeat;
	background-size: cover;
	display: flex;
	margin-top: 0;
	max-width: 100%;
	min-height: 450px;
	position: relative;
}

#hero::before {
	background: radial-gradient(ellipse 62% 85% at 50% 50%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.3) 45%, rgba(0, 0, 0, 0) 72%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

#hero .container {
	position: relative;
	z-index: 2;
}

#hero .eyebrow {
	background: var(--blue-transparent);
	border: 1px solid var(--blue-700);
	border-radius: var(--border-radius);
	color: var(--blue-500);
	display: inline-block;
	padding: 0.25rem 0.75rem;
}

#hero h1 {
	color: var(--white);
	font-size: var(--text-6xl);
	line-height: 1.1;
	margin-bottom: 0.75rem;
}

/* !- For Photographers, By Photographers */
#for-photographers-by-photographers .col-item {
	background: var(--bg-800);
	padding: 2.25rem 1.75rem;
}

#for-photographers-by-photographers .col-item i[class*="fa-"] {
	font-size: 1.75rem;
	margin-bottom: 1rem;
}

#for-photographers-by-photographers .col-item h4 {
	color: var(--text-100);
	font-size: var(--text-base);
	font-weight: 600;
	line-height: 1.3;
	margin-bottom: 0.625rem;
}

#for-photographers-by-photographers .col-item p {
	color: var(--text-400);
	font-size: var(--text-xs);
	line-height: 1.5;
	margin: 0;
}

/* !- Our Story */
#our-story {
	background: var(--bg-800);
}

#timeline .timeline-nav {
	margin-left: 3rem;
	margin-right: 3rem;
	position: relative;
}

#timeline .timeline-track {
	-ms-overflow-style: none;
	border-bottom: 3px solid var(--teal-500);
	display: flex;
	gap: 0.25rem;
	overflow-x: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
}

#timeline .timeline-track::-webkit-scrollbar {
	display: none;
}

#timeline .nav-slide {
	background: transparent;
	border: 0;
	color: var(--text-400);
	cursor: pointer;
	flex: 0 0 auto;
	font: inherit;
	padding: 0 0 0.4rem;
	position: relative;
}

#timeline .nav-slide span {
	border-radius: 0.3rem;
	display: inline-block;
	font-size: var(--text-sm);
	line-height: 1;
	padding: 0.25rem 0.5rem;
	transition: background 0.15s ease, color 0.15s ease;
}

#timeline .nav-slide:hover span {
	background: var(--teal-500);
	color: var(--text-900);
}

#timeline .nav-slide.is-current span {
	color: var(--teal-500);
	font-size: var(--text-xl);
	font-weight: 900;
}

#timeline .nav-slide.is-current:hover span {
	background: transparent;
	color: #8fe9cf;
}

#timeline .nav-slide.is-current::after {
	border-bottom: 10px solid var(--teal-500);
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	bottom: -3px;
	content: '';
	height: 0;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 0;
}

#timeline .timeline-arrow {
	align-items: center;
	background: transparent;
	border: 0;
	color: var(--text-300);
	cursor: pointer;
	display: flex;
	height: 36px;
	justify-content: center;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 36px;
}

#timeline .timeline-arrow:hover {
	color: var(--text-50);
}

#timeline .timeline-arrow.prev {
	left: -2.5rem;
}

#timeline .timeline-arrow.next {
	right: -2.5rem;
}

#timeline .timeline-arrow i {
	font-size: var(--text-2xl);
}

#timeline .timeline-content {
	margin-top: 2.5rem;
}

#timeline .content-slide {
	align-items: center;
	animation: tl-fade 0.35s ease;
	display: flex;
	gap: 1.75rem;
}

#timeline .content-slide[hidden] {
	display: none;
}

#timeline .ts-media {
	flex: 0 0 38%;
	max-width: 38%;
}

#timeline .ts-frame {
	align-items: center;
	background: var(--bg-900);
	border: 1px solid var(--bg-600);
	border-radius: 1rem;
	display: flex;
	justify-content: center;
	min-height: 15rem;
	overflow: hidden;
	padding: 1.5rem;
}

#timeline .ts-frame img {
	border-radius: 0.5rem;
	display: block;
	margin: 0;
	max-width: 100%;
}

#timeline .ts-body {
	flex: 1 1 auto;
}

#timeline .ts-body .eyebrow {
	color: var(--teal-500);
}

#timeline .ts-body .eyebrow::before {
	background: var(--teal-500);
	border-radius: 50%;
	content: '';
	height: 0.5rem;
	width: 0.5rem;
}

#timeline .ts-body .eyebrow {
	align-items: center;
	display: inline-flex;
	gap: 0.5rem;
	margin-bottom: 0.5rem;
}

#timeline .ts-body h3 {
	font-size: var(--text-base);
	font-weight: 600;
	margin-bottom: 0.75rem;
}

#timeline .ts-body p:not(.eyebrow) {
	color: var(--text-400);
	font-size: var(--text-xs);
	line-height: 1.55;
}

@keyframes tl-fade {
	from {
		opacity: 0;
		transform: translateY(6px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	#timeline .timeline-track {
		scroll-behavior: auto;
	}

	#timeline .content-slide {
		animation: none;
	}
}

@media (max-width: 767.98px) {
	#timeline .timeline-nav {
		margin-left: 2rem;
		margin-right: 2rem;
	}

	#timeline .timeline-arrow {
		width: 32px;
	}

	#timeline .timeline-arrow.prev {
		left: -2rem;
	}

	#timeline .timeline-arrow.next {
		right: -2rem;
	}

	#timeline .content-slide {
		flex-direction: column;
		gap: 1.5rem;
	}

	#timeline .ts-media {
		flex-basis: auto;
		max-width: 100%;
		width: 100%;
	}
}

/* !- Meet the Experts */
#meet-the-experts .section-intro,
#meet-the-experts .expert {
	margin-bottom: 2.75rem;
}

#meet-the-experts .expert:last-child {
	margin-bottom: 0;
}

#meet-the-experts .expert .eyebrow,
#meet-the-experts .expert h4 {
	margin-bottom: 1.5rem;
}

#meet-the-experts .expert-link {
	color: var(--blue-500);
	font-size: var(--text-sm);
	text-decoration: none;
}

#meet-the-experts .expert-link:hover {
	color: var(--link-hover);
	text-decoration: underline;
}

#meet-the-experts .expert-link i {
	margin-left: 0.25rem;
}

/* !- Our Philosophy */
#philosophy .philosophy-intro h2 {
	margin-bottom: 0;
}

#philosophy .belief-item {
	border-bottom: 1px solid var(--bg-600);
	cursor: default;
	gap: 1.75rem;
	padding: 2.5rem 0 2.5rem 1.5rem;
	position: relative;
	transition: padding-left 0.2s ease;
}

#philosophy .belief-item:first-child {
	border-top: 1px solid var(--bg-600);
}

#philosophy .belief-accent-bar {
	bottom: 0;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	transition: opacity 0.2s ease;
	width: 3px;
}

#philosophy .belief-item:hover .belief-accent-bar {
	opacity: 1;
}

#philosophy .belief-item:hover {
	padding-left: 2.5rem;
}

#philosophy .belief-item h3 {
	font-size: var(--text-xl);
	font-weight: 700;
}

#philosophy .belief-number {
	color: var(--blue-500);
	font-size: var(--text-mini);
	font-weight: 700;
	letter-spacing: 0.12em;
	margin-top: 5px;
	min-width: 28px;
	opacity: 0.7;
}

#philosophy .belief-icon-wrap {
	border-radius: var(--border-radius);
	height: 2.75em;
	margin-top: 1px;
	min-width: 2.75em;
	width: 2.75em;
}

#philosophy .belief-icon-wrap i {
	font-size: 1.25rem;
}

#philosophy .b1 .belief-accent-bar {
	background: var(--green-500);
}

#philosophy .b1 .belief-icon-wrap {
	background: rgba(33, 206, 110, 0.1);
}

#philosophy .b2 .belief-accent-bar {
	background: var(--blue-500);
}

#philosophy .b2 .belief-icon-wrap {
	background: rgba(10, 126, 250, 0.1);
}

#philosophy .b3 .belief-accent-bar {
	background: var(--orange);
}

#philosophy .b3 .belief-icon-wrap {
	background: rgba(254, 132, 42, 0.1);
}

#philosophy .b4 .belief-accent-bar {
	background: var(--purple-500);
}

#philosophy .b4 .belief-icon-wrap {
	background: rgba(145, 79, 255, 0.1);
}

/* !- Education */
#education .col-item {
	background: var(--bg-800);
	padding: 3.5rem 1.75rem;
}

#education .col-item p {
	color: var(--text-400);
	font-size: var(--text-sm);
	line-height: 1.5;
	margin: 0;
}

#education .col-item p.stat-number {
	color: var(--text-100);
	font-size: var(--text-3xl);
	font-weight: 900;
	line-height: 1;
	margin-bottom: 0.75rem;
}

/* !- Learning */
#learning {
	background: var(--bg-800);
}

#learning .btn {
	padding: 0.9375rem 1.875rem;
}

/* !- Community */
#community {
	background: var(--bg-800);
}

#community .channel-grid {
	margin-bottom: 1.75rem;
}

#community .channel-tile {
	align-items: center;
	background: var(--bg-900);
	border-radius: var(--border-radius);
	cursor: pointer;
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	padding: 2rem 1.5rem 1.75rem;
	position: relative;
	text-decoration: none;
	transition: background 0.18s, border-color 0.18s, transform 0.18s;
}

#community .channel-tile::before {
	content: '';
	height: 3px;
	left: 0;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity 0.18s;
}

#community .channel-tile:hover {
	background: var(--bg-900);
	transform: translateY(-3px);
}

#community .channel-tile:hover::before {
	opacity: 1;
}

#community .cta-note {
	font-size: var(--text-sm);
	text-align: center;
}

#community .tile-blog::before {
	background: var(--green-500);
}

#community .tile-yt::before {
	background: var(--red-500);
}

#community .tile-webinars::before {
	background: var(--blue-500);
}

#community .tile-newsletter::before {
	background: var(--purple-500);
}

#community .tile-icon-wrap {
	align-items: center;
	border-radius: var(--border-radius);
	display: flex;
	height: 2.5em;
	justify-content: center;
	margin-bottom: 1.25rem;
	width: 2.5em;
}

#community .tile-icon-wrap i {
	font-size: var(--text-xl);
}

#community .tile-blog .tile-icon-wrap i,
#community .tile-blog .tile-link {
	color: var(--green-500);
}

#community .tile-yt .tile-icon-wrap i,
#community .tile-yt .tile-link {
	color: var(--red-500);
}

#community .tile-webinars .tile-icon-wrap i,
#community .tile-webinars .tile-link {
	color: var(--blue-500);
}

#community .tile-newsletter .tile-icon-wrap i,
#community .tile-newsletter .tile-link {
	color: var(--purple-500);
}

#community .tile-blog .tile-icon-wrap {
	background: rgba(33, 206, 110, 0.16);
}

#community .tile-yt .tile-icon-wrap {
	background: rgba(255, 61, 87, 0.16);
}

#community .tile-webinars .tile-icon-wrap {
	background: rgba(10, 126, 250, 0.16);
}

#community .tile-newsletter .tile-icon-wrap {
	background: rgba(146, 66, 148, 0.16);
}

#community .tile-label {
	color: var(--text-50);
	font-size: var(--text-base);
	font-weight: 700;
	margin-bottom: 0.75rem;
}

#community .tile-desc {
	color: var(--text-300);
	font-size: var(--text-sm);
	line-height: 1.5;
	margin-bottom: 1rem;
	text-align: center;
}

#community .tile-link {
	align-items: center;
	display: flex;
	font-size: var(--text-xs);
	gap: 5px;
	margin-top: auto;
	text-decoration: none;
}

#community .social-row {
	margin-bottom: 1.75rem;
}

#community .social-row-label {
	color: var(--text-400);
	font-size: var(--text-xs);
	font-weight: 600;
	letter-spacing: 0.08em;
	margin-right: 6px;
	text-transform: uppercase;
}

#community .social-icon {
	align-items: center;
	background: var(--bg-900);
	border-radius: var(--border-radius);
	cursor: pointer;
	display: flex;
	height: 2.5rem;
	justify-content: center;
	text-decoration: none;
	transition: background 0.15s, border-color 0.15s;
	width: 2.5rem;
}

#community .social-icon:hover {
	background: var(--bg-600);
}

#community .social-icon i {
	color: var(--text-200);
	font-size: var(--text-base);
}

#community .social-icon:hover i {
	color: var(--text-100);
}

#community .btn {
	padding: 0.9375rem 1.875rem;
}

#community .sign-in-link {
	color: var(--blue-500);
	text-decoration: none;
}

/* !- FAQs */
#faqs {
	background: var(--bg-800);
}

/* !- Stay Connected */
#stay-connected {
	background: var(--bg-800);
}

#stay-connected .address-callout {
	background: var(--bg-900);
	border-left: 3px solid var(--blue-500);
	border-radius: var(--border-radius);
	padding: 1.5rem 1.75rem;
}

#stay-connected .address-label {
	color: var(--text-500);
	font-size: var(--text-xs);
	font-weight: 700;
	letter-spacing: 0.1em;
	margin-bottom: 0.75rem;
	text-transform: uppercase;
}

#stay-connected address {
	color: var(--text-300);
	font-style: normal;
	line-height: 1.6;
	margin: 0;
}

#stay-connected address strong {
	color: var(--text-50);
}

#stay-connected .btn {
	padding: 0.9375rem 1.875rem;
}
