:root {
	--background-color: #27190a;
	--default-color: #ffebe0;
	--heading-color: #ffffff;
	--accent-color: #bff163;
	--accent-gradient: linear-gradient(
		135deg,
		#f1cb63 0%,
		#88f65c 50%,
		#ecb248 100%
	);
	--secondary-color: #f59e0b;
	--secondary-gradient: linear-gradient(135deg, #f59e0b 0%, #ef4444 100%);
	--surface-color: #4b3e1b;
	--surface-hover: #81552e;
	--contrast-color: #ffffff;
	--bg-color: #27230a;
	--nav-color: #fcd8a5;
	--nav-hover-color: #f8a381;
	--nav-mobile-background-color: #4b3a1b;
	--nav-dropdown-background-color: #4b321b;
	--nav-dropdown-color: #fcd6a5;
	--nav-dropdown-hover-color: #f8af81;
	--border-color: #2e8161;
	--text-muted: #f8fec7;
	--success-color: #10b981;
	--warning-color: #f59e0b;
	--error-color: #ef4444;
	--shadow-sm: 0 1px 3px 0 rgba(208, 241, 99, 0.2),
		0 1px 2px 0 rgba(99, 241, 203, 0.1);
	--shadow-md: 0 4px 6px -1px rgba(241, 201, 99, 0.3),
		0 2px 4px -1px rgba(239, 99, 241, 0.2);
	--shadow-lg: 0 10px 15px -3px rgba(99, 241, 222, 0.4),
		0 4px 6px -2px rgba(241, 99, 201, 0.3);
	--shadow-xl: 0 20px 25px -5px rgba(99, 224, 241, 0.5),
		0 10px 10px -5px rgba(217, 241, 99, 0.4);
}

/* Color Presets */
.light-background {
	--background-color: #fafbfc;
	--surface-color: #ffffff;
	--default-color: #48382d;
}

.dark-background {
	--background-color: #2c211a;
	--default-color: #f0eae2;
	--heading-color: #ffffff;
	--surface-color: #483f2d;
	--contrast-color: #ffffff;
	--nav-color: #ebf0e2;
	--border-color: #685b4a;
}

/* Smooth scroll */
:root {
	scroll-behavior: smooth;
}

/*--------------------------------------------------------------
# General Styling & Shared Classes
--------------------------------------------------------------*/
body {
	color: var(--default-color);
	background-color: var(--background-color);
	font-family: var(--default-font);
	line-height: 1.6;
	font-size: 16px;
}

a {
	color: var(--accent-color);
	text-decoration: none;
	transition: all 0.3s ease;
}

a:hover {
	color: var(--nav-hover-color);
	text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--heading-color);
	font-family: var(--heading-font);
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 1rem;
}

h1 {
	font-size: 3.5rem;
}
h2 {
	font-size: 2.5rem;
}
h3 {
	font-size: 2rem;
}
h4 {
	font-size: 1.5rem;
}
h5 {
	font-size: 1.25rem;
}
h6 {
	font-size: 1.125rem;
}

/* PHP Email Form Messages */
.php-email-form .error-message {
	display: none;
	background: var(--error-color);
	color: var(--contrast-color);
	text-align: left;
	padding: 15px;
	margin-bottom: 24px;
	font-weight: 600;
	border-radius: 8px;
}

.php-email-form .sent-message {
	display: none;
	color: var(--contrast-color);
	background: var(--success-color);
	text-align: center;
	padding: 15px;
	margin-bottom: 24px;
	font-weight: 600;
	border-radius: 8px;
}

.php-email-form .loading {
	display: none;
	background: var(--accent-color);
	color: var(--contrast-color);
	text-align: center;
	padding: 15px;
	margin-bottom: 24px;
	font-weight: 600;
	border-radius: 8px;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.header {
	background: var(--surface-color);
	box-shadow: var(--shadow-sm);
	border-bottom: 1px solid var(--border-color);
	transition: all 0.3s ease;
	padding: 1rem 0;
}

.header .logo img {
	max-height: 50px;
	width: auto;
	border-radius: 50%;
	transition: transform 0.3s ease;
}

.header .logo img:hover {
	transform: scale(1.05);
}

.navmenu ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	gap: 2rem;
}

.navmenu a {
	color: var(--nav-color);
	font-weight: 500;
	padding: 0.5rem 1rem;
	border-radius: 8px;
	transition: all 0.3s ease;
	position: relative;
}

.navmenu a:hover {
	color: var(--nav-hover-color);
	background: var(--surface-hover);
	transform: translateY(-2px);
}

.navmenu a::after {
	content: '';
	position: absolute;
	bottom: -5px;
	left: 50%;
	width: 0;
	height: 2px;
	background: var(--accent-gradient);
	transition: all 0.3s ease;
	transform: translateX(-50%);
}

.navmenu a:hover::after {
	width: 80%;
}

/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
.hero {
	background: linear-gradient(135deg, #fafbfc 0%, #f7fafc 100%);
	padding: 6rem 0;
	position: relative;
	overflow: hidden;
}

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

.hero h2 {
	font-size: 3.5rem;
	font-weight: 800;
	background: var(--accent-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	margin-bottom: 1.5rem;
	line-height: 1.1;
}

.hero p {
	font-size: 1.25rem;
	color: var(--text-muted);
	margin-bottom: 2rem;
	max-width: 600px;
}

.hero-img img {
	border-radius: 20px;
	box-shadow: var(--shadow-xl);
	transition: transform 0.3s ease;
}

.hero-img img:hover {
	transform: translateY(-10px);
}

/*--------------------------------------------------------------
# Growth Section
--------------------------------------------------------------*/
.growth {
	background: var(--accent-gradient);
	color: var(--contrast-color);
	padding: 8rem 0;
	position: relative;
	overflow: hidden;
}

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

.growth h2 {
	color: var(--contrast-color);
	font-size: 4rem;
	font-weight: 900;
	margin-bottom: 2rem;
	text-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.growth p {
	font-size: 1.5rem;
	margin-bottom: 3rem;
	opacity: 0.95;
}

.growth .btn {
	background: var(--contrast-color);
	color: var(--accent-color);
	border: none;
	padding: 1rem 2rem;
	font-size: 1.125rem;
	font-weight: 600;
	border-radius: 50px;
	box-shadow: var(--shadow-lg);
	transition: all 0.3s ease;
}

.growth .btn:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow-xl);
	color: var(--accent-color);
}

/*--------------------------------------------------------------
# About Section
--------------------------------------------------------------*/
.about {
	padding: 6rem 0;
	background: var(--surface-color);
}

.about .section-title {
	text-align: center;
	margin-bottom: 4rem;
}

.about .section-title h2 {
	font-size: 3rem;
	margin-bottom: 1.5rem;
	position: relative;
}

.about .section-title h2::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 80px;
	height: 4px;
	background: var(--accent-gradient);
	border-radius: 2px;
	transform: translateX(-50%);
}

.about .section-title p {
	font-size: 1.25rem;
	color: var(--text-muted);
	max-width: 800px;
	margin: 0 auto;
}

.about_elem {
	margin-bottom: 2rem;
	padding: 1.5rem;
	background: var(--surface-color);
	border-radius: 16px;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.about_elem::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background: var(--accent-gradient);
	transition: width 0.3s ease;
}

.about_elem:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow-lg);
	border-color: var(--accent-color);
}

.about_elem:hover::before {
	width: 8px;
}

.about_elem i {
	color: var(--accent-color);
	font-size: 1.5rem;
	margin-right: 1rem;
	margin-top: 0.25rem;
}

.about_elem p {
	margin: 0;
	font-weight: 500;
	color: var(--default-color);
}

/*--------------------------------------------------------------
# Technologies Section (Learning Methods)
--------------------------------------------------------------*/
.technologies {
	padding: 6rem 0;
	background: var(--background-color);
}

.technologies .section-title {
	text-align: center;
	margin-bottom: 4rem;
}

.technologies .section-title h2 {
	font-size: 3rem;
	margin-bottom: 1.5rem;
	position: relative;
}

.technologies .section-title h2::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 80px;
	height: 4px;
	background: var(--secondary-gradient);
	border-radius: 2px;
	transform: translateX(-50%);
}

.technology-card {
	background: var(--surface-color);
	border-radius: 20px;
	padding: 2.5rem;
	text-align: center;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
	height: 100%;
}

.technology-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--accent-gradient);
	transform: scaleX(0);
	transition: transform 0.3s ease;
}

.technology-card:hover {
	transform: translateY(-10px);
	box-shadow: var(--shadow-xl);
	border-color: var(--accent-color);
}

.technology-card:hover::before {
	transform: scaleX(1);
}

.technology-icon {
	width: 80px;
	height: 80px;
	background: var(--accent-gradient);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 2rem;
	transition: all 0.3s ease;
}

.technology-card:hover .technology-icon {
	transform: scale(1.1) rotate(5deg);
}

.technology-icon i {
	font-size: 2rem;
	color: var(--contrast-color);
}

.technology-card h3 {
	font-size: 1.5rem;
	margin-bottom: 1rem;
	color: var(--heading-color);
}

.technology-card p {
	color: var(--text-muted);
	margin-bottom: 1.5rem;
	line-height: 1.6;
}

.technology-features {
	list-style: none;
	padding: 0;
	margin: 0;
}

.technology-features li {
	padding: 0.5rem 0;
	color: var(--default-color);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
}

.technology-features i {
	color: var(--success-color);
	font-size: 1.125rem;
}

/*--------------------------------------------------------------
# Features Section
--------------------------------------------------------------*/
.features {
	padding: 6rem 0;
	background: var(--surface-color);
}

.features .section-title {
	text-align: center;
	margin-bottom: 4rem;
}

.features .section-title h2 {
	font-size: 3rem;
	margin-bottom: 1.5rem;
	position: relative;
}

.features .section-title h2::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 80px;
	height: 4px;
	background: var(--secondary-gradient);
	border-radius: 2px;
	transform: translateX(-50%);
}

.icon-box {
	text-align: center;
	padding: 2rem;
	background: var(--surface-color);
	border-radius: 16px;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
	height: 100%;
}

.icon-box::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--accent-gradient);
	transform: scaleX(0);
	transition: transform 0.3s ease;
}

.icon-box:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow-lg);
	border-color: var(--accent-color);
}

.icon-box:hover::before {
	transform: scaleX(1);
}

.icon-box i {
	font-size: 3rem;
	color: var(--accent-color);
	margin-bottom: 1.5rem;
	display: block;
	transition: all 0.3s ease;
}

.icon-box:hover i {
	transform: scale(1.1);
}

.icon-box h4 {
	font-size: 1.25rem;
	margin-bottom: 1rem;
	color: var(--heading-color);
}

.icon-box p {
	color: var(--text-muted);
	line-height: 1.6;
}

/*--------------------------------------------------------------
# Feature Details Section
--------------------------------------------------------------*/
.feature-details {
	padding: 6rem 0;
	background: var(--background-color);
}

.features-item {
	align-items: center;
}

.features-item img {
	border-radius: 20px;
	box-shadow: var(--shadow-lg);
	transition: transform 0.3s ease;
}

.features-item img:hover {
	transform: scale(1.02);
}

.features-item h3 {
	font-size: 2rem;
	margin-bottom: 1.5rem;
	color: var(--heading-color);
}

.features-item .fst-italic {
	font-style: italic;
	color: var(--text-muted);
	font-size: 1.125rem;
	margin-bottom: 1.5rem;
	border-left: 4px solid var(--accent-color);
	padding-left: 1.5rem;
}

.features-item p {
	color: var(--default-color);
	line-height: 1.7;
	font-size: 1.125rem;
}

/*--------------------------------------------------------------
# Testimonials Section
--------------------------------------------------------------*/
.testimonials-section {
	padding: 6rem 0;
	background: var(--surface-color);
}

.testimonials-section .section-title {
	text-align: center;
	margin-bottom: 4rem;
}

.testimonials-section .section-title h2 {
	font-size: 3rem;
	margin-bottom: 1.5rem;
	position: relative;
}

.testimonials-section .section-title h2::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 80px;
	height: 4px;
	background: var(--accent-gradient);
	border-radius: 2px;
	transform: translateX(-50%);
}

.testimonial-card {
	background: var(--surface-color);
	border-radius: 20px;
	padding: 2.5rem;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
	height: 100%;
	position: relative;
	overflow: hidden;
}

.testimonial-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--secondary-gradient);
	transform: scaleX(0);
	transition: transform 0.3s ease;
}

.testimonial-card:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow-lg);
	border-color: var(--secondary-color);
}

.testimonial-card:hover::before {
	transform: scaleX(1);
}

.testimonial-author {
	display: flex;
	align-items: center;
	margin-bottom: 1.5rem;
	gap: 1rem;
}

.testimonial-author-img {
	width: 60px;
	height: 60px;
	background: var(--accent-gradient);
	border-radius: 50%;
	color: var(--contrast-color);
}

.testimonial-author-name {
	font-weight: 600;
	color: var(--heading-color);
	font-size: 1.125rem;
}

.testimonial-author-title {
	color: var(--text-muted);
	font-size: 0.875rem;
}

.testimonial-text {
	color: var(--default-color);
	line-height: 1.6;
	font-style: italic;
	position: relative;
	padding-left: 1.5rem;
}

.testimonial-text::before {
	content: '"';
	position: absolute;
	left: 0;
	top: -10px;
	font-size: 3rem;
	color: var(--accent-color);
	font-family: serif;
	line-height: 1;
}

