:root{
	--crmx-navy:#0b1f35;
	--crmx-navy-deep:#061422;
	--crmx-navy-light:#173b5b;
	--crmx-blue:#52b7f3;
	--crmx-blue-bright:#84d4ff;
	--crmx-blue-dark:#087bb2;
	--crmx-ice:#eaf7ff;
	--crmx-text:#243342;
	--crmx-gray:#64717d;
	--crmx-bg:#f5f8fb;
	--crmx-white:#ffffff;
	--crmx-border:#dfe7ee;
	--crmx-shadow:0 18px 45px rgba(11,31,53,.12);
	--crmx-shadow-soft:0 10px 30px rgba(11,31,53,.08);
	--crmx-radius:18px;
	--crmx-shell:min(1240px,calc(100% - 48px));
}

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

html{
	scroll-behavior:smooth;
}

body{
	margin:0;
	color:var(--crmx-text);
	background:#fff;
	font-family:Inter,Arial,sans-serif;
	font-size:16px;
	line-height:1.65;
	-webkit-font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}

body.nav-open{
	overflow:hidden;
}

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

a{
	color:var(--crmx-navy);
}

p{
	margin-top:0;
}

h1,
h2,
h3,
h4,
h5,
h6{
	margin-top:0;
	color:var(--crmx-navy);
	font-family:Inter,Arial,sans-serif;
	font-weight:800;
	line-height:1.1;
}

h1{
	font-size:clamp(2.8rem,5.4vw,5.25rem);
	letter-spacing:-.05em;
}

h2{
	font-size:clamp(2rem,4vw,3.5rem);
	letter-spacing:-.035em;
}

h3{
	font-size:1.35rem;
}

.site-shell,
.alignwide{
	width:var(--crmx-shell);
	max-width:1240px;
	margin-right:auto;
	margin-left:auto;
}

.alignfull{
	width:100%;
	max-width:none;
}

.site-main{
	min-height:60vh;
}

/* Header */

.site-header{
	position:sticky;
	top:0;
	z-index:1000;
	width:100%;
	background:rgba(255,255,255,.98);
	border-bottom:1px solid rgba(11,31,53,.08);
	box-shadow:0 8px 28px rgba(7,23,40,.06);
	transition:
		background-color .25s ease,
		box-shadow .25s ease;
}

.site-header.is-scrolled{
	background:#fff;
	box-shadow:0 14px 40px rgba(7,23,40,.14);
}

.header-utility{
	display:block;
	background:var(--crmx-navy);
	color:#dce8f1;
	font-size:.76rem;
	font-weight:700;
	letter-spacing:.02em;
}

.header-utility-inner{
	min-height:34px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:24px;
}

.header-utility-message{
	margin:0;
	color:#fff;
}

.header-utility-contact{
	display:flex;
	align-items:center;
	gap:22px;
}

.header-utility-contact a{
	color:#fff;
	text-decoration:none;
	transition:color .2s ease;
}

.header-utility-contact a:hover,
.header-utility-contact a:focus{
	color:var(--crmx-blue-bright);
}

.header-main{
	min-height:78px;
	display:flex;
	align-items:center;
	gap:30px;
}

.brand{
	flex:0 0 auto;
	margin-right:auto;
}

.brand-text{
	display:flex;
	flex-direction:column;
	color:var(--crmx-navy);
	line-height:1.05;
	text-decoration:none;
}

.brand-name{
	font-size:1.45rem;
	font-weight:900;
	letter-spacing:-.035em;
}

.brand-tagline{
	margin-top:7px;
	color:var(--crmx-gray);
	font-size:.7rem;
	font-weight:800;
	letter-spacing:.1em;
	text-transform:uppercase;
}

.custom-logo-link{
	display:flex;
	align-items:center;
}

.custom-logo{
	width:auto;
	max-width:230px;
	max-height:68px;
	object-fit:contain;
}

.primary-nav{
	display:flex;
	align-items:center;
}

.primary-nav ul,
.primary-menu{
	display:flex;
	align-items:center;
	gap:27px;
	margin:0;
	padding:0;
	list-style:none;
}

.primary-nav li{
	position:relative;
	margin:0;
}

.primary-nav a{
	position:relative;
	display:block;
	padding:29px 0;
	color:var(--crmx-navy);
	font-size:.9rem;
	font-weight:800;
	line-height:1;
	text-decoration:none;
	transition:color .2s ease;
}

.primary-nav a::after{
	content:"";
	position:absolute;
	right:0;
	bottom:19px;
	left:0;
	height:2px;
	background:var(--crmx-blue);
	transform:scaleX(0);
	transform-origin:right;
	transition:transform .25s ease;
}

