/*
 * Farnham Golf Club site-wide type and buttons.
 * Heading sizes come from Avada Global Options (H1 48px, H2 44px, H3 28px); phones get smaller
 * values through Avada's own variables. Pages should not set their own H2/H3 sizes.
 */

@media (max-width: 767px) {
	/* On body, so these win over Avada's own :root values whatever the load order. */
	html body {
		--h1_typography-font-size: 36px;
		--h2_typography-font-size: 32px;
		--h3_typography-font-size: 24px;
	}
}

/* Hole pages: the hole name is the H1 but keeps its own design size. */
.post-content h1.fgc-hole-title {
	font-size: 2.5rem;
	margin: 0 0 25px 0;
	color: #ffffff;
}

/* Visually hidden, still read by screen readers (Home H1). */
.cjg-sr-only,
.cjg-sr-only * {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* ---------- Buttons: two styles (primary, secondary) and two sizes (52px, 44px small) ---------- */

#main .fusion-button,
#main .fgc-btn-gold,
#main .fgc-btn-outline,
#main .fgc-btn-outline-white,
#main .fgc-btn-solid-green,
#main .fgc-btn-enter {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 32px !important;
	border: 2px solid transparent !important;
	border-radius: 0 !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-shadow: none !important;
	transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease !important;
}

#main .fusion-button .fusion-button-text,
#main .fusion-button i {
	color: inherit !important;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	letter-spacing: inherit !important;
	line-height: inherit !important;
}

/* Small */
#main .fusion-button.cjg-btn-small,
#main .fgc-btn-outline,
#main .fgc-btn-enter {
	min-height: 44px;
	padding: 0 20px !important;
}

/* Primary: gold fill, dark green text (6:1). */
#main .fusion-button,
#main .fgc-btn-gold {
	background: #C5A059 !important;
	border-color: #C5A059 !important;
	color: #1B3022 !important;
}

#main .fusion-button:hover,
#main .fusion-button:focus-visible,
#main .fgc-btn-gold:hover,
#main .fgc-btn-gold:focus-visible {
	background: #F4EFE6 !important;
	border-color: #F4EFE6 !important;
	color: #1B3022 !important;
}

/* Secondary on light backgrounds: green outline. */
#main .fusion-button.cjg-btn-secondary,
#main .fgc-btn-solid-green,
#main .fgc-btn-enter {
	background: transparent !important;
	border-color: #1B3022 !important;
	color: #1B3022 !important;
}

#main .fusion-button.cjg-btn-secondary:hover,
#main .fusion-button.cjg-btn-secondary:focus-visible,
#main .fgc-btn-solid-green:hover,
#main .fgc-btn-solid-green:focus-visible,
#main .fgc-btn-enter:hover,
#main .fgc-btn-enter:focus-visible {
	background: #1B3022 !important;
	border-color: #1B3022 !important;
	color: #ffffff !important;
}

/* Secondary on dark or photo backgrounds: white outline. */
#main .fusion-button.cjg-btn-secondary-light,
#main .fgc-btn-outline,
#main .fgc-btn-outline-white {
	background: rgba(27, 48, 34, 0.25) !important;
	border-color: #ffffff !important;
	color: #ffffff !important;
}

#main .fusion-button.cjg-btn-secondary-light:hover,
#main .fusion-button.cjg-btn-secondary-light:focus-visible,
#main .fgc-btn-outline:hover,
#main .fgc-btn-outline:focus-visible,
#main .fgc-btn-outline-white:hover,
#main .fgc-btn-outline-white:focus-visible {
	background: #ffffff !important;
	border-color: #ffffff !important;
	color: #1B3022 !important;
}

#main .fusion-button:focus-visible,
#main [class*="fgc-btn"]:focus-visible {
	outline: 2px solid #C5A059 !important;
	outline-offset: 3px;
}

/* Hole page previous/next links: 44px tap targets. */
#main .fgc-nav-btn {
	display: inline-flex !important;
	align-items: center;
	min-height: 44px;
}
