﻿@charset "utf-8";

/* ── Preloader ── */
#omni_preloader {
	position: fixed;
	inset: 0;
	z-index: 99999;
	background: #000000;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.6s ease, visibility 0.6s ease;
}

#omni_preloader.hidden,
#omni_preloader.loaded {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.preloader_inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
}

.preloader_logo {
	width: 180px;
	height: auto;
	animation: pl_breathe 3s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
	filter: drop-shadow(0 0 12px rgba(15, 111, 255, 0.3));
}

/* Pulsation plus fluide et organique */
@keyframes pl_breathe {
	0%, 100% {
		transform: scale(1) translateY(0);
		filter: drop-shadow(0 0 10px rgba(15, 111, 255, 0.3));
	}
	50% {
		transform: scale(1.05) translateY(-5px);
		filter: drop-shadow(0 0 25px rgba(15, 111, 255, 0.6));
	}
}

/* Nouveau : Outline qui se dessine au début */
.pl_outline {
	stroke-dasharray: 800;
	stroke-dashoffset: 800;
	stroke-width: 1.5;
	stroke: var(--ai-blue);
	fill: none;
	opacity: 0.8;
	animation: pl_draw 2.5s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
}

@keyframes pl_draw {
	0% { stroke-dashoffset: 800; opacity: 0; }
	20% { opacity: 1; }
	100% { stroke-dashoffset: 0; opacity: 0.4; }
}

/* Partie haute — apparition progressive coordonnée */
.pl_top {
	opacity: 0;
	transform: translateY(3px);
	animation: pl_top_in 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 0.8s;
}

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

/* Sweep lumineux sur la courbe — plus rapide et scintillant */
.pl_sweep {
	animation: pl_sweep 1.8s cubic-bezier(0.445, 0.05, 0.55, 0.95) infinite;
}

@keyframes pl_sweep {
	0% {
		transform: translateX(-180px) skewX(-20deg);
		opacity: 0;
	}
	15% { opacity: 0.8; }
	85% { opacity: 0.8; }
	100% {
		transform: translateX(180px) skewX(-20deg);
		opacity: 0;
	}
}

/* Effet de brillance additionnel sur tout le logo */
.preloader_logo::after {
	content: '';
	position: absolute;
	top: 0; left: -100%;
	width: 50%; height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
	transform: skewX(-25deg);
	animation: pl_shimmer 3s infinite;
}

@keyframes pl_shimmer {
	0% { left: -100%; }
	100% { left: 200%; }
}

/* Points de chargement */
.preloader_dots {
	display: flex;
	gap: 10px;
}

.preloader_dots span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #0F6FFF;
	animation: pl_dot 1.4s ease-in-out infinite;
}

.preloader_dots span:nth-child(2) {
	animation-delay: 0.2s;
	background: #7B61FF;
}

.preloader_dots span:nth-child(3) {
	animation-delay: 0.4s;
	background: #08A9BE;
}

@keyframes pl_dot {

	0%,
	80%,
	100% {
		transform: scale(0.6);
		opacity: 0.4;
	}

	40% {
		transform: scale(1.2);
		opacity: 1;
	}
}

/* Light mode */
body.light-mode #omni_preloader {
	background: #f7fbff;
}

body.light-mode .preloader_logo {
	filter: drop-shadow(0 0 18px rgba(15, 111, 255, 0.35));
}

/*
/*	Copyright (c) 2022 Frenify
/*	Author: Frenify
/*	This file is made for CURRENT TEMPLATE
/*


	List of CSS codes:
	
	01) Base


/*------------------------------------------------------------------*/
/*	01) Base
/*------------------------------------------------------------------*/
:root {
	--sbc: #000000;
	--surface: #000000;
	--mc: #0F6FFF;
	--mcl: #0155d4;
	--hc: #ffffff;
	--bc: #aaaaaa;
	--muted: #333333;
	--hff: 'Heebo', sans-serif;
	--bff: 'Nunito', sans-serif;
	--eff: 'Open Sans', sans-serif;
	--hnd: 'Sacramento', cursive;
}

html {
	overflow-x: hidden;
	padding: 0px;
	margin: 0px;
}

*:after,
*:before,
* {
	box-sizing: border-box;
}

body {
	font-family: var(--bff);
	font-size: 18px;
	letter-spacing: 0;
	line-height: 1.44;
	font-weight: 400;
	color: var(--bc);
	position: relative;
	word-break: break-word;
	background-color: var(--sbc);
}

.fn__svg {
	fill: currentcolor;
	width: 18px;
	height: 18px;
	opacity: 0;
}

.replaced-svg {
	opacity: 1;
}

p {
	letter-spacing: 0;
	margin-bottom: 20px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--hc);
	font-family: var(--hff);
	line-height: 1.22;
	letter-spacing: 0;
}

h1>a,
h2>a,
h3>a,
h4>a,
h5>a,
h6>a {
	text-decoration: none;
	color: var(--hc);
}

h1>a:hover,
h2>a:hover,
h3>a:hover,
h4>a:hover,
h5>a:hover,
h6>a:hover {
	color: var(--mc);
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="password"],
input[type="number"],
textarea,
select {
	background: linear-gradient(135deg, rgba(20, 25, 35, 0.85) 0%, rgba(10, 15, 25, 0.9) 100%);
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.06);
	font-size: 16px;
	letter-spacing: 0;
	color: #eee;
	padding: 0 15px;
	transition: all 0.3s ease;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="password"],
input[type="number"] {
	line-height: 46px;
	height: 50px;
}

textarea {
	padding: 13px 15px;
	height: 250px;
}

textarea:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
select:focus {
	outline: none;
	background: linear-gradient(135deg, rgba(25, 32, 45, 0.9) 0%, rgba(15, 20, 30, 0.95) 100%);
	border-color: rgba(15, 111, 255, 0.3);
	box-shadow: 0 0 15px rgba(15, 111, 255, 0.1);
}

/*------------------------------------------------------------------*/
/*	02) Container
/*------------------------------------------------------------------*/
.container {
	width: 100%;
	max-width: 1360px;
	padding: 0 80px;
	margin: 0 auto;
}

.container.wide {
	max-width: 1760px;
}

.container.small {
	max-width: 900px;
}

.container:after,
.clearfix:after,
.clearfix:before {
	content: '';
	clear: both;
	display: table;
}

@media(max-width: 1400px) {
	.container {
		padding: 0 40px;
	}
}

@media(max-width: 1040px) {
	.container {
		padding: 0 20px;
	}
}

@media(max-width: 480px) {
	.container {
		padding: 0 20px;
	}
}

/*------------------------------------------------------------------*/
/*	02) Some codes
/*------------------------------------------------------------------*/
a.full_link {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}

.bg_overlay .bg_image,
.bg_overlay .bg_color,
.bg_overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.bg_overlay .bg_color {
	z-index: 2;
}

[class*="mw_"] {
	margin-left: auto;
	margin-right: auto;
}

.mw_650 {
	max-width: 650px;
}

.mw_500 {
	max-width: 500px;
}

/*------------------------------------------------------------------*/
/*	02) Site Structure
/*------------------------------------------------------------------*/
.neoh_fn_main,
.neoh_fn_main * {
	box-sizing: border-box;
}

.neoh_fn_main {
	position: relative;
	z-index: 2;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	min-height: 100vh;
}

/*------------------------------------------------------------------*/
/*	xx) Header
/*------------------------------------------------------------------*/
.neoh_fn_header {
	padding: 25px 0;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.neoh_fn_header {
	position: fixed;
	z-index: 99;
	top: 0;
	left: 0;
	right: 0;
	transition: all .3s ease;
}

.neoh_fn_header.fixer {
	background-color: var(--surface);
	padding: 17px 0;
}





.waves {
	height: 100vh;
	position: absolute;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	z-index: -99;
}


.neoh_fn_header .header_in {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	-ms-align-items: center;
	align-items: center;
}

.trigger_in {
	cursor: pointer;
	font-family: var(--hff);
	letter-spacing: 1px;
	font-size: 14px;
	text-transform: uppercase;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	padding: 10px;
	padding-right: 65px;
	position: relative;
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	transition: all .3s ease;
}

.trigger.is-active,
.trigger:hover .trigger_in {
	color: var(--mc);
}

.trigger.is-active .hamb_a {
	top: 6px;
	transform: rotate(45deg);
}

.trigger.is-active .hamb_c {
	top: 6px;
	transform: rotate(-45deg);
}

.trigger.is-active .hamb_b {
	transform: translateX(100%);
	opacity: 0;
}

.trigger.is-active .hamb_a,
.trigger.is-active .hamb_b,
.trigger.is-active .hamb_c {
	background-color: var(--hc);
}

.trigger_in .hamb {
	width: 50px;
	height: 15px;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -7px;
	margin-top: -7.5px;
}

.trigger_in .hamb_a,
.trigger_in .hamb_b,
.trigger_in .hamb_c {
	position: absolute;
	width: 50px;
	height: 1px;
	background-color: var(--bc);
	left: 0;
	transition: all .3s ease;
}

.trigger_in .hamb_a {
	top: 0;
}

.trigger_in .hamb_b {
	top: 7px;
}

.trigger_in .hamb_c {
	top: 14px;
}

.trigger_in .text {
	line-height: 1;
}

/*------------------------------------------------------------------*/
/*	xx) Hero Header
/*------------------------------------------------------------------*/
.neoh_fn_hero {
	width: 100%;
	position: relative;
	z-index: 1;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: center;
	align-items: center;
	overflow: hidden;
}

.neoh_fn_hero .overlay_slider {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.neoh_fn_hero .overlay_slider .swiper-container .main_image {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.neoh_fn_hero .overlay_slider .swiper-slide {
	overflow: hidden;
}

.neoh_fn_hero .overlay_slider .swiper-container,
.neoh_fn_hero .overlay_slider .swiper-slide {
	height: 100%;
}

.neoh_fn_hero .overlay_slider .swiper-container {
	cursor: e-resize;
}

.neoh_fn_hero iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100vw;
	height: 100vh;
	transform: translate(-50%, -50%);
	z-index: 10;
}

.neoh_fn_hero .bg_color {
	background-color: transparent;
}

.neoh_fn_hero .bg_overlay {
	background: transparent;
}

body.light-mode .neoh_fn_hero .bg_overlay {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0) 50%);
}



.neoh_fn_hero .hero_content {
	position: relative;
	z-index: 15;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	padding: 16px 0 80px;
	justify-content: flex-start;
	align-items: stretch;
}

.neoh_fn_hero .hero_main_container {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.neoh_fn_hero .content {
	text-align: left;
}

@font-face {
	font-family: neon;
	src: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/707108/neon.ttf);
}

.neoh_fn_hero .fn_title {
	max-width: 500px;
	margin: 0 auto;
	padding: 0;
	font-size: 45px;
	color: var(--mc);
	/* 	text-transform: uppercase; */
	letter-spacing: 5px;
	/* after changing this value, don't forget to change left value */
	line-height: 1;
	margin-bottom: 10px;
	font-family: var(--hff);
	transform: translateZ(0);
	overflow: hidden;
	position: relative;
	left: 17px;
	/* because of letter spacing, if you change letter spacing, don't forget to change its value also */
}


.neoh_fn_hero .fn_desc {
	padding: 0;
	font-size: 24px;
	line-height: 1.3333;
	max-width: 500px;
	margin: 0 auto;
}

.neoh_fn_down {
	position: absolute;
	bottom: 69px;
	right: 377px;
	z-index: 15;
	text-decoration: none;
	color: var(--ai-blue);
	font-size: 13px;
	text-transform: uppercase;
	font-family: 'Space Grotesk', var(--hff);
	letter-spacing: 2px;
	padding-top: 55px;
	transition: all 0.3s ease;
}

.neoh_fn_down:hover {
	color: var(--ai-signal);
	text-shadow: 0 0 12px rgba(20, 164, 208, 0.5);
}

.neoh_fn_down:hover .icon {
	color: var(--ai-blue);
}

.neoh_fn_down:hover .icon:after {
	background-color: var(--ai-blue);
}

.neoh_fn_down .icon {
	position: absolute;
	display: block;
	top: -16px;
	left: 50%;
	width: 18px;
	height: 40px;
	color: var(--ai-blue);
	margin-left: -9px;
	-webkit-animation: bottomArrow 1.5s infinite;
	animation: bottomArrow 1.5s infinite;
	transition: all .3s ease;
}

.neoh_fn_down .icon:after {
	content: '';
	position: absolute;
	width: 3px;
	height: 40px;
	background-color: var(--ai-blue);
	left: 50%;
	margin-left: -1px;
	transition: all .3s ease;
}

.neoh_fn_down .fn__svg {
	position: absolute;
	display: block;
	bottom: -4px;
	transform: rotate(90deg);
	left: 50%;
	margin-left: -9px;
	z-index: 3;
}

@keyframes bottomArrow {
	0% {
		transform: translate(0, 0);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translate(0px, 20px);
		opacity: 0;
	}
}

@keyframes topArrow {
	0% {
		transform: translate(0, 0);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translate(0px, -20px);
		opacity: 0;
	}
}

/* Animated Title */
.fn_animated_text {
	opacity: 0;
}

.fn_animated_text.ready {
	opacity: 1;
}

.fn_animated_text span {
	animation: fn_animated_text 0.8s both;
}

.fn_animated_text em {
	opacity: 0;
}

@keyframes fn_animated_text {
	0% {
		opacity: 0;
	}

	65% {
		opacity: 1;
		text-shadow: 0 0 25px white;
	}

	75% {
		opacity: 1;
	}

	100% {
		opacity: 0.7;
	}
}



#about {
	background-color: #000000;
	padding: 50px 0 50px;
	scroll-margin-top: 90px;
	position: relative;
}

.neoh_fn_about_item {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	margin-bottom: 0;
}

.neoh_fn_about_item:last-child {
	margin-bottom: 0;
}

.neoh_fn_about_item.reverse {
	-webkit-flex-direction: row-reverse;
	-moz-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	-o-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.neoh_fn_about_item.reverse .content_item {
	padding: 40px 140px 40px 0px;
}

.neoh_fn_about_item .img_item {
	width: 40%;
	position: relative;
}

.neoh_fn_about_item .img_item:after {
	content: none;
}

.neoh_fn_about_item .img_item img,
.about_img_themed {
	width: 100%;
	height: auto;
	max-width: 550px;
	object-fit: contain;
	border-radius: 13px;
	position: relative;
	z-index: 3;
	box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.4);
}

.neoh_fn_about_item .content_item {
	width: 60%;
	padding: 20px 40px 20px 70px;
}

.neoh_fn_about_item .neoh_fn_title {
	margin-top: 0;
	margin-bottom: 14px;
}

.neoh_fn_about_item .desc p {
	margin-bottom: 10px;
}

.neoh_fn_about_item .desc p:last-child {
	margin-bottom: 0;
}

.neoh_fn_about_item .desc {
	margin-bottom: 18px;
}

.neoh_fn_about_item .buttons {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
}

.neoh_fn_about_item .buttons a {
	margin: 5px 20px 5px 0;
}

.neoh_fn_about_item .buttons a:last-child {
	margin-right: 0;
}

/* Main Title */
.neoh_fn_title {
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: center;
	align-items: center;
}

.neoh_fn_title .fn_title {
	font-family: 'Raleway', sans-serif;
	font-size: clamp(22px, 2.4vw, 30px);
	font-weight: 700;
	color: var(--mc);
	margin: 0 0 10px;
	line-height: 1.2;
}

body.light-mode .neoh_fn_title .fn_title {
	color: var(--mc) !important;
	-webkit-text-fill-color: var(--mc) !important;
}

.neoh_fn_title .line {
	position: relative;
	width: 140px;
	height: 10px;
}

.neoh_fn_title .line span {
	width: 140px;
	display: block;
	height: 2px;
	background-color: var(--muted);
	position: absolute;
	top: 4px;
}

.neoh_fn_title .line:after {
	content: '';
	position: absolute;
	width: 4px;
	height: 10px;
	left: 50%;
	margin-left: -2px;
	background-color: var(--muted);
	border-radius: 10px;
}

.neoh_fn_title .line span:after,
.neoh_fn_title .line span:before {
	width: 2px;
	background-color: var(--muted);
	position: absolute;
	content: '';
	z-index: 3;
	margin-top: -3px;
	height: 6px;
	top: 50%;
}

.neoh_fn_title .line span:before {
	right: 50%;
	margin-right: 12px;
}

.neoh_fn_title .line span:after {
	left: 50%;
	margin-left: 12px;
}

.neoh_fn_title[data-align="left"] {
	-ms-align-items: flex-start;
	align-items: flex-start;
}

.neoh_fn_title[data-align="left"] .line:after {
	left: 0;
	margin-left: 0;
}

.neoh_fn_title[data-align="left"] .line span:before {
	left: 14px;
	right: auto;
	margin-right: 0;
}

.neoh_fn_title[data-align="left"] .line span:after {
	left: 26px;
	right: auto;
	margin-left: 0;
	margin-top: -2px;
	height: 4px;
}

.neoh_fn_title[data-align="right"] {
	-ms-align-items: flex-end;
	align-items: flex-end;
}

.neoh_fn_title[data-align="right"] .line:after {
	left: auto;
	margin-left: 0;
	right: 0;
}

.neoh_fn_title[data-align="right"] .line span:before {
	left: auto;
	right: 14px;
	margin-right: 0;
}

.neoh_fn_title[data-align="right"] .line span:after {
	left: auto;
	right: 26px;
	margin-left: 0;
	margin-top: -2px;
	height: 4px;
}



/* Main Button & Unified System */
.neoh_fn_button,
button.prompt_generate_btn,
.contact_submit_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	max-width: 100%;
	text-decoration: none;
	color: var(--bc);
	font-size: 16px;
	text-transform: uppercase;
	font-family: var(--hff);
	border: 2px solid var(--muted);
	border-radius: 5px;
	height: 50px;
	padding: 0 30px;
	position: relative;
	text-align: center;
	letter-spacing: .5px;
	transition: all .3s ease;
	cursor: pointer;
	background: transparent;
	box-shadow: 0 3px 14px rgba(22, 127, 202, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}
}

.neoh_fn_button .text {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
}

@media(max-width: 768px) {
	.neoh_fn_button .text {
		white-space: normal;
		line-height: 1.2;
		padding: 12px 0;
	}

	.neoh_fn_button {
		height: auto;
		line-height: normal;
		padding: 0 20px;
	}

	.neoh_fn_button.only_text {
		padding: 10px 20px;
	}
}

.neoh_fn_button.only_text {
	padding: 0 28px;
}

.neoh_fn_button.full {
	width: 100%;
	line-height: 66px;
}

.neoh_fn_button .icon {
	display: block;
	position: absolute;
	left: 14px;
	top: 50%;
	margin-top: -11px;
}

/* Ajustement pour les boutons AVEC icône */
.neoh_fn_button:has(.icon) {
	padding-left: 73px;
}

.neoh_fn_button .icon:after {
	content: '';
	width: 2px;
	height: 26px;
	background-color: var(--muted);
	left: 100%;
	margin-left: 14px;
	top: 50%;
	margin-top: -13px;
	position: absolute;
}

.neoh_fn_button .icon:before {
	content: '';
	width: 2px;
	height: 0;
	background-color: var(--mc);
	left: 100%;
	margin-left: 14px;
	top: -2px;
	position: absolute;
	z-index: 3;
	transition: all .3s ease;
}

.neoh_fn_button .fn__svg {
	width: 22px;
	height: 22px;
	display: block;
}

/* Biseau 3D — light mode uniquement */
body.light-mode .neoh_fn_button {
	background: linear-gradient(180deg, #ffffff 0%, #ddeaf8 100%);
	border-color: #a8c8e8;
	color: #0d2040;
	box-shadow:
		0 4px 0 #7aaac8,
		0 6px 8px rgba(0, 0, 0, 0.15);
}

.neoh_fn_button:hover {
	border-color: var(--mc);
	color: var(--hc);
	background: rgba(15, 111, 255, 0.08);
	box-shadow: 0 8px 40px rgba(22, 127, 202, 0.45), 0 2px 16px rgba(22, 127, 202, 0.3);
	transform: translateY(-2px);
}

.neoh_fn_button:hover .icon:after {
	opacity: 0;
}

.neoh_fn_button:hover .icon:before {
	height: 26px;
}



/* Divider */
.fn__divider {
	position: absolute;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	display: block;
	z-index: 6;
	color: #060e1a;
}

.top_divider {
	top: -1px;
}

.bottom_divider {
	bottom: -1px;
}



/* Services Section */
#services {
	padding: 70px 0 60px;
	position: relative;
	scroll-margin-top: 100px;
}

#services .neoh_fn_title {
	margin-bottom: 40px;
}

/* Services Shortcode */
.neoh_fn_services ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style-type: none;
	margin-left: -40px;
}

.neoh_fn_services li {
	padding-left: 40px;
	width: 25%;
	margin-bottom: 40px;
}

.neoh_fn_services .item {
	width: 100%;
}

.neoh_fn_services .item_num {
	position: relative;
	padding-left: 16px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.neoh_fn_services .item_num span {
	background-color: var(--mc);
	color: var(--hc);
	min-width: 46px;
	line-height: 30px;
	text-align: center;
	display: block;
	position: relative;
	transition: all .3s ease;
	font-size: 16px;
	font-weight: 600;
	font-family: var(--hff);
	letter-spacing: .5px;
}

.neoh_fn_services .item_num span:after,
.neoh_fn_services .item_num span:before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	transition: all .3s ease;
}

.neoh_fn_services .item_num span:before {
	border-width: 0 0 30px 12px;
	border-bottom-color: var(--mc);
	right: 100%;
	top: 0;
}

.neoh_fn_services .item_num span:after {
	border-width: 30px 0 0 12px;
	border-left-color: var(--mc);
	left: 100%;
	top: 0;
}

.neoh_fn_services .item_content {
	padding: 18px 16px;
	border: 2px solid var(--mc);
	border-radius: 5px;
	transition: all .3s ease;
	position: relative;
}

.neoh_fn_services .item:hover .item_content {
	border-color: var(--mc);
	box-shadow:
		0 8px 40px rgba(22, 127, 202, 0.45),
		0 2px 16px rgba(22, 127, 202, 0.3);
	transform: translateY(-3px);
}

.neoh_fn_services .item:hover .item_num span {
	background-color: var(--mc);
	color: var(--hc);
}

.neoh_fn_services .item:hover .item_num span:after {
	border-left-color: var(--mc);
}

.neoh_fn_services .item:hover .item_num span:before {
	border-bottom-color: var(--mc);
}

.neoh_fn_services .fn_title {
	margin: 0;
	padding: 0;
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 18px;
}

.neoh_fn_services li:nth-of-type(2n+1) {
	margin-top: 40px;
}



/* Drop Section */
#drop {
	padding: 60px 0 60px;
	position: relative;
	background-color: var(--surface);
	scroll-margin-top: 100px;
}

#drop .neoh_fn_title {
	margin-bottom: 30px;
}

/* Drops List Shortcode */
#drop .neoh_fn_drops {
	margin-bottom: 0;
}

.neoh_fn_drops ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.neoh_fn_drops li {
	width: 100%;
	padding-left: 0;
	margin-bottom: 0;
}

.neoh_fn_drops .item {
	width: 100%;
	position: relative;
	border-radius: 10px;
	transition: transform .3s ease, box-shadow .3s ease;
}

.neoh_fn_drops .item:after {
	content: '';
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 2px solid var(--mc);
	border-radius: 10px;
	transition: all .3s ease;
}

.neoh_fn_drops .item:hover {
	transform: translateY(-4px);
	box-shadow:
		0 10px 40px rgba(22, 127, 202, 0.45),
		0 2px 16px rgba(22, 127, 202, 0.3);
}

.neoh_fn_drops .item:hover:after {
	border-color: var(--mc);
}

.neoh_fn_drops .img_holder {
	position: relative;
	border-radius: 5px;
	overflow: hidden;
	z-index: 5;
	height: 160px;
}

.neoh_fn_drops .img_holder img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 1s ease;
}

.neoh_fn_drops .item:hover .img_holder img {
	transform: scale(1.2) rotate(-5deg) translateZ(0);
}

.neoh_fn_drops .title_holder {
	text-align: center;
	padding: 12px 16px 14px;
	position: relative;
	z-index: 5;
}

.neoh_fn_drops .fn_title {
	margin: 0;
	padding: 0;
	font-size: 15px;
}

.neoh_fn_drops .fn_desc {
	font-size: 12px;
	margin-top: 4px;
	opacity: 0.7;
}




/* Gallery 1-2 */
.neoh_fn_gallery_1_2 .gallery_in {
	--gap: 20px;

	/*	padding: 0 var(--gap);*/

	display: grid;
	grid-template-columns: 2.1fr 1fr;
	grid-column-gap: var(--gap);
	grid-row-gap: var(--gap);
}

.neoh_fn_gallery_1_2 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 1s ease;
	transform: translateZ(0);
}

.neoh_fn_gallery_1_2 .row2 {
	grid-row: span 2;
}

.neoh_fn_gallery_1_2 .item {
	position: relative;
	overflow: hidden;
	border-radius: 5px;
}

.neoh_fn_gallery_1_2 .item:hover img {
	transform: scale(1.1) rotate(-5deg) translateZ(0);
}



/* Timeline */
.neoh_fn_timeline .timeline_content {
	width: 100%;
}

.neoh_fn_timeline .timeline_list {
	padding: 0;
	margin: 0;
	list-style-type: none;
	position: relative;
	overflow: hidden;
}

.neoh_fn_timeline .timeline_item {
	margin: 0;
	padding: 0;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	-webkit-transform: translateX(100%);
	-moz-transform: translateX(100%);
	transform: translateX(100%);
	opacity: 0;
	transition: all .4s ease-in-out;
}

.neoh_fn_timeline .timeline_item.previous {
	-webkit-transform: translateX(-100%);
	-moz-transform: translateX(-100%);
	transform: translateX(-100%);
}

.neoh_fn_timeline .timeline_item.active {
	position: relative;
	z-index: 5;
	opacity: 1;
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	transform: translateX(0);
}

.neoh_fn_timeline .t_item {
	padding: 40px;
	width: 100%;
	border: 2px solid var(--muted);
	border-radius: 5px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
}

.neoh_fn_timeline .t_item_img {
	width: 50%;
}

.neoh_fn_timeline .t_item_info {
	width: 50%;
	padding: 0 0 0 70px;
}

.neoh_fn_timeline .fn_date {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-bottom: 26px;
	overflow: hidden;
}

.neoh_fn_timeline .fn_read {
	margin-bottom: 0;
}

.neoh_fn_timeline .fn_date span {
	background-color: var(--surface);
	line-height: 30px;
	text-align: center;
	display: block;
	position: relative;
	transition: all .3s ease;
	font-size: 16px;
	font-weight: 400;
	font-family: var(--hff);
	letter-spacing: 0px;
	padding: 0 15px;
}

.neoh_fn_timeline .fn_date span:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	transition: all .3s ease;
	border-width: 30px 0 0 12px;
	border-left-color: var(--surface);
	left: 100%;
	top: 0;
}

.neoh_fn_timeline .fn_title {
	font-size: 22px;
	font-weight: 500;
	margin: 0;
	padding: 0;
	margin-bottom: 18px;
}

