/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         FÆRD
 Author URI:     https://xn--frd-yla.no/
 Template:       Divi
 Version:        1.0.0
*/


/* ------ POSITIONING ------ */
.vertical {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* ------ STACKING ------ */
@media only screen and (max-width: 980px) {
    .stacker { /* add to row */
        display: flex;
        Flex-wrap: wrap;
    }

    .first { /* add to column */
        order: 1;
    }

    .second { /* add to column */
        order: 2;
    }
}


/* ------ EMPTY COLUMNS ------ */

/* For mobile phones: */
.et_pb_column.et_pb_column_empty {
    display: block!important;
    min-height: 480px;
}



/* ------ TOP MENU ------ */
button.et_pb_menu__icon {
    padding: 0 0 0 20px;
}

/* Søk */
.et_pb_menu__close-search-button, 
.et_pb_menu__search input, 
.et_pb_menu__search input::placeholder, 
.et_pb_menu__search .et_pb_menu__search-form .et_pb_menu__search-input {
    color: #ffffff !important;
}


/* ------ TOP MENU HAMBURGER ------ */
@media (min-width: 980px) {
    .pa-hamburger-menu .et_pb_menu__menu {
        display: none;
    }
    
    .pa-hamburger-menu .et_mobile_nav_menu {
        display: flex;
        float: none;
        margin: 0 6px;
        align-items: flex-start;
    }

    .et_pb_menu .et_mobile_nav_menu li {
        list-style-type: none;
        text-align: left !important;
    }

    .et_mobile_menu li a {
        padding-right: 50px;
    }

    .et_mobile_menu {
        left: auto !important;
        right: 0;
        width: 480px;
    }

    #left-area ul, .entry-content ul, .et-l--body ul, .et-l--footer ul, .et-l--header ul {
        padding-left: 0px;
        padding-bottom: 0px;
    }

    .ham_first:not(:first-of-type) {
        background-color: #f2f2f2;
        border-top: 1px solid #707070;
    }

    .ham_second {
        font-weight: 900;
        padding-left: 8px !important;
    }

    .ham_third {
        padding-left: 16px !important;
        font-weight: normal;
    }

}

/* ------ COLLAPSE ------ */

/*** Mobile Menu Collapsing Nested Menu Items ***/
/* Modified from https://www.elegantthemes.com/blog/community/divi-mobile-menu-hack-collapsing-nested-sub-menu-items */
header .et_mobile_menu .menu-item-has-children > a { background-color: transparent; position: relative; font-weight: normal; }
header .et_mobile_menu .menu-item-has-children > a:after { font-family: 'ETmodules'; text-align: center; speak: none; font-weight: normal; font-variant: normal; text-transform: none; -webkit-font-smoothing: antialiased; position: absolute; }
header .et_mobile_menu .menu-item-has-children > a:after { font-size: 16px; content: '\4c'; top: 13px; right: 10px; }
header .et_mobile_menu .menu-item-has-children.visible > a:after { content: '\4d'; }
header .et_mobile_menu ul.sub-menu { display: none !important; visibility: hidden !important;  transition: all 1.5s ease-in-out;}
header .et_mobile_menu .visible > ul.sub-menu { display: block !important; visibility: visible !important; }










/* ------ QUICKNAV BUTTONS ------ */
.quicknav a {
    color: #ffffff;
    word-break: normal;
}

.quicknav a:hover {
    color: #ffc2a1;
}

.quicknav:after {
    content: "|";
    padding-left: 12px;
    padding-right: 12px;
}

.quicknav:last-of-type:after {
    display:none;
}

/* ------ ARROW DOWN WITH "MORE TEXT" ------ */

.more-below .et_pb_animation_top.et-animated {
    animation: none;
}

.more-below h4.et_pb_module_header {
    margin-top: -40px;
}

/* ------ NEWS GRID ------ */
.news-grid a.more-link:before, .news-list a.more-link:before {
    content: "\2192";
    padding-right: 4px;
}

.news-grid_350 .et_pb_post {
    min-height: 350px;
}

.news-grid .et_pb_post {
    min-height: 440px;
}

.news-list .et_pb_post {
    border-bottom: 1px solid #EA5300 !important;
    padding-bottom: 48px;
}

