/**
 * TropicZen — Bootstrap / Understrap overrides (Island Vitality, tropiczen-workspace-i5e)
 */

#main-nav,
.navbar,
.navbar-nav {
	font-family: var(--tz-font-body);
}

.navbar,
#main-nav {
	padding-block: 0.75rem;
	background: rgba(247, 247, 247, 0.92) !important;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	box-shadow: 0 1px 0 rgba(14, 42, 19, 0.06);
	transition: background var(--tz-transition), box-shadow var(--tz-transition);
}

.navbar.is-scrolled,
#main-nav.is-scrolled {
	background: rgba(247, 247, 247, 0.96) !important;
	box-shadow: 0 8px 24px rgba(7, 22, 11, 0.08);
}

.navbar-brand,
.custom-logo-link {
	display: inline-flex;
	align-items: center;
}

.navbar-brand img,
.custom-logo-link img,
.tz-brand-logo__img {
	max-height: 52px;
	width: auto;
	max-width: min(220px, 42vw);
	height: auto;
	object-fit: contain;
}

.tz-brand-logo__img--mark {
	max-height: 44px;
	max-width: 44px;
}

.navbar-nav .nav-link {
	color: var(--tz-heading) !important;
	font-weight: 500;
	font-size: var(--tz-text-small);
	padding: 0.5rem 0.85rem !important;
	transition: color var(--tz-transition);
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus,
.navbar-nav .current-menu-item > .nav-link,
.navbar-nav .current_page_item > .nav-link {
	color: var(--tz-tropic-green) !important;
}

.navbar-nav .current-menu-item > .nav-link,
.navbar-nav .current_page_item > .nav-link {
	color: var(--tz-leaf-green) !important;
}

.navbar-nav .menu-item:last-child .nav-link,
.navbar .btn-primary,
.navbar .tz-nav-shop {
	background: var(--tz-gradient-gold) !important;
	color: var(--tz-palm-black-green) !important;
	border: none !important;
	border-radius: var(--tz-radius-pill) !important;
	font-weight: 600 !important;
	padding: 0.55rem 1.25rem !important;
	margin-left: 0.5rem;
	box-shadow: 0 12px 28px rgba(249, 200, 70, 0.28);
}

.navbar-nav .menu-item:last-child .nav-link:hover {
	transform: translateY(-1px);
	box-shadow: 0 16px 36px rgba(249, 200, 70, 0.34);
}

.navbar-toggler {
	border: none;
}

.navbar-toggler:focus {
	box-shadow: 0 0 0 3px rgba(140, 198, 63, 0.35);
}

.btn-primary,
.entry-content .btn-primary {
	background: var(--tz-gradient-gold) !important;
	border-color: transparent !important;
	color: var(--tz-palm-black-green) !important;
	border-radius: var(--tz-radius-pill);
	font-family: var(--tz-font-button);
	font-weight: 600;
	box-shadow: 0 12px 28px rgba(249, 200, 70, 0.28);
}

.btn-primary:hover,
.btn-primary:focus {
	background: var(--tz-gradient-gold) !important;
	color: var(--tz-palm-black-green) !important;
	transform: translateY(-2px);
}

.btn-secondary,
.entry-content .btn-secondary {
	background: transparent !important;
	border-color: rgba(14, 42, 19, 0.35) !important;
	color: var(--tz-deep-forest) !important;
	border-radius: var(--tz-radius-pill);
	font-family: var(--tz-font-button);
	font-weight: 600;
}

.entry-content .card {
	border: 1px solid rgba(14, 42, 19, 0.08);
	border-radius: var(--tz-radius);
	box-shadow: var(--tz-card-shadow);
}

.entry-content a:not([class]) {
	color: var(--tz-tropic-green);
}

.entry-content a:not([class]):hover {
	color: var(--tz-leaf-green);
}

#page-wrapper,
#content {
	overflow-x: clip;
}

#content.site-content {
	padding-top: 0;
	background: var(--tz-bg);
}

a:focus-visible,
button:focus-visible,
.tz-button:focus-visible,
.tz-newsletter__input:focus-visible {
	outline: 2px solid var(--tz-fresh-lime);
	outline-offset: 2px;
}

@media (max-width: 991px) {
	.navbar-collapse,
	.navbar-nav {
		background: rgba(247, 247, 247, 0.98);
		padding-bottom: var(--tz-space-sm);
	}

	.navbar-nav .menu-item:last-child .nav-link,
	.navbar .tz-nav-shop {
		margin-left: 0;
		margin-top: 0.5rem;
		display: inline-flex;
	}
}