.neoh_fn_timeline .fn_desc {
	margin-bottom: 27px;
}

.neoh_fn_timeline .timeline_progress {
	padding: 0 20px;
	position: relative;
	height: 62px;
	width: 100%;
	margin-top: 20px;
}

.neoh_fn_timeline .progress_line_wrapper {
	width: 100%;
	position: relative;
	height: 100%;
	overflow: hidden;
}

.neoh_fn_timeline .progress_line {
	position: absolute;
	left: 0;
	top: 30px;
	background-color: var(--surface);
	width: 100%;
	height: 2px;

	-webkit-transition: transform .4s ease;
	-moz-transition: transform .4s ease;
	transition: transform .4s ease;
}

.neoh_fn_timeline .progress_line .active_line {
	position: absolute;
	z-index: 2;
	left: 0;
	top: 0;
	width: 0;
	height: 100%;

	background-color: var(--muted);
	-webkit-transition: width .3s ease;
	-moz-transition: width .3s ease;
	transition: width .3s ease;
}

.neoh_fn_timeline .progress_line ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 7;
}

.neoh_fn_timeline .progress_line li {
	margin: 0;
	padding: 0;
}

.neoh_fn_timeline .progress_line li.previous .circle {
	background-color: var(--bc);
	background-color: var(--mc);
}

.neoh_fn_timeline .progress_line li.active a {
	color: var(--hc);
}

.neoh_fn_timeline .progress_line li.active .circle {
	background-color: var(--mc);
}

.neoh_fn_timeline .progress_line a {
	display: block;
	text-decoration: none;
	font-size: 14px;
	text-transform: uppercase;
	font-family: var(--hff);
	color: var(--muted);
	letter-spacing: 0;
	position: absolute;
	white-space: nowrap;
	line-height: 1;
	top: 100%;
	padding: 10px 0;
	left: 100%;
}

.neoh_fn_timeline .progress_line a:after {
	content: '';
	position: absolute;
	bottom: 100%;
	width: 100%;
	height: 100%;
	left: 0;
}

.neoh_fn_timeline .progress_line .circle {
	width: 10px;
	height: 10px;
	border-radius: 100%;
	position: absolute;
	display: block;
	bottom: 100%;
	background-color: var(--surface);
	left: 50%;
	margin-left: -5px;
	margin-bottom: -6px;
}

.neoh_fn_timeline .progress_line li:nth-child(1) a {
	left: 115px;
}

.neoh_fn_timeline .progress_line li:nth-child(2) a {
	left: 350px;
}

.neoh_fn_timeline .progress_line li:nth-child(3) a {
	left: 580px;
}

.neoh_fn_timeline .progress_line li:nth-child(4) a {
	left: 810px;
}

.neoh_fn_timeline .progress_line li:nth-child(5) a {
	left: 1040px;
}

.neoh_fn_timeline .progress_line li:nth-child(6) a {
	left: 1270px;
}

.neoh_fn_timeline .progress_line li:nth-child(7) a {
	left: 1500px;
}

.neoh_fn_timeline .nav_next,
.neoh_fn_timeline .nav_prev {
	position: absolute;
	display: block;
	width: 20px;
	height: 16px;
	text-decoration: none;
	color: var(--muted);
	top: 50%;
	margin-top: -8px;
}

.neoh_fn_timeline .nav_next.inactive,
.neoh_fn_timeline .nav_prev.inactive {
	cursor: default;
	opacity: .3;
}

.neoh_fn_timeline .nav_prev:hover,
.neoh_fn_timeline .nav_next:hover {
	color: var(--hc);
}

.neoh_fn_timeline .nav_next .fn__svg,
.neoh_fn_timeline .nav_prev .fn__svg {
	display: block;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
	margin-top: -6px;
}

.neoh_fn_timeline .nav_prev .fn__svg {
	left: -3px;
	transform: rotate(180deg);
}

.neoh_fn_timeline .nav_next .fn__svg {
	right: -3px;
}

.neoh_fn_timeline .nav_prev {
	left: 0;
}

.neoh_fn_timeline .nav_next {
	right: 0;
}





/* Section Investor */
#investor {
	position: relative;
	padding: 150px 0;
}

#investor .neoh_fn_title {
	margin-bottom: 76px;
}

/* Investor List Shortcode */
.neoh_fn_investor ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style-type: none;
	margin-left: -10px;
}

.neoh_fn_investor li {
	width: 20%;
	padding-left: 10px;
	margin-bottom: 10px;
}

.neoh_fn_investor .item {
	width: 100%;
	position: relative;
	background-color: var(--surface);
	border-radius: 5px;
	overflow: hidden;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 150px;
	padding: 20px;
}

.neoh_fn_investor .item img {
	-webkit-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
	opacity: .5;
}

.neoh_fn_investor .item:hover img {
	opacity: 1;
}



/* Blog Section */
#blog {
	position: relative;
	padding: 60px 0 50px;
	background-color: var(--surface);
}

#blog .neoh_fn_title {
	margin-bottom: 36px;
}

/* Moving Box */
.neoh_fn_moving_text {
	position: fixed;
	opacity: 0;
	visibility: hidden;
	color: var(--hc);
	z-index: 102;
}

.neoh_fn_moving_text.active {
	opacity: 1;
	visibility: visible;
}

.neoh_fn_moving_box {
	position: fixed;
	width: 370px;
	height: 270px;
	z-index: 999;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	right: 100%;
	margin-right: 60px;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	border-radius: 5px;
}

.neoh_fn_moving_box.active {
	opacity: 1;
	visibility: visible;
}

/* Moving Blog List Shortcode */
.neoh_fn_moving_blog .moving_img {
	opacity: 0;
	height: 0;
	width: 0;
	overflow: hidden;
	z-index: -2;
	position: absolute;
	margin: 0;
	padding: 0;
	outline: none;
	visibility: hidden;
}

.neoh_fn_moving_blog ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style-type: none;
	margin-left: -50px;
}

.neoh_fn_moving_blog li {
	padding-left: 50px;
	margin-bottom: 50px;
	width: 33.3333%;
}

.neoh_fn_moving_blog .item {
	width: 100%;
}

.neoh_fn_moving_blog .fn_date {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-bottom: 26px;
}

.neoh_fn_moving_blog .fn_date span {
	background-color: var(--surface);
	line-height: 30px;
	text-align: center;
	display: block;
	position: relative;
	transition: all .3s ease;
	font-size: 16px;
	font-weight: 400;
	font-family: var(--hff);
	letter-spacing: 0px;
	padding: 0 15px;
}

.neoh_fn_moving_blog .fn_date span:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	transition: all .3s ease;
	border-width: 30px 0 0 12px;
	border-left-color: var(--surface);
	left: 100%;
	top: 0;
}

.neoh_fn_moving_blog .fn_title {
	margin: 0;
	padding: 0;
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 18px;
}

.neoh_fn_moving_blog .fn_desc {
	margin-bottom: 23px;
}

.neoh_fn_moving_blog .fn_read {
	margin-bottom: 0;
}




.neoh_fn_content {
	position: relative;
	z-index: 2;
	background-color: var(--sbc);
}

/* Footer */
.neoh_fn_main[data-footer-sticky="on"] #footer {
	position: sticky;
	bottom: 0;
	z-index: 0;
}

.neoh_fn_footer {
	background-color: var(--sbc);
}

.neoh_fn_footer .footer_top {
	padding: 120px 0;
	position: relative;
}

.neoh_fn_footer .ft_in {
	max-width: 670px;
	margin: 0 auto;
}

.neoh_fn_footer .footer_top .desc {
	text-align: center;
}

.neoh_fn_footer .footer_top .img {
	margin-bottom: 33px;
}

.neoh_fn_footer .footer_top .fn_title {
	font-size: 36px;
	margin: 0;
	padding: 0;
	margin-bottom: 15px;
}

.neoh_fn_footer .footer_top .fn_desc {
	margin: 0;
	padding: 0;
	margin-bottom: 22px;
}

.neoh_fn_footer .subscribe_form {
	width: 100%;
	padding: 0 40px;
	margin-bottom: 25px;
}

.neoh_fn_footer .subscribe_in {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.neoh_fn_footer .subscribe_form input[type="text"] {
	width: 100%;
	margin-right: 10px;
	height: 50px;
	min-width: inherit;
	background-color: var(--surface);
	border: 2px solid var(--muted);
	border-radius: 5px;
	outline: none;
	font-size: 16px;
	font-family: var(--hff);
	padding: 0 15px;
	line-height: 46px;
	color: var(--hc);
}

.neoh_fn_footer .subscribe_form input[type="text"]:focus {
	background-color: var(--surface);
	border-color: var(--muted);
}

.neoh_fn_footer .subscribe_form a {
	flex: none;
}

.neoh_fn_footer .neoh_fn_social_list ul {
	justify-content: center;
}

.neoh_fn_footer .footer_bottom {
	border-top: 1px solid rgba(255, 255, 255, .1);
	padding: 31px 0 28px;
}

.neoh_fn_footer .fb_in {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	-ms-align-items: center;
	align-items: center;
}

.neoh_fn_footer .fb_left p {
	margin: 0;
	padding: 0;
	font-size: 16px;
	font-family: var(--hff);
}

.neoh_fn_footer .fb_left p a {
	text-decoration: none;
	color: var(--hc);
}

.neoh_fn_footer .fb_left p a:hover {
	color: var(--hc);
}

.neoh_fn_footer .fb_right ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	list-style-type: none;
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
	margin-left: -30px;
}

.neoh_fn_footer .fb_right li {
	padding-left: 30px;
	margin: 5px 0;
}

.neoh_fn_footer .fb_right a {
	display: block;
	text-decoration: none;
	font-size: 16px;
	color: var(--bc);
	font-family: var(--hff);
}

.neoh_fn_footer .fb_right a:hover {
	color: var(--hc);
}




/* Social List */
.neoh_fn_social_list ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
	margin-left: -30px;
}

.neoh_fn_social_list li {
	margin: 5px 0px 5px 30px;
	padding: 0;
}

.neoh_fn_social_list a {
	color: var(--bc);
	font-size: 20px;
	display: block;
	text-decoration: none;
	text-align: center;
	line-height: 30px;
}

.neoh_fn_social_list a i {
	transition: none;
}

.neoh_fn_social_list a i:before {
	margin: 0;
	padding: 0;
	display: block;
	width: inherit;
}

.neoh_fn_social_list a:hover {
	color: var(--hc);
}






/* Right Navigation */

/* since v2.0 */
/* ********** */
.nav_overlay.active {
	display: block;
}

.nav_overlay,
.neoh_fn_nav {
	display: none;
}

.neoh_fn_nav.active {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

/* ********** */
/* ********** */
.neoh_fn_nav {
	transition: all 1s .3s cubic-bezier(0.02, 0.19, 0, 0.96);
	transform: translateX(102%);
	position: fixed;
	height: 100vh;
	width: 50%;
	min-width: 850px;
	z-index: 999;
	background: linear-gradient(160deg, rgba(5, 15, 35, 0.97) 0%, rgba(8, 28, 60, 0.96) 40%, rgba(10, 20, 50, 0.97) 100%);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	border-left: 1px solid rgba(22, 127, 202, 0.18);
	box-shadow: -8px 0 40px rgba(0, 80, 200, 0.18), inset 1px 0 0 rgba(22, 127, 202, 0.10);
	right: 0;
	top: 0;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	justify-content: space-between;
}

.neoh_fn_nav .nav_buttons,
.neoh_fn_nav .nav_footer {
	opacity: 0;
	transition: opacity .3s ease;
}

.neoh_fn_nav .trigger {
	position: absolute;
	top: 30px;
	right: 73px;
}

.neoh_fn_nav .nav_content {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	padding-left: 80px;
	padding-left: 4.16vw;
	padding-left: calc(20px + 3.1vw);
	padding-right: 80px;
	padding-right: 4.16vw;
	padding-right: calc(20px + 3.1vw);
	padding-top: 150px;
	padding-top: 7.81vw;
	padding-top: calc(50px + 5.2vw);
	padding-bottom: 35px;
	overflow-y: scroll;
	overflow-x: hidden;
}

.neoh_fn_nav .nav_content {
	scrollbar-width: thin;
	scrollbar-color: rgba(22, 127, 202, 0.5) transparent;
}

.neoh_fn_nav .nav_content::-webkit-scrollbar {
	width: 3px;
}

.neoh_fn_nav .nav_content:-webkit-scrollbar-track {
	background: transparent;
}

.neoh_fn_nav .nav_content::-webkit-scrollbar-thumb {
	background-color: rgba(22, 127, 202, 0.5);
	border-radius: 10px;
	border: none;
}

.neoh_fn_nav .nav_menu {
	margin-bottom: 38px;
}

.neoh_fn_nav .nav_menu ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.neoh_fn_nav ul.sub-menu {
	display: none;
	margin: 25px 0 4px 30px;
}

.neoh_fn_nav .nav_menu ul.sub-menu li {
	margin-bottom: 27px;
}

.neoh_fn_nav .nav_menu ul.sub-menu li:last-child {
	margin-bottom: 0px;
}

.neoh_fn_nav ul.sub-menu a {
	font-size: 40px;
}

.neoh_fn_nav .nav_menu ul.sub-menu a:before {
	height: 1px;
}

.neoh_fn_nav .nav_menu li {
	margin-bottom: 30px;
	transition: all .5s ease;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: flex-start;
	align-items: flex-start;
}

.neoh_fn_nav .nav_menu li:last-child {
	margin-bottom: 0;
}

.neoh_fn_nav .nav_menu a {
	font-size: 30px;
	display: block;
	text-decoration: none;
	font-family: var(--hff);
	color: var(--hc);
	line-height: 1;
}

.neoh_fn_nav .nav_menu a {
	background-image: linear-gradient(to right,
			var(--mc),
			var(--mc) 50%,
			var(--hc) 50%);
	background-size: 200% 100%;
	background-position: -100%;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	transition: all 0.5s ease-in-out;
	position: relative;
}

.neoh_fn_nav .nav_menu a:before {
	content: '';
	background: var(--mc);
	display: block;
	position: absolute;
	bottom: -3px;
	left: 0;
	width: 0;
	height: 3px;
	transition: all 0.5s ease-in-out;
}

.neoh_fn_nav .nav_menu .menu-item-has-children>a:after {
	content: '';
	position: absolute;
	left: 100%;
	margin-left: 10px;
	width: 4px;
	height: 4px;
	background-color: var(--mc);
	border-radius: 100%;
	top: 50%;
	margin-top: -2px;
}

.neoh_fn_nav .nav_menu a:hover {
	background-position: 0;
	background-image: linear-gradient(to right,
			var(--mc),
			var(--mc) 50%,
			transparent 50%);
}

.neoh_fn_nav .nav_menu a:hover::before {
	width: 100%;
}

.neoh_fn_nav .nav_menu .active a {
	color: var(--mc);
}

.neoh_fn_nav .nav_buttons {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}

.neoh_fn_nav .nav_buttons a {
	margin: 5px 20px 5px 0;
}

.neoh_fn_nav .nav_buttons a:last-child {
	margin-right: 0;
}

.neoh_fn_nav .nav_footer {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	position: relative;
	justify-content: space-between;
	padding: 32px 0 28px;
	padding-left: 80px;
	padding-left: 4.16vw;
	padding-left: calc(20px + 3.1vw);
	padding-right: 80px;
	padding-right: 4.16vw;
	padding-right: calc(20px + 3.1vw);
}

.neoh_fn_nav .nav_footer .nf_left {
	margin-right: 0;
}

.neoh_fn_nav .nav_footer:after {
	content: '';
	position: absolute;
	width: 0;
	height: 1px;
	background: linear-gradient(to right, transparent, rgba(22, 127, 202, 0.5), transparent);
	left: 0;
	top: 0;
	transition: all .5s .3s ease;
}

.neoh_fn_nav .nav_footer .nf_left p {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-family: var(--hff);
	color: rgba(180, 200, 230, 0.7);
	letter-spacing: 0.03em;
}

.neoh_fn_nav .nav_footer .nf_left p .nav_linkedin_link {
	text-decoration: none;
	color: rgba(22, 127, 202, 0.9);
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-weight: 600;
	transition: color 0.3s ease, filter 0.3s ease;
}

.neoh_fn_nav .nav_footer .nf_left p .nav_linkedin_link:hover {
	color: #3fa9f5;
	filter: drop-shadow(0 0 6px rgba(22, 127, 202, 0.6));
}

.neoh_fn_nav .nav_footer .nf_left p .nav_linkedin_icon {
	flex-shrink: 0;
}

.nav_overlay {
	position: fixed;
	width: 100%;
	z-index: 100;
	background-color: rgba(0, 0, 0, 0.8);
	top: 0;
	left: 0;
	transition: all 1s .7s cubic-bezier(0.02, 0.19, 0, 0.96);
	height: 100vh;
	transform: translateX(-102%);
	cursor: pointer;
}

.nav_overlay.go {
	transition: all 1s .3s cubic-bezier(0.02, 0.19, 0, 0.96);
	transform: translateX(0%);
}

.neoh_fn_nav.go {
	transition: all 1s 1.3s cubic-bezier(0.02, 0.19, 0, 0.96);
	transform: translateX(0%);
}

.neoh_fn_nav .nav_buttons.ready,
.neoh_fn_nav .nav_footer.ready {
	opacity: 1;
}

.neoh_fn_nav .nav_footer.ready:after {
	width: 100%;
}




/* Page Title */
.neoh_fn_pagetitle {
	width: 100%;
	position: relative;
	padding: 244px 0 143px;
}

.neoh_fn_pagetitle .bg_color {
	background-color: rgba(0, 0, 0, 0.85);
}

.neoh_fn_pagetitle .pt_content {
	position: relative;
	z-index: 3;
	text-align: center;
}

.neoh_fn_pagetitle .fn_title {
	margin: 0;
	padding: 0;
	font-size: 72px;
	text-transform: uppercase;
	letter-spacing: 3px;
	line-height: 1;
	font-weight: 300;
	margin-bottom: 11px;
}

.neoh_fn_pagetitle .fn_desc {
	margin: 0;
	padding: 0;
	color: var(--bc);
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
}

.neoh_fn_pagetitle .fn_desc a {
	color: var(--bc);
	text-decoration: none;
}

.neoh_fn_pagetitle .fn_desc a:hover {
	color: var(--mc);
}

.neoh_fn_pagetitle .separator {
	margin: 0 9px;
}



/* Collection Page */
.neoh_fn_collectionpage {
	background-color: var(--surface);
	padding: 150px 0;
}

.neoh_fn_collection {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: flex-start;
	align-items: flex-start;
}

.neoh_fn_clist {
	width: 100%;
}

.neoh_fn_clist .neoh_fn_title {
	margin-bottom: 50px;
}


/* Filters */
[data-filter-sticky="on"] .neoh_fn_filters {
	position: sticky;
	top: 100px;
}

.neoh_fn_filters {
	width: 350px;
	min-width: 350px;
	margin-right: 50px;
}

.neoh_fn_filters .filter_item {
	margin-bottom: 10px;
	background-color: var(--sbc);
	border-radius: 5px;
	overflow: hidden;
}

.neoh_fn_filters .filter_item:last-child {
	margin-bottom: 0;
}

.neoh_fn_filters .filter_item__header {
	position: relative;
	padding: 20px 30px;
	border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.neoh_fn_filters .filter_item__header .text {
	line-height: 30px;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--bc);
	font-family: var(--hff);
}

.neoh_fn_filters .closed .filter_item__header .fn__svg {
	transform: rotate(180deg);
}

.neoh_fn_filters .filter_item__header .fn__svg {
	width: 14px;
	height: 14px;
	position: absolute;
	color: var(--muted);
	display: block;
	top: 50%;
	margin-top: -7px;
	right: 20px;
	transition: transform 100ms ease 0s;
}

.neoh_fn_filters .filter_item__content {
	width: 100%;
	height: initial;
	overflow: visible;
	transition: height 100ms ease 0s;
}

.neoh_fn_filters .closed .filter_item__content {
	height: 0;
	overflow: hidden;
}

.neoh_fn_filters .ic_in {
	padding: 23px 20px 21px 30px;
}

.neoh_fn_filters .items {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin-left: -10px;
	max-height: 200px;
	overflow-y: scroll;
}

.neoh_fn_filters .items {
	scrollbar-width: thin;
	scrollbar-color: var(--bc) var(--hc);
}

.neoh_fn_filters .items::-webkit-scrollbar {
	width: 2px;
}

.neoh_fn_filters .items:-webkit-scrollbar-track {
	background: var(--muted);
}

.neoh_fn_filters .items::-webkit-scrollbar-thumb {
	background-color: var(--muted);
}

.neoh_fn_filters .items>li {
	margin: 0;
	padding: 0;
	padding-left: 10px;
	margin-bottom: 3 px;
	width: 100%;
}

.neoh_fn_filters .items>li:last-child {
	margin-bottom: 0;
}

.neoh_fn_filters .checkbox {
	width: 100%;
	display: block;
	position: relative;
	padding: 5px 0 5px 26px;
	cursor: pointer;
	font-size: 16px;
	color: var(--bc);
	font-family: var(--hff);
}

.neoh_fn_filters .checkbox .amount {
	color: var(--muted);
}

.neoh_fn_filters .checkbox .checkmark .fn__svg {
	width: 12px;
	height: 12px;
	position: relative;
	top: 1px;
	left: 1px;
	display: none;
	color: var(--mc);
}

.neoh_fn_filters .checkbox input:checked~.checkmark {
	border-color: var(--mc);
}

.neoh_fn_filters .checkbox input:checked~.checkmark .fn__svg {
	display: block;
}

.neoh_fn_filters .checkbox input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.neoh_fn_filters .checkbox .checkmark {
	width: 16px;
	height: 16px;
	display: block;
	position: absolute;
	top: 50%;
	margin-top: -9px;
	left: 0;
	border: 1px solid var(--muted);
	border-radius: 3px;
	background-color: var(--surface);
}

.neoh_fn_filters .checkbox .checkmark:after {
	content: "";
	position: absolute;
	display: none;
}


/* Result Box */
.neoh_fn_result_box {
	width: 100%;
	background-color: var(--sbc);
	min-height: 70px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
	padding: 15px 20px 5px;
	border-radius: 5px;
	margin-bottom: 50px;
}

.neoh_fn_result_box>* {
	margin: 0 10px 10px 0;
}

.neoh_fn_result_box .filter_count {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	font-size: 14px;
	font-family: var(--hff);
	font-weight: 300;
	height: 40px;
	line-height: 36px;
	text-align: center;
	border: 2px solid var(--muted);
	border-radius: 5px;
	padding: 0 0 0 20px;
	position: relative;
}

.neoh_fn_result_box .filter_count span {
	position: relative;
	min-width: 34px;
	padding: 0 8px;
	display: block;
	right: 0;
	text-align: center;
	white-space: nowrap;
	margin-left: 20px;
}

.neoh_fn_result_box .filter_count span:after {
	right: 100%;
	width: 2px;
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	background-color: var(--muted);
}

.neoh_fn_result_box .result_item a {
	position: relative;
	border-radius: 5px;
	display: block;
	text-decoration: none;
	padding: 0 56px 0 20px;
	line-height: 36px;
	white-space: nowrap;
	font-size: 14px;
	color: var(--muted);
	font-family: var(--hff);
	border: 2px solid var(--muted);
}

.neoh_fn_result_box .result_item span {
	color: var(--bc);
}

.neoh_fn_result_box .result_item a:after {
	width: 2px;
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 34px;
	background-color: var(--muted);
	transition: all .3s ease;
}

.neoh_fn_result_box .result_item .fn__svg {
	width: 10px;
	height: 10px;
	display: block;
	position: absolute;
	right: 12px;
	top: 13px;
	color: var(--muted);
}

.neoh_fn_result_box .result_item a:before {
	width: 2px;
	content: '';
	position: absolute;
	top: 0;
	height: 0;
	right: 34px;
	background-color: var(--muted);
	transition: all .3s ease;
}

.neoh_fn_result_box .result_item a:hover {
	border-color: var(--muted);
}

.neoh_fn_result_box .result_item a:hover .fn__svg {
	color: var(--bc);
}

.neoh_fn_result_box .result_item a:hover:after {
	opacity: 0;
}

.neoh_fn_result_box .result_item a:hover:before {
	height: 100%;
}

.neoh_fn_result_box .clear_all {
	font-size: 14px;
	color: var(--muted);
	letter-spacing: 0;
	font-family: var(--hff);
	text-decoration: none;
	line-height: 40px;
	padding: 0 10px;
	margin-right: 0;
}

.neoh_fn_result_box .clear_all:hover {
	color: var(--mc);
}

/* Pagination */
.neoh_fn_pagination ul {
	margin: 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	padding: 0;
	list-style-type: none;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
	margin-left: -10px;
}

.neoh_fn_pagination li {
	margin: 0 0 5px 0;
	padding: 0;
	padding-left: 10px;
}

.neoh_fn_pagination span,
.neoh_fn_pagination a {
	text-decoration: none;
	width: 60px;
	height: 50px;
	display: block;
	text-align: center;
	line-height: 46px;
	border: 2px solid var(--muted);
	color: var(--bc);
	font-size: 18px;
	font-weight: 400;
	border-radius: 5px;
	transition: all .3s ease;
	font-family: var(--hff);
}

.neoh_fn_pagination .current {
	border-color: var(--muted);
	color: var(--muted);
}

.neoh_fn_pagination span:hover,
.neoh_fn_pagination a:hover {
	border-color: var(--muted);
	transform: translateY(-3px);
}

.neoh_fn_pagination.multiple span,
.neoh_fn_pagination.multiple a {
	min-width: 80px;
	width: auto;
	padding: 0 10px;
}



/* About Page*/
/* Section Information */
#information {
	padding: 150px 0;
	background-color: var(--surface);
}

/* Guarantee List */
.neoh_fn_gualist {
	margin-bottom: 105px;
}

.neoh_fn_gualist ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	margin-left: -45px;
	list-style-type: none;
}

.neoh_fn_gualist li {
	width: 33.3333%;
	padding-left: 40px;
	margin-bottom: 40px;
}

.neoh_fn_gualist .item {
	width: 100%;
	border: 2px solid var(--muted);
	border-radius: 5px;
	padding: 50px 40px 52px;
	position: relative;
	text-align: center;
	height: 100%;
	transition: all .3s ease;
}

.neoh_fn_gualist .fn__svg {
	width: 60px;
	height: 60px;
	display: inline-block;
	color: var(--muted);
	margin-bottom: 18px;
}

.neoh_fn_gualist .fn_title {
	margin: 0;
	padding: 0;
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 18px;
}

.neoh_fn_gualist .line {
	display: block;
	width: 150px;
	height: 10px;
	position: absolute;
	background-color: var(--surface);
	top: 0;
	left: 50%;
	margin-left: -75px;
	transition: all .3s ease;
}

.neoh_fn_gualist .line:before,
.neoh_fn_gualist .line:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	transition: all .3s ease;
	top: 0;
}

.neoh_fn_gualist .line:before {
	border-width: 0 10px 10px 0;
	border-right-color: var(--surface);
	right: 100%;
}

.neoh_fn_gualist .line:after {
	border-width: 10px 10px 0 0;
	border-top-color: var(--surface);
	left: 100%;
}

.neoh_fn_gualist .item:hover {
	border-color: var(--mc);
}

