/* ==========================================================================
   World IT Center — main styles
   ========================================================================== */

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

html {
	scroll-behavior: smooth;
	overflow-x: clip;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

body {
	margin: 0;
	font-family: var(--witc-font-body);
	font-size: var(--witc-fs-base);
	font-weight: var(--witc-fw-regular);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink);
	background: var(--witc-page);
	overflow-x: clip;
	-webkit-font-smoothing: antialiased;
}

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

a {
	color: var(--witc-navy-mid);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15em;
}

a:hover {
	color: var(--witc-beam);
}

/* Keep headings/titles from shifting color when their parent link is hovered. */
h1 a,
h1 a:hover,
h2 a,
h2 a:hover,
h3 a,
h3 a:hover,
h4 a,
h4 a:hover,
h5 a,
h5 a:hover,
h6 a,
h6 a:hover,
.witc-section-head__title a,
.witc-section-head__title a:hover,
.witc-page-header__title a,
.witc-page-header__title a:hover,
.witc-service__title a,
.witc-service__title a:hover,
.witc-cta__title a,
.witc-cta__title a:hover {
	color: inherit;
}

.witc-pillar:hover,
.witc-pillar:hover .witc-pillar__title,
.witc-pillar:hover .witc-pillar__text,
.witc-pillar:hover .witc-pillar__more {
	color: inherit;
}

.witc-pillar:hover .witc-pillar__title {
	color: #fff;
}

.witc-pillar:hover .witc-pillar__text {
	color: rgba(255, 255, 255, 0.86);
}

.witc-pillar:hover .witc-pillar__more {
	color: #8fc1ff;
}

.witc-hero-feature:hover,
.witc-hero-feature:hover .witc-hero-feature__title,
.witc-hero-feature:hover .witc-hero-feature__cta,
.witc-hero-vertical:hover,
.witc-hero-vertical:hover .witc-hero-vertical__title {
	color: var(--witc-white);
}

.witc-hero-feature:hover .witc-hero-feature__eyebrow,
.witc-hero-vertical:hover .witc-hero-vertical__mark {
	color: var(--witc-beam);
}

.witc-hero-vertical:hover .witc-hero-vertical__text {
	color: rgba(255, 255, 255, 0.58);
}

:focus-visible {
	outline: 2px solid var(--witc-beam);
	outline-offset: 3px;
}

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

.witc-skip-link {
	position: absolute;
	left: var(--witc-space-4);
	top: -100px;
	z-index: var(--witc-z-skip);
	background: var(--witc-navy);
	color: var(--witc-white);
	padding: var(--witc-space-3) var(--witc-space-4);
	border-radius: var(--witc-radius-btn);
	text-decoration: none;
}

.witc-skip-link:focus {
	top: var(--witc-space-4);
	color: var(--witc-white);
}

.witc-container {
	width: min(100% - (var(--witc-gutter) * 2), var(--witc-container));
	margin-inline: auto;
}

.witc-container--narrow {
	width: min(100% - (var(--witc-gutter) * 2), var(--witc-container-narrow));
}

.witc-main {
	padding-top: var(--witc-header-offset);
}

/* -------------------------------------------------------------------------- */
/* Typography helpers                                                         */
/* -------------------------------------------------------------------------- */

.witc-eyebrow {
	margin: 0 0 var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--witc-beam);
}

.witc-eyebrow--on-dark {
	color: var(--witc-beam);
}

.witc-lead {
	margin: 0 0 var(--witc-space-6);
	font-size: var(--witc-fs-md);
	color: var(--witc-ink-muted);
	max-width: 38rem;
}

.witc-section-head {
	margin-bottom: var(--witc-space-10);
	max-width: 40rem;
}

.witc-section-head--left {
	max-width: 42rem;
	text-align: left;
	margin-inline: 0;
}

.witc-section-head--left .witc-section-head__lede {
	margin-inline: 0;
}

.witc-section-head--split {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	justify-content: space-between;
	gap: var(--witc-space-6);
	max-width: none;
}

.witc-section-head__title {
	margin: 0;
	font-family: var(--witc-font-display);
	font-size: clamp(1.55rem, 2.6vw, 2.1rem);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-tight);
	letter-spacing: -0.02em;
	color: var(--witc-navy);
	text-wrap: balance;
}

.witc-section-head__lede {
	margin: var(--witc-space-4) 0 0;
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
	max-width: 40rem;
}

.witc-page-header {
	margin-bottom: var(--witc-space-10);
}

.witc-page-header__title {
	margin: 0;
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-2xl);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-tight);
	color: var(--witc-navy-deep);
}

.witc-text-link {
	font-weight: var(--witc-fw-semibold);
	text-decoration: none;
	color: var(--witc-navy);
}

.witc-text-link:hover {
	color: var(--witc-beam);
}

.witc-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--witc-space-3);
	align-items: center;
}

/* -------------------------------------------------------------------------- */
/* Buttons                                                                    */
/* -------------------------------------------------------------------------- */

.witc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--witc-space-2);
	min-height: 46px;
	padding: 0 1.4rem;
	border: 1px solid transparent;
	border-radius: 10px;
	font-family: var(--witc-font-display);
	font-size: 0.92rem;
	font-weight: var(--witc-fw-bold);
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: background var(--witc-transition), color var(--witc-transition), border-color var(--witc-transition), transform var(--witc-transition);
}

.witc-btn:hover {
	text-decoration: none;
}

.witc-btn--sm {
	min-height: 2.35rem;
	padding: 0.55rem 1rem;
	font-size: var(--witc-fs-xs);
}

.witc-btn--block {
	width: 100%;
}

.witc-btn--primary {
	background: var(--witc-navy-btn);
	color: var(--witc-white);
}

.witc-btn--primary:hover {
	background: #0d2744;
	color: var(--witc-white);
}

.witc-btn--light {
	background: var(--witc-white);
	color: var(--witc-navy-btn);
}

.witc-btn--light:hover {
	background: #eaf3ff;
	color: var(--witc-navy-btn);
}

.witc-btn--ghost {
	background: transparent;
	border-color: var(--witc-border);
	color: var(--witc-navy-btn);
}

.witc-btn--ghost:hover {
	border-color: var(--witc-navy);
	color: var(--witc-navy-deep);
}

.witc-btn--on-dark {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.35);
	color: var(--witc-white);
	backdrop-filter: blur(8px);
}

.witc-btn--solid-on-dark {
	background: var(--witc-white);
	border-color: var(--witc-white);
	color: var(--witc-navy-deep);
}

.witc-btn--solid-on-dark:hover {
	background: var(--witc-beam);
	border-color: var(--witc-beam);
	color: var(--witc-navy-deep);
}

.witc-btn--ghost-on-dark {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.4);
	color: var(--witc-white);
}

.witc-btn--ghost-on-dark:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.7);
	color: var(--witc-white);
}

.witc-btn--on-dark:hover {
	background: rgba(255, 255, 255, 0.22);
	color: var(--witc-white);
}

.witc-btn--beam {
	background: var(--witc-beam);
	border-color: var(--witc-beam);
	color: var(--witc-white);
}

.witc-btn--beam:hover {
	background: #33c6e2;
	border-color: #33c6e2;
	color: var(--witc-white);
}

/* -------------------------------------------------------------------------- */
/* Topbar                                                                     */
/* -------------------------------------------------------------------------- */

.witc-topbar {
	background: var(--witc-navy-deep);
	color: rgba(255, 255, 255, 0.88);
	font-family: var(--witc-font-display);
	font-size: 0.6875rem;
	font-weight: var(--witc-fw-medium);
	letter-spacing: 0.01em;
	height: var(--witc-topbar-h);
}

.witc-topbar__inner {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--witc-space-4);
	height: 100%;
	min-height: var(--witc-topbar-h);
}

.witc-topbar__nav {
	min-width: 0;
	flex: 0 1 auto;
}

.witc-topbar__list {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.4rem;
	margin: 0;
	padding: 0.35rem 0;
	list-style: none;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.witc-topbar__list::-webkit-scrollbar {
	display: none;
}

.witc-topbar__list a,
.witc-topbar__pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.28rem 0.75rem;
	border-radius: 999px;
	border: 1px solid transparent;
	line-height: 1.2;
	font-weight: var(--witc-fw-semibold);
	text-decoration: none;
	white-space: nowrap;
	text-transform: capitalize;
	transition:
		background var(--witc-transition),
		border-color var(--witc-transition),
		color var(--witc-transition),
		box-shadow var(--witc-transition);
}

.witc-topbar__pill-icon {
	display: inline-flex;
	flex-shrink: 0;
	line-height: 0;
}

.witc-topbar__pill-icon svg {
	display: block;
}

.witc-topbar__pill--shop {
	background: var(--witc-beam);
	border-color: #33c6e2;
	color: var(--witc-white);
}

.witc-topbar__pill--shop:hover {
	background: #33c6e2;
	color: var(--witc-white);
	box-shadow: 0 0 0 1px rgba(0, 180, 216, 0.35);
}

.witc-topbar__pill--direct {
	background: var(--witc-orange);
	border-color: #f97316;
	color: var(--witc-white);
}

.witc-topbar__pill--direct:hover {
	background: #f97316;
	color: var(--witc-white);
	box-shadow: 0 0 0 1px rgba(234, 88, 12, 0.35);
}

.witc-topbar__pill--digital {
	background: #16a34a;
	border-color: #22c55e;
	color: var(--witc-white);
}

.witc-topbar__pill--digital:hover {
	background: #22c55e;
	color: var(--witc-white);
	box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.35);
}

@media (min-width: 768px) {
	.witc-topbar {
		font-size: 0.75rem;
	}

	.witc-topbar__list {
		gap: 0.5rem;
	}

	.witc-topbar__list a,
	.witc-topbar__pill {
		padding: 0.32rem 0.9rem;
	}
}

/* -------------------------------------------------------------------------- */
/* Header                                                                     */
/* -------------------------------------------------------------------------- */

.witc-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: var(--witc-z-header);
	width: 100%;
	background: var(--witc-white);
	border-bottom: 1px solid transparent;
	transition: border-color var(--witc-transition), box-shadow var(--witc-transition);
	overflow: visible;
}

.witc-header.is-scrolled {
	border-bottom-color: var(--witc-border);
	box-shadow: var(--witc-shadow-header);
}

.admin-bar .witc-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	.admin-bar .witc-header {
		top: 46px;
	}
}

.witc-header__bar {
	background: var(--witc-white);
	perspective: 1400px;
	perspective-origin: 50% 0%;
}

.witc-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--witc-space-4);
	min-height: var(--witc-bar-h);
	height: var(--witc-bar-h);
}

.witc-logo {
	flex-shrink: 0;
}

.witc-nav {
	display: none;
	min-width: 0;
	flex: 1 1 auto;
}

.witc-nav__list {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.witc-nav__list > .menu-item {
	position: relative;
	display: flex;
	align-items: center;
	padding: 0 0.35rem;
}

.witc-nav__list > .menu-item + .menu-item {
	padding-left: 0.85rem;
	margin-left: 0.5rem;
	/* background divider — works even when mega items are position: static */
	background-image: linear-gradient(
		rgba(15, 36, 56, 0.18),
		rgba(15, 36, 56, 0.18)
	);
	background-size: 1px 0.9rem;
	background-position: left center;
	background-repeat: no-repeat;
}

.witc-nav__list > .menu-item > a,
.witc-nav__link {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.45rem 0.7rem;
	border-radius: 999px;
	color: var(--witc-ink);
	font-family: var(--witc-font-display);
	font-size: 0.875rem;
	font-weight: var(--witc-fw-medium);
	text-decoration: none;
	white-space: nowrap;
}

.witc-nav__list > .menu-item > a:hover,
.witc-nav__list > .current-menu-item > a,
.witc-nav__list > .menu-item-has-mega.is-mega-open > .witc-nav__link {
	background: var(--witc-surface);
	color: var(--witc-navy);
}

.witc-nav__caret {
	display: inline-block;
	width: 0.45rem;
	height: 0.45rem;
	flex-shrink: 0;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	opacity: 0.7;
	transition: transform 0.2s ease;
}

.menu-item-has-mega.is-mega-open > .witc-nav__link .witc-nav__caret {
	transform: rotate(225deg);
}

/* Mega menus */
.witc-nav__list > .menu-item-has-mega {
	position: static;
}

.witc-mega-panel {
	position: absolute;
	top: calc(100% - 1px);
	left: 50%;
	z-index: 30;
	width: min(100% - (var(--witc-gutter) * 2), var(--witc-container));
	padding: var(--witc-space-6) var(--witc-space-6) var(--witc-space-8);
	background: var(--witc-white);
	border: 1px solid var(--witc-border);
	border-radius: 0 0 var(--witc-radius-lg) var(--witc-radius-lg);
	box-shadow: var(--witc-shadow-header);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform-origin: 50% 0%;
	transform: translate3d(-50%, -0.4rem, 0) rotateX(-72deg);
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	transition:
		transform 0.42s cubic-bezier(0.16, 1, 0.3, 1),
		opacity 0.28s cubic-bezier(0.22, 1, 0.36, 1),
		visibility 0s linear 0.42s;
}

.witc-nav__list > .menu-item-has-mega.is-mega-open > .witc-mega-panel,
.witc-nav__list > .menu-item-has-mega:focus-within > .witc-mega-panel {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate3d(-50%, 0, 0) rotateX(0deg);
	transition:
		transform 0.48s cubic-bezier(0.16, 1, 0.3, 1),
		opacity 0.22s ease-out,
		visibility 0s linear 0s;
}

.witc-mega-panel .witc-container,
.witc-mega__inner {
	width: 100%;
	margin-inline: 0;
}

.witc-mega__grid {
	display: grid;
	gap: var(--witc-space-8);
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (prefers-reduced-motion: reduce) {
	.witc-mega-panel {
		transform: translate3d(-50%, 0, 0);
		transition: opacity 120ms ease, visibility 120ms ease;
	}

	.witc-nav__list > .menu-item-has-mega.is-mega-open > .witc-mega-panel,
	.witc-nav__list > .menu-item-has-mega:focus-within > .witc-mega-panel {
		transform: translate3d(-50%, 0, 0);
		transition: opacity 120ms ease, visibility 120ms ease;
	}
}

.witc-mega__heading {
	margin: 0 0 var(--witc-space-4);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--witc-beam);
}

.witc-mega__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.35rem;
}

.witc-mega__list a {
	display: block;
	padding: 0.35rem 0;
	color: var(--witc-ink);
	text-decoration: none;
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-medium);
}

.witc-mega__list a:hover {
	color: var(--witc-navy);
}

.witc-mega__promo {
	padding: var(--witc-space-5);
	border-radius: var(--witc-radius-lg);
	background:
		radial-gradient(circle at top right, rgba(0, 180, 216, 0.16), transparent 55%),
		var(--witc-surface);
	border: 1px solid var(--witc-border);
}

.witc-mega__promo-eyebrow {
	margin: 0 0 var(--witc-space-2);
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--witc-beam);
}

.witc-mega__promo-title {
	margin: 0 0 var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-snug);
	color: var(--witc-navy-deep);
}

.witc-mega__promo-text {
	margin: 0 0 var(--witc-space-5);
	color: var(--witc-ink-muted);
	font-size: var(--witc-fs-sm);
}

.witc-mega__promo--image {
	padding: 0;
	overflow: hidden;
	display: grid;
}

.witc-mega__promo-img {
	width: 100%;
	height: 6.5rem;
	object-fit: cover;
}

.witc-mega__promo-body {
	padding: var(--witc-space-5);
}

.witc-nav__list > .menu-item-has-children {
	position: relative;
}

