/* ===== Legacy / eksisterende klasser ===== */
.AAL_toppBakgrunn {
	width: 100%;
	background-color: #353535;
	margin-top: 10px;
	margin-bottom: 10px;
}
.AAL_menyTekstFarge {
	color: #FFF;
}
.AAL_bagrunnFarge {
	background-color: #FFF;
	border-radius: 6px;
	padding: 40px;
	filter: alpha(opacity=90);
	opacity: .9;
}
.AA_LogoBakgrunn {
	background-color: #FFF;
	border-radius: 6px;
	padding: 5px;
	filter: alpha(opacity=90);
	opacity: .9;
}
.AAL_PanelBoks {
	padding: 5px;
	border-bottom: solid 1px;
	border-left: solid 1px;
	border-right: solid 1px;
	border-radius: 0 4px 4px 4px;
}
.AAL_Panel_RammeFarge {
	border-color: #353535;
}
.AAL_Bakgrunn_f5f5f5 {
	background-color: #f5f5f5;
}

/* ===== Header / topp ===== */
#online-header {
	font-family: var(--aal-font, 'Open Sans', Arial, sans-serif);
}
/* Topp-linje over headeren */
.online-topbar {
	background-color: #ffffff !important;
	border-bottom: 1px solid #e9e9e9;
	font-size: 0.85rem;
}
.online-topbar a,
.online-topbar-link {
	font-size: 0.85rem;
	color: #333;
	text-decoration: underline;
}
.online-topbar a:hover,
.online-topbar-link:hover {
	color: #e46f32;
}
/* Toppmeny (Logg ut / Min konto osv.) */
.online-topmenu {
	list-style: none;
	padding-left: 0;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 1.2rem;
}
.online-topmenu li {
	display: inline-flex;
}
.online-topmenu-user {
	font-size: 0.85rem;
	color: #333;
	margin-right: 0.75rem;
}
/* Øverste header-rad */
.online-header-top {
	background-color: #f5f5f5;
	border-bottom: 1px solid #e3e3e3;
	padding: 0;
}
.online-header-logo img {
	display: block;
}
/* “banner”-feltet i header (midten) */
.online-header-topimage {
	position: relative;
	height: 110px;
	background-image: url('/mal/header-background.jpg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	overflow: hidden;
	padding: 0;
}
/* Grøn stripe venstre / oransje stripe høyre i header-banner */
.online-header-topimage::before,
.online-header-topimage::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 60px;
}
.online-header-topimage::before {
	left: 0;
	background-color: #003F34;
}
.online-header-topimage::after {
	right: 0;
	background-color: #D97E4A;
}

/* ===== Main-nav / meny ===== */
.online-mainnav {
	background-color: #ffffff;
	border-bottom: 1px solid #e9e9e9;
	padding-top: 0.6rem;
	padding-bottom: 0.6rem;
}
.online-inner-nav {
	background: transparent;
	padding: 0;
}
/* Meny-lenker */
.online-mainnav .navbar-nav .nav-link {
	font-size: 0.95rem;
	font-weight: 500;
	color: #333333;
	padding: 0.25rem 1.1rem;
	text-decoration: none;
	position: relative;
}
.online-mainnav .navbar-nav .nav-link:hover,
.online-mainnav .navbar-nav .nav-link:focus {
	color: #e46f32;
	text-decoration: underline;
}
.online-mainnav .navbar-nav .nav-link.active {
	color: #e46f32;
	text-decoration: underline;
}
/* Link-stil (Kontakt osv.) */
.online-mainnav-link {
	font-size: 0.9rem;
	color: #333;
	text-decoration: underline;
}
.online-mainnav-link:hover {
	color: #e46f32;
}
/* Meny spacing */
.online-mainmenu .nav-item {
	margin: 0 6px !important;
}
.online-mainmenu .nav-link {
	padding-left: 0.4rem !important;
	padding-right: 0.4rem !important;
}
/* Tving hovedmeny horisontal */
.online-mainnav .online-mainmenu {
	display: flex;
	flex-direction: row;
	align-items: center;
}
/* Dropdown skal ligge over (ikke dytte siden) */
.online-mainnav .dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
	margin-top: 0.25rem;
	z-index: 1050;
}
/* Burger-knapp (kun i header) */
#online-header .navbar-toggler {
	border: none !important;
	padding: 0.5rem;
	background-color: #ffffff;
}
#online-header .navbar-toggler:focus {
	outline: none !important;
	box-shadow: none !important;
}
/* “3 streker” ikon */
#online-header .navbar-toggler-icon {
	width: 26px;
	height: 3px;
	background-color: #003F34;
	position: relative;
	border-radius: 2px;
}
#online-header .navbar-toggler-icon::before,
#online-header .navbar-toggler-icon::after {
	content: "";
	position: absolute;
	left: 0;
	width: 26px;
	height: 3px;
	background-color: #003F34;
	border-radius: 2px;
}
#online-header .navbar-toggler-icon::before {
	top: -7px;
}
#online-header .navbar-toggler-icon::after {
	top: 7px;
}

