/* Waleed AL-Samet Portfolio — front-end design system */
:root {
	--was-primary: #6d5dfb;
	--was-accent: #20d6c7;
	--was-dark: #07111f;
	--was-light: #f6f8fc;
	--was-container: 1240px;
	--was-radius-sm: 14px;
	--was-radius-md: 22px;
	--was-radius-lg: 34px;
	--was-ease: cubic-bezier(.2,.7,.2,1);
}

html[data-was-theme="dark"] {
	color-scheme: dark;
}

html[data-was-theme="light"] {
	color-scheme: light;
}

html {
	scroll-behavior: smooth;
}

body.was-body {
	margin: 0 !important;
	padding: 0 !important;
	background: var(--was-dark) !important;
}

html[data-was-theme="light"] body.was-body {
	background: var(--was-light) !important;
}

.was-site {
	--was-bg: var(--was-dark);
	--was-bg-soft: #0a1627;
	--was-surface: rgba(15, 27, 46, .78);
	--was-surface-solid: #0f1b2e;
	--was-surface-elevated: #14233a;
	--was-text: #f8fafc;
	--was-heading: #fff;
	--was-muted: #a7b3c9;
	--was-faint: #78869f;
	--was-line: rgba(255, 255, 255, .1);
	--was-line-strong: rgba(255, 255, 255, .18);
	--was-glass: rgba(7, 17, 31, .72);
	--was-card-shadow: 0 24px 80px rgba(0, 0, 0, .28);
	position: relative;
	isolation: isolate;
	min-height: 100vh;
	overflow: hidden;
	overflow: clip;
	background:
		radial-gradient(circle at 11% 8%, color-mix(in srgb, var(--was-primary) 18%, transparent), transparent 31rem),
		radial-gradient(circle at 92% 13%, color-mix(in srgb, var(--was-accent) 13%, transparent), transparent 27rem),
		var(--was-bg);
	color: var(--was-text);
	font-family: "IBM Plex Sans Arabic", "IBM Plex Sans", system-ui, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

html[data-was-theme="light"] .was-site {
	--was-bg: var(--was-light);
	--was-bg-soft: #edf1f8;
	--was-surface: rgba(255, 255, 255, .78);
	--was-surface-solid: #fff;
	--was-surface-elevated: #f0f3f9;
	--was-text: #27354a;
	--was-heading: #081426;
	--was-muted: #62708a;
	--was-faint: #8591a6;
	--was-line: rgba(8, 20, 38, .09);
	--was-line-strong: rgba(8, 20, 38, .15);
	--was-glass: rgba(246, 248, 252, .82);
	--was-card-shadow: 0 24px 75px rgba(31, 46, 76, .11);
}

.was-site,
.was-site * {
	box-sizing: border-box;
}

.was-site img,
.was-site svg {
	display: block;
}

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

.was-site a {
	color: inherit;
	text-decoration: none;
}

.was-site button,
.was-site input,
.was-site textarea,
.was-site select {
	font: inherit;
}

.was-site button,
.was-site select {
	cursor: pointer;
}

.was-site h1,
.was-site h2,
.was-site h3,
.was-site p,
.was-site ul,
.was-site ol,
.was-site blockquote {
	margin-top: 0;
}

.was-site h1,
.was-site h2,
.was-site h3 {
	color: var(--was-heading);
	font-weight: 650;
	letter-spacing: -.035em;
	line-height: 1.16;
}

.was-container {
	width: min(calc(100% - 40px), var(--was-container));
	margin-inline: auto;
}

.was-section {
	position: relative;
	padding-block: clamp(88px, 10vw, 150px);
	scroll-margin-top: 90px;
}

.was-skip-link {
	position: fixed;
	inset-block-start: 10px;
	inset-inline-start: 16px;
	z-index: 99999;
	padding: 9px 14px;
	border-radius: 9px;
	background: var(--was-heading);
	color: var(--was-bg) !important;
	transform: translateY(-150%);
	transition: transform .2s;
}

.was-skip-link:focus {
	transform: translateY(0);
}

.was-site :focus-visible {
	outline: 3px solid color-mix(in srgb, var(--was-accent) 72%, white);
	outline-offset: 4px;
}

/* Ambient decoration */
.was-ambient {
	position: absolute;
	inset: 0;
	z-index: -1;
	overflow: hidden;
	pointer-events: none;
}

.was-glow {
	position: absolute;
	width: 48rem;
	aspect-ratio: 1;
	border-radius: 50%;
	filter: blur(95px);
	opacity: .15;
}

.was-glow-one {
	inset-block-start: 21%;
	inset-inline-start: -31rem;
	background: var(--was-primary);
}

.was-glow-two {
	inset-block-start: 55%;
	inset-inline-end: -27rem;
	background: var(--was-accent);
}

.was-grid-plane {
	position: absolute;
	inset-block-start: 0;
	inset-inline: 0;
	height: 820px;
	background-image:
		linear-gradient(var(--was-line) 1px, transparent 1px),
		linear-gradient(90deg, var(--was-line) 1px, transparent 1px);
	background-size: 64px 64px;
	-webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .55), transparent 90%);
	mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .55), transparent 90%);
	opacity: .18;
	transform: perspective(650px) rotateX(61deg) translateY(-260px) scale(1.6);
	transform-origin: top;
}

.was-dashed-path {
	position: absolute;
	inset-block-start: 1080px;
	inset-inline-start: -8%;
	width: 52%;
	height: 240px;
	border: 1px dashed color-mix(in srgb, var(--was-primary) 45%, transparent);
	border-color: color-mix(in srgb, var(--was-primary) 45%, transparent) transparent transparent transparent;
	border-radius: 50%;
	transform: rotate(-7deg);
}

.was-orb {
	position: absolute;
	width: 15px;
	aspect-ratio: 1;
	border: 3px solid var(--was-accent);
	border-radius: 50%;
	box-shadow: 0 0 24px var(--was-accent);
}

.was-orb-one {
	inset-block-start: 36%;
	inset-inline-end: 9%;
}

.was-orb-two {
	inset-block-start: 67%;
	inset-inline-start: 7%;
	width: 9px;
	border-color: var(--was-primary);
	box-shadow: 0 0 20px var(--was-primary);
}

/* Header */
.was-header {
	position: fixed;
	inset-block-start: 0;
	inset-inline: 0;
	z-index: 1000;
	padding-block: 17px;
	border-bottom: 1px solid transparent;
	transition: padding .3s var(--was-ease), background .3s, border-color .3s, box-shadow .3s;
}

.admin-bar .was-header {
	inset-block-start: 32px;
}

.was-header.is-scrolled {
	padding-block: 10px;
	border-color: var(--was-line);
	background: var(--was-glass);
	box-shadow: 0 12px 40px rgba(0, 0, 0, .08);
	-webkit-backdrop-filter: blur(22px) saturate(150%);
	backdrop-filter: blur(22px) saturate(150%);
}

.was-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}

.was-brand {
	display: inline-flex;
	align-items: center;
	min-width: max-content;
	gap: 11px;
}

.was-brand img {
	width: 46px;
	height: 46px;
	object-fit: contain;
}

.was-wordmark {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.was-wordmark strong {
	color: var(--was-heading);
	font-family: "IBM Plex Sans", "IBM Plex Sans Arabic", sans-serif;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: -.02em;
}

.was-wordmark small {
	margin-top: 4px;
	color: var(--was-muted);
	font-size: 9px;
	font-weight: 500;
	letter-spacing: .04em;
}

.was-nav {
	display: flex;
	align-items: center;
	gap: clamp(18px, 2.4vw, 35px);
	margin-inline: auto;
}

.was-nav a {
	position: relative;
	padding-block: 10px;
	color: var(--was-muted);
	font-size: 14px;
	font-weight: 500;
	transition: color .2s;
}

.was-nav a::after {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	inset-block-end: 4px;
	width: 0;
	height: 2px;
	border-radius: 2px;
	background: linear-gradient(90deg, var(--was-primary), var(--was-accent));
	transition: width .25s var(--was-ease);
}

.was-nav a:hover,
.was-nav a.is-active {
	color: var(--was-heading);
}

.was-nav a:hover::after,
.was-nav a.is-active::after {
	width: 100%;
}

.was-header-actions {
	display: flex;
	align-items: center;
	gap: 9px;
}

.was-lang-switch,
.was-theme-toggle,
.was-menu-toggle {
	display: inline-grid;
	place-items: center;
	width: 41px;
	height: 41px;
	padding: 0;
	border: 1px solid var(--was-line);
	border-radius: 50%;
	background: var(--was-surface);
	color: var(--was-heading);
	transition: transform .2s, border-color .2s, background .2s;
}

.was-lang-switch {
	font-family: "IBM Plex Sans", sans-serif;
	font-size: 12px;
	font-weight: 700;
}

.was-lang-switch:hover,
.was-theme-toggle:hover {
	transform: translateY(-2px);
	border-color: color-mix(in srgb, var(--was-primary) 60%, var(--was-line));
}

.was-theme-toggle svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
}

html[data-was-theme="dark"] .was-theme-toggle .was-moon,
html[data-was-theme="light"] .was-theme-toggle .was-sun {
	display: none;
}

.was-header-cta {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	min-height: 43px;
	padding-inline: 17px;
	border: 1px solid color-mix(in srgb, var(--was-primary) 65%, transparent);
	border-radius: 999px;
	background: linear-gradient(115deg, color-mix(in srgb, var(--was-primary) 20%, transparent), color-mix(in srgb, var(--was-accent) 12%, transparent));
	color: var(--was-heading) !important;
	font-size: 13px;
	font-weight: 600;
	transition: transform .2s, box-shadow .2s;
}

.was-header-cta:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 30px color-mix(in srgb, var(--was-primary) 18%, transparent);
}

.was-menu-toggle,
.was-mobile-nav {
	display: none;
}

/* Hero */
.was-hero {
	position: relative;
	min-height: 100svh;
	padding-block: clamp(125px, 13vh, 170px) 44px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.was-hero::before {
	content: "";
	position: absolute;
	inset-block-start: 13%;
	inset-inline-end: -9%;
	width: 48%;
	aspect-ratio: 1;
	border: 1px solid color-mix(in srgb, var(--was-accent) 17%, transparent);
	border-radius: 50%;
	box-shadow: inset 0 0 120px color-mix(in srgb, var(--was-accent) 5%, transparent);
	pointer-events: none;
}

.was-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(420px, .82fr);
	align-items: center;
	gap: clamp(36px, 7vw, 100px);
}

.was-hero-copy {
	position: relative;
	z-index: 3;
}

.was-eyebrow,
.was-section-kicker {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 20px;
	color: color-mix(in srgb, var(--was-accent) 82%, var(--was-text));
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .035em;
}

.was-eyebrow span {
	width: 30px;
	height: 1px;
	background: var(--was-accent);
	box-shadow: 0 0 12px var(--was-accent);
}

.was-section-kicker::before {
	content: "✦";
	color: var(--was-primary);
	font-size: 15px;
}

.was-hero h1 {
	max-width: 820px;
	margin-bottom: 26px;
	font-size: clamp(42px, 5.5vw, 79px);
	line-height: 1.13;
}

.was-hero h1 em {
	display: inline;
	background: linear-gradient(110deg, color-mix(in srgb, var(--was-primary) 86%, white), var(--was-accent));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-style: normal;
	white-space: nowrap;
}

.was-hero-description {
	max-width: 710px;
	margin-bottom: 31px;
	color: var(--was-muted);
	font-size: clamp(16px, 1.35vw, 19px);
	line-height: 1.9;
}

.was-hero-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 13px;
}

.was-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 13px;
	min-height: 54px;
	padding-inline: 24px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 650;
	line-height: 1;
	transition: transform .25s var(--was-ease), box-shadow .25s, background .25s, border-color .25s;
}

.was-button svg {
	width: 19px;
	height: 19px;
	transition: transform .25s var(--was-ease);
}

[dir="rtl"] .was-button svg,
[dir="rtl"] .was-text-link svg {
	transform: rotate(180deg);
}

.was-button:hover {
	transform: translateY(-3px);
}

.was-button:hover svg {
	transform: translateX(4px);
}

[dir="rtl"] .was-button:hover svg {
	transform: rotate(180deg) translateX(4px);
}

.was-button-primary {
	background: linear-gradient(120deg, var(--was-primary), color-mix(in srgb, var(--was-primary) 58%, var(--was-accent)));
	box-shadow: 0 16px 38px color-mix(in srgb, var(--was-primary) 28%, transparent), inset 0 1px rgba(255, 255, 255, .25);
	color: #fff !important;
}

.was-button-primary:hover {
	box-shadow: 0 20px 46px color-mix(in srgb, var(--was-primary) 38%, transparent);
}

.was-button-ghost {
	border-color: var(--was-line-strong);
	background: color-mix(in srgb, var(--was-surface) 64%, transparent);
	color: var(--was-heading) !important;
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}

.was-button-ghost:hover {
	border-color: color-mix(in srgb, var(--was-accent) 45%, var(--was-line));
	background: var(--was-surface);
}

.was-availability {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 24px;
	color: var(--was-muted);
	font-size: 12px;
}

.was-live-dot {
	position: relative;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #41df91;
	box-shadow: 0 0 0 4px rgba(65, 223, 145, .12);
}

.was-live-dot::after {
	content: "";
	position: absolute;
	inset: -5px;
	border: 1px solid rgba(65, 223, 145, .45);
	border-radius: inherit;
	animation: was-ping 2s infinite;
}

.was-hero-visual {
	position: relative;
	z-index: 2;
	min-height: 650px;
	display: grid;
	place-items: end center;
	perspective: 1000px;
}

.was-portrait-frame {
	position: relative;
	z-index: 3;
	width: min(100%, 470px);
	height: 640px;
	overflow: hidden;
	border: 1px solid var(--was-line-strong);
	border-radius: 50% 50% 35% 35% / 34% 34% 24% 24%;
	background:
		radial-gradient(circle at 55% 34%, color-mix(in srgb, var(--was-primary) 26%, transparent), transparent 38%),
		linear-gradient(150deg, color-mix(in srgb, var(--was-surface-elevated) 80%, transparent), color-mix(in srgb, var(--was-accent) 9%, var(--was-bg)));
	box-shadow: var(--was-card-shadow), inset 0 1px rgba(255, 255, 255, .12);
	transform: translateZ(0);
}