.witc-nav__list > .menu-item-has-children > .sub-menu {
	display: none;
	position: absolute;
	top: calc(100% + 0.35rem);
	left: 0;
	min-width: 14rem;
	margin: 0;
	padding: var(--witc-space-2);
	list-style: none;
	background: var(--witc-white);
	border: 1px solid var(--witc-border);
	border-radius: var(--witc-radius-md);
	box-shadow: var(--witc-shadow-soft);
	z-index: 5;
}

.witc-nav__list > .menu-item-has-children:hover > .sub-menu,
.witc-nav__list > .menu-item-has-children:focus-within > .sub-menu {
	display: grid;
	gap: 0.15rem;
}

.witc-nav__list .sub-menu a {
	display: block;
	padding: 0.55rem 0.75rem;
	border-radius: var(--witc-radius-sm);
	color: var(--witc-ink);
	font-size: var(--witc-fs-sm);
	text-decoration: none;
}

.witc-nav__list .sub-menu a:hover {
	background: var(--witc-surface);
	color: var(--witc-navy);
}

.witc-nav__list .sub-menu .sub-menu {
	display: none;
}

.witc-logo img {
	width: auto;
	height: 2.4rem;
}

.witc-header__actions {
	display: flex;
	align-items: center;
	gap: var(--witc-space-3);
	flex-shrink: 0;
}

/* Phone pulse — always visible on the right */
.witc-phone-pulse {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	min-height: 2.75rem;
	padding: 0 0.85rem 0 0.65rem;
	border-radius: 999px;
	background: var(--witc-navy);
	color: var(--witc-white);
	text-decoration: none;
	isolation: isolate;
	animation: witc-heartbeat 1.25s ease-in-out infinite;
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
	white-space: nowrap;
}

.witc-phone-pulse:hover,
.witc-phone-pulse:focus-visible {
	color: var(--witc-white);
	background: var(--witc-navy-deep);
}

.witc-phone-pulse__ring {
	position: absolute;
	inset: 0;
	border-radius: 999px;
	z-index: -1;
	box-shadow: 0 0 0 0 rgba(0, 51, 102, 0.55);
	animation: witc-heartbeat-shadow 1.25s ease-out infinite;
}

.witc-phone-pulse__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.85rem;
	height: 1.85rem;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.14);
	line-height: 0;
	flex-shrink: 0;
}

.witc-phone-pulse__label {
	display: none;
}

@media (min-width: 480px) {
	.witc-phone-pulse__label {
		display: inline;
		position: static;
		width: auto;
		height: auto;
		margin: 0;
		clip: auto;
		overflow: visible;
		white-space: nowrap;
	}
}

@media (min-width: 900px) {
	.witc-phone-pulse {
		padding-right: 1rem;
	}

	.witc-phone-pulse__label {
		display: inline;
	}
}

@keyframes witc-heartbeat {
	0%,
	100% {
		transform: scale(1);
	}
	14% {
		transform: scale(1.06);
	}
	28% {
		transform: scale(1);
	}
	42% {
		transform: scale(1.05);
	}
	70% {
		transform: scale(1);
	}
}

@keyframes witc-heartbeat-shadow {
	0% {
		box-shadow:
			0 0 0 0 rgba(0, 180, 216, 0.55),
			0 0 0 0 rgba(0, 51, 102, 0.35);
	}
	40% {
		box-shadow:
			0 0 0 10px rgba(0, 180, 216, 0),
			0 0 0 18px rgba(0, 51, 102, 0);
	}
	100% {
		box-shadow:
			0 0 0 0 rgba(0, 180, 216, 0),
			0 0 0 0 rgba(0, 51, 102, 0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.witc-phone-pulse,
	.witc-phone-pulse__ring {
		animation: none;
	}
}

.witc-nav-toggle {
	width: 2.75rem;
	height: 2.75rem;
	border: 1px solid var(--witc-border);
	border-radius: var(--witc-radius-btn);
	background: var(--witc-white);
	cursor: pointer;
}

.witc-nav-toggle__bars,
.witc-nav-toggle__bars::before,
.witc-nav-toggle__bars::after {
	display: block;
	width: 1.1rem;
	height: 2px;
	margin: 0 auto;
	background: var(--witc-navy);
	border-radius: 2px;
	position: relative;
	transition: transform var(--witc-transition);
}

.witc-nav-toggle__bars::before,
.witc-nav-toggle__bars::after {
	content: "";
	position: absolute;
	left: 0;
}

.witc-nav-toggle__bars::before {
	top: -6px;
}

.witc-nav-toggle__bars::after {
	top: 6px;
}

.witc-mobile-nav {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: var(--witc-z-mobile);
	padding: var(--witc-space-4) var(--witc-gutter) var(--witc-space-6);
	background: var(--witc-white);
	border-top: 1px solid var(--witc-border);
	border-bottom: 1px solid var(--witc-border);
	box-shadow: var(--witc-shadow-header);
	max-height: min(80dvh, 42rem);
	overflow-y: auto;
}

.witc-mobile-nav.is-open {
	display: block;
}

.witc-mobile-nav__list,
.witc-mobile-nav .witc-nav__list {
	margin: 0 0 var(--witc-space-5);
	padding: 0;
	list-style: none;
	display: grid;
	gap: var(--witc-space-1);
}

.witc-mobile-nav .witc-mobile-nav__list > .menu-item > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.85rem 0.25rem;
	color: var(--witc-ink);
	font-family: var(--witc-font-display);
	font-weight: var(--witc-fw-medium);
	text-decoration: none;
	border-bottom: 1px solid var(--witc-surface-2);
	white-space: normal;
}

.witc-mobile-nav .witc-mega-panel {
	position: static;
	left: auto;
	width: 100%;
	transform: none;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	box-shadow: none;
	border: 0;
	border-radius: 0;
	padding: 0 0 var(--witc-space-4);
	display: none;
	transition: none;
	backface-visibility: visible;
}

.witc-mobile-nav .menu-item-has-mega.is-mega-open > .witc-mega-panel {
	display: block;
}

.witc-mobile-nav .witc-mega__grid {
	grid-template-columns: 1fr;
	gap: var(--witc-space-5);
	padding-top: var(--witc-space-3);
}

.witc-mobile-nav .witc-mega__promo {
	order: -1;
}

.witc-mobile-nav .witc-mega__list a {
	display: block;
	padding: 0.45rem 0;
	border-bottom: 0;
	color: var(--witc-ink);
}

.witc-mobile-nav .witc-btn {
	display: inline-flex;
	width: auto;
	max-width: 100%;
	margin-top: 0.25rem;
	border-bottom: 0;
	color: var(--witc-white);
}

.witc-mobile-nav .witc-btn--primary {
	color: var(--witc-white);
}

.witc-mobile-nav .witc-text-link {
	display: inline-flex;
	padding: 0.35rem 0;
	border-bottom: 0;
	color: var(--witc-navy);
}

@media (min-width: 900px) {
	.witc-nav {
		display: block;
	}

	.witc-nav-toggle,
	.witc-mobile-nav {
		display: none !important;
	}
}

@media (max-width: 899px) {
	.witc-nav .witc-mega-panel {
		display: none !important;
	}
}

/* -------------------------------------------------------------------------- */
/* Sections                                                                   */
/* -------------------------------------------------------------------------- */

.witc-section {
	padding: var(--witc-section-y) 0;
}

.witc-section--page {
	padding-top: var(--witc-space-12);
	padding-bottom: var(--witc-space-20);
}

/* Hero */
.witc-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	color: var(--witc-white);
	background: var(--witc-navy-deep);
}

.witc-hero__media {
	position: absolute;
	inset: 0;
	z-index: -1;
	overflow: hidden;
	clip-path: inset(0);
}

.witc-hero__img {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	object-fit: cover;
	object-position: 68% center;
	pointer-events: none;
}

.witc-hero__scrim {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(0, 31, 61, 0.58) 0%, rgba(0, 31, 61, 0.72) 36%, rgba(0, 18, 36, 0.94) 100%),
		linear-gradient(90deg, rgba(0, 31, 61, 0.55) 0%, rgba(0, 31, 61, 0.28) 48%, rgba(0, 31, 61, 0.45) 100%),
		radial-gradient(ellipse 65% 45% at 20% 15%, rgba(0, 180, 216, 0.14), transparent 55%);
}

.witc-hero__glow {
	position: absolute;
	inset: auto 10% -20% 10%;
	height: 40%;
	background: radial-gradient(ellipse at center, rgba(0, 180, 216, 0.18), transparent 70%);
	pointer-events: none;
}

/* Fixed bg is unreliable on many mobile browsers — keep absolute there. */
@media (max-width: 899px) {
	.witc-hero__img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
	}
}

.witc-hero__shell {
	padding: calc(var(--witc-header-offset) + var(--witc-space-16)) 0 var(--witc-space-16);
	display: grid;
	gap: var(--witc-space-8);
}

.witc-hero__intro {
	max-width: 46rem;
	margin-inline: auto;
	text-align: center;
}

.witc-hero__title {
	margin: 0 0 var(--witc-space-4);
	font-family: var(--witc-font-display);
	font-size: clamp(1.75rem, 4.2vw, 2.85rem);
	font-weight: var(--witc-fw-bold);
	line-height: 1.12;
	letter-spacing: -0.03em;
	text-wrap: balance;
}

.witc-hero__lede {
	margin: 0 auto;
	max-width: 38rem;
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: rgba(255, 255, 255, 0.72);
}

.witc-hero__bento {
	display: grid;
	gap: var(--witc-space-3);
}

.witc-hero-feature {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 14rem;
	overflow: hidden;
	border-radius: var(--witc-radius-lg);
	border: 1px solid rgba(255, 255, 255, 0.1);
	text-decoration: none;
	color: var(--witc-white);
	background: rgba(0, 31, 61, 0.65);
}

.witc-hero-feature__media {
	position: absolute;
	inset: 0;
}

.witc-hero-feature__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.5;
	transition: transform 500ms ease, opacity 500ms ease;
}

.witc-hero-feature:hover .witc-hero-feature__img {
	transform: scale(1.04);
	opacity: 0.62;
}

.witc-hero-feature__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 20%, rgba(0, 18, 36, 0.92) 100%);
}

.witc-hero-feature__body {
	position: relative;
	z-index: 1;
	display: grid;
	gap: var(--witc-space-2);
	padding: var(--witc-space-5);
}

.witc-hero-feature__eyebrow {
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--witc-beam);
}

.witc-hero-feature__title {
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-snug);
}

.witc-hero-feature__cta {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	margin-top: var(--witc-space-2);
	padding: 0.4rem 0.75rem;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(0, 0, 0, 0.35);
	font-size: 0.75rem;
	font-weight: var(--witc-fw-medium);
	backdrop-filter: blur(8px);
}

.witc-hero-verticals {
	display: grid;
	gap: var(--witc-space-2);
	margin: 0;
	padding: 0;
	list-style: none;
}

.witc-hero-vertical {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	height: 100%;
	padding: 0.85rem 0.9rem;
	border-radius: var(--witc-radius-md);
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(0, 51, 102, 0.55);
	text-decoration: none;
	color: var(--witc-white);
	transition:
		background var(--witc-transition),
		border-color var(--witc-transition),
		transform var(--witc-transition);
}

.witc-hero-vertical:hover {
	background: rgba(10, 74, 122, 0.72);
	border-color: rgba(0, 180, 216, 0.35);
	transform: translateY(-1px);
}

.witc-hero-vertical__mark {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: var(--witc-radius-sm);
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.05);
	color: var(--witc-beam);
	font-family: var(--witc-font-display);
	font-size: 0.65rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.04em;
}

.witc-hero-vertical__copy {
	min-width: 0;
	display: grid;
	gap: 0.2rem;
}

.witc-hero-vertical__title {
	font-family: var(--witc-font-display);
	font-size: 0.9rem;
	font-weight: var(--witc-fw-semibold);
	line-height: 1.25;
}

.witc-hero-vertical__text {
	font-size: 0.75rem;
	line-height: 1.4;
	color: rgba(255, 255, 255, 0.58);
}

.witc-hero__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--witc-space-3);
	padding: 0.85rem 1rem;
	border-radius: var(--witc-radius-md);
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(0, 31, 61, 0.7);
}

.witc-hero__bar-text {
	margin: 0;
	font-size: 0.75rem;
	font-weight: var(--witc-fw-medium);
	letter-spacing: 0.02em;
	color: rgba(255, 255, 255, 0.7);
}

.witc-hero__bar-btn {
	background: var(--witc-white);
	border-color: var(--witc-white);
	color: var(--witc-navy-deep);
}

.witc-hero__bar-btn:hover {
	background: rgba(255, 255, 255, 0.9);
	border-color: rgba(255, 255, 255, 0.9);
	color: var(--witc-navy-deep);
}

@media (min-width: 768px) {
	.witc-hero__shell {
		padding-top: calc(var(--witc-header-offset) + var(--witc-space-20));
		padding-bottom: var(--witc-space-20);
		gap: var(--witc-space-10);
	}

	.witc-hero__lede {
		font-size: var(--witc-fs-base);
	}

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

@media (min-width: 1100px) {
	.witc-hero__bento {
		grid-template-columns: minmax(16rem, 0.85fr) minmax(0, 1.45fr);
		align-items: stretch;
		gap: var(--witc-space-3);
	}

	.witc-hero-feature {
		min-height: 100%;
	}

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

	.witc-hero-vertical {
		padding: 0.75rem 0.8rem;
	}

	.witc-hero-vertical__title {
		font-size: 0.82rem;
	}

	.witc-hero-vertical__text {
		font-size: 0.7rem;
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}
}

/* Pillars — Where to begin */
.witc-pillars {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(900px 480px at 8% 0%, rgba(0, 180, 216, 0.1), transparent 55%),
		radial-gradient(700px 420px at 100% 100%, rgba(0, 51, 102, 0.07), transparent 50%),
		linear-gradient(180deg, #f4f8fc 0%, var(--witc-surface) 45%, #eef3f8 100%);
}

.witc-pillars .witc-section-head__lede {
	margin-inline: auto;
	max-width: 40rem;
}

.witc-pillars__grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 1fr;
}

@media (min-width: 700px) {
	.witc-pillars__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.35rem;
	}
}

@media (min-width: 1100px) {
	.witc-pillars__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.5rem;
	}
}

.witc-pillar {
	display: grid;
	grid-template-rows: auto 1fr;
	min-height: 100%;
	overflow: hidden;
	border-radius: 16px;
	background: #12345a;
	color: #fff;
	text-decoration: none;
	box-shadow: 0 14px 34px rgba(18, 52, 90, 0.12);
	transition: transform 0.22s var(--witc-transition, ease), box-shadow 0.22s ease;
}

.witc-pillar:hover,
.witc-pillar:focus-visible {
	transform: translateY(-4px);
	box-shadow: 0 20px 40px rgba(18, 52, 90, 0.18);
	color: #fff;
	outline: none;
}

.witc-pillar__media {
	position: relative;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--witc-navy-deep);
}

.witc-pillar__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	transition: transform 0.5s ease;
}

.witc-pillar:hover .witc-pillar__img,
.witc-pillar:focus-visible .witc-pillar__img {
	transform: scale(1.06);
}

.witc-pillar__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(7, 21, 38, 0.05) 20%, rgba(7, 21, 38, 0.55) 100%);
	pointer-events: none;
}

.witc-pillar__index {
	position: absolute;
	left: 1rem;
	bottom: 0.9rem;
	z-index: 1;
	font-family: var(--witc-font-display);
	font-size: 0.75rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.14em;
	color: rgba(255, 255, 255, 0.9);
}

.witc-pillar__body {
	display: grid;
	gap: 0.65rem;
	padding: 1.2rem 1.25rem 1.35rem;
	align-content: start;
}

.witc-pillar__title {
	font-family: var(--witc-font-display);
	font-size: 1.15rem;
	font-weight: var(--witc-fw-bold);
	line-height: 1.25;
	letter-spacing: -0.02em;
	color: #fff;
}

