/* Gridly Custom Styles */

/* Fix logo vertical alignment - remove inline baseline gap */
.wp-block-site-logo img {
	display: block;
}

/* Smooth scrolling */
html {
	scroll-behavior: smooth;
}

/* Navigation top-level link hover: orange underline */
.wp-block-navigation .wp-block-navigation-item > a,
.wp-block-navigation .wp-block-navigation-item > .wp-block-navigation-item__content {
	position: relative;
	padding-top: 1.6rem;
	padding-bottom: 0.35rem;
}

.wp-block-navigation .wp-block-navigation-item > a::after,
.wp-block-navigation .wp-block-navigation-item > .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	bottom: calc(-2rem - 7px);
	left: 0;
	width: 0;
	height: 5px;
	background: var(--wp--preset--color--orange);
	transition: width 0.25s ease;
}

.wp-block-navigation .wp-block-navigation-item:hover > a::after,
.wp-block-navigation .wp-block-navigation-item:hover > .wp-block-navigation-item__content::after {
	width: 100%;
}

/* Exclude submenu items from orange underline */
.wp-block-navigation__submenu-container .wp-block-navigation-item > a,
.wp-block-navigation__submenu-container .wp-block-navigation-item > .wp-block-navigation-item__content {
	padding-top: 0;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item > a::after,
.wp-block-navigation__submenu-container .wp-block-navigation-item > .wp-block-navigation-item__content::after {
	display: none;
}

/* Navigation hover text color */
.wp-block-navigation a:hover {
	color: var(--wp--preset--color--grey) !important;
}

/* Navigation submenu styling */
.wp-block-navigation__submenu-container {
	background: var(--wp--preset--color--turquoise) !important;
	border: none !important;
	border-radius: 8px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
	padding: 0.75rem 0;
	min-width: 560px !important;
	margin-top: 39px !important;
	z-index: 110;
}

/* Invisible hover bridge between menu item and submenu */
.wp-block-navigation__submenu-container::before {
	content: "";
	position: absolute;
	top: -39px;
	left: 0;
	right: 0;
	height: 39px;
}

.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content {
	padding: 1.2rem 1.5rem !important;
	color: var(--wp--preset--color--white) !important;
	font-weight: 400;
}

.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--white) !important;
	background: rgba(255, 255, 255, 0.15) !important;
}

/* Submenu parent item arrow indicator */
.has-child > .wp-block-navigation-item__content .wp-block-navigation__submenu-icon {
	margin-left: 0.25rem;
}

/* Card hover effect */
.wp-block-column:has(> .wp-block-heading) {
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.wp-block-column:has(> .wp-block-heading):hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

/* Footer links */
.has-grey-background-color a {
	color: var(--wp--preset--color--white);
	text-decoration: none;
}

.has-grey-background-color a:hover {
	color: var(--wp--preset--color--turquoise);
}

/* Sticky header shadow on scroll */
.wp-block-group[style*="position"] {
	z-index: 100;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

/* Cover block text shadow for readability */
.wp-block-cover h1,
.wp-block-cover h2 {
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Separator in footer */
.has-grey-background-color .wp-block-separator {
	opacity: 0.2;
}

/* List styling in footer */
.has-grey-background-color ul {
	list-style: none;
}

/* Footer menu - flat list with indented sub-items */
.footer-menu .footer-menu-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	font-size: 0.9rem;
}

.footer-menu .footer-menu-list a {
	color: var(--wp--preset--color--white);
	text-decoration: none;
}

.footer-menu .footer-menu-list a:hover {
	color: var(--wp--preset--color--turquoise);
}

/* Sub-menu items with indent */
.footer-menu .sub-menu {
	list-style: none;
	padding: 0 0 0 1rem;
	margin: 0.3rem 0 0 0;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}
