@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Rajdhani:wght@600;700&display=swap');

:root {
	--navy: #061d35;
	--navy2: #031525;
	--blue: #0878c8;
	--cyan: #18b7dc;
	--gold: #ffc400;
	--ink: #152235;
	--muted: #66768a;
	--bg: #f4f8fb;
	--white: #fff;
	--shadow: 0 18px 55px rgba(5,31,58,.12);
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: Manrope,Arial,sans-serif;
	color: var(--ink);
	background: #fff;
	line-height: 1.65;
}

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

img {
	max-width: 100%;
	display: block;
}

.container {
	width: min(1180px,calc(100% - 36px));
	margin: auto;
}

.topbar {
	background: #021426;
	color: #d7edf9;
	font-size: 12.5px;
}

.topbar-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
	padding: 8px 0;
}

.topbar-left,.topbar-right {
	display: flex;
	align-items: center;
	gap: 22px;
}

.top-item {
	display: flex;
	align-items: center;
	gap: 7px;
}

.top-icon {
	width: 21px;
	height: 21px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: rgba(24,183,220,.15);
	color: #72d8f2;
	font-weight: 800;
}

.navbar {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(255,255,255,.97);
	backdrop-filter: blur(12px);
	box-shadow: 0 8px 28px rgba(9,42,72,.08);
}

.nav-wrap {
	height: 95px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.brand img {
	width: 300px;
	max-height: 70px;
	object-fit: contain;
	object-position: left;
}

.menu {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 13px;
	font-weight: 800;
}

.menu>a,.nav-dropdown>a {
	padding: 12px 15px;
	border-radius: 7px;
	transition: .25s;
	display: flex;
	align-items: center;
	gap: 5px;
}

.menu>a:not(.consult-btn):hover,.menu>a.active,.nav-dropdown>a:hover,.nav-dropdown>a.active {
	background: linear-gradient(135deg,var(--blue),#0aa6d4);
	color: #fff;
	box-shadow: 0 8px 18px rgba(8,120,200,.2);
}

.nav-dropdown {
	position: relative;
}

.dropdown-menu {
	position: absolute;
	top: calc(100% + 15px);
	left: 0;
	width: 285px;
	background: #fff;
	border-radius: 10px;
	padding: 10px;
	box-shadow: 0 20px 50px rgba(2,25,47,.18);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: .25s;
	border-top: 3px solid var(--cyan);
}

.dropdown-menu:before {
	content: "";
	position: absolute;
	top: -10px;
	left: 26px;
	border: 7px solid transparent;
	border-bottom-color: var(--cyan);
}

.dropdown-menu a {
	display: block;
	padding: 10px 12px;
	border-radius: 6px;
	color: #42546a;
	font-size: 12.5px;
}

.dropdown-menu a:hover {
	background: #edf8fd;
	color: var(--blue);
	padding-left: 17px;
}

.nav-dropdown:hover .dropdown-menu {
	opacity: 1;
	visibility: visible;
	transform: none;
}

.consult-btn {
	margin-left: 6px;
	background: linear-gradient(135deg,#061d35,#0878c8);
	color: #fff!important;
	padding: 8px 11px 8px 10px!important;
	border-radius: 9px!important;
	box-shadow: 0 10px 24px rgba(6,29,53,.23);
	line-height: 1.1;
}

.consult-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(6,29,53,.3);
}

.consult-btn small {
	display: block;
	font-size: 9px;
	color: #9fddff;
	text-transform: uppercase;
	letter-spacing: .7px;
	margin-bottom: 3px;
}

.consult-icon {
	width: 29px;
	height: 29px;
	border-radius: 7px;
	display: grid;
	place-items: center;
	background: var(--gold);
	color: var(--navy);
	font-size: 14px;
}

.consult-btn b {
	font-size: 18px;
	margin-left: 4px;
}

.nav-toggle {
	display: none;
	font-size: 28px;
	background: none;
	border: 0;
}

.hero-slider {
	height: 500px;
	position: relative;
	overflow: hidden;
	background: #041b31;
	color: #fff;
}

.hero-slide {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	opacity: 0;
	visibility: hidden;
	transform: scale(1.03);
	transition: opacity .8s ease,transform 6s ease;
}

.hero-slide.active {
	opacity: 1;
	visibility: visible;
	transform: scale(1);
}

.hero-slide .container {
	height: 100%;
	display: flex;
	align-items: center;
}

.hero-content {
	width: min(750px,100%);
	padding: 35px 0 50px;
}

.eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 12px;
	font-weight: 800;
	color: #129bd6;
}

.hero-slider .eyebrow,.page-hero .eyebrow,.cta-box .eyebrow {
	color: #9fddff;
}

.eyebrow:before {
	content: "";
	width: 36px;
	height: 2px;
	background: var(--gold);
}

h1,h2,h3 {
	font-family: Rajdhani,Manrope,sans-serif;
	line-height: 1.08;
	margin: 0 0 18px;
}

h1 {
	font-size: clamp(43px,5.2vw,68px);
	letter-spacing: -1px;
}

.hero-content p {
	font-size: 17px;
	color: #d7e8f4;
	max-width: 680px;
}

.hero-actions {
	display: flex;
	gap: 14px;
	margin-top: 27px;
}

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 13px 22px;
	border-radius: 8px;
	font-weight: 800;
	font-size: 14px;
	border: 1px solid transparent;
	transition: .25s;
}