.witc-pillar__text {
	font-size: 0.9rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.86);
}

.witc-pillar__more {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin-top: 0.35rem;
	font-family: var(--witc-font-display);
	font-size: 0.82rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.04em;
	color: #8fc1ff;
}

.witc-pillar__more span {
	transition: transform 0.2s ease;
}

.witc-pillar:hover .witc-pillar__more span,
.witc-pillar:focus-visible .witc-pillar__more span {
	transform: translateX(3px);
}

@media (prefers-reduced-motion: reduce) {
	.witc-pillar,
	.witc-pillar__img,
	.witc-pillar__more span {
		transition: none;
	}

	.witc-pillar:hover,
	.witc-pillar:focus-visible {
		transform: none;
	}

	.witc-pillar:hover .witc-pillar__img,
	.witc-pillar:focus-visible .witc-pillar__img {
		transform: none;
	}
}

/* Services */
.witc-services__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: var(--witc-space-5);
	grid-template-columns: 1fr;
}

@media (min-width: 768px) {
	.witc-services__list {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1024px) {
	.witc-services__list {
		grid-template-columns: repeat(3, 1fr);
	}
}

.witc-service {
	padding: var(--witc-space-6) 0;
	border-top: 1px solid var(--witc-border);
}

.witc-service__title {
	margin: 0 0 var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-bold);
	color: var(--witc-navy);
}

.witc-service__text {
	margin: 0;
	color: var(--witc-ink-muted);
}

/* Study abroad */
.witc-study {
	background:
		radial-gradient(circle at 85% 20%, var(--witc-beam-soft), transparent 40%),
		var(--witc-page);
}

.witc-study__layout {
	display: grid;
	gap: var(--witc-space-10);
	align-items: center;
}

@media (min-width: 900px) {
	.witc-study__layout {
		grid-template-columns: 1.2fr 0.8fr;
	}
}

.witc-study__destinations {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: var(--witc-space-4);
}

.witc-destination {
	display: flex;
	align-items: center;
	gap: var(--witc-space-4);
	padding: var(--witc-space-4) var(--witc-space-5);
	border: 1px solid var(--witc-border);
	border-radius: var(--witc-radius-lg);
	background: var(--witc-white);
	text-decoration: none;
	color: var(--witc-navy-deep);
	font-family: var(--witc-font-display);
	font-weight: var(--witc-fw-semibold);
	transition: border-color var(--witc-transition), transform var(--witc-transition);
}

.witc-destination:hover {
	border-color: var(--witc-beam);
	transform: translateX(4px);
	color: var(--witc-navy-deep);
}

.witc-destination__flag {
	width: 2.5rem;
	height: 2.5rem;
	object-fit: cover;
	border-radius: 50%;
}

/* About */
.witc-about {
	background: var(--witc-surface);
}

.witc-about__layout {
	display: grid;
	gap: var(--witc-space-10);
	align-items: center;
}

@media (min-width: 900px) {
	.witc-about__layout {
		grid-template-columns: 0.95fr 1.05fr;
	}
}

.witc-about__media {
	margin: 0;
	overflow: hidden;
	border-radius: var(--witc-radius-xl);
	box-shadow: var(--witc-shadow-soft);
}

.witc-about__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	min-height: 18rem;
}

.witc-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--witc-space-5) var(--witc-space-6);
	margin: 0 0 var(--witc-space-8);
	padding: 0;
	list-style: none;
}

@media (min-width: 600px) {
	.witc-stats {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.witc-stats__item {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-width: 0;
}

.witc-stats__value {
	font-family: var(--witc-font-display);
	font-size: clamp(1.5rem, 2.5vw, 1.85rem);
	font-weight: var(--witc-fw-bold);
	letter-spacing: -0.03em;
	line-height: 1.1;
	color: var(--witc-navy-deep);
}

.witc-stats__label {
	font-size: var(--witc-fs-xs);
	line-height: 1.35;
	color: var(--witc-ink-muted);
}

/* Partners */
.witc-partners {
	background: var(--witc-page);
	border-block: 1px solid rgba(15, 35, 70, 0.06);
}

.witc-section-head--center {
	margin-inline: auto;
	text-align: center;
}

.witc-partners__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--witc-space-4);
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 700px) {
	.witc-partners__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.witc-partners__item {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 5.5rem;
	padding: var(--witc-space-4) var(--witc-space-5);
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.07);
	border-radius: var(--witc-radius-lg);
	transition:
		transform var(--witc-transition),
		border-color var(--witc-transition),
		box-shadow var(--witc-transition);
}

.witc-partners__item:hover {
	transform: translateY(-4px);
	border-color: rgba(15, 35, 70, 0.14);
	box-shadow: 0 10px 28px rgba(15, 35, 70, 0.1);
}

.witc-partners__logo {
	display: block;
	width: auto;
	max-width: 9.5rem;
	max-height: 3.25rem;
	object-fit: contain;
	transition: transform var(--witc-transition);
}

.witc-partners__item:hover .witc-partners__logo {
	transform: scale(1.06);
}

/* Google reviews — static carousel */
.witc-reviews {
	background:
		linear-gradient(180deg, rgba(232, 240, 248, 0.9) 0%, var(--witc-page) 100%);
	overflow-x: clip;
	padding-block: var(--witc-space-12);
}

.witc-reviews__summary {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	margin: 0 0 var(--witc-space-6);
	text-align: center;
}

.witc-reviews__score {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	margin: 0;
}

.witc-reviews__score-num {
	font-family: var(--witc-font-display);
	font-size: clamp(2rem, 4vw, 2.6rem);
	font-weight: var(--witc-fw-bold);
	letter-spacing: -0.03em;
	line-height: 1;
	color: var(--witc-navy-deep);
}

.witc-reviews__stars {
	color: #e6a700;
	font-size: 1.35rem;
	letter-spacing: 0.08em;
	line-height: 1;
}

.witc-reviews__stars--sm {
	font-size: 0.95rem;
	letter-spacing: 0.06em;
}

.witc-reviews__meta {
	margin: 0;
	font-size: var(--witc-fs-sm);
	line-height: 1.3;
	color: var(--witc-ink-muted);
	text-align: center;
}

.witc-reviews__carousel {
	position: relative;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.witc-reviews__track-wrap {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.witc-reviews__track {
	--witc-reviews-gap: var(--witc-space-5);
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: 100%;
	align-items: stretch;
	gap: var(--witc-reviews-gap);
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

@media (min-width: 640px) {
	.witc-reviews__track {
		grid-auto-columns: calc((100% - var(--witc-reviews-gap)) / 2);
	}
}

@media (min-width: 900px) {
	.witc-reviews__track {
		grid-auto-columns: calc((100% - (2 * var(--witc-reviews-gap))) / 3);
	}
}

.witc-reviews__track::-webkit-scrollbar {
	display: none;
}

.witc-reviews__card {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	min-width: 0;
	height: 100%;
	padding: 1.1rem 1.15rem;
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.07);
	border-radius: var(--witc-radius-xl);
	box-shadow: var(--witc-shadow-soft);
	box-sizing: border-box;
	scroll-snap-align: start;
}

.witc-reviews__controls {
	display: flex;
	justify-content: center;
	gap: 0.65rem;
	margin-top: var(--witc-space-5);
}

.witc-reviews__nav {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border: 1px solid rgba(15, 35, 70, 0.14);
	border-radius: 50%;
	background: var(--witc-white);
	color: var(--witc-navy-deep);
	font-size: 1.35rem;
	line-height: 1;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.witc-reviews__nav:hover,
.witc-reviews__nav:focus-visible {
	background: var(--witc-navy);
	border-color: var(--witc-navy);
	color: var(--witc-white);
	outline: none;
}

.witc-reviews__nav:disabled {
	opacity: 0.4;
	cursor: default;
	pointer-events: none;
}

.witc-reviews__card-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
}

.witc-reviews__source {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	line-height: 0;
}

.witc-reviews__g-icon {
	display: block;
	width: 1.25rem;
	height: 1.25rem;
}

.witc-reviews__quote {
	margin: 0;
	padding: 0;
	border: 0;
	flex: 0 0 auto;
}

.witc-reviews__quote p {
	margin: 0;
	font-size: var(--witc-fs-sm);
	font-style: normal;
	line-height: 1.5;
	color: var(--witc-ink-muted);
}

.witc-reviews__author {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	margin-top: auto;
}

.witc-reviews__avatar {
	flex: 0 0 auto;
	display: block;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 50%;
	object-fit: cover;
	background: var(--witc-navy);
}

.witc-reviews__avatar--fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--witc-white);
	font-size: 0.78rem;
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.02em;
	line-height: 1;
}

.witc-reviews__author-name {
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy-deep);
	line-height: 1.25;
}

.witc-reviews__actions {
	display: flex;
	justify-content: center;
	margin-top: var(--witc-space-8);
}

/* Blog (homepage recent + shared grid) */
.witc-blog {
	background: var(--witc-surface);
}

/* Contact band — form + map */
.witc-contact {
	background:
		radial-gradient(circle at 85% 10%, rgba(0, 180, 216, 0.1), transparent 36%),
		linear-gradient(180deg, var(--witc-surface) 0%, var(--witc-page) 100%);
	overflow-x: clip;
	scroll-margin-top: calc(var(--witc-header-offset) + 1rem);
}

.witc-contact__lede {
	max-width: 38rem;
}

.witc-contact .witc-section-head {
	margin-bottom: var(--witc-space-8);
}

.witc-contact__layout {
	display: grid;
	gap: var(--witc-space-6);
	align-items: stretch;
}

@media (min-width: 960px) {
	.witc-contact__layout {
		grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
		gap: var(--witc-space-8);
	}
}

.witc-contact__form-card,
.witc-contact__aside {
	min-width: 0;
}

.witc-contact__form-card {
	display: grid;
	gap: var(--witc-space-5);
	align-content: start;
	align-self: stretch;
	height: 100%;
	padding: var(--witc-space-6);
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.08);
	border-radius: var(--witc-radius-xl);
	scroll-margin-top: calc(var(--witc-header-offset) + 1rem);
}

@media (min-width: 640px) {
	.witc-contact__form-card {
		padding: var(--witc-space-8);
	}
}

.witc-contact__card-head {
	display: grid;
	gap: var(--witc-space-2);
	padding-bottom: var(--witc-space-2);
	border-bottom: 1px solid rgba(15, 35, 70, 0.08);
	margin-bottom: var(--witc-space-1);
}

.witc-contact__card-title {
	margin: 0;
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-bold);
	color: var(--witc-navy-deep);
	letter-spacing: -0.02em;
}

.witc-contact__card-lede {
	margin: 0;
	max-width: 36rem;
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
	text-wrap: pretty;
}

.witc-contact-form,
.witc-fluent-form {
	display: grid;
	gap: var(--witc-space-4);
}

.witc-contact-form__row {
	display: grid;
	gap: var(--witc-space-4);
	grid-template-columns: 1fr;
}

.witc-contact-form__field {
	margin: 0;
	display: grid;
	gap: 0.4rem;
}

.witc-contact-form__field label,
.witc-fluent-form label {
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy-deep);
}

.witc-contact-form__field input,
.witc-contact-form__field textarea,
.witc-fluent-form input[type="text"],
.witc-fluent-form input[type="email"],
.witc-fluent-form input[type="tel"],
.witc-fluent-form textarea,
.witc-fluent-form select {
	width: 100%;
	margin: 0;
	padding: 0.8rem 0.95rem;
	border: 1px solid rgba(15, 35, 70, 0.14);
	border-radius: var(--witc-radius-md);
	background: var(--witc-white);
	color: var(--witc-ink);
	font: inherit;
	font-size: var(--witc-fs-sm);
	line-height: 1.4;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.witc-contact-form__field textarea,
.witc-fluent-form textarea {
	resize: vertical;
	min-height: 7rem;
}

.witc-contact-form__field input:focus,
.witc-contact-form__field textarea:focus,
.witc-fluent-form input:focus,
.witc-fluent-form textarea:focus,
.witc-fluent-form select:focus {
	outline: none;
	border-color: var(--witc-beam);
	box-shadow: 0 0 0 3px var(--witc-beam-soft);
}

.witc-contact-form__actions {
	display: grid;
	gap: var(--witc-space-3);
	margin-top: var(--witc-space-2);
}

.witc-contact-form__hint {
	margin: 0;
	font-size: var(--witc-fs-xs);
	line-height: 1.4;
	color: var(--witc-ink-muted);
}

.witc-contact__aside {
	display: grid;
	gap: var(--witc-space-4);
}

.witc-contact__map {
	position: relative;
	overflow: hidden;
	min-height: 14rem;
	aspect-ratio: 16 / 11;
	border-radius: var(--witc-radius-xl);
	border: 1px solid rgba(15, 35, 70, 0.08);
	background: var(--witc-surface-2);
}

@media (min-width: 960px) {
	.witc-contact__map {
		min-height: 16rem;
		aspect-ratio: 16 / 12;
	}
}

.witc-contact__map iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	position: absolute;
	inset: 0;
}

.witc-contact__panel,
.witc-contact__details {
	margin: 0;
	padding: 0.4rem;
	list-style: none;
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.15rem;
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.08);
	border-radius: var(--witc-radius-xl);
}

.witc-contact__detail {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.9rem;
	align-items: start;
	padding: 0.9rem 0.95rem;
	border-radius: var(--witc-radius-lg);
	text-decoration: none;
	color: inherit;
	transition: background 0.2s ease;
}

a.witc-contact__detail:hover {
	background: rgba(0, 180, 216, 0.08);
	text-decoration: none;
	color: inherit;
}

.witc-contact__detail--static {
	cursor: default;
}

.witc-contact__detail-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 2.4rem;
	height: 2.4rem;
	margin-top: 0.1rem;
	border-radius: var(--witc-radius-md);
	background: var(--witc-navy);
	color: var(--witc-white);
}

.witc-contact__detail-copy {
	display: grid;
	gap: 0.2rem;
	min-width: 0;
}

.witc-contact__detail-label {
	font-size: 0.7rem;
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: var(--witc-beam);
}

.witc-contact__detail-value {
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
	line-height: 1.4;
	color: var(--witc-navy-deep);
	text-wrap: pretty;
}

.witc-contact__detail-value--stack {
	display: grid;
	gap: 0.15rem;
}

.witc-contact__detail-value--stack a {
	color: inherit;
	text-decoration: none;
}

.witc-contact__detail-value--stack a:hover,
.witc-contact__detail-value--stack a:focus-visible {
	color: var(--witc-navy-mid);
	text-decoration: underline;
}

.witc-contact__detail-meta {
	font-size: var(--witc-fs-xs);
	line-height: 1.4;
	color: var(--witc-ink-muted);
}

a.witc-contact__detail:hover .witc-contact__detail-value {
	color: var(--witc-navy-mid);
}

.witc-contact__hours {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.2rem;
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
	line-height: 1.4;
	color: var(--witc-navy-deep);
}

/* -------------------------------------------------------------------------- */
/* Footer — Key Property layout                                               */
/* -------------------------------------------------------------------------- */

.witc-footer {
	position: relative;
	background: #071526;
	color: rgba(255, 255, 255, 0.82);
	padding-top: clamp(2.75rem, 5vw, 4rem);
	padding-bottom: 0;
	overflow: hidden;
}

.witc-footer a {
	color: rgba(255, 255, 255, 0.9);
	text-decoration: none;
	transition: color 0.15s ease;
}

.witc-footer a:hover,
.witc-footer a:focus-visible {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.witc-footer__inner {
	display: grid;
	gap: clamp(2rem, 4vw, 3rem);
	padding-bottom: clamp(2rem, 4vw, 3rem);
}

@media (min-width: 960px) {
	.witc-footer__inner {
		grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.15fr);
		column-gap: clamp(2rem, 4vw, 3.25rem);
		align-items: start;
	}

	.witc-footer__col--brand {
		padding-right: clamp(1.5rem, 3vw, 2.5rem);
		border-right: 1px solid rgba(255, 255, 255, 0.14);
	}
}