.was-portrait-frame::after {
	content: "";
	position: absolute;
	inset-inline: 9%;
	inset-block-end: -8%;
	height: 32%;
	border-radius: 50%;
	background: var(--was-accent);
	filter: blur(70px);
	opacity: .15;
}

.was-portrait-frame img {
	position: absolute;
	z-index: 2;
	inset-inline-start: 50%;
	inset-block-end: -4px;
	width: auto;
	height: 94%;
	max-width: none;
	object-fit: contain;
	transform: translateX(-50%);
	transform-origin: bottom center;
	filter: drop-shadow(0 26px 26px rgba(0, 0, 0, .32));
}

[dir="rtl"] .was-portrait-frame img {
	transform: translateX(50%);
}

.was-portrait-shine {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(112deg, transparent 22%, rgba(255, 255, 255, .08) 44%, transparent 63%);
	transform: translateX(-80%);
	animation: was-shine 7s ease-in-out infinite;
}

.was-portrait-orbit {
	position: absolute;
	z-index: 1;
	inset-block-start: 50%;
	inset-inline-start: 50%;
	width: 590px;
	aspect-ratio: 1;
	border: 1px dashed color-mix(in srgb, var(--was-primary) 44%, transparent);
	border-radius: 50%;
	transform: translate(-50%, -48%);
	animation: was-rotate 38s linear infinite;
}

[dir="rtl"] .was-portrait-orbit {
	transform: translate(50%, -48%);
}

.was-portrait-orbit::before,
.was-portrait-orbit::after {
	content: "";
	position: absolute;
	border-radius: 50%;
}

.was-portrait-orbit::before {
	inset: 54px;
	border: 1px solid color-mix(in srgb, var(--was-accent) 20%, transparent);
}

.was-portrait-orbit::after {
	inset-block-start: 8%;
	inset-inline-start: 23%;
	width: 13px;
	aspect-ratio: 1;
	background: var(--was-accent);
	box-shadow: 0 0 24px var(--was-accent);
}

.was-portrait-orbit span {
	position: absolute;
	width: 7px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: var(--was-primary);
	box-shadow: 0 0 16px var(--was-primary);
}

.was-portrait-orbit span:nth-child(1) { inset-block-end: 19%; inset-inline-start: 8%; }
.was-portrait-orbit span:nth-child(2) { inset-block-start: 32%; inset-inline-end: 2%; width: 10px; background: var(--was-accent); }
.was-portrait-orbit span:nth-child(3) { inset-block-end: 2%; inset-inline-end: 30%; }

.was-floating-tag,
.was-experience-badge {
	position: absolute;
	z-index: 5;
	border: 1px solid var(--was-line-strong);
	background: color-mix(in srgb, var(--was-surface-solid) 82%, transparent);
	box-shadow: 0 18px 45px rgba(0, 0, 0, .18);
	-webkit-backdrop-filter: blur(15px);
	backdrop-filter: blur(15px);
}

.was-floating-tag {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	border-radius: 999px;
	color: var(--was-text);
	font-family: "IBM Plex Sans", "IBM Plex Sans Arabic", sans-serif;
	font-size: 11px;
	font-weight: 600;
	white-space: nowrap;
	animation: was-float 5s ease-in-out infinite;
}

.was-floating-tag span {
	color: var(--was-accent);
	font-size: 14px;
}

.was-tag-code { inset-block-start: 19%; inset-inline-start: -8%; }
.was-tag-ai { inset-block-start: 37%; inset-inline-end: -10%; animation-delay: -1.7s; }
.was-tag-design { inset-block-end: 17%; inset-inline-start: -13%; animation-delay: -3.1s; }

.was-experience-badge {
	inset-inline-end: -8%;
	inset-block-end: 9%;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border-radius: 16px;
}

.was-experience-badge strong {
	color: var(--was-heading);
	font-family: "IBM Plex Sans", sans-serif;
	font-size: 28px;
	line-height: 1;
}

.was-experience-badge sup {
	color: var(--was-accent);
	font-size: 13px;
}

.was-experience-badge span {
	max-width: 63px;
	color: var(--was-muted);
	font-size: 10px;
	line-height: 1.4;
}

.was-trust-strip {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 35px;
	padding: 17px 20px;
	border: 1px solid var(--was-line);
	border-radius: 17px;
	background: color-mix(in srgb, var(--was-surface) 60%, transparent);
	color: var(--was-muted);
	font-size: 11px;
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}

.was-trust-tech {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 22px;
}

.was-trust-tech b {
	color: var(--was-heading);
	font-family: "IBM Plex Sans", sans-serif;
	font-size: 12px;
	letter-spacing: .04em;
}

/* Shared section headings */
.was-section-heading {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(270px, 420px);
	align-items: end;
	gap: 42px;
	margin-bottom: clamp(45px, 6vw, 76px);
}

.was-section-heading h2,
.was-about h2,
.was-clients-heading h2,
.was-trust-intro h2,
.was-contact h2 {
	margin-bottom: 0;
	font-size: clamp(34px, 4.2vw, 59px);
}

.was-section-heading p {
	margin-bottom: 6px;
	color: var(--was-muted);
	font-size: 16px;
	line-height: 1.85;
}

/* About and evidence */
.was-about {
	border-block: 1px solid var(--was-line);
	background: linear-gradient(135deg, color-mix(in srgb, var(--was-surface-solid) 45%, transparent), transparent 58%);
}

.was-about-grid {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(480px, 1.1fr);
	align-items: start;
	gap: clamp(55px, 8vw, 110px);
}

.was-about h2 {
	margin-bottom: 28px;
}

.was-rich-text {
	color: var(--was-muted);
	font-size: 16px;
	line-height: 2;
}

.was-rich-text p {
	margin-bottom: 17px;
}

.was-about blockquote {
	position: relative;
	margin: 31px 0 0;
	padding: 21px 24px;
	border-inline-start: 2px solid var(--was-accent);
	border-radius: 0 var(--was-radius-sm) var(--was-radius-sm) 0;
	background: color-mix(in srgb, var(--was-accent) 6%, var(--was-surface));
	color: var(--was-heading);
	font-size: 14px;
	font-weight: 500;
}

[dir="rtl"] .was-about blockquote {
	border-radius: var(--was-radius-sm) 0 0 var(--was-radius-sm);
}

.was-about blockquote span {
	position: absolute;
	inset-block-start: -14px;
	inset-inline-start: 13px;
	color: var(--was-primary);
	font-family: Georgia, serif;
	font-size: 47px;
	line-height: 1;
	opacity: .55;
}

.was-evidence {
	display: grid;
	gap: 18px;
}

.was-stat-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 11px;
}

.was-stat-card {
	min-height: 126px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 18px;
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-sm);
	background: var(--was-surface);
	box-shadow: inset 0 1px rgba(255, 255, 255, .05);
}

.was-stat-card strong {
	color: var(--was-heading);
	font-family: "IBM Plex Sans", "IBM Plex Sans Arabic", sans-serif;
	font-size: clamp(28px, 3vw, 40px);
	line-height: 1;
}

.was-stat-card strong > span {
	background: linear-gradient(120deg, var(--was-heading), color-mix(in srgb, var(--was-accent) 72%, white));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.was-stat-card small {
	color: var(--was-muted);
	font-size: 10px;
	line-height: 1.5;
}

.was-capability-chart {
	padding: clamp(20px, 3vw, 32px);
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-md);
	background: var(--was-surface);
	box-shadow: var(--was-card-shadow), inset 0 1px rgba(255, 255, 255, .05);
}

.was-chart-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 27px;
}

.was-chart-heading > div:first-child {
	display: flex;
	flex-direction: column;
}

.was-chart-heading span,
.was-chart-key {
	color: var(--was-muted);
	font-size: 10px;
}

.was-chart-heading strong {
	margin-top: 3px;
	color: var(--was-heading);
	font-size: 15px;
}

.was-chart-key {
	display: flex;
	align-items: center;
	gap: 6px;
}

.was-chart-key i {
	width: 7px;
	height: 7px;
	border-radius: 2px;
	background: var(--was-accent);
	box-shadow: 0 0 10px var(--was-accent);
}

.was-chart-bars {
	display: grid;
	gap: 16px;
}

.was-chart-row > div:first-child {
	display: flex;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 6px;
	color: var(--was-muted);
	font-size: 11px;
}

.was-chart-row b {
	color: var(--was-heading);
	font-family: "IBM Plex Sans", sans-serif;
}

.was-bar {
	height: 7px;
	overflow: hidden;
	border-radius: 99px;
	background: color-mix(in srgb, var(--was-line) 65%, transparent);
}

.was-bar i {
	display: block;
	width: 0;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--was-primary), var(--was-accent));
	box-shadow: 0 0 15px color-mix(in srgb, var(--was-accent) 40%, transparent);
	transition: width 1.2s var(--was-ease);
}

.was-bar i.is-animated {
	width: var(--was-bar);
}

/* Services */
.was-services-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.was-service-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100%;
	overflow: hidden;
	padding: clamp(24px, 3vw, 34px);
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-md);
	background: linear-gradient(145deg, var(--was-surface), color-mix(in srgb, var(--was-surface-solid) 76%, transparent));
	box-shadow: inset 0 1px rgba(255, 255, 255, .04);
	transition: transform .35s var(--was-ease), border-color .35s, box-shadow .35s;
}

.was-service-card::before {
	content: "";
	position: absolute;
	inset-block-start: -90px;
	inset-inline-end: -90px;
	width: 180px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: var(--was-primary);
	filter: blur(75px);
	opacity: 0;
	transition: opacity .35s;
}

.was-service-card:hover {
	transform: translateY(-8px);
	border-color: color-mix(in srgb, var(--was-primary) 38%, var(--was-line));
	box-shadow: 0 30px 70px rgba(0, 0, 0, .16), inset 0 1px rgba(255, 255, 255, .08);
}

.was-service-card:hover::before {
	opacity: .2;
}

.was-service-top {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 25px;
}

.was-service-icon {
	display: grid;
	place-items: center;
	width: 49px;
	height: 49px;
	border: 1px solid color-mix(in srgb, var(--was-primary) 33%, var(--was-line));
	border-radius: 15px;
	background: linear-gradient(145deg, color-mix(in srgb, var(--was-primary) 18%, transparent), color-mix(in srgb, var(--was-accent) 7%, transparent));
	color: color-mix(in srgb, var(--was-primary) 65%, white);
}

.was-service-icon svg {
	width: 24px;
	height: 24px;
}

.was-service-number {
	color: var(--was-faint);
	font-family: "IBM Plex Sans", sans-serif;
	font-size: 11px;
	letter-spacing: .1em;
}

.was-service-card h3 {
	position: relative;
	margin-bottom: 13px;
	font-size: 22px;
}

.was-service-card > p {
	position: relative;
	margin-bottom: 21px;
	color: var(--was-muted);
	font-size: 13px;
	line-height: 1.8;
}

.was-service-card ul {
	position: relative;
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 17px 0 0;
	border-top: 1px solid var(--was-line);
	list-style: none;
}

.was-service-card li {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	color: var(--was-muted);
	font-size: 11px;
	line-height: 1.6;
}

.was-service-card li svg {
	flex: 0 0 auto;
	width: 14px;
	height: 14px;
	margin-top: 2px;
	color: var(--was-accent);
}

/* Work */
.was-work {
	border-block: 1px solid var(--was-line);
	background: color-mix(in srgb, var(--was-bg-soft) 55%, transparent);
}

.was-projects-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
}

.was-project-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-md);
	background: var(--was-surface);
	box-shadow: inset 0 1px rgba(255, 255, 255, .04);
	transition: transform .35s var(--was-ease), border-color .35s, box-shadow .35s;
}

.was-project-card:hover {
	transform: translateY(-7px);
	border-color: color-mix(in srgb, var(--project-accent) 42%, var(--was-line));
	box-shadow: 0 28px 70px rgba(0, 0, 0, .17);
}

.was-project-featured {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: 1.35fr .65fr;
}

.was-project-visual {
	position: relative;
	min-height: 325px;
	display: grid;
	place-items: center;
	overflow: hidden;
	border-block-end: 1px solid var(--was-line);
	background:
		radial-gradient(circle at 75% 20%, color-mix(in srgb, var(--project-accent) 35%, transparent), transparent 42%),
		linear-gradient(135deg, color-mix(in srgb, var(--project-accent) 12%, var(--was-surface-solid)), var(--was-bg-soft));
}

.was-project-featured .was-project-visual {
	min-height: 430px;
	border-block-end: 0;
	border-inline-end: 1px solid var(--was-line);
}

[dir="rtl"] .was-project-featured .was-project-visual {
	border-inline-end: 0;
	border-inline-start: 1px solid var(--was-line);
}

.was-project-grid {
	position: absolute;
	inset: 0;
	background-image: linear-gradient(var(--was-line) 1px, transparent 1px), linear-gradient(90deg, var(--was-line) 1px, transparent 1px);
	background-size: 38px 38px;
	-webkit-mask-image: radial-gradient(circle at center, #000, transparent 80%);
	mask-image: radial-gradient(circle at center, #000, transparent 80%);
	opacity: .35;
}

.was-project-visual::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(115deg, transparent 30%, rgba(255, 255, 255, .08) 47%, transparent 64%);
	transform: translateX(-100%);
	transition: transform .9s var(--was-ease);
}

.was-project-card:hover .was-project-visual::after {
	transform: translateX(100%);
}

.was-project-logo {
	position: relative;
	z-index: 2;
	width: min(65%, 330px);
	min-height: 130px;
	display: grid;
	place-items: center;
	padding: 25px;
	border: 1px solid var(--was-line-strong);
	border-radius: 21px;
	background: rgba(255, 255, 255, .94);
	box-shadow: 0 24px 60px rgba(0, 0, 0, .2);
	transform: rotate(-1deg);
	transition: transform .5s var(--was-ease);
}

.was-project-card:hover .was-project-logo {
	transform: rotate(0) scale(1.035);
}

.was-project-logo img {
	width: 100%;
	max-height: 100px;
	object-fit: contain;
}

.was-project-visual.is-dark-logo .was-project-logo {
	background: #10243d;
}

.was-project-index {
	position: absolute;
	inset-block-start: 18px;
	inset-inline-start: 21px;
	color: color-mix(in srgb, var(--project-accent) 70%, var(--was-heading));
	font-family: "IBM Plex Sans", sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
}

.was-project-launch {
	position: absolute;
	z-index: 3;
	inset-block-start: 17px;
	inset-inline-end: 17px;
	display: grid;
	place-items: center;
	width: 43px;
	height: 43px;
	border: 1px solid var(--was-line-strong);
	border-radius: 50%;
	background: var(--was-glass);
	color: var(--was-heading);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}

.was-project-launch svg {
	width: 18px;
	height: 18px;
}

.was-project-content {
	padding: 25px 27px 29px;
}

.was-project-featured .was-project-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(30px, 4vw, 52px);
}

