/***** Mackay Gatt Law CSS Styles *****/

/*** Global Styles ***/
.wp-block-button {
	box-shadow: rgb(0 0 0 / .25) 0 14px 28px,rgb(0 0 0 / .22) 0 10px 10px;;
}

/*** HEADER SHRINK + STRUCTURE ***/
/* Base Header Height */
header.site-header, #ast-desktop-header, #ast-mobile-header, .main-header-bar-wrap, .main-header-bar, .site-primary-header-wrap {
    position: sticky !important;
    top: 0;
    height: 110px;
    min-height: 110px;
    transition: height 0.3s ease-in-out, min-height 0.3s ease-in-out, background-color 0.3s ease-in-out;
}
/* Logo */
.site-logo-img .custom-logo-link .custom-logo {
    width: 100%;
    max-width: 300px;
    transition: width 0.3s ease-in-out, max-width 0.3s ease-in-out;
}
.custom-logo.scrolled {
    width: 140px !important;
    max-width: 140px !important;
}
/* Shrink on scroll (only when menu is NOT open) */
body:not(.mgl-menu-open) header.site-header.scrolled, body:not(.mgl-menu-open) #ast-desktop-header.scrolled, body:not(.mgl-menu-open) #ast-mobile-header.scrolled, body:not(.mgl-menu-open) .main-header-bar-wrap.scrolled, body:not(.mgl-menu-open) .main-header-bar.scrolled, body:not(.mgl-menu-open) .site-primary-header-wrap.scrolled {
    height: 60px !important;
    min-height: 60px !important;
}
/* Header fade when scrolled */
body:not(.mgl-menu-open) .ast-primary-header-bar.scrolled {
    background-color: rgba(4, 4, 73, 0.9);
}
/* Content offset */
.site-content {
    margin-top: -110px;
    transition: transform 0.3s ease;
}
.main-header-menu li ul.sub-menu {
	background-color: #f7f7fd;
	border-top: none;
}
.main-header-menu li ul.sub-menu li a {
	color: #222222 !important;
}
.main-header-menu li ul.sub-menu li a:hover {
	background-color: #030335 !important;
	color: #fffbf5 !important;
}
/*** HIDE ASTRA'S MOBILE MENU ***/
.ast-mobile-header-content, .ast-builder-menu-mobile, #ast-mobile-site-navigation, #ast-hf-mobile-menu {
    display: none !important;
}
/*** CUSTOM MOBILE MENU OVERLAY ***/
.mgl-mobile-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    transform: translateY(-100%);
    transition: transform 0.3s ease;
    z-index: 10;
    background-color: #f7f7fd;
}
/* Logo Size When Mobile Menu is Called */
body.mgl-menu-open .custom-logo {
    width: 100% !important;
    max-width: 300px !important;
}
/* Menu list styling */
.mgl-mobile-menu-list {
    list-style: none;
    margin: 0;
	padding: 15px 0;
}
.mgl-mobile-menu-list li {
    margin: 0;
	padding: 0;
}
.mgl-mobile-menu-list a {
    display: block;
    width: 100%;
    padding: 14px 20px;
    background-color: transparent;
    color: #222222;
	font-weight: 600;
    text-decoration: none;
    transition: background-color 0.3s ease, color 0.3s ease;
}
.mgl-mobile-menu-list li a:hover,
.mgl-mobile-menu-list li a:focus {
    background-color: #030335;    /* soft highlight */
    color: rgba(242,245,247,0.76);
}

/*** Mobile Sub-Menu Animations ***/
.mgl-mobile-menu {
	background-color: aliceblue;
}
/* Hide Astra’s built-in toggles */
#mgl-mobile-menu .dropdown-menu-toggle, #mgl-mobile-menu .ast-menu-toggle {
    display: none;
}
/* Hide nested menus by default */
#mgl-mobile-menu .sub-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
	margin-left: 0;
}
#mgl-mobile-menu .sub-menu li {
	list-style-type: none;
}
#mgl-mobile-menu .sub-menu li a {
	padding-left: 40px;
}
/* Expand submenu when active */
#mgl-mobile-menu .menu-item-has-children.active > .sub-menu {
    max-height: 500px; /* adjust if needed */
}
/* Make the <a> behave like inline-flex so the chevron sits beside the text */
#mgl-mobile-menu .menu-item-has-children > a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    position: relative;
}
/* Font Awesome chevron */
#mgl-mobile-menu .menu-item-has-children > a::after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f054"; /* chevron-right */
    font-size: 16px;
    line-height: 1;
    display: inline-block;
    transform: rotate(0deg);
    transition: transform 0.2s ease;
}
/* Rotate chevron downward when active */
#mgl-mobile-menu .menu-item-has-children.active > a::after {
    transform: rotate(90deg);
}
/* Remove highlight when submenu is collapsed AND not hovered */
#mgl-mobile-menu .menu-item-has-children:not(.active) > a {
    background-color: transparent !important;
	color: #222222 !important;
}
/* Restore highlight on hover */
#mgl-mobile-menu .menu-item-has-children:not(.active) > a:hover {
    background-color: #030335 !important; /* match your theme’s hover color */
	color: rgba(242,245,247,0.76) !important;
}