.witc-footer__logo {
	display: inline-block;
	margin-bottom: 1rem;
}

.witc-footer__logo img {
	display: block;
	width: auto;
	max-width: 190px;
	height: auto;
	max-height: 56px;
	object-fit: contain;
	filter: brightness(0) invert(1);
}

.witc-footer__about {
	margin: 0 0 1.5rem;
	max-width: 36rem;
	font-size: 0.94rem;
	line-height: 1.75;
	color: rgba(255, 255, 255, 0.88);
}

.witc-footer__company {
	display: grid;
	gap: 0.45rem;
	margin-bottom: 1.35rem;
}

.witc-footer__company h3,
.witc-footer__menu h3,
.witc-footer__partners h3 {
	margin: 0 0 0.85rem;
	color: #fff;
	font-family: var(--witc-font-display);
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.3;
}

.witc-footer__company p {
	margin: 0;
	font-size: 0.94rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.88);
}

.witc-footer__social {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	width: max-content;
	max-width: 100%;
	gap: 0.55rem;
	margin: 0.75rem 0 0;
}

.witc-footer__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	min-width: 38px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	text-decoration: none;
	transition: color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.witc-footer__social-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.witc-footer__social-icon svg {
	display: block;
	width: 16px;
	height: 16px;
}

.witc-footer__social-link:hover,
.witc-footer__social-link:focus-visible {
	color: #fff;
	background: rgba(255, 255, 255, 0.2);
	text-decoration: none;
	transform: translateY(-1px);
}

.witc-footer__menus {
	display: grid;
	gap: 1.75rem;
}

@media (min-width: 640px) {
	.witc-footer__menus {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.5rem 1.75rem;
	}
}

.witc-footer__menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.55rem;
}

.witc-footer__menu a {
	font-size: 0.94rem;
	color: rgba(255, 255, 255, 0.86);
}

.witc-footer__partners {
	margin-top: 1.75rem;
}

.witc-footer__partners-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
	max-width: 420px;
}

.witc-footer__partner {
	margin: 0;
	padding: 0.55rem 0.65rem;
	border-radius: 8px;
	background: #fff;
	display: grid;
	place-items: center;
	min-height: 3.25rem;
}

.witc-footer__partner img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 2rem;
	object-fit: contain;
}

.witc-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding: 1rem 0 1.25rem;
	font-size: 0.85rem;
	color: rgba(255, 255, 255, 0.72);
}

.witc-footer__bottom-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.85rem 1.25rem;
}

.witc-footer__bottom p {
	margin: 0;
}

.witc-footer .witc-back-top {
	appearance: none;
	border: 1px solid rgba(255, 255, 255, 0.22);
	background: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.9);
	border-radius: 999px;
	padding: 0.45rem 0.9rem;
	font-size: 0.8rem;
	font-weight: 600;
	cursor: pointer;
}

.witc-footer .witc-back-top:hover,
.witc-footer .witc-back-top:focus-visible {
	background: rgba(255, 255, 255, 0.16);
	outline: none;
}

@media (max-width: 640px) {
	.witc-footer__partners-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-width: 100%;
	}
}

/* -------------------------------------------------------------------------- */
/* Blog shell — listing + single (Help Healing–inspired)                      */
/* -------------------------------------------------------------------------- */

.witc-blog-shell {
	--witc-blog-layout: min(var(--witc-container), calc(100% - (var(--witc-gutter) * 2)));
	--witc-blog-aside: 17.5rem;
	--witc-blog-gap: 2rem;
	background:
		radial-gradient(circle at 12% -10%, rgba(0, 180, 216, 0.12), transparent 28rem),
		radial-gradient(circle at 88% 0%, rgba(0, 31, 61, 0.06), transparent 24rem),
		linear-gradient(180deg, #f7f9fc 0%, #eef2f7 100%);
	color: var(--witc-ink);
}

.witc-blog-index {
	padding: var(--witc-space-10) 0 var(--witc-space-16);
}

.witc-posts-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.6rem;
}

@media (min-width: 700px) {
	.witc-posts-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.witc-posts-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.witc-post-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.07);
	border-radius: var(--witc-radius-xl);
	box-shadow: var(--witc-shadow-soft);
	transition: transform var(--witc-transition), box-shadow var(--witc-transition);
}

.witc-post-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 40px -18px rgba(0, 31, 61, 0.28);
}

.witc-post-card__media {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: rgba(15, 35, 70, 0.06);
}

.witc-post-card__img,
.witc-post-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.45s ease;
}

.witc-post-card__placeholder {
	background: linear-gradient(145deg, var(--witc-navy-deep), var(--witc-navy-mid));
}

.witc-post-card:hover .witc-post-card__img {
	transform: scale(1.05);
}

.witc-post-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: var(--witc-space-5) var(--witc-space-5) var(--witc-space-6);
}

.witc-post-card__meta-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem 0.75rem;
	align-items: center;
	margin-bottom: var(--witc-space-3);
	color: var(--witc-ink-muted);
	font-size: var(--witc-fs-xs);
}

.witc-post-card__title {
	margin: 0 0 var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-snug);
	letter-spacing: -0.02em;
}

.witc-post-card__title a {
	color: var(--witc-navy-deep);
	text-decoration: none;
}

.witc-post-card__title a:hover {
	color: var(--witc-beam);
}

.witc-post-card__excerpt {
	margin: 0 0 var(--witc-space-5);
	color: var(--witc-ink-muted);
	font-size: var(--witc-fs-sm);
	line-height: 1.6;
}

.witc-post-card__more {
	margin-top: auto;
	color: var(--witc-navy);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-bold);
	text-decoration: none;
}

.witc-post-card__more span {
	display: inline-block;
	transition: transform 0.2s ease;
}

.witc-post-card:hover .witc-post-card__more span {
	transform: translateX(3px);
}

.witc-pill {
	display: inline-flex;
	align-items: center;
	min-height: 1.85rem;
	padding: 0.15rem 0.75rem;
	border: 1px solid rgba(15, 35, 70, 0.12);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.8);
	color: var(--witc-ink);
	font-size: 0.75rem;
	font-weight: var(--witc-fw-semibold);
	line-height: 1.2;
	white-space: nowrap;
}

.witc-pill--soft {
	border-color: rgba(0, 180, 216, 0.28);
	background: rgba(0, 180, 216, 0.1);
	color: var(--witc-navy-mid);
}

.witc-pagination {
	display: flex;
	justify-content: center;
	margin-top: var(--witc-space-12);
}

.witc-pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	align-items: center;
	justify-content: center;
}

.witc-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5rem;
	min-height: 2.5rem;
	padding: 0 0.7rem;
	border: 1px solid rgba(15, 35, 70, 0.1);
	border-radius: 999px;
	background: var(--witc-white);
	color: var(--witc-navy-deep);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
	text-decoration: none;
	transition: background var(--witc-transition), color var(--witc-transition), border-color var(--witc-transition);
}

.witc-pagination .page-numbers:hover,
.witc-pagination .page-numbers.current {
	background: var(--witc-navy);
	border-color: var(--witc-navy);
	color: var(--witc-white);
}

/* Infinite scroll loader */
.witc-infinite {
	display: grid;
	gap: var(--witc-space-3);
	justify-items: center;
	margin-top: var(--witc-space-10);
	padding: var(--witc-space-2) 0;
}

.witc-infinite[hidden] {
	display: none;
}

.witc-infinite__bar {
	position: relative;
	width: min(16rem, 70%);
	height: 0.35rem;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(15, 35, 70, 0.1);
}

.witc-infinite__bar-fill {
	position: absolute;
	inset: 0 auto 0 0;
	width: 40%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--witc-navy-mid), var(--witc-beam));
	transform: translateX(-120%);
}

.witc-infinite.is-loading .witc-infinite__bar-fill {
	animation: witc-infinite-bar 1.05s ease-in-out infinite;
}

@keyframes witc-infinite-bar {
	0% {
		transform: translateX(-120%);
	}
	100% {
		transform: translateX(320%);
	}
}

.witc-infinite__label {
	margin: 0;
	color: var(--witc-ink-muted);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
}

.witc-infinite__end {
	margin-top: var(--witc-space-10);
	text-align: center;
	color: var(--witc-ink-muted);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
}

.witc-infinite__end[hidden] {
	display: none;
}

@media (prefers-reduced-motion: reduce) {
	.witc-infinite.is-loading .witc-infinite__bar-fill {
		animation: none;
		width: 100%;
		transform: none;
		opacity: 0.85;
	}
}

.witc-empty {
	padding: var(--witc-space-10) 0 var(--witc-space-16);
	text-align: center;
	color: var(--witc-ink-muted);
}

.witc-empty .witc-btn {
	margin-top: var(--witc-space-5);
}

/* Single article */
.witc-article {
	padding: var(--witc-space-10) 0 var(--witc-space-16);
}

.witc-article__inner {
	width: var(--witc-blog-layout);
	max-width: 100%;
	margin-inline: auto;
	box-sizing: border-box;
}

.witc-article__inner--with-aside {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--witc-blog-gap);
	align-items: start;
}

@media (min-width: 1025px) {
	.witc-article__inner--with-aside {
		grid-template-columns: minmax(0, 1fr) var(--witc-blog-aside);
	}
}

.witc-article__main {
	min-width: 0;
	max-width: 100%;
}

.witc-article__aside {
	position: sticky;
	top: calc(var(--witc-header-offset) + 1.25rem);
	width: 100%;
	min-width: 0;
	display: grid;
	gap: 1rem;
}

.witc-article__content.prose h2[id],
.witc-article__content.prose h3[id] {
	scroll-margin-top: calc(var(--witc-header-offset) + 1rem);
}

/* On this page TOC */
.witc-post-toc {
	padding: 0.95rem 0.9rem 1rem;
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.07);
	border-radius: var(--witc-radius-xl);
	box-shadow: var(--witc-shadow-soft);
}

.witc-post-toc__title {
	margin: 0 0 0.5rem;
	color: var(--witc-navy-deep);
	font-family: var(--witc-font-display);
	font-size: 0.88rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: -0.01em;
}

.witc-post-toc__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.05rem;
}

.witc-post-toc__item {
	margin: 0;
}

.witc-post-toc__link {
	display: block;
	padding: 0.35rem 0.45rem;
	border-radius: 7px;
	color: var(--witc-ink-muted);
	font-size: 0.75rem;
	font-weight: var(--witc-fw-medium);
	line-height: 1.35;
	text-decoration: none;
	transition: background 0.15s ease, color 0.15s ease;
}

.witc-post-toc__item--h3 .witc-post-toc__link {
	padding-left: 0.9rem;
	font-size: 0.72rem;
}

.witc-post-toc__link:hover,
.witc-post-toc__link:focus-visible {
	background: #f0f5fa;
	color: var(--witc-navy-deep);
	outline: none;
}

.witc-article__header {
	margin-bottom: var(--witc-space-8);
}

.witc-article__eyebrow {
	margin: 0 0 var(--witc-space-3);
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.witc-article__eyebrow a {
	color: var(--witc-beam);
	text-decoration: none;
}

.witc-article__title {
	margin: 0 0 var(--witc-space-4);
	color: var(--witc-navy-deep);
	font-family: var(--witc-font-display);
	font-size: clamp(2rem, 4.2vw, 3rem);
	font-weight: var(--witc-fw-bold);
	line-height: 1.12;
	letter-spacing: -0.035em;
}

.witc-article__dek {
	margin: 0;
	color: var(--witc-ink-muted);
	font-size: var(--witc-fs-md);
	line-height: var(--witc-lh-body);
}

.witc-article__rule {
	width: 100%;
	height: 1px;
	margin: var(--witc-space-6) 0 var(--witc-space-5);
	border: 0;
	background: rgba(15, 35, 70, 0.12);
}

.witc-article__meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--witc-space-4) var(--witc-space-6);
	align-items: center;
	justify-content: space-between;
}

.witc-article__author {
	display: flex;
	gap: 0.85rem;
	align-items: center;
	min-width: 0;
}

.witc-article__avatar {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	object-fit: cover;
	box-shadow: 0 0 0 3px #fff, 0 0 0 4px rgba(0, 180, 216, 0.45);
}

.witc-article__author-text {
	display: flex;
	flex-direction: column;
	gap: 0.12rem;
	min-width: 0;
}

.witc-article__byline {
	color: var(--witc-ink-muted);
	font-size: var(--witc-fs-xs);
}

.witc-article__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.witc-article__feature {
	margin: 0 0 var(--witc-space-8);
	overflow: hidden;
	border-radius: var(--witc-radius-xl);
	background: rgba(15, 35, 70, 0.06);
}

.witc-article__feature-img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.witc-article__content {
	max-width: none;
	width: 100%;
}

.witc-article__content.prose {
	font-size: 1.0625rem;
	line-height: 1.75;
	color: var(--witc-ink);
}

.witc-article__content.prose > * + * {
	margin-top: 1.15em;
}

.witc-article__content.prose img,
.witc-article__content.prose figure {
	max-width: 100%;
	height: auto;
	border-radius: var(--witc-radius-lg);
}

.witc-article__content.prose ul,
.witc-article__content.prose ol {
	padding-left: 1.25rem;
}

.witc-article__footer {
	margin-top: var(--witc-space-10);
	padding-top: var(--witc-space-6);
	border-top: 1px solid rgba(15, 35, 70, 0.1);
}

.witc-article__back {
	color: var(--witc-navy);
	font-weight: var(--witc-fw-bold);
	text-decoration: none;
}

.witc-article__back:hover {
	color: var(--witc-beam);
}

/* AI summarize aside */
.witc-ai-summarize {
	padding: 0.95rem 0.9rem 1rem;
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.07);
	border-radius: var(--witc-radius-xl);
	box-shadow: var(--witc-shadow-soft);
}

.witc-ai-summarize__title {
	margin: 0 0 0.35rem;
	color: var(--witc-navy-deep);
	font-family: var(--witc-font-display);
	font-size: 0.98rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: -0.01em;
}

.witc-ai-summarize__hint {
	margin: 0 0 0.8rem;
	color: var(--witc-ink-muted);
	font-size: 0.8rem;
	line-height: 1.45;
}

.witc-ai-summarize__buttons {
	display: grid;
	gap: 0.5rem;
}

@media (max-width: 1024px) {
	.witc-ai-summarize__buttons {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.witc-ai-summarize__buttons {
		grid-template-columns: 1fr;
	}
}

.witc-ai-btn {
	display: flex;
	gap: 0.55rem;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0.5rem 0.9rem;
	border: 1px solid rgba(15, 35, 70, 0.1);
	border-radius: var(--witc-radius-md);
	background: var(--witc-surface);
	color: var(--witc-ink);
	font-size: 0.88rem;
	font-weight: var(--witc-fw-bold);
	text-decoration: none;
	transition: transform var(--witc-transition), box-shadow var(--witc-transition), background-color var(--witc-transition), border-color var(--witc-transition), color var(--witc-transition);
}

.witc-ai-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(0, 31, 61, 0.1);
	color: var(--witc-ink);
}

.witc-ai-btn__icon {
	display: inline-flex;
	flex: 0 0 auto;
}

.witc-ai-btn__icon svg {
	width: 17px;
	height: 17px;
}

.witc-ai-btn--chatgpt {
	background: #eaf6f3;
	border-color: rgba(47, 143, 154, 0.28);
	color: #1f6f6a;
}

.witc-ai-btn--google {
	background: #eef5fb;
	border-color: rgba(0, 102, 204, 0.22);
	color: #0a4a7a;
}

.witc-ai-btn--perplexity {
	background: #eef3f8;
	border-color: rgba(15, 35, 70, 0.14);
	color: #2a3a4f;
}