.was-project-content > span {
	display: inline-block;
	margin-bottom: 8px;
	color: color-mix(in srgb, var(--project-accent) 73%, var(--was-text));
	font-size: 10px;
	font-weight: 650;
	letter-spacing: .04em;
}

.was-project-content h3 {
	margin-bottom: 11px;
	font-size: clamp(22px, 2.5vw, 31px);
}

.was-project-content h3 a {
	transition: color .2s;
}

.was-project-content h3 a:hover {
	color: color-mix(in srgb, var(--project-accent) 72%, var(--was-heading));
}

.was-project-content p {
	margin-bottom: 0;
	color: var(--was-muted);
	font-size: 13px;
	line-height: 1.8;
}

/* Clients */
.was-clients {
	padding-block: 90px;
}

.was-clients-heading {
	text-align: center;
}

.was-clients-heading h2 {
	max-width: 760px;
	margin-inline: auto;
	margin-bottom: 49px;
}

.was-logo-marquee {
	position: relative;
	overflow: hidden;
	min-height: 105px;
	direction: ltr;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.was-logo-track {
	display: flex;
	width: max-content;
	min-width: max-content;
	animation: was-marquee-ltr 42s linear infinite;
	will-change: transform;
	backface-visibility: hidden;
}

[dir="rtl"] .was-logo-track {
	animation-name: was-marquee-rtl;
}

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

.was-logo-group {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 14px;
	padding-inline-end: 14px;
}

.was-client-logo {
	flex: 0 0 190px;
	width: 190px;
	height: 105px;
	display: grid;
	place-items: center;
	padding: 18px;
	border: 1px solid var(--was-line);
	border-radius: 17px;
	background: rgba(255, 255, 255, .95);
	transition: transform .25s, border-color .25s;
}

.was-client-logo:hover {
	transform: translateY(-5px);
	border-color: color-mix(in srgb, var(--was-primary) 36%, var(--was-line));
}

.was-client-logo.is-dark-logo {
	background: #10243d;
}

.was-client-logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* Process */
.was-process {
	border-block: 1px solid var(--was-line);
	background: linear-gradient(160deg, color-mix(in srgb, var(--was-primary) 5%, var(--was-bg-soft)), transparent 62%);
}

.was-process-list {
	position: relative;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 13px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.was-process-list::before {
	content: "";
	position: absolute;
	inset-block-start: 34px;
	inset-inline: 7%;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--was-primary), var(--was-accent), transparent);
	opacity: .38;
}

.was-process-list li {
	position: relative;
	padding: 17px;
	border: 1px solid var(--was-line);
	border-radius: 17px;
	background: var(--was-surface);
	transition: transform .3s var(--was-ease), border-color .3s;
}

.was-process-list li:hover {
	transform: translateY(-6px);
	border-color: color-mix(in srgb, var(--was-accent) 32%, var(--was-line));
}

.was-process-list li > span {
	position: relative;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	margin-bottom: 22px;
	border: 1px solid color-mix(in srgb, var(--was-primary) 35%, var(--was-line));
	border-radius: 50%;
	background: var(--was-surface-solid);
	color: color-mix(in srgb, var(--was-primary) 68%, var(--was-heading));
	font-family: "IBM Plex Sans", sans-serif;
	font-size: 10px;
	font-weight: 700;
}

.was-process-list h3 {
	margin-bottom: 9px;
	font-size: 16px;
}

.was-process-list p {
	margin-bottom: 0;
	color: var(--was-muted);
	font-size: 11px;
	line-height: 1.75;
}

/* Trust */
.was-trust-layout {
	display: grid;
	grid-template-columns: .65fr 1.35fr;
	gap: clamp(45px, 7vw, 90px);
}

.was-trust-intro {
	position: sticky;
	inset-block-start: 120px;
	align-self: start;
}

.was-trust-intro h2 {
	margin-bottom: 28px;
}

.was-text-link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding-bottom: 6px;
	border-bottom: 1px solid var(--was-line-strong);
	color: var(--was-heading) !important;
	font-size: 13px;
	font-weight: 600;
}

.was-text-link svg {
	width: 17px;
	height: 17px;
}

.was-trust-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
}

.was-trust-grid article {
	padding: clamp(23px, 3vw, 32px);
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-md);
	background: var(--was-surface);
}

.was-trust-grid article > span {
	display: grid;
	place-items: center;
	width: 43px;
	height: 43px;
	margin-bottom: 22px;
	border-radius: 13px;
	background: color-mix(in srgb, var(--was-accent) 10%, transparent);
	color: var(--was-accent);
}

.was-trust-grid svg {
	width: 22px;
	height: 22px;
}

.was-trust-grid h3 {
	margin-bottom: 9px;
	font-size: 18px;
}

.was-trust-grid p {
	margin-bottom: 0;
	color: var(--was-muted);
	font-size: 12px;
	line-height: 1.8;
}

/* Contact */
.was-contact {
	padding-block-start: 70px;
}

.was-contact-shell {
	position: relative;
	display: grid;
	grid-template-columns: .83fr 1.17fr;
	gap: clamp(35px, 6vw, 78px);
	overflow: hidden;
	padding: clamp(29px, 5vw, 68px);
	border: 1px solid color-mix(in srgb, var(--was-primary) 30%, var(--was-line));
	border-radius: var(--was-radius-lg);
	background:
		radial-gradient(circle at 6% 8%, color-mix(in srgb, var(--was-primary) 19%, transparent), transparent 31rem),
		radial-gradient(circle at 96% 93%, color-mix(in srgb, var(--was-accent) 13%, transparent), transparent 26rem),
		var(--was-surface);
	box-shadow: var(--was-card-shadow), inset 0 1px rgba(255, 255, 255, .07);
}

.was-contact-shell::before {
	content: "";
	position: absolute;
	inset-block-start: -120px;
	inset-inline-end: 23%;
	width: 260px;
	aspect-ratio: 1;
	border: 1px dashed color-mix(in srgb, var(--was-accent) 37%, transparent);
	border-radius: 50%;
	animation: was-rotate 30s linear infinite;
}

.was-contact-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.was-contact h2 {
	margin-bottom: 22px;
}

.was-contact-copy > p {
	margin-bottom: 28px;
	color: var(--was-muted);
	font-size: 15px;
	line-height: 1.9;
}

.was-direct-contact {
	display: grid;
	gap: 10px;
}

.was-direct-contact a {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 12px;
	border: 1px solid var(--was-line);
	border-radius: 14px;
	background: color-mix(in srgb, var(--was-surface-solid) 70%, transparent);
	transition: transform .2s, border-color .2s;
}

.was-direct-contact a:hover {
	transform: translateX(4px);
	border-color: color-mix(in srgb, var(--was-accent) 36%, var(--was-line));
}

[dir="rtl"] .was-direct-contact a:hover {
	transform: translateX(-4px);
}

.was-direct-contact a > span {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 12px;
	background: color-mix(in srgb, var(--was-accent) 12%, transparent);
	color: var(--was-accent);
}

.was-direct-contact svg {
	width: 20px;
	height: 20px;
}

.was-direct-contact div {
	display: flex;
	flex-direction: column;
}

.was-direct-contact small {
	color: var(--was-muted);
	font-size: 9px;
}

.was-direct-contact strong {
	color: var(--was-heading);
	font-family: "IBM Plex Sans", sans-serif;
	font-size: 12px;
	font-weight: 600;
}

.was-service-area {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 19px;
	color: var(--was-muted);
	font-size: 10px;
}

.was-service-area span {
	color: var(--was-primary);
	font-size: 15px;
}

.was-contact-form {
	position: relative;
	z-index: 3;
	padding: clamp(22px, 3vw, 34px);
	border: 1px solid var(--was-line-strong);
	border-radius: var(--was-radius-md);
	background: color-mix(in srgb, var(--was-surface-solid) 87%, transparent);
	box-shadow: 0 25px 70px rgba(0, 0, 0, .18), inset 0 1px rgba(255, 255, 255, .06);
	-webkit-backdrop-filter: blur(18px);
	backdrop-filter: blur(18px);
}

.was-contact-form h3 {
	margin-bottom: 22px;
	font-size: 22px;
}

.was-form-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

.was-contact-form label:not(.was-honeypot) {
	display: flex;
	flex-direction: column;
	gap: 7px;
	margin-bottom: 13px;
}

.was-contact-form label > span {
	color: var(--was-muted);
	font-size: 10px;
	font-weight: 500;
}

.was-contact-form input,
.was-contact-form select,
.was-contact-form textarea {
	width: 100%;
	border: 1px solid var(--was-line);
	border-radius: 11px;
	background: color-mix(in srgb, var(--was-bg) 44%, transparent);
	color: var(--was-text);
	box-shadow: none;
	outline: 0;
	transition: border-color .2s, box-shadow .2s, background .2s;
}

.was-contact-form input,
.was-contact-form select {
	height: 47px;
	padding-inline: 13px;
}

.was-contact-form textarea {
	min-height: 124px;
	padding: 12px 13px;
	resize: vertical;
}

.was-contact-form input::placeholder,
.was-contact-form textarea::placeholder {
	color: var(--was-faint);
}

.was-contact-form input:focus,
.was-contact-form select:focus,
.was-contact-form textarea:focus {
	border-color: color-mix(in srgb, var(--was-primary) 66%, var(--was-line));
	background: color-mix(in srgb, var(--was-bg) 62%, transparent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--was-primary) 12%, transparent);
}

.was-contact-form .was-submit {
	width: 100%;
	margin-top: 4px;
	border: 0;
}

.was-contact-form .was-submit[disabled] {
	cursor: wait;
	opacity: .7;
	transform: none;
}

.was-form-note {
	margin: 12px 0 0;
	color: var(--was-faint);
	font-size: 9px;
	text-align: center;
}

.was-form-status {
	display: none;
	margin-top: 13px;
	padding: 10px 12px;
	border-radius: 10px;
	font-size: 11px;
	line-height: 1.6;
}

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

.was-form-status.is-success {
	background: rgba(43, 196, 123, .12);
	color: #54e5a0;
}

.was-form-status.is-error {
	background: rgba(255, 91, 107, .12);
	color: #ff8591;
}

.was-honeypot {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
}

/* Footer */
.was-footer {
	padding-block: 50px 24px;
	border-block-start: 1px solid var(--was-line);
}

.was-footer-main {
	display: grid;
	grid-template-columns: 1fr 1fr auto;
	align-items: center;
	gap: 30px;
	padding-block-end: 28px;
}

.was-footer-main > p {
	max-width: 420px;
	margin: 0 auto;
	color: var(--was-muted);
	font-size: 11px;
	text-align: center;
}

.was-footer-top {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid var(--was-line);
	border-radius: 50%;
	background: var(--was-surface);
	color: var(--was-heading) !important;
	transition: transform .2s, border-color .2s;
}

.was-footer-top:hover {
	transform: translateY(-4px);
	border-color: color-mix(in srgb, var(--was-accent) 42%, var(--was-line));
}

.was-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding-block-start: 19px;
	border-block-start: 1px solid var(--was-line);
	color: var(--was-faint);
	font-size: 9px;
}

.was-footer-bottom a {
	transition: color .2s;
}

.was-footer-bottom a:hover {
	color: var(--was-accent);
}

.was-whatsapp-float {
	position: fixed;
	z-index: 900;
	inset-inline-end: max(20px, env(safe-area-inset-right));
	inset-block-end: max(20px, env(safe-area-inset-bottom));
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 48px;
	padding: 10px 15px;
	border: 1px solid rgba(255, 255, 255, .24);
	border-radius: 999px;
	background: #1ebd68;
	box-shadow: 0 14px 35px rgba(30, 189, 104, .31);
	color: #fff !important;
	font-size: 11px;
	font-weight: 650;
	transition: transform .25s var(--was-ease), box-shadow .25s;
}

.was-whatsapp-float:hover {
	transform: translateY(-4px) scale(1.02);
	box-shadow: 0 20px 45px rgba(30, 189, 104, .39);
}

.was-whatsapp-float svg {
	width: 21px;
	height: 21px;
}

/* Multi-page architecture */
.was-footer-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 26px;
	padding: 21px 0;
	border-block-start: 1px solid var(--was-line);
	color: var(--was-muted);
	font-size: 11px;
}

.was-footer-links a { transition: color .2s; }
.was-footer-links a:hover { color: var(--was-accent); }

.was-inner-hero {
	position: relative;
	min-height: 610px;
	padding-block: 145px 90px;
	display: flex;
	align-items: center;
	border-block-end: 1px solid var(--was-line);
	background:
		radial-gradient(circle at 80% 40%, color-mix(in srgb, var(--was-primary) 16%, transparent), transparent 26rem),
		linear-gradient(180deg, transparent, color-mix(in srgb, var(--was-surface-solid) 42%, transparent));
}

[dir="ltr"] .was-inner-hero {
	background:
		radial-gradient(circle at 20% 40%, color-mix(in srgb, var(--was-primary) 16%, transparent), transparent 26rem),
		linear-gradient(180deg, transparent, color-mix(in srgb, var(--was-surface-solid) 42%, transparent));
}

.was-inner-hero::after {
	content: "";
	position: absolute;
	inset-block-start: 18%;
	inset-inline-end: -9rem;
	width: 30rem;
	aspect-ratio: 1;
	border: 1px dashed color-mix(in srgb, var(--was-accent) 25%, transparent);
	border-radius: 50%;
	pointer-events: none;
}

.was-inner-hero .was-container { position: relative; z-index: 2; }

.was-inner-hero-copy {
	max-width: 930px;
	padding-block: 38px 15px;
}

.was-inner-hero h1 {
	max-width: 1000px;
	margin-bottom: 24px;
	font-size: clamp(44px, 6vw, 78px);
}

