/*
Theme Name:     Lubinik Child Child
Theme URI:      
Description:    lubiniktheme child theme.
Author:         Me
Author URI:     
Template:       lubiniktheme
Version:        0.1.0
*/


/*****************************************************
/* Theme Specific rules ovveride for hero slider */
/******************************************************/

/* Custom Hero Slider Overrides */
.custom-hero-slider .slide-content {
    flex-direction: column !important; /* Change from row to column layout */
    padding: 40px !important; /* Slightly larger padding */
}

/* Adjust logo container */
.custom-hero-slider .slide-logo-container {
    margin-right: 0; /* Remove the right margin (used in row layout) */
    margin-bottom: 2rem; /* Add bottom margin for spacing between logo and text */
    width: 100%; /* Full width for the logo container */
}

/* Center the text container */
.custom-hero-slider .slide-text-container {
    width: 100%; /* Full width for text */
}


/*****************************************************
/* Theme Specific rules ovveride for normal menu */
/******************************************************/

.site-header {
	background-color: var(--lubinik-theme-secondary-color);
	padding: 0;
	box-shadow: 0 2px 10px var(--lubinik-header-secondary-shadow-color);
	position: relative;
	z-index: 5;
}

.site-header > .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--lubinik-spacing-xs);
	background-color: var(--lubinik-theme-secondary-color);
	position: relative;
	max-width: 85%;
	width: 50%;
}


#header-default-top-bar .top-social-links .social-link {
    width: 40px;
    height: 40px;
}

#header-default-top-bar .top-social-links .social-link:hover {
	transform: translateY(-3px);
	background-color: var(--lubinik-theme-secondary-color);
	color: var(--lubinik-theme-primary-color);
}


#header-default-top-bar {
	padding: var(--lubinik-spacing-m);
}


#header-default-top-bar .contact-info-mini a {
	color: var(--lubinik-theme-primary-color);
}
#header-default-top-bar .contact-info-mini i {
	color: var(--lubinik-theme-primary-color);
}

#header-default-top-bar .contact-info-mini a:hover {
	color: var(--lubinik-theme-quinary-color);
}
#header-default-top-bar .contact-info-mini i:hover {
	color: var(--lubinik-theme-quinary-color);
}


#header-default-content  {
	padding: var(--lubinik-spacing-m);
}

#header-default-content {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#header-default-content .site-branding {
	flex: 0 0 auto; /* Don't shrink, don't grow, use auto width */
	margin-right: 80px; /* Add space after the logo */
}

#header-default-content .custom-logo-link {
	display: block;
	width: var(--lubinik-default-menu-logo-max-size);
	max-width: 100%;
}

#header-default-content .custom-logo {
	max-height: var(--lubinik-default-menu-logo-max-size);
	width: auto;
	max-width: 100%;
}



#header-default-content .main-navigation {
	flex: 1 1 auto; /* Can grow and shrink as needed */
}


#header-default-content .main-navigation a {
	color: var(--lubinik-theme-primary-color);
	text-decoration: none;
	font-weight: 500;
	font-size: var(--lubinik-internal-menu-font-size);
}

#header-default-content .main-navigation a:hover {
    background-color: var(--lubinik-theme-quinary-color);
	color: var(--lubinik-theme-primary-color);
	text-decoration: none;
	font-weight: 500;
	font-size: var(--lubinik-internal-menu-font-size);
}

#header-default-content .main-navigation li {
	margin: 0 var(--lubinik-spacing-hxs);
}



/*****************************************************
/* Theme Specific rules ovveride for menu above hero */
/******************************************************/

/* Main navigation container positioning and styling */
.menu-above-hero.menu-style-horizontal .hero-section .main-navigation {
    background-color: transparent;
    max-width: 80%; /* Limit width to 80% of the container */
    margin: 0 auto; /* Center the navigation */
    border-radius: 10px; /* Add rounded corners to the nav container */
    padding: 0 15px; /* Add some horizontal padding */
}


.hero-section {
    color: var(--lubinik-hero-primary-text-color);
}


/* Menu links styling */
.menu-above-hero.menu-style-horizontal .hero-section .main-navigation ul li a {
    color: var(--lubinik-horizontal-menu-item-secondary-link-color);
    font-weight: var(--lubinik-font-weight-medium);
    font-size: var(--lubinik-font-size-xl);
    text-decoration: none;
    background-color: var(--lubinik-horizontal-menu-nav-background-color);
    border-radius: 0 ;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8); /* Stronger shadow for better visibility */
    border: 0;
}

/* Menu link hover effects */
.menu-above-hero.menu-style-horizontal .hero-section .main-navigation ul li a:hover
 {
    color: var(--lubinik-horizontal-menu-item-hover-link-color);
    background-color: var(--lubinik-horizontal-menu-item-hover-bg-color);
    box-shadow: none;
    transform: translateY(-1px);
}

