/*
	Company premium frontend system
	- layered on top of the existing company.css file
	- upgrades hierarchy, spacing, surfaces, motion, and responsiveness
*/

:root {
	--company-font-default: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--company-font-primary: "Manrope", system-ui, sans-serif;
	--company-font-secondary: "Instrument Serif", Georgia, serif;

	--company-bg: #faf7f0;
	--company-bg-elevated: rgba(250, 247, 240, 0.84);
	--company-bg-strong: #fffdf8;
	--company-bg-muted: #f4ede2;
	--company-section-bg: #faf7f0;
	--company-section-bg-alt: #f6efe4;
	--company-section-bg-soft: #fffdf8;
	--company-surface: rgba(255, 255, 255, 0.84);
	--company-surface-strong: #ffffff;
	--company-surface-soft: rgba(255, 255, 255, 0.64);
	--company-border: rgba(33, 35, 42, 0.08);
	--company-border-strong: rgba(33, 35, 42, 0.14);
	--company-text: #17181d;
	--company-text-muted: rgba(23, 24, 29, 0.72);
	--company-text-soft: rgba(23, 24, 29, 0.56);
	--company-accent: #0678be;
	--company-accent-strong: #064771;
	--company-accent-soft: rgba(6, 120, 190, 0.12);
	--company-accent-glow: rgba(6, 120, 190, 0.24);
	--company-secondary: #064771;
	--company-highlight: #ea1f28;
	--company-danger: #d44f63;

	--company-shadow-xs: 0 8px 22px rgba(16, 24, 40, 0.06);
	--company-shadow-sm: 0 18px 46px rgba(16, 24, 40, 0.10);
	--company-shadow-md: 0 26px 80px rgba(16, 24, 40, 0.14);
	--company-shadow-lg: 0 42px 120px rgba(16, 24, 40, 0.18);
	--company-shadow-glow: 0 26px 60px rgba(6, 120, 190, 0.18);

	--company-radius-xs: 12px;
	--company-radius-sm: 16px;
	--company-radius-md: 24px;
	--company-radius-lg: 32px;
	--company-radius-xl: 40px;
	--company-pill: 999px;
	--company-ring: 0 0 0 4px rgba(6, 120, 190, 0.14);

	--company-space-1: 8px;
	--company-space-2: 16px;
	--company-space-3: 24px;
	--company-space-4: 32px;
	--company-space-5: 40px;
	--company-space-6: 48px;
	--company-space-7: 56px;
	--company-space-8: 64px;
	--company-space-9: 72px;
	--company-space-10: 80px;

	--company-grid-line: rgba(17, 24, 39, 0.045);
	--company-noise-opacity: 0.18;

	--company-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--company-duration-fast: 280ms;
	--company-duration-base: 460ms;
	--company-duration-slow: 680ms;
	--company-section-space: clamp(34px, 4vw, 64px);
	--company-section-space-compact: clamp(22px, 3vw, 40px);
	--company-section-header-gap: clamp(10px, 1.4vw, 16px);
	--company-button-gap: 10px;
	--company-button-padding-y: 13px;
	--company-button-padding-x: 22px;
}
html {
	scroll-behavior: smooth;
}

body.company-site {
	position: relative;
	background:
		radial-gradient(circle at 12% 18%, rgba(6, 120, 190, 0.06), transparent 32%),
		radial-gradient(circle at 86% 8%, rgba(234, 31, 40, 0.04), transparent 26%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0)),
		var(--company-bg) !important;
	color: var(--company-text);
	font-family: var(--company-font-default);
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
	transition:
		background-color var(--company-duration-base) var(--company-ease),
		color var(--company-duration-fast) var(--company-ease),
		background-image var(--company-duration-slow) var(--company-ease);
}

body.company-site::selection {
	background: var(--company-accent);
	color: #fff;
}

body.company-site a {
	color: inherit;
	transition:
		color var(--company-duration-fast) var(--company-ease),
		opacity var(--company-duration-fast) var(--company-ease),
		transform var(--company-duration-fast) var(--company-ease);
}

body.company-site a:hover {
	color: var(--company-accent-strong);
}

body.company-site img {
	max-width: 100%;
}

body.company-site img.img-fluid,
body.company-site .portfolio-details .portfolio-details-slider img,
body.company-site .blog-author img,
body.company-site .blog .sidebar .recent-posts img,
body.company-site .blog .entry .entry-img img,
body.company-site .team .member .member-img img {
	border-radius: var(--company-radius-md);
}

body.company-site iframe {
	border: 0;
	border-radius: inherit;
}

.company-site-chrome {
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: 0;
}

.company-site-orb,
.company-site-grid,
.company-site-noise {
	position: absolute;
}

.company-site-orb {
	width: 42vw;
	height: 42vw;
	max-width: 620px;
	max-height: 620px;
	border-radius: 50%;
	filter: blur(20px);
	opacity: 0.7;
}

.company-site-orb--one {
	top: -14vw;
	left: -8vw;
	background: radial-gradient(circle, rgba(6, 120, 190, 0.12) 0%, rgba(6, 120, 190, 0.04) 38%, transparent 66%);
}

.company-site-orb--two {
	top: 8vh;
	right: -12vw;
	background: radial-gradient(circle, rgba(234, 31, 40, 0.10) 0%, rgba(234, 31, 40, 0.03) 38%, transparent 70%);
}

.company-site-grid {
	inset: 0;
	background-image:
		linear-gradient(to right, var(--company-grid-line) 1px, transparent 1px),
		linear-gradient(to bottom, var(--company-grid-line) 1px, transparent 1px);
	background-size: 72px 72px;
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.45), transparent 88%);
}

.company-site-noise {
	inset: 0;
	opacity: var(--company-noise-opacity);
	background-image:
		radial-gradient(circle at 20% 20%, rgba(0, 0, 0, 0.06) 0 1px, transparent 1px),
		radial-gradient(circle at 80% 60%, rgba(0, 0, 0, 0.04) 0 1px, transparent 1px),
		radial-gradient(circle at 50% 80%, rgba(0, 0, 0, 0.04) 0 1px, transparent 1px);
	background-size: 24px 24px, 30px 30px, 18px 18px;
}

#main,
.company-page-wrap,
#footer,
#header,
#preloader {
	position: relative;
	z-index: 1;
}

#main {
	overflow: clip;
}

