/*
 * Stacksole About page: premium visual layer (v2).
 *
 * Loads after stacksole-about.css, About Us page only (page 3964). Styling
 * only: no copy, links or images change. Brings the page in line with the
 * homepage and contact page: Inter, navy + blue/indigo gradient, pill
 * eyebrows, gradient icon tiles, card grids that reflow 4 > 2 > 1.
 */

body.page-id-3964 .elementor-3964 {
	--ap-navy: #071330;
	--ap-ink: #0f1b38;
	--ap-text: #4a5873;
	--ap-muted: #66728a;
	--ap-blue: #1269e8;
	--ap-indigo: #4f46e5;
	--ap-grad: linear-gradient(135deg, #1269e8 0%, #3b6ff5 55%, #4f46e5 100%);
	--ap-line: #e6ebf3;
	--ap-soft: #f6f8fc;
	--ap-shadow: 0 1px 2px rgba(7, 19, 48, .04), 0 2px 6px rgba(7, 19, 48, .03), 0 18px 40px -22px rgba(7, 19, 48, .18);
	--ap-shadow-h: 0 1px 2px rgba(7, 19, 48, .05), 0 30px 60px -28px rgba(18, 105, 232, .38);
	--ap-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	--ap-gutter: clamp(1rem, 4vw, 1.5rem);
	--ap-sec: clamp(3rem, 5.5vw, 4.75rem); /* vertical section padding */
	overflow-x: clip;
	background: #ffffff;
}

/* Inter everywhere on the page (icons keep their own icon font) */
body.page-id-3964 .elementor-3964 :is(h1, h2, h3, h4, p, li, a, .elementor-heading-title, .elementor-icon-list-text, .elementor-button-text, .elementor-widget-text-editor) {
	font-family: var(--ap-font) !important;
	text-transform: none;
}

body.page-id-3964 .elementor-3964 .elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}

/* ---------------------------------------------------------------------
   EYEBROWS: one pill style across the page (matches homepage)
   --------------------------------------------------------------------- */