.neoh_fn_gualist .item:hover .line {
	background-color: var(--mc);
}

.neoh_fn_gualist .item:hover .line:before {
	border-right-color: var(--mc);
}

.neoh_fn_gualist .item:hover .line:after {
	border-top-color: var(--mc);
}

/* Video Section */
#video {
	position: relative;
}

.neoh_fn_video {
	padding: 250px 0;
	position: relative;
}

.neoh_fn_video .bg_color {
	background-color: rgba(0, 0, 0, .85);
}

.neoh_fn_video .v_content {
	position: relative;
	z-index: 5;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
}

.neoh_fn_video a {
	position: relative;
	z-index: 5;
}

.neoh_fn_video a .fn__svg {
	width: 120px;
	height: 120px;
	display: block;
	transition: all 1s ease;
	border-radius: 50%;
}

.neoh_fn_video a .stroke-solid {
	stroke-width: 6px;
	stroke: rgba(85, 85, 85, .7);
}

.neoh_fn_video a .icon {
	color: var(--bc);
}

.neoh_fn_video a:hover .stroke-solid {
	opacity: 1;
	stroke-dashoffset: 300;
}

.neoh_fn_video a:hover .icon {
	transform: scale(.8);
}

.neoh_fn_video a .stroke-solid {
	stroke-dashoffset: 0;
	stroke-dashArray: 300;
	stroke-width: 4px;
	transition: stroke-dashoffset 1s ease, opacity 1s ease;
}

.neoh_fn_video a .icon {
	transform: scale(.7);
	transform-origin: 50% 50%;
	transition: transform 200ms ease-out;
}

.neoh_fn_video a:hover .fn__svg {
	background-color: rgba(255, 255, 255, .05);
}

/* Team Section */
#team {
	background-color: var(--surface);
	position: relative;
	padding: 150px 0 105px;
}

#team .neoh_fn_title {
	margin-bottom: 31px;
}

#team .fn_description {
	text-align: center;
	margin-bottom: 62px;
}

.neoh_fn_team .team_list {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	margin-left: -45px;
	list-style-type: none;
}

.neoh_fn_team .team_item {
	padding-left: 45px;
	margin-bottom: 45px;
	width: 33.3333%;
}

.neoh_fn_team .t_item {
	widows: 100%;
	border: 2px solid var(--muted);
	border-radius: 5px;
	transition: all .3s ease;
}

.neoh_fn_team .person_info {
	padding: 40px 40px 22px;
	text-align: center;
}

.neoh_fn_team .img_holder {
	width: 100%;
	max-width: 240px;
	margin: 0 auto 26px auto;
}

.neoh_fn_team .img_holder img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 100%;
}

.neoh_fn_team .fn_title {
	margin: 0;
	padding: 0;
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 8px;
}

.neoh_fn_team .fn_desc {
	margin: 0;
	padding: 0;
	font-size: 18px;
}

.neoh_fn_team .person_social {
	width: 100%;
	padding: 0 40px;
}

.neoh_fn_team .person_social ul {
	margin: 0;
	padding: 6px 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	background-color: var(--surface);
	margin-left: -8px;
	position: relative;
	transition: all .3s ease;
}

.neoh_fn_team .person_social li {
	margin: 5px 0 5px 8px;
	padding: 0;
}

.neoh_fn_team .person_social a {
	color: var(--muted);
	font-size: 18px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	text-align: center;
	padding: 0 2px;
}

.neoh_fn_team .person_social a:hover {
	color: var(--bc);
}

.neoh_fn_team .person_social .fn-icon-facebook,
.neoh_fn_team .person_social .fn-icon-pinterest {
	top: 1px;
}

.neoh_fn_team .person_social i {
	position: relative;
	transition: none;
}

.neoh_fn_team .person_social i:before {
	display: block;
	margin: 0;
}

.neoh_fn_team .person_social ul:after,
.neoh_fn_team .person_social ul:before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	transition: all .3s ease;
}

.neoh_fn_team .person_social ul:before {
	border-width: 0 0 40px 12px;
	border-bottom-color: var(--surface);
	right: 100%;
	top: 0;
}

.neoh_fn_team .person_social ul:after {
	border-width: 40px 0 0 12px;
	border-left-color: var(--surface);
	left: 100%;
	top: 0;
}

.neoh_fn_team .t_item:hover {
	border-color: var(--mc);
}


/* Totop Button */
.neoh_fn_totop {
	position: fixed;
	bottom: 30px;
	right: 30px;
	display: block;
	width: 80px;
	height: 80px;
	border-radius: 100%;
	z-index: 990;
	color: var(--bc);
	opacity: 0;
	visibility: hidden;
	transition: all .3s ease;
	transform: translateY(30px);
}

.neoh_fn_totop.active {
	opacity: 1;
	transform: translateY(0px);
	visibility: visible;
}

.neoh_fn_totop .circle {
	left: -2px;
	right: -2px;
	top: -2px;
	bottom: -2px;
	display: block;
	position: absolute;
	z-index: 55;
}

.neoh_fn_totop .circle .fn__svg {
	display: block;
	width: 100%;
	height: 100%;
	transform: rotateY(180deg);
}

.neoh_fn_totop .circle .stroke-solid {
	fill: none;
	stroke-width: 2px;
	stroke-dashoffset: 300;
	stroke-dashArray: 300;
	stroke: var(--mc);
	transition: all .1s ease;
}

.neoh_fn_totop .arrow {
	position: absolute;
	top: 15px;
	left: 50%;
	display: block;
	transition: all .3s ease;
}

.neoh_fn_totop .arrow:after {
	content: '';
	position: absolute;
	width: 2px;
	height: 40px;
	background-color: var(--bc);
	left: 50%;
	margin-left: -1px;
	transition: all .3s ease;
	top: 7px;
}

.neoh_fn_totop .arrow .fn__svg {
	position: absolute;
	display: block;
	top: 0px;
	transform: rotate(-90deg);
	left: 50%;
	margin-left: -9px;
	z-index: 3;
}

.neoh_fn_totop:hover {
	color: var(--mc);
}

.neoh_fn_totop:hover .arrow:after {
	background-color: var(--mc);
}

.neoh_fn_totop:hover .arrow {
	top: 30px;
	-webkit-animation: topArrow 1.5s infinite;
	animation: topArrow 1.5s infinite;
}





.neoh_fn_product_modal {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	padding: 60px;
	padding: 6.7%;
}

.neoh_fn_product_modal.reverse {
	-webkit-flex-direction: row-reverse;
	-moz-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	-o-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.neoh_fn_product_modal.reverse .content_item {
	padding-left: 0;
	padding-right: 20px;
}

.neoh_fn_product_modal .img_item {
	width: 50%;
	position: relative;
	padding-right: 20px;
}

.neoh_fn_product_modal .img_item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 13px;
	position: relative;
	z-index: 3;
	box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.6);
}

.neoh_fn_product_modal .content_item {
	width: 50%;
	padding-left: 20px;
}

.neoh_fn_product_modal .neoh_fn_title {
	margin-bottom: 31px;
}

.neoh_fn_product_modal .desc p {
	margin-bottom: 27px;
}

.neoh_fn_product_modal .desc p:last-child {
	margin-bottom: 0;
}

.neoh_fn_product_modal .desc p a {
	text-decoration: none;
	color: var(--mc);
	border-bottom: 1px solid transparent;
	margin-left: 5px;
}

.neoh_fn_product_modal .desc p a:hover {
	border-bottom-color: var(--mc);
}

.neoh_fn_product_modal .desc {
	margin-bottom: 37px;
}

.neoh_fn_product_modal .buttons {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
}

.neoh_fn_product_modal .buttons a {
	margin: 5px 20px 5px 0;
}

.neoh_fn_product_modal .buttons .disable {
	display: none;
}

.neoh_fn_product_modal .buttons a:last-child {
	margin-right: 0;
}

/*------------------------------------------------------------------*/
/*	xx) Modalbox
/*------------------------------------------------------------------*/
.neoh_fn_modal,
.neoh_fn_modal * {
	box-sizing: border-box;
}

.neoh_fn_modal {
	position: fixed;
	top: 0px;
	width: 100%;
	height: 100%;
	background-color: rgba(45, 47, 56, 0.8);
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	z-index: -9;
	transition: all 0.3s ease;
	transform: scale(0.9) translateY(-250px);
	padding: 40px;
}

.neoh_fn_modal.opened {
	opacity: 1;
	visibility: visible;
	z-index: 99999;
	transform: scale(1) translateY(0px);
}

.neoh_fn_modal .modal_closer {
	position: absolute;
	bottom: 100%;
	right: 10px;
	width: 50px;
	height: 24px;
}

.neoh_fn_modal .modal_closer .fn__svg {
	width: 7px;
	height: 7px;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -3px 0 0 -3px;
	margin: -3.5px 0 0 -3.5px;
}

.neoh_fn_modal .modal_closer a {
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--muted);
	border-radius: 5px 5px 0 0;
	color: var(--bc);
}

.neoh_fn_modal .modal_closer a:hover {
	background-color: var(--muted);
	color: var(--hc);
}

.neoh_fn_modal .modal_in {
	position: relative;
	width: 900px;
	max-width: 100%;
	height: auto;
	background: var(--surface);
	border-radius: 10px;
}

.neoh_fn_modal .modal_content {
	float: left;
	width: 100%;
	clear: both;
	position: relative;
	overflow-y: scroll;
	overflow-x: hidden;
	max-height: 90vh;
	max-height: calc(100vh - 80px);
}

.neoh_fn_modal .modal_content {
	scrollbar-width: thin;
	scrollbar-color: var(--bc) var(--hc);
}

.neoh_fn_modal .modal_content::-webkit-scrollbar {
	width: 0px;
}



/* Blog Page */
.neoh_fn_blog_page {
	background-color: var(--surface);
	padding: 150px 0 145px;
}

.neoh_fn_blog_page .neoh_fn_moving_blog li {
	margin-bottom: 100px;
}



/* Contact Page */
/* â”€â”€ Contact section â”€â”€ */
.contact_section {
	background: var(--surface);
	padding: 52px 0 48px;
	border-top: 1px solid rgba(22, 127, 202, 0.1);
	scroll-margin-top: 100px;
}

.contact_grid {
	display: grid;
	grid-template-columns: 1fr 1.4fr;
	gap: 48px;
	align-items: start;
}

/* Left column */
.contact_logo {
	margin-bottom: 20px;
}

.contact_logo img {
	height: 42px;
	width: auto;
	opacity: 0.9;
}

/* Header logo — dark/light switching */
.logo a img {
	height: 68px;
	width: auto;
}

.logo-dark-mode {
	display: block;
}

.logo-light-mode {
	display: none;
}

body.light-mode .logo-dark-mode {
	display: none;
}

body.light-mode .logo-light-mode {
	display: block;
}

.contact_title {
	font-family: 'Raleway', sans-serif;
	font-size: clamp(22px, 2.4vw, 30px);
	font-weight: 700;
	color: var(--mc);
	margin: 0 0 10px;
	line-height: 1.2;
}

.contact_sub {
	font-size: 14px;
	color: var(--bc);
	line-height: 1.65;
	margin: 0 0 18px;
	opacity: 0.8;
	max-width: 340px;
}

.contact_badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: var(--ai-blue);
	background: rgba(22, 127, 202, 0.08);
	border: 1px solid rgba(22, 127, 202, 0.2);
	border-radius: 20px;
	padding: 5px 14px;
	margin-bottom: 24px;
	font-family: var(--hff);
	letter-spacing: 0.3px;
}

.contact_badge_dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--ai-blue);
	box-shadow: 0 0 6px var(--ai-blue);
	animation: blink 1.4s ease infinite;
	flex-shrink: 0;
}

/* Info cards */
.contact_info_cards {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.contact_info_card {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 12px 14px;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 10px;
	transition: border-color 0.2s ease, background 0.2s ease;
}

.contact_info_card:hover {
	border-color: rgba(22, 127, 202, 0.3);
	background: rgba(22, 127, 202, 0.04);
}

.ci_icon {
	font-size: 18px;
	line-height: 1;
	margin-top: 1px;
	flex-shrink: 0;
}

.ci_label {
	font-size: 10px;
	font-family: var(--hff);
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: var(--ai-blue);
	margin: 0 0 4px;
}

.ci_value {
	font-size: 13px;
	color: var(--bc);
	margin: 0;
}

.ci_link {
	display: block;
	font-size: 13px;
	color: var(--bc);
	text-decoration: none;
	line-height: 1.8;
	transition: color 0.2s ease;
}

.ci_link:hover {
	color: var(--hc);
}

.ci_email {
	color: var(--ai-blue) !important;
}

.ci_email:hover {
	color: var(--hc) !important;
	text-decoration: underline;
}

/* Right column â€” form */
.contact_right {
	background: rgba(22, 127, 202, 0.03);
	border: 1px solid rgba(22, 127, 202, 0.1);
	border-radius: 16px;
	padding: 32px 28px;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.contact_form {
	margin: 0;
}

.contact_form_grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.cf_field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.cf_full {
	grid-column: 1 / -1;
}

.cf_field label {
	font-size: 11px;
	font-family: var(--hff);
	text-transform: uppercase;
	letter-spacing: 1.2px;
	color: rgba(192, 200, 212, 0.7);
}

.cf_field input,
.cf_field textarea {
	background: rgba(6, 14, 26, 0.8);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 8px;
	color: rgba(220, 228, 240, 0.9);
	font-family: var(--bff);
	font-size: 13.5px;
	padding: 10px 14px;
	outline: none;
	width: 100%;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.5), inset 0 -1px 2px rgba(255, 255, 255, 0.03);
}

.cf_field input::placeholder,
.cf_field textarea::placeholder,
.eng_input::placeholder {
	color: rgba(140, 155, 175, 0.45);
	font-style: italic;
}

.cf_field input:focus,
.cf_field textarea:focus {
	border-color: rgba(22, 127, 202, 0.45);
	box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.5), 0 0 0 3px rgba(22, 127, 202, 0.1);
}

.cf_field textarea {
	height: 90px;
	resize: none;
	line-height: 1.5;
}

/* Submit button */
.contact_submit_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	background: transparent;
	color: var(--bc);
	border: 2px solid var(--muted);
	border-radius: 5px;
	padding: 0 30px;
	height: 52px;
	font-size: 15px;
	font-weight: 600;
	font-family: var(--hff);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 3px 14px rgba(22, 127, 202, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.contact_submit_btn:hover {
	border-color: var(--mc);
	color: var(--hc);
	background: rgba(15, 111, 255, 0.08);
	box-shadow: 0 8px 40px rgba(22, 127, 202, 0.45), 0 2px 16px rgba(22, 127, 202, 0.3);
	transform: translateY(-2px);
}

.contact_submit_btn svg {
	transition: transform 0.2s ease;
}

.contact_submit_btn:hover svg {
	transform: translateX(3px);
}

/* Footer top padding reset */
.neoh_fn_footer .footer_top {
	padding: 0;
}

/* Responsive */
@media (max-width: 900px) {
	.contact_grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}
}

@media (max-width: 600px) {
	.contact_form_grid {
		grid-template-columns: 1fr;
	}

	.contact_section {
		padding: 40px 0;
	}
}

/* Legacy contact form kept for compatibility */
.contact_form {
	margin-bottom: 0;
}

.contact_form .input_list ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.contact_form .input_list li {
	margin: 0;
	padding: 0;
	margin-bottom: 26px;
}

.contact_form .input_list li:nth-last-child(2) {
	margin-bottom: 30px;
}

.contact_form .input_list li:last-child {
	margin-bottom: 0px;
}

.contact_form .input_list label {
	display: block;
	width: 100%;
	font-size: 18px;
	color: var(--hc);
	margin-bottom: 4px;
}

.contact_form .input_list textarea,
.contact_form .input_list input {
	display: block;
	width: 100%;
	min-width: 100%;
	min-width: inherit;
	height: 50px;
	line-height: 46px;
	border: 2px solid var(--muted);
	border-radius: 5px;
	outline: none;
	padding: 0 15px;
	font-size: 16px;
	color: var(--bc);
	background-color: var(--surface);
}

.contact_form .input_list textarea:focus,
.contact_form .input_list input:focus {
	background-color: transparent;
	border-color: var(--muted);
}

.contact_form .input_list textarea {
	height: 150px;
	padding: 10px;
	line-height: 1.5;
}

#send_message {
	width: 100%;
}

.empty_notice {
	color: #F52225;
	margin: 7px 0;
	display: none;
	text-align: center;
	font-weight: 500;
}

.contact_error {
	color: #d92124;
	text-align: center;
	font-weight: 500;
}

.returnmessage {
	color: #06f3ff;
	margin: 7px 0;
	text-align: center;
	font-weight: 500;
	display: none;
}

.neoh_fn_contact_page .desc_holder {
	margin-bottom: 38px;
}

.neoh_fn_contact_page .desc_holder p {
	margin-bottom: 27px;
	color: var(--mc);
}

.neoh_fn_contact_page .desc_holder p:last-child {
	margin-bottom: 0;
}


.neoh_fn_contact_page .info_list ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.neoh_fn_contact_page .info_list li {
	margin-bottom: 10px;
}

.neoh_fn_contact_page .info_list li:last-child {
	margin-bottom: 0px;
}

.neoh_fn_contact_page .info_list .label {
	font-size: 16px;
	font-family: var(--hff);
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--mc);
	margin-bottom: 8px;
}

.neoh_fn_contact_page .info_list .value {
	margin: 0;
	padding: 0;
	font-size: 17px;
}

.neoh_fn_contact_page .info_list .email {
	font-size: 18px;
	text-decoration: none;
	color: var(--hff);
	/* border-bottom: 1px solid var(--hc); */
	margin-top: 5px;
}

.neoh_fn_contact_page .info_list .phone {
	font-size: 16px;
	text-decoration: none;
	color: var(--hff);
	/* margin-top: 5px; */
}


.neoh_fn_contact_page .info_list .email:hover {
	color: var(--mc);

}




/* Same Single Pages */
.neoh_fn_single {
	width: 100%;
	position: relative;
	min-height: 500px;
}

.neoh_fn_single .single_bg {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}

.neoh_fn_single .single_bg:before,
.neoh_fn_single .single_bg:after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
}

.neoh_fn_single .single_bg:before {
	height: 500px;
	top: 0;
	background-color: var(--sbc);
}

.neoh_fn_single .single_bg:after {
	top: 500px;
	background-color: var(--surface);
	bottom: 0;
}

.neoh_fn_single .single_content {
	z-index: 3;
	position: relative;
	padding-top: 165px;
}

.neoh_fn_single .single_img {
	margin-bottom: 57px;
}

.neoh_fn_single .single_img img {
	border-radius: 10px;
	display: block;
}

.neoh_fn_single .neoh_fn_minis {
	margin-bottom: 19px;
}

.neoh_fn_single .single_title .fn_title {
	margin: 0;
	padding: 0;
	font-size: 36px;
	font-weight: 500;
	line-height: 1.3333;
	margin-bottom: 13px;
}

.neoh_fn_single .categories {
	color: var(--bc);
	font-family: var(--hff);
	font-size: 16px;
	font-weight: 500;
	text-transform: uppercase;
	margin-bottom: 38px;
}

.neoh_fn_single .categories a {
	color: inherit;
	text-decoration: none;
}

.neoh_fn_single .categories a:hover {
	color: var(--hc);
}

.neoh_fn_single .single_desc p {
	margin-bottom: 28px;
}

.neoh_fn_single .single_desc p:last-child {
	margin-bottom: 0;
}



/* Share */
.neoh_fn_share {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.neoh_fn_share .label {
	margin: 0;
	padding: 0;
	margin-right: 20px;
	color: var(--bc);
	font-family: var(--bff);
	font-size: 18px;
}

.neoh_fn_share ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
	margin-left: -25px;
}

.neoh_fn_share li {
	margin: 5px 0px 5px 25px;
	padding: 0;
}

.neoh_fn_share a {
	color: var(--hc);
	font-size: 20px;
	display: block;
	text-decoration: none;
	text-align: center;
	line-height: 30px;
}

.neoh_fn_share a i {
	transition: none;
}

.neoh_fn_share a i:before {
	margin: 0;
	padding: 0;
	display: block;
	width: inherit;
}

.neoh_fn_share a:hover {
	color: var(--hc);
}


/* Breadcrumbs (for single pages) */
.neoh_fn_breadcrumbs {
	margin-bottom: 42px;
}

.neoh_fn_breadcrumbs p {
	margin: 0;
	padding: 0;
	font-size: 18px;
	color: var(--bc);
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
}

.neoh_fn_breadcrumbs a {
	color: var(--bc);
	text-decoration: none;
}

.neoh_fn_breadcrumbs .separator {
	margin: 0 9px;
}

.neoh_fn_breadcrumbs a:hover {
	color: var(--mc);
}



.neoh_fn_wsidebar {
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
}

.neoh_fn_wsidebar .sidebar_left {
	width: 100%;
	padding-right: 50px;
}

.neoh_fn_wsidebar .sidebar_right {
	width: 350px;
	min-width: 350px;
	padding-left: 48px;
	border-left: 2px solid var(--surface);
}

#blog-single-content .sidebar_left {
	padding-bottom: 93px;
}

#blog-single-content .sidebar_right {
	padding-bottom: 100px;
}


/* Mini Items */
.neoh_fn_minis {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	width: 100%;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	flex-wrap: wrap;
	overflow: hidden;
}

.neoh_fn_minis .m_item {
	line-height: 30px;
}

.neoh_fn_minis .m_item>* {
	padding: 0 15px;
	line-height: 30px;
	display: block;
	text-decoration: none;
	background-color: var(--surface);
	color: var(--bc);
	font-size: 16px;
	font-family: var(--hff);
	letter-spacing: 0;
	position: relative;
	margin: 3px 0;
	margin-right: 18px;
}

.neoh_fn_minis .m_item>*:after,
.neoh_fn_minis .m_item>*:before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
}

.neoh_fn_minis .m_item>*:before {
	border-width: 0 12px 30px 0;
	border-color: transparent var(--surface) transparent transparent;
	right: 100%;
}

.neoh_fn_minis .m_item>*:after {
	border-width: 30px 0 0 12px;
	border-color: transparent transparent transparent var(--surface);
	left: 100%;
}

.neoh_fn_minis .m_item:last-child>*:after {
	content: none;
}

.neoh_fn_minis .m_item a {
	text-decoration: none;
	color: var(--bc);
}

.neoh_fn_minis .m_item a:hover {
	color: var(--bc);
}

/*------------------------------------------------------------------*/
/*	xx) Author Information Box (used for single page of the blog)
/*------------------------------------------------------------------*/
.neoh_fn_author_info {
	background-color: var(--surface);
	border-radius: 5px;
	padding: 40px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	margin: 52px 0 27px 0;
}

.neoh_fn_author_info .info_img {
	border-radius: 5px;
	overflow: hidden;
	margin-right: 40px;
	width: 25%;
	min-width: 25%;
}

.neoh_fn_author_info .info_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.neoh_fn_author_info .fn_title {
	margin: 0;
	padding: 0;
	font-size: 20px;
	margin-bottom: 17px;
}

.neoh_fn_author_info .fn_desc {
	margin: 0;
	padding: 0;
	font-size: 18px;
	line-height: 26px;
	font-family: var(--extra-font-family);
	margin-bottom: 18px;
}

.neoh_fn_author_info .social {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
}

.neoh_fn_author_info .social li {
	margin: 5px 28px 5px 0;
	padding: 0;
}

.neoh_fn_author_info .social a {
	color: var(--muted);
	font-size: 20px;
	display: block;
	text-decoration: none;
	text-align: center;
	line-height: 30px;
}

.neoh_fn_author_info .social a i {
	transition: none;
}

.neoh_fn_author_info .social a i:before {
	margin: 0;
	padding: 0;
	display: block;
	width: inherit;
}

.neoh_fn_author_info .social a:hover {
	color: var(--hc);
}



.neoh_fn_tags {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	width: 100%;
	-ms-align-items: center;
	align-items: center;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	margin-right: 20px;
	color: var(--bc);
	font-family: var(--hff);
	font-size: 16px;
	font-weight: 500;
	text-transform: uppercase;
}

.neoh_fn_tags .label {
	margin: 0;
	padding: 0;
	margin-right: 10px;
	color: var(--bc);
	font-family: var(--hff);
	font-size: 16px;
	font-weight: 500;
	text-transform: uppercase;
}

.neoh_fn_tags a {
	text-decoration: none;
	color: inherit;
}

.neoh_fn_tags span {
	margin-right: 5px;
}

.neoh_fn_tags a:hover {
	color: var(--hc);
}


.widget {
	margin-bottom: 60px;
}

.widget:last-child {
	margin-bottom: 0;
}

.wid-title {
	padding: 0 10px;
	position: relative;
	margin-bottom: 30px;
}

.wid-title:after,
.wid-title:before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	top: 0;
}

.wid-title:before {
	border-width: 0 0 44px 10px;
	border-color: transparent transparent var(--surface) transparent;
	left: 0;
}

.wid-title:after {
	border-width: 44px 0 0 10px;
	border-color: transparent transparent transparent var(--surface);
	right: 0;
}

.wid-title .text {
	display: block;
	padding: 10px;
	line-height: 24px;
	letter-spacing: .5px;
	position: relative;
	text-transform: uppercase;
	color: var(--bc);
	font-size: 14px;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	font-weight: 500;
	background-color: var(--surface);
	text-align: center;
	font-family: var(--hff);
}

.wid-title .icon {
	position: absolute;
	border: 6px solid transparent;
	border-top-color: var(--surface);
	border-left-width: 7px;
	border-right-width: 7px;
	top: 100%;
	left: 50%;
	margin-left: -7px;
	margin-left: -7.5px;
}

/* About Widget */
.neoh_fn_widget_about {
	margin-bottom: 60px;
}

.abs_img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transition: all 1s ease;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.neoh_fn_widget_about>*,
.neoh_fn_widget_about {
	width: 100%;
}

.neoh_fn_widget_about {
	text-align: center;
}

.neoh_fn_widget_about img {
	margin: 0;
	padding: 0;
}

.neoh_fn_widget_about .abs_img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transition: all 1s ease;
}

.neoh_fn_widget_about .about_img {
	width: 100%;
	position: relative;
	margin-bottom: 29px;
}

.neoh_fn_widget_about .img_inner {
	position: relative;
	overflow: hidden;
	border-radius: 5px;
}

.neoh_fn_widget_about .img_inner:hover .abs_img {
	transform: scale(1.2) rotate(5deg);
}

.neoh_fn_widget_about .about_img img {
	min-width: 100%;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	opacity: 0;
	margin-top: -15%;
	max-height: 300px;
}

.neoh_fn_widget_about .afwa_title {
	margin-bottom: 22px;
}

.neoh_fn_widget_about .afwa_title h3 {
	margin: 0;
	padding: 0;
	font-size: 18px;
	font-weight: 500;
	text-transform: uppercase;
	line-height: 1;
	letter-spacing: .5px;
	margin-bottom: 8px;
}

.widget_neoh_about.widget_block {
	margin-bottom: 70px;
}

.neoh_fn_widget_about .afwa_title p {
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 1.25;
	color: var(--muted);
	font-family: var(--hff);
}

.neoh_fn_widget_about .afwa_title p a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid transparent;
}