#main > section:not(.company-page-header):not(.breadcrumbs):not(.company-logo-strip) {
	padding: var(--company-section-space) 0;
}

body.company-site #main > section:not(.company-page-header):not(.breadcrumbs):not(.company-logo-strip),
body.company-site .company-page-header,
body.company-site .company-breadcrumbs {
	background: linear-gradient(180deg, var(--company-section-bg-soft), var(--company-section-bg)) !important;
}

.company-page-header + section,
.company-breadcrumbs + section {
	padding-top: var(--company-section-space-compact) !important;
}

.section-bg {
	background: linear-gradient(180deg, var(--company-section-bg-soft), var(--company-section-bg-alt));
	border-block: 1px solid rgba(6, 71, 113, 0.08);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.26), inset 0 -1px 0 rgba(6, 71, 113, 0.03);
}

body.company-site #header,
body.company-site .company-nav-shell,
body.company-site .company-page-header .row > div,
body.company-site .company-breadcrumbs__shell,
body.company-site .company-footer .footer-top .container > .row,
body.company-site .company-footer__bottom .copyright,
body.company-site .services .icon-box,
body.company-site .card,
body.company-site .info-box,
body.company-site .blog .entry,
body.company-site .blog .sidebar,
body.company-site .team .member,
body.company-site .portfolio .portfolio-item,
body.company-site .portfolio-details .portfolio-info,
body.company-site .pricing .box,
body.company-site .company-service-card,
body.company-site .company-form-panel,
body.company-site .company-inline-panel,
body.company-site .company-metric,
body.company-site .company-showcase-card,
body.company-site .company-logo-strip__inner,
body.company-site .company-media-frame,
body.company-site .company-application-card,
body.company-site .company-login-card,
body.company-site input.form-control,
body.company-site textarea.form-control,
body.company-site select.form-select,
body.company-site .php-email-form input,
body.company-site .php-email-form textarea,
body.company-site .blog .sidebar .search-form form input,
body.company-site .pagination .page-link,
body.company-site .portfolio #portfolio-flters li {
	transition:
		background-color var(--company-duration-base) var(--company-ease),
		background var(--company-duration-base) var(--company-ease),
		border-color var(--company-duration-fast) var(--company-ease),
		box-shadow var(--company-duration-fast) var(--company-ease),
		color var(--company-duration-fast) var(--company-ease),
		transform var(--company-duration-fast) var(--company-ease);
}

.company-page-wrap main {
	position: relative;
}

.container,
.container-fluid {
	position: relative;
}

.company-stack-lg {
	gap: 18px;
}

.company-eyebrow,
.company-breadcrumbs__eyebrow,
.company-footer__eyebrow,
.company-page-header__eyebrow,
.company-section-header__kicker,
.company-showcase-card__label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 14px;
	border-radius: var(--company-pill);
	background: rgba(255, 255, 255, 0.52);
	border: 1px solid var(--company-border);
	color: var(--company-text-soft);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.company-btn,
.btn-get-started,
.get-started-btn,
.blog .entry .read-more a,
.btn.btn-primary,
.company-nav-contact,
.company-footer__button,
.php-email-form button[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--company-button-gap);
	min-height: 50px;
	padding: var(--company-button-padding-y) var(--company-button-padding-x) !important;
	border-radius: var(--company-pill) !important;
	border: 1px solid rgba(14, 164, 114, 0.24) !important;
	background: linear-gradient(135deg, var(--company-accent-strong), var(--company-accent)) !important;
	color: #fff !important;
	font-size: 14px;
	font-weight: 800 !important;
	letter-spacing: 0.01em;
	line-height: 1.1;
	white-space: nowrap;
	box-shadow: var(--company-shadow-sm), var(--company-shadow-glow);
	transition:
		transform var(--company-duration-fast) var(--company-ease),
		box-shadow var(--company-duration-fast) var(--company-ease),
		filter var(--company-duration-fast) var(--company-ease),
		border-color var(--company-duration-fast) var(--company-ease);
}

.company-btn i,
.btn-get-started i,
.get-started-btn i,
.blog .entry .read-more a i,
.btn.btn-primary i,
.company-nav-contact i,
.company-footer__button i,
.php-email-form button[type="submit"] i {
	font-size: 0.95em;
	line-height: 1;
}

.company-btn:hover,
.btn-get-started:hover,
.get-started-btn:hover,
.blog .entry .read-more a:hover,
.btn.btn-primary:hover,
.company-nav-contact:hover,
.company-footer__button:hover,
.php-email-form button[type="submit"]:hover {
	transform: translateY(-2px);
	filter: brightness(1.04);
	box-shadow: var(--company-shadow-md), var(--company-shadow-glow);
}

.company-btn--ghost,
.company-nav-login {
	background: rgba(255, 255, 255, 0.58) !important;
	border: 1px solid var(--company-border-strong) !important;
	color: var(--company-text) !important;
	box-shadow: var(--company-shadow-xs) !important;
}

.company-btn--ghost:hover,
.company-nav-login:hover {
	border-color: rgba(14, 164, 114, 0.24) !important;
}

.company-section-header {
	display: grid;
	gap: var(--company-section-header-gap);
	max-width: 760px;
	margin: 0 auto clamp(10px, 1.8vw, 18px);
}

.company-section-header.text-center {
	justify-items: center;
	text-align: center;
}

.company-section-header:not(.text-center) {
	margin-left: 0;
}

.company-section-header h2 {
	margin: 0;
	color: var(--company-text);
	font-family: var(--company-font-secondary);
	font-size: clamp(40px, 5vw, 68px);
	line-height: 0.98;
	letter-spacing: -0.04em;
}

.company-section-header p {
	margin: 0;
	color: var(--company-text-muted);
	font-size: clamp(16px, 2vw, 18px);
	line-height: 1.62;
	max-width: 62ch;
}

.company-page-header {
	padding: 124px 0 24px;
}

.company-page-header::before,
.company-page-header::after,
.company-breadcrumbs::before,
#hero::before {
	content: "";
	position: absolute;
	inset: auto;
	pointer-events: none;
}

.company-page-header::before {
	top: 50px;
	left: 8%;
	width: 280px;
	height: 280px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(6, 120, 190, 0.12), transparent 70%);
}

.company-page-header::after {
	right: 6%;
	top: 16px;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(234, 31, 40, 0.08), transparent 68%);
}