/* ===== Footer ===== */
.online-footer-top {
	background-color: #f5f5f5;
	border-top: 1px solid #e3e3e3;
}
/* topptekst */
.online-footer-copy {
	font-size: 0.9rem;
	color: #333;
}
/* nederste rad */
.online-footer-bottom {
	background-color: #f5f5f5;
	border-top: 1px solid #e3e3e3;
	font-size: 0.85rem;
}
/* Footer banner */
.online-footer-banner {
	background-color: #f5f5f5;
	border-top: 1px solid #e3e3e3;
	border-bottom: 1px solid #e3e3e3;
	padding: 0;
	height: 80px;
}
.online-footer-topimage {
	position: relative;
	height: 80px;
	display: flex;
	align-items: center;
}
/* Ikke tving footer-banner til h-100 */
.online-footer-banner .container,
.online-footer-banner .row {
	height: auto !important;
}
.online-footer-banner .row {
	align-items: stretch !important;
}
/* Grøn/oransje stripe i footer-banner */
.online-footer-topimage::before,
.online-footer-topimage::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 60px;
}
.online-footer-topimage::before {
	left: 0;
	background-color: #003F34;
}
.online-footer-topimage::after {
	right: 0;
	background-color: #D97E4A;
}
.footer-top-inner {
	position: relative;
	padding: 0 20px;
	z-index: 1;
}
.footer-aicon {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	object-fit: contain;
}
.footer-tagline {
	font-size: 0.95rem;
	font-weight: 500;
	color: #333;
	white-space: nowrap;
}
/* Footer icons */
.footer-icons {
	display: flex;
	gap: 20px;
	margin-top: 10px;
}
.footer-icons a img {
	width: 28px;
	height: 28px;
	filter: grayscale(100%);
	transition: 0.2s ease;
}
.footer-icons a:hover img {
	filter: grayscale(0%);
	transform: scale(1.12);
}
.footer-topbar.container-fluid {
	padding: 0;
}

/* =========================
   Produktkort (BS5) – EN versjon
   ========================= */
.product-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	border: 0;
	border-radius: 0;
	overflow: hidden;
}
/* Bildet: fast flate */
.product-card-image-wrapper {
	background: #fff;
	padding: 0;
	aspect-ratio: 4 / 3;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
/* Bildet fyller flaten bedre */
.product-card-img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
	transform: scale(1.12); /* gjør at “mye hvit bakgrunn”-bilder oppleves større */
	transform-origin: center;
}
/* Grønn del: flex-kolonne slik at knapper kan ligge nederst */
.product-card-body {
	background: #cfdcd6;
	padding: 1.25rem;
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 1;
}
/* Knekk nede til høyre */
.product-card-body::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 34px 34px;
	border-color: transparent transparent #fff transparent;
}
.product-card-title {
	font-size: 1.25rem;
	font-weight: 700;
	margin: 0 0 .75rem 0;
}
/* dt/dd i 1 kolonne */
.product-card-details.row > * {
	flex: 0 0 100% !important;
	max-width: 100% !important;
}
.product-card-details dt {
	font-weight: 700;
	margin-top: .5rem;
}
.product-card-details dd {
	margin-bottom: .25rem;
}
.product-card-stock {
	margin-top: .75rem;
	display: inline-block;
}
/* Bestillingsvare-tekst */
.product-card-extra {
	display: block;
	margin-top: .35rem;
}
/* Knapper inni grønn del */
.product-card-actions {
	margin-top: auto; /* skyv knapper ned */
	padding-top: .9rem;
}
.product-card-action-link {
	display: block;
	background: rgb(0, 63, 52); /* 80 % synlig */
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	text-align: center;
	padding: .65rem .75rem;
	border-radius: 6px; /* avrundede hjørner */
	transition: background-color 0.2s ease, opacity 0.2s ease, transform 0.15s ease;
}
.product-card-action-link + .product-card-action-link {
	margin-top: 6px;
}
.product-card-action-link:hover {
	background: rgba(0, 63, 52, 0.6); /* 60 % synlig */
	opacity: 1; /* behold lesbarhet */
	transform: translateY(-1px); /* subtil "løft" */
	text-decoration: none;
}