.btn-primary {
	background: linear-gradient(135deg,var(--blue),var(--cyan));
	color: #fff;
	box-shadow: 0 12px 25px rgba(8,120,200,.25);
}

.btn-primary:hover {
	transform: translateY(-2px);
}

.btn-outline {
	border-color: rgba(255,255,255,.55);
	color: #fff;
	background: rgba(255,255,255,.05);
}

.btn-outline:hover {
	background: #fff;
	color: var(--navy);
}

.slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 8;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	border: 1px solid rgba(255,255,255,.35);
	background: rgba(2,20,38,.45);
	color: #fff;
	font-size: 33px;
	line-height: 1;
	cursor: pointer;
	transition: .25s;
}

.slider-arrow:hover {
	background: var(--cyan);
	border-color: var(--cyan);
}

.slider-arrow.prev {
	left: 25px;
}

.slider-arrow.next {
	right: 25px;
}

.slider-dots {
	position: absolute;
	z-index: 8;
	bottom: 23px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 8px;
}

.slider-dots button {
	width: 9px;
	height: 9px;
	border: 0;
	padding: 0;
	border-radius: 20px;
	background: rgba(255,255,255,.45);
	cursor: pointer;
	transition: .3s;
}

.slider-dots button.active {
	width: 32px;
	background: var(--gold);
}

.usp-strip {
	padding: 0;
	position: relative;
	z-index: 10;
	margin-top: -34px;
}

.usp-grid {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 15px;
}

.usp-grid article {
	position: relative;
	height: 122px;
	border-radius: 13px;
	overflow: hidden;
	box-shadow: 0 17px 42px rgba(4,32,57,.18);
	isolation: isolate;
}

.usp-grid article:after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg,rgba(2,22,41,.97),rgba(2,22,41,.62));
	z-index: -1;
}

.usp-grid img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -2;
	transition: .45s;
}

.usp-grid article:hover img {
	transform: scale(1.1);
}

.usp-grid article div {
	height: 100%;
	padding: 25px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #fff;
	border-left: 3px solid var(--gold);
}

.usp-grid strong {
	font: 700 25px Rajdhani;
}

.usp-grid span {
	font-size: 12px;
	color: #cbe4f3;
}

section {
	padding: 92px 0;
}

.section-head {
	max-width: 720px;
	margin-bottom: 42px;
}

.section-head.center {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.section-head h2 {
	font-size: 48px;
	color: var(--navy);
}

.section-head p {
	color: var(--muted);
}

.about-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 70px;
	align-items: center;
}

.about-grid h2,.content-grid h2,.contact-card h2 {
	font-size: 42px;
	color: var(--navy);
}

.image-stack {
	position: relative;
	padding: 0 35px 35px 0;
}