.company-page-header .row > div,
.company-breadcrumbs__shell {
	padding: clamp(18px, 2.5vw, 28px);
	border-radius: var(--company-radius-xl);
	background: var(--company-surface);
	border: 1px solid var(--company-border);
	box-shadow: var(--company-shadow-md);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
}

.company-page-header h1,
.company-breadcrumbs h1 {
	margin: 16px 0 0;
	color: var(--company-text);
	font-family: var(--company-font-secondary);
	font-size: clamp(48px, 6vw, 84px);
	line-height: 0.94;
	letter-spacing: -0.045em;
}

.company-page-header p,
.company-breadcrumbs p {
	margin: 14px auto 0;
	color: var(--company-text-muted);
	font-size: 17px;
	line-height: 1.65;
	max-width: 60ch;
}

.company-breadcrumbs {
	padding: 112px 0 6px;
	border-bottom: 0;
	background: transparent;
}

.company-breadcrumbs__shell {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.company-breadcrumbs ol {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
	padding: 10px 14px;
	list-style: none;
	border-radius: var(--company-pill);
	background: rgba(255, 255, 255, 0.58);
	border: 1px solid var(--company-border);
	color: var(--company-text-soft);
}

.company-breadcrumbs ol li {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-size: 13px;
	font-weight: 700;
}

.company-breadcrumbs ol li + li::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--company-accent);
}

#header {
	top: 0;
	background: transparent !important;
	border: 0;
	box-shadow: none !important;
	padding: 14px 0 0;
	transition:
		padding var(--company-duration-base) var(--company-ease),
		background var(--company-duration-base) var(--company-ease),
		transform var(--company-duration-base) var(--company-ease);
}

#header.is-scrolled {
	padding: 10px 0 0;
}

/* Make the header sticky/floating while preventing content overlap */
#header {
	position: fixed !important;
	top: 12px;
	left: 0;
	right: 0;
	z-index: 1060;
	display: block;
	pointer-events: auto;
}

/* Reserve space so the page content doesn't sit under the fixed header */
@media (max-width: 1199px) {
	#header {
		top: 10px;
	}

}

@media (max-width: 991px) {
	#header {
		top: 8px;
	}

}

@media (max-width: 575px) {
	#header {
		top: 6px;
	}

}

.company-nav-shell {
	min-height: 72px;
	padding: 14px 18px;
	gap: 18px;
	border-radius: var(--company-radius-xl);
	/* background: rgba(255, 255, 255, 0.58);
	border: 1px solid rgba(255, 255, 255, 0.46);
	box-shadow: var(--company-shadow-sm);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px); */
}

#header.header-transparent,
#header.header-scrolled,
body.company-site #header.header-transparent,
body.company-site #header.header-scrolled {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

#header > .container {
	padding-inline: clamp(14px, 3vw, 24px);
}

.company-logo a {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	text-decoration: none;
}

.company-logo {
	flex: 0 1 auto;
	min-width: 0;
}

.company-logo__mark {
	width: 44px;
	height: 44px;
	display: grid;
	place-items: center;
	border-radius: 14px;
	background: linear-gradient(135deg, var(--company-accent), var(--company-highlight));
	color: #fff;
	font-weight: 800;
	letter-spacing: 0.04em;
	box-shadow: var(--company-shadow-sm);
}

.company-logo__text {
	display: grid;
	gap: 2px;
}

.company-logo__title {
	color: var(--company-text);
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
}

.company-logo__subtitle {
	color: var(--company-text-soft);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.navbar ul {
	gap: 10px;
	align-items: center;
}

.navbar {
	min-width: 0;
}

.navbar a,
.navbar a:focus {
	position: relative;
	padding: 10px 14px !important;
	border-radius: var(--company-pill);
	color: var(--company-text-muted);
	font-size: 14px;
	font-weight: 700;
}

.navbar a::after {
	content: "";
	position: absolute;
	left: 14px;
	right: 14px;
	bottom: 8px;
	height: 2px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--company-accent), transparent);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform var(--company-duration-fast) var(--company-ease);
}

.navbar a:hover,
.navbar .active,
.navbar li:hover > a {
	color: var(--company-text);
	background: rgba(255, 255, 255, 0.54);
}

.navbar a:hover::after,
.navbar .active::after,
.navbar li:hover > a::after {
	transform: scaleX(1);
}

.company-nav-login,
.company-nav-contact {
	min-height: 44px;
	padding: 10px 18px !important;
}

.mobile-nav-toggle {
	width: 46px;
	height: 46px;
	display: none;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.66);
	border: 1px solid var(--company-border);
	box-shadow: var(--company-shadow-xs);
	color: var(--company-text);
	font-size: 24px;
	transition:
		transform var(--company-duration-fast) var(--company-ease),
		background var(--company-duration-fast) var(--company-ease),
		box-shadow var(--company-duration-fast) var(--company-ease);
}

.mobile-nav-toggle:hover,
.mobile-nav-toggle:focus {
	transform: translateY(-1px);
	box-shadow: var(--company-shadow-sm);
}

#hero {
	position: relative; /* ensure pseudo-elements are positioned relative to the hero */
	min-height: 100vh;
	padding: 40px 0;
	background:
		radial-gradient(circle at 18% 18%, rgba(6, 120, 190, 0.08), transparent 34%),
		radial-gradient(circle at 82% 12%, rgba(234, 31, 40, 0.06), transparent 28%),
		linear-gradient(180deg, var(--company-section-bg-soft), var(--company-section-bg));
}

#hero::before {
	inset: 0;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(6, 8, 22, 0.18) 100%),
		radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.06), transparent 50%);
	z-index: 0; /* keep the decorative overlay behind carousel contents */
}


#hero::before {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.08) 0%, rgba(250, 247, 240, 0.26) 100%),
		radial-gradient(circle at 50% 50%, rgba(6, 120, 190, 0.04), transparent 50%);
}

#hero .carousel,
#hero .carousel-inner,
#hero .carousel-item,
#hero .carousel-container {
	min-height: inherit;
}

#hero .carousel-container {
	position: relative; /* allow stacking above the hero overlay */
	z-index: 2; /* ensure carousel content sits above the decorative ::before */
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	padding: clamp(20px, 3vw, 30px);
	border-radius: clamp(28px, 4vw, 40px);
	background: linear-gradient(180deg, rgba(8, 12, 22, 0.42), rgba(8, 12, 22, 0.26));
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: var(--company-shadow-lg);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
}

