/* Shared page-level storefront styles extracted from vinduer24-page-assets.php */

.home.vinduer24-home-template .content-area {
	margin: 0;
}

.home.vinduer24-home-template .content-container.site-container {
	display: block;
	max-width: none;
	padding: 0;
}

.home.vinduer24-home-template .site-main {
	padding: 0;
}

.vinduer24-homepage {
	background:
		linear-gradient(180deg, #f5f7fb 0%, #eef3f8 42%, #ffffff 100%);
	color: #153046;
}

.vinduer24-homepage a {
	text-decoration: none;
}

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

.vinduer24-home-shell {
	width: min(1310px, calc(100% - 2rem));
	margin: 0 auto;
}

.vinduer24-home-eyebrow {
	margin: 0 0 0.9rem;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.72);
}

.vinduer24-home-section-label {
	margin: 0 0 0.9rem;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #6d7c8f;
}

.vinduer24-home-hero {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(circle at top left, rgba(255, 255, 255, 0.12), transparent 24%),
		linear-gradient(135deg, #0c2f4a 0%, #103d5e 54%, #0a2236 100%);
	color: #ffffff;
	padding: 1rem 0 1.05rem;
	min-height: clamp(470px, calc(100svh - 230px), 590px);
	display: flex;
	align-items: center;
}

.vinduer24-home-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px),
		linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px);
	background-size: 40px 40px;
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.72), transparent 88%);
	pointer-events: none;
}

.vinduer24-home-hero-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(420px, 1.12fr);
	gap: 1.85rem;
	align-items: center;
}

.vinduer24-home-hero-meta {
	margin: 0 0 0.7rem;
	max-width: 36rem;
	font-size: 0.96rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.72);
}

.vinduer24-home-hero-copy h1 {
	margin: 0;
	font-size: clamp(2.7rem, 4.2vw, 4.35rem);
	line-height: 0.9;
	color: #ffffff;
	letter-spacing: -0.04em;
	max-width: 10.4ch;
}

.vinduer24-home-hero-copy .vinduer24-home-lead {
	max-width: 33rem;
	margin: 0.9rem 0 0;
	font-size: 1rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.82);
}

.vinduer24-home-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.9rem;
	margin-top: 1rem;
}

.vinduer24-home-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0.85rem 1.35rem;
	border-radius: 999px;
	font-weight: 700;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.vinduer24-home-button:hover,
.vinduer24-home-button:focus-visible {
	transform: translateY(-1px);
	box-shadow: 0 18px 30px -20px rgba(5, 17, 28, 0.6);
}

.vinduer24-home-button-primary {
	background: #e70707;
	color: #ffffff;
}

.vinduer24-home-button-primary:hover,
.vinduer24-home-button-primary:focus-visible {
	background: #ff2d2d;
	color: #ffffff;
}

.vinduer24-home-button-secondary {
	border: 1px solid rgba(255, 255, 255, 0.34);
	background: rgba(255, 255, 255, 0.06);
	color: #ffffff;
}

.vinduer24-home-button-secondary:hover,
.vinduer24-home-button-secondary:focus-visible {
	border-color: rgba(255, 255, 255, 0.65);
	background: rgba(255, 255, 255, 0.12);
	color: #ffffff;
}

.vinduer24-home-hero-trust {
	display: grid;
	gap: 0.55rem;
	margin: 0.95rem 0 0;
	padding: 0;
	list-style: none;
	max-width: 34rem;
}

.vinduer24-home-hero-trust li {
	position: relative;
	padding-left: 1.15rem;
	font-size: 0.98rem;
	color: rgba(255, 255, 255, 0.84);
}

.vinduer24-home-hero-trust li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.6rem;
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: #e70707;
}

.vinduer24-home-hero-stage {
	position: relative;
	display: flex;
	align-items: stretch;
	justify-content: stretch;
	min-height: 23.2rem;
	padding: 1.05rem;
	overflow: hidden;
	border-radius: 32px;
	background: linear-gradient(180deg, #eef3f7 0%, #e4ebf1 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 30px 56px -40px rgba(13, 52, 82, 0.26);
}

.vinduer24-home-hero-stage::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.5), transparent 22%),
		linear-gradient(90deg, rgba(20, 51, 77, 0.04) 1px, transparent 1px),
		linear-gradient(rgba(20, 51, 77, 0.04) 1px, transparent 1px);
	background-size: auto, 36px 36px, 36px 36px;
}

.vinduer24-home-hero-figure {
	position: absolute;
	inset: 0;
	margin: 0;
	display: none;
}

.vinduer24-home-hero-figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vinduer24-home-hero-stage-badge {
	display: none;
}

.vinduer24-home-hero-stage-badge strong {
	display: block;
	font-size: 0.98rem;
	color: #14334d;
}

.vinduer24-home-hero-stage-badge span {
	font-size: 0.88rem;
	color: #5c6f80;
}

.vinduer24-home-hero-offer {
	--hero-offer-gap: 0.9rem;
	--hero-offer-per-view: 2;
	position: relative;
	z-index: 1;
	display: grid;
	gap: 0.7rem;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	border-radius: 0;
	background: transparent;
	border: 0;
	color: #153046;
	box-shadow: none;
	backdrop-filter: none;
}

.vinduer24-home-hero-offer-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 0.8rem;
	min-height: auto;
	padding: 0.05rem 0.15rem 0.8rem;
	border-radius: 0;
	background: transparent;
	border: 0;
	border-bottom: 1px solid rgba(20, 51, 77, 0.08);
	box-shadow: none;
}

.vinduer24-home-hero-offer-nav {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	flex: 0 0 auto;
}

.vinduer24-home-hero-offer-arrow {
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	border: 1px solid rgba(14, 52, 82, 0.1);
	background: #f3f7fb;
	color: #14334d;
	font-size: 1rem;
	font-weight: 700;
	cursor: pointer;
	transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.vinduer24-home-hero-offer-arrow:hover,
.vinduer24-home-hero-offer-arrow:focus-visible {
	transform: translateY(-1px);
	background: #e8eef5;
	border-color: rgba(14, 52, 82, 0.16);
}

.vinduer24-home-hero-offer-viewport {
	overflow: hidden;
	padding: 0.1rem 0;
}

.vinduer24-home-hero-offer-track {
	display: flex;
	gap: var(--hero-offer-gap);
	align-items: stretch;
	transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: transform;
}

.vinduer24-home-hero-offer-slide {
	flex: 0 0 calc((100% - (var(--hero-offer-gap) * (var(--hero-offer-per-view) - 1))) / var(--hero-offer-per-view));
	display: grid;
	gap: 0.8rem;
	min-width: 0;
	padding: 1rem;
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 18px 34px -28px rgba(13, 52, 82, 0.14);
}

.vinduer24-home-hero-offer-media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.85rem;
	border-radius: 22px;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	min-height: 210px;
	text-decoration: none;
}

.vinduer24-home-hero-offer-media img {
	width: 100%;
	height: 100%;
	max-height: 182px;
	object-fit: contain;
}

.vinduer24-home-product-sale-stack--hero {
	top: 0.7rem;
	right: 0.7rem;
	gap: 0.28rem;
}

.vinduer24-home-product-sale-percent--hero,
.vinduer24-home-product-sale-pill--hero {
	min-height: 1.55rem;
	padding: 0.26rem 0.58rem;
	border-radius: 0.72rem;
	font-size: 0.62rem;
	letter-spacing: 0.07em;
	box-shadow: 0 14px 24px -22px rgba(18, 49, 75, 0.38);
}

.vinduer24-home-product-sale-percent--hero {
	padding-left: 0.72rem;
	border-radius: 0.64rem;
}

.vinduer24-home-hero-offer-copy {
	display: grid;
	gap: 0.45rem;
	padding: 0 0.1rem 0.05rem;
}

.vinduer24-home-hero-offer-tag {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #7a8898;
}

.vinduer24-home-hero-offer h2 {
	margin: 0;
	font-size: 1.34rem;
	line-height: 1.06;
	color: #14334d;
}

.vinduer24-home-hero-offer p {
	margin: 0;
	color: #596a79;
	line-height: 1.56;
	font-size: 0.96rem;
}

.vinduer24-home-hero-offer-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.8rem;
	margin-top: 0.2rem;
}

.vinduer24-home-hero-offer .vinduer24-home-button {
	min-height: 48px;
	width: 100%;
}

.vinduer24-home-hero-offer-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	padding-top: 0.1rem;
}

.vinduer24-home-hero-offer-dot {
	width: 9px;
	height: 9px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(20, 51, 77, 0.18);
	cursor: pointer;
	transition: transform 0.2s ease, background-color 0.2s ease, width 0.2s ease;
}

.vinduer24-home-hero-offer-dot.is-active {
	width: 28px;
	background: #14334d;
}

.vinduer24-home-hero-offer-dot:hover,
.vinduer24-home-hero-offer-dot:focus-visible {
	transform: scale(1.05);
	background: rgba(20, 51, 77, 0.46);
}

.vinduer24-home-story,
.vinduer24-home-story-detail,
.vinduer24-home-story-reason,
.vinduer24-home-concerns,
.vinduer24-home-process,
.vinduer24-home-service,
.vinduer24-home-products,
.vinduer24-home-faq {
	padding: 4.25rem 0 0;
}

.vinduer24-home-faq {
	padding-bottom: 4.25rem;
}

.vinduer24-home-category-eyebrow {
	margin: 0;
	flex: 1 1 auto;
	min-width: 0;
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	white-space: nowrap;
	color: #8694a2;
}

.vinduer24-home-story-copy h2,
.vinduer24-home-products h2,
.vinduer24-home-process h2,
.vinduer24-home-service h2,
.vinduer24-home-faq h2 {
	margin: 0;
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1.04;
	color: #12314b;
}

.vinduer24-home-story-copy p,
.vinduer24-home-faq-intro {
	margin: 0;
	color: #5f6d7a;
	font-size: 1.02rem;
	line-height: 1.75;
}

.vinduer24-home-faq-head {
	display: grid;
	gap: 1rem;
	margin-bottom: 1.9rem;
}

.vinduer24-home-faq-head .vinduer24-home-section-label {
	margin: 0;
}

.vinduer24-home-products-head,
.vinduer24-home-process-head {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	gap: 2rem;
	align-items: end;
	margin-bottom: 1.9rem;
}

.vinduer24-home-products-showcase {
	display: grid;
	gap: 1.6rem;
}

#alle-vinduer {
	scroll-margin-top: 7rem;
}

.vinduer24-home-product-showcase {
	display: grid;
	grid-template-columns: minmax(0, 1.52fr) minmax(300px, 0.78fr);
	gap: 1.5rem;
	align-items: stretch;
}

.vinduer24-home-product-showcase.is-reversed {
	grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.52fr);
}

.vinduer24-home-product-showcase.is-reversed .vinduer24-home-product-scene {
	order: 2;
}

.vinduer24-home-product-showcase.is-reversed .vinduer24-home-product-panel {
	order: 1;
}

.vinduer24-home-product-scene {
	position: relative;
	min-height: 430px;
	margin: 0;
	overflow: hidden;
	border-radius: 34px;
	background: #d7e2ea;
	box-shadow: 0 36px 74px -52px rgba(13, 52, 82, 0.44);
}

.vinduer24-home-product-scene::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(7, 20, 32, 0.02) 0%, rgba(7, 20, 32, 0.16) 48%, rgba(7, 20, 32, 0.72) 100%),
		linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 52%);
}

.vinduer24-home-product-scene img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	min-height: 100%;
	object-fit: cover;
	object-position: var(--vinduer24-scene-position, center center);
}

.vinduer24-home-product-scene-caption {
	position: relative;
	z-index: 1;
	display: grid;
	align-content: end;
	gap: 0.9rem;
	min-height: 100%;
	padding: clamp(1.5rem, 2.8vw, 2.2rem);
	color: #ffffff;
}

.vinduer24-home-product-scene-label {
	display: inline-flex;
	width: fit-content;
	margin: 0;
	padding: 0.48rem 0.78rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	color: #ffffff;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	backdrop-filter: blur(10px);
}

.vinduer24-home-product-scene-caption h3 {
	display: -webkit-box;
	max-width: 20ch;
	margin: 0;
	overflow: hidden;
	font-size: clamp(1.4rem, 2.05vw, 2rem);
	line-height: 1.06;
	color: #ffffff;
	text-wrap: balance;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.vinduer24-home-product-scene-caption p {
	max-width: 30rem;
	margin: 0;
	color: rgba(255, 255, 255, 0.88);
	font-size: 1rem;
	line-height: 1.7;
}

.vinduer24-home-product-scene-points {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin: 0.2rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-home-product-scene-points li {
	padding: 0.62rem 0.9rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	color: #ffffff;
	font-size: 0.92rem;
	line-height: 1.45;
	backdrop-filter: blur(10px);
}

.vinduer24-home-product-panel {
	display: flex;
	align-items: center;
	min-height: 430px;
	padding: 1.35rem;
	border: 1px solid rgba(13, 52, 82, 0.08);
	border-radius: 34px;
	background: linear-gradient(180deg, #ffffff 0%, #f4f8fb 100%);
	box-shadow: 0 28px 56px -46px rgba(13, 52, 82, 0.34);
}

.vinduer24-home-product-showcase:not(.is-reversed) .vinduer24-home-product-panel {
	margin-left: auto;
}

.vinduer24-home-product-showcase.is-reversed .vinduer24-home-product-panel {
	margin-right: auto;
}

.vinduer24-home-product-panel .vinduer24-home-product-card {
	width: 100%;
	max-width: 440px;
	padding: 0.15rem;
}

.vinduer24-home-story-grid {
	display: grid;
	grid-template-columns: minmax(320px, 0.95fr) minmax(0, 1.05fr);
	gap: 1.9rem;
	align-items: start;
}

.vinduer24-home-story-visual {
	display: grid;
	align-content: start;
	align-self: start;
}

.vinduer24-home-story-visual figure {
	position: relative;
	overflow: hidden;
	min-height: clamp(300px, 29vw, 430px);
	height: auto;
	aspect-ratio: 1.24 / 1;
	border-radius: 34px;
	background: #dfe8ef;
	box-shadow: 0 36px 72px -50px rgba(13, 52, 82, 0.32);
}

.vinduer24-home-story-visual img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	min-height: 100%;
	object-fit: cover;
	object-position: center 34%;
}

.vinduer24-home-watermarked-figure::after {
	content: "";
	position: absolute;
	right: 1.15rem;
	bottom: 1.15rem;
	width: 8.4rem;
	height: 3.55rem;
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.62) 0%, rgba(255, 255, 255, 0.42) 100%);
	border: 1px solid rgba(255, 255, 255, 0.3);
	backdrop-filter: blur(5px);
	box-shadow: 0 14px 28px -22px rgba(13, 52, 82, 0.55);
	pointer-events: none;
}

.vinduer24-home-figure-watermark {
	position: absolute;
	right: 1.55rem;
	bottom: 1.5rem;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 7.3rem;
	pointer-events: none;
	opacity: 0.76;
	filter: none;
}

.vinduer24-home-figure-watermark img {
	display: block;
	position: static !important;
	inset: auto !important;
	width: 100% !important;
	height: auto !important;
	max-width: 100% !important;
	min-height: 0 !important;
	object-fit: contain !important;
	object-position: center center !important;
	filter: none;
}

.vinduer24-home-story-copy {
	display: grid;
	gap: 1.15rem;
	padding: 0.15rem 0;
}

.vinduer24-home-story-list {
	display: grid;
	gap: 0.85rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.vinduer24-home-story-list li {
	padding: 1rem 0 0;
	border-top: 1px solid rgba(18, 49, 75, 0.12);
	position: static;
	color: #4e6272;
}

.vinduer24-home-story-list strong {
	display: block;
	font-size: 1.03rem;
	line-height: 1.35;
	color: #14334d;
}

.vinduer24-home-story-list span {
	display: block;
	margin-top: 0.45rem;
	font-size: 0.96rem;
	line-height: 1.7;
	color: #5d6d7c;
}

.vinduer24-home-story-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.9rem;
	align-content: start;
}

.vinduer24-home-story-fact {
	padding: 1rem 1.05rem;
	border-radius: 24px;
	background: linear-gradient(180deg, #f6f8fb 0%, #ffffff 100%);
	border: 1px solid rgba(18, 49, 75, 0.08);
}

.vinduer24-home-story-fact p {
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #8694a2;
}

.vinduer24-home-story-fact strong {
	display: block;
	margin-top: 0.5rem;
	font-size: 1rem;
	line-height: 1.5;
	color: #12314b;
}

.vinduer24-home-story-note-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.7rem;
	margin: 0.1rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-home-story-note-list li {
	padding: 0.72rem 0.95rem;
	border-radius: 999px;
	background: #eef3f8;
	color: #12314b;
	font-size: 0.94rem;
	font-weight: 700;
}

.vinduer24-home-story-detail {
	padding-top: 1.35rem;
}

.vinduer24-home-story-detail-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr);
	gap: 1.5rem;
	padding: 1.65rem;
	border-radius: 36px;
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.78), transparent 28%),
		linear-gradient(180deg, #f4f8fc 0%, #edf3f8 100%);
	border: 1px solid rgba(18, 49, 75, 0.08);
	box-shadow: 0 34px 68px -56px rgba(13, 52, 82, 0.24);
}

.vinduer24-home-story-detail-copy {
	display: grid;
	gap: 1rem;
	align-content: start;
}

.vinduer24-home-story-detail-copy h2 {
	margin: 0;
	font-size: clamp(1.95rem, 2.8vw, 2.9rem);
	line-height: 1.04;
	color: #12314b;
}

.vinduer24-home-story-detail-copy > p {
	margin: 0;
	color: #5f6d7a;
	font-size: 1.02rem;
	line-height: 1.78;
}

.vinduer24-home-story-detail-visual {
	display: grid;
	align-content: start;
	align-self: start;
}

.vinduer24-home-story-detail-figure {
	position: relative;
	overflow: hidden;
	min-height: clamp(400px, 46vw, 620px);
	height: auto;
	aspect-ratio: 0.82 / 1;
	border-radius: 30px;
	background: #dfe8ef;
	box-shadow: 0 28px 56px -46px rgba(13, 52, 82, 0.28);
}

.vinduer24-home-story-detail-figure img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	min-height: 100%;
	object-fit: cover;
	object-position: center center;
}

.vinduer24-home-story-reason {
	padding-top: 1.35rem;
}

.vinduer24-home-story-reason-grid {
	display: grid;
	grid-template-columns: minmax(360px, 0.96fr) minmax(0, 1.04fr);
	gap: 1.35rem;
	align-items: stretch;
}

.vinduer24-home-story-reason-figure {
	overflow: hidden;
	height: 100%;
	min-height: 460px;
	border-radius: 34px;
	box-shadow: 0 30px 60px -46px rgba(13, 52, 82, 0.28);
}

.vinduer24-home-story-reason-figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vinduer24-home-story-support {
	padding: 1.35rem;
	border-radius: 28px;
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.12), transparent 28%),
		linear-gradient(180deg, #10324d 0%, #0b243a 100%);
	box-shadow: 0 34px 68px -54px rgba(10, 36, 58, 0.7);
	color: #ffffff;
}

.vinduer24-home-story-support-reason {
	display: grid;
	gap: 1rem;
	align-content: center;
	min-height: 460px;
	padding: 1.8rem clamp(1.5rem, 2.2vw, 2rem);
}

.vinduer24-home-story-support h3 {
	margin: 0.65rem 0 0;
	font-size: 1.34rem;
	line-height: 1.2;
	color: #ffffff;
}

.vinduer24-home-story-support > p:last-of-type {
	margin: 0.8rem 0 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.98rem;
	line-height: 1.72;
}

.vinduer24-home-story-support-list {
	display: grid;
	gap: 0.8rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-home-story-support-list li {
	position: relative;
	padding-left: 1.1rem;
	color: rgba(255, 255, 255, 0.86);
	font-size: 0.95rem;
	line-height: 1.6;
}

.vinduer24-home-story-support-reason h3 {
	font-size: clamp(1.85rem, 2.5vw, 2.45rem);
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.vinduer24-home-story-support-reason > p:last-of-type {
	max-width: 35rem;
	font-size: 1rem;
	line-height: 1.75;
}

.vinduer24-home-story-support-reason .vinduer24-home-story-support-list {
	gap: 0.95rem;
	margin-top: 0.9rem;
}

.vinduer24-home-story-support-reason .vinduer24-home-story-support-list li {
	font-size: 1rem;
	line-height: 1.65;
}

.vinduer24-home-story-support-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.58rem;
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: #e70707;
}

.vinduer24-home-products-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.35rem;
	margin-top: 0;
}