.was-inner-hero-copy > p,
.was-service-hero-grid > div:first-child > p,
.was-project-hero-grid > div:first-child > p {
	max-width: 820px;
	margin-bottom: 30px;
	color: var(--was-muted);
	font-size: clamp(17px, 1.7vw, 21px);
	line-height: 1.95;
}

.was-breadcrumbs { margin-bottom: 30px; }
.was-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
	margin: 0;
	padding: 0;
	list-style: none;
	color: var(--was-faint);
	font-size: 11px;
}
.was-breadcrumbs li { display: flex; align-items: center; gap: 7px; }
.was-breadcrumbs a { transition: color .2s; }
.was-breadcrumbs a:hover { color: var(--was-accent); }
.was-breadcrumbs [aria-current="page"] { color: var(--was-text); }

.was-inline-more { margin-top: 25px; }
.was-card-link,
.was-live-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: color-mix(in srgb, var(--was-accent) 80%, var(--was-heading)) !important;
	font-size: 12px;
	font-weight: 650;
	transition: gap .2s, color .2s;
}
.was-card-link svg,
.was-live-link svg { width: 16px; height: 16px; }
.was-card-link:hover,
.was-live-link:hover { gap: 12px; color: var(--was-heading) !important; }
[dir="rtl"] .was-card-link svg { transform: rotate(180deg); }

.was-service-card .was-card-link { margin-top: auto; padding-top: 22px; }
.was-service-card h3 a,
.was-service-card h2 a { transition: color .2s; }
.was-service-card h3 a:hover,
.was-service-card h2 a:hover { color: var(--was-accent); }

.was-section-action {
	display: flex;
	justify-content: center;
	margin-top: 48px;
}

.was-home-cta { padding-block-start: 40px; }
.was-cta-panel {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 45px;
	padding: clamp(32px, 5vw, 66px);
	border: 1px solid color-mix(in srgb, var(--was-primary) 28%, var(--was-line));
	border-radius: var(--was-radius-lg);
	background:
		radial-gradient(circle at 90% 0, color-mix(in srgb, var(--was-accent) 16%, transparent), transparent 23rem),
		linear-gradient(120deg, color-mix(in srgb, var(--was-primary) 12%, var(--was-surface)), var(--was-surface));
	box-shadow: var(--was-card-shadow);
}
.was-cta-panel::before {
	content: "";
	position: absolute;
	inset: 18px;
	border: 1px dashed color-mix(in srgb, var(--was-primary) 20%, transparent);
	border-radius: calc(var(--was-radius-lg) - 12px);
	pointer-events: none;
}
.was-cta-panel > * { position: relative; z-index: 1; }
.was-cta-panel > div:first-child { max-width: 790px; }
.was-cta-panel > div:first-child > span { color: var(--was-accent); font-size: 12px; font-weight: 600; }
.was-cta-panel h2 { margin: 9px 0 12px; font-size: clamp(30px, 4vw, 53px); }
.was-cta-panel p { margin: 0; color: var(--was-muted); font-size: 15px; }

.was-about-hero { min-height: 760px; padding-block-end: 0; }
.was-inner-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(350px, .65fr);
	align-items: end;
	gap: clamp(45px, 8vw, 110px);
}
.was-inner-hero-grid > div:first-child { padding-block: 35px 90px; }
.was-inner-hero-grid > div:first-child > p { max-width: 800px; margin-bottom: 30px; color: var(--was-muted); font-size: 18px; line-height: 2; }
.was-about-portrait {
	position: relative;
	height: 610px;
	display: grid;
	place-items: end center;
}
.was-about-portrait::before {
	content: "";
	position: absolute;
	inset-inline: 5%;
	inset-block-end: 0;
	height: 82%;
	border: 1px solid var(--was-line-strong);
	border-radius: 48% 48% 0 0;
	background: linear-gradient(150deg, var(--was-surface), color-mix(in srgb, var(--was-primary) 13%, var(--was-bg)));
}
.was-about-portrait img { position: relative; z-index: 2; max-height: 96%; width: auto; filter: drop-shadow(0 28px 34px rgba(0,0,0,.28)); }
.was-about-portrait-glow { position: absolute; z-index: 1; inset-block-end: 7%; width: 70%; height: 35%; border-radius: 50%; background: var(--was-accent); filter: blur(75px); opacity: .16; }

.was-detail-section { background: linear-gradient(145deg, color-mix(in srgb, var(--was-surface-solid) 48%, transparent), transparent); }
.was-story-layout {
	display: grid;
	grid-template-columns: minmax(230px, .45fr) minmax(0, 1.3fr);
	align-items: start;
	gap: clamp(50px, 9vw, 140px);
}
.was-story-nav {
	position: sticky;
	top: 120px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 28px;
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-md);
	background: var(--was-surface);
}
.was-story-nav span { color: var(--was-accent); font-family: "IBM Plex Sans", sans-serif; font-size: clamp(48px, 7vw, 86px); font-weight: 700; line-height: 1; }
.was-story-nav strong { color: var(--was-heading); font-size: 13px; line-height: 1.8; }
.was-story-content { display: grid; gap: clamp(60px, 9vw, 120px); }
.was-story-content article + article { padding-block-start: 75px; border-block-start: 1px solid var(--was-line); }
.was-story-content h2,
.was-detail-main h2,
.was-two-column-detail h2 { margin-bottom: 26px; font-size: clamp(34px, 4.4vw, 58px); }
.was-rich-text-large { font-size: 17px; line-height: 2.15; }
.was-lead-copy { color: var(--was-muted); font-size: 16px; line-height: 2; }

.was-about-proof { border-block: 1px solid var(--was-line); }
.was-principles-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}
.was-principles-grid article,
.was-deliverables-grid article {
	min-height: 155px;
	padding: 25px;
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-sm);
	background: var(--was-surface);
	transition: transform .25s var(--was-ease), border-color .25s;
}
.was-principles-grid article:hover,
.was-deliverables-grid article:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--was-accent) 38%, var(--was-line)); }
.was-principles-grid article span,
.was-deliverables-grid article span { color: var(--was-primary); font-family: "IBM Plex Sans", sans-serif; font-size: 11px; font-weight: 700; }
.was-principles-grid article p,
.was-deliverables-grid article p { margin: 28px 0 0; color: var(--was-heading); font-size: 14px; font-weight: 550; line-height: 1.8; }

.was-services-index { padding-block-start: 65px; }
.was-service-card-full { min-height: 500px; }
.was-service-card-full h2 { margin-bottom: 15px; font-size: 25px; }

.was-service-framework { border-block: 1px solid var(--was-line); background: color-mix(in srgb, var(--was-surface-solid) 42%, transparent); }
.was-service-framework .was-story-content { display: block; }
.was-service-framework .was-story-content h2 { margin-bottom: 25px; font-size: clamp(36px, 4.8vw, 62px); }
.was-service-framework .was-button { margin-top: 22px; }

.was-service-hero { min-height: 740px; }
.was-service-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(330px, .58fr);
	align-items: center;
	gap: clamp(50px, 9vw, 130px);
}
.was-service-icon-large { width: 74px; height: 74px; margin-bottom: 24px; border-radius: 23px; }
.was-service-icon-large svg { width: 33px; height: 33px; }
.was-service-summary {
	padding: 30px;
	border: 1px solid var(--was-line-strong);
	border-radius: var(--was-radius-md);
	background: var(--was-surface);
	box-shadow: var(--was-card-shadow);
}
.was-service-summary > span { display: block; margin-bottom: 18px; color: var(--was-accent); font-size: 11px; font-weight: 650; }
.was-service-summary ul { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.was-service-summary li { display: flex; gap: 10px; color: var(--was-text); font-size: 13px; line-height: 1.7; }
.was-service-summary li svg { flex: 0 0 auto; width: 17px; height: 17px; margin-top: 4px; color: var(--was-accent); }

.was-detail-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(280px, .48fr);
	align-items: start;
	gap: clamp(45px, 9vw, 130px);
}
.was-sticky-note {
	position: sticky;
	top: 120px;
	padding: 27px;
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-md);
	background: var(--was-surface);
}
.was-sticky-note > span { color: var(--was-heading); font-size: 14px; font-weight: 650; }
.was-sticky-note small { display: block; margin-top: 20px; color: var(--was-faint); font-size: 10px; line-height: 1.7; }
.was-chip-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.was-chip-list b,
.was-filter-chips span { padding: 7px 11px; border: 1px solid var(--was-line); border-radius: 999px; background: var(--was-surface-elevated); color: var(--was-muted); font-size: 10px; font-weight: 550; }

.was-service-scope { border-block: 1px solid var(--was-line); }
.was-deliverables-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 13px; }
.was-approach-section { background: linear-gradient(145deg, transparent, color-mix(in srgb, var(--was-primary) 6%, var(--was-surface))); }
.was-two-column-detail { display: grid; grid-template-columns: minmax(0, 1fr) minmax(330px, .75fr); align-items: start; gap: clamp(45px, 8vw, 110px); }
.was-outcome-card {
	padding: clamp(27px, 4vw, 45px);
	border: 1px solid color-mix(in srgb, var(--was-accent) 25%, var(--was-line));
	border-radius: var(--was-radius-md);
	background: linear-gradient(145deg, color-mix(in srgb, var(--was-accent) 8%, var(--was-surface)), var(--was-surface));
	box-shadow: var(--was-card-shadow);
}
.was-outcome-card h3 { margin-bottom: 22px; font-size: clamp(24px, 3vw, 36px); }
.was-outcome-card ul { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.was-outcome-card li { display: flex; gap: 11px; color: var(--was-text); font-size: 13px; }
.was-outcome-card li svg { flex: 0 0 auto; width: 18px; height: 18px; color: var(--was-accent); }

.was-related { border-block-start: 1px solid var(--was-line); }
.was-related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.was-related-grid > a {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: start;
	gap: 15px;
	padding: 24px;
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-md);
	background: var(--was-surface);
	transition: transform .25s, border-color .25s;
}
.was-related-grid > a:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--was-accent) 38%, var(--was-line)); }
.was-related-grid > a > span { display: grid; place-items: center; width: 41px; height: 41px; border-radius: 13px; background: color-mix(in srgb, var(--was-primary) 12%, var(--was-surface-elevated)); color: var(--was-accent); }
.was-related-grid > a > span svg { width: 20px; height: 20px; }
.was-related-grid > a > svg { width: 18px; color: var(--was-faint); }
[dir="rtl"] .was-related-grid > a > svg { transform: rotate(180deg); }
.was-related-grid h3 { margin-bottom: 9px; font-size: 18px; }
.was-related-grid p { margin: 0; color: var(--was-muted); font-size: 11px; line-height: 1.8; }

.was-filter-chips { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 15px; }
.was-projects-index { padding-block-start: 70px; }
.was-project-content h2 { margin-bottom: 10px; font-size: 25px; }
.was-project-content h2 a { transition: color .2s; }
.was-project-content h2 a:hover { color: var(--was-accent); }
.was-project-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 15px; margin-top: 22px; }
.was-live-link { color: var(--was-muted) !important; }
.was-projects-note { padding-block-start: 35px; }

.was-project-hero { --case-tint: color-mix(in srgb, var(--project-accent) 18%, transparent); background: radial-gradient(circle at 82% 44%, var(--case-tint), transparent 27rem), linear-gradient(180deg, transparent, color-mix(in srgb, var(--was-surface-solid) 48%, transparent)); }
.was-project-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr); align-items: center; gap: clamp(50px, 9vw, 130px); }
.was-case-label { display: inline-block; margin-bottom: 17px; color: var(--project-accent); font-size: 12px; font-weight: 650; }
.was-case-visual {
	position: relative;
	min-height: 400px;
	overflow: hidden;
	display: grid;
	place-items: center;
	padding: 45px;
	border: 1px solid var(--was-line-strong);
	border-radius: var(--was-radius-lg);
	background: linear-gradient(145deg, #fff, #edf1f7);
	box-shadow: var(--was-card-shadow);
}
.was-case-visual.is-dark-logo { background: linear-gradient(145deg, #152138, #07111f); }
.was-case-visual > span:nth-of-type(2) { position: absolute; inset-block-start: 18px; inset-inline-start: 20px; color: color-mix(in srgb, var(--project-accent) 72%, #777); font-family: "IBM Plex Sans", sans-serif; font-size: 11px; font-weight: 700; }
.was-case-visual img { position: relative; z-index: 2; max-width: 75%; max-height: 210px; object-fit: contain; }
.was-case-body { background: color-mix(in srgb, var(--was-surface-solid) 44%, transparent); }
.was-case-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(35px, 7vw, 100px); }
.was-case-grid article { position: relative; padding-inline-start: 46px; }
.was-case-grid article + article { border-inline-start: 1px solid var(--was-line); padding-inline-start: clamp(45px, 7vw, 90px); }
.was-case-number { position: absolute; inset-block-start: 0; inset-inline-start: 0; color: var(--project-accent); font-family: "IBM Plex Sans", sans-serif; font-size: 11px; font-weight: 700; }
.was-case-grid h2 { margin-bottom: 22px; font-size: clamp(30px, 4vw, 48px); }
.was-case-grid p { margin: 0; color: var(--was-muted); font-size: 16px; line-height: 2; }
.was-case-scope { border-block: 1px solid var(--was-line); }
.was-scope-list { display: grid; gap: 9px; }
.was-scope-list > div { display: flex; align-items: center; gap: 15px; padding: 17px 19px; border: 1px solid var(--was-line); border-radius: 13px; background: var(--was-surface); }
.was-scope-list span { color: var(--project-accent); font-family: "IBM Plex Sans", sans-serif; font-size: 10px; }
.was-scope-list strong { color: var(--was-heading); font-size: 13px; }
.was-case-outcome p { color: var(--was-text); font-size: 16px; line-height: 2; }
.was-case-outcome small { display: block; margin-top: 23px; padding-top: 18px; border-block-start: 1px solid var(--was-line); color: var(--was-faint); font-size: 10px; line-height: 1.7; }
.was-next-project { padding-block-start: 35px; }
.was-next-card { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: clamp(28px, 5vw, 54px); border: 1px solid var(--was-line); border-radius: var(--was-radius-lg); background: var(--was-surface); transition: transform .25s, border-color .25s; }
.was-next-card:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--was-accent) 42%, var(--was-line)); }
.was-next-card span { color: var(--was-accent); font-size: 11px; }
.was-next-card h2 { margin: 7px 0; font-size: clamp(31px, 4vw, 54px); }
.was-next-card p { margin: 0; color: var(--was-muted); font-size: 12px; }
.was-next-card > svg { width: 35px; height: 35px; color: var(--was-accent); }
[dir="rtl"] .was-next-card > svg { transform: rotate(180deg); }

.was-insights-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.was-insight-card { overflow: hidden; border: 1px solid var(--was-line); border-radius: var(--was-radius-md); background: var(--was-surface); transition: transform .25s, border-color .25s; }
.was-insight-card:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--was-accent) 35%, var(--was-line)); }
.was-insight-featured { grid-column: span 2; display: grid; grid-template-columns: 1fr 1fr; }
.was-insight-image { min-height: 235px; overflow: hidden; background: linear-gradient(145deg, color-mix(in srgb, var(--was-primary) 22%, var(--was-surface-elevated)), color-mix(in srgb, var(--was-accent) 10%, var(--was-surface))); }
.was-insight-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--was-ease); }
.was-insight-card:hover .was-insight-image img { transform: scale(1.04); }
.was-insight-placeholder { display: grid; place-items: center; color: var(--was-accent); font-size: 45px; }
.was-insight-card > div { padding: 25px; }
.was-insight-card time { color: var(--was-faint); font-size: 10px; }
.was-insight-card h2 { margin: 9px 0 13px; font-size: 23px; }
.was-insight-card p { color: var(--was-muted); font-size: 12px; line-height: 1.85; }
.was-empty-insights { max-width: 800px; margin-inline: auto; padding: clamp(40px, 7vw, 85px); border: 1px dashed var(--was-line-strong); border-radius: var(--was-radius-lg); background: var(--was-surface); text-align: center; }
.was-empty-insights > span { color: var(--was-accent); font-size: 44px; }
.was-empty-insights h2 { margin: 12px 0; font-size: clamp(30px, 4vw, 48px); }
.was-empty-insights p { color: var(--was-muted); line-height: 2; }
.was-empty-insights .was-button { margin-top: 15px; }

