.elementor-kit-8{--e-global-color-primary:#004C4F;--e-global-color-secondary:#54595F;--e-global-color-text:#070707;--e-global-color-accent:#D3FFA0;--e-global-color-5554131:#FFFFFF;--e-global-color-1feada1:#F8F4EC;--e-global-color-33ce6fa:#450A12;--e-global-color-92bc434:#690A12;--e-global-color-b2acefd:#851A24;--e-global-color-c0d9fdf:#EB008C;--e-global-color-1c94ac4:#EB5A6B;--e-global-color-2acea7b:#FCB8DC;--e-global-color-a70a741:#FFB68A;--e-global-color-3725816:#003F42;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-size:55px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-line-height:60px;--e-global-typography-secondary-font-family:"Open Sans";--e-global-typography-secondary-font-size:16px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-line-height:24px;--e-global-typography-text-font-family:"Open Sans";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:300;--e-global-typography-text-font-style:normal;--e-global-typography-text-line-height:26px;--e-global-typography-accent-font-family:"Open Sans";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:300;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-line-height:23px;--e-global-typography-3bec4fa-font-family:"Roboto";--e-global-typography-3bec4fa-font-size:14px;--e-global-typography-3bec4fa-font-weight:500;--e-global-typography-3bec4fa-text-transform:uppercase;--e-global-typography-3bec4fa-font-style:normal;--e-global-typography-3bec4fa-line-height:112px;--e-global-typography-5ed3a82-font-family:"Bricolage Grotesque";--e-global-typography-5ed3a82-font-size:40px;--e-global-typography-5ed3a82-font-weight:400;--e-global-typography-5ed3a82-line-height:50px;--e-global-typography-cf6e55c-font-family:"Bricolage Grotesque";--e-global-typography-cf6e55c-font-size:30px;--e-global-typography-cf6e55c-font-weight:600;--e-global-typography-cf6e55c-line-height:44px;--e-global-typography-59eab2a-font-family:"Open Sans";--e-global-typography-59eab2a-font-size:25px;--e-global-typography-59eab2a-font-weight:300;--e-global-typography-59eab2a-line-height:1em;--e-global-typography-9e3771f-font-family:"Open Sans";--e-global-typography-9e3771f-font-size:22px;--e-global-typography-9e3771f-font-weight:300;--e-global-typography-9e3771f-line-height:30px;--e-global-typography-48d6e1a-font-family:"Open Sans";--e-global-typography-48d6e1a-font-size:25px;--e-global-typography-48d6e1a-font-weight:400;--e-global-typography-1aeac59-font-family:"Open Sans";--e-global-typography-1aeac59-font-size:19px;--e-global-typography-1aeac59-font-weight:300;--e-global-typography-1aeac59-line-height:27px;--e-global-typography-6e4a32d-font-family:"Open Sans";--e-global-typography-6e4a32d-font-size:17px;--e-global-typography-6e4a32d-font-weight:500;--e-global-typography-6e4a32d-text-decoration:none;--e-global-typography-e199d7f-font-family:"Open Sans";--e-global-typography-e199d7f-font-size:23px;--e-global-typography-e199d7f-font-weight:500;--e-global-typography-3a1f56c-font-family:"Open Sans";--e-global-typography-3a1f56c-font-size:30px;--e-global-typography-3a1f56c-font-weight:500;--e-global-typography-ded0b68-font-family:"Open Sans";--e-global-typography-ded0b68-font-size:14px;background-color:var( --e-global-color-5554131 );color:var( --e-global-color-secondary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );font-style:var( --e-global-typography-text-font-style );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:var( --e-global-color-accent );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );font-style:var( --e-global-typography-text-font-style );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 h1{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );font-style:var( --e-global-typography-primary-font-style );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-8 h2{color:var( --e-global-color-33ce6fa );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1464px;}.e-con{--container-max-width:1464px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-header .site-navigation ul.menu li a{color:var( --e-global-color-5554131 );}.site-footer .site-branding{flex-direction:column;align-items:stretch;}footer .footer-inner .site-navigation a{color:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-kit-8{--e-global-typography-primary-font-size:44px;--e-global-typography-primary-line-height:50px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-8 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{--e-global-typography-primary-font-size:40px;--e-global-typography-primary-line-height:41px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-8 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.office-marker img {
    width: 60px !important;
    height: auto !important;
    max-width: 60px !important;
}

.office-marker {
    background: transparent !important;
    border: none !important;
}

.marker-wrapper {
    position: relative;
    display: inline-block;
}

.marker-wrapper img {
    width: 60px;
    height: auto;
    display: block;
}