#hero .carousel-container {
	background: linear-gradient(180deg, rgba(255, 253, 248, 0.88), rgba(250, 247, 240, 0.76));
	border-color: rgba(6, 71, 113, 0.08);
}

#hero .carousel-item {
	padding-inline: clamp(40px, 6vw, 72px);
}

#hero .carousel-control-prev,
#hero .carousel-control-next {
	width: auto;
	opacity: 1;
	top: 50%;
	bottom: auto;
	transform: translateY(-50%);
	z-index: 4;
	align-items: center;
	justify-content: center;
}

#hero .carousel-control-prev {
	left: clamp(10px, 2vw, 24px);
}

#hero .carousel-control-next {
	right: clamp(10px, 2vw, 24px);
}

#hero .carousel-nav-btn {
	width: 56px;
	height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.18);
	border: 1px solid rgba(255, 255, 255, 0.28);
	box-shadow: 0 18px 36px rgba(6, 8, 22, 0.22);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	color: #fff;
	transition:
		transform var(--company-duration-fast) var(--company-ease),
		background var(--company-duration-fast) var(--company-ease),
		border-color var(--company-duration-fast) var(--company-ease),
		box-shadow var(--company-duration-fast) var(--company-ease);
}

#hero .carousel-nav-btn {
	background: rgba(255, 255, 255, 0.82);
	border-color: rgba(255, 255, 255, 0.74);
	color: var(--company-secondary);
	box-shadow: 0 18px 36px rgba(16, 24, 40, 0.12);
}

#hero .carousel-nav-btn i {
	font-size: 28px;
	line-height: 1;
}

#hero .carousel-control-prev:hover .carousel-nav-btn,
#hero .carousel-control-next:hover .carousel-nav-btn,
#hero .carousel-control-prev:focus .carousel-nav-btn,
#hero .carousel-control-next:focus .carousel-nav-btn {
	transform: translateY(-2px) scale(1.02);
	background: rgba(14, 164, 114, 0.92);
	border-color: rgba(255, 255, 255, 0.35);
	box-shadow: var(--company-shadow-glow), 0 22px 46px rgba(6, 8, 22, 0.28);
	color: #fff;
}

#hero h2 {
	margin: 16px 0 18px;
	color: var(--company-text);
	font-family: var(--company-font-secondary);
	font-size: clamp(46px, 6vw, 92px);
	line-height: 0.92;
	letter-spacing: -0.05em;
	text-align: left;
}

#hero h2 span {
	color: var(--company-accent);
}

#hero p {
	max-width: 60ch;
	margin: 0;
	color: var(--company-text-muted);
	font-size: clamp(16px, 2vw, 16px);
	line-height: 1.62;
	text-align: left;
}

.company-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
	margin-top: 18px;
}

.company-hero-metrics {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: 18px;
}

.company-metric,
.company-showcase-card,
.company-inline-panel,
.company-media-frame,
.company-logo-strip__inner,
.company-form-panel,
.company-application-card,
.company-login-card {
	border-radius: var(--company-radius-lg);
	background: var(--company-surface);
	border: 1px solid var(--company-border);
	box-shadow: var(--company-shadow-sm);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
}

.company-metric {
	display: grid;
	gap: 8px;
	padding: 14px 16px;
}

.company-metric strong {
	color: var(--company-text);
	font-size: 15px;
	font-weight: 800;
}

.company-metric span {
	color: var(--company-text-muted);
	font-size: 13px;
	line-height: 1.7;
}

.company-showcase-card {
	position: relative;
	padding: clamp(22px, 2.6vw, 28px);
	overflow: hidden;
}

.company-showcase-card::before,
.company-media-frame::before,
.company-service-card::before,
.company-inline-panel::before {
	content: "";
	position: absolute;
	inset: -25% auto auto -10%;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(14, 164, 114, 0.16), transparent 68%);
	pointer-events: none;
}

.company-showcase-card h3 {
	position: relative;
	margin: 12px 0 14px;
	color: var(--company-text);
	font-size: clamp(24px, 3vw, 34px);
	line-height: 1.15;
	letter-spacing: -0.03em;
}

.company-showcase-card ul {
	position: relative;
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.company-showcase-card li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	color: var(--company-text-muted);
	line-height: 1.7;
}

.company-showcase-card i,
.company-inline-panel i {
	color: var(--company-accent);
}

.company-logo-strip {
	padding: 0 0 10px;
}

.company-logo-strip__inner {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	padding: 12px 14px;
}

.company-logo-strip__inner span {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--company-text-soft);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.company-logo-strip__inner span::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--company-accent), var(--company-highlight));
}

.company-media-frame {
	position: relative;
	overflow: hidden;
	padding: 8px;
}

.company-media-frame--soft {
	padding: 12px;
}

.company-media-frame img,
.company-media-frame iframe {
	display: block;
	width: 100%;
	height: auto;
	border-radius: calc(var(--company-radius-lg) - 8px);
}

.company-map-frame {
	height: 100%;
}

.company-inline-panel {
	position: relative;
	display: grid;
	gap: 6px;
	padding: 12px 14px;
	overflow: hidden;
}