/*--------------------------------------------------------------
# Contact Section
--------------------------------------------------------------*/
.contact {
	padding: 6rem 0;
	background: var(--background-color);
}

.contact .section-title {
	text-align: center;
	margin-bottom: 4rem;
}

.contact .section-title h2 {
	font-size: 3rem;
	margin-bottom: 1.5rem;
	position: relative;
}

.contact .section-title h2::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 80px;
	height: 4px;
	background: var(--accent-gradient);
	border-radius: 2px;
	transform: translateX(-50%);
}

.form-control {
	background: var(--surface-color);
	border: 2px solid var(--border-color);
	border-radius: 12px;
	padding: 1rem 1.5rem;
	font-size: 1rem;
	transition: all 0.3s ease;
	color: var(--default-color);
}

.form-control:focus {
	border-color: var(--accent-color);
	box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
	outline: none;
}

.form-control::placeholder {
	color: var(--text-muted);
}

button[type='submit'] {
	background: var(--accent-gradient);
	color: var(--contrast-color);
	border: none;
	padding: 1rem 2rem;
	font-size: 1.125rem;
	font-weight: 600;
	border-radius: 12px;
	transition: all 0.3s ease;
	cursor: pointer;
}

button[type='submit']:hover {
	transform: translateY(-2px);
	box-shadow: var(--shadow-lg);
}

.info-item {
	text-align: center;
	padding: 2rem;
	background: var(--surface-color);
	border-radius: 20px;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
}

.info-item:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow-lg);
	border-color: var(--accent-color);
}

.info-item i {
	font-size: 3rem;
	color: var(--accent-color);
	display: block;
}

.info-item h3 {
	font-size: 1.5rem;
	margin-bottom: 1rem;
	color: var(--heading-color);
}

.info-item p {
	color: var(--text-muted);
	margin-bottom: 1rem;
}

.info-item strong {
	color: var(--accent-color);
	font-weight: 600;
}

/*--------------------------------------------------------------
# FAQ Section
--------------------------------------------------------------*/
.faq {
	padding: 6rem 0;
	background: var(--surface-color);
}

.faq .section-title {
	text-align: center;
	margin-bottom: 4rem;
}

.faq .section-title h2 {
	font-size: 3rem;
	margin-bottom: 1.5rem;
	position: relative;
}

.faq .section-title h2::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 80px;
	height: 4px;
	background: var(--accent-gradient);
	border-radius: 2px;
	transform: translateX(-50%);
}

.faq-container {
	max-width: 800px;
	margin: 0 auto;
}

.faq-item {
	background: var(--surface-color);
	border: 1px solid var(--border-color);
	border-radius: 16px;
	margin-bottom: 1rem;
	overflow: hidden;
	transition: all 0.3s ease;
}

.faq-item:hover {
	border-color: var(--accent-color);
	box-shadow: var(--shadow-md);
}

.faq-item.faq-active {
	border-color: var(--accent-color);
	box-shadow: var(--shadow-md);
}

.faq-item {
	padding: 1.5rem 2rem;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	transition: all 0.3s ease;
}

.faq-item:hover {
	background: var(--surface-hover);
}

.faq-icon {
	color: var(--accent-color);
	font-size: 1.5rem;
	margin-right: 1rem;
}

.faq-item h3 {
	margin: 0;
	font-size: 1.25rem;
	color: var(--heading-color);
	flex: 1;
}

.faq-toggle {
	color: var(--accent-color);
	font-size: 1.25rem;
	transition: transform 0.3s ease;
}

.faq-item.faq-active .faq-toggle {
	transform: rotate(180deg);
}

.faq-content {
	padding: 0 2rem 1.5rem;
	display: none;
}

.faq-item.faq-active .faq-content {
	display: block;
}

.faq-content p {
	color: var(--default-color);
	line-height: 1.6;
	margin: 0;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {
	background: var(--heading-color);
	color: var(--contrast-color);
	padding: 4rem 0 2rem;
}

.footer-top {
	margin-bottom: 2rem;
}

.footer h3 {
	color: var(--contrast-color);
	font-size: 1.5rem;
	margin-bottom: 1.5rem;
}

.footer h4 {
	color: var(--contrast-color);
	font-size: 1.25rem;
	margin-bottom: 1rem;
}

.footer p {
	color: rgba(255, 255, 255, 0.8);
	line-height: 1.6;
}

.footer-links ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer-links li {
	margin-bottom: 0.5rem;
}

.footer-links a {
	color: rgba(255, 255, 255, 0.8);
	transition: color 0.3s ease;
}

.footer-links a:hover {
	color: var(--accent-color);
}

.copyright {
	background: rgba(0, 0, 0, 0.2);
	padding: 1.5rem 0;
	text-align: center;
}

.copyright p {
	margin: 0;
	color: rgba(255, 255, 255, 0.6);
}

/*--------------------------------------------------------------
# Scroll Top
--------------------------------------------------------------*/
.scroll-top {
	position: fixed;
	bottom: 2rem;
	right: 2rem;
	width: 50px;
	height: 50px;
	background: var(--accent-gradient);
	color: var(--contrast-color);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	box-shadow: var(--shadow-lg);
	transition: all 0.3s ease;
	z-index: 1000;
}

.scroll-top:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow-xl);
	color: var(--contrast-color);
}

/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
#preloader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--background-color);
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
}

#preloader::before {
	content: '';
	width: 50px;
	height: 50px;
	border: 4px solid var(--border-color);
	border-top: 4px solid var(--accent-color);
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/*--------------------------------------------------------------
# Cookie Popup
--------------------------------------------------------------*/
#cookie-popup {
	position: fixed;
	bottom: 2rem;
	left: 2rem;
	right: 2rem;
	background: var(--surface-color);
	border: 1px solid var(--border-color);
	border-radius: 16px;
	padding: 1.5rem;
	box-shadow: var(--shadow-xl);
	z-index: 1000;
	display: none;
	max-width: 500px;
	margin: 0 auto;
}

.popup-content {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.popup-message {
	flex: 1;
}

.popup-message p {
	margin: 0;
	color: var(--default-color);
	font-size: 0.875rem;
	line-height: 1.5;
}

.popup-message a {
	color: var(--accent-color);
	text-decoration: underline;
}

.popup-content button {
	background: var(--accent-gradient);
	color: var(--contrast-color);
	border: none;
	padding: 0.75rem 1.5rem;
	border-radius: 8px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
}

.popup-content button:hover {
	transform: translateY(-2px);
	box-shadow: var(--shadow-md);
}

/*--------------------------------------------------------------
# Responsive Design
--------------------------------------------------------------*/
@media (max-width: 768px) {
	.hero h2 {
		font-size: 2.5rem;
	}

	.growth h2 {
		font-size: 2.5rem;
	}

	.section-title h2 {
		font-size: 2rem;
	}

	.navmenu ul {
		flex-direction: column;
		gap: 1rem;
	}

	.popup-content {
		flex-direction: column;
		text-align: center;
	}

	#cookie-popup {
		left: 1rem;
		right: 1rem;
	}
}

@media (max-width: 576px) {
	.hero {
		padding: 4rem 0;
	}

	.hero h2 {
		font-size: 2rem;
	}

	.growth {
		padding: 4rem 0;
	}

	.growth h2 {
		font-size: 2rem;
	}

	.technology-card,
	.icon-box,
	.testimonial-card {
		padding: 1.5rem;
	}

	.faq-item {
		padding: 1rem 1.5rem;
	}

	.faq-content {
		padding: 0 1.5rem 1rem;
	}
}

/*--------------------------------------------------------------
# Utility Classes
--------------------------------------------------------------*/
.text-center {
	text-align: center;
}
.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}

.mb-0 {
	margin-bottom: 0;
}
.mb-1 {
	margin-bottom: 0.25rem;
}
.mb-2 {
	margin-bottom: 0.5rem;
}
.mb-3 {
	margin-bottom: 1rem;
}
.mb-4 {
	margin-bottom: 1.5rem;
}
.mb-5 {
	margin-bottom: 3rem;
}

.mt-0 {
	margin-top: 0;
}
.mt-1 {
	margin-top: 0.25rem;
}
.mt-2 {
	margin-top: 0.5rem;
}
.mt-3 {
	margin-top: 1rem;
}
.mt-4 {
	margin-top: 1.5rem;
}
.mt-5 {
	margin-top: 3rem;
}

.p-0 {
	padding: 0;
}
.p-1 {
	padding: 0.25rem;
}
.p-2 {
	padding: 0.5rem;
}
.p-3 {
	padding: 1rem;
}
.p-4 {
	padding: 1.5rem;
}
.p-5 {
	padding: 3rem;
}

.d-flex {
	display: flex;
}
.d-block {
	display: block;
}
.d-none {
	display: none;
}

.align-items-center {
	align-items: center;
}
.justify-content-center {
	justify-content: center;
}
.justify-content-between {
	justify-content: space-between;
}

.w-100 {
	width: 100%;
}
.h-100 {
	height: 100%;
}

.position-relative {
	position: relative;
}
.position-absolute {
	position: absolute;
}

.overflow-hidden {
	overflow: hidden;
}

.border-radius {
	border-radius: 8px;
}
.border-radius-lg {
	border-radius: 16px;
}
.border-radius-xl {
	border-radius: 20px;
}

.shadow-sm {
	box-shadow: var(--shadow-sm);
}
.shadow-md {
	box-shadow: var(--shadow-md);
}
.shadow-lg {
	box-shadow: var(--shadow-lg);
}
.shadow-xl {
	box-shadow: var(--shadow-xl);
}

/*--------------------------------------------------------------
# New Components
--------------------------------------------------------------*/

/* Text Gradient */
.text-gradient {
	background: var(--accent-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* Method Cards */
.method-card {
	background: var(--surface-color);
	border-radius: 20px;
	padding: 2.5rem;
	text-align: center;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
	height: 100%;
}

.method-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--secondary-gradient);
	transform: scaleX(0);
	transition: transform 0.3s ease;
}

.method-card:hover {
	transform: translateY(-10px);
	box-shadow: var(--shadow-xl);
	border-color: var(--secondary-color);
}

.method-card:hover::before {
	transform: scaleX(1);
}

.method-icon {
	width: 80px;
	height: 80px;
	background: var(--secondary-gradient);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 2rem;
	transition: all 0.3s ease;
}

.method-card:hover .method-icon {
	transform: scale(1.1) rotate(5deg);
}

.method-icon i {
	font-size: 2rem;
	color: var(--contrast-color);
}

.method-card h4 {
	font-size: 1.5rem;
	margin-bottom: 1rem;
	color: var(--heading-color);
}

.method-card p {
	color: var(--text-muted);
	margin-bottom: 1.5rem;
	line-height: 1.6;
}

.method-features {
	list-style: none;
	padding: 0;
	margin: 0;
}

.method-features li {
	padding: 0.5rem 0;
	color: var(--default-color);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
}

.method-features i {
	color: var(--success-color);
	font-size: 1.125rem;
}

/* Feature Cards */
.feature-card {
	background: var(--surface-color);
	border-radius: 16px;
	padding: 2rem;
	text-align: center;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
	height: 100%;
}

.feature-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--accent-gradient);
	transform: scaleX(0);
	transition: transform 0.3s ease;
}

.feature-card:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow-lg);
	border-color: var(--accent-color);
}

.feature-card:hover::before {
	transform: scaleX(1);
}

.feature-icon {
	width: 60px;
	height: 60px;
	background: var(--accent-gradient);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 1.5rem;
	transition: all 0.3s ease;
}

.feature-card:hover .feature-icon {
	transform: scale(1.1);
}

.feature-icon i {
	font-size: 1.5rem;
	color: var(--contrast-color);
}

.feature-card h4 {
	font-size: 1.25rem;
	margin-bottom: 1rem;
	color: var(--heading-color);
}

.feature-card p {
	color: var(--text-muted);
	line-height: 1.6;
}

/* Testimonial Cards */
.testimonial-card {
	background: var(--surface-color);
	border-radius: 20px;
	padding: 2.5rem;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
	height: 100%;
	position: relative;
	overflow: hidden;
}

.testimonial-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--secondary-gradient);
	transform: scaleX(0);
	transition: transform 0.3s ease;
}

.testimonial-card:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow-lg);
	border-color: var(--secondary-color);
}

.testimonial-card:hover::before {
	transform: scaleX(1);
}

.testimonial-content {
	margin-bottom: 2rem;
}

.stars {
	color: #fbbf24;
	font-size: 1.125rem;
}

.testimonial-text {
	color: var(--default-color);
	line-height: 1.6;
	font-style: italic;
	position: relative;
	padding-left: 1.5rem;
}

.testimonial-text::before {
	content: '"';
	position: absolute;
	left: 0;
	top: -10px;
	font-size: 3rem;
	color: var(--accent-color);
	font-family: serif;
	line-height: 1;
}

