/*
 *   Important Information about this CSS File
 *
 * - Do not delete or rename this file, if you do not use it leave it blank (delete
 *   everything) and the file will be skipped when you enable Production Mode in
 *   the Global theme settings.
 *
 * - Read the _README file in this directory, it contains useful help and other information.
 */

/* Mobile Burger Menu Styles - FIXED POSITIONING */
.mobile-menu-toggle {
    display: block;
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
    width: 40px;
    height: 40px;
}

.mobile-menu-toggle .burger-line {
    display: block;
    width: 25px;
    height: 3px;
    background-color: #333;
    margin: 5px 0;
    transition: 0.3s;
    transform-origin: center;
}

/* Burger animation when active */
.mobile-menu-toggle.active .burger-line:nth-child(1) {
    transform: rotate(45deg) translate(6px, 6px);
}

.mobile-menu-toggle.active .burger-line:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active .burger-line:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
}

/* Mobile menu container positioning - FIXED */
#menu-bar {
    position: relative;
    /* Ensure language selector isn't affected by burger menu */
    overflow: visible;
}

/* Prevent burger menu from affecting other elements */
#menu {
    position: relative;
}

/* Hide desktop menu on mobile */
#superfish {
    display: none !important;
    position: absolute;
    top: 50px; /* Position below the burger button */
    left: 0;
    width: 100%;
    background-color: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    z-index: 9998; /* High z-index but below burger button */
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}

#superfish.mobile-open {
    display: block !important;
    max-height: 80vh; /* Increased from 500px to viewport height */
    overflow-y: auto; /* Allow scrolling if menu is too tall */
}

/* Language selector positioning fix */
#sprog {
    width: auto;
    float: none;
    clear: both;
    text-align: center;
    margin-top: 20px;
    position: absolute;
    bottom: 4px;
    right: 4px;
}

/* Ensure language selector wrapper doesn't get affected */
#wrapper_top_logo {
    position: relative;
    overflow: visible;
}

#superfish li {
    float: none !important;
    width: 100%;
    border-bottom: 1px solid #eee;
    /* Remove any existing position properties that might cause overlap */
    position: relative;
}

#superfish li a {
    display: block;
    padding: 15px 70px 15px 20px; /* Right padding increased for toggle button */
    color: #333;
    text-decoration: none;
    height: auto !important;
    line-height: normal !important;
    position: relative;
    background-color: #fff;
}

#superfish li a:hover {
    background-color: #f5f5f5;
}

/* Style the submenu toggle button */
#superfish .submenu-toggle {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: rgba(0,0,0,0.05);
    border-left: 1px solid #ddd;
}

#superfish .submenu-toggle:before {
    content: 'Udvid';
    font-size: 11px;
    font-weight: bold;
    color: #666;
    transition: all 0.3s;
    text-align: center;
}

#superfish li.mobile-submenu-open .submenu-toggle:before {
    content: 'Klap sammen';
}

#superfish .submenu-toggle:hover {
    background: rgba(0,0,0,0.1);
}

/* FIXED: Submenu styles for mobile - properly pushes content down */
#superfish ul {
    position: static !important; /* Changed from static to ensure proper flow */
    width: 100%;
    box-shadow: none;
    display: block; /* Always display block for proper height calculation */
    background-color: #f9f9f9;
    top: auto !important;
    left: auto !important;
    overflow: hidden;
    max-height: 0; /* Start collapsed */
    transition: max-height 0.3s ease-out, padding 0.3s ease-out;
    padding: 0; /* Start with no padding */
}

/* When submenu is open, expand it properly */
#superfish li.mobile-submenu-open > ul {
    max-height: 1000px; /* Large enough to accommodate any submenu */
}

/* Submenu items styling */
#superfish ul li {
    background-color: #f9f9f9;
    border-bottom: 1px solid #e0e0e0;
}

#superfish ul li a {
    padding-left: 40px; /* Indent submenu items */
    background-color: #f9f9f9;
    font-size: 14px;
}

#superfish ul li a:hover {
    background-color: #f0f0f0;
}

/* Third level submenu */
#superfish ul ul {
    background-color: #f0f0f0;
}

#superfish ul ul li a {
    padding-left: 60px; /* Further indent third level items */
    background-color: #f0f0f0;
    font-size: 13px;
}

#superfish ul ul li a:hover {
    background-color: #e8e8e8;
}

/* Ensure proper stacking and no overlap */
#superfish li {
    z-index: auto;
}