.vinduer24-home-product-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 0.4rem 0.2rem 0.2rem;
	background: transparent;
	border: 0;
	box-shadow: none;
}

.vinduer24-home-product-media {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	aspect-ratio: 1 / 1.18;
	padding: 1.2rem 0.95rem 0.35rem;
	background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);
	border-radius: 26px;
	border: 1px solid rgba(14, 52, 82, 0.06);
	overflow: hidden;
}

.vinduer24-home-product-media img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	min-height: 100%;
	object-fit: contain;
	object-position: center bottom;
	transition: transform 0.3s ease;
}

.vinduer24-home-product-badge {
	position: absolute;
	top: 0.9rem;
	left: 0.9rem;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 84px;
	min-height: 84px;
	padding: 0.8rem;
	border-radius: 999px;
	background: #86d7bd;
	color: #ffffff;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1.15;
	text-align: center;
	text-transform: uppercase;
	box-shadow: 0 18px 30px -24px rgba(18, 49, 75, 0.4);
}

.vinduer24-home-product-sale-stack {
	position: absolute;
	top: 0.9rem;
	right: 0.9rem;
	z-index: 2;
	display: grid;
	gap: 0.4rem;
	justify-items: end;
	pointer-events: none;
}

.vinduer24-home-product-sale-percent,
.vinduer24-home-product-sale-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2rem;
	padding: 0.35rem 0.78rem;
	border-radius: 0.82rem;
	color: #ffffff;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 18px 30px -24px rgba(18, 49, 75, 0.4);
}

.vinduer24-home-product-sale-percent {
	padding-left: 0.98rem;
	border-radius: 0.76rem;
	background: linear-gradient(135deg, #f4333b 0%, #cf171f 100%);
	clip-path: polygon(0.62rem 0, 100% 0, 100% 100%, 0 100%, 0 0.62rem);
	box-shadow: 0 18px 34px -26px rgba(109, 10, 14, 0.58);
}

.vinduer24-home-product-sale-pill {
	background: #143f61;
}

.vinduer24-home-product-card:hover .vinduer24-home-product-media img,
.vinduer24-home-product-card:focus-within .vinduer24-home-product-media img {
	transform: scale(1.04);
}

.vinduer24-home-product-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1rem 0 0;
}

.vinduer24-home-product-body h3 {
	margin: 0;
	display: -webkit-box;
	font-size: 1.4rem;
	line-height: 1.25;
	text-transform: uppercase;
	overflow: hidden;
	text-wrap: balance;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.vinduer24-home-product-body h3 a {
	color: #3e4651;
}

.vinduer24-home-product-body p {
	margin: 0.65rem 0 0;
	color: #5b6c7b;
	font-size: 0.98rem;
}

.vinduer24-home-product-benefits {
	display: grid;
	gap: 0.35rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-home-product-benefits li {
	position: relative;
	padding-left: 1.35rem;
	color: #3f4a56;
}

.vinduer24-home-product-benefits li::before {
	content: "\2713";
	position: absolute;
	left: 0;
	top: -0.02rem;
	font-size: 1rem;
	font-weight: 700;
	color: #1d2732;
}

.vinduer24-home-product-stock {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	margin: 1rem 0 0;
	color: #4f6272;
	font-size: 0.97rem;
}

.vinduer24-home-product-stock span {
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: currentColor;
	flex: 0 0 auto;
}

.vinduer24-home-product-stock.is-on-request span {
	background: currentColor;
}

.vinduer24-home-product-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-top: auto;
	padding-top: 1rem;
}

.vinduer24-home-price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.45rem;
	font-size: 1.08rem;
	font-weight: 800;
	color: #3f4651;
}

.vinduer24-home-price del {
	color: #8a98a6;
	font-size: 0.9rem;
	font-weight: 600;
	text-decoration-thickness: 2px;
	text-decoration-color: rgba(138, 152, 166, 0.82);
}

.vinduer24-home-price ins {
	color: #12354e;
	font-weight: 800;
	text-decoration: none;
}

.vinduer24-home-inline-link {
	font-weight: 700;
	color: #0d3452;
}

.vinduer24-home-inline-link:hover,
.vinduer24-home-inline-link:focus-visible {
	color: #e70707;
}

.vinduer24-home-product-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 96px;
	min-height: 48px;
	padding: 0.7rem 1rem;
	border-radius: 8px;
	background: #1db954;
	color: #ffffff;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: transform 0.2s ease, background-color 0.2s ease;
}

.vinduer24-home-product-cta:hover,
.vinduer24-home-product-cta:focus-visible {
	transform: translateY(-1px);
	background: #16a34a;
	color: #ffffff;
}

.vinduer24-home-link-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: 1.6rem;
}

.vinduer24-home-link-row--catalog {
	margin-top: 0;
	margin-bottom: 1.6rem;
}

.vinduer24-home-chip-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.7rem 1rem;
	border-radius: 999px;
	background: #e9eff5;
	color: #12314b;
	font-weight: 700;
	text-decoration: none;
}

.vinduer24-home-chip-link:hover,
.vinduer24-home-chip-link:focus-visible {
	background: #dbe5ee;
	color: #12314b;
	text-decoration: none;
}

.vinduer24-home-link-row--catalog .vinduer24-home-chip-link {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(18, 49, 75, 0.08);
	box-shadow: 0 16px 30px -28px rgba(13, 52, 82, 0.3);
}

.vinduer24-home-link-row--catalog .vinduer24-home-chip-link:hover,
.vinduer24-home-link-row--catalog .vinduer24-home-chip-link:focus-visible {
	background: #ffffff;
	border-color: rgba(18, 49, 75, 0.14);
}

.vinduer24-home-service-followup {
	padding: 1.25rem 0 0;
}

.vinduer24-home-service-overview,
.vinduer24-home-service-followup-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.02fr) minmax(340px, 0.98fr);
	gap: 1.8rem;
	padding: 2.15rem;
	border-radius: 36px;
	box-shadow: 0 34px 64px -52px rgba(13, 52, 82, 0.28);
}

.vinduer24-home-service-overview {
	background: linear-gradient(180deg, #ffffff 0%, #f4f8fb 100%);
	border: 1px solid rgba(13, 52, 82, 0.08);
}

.vinduer24-home-service-followup-panel {
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.12), transparent 22%),
		linear-gradient(135deg, #10314d 0%, #0d2437 100%);
	border: 1px solid rgba(255, 255, 255, 0.05);
	color: #ffffff;
	align-items: start;
}

.vinduer24-home-service-visual {
	position: relative;
	display: grid;
	align-content: start;
}

.vinduer24-home-service-visual-figure {
	position: relative;
	margin: 0;
	overflow: hidden;
	border-radius: 30px;
	min-height: 360px;
	box-shadow: 0 28px 58px -42px rgba(7, 20, 31, 0.35);
}

.vinduer24-home-service-visual-figure::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(10, 25, 39, 0.04) 0%, rgba(10, 25, 39, 0.14) 44%, rgba(10, 25, 39, 0.68) 100%);
}

.vinduer24-home-service-visual-figure img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vinduer24-home-service-visual-figure figcaption {
	position: absolute;
	left: 1rem;
	right: 1rem;
	bottom: 1rem;
	z-index: 1;
	display: grid;
	gap: 0.25rem;
}

.vinduer24-home-service-visual-figure p {
	margin: 0;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.72);
}

.vinduer24-home-service-visual-figure strong {
	display: block;
	font-size: 1rem;
	line-height: 1.38;
	color: #ffffff;
}

.vinduer24-home-service-intro {
	display: grid;
	gap: 1.15rem;
	align-content: start;
}

.vinduer24-home-service-intro h2 {
	color: #12314b;
}

.vinduer24-home-service-intro > p {
	margin: 0;
	max-width: 38rem;
	color: #5f6d7a;
	font-size: 1.02rem;
	line-height: 1.75;
}

.vinduer24-home-service-note {
	margin: 0;
	padding-top: 0.15rem;
	border-top: 1px solid rgba(13, 52, 82, 0.12);
	color: #5f6d7a;
	font-size: 0.96rem;
	line-height: 1.7;
}

.vinduer24-home-service-proof {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem;
}

.vinduer24-home-service-proof-item {
	padding: 0.9rem 0 0;
	border-top: 1px solid rgba(13, 52, 82, 0.12);
}

.vinduer24-home-service-proof-item p {
	margin: 0 0 0.28rem;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6a7788;
}

.vinduer24-home-service-proof-item strong {
	display: block;
	font-size: 0.93rem;
	line-height: 1.5;
	color: #12314b;
}

.vinduer24-home-service-followup-copy {
	display: grid;
	gap: 1.1rem;
	align-content: start;
}

.vinduer24-home-service-followup-copy h2 {
	margin: 0;
	font-size: clamp(1.9rem, 2.7vw, 2.6rem);
	line-height: 1.05;
	color: #ffffff;
	max-width: 12ch;
}

.vinduer24-home-service-followup .vinduer24-home-section-label {
	color: rgba(255, 255, 255, 0.68);
}

.vinduer24-home-service-followup .vinduer24-home-faq-intro {
	color: rgba(255, 255, 255, 0.82);
}

.vinduer24-home-service-followup-note {
	margin: 0;
	padding-top: 0.3rem;
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.96rem;
	line-height: 1.7;
}

.vinduer24-home-service-summary {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem;
}

.vinduer24-home-service-summary-item {
	display: grid;
	gap: 0.35rem;
	padding: 1rem;
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.04) 100%);
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.vinduer24-home-service-summary-item p {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.68);
}

.vinduer24-home-service-summary-item strong {
	font-size: 0.95rem;
	line-height: 1.6;
	color: #ffffff;
}

.vinduer24-home-service-followup-aside {
	display: grid;
	gap: 1rem;
	align-content: start;
}

.vinduer24-home-service-aside-head {
	display: grid;
	gap: 0.3rem;
	padding: 0 0 0.2rem;
}

.vinduer24-home-service-aside-head p {
	margin: 0;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.68);
}

.vinduer24-home-service-aside-head strong {
	font-size: 1rem;
	line-height: 1.5;
	color: #ffffff;
}

.vinduer24-home-service-list {
	display: grid;
	gap: 0.9rem;
	align-content: start;
}

.vinduer24-home-service-card {
	padding: 1rem 1.1rem 1rem 4rem;
	position: relative;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.04) 100%);
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.vinduer24-home-service-card > span {
	position: absolute;
	left: 1rem;
	top: 1rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.15rem;
	height: 2.15rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.1);
	color: #ffffff;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.04em;
}

.vinduer24-home-service-card h3 {
	margin: 0 0 0.4rem;
	font-size: 1.02rem;
	line-height: 1.35;
	color: #ffffff;
}

.vinduer24-home-service-card p {
	margin: 0;
	color: rgba(255, 255, 255, 0.76);
	font-size: 0.95rem;
	line-height: 1.66;
}

.vinduer24-home-service-followup .vinduer24-home-chip-link {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	color: #ffffff;
}

.vinduer24-home-service-followup .vinduer24-home-chip-link:hover,
.vinduer24-home-service-followup .vinduer24-home-chip-link:focus-visible {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(255, 255, 255, 0.2);
	color: #ffffff;
}

.vinduer24-home-concerns-box {
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
	gap: 1.8rem;
	padding: 2.2rem;
	border-radius: 36px;
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.09), transparent 22%),
		linear-gradient(135deg, #102d45 0%, #0d2234 100%);
	color: #ffffff;
	box-shadow: 0 42px 72px -56px rgba(13, 34, 52, 0.72);
}

.vinduer24-home-concerns-intro {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	align-items: flex-start;
	min-height: 100%;
}

.vinduer24-home-concerns-intro > p {
	margin: 0;
}

.vinduer24-home-concerns-copy {
	display: grid;
	gap: 1rem;
	align-content: start;
}

.vinduer24-home-concerns-copy > p {
	margin: 0;
}

.vinduer24-home-concerns-intro h2 {
	margin: 0;
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1.02;
	color: #ffffff;
}

.vinduer24-home-concerns-copy p {
	color: rgba(255, 255, 255, 0.78);
	font-size: 1.02rem;
	line-height: 1.8;
	max-width: 33rem;
}

.vinduer24-home-concerns-copy .vinduer24-home-link-row {
	margin-top: 0.2rem;
}

.vinduer24-home-concerns-figure {
	position: relative;
	overflow: hidden;
	width: 100%;
	min-height: clamp(280px, 26vw, 360px);
	margin: 0.2rem 0 0;
	border-radius: 32px;
	background: #adc1d0;
	box-shadow: 0 34px 62px -46px rgba(4, 13, 22, 0.58);
}

.vinduer24-home-concerns-figure::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(7, 20, 31, 0.03) 0%, rgba(7, 20, 31, 0.12) 100%);
	pointer-events: none;
}

.vinduer24-home-concerns-figure img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	min-height: 100%;
	object-fit: cover;
	object-position: 36% 50%;
}

.vinduer24-home-concerns-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.vinduer24-home-concern-card {
	display: grid;
	gap: 0.9rem;
	align-content: start;
	padding: 1.25rem;
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.11);
	backdrop-filter: blur(10px);
}

.vinduer24-home-concern-card-head {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.85rem;
	align-items: start;
}

.vinduer24-home-concern-card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.15);
	color: #d5e8f8;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.vinduer24-home-concern-card-icon svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.vinduer24-home-concern-card h3 {
	margin: 0;
	font-size: 1.12rem;
	line-height: 1.35;
	color: #ffffff;
}

.vinduer24-home-concern-card p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.7;
}

.vinduer24-home-process-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
	margin-top: 0;
}

.vinduer24-home-process-step {
	padding: 1.45rem;
	border-radius: 24px;
	background: linear-gradient(180deg, #f5f8fb 0%, #ffffff 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 24px 46px -42px rgba(13, 52, 82, 0.34);
}

.vinduer24-home-process-step span {
	display: inline-flex;
	width: 42px;
	height: 42px;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: #0d3452;
	color: #ffffff;
	font-weight: 700;
}

.vinduer24-home-process-step h3 {
	margin: 1rem 0 0;
	font-size: 1.2rem;
	color: #12314b;
	line-height: 1.35;
}

.vinduer24-home-process-step p {
	margin: 0.7rem 0 0;
	color: #5a6978;
	line-height: 1.75;
}

.vinduer24-home-faq-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin-top: 0;
}

.vinduer24-home-faq-item {
	padding: 1.45rem;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 26px 48px -44px rgba(13, 52, 82, 0.22);
}

.vinduer24-home-faq-item h3 {
	margin: 0;
	font-size: 1.12rem;
	line-height: 1.45;
	color: #12314b;
}

.vinduer24-home-faq-item p {
	margin: 0.75rem 0 0;
	color: #5b6c7b;
	line-height: 1.75;
}

.vinduer24-home-cta-box {
	position: relative;
	overflow: hidden;
	padding: 2rem;
	border-radius: 34px;
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.12), transparent 28%),
		linear-gradient(135deg, #0d3452 0%, #103d5e 100%);
	color: #ffffff;
}

.vinduer24-home-cta-box::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px);
	background-size: 36px 36px;
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.75), transparent 100%);
	pointer-events: none;
}

.vinduer24-home-cta-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) auto;
	gap: 1.5rem;
	align-items: center;
}

.vinduer24-home-cta-box h2,
.vinduer24-home-cta-box p,
.vinduer24-home-cta-box a {
	color: #ffffff;
}

.vinduer24-home-cta-box p {
	margin: 1rem 0 0;
	max-width: 42rem;
	color: rgba(255, 255, 255, 0.82);
}

.vinduer24-home-contact-inline {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem 1.2rem;
	margin-top: 1.2rem;
	padding: 0;
	list-style: none;
}

.vinduer24-home-contact-inline li {
	color: rgba(255, 255, 255, 0.82);
}

@media all and (max-width: 1660px) {
	.vinduer24-home-hero-grid {
		grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
		gap: 1.35rem;
	}

	.vinduer24-home-hero-offer {
		--hero-offer-gap: 0rem;
		--hero-offer-per-view: 1;
	}

	.vinduer24-home-hero-stage {
		min-height: 22.8rem;
	}
}

@media all and (max-width: 1200px) {
	.vinduer24-home-hero-grid {
		grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
		gap: 1.1rem;
	}

	.vinduer24-home-hero {
		min-height: auto;
		padding: 2.2rem 0 1.8rem;
	}

	.vinduer24-home-hero-stage {
		min-height: 24.8rem;
		justify-content: center;
	}

	.vinduer24-home-hero-offer {
		--hero-offer-gap: 0rem;
		--hero-offer-per-view: 1;
		width: 100%;
	}
}