.witc-ai-btn--claude {
	background: #f7f1ea;
	border-color: rgba(224, 162, 64, 0.35);
	color: #8a5a1c;
}

.prose > *:first-child {
	margin-top: 0;
}

.prose h2,
.prose h3 {
	font-family: var(--witc-font-display);
	color: var(--witc-navy-deep);
	line-height: var(--witc-lh-snug);
}

.prose a {
	color: var(--witc-navy-mid);
}

/* -------------------------------------------------------------------------- */
/* Page banner — light inner shell (homepage brand)                           */
/* -------------------------------------------------------------------------- */

.witc-page-banner {
	--witc-banner-bg: var(--witc-surface);
	--witc-banner-text: var(--witc-ink);
	--witc-banner-muted: var(--witc-ink-muted);
	--witc-banner-accent: var(--witc-navy);
	--witc-banner-accent-soft: rgba(0, 51, 102, 0.08);
	--witc-banner-beam-soft: var(--witc-beam-soft);

	position: relative;
	isolation: isolate;
	overflow: hidden;
	height: auto;
	max-height: 300px;
	padding: 1.35rem 0 1.5rem;
	background:
		radial-gradient(900px 520px at 92% 8%, rgba(0, 180, 216, 0.14), transparent 55%),
		radial-gradient(700px 480px at 8% 100%, rgba(0, 51, 102, 0.07), transparent 50%),
		linear-gradient(180deg, #f4f8fc 0%, var(--witc-banner-bg) 48%, #eef3f8 100%);
	color: var(--witc-banner-text);
	box-sizing: border-box;
}

.witc-page-banner__shell {
	position: relative;
	z-index: 2;
}

.witc-page-banner__crumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
	margin: 0 0 0.35rem;
	font-family: var(--witc-font-body);
	font-size: 0.8125rem;
	line-height: 1.3;
}

.witc-page-banner__crumbs a {
	color: var(--witc-navy-mid);
	text-decoration: none;
	font-weight: var(--witc-fw-medium);
	transition: color var(--witc-transition), opacity var(--witc-transition);
}

.witc-page-banner__crumbs a:hover,
.witc-page-banner__crumbs a:focus-visible {
	color: var(--witc-navy);
	opacity: 0.85;
}

.witc-page-banner__crumbs span {
	color: #8993a3;
}

.witc-page-banner__layout {
	position: relative;
	display: grid;
	align-items: start;
	min-height: 0;
}

.witc-page-banner__content {
	position: relative;
	z-index: 3;
	width: 100%;
	max-width: 40rem;
}

.witc-page-banner__eyebrow {
	display: inline-block;
	margin: 0 0 0.2rem;
	color: var(--witc-beam);
	font-family: var(--witc-font-display);
	font-size: 0.72rem;
	font-weight: var(--witc-fw-bold);
	line-height: 1.25;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.witc-page-banner__title {
	margin: 0 0 0.3rem;
	font-family: var(--witc-font-display);
	font-size: clamp(1.65rem, 2.8vw, 2.15rem);
	font-weight: var(--witc-fw-bold);
	line-height: 1.08;
	letter-spacing: -0.03em;
	color: var(--witc-navy);
	text-wrap: balance;
}

.witc-page-banner__lede {
	margin: 0;
	max-width: 36rem;
	color: var(--witc-banner-muted);
	font-family: var(--witc-font-body);
	font-size: 0.92rem;
	font-weight: var(--witc-fw-regular);
	line-height: 1.45;
	text-wrap: pretty;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.witc-page-banner__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem 0.75rem;
	margin-top: 0.65rem;
}

.witc-page-banner__glow {
	position: absolute;
	width: 22.5rem;
	height: 22.5rem;
	border-radius: 50%;
	background: var(--witc-banner-accent-soft);
	filter: blur(12px);
	opacity: 0.75;
	pointer-events: none;
	z-index: 0;
}

.witc-page-banner__glow--one {
	top: -13rem;
	right: 6%;
	background: rgba(0, 180, 216, 0.16);
}

.witc-page-banner__glow--two {
	bottom: -15rem;
	left: 3%;
	opacity: 0.45;
}

.witc-page-banner__visual {
	position: absolute;
	top: 50%;
	right: 0;
	width: 17rem;
	height: 14rem;
	transform: translateY(-50%);
	pointer-events: none;
	z-index: 1;
}

.witc-page-banner__visual-circle {
	position: absolute;
	top: 50%;
	right: 0;
	width: 12.5rem;
	height: 12.5rem;
	transform: translateY(-50%);
	border-radius: 50%;
	background: linear-gradient(
		135deg,
		rgba(0, 51, 102, 0.16),
		rgba(0, 180, 216, 0.08)
	);
	animation: witc-banner-float 7s ease-in-out infinite;
}

.witc-page-banner__visual-ring {
	position: absolute;
	top: 50%;
	right: 0.85rem;
	width: 10rem;
	height: 10rem;
	transform: translateY(-50%);
	border: 1px solid rgba(0, 51, 102, 0.16);
	border-radius: 50%;
}

.witc-page-banner__visual-card {
	position: absolute;
	top: 50%;
	right: 2.25rem;
	width: 10.5rem;
	padding: 1.15rem 1.25rem;
	transform: translateY(-50%) rotate(4deg);
	box-sizing: border-box;
	border: 1px solid rgba(255, 255, 255, 0.85);
	border-radius: 1rem;
	background: rgba(255, 255, 255, 0.78);
	box-shadow: 0 18px 40px rgba(15, 36, 56, 0.1);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	animation: witc-banner-card-float 6s ease-in-out infinite;
}

.witc-page-banner__visual-card span {
	display: block;
	margin: 0 0 0.5rem;
	color: var(--witc-beam);
	font-family: var(--witc-font-display);
	font-size: 0.5625rem;
	font-weight: var(--witc-fw-bold);
	line-height: 1.4;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.witc-page-banner__visual-card strong {
	display: block;
	color: var(--witc-navy);
	font-family: var(--witc-font-display);
	font-size: 1.05rem;
	font-weight: var(--witc-fw-bold);
	line-height: 1.15;
	letter-spacing: -0.02em;
}

.witc-page-banner__visual-line {
	width: 2.25rem;
	height: 0.2rem;
	margin-top: 0.9rem;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--witc-navy), var(--witc-beam));
}

@keyframes witc-banner-float {
	0%,
	100% {
		transform: translateY(-50%);
	}
	50% {
		transform: translateY(calc(-50% - 0.625rem));
	}
}

@keyframes witc-banner-card-float {
	0%,
	100% {
		transform: translateY(-50%) rotate(4deg);
	}
	50% {
		transform: translateY(calc(-50% - 0.45rem)) rotate(3deg);
	}
}

@media (max-width: 1000px) {
	.witc-page-banner {
		height: auto;
		max-height: 300px;
		padding: 1.25rem 0 1.35rem;
	}

	.witc-page-banner__visual {
		right: -2.5rem;
		transform: translateY(-50%) scale(0.85);
		opacity: 0.7;
	}

	.witc-page-banner__content {
		max-width: 36rem;
	}
}

@media (max-width: 767px) {
	.witc-page-banner {
		height: auto;
		max-height: 300px;
		min-height: 0;
		padding: 1.15rem 0 1.25rem;
	}

	.witc-page-banner__crumbs {
		gap: 0.35rem;
		margin-bottom: 0.25rem;
		font-size: 0.75rem;
	}

	.witc-page-banner__eyebrow {
		margin-bottom: 0.15rem;
		font-size: 0.68rem;
	}

	.witc-page-banner__title {
		margin-bottom: 0.25rem;
		font-size: clamp(1.5rem, 7vw, 1.9rem);
	}

	.witc-page-banner__lede {
		font-size: 0.88rem;
		line-height: 1.4;
	}

	.witc-page-banner__visual {
		display: none;
	}

	.witc-page-banner__glow {
		width: 13.75rem;
		height: 13.75rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.witc-page-banner__visual-circle,
	.witc-page-banner__visual-card {
		animation: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Services hub                                                               */
/* -------------------------------------------------------------------------- */

.witc-services-hub {
	background: var(--witc-page);
}

.witc-services-hub__intro {
	display: grid;
	gap: var(--witc-space-10);
	align-items: center;
}

@media (min-width: 900px) {
	.witc-services-hub__intro {
		grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
		gap: var(--witc-space-12);
	}
}

.witc-services-hub__media {
	margin: 0;
	border-radius: var(--witc-radius-xl);
	overflow: hidden;
	background: var(--witc-surface);
}

.witc-services-hub__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.witc-services-hub__caps {
	background: var(--witc-surface);
}

.witc-capability-grid {
	display: grid;
	gap: var(--witc-space-5);
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 700px) {
	.witc-capability-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.witc-capability {
	padding: var(--witc-space-6);
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.08);
	border-radius: var(--witc-radius-lg);
}

.witc-capability__title {
	margin: 0 0 var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy-deep);
}

.witc-capability__text {
	margin: 0;
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
}

.witc-services-hub__practices {
	background: var(--witc-page);
}

.witc-practice-grid {
	display: grid;
	gap: var(--witc-space-5);
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: none;
}

@media (min-width: 700px) {
	.witc-practice-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.witc-practice-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.witc-practice {
	padding: var(--witc-space-6);
	border-top: 2px solid var(--witc-beam);
	background: var(--witc-surface);
	border-radius: 0 0 var(--witc-radius-lg) var(--witc-radius-lg);
}

.witc-practice__num {
	display: block;
	margin-bottom: var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-xl);
	font-weight: var(--witc-fw-bold);
	color: var(--witc-beam);
	letter-spacing: -0.03em;
}

.witc-practice__title {
	margin: 0 0 var(--witc-space-2);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-md);
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy-deep);
}

.witc-practice__text {
	margin: 0;
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
}

/* -------------------------------------------------------------------------- */
/* Study Abroad hub                                                           */
/* -------------------------------------------------------------------------- */

.witc-study-hub__destinations {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(900px 480px at 8% 0%, rgba(0, 180, 216, 0.1), transparent 55%),
		radial-gradient(700px 420px at 100% 100%, rgba(0, 51, 102, 0.07), transparent 50%),
		linear-gradient(180deg, #f4f8fc 0%, var(--witc-surface) 45%, #eef3f8 100%);
}

.witc-dest-panels {
	display: grid;
	gap: 1.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 800px) {
	.witc-dest-panels {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.5rem;
	}
}

.witc-dest-panel {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	min-height: 100%;
	padding: 1.5rem 1.4rem 1.45rem;
	border-radius: 16px;
	text-decoration: none;
	color: #fff;
	background:
		radial-gradient(ellipse 90% 70% at 100% 0%, rgba(0, 180, 216, 0.28), transparent 55%),
		linear-gradient(160deg, var(--witc-navy-deep) 0%, #12345a 55%, var(--witc-navy) 100%);
	box-shadow: 0 14px 34px rgba(18, 52, 90, 0.12);
	transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.witc-dest-panel:hover,
.witc-dest-panel:focus-visible {
	transform: translateY(-4px);
	box-shadow: 0 20px 40px rgba(18, 52, 90, 0.18);
	color: #fff;
	outline: none;
}

.witc-dest-panel__top {
	display: flex;
	align-items: center;
	gap: 0.85rem;
}

.witc-dest-panel__flag {
	display: inline-flex;
	flex-shrink: 0;
	width: 3rem;
	height: 3rem;
	border-radius: 999px;
	overflow: hidden;
	border: 2px solid rgba(255, 255, 255, 0.35);
	background: rgba(255, 255, 255, 0.12);
}

.witc-dest-panel__flag-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.witc-dest-panel__label {
	font-family: var(--witc-font-display);
	font-size: 1.2rem;
	font-weight: var(--witc-fw-bold);
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: #fff;
}

.witc-dest-panel__text {
	flex: 1 1 auto;
	font-size: 0.92rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.86);
}

.witc-dest-panel__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin-top: 0.35rem;
	font-family: var(--witc-font-display);
	font-size: 0.82rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.04em;
	color: #8fc1ff;
}

.witc-dest-panel__cta span {
	transition: transform 0.2s ease;
}

.witc-dest-panel:hover .witc-dest-panel__cta span,
.witc-dest-panel:focus-visible .witc-dest-panel__cta span {
	transform: translateX(3px);
}

.witc-study-hub__process {
	background:
		radial-gradient(ellipse 70% 60% at 0% 0%, rgba(0, 180, 216, 0.16), transparent 50%),
		linear-gradient(160deg, var(--witc-navy-deep) 0%, #0a2f52 50%, var(--witc-navy) 100%);
	color: #fff;
}

.witc-study-hub__process .witc-eyebrow {
	color: var(--witc-beam);
}

.witc-study-hub__process .witc-section-head__title {
	color: #fff;
}

.witc-study-hub__process .witc-section-head__lede {
	color: rgba(255, 255, 255, 0.78);
}

.witc-timeline {
	display: grid;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 700px) {
	.witc-timeline {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.witc-timeline {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 1.1rem;
	}
}

.witc-timeline__item {
	display: grid;
	gap: 0.65rem;
	align-content: start;
	min-height: 100%;
	padding: 1.25rem 1.15rem 1.35rem;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(6px);
	transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.witc-timeline__item:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(0, 180, 216, 0.35);
	transform: translateY(-2px);
}

.witc-timeline__num {
	display: block;
	font-family: var(--witc-font-display);
	font-size: 0.75rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.14em;
	color: var(--witc-beam);
}

.witc-timeline__title {
	margin: 0;
	font-family: var(--witc-font-display);
	font-size: 1rem;
	font-weight: var(--witc-fw-semibold);
	line-height: 1.35;
	letter-spacing: -0.015em;
	color: #fff;
}

.witc-study-hub__why {
	background: var(--witc-page);
}

.witc-study-hub__why-layout {
	display: grid;
	gap: 1.75rem;
	align-items: stretch;
}

@media (min-width: 900px) {
	.witc-study-hub__why-layout {
		grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
		gap: 2rem;
	}
}

.witc-study-hub__why-intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
	padding: 1.75rem 1.5rem;
	border-radius: 16px;
	color: #fff;
	background:
		radial-gradient(ellipse 80% 70% at 100% 0%, rgba(0, 180, 216, 0.24), transparent 55%),
		linear-gradient(160deg, var(--witc-navy-deep) 0%, var(--witc-navy) 100%);
	box-shadow: 0 14px 34px rgba(18, 52, 90, 0.12);
}

@media (min-width: 900px) {
	.witc-study-hub__why-intro {
		padding: 2.25rem 2rem;
	}
}

.witc-study-hub__why-intro .witc-eyebrow {
	color: var(--witc-beam);
}

.witc-study-hub__why-intro .witc-section-head__title {
	color: #fff;
	margin-bottom: 0.85rem;
}

.witc-study-hub__why-intro .witc-lead {
	margin: 0 0 1.5rem;
	color: rgba(255, 255, 255, 0.86);
	max-width: 28rem;
}

.witc-why-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.85rem;
}

.witc-why-row {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1rem;
	padding: 1.15rem 1.2rem;
	border-radius: 14px;
	background: #fff;
	border: 1px solid rgba(15, 35, 70, 0.08);
	box-shadow: 0 8px 22px rgba(18, 52, 90, 0.05);
}

.witc-why-row__num {
	font-family: var(--witc-font-display);
	font-size: 0.8rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.12em;
	color: var(--witc-beam);
	line-height: 1.4;
	padding-top: 0.15rem;
}

.witc-why-row__title {
	margin: 0 0 0.35rem;
	font-family: var(--witc-font-display);
	font-size: 1.05rem;
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy-deep);
	letter-spacing: -0.02em;
}

.witc-why-row__text {
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.55;
	color: var(--witc-ink-muted);
}