.company-inline-panel span {
	color: var(--company-text-soft);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.company-inline-panel strong {
	color: var(--company-text);
	font-size: 15px;
	line-height: 1.6;
}

.services .icon-box,
.card,
.info-box,
.blog .entry,
.blog .sidebar,
.team .member,
.portfolio .portfolio-item,
.portfolio-details .portfolio-info,
.pricing .box,
.blog-author,
.company-service-card {
	position: relative;
	height: 100%;
	border-radius: var(--company-radius-lg);
	border: 1px solid var(--company-border);
	background: var(--company-surface);
	box-shadow: var(--company-shadow-sm);
	transition:
		transform var(--company-duration-base) var(--company-ease),
		box-shadow var(--company-duration-base) var(--company-ease),
		border-color var(--company-duration-base) var(--company-ease),
		background var(--company-duration-base) var(--company-ease);
	overflow: hidden;
}

.services .icon-box:hover,
.card:hover,
.info-box:hover,
.blog .entry:hover,
.blog .sidebar:hover,
.team .member:hover,
.portfolio .portfolio-item:hover,
.portfolio-details .portfolio-info:hover,
.pricing .box:hover,
.company-service-card:hover,
.blog-author:hover {
	transform: translateY(-6px);
	border-color: rgba(14, 164, 114, 0.2);
	box-shadow: var(--company-shadow-md);
}

.services .icon-box,
.info-box,
.pricing .box,
.blog-author,
.company-application-card,
.company-login-card {
	padding: 18px;
}

.services .icon-box .icon,
.info-box i,
.service-details .icon-box .icon,
.company-service-card__icon {
	width: 54px;
	height: 54px;
	display: grid;
	place-items: center;
	border-radius: 18px;
	background: linear-gradient(135deg, rgba(14, 164, 114, 0.16), rgba(139, 92, 246, 0.12));
	border: 1px solid rgba(14, 164, 114, 0.2);
	color: var(--company-accent);
}

.services .icon-box .icon i,
.info-box i,
.service-details .icon-box .icon i,
.company-service-card__icon i {
	font-size: 22px;
}

.services .icon-box h4,
.info-box h3,
.team .member .member-info h4,
.blog .entry .entry-title,
.portfolio-details .portfolio-description h2,
.company-service-card__title,
.card-title,
.pricing .box h3,
.pricing .box h4 {
	color: var(--company-text);
}

.services .icon-box .title a,
.team .member .member-info h4,
.blog .entry .entry-title a,
.portfolio-details .portfolio-info h3,
.pricing .box h3,
.pricing .box h4,
.company-service-card__title,
.blog-author h4,
.card-title {
	font-family: var(--company-font-secondary);
	letter-spacing: -0.03em;
}

.services .icon-box .description,
.info-box p,
.team .member .member-info p,
.team .member .member-info span,
.blog .entry .entry-content p,
.blog .entry .entry-meta,
.blog .sidebar,
.portfolio-details .portfolio-info ul li,
.portfolio-details .portfolio-description p,
.pricing .box ul,
.pricing .box h4 span,
.card-text,
.company-service-card__desc,
.blog-author p,
.text-muted,
.company-login-card .text-muted {
	color: var(--company-text-muted) !important;
}

.company-service-card {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 16px;
	text-decoration: none;
}

.company-service-card__top {
	display: flex;
	align-items: center;
	gap: 12px;
}

.company-service-card__meta {
	display: grid;
	gap: 6px;
}

.company-service-card__title {
	margin: 0;
	font-size: 28px;
	line-height: 1.02;
}

.company-service-card__tag {
	display: inline-flex;
	width: fit-content;
	padding: 6px 12px;
	border-radius: var(--company-pill);
	background: var(--company-accent-soft);
	color: var(--company-text-soft);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.company-service-card__desc {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
}

.company-service-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: auto;
	color: var(--company-text);
	font-size: 14px;
	font-weight: 800;
}

.company-feature-list {
	display: grid;
	gap: 16px;
}

.company-premium-why {
	position: relative;
	isolation: isolate;
}

.company-premium-why::before,
.company-premium-why::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	filter: blur(10px);
	opacity: 0.8;
	z-index: -1;
}

.company-premium-why::before {
	width: 280px;
	height: 280px;
	top: 8%;
	left: 4%;
	background: radial-gradient(circle, rgba(14, 164, 114, 0.18), transparent 68%);
}

.company-premium-why::after {
	width: 320px;
	height: 320px;
	right: 2%;
	bottom: 8%;
	background: radial-gradient(circle, rgba(139, 92, 246, 0.16), transparent 72%);
}

.company-premium-why__shell {
	position: relative;
	padding: clamp(20px, 3.6vw, 36px);
	border-radius: clamp(28px, 4vw, 42px);
	border: 1px solid rgba(255, 255, 255, 0.35);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.72), rgba(250, 247, 240, 0.84)),
		linear-gradient(180deg, rgba(255, 255, 255, 0.40), rgba(246, 239, 228, 0.68));
	box-shadow: var(--company-shadow-lg);
	overflow: hidden;
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
}

.company-premium-why__shell::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(135deg, rgba(6, 120, 190, 0.05), transparent 34%),
		linear-gradient(315deg, rgba(234, 31, 40, 0.04), transparent 40%);
	pointer-events: none;
}

.company-premium-why__media {
	position: relative;
	height: 100%;
	min-height: clamp(420px, 48vw, 560px);
	padding: 14px;
	border-color: rgba(255, 255, 255, 0.4);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.08)),
		var(--company-surface-strong);
	box-shadow: var(--company-shadow-lg);
}

.company-premium-why__media::after {
	content: "";
	position: absolute;
	inset: 14px;
	border-radius: calc(var(--company-radius-lg) - 6px);
	background: linear-gradient(180deg, rgba(7, 10, 22, 0.02) 8%, rgba(7, 10, 22, 0.68) 100%);
	pointer-events: none;
}

.company-premium-why__media img {
	width: 100%;
	height: 100%;
	min-height: clamp(392px, 44vw, 532px);
	object-fit: cover;
	border-radius: calc(var(--company-radius-lg) - 6px);
}

.company-premium-why__play {
	position: absolute;
	top: 30px;
	right: 30px;
	z-index: 2;
	margin: 0;
	box-shadow: 0 18px 40px rgba(7, 10, 22, 0.28);
}

.company-premium-why__media-card {
	position: absolute;
	left: 28px;
	right: 28px;
	bottom: 28px;
	z-index: 2;
	display: grid;
	gap: 14px;
	padding: 20px;
	border-radius: calc(var(--company-radius-lg) - 8px);
	background: linear-gradient(180deg, rgba(7, 10, 22, 0.26), rgba(7, 10, 22, 0.72));
	border: 1px solid rgba(255, 255, 255, 0.18);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	box-shadow: 0 22px 60px rgba(7, 10, 22, 0.22);
}

.company-premium-why__media-kicker,
.company-premium-why__feature-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: fit-content;
	color: rgba(255, 255, 255, 0.8);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.company-premium-why__media-kicker::before,
.company-premium-why__feature-kicker::before {
	content: "";
	width: 28px;
	height: 1px;
	background: currentColor;
	opacity: 0.45;
}

.company-premium-why__media-card h3 {
	margin: 0;
	color: #ffffff;
	font-size: clamp(28px, 3.1vw, 38px);
	line-height: 1.05;
	letter-spacing: -0.04em;
	font-family: var(--company-font-secondary);
}

.company-premium-why__media-card p,
.company-premium-why__panel p {
	margin: 0;
	color: rgba(247, 248, 251, 0.76);
	font-size: 14px;
	line-height: 1.7;
}