#superfish li.mobile-submenu-open {
    z-index: 1;
}

#menu {
	width: 100%;
	float: none;
}
#broedkrummesti {
	width: 45%;
}
#broedkrummesti,
#crumbs,
.tekst_broedkrummesti {
    margin-left: 5%;
}
#soegefelt {
	width: 45%;
}
.facebook_str {
    margin-right: 5%;
}
#logo {
    margin-bottom: 52px;
    margin-left: auto;
    margin-right: auto;
    padding: 30px 0 0;
    width: 90%;
}
.str_logo {
	width: 100%;
}


ul.sf-menu a {
  border-left: 0;
  border-top: 0;
  padding: 0 10px;
  text-decoration: none;
  height: 2.5em;
  line-height: 2.5em;
}

#wrapper_indhold {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
}

.flex-caption,
.tekst_forside_karrusel {
    margin-left: 5%;
    top: 15px;
}
h2 {
	font-size: 24px;
	line-height: 26px;
}
h3 {
    font-size: 30px;
    line-height: 32px;
}

#block-views-forside-3-felter-forside-felter .views-row-1,
#spalte_forside_1 {
	width: 100%;
	height: 300px;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 10px;
	float: none;
}
#block-views-forside-3-felter-forside-felter .views-row-2,
#spalte_forside_2 {
	width: 100%;
	height: 300px;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 10px;
	float: none;
}
#block-views-forside-3-felter-forside-felter .views-row-3,
#spalte_forside_3 {
	width: 100%;
	height: 300px;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 10px;
	float: none;
}
.views-row-1 .tekst_spalte_forside,
.tekst_spalte_forside_1,
.views-row-2 .tekst_spalte_forside,
.tekst_spalte_forside_2,
.views-row-3 .tekst_spalte_forside,
.tekst_spalte_forside_3 {
	width: 90%;
	margin-left: 5%;
	margin-right: 5%;
}
.tekst_spalte_forside_overlay {
	margin-left: 5%;
	margin-right: 5%;
}

#group-spalte-1-type-event,
.field-name-field-spalte-1-type-1,
#spalte_1_underside_type_1 {
    float: none;
    margin-left: 5%;
    margin-right: 5%;
    width: 90%;
}
#group-spalte-2-type-event,
.field-name-field-spalte-2-type-1,
#spalte_2_underside_type_1 {
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    float: none;
}
#group-spalte-3-type-1,
#spalte_3_underside_type_1 {
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    float: none;
}



.field-name-field-spalte-1-type-2,
#spalte_1_underside_type_2 {
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    float: none;
}
#group-spalte-2-3,
#wrapper_indhold_underside_type_2_spalte_2_3 {
	width: 100%;
    float: none;
}
.field-name-field-spalte-2-type-2,
#spalte_2_underside_type_2 {
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    float: none;
}
.field-name-field-spalte-3-type-2,
#spalte_3_underside_type_2 {
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    float: none;
}


#group-spalte-1-type-event,
.field-name-field-spalte-1-type-1,
#spalte_1_underside_type_1 {
	width: 90%;
	margin-left: 5%;
	margin-right: 5%;
	float: none;
}
#group-spalte-2-type-event,
.field-name-field-spalte-2-type-1,
#spalte_2_underside_type_1 {
	width: 90%;
	margin-left: 5%;
	margin-right: 5%;
	float: none;
}
.field-name-field-spalte-3-laast {
	width: 90%;
	margin-left: 5%;
	margin-right: 5%;
	float: none;
}


#block-views-kort-kort-overskrift-skjult {
	margin-top: -5px;
	display: block;
}


#block-views-kort-kort-liste-1 {
	display: none;
}
#block-views-kort-kort-liste-2 {
	display: none;
}
#block-views-kort-kort-liste-3 {
	display: none;
}
.kort_ikon {
	display: none;
}


#tekst_footer_1 {
	width: 45%;
	margin-left: 5%;
}
#tekst_footer_2 {
	width: 45%;
	margin-left: 5%;
}
#tekst_footer_3 {
	width: 90%;
	margin-right: 5%;
	margin-left: 5%;
	clear: both;
	text-align: center;
}
#tekst_footer_3 .image {
	max-width: 254px;
	margin-left: auto;
	margin-right: auto;
}


.flex-caption,
.tekst_forside_karrusel {
	top: 15px;
	margin-left: 15px;
}