/* Feature image placement fix */
.et_pb_post .et_pb_image_container {
    margin: -19px -19px 0px -19px
}

/* ------ TEASER ------ */
.teaser .et_pb_blurb_container {
    padding: 0 24px 0 24px;
}

/* ------ FACTS BOX ------ */
.facts {
    max-width: 640px;
}


/* ------ BULLET LISTS ------ */
.et_pb_text_inner ul li:not(:last-of-type) {
    padding-bottom: 16px;
}

.contact_services ul li:not(:last-of-type) {
    padding-bottom: 4px;
}

/* ------ WP TEAMS PRO ------ */

/* Filter buttons */
.sptp-filter .button-group .button {
    border-radius: 3em;
}

/* email link */
.sptp-member-email span {
    color: #EA5300 !important;
}

.sptp-member-email span:hover {
    font-weight: 600 !important;
}

/* Location */
.sptp-member-location {
    margin-bottom: 8px !important;
}

.page-load-status .infinite-scroll-last {
    display: none !important;
}

/* Lokasjoner - avdelingsledere */
.avdelingsledere .sp-team-pro-item {
    height: 32px;
}

/* Lokasjoner google maps */
.map-responsive {
    overflow:hidden;
    padding-bottom:56.25%;
    position:relative;
    height:0;
}

.map-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

/* ------ FOOTER ------ */
.footer_social::before {
    font-size: 2em !important;
}


/* Stabiliser høyde på first paint, også på eldre mobiler */
.video-wrap .et_pb_video_box,
.video-wrap .fluid-width-video-wrapper {
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
}
.video-wrap iframe,
.video-wrap video {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

/* Sikkerhetsnett mot “mystisk” luft i første seksjon på mobil */
@media (max-width: 980px) {
  .et_pb_section:first-of-type { margin-top: 0 !important; }
  .et_pb_section:first-of-type h1,
  .et_pb_section:first-of-type h2 { margin-top: 0; }
}

/* Tving Divis videowrapper til å være 100% bredde fra første render */
.video-fix .et_pb_video_box,
.video-fix .fluid-width-video-wrapper {
  width: 100% !important;
  max-width: none !important;
}

.video-fix .fluid-width-video-wrapper {
  aspect-ratio: 16 / 9;   /* reserverer høyde med én gang */
}

.video-fix iframe,
.video-fix video {
  width: 100% !important;
  height: 100% !important;
  display: block;
  border: 0;
}

/* Fjern sidepadding på rad/kolonne og sikre fullbredde på mobil */
@media (max-width: 980px) {
  .video-row-full.et_pb_row,
  .video-row-full { 
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .video-row-full .et_pb_column {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .video-row-full .et_pb_video_box,
  .video-row-full .fluid-width-video-wrapper { 
    width: 100% !important; 
    max-width: none !important; 
  }
}

/* Tving full bredde på Divi-video fra første render */
.video-fix-wide.et_pb_video .et_pb_video_box,
.video-fix-wide.et_pb_video .et_pb_video_overlay,
.video-fix-wide.et_pb_video .fluid-width-video-wrapper {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}

/* Reservér høyde med én gang (juster 16/9 om videoen er annet format) */
.video-fix-wide.et_pb_video .et_pb_video_box,
.video-fix-wide.et_pb_video .fluid-width-video-wrapper,
.video-fix-wide.et_pb_video .et_pb_video_overlay {
  aspect-ratio: 16 / 9;
  height: auto !important;
}

/* Hvis overlayet bruker <img>, sørg for at bildet ikke “måles” smalere først */
.video-fix-wide.et_pb_video .et_pb_video_overlay img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Selve iframen/videoen skal fylle wrapperen */
.video-fix-wide.et_pb_video iframe,
.video-fix-wide.et_pb_video video {
  width: 100% !important;
  height: 100% !important;
  border: 0;
  display: block;
}

/* Sikkerhetsnett for mobil – fjern eventuell automatisk max-width fra Divi */
@media (max-width: 980px) {
  .video-fix-wide.et_pb_video { 
    width: 100% !important; 
    max-width: 100% !important; 
  }
}

