@charset "utf-8";
/*
Theme Name: MD Holy Grail theme
Theme URI: 
Author: Damián Fraustro
Author URI: https://fraustro-design.com
Description: Customizable Base Theme for WordPress, developed by the MaukaDigital.com Marketing agency.
Version: 2.11.6.15
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: bootstrap, font-awesome, swiperJS, custom-colors, custom-fonts
Text Domain: holygrail
*/

/* == Global == */

/* = Elements = */

body {
	font-family:var(--hg-base-font), sans-serif;
	font-size:var(--hg-base-size);
	color:var(--hg-txt);
	font-weight: var(--hg-font-weight);
	line-height:1.25;
	background:var(--hg-bg-options);
	
	--hg-outline-white:
				 1px  1px 1px white,
				-1px -1px 1px white,
				 1px -1px 1px white,
				-1px  1px 1px white;
	--hg-outline-black:
				 1px  1px 1px black,
				-1px -1px 1px black,
				 1px -1px 1px black,
				-1px  1px 1px black;
}

h1, h2, h3, h4, h5 {
	line-height:1;
	text-align:center;
	font-weight:var(--hg-header-weight);
}

h1, h2, h3, h4 {
	font-family:var(--hg-header-font), sans-serif;
	text-transform:var(--hg-header-case);
	text-wrap:balance;
}

h1 {
	margin:1em 0;
	font-size:calc(var(--hg-header-size) * 1em);
	color:var(--hg-dark-accent);
}

h2 {
	font-size:calc(var(--hg-header-size) * .8em);
	color:var(--hg-secondary);
	margin-top:0;
	margin-bottom:3rem;
}

h3 {
	font-size:calc(var(--hg-header-size) * .7em);
	color:var(--hg-dark-accent);
	margin-top:1em;
	margin-bottom:0;
}

h3:first-child {
	margin-top: 0;
}

h4 {
	font-size:calc(var(--hg-header-size) * .6em);
}

h5 {
	font-size:calc(var(--hg-header-size) * .5em);
}

@media only screen and (max-width: 1024px) {	
	h2 {
		margin-bottom:1.5rem;
	}
}

@media only screen and (max-width: 768px) {
	h2 {
		margin-bottom: 1rem;
	}
}

p {
	margin-top:1em;
	margin-bottom:0;
}

p:first-child {
	margin-top:0;
}

a {
	color:var(--hg-primary);
	text-decoration:none;
	font-weight:700;
}

a:hover {
	color:var(--hg-secondary);
}

img {
	display:inline-block;
	max-width:100%;
}

/* = General Styles = */

.shadow {
	box-shadow:0 .25rem .5rem var(--hg-nav-shadow) !important;
}

.shadow-block {
	box-shadow:-.25rem .25rem .25rem var(--hg-nav-shadow) !important;
}

.separator {
	padding:2.5rem 0;
	display:flex;
}

.separator .divider {
	border-top:5px dotted rgb(var(--hg-bg-color-rgb) / .5);
	width:10%;
	margin:0 auto;
}

.anchor {
	/*scroll-margin-top:calc( -10px + var(--wp-admin--admin-bar--height,10px));*/
	scroll-margin-top:20px;
	z-index:-1;
}

.inset-shadow {
	position:relative;
	box-shadow:inset 0 .5rem 1rem rgb(var(--hg-dark-accent-rgb) / .4);
}

.inset-shadow::after {
	content:'';
	position:absolute;
	inset:0;
	box-shadow:inset 0 -.5rem 1rem rgb(var(--hg-dark-accent-rgb) / .4);
	z-index:-1;
}

.position-unset {
	position:unset !important;
}

/* = Text Formatting = */

.text-smaller {
	font-size:.8em !important;
}

.text-smallest {
	font-size:.66em !important;
}

.text-bigger {
	font-size:1.25em !important;
}

.text-biggest {
	font-size:1.5em;
}

.text-bold {
	font-weight:700;
}

.text-italic {
	font-style:italic;
}

.text-justify {
	text-align:justify;
}

.text-balance {
	text-wrap:balance;
}

.description {
	font-size:1.2rem;
}

.description p {
	text-align:center;
}

.disclaimer {
	font-style:italic;
	color:var(--hg-secondary);
	margin:0 1.5em;
}

.disclaimer a:hover {
	text-decoration:underline;
}

.info h2 {
	margin-bottom:1em;
}

.info div a {
	font-size:1.2rem;
}

ul.dashed li::marker {
	content:'– ';
}

/* = Containers = */

.w-33 {
	width:calc(100%/3) !important;
}

@media only screen and (min-width: 768px) {
	.w-md-33 {
		width:calc(100%/3) !important;
	}
}

.ratio-2x1 {
	--bs-aspect-ratio:50%;
}

.ratio-1x2 {
	--bs-aspect-ratio:200%;
}

.ratio-16x2 {
	--bs-aspect-ratio:calc(2 / 16 * 100%);
}

.ratio-16x3 {
	--bs-aspect-ratio:calc(3 / 16 * 100%);
}

.ratio-16x5 {
	--bs-aspect-ratio:calc(5 / 16 * 100%);
}

.ratio-8x3 {
	--bs-aspect-ratio:calc(3 / 8 * 100%);
}

.ratio-3x4 {
	--bs-aspect-ratio:calc(4 / 3 * 100%);
}

.ratio-4x1 {
	--bs-aspect-ratio:25%;
}

.ratio-banner {
	--bs-aspect-ratio:calc(3 / 8 * 100%);
}