.marker-arrow {
    position: absolute;
    left: 50%;
    bottom: -10px;
    transform: translateX(-50%);

    width: 0;
    height: 0;

    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 12px solid #f07c59;
}

#map {
    border: 1px solid rgba(0,0,0,.08);
}

.max-text {
    width: 700px !important;
}

.max-text-home {
    width: 400px !important;
}

/* Skjul Elementors originale taxonomy filter */
.taxonomy-hidden {
    position: absolute;
    left: -9999px;
    opacity: 0;
}

/* ==========================================
   FINN EN ANSATT
========================================== */

/* ==========================================
   FELLES / FILTERLINJE
========================================== */

.employee-toolbar {
    position: sticky;
    top: 80px;
    z-index: 2000!important;

    display: flex;
    width: 100%;
    align-items: center;
    gap: 0;

    padding-left: 20px;
    padding-right: 20px;

    box-sizing: border-box;

    background: #f8f4ec;
    border-radius: 999px;

    transition: background 0.2s ease;

    /* Hvit buffer rundt toolbaren */
    box-shadow: 0 0 0 40px #fff;
}


/* Hele feltet skifter farge når søkefeltet er aktivt */
.employee-toolbar:focus-within {
    background: #ffb68a;
}


/* ==========================================
   SØKEFELT
========================================== */

.employee-search {
    width: 100% !important;
    height: 72px;
    
    box-sizing: border-box;
    
    border: none !important;
    border-radius: 999px !important;
    
    background: transparent !important;
    
    padding: 0 370px 0 50px;
    
    font-size: 30px;
    color: #222;
    
    outline: none;
}

/* Placeholder */
.employee-search::placeholder {
    color: #555;
}

/* Søkeikon */
.employee-search-wrapper {
    position: relative;
    width: 100%;
    min-width: 0;
}

.employee-search-wrapper i {
    position: absolute;
    left: 28px;
    top: 50%;
    
    transform: translateY(-50%);
    
    font-size: 24px;
    color: #555;
    
    pointer-events: none;
}


/* ==========================================
   AVDELINGSKNAPP
========================================== */

.employee-filter {
    position: absolute;
    right: 0;
    top: 0;
    width: 340px;
    min-width: 340px;
}

.employee-filter__button {
    position: relative;

    width: 100% !important;
    height: 72px;

    padding: 0 !important;

    border: none !important;
    border-radius: 999px !important;
    background: transparent !important;

    color: #222;
    cursor: pointer;
}

/* Åpen dropdown – samme farge som knappen */
.employee-filter.open .employee-filter__button,
.employee-filter.open .employee-filter__menu {
    background: #f8f4ec !important;
}

.employee-filter.open .employee-filter__button {
    border-radius: 35px 35px 0 0 !important;
}


/* Teksten i knappen */
.employee-filter__text {
    position: absolute;
    right: 58px;
    top: 50%;
    transform: translateY(-50%);

    font-size: 30px !important;
    font-weight: 500;
    color: #222;

    white-space: nowrap;
}

/* PIL */
.employee-filter__arrow {
    position: absolute;
    right: 28px;
    top: 50%;

    width: 0.75em;
    height: 0.75em;

    transform: translateY(-50%);

    display: inline-flex;
    align-items: center;
    justify-content: center;

    margin: 0 !important;

    font-size: 30px;
    line-height: 1;

    color: #222;

    transition: transform 0.5s ease;
}

.employee-filter__arrow svg {
    width: 100%;
    height: 100%;
    display: block;
    transform-origin: center;
}

/* Snu pila når menyen åpnes */
.employee-filter.open .employee-filter__arrow {
    transform: rotate(180deg);
}


/* ------------------------------------------
   ÅPEN MENY
------------------------------------------ */

.employee-filter.open .employee-filter__arrow {
    transform: translateY(-50%) rotate(180deg);
}




/* ------------------------------------------
   TEKST
------------------------------------------ */

.employee-filter__text {
    display: inline-block;
    transition: transform 0.25s ease;
}


/* ==========================================
   DROPDOWN-MENY
========================================== */

.employee-filter__menu {
    position: absolute !important;
    top: calc(100% - 8px) !important;
    left: 0 !important;
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #f8f4ec !important;
    border-radius: 0 0 35px 35px !important;

    overflow: hidden;
    box-shadow: none !important;

    display: none;
    z-index: 999;
}

.employee-filter.open .employee-filter__menu {
    display: block;
}

.employee-filter__menu div {
    position: relative;
    text-align: right;
    padding: 20px 55px 20px 34px;
    
    cursor: pointer;
    
    font-size: 22px;
    
    transition: all 0.2s ease;
}

.employee-filter__menu div:hover {
    background: #450a12;
    color: #fff;
}