.company-premium-why__stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.company-premium-why__stat {
	display: grid;
	gap: 6px;
	padding: 12px 14px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.company-premium-why__stat strong {
	color: #ffffff;
	font-size: 15px;
	font-weight: 800;
}

.company-premium-why__stat span {
	color: rgba(247, 248, 251, 0.72);
	font-size: 13px;
	line-height: 1.5;
}

.company-premium-why__content {
	position: relative;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 24px;
	padding: clamp(4px, 1vw, 14px) 0;
}

.company-premium-why__content .company-section-header {
	margin-bottom: 0;
	max-width: 60ch;
}

.company-premium-why__feature-list {
	display: grid;
	gap: 16px;
}

.company-premium-why__feature.icon-box {
	gap: 16px;
	padding: 20px;
	border-radius: 26px;
	border: 1px solid rgba(33, 35, 42, 0.08);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.90), rgba(250, 247, 240, 0.78)),
		var(--company-surface-strong);
	box-shadow: var(--company-shadow-sm);
	transition:
		transform var(--company-duration-base) var(--company-ease),
		box-shadow var(--company-duration-base) var(--company-ease),
		border-color var(--company-duration-base) var(--company-ease),
		background var(--company-duration-base) var(--company-ease);
}

.company-premium-why__feature.icon-box:hover {
	transform: translateY(-4px);
	border-color: rgba(14, 164, 114, 0.24);
	box-shadow: var(--company-shadow-md);
}

.company-premium-why__feature-head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.company-premium-why__feature .icon {
	flex: 0 0 auto;
	width: 56px;
	height: 56px;
	border-radius: 20px;
	background: linear-gradient(135deg, rgba(14, 164, 114, 0.18), rgba(139, 92, 246, 0.14));
	border: 1px solid rgba(14, 164, 114, 0.18);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

.company-premium-why__feature-kicker {
	margin-bottom: 8px;
	color: var(--company-text-soft);
}

.company-premium-why__feature-kicker::before {
	opacity: 0.25;
}

.company-premium-why__feature .title {
	color: var(--company-text);
	font-size: clamp(24px, 2.5vw, 30px);
	line-height: 1.05;
	letter-spacing: -0.03em;
	font-family: var(--company-font-secondary);
}

.company-premium-why__feature .description {
	margin: 0;
	color: var(--company-text-muted) !important;
	font-size: 15px;
	line-height: 1.75;
}

.company-premium-why__footer {
	display: grid;
	gap: 18px;
	margin-top: 4px;
}

.company-premium-why__panel.company-inline-panel {
	gap: 10px;
	padding: 18px 20px;
	border-radius: 26px;
	background:
		linear-gradient(135deg, rgba(14, 164, 114, 0.1), rgba(139, 92, 246, 0.08)),
		var(--company-surface);
	border-color: rgba(14, 164, 114, 0.14);
}

.company-premium-why__panel strong {
	font-size: 16px;
	line-height: 1.65;
}

.company-premium-why__panel p {
	color: var(--company-text-muted);
}

.company-premium-why__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

.company-premium-why__actions .company-btn {
	justify-content: center;
	min-width: 190px;
}

.company-premium-why__actions .company-btn i {
	font-size: 16px;
}

.service-details .icon-box,
.why-us .icon-box {
	display: grid;
	gap: 12px;
	padding: 16px;
}

.service-details .icon-box .icon,
.why-us .icon-box .icon {
	margin: 0;
}

.service-details .icon-box .title,
.why-us .icon-box .title {
	margin: 0;
}

.card {
	border: 1px solid var(--company-border);
}

.card .card-body,
.portfolio-details .portfolio-info,
.blog .entry,
.blog .sidebar {
	padding: 18px;
}

.card .card-body {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.card .card-title,
.card .card-text {
	margin: 0;
}

.card .card-img {
	padding: 10px 10px 0;
}

.card .card-img img {
	border-radius: calc(var(--company-radius-lg) - 8px);
	min-height: 240px;
	object-fit: cover;
}

.card .read-more a,
.blog .entry .read-more a {
	text-decoration: none;
}

.card .read-more {
	margin-top: auto;
	padding-top: 6px;
}

.info-box {
	display: grid;
	gap: 14px;
	justify-items: start;
}

.info-box i {
	margin: 0;
}

.info-box h3 {
	margin: 0;
	font-size: 28px;
}

.company-form-panel {
	padding: 18px;
}

.company-form-panel--embedded {
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.form-label {
	display: inline-block;
	margin-bottom: 10px;
	color: var(--company-text);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

input.form-control,
textarea.form-control,
select.form-select,
.php-email-form input,
.php-email-form textarea,
.blog .sidebar .search-form form input {
	min-height: 54px;
	padding: 12px 16px;
	border-radius: 18px;
	border: 1px solid var(--company-border);
	background: rgba(255, 255, 255, 0.58);
	color: var(--company-text);
	box-shadow: none;
	transition:
		border-color var(--company-duration-fast) var(--company-ease),
		box-shadow var(--company-duration-fast) var(--company-ease),
		background var(--company-duration-fast) var(--company-ease);
}

textarea.form-control,
.php-email-form textarea {
	min-height: 144px;
}

input.form-control:focus,
textarea.form-control:focus,
select.form-select:focus,
.php-email-form input:focus,
.php-email-form textarea:focus,
.blog .sidebar .search-form form input:focus {
	border-color: rgba(14, 164, 114, 0.34);
	box-shadow: var(--company-ring);
	background: var(--company-surface-strong);
	color: var(--company-text);
}

.form-check-input:focus,
input[type="checkbox"]:focus {
	box-shadow: var(--company-ring);
}

::placeholder {
	color: var(--company-text-soft);
}

.alert {
	border-radius: 18px;
	border: 1px solid var(--company-border);
	background: var(--company-surface-soft);
	color: var(--company-text);
	box-shadow: var(--company-shadow-xs);
}

.alert-success {
	border-color: rgba(14, 164, 114, 0.2);
	background: rgba(14, 164, 114, 0.1);
}

.alert-danger {
	border-color: rgba(212, 79, 99, 0.22);
	background: rgba(212, 79, 99, 0.08);
}

.alert-info {
	border-color: rgba(139, 92, 246, 0.18);
	background: rgba(139, 92, 246, 0.08);
}

.team .member .member-img {
	padding: 10px 10px 0;
}

.team .member .member-info {
	padding: 16px 18px 18px;
}

.team .member .member-info h4 {
	margin-bottom: 10px;
	font-size: 32px;
}

.team .member .social {
	inset: auto 18px 18px 18px;
	display: flex;
	justify-content: center;
	gap: 10px;
	padding: 12px;
	border-radius: 18px;
	background: rgba(15, 18, 35, 0.66);
	backdrop-filter: blur(12px);
}

.team .member .social a {
	width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}

.team .member .social a:hover {
	background: rgba(255, 255, 255, 0.2);
	transform: translateY(-2px);
}

.portfolio #portfolio-flters {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 40px;
}

.portfolio #portfolio-flters li {
	padding: 10px 18px;
	border-radius: var(--company-pill);
	border: 1px solid var(--company-border);
	background: var(--company-surface);
	color: var(--company-text-soft);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	box-shadow: var(--company-shadow-xs);
}

.portfolio #portfolio-flters li:hover,
.portfolio #portfolio-flters li.filter-active {
	color: var(--company-text);
	border-color: rgba(14, 164, 114, 0.26);
	background: rgba(14, 164, 114, 0.1);
}

.portfolio .portfolio-item {
	padding: 10px;
}

.portfolio .portfolio-item img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: calc(var(--company-radius-lg) - 8px);
}

