@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,900");
@import url("fontawesome-all.min.css");

/* Reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
body {
	-webkit-text-size-adjust: none;
}
mark {
	background-color: transparent;
	color: inherit;
}
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
input, select, textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
}

/* Basic */
html {
	box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}
body {
	background: #fff;
	overflow: hidden;
	 /* ... سایر استایل‌های فعلی body ... */
    -webkit-user-select: none; /* برای کروم، سافاری، اپرا */
    -moz-user-select: none;    /* برای فایرفاکس */
    -ms-user-select: none;     /* برای اینترنت اکسپلورر/اج */
    user-select: none;         /* دستور استاندارد */
}
body.is-preload *, body.is-preload *:before, body.is-preload *:after {
	-moz-animation: none !important;
	-webkit-animation: none !important;
	-ms-animation: none !important;
	animation: none !important;
	-moz-transition: none !important;
	-webkit-transition: none !important;
	-ms-transition: none !important;
	transition: none !important;
}
body, input, select, textarea {
	color: #fff;
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 15pt;
	font-weight: 300 !important;
	letter-spacing: -0.025em;
	line-height: 1.75em;
}
a {
	-moz-transition: border-color 0.2s ease-in-out;
	-webkit-transition: border-color 0.2s ease-in-out;
	-ms-transition: border-color 0.2s ease-in-out;
	transition: border-color 0.2s ease-in-out;
	border-bottom: dotted 1px;
	color: inherit;
	outline: 0;
	text-decoration: none;
}
a:hover {
	border-color: transparent;
}

/* Icon */
.icon {
	text-decoration: none;
	position: relative;
}
.icon:before {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	text-transform: none !important;
	font-family: 'Font Awesome 5 Free';
	font-weight: 400;
}
.icon > .label {
	display: none;
}
.icon.solid:before {
	font-weight: 900;
}
.icon.brands:before {
	font-family: 'Font Awesome 5 Brands';
}

/* Wrapper */
@keyframes wrapper {
	0% { opacity: 0; }
	100% { opacity: 1; }
}
#wrapper {
	animation: wrapper 3s forwards;
	height: 100%;
	left: 0;
	opacity: 0;
	position: fixed;
	top: 0;
	width: 100%;
}

/* BG */
@keyframes bg {
	0% { transform: translate3d(0,0,0); }
	100% { transform: translate3d(-2250px,0,0); }
}
#bg {
	animation: bg 60s linear infinite;
	backface-visibility: hidden;
	transform: translate3d(0,0,0);
	background: #348cb2 url("images/bg.jpg") bottom left;
	background-repeat: repeat-x;
	height: 100%;
	left: 0;
	opacity: 1;
	position: fixed;
	top: 0;
	background-size: 2250px auto;
	width: 6750px;
}

/* Overlay - خطوط حذف شده */
#overlay {
	display: none; /* این خط لایه خطوط را مخفی می‌کند */
}

/* Main */
#main {
	height: 100%;
	left: 0;
	position: fixed;
	text-align: center;
	top: 0;
	width: 100%;
}
#main:before {
	content: '';
	display: inline-block;
	height: 100%;
	margin-right: 0;
	vertical-align: middle;
	width: 1px;
}