/* Fallback hover styling for any toggled hamburger menu, regardless of media query */
.main-navigation.toggled ul li a:hover,
.main-navigation.toggled ul li:hover > a {
    color: var(--lubinik-theme-quinary-color) ;
    background-color: rgba(255,255,255,0.1) ;
}

.menu-above-hero.menu-style-horizontal .hero-section .main-navigation ul li.current-menu-item a {
    color: var(--lubinik-horizontal-menu-item-active-link-color);
    background-color: var(--lubinik-horizontal-menu-item-active-bg-color);
    box-shadow: none;
    transform: translateY(-1px);
}

/* Enhanced hover/active effects with underline */
/* Default state - hide the underline */
.main-navigation a:after {
    background-color: transparent;
}

/* Hover state */
.main-navigation a:hover:after {
    background-color: var(--lubinik-horizontal-menu-item-hover-bg-color) !important;
}

/* Active/current state */
.main-navigation .current-menu-item a:after {
    background-color: var(--lubinik-horizontal-menu-item-active-bg-color) !important;
}

.menu-above-hero .site-header .contact-info-mini a:hover {
	color: var(--lubinik-theme-sextary-color);
}
.contact-info-mini i:hover {
	color: var(--lubinik-theme-sextary-color);
}


.menu-above-hero .hero-section .swiper-button-next,
.menu-above-hero .hero-section .swiper-button-prev,
.menu-above-hero .custom-hero-slider .swiper-button-next,
.menu-above-hero .custom-hero-slider .swiper-button-prev {
    background-color: var(--lubinik-theme-secondary-color);
}


.menu-above-hero .hero-section .swiper-button-next:hover,
.menu-above-hero .hero-section .swiper-button-prev:hover,
.menu-above-hero .custom-hero-slider .swiper-button-next:hover,
.menu-above-hero .custom-hero-slider .swiper-button-prev:hover {
    background-color: var(--lubinik-theme-secondary-color);
}




/********************************************************************
/* Theme Specific rules ovveride for top bar for menu above hero */
/********************************************************************/

.top-social-links .social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    background-color: var(--lubinik-header-secondary-social-bg-color);
    color: var(--lubinik-header-secondary-social-text-color);
    border-radius: 50%;
    transition: all 0.3s ease;
}

.top-social-links .social-link:hover {
    transform: translateY(-3px);
	background-color: var(--lubinik-theme-secondary-color);
	color: var(--lubinik-theme-primary-color);
}

.top-bar {
    font-size: var(--lubinik-font-size-lg);
    color: var(--lubinik-header-secondary-link-color);
    background-color: var(--lubinik-theme-secondary-color);
  }



.contact-info-mini i {
	font-size: var(--lubinik-font-size-lg);
}



/*****************************************************
 * Dropdown sub-menu styles (child theme override)
 *****************************************************/
/* Ensure each top-level li is positioning context */
.main-navigation ul li {
    position: relative;
}
/* Hide all sub-menus initially */
.main-navigation .sub-menu,
.menu-above-hero .main-navigation .sub-menu {
    display: none !important;
    position: absolute !important;
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--lubinik-theme-secondary-color);
    list-style: none;
    margin: 0;
    padding: var(--lubinik-spacing-s) 0;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    z-index: 30;
    min-width: 600px;
}
/* Reveal submenu on hover or keyboard focus */
.main-navigation li:hover > .sub-menu,
.main-navigation li:focus-within > .sub-menu,
.menu-above-hero .main-navigation li:hover > .sub-menu,
.menu-above-hero .main-navigation li:focus-within > .sub-menu {
    display: block !important;
    display: block;
}
/* Inner li spacing */
.main-navigation .sub-menu li {
    margin: 0;
}
/* Links inside dropdown */
.main-navigation .sub-menu a {
    display: block;
    padding: 8px 18px;
    color: var(--lubinik-theme-primary-color);
    font-size: var(--lubinik-font-size-lg);
    white-space: nowrap;
}
/* Hover state */
.main-navigation .sub-menu a:hover {
    background-color: var(--lubinik-theme-secondary-color);
    color: var(--lubinik-theme-primary-color);
}


/* Override parent theme hero-menu dropdown hover */
.menu-above-hero.menu-style-horizontal .hero-section .main-navigation ul li ul.sub-menu li a:hover {
    background-color: var(--lubinik-theme-quinary-color) !important;
    color: var(--lubinik-theme-primary-color) !important;
}



/* kill the coloured underline that the parent theme adds */
.main-navigation .sub-menu a::after {
    display: none;                /* easiest – just remove it */
    /* Or, if you prefer to keep the bar but use the same colour:
       background-color: var(--lubinik-theme-secondary-color);
    */
}