.portfolio .portfolio-info {
	left: 20px;
	right: 20px;
	bottom: 20px;
	padding: 18px 20px;
	border-radius: 20px;
	background: rgba(15, 18, 35, 0.66);
	border: 1px solid rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(12px);
}

.portfolio .portfolio-info h3,
.portfolio .portfolio-info a {
	color: #fff;
}

.portfolio-details .portfolio-info h3 {
	font-size: 34px;
}

.portfolio-details .portfolio-info ul {
	display: grid;
	gap: 12px;
	padding: 0;
	list-style: none;
}

.portfolio-details .portfolio-description h2 {
	margin-bottom: 16px;
	font-size: clamp(30px, 4vw, 42px);
	line-height: 1.06;
}

.blog .entry .entry-title {
	margin: 24px 0 16px;
	font-size: clamp(32px, 4vw, 48px);
	line-height: 1.02;
}

.blog .entry .entry-meta ul {
	gap: 16px;
}

.blog .entry .entry-meta i,
.blog .entry .entry-meta a,
.blog .sidebar .recent-posts time {
	color: var(--company-text-soft);
}

.blog .sidebar .sidebar-title {
	margin-bottom: 18px;
	color: var(--company-text-soft);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.blog .sidebar .search-form form {
	position: relative;
}

.blog .sidebar .search-form form button {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--company-accent-strong), var(--company-accent));
	color: #fff;
	box-shadow: var(--company-shadow-xs);
}

.blog-author {
	display: flex;
	gap: 14px;
	align-items: center;
}

.blog-author img {
	width: 84px;
	height: 84px;
	object-fit: cover;
}

.pricing .box {
	padding: 18px 18px;
	display: flex;
	flex-direction: column;
}

.pricing .box.featured {
	border-color: rgba(14, 164, 114, 0.24);
	background:
		linear-gradient(180deg, rgba(14, 164, 114, 0.12), rgba(255, 255, 255, 0)),
		var(--company-surface);
}

.pricing .box h3 {
	font-size: 30px;
}

.pricing .box h4 {
	margin: 12px 0 20px;
	font-size: 44px;
}

.pricing .box ul {
	display: grid;
	gap: 12px;
	padding: 0;
	margin-bottom: 20px;
	list-style: none;
}

.pricing .box ul li {
	display: flex;
	align-items: center;
	gap: 10px;
}

.pricing .box .get-started-btn {
	align-self: flex-start;
	margin-top: auto;
}

.php-email-form .text-center {
	display: flex;
	justify-content: center;
	margin-top: 18px;
}

.php-email-form .text-center button,
.php-email-form .text-center .btn {
	min-width: min(100%, 220px);
}

.pagination {
	gap: 10px;
}

.pagination .page-link {
	display: grid;
	place-items: center;
	min-width: 46px;
	min-height: 46px;
	padding: 8px 12px;
	border-radius: var(--company-pill) !important;
	border: 1px solid var(--company-border);
	background: var(--company-surface);
	color: var(--company-text);
	font-weight: 800;
	box-shadow: var(--company-shadow-xs);
}

.pagination .page-link:hover,
.pagination .page-item.active .page-link {
	border-color: rgba(14, 164, 114, 0.24);
	background: rgba(14, 164, 114, 0.1);
}

.company-footer {
	padding-top: 8px;
	background: transparent;
	color: var(--company-text-muted);
}

.company-footer .footer-top {
	padding: 0 0 10px;
	background: transparent;
	border-top: 0;
}

.company-footer .footer-top .container > .row {
	padding: clamp(18px, 2.4vw, 24px);
	border-radius: var(--company-radius-xl);
	background: var(--company-surface);
	border: 1px solid var(--company-border);
	box-shadow: var(--company-shadow-md);
}

.company-footer h3 {
	margin: 14px 0 16px;
	color: var(--company-text);
	font-family: var(--company-font-secondary);
	font-size: clamp(34px, 4vw, 52px);
	line-height: 0.98;
	letter-spacing: -0.04em;
}

.company-footer h4 {
	color: var(--company-text);
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.company-footer .footer-links ul,
.company-footer .footer-contact p {
	margin: 0;
	padding: 0;
}

.company-footer .footer-links li {
	margin-bottom: 12px;
}

.company-footer .footer-links a,
.company-footer .footer-contact,
.company-footer .footer-info p {
	color: var(--company-text-muted);
}

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

.company-footer__button {
	margin-top: 22px;
}

.company-footer__bottom {
	padding: 0 0 12px;
}

.company-footer__bottom .copyright {
	text-align: center;
	padding: 14px 18px;
	border-radius: var(--company-pill);
	background: var(--company-surface);
	border: 1px solid var(--company-border);
	box-shadow: var(--company-shadow-xs);
	color: var(--company-text-soft);
}

.back-to-top {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	border: 1px solid rgba(14, 164, 114, 0.24);
	background: linear-gradient(135deg, var(--company-accent-strong), var(--company-accent));
	box-shadow: var(--company-shadow-sm);
}

.company-reveal,
.company-reveal.is-visible,
.company-parallax-media {
	opacity: 1;
	transform: none;
	transition: none;
	will-change: auto;
}

#preloader::before,
#preloader::after {
	background: linear-gradient(180deg, #0f162d, #060816);
}

#preloader .line::after {
	background: linear-gradient(180deg, transparent, var(--company-accent), transparent);
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}

	.company-reveal {
		opacity: 1;
		transform: none;
	}
}