@media all and (max-width: 1024px) {
	.vinduer24-home-products-head,
	.vinduer24-home-process-head,
	.vinduer24-home-story-grid,
	.vinduer24-home-story-detail-grid,
	.vinduer24-home-story-reason-grid,
	.vinduer24-home-concerns-box,
	.vinduer24-home-cta-grid {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-products-grid,
	.vinduer24-home-process-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

		.vinduer24-home-story-facts {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

	.vinduer24-home-hero {
		padding: 2rem 0 1.7rem;
	}

	.vinduer24-home-concerns-figure {
		min-height: 280px;
	}

	.vinduer24-home-hero-stage {
		min-height: 22.8rem;
		padding: 0.9rem;
	}

	.vinduer24-home-hero-offer {
		--hero-offer-gap: 0rem;
		--hero-offer-per-view: 1;
		width: 100%;
	}

	.vinduer24-home-hero-copy h1 {
		font-size: clamp(2.55rem, 5.1vw, 3.7rem);
		max-width: 9.2ch;
	}

	.vinduer24-home-hero-copy .vinduer24-home-lead,
	.vinduer24-home-hero-trust {
		max-width: 28rem;
	}

	.vinduer24-home-hero-trust li {
		font-size: 0.94rem;
	}
}

@media all and (max-width: 767px) {
	.vinduer24-home-faq-grid {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-concerns-grid {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-story-facts {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-story-support {
		padding: 1.2rem;
	}

	.vinduer24-home-story-detail-grid {
		padding: 1.35rem;
		border-radius: 28px;
	}

	.vinduer24-home-story-reason-grid {
		align-items: start;
	}

	.vinduer24-home-story-support-reason,
	.vinduer24-home-story-reason-figure {
		min-height: 380px;
	}

	.vinduer24-home-hero {
		padding: 1.7rem 0 1.45rem;
	}

	.vinduer24-home-shell {
		width: min(100% - 1.2rem, 1310px);
	}

	.vinduer24-home-hero-grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.vinduer24-home-hero-copy h1 {
		font-size: 2.25rem;
		line-height: 0.92;
		max-width: 11ch;
	}

	.vinduer24-home-hero-copy .vinduer24-home-lead {
		font-size: 1rem;
	}

	.vinduer24-home-button,
	.vinduer24-home-chip-link {
		width: 100%;
	}

	.vinduer24-home-hero-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.vinduer24-home-products-grid,
	.vinduer24-home-process-grid {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-hero-meta {
		font-size: 0.92rem;
	}

	.vinduer24-home-hero-stage {
		min-height: 22rem;
		padding: 0.8rem;
	}

	.vinduer24-home-hero-offer {
		width: 100%;
		padding: 0;
	}

	.vinduer24-home-hero-offer-head {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.72rem;
		padding: 0 0 0.72rem;
	}

	.vinduer24-home-hero-offer-arrow {
		width: 36px;
		height: 36px;
	}

	.vinduer24-home-hero-offer-nav {
		width: 100%;
		justify-content: flex-start;
	}

	.vinduer24-home-category-eyebrow {
		white-space: normal;
	}

	.vinduer24-home-hero-offer-track {
		gap: 0;
	}

	.vinduer24-home-hero-offer-slide {
		flex-basis: 100%;
		padding: 0.85rem;
	}

	.vinduer24-home-hero-offer h2 {
		font-size: 1.28rem;
	}

	.vinduer24-home-hero-offer-media {
		min-height: 170px;
		padding: 0.7rem;
	}

	.vinduer24-home-hero-offer-media img {
		max-height: 142px;
	}

	.vinduer24-home-concerns-box,
	.vinduer24-home-cta-box {
		padding: 1.4rem;
	}

	.vinduer24-home-concerns-figure {
		min-height: 220px;
		border-radius: 24px;
	}

	.vinduer24-home-concern-card-head {
		gap: 0.75rem;
	}

	.vinduer24-home-concern-card-icon {
		width: 2.7rem;
		height: 2.7rem;
		border-radius: 16px;
	}

		.vinduer24-home-story,
		.vinduer24-home-story-detail,
		.vinduer24-home-story-reason,
		.vinduer24-home-products,
		.vinduer24-home-process,
		.vinduer24-home-concerns,
		.vinduer24-home-faq {
			padding-top: 3.2rem;
	}

	.vinduer24-home-faq {
		padding-bottom: 3.2rem;
	}

	.vinduer24-home-products-head,
	.vinduer24-home-process-head {
		margin-bottom: 1.4rem;
	}

	.vinduer24-home-products-showcase {
		gap: 1.15rem;
	}

	.vinduer24-home-product-showcase {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-product-showcase.is-reversed {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-product-showcase.is-reversed .vinduer24-home-product-scene,
	.vinduer24-home-product-showcase.is-reversed .vinduer24-home-product-panel {
		order: initial;
	}

	.vinduer24-home-product-scene,
	.vinduer24-home-product-panel {
		min-height: auto;
		border-radius: 28px;
	}

	.vinduer24-home-product-scene {
		min-height: 300px;
	}

	.vinduer24-home-product-scene-caption {
		padding: 1.2rem;
		gap: 0.75rem;
	}

	.vinduer24-home-product-scene-caption h3 {
		max-width: 18ch;
		font-size: 1.3rem;
	}

	.vinduer24-home-product-scene-caption p {
		font-size: 0.95rem;
		line-height: 1.65;
	}

	.vinduer24-home-product-scene-points {
		flex-direction: column;
	}

	.vinduer24-home-product-scene-points li {
		border-radius: 18px;
		font-size: 0.9rem;
	}

	.vinduer24-home-product-panel {
		padding: 1rem;
		margin-right: 0;
		margin-left: 0;
	}

	.vinduer24-home-product-panel .vinduer24-home-product-card {
		max-width: none;
	}

	.vinduer24-home-story-visual figure {
		min-height: 320px;
	}

	.vinduer24-home-watermarked-figure::after {
		right: 0.95rem;
		bottom: 0.95rem;
		width: 6.25rem;
		height: 2.7rem;
	}

	.vinduer24-home-figure-watermark {
		right: 1.22rem;
		bottom: 1.15rem;
		width: 5.45rem;
	}

		.vinduer24-home-story-note-list li {
			width: 100%;
			justify-content: center;
			text-align: center;
		}

		.vinduer24-home-story-detail-grid {
			padding: 1.1rem;
		}

		.vinduer24-home-story-detail-figure {
			min-height: 220px;
			border-radius: 24px;
		}

		.vinduer24-home-story-reason-figure {
			min-height: 220px;
			border-radius: 24px;
		}

		.vinduer24-home-story-support-reason {
			min-height: auto;
			padding: 1.25rem;
		}

		.vinduer24-home-story-support h3 {
			font-size: 1.2rem;
		}
	}

.page.vinduer24-romningsvindu-template .content-area,
.page.vinduer24-romningsvindu-template .site-main {
	margin: 0;
	padding: 0;
}

.page.vinduer24-romningsvindu-template {
	background:
		radial-gradient(circle at top right, rgba(13, 52, 82, 0.08), transparent 24%),
		linear-gradient(180deg, #f4f7fa 0%, #ffffff 28%, #f6f8fb 100%);
}

.vinduer24-romnings-page {
	padding-bottom: clamp(3.5rem, 6vw, 5.5rem);
	color: #143247;
}

.vinduer24-romnings-shell {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 clamp(1.25rem, 3vw, 2rem);
}

.vinduer24-romnings-hero {
	position: relative;
	padding: clamp(1.4rem, 2.8vw, 2.4rem) 0 clamp(2.2rem, 3.6vw, 3.2rem);
	overflow: clip;
}

.vinduer24-romnings-hero::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 100%;
	background:
		radial-gradient(circle at top left, rgba(255, 255, 255, 0.14), transparent 24%),
		linear-gradient(135deg, #0b2a42 0%, #103d5e 52%, #0a2236 100%);
	pointer-events: none;
}

.vinduer24-romnings-hero::after {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 100%;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px);
	background-size: 44px 44px;
	opacity: 0.42;
	pointer-events: none;
}

.vinduer24-romnings-hero-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
	gap: clamp(1.2rem, 2.8vw, 2.2rem);
	align-items: center;
}

.vinduer24-romnings-hero-copy,
.vinduer24-romnings-hero-stage {
	animation: vinduer24FadeUp 0.7s ease both;
}

.vinduer24-romnings-hero-stage {
	animation-delay: 0.12s;
}

.vinduer24-romnings-eyebrow,
.vinduer24-romnings-section-label,
.vinduer24-romnings-card-label,
.vinduer24-romnings-product-kicker {
	margin: 0 0 0.72rem;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.vinduer24-romnings-eyebrow {
	color: rgba(217, 231, 240, 0.82);
}

.vinduer24-romnings-hero h1 {
	margin: 0;
	max-width: 11ch;
	font-size: clamp(2rem, 3.85vw, 3.6rem);
	line-height: 0.98;
	letter-spacing: -0.04em;
	color: #ffffff;
}

.vinduer24-romnings-lead {
	max-width: 37rem;
	margin: 0.95rem 0 0;
	font-size: 0.98rem;
	line-height: 1.66;
	color: rgba(219, 231, 239, 0.9);
}

.vinduer24-romnings-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.82rem;
	margin-top: 1.3rem;
}

.vinduer24-romnings-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3rem;
	padding: 0.78rem 1.22rem;
	border-radius: 999px;
	font-weight: 700;
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.vinduer24-romnings-actions a.is-primary {
	background: linear-gradient(135deg, #ffffff 0%, #edf4f9 100%);
	color: #10324a;
	box-shadow: 0 26px 48px -30px rgba(5, 14, 22, 0.48);
}

.vinduer24-romnings-actions a.is-secondary {
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.08);
	color: #ffffff;
	backdrop-filter: blur(10px);
}

.vinduer24-romnings-actions a:hover,
.vinduer24-romnings-actions a:focus-visible,
.vinduer24-romnings-product-card:hover,
.vinduer24-romnings-product-card:focus-within {
	transform: translateY(-2px);
}

.vinduer24-romnings-hero-support {
	max-width: 42rem;
	margin: 1rem 0 0;
	font-size: 0.93rem;
	line-height: 1.7;
	color: rgba(226, 236, 243, 0.86);
}

.vinduer24-romnings-hero-stage {
	position: relative;
}

.vinduer24-romnings-hero-visual {
	position: relative;
	margin: 0;
	overflow: hidden;
	border-radius: 2rem;
	border: 1px solid rgba(255, 255, 255, 0.14);
	box-shadow: 0 38px 70px -48px rgba(5, 14, 22, 0.72);
}

.vinduer24-romnings-hero-visual::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 42%;
	background: linear-gradient(180deg, rgba(8, 23, 36, 0) 0%, rgba(8, 23, 36, 0.46) 100%);
	pointer-events: none;
}

.vinduer24-romnings-hero-visual img {
	display: block;
	width: 100%;
	height: clamp(240px, 24vw, 340px);
	object-fit: cover;
}

.vinduer24-romnings-hero-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.8rem;
	margin-top: 0.8rem;
	padding-inline: 0;
	position: relative;
	z-index: 1;
}

.vinduer24-romnings-hero-fact,
.vinduer24-romnings-requirement,
.vinduer24-romnings-use-case,
.vinduer24-romnings-process-step,
.vinduer24-romnings-faq-item,
.vinduer24-romnings-cta-panel,
.vinduer24-romnings-comparison,
.vinduer24-romnings-product-card {
	border: 1px solid rgba(13, 52, 82, 0.08);
	border-radius: 1.55rem;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 28px 50px -42px rgba(13, 52, 82, 0.28);
}

.vinduer24-romnings-hero-fact {
	padding: 0.86rem 0.95rem;
	background: rgba(255, 255, 255, 0.95);
}

.vinduer24-romnings-hero-fact span {
	display: block;
	margin-bottom: 0.28rem;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #688195;
}

.vinduer24-romnings-hero-fact strong {
	display: block;
	font-size: 0.96rem;
	line-height: 1.38;
	color: #12354e;
}

.vinduer24-romnings-hero-fact p {
	margin: 0.22rem 0 0;
	font-size: 0.86rem;
	line-height: 1.48;
	color: #5a7182;
}

.vinduer24-romnings-section {
	padding: clamp(3rem, 5vw, 5rem) 0 0;
}

.vinduer24-romnings-section-intro {
	padding-bottom: clamp(2.6rem, 4.6vw, 4rem);
}

.vinduer24-romnings-section-contrast {
	padding-block: clamp(3rem, 5vw, 5rem);
	background:
		radial-gradient(circle at top right, rgba(18, 75, 117, 0.08), transparent 28%),
		linear-gradient(180deg, rgba(241, 246, 250, 0.92) 0%, rgba(252, 253, 255, 0.98) 100%);
}

.vinduer24-romnings-section-soft {
	padding-block: clamp(3rem, 5vw, 5rem);
	background:
		radial-gradient(circle at top left, rgba(13, 52, 82, 0.06), transparent 24%),
		linear-gradient(180deg, rgba(247, 250, 252, 0.98) 0%, rgba(240, 245, 249, 0.92) 100%);
}

.vinduer24-romnings-section-head {
	max-width: 50rem;
	margin-bottom: 1.9rem;
}

.vinduer24-romnings-section-label,
.vinduer24-romnings-card-label,
.vinduer24-romnings-product-kicker {
	color: #668194;
}

.vinduer24-romnings-section-head h2,
.vinduer24-romnings-cta-copy h2 {
	margin: 0;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.04;
	letter-spacing: -0.035em;
	color: #12354e;
}

.vinduer24-romnings-section-head p,
.vinduer24-romnings-guidance-copy p,
.vinduer24-romnings-cta-copy p {
	margin: 1rem 0 0;
	font-size: 1rem;
	line-height: 1.82;
	color: #546c7e;
}

.vinduer24-romnings-requirements,
.vinduer24-romnings-process,
.vinduer24-romnings-faq-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.1rem;
}

.vinduer24-romnings-requirement,
.vinduer24-romnings-use-case,
.vinduer24-romnings-process-step,
.vinduer24-romnings-faq-item {
	padding: 1.4rem;
}

.vinduer24-romnings-requirement h3,
.vinduer24-romnings-use-case h3,
.vinduer24-romnings-process-step h3,
.vinduer24-romnings-faq-item h3,
.vinduer24-romnings-comparison-head h3 {
	margin: 0;
	font-size: 1.12rem;
	line-height: 1.4;
	color: #143247;
}

.vinduer24-romnings-requirement p,
.vinduer24-romnings-use-case p,
.vinduer24-romnings-process-step p,
.vinduer24-romnings-faq-item p {
	margin: 0.75rem 0 0;
	font-size: 0.96rem;
	line-height: 1.75;
	color: #5b7283;
}

.vinduer24-romnings-guidance-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
	gap: clamp(1.2rem, 3vw, 2rem);
	align-items: start;
}

.vinduer24-romnings-checklist {
	display: grid;
	gap: 0.7rem;
	margin: 1.3rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-romnings-checklist li {
	position: relative;
	padding-left: 1.55rem;
	color: #1c415c;
	line-height: 1.65;
}

.vinduer24-romnings-checklist li::before,
.vinduer24-romnings-product-benefits li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.58rem;
	width: 0.56rem;
	height: 0.56rem;
	border-radius: 999px;
	background: #2ba46d;
	box-shadow: 0 0 0 0.22rem rgba(43, 164, 109, 0.14);
}

.vinduer24-romnings-use-cases {
	display: grid;
	gap: 1rem;
}

.vinduer24-romnings-product-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.2rem;
}

.vinduer24-romnings-product-card {
	display: grid;
	grid-template-rows: auto 1fr;
	overflow: hidden;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.vinduer24-romnings-product-media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 11;
	padding: clamp(1rem, 2vw, 1.6rem);
	background:
		radial-gradient(circle at top, rgba(255, 255, 255, 0.72), transparent 52%),
		linear-gradient(180deg, #dfeaf3 0%, #f8fbfd 100%);
	text-decoration: none;
}

.vinduer24-romnings-product-media img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: clamp(240px, 28vw, 320px);
	object-fit: contain;
	object-position: center;
}

.vinduer24-romnings-product-sale-pill,
.vinduer24-romnings-product-sale-corner {
	position: absolute;
	z-index: 2;
	pointer-events: none;
}

.vinduer24-romnings-product-sale-pill {
	right: 1rem;
	top: 1rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.25rem;
	padding: 0.42rem 0.82rem;
	border-radius: 0.7rem;
	background: #143f61;
	color: #ffffff;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	box-shadow: 0 18px 34px -26px rgba(8, 26, 40, 0.72);
}

.vinduer24-romnings-product-sale-corner {
	left: 1rem;
	top: 1rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.1rem;
	padding: 0.32rem 0.88rem 0.32rem 1rem;
	border-radius: 0.75rem;
	background: linear-gradient(135deg, #f4333b 0%, #cf171f 100%);
	color: #ffffff;
	font-size: 0.8rem;
	font-weight: 800;
	line-height: 1.1;
	text-align: center;
	letter-spacing: 0.06em;
	white-space: nowrap;
	clip-path: polygon(0.62rem 0, 100% 0, 100% 100%, 0 100%, 0 0.62rem);
	box-shadow: 0 18px 34px -26px rgba(109, 10, 14, 0.72);
}

.vinduer24-romnings-product-body {
	display: flex;
	flex-direction: column;
	padding: 1.3rem;
}

.vinduer24-romnings-product-meta,
.vinduer24-romnings-product-footer,
.vinduer24-romnings-comparison-head,
.vinduer24-romnings-comparison-row,
.vinduer24-romnings-cta {
	display: grid;
}

.vinduer24-romnings-product-meta {
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.8rem;
	align-items: center;
}

.vinduer24-romnings-product-kicker {
	margin: 0;
}

.vinduer24-home-product-stock.vinduer24-romnings-product-stock {
	margin: 0;
	font-size: 0.88rem;
}

.vinduer24-romnings-product-footer .vinduer24-home-price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.45rem;
}

.vinduer24-romnings-product-footer .vinduer24-home-price del {
	color: #8a98a6;
	font-size: 0.9rem;
	font-weight: 600;
	text-decoration-thickness: 2px;
	text-decoration-color: rgba(138, 152, 166, 0.82);
}

.vinduer24-romnings-product-footer .vinduer24-home-price ins {
	color: #12354e;
	font-weight: 800;
	text-decoration: none;
}

.vinduer24-romnings-product-body h3 {
	margin: 0.15rem 0 0;
	font-size: 1.45rem;
	line-height: 1.15;
	letter-spacing: -0.03em;
}

.vinduer24-romnings-product-body h3 a {
	color: #12354e;
	text-decoration: none;
}

.vinduer24-romnings-product-copy {
	margin: 0.8rem 0 0;
	font-size: 0.98rem;
	line-height: 1.78;
	color: #577081;
}

.vinduer24-romnings-product-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.8rem;
	margin-top: 1rem;
}

.vinduer24-romnings-product-facts dt {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #6a8090;
}

.vinduer24-romnings-product-facts dd {
	margin: 0.22rem 0 0;
	font-size: 0.92rem;
	line-height: 1.6;
	color: #173a53;
}

.vinduer24-romnings-product-benefits {
	display: grid;
	gap: 0.65rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-romnings-product-benefits li {
	position: relative;
	padding-left: 1.55rem;
	color: #20445e;
	line-height: 1.6;
}

.vinduer24-romnings-product-note {
	margin: 1rem 0 0;
	padding: 0.92rem 1rem;
	border-radius: 1rem;
	background: #f0f6fa;
	color: #37566f;
	font-size: 0.92rem;
	line-height: 1.65;
}

.vinduer24-romnings-product-footer {
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.8rem;
	align-items: center;
	margin-top: auto;
	padding-top: 1.15rem;
}

.vinduer24-romnings-product-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.9rem;
	padding: 0.72rem 1.1rem;
	border-radius: 999px;
	background: linear-gradient(135deg, #0d3452 0%, #124b75 100%);
	color: #ffffff;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 22px 42px -32px rgba(13, 52, 82, 0.42);
}

.vinduer24-romnings-comparison {
	overflow: hidden;
}

.vinduer24-romnings-comparison-head,
.vinduer24-romnings-comparison-row {
	grid-template-columns: minmax(180px, 0.75fr) minmax(0, 1fr) minmax(0, 1fr);
}

.vinduer24-romnings-comparison-head {
	background: linear-gradient(180deg, rgba(240, 246, 250, 0.96) 0%, rgba(255, 255, 255, 0.96) 100%);
}

.vinduer24-romnings-comparison-head > div,
.vinduer24-romnings-comparison-row > div {
	padding: 1rem 1.15rem;
}

.vinduer24-romnings-comparison-row {
	border-top: 1px solid rgba(13, 52, 82, 0.08);
}

.vinduer24-romnings-comparison-row > div {
	font-size: 0.96rem;
	line-height: 1.72;
	color: #577081;
}

.vinduer24-romnings-comparison-row > div:not(:first-child),
.vinduer24-romnings-comparison-head > div:not(:first-child) {
	border-left: 1px solid rgba(13, 52, 82, 0.08);
}

.vinduer24-romnings-comparison-label {
	font-weight: 700;
	color: #143247;
}

.vinduer24-romnings-process-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	margin-bottom: 1rem;
	border-radius: 999px;
	background: linear-gradient(135deg, #0d3452 0%, #124b75 100%);
	color: #ffffff;
	font-weight: 800;
	letter-spacing: 0.06em;
}

.vinduer24-romnings-cta-minimal {
	max-width: 52rem;
	margin: 0 auto;
	padding: clamp(1.8rem, 4vw, 2.8rem);
	border: 1px solid rgba(13, 52, 82, 0.08);
	border-radius: 1.7rem;
	background:
		radial-gradient(circle at top left, rgba(18, 75, 117, 0.08), transparent 28%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(246, 249, 252, 0.96) 100%);
	box-shadow: 0 28px 50px -42px rgba(13, 52, 82, 0.28);
	text-align: center;
}

.vinduer24-romnings-cta-minimal h2 {
	margin: 0;
	font-size: clamp(1.9rem, 3.6vw, 2.8rem);
	line-height: 1.05;
	letter-spacing: -0.035em;
	color: #12354e;
}

.vinduer24-romnings-cta-lead {
	max-width: 42rem;
	margin: 0.95rem auto 0;
	font-size: 1rem;
	line-height: 1.78;
	color: #546c7e;
}

.vinduer24-romnings-cta-minimal .vinduer24-romnings-actions {
	justify-content: center;
}

.vinduer24-romnings-cta-minimal .vinduer24-romnings-actions a.is-primary {
	background: linear-gradient(135deg, #0d3452 0%, #124b75 100%);
	color: #ffffff;
	box-shadow: 0 22px 42px -32px rgba(13, 52, 82, 0.42);
}

.vinduer24-romnings-cta-minimal .vinduer24-romnings-actions a.is-secondary {
	border: 1px solid rgba(13, 52, 82, 0.14);
	background: rgba(13, 52, 82, 0.04);
	color: #10324a;
	backdrop-filter: none;
}

.vinduer24-romnings-cta-note {
	margin: 1rem 0 0;
	font-size: 0.94rem;
	line-height: 1.65;
	color: #6a8090;
}

.vinduer24-availability.is-in-stock,
.vinduer24-home-product-stock.is-in-stock {
	color: #1b7b50;
}

.vinduer24-availability.is-on-request,
.vinduer24-home-product-stock.is-on-request {
	color: #c58a11;
}

.vinduer24-availability.is-out-of-stock,
.vinduer24-home-product-stock.is-out-of-stock {
	color: #b34343;
}

.stock.vinduer24-availability {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-weight: 600;
}

.stock.vinduer24-availability::before {
	content: "";
	display: inline-flex;
	width: 0.62rem;
	height: 0.62rem;
	border-radius: 999px;
	flex: 0 0 auto;
	background: currentColor;
	box-shadow: 0 0 0 0.22rem color-mix(in srgb, currentColor 16%, transparent);
}

.vinduer24-home-product-stock span {
	display: inline-flex;
	width: 0.62rem;
	height: 0.62rem;
	margin-right: 0.5rem;
	border-radius: 999px;
	background: currentColor;
	box-shadow: 0 0 0 0.22rem color-mix(in srgb, currentColor 16%, transparent);
}

@keyframes vinduer24FadeUp {
	from {
		opacity: 0;
		transform: translateY(22px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media all and (max-width: 1024px) {
	.vinduer24-romnings-hero-grid,
	.vinduer24-romnings-guidance-grid,
	.vinduer24-romnings-product-grid,
	.vinduer24-romnings-requirements,
	.vinduer24-romnings-process,
	.vinduer24-romnings-faq-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.vinduer24-romnings-comparison-head,
	.vinduer24-romnings-comparison-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.vinduer24-romnings-comparison-row > div:not(:first-child),
	.vinduer24-romnings-comparison-head > div:not(:first-child) {
		border-left: 0;
		border-top: 1px solid rgba(13, 52, 82, 0.08);
	}

	.vinduer24-romnings-comparison-label {
		background: rgba(240, 246, 250, 0.96);
	}

	.vinduer24-romnings-hero h1 {
		max-width: 14ch;
	}

	.vinduer24-romnings-hero-facts {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media all and (max-width: 767px) {
	.vinduer24-romnings-hero {
		padding-top: 1.2rem;
	}

	.vinduer24-romnings-hero h1 {
		max-width: 100%;
		font-size: clamp(2rem, 9vw, 3rem);
	}

	.vinduer24-romnings-hero-visual img {
		height: clamp(220px, 62vw, 310px);
	}

	.vinduer24-romnings-lead,
	.vinduer24-romnings-section-head p,
	.vinduer24-romnings-guidance-copy p,
	.vinduer24-romnings-cta-copy p,
	.vinduer24-romnings-requirement p,
	.vinduer24-romnings-use-case p,
	.vinduer24-romnings-process-step p,
	.vinduer24-romnings-faq-item p {
		line-height: 1.72;
	}

	.vinduer24-romnings-hero-support,
	.vinduer24-romnings-actions a,
	.vinduer24-romnings-product-cta {
		width: 100%;
	}

	.vinduer24-romnings-product-sale-pill {
		right: 0.8rem;
		top: 0.8rem;
	}

	.vinduer24-romnings-product-sale-corner {
		left: 0.8rem;
		top: 0.8rem;
		min-height: 1.95rem;
		padding: 0.3rem 0.78rem 0.3rem 0.9rem;
		font-size: 0.76rem;
	}

	.vinduer24-romnings-product-media {
		aspect-ratio: 4 / 3;
	}

	.vinduer24-romnings-product-meta,
	.vinduer24-romnings-product-footer,
	.vinduer24-romnings-product-facts {
		grid-template-columns: minmax(0, 1fr);
	}

	.vinduer24-romnings-product-body h3 {
		font-size: 1.28rem;
	}

	.vinduer24-romnings-cta-minimal {
		padding: 1.5rem 1.1rem;
	}
}

.page.vinduer24-product-category-template .content-area,
.page.vinduer24-product-category-template .site-main {
	margin: 0;
	padding: 0;
}

.page.vinduer24-product-category-template .content-container.site-container {
	display: block;
	max-width: none;
	padding: 0;
}

.page.vinduer24-product-category-template {
	background:
		radial-gradient(circle at top right, rgba(13, 52, 82, 0.08), transparent 24%),
		linear-gradient(180deg, #f4f7fa 0%, #ffffff 30%, #f6f8fb 100%);
}

.vinduer24-category-page {
	--v24-category-hero-start: #0b2a42;
	--v24-category-hero-mid: #103d5e;
	--v24-category-hero-end: #0a2236;
	--v24-category-accent: #124b75;
	--v24-category-accent-strong: #0d3452;
	--v24-category-accent-soft: rgba(18, 75, 117, 0.1);
	--v24-category-highlight: #2ba46d;
	--v24-category-highlight-shadow: rgba(43, 164, 109, 0.14);
	--v24-category-surface-start: rgba(255, 255, 255, 0.98);
	--v24-category-surface-end: rgba(244, 248, 252, 0.98);
	--v24-category-card-start: rgba(255, 255, 255, 0.98);
	--v24-category-card-end: rgba(246, 249, 252, 0.96);
	--v24-category-border: rgba(13, 52, 82, 0.08);
	padding-bottom: clamp(3.5rem, 6vw, 5.5rem);
	color: #143247;
}

.vinduer24-category-page.is-pvc {
	--v24-category-hero-start: #0b2a42;
	--v24-category-hero-mid: #103d5e;
	--v24-category-hero-end: #0a2236;
	--v24-category-accent: #124b75;
	--v24-category-accent-strong: #0d3452;
	--v24-category-accent-soft: rgba(18, 75, 117, 0.1);
	--v24-category-highlight: #2ba46d;
	--v24-category-highlight-shadow: rgba(43, 164, 109, 0.14);
}

.vinduer24-category-page.is-tre {
	--v24-category-hero-start: #4a3425;
	--v24-category-hero-mid: #6a4931;
	--v24-category-hero-end: #352318;
	--v24-category-accent: #9b5e35;
	--v24-category-accent-strong: #6f4327;
	--v24-category-accent-soft: rgba(155, 94, 53, 0.12);
	--v24-category-highlight: #c58a4b;
	--v24-category-highlight-shadow: rgba(197, 138, 75, 0.16);
	--v24-category-surface-start: rgba(255, 252, 249, 0.98);
	--v24-category-surface-end: rgba(248, 243, 238, 0.98);
	--v24-category-card-start: rgba(255, 252, 249, 0.98);
	--v24-category-card-end: rgba(248, 243, 238, 0.96);
}

.vinduer24-category-page.is-tak {
	--v24-category-hero-start: #11283d;
	--v24-category-hero-mid: #184160;
	--v24-category-hero-end: #0e2234;
	--v24-category-accent: #26679b;
	--v24-category-accent-strong: #124b75;
	--v24-category-accent-soft: rgba(38, 103, 155, 0.12);
	--v24-category-highlight: #62b6de;
	--v24-category-highlight-shadow: rgba(98, 182, 222, 0.18);
}

.vinduer24-category-page a {
	text-decoration: none;
}

.vinduer24-category-page [id] {
	scroll-margin-top: 7rem;
}

.vinduer24-category-page img {
	display: block;
	max-width: 100%;
	height: auto;
}

.vinduer24-category-shell {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 clamp(1.25rem, 3vw, 2rem);
}

.vinduer24-category-hero {
	position: relative;
	padding: clamp(1.4rem, 2.8vw, 2.4rem) 0 clamp(2.2rem, 3.6vw, 3.2rem);
	overflow: clip;
}

.vinduer24-category-hero::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 100%;
	background:
		radial-gradient(circle at top left, rgba(255, 255, 255, 0.14), transparent 24%),
		linear-gradient(135deg, var(--v24-category-hero-start) 0%, var(--v24-category-hero-mid) 52%, var(--v24-category-hero-end) 100%);
	pointer-events: none;
}

.vinduer24-category-hero::after {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 100%;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px);
	background-size: 44px 44px;
	opacity: 0.42;
	pointer-events: none;
}

.vinduer24-category-hero-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
	gap: clamp(1.2rem, 2.8vw, 2.2rem);
	align-items: center;
}

.vinduer24-category-hero-copy,
.vinduer24-category-hero-stage {
	animation: vinduer24CategoryFadeUp 0.7s ease both;
}

.vinduer24-category-hero-stage {
	animation-delay: 0.12s;
}

.vinduer24-category-eyebrow,
.vinduer24-category-section-label,
.vinduer24-category-card-label,
.vinduer24-category-product-kicker {
	margin: 0 0 0.72rem;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.vinduer24-category-eyebrow {
	color: rgba(217, 231, 240, 0.82);
}

.vinduer24-category-hero h1 {
	margin: 0;
	max-width: 11.6ch;
	font-size: clamp(2rem, 3.85vw, 3.6rem);
	line-height: 0.98;
	letter-spacing: -0.04em;
	color: #ffffff;
	text-wrap: balance;
}

.vinduer24-category-lead {
	max-width: 38rem;
	margin: 0.95rem 0 0;
	font-size: 0.98rem;
	line-height: 1.7;
	color: rgba(219, 231, 239, 0.9);
}

.vinduer24-category-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.82rem;
	margin-top: 1.3rem;
}

.vinduer24-category-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3rem;
	padding: 0.78rem 1.22rem;
	border-radius: 999px;
	font-weight: 700;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.vinduer24-category-actions a.is-primary {
	background: linear-gradient(135deg, #ffffff 0%, #edf4f9 100%);
	color: var(--v24-category-accent-strong);
	box-shadow: 0 26px 48px -30px rgba(5, 14, 22, 0.48);
}

.vinduer24-category-actions a.is-secondary {
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.08);
	color: #ffffff;
	backdrop-filter: blur(10px);
}

.vinduer24-category-actions a:hover,
.vinduer24-category-actions a:focus-visible,
.vinduer24-category-product-card:hover,
.vinduer24-category-product-card:focus-within {
	transform: translateY(-2px);
}

.vinduer24-category-actions-centered {
	justify-content: center;
}

.vinduer24-category-hero-support {
	max-width: 42rem;
	margin: 1rem 0 0;
	font-size: 0.93rem;
	line-height: 1.7;
	color: rgba(226, 236, 243, 0.86);
}

.vinduer24-category-hero-visual {
	position: relative;
	margin: 0;
	overflow: hidden;
	border-radius: 2rem;
	border: 1px solid rgba(255, 255, 255, 0.14);
	box-shadow: 0 38px 70px -48px rgba(5, 14, 22, 0.72);
	background:
		radial-gradient(circle at top, rgba(255, 255, 255, 0.18), transparent 40%),
		linear-gradient(180deg, rgba(228, 236, 243, 0.95) 0%, rgba(246, 249, 252, 0.98) 100%);
}

.vinduer24-category-hero-visual::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 42%;
	background: linear-gradient(180deg, rgba(8, 23, 36, 0) 0%, rgba(8, 23, 36, 0.34) 100%);
	pointer-events: none;
}

.vinduer24-category-hero-visual img {
	display: block;
	width: 100%;
	height: clamp(280px, 27vw, 390px);
	object-fit: contain;
	object-position: center bottom;
	padding: clamp(0.9rem, 1.8vw, 1.25rem);
}

.vinduer24-category-hero-facts {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.8rem;
	margin-top: 0.8rem;
}

.vinduer24-category-hero-fact,
.vinduer24-category-intro-card,
.vinduer24-category-use-case,
.vinduer24-category-project-copy,
.vinduer24-category-project-card,
.vinduer24-category-process-step,
.vinduer24-category-faq-item,
.vinduer24-category-product-card,
.vinduer24-category-model-card,
.vinduer24-category-cta {
	border: 1px solid var(--v24-category-border);
	border-radius: 1.55rem;
	background: linear-gradient(180deg, var(--v24-category-card-start) 0%, var(--v24-category-card-end) 100%);
	box-shadow: 0 28px 50px -42px rgba(13, 52, 82, 0.28);
}

.vinduer24-category-hero-fact {
	padding: 0.86rem 0.95rem;
	background: rgba(255, 255, 255, 0.95);
}

.vinduer24-category-hero-fact span {
	display: block;
	margin-bottom: 0.28rem;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #688195;
}

.vinduer24-category-hero-fact strong {
	display: block;
	font-size: 0.96rem;
	line-height: 1.38;
	color: #12354e;
}

.vinduer24-category-hero-fact p {
	margin: 0.22rem 0 0;
	font-size: 0.86rem;
	line-height: 1.48;
	color: #5a7182;
}

.vinduer24-category-section {
	padding: clamp(3rem, 5vw, 5rem) 0 0;
}

.vinduer24-category-section-intro {
	padding-bottom: clamp(2.4rem, 4.6vw, 3.8rem);
}

.vinduer24-category-section-contrast {
	padding-block: clamp(3rem, 5vw, 5rem);
	background:
		radial-gradient(circle at top right, var(--v24-category-accent-soft), transparent 28%),
		linear-gradient(180deg, rgba(241, 246, 250, 0.92) 0%, rgba(252, 253, 255, 0.98) 100%);
}

.vinduer24-category-section-soft {
	padding-block: clamp(3rem, 5vw, 5rem);
	background:
		radial-gradient(circle at top left, var(--v24-category-accent-soft), transparent 24%),
		linear-gradient(180deg, rgba(247, 250, 252, 0.98) 0%, rgba(240, 245, 249, 0.92) 100%);
}

.vinduer24-category-section-head {
	max-width: 50rem;
	margin-bottom: 1.9rem;
}

.vinduer24-category-section-label,
.vinduer24-category-card-label,
.vinduer24-category-product-kicker {
	color: #668194;
}

.vinduer24-category-section-head h2,
.vinduer24-category-project-copy h2,
.vinduer24-category-guidance-copy h2,
.vinduer24-category-cta h2 {
	margin: 0;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.04;
	letter-spacing: -0.035em;
	color: #12354e;
	text-wrap: balance;
}

.vinduer24-category-section-head p,
.vinduer24-category-project-copy p,
.vinduer24-category-guidance-copy p,
.vinduer24-category-cta-lead {
	margin: 1rem 0 0;
	font-size: 1rem;
	line-height: 1.82;
	color: #546c7e;
}

.vinduer24-category-intro-grid,
.vinduer24-category-process-grid,
.vinduer24-category-faq-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.1rem;
}

.vinduer24-category-intro-card,
.vinduer24-category-use-case,
.vinduer24-category-process-step,
.vinduer24-category-faq-item,
.vinduer24-category-model-card {
	padding: 1.4rem;
}

.vinduer24-category-intro-card h3,
.vinduer24-category-use-case h3,
.vinduer24-category-project-card h3,
.vinduer24-category-process-step h3,
.vinduer24-category-faq-item h3,
.vinduer24-category-model-card h3 {
	margin: 0;
	font-size: 1.12rem;
	line-height: 1.4;
	color: #143247;
	text-wrap: balance;
}

.vinduer24-category-intro-card p,
.vinduer24-category-use-case p,
.vinduer24-category-project-card p,
.vinduer24-category-process-step p,
.vinduer24-category-faq-item p,
.vinduer24-category-model-card p {
	margin: 0.75rem 0 0;
	font-size: 0.96rem;
	line-height: 1.75;
	color: #5b7283;
}

.vinduer24-category-guidance-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
	gap: clamp(1.2rem, 3vw, 2rem);
	align-items: start;
}

.vinduer24-category-project-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	gap: clamp(1.2rem, 3vw, 2rem);
	align-items: start;
}

.vinduer24-category-project-copy,
.vinduer24-category-project-card {
	padding: 1.45rem;
}

.vinduer24-category-project-copy {
	background:
		radial-gradient(circle at top left, var(--v24-category-accent-soft), transparent 42%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 248, 252, 0.96) 100%);
}

.vinduer24-category-project-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.vinduer24-category-checklist,
.vinduer24-category-product-benefits,
.vinduer24-category-model-points {
	display: grid;
	gap: 0.7rem;
	margin: 1.3rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-category-checklist li,
.vinduer24-category-product-benefits li,
.vinduer24-category-model-points li {
	position: relative;
	padding-left: 1.55rem;
	line-height: 1.65;
	color: #1c415c;
}

.vinduer24-category-checklist li::before,
.vinduer24-category-product-benefits li::before,
.vinduer24-category-model-points li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.58rem;
	width: 0.56rem;
	height: 0.56rem;
	border-radius: 999px;
	background: var(--v24-category-highlight);
	box-shadow: 0 0 0 0.22rem var(--v24-category-highlight-shadow);
}

.vinduer24-category-use-cases,
.vinduer24-category-model-grid {
	display: grid;
	gap: 1rem;
}

.vinduer24-category-product-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 1.2rem;
}