.testimonial-author {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.author-avatar {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	overflow: hidden;
}

.author-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.author-info h5 {
	margin: 0;
	font-size: 1rem;
	color: var(--heading-color);
}

.author-info span {
	color: var(--text-muted);
	font-size: 0.875rem;
}

/* CTA Section */
.cta-section {
	background: var(--accent-gradient);
	color: var(--contrast-color);
	padding: 6rem 0;
	position: relative;
	overflow: hidden;
}

.cta-content {
	position: relative;
	z-index: 2;
}

.cta-section h2 {
	color: var(--contrast-color);
	font-size: 3rem;
	font-weight: 900;
	margin-bottom: 2rem;
	text-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.cta-section p {
	font-size: 1.25rem;
	margin-bottom: 3rem;
	opacity: 0.95;
}

.cta-section .btn {
	padding: 1rem 2rem;
	font-size: 1.125rem;
	font-weight: 600;
	border-radius: 50px;
	transition: all 0.3s ease;
}

.cta-section .btn-primary {
	background: var(--contrast-color);
	color: var(--accent-color);
	border: none;
	box-shadow: var(--shadow-lg);
}

.cta-section .btn-primary:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow-xl);
	color: var(--accent-color);
}

.cta-section .btn-outline-light {
	border: 2px solid var(--contrast-color);
	color: var(--contrast-color);
	background: transparent;
}

.cta-section .btn-outline-light:hover {
	background: var(--contrast-color);
	color: var(--accent-color);
	transform: translateY(-3px);
	box-shadow: var(--shadow-lg);
}

/* Contact Info */
.contact-info {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.info-item {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding: 1.5rem;
	background: var(--surface-color);
	border-radius: 16px;
	border: 1px solid var(--border-color);
	transition: all 0.3s ease;
}

.info-item:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow-md);
	border-color: var(--accent-color);
}

.info-icon {
	width: 50px;
	height: 50px;
	background: var(--accent-gradient);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	position: relative;
}

.info-icon i {
	font-size: 1.25rem;
	color: var(--contrast-color);
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.info-content h5 {
	margin: 0 0 0.5rem 0;
	font-size: 1.125rem;
	color: var(--heading-color);
}

.info-content p {
	margin: 0;
	color: var(--text-muted);
	line-height: 1.5;
}

/* Footer */
.footer {
	background: var(--heading-color);
	color: var(--contrast-color);
	padding: 4rem 0 2rem;
}

.footer-top {
	margin-bottom: 2rem;
}

.footer-widget h4,
.footer-widget h5 {
	color: var(--contrast-color);
	margin-bottom: 1.5rem;
}

.footer-widget p {
	color: rgba(255, 255, 255, 0.8);
	line-height: 1.6;
	margin-bottom: 1rem;
}

.footer-links {
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer-links li {
	margin-bottom: 0.5rem;
}

.footer-links a {
	color: rgba(255, 255, 255, 0.8);
	transition: color 0.3s ease;
	text-decoration: none;
}

.footer-links a:hover {
	color: var(--accent-color);
}

.social-links {
	display: flex;
	gap: 1rem;
}

.social-links a {
	width: 40px;
	height: 40px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--contrast-color);
	transition: all 0.3s ease;
}

.social-links a:hover {
	background: var(--accent-color);
	transform: translateY(-3px);
}

.newsletter-form {
	display: flex;
	gap: 0.5rem;
	margin-top: 1rem;
}

.newsletter-form .form-control {
	flex: 1;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);
	color: var(--contrast-color);
}

.newsletter-form .form-control::placeholder {
	color: rgba(255, 255, 255, 0.7);
}

.newsletter-form .btn {
	padding: 0.5rem 1rem;
	font-size: 0.875rem;
}

.footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding-top: 2rem;
}

.footer-bottom p {
	margin: 0;
	color: rgba(255, 255, 255, 0.6);
}

/* Section Headers */
.section-header h2 {
	position: relative;
	margin-bottom: 1rem;
}

.section-header h2::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 80px;
	height: 4px;
	background: var(--accent-gradient);
	border-radius: 2px;
	transform: translateX(-50%);
}

/* Button Styles */
.btn {
	border-radius: 12px;
	font-weight: 600;
	transition: all 0.3s ease;
	border: none;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
}

.btn-primary {
	background: var(--accent-gradient);
	color: var(--contrast-color);
	box-shadow: var(--shadow-md);
}

.btn-primary:hover {
	transform: translateY(-2px);
	box-shadow: var(--shadow-lg);
	color: var(--contrast-color);
}

.btn-outline-primary {
	background: transparent;
	color: var(--accent-color);
	border: 2px solid var(--accent-color);
}

.btn-outline-primary:hover {
	background: var(--accent-color);
	color: var(--contrast-color);
	transform: translateY(-2px);
	box-shadow: var(--shadow-md);
}

.btn-lg {
	padding: 1rem 2rem;
	font-size: 1.125rem;
}

/* Animation Classes */
.fade-in {
	animation: fadeIn 0.6s ease-in;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.slide-up {
	animation: slideUp 0.6s ease-out;
}

@keyframes slideUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.scale-in {
	animation: scaleIn 0.6s ease-out;
}

@keyframes scaleIn {
	from {
		opacity: 0;
		transform: scale(0.9);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}

/* Additional Utility Classes */
.rounded-4 {
	border-radius: 1rem;
}
.rounded-5 {
	border-radius: 1.5rem;
}

.gap-1 {
	gap: 0.25rem;
}
.gap-2 {
	gap: 0.5rem;
}
.gap-3 {
	gap: 1rem;
}
.gap-4 {
	gap: 1.5rem;
}
.gap-5 {
	gap: 3rem;
}

/*--------------------------------------------------------------
# Sonnenlenken Custom Styles
--------------------------------------------------------------*/

:root {
	--sl-bg: #0a0e27; /* Deep Dark Blue */
	--sl-bg-soft: #1e1b4b; /* Dark Indigo */
	--sl-surface: #312e81; /* Indigo Surface */
	--sl-accent: #6366f1; /* Indigo Accent */
	--sl-accent-2: #ec4899; /* Pink Accent */
	--sl-text: #e0e7ff; /* Light Indigo */
	--sl-text-dim: #c7d2fe; /* Muted Indigo */
	--sl-outline: rgba(99, 102, 241, 0.3);
}

/* Reset and base styles for Sonnenlenken */
* {
	box-sizing: border-box;
}

body {
	font-family:
		'PT Sans Narrow',
		system-ui,
		-apple-system,
		Segoe UI,
		Roboto,
		Helvetica,
		Arial,
		sans-serif;
	background: var(--sl-bg);
	color: var(--sl-text);
	margin: 0;
	padding: 0;
	line-height: 1.6;
}

/* Ensure main content is visible */
main {
	display: block;
	position: relative;
	z-index: 1;
	min-height: 100vh;
}

/* Ensure all sections are visible */
section {
	display: block;
	width: 100%;
}

/* Ensure all text elements are visible */
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
div,
a,
button {
	display: block;
	color: var(--sl-text);
}

/* Inline elements */
span,
a,
button,
i {
	display: inline-block;
}

/* Flex containers */
.d-flex {
	display: flex !important;
}

.flex-wrap {
	flex-wrap: wrap;
}

.flex-column {
	flex-direction: column;
}

.align-items-center {
	align-items: center;
}

.justify-content-between {
	justify-content: space-between;
}

.justify-content-center {
	justify-content: center;
}

/* Grid system */
.container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
}

.row {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px;
}

.col-lg-6,
.col-lg-4,
.col-lg-8,
.col-md-6,
.col-6,
.col-12 {
	padding: 0 15px;
	flex: 1;
}

.col-lg-6 {
	flex: 0 0 50%;
}
.col-lg-4 {
	flex: 0 0 33.333%;
}
.col-lg-8 {
	flex: 0 0 66.666%;
}
.col-6 {
	flex: 0 0 50%;
}
.col-12 {
	flex: 0 0 100%;
}

/* Responsive */
@media (max-width: 768px) {
	.col-lg-6,
	.col-lg-4,
	.col-lg-8 {
		flex: 0 0 100%;
	}
}

/* Sonnenlenken Header - DEPRECATED, use .kursiom-header instead */

.sl-logo {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	color: var(--sl-text);
}

.sl-logo-dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--sl-accent);
	box-shadow: 0 0 20px var(--sl-accent);
}

.sl-logo-text {
	letter-spacing: 1.5px;
	text-transform: uppercase;
	font-weight: 400;
}

.sl-nav a {
	color: var(--sl-text-dim);
	text-decoration: none;
	padding: 0.5rem 1rem;
	border-radius: 8px;
	transition: all 0.3s ease;
}

.sl-nav a:hover {
	color: var(--sl-text);
	background: rgba(255, 209, 102, 0.1);
}

.kursiom-hero {
	position: relative;
	padding: 8rem 0 6rem;
	overflow: hidden;
	background: linear-gradient(180deg, #27160a 0%, #150905 100%);
	min-height: 90vh;
	display: flex;
	align-items: center;
}

.kursiom-hero-background {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
	pointer-events: none;
}

.kursiom-hero-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: 0.6;
	animation: float 20s ease-in-out infinite;
	pointer-events: none;
}

.kursiom-hero-orb-1 {
	width: 600px;
	height: 600px;
	background: radial-gradient(
		circle,
		rgba(99, 102, 241, 0.4) 0%,
		rgba(99, 102, 241, 0.1) 50%,
		transparent 70%
	);
	top: -200px;
	right: -150px;
	animation-delay: 0s;
}

.kursiom-hero-orb-2 {
	width: 500px;
	height: 500px;
	background: radial-gradient(
		circle,
		rgba(139, 92, 246, 0.3) 0%,
		rgba(139, 92, 246, 0.1) 50%,
		transparent 70%
	);
	bottom: -150px;
	left: -100px;
	animation-delay: 5s;
}

.kursiom-hero-orb-3 {
	width: 400px;
	height: 400px;
	background: radial-gradient(
		circle,
		rgba(236, 72, 153, 0.25) 0%,
		rgba(236, 72, 153, 0.1) 50%,
		transparent 70%
	);
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	animation-delay: 10s;
}

@keyframes float {
	0%,
	100% {
		transform: translate(0, 0) scale(1);
	}
	33% {
		transform: translate(30px, -30px) scale(1.1);
	}
	66% {
		transform: translate(-20px, 20px) scale(0.9);
	}
}

.kursiom-hero-content {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem;
	align-items: center;
}

.kursiom-hero-text {
	max-width: 100%;
}

.kursiom-hero-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-bottom: 2rem;
}

.kursiom-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.625rem 1.25rem;
	background: rgba(99, 102, 241, 0.1);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 50px;
	color: var(--sl-text);
	font-size: 0.875rem;
	font-weight: 500;
	backdrop-filter: blur(10px);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-hero-badge i {
	color: var(--sl-accent);
	font-size: 1rem;
}

.kursiom-hero-badge:hover {
	background: rgba(99, 102, 241, 0.15);
	border-color: rgba(99, 102, 241, 0.4);
	transform: translateY(-2px);
}

.kursiom-hero-title {
	font-size: 3.5rem;
	font-weight: 700;
	line-height: 1.1;
	margin-bottom: 1.5rem;
	background: linear-gradient(135deg, #ffffff 0%, #e0e7ff 50%, #c7d2fe 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	letter-spacing: -1px;
}

.kursiom-hero-description {
	font-size: 1.25rem;
	line-height: 1.7;
	color: var(--sl-text-dim);
	margin-bottom: 2.5rem;
	max-width: 90%;
}

.kursiom-hero-cta {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 2rem;
}

.kursiom-hero-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	padding: 1rem 2rem;
	border-radius: 12px;
	font-weight: 600;
	font-size: 1rem;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.kursiom-hero-btn-primary {
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
}

.kursiom-hero-btn-primary::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(255, 255, 255, 0.2),
		transparent
	);
	transition: left 0.5s;
}

.kursiom-hero-btn-primary:hover::before {
	left: 100%;
}

.kursiom-hero-btn-primary:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.5);
}

.kursiom-hero-btn-primary i {
	transition: transform 0.3s;
}

.kursiom-hero-btn-primary:hover i {
	transform: translateX(4px);
}

.kursiom-hero-btn-secondary {
	background: rgba(99, 102, 241, 0.1);
	border: 1px solid rgba(99, 102, 241, 0.3);
	color: var(--sl-text);
	backdrop-filter: blur(10px);
}

.kursiom-hero-btn-secondary:hover {
	background: rgba(99, 102, 241, 0.15);
	border-color: rgba(99, 102, 241, 0.5);
	transform: translateY(-3px);
	color: var(--sl-text);
}

.kursiom-hero-features {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
	margin-top: 1.5rem;
}

.kursiom-hero-feature {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--sl-text-dim);
	font-size: 0.9375rem;
}

.kursiom-hero-feature i {
	color: var(--sl-accent);
	font-size: 1.125rem;
}

.kursiom-hero-image {
	position: relative;
}

.kursiom-hero-image-wrapper {
	position: relative;
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
}

.kursiom-hero-image-glow {
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(
		circle,
		rgba(99, 102, 241, 0.3) 0%,
		transparent 70%
	);
	animation: pulse 4s ease-in-out infinite;
	pointer-events: none;
}

@keyframes pulse {
	0%,
	100% {
		opacity: 0.5;
		transform: scale(1);
	}
	50% {
		opacity: 0.8;
		transform: scale(1.1);
	}
}

.kursiom-hero-img {
	width: 100%;
	height: auto;
	display: block;
	position: relative;
	z-index: 1;
	border-radius: 24px;
}