@media only screen and (max-width: 1024px) {
	.ratio-banner {
		--bs-aspect-ratio:calc(3 / 6 * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.ratio-banner {
		--bs-aspect-ratio:calc(3 / 4 * 100%);
	}
}

.alt-block {
	background-color:rgb(var(--hg-alt-bg-rgb) / .5);
	padding:1.5rem;
	box-shadow:0 .25rem .5rem rgb(0 0 0 / .6);
}

.light-block {
	background-color:var(--hg-light-accent);
	padding:1.5rem;
	box-shadow:0 .25rem .5rem rgb(0 0 0 / .6);
}

.gradient-block {
	border:1px solid var(--hg-secondary);
	background:rgb(var(--hg-secondary-rgb) / .15);
	background:linear-gradient(to bottom, rgb(255 255 255 / .15) 0%, rgb(var(--hg-secondary-rgb) / .15) 100%);
	padding:2rem;
}

.gradient-block:hover {
	border:1px solid rgb(var(--hg-secondary-rgb) / .6);
	background:rgb(var(--hg-secondary-rgb) / .4);
	background:linear-gradient(to bottom, rgb(255 255 255 / .4) 0%, rgb(var(--hg-secondary-rgb) / .4) 100%);
	box-shadow:0 .5rem .75rem rgb(0 0 0 / .33);
}

.rounded-block {
	border:1px solid var(--hg-primary);
	border-radius:1.5rem !important;
}

.light-block h3,
.light-block label,
.alt-block h3,
.alt-block label {
	color:var(--hg-dark-accent);
}

.gradient-block h5 {
	color:var(--hg-secondary);
}

.alt-block label {
	font-weight:700;
}

.exclusive-content {
	position:relative;
	margin:1rem 0;
}

.exclusive-content::before {
	content:'';
	height:4rem;
	position:absolute;
	top:-4rem;
	left:0;
	right:0;
	background:-moz-linear-gradient(top, rgb(var(--hg-bg-color-rgb) / 0) 0%, rgb(var(--hg-bg-color-rgb) / 1) 80%);
	background:-webkit-linear-gradient(top, rgb(var(--hg-bg-color-rgb) / 0) 0%, rgb(var(--hg-bg-color-rgb) / 1) 80%);
	background:linear-gradient(to bottom, rgb(var(--hg-bg-color-rgb) / 0) 0%, rgb(var(--hg-bg-color-rgb) / 1) 80%);
}

.exclusive-content:after {
	content:'';
	height:4rem;
	position:absolute;
	bottom:-4rem;
	left:0;
	right:0;
	background:-moz-linear-gradient(top, rgb(var(--hg-bg-color-rgb) / 1) 20%, rgb(var(--hg-bg-color-rgb) / 0) 100%);
	background:-webkit-linear-gradient(top, rgb(var(--hg-bg-color-rgb) / 1) 20%,rgb(var(--hg-bg-color-rgb) / 0) 100%);
	background:linear-gradient(to bottom, rgb(var(--hg-bg-color-rgb) / 1) 20%,rgb(var(--hg-bg-color-rgb) / 0) 100%);
}

.logos-grid img {
	margin:0 auto;
}

@media only screen and (min-width: 1400px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
		max-width:var(--hg-container-width);
	}
}

/* = Color Palette = */

.text-primary {
	color:var(--hg-primary) !important;
}

.text-secondary {
	color:var(--hg-secondary) !important;
}

.text-dark,
.text-dark a {
	color:var(--hg-dark-accent) !important;
}

.text-dark a:hover {
	color:var(--hg-primary) !important;
}

.text-light {
	color:var(--hg-light-accent) !important;
}

.text-body {
	color:var(--hg-bg-color);
}

.text-base {
	color:var(--hg-txt);
}

.bg-primary {
	background-color:rgb(var(--hg-primary-rgb) / var(--bs-bg-opacity)) !important;
}

.bg-primary a {
	color:var(--hg-light-accent);
}

.bg-secondary {
	background-color:rgb(var(--hg-secondary-rgb) / var(--bs-bg-opacity)) !important;
}

.bg-dark {
	background-color:rgb(var(--hg-dark-accent-rgb) / var(--bs-bg-opacity)) !important;
	color:var(--hg-bg-color);
}

.bg-light {
	background-color:rgb(var(--hg-light-accent-rgb) / var(--bs-bg-opacity)) !important;
}

.bg-alt {
	background-color:rgb(var(--hg-alt-bg-rgb) / var(--bs-bg-opacity)) !important;
}

.bg-base {
	background-color:rgb(var(--hg-bg-color-rgb) / var(--bs-bg-opacity)) !important;
}

.bg-transparent {
	background-color:rgb(var(--hg-bg-color-rgb) / 0) !important;
}

.bg-opacity-0 {
	--bs-bg-opacity:0;
}

.black-screen {
	background-color:rgb(0 0 0 / .57) !important;
}

.blue-screen {
	background-color:rgb(2 18 45 / .57) !important;
}

.white-outline {
	text-shadow:var(--hg-outline-white);
}

.white-outline path {
	stroke:white;
	stroke-linecap:round;
	stroke-width:32;
}

.black-outline {
	text-shadow:var(--hg-outline-black);
}

.black-outline path {
	stroke:black;
	stroke-linecap:round;
	stroke-width:32;
}

.border-primary {
	border-color:var(--hg-primary) !important;
}

.border-secondary {
	border-color:var(--hg-secondary) !important;
}

/* == Site Structure == */

/* = Header = */

.site-header {
	height:var(--hg-menu-height);
	z-index:99;
	pointer-events:none;
}

.site-header.fixed {
	position:sticky;
	top:var(--wp-admin--admin-bar--height, 0px);
}

.site-header .navbar {
	pointer-events:auto;
}

.site-header a {
	font-family:var(--hg-menu-font);
}

.top-header-img .site-header .navbar {
	box-shadow:none;
}
.top-header-img .site-header .navbar.smaller {
	box-shadow:0 .25rem .5rem var(--hg-menu-shadow);
}

.top-header-img .site-header.fixed {
	position:fixed;
	top:var(--wp-admin--admin-bar--height, 0px);
}

.top-header-img .site-header .navbar {
	background-color:rgb(var(--hg-menu-bg-rgb) / var(--_opacity));
}

.topbar {
	background-color: var(--hg-dark-accent);
	color:var(--hg-bg-color);
	font-size:.8rem;
	position:sticky;
	top:0;
	width:100%;
	z-index:999;
}

.admin-bar .topbar {
	top:var(--wp-admin--admin-bar--height, 0px);
}

.topbar .container-xl {
	display: flex;
	justify-content: space-evenly;
	align-items: center;
	height:3.5rem;
}
.topbar a {
	color:var(--hg-light-accent);
}
.topbar a:hover {
	color:var(--hg-bg-color);
	text-decoration:underline;
}

.topbar .topbar-icons a {
	display:inline-block;
}

.topbar .topbar-icons .icon {
	height:2rem !important;
	width:auto;
}

@media only screen and (min-width: 768px) {
	.topbar .topbar-icons .icon {
		height:1.5rem !important;
	}
}

.site-header .navbar {
	flex-direction:column;
	padding:.75rem .25rem;
	transition: all 1s;
	box-shadow:0 .25rem .5rem var(--hg-nav-shadow);
}

.site-header .navbar.body-color {
	background-color:var(--hg-menu-bg);
}
.site-header .navbar.light-color {
	background-color:var(--hg-light-accent);
}
.site-header .navbar.dark-color {
	background-color:var(--hg-dark-accent);
	color:var(--hg-bg-color);
}
.site-header .navbar.text-color {
	background-color:var(--hg-txt);
	color:var(--hg-bg-color);
}

.site-header .navbar .main-menu {
	font-size:var(--hg-menu-size);
	font-weight:var(--hg-menu-weight);
	position:relative;
}

.site-header #navbar-container {
	position:relative;
	z-index:99;
}

