:root {
	--ash-ink: #16211d;
	--ash-muted: #5c6d66;
	--ash-green: #2e7d5b;
	--ash-green-dark: #123b30;
	--ash-green-deep: #0b2d26;
	--ash-lime: #b8df55;
	--ash-mint: #eaf4ef;
	--ash-sand: #f7f3eb;
	--ash-white: #ffffff;
	--ash-line: #dce6e1;
	--ash-shadow: 0 24px 60px rgba(18, 59, 48, 0.12);
	--ash-radius: 24px;
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body.ash-site {
	background: var(--ash-white);
	color: var(--ash-ink);
	font-family: "Inter", Arial, sans-serif;
	font-size: 16px;
	line-height: 1.7;
	margin: 0;
}

body.ash-ar {
	font-family: "IBM Plex Sans Arabic", Tahoma, Arial, sans-serif;
}

.ash-shell,
.ash-header,
.ash-footer {
	text-align: start;
}

.ash-shell a,
.ash-header a,
.ash-footer a {
	text-decoration: none;
}

.ash-container {
	margin-inline: auto;
	max-width: 1200px;
	padding-inline: 24px;
	width: 100%;
}

.ash-narrow {
	margin-inline: auto;
	max-width: 820px;
}

.ash-skip {
	background: var(--ash-lime);
	color: var(--ash-green-deep);
	font-weight: 800;
	inset-inline-start: 16px;
	padding: 10px 18px;
	position: fixed;
	top: -60px;
	z-index: 1100;
}

.ash-skip:focus {
	top: 12px;
}

.ash-header {
	background: rgba(255, 255, 255, 0.94);
	border-bottom: 1px solid rgba(220, 230, 225, 0.9);
	position: sticky;
	top: 0;
	z-index: 1000;
	backdrop-filter: blur(14px);
}

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

.ash-brand {
	align-items: center;
	display: inline-flex;
	flex: 0 0 auto;
}

.ash-brand img,
.ash-footer-brand img {
	height: 54px;
	object-fit: contain;
	width: auto;
}

.ash-navigation {
	align-items: center;
	display: flex;
	gap: 22px;
}

.ash-navigation > a:not(.ash-button) {
	color: #35463f;
	font-size: 14px;
	font-weight: 650;
	padding-block: 28px 24px;
	position: relative;
}

.ash-navigation > a:not(.ash-button)::after {
	background: var(--ash-green);
	border-radius: 4px;
	bottom: 18px;
	content: "";
	height: 3px;
	inset-inline: 50%;
	position: absolute;
	transition: inset 180ms ease;
}

.ash-navigation > a:not(.ash-button):hover,
.ash-navigation > a.is-active {
	color: var(--ash-green-dark);
}

.ash-navigation > a:not(.ash-button):hover::after,
.ash-navigation > a.is-active::after {
	inset-inline: 16%;
}

.ash-language {
	direction: ltr;
	letter-spacing: 0.05em;
}

.ash-menu-toggle {
	align-items: center;
	background: var(--ash-mint);
	border: 0;
	border-radius: 12px;
	cursor: pointer;
	display: none;
	flex-direction: column;
	gap: 5px;
	height: 44px;
	justify-content: center;
	width: 44px;
}

.ash-menu-toggle span {
	background: var(--ash-green-deep);
	border-radius: 3px;
	height: 2px;
	transition: transform 180ms ease, opacity 180ms ease;
	width: 22px;
}

.ash-menu-toggle[aria-expanded="true"] span:first-child {
	transform: translateY(7px) rotate(45deg);
}

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

.ash-menu-toggle[aria-expanded="true"] span:last-child {
	transform: translateY(-7px) rotate(-45deg);
}

.ash-button {
	align-items: center;
	background: var(--ash-lime);
	border: 1px solid var(--ash-lime);
	border-radius: 12px;
	color: var(--ash-green-deep) !important;
	cursor: pointer;
	display: inline-flex;
	font-weight: 800;
	justify-content: center;
	min-height: 50px;
	padding: 12px 22px;
	transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.ash-button:hover {
	background: #c7eb6e;
	box-shadow: 0 14px 28px rgba(184, 223, 85, 0.22);
	transform: translateY(-2px);
}

.ash-button-small {
	font-size: 13px;
	min-height: 42px;
	padding: 9px 17px;
}

.ash-button-outline {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.34);
	color: var(--ash-white) !important;
}

.ash-button-outline:hover {
	background: rgba(255, 255, 255, 0.08);
	box-shadow: none;
}

.ash-link {
	color: var(--ash-green-dark);
	font-weight: 800;
}

.ash-link::after {
	content: " ↗";
}

[dir="rtl"] .ash-link::after {
	content: " ↖";
}

.ash-hero {
	background:
		radial-gradient(circle at 15% 10%, rgba(184, 223, 85, 0.2), transparent 29%),
		linear-gradient(135deg, var(--ash-green-deep), #174f40 72%, #20614d);
	color: var(--ash-white);
	overflow: hidden;
	padding-block: 92px 76px;
	position: relative;
}

.ash-hero::after {
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	content: "";
	height: 520px;
	inset-inline-end: -220px;
	position: absolute;
	top: -220px;
	width: 520px;
}

.ash-hero-grid {
	align-items: center;
	display: grid;
	gap: 64px;
	grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
	position: relative;
	z-index: 1;
}

.ash-hero-simple .ash-hero-grid {
	grid-template-columns: minmax(0, 760px) minmax(220px, 0.5fr);
}

.ash-eyebrow {
	align-items: center;
	color: var(--ash-green);
	display: flex;
	font-size: 13px;
	font-weight: 800;
	gap: 10px;
	letter-spacing: 0.08em;
	margin: 0 0 18px;
	text-transform: uppercase;
}

.ash-eyebrow::before {
	background: var(--ash-lime);
	border-radius: 99px;
	content: "";
	height: 8px;
	width: 8px;
}

.ash-hero .ash-eyebrow,
.ash-dark .ash-eyebrow {
	color: var(--ash-lime);
}

.ash-display {
	color: inherit;
	font-size: clamp(42px, 5.8vw, 76px);
	font-weight: 800;
	letter-spacing: -0.055em;
	line-height: 1.08;
	margin: 0;
	max-width: 900px;
}

.ash-ar .ash-display {
	font-size: clamp(38px, 5.2vw, 68px);
	letter-spacing: -0.035em;
	line-height: 1.25;
}

.ash-lead {
	color: rgba(255, 255, 255, 0.78);
	font-size: clamp(17px, 2vw, 21px);
	line-height: 1.85;
	margin: 24px 0 0;
	max-width: 730px;
}

.ash-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 32px;
}

.ash-browser {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 24px;
	box-shadow: 0 34px 70px rgba(0, 0, 0, 0.25);
	padding: 10px;
	transform: none;
}

[dir="rtl"] .ash-browser {
	transform: none;
}

.ash-browser-bar {
	align-items: center;
	display: flex;
	gap: 6px;
	height: 28px;
	padding-inline: 8px;
}

.ash-browser-bar span {
	background: rgba(255, 255, 255, 0.45);
	border-radius: 50%;
	height: 7px;
	width: 7px;
}

.ash-browser img {
	background: white;
	border-radius: 15px;
	display: block;
	height: auto;
	width: 100%;
}

.ash-trust {
	background: var(--ash-white);
	border-bottom: 1px solid var(--ash-line);
}

.ash-trust-row {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.ash-trust-item {
	align-items: center;
	border-inline-end: 1px solid var(--ash-line);
	display: flex;
	font-size: 13px;
	font-weight: 800;
	gap: 10px;
	justify-content: center;
	min-height: 74px;
	padding: 14px;
	text-align: center;
}

.ash-trust-item:last-child {
	border-inline-end: 0;
}

.ash-check {
	align-items: center;
	background: var(--ash-mint);
	border-radius: 50%;
	color: var(--ash-green);
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 11px;
	height: 24px;
	justify-content: center;
	width: 24px;
}

.ash-section {
	padding-block: 96px;
}

.ash-section-soft {
	background: var(--ash-sand);
}

.ash-section-mint {
	background: var(--ash-mint);
}

.ash-dark {
	background: var(--ash-green-deep);
	color: var(--ash-white);
}

.ash-section-head {
	display: flex;
	gap: 32px;
	justify-content: space-between;
	margin-bottom: 44px;
}

.ash-section-head > :first-child {
	max-width: 760px;
}

.ash-kicker {
	color: var(--ash-green);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	margin: 0 0 12px;
	text-transform: uppercase;
}

.ash-heading {
	color: inherit;
	font-size: clamp(31px, 4vw, 50px);
	font-weight: 800;
	letter-spacing: -0.04em;
	line-height: 1.18;
	margin: 0;
}

.ash-ar .ash-heading {
	letter-spacing: -0.025em;
	line-height: 1.35;
}

.ash-section-copy,
.ash-card p,
.ash-service-card p,
.ash-phase p,
.ash-feature p,
.ash-case p,
.ash-contact-copy p {
	color: var(--ash-muted);
	margin: 14px 0 0;
}

.ash-dark .ash-section-copy,
.ash-dark .ash-card p,
.ash-dark .ash-phase p {
	color: rgba(255, 255, 255, 0.7);
}

.ash-grid-2,
.ash-grid-3,
.ash-grid-4 {
	display: grid;
	gap: 22px;
}

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

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

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

.ash-card,
.ash-service-card,
.ash-feature,
.ash-phase {
	background: var(--ash-white);
	border: 1px solid var(--ash-line);
	border-radius: var(--ash-radius);
	padding: 30px;
}

.ash-card-number {
	color: var(--ash-green);
	display: block;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.1em;
	margin-bottom: 28px;
}

.ash-card h3,
.ash-service-card h3,
.ash-feature h3,
.ash-phase h3,
.ash-case h3 {
	color: inherit;
	font-size: 21px;
	font-weight: 800;
	line-height: 1.35;
	margin: 0;
}

.ash-service-card {
	box-shadow: 0 10px 30px rgba(18, 59, 48, 0.04);
	transition: border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.ash-service-card:hover {
	border-color: #a9c9ba;
	box-shadow: var(--ash-shadow);
	transform: translateY(-5px);
}

.ash-service-card ul,
.ash-phase ul,
.ash-check-list {
	list-style: none;
	margin: 22px 0 0;
	padding: 0;
}

.ash-service-card li,
.ash-check-list li {
	border-top: 1px solid var(--ash-line);
	color: var(--ash-muted);
	padding: 10px 0;
}

.ash-service-card li::before,
.ash-check-list li::before {
	color: var(--ash-green);
	content: "✓";
	font-weight: 900;
	margin-inline-end: 9px;
}

.ash-method-grid {
	display: grid;
	gap: 1px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ash-dark .ash-phase {
	background: rgba(255, 255, 255, 0.045);
	border-color: rgba(255, 255, 255, 0.1);
	border-radius: 0;
}

.ash-phase-output {
	color: var(--ash-green) !important;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ash-dark .ash-phase-output {
	color: var(--ash-lime) !important;
}

.ash-split {
	align-items: center;
	display: grid;
	gap: 68px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ash-image-panel {
	background: var(--ash-mint);
	border-radius: 30px;
	padding: 34px;
}

.ash-image-panel img {
	border-radius: 18px;
	display: block;
	height: auto;
	width: 100%;
}

.ash-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-top: 24px;
}

.ash-tag {
	background: var(--ash-mint);
	border: 1px solid #d3e6dc;
	border-radius: 999px;
	color: var(--ash-green-dark);
	font-size: 12px;
	font-weight: 750;
	padding: 7px 12px;
}

.ash-dark .ash-tag {
	background: rgba(255, 255, 255, 0.07);
	border-color: rgba(255, 255, 255, 0.14);
	color: var(--ash-white);
}

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

.ash-certificate {
	background: var(--ash-white);
	border: 1px solid var(--ash-line);
	border-radius: 20px;
	overflow: hidden;
}

.ash-certificate a {
	display: block;
}

.ash-certificate img {
	aspect-ratio: 1.56 / 1;
	display: block;
	object-fit: cover;
	transition: transform 220ms ease;
	width: 100%;
}

.ash-certificate:hover img {
	transform: scale(1.025);
}

.ash-certificate-copy {
	padding: 22px;
}

.ash-certificate-copy h3 {
	font-size: 17px;
	margin: 0;
}

.ash-certificate-copy p {
	color: var(--ash-muted);
	font-size: 13px;
	margin: 8px 0 0;
}

.ash-client-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.ash-client-logo {
	align-items: center;
	background: var(--ash-white);
	border: 1px solid var(--ash-line);
	border-radius: 18px;
	display: flex;
	height: 130px;
	justify-content: center;
	padding: 20px;
}

.ash-client-logo img {
	filter: saturate(0.8);
	max-height: 78px;
	max-width: 100%;
	object-fit: contain;
}

.ash-case {
	background: linear-gradient(135deg, var(--ash-green-dark), var(--ash-green-deep));
	border-radius: 30px;
	color: var(--ash-white);
	display: grid;
	gap: 48px;
	grid-template-columns: 1.15fr 0.85fr;
	padding: 54px;
}
.ash-service-card h2,
.ash-phase h2 {
	color: inherit;
	font-size: 21px;
	font-weight: 800;
	line-height: 1.35;
	margin: 0;
}

.ash-card.ash-dark {
	background: rgba(255, 255, 255, 0.07);
	border-color: rgba(255, 255, 255, 0.14);
}

.ash-card.ash-dark p {
	color: rgba(255, 255, 255, 0.72);
}

.ash-case p {
	color: rgba(255, 255, 255, 0.74);
}

.ash-case aside {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 20px;
	padding: 26px;
}

.ash-note {
	background: #fff9e8;
	border: 1px solid #eedca5;
	border-radius: 18px;
	color: #655a35;
	font-size: 14px;
	margin-top: 28px;
	padding: 18px 20px;
}

.ash-cta {
	background: var(--ash-lime);
	border-radius: 30px;
	display: flex;
	gap: 32px;
	justify-content: space-between;
	padding: 48px 54px;
}

.ash-cta h2 {
	color: var(--ash-green-deep);
	font-size: clamp(28px, 3.7vw, 44px);
	font-weight: 800;
	letter-spacing: -0.04em;
	margin: 0;
}

.ash-cta p {
	color: #355044;
	margin: 12px 0 0;
	max-width: 700px;
}

.ash-cta .ash-button {
	align-self: center;
	background: var(--ash-green-deep);
	border-color: var(--ash-green-deep);
	color: var(--ash-white) !important;
	white-space: nowrap;
}

.ash-contact-grid {
	align-items: start;
	display: grid;
	gap: 58px;
	grid-template-columns: 0.78fr 1.22fr;
}

.ash-contact-card,
.ash-form-card {
	background: var(--ash-white);
	border: 1px solid var(--ash-line);
	border-radius: 28px;
	padding: 36px;
}

.ash-contact-card {
	background: var(--ash-green-deep);
	color: var(--ash-white);
	position: sticky;
	top: 112px;
}

.ash-contact-card p {
	color: rgba(255, 255, 255, 0.7);
}

.ash-contact-card h2 {
	color: var(--ash-white);
}

.ash-contact-link {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	color: var(--ash-white);
	display: block;
	font-weight: 750;
	padding-block: 14px;
}

.ash-contact-card .ash-contact-link:hover,
.ash-contact-card .ash-contact-link:focus-visible {
	color: #7fb5ff;
	outline: 0;
}

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

.ash-field-full {
	grid-column: 1 / -1;
}

.ash-field label {
	color: var(--ash-ink);
	display: block;
	font-size: 13px;
	font-weight: 800;
	margin-bottom: 8px;
}

.ash-field input,
.ash-field select,
.ash-field textarea {
	background: #fbfcfb;
	border: 1px solid #cad8d1;
	border-radius: 12px;
	color: var(--ash-ink);
	font: inherit;
	min-height: 50px;
	padding: 11px 14px;
	width: 100%;
}

.ash-field textarea {
	min-height: 150px;
	resize: vertical;
}

.ash-field input:focus,
.ash-field select:focus,
.ash-field textarea:focus {
	border-color: var(--ash-green);
	box-shadow: 0 0 0 3px rgba(46, 125, 91, 0.12);
	outline: 0;
}

.ash-consent {
	align-items: flex-start;
	display: flex;
	font-size: 13px;
	gap: 10px;
}

.ash-consent input {
	flex: 0 0 auto;
	height: 18px;
	margin-top: 4px;
	width: 18px;
}

.ash-honeypot {
	height: 0;
	overflow: hidden;
	position: absolute;
	width: 0;
}

.ash-form-status {
	border-radius: 12px;
	display: none;
	font-size: 14px;
	margin-top: 16px;
	padding: 12px 14px;
}

.ash-form-status.is-visible {
	display: block;
}

.ash-form-status.is-success {
	background: #e7f7ed;
	color: #215e3c;
}

.ash-form-status.is-error {
	background: #fff0ef;
	color: #8c302c;
}

.ash-footer {
	background: #081f1a;
	color: var(--ash-white);
	padding-block: 70px 24px;
}

.ash-footer-grid {
	display: grid;
	gap: 42px;
	grid-template-columns: 1.6fr repeat(3, 1fr);
}

.ash-footer h2 {
	color: var(--ash-white);
	font-size: 14px;
	font-weight: 800;
	margin: 0 0 18px;
}

.ash-footer a {
	color: rgba(255, 255, 255, 0.68);
	display: block;
	font-size: 13px;
	margin: 9px 0;
}

.ash-footer a:hover {
	color: var(--ash-lime);
}

.ash-footer-brand img {
	background: var(--ash-white);
	border-radius: 12px;
	padding: 4px 8px;
}

/* ASH Infinity visual identity alignment */
:root {
	--ash-ink: #041c4a;
	--ash-muted: #5d6b82;
	--ash-green: #0d6eff;
	--ash-green-dark: #041c4a;
	--ash-green-deep: #041c4a;
	--ash-lime: #0d6eff;
	--ash-mint: #eef4ff;
	--ash-sand: #fafbfd;
	--ash-white: #ffffff;
	--ash-line: #e9edf5;
	--ash-shadow: 0 12px 35px rgba(4, 28, 74, 0.12);
	--ash-radius: 22px;
}

body.ash-site {
	background: #fafbfd;
	color: #041c4a;
	font-family: "Inter", Arial, sans-serif;
	font-weight: 400;
}

body.ash-site.ash-ar,
body.ash-ar {
	font-family: "IBM Plex Sans Arabic", Tahoma, Arial, sans-serif;
	font-weight: 400;
}

.ash-container {
	max-width: 1180px;
	padding-inline: 22px;
}

.ash-header {
	background: rgba(255, 255, 255, 0.92);
	border: 0;
	border-radius: 22px;
	box-shadow: 0 12px 35px rgba(4, 28, 74, 0.12);
	margin: 14px 22px 0;
	top: 14px;
}

.ash-nav-wrap {
	min-height: 78px;
	padding-inline: 18px;
}

.ash-brand {
	gap: 10px;
}

.ash-brand img {
	background: #fff;
	border: 1px solid #dfe7f3;
	border-radius: 50%;
	height: 54px;
	width: 54px;
}

.ash-brand-copy {
	display: flex;
	flex-direction: column;
	line-height: 1.22;
}

.ash-brand-copy strong {
	color: #041c4a;
	font-size: 15px;
	font-weight: 800;
}

.ash-brand-copy small {
	color: #5d6b82;
	font-size: 9px;
	font-weight: 650;
}

.ash-navigation {
	gap: 27px;
}

.ash-navigation > a:not(.ash-button) {
	color: #041c4a;
	font-size: 14px;
	font-weight: 700;
	padding-block: 24px 21px;
}

.ash-navigation > a:not(.ash-button)::after {
	background: #0d6eff;
	bottom: 15px;
}

.ash-navigation > a:not(.ash-button):hover,
.ash-navigation > a.is-active {
	color: #0d6eff;
}

.ash-button {
	background: linear-gradient(135deg, #041c4a 0%, #0d6eff 100%);
	border: 0;
	border-radius: 999px;
	box-shadow: 0 14px 30px rgba(13, 110, 255, 0.25);
	color: #fff !important;
	font-weight: 700;
	min-height: 48px;
	padding: 10px 20px;
}

.ash-button:hover {
	background: linear-gradient(135deg, #0b2d68 0%, #3487ff 100%);
	box-shadow: 0 18px 38px rgba(13, 110, 255, 0.34);
}

.ash-button-small {
	min-height: 44px;
	padding: 9px 17px;
}

.ash-button-outline,
.ash-hero .ash-button-outline {
	background: #f3f3f3;
	border: 1px solid #e4e7ee;
	box-shadow: 0 10px 24px rgba(4, 28, 74, 0.08);
	color: #383838 !important;
}

.ash-dark .ash-button-outline {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.24);
	color: #fff !important;
}

.ash-link {
	color: #0d6eff;
}

.ash-hero {
	background: linear-gradient(135deg, #fafbfd 0%, #e9edf5 58%, #cfe0ff 100%);
	color: #041c4a;
	padding-block: 112px 70px;
}

.ash-hero::after {
	border-color: rgba(13, 110, 255, 0.14);
}

.ash-hero-grid {
	gap: 56px;
	grid-template-columns: minmax(0, 0.96fr) minmax(420px, 1.04fr);
}

.ash-hero-simple .ash-hero-grid {
	grid-template-columns: minmax(0, 1fr) minmax(290px, 0.52fr);
}

.ash-eyebrow,
.ash-hero .ash-eyebrow {
	color: #0d6eff;
	font-weight: 800;
}

.ash-eyebrow::before {
	background: #0d6eff;
}

.ash-dark .ash-eyebrow {
	color: #7fb5ff;
}

.ash-display {
	color: #171717;
	font-size: clamp(42px, 4.45vw, 58px);
	font-weight: 800;
	letter-spacing: -0.035em;
	line-height: 1.2;
}

.ash-ar .ash-display {
	letter-spacing: 0;
	line-height: 1.28;
}

.ash-lead {
	color: #5d6b82;
	font-size: clamp(17px, 1.7vw, 20px);
}

.ash-browser {
	background: rgba(255, 255, 255, 0.75);
	border: 1px solid rgba(4, 28, 74, 0.1);
	box-shadow: 0 26px 58px rgba(4, 28, 74, 0.2);
}

.ash-browser-bar span {
	background: #0d6eff;
}

.ash-trust,
.ash-trust-item {
	border-color: #e9edf5;
}

.ash-trust-mark {
	color: #0d6eff;
	display: block;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.2;
}

.ash-check {
	background: #eef4ff;
	color: #0d6eff;
}

.ash-section {
	padding-block: 90px;
}

.ash-section-soft {
	background: linear-gradient(#fafbfd, #e9edf5);
}

.ash-section-mint {
	background: #eef4ff;
}

.ash-dark {
	background: linear-gradient(160deg, #041c4a 0%, #0b1120 100%);
	color: #fff;
}

.ash-kicker,
.ash-card-number,
.ash-phase-output {
	color: #0d6eff !important;
}

.ash-heading {
	font-weight: 800;
	letter-spacing: -0.03em;
}

.ash-ar .ash-heading {
	letter-spacing: 0;
	line-height: 1.35;
}

.ash-card,
.ash-service-card,
.ash-feature,
.ash-phase,
.ash-certificate,
.ash-client-logo,
.ash-contact-card,
.ash-form-card {
	border-color: #e9edf5;
	border-radius: 22px;
	box-shadow: 0 10px 28px rgba(4, 28, 74, 0.06);
}

.ash-service-card:hover {
	border-color: #bfd3f4;
	box-shadow: 0 18px 42px rgba(4, 28, 74, 0.13);
}

.ash-card.ash-dark {
	background: linear-gradient(160deg, #041c4a 0%, #0b1120 100%);
	border-color: rgba(255, 255, 255, 0.14);
}

.ash-dark .ash-phase-output {
	color: #7fb5ff !important;
}

.ash-tag {
	background: #eef4ff;
	border-color: #d7e5fb;
	color: #041c4a;
}

.ash-image-panel {
	background: rgba(255, 255, 255, 0.55);
	border: 1px solid rgba(4, 28, 74, 0.08);
}

.ash-case {
	background: linear-gradient(160deg, #041c4a 0%, #0b1120 100%);
}

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

.ash-project-card {
	background: #fff;
	border: 1px solid #e9edf5;
	border-radius: 26px;
	box-shadow: 0 16px 38px rgba(4, 28, 74, 0.08);
	display: flex;
	flex-direction: column;
	padding: 30px;
}

.ash-project-card-featured {
	background: linear-gradient(145deg, #eef4ff 0%, #fff 72%);
	border-color: #cfe0ff;
}

.ash-project-top {
	align-items: center;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-bottom: 26px;
}

.ash-project-top img {
	height: 72px;
	max-width: 170px;
	object-fit: contain;
	object-position: center;
}

.ash-project-status {
	background: #eef4ff;
	border: 1px solid #cfe0ff;
	border-radius: 999px;
	color: #074fbb;
	font-size: 11px;
	font-weight: 700;
	padding: 8px 12px;
	white-space: nowrap;
}

.ash-project-status.is-live {
	background: #e9f8ef;
	border-color: #bde5cb;
	color: #17673a;
}

.ash-project-card h3 {
	color: #041c4a;
	font-size: 25px;
	font-weight: 800;
	line-height: 1.45;
	margin: 0;
}

.ash-project-card > p:not(.ash-eyebrow) {
	color: #5d6b82;
	margin: 14px 0 0;
}

.ash-founder-metric {
	align-items: baseline;
	display: flex;
	gap: 14px;
	margin-top: 28px;
}

.ash-founder-metric strong {
	color: #0d6eff;
	font-size: 52px;
	font-weight: 800;
	line-height: 1;
}

.ash-founder-metric span {
	color: #334b75;
	font-weight: 700;
}

.ash-founder-feature p {
	font-size: 17px;
	line-height: 1.95;
}

.ash-case-with-logo {
	align-items: start;
}

.ash-case-logo {
	background: #fff;
	border-radius: 16px;
	display: block;
	height: 150px;
	margin-bottom: 24px;
	object-fit: contain;
	padding: 18px;
	width: 100%;
}

.ash-project-detail-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 28px 0;
}

.ash-project-detail {
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	padding-top: 18px;
}

.ash-project-detail h3 {
	font-size: 16px;
}

.ash-project-detail p {
	font-size: 14px;
	margin-top: 8px;
}

.ash-case-secondary {
	background: #fff;
	border: 1px solid #e9edf5;
	box-shadow: 0 16px 38px rgba(4, 28, 74, 0.08);
	color: #041c4a;
}

.ash-case-secondary p {
	color: #5d6b82;
}

.ash-case-secondary aside {
	background: #eef4ff;
	border-color: #d7e5fb;
}

.ash-note {
	background: #eef4ff;
	border-color: #cfe0ff;
	color: #334b75;
}

.ash-cta {
	background: linear-gradient(135deg, #eef4ff, #ffffff);
	border: 1px solid #dbe7fa;
	box-shadow: 0 18px 45px rgba(4, 28, 74, 0.08);
}

.ash-cta h2 {
	color: #041c4a;
}

.ash-cta p {
	color: #5d6b82;
}

.ash-cta .ash-button {
	background: linear-gradient(135deg, #041c4a 0%, #0d6eff 100%);
}

.ash-contact-card {
	background: linear-gradient(160deg, #041c4a 0%, #0b1120 100%);
}

.ash-field input:focus,
.ash-field select:focus,
.ash-field textarea:focus {
	border-color: #0d6eff;
	box-shadow: 0 0 0 3px rgba(13, 110, 255, 0.12);
}

.ash-form-status.is-success {
	background: #eef4ff;
	color: #074fbb;
}

.ash-footer {
	background: #041c4a;
}

.ash-footer-brand img {
	border-radius: 50%;
	height: 58px;
	padding: 0;
	width: 58px;
}

.ash-footer a:hover {
	color: #7fb5ff;
}

@media (max-width: 1040px) {
	.ash-header {
		margin-inline: 12px;
		top: 10px;
	}

	.ash-navigation {
		border-radius: 0 0 20px 20px;
		top: 78px;
	}
}

@media (max-width: 720px) {
	.ash-header {
		margin: 8px 8px 0;
	}

	.ash-nav-wrap {
		min-height: 70px;
	}

	.ash-brand img {
		height: 48px;
		width: 48px;
	}

	.ash-brand-copy small {
		display: none;
	}

	.ash-navigation {
		top: 70px;
	}

	.ash-hero {
		padding-block: 72px 58px;
	}

	.ash-display,
	.ash-ar .ash-display {
		font-size: 40px;
	}
}
.ash-footer-brand p {
	color: rgba(255, 255, 255, 0.66);
	font-size: 14px;
	max-width: 350px;
}

.ash-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	font-size: 11px;
	gap: 24px;
	justify-content: space-between;
	margin-top: 50px;
	padding-top: 22px;
}

.ash-footer-bottom p {
	color: rgba(255, 255, 255, 0.5);
	margin: 0;
}

@media (max-width: 1040px) {
	.ash-menu-toggle {
		display: flex;
	}

	.ash-navigation {
		align-items: stretch;
		background: var(--ash-white);
		border-bottom: 1px solid var(--ash-line);
		box-shadow: 0 24px 40px rgba(18, 59, 48, 0.12);
		display: none;
		flex-direction: column;
		gap: 0;
		inset-inline: 0;
		padding: 12px 24px 24px;
		position: absolute;
		top: 82px;
	}

	.ash-navigation.is-open {
		display: flex;
	}

	.ash-navigation > a:not(.ash-button) {
		border-bottom: 1px solid var(--ash-line);
		padding: 12px 2px;
	}

	.ash-navigation > a:not(.ash-button)::after {
		display: none;
	}

	.ash-navigation .ash-button {
		margin-top: 14px;
	}

	.ash-hero-grid,
	.ash-hero-simple .ash-hero-grid,
	.ash-split,
	.ash-contact-grid,
	.ash-case,
	.ash-project-grid {
		grid-template-columns: 1fr;
	}

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

	.ash-client-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

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

	.ash-contact-card {
		position: static;
	}
}

@media (max-width: 720px) {
	.ash-container {
		padding-inline: 18px;
	}

	.ash-brand img {
		height: 46px;
	}

	.ash-hero {
		padding-block: 66px 56px;
	}

	.ash-hero-grid {
		gap: 42px;
	}

	.ash-display,
	.ash-ar .ash-display {
		font-size: 40px;
	}

	.ash-section {
		padding-block: 68px;
	}

	.ash-section-head,
	.ash-cta,
	.ash-footer-bottom {
		align-items: stretch;
		flex-direction: column;
	}

	.ash-grid-2,
	.ash-grid-3,
	.ash-grid-4,
	.ash-method-grid,
	.ash-cert-grid,
	.ash-form-grid {
		grid-template-columns: 1fr;
	}

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

	.ash-trust-item:nth-child(2) {
		border-inline-end: 0;
	}

	.ash-trust-item:nth-child(-n + 2) {
		border-bottom: 1px solid var(--ash-line);
	}

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

	.ash-case,
	.ash-project-card,
	.ash-cta,
	.ash-contact-card,
	.ash-form-card {
		border-radius: 22px;
		padding: 28px;
	}

	.ash-project-detail-grid {
		grid-template-columns: 1fr;
	}

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

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* Public article pages */
.ash-breadcrumb { color: var(--ash-muted); display: flex; flex-wrap: wrap; font-size: 14px; gap: 9px; margin-bottom: 28px; }
.ash-breadcrumb a { color: var(--ash-green-dark); font-weight: 700; }
.ash-article-grid { display: grid; gap: 24px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ash-article-card { background: var(--ash-white); border: 1px solid var(--ash-line); border-radius: var(--ash-radius); display: flex; flex-direction: column; min-width: 0; overflow: hidden; }
.ash-article-image { aspect-ratio: 1.7 / 1; background: var(--ash-mint); display: block; overflow: hidden; }
.ash-article-image img, .ash-article-featured img { display: block; height: 100%; object-fit: cover; width: 100%; }
.ash-article-card-copy { display: flex; flex: 1; flex-direction: column; padding: 25px; }
.ash-article-card h2, .ash-article-card h3 { font-size: 22px; line-height: 1.35; margin: 14px 0 0; }
.ash-article-card h2 a, .ash-article-card h3 a { color: var(--ash-ink); }
.ash-article-card p { color: var(--ash-muted); margin: 12px 0 20px; }
.ash-article-card .ash-link { margin-top: auto; }
.ash-article-meta { align-items: center; color: var(--ash-muted); display: flex; flex-wrap: wrap; font-size: 13px; font-weight: 700; gap: 10px; }
.ash-article-meta span { background: var(--ash-mint); border-radius: 999px; color: var(--ash-green-dark); padding: 4px 10px; }
.ash-empty-state { background: var(--ash-white); border: 1px solid var(--ash-line); border-radius: var(--ash-radius); color: var(--ash-muted); padding: 30px; }
.ash-pagination { align-items: center; display: flex; gap: 14px; justify-content: center; margin-top: 38px; }
.ash-pagination a, .ash-pagination span { border: 1px solid var(--ash-line); border-radius: 10px; color: var(--ash-green-dark); font-weight: 800; min-width: 42px; padding: 7px 12px; text-align: center; }
.ash-article-header { background: var(--ash-mint); padding: 66px 0 44px; }
.ash-article-header .ash-heading { margin-top: 18px; }
.ash-article-excerpt { color: var(--ash-muted); font-size: 20px; line-height: 1.85; margin: 20px 0 0; }
.ash-article-author { color: var(--ash-muted); font-size: 14px; margin: 18px 0 0; }
.ash-article-featured { aspect-ratio: 1.8 / 1; border-radius: var(--ash-radius); margin: 42px 0 40px; overflow: hidden; }
.ash-article-content { color: var(--ash-ink); font-size: 18px; line-height: 1.95; overflow-wrap: anywhere; }
.ash-article-content > :first-child { margin-top: 0; }
.ash-article-content h2, .ash-article-content h3 { line-height: 1.4; margin-top: 38px; }
.ash-article-content img { height: auto; max-width: 100%; }
.ash-article-content table { display: block; max-width: 100%; overflow-x: auto; }
.ash-article-services { margin-bottom: 34px; }
.ash-article-services h2 { font-size: 22px; margin: 0 0 16px; }
.ash-article-services .ash-tag { display: inline-block; margin-inline-end: 8px; }
.visually-hidden { height: 1px; margin: -1px; overflow: hidden; position: absolute; width: 1px; clip: rect(0, 0, 0, 0); }
@media (max-width: 900px) { .ash-article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .ash-article-grid { grid-template-columns: 1fr; } .ash-article-header { padding: 42px 0 30px; } .ash-article-featured { margin: 28px 0; } .ash-article-content { font-size: 17px; } }