.employee-filter__menu div.active {
    background: #450a12;
    color: #fff;
}

.employee-filter__menu div.active::after {
    position: absolute;
    right: 24px;
    top: 50%;
    
    transform: translateY(-50%);
    
    font-size: 18px;
    font-weight: bold;
}

/* ==========================================
   TABLET
========================================== */

@media (min-width: 768px) and (max-width: 1024px) {

    .employee-search {
        height: 64px;
        padding: 0 300px 0 28px;
        font-size: 24px;
    }

    .employee-filter {
        width: 280px;
        min-width: 280px;
        right: 0;
    }

    .employee-filter__button {
        height: 64px;
        padding: 0 28px;
        font-size: 24px !important;
        gap: 8px;
    }
    
    .employee-filter__text {
        right: 48px;
        font-size: 24px !important;
    }
    
    .employee-filter__arrow {
        right: 24px;
        font-size: 24px;
    }
    
.employee-filter.open .employee-filter__button {
                border-radius: 28px 28px 0 0 !important;
    }

}


/* ==========================================
   MOBIL
========================================== */

@media (max-width: 767px) {

    .employee-toolbar {
        width: 100%;
    }

    .employee-search {
        height: 58px;
        padding: 0 250px 0 55px;
        font-size: 18px;
    }

    .employee-filter {
        position: absolute;
        top: 0;
        right: 0;

        width: 250px;
        min-width: 250px;
    }

    .employee-filter__button {
        height: 58px;
        width: 250px;
        padding: 0 15px;
        font-size: 18px !important;
        gap: 5px;
    }
    
    .employee-filter.open .employee-filter__button {
                border-radius: 28px 28px 0 0 !important;

    }

    .employee-filter__text {
        right: 38px;
        font-size: 18px !important;
        font-weight: 400;
    }
    
    .employee-filter__arrow {
        right: 14px;
        font-size: 18px;
    }

   .employee-filter__menu {
        top: calc(100% - 8px) !important;
        left: 0 !important;
        right: auto !important;

        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        border-radius: 0 0 28px 28px !important;
        box-shadow: none !important;
    }

    .employee-filter__menu div {
        font-size: 18px;
        padding-right: 40px;
    }
}


/* ==========================================
   LOOP
========================================== */

/* Vanlige ansattkort */
.e-loop-item {
    position: relative;
    z-index: 1;
    transition: 0.2s;
}

/* Løft kun kortet når popoveren er åpen */
.e-loop-item:has(.employee-popover.open) {
    z-index: 10 !important;
}

.e-loop-item[style*="display: none"] {
    display: none !important;
}

/* ==========================================
   KORT
========================================== */

.employee-card{

    position:relative;

}

/* ==========================================
   4 ANSATTER I BREDDEN – MINDRE DESKTOP
========================================== */