.kursiom-kurse {
	padding: 6rem 0;
	background: linear-gradient(180deg, #d1a68e 0%, #a18197 100%);
	position: relative;
}

.kursiom-kurse-header {
	text-align: center;
	margin-bottom: 4rem;
}

.kursiom-kurse-title {
	font-size: 3rem;
	font-weight: 700;
	margin-bottom: 1rem;
	background: linear-gradient(135deg, #ffffff 0%, #e0e7ff 50%, #c7d2fe 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.kursiom-kurse-subtitle {
	font-size: 1.25rem;
	color: var(--sl-text-dim);
	max-width: 600px;
	margin: 0 auto;
}

.kursiom-kurse-table-wrapper {
	margin-bottom: 4rem;
}

.kursiom-kurse-table-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2rem;
	overflow: hidden;
}

.kursiom-kurse-table {
	display: grid;
	gap: 0;
}

.kursiom-kurse-table-header {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr 1.5fr 1fr;
	gap: 1rem;
	padding: 1.5rem 1rem;
	border-bottom: 2px solid rgba(99, 102, 241, 0.3);
	margin-bottom: 0;
}

.kursiom-kurse-table-row {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr 1.5fr 1fr;
	gap: 1rem;
	padding: 1.5rem 1rem;
	border-bottom: 1px solid rgba(99, 102, 241, 0.1);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-kurse-table-row:last-of-type {
	border-bottom: none;
}

.kursiom-kurse-table-row:hover {
	background: rgba(99, 102, 241, 0.05);
	transform: translateX(4px);
}

.kursiom-kurse-table-cell {
	display: flex;
	align-items: center;
	color: var(--sl-text);
	font-size: 0.9375rem;
}

.kursiom-kurse-table-cell-header {
	color: var(--sl-text);
	font-weight: 700;
	font-size: 0.875rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.kursiom-kurse-table-course {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.kursiom-kurse-table-course strong {
	color: var(--sl-text);
	font-size: 1rem;
}

.kursiom-kurse-table-course small {
	color: var(--sl-text-dim);
	font-size: 0.875rem;
}

.kursiom-kurse-table-price {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.kursiom-kurse-table-price strong {
	color: var(--sl-accent);
	font-size: 1.25rem;
	font-weight: 700;
}

.kursiom-kurse-table-price small {
	color: var(--sl-text-dim);
	font-size: 0.875rem;
}

.kursiom-kurse-table-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.625rem 1.25rem;
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	border-radius: 8px;
	text-decoration: none;
	font-weight: 600;
	font-size: 0.875rem;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-kurse-table-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(99, 102, 241, 0.4);
	color: #ffffff;
}

.kursiom-kurse-bonus {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-top: 1.5rem;
	padding: 1.5rem;
	background: rgba(99, 102, 241, 0.1);
	border-left: 4px solid var(--sl-accent);
	border-radius: 12px;
}

.kursiom-kurse-bonus i {
	font-size: 1.5rem;
	color: var(--sl-accent);
	flex-shrink: 0;
}

.kursiom-kurse-bonus strong {
	color: var(--sl-text);
}

.kursiom-kurse-bonus div {
	color: var(--sl-text);
	line-height: 1.6;
}

.kursiom-kurse-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.kursiom-kurse-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2rem;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	display: flex;
	flex-direction: column;
	height: 100%;
}

.kursiom-kurse-card:hover {
	transform: translateY(-8px);
	border-color: rgba(99, 102, 241, 0.4);
	box-shadow: 0 20px 40px rgba(99, 102, 241, 0.2);
}

.kursiom-kurse-card-icon {
	width: 64px;
	height: 64px;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.2) 0%,
		rgba(139, 92, 246, 0.2) 50%,
		rgba(236, 72, 153, 0.2) 100%
	);
	border: 1px solid rgba(99, 102, 241, 0.3);
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.5rem;
	font-size: 1.75rem;
	color: var(--sl-accent);
}

.kursiom-kurse-card-title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
}

.kursiom-kurse-card-description {
	color: var(--sl-text-dim);
	line-height: 1.7;
	margin-bottom: 1.5rem;
	flex-grow: 1;
}

.kursiom-kurse-card-features {
	list-style: none;
	padding: 0;
	margin: 0 0 2rem 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.kursiom-kurse-card-features li {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	color: var(--sl-text-dim);
	font-size: 0.9375rem;
}

.kursiom-kurse-card-features li i {
	color: var(--sl-accent);
	font-size: 1rem;
	flex-shrink: 0;
}

.kursiom-kurse-card-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(99, 102, 241, 0.1);
	margin-top: auto;
}

.kursiom-kurse-card-price {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.kursiom-kurse-card-price strong {
	color: var(--sl-accent);
	font-size: 1.5rem;
	font-weight: 700;
}

.kursiom-kurse-card-price small {
	color: var(--sl-text-dim);
	font-size: 0.875rem;
}

.kursiom-kurse-card-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.75rem 1.5rem;
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	border-radius: 10px;
	text-decoration: none;
	font-weight: 600;
	font-size: 0.9375rem;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-kurse-card-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
	color: #ffffff;
}

/* Responsive Design */
@media (max-width: 1200px) {
	.kursiom-hero-content {
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.kursiom-hero-image {
		order: -1;
	}

	.kursiom-kurse-table-header,
	.kursiom-kurse-table-row {
		grid-template-columns: 2fr 1fr 1fr 1.5fr 1fr;
	}

	.kursiom-kurse-table-cell:nth-child(3) {
		display: none;
	}

	.kursiom-kurse-cards {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 991px) {
	.kursiom-hero {
		padding: 6rem 0 4rem;
		min-height: auto;
	}

	.kursiom-hero-title {
		font-size: 2.5rem;
	}

	.kursiom-kurse {
		padding: 4rem 0;
	}

	.kursiom-kurse-title {
		font-size: 2.25rem;
	}

	.kursiom-kurse-table-header,
	.kursiom-kurse-table-row {
		grid-template-columns: 1fr;
		gap: 0.75rem;
	}

	.kursiom-kurse-table-cell-header {
		display: block;
		margin-bottom: 0.5rem;
	}

	.kursiom-kurse-cards {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.kursiom-hero-title {
		font-size: 2rem;
	}

	.kursiom-hero-description {
		font-size: 1.125rem;
	}

	.kursiom-hero-cta {
		flex-direction: column;
	}

	.kursiom-hero-btn {
		width: 100%;
		justify-content: center;
	}

	.kursiom-kurse-title {
		font-size: 1.875rem;
	}

	.kursiom-kurse-table-card {
		padding: 1.5rem;
	}
}

.kursiom-vorteile {
	padding: 6rem 0;
	background: linear-gradient(180deg, #27170a 0%, #949e87 100%);
	position: relative;
	overflow: hidden;
}

.kursiom-vorteile::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(99, 102, 241, 0.3),
		transparent
	);
}

.kursiom-vorteile-header {
	text-align: center;
	margin-bottom: 4rem;
}

.kursiom-vorteile-title {
	font-size: 3rem;
	font-weight: 700;
	margin-bottom: 1rem;
	background: linear-gradient(135deg, #ffffff 0%, #e0e7ff 50%, #c7d2fe 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.kursiom-vorteile-subtitle {
	font-size: 1.25rem;
	color: var(--sl-text-dim);
	max-width: 600px;
	margin: 0 auto;
}

.kursiom-vorteile-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	margin-bottom: 4rem;
}

.kursiom-vorteile-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2.5rem;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.kursiom-vorteile-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, #6366f1, #8b5cf6, #ec4899);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-vorteile-card:hover::before {
	transform: scaleX(1);
}

.kursiom-vorteile-card:hover {
	transform: translateY(-8px);
	border-color: rgba(99, 102, 241, 0.4);
	box-shadow: 0 20px 40px rgba(99, 102, 241, 0.2);
}

.kursiom-vorteile-card-icon {
	width: 72px;
	height: 72px;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.2) 0%,
		rgba(139, 92, 246, 0.2) 50%,
		rgba(236, 72, 153, 0.2) 100%
	);
	border: 1px solid rgba(99, 102, 241, 0.3);
	border-radius: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.5rem;
	font-size: 2rem;
	color: var(--sl-accent);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.kursiom-vorteile-card-icon::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 50%;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.3),
		rgba(139, 92, 246, 0.3),
		rgba(236, 72, 153, 0.3)
	);
	transform: translate(-50%, -50%);
	transition:
		width 0.4s,
		height 0.4s;
	z-index: 0;
}

.kursiom-vorteile-card:hover .kursiom-vorteile-card-icon::before {
	width: 100%;
	height: 100%;
}

.kursiom-vorteile-card-icon i {
	position: relative;
	z-index: 1;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-vorteile-card:hover .kursiom-vorteile-card-icon i {
	transform: scale(1.1) rotate(5deg);
}

.kursiom-vorteile-card-title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
	line-height: 1.3;
}

.kursiom-vorteile-card-description {
	color: var(--sl-text-dim);
	line-height: 1.7;
	font-size: 1rem;
}

.kursiom-vorteile-cta {
	margin-top: 3rem;
}

.kursiom-vorteile-cta-content {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 24px;
	padding: 3rem;
	display: flex;
	flex-direction: column;
	gap: 2rem;
	align-items: center;
	text-align: center;
	position: relative;
	overflow: hidden;
}

.kursiom-vorteile-cta-content::before {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(
		circle,
		rgba(99, 102, 241, 0.1) 0%,
		transparent 70%
	);
	animation: pulse 4s ease-in-out infinite;
	pointer-events: none;
}

.kursiom-vorteile-cta-text {
	position: relative;
	z-index: 1;
}

.kursiom-vorteile-cta-title {
	font-size: 1.75rem;
	font-weight: 700;
	margin-bottom: 0.75rem;
	color: var(--sl-text);
}

.kursiom-vorteile-cta-description {
	color: var(--sl-text-dim);
	font-size: 1.125rem;
	max-width: 600px;
	margin: 0 auto;
}

.kursiom-vorteile-cta-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: center;
	position: relative;
	z-index: 1;
}

.kursiom-vorteile-cta-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	padding: 1rem 2rem;
	border-radius: 12px;
	font-weight: 600;
	font-size: 1rem;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.kursiom-vorteile-cta-btn-primary {
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
}

.kursiom-vorteile-cta-btn-primary::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(255, 255, 255, 0.2),
		transparent
	);
	transition: left 0.5s;
}

.kursiom-vorteile-cta-btn-primary:hover::before {
	left: 100%;
}

.kursiom-vorteile-cta-btn-primary:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.5);
	color: #ffffff;
}

.kursiom-vorteile-cta-btn-primary i {
	transition: transform 0.3s;
}

.kursiom-vorteile-cta-btn-primary:hover i {
	transform: translateY(-3px);
}

.kursiom-vorteile-cta-btn-secondary {
	background: rgba(99, 102, 241, 0.1);
	border: 1px solid rgba(99, 102, 241, 0.3);
	color: var(--sl-text);
	backdrop-filter: blur(10px);
}

.kursiom-vorteile-cta-btn-secondary:hover {
	background: rgba(99, 102, 241, 0.15);
	border-color: rgba(99, 102, 241, 0.5);
	transform: translateY(-3px);
	color: var(--sl-text);
}

.kursiom-stimmen {
	padding: 6rem 0;
	background: linear-gradient(180deg, #cfc1ca 0%, #27140a 100%);
	position: relative;
	overflow: hidden;
}

.kursiom-stimmen::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(99, 102, 241, 0.3),
		transparent
	);
}

.kursiom-stimmen-header {
	text-align: center;
	margin-bottom: 4rem;
}

.kursiom-stimmen-title {
	font-size: 3rem;
	font-weight: 700;
	margin-bottom: 1rem;
	background: linear-gradient(135deg, #ffffff 0%, #e0e7ff 50%, #c7d2fe 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.kursiom-stimmen-subtitle {
	font-size: 1.25rem;
	color: var(--sl-text-dim);
	max-width: 600px;
	margin: 0 auto;
}

.kursiom-stimmen-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.kursiom-stimmen-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 24px;
	padding: 2.5rem;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.kursiom-stimmen-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.05) 0%,
		rgba(139, 92, 246, 0.05) 50%,
		rgba(236, 72, 153, 0.05) 100%
	);
	opacity: 0;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: none;
}

.kursiom-stimmen-card:hover::before {
	opacity: 1;
}

.kursiom-stimmen-card:hover {
	transform: translateY(-8px);
	border-color: rgba(99, 102, 241, 0.4);
	box-shadow: 0 20px 40px rgba(99, 102, 241, 0.2);
}

.kursiom-stimmen-stars {
	display: flex;
	gap: 0.25rem;
	margin-bottom: 1.5rem;
	color: var(--sl-accent);
	font-size: 1.125rem;
}

