:root {
--font: verdana;


--base-color: #fff;


--base-text-color: #000;



--footer-color: #3C3C3C;


--footer-text-color: #fff;

--button-color: #98139c;


--button-hover-color: #cb0083;


--button-text-color: #000;


--header-color: #fff;


--header-text-color: #000;


--clear-filters-display-text: inline-block;


--clear-filters-display-icon: inline-block;

}

	.es-clear-all-filters-button .button-text {
	display: var(--clear-filters-display-text);
	}

	.es-clear-all-filters-button .button-icon {
	display: var(--clear-filters-display-icon);
	}

/* font-family: 'Font Awesome 6 Free'; */

/* Include in javascript 
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&icon_names=chevron_right" /> */

/* Google Icons
   font-family: 'Material Symbols Outlined' !important;
   font-family: 'Material Symbols Rounded' !important;
   font-family: 'Material Symbols Sharp' !important;
*/

 :root {
     /* Base â alias the variables exposed by the Responsive profile
        (--base-color, --button-color, --header-color, â¦) so anything the
        admin changes in the profile flows through automatically. */
     --white:#fff;
     --black:#000;

     /* Brand (matches Figma). Where the profile already exposes the value
        we delegate to that variable and only fall back if it's missing. */
     --indigo:#4F0077;          /* primary headings/accents */
     --purple: var(--button-color, #98139C);          /* Knapp */
     --purple-hover: var(--button-hover-color, #4F0077); /* Knapp mouseover */
     --green:#45B649;           /* success / kjÃ¸p */
     --green-tint:#B1F2B3;
     --orange:#D54328;

     /* Neutrals */
     --grey-25:#ECEFF0;
     --grey-35:#D4DADC;
     --grey-50:#B4BCBF;
     --grey-75:#535A5C;

     /* Surfaces from the profile */
     --surface: var(--base-color, #fff);
     --surface-text: var(--base-text-color, #000);
     --header-bg: var(--header-color, #fff);
     --header-text: var(--header-text-color, #000);
     --footer-bg: var(--footer-color, #3C3C3C);
     --footer-text: var(--footer-text-color, #fff);
     --button-text: var(--button-text-color, #fff);

     /* Legacy aliases kept so older rules don't break */
     --color3:var(--indigo);
     --color4:var(--grey-35);

     /* Shape & spacing */
     --radius:10px;
     --radius-l:20px;
     --side-margin:40px;

     /* Typography â profile already sets Verdana globally via --font */
     --font-body: var(--font, Verdana, Geneva, Tahoma, sans-serif);
     --font-heading: var(--font, Verdana, Geneva, Tahoma, sans-serif);
     --fs-h2:36px;
     --fs-h3:27px;
     --fs-md:18px;
     --fs-base:16px;
     --fs-xs:14px;

     --awesome:"Font Awesome 6 Free";
     --icon:'Material Symbols Rounded' !important;
}



.minibasket .minibasket-icon,
.minibasket .minibasket-icon:hover {
    font-size: 1.5rem;
    text-align: center;
    border-radius: 8px;
    display: inline-block;
    position: relative;
    margin-left: 12px;
    padding-top: 2px;
    padding-bottom: 2px;
    height: 42px;
    width: 42px;
    border: 1.5px solid var(--black);
    background-color: var(--white);
    color: var(--black);
    transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

.minibasket .minibasket-icon:hover {
    background-color: var(--purple);
    color: var(--white);
    border-color: var(--purple);
}

/* Button hover aligns with responsive profile (Knapp mouseover) */
.button,
.button.disabled,
.button[disabled],
.button.primary {
    background-color: var(--purple) !important;
    color: var(--button-text) !important;
    border-radius: var(--radius);
    transition: background-color .15s ease, color .15s ease;
}
.button:hover,
.button:focus,
.button.primary:hover,
.button.primary:focus {
    background-color: var(--purple-hover) !important;
    color: var(--button-text) !important;
}
/* "Logg inn" pill in the header (rendered as div.minibasket-icon.login-button) */
.minibasket-icon.login-button {
    background-color: var(--purple) !important;
    color: var(--button-text) !important;
    border: 1.5px solid var(--purple) !important;
    transition: background-color .15s ease, border-color .15s ease;
}
.minibasket-icon.login-button:hover {
    background-color: var(--purple-hover) !important;
    border-color: var(--purple-hover) !important;
}

/* ----Top Menu ----
   Header background is controlled by the responsive profile (Sidehode = #fff),
   so we don't force a colour here. Make sure links inside the white header
   stay readable. */
.header-wrapper.collapse {
    background-color: var(--white) !important;
    border-bottom: 1px solid var(--grey-25);
}

.header-bar-section-links-item a {
    color: var(--black);
}
.header-bar-section-links-item a:hover {
    color: var(--purple);
}


/* Slider */

.bx-wrapper {
	-moz-box-shadow: none!important;
	-webkit-box-shadow: none!important;
	box-shadow: none!important;
	border: 0px!important;
	background: #fff;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover, .bx-wrapper .bx-pager.bx-default-pager a.active, .bx-wrapper .bx-pager.bx-default-pager a:focus {
	background: var(--purple)!important;
	border-color: var(--purple)!important;
}
.bx-wrapper .bx-pager.bx-default-pager a {
	border: 1px solid var(--grey-50)!important;
	background: var(--white)!important;
}



/*  Search bar â pill shape, indigo accent */
.product-search-input-container {
    position: relative;
    padding: 8px 14px;
    background-color: var(--white) !important;
    border: 2px solid var(--black);
    border-radius: 999px;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.product-search-input-container:focus-within {
    border-color: var(--indigo);
    box-shadow: 0 0 0 3px rgba(79, 0, 119, .12);
}

.product-search .product-search-input {
    display: inline-block;
    width: 85%;
    margin-bottom: 0;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background-color: var(--white) !important;
    color: var(--black) !important;
    padding: 5px;
    font-size: var(--fs-base);
}

.fas.fa-times.product-search-clear-button {
    display: none !important; 
/* this hides the element */
   }
.product-search-clear-button {
    display: none !important; 
/* this hides the element */
   }




.product-search .product-search-button {
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
    font-size: 1.6rem;
    color: var(--indigo);
    padding: 7px 6.4px;
    float: right;
    transition: color .15s ease;
}
.product-search .product-search-button:hover {
    color: var(--purple);
}

/* Flex Container */
.flex-container {
  display: flex;
  align-items: stretch;
  justify-content: space-around;
  text-align: center;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 20px 0; /* Fjernet padding pÃ¥ venstre og hÃ¸yre */
  box-sizing: border-box;
  height: auto !important;
}

.flex-container > div {
  background-color: #ffffff;
  height: auto;
  margin: 10px;
  font-size: 30px;
  flex: 1 1 17%;
  min-width: 0;
  padding: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease, transform 0.3s ease;
  text-align: center;
  border-radius: 8px; /* Rounded corners */
  box-sizing: border-box;
}


/* Image Styling */
.flex-container img {
    vertical-align: middle;
    width: 50px;
    margin-bottom: 10px; /* Space between image and text */
}

/* Text Styling */
.flex-container p {
    font-size: small;
    color: #333; /* Darker text color */
    margin: 0;
}

/* Hover Effect */
.flex-container > div:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
    transform: translateY(-5px); /* Slight lift on hover */
}


/* Icons */
i.fas.fa-search.product-search-button {
    color: var(--indigo);
}

i.fas.fa-chevron-left {
    transform: rotateY(183deg);
}


/* =====================================
			n-Menu
===================================== */

.menu-bar-desktop-products-menu-show-more {
    font-size: .8rem;
    font-weight: bold;
    padding-left: 0px;
}
.menu-bar-desktop-products-menu-items {padding-left:0px;transition:.2s ease-in-out;}
.menu-bar-desktop-products-menu-items a {transition:.2s ease-in-out;}
.menu-bar-desktop-products-menu-items a:hover {padding-left:10px;transition:.2s ease-in-out;}
.menu-bar-desktop-categories-menu-item {
    border-bottom: none;
    cursor: pointer;
    line-height: 34px;
    padding-left: 15px;
    position: relative;
    width: fit-content;
}
ul.menu-bar-desktop-categories-menu-items {
    padding: 14px 0px;
}
.menu-bar-desktop-products-menus {
    padding: 14px;
}
.menu-bar-desktop-products-menu-label {
    border-bottom: none;
}
.menu-bar-desktop-categories-menu-item:hover {
    background-color: transparent;
    box-shadow: inset 7px 0px 0px 0px var(--black);
    transition:.2s ease-in-out;
}
.menu-bar-desktop-categories-menu-item:hover>a {
    color: #aaa;
}

/* Resource menu */
.resource-menu-desktop ul li>ul>li:hover {background: none;}

/* Login Box */
.message-box {
    position: absolute;
    bottom: 0px;
    font-size: 13px;
}
button.button.login-form-button {
	background-color: var(--button-hover-color)!important;
	border-radius: 2px;
	padding: 11px 30px;
	color: #fff;
	font-weight: 700;
	float: right;
}
.login-container, .checkout-login-container {
	width: 1200px!important;
	background-color: var(--base-color);
}
.login-form-forgot-password {
	background-color: transparent!important;
	color: --base-text-color!important;
	float: right;
	margin-right: 24px;
}
label.forgot-password-email.input-required {
	color: #fafafa;
}
.login-form-forgot-password::before {
    content: "\f0e0";
    margin-right: 6px;
    top: 0px;
    position: relative;
    font-family: 'Font Awesome 6 Free';
}
.login-form-register {
	float: right;
	color: #D60115!important;
	border: 2px solid #D60115;
	background-color: transparent!important;
	font-weight: bold;
	position: absolute;
	top: 16px;
	right: 41px;
	border-radius: 2px;
}
form#loginform {
	position: relative;
	height: 190px;
}
#loginform {
	padding: 40px;
	padding: 48px 40px 40px 40px;
}
.forgot-password-form {
	padding: 40px;
}
#loginform .login-username, #loginform .login-password {
	width: 50%;
	float: left;
	color: #fafafa;
}
#loginform label:nth-child(2) {
	float: right;
}
.login-username {
	padding-right: 10px;
}
.login-password {
	padding-left: 10px;
}
#loginform input[type="text"], input[type="password"] {
	border-radius: 3px;
}
[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea {
	box-shadow: none;
}
button.login-form-forgot-password:hover {
	background-color: transparent;
	opacity:0.6!important;
}
.login-username.input-required {
	color: #fafafa!important;
}
/* =====================================
			n-Filter Page
===================================== */

/* Filter Menu */
.es-filters-wrapper {
    box-shadow: none;
    background-color: #fff;
    padding: 1px 17px 12px;
    margin-bottom: 30px;
    border: none;
}

.row.medium-uncollapse.es-product-list .columns.small-12.medium-3 {
    padding-left: 0px !important;
}



/* =====================================
			n-Product Page
===================================== */


.product-card .product-card-price .price .price-text {
    font-size: 2rem;
    font-weight: bold;
    color: #1c1c1c;
}
.product-card__tablinks {
    margin-top: 10px;
}
.admin-tablink {
    border-left: 1px solid var(--black);
    padding: 0px;
}
.product-card-information-container > div > div.product-card__tablinks > a:nth-child(2), .product-card-information-container > div > div.product-card__tablinks > a:nth-child(3) {padding-left:7px; margin-right:5px;}

/* Accordion */

.accordion-title {
  font-size: 16px;
  font-weight: 700;
}
.product-card-tabs .accordion-title {
  padding: 17px 22px;
  background-color: #fff;
  font-weight: bold;
}
.product-card-tabs .accordion li {
  border: none;
  margin-bottom: 5px;
  background-color: #fff;
}
.product-card-tabs .accordion-title:after {
  content: inherit;
}
i.fas.fa-plus.tab-expand {
  content: inherit;
  position: inherit;
  right: inherit;
  top: inherit;
  color: var(--indigo);
}
i.fas.fa-minus.tab-fold {
  content: inherit;
  position: inherit;
  right: inherit;
  top: inherit;
  color: var(--indigo);
}
.tab-expand, .tab-fold {
  color: #231F20;
}
.product-card-tabs .accordion-title:hover {
  background-color: #fff;
}
table tbody tr:nth-child(odd) {
  box-shadow: inset 0px -1px #D9D9D9;
  background-color: #fff;
}
table tbody tr:nth-child(even) {
  box-shadow: inset 0px -1px #D9D9D9;
  background-color: #fff;
}
.product-card-tabs .accordion-content {
  background-color: transparent;
  padding: 0px 22px!important;
  margin: 0px;
}
.product-card-tabs .accordion {
  background-color: transparent;
}
th.product-card-specification-label {
  font-size: 16px;
  font-weight: 700 !important;
  line-height: 28px;
  text-align: left;
}
:last-child:not(.is-active)>.accordion-title {
  border-bottom: 0px;
  border-radius: 0 0 0 0;
}
:last-child>.accordion-content:last-child {
  border-bottom: none;
}
.product-card-tab-information {
  padding-bottom: 20px;
}
.ccs-ds-extendedSpec-header {
    background: none!important;
}


/* =====================================
            n-Typography
   Font family is set globally by the responsive profile (Verdana). These
   rules only tune size / weight / colour to match the Figma scale.
===================================== */
main h1, main h2, main h3, main h4, main h5 {
    font-family: var(--font-heading);
    color: var(--black);
    line-height: 1.2;
    margin: 0 0 .5em;
}
main h2 { font-size: var(--fs-h2); font-weight: 700; }
main h3 { font-size: var(--fs-h3); font-weight: 700; }
main h4 { font-size: var(--fs-md); font-weight: 700; }
main h5 { font-size: var(--fs-base); font-weight: 700; }
main p  { font-size: var(--fs-base); line-height: 1.5; color: var(--black); }

/* Navigation row under the header */
.menu-bar-desktop {
    background-color: var(--white);
    border-bottom: 1px solid var(--grey-25);
}
.menu-bar-desktop a {
    color: var(--black);
    font-weight: 600;
    transition: color .15s ease;
}
.menu-bar-desktop a:hover {
    color: var(--purple);
}

/* =====================================
            n-Front Page
   Targeted at the first_page layout: welcome / "Anbefalte" / "Mest solgte".
   Selectors are intentionally generic so they hold up if class names shift.
===================================== */

/* Section wrappers â give every block consistent vertical rhythm */
main > div,
main > section {
    margin-bottom: 40px;
}

/* "Kunde sektion" welcome â soften the legacy <table> layout */
main h2 + table,
main h3 + table {
    width: 100%;
    background-color: var(--grey-25);
    border-radius: var(--radius-l);
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
}
main h2 + table td,
main h3 + table td {
    padding: 24px;
    vertical-align: middle;
    background-color: transparent !important;
    box-shadow: none !important;
}
main h2 + table img,
main h3 + table img {
    max-width: 100%;
    height: auto;
    border-radius: var(--radius);
}

/* Product cards on the home page (Anbefalte noteboks / tilbehÃ¸r) */
.product-card,
main [class*="product"][class*="card"] {
    background-color: var(--white);
    border: 1px solid var(--grey-25);
    border-radius: var(--radius);
    padding: 16px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .04);
    transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.product-card:hover,
main [class*="product"][class*="card"]:hover {
    box-shadow: 0 8px 18px rgba(0, 0, 0, .08);
    transform: translateY(-3px);
    border-color: var(--grey-35);
}
.product-card img,
main [class*="product"][class*="card"] img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    aspect-ratio: 4 / 3;
    margin-bottom: 12px;
}
.product-card h5,
.product-card h6 {
    margin: 4px 0;
}
.product-card a {
    color: var(--black);
    text-decoration: none;
}
.product-card a:hover {
    color: var(--purple);
}
/* "Logg inn for pris" pill at the bottom of each card */
.product-card h6 {
    margin-top: auto;
    padding-top: 8px;
    color: var(--indigo);
    font-weight: 700;
}

/* "Mest solgte" â clean vertical list */
main h2 + ul,
main h3 + ul {
    list-style: none;
    margin: 0;
    padding: 0;
    background-color: var(--white);
    border: 1px solid var(--grey-25);
    border-radius: var(--radius);
    overflow: hidden;
}
main h2 + ul > li,
main h3 + ul > li {
    padding: 12px 16px;
    border-bottom: 1px solid var(--grey-25);
    transition: background-color .15s ease;
}
main h2 + ul > li:last-child,
main h3 + ul > li:last-child {
    border-bottom: none;
}
main h2 + ul > li:hover,
main h3 + ul > li:hover {
    background-color: var(--grey-25);
}
main h2 + ul > li a,
main h3 + ul > li a {
    color: var(--black);
    text-decoration: none;
    font-weight: 600;
}
main h2 + ul > li a:hover,
main h3 + ul > li a:hover {
    color: var(--purple);
}
main h2 + ul ul,
main h3 + ul ul {
    list-style: none;
    padding: 4px 0 0;
    margin: 0;
}
main h2 + ul ul h6,
main h3 + ul ul h6 {
    color: var(--indigo);
    font-size: var(--fs-xs);
    font-weight: 700;
    margin: 0;
}

/* "Anbefalte tilbehÃ¸r" salesperson card fallback */
main h2 + div a[href^="mailto:"],
main h3 + div a[href^="mailto:"] {
    color: var(--purple);
    font-weight: 600;
    text-decoration: none;
}
main h2 + div a[href^="mailto:"]:hover,
main h3 + div a[href^="mailto:"]:hover {
    text-decoration: underline;
}

/* Services strip already uses .flex-container â refine to match Figma */
.flex-container > div {
    background-color: var(--white);
    border: 1px solid var(--grey-25);
    border-radius: var(--radius);
    box-shadow: 0 2px 6px rgba(0, 0, 0, .04);
}
.flex-container > div:hover {
    box-shadow: 0 8px 18px rgba(0, 0, 0, .08);
    border-color: var(--grey-35);
}
.flex-container p {
    font-size: var(--fs-base);
    color: var(--black);
    font-weight: 600;
}

/* Footer */
footer,
.footer,
main + div:last-child {
    background-color: var(--grey-25);
    color: var(--black);
    padding: 32px var(--side-margin);
    margin-top: 48px;
}
footer a,
.footer a {
    color: var(--black);
}
footer a:hover,
.footer a:hover {
    color: var(--purple);
}
footer h3,
footer h4,
.footer h3,
.footer h4 {
    color: var(--black);
    margin-top: 0;
}

/* =====================================
            n-Responsive
===================================== */
@media (max-width: 1024px) {
    main h2 { font-size: 30px; }
    main h3 { font-size: 24px; }

    .flex-container { flex-wrap: wrap; }
    .flex-container > div { flex: 1 1 calc(50% - 20px); }
}

@media (max-width: 640px) {
    :root { --side-margin: 16px; }

    main h2 { font-size: 26px; }
    main h3 { font-size: 22px; }

    .flex-container > div { flex: 1 1 100%; }

    /* Stack the welcome table on mobile */
    main h2 + table,
    main h3 + table,
    main h2 + table tbody,
    main h3 + table tbody,
    main h2 + table tr,
    main h3 + table tr,
    main h2 + table td,
    main h3 + table td {
        display: block;
        width: 100%;
    }
    main h2 + table td,
    main h3 + table td { padding: 16px; }

    /* Single-column product cards */
    .product-card,
    main [class*="product"][class*="card"] {
        padding: 12px;
    }

    /* Header items wrap nicely */
    .header-wrapper.collapse {
        padding-left: 16px;
        padding-right: 16px;
    }
    .minibasket .minibasket-icon {
        margin-left: 6px;
    }
}