.site-header .navbar-brand {
	display:flex;
	transition:all 1s;
}

.site-header .vertical .navbar-brand {
	max-width:24rem;
	flex-direction:column;
	isolation:isolate;
}

.site-header .smaller .vertical .navbar-brand {
	max-width:14rem;
}

.site-header .navbar-brand img {
	width:auto;
	height:auto;
	max-height:6rem;
	max-width:none;
	transition:all 1s;
	object-fit:contain;
	object-position:left;
}

.site-header.tagged .navbar-brand img {
	max-width:180px;
}

.site-header .smaller .navbar-brand img {
	max-height:3rem;
	transition:all 1s;
	/*transition:max-height 1s, max-width 1s;*/
}

.site-header.tagged .smaller .navbar-brand img {
	max-width:120px;
}

.site-header .navbar.top-of-page .after-scroll img {
	max-height:3rem;
	opacity:0;
}
.site-header .navbar.smaller .after-scroll img {
	opacity:1;
}

.site-header .navbar.top-of-page .before-scroll {
	/*max-width:none;*/
}
.site-header .navbar.top-of-page .before-scroll img {
	opacity:1;
}
.site-header .navbar.smaller .before-scroll {
	/*max-width:1px;*/
	margin-right:0;
}
.site-header .navbar.smaller .before-scroll img {
	max-width:1px;
	margin:0;
	opacity:0;
}

.site-header .site-title a {
	font-family:var(--hg-tagline-font);
}

.site-header .navbar-brand .site-title {
	font-size:calc(var(--hg-header-size) * .5em);
	line-height:1.25;
	text-transform:var(--hg-header-case);
	transition:all 1s;
}

.site-header .smaller .navbar-brand .site-title {
	font-size:calc(var(--hg-header-size) * .4em);
}

@media only screen and (max-width: 520px) {
	.site-header .navbar-brand .site-title {
		font-size:calc(var(--hg-header-size) * .35em);
	}
}

.site-header .navbar-brand .site-title a {
	color:var(--hg-menu-hover);
	display:block;
	text-align:left;
	white-space:normal;
	text-wrap:balance;
}

.site-header .navbar-brand .site-description {
	font-size:1.25rem;
	color:var(--hg-menu-color);
	transition:all 1s;
}

.site-header .smaller .navbar-brand .site-description {
	font-size:1rem;
}

@media only screen and (max-width: 768px) {
	.site-header .navbar-brand .site-description {
		font-size:1rem;
	}
}

.site-header .wide-tagline {
	display:flex;
	flex-direction:column;
	text-align:center;
}

.site-header .wide-tagline .site-title,
.site-header .wide-tagline .site-description {
	display:grid;
	grid-template-rows:1fr;
	transition:grid-template-rows 500ms ease-in;
}

.site-header .smaller .wide-tagline .site-title,
.site-header .smaller .wide-tagline .site-description {
	grid-template-rows:0fr;
}

.site-header .wide-tagline .site-title a,
.site-header .wide-tagline .site-description span {
	overflow:hidden;
}

.site-header .wide-tagline .site-title a {
	padding-top:1rem;
	transition:padding 500ms ease-in;
}

.site-header .smaller .wide-tagline .site-title a {
	padding-top:0;
}

.site-header .wide-tagline .site-title {
	margin:0;
	
	font-size:calc(var(--hg-header-size) * 1.5em);
}

.site-header .wide-tagline .site-title a {
	color:var(--hg-secondary);
	font-weight:var(--hg-header-weight);
}

.site-header .wide-tagline .site-title a:hover,
.site-header .wide-tagline .site-description {
	color:var(--hg-primary);
}

.site-header .wide-tagline .site-description {
	font-weight:400;
	font-size:1.25em;
}

.site-header .navbar-nav {
	justify-content:flex-end;
	flex-wrap:wrap;
}

.site-header .nav-item {
	display:flex;
	position:relative;
	justify-content:flex-end;
}

.site-header .nav-item a {
	padding:.5rem;
	color:var(--hg-menu-color);
	text-decoration:none;
	text-transform:var(--hg-menu-case);
	line-height:1;
}

.site-header .nav-item a:hover,
.site-header .current-menu-item > a {
	color:var(--hg-menu-hover);
}

.site-header .navbar.dark-color .current-menu-item > a,
.site-header .navbar.text-color .current-menu-item > a {
	color:var(--hg-light-accent) !important;
}

.site-header .dropdown-menu {
	position:static;
}

@media (min-width:992px) {
	.site-header .dropdown-menu {
		position:absolute;
		width:max-content;
		padding:.5rem;
		margin:0;
		top:2.5rem;
		right:0;
		left:auto;
	}
}