.neoh_fn_widget_about .afwa_title p a:hover {
	border-bottom-color: inherit;
}

.neoh_fn_widget_about .afwa_desc {
	margin-bottom: 24px;
}

.neoh_fn_widget_about .afwa_desc p {
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 20px;
	font-family: var(--hff);
}




.neoh_fn_widget_social ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	margin-left: -20px;
}

.neoh_fn_widget_social ul li {
	margin: 5px 0px 5px 20px;
	padding: 0;
}

.neoh_fn_widget_social ul a {
	color: var(--muted);
	font-size: 18px;
	display: block;
	text-decoration: none;
	text-align: center;
	line-height: 30px;
}

.neoh_fn_widget_social ul a i {
	transition: none;
}

.neoh_fn_widget_social ul a i:before {
	margin: 0;
	padding: 0;
	display: block;
	width: inherit;
}

.neoh_fn_widget_social ul a:hover {
	color: var(--hc);
}

.widget-banner img {
	border-radius: 10px;
}

.neoh_fn_widget_subscribe {
	padding: 30px;
	background-color: var(--surface);
	border-radius: 10px;
	text-align: center;
}

.neoh_fn_widget_subscribe .desc {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: center;
	align-items: center;
}

.neoh_fn_widget_subscribe .fn__svg {
	width: 40px;
	height: 40px;
	display: block;
	margin-bottom: 21px;
}

.neoh_fn_widget_subscribe .fn_title {
	margin: 0;
	padding: 0;
	font-size: 24px;
	font-weight: 400;
	margin-bottom: 9px;
}

.neoh_fn_widget_subscribe .fn_desc {
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 20px;
	font-weight: 400;
	margin-bottom: 15px;
}

.neoh_fn_widget_subscribe input[type="text"] {
	background-color: var(--surface);
	width: 100%;
	min-width: 100%;
	margin-bottom: 10px;
	text-align: center;
}

.neoh_fn_widget_subscribe .form a {
	width: 100%;
}



/* Previous & Next Box */
.neoh_fn_pnb {
	width: 100%;
	background-color: var(--surface);
}

.neoh_fn_pnb .pnb_wrapper {
	width: 100%;
	max-width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

.neoh_fn_pnb .item {
	width: 46.55%;
	max-width: calc(50% - 43px);
	max-width: calc(50% - 42.5px);
	padding: 60px 0;
	position: relative;
}

.neoh_fn_pnb .next {
	text-align: right;
}

.neoh_fn_pnb .item_in {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
}

.neoh_fn_pnb .img {
	width: 80px;
	min-width: 80px;
	height: 80px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	border-radius: 5px;
}

.neoh_fn_pnb .prev {
	padding-right: 90px;
}

.neoh_fn_pnb .next {
	padding-left: 90px;
}

.neoh_fn_pnb .prev .img {
	margin-right: 30px;
}

.neoh_fn_pnb .next .item_in {
	-webkit-flex-direction: row-reverse;
	-moz-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	-o-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.neoh_fn_pnb .next .img {
	margin-left: 30px;
}

.neoh_fn_pnb .item .desc {
	width: 100%;
	max-width: calc(100% - 110px);
}

.neoh_fn_pnb .item .fn_desc {
	color: var(--muted);
	margin: 0;
	padding: 0;
	font-size: 16px;
	font-family: var(--hff);
	font-weight: 500;
	letter-spacing: .5px;
	text-transform: uppercase;
	margin-bottom: 6px;
}

.neoh_fn_pnb .item .fn_title {
	margin: 0;
	padding: 0;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}

.neoh_fn_pnb .trigger {
	width: 85px;
	min-width: 85px;
	border-left: 2px solid var(--surface);
	border-right: 2px solid var(--surface);
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	position: relative;
}

.neoh_fn_pnb .trigger .icon {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 3px;
	width: 21px;
	height: 21px;
}

.neoh_fn_pnb .trigger span {
	width: 3px;
	height: 3px;
	display: block;
	background-color: var(--bc);
}

.neoh_fn_pnb .container,
.neoh_fn_pnb .item,
.neoh_fn_pnb .img,
.neoh_fn_pnb .trigger span,
.neoh_fn_pnb .fn_desc,
.neoh_fn_pnb .fn_title {
	transition: all .5s ease;
}

.neoh_fn_pnb .item:hover .fn_desc {
	color: var(--bc);
}

.neoh_fn_pnb .item:hover .fn_title {
	color: var(--mc);
}

.neoh_fn_pnb .trigger:hover span {
	background-color: var(--hc);
}

.neoh_fn_pnb .item:hover {
	padding-top: 50px;
	padding-bottom: 50px;
}

.neoh_fn_pnb .item:hover .img {
	min-width: 100px;
	height: 100px;
}

.neoh_fn_pnb:hover .container {
	max-width: 100%;
}



#comment-section .sidebar_left {
	padding: 100px 50px 150px 0;
}

#comment-section .sidebar_right {
	padding-top: 100px;
	padding-bottom: 100px;
}

/* Comments */
.neoh_fn_comments {}

.neoh_fn_comments .comment-title {
	margin-bottom: 55px;
}

.neoh_fn_comments .comment-title .fn_title {
	font-size: 22px;
	margin: 0;
	padding: 0;
	font-weight: 500;
	text-transform: uppercase;
	color: var(--hc);
}

.neoh_fn_comments .list {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.neoh_fn_comments .comment {
	margin-bottom: 30px;
}

.neoh_fn_comments .comment:last-child {
	margin-bottom: 0;
}

.neoh_fn_comments .comment-body {
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.neoh_fn_comments .comment-avatar {
	width: 80px;
	min-width: 80px;
	margin-right: 30px;
}

.neoh_fn_comments .comment-avatar img {
	border-radius: 100%;
}

.neoh_fn_comments .comment-data {
	margin-bottom: 19px;
	margin-top: 5px;
}

.neoh_fn_comments .comment-data .author {
	font-size: 20px;
	margin: 0;
	padding: 0;
	font-weight: 500;
	margin-bottom: 8px;
}

.neoh_fn_comments .comment-data .date {
	font-size: 13px;
	margin: 0;
	padding: 0;
	font-weight: 500;
	font-family: var(--hff);
	color: var(--bc);
	text-transform: uppercase;
}

.neoh_fn_comments .comment-text p {
	margin: 0;
	padding: 0;
	margin-bottom: 36px;
}

.neoh_fn_comments .comment-text p:last-child {
	margin-bottom: 0;
}

.neoh_fn_comments .comment-text .desc {
	margin-bottom: 22px;
}

.neoh_fn_comments .fn_reply {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}

.neoh_fn_comments .fn_reply .fn__svg {
	width: 14px;
	height: 14px;
	display: block;
	margin-right: 5px;
}

.neoh_fn_comments .fn_reply a {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	background-color: var(--surface);
	line-height: 26px;
	padding: 0 10px;
	border-radius: 3px;
	text-decoration: none;
	margin: 0 5px 5px 0;
	font-size: 14px;
	font-family: var(--hff);
	color: var(--bc);
}

.neoh_fn_comments .comment-text-wrap {
	padding-bottom: 35px;
	border-bottom: 1px solid var(--surface);
}

.neoh_fn_comments .comment-respond {
	padding-top: 96px;
}

.neoh_fn_comments .respond-title {
	margin-bottom: 38px;
}

.neoh_fn_comments .respond-title .fn_title {
	font-size: 22px;
	margin: 0;
	padding: 0;
	font-weight: 500;
	text-transform: uppercase;
	color: var(--hc);
}

.neoh_fn_comments .respond-log {
	margin-bottom: 17px;
}

.neoh_fn_comments .respond-log p {
	margin: 0;
	padding: 0;
	color: var(--bc);
}

.neoh_fn_comments .respond-log p a {
	text-decoration: none;
	color: inherit;
	border-bottom: 1px solid transparent;
}

.neoh_fn_comments .respond-log p a:hover {
	border-bottom-color: inherit;
}

.neoh_fn_comments .input-items {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin-left: -15px;
}

.neoh_fn_comments .input-item {
	width: 100%;
	padding-left: 15px;
	margin-bottom: 15px;
}

.neoh_fn_comments .input-item.half-item {
	width: 50%;
}

.neoh_fn_comments .comment-form textarea,
.neoh_fn_comments .comment-form input[type="text"] {
	width: 100%;
	min-width: 100%;
	display: block;
}

.neoh_fn_comments .comment-respond .neoh_fn_button {
	margin-top: 20px;
}



/* Top Articles Widget */
.neoh_fn_widget_articles ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.neoh_fn_widget_articles li {
	margin-bottom: 20px;
}

.neoh_fn_widget_articles li:last-child {
	margin-bottom: 0;
}

.neoh_fn_widget_articles .item {
	position: relative;
	width: 100%;
	padding: 26px 20px 24px;
	border-radius: 5px;
	background-color: var(--surface);
	transition: all .3s ease;
}

.neoh_fn_widget_articles .fn_title {
	margin: 0;
	padding: 0;
	font-size: 18px;
	line-height: 1.3333;
	margin-bottom: 9px;
}

.neoh_fn_widget_articles .fn_date {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-family: var(--hff);
	letter-spacing: 0;
	color: var(--bc);
	overflow: hidden;
	position: relative;
}

.neoh_fn_widget_articles .fn_date span {
	position: relative;
	display: block;
	transition: all .3s ease;
}

.neoh_fn_widget_articles .fn_date span:after {
	width: 4px;
	height: 4px;
	content: '';
	background-color: var(--muted);
	border-radius: 100%;
	margin-left: 5px;
	display: inline-block;
	vertical-align: middle;
}

.neoh_fn_widget_articles .fn_date .comment_count {
	position: absolute;
	left: 0;
	width: 100%;
	top: 100%;
	color: var(--mc);
}

.neoh_fn_widget_articles .count {
	display: block;
	width: 40px;
	height: 40px;
	font-weight: 500;
	font-family: var(--hff);
	font-size: 18px;
	letter-spacing: 0;
	color: var(--bc);
	background-color: var(--surface);
	border-radius: 100%;
	text-align: center;
	line-height: 40px;
	bottom: -20px;
	right: 0;
	position: absolute;
	transition: all .3s ease;
}

.neoh_fn_widget_articles .item:hover {
	background-color: var(--sbc);
}

.neoh_fn_widget_articles .item:hover .fn_date .post_date {
	transform: translateY(-100%);
}

.neoh_fn_widget_articles .item:hover .fn_date .comment_count {
	transform: translateY(-100%);
}

/* Custom Categories */
.neoh_fn_categories ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	overflow: hidden;
}

.neoh_fn_categories li {
	margin: 0px 0px 10px 0px;
	width: 100%;
	float: left;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	position: relative;
	overflow: hidden;
}

.neoh_fn_categories li a {
	position: relative;
	background-color: var(--surface);
	padding-right: 20px;
	z-index: 5;
	font-size: 16px;
	font-weight: 500;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	line-height: 30px;
	font-style: normal;
	color: var(--bc);
	text-decoration: none;
	font-family: var(--hff);
	text-transform: uppercase;
}

.neoh_fn_categories li a:after {
	content: '';
	position: absolute;
	display: block;
	top: 0;
	bottom: 0;
	left: 100%;
	width: 2000px;
	z-index: 5;
}

.neoh_fn_categories li a:before {
	content: '';
	position: absolute;
	display: block;
	top: 0;
	bottom: 0;
	right: 100%;
	width: 40px;
	z-index: 5;
}

.neoh_fn_categories li:after {
	content: '';
	position: absolute;
	background-color: #272727;
	height: 1px;
	left: 0;
	right: 55px;
	top: 50%;
	margin-top: -1px;
	margin-top: -0.5px;
}

.neoh_fn_categories .count {
	display: block;
	width: 30px;
	height: 30px;
	text-align: center;
	font-size: 11px;
	font-family: var(--hff);
	letter-spacing: 0;
	color: var(--bc);
	background-color: var(--surface);
	border-radius: 100%;
	line-height: 30px;
	position: relative;
	z-index: 3;
}

.neoh_fn_categories li:hover a {
	transform: translateX(20px);
	padding-left: 20px;
}

.neoh_fn_categories .more {
	font-size: 13px;
	margin: 0;
	padding: 0;
	font-weight: 500;
	font-family: var(--hff);
	color: var(--muted);
	text-transform: uppercase;
	text-decoration: none;
	display: block;
	text-align: center;
	margin-top: 1px;
}

.neoh_fn_categories .more:hover {
	color: var(--bc);
}


/* Mosaic Gallery */
.neoh_fn_mosaic {
	margin-top: 62px;
	margin-bottom: 20px;
}

.neoh_fn_mosaic ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin-left: -45px;
}

.neoh_fn_mosaic li {
	width: 33.3333%;
	padding-left: 45px;
	margin-bottom: 45px;
}

.neoh_fn_mosaic li:nth-of-type(9n+5),
.neoh_fn_mosaic li:nth-of-type(9n+4) {
	width: 50%;
}

.neoh_fn_mosaic li:nth-of-type(9n+6),
.neoh_fn_mosaic li:nth-of-type(9n+7),
.neoh_fn_mosaic li:nth-of-type(9n+8),
.neoh_fn_mosaic li:nth-of-type(9n) {
	width: 25%;
}

.neoh_fn_mosaic .item {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	overflow: hidden;
}

.neoh_fn_mosaic .item img {
	min-width: 100%;
	opacity: 0;
	margin-top: -20%;
}



#roadmap-single-content {
	padding-bottom: 82px;
}

#roadmap-desc {
	padding: 92px 0;
}


.neoh_fn_roadmappage {
	padding: 150px 0 110px;
	background-color: var(--surface);
}

.neoh_fn_roadmaplist .roadlist {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.neoh_fn_roadmaplist .road_item {
	margin-bottom: 40px;
}

.neoh_fn_roadmaplist .t_item {
	padding: 40px;
	width: 100%;
	border: 2px solid var(--muted);
	border-radius: 5px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
}

.neoh_fn_roadmaplist .t_item_img {
	width: 50%;
}

.neoh_fn_roadmaplist .t_item_info {
	width: 50%;
	padding: 0 0 0 70px;
}

.neoh_fn_roadmaplist .fn_date {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-bottom: 26px;
	overflow: hidden;
}

.neoh_fn_roadmaplist .fn_date span {
	background-color: var(--surface);
	line-height: 30px;
	text-align: center;
	display: block;
	position: relative;
	transition: all .3s ease;
	font-size: 16px;
	font-weight: 400;
	font-family: var(--hff);
	letter-spacing: 0px;
	padding: 0 15px;
}

.neoh_fn_roadmaplist .fn_date span:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	transition: all .3s ease;
	border-width: 30px 0 0 12px;
	border-left-color: var(--surface);
	left: 100%;
	top: 0;
}

.neoh_fn_roadmaplist .fn_title {
	font-size: 22px;
	font-weight: 500;
	margin: 0;
	padding: 0;
	margin-bottom: 18px;
}

.neoh_fn_roadmaplist .fn_desc {
	margin-bottom: 27px;
}


/* Since v2.0 */
.hidden_info {
	display: none;
}

.neoh_fn_button.mint .text {
	color: var(--mc);
}

#nft-single-content .nft_single_top {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 25px;
}

#nft-single-content .single_top_left {
	width: 50%;
}

#nft-single-content .single_top_right {
	width: 50%;
}

#nft-single-content .hidden_btns {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-end;
}

#nft-single-content .hidden_btns a {
	margin: 0 0 10px 10px;
}

#nft-single-content .neoh_fn_breadcrumbs {
	margin-bottom: 0;
}

#nft-single-content .nft_single_desc {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	column-gap: 50px;
	margin-bottom: 75px;
}

#nft-single-content .nft_single_desc>* {
	width: 50%;
}

#nft-single-content .single_desc_left {
	position: relative;
	border-radius: 5px;
	overflow: hidden;
}

#nft-single-content .single_desc_left .in {
	margin-top: 100%;
}

#nft-single-content .single_desc_left .image {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

#nft-single-content .single_desc_right {
	background-color: var(--surface);
	border-radius: 5px;
	border: 1px solid var(--surface);
	padding: 49px 50px 52px;
}

#nft-single-content .single_desc_right .fn__title {
	font-size: 36px;
	font-weight: 500;
	margin-bottom: 20px;
}

#nft-single-content .nft_content>* {
	margin-bottom: 27px;
}

#nft-single-content .nft_content>*:last-child {
	margin-bottom: 0;
}

.neoh_fn_nft_cats {
	margin-bottom: 94px;
}

.neoh_fn_nft_cats ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin-left: -40px;
}

.neoh_fn_nft_cats li {
	width: 25%;
	padding-left: 40px;
	margin-bottom: 45px;
}

.neoh_fn_nft_cats .item {
	height: 100%;
	border-bottom: 1px solid var(--surface);
	position: relative;
	padding-bottom: 10px;
}

.neoh_fn_nft_cats .item:after {
	content: '';
	position: absolute;
	left: 0;
	width: 0;
	bottom: 0;
	height: 1px;
	background-color: var(--mc);
	transition: all .3s ease;
}

.neoh_fn_nft_cats .item:hover:after {
	width: 100%;
}

.neoh_fn_nft_cats .parent_category {
	font-size: 16px;
	color: var(--muted);
	text-transform: uppercase;
	margin: 0;
	padding: 0;
	letter-spacing: .5px;
	margin-bottom: 1px;
	font-weight: 400;
}

.neoh_fn_nft_cats .child_category {
	margin: 0;
	padding: 0;
	font-size: 24px;
	letter-spacing: 0;
	font-weight: 400;
	color: var(--bc);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#nft-single-content .neoh_fn_title {
	margin-bottom: 50px;
}

#nft-single-content {
	padding-bottom: 110px;
}

.qnt {
	margin: 0;
	padding: 0;
	font-size: 24px;
	letter-spacing: 0;
	font-weight: 400;
	color: var(--bc);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
}

.qnt .increase,
.qnt .decrease {
	cursor: pointer;
	color: var(--bc);
	transition: all .3s ease;
}

.qnt .increase:hover,
.qnt .decrease:hover {
	color: var(--mc);
}

.neoh_fn_mintbox {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	border-radius: 15px;
	overflow: hidden;
	border: 1px solid var(--surface);
	margin-bottom: 73px;
}

.neoh_fn_mintbox .mint_left {
	width: 60%;
	background-color: var(--sbc);
	padding: 115px 50px 50px;
	position: relative;
}

.neoh_fn_mintbox .mint_right {
	width: 40%;
	padding: 115px 50px 50px;
	background-color: var(--sbc);
}

.neoh_fn_mintbox .mint_title {
	position: absolute;
	top: 30px;
	left: 0px;
}

.neoh_fn_mintbox .mint_title span {
	position: relative;
	font-size: 16px;
	text-transform: uppercase;
	color: var(--mc);
	letter-spacing: .5px;
	font-family: var(--hff);
	background-color: var(--surface);
	padding-right: 40px;
	padding-left: 50px;
	line-height: 48px;
	display: inline-block;
	white-space: nowrap;
}

.neoh_fn_mintbox .mint_title span:before {
	content: '';
	position: absolute;
	left: 100%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 48px 0 0 40px;
	border-color: transparent transparent transparent var(--surface);
}

.neoh_fn_mintbox .mint_list {
	margin-bottom: 5px;
}

.neoh_fn_mintbox .mint_list ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	flex-wrap: wrap;
	margin-left: -40px;
}

.neoh_fn_mintbox .mint_list li {
	width: 50%;
	padding-left: 40px;
	margin-bottom: 45px;
}

.neoh_fn_mintbox .mint_list .item {
	height: 100%;
	border-bottom: 1px solid var(--surface);
	position: relative;
	padding-bottom: 10px;
}

.neoh_fn_mintbox .mint_list .item:after {
	content: '';
	position: absolute;
	left: 0;
	width: 0;
	bottom: 0;
	height: 1px;
	background-color: var(--mc);
	transition: all .3s ease;
}

.neoh_fn_mintbox .mint_list .item:hover:after {
	width: 100%;
}

.neoh_fn_mintbox .mint_list h4 {
	font-size: 16px;
	color: var(--muted);
	text-transform: uppercase;
	margin: 0;
	padding: 0;
	letter-spacing: .5px;
	margin-bottom: 1px;
	font-weight: 400;
}

.neoh_fn_mintbox .mint_list h3 {
	margin: 0;
	padding: 0;
	font-size: 24px;
	letter-spacing: 0;
	font-weight: 400;
	color: var(--bc);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.neoh_fn_mintbox .mint_desc p {
	max-width: 400px;
	font-size: 16px;
	margin: 0;
	line-height: 1.5;
	color: var(--bc);
	margin-top: 25px;
}

.neoh_fn_mintbox .mint_desc a {
	text-decoration: none;
	color: var(--bc);
}

.neoh_fn_mintbox .mint_desc a:hover {
	color: var(--mc);
}

.neoh_fn_mintbox .mint_time {
	position: relative;
	border-bottom: 1px solid var(--surface);
	padding-bottom: 10px;
	margin-bottom: 45px;
}

.neoh_fn_mintbox .mint_time:after {
	content: '';
	position: absolute;
	left: 0;
	width: 0;
	bottom: 0;
	height: 1px;
	background-color: var(--mc);
	transition: all .3s ease;
}

.neoh_fn_mintbox .mint_time:hover:after {
	width: 100%;
}

.neoh_fn_mintbox .mint_time h4 {
	font-size: 16px;
	color: var(--muted);
	text-transform: uppercase;
	margin: 0;
	padding: 0;
	letter-spacing: .5px;
	margin-bottom: 1px;
	font-weight: 400;
}

.neoh_fn_mintbox .mint_time h3 {
	margin: 0;
	padding: 0;
	font-size: 24px;
	letter-spacing: 0;
	font-weight: 400;
	color: var(--bc);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.neoh_fn_mintbox .mright {
	max-width: 275px;
	margin: 0 auto;
}

.neoh_fn_mintbox .mint_checked {
	margin-bottom: 37px;
}

.neoh_fn_mintbox .mint_checked p {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
	margin-bottom: 7px;
}

.neoh_fn_mintbox .mint_checked p:last-child {
	margin-bottom: 0;
}

.neoh_fn_mintbox .mint_checked .text {
	margin-right: 5px;
	font-family: var(--hff);
	font-size: 18px;
	letter-spacing: 0;
	color: var(--muted);
}

.neoh_fn_mintbox .mint_checked .status {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	font-family: var(--hff);
	color: var(--bc);
	letter-spacing: .5px;
	text-transform: uppercase;
	-ms-align-items: center;
	align-items: center;
}

.neoh_fn_mintbox .mint_checked .icon {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	width: 14px;
	height: 14px;
	background-color: var(--mc);
	color: #000;
	border-radius: 100%;
	margin-left: 5px;
	position: relative;
	top: -2px;
}

.neoh_fn_mintbox .mint_checked .fn__svg {
	width: 8px;
	height: 8px;
	display: block;
}

.neoh_fn_mintbox .mint_info p {
	margin: 0;
	font-size: 16px;
	line-height: 1.5;
	color: var(--bc);
}

/* Since v3.0 */
.neoh_fn_coming_soon {
	padding: 250px 0 150px;
	background-color: var(--surface);
	text-align: center;
}

.neoh_fn_coming_soon .soon_countdown {
	margin-bottom: 33px;
}

.neoh_fn_coming_soon .soon_title {
	max-width: 600px;
	margin: 0 auto;
}

.neoh_fn_coming_soon .neoh_fn_countdown {
	color: var(--mc) !important;
	font-size: 60px !important;
	margin-bottom: 4px !important;
}

.neoh_fn_coming_soon .soon_title h3 {
	margin: 0;
	font-size: 36px;
	color: var(--bc);
	margin-bottom: 13px;
}

.neoh_fn_coming_soon .soon_title p {
	margin: 0;
	font-size: 18px;
	line-height: 26px;
	color: var(--bc);
}

.neoh_fn_boxed_countdown ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	justify-content: center;
	margin: 0;
	list-style-type: none;
	margin-left: -20px;
	flex-wrap: wrap;
}

.neoh_fn_boxed_countdown li {
	margin: 0;
	padding-left: 20px;
	margin-bottom: 20px;
}

.neoh_fn_boxed_countdown .item {
	min-width: 140px;
	min-height: 120px;
	text-align: center;
	border: 2px solid var(--muted);
	border-radius: 5px;
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
}

.neoh_fn_boxed_countdown h3 {
	margin: 0;
	font-size: 48px;
	font-weight: 600;
	letter-spacing: 0;
	color: var(--bc);
}

.neoh_fn_boxed_countdown span {
	position: absolute;
	bottom: -5px;
	left: 12px;
	right: 12px;
	background-color: var(--surface);
	display: block;
	line-height: 1;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 1px;
}





/* Responsive */
@media(max-width: 1500px) {
	.neoh_fn_drops li {
		width: auto;
	}
}

@media(max-width: 1040px) {

	/* Home Half Slider */
	.neoh_fn_hero.half .hero_content {
		width: 50%;
		background-color: rgba(190, 30, 30, 0.8);
	}

	.neoh_fn_hero.half .bg_overlay {
		left: 0;
	}

	/*RoadMap Single*/
	.neoh_fn_mosaic ul {
		margin-left: -20px;
	}

	.neoh_fn_mosaic li {
		padding-left: 20px;
		margin-bottom: 20px;
	}

	/*blog*/
	.neoh_fn_blog_page {
		padding: 100px 0 95px;
	}

	/*collection*/
	.neoh_fn_collectionpage {
		padding: 100px 0;
	}

	.neoh_fn_collection {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_filters {
		width: 100%;
		min-width: 100%;
		margin-right: 0;
		margin-bottom: 50px;
	}

	[data-filter-sticky="on"] .neoh_fn_filters {
		position: relative;
		top: 0;
	}

	.neoh_fn_pagetitle .fn_title {
		font-size: 50px;
	}

	/*home*/
	.neoh_fn_hero .fn_title {
		font-size: 45px;
		letter-spacing: normal;
		color: var(--mc);
	}

	.neoh_fn_about_item .img_item {
		width: 32%;
	}

	.neoh_fn_about_item .content_item {
		width: 68%;
		padding: 0 0 0 40px;
	}

	.neoh_fn_about_item.reverse .content_item {
		padding: 0 40px 0 0;
	}

	#about {
		padding: 60px 0;
	}

	.neoh_fn_about_item {
		margin-bottom: 0;
	}

	.neoh_fn_services li {
		width: auto;
	}

	.neoh_fn_drops li {
		width: auto;
	}

	.neoh_fn_timeline .t_item_info {
		width: 60%;
		padding-left: 50px;
	}

	.neoh_fn_timeline .t_item_img {
		width: 40%;
	}

	.neoh_fn_timeline .t_item {
		padding: 30px;
	}

	.neoh_fn_investor li {
		width: 33.3333%;
	}

	.neoh_fn_moving_blog li {
		width: 50%;
	}

	.neoh_fn_moving_blog .moving_img {
		opacity: 1;
		height: auto;
		width: 100%;
		position: relative;
		z-index: 1;
		visibility: visible;
		margin-bottom: 40px;
	}

	.neoh_fn_moving_box {
		display: none !important;
	}

	.neoh_fn_nav .trigger {
		right: 30px;
	}

	.neoh_fn_nav .nav_menu a {
		font-size: 30px;
	}

	.neoh_fn_nav .nav_menu li {
		margin-bottom: 20px;
	}

	/*about*/
	#information {
		padding: 100px 0;
	}

	.neoh_fn_gualist li {
		width: 50%;
	}

	.neoh_fn_team .team_item {
		width: 50%;
	}
}