.witc-study-hub__unis {
	background:
		radial-gradient(800px 420px at 100% 0%, rgba(0, 180, 216, 0.08), transparent 55%),
		var(--witc-page);
}

.witc-study-hub__unis .witc-section-head .witc-btn {
	margin-top: 0.75rem;
}

.witc-uni-showcase {
	display: grid;
	gap: 1.15rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 700px) {
	.witc-uni-showcase {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.25rem;
	}
}

@media (min-width: 1100px) {
	.witc-uni-showcase {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.witc-uni-tile {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-height: 100%;
	padding: 1.15rem;
	border-radius: 16px;
	text-decoration: none;
	color: var(--witc-navy-deep);
	background: #fff;
	border: 1px solid rgba(15, 35, 70, 0.08);
	box-shadow: 0 10px 28px rgba(18, 52, 90, 0.06);
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.witc-uni-tile--deep {
	color: #fff;
	background:
		radial-gradient(ellipse 90% 70% at 100% 0%, rgba(0, 180, 216, 0.22), transparent 55%),
		linear-gradient(160deg, var(--witc-navy-deep) 0%, var(--witc-navy) 100%);
	border-color: transparent;
	box-shadow: 0 14px 34px rgba(18, 52, 90, 0.14);
}

.witc-uni-tile:hover,
.witc-uni-tile:focus-visible {
	transform: translateY(-4px);
	box-shadow: 0 18px 36px rgba(18, 52, 90, 0.12);
	border-color: rgba(0, 180, 216, 0.35);
	color: inherit;
	outline: none;
}

.witc-uni-tile--deep:hover,
.witc-uni-tile--deep:focus-visible {
	color: #fff;
	box-shadow: 0 20px 40px rgba(18, 52, 90, 0.2);
}

.witc-uni-tile__media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 10.5rem;
	margin-bottom: 0.65rem;
	padding: 1.15rem;
	border-radius: 12px;
	background: #f5f8fb;
}

.witc-uni-tile--deep .witc-uni-tile__media {
	background: rgba(255, 255, 255, 0.96);
}

.witc-uni-tile__country {
	font-size: 0.7rem;
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--witc-beam);
}

.witc-uni-tile--deep .witc-uni-tile__country {
	color: rgba(255, 255, 255, 0.72);
}

.witc-uni-tile__mark {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 8.5rem;
	object-fit: contain;
}

.witc-uni-tile__name {
	margin-top: 0.15rem;
	font-family: var(--witc-font-display);
	font-size: clamp(1.35rem, 2vw, 1.7rem);
	font-weight: var(--witc-fw-bold);
	line-height: 1.1;
	letter-spacing: -0.03em;
}

.witc-uni-tile__full {
	font-size: 0.88rem;
	color: var(--witc-ink-muted);
}

.witc-uni-tile--deep .witc-uni-tile__full {
	color: rgba(255, 255, 255, 0.72);
}

.witc-uni-tile__link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-top: auto;
	padding-top: 0.75rem;
	font-family: var(--witc-font-display);
	font-size: 0.82rem;
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.04em;
	color: var(--witc-navy);
}

.witc-uni-tile--deep .witc-uni-tile__link {
	color: #8fc1ff;
}

.witc-uni-tile__link span {
	transition: transform 0.2s ease;
}

.witc-uni-tile:hover .witc-uni-tile__link span,
.witc-uni-tile:focus-visible .witc-uni-tile__link span {
	transform: translateX(3px);
}

.witc-study-hub__fields {
	background:
		radial-gradient(700px 400px at 0% 100%, rgba(0, 51, 102, 0.06), transparent 50%),
		var(--witc-surface);
}

.witc-field-board {
	display: grid;
	gap: 1.15rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 700px) {
	.witc-field-board {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.witc-field-board {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.witc-field-block {
	padding: 1.35rem 1.25rem 1.4rem;
	border-radius: 14px;
	background: #fff;
	border: 1px solid rgba(15, 35, 70, 0.08);
	box-shadow: 0 8px 22px rgba(18, 52, 90, 0.04);
}

.witc-field-block__title {
	margin: 0 0 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--witc-beam);
	font-family: var(--witc-font-display);
	font-size: 1.05rem;
	font-weight: var(--witc-fw-semibold);
	letter-spacing: -0.02em;
	color: var(--witc-navy-deep);
}

.witc-field-block__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.witc-field-block__tags li {
	padding: 0.4rem 0.75rem;
	border-radius: 999px;
	background: #f0f5fa;
	color: var(--witc-ink-muted);
	font-size: 0.8rem;
	line-height: 1.3;
	border: 1px solid rgba(15, 35, 70, 0.05);
}

.witc-study-hub__form {
	background:
		radial-gradient(ellipse 70% 60% at 100% 0%, rgba(0, 180, 216, 0.14), transparent 50%),
		linear-gradient(160deg, var(--witc-navy-deep) 0%, #0a2f52 55%, var(--witc-navy) 100%);
	color: #fff;
}

.witc-study-hub__form-shell {
	display: grid;
	gap: 1.5rem;
	align-items: stretch;
}

@media (min-width: 900px) {
	.witc-study-hub__form-shell {
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
		gap: 2rem;
	}
}

.witc-study-hub__form-copy {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.witc-study-hub__form .witc-eyebrow {
	color: var(--witc-beam);
}

.witc-study-hub__form-title {
	margin: 0;
	font-family: var(--witc-font-display);
	font-size: clamp(1.75rem, 3vw, 2.35rem);
	font-weight: var(--witc-fw-bold);
	line-height: 1.15;
	letter-spacing: -0.02em;
	color: #fff;
}

.witc-study-hub__form-lede {
	margin: 1rem 0 0;
	font-size: 0.95rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.8);
	max-width: 28rem;
}

.witc-study-hub__location {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	gap: 1rem;
	margin-top: 1.5rem;
	min-height: 0;
}

.witc-study-hub__map {
	flex: 1 1 auto;
	min-height: 14rem;
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.06);
}

.witc-study-hub__map iframe {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 14rem;
	border: 0;
}

@media (min-width: 900px) {
	.witc-study-hub__map {
		min-height: 18rem;
	}

	.witc-study-hub__map iframe {
		min-height: 18rem;
	}
}

.witc-study-hub__form-card {
	padding: 1.5rem;
	background: #fff;
	border-radius: 16px;
	color: var(--witc-ink);
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18);
	height: 100%;
}

@media (min-width: 700px) {
	.witc-study-hub__form-card {
		padding: 2rem;
	}
}

.witc-study-hub__form-fallback {
	margin: 0 0 1.25rem;
	color: var(--witc-ink-muted);
	line-height: 1.55;
}

@media (prefers-reduced-motion: reduce) {
	.witc-dest-panel,
	.witc-dest-panel__cta span,
	.witc-timeline__item,
	.witc-uni-tile,
	.witc-uni-tile__link span {
		transition: none;
	}

	.witc-dest-panel:hover,
	.witc-dest-panel:focus-visible,
	.witc-timeline__item:hover,
	.witc-uni-tile:hover,
	.witc-uni-tile:focus-visible {
		transform: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Contact office                                                             */
/* -------------------------------------------------------------------------- */

.witc-office {
	background: var(--witc-surface);
	padding-bottom: var(--witc-space-10);
}

.witc-office__grid {
	display: grid;
	gap: var(--witc-space-4);
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 700px) {
	.witc-office__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.witc-office__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.witc-office__card {
	padding: var(--witc-space-5);
	background: var(--witc-white);
	border: 1px solid rgba(15, 35, 70, 0.07);
	border-radius: var(--witc-radius-lg);
}

.witc-office__label {
	margin: 0 0 var(--witc-space-2);
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--witc-beam);
}

.witc-office__value {
	margin: 0;
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink);
}

.witc-office__value a {
	color: inherit;
	text-decoration: none;
}

.witc-office__value a:hover,
.witc-office__value a:focus-visible {
	color: var(--witc-navy);
	text-decoration: underline;
}

/* Gravity Forms — share Fluent form field chrome */
.witc-gravity-form .gform_wrapper,
.witc-gravity-form .gform_body,
.witc-gravity-form .gform_fields {
	margin: 0;
	padding: 0;
}

.witc-gravity-form .gform_fields {
	display: grid !important;
	gap: var(--witc-space-4);
	grid-template-columns: 1fr !important;
}

/* Contact page: keep every field stacked in one column */
.witc-contact .witc-gravity-form .gform_fields,
.witc-contact .witc-gravity-form .gform_fields.gform-grid,
.witc-contact .witc-gravity-form .gform_body .gform_fields {
	display: grid !important;
	grid-template-columns: 1fr !important;
	grid-auto-columns: 1fr !important;
}

.witc-contact .witc-gravity-form .gfield,
.witc-contact .witc-gravity-form .gfield--width-third,
.witc-contact .witc-gravity-form .gfield--width-half,
.witc-contact .witc-gravity-form .gfield--width-full,
.witc-contact .witc-gravity-form [class*="gfield--width-"] {
	float: none !important;
	clear: both !important;
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	grid-column: 1 / -1 !important;
}

@media (min-width: 640px) {
	.witc-gravity-form .gform_fields {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: var(--witc-space-4);
		row-gap: var(--witc-space-4);
	}

	.witc-contact .witc-gravity-form .gform_fields {
		grid-template-columns: 1fr !important;
	}
}

.witc-gravity-form .gfield {
	float: none !important;
	clear: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	grid-column: 1 / -1;
}

@media (min-width: 640px) {
	.witc-gravity-form .gfield--width-half {
		grid-column: span 1;
	}

	.witc-contact .witc-gravity-form .gfield--width-half {
		grid-column: 1 / -1 !important;
	}
}

.witc-gravity-form .gfield--width-full,
.witc-gravity-form .gfield--type-checkbox,
.witc-gravity-form .gfield--type-captcha,
.witc-gravity-form .gfield--type-textarea,
.witc-study-hub__form #field_1_11 {
	grid-column: 1 / -1 !important;
}

.witc-gravity-form .gfield_label,
.witc-gravity-form legend.gfield_label {
	display: block;
	margin: 0 0 0.4rem;
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy-deep);
}

.witc-gravity-form .gfield_required {
	margin-left: 0.25rem;
	color: var(--witc-ink-muted);
	font-weight: var(--witc-fw-regular);
	font-style: normal;
}

.witc-gravity-form .gfield_required_text {
	font-size: 0.75em;
	color: inherit;
	font-style: normal;
}

.witc-gravity-form .gfield_required .gfield_required_text,
.witc-gravity-form .gfield_required {
	color: var(--witc-ink-muted) !important;
	font-style: normal !important;
}

.witc-gravity-form .ginput_container,
.witc-gravity-form .ginput_complex {
	margin: 0;
	width: 100%;
}

.witc-gravity-form input[type="text"],
.witc-gravity-form input[type="email"],
.witc-gravity-form input[type="tel"],
.witc-gravity-form input[type="url"],
.witc-gravity-form input[type="number"],
.witc-gravity-form textarea,
.witc-gravity-form select,
.witc-gravity-form .gfield_select {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	box-sizing: border-box;
	padding: 0.8rem 0.95rem;
	border: 1px solid rgba(15, 35, 70, 0.14);
	border-radius: var(--witc-radius-md);
	background: var(--witc-white);
	color: var(--witc-ink);
	font: inherit;
	font-size: max(1rem, var(--witc-fs-sm));
	line-height: 1.4;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.witc-gravity-form textarea {
	min-height: 7rem;
	resize: vertical;
}

.witc-gravity-form input:focus,
.witc-gravity-form textarea:focus,
.witc-gravity-form select:focus {
	outline: none;
	border-color: var(--witc-beam);
	box-shadow: 0 0 0 3px var(--witc-beam-soft);
}

.witc-gravity-form .gfield_checkbox,
.witc-gravity-form .ginput_container_checkbox .gfield_checkbox {
	display: grid;
	gap: var(--witc-space-3);
	margin: 0;
	padding: 0;
	list-style: none;
	grid-template-columns: 1fr;
}

.witc-gravity-form .gchoice {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	margin: 0;
}

.witc-gravity-form .gchoice input[type="checkbox"] {
	width: auto !important;
	min-width: 1.05rem;
	margin-top: 0.2rem;
	flex-shrink: 0;
}

.witc-gravity-form .gchoice label {
	margin: 0;
	font-size: var(--witc-fs-sm);
	line-height: 1.4;
	color: var(--witc-ink);
}

.witc-gravity-form .gform_footer,
.witc-gravity-form .gform_page_footer {
	margin: var(--witc-space-2) 0 0;
	padding: 0;
}

.witc-gravity-form .gform_button,
.witc-gravity-form input[type="submit"] {
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding: 0.7rem 1.35rem;
	border-radius: var(--witc-radius-btn);
	border: 1px solid var(--witc-navy);
	background: var(--witc-navy);
	color: var(--witc-white);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
	cursor: pointer;
	transition: background var(--witc-transition), border-color var(--witc-transition);
}

.witc-gravity-form .gform_button:hover,
.witc-gravity-form input[type="submit"]:hover {
	background: var(--witc-navy-deep);
	border-color: var(--witc-navy-deep);
	color: var(--witc-white);
}

/* -------------------------------------------------------------------------- */
/* Careers / WP Job Manager                                                   */
/* -------------------------------------------------------------------------- */

.witc-jobs {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(900px 480px at 8% 0%, rgba(0, 180, 216, 0.1), transparent 55%),
		radial-gradient(700px 420px at 100% 100%, rgba(0, 51, 102, 0.07), transparent 50%),
		linear-gradient(180deg, #f4f8fc 0%, var(--witc-surface) 45%, #eef3f8 100%);
}

.witc-jobs__board {
	max-width: 58rem;
	margin-inline: auto;
}

.witc-jobs__board .job_listings {
	margin: 0;
}

.witc-jobs__board > .job_listings {
	display: grid;
	gap: 1.25rem;
}

/* Filters shell — override WP Job Manager float/clearfix layout */
.witc-jobs .job_filters,
.witc-jobs .job_filters .search_jobs {
	zoom: normal;
}

.witc-jobs .job_filters::before,
.witc-jobs .job_filters::after,
.witc-jobs .job_filters .search_jobs::before,
.witc-jobs .job_filters .search_jobs::after {
	content: none !important;
	display: none !important;
}

.witc-jobs .job_filters {
	margin: 0 0 1.5rem;
	padding: 1.35rem 1.25rem 1.2rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(15, 35, 70, 0.08);
	box-shadow: 0 12px 30px rgba(18, 52, 90, 0.06);
}

@media (min-width: 700px) {
	.witc-jobs .job_filters {
		padding: 1.5rem 1.5rem 1.35rem;
	}
}

.witc-jobs .job_filters .search_jobs {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 0.85rem;
	margin: 0;
	padding: 0 !important;
	float: none;
	width: 100%;
	align-items: end;
}

@media (min-width: 700px) {
	.witc-jobs .job_filters .search_jobs {
		grid-template-columns: 1fr 1fr;
	}
}

.witc-jobs .job_filters .search_jobs > div {
	box-sizing: border-box;
	float: none !important;
	clear: none !important;
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	left: auto !important;
	right: auto !important;
	position: static !important;
}

.witc-jobs .job_filters .search_jobs > div[style*="clear"] {
	display: none !important;
}

.witc-jobs .job_filters .search_keywords,
.witc-jobs .job_filters .search_location {
	grid-column: auto;
}

.witc-jobs .job_filters .search_remote_position,
.witc-jobs .job_filters .search_categories,
.witc-jobs .job_filters .search_submit {
	grid-column: 1 / -1;
}

.witc-jobs .job_filters .search_remote_position {
	display: flex !important;
	align-items: center;
	gap: 0.55rem;
	min-height: 2.5rem;
}

.witc-jobs .job_filters .search_jobs div label,
.witc-jobs .job_filters label {
	display: block !important;
	margin: 0 0 0.4rem;
	font-family: var(--witc-font-display);
	font-size: 0.78rem;
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--witc-navy-mid);
}

.witc-jobs .job_filters .search_remote_position label,
.witc-jobs .job_filters .search_remote_position label#remote_position_label {
	display: inline !important;
	margin: 0;
	text-transform: none;
	letter-spacing: 0;
	font-family: var(--witc-font-body);
	font-size: 0.92rem;
	font-weight: var(--witc-fw-medium);
	color: var(--witc-ink);
	cursor: pointer;
}