.site-header .dropdown-menu .nav-item:hover {
	background-color:var(--hg-menu-hover);
}

.site-header .dropdown-menu .nav-item:hover a {
	color:var(--hg-menu-bg) !important;
}

.site-header .dropdown-toggle::after {
	margin-left: .25em;
	position:relative;
	content:'\f0dd';
	font-family:'FontAwesome';
	border:none;
}

@media only screen and (min-width: 992px) {
	.site-header .dropdown-toggle::after {
		top:-.2em;
	}
}

.site-header .dropdown-menu li {
	display:block;
	text-align:right;
}

.site-header .dropdown-menu .current-menu-item > a {
	color:var(--hg-dark-accent) !important;
}

.login-dropdown .dropdown-menu {
	min-width:15rem;
}

.svg-inline--fa.fa-circle-user {
	vertical-align:0;
}

.fadeIn {
	animation:fadeIn 1s;
	opacity:1 !important;
}

.site-header .navbar.dark-color .navbar-brand .site-title a,
.site-header .navbar.dark-color .navbar-toggler,
.site-header .navbar.dark-color a,
.site-header .navbar.text-color .navbar-brand .site-title a,
.site-header .navbar.text-color .navbar-toggler,
.site-header .navbar.text-color a {
	color:var(--hg-bg-color);
}

.navbar.dark-color .dropdown,
.navbar.text-color .dropdown {
	text-shadow:none;
}

.site-header .navbar.dark-color .navbar-brand .site-title a:hover,
.navbar.dark-color a:hover,
.site-header .navbar.text-color .navbar-brand .site-title a:hover,
.navbar.text-color a:hover {
	color:var(--hg-light-accent);
}

@keyframes fadeIn {
	from {
		opacity:0;
	}
	
	to {
		opacity:1;
	}
}

.fadeOut {
	animation:fadeOut 1s;
	opacity:0;
}

@keyframes fadeOut {
	from {
		opacity:1;
	}
	
	to {
		opacity:0;
	}
}

@media only screen and (max-width: 1024px) {
	.site-header {
		padding:0;
	}
	
	.site-header .navbar-brand img {
		height:4.5rem;
	}

	.site-header .navbar-brand .smaller img {
		height:3rem;
	}
}

@media only screen and (max-width: 992px) {
	.navbar-nav {
		display: block;
		margin-top:.75rem;
	}
	
	.site-header .nav-item {
		display:block;
		padding:0;
		text-align:right;
	}
	
	.site-header .nav-item a {
		display:block;
	}
	
	.login-dropdown .dropdown-menu {
		position:relative;
	}
}

@media only screen and (max-width: 782px) {
	.admin-bar .site-header.fixed {
		top:46px;
	}
	
	.site-header {
		min-height:4rem;
	}
	
	.site-header .site-branding img {
		height:3rem;
	}
	
	.site-header .navbar-brand {
		max-width:75%;
	}
	
	.site-header .navbar-brand img {
		width:100%;
		height:auto;
	}
}

.site-header .nav-item .shopping-cart-icon {
	position:relative;
	color:var(--hg-menu-color);
	padding-right:1rem;
}

.site-header .nav-item .shopping-cart-icon .total-products {
	position:absolute;
	right:.5rem;
	top:0;
	width:1.5em;
	height:1.5em;
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:.5em;
	line-height:1.5em;
	border-radius:100vmax;
	background-color:var(--hg-menu-hover) !important;
	color:var(--hg-menu-bg) !important;
	box-shadow: 0 1px 0.25rem var(--hg-nav-shadow);
}

@media only screen and (max-width: 600px) {
	#wpadminbar {
		position:fixed;
	}
}

/* = Main = */

.site-content,
.shop-content {
	position:relative;
	min-height:calc(100svh - var(--hg-menu-height) - var(--wp-admin--admin-bar--height,0px) );
	transition:padding 1s;
}

main * + ul {
	margin-top:1em;
}

/* = Sidebar & Widgets = */

.sidebar-wrapper {
    position:sticky;
    top:var(--hg-menu-height);
}

.admin-bar .sidebar-wrapper {
    top:calc(var(--hg-menu-height) + 2rem);
}

.widget ul ul {
	list-style:disc;
	margin-bottom:.5rem;
}

.widget .wp-calendar-table {
	width:100%;
}

.widget .wp-calendar-table th,
.widget .wp-calendar-table td {
	text-align:center;
}

.widget .wp-calendar-table td a {
	background-color:var(--hg-primary);
	color:var(--hg-bg-color);
	padding:.25rem .5rem;
	border-radius:1rem;
}

.widget .wp-calendar-table td a:hover {
	background-color:var(--hg-secondary);
}

.widget-logo img {
	max-height:50%;
	height:144px;
	width:auto;
}
	
/* = Footer = */

.site-footer {
	text-align:left;
	box-shadow:0 -.25rem .5rem var(--hg-nav-shadow);
}

.site-footer,
.site-footer h3,
.site-footer h4 {
	color:var(--hg-bg-color);
}

.site-footer h3,
.site-footer h4 {
	text-align:inherit;
}
.site-footer h3 {
	margin-bottom:.5rem;
}
.site-footer h4 {
	margin-top:1rem;
}

.site-footer p:not(:last-of-type) {
	margin-bottom:.5rem !important;
}
.site-footer p:last-of-type {
	margin-bottom:0 !important;
}

.site-footer a {
	color:var(--hg-light-accent);
	text-decoration:none;
	font-weight:normal;
}
.site-footer.bg-transparent a {
	color:var(--hg-primary);
}

.site-footer.bg-transparent {
	color:var(--hg-text) !important;
	box-shadow:none;
}

.site-footer.bg-light,
.site-footer.bg-transparent h3,
.site-footer.bg-transparent h4 {
	color:var(--hg-txt) !important;
}

.site-footer .current-menu-item a,
.site-footer a:hover {
	color:var(--hg-bg-color);
}