.primary-nav a:hover,
.primary-nav a:focus,
.primary-nav .current-menu-item > a,
.primary-nav .current_page_item > a{
	color:var(--crmx-blue-dark);
}

.primary-nav a:hover::after,
.primary-nav a:focus::after,
.primary-nav .current-menu-item > a::after,
.primary-nav .current_page_item > a::after{
	transform:scaleX(1);
	transform-origin:left;
}

.header-cta{
	flex:0 0 auto;
	white-space:nowrap;
}

.nav-toggle{
	display:none;
	width:46px;
	height:46px;
	padding:10px;
	background:#fff;
	border:1px solid var(--crmx-border);
	border-radius:12px;
	cursor:pointer;
}

.nav-toggle-line{
	display:block;
	width:22px;
	height:2px;
	margin:5px auto;
	background:var(--crmx-navy);
	border-radius:999px;
	transition:
		transform .25s ease,
		opacity .25s ease;
}

.nav-toggle[aria-expanded="true"] .nav-toggle-line:nth-child(1){
	transform:translateY(7px) rotate(45deg);
}

.nav-toggle[aria-expanded="true"] .nav-toggle-line:nth-child(2){
	opacity:0;
}

.nav-toggle[aria-expanded="true"] .nav-toggle-line:nth-child(3){
	transform:translateY(-7px) rotate(-45deg);
}

/* Buttons */

.button,
.wp-block-button__link{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:9px;
	min-height:48px;
	padding:13px 22px;
	color:#06243b !important;
	background:var(--crmx-blue);
	border:2px solid var(--crmx-blue);
	border-radius:999px;
	font-weight:900;
	line-height:1.1;
	text-align:center;
	text-decoration:none;
	box-shadow:none;
	transition:
		transform .2s ease,
		box-shadow .2s ease,
		background-color .2s ease,
		border-color .2s ease;
}

.button:hover,
.button:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus{
	color:#06243b !important;
	background:var(--crmx-blue-bright);
	border-color:var(--crmx-blue-bright);
	box-shadow:0 12px 26px rgba(41,182,246,.28);
	transform:translateY(-2px);
}

.button-small{
	min-height:42px;
	padding:10px 18px;
	font-size:.86rem;
}

/* Hero */

.crmx-hero{
	position:relative;
	min-height:500px !important;
	display:flex;
	align-items:center;
	overflow:hidden;
	color:#fff;
	background-color:var(--crmx-navy-deep);
}

.crmx-hero .wp-block-cover__image-background,
.crmx-hero .wp-block-cover__video-background{
	position:absolute;
	inset:0;
	z-index:0;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
}

.crmx-hero-overlay{
	position:absolute;
	inset:0;
	z-index:1;
	background:linear-gradient(90deg,rgba(4,18,32,.96) 0%,rgba(4,22,39,.88) 38%,rgba(4,26,45,.58) 68%,rgba(4,26,45,.20) 100%) !important;
	opacity:1 !important;
}

.crmx-hero .wp-block-cover__inner-container{
	position:relative;
	z-index:2;
	width:100%;
	color:#fff;
}

.crmx-hero .hero-inner{
	width:var(--crmx-shell);
	max-width:1240px;
	margin:0 auto;
	padding:54px 0 44px;
}

