/* ==========================================================================
   Ullevaal Elementor Kit — frontend
   Klassenavnene er beholdt fra Essential Addons / JetTricks / JetPopup slik
   at Elementors genererte CSS og egendefinert CSS på siden treffer uendret.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Advanced Tabs (.eael-advance-tabs)
   -------------------------------------------------------------------------- */

.eael-advance-tabs { display: block; }

.eael-advance-tabs .eael-tabs-nav > ul {
	position: relative;
	z-index: 1;
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.eael-advance-tabs .eael-tabs-nav > ul li {
	position: relative;
	flex: 1 1 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 1em 1.5em;
	text-align: center;
	cursor: pointer;
	background-color: #f1f1f1;
}

.eael-advance-tabs .eael-tabs-nav > ul li .eael-tab-title {
	margin: unset;
	font-size: unset;
	line-height: unset;
	font-family: unset;
	font-weight: unset;
	color: unset;
}

.eael-advance-tabs .eael-tabs-nav > ul li:after {
	content: "";
	position: absolute;
	bottom: -10px;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 1;
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top: 10px solid #444;
	border-bottom: 0;
	display: none;
}

.eael-advance-tabs .eael-tabs-nav > ul li:hover,
.eael-advance-tabs .eael-tabs-nav > ul li.active { background-color: #444; }

.eael-advance-tabs .eael-tabs-nav > ul li:focus-visible { outline: 1px solid #a9d204 !important; }

.eael-advance-tabs .eael-tabs-nav > ul li.active:after { display: block; }
.eael-advance-tabs.active-caret-on .eael-tabs-nav > ul li.active:after { display: none; }

.eael-tabs-content { display: flex; flex: 1 1 auto; overflow: hidden; }

.eael-advance-tabs .eael-tabs-content > div { display: none; opacity: 0; }

.eael-advance-tabs .eael-tabs-content > div.active {
	display: block;
	width: 100%;
	padding: 1em;
	opacity: 1;
	animation: uek-fade-in linear 0.3s;
}

@keyframes uek-fade-in { from { opacity: 0; } to { opacity: 1; } }

/* Ikonplassering */
.eael-tab-top-icon li { display: flex; flex-wrap: wrap; text-align: center; }
.eael-tab-top-icon li i,
.eael-tab-top-icon li img,
.eael-tab-top-icon li svg,
.eael-tab-top-icon li .eael-tab-title { flex: 1 1 100%; line-height: 1; }

.eael-tab-inline-icon li img { display: inline-block; }

/* Vertikale faner */
.eael-advance-tabs.eael-tabs-vertical { display: flex; }
.eael-advance-tabs.eael-tabs-vertical > .eael-tabs-nav { flex: 0 0 auto; }
.eael-advance-tabs.eael-tabs-vertical > .eael-tabs-nav > ul { flex-flow: column wrap; }
.eael-advance-tabs.eael-tabs-vertical > .eael-tabs-nav > ul > li { width: 100%; justify-content: start; }

.eael-advance-tabs.eael-tabs-vertical > .eael-tabs-nav > ul li::after {
	bottom: auto !important;
	right: -10px;
	top: calc(50% - 10px);
	left: auto !important;
	border-left: 10px solid #444;
	border-right: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
}

.rtl .eael-advance-tabs.eael-tabs-vertical > .eael-tabs-nav > ul li::after {
	border-right: 10px solid #444;
	border-left: 0;
}

@media only screen and (max-width: 767px) {
	.eael-advance-tabs .eael-tabs-nav > ul { flex-flow: row wrap; }
	.eael-advance-tabs .eael-tabs-nav > ul li { flex: 1 1 auto; }
	.responsive-vertical-layout.eael-advance-tabs .eael-tabs-nav > ul li { flex: 1 1 100%; }
	.eael-advance-tabs.eael-tabs-vertical { flex-wrap: wrap; }
	.eael-advance-tabs.eael-tabs-vertical div.eael-tabs-nav,
	.eael-advance-tabs.eael-tabs-vertical ul,
	.eael-advance-tabs.eael-tabs-vertical ul li { flex: 1 100%; }

	div.eael-advance-tabs.eael-tabs-vertical div.eael-tabs-nav > ul li::after {
		border-left-color: transparent !important;
		bottom: -20px !important;
		left: 0 !important;
		right: 0 !important;
		top: auto !important;
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top-color: #444 !important;
	}
}

/* --------------------------------------------------------------------------
   Unfold (.jet-unfold)
   -------------------------------------------------------------------------- */

.jet-unfold { transition: all 300ms ease; overflow: hidden; }

.jet-unfold__mask { overflow: hidden; position: relative; }

.jet-unfold__mask-gradient {
	-webkit-mask-image: linear-gradient(to top, transparent 0%, black var(--jet-unfold-mask-height, 100px));
	mask-image: linear-gradient(to top, transparent 0%, black var(--jet-unfold-mask-height, 100px));
}

.jet-unfold__separator {
	position: absolute;
	display: block;
	width: 100%;
	height: 30px;
	bottom: 0;
	opacity: 0;
	transition: opacity 100ms ease;
	pointer-events: none;
}

.jet-unfold__trigger {
	display: none;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	margin-top: 30px;
}

.jet-unfold__button {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	padding: 15px 30px;
	font-size: 16px;
	line-height: 1;
	border-radius: 4px;
	background-color: #6ec1e4;
	color: #fff;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.3s ease;
}

.jet-unfold__button:hover { color: #fff; }
.jet-unfold__button.elementor-button { display: flex; flex-flow: row nowrap; }
.jet-unfold__button:not(:empty) { gap: 5px; }
.jet-unfold__button .jet-unfold__button-text,
.jet-unfold__button .jet-unfold__button-icon { color: inherit; }
.jet-unfold__button-icon:empty { display: none; }

.jet-unfold-state .jet-unfold__separator { opacity: 0; }
.jet-unfold-state .jet-unfold__mask { -webkit-mask-image: none; mask-image: none; }

/* --------------------------------------------------------------------------
   Popup (.jet-popup)
   -------------------------------------------------------------------------- */

.jet-popup.jet-popup--front-mode {
	position: fixed;
	inset: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: stretch;
	z-index: 999;
}

.jet-popup.jet-popup--front-mode .jet-popup__inner {
	width: 100%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}

.jet-popup.jet-popup--front-mode .jet-popup__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	opacity: 0;
	background-color: rgba(0, 0, 0, 0.5);
	transition: opacity 300ms ease;
}

.jet-popup.jet-popup--front-mode .jet-popup__container {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: stretch;
	width: 800px;
	max-width: 100%;
	max-height: 100%;
	z-index: 2;
	opacity: 0;
	transition: opacity 300ms ease, transform 300ms ease;
}

.jet-popup.jet-popup--front-mode .jet-popup__container-inner {
	width: 100%;
	position: relative;
	overflow-y: auto;
	overflow-x: hidden;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: stretch;
	padding: 20px;
	background-color: #fff;
	z-index: 1;
}

.jet-popup.jet-popup--front-mode .jet-popup__container-inner > .elementor { position: relative; z-index: 2; }

.jet-popup.jet-popup--front-mode .jet-popup__container-overlay {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 1;
}

.jet-popup.jet-popup--front-mode .jet-popup__container-content { position: relative; z-index: 2; }

.jet-popup.jet-popup--front-mode .jet-popup__close-button {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 3;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 32px;
	height: 32px;
	padding: 0;
	font: inherit;
	font-size: 16px;
	border: none;
	color: #fff;
	background-color: #000;
	cursor: pointer;
	appearance: none;
	transition: all 0.2s ease;
}

.jet-popup.jet-popup--front-mode .jet-popup__close-button svg { width: 1em; height: auto; fill: currentColor; }
.jet-popup.jet-popup--front-mode .jet-popup__close-button:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

.jet-popup.jet-popup--front-mode.jet-popup--hide-state { opacity: 0; pointer-events: none; visibility: hidden; }
.jet-popup.jet-popup--front-mode.jet-popup--show-state { opacity: 1; visibility: visible; }
.jet-popup.jet-popup--front-mode.jet-popup--show-state .jet-popup__inner { pointer-events: none; }
.jet-popup.jet-popup--front-mode.jet-popup--show-state .jet-popup__overlay { pointer-events: all; opacity: 1; }
.jet-popup.jet-popup--front-mode.jet-popup--show-state .jet-popup__container { pointer-events: all; opacity: 1; transform: none; }

/* Åpningsanimasjoner */
.jet-popup--animation-move-up .jet-popup__container { transform: translateY(40px); }
.jet-popup--animation-move-down .jet-popup__container { transform: translateY(-40px); }
.jet-popup--animation-move-left .jet-popup__container { transform: translateX(40px); }
.jet-popup--animation-move-right .jet-popup__container { transform: translateX(-40px); }
.jet-popup--animation-zoom-in .jet-popup__container { transform: scale(0.85); }
.jet-popup--animation-zoom-out .jet-popup__container { transform: scale(1.15); }

.jet-popup-target { cursor: pointer; }
.jet-popup-prevent-scroll { overflow: hidden; max-height: 100vh; }

@media (prefers-reduced-motion: reduce) {
	.jet-popup.jet-popup--front-mode .jet-popup__overlay,
	.jet-popup.jet-popup--front-mode .jet-popup__container { transition: none; }
	.jet-popup .jet-popup__container { transform: none !important; }
}

/* --------------------------------------------------------------------------
   Ansatte-grid (.uek-ansatte)
   -------------------------------------------------------------------------- */

.uek-ansatte {
	--uek-kolonner: 4;
	--uek-gap: 32px;
	--uek-bilde: 123px;
	--uek-justering: center;

	display: grid;
	grid-template-columns: repeat(var(--uek-kolonner), minmax(0, 1fr));
	gap: var(--uek-gap);
	align-items: start;
}

.uek-ansatt {
	display: flex;
	flex-direction: column;
	align-items: var(--uek-justering);
	text-align: var(--uek-justering);
}

.uek-ansatt__bilde {
	width: var(--uek-bilde);
	max-width: 100%;
	margin-bottom: 12px;
}

.uek-ansatt__bilde img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 50%;
}

.uek-ansatt p {
	margin: 0;
	line-height: 1.4;
}

.uek-ansatt__navn { font-weight: 700; }

.uek-ansatt__kontakt a {
	color: inherit;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.uek-ansatt__kontakt a:hover { text-decoration: underline; }

@media (max-width: 767px) {
	.uek-ansatte { --uek-gap: 20px; }
}