.site-footer a:hover {
	text-decoration:underline;
	font-weight:normal;
}

.site-footer.bg-transparent .current-menu-item a,
.site-footer.bg-transparent a:hover {
	color:var(--hg-secondary);
}

.site-footer.bg-light a {
	color:var(--hg-primary);
}

.site-footer.bg-light .current-menu-item a,
.site-footer.bg-light a:hover {
	color:var(--hg-dark-accent);
}

.site-footer ul {
	padding:0;
	margin:0;
}

.site-footer li {
	list-style:none;
	padding:.25rem 0 0;
}

.site-footer .menu-item {
	text-transform:var(--hg-menu-case);
}

.site-footer .newsletter .form-control {
	border-radius:.5rem;
	text-align:center;
}

.site-footer.bg-dark .newsletter .form-control {
	border:1px solid var(--hg-light-accent);
	color:var(--hg-bg-color);
	background-color:rgb(var(--hg-bg-color-rgb) / .1);
	max-width:18rem;
	margin:0 auto;
}

.site-footer.bg-dark .newsletter .form-control:focus {
	background-color:rgb(var(--hg-bg-color-rgb) / .2);
}

.site-footer.bg-dark .newsletter .form-control::placeholder {
	color:var(--hg-light-accent);
}

.site-footer .social-icons {
	font-size:2.5rem;
}

.site-footer .copyright {
	text-align:center;
	font-size:.9em;
	padding-right:3.5rem;
}

@media only screen and (max-width: 576px) {
	.site-footer > div > div {
		/*padding-right:3.5rem;*/
	}
}

/* == User Interface == */

/* = Buttons = */

.btn {
	display:inline-flex;
	justify-content:center;
	align-items:center;
	font-weight:700;
	border-radius:.25rem;
	padding:.5rem 1.25rem;
	font-size:1em;
	border-width:2px;
}

.btn:hover {
	background-color:rgb(var(--hg-bg-color-rgb) / .66);
}

.btn-pill {
	border-radius:100vmax;
}

.btn-sm {
	padding:.25rem .5rem;
}

.btn-cta {
	color:var(--hg-bg-color);
	height:58px;
	border-radius:29px;
	border:2px solid currentColor;
	padding:0 2rem;
}

.btn-cta:hover {
	color:var(--hg-bg-color);
	background-color:rgb(var(--hg-dark-accent-rgb) / .8);
	border:none;
}

.btn-primary {
	background-color:var(--hg-primary);
	border-color:var(--hg-primary);
	color:var(--hg-bg-color);
}
.btn-primary:active,
.btn-primary:focus {
	background-color:var(--hg-secondary);
	border-color:var(--hg-secondary);
}
.btn-primary:hover {
	border-color:var(--hg-primary);
	color:var(--hg-primary);
}

.btn-secondary {
	background-color:var(--hg-secondary);
	border-color:var(--hg-secondary);
	color:var(--hg-bg-color);
}
.btn-secondary:active,
.btn-secondary:focus {
	background-color:var(--hg-primary);
	border-color:var(--hg-primary);
}
.btn-secondary:hover {
	border-color:var(--hg-secondary);
	color:var(--hg-secondary);
}

.btn-dark {
	background-color:var(--hg-dark-accent);
	border-color:var(--hg-dark-accent);
	color:var(--hg-bg-color);
}
.btn-dark:active,
.btn-dark:focus {
	background-color:var(--hg-primary);
	border-color:var(--hg-primary);
}
.btn-dark:hover {
	border-color:var(--hg-dark-accent);
	color:var(--hg-dark-accent);
}

.btn-light {
	background-color:var(--hg-light-accent);
	border-color:var(--hg-light-accent);
	color:var(--hg-dark-accent);
}
.btn-light:active,
.btn-light:focus {
	background-color:var(--hg-alt-bg);
	border-color:var(--hg-alt-bg);
}
.btn-light:hover {
	border-color:var(--hg-light-accent);
	color:var(--hg-dark-accent);
}

.btn-grad {
	display:inline-flex;
	text-align:center;
	position:relative;
	justify-content:center;
	align-items:center;
	font-weight:900;
	border-radius:calc(.75rem + 1px);
	z-index:9;
	border:none;
}
.btn-grad::before {
	content:'';
	position:absolute;
	inset:0;
	border-radius:.75rem;
	border:3px solid transparent;
	background:linear-gradient(180deg, var(--hg-secondary), var(--hg-light-accent)) border-box;
	-webkit-mask:linear-gradient(var(--hg-bg-color) 0 0) padding-box, linear-gradient(var(--hg-bg-color) 0 0);
  	-webkit-mask-composite:destination-out;
}
.btn-grad:hover::before {
	background:linear-gradient(0deg, var(--hg-secondary), var(--hg-light-accent)) border-box;
	-webkit-mask:linear-gradient(var(--hg-bg-color) 0 0) padding-box, linear-gradient(var(--hg-bg-color) 0 0);
  	-webkit-mask-composite:destination-out;
}

.btn-grad.btn-sm::before {
	border-radius:.5rem;
}

.btn-lg {
	padding:.75rem 1.75rem;
	font-size:1.25em;
}

.no-btn {
	border:none;
	background:transparent;
}

.know-more-hide[aria-expanded="true"] {
	display:none;
}

.navbar-toggler {
	font-size:2rem;
	padding:7px 9px;
}

.scrollToTop {
	position:fixed;
	right:1.5rem;
	bottom:.875rem;
	text-align:center;
	font-size:3.5rem;
	z-index:99;
	animation-fill-mode:forwards !important;
}

.scrollToTop.fadeInAnimate {
	animation:fadeIn 2s;
}

.scrollToTop.fadeOutAnimate {
	animation:fadeOut 2s;
}

.scrollToTop svg {
	filter:drop-shadow(0px 0px 2px var(--hg-dark-accent));	
}

.scrollToTop:hover {
	color:var(--hg-light-accent);
}

.tip {
	cursor:help !important;
}

@media only screen and (max-width: 1024px) {
	.btn-lg {
		padding:.5rem 1.25rem;
	}
}