.was-article-hero { min-height: auto; padding-block-end: 70px; }
.was-article-heading { max-width: 970px; margin: 35px auto 55px; text-align: center; }
.was-article-heading .was-section-kicker { justify-content: center; }
.was-article-heading h1 { margin-inline: auto; }
.was-article-meta { display: flex; justify-content: center; gap: 10px; color: var(--was-faint); font-size: 11px; }
.was-article-cover { max-width: 1080px; max-height: 600px; overflow: hidden; margin: 0 auto; border: 1px solid var(--was-line); border-radius: var(--was-radius-lg); box-shadow: var(--was-card-shadow); }
.was-article-cover img { width: 100%; height: 100%; object-fit: cover; }
.was-article-layout { display: grid; grid-template-columns: minmax(0, 790px) minmax(250px, 320px); justify-content: center; align-items: start; gap: clamp(45px, 8vw, 100px); }
.was-article-content { color: var(--was-text); font-size: 17px; line-height: 2.15; }
.was-article-content h2 { margin: 55px 0 20px; font-size: clamp(30px, 4vw, 44px); }
.was-article-content h3 { margin: 38px 0 15px; font-size: 25px; }
.was-article-content p { margin-bottom: 23px; }
.was-article-content a { color: var(--was-accent); text-decoration: underline; text-underline-offset: 3px; }
.was-article-content img { height: auto; border-radius: var(--was-radius-md); }
.was-article-content blockquote { margin: 35px 0; padding: 24px 28px; border-inline-start: 3px solid var(--was-accent); background: var(--was-surface); color: var(--was-heading); }
.was-article-aside { position: sticky; top: 120px; padding: 27px; border: 1px solid var(--was-line); border-radius: var(--was-radius-md); background: var(--was-surface); }
.was-article-aside strong { color: var(--was-heading); font-size: 16px; }
.was-article-aside p { margin: 10px 0 20px; color: var(--was-muted); font-size: 11px; line-height: 1.8; }
.was-article-aside .was-button { width: 100%; min-height: 45px; padding-inline: 14px; font-size: 11px; }

.was-contact-hero { min-height: 540px; }
.was-contact-page { padding-block-start: 55px; }
.was-contact-expect { border-block-start: 1px solid var(--was-line); }
.was-expect-list { display: grid; gap: 10px; }
.was-expect-list > div { display: grid; grid-template-columns: 42px 1fr; align-items: center; gap: 15px; padding: 18px; border: 1px solid var(--was-line); border-radius: 14px; background: var(--was-surface); }
.was-expect-list span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: color-mix(in srgb, var(--was-primary) 12%, var(--was-surface-elevated)); color: var(--was-accent); font-family: "IBM Plex Sans", sans-serif; font-size: 11px; font-weight: 700; }
.was-expect-list p { margin: 0; color: var(--was-heading); font-size: 13px; }
.was-trust-grid-wide { grid-template-columns: repeat(4, 1fr); }
.was-contact-trust { padding-block-start: 25px; }

/* Motion */
.was-site[data-animations="on"] [data-reveal] {
	animation: was-reveal-fallback .72s var(--was-ease) both;
}

.was-js .was-site[data-animations="on"] [data-reveal] {
	animation: none;
	opacity: 0;
	transform: translateY(24px);
	transition: opacity .75s var(--was-ease), transform .75s var(--was-ease);
}

.was-js .was-site[data-animations="on"] [data-reveal-delay="1"] { transition-delay: .08s; }
.was-js .was-site[data-animations="on"] [data-reveal-delay="2"] { transition-delay: .16s; }
.was-js .was-site[data-animations="on"] [data-reveal-delay="3"] { transition-delay: .24s; }
.was-js .was-site[data-animations="on"] [data-reveal-delay="4"] { transition-delay: .32s; }

.was-js .was-site[data-animations="on"] [data-reveal].is-visible {
	opacity: 1;
	transform: translateY(0);
}

@keyframes was-reveal-fallback {
	from { opacity: 0; transform: translateY(24px); }
	to { opacity: 1; transform: translateY(0); }
}

@supports (animation-timeline: view()) {
	.was-site[data-animations="on"] [data-reveal] {
		animation-name: was-reveal-fallback;
		animation-duration: 1ms;
		animation-fill-mode: both;
		animation-timeline: view();
		animation-range: entry 5% cover 25%;
	}

	.was-js .was-site[data-animations="on"] [data-reveal] {
		animation: none;
	}
}

@keyframes was-ping {
	0% { transform: scale(.6); opacity: 1; }
	80%, 100% { transform: scale(1.7); opacity: 0; }
}

@keyframes was-shine {
	0%, 65% { transform: translateX(-90%); }
	88%, 100% { transform: translateX(100%); }
}

@keyframes was-rotate {
	to { rotate: 1turn; }
}

@keyframes was-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-9px); }
}

@keyframes was-marquee-ltr {
	from { transform: translate3d(0, 0, 0); }
	to { transform: translate3d(-50%, 0, 0); }
}

@keyframes was-marquee-rtl {
	from { transform: translate3d(-50%, 0, 0); }
	to { transform: translate3d(0, 0, 0); }
}

/* Responsive */
@media (max-width: 1120px) {
	.was-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr); gap: 35px; }
	.was-hero-visual { min-height: 580px; }
	.was-portrait-frame { height: 560px; }
	.was-portrait-orbit { width: 510px; }
	.was-tag-code { inset-inline-start: -3%; }
	.was-tag-ai { inset-inline-end: -3%; }
	.was-tag-design { inset-inline-start: -5%; }
	.was-experience-badge { inset-inline-end: -2%; }
	.was-about-grid { grid-template-columns: .8fr 1.2fr; gap: 48px; }
	.was-stat-grid { grid-template-columns: repeat(2, 1fr); }
	.was-process-list { grid-template-columns: repeat(3, 1fr); }
	.was-process-list::before { display: none; }
}

@media (max-width: 960px) {
	.was-nav, .was-header-cta { display: none; }
	.was-menu-toggle { display: flex; flex-direction: column; gap: 5px; }
	.was-menu-toggle span { width: 17px; height: 1.5px; border-radius: 2px; background: currentColor; transition: transform .2s; }
	.was-menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.2px) rotate(45deg); }
	.was-menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.2px) rotate(-45deg); }
	.was-mobile-nav { position: absolute; inset-block-start: calc(100% + 1px); inset-inline: 20px; display: grid; padding: 12px; border: 1px solid var(--was-line); border-radius: 17px; background: var(--was-glass); box-shadow: var(--was-card-shadow); -webkit-backdrop-filter: blur(22px); backdrop-filter: blur(22px); }
	.was-mobile-nav[hidden] { display: none; }
	.was-mobile-nav a { padding: 11px 13px; border-radius: 10px; color: var(--was-muted); font-size: 13px; }
	.was-mobile-nav a:hover { background: var(--was-surface); color: var(--was-heading); }
	.was-hero { padding-block-start: 125px; }
	.was-hero-grid { grid-template-columns: 1fr; text-align: center; }
	.was-hero-copy { max-width: 820px; margin-inline: auto; }
	.was-eyebrow, .was-hero-actions, .was-availability { justify-content: center; }
	.was-hero-description { margin-inline: auto; }
	.was-hero-visual { width: min(100%, 600px); margin-inline: auto; }
	.was-trust-strip { margin-top: 48px; }
	.was-about-grid, .was-trust-layout, .was-contact-shell { grid-template-columns: 1fr; }
	.was-about-copy { max-width: 760px; }
	.was-services-grid { grid-template-columns: repeat(2, 1fr); }
	.was-trust-intro { position: static; }
	.was-trust-intro h2 { max-width: 750px; }
	.was-contact-copy { max-width: 720px; }
}

@media (max-width: 760px) {
	.admin-bar .was-header { inset-block-start: 46px; }
	#wpadminbar { position: fixed; }
	.was-container { width: min(calc(100% - 28px), var(--was-container)); }
	.was-section { padding-block: 85px; }
	.was-wordmark small { display: none; }
	.was-hero { padding-block-start: 115px; }
	.was-hero h1 { font-size: clamp(38px, 11vw, 58px); }
	.was-hero h1 em { white-space: normal; }
	.was-hero-visual { min-height: 520px; }
	.was-portrait-frame { width: min(88%, 390px); height: 500px; }
	.was-portrait-orbit { width: 450px; }
	.was-floating-tag { font-size: 9px; padding: 8px 11px; }
	.was-tag-code { inset-block-start: 20%; inset-inline-start: 0; }
	.was-tag-ai { inset-block-start: 42%; inset-inline-end: 0; }
	.was-tag-design { inset-block-end: 16%; inset-inline-start: 0; }
	.was-experience-badge { inset-inline-end: 0; }
	.was-trust-strip { flex-direction: column; text-align: center; }
	.was-trust-tech { justify-content: center; gap: 16px; }
	.was-section-heading { grid-template-columns: 1fr; gap: 15px; }
	.was-section-heading p { max-width: 620px; }
	.was-services-grid { grid-template-columns: 1fr; }
	.was-projects-grid { grid-template-columns: 1fr; }
	.was-project-featured { grid-column: auto; display: block; }
	.was-project-featured .was-project-visual { min-height: 340px; border-inline: 0; border-block-end: 1px solid var(--was-line); }
	[dir="rtl"] .was-project-featured .was-project-visual { border-inline: 0; }
	.was-process-list { grid-template-columns: repeat(2, 1fr); }
	.was-contact-shell { padding: 25px; border-radius: 25px; }
	.was-footer-main { grid-template-columns: 1fr auto; }
	.was-footer-main > p { grid-column: 1 / -1; grid-row: 2; text-align: start; margin: 0; }
}