body.page-id-3964 .elementor-3964 :is(.elementor-element-b1000002, .elementor-element-c2000003, .elementor-element-2c6bbac4, .elementor-element-d648d6f3, .elementor-element-94ce2b9b) .elementor-heading-title {
	display: inline-flex !important;
	align-items: center;
	gap: 9px !important;
	padding: 7px 15px 7px 12px !important;
	border: 1px solid rgba(18, 105, 232, .16) !important;
	border-radius: 999px !important;
	background: linear-gradient(180deg, #f3f7ff, #eaf1ff) !important;
	box-shadow: inset 0 1px 0 #ffffff !important;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	font-size: 12px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: .1em !important;
	color: var(--ap-blue) !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-b1000002, .elementor-element-c2000003, .elementor-element-2c6bbac4, .elementor-element-d648d6f3, .elementor-element-94ce2b9b) .elementor-heading-title::before {
	content: "" !important;
	width: 7px !important;
	height: 7px !important;
	border-radius: 50% !important;
	background: var(--ap-grad) !important;
	box-shadow: 0 0 0 3px rgba(18, 105, 232, .14);
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-2c6bbac4, .elementor-element-d648d6f3, .elementor-element-94ce2b9b) .elementor-heading-title::after {
	content: none !important;
	display: none !important;
}

/* ---------------------------------------------------------------------
   SECTION HEADINGS
   --------------------------------------------------------------------- */
body.page-id-3964 .elementor-3964 :is(.elementor-element-c2000004, .elementor-element-90798617, .elementor-element-190a7bac, .elementor-element-aea7f35a) .elementor-heading-title {
	font-size: clamp(2rem, 1.4rem + 2.4vw, 3.1rem) !important;
	font-weight: 700 !important;
	line-height: 1.07 !important;
	letter-spacing: -.04em !important;
	color: var(--ap-navy) !important;
	text-wrap: balance;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-c2000004, .elementor-element-90798617, .elementor-element-190a7bac, .elementor-element-aea7f35a) {
	margin-top: 4px !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-c2000005, .elementor-element-56f57c0d) {
	font-size: clamp(1rem, .96rem + .25vw, 1.1rem) !important;
	line-height: 1.7 !important;
	color: var(--ap-text) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-56f57c0d {
	width: 100% !important;
	max-width: 680px !important;
	margin-inline: auto !important;
}

/* ---------------------------------------------------------------------
   HERO
   --------------------------------------------------------------------- */
body.page-id-3964 .elementor-3964 .elementor-element-b1000001 {
	background:
		radial-gradient(48% 60% at 88% 10%, rgba(79, 70, 229, .11), transparent 70%),
		radial-gradient(45% 55% at 8% 0%, rgba(18, 105, 232, .11), transparent 70%),
		linear-gradient(180deg, #f4f7ff 0%, #ffffff 92%) !important;
	padding: clamp(2.5rem, 5vw, 4rem) var(--ap-gutter) clamp(2.5rem, 4.5vw, 3.5rem) !important;
	min-height: 0 !important;
	height: auto !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000001 > .e-con-inner {
	min-height: 0 !important;
	height: auto !important;
	padding: 0 !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000001 .elementor-widget {
	margin-block-end: 0 !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000001::before {
	background-size: 56px 56px;
	-webkit-mask-image: radial-gradient(ellipse 60% 75% at 50% 15%, #000 0%, transparent 75%);
	mask-image: radial-gradient(ellipse 60% 75% at 50% 15%, #000 0%, transparent 75%);
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000001 > .e-con-inner {
	gap: 0 !important;
	align-items: center !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000003 {
	max-width: 900px !important;
	margin: 22px auto 0 !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000003 .elementor-heading-title {
	padding-bottom: .06em;
	font-size: clamp(2.3rem, 1.2rem + 4.2vw, 4.25rem) !important;
	font-weight: 700 !important;
	line-height: 1.03 !important;
	letter-spacing: -.05em !important;
	text-align: center;
	background: linear-gradient(180deg, #071330 35%, #1b3a7a 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: var(--ap-navy) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000004 {
	max-width: 690px !important;
	margin: 22px auto 0 !important;
	color: var(--ap-text) !important;
	text-wrap: pretty;
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000005 {
	margin-top: 34px !important;
}

/* Primary buttons */
body.page-id-3964 .elementor-3964 .elementor-element-b1000005 .elementor-button {
	padding: 16px 28px !important;
	border-radius: 14px !important;
	background: var(--ap-grad) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22), 0 1px 2px rgba(7, 19, 48, .14), 0 14px 28px -12px rgba(18, 105, 232, .7) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-b1000005 .elementor-button:hover {
	filter: brightness(1.06);
	transform: translateY(-2px);
}

/* ---------------------------------------------------------------------
   OUR STORY
   --------------------------------------------------------------------- */
/* follows the white hero, so a smaller top keeps the gap even */
body.page-id-3964 .elementor-3964 .elementor-element-b2000001 {
	padding: clamp(1.5rem, 3vw, 2.5rem) var(--ap-gutter) var(--ap-sec) !important;
	min-height: 0 !important;
}

/* CTA follows the white process section: no doubled gap */
body.page-id-3964 .elementor-3964 .elementor-element-1489b1e4 + .elementor-element-55e484be {
	padding-top: 0 !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-504f638 .about-premium-label {
	white-space: nowrap;
}

body.page-id-3964 .elementor-3964 .elementor-element-b2000001 > .e-con-inner {
	max-width: 1200px !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000002 {
	gap: 18px !important;
}

/* checklist becomes tidy chips */
body.page-id-3964 .elementor-3964 .elementor-element-c2000006 {
	margin-top: 8px !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000006 .elementor-icon-list-items {
	display: flex !important;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 !important;
	padding: 0 !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000006 .elementor-icon-list-item {
	display: inline-flex !important;
	align-items: center;
	gap: 10px;
	margin: 0 !important;
	padding: 8px 14px 8px 8px !important;
	border: 1px solid var(--ap-line);
	border-radius: 999px;
	background: #ffffff;
	box-shadow: 0 1px 2px rgba(7, 19, 48, .04);
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000006 .elementor-icon-list-item::after {
	display: none !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000006 .elementor-icon-list-icon {
	display: inline-grid !important;
	place-items: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 50%;
	background: var(--ap-grad);
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000006 .elementor-icon-list-icon i {
	font-size: 12px !important;
	color: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000006 .elementor-icon-list-icon svg {
	width: 12px !important;
	fill: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000006 .elementor-icon-list-text {
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #23314f !important;
}

/* feature card: navy */
body.page-id-3964 .elementor-3964 .elementor-element-c2000010 {
	gap: 16px !important;
	border: 1px solid rgba(255, 255, 255, .06) !important;
	border-radius: 28px !important;
	background:
		radial-gradient(90% 80% at 100% 0%, rgba(79, 70, 229, .55), transparent 60%),
		radial-gradient(80% 80% at 0% 100%, rgba(18, 105, 232, .35), transparent 65%),
		linear-gradient(160deg, #0c1f4a, #071330) !important;
	box-shadow: 0 40px 80px -40px rgba(7, 19, 48, .6) !important;
	padding: clamp(1.75rem, 3.5vw, 2.75rem) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000010::after {
	top: auto;
	right: -40px;
	bottom: -40px;
	width: 220px;
	height: 220px;
	background-image:
		linear-gradient(rgba(255, 255, 255, .07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, .07) 1px, transparent 1px);
	background-size: 28px 28px;
	-webkit-mask-image: radial-gradient(circle, #000, transparent 70%);
	mask-image: radial-gradient(circle, #000, transparent 70%);
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000011 .elementor-icon {
	background: rgba(255, 255, 255, .1) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .2) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000012 .elementor-heading-title {
	font-size: clamp(1.35rem, 1.1rem + 1vw, 1.75rem) !important;
	font-weight: 700 !important;
	letter-spacing: -.03em !important;
	color: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c2000013,
body.page-id-3964 .elementor-3964 .elementor-element-c2000013 p {
	font-size: 15.5px !important;
	line-height: 1.7 !important;
	color: rgba(255, 255, 255, .74) !important;
}

/* ---------------------------------------------------------------------
   WHY STACKSOLE (dark band)
   --------------------------------------------------------------------- */
body.page-id-3964 .elementor-3964 .elementor-element-504f638 {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(50% 70% at 85% 0%, rgba(79, 70, 229, .38), transparent 65%),
		radial-gradient(45% 60% at 0% 100%, rgba(18, 105, 232, .32), transparent 65%),
		linear-gradient(180deg, #0a1736, #071330) !important;
	padding: var(--ap-sec) var(--ap-gutter) !important;
	border-radius: 0 !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-504f638::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
	background-size: 56px 56px;
	-webkit-mask-image: radial-gradient(ellipse 70% 70% at 50% 30%, #000, transparent 75%);
	mask-image: radial-gradient(ellipse 70% 70% at 50% 30%, #000, transparent 75%);
	pointer-events: none;
}

body.page-id-3964 .elementor-3964 .elementor-element-504f638 > * {
	position: relative;
	z-index: 1;
	max-width: 1200px !important;
}

/* The band is a column; stretch its rows to full width so the heading
   column can never collapse (it was shrinking to one letter wide). */
body.page-id-3964 .elementor-3964 .elementor-element-504f638 {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	gap: 0 !important;
	height: auto !important;
	min-height: 0 !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-504f638 > .elementor-element {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 1200px !important;
	min-width: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	margin-inline: auto !important;
}

/* intro row: copy left, prompt + button right */
body.page-id-3964 .elementor-3964 .elementor-element-c65b314 {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: flex-end !important;
	justify-content: space-between !important;
	gap: 2.5rem !important;
	padding: 0 !important;
	background: none !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-ba0efda {
	flex: 1 1 0% !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: 720px !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-ba0efda h2 {
	word-break: normal !important;
	overflow-wrap: normal !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-504f638 .about-premium-label {
	display: inline-flex !important;
	align-items: center;
	gap: 9px;
	margin: 0 0 18px !important;
	padding: 7px 15px 7px 12px !important;
	border: 1px solid rgba(255, 255, 255, .16) !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, .06) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: .1em !important;
	color: #a9c8ff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-504f638 .about-premium-label::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--ap-grad);
	box-shadow: 0 0 0 3px rgba(158, 194, 255, .18);
}

body.page-id-3964 .elementor-3964 .elementor-element-504f638 h2 {
	margin: 0 !important;
	font-size: clamp(2rem, 1.3rem + 2.5vw, 3.1rem) !important;
	font-weight: 700 !important;
	line-height: 1.07 !important;
	letter-spacing: -.04em !important;
	color: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-ba0efda p:not(.about-premium-label) {
	margin: 18px 0 0 !important;
	max-width: 600px;
	font-size: clamp(1rem, .96rem + .25vw, 1.1rem) !important;
	line-height: 1.7 !important;
	color: rgba(255, 255, 255, .7) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-5e7c4c4 {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 12px !important;
	flex: 0 0 auto;
	width: auto !important;
	max-width: 340px !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 22px 24px !important;
	border: 1px solid rgba(255, 255, 255, .12) !important;
	border-radius: 20px !important;
	background: rgba(255, 255, 255, .05) !important;
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}

body.page-id-3964 .elementor-3964 .elementor-element-5e7c4c4 p {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .about-premium-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 14px 22px !important;
	border: 0 !important;
	border-radius: 14px !important;
	background: #ffffff !important;
	box-shadow: 0 14px 30px -14px rgba(0, 0, 0, .55) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--ap-navy) !important;
	text-decoration: none !important;
	transition: transform .2s ease, color .2s ease;
}

body.page-id-3964 .elementor-3964 .about-premium-button::after {
	content: "\2192";
	transition: transform .2s ease;
}

body.page-id-3964 .elementor-3964 .about-premium-button:hover {
	transform: translateY(-2px);
	color: var(--ap-blue) !important;
}

body.page-id-3964 .elementor-3964 .about-premium-button:hover::after {
	transform: translateX(3px);
}

/* stats */
body.page-id-3964 .elementor-3964 .elementor-element-ebf0c5e {
	width: 100%;
	gap: 16px !important;
	margin-top: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding: 0 !important;
}

body.page-id-3964 .elementor-3964 .about-premium-card {
	display: flex !important;
	flex-direction: column;
	justify-content: flex-end;
	gap: 8px;
	padding: 28px 26px !important;
	border: 1px solid rgba(255, 255, 255, .1) !important;
	border-radius: 22px !important;
	background: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .025)) !important;
	box-shadow: none !important;
	transition: transform .3s ease, border-color .3s ease;
}

body.page-id-3964 .elementor-3964 .about-premium-card:hover {
	transform: translateY(-4px);
	border-color: rgba(158, 194, 255, .35) !important;
}

body.page-id-3964 .elementor-3964 .about-premium-card h3 {
	margin: 0 !important;
	font-size: clamp(2.2rem, 1.6rem + 2vw, 3.2rem) !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: -.05em !important;
	background: linear-gradient(180deg, #ffffff 30%, #a9c8ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .about-premium-card p {
	margin: 0 !important;
	font-size: 14.5px !important;
	line-height: 1.5 !important;
	color: rgba(255, 255, 255, .68) !important;
}

/* ---------------------------------------------------------------------
   SECTION BANDS: What we do / Values / Process
   --------------------------------------------------------------------- */
body.page-id-3964 .elementor-3964 :is(.elementor-element-ecb15e86, .elementor-element-3ac3cb5c, .elementor-element-1489b1e4) {
	align-items: center !important;
	gap: 0 !important;
	padding: var(--ap-sec) var(--ap-gutter) !important;
	background: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-3ac3cb5c {
	background:
		radial-gradient(60% 50% at 50% 0%, rgba(18, 105, 232, .06), transparent 70%),
		var(--ap-soft) !important;
	border-block: 1px solid var(--ap-line);
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-90798617, .elementor-element-190a7bac, .elementor-element-aea7f35a) {
	margin-top: 20px !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-90798617, .elementor-element-190a7bac, .elementor-element-aea7f35a) .elementor-heading-title {
	text-align: center;
}

body.page-id-3964 .elementor-3964 .elementor-element-56f57c0d {
	margin-top: 16px !important;
}

/* card grids: 4 > 2 > 1 */
body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) {
	width: 100% !important;
	max-width: 1200px !important;
	margin-top: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding: 0 !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px !important;
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) > .e-con-inner > .e-con {
	--width: auto !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	justify-content: flex-start !important;
	gap: 0 !important;
	padding: 30px 26px 28px !important;
	border-color: var(--ap-line) !important;
	border-radius: 24px !important;
	box-shadow: var(--ap-shadow) !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) > .e-con-inner > .e-con::before {
	height: 3px;
	background: var(--ap-grad);
	opacity: 1;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .45s cubic-bezier(.2, .7, .2, 1);
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) > .e-con-inner > .e-con:hover {
	transform: translateY(-5px);
	border-color: rgba(18, 105, 232, .22) !important;
	box-shadow: var(--ap-shadow-h) !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) > .e-con-inner > .e-con:hover::before {
	transform: scaleX(1);
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) .elementor-widget-heading:has(h3) {
	margin: 22px 0 8px !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) h3.elementor-heading-title {
	font-size: 1.15rem !important;
	font-weight: 650 !important;
	line-height: 1.3 !important;
	letter-spacing: -.02em !important;
	color: var(--ap-ink) !important;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) .elementor-widget-text-editor,
body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) .elementor-widget-text-editor p {
	margin: 0 !important;
	font-size: 15px !important;
	line-height: 1.65 !important;
	color: var(--ap-text) !important;
}

/* icon tiles */
body.page-id-3964 .elementor-3964 .elementor-widget-icon .elementor-icon {
	width: 50px !important;
	height: 50px !important;
	border-radius: 15px !important;
	background: var(--ap-grad) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 10px 20px -10px rgba(18, 105, 232, .7) !important;
	font-size: 20px !important;
}

body.page-id-3964 .elementor-3964 .elementor-widget-icon .elementor-icon i {
	color: #ffffff !important;
}

/* values: softer icon tile, fills on hover */
body.page-id-3964 .elementor-3964 .elementor-element-310f9a6d .elementor-widget-icon .elementor-icon {
	background: #eef4ff !important;
	box-shadow: inset 0 0 0 1px rgba(18, 105, 232, .12) !important;
	transition: background .3s ease, box-shadow .3s ease;
}

body.page-id-3964 .elementor-3964 .elementor-element-310f9a6d .elementor-widget-icon .elementor-icon i {
	color: var(--ap-blue) !important;
	transition: color .3s ease;
}

body.page-id-3964 .elementor-3964 .elementor-element-310f9a6d > .e-con-inner > .e-con:hover .elementor-icon {
	background: var(--ap-grad) !important;
	box-shadow: 0 10px 20px -10px rgba(18, 105, 232, .7) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-310f9a6d > .e-con-inner > .e-con:hover .elementor-icon i {
	color: #ffffff !important;
}

/* process: step numbers as gradient tiles */
body.page-id-3964 .elementor-3964 .elementor-element-c7825dba > .e-con-inner {
	position: relative;
}

body.page-id-3964 .elementor-3964 :is(.elementor-element-d32a4488, .elementor-element-99e411a9, .elementor-element-2eff9757, .elementor-element-c857e180) .elementor-heading-title {
	display: inline-grid !important;
	place-items: center;
	width: 50px;
	height: 50px;
	border-radius: 15px;
	background: var(--ap-grad) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 10px 20px -10px rgba(18, 105, 232, .7);
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: .02em !important;
	-webkit-background-clip: border-box !important;
	background-clip: border-box !important;
	-webkit-text-fill-color: #ffffff !important;
	color: #ffffff !important;
}

/* ---------------------------------------------------------------------
   CLOSING CTA
   --------------------------------------------------------------------- */
body.page-id-3964 .elementor-3964 .elementor-element-55e484be {
	padding: var(--ap-sec) var(--ap-gutter) var(--ap-sec) !important;
	background: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c5faafc6 {
	width: 100% !important;
	max-width: 1200px !important;
	margin-inline: auto !important;
	border-radius: 30px !important;
	background:
		radial-gradient(55% 120% at 100% 0%, rgba(79, 70, 229, .55), transparent 60%),
		radial-gradient(50% 120% at 0% 100%, rgba(18, 105, 232, .45), transparent 60%),
		linear-gradient(135deg, #0c1f4a, #071330) !important;
	box-shadow: 0 40px 80px -40px rgba(7, 19, 48, .55) !important;
	padding: clamp(2rem, 5vw, 3.75rem) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-c5faafc6::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px);
	background-size: 48px 48px;
	-webkit-mask-image: radial-gradient(ellipse 60% 90% at 80% 20%, #000, transparent 75%);
	mask-image: radial-gradient(ellipse 60% 90% at 80% 20%, #000, transparent 75%);
	pointer-events: none;
}

body.page-id-3964 .elementor-3964 .elementor-element-c5faafc6 > .e-con-inner {
	position: relative;
	z-index: 1;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-6199e2f1 {
	align-items: center !important;
	gap: 20px !important;
	width: auto !important;
	min-width: 0;
}

body.page-id-3964 .elementor-3964 .elementor-element-fa373cb1 > .e-con-inner {
	gap: 8px !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-2e070b73 .elementor-icon {
	background: rgba(255, 255, 255, .1) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .2) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-b35bb8bf .elementor-heading-title {
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: .12em !important;
	color: #a9c8ff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-a17860e9 .elementor-heading-title {
	font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.35rem) !important;
	font-weight: 700 !important;
	line-height: 1.12 !important;
	letter-spacing: -.035em !important;
	color: #ffffff !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-79d0eb38 .elementor-button {
	padding: 16px 26px !important;
	border-radius: 14px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--ap-navy) !important;
}

body.page-id-3964 .elementor-3964 .elementor-element-79d0eb38 .elementor-button:hover {
	color: var(--ap-blue) !important;
}

/* ---------------------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------------------- */
@media (max-width: 1100px) {
	body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) > .e-con-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	body.page-id-3964 .elementor-3964 .elementor-element-c65b314 {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-ba0efda {
		flex: none !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-5e7c4c4 {
		flex: none !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-c5faafc6 > .e-con-inner {
		flex-direction: column !important;
		align-items: flex-start !important;
	}
}

@media (max-width: 767px) {
	body.page-id-3964 .elementor-3964 .elementor-element-b1000001 {
		padding-top: 2.25rem !important;
		padding-bottom: 2rem !important;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-b1000005,
	body.page-id-3964 .elementor-3964 .elementor-element-b1000005 .elementor-button-wrapper,
	body.page-id-3964 .elementor-3964 .elementor-element-b1000005 .elementor-button {
		width: 100% !important;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-b1000005 .elementor-button {
		justify-content: center;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-ebf0c5e {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.page-id-3964 .elementor-3964 .about-premium-card {
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-start;
		gap: 18px;
		padding: 20px 22px !important;
	}

	body.page-id-3964 .elementor-3964 .about-premium-card h3 {
		flex: 0 0 auto;
		min-width: 3.4em;
	}

	body.page-id-3964 .elementor-3964 .about-premium-button {
		width: 100%;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-6199e2f1 {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-c5faafc6 {
		border-radius: 24px !important;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-79d0eb38,
	body.page-id-3964 .elementor-3964 .elementor-element-79d0eb38 .elementor-button-wrapper {
		width: 100% !important;
	}
}

@media (max-width: 640px) {
	body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) > .e-con-inner {
		grid-template-columns: minmax(0, 1fr);
		gap: 14px !important;
	}

	body.page-id-3964 .elementor-3964 :is(.elementor-element-45bbe6b4, .elementor-element-310f9a6d, .elementor-element-c7825dba) > .e-con-inner > .e-con {
		padding: 24px 22px !important;
		border-radius: 20px !important;
	}

	body.page-id-3964 .elementor-3964 .elementor-element-c2000006 .elementor-icon-list-item {
		width: 100%;
		border-radius: 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.page-id-3964 .elementor-3964 *,
	body.page-id-3964 .elementor-3964 *::before,
	body.page-id-3964 .elementor-3964 *::after {
		transition: none !important;
	}
}