.kursiom-stimmen-stars i {
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-stimmen-card:hover .kursiom-stimmen-stars i {
	transform: scale(1.2);
	animation: starPulse 0.6s ease-in-out;
}

.kursiom-stimmen-card:hover .kursiom-stimmen-stars i:nth-child(1) {
	animation-delay: 0s;
}
.kursiom-stimmen-card:hover .kursiom-stimmen-stars i:nth-child(2) {
	animation-delay: 0.1s;
}
.kursiom-stimmen-card:hover .kursiom-stimmen-stars i:nth-child(3) {
	animation-delay: 0.2s;
}
.kursiom-stimmen-card:hover .kursiom-stimmen-stars i:nth-child(4) {
	animation-delay: 0.3s;
}
.kursiom-stimmen-card:hover .kursiom-stimmen-stars i:nth-child(5) {
	animation-delay: 0.4s;
}

@keyframes starPulse {
	0%,
	100% {
		transform: scale(1.2);
	}
	50% {
		transform: scale(1.4);
	}
}

.kursiom-stimmen-quote {
	position: absolute;
	top: 2rem;
	right: 2rem;
	width: 48px;
	height: 48px;
	background: rgba(99, 102, 241, 0.1);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--sl-accent);
	font-size: 1.5rem;
	opacity: 0.5;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-stimmen-card:hover .kursiom-stimmen-quote {
	opacity: 1;
	transform: rotate(15deg) scale(1.1);
}

.kursiom-stimmen-text {
	color: var(--sl-text);
	line-height: 1.8;
	font-size: 1.0625rem;
	margin-bottom: 2rem;
	flex-grow: 1;
	position: relative;
	z-index: 1;
	font-style: italic;
}

.kursiom-stimmen-author {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(99, 102, 241, 0.1);
	position: relative;
	z-index: 1;
}

.kursiom-stimmen-avatar {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid rgba(99, 102, 241, 0.3);
	flex-shrink: 0;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-stimmen-card:hover .kursiom-stimmen-avatar {
	border-color: rgba(99, 102, 241, 0.6);
	transform: scale(1.05);
}

.kursiom-stimmen-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-stimmen-card:hover .kursiom-stimmen-avatar img {
	transform: scale(1.1);
}

.kursiom-stimmen-author-info {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.kursiom-stimmen-author-name {
	color: var(--sl-text);
	font-size: 1rem;
	font-weight: 600;
}

.kursiom-stimmen-author-role {
	color: var(--sl-text-dim);
	font-size: 0.875rem;
}

/* Responsive Design for Vorteile and Stimmen */
@media (max-width: 1200px) {
	.kursiom-vorteile-grid,
	.kursiom-stimmen-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.kursiom-vorteile-cta-content {
		padding: 2.5rem;
	}
}

@media (max-width: 991px) {
	.kursiom-vorteile {
		padding: 4rem 0;
	}

	.kursiom-vorteile-title,
	.kursiom-stimmen-title {
		font-size: 2.25rem;
	}

	.kursiom-vorteile-grid,
	.kursiom-stimmen-grid {
		grid-template-columns: 1fr;
	}

	.kursiom-vorteile-cta-content {
		padding: 2rem;
	}

	.kursiom-vorteile-cta-buttons {
		flex-direction: column;
		width: 100%;
	}

	.kursiom-vorteile-cta-btn {
		width: 100%;
		justify-content: center;
	}
}

@media (max-width: 767px) {
	.kursiom-vorteile-title,
	.kursiom-stimmen-title {
		font-size: 1.875rem;
	}

	.kursiom-vorteile-subtitle,
	.kursiom-stimmen-subtitle {
		font-size: 1.125rem;
	}

	.kursiom-vorteile-card,
	.kursiom-stimmen-card {
		padding: 2rem;
	}

	.kursiom-vorteile-card-icon {
		width: 64px;
		height: 64px;
		font-size: 1.75rem;
	}

	.kursiom-vorteile-cta-title {
		font-size: 1.5rem;
	}

	.kursiom-vorteile-cta-description {
		font-size: 1rem;
	}
}

/* Sonnenlenken CTA Band */
.sl-cta-band {
	background: linear-gradient(
		90deg,
		rgba(255, 209, 102, 0.12),
		rgba(239, 71, 111, 0.1)
	);
	border: 1px solid var(--sl-outline);
	border-radius: 20px;
	padding: 28px;
}

/* Sonnenlenken Contact */
.sl-contact .form-control {
	background: rgba(28, 37, 65, 0.6);
	border: 1px solid var(--sl-outline);
	color: var(--sl-text);
	padding: 1rem;
	border-radius: 8px;
	width: 100%;
	margin-bottom: 1rem;
}

.sl-contact .form-control::placeholder {
	color: #a9b6c3;
}

/* Sonnenlenken Footer - DEPRECATED, use .kursiom-footer instead */

.sl-copy {
	color: var(--sl-text-dim);
}

/* Utility classes */
.mb-3 {
	margin-bottom: 1rem;
}
.mb-4 {
	margin-bottom: 1.5rem;
}
.mt-2 {
	margin-top: 0.5rem;
}
.py-2 {
	padding: 0.5rem 0;
}
.gy-4 > * {
	margin-bottom: 1.5rem;
}
.gap-2 {
	gap: 0.5rem;
}
.gap-3 {
	gap: 1rem;
}
.gap-4 {
	gap: 1.5rem;
}
.text-center {
	text-align: center;
}
.text-dark {
	color: #ffffff !important;
}
.d-none {
	display: none;
}
.d-md-flex {
	display: none;
}
.d-md-inline-flex {
	display: none;
}
.d-md-none {
	display: block;
}

@media (min-width: 768px) {
	.d-md-flex {
		display: flex;
	}
	.d-md-inline-flex {
		display: inline-flex;
	}
	.d-md-none {
		display: none;
	}
}

/* Button styles */
.btn {
	display: inline-block;
	padding: 0.5rem 1rem;
	border: none;
	border-radius: 8px;
	text-decoration: none;
	font-weight: 600;
	transition: all 0.3s ease;
	cursor: pointer;
}

.btn-sm {
	padding: 0.375rem 0.75rem;
	font-size: 0.875rem;
}

.btn-lg {
	padding: 1rem 2rem;
	font-size: 1.125rem;
}

.btn-warning {
	background: var(--sl-accent);
	color: #ffffff;
}

.btn-outline-light {
	border: 1px solid var(--sl-text);
	color: var(--sl-text);
	background: transparent;
}

.btn-outline-light:hover {
	background: var(--sl-text);
	color: var(--sl-bg);
}

/* Image styles */
.img-fluid {
	max-width: 100%;
	height: auto;
}

.rounded-4 {
	border-radius: 1rem;
}

.shadow {
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* Custom avatar styles */
.sl-avatar {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--sl-outline);
	transition: all 0.3s ease;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.sl-avatar:hover {
	border-color: var(--sl-accent);
	transform: scale(1.05);
	box-shadow: 0 4px 12px rgba(255, 209, 102, 0.2);
}

/* Testimonial avatar specific styling */
.sl-testimonial-avatar {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--sl-outline);
	transition: all 0.3s ease;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
	background: linear-gradient(135deg, var(--sl-accent), var(--sl-accent-2));
	padding: 2px;
}

.sl-testimonial-avatar:hover {
	border-color: var(--sl-accent);
	transform: scale(1.05);
	box-shadow: 0 4px 12px rgba(255, 209, 102, 0.3);
}

.collapse {
	display: none;
}

.collapse.show {
	display: block;
}

/* Links */
a {
	color: var(--sl-accent);
	text-decoration: none;
	transition: all 0.3s ease;
}

a:hover {
	color: #ffdf8e;
	text-decoration: none;
}

/* Scroll top button */
.scroll-top {
	position: fixed;
	bottom: 2rem;
	right: 2rem;
	width: 50px;
	height: 50px;
	background: var(--sl-accent);
	color: #ffffff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	box-shadow: 0 4px 6px rgba(99, 102, 241, 0.3);
	transition: all 0.3s ease;
	z-index: 1000;
}

.scroll-top:hover {
	transform: translateY(-3px);
	box-shadow: 0 6px 12px rgba(99, 102, 241, 0.5);
	color: #ffffff;
}

/*--------------------------------------------------------------
# Page-specific Styles
--------------------------------------------------------------*/

/* Content pages styling */
.sl-page-content {
	padding: 80px 0;
}

.sl-page-content .sl-card {
	max-width: 800px;
	margin: 0 auto;
}

.sl-page-content h2 {
	color: var(--sl-text);
	font-size: 2rem;
	margin-bottom: 1.5rem;
	border-bottom: 2px solid var(--sl-accent);
	padding-bottom: 0.5rem;
}

.sl-page-content h3 {
	color: var(--sl-text);
	font-size: 1.5rem;
	margin: 2rem 0 1rem 0;
}

.sl-page-content h4 {
	color: var(--sl-text);
	font-size: 1.25rem;
	margin: 1.5rem 0 0.75rem 0;
}

.sl-page-content p {
	color: var(--sl-text-dim);
	line-height: 1.7;
	margin-bottom: 1rem;
}

.sl-page-content ul,
.sl-page-content ol {
	color: var(--sl-text-dim);
	margin-bottom: 1rem;
	padding-left: 1.5rem;
}

.sl-page-content li {
	margin-bottom: 0.5rem;
	line-height: 1.6;
}

.sl-page-content a {
	color: var(--sl-accent);
	text-decoration: underline;
	transition: all 0.3s ease;
}

.sl-page-content a:hover {
	color: #ffdf8e;
	text-decoration: none;
}

.sl-page-content strong {
	color: var(--sl-text);
	font-weight: 600;
}

/* Section subtitle styling */
.section-sub {
	color: var(--sl-text-dim);
	font-size: 1.125rem;
	margin-bottom: 2rem;
}

/* List styling for legal pages */
.list-unstyled {
	list-style: none;
	padding: 0;
	margin: 0;
}

.list-unstyled li {
	margin-bottom: 0.5rem;
}

.list-unstyled a {
	color: var(--sl-text-dim);
	text-decoration: none;
	transition: color 0.3s ease;
}

.list-unstyled a:hover {
	color: var(--sl-accent);
}

/* Social links styling */
.social-links {
	display: flex;
	gap: 1rem;
}

.social-links a {
	width: 40px;
	height: 40px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--sl-text-dim);
	transition: all 0.3s ease;
	text-decoration: none;
}

.social-links a:hover {
	background: var(--sl-accent);
	color: #2a2a2a;
	transform: translateY(-2px);
}

/* Footer widget styling */
.footer-widget h4,
.footer-widget h5,
.footer-widget h6 {
	color: var(--sl-text);
	margin-bottom: 1rem;
}

.footer-widget p {
	color: var(--sl-text-dim);
	line-height: 1.6;
	margin-bottom: 1rem;
}

/* Responsive adjustments for pages */
@media (max-width: 768px) {
	.sl-page-content {
		padding: 60px 0;
	}

	.sl-page-content h2 {
		font-size: 1.75rem;
	}

	.sl-page-content h3 {
		font-size: 1.25rem;
	}

	.sl-page-content .sl-card {
		padding: 1.5rem;
	}
}

.sl-logo {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	color: var(--sl-text);
}

.sl-logo-dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--sl-accent);
	box-shadow: 0 0 20px var(--sl-accent);
}

.sl-logo-text {
	letter-spacing: 1.5px;
	text-transform: uppercase;
	font-weight: 400;
}

.sl-nav a {
	color: var(--sl-text-dim);
	text-decoration: none;
}

.sl-nav a:hover {
	color: var(--sl-text);
}

/* Legacy styles for other sections that still use .sl-section and .sl-card */
.sl-section {
	padding: 80px 0;
	border-top: 1px dashed var(--sl-outline);
}

.sl-section h2 {
	font-size: 28px;
	margin-bottom: 8px;
}

.sl-section p.section-sub {
	color: var(--sl-text-dim);
	font-size: 1.125rem;
}

.sl-card {
	background: linear-gradient(
		180deg,
		rgba(58, 80, 107, 0.35),
		rgba(28, 37, 65, 0.55)
	);
	border: 1px solid var(--sl-outline);
	border-radius: 16px;
	padding: 20px;
	height: 100%;
	transition: all 0.3s ease;
}

.sl-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.sl-icon {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	display: grid;
	place-items: center;
	background: rgba(99, 102, 241, 0.15);
	color: var(--sl-accent);
	font-size: 1.25rem;
}

.sl-cta-band {
	background: linear-gradient(
		90deg,
		rgba(99, 102, 241, 0.12),
		rgba(236, 72, 153, 0.1)
	);
	border: 1px solid var(--sl-outline);
	border-radius: 20px;
	padding: 28px;
}

/* Sonnenlenken CTA Band */
.sl-cta-band {
	background: linear-gradient(
		90deg,
		rgba(255, 209, 102, 0.12),
		rgba(239, 71, 111, 0.1)
	);
	border: 1px solid var(--sl-outline);
	border-radius: 20px;
	padding: 28px;
}

/* Sonnenlenken Contact */
.sl-contact .form-control {
	background: rgba(28, 37, 65, 0.6);
	border: 1px solid var(--sl-outline);
	color: var(--sl-text);
}

.sl-contact .form-control::placeholder {
	color: #a9b6c3;
}

/* Sonnenlenken Footer - DEPRECATED, use .kursiom-footer instead */

.sl-copy {
	color: var(--sl-text-dim);
}

/* Sonnenlenken Preloader */
#preloader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--sl-bg);
	z-index: -1; /* Behind content */
	display: none !important; /* Hidden by default */
	align-items: center;
	justify-content: center;
	transition: opacity 0.5s ease;
}

#preloader.hidden {
	opacity: 0;
	pointer-events: none;
}

#preloader::before {
	content: '';
	width: 50px;
	height: 50px;
	border: 4px solid var(--sl-outline);
	border-top: 4px solid var(--sl-accent);
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* Responsive adjustments for new components */
@media (max-width: 768px) {
	.stat-number {
		font-size: 2.5rem;
	}

	.cta-section h2 {
		font-size: 2.5rem;
	}

	.newsletter-form {
		flex-direction: column;
	}

	.social-links {
		justify-content: center;
	}

	.testimonial-author {
		flex-direction: column;
		text-align: center;
	}
}

