/*
Theme Name: Joeythex GeneratePress Child
Theme URI: https://generatepress.com
Description: Child theme for GeneratePress
Author: Joeythex
Author URI: https://joeythex.com
Template: generatepress
Version: 1.0.0
*/

html {
	scroll-behavior: smooth;
}

/* Homepage hero */
.rolling-hero-text {
	white-space: nowrap;
	position: absolute;
	left: 0;
	will-change: transform;
	animation: bounceText 15s linear infinite alternate;
	font-size: 2rem;
	padding-left: 0;
	/* optional, for spacing */
	bottom: 160px;
	margin-bottom: 0px;
	max-height: 100px;
	width: 100%;
}

@keyframes bounceText {
	from {
		transform: translateX(0);
	}

	to {
		/* Move left by (text width - hero width) */
		/* This example uses -50vw for demonstration; use JS for precise value if text is dynamic. */
		transform: translateX(calc(-100vw));
	}
}

.home .site-header {
	background: transparent;
}

/* Menu */
#primary-menu {
	padding: 8px 20px;
	border-radius: 1000px;
	background: #272D2A;
}

#primary-menu>ul {
	gap: 8px;
}

#primary-menu .menu-item a {
	padding-left: 12px;
	padding-right: 12px;
	line-height: 1.2;
	padding: 12px 16px;
	border-radius: 1000px;
	transition: 250ms ease all;
}

#primary-menu .menu-item.current-menu-item>a {
	background-color: #ffffff;
	color: #1B1D1B;
}

#primary-menu .menu-item a:hover {
	background-color: #1B1D1B;
	color: rgb(255 255 255 / 0.8);
}

/* Cards */
@media (min-width: 881px) {
	.joeythex-cards-container:has(.joeythex-cards-row:hover) .joeythex-cards-row:not(:hover) .joeythex-card {
		min-height: 220px;
	}
	.joeythex-cards-row:hover .joeythex-card {
		min-height: 260px!important;
	}
}
.joeythex-card {
	transition: 250ms linear-gradient all!important;
}
@media screen and (max-width: 880px) {
	.joeythex-cards-row {
		flex-direction: column;
		gap: 8px;
		margin-bottom: 4px;
	}

	

	.joeythex-cards-row .joeythex-card .joeythex-hidden-element {
		display: block;
		opacity: 1;
	}

	.joeythex-cards-row .joeythex-card-expand {
		display: none;
	}
}

@media (min-width: 880px) and (max-width: 1600px) {
	h1 {
		font-size: 68px
	}
	h2 {
		font-size: 54px
	}
	h3 {
		font-size: 42px;
	}
	h4 {
		font-size: 28px;
	}
	h5 {
		font-size: 24px;
	}
}

/* Buttons */
.joeythex-btn-primary,
.gform_wrapper input[type="submit"] {
	background: linear-gradient(to right, var(--global-color-6), var(--global-color-6));
	background-repeat: no-repeat;
	background-size: 0 100%;
	overflow: hidden;
}
.joeythex-btn-primary:hover,
.gform_wrapper input[type="submit"]:hover {
	background-size: 100% 100%;
}
.joeythex-btn-primary:before,
.gform_wrapper input[type="submit"]:before {
	content: '';
	background-color: var(--base-3);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.joeythex-btn-secondary {
	background: linear-gradient(to right, var(--contrast-3), var(--contrast-3));
	background-repeat: no-repeat;
	background-size: 0 100%;
	overflow: hidden;
	position: relative;
}
.joeythex-btn-secondary:hover {
	background-size: 100% 100%;
	color: var(--contrast)!important;
}
.joeythex-btn-secondary:hover svg {
	filter: invert(1);
}
.joeythex-btn-secondary:before {
	content: '';
	width: 100%;
	height: 100%;
	background-color: var(--contrast-2);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

/* Forms */
.gform_wrapper input,
.gform_wrapper textarea {
	box-shadow: none!important;
}
.gform_wrapper input::placeholder {
	color: #868a86;
	opacity: 1;
}
.gform_wrapper input:focus,
.gform_wrapper input:focus-within,
.gform_wrapper input:focus-visible,
.gform_wrapper textarea:focus,
.gform_wrapper textarea:focus-within,
.gform_wrapper textarea:focus-visible {
	outline-width: 2px!important;
	outline: var(--contrast-2) 2px solid;
}

.gform_wrapper input[type="submit"] {
	box-shadow: none!important;
	width: 100%!important;
	border: none!important;
	transition: 500ms ease all!important;
}