.witc-jobs .job_filters input[type="text"],
.witc-jobs .job_filters input[type="search"],
.witc-jobs .job_filters select {
	appearance: none;
	display: block;
	width: 100% !important;
	max-width: none;
	min-height: 2.75rem;
	padding: 0.65rem 0.9rem;
	border: 1px solid rgba(15, 35, 70, 0.14);
	border-radius: 10px;
	background: #f7fafc;
	color: var(--witc-ink);
	font-family: var(--witc-font-body);
	font-size: 0.95rem;
	line-height: 1.4;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.witc-jobs .job_filters input[type="text"]:focus,
.witc-jobs .job_filters input[type="search"]:focus,
.witc-jobs .job_filters select:focus {
	outline: none;
	border-color: var(--witc-beam);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(0, 180, 216, 0.18);
}

.witc-jobs .job_filters input[type="checkbox"] {
	width: 1.05rem !important;
	height: 1.05rem;
	margin: 0;
	flex-shrink: 0;
	accent-color: var(--witc-navy);
	cursor: pointer;
}

.witc-jobs .job_filters .search_submit input[type="submit"],
.witc-jobs .job_filters .search_submit button {
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 2.85rem;
	padding: 0.7rem 1.35rem;
	border-radius: var(--witc-radius-btn);
	border: 1px solid var(--witc-navy-btn);
	background: var(--witc-navy-btn);
	color: #fff;
	font-family: var(--witc-font-display);
	font-size: 0.92rem;
	font-weight: var(--witc-fw-semibold);
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.witc-jobs .job_filters .search_submit input[type="submit"]:hover,
.witc-jobs .job_filters .search_submit button:hover {
	background: var(--witc-navy-deep);
	border-color: var(--witc-navy-deep);
	color: #fff;
}

/* Job type chips */
.witc-jobs .job_filters .job_types {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 1.1rem 0 0;
	padding: 1.1rem 0 0;
	list-style: none;
	border-top: 1px solid rgba(15, 35, 70, 0.08);
	float: none;
	width: 100%;
}

.witc-jobs .job_filters .job_types li {
	margin: 0;
	padding: 0;
	border: 0;
	float: none !important;
	width: auto !important;
}

.witc-jobs .job_filters .job_types label {
	display: inline-flex !important;
	align-items: center;
	gap: 0.4rem;
	margin: 0;
	padding: 0.45rem 0.75rem;
	border-radius: 999px;
	background: #f0f5fa;
	border: 1px solid rgba(15, 35, 70, 0.06);
	font-family: var(--witc-font-body);
	font-size: 0.82rem;
	font-weight: var(--witc-fw-medium);
	letter-spacing: 0;
	text-transform: none;
	color: var(--witc-ink-muted);
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.witc-jobs .job_filters .job_types label:has(input:checked) {
	background: rgba(0, 51, 102, 0.08);
	border-color: rgba(0, 51, 102, 0.18);
	color: var(--witc-navy-deep);
}

.witc-jobs .job_filters .showing_jobs {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.75rem;
	margin: 0.85rem 0 0;
	padding: 0.75rem 0 0;
	border-top: 1px solid rgba(15, 35, 70, 0.06);
	float: none !important;
	width: 100% !important;
	font-size: 0.85rem;
	color: var(--witc-ink-muted);
}

.witc-jobs .job_filters .showing_jobs .rss_link {
	font-family: var(--witc-font-display);
	font-size: 0.78rem;
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--witc-navy);
	text-decoration: none;
}

.witc-jobs .job_filters .showing_jobs .rss_link:hover {
	color: var(--witc-beam);
}

/* Listing results */
.witc-jobs ul.job_listings {
	display: grid !important;
	gap: 0.85rem;
	margin: 0;
	padding: 0;
	list-style: none;
	border: 0;
	background: transparent;
}

.witc-jobs ul.job_listings::before,
.witc-jobs ul.job_listings::after {
	display: none !important;
	content: none !important;
}

.witc-jobs li.job_listing,
.witc-jobs a.job_listing,
.witc-jobs li.no_job_listings_found {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	list-style: none;
	position: relative;
}

.witc-jobs li.job_listing a {
	display: grid !important;
	grid-template-columns: 3.25rem minmax(0, 1fr);
	grid-template-areas:
		"logo title"
		"logo location"
		"logo meta";
	gap: 0.2rem 1rem;
	align-items: start;
	padding: 1.15rem 1.2rem !important;
	border-radius: 14px;
	background: #fff !important;
	border: 1px solid rgba(15, 35, 70, 0.08) !important;
	box-shadow: 0 8px 22px rgba(18, 52, 90, 0.04);
	text-decoration: none;
	color: inherit;
	overflow: visible !important;
	position: relative;
	line-height: 1.4;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

@media (min-width: 800px) {
	.witc-jobs li.job_listing a {
		grid-template-columns: 3.5rem minmax(0, 1.5fr) minmax(0, 0.85fr) auto;
		grid-template-areas: "logo title location meta";
		align-items: center;
		padding: 1.2rem 1.35rem !important;
	}
}

.witc-jobs li.job_listing a:hover,
.witc-jobs li.job_listing a:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 14px 30px rgba(18, 52, 90, 0.1);
	border-color: rgba(0, 180, 216, 0.35) !important;
	outline: none;
}

.witc-jobs li.job_listing .company_logo {
	grid-area: logo;
	display: block !important;
	visibility: visible !important;
	position: static !important;
	float: none !important;
	left: auto !important;
	top: auto !important;
	width: 3rem !important;
	height: 3rem !important;
	margin: 0 !important;
	padding: 0.2rem;
	border-radius: 10px;
	object-fit: contain;
	background: #f5f8fb;
	border: 1px solid rgba(15, 35, 70, 0.06);
	box-shadow: none;
}

@media (min-width: 800px) {
	.witc-jobs li.job_listing .company_logo {
		width: 3.25rem !important;
		height: 3.25rem !important;
	}
}

.witc-jobs li.job_listing .position {
	grid-area: title;
	float: none !important;
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1.35;
}

.witc-jobs li.job_listing .position h3 {
	margin: 0 0 0.2rem !important;
	padding: 0 !important;
	font-family: var(--witc-font-display);
	font-size: 1.05rem !important;
	font-weight: var(--witc-fw-semibold);
	line-height: 1.3 !important;
	letter-spacing: -0.015em;
	color: var(--witc-navy-deep);
}

.witc-jobs li.job_listing a:hover .position h3 {
	color: var(--witc-navy);
}

.witc-jobs li.job_listing .company {
	font-size: 0.88rem;
	color: var(--witc-ink-muted);
}

.witc-jobs li.job_listing .company strong {
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-ink-muted);
}

.witc-jobs li.job_listing .location {
	grid-area: location;
	float: none !important;
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 0.88rem !important;
	line-height: 1.4 !important;
	color: var(--witc-ink-muted);
	text-align: left !important;
}

.witc-jobs li.job_listing .meta {
	grid-area: meta;
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.75rem;
	float: none !important;
	width: auto !important;
	margin: 0.15rem 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
	background: transparent !important;
	border: 0 !important;
	overflow: visible !important;
}

@media (min-width: 800px) {
	.witc-jobs li.job_listing .meta {
		flex-direction: column;
		align-items: flex-end;
		margin: 0 !important;
		text-align: right;
	}
}

.witc-jobs li.job_listing .meta li {
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	width: auto !important;
	border: 0 !important;
	background: transparent !important;
	font-size: 0.8rem;
	color: var(--witc-ink-muted);
	line-height: 1.3;
}

.witc-jobs li.job_listing .meta .job-type {
	display: inline-flex !important;
	align-items: center;
	padding: 0.28rem 0.65rem !important;
	border-radius: 999px;
	background: rgba(0, 51, 102, 0.08) !important;
	color: var(--witc-navy) !important;
	font-family: var(--witc-font-display);
	font-size: 0.72rem !important;
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.witc-jobs li.job_listing .meta .date {
	font-size: 0.78rem;
	color: var(--witc-ink-muted);
}

.witc-jobs li.no_job_listings_found {
	padding: 1.5rem;
	border-radius: 14px;
	background: #fff;
	border: 1px solid rgba(15, 35, 70, 0.08);
	color: var(--witc-ink-muted);
	text-align: center;
}

.witc-jobs .load_more_jobs,
.witc-jobs a.load_more_jobs {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin: 0.5rem 0 0;
	padding: 0.95rem 1.25rem;
	border-radius: 12px;
	border: 1px solid rgba(15, 35, 70, 0.12);
	background: #fff;
	color: var(--witc-navy-deep);
	font-family: var(--witc-font-display);
	font-size: 0.92rem;
	font-weight: var(--witc-fw-semibold);
	text-decoration: none;
	text-align: center;
	box-shadow: 0 8px 22px rgba(18, 52, 90, 0.04);
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.witc-jobs .load_more_jobs:hover,
.witc-jobs a.load_more_jobs:hover {
	background: var(--witc-navy);
	border-color: var(--witc-navy);
	color: #fff;
}

.witc-jobs .load_more_jobs strong {
	font-weight: inherit;
}

/* Single job */
.witc-job-single {
	background:
		radial-gradient(800px 420px at 100% 0%, rgba(0, 180, 216, 0.08), transparent 55%),
		var(--witc-page);
}

.witc-job-single__shell {
	max-width: 52rem;
}

.witc-job-single__card {
	padding: 1.5rem 1.25rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(15, 35, 70, 0.08);
	box-shadow: 0 12px 30px rgba(18, 52, 90, 0.06);
}

@media (min-width: 700px) {
	.witc-job-single__card {
		padding: 2rem 2.25rem;
	}
}

.witc-job-single .single_job_listing {
	margin: 0;
}

.witc-job-single .job-manager-info,
.witc-job-single .job-manager-message {
	margin: 0 0 1.25rem;
	padding: 0.9rem 1rem;
	border-radius: 12px;
	background: #f0f5fa;
	border: 1px solid rgba(15, 35, 70, 0.08);
	color: var(--witc-ink-muted);
	font-size: 0.92rem;
}

.witc-job-single ul.job-listing-meta.meta,
.witc-job-single ul.meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0 0 1.5rem;
	padding: 0;
	list-style: none;
	border: 0;
	background: transparent;
}

.witc-job-single ul.meta li {
	margin: 0;
	padding: 0.4rem 0.75rem;
	border-radius: 999px;
	background: #f0f5fa;
	border: 1px solid rgba(15, 35, 70, 0.06);
	font-size: 0.82rem;
	color: var(--witc-ink-muted);
}

.witc-job-single ul.meta li.job-type {
	background: rgba(0, 51, 102, 0.08);
	color: var(--witc-navy);
	font-family: var(--witc-font-display);
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	font-size: 0.72rem;
}

.witc-job-single .company {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin: 0 0 1.5rem;
	padding: 1rem 1.1rem;
	border-radius: 12px;
	background:
		radial-gradient(ellipse 80% 70% at 100% 0%, rgba(0, 180, 216, 0.16), transparent 55%),
		linear-gradient(160deg, var(--witc-navy-deep) 0%, var(--witc-navy) 100%);
	color: #fff;
}

.witc-job-single .company img {
	width: 3.25rem;
	height: 3.25rem;
	border-radius: 10px;
	object-fit: contain;
	background: #fff;
	padding: 0.25rem;
}

.witc-job-single .company .name {
	font-family: var(--witc-font-display);
	font-size: 1.05rem;
	font-weight: var(--witc-fw-semibold);
	color: #fff;
}

.witc-job-single .company .tagline,
.witc-job-single .company .website,
.witc-job-single .company .company_twitter {
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.88rem;
}

.witc-job-single .company a {
	color: #8fc1ff;
}

.witc-job-single .job_description {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--witc-ink);
}

.witc-job-single .job_description > *:first-child {
	margin-top: 0;
}

.witc-job-single .job_description h2,
.witc-job-single .job_description h3 {
	margin: 1.5rem 0 0.65rem;
	font-family: var(--witc-font-display);
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy-deep);
	letter-spacing: -0.02em;
}

.witc-job-single .job_description ul,
.witc-job-single .job_description ol {
	padding-left: 1.25rem;
}

.witc-job-single .job_application {
	margin-top: 1.75rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(15, 35, 70, 0.08);
}

.witc-job-single .application_button,
.witc-job-single .application_details input[type="submit"],
.witc-job-single .job_application .button {
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.85rem;
	padding: 0.7rem 1.4rem;
	border-radius: var(--witc-radius-btn);
	border: 1px solid var(--witc-navy-btn);
	background: var(--witc-navy-btn);
	color: #fff;
	font-family: var(--witc-font-display);
	font-size: 0.92rem;
	font-weight: var(--witc-fw-semibold);
	text-decoration: none;
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease;
}

.witc-job-single .application_button:hover,
.witc-job-single .application_details input[type="submit"]:hover,
.witc-job-single .job_application .button:hover {
	background: var(--witc-navy-deep);
	border-color: var(--witc-navy-deep);
	color: #fff;
}

.witc-job-single .application_details {
	margin-top: 1rem;
	padding: 1.15rem;
	border-radius: 12px;
	background: #f7fafc;
	border: 1px solid rgba(15, 35, 70, 0.08);
}

.witc-job-single .application_details p {
	margin: 0 0 0.85rem;
	color: var(--witc-ink-muted);
	font-size: 0.92rem;
}