.vinduer24-category-product-card {
	display: grid;
	grid-template-rows: auto 1fr;
	overflow: hidden;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.vinduer24-category-product-media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 11;
	padding: clamp(1rem, 2vw, 1.6rem);
	background:
		radial-gradient(circle at top, rgba(255, 255, 255, 0.72), transparent 52%),
		linear-gradient(180deg, #dfeaf3 0%, #f8fbfd 100%);
}

.vinduer24-category-product-media img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: clamp(240px, 28vw, 320px);
	object-fit: contain;
	object-position: center;
}

.vinduer24-category-product-sale-pill,
.vinduer24-category-product-sale-corner {
	position: absolute;
	z-index: 2;
	pointer-events: none;
}

.vinduer24-category-product-sale-pill {
	right: 1rem;
	top: 1rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.25rem;
	padding: 0.42rem 0.82rem;
	border-radius: 0.7rem;
	background: var(--v24-category-accent-strong);
	color: #ffffff;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	box-shadow: 0 18px 34px -26px rgba(8, 26, 40, 0.72);
}

.vinduer24-category-product-sale-corner {
	left: 1rem;
	top: 1rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.1rem;
	padding: 0.32rem 0.88rem 0.32rem 1rem;
	border-radius: 0.75rem;
	background: linear-gradient(135deg, #f4333b 0%, #cf171f 100%);
	color: #ffffff;
	font-size: 0.8rem;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: 0.06em;
	white-space: nowrap;
	clip-path: polygon(0.62rem 0, 100% 0, 100% 100%, 0 100%, 0 0.62rem);
	box-shadow: 0 18px 34px -26px rgba(109, 10, 14, 0.72);
}

.vinduer24-category-product-body {
	display: flex;
	flex-direction: column;
	padding: 1.3rem;
}

.vinduer24-category-product-meta,
.vinduer24-category-product-footer {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.8rem;
	align-items: center;
}

.vinduer24-category-product-kicker {
	margin: 0;
}

.vinduer24-home-product-stock.vinduer24-category-product-stock {
	margin: 0;
	font-size: 0.88rem;
}

.vinduer24-category-product-body h3 {
	margin: 0.15rem 0 0;
	font-size: 1.38rem;
	line-height: 1.15;
	letter-spacing: -0.03em;
	text-wrap: balance;
}

.vinduer24-category-product-body h3 a {
	color: #12354e;
}

.vinduer24-category-product-copy {
	margin: 0.8rem 0 0;
	font-size: 0.98rem;
	line-height: 1.78;
	color: #577081;
}

.vinduer24-category-product-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.8rem;
	margin-top: 1rem;
}

.vinduer24-category-product-facts dt {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #6a8090;
}

.vinduer24-category-product-facts dd {
	margin: 0.22rem 0 0;
	font-size: 0.92rem;
	line-height: 1.6;
	color: #173a53;
}

.vinduer24-category-product-footer {
	margin-top: auto;
	padding-top: 1.15rem;
}

.vinduer24-category-product-footer .vinduer24-home-price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.45rem;
}

.vinduer24-category-product-footer .vinduer24-home-price del {
	color: #8a98a6;
	font-size: 0.9rem;
	font-weight: 600;
	text-decoration-thickness: 2px;
	text-decoration-color: rgba(138, 152, 166, 0.82);
}

.vinduer24-category-product-footer .vinduer24-home-price ins {
	color: #12354e;
	font-weight: 800;
	text-decoration: none;
}

.vinduer24-category-product-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.9rem;
	padding: 0.72rem 1.1rem;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--v24-category-accent-strong) 0%, var(--v24-category-accent) 100%);
	color: #ffffff;
	font-weight: 700;
	box-shadow: 0 22px 42px -32px rgba(13, 52, 82, 0.42);
}

.vinduer24-category-actions a:hover,
.vinduer24-category-product-cta:hover {
	box-shadow: 0 26px 44px -28px rgba(8, 24, 38, 0.34);
}

.vinduer24-category-actions a:focus-visible,
.vinduer24-category-product-media:focus-visible,
.vinduer24-category-product-body h3 a:focus-visible,
.vinduer24-category-product-cta:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--v24-category-highlight) 78%, white);
	outline-offset: 4px;
	border-radius: 999px;
}