@media (max-width: 540px) {
	.was-header { padding-block: 11px; }
	.was-brand img { width: 40px; height: 40px; }
	.was-wordmark strong { max-width: 135px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
	.was-lang-switch, .was-theme-toggle, .was-menu-toggle { width: 38px; height: 38px; }
	.was-hero h1 { font-size: clamp(35px, 11.3vw, 50px); }
	.was-hero-description { font-size: 15px; }
	.was-hero-actions { align-items: stretch; }
	.was-button { flex: 1 1 100%; }
	.was-hero-visual { min-height: 470px; }
	.was-portrait-frame { height: 455px; }
	.was-portrait-orbit { width: 400px; }
	.was-tag-design { display: none; }
	.was-floating-tag { max-width: 145px; overflow: hidden; text-overflow: ellipsis; }
	.was-experience-badge { inset-block-end: 5%; }
	.was-trust-strip { display: none; }
	.was-stat-grid { grid-template-columns: repeat(2, 1fr); }
	.was-stat-card { min-height: 110px; }
	.was-chart-heading { flex-direction: column; }
	.was-project-visual, .was-project-featured .was-project-visual { min-height: 280px; }
	.was-project-logo { width: 72%; min-height: 110px; }
	.was-client-logo { flex-basis: 160px; width: 160px; height: 90px; }
	.was-process-list { grid-template-columns: 1fr; }
	.was-trust-grid { grid-template-columns: 1fr; }
	.was-form-row { grid-template-columns: 1fr; gap: 0; }
	.was-contact-form { padding: 20px; }
	.was-footer-main { align-items: start; }
	.was-footer-bottom { align-items: flex-start; flex-direction: column; }
	.was-whatsapp-float { width: 49px; height: 49px; min-height: 0; padding: 0; justify-content: center; border-radius: 50%; }
	.was-whatsapp-float span { display: none; }
}

@media (max-width: 1120px) {
	.was-deliverables-grid { grid-template-columns: repeat(3, 1fr); }
	.was-related-grid { grid-template-columns: repeat(2, 1fr); }
	.was-trust-grid-wide { grid-template-columns: repeat(2, 1fr); }
	.was-insights-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 960px) {
	.was-inner-hero-grid,
	.was-service-hero-grid,
	.was-project-hero-grid,
	.was-detail-layout,
	.was-two-column-detail,
	.was-article-layout { grid-template-columns: 1fr; }
	.was-about-hero { padding-block-end: 0; }
	.was-inner-hero-grid > div:first-child { padding-block-end: 25px; }
	.was-about-portrait { width: min(100%, 480px); height: 540px; margin-inline: auto; }
	.was-service-summary { max-width: 680px; }
	.was-sticky-note,
	.was-article-aside { position: static; }
	.was-case-visual { min-height: 340px; }
	.was-story-layout { grid-template-columns: minmax(190px, .35fr) 1fr; gap: 45px; }
	.was-deliverables-grid { grid-template-columns: repeat(2, 1fr); }
	.was-article-aside { max-width: 650px; }
}

@media (max-width: 760px) {
	.was-inner-hero { min-height: 540px; padding-block: 125px 70px; }
	.was-about-hero { padding-block-end: 0; }
	.was-inner-hero h1 { font-size: clamp(38px, 10.5vw, 59px); }
	.was-story-layout,
	.was-case-grid { grid-template-columns: 1fr; }
	.was-story-nav { position: static; }
	.was-story-content article + article { padding-block-start: 55px; }
	.was-principles-grid { grid-template-columns: repeat(2, 1fr); }
	.was-case-grid article + article { padding-block-start: 55px; padding-inline-start: 46px; border-inline-start: 0; border-block-start: 1px solid var(--was-line); }
	.was-cta-panel { align-items: flex-start; flex-direction: column; }
	.was-cta-panel .was-hero-actions { width: 100%; justify-content: flex-start; }
	.was-related-grid { grid-template-columns: 1fr; }
	.was-insight-featured { grid-column: auto; display: block; }
	.was-footer-links { justify-content: flex-start; }
}

@media (max-width: 540px) {
	.was-inner-hero { min-height: 490px; }
	.was-breadcrumbs { margin-bottom: 20px; }
	.was-about-portrait { height: 450px; }
	.was-principles-grid,
	.was-deliverables-grid,
	.was-insights-grid,
	.was-trust-grid-wide { grid-template-columns: 1fr; }
	.was-service-card-full { min-height: auto; }
	.was-related-grid > a { grid-template-columns: auto 1fr; }
	.was-related-grid > a > svg { display: none; }
	.was-case-visual { min-height: 275px; padding: 28px; }
	.was-project-actions { align-items: flex-start; flex-direction: column; }
	.was-next-card { align-items: flex-start; }
	.was-next-card > svg { width: 24px; height: 24px; }
	.was-article-content { font-size: 16px; }
	.was-cta-panel { border-radius: 24px; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.was-site:not([data-motion-policy="always"]) *,
	.was-site:not([data-motion-policy="always"]) *::before,
	.was-site:not([data-motion-policy="always"]) *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
	.was-js .was-site:not([data-motion-policy="always"]) [data-reveal] { opacity: 1 !important; transform: none !important; }
	.was-site:not([data-motion-policy="always"]) .was-bar i { width: var(--was-bar) !important; }
	.was-site:not([data-motion-policy="always"]) .was-logo-marquee { overflow-x: auto; -webkit-mask-image: none; mask-image: none; scrollbar-width: none; }
	.was-site:not([data-motion-policy="always"]) .was-logo-track { transform: none !important; }
	.was-site:not([data-motion-policy="always"]) .was-logo-group[aria-hidden="true"] { display: none; }
}

/* ================================================================
   Version 2 — conversion, navigation, portfolio and performance UI
   ================================================================ */

.was-site[dir="ltr"],
.was-site[dir="ltr"] * {
	font-family: "Bricolage Grotesque", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.was-site[dir="ltr"] h1,
.was-site[dir="ltr"] h2,
.was-site[dir="ltr"] h3,
.was-site[dir="ltr"] button,
.was-site[dir="ltr"] input,
.was-site[dir="ltr"] textarea,
.was-site[dir="ltr"] select,
.was-site[dir="ltr"] .was-wordmark strong,
.was-site[dir="ltr"] .was-lang-switch {
	font-family: inherit;
}

.was-brand {
	min-width: 0;
	flex: 0 1 auto;
}

.was-brand-images {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: var(--was-logo-desktop, 46px);
	height: var(--was-logo-desktop, 46px);
}

.was-brand-images img {
	grid-area: 1 / 1;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.was-brand-images .was-logo-dark { display: none; }
html[data-was-theme="dark"] .was-brand-images .was-logo-light { display: none; }
html[data-was-theme="dark"] .was-brand-images .was-logo-dark { display: block; }
.was-brand-image .was-brand-images { width: calc(var(--was-logo-desktop, 46px) * 1.08); height: calc(var(--was-logo-desktop, 46px) * 1.08); }
.was-wordmark { min-width: 0; }
.was-wordmark small { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.was-header-inner { min-width: 0; }
.was-header-actions { flex: 0 0 auto; }

/* Complete desktop navigation and services dropdown. */
.was-nav-item {
	position: relative;
	display: flex;
	align-items: center;
}

.was-nav-item > a { white-space: nowrap; }
.was-submenu-toggle {
	display: grid;
	place-items: center;
	width: 23px;
	height: 30px;
	margin-inline-start: -4px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--was-muted);
}
.was-submenu-toggle span { display: block; transition: transform .22s var(--was-ease); }
.was-nav-item.is-open .was-submenu-toggle span,
.was-nav-item:focus-within .was-submenu-toggle span { transform: rotate(180deg); }

.was-submenu {
	position: absolute;
	inset-block-start: calc(100% + 12px);
	inset-inline-start: 50%;
	z-index: 20;
	width: min(620px, 74vw);
	padding: 12px;
	border: 1px solid var(--was-line-strong);
	border-radius: 20px;
	background: color-mix(in srgb, var(--was-surface-solid) 95%, transparent);
	box-shadow: 0 28px 90px rgba(0, 0, 0, .26);
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate(-50%, 10px);
	transition: opacity .22s, visibility .22s, transform .22s var(--was-ease);
}
[dir="rtl"] .was-submenu { transform: translate(50%, 10px); }
.was-nav-item:hover .was-submenu,
.was-nav-item:focus-within .was-submenu,
.was-nav-item.is-open .was-submenu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate(-50%, 0);
}
[dir="rtl"] .was-nav-item:hover .was-submenu,
[dir="rtl"] .was-nav-item:focus-within .was-submenu,
[dir="rtl"] .was-nav-item.is-open .was-submenu { transform: translate(50%, 0); }
.was-submenu-all {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 15px 17px !important;
	border: 1px solid color-mix(in srgb, var(--was-primary) 25%, var(--was-line));
	border-radius: 13px;
	background: linear-gradient(110deg, color-mix(in srgb, var(--was-primary) 12%, transparent), color-mix(in srgb, var(--was-accent) 8%, transparent));
}
.was-submenu-all::after, .was-submenu > div a::after { display: none; }
.was-submenu-all strong { color: var(--was-heading); font-size: 13px; }
.was-submenu-all small { color: var(--was-muted); font-size: 10px; }
.was-submenu > div { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px; margin-top: 8px; }
.was-submenu > div a { display: flex; align-items: center; gap: 9px; padding: 10px 12px; border-radius: 10px; color: var(--was-muted); font-size: 11px; }
.was-submenu > div a:hover { background: var(--was-surface); color: var(--was-heading); }
.was-submenu > div a span { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 8px; background: color-mix(in srgb, var(--was-primary) 11%, transparent); color: var(--was-accent); }
.was-submenu > div a svg { width: 14px; height: 14px; }

/* About portrait is explicitly contained to prevent cross-section overlap. */
.was-about-hero {
	min-height: 720px;
	overflow: hidden;
	contain: paint;
}
.was-about-hero .was-container { align-self: stretch; display: flex; flex-direction: column; justify-content: center; }
.was-about-hero .was-inner-hero-grid { min-height: 610px; }
.was-about-portrait {
	align-self: end;
	height: 610px;
	min-height: 0;
	overflow: hidden;
	contain: layout paint;
}
.was-about-portrait img {
	position: absolute;
	inset-inline: 0;
	inset-block-end: 0;
	z-index: 2;
	width: 100%;
	height: 96%;
	max-width: 100%;
	max-height: 96%;
	object-fit: contain;
	object-position: bottom center;
}

/* Four client-oriented service tracks. */
.was-tracks-grid,
.was-track-directory-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}
.was-track-card,
.was-track-directory-grid > article {
	position: relative;
	overflow: hidden;
	padding: clamp(25px, 3.4vw, 42px);
	border: 1px solid var(--was-line);
	border-radius: var(--was-radius-md);
	background: linear-gradient(145deg, color-mix(in srgb, var(--was-surface-solid) 94%, transparent), color-mix(in srgb, var(--was-primary) 4%, var(--was-surface)));
	box-shadow: 0 20px 65px rgba(0, 0, 0, .08);
	transition: transform .3s var(--was-ease), border-color .3s, box-shadow .3s;
}
.was-track-card::after,
.was-track-directory-grid > article::after {
	content: "";
	position: absolute;
	inset-inline-end: -45px;
	inset-block-start: -45px;
	width: 145px;
	aspect-ratio: 1;
	border: 1px dashed color-mix(in srgb, var(--was-accent) 25%, transparent);
	border-radius: 50%;
	pointer-events: none;
}
.was-track-card:hover,
.was-track-directory-grid > article:hover { transform: translateY(-6px); border-color: color-mix(in srgb, var(--was-accent) 35%, var(--was-line)); box-shadow: var(--was-card-shadow); }
.was-track-head,
.was-track-directory-grid header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; }
.was-track-head > span,
.was-track-directory-grid header > span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 15px; background: color-mix(in srgb, var(--was-primary) 13%, var(--was-surface)); color: var(--was-accent); }
.was-track-head svg,
.was-track-directory-grid header svg { width: 23px; height: 23px; }
.was-track-head b,
.was-track-directory-grid header small { color: var(--was-faint); font-size: 11px; }
.was-track-card h3,
.was-track-directory-grid h2 { margin-bottom: 13px; font-size: clamp(25px, 3vw, 36px); }
.was-track-card > p,
.was-track-directory-grid > article > p { min-height: 58px; color: var(--was-muted); font-size: 14px; line-height: 1.9; }
.was-track-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.was-track-links a { display: inline-flex; align-items: center; gap: 7px; padding: 9px 11px; border: 1px solid var(--was-line); border-radius: 999px; background: var(--was-surface); color: var(--was-heading); font-size: 10px; transition: border-color .2s, color .2s; }
.was-track-links a:hover { border-color: var(--was-accent); color: var(--was-accent); }
.was-track-directory { background: color-mix(in srgb, var(--was-surface-solid) 38%, transparent); }
.was-track-directory-grid > article ul { display: grid; gap: 7px; margin: 24px 0 0; padding: 0; list-style: none; }
.was-track-directory-grid > article li a { display: flex; justify-content: space-between; gap: 10px; padding: 11px 13px; border-radius: 11px; background: color-mix(in srgb, var(--was-surface) 84%, transparent); color: var(--was-heading); font-size: 11px; }
.was-track-directory-grid > article li a:hover { color: var(--was-accent); }

/* Service finder. */
.was-finder-section { overflow: hidden; }
.was-finder-shell {
	position: relative;
	display: grid;
	grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
	gap: clamp(30px, 6vw, 90px);
	padding: clamp(28px, 5vw, 70px);
	border: 1px solid color-mix(in srgb, var(--was-primary) 28%, var(--was-line));
	border-radius: clamp(26px, 4vw, 44px);
	background:
		radial-gradient(circle at 5% 0, color-mix(in srgb, var(--was-primary) 19%, transparent), transparent 24rem),
		radial-gradient(circle at 100% 100%, color-mix(in srgb, var(--was-accent) 12%, transparent), transparent 22rem),
		var(--was-surface);
	box-shadow: var(--was-card-shadow);
}
.was-finder-shell::before { content: ""; position: absolute; inset: 17px; border: 1px dashed color-mix(in srgb, var(--was-accent) 17%, transparent); border-radius: calc(clamp(26px, 4vw, 44px) - 11px); pointer-events: none; }
.was-finder-shell > * { position: relative; z-index: 1; }
.was-finder-intro h2 { margin-bottom: 18px; font-size: clamp(32px, 4.2vw, 56px); }
.was-finder-intro > p { color: var(--was-muted); line-height: 1.95; }
.was-finder-progress { overflow: hidden; height: 5px; margin-top: 35px; border-radius: 999px; background: var(--was-line); }
.was-finder-progress i { display: block; width: 25%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--was-primary), var(--was-accent)); box-shadow: 0 0 15px var(--was-accent); transition: width .35s var(--was-ease); }
.was-finder-intro > small { display: block; margin-top: 9px; color: var(--was-faint); font-size: 10px; }
.was-finder-card { min-width: 0; padding: clamp(22px, 3vw, 36px); border: 1px solid var(--was-line); border-radius: 24px; background: color-mix(in srgb, var(--was-surface-solid) 87%, transparent); }
.was-finder-step { min-width: 0; margin: 0; padding: 0; border: 0; }
.was-finder-step legend { width: 100%; margin-bottom: 24px; color: var(--was-heading); font-size: clamp(20px, 2.5vw, 28px); font-weight: 650; line-height: 1.45; }
.was-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.was-choice-grid label { position: relative; cursor: pointer; }
.was-choice-grid input { position: absolute; opacity: 0; pointer-events: none; }
.was-choice-grid span { display: flex; align-items: center; min-height: 62px; padding: 13px 15px; border: 1px solid var(--was-line); border-radius: 13px; background: color-mix(in srgb, var(--was-bg) 32%, transparent); color: var(--was-muted); font-size: 12px; line-height: 1.5; transition: border-color .2s, background .2s, color .2s, transform .2s; }
.was-choice-grid label:hover span { transform: translateY(-2px); color: var(--was-heading); }
.was-choice-grid input:checked + span { border-color: color-mix(in srgb, var(--was-accent) 72%, var(--was-line)); background: color-mix(in srgb, var(--was-accent) 10%, var(--was-surface)); color: var(--was-heading); box-shadow: inset 3px 0 var(--was-accent); }
[dir="rtl"] .was-choice-grid input:checked + span { box-shadow: inset -3px 0 var(--was-accent); }
.was-choice-grid input:focus-visible + span { outline: 3px solid color-mix(in srgb, var(--was-accent) 45%, transparent); outline-offset: 3px; }
.was-finder-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; margin-top: 25px; }
.was-finder-actions .was-button { min-height: 45px; padding-inline: 18px; font-size: 11px; }
.was-finder-actions button[disabled] { cursor: not-allowed; opacity: .45; transform: none; }
.was-finder-result { padding-block: 15px; text-align: center; }
.was-finder-result > span { display: grid; place-items: center; width: 55px; height: 55px; margin: 0 auto 14px; border-radius: 18px; background: color-mix(in srgb, var(--was-accent) 12%, var(--was-surface)); color: var(--was-accent); font-size: 24px; }
.was-finder-result > small { color: var(--was-accent); font-size: 10px; }
.was-finder-result h3 { margin: 8px 0 13px; font-size: clamp(27px, 3.5vw, 40px); }
.was-finder-result > p { color: var(--was-muted); font-size: 12px; line-height: 1.8; }
.was-finder-result .was-finder-actions { justify-content: center; }