@media (prefers-reduced-motion: reduce) {
	.witc-jobs li.job_listing a,
	.witc-jobs .load_more_jobs,
	.witc-jobs .job_filters .search_submit input[type="submit"] {
		transition: none;
	}

	.witc-jobs li.job_listing a:hover,
	.witc-jobs li.job_listing a:focus-visible {
		transform: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Reveal motion                                                              */
/* -------------------------------------------------------------------------- */

[data-witc-reveal] {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity 650ms ease, transform 650ms ease;
}

[data-witc-reveal].is-visible {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	[data-witc-reveal] {
		opacity: 1;
		transform: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Service detail (individual IT service pages)                               */
/* -------------------------------------------------------------------------- */

.witc-service-detail {
	background:
		radial-gradient(ellipse 70% 50% at 0% 0%, rgba(0, 180, 216, 0.08), transparent 55%),
		radial-gradient(ellipse 55% 45% at 100% 8%, rgba(0, 51, 102, 0.06), transparent 50%),
		var(--witc-page);
	padding-bottom: 0;
}

.witc-service-detail__intro {
	display: grid;
	gap: var(--witc-space-10);
	align-items: center;
	padding-bottom: var(--witc-section-y);
}

@media (min-width: 900px) {
	.witc-service-detail__intro {
		grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
		gap: var(--witc-space-12);
	}
}

.witc-service-detail__media {
	position: relative;
	margin: 0;
	border-radius: var(--witc-radius-xl);
	overflow: hidden;
	background: var(--witc-surface-2);
	box-shadow: var(--witc-shadow-soft);
}

.witc-service-detail__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	transform: scale(1.02);
	transition: transform 700ms ease;
}

.witc-service-detail__intro.is-visible .witc-service-detail__img,
.witc-service-detail__intro:hover .witc-service-detail__img {
	transform: scale(1);
}

.witc-service-detail__media-glow {
	position: absolute;
	inset: auto -10% -20% auto;
	width: 55%;
	height: 55%;
	border-radius: 50%;
	background: radial-gradient(circle, var(--witc-beam-soft), transparent 70%);
	pointer-events: none;
}

.witc-service-detail__intro-copy .witc-section-head__title {
	margin-bottom: var(--witc-space-4);
}

.witc-service-detail__lede {
	max-width: 40rem;
	margin-bottom: var(--witc-space-6);
}

.witc-service-detail__body {
	background:
		linear-gradient(180deg, var(--witc-surface) 0%, var(--witc-page) 100%);
	padding: var(--witc-section-y) 0;
	border-top: 1px solid var(--witc-border);
}

.witc-service-detail__body-shell {
	display: grid;
	gap: var(--witc-space-10);
	align-items: start;
}

@media (min-width: 1000px) {
	.witc-service-detail__body-shell {
		grid-template-columns: minmax(0, 1fr) minmax(20rem, 24rem);
		gap: var(--witc-space-8);
	}
}

.witc-service-detail__prose {
	max-width: none;
	width: 100%;
	padding: var(--witc-space-8);
	background: var(--witc-white);
	border: 1px solid var(--witc-border);
	border-radius: var(--witc-radius-xl);
	box-shadow: 0 12px 36px -24px rgba(0, 31, 61, 0.35);
}

.witc-service-detail__prose > * + * {
	margin-top: var(--witc-space-5);
}

.witc-service-detail__heading {
	margin: var(--witc-space-8) 0 var(--witc-space-4);
	padding-top: var(--witc-space-4);
	border-top: 1px solid var(--witc-border);
	font-family: var(--witc-font-display);
	font-size: clamp(1.35rem, 2.2vw, 1.75rem);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-snug);
	color: var(--witc-navy);
}

.witc-service-detail__prose > .witc-service-detail__heading:first-child {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.witc-service-detail__subhead {
	margin: var(--witc-space-6) 0 var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-semibold);
	line-height: var(--witc-lh-snug);
	color: var(--witc-navy-mid);
}

.witc-service-detail__prose p {
	margin: 0;
	font-size: var(--witc-fs-base);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
}

.witc-service-detail__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: var(--witc-space-3);
}

.witc-service-detail__list li {
	position: relative;
	padding: var(--witc-space-3) var(--witc-space-4) var(--witc-space-3) 2.35rem;
	background: var(--witc-surface);
	border-radius: var(--witc-radius-md);
	border-left: 3px solid var(--witc-beam);
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink);
}

.witc-service-detail__list li::before {
	content: "";
	position: absolute;
	left: 0.85rem;
	top: 1.05rem;
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: var(--witc-navy);
}

.witc-service-detail__video {
	margin: var(--witc-space-6) 0 0;
}

.witc-service-detail__prose > .witc-service-detail__video:first-child {
	margin-top: 0;
}

.witc-service-detail__video-frame {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	border-radius: var(--witc-radius-lg);
	overflow: hidden;
	background: var(--witc-navy-deep);
	box-shadow: var(--witc-shadow-soft);
}

.witc-service-detail__video-frame iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.witc-service-detail__related {
	position: sticky;
	top: calc(var(--witc-header-offset) + 1rem);
	padding: var(--witc-space-6);
	background: var(--witc-navy-deep);
	color: var(--witc-white);
	border-radius: var(--witc-radius-xl);
	overflow: hidden;
}

.witc-service-detail__related::before {
	content: "";
	position: absolute;
	inset: auto -20% -30% 40%;
	width: 70%;
	height: 70%;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(0, 180, 216, 0.28), transparent 65%);
	pointer-events: none;
}

.witc-service-detail__related .witc-eyebrow {
	position: relative;
	color: var(--witc-beam);
}

.witc-service-detail__related-title {
	position: relative;
	margin: 0 0 var(--witc-space-5);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-snug);
	color: var(--witc-white);
}

.witc-service-detail__related-list {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: var(--witc-space-2);
}

.witc-service-detail__related-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--witc-space-3);
	padding: var(--witc-space-3) var(--witc-space-4);
	border-radius: var(--witc-radius-md);
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: var(--witc-white);
	text-decoration: none;
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-medium);
	transition: background var(--witc-transition), border-color var(--witc-transition), transform var(--witc-transition);
}

.witc-service-detail__related-list a:hover,
.witc-service-detail__related-list a:focus-visible {
	background: rgba(0, 180, 216, 0.18);
	border-color: rgba(0, 180, 216, 0.45);
	transform: translateX(2px);
	outline: none;
}

.witc-service-detail__related-arrow {
	flex-shrink: 0;
	opacity: 0.7;
}

.witc-service-detail__related--wide {
	position: static;
}

.witc-service-detail__related-list--grid {
	grid-template-columns: 1fr;
}

@media (min-width: 700px) {
	.witc-service-detail__related-list--grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.witc-service-detail__related-list--grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {
	.witc-service-detail__img,
	.witc-service-detail__related-list a {
		transition: none;
	}

	.witc-service-detail__related-list a:hover,
	.witc-service-detail__related-list a:focus-visible {
		transform: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Utility pages — 404 + Thank You                                            */
/* -------------------------------------------------------------------------- */

.witc-utility {
	position: relative;
	overflow: hidden;
	padding: clamp(2.75rem, 6vw, 4.5rem) 0 var(--witc-section-y);
	background:
		radial-gradient(ellipse 60% 55% at 8% 0%, rgba(0, 180, 216, 0.12), transparent 55%),
		radial-gradient(ellipse 50% 45% at 100% 10%, rgba(0, 51, 102, 0.08), transparent 50%),
		linear-gradient(180deg, var(--witc-surface) 0%, var(--witc-page) 70%);
}

.witc-utility__glow {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	filter: blur(8px);
}

.witc-utility__glow--one {
	width: 18rem;
	height: 18rem;
	top: -4rem;
	right: 8%;
	background: rgba(0, 180, 216, 0.16);
}

.witc-utility__glow--two {
	width: 14rem;
	height: 14rem;
	bottom: 10%;
	left: -2rem;
	background: rgba(18, 52, 90, 0.1);
}

.witc-utility__shell {
	position: relative;
	display: grid;
	gap: var(--witc-space-12);
}

.witc-utility__hero {
	max-width: 42rem;
}

.witc-utility__code {
	margin: 0 0 var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: clamp(4.5rem, 14vw, 8rem);
	font-weight: var(--witc-fw-extrabold);
	line-height: 0.9;
	letter-spacing: -0.04em;
	color: transparent;
	background: linear-gradient(135deg, var(--witc-navy) 10%, var(--witc-beam) 90%);
	-webkit-background-clip: text;
	background-clip: text;
}

.witc-utility__title {
	margin: 0 0 var(--witc-space-4);
	font-family: var(--witc-font-display);
	font-size: clamp(1.9rem, 3.6vw, 2.75rem);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-tight);
	color: var(--witc-navy-deep);
}

.witc-utility__lede {
	margin: 0 0 var(--witc-space-6);
	max-width: 36rem;
	font-size: var(--witc-fs-md);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
}

.witc-utility__search {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--witc-space-3);
	margin: 0 0 var(--witc-space-6);
	max-width: 34rem;
}

.witc-utility__search input[type="search"] {
	width: 100%;
	min-height: 3rem;
	padding: 0.75rem 1rem;
	border: 1px solid var(--witc-border);
	border-radius: var(--witc-radius-btn);
	background: var(--witc-white);
	color: var(--witc-ink);
	font: inherit;
}

.witc-utility__search input[type="search"]:focus {
	outline: 2px solid var(--witc-beam);
	outline-offset: 1px;
	border-color: var(--witc-navy-mid);
}

.witc-utility__destinations {
	display: grid;
	gap: var(--witc-space-4);
}

@media (min-width: 700px) {
	.witc-utility__destinations {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.witc-utility__destinations {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.witc-utility__card {
	display: grid;
	gap: var(--witc-space-2);
	padding: var(--witc-space-5);
	border-radius: var(--witc-radius-lg);
	background: var(--witc-white);
	border: 1px solid var(--witc-border);
	text-decoration: none;
	color: inherit;
	box-shadow: 0 10px 28px -22px rgba(0, 31, 61, 0.4);
	transition: transform var(--witc-transition), border-color var(--witc-transition), box-shadow var(--witc-transition);
}

.witc-utility__card:hover,
.witc-utility__card:focus-visible {
	transform: translateY(-2px);
	border-color: rgba(0, 180, 216, 0.45);
	box-shadow: var(--witc-shadow-soft);
	outline: none;
}

.witc-utility__card-title {
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy);
}

.witc-utility__card-text {
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
}

.witc-utility__card-arrow {
	margin-top: var(--witc-space-2);
	color: var(--witc-beam);
	font-weight: var(--witc-fw-bold);
}

.witc-utility--thanks {
	padding-top: var(--witc-section-y);
	background: linear-gradient(180deg, var(--witc-page) 0%, var(--witc-surface) 100%);
}

.witc-utility__thanks-shell {
	display: grid;
	gap: var(--witc-space-8);
	align-items: stretch;
}

@media (min-width: 960px) {
	.witc-utility__thanks-shell {
		grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.85fr);
		gap: var(--witc-space-8);
	}
}

.witc-utility__thanks-card {
	padding: clamp(1.75rem, 3vw, 2.5rem);
	border-radius: var(--witc-radius-xl);
	background: var(--witc-white);
	border: 1px solid var(--witc-border);
	box-shadow: 0 14px 40px -28px rgba(0, 31, 61, 0.45);
}

.witc-utility__check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.5rem;
	height: 3.5rem;
	margin-bottom: var(--witc-space-5);
	border-radius: 999px;
	color: var(--witc-navy-deep);
	background: linear-gradient(145deg, rgba(0, 180, 216, 0.25), rgba(0, 180, 216, 0.08));
	border: 1px solid rgba(0, 180, 216, 0.35);
}

.witc-utility__thanks-title {
	margin: 0 0 var(--witc-space-3);
	font-family: var(--witc-font-display);
	font-size: clamp(1.65rem, 2.8vw, 2.15rem);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-snug);
	color: var(--witc-navy);
}

.witc-utility__thanks-text {
	margin: 0 0 var(--witc-space-6);
	font-size: var(--witc-fs-md);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
}

.witc-utility__social-panel {
	padding: clamp(1.5rem, 2.5vw, 2rem);
	border-radius: var(--witc-radius-xl);
	background: var(--witc-navy-deep);
	color: var(--witc-white);
	position: relative;
	overflow: hidden;
}

.witc-utility__social-panel::before {
	content: "";
	position: absolute;
	inset: auto -25% -35% 35%;
	width: 75%;
	height: 75%;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(0, 180, 216, 0.3), transparent 65%);
	pointer-events: none;
}

.witc-utility__social-panel .witc-eyebrow {
	position: relative;
	color: var(--witc-beam);
}

.witc-utility__social-title {
	position: relative;
	margin: 0 0 var(--witc-space-5);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-lg);
	font-weight: var(--witc-fw-bold);
	line-height: var(--witc-lh-snug);
	color: var(--witc-white);
}

.witc-utility__social-list {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: var(--witc-space-2);
}

.witc-utility__social-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--witc-space-3);
	padding: var(--witc-space-3) var(--witc-space-4);
	border-radius: var(--witc-radius-md);
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: var(--witc-white);
	text-decoration: none;
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-medium);
	transition: background var(--witc-transition), border-color var(--witc-transition), transform var(--witc-transition);
}

.witc-utility__social-list a:hover,
.witc-utility__social-list a:focus-visible {
	background: rgba(0, 180, 216, 0.2);
	border-color: rgba(0, 180, 216, 0.5);
	transform: translateX(2px);
	outline: none;
}

@media (prefers-reduced-motion: reduce) {
	.witc-utility__card,
	.witc-utility__social-list a {
		transition: none;
	}

	.witc-utility__card:hover,
	.witc-utility__card:focus-visible,
	.witc-utility__social-list a:hover,
	.witc-utility__social-list a:focus-visible {
		transform: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Form comparison (internal rebuild tool)                                    */
/* -------------------------------------------------------------------------- */

.witc-form-compare {
	background: var(--witc-surface);
}

.witc-form-compare__legend {
	display: flex;
	flex-wrap: wrap;
	gap: var(--witc-space-3);
	margin: 0 0 var(--witc-space-8);
}

.witc-form-compare__legend-item {
	display: inline-flex;
	align-items: center;
	padding: 0.4rem 0.85rem;
	border-radius: 999px;
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-semibold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.witc-form-compare__legend-item--legacy {
	background: rgba(234, 88, 12, 0.12);
	color: var(--witc-orange);
	border: 1px solid rgba(234, 88, 12, 0.28);
}

.witc-form-compare__legend-item--fluent {
	background: rgba(0, 180, 216, 0.12);
	color: var(--witc-navy-mid);
	border: 1px solid rgba(0, 180, 216, 0.35);
}

.witc-form-compare__list {
	display: grid;
	gap: var(--witc-space-8);
}

.witc-form-compare__row {
	padding: clamp(1.25rem, 2.5vw, 1.75rem);
	border-radius: var(--witc-radius-xl);
	background: var(--witc-white);
	border: 1px solid var(--witc-border);
	box-shadow: 0 12px 36px -28px rgba(0, 31, 61, 0.4);
}

.witc-form-compare__row-head {
	margin-bottom: var(--witc-space-5);
	padding-bottom: var(--witc-space-4);
	border-bottom: 1px solid var(--witc-border);
}

.witc-form-compare__row-title {
	margin: 0 0 var(--witc-space-2);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-xl);
	font-weight: var(--witc-fw-bold);
	color: var(--witc-navy);
}

.witc-form-compare__row-note {
	margin: 0;
	font-size: var(--witc-fs-sm);
	color: var(--witc-ink-muted);
}

.witc-form-compare__cols {
	display: grid;
	gap: var(--witc-space-5);
}

@media (min-width: 960px) {
	.witc-form-compare__cols {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--witc-space-6);
	}
}

.witc-form-compare__col {
	padding: var(--witc-space-5);
	border-radius: var(--witc-radius-lg);
	border: 1px solid var(--witc-border);
	background: var(--witc-surface);
	min-width: 0;
}

.witc-form-compare__col--legacy {
	border-top: 3px solid var(--witc-orange);
}

.witc-form-compare__col--fluent {
	border-top: 3px solid var(--witc-beam);
	background: linear-gradient(180deg, rgba(0, 180, 216, 0.06), var(--witc-surface) 40%);
}

.witc-form-compare__col-eyebrow {
	margin: 0 0 var(--witc-space-3);
	font-size: var(--witc-fs-xs);
	font-weight: var(--witc-fw-bold);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--witc-ink-muted);
}

.witc-form-compare__panel-label {
	margin: 0 0 var(--witc-space-4);
	font-family: var(--witc-font-display);
	font-size: var(--witc-fs-sm);
	font-weight: var(--witc-fw-semibold);
	color: var(--witc-navy-deep);
}

.witc-form-compare__form {
	background: var(--witc-white);
	border-radius: var(--witc-radius-md);
	padding: var(--witc-space-4);
	border: 1px solid rgba(15, 35, 70, 0.06);
}

.witc-form-compare__placeholder,
.witc-form-compare__missing {
	margin: 0;
	padding: var(--witc-space-5);
	border-radius: var(--witc-radius-md);
	background: rgba(0, 51, 102, 0.04);
	border: 1px dashed var(--witc-border);
	font-size: var(--witc-fs-sm);
	line-height: var(--witc-lh-body);
	color: var(--witc-ink-muted);
}

.witc-form-compare__code {
	display: block;
	margin-top: var(--witc-space-3);
	padding: var(--witc-space-2) var(--witc-space-3);
	border-radius: var(--witc-radius-sm);
	background: var(--witc-navy-deep);
	color: #d7e8f5;
	font-size: 0.8rem;
	overflow-x: auto;
}