@media (max-width: 1199px) {
	.company-nav-shell {
		padding-inline: 16px;
	}

	.navbar a,
	.navbar a:focus {
		padding-inline: 12px !important;
	}

	.company-page-header h1,
	.company-breadcrumbs h1,
	#hero h2 {
		max-width: 14ch;
	}
}

@media (max-width: 991px) {
	.company-premium-why__shell {
		padding: 20px;
	}

	.company-premium-why__media {
		min-height: 460px;
	}

	.company-premium-why__content {
		gap: 20px;
	}

	#header {
		padding: 12px 0 0;
	}

	.company-nav-shell {
		min-height: 64px;
		gap: 12px;
		border-radius: 24px;
	}

	.mobile-nav-toggle {
		display: inline-flex;
		flex-shrink: 0;
	}

	.company-nav-cta {
		padding-left: 0;
	}

	.navbar ul {
		gap: 4px;
	}

	.navbar-mobile {
		padding: 86px 16px 16px;
	}

	.navbar-mobile ul {
		padding: 18px;
		border-radius: 28px;
		background: var(--company-surface-strong);
		border: 1px solid var(--company-border);
		box-shadow: var(--company-shadow-md);
	}

	.navbar-mobile .mobile-nav-toggle {
		top: 18px;
		right: 18px;
	}

	.navbar-mobile a,
	.navbar-mobile a:focus {
		margin-bottom: 6px;
	}

	.navbar-mobile .company-nav-login,
	.navbar-mobile .company-nav-contact {
		width: 100%;
	}

	.navbar-mobile .company-nav-login,
	.navbar-mobile .company-nav-contact {
		justify-content: center;
	}

	#hero {
		min-height: auto;
		padding-top: 106px;
	}

	#hero .carousel-container {
		padding: 22px 18px 70px;
	}

	#hero .carousel-item {
		padding-inline: 0;
	}

	#hero .carousel-control-prev,
	#hero .carousel-control-next {
		top: auto;
		bottom: 18px;
		transform: none;
	}

	#hero .carousel-control-prev {
		left: 18px;
	}

	#hero .carousel-control-next {
		right: 18px;
	}

	.company-hero-metrics {
		grid-template-columns: 1fr;
	}

	.company-logo-strip {
		padding-top: 8px;
	}

	.company-page-header,
	.company-breadcrumbs {
		padding-top: 102px;
	}

	.company-breadcrumbs__shell,
	.company-page-header .row > div,
	.company-footer .footer-top .container > .row {
		border-radius: 28px;
	}
}

@media (max-width: 767px) {
	.company-premium-why__shell {
		padding: 16px;
		border-radius: 28px;
	}

	.company-premium-why__media {
		min-height: 380px;
		padding: 10px;
	}

	.company-premium-why__media::after {
		inset: 10px;
	}

	.company-premium-why__play {
		top: 24px;
		right: 24px;
	}

	.company-premium-why__media-card {
		left: 20px;
		right: 20px;
		bottom: 20px;
		padding: 16px;
	}

	.company-premium-why__stats {
		grid-template-columns: 1fr;
	}

	.company-premium-why__feature.icon-box {
		padding: 18px;
		border-radius: 22px;
	}

	.company-premium-why__actions .company-btn {
		width: 100%;
		min-width: 0;
	}

	.company-premium-why__feature .title,
	.company-premium-why__media-card h3 {
		max-width: 14ch;
	}
}

@media (max-width: 767px) {
	#main > section:not(.company-page-header):not(.breadcrumbs):not(.company-logo-strip) {
		padding: 36px 0;
	}

	.company-nav-shell {
		min-height: 60px;
		padding: 10px 12px;
	}

	.company-logo__subtitle {
		display: none;
	}

	.company-logo__title {
		font-size: 16px;
	}

	#hero h2,
	.company-page-header h1,
	.company-breadcrumbs h1,
	.company-section-header h2 {
		max-width: none;
	}

	.company-page-header .row > div,
	.company-breadcrumbs__shell,
	.company-footer .footer-top .container > .row,
	#hero .carousel-container {
		padding: 18px;
	}

	#hero .carousel-container {
		padding-bottom: 72px;
	}

	#hero .carousel-nav-btn {
		width: 48px;
		height: 48px;
	}

	#hero .carousel-nav-btn i {
		font-size: 24px;
	}

	.company-showcase-card,
	.company-form-panel,
	.card .card-body,
	.portfolio-details .portfolio-info,
	.blog .entry,
	.blog .sidebar,
	.services .icon-box,
	.info-box,
	.pricing .box,
	.blog-author,
	.company-service-card,
	.company-application-card,
	.company-login-card {
		padding: 14px;
	}

	.company-hero-actions,
	.blog-author {
		flex-direction: column;
		align-items: stretch;
	}

	.company-hero-actions .company-btn,
	.company-hero-actions .btn-get-started,
	.company-hero-actions .get-started-btn,
	.company-footer__button,
	.company-nav-contact,
	.company-nav-login,
	.btn.btn-primary,
	.php-email-form .text-center > button,
	.php-email-form .text-center > .btn {
		width: 100%;
	}

	.company-logo-strip__inner {
		justify-content: flex-start;
	}

	.company-breadcrumbs ol {
		width: 100%;
	}

	.portfolio #portfolio-flters {
		justify-content: flex-start;
	}
}

@media (max-width: 575px) {
	.company-site-grid {
		background-size: 52px 52px;
	}

	#hero {
		padding-bottom: 28px;
	}

	#header > .container {
		padding-inline: 12px;
	}

	.company-logo__mark {
		width: 40px;
		height: 40px;
	}

	.company-logo a {
		gap: 10px;
	}

	#hero .carousel-control-prev {
		left: 14px;
	}

	#hero .carousel-control-next {
		right: 14px;
	}

	.company-section-header h2 {
		font-size: clamp(34px, 12vw, 48px);
	}

	.company-page-header h1,
	.company-breadcrumbs h1,
	#hero h2 {
		font-size: clamp(38px, 13vw, 56px);
	}
}