.vinduer24-category-product-body h3 a:focus-visible,
.vinduer24-category-product-media:focus-visible {
	border-radius: 1rem;
}

.vinduer24-category-model-grid {
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.vinduer24-category-process-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	margin-bottom: 1rem;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--v24-category-accent-strong) 0%, var(--v24-category-accent) 100%);
	color: #ffffff;
	font-weight: 800;
	letter-spacing: 0.06em;
}

.vinduer24-category-cta {
	max-width: 52rem;
	margin: 0 auto;
	padding: clamp(1.8rem, 4vw, 2.8rem);
	text-align: center;
	background:
		radial-gradient(circle at top left, var(--v24-category-accent-soft), transparent 28%),
		linear-gradient(180deg, var(--v24-category-surface-start) 0%, var(--v24-category-surface-end) 100%);
}

.vinduer24-category-cta .vinduer24-category-actions {
	justify-content: center;
}

.vinduer24-category-cta .vinduer24-category-actions a.is-primary {
	background: linear-gradient(135deg, var(--v24-category-accent-strong) 0%, var(--v24-category-accent) 100%);
	color: #ffffff;
	box-shadow: 0 22px 42px -28px color-mix(in srgb, var(--v24-category-accent-strong) 46%, transparent);
}

.vinduer24-category-cta .vinduer24-category-actions a.is-secondary {
	border: 1px solid color-mix(in srgb, var(--v24-category-accent-strong) 16%, white);
	background: rgba(255, 255, 255, 0.96);
	color: var(--v24-category-accent-strong);
	box-shadow: 0 18px 34px -30px rgba(12, 36, 56, 0.18);
}

.vinduer24-category-cta .vinduer24-category-actions a.is-primary:hover,
.vinduer24-category-cta .vinduer24-category-actions a.is-primary:focus-visible {
	background: linear-gradient(135deg, color-mix(in srgb, var(--v24-category-accent-strong) 88%, white) 0%, var(--v24-category-accent) 100%);
	color: #ffffff;
}

.vinduer24-category-cta .vinduer24-category-actions a.is-secondary:hover,
.vinduer24-category-cta .vinduer24-category-actions a.is-secondary:focus-visible {
	border-color: color-mix(in srgb, var(--v24-category-accent-strong) 28%, white);
	background: #ffffff;
	color: var(--v24-category-accent-strong);
}

.vinduer24-category-cta h2 {
	margin: 0;
	font-size: clamp(1.9rem, 3.6vw, 2.8rem);
	line-height: 1.05;
	letter-spacing: -0.035em;
	color: #12354e;
}

.vinduer24-category-cta-note {
	margin: 1rem 0 0;
	font-size: 0.94rem;
	line-height: 1.65;
	color: #6a8090;
}

.vinduer24-availability.is-in-stock,
.vinduer24-home-product-stock.is-in-stock {
	color: #1b7b50;
}

.vinduer24-availability.is-on-request,
.vinduer24-home-product-stock.is-on-request {
	color: #c58a11;
}

.vinduer24-availability.is-out-of-stock,
.vinduer24-home-product-stock.is-out-of-stock {
	color: #b34343;
}

.stock.vinduer24-availability {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-weight: 600;
}

.stock.vinduer24-availability::before {
	content: "";
	display: inline-flex;
	width: 0.62rem;
	height: 0.62rem;
	border-radius: 999px;
	flex: 0 0 auto;
	background: currentColor;
	box-shadow: 0 0 0 0.22rem color-mix(in srgb, currentColor 16%, transparent);
}

.vinduer24-home-product-stock span {
	display: inline-flex;
	width: 0.62rem;
	height: 0.62rem;
	margin-right: 0.5rem;
	border-radius: 999px;
	background: currentColor;
	box-shadow: 0 0 0 0.22rem color-mix(in srgb, currentColor 16%, transparent);
}

@keyframes vinduer24CategoryFadeUp {
	from {
		opacity: 0;
		transform: translateY(22px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media all and (max-width: 1024px) {
	.vinduer24-category-hero-grid,
	.vinduer24-category-guidance-grid,
	.vinduer24-category-project-grid,
	.vinduer24-category-intro-grid,
	.vinduer24-category-process-grid,
	.vinduer24-category-faq-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.vinduer24-category-hero h1 {
		max-width: 14ch;
	}

	.vinduer24-category-hero-facts {
		grid-template-columns: minmax(0, 1fr);
	}

	.vinduer24-category-project-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media all and (max-width: 767px) {
	.vinduer24-category-hero {
		padding-top: 1.2rem;
	}

	.vinduer24-category-hero h1 {
		max-width: 100%;
		font-size: clamp(2rem, 9vw, 3rem);
	}

	.vinduer24-category-hero-visual img {
		height: clamp(220px, 62vw, 310px);
	}

	.vinduer24-category-lead,
	.vinduer24-category-section-head p,
	.vinduer24-category-guidance-copy p,
	.vinduer24-category-cta-lead,
	.vinduer24-category-intro-card p,
	.vinduer24-category-use-case p,
	.vinduer24-category-process-step p,
	.vinduer24-category-faq-item p,
	.vinduer24-category-model-card p {
		line-height: 1.72;
	}

	.vinduer24-category-hero-support,
	.vinduer24-category-actions a,
	.vinduer24-category-product-cta {
		width: 100%;
	}

	.vinduer24-category-product-sale-pill {
		right: 0.8rem;
		top: 0.8rem;
	}

	.vinduer24-category-product-sale-corner {
		left: 0.8rem;
		top: 0.8rem;
		min-height: 1.95rem;
		padding: 0.3rem 0.78rem 0.3rem 0.9rem;
		font-size: 0.76rem;
	}

	.vinduer24-category-product-media {
		aspect-ratio: 4 / 3;
	}

	.vinduer24-category-product-meta,
	.vinduer24-category-product-footer,
	.vinduer24-category-product-facts,
	.vinduer24-category-project-cards {
		grid-template-columns: minmax(0, 1fr);
	}

	.vinduer24-category-product-body h3 {
		font-size: 1.28rem;
	}

	.vinduer24-category-cta {
		padding: 1.5rem 1.1rem;
	}
}

body.error404.vinduer24-404-template {
	background:
		radial-gradient(circle at top left, rgba(13, 52, 82, 0.1), transparent 24%),
		linear-gradient(180deg, #f3f7fb 0%, #eef3f8 44%, #ffffff 100%);
}

.error404.vinduer24-404-template .content-area {
	margin: 0;
	padding: 0 0 4.5rem;
}

.error404.vinduer24-404-template .content-container.site-container {
	display: block;
	max-width: none;
	padding: 0;
}

.error404.vinduer24-404-template .site-main,
.error404.vinduer24-404-template .content-wrap {
	padding: 0;
}

.error404.vinduer24-404-template .error {
	margin: 0;
}

.error404.vinduer24-404-template .page-content.entry.content-bg {
	background: transparent;
}

.error404.vinduer24-404-template .entry-content-wrap {
	padding: 0;
}

.vinduer24-404 {
	color: #153046;
}

.vinduer24-404 a {
	text-decoration: none;
}

.vinduer24-404-shell {
	width: min(1240px, calc(100% - 3rem));
	margin: 0 auto;
}

.vinduer24-404-hero {
	padding: 1.25rem 0 1rem;
}

.vinduer24-404-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
	gap: 2rem;
	align-items: stretch;
}

.vinduer24-404-copy {
	position: relative;
	overflow: hidden;
	padding: clamp(2rem, 4vw, 4rem);
	border: 1px solid rgba(13, 52, 82, 0.1);
	border-radius: 34px;
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.18), transparent 28%),
		linear-gradient(140deg, #0d3452 0%, #123e61 54%, #0a2337 100%);
	box-shadow: 0 34px 70px -40px rgba(13, 52, 82, 0.45);
	color: #ffffff;
}

.vinduer24-404-copy::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px),
		linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px);
	background-size: 44px 44px;
	opacity: 0.42;
	pointer-events: none;
}

.vinduer24-404-copy > * {
	position: relative;
	z-index: 1;
}

.vinduer24-404-eyebrow,
.vinduer24-404-panel-eyebrow,
.vinduer24-404-links-label {
	margin: 0 0 0.9rem;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.vinduer24-404-eyebrow {
	color: rgba(255, 255, 255, 0.72);
}

.vinduer24-404-copy h1 {
	margin: 0;
	max-width: 12ch;
	font-family: Archivo, sans-serif;
	font-size: clamp(2.3rem, 4vw, 4.4rem);
	line-height: 0.98;
	color: #ffffff;
}

.vinduer24-404-lead {
	max-width: 34rem;
	margin: 1.2rem 0 0;
	font-size: 1.06rem;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.84);
}

.vinduer24-404-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.9rem;
	margin-top: 1.7rem;
}

.vinduer24-404-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3.3rem;
	padding: 0.9rem 1.4rem;
	border-radius: 999px;
	font-weight: 700;
	line-height: 1.2;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease,
		background-color 0.2s ease,
		color 0.2s ease,
		border-color 0.2s ease;
}

.vinduer24-404-button:hover,
.vinduer24-404-button:focus-visible {
	transform: translateY(-1px);
}

.vinduer24-404-button-primary {
	background: #e70707;
	color: #ffffff;
	box-shadow: 0 18px 34px -22px rgba(231, 7, 7, 0.65);
}

.vinduer24-404-button-primary:hover,
.vinduer24-404-button-primary:focus-visible {
	background: #ff2424;
	color: #ffffff;
}

.vinduer24-404-button-secondary {
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(255, 255, 255, 0.12);
	color: #ffffff;
	backdrop-filter: blur(10px);
}

.vinduer24-404-button-secondary:hover,
.vinduer24-404-button-secondary:focus-visible {
	border-color: rgba(255, 255, 255, 0.32);
	background: rgba(255, 255, 255, 0.18);
	color: #ffffff;
}

.vinduer24-404-trust {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.9rem;
	margin: 2rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-404-trust li {
	padding: 1rem 1.05rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.1);
	font-size: 0.95rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.82);
	backdrop-filter: blur(8px);
}

.vinduer24-404-side {
	display: grid;
	gap: 1.15rem;
}

.vinduer24-404-panel,
.vinduer24-404-search {
	padding: clamp(1.5rem, 3vw, 2rem);
	border: 1px solid rgba(13, 52, 82, 0.08);
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0 30px 58px -42px rgba(13, 52, 82, 0.28);
	backdrop-filter: blur(14px);
}

.vinduer24-404-panel-eyebrow,
.vinduer24-404-links-label {
	color: rgba(12, 50, 81, 0.56);
}

.vinduer24-404-panel h2,
.vinduer24-404-search h2 {
	margin: 0;
	font-family: Archivo, sans-serif;
	font-size: clamp(1.55rem, 2.1vw, 2rem);
	line-height: 1.1;
	color: #102f48;
}

.vinduer24-404-panel p,
.vinduer24-404-search p {
	margin: 0.95rem 0 0;
	color: #5a6c7f;
	line-height: 1.7;
}

.vinduer24-404-link-list {
	display: grid;
	gap: 0.8rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-404-link-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.95rem 1.05rem;
	border: 1px solid rgba(13, 52, 82, 0.08);
	border-radius: 18px;
	background: linear-gradient(180deg, #ffffff 0%, #f7fafc 100%);
	color: #173750;
	font-weight: 700;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease,
		border-color 0.2s ease;
}

.vinduer24-404-link-list a::after {
	content: "→";
	font-size: 1rem;
	color: rgba(12, 50, 81, 0.58);
}

.vinduer24-404-link-list a:hover,
.vinduer24-404-link-list a:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(13, 52, 82, 0.16);
	box-shadow: 0 18px 32px -26px rgba(13, 52, 82, 0.28);
	color: #0f3150;
}

.vinduer24-404-search-form {
	display: grid;
	gap: 0.9rem;
	margin-top: 1.5rem;
}

.vinduer24-404-search-field {
	width: 100%;
	min-height: 3.5rem;
	padding: 0 1.15rem;
	border: 1px solid rgba(13, 52, 82, 0.12);
	border-radius: 18px;
	background: #ffffff;
	color: #153046;
	font-size: 1rem;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.vinduer24-404-search-field:focus {
	border-color: rgba(13, 52, 82, 0.28);
	outline: none;
	box-shadow: 0 0 0 4px rgba(13, 52, 82, 0.08);
}

.vinduer24-404-search-submit {
	justify-self: start;
	border: 0;
	cursor: pointer;
}

.vinduer24-404-links {
	padding: 0.4rem 0 0;
}

.vinduer24-404-links-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.vinduer24-404-links-card {
	padding: 1.4rem;
	border: 1px solid rgba(13, 52, 82, 0.08);
	border-radius: 26px;
	background: rgba(255, 255, 255, 0.72);
	box-shadow: 0 22px 48px -40px rgba(13, 52, 82, 0.2);
	backdrop-filter: blur(12px);
}

.vinduer24-404-links-card h3 {
	margin: 0;
	font-family: Archivo, sans-serif;
	font-size: 1.2rem;
	line-height: 1.2;
	color: #102f48;
}

.vinduer24-404-links-card p {
	margin: 0.8rem 0 0;
	color: #5a6c7f;
	line-height: 1.65;
}

.vinduer24-404-links-card a {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: 1rem;
	font-weight: 700;
	color: #0d3452;
}

.vinduer24-404-links-card a:hover,
.vinduer24-404-links-card a:focus-visible {
	color: #e70707;
}

@media all and (max-width: 1024px) {
	.vinduer24-404-hero-grid,
	.vinduer24-404-links-grid {
		grid-template-columns: 1fr;
	}

	.vinduer24-404-trust {
		grid-template-columns: 1fr;
	}
}

@media all and (max-width: 767px) {
	.error404.vinduer24-404-template .content-area {
		padding-bottom: 3.2rem;
	}

	.vinduer24-404-shell {
		width: min(100% - 1.5rem, 100%);
	}

	.vinduer24-404-hero {
		padding-top: 0.65rem;
	}

	.vinduer24-404-copy,
	.vinduer24-404-panel,
	.vinduer24-404-search,
	.vinduer24-404-links-card {
		border-radius: 24px;
	}

	.vinduer24-404-copy h1 {
		max-width: 11ch;
	}

	.vinduer24-404-actions {
		flex-direction: column;
	}

	.vinduer24-404-button,
	.vinduer24-404-search-submit {
		width: 100%;
	}
}

.page .entry-content > .vinduer24-window-catalog:first-child {
	margin-top: 0;
}

.vinduer24-window-catalog {
	padding: 1.2rem 0 2.5rem;
	color: #153046;
}

.vinduer24-window-catalog-shell {
	width: min(1240px, 100%);
	margin: 0 auto;
}

.vinduer24-window-catalog-head {
	position: relative;
	overflow: hidden;
	padding: 1.45rem 2rem 1.7rem;
	border-radius: 32px;
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.16), transparent 24%),
		linear-gradient(135deg, #0d3452 0%, #103d5e 54%, #0a2236 100%);
	color: #ffffff;
	box-shadow: 0 34px 60px -48px rgba(13, 52, 82, 0.48);
}

.vinduer24-window-catalog-head::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px);
	background-size: 36px 36px;
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.72), transparent 88%);
	pointer-events: none;
}

.vinduer24-window-catalog-head > * {
	position: relative;
	z-index: 1;
}

.vinduer24-window-catalog-eyebrow {
	margin: 0 0 -0.22rem;
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.7);
}

.vinduer24-window-catalog-head h1 {
	margin: 0;
	font-size: clamp(2.4rem, 4vw, 4.5rem);
	line-height: 0.84;
	color: #ffffff;
}

.vinduer24-window-catalog-lead {
	max-width: 46rem;
	margin: 0.85rem 0 0;
	font-size: 1.03rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.82);
}

.vinduer24-window-catalog-highlights {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-window-catalog-highlights li {
	display: inline-flex;
	align-items: center;
	min-height: 2.3rem;
	padding: 0.55rem 0.9rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.14);
	color: #ffffff;
	font-size: 0.83rem;
	font-weight: 700;
	line-height: 1.3;
}

.vinduer24-window-catalog-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1.5rem;
	padding: 1.35rem 1.5rem;
	border-radius: 28px;
	background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 28px 48px -44px rgba(13, 52, 82, 0.28);
}

.vinduer24-window-catalog-comparison,
.vinduer24-window-catalog-guidance {
	margin-top: 1.5rem;
	padding: 1.45rem 1.5rem 1.5rem;
	border-radius: 28px;
	background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 28px 48px -44px rgba(13, 52, 82, 0.22);
}

.vinduer24-window-catalog-section-head {
	display: grid;
	gap: 0.55rem;
	max-width: 52rem;
}

.vinduer24-window-catalog-section-eyebrow {
	margin: 0;
	font-size: 0.77rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #6a7788;
}

.vinduer24-window-catalog-section-head h2 {
	margin: 0;
	font-size: clamp(1.7rem, 2.2vw, 2.4rem);
	line-height: 1.05;
	letter-spacing: -0.03em;
	color: #12314b;
}

.vinduer24-window-catalog-section-head p:last-child {
	margin: 0;
	color: #5b6d7d;
	line-height: 1.72;
}

.vinduer24-window-catalog-comparison-grid,
.vinduer24-window-catalog-guidance-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin-top: 1.2rem;
}

.vinduer24-window-catalog-comparison-card,
.vinduer24-window-catalog-guidance-card {
	display: grid;
	align-content: start;
	gap: 0.8rem;
	padding: 1rem 1rem 1.1rem;
	border-radius: 22px;
	background:
		radial-gradient(circle at top right, rgba(20, 75, 117, 0.08), transparent 34%),
		linear-gradient(180deg, #fdfefe 0%, #f4f8fb 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
}

.vinduer24-window-catalog-card-media {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4.5rem;
	height: 4.5rem;
	margin: 0 0 0.15rem;
	overflow: hidden;
	min-height: 4.5rem;
	border-radius: 18px;
	background: linear-gradient(180deg, #f5f8fb 0%, #eaf0f6 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

.vinduer24-window-catalog-card-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at top, rgba(255, 255, 255, 0.48), transparent 60%),
		linear-gradient(180deg, rgba(10, 25, 39, 0) 0%, rgba(10, 25, 39, 0.05) 100%);
	pointer-events: none;
}

.vinduer24-window-catalog-card-media-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 0.55rem;
	filter: saturate(0.9) contrast(1.02);
}

.vinduer24-window-catalog-comparison-eyebrow,
.vinduer24-window-catalog-guidance-eyebrow {
	margin: 0;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #6f7d8e;
}

.vinduer24-window-catalog-comparison-card h3,
.vinduer24-window-catalog-guidance-card h3 {
	margin: 0;
	font-size: 1.2rem;
	line-height: 1.2;
	color: #12314b;
}

.vinduer24-window-catalog-comparison-meta {
	display: grid;
	gap: 0;
	margin: 0;
}

.vinduer24-window-catalog-comparison-row {
	display: grid;
	grid-template-columns: minmax(110px, 128px) minmax(0, 1fr);
	gap: 0.8rem;
	padding: 0.7rem 0;
	border-top: 1px solid rgba(14, 52, 82, 0.08);
}

.vinduer24-window-catalog-comparison-row:first-child {
	padding-top: 0;
	border-top: 0;
}

.vinduer24-window-catalog-comparison-row dt {
	margin: 0;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6a7788;
}

.vinduer24-window-catalog-comparison-row dd {
	margin: 0;
	color: #23384b;
	line-height: 1.58;
}

.vinduer24-window-catalog-comparison-link,
.vinduer24-window-catalog-guidance-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0.72rem 1rem;
	border-radius: 999px;
	background: #12314b;
	color: #ffffff;
	font-weight: 800;
	text-decoration: none;
	width: fit-content;
	transition: transform 0.2s ease, background-color 0.2s ease;
}

.vinduer24-window-catalog-comparison-link:hover,
.vinduer24-window-catalog-comparison-link:focus-visible,
.vinduer24-window-catalog-guidance-link:hover,
.vinduer24-window-catalog-guidance-link:focus-visible {
	transform: translateY(-1px);
	background: #0d3452;
	color: #ffffff;
}

.vinduer24-window-catalog-comparison-note,
.vinduer24-window-catalog-guidance-note {
	margin: 1rem 0 0;
	color: #5b6d7d;
	line-height: 1.68;
}

.vinduer24-window-catalog-guidance-note a {
	color: #12314b;
	font-weight: 700;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.16em;
}