@media only screen and (max-width: 768px) {
	.btn-lg {
		padding:.25rem .75rem;
		font-size:1em;
	}
	
	.scrollToTop {
		right:1rem;
		bottom:calc(1rem - 5px);
		font-size:2.5rem;
	}
}

/* = Forms = */

.form-control,
.form-select {
	font-size:1em;
	padding:.75rem 1.25rem;
	background-color:rgb(var(--hg-alt-bg-rgb) / .25);
	color:var(--hg-dark-accent);
	border:1px solid transparent;
	box-sizing:border-box;
	margin-bottom:1rem;
}

.form-control-sm,
.form-select-sm {
	padding:.25rem .5rem;
	margin-bottom:1rem;
}

.form-label {
	margin-bottom:0;
}

.dropdown-menu .form-control {
	margin-bottom:0;
}

.form-control:hover {
	border:1px solid var(--hg-primary);
}

.form-control:focus,
.form-select:focus{
	background-color:rgb(var(--hg-alt-bg-rgb) / .5);
	border:1px solid var(--hg-primary);
	outline:transparent;
	box-shadow:none;
}

.form-control::placeholder {
	color:rgb(50 50 50 / 0.5);
}

.input-group .form-control {
	border:none;
	margin-bottom:0;
}

.input-group .input-group-text {
	background-color:var(--hg-secondary);
	border-color:var(--hg-secondary);
	color:var(--hg-bg-color);
}

.form-floating>label {
	padding:1rem 1.5rem;
}

.form-label.required:after {
	content:' *';
	color:red;
}

.wpcf7-form-control-wrap {
	border-radius:.5rem;
	display:block;
}

.wpcf7-list-item {
	display:block;
	margin-bottom:.5rem;
}

.inline-radio .wpcf7-list-item {
	display:inline-block;
}

.wpcf7-list-item-label {
	font-weight:400;
}

.wpcf7-not-valid-tip {
	margin:.5rem 0 0 .5rem;
	font-style:italic;
	font-weight:700;
}

.wpcf7 form .wpcf7-response-output {
	margin:1rem 0 0;
	font-weight:700;
	text-align:center;
	text-wrap:balance;
	color:black;
}

.wpcf7 form.sent .wpcf7-response-output {
	background-color:palegreen;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	background-color:lemonchiffon;
}

.wpcf7 form.failed .wpcf7-response-output {
	background-color:salmon;
}

.form-check-input:checked {
	background-color:var(--hg-primary);
	border-color:var(--hg-primary);
}

.form-optin .wpcf7-list-item {
	margin-bottom:0;
}

.form-optin .wpcf7-list-item label {
	display:flex;
	align-items:center;
}

.form-optin input {
	margin-right:.5rem;
	height:1.25rem;
	width:1.25rem;
}

.grecaptcha-badge {
	display:none !important;
}

.privacy-disclaimer {
	opacity:.5;
	cursor:help;
	text-wrap:balance;
}

.privacy-disclaimer:hover {
	opacity:1;
}

/* = Icons = */

.icon-lg {
	font-size:40px;
}

.icon-md {
	font-size:1.5rem;
}

.social-icons a {
	text-decoration:none !important;
}

.social-icons .icon {
	height:1em;
	width:auto;
}

.social-icons a:hover .icon {
	color:var(--hg-secondary);
}

.social-icons a:hover .fa-square-facebook,
.social-icons a:hover .fa-facebook-f {
	color:#1877f2;
}

.social-icons a:hover .fa-linkedin,
.social-icons a:hover .fa-linkedin-in {
	color:#0a66c2;
}

.social-icons a:hover .fa-square-youtube,
.social-icons a:hover .fa-youtube {
	color:#f00;
}

.social-icons a:hover .fa-square-instagram,
.social-icons a:hover .fa-instagram {
	color:#c32aa3;
}

.social-icons a:hover .fa-tiktok {
	color:#010101;
}

.social-icons a:hover .fa-square-twitter {
	color:#1da1f2;
}

.social-icons.round-icons {
	font-size:2rem;
}

.social-icons.round-icons a {
	justify-content:center;
	align-items:center;
	border-radius:100vmax;
	width:2.5rem;
	height:2.5rem;
}

.bg-primary .social-icons.round-icons a {
	color:var(--hg-primary);
	background-color:var(--hg-bg-color);
}
.bg-dark .social-icons.round-icons a {
	color:var(--hg-dark-accent);
	background-color:var(--hg-light-accent);
}

.social-logos {
	gap:1.5rem;
}

.fb-social-icon {
	font-size: 3em;
	color:#1877f2;
}

@media only screen and (max-width: 768px) {
	.icon-lg {
		font-size:24px;
	}
}

/* = Images = */

figure {
	margin:0;
}

.hero {
	position:relative;
	box-sizing:border-box;
	width:100%;
}

.hero-4x3:before,
.hero-16x9:before {
	display:block;
	content:"";
}

.hero-16x9:before {
	padding-top:56.25%
}

.hero-4x3:before {
	padding-top:75%;	
}

.hero figcaption {
	font-size: 1.5em;
	position: absolute;
	top:auto;
	bottom:2rem;
	left:2rem;
	width: auto;
	max-height:3em;
	display:flex;
	justify-content: center;
	flex-direction: column;
	text-align: left;
}

.hero figcaption a {
	color:var(--hg-bg-color);
	text-shadow:-1px -1px 1px var(--hg-dark-accent),
				1px -1px 1px var(--hg-dark-accent),
				-1px 1px 1px var(--hg-dark-accent),
				1px 1px 1px var(--hg-dark-accent);
}

.hero figcaption a:hover {
	color:var(--hg-light-accent);
}

.hero-banner {
	position:relative;
	margin-bottom:4rem !important;
	box-shadow:0 1rem 2rem rgb(0 0 0 / .6);
}

.hero-banner .featured-caption {
	line-height:1rem;
	position:absolute;
	bottom:-2rem;
	left:0;
	right:0;
	font-weight:700;
	font-style:italic;
	text-align:right;
}