@media(max-width: 900px) {
	.neoh_fn_wsidebar {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_wsidebar .sidebar_left {
		padding-right: 0;
	}

	.neoh_fn_wsidebar .sidebar_right {
		padding-left: 0;
		width: 100%;
		min-width: 100%;
		border-left: none;
	}

	.neoh_fn_widget_about .about_img img {
		max-height: inherit;
	}

	#comment-section .sidebar_left {
		padding-right: 0;
		padding-bottom: 0;
	}

	.neoh_fn_pnb .pnb_wrapper {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_pnb .item {
		width: 100%;
		max-width: 100%;
	}

	.neoh_fn_pnb .trigger {
		width: 100%;
		max-width: 100%;
		border-top: 2px solid var(--surface);
		border-bottom: 2px solid var(--surface);
		border-left: none;
		border-right: none;
		padding: 30px 0;
	}

	.neoh_fn_nav {
		min-width: 100%;
	}

	.neoh_fn_nav .nav_footer {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_nav .neoh_fn_social_list ul {
		justify-content: flex-start;
	}

	.neoh_fn_nav .nav_footer .nf_left {
		margin-right: 0;
		margin-bottom: 10px;
	}
}

@media(max-width: 768px) {
	.neoh_fn_header .trigger_in .text {
		display: none;
	}

	.logo a img {
		height: 54px;
	}

	.knob {
		width: 26px;
		height: 26px;
	}

	.knob-led {
		top: 4px;
		width: 4px;
		height: 4px;
	}

	.neoh_fn_hero .fn_title {
		font-size: 40px;
		color: var(--mc);
	}

	.neoh_fn_hero .fn_desc {
		font-size: 20px;
		line-height: 1;
		max-width: 360px;
	}


	/* RoadMap Single */
	.neoh_fn_mosaic ul {
		margin-left: -10px;
	}

	.neoh_fn_mosaic li {
		padding-left: 10px;
		margin-bottom: 10px;
	}

	/* Blog Single */
	.neoh_fn_footer .footer_top .fn_title,
	.neoh_fn_single .single_title .fn_title {
		font-size: 30px;
	}

	.neoh_fn_author_info {
		padding: 30px;
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
		-ms-align-items: flex-start;
		align-items: flex-start;
	}

	.neoh_fn_author_info .info_img {
		margin-right: 0;
		margin-bottom: 26px;
		width: inherit;
	}

	.neoh_fn_pnb .item {
		padding: 30px 0;
	}

	.neoh_fn_pnb .item:hover {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.neoh_fn_pnb .item .fn_title {
		font-size: 20px;
	}

	.neoh_fn_about_item {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_about_item.reverse {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_about_item .img_item {
		width: 100%;
		margin-bottom: 16px;
	}

	.neoh_fn_about_item .img_item.about_visual {
		min-height: auto;
	}

	.neoh_fn_about_item .content_item {
		width: 100%;
		padding: 0;
	}

	.neoh_fn_about_item.reverse .content_item {
		padding: 0;
	}

	.neoh_fn_title .fn_title {
		font-size: 30px;
	}

	.neoh_fn_timeline .t_item {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_timeline .t_item_img {
		width: 100%;
		margin-bottom: 30px;
	}

	.neoh_fn_timeline .t_item_info {
		width: 100%;
		padding-left: 0;
	}

	.neoh_fn_investor li {
		width: 50%;
	}

	.neoh_fn_product_modal {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_product_modal .img_item {
		width: 100%;
		padding-right: 0;
		margin-bottom: 30px;
	}

	.neoh_fn_product_modal .content_item {
		width: 100%;
		padding-left: 0;
	}

	.neoh_fn_modal {
		padding: 20px;
	}

	/*about*/
	.neoh_fn_gualist li,
	.neoh_fn_team .team_item {
		width: 100%;
	}

	/*collection*/
	.neoh_fn_drops li {
		width: auto;
	}

	.neoh_fn_drops ul {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media(max-width: 600px) {
	.neoh_fn_comments .comment-body {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_comments .comment-avatar {
		margin-right: 0;
		margin-bottom: 14px;
	}

	.neoh_fn_comments .input-item.half-item,
	.neoh_fn_moving_blog li {
		width: 100%;
	}

	.neoh_fn_drops li {
		width: auto;
	}

	.neoh_fn_drops ul {
		grid-template-columns: 1fr;
	}

	.neoh_fn_services li {
		width: auto;
	}

	.neoh_fn_title .fn_title {
		font-size: 26px;
	}
}

@media(max-width: 480px) {
	.neoh_fn_investor li {
		width: 100%;
	}

	.neoh_fn_footer .subscribe_in {
		padding: 0;
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_footer .subscribe_form input[type="text"] {
		margin-right: 0;
		margin-bottom: 10px;
		text-align: center;
	}

	.neoh_fn_footer .subscribe_form a {
		width: 100%;
	}

	.neoh_fn_footer .fb_in {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
		justify-content: flex-start;
		-ms-align-items: flex-start;
		align-items: flex-start;
	}

	.neoh_fn_footer .fb_left {
		margin-bottom: 10px;
	}
}

@media(max-width: 320px) {
	.neoh_fn_timeline .t_item {
		padding: 15px;
	}
}




/* since v2.0 */
@media(max-width: 900px) {
	#nft-single-content .nft_single_top {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	#nft-single-content .single_desc_left {
		margin-bottom: 40px;
	}

	#nft-single-content .single_top_left {
		width: 100%;
	}

	#nft-single-content .single_top_right {
		width: 100%;
	}

	#nft-single-content .hidden_btns {
		justify-content: flex-start;
	}

	#nft-single-content .nft_single_desc {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	#nft-single-content .single_desc_right {
		padding: 29px 30px 32px;
	}

	#nft-single-content .hidden_btns a {
		margin-left: 0;
		margin-right: 10px;
	}

	#nft-single-content .nft_single_desc>* {
		width: 100%;
	}

	.neoh_fn_nft_cats li {
		width: 50%;
	}

	.neoh_fn_mintbox {
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
	}

	.neoh_fn_mintbox .mint_left {
		width: 100%;
	}

	.neoh_fn_mintbox .mint_right {
		width: 100%;
		padding: 50px;
	}

	.neoh_fn_mintbox .mright {
		max-width: 100%;
	}
}

@media(max-width: 768px) {
	.neoh_fn_nft_cats li {
		width: 100%;
	}

	.neoh_fn_mintbox .mint_list li {
		width: 100%;
	}
}


/* =====================================================
   OMNINOUN Premium AI Agency Design System
   ===================================================== */

:root {
	--ai-blue: var(--mc);
	--ai-violet: #7B61FF;
	--ai-signal: #08a9be;
	--ai-blue-glow: rgba(15, 111, 255, 0.40);
	--ai-blue-dim: rgba(15, 111, 255, 0.12);
	--ai-violet-glow: rgba(123, 97, 255, 0.35);
	--bc: #c0c8d4;
	--glass-bg: rgba(255, 255, 255, 0.04);
	--glass-border: rgba(255, 255, 255, 0.08);
	--glass-bg-hover: rgba(255, 255, 255, 0.07);
	--neu-shadow-dark: rgba(0, 0, 0, 0.5);
	--neu-shadow-light: rgba(255, 255, 255, 0.04);
	--omni-transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Light mode â€” AmÃ©liorations ciblÃ©es */
body.light-mode {
	--mcl: #005BC4;
	--mc: var(--mcl);
	--sbc: #ffffff;
	--hc: var(--surface);
	--bc: #1e293b;
	--muted: #64748b;
	--glass-bg: #ffffff;
	--glass-border: rgba(0, 91, 196, 0.1);
	--glass-bg-hover: #f8fafc;
	--neu-shadow-dark: rgba(0, 0, 0, 0.1);
	--neu-shadow-light: rgba(255, 255, 255, 0.8);
	background-color: #ffffff !important;
}

body.light-mode .neoh_fn_hero {
	background-color: transparent !important;
}

body.light-mode .formation_card,
body.light-mode .service_card.item {
	background: #ffffff !important;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08) !important;
	border: 1px solid rgba(0, 91, 196, 0.1) !important;
}

/* â”€â”€ Prompt Generator â€” Light mode (fond sombre conservÃ©) â”€â”€ */
body.light-mode .prompt_generator {
	background: #0a1628 !important;
	border-color: rgba(15, 111, 255, 0.22) !important;
	box-shadow:
		0 20px 50px rgba(0, 0, 0, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

/* NumÃ©ros â€” discrets, pas flashy */
body.light-mode .prompt_step_num {
	background: rgba(15, 111, 255, 0.15) !important;
	color: var(--ai-blue) !important;
	box-shadow: none !important;
	border: 1px solid rgba(15, 111, 255, 0.35) !important;
}

/* Labels titres */
body.light-mode .prompt_label {
	color: #244769 !important;
}

/* Pills radio / checkbox */
body.light-mode .prompt_radio,
body.light-mode .prompt_check {
	background: transparent !important;
	border: 1px solid var(--ai-blue) !important;
	border-radius: 6px !important;
	color: var(--ai-blue) !important;
	box-shadow: none !important;
}

body.light-mode .prompt_radio:has(input:checked),
body.light-mode .prompt_check:has(input:checked) {
	background: var(--ai-blue) !important;
	border-color: var(--ai-blue) !important;
	color: #ffffff !important;
	box-shadow: none !important;
}

body.light-mode .prompt_radio:hover,
body.light-mode .prompt_check:hover {
	border-color: var(--ai-blue) !important;
	background: transparent !important;
	color: var(--ai-blue) !important;
}

/* Select */
body.light-mode .prompt_select {
	background: #ffffff !important;
	border: 1.5px solid rgba(0, 91, 196, 0.35) !important;
	border-radius: 6px !important;
	color: #0d2040 !important;
	box-shadow: none !important;
}

body.light-mode .prompt_select:focus {
	border-color: var(--ai-blue) !important;
	box-shadow: 0 0 0 3px rgba(15, 111, 255, 0.12) !important;
}

body.light-mode .prompt_select_arrow {
	color: #5080b0 !important;
}

/* Inputs & textarea — light mode (consolidé dans le bloc unifié plus bas) */

/* Bouton gÃ©nÃ©rer */
body.light-mode button.prompt_generate_btn,
body.light-mode .contact_submit_btn {
	background: linear-gradient(180deg, #ffffff 0%, #ddeaf8 100%) !important;
	border-color: #a8c8e8 !important;
	color: #0d2040 !important;
	box-shadow:
		0 4px 0 #7aaac8,
		0 6px 8px rgba(0, 0, 0, 0.15) !important;
}

body.light-mode button.prompt_generate_btn:hover,
body.light-mode .contact_submit_btn:hover {
	filter: none !important;
}

/* Output */
body.light-mode .prompt_output_wrapper {
	background: rgba(4, 10, 20, 0.9) !important;
	border-color: rgba(15, 111, 255, 0.18) !important;
}

body.light-mode .prompt_output_text {
	color: #c8daf0 !important;
}

body.light-mode .prompt_output_idle {
	border-color: rgba(15, 111, 255, 0.18) !important;
	background: rgba(4, 10, 20, 0.6) !important;
	color: #5080b0 !important;
}

body.light-mode .prompt_copy_btn {
	background: rgba(15, 111, 255, 0.1) !important;
	border-color: rgba(15, 111, 255, 0.25) !important;
	color: #7ba7d4 !important;
}

body.light-mode .prompt_copy_btn:hover {
	background: rgba(15, 111, 255, 0.2) !important;
	border-color: var(--ai-blue) !important;
	color: #ffffff !important;
}

body.light-mode .neoh_fn_hero {
	background-color: #d1e2f7;
}

body.light-mode .neoh_fn_hero .hero_title_raleway,
body.light-mode .neoh_fn_hero .hero_fixed_text {
	color: var(--mcl);
	-webkit-text-fill-color: var(--mcl);
}

body.light-mode .neoh_fn_hero .hero_intelligence_label,
body.light-mode .neoh_fn_hero .hero_subheadline {
	color: #1e293b;
	-webkit-text-fill-color: #1e293b;
}

body.light-mode .waves canvas {
	filter: none;
}

body.light-mode .fn__divider {
	color: var(--mc);
	fill: var(--mc);
}

body.light-mode .neoh_fn_hero .hero_kw,
body.light-mode .neoh_fn_hero .hero_rotating_item {
	color: var(--mc);
	-webkit-text-fill-color: var(--mc);
}

body.light-mode .neoh_fn_header {
	border-color: rgba(22, 127, 202, 0.25);
	background-color: rgba(160, 200, 240, 0.55);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

body.light-mode .neoh_fn_header.fixer {
	background-color: rgba(190, 220, 248, 0.92);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

body.light-mode .neoh_fn_down {
	right: 377px !important;
	bottom: 69px !important;
}

body.light-mode input[type="text"],
body.light-mode textarea {
	background-color: var(--hc);
	border-color: #c8d6e5;
	color: var(--surface);
}

body.light-mode .neoh_fn_nav {
	background: linear-gradient(160deg, rgba(230, 238, 250, 0.97) 0%, rgba(210, 228, 248, 0.96) 40%, rgba(220, 235, 252, 0.97) 100%);
	border-left-color: rgba(22, 127, 202, 0.25);
}

body.light-mode h1,
body.light-mode h2,
body.light-mode h3,
body.light-mode h4,
body.light-mode h5,
body.light-mode h6 {
	color: var(--surface);
}

/* ── Sections About + Contact + Footer — fond bleu-gris clair harmonisé ── */
body.light-mode #about {
	background-color: #e8f2fb !important;
}

body.light-mode #about .fn_title,
body.light-mode #about h3 {
	color: var(--mc) !important;
	-webkit-text-fill-color: var(--mc) !important;
}

body.light-mode #about p,
body.light-mode #about .about_approach {
	color: #2a4a6e !important;
}

body.light-mode #about .pillar_item {
	color: #1e3a5f !important;
}

body.light-mode #drop,
body.light-mode .footer_top,
body.light-mode .contact_section {
	background-color: #C8CED5 !important;
}

/* Fond gris argenté pour la section audit -> système */
body.light-mode #drop {
	background: linear-gradient(180deg, #D4D9DD 0%, #C5CCD3 50%, #B8C2C9 100%) !important;
}

body.light-mode #drop .omni_methodology {
	background: linear-gradient(135deg, #D8DDE2 0%, #CED5DB 100%);
	border-radius: 20px;
	padding: 40px 50px;
	box-shadow: 
		inset 0 2px 8px rgba(255, 255, 255, 0.5),
		inset 0 -2px 8px rgba(0, 0, 0, 0.08),
		0 8px 32px rgba(0, 0, 0, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

/* Cards biseautées/incrustées */
body.light-mode .omni_phase_card {
	background: linear-gradient(145deg, #F5F7F9 0%, #E8ECF1 100%) !important;
	border: 1px solid rgba(160, 170, 180, 0.2) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.6) !important;
	border-bottom: 2px solid rgba(100, 110, 120, 0.25) !important;
	box-shadow: 
		inset 0 1px 2px rgba(255, 255, 255, 0.8),
		inset 0 -2px 6px rgba(0, 0, 0, 0.05),
		0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

body.light-mode .omni_phase_card::before {
	background: linear-gradient(90deg, transparent, rgba(0, 91, 196, 0.2), transparent) !important;
}

/* Audit — texte sur fond bleu-gris clair */
body.light-mode #drop .fn_title {
	color: var(--mc) !important;
	-webkit-text-fill-color: var(--mc) !important;
}

body.light-mode #drop h4,
body.light-mode #drop p,
body.light-mode #drop span,
body.light-mode #drop .phase_desc {
	color: #2a4a6e !important;
}

/* ========== Fond gris argenté pour autres sections ========== */

/* --- Nos Compétences (#services) --- */
body.light-mode #services {
	background: linear-gradient(180deg, #D4D9DD 0%, #C5CCD3 50%, #B8C2C9 100%) !important;
}

body.light-mode #services .omni_expertises {
	background: linear-gradient(135deg, #D8DDE2 0%, #CED5DB 100%);
	border-radius: 20px;
	padding: 40px 30px;
	box-shadow: 
		inset 0 2px 8px rgba(255, 255, 255, 0.5),
		inset 0 -2px 8px rgba(0, 0, 0, 0.08),
		0 8px 32px rgba(0, 0, 0, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

body.light-mode .omni_expertise_card {
	background: linear-gradient(145deg, #F5F7F9 0%, #E8ECF1 100%) !important;
	border: 1px solid rgba(160, 170, 180, 0.2) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.6) !important;
	border-bottom: 2px solid rgba(100, 110, 120, 0.25) !important;
	box-shadow: 
		inset 0 1px 2px rgba(255, 255, 255, 0.8),
		inset 0 -2px 6px rgba(0, 0, 0, 0.05),
		0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

body.light-mode .omni_expertise_card:hover {
	transform: translateY(-4px);
	border-color: rgba(0, 91, 196, 0.3) !important;
	box-shadow: 
		inset 0 1px 2px rgba(255, 255, 255, 0.8),
		inset 0 -2px 6px rgba(0, 0, 0, 0.05),
		0 12px 28px rgba(0, 91, 196, 0.15) !important;
}

/* --- Programme Exécutif IA (#formations) --- */
body.light-mode #formations {
	background: linear-gradient(180deg, #D4D9DD 0%, #C5CCD3 50%, #B8C2C9 100%) !important;
}

body.light-mode #formations .omni_formations {
	background: linear-gradient(135deg, #D8DDE2 0%, #CED5DB 100%);
	border-radius: 20px;
	padding: 40px 30px;
	box-shadow: 
		inset 0 2px 8px rgba(255, 255, 255, 0.5),
		inset 0 -2px 8px rgba(0, 0, 0, 0.08),
		0 8px 32px rgba(0, 0, 0, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

body.light-mode .omni_formation_card {
	background: linear-gradient(145deg, #F5F7F9 0%, #E8ECF1 100%) !important;
	border: 1px solid rgba(160, 170, 180, 0.2) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.6) !important;
	border-bottom: 2px solid rgba(100, 110, 120, 0.25) !important;
	box-shadow: 
		inset 0 1px 2px rgba(255, 255, 255, 0.8),
		inset 0 -2px 6px rgba(0, 0, 0, 0.05),
		0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

body.light-mode .omni_formation_card:hover {
	transform: translateY(-4px);
	border-color: rgba(0, 91, 196, 0.3) !important;
	box-shadow: 
		inset 0 1px 2px rgba(255, 255, 255, 0.8),
		inset 0 -2px 6px rgba(0, 0, 0, 0.05),
		0 12px 28px rgba(0, 91, 196, 0.15) !important;
}

/* --- Questionnaire de connaissance IA (#diagnostic) --- */
body.light-mode #diagnostic {
	background: linear-gradient(180deg, #D4D9DD 0%, #C5CCD3 50%, #B8C2C9 100%) !important;
}

body.light-mode #diagnostic #omni-diagnostic-app {
	background: linear-gradient(135deg, #D8DDE2 0%, #CED5DB 100%);
	border-radius: 20px;
	padding: 40px;
	box-shadow: 
		inset 0 2px 8px rgba(255, 255, 255, 0.5),
		inset 0 -2px 8px rgba(0, 0, 0, 0.08),
		0 8px 32px rgba(0, 0, 0, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

/* --- L'Ingénieur de Prompts Omninoun (#prompt-gen) --- */
body.light-mode #prompt-gen {
	background: linear-gradient(180deg, #D4D9DD 0%, #C5CCD3 50%, #B8C2C9 100%) !important;
}

body.light-mode #prompt-gen .prompt_generator {
	background: linear-gradient(145deg, #F5F7F9 0%, #E8ECF1 100%) !important;
	border: 1px solid rgba(160, 170, 180, 0.2) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.6) !important;
	border-bottom: 2px solid rgba(100, 110, 120, 0.25) !important;
	border-radius: 20px;
	padding: 30px;
	box-shadow: 
		inset 0 1px 2px rgba(255, 255, 255, 0.8),
		inset 0 -2px 6px rgba(0, 0, 0, 0.05),
		0 8px 32px rgba(0, 0, 0, 0.12) !important;
}

/* Contact — texte sur fond bleu-gris clair */
body.light-mode .footer_top .contact_title,
body.light-mode .footer_top h3,
body.light-mode .footer_top h4 {
	color: var(--mc) !important;
	-webkit-text-fill-color: var(--mc) !important;
}

body.light-mode .footer_top .contact_sub,
body.light-mode .footer_top .ci_value,
body.light-mode .footer_top .ci_link,
body.light-mode .footer_top label {
	color: #2a4a6e !important;
}

body.light-mode .footer_top .contact_form .input_list input,
body.light-mode .footer_top .contact_form .input_list textarea {
	background: #ffffff !important;
	border-color: rgba(15, 111, 255, 0.3) !important;
	color: #0d2040 !important;
	box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.06) !important;
}

body.light-mode .footer_top .contact_form .input_list input::placeholder,
body.light-mode .footer_top .contact_form .input_list textarea::placeholder {
	color: rgba(15, 111, 255, 0.4) !important;
	font-style: italic;
}

body.light-mode .footer_top .contact_form .input_list input:focus,
body.light-mode .footer_top .contact_form .input_list textarea:focus {
	border-color: var(--ai-blue) !important;
	color: #0d2040 !important;
	box-shadow: 0 0 0 3px rgba(15, 111, 255, 0.12) !important;
}

/* â”€â”€ Hero scanlines overlay â”€â”€ */
.hero_scanlines {
	display: none;
}

@keyframes scanlines_scroll {
	0% {
		background-position: 0 0, 0 0;
	}

	100% {
		background-position: 0 -120px, 0 -60px;
	}
}

/* â”€â”€ Theme Knob â”€â”€ */
.theme-knob-wrapper {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-right: 20px;
	flex-shrink: 0;
	cursor: pointer;
	user-select: none;
	-webkit-user-select: none;
}

.knob-label {
	font-family: 'Space Grotesk', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	transition: color 0.35s ease, opacity 0.35s ease;
}

/* Ã‰tat dark (dÃ©faut) */
.knob-label--dark {
	color: var(--ai-blue);
	opacity: 1;
}

.knob-label--light {
	color: var(--bc);
	opacity: 0.4;
}

/* Ã‰tat light */
.theme-knob-wrapper.is-light .knob-label--dark {
	color: var(--bc);
	opacity: 0.4;
}

.theme-knob-wrapper.is-light .knob-label--light {
	color: var(--ai-blue);
	opacity: 1;
}

/* Bouton circulaire â€” aspect mÃ©tal brossÃ© */
.knob {
	position: relative;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background:
		conic-gradient(from 180deg,
			rgba(255, 255, 255, 0.10) 0deg,
			rgba(255, 255, 255, 0.04) 90deg,
			rgba(255, 255, 255, 0.12) 180deg,
			rgba(255, 255, 255, 0.04) 270deg,
			rgba(255, 255, 255, 0.10) 360deg),
		var(--glass-bg);
	border: 1px solid var(--glass-border);
	box-shadow:
		0 2px 8px rgba(0, 0, 0, 0.4),
		inset 0 1px 0 rgba(255, 255, 255, 0.08),
		0 0 0 2px rgba(15, 111, 255, 0.12);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	flex-shrink: 0;
	/* Rotation initiale dark : LED pointe vers DARK (gauche) */
	transform: rotate(-90deg);
	transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.35s ease;
}

.theme-knob-wrapper:hover .knob {
	box-shadow:
		0 2px 12px rgba(0, 0, 0, 0.5),
		inset 0 1px 0 rgba(255, 255, 255, 0.12),
		0 0 0 2px rgba(15, 111, 255, 0.35),
		0 0 14px rgba(15, 111, 255, 0.2);
}

/* Rotation light : LED pointe vers LIGHT (droite) */
.theme-knob-wrapper.is-light .knob {
	transform: rotate(90deg);
	box-shadow:
		0 2px 8px rgba(0, 0, 0, 0.4),
		inset 0 1px 0 rgba(255, 255, 255, 0.08),
		0 0 0 2px rgba(15, 111, 255, 0.25),
		0 0 14px rgba(15, 111, 255, 0.15);
}

/* LED â€” point lumineux en haut du knob, tourne avec lui */
.knob-led {
	position: absolute;
	top: 5px;
	left: 50%;
	transform: translateX(-50%);
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--ai-blue);
	box-shadow: 0 0 5px 2px var(--ai-blue), 0 0 10px var(--ai-blue);
	transition: background 0.35s ease, box-shadow 0.35s ease;
}

.theme-knob-wrapper.is-light .knob-led {
	background: var(--ai-blue);
	box-shadow: 0 0 5px 2px var(--ai-blue), 0 0 10px var(--ai-blue);
}

/* Hero badge row */
.hero_badge_row {
	text-align: center;
	flex-shrink: 0;
	width: 100%;
}

.hero_badge_row--top {
	position: fixed;
	right: -95px;
	top: 50%;
	transform: translateY(-50%) rotate(90deg);
	z-index: 100;
	padding: 0;
	margin: 0;
	width: auto;
	text-align: center;
}

/* Version mobile : cachÃ© en haut, visible en bas */
.hero_badge_row--bottom {
	display: none;
	padding: 0;
	margin-bottom: 120px;
}

/* Hero badge â€” Ã©purÃ©, vertical */
.hero_badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 11px;
	font-family: 'Space Grotesk', var(--hff);
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--ai-blue);
	border: 1px solid var(--ai-blue);
	border-radius: 4px;
	padding: 4px 12px;
	background: transparent;
	backdrop-filter: none;
	box-shadow: 0 0 10px rgba(15, 111, 255, 0.1);
}

.hero_badge::before {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--ai-blue);
	box-shadow: 0 0 8px var(--ai-blue);
	animation: badge_pulse 2s ease-in-out infinite;
	flex-shrink: 0;
}

@keyframes badge_pulse {

	0%,
	100% {
		opacity: 1;
		transform: scale(1);
	}

	50% {
		opacity: 0.4;
		transform: scale(0.7);
	}
}

/* Hero content â€” alignÃ© Ã  gauche */
.hero_left_content {
	text-align: center !important;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}


.neoh_fn_hero .fn_title {
	font-size: clamp(22px, 3.6vw, 46px);
	max-width: 820px;
	line-height: 1.18;
}

/* â”€â”€ Hero title â€” Space Grotesk tech, gauche, gras â”€â”€ */
.hero_title_raleway {
	font-family: var(--hff) !important;
	font-size: clamp(24px, 3.8vw, 48px);
	font-weight: 700 !important;
	line-height: 1.12;
	max-width: 100%;
	margin: 0 0 28px 0 !important;
	color: var(--hc);
	letter-spacing: -0.04em;
}

/* Gradient animÃ© sur la premiÃ¨re ligne du titre */
.hero_gradient_text {
	background: linear-gradient(90deg, var(--ai-blue) 0%, var(--ai-violet) 50%, var(--ai-signal) 100%);
	background-size: 200% auto;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	animation: hero_shimmer 4s linear infinite;
}

@keyframes hero_shimmer {
	0% {
		background-position: 0% center;
	}

	100% {
		background-position: 200% center;
	}
}

.hero_title_line1,
.hero_title_line2 {
	display: block;
}

/* â”€â”€ Hero sub-headline â€” typewriter â”€â”€ */
.hero_subheadline {
	font-family: var(--hff) !important;
	font-size: 22px !important;
	color: var(--hc);
	-webkit-text-fill-color: var(--hc);
	line-height: 1 !important;
	max-width: none !important;
	white-space: nowrap;
	margin: 0 0 50px 0 !important;
	font-weight: 400 !important;
	min-height: 0;
}

.hero_typewriter_cursor {
	display: inline-block;
	width: 2px;
	height: 1em;
	background: var(--ai-signal);
	margin-left: 2px;
	vertical-align: text-bottom;
	animation: tw_blink 0.75s step-end infinite;
}

@keyframes tw_blink {

	0%,
	100% {
		opacity: 1;
	}

	50% {
		opacity: 0;
	}
}

/* â”€â”€ Hero rotator description â”€â”€ */
/* â”€â”€ Hero title â€” Space Grotesk tech, gauche, gras â”€â”€ */
.hero_title_raleway {
	font-family: var(--hff) !important;
	font-size: clamp(24px, 3.8vw, 48px);
	font-weight: 700 !important;
	line-height: 1.12;
	max-width: 100%;
	margin: 0 0 28px 0 !important;
	color: var(--hc);
	letter-spacing: -0.04em;
}

/* â”€â”€ Hero rotator description â”€â”€ */
.hero_rotator_desc {
	font-family: var(--hff) !important;
	font-size: 22px;
	color: var(--bc);
	margin: 0 0 10px 0 !important;
	max-width: none !important;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	flex-wrap: nowrap;
	gap: 7px;
	line-height: 1;
}

.hero_fixed_text {
	font-family: var(--hff) !important;
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0;
	color: var(--hc);
	white-space: nowrap;
	flex-shrink: 0;
}

.hero_intelligence_label {
	font-family: var(--hff) !important;
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
	color: var(--hc);
	-webkit-text-fill-color: var(--hc);
	background: none;
	letter-spacing: 0;
	animation: none;
	white-space: nowrap;
	flex-shrink: 0;
}

.hero_kw {
	font-weight: 700;
	color: var(--mc);
	-webkit-text-fill-color: var(--mc);
}

.hero_rotating_wrapper {
	position: relative;
	display: block;
	width: 100%;
	max-width: 540px;
	height: 1em;
	overflow: hidden;
	padding: 0;
	font-size: 22px;
	flex-shrink: 0;
	line-height: 1;
}

.hero_rotating_item {
	position: absolute;
	top: 0;
	left: 0;
	white-space: nowrap;
	font-family: var(--hff) !important;
	font-size: 22px;
	font-weight: 700;
	opacity: 0;
	line-height: 1;
	transform: translateY(110%);
	transition: opacity 0.45s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
	color: var(--mc);
}

.hero_rotating_item.active {
	opacity: 1;
	transform: translateY(0);
}

.hero_rotating_item.exit {
	opacity: 0;
	transform: translateY(-110%);
	transition: opacity 0.35s ease, transform 0.35s ease;
}

/* Responsive queries */
@media(max-width: 900px) {
	.hero_title_raleway {
		font-size: clamp(26px, 5vw, 44px);
		max-width: 100%;
	}

	.hero_rotator_desc {
		font-size: 19px;
	}

	.hero_rotating_wrapper,
	.hero_fixed_text,
	.hero_intelligence_label,
	.hero_rotating_item {
		font-size: 19px;
	}
}

@media(max-width: 600px) {
	.hero_title_raleway {
		font-size: clamp(22px, 7vw, 34px);
	}

	.hero_rotator_desc {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}

	.hero_rotating_wrapper {
		width: 100%;
		height: 2.8em;
	}

	.hero_rotating_item {
		white-space: normal;
		word-break: break-word;
	}
}

.hero_rotating_item.active {
	opacity: 1;
	transform: translateY(0);
}

.hero_rotating_item.exit {
	opacity: 0;
	transform: translateY(-100%);
	transition: opacity 0.35s ease, transform 0.35s ease;
}

/* Speed line â€” supprimÃ©e */
.hero_speed_line {
	display: none;
}

@keyframes heroSpeedLine {
	0% {
		opacity: 0;
		transform: translateX(-40px);
	}

	60% {
		opacity: 1;
		transform: translateX(4px);
	}

	100% {
		opacity: 0.75;
		transform: translateX(0);
	}
}

.hero_cta_group {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	margin-top: 36px;
}

/* CTA alignÃ© Ã  gauche */
.hero_cta_group.hero_cta_left {
	justify-content: flex-start;
	max-width: 680px;
}

.hero_cta_primary.neoh_fn_button {
	background: var(--ai-blue);
	color: var(--hc);
	padding: 14px 30px;
	border-radius: 6px;
	font-weight: 600;
	box-shadow: 0 0 30px var(--ai-blue-glow), 0 4px 20px rgba(0, 0, 0, 0.3);
	transition: var(--omni-transition);
}

.hero_cta_primary.neoh_fn_button:hover {
	box-shadow: 0 0 50px var(--ai-blue-glow), 0 6px 30px rgba(0, 0, 0, 0.4);
	transform: translateY(-2px);
}

.hero_cta_secondary.neoh_fn_button {
	color: var(--bc);
	font-weight: 500;
}

.hero_cta_secondary.neoh_fn_button:hover {
	color: var(--ai-blue);
}

/* Bouton GÃ©nÃ©rateur de Prompt â€” glassmorphism teintÃ© bleu */
.hero_cta_prompt.neoh_fn_button {
	position: relative;
	display: inline-flex;
	align-items: center;
	padding: 14px 26px;
	border-radius: 8px;
	border: 1px solid rgba(22, 127, 202, 0.4);
	background: rgba(22, 127, 202, 0.08);
	color: var(--ai-blue);
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.5px;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	box-shadow:
		inset 0 1px 0 rgba(22, 127, 202, 0.25),
		inset 0 -1px 0 rgba(0, 0, 0, 0.15),
		0 4px 20px rgba(22, 127, 202, 0.1);
	transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 2.2);
	overflow: hidden;
}

.hero_cta_prompt.neoh_fn_button::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(22, 127, 202, 0.15) 0%, rgba(22, 127, 202, 0.05) 100%);
	border-radius: inherit;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.hero_cta_prompt.neoh_fn_button:hover {
	border-color: var(--ai-blue);
	background: rgba(22, 127, 202, 0.15);
	color: var(--hc);
	box-shadow:
		inset 0 1px 0 rgba(22, 127, 202, 0.4),
		inset 0 -1px 0 rgba(0, 0, 0, 0.2),
		0 0 30px rgba(22, 127, 202, 0.3),
		0 6px 24px rgba(22, 127, 202, 0.2);
	transform: translateY(-2px);
}

.hero_cta_prompt.neoh_fn_button:hover::before {
	opacity: 1;
}

/* â”€â”€ About scroll-reveal â”€â”€ */
#about {
	opacity: 1;
	transform: none;
}

/* Déclenche immédiatement si scroll direct vers #about */
#about:target {
	opacity: 1;
	transform: translateY(0);
}

/* About visual */
.about_visual {
	min-height: 420px;
	background: transparent !important;
	border: none !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

.about_node_network {
	position: absolute;
	inset: 0;
}

.about_pillars {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin: 24px 0;
}

.pillar_item {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 15px;
	color: var(--bc);
	padding: 5px 10px;
	border-radius: 8px;
	background: var(--glass-bg);
	border: 1px solid var(--glass-border);
	transition: var(--omni-transition);
}

.pillar_item:hover {
	background: var(--glass-bg-hover);
	border-color: var(--ai-blue-glow);
}

.pillar_icon {
	color: var(--ai-blue);
	font-size: 18px;
	flex-shrink: 0;
}

.about_approach {
	color: var(--bc);
	font-style: italic;
	font-size: 15px;
	margin-top: 8px;
}

/* Glass card */
.glass_card {
	background: var(--glass-bg);
	border: 1px solid var(--glass-border);
	border-radius: 16px;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	transition: var(--omni-transition);
}

.glass_card:hover {
	background: var(--glass-bg-hover);
	border-color: var(--ai-blue-glow);
	box-shadow: 0 8px 32px rgba(22, 127, 202, 0.12);
	transform: translateY(-3px);
}

/* â”€â”€ Services 5-cards grid override â”€â”€ */
.neoh_fn_services ul {
	display: grid !important;
	grid-template-columns: repeat(5, 1fr) !important;
	gap: 20px !important;
	margin-left: 0 !important;
	flex-wrap: unset !important;
}

.neoh_fn_services li {
	width: 100% !important;
	padding-left: 0 !important;
	margin-bottom: 0 !important;
	margin-top: 0 !important;
	display: flex;
}

.neoh_fn_services li:nth-of-type(2n+1) {
	margin-top: 0 !important;
}

.neoh_fn_services .item {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.neoh_fn_services .item_content {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.neoh_fn_services .fn_title {
	font-size: 16px;
}

.neoh_fn_services .fn_desc {
	font-size: 15px;
	line-height: 1.4;
	flex: 1;
}

/* Service cards */
.service_card.item {
	padding: 22px 18px;
	border-radius: 14px;
	background: var(--glass-bg);
	border: 2px solid var(--mc);
	transition: var(--omni-transition);
}

.service_card.item:hover {
	background: var(--glass-bg-hover);
}

/* â”€â”€ Responsive services â”€â”€ */
@media (max-width: 1200px) {
	.neoh_fn_services ul {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}

@media (max-width: 768px) {
	.neoh_fn_services ul {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px !important;
	}

	.service_card.item {
		padding: 14px 12px;
	}

	.neoh_fn_services .item_content {
		padding: 12px 10px;
	}

	.neoh_fn_services .item_num span {
		min-width: 36px;
		font-size: 12px;
	}
}

@media (max-width: 480px) {
	.neoh_fn_services ul {
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	.service_card.item {
		padding: 12px 10px;
	}
}

/* Section subtitle */
.section_subtitle {
	max-width: 700px;
	margin: -6px auto 12px;
	text-align: center;
	opacity: 0.75;
	font-size: 17px;
	line-height: 1.5;
}

#formations .neoh_fn_title {
	margin-bottom: 0;
}

#formations .section_subtitle {
	margin-bottom: 16px;
}

/* â”€â”€ Formations section â”€â”€ */
#formations {
	padding: 60px 0 50px;
	position: relative;
	scroll-margin-top: 100px;
}

#diagnostic {
	padding: 60px 0 50px;
	position: relative;
	scroll-margin-top: 100px;
	background: linear-gradient(180deg, rgba(5, 8, 15, 0.8) 0%, transparent 100%);
}

/* â”€â”€ Formations grid â”€â”€ */
.formations_grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 25px;
	margin-top: 10px;
}

.formation_card {
	padding: 24px;
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 12px;
	opacity: 0;
	transform: translateY(20px);
	background: rgba(15, 23, 42, 0.4);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 12px;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.formation_card.fc-visible {
	opacity: 1;
	transform: translateY(0);
}

.formation_card:hover {
	transform: translateY(-8px) !important;
	border-color: var(--ai-blue) !important;
	background: rgba(15, 23, 42, 0.6);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4);
}

/* stagger via nth-child */
.formation_card:nth-child(1) { transition-delay: 0s; }
.formation_card:nth-child(2) { transition-delay: 0.1s; }
.formation_card:nth-child(3) { transition-delay: 0.2s; }
.formation_card:nth-child(4) { transition-delay: 0.3s; }
.formation_card:nth-child(5) { transition-delay: 0.4s; }
.formation_card:nth-child(6) { transition-delay: 0.5s; }

/* Variante Engineering — cartes avec data-level (coins carrés, style console) */
.formation_card[data-level] {
	border-radius: 0;
	border-color: #333;
	background: #000;
}

.formation_card[data-level]:hover {
	background: #080808;
	border-color: var(--ai-blue) !important;
}

.card_header {
	margin-bottom: 4px;
}

.card_header span {
	font-family: monospace;
	font-size: 10px;
	letter-spacing: 2.5px;
	color: var(--ai-blue);
	text-transform: uppercase;
}

.formation_card[data-level] h4 {
	font-size: 15px;
	font-weight: 700;
	color: var(--hc);
	font-family: var(--hff);
	line-height: 1.3;
	margin: 0;
}

.formation_card[data-level] p {
	font-size: 13px;
	color: var(--bc);
	line-height: 1.55;
	margin: 0;
}

.formation_top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 4px;
}

.formation_icon {
	font-size: 24px;
	filter: drop-shadow(0 0 8px rgba(22, 127, 202, 0.4));
}

.formation_num {
	font-family: var(--hff);
	font-size: 22px;
	font-weight: 800;
	color: rgba(22, 127, 202, 0.15);
	line-height: 1;
	transition: color 0.3s ease;
}

.formation_card:hover .formation_num {
	color: rgba(22, 127, 202, 0.4);
}

.formation_card h4.fn_title {
	font-size: 18px;
	font-weight: 700;
	margin: 0;
	color: #fff;
	line-height: 1.3;
}

.formation_card .fn_desc {
	font-size: 14px;
	line-height: 1.5;
	opacity: 0.8;
	margin: 0;
	flex: 1;
}

/* livrable */
.formation-livrable {
	margin-top: 10px;
	padding: 12px;
	background: rgba(255, 255, 255, 0.03);
	border-left: 3px solid var(--ai-blue);
	border-radius: 4px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.formation-livrable .l_label {
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--ai-blue);
	font-weight: 700;
}

.formation-livrable .l_value {
	font-size: 13px;
	font-weight: 500;
	color: #e2e8f0;
}

/* compatibilité badge */
.compatibility-badge {
	display: inline-flex;
	align-items: center;
	padding: 5px 10px;
	background: rgba(148, 163, 184, 0.05);
	border: 1px solid rgba(148, 163, 184, 0.15);
	border-radius: 6px;
	font-size: 11px;
	color: #94a3b8;
	margin-top: 8px;
	transition: all 0.3s ease;
}

.formation_card:hover .compatibility-badge {
	border-color: rgba(148, 163, 184, 0.3);
	color: #cbd5e1;
	background: rgba(148, 163, 184, 0.1);
}

/* —— Omni Pathfinder Section —— */
/* —— Omni Pathfinder : Grille Technique —— */
#omni-pathfinder {
	padding: 100px 0;
	background: #050505;
	color: #e2e8f0;
	font-family: 'Inter', 'Space Grotesk', sans-serif;
	text-align: center;
}

#omni-pathfinder .neoh_fn_title {
	margin-bottom: 60px;
}

.pathfinder_container {
	max-width: 900px;
	margin: 0 auto;
	background: #000000;
	border: 1px solid rgba(255, 255, 255, 0.05);
	border-radius: 0;
	display: flex;
	flex-direction: column;
}

.pathfinder_step {
	display: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	min-height: 80px;
}

.pathfinder_step.active {
	display: grid;
	grid-template-columns: 250px 1fr;
	align-items: stretch;
}

.diag-step-num {
	display: block;
	font-size: 1.8rem;
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	color: #0F6FFF;
	font-weight: 700;
	letter-spacing: 2px;
	margin-bottom: 8px;
	text-shadow: 0 0 12px rgba(15, 111, 255, 0.4);
}

.pathfinder_label {
	font-size: 1.4rem;
	font-family: 'Space Grotesk', sans-serif;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	margin-bottom: 5px;
}

body.light-mode .pathfinder_label {
	color: #333;
}

.diag-hint {
	font-size: 0.9rem;
	color: #888;
	font-style: italic;
	margin-bottom: 25px;
	line-height: 1.5;
}

.pathfinder_options {
	display: flex;
	flex-wrap: wrap;
	padding: 10px;
	gap: 10px;
	background: #050505;
}

.path_segment {
	flex: 1;
	min-width: 140px;
	padding: 15px 20px;
	background: #0d0d0d;
	border: 1px solid rgba(255, 255, 255, 0.05);
	color: #888;
	font-size: 13px;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 0;
}

.path_segment:hover {
	background: #111;
	color: #fff;
	border-color: rgba(255, 255, 255, 0.15);
}

.path_segment.active-glow {
	background: #161616;
	color: #fff;
	border-color: var(--ai-blue);
	box-shadow: 0 4px 15px -5px rgba(15, 111, 255, 0.6); /* Halo bleu électrique subtil dessous */
}

/* Bouton Pathfinder Style 'Générer Prompt' */
#pathfinder_submit {
	display: none;
	width: 100%;
	background: #000;
	color: #fff;
	border: 2px solid #333;
	border-radius: 0;
	padding: 0 30px;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
	height: 60px;
	cursor: pointer;
	transition: all 0.3s ease;
	align-items: center;
	justify-content: center;
	gap: 15px;
}

#pathfinder_submit:hover {
	border-color: var(--ai-blue);
	box-shadow: 0 8px 30px rgba(15, 111, 255, 0.3);
	transform: translateY(-2px);
}

