/* =============================================================================
   Exclusive Widgets — Mobile Menu Layout
   Brand colors:
     accent       #35AB7D   hover-accent  #1e7a52   accent-bg  rgba(53,171,125,.10)
     dark         #030C09   muted         #4A4D4C   faint      #6B7280
     surface      #F4F4F4   card          #ffffff   border     #E5E7EB
   ============================================================================= */

/* ── Mobile Menu ────────────────────────────────────────────────── */
.ew-mobile-menu {
    display: none;
    position: relative;
}

@media (max-width: 768px) {
    .ew-mobile-menu {
        display: block;
        width: 100%;
    }
    
    .ew-hamburger {
        display: flex;
        flex-direction: column;
        gap: 5px;
        background: none;
        border: none;
        padding-bottom: 10px;
		padding-left: 5px;
        cursor: pointer;
        margin-left: auto;
    }
	
	[type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover{
		background-color: transparent !important;
		color: #030C09 !important;
	}
    
    .ew-hamburger-line {
        width: 21px;
        height: 2px;
        background: #35AB7D;
        transition: all 0.3s ease;
        border-radius: 3px;
    }
    
    .ew-hamburger.active .ew-hamburger-line:nth-child(1) {
        transform: rotate(45deg) translate(6px, 6px);
    }
    
    .ew-hamburger.active .ew-hamburger-line:nth-child(2) {
        opacity: 0;
    }
    
    .ew-hamburger.active .ew-hamburger-line:nth-child(3) {
        transform: rotate(-45deg) translate(6px, -6px);
    }
    
    .ew-mobile-dropdown {
        position: absolute;
        top: calc(100% + 15px);
        right: -15px;
        width: 100% !important;
        min-width: 100vw;
        background: #FAFFFB;
        box-shadow: 0px 8px 24px -8px rgba(0, 0, 0, 0.12);
        border-radius: 12px;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.4s ease, opacity 0.3s ease;
        opacity: 0;
        z-index: 999;
    }
    
    .ew-mobile-dropdown.open {
        max-height: 500px;
        opacity: 1;
    }
    
    .ew-mobile-menu-list {
        list-style: none;
		display: flex;
		flex-direction: column;
        padding: 10px 0;
        margin: 0 10px;
		gap: 10px;
    }
    
    .ew-mobile-item {
        padding: 0;
    }
    
    .ew-mobile-link {
        display: block;
        padding: 12px 20px;
        text-decoration: none;
        color: #030C09;
        transition: all 0.2s ease;
        border-left: 3px solid transparent;
		text-align: center;
		border: 1px solid transparent;
		border-radius: 48px;
		font-family: var(--ew-font-menu);
		font-size: 16px;
		line-height: 22px;
		font-weight: 500;
    }
    
    .ew-mobile-link:hover {
        background: rgba(53, 171, 125, 0.08);
        color: #35AB7D;
        border-left-color: #35AB7D;
    }
	
	.ew-mobile-link.active,
    .ew-mobile-item.current-menu-item .ew-mobile-link,
	.ew-menu-item.current-page-item .ew-mobile-link{
		border: 1px solid #BAE9D9;
		color: #35AB7D;
	}
}