/* Header */
@keyframes header {
	0% { transform: translate3d(0,1em,0); opacity: 0; }
	100% { transform: translate3d(0,0,0); opacity: 1; }
}
@keyframes nav-icons {
	0% { transform: translate3d(0,1em,0); opacity: 0; }
	100% { transform: translate3d(0,0,0); opacity: 1; }
}
#header {
	animation: header 1s 2.25s forwards;
	backface-visibility: hidden;
	transform: translate3d(0,0,0);
	cursor: default;
	display: inline-block;
	opacity: 0;
	position: relative;
	text-align: center;
	top: -1em;
	vertical-align: middle;
	width: 90%;

	/* --- استایل‌های جدید کادر --- */
	max-width: 800px;
	background: rgba(255, 255, 255, 0.1);
	padding: 2em 3em;
	border-radius: 15px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	min-height: 350px;
}
#header h1 {
	font-size: 5.5em; /* <<<<<<< اندازه جدید فونت برای دسکتاپ */
	font-weight: 900;
	letter-spacing: -0.035em;
	line-height: 1em;
}
#header p {
	font-size: 1.25em;
	margin: 0.75em 0 0.25em 0;
	opacity: 0.75;
}
#header nav {
  /* margin: 1.5em 0 0 0; */ /* این خط را حذف یا کامنت کنید */
  position: absolute;
  bottom: 2.5em;
  left: 0;
  width: 100%;
}
#header nav li {
	animation: nav-icons 0.5s ease-in-out forwards;
	backface-visibility: hidden;
	transform: translate3d(0,0,0);
	display: inline-block;
	height: 5.35em;
	line-height: 5.885em;
	opacity: 0;
	position: relative;
	top: 0;
	width: 5.35em;
}
#header nav li:nth-child(1) { animation-delay: 2.5s; }
#header nav li:nth-child(2) { animation-delay: 2.75s; }
#header nav li:nth-child(3) { animation-delay: 3s; }
#header nav li:nth-child(4) { animation-delay: 3.25s; }
#header nav li:nth-child(5) { animation-delay: 3.5s; }
#header nav li:nth-child(6) { animation-delay: 3.75s; }
#header nav a {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-touch-callout: none;
	border: 0;
	display: inline-block;
}
#header nav a:before {
	transition: all 0.2s ease-in-out;
	border-radius: 100%;
	border: solid 1px #fff;
	display: block;
	font-size: 1.75em;
	height: 2.5em;
	line-height: 2.5em;
	position: relative;
	text-align: center;
	top: 0;
	width: 2.5em;
}
#header nav a:hover { font-size: 1.1em; }
#header nav a:hover:before { background-color: rgba(255, 255, 255, 0.175); color: #fff; }
#header nav a:active { font-size: 0.95em; background: none; }
#header nav a:active:before { background-color: rgba(255, 255, 255, 0.35); color: #fff; }
#header nav a span { display: none; }

/* Footer */
#footer {
	background-image: linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.5) 75%);
	bottom: 0;
	cursor: default;
	height: 6em;
	left: 0;
	line-height: 8em;
	position: absolute;
	text-align: center;
	width: 100%;
}

/* Media Queries for Responsiveness */
@media screen and (max-width: 1680px) {
	body, input, select, textarea { font-size: 13pt; }
	@keyframes bg-1680 { 0% { transform: translate3d(0,0,0); } 100% { transform: translate3d(-1500px,0,0); } }
	#bg { animation-name: bg-1680; background-size: 1500px auto; width: 4500px; }
}
@media screen and (max-width: 1280px) {
	body, input, select, textarea { font-size: 12pt; }
	@keyframes bg-1280 { 0% { transform: translate3d(0,0,0); } 100% { transform: translate3d(-750px,0,0); } }
	#bg { animation-name: bg-1280; background-size: 750px auto; width: 2250px; }
}
@media screen and (max-width: 736px) {
	body { min-width: 320px; }
	body, input, select, textarea { font-size: 11pt; }
	@keyframes bg-736 { 0% { transform: translate3d(0,0,0); } 100% { transform: translate3d(-300px,0,0); } }
	#bg { animation-name: bg-736; background-size: 300px auto; width: 900px; }
	#header h1 { font-size: 3.5em; } /* <<<<<<< اندازه جدید فونت برای موبایل */
	#header p { font-size: 1em; }
	#header nav { font-size: 1em; }
	#header nav a:hover { font-size: 1em; }
	#header nav a:active { font-size: 1em; }
}
@media screen and (max-width: 480px) {
	@keyframes bg-480 { 0% { transform: translate3d(0,0,0); } 100% { transform: translate3d(-412.5px,0,0); } }
	#bg { animation-name: bg-480; background-size: 412.5px auto; width: 1237.5px; }
	#header nav { padding: 0 1em; }
}
.typing-cursor::after {
    content: '|';
    display: inline-block;
    animation: blink-caret 0.75s step-end infinite;
    color: #fff; /* رنگ نشانگر تایپ */
    margin-right: 0.15em; /* کمی فاصله از متن */
}

@keyframes blink-caret {
    from, to { opacity: 1; }
    50% { opacity: 0; }
}