@media(max-width: 768px) {
	.diag-step-num { font-size: 1.4rem; }
	.pathfinder_label { font-size: 1.1rem; }
	#diag-content { padding: 30px 20px; }
	#diag-progress-container { width: 80%; }
}

/* ── Résultat diagnostic app ── */
#diag_app_result {
	margin-top: 20px;
	padding: 24px;
	background: #080808;
	border: 1px solid #222;
	text-align: left;
}

#diag_app_result .diag_result_content {
	font-size: 14px;
	line-height: 1.75;
	color: #aaa;
	font-family: 'Inter', 'Space Grotesk', sans-serif;
}

/* —— Omni Diagnostic App —— */
#omni-diagnostic-app {
	background: linear-gradient(135deg, rgba(10, 20, 35, 0.95) 0%, rgba(5, 12, 25, 0.98) 100%);
	border: 1px solid rgba(15, 111, 255, 0.18);
	border-radius: 12px;
	margin-top: 50px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	font-family: 'Inter', 'Space Grotesk', sans-serif;
	text-align: left;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.4);
}

body.light-mode #diagnostic {
	background-color: #ddeaf8 !important;
}

body.light-mode #omni-diagnostic-app {
	background: #ffffff !important;
	border: 1px solid rgba(0, 91, 196, 0.15) !important;
	border-radius: 12px !important;
	box-shadow: 0 8px 32px rgba(0, 91, 196, 0.08) !important;
}

body.light-mode .diag_app_header {
	background: #f0f6ff !important;
	border-bottom: 1px solid rgba(0, 91, 196, 0.12) !important;
}

body.light-mode .diag_app_title {
	color: #0d2040 !important;
}


.diag_app_header {
	padding: 20px 30px;
	border-bottom: 1px solid #222;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #080808;
}

#diag-progress-container {
	padding: 12px 50px 0;
	text-align: left;
}

.diag_app_title {
	font-size: 12px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #fff;
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	font-weight: 700;
	text-align: center;
	width: 100%;
}

.diag_console_progress {
	font-family: monospace;
	font-size: 13px;
	color: var(--ai-blue);
	letter-spacing: 1px;
}

#diag-content {
	min-height: 350px;
	padding: 50px;
	background: #000;
	display: block;
}

#diag-footer {
	padding: 30px 50px;
	border-top: 1px solid #222;
	background: #080808;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.diag_email_field {
	width: 100%;
	background: #000 !important;
	border: 1px solid #333 !important;
	padding: 18px 24px !important;
	color: #fff !important;
	font-size: 15px !important;
	border-radius: 0 !important;
	outline: none;
	transition: border-color 0.3s ease;
}

.diag_email_field:focus {
	border-color: var(--ai-blue) !important;
}

.diag_final_btn {
	width: 100%;
	height: 70px;
	background: #000;
	color: #fff;
	border: 2px solid #333;
	border-radius: 0;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.diag_final_btn:hover {
	border-color: #555;
	background: #050505;
}

/* Halo bleu actif en fin de test — strictement vers le bas, aucune pulsation */
.diag_final_btn.active-glow {
	border-color: var(--ai-blue) !important;
	box-shadow: 0 8px 24px -4px rgba(15, 111, 255, 0.6);
}

@media(max-width: 768px) {
	#diag-content { padding: 40px 25px; }
	#diag-footer { padding: 25px; }
}

/* ── Diagnostic — light mode overrides ── */
body.light-mode #diag-content {
	background: #ffffff !important;
}

body.light-mode #diag-footer {
	background: #f0f6ff !important;
	border-top: 1px solid rgba(0, 91, 196, 0.12) !important;
}

body.light-mode .diag_email_field {
	background: #ffffff !important;
	color: #1e293b !important;
	border-color: rgba(0, 91, 196, 0.2) !important;
}

body.light-mode .diag_final_btn {
	background: #f0f6ff !important;
	color: #0d2040 !important;
	border-color: rgba(0, 91, 196, 0.25) !important;
}

body.light-mode .diag_progress_percent {
	color: #0d2040 !important;
}

body.light-mode .diag_progress_wrapper {
	color: #3a5a80 !important;
}

/* ── Écran de résultat final ── */
.diag_result_screen {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 420px;
	padding: 70px 40px;
	text-align: center;
}

.diag_result_tag {
	font-family: monospace;
	font-size: 10px;
	letter-spacing: 3px;
	color: #444;
	text-transform: uppercase;
	margin-bottom: 36px;
}

.diag_result_level {
	font-family: monospace;
	font-size: clamp(60px, 12vw, 104px);
	font-weight: 700;
	color: #fff;
	line-height: 1;
	letter-spacing: -3px;
	margin-bottom: 14px;
}

.diag_result_name {
	font-family: monospace;
	font-size: 15px;
	letter-spacing: 5px;
	color: var(--ai-blue);
	text-transform: uppercase;
	margin-bottom: 10px;
}

.diag_result_score {
	font-family: monospace;
	font-size: 12px;
	letter-spacing: 2px;
	color: #333;
	margin-bottom: 52px;
}

.diag_download_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 62px;
	padding: 0 48px;
	background: #000;
	color: #fff;
	border: 2px solid #333;
	border-radius: 0;
	text-decoration: none;
	font-family: monospace;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	cursor: pointer;
	transition: border-color 0.3s ease, box-shadow 0.3s ease;
	box-shadow: 0 8px 24px -4px rgba(15, 111, 255, 0.5);
}

.diag_download_btn:hover {
	border-color: var(--ai-blue);
	box-shadow: 0 12px 32px -4px rgba(15, 111, 255, 0.75);
	color: #fff;
	text-decoration: none;
}


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

@media(max-width: 768px) {
	.pathfinder_container {
		margin: 0 20px;
		padding: 30px 20px;
	}
}

@media(max-width: 640px) {
	.formations_grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
	.formation_card {
		padding: 25px;
		min-height: auto;
	}
	
	.formation_card h4.fn_title {
		font-size: 16px;
		margin-bottom: 15px;
	}
	
	.formation_card .fn_desc {
		font-size: 14px;
		line-height: 1.45;
	}
}
		margin-bottom: 20px;
	}
	
	.formation_livrable {
		padding: 12px 0;
	}
	
	.formation_livrable .l_value {
		font-size: 13px;
	}
	
	.formation_compat {
		padding: 10px 12px;
		margin-top: 15px;
	}
	
	.formation_compat .c_value {
		font-size: 12px;
	}
}

/* ── Bloc de transition Diagnostic CTA ── */
.diag_cta_block {
	text-align: center;
	padding: 50px 20px 10px;
}

.diag_cta_block .diag_cta_title {
	font-size: clamp(18px, 2.5vw, 24px);
	font-weight: 700;
	color: var(--hc);
	font-family: var(--hff);
	line-height: 1.35;
	margin-bottom: 16px;
	letter-spacing: -0.3px;
}

.diag_cta_block .diag_cta_text {
	font-size: 15px;
	color: var(--bc);
	max-width: 560px;
	margin: 0 auto 32px;
	line-height: 1.65;
}

#btn-diagnostic {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 36px;
	height: 54px;
	font-size: 14px;
	font-weight: 700;
	font-family: var(--hff);
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--bc);
	background: transparent;
	border: 2px solid var(--muted);
	border-radius: 6px;
	cursor: pointer;
	transition: border-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
}

#btn-diagnostic:hover {
	border-color: var(--mc);
	color: var(--hc);
}

#btn-diagnostic.active-glow {
	background: linear-gradient(135deg, var(--mc) 0%, var(--mcl) 100%);
	color: #ffffff;
	border-color: transparent;
	box-shadow: 0 0 25px rgba(15, 111, 255, 0.6);
	transform: scale(1.05);
	transition: all 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	animation: gentle-pulse 2s infinite;
}

@keyframes gentle-pulse {
	0%   { box-shadow: 0 0 10px rgba(15, 111, 255, 0.4); }
	50%  { box-shadow: 0 0 25px rgba(15, 111, 255, 0.7); }
	100% { box-shadow: 0 0 10px rgba(15, 111, 255, 0.4); }
}

body.light-mode #btn-diagnostic {
	color: #334155;
	border-color: rgba(15, 111, 255, 0.25);
}

body.light-mode #btn-diagnostic.active-glow {
	color: #ffffff;
	box-shadow: 0 0 25px rgba(15, 111, 255, 0.45);
}

/* ── Pipeline Timeline ── */
.pipeline_wrapper {
	position: relative;
	width: 100%;
	padding: 20px 0 40px;
}

.pipeline_canvas {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 0;
}

.pipeline_phases {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0;
	align-items: start;
}

.pipeline_phase {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 0 12px;
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 0.5s ease, transform 0.5s ease;
}

.pipeline_phase.visible {
	opacity: 1;
	transform: translateY(0);
}

.pipeline_phase:nth-child(1) {
	transition-delay: 0s;
}

.pipeline_phase:nth-child(2) {
	transition-delay: 0.15s;
}

.pipeline_phase:nth-child(3) {
	transition-delay: 0.3s;
}

.pipeline_phase:nth-child(4) {
	transition-delay: 0.45s;
}

