/*
Theme Name: NorStar
Theme URI: https://norstargenetics.com
Author: Andrew
Description: Lightweight block theme for NorStar Genetics. Recreates the original YOOtheme Chester "NorStar" style (centered logo and navigation, navy and green palette, Open Sans and PT Serif) with no framework or plugin dependencies.
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.0.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: norstar
*/

/* ---------- Header ---------- */
.norstar-header {
	padding-top: 0;
}

.norstar-header .wp-block-site-logo,
.norstar-header .norstar-logo {
	margin-block: 0;
}

.norstar-header .norstar-logo img {
	display: block;
	height: auto;
}

/* ---------- Primary navigation: uppercase, animated green underline ---------- */
.wp-block-navigation.norstar-nav .wp-block-navigation-item__content {
	position: relative;
	padding-block: 6px;
	color: var(--wp--preset--color--navy);
	text-decoration: none;
	transition: color 0.2s;
}

.wp-block-navigation.norstar-nav .wp-block-navigation-item__content::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: rgba(0, 90, 4, 0.7);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.4s;
}

.wp-block-navigation.norstar-nav .wp-block-navigation-item__content:hover,
.wp-block-navigation.norstar-nav .wp-block-navigation-item__content:focus-visible,
.wp-block-navigation.norstar-nav .current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation.norstar-nav .wp-block-navigation-item__content[aria-current="page"] {
	color: var(--wp--preset--color--green);
}

.wp-block-navigation.norstar-nav .wp-block-navigation-item__content:hover::before,
.wp-block-navigation.norstar-nav .wp-block-navigation-item__content:focus-visible::before,
.wp-block-navigation.norstar-nav .current-menu-item > .wp-block-navigation-item__content::before,
.wp-block-navigation.norstar-nav .wp-block-navigation-item__content[aria-current="page"]::before {
	transform: scaleX(1);
}

/* Dropdowns */
.wp-block-navigation.norstar-nav .wp-block-navigation__submenu-container {
	border: 1px solid var(--wp--preset--color--border) !important;
	padding: 10px 0;
	min-width: 220px !important;
}

.wp-block-navigation.norstar-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 6px 20px;
	text-transform: none;
}

.wp-block-navigation.norstar-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content::before {
	display: none;
}

/* Mobile overlay */
.wp-block-navigation.norstar-nav .wp-block-navigation__responsive-container.is-menu-open {
	padding: 30px;
}

.wp-block-navigation.norstar-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: center;
	gap: 18px;
	font-size: 18px;
}

.wp-block-navigation.norstar-nav .wp-block-navigation__responsive-container-open {
	color: var(--wp--preset--color--navy);
}

/* ---------- Signature hover: skewed navy fill (from the original custom.css) ---------- */
.wp-block-button__link,
.wp-element-button,
.is-style-norstar-square .wp-social-link {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	transition: color 0.4s, border-color 0.2s;
}

.wp-block-button__link::after,
.wp-element-button::after,
.is-style-norstar-square .wp-social-link::after {
	content: "";
	position: absolute;
	top: 0;
	left: -160%;
	width: 130%;
	height: 100%;
	background: var(--wp--preset--color--navy);
	transform: skewX(15deg);
	transition: left 0.25s;
	z-index: -1;
	pointer-events: none;
}

.wp-block-button__link:hover::after,
.wp-block-button__link:focus-visible::after,
.wp-element-button:hover::after,
.wp-element-button:focus-visible::after,
.is-style-norstar-square .wp-social-link:hover::after,
.is-style-norstar-square .wp-social-link:focus-within::after {
	left: -15%;
}

/* Square outlined social icons */
.is-style-norstar-square .wp-social-link {
	width: 35px;
	height: 35px;
	border-radius: 0 !important;
	border: 1px solid var(--wp--preset--color--navy);
	background: transparent !important;
	color: var(--wp--preset--color--navy) !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.is-style-norstar-square .wp-social-link a {
	padding: 0 !important;
	color: inherit !important;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.is-style-norstar-square .wp-social-link svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.is-style-norstar-square .wp-social-link:hover,
.is-style-norstar-square .wp-social-link:focus-within {
	color: #fff !important;
	transform: none;
}

/* ---------- Bordered panel (matches uk-panel-box) ---------- */
.is-style-norstar-panel {
	border: 1px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--base);
	padding: 30px;
}

/* ---------- Focus visibility ---------- */
a:focus-visible,
.wp-element-button:focus-visible {
	outline: 2px solid var(--wp--preset--color--green);
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		transition: none !important;
	}
}

/* ---------- Serif lead paragraph (large navy text from the original About page) ---------- */
.is-style-norstar-lead {
	font-family: var(--wp--preset--font-family--pt-serif);
	font-size: 28px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--wp--preset--color--navy);
}

@media (max-width: 781px) {
	.is-style-norstar-lead {
		font-size: 22px;
	}
}