/*** Hamburger Menu Icon Animation ***/
.menu-toggle .ast-menu-svg, .menu-toggle .ast-close-svg {
    display: none !important;
}
.menu-toggle .mobile-menu-toggle-icon {
    position: relative;
    width: 28px;
    height: 3px;
    background-color: #fff;
    display: block;
    transition: all 0.3s ease-in-out;
}
.menu-toggle .mobile-menu-toggle-icon::before, .menu-toggle .mobile-menu-toggle-icon::after {
    content: "";
    position: absolute;
    width: 28px;
    height: 3px;
    background-color: #fff;
    transition: all 0.3s ease-in-out;
}
.menu-toggle .mobile-menu-toggle-icon::before {
    top: -8px;
}
.menu-toggle .mobile-menu-toggle-icon::after {
    top: 8px;
}
.menu-toggle.hamburger-active .mobile-menu-toggle-icon {
    background-color: transparent;
}
.menu-toggle.hamburger-active .mobile-menu-toggle-icon::before {
    transform: translateY(8px) rotate(45deg);
}
.menu-toggle.hamburger-active .mobile-menu-toggle-icon::after {
    transform: translateY(-8px) rotate(-45deg);
}

/*** Footer CSS ***/
footer {
	padding: 0 20px;
	background: #F7F7FD;
}
.ast-builder-footer-grid-columns > div {
	height: 100%;
}
@media screen and (max-width: 767px) {
  	.ast-builder-grid-row-container.ast-builder-grid-row-mobile-full .ast-builder-grid-row {
    	grid-template-columns: 1fr;
  	}
	.site-primary-footer-wrap {
		padding-top: 0 !important;
	}
	.site-footer-primary-section-1.site-footer-section.site-footer-section-1 {
		padding: 0 35px 0;
	}
	.site-footer-primary-section-2 {
  		border-left: none !important;
  		border-right: none !important;
	}
	.site-footer-primary-section-3.site-footer-section.site-footer-section-3 {
		margin: 0 auto;
		width: fit-content;
	}
}
.site-above-footer-wrap[data-section="section-above-footer-builder"], .site-primary-footer-wrap[data-section="section-primary-footer-builder"], .site-below-footer-wrap[data-section="section-below-footer-builder"]  {
	background-color: #F7F7FD;
}
.site-footer-above-section-1 .site-footer-focus-item .ast-header-html .ast-builder-html-element p {
	color: rgb(74, 31, 31) !important;
	font-size: 26px;
	font-weight: 600;
}
.menu-primary-2-container ul li a {
	color: #222222;
}
.site-footer-primary-section-2 img {
	width: 100%;
	max-width: 400px !important;
  	margin: 0 auto;
}
.menu-primary-2-container ul li a:hover {
	color: #555555;
}
.site-primary-footer-wrap.ast-builder-grid-row-container.site-footer-focus-item.ast-builder-grid-row-3-equal.ast-builder-grid-row-tablet-3-equal.ast-builder-grid-row-mobile-full.ast-footer-row-stack.ast-footer-row-tablet-stack.ast-footer-row-mobile-stack {
	border: none !important;
}
.site-primary-footer-wrap.ast-builder-grid-row-container.site-footer-focus-item.ast-builder-grid-row-3-equal.ast-builder-grid-row-tablet-3-equal.ast-builder-grid-row-mobile-full.ast-footer-row-stack.ast-footer-row-tablet-stack.ast-footer-row-mobile-stack {
	padding-bottom: 0;
}
.site-below-footer-wrap.ast-builder-grid-row-container.site-footer-focus-item.ast-builder-grid-row-full.ast-builder-grid-row-tablet-full.ast-builder-grid-row-mobile-full.ast-footer-row-stack.ast-footer-row-tablet-stack.ast-footer-row-mobile-stack {
	border-top: none;
}
.site-above-footer-wrap .ast-builder-grid-row-container-inner .ast-builder-footer-grid-columns .site-footer-section .widget-area .ast-header-html .ast-builder-html-element p {
	color: #222222;
}
.ast-builder-grid-row-container-inner .ast-builder-grid-row {
	min-height: initial !important;
}
.ast-builder-footer-grid-columns, .ast-builder-grid-row {
	gap: 0;
}
.site-footer-primary-section-1, .site-footer-primary-section-2, .site-footer-primary-section-3 {
	padding: 35px 35px 0;
}
.site-footer-primary-section-2 {
	border-left: solid #222222 2px;
	border-right: solid #222222 2px;
}
h2.footer-contact-header, h2.widget-title {
	font-size: 22px;
	margin-bottom: 22px;
}
.Footer-Contact-Info p {
	margin-bottom: 0;
	color: #555555;
}
.footer-p-spacer {
	padding: 11px 0;
}
@media screen and (max-width: 921px) {
	.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner {
    	text-align: initial;
  	}
}
.Footer-Contact-Info p a {
	color: #555555;
}
.Footer-Contact-Info p a:hover {
	color: #000000;
}

/* Bottom Text / Copyright */
.ast-footer-copyright {
	display: inherit;
	margin: 0 auto;
	width: fit-content;
}
.Footer-Copyright {
	display: inherit;	
}
.Footer-Divider {
	margin: 0 12px;
}
.ast-footer-copyright, .ast-footer-copyright a {
	color: #555555;
}
.ast-footer-copyright a:hover {
	color: #000000;
}
@media screen and (max-width: 662px) {
	.Footer-Copyright {
		display: flex;
  		flex-direction: column;
	}
	.Footer-Divider {
		display: none;
	}
	.Footer-Copyright span:nth-of-type(2) {
		font-size: 12px;
	}
}
.ast-scroll-top-icon {
	transition: 0.3s ease;
}
@media screen and (max-width: 399px) {
	.site-footer-primary-section-1.site-footer-section.site-footer-section-1, .site-footer-primary-section-2.site-footer-section.site-footer-section-2, .site-footer-primary-section-3.site-footer-section.site-footer-section-3 {
		padding-left: 10px;
		padding-right: 10px;
	}
}