.image-stack img {
	border-radius: 16px;
	box-shadow: var(--shadow);
	height: 520px;
	width: 100%;
	object-fit: cover;
}

.image-stack:after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 70%;
	height: 75%;
	border: 8px solid #d9eef8;
	border-radius: 16px;
	z-index: -1;
}

.floating-card {
	position: absolute;
	right: -8px;
	bottom: 550px;
	background: var(--navy);
	color: #fff;
	padding: 22px 26px;
	border-radius: 12px;
	box-shadow: var(--shadow);
	max-width: 225px;
}

.floating-card b {
	display: block;
	font: 700 34px Rajdhani;
	color: var(--gold);
}

.check-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin: 28px 0;
}

.check-list div {
	padding: 13px 14px;
	background: var(--bg);
	border-radius: 8px;
	font-size: 14px;
	font-weight: 700;
}

.services {
	background: var(--bg);
}

.premium-capabilities {
	background: linear-gradient(180deg,#f4f8fb,#eaf3f8);
}

.capability-grid {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	grid-auto-rows: 370px;
	gap: 18px;
}

.capability-card {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 18px 45px rgba(4,33,59,.12);
}

.capability-card.wide {
	grid-column: span 4;
	height: 310px;
}

.capability-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .65s;
}

.capability-card:after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg,rgba(2,21,39,.05) 15%,rgba(2,21,39,.94) 86%);
	transition: .35s;
}

.capability-card:hover img {
	transform: scale(1.09);
}

.capability-card:hover:after {
	background: linear-gradient(180deg,rgba(8,120,200,.08),rgba(2,21,39,.97) 82%);
}

.capability-overlay {
	position: absolute;
	z-index: 2;
	left: 25px;
	right: 25px;
	bottom: 22px;
	color: #fff;
	transform: translateY(34px);
	transition: .35s;
}

.capability-card:hover .capability-overlay {
	transform: translateY(0);
}

.capability-overlay>span {
	font: 700 42px Rajdhani;
	color: rgba(255,196,0,.82);
	position: absolute;
	right: 0;
	bottom: 52px;
}

.capability-overlay h3 {
	font-size: 25px;
}

.capability-overlay p {
	font-size: 13px;
	color: #d2e3ee;
	margin: 0 0 14px;
	opacity: 0;
	transition: .3s;
}

.capability-overlay a {
	font-size: 12px;
	color: #82dcf3;
	font-weight: 800;
	opacity: 0;
	transition: .3s;
}

.capability-card:hover p,.capability-card:hover a {
	opacity: 1;
}

.cards {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 22px;
}

.service-card {
	background: #fff;
	border-radius: 14px;
	padding: 30px;
	border: 1px solid #e9f0f5;
	transition: .3s;
	position: relative;
	overflow: hidden;
}

.service-card:hover {
	transform: translateY(-7px);
	box-shadow: var(--shadow);
}

.icon {
	width: 58px;
	height: 58px;
	border-radius: 12px;
	background: #e8f6fd;
	display: grid;
	place-items: center;
	font-size: 28px;
	margin-bottom: 20px;
}

.service-card h3 {
	font-size: 25px;
	color: var(--navy);
}

.service-card p {
	font-size: 14px;
	color: var(--muted);
}

.stats {
	background: linear-gradient(120deg,#031525,#075f9b);
	color: #fff;
	position: relative;
	overflow: hidden;
}

.stats:before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 20% 0%,rgba(24,183,220,.22),transparent 38%),linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.05) 50%,transparent 50.2%);
}

.stat-grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	text-align: center;
}

.stat {
	padding: 10px 22px;
	border-right: 1px solid rgba(255,255,255,.12);
}

.stat:last-child {
	border: 0;
}

.stat i {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	margin: 0 auto 13px;
	background: rgba(255,255,255,.09);
	border: 1px solid rgba(255,255,255,.14);
	color: var(--gold);
	font-style: normal;
	font-size: 25px;
}

.stat b {
	font: 700 53px Rajdhani;
	color: var(--gold);
	display: block;
}

.stat span {
	color: #c8e3f2;
	font-size: 13px;
}

