/*
 * Faculty / school landing pages (TR + EN, e.g. /tr/hukuk-fakultesi/, /faculty-of-law/).
 * Elementor structure stays editable; the look comes from these CSS classes:
 *   root container  -> "wpu-unit"
 *   left container  -> "wpu-unit-side"  (heading + vertical nav menu)
 *   heading widget  -> "wpu-unit-title" (its Elementor background image = cover photo)
 *   right container -> "wpu-unit-main"  (any widgets; text-editor tables are flattened)
 * Sub-pages add a modifier on the root: "wpu-unit--sub" (program pages with nested tabs)
 * or "wpu-unit--sub wpu-unit--staff" (academic staff: image-box grid shown as cards).
 */
.wpu-unit {
	--u-navy: #0d2b5e;
	--u-navy-2: #163d7a;
	--u-red: #c8102e;
	--u-ink: #1d2433;
	--u-muted: #4f5869;
	--u-line: #e3e8f0;
	--u-soft: #f4f6f9;
	flex-direction: row !important;
	align-items: flex-start !important;
	gap: 32px !important;
	margin: 70px auto 200px !important;
	width: 100% !important;
	max-width: 1240px !important;
	padding: 0 16px !important;
}

/* ---------- sidebar card ---------- */
.wpu-unit .wpu-unit-side {
	flex: 0 0 340px !important;
	width: 340px !important;
	max-width: 340px;
	align-self: flex-start !important;
	position: sticky;
	top: 110px;
	padding: 0 0 14px !important;
	background: #fff !important;
	border: 1px solid var(--u-line);
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(13, 43, 94, .08);
	gap: 0 !important;
}

.wpu-unit .wpu-unit-title {
	position: relative;
	margin: 0 0 12px !important;
	padding: 120px 26px 24px !important;
	min-height: 220px;
	display: flex;
	align-items: flex-end;
	background-color: var(--u-navy);
	background-size: cover !important;
	background-position: center 35% !important;
	isolation: isolate;
}

.wpu-unit .wpu-unit-title::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(180deg, rgba(13, 43, 94, .15) 0%, rgba(13, 43, 94, .72) 55%, rgba(13, 43, 94, .96) 100%);
}

.wpu-unit .wpu-unit-title .elementor-heading-title {
	margin: 0;
	color: #fff !important;
	font-family: inherit !important;
	font-size: 23px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	text-align: left !important;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .25) !important;
	-webkit-text-stroke: 0 !important;
	stroke-width: 0 !important;
}

.wpu-unit .wpu-unit-side .elementor-widget-nav-menu {
	padding: 0 14px;
}

.wpu-unit .wpu-unit-side .elementor-nav-menu--main .elementor-nav-menu,
.wpu-unit .wpu-unit-side .elementor-nav-menu--dropdown .elementor-nav-menu {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.wpu-unit .wpu-unit-side .elementor-item::before,
.wpu-unit .wpu-unit-side .elementor-item::after {
	display: none !important;
}

.wpu-unit .wpu-unit-side .elementor-nav-menu a.elementor-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 16px !important;
	border-radius: 12px;
	color: #33405a !important;
	background: transparent !important;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4;
	white-space: normal;
	transition: background .2s ease, color .2s ease, padding .2s ease;
}

.wpu-unit .wpu-unit-side .elementor-nav-menu a.elementor-item:hover,
.wpu-unit .wpu-unit-side .elementor-nav-menu a.elementor-item:focus-visible {
	background: var(--u-soft) !important;
	color: var(--u-navy) !important;
	padding-left: 20px !important;
}

.wpu-unit .wpu-unit-side .elementor-nav-menu a.elementor-item-active {
	background: var(--u-navy) !important;
	color: #fff !important;
	font-weight: 600;
	box-shadow: inset 4px 0 0 var(--u-red), 0 6px 16px rgba(13, 43, 94, .18);
}

.wpu-unit .wpu-unit-side .elementor-nav-menu a.elementor-item-active:hover {
	padding-left: 16px !important;
}

/* first item links back to the faculties list */
.wpu-unit .wpu-unit-side .elementor-nav-menu > li:first-child > a.elementor-item {
	color: var(--u-red) !important;
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 6px;
	border-bottom: 1px solid var(--u-line);
	border-radius: 12px 12px 0 0;
}

.wpu-unit .wpu-unit-side .elementor-nav-menu > li:first-child > a.elementor-item::before {
	content: "\2190" !important;
	display: inline-block !important;
	position: static !important;
	width: auto !important;
	height: auto !important;
	background: none !important;
	opacity: 1 !important;
	transform: none !important;
}

/* tablet/mobile burger toggle */
.wpu-unit .wpu-unit-side .elementor-menu-toggle {
	margin: 0 auto 0 0;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--u-soft) !important;
	color: var(--u-navy) !important;
}

.wpu-unit .wpu-unit-side .elementor-menu-toggle svg {
	fill: var(--u-navy);
}

.wpu-unit .wpu-unit-side .elementor-nav-menu--dropdown {
	background: #fff !important;
	margin-top: 10px !important;
	border-radius: 12px;
}

/* ---------- main content card ---------- */
.wpu-unit .wpu-unit-main {
	flex: 1 1 0% !important;
	width: auto !important;
	min-width: 0;
	position: relative;
	padding: 44px 48px !important;
	background: #fff;
	border: 1px solid var(--u-line);
	border-radius: 20px;
	box-shadow: 0 10px 30px rgba(13, 43, 94, .06);
	gap: 20px !important;
	color: var(--u-muted);
}