.vinduer24-window-catalog-guidance-card p:last-of-type {
	margin: 0;
	color: #5b6d7d;
	line-height: 1.68;
}

.vinduer24-window-catalog-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.vinduer24-window-catalog-filter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0.75rem 1.05rem;
	border-radius: 999px;
	background: #e9eff5;
	color: #12314b;
	font-weight: 700;
	text-decoration: none;
	transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.vinduer24-window-catalog-filter:hover,
.vinduer24-window-catalog-filter:focus-visible {
	transform: translateY(-1px);
	background: #dfe7ef;
	color: #12314b;
}

.vinduer24-window-catalog-filter.is-active {
	background: #0d3452;
	color: #ffffff;
}

.vinduer24-window-catalog-sort {
	display: grid;
	gap: 0.5rem;
}

.vinduer24-window-catalog-sort label {
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #667788;
}

.vinduer24-window-catalog-sort select,
.vinduer24-window-catalog-sort button {
	min-height: 46px;
	padding: 0.75rem 0.95rem;
	border-radius: 14px;
	border: 1px solid rgba(14, 52, 82, 0.14);
	background: #ffffff;
	color: #153046;
	font-weight: 600;
}

.vinduer24-window-catalog-summary {
	display: inline-flex;
	align-items: baseline;
	gap: 0.45rem;
	margin-top: 1rem;
	padding: 0.8rem 1rem;
	border-radius: 999px;
	background: rgba(13, 52, 82, 0.06);
	color: #4f6272;
}

.vinduer24-window-catalog-summary strong {
	font-size: 1.08rem;
	color: #12314b;
}

.vinduer24-window-catalog-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.35rem;
	margin-top: 1.5rem;
}

.vinduer24-window-catalog .vinduer24-home-product-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 0.4rem 0.2rem 0.2rem;
	background: transparent;
	border: 0;
	box-shadow: none;
}

.vinduer24-window-catalog .vinduer24-home-product-media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1.18;
	padding: 1.4rem 1rem 1rem;
	background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);
	border-radius: 26px;
	border: 1px solid rgba(14, 52, 82, 0.06);
	overflow: hidden;
}

.vinduer24-window-catalog .vinduer24-home-product-media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform 0.3s ease;
}

.vinduer24-window-catalog .vinduer24-home-product-card:hover .vinduer24-home-product-media img,
.vinduer24-window-catalog .vinduer24-home-product-card:focus-within .vinduer24-home-product-media img {
	transform: scale(1.04);
}

.vinduer24-window-catalog .vinduer24-home-product-badge {
	position: absolute;
	top: 0.9rem;
	left: 0.9rem;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 84px;
	min-height: 84px;
	padding: 0.8rem;
	border-radius: 999px;
	background: #86d7bd;
	color: #ffffff;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1.15;
	text-align: center;
	text-transform: uppercase;
	box-shadow: 0 18px 30px -24px rgba(18, 49, 75, 0.4);
}

.vinduer24-window-catalog .vinduer24-home-product-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1rem 0 0;
}

.vinduer24-window-catalog .vinduer24-home-product-body h3 {
	margin: 0;
	font-size: 1.28rem;
	line-height: 1.2;
	text-transform: uppercase;
}

.vinduer24-window-catalog .vinduer24-home-product-body h3 a {
	color: #3e4651;
	text-decoration: none;
}

.vinduer24-window-catalog .vinduer24-home-product-benefits {
	display: grid;
	gap: 0.35rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-window-catalog .vinduer24-home-product-benefits li {
	position: relative;
	padding-left: 1.35rem;
	color: #3f4a56;
}

.vinduer24-window-catalog .vinduer24-home-product-benefits li::before {
	content: "\2713";
	position: absolute;
	left: 0;
	top: -0.02rem;
	font-size: 1rem;
	font-weight: 700;
	color: #1d2732;
}

.vinduer24-window-catalog .vinduer24-home-product-stock {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	margin: 1rem 0 0;
	color: #4f6272;
	font-size: 0.97rem;
}

.vinduer24-window-catalog .vinduer24-home-product-stock span {
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: currentColor;
	flex: 0 0 auto;
}

.vinduer24-window-catalog .vinduer24-home-product-stock.is-on-request span {
	background: currentColor;
}

.vinduer24-window-catalog .vinduer24-home-product-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-top: auto;
	padding-top: 1rem;
}

.vinduer24-window-catalog .vinduer24-home-price {
	font-size: 1.08rem;
	font-weight: 800;
	color: #3f4651;
}

.wc-block-grid .wc-block-grid__product .wc-block-grid__product-link {
	position: relative;
}

.vinduer24-wc-block-sale-percent {
	position: absolute;
	top: 0.8rem;
	left: 0.8rem;
	z-index: 10;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2rem;
	padding: 0.35rem 0.78rem 0.35rem 0.98rem;
	border-radius: 0.76rem;
	background: linear-gradient(135deg, #f4333b 0%, #cf171f 100%);
	color: #ffffff;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1;
	text-transform: uppercase;
	clip-path: polygon(0.62rem 0, 100% 0, 100% 100%, 0 100%, 0 0.62rem);
	box-shadow: 0 18px 34px -26px rgba(109, 10, 14, 0.58);
	pointer-events: none;
}

.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale.vinduer24-wc-block-sale-pill {
	top: 0.8rem;
	right: 0.8rem;
	padding: 0.45rem 0.82rem;
	border-radius: 0.82rem;
	background: #143f61;
	color: #ffffff;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 18px 30px -24px rgba(18, 49, 75, 0.4);
}

.vinduer24-wc-block-product-price {
	margin: 0 0 1em;
}

.vinduer24-wc-block-price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.45rem;
	font-size: 1rem;
	font-weight: 800;
	color: #12354e;
}

.vinduer24-wc-block-price del {
	color: #8a98a6;
	font-size: 0.88rem;
	font-weight: 600;
	text-decoration-thickness: 2px;
	text-decoration-color: rgba(138, 152, 166, 0.82);
}

.vinduer24-wc-block-price ins {
	color: #12354e;
	font-weight: 800;
	text-decoration: none;
}

.vinduer24-window-catalog .vinduer24-home-product-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 126px;
	min-height: 48px;
	padding: 0.7rem 1rem;
	border-radius: 8px;
	background: #1db954;
	color: #ffffff;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-decoration: none;
	transition: transform 0.2s ease, background-color 0.2s ease;
}

.vinduer24-window-catalog .vinduer24-home-product-cta:hover,
.vinduer24-window-catalog .vinduer24-home-product-cta:focus-visible {
	transform: translateY(-1px);
	background: #16a34a;
	color: #ffffff;
}

@media all and (max-width: 1200px) {
	.vinduer24-window-catalog-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vinduer24-window-catalog-comparison-grid,
	.vinduer24-window-catalog-guidance-grid {
		grid-template-columns: 1fr;
	}
}

@media all and (max-width: 767px) {
	.vinduer24-window-catalog {
		padding-top: 0.6rem;
	}

	.vinduer24-window-catalog-head,
	.vinduer24-window-catalog-toolbar,
	.vinduer24-window-catalog-comparison,
	.vinduer24-window-catalog-guidance {
		padding: 1.25rem;
	}

	.vinduer24-window-catalog-head h1 {
		font-size: 2.4rem;
	}

	.vinduer24-window-catalog-highlights {
		display: grid;
		grid-template-columns: 1fr;
	}

	.vinduer24-window-catalog-filters {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
	}

	.vinduer24-window-catalog-filter,
	.vinduer24-window-catalog-sort select,
	.vinduer24-window-catalog-sort button {
		width: 100%;
	}

	.vinduer24-window-catalog-grid {
		grid-template-columns: 1fr;
	}

	.vinduer24-window-catalog-comparison-row {
		grid-template-columns: 1fr;
		gap: 0.3rem;
	}

	.vinduer24-window-catalog-comparison-link,
	.vinduer24-window-catalog-guidance-link {
		width: 100%;
	}

	.vinduer24-window-catalog-card-media {
		width: 3.9rem;
		height: 3.9rem;
		min-height: 3.9rem;
		border-radius: 16px;
	}
}

body.single-product .content-area {
	margin-top: 1.2rem;
	margin-bottom: 0;
	padding-bottom: 0;
}

body.single-product .content-bg,
body.content-style-unboxed.single-product .site {
	background: linear-gradient(180deg, #f5f7fb 0%, #eef3f8 42%, #e9eff5 100%);
}

body.single-product .site-main,
body.single-product #primary,
body.single-product #main {
	margin-bottom: 0;
	padding-bottom: 0;
}

body.single-product div.product {
	position: relative;
	display: block;
}

body.single-product .vinduer24-product-shell {
	position: relative;
	display: grid;
	grid-template-columns: minmax(380px, 46%) minmax(0, 1fr);
	gap: 2.2rem;
	align-items: start;
}

body.single-product .vinduer24-product-shell > .onsale {
	position: absolute;
	top: 1rem;
	left: 1rem;
	z-index: 3;
	margin: 0;
}

body.single-product .vinduer24-product-shell > style,
body.single-product .vinduer24-product-shell > .kske-thumbnails {
	display: none !important;
}

body.single-product .vinduer24-product-shell .woocommerce-product-gallery,
body.single-product .vinduer24-product-shell .summary.entry-summary {
	margin: 0;
	float: none !important;
	width: auto !important;
	min-width: 0;
	clear: none !important;
}

body.single-product .vinduer24-product-shell > .woocommerce-product-gallery {
	grid-column: 1;
	grid-row: 1;
}

body.single-product .vinduer24-product-shell > .summary.entry-summary {
	grid-column: 2;
	grid-row: 1;
}

body.single-product .vinduer24-product-shell .woocommerce-product-gallery {
	display: flex;
	flex-direction: column;
	padding: 1.5rem;
	border-radius: 32px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 30px 54px -44px rgba(13, 52, 82, 0.24);
	position: sticky !important;
	top: 118px !important;
	width: 100% !important;
	max-width: none !important;
	max-height: min(700px, calc(100svh - 136px));
	align-self: start;
	overflow: hidden;
}

body.single-product .vinduer24-product-shell .summary.entry-summary {
	padding: 1.5rem;
	border-radius: 32px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 30px 54px -44px rgba(13, 52, 82, 0.24);
	width: 100% !important;
	align-self: start;
}

body.single-product .product_image {
	max-width: none !important;
	width: 100% !important;
}

body.single-product .kadence-product-gallery-main,
body.single-product #pg-main-3884,
body.single-product .woocommerce-product-gallery .splide__track,
body.single-product .woocommerce-product-gallery .splide__list {
	width: 100% !important;
}

body.single-product .kadence-product-gallery-main,
body.single-product #pg-main-3884,
body.single-product .woocommerce-product-gallery .product_image {
	flex: 1 1 auto;
	min-height: 0;
}

body.single-product .woocommerce-product-gallery .product_image a,
body.single-product .woocommerce-product-gallery .woo-main-slide a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(320px, calc(100svh - 320px), 520px);
	max-height: clamp(320px, calc(100svh - 320px), 520px);
}

body.single-product .woocommerce-product-gallery .product_image img,
body.single-product .woocommerce-product-gallery .woo-main-slide img {
	width: 100% !important;
	max-width: none !important;
	max-height: clamp(280px, calc(100svh - 360px), 500px);
	height: auto !important;
	object-fit: contain;
	margin: 0 auto;
}

body.single-product .woocommerce-product-gallery .kadence-product-gallery-thumbnails {
	flex: 0 0 auto;
	margin-top: 0.75rem;
}

body.single-product .woocommerce-product-gallery .kt-woo-gallery-thumbnail img {
	border-radius: 14px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	max-height: 78px;
	width: auto;
}

body.single-product .summary.entry-summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.9rem 1rem;
	align-content: start;
	align-items: start;
}

body.single-product .summary.entry-summary > * {
	grid-column: 1 / -1;
}

body.single-product .summary.entry-summary > figure:first-of-type,
body.single-product .summary.entry-summary > .product-brand-image-wrapper {
	grid-column: 1;
	grid-row: 1;
	align-self: center;
	margin: 0;
}

body.single-product .summary.entry-summary > .product-brand-image-wrapper {
	display: inline-flex;
	align-items: center;
}

body.single-product .summary.entry-summary > figure:first-of-type img,
body.single-product .summary.entry-summary > .product-brand-image-wrapper img {
	width: 92px !important;
	height: auto !important;
}

body.single-product .product_title.entry-title {
	margin: 0.25rem 0 0;
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1.02;
	letter-spacing: -0.03em;
	color: #13314c;
}

body.single-product .summary.entry-summary > .price {
	margin: 0.75rem 0 0;
	font-size: 1.2rem;
	font-weight: 800;
	color: #13314c;
}

body.single-product .summary.entry-summary > .price del {
	color: #98a4b1;
}

.vinduer24-product-intro {
	margin-top: 1rem;
	padding: 1.1rem 1.15rem;
	border-radius: 24px;
	background: linear-gradient(180deg, #f5f8fc 0%, #eef3f8 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
}

.vinduer24-product-eyebrow {
	margin: 0;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #6f7d8e;
}

.vinduer24-product-lead {
	margin: 0.7rem 0 0;
	color: #4f6171;
	font-size: 1rem;
	line-height: 1.68;
}

.vinduer24-product-benefits {
	display: grid;
	gap: 0.55rem;
	margin: 0.9rem 0 0;
	padding: 0;
	list-style: none;
}

.vinduer24-product-benefits li {
	position: relative;
	padding-left: 1.2rem;
	color: #1f2a35;
}

.vinduer24-product-benefits li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.62rem;
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: #1db954;
}

body.single-product .summary.entry-summary > .wp-block-kadence-infobox,
body.single-product .summary.entry-summary > p {
	margin-top: 0.8rem;
}

body.single-product .summary.entry-summary > .wp-block-kadence-infobox {
	padding: 0.95rem 1rem;
	border-radius: 18px;
	background: #f7fafc;
	border: 1px solid rgba(14, 52, 82, 0.08);
}

body.single-product .summary.entry-summary > p {
	padding: 0.95rem 1rem;
	border-radius: 18px;
	background: #f7fafc;
	border: 1px solid rgba(14, 52, 82, 0.08);
	color: #17324c;
	line-height: 1.6;
}

body.single-product .summary.entry-summary > p a {
	font-weight: 700;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.18em;
}

body.single-product .summary.entry-summary > p mark {
	background: #fff4a8;
	padding: 0.1em 0.2em;
}

.vinduer24-product-form-intro {
	margin-top: 1.15rem;
	padding: 0 0 0.95rem;
	border-bottom: 1px solid rgba(14, 52, 82, 0.08);
}

.vinduer24-product-form-intro h2 {
	margin: 0;
	font-size: 1.08rem;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #13314c;
}

.vinduer24-product-form-intro p {
	margin: 0.5rem 0 0;
	color: #607181;
	font-size: 0.97rem;
	line-height: 1.6;
}

.vinduer24-product-help-links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.7rem;
	margin-top: 0.9rem;
}

.vinduer24-product-help-link {
	display: grid;
	align-items: center;
	width: 100%;
	padding: 0.85rem 0.95rem;
	border-radius: 16px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 16px 28px -28px rgba(13, 52, 82, 0.28);
	text-align: left;
	font: inherit;
	cursor: pointer;
	text-decoration: none;
	transition:
		transform 0.18s ease,
		box-shadow 0.18s ease,
		border-color 0.18s ease,
		background-color 0.18s ease;
}

.vinduer24-product-help-link:hover,
.vinduer24-product-help-link:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(14, 52, 82, 0.14);
	box-shadow: 0 18px 30px -26px rgba(13, 52, 82, 0.22);
	background: #fdfefe;
	outline: none;
}

.vinduer24-product-help-link-title {
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1.35;
	color: #12314b;
}

body.single-product .vinduer24-unavailable-panel {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.85rem 1rem;
	margin-top: 1.05rem;
	padding: 1rem 1.05rem;
	border-radius: 18px;
	border: 1px solid rgba(179, 67, 67, 0.16);
	background: linear-gradient(180deg, #fffafa 0%, #fff7f7 100%);
}

body.single-product .vinduer24-unavailable-message {
	flex: 1 1 18rem;
	margin: 0;
	color: #b34343;
	font-size: 0.98rem;
	font-weight: 700;
	line-height: 1.45;
}

body.single-product .vinduer24-unavailable-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0.82rem 1.05rem;
	border-radius: 14px;
	background: #e70707;
	color: #ffffff;
	font-size: 0.96rem;
	font-weight: 800;
	line-height: 1.15;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 18px 32px -26px rgba(231, 7, 7, 0.7);
	transition:
		transform 0.18s ease,
		box-shadow 0.18s ease,
		background-color 0.18s ease;
}

body.single-product .vinduer24-unavailable-cta:hover,
body.single-product .vinduer24-unavailable-cta:focus-visible {
	transform: translateY(-1px);
	background: #c90505;
	color: #ffffff;
	box-shadow: 0 20px 34px -24px rgba(231, 7, 7, 0.72);
	outline: none;
}

body.single-product.vinduer24-product-out-of-stock .summary.entry-summary > .wp-block-kadence-modal,
body.single-product.vinduer24-product-out-of-stock .summary.entry-summary > p:empty,
body.single-product.vinduer24-product-out-of-stock form.variations_form {
	display: none !important;
}

body.single-product .summary.entry-summary > p.vinduer24-legacy-help-hidden {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

body.single-product .summary.entry-summary > p:has(a[data-vinduer24-modal-trigger]) {
	display: none !important;
}

body.single-product form.variations_form {
	margin-top: 1rem;
	padding: 1.2rem;
	border-radius: 24px;
	background: #f8fafc;
	border: 1px solid rgba(14, 52, 82, 0.08);
}

body.single-product form.variations_form table.variations th.label {
	padding: 0 0.85rem 0.85rem 0;
	font-size: 0.88rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #456074;
}

body.single-product form.variations_form table.variations td.value {
	padding-bottom: 0.85rem;
}

body.single-product form.variations_form select,
body.single-product form.variations_form .select2-selection,
body.single-product form.variations_form input[type="number"] {
	min-height: 46px;
	border-radius: 12px;
	border: 1px solid rgba(14, 52, 82, 0.14);
	background: #ffffff;
	box-shadow: none;
}

body.single-product form.variations_form .reset_variations {
	display: inline-flex !important;
	align-items: center;
	margin-top: 0.45rem;
	color: #0d3452;
	font-weight: 700;
}

body.single-product .tm-collapse .tm-section-label,
body.single-product .cpf-section .tm-section-label {
	padding: 1rem 1.1rem !important;
	border-radius: 16px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	font-size: 0.92rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em;
	color: #14334d !important;
}

body.single-product .tm-collapse-wrap {
	padding: 0.2rem 0 0.7rem;
}

body.single-product .tm-epo-totals {
	margin-top: 1rem;
	padding: 1rem 1.1rem;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
}

body.single-product.vinduer24-product-has-price-summary .summary.entry-summary > .price {
	display: none !important;
}

body.single-product.vinduer24-product-has-delivery-note .summary.entry-summary > .wp-block-kadence-infobox {
	display: none !important;
}

body.single-product .tm-totals-form-main {
	display: grid;
	grid-template-columns: minmax(0, 5.75rem) minmax(0, 1fr);
	gap: 0.9rem 1rem;
	align-items: end;
	margin-top: 1rem;
	padding: 1.1rem;
	border-radius: 24px;
	background: linear-gradient(180deg, #f7f9fc 0%, #eef3f8 100%);
	border: 1px solid rgba(14, 52, 82, 0.1);
	box-shadow: 0 26px 42px -34px rgba(13, 52, 82, 0.28);
}

body.single-product .tm-totals-form-main > input[type="hidden"] {
	display: none;
}

body.single-product .tm-totals-form-main #tm-epo-totals {
	display: grid;
	grid-column: 1 / -1;
	gap: 0.8rem;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

body.single-product .tm-totals-form-main #tm-epo-totals dl {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.4rem 1rem;
	margin: 0;
	align-items: end;
}

body.single-product .tm-totals-form-main #tm-epo-totals dt,
body.single-product .tm-totals-form-main #tm-epo-totals dd {
	margin: 0;
}

body.single-product .tm-totals-form-main #tm-epo-totals dt {
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #6f7d8e;
}