/* Portfolio v2 — real case studies in a browser-like showcase. */
.was-showcase-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.was-showcase-card { overflow: hidden; border: 1px solid var(--was-line); border-radius: 27px; background: var(--was-surface); box-shadow: 0 20px 65px rgba(0, 0, 0, .08); transition: transform .3s var(--was-ease), border-color .3s, box-shadow .3s; }
.was-showcase-card:hover { transform: translateY(-7px); border-color: color-mix(in srgb, var(--project-accent) 48%, var(--was-line)); box-shadow: var(--was-card-shadow); }
.was-showcase-card.is-featured { grid-column: span 2; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr); }
.was-showcase-visual { display: flex; flex-direction: column; min-height: 365px; border-block-end: 1px solid var(--was-line); background: linear-gradient(150deg, #fff, #edf2f8); }
.was-showcase-card.is-featured .was-showcase-visual { min-height: 470px; border-block-end: 0; border-inline-end: 1px solid var(--was-line); }
[dir="rtl"] .was-showcase-card.is-featured .was-showcase-visual { border-inline-end: 0; border-inline-start: 1px solid var(--was-line); }
.was-showcase-visual.is-dark-logo { background: linear-gradient(150deg, #17243b, #07111f); }
.was-browser-bar { display: flex; align-items: center; gap: 6px; height: 38px; padding-inline: 13px; border-block-end: 1px solid rgba(20, 35, 60, .1); color: #7b8798; font-family: "Bricolage Grotesque", system-ui, sans-serif; }
.was-browser-bar i { width: 7px; height: 7px; border-radius: 50%; background: #ff6b6b; }
.was-browser-bar i:nth-child(2) { background: #ffd166; }
.was-browser-bar i:nth-child(3) { background: #4ed69c; }
.was-browser-bar b { overflow: hidden; margin-inline-start: 8px; font-size: 9px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.was-showcase-art { position: relative; overflow: hidden; flex: 1; display: grid; place-items: center; padding: 45px; }
.was-showcase-art::after { content: ""; position: absolute; inset-block-end: -45%; width: 70%; aspect-ratio: 1; border-radius: 50%; background: var(--project-accent); filter: blur(85px); opacity: .13; }
.was-showcase-art img { position: relative; z-index: 2; max-width: 66%; max-height: 155px; object-fit: contain; transition: transform .45s var(--was-ease); }
.was-showcase-card.is-featured .was-showcase-art img { max-height: 210px; }
.was-showcase-card:hover .was-showcase-art img { transform: scale(1.045); }
.was-showcase-art > em { position: absolute; inset-block-start: 16px; inset-inline-end: 18px; z-index: 2; color: color-mix(in srgb, var(--project-accent) 80%, #667); font-style: normal; font-size: 10px; font-weight: 700; }
.was-showcase-content { display: flex; flex-direction: column; padding: clamp(23px, 3vw, 36px); }
.was-showcase-card.is-featured .was-showcase-content { justify-content: center; }
.was-showcase-content > span { color: var(--project-accent); font-size: 10px; font-weight: 650; }
.was-showcase-content h2,
.was-showcase-content h3 { margin: 9px 0 13px; font-size: clamp(24px, 3.2vw, 39px); }
.was-showcase-content p { color: var(--was-muted); font-size: 13px; line-height: 1.9; }
.was-showcase-content > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px; margin-top: auto; padding-top: 15px; }
.was-projects-index-v2 { padding-block-start: 65px; }
.was-project-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 34px; }
.was-project-filters button { min-height: 42px; padding-inline: 16px; border: 1px solid var(--was-line); border-radius: 999px; background: var(--was-surface); color: var(--was-muted); font-size: 11px; transition: color .2s, border-color .2s, background .2s; }
.was-project-filters button:hover,
.was-project-filters button.is-active { border-color: color-mix(in srgb, var(--was-accent) 55%, var(--was-line)); background: color-mix(in srgb, var(--was-accent) 10%, var(--was-surface)); color: var(--was-heading); }
.was-showcase-card[hidden] { display: none !important; }
.was-filter-empty { padding: 50px; border: 1px dashed var(--was-line); border-radius: 20px; color: var(--was-muted); text-align: center; }
.was-portfolio-hero-grid { align-items: center; }
.was-portfolio-manifesto { padding: 27px; border: 1px solid var(--was-line); border-radius: 22px; background: var(--was-surface); }
.was-portfolio-manifesto > span { display: block; color: var(--was-accent); font-size: clamp(40px, 6vw, 66px); font-weight: 700; line-height: 1; }
.was-portfolio-manifesto strong { display: block; margin-top: 9px; color: var(--was-heading); font-size: 14px; }
.was-portfolio-manifesto p { margin: 9px 0 0; color: var(--was-muted); font-size: 11px; line-height: 1.8; }
.was-portfolio-sectors { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 25px; border-block-start: 1px solid var(--was-line); }
.was-portfolio-sectors > span { color: var(--was-faint); font-size: 10px; }
.was-portfolio-sectors > div { display: flex; flex-wrap: wrap; gap: 8px; }
.was-portfolio-sectors b { padding: 7px 10px; border-radius: 999px; background: var(--was-surface); color: var(--was-muted); font-size: 9px; font-weight: 500; }

/* Engagement models. */
.was-collaboration { background: color-mix(in srgb, var(--was-surface-solid) 36%, transparent); }
.was-collaboration-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.was-collaboration-grid article { position: relative; display: flex; flex-direction: column; min-height: 390px; padding: 26px; border: 1px solid var(--was-line); border-radius: 20px; background: var(--was-surface); transition: transform .28s var(--was-ease), border-color .28s; }
.was-collaboration-grid article:hover { transform: translateY(-6px); border-color: color-mix(in srgb, var(--was-accent) 36%, var(--was-line)); }
.was-collaboration-icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: color-mix(in srgb, var(--was-primary) 13%, transparent); color: var(--was-accent); }
.was-collaboration-icon svg { width: 22px; height: 22px; }
.was-collaboration-grid article > small { position: absolute; inset-block-start: 25px; inset-inline-end: 25px; color: var(--was-faint); font-size: 10px; }
.was-collaboration-grid h3 { margin: 24px 0 12px; font-size: 22px; }
.was-collaboration-grid p { color: var(--was-muted); font-size: 12px; line-height: 1.8; }
.was-collaboration-grid ul { display: grid; gap: 8px; margin: 17px 0 22px; padding: 16px 0 0; border-block-start: 1px solid var(--was-line); list-style: none; }
.was-collaboration-grid li { display: flex; gap: 7px; color: var(--was-text); font-size: 10px; }
.was-collaboration-grid li svg { flex: 0 0 auto; width: 14px; color: var(--was-accent); }
.was-collaboration-grid article > a { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; color: var(--was-accent); font-size: 11px; font-weight: 650; }
.was-collaboration-grid article > a svg { width: 15px; }
[dir="rtl"] .was-collaboration-grid article > a svg { transform: rotate(180deg); }

/* Accessible FAQ. */
.was-faq-layout { display: grid; grid-template-columns: minmax(250px, .62fr) minmax(0, 1.38fr); align-items: start; gap: clamp(40px, 8vw, 115px); }
.was-faq-intro { position: sticky; top: 125px; }
.was-faq-intro h2 { font-size: clamp(34px, 4.6vw, 58px); }
.was-faq-intro p { color: var(--was-muted); line-height: 1.95; }
.was-faq-list { border-block-start: 1px solid var(--was-line); }
.was-faq-list details { border-block-end: 1px solid var(--was-line); }
.was-faq-list summary { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 15px; padding: 22px 5px; color: var(--was-heading); cursor: pointer; list-style: none; }
.was-faq-list summary::-webkit-details-marker { display: none; }
.was-faq-list summary > span { color: var(--was-accent); font-size: 9px; font-weight: 700; }
.was-faq-list summary strong { font-size: 15px; line-height: 1.65; }
.was-faq-list summary i { display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid var(--was-line); border-radius: 50%; color: var(--was-accent); font-style: normal; transition: transform .25s, background .25s; }
.was-faq-list details[open] summary i { transform: rotate(45deg); background: color-mix(in srgb, var(--was-accent) 10%, transparent); }
.was-faq-list details > div { padding: 0 53px 24px; }
.was-faq-list details p { max-width: 760px; margin: 0; color: var(--was-muted); font-size: 13px; line-height: 2; }

/* Modern form with a single, calm focus treatment. */
.was-contact-shell { overflow: hidden; isolation: isolate; }
.was-form-decoration { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.was-form-decoration i { position: absolute; width: 210px; aspect-ratio: 1; border: 1px dashed color-mix(in srgb, var(--was-accent) 22%, transparent); border-radius: 50%; animation: was-drift 11s ease-in-out infinite; }
.was-form-decoration i:nth-child(1) { inset-block-start: -120px; inset-inline-start: -80px; }
.was-form-decoration i:nth-child(2) { inset-block-end: -150px; inset-inline-end: 35%; width: 290px; animation-delay: -4s; }
.was-form-decoration i:nth-child(3) { inset-block-start: 20%; inset-inline-end: -95px; width: 180px; animation-delay: -7s; }
.was-form-decoration > span { position: absolute; inset-inline-end: 8%; inset-block-start: 8%; width: 8px; height: 8px; border-radius: 50%; background: var(--was-accent); box-shadow: 0 0 26px 7px color-mix(in srgb, var(--was-accent) 40%, transparent); animation: was-pulse-soft 3.2s ease-in-out infinite; }
.was-contact-promises { display: grid; gap: 8px; margin: 25px 0; }
.was-contact-promises span { display: flex; align-items: center; gap: 9px; color: var(--was-text); font-size: 11px; }
.was-contact-promises svg { width: 15px; color: var(--was-accent); }
.was-contact-form { border-color: color-mix(in srgb, var(--was-primary) 20%, var(--was-line)); border-radius: 25px; background: color-mix(in srgb, var(--was-surface-solid) 93%, transparent); box-shadow: 0 30px 90px rgba(0, 0, 0, .18), inset 0 1px rgba(255, 255, 255, .07); }
.was-form-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.was-form-heading > span { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 14px; background: color-mix(in srgb, var(--was-primary) 13%, transparent); color: var(--was-accent); }
.was-form-heading small { color: var(--was-accent); font-size: 9px; }
.was-form-heading h3 { margin: 3px 0 0; }
.was-contact-form label:not(.was-honeypot) { gap: 8px; }
.was-contact-form label > span { font-size: 11px; transition: color .2s; }
.was-contact-form label:focus-within > span { color: var(--was-accent); }
.was-contact-form input,
.was-contact-form select,
.was-contact-form textarea { border-color: var(--was-line-strong); border-radius: 13px; background: color-mix(in srgb, var(--was-bg) 36%, transparent); }
.was-contact-form input,
.was-contact-form select { height: 50px; }
.was-contact-form textarea { min-height: 145px; }
.was-contact-form input:focus,
.was-contact-form select:focus,
.was-contact-form textarea:focus,
.was-contact-form input:focus-visible,
.was-contact-form select:focus-visible,
.was-contact-form textarea:focus-visible {
	border-color: var(--was-accent);
	background: color-mix(in srgb, var(--was-surface) 72%, transparent);
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--was-accent) 11%, transparent);
	outline: 0;
}
.was-consent { flex-direction: row !important; align-items: flex-start; gap: 10px !important; margin-block: 4px 18px !important; cursor: pointer; }
.was-consent input { flex: 0 0 auto; width: 17px; height: 17px; margin-top: 2px; accent-color: var(--was-primary); }
.was-consent span { line-height: 1.7; }
.was-whatsapp-result { display: flex; align-items: center; justify-content: center; gap: 9px; margin-top: 12px; padding: 12px 14px; border: 1px solid rgba(37, 211, 102, .3); border-radius: 12px; background: rgba(37, 211, 102, .1); color: #54df88 !important; font-size: 11px; font-weight: 650; }
.was-whatsapp-result[hidden] { display: none; }
.was-whatsapp-result svg { width: 18px; }

/* Case study v2. */
.was-case-hero-v2 { min-height: 760px; }
.was-case-browser { overflow: hidden; min-height: 440px; border: 1px solid var(--was-line-strong); border-radius: 28px; background: linear-gradient(145deg, #fff, #eaf0f7); box-shadow: var(--was-card-shadow); }
.was-case-browser.is-dark-logo { background: linear-gradient(145deg, #17243b, #07111f); }
.was-case-browser-stage { position: relative; overflow: hidden; display: grid; place-items: center; min-height: 400px; padding: 45px; }
.was-case-browser-stage::after { content: ""; position: absolute; inset-block-end: -50%; width: 90%; aspect-ratio: 1; border-radius: 50%; background: var(--project-accent); filter: blur(95px); opacity: .16; }
.was-case-browser-stage img { position: relative; z-index: 2; max-width: 72%; max-height: 195px; object-fit: contain; }
.was-case-browser-stage > em { position: absolute; inset-block-start: 17px; inset-inline-end: 20px; z-index: 2; color: var(--project-accent); font-style: normal; font-size: 10px; font-weight: 700; }
.was-case-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 28px 0; }
.was-case-facts > div { padding: 13px; border: 1px solid var(--was-line); border-radius: 12px; background: var(--was-surface); }
.was-case-facts small { display: block; color: var(--was-faint); font-size: 8px; }
.was-case-facts strong { display: block; margin-top: 5px; color: var(--was-heading); font-size: 10px; line-height: 1.5; }
.was-case-narrative { background: color-mix(in srgb, var(--was-surface-solid) 42%, transparent); }
.was-case-chapter { display: grid; grid-template-columns: 75px minmax(0, 880px); justify-content: center; gap: clamp(25px, 5vw, 70px); padding-block: clamp(40px, 6vw, 75px); }
.was-case-chapter + .was-case-chapter { border-block-start: 1px solid var(--was-line); }
.was-case-chapter > span { color: var(--project-accent); font-size: 12px; font-weight: 700; }
.was-case-chapter h2 { margin-bottom: 22px; font-size: clamp(33px, 4.6vw, 57px); }
.was-case-chapter p { margin: 0; color: var(--was-muted); font-size: 16px; line-height: 2.05; }
.was-case-scope-v2 { border-block: 1px solid var(--was-line); }
.was-scope-list-v2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.was-scope-list-v2 article { display: flex; align-items: center; gap: 15px; padding: 19px; border: 1px solid var(--was-line); border-radius: 14px; background: var(--was-surface); }
.was-scope-list-v2 span { color: var(--project-accent); font-size: 9px; }
.was-scope-list-v2 strong { color: var(--was-heading); font-size: 12px; }
.was-case-gallery-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; }
.was-case-gallery-grid figure { overflow: hidden; min-height: 350px; margin: 0; border: 1px solid var(--was-line); border-radius: 20px; background: var(--was-surface); }
.was-case-gallery-grid img { width: 100%; height: 100%; object-fit: cover; }
.was-outcome-panel { display: grid; grid-template-columns: 55px minmax(0, 1fr) auto; align-items: center; gap: clamp(25px, 5vw, 70px); padding: clamp(30px, 5vw, 62px); border: 1px solid color-mix(in srgb, var(--project-accent) 30%, var(--was-line)); border-radius: 30px; background: radial-gradient(circle at 100% 0, color-mix(in srgb, var(--project-accent) 13%, transparent), transparent 24rem), var(--was-surface); }
.was-outcome-panel > span { color: var(--project-accent); font-size: 12px; font-weight: 700; }
.was-outcome-panel h2 { margin-bottom: 16px; font-size: clamp(30px, 4vw, 50px); }
.was-outcome-panel p { margin: 0; color: var(--was-muted); font-size: 14px; line-height: 2; }

/* Motion reliability and richer desktop decoration. */
.was-js .was-site:not(.is-motion-ready)[data-animations="on"] [data-reveal] { opacity: 1; transform: none; }
.was-site.is-motion-ready[data-animation-level="subtle"] [data-reveal] { transform: translateY(13px); transition-duration: .55s; }
.was-site.is-motion-ready[data-animation-level="expressive"] [data-reveal] { transform: translateY(32px) scale(.985); transition-duration: .9s; }
.was-site.is-motion-ready[data-animation-level="expressive"] [data-reveal].is-visible { transform: translateY(0) scale(1); }
.was-logo-marquee.is-paused .was-logo-track { animation-play-state: paused; }
.was-site[data-animations="on"] .was-orb-one { animation: was-orb-path 9s ease-in-out infinite; }
.was-site[data-animations="on"] .was-orb-two { animation: was-orb-path 12s ease-in-out -4s infinite reverse; }
.was-site[data-animations="on"] .was-glow-one { animation: was-glow-breathe 13s ease-in-out infinite; }
.was-site[data-animations="on"] .was-glow-two { animation: was-glow-breathe 16s ease-in-out -6s infinite reverse; }

@keyframes was-drift {
	0%, 100% { transform: translate3d(0, 0, 0) rotate(0); }
	50% { transform: translate3d(18px, -13px, 0) rotate(8deg); }
}
@keyframes was-pulse-soft {
	0%, 100% { transform: scale(.8); opacity: .55; }
	50% { transform: scale(1.2); opacity: 1; }
}
@keyframes was-orb-path {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50% { transform: translate3d(18px, -24px, 0); }
}
@keyframes was-glow-breathe {
	0%, 100% { transform: scale(.9); opacity: .1; }
	50% { transform: scale(1.08); opacity: .18; }
}

@media (max-width: 1180px) {
	.was-collaboration-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.was-collaboration-grid article { min-height: 330px; }
}

@media (max-width: 960px) {
	.was-submenu-toggle, .was-submenu { display: none; }
	.was-menu-toggle {
		display: grid;
		place-content: center;
		flex: 0 0 42px;
		width: 42px;
		height: 42px;
		gap: 4px;
		overflow: visible;
	}
	.was-menu-toggle span { display: block; width: 18px; height: 1.5px; margin: 0; border-radius: 99px; background: currentColor; transform-origin: center; transition: transform .22s, opacity .22s; }
	.was-menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(5.5px) rotate(45deg); }
	.was-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; transform: scaleX(.3); }
	.was-menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-5.5px) rotate(-45deg); }
	.was-mobile-nav {
		position: fixed;
		inset: 12px;
		inset-block-start: max(12px, env(safe-area-inset-top));
		z-index: 1200;
		display: grid;
		grid-template-rows: auto 1fr auto;
		max-height: calc(100svh - 24px);
		padding: 16px;
		border: 1px solid var(--was-line-strong);
		border-radius: 23px;
		background: color-mix(in srgb, var(--was-surface-solid) 97%, transparent);
		box-shadow: 0 35px 120px rgba(0, 0, 0, .42);
		-webkit-backdrop-filter: blur(22px);
		backdrop-filter: blur(22px);
	}
	.was-mobile-nav[hidden] { display: none; }
	.was-mobile-nav-head { display: flex; align-items: center; justify-content: space-between; padding: 5px 5px 14px; border-block-end: 1px solid var(--was-line); }
	.was-mobile-nav-head strong { color: var(--was-heading); font-size: 13px; }
	.was-mobile-nav-head button { display: grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 1px solid var(--was-line); border-radius: 50%; background: var(--was-surface); color: var(--was-heading); font-size: 22px; }
	.was-mobile-nav-links { overflow-y: auto; padding-block: 12px; }
	.was-mobile-nav-links > a,
	.was-mobile-nav-links summary { display: flex; align-items: center; justify-content: space-between; padding: 14px 12px; border-radius: 12px; color: var(--was-heading); font-size: 15px; font-weight: 600; cursor: pointer; list-style: none; }
	.was-mobile-nav-links > a.is-active { background: color-mix(in srgb, var(--was-primary) 12%, var(--was-surface)); color: var(--was-accent); }
	.was-mobile-nav-links details summary::-webkit-details-marker { display: none; }
	.was-mobile-nav-links details[open] summary span { transform: rotate(45deg); }
	.was-mobile-nav-links details > a { display: block; margin-inline-start: 14px; padding: 9px 13px; border-inline-start: 1px solid var(--was-line); color: var(--was-muted); font-size: 11px; }
	.was-mobile-nav-foot { padding-top: 12px; border-block-start: 1px solid var(--was-line); }
	.was-mobile-nav-foot a { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; border-radius: 14px; background: rgba(37, 211, 102, .12); color: #54df88; font-size: 12px; font-weight: 650; }
	.was-mobile-nav-foot svg { width: 18px; }
	body.was-menu-open { overflow: hidden; }
	.was-finder-shell,
	.was-faq-layout { grid-template-columns: 1fr; }
	.was-faq-intro { position: static; }
	.was-showcase-card.is-featured { grid-column: auto; display: block; }
	.was-showcase-card.is-featured .was-showcase-visual { min-height: 390px; border-inline: 0; border-block-end: 1px solid var(--was-line); }
	.was-case-hero-v2 { min-height: auto; }
	.was-about-hero { min-height: auto; contain: paint; }
	.was-about-hero .was-inner-hero-grid { min-height: 0; }
	.was-about-portrait { height: 520px; overflow: hidden; }
}

@media (max-width: 760px) {
	.was-brand-images { width: var(--was-logo-mobile, 40px); height: var(--was-logo-mobile, 40px); }
	.was-brand-image .was-brand-images { width: calc(var(--was-logo-mobile, 40px) * 1.05); height: calc(var(--was-logo-mobile, 40px) * 1.05); }
	.was-header-inner { gap: 10px; }
	.was-header-actions { gap: 6px; }
	.was-lang-switch, .was-theme-toggle, .was-menu-toggle { flex-basis: 40px; width: 40px; height: 40px; }
	.was-tracks-grid,
	.was-track-directory-grid,
	.was-showcase-grid,
	.was-collaboration-grid,
	.was-scope-list-v2,
	.was-case-gallery-grid { grid-template-columns: 1fr; }
	.was-track-card > p { min-height: 0; }
	.was-finder-shell { padding: 22px; }
	.was-finder-card { padding: 18px; }
	.was-choice-grid { grid-template-columns: 1fr; }
	.was-choice-grid span { min-height: 54px; }
	.was-finder-actions { align-items: stretch; flex-direction: column-reverse; }
	.was-finder-actions .was-button { width: 100%; }
	.was-showcase-visual,
	.was-showcase-card.is-featured .was-showcase-visual { min-height: 320px; }
	.was-showcase-art { padding: 32px; }
	.was-showcase-art img { max-width: 75%; max-height: 140px; }
	.was-portfolio-sectors { align-items: flex-start; flex-direction: column; }
	.was-collaboration-grid article { min-height: 0; }
	.was-faq-list summary { grid-template-columns: 28px 1fr auto; gap: 10px; padding-block: 18px; }
	.was-faq-list summary strong { font-size: 13px; }
	.was-faq-list details > div { padding-inline: 38px 5px; }
	.was-form-decoration i { display: none; }
	.was-contact-form { -webkit-backdrop-filter: none; backdrop-filter: none; }
	.was-case-facts { grid-template-columns: 1fr; }
	.was-case-browser { min-height: 320px; }
	.was-case-browser-stage { min-height: 285px; padding: 28px; }
	.was-case-chapter { grid-template-columns: 35px 1fr; gap: 15px; }
	.was-case-chapter p { font-size: 14px; }
	.was-outcome-panel { grid-template-columns: 35px 1fr; align-items: start; }
	.was-outcome-panel .was-button { grid-column: 1 / -1; width: 100%; }
	.was-ambient .was-glow { filter: blur(65px); opacity: .08; }
	.was-grid-plane { opacity: .1; }
	.was-logo-marquee { min-height: 90px; -webkit-mask-image: none; mask-image: none; }
	.was-logo-track { animation-duration: 34s; }
	.was-site[data-mobile-animations="off"] .was-logo-marquee { overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	.was-site[data-mobile-animations="off"] .was-logo-marquee::-webkit-scrollbar { display: none; }
	.was-site[data-mobile-animations="off"] .was-logo-track { transform: none !important; }
	.was-site[data-mobile-animations="off"] .was-logo-group[aria-hidden="true"] { display: none; }
	.was-header.is-scrolled, .was-mobile-nav { -webkit-backdrop-filter: none; backdrop-filter: none; }
	.was-site[data-mobile-animations="off"] *,
	.was-site[data-mobile-animations="off"] *::before,
	.was-site[data-mobile-animations="off"] *::after { animation: none !important; transition-duration: .001ms !important; }
	.was-site[data-mobile-animations="off"] [data-reveal] { opacity: 1 !important; transform: none !important; }
}

@media (max-width: 460px) {
	.was-container { width: min(calc(100% - 24px), var(--was-container)); }
	.was-wordmark { display: none; }
	.was-header-actions { margin-inline-start: auto; }
	.was-lang-switch, .was-theme-toggle, .was-menu-toggle { flex-basis: 38px; width: 38px; height: 38px; }
	.was-menu-toggle { margin: 0; transform: none; }
	.was-contact-shell { padding: 18px; }
	.was-contact-form { padding: 17px; border-radius: 19px; }
	.was-showcase-content > div { align-items: flex-start; flex-direction: column; }
}

/* Administrative motion and decoration switches. */
.was-site[data-animations="off"] *,
.was-site[data-animations="off"] *::before,
.was-site[data-animations="off"] *::after {
	animation: none !important;
	transition-duration: .001ms !important;
}

.was-site[data-animations="off"] [data-reveal] {
	opacity: 1 !important;
	transform: none !important;
}

.was-site[data-animations="off"] .was-logo-marquee {
	overflow-x: auto;
	-webkit-mask-image: none;
	mask-image: none;
	scrollbar-width: none;
}

.was-site[data-animations="off"] .was-logo-marquee::-webkit-scrollbar { display: none; }
.was-site[data-animations="off"] .was-logo-track { transform: none !important; }
.was-site[data-animations="off"] .was-logo-group[aria-hidden="true"] { display: none; }

/* Administrator-only motion diagnostics opened with ?was_motion_debug=1. */
.was-motion-debug {
	position: fixed;
	inset-inline-start: 18px;
	inset-block-end: 18px;
	z-index: 100000;
	width: min(360px, calc(100vw - 36px));
	padding: 18px;
	border: 1px solid rgba(109, 93, 251, .35);
	border-radius: 18px;
	background: rgba(7, 17, 31, .96);
	box-shadow: 0 22px 70px rgba(0, 0, 0, .32);
	color: #fff;
	font-family: "IBM Plex Sans Arabic", system-ui, sans-serif;
	backdrop-filter: blur(18px);
}

.was-motion-debug > strong { display: block; padding-inline-end: 30px; color: #fff; font-size: 14px; }
.was-motion-debug > button { position: absolute; inset-block-start: 10px; inset-inline-end: 10px; display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 1px solid rgba(255, 255, 255, .14); border-radius: 50%; background: rgba(255, 255, 255, .06); color: #fff; cursor: pointer; }
.was-motion-debug dl { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px 15px; margin: 15px 0 0; }
.was-motion-debug dt, .was-motion-debug dd { margin: 0; font-size: 10px; line-height: 1.55; }
.was-motion-debug dt { color: #9caac1; }
.was-motion-debug dd { color: #f0c76a; font-family: "Bricolage Grotesque", monospace; direction: ltr; text-align: end; }
.was-motion-debug dd.is-good { color: #4be0ce; }
.was-motion-debug dd.is-bad { color: #ff8e95; }

.was-site[data-decorations="off"] .was-form-decoration,
.was-site[data-decorations="off"] .was-portrait-orbit,
.was-site[data-decorations="off"] .was-portrait-shine,
.was-site[data-decorations="off"] .was-about-portrait-glow {
	display: none !important;
}

.was-site[data-decorations="off"] .was-contact-shell::before {
	content: none;
}

@supports (content-visibility: auto) {
	.was-section {
		content-visibility: auto;
		contain-intrinsic-block-size: auto 720px;
	}
}
