/* ---------------------------------------------------------------------------------------------

	Theme Name: WorkDigital Foundation Child
	Version: 0.1
	Description: Child theme for WorkDigital Foundation theme
	Author: WorkDigital
	Author URI: https://workdigital.dk
    Template: wd-foundation

/* --------------------------------------------------------------------------------------------- */

/*Header*/
header.wd-header {
	--header-scroll-transition: 325ms cubic-bezier(0.4, 0, 0.2, 1);
	background: linear-gradient(0deg, #ccdae8, var(--header-bg-color));
	box-shadow: none;
}

.main-header-logo-link, .main-header-nav-open {
	margin-right: unset;
}

@media (min-width: 1190px) {
	/* Match the original header geometry: 13px breathing room around the logo. */
	body.sometimes-burger .main-header {
		--header-content-gutter: clamp(24px, 3vw, 48px);
		height: auto;
		min-height: var(--header-height);
		padding: 13px 0;
		box-sizing: border-box;
		background: transparent;
		transition: min-height var(--header-scroll-transition);
	}

	body.sometimes-burger .main-header-inner {
		width: calc(100% - (var(--header-content-gutter) * 2));
		max-width: var(--wide-width);
		height: calc(var(--header-height) - 26px);
		max-height: none;
		margin: 0 auto;
		padding: 0;
		box-sizing: border-box;
		transition: height var(--header-scroll-transition);
	}

	/* Reserve the full logo column, so the menu never slides sideways. */
	body.sometimes-burger .main-header-logo-link {
		width: 165px;
		min-width: 165px;
		height: calc(var(--header-height) - 26px);
		flex: 0 0 165px;
		align-items: center;
		justify-content: flex-start;
		transition: height var(--header-scroll-transition);
	}

	body.sometimes-burger .main-header-logo-link img {
		display: block;
		width: 165px;
		height: 110px;
		max-width: 165px;
		max-height: 110px;
		padding: 0;
		object-fit: contain;
		object-position: left center;
		transition:
			width var(--header-scroll-transition),
			height var(--header-scroll-transition),
			max-width var(--header-scroll-transition),
			max-height var(--header-scroll-transition);
	}

	body.sometimes-burger nav.main-header-nav,
	body.sometimes-burger .main-header-menu {
		display: flex;
		min-width: 0;
		height: 100%;
		align-items: center;
	}

	body.sometimes-burger .telefonnummer {
		flex: 0 0 auto;
	}

	body.header-is-compact.sometimes-burger .main-header {
		height: auto;
		min-height: 86px;
	}

	body.header-is-compact.sometimes-burger .main-header-inner,
	body.header-is-compact.sometimes-burger .main-header-logo-link {
		height: 60px;
	}

	body.header-is-compact.sometimes-burger .main-header-logo-link img {
		width: 90px;
		height: 60px;
		max-width: 90px;
		max-height: 60px;
	}
}

body.sometimes-burger .main-header-menu .menu-item.menu-item-object-custom.menu-item-has-children > a {
	pointer-events: unset; 
}

/* JavaScript adds these controls for the drawer; they must never enter the desktop layout. */
.mobile-submenu-toggle {
	display: none;
}

@media (min-width: 1190px) and (hover: hover) {
	/* Replace Foundation's short ::before marker with the old theme's underline. */
	body.sometimes-burger .main-header-menu > .menu-item > a::before {
		content: none !important;
		display: none !important;
	}

	body.sometimes-burger .main-header-menu > .menu-item > a {
		position: relative;
		height: auto;
		min-height: 0;
		padding: 0;
		line-height: 24px;
	}

	body.sometimes-burger .main-header-menu > .menu-item {
		display: flex;
		height: 100%;
		align-items: center;
	}

	body.sometimes-burger .main-header-menu > .menu-item > a::after,
	body.sometimes-burger .main-header-menu > .menu-item.menu-item-has-children > a::after {
		content: "";
		position: absolute;
		right: auto;
		bottom: -1px;
		left: 0;
		display: block;
		width: 100%;
		height: 1px;
		border: 0;
		border-radius: 0;
		background-color: var(--theme-highlight-color, var(--header-active-color));
		transform: scaleX(0);
		transform-origin: center;
		opacity: 0;
		transition: transform var(--slow-transition);
	}

	body.sometimes-burger .main-header-menu > .menu-item:hover > a::after,
	body.sometimes-burger .main-header-menu > .menu-item.current-menu-item > a::after,
	body.sometimes-burger .main-header-menu > .menu-item.current_page_item > a::after,
	body.sometimes-burger .main-header-menu > .menu-item.current-menu-parent > a::after,
	body.sometimes-burger .main-header-menu > .menu-item.current_page_parent > a::after,
	body.sometimes-burger .main-header-menu > .wd-shop-megamenu-trigger.current-shop-section > a::after {
		transform: scaleX(1);
		opacity: 1;
	}
}

@media (min-width: 1190px) and (hover: hover) {
	body.sometimes-burger .main-header-menu {
		display: flex;
		gap: clamp(12px, 1.5vw, var(--small-gap));
		margin: 0;
	}
}

/* Tighten the fixed desktop controls before the layout switches to the drawer. */
@media (min-width: 1190px) and (max-width: 1450px) and (hover: hover) {
	body.sometimes-burger .telefonnummer .wd-button {
		padding-right: clamp(14px, 1.5vw, 24px);
		padding-left: clamp(14px, 1.5vw, 24px);
		white-space: nowrap;
	}
}

/* Mobile header and drawer. Keep this independent of the desktop mega menu. */
@media (max-width: 1189px), (hover: none) {
	body.sometimes-burger .main-header {
		min-height: 78px;
		padding: 0;
		background: transparent;
	}

	body.sometimes-burger .main-header-inner {
		height: 78px;
		padding: 0 16px;
		align-items: center;
		gap: 12px;
	}

	body.sometimes-burger .main-header-logo-link {
		flex: 0 1 auto;
		width: auto;
		min-width: 0;
		height: 78px;
		align-items: flex-start;
	}

	body.sometimes-burger .main-header-logo-link img {
		display: block;
		width: auto;
		height: 70px;
		max-width: min(145px, 44vw);
		max-height: 70px;
		padding: 6px 0;
		box-sizing: border-box;
		object-fit: contain;
		object-position: left center;
	}

	body.sometimes-burger .main-header-nav-open {
		display: flex;
		flex: 0 0 44px;
		width: 44px;
		height: 78px;
		margin-left: auto;
		align-items: center;
		justify-content: center;
	}

	body.sometimes-burger .telefonnummer,
	body.sometimes-burger .main-header-inner-search {
		display: none;
	}

	body.sometimes-burger .main-header-nav {
		display: flex;
		flex-direction: column;
		width: min(90vw, 390px);
		max-width: 390px;
		background: var(--background-color);
	}

	body.sometimes-burger .nav-drawer-header {
		flex: 0 0 auto;
		align-items: center;
	}

	body.sometimes-burger .main-header-menu {
		display: flex;
		flex: 1 0 auto;
		flex-direction: column;
		align-items: stretch;
		width: auto;
		height: auto;
		margin: 0;
		padding: 0 12px 28px;
		gap: 0;
	}

	body.sometimes-burger .main-header-menu .menu-item {
		display: block;
		width: 100%;
		height: auto;
	}

	body.sometimes-burger .main-header-menu .menu-item > a:not(.expand-sub-menu) {
		display: flex;
		width: 100%;
		min-width: 0;
		box-sizing: border-box;
		white-space: normal;
	}

	/* Present the cart as a clear drawer row: label left, icon and count right. */
	body.sometimes-burger .main-header-menu .kurv > a:not(.expand-sub-menu) {
		position: relative;
		height: 56px;
		min-height: 56px;
		padding: 0 0 0 32px;
		align-items: center;
		gap: 12px;
	}

	body.sometimes-burger .main-header-menu .kurv .menu-label {
		display: inline-block;
		order: 1;
		font-size: inherit;
		font-weight: inherit;
		line-height: inherit;
	}

	body.sometimes-burger .main-header-menu .kurv .menu-icon {
		display: grid;
		width: 48px;
		height: 48px;
		margin-left: auto;
		flex: 0 0 48px;
		order: 2;
		place-items: center;
	}

	body.sometimes-burger .main-header-menu .kurv .menu-icon svg {
		width: 32px;
		height: 32px;
	}

	body.sometimes-burger .main-header-menu .kurv .wd-mini-cart-counter {
		top: 5px;
		right: 2px;
		display: grid;
		min-width: 21px;
		height: 21px;
		padding: 0 5px;
		box-sizing: border-box;
		place-items: center;
		border-radius: 999px;
		font-size: 12px;
		font-weight: 700;
		line-height: 1;
		transform: none;
	}

	body.sometimes-burger .main-header-menu .menu-item-has-children > a:not(.expand-sub-menu) {
		padding-right: 52px;
	}

	body.sometimes-burger .main-header-menu a.expand-sub-menu,
	body.sometimes-burger .main-header-menu .menu-item-has-children > span.icon {
		display: none !important;
	}

	body.sometimes-burger .mobile-submenu-toggle {
		position: absolute;
		top: 4px;
		right: 4px;
		display: grid;
		width: 48px;
		height: 48px;
		padding: 0;
		place-items: center;
		border: 0;
		border-radius: 50%;
		background: transparent;
		color: inherit;
		cursor: pointer;
	}

	body.sometimes-burger .mobile-submenu-toggle:hover,
	body.sometimes-burger .mobile-submenu-toggle:focus-visible {
		background: color-mix(in srgb, var(--header-bg-color), var(--dark) 8%);
		outline: none;
	}

	body.sometimes-burger .mobile-submenu-toggle-icon {
		display: block;
		width: 8px;
		height: 8px;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: translateY(-2px) rotate(45deg);
		transition: transform var(--standard-transition, 180ms ease);
	}

	body.sometimes-burger .menu-item-has-children.is-expanded > .mobile-submenu-toggle .mobile-submenu-toggle-icon {
		transform: translateY(2px) rotate(225deg);
	}

	body.sometimes-burger .main-header-menu .menu-item-has-children > .sub-menu {
		display: block;
		max-height: 0;
		margin: 0;
		padding-left: 18px;
		overflow: hidden;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition:
			max-height 240ms cubic-bezier(0.4, 0, 0.2, 1),
			opacity 180ms ease,
			visibility 180ms ease;
	}

	body.sometimes-burger .main-header-menu .menu-item-has-children.is-expanded > .sub-menu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	body.mobile-menu-open {
		overflow: hidden;
	}
}

@media screen and (min-width: 1190px) and (hover: hover) {
	@keyframes wd-submenu-enter {
		from {
			opacity: 0;
			transform: translateY(calc(14px + var(--dropdown-menu-distance, 5px)));
		}

		to {
			opacity: 1;
			transform: translateY(calc(20px + var(--dropdown-menu-distance, 5px)));
		}
	}

    body.sometimes-burger .main-header-menu > .menu-item > ul.sub-menu {
        right: unset;
		left: 0;
		top: 50%;
		z-index: 1001;
		background-color: var(--background-color, #f3f3f3);
		transform: translateY(calc(20px + var(--dropdown-menu-distance, 5px)));
		transform-origin: top center;
    }

	body.sometimes-burger .main-header-menu > .menu-item.menu-item-has-children:hover > ul.sub-menu {
		animation: wd-submenu-enter 180ms cubic-bezier(0.2, 0.75, 0.3, 1) both;
	}

	/* Clear, animated feedback on the individual dropdown links. */
	body.sometimes-burger .main-header-menu ul.sub-menu li > a {
		background-color: transparent;
		box-shadow: inset 0 0 0 var(--theme-highlight-color, var(--header-active-color));
		transition:
			background-color 180ms ease,
			box-shadow 180ms ease,
			color 180ms ease;
	}

	body.sometimes-burger .main-header-menu ul.sub-menu li > a:hover,
	body.sometimes-burger .main-header-menu ul.sub-menu li > a:focus-visible {
		background-color: color-mix(
			in srgb,
			var(--theme-highlight-color, var(--header-active-color)) 12%,
			var(--background-color)
		);
		box-shadow: inset 3px 0 0 var(--theme-highlight-color, var(--header-active-color));
		outline: none;
	}

	/* Preserve hover while crossing the small gap below the text link. */
	body.sometimes-burger .main-header-menu > .menu-item > ul.sub-menu::after {
		top: calc((8px + var(--dropdown-menu-distance, 5px)) * -1);
		right: 0;
		bottom: auto;
		width: 100%;
		height: calc(8px + var(--dropdown-menu-distance, 5px));
		clip-path: none;
	}
}


/*Body gradient*/
body.single-product .wrapper {
    background: linear-gradient(0deg, rgba(30, 115, 190, 0) 0%, rgba(30, 115, 190, 0.5) 50%, rgba(30, 115, 190, 0) 100%);
}

body {
	background: linear-gradient(180deg, rgba(204, 218, 232, 1) 200px, rgb(243 243 243) 300px);
	background-repeat: no-repeat;
	background-color: var(--background-color);
}

/* Back-to-top button: Foundation provides the shape; the child controls interaction. */
.to-top {
	pointer-events: none;
	visibility: hidden;
	background: var(--light, #fff);
	transition:
		transform var(--standard-transition, 180ms ease),
		opacity var(--standard-transition, 180ms ease),
		visibility var(--standard-transition, 180ms ease),
		box-shadow var(--standard-transition, 180ms ease);
}

.to-top.is-visible {
	pointer-events: auto;
	visibility: visible;
}

.to-top.is-visible:hover,
.to-top.is-visible:focus-visible {
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.22);
	outline: 2px solid var(--primary-color);
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.to-top {
		transition-duration: 0.01ms;
	}
}

body .wrapper {
	/*padding-top: calc(var(--header-height) + 8px);*/
	/*padding-top: 108px;*/
}

/*Strong*/
strong,
strong * {
	font-weight: 700;
}

/*Kurv*/
.kurv .menu-label {
	display: none;
}

/* WooCommerce layout */
.woocommerce .site-main {
	min-height: 60vh;
	/*padding-top: var(--header-height)*/
}

.woocommerce .woocommerce-breadcrumb,
.woocommerce .woocommerce-notices-wrapper,
.woocommerce .woocommerce-products-header,
.woocommerce .site-main > .product,
.woocommerce .site-main > .products,
.woocommerce .site-main > .woocommerce-result-count,
.woocommerce .site-main > .woocommerce-ordering,
.woocommerce .site-main > nav.woocommerce-pagination {
	width: var(--wide-width);
	margin-right: auto;
	margin-left: auto;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb a {
	color: var(--secondary-color);
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb a:hover {
	text-decoration: none;
}

.wd-shop-filters-checkbox-wrapper--backlink {
	display: none;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product .out-of-stock {
	color: var(--text-color);
	font-weight: bold;
}

.wd-shop-sort select {
	cursor: pointer;
	padding: 1.2rem 1.8rem;
}

.single-product .site-main > .product {
	width: min(var(--wide-width, 1400px), calc(100% - clamp(40px, 8vw, 96px)));
	max-width: var(--wide-width, 1400px);
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	grid-template-areas:
		"gallery summary"
		"details details";
	column-gap: 80px;
	row-gap: clamp(32px, 6vw, 96px);
}

.single-product .site-main > .product .woocommerce-product-gallery {
	grid-area: gallery;
	width: 100%;
	float: none;
}

.single-product .site-main > .product .summary {
	grid-area: summary;
	width: 100%;
	margin: 0;
	float: none;
}

.single-product .site-main > .product .woocommerce-tabs,
.single-product .site-main > .product .related,
.single-product .site-main > .product .upsells {
	grid-area: details;
	width: 100%;
	clear: both;
}

@media (max-width: 900px) {
	.single-product .site-main > .product {
		width: min(90%, 1200px);
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"gallery"
			"summary"
			"details";
	}
}

.produkt-kontakt-wrapper {
	width: 100%;
	margin-top: 1rem;
	padding: 20px;
	background: var(--surface-color, #f4f4f4);
	box-shadow: var(--shadowlevel-1);
	border-radius: 12px;
}

.produkt-kontakt-wrapper h2 {
	margin-bottom: 1.5rem;
	font-size: 20px;
	line-height: 1.3;
}

.produkt-kontakt-wrapper .wd-button,
.produkt-kontakt-wrapper .wpcf7-submit {
	width: 100%;
	justify-content: center;
}

/* Shop mega menu */
.main-header {
	position: relative;
}

.wd-shop-megamenu-trigger a {
	font-weight: bold;
}

.wd-shop-megamenu {
	position: static;
	max-height: 0;
	overflow: hidden;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-8px);
	background: transparent;
	color: var(--text-color, #222);
	border-top: 0;
	/*box-shadow: inset 0 1px 0 var(--separator, #ddd),
		var(--shadowlevel-2, 0 8px 24px rgb(0 0 0 / 15%));*/
	transition: max-height var(--standard-transition, 180ms ease),
		opacity var(--standard-transition, 180ms ease),
		transform var(--standard-transition, 180ms ease),
		visibility var(--standard-transition, 180ms ease);
}

.wd-shop-megamenu .menu-item-has-children > a {
	font-weight: bold;
}

.wd-shop-megamenu.is-open {
	max-height: calc(100vh - 32px);
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.wd-shop-megamenu-inner {
	width: calc(100% - (var(--header-content-gutter, 32px) * 2));
	max-width: var(--wide-width);
	max-height: calc(100vh - var(--header-height) - 32px);
	margin: 0 auto;
	padding: 28px 0 10px;
	box-sizing: border-box;
	overflow-y: auto;
}

.wd-shop-megamenu-menu,
.wd-shop-megamenu-menu .sub-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.wd-shop-megamenu-menu {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: center;
	gap: 0;
	align-items: stretch;
}

.wd-shop-megamenu-menu > .menu-item {
	flex: 1 1 max-content;
	min-width: 170px;
	max-width: none;
	margin: 0;
	padding: 0 24px;
	border-right: 1px solid var(--separator, #ddd);
	font-weight: 700;
}

.wd-shop-megamenu-menu > .menu-item:first-child {
	padding-left: 0;
}

.wd-shop-megamenu-menu > .menu-item:last-child {
	padding-right: 0;
	border-right: 0;
}

.wd-shop-megamenu-menu .sub-menu {
	margin-top: 10px;
	font-size: 14px;
	font-weight: 400;
}

.wd-shop-megamenu-menu .sub-menu .sub-menu {
	margin: 4px 0 8px 14px;
}

.wd-shop-megamenu-menu li {
	margin: 0 0 7px;
}

.wd-shop-megamenu-menu a {
	color: inherit;
	text-decoration: none;
	padding-left: 0 !important;
}

.wd-shop-megamenu-menu a:hover,
.wd-shop-megamenu-menu a:focus-visible {
	color: var(--accent-color, currentColor);
	text-decoration: underline;
}

.wd-shop-megamenu-menu .sub-menu li a {
	font-size: 14px;
}

@media (max-width: 1189px), (hover: none) {
	.wd-shop-megamenu {
		display: none;
	}
}

@media (min-width: 1190px) and (hover: hover) {
	/* The Shop link uses the dedicated mega menu, not its normal dropdown. */
	body.sometimes-burger .main-header-menu > .wd-shop-megamenu-trigger > .sub-menu,
	body.sometimes-burger .main-header-menu > .wd-shop-megamenu-trigger:hover > .sub-menu {
		display: none !important;
	}

	/* Override Foundation's global desktop rule that hides all submenus. */
	body.sometimes-burger .wd-shop-megamenu .sub-menu,
	body.sometimes-burger .wd-shop-megamenu .menu-item-has-children:hover > .sub-menu {
		position: static;
		display: block;
		width: auto;
		min-width: 0;
		max-height: none;
		overflow: visible;
		background: transparent;
		box-shadow: none;
		pointer-events: auto;
	}
}

/* WooCommerce product archives */
.post-type-archive-product .site-main,
.tax-product_cat .site-main,
.tax-product_tag .site-main {
	padding-right: 5%;
	padding-left: 5%;
}

.woocommerce div.product form.cart .variations select {
	background-color: var(--light);
	padding: 8px 12px;
}

.woocommerce .woocommerce-products-header {
	margin-bottom: 32px;
}

.woocommerce .woocommerce-products-header h1 {
	margin-bottom: 20px;
	font-size: clamp(28px, 3vw, 40px);
	text-align: left;
}

.woocommerce .wd-shop-filters {
	padding: 0;
	margin: 40px auto;
	background: transparent;
	box-shadow: none;
	max-width: var(--wide-width);
}

.woocommerce ul.products[class*="columns-"] {
	width: min(100%, var(--wide-width, 1440px));
	margin-right: auto;
	margin-left: auto;
}

.woocommerce ul.products li.product {
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
}

/* WooCommerce still applies percentage widths intended for its old float layout. */
.woocommerce ul.products:not(.reservedele-wrapper) > li.product {
	float: none !important;
	width: 100% !important;
	min-width: 0;
	margin: 0 !important;
	box-sizing: border-box;
}

.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link {
	display: flex;
	flex: 1;
	min-width: 0;
	flex-direction: column;
	color: inherit;
	text-decoration: none;
}

.woocommerce ul.products li.product a img {
	width: 100%;
	height: 250px;
	margin-bottom: 16px;
	object-fit: cover;
	border-radius: 12px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	padding: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
}

.woocommerce ul.products li.product .price {
	margin-top: auto;
	color: inherit;
	font-weight: 700;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    color: var(--text-color);
}

.single-product .woocommerce-Price-amount bdi,
.single-product .woocommerce-Price-amount .woocommerce-Price-currencySymbol {
	font-weight: bold;
}

.woocommerce ul.products li.product .button {
	margin-top: 12px;
	background: var(--accent-color, #222);
	color: var(--accent-text-color, #fff);
	border-radius: 999px;
	text-align: center;
}

.woocommerce ul.products li.product .button {
    border-radius: 40px;
    height: 36px;
    padding: 0px 24px;
    display: inline-flex;
    gap: 6px;
    align-items: center;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    text-decoration: none;
    color: var(--light);
    text-transform: none;
    background: var(--secondary-color);
    border: 2px solid var(--secondary-color);
    transition: background-color var(--standard-transition), border-color var(--standard-transition);
    width: fit-content;
}

.filter-list {
	max-height: 70vh;
	margin: 0;
	overflow: auto;
	list-style: none;
}

.filter-list li {
	margin: 0;
}

.filter-list a {
	display: block;
	padding: 10px 20px;
	color: inherit;
	font-size: 15px;
	font-weight: 400;
	text-decoration: none;
}

.filter-list a:hover {
	background: var(--surface-color, #eee);
}

body.term-reservedele-og-tilbehoer .wd-shop-filters {
	display: none;
}

.wd-category-search {
	display: flex;
	width: min(100%, var(--wide-width, 1440px));
	margin: 0 auto 20px;
}

.wd-category-search input {
	flex: 1;
	min-width: 0;
	padding: 10px 16px;
	border: 1px solid var(--separator, #ccc);
	border-radius: 8px 0 0 8px;
}

.wd-category-search button {
	padding: 10px 18px;
	background: var(--accent-color, #222);
	color: var(--accent-text-color, #fff);
	border: 0;
	border-radius: 0 8px 8px 0;
	cursor: pointer;
}

body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper > li.product[data-found="false"] {
	display: none !important;
}

/* Reservedele og Tilbehør archive table. */
body.term-reservedele-og-tilbehoer .reservedels-scroll {
	--parts-table-columns: 130px minmax(300px, 2.4fr) minmax(230px, 1.8fr) 130px 145px 170px 40px;
	width: min(100%, var(--wide-width, 1440px));
	margin: 0 auto;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

body.term-reservedele-og-tilbehoer .reservedele-header,
body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper > li.product {
	display: grid !important;
	min-width: 1180px;
	grid-template-columns: var(--parts-table-columns);
	gap: 14px;
	box-sizing: border-box;
}

body.term-reservedele-og-tilbehoer .reservedele-header {
	padding: 0 12px 10px;
	align-items: end;
	border-bottom: 1px solid var(--separator, #b8b8b8);
	font-weight: 700;
}

body.term-reservedele-og-tilbehoer .reservedele-header p,
body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper,
body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper p {
	margin: 0;
}

body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper {
	display: block !important;
	min-width: 1180px;
	padding: 0;
}

body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper > li.product {
	position: relative;
	width: 100% !important;
	max-height: 62px;
	min-height: 62px;
	margin: 0 !important;
	padding: 12px;
	align-items: start;
	overflow: hidden;
	border-bottom: 1px solid var(--separator, #b8b8b8);
	transition:
		max-height var(--standard-transition),
		background-color var(--standard-transition);
}

body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper > li.product:hover {
	background: color-mix(in srgb, var(--secondary-color) 5%, transparent);
}

body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper > li.product.is-open {
	max-height: 700px !important;
	background: color-mix(in srgb, var(--secondary-color) 8%, transparent);
}

body.term-reservedele-og-tilbehoer .reservedel-description,
body.term-reservedele-og-tilbehoer .reservedel-compatible-products {
	min-width: 0;
}

body.term-reservedele-og-tilbehoer .reservedel-description p:not(:last-child) {
	margin-bottom: 0.75em;
}

body.term-reservedele-og-tilbehoer .reservedel-compatible-products {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

body.term-reservedele-og-tilbehoer .reservedel-compatible-products a {
	color: var(--text-color);
	font-weight: 500;
	text-decoration-color: var(--secondary-color);
	text-underline-offset: 3px;
}

body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper > li.product .price {
	margin: 0;
	color: inherit;
	font-size: inherit;
	font-weight: 700;
}

body.term-reservedele-og-tilbehoer .quantity-wrapper {
	display: inline-flex;
	height: 32px;
	align-items: stretch;
}

body.term-reservedele-og-tilbehoer .quantity-wrapper button,
body.term-reservedele-og-tilbehoer .quantity-wrapper input.qty {
	width: 34px;
	height: 32px;
	min-height: 32px;
	margin: 0;
	padding: 0;
	border: 1px solid #b2b2be;
	border-radius: 0;
	background: #fff;
	color: var(--text-color);
	line-height: 30px;
	text-align: center;
}

body.term-reservedele-og-tilbehoer .quantity-wrapper button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

body.term-reservedele-og-tilbehoer .quantity-wrapper button:first-child {
	border-radius: 16px 0 0 16px;
}

body.term-reservedele-og-tilbehoer .quantity-wrapper button:last-child {
	border-radius: 0 16px 16px 0;
}

body.term-reservedele-og-tilbehoer .quantity-wrapper input.qty {
	border-right: 0;
	border-left: 0;
	-moz-appearance: textfield;
	appearance: textfield;
}

body.term-reservedele-og-tilbehoer .quantity-wrapper input.qty::-webkit-inner-spin-button,
body.term-reservedele-og-tilbehoer .quantity-wrapper input.qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper .reservedel-add-to-cart .button {
	display: inline-flex;
	width: 100%;
	max-width: 160px;
	height: 34px;
	margin: 0;
	padding: 0 16px;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--secondary-color);
	border-radius: 40px;
	background: var(--secondary-color);
	color: var(--text-color);
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
	text-decoration: none;
}

.reservedel-add-to-cart .added_to_cart {
	display: inline-block !important;
	top: -15px !important;
}

body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper .reservedel-add-to-cart .button:hover,
body.term-reservedele-og-tilbehoer ul.products.reservedele-wrapper .reservedel-add-to-cart .button:focus-visible {
	border-color: var(--secondary-color-hover);
	background: var(--secondary-color-hover);
}

body.term-reservedele-og-tilbehoer .reservedel-add-to-cart .added_to_cart {
	display: block;
	margin-top: 5px;
	color: inherit;
	font-size: 13px;
	text-align: center;
}

body.term-reservedele-og-tilbehoer .reservedel-row-toggle {
	display: inline-flex;
	width: 36px;
	height: 36px;
	margin: -2px 0 0;
	padding: 0;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: inherit;
	cursor: pointer;
}

body.term-reservedele-og-tilbehoer .reservedel-row-toggle:hover,
body.term-reservedele-og-tilbehoer .reservedel-row-toggle:focus-visible {
	background: color-mix(in srgb, var(--secondary-color) 20%, transparent);
}

body.term-reservedele-og-tilbehoer .reservedel-row-toggle .wd-icon,
body.term-reservedele-og-tilbehoer .reservedel-row-toggle svg {
	width: 22px;
	height: 22px;
	transition: transform var(--standard-transition);
}

body.term-reservedele-og-tilbehoer li.product.is-open .reservedel-row-toggle .wd-icon,
body.term-reservedele-og-tilbehoer li.product.is-open .reservedel-row-toggle svg {
	transform: rotate(45deg);
}

/* Keep the WooCommerce loader centred; WD Shop's global loader orbits its origin. */
body.term-reservedele-og-tilbehoer .reservedel-add-to-cart .ajax_add_to_cart,
.single-product .single-product-reservedel-cart .ajax_add_to_cart {
	position: relative;
	overflow: hidden;
}

body.term-reservedele-og-tilbehoer .reservedel-add-to-cart .ajax_add_to_cart::before,
.single-product .single-product-reservedel-cart .ajax_add_to_cart::before {
	inset: 0;
	width: auto;
	height: auto;
	border-radius: inherit;
}

body.term-reservedele-og-tilbehoer .reservedel-add-to-cart .ajax_add_to_cart.loading::before,
.single-product .single-product-reservedel-cart .ajax_add_to_cart.loading::before {
	background: color-mix(in srgb, #fff 32%, transparent);
}

body.term-reservedele-og-tilbehoer .reservedel-add-to-cart .ajax_add_to_cart.loading::after,
.single-product .single-product-reservedel-cart .ajax_add_to_cart.loading::after {
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	margin: -10px 0 0 -10px;
	box-sizing: border-box;
	border: 2px solid var(--text-color, #111);
	border-top-color: transparent;
	border-radius: 50%;
	transform: none;
	animation: wdf-parts-spinner 650ms linear infinite;
}

@keyframes wdf-parts-spinner {
	to {
		transform: rotate(360deg);
	}
}

.wd-shop-filters-checkbox-wrapper.is-open .wd-shop-checkboxes,
.wd-shop-filters-checkbox-wrapper:focus-within .wd-shop-checkboxes {
	display: block;
}

.wd-shop-checkboxes {
	width: 260px;
}

.woocommerce span.onsale {
	position: absolute;
    top: 0 !important;
    left: 0 !important;
    display: inline-block;
    background-color: #cd2653;
    color: #fff;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.2;
    padding: 1.5rem;
    text-transform: uppercase;
    z-index: 1;
	border-radius: 0;
	margin: 0 !important;
	min-height: unset;
	min-width: unset;
	max-width: fit-content;
	font-size: 17px;
    padding: 16px;
}

.wd-shop-filters-checkbox-wrapper {
	cursor: pointer;
}

.wd-shop-filters-checkbox-wrapper p {
	width: 260px;
}

@media (max-width: 1280px) {
	.woocommerce ul.products.columns-4 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.woocommerce ul.products.columns-4,
	.woocommerce ul.products.columns-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.woocommerce ul.products.columns-4,
	.woocommerce ul.products.columns-3,
	.woocommerce ul.products.columns-2 {
		grid-template-columns: minmax(0, 1fr);
		max-width: 520px;
	}

	.woocommerce .wd-shop-filters {
		flex-direction: column;
		gap: 12px;
	}

	.woocommerce .wd-shop-filters > * {
		width: 100%;
		max-width: none;
		box-sizing: border-box;
	}

	.woocommerce ul.products:not(.reservedele-wrapper) > li.product .button {
		max-width: 100%;
		white-space: normal;
	}
}

/*Footer*/
footer.site-footer .footer-inner {
	padding: 150px 0px 10px;
}

.site-footer .footer-headline {
	font-size: 24px;
}

.site-footer .footer-headline-wrapper {
	height: auto;
	align-items: flex-start;
}


.site-footer .footer-foot {
	margin-top: 60px;
	padding: 30px 0 40px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	column-gap: clamp(24px, 4vw, 64px);
	row-gap: 24px;
	border-top: 1px solid color-mix(in srgb, currentColor 25%, transparent);
}

.site-footer .footer-foot .footer-links ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px clamp(18px, 2.2vw, var(--small-gap));
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-footer .footer-foot .footer-links ul li {
	margin: 0;
}

.site-footer .footer-foot .footer-links ul li:last-child {
	margin-left: 0;
}

.site-footer .footer-foot .footer-links ul li a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	color: inherit;
	white-space: nowrap;
	transition:
		color var(--standard-transition),
		text-decoration-color var(--standard-transition);
}

.site-footer .footer-foot .footer-links ul li a:hover {
	text-decoration: underline;
}

.site-footer .footer-foot .copyright {
	display: flex;
	justify-content: flex-end;
	margin: 0;
	white-space: nowrap;
}

.site-footer .footer-foot .copyright p {
	margin: 0;
	color: rgb(187, 187, 187);
}

@media (max-width: 1099px) {
	.site-footer .footer-foot {
		grid-template-columns: minmax(0, 1fr);
		margin-top: 48px;
		padding: 28px 0 32px;
	}

	.site-footer .footer-foot .footer-links ul {
		justify-content: center;
	}

	.site-footer .footer-foot .copyright {
		justify-content: center;
	}
}

@media (max-width: 699px) {
	.site-footer .footer-foot {
		margin-top: 40px;
		padding: 24px 0 28px;
		row-gap: 26px;
	}

	.site-footer .footer-foot .footer-links ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px 20px;
	}

	.site-footer .footer-foot .footer-links ul li,
	.site-footer .footer-foot .footer-links ul li a {
		min-width: 0;
	}

	.site-footer .footer-foot .footer-links ul li a {
		justify-content: center;
		white-space: normal;
		text-align: center;
	}

	.site-footer .footer-foot .footer-links ul li:last-child {
		grid-column: 1 / -1;
		justify-self: center;
		margin-top: 4px;
	}

	.site-footer .footer-foot .footer-links ul li:last-child a {
		white-space: nowrap;
	}
}

@media (max-width: 419px) {
	.site-footer .footer-foot .footer-links ul {
		grid-template-columns: minmax(0, 1fr);
	}

	.site-footer .footer-foot .footer-links ul li:last-child {
		grid-column: auto;
	}

	.site-footer .footer-foot .copyright p {
		font-size: 12px;
	}
}

/*Buttons*/
.wd-button,
.wp-block-button .wp-block-button__link,
.btn {
	background-color: var(--secondary-color);
	color: var(--text-color);
	border-radius: 40px;
    height: 36px;
    padding: 0px 24px;
    display: inline-flex;
    gap: 6px;
    align-items: center;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    text-decoration: none;
    color: inherit;
    text-transform: none;
    border: 2px solid var(--secondary-color);
    transition: background-color var(--standard-transition), border-color var(--standard-transition);
}

.wd-button:hover,
.wp-block-button .wp-block-button__link:hover,
.btn:hover {
	background-color: var(--secondary-color-hover);
	border-color: var(--secondary-color-hover);
	text-decoration: none !important;
}

/*Cards*/
.wd-cards-wrapper .wd-card-image-wrapper,
.wd-cards-wrapper .wd-card-image-wrapper .wd-card-image {
	border-radius: var(--wd-card-border-radius) var(--wd-card-border-radius) 0 0;
}

.wd-cards-wrapper .wd-card-image {
    max-height: 200px; 
}

.wd-cards-wrapper .wd-card-content-wrapper .wd-card-title {	
	font-weight: 700;
}

.wd-cards-wrapper .wd-card-content-wrapper .wd-card-button {
	flex-direction: row;
}

.wd-cards-wrapper .wd-card {
	background-color: var(--light);
}

/*Youtube*/
.youtube-wrapper {
	position: relative;
	display: block;
	width: 100%;
	max-width: none;
	aspect-ratio: 16 / 9;
	margin-top: 1rem;
	padding: 0;
	overflow: hidden;
	border-radius: 12px;
}

.youtube-wrapper iframe {
	position: absolute !important;
	inset: 0 !important;
	display: block;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	min-height: 0;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: 12px;
}

.single-product .summary .youtube-wrapper,
.single-product .summary .product_meta .youtube-wrapper {
	width: 100%;
	max-width: none;
	align-self: stretch;
}

/* Gutenberg YouTube embeds (used on the front page). */
.wp-block-embed.wp-has-aspect-ratio {
	width: 100%;
	margin: 40px 0;
	overflow: hidden;
	border-radius: 12px;
}

.wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: inherit;
}

.wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper::before {
	display: none !important;
	padding: 0 !important;
}

.wp-block-embed.wp-has-aspect-ratio iframe {
	position: absolute !important;
	inset: 0 !important;
	display: block;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	border: 0;
	border-radius: inherit;
}

/* Keep the front-page video/image section wide without overflowing smaller screens. */
.home .entry-content > .wp-block-group.alignwide.wdf-width--full:has(.wp-block-embed-youtube) > .wp-block-group__inner-container {
	width: min(1400px, calc(100% - clamp(40px, 8vw, 96px)));
	max-width: 1400px;
	margin-right: auto;
	margin-left: auto;
	box-sizing: border-box;
}

/*Book møde banner*/
.form_book-online-moede .wp-block-button__link {
    height: 87px;
    text-decoration: none;
    padding: 0 40px;
    border-radius: 20px;
    font-size: 30px;
    font-weight: bold;
    gap: 12px;
    box-shadow: var(--shadowlevel-3);
    background-color: var(--secondary-color);
    transition: background-color var(--standard-transition), box-shadow var(--standard-transition);
    border-color: var(--secondary-color);
}

/*Main*/
main.wrapper {
	
}

.wp-block-group:not(.wp-block-group .wp-block-group) {
	padding: 80px 0;
}

.entry-content .wp-block-group:has(.palle-icon-wrapper) {
    & .palle-icon-wrapper {
        & .wp-block-image {
            figure {
                padding: 30px;
                background: linear-gradient(0deg, #ccdae8, var(--background-color));
				border-radius: 12px;
				margin-bottom: 20px;
            }
        }
    }
}

.entry-content .wp-block-group:has(.palle-icon-wrapper) {
    a.wp-block-button__link.wp-element-button {
        font-weight: bold;
        font-size: 18px;
        line-height: normal;
        padding: 10px 20px;
        height: auto;
        letter-spacing: normal;
    }
}

/*Kurv*/
.wd-mini-cart-counter {
	position: absolute;
    top: 50%;
    right: -4px;
    display: inline-block;
    background-color: var(--secondary-color);
    padding: 2px 5px;
    border-radius: 10px;
    font-family: inherit;
    font-size: 10px;
    color: #fff;
    line-height: normal;
    transform: translateY(calc(-50% - 9px));	
}

/* WooCommerce cart page (migrated from Workdigital-theme). */
body.woocommerce-cart {
	--cart-accent: var(--theme-highlight-color, var(--header-active-color, #2ad1fb));
	--cart-accent-hover: var(--theme-highlight-color-hover, color-mix(in srgb, var(--cart-accent), #000 10%));
}

body.woocommerce-cart .site-main,
body.woocommerce-cart .entry-content {
	width: min(var(--wide-width, 1400px), calc(100% - clamp(40px, 8vw, 96px)));
	max-width: var(--wide-width, 1400px);
	margin-right: auto;
	margin-left: auto;
	box-sizing: border-box;
}

body.woocommerce-cart .woocommerce-cart-form table tbody tr {
	border-color: #ccc;
}

body.woocommerce-cart .woocommerce-cart-form table tbody tr .product-thumbnail img {
	width: auto;
	height: 40px;
	object-fit: contain;
}

body.woocommerce-cart .woocommerce-cart-form table td.product-name {
	padding-left: 0.5em;
}

body.woocommerce-cart .woocommerce-cart-form table td.product-name a {
	color: var(--text-color, var(--theme-text-color));
	text-decoration: none;
}

body.woocommerce-cart .woocommerce-cart-form table td.product-name a:hover {
	text-decoration: underline;
}

body.woocommerce-cart .woocommerce-cart-form table input.qty {
	display: flex;
	width: 36px;
	height: 40px;
	padding: 0;
	align-items: center;
	border: 1px solid #ccc;
	border-radius: 40px;
	background: #fff;
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
	text-align: center;
	text-align-last: center;
	-webkit-appearance: none;
	-moz-appearance: textfield;
	appearance: textfield;
}

body.woocommerce-cart .woocommerce-cart-form table input.qty::-webkit-inner-spin-button,
body.woocommerce-cart .woocommerce-cart-form table input.qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

body.woocommerce-cart .shop_table .actions button.button,
body.woocommerce-cart .shipping-calculator-form button.button,
body.woocommerce-cart a.button {
	display: inline-flex !important;
	width: auto;
	height: 36px !important;
	padding: 0 24px !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border: 2px solid var(--secondary-color);
	border-radius: 40px;
	background-color: var(--secondary-color) !important;
	color: var(--text-color) !important;
	font-size: 14px !important;
	font-weight: 500;
	line-height: 20px;
	text-decoration: none;
	text-transform: none;
	transition:
		background-color var(--standard-transition),
		border-color var(--standard-transition);
}

body.woocommerce-cart .shop_table .actions button.button {
	background: transparent;
}

body.woocommerce-cart .shop_table .actions button.button:hover,
body.woocommerce-cart .shipping-calculator-form button.button:hover,
body.woocommerce-cart a.button:hover {
	border-color: var(--secondary-color-hover);
	background-color: var(--secondary-color-hover) !important;
	text-decoration: none;
}

body.woocommerce-cart .wc-proceed-to-checkout {
	display: flex;
	flex-direction: row-reverse;
}

body.woocommerce-cart .cart-beskeder {
	display: flex;
	min-height: 36px;
	flex-direction: column;
	align-items: center;
}

body.woocommerce-cart p.cart-besked {
	position: relative;
	display: inline-flex;
	margin: -40px auto 40px;
	align-items: center;
	text-align: center;
}

body.woocommerce-cart .cart-besked-span {
	position: relative;
	display: inline-block;
	font-style: italic;
}

body.woocommerce-cart .cart-besked-span::after {
	content: "";
	position: absolute;
	right: -5px;
	bottom: -3px;
	left: -5px;
	height: 1px;
	background: var(--cart-accent);
}

body.woocommerce-cart .wd-button--suggest {
	height: 32px;
	margin-left: 14px;
	padding: 0 12px;
	font-style: normal;
}

body.woocommerce-cart .wd-button--suggest:not(:hover) {
	background: transparent;
}

/* Compatible spare parts beside the cart totals. */
body.woocommerce-cart .cart-collaterals {
	display: grid;
	width: 100%;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(28px, 4vw, 64px);
	align-items: start;
}

body.woocommerce-cart .cart-collaterals > .cross-sells {
	grid-column: 1 / -1;
}

body.woocommerce-cart .cart-collaterals > .cart_totals {
	float: none;
	width: 100%;
	grid-column: 2;
	grid-row: 1;
}

body.woocommerce-cart .reservedele-kurv {
	width: 100%;
	min-width: 0;
	grid-column: 1;
	grid-row: 1;
	padding: clamp(20px, 2.5vw, 30px);
	box-sizing: border-box;
	border: 1px solid color-mix(in srgb, var(--separator, #ccc) 75%, transparent);
	border-radius: 14px;
	background: color-mix(in srgb, var(--header-bg-color, #f3f3f3) 45%, #fff);
}

body.woocommerce-cart .reservedele-kurv h3 {
	margin: 0 0 4px;
	font-size: clamp(22px, 2vw, 28px);
	font-weight: 700;
	line-height: 1.2;
}

body.woocommerce-cart .reservedele-kurv > p {
	margin: 0 0 24px;
	color: color-mix(in srgb, var(--text-color) 75%, transparent);
}

body.woocommerce-cart .reservedele-kurv-scroll {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

body.woocommerce-cart .reservedele-gruppe {
	min-width: 680px;
}

body.woocommerce-cart .reservedele-gruppe:not(:last-child) {
	margin-bottom: 30px;
}

body.woocommerce-cart .reservedele-gruppe .res-header {
	margin: 0 0 10px;
	font-weight: 700;
}

body.woocommerce-cart .reservedels-content p,
body.woocommerce-cart .reservedels-beskrivelse p {
	margin: 0;
}

body.woocommerce-cart .reservedels-content {
	display: grid;
	min-width: 680px;
	min-height: 44px;
	padding: 7px 8px;
	box-sizing: border-box;
	grid-template-columns: minmax(90px, 1.4fr) minmax(210px, 3.2fr) minmax(100px, 1.4fr) 148px 36px;
	align-items: center;
	column-gap: 12px;
}

body.woocommerce-cart .reservedels-content--header {
	min-height: 36px;
	padding-top: 0;
	padding-bottom: 5px;
	font-size: 13px;
	font-weight: 700;
}

body.woocommerce-cart .reservedels-wrapper {
	overflow: hidden;
	border-top: 1px solid var(--separator, #ccc);
	transition: background-color var(--standard-transition);
}

body.woocommerce-cart .reservedels-wrapper:last-child {
	border-bottom: 1px solid var(--separator, #ccc);
}

body.woocommerce-cart .reservedels-wrapper:hover,
body.woocommerce-cart .reservedels-wrapper.is-open {
	background: color-mix(in srgb, var(--cart-accent) 8%, transparent);
}

body.woocommerce-cart .reservedels-beskrivelse {
	padding: 10px 8px 16px;
	line-height: 1.55;
}

body.woocommerce-cart .reservedels-beskrivelse[hidden] {
	display: none;
}

body.woocommerce-cart .reservedele-add-to-cart {
	display: inline-flex;
	width: 100%;
	max-width: 148px;
	height: 32px;
	padding: 0 14px;
	box-sizing: border-box;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--cart-accent);
	border-radius: 40px;
	background: var(--cart-accent);
	color: var(--text-color);
	font-size: 13px;
	font-weight: 500;
	line-height: 20px;
	text-decoration: none;
	transition:
		background-color var(--standard-transition),
		border-color var(--standard-transition);
}

body.woocommerce-cart .reservedele-add-to-cart:hover,
body.woocommerce-cart .reservedele-add-to-cart:focus-visible {
	border-color: var(--cart-accent-hover);
	background: var(--cart-accent-hover);
	color: var(--text-color);
	text-decoration: none;
}

body.woocommerce-cart .reservedels-toggle {
	display: flex;
	width: 34px;
	height: 34px;
	margin: 0;
	padding: 0;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: inherit;
	cursor: pointer;
	transition: background-color var(--standard-transition);
}

body.woocommerce-cart .reservedels-toggle:hover,
body.woocommerce-cart .reservedels-toggle:focus-visible {
	background: color-mix(in srgb, var(--cart-accent) 20%, transparent);
}

body.woocommerce-cart .reservedels-toggle .wd-icon,
body.woocommerce-cart .reservedels-toggle svg {
	width: 20px;
	height: 20px;
	transition: transform var(--standard-transition);
}

body.woocommerce-cart .reservedels-wrapper.is-open .reservedels-toggle .wd-icon,
body.woocommerce-cart .reservedels-wrapper.is-open .reservedels-toggle svg {
	transform: rotate(45deg);
}

@media (max-width: 1100px) {
	body.woocommerce-cart .reservedele-kurv {
		grid-column: 1;
		grid-row: 2;
	}

	body.woocommerce-cart .cart-collaterals {
		grid-template-columns: minmax(0, 1fr);
	}

	body.woocommerce-cart .cart-collaterals > .cart_totals {
		grid-column: 1;
		grid-row: 1;
	}
}

@media (max-width: 768px) {
	body.woocommerce-cart .site-main,
	body.woocommerce-cart .entry-content {
		width: min(calc(100% - 24px), 1200px);
	}

	body.woocommerce-cart .wrapper {
		padding-top: 108px;
	}

	body.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive {
		display: block;
		width: 100%;
		border: 0;
		border-spacing: 0;
	}

	body.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tbody {
		display: block;
		width: 100%;
	}

	body.woocommerce-cart .woocommerce-cart-form tr.cart_item {
		position: relative;
		display: grid;
		width: 100%;
		margin-bottom: 18px;
		padding: 18px;
		box-sizing: border-box;
		grid-template-columns: 82px minmax(0, 1fr);
		column-gap: 14px;
		border: 1px solid color-mix(in srgb, var(--separator, #ccc) 80%, transparent);
		border-radius: 14px;
		background: var(--light, #fff);
		box-shadow: var(--shadowlevel-1);
	}

	body.woocommerce-cart .woocommerce-cart-form tr.cart_item td {
		width: 100%;
		box-sizing: border-box;
		border: 0 !important;
		background: transparent !important;
	}

	body.woocommerce-cart .woocommerce-cart-form tr.cart_item td::before {
		float: none;
		font-weight: 700;
		text-align: left;
	}

	body.woocommerce-cart .woocommerce-cart-form tr.cart_item td.product-remove {
		position: absolute;
		top: 12px;
		right: 12px;
		z-index: 1;
		display: grid;
		width: 36px;
		height: 36px;
		padding: 0;
		place-items: center;
		border: 0;
		text-align: center;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-remove::before,
	body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail::before,
	body.woocommerce-cart .woocommerce-cart-form td.product-name::before {
		display: none;
		content: none;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-remove a.remove {
		display: grid;
		width: 34px;
		height: 34px;
		place-items: center;
		border-radius: 50%;
		background: color-mix(in srgb, #c00 8%, transparent);
		font-size: 24px;
		line-height: 1;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail {
		display: block !important;
		width: 82px;
		padding: 0;
		grid-column: 1;
		grid-row: 1;
		border-top: 0;
		text-align: left;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail a {
		display: inline-block;
	}

	body.woocommerce-cart .woocommerce-cart-form table tbody tr .product-thumbnail img {
		display: block;
		width: 82px;
		height: 82px;
		margin: 0;
		border-radius: 10px;
		object-fit: contain;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-name {
		display: flex;
		min-width: 0;
		padding: 0 38px 0 0;
		grid-column: 2;
		grid-row: 1;
		align-items: center;
		border-top: 0;
		font-size: clamp(15px, 4vw, 17px);
		font-weight: 600;
		line-height: 1.35;
		text-align: left;
		overflow-wrap: anywhere;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-name a {
		display: block;
		width: 100%;
		text-decoration: none;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-price,
	body.woocommerce-cart .woocommerce-cart-form td.product-quantity,
	body.woocommerce-cart .woocommerce-cart-form td.product-subtotal {
		display: grid;
		grid-column: 1 / -1;
		grid-template-columns: minmax(90px, auto) minmax(0, 1fr);
		gap: 16px;
		padding: 12px 0;
		align-items: center;
		text-align: right;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-quantity .quantity {
		justify-self: end;
	}

	body.woocommerce-cart .woocommerce-cart-form table input.qty {
		width: 44px;
	}

	body.woocommerce-cart .woocommerce-cart-form tr:not(.cart_item),
	body.woocommerce-cart .woocommerce-cart-form td.actions {
		display: block;
		width: 100%;
	}

	body.woocommerce-cart .woocommerce-cart-form td.actions {
		padding: 0;
		border: 0;
		background: transparent;
	}

	body.woocommerce-cart .woocommerce-cart-form td.actions button.button {
		display: flex !important;
		width: 100%;
		height: auto !important;
		min-height: 44px;
		margin: 0;
		padding: 8px 18px !important;
		box-sizing: border-box;
		white-space: normal;
		text-align: center;
	}

	body.woocommerce-cart .cart-collaterals {
		gap: 24px;
	}

	body.woocommerce-cart .cart-collaterals > .cart_totals {
		padding: 20px;
		box-sizing: border-box;
		border: 1px solid color-mix(in srgb, var(--separator, #ccc) 80%, transparent);
		border-radius: 14px;
		background: var(--light, #fff);
		box-shadow: var(--shadowlevel-1);
	}

	body.woocommerce-cart .cart_totals h2 {
		margin: 0 0 16px;
		font-size: clamp(24px, 7vw, 32px);
		line-height: 1.2;
	}

	body.woocommerce-cart .cart_totals table.shop_table {
		margin-bottom: 18px;
	}

	body.woocommerce-cart .cart_totals table.shop_table tr {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 16px;
		align-items: start;
	}

	body.woocommerce-cart .cart_totals table.shop_table th,
	body.woocommerce-cart .cart_totals table.shop_table td {
		display: block;
		width: auto;
		padding: 12px 0;
		box-sizing: border-box;
		background: transparent !important;
		text-align: right;
	}

	body.woocommerce-cart .cart_totals table.shop_table th {
		text-align: left;
	}

	body.woocommerce-cart .cart_totals table.shop_table td::before {
		display: none;
		content: none;
	}

	body.woocommerce-cart .wc-proceed-to-checkout {
		display: block;
		padding-bottom: 0;
	}

	body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
		display: flex !important;
		width: 100%;
		height: auto !important;
		min-height: 44px;
		padding: 8px 18px !important;
		box-sizing: border-box;
		white-space: normal;
		text-align: center;
	}

	body.woocommerce-cart .reservedele-kurv {
		padding: 18px;
	}

	body.woocommerce-cart p.cart-besked {
		margin-top: 0;
		flex-wrap: wrap;
		justify-content: center;
		gap: 10px;
	}

	body.woocommerce-cart .wd-button--suggest {
		margin-left: 0;
	}
}

/* WooCommerce checkout page migrated from Workdigital-theme. */
body.woocommerce-checkout {
	--checkout-accent: var(--secondary-color, var(--theme-highlight-color, #2ad1fb));
	--checkout-accent-hover: var(--secondary-color-hover, color-mix(in srgb, var(--checkout-accent), #000 10%));
	--checkout-field-background: #fff;
}

body.woocommerce-checkout .site-main {
	width: min(var(--wide-width, 1400px), calc(100% - clamp(40px, 8vw, 96px)));
	max-width: var(--wide-width, 1400px);
	margin-right: auto;
	margin-left: auto;
	padding-top: 80px;
	padding-bottom: 80px;
	box-sizing: border-box;
}

body.woocommerce-checkout .entry-content {
	width: min(var(--wide-width, 1400px), calc(100% - clamp(40px, 8vw, 96px)));
	max-width: var(--wide-width, 1400px);
	margin-right: auto;
	margin-left: auto;
	box-sizing: border-box;
}

body.woocommerce-checkout form.checkout {
	display: grid;
	width: 100%;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	grid-template-areas: "customer review";
	align-items: start;
	margin: 0 auto;
	box-sizing: border-box;
}

body.woocommerce-checkout #customer_details {
	grid-area: customer;
	width: 100%;
}

body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
	float: none;
	width: calc(100% - 18px);
}

body.woocommerce-checkout #order_review_heading {
	grid-area: review;
	align-self: start;
	margin: 0 0 24px;
	z-index: 1;
}

body.woocommerce-checkout #order_review {
	grid-area: review;
	align-self: start;
	width: 100%;
	margin-top: 92px;
}

body.woocommerce-checkout form .form-row {
	position: relative;
	margin-bottom: 24px;
}

body.woocommerce-checkout .form-row > label:not(.checkbox):not(.woocommerce-form__label-for-checkbox),
body.woocommerce-checkout .form-row > label.screen-reader-text {
	position: absolute !important;
	top: -10px;
	left: 13px;
	z-index: 2;
	clip: initial;
	clip-path: initial;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0 6px;
	overflow: visible;
	background: linear-gradient(0deg, #fff 0%, #fff 50%, var(--background-color) 50%, var(--background-color) 100%);
	font-size: 12px;
	line-height: 16px;
	word-break: normal;
}

body.woocommerce-checkout form .form-row input.input-text,
body.woocommerce-checkout form .form-row textarea,
body.woocommerce-checkout form .form-row select,
body.woocommerce-checkout .select2-container--default .select2-selection--single {
	width: 100%;
	min-height: 40px;
	padding: 12px;
	border: 1px solid #79747e;
	border-radius: 4px;
	background: var(--checkout-field-background);
	color: var(--text-color);
	font: inherit;
}

body.woocommerce-checkout form .form-row textarea {
	min-height: 120px;
	resize: vertical;
}

body.woocommerce-checkout .select2-container {
	width: 100% !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single {
	display: flex;
	align-items: center;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	padding: 0 30px 0 0;
	color: inherit;
	line-height: normal;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
}

body.woocommerce-checkout select#finansiering {
	padding: 10px 18px;
}

body.woocommerce-checkout .woocommerce-invalid input.input-text,
body.woocommerce-checkout .woocommerce-invalid select,
body.woocommerce-checkout .woocommerce-invalid .select2-selection {
	border-color: #b81c23;
}

body.woocommerce-checkout .form_field_error {
	top: 3px;
	right: 6px;
	z-index: 3;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .woocommerce-table--order-details {
	width: 100%;
	border-collapse: collapse;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td,
body.woocommerce-checkout .woocommerce-table--order-details th,
body.woocommerce-checkout .woocommerce-table--order-details td {
	padding: 14px 12px;
	border-bottom: 1px solid var(--separator, #ddd);
}

body.woocommerce-checkout .woocommerce-table--order-details .product-name a,
body.woocommerce-checkout .shipping-calculator-button {
	color: inherit;
}

body.woocommerce-checkout #payment {
	margin-top: 24px;
	border-radius: 12px;
	background: transparent;
	overflow: hidden;
}

body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment .form-row.place-order {
	margin: 0;
	padding: 24px;
}

body.woocommerce-checkout #payment ul.payment_methods {
	list-style: none;
}

body.woocommerce-checkout #payment .payment_box {
	margin-top: 14px;
	padding: 16px;
	border-radius: 8px;
	background: var(--checkout-field-background);
}

body.woocommerce-checkout #payment .form-row.place-order {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

body.woocommerce-checkout .form-row.place-order #place_order,
body.woocommerce-checkout .checkout_coupon button.button,
body.woocommerce-checkout .woocommerce-form-login button.button {
	display: inline-flex;
	width: auto;
	height: 56px;
	padding: 0 44px;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border: 2px solid var(--checkout-accent);
	border-radius: 40px;
	background: var(--checkout-accent);
	color: var(--text-color);
	font-size: 24px;
	font-weight: 500;
	line-height: 20px;
	letter-spacing: normal;
	text-decoration: none;
	text-transform: none;
	cursor: pointer;
	transition:
		background-color var(--standard-transition),
		border-color var(--standard-transition);
}

body.woocommerce-checkout .form-row.place-order #place_order {
	margin: 24px 0 0 auto;
}

body.woocommerce-checkout .checkout_coupon button.button,
body.woocommerce-checkout .woocommerce-form-login button.button {
	height: 40px;
	padding: 0 24px;
	font-size: 14px;
}

body.woocommerce-checkout .form-row.place-order #place_order:hover,
body.woocommerce-checkout .form-row.place-order #place_order:focus-visible,
body.woocommerce-checkout .checkout_coupon button.button:hover,
body.woocommerce-checkout .woocommerce-form-login button.button:hover {
	border-color: var(--checkout-accent-hover);
	background: var(--checkout-accent-hover);
	text-decoration: none;
}

body.woocommerce-checkout .woocommerce-order {
	width: 100%;
}

@media (max-width: 900px) {
	body.woocommerce-checkout .site-main {
		width: min(calc(100% - 24px), 1200px);
		padding-top: 40px;
		padding-bottom: 40px;
	}

	body.woocommerce-checkout .entry-content {
		width: min(calc(100% - 24px), 1200px);
	}

	body.woocommerce-checkout form.checkout {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"customer"
			"review-heading"
			"review";
	}

	body.woocommerce-checkout #order_review_heading {
		grid-area: review-heading;
	}

	body.woocommerce-checkout #order_review {
		grid-area: review;
		margin-top: 0;
	}

	body.woocommerce-checkout #customer_details .col-1,
	body.woocommerce-checkout #customer_details .col-2 {
		width: 100%;
	}

	body.woocommerce-checkout #order_review_heading {
		margin-top: 32px;
	}
}

@media (max-width: 600px) {
	body.woocommerce-checkout .form-row.place-order #place_order {
		width: 100%;
		padding-right: 24px;
		padding-left: 24px;
		font-size: 20px;
	}
}

/* Single-product pages migrated from Workdigital-theme. */
.single-product {
	--product-accent: var(--theme-highlight-color, var(--header-active-color, #2ad1fb));
	--product-accent-hover: var(--theme-highlight-color-hover, color-mix(in srgb, var(--product-accent), #000 10%));
}

.single-product .site-main > .product:has(> .custom-product-info) {
	grid-template-areas:
		"gallery summary"
		"tabs summary"
		"details details";
	row-gap: 40px;
}

.single-product .tilbage-wrapper {
	width: min(var(--wide-width, 1400px), calc(100% - clamp(40px, 8vw, 96px)));
	max-width: var(--wide-width, 1400px);
	margin: 40px auto 24px;
	box-sizing: border-box;
}

.single-product .tilbage-wrapper .back-btn {
	display: inline-flex;
	width: auto;
	max-width: 100%;
	box-sizing: border-box;
	cursor: pointer;
}

.single-product .woocommerce-breadcrumb {
	width: min(var(--wide-width, 1400px), calc(100% - clamp(40px, 8vw, 96px)));
	max-width: var(--wide-width, 1400px);
	box-sizing: border-box;
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.single-product .woocommerce-breadcrumb a {
	white-space: normal;
}

.single-product .woocommerce-product-gallery {
	min-width: 0;
	margin: 0;
}

.single-product .woocommerce-product-gallery__trigger {
	display: none;
}

.single-product .woocommerce-product-gallery__wrapper {
	/* FlexSlider sets this to the combined width of every slide. */
	max-width: none;
}

.single-product .woocommerce-product-gallery__image {
	width: 100%;
	max-width: 100%;
}

body.single-product .site-main > .product .woocommerce-product-gallery__image img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	max-height: none;
	margin: auto;
	border-radius: 10px;
	object-fit: contain;
	object-position: center;
}

.single-product.simpelt-produkt-wrapper .woocommerce-product-gallery__wrapper > div {
	position: relative;
	width: 100%;
	height: auto;
	overflow: hidden;
	border-radius: 10px;
	background: var(--background-color, #fff);
}

.single-product .flex-control-nav.flex-control-thumbs {
	display: flex;
	flex-wrap: wrap;
	margin: 25px 0 0 !important;
	padding: 0;
	justify-content: flex-start;
	gap: 8px;
	overflow: visible;
	list-style: none;
}

.single-product .flex-control-nav.flex-control-thumbs li {
	flex: 0 0 80px;
	width: 80px;
	margin: 0;
	clear: none;
}

.single-product .flex-control-nav.flex-control-thumbs img {
	display: block;
	width: 80px;
	height: 80px;
	border-radius: 10px;
	object-fit: cover;
	opacity: 0.5;
	cursor: pointer;
	transition: opacity 180ms ease;
	-webkit-user-drag: none;
}

.single-product .flex-control-nav.flex-control-thumbs img:hover,
.single-product .flex-control-nav.flex-control-thumbs img:focus-visible,
.single-product .flex-control-nav.flex-control-thumbs img.flex-active {
	opacity: 1;
}

.single-product .summary.entry-summary {
	display: flex;
	min-width: 0;
	height: 100%;
	flex-direction: column;
	justify-content: flex-start;
}

.single-product .summary .product_title {
	margin-bottom: 12px;
}

.single-product .woocommerce-product-details__short-description > :first-child {
	margin-top: 0;
}

.single-product .woocommerce-product-details__short-description > :last-child {
	margin-bottom: 0;
}

.single-product .woocommerce-product-details__short-description h1,
.single-product .woocommerce-product-details__short-description h2,
.single-product .woocommerce-product-details__short-description h3 {
	font-size: var(--sub-heading-size, 24px);
	line-height: var(--sub-heading-line-height, 1.3);
}

.single-product .woocommerce-product-details__short-description a:not([class*="button"]) {
	color: inherit;
	text-decoration: underline;
	transition: color var(--standard-transition);
}

.single-product .woocommerce-product-details__short-description a:not([class*="button"]):hover {
	color: #555;
}

.woocommerce-product-details__short-description * {
	margin-bottom: 22px;
}

.woocommerce-product-details__short-description *:last-child {
	margin-bottom: 0;
}

.single-product .summary p.price:not(:empty) {
	margin: 12px 0 6px;
	font-size: var(--heading-size, 32px);
	line-height: var(--heading-line-height, 1.2);
	text-align: right;
}

.single-product .summary p.price + .stock,
.single-product .summary p.price:empty {
	display: none;
}

.single-product .summary.entry-summary .product_meta {
	clear: both;
	margin-top: 0;
	padding-top: 0;
	font-size: inherit;
}

.single-product .summary.entry-summary .product_meta .posted_in,
.single-product .summary.entry-summary .product_meta .tagged_as {
	display: none;
}

.single-product .additional-description em {
	font-size: 26px;
	font-style: normal;
	letter-spacing: -0.24px;
	line-height: 40px;
}

.single-product .additional-description > p {
	margin-bottom: 6px;
}

.single-product .additional-description .wpcf7,
.single-product .additional-description .wpcf7 .produktformular > p {
	margin: 0;
}

.single-product .additional-description .wpcf7 .produktformular {
	margin-bottom: 6px;
}

.single-product .summary form.cart {
	display: flex;
	gap: 8px;
}

.single-product .summary .variations_form {
	flex-direction: column;
	gap: 8px;
}

.single-product .summary form.cart .quantity {
	float: none;
	margin: 0 0 0 auto;
}

.single-product .summary form.cart .quantity input.qty {
	display: flex;
	width: 36px;
	height: 40px;
	padding: 0;
	align-items: center;
	border: 1px solid #ccc;
	border-radius: 40px;
	background: #fff;
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
	text-align: center;
}

.single-product input[type="number"]::-webkit-inner-spin-button,
.single-product input[type="number"]::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.single-product .summary form.cart .single_add_to_cart_button {
	display: inline-flex;
	height: 40px;
	padding: 0 24px 0 44px;
	align-items: center;
	gap: 6px;
	border: 2px solid var(--product-accent);
	border-radius: 40px;
	background-color: var(--product-accent);
	background-image: url("/wp-content/uploads/2023/08/cart.svg");
	background-position: center left 16px;
	background-repeat: no-repeat;
	background-size: 20px 20px;
	color: var(--text-color, var(--theme-text-color));
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
	text-transform: none;
	transition:
		background-color var(--standard-transition),
		border-color var(--standard-transition);
}

.btn--from-shortcode {
	margin-top: 22px;
}

.single-product .summary form.cart .single_add_to_cart_button:hover {
	border-color: var(--product-accent-hover);
	background-color: var(--product-accent-hover);
	text-decoration: none;
}

.single-product .product-type-variable > .summary > .price {
	display: none;
}

.single-product .woocommerce-variation-price .price {
	display: block;
	font-weight: 700;
}

.single-product .woocommerce-variation-price {
	margin: 10px 0;
	padding: 10px 0;
	border-top: 1px solid rgb(144 125 125);
	border-bottom: 1px solid rgb(144 125 125);
}

.single-product .variations_button {
	display: flex;
	gap: 8px;
}

.single-product .variations {
	margin: 0;
	border: 0;
}

.single-product .variations tbody,
.single-product .variations tr,
.single-product .variations td,
.single-product .variations th {
	padding: 0;
	border: 0;
}

.single-product .variations tr {
	display: flex;
	flex-direction: column;
}

.single-product .variations label {
	margin-bottom: 6px;
	padding: 0;
}

.single-product .variations .reset_variations {
	display: none;
}

.single-product .product-type-variable select {
	width: 100%;
	height: 40px;
}

.single-product.simpelt-produkt-wrapper .woocommerce-product-details__short-description,
.single-product.simpelt-produkt-wrapper .summary p.price:not(:empty),
.single-product.simpelt-produkt-wrapper .summary form.cart,
.single-product.simpelt-produkt-wrapper .out-of-stock--description {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgb(144 125 125);
}

.single-product.simpelt-produkt-wrapper .woocommerce-product-details__short-description {
	border-bottom-style: dotted;
}

.single-product.simpelt-produkt-wrapper .summary p.price:not(:empty) {
	margin-top: 0;
	font-size: var(--body-font-size, 16px);
	font-weight: 700;
	line-height: 1.5;
	text-align: left;
}

.single-product.simpelt-produkt-wrapper .summary form.cart .quantity {
	margin: 0;
}

.single-product.simpelt-produkt-wrapper .summary form.cart .quantity input.qty {
	width: 60px;
}

.single-product.simpelt-produkt-wrapper .summary form.cart .single_add_to_cart_button {
	display: block;
	width: 100%;
	padding-left: 24px;
	background-image: none;
	color: #fff;
}

.single-product.simpelt-produkt-wrapper .additional-description > p {
	margin-bottom: 0;
}

.single-product.simpelt-produkt-wrapper .additional-description em {
	font-size: var(--body-font-size, 16px);
	font-weight: 700;
	line-height: 1.5;
	text-align: left;
}

.single-product .custom-product-info {
	display: block;
	min-width: 0;
	margin-top: 10px;
	grid-area: tabs;
}

.single-product .custom-product-info-header {
	display: flex;
	margin: 0 0 24px;
	padding: 0;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
}

.single-product .custom-product-info-header > li {
	margin: 0;
	padding: 8px 12px;
	border: 1px solid transparent;
	border-radius: 12px;
	background: #fff;
	font-size: 14px;
	cursor: pointer;
	transition:
		background-color var(--standard-transition),
		border-color var(--standard-transition),
		color var(--standard-transition);
}

.single-product .custom-product-info-header > li:hover,
.single-product .custom-product-info-header > li:focus-visible {
	border-color: var(--product-accent);
	outline: 0;
}

.single-product .custom-product-info-header > li.tabs-active {
	border-color: var(--product-accent);
	background: var(--product-accent);
	color: #fff;
}

.single-product .custom-product-info-content {
	display: grid;
}

.single-product .custom-product-info-content > div {
	grid-area: 1 / 1;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition: opacity 160ms ease;
}

.single-product .custom-product-info-content div * {
	margin-bottom: 10px;
}

.single-product .custom-product-info-content div *:last-child {
	margin-bottom: 0;
}

.single-product .custom-product-info-content > div.content-active {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

.single-product .product:has(> .custom-product-info) > .woocommerce-tabs {
	display: none;
}

.single-product .woocommerce-tabs {
	margin-top: 60px;
	margin-bottom: 0;
}

.single-product .woocommerce-tabs #tab-description > :not(.alignwide):not(.alignfull) {
	width: min(calc(100% - 40px), 1200px);
	margin-right: auto;
	margin-left: auto;
}

.single-product .product .up-sells {
	width: 100%;
	max-width: var(--wide-width);
	margin-right: auto;
	margin-left: auto;
	margin-top: 60px;
}

.single-product .product .up-sells h2 {
	margin-bottom: 20px;
}

.single-product .product .up-sells img {
	border-radius: 12px;
}

.single-product .product .up-sells .price {
	margin-top: 10px !important;
}

.single-product .product .up-sells .price .woocommerce-Price-amount bdi,
.single-product .product .up-sells .price .woocommerce-Price-amount bdi .woocommerce-Price-currencySymbol {
	font-weight: normal !important;
}

.single-product.simpelt-produkt-wrapper .product .up-sells .product_type_simple,
.single-product.simpelt-produkt-wrapper .product .up-sells .quantity-cart-wrapper,
.single-product.simpelt-produkt-wrapper .product .up-sells .add_to_cart_button,
.single-product.simpelt-produkt-wrapper .product .up-sells .product p {
	display: none;
}

.single-product .production-time-info,
.single-product .delivery-time {
	margin: 8px 0 8px;
}

.single-product .delivery-time.betalingsbetingelser {
	display: flex;
	align-items: baseline;
	gap: 4px;
}

.single-product .betalingsbetingelser strong {
	flex-shrink: 0;
}

.single-product .betalingsbetingelser-tekst {
	min-width: 0;
	flex: 1 1 auto;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.single-product .betalingsbetingelser-tekst.expanded {
	overflow: visible;
	white-space: normal;
}

.single-product .betalingsbetingelser-toggle {
	display: inline-flex;
	width: 1em;
	height: 1em;
	margin-left: 4px;
	padding: 0;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	border: 0;
	background: none;
	cursor: pointer;
}

.single-product .betalingsbetingelser-toggle::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	border: solid var(--product-accent);
	border-width: 0 3px 3px 0;
	transform: rotate(-45deg);
	transition: transform var(--standard-transition);
}

.single-product .betalingsbetingelser-toggle.expanded::before {
	transform: rotate(45deg);
}

.single-product .produkt-kontakt-wrapper {
	margin-top: 1em;
	padding: 10px 20px;
}

.single-product .produkt-kontakt-wrapper .wd-button {
	min-width: 100%;
	flex-direction: row-reverse;
	justify-content: center;
}

.single-product .produkt-kontakt-wrapper h2 {
	margin: 2rem 0 3rem;
	font-size: 20px;
	line-height: normal;
}

.single-product .reservedele-btn {
	margin: 20px 0 10px;
}

.single-product .reservedele-btn a,
.single-product .single-product-reservedel .reservedele-add-to-cart {
	display: inline-flex;
	width: fit-content;
	min-height: 36px;
	padding: 0 20px;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--product-accent);
	border-radius: 40px;
	background: var(--product-accent);
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
	transition:
		background-color var(--standard-transition),
		border-color var(--standard-transition);
}

.single-product .reservedele-btn a:hover,
.single-product .single-product-reservedel .reservedele-add-to-cart:hover {
	border-color: var(--product-accent-hover);
	background: var(--product-accent-hover);
	color: #fff;
}

.single-product .single-product-spare-parts {
	width: var(--wide-width);
	margin: 70px auto 0;
	padding: clamp(20px, 3vw, 34px);
	box-sizing: border-box;
	border: 1px solid color-mix(in srgb, var(--separator, #ccc) 75%, transparent);
	border-radius: 14px;
	background: color-mix(in srgb, var(--background-color, #f3f3f3) 45%, #fff);
}

.single-product .single-product-spare-parts > h2 {
	margin: 0 0 24px;
	font-size: clamp(24px, 2.5vw, 32px);
	line-height: 1.2;
}

.single-product .reservedels-scroll {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.single-product-reservedel-cart a {
	margin-top: 0px !important;
}

.single-product-reservedel-cart .added_to_cart {
	display: inline-block !important;
	top: -15px !important;
}

.single-product .single-product-reservedel-header,
.single-product .single-product-reservedel > li {
	display: grid !important;
	min-width: 980px;
	grid-template-columns: 130px minmax(340px, 1fr) 130px 150px 170px 40px;
	gap: 14px;
	box-sizing: border-box;
	border-bottom: 1px solid var(--separator, #bbb);
	padding: 0 12px 10px !important;
	padding-top: 12px !important;
}

.single-product .single-product-reservedel-header {
	padding: 0 12px 10px;
	align-items: end;
	font-weight: 700;
}

.single-product .single-product-reservedel-header p,
.single-product .single-product-reservedel p,
.single-product .single-product-reservedel-description p {
	margin: 0;
}

.single-product .single-product-reservedel {
	min-width: 980px;
	margin: 0;
	padding: 0;
}

.single-product .single-product-reservedel > li {
	width: 100% !important;
	max-height: 62px;
	min-height: 62px;
	margin: 0;
	padding: 12px;
	align-items: start;
	overflow: hidden;
	transition:
		max-height var(--standard-transition),
		background-color var(--standard-transition);
}

.single-product .single-product-reservedel > li:hover,
.single-product .single-product-reservedel > li.is-open {
	background: color-mix(in srgb, var(--product-accent) 8%, transparent);
}

.single-product .single-product-reservedel > li.is-open {
	max-height: 800px;
}

.single-product .single-product-reservedel-description {
	min-width: 0;
	line-height: 1.55;
}

.single-product .single-product-reservedel-description p:not(:last-child) {
	margin-bottom: 0.75em;
}

.single-product .single-product-reservedel .quantity-wrapper {
	display: inline-flex;
	height: 32px;
	align-items: stretch;
}

.single-product .single-product-reservedel .quantity input {
	width: 34px;
	height: 32px;
	min-height: 32px;
	margin: 0;
	padding: 0;
	border: 1px solid #b2b2be;
	border-right: 0;
	border-left: 0;
	border-radius: 0;
	background: #fff;
	text-align: center;
	-moz-appearance: textfield;
	appearance: textfield;
}

.single-product .single-product-reservedel .quantity input::-webkit-inner-spin-button,
.single-product .single-product-reservedel .quantity input::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.single-product .single-product-reservedel .quantity-wrapper button {
	display: inline-flex;
	width: 32px;
	height: 32px;
	min-height: 32px;
	padding: 0;
	align-items: center;
	justify-content: center;
	border: 1px solid #b2b2be;
	border-radius: 0;
	background: #fff;
	color: var(--text-color);
	cursor: pointer;
}

.single-product .single-product-reservedel .quantity-wrapper button:first-child {
	border-radius: 16px 0 0 16px;
}

.single-product .single-product-reservedel .quantity-wrapper button:last-child {
	border-radius: 0 16px 16px 0;
}

.single-product .single-product-reservedel-cart {
	min-width: 0;
}

.single-product .single-product-reservedel .reservedele-add-to-cart {
	width: 100%;
	max-width: 165px;
	min-height: 34px;
	padding: 0 14px;
	box-sizing: border-box;
	color: var(--text-color);
}

.single-product .single-product-reservedel .reservedele-add-to-cart:hover,
.single-product .single-product-reservedel .reservedele-add-to-cart:focus-visible {
	color: var(--text-color);
}

.single-product .single-product-reservedel-cart .added_to_cart {
	display: block;
	margin-top: 5px;
	color: inherit;
	font-size: 13px;
	text-align: center;
}

.single-product .single-product-reservedel-toggle {
	display: flex;
	width: 36px;
	height: 36px;
	margin: 0;
	padding: 0;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: inherit;
	cursor: pointer;
	transition: background-color var(--standard-transition);
}

.single-product .single-product-reservedel-toggle:hover,
.single-product .single-product-reservedel-toggle:focus-visible {
	background: color-mix(in srgb, var(--product-accent) 20%, transparent);
}

.single-product .single-product-reservedel-toggle .wd-icon,
.single-product .single-product-reservedel-toggle svg {
	width: 22px;
	height: 22px;
	transition: transform var(--standard-transition);
}

.single-product .single-product-reservedel > li.is-open .single-product-reservedel-toggle .wd-icon,
.single-product .single-product-reservedel > li.is-open .single-product-reservedel-toggle svg {
	transform: rotate(45deg);
}

.price ins {
	text-decoration: none;
}

@media (max-width: 900px) {
	.single-product .woocommerce-breadcrumb,
	.single-product .tilbage-wrapper,
	.single-product .site-main > .product,
	.single-product .site-main > .product:has(> .custom-product-info) {
		width: min(calc(100% - 40px), 1200px);
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"gallery"
			"summary"
			"tabs"
			"details";
		column-gap: 0;
		row-gap: 40px;
	}

	.single-product .custom-product-info {
		margin-top: 0;
	}
}

@media (max-width: 600px) {
	.single-product .tilbage-wrapper,
	.single-product .woocommerce-breadcrumb,
	.single-product .site-main > .product,
	.single-product .site-main > .product:has(> .custom-product-info),
	.single-product .single-product-spare-parts {
		width: calc(100% - 24px);
	}

	.single-product .variations_button {
		flex-wrap: wrap;
	}

	.single-product .woocommerce-breadcrumb {
		margin-bottom: 20px;
		font-size: 13px;
	}

	.single-product .tilbage-wrapper {
		margin-top: 20px;
		margin-bottom: 24px;
	}

	.single-product.simpelt-produkt-wrapper .summary form.cart {
		display: grid;
		grid-template-columns: 60px minmax(0, 1fr);
		gap: 8px;
		width: 100%;
		align-items: center;
		box-sizing: border-box;
	}

	.single-product.simpelt-produkt-wrapper .summary form.cart::before,
	.single-product.simpelt-produkt-wrapper .summary form.cart::after {
		display: none !important;
		content: none !important;
	}

	.single-product.simpelt-produkt-wrapper .summary form.cart .quantity {
		grid-column: 1;
		grid-row: 1;
		width: 60px;
		margin: 0;
	}

	.single-product.simpelt-produkt-wrapper .summary form.cart .single_add_to_cart_button {
		display: inline-flex;
		grid-column: 2;
		grid-row: 1;
		width: 100%;
		min-width: 0;
		height: 40px;
		margin: 0;
		padding-right: 14px;
		padding-left: 14px;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		line-height: 1.2;
		white-space: nowrap;
	}

	.single-product .delivery-time.betalingsbetingelser {
		flex-wrap: wrap;
	}
}

/*Højre side elementer*/
.content-right-side-inner {
	width: min(1400px, calc(100% - clamp(40px, 8vw, 96px)));
	max-width: 1400px;
}

.content-right-side .wp-block-group {
	padding: 30px 0 40px !important;
}

/*Kontakt form 7*/

.kontaktform-small-submit .wpcf7-submit {
	font-weight: bold !important;
	width: auto !important;
}

.wp-block-contact-form-7-contact-form-selector {
    background: linear-gradient(0deg, rgb(157 188 220 / 20%), transparent, rgb(157 188 220 / 20%)) #fff;
    box-shadow: var(--shadowlevel-1);
    border-radius: 12px;
    padding: 10px 20px;
    max-width: 440px;
    margin-left: auto;
}

/* Standard Contact Form 7 layouts carried over from Workdigital-theme. */
@media (min-width: 600px) {
    .wp-block-contact-form-7-contact-form-selector .split p {
        display: flex;
        gap: 6px;
        justify-content: space-between;
		flex-wrap: wrap;
    }

    .wp-block-contact-form-7-contact-form-selector .split p label {
        width: 100%;
    }
}

.wp-block-contact-form-7-contact-form-selector .wpcf7 input.wpcf7-form-control.wpcf7-submit {
    display: block;
    width: 100%;
    min-height: 48px;
    margin: 0 0 0 auto;
    padding: 12px 22px;
    font-size: 18px;
}

/* Compact form used inside product descriptions. */
.produktformular > p {
    display: flex;
    align-items: flex-start;
}

.produktformular .wpcf7-form-control-wrap {
    flex: 1 1 auto;
}

.wpcf7 .produktformular input.wpcf7-text {
    max-width: 160px;
    min-height: 40px;
    padding: 8px 24px;
    border: 1px solid var(--secondary-color);
    border-radius: 40px 0 0 40px;
}

.wpcf7 .produktformular input.wpcf7-form-control.wpcf7-submit {
    flex: 0 0 auto;
    width: auto;
    min-height: 40px;
    padding: 0 24px;
    border-radius: 0 40px 40px 0;
    font-size: 14px;
    text-transform: none;
}

.produktformular + .wpcf7-response-output {
    display: none;
}

.produktformular .wpcf7-not-valid-tip {
    padding-left: 24px;
    color: var(--secondary-color-hover);
}

/* Booking and product-contact variants. */
.wpcf7:has(.booking-form) {
    margin: 10px 0;
}

.wp-block-contact-form-7-contact-form-selector:has(.booking-form) {
    width: 100%;
    max-width: 350px !important;
}

.wp-block-contact-form-7-contact-form-selector .booking-form h3 {
    margin: 0 -20px 20px;
}

.woocommerce-tabs #tab-description.entry-content > .wp-block-contact-form-7-contact-form-selector:not(.alignwide):not(.alignfull) .wpcf7 {
    margin: 0;
}

.varekontakt-form .wpcf7-submit,
.produkt-kontakt-wrapper .wpcf7-submit {
    width: 100%;
}

/* Full-width Pallet Refund form. */
.wp-block-contact-form-7-contact-form-selector:has(.pallepant-form) {
    max-width: 100%;
}

.wp-block-contact-form-7-contact-form-selector:has(.pallepant-form) .wpcf7 {
    margin: 15px auto;
}

.wp-block-contact-form-7-contact-form-selector:has(.pallepant-form) .wpcf7 h3 {
    margin-top: 0;
	font-size: 24px;
}

.wp-block-contact-form-7-contact-form-selector:has(.pallepant-form) br {
    display: none;
}

.wp-block-contact-form-7-contact-form-selector:has(.pallepant-form) input.wpcf7-submit {
    font-weight: bold;
    letter-spacing: normal;
}

.wp-block-contact-form-7-contact-form-selector:has(.pallepant-form) .cf7-cf-turnstile {
    margin-bottom: 0 !important;
}

@media (max-width: 599px) {
    .kontaktform-rows {
        grid-template-columns: 1fr;
    }

    .kontaktform-image-row {
        min-height: 220px;
    }

    .kontaktform-image-row img {
        border-radius: 0;
    }

    .kontatkform-form-row {
        border-radius: 0 0 10px 10px;
    }

    .produktformular > p {
        flex-wrap: wrap;
    }

    .produktformular .wpcf7-form-control-wrap,
    .wpcf7 .produktformular input.wpcf7-text,
    .wpcf7 .produktformular input.wpcf7-form-control.wpcf7-submit {
        width: 100%;
        max-width: none;
    }

    .wpcf7 .produktformular input.wpcf7-text {
        border-radius: 20px 20px 0 0;
    }

    .wpcf7 .produktformular input.wpcf7-form-control.wpcf7-submit {
        border-radius: 0 0 20px 20px;
    }
}

/* 
    ——————————
    Styling til standard kontaktformular
    ——————————
*/

.wpcf7{
    max-width: 100%;
    margin: 30px 0;
}

.wp-block-contact-form-7-contact-form-selector {
    border-radius: 10px;
    background: linear-gradient(0deg, rgb(157 188 220 / 20%), transparent, rgb(157 188 220 / 20%)) #fff;
}

.wp-block-contact-form-7-contact-form-selector h3{
    padding: 20px;
    margin: 0;
    display: block;
    text-align: center;
    font-weight: bold;
    border-radius: 10px 10px 0 0;
	font-size: 24px;
}

.kontaktform-rows{
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.kontatkform-form-row{
    position: relative;
    background: linear-gradient(0deg, rgb(157 188 220 / 20%), transparent, rgb(157 188 220 / 20%)) #fff;
    padding: 20px;
    border-radius: 0 0 10px 0;
    color: var(--text-color);
}

.wpcf7 .kontaktform-rows .kontatkform-form-row *{
    color: var(--text-color);
}

.kontatkform-form-row p:last-child{
    margin-bottom: 0;
}

.kontaktform-image-row{
    position: relative;
}

.kontaktform-image-row img{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 0 0 0 10px;
}

.kontatkform-form-row .wpcf7-spinner {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="password"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="date"],
.wpcf7 input[type="month"],
.wpcf7 input[type="time"],
.wpcf7 input[type="datetime"],
.wpcf7 input[type="datetime-local"],
.wpcf7 input[type="week"],
.wpcf7 input[type="number"],
.wpcf7 input[type="search"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="color"],
.wpcf7 select,
.wpcf7 textarea {
    width: 100%;
    max-width: 100%;
    padding: 10px 18px;
    box-sizing: border-box;
}

.kontatkform-form-row textarea {
    height: 9rem;
}

.maps-container {
	height: 550px;
	margin-top: 22px !important;
}

.maps-container iframe{
    border-radius: 0 0 10px 10px;
}

.wp-embed-responsive .wp-has-aspect-ratio iframe {
    width: 100% !important;
    height: 100% !important;
}

.wpcf7-form{
    position: relative;
}

.wpcf7 form:not(.invalid) .wpcf7-response-output:not(:empty) {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgb(0 94 40 / 95%);
    border-radius: 10px;
    border-width: 3px;
    display: grid;
    color: #fff;
    place-items: center;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    font-weight: normal;
    margin: 0;
    z-index: 1;
}

.wpcf7,
.wpcf7 label{
    position: relative;
}

.wpcf7 label,
.wpcf7 .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.wp-block-contact-form-7-contact-form-selector h3 {
    margin: 0 auto 20px;
    padding: 0 0 20px;
    border-bottom: 1px solid #9fbddc;
}

.wpcf7 p {
    margin: 0 auto;
    /* max-width: 300px; */
}

.wpcf7 label {
    margin-bottom: 16px;
}

.wpcf7 *::placeholder{
    color: transparent;
    user-select: none;
    pointer-events: none;
}

.produktformular .wpcf7-text::placeholder{
    color: #aaa
}

.wpcf7 .label-text{
    position: absolute;
    top: 9px;
    z-index: 1;
    left: calc(19px - 0.5ch);
    font-size: 17px;
    transition: transform var(--standard-transition);
    padding: 0 0.5ch;
    pointer-events: none;
}

.wpcf7 label:has(input:not(:placeholder-shown)) .label-text,
.wpcf7 label:has(textarea:not(:placeholder-shown)) .label-text,
.wpcf7 label:focus-within .label-text{
    transform: translateY(-22px);
    background: linear-gradient(0deg, #fff 13px, transparent);
    /* background: linear-gradient(0deg, var(--kontaktformular-inner-bg) 13px, transparent 13px); hvis der er stor farveforskel*/
}

.wpcf7 label input,
.wpcf7 label textarea {
    letter-spacing: normal;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #79747E;
    outline: none;
}

.wpcf7 label textarea {
	height: 120px;
}

.wpcf7 label input:focus,
.wpcf7 label textarea:focus {
    outline: 2px solid #333;
    outline-offset: -2px;
}

.wpcf7-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
    z-index: 1;
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    -webkit-box-shadow: 0 0 0 30px #fff inset !important;
}

.wpcf7 input.wpcf7-form-control.wpcf7-submit {
    min-height: 36px;
    padding: 0 24px;
    border: 2px solid var(--secondary-color);
    border-radius: 40px;
    background: var(--secondary-color);
    color: var(--text-color);
    font: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: normal;
    text-align: center;
    text-transform: none;
    cursor: pointer;
    transition: background-color var(--standard-transition), border-color var(--standard-transition);
	font-weight: bold;
}

.hero-section-inner .wpcf7 input.wpcf7-submit,
.wpcf7 .booking-form input.wpcf7-submit{
    border-radius: 40px;
    padding: 10px 24px;
    display: inline-flex;
    gap: 6px;
    align-items: center;
    font-weight: bold;
    font-size: 17px;
    font-weight: bold;
    text-decoration: none;
    color: inherit;
    text-transform: none;
    background: var(--secondary-color);
    border: 2px solid var(--secondary-color);
    transition: background-color var(--standard-transition), border-color var(--standard-transition);
    width: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    letter-spacing: normal;
    text-transform: uppercase;
}

.wpcf7 input.wpcf7-submit:hover{
    background-color: var(--secondary-color-hover);
    border-color: var(--secondary-color-hover);
    text-decoration: none;
}

.wpcf7-not-valid-tip {
    position: absolute;
    bottom: 1px;
    right: 3px;
    font-size: 0.7em;
}

.wpcf7 form.invalid .wpcf7-response-output {
    border-color: red;
    border-radius: 10px;
    position: absolute;
    bottom: -24px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    background: #ffefef;
    text-align: center;
    margin: 0;
    font-size: 0.8em;
    bottom: -64px;
    box-shadow: var(--shadowlevel-2);
}

.wp-block-contact-form-7-contact-form-selector {
    background: linear-gradient(0deg, rgb(157 188 220 / 20%), transparent, rgb(157 188 220 / 20%)) #fff;
    box-shadow: var(--shadowlevel-1);
    border-radius: 12px;
    padding: 10px 20px;
    max-width: 440px;
    margin-left: auto;
}

.top-sektion {
	background: linear-gradient(0deg, rgba(30, 115, 190, 0) 0%, rgba(30, 115, 190, 0.5) 50%, rgba(30, 115, 190, 0) 100%);
}

.woocommerce-shop .wrapper,
.single-product .wrapper {
	padding-top: 80px;
}

.form-arrow {
	position: relative;
}

.form-arrow img {
	width: fit-content;
	position: absolute;
	right: -55px;
	margin-top: 0px;
	margin-bottom: 0px;
	transform: scale(0.8) scaleY(-1) rotate(40deg);
}

/*List style*/
.square-lst li,
.check li {
  list-style: none;
  position: relative;
  padding-left: 15px;
}

.square-lst li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 7px;
  height: 7px;
  background: #4aa3df;
  transform: rotate(45deg);
}

.check li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #333;
  font-size: 18px;
  font-weight: 600;
}

.wp-block-list {
	margin: 0;
}


/*wd-bottom-cards*/
.wd-bottom-nav-cards-wrapper-inner {
	width: 100%;
}

.wd-bottom-nav-cards {
	max-width: var(--wide-width);
	margin: 0 auto;
}

.wd-cards.wd-cards--employees {
	grid-template-columns: repeat(var(--desktop-columns), minmax(0, 1fr));
}

.wd-cards.wd-cards--employees .wd-card {
	background-color: var(--light);
	border-radius: var(--wd-card-border-radius);
	box-shadow: var(--shadowlevel-1);
}

.wd-cards--employees .wd-card-content-wrapper {
    grid-template-rows: auto auto 1fr auto auto;
	padding: 20px !important;
}

.wd-card-job-title {
	color: var(--text-color) !important;
	font-weight: 200;
}

@media (max-width: 1000px) {
	.wd-cards.wd-cards--employees {
		grid-template-columns: repeat(var(--tablet-columns), minmax(0, 1fr));
	}
}

@media (max-width: 699px) {
	.wd-cards-wrapper:has(> .wd-cards--employees) {
		width: 100%;
		max-width: 460px;
		margin-right: auto;
		margin-left: auto;
	}

	.wd-cards.wd-cards--employees {
		grid-template-columns: minmax(0, 1fr);
		gap: 24px;
	}

	.wd-cards.wd-cards--employees .wd-card,
	.wd-cards.wd-cards--employees .wd-card-content-wrapper {
		min-width: 0;
	}

	.wd-cards--employees .wd-card-content-wrapper {
		padding: 18px !important;
	}

	.wd-cards--employees .wd-card-phone,
	.wd-cards--employees .wd-card-email {
		min-width: 0;
		align-items: flex-start;
		white-space: normal;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.wd-cards--employees :is(.wd-card-phone, .wd-card-email) .wd-icon,
	.wd-cards--employees :is(.wd-card-phone, .wd-card-email) svg {
		flex: 0 0 auto;
		margin-top: 2px;
	}

	.wd-cards.wd-cards--employees .wd-card .wd-card-image-wrapper .wd-card-image {
		display: block;
		width: 100%;
		height: auto;
	}
}

/* Kun ét element */
.right-side-elements__element:only-child .wp-block-group {
    padding: 30px 0 40px !important;
}

/* Flere elementer - første */
.right-side-elements__element:first-child:not(:last-child) .wp-block-group {
    padding: 30px 0 0 !important;
}

/* Flere elementer - sidste */
.right-side-elements__element:last-child:not(:first-child) .wp-block-group {
    padding: 0 0 40px !important;
}

/* Flere elementer - eventuelle midterste */
.right-side-elements__element:not(:first-child):not(:last-child) .wp-block-group {
    padding: 0 !important;
}

.wp-block-table .has-fixed-layout * {
	border-color: #dbdbdb;
}

.woocommerce-cart .wrapper {
	padding-top: 200px;
}

body .woocommerce-message {
    background: var(--primary-color);
	display: flex;
}

.woocommerce-message-close-icon {
	margin-left: auto;
}

.woocommerce-message-close-icon-line {
	background: color-mix(in srgb, var(--primary-color) 80%, #fff 20%);
}

.woocommerce-message-close-icon:hover .woocommerce-message-close-icon-line {
	background: color-mix(in srgb, var(--primary-color) 70%, #fff 30%);
}

.woocommerce-message-inner .button.wc-forward {
	color: var(--light);
}

.woocommerce-message-inner .button.wc-forward:hover {
	background-color: transparent;
	color: var(--light);
}

.woocommerce table.shop_table {
	border: none;
}

.woocommerce-checkout {
	padding-top: 100px;
}

.woocommerce-checkout h3 {
	font-size: 24px;
	margin-bottom: 22px;
}

.woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-shipping-fields__field-wrapper .form-row {
	margin-top: 0 !important;
}

#shipping_country_field {
    -webkit-appearance: none;
    -moz-appearance: none;
    background: #f3f3f3;
    border-radius: 0;
    border-style: solid;
    border-width: 0.1rem;
    box-shadow: none;
    display: block;
    font-size: 1.6rem;
    letter-spacing: -0.015em;
    margin: 0;
    max-width: 100%;
    width: 100%;
    border: 1px solid #79747E;
    border-radius: 4px;
    user-select: none;
    pointer-events: none;
    font-weight: normal;
	margin-bottom: 22px;
	color: #79747E;
	font-size: 12px;
	font-weight: 200;
	padding: 6px 12px;
}

#shipping_country_field select {
	font-weight: 100;
}

#add_payment_method #payment div.payment_box::before, 
.woocommerce-cart #payment div.payment_box::before, 
.woocommerce-checkout #payment div.payment_box::before {
	display: none;
}

.wc_payment_method input.input-radio[name=payment_method]:checked+label::before {
    background: #555;
}

.wc_payment_method input.input-radio[name=payment_method]+label::before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid #fff;
    box-shadow: 0 0 0 2px #6d6d6d;
    background: #fff;
    margin-left: 4px;
    margin-right: 1.2rem;
    border-radius: 100%;
    transform: translateY(2px);
}

.woocommerce-checkout-payment .input-radio {
	display: none;
}

.woocommerce-checkout-payment label {
	cursor: pointer;
}

@media screen and (max-width: 781px) {
    .form-arrow img {
        display: none;
    }
	.wp-block-contact-form-7-contact-form-selector {
		margin: 0 auto;
	}
}
