/* Template 2 - About Page Styles */

main {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: var(--spacing-4xl);
	max-width: 1200px;
	margin: 0 auto;
	padding: 140px var(--spacing-3xl) var(--spacing-4xl);
	align-items: start;
}

.about-section {
	background: var(--t2-bg-card);
	border: 1px solid var(--t2-border);
	border-radius: var(--radius-xl);
	padding: var(--spacing-3xl);
	position: relative;
	overflow: hidden;

	&::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 4px;
		background: linear-gradient(
			90deg,
			var(--accent) 0%,
			var(--accent-hover) 100%
		);
	}

	h1 {
		font-size: var(--font-size-3xl);
		color: var(--t2-text);
		margin-bottom: var(--spacing-xl);
		position: relative;
		display: inline-block;

		&::after {
			content: "";
			position: absolute;
			bottom: -8px;
			left: 0;
			width: 60px;
			height: 3px;
			background: var(--accent);
			border-radius: 2px;
		}
	}
}

.about-text-content,
.about-text-more-content {
	font-size: var(--font-size-base);
	line-height: var(--line-height-normal);
	color: var(--t2-text-light);

	p {
		margin-bottom: var(--spacing-lg);
	}
}

.more-info {
	max-height: 2000px;
	opacity: 1;
	overflow: hidden;
	transition: all 0.6s ease;
	margin-top: var(--spacing-lg);

	&.is-hidden {
		max-height: 0;
		opacity: 0;
		margin-top: 0;
	}
}

.show-more {
	display: inline-flex;
	align-items: center;
	gap: var(--spacing-sm);
	background: linear-gradient(
		135deg,
		var(--accent) 0%,
		var(--accent-hover) 100%
	);
	color: var(--t2-text);
	border: none;
	padding: var(--spacing-md) var(--spacing-xl);
	border-radius: var(--radius-md);
	font-size: var(--font-size-base);
	font-weight: var(--font-weight-semibold);
	cursor: pointer;
	transition: all var(--transition-fast);
	margin-top: var(--spacing-xl);

	&:hover {
		transform: translateY(-2px);
		box-shadow: var(--shadow-glow);
	}

	&:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 2px;
	}
}

.logo-about {
	position: sticky;
	top: 140px;
	background: var(--t2-bg-card);
	border: 1px solid var(--t2-border);
	border-radius: var(--radius-xl);
	padding: var(--spacing-2xl);
	text-align: center;

	img {
		max-width: 200px;
		height: auto;
		filter: brightness(1.1);
	}
}

/* Responsive */
@media (max-width: 1024px) {
	main {
		grid-template-columns: 1fr;
		padding-top: 120px;
	}

	.logo-about {
		position: static;
		order: -1;
	}
}

@media (max-width: 768px) {
	main {
		padding: 100px var(--spacing-xl) var(--spacing-2xl);
	}

	.about-section {
		padding: var(--spacing-2xl);

		h1 {
			font-size: var(--font-size-2xl);
		}
	}
}