@media (min-width: 1025px) and (max-width: 1279px) {

    .elementor-loop-container {
        --e-loop-grid-columns: 3 !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .e-loop-item {
        min-width: 0 !important;
        width: auto !important;
    }

}

/* ==========================================
   KORTNAVN
========================================== */

.employee-kortnavn{

    display:none;

}


/* ==========================================
   LES MER
========================================== */

.employee-open{
    cursor:pointer;
    user-select:none;
    position:relative;
    z-index:200;

}

.employee-open.active{
    z-index:201;
}

.employee-open .elementor-widget-icon {
    transition: .3s ease;
    margin-left: auto;
    margin-right: 0;
}

/* + når kortet er lukket */
.employee-open .elementor-icon,
.employee-open .elementor-icon svg,
.employee-open .elementor-icon svg path {
    color: #070707 !important;
    fill: #070707 !important;
}


/* X når kortet er åpent */
.employee-open.active .elementor-icon,
.employee-open.active .elementor-icon svg,
.employee-open.active .elementor-icon svg path {
    color: #450a12 !important;
    fill: #450a12 !important;
}

.employee-open.active .elementor-widget-icon{

    transform:rotate(45deg);

}


/* ==========================================
   POPOVER
========================================== */

.employee-popover{

    position:absolute;

    left:0;

    right:0;

    top:calc(100% - 55px);

    background:#f8f4ec;

    border-radius:20px;

    opacity:0;

    visibility:hidden;

    transform:translateY(12px);

    transition:.25s;

    pointer-events:none;

}

.emplyee-popover-content {
    padding: 0px 20px 0px 20px;
    margin-bottom: 0px;
}

.employee-popover.open{

    opacity:1;

    visibility:visible;

    transform:none;

    pointer-events:auto;

}


/* ==========================================
   HEADER
========================================== */

.employee-popover-header {
    display: block !important;
    width: 100% !important;
    padding: 20px 20px 8px 20px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.employee-popover-header h4 {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #008189 !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}


/* ==========================================
   BESKRIVELSE
========================================== */

.employee-description{

    padding:0px 32px 28px 30px;

    margin:0;

}


/* ==========================================
   SKILLELINJE
========================================== */

.employee-popover .elementor-divider{

    margin:0;

}

.employee-popover .elementor-divider-separator{

    width:100% !important;

}

/* ==========================================
   HERO FORSIDE
========================================== */

.hero-title{

    font-size:clamp(42px, 7vw, 75px)!important;
    line-height:1.05!important;
    font-weight:400!important;

}

.hero-static{

    margin-right:.1em;

}

.hero-rotate{

    display:inline-block;

    overflow:hidden;

    white-space:nowrap;

    width:auto;
    
    min-width:16ch;

}

.hero-word{

    display:inline-block;

    color:#2d2d2d;

    opacity:1;

    transition:opacity .45s ease;

}

.hero-bottom{

    display:block;

    margin-top:10px;

}

/* ==========================================
   KONTAKT FORSIDE
========================================== */

.max-text{
    max-width:700px;
}


/* ==========================================
   TJENESTEMENY
========================================== */
.tjenestemeny .hfe-nav-menu li.current-menu-item > a.hfe-menu-item {
    border-radius: 999px !important;
}

.tjenestemeny nav.hfe-nav-menu__layout-horizontal {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
}

.tjenestemeny .hfe-nav-menu {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
}

.tjenestemeny .hfe-nav-menu li {
    flex-shrink: 0 !important;
    white-space: nowrap !important;
}


/* ==========================================
   TJENESTEMENY – MOBIL
========================================== */
@media (max-width: 767px) {

    /* Selve meny-widgeten blir scroll-området */
    .tjenestemeny,
    .tjenestemeny .elementor-widget-container {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .tjenestemeny::-webkit-scrollbar,
    .tjenestemeny .elementor-widget-container::-webkit-scrollbar {
        display: none;
    }

    /* HFE-nav-en skal være så bred som menypunktene krever */
    .tjenestemeny nav.hfe-nav-menu__layout-horizontal {
        display: block !important;
        width: max-content !important;
        max-width: none !important;
        min-width: max-content !important;
        left: 0 !important;
        overflow: visible !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
    }

    .tjenestemeny .hfe-nav-menu {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: max-content !important;
        max-width: none !important;
        min-width: max-content !important;
        white-space: nowrap !important;
        justify-content: flex-start !important;
    }

    .tjenestemeny .hfe-nav-menu li {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    .tjenestemeny {
        position: relative !important;
    }

    /* Høyre pil */
    .tjenestemeny::after {
    content: "›";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;

    width: 34px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: flex-end;

    box-sizing: border-box;
    padding-right: 8px;
    padding-bottom: 8px;

    font-size: 37px;
    font-weight: 400;
    line-height: 42px;
    color: #5a0a13;

    background: linear-gradient(
        to right,
        rgba(255,255,255,0),
        #ffffff 20%
    );

    pointer-events: none;
}

    /* Venstre pil */
    .tjenestemeny::before {
    content: "‹";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;

    width: 34px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: flex-start;

    box-sizing: border-box;
    padding-left: 8px;
    padding-bottom: 8px;

    font-size: 37px;
    font-weight: 400;
    line-height: 42px;
    color: #5a0a13;

    background: linear-gradient(
        to left,
        rgba(255,255,255,0),
        #ffffff 20%
    );

    pointer-events: none;

    opacity: 0;
}

    /* Vis venstre pil når menyen er scrollet */
    .tjenestemeny.is-scrolled::before {
        opacity: 1;
    }

    /* Skjul høyre pil når vi er helt til høyre */
    .tjenestemeny.is-at-end::after {
        opacity: 0;
    }

    /* Ekstra plass etter siste menypunkt */
    .tjenestemeny .elementor-widget-container {
        padding-right: 45px !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================
   TJENESTE - MOBIL
========================================== */

@media (max-width: 767px) {
    .elementor-widget-theme-post-title .elementor-heading-title {
        max-width: 100% !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
    }
}



.hero-content {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Desktop */
@media (min-width: 1025px) {

    .hero-content {
        padding-left: clamp(48px, 7vw, 140px) !important;
        padding-right: 48px !important;
        box-sizing: border-box !important;
    }

    .hero-content .elementor-widget {
        max-width: 650px !important;
        width: 100% !important;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {

    .hero-content {
        padding-left: 32px !important;
        padding-right: 40px !important;
        box-sizing: border-box !important;
    }

    .hero-content .post-tittel {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .hero-content .post-tittel .elementor-heading-title {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
    }
}/* End custom CSS */