body.single-product .tm-totals-form-main #tm-epo-totals dd {
	text-align: right;
	font-size: 1rem;
	font-weight: 800;
	color: #13314c;
}

body.single-product .tm-totals-form-main #tm-epo-totals dt:last-of-type {
	padding-top: 0.35rem;
	color: #13314c;
}

body.single-product .tm-totals-form-main #tm-epo-totals dd:last-of-type {
	font-size: clamp(2rem, 4vw, 2.45rem);
	line-height: 0.95;
	letter-spacing: -0.04em;
	color: #13314c;
}

body.single-product .tm-totals-form-main #tm-epo-totals dd:last-of-type span,
body.single-product .tm-totals-form-main #tm-epo-totals dd:last-of-type .amount,
body.single-product .tm-totals-form-main #tm-epo-totals dd:last-of-type .woocommerce-Price-amount {
	font-size: inherit;
	color: inherit;
}

body.single-product .tm-totals-form-main .vinduer24-delivery-note {
	grid-column: 1 / -1;
	display: inline-flex;
	align-items: center;
	gap: 0.7rem;
	justify-self: start;
	max-width: 100%;
	padding: 0.72rem 0.88rem;
	border-radius: 16px;
	background: rgba(19, 49, 76, 0.06);
	border: 1px solid rgba(19, 49, 76, 0.08);
	text-decoration: none;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.45;
	color: #12314b;
}

body.single-product .tm-totals-form-main .vinduer24-delivery-note:hover,
body.single-product .tm-totals-form-main .vinduer24-delivery-note:focus-visible {
	border-color: rgba(19, 49, 76, 0.14);
	background: rgba(19, 49, 76, 0.08);
	outline: none;
}

body.single-product .tm-totals-form-main .vinduer24-delivery-note-badge {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 999px;
	background: #2d7ea3;
	box-shadow: 0 0 0 0.32rem rgba(45, 126, 163, 0.14);
}

body.single-product .tm-totals-form-main .vinduer24-delivery-note-text {
	margin: 0;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.45;
	color: #12314b;
	white-space: nowrap;
}

body.single-product .tm-totals-form-main .quantity.buttons_added,
body.single-product .tm-totals-form-main .quantity {
	grid-column: 1;
	align-self: stretch;
	width: 100%;
	max-width: none;
	min-height: 3.65rem;
	padding: 0 0.25rem;
	border-radius: 18px;
	border-color: rgba(14, 52, 82, 0.12);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

body.single-product .tm-totals-form-main .quantity .qty {
	width: 2.4rem;
	padding: 0;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	background: transparent;
	border: 0;
}

body.single-product .tm-totals-form-main .single_add_to_cart_button.button.alt {
	grid-column: 2;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: 100% !important;
	min-height: 3.65rem;
	margin: 0;
	padding: 0.95rem 1.4rem;
	border-radius: 18px;
	line-height: 1.1;
	text-align: center;
}

body.single-product .vinduer24-product-support {
	align-items: center;
}

body.single-product .single-product-payments {
	margin-top: 1rem;
	display: grid;
	justify-items: center;
	gap: 0.65rem;
	padding: 1rem 1.1rem;
	border-radius: 22px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
}

body.single-product .single-product-payments legend {
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	text-align: center;
	color: #6f7d8e;
}

body.single-product .single-product-payments ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.7rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.single-product .single-product-payments li {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

body.single-product .single-product-payments .kadence-svg-iconset {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 1.55rem;
}

body.single-product .single-product-payments .kadence-svg-iconset svg {
	display: block;
	width: auto;
	height: 100%;
	max-width: none;
}

body.single-product .single-product-payments .payment-custom-img {
	display: block;
	width: auto;
	height: 1.55rem;
	max-width: none;
}

body.single-product .single-product-payments .single-product-payments-custom-01 .payment-custom-img {
	height: 1.28rem;
}

body.single-product .single-product-payments .single-product-payments-custom-02 .payment-custom-img {
	height: 1.4rem;
}

body.single-product .vinduer24-installation-field.is-relocated {
	display: none !important;
}

.vinduer24-installation-panel {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1rem;
	align-items: center;
	margin-top: 1rem;
	padding: 1rem 1.1rem;
	border-radius: 22px;
	background: #fff9f5;
	border: 1px solid rgba(177, 49, 15, 0.12);
	box-shadow: 0 18px 34px -30px rgba(177, 49, 15, 0.18);
}

.vinduer24-installation-panel[hidden] {
	display: none !important;
}

.vinduer24-installation-panel-copy {
	display: grid;
	gap: 0.35rem;
}

.vinduer24-installation-eyebrow {
	margin: 0;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #a63b15;
}

.vinduer24-installation-panel h3 {
	margin: 0;
	font-size: 1.04rem;
	line-height: 1.22;
	color: #12314b;
}

.vinduer24-installation-description {
	margin: 0;
	max-width: 40rem;
	color: #5f6674;
	line-height: 1.55;
}

.vinduer24-installation-panel-actions {
	display: grid;
	gap: 0.45rem;
	justify-items: end;
}

.vinduer24-installation-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0.74rem 1rem;
	border-radius: 999px;
	font-weight: 800;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
	border: 0;
	background: #e70707;
	color: #ffffff;
	box-shadow: 0 14px 24px -20px rgba(231, 7, 7, 0.68);
	cursor: pointer;
}

.vinduer24-installation-button:hover,
.vinduer24-installation-button:focus-visible {
	background: #ff2b2b;
	transform: translateY(-1px);
}

.vinduer24-installation-status {
	margin: 0;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.4;
	color: #7f300f;
	text-align: right;
}

body.single-product .vinduer24-installation-panel.is-selected {
	border-color: rgba(231, 7, 7, 0.24);
	background: #fff4ee;
}

body.single-product .vinduer24-installation-panel.is-selected .vinduer24-installation-status {
	color: #b12205;
}

body.vinduer24-modal-open {
	overflow: hidden;
}

body:has(.vinduer24-modal:target) {
	overflow: hidden;
}

.vinduer24-modal-layer {
	position: relative;
	z-index: 999999;
}

.vinduer24-modal {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: none;
	place-items: start center;
	padding: clamp(1rem, 3.5vh, 2rem) 1.5rem;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

.vinduer24-modal:target,
.vinduer24-modal.is-open {
	display: grid;
}

.vinduer24-modal-backdrop {
	position: absolute;
	inset: 0;
	display: block;
	background: rgba(9, 26, 39, 0.58);
	backdrop-filter: blur(4px);
}

.vinduer24-modal-card {
	position: relative;
	z-index: 1;
	width: min(100%, 640px);
	display: grid;
	gap: 0.8rem;
	padding: 1.45rem;
	max-height: calc(100svh - 2rem);
	overflow-y: auto;
	overscroll-behavior: contain;
	border-radius: 28px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 36px 70px -40px rgba(9, 26, 39, 0.45);
}

.vinduer24-modal-close {
	position: absolute;
	top: 1rem;
	right: 1rem;
	width: 2.4rem;
	height: 2.4rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: #f4f7fb;
	color: #12314b;
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
	text-decoration: none;
}

.vinduer24-modal-close:hover,
.vinduer24-modal-close:focus-visible {
	background: #e8eef5;
}

.vinduer24-modal-eyebrow {
	margin: 0;
	font-size: 0.77rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #6f7d8e;
}

.vinduer24-modal-card h3 {
	margin: 0;
	padding-right: 2.5rem;
	font-size: clamp(1.45rem, 2vw, 1.9rem);
	line-height: 1.08;
	letter-spacing: -0.02em;
	color: #12314b;
}

.vinduer24-modal-intro,
.vinduer24-modal-footer {
	margin: 0;
	color: #5a6c7d;
	line-height: 1.65;
}

.vinduer24-modal-list {
	display: grid;
	gap: 0.55rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.vinduer24-modal-list li {
	position: relative;
	padding-left: 1rem;
	color: #20303f;
	line-height: 1.55;
}

.vinduer24-modal-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.6rem;
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: #e70707;
}

.vinduer24-modal-module-guide {
	display: grid;
	gap: 0.95rem;
	max-width: 38rem;
	margin: 0 auto;
	text-align: center;
}

.vinduer24-modal-intro-centered {
	font-size: 1.02rem;
}

.vinduer24-modal-emphasis,
.vinduer24-modal-copy {
	margin: 0;
	line-height: 1.7;
	color: #5a6c7d;
}

.vinduer24-modal-emphasis {
	font-weight: 700;
	color: #12314b;
}

.vinduer24-modal-figure-image {
	display: block;
	width: min(100%, 32rem);
	height: auto;
	margin: 0 auto;
	border-radius: 22px;
	box-shadow: 0 24px 50px -34px rgba(9, 26, 39, 0.32);
}

.vinduer24-modal-card--special-size {
	width: min(100%, 820px);
}

.vinduer24-modal-special-size {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap: 1rem;
	align-items: start;
}

.vinduer24-modal-special-size-copy,
.vinduer24-modal-form-panel {
	display: grid;
	gap: 0.85rem;
}

.vinduer24-modal-pill-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.vinduer24-modal-pill-list li {
	display: inline-flex;
	align-items: center;
	min-height: 2rem;
	padding: 0.42rem 0.72rem;
	border-radius: 999px;
	background: #f3f7fb;
	color: #12314b;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.2;
}

.vinduer24-modal-contact-panel,
.vinduer24-modal-form-panel {
	padding: 1rem;
	border-radius: 22px;
	background: #f8fafc;
	border: 1px solid rgba(14, 52, 82, 0.08);
}

.vinduer24-modal-contact-title,
.vinduer24-modal-form-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.25;
	color: #12314b;
}

.vinduer24-modal-form-copy {
	margin: 0;
	color: #5a6c7d;
	line-height: 1.6;
}

.vinduer24-modal-contact-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.7rem;
}

.vinduer24-modal-contact-card {
	display: grid;
	gap: 0.2rem;
	padding: 0.85rem 0.95rem;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.vinduer24-modal-contact-card:hover,
.vinduer24-modal-contact-card:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(14, 52, 82, 0.14);
	box-shadow: 0 18px 32px -28px rgba(9, 26, 39, 0.22);
	outline: none;
}

.vinduer24-modal-contact-label {
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6f7d8e;
}

.vinduer24-modal-contact-value {
	color: #12314b;
	font-weight: 700;
	line-height: 1.4;
	word-break: break-word;
}

.vinduer24-special-size-form {
	margin: 0;
}

.vinduer24-special-size-form .kb-form {
	margin: 0;
}

.vinduer24-special-size-form .kadence-blocks-form-field {
	margin-bottom: 0.8rem;
	padding: 0;
}

.vinduer24-special-size-form .kadence-blocks-form-field > label {
	margin-bottom: 0.28rem;
	color: #12314b;
	font-size: 0.84rem;
	font-weight: 700;
	line-height: 1.4;
}

.vinduer24-special-size-form .kb-text-style-field {
	min-height: 50px;
	padding: 0.8rem 0.9rem;
	border-radius: 14px;
	border: 1px solid rgba(14, 52, 82, 0.12);
	background: #ffffff;
	box-shadow: none;
	color: #20303f;
	transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.vinduer24-special-size-form .kb-text-style-field:hover {
	border-color: rgba(14, 52, 82, 0.18);
}

.vinduer24-special-size-form .kb-text-style-field:focus {
	outline: none;
	border-color: rgba(14, 52, 82, 0.26);
	box-shadow: 0 0 0 4px rgba(14, 52, 82, 0.06);
}

.vinduer24-special-size-form textarea.kb-text-style-field {
	min-height: 132px;
	resize: vertical;
}

.vinduer24-special-size-form .kb-submit-field {
	margin-bottom: 0;
}

.vinduer24-special-size-form .kb-forms-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	border-radius: 999px;
	background: #e70707;
	color: #ffffff;
	font-weight: 800;
	box-shadow: 0 18px 32px -24px rgba(231, 7, 7, 0.62);
}

.vinduer24-special-size-form .kb-forms-submit:hover,
.vinduer24-special-size-form .kb-forms-submit:focus-visible {
	background: #ff2b2b;
}

.vinduer24-special-size-form .kadence-verify-label,
.vinduer24-special-size-form .kadence-blocks-field.verify {
	position: absolute !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.single-product .quantity.buttons_added,
body.single-product .quantity {
	display: inline-flex;
	align-items: center;
	border-radius: 14px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.12);
}

body.single-product .single_variation_wrap,
body.single-product .woocommerce-variation-add-to-cart {
	margin-top: 0.9rem;
}

body.single-product .summary.entry-summary {
	position: relative;
}

body.single-product .summary.entry-summary > .vinduer24-summary-availability {
	display: flex;
	grid-column: 2;
	grid-row: 1;
	align-self: center;
	justify-self: end;
	justify-content: flex-end;
	margin: 0;
}

body.single-product .vinduer24-summary-availability .stock.vinduer24-availability {
	display: inline-flex;
	align-items: center;
	gap: 0.42rem;
	margin: 0;
	padding: 0.3rem 0;
	border: 0;
	background: transparent;
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0.02em;
}

body.single-product .vinduer24-summary-availability .stock.vinduer24-availability::before {
	width: 0.56rem;
	height: 0.56rem;
	box-shadow: 0 0 0 0.18rem color-mix(in srgb, currentColor 14%, transparent);
}

body.single-product .vinduer24-summary-availability .stock.vinduer24-availability.is-in-stock,
body.single-product .tm-totals-form-main .vinduer24-summary-availability-inline .stock.vinduer24-availability.is-in-stock {
	color: #1b7b50;
}

body.single-product .vinduer24-summary-availability .stock.vinduer24-availability.is-on-request,
body.single-product .tm-totals-form-main .vinduer24-summary-availability-inline .stock.vinduer24-availability.is-on-request {
	color: #c58a11;
}

body.single-product .vinduer24-summary-availability .stock.vinduer24-availability.is-out-of-stock,
body.single-product .tm-totals-form-main .vinduer24-summary-availability-inline .stock.vinduer24-availability.is-out-of-stock {
	color: #b34343;
}