.crmx-hero .hero-eyebrow{
	margin:0 0 12px;
	color:#fff;
	font-size:.75rem;
	font-weight:800;
	line-height:1.4;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.crmx-hero .hero-title{
	max-width:900px;
	margin:0 0 18px;
	color:#fff;
	font-size:clamp(2.65rem,4.7vw,4.35rem);
	font-weight:800;
	line-height:1.03;
	letter-spacing:-.04em;
	text-wrap:balance;
}

.crmx-hero .hero-description{
	max-width:760px;
	margin:0 0 26px;
	color:rgba(255,255,255,.92);
	font-size:clamp(1rem,1.45vw,1.18rem);
	line-height:1.55;
}

.crmx-hero .hero-actions{
	display:flex;
	align-items:center;
	gap:14px;
	margin:0 0 30px;
}

.crmx-hero .wp-block-button__link{
	min-height:46px;
	padding:12px 22px;
	border-radius:6px;
	font-size:.88rem;
	font-weight:800;
	line-height:1.2;
	text-decoration:none;
}

.crmx-hero .hero-primary-button .wp-block-button__link{
	color:var(--crmx-navy-deep) !important;
	background:#fff;
	border:1px solid #fff;
}

.crmx-hero .hero-secondary-button .wp-block-button__link{
	color:#fff !important;
	background:transparent;
	border:1px solid rgba(255,255,255,.82);
}

.crmx-hero .hero-proof{
	max-width:900px;
	margin:0;
	padding-top:18px;
	border-top:1px solid rgba(255,255,255,.28);
	gap:0;
}

.crmx-hero .hero-proof-item{
	padding:0 22px;
	border-right:1px solid rgba(255,255,255,.2);
}

.crmx-hero .hero-proof-item:first-child{padding-left:0;}
.crmx-hero .hero-proof-item:last-child{border-right:0;}

.crmx-hero .hero-proof-title{
	margin:0 0 3px;
	color:#fff;
	font-size:1rem;
	font-weight:800;
	line-height:1.25;
}

.crmx-hero .hero-proof-label{
	margin:0;
	color:rgba(255,255,255,.78);
	font-size:.76rem;
	line-height:1.4;
}

@media(max-width:900px){
	.crmx-hero{min-height:auto !important;}
	.crmx-hero .hero-inner{padding:50px 0 42px;}
	.crmx-hero .hero-title{max-width:760px;font-size:clamp(2.45rem,8vw,3.7rem);}
}

@media(max-width:640px){
	.crmx-hero .hero-inner{padding:44px 0 38px;}
	.crmx-hero .hero-title{font-size:clamp(2.25rem,11vw,3.25rem);}
	.crmx-hero .hero-description{font-size:1rem;}
	.crmx-hero .hero-actions{flex-direction:column;align-items:stretch;}
	.crmx-hero .hero-actions .wp-block-button,
	.crmx-hero .hero-actions .wp-block-button__link{width:100%;text-align:center;}
	.crmx-hero .hero-proof{display:grid;grid-template-columns:1fr;gap:0;}
	.crmx-hero .hero-proof-item,
	.crmx-hero .hero-proof-item:first-child{padding:12px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.18);}
	.crmx-hero .hero-proof-item:last-child{border-bottom:0;}
}

/* General sections */

.section{
	padding:100px 0;
}

.section-light{
	background:var(--crmx-bg);
}

.section-dark{
	color:#dbe7f0;
	background:var(--crmx-navy);
}

.section-dark h1,
.section-dark h2,
.section-dark h3,
.section-dark h4{
	color:#fff;
}

.section-dark p,
.section-dark li{
	color:#dbe7f0;
}

.section-heading{
	max-width:780px;
	margin-bottom:48px;
}

.section-heading p{
	color:var(--crmx-gray);
	font-size:1.08rem;
}

.wp-block-columns{
	gap:28px;
}

.service-card,
.project-card,
.entry-card{
	height:100%;
	padding:32px;
	background:#fff;
	border:1px solid var(--crmx-border);
	border-radius:var(--crmx-radius);
	box-shadow:var(--crmx-shadow-soft);
	transition:
		transform .25s ease,
		box-shadow .25s ease;
}

.service-card:hover,
.project-card:hover,
.entry-card:hover{
	box-shadow:var(--crmx-shadow);
	transform:translateY(-5px);
}

.service-card{
	border-top:4px solid var(--crmx-blue);
}

.service-card h3{
	margin-bottom:14px;
}

.image-panel img,
.featured-image{
	border-radius:var(--crmx-radius);
	box-shadow:var(--crmx-shadow);
}

.process-grid{
	gap:20px;
}

.process-grid .wp-block-column{
	padding:28px;
	background:#fff;
	border:1px solid var(--crmx-border);
	border-radius:16px;
	box-shadow:var(--crmx-shadow-soft);
}

.process-grid strong{
	display:block;
	margin-bottom:10px;
	color:var(--crmx-blue);
	font-size:2rem;
	font-weight:900;
}

.cta-section{
	color:#06243b;
	background:linear-gradient(135deg,var(--crmx-blue),#8edfff);
}

.cta-section h2,
.cta-section h3,
.cta-section p{
	color:#06243b;
}

/* WordPress content */

.entry-content{
	overflow:hidden;
}

.entry-content > *:not(.alignfull):not(.alignwide){
	max-width:780px;
	margin-right:auto;
	margin-left:auto;
}

.entry-content > .alignwide{
	width:var(--crmx-shell);
	max-width:1240px;
}

.entry-content > .alignfull{
	width:100%;
	max-width:none;
}

.entry-content ul,
.entry-content ol{
	padding-left:1.3rem;
}

.entry-content blockquote{
	margin:30px auto;
	padding:24px 30px;
	background:var(--crmx-bg);
	border-left:4px solid var(--crmx-blue);
}

.page-hero{
	padding:110px 0 75px;
	color:#fff;
	background:linear-gradient(135deg,var(--crmx-navy),var(--crmx-navy-light));
}

.page-hero h1{
	margin-bottom:0;
	color:#fff;
}

.content-shell{
	padding:80px 0;
}

/* Project archive */

.project-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:24px;
	padding:80px 0;
}

