/* Megameny – Produkter med ikon per val (layout/header.html: .hk-nav, .hk-mega) */
.pb-header .hk-mega__icon {
	--hk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--pb-footer-bg, #F2F0EA);
	color: var(--color-primary);
}
.pb-header .hk-mega__icon::before {
	content: "";
	width: 22px;
	height: 22px;
	background: currentColor;
	-webkit-mask: var(--hk-icon) center / contain no-repeat;
	mask: var(--hk-icon) center / contain no-repeat;
}
.pb-header .hk-mega__item[href*="kapell-och-stativ"] .hk-mega__icon { --hk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6h12v10H2zM14 9h4l3 3v4h-7'/%3E%3Ccircle cx='6' cy='17.5' r='1.8'/%3E%3Ccircle cx='17' cy='17.5' r='1.8'/%3E%3C/svg%3E"); }
.pb-header .hk-mega__item[href*="kombisystem"] .hk-mega__icon { --hk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='1'/%3E%3Cpath d='M9 5v14M15 5v14'/%3E%3C/svg%3E"); }
.pb-header .hk-mega__item[href*="viktackning"] .hk-mega__icon { --hk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9c3-3 15-3 18 0M4 9l1.5 8h13L20 9M3 20h18'/%3E%3C/svg%3E"); }
.pb-header .hk-mega__item[href*="forradstalt"] .hk-mega__icon { --hk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20v-8a9 9 0 0 1 18 0v8M2 20h20M9 20v-5h6v5'/%3E%3C/svg%3E"); }
.pb-header .hk-mega__item[href*="partytalt"] .hk-mega__icon { --hk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 2 10h20zM5 10v10M19 10v10M2 20h20'/%3E%3C/svg%3E"); }
.pb-header .hk-mega__item[href*="reklam"] .hk-mega__icon { --hk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5h18v10H3zM7 15v5M17 15v5M7 9h10M7 12h6'/%3E%3C/svg%3E"); }

.pb-header .hk-mega__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.pb-header .hk-mega__item {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px;
	border-radius: 14px;
	color: var(--color-dark);
	font-size: 1rem;
	font-weight: 500;
	text-decoration: none;
	transition: background-color .2s ease;
}
.pb-header .hk-mega__item:hover,
.pb-header .hk-mega__item:focus-visible {
	background: var(--pb-footer-bg, #F2F0EA);
}
.pb-header .hk-mega__item:hover .hk-mega__icon {
	background: var(--color-primary);
	color: #fff;
}
.pb-header .hk-mega__cta {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	padding: 24px;
	border-radius: 18px;
	background: var(--color-primary);
	color: #fff;
	text-decoration: none;
}
.pb-header .hk-mega__cta-title {
	font-family: var(--font-family-header), sans-serif;
	font-size: 1.15rem;
	font-weight: 600;
}
.pb-header .hk-mega__cta-text {
	opacity: .8;
	font-size: .95rem;
}
.pb-header .hk-mega__cta-link {
	margin-top: 8px;
	font-weight: 600;
}
.pb-header .hk-nav__item:not(:has(.hk-mega__grid li)) .hk-mega {
	display: none;
}
.pb-header .hk-nav__link[href$="/begar-offert/"] {
	padding: .45em 1.1em;
	border-radius: 99px;
	background: var(--color-primary);
	color: #fff;
}
.pb-header .hk-nav__link[href$="/begar-offert/"]::after {
	display: none;
}

@media (min-width: 993px) {
	.pb-header .pb-header__links > li.hk-nav__item {
		position: static;
	}
	.pb-header .hk-nav__item:has(.hk-mega__grid li) > .hk-nav__link::before {
		content: "";
		order: 2;
		width: 7px;
		height: 7px;
		margin: -3px 2px 0 4px;
		border-right: 1.5px solid currentColor;
		border-bottom: 1.5px solid currentColor;
		transform: rotate(45deg);
		transition: transform .2s ease;
	}
	.pb-header .hk-nav__item:hover > .hk-nav__link::before,
	.pb-header .hk-nav__item:focus-within > .hk-nav__link::before {
		margin-top: 3px;
		transform: rotate(-135deg);
	}
	.pb-header .hk-mega {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		z-index: 20;
		padding: 0 24px 24px;
		opacity: 0;
		visibility: hidden;
		transform: translateY(-6px);
		transition: opacity .2s ease, transform .2s ease, visibility 0s linear .2s;
	}
	.pb-header .hk-nav__item:hover > .hk-mega,
	.pb-header .hk-nav__item:focus-within > .hk-mega {
		opacity: 1;
		visibility: visible;
		transform: none;
		transition-delay: 0s;
	}
	.pb-header .hk-mega__panel {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 280px;
		gap: 16px;
		max-width: 1080px;
		margin: 0 auto;
		padding: 16px;
		border: 1px solid rgba(31, 45, 39, .08);
		border-radius: 24px;
		background: #fff;
		box-shadow: 0 18px 40px -24px rgba(31, 45, 39, .35);
		text-align: left;
	}
}

@media (max-width: 992px) {
	.pb-header.pb-header--centrerad .pb-header__menu {
		align-items: stretch;
		padding: 16px 20px 32px;
		overflow-y: auto;
		text-align: left;
	}
	.pb-header.pb-header--centrerad .pb-header__links {
		width: 100%;
		max-width: none;
	}
	.pb-header.pb-header--centrerad .pb-header__links > li.hk-nav__item > a.hk-nav__link {
		justify-content: space-between;
		padding: 14px 4px;
		border-bottom: 1px solid rgba(31, 45, 39, .1);
		font-family: var(--font-family-header), sans-serif;
		font-size: 1.15rem;
		font-weight: 500;
	}
	.pb-header.pb-header--centrerad .pb-header__links > li.hk-nav__item:has(.hk-mega__grid li) > a.hk-nav__link {
		padding: 8px 4px 10px;
		border-bottom: 0;
		font-family: var(--font-family-text), sans-serif;
		font-size: .8rem;
		font-weight: 600;
		letter-spacing: .08em;
		text-transform: uppercase;
		opacity: .6;
	}
	.pb-header .hk-mega {
		width: 100%;
		padding: 0 0 12px;
	}
	.pb-header .hk-mega__grid {
		grid-template-columns: 1fr;
		gap: 2px;
		padding: 6px;
		border-radius: 18px;
		background: var(--pb-footer-bg, #F2F0EA);
		text-align: left;
	}
	.pb-header .hk-mega__item {
		gap: 12px;
		padding: 8px 10px;
		border-radius: 12px;
		font-size: 1rem;
	}
	.pb-header .hk-mega__item::after {
		content: "";
		width: 7px;
		height: 7px;
		margin: 0 6px 0 auto;
		border-top: 1.5px solid currentColor;
		border-right: 1.5px solid currentColor;
		opacity: .4;
		transform: rotate(45deg);
	}
	.pb-header .hk-mega__item:hover,
	.pb-header .hk-mega__item:focus-visible {
		background: #fff;
	}
	.pb-header .hk-mega__icon {
		width: 36px;
		height: 36px;
		background: #fff;
	}
	.pb-header .hk-mega__icon::before {
		width: 18px;
		height: 18px;
	}
	.pb-header .hk-mega__cta {
		display: none;
	}
	.pb-header.pb-header--centrerad .pb-header__links > li.hk-nav__item > a.hk-nav__link[href$="/begar-offert/"] {
		justify-content: center;
		width: 100%;
		margin: 20px 0 0;
		padding: 14px 24px;
		border-bottom: 0;
		font-family: var(--font-family-text), sans-serif;
		font-size: 1.05rem;
		font-weight: 600;
	}
}

/* Sidfot – två menyspalter och kontakt */
.pb-footer .pb-footer__title {
	display: block;
	margin-bottom: 14px;
	font-family: var(--font-family-header), sans-serif;
	font-size: 1rem;
	font-weight: 600;
	text-decoration: none;
}
.pb-footer .pb-footer__list,
.pb-footer .pb-footer__contact-list {
	display: grid;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.pb-footer .pb-footer__link {
	opacity: .75;
	text-decoration: none;
	transition: opacity .2s ease;
}
.pb-footer .pb-footer__link:hover {
	opacity: 1;
}

/* Formulär – rullgardinsmenyer som textfälten */
.form-input.form-input--select {
	min-height: 50px;
	padding: .6rem .8rem;
	border-radius: 10px;
	background-color: rgba(239, 239, 239, .3);
}