@media (max-width: 576px) {
	.method-card,
	.feature-card,
	.testimonial-card {
		padding: 1.5rem;
	}

	.stat-number {
		font-size: 2rem;
	}

	.cta-section {
		padding: 4rem 0;
	}

	.cta-section h2 {
		font-size: 2rem;
	}
}

header.kursiom-header,
.kursiom-header {
	position: sticky;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	background: rgba(39, 19, 10, 0.8);
	backdrop-filter: blur(24px) saturate(180%);
	-webkit-backdrop-filter: blur(24px) saturate(180%);
	border-bottom: 1px solid rgba(99, 102, 241, 0.15);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	width: 100%;
	margin: 0;
	padding: 0;
	display: block;
	box-sizing: border-box;
}

header.kursiom-header.scrolled,
.kursiom-header.scrolled {
	background: rgba(10, 14, 39, 0.95);
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
	border-bottom-color: rgba(99, 102, 241, 0.25);
}

.kursiom-header-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 2rem;
}

.kursiom-header-wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1.25rem 0;
	gap: 2rem;
}

.kursiom-logo-wrapper {
	flex-shrink: 0;
}

.kursiom-logo {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	text-decoration: none;
	color: var(--sl-text);
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-logo:hover {
	transform: translateY(-1px);
}

.kursiom-logo-box {
	width: 44px;
	height: 44px;
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.kursiom-logo-box::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(255, 255, 255, 0.3),
		transparent
	);
	transition: left 0.5s;
}

.kursiom-logo:hover .kursiom-logo-box::before {
	left: 100%;
}

.kursiom-logo:hover .kursiom-logo-box {
	transform: rotate(5deg) scale(1.05);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.6);
}

.kursiom-logo-text {
	font-size: 1.625rem;
	font-weight: 700;
	letter-spacing: -0.5px;
	background: linear-gradient(135deg, #ffffff 0%, #e0e7ff 50%, #c7d2fe 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	line-height: 1;
}

.kursiom-nav {
	display: flex;
	align-items: center;
	gap: 0.25rem;
	flex: 1;
	justify-content: center;
	margin: 0 2rem;
}

.kursiom-nav-item {
	color: var(--sl-text-dim);
	text-decoration: none;
	padding: 0.75rem 1.5rem;
	border-radius: 10px;
	font-size: 0.9375rem;
	font-weight: 500;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.kursiom-nav-item::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%) scaleX(0);
	width: 80%;
	height: 2px;
	background: linear-gradient(90deg, #6366f1, #8b5cf6, #ec4899);
	border-radius: 2px;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-nav-item:hover {
	color: var(--sl-text);
	background: rgba(99, 102, 241, 0.08);
}

.kursiom-nav-item:hover::before {
	transform: translateX(-50%) scaleX(1);
}

.kursiom-header-actions {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-shrink: 0;
}

.kursiom-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.875rem 1.75rem;
	border-radius: 12px;
	font-weight: 600;
	font-size: 0.9375rem;
	text-decoration: none;
	border: none;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.kursiom-btn-primary {
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	box-shadow: 0 4px 16px rgba(99, 102, 241, 0.4);
}

.kursiom-btn-primary::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(255, 255, 255, 0.2),
		transparent
	);
	transition: left 0.5s;
}

.kursiom-btn-primary:hover::before {
	left: 100%;
}

.kursiom-btn-primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.5);
}

.kursiom-btn-primary i {
	transition: transform 0.3s;
}

.kursiom-btn-primary:hover i {
	transform: translateX(3px);
}

.kursiom-menu-toggle {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 44px;
	height: 44px;
	background: rgba(99, 102, 241, 0.1);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 10px;
	cursor: pointer;
	padding: 0;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-menu-toggle:hover {
	background: rgba(99, 102, 241, 0.15);
	border-color: rgba(99, 102, 241, 0.4);
	transform: scale(1.05);
}

.kursiom-menu-icon {
	display: flex;
	flex-direction: column;
	gap: 5px;
	width: 20px;
	position: relative;
	justify-content: center;
	align-items: center;
}

.kursiom-menu-icon span {
	display: block;
	width: 100%;
	height: 2.5px;
	background: var(--sl-text);
	border-radius: 2px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-menu-toggle[aria-expanded='true'] .kursiom-menu-icon {
	display: none;
}

.kursiom-mobile-nav {
	margin-top: 1rem;
	padding: 1.5rem;
	background: rgba(30, 27, 75, 0.95);
	backdrop-filter: blur(20px);
	border-radius: 16px;
	border: 1px solid rgba(99, 102, 241, 0.2);
	margin-bottom: 1rem;
}

.kursiom-mobile-nav-content {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	position: relative;
}

.kursiom-mobile-nav-close {
	position: absolute;
	top: -0.5rem;
	right: -0.5rem;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(99, 102, 241, 0.2);
	border: 1px solid rgba(99, 102, 241, 0.3);
	border-radius: 50%;
	color: var(--sl-text);
	font-size: 1.25rem;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 10;
	padding: 0;
	margin: 0;
}

.kursiom-mobile-nav-close:hover {
	background: rgba(99, 102, 241, 0.3);
	border-color: rgba(99, 102, 241, 0.5);
	transform: rotate(90deg);
}

.kursiom-mobile-nav-item {
	color: var(--sl-text-dim);
	text-decoration: none;
	padding: 1rem 1.25rem;
	border-radius: 10px;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	font-weight: 500;
}

.kursiom-mobile-nav-item i {
	font-size: 1.125rem;
	width: 20px;
	text-align: center;
}

.kursiom-mobile-nav-item:hover {
	color: var(--sl-text);
	background: rgba(99, 102, 241, 0.1);
	transform: translateX(4px);
}

.kursiom-mobile-cta {
	margin-top: 0.5rem;
	justify-content: center;
	width: 100%;
}

footer.kursiom-footer,
.kursiom-footer {
	background: linear-gradient(180deg, #270a27 0%, #150b05 100%);
	border-top: 1px solid rgba(123, 241, 99, 0.15);

	position: relative;
	overflow: hidden;
	width: 100%;
	padding: 0;
	display: block;
	box-sizing: border-box;
}

.kursiom-footer::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(99, 102, 241, 0.5),
		transparent
	);
}

.kursiom-footer-main {
	padding: 5rem 0 3rem;
	position: relative;
	max-width: 1400px;
	margin: 0 auto;
	width: 100%;
}

.kursiom-footer-grid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1.5fr;
	gap: 3rem;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 2rem;
	width: 100%;
}

.kursiom-footer-brand {
	max-width: 320px;
}

.kursiom-footer-logo {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	margin-bottom: 1.5rem;
}

.kursiom-footer-tagline {
	color: var(--sl-text-dim);
	line-height: 1.7;
	margin-bottom: 2rem;
	font-size: 0.9375rem;
}

.kursiom-social {
	display: flex;
	gap: 0.75rem;
	flex-wrap: wrap;
}

.kursiom-social-item {
	width: 44px;
	height: 44px;
	background: rgba(99, 102, 241, 0.08);
	border: 1px solid rgba(99, 102, 241, 0.15);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--sl-text-dim);
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	font-size: 1.125rem;
	position: relative;
	overflow: hidden;
}

.kursiom-social-item::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 50%;
	background: linear-gradient(135deg, #6366f1, #8b5cf6, #ec4899);
	transform: translate(-50%, -50%);
	transition:
		width 0.3s,
		height 0.3s;
	z-index: 0;
}

.kursiom-social-item:hover::before {
	width: 100%;
	height: 100%;
}

.kursiom-social-item i {
	position: relative;
	z-index: 1;
	transition: color 0.3s;
}

.kursiom-social-item:hover {
	border-color: transparent;
	color: #ffffff;
	transform: translateY(-3px);
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
}

.kursiom-footer-column {
	display: flex;
	flex-direction: column;
}

.kursiom-footer-heading {
	color: var(--sl-text);
	font-size: 1.125rem;
	font-weight: 700;
	margin-bottom: 1.5rem;
	position: relative;
	padding-bottom: 0.75rem;
}

.kursiom-footer-heading::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 48px;
	height: 3px;
	background: linear-gradient(90deg, #6366f1, #8b5cf6);
	border-radius: 2px;
}

.kursiom-footer-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.875rem;
}

.kursiom-footer-list a {
	color: var(--sl-text-dim);
	text-decoration: none;
	font-size: 0.9375rem;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	position: relative;
	padding-left: 0;
}

.kursiom-footer-list a::before {
	content: '→';
	opacity: 0;
	transform: translateX(-8px);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	color: var(--sl-accent);
	font-weight: 600;
}

.kursiom-footer-list a:hover {
	color: var(--sl-text);
	padding-left: 12px;
}

.kursiom-footer-list a:hover::before {
	opacity: 1;
	transform: translateX(0);
}

.kursiom-footer-text {
	color: var(--sl-text-dim);
	font-size: 0.9375rem;
	line-height: 1.7;
	margin-bottom: 1.5rem;
}

.kursiom-newsletter {
	margin-top: 0.5rem;
}

.kursiom-newsletter-input-wrapper {
	display: flex;
	gap: 0.5rem;
	background: rgba(99, 102, 241, 0.08);
	border: 1px solid rgba(99, 102, 241, 0.15);
	border-radius: 12px;
	padding: 0.5rem;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-newsletter-input-wrapper:focus-within {
	border-color: rgba(99, 102, 241, 0.4);
	box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.1);
	background: rgba(99, 102, 241, 0.12);
}

.kursiom-newsletter-input {
	flex: 1;
	background: transparent;
	border: none;
	color: var(--sl-text);
	padding: 0.625rem 1rem;
	font-size: 0.9375rem;
	outline: none;
	font-family: inherit;
}

.kursiom-newsletter-input::placeholder {
	color: var(--sl-text-dim);
}

.kursiom-newsletter-btn {
	background: linear-gradient(135deg, #6366f1, #8b5cf6);
	border: none;
	color: #ffffff;
	width: 44px;
	height: 44px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	flex-shrink: 0;
	font-size: 1.125rem;
}

.kursiom-newsletter-btn:hover {
	transform: scale(1.05);
	box-shadow: 0 4px 16px rgba(99, 102, 241, 0.4);
	background: linear-gradient(135deg, #8b5cf6, #ec4899);
}

.kursiom-footer-bottom {
	background: rgba(5, 8, 21, 0.6);
	border-top: 1px solid rgba(99, 102, 241, 0.1);
	padding: 2.5rem 0;
	position: relative;
}

.kursiom-footer-bottom-inner {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 2rem;
}

.kursiom-footer-legal-info {
	flex: 1;
}

.kursiom-legal-company {
	color: var(--sl-text);
	font-size: 0.9375rem;
	margin-bottom: 0.75rem;
	font-weight: 600;
}

.kursiom-legal-details {
	color: var(--sl-text-dim);
	font-size: 0.875rem;
	margin-bottom: 0.5rem;
	line-height: 1.6;
}

.kursiom-legal-details a {
	color: var(--sl-accent);
	text-decoration: none;
	transition: all 0.3s;
	border-bottom: 1px solid transparent;
}

.kursiom-legal-details a:hover {
	color: var(--sl-text);
	border-bottom-color: var(--sl-accent);
}

.kursiom-footer-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
	font-size: 0.875rem;
}

.kursiom-footer-links a {
	color: var(--sl-text-dim);
	text-decoration: none;
	transition: all 0.3s;
	position: relative;
}

.kursiom-footer-links a::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0;
	height: 1px;
	background: var(--sl-accent);
	transition: width 0.3s;
}

.kursiom-footer-links a:hover {
	color: var(--sl-text);
}

.kursiom-footer-links a:hover::after {
	width: 100%;
}

.kursiom-footer-divider {
	color: var(--sl-text-dim);
	opacity: 0.3;
}

.kursiom-footer-copyright {
	color: var(--sl-text-dim);
	margin-left: auto;
}

/* Responsive Design */
@media (max-width: 1400px) {
	.kursiom-header-container,
	.kursiom-footer-grid,
	.kursiom-footer-bottom-inner {
		padding: 0 1.5rem;
	}
}

@media (max-width: 1200px) {
	.kursiom-footer-grid {
		grid-template-columns: 2fr 1fr 1fr;
		gap: 2.5rem;
	}

	.kursiom-footer-brand {
		grid-column: 1 / -1;
		max-width: 100%;
	}
}

@media (max-width: 991px) {
	.kursiom-nav {
		display: none;
	}

	.kursiom-header-actions {
		display: none;
	}

	.kursiom-footer-grid {
		grid-template-columns: 1fr 1fr;
		gap: 2rem;
	}

	.kursiom-footer-brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 767px) {
	.kursiom-header-container {
		padding: 0 1rem;
	}

	.kursiom-header-wrapper {
		padding: 1rem 0;
	}

	.kursiom-footer-main {
		padding: 3rem 0 2rem;
	}

	.kursiom-footer-grid {
		grid-template-columns: 1fr;
		gap: 2rem;
		padding: 0 1rem;
	}

	.kursiom-footer-bottom-inner {
		padding: 0 1rem;
		gap: 1.5rem;
	}

	.kursiom-footer-links {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.75rem;
	}

	.kursiom-footer-copyright {
		margin-left: 0;
	}

	.kursiom-footer-divider {
		display: none;
	}
}

@media (min-width: 1200px) {
	.kursiom-mobile-nav {
		display: none !important;
	}

	.kursiom-menu-toggle {
		display: none;
	}
}

