#footer {
	position: fixed;
	/*background-color: #caced1;*/ 
	position:fixed; 
	bottom:0; 
	left:0; 
	z-index: 1000;
}

/* Modern web footer to match header design */
#webFooter {
    background: #fff;
    border-top: 1.5px solid #28a745;
    box-shadow: 0 -2px 8px rgba(40,167,69,0.08);
    border-radius: 18px 18px 0 0;
    padding: 0.5rem 2rem;
    margin-top: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    /*min-height: 64px;*/
    transition: all 0.3s ease;
}

#webFooter h4 {
    color: #28a745;
    font-weight: bold;
    font-size: 1.3rem;
    margin: 0;
    letter-spacing: 1px;
    text-transform: uppercase;
}

#webFooter:hover {
    background: #f8f9fa;
    border-top-color: #20c997;
    box-shadow: 0 -4px 12px rgba(40,167,69,0.12);
}

.title{
	color:black;
}

.dotdotdot{
	/*display: block; 
	white-space: nowrap; 
	overflow: hidden; 
	text-overflow: ellipsis; 
	max-width: 100%;
	*/ 
	display: block;
	font-size: clamp(0.8rem, 2vw, 1.3rem); 
	width: 100%; 
	white-space: nowrap; 
	overflow: hidden; 
	text-overflow: ellipsis; 
	text-align: center;
}
/*#hiddenElement{
	display:none;
}*/
/* Initially hide the element */
#hiddenElement {
	max-height: 0; /* Start with height of 0 */
	padding:0 !important;
    opacity: 0;
	width: 100%;
	max-width: none; /* Ensure it can expand fully */
    visibility: hidden; /* Keep it hidden when opacity is 0 */
    overflow: hidden; 
    transition: max-height 0.5s ease, opacity 0.5s ease, visibility 0s 0.5s; /* Transition opacity and visibility */
    background: #fff;
    border-top: 1px solid #e9ecef;
    box-shadow: 0 2px 8px rgba(40,167,69,0.05);
}

/* When the element is visible (hovered) */
#hiddenElement.visible {
	max-height: 1000px;
    opacity: 1;
    visibility: visible;
    transition:  max-height 0.5s ease, opacity 0.5s ease, visibility 0s 0s; /* Transition with immediate visibility */
	position: relative;
	padding: 1.5rem !important;
	background: #f8f9fa;
	border-top: 1px solid #28a745;
	box-shadow: 0 4px 12px rgba(40,167,69,0.08);
}


.img-altra-ass{
	width: 100%; 
	height: 100px;
	border-radius: 12px;
	object-fit: cover;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.img-altra-ass:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(40, 167, 69, 0.15);
}

.mask{
	background-color: rgba(40, 167, 69, 0.1);
	border-radius: 12px;
	transition: background-color 0.3s ease;
}

.bg-image:hover .mask {
	background-color: rgba(40, 167, 69, 0.2);
}

.label-altra-ass{
	color: #28a745;
	font-weight: 600;
	font-size: 0.9rem;
	margin-top: 0.5rem;
	text-align: center;
	transition: color 0.3s ease;
}

.label-altra-ass:hover {
	color: #20c997;
}

.col-five {
    width: 20%;
	padding-top: 10px !important;
}
  
.col-five.active i, .col-five.active .row {
    color: #158953 !important; /* Change to the color you want */
}
  
.hidden-footer {
      display: none; /* Hide initially */
      background: linear-gradient(135deg, #28a745, #20c997);
      color: white;
      margin-right:0px;
      padding: 2rem 1rem;
      border-radius: 0 0 18px 18px;
      box-shadow: 0 4px 12px rgba(40,167,69,0.15);
      border-top: 2px solid rgba(255, 255, 255, 0.2);
}

.hidden-footer a {
    color: #fff !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

.hidden-footer a:hover {
    color: #e6f9ed !important;
    text-decoration: underline;
}

.hidden-footer p {
    margin-bottom: 1rem;
    font-weight: 500;
}

@media 
only screen and (max-width: 760px),
(min-device-width: 308px) and (max-device-width: 1024px)  {
	#footer {
		position: relative;
	}
	
	#mobileBottomFooter {
		padding-left: 10px;
		padding-right: 10px;
		z-index: 9999;
		display: flex;
		justify-content: space-around;
		background-color: #caced1; /* Revert to gray background */
		box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2); /* Subtle shadow */
		border-top: 2px solid #a0a4a8; /* Border for separation */
		flex-wrap: nowrap; /* Prevent wrapping */
	}

	#mobileBottomFooter .col-five {
		flex: 1;
		text-align: center;
		color: white;
		transition: transform 0.3s ease, color 0.3s ease;
		max-width: 16.66%; /* Ensure six items fit in one row */
	}

	#mobileBottomFooter .col-five i {
		font-size: 24px; /* Larger icons */
		margin-bottom: 5px;
	}

	#mobileBottomFooter .col-five:hover {
		transform: scale(1.1); /* Slight zoom effect */
		color: #158953; /* Highlight color on hover */
	}

	#mobileBottomFooter .col-five.active {
		background-color: #a0a4a8; /* Highlight active item with a darker gray */
		border-radius: 8px; /* Rounded corners for active item */
		padding: 5px;
	}

	#mobileBottomFooter .col-five.active i, 
	#mobileBottomFooter .col-five.active .row {
		color: #158953 !important; /* Highlight color for active item */
	}
	
	/* Responsive styles for webFooter only */
	#webFooter {
        border-radius: 12px 12px 0 0;
        padding: 0.8rem 1rem;
    }
    
    #webFooter h4 {
        font-size: 1.1rem;
    }
    
    /* Responsive styles for hiddenFooter */
    .hidden-footer {
        border-radius: 0 0 12px 12px;
        padding: 1.5rem 0.8rem;
    }
    
    .hidden-footer p {
        font-size: 0.9rem;
        margin-bottom: 0.8rem;
    }
}

/* Modern mobile bottom nav to match header, now with green theme */
#mobileBottomFooter {
    background: #fff;
    border-top: 1.5px solid #28a745;
    box-shadow: 0 -2px 8px rgba(40,167,69,0.08);
    border-radius: 18px 18px 0 0;
    margin: 0 auto 0 auto;
    min-height: 62px;
    position: fixed;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    z-index: 1002;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
}

#mobileBottomFooter .footer-nav-item {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #333;
    font-weight: 500;
    font-size: 0.98rem;
    border-radius: 10px;
    padding: 0.3rem 0.1rem 0.1rem 0.1rem;
    transition: background 0.18s, color 0.18s;
    cursor: pointer;
    min-width: 54px;
    margin: 0 2px;
}

#mobileBottomFooter .footer-nav-item.active, 
#mobileBottomFooter .footer-nav-item:hover {
    background: #e6f9ed;
    color: #28a745;
}

#mobileBottomFooter .footer-nav-item i {
    font-size: 1.35rem;
    margin-bottom: 2px;
    color: #28a745;
    transition: color 0.18s;
}

#mobileBottomFooter .footer-nav-item.active i, 
#mobileBottomFooter .footer-nav-item:hover i {
    color: #28a745;
}

#mobileBottomFooter .footer-nav-item .row {
    margin: 0;
    padding: 0;
    justify-content: center;
}

@media (max-width: 991px) {
    #mobileBottomFooter {
        max-width: 100vw;
        width: 100vw;
        border-radius: 12px 12px 0 0;
    }
    
    #mobileBottomFooter .footer-nav-item {
        font-size: 0.93rem;
        min-width: 44px;
    }
}