.project-card{
	padding:0;
	overflow:hidden;
}

.project-card img{
	width:100%;
	aspect-ratio:4/3;
	object-fit:cover;
}

.card-body{
	padding:24px;
}

/* Footer */

.site-footer{
	padding-top:70px;
	color:#b9c9d6;
	background:#071728;
}

.site-footer h2,
.site-footer h3,
.site-footer h4{
	color:#fff;
}

.site-footer a{
	color:#fff;
	text-decoration:none;
}

.site-footer a:hover{
	color:var(--crmx-blue);
}

.footer-grid{
	display:grid;
	grid-template-columns:2fr 1fr 1fr;
	gap:50px;
}

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

.footer-grid li{
	margin-bottom:10px;
}

.footer-brand{
	color:#fff;
	font-size:1.25rem;
	font-weight:900;
	text-decoration:none;
}

.footer-bottom{
	margin-top:45px;
	padding:24px 0;
	border-top:1px solid rgba(255,255,255,.12);
}
.footer-custom-logo{
    max-width:120px;
    height:auto;
}

/* Accessibility */

.screen-reader-text{
	position:absolute !important;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	white-space:nowrap;
	border:0;
}

.screen-reader-text:focus,
.skip-link:focus{
	position:fixed !important;
	top:10px;
	left:10px;
	z-index:99999;
	width:auto;
	height:auto;
	padding:12px 16px;
	clip:auto;
	color:var(--crmx-navy);
	background:#fff;
	border-radius:6px;
	box-shadow:var(--crmx-shadow);
}

/* Tablet */

@media(max-width:1080px){

	.header-main{
		gap:20px;
	}

	.primary-nav ul,
	.primary-menu{
		gap:20px;
	}

	.primary-nav a{
		font-size:.84rem;
	}

	.header-cta{
		padding-right:15px;
		padding-left:15px;
	}

	.custom-logo{
		max-width:195px;
	}
}

/* Mobile navigation */

@media(max-width:900px){

	.header-utility{
		display:none;
	}

	.header-main{
		min-height:74px;
	}

	.custom-logo{
		max-width:190px;
		max-height:54px;
	}

	.brand-tagline{
		display:none;
	}

	.header-cta{
		display:none;
	}

	.nav-toggle{
		position:relative;
		z-index:1002;
		display:block;
		flex:0 0 auto;
	}

	.primary-nav{
		position:fixed;
		top:74px;
		right:0;
		bottom:0;
		z-index:1001;
		display:block;
		width:min(390px,100%);
		padding:26px 28px;
		overflow-y:auto;
		visibility:hidden;
		background:#fff;
		box-shadow:-20px 20px 50px rgba(7,23,40,.18);
		transform:translateX(105%);
		transition:
			transform .3s ease,
			visibility .3s ease;
	}

	.primary-nav.is-open{
		visibility:visible;
		transform:translateX(0);
	}

	.primary-nav ul,
	.primary-menu{
		flex-direction:column;
		align-items:stretch;
		gap:0;
	}

	.primary-nav li{
		width:100%;
		border-bottom:1px solid var(--crmx-border);
	}

	.primary-nav a{
		padding:20px 4px;
		font-size:1.05rem;
	}

	.primary-nav a::after{
		display:none;
	}




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

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

/* Small mobile */

@media(max-width:640px){

	:root{
		--crmx-shell:min(100% - 28px,1240px);
	}

	h1{
		font-size:clamp(2.35rem,11vw,3.6rem);
	}

	h2{
		font-size:clamp(1.9rem,9vw,2.8rem);
	}

	.section{
		padding:70px 0;
	}

	.header-main{
		min-height:70px;
	}

	.primary-nav{
		top:70px;
		width:100%;
	}

	.custom-logo{
		max-width:165px;
		max-height:48px;
	}



	.eyebrow{
		align-items:flex-start;
		font-size:.7rem;
		line-height:1.5;
	}

	.eyebrow::before{
		width:28px;
		margin-top:8px;
		flex:0 0 auto;
	}

	.crmx-hero .hero-description{
		font-size:1.03rem;
		line-height:1.65;
	}

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

	.hero-actions .wp-block-button{
		width:100%;
	}

	.hero-actions .wp-block-button__link{
		width:100%;
	}

	.hero-proof{
		display:grid;
		grid-template-columns:1fr;
		gap:18px;
		margin-top:38px;
		padding-top:24px;
	}

	.hero-proof-item,
	.hero-proof-item:first-child{
		min-width:0;
		padding:0;
	}

	.hero-proof-item:not(:last-child)::after{
		display:none;
	}

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

	.wp-block-columns{
		gap:20px;
	}
}

/* Services section */

.crmx-services{
	position:relative;
	overflow:hidden;
}

.crmx-services::before{
	content:"";
	position:absolute;
	top:-180px;
	right:-160px;
	width:420px;
	height:420px;
	border-radius:50%;
	background:radial-gradient(circle,rgba(82,183,243,.14) 0%,rgba(82,183,243,0) 72%);
	pointer-events:none;
}

.crmx-services .services-inner{
	position:relative;
	z-index:1;
}

.crmx-services .services-heading{
	max-width:860px;
	margin:0 0 46px;
}

.crmx-services .section-eyebrow{
	margin:0 0 12px;
	color:var(--crmx-blue-dark);
	font-size:.78rem;
	font-weight:900;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.crmx-services .services-title{
	margin:0 0 18px;
}

.crmx-services .services-intro{
	max-width:780px;
	margin:0;
	color:var(--crmx-gray);
	font-size:1.08rem;
	line-height:1.7;
}

.crmx-services .services-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(260px,280px));
	justify-content:center;
	gap:22px;
	margin:0;
}
}

.crmx-services .services-grid > .wp-block-column{
	margin:0;
}

.crmx-services .service-card{
	position:relative;
	display:flex;
	flex-direction:column;
	min-height:100%;
	padding:30px 28px 28px;
	overflow:hidden;
	background:#fff;
	border:1px solid var(--crmx-border);
	border-top:4px solid var(--crmx-blue);
	border-radius:18px;
	box-shadow:var(--crmx-shadow-soft);
	transition:
		transform .25s ease,
		box-shadow .25s ease,
		border-color .25s ease;
}

.crmx-services .service-card::after{
	content:"";
	position:absolute;
	right:-42px;
	bottom:-42px;
	width:110px;
	height:110px;
	border-radius:50%;
	background:rgba(82,183,243,.08);
	transition:transform .25s ease;
}

.crmx-services .service-card:hover{
	transform:translateY(-6px);
	border-color:rgba(82,183,243,.55);
	box-shadow:var(--crmx-shadow);
}

.crmx-services .service-card:hover::after{
	transform:scale(1.18);
}

.crmx-services .service-card-featured{
	background:linear-gradient(180deg,#ffffff 0%,#f3faff 100%);
}

.crmx-services .service-number{
	margin:0 0 24px;
	color:var(--crmx-blue-dark);
	font-size:.78rem;
	font-weight:900;
	letter-spacing:.12em;
}

.crmx-services .service-card h3{
	margin:0 0 14px;
	font-size:1.25rem;
	line-height:1.25;
}

.crmx-services .service-card > p:not(.service-number):not(.service-link){
	margin:0 0 24px;
	color:var(--crmx-gray);
	line-height:1.65;
}

.crmx-services .service-link{
	position:relative;
	z-index:1;
	margin:auto 0 0;
	padding-top:8px;
}

.crmx-services .service-link a{
	color:var(--crmx-navy);
	font-size:.88rem;
	font-weight:900;
	text-decoration:none;
}

.crmx-services .service-link a:hover,
.crmx-services .service-link a:focus{
	color:var(--crmx-blue-dark);
}

.crmx-services .services-cta{
	justify-content:center;
	margin-top:38px;
}

@media(max-width:1080px){
	.crmx-services .services-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}

@media(max-width:640px){
	.crmx-services .services-heading{
		margin-bottom:34px;
	}

	.crmx-services .services-grid{
		grid-template-columns:1fr;
		gap:18px;
	}

	.crmx-services .service-card{
		padding:26px 24px 24px;
	}

	.crmx-services .services-cta{
		justify-content:stretch;
	}

	.crmx-services .services-cta .wp-block-button,
	.crmx-services .services-cta .wp-block-button__link{
		width:100%;
	}
}

/* Industries section */

.crmx-industries{
	position:relative;
	background:#fff;
}

.crmx-industries .industries-heading{
	max-width:820px;
	margin:0 0 46px;
}

.crmx-industries .section-eyebrow{
	margin:0 0 12px;
	color:var(--crmx-blue-dark);
	font-size:.78rem;
	font-weight:900;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.crmx-industries .industries-title{
	margin:0 0 18px;
}

.crmx-industries .industries-intro{
	max-width:760px;
	margin:0;
	color:var(--crmx-gray);
	font-size:1.08rem;
	line-height:1.7;
}

.crmx-industries .industries-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:24px;
	margin:0;
}

.crmx-industries .industries-grid > .wp-block-column{
	margin:0;
}

.crmx-industries .industry-card{
	height:100%;
	overflow:hidden;
	background:#fff;
	border:1px solid var(--crmx-border);
	border-radius:18px;
	box-shadow:var(--crmx-shadow-soft);
	transition:
		transform .25s ease,
		box-shadow .25s ease;
}

.crmx-industries .industry-card:hover{
	transform:translateY(-6px);
	box-shadow:var(--crmx-shadow);
}

.crmx-industries .industry-image{
	position:relative;
	margin:0;
	background:linear-gradient(135deg,var(--crmx-navy-light),var(--crmx-navy));
	aspect-ratio:16/10;
	overflow:hidden;
}

.crmx-industries .industry-image::before{
	content:"Add or replace image";
	position:absolute;
	inset:0;
	z-index:0;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:20px;
	color:rgba(255,255,255,.72);
	font-size:.78rem;
	font-weight:800;
	letter-spacing:.08em;
	text-align:center;
	text-transform:uppercase;
}

.crmx-industries .industry-image img{
	position:relative;
	z-index:1;
	width:100%;
	height:100%;
	aspect-ratio:16/10;
	object-fit:cover;
	transition:transform .35s ease;
}

.crmx-industries .industry-card:hover .industry-image img{
	transform:scale(1.035);
}

.crmx-industries .industry-card-body{
	display:flex;
	flex-direction:column;
	min-height:250px;
	padding:26px 26px 24px;
}

.crmx-industries .industry-card h3{
	margin:0 0 12px;
	font-size:1.3rem;
	line-height:1.25;
}

.crmx-industries .industry-card-body > p:not(.industry-link){
	margin:0 0 22px;
	color:var(--crmx-gray);
	line-height:1.65;
}

.crmx-industries .industry-link{
	margin:auto 0 0;
}

.crmx-industries .industry-link a{
	color:var(--crmx-navy);
	font-size:.88rem;
	font-weight:900;
	text-decoration:none;
}

.crmx-industries .industry-link a:hover,
.crmx-industries .industry-link a:focus{
	color:var(--crmx-blue-dark);
}

@media(max-width:1080px){
	.crmx-industries .industries-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}

@media(max-width:640px){
	.crmx-industries .industries-heading{
		margin-bottom:34px;
	}

	.crmx-industries .industries-grid{
		grid-template-columns:1fr;
		gap:18px;
	}

	.crmx-industries .industry-card-body{
		min-height:0;
		padding:24px;
	}
}

/* Why choose us section */

.crmx-why{
	position:relative;
	overflow:hidden;
	background:
		radial-gradient(circle at 12% 18%,rgba(82,183,243,.12),transparent 34%),
		linear-gradient(135deg,var(--crmx-navy-deep),var(--crmx-navy));
}

.crmx-why::after{
	content:"";
	position:absolute;
	right:-120px;
	bottom:-180px;
	width:430px;
	height:430px;
	border:1px solid rgba(255,255,255,.08);
	border-radius:50%;
	box-shadow:
		0 0 0 42px rgba(255,255,255,.025),
		0 0 0 84px rgba(255,255,255,.018);
	pointer-events:none;
}

.crmx-why .why-inner{
	position:relative;
	z-index:1;
}

.crmx-why .why-layout{
	gap:68px;
	margin:0;
}

.crmx-why .section-eyebrow{
	margin:0 0 12px;
	color:var(--crmx-blue-bright);
	font-size:.78rem;
	font-weight:900;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.crmx-why .why-title{
	max-width:560px;
	margin:0 0 20px;
	color:#fff;
}

.crmx-why .why-intro{
	max-width:540px;
	margin:0 0 28px;
	color:rgba(255,255,255,.78);
	font-size:1.08rem;
	line-height:1.72;
}

.crmx-why .why-actions{
	margin:0;
}

.crmx-why .why-primary-button .wp-block-button__link{
	color:var(--crmx-navy-deep) !important;
	background:var(--crmx-blue-bright);
	border-color:var(--crmx-blue-bright);
}

.crmx-why .why-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:20px;
	margin:0;
}

.crmx-why .why-grid > .wp-block-column{
	margin:0;
}

.crmx-why .why-card{
	height:100%;
	padding:28px 26px 26px;
	background:rgba(255,255,255,.07);
	border:1px solid rgba(255,255,255,.13);
	border-radius:18px;
	box-shadow:0 16px 34px rgba(0,0,0,.12);
	backdrop-filter:blur(4px);
	transition:
		transform .25s ease,
		background-color .25s ease,
		border-color .25s ease;
}

.crmx-why .why-card:hover{
	transform:translateY(-5px);
	background:rgba(255,255,255,.10);
	border-color:rgba(132,212,255,.42);
}

.crmx-why .why-number{
	margin:0 0 22px;
	color:var(--crmx-blue-bright);
	font-size:.76rem;
	font-weight:900;
	letter-spacing:.14em;
}

.crmx-why .why-card h3{
	margin:0 0 12px;
	color:#fff;
	font-size:1.18rem;
	line-height:1.3;
}

.crmx-why .why-card > p:not(.why-number){
	margin:0;
	color:rgba(255,255,255,.74);
	font-size:.96rem;
	line-height:1.65;
}

@media(max-width:1080px){
	.crmx-why .why-layout{
		display:block;
	}

	.crmx-why .why-intro-column{
		margin-bottom:42px;
	}

	.crmx-why .why-title,
	.crmx-why .why-intro{
		max-width:760px;
	}
}

@media(max-width:640px){
	.crmx-why .why-grid{
		grid-template-columns:1fr;
		gap:16px;
	}

	.crmx-why .why-card{
		padding:24px;
	}

	.crmx-why .why-actions .wp-block-button,
	.crmx-why .why-actions .wp-block-button__link{
		width:100%;
	}
}

/* Process section */

.crmx-process{
	position:relative;
	overflow:hidden;
}

.crmx-process::before{
	content:"";
	position:absolute;
	top:0;
	left:50%;
	width:1px;
	height:100%;
	background:linear-gradient(to bottom,transparent,rgba(82,183,243,.18),transparent);
	transform:translateX(-50%);
	pointer-events:none;
}

.crmx-process .process-inner{
	position:relative;
	z-index:1;
}

.crmx-process .process-heading{
	max-width:840px;
	margin:0 0 48px;
}

.crmx-process .section-eyebrow{
	margin:0 0 12px;
	color:var(--crmx-blue-dark);
	font-size:.78rem;
	font-weight:900;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.crmx-process .process-title{
	margin:0 0 18px;
}

.crmx-process .process-intro{
	max-width:780px;
	margin:0;
	color:var(--crmx-gray);
	font-size:1.08rem;
	line-height:1.7;
}

.crmx-process .process-steps{
	display:grid;
	grid-template-columns:repeat(5,minmax(0,1fr));
	gap:18px;
	margin:0;
}

.crmx-process .process-steps > .wp-block-column{
	margin:0;
}

.crmx-process .process-step{
	position:relative;
	height:100%;
	padding:28px 24px 26px;
	background:#fff;
	border:1px solid var(--crmx-border);
	border-radius:18px;
	box-shadow:var(--crmx-shadow-soft);
	transition:
		transform .25s ease,
		box-shadow .25s ease,
		border-color .25s ease;
}

.crmx-process .process-step::before{
	content:"";
	position:absolute;
	top:0;
	left:24px;
	width:54px;
	height:4px;
	background:var(--crmx-blue);
	border-radius:0 0 999px 999px;
}

.crmx-process .process-step:hover{
	transform:translateY(-5px);
	border-color:rgba(82,183,243,.5);
	box-shadow:var(--crmx-shadow);
}

.crmx-process .process-number{
	margin:0 0 22px;
	color:var(--crmx-blue-dark);
	font-size:.78rem;
	font-weight:900;
	letter-spacing:.14em;
}

.crmx-process .process-step h3{
	margin:0 0 12px;
	font-size:1.08rem;
	line-height:1.3;
}

.crmx-process .process-step > p:not(.process-number){
	margin:0;
	color:var(--crmx-gray);
	font-size:.94rem;
	line-height:1.65;
}

.crmx-process .process-cta{
	justify-content:center;
	margin-top:38px;
}

@media(max-width:1180px){
	.crmx-process .process-steps{
		grid-template-columns:repeat(3,minmax(0,1fr));
	}
}

@media(max-width:820px){
	.crmx-process .process-steps{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}

@media(max-width:640px){
	.crmx-process .process-heading{
		margin-bottom:34px;
	}

	.crmx-process .process-steps{
		grid-template-columns:1fr;
		gap:16px;
	}

	.crmx-process .process-step{
		padding:25px 23px 23px;
	}

	.crmx-process .process-cta{
		justify-content:stretch;
	}

	.crmx-process .process-cta .wp-block-button,
	.crmx-process .process-cta .wp-block-button__link{
		width:100%;
	}
}

/* Final CTA section */

.crmx-final-cta{
	position:relative;
	overflow:hidden;
	padding:clamp(72px,9vw,120px) 24px;
	background:
		radial-gradient(circle at 14% 16%,rgba(132,212,255,.18),transparent 30%),
		radial-gradient(circle at 88% 82%,rgba(42,137,196,.2),transparent 34%),
		linear-gradient(135deg,var(--crmx-navy-deep),var(--crmx-navy));
}

.crmx-final-cta::before{
	content:"";
	position:absolute;
	inset:0;
	background-image:
		linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
		linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
	background-size:44px 44px;
	mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 92%);
	pointer-events:none;
}

.crmx-final-cta::after{
	content:"";
	position:absolute;
	top:-180px;
	right:-150px;
	width:480px;
	height:480px;
	border:1px solid rgba(255,255,255,.08);
	border-radius:50%;
	box-shadow:
		0 0 0 48px rgba(255,255,255,.025),
		0 0 0 96px rgba(255,255,255,.018);
	pointer-events:none;
}

.crmx-final-cta .final-cta-shell{
	position:relative;
	z-index:1;
	padding:clamp(34px,5vw,58px);
	background:rgba(255,255,255,.06);
	border:1px solid rgba(255,255,255,.13);
	border-radius:24px;
	box-shadow:0 24px 70px rgba(0,0,0,.22);
	backdrop-filter:blur(6px);
}

.crmx-final-cta .final-cta-layout{
	gap:54px;
	margin:0;
}

.crmx-final-cta .final-cta-eyebrow{
	margin:0 0 12px;
	color:var(--crmx-blue-bright);
	font-size:.78rem;
	font-weight:900;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.crmx-final-cta .final-cta-title{
	max-width:860px;
	margin:0 0 20px;
	color:#fff;
	font-size:clamp(2rem,4vw,3.55rem);
	line-height:1.08;
	letter-spacing:-.035em;
}

.crmx-final-cta .final-cta-text{
	max-width:760px;
	margin:0;
	color:rgba(255,255,255,.78);
	font-size:1.08rem;
	line-height:1.72;
}

.crmx-final-cta .final-cta-actions{
	align-items:stretch;
	gap:14px;
	margin:0;
}

.crmx-final-cta .final-cta-actions .wp-block-button{
	width:100%;
}

.crmx-final-cta .final-cta-actions .wp-block-button__link{
	width:100%;
	padding:16px 24px;
	text-align:center;
}

.crmx-final-cta .final-cta-primary .wp-block-button__link{
	color:var(--crmx-navy-deep) !important;
	background:var(--crmx-blue-bright);
	border:2px solid var(--crmx-blue-bright);
}

.crmx-final-cta .final-cta-primary .wp-block-button__link:hover{
	background:#fff;
	border-color:#fff;
}

.crmx-final-cta .final-cta-secondary .wp-block-button__link{
	color:#fff !important;
	background:transparent;
	border:2px solid rgba(255,255,255,.48);
}

.crmx-final-cta .final-cta-secondary .wp-block-button__link:hover{
	color:var(--crmx-navy-deep) !important;
	background:#fff;
	border-color:#fff;
}

.crmx-final-cta .final-cta-proof{
	gap:18px 34px;
	margin-top:34px;
	padding-top:24px;
	border-top:1px solid rgba(255,255,255,.12);
}

.crmx-final-cta .final-cta-proof p{
	position:relative;
	margin:0;
	padding-left:19px;
	color:rgba(255,255,255,.72);
	font-size:.88rem;
	font-weight:800;
	letter-spacing:.04em;
	text-transform:uppercase;
}

.crmx-final-cta .final-cta-proof p::before{
	content:"";
	position:absolute;
	top:50%;
	left:0;
	width:8px;
	height:8px;
	background:var(--crmx-blue-bright);
	border-radius:50%;
	transform:translateY(-50%);
	box-shadow:0 0 0 4px rgba(132,212,255,.12);
}

@media(max-width:900px){
	.crmx-final-cta .final-cta-layout{
		display:block;
	}

	.crmx-final-cta .final-cta-actions-column{
		margin-top:32px;
	}

	.crmx-final-cta .final-cta-actions{
		max-width:520px;
		align-items:stretch;
	}
}

@media(max-width:640px){
	.crmx-final-cta{
		padding:64px 18px;
	}

	.crmx-final-cta .final-cta-shell{
		padding:30px 22px;
		border-radius:20px;
	}

	.crmx-final-cta .final-cta-title{
		font-size:clamp(2rem,10vw,2.7rem);
	}

	.crmx-final-cta .final-cta-proof{
		display:grid;
		grid-template-columns:1fr;
		gap:14px;
	}
}