.kursiom-page-hero {
	position: relative;
	padding: 6rem 0 4rem;
	overflow: hidden;
	background: linear-gradient(180deg, #27160a 0%, #889081 100%);
	min-height: 60vh;
	display: flex;
	align-items: center;
}

.kursiom-page-hero-background {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
	pointer-events: none;
}

.kursiom-page-hero-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(60px);
	opacity: 0.5;
	animation: float 20s ease-in-out infinite;
	pointer-events: none;
}

.kursiom-page-hero-orb-1 {
	width: 400px;
	height: 400px;
	background: radial-gradient(
		circle,
		rgba(99, 102, 241, 0.3) 0%,
		rgba(99, 102, 241, 0.1) 50%,
		transparent 70%
	);
	top: -100px;
	right: -100px;
	animation-delay: 0s;
}

.kursiom-page-hero-orb-2 {
	width: 350px;
	height: 350px;
	background: radial-gradient(
		circle,
		rgba(139, 92, 246, 0.25) 0%,
		rgba(139, 92, 246, 0.1) 50%,
		transparent 70%
	);
	bottom: -100px;
	left: -80px;
	animation-delay: 5s;
}

.kursiom-page-hero-content {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem;
	align-items: center;
}

.kursiom-page-hero-text {
	max-width: 100%;
}

.kursiom-page-hero-title {
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.1;
	margin-bottom: 1rem;
	background: linear-gradient(135deg, #ffffff 0%, #e0e7ff 50%, #c7d2fe 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	letter-spacing: -1px;
}

.kursiom-page-hero-description {
	font-size: 1.25rem;
	line-height: 1.7;
	color: var(--sl-text-dim);
}

.kursiom-page-hero-image {
	position: relative;
}

.kursiom-page-hero-image-wrapper {
	position: relative;
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
}

.kursiom-page-hero-img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 24px;
}

.kursiom-about-section {
	padding: 5rem 0;
	background: linear-gradient(180deg, #120515 0%, #abaec2 100%);
	position: relative;
}

.kursiom-about-section-alt {
	background: linear-gradient(180deg, #b4bcef 0%, #151505 100%);
}

.kursiom-about-content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem;
	align-items: start;
}

.kursiom-about-title {
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
}

.kursiom-about-subtitle {
	font-size: 1.25rem;
	color: var(--sl-text-dim);
	margin-bottom: 1.5rem;
}

.kursiom-about-description {
	color: var(--sl-text-dim);
	line-height: 1.8;
	margin-bottom: 2rem;
	font-size: 1.0625rem;
}

.kursiom-about-features {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.kursiom-about-feature {
	display: flex;
	gap: 1rem;
	align-items: start;
}

.kursiom-about-feature-icon {
	width: 48px;
	height: 48px;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.2) 0%,
		rgba(139, 92, 246, 0.2) 50%,
		rgba(236, 72, 153, 0.2) 100%
	);
	border: 1px solid rgba(99, 102, 241, 0.3);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--sl-accent);
	font-size: 1.25rem;
	flex-shrink: 0;
}

.kursiom-about-feature-content {
	flex: 1;
}

.kursiom-about-feature-title {
	font-size: 1.125rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: var(--sl-text);
}

.kursiom-about-feature-description {
	color: var(--sl-text-dim);
	line-height: 1.7;
	font-size: 0.9375rem;
}

.kursiom-about-cards {
	position: sticky;
	top: 100px;
}

.kursiom-about-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2rem;
}

.kursiom-about-card-title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1.5rem;
	color: var(--sl-text);
}

.kursiom-about-card-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.kursiom-about-card-item {
	background: rgba(99, 102, 241, 0.05);
	border: 1px solid rgba(99, 102, 241, 0.1);
	border-radius: 12px;
	padding: 1.25rem;
}

.kursiom-about-card-item h6 {
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: var(--sl-text);
}

.kursiom-about-card-item p {
	color: var(--sl-text-dim);
	font-size: 0.875rem;
	line-height: 1.6;
	margin: 0;
}

.kursiom-about-mission {
	max-width: 800px;
	margin: 0 auto;
}

.kursiom-about-mission-content {
	color: var(--sl-text-dim);
	line-height: 1.8;
	font-size: 1.0625rem;
}

.kursiom-about-mission-content p {
	margin-bottom: 1.5rem;
}

.kursiom-about-company {
	max-width: 1000px;
	margin: 0 auto;
}

.kursiom-about-company-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2.5rem;
}

.kursiom-about-company-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 3rem;
}

.kursiom-about-company-column-title {
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 1.5rem;
	color: var(--sl-text);
}

.kursiom-about-company-info {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.kursiom-about-company-info p {
	color: var(--sl-text-dim);
	line-height: 1.7;
	margin: 0;
}

.kursiom-about-company-info a {
	color: var(--sl-accent);
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-about-company-info a:hover {
	color: var(--sl-text);
	text-decoration: underline;
}

.kursiom-about-values-header {
	text-align: center;
	margin-bottom: 3rem;
}

.kursiom-about-values-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.kursiom-about-values-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2.5rem;
	text-align: center;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-about-values-card:hover {
	transform: translateY(-8px);
	border-color: rgba(99, 102, 241, 0.4);
	box-shadow: 0 20px 40px rgba(99, 102, 241, 0.2);
}

.kursiom-about-values-icon {
	width: 72px;
	height: 72px;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.2) 0%,
		rgba(139, 92, 246, 0.2) 50%,
		rgba(236, 72, 153, 0.2) 100%
	);
	border: 1px solid rgba(99, 102, 241, 0.3);
	border-radius: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 1.5rem;
	font-size: 2rem;
	color: var(--sl-accent);
}

.kursiom-about-values-title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
}

.kursiom-about-values-description {
	color: var(--sl-text-dim);
	line-height: 1.7;
	font-size: 1rem;
}

.kursiom-contact-section {
	padding: 5rem 0;
	background: linear-gradient(180deg, #050815 0%, #0a0e27 100%);
	position: relative;
}

.kursiom-contact-section-alt {
	background: linear-gradient(180deg, #0a0e27 0%, #050815 100%);
}

.kursiom-contact-header {
	text-align: center;
	margin-bottom: 3rem;
}

.kursiom-contact-title {
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
}

.kursiom-contact-subtitle {
	font-size: 1.25rem;
	color: var(--sl-text-dim);
}

.kursiom-contact-content {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 3rem;
	max-width: 1200px;
	margin: 0 auto;
}

.kursiom-contact-form-wrapper {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2.5rem;
}

.kursiom-contact-form {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.kursiom-contact-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
}

.kursiom-contact-form-group {
	display: flex;
	flex-direction: column;
}

.kursiom-contact-input,
.kursiom-contact-textarea {
	width: 100%;
	padding: 1rem 1.25rem;
	background: rgba(99, 102, 241, 0.08);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 12px;
	color: var(--sl-text);
	font-size: 1rem;
	font-family: inherit;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-contact-input:focus,
.kursiom-contact-textarea:focus {
	outline: none;
	border-color: rgba(99, 102, 241, 0.5);
	background: rgba(99, 102, 241, 0.12);
	box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.1);
}

.kursiom-contact-input::placeholder,
.kursiom-contact-textarea::placeholder {
	color: var(--sl-text-dim);
}

.kursiom-contact-textarea {
	resize: vertical;
	min-height: 150px;
}

.kursiom-contact-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	padding: 1rem 2rem;
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	border: none;
	border-radius: 12px;
	font-weight: 600;
	font-size: 1rem;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
}

.kursiom-contact-submit:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.5);
}

/* New Contact Form Styles */
.contact-form-new {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.form-field-group {
	display: flex;
	flex-direction: column;
}

.form-label-new {
	display: block;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--sl-text);
	margin-bottom: 0.5rem;
}

.required-star {
	color: #ec4899;
	margin-left: 0.25rem;
}

.form-input-new,
.form-textarea-new {
	width: 100%;
	padding: 1rem 1.25rem;
	background: rgba(99, 102, 241, 0.08);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 12px;
	color: var(--sl-text);
	font-size: 1rem;
	font-family: inherit;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.form-input-new:focus,
.form-textarea-new:focus {
	outline: none;
	border-color: rgba(99, 102, 241, 0.5);
	background: rgba(99, 102, 241, 0.12);
	box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.1);
}

.form-input-new::placeholder,
.form-textarea-new::placeholder {
	color: var(--sl-text-dim);
}

.form-input-new.is-invalid,
.form-textarea-new.is-invalid {
	border-color: #ef4444;
	background: rgba(239, 68, 68, 0.08);
}

.form-input-new.is-invalid:focus,
.form-textarea-new.is-invalid:focus {
	border-color: #ef4444;
	background: rgba(239, 68, 68, 0.12);
	box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.1);
}

.form-input-new.is-valid,
.form-textarea-new.is-valid {
	border-color: #10b981;
	background: rgba(16, 185, 129, 0.08);
}

.form-input-new.is-valid:focus,
.form-textarea-new.is-valid:focus {
	border-color: #10b981;
	background: rgba(16, 185, 129, 0.12);
	box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.1);
}

.form-textarea-new {
	resize: vertical;
	min-height: 150px;
}

.invalid-feedback {
	display: none;
	color: #ef4444;
	font-size: 0.875rem;
	margin-top: 0.5rem;
}

.form-input-new.is-invalid ~ .invalid-feedback,
.form-textarea-new.is-invalid ~ .invalid-feedback {
	display: block;
}

.form-submit-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	padding: 1rem 2rem;
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	border: none;
	border-radius: 12px;
	font-weight: 600;
	font-size: 1rem;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
	width: 100%;
}

.form-submit-button:hover:not(:disabled) {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.5);
}

.form-submit-button:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

.form-submit-button svg {
	transition: transform 0.3s ease;
}

.form-submit-button:hover:not(:disabled) svg {
	transform: translateX(4px);
}

.form-status {
	margin-top: 1rem;
}

.form-status .loading,
.form-status .error-message,
.form-status .sent-message {
	display: none;
	padding: 1rem;
	border-radius: 12px;
	font-size: 0.9375rem;
	text-align: center;
}

.form-status .loading {
	color: var(--sl-text);
	background: rgba(99, 102, 241, 0.1);
}

.form-status .error-message {
	color: #ef4444;
	background: rgba(239, 68, 68, 0.1);
	border: 1px solid rgba(239, 68, 68, 0.2);
}

.form-status .sent-message {
	color: #10b981;
	background: rgba(16, 185, 129, 0.1);
	border: 1px solid rgba(16, 185, 129, 0.2);
}

.kursiom-contact-info-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2rem;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.kursiom-contact-info-item {
	display: flex;
	gap: 1rem;
	align-items: start;
}

.kursiom-contact-info-icon {
	width: 48px;
	height: 48px;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.2) 0%,
		rgba(139, 92, 246, 0.2) 50%,
		rgba(236, 72, 153, 0.2) 100%
	);
	border: 1px solid rgba(99, 102, 241, 0.3);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--sl-accent);
	font-size: 1.25rem;
	flex-shrink: 0;
}

.kursiom-contact-info-content {
	flex: 1;
}

.kursiom-contact-info-title {
	font-size: 1.125rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: var(--sl-text);
}

.kursiom-contact-info-text {
	color: var(--sl-text-dim);
	line-height: 1.7;
	font-size: 0.9375rem;
	margin: 0;
}

.kursiom-contact-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	max-width: 1200px;
	margin: 0 auto;
}

.kursiom-contact-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2.5rem;
	text-align: center;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-contact-card:hover {
	transform: translateY(-8px);
	border-color: rgba(99, 102, 241, 0.4);
	box-shadow: 0 20px 40px rgba(99, 102, 241, 0.2);
}

.kursiom-contact-card-icon {
	width: 72px;
	height: 72px;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.2) 0%,
		rgba(139, 92, 246, 0.2) 50%,
		rgba(236, 72, 153, 0.2) 100%
	);
	border: 1px solid rgba(99, 102, 241, 0.3);
	border-radius: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 1.5rem;
	font-size: 2rem;
	color: var(--sl-accent);
}

.kursiom-contact-card-title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
}

.kursiom-contact-card-text {
	color: var(--sl-text-dim);
	line-height: 1.7;
	font-size: 1rem;
	margin: 0;
}

.kursiom-faq-section {
	padding: 5rem 0;
	background: linear-gradient(180deg, #050815 0%, #0a0e27 100%);
	position: relative;
}

.kursiom-faq-section-alt {
	background: linear-gradient(180deg, #0a0e27 0%, #050815 100%);
}

.kursiom-faq-wrapper {
	max-width: 900px;
	margin: 0 auto;
}

.kursiom-faq-accordion {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.kursiom-faq-item {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 16px;
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-faq-item:hover {
	border-color: rgba(99, 102, 241, 0.4);
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.15);
}

.kursiom-faq-header {
	margin: 0;
}

.kursiom-faq-button {
	width: 100%;
	padding: 1.5rem 2rem;
	background: transparent;
	border: none;
	text-align: left;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	cursor: pointer;
	color: var(--sl-text);
	font-size: 1.125rem;
	font-weight: 600;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-faq-button:hover {
	color: var(--sl-accent);
}

.kursiom-faq-button i {
	color: var(--sl-accent);
	font-size: 1.25rem;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	flex-shrink: 0;
}

.kursiom-faq-button[aria-expanded='true'] i {
	transform: rotate(180deg);
}

.kursiom-faq-collapse {
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-faq-body {
	padding: 0 2rem 1.5rem;
	color: var(--sl-text-dim);
	line-height: 1.8;
	font-size: 1rem;
}

.kursiom-faq-body p {
	margin-bottom: 1rem;
}

.kursiom-faq-body p:last-child {
	margin-bottom: 0;
}

.kursiom-faq-help {
	text-align: center;
	max-width: 700px;
	margin: 0 auto;
}

.kursiom-faq-help-title {
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
}

.kursiom-faq-help-subtitle {
	font-size: 1.25rem;
	color: var(--sl-text-dim);
	margin-bottom: 1.5rem;
}

.kursiom-faq-help-text {
	color: var(--sl-text-dim);
	line-height: 1.8;
	font-size: 1.0625rem;
	margin-bottom: 2rem;
}

.kursiom-faq-help-text a {
	color: var(--sl-accent);
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-faq-help-text a:hover {
	color: var(--sl-text);
	text-decoration: underline;
}

.kursiom-faq-help-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: center;
}

.kursiom-faq-help-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	padding: 1rem 2rem;
	border-radius: 12px;
	font-weight: 600;
	font-size: 1rem;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-faq-help-btn-primary {
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
}

.kursiom-faq-help-btn-primary:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.5);
	color: #ffffff;
}

.kursiom-faq-help-btn-secondary {
	background: rgba(99, 102, 241, 0.1);
	border: 1px solid rgba(99, 102, 241, 0.3);
	color: var(--sl-text);
	backdrop-filter: blur(10px);
}

.kursiom-faq-help-btn-secondary:hover {
	background: rgba(99, 102, 241, 0.15);
	border-color: rgba(99, 102, 241, 0.5);
	transform: translateY(-3px);
	color: var(--sl-text);
}

/* Responsive Design for Page Sections */
@media (max-width: 1200px) {
	.kursiom-page-hero-content,
	.kursiom-about-content {
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.kursiom-about-cards {
		position: static;
	}

	.kursiom-contact-content {
		grid-template-columns: 1fr;
	}

	.kursiom-contact-cards {
		grid-template-columns: repeat(2, 1fr);
	}

	.kursiom-about-values-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 991px) {
	.kursiom-page-hero {
		padding: 4rem 0 3rem;
		min-height: auto;
	}

	.kursiom-page-hero-title {
		font-size: 2.25rem;
	}

	.kursiom-about-section,
	.kursiom-contact-section,
	.kursiom-faq-section {
		padding: 4rem 0;
	}

	.kursiom-about-title,
	.kursiom-contact-title,
	.kursiom-faq-help-title {
		font-size: 2rem;
	}

	.kursiom-about-company-grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.kursiom-contact-cards {
		grid-template-columns: 1fr;
	}

	.kursiom-about-values-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.kursiom-page-hero-title {
		font-size: 1.875rem;
	}

	.kursiom-page-hero-description {
		font-size: 1.125rem;
	}

	.kursiom-contact-form-row {
		grid-template-columns: 1fr;
	}

	.form-submit-button {
		width: 100%;
	}

	.kursiom-about-card-grid {
		grid-template-columns: 1fr;
	}

	.kursiom-faq-button {
		padding: 1.25rem 1.5rem;
		font-size: 1rem;
	}

	.kursiom-faq-body {
		padding: 0 1.5rem 1.25rem;
	}

	.kursiom-faq-help-buttons {
		flex-direction: column;
	}

	.kursiom-faq-help-btn {
		width: 100%;
		justify-content: center;
	}
}

.kursiom-legal-section {
	padding: 5rem 0;
	background: linear-gradient(180deg, #050815 0%, #0a0e27 100%);
	position: relative;
}

.kursiom-legal-wrapper {
	max-width: 900px;
	margin: 0 auto;
}

.kursiom-legal-content {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 24px;
	padding: 3rem;
}

.kursiom-legal-header {
	text-align: center;
	margin-bottom: 3rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid rgba(99, 102, 241, 0.2);
}

.kursiom-legal-title {
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 0.75rem;
	color: var(--sl-text);
}

.kursiom-legal-date {
	color: var(--sl-text-dim);
	font-size: 1rem;
	margin: 0;
}

.kursiom-legal-body {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
}

.kursiom-legal-section-item {
	padding-bottom: 2rem;
	border-bottom: 1px solid rgba(99, 102, 241, 0.1);
}

.kursiom-legal-section-item:last-of-type {
	border-bottom: none;
	padding-bottom: 0;
}

.kursiom-legal-section-title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
}

.kursiom-legal-subsection-title {
	font-size: 1.25rem;
	font-weight: 600;
	margin-top: 1.5rem;
	margin-bottom: 0.75rem;
	color: var(--sl-text);
}

.kursiom-legal-section-item p {
	color: var(--sl-text-dim);
	line-height: 1.8;
	font-size: 1.0625rem;
	margin-bottom: 1rem;
}

.kursiom-legal-section-item p:last-child {
	margin-bottom: 0;
}

.kursiom-legal-section-item a {
	color: var(--sl-accent);
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-legal-section-item a:hover {
	color: var(--sl-text);
	text-decoration: underline;
}

.kursiom-legal-list {
	list-style: none;
	padding: 0;
	margin: 1rem 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.kursiom-legal-list li {
	color: var(--sl-text-dim);
	line-height: 1.8;
	font-size: 1.0625rem;
	padding-left: 1.75rem;
	position: relative;
}

.kursiom-legal-list li::before {
	content: '→';
	position: absolute;
	left: 0;
	color: var(--sl-accent);
	font-weight: 600;
}

.kursiom-legal-footer {
	margin-top: 3rem;
	padding-top: 2rem;
	border-top: 1px solid rgba(99, 102, 241, 0.2);
	text-align: center;
}

.kursiom-legal-back-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	padding: 1rem 2rem;
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	border-radius: 12px;
	text-decoration: none;
	font-weight: 600;
	font-size: 1rem;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
}

.kursiom-legal-back-btn:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.5);
	color: #ffffff;
}

.kursiom-page-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 2rem;
}

.kursiom-page-hero-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	padding: 1rem 2rem;
	border-radius: 12px;
	font-weight: 600;
	font-size: 1rem;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-page-hero-btn-primary {
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
}

.kursiom-page-hero-btn-primary:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.5);
	color: #ffffff;
}

.kursiom-page-hero-btn-secondary {
	background: rgba(99, 102, 241, 0.1);
	border: 1px solid rgba(99, 102, 241, 0.3);
	color: var(--sl-text);
	backdrop-filter: blur(10px);
}

.kursiom-page-hero-btn-secondary:hover {
	background: rgba(99, 102, 241, 0.15);
	border-color: rgba(99, 102, 241, 0.5);
	transform: translateY(-3px);
	color: var(--sl-text);
}

.kursiom-thanks-hero {
	position: relative;
	padding: 8rem 0 6rem;
	overflow: hidden;
	background: linear-gradient(180deg, #0a0e27 0%, #050815 100%);
	min-height: 70vh;
	display: flex;
	align-items: center;
	justify-content: center;
}

.kursiom-thanks-hero-background {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
	pointer-events: none;
}

.kursiom-thanks-hero-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: 0.6;
	animation: float 20s ease-in-out infinite;
	pointer-events: none;
}

.kursiom-thanks-hero-orb-1 {
	width: 500px;
	height: 500px;
	background: radial-gradient(
		circle,
		rgba(99, 102, 241, 0.4) 0%,
		rgba(99, 102, 241, 0.1) 50%,
		transparent 70%
	);
	top: -150px;
	right: -100px;
	animation-delay: 0s;
}

.kursiom-thanks-hero-orb-2 {
	width: 450px;
	height: 450px;
	background: radial-gradient(
		circle,
		rgba(139, 92, 246, 0.3) 0%,
		rgba(139, 92, 246, 0.1) 50%,
		transparent 70%
	);
	bottom: -100px;
	left: -80px;
	animation-delay: 5s;
}

.kursiom-thanks-content {
	position: relative;
	z-index: 1;
	text-align: center;
	max-width: 700px;
	margin: 0 auto;
}

.kursiom-thanks-icon {
	margin-bottom: 2rem;
}

.kursiom-thanks-icon-wrapper {
	width: 120px;
	height: 120px;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.2) 0%,
		rgba(139, 92, 246, 0.2) 50%,
		rgba(236, 72, 153, 0.2) 100%
	);
	border: 3px solid rgba(99, 102, 241, 0.3);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	color: var(--sl-accent);
	font-size: 4rem;
	position: relative;
	overflow: hidden;
}

.kursiom-thanks-icon-wrapper::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 50%;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.3),
		rgba(139, 92, 246, 0.3),
		rgba(236, 72, 153, 0.3)
	);
	transform: translate(-50%, -50%);
	animation: expandCircle 1s ease-out forwards;
}

@keyframes expandCircle {
	to {
		width: 200%;
		height: 200%;
	}
}

.kursiom-thanks-icon-wrapper i {
	position: relative;
	z-index: 1;
	animation: checkmark 0.6s ease-out 0.3s both;
}

@keyframes checkmark {
	0% {
		transform: scale(0) rotate(-45deg);
		opacity: 0;
	}
	50% {
		transform: scale(1.2) rotate(5deg);
	}
	100% {
		transform: scale(1) rotate(0deg);
		opacity: 1;
	}
}

.kursiom-thanks-title {
	font-size: 3.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	background: linear-gradient(135deg, #ffffff 0%, #e0e7ff 50%, #c7d2fe 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	letter-spacing: -1px;
}

.kursiom-thanks-description {
	font-size: 1.25rem;
	line-height: 1.7;
	color: var(--sl-text-dim);
	margin-bottom: 2.5rem;
}

.kursiom-thanks-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: center;
}

.kursiom-thanks-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	padding: 1rem 2rem;
	border-radius: 12px;
	font-weight: 600;
	font-size: 1rem;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.kursiom-thanks-btn-primary {
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #ec4899 100%);
	color: #ffffff;
	box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
}

.kursiom-thanks-btn-primary:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(99, 102, 241, 0.5);
	color: #ffffff;
}

.kursiom-thanks-btn-secondary {
	background: rgba(99, 102, 241, 0.1);
	border: 1px solid rgba(99, 102, 241, 0.3);
	color: var(--sl-text);
	backdrop-filter: blur(10px);
}

.kursiom-thanks-btn-secondary:hover {
	background: rgba(99, 102, 241, 0.15);
	border-color: rgba(99, 102, 241, 0.5);
	transform: translateY(-3px);
	color: var(--sl-text);
}

.kursiom-thanks-section {
	padding: 5rem 0;
	background: linear-gradient(180deg, #050815 0%, #0a0e27 100%);
	position: relative;
}

.kursiom-thanks-info {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 3rem;
	max-width: 1200px;
	margin: 0 auto;
	align-items: start;
}

.kursiom-thanks-info-content {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2.5rem;
}

.kursiom-thanks-info-title {
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 0.75rem;
	color: var(--sl-text);
}

.kursiom-thanks-info-subtitle {
	font-size: 1.25rem;
	color: var(--sl-text-dim);
	margin-bottom: 1.5rem;
}

.kursiom-thanks-info-text {
	color: var(--sl-text-dim);
	line-height: 1.8;
	font-size: 1.0625rem;
}

.kursiom-thanks-info-text p {
	margin-bottom: 1.5rem;
}

.kursiom-thanks-info-text p:last-child {
	margin-bottom: 0;
}

.kursiom-thanks-info-card {
	background: rgba(30, 27, 75, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(99, 102, 241, 0.2);
	border-radius: 20px;
	padding: 2.5rem;
	text-align: center;
	position: sticky;
	top: 100px;
}

.kursiom-thanks-info-card-icon {
	width: 80px;
	height: 80px;
	background: linear-gradient(
		135deg,
		rgba(99, 102, 241, 0.2) 0%,
		rgba(139, 92, 246, 0.2) 50%,
		rgba(236, 72, 153, 0.2) 100%
	);
	border: 1px solid rgba(99, 102, 241, 0.3);
	border-radius: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 1.5rem;
	font-size: 2.5rem;
	color: var(--sl-accent);
}

.kursiom-thanks-info-card-title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--sl-text);
}

.kursiom-thanks-info-card-text {
	color: var(--sl-text-dim);
	line-height: 1.7;
	font-size: 1rem;
	margin: 0;
}

/* Responsive Design for Legal and Thanks Pages */
@media (max-width: 991px) {
	.kursiom-legal-content {
		padding: 2rem;
	}

	.kursiom-legal-title {
		font-size: 2rem;
	}

	.kursiom-thanks-hero {
		padding: 6rem 0 4rem;
		min-height: auto;
	}

	.kursiom-thanks-title {
		font-size: 2.5rem;
	}

	.kursiom-thanks-info {
		grid-template-columns: 1fr;
	}

	.kursiom-thanks-info-card {
		position: static;
	}
}

@media (max-width: 767px) {
	.kursiom-legal-content {
		padding: 1.5rem;
	}

	.kursiom-legal-title {
		font-size: 1.75rem;
	}

	.kursiom-legal-section-title {
		font-size: 1.25rem;
	}

	.kursiom-thanks-title {
		font-size: 2rem;
	}

	.kursiom-thanks-description {
		font-size: 1.125rem;
	}

	.kursiom-thanks-actions {
		flex-direction: column;
	}

	.kursiom-thanks-btn {
		width: 100%;
		justify-content: center;
	}

	.kursiom-page-hero-actions {
		flex-direction: column;
	}

	.kursiom-page-hero-btn {
		width: 100%;
		justify-content: center;
	}
}