.wpu-unit:not(.wpu-unit--sub) .wpu-unit-main::before {
	content: "\201C";
	position: absolute;
	top: 6px;
	right: 34px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 150px;
	line-height: 1;
	color: var(--u-red);
	opacity: .08;
	pointer-events: none;
}

.wpu-unit .wpu-unit-main > .e-con {
	padding: 0 !important;
}

.wpu-unit .wpu-unit-main table,
.wpu-unit .wpu-unit-main tbody,
.wpu-unit .wpu-unit-main tr,
.wpu-unit .wpu-unit-main td {
	display: block;
	width: auto !important;
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
}

.wpu-unit .wpu-unit-main table {
	margin: 0 !important;
}

.wpu-unit .wpu-unit-main p,
.wpu-unit .wpu-unit-main li {
	font-size: 16.5px;
	line-height: 1.85;
	color: var(--u-muted);
	font-family: inherit !important;
}

.wpu-unit .wpu-unit-main p {
	margin: 0 0 18px;
}

.wpu-unit .wpu-unit-main strong {
	color: var(--u-ink);
}

.wpu-unit .wpu-unit-main a {
	color: var(--u-red);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* "Dekanın Mesajı" eyebrow */
.wpu-unit .wpu-unit-main .sub-title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 7px 14px;
	border-radius: 999px;
	background: rgba(200, 16, 46, .08);
	color: var(--u-red);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.wpu-unit .wpu-unit-main .sub-title i {
	margin: 0 !important;
}

.wpu-unit .wpu-unit-main h4 {
	margin: 0 0 14px;
}

.wpu-unit .wpu-unit-main .sec-title,
.wpu-unit .wpu-unit-main h1,
.wpu-unit .wpu-unit-main h2,
.wpu-unit .wpu-unit-main h3 {
	color: var(--u-navy);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.3;
	margin: 6px 0 22px;
}

.wpu-unit .wpu-unit-main .title-area {
	margin-bottom: 0 !important;
}

.wpu-unit .wpu-unit-main img {
	display: block;
	max-width: 100%;
	height: auto;
	border-radius: 18px;
	box-shadow: 0 14px 34px rgba(13, 43, 94, .16);
}

.wpu-unit .wpu-unit-main img.size-medium,
.wpu-unit .wpu-unit-main img.size-full[width="286"] {
	width: 240px;
	margin: 4px 0 10px;
}

/* ---------- program pages: nested tabs ---------- */
:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs {
	gap: 28px !important;
}

:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs-heading {
	flex-wrap: wrap;
	gap: 6px !important;
	padding: 6px;
	background: var(--u-soft);
	border-radius: 16px;
}

:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .e-n-tab-title {
	flex: 1 1 auto;
	justify-content: center;
	padding: 12px 18px !important;
	border: 0 !important;
	border-radius: 12px !important;
	background: transparent !important;
	color: #4a5570 !important;
	font-family: inherit !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.3;
	box-shadow: none !important;
	transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}

:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .e-n-tab-title:hover {
	background: #fff !important;
	color: var(--u-navy) !important;
}

:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .e-n-tab-title[aria-selected="true"] {
	background: var(--u-navy) !important;
	color: #fff !important;
	box-shadow: 0 6px 16px rgba(13, 43, 94, .2) !important;
}

:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .e-n-tab-title-text {
	color: inherit !important;
	font: inherit !important;
}

:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs-content > .e-con {
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
}

:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .elementor-tab-content {
	padding: 0 !important;
	border: 0 !important;
}

.wpu-unit .wpu-unit-main h5,
.wpu-unit .wpu-unit-main h6 {
	color: var(--u-navy);
	font-weight: 700;
	margin: 26px 0 12px;
}

.wpu-unit .wpu-unit-main ul,
.wpu-unit .wpu-unit-main ol {
	margin: 0 0 18px;
	padding-left: 22px;
}

/* curriculum and other tables inside tabs stay real tables */
:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs table {
	display: table;
	width: 100% !important;
	margin: 0 0 22px !important;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--u-line) !important;
	border-radius: 14px;
	overflow: hidden;
	font-size: 14.5px;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs tbody {
	display: table-row-group;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs tr {
	display: table-row;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs td,
:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs th {
	display: table-cell;
	padding: 10px 14px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--u-line) !important;
	color: var(--u-muted);
	vertical-align: top;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs tr:nth-child(even) td {
	background: #f9fafc !important;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs tr:last-child td {
	border-bottom: 0 !important;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs th,
:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs tr:first-child td {
	background: var(--u-navy) !important;
	color: #fff;
	font-weight: 600;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs tr:first-child td * {
	color: #fff !important;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs td p {
	margin: 0;
	font-size: inherit;
	line-height: 1.5;
}

:is(.wpu-unit--sub .wpu-unit-main, .wpu-prog-tabs) .e-n-tabs .e-n-tabs-content {
	overflow-x: auto;
}

/* ---------- academic staff pages: image-box cards ---------- */
.wpu-unit--staff .wpu-unit-main {
	padding: 0 !important;
	background: none;
	border: 0;
	box-shadow: none;
}

.wpu-unit--staff .wpu-unit-main > .e-con.e-grid {
	--e-con-grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important;
	gap: 20px !important;
	align-items: stretch;
}

:is(.wpu-unit--staff, .wpu-people) .elementor-widget-image-box {
	position: relative;
	height: 100%;
	margin: 0 !important;
	padding: 28px 18px 22px !important;
	background: #fff;
	border: 1px solid var(--u-line);
	border-radius: 18px;
	box-shadow: 0 6px 20px rgba(13, 43, 94, .06);
	overflow: hidden;
	transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

:is(.wpu-unit--staff, .wpu-people) .elementor-widget-image-box::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 74px;
	background: linear-gradient(135deg, var(--u-navy) 0%, var(--u-navy-2) 100%);
}

:is(.wpu-unit--staff, .wpu-people) .elementor-widget-image-box:hover {
	transform: translateY(-5px);
	border-color: transparent;
	box-shadow: 0 18px 40px rgba(13, 43, 94, .15);
}

:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-wrapper {
	position: relative;
	text-align: center !important;
}

:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-img {
	width: 116px !important;
	max-width: 116px;
	margin: 0 auto 16px !important;
	display: block;
	overflow: visible !important;
}

:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-img img {
	width: 116px !important;
	height: 116px !important;
	object-fit: cover;
	border-radius: 50% !important;
	border: 4px solid #fff !important;
	box-shadow: 0 8px 22px rgba(13, 43, 94, .2) !important;
	background: #fff;
	padding: 0 !important;
	transition: transform .4s ease;
}

:is(.wpu-unit--staff, .wpu-people) .elementor-widget-image-box:hover .elementor-image-box-img img {
	transform: scale(1.04);
}

:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-title {
	margin: 0 0 8px !important;
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	text-shadow: none !important;
	-webkit-text-stroke: 0 !important;
	stroke-width: 0 !important;
}

:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-description {
	display: inline-block;
	max-width: 100%;
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--u-soft);
	color: var(--u-muted) !important;
	font-family: inherit !important;
	font-size: 12.5px !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	overflow-wrap: anywhere;
}

/* ---------- graduate programme pages ----------
 * top section (image column + heading/text column) -> "wpu-prog"
 * nested-tabs container below it                    -> "wpu-prog-tabs"
 */
.wpu-prog,
.wpu-prog-tabs {
	--u-navy: #0d2b5e;
	--u-navy-2: #163d7a;
	--u-red: #c8102e;
	--u-ink: #1d2433;
	--u-muted: #4f5869;
	--u-line: #e3e8f0;
	--u-soft: #f4f6f9;
	box-sizing: border-box;
	width: calc(100% - 32px) !important;
	max-width: 1240px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.wpu-prog {
	margin-top: 70px !important;
	margin-bottom: 56px !important;
	padding: 40px !important;
	border: 1px solid var(--u-line);
	border-radius: 28px;
	background: radial-gradient(700px 360px at 100% 0, rgba(200, 16, 46, .06), transparent 60%), linear-gradient(180deg, #f7f9fc 0%, #fff 100%);
	box-shadow: 0 10px 30px rgba(13, 43, 94, .06);
}

/* pages without a tabs section: keep clear of the footer CTA that overlaps upwards */
.wpu-prog:last-child {
	margin-bottom: 200px !important;
}

.wpu-prog > .elementor-container {
	max-width: none !important;
	align-items: flex-start;
	gap: 48px;
}

.wpu-prog > .elementor-container > .elementor-column:first-child {
	width: 42% !important;
	position: sticky;
	top: 110px;
}

.wpu-prog > .elementor-container > .elementor-column:last-child {
	width: auto !important;
	flex: 1 1 0%;
	min-width: 0;
}

.wpu-prog > .elementor-container > .elementor-column > .elementor-widget-wrap {
	padding: 0 !important;
}

.wpu-prog .elementor-widget-image img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 22px;
	box-shadow: 0 22px 48px rgba(13, 43, 94, .18);
}

.wpu-prog .elementor-inner-section > .elementor-container {
	max-width: none;
}

.wpu-prog .elementor-inner-section .elementor-widget-wrap {
	padding: 0 !important;
}

.wpu-prog .react-heading .title-inner {
	margin: 0 0 22px;
}

.wpu-prog .react-heading .sub-text {
	display: inline-block;
	margin: 0 0 14px;
	padding: 6px 14px;
	border-radius: 999px;
	background: rgba(200, 16, 46, .08);
	color: var(--u-red) !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: .12em;
	line-height: 1.4 !important;
	text-transform: uppercase;
}

.wpu-prog .react-heading .title {
	margin: 0 !important;
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-size: clamp(28px, 3vw, 38px) !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

.wpu-prog .elementor-widget-text-editor,
.wpu-prog .elementor-widget-text-editor p {
	color: var(--u-muted) !important;
	font-family: inherit !important;
	font-size: 16.5px !important;
	line-height: 1.85 !important;
	text-align: left !important;
}

.wpu-prog .elementor-widget-text-editor p {
	margin: 0 0 18px;
}

/* paragraphs pasted fully wrapped in <strong> read as body text */
.wpu-prog:not(.wpu-prog--keepbold) .elementor-widget-text-editor p > strong:only-child {
	font-weight: 400;
	color: inherit;
}

.wpu-prog .elementor-widget-text-editor .nd_options_container {
	padding: 0 !important;
}

.wpu-prog-tabs {
	margin-top: 0 !important;
	margin-bottom: 200px !important;
	padding: 0 !important;
}

.wpu-prog-tabs > .e-con-inner {
	max-width: none !important;
	padding: 0 !important;
}

.wpu-prog-tabs .e-n-tabs-content {
	padding: 36px 40px;
	background: #fff;
	border: 1px solid var(--u-line);
	border-radius: 22px;
	box-shadow: 0 10px 30px rgba(13, 43, 94, .06);
}

.wpu-prog-tabs .e-n-tabs-content p,
.wpu-prog-tabs .e-n-tabs-content li {
	color: var(--u-muted);
	font-family: inherit !important;
	font-size: 16px;
	line-height: 1.8;
}

.wpu-prog-tabs .e-n-tabs-content p {
	margin: 0 0 14px;
}

.wpu-prog-tabs .e-n-tabs-content p strong {
	color: var(--u-navy);
}

.wpu-prog-tabs .e-n-tabs-content table td p {
	font-size: inherit;
}

/* ---------- institute forms: button grid as document tiles ---------- */
.wpu-unit--forms .wpu-unit-main {
	padding: 0 !important;
	background: none;
	border: 0;
	box-shadow: none;
}

.wpu-unit--forms .wpu-unit-main > .e-con.e-grid {
	display: block !important;
	padding: 0 !important;
	min-height: 0 !important;
}

.wpu-unit--forms .wpu-unit-main > .e-con.e-grid > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important;
	grid-template-rows: none !important;
	grid-auto-rows: 1fr;
	gap: 16px !important;
	width: 100%;
	max-width: none !important;
	padding: 0 !important;
}

/* first menu item here is a programme, not a "back" link */
.wpu-unit--forms .wpu-unit-side .elementor-nav-menu > li:first-child > a.elementor-item {
	color: #33405a !important;
	font-size: 15px;
	font-weight: 500;
	margin-bottom: 0;
	border-bottom: 0;
	border-radius: 12px;
}

.wpu-unit--forms .wpu-unit-side .elementor-nav-menu > li:first-child > a.elementor-item::before {
	display: none !important;
}

.wpu-unit--forms .wpu-unit-main .elementor-widget-button {
	width: 100% !important;
	margin: 0 !important;
}

.wpu-unit--forms .wpu-unit-main .elementor-widget-button .elementor-button-wrapper {
	height: 100%;
}

.wpu-unit--forms .wpu-unit-main .elementor-widget-button .elementor-button {
	position: relative;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 84px;
	padding: 16px 18px 16px 74px !important;
	background: #fff !important;
	border: 1px solid var(--u-line) !important;
	border-radius: 16px !important;
	box-shadow: 0 6px 18px rgba(13, 43, 94, .05) !important;
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	text-align: left !important;
	white-space: normal;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.wpu-unit--forms .wpu-unit-main .elementor-widget-button .elementor-button::before {
	content: "";
	position: absolute;
	left: 16px;
	top: 50%;
	width: 44px;
	height: 44px;
	margin-top: -22px;
	border-radius: 12px;
	background: rgba(200, 16, 46, .08) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23c8102e' d='M7 2h7l6 6v12a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2Zm6 1.5V9h5.5L13 3.5ZM8 13v2h8v-2H8Zm0 4v2h5v-2H8Z'/%3E%3C/svg%3E") center / 22px no-repeat;
	transition: background-color .25s ease;
}

.wpu-unit--forms .wpu-unit-main .elementor-widget-button .elementor-button:hover {
	transform: translateY(-3px);
	border-color: rgba(200, 16, 46, .35) !important;
	box-shadow: 0 14px 32px rgba(13, 43, 94, .12) !important;
}

.wpu-unit--forms .wpu-unit-main .elementor-widget-button .elementor-button:hover::before {
	background-color: rgba(200, 16, 46, .16);
}

.wpu-unit--forms .wpu-unit-main .elementor-button-content-wrapper,
.wpu-unit--forms .wpu-unit-main .elementor-button-text {
	display: block;
	color: inherit !important;
	font: inherit !important;
	text-align: left !important;
}

/* ---------- corporate / admin pages ----------
 * hero section            -> "wpu-prog" (+ "wpu-prog--photo" keeps a person's photo uncropped)
 * any content block below -> "wpu-prog-body"
 * people grids            -> "wpu-people" (+ "wpu-people--grid" flattens section/column rows,
 *                            "wpu-people--row" lays a container's cards side by side)
 */
.wpu-prog--photo .elementor-widget-image img {
	aspect-ratio: auto;
	object-fit: contain;
}

/* signature heading after the text (e.g. rector's name) */
.wpu-prog .elementor-widget-text-editor ~ .elementor-widget-react-heading .title-inner {
	margin: 8px 0 0;
}

.wpu-prog .elementor-widget-text-editor ~ .elementor-widget-react-heading .title {
	font-size: 22px !important;
}

.wpu-prog-body,
.wpu-people {
	--u-navy: #0d2b5e;
	--u-navy-2: #163d7a;
	--u-red: #c8102e;
	--u-ink: #1d2433;
	--u-muted: #4f5869;
	--u-line: #e3e8f0;
	--u-soft: #f4f6f9;
	box-sizing: border-box;
	width: calc(100% - 32px) !important;
	max-width: 1240px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.wpu-prog-body {
	margin-top: 0 !important;
	margin-bottom: 200px !important;
	padding: 40px 44px !important;
	background: #fff;
	border: 1px solid var(--u-line);
	border-radius: 24px;
	box-shadow: 0 10px 30px rgba(13, 43, 94, .06);
	gap: 18px !important;
}

.wpu-prog-body > .e-con-inner {
	max-width: none !important;
	padding: 0 !important;
}

.wpu-prog-body p,
.wpu-prog-body li {
	color: var(--u-muted);
	font-family: inherit !important;
	font-size: 16px;
	line-height: 1.8;
}

.wpu-prog-body p {
	margin: 0 0 14px;
}

.wpu-prog-body li {
	margin-bottom: 6px;
}

.wpu-prog-body ul,
.wpu-prog-body ol {
	margin: 0 0 20px;
	padding-left: 22px;
}

.wpu-prog-body h1,
.wpu-prog-body h2,
.wpu-prog-body h3,
.wpu-prog-body h4,
.wpu-prog-body h5,
.wpu-prog-body .elementor-heading-title {
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	margin: 26px 0 14px;
}

.wpu-prog-body h1,
.wpu-prog-body h2,
.wpu-prog-body .elementor-heading-title {
	font-size: 26px !important;
}

.wpu-prog-body h3,
.wpu-prog-body h4 {
	font-size: 20px !important;
}

.wpu-prog-body .elementor-widget-text-editor > :first-child,
.wpu-prog-body .elementor-heading-title {
	margin-top: 0;
}

.wpu-prog-body strong {
	color: var(--u-ink);
}

.wpu-prog-body a {
	color: var(--u-red);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.wpu-prog-body table {
	width: 100% !important;
	margin: 0 0 22px !important;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--u-line) !important;
	border-radius: 14px;
	overflow: hidden;
	font-size: 14.5px;
}

.wpu-prog-body td,
.wpu-prog-body th {
	padding: 11px 14px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--u-line) !important;
	color: var(--u-muted);
	vertical-align: top;
	background: none;
}

.wpu-prog-body tr:nth-child(even) td {
	background: #f9fafc;
}

.wpu-prog-body tr:last-child td {
	border-bottom: 0 !important;
}

.wpu-prog-body th,
.wpu-prog-body tr:first-child td {
	background: var(--u-navy) !important;
	color: #fff !important;
	font-weight: 600;
}

.wpu-prog-body th *,
.wpu-prog-body tr:first-child td * {
	color: #fff !important;
}

.wpu-prog-body .elementor-widget-text-editor {
	overflow-x: auto;
}

/* nested accordion (FAQ) */
.wpu-prog-body .e-n-accordion {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.wpu-prog-body .e-n-accordion-item {
	border: 1px solid var(--u-line) !important;
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	transition: box-shadow .2s ease, border-color .2s ease;
}

.wpu-prog-body .e-n-accordion-item[open] {
	border-color: rgba(13, 43, 94, .25) !important;
	box-shadow: 0 10px 26px rgba(13, 43, 94, .08);
}

.wpu-prog-body .e-n-accordion-item-title {
	padding: 18px 22px !important;
	border: 0 !important;
	background: #fff !important;
	color: var(--u-navy) !important;
}

.wpu-prog-body .e-n-accordion-item[open] > .e-n-accordion-item-title {
	background: var(--u-soft) !important;
}

.wpu-prog-body .e-n-accordion-item-title-text {
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-size: 16.5px !important;
	font-weight: 600 !important;
}

.wpu-prog-body .e-n-accordion-item-title-icon svg {
	fill: var(--u-red) !important;
}

.wpu-prog-body .e-n-accordion-item > .e-con {
	padding: 20px 22px 6px !important;
	border: 0 !important;
}

/* people */
.wpu-people {
	margin-top: 0 !important;
	padding: 0 !important;
}

.wpu-people > .e-con-inner,
.wpu-people > .elementor-container {
	max-width: none !important;
	padding: 0 !important;
}

.wpu-people--grid > .elementor-container > .elementor-column > .elementor-widget-wrap {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 20px;
	padding: 0 !important;
}

.wpu-people--grid .elementor-inner-section,
.wpu-people--grid .elementor-inner-section > .elementor-container,
.wpu-people--grid .elementor-inner-column,
.wpu-people--grid .elementor-inner-column > .elementor-widget-wrap {
	display: contents !important;
}

.wpu-people--row,
.wpu-people--row > .e-con-inner {
	flex-direction: row !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	align-items: stretch !important;
	gap: 20px !important;
}

.wpu-people--row > .e-con,
.wpu-people--row > .e-con-inner > .e-con,
.wpu-people--row > .elementor-widget-image-box,
.wpu-people--row > .e-con-inner > .elementor-widget-image-box {
	flex: 0 1 220px !important;
	width: 220px !important;
	max-width: 100%;
	padding: 0 !important;
}

.wpu-people--row .e-con > .elementor-widget-image-box {
	width: 100%;
}

.wpu-people .elementor-image-box-description {
	display: block;
	padding: 0;
	background: none;
	white-space: pre-line;
}

.wpu-people--first {
	margin-top: 70px !important;
	margin-bottom: 20px !important;
}

.wpu-people--last {
	margin-bottom: 200px !important;
}

/* pasted text often carries inline fonts / justification */
.wpu-prog-body .elementor-widget-text-editor * {
	font-family: inherit !important;
}

.wpu-prog-body .elementor-widget-text-editor p {
	text-align: left !important;
}

/* opt-in: stand-alone bold lines in a content block read as sub-headings */
.wpu-prog-body--subheads p > strong:only-child {
	display: block;
	margin-top: 8px;
	color: var(--u-navy);
	font-size: 18px;
	font-weight: 700;
}

/* theme "react-button" download links inside a hero (e.g. ethics committee forms) */
.wpu-prog .elementor-widget-react-button {
	margin-bottom: 10px !important;
}

.wpu-prog .elementor-widget-react-button .react-button {
	display: block;
}

.wpu-prog .elementor-widget-react-button a.react_button {
	position: relative;
	display: flex !important;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-height: 64px;
	padding: 12px 48px 12px 72px !important;
	border: 1px solid var(--u-line) !important;
	border-radius: 16px !important;
	background: #fff !important;
	box-shadow: 0 6px 18px rgba(13, 43, 94, .05);
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-size: 15.5px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	text-align: left;
	text-transform: none !important;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.wpu-prog .elementor-widget-react-button a.react_button::before {
	content: "";
	position: absolute;
	left: 14px;
	top: 50%;
	width: 44px;
	height: 44px;
	margin-top: -22px;
	border-radius: 12px;
	background: rgba(200, 16, 46, .08) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23c8102e' d='M7 2h7l6 6v12a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2Zm6 1.5V9h5.5L13 3.5ZM8 13v2h8v-2H8Zm0 4v2h5v-2H8Z'/%3E%3C/svg%3E") center / 22px no-repeat;
}

.wpu-prog .elementor-widget-react-button a.react_button::after {
	display: none !important;
}

.wpu-prog .elementor-widget-react-button a.react_button i {
	position: absolute;
	right: 20px;
	margin: 0 !important;
	color: var(--u-red);
	transition: transform .25s ease;
}

.wpu-prog .elementor-widget-react-button a.react_button:hover {
	transform: translateY(-2px);
	border-color: rgba(200, 16, 46, .35) !important;
	box-shadow: 0 14px 30px rgba(13, 43, 94, .12);
}

.wpu-prog .elementor-widget-react-button a.react_button:hover i {
	transform: translateX(4px);
}

.wpu-prog .elementor-widget-react-button .btn_text {
	color: inherit !important;
}

/* ---------- regulations (document library) ----------
 * intro container -> "wpu-reg-hero"; every section of button columns -> "wpu-reg".
 * The page wrapper becomes one grid, so all buttons line up regardless of rows.
 */
.elementor:has(> .wpu-reg) {
	--u-navy: #0d2b5e;
	--u-navy-2: #163d7a;
	--u-red: #c8102e;
	--u-muted: #4f5869;
	--u-line: #e3e8f0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	box-sizing: border-box;
	max-width: 1272px;
	margin: 70px auto 200px;
	padding: 0 16px;
}

.elementor > .wpu-reg,
.wpu-reg > .elementor-container {
	display: contents !important;
}

.wpu-reg > .elementor-container > .elementor-column {
	width: auto !important;
	min-width: 0;
}

.wpu-reg > .elementor-container > .elementor-column:not(:has(.elementor-widget)) {
	display: none !important;
}

.wpu-reg .elementor-widget-wrap {
	height: 100%;
	padding: 0 !important;
}

.wpu-reg .elementor-widget-button,
.wpu-reg .elementor-button-wrapper {
	width: 100%;
	height: 100%;
	margin: 0 !important;
}

.wpu-reg .elementor-widget-button .elementor-button {
	position: relative;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 92px;
	padding: 18px 20px 18px 78px !important;
	background: #fff !important;
	border: 1px solid var(--u-line) !important;
	border-radius: 18px !important;
	box-shadow: 0 6px 18px rgba(13, 43, 94, .05) !important;
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-size: 15.5px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	text-align: left !important;
	text-transform: none !important;
	white-space: normal !important;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.wpu-reg .elementor-widget-button .elementor-button::before {
	content: "";
	position: absolute;
	left: 18px;
	top: 50%;
	width: 46px;
	height: 46px;
	margin-top: -23px;
	border-radius: 13px;
	background: rgba(200, 16, 46, .08) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23c8102e' d='M7 2h7l6 6v12a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2Zm6 1.5V9h5.5L13 3.5ZM8 13v2h8v-2H8Zm0 4v2h5v-2H8Z'/%3E%3C/svg%3E") center / 23px no-repeat;
	transition: background-color .25s ease;
}

/* file type badge */
.wpu-reg .elementor-widget-button .elementor-button::after {
	position: absolute;
	top: 10px;
	right: 12px;
	padding: 2px 7px;
	border-radius: 6px;
	background: #f4f6f9;
	color: var(--u-muted);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .06em;
}

.wpu-reg .elementor-widget-button a[href$=".pdf"]::after {
	content: "PDF";
}

.wpu-reg .elementor-widget-button a[href$=".docx"]::after,
.wpu-reg .elementor-widget-button a[href$=".doc"]::after {
	content: "DOCX";
}

.wpu-reg .elementor-widget-button .elementor-button:hover {
	transform: translateY(-3px);
	border-color: rgba(200, 16, 46, .35) !important;
	box-shadow: 0 14px 32px rgba(13, 43, 94, .12) !important;
}

.wpu-reg .elementor-widget-button .elementor-button:hover::before {
	background-color: rgba(200, 16, 46, .16);
}

.wpu-reg .elementor-button-content-wrapper,
.wpu-reg .elementor-button-text {
	display: block;
	padding-right: 30px;
	color: inherit !important;
	font: inherit !important;
	text-align: left !important;
}

.wpu-reg-hero {
	grid-column: 1 / -1;
	position: relative;
	overflow: hidden;
	margin: 0 0 24px !important;
	padding: 52px 48px !important;
	border-radius: 24px !important;
	background: radial-gradient(900px 400px at 100% 0, rgba(200, 16, 46, .35), transparent 60%), linear-gradient(135deg, var(--u-navy) 0%, var(--u-navy-2) 100%);
	color: #fff;
	gap: 0 !important;
}

.wpu-reg-hero > .e-con-inner {
	max-width: none !important;
	padding: 0 !important;
	gap: 0 !important;
}

.wpu-reg-hero::after {
	content: "";
	position: absolute;
	right: -60px;
	bottom: -60px;
	width: 260px;
	height: 260px;
	border-radius: 50%;
	border: 40px solid rgba(255, 255, 255, .06);
}

.wpu-reg-hero .elementor-widget-heading:first-child .elementor-heading-title {
	display: inline-block;
	margin-bottom: 16px;
	padding: 6px 14px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .12);
	color: #fff !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.wpu-reg-hero .elementor-widget-heading + .elementor-widget-heading .elementor-heading-title {
	margin: 0 0 12px;
	color: #fff !important;
	font-family: inherit !important;
	font-size: clamp(30px, 4vw, 44px) !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
}

.wpu-reg-hero .elementor-widget-text-editor,
.wpu-reg-hero .elementor-widget-text-editor p {
	max-width: 680px;
	margin: 0;
	color: rgba(255, 255, 255, .85) !important;
	font-family: inherit !important;
	font-size: 17px;
	line-height: 1.65;
}

@media (max-width: 1024px) {
	.elementor:has(> .wpu-reg) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.elementor:has(> .wpu-reg) {
		grid-template-columns: 1fr;
		gap: 12px;
		margin-top: 40px;
	}

	.wpu-reg-hero {
		padding: 34px 24px !important;
		border-radius: 18px;
	}

	.wpu-reg .elementor-widget-button .elementor-button {
		min-height: 78px;
	}
}

/* ---------- campus life ----------
 * hero keeps its bold sub-headings  -> "wpu-prog wpu-prog--keepbold"
 * section title container          -> "wpu-dorm-intro"
 * each dormitory = a run of sibling containers forming one card:
 *   text container "wpu-dorm-head", media containers "wpu-dorm-media",
 *   the last one of the run also "wpu-dorm-end"
 */
.wpu-prog--keepbold .elementor-widget-text-editor p > strong:only-child {
	display: block;
	margin-top: 10px;
	color: var(--u-navy);
	font-size: 18px;
	font-weight: 700;
}

.wpu-dorm-intro,
.wpu-dorm-head,
.wpu-dorm-media {
	--u-navy: #0d2b5e;
	--u-red: #c8102e;
	--u-muted: #4f5869;
	--u-line: #e3e8f0;
	--u-soft: #f4f6f9;
	box-sizing: border-box;
	width: calc(100% - 32px) !important;
	max-width: 1240px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.wpu-dorm-intro > .e-con-inner,
.wpu-dorm-head > .e-con-inner,
.wpu-dorm-media > .e-con-inner {
	max-width: none !important;
	padding: 0 !important;
}

.wpu-dorm-intro {
	margin-top: 0 !important;
	margin-bottom: 4px !important;
	padding: 0 !important;
}

.wpu-dorm-intro .elementor-heading-title {
	display: flex;
	align-items: center;
	gap: 16px;
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-size: 28px !important;
	font-weight: 700 !important;
}

.wpu-dorm-intro .elementor-heading-title::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--u-line);
}

.wpu-dorm-head,
.wpu-dorm-media {
	background: #fff;
	border-left: 1px solid var(--u-line);
	border-right: 1px solid var(--u-line);
}

.wpu-dorm-head {
	margin-top: 28px !important;
	margin-bottom: 0 !important;
	padding: 32px 40px 8px !important;
	border-top: 1px solid var(--u-line);
	border-radius: 24px 24px 0 0;
	background: linear-gradient(180deg, #f7f9fc 0%, #fff 100%);
}

.wpu-dorm-media {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 16px 40px !important;
}

.wpu-dorm-end {
	padding-bottom: 36px !important;
	border-bottom: 1px solid var(--u-line);
	border-radius: 0 0 24px 24px;
	box-shadow: 0 18px 30px -18px rgba(13, 43, 94, .15);
}

.wpu-dorm-end:last-child {
	margin-bottom: 200px !important;
}

.wpu-dorm-head .elementor-widget-text-editor,
.wpu-dorm-head .elementor-widget-text-editor p {
	text-align: left !important;
	font-family: inherit !important;
	color: var(--u-muted) !important;
}

.wpu-dorm-head .elementor-widget-text-editor .elementor-widget-container {
	padding: 0 !important;
}

.wpu-dorm-head h3,
.wpu-dorm-head h3 * {
	margin: 0 0 12px !important;
	color: var(--u-navy) !important;
	font-family: inherit !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	text-transform: none;
}

.wpu-dorm-head h3 strong {
	margin: 0 !important;
}

.wpu-dorm-head p {
	display: inline-flex;
	margin: 0 10px 12px 0 !important;
	vertical-align: middle;
}

/* discount line */
.wpu-dorm-head p > strong:only-child {
	padding: 7px 14px;
	border-radius: 999px;
	background: var(--u-red);
	color: #fff !important;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
}

/* website link as a pill button */
.wpu-dorm-head p > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px;
	border-radius: 999px;
	border: 1px solid rgba(13, 43, 94, .18);
	background: #fff;
	color: var(--u-navy) !important;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none !important;
	transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.wpu-dorm-head p > a::after {
	content: "\2197";
	font-size: 13px;
}

.wpu-dorm-head p > a:hover {
	background: var(--u-navy);
	border-color: var(--u-navy);
	color: #fff !important;
}

/* vertical YouTube Shorts video */
.wpu-dorm-media .elementor-widget-video {
	width: 100% !important;
	max-width: 340px !important;
	margin: 0 auto !important;
	align-self: center !important;
}

.wpu-dorm-media .elementor-widget-video .elementor-wrapper {
	aspect-ratio: 9 / 16;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 18px 40px rgba(13, 43, 94, .2);
}

/* photo carousels */
.wpu-dorm-media .elementor-image-carousel-wrapper {
	padding-bottom: 30px;
}

.wpu-dorm-media .swiper-slide img,
.wpu-dorm-media .swiper-slide-image {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 16px;
}

.wpu-dorm-media .swiper-pagination-bullet {
	background: var(--u-navy) !important;
	opacity: .25;
}

.wpu-dorm-media .swiper-pagination-bullet-active {
	opacity: 1;
	width: 22px;
	border-radius: 999px;
}

/* ---------- responsive ---------- */
@media (max-width: 1024px) {
	.wpu-prog {
		padding: 28px !important;
	}

	.wpu-prog > .elementor-container {
		flex-wrap: wrap;
		gap: 28px;
	}

	.wpu-prog > .elementor-container > .elementor-column:first-child {
		position: static;
		width: 100% !important;
		max-width: 520px;
	}

	.wpu-prog > .elementor-container > .elementor-column:last-child {
		flex-basis: 100%;
	}

	.wpu-prog-tabs .e-n-tabs-content {
		padding: 26px 22px;
	}

	.wpu-unit {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 24px !important;
		margin: 40px auto 160px !important;
	}

	.wpu-unit .wpu-unit-side {
		position: static;
		align-self: stretch !important;
		flex: none !important;
		width: 100% !important;
		max-width: none;
		padding-bottom: 14px !important;
	}

	.wpu-unit .wpu-unit-title {
		min-height: 180px;
		padding-top: 90px !important;
	}

	.wpu-unit .wpu-unit-main {
		flex: none !important;
		width: 100% !important;
		padding: 32px 28px !important;
	}
}

@media (max-width: 640px) {
	.wpu-dorm-head {
		padding: 24px 20px 6px !important;
		border-radius: 18px 18px 0 0;
	}

	.wpu-dorm-media {
		padding: 12px 20px !important;
	}

	.wpu-dorm-end {
		padding-bottom: 24px !important;
		border-radius: 0 0 18px 18px;
	}

	.wpu-dorm-head h3,
	.wpu-dorm-head h3 * {
		font-size: 21px !important;
	}

	.wpu-prog-body {
		padding: 24px 18px !important;
		border-radius: 18px;
	}

	.wpu-people--grid > .elementor-container > .elementor-column > .elementor-widget-wrap {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.wpu-people--row > .e-con,
	.wpu-people--row > .e-con-inner > .e-con,
	.wpu-people--row > .elementor-widget-image-box,
	.wpu-people--row > .e-con-inner > .elementor-widget-image-box {
		flex-basis: calc(50% - 10px) !important;
		width: calc(50% - 10px) !important;
	}

	.wpu-prog {
		margin-top: 40px !important;
		padding: 20px !important;
		border-radius: 20px;
	}

	.wpu-prog-tabs .e-n-tabs-content {
		padding: 20px 16px;
		border-radius: 16px;
	}

	.wpu-unit--forms .wpu-unit-main > .e-con.e-grid > .e-con-inner {
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	:is(.wpu-unit .wpu-unit-main, .wpu-prog-tabs) .e-n-tab-title {
		flex-basis: 100%;
	}

	.wpu-unit--staff .wpu-unit-main > .e-con.e-grid {
		--e-con-grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
	}

	:is(.wpu-unit--staff, .wpu-people) .elementor-widget-image-box {
		padding: 20px 10px 16px !important;
	}

	:is(.wpu-unit--staff, .wpu-people) .elementor-widget-image-box::before {
		height: 56px;
	}

	:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-img,
	:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-img img {
		width: 84px !important;
		height: 84px !important;
		max-width: 84px;
	}

	:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-title {
		font-size: 13px !important;
	}

	:is(.wpu-unit--staff, .wpu-people) .elementor-image-box-description {
		padding: 0;
		background: none;
		font-size: 11px !important;
		word-break: break-all;
	}

	.wpu-unit .wpu-unit-title .elementor-heading-title {
		font-size: 21px !important;
	}

	.wpu-unit .wpu-unit-main {
		padding: 26px 20px !important;
		border-radius: 16px;
	}

	.wpu-unit .wpu-unit-main::before {
		font-size: 110px;
		right: 18px;
	}

	.wpu-unit .wpu-unit-main .sec-title {
		font-size: 22px;
	}

	.wpu-unit .wpu-unit-main p {
		font-size: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wpu-unit .wpu-unit-side .elementor-nav-menu a.elementor-item {
		transition: none;
	}
}