.hero-banner img {
	width:100%;
	height:auto;
}

.billboard {
	margin:6rem 0 3rem;
	height:auto;
}

.img-grid h3 {
	text-align:left;
	color:var(--hg-primary);
	margin-bottom:.5rem;
}

.img-grid figure {
	width:33%;
	position:relative;
	z-index:9;
}

.img-grid p {
	text-align:justify;
}


@media only screen and (max-width: 1024px) {
	.billboard {
		margin:4rem 0 2rem;
	}
}

@media only screen and (max-width: 768px) {
	.billboard {
		margin:2rem 0 1rem;
	}
	
	.hero-header h1 {
		padding-top:5rem;
	}
	
	.img-grid figure {
		width:50%;
	}
}

/* = Animation = */

@media (prefers-reduced-motion: no-preference) {
	.hero img {
		width:100%;
		height:auto;
		box-shadow:0 1rem 2rem rgb(0 0 0 / .6);
		position:absolute;
		left:0;
		top:0;
		animation:shrink .5s;
	}

	.hero-4x3 img:hover,
	.hero-16x9 img:hover {
		width:calc(100% + 2rem);
		height:calc(100% + 2rem);
		inset:-1rem;
		animation:grow .5s;
	}

	@keyframes shrink {
		from {
			inset:-1rem;
			width:calc(100% + 2rem);
			height:calc(100% + 2rem);
		}
		to {
			inset:0;
			width:100%;
			height:100%;
		}
	}

	@keyframes grow {
		from {
			inset:0;
			width:100%;
			height:100%;
		}
		to {
			inset:-1rem;
			width:calc(100% + 2rem);
			height:calc(100% + 2rem);
		}
	}
}

/* = Breadcrumbs = */

.breadcrumbs ul {
	list-style: none;
	display:inline-flex;
	margin:0;
	padding:0;
}

.breadcrumbs .separator {
	margin:0 .5rem;
	padding:0;
	display:inline-flex;
	align-items:center;
}

.page-header:has(.page-gradient, .page-parallax-hero) .breadcrumbs,
.page-header:has(.page-gradient, .page-parallax-hero) .breadcrumbs a,
.page-header:has(.page-gradient, .page-parallax-hero) .breadcrumbs .separator {
	font-weight:normal;
	color:var(--hg-bg-color);
}

.page-header .breadcrumbs a:hover {
	color:var(--hg-light-accent);
}

/* = Pagination = */

.pagination .page-link {
	color:var(--hg-primary);
	background-color:var(--hg-bg-color);
	border-color:rgb(var(--hg-primary-rgb) / .25);
}

.pagination .page-link:hover {
	background-color:var(--hg-primary);
	color:var(--hg-bg-color);
	border-color:var(--hg-primary);
}

.pagination .page-item.active .page-link {
	background-color:var(--hg-secondary);
	color:var(--hg-bg-color);
	border-color:rgb(var(--hg-primary-rgb) / .25);
	cursor:default;
}

/* = Counters = */

.alpha-list,
.bullet-list {
	padding-left:2rem;
	list-style:none;
}

.alpha-list {
	counter-reset:alpha-counter;
}

.alpha-list h3,
.bullet-list h3 {
	position:relative;
	text-align:left;
	color:var(--hg-primary);
	margin-bottom:.5rem;
}

.alpha-list h3::before {
	position:absolute;
	left:-2rem;
	width:2rem;
	text-transform:lowercase;
	counter-increment:alpha-counter;
	content:counter(alpha-counter,lower-alpha) ') '
}

.bullet-list h3::before {
	position: absolute;
	left:-1.5rem;
	width:2rem;
	font-size: 1.5em;
	line-height:.8;
	content:"•";
}

/* = Accordions = */

.accordion-button {
	color:var(--hg-primary);
}

.accordion-button::after {
	font-family:'FontAwesome';
	content:'\f078';
	background-image:none;
	height:auto;
	width:auto;
}

.accordion-button:not(.collapsed) {
	color:var(--hg-dark-accent);
	background-color:var(--hg-light-accent);
}

.accordion-button:not(.collapsed)::after {
	content:'\f078';
	background-image:none;
}

.accordion-button:focus {
	box-shadow:0 0 0 1px var(--hg-primary);
}

/* == Content == */

/* = Homepage = */

#home-header {
	position:relative;
}

#home-header:has(.page-parallax-hero, .page-image-hero) {
	height:calc(100vh - (var(--hg-menu-height) + var(--wp-admin--admin-bar--height,0px)));
	background-color:rgb(0 0 0 / .4);
}

.home-header-image .image-page-hero {
	position:relative;
	background:black;
}

.home-header-image .bg-img {
	position:absolute;
	inset:0;
	opacity:.5;
	height:100%;
	width:100%;
	content-fit:cover;
}

.home-header-image .hero-data {
	position:relative;
	z-index:1;
}

/* = Pages = */

.page-parallax-hero {
	background-color:rgb(0 0 0 / .4);
	padding:10rem 0;
}

.top-header-img .page-parallax-hero {
	padding:0;
}

.page-gradient {
	background:-moz-linear-gradient(top, var(--hg-secondary) 0%, var(--hg-dark-accent) 100%);
	background:-webkit-linear-gradient(top, var(--hg-secondary) 0%,var(--hg-dark-accent) 100%);
	background:linear-gradient(to bottom, var(--hg-secondary) 0%,var(--hg-dark-accent) 100%);
	width:100%;
	height:100%;
	padding:6rem 0;
}

.page-banner {
	background-position:center;
	background-size:cover;
}

.page-banner .entry-title,
.page-parallax-hero .entry-title,
.page-gradient .entry-title {
	line-height:1;
	color:var(--hg-bg-color);
	text-shadow:var(--hg-outline-black);
}

.page-parallax-hero .entry-title,
.page-gradient .entry-title {
	z-index:2;
	margin:0;
}

.hero-data {
	color:var(--hg-bg-color);
	text-shadow:var(--hg-outline-black);
}