/* NÅ“ud circulaire */
.phase_node {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: var(--ai-blue);
	border: 2px solid rgba(22, 127, 202, 0.6);
	box-shadow: 0 0 0 6px rgba(22, 127, 202, 0.12), 0 0 24px rgba(22, 127, 202, 0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	position: relative;
	z-index: 2;
	flex-shrink: 0;
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.pipeline_phase:hover .phase_node {
	box-shadow: 0 0 0 8px rgba(22, 127, 202, 0.2), 0 0 40px rgba(22, 127, 202, 0.7);
	transform: scale(1.08);
}

.phase_num {
	font-family: 'Raleway', sans-serif;
	font-size: 17px;
	font-weight: 800;
	color: var(--hc);
	letter-spacing: 1px;
}

/* Card */
.phase_card {
	width: 100%;
	padding: 20px 18px 18px;
	border-radius: 12px;
	text-align: left;
	cursor: default;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.pipeline_phase:hover .phase_card {
	transform: translateY(-4px);
	box-shadow: 0 10px 36px rgba(22, 127, 202, 0.35), 0 2px 12px rgba(22, 127, 202, 0.2);
	border-color: var(--ai-blue) !important;
}

.phase_label {
	font-size: 10px;
	font-family: 'Raleway', sans-serif;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: var(--ai-blue);
	margin: 0 0 6px;
}

.phase_title {
	font-family: 'Raleway', sans-serif;
	font-size: 15px;
	font-weight: 700;
	color: var(--hc);
	margin: 0 0 10px;
}

.phase_desc {
	font-size: 12.5px;
	line-height: 1.6;
	color: var(--bc);
	margin: 0 0 14px;
}

.phase_cta {
	font-size: 12px;
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	color: var(--ai-blue);
	text-decoration: none;
	letter-spacing: 0.5px;
	transition: color 0.2s ease;
}

.phase_cta:hover {
	color: var(--hc);
}

@media (max-width: 900px) {
	.pipeline_phases {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}

	.phase_card {
		padding: 14px 12px 12px;
	}

	.pipeline_wrapper {
		padding-left: 8px;
		padding-right: 8px;
	}
}

@media (max-width: 640px) {
	.pipeline_phases {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.phase_card {
		padding: 12px 10px 10px;
	}

	.pipeline_wrapper {
		padding-left: 4px;
		padding-right: 4px;
	}
}

/* â”€â”€ Prompt Generator â”€â”€ */
#prompt-gen {
	padding: 60px 0 10px;
	scroll-margin-top: 100px;
	position: relative;
	background: linear-gradient(180deg, rgba(5, 8, 15, 0.8) 0%, transparent 100%);
}

#prompt-gen .neoh_fn_title {
	margin-bottom: 6px;
}

#prompt-gen .section_subtitle {
	font-size: 13px;
	margin-bottom: 8px;
}

.prompt_generator {
	margin-top: 6px;
	display: grid;
	grid-template-columns: 1fr 1fr 1.2fr;
	gap: 0;
	align-items: stretch;
	background: linear-gradient(135deg, rgba(10, 20, 35, 0.9) 0%, rgba(5, 12, 25, 0.95) 100%);
	border: 1px solid rgba(15, 111, 255, 0.15);
	border-radius: 20px;
	overflow: hidden;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 16px 48px rgba(0, 0, 0, 0.4);
}

/* Step groups */
.prompt_step_group {
	margin-bottom: 8px;
}

.prompt_step_header {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 5px;
}

.prompt_step_num {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--ai-blue);
	color: var(--hc);
	font-size: 10px;
	font-weight: 700;
	font-family: var(--hff);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	box-shadow: 0 0 6px rgba(22, 127, 202, 0.4);
}

.prompt_label {
	font-family: var(--hff);
	font-size: 10px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: rgba(192, 200, 212, 0.9);
	margin: 0;
}

/* Radio & checkbox pill */
.prompt_radio_group,
.prompt_check_group {
	display: flex;
	flex-wrap: nowrap;
	gap: 5px;
}

.prompt_radio,
.prompt_check {
	display: flex;
	align-items: center;
	gap: 5px;
	cursor: pointer;
	font-size: 11.5px;
	color: var(--bc);
	padding: 4px 9px;
	border-radius: 20px;
	border: 1px solid rgba(255, 255, 255, 0.07);
	background: rgba(255, 255, 255, 0.03);
	transition: all 0.22s ease;
	user-select: none;
	-webkit-user-select: none;
	white-space: nowrap;
}

.prompt_radio:has(input:checked),
.prompt_check:has(input:checked) {
	background: rgba(22, 127, 202, 0.18);
	border-color: rgba(22, 127, 202, 0.5);
	color: var(--hc);
	box-shadow: 0 0 10px rgba(22, 127, 202, 0.2);
}

.prompt_radio:hover,
.prompt_check:hover {
	border-color: rgba(22, 127, 202, 0.35);
	background: rgba(22, 127, 202, 0.08);
	color: var(--hc);
}

.prompt_radio input,
.prompt_check input {
	display: none;
}

/* Select wrapper */
.prompt_select_wrap {
	position: relative;
}

.prompt_select_arrow {
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--ai-blue);
	font-size: 16px;
	pointer-events: none;
}

.prompt_select {
	width: 100%;
	background: rgba(8, 18, 32, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.07);
	border-radius: 10px;
	color: var(--bc);
	font-family: var(--bff);
	font-size: 14px;
	padding: 11px 40px 11px 16px;
	cursor: pointer;
	outline: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	appearance: none;
	-webkit-appearance: none;
	box-shadow:
		inset 0 2px 8px rgba(0, 0, 0, 0.5),
		inset 0 -1px 2px rgba(255, 255, 255, 0.04);
}

.prompt_select:focus {
	border-color: rgba(22, 127, 202, 0.5);
	box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.5), 0 0 0 3px rgba(22, 127, 202, 0.1);
}

/* â”€â”€ Inset inputs â€” Style unifiÃ© (Contact & GÃ©nÃ©rateur) â”€â”€ */
.prompt_input,
.prompt_textarea,
.prompt_select,
.prompt_output_text,
.cf_field input,
.cf_field textarea,
.eng_input {
	width: 100%;
	background: rgba(6, 14, 26, 0.8) !important;
	border: 1px solid rgba(255, 255, 255, 0.06) !important;
	border-radius: 10px;
	color: rgba(220, 228, 240, 0.9) !important;
	font-family: var(--bff);
	font-size: 14px;
	padding: 12px 16px;
	outline: none;
	display: block;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-shadow:
		inset 0 3px 10px rgba(0, 0, 0, 0.55),
		inset 0 1px 3px rgba(0, 0, 0, 0.4),
		inset 0 -1px 2px rgba(255, 255, 255, 0.03) !important;
}

.eng_input {
	background: rgba(6, 14, 26, 0.8);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 8px;
	color: rgba(220, 228, 240, 0.9);
	font-family: var(--bff);
	font-size: 13.5px;
	padding: 10px 14px;
	outline: none;
	width: 100%;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.5), inset 0 -1px 2px rgba(255, 255, 255, 0.03);
}

.prompt_select {
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}

.prompt_textarea {
	height: 110px;
	resize: vertical;
}

.prompt_input::placeholder,
.prompt_textarea::placeholder,
.prompt_select::placeholder {
	font-size: 11px;
	opacity: 1;
}

.prompt_output_text {
	font-family: 'Courier New', monospace;
	line-height: 1.75;
	flex: 1;
	overflow-y: auto;
	white-space: pre-wrap;
	word-break: break-word;
}

.prompt_input:focus,
.prompt_textarea:focus,
.prompt_select:focus,
.cf_field input:focus,
.cf_field textarea:focus {
	border-color: rgba(22, 127, 202, 0.45) !important;
	color: rgba(220, 228, 240, 0.9) !important;
	box-shadow:
		inset 0 3px 10px rgba(0, 0, 0, 0.55),
		0 0 0 3px rgba(22, 127, 202, 0.1) !important;
}

.eng_input:focus {
	border-color: rgba(22, 127, 202, 0.45);
	box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.5), 0 0 0 3px rgba(22, 127, 202, 0.1);
}

/* Fix autofill navigateur — le browser impose son fond blanc, seul box-shadow inset peut le masquer */
.cf_field input:-webkit-autofill,
.cf_field input:-webkit-autofill:hover,
.cf_field input:-webkit-autofill:focus,
.prompt_input:-webkit-autofill,
.prompt_input:-webkit-autofill:hover,
.prompt_input:-webkit-autofill:focus {
	-webkit-text-fill-color: rgba(220, 228, 240, 0.9) !important;
	-webkit-box-shadow: 0 0 0 1000px rgba(6, 14, 26, 0.95) inset, inset 0 3px 10px rgba(0, 0, 0, 0.55) !important;
	box-shadow: 0 0 0 1000px rgba(6, 14, 26, 0.95) inset, inset 0 3px 10px rgba(0, 0, 0, 0.55) !important;
	border-radius: 10px !important;
	border-color: rgba(255, 255, 255, 0.06) !important;
	transition: background-color 99999s ease-in-out 0s;
}

.eng_input:-webkit-autofill,
.eng_input:-webkit-autofill:hover,
.eng_input:-webkit-autofill:focus {
	-webkit-text-fill-color: rgba(220, 228, 240, 0.9) !important;
	-webkit-box-shadow: 0 0 0 1000px rgba(6, 14, 26, 0.95) inset, inset 0 2px 8px rgba(0, 0, 0, 0.5) !important;
	box-shadow: 0 0 0 1000px rgba(6, 14, 26, 0.95) inset, inset 0 2px 8px rgba(0, 0, 0, 0.5) !important;
	border-radius: 8px !important;
	border-color: rgba(255, 255, 255, 0.06) !important;
	transition: background-color 99999s ease-in-out 0s;
}

/* â”€â”€ Light mode overrides unifiÃ©s â”€â”€ */
body.light-mode .prompt_input,
body.light-mode .prompt_textarea,
body.light-mode .prompt_select,
body.light-mode .prompt_output_text,
body.light-mode .cf_field input,
body.light-mode .cf_field textarea {
	background: #ffffff !important;
	border: 1.5px solid rgba(0, 91, 196, 0.35) !important;
	color: #0d2040 !important;
	box-shadow: none !important;
}

body.light-mode .prompt_input::placeholder,
body.light-mode .prompt_textarea::placeholder,
body.light-mode .cf_field input::placeholder,
body.light-mode .cf_field textarea::placeholder {
	color: rgba(0, 60, 140, 0.4) !important;
	font-style: normal !important;
	font-size: 11px !important;
}

body.light-mode .prompt_input:focus,
body.light-mode .prompt_textarea:focus,
body.light-mode .cf_field input:focus,
body.light-mode .cf_field textarea:focus {
	border-color: var(--ai-blue) !important;
	box-shadow: 0 0 0 3px rgba(15, 111, 255, 0.12) !important;
	outline: none !important;
}

body.light-mode .prompt_generator {
	background: #ffffff !important;
	border-color: rgba(0, 91, 196, 0.15) !important;
	box-shadow: 0 15px 45px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.9), inset 0 -1px 0 rgba(0, 91, 196, 0.06) !important;
}

body.light-mode .prompt_output_idle {
	border-color: rgba(0, 91, 196, 0.2) !important;
	background: rgba(0, 91, 196, 0.02) !important;
}

body.light-mode .pg_idle_title {
	color: #1e293b !important;
}

/* Generate button */
button.prompt_generate_btn {
	width: 100%;
	background: transparent;
	color: var(--bc);
	border: 2px solid var(--muted);
	border-radius: 5px;
	padding: 0 30px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 3px 14px rgba(22, 127, 202, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
	font-family: var(--hff);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 4px;
}

button.prompt_generate_btn:hover {
	border-color: var(--mc);
	color: var(--hc);
	background: rgba(15, 111, 255, 0.08);
	box-shadow: 0 8px 40px rgba(22, 127, 202, 0.45), 0 2px 16px rgba(22, 127, 202, 0.3);
	transform: translateY(-2px);
}

button.prompt_generate_btn svg {
	transition: transform 0.2s ease;
}

button.prompt_generate_btn:hover svg {
	transform: translateX(3px);
}

.prompt_output_text.typing::after {
	content: '|';
	animation: blink 0.7s infinite;
}

@keyframes blink {
	50% {
		opacity: 0;
	}
}

/* Colonnes gauche et centre */
.prompt_col {
	display: flex;
	flex-direction: column;
	padding: 20px 20px;
	border-right: 1px solid rgba(22, 127, 202, 0.1);
}

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

/* Titre de colonne */
.pg_col_title {
	font-family: var(--hff);
	font-size: 9px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(22, 127, 202, 0.6);
	margin: 0 0 12px 0;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(22, 127, 202, 0.1);
}

/* Colonne droite output */
.prompt_output_col {
	display: flex;
	flex-direction: column;
	padding: 20px 20px;
	background: rgba(4, 10, 20, 0.4);
	height: 100%;
	box-sizing: border-box;
}

body.light-mode .prompt_output_col {
	background: rgba(160, 200, 240, 0.55) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.prompt_result_container {
	flex: 1;
	min-height: 0;
	display: flex;
	flex-direction: column;
}

.prompt_output_header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(22, 127, 202, 0.15);
}

.prompt_output {
	flex: 1;
	display: flex;
	flex-direction: column;
	min-height: 0;
}

.prompt_output_text {
	flex: 1;
	min-height: 0;
	display: flex;
	flex-direction: column;
	overflow-y: auto;
}

.prompt_output_placeholder {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	opacity: 0.45;
	gap: 6px;
}

.pg_idle_sub {
	font-size: 12px;
	color: rgba(192, 200, 212, 0.6);
	margin: 0;
}

/* Alignement des boutons en bas */
.prompt_generate_btn,
.prompt_reset_btn {
	margin-top: 6px !important;
	height: 38px !important;
	flex-shrink: 0 !important;
}

.prompt_reset_btn {
	width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 10px;
	color: var(--bc);
	font-size: 14px;
	font-weight: 600;
	font-family: var(--bff);
	cursor: pointer;
	transition: all 0.3s ease;
}

.prompt_reset_btn:hover {
	background: rgba(255, 50, 50, 0.1);
	border-color: rgba(255, 50, 50, 0.3);
	color: #ff4f4f;
	transform: translateY(-2px);
}

body.light-mode .prompt_reset_btn {
	background: #f1f5f9;
	border-color: rgba(0, 0, 0, 0.05);
	color: #1e293b;
}

body.light-mode .prompt_reset_btn:hover {
	background: #fee2e2;
	color: #dc2626;
}

body.light-mode .neoh_fn_services .item_num span {
	background: linear-gradient(180deg, #ffffff 0%, #ddeaf8 100%);
	color: #0d2040;
	box-shadow: 0 4px 0 #7aaac8;
	border-top: 3px solid var(--mc);
}

body.light-mode .neoh_fn_services .item_num span:before {
	border-bottom-color: #ddeaf8;
}

body.light-mode .neoh_fn_services .item_num span:after {
	border-left-color: #ddeaf8;
}

body.light-mode .neoh_fn_services .item:hover .item_num span {
	background: linear-gradient(180deg, #eaf3fc 0%, #c8dff4 100%);
}

body.light-mode .neoh_fn_services .item:hover .item_num span:before {
	border-bottom-color: #c8dff4;
}

body.light-mode .neoh_fn_services .item:hover .item_num span:after {
	border-left-color: #c8dff4;
}

body.light-mode .phase_node {
	background: linear-gradient(180deg, #ffffff 0%, #ddeaf8 100%);
	border: 2px solid #a8c8e8;
	box-shadow: 0 4px 0 #7aaac8, 0 6px 10px rgba(0, 0, 0, 0.1);
}

body.light-mode .phase_num {
	color: #0d2040;
}

body.light-mode .pipeline_phase:hover .phase_node {
	box-shadow: 0 4px 0 #5a8ab0, 0 8px 20px rgba(0, 80, 160, 0.18);
	border-color: #7aaac8;
}

@keyframes pg_appear {
	from {
		opacity: 0;
		transform: translateY(8px);
	}

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

.pg_output_appear {
	animation: pg_appear 0.4s ease forwards;
}

.prompt_output_header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 14px;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(22, 127, 202, 0.15);
}

.prompt_output_label {
	font-family: var(--hff);
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--ai-blue);
	display: flex;
	align-items: center;
	gap: 6px;
}

.prompt_output_label::before {
	content: '';
	width: 6px;
	height: 6px;
	background: var(--ai-blue);
	border-radius: 50%;
	display: inline-block;
	box-shadow: 0 0 6px var(--ai-blue);
	animation: blink 1.4s ease infinite;
}

@keyframes blink {

	0%,
	100% {
		opacity: 1
	}

	50% {
		opacity: 0.3
	}
}

.prompt_copy_btn {
	display: flex;
	align-items: center;
	gap: 6px;
	background: rgba(22, 127, 202, 0.08);
	border: 1px solid rgba(22, 127, 202, 0.25);
	border-radius: 6px;
	color: var(--bc);
	font-size: 12px;
	padding: 5px 12px;
	cursor: pointer;
	transition: all 0.2s ease;
	font-family: var(--bff);
}

.prompt_copy_btn:hover {
	background: rgba(22, 127, 202, 0.18);
	border-color: var(--ai-blue);
	color: var(--hc);
}

.prompt_output_text {
	background: rgba(4, 10, 20, 0.85);
	border: 1px solid rgba(22, 127, 202, 0.12);
	border-radius: 12px;
	padding: 22px 20px;
	font-family: 'Courier New', monospace;
	font-size: 12.5px;
	line-height: 1.75;
	color: rgba(180, 210, 240, 0.9);
	white-space: pre-wrap;
	word-break: break-word;
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	box-shadow: inset 0 2px 12px rgba(0, 0, 0, 0.6);
}

.prompt_output_text::-webkit-scrollbar {
	width: 5px;
}

.prompt_output_text::-webkit-scrollbar-track {
	background: transparent;
}

.prompt_output_text::-webkit-scrollbar-thumb {
	background: rgba(22, 127, 202, 0.3);
	border-radius: 3px;
}

/* Spinner loading state */
.pg_spinner_wrap {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #aaa;
	font-size: 13px;
	padding: 20px;
}

.pg_spinner {
	display: inline-block;
	width: 14px;
	height: 14px;
	border: 2px solid rgba(255, 255, 255, 0.2);
	border-radius: 50%;
	border-top-color: #0F6FFF;
	animation: pg_spin 0.9s ease-in-out infinite;
	flex-shrink: 0;
}

@keyframes pg_spin { to { transform: rotate(360deg); } }

/* Bloc de sortie formaté */
.pg_output_pre {
	white-space: pre-wrap;
	font-family: 'Fira Code', 'Courier New', monospace;
	font-size: 13px;
	line-height: 1.75;
	color: rgba(220, 235, 255, 0.95) !important;
	margin: 0;
	padding: 4px 0;
}

.prompt_copy_btn.ready-glow {
    border-color: var(--ai-blue) !important;
    background: rgba(15, 111, 255, 0.15) !important;
    color: #fff !important;
    box-shadow: 0 0 15px rgba(15, 111, 255, 0.4), inset 0 0 10px rgba(15, 111, 255, 0.2) !important;
    animation: ready-pulse 2s infinite;
}

@keyframes ready-pulse {
    0% { box-shadow: 0 0 8px rgba(15, 111, 255, 0.3); }
    50% { box-shadow: 0 0 20px rgba(15, 111, 255, 0.6); }
    100% { box-shadow: 0 0 8px rgba(15, 111, 255, 0.3); }
}

/* ── Slider créativité ── */
.pg_slider_wrap {
	display: flex;
	align-items: center;
	gap: 10px;
}

.pg_slider_pole {
	font-size: 11px;
	color: rgba(192, 200, 212, 0.6);
	white-space: nowrap;
	font-family: var(--hff);
	letter-spacing: 0.5px;
}

.pg_slider_val {
	min-width: 24px;
	text-align: center;
	font-size: 13px;
	font-weight: 700;
	color: var(--ai-blue);
	font-family: var(--hff);
}

.pg_slider {
	flex: 1;
	-webkit-appearance: none;
	appearance: none;
	height: 4px;
	border-radius: 2px;
	background: rgba(22, 127, 202, 0.2);
	outline: none;
	cursor: pointer;
}

.pg_slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--ai-blue);
	cursor: pointer;
	box-shadow: 0 0 8px rgba(22, 127, 202, 0.6);
	transition: box-shadow 0.2s ease;
}

.pg_slider::-webkit-slider-thumb:hover {
	box-shadow: 0 0 14px rgba(22, 127, 202, 0.9);
}

.pg_slider::-moz-range-thumb {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--ai-blue);
	cursor: pointer;
	border: none;
	box-shadow: 0 0 8px rgba(22, 127, 202, 0.6);
}

/* ── Scrollbar Theme Omninoun ── */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: #000;
}
::-webkit-scrollbar-thumb {
    background: var(--mc);
    border-radius: 4px;
    box-shadow: 0 0 10px rgba(15, 111, 255, 0.3);
}
::-webkit-scrollbar-thumb:hover {
    background: #1e88e5;
}

/* Force dark background for prompt output */
.prompt_output_text {
    background-color: #040a14 !important;
    background: #040a14 !important;
    border: 1px solid rgba(15, 111, 255, 0.25) !important;
    box-shadow: inset 0 0 25px rgba(15, 111, 255, 0.15) !important;
    position: relative;
    overflow-y: auto !important;
    flex: 1 !important;
    min-height: 0 !important;
    color: rgba(220, 235, 255, 0.95) !important;
}

.pg_output_pre {
    background: transparent !important;
    color: rgba(220, 235, 255, 0.95) !important;
    white-space: pre-wrap;
    font-family: 'Fira Code', 'Courier New', monospace;
    font-size: 13px;
    line-height: 1.75;
    margin: 0;
    padding: 4px 0;
}

/* Ajout d'une lueur plus subtile sur les bords */
.prompt_output_text::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    box-shadow: inset 0 0 40px rgba(15, 111, 255, 0.08);
    pointer-events: none;
}

/* Light mode overrides â€” bloc supprimÃ©, voir rÃ¨gles consolidÃ©es plus haut */

@media(max-width: 1100px) {
	.prompt_generator {
		grid-template-columns: 1fr 1fr;
	}
	.prompt_output_col {
		grid-column: 1 / -1;
		border-right: none;
		border-top: 1px solid rgba(22, 127, 202, 0.1);
	}
	.prompt_output_text {
		min-height: 300px;
	}
}

@media(max-width: 700px) {
	.prompt_generator {
		grid-template-columns: 1fr;
	}
	.prompt_col {
		border-right: none;
		border-bottom: 1px solid rgba(22, 127, 202, 0.1);
	}
	.prompt_output_col {
		grid-column: auto;
	}
}

/* Responsive */
@media(max-width: 600px) {
	.hero_cta_group {
		flex-direction: column;
	}

	.about_pillars {
		grid-template-columns: 1fr;
	}



	.neoh_fn_hero .fn_title {
		font-size: 28px;
	}
}

/* â”€â”€ Hero responsive â”€â”€ */
@media(max-width: 900px) {
	.hero_title_raleway {
		font-size: clamp(26px, 5vw, 44px);
		max-width: 100%;
	}

	.hero_subheadline {
		font-size: clamp(18px, 1.8vw, 22px) !important;
		max-width: 100%;
	}

	.hero_rotator_desc {
		font-size: clamp(18px, 1.8vw, 22px) !important;
	}

	.hero_fixed_text,
	.hero_intelligence_label {
		font-size: clamp(18px, 1.8vw, 22px) !important;
	}

	.hero_rotating_wrapper {
		font-size: clamp(18px, 1.8vw, 22px) !important;
		width: auto;
		max-width: 520px;
	}

	.hero_rotating_item {
		font-size: clamp(18px, 1.8vw, 22px) !important;
	}
}

@media(max-width: 600px) {

	/* Badge : masquer celui du haut, afficher celui du bas */
	.hero_badge_row--top {
		display: none;
	}

	.hero_badge_row--bottom {
		display: flex;
		justify-content: center;
		margin-top: 20px;
		margin-bottom: 0;
	}

	/* Compensation header fixe portÃ©e par hero_content */
	.neoh_fn_hero .hero_content {
		padding-top: 150px;
		padding-bottom: 60px;
	}

	.neoh_fn_hero .hero_main_container {
		flex: 0 0 auto;
		justify-content: flex-start;
		align-items: center;
		padding-top: 24px;
	}

	.neoh_fn_down,
	body.light-mode .neoh_fn_down {
		right: auto !important;
		left: 50% !important;
		bottom: 24px !important;
		transform: translateX(-50%) !important;
		white-space: nowrap;
	}

	.hero_left_content {
		max-width: 100%;
		width: 100%;
		text-align: center !important;
		padding: 0 !important;
		margin: 0 auto !important;
		box-sizing: border-box;
	}

	.hero_title_raleway {
		font-size: clamp(17px, 5vw, 24px) !important;
		max-width: 100% !important;
		width: 100%;
		letter-spacing: -0.02em;
		margin-top: 20px !important;
		margin-bottom: 20px !important;
		line-height: 1.1 !important;
		text-align: center !important;
		box-sizing: border-box;
		left: 0 !important;
	}

	.hero_rotator_desc {
		font-size: clamp(13px, 3.5vw, 16px) !important;
		flex-direction: column !important;
		gap: 0px;
		align-items: center !important;
		text-align: center !important;
		width: 100%;
		margin-top: 20px !important;
		margin-bottom: 20px !important;
		line-height: 1.1 !important;
	}

	.hero_subheadline {
		font-size: clamp(13px, 3.5vw, 16px) !important;
		max-width: 100%;
		margin-top: 20px !important;
		margin-bottom: 16px;
		min-height: 0;
		white-space: normal !important;
		line-height: 1.1 !important;
		text-align: center !important;
	}

	#formations, #diagnostic, #prompt-gen {
		padding-top: 60px !important;
	}

	.hero_mobile_block {
		display: block !important;
	}

	.hero_fixed_text,
	.hero_intelligence_label {
		font-size: clamp(13px, 3.5vw, 16px) !important;
		white-space: normal !important;
		text-align: center !important;
		flex-shrink: 1 !important;
	}

	.hero_rotating_wrapper {
		width: 100% !important;
		max-width: 100% !important;
		font-size: clamp(13px, 3.5vw, 16px) !important;
		height: auto !important;
		min-height: 1.5em;
		padding: 0;
		overflow: visible !important;
	}

	.hero_rotating_item {
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		text-align: center !important;
		font-size: clamp(13px, 3.5vw, 16px) !important;
		white-space: normal !important;
		transform: translateY(110%);
	}

	.hero_rotating_item.active {
		transform: translateY(0) !important;
	}

	.hero_rotating_item.exit {
		transform: translateY(-110%) !important;
	}
}

@media(max-width: 400px) {
	.hero_badge_row--top {
		padding-top: 80px;
	}

	.hero_title_raleway {
		font-size: clamp(15px, 4.5vw, 20px) !important;
	}
}

}

/* ── Language Switcher ── */
.lang-switcher {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-right: 25px;
	font-family: 'Space Grotesk', sans-serif;
	font-weight: 700;
	font-size: 12px;
	letter-spacing: 1px;
}

.lang-link {
	text-decoration: none;
	color: var(--bc);
	opacity: 0.4;
	transition: all 0.3s ease;
}

.lang-link:hover,
.lang-link.active {
	opacity: 1;
	color: var(--mc);
}

.lang-divider {
	opacity: 0.2;
	color: var(--bc);
}

@media (max-width: 1040px) {
	.lang-switcher {
		margin-right: 15px;
	}
}

@media (max-width: 768px) {
	.lang-switcher {
		display: none;
		/* MasquÃ© sur mobile pour gagner de la place */
	}
}

/* ── Engineering override — Noir mat / Carré strict / Bleu #0F6FFF ── */
.formations_grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 20px;
	margin-bottom: 50px;
}

.formation_card {
	background: #050505;
	border: 1px solid #1a1a1a;
	padding: 30px;
	border-radius: 0 !important;
	position: relative;
	transition: all 0.3s ease;
}

.formation_card:hover,
.formation_card.highlight {
	border-color: #0F6FFF;
	box-shadow: 0 0 20px rgba(15, 111, 255, 0.2);
}

.formation_card .card_header span {
	font-family: 'Space Grotesk', monospace;
	color: #0F6FFF;
	font-size: 12px;
	letter-spacing: 2px;
}

.formation_card h4 {
	color: #fff;
	margin: 15px 0;
	font-family: 'Space Grotesk', sans-serif;
	text-transform: uppercase;
}