/* ===============================
   AAL PANEL MED RAMME + KNEKK
   (påvirker IKKE nav-tabs)
   =============================== */
.aal-panel-frame {
	--aal-border: 2px;
	--aal-notch: 32px;
	--aal-green: #003F34;
	--aal-bg: #f5f5f5;
	position: relative;
	background: var(--aal-green); /* “rammefargen” */
	padding: var(--aal-border); /* tykkelse på ramma */
	margin-top: 0.75rem; /* valgfritt: litt luft under tabs */
	/* Form med knekk */
	-webkit-clip-path: polygon( 0 0, 100% 0, 100% calc(100% - var(--aal-notch)), calc(100% - var(--aal-notch)) 100%, 0 100% );
	clip-path: polygon( 0 0, 100% 0, 100% calc(100% - var(--aal-notch)), calc(100% - var(--aal-notch)) 100%, 0 100% );
}
/* Innholdet får samme form -> ramma følger også knekken */
.aal-panel {
	background: var(--aal-bg);
	padding: 1.25rem;
	position: relative;
	-webkit-clip-path: polygon( 0 0, 100% 0, 100% calc(100% - var(--aal-notch)), calc(100% - var(--aal-notch)) 100%, 0 100% );
	clip-path: polygon( 0 0, 100% 0, 100% calc(100% - var(--aal-notch)), calc(100% - var(--aal-notch)) 100%, 0 100% );
}
/* Tittel */
.aal-panel-title {
	margin: 0 0 .75rem 0;
	font-weight: 700;
	color: #003F34;
}
/* Valgfritt: Aaltvedt-grønn underline på aktiv tab */
.nav-underline .nav-link.active {
	border-bottom-color: #003F34;
	color: #003F34;
}
/* Info popover sizes */
.aaltvedt-popover-small {
	max-width: 220px;
}
.aaltvedt-popover-normal {
	max-width: 280px; /* ~ Bootstrap default */
}
.aaltvedt-popover-wide {
	max-width: 420px;
}
.aaltvedt-popover-xwide {
	max-width: 600px;
}

.accordion-button.bg-green {
	--bs-accordion-btn-bg: var(--bs-success-bg-subtle);
	--bs-accordion-btn-color: var(--bs-success-text-emphasis);
	--bs-accordion-active-bg: var(--bs-success-bg-subtle);
	--bs-accordion-active-color: var(--bs-success-text-emphasis);
	border: 3px solid var(--bs-light-border-subtle) !important;
}
.accordion-button.bg-yellow {
	--bs-accordion-btn-bg: var(--bs-warning-bg-subtle);
	--bs-accordion-btn-color: var(--bs-warning-text-emphasis);
	--bs-accordion-active-bg: var(--bs-warning-bg-subtle);
	--bs-accordion-active-color: var(--bs-warning-text-emphasis);
	border: 3px solid var(--bs-light-border-subtle) !important;
}
.accordion-button.bg-red {
	--bs-accordion-btn-bg: var(--bs-danger-bg-subtle);
	--bs-accordion-btn-color: var(--bs-danger-text-emphasis);
	--bs-accordion-active-bg: var(--bs-danger-bg-subtle);
	--bs-accordion-active-color: var(--bs-danger-text-emphasis);
	border: 3px solid var(--bs-light-border-subtle) !important;
}
.accordion-button.bg-bla {
	--bs-accordion-btn-bg: var(--bs-info-bg-subtle);
	--bs-accordion-btn-color: var(--bs-info-text-emphasis);
	--bs-accordion-active-bg: var(--bs-info-bg-subtle);
	--bs-accordion-active-color: var(--bs-info-text-emphasis);
	border: 3px solid var(--bs-light-border-subtle) !important;
}

/* Gir venstre/høyre layout, og hindrer at pilen tar all plass */
.accordion-button.aal-split {
	justify-content: flex-start;
	gap: .5rem; /* valgfritt */
}
/* Bootstrap har margin-left:auto her – det er det som ødelegger høyrejusteringen */
.accordion-button.aal-split::after {
	margin-left: .75rem; /* juster etter smak */
}
/* Viktig for at venstre del kan kuttes og ikke dytter høyre del */
.accordion-button.aal-split .aal-left {
	min-width: 0;
}

/* Aaltvedt HR */
hr.aal-hr {
	border-color: var(--aal-green, #003F34);
	opacity: 1;
}