body.single-product .single_variation_wrap .single_variation {
	display: grid !important;
	gap: 0.85rem;
	margin: 0 0 1rem;
	padding: 1rem 1.1rem;
	border-radius: 22px;
	border: 1px solid rgba(14, 52, 82, 0.1);
	background:
		radial-gradient(circle at top right, rgba(20, 75, 117, 0.08), transparent 42%),
		linear-gradient(180deg, #ffffff 0%, #f6f9fc 100%);
	box-shadow: 0 24px 42px -34px rgba(14, 52, 82, 0.28);
}

body.single-product .single_variation_wrap .woocommerce-variation-description:empty {
	display: none;
}

body.single-product .single_variation_wrap .woocommerce-variation-price,
body.single-product .single_variation_wrap .woocommerce-variation-price .price {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0.45rem 0.8rem;
	margin: 0;
	color: #12354e;
	line-height: 1.1;
}

body.single-product .single_variation_wrap .woocommerce-variation-price del {
	order: 1;
	color: #8d9aa6;
	font-size: 1rem;
	font-weight: 600;
	text-decoration-thickness: 2px;
	text-decoration-color: rgba(141, 154, 166, 0.8);
}

body.single-product .single_variation_wrap .woocommerce-variation-price del .woocommerce-Price-amount {
	font-size: inherit;
}

body.single-product .single_variation_wrap .woocommerce-variation-price ins,
body.single-product .single_variation_wrap .woocommerce-variation-price > .woocommerce-Price-amount {
	order: 2;
	text-decoration: none;
}

body.single-product .single_variation_wrap .woocommerce-variation-price ins .woocommerce-Price-amount,
body.single-product .single_variation_wrap .woocommerce-variation-price > .woocommerce-Price-amount {
	font-size: clamp(2rem, 3vw, 2.45rem);
	font-weight: 800;
	letter-spacing: -0.04em;
	color: #12354e;
}

body.single-product .single_variation_wrap .woocommerce-variation-price .woocommerce-price-suffix {
	order: 3;
	margin: 0;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #5c7283;
}

body.single-product .single_variation_wrap .woocommerce-variation-availability {
	margin: 0;
}

body.single-product .single_variation_wrap .woocommerce-variation-availability .stock.vinduer24-availability {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0;
	padding: 0.6rem 0.85rem;
	border-radius: 999px;
	border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
	background: color-mix(in srgb, currentColor 10%, #ffffff);
	font-size: 0.96rem;
	font-weight: 700;
	line-height: 1.2;
}

body.single-product .single_variation_wrap .woocommerce-variation-availability .stock.vinduer24-availability.is-in-stock {
	color: #1b7b50;
}

body.single-product .single_variation_wrap .woocommerce-variation-availability .stock.vinduer24-availability.is-on-request {
	color: #c58a11;
}

body.single-product .single_variation_wrap .woocommerce-variation-availability .stock.vinduer24-availability.is-out-of-stock {
	color: #b34343;
}

body.single-product .single_variation_wrap .woocommerce-variation-availability .stock.vinduer24-availability::before {
	width: 0.72rem;
	height: 0.72rem;
	box-shadow: 0 0 0 0.26rem color-mix(in srgb, currentColor 14%, transparent);
}

body.single-product.vinduer24-availability-relocated .single_variation_wrap .woocommerce-variation-availability {
	display: none;
}

body.single-product .tm-totals-form-main .vinduer24-summary-meta-row {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-self: stretch;
	justify-content: flex-start;
	gap: 0.7rem 0.8rem;
	margin-top: 0.9rem;
	min-width: 0;
	width: 100%;
}

body.single-product .tm-totals-form-main .vinduer24-summary-meta-row .vinduer24-delivery-note {
	flex: 0 0 auto;
	min-width: 0;
	max-width: 100%;
	width: fit-content;
	margin: 0;
}

body.single-product .tm-totals-form-main .vinduer24-summary-availability-inline {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	margin-left: auto;
}

body.single-product .tm-totals-form-main .vinduer24-summary-availability-inline .stock.vinduer24-availability {
	display: inline-flex;
	align-items: center;
	gap: 0.52rem;
	margin: 0;
	padding: 0.62rem 0.88rem;
	border-radius: 999px;
	border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
	background: color-mix(in srgb, currentColor 10%, #ffffff);
	font-size: 0.94rem;
	font-weight: 700;
	line-height: 1.2;
}

body.single-product .tm-totals-form-main .vinduer24-summary-availability-inline .stock.vinduer24-availability::before {
	width: 0.68rem;
	height: 0.68rem;
	box-shadow: 0 0 0 0.24rem color-mix(in srgb, currentColor 14%, transparent);
}

body.single-product .single_add_to_cart_button.button.alt {
	min-height: 54px;
	padding: 0.95rem 1.4rem;
	border-radius: 14px;
	background: #e70707;
	font-size: 1.04rem;
	font-weight: 800;
	line-height: 1;
	text-align: center;
	letter-spacing: 0.01em;
	box-shadow: 0 20px 36px -28px rgba(231, 7, 7, 0.65);
}

body.single-product .tm-totals-form-main .quantity.buttons_added,
body.single-product .tm-totals-form-main .quantity,
body.single-product .tm-totals-form-main .single_add_to_cart_button.button.alt {
	margin-top: 0.3rem;
}

body.single-product .single_add_to_cart_button.button.alt:hover,
body.single-product .single_add_to_cart_button.button.alt:focus-visible {
	background: #ff2b2b;
}

.vinduer24-product-support {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1rem;
	align-items: start;
	margin-top: 0.85rem;
	padding: 1rem 1.1rem;
	border-radius: 22px;
	background: #ffffff;
	color: #14324b;
	border: 1px solid rgba(14, 52, 82, 0.08);
}

.vinduer24-product-support h3 {
	margin: 0;
	font-size: 1rem;
	color: #14324b;
	max-width: 30rem;
}

.vinduer24-product-support p {
	margin: 0.3rem 0 0;
	color: #607181;
	max-width: 34rem;
}

.vinduer24-product-support-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 0.6rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.vinduer24-product-support-list a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0.65rem 0.9rem;
	border-radius: 999px;
	background: #f4f7fb;
	color: #12314b;
	font-weight: 700;
	text-decoration: none;
	border: 1px solid rgba(14, 52, 82, 0.08);
}

.vinduer24-product-support-list a:hover,
.vinduer24-product-support-list a:focus-visible {
	background: #eaf1f8;
	color: #12314b;
}

body.single-product.vinduer24-product-has-handpicked-recommendations .up-sells.upsells.products {
	display: none;
}

body.single-product.vinduer24-product-has-handpicked-recommendations .related.products {
	display: none;
	margin: 0;
	padding: 0;
}

body.single-product .vinduer24-product-recommendations {
	margin-top: 2rem;
	padding: 1.45rem;
	border-radius: 28px;
	background:
		radial-gradient(circle at top right, rgba(20, 75, 117, 0.08), transparent 34%),
		linear-gradient(180deg, #ffffff 0%, #f7fafc 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 30px 54px -44px rgba(13, 52, 82, 0.22);
}

body.single-product .vinduer24-product-trust-strip {
	margin-top: 1.5rem;
	padding: 1rem 1.2rem;
	border-radius: 24px;
	background: linear-gradient(180deg, #f8fafc 0%, #eef3f7 100%);
	border: 1px solid rgba(14, 52, 82, 0.07);
	box-shadow: none;
}

body.single-product .vinduer24-product-recommendations-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem 1.5rem;
	margin-bottom: 1.35rem;
}

body.single-product .vinduer24-product-recommendations-eyebrow {
	margin: 0 0 0.35rem;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #6f7d8e;
}

body.single-product .vinduer24-product-recommendations-head h2 {
	margin: 0;
	max-width: 18ch;
	font-size: clamp(1.55rem, 2vw, 2.1rem);
	line-height: 1.08;
	letter-spacing: -0.03em;
	color: #13314c;
}

body.single-product .vinduer24-product-recommendations-copy p:last-child {
	margin: 0.45rem 0 0;
	max-width: 62ch;
	color: #5a6c7d;
	line-height: 1.7;
}

body.single-product .vinduer24-product-recommendations-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0.7rem 1rem;
	border-radius: 999px;
	background: #f3f7fb;
	border: 1px solid rgba(14, 52, 82, 0.08);
	color: #12314b;
	font-size: 0.92rem;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

body.single-product .vinduer24-product-recommendations-link:hover,
body.single-product .vinduer24-product-recommendations-link:focus-visible {
	background: #e8eff7;
	color: #12314b;
}

body.single-product .vinduer24-product-trust-strip-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	align-items: stretch;
}

body.single-product .vinduer24-product-trust-item {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.9rem;
	align-items: center;
	padding: 0.15rem 1rem 0.15rem 0;
}

body.single-product .vinduer24-product-trust-item + .vinduer24-product-trust-item {
	padding-left: 1.2rem;
	border-left: 1px solid rgba(14, 52, 82, 0.08);
}

body.single-product .vinduer24-product-trust-item-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	flex: 0 0 3rem;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(14, 52, 82, 0.06);
}

body.single-product .vinduer24-product-trust-item-icon img {
	display: block;
	width: 1.7rem;
	height: 1.7rem;
	object-fit: contain;
}

body.single-product .vinduer24-product-trust-item-copy {
	display: grid;
	gap: 0.3rem;
}

body.single-product .vinduer24-product-trust-item-copy h3 {
	margin: 0;
	font-size: 1rem;
	line-height: 1.2;
	color: #12314b;
}

body.single-product .vinduer24-product-trust-item-copy p {
	margin: 0;
	color: #5f7080;
	line-height: 1.55;
}

body.single-product .vinduer24-product-recommendations-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

body.single-product .vinduer24-product-recommendations-grid .vinduer24-home-product-card {
	height: 100%;
}

body.single-product .woocommerce-tabs.wc-tabs-wrapper {
	margin-top: 2rem;
	padding: 1.5rem;
	border-radius: 28px;
	background: #ffffff;
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 30px 54px -44px rgba(13, 52, 82, 0.22);
}

body.single-product .wc-tabs {
	margin-bottom: 1.1rem !important;
	border-bottom: 1px solid rgba(14, 52, 82, 0.08) !important;
}

body.single-product .wc-tabs li a {
	font-weight: 800 !important;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #12314b !important;
}

body.single-product .woocommerce-Tabs-panel--description {
	display: grid;
	gap: 1.6rem;
	color: #556878;
	overflow-wrap: anywhere;
}

body.single-product .woocommerce-Tabs-panel--description > * {
	max-width: 100%;
}

body.single-product .vinduer24-description-composer {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
	gap: 1.4rem;
	align-items: start;
}

body.single-product .vinduer24-description-specs-block,
body.single-product .vinduer24-description-story-block {
	min-width: 0;
	align-self: start;
}

body.single-product .vinduer24-description-specs-block {
	display: grid;
	gap: 1.15rem;
	grid-template-columns: minmax(0, 1fr);
}

body.single-product .vinduer24-description-story-card {
	display: grid;
	gap: 1rem;
	padding: 1.4rem;
	border-radius: 24px;
	background:
		radial-gradient(circle at top right, rgba(231, 7, 7, 0.08), transparent 30%),
		linear-gradient(180deg, #f8fbfd 0%, #eef4f9 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 22px 42px -34px rgba(13, 52, 82, 0.2);
}

body.single-product .vinduer24-description-story-card h2,
body.single-product .vinduer24-description-story-card h3 {
	margin: 0;
}

body.single-product .vinduer24-description-story-stack {
	display: grid;
	gap: 1rem;
	height: 100%;
}

body.single-product .vinduer24-description-story-copy {
	display: grid;
	gap: 0.85rem;
}

body.single-product .vinduer24-description-media-card {
	display: grid;
	align-items: end;
	justify-items: center;
	min-height: 280px;
	padding: 1.1rem;
	border-radius: 24px;
	background:
		radial-gradient(circle at top right, rgba(19, 49, 76, 0.08), transparent 32%),
		linear-gradient(180deg, #f8fbfd 0%, #edf4fa 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 22px 42px -34px rgba(13, 52, 82, 0.2);
	overflow: hidden;
}

body.single-product .vinduer24-description-media-card a,
body.single-product .vinduer24-description-media-card > img {
	display: grid;
	place-items: end center;
	width: 100%;
	height: 100%;
}

body.single-product .vinduer24-description-media-card img {
	float: none;
	display: block;
	width: auto;
	max-width: min(100%, 320px);
	max-height: 320px;
	height: auto;
	border-radius: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
	object-fit: contain;
	margin: 0 auto;
	transform: translateY(10px);
}

body.single-product .vinduer24-description-flow {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: minmax(0, 1fr);
	clear: both;
	min-width: 0;
}

body.single-product .vinduer24-description-intro-flow {
	display: grid;
	gap: 0.9rem;
	grid-template-columns: minmax(0, 1fr);
	padding-top: 0.15rem;
	min-width: 0;
	width: 100%;
	max-width: 100%;
}

body.single-product .woocommerce-Tabs-panel--description h2,
body.single-product .woocommerce-Tabs-panel--description h3,
body.single-product .woocommerce-Tabs-panel--description p,
body.single-product .woocommerce-Tabs-panel--description figure,
body.single-product .woocommerce-Tabs-panel--description ul,
body.single-product .woocommerce-Tabs-panel--description ol {
	margin: 0;
}

body.single-product .woocommerce-Tabs-panel--description > h2:first-of-type {
	padding-bottom: 0.9rem;
	border-bottom: 1px solid rgba(14, 52, 82, 0.08);
}

body.single-product .woocommerce-Tabs-panel--description h2 {
	font-size: clamp(1.6rem, 2vw, 2.25rem);
	line-height: 1.08;
	letter-spacing: -0.03em;
	color: #13314c;
}

body.single-product .woocommerce-Tabs-panel--description h3 {
	font-size: clamp(1.18rem, 1.5vw, 1.5rem);
	line-height: 1.25;
	color: #15324b;
}

body.single-product .woocommerce-Tabs-panel--description p,
body.single-product .woocommerce-Tabs-panel--description li {
	max-width: 72ch;
	color: #586b7a;
	font-size: 1rem;
	line-height: 1.8;
}

body.single-product .woocommerce-Tabs-panel--description strong {
	color: #14324b;
}

body.single-product .woocommerce-Tabs-panel--description a {
	color: #0d3452;
	font-weight: 700;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.18em;
}

body.single-product .woocommerce-Tabs-panel--description p:empty {
	display: none;
}

body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	padding: 1.15rem;
	border-radius: 24px;
	background: linear-gradient(180deg, #f7fafc 0%, #eef3f8 100%);
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 22px 42px -34px rgba(13, 52, 82, 0.2);
	height: auto;
	align-self: start;
	overflow: hidden;
}

body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table table {
	width: 100%;
	min-width: 0;
	margin: 0;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	background: #ffffff;
}

body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table td {
	padding: 0.95rem 1rem;
	border-bottom: 1px solid rgba(14, 52, 82, 0.08);
	vertical-align: top;
}

body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table tr:last-child td {
	border-bottom: 0;
}

body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table td:first-child {
	width: 40%;
	background: #f7fafc;
	font-weight: 800;
	color: #12314b;
}

body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table td:last-child {
	color: #596b7b;
}

body.single-product .woocommerce-Tabs-panel--description img {
	max-width: 100%;
	height: auto;
	border-radius: 22px;
	border: 1px solid rgba(14, 52, 82, 0.08);
	box-shadow: 0 22px 38px -34px rgba(13, 52, 82, 0.28);
	background: #ffffff;
}

body.single-product .woocommerce-Tabs-panel--description .wp-video,
body.single-product .woocommerce-Tabs-panel--description video,
body.single-product .woocommerce-Tabs-panel--description iframe {
	width: 100% !important;
	max-width: 100%;
}

body.single-product .woocommerce-Tabs-panel--description video,
body.single-product .woocommerce-Tabs-panel--description iframe {
	display: block;
	height: auto;
	border-radius: 22px;
	background: #ffffff;
}

body.single-product .woocommerce-Tabs-panel--description img.alignright {
	float: right;
	max-width: min(38%, 260px);
	height: auto;
	margin: 0.3rem 0 1rem 1.35rem;
}

body.single-product .woocommerce-Tabs-panel--description ul,
body.single-product .woocommerce-Tabs-panel--description ol {
	padding-left: 1.2rem;
}

@media all and (max-width: 1024px) {
	.vinduer24-product-help-links {
		grid-template-columns: 1fr;
	}

	.vinduer24-modal-card--special-size {
		width: min(100%, 720px);
	}

	.vinduer24-modal-special-size,
	.vinduer24-modal-contact-grid {
		grid-template-columns: 1fr;
	}

	body.single-product .vinduer24-product-shell {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	body.single-product .vinduer24-product-shell > .woocommerce-product-gallery,
	body.single-product .vinduer24-product-shell > .summary.entry-summary {
		grid-column: auto;
		grid-row: auto;
	}

	body.single-product .vinduer24-product-shell .woocommerce-product-gallery {
		position: static !important;
		top: auto !important;
		max-height: none;
		overflow: visible;
	}

	body.single-product .woocommerce-product-gallery .product_image a,
	body.single-product .woocommerce-product-gallery .woo-main-slide a {
		min-height: clamp(300px, calc(100svh - 320px), 420px);
		max-height: clamp(300px, calc(100svh - 320px), 420px);
	}

	body.single-product .woocommerce-product-gallery .product_image img,
	body.single-product .woocommerce-product-gallery .woo-main-slide img {
		max-height: clamp(260px, calc(100svh - 350px), 400px);
	}

	.vinduer24-installation-panel,
	.vinduer24-product-support {
		grid-template-columns: 1fr;
	}

	.vinduer24-installation-panel-actions {
		justify-items: start;
	}

	.vinduer24-product-support-list {
		justify-content: flex-start;
	}

	body.single-product .single_variation_wrap {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0.8rem;
	}

	body.single-product .single_variation_wrap .single_variation {
		padding: 0.95rem 1rem;
	}

	body.single-product .vinduer24-summary-availability {
		margin-bottom: 0.6rem;
	}

	body.single-product .vinduer24-summary-availability .stock.vinduer24-availability {
		font-size: 0.82rem;
	}

	body.single-product .single_variation_wrap .woocommerce-variation-price,
	body.single-product .single_variation_wrap .woocommerce-variation-price .price {
		align-items: center;
	}

	body.single-product .single_variation_wrap .woocommerce-variation-price ins .woocommerce-Price-amount,
	body.single-product .single_variation_wrap .woocommerce-variation-price > .woocommerce-Price-amount {
		font-size: clamp(1.8rem, 7vw, 2.2rem);
	}

	body.single-product .tm-totals-form-main .vinduer24-summary-meta-row {
		align-items: center;
	}

	body.single-product .quantity.buttons_added,
	body.single-product .quantity,
	body.single-product .single_add_to_cart_button.button.alt {
		width: 100%;
	}

	body.single-product .single-product-payments ul {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;
	}

	body.single-product .tm-totals-form-main {
		grid-template-columns: 1fr;
	}

	body.single-product .tm-totals-form-main .quantity,
	body.single-product .tm-totals-form-main .single_add_to_cart_button.button.alt {
		grid-column: 1;
	}

	body.single-product .vinduer24-product-recommendations-head {
		flex-direction: column;
		align-items: flex-start;
	}

	body.single-product .vinduer24-product-trust-strip-grid,
	body.single-product .vinduer24-product-recommendations-grid {
		grid-template-columns: 1fr;
	}

	body.single-product .vinduer24-product-trust-item {
		padding: 1rem 0 0;
	}

	body.single-product .vinduer24-product-trust-item + .vinduer24-product-trust-item {
		padding-left: 0;
		border-left: 0;
		border-top: 1px solid rgba(14, 52, 82, 0.08);
	}

	body.single-product .vinduer24-description-composer {
		grid-template-columns: 1fr;
	}

	body.single-product .woocommerce-Tabs-panel--description img.alignright {
		float: none;
		display: block;
		max-width: min(100%, 320px);
		margin: 0 0 1rem;
	}
}

@media all and (max-height: 820px) and (min-width: 1201px) {
	body.single-product .vinduer24-product-shell .woocommerce-product-gallery {
		padding: 1.2rem;
		max-height: calc(100svh - 126px);
	}

	body.single-product .woocommerce-product-gallery .product_image a,
	body.single-product .woocommerce-product-gallery .woo-main-slide a {
		min-height: clamp(280px, calc(100svh - 330px), 420px);
		max-height: clamp(280px, calc(100svh - 330px), 420px);
	}

	body.single-product .woocommerce-product-gallery .product_image img,
	body.single-product .woocommerce-product-gallery .woo-main-slide img {
		max-height: clamp(250px, calc(100svh - 360px), 380px);
	}

	body.single-product .woocommerce-product-gallery .kt-woo-gallery-thumbnail img {
		max-height: 70px;
	}
}

@media all and (max-width: 767px) {
	.vinduer24-modal {
		padding: 1rem;
		place-items: start center;
	}

	.vinduer24-modal-card {
		width: 100%;
		max-height: calc(100svh - 1.2rem);
		padding: 1.1rem;
		border-radius: 24px 24px 20px 20px;
	}

	body.single-product .content-area {
		margin-top: 0.5rem;
	}

	body.single-product .vinduer24-product-shell {
		gap: 0.9rem;
	}

	body.single-product .vinduer24-product-shell .woocommerce-product-gallery,
	body.single-product .vinduer24-product-shell .summary.entry-summary,
	body.single-product .woocommerce-tabs.wc-tabs-wrapper {
		padding: 1.1rem;
		border-radius: 22px;
	}

	body.single-product .vinduer24-product-trust-strip,
	body.single-product .vinduer24-product-recommendations {
		margin-top: 1.2rem;
		padding: 1.1rem;
		border-radius: 22px;
	}

	body.single-product .vinduer24-product-recommendations-head {
		margin-bottom: 1rem;
	}

	body.single-product .vinduer24-product-recommendations-head h2 {
		max-width: none;
		font-size: 1.8rem;
	}

	body.single-product .vinduer24-product-trust-item {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 0.8rem;
	}

	body.single-product .vinduer24-product-trust-item-icon {
		width: 2.7rem;
		height: 2.7rem;
		border-radius: 16px;
	}

	body.single-product .vinduer24-product-trust-item-icon img {
		width: 1.5rem;
		height: 1.5rem;
	}

	body.single-product .vinduer24-product-shell .woocommerce-product-gallery {
		order: 1;
	}

	body.single-product .vinduer24-product-shell .summary.entry-summary {
		order: 2;
	}

	body.single-product form.variations_form {
		padding: 1rem;
	}

	.vinduer24-installation-panel,
	body.single-product .vinduer24-product-support {
		padding: 1rem;
		border-radius: 20px;
	}

	.vinduer24-installation-panel-actions,
	.vinduer24-product-support-list {
		display: grid;
		grid-template-columns: 1fr;
		justify-content: stretch;
	}

	.vinduer24-installation-button,
	.vinduer24-product-support-list a {
		width: 100%;
	}

	.vinduer24-product-support {
		grid-template-columns: 1fr;
	}

	body.single-product .woocommerce-product-gallery .product_image a,
	body.single-product .woocommerce-product-gallery .woo-main-slide a {
		min-height: 260px;
		max-height: 260px;
	}

	body.single-product .woocommerce-product-gallery .product_image img,
	body.single-product .woocommerce-product-gallery .woo-main-slide img {
		max-height: 240px;
	}

	body.single-product .woocommerce-product-gallery .kadence-product-gallery-thumbnails {
		margin-top: 0.6rem;
	}

	body.single-product .woocommerce-product-gallery .kt-woo-gallery-thumbnail img {
		max-height: 58px;
	}

	body.single-product .woocommerce-tabs.wc-tabs-wrapper {
		margin-top: 1.2rem;
	}

	body.single-product .woocommerce-Tabs-panel--description {
		gap: 1rem;
	}

	body.single-product .woocommerce-Tabs-panel--description h2 {
		font-size: 1.8rem;
	}

	body.single-product .woocommerce-Tabs-panel--description h3 {
		font-size: 1.2rem;
	}

	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table {
		padding: 0.85rem;
		border-radius: 20px;
	}

	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table table,
	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table tbody {
		display: grid;
		gap: 0.65rem;
		background: transparent;
	}

	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table tr {
		display: grid;
		overflow: hidden;
		border: 1px solid rgba(14, 52, 82, 0.08);
		border-radius: 16px;
		background: #ffffff;
	}

	body.single-product .vinduer24-description-story-card {
		padding: 1rem;
		border-radius: 20px;
	}

	body.single-product .vinduer24-description-media-card {
		min-height: 220px;
		padding: 0.9rem;
		border-radius: 20px;
	}

	body.single-product .vinduer24-description-media-card img {
		max-height: 250px;
	}

	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table td {
		display: block;
		width: 100%;
		padding: 0.8rem 0.9rem;
		border-bottom: 0;
	}

	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table td:first-child,
	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table td:last-child {
		width: 100%;
	}

	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table td:first-child {
		padding-bottom: 0.35rem;
	}

	body.single-product .woocommerce-Tabs-panel--description figure.wp-block-table td:last-child {
		padding-top: 0.35rem;
	}

	body.single-product .single-product-payments {
		margin-top: 0.8rem;
	}

	body.single-product .single-product-payments ul {
		justify-content: flex-start;
	}

	body.single-product .tm-totals-form-main {
		padding: 1rem;
		border-radius: 22px;
	}

	body.single-product .tm-totals-form-main #tm-epo-totals dd:last-of-type {
		font-size: 2rem;
	}

	body.single-product .tm-totals-form-main .vinduer24-delivery-note {
		width: 100%;
		justify-content: flex-start;
	}

	body.single-product .single-product-payments ul {
		justify-content: center;
	}
}

@media (max-width: 1024px) {
	.vinduer24-home-service-overview,
	.vinduer24-home-service-followup-panel {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-service-visual-figure {
		min-height: 320px;
	}

	.vinduer24-home-service-proof {
		grid-template-columns: 1fr;
	}

	.vinduer24-home-service-summary {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	#alle-vinduer {
		scroll-margin-top: 5rem;
	}

	.vinduer24-home-link-row--catalog {
		margin-bottom: 1.4rem;
	}

	.vinduer24-home-service-overview,
	.vinduer24-home-service-followup-panel {
		padding: 1.35rem;
		border-radius: 28px;
	}

	.vinduer24-home-service-visual-figure {
		min-height: 260px;
	}

	.vinduer24-home-service-card {
		padding: 0.95rem 0.95rem 0.95rem 3.5rem;
		border-radius: 20px;
	}

	.vinduer24-home-service-followup-copy h2 {
		max-width: none;
	}
}