/* ── Barre de progression Console ── */
.diag_progress_wrapper {
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	color: #555;
	font-size: 14px;
	letter-spacing: 1px;
}

.diag_progress_bar {
	color: #0F6FFF;
	font-weight: bold;
	text-shadow: 0 0 8px rgba(15, 111, 255, 0.4);
}

.diag_progress_percent {
	color: #fff;
	margin-left: 10px;
}

body.light-mode .diag_progress_percent {
	color: #0d2040 !important;
}

body.light-mode .diag_progress_wrapper {
	color: #3a5a80 !important;
}

/* ── Bouton téléchargement final (legacy) ── */
.btn_download_final {
	background: #0F6FFF;
	color: #fff;
	border: none;
	border-radius: 0;
	padding: 15px 30px;
	font-family: 'Space Grotesk', monospace;
	text-transform: uppercase;
	cursor: pointer;
	box-shadow: 0 4px 0 0 #084499;
	transition: transform 0.1s ease;
}

.btn_download_final:active {
	transform: translateY(2px);
	box-shadow: 0 2px 0 0 #084499;
}

/* ── Bouton de soumission finale du diagnostic ── */
.diag_submit_final {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	background: transparent;
	color: var(--bc);
	border: 2px solid var(--muted);
	border-radius: 5px;
	padding: 0 30px;
	height: 52px;
	font-size: 15px;
	font-weight: 600;
	font-family: var(--hff);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 3px 14px rgba(22, 127, 202, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.diag_submit_final:hover,
.diag_submit_final.has-glow {
	border-color: var(--mc);
	color: var(--hc);
	background: rgba(15, 111, 255, 0.08);
	box-shadow: 0 8px 40px rgba(22, 127, 202, 0.45), 0 2px 16px rgba(22, 127, 202, 0.3);
	transform: translateY(-2px);
}

.diag_submit_final svg {
	transition: transform 0.2s ease;
}

.diag_submit_final:hover svg,
.diag_submit_final.has-glow svg {
	transform: translateX(3px);
}

/* Titre ANALYSE_TERMINÉE */
.diag-final-title {
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	font-size: 1.1rem;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 3px;
	margin: 0 0 8px;
}

/* Carte résultat programme */
.diag-result-card {
	border: 1px solid #1a1a1a;
	border-left: 3px solid #0F6FFF;
	background: #050505;
	padding: 18px 20px;
	margin: 0 0 20px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

body.light-mode .diag-result-card {
	background: #ffffff !important;
	border-color: rgba(0, 91, 196, 0.15) !important;
	border-left-color: #0F6FFF !important;
	box-shadow: 0 4px 16px rgba(0, 91, 196, 0.08) !important;
}

body.light-mode .diag-result-detail {
	color: #334e6e !important;
}

body.light-mode .diag-roadmap-mention {
	color: #6b8cae !important;
}

.diag-result-module {
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	font-size: 1.5rem;
	font-weight: 700;
	color: #0F6FFF;
	letter-spacing: 2px;
	margin: 0 0 12px;
	text-shadow: 0 0 10px rgba(15, 111, 255, 0.3);
}

.diag-result-detail {
	font-size: 0.88rem;
	color: #aaaaaa;
	margin: 0 0 5px;
	line-height: 1.5;
}

/* Mention roadmap */
.diag-roadmap-mention {
	font-size: 0.75rem;
	color: #444;
	text-align: center;
	margin: 12px 0 0;
	letter-spacing: 0.5px;
}

/* Instruction email */
.diag-final-instruction {
	font-size: 0.9rem;
	color: #888;
	font-style: italic;
	margin: 0 0 20px;
	line-height: 1.5;
}

/* ── Boutons d'options du diagnostic ── */
.diag_opt_btn {
	display: block;
	width: 100%;
	padding: 15px 20px;
	margin: 10px 0;
	background: linear-gradient(135deg, rgba(20, 25, 35, 0.85) 0%, rgba(10, 15, 25, 0.9) 100%);
	border: 1px solid rgba(255, 255, 255, 0.06);
	color: #eee;
	text-align: left;
	cursor: pointer;
	border-radius: 8px;
	transition: all 0.3s ease;
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	font-size: 13px;
	letter-spacing: 0.5px;
}

.diag_opt_btn:hover {
	border-color: rgba(15, 111, 255, 0.25);
	background: linear-gradient(135deg, rgba(25, 32, 45, 0.9) 0%, rgba(15, 20, 30, 0.95) 100%);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3), 0 0 15px rgba(15, 111, 255, 0.08);
	transform: translateX(5px);
}

body.light-mode .diag_opt_btn {
	background: linear-gradient(135deg, rgba(240, 246, 255, 0.9) 0%, rgba(230, 240, 250, 0.95) 100%) !important;
	border: 1px solid rgba(0, 91, 196, 0.15) !important;
	color: #0d2040 !important;
}
body.light-mode .diag_opt_btn:hover {
	background: linear-gradient(135deg, rgba(220, 235, 255, 0.95) 0%, rgba(200, 225, 250, 1) 100%) !important;
	border-color: rgba(15, 111, 255, 0.4) !important;
	color: #0F6FFF !important;
	box-shadow: 0 8px 25px rgba(0, 91, 196, 0.15), 0 0 15px rgba(15, 111, 255, 0.1) !important;
}

/* Message accès accordé */
.diag-access-msg {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 200px;
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	font-size: 1.1rem;
	color: #0F6FFF;
	text-transform: uppercase;
	letter-spacing: 3px;
	text-align: center;
	text-shadow: 0 0 15px rgba(15, 111, 255, 0.5);
}

.diag-access-msg .diag-step-num {
	font-size: 3rem;
	margin-bottom: 16px;
}

/* Étape pré-résultat */
.result_pre_step {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.result_pre_step .mono {
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	font-size: 13px;
	color: #555;
	letter-spacing: 1px;
	margin: 0;
}

/* ── Hero CTA Buttons — 2026 Interactive Design ── */
.hero_cta_container {
	display: flex;
	gap: 15px;
	margin-top: 40px;
	flex-wrap: nowrap; /* Force single line on desktop */
	justify-content: center;
	align-items: center;
}

.hero_cta_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 24px;
	border: 2px solid var(--primary);
	border-radius: 50px;
	color: var(--primary) !important;
	font-family: var(--hff);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	position: relative;
	overflow: hidden;
	background: transparent;
	z-index: 1;
	white-space: nowrap; /* Prevent text wrapping */
	/* Highly Perceptible Persistent Halo / 3D Effect */
	box-shadow: 0 6px 20px rgba(15, 111, 255, 0.3), 
				inset 0 0 10px rgba(15, 111, 255, 0.1);
}

.hero_cta_btn span {
	position: relative;
	z-index: 2;
}

/* Hover Effect: Background Animation + Ultra-Amplified Halo */
.hero_cta_btn::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	background: var(--primary);
	border-radius: 50%;
	transform: translate(-50%, -50%);
	transition: width 0.6s ease, height 0.6s ease;
	z-index: -1;
}

.hero_cta_btn:hover {
	color: #ffffff !important;
	/* Ultra-Amplified Halo and 3D lift */
	box-shadow: 0 12px 35px rgba(15, 111, 255, 0.6),
				0 0 15px rgba(15, 111, 255, 0.4);
	transform: translateY(-7px);
}

.hero_cta_btn:hover::before {
	width: 350px;
	height: 350px;
}

/* Mobile Responsiveness for Hero CTA */
@media (max-width: 1040px) {
	.hero_cta_container {
		flex-wrap: wrap;
	}
}

@media (max-width: 768px) {
	.hero_cta_container {
		flex-direction: column;
		width: 100%;
		gap: 12px;
	}
	
	.hero_cta_btn {
		width: 100%;
		text-align: center;
		padding: 14px 20px;
	}
}

/* ── Typewriter Premium Omninoun ── */
.omni-typewriter {
	display: block;
	font-family: var(--hff);
	font-size: 26px;
	font-weight: 400;
	line-height: 1.4;
	margin: 0 0 36px 0;
	min-height: 1.5em;
}

.omni-typewriter-text {
	color: var(--mc);
	font-weight: 600;
	transition: text-shadow 0.3s ease;
	text-shadow: 0 0 20px rgba(15, 111, 255, 0.3);
}

.omni-typewriter-cursor {
	display: inline-block;
	width: 2px;
	height: 1.1em;
	background: var(--ai-blue);
	margin-left: 2px;
	vertical-align: text-bottom;
	animation: tw_blink 0.75s step-end infinite;
	box-shadow: 0 0 8px rgba(15, 111, 255, 0.6);
}

.omni-typewriter-static {
	display: inline;
	font-family: var(--hff);
	font-size: 26px;
	font-weight: 600;
	color: var(--mc);
	margin: 0 0 36px 0;
	text-shadow: 0 0 20px rgba(15, 111, 255, 0.3);
}

/* Premium cursor glow */
.omni-typewriter-cursor {
	animation: tw_blink 0.75s step-end infinite, tw_glow 2s ease-in-out infinite;
}

@keyframes tw_glow {
	0%, 100% { box-shadow: 0 0 8px rgba(15, 111, 255, 0.6); }
	50% { box-shadow: 0 0 15px rgba(15, 111, 255, 0.9), 0 0 25px rgba(15, 111, 255, 0.4); }
}

/* Fallback existant */
@keyframes tw_blink {
	0%, 100% { opacity: 1; }
	50% { opacity: 0; }
}

/* Responsive */
@media (max-width: 900px) {
	.omni-typewriter,
	.omni-typewriter-static {
		font-size: 22px;
	}
}

@media (max-width: 600px) {
	.omni-typewriter,
	.omni-typewriter-static {
		font-size: 18px;
		margin: 0 0 24px 0;
	}
}

/* ── Animations Subtiles ── */
[data-animate].animated {
	opacity: 1 !important;
	transform: translateY(0) !important;
}

/* Service cards hover moderne */
.service_card {
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service_card:hover {
	transform: translateY(-4px);
}

/* Hero badge subtle glow */
.hero_badge {
	transition: box-shadow 0.3s ease;
}

body:not(.light-mode) .hero_badge:hover {
	box-shadow: 0 0 20px rgba(15, 111, 255, 0.3);
}

/* Fade-in sections */
section[id]:not(#about):not(#services):not(#drop):not(#formations):not(#diagnostic):not(#prompt-gen) {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.6s ease, transform 0.6s ease;
}

section[id]:not(#about):not(#services):not(#drop):not(#formations):not(#diagnostic):not(#prompt-gen).animated {
	opacity: 1;
	transform: translateY(0);
}

/* ── Premium Expertises Section ── */
.omni_expertises {
	display: flex;
	flex-direction: column;
	gap: 24px;
	max-width: 900px;
	margin: 0 auto;
	padding: 20px 0 60px;
}

.omni_expertise_card {
	position: relative;
	background: linear-gradient(135deg, rgba(20, 25, 35, 0.85) 0%, rgba(10, 15, 25, 0.9) 100%);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 16px;
	padding: 32px 36px;
	transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	overflow: hidden;
}

.omni_expertise_card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(15, 111, 255, 0.4), transparent);
	opacity: 0;
	transition: opacity 0.4s ease;
}

.omni_expertise_card:hover {
	transform: translateY(-4px);
	border-color: rgba(15, 111, 255, 0.25);
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.4), 0 0 30px rgba(15, 111, 255, 0.08);
}

.omni_expertise_card:hover::before {
	opacity: 1;
}

.omni_card_header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
}

.omni_card_number {
	font-family: var(--hff);
	font-size: 48px;
	font-weight: 700;
	color: rgba(15, 111, 255, 0.15);
	line-height: 1;
	letter-spacing: -2px;
	transition: color 0.3s ease, text-shadow 0.3s ease;
}

.omni_expertise_card:hover .omni_card_number {
	color: rgba(15, 111, 255, 0.35);
	text-shadow: 0 0 30px rgba(15, 111, 255, 0.4);
}

.omni_card_icon {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(15, 111, 255, 0.08);
	border: 1px solid rgba(15, 111, 255, 0.15);
	border-radius: 12px;
	color: rgba(15, 111, 255, 0.7);
	transition: all 0.3s ease;
}

.omni_expertise_card:hover .omni_card_icon {
	background: rgba(15, 111, 255, 0.12);
	border-color: rgba(15, 111, 255, 0.3);
	color: #0F6FFF;
	box-shadow: 0 0 20px rgba(15, 111, 255, 0.2);
}

.omni_card_icon svg {
	width: 22px;
	height: 22px;
}

.omni_card_title {
	font-family: var(--hff);
	font-size: 22px;
	font-weight: 600;
	color: #ffffff;
	margin: 0 0 14px;
	letter-spacing: -0.02em;
	transition: color 0.3s ease;
}

.omni_expertise_card:hover .omni_card_title {
	color: #0F6FFF;
}

.omni_card_desc {
	font-family: var(--bff);
	font-size: 15px;
	line-height: 1.7;
	color: rgba(180, 190, 210, 0.8);
	margin: 0;
	transition: color 0.3s ease;
}

.omni_expertise_card:hover .omni_card_desc {
	color: rgba(200, 210, 230, 0.95);
}

/* Light mode */
body.light-mode .omni_expertise_card {
	background: linear-gradient(135deg, rgba(250, 252, 255, 0.9) 0%, rgba(245, 248, 253, 0.95) 100%);
	border-color: rgba(0, 91, 196, 0.12);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), inset 0 -1px 0 rgba(0, 91, 196, 0.08), 0 4px 20px rgba(0, 91, 196, 0.08);
}

body.light-mode .omni_card_number {
	color: rgba(0, 91, 196, 0.12);
}

body.light-mode .omni_expertise_card:hover .omni_card_number {
	color: rgba(0, 91, 196, 0.3);
	text-shadow: 0 0 30px rgba(0, 91, 196, 0.3);
}

body.light-mode .omni_card_icon {
	background: rgba(0, 91, 196, 0.06);
	border-color: rgba(0, 91, 196, 0.15);
	color: rgba(0, 91, 196, 0.6);
}

body.light-mode .omni_expertise_card:hover .omni_card_icon {
	background: rgba(0, 91, 196, 0.1);
	border-color: rgba(0, 91, 196, 0.3);
	color: #005bc4;
}

body.light-mode .omni_card_title {
	color: #0d2040;
}

body.light-mode .omni_expertise_card:hover .omni_card_title {
	color: #005bc4;
}

body.light-mode .omni_card_desc {
	color: rgba(30, 60, 100, 0.75);
}

body.light-mode .omni_expertise_card:hover .omni_card_desc {
	color: rgba(30, 60, 110, 0.9);
}

body.light-mode .omni_expertise_card:hover {
	border-color: rgba(0, 91, 196, 0.2);
	box-shadow: 0 20px 50px rgba(0, 91, 196, 0.1), 0 0 30px rgba(0, 91, 196, 0.05);
}

/* Responsive */
@media (max-width: 768px) {
	.omni_expertises {
		gap: 16px;
		padding: 16px 0 40px;
	}
	
	.omni_expertise_card {
		padding: 24px 20px;
	}
	
	.omni_card_number {
		font-size: 36px;
	}
	
	.omni_card_icon {
		width: 38px;
		height: 38px;
	}
	
	.omni_card_icon svg {
		width: 18px;
		height: 18px;
	}
	
	.omni_card_title {
		font-size: 18px;
	}
	
	.omni_card_desc {
		font-size: 14px;
	}
}

/* ── Premium Methodology Section ── */
.omni_methodology {
	display: flex;
	flex-direction: column;
	gap: 28px;
	max-width: 900px;
	margin: 0 auto;
	padding: 20px 0 60px;
}

.omni_phase_card {
	position: relative;
	background: linear-gradient(135deg, rgba(20, 25, 35, 0.85) 0%, rgba(10, 15, 25, 0.9) 100%);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 16px;
	padding: 36px 40px;
	display: flex;
	gap: 36px;
	transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	overflow: hidden;
}

.omni_phase_card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(15, 111, 255, 0.4), transparent);
	opacity: 0;
	transition: opacity 0.4s ease;
}

.omni_phase_card:hover {
	transform: translateY(-4px);
	border-color: rgba(15, 111, 255, 0.25);
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.4), 0 0 30px rgba(15, 111, 255, 0.08);
}

.omni_phase_card:hover::before {
	opacity: 1;
}

.omni_phase_number {
	flex-shrink: 0;
	width: 80px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--hff);
	font-size: 42px;
	font-weight: 700;
	color: rgba(15, 111, 255, 0.12);
	letter-spacing: -2px;
	transition: color 0.3s ease, text-shadow 0.3s ease;
	position: relative;
}

.omni_phase_number::after {
	content: '';
	position: absolute;
	width: 60px;
	height: 60px;
	border: 1px solid rgba(15, 111, 255, 0.1);
	border-radius: 50%;
	transition: all 0.3s ease;
}

.omni_phase_card:hover .omni_phase_number {
	color: rgba(15, 111, 255, 0.35);
	text-shadow: 0 0 40px rgba(15, 111, 255, 0.5);
}

.omni_phase_card:hover .omni_phase_number::after {
	border-color: rgba(15, 111, 255, 0.3);
	box-shadow: 0 0 20px rgba(15, 111, 255, 0.2);
}

.omni_phase_content {
	flex: 1;
}

.omni_phase_label {
	display: inline-block;
	font-family: var(--hff);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(15, 111, 255, 0.7);
	margin-bottom: 10px;
	background: rgba(15, 111, 255, 0.1);
	padding: 6px 14px;
	border-radius: 20px;
	transition: all 0.3s ease;
}

.omni_phase_card:hover .omni_phase_label {
	background: rgba(15, 111, 255, 0.15);
	color: #0F6FFF;
}

.omni_phase_title {
	font-family: var(--hff);
	font-size: 24px;
	font-weight: 600;
	color: #ffffff;
	margin: 0 0 16px;
	letter-spacing: -0.02em;
	transition: color 0.3s ease;
}

.omni_phase_card:hover .omni_phase_title {
	color: #0F6FFF;
}

.omni_phase_desc {
	font-family: var(--bff);
	font-size: 15px;
	line-height: 1.75;
	color: rgba(180, 190, 210, 0.8);
	margin: 0 0 20px;
	transition: color 0.3s ease;
}

.omni_phase_card:hover .omni_phase_desc {
	color: rgba(200, 210, 230, 0.95);
}

.omni_phase_details {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.omni_detail_item {
	font-family: var(--bff);
	font-size: 12px;
	color: rgba(150, 160, 180, 0.6);
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.05);
	padding: 8px 14px;
	border-radius: 6px;
	transition: all 0.3s ease;
}

.omni_phase_card:hover .omni_detail_item {
	background: rgba(15, 111, 255, 0.08);
	border-color: rgba(15, 111, 255, 0.15);
	color: rgba(180, 190, 210, 0.85);
}

/* Light mode */
body.light-mode .omni_phase_card {
	background: linear-gradient(135deg, rgba(250, 252, 255, 0.9) 0%, rgba(245, 248, 253, 0.95) 100%);
	border-color: rgba(0, 91, 196, 0.1);
}

body.light-mode .omni_phase_number {
	color: rgba(0, 91, 196, 0.1);
}

body.light-mode .omni_phase_number::after {
	border-color: rgba(0, 91, 196, 0.08);
}

body.light-mode .omni_phase_card:hover .omni_phase_number {
	color: rgba(0, 91, 196, 0.3);
	text-shadow: 0 0 40px rgba(0, 91, 196, 0.3);
}

body.light-mode .omni_phase_card:hover .omni_phase_number::after {
	border-color: rgba(0, 91, 196, 0.25);
}

body.light-mode .omni_phase_label {
	color: rgba(0, 91, 196, 0.7);
	background: rgba(0, 91, 196, 0.08);
}

body.light-mode .omni_phase_card:hover .omni_phase_label {
	background: rgba(0, 91, 196, 0.12);
	color: #005bc4;
}

body.light-mode .omni_phase_title {
	color: #0d2040;
}

body.light-mode .omni_phase_card:hover .omni_phase_title {
	color: #005bc4;
}

body.light-mode .omni_phase_desc {
	color: rgba(30, 60, 100, 0.75);
}

body.light-mode .omni_phase_card:hover .omni_phase_desc {
	color: rgba(30, 60, 110, 0.9);
}

body.light-mode .omni_detail_item {
	color: rgba(80, 100, 130, 0.6);
	background: rgba(0, 91, 196, 0.03);
	border-color: rgba(0, 91, 196, 0.08);
}

body.light-mode .omni_phase_card:hover .omni_detail_item {
	background: rgba(0, 91, 196, 0.08);
	border-color: rgba(0, 91, 196, 0.15);
	color: rgba(30, 60, 100, 0.8);
}

body.light-mode .omni_phase_card:hover {
	border-color: rgba(0, 91, 196, 0.2);
	box-shadow: 0 20px 50px rgba(0, 91, 196, 0.1), 0 0 30px rgba(0, 91, 196, 0.05);
}

/* Responsive */
@media (max-width: 768px) {
	.omni_methodology {
		gap: 20px;
		padding: 16px 0 40px;
	}
	
	.omni_phase_card {
		flex-direction: column;
		gap: 20px;
		padding: 28px 20px;
	}
	
	.omni_phase_number {
		width: 60px;
		height: 60px;
		font-size: 32px;
	}
	
	.omni_phase_number::after {
		width: 48px;
		height: 48px;
	}
	
	.omni_phase_title {
		font-size: 20px;
	}
	
	.omni_phase_desc {
		font-size: 14px;
	}
	
	.omni_phase_details {
		gap: 8px;
	}
	
	.omni_detail_item {
		font-size: 11px;
		padding: 6px 10px;
	}
}

/* ── Premium Formations Section ── */
.omni_formations {
	display: flex;
	flex-direction: column;
	gap: 20px;
	max-width: 900px;
	margin: 0 auto;
	padding: 20px 0 60px;
}

.omni_formation_card {
	position: relative;
	background: linear-gradient(135deg, rgba(20, 25, 35, 0.85) 0%, rgba(10, 15, 25, 0.9) 100%);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 14px;
	padding: 28px 32px;
	display: flex;
	gap: 28px;
	transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	overflow: hidden;
}

.omni_formation_card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(15, 111, 255, 0.4), transparent);
	opacity: 0;
	transition: opacity 0.4s ease;
}

.omni_formation_card:hover {
	transform: translateY(-3px);
	border-color: rgba(15, 111, 255, 0.25);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35), 0 0 25px rgba(15, 111, 255, 0.08);
}

.omni_formation_card:hover::before {
	opacity: 1;
}

.omni_formation_header {
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}

.omni_module_number {
	font-family: var(--hff);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1.5px;
	color: rgba(15, 111, 255, 0.6);
	transition: color 0.3s ease;
}

.omni_formation_card:hover .omni_module_number {
	color: #0F6FFF;
}

.omni_module_icon {
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(15, 111, 255, 0.08);
	border: 1px solid rgba(15, 111, 255, 0.12);
	border-radius: 10px;
	color: rgba(15, 111, 255, 0.6);
	transition: all 0.3s ease;
}

.omni_formation_card:hover .omni_module_icon {
	background: rgba(15, 111, 255, 0.12);
	border-color: rgba(15, 111, 255, 0.3);
	color: #0F6FFF;
	box-shadow: 0 0 15px rgba(15, 111, 255, 0.2);
}

.omni_module_icon svg {
	width: 20px;
	height: 20px;
}

.omni_formation_body {
	flex: 1;
}

.omni_module_title {
	font-family: var(--hff);
	font-size: 20px;
	font-weight: 600;
	color: #ffffff;
	margin: 0 0 12px;
	letter-spacing: -0.01em;
	transition: color 0.3s ease;
}

.omni_formation_card:hover .omni_module_title {
	color: #0F6FFF;
}

.omni_module_desc {
	font-family: var(--bff);
	font-size: 14px;
	line-height: 1.7;
	color: rgba(180, 190, 210, 0.75);
	margin: 0 0 16px;
	transition: color 0.3s ease;
}

.omni_formation_card:hover .omni_module_desc {
	color: rgba(200, 210, 230, 0.9);
}

.omni_module_tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.omni_module_tags span {
	font-family: var(--bff);
	font-size: 11px;
	color: rgba(150, 160, 180, 0.55);
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.04);
	padding: 5px 11px;
	border-radius: 5px;
	transition: all 0.3s ease;
}

.omni_formation_card:hover .omni_module_tags span {
	background: rgba(15, 111, 255, 0.06);
	border-color: rgba(15, 111, 255, 0.12);
	color: rgba(180, 190, 210, 0.8);
}

/* Light mode */
body.light-mode .omni_formation_card {
	background: linear-gradient(135deg, rgba(250, 252, 255, 0.9) 0%, rgba(245, 248, 253, 0.95) 100%);
	border-color: rgba(0, 91, 196, 0.12);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), inset 0 -1px 0 rgba(0, 91, 196, 0.08), 0 4px 20px rgba(0, 91, 196, 0.08);
}

body.light-mode .omni_module_number {
	color: rgba(0, 91, 196, 0.6);
}

body.light-mode .omni_formation_card:hover .omni_module_number {
	color: #005bc4;
}

body.light-mode .omni_module_icon {
	background: rgba(0, 91, 196, 0.06);
	border-color: rgba(0, 91, 196, 0.1);
	color: rgba(0, 91, 196, 0.55);
}

body.light-mode .omni_formation_card:hover .omni_module_icon {
	background: rgba(0, 91, 196, 0.1);
	border-color: rgba(0, 91, 196, 0.25);
	color: #005bc4;
}

body.light-mode .omni_module_title {
	color: #0d2040;
}

body.light-mode .omni_formation_card:hover .omni_module_title {
	color: #005bc4;
}

body.light-mode .omni_module_desc {
	color: rgba(30, 60, 100, 0.7);
}

body.light-mode .omni_formation_card:hover .omni_module_desc {
	color: rgba(30, 60, 110, 0.85);
}

body.light-mode .omni_module_tags span {
	color: rgba(80, 100, 130, 0.5);
	background: rgba(0, 91, 196, 0.03);
	border-color: rgba(0, 91, 196, 0.06);
}

body.light-mode .omni_formation_card:hover .omni_module_tags span {
	background: rgba(0, 91, 196, 0.06);
	border-color: rgba(0, 91, 196, 0.12);
	color: rgba(30, 60, 100, 0.75);
}

body.light-mode .omni_formation_card:hover {
	border-color: rgba(0, 91, 196, 0.15);
	box-shadow: 0 16px 40px rgba(0, 91, 196, 0.08), 0 0 25px rgba(0, 91, 196, 0.04);
}

/* Responsive */
@media (max-width: 768px) {
	.omni_formations {
		gap: 16px;
		padding: 16px 0 40px;
	}
	
	.omni_formation_card {
		flex-direction: column;
		gap: 18px;
		padding: 24px 18px;
	}
	
	.omni_formation_header {
		flex-direction: row;
		justify-content: space-between;
		width: 100%;
	}
	
	.omni_module_icon {
		width: 36px;
		height: 36px;
	}
	
	.omni_module_icon svg {
		width: 17px;
		height: 17px;
	}
	
	.omni_module_title {
		font-size: 17px;
	}
	
	.omni_module_desc {
		font-size: 13px;
	}
	
	.omni_module_tags {
		gap: 6px;
	}
	
	.omni_module_tags span {
		font-size: 10px;
		padding: 4px 8px;
	}
}