.project-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 20px;
}

.project-card {
	position: relative;
	border-radius: 14px;
	overflow: hidden;
	height: 330px;
	background: #ddd;
}

.project-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .45s;
}

.project-card:after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(transparent 35%,rgba(1,20,36,.9));
}

.project-card:hover img {
	transform: scale(1.06);
}

.project-info {
	position: absolute;
	z-index: 2;
	left: 24px;
	right: 24px;
	bottom: 20px;
	color: #fff;
}

.project-info small {
	color: #8fddff;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 700;
}

.project-info h3 {
	font-size: 24px;
	margin: 6px 0;
}

.clients {
	background: #f7fafc;
	overflow: hidden;
}

.logo-marquee {
	overflow: hidden;
	mask-image: linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}

.logo-track {
	display: flex;
	width: max-content;
	gap: 18px;
	animation: marquee 28s linear infinite;
}

.logo-marquee:hover .logo-track {
	animation-play-state: paused;
}

.association {
	width: 235px;
	min-height: 118px;
	background: #fff;
	border: 1px solid #e1ebf1;
	border-radius: 13px;
	padding: 18px;
	display: flex;
	align-items: center;
	gap: 13px;
	box-shadow: 0 10px 28px rgba(4,34,59,.06);
}

.assoc-logo {
	flex: 0 0 64px;
	height: 64px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: linear-gradient(135deg,#061d35,#0782c8);
	border: 4px solid #d9f1fb;
	color: #fff;
	font: 700 16px Rajdhani;
	box-shadow: 0 6px 16px rgba(8,120,200,.2);
}

.association strong {
	font-size: 12px;
	line-height: 1.35;
	color: #3a4d61;
}

@keyframes marquee {
	to {
		transform: translateX(-50%);
	}
}

.cta {
	padding: 0;
}

.cta-box {
	background: linear-gradient(105deg,#041c33 0%,#0878c8 100%);
	border-radius: 18px;
	padding: 55px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: #fff;
	position: relative;
	overflow: hidden;
}

.cta-box:after {
	content: "⚡";
	position: absolute;
	right: 26%;
	font-size: 170px;
	opacity: .06;
}

.cta-box h2 {
	font-size: 44px;
	max-width: 650px;
}

.footer {
	background: linear-gradient(115deg,#02111f,#042b4a);
	color: #afc7d8;
	margin-top: 92px;
	position: relative;
	overflow: hidden;
}

.footer:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
	background-size: 42px 42px;
}

.footer-glow {
	position: absolute;
	width: 450px;
	height: 450px;
	border-radius: 50%;
	background: rgba(8,120,200,.18);
	filter: blur(80px);
	right: -160px;
	top: -200px;
}

.footer-grid {
	position: relative;
	display: grid;
	grid-template-columns: 1.55fr .8fr 1.15fr 1.3fr;
	gap: 44px;
	padding: 72px 0 45px;
}

.footer img {
	width: 285px;
	background: #fff;
	border-radius: 8px;
	padding: 7px;
}

.footer-about p {
	max-width: 380px;
}

.footer h3 {
	color: #fff;
	font-size: 21px;
	margin-bottom: 22px;
	padding-bottom: 12px;
	position: relative;
}

.footer h3:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 44px;
	height: 2px;
	background: var(--gold);
}

.footer a {
	display: block;
	margin: 9px 0;
	transition: .2s;
}

.footer a:hover {
	color: #fff;
	transform: translateX(3px);
}

.footer a i {
	color: var(--gold);
	font-style: normal;
	margin-right: 8px;
}

.footer-badges {
	display: flex;
	gap: 7px;
	flex-wrap: wrap;
	margin-top: 20px;
}

.footer-badges span {
	font-size: 10px;
	border: 1px solid rgba(255,255,255,.2);
	padding: 5px 8px;
	border-radius: 4px;
	color: #d5ebf7;
}

.footer-contact p {
	display: flex;
	gap: 10px;
	margin: 10px 0;
}

.footer-contact p>span {
	color: var(--gold);
}

.footer-contact p a {
	margin: 0;
}

.footer-cta {
	display: flex!important;
	align-items: center;
	justify-content: space-between;
	margin-top: 20px!important;
	padding: 12px 15px;
	background: rgba(24,183,220,.12);
	border: 1px solid rgba(24,183,220,.3);
	border-radius: 7px;
	color: #fff;
}

.copyright {
	position: relative;
	border-top: 1px solid rgba(255,255,255,.1);
	padding: 18px 0;
	font-size: 12px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
}

.floating-actions {
	position: fixed;
	right: 18px;
	bottom: 22px;
	z-index: 80;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.floating-actions a {
	height: 49px;
	display: flex;
	align-items: center;
	border-radius: 30px;
	color: #fff;
	box-shadow: 0 9px 24px rgba(0,0,0,.24);
	overflow: hidden;
	transition: .3s;
}

.floating-actions span,.floating-actions svg {
	width: 49px;
	height: 49px;
	padding: 13px;
	display: grid;
	place-items: center;
	flex: 0 0 49px;
}

.floating-actions em {
	font-style: normal;
	font-size: 12px;
	font-weight: 800;
	max-width: 0;
	opacity: 0;
	white-space: nowrap;
	transition: .3s;
}

.floating-actions a:hover em {
	max-width: 95px;
	opacity: 1;
	padding-right: 17px;
}

.float-call {
	background: #0878c8;
}

.float-wa {
	background: #19a95b;
}

.page-hero {
	padding: 110px 0 85px;
	background: linear-gradient(90deg,rgba(3,24,43,.95),rgba(3,24,43,.62)),url('../images/project-57.jpg') center/cover;
	color: #fff;
}

.page-hero h1 {
	font-size: 62px;
}

.content-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 45px;
}

.side-card {
	background: var(--bg);
	border-radius: 12px;
	padding: 28px;
	position: sticky;
	top: 110px;
}

.timeline {
	border-left: 3px solid #d9edf7;
	padding-left: 28px;
}

.timeline-item {
	margin-bottom: 30px;
}

.timeline-item h3 {
	color: var(--blue);
}

.contact-grid {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 45px;
}

.contact-card {
	background: var(--navy);
	color: #fff;
	padding: 40px;
	border-radius: 16px;
}

.contact-card h2 {
	color: #fff;
}

.contact-card p {
	color: #c7deed;
}

.form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.form input,.form textarea,.form select {
	width: 100%;
	padding: 15px;
	border: 1px solid #dce6ed;
	border-radius: 8px;
	font: inherit;
}

.form textarea {
	grid-column: 1/-1;
	min-height: 150px;
}

.form .full {
	grid-column: 1/-1;
}

@media(max-width:1040px) {
	.brand img {
		width: 245px;
	}

	.menu {
		gap: 3px;
	}

	.menu>a,.nav-dropdown>a {
		padding: 10px 10px;
	}

	.consult-btn {
		display: none!important;
	}

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

	.capability-card.wide {
		grid-column: span 2;
	}
}

@media(max-width:900px) {
	.topbar-right {
		display: none;
	}

	.nav-wrap {
		height: 72px;
	}

	.brand img {
		width: 230px;
	}

	.nav-toggle {
		display: block;
	}

	.menu {
		position: absolute;
		top: 72px;
		left: 0;
		right: 0;
		background: #fff;
		display: none;
		flex-direction: column;
		align-items: stretch;
		padding: 14px 20px;
		gap: 4px;
		box-shadow: var(--shadow);
		max-height: calc(100vh - 72px);
		overflow: auto;
	}

	.menu.open {
		display: flex;
	}

	.menu>a,.nav-dropdown>a {
		width: 100%;
		padding: 11px 12px;
	}

	.nav-dropdown .dropdown-menu {
		position: static;
		width: 100%;
		opacity: 1;
		visibility: visible;
		transform: none;
		box-shadow: none;
		border: 0;
		padding: 3px 0 3px 14px;
		display: none;
	}

	.nav-dropdown.open .dropdown-menu {
		display: block;
	}

	.nav-dropdown:hover .dropdown-menu {
		display: none;
	}

	.nav-dropdown.open:hover .dropdown-menu {
		display: block;
	}

	.consult-btn {
		display: flex!important;
	}

	.hero-slider {
		height: 500px;
	}

	.slider-arrow {
		display: none;
	}

	.usp-grid {
		grid-template-columns: 1fr 1fr;
	}

	.about-grid,.content-grid,.contact-grid,.footer-grid {
		grid-template-columns: 1fr;
	}

	.cards,.project-grid,.stat-grid {
		grid-template-columns: 1fr 1fr;
	}

	.image-stack img {
		height: 420px;
	}

	.cta-box {
		padding: 38px;
		display: block;
	}

	.cta-box .btn {
		margin-top: 20px;
	}

	.footer-grid {
		gap: 25px;
	}

	.footer {
		margin-top: 70px;
	}
}

@media(max-width:580px) {
	.topbar-left .top-item:first-child {
		display: none;
	}

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

	.hero-content {
		padding: 30px 0 55px;
	}

	.hero-content h1 {
		font-size: 41px;
	}

	.hero-content p {
		font-size: 14px;
	}

	.hero-actions {
		flex-direction: column;
		align-items: flex-start;
	}

	.usp-strip {
		margin-top: -20px;
	}

	.usp-grid,.cards,.project-grid,.stat-grid,.check-list,.capability-grid {
		grid-template-columns: 1fr;
	}

	.usp-grid article {
		height: 100px;
	}

	.capability-card,.capability-card.wide {
		grid-column: auto;
		height: 330px;
	}

	.section-head h2 {
		font-size: 39px;
	}

	section {
		padding: 68px 0;
	}

	.project-card {
		height: 280px;
	}

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

	.form textarea,.form .full {
		grid-column: auto;
	}

	.cta-box h2 {
		font-size: 36px;
	}

	.page-hero h1 {
		font-size: 44px;
	}

	.stat {
		border-right: 0;
		border-bottom: 1px solid rgba(255,255,255,.12);
		padding: 25px;
	}

	.copyright {
		flex-direction: column;
	}

	.floating-actions em {
		display: none;
	}
}
/* 2026 premium content refresh */
section{padding:82px 0}.rich-hero{background-size:cover;background-position:center;min-height:360px;display:flex;align-items:center}.rich-hero .container{padding-top:30px}.rich-hero p{max-width:720px;color:#d9e7f1;font-size:17px}.rich-hero h1{max-width:850px}.capability-grid.six{grid-template-columns:repeat(3,1fr)}.turnkey-section{background:linear-gradient(135deg,#eef7fc,#fff 55%,#edf7fb)}.turnkey-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.turnkey-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 18px;margin-top:24px}.turnkey-list span{background:#fff;border:1px solid #dbe9f2;padding:11px 13px;border-radius:8px;font-weight:700;font-size:13px;box-shadow:0 8px 22px rgba(8,49,79,.05)}.mosaic{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mosaic img{width:100%;height:180px;object-fit:cover;border-radius:14px;box-shadow:var(--shadow)}.mosaic img:first-child{grid-row:span 2;height:372px}.six-stats{grid-template-columns:repeat(6,1fr)}.six-stats .stat{padding-left:10px;padding-right:10px}.six-stats .stat b{font-size:31px}.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.expertise-grid div{min-height:112px;display:flex;align-items:flex-end;padding:20px;border-radius:12px;background:linear-gradient(145deg,#061d35,#0a4267);color:#fff;box-shadow:0 14px 35px rgba(6,29,53,.14);position:relative;overflow:hidden}.expertise-grid div:before{content:'';position:absolute;width:80px;height:80px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-20px;top:-20px}.gallery-preview{background:#f5f9fc}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid>img,.gallery-grid figure img{width:100%;height:250px;object-fit:cover;border-radius:12px;transition:.3s}.gallery-grid>img:hover,.gallery-grid figure:hover img{transform:scale(1.02)}.center-action{text-align:center;margin-top:30px}.clients-section{background:#fff}.client-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.client-pills span{padding:14px 20px;border:1px solid #d8e6ef;border-radius:999px;font-weight:800;color:#31506a;background:#fbfdff;box-shadow:0 7px 18px rgba(4,37,64,.05)}.values-band{background:#041a2e;color:#fff}.values-band .section-head p{color:#c7dbe9}.value-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.value-grid article{padding:26px 21px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);border-radius:13px}.value-grid article>b{color:var(--gold);font-family:Rajdhani;font-size:28px}.value-grid h3{margin-top:13px}.value-grid p{color:#c8d8e4;font-size:13px}.strength-section,.cert-section{background:#f3f8fb}.department-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.department-grid div,.cert-grid div{background:#fff;border:1px solid #dbe7ef;border-radius:10px;padding:18px;text-align:center;font-weight:800;box-shadow:0 8px 24px rgba(6,34,56,.05)}.md-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}.md-photo img{width:100%;height:520px;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}.signature{margin-top:24px;padding-left:18px;border-left:4px solid var(--gold)}.signature b,.signature span{display:block}.signature span{color:var(--muted);font-size:13px}.cert-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-feature-list{display:grid;gap:30px}.service-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px;align-items:center;padding:22px;border:1px solid #dce8ef;border-radius:18px;background:#fff;box-shadow:0 16px 45px rgba(5,31,58,.07);scroll-margin-top:120px}.service-feature:nth-child(even){grid-template-columns:1.1fr .9fr}.service-feature:nth-child(even) .service-photo{order:2}.service-photo img{width:100%;height:330px;object-fit:cover;border-radius:13px}.service-no{font-family:Rajdhani;font-size:52px;font-weight:700;color:#d9eaf4;line-height:1}.service-feature h2{margin-top:-5px}.service-bullets{display:grid;grid-template-columns:1fr 1fr;gap:9px}.service-bullets span{font-weight:700;font-size:13px;color:#42566c}.process-row{display:grid;grid-template-columns:repeat(9,1fr);gap:7px}.process-row div{background:#fff;border:1px solid #d8e5ed;padding:16px 8px;border-radius:9px;text-align:center}.process-row b{display:block;font-family:Rajdhani;font-size:22px;color:var(--blue)}.process-row span{font-size:11px;font-weight:800}.project-filter-copy{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:30px}.project-filter-copy p{max-width:480px}.full-gallery{grid-template-columns:repeat(4,1fr)}.full-gallery figure{margin:0;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 10px 30px rgba(6,31,52,.08)}.full-gallery figure img{border-radius:0;height:220px}.full-gallery figcaption{padding:10px 14px;font-size:12px;font-weight:800;color:#41576a}.premium-contact .contact-card{background:linear-gradient(145deg,#061d35,#0a456a);color:#fff}.premium-contact .contact-card .eyebrow{color:#9fddff}.premium-contact .contact-card p{color:#d7e6ef}.premium-contact .contact-card a{color:#fff}
@media(max-width:1050px){.capability-grid.six{grid-template-columns:repeat(2,1fr)}.six-stats{grid-template-columns:repeat(3,1fr)}.expertise-grid{grid-template-columns:repeat(2,1fr)}.value-grid{grid-template-columns:repeat(3,1fr)}.department-grid{grid-template-columns:repeat(3,1fr)}.process-row{grid-template-columns:repeat(3,1fr)}.full-gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){section{padding:58px 0}.turnkey-grid,.md-grid,.service-feature,.service-feature:nth-child(even){grid-template-columns:1fr}.service-feature:nth-child(even) .service-photo{order:0}.turnkey-list,.service-bullets{grid-template-columns:1fr}.mosaic img,.mosaic img:first-child{height:220px;grid-row:auto}.mosaic{grid-template-columns:1fr}.six-stats{grid-template-columns:repeat(2,1fr)}.expertise-grid,.gallery-grid,.full-gallery,.value-grid,.department-grid,.cert-grid{grid-template-columns:1fr 1fr}.project-filter-copy{display:block}.service-photo img{height:240px}.rich-hero{min-height:300px}}
@media(max-width:520px){.capability-grid.six,.expertise-grid,.gallery-grid,.full-gallery,.value-grid,.department-grid,.cert-grid{grid-template-columns:1fr}.six-stats{grid-template-columns:1fr 1fr}.process-row{grid-template-columns:1fr 1fr}.rich-hero{min-height:270px}}

/* Project gallery lightbox */
.gallery-item .gallery-open{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;position:relative;overflow:hidden}.gallery-item .gallery-open img{display:block;width:100%;height:220px;object-fit:cover;transition:transform .35s ease,filter .35s ease}.gallery-item:hover .gallery-open img{transform:scale(1.045);filter:brightness(.82)}.gallery-zoom{position:absolute;right:14px;top:14px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(4,26,46,.82);color:#fff;font-size:22px;opacity:0;transform:translateY(-5px);transition:.25s;box-shadow:0 8px 24px rgba(0,0,0,.18)}.gallery-item:hover .gallery-zoom,.gallery-open:focus-visible .gallery-zoom{opacity:1;transform:none}.gallery-open:focus-visible{outline:3px solid #2a88bd;outline-offset:-3px}.project-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(2,12,21,.94);display:flex;align-items:center;justify-content:center;padding:34px 88px;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.project-lightbox.open{opacity:1;visibility:visible}.lightbox-stage{position:relative;max-width:min(1280px,86vw);max-height:88vh;display:flex;align-items:center;justify-content:center}.lightbox-image{display:block;max-width:100%;max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 25px 80px rgba(0,0,0,.5);transform:scale(.97);transition:transform .25s ease}.project-lightbox.open .lightbox-image{transform:scale(1)}.lightbox-close{position:absolute;top:18px;right:22px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:#fff;font-size:34px;line-height:1;cursor:pointer;z-index:2;transition:.2s}.lightbox-close:hover{background:#fff;color:#071d31}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fff;min-width:62px;height:62px;border-radius:999px;cursor:pointer;font-size:42px;display:flex;align-items:center;justify-content:center;gap:7px;transition:.2s;z-index:2}.lightbox-nav span{font:700 11px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}.lightbox-nav:hover{background:#fff;color:#071d31}.lightbox-prev{left:18px}.lightbox-next{right:18px}.lightbox-counter{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);padding:7px 12px;border-radius:999px;background:rgba(2,18,31,.76);color:#fff;font:700 12px/1 Arial,sans-serif;letter-spacing:.05em}.lightbox-lock{overflow:hidden}@media(max-width:760px){.project-lightbox{padding:58px 15px 82px}.lightbox-stage{max-width:100%;max-height:76vh}.lightbox-image{max-height:76vh}.lightbox-nav{top:auto;bottom:16px;transform:none;height:48px;min-width:115px;font-size:30px}.lightbox-prev{left:15px}.lightbox-next{right:15px}.lightbox-close{top:12px;right:14px}.lightbox-counter{bottom:-42px}}


/* Home client logos + site-wide subtle fade reveal */
.about-home-image img{min-height:460px}
.client-logo-pills{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:16px;align-items:stretch}
.client-logo-pills span{border-radius:12px;min-height:116px;padding:16px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:#fff}
.client-logo-pills span img{display:block;width:auto;height:52px;max-width:135px;object-fit:contain}
.client-logo-pills span b{font-size:12px;line-height:1.25;text-align:center;color:#31506a}
.client-logo-pills .client-text-only{min-height:auto;padding:14px 20px;display:flex;flex-direction:row;border-radius:999px;grid-column:auto}
.reveal-on-scroll{opacity:0;transform:translateY(22px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}
.reveal-on-scroll.reveal-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal-on-scroll{opacity:1!important;transform:none!important;transition:none!important}}
@media(max-width:1000px){.client-logo-pills{grid-template-columns:repeat(3,minmax(145px,1fr))}}
@media(max-width:640px){.client-logo-pills{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-logo-pills span{min-height:105px;padding:12px 10px}.client-logo-pills span img{height:44px;max-width:115px}.client-logo-pills .client-text-only{border-radius:12px;min-height:70px;text-align:center}.about-home-image img{min-height:0;height:330px}}