.hero-data .svg-inline--fa path {
	stroke:black;
	stroke-linecap:round;
	stroke-width:32px;
}

.type-page .entry-header .description {
	margin-bottom:3rem;
}

@media only screen and (max-width: 1080px) {
	.type-page .entry-header .description {
		margin-bottom:2rem;
	}
	
	.page-parallax-hero {
		padding:7rem 0;
	}
	
	.page-hero {
		padding:7rem 0;
	}

	.page-hero h2 {
		font-size: 2.5em;
		bottom:2rem;
		padding-right:.75rem;
	}
	
	.page-header .featured-caption {
		bottom:.5rem;
	}
}

@media only screen and (max-width: 768px) {
	.type-page .entry-header .description {
		margin-bottom:1.5rem;
	}
	
	.parallax-page-hero {
		padding:4rem 0;
	}
	
	.page-hero {
		padding:4rem 0;
	}

	.page-hero h2 {
		font-size:2em;
		bottom:1rem;
	}
	
	.page-header .featured-caption {
		bottom:.25rem;
		font-size: .8em;
	}
}

/* = Blog = */

.blog .hentry,
.archive .hentry,
.search .hentry {
	padding:0;
}

.type-post.card .card-img-top,
.type-page.card .card-img-top {
	background:rgb(var(--hg-primary-rgb) / .4);
	background:-webkit-linear-gradient(top, rgb(var(--hg-dark-accent-rgb) / 1) 0%, rgb(var(--hg-primary-rgb) / .6) 100%);
	background:-o-linear-gradient(top, rgb(var(--hg-dark-accent-rgb) / 1) 0%, rgb(var(--hg-primary-rgb) / .6) 100%);
	background:linear-gradient(to bottom, rgb(var(--hg-dark-accent-rgb) / 1) 0%, rgb(var(--hg-primary-rgb) / .6) 100%);
}

.type-post.card .card-img-top .post-type,
.type-page.card .card-img-top .post-type {
	position:absolute;
	top:1rem;
	left:1rem;
	width:auto;
	height:auto;
	z-index:9;
	text-transform:var(--hg-header-case);
	font-weight:700;
	font-size:1.25em;
	color:var(--hg-bg-color);
    text-shadow: -1px -1px 1px var(--hg-dark-accent),
				 1px -1px 1px var(--hg-dark-accent),
				 -1px 1px 1px var(--hg-dark-accent),
				 1px 1px 1px var(--hg-dark-accent);
}

.type-post.card .card-img-top .post-type svg path,
.type-page.card .card-img-top .post-type svg path {
	stroke: var(--hg-dark-accent);
	stroke-width: 4%;
}

.type-post.card .card-title,
.type-page.card .card-title {
	margin-top:-5rem;
	position:relative;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	min-height:5rem;
	box-shadow:0 -5px 5px rgb(0 0 0 / .5);
}

.type-post.card .card-title .entry-title {
	margin:0;
	font-size:1.3em;
}

.type-post.card .card-title .entry-subtitle {
	margin-top:1rem;
	font-size:1.15em;
}

.type-page.card .card-body {
	background:var(--hg-bg-color);
	background:-webkit-linear-gradient( var(--hg-bg-color) 30%, var(--hg-light-accent) 100%);
	background:-o-linear-gradient( var(--hg-bg-color) 30%, var(--hg-light-accent) 100%);
	background:linear-gradient( var(--hg-bg-color) 30%, var(--hg-light-accent) 100%);
}

.card .meta {
	margin:1rem 0 0;
	border-left:0.25rem solid var(--hg-light-accent);
	padding-left:0.5rem;
}

.post-article .meta {
	text-align:right;
	margin:0 1.5rem;
	border-right:0.25rem solid var(--hg-light-accent);
	padding-right:0.75rem;
}

.card .meta p {
	text-align: left;
	display:flex;
	margin-bottom: .5rem;
}

.card .meta p .icon {
	width:1.5rem;
	margin-right:0.5rem;
}

.post-article .entry-title {
	margin:3rem 0;
}

.post-article h5 {
	text-align: left;
	color:var(--hg-primary);
}

.post-article li::marker {
	font-size:1.25em;
	font-weight:700;
	color:var(--hg-primary);
}

.post-article li ul {
	list-style:disc;
}

.testimonial .star-rating .solid {
	color:var(--hg-secondary);
}

.testimonial .star-rating .outline {
	color:rgb(var(--hg-secondary-rgb) / .5);
}

.testimonial .star-rating .bg {
	color:var(--hg-bg-color);
}


.testimonial .card-title {
	color:var(--hg-dark-accent);
}

.testimonial .card-subtitle {
	color:rgb(var(--hg-dark-accent-rgb) / .5);
}

/* = Subscribers page = */

#index-slider img {
	-webkit-box-reflect:below 0 -webkit-linear-gradient(bottom,rgb(255 0 0 / .25) 0%,transparent 4.5rem,transparent 100%);
}

#index-slider h4 {
	position:relative;
	margin:1.5rem 0 3rem;
}

@media only screen and (max-width: 768px) {
	#index-slider h4 {
		font-size:1.25em;
	}
}

#subscribers-content h1 {
	margin:2rem 0 4rem;
}

#subscribers-content h2 {
	margin-bottom:5rem;
}

#subscribers-content h3 {
	padding-top:6rem;
	margin:0 0 2rem;
}

.exclusive-content-btn {
	display:none;
	position:fixed;
	right:-10.5rem;
	top:calc(50% - 20px);
	background:var(--hg-primary);
	color:var(--hg-bg-color);
	padding:.5rem .75rem;
	line-height:2rem;
	box-shadow:0px 0px 2px var(--hg-dark-accent);
	border-radius:.5rem 0 0 .5rem;
	z-index:99;
	transition: right .3s ease-in-out;
	-webkit-transition: right .3s ease-in-out;
}

.exclusive-content-btn:hover {
	background:var(--hg-light-accent);
	right:0;
	color:var(--hg-primary);
}