/*
Theme Name: Bull
Author: Advantage Marketing
Author URI: https://advantagemarketingus.com/
Theme URI: https://advantagemarketingus.com/
Tags: full-site-editing, block-patterns
Text Domain: bull
Requires at least: 6.4
Requires PHP: 7.4
Tested up to: 6.4
Version: 1.3.2

License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
  --max-width: 1800px;
}

::selection {
	color: var(--wp--preset--color--white);
	background-color: var(--wp--preset--color--red-brown);
}

/* Editor/Frontend Styles */

.block-editor-block-list__block.header {
  min-height: 500px !important;
  align-items: baseline !important;
  display: block;
}

.entry-content { margin-top: 0; }

figure {
  margin: 0;
}

figure img {
  width: 100%;
}

h1,h2,h3,h4,h5,h6, p {
  text-wrap: pretty;
}

.site-footer {
  background-color: var(--wp--preset--color--black);
}

.site-footer > div.wp-block-group {
  max-width: var(--max-width);
  margin-left: auto;
  margin-right: auto;
}

.is-style-mobile-spacer {
  display: none;
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
  font-size: var(--wp--preset--font-size--medium);
}

.search-results .wp-block-post.products { justify-content: flex-start; }

.is-sticky {
  position: sticky;
  top: 7rem;
  align-self: flex-start;
}

/* //////////////////// UTILS ////////////////////// */

.site-max-width {
  max-width: var(--max-width);
  margin-left: auto;
  margin-right: auto;
  padding-top: 0px !important;
  margin-top: 0px !important;
}

.pos-relative {
  position: relative;
}

.prop65-warning {
  font-size: 0.65em;
  max-width: 450px;
  padding: 10px;
  border: 1px solid var(--wp--preset--color--light-gray);
}

/* //////////////////// HEADER ////////////////////// */

.site-header {
	position: sticky;
	top: 0;
	left: 0;
	z-index: 1000;
	background-color: var(--wp--preset--color--white);
}

.custom-logo-link {
  opacity: 1;
  transition: opacity 0.3s ease;
}

.custom-logo-link:hover {
  opacity: 0.85;
}

/* //////////////////// BUTTONS ////////////////////// */

button {
	border: 0;
	backface-visibility: hidden;
	transform: translateZ(0);
	will-change: transform;
}

.wp-block-button__link,
.wp-block-button__link::before,
.wp-block-button__link::after,
.bull-btn a,
.bull-btn a::before, 
.bull-btn a::after,
.wp-site-blocks button[type="submit"], 
.wp-site-blocks button[type="submit"]::before, 
.wp-site-blocks button[type="submit"]::after {
  transition: all 0.2s ease-out;
}

.bull-btn[class*="has-"][class*="-background-color"] {
  background-color: transparent !important;
}

.wp-block-button__link,
.bull-btn a,
.wp-site-blocks button[type="submit"] {
  font-family: var(--wp--preset--font-family--primary);
  font-size: var(--wp--preset--font-size--small);
  text-align: center;
  background-color: var(--wp--preset--color--red);
  color: var(--wp--preset--color--white);
  max-width: fit-content;
  width: fit-content;
  padding: 10px;
  margin: 0px 20px;
  position: relative;
  border-radius: 0;
  cursor: pointer;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform;
  display: block;
}

.wp-block-button__link::before,
.bull-btn a::before,
.wp-site-blocks button[type="submit"]::before {
  content: '';
  top: 0;
  left: -20px;
  position: absolute;
  width: 20px;
  height: 100%;
  background-color: var(--wp--preset--color--red);
  clip-path: polygon(100% 100%, 0% 100%, 0 100%, 0 100%, 65% 0, 100% 0%);
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform;
}

.wp-block-button__link::after,
.bull-btn a::after,
.wp-site-blocks button[type="submit"]::after {
  content: '';
  top: 0;
  right: -20px;
  position: absolute;
  width: 20px;
  height: 100%;
  background-color: var(--wp--preset--color--red);
  clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 100% 0%, 35% 100%, 0% 100%);
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform;
}

.wp-block-button__link:hover, .bull-btn a:hover, .wp-site-blocks button[type="submit"]:hover,
.wp-block-button__link:hover::before, .bull-btn a:hover::before, .wp-site-blocks button[type="submit"]:hover::before,
.wp-block-button__link:hover::after, .bull-btn a:hover::after, .wp-site-blocks button[type="submit"]:hover::after,
.wp-block-button__link:focus, .bull-btn a:focus, .wp-site-blocks button[type="submit"]:focus,
.wp-block-button__link:focus::before, .bull-btn a:focus::before, .wp-site-blocks button[type="submit"]:focus::before,
.wp-block-button__link:focus::after, .bull-btn a:focus::after, .wp-site-blocks button[type="submit"]:focus::after {
  outline: 0;
  background-color: var(--wp--preset--color--red-brown);
  color: var(--wp--preset--color--white);
}

.wp-block-button__link:hover::before,
.wp-block-button__link:focus::before,
.bull-btn a:hover::before, .wp-site-blocks button[type="submit"]:hover::before,
.bull-btn a:focus::before, .wp-site-blocks button[type="submit"]:focus::before {
    clip-path: polygon(100% 100%, 0% 100%, 18% 91%, 27% 80%, 65% 0, 100% 0%);
}

.wp-block-button__link:hover::after,
.wp-block-button__link:focus::after,
.bull-btn a:hover::after, .wp-site-blocks button[type="submit"]:hover::after,
.bull-btn a:focus::after, .wp-site-blocks button[type="submit"]:focus::after {
    clip-path: polygon(0% 0%, 100% 0%, 82% 9%, 73% 20%, 35% 100%, 0% 100%);
}

.wp-block-buttons {
  gap: 8px;
}

/*////////////// Black Buttons /////////////////*/
.wp-block-button__link.has-black-background-color,
.bull-btn.has-black-background-color a,
.wp-block-button__link.has-black-background-color::before,
.bull-btn.has-black-background-color a::before,
.wp-block-button__link.has-black-background-color::after,
.bull-btn.has-black-background-color a::after {
  background-color: var(--wp--preset--color--black);
}

.wp-block-button__link.has-black-background-color:hover,
.wp-block-button__link.has-black-background-color:hover::before,
.wp-block-button__link.has-black-background-color:hover::after,
.bull-btn.has-black-background-color a:hover,
.bull-btn.has-black-background-color a:hover::before,
.bull-btn.has-black-background-color a:hover::after,
.wp-block-button__link.has-black-background-color:focus,
.wp-block-button__link.has-black-background-color:focus::before,
.wp-block-button__link.has-black-background-color:focus::after,
.bull-btn.has-black-background-color a:focus,
.bull-btn.has-black-background-color a:focus::before,
.bull-btn.has-black-background-color a:focus::after
{
  background-color: var(--wp--preset--color--dark-gray) !important;
}
/*//////////////////////////////////////////////*/

/*////////////// Red Buttons /////////////////*/
.wp-block-button__link.has-red-background-color,
.bull-btn.has-red-background-color a,
.wp-block-button__link.has-red-background-color::before,
.bull-btn.has-red-background-color a::before,
.wp-block-button__link.has-red-background-color::after,
.bull-btn.has-red-background-color a::after {
  background-color: var(--wp--preset--color--red);
}

.wp-block-button__link.has-red-background-color:hover,
.wp-block-button__link.has-red-background-color:hover::before,
.wp-block-button__link.has-red-background-color:hover::after,
.bull-btn.has-red-background-color a:hover,
.bull-btn.has-red-background-color a:hover::before,
.bull-btn.has-red-background-color a:hover::after,
.wp-block-button__link.has-red-background-color:focus,
.wp-block-button__link.has-red-background-color:focus::before,
.wp-block-button__link.has-red-background-color:focus::after,
.bull-btn.has-red-background-color a:focus,
.bull-btn.has-red-background-color a:focus::before,
.bull-btn.has-red-background-color a:focus::after
{
  background-color: var(--wp--preset--color--red-brown) !important;
}
/*//////////////////////////////////////////////*/

/*////////////// Red Brown Buttons /////////////////*/
.wp-block-button__link.has-red-brown-background-color,
.bull-btn.has-red-brown-background-color a,
.wp-block-button__link.has-red-brown-background-color::before,
.bull-btn.has-red-brown-background-color a::before,
.wp-block-button__link.has-red-brown-background-color::after,
.bull-btn.has-red-brown-background-color a::after {
  background-color: var(--wp--preset--color--red-brown);
}

.wp-block-button__link.has-red-brown-background-color:hover,
.wp-block-button__link.has-red-brown-background-color:hover::before,
.wp-block-button__link.has-red-brown-background-color:hover::after,
.bull-btn.has-red-brown-background-color a:hover,
.bull-btn.has-red-brown-background-color a:hover::before,
.bull-btn.has-red-brown-background-color a:hover::after,
.wp-block-button__link.has-red-brown-background-color:focus,
.wp-block-button__link.has-red-brown-background-color:focus::before,
.wp-block-button__link.has-red-brown-background-color:focus::after,
.bull-btn.has-red-brown-background-color a:focus,
.bull-btn.has-red-brown-background-color a:focus::before,
.bull-btn.has-red-brown-background-color a:focus::after
{
  background-color: var(--wp--preset--color--red) !important;
}
/*//////////////////////////////////////////////*/

/*////////////// Dark Gray Buttons /////////////////*/
.wp-block-button__link.has-dark-gray-background-color,
.bull-btn.has-dark-gray-background-color a,
.wp-block-button__link.has-dark-gray-background-color::before,
.bull-btn.has-dark-gray-background-color a::before,
.wp-block-button__link.has-dark-gray-background-color::after,
.bull-btn.has-dark-gray-background-color a::after {
  background-color: var(--wp--preset--color--dark-gray);
}

.wp-block-button__link.has-dark-gray-background-color:hover,
.wp-block-button__link.has-dark-gray-background-color:hover::before,
.wp-block-button__link.has-dark-gray-background-color:hover::after,
.bull-btn.has-dark-gray-background-color a:hover,
.bull-btn.has-dark-gray-background-color a:hover::before,
.bull-btn.has-dark-gray-background-color a:hover::after,
.wp-block-button__link.has-dark-gray-background-color:focus,
.wp-block-button__link.has-dark-gray-background-color:focus::before,
.wp-block-button__link.has-dark-gray-background-color:focus::after,
.bull-btn.has-dark-gray-background-color a:focus,
.bull-btn.has-dark-gray-background-color a:focus::before,
.bull-btn.has-dark-gray-background-color a:focus::after
{
  background-color: var(--wp--preset--color--black) !important;
}
/*//////////////////////////////////////////////*/

/*////////////// Light Gray Buttons /////////////////*/
.wp-block-button__link.has-light-gray-background-color,
.bull-btn.has-light-gray-background-color a,
.wp-block-button__link.has-light-gray-background-color::before,
.bull-btn.has-light-gray-background-color a::before,
.wp-block-button__link.has-light-gray-background-color::after,
.bull-btn.has-light-gray-background-color a::after {
  color: var(--wp--preset--color--dark-gray) !important;
  background-color: var(--wp--preset--color--light-gray);
}

.wp-block-button__link.has-light-gray-background-color:hover,
.wp-block-button__link.has-light-gray-background-color:hover::before,
.wp-block-button__link.has-light-gray-background-color:hover::after,
.bull-btn.has-light-gray-background-color a:hover,
.bull-btn.has-light-gray-background-color a:hover::before,
.bull-btn.has-light-gray-background-color a:hover::after,
.wp-block-button__link.has-light-gray-background-color:focus,
.wp-block-button__link.has-light-gray-background-color:focus::before,
.wp-block-button__link.has-light-gray-background-color:focus::after,
.bull-btn.has-light-gray-background-color a:focus,
.bull-btn.has-light-gray-background-color a:focus::before,
.bull-btn.has-light-gray-background-color a:focus::after
{
  background-color: var(--wp--preset--color--white) !important;
}
/*//////////////////////////////////////////////*/

/*////////////// White Buttons /////////////////*/
.wp-block-button__link.has-white-background-color,
.bull-btn.has-white-background-color a,
.wp-block-button__link.has-white-background-color::before,
.bull-btn.has-white-background-color a::before,
.wp-block-button__link.has-white-background-color::after,
.bull-btn.has-white-background-color a::after {
  color: var(--wp--preset--color--dark-gray) !important;
  background-color: var(--wp--preset--color--white);
}

.wp-block-button__link.has-white-background-color:hover,
.wp-block-button__link.has-white-background-color:hover::before,
.wp-block-button__link.has-white-background-color:hover::after,
.bull-btn.has-white-background-color a:hover,
.bull-btn.has-white-background-color a:hover::before,
.bull-btn.has-white-background-color a:hover::after,
.wp-block-button__link.has-white-background-color:focus,
.wp-block-button__link.has-white-background-color:focus::before,
.wp-block-button__link.has-white-background-color:focus::after,
.bull-btn.has-white-background-color a:focus,
.bull-btn.has-white-background-color a:focus::before,
.bull-btn.has-white-background-color a:focus::after
{
  background-color: var(--wp--preset--color--light-gray) !important;
}
/*//////////////////////////////////////////////*/

/*////////////// Transparent Buttons /////////////////*/
.wp-block-button__link.has-transparent-background-color,
.bull-btn.has-transparent-background-color a,
.wp-block-button__link.has-transparent-background-color::before,
.bull-btn.has-transparent-background-color a::before,
.wp-block-button__link.has-transparent-background-color::after,
.bull-btn.has-transparent-background-color a::after {
  background-color: var(--wp--preset--color--transparent);
}

.wp-block-button__link.has-transparent-background-color:hover,
.wp-block-button__link.has-transparent-background-color:hover::before,
.wp-block-button__link.has-transparent-background-color:hover::after,
.bull-btn.has-transparent-background-color a:hover,
.bull-btn.has-transparent-background-color a:hover::before,
.bull-btn.has-transparent-background-color a:hover::after,
.wp-block-button__link.has-transparent-background-color:focus,
.wp-block-button__link.has-transparent-background-color:focus::before,
.wp-block-button__link.has-transparent-background-color:focus::after,
.bull-btn.has-transparent-background-color a:focus,
.bull-btn.has-transparent-background-color a:focus::before,
.bull-btn.has-transparent-background-color a:focus::after
{
  background-color: rgba(0,0,0, 0.25) !important;
}
/*//////////////////////////////////////////////*/


/* //////////////////// ANGLED BOXES ////////////////////// */

.is-style-left-angle,
.is-style-right-angle,
.is-style-left-angle-right-angle {
  height: 100%;
  padding: 2rem 3rem;
  position: relative;
  z-index: 1;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}

.is-style-left-angle::before,
.is-style-left-angle-right-angle::before {
  content: '';
  top: 0;
  left: -100px;
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  /*clip-path: polygon(100% 100%, 0% 100%, 0% 100%, 0% 100%, 99% 0%, 100% 0%);*/
  transform: skewX(345deg);
}

.is-style-right-angle::after,
.is-style-left-angle-right-angle::after {
  content: '';
  top: 0;
  right: -100px;
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  /*clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 100% 0%, 1% 100%, 0% 100%);*/
  transform: skewX(345deg);
}

.is-style-left-angle.has-red-background-color::before,
.is-style-right-angle.has-red-background-color::after,
.is-style-left-angle-right-angle.has-red-background-color::before,
.is-style-left-angle-right-angle.has-red-background-color::after {
  background-color: var(--wp--preset--color--red);
}

.is-style-left-angle.has-black-background-color::before,
.is-style-right-angle.has-black-background-color::after,
.is-style-left-angle-right-angle.has-black-background-color::before,
.is-style-left-angle-right-angle.has-black-background-color::after {
  background-color: var(--wp--preset--color--black);
}

.is-style-left-angle.has-white-background-color::before,
.is-style-right-angle.has-white-background-color::after,
.is-style-left-angle-right-angle.has-white-background-color::before,
.is-style-left-angle-right-angle.has-white-background-color::after {
  background-color: var(--wp--preset--color--white);
}

.is-style-left-angle.has-light-gray-background-color::before,
.is-style-right-angle.has-light-gray-background-color::after,
.is-style-left-angle-right-angle.has-light-gray-background-color::before,
.is-style-left-angle-right-angle.has-light-gray-background-color::after {
  background-color: var(--wp--preset--color--light-gray);
}

.is-style-left-angle.has-dark-gray-background-color::before,
.is-style-right-angle.has-dark-gray-background-color::after,
.is-style-left-angle-right-angle.has-dark-gray-background-color::before,
.is-style-left-angle-right-angle.has-dark-gray-background-color::after {
  background-color: var(--wp--preset--color--dark-gray);
}

.is-style-left-angle.has-red-brown-background-color::before,
.is-style-right-angle.has-red-brown-background-color::after,
.is-style-left-angle-right-angle.has-red-brown-background-color::before,
.is-style-left-angle-right-angle.has-red-brown-background-color::after {
  background-color: var(--wp--preset--color--red-brown);
}

/* //////////////////// TYPOGRAPHY COLORS ////////////////////// */

.has-black-background-color h1,
.has-black-background-color h2,
.has-black-background-color h3,
.has-black-background-color h4,
.has-black-background-color p {
  color: var(--wp--preset--color--white);
}

.has-red-background-color h1,
.has-red-background-color h2,
.has-red-background-color h3,
.has-red-background-color h4,
.has-red-background-color p {
  color: var(--wp--preset--color--white);
}

.has-red-brown-background-color h1,
.has-red-brown-background-color h2,
.has-red-brown-background-color h3,
.has-red-brown-background-color h4,
.has-red-brown-background-color p {
  color: var(--wp--preset--color--white);
}

.has-dark-gray-background-color h1,
.has-dark-gray-background-color h2,
.has-dark-gray-background-color h3,
.has-dark-gray-background-color h4,
.has-dark-gray-background-color p {
  color: var(--wp--preset--color--white);
}

/* //////////////////// LISTS ////////////////////// */

.wp-site-blocks .wp-block-list {
  padding-left: 0;
  list-style-position: inside;
}

.wp-site-blocks .wp-block-list:not(ol) {
  list-style-type: none;
}

.wp-site-blocks .wp-block-list li {
  margin-bottom: 5px;
}

.wp-site-blocks .wp-block-list:not(ol) li::before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 3px;
  background-color: var(--wp--preset--color--red);
  margin-right: 10px;
  transform: skewX(345deg);
  vertical-align: baseline;
  position: relative;
  bottom: 5px;
}

/* //////////////////// LINKS ////////////////////// */

.site-footer a {
  color: var(--wp--preset--color--white);
  transition: color 0.3s ease-out;
}

.site-footer a:hover {
  color: #e62229;
}

/* //////////////////// FIGURE CAPTIONS ////////////////////// */

.wp-element-caption {
  text-align: center;
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--black);
}


/* //////////////////// FILES ////////////////////// */

.wp-block-file > a:first-of-type {
  font-size: 1.3em;
  font-family: var(--wp--preset--font-family--secondary);
	text-transform: uppercase;
  color: var(--wp--preset--color--black);
  transition: color 0.3s ease;
}

.wp-block-file > a:last-of-type {
  font-size: 1em;
  font-family: var(--wp--preset--font-family--secondary);
	text-transform: uppercase;
  color: var(--wp--preset--color--dark-gray);
  transition: color 0.3s ease;
}

.wp-block-file >a:first-of-type:hover,
.wp-block-file >a:last-of-type:hover {
  color: var(--wp--preset--color--red);
}

.wp-block-file:not(.wp-element-button) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 650px;
    border-bottom: 1px dotted var(--wp--preset--color--light-gray);
    margin: 0.5em auto 0.5em auto;
}

.wp-block-file *+.wp-block-file__button {
    color: var(--wp--preset--color--dark-gray);
    display: flex;
    align-items: center;
    border-radius: 0;
    background-color: transparent;
}

@property --hoverAngle {
  syntax: '<color>';
  inherits: false;
  initial-value: transparent;
}

.wp-site-blocks .wp-block-file__button::before {
content: attr(data-ext) " ";
    font-weight: bold;
    margin-right: 0.5em;
    color: var(--wp--preset--color--dark-gray);
    height: 40px;
    display: flex;
    align-items: center;
    padding: 0 5px;
    border: 1px solid var(--wp--preset--color--dark-gray);
    border-radius: 6px;
    background: linear-gradient(315deg, var(--hoverAngle) 0%, var(--hoverAngle) 10%, transparent 10%, transparent 100%);
    transition: border-radius 0.3s ease, color 0.3s ease, --hoverAngle 0.3s ease;
}

.wp-site-blocks .wp-block-file__button:hover::before {
  color: var(--wp--preset--color--red);
  border-radius: 0px;
  border-color: var(--wp--preset--color--red);
  --hoverAngle:var(--wp--preset--color--red);
}

/* //////////////////// RECIPES QUERY ////////////////////// */

.recipes-query li span {
  opacity: 0 !important;
  transition: all 0.3s ease;
}

.recipes-query li:hover span {
  opacity: 1 !important;
}

.recipes-query li h2.wp-block-post-title a {
  transition: opacity 0.2s ease;
  opacity: 0;
  color: var(--wp--preset--color--white) !important;
  position: absolute;
  width: 90%;
  height: 90%;
  padding: 5%;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
}

.recipes-query li:hover h2.wp-block-post-title a {
  opacity: 1;
}

.wp-site-blocks .recipes-query .wp-block-cover__inner-container {
  height: 100%;
  display: flex;
  position: absolute;
  align-items: center;
}

/* //////////////////// FORMS ////////////////////// */

input, textarea {
    font-size: var(--wp--preset--font-size--medium);
    border: 0;
    box-shadow: inset 0px -2px 0px var(--wp--preset--color--black);
    background: transparent;
    padding: 0.5em;
    transition: box-shadow 0.2s ease;
}

input[type="checkbox"] {
  appearance: none;
  margin: 0;
  width: 0.9em;
  height: 0.9em;
  border: 2px solid var(--wp--preset--color--black);
  display: inline-grid;
  place-content: center;
  box-shadow: none;
  transform: translateY(-0.075em);
}

input[type="checkbox"]::before {
  content: "";
  width: 0.72em;
  height: 0.72em;
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em var(--wp--preset--color--red);
}

input[type="checkbox"]:checked::before {
  transform: scale(1);
}

input[type="checkbox"]:focus {
  border: 2px solid var(--wp--preset--color--red);
  box-shadow: none;
}

input[type="radio"] {
  appearance: none;
  margin: 0;
  width: 0.9em;
  height: 0.9em;
  border: 2px solid var(--wp--preset--color--black);
  border-radius: 50%;
  display: inline-grid;
  place-content: center;
  box-shadow: none;
  transform: translateY(-0.075em);
}

input[type="radio"]::before {
  content: "";
  width: 0.72em;
  height: 0.72em;
  border-radius: 50%;
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em var(--wp--preset--color--red);
}

input[type="radio"]:checked::before {
  transform: scale(1);
}

input[type="radio"]:focus {
  border: 2px solid var(--wp--preset--color--red);
  box-shadow: none;
}

input[type="checkbox"],
input[type="radio"],
input[type="range"],
input[type="date"],
progress {
  accent-color: var(--wp--preset--color--red);
}

select {
    font-size: var(--wp--preset--font-size--medium);
    border: 0;
    box-shadow: inset 0px -2px 0px var(--wp--preset--color--black);
    background: transparent;
    padding: 0.5em;
    transition: box-shadow 0.2s ease;
}

option:checked, option:hover, option:focus, option:active {
  background-color: var(--wp--preset--color--red);
  color: var(--wp--preset--color--white);
}

input:focus, textarea:focus, select:focus {
    outline: 0;
    box-shadow: inset 0px -3px 0px var(--wp--preset--color--red);
}

/* //////////////////// PRODUCTS/FILTERS ////////////////////// */

ul.columns-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wp-block-post-template {
    box-sizing: border-box;
    list-style: none;
    margin-bottom: 0;
    margin-top: 0;
    max-width: 100%;
    padding: 0;
}

.wp-block-post.products {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.wp-block-post-featured-image {
    position: relative;
    overflow: hidden;
}

.wp-block-post-featured-image a {
    display: block;
    height: 100%;
}

.wp-block-post-featured-image a img {
  transform: scale(1);
  transition: transform 0.4s ease;
}

.wp-block-post-featured-image a:hover img {
    transform: scale(1.03);
}

.wp-block-post-featured-image :where(img) {
    box-sizing: border-box;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
    width: 100%;
}

.wp-block-read-more {
    display: block;
    width: fit-content;
}

.loading-spinner {
  text-align: center;
  margin: 0px auto;
  position: relative;
  width: 150px;
  height: 150px;
  background-image: url('/wp-content/themes/bull/assets/images/smoke.gif'), url('/wp-content/themes/bull/assets/images/bull.svg');
  background-repeat: no-repeat;
  background-size: 110px, 100px;
  background-position: -4px 20px, center center;
  transform: scale(1.5);
  opacity: 1;
  transition: all 0.2s ease;
}

@starting-style {
 .loading-spinner {
    opacity: 0;
    transform: scale(0);
  }
}

.filter-form {
  display: grid;
  gap: 1em;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 20px;
}

.filters-label {
  text-transform: uppercase;
  font-weight: bold;
  font-size: 0.8em;
  margin-bottom: 0;
}

.filter-form select[data-filter-key="custitem_bullbbq_filter_product_type"] {
  order: -1;
}

.filter-form option[value=""][disabled] {
  display: none;
}

#active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
}

.filter-tag {
  background: transparent;
  border: 1px solid var(--wp--preset--color--light-gray);
  padding: 8px;
  transition: all 0.2s ease;
}

.filter-tag:hover {
  cursor: pointer;
  background-color: var(--wp--preset--color--light-gray);
}

.no-results {
  border: 1px solid var(--wp--preset--color--red);
  text-align: center;
}

.filter-load-more {
  justify-content: center;
  margin: 20px 0px;
}

/* //////////////////// ASL Overrides ////////////////////// */

#asl-storelocator.asl-cont.asl-template-0 .asl-wrapper .Filter_section {
  background: transparent;
}

#asl-storelocator.asl-cont .asl-wrapper .asl-ddl-filters .asl-filter-cntrl .btn-group button.adropdown-toggle,
#asl-storelocator.asl-cont .asl-wrapper .Filter_section .search_filter .sl-search-group .asl-search-address {
  border: 0;
  border-radius: 0;
  box-shadow: 0px 2px 0px var(--wp--preset--color--black);
  transition: box-shadow 0.2s ease;
  color: var(--wp--preset--color--black) !important;
  font-size: var(--wp--preset--font-size--small) !important;
}

#asl-storelocator.asl-cont .asl-wrapper .asl-ddl-filters .asl-filter-cntrl .btn-group button.adropdown-toggle span {
  color: var(--wp--preset--color--black) !important;
  font-size: var(--wp--preset--font-size--small) !important;
}

#asl-storelocator.asl-cont .asl-wrapper .Filter_section .search_filter .sl-search-group .asl-search-address::placeholder {
  color: var(--wp--preset--color--dark-gray) !important;
  font-size: var(--wp--preset--font-size--small) !important;
}

#asl-storelocator.asl-cont .asl-wrapper .asl-ddl-filters .asl-filter-cntrl .btn-group button.adropdown-toggle:focus {
  border: 0;
  border-radius: 0;
  box-shadow: 0px 2px 0px var(--wp--preset--color--red);
}

.asl-cont#asl-storelocator .sl-main-row {
  border: 1px solid var(--wp--preset--color--red);
  box-shadow: 10px 10px 0px var(--wp--preset--color--red);
}

#asl-storelocator.asl-cont.asl-template-0 .asl-wrapper .Filter_section .search_filter .sl-search-group .span-geo {
  background-color: transparent;
}

#asl-storelocator.asl-cont.asl-template-0 .asl-wrapper .Filter_section .search_filter .sl-search-group .span-geo i {
  color: var(--wp--preset--color--black);
}

#asl-storelocator.asl-cont.asl-template-0 .asl-wrapper .Filter_section .search_filter label,
#asl-storelocator.asl-cont .asl-wrapper .Filter_section .asl-advance-filters .asl-filter-cntrl .asl-cntrl-lbl {
  color: var(--wp--preset--color--red);
  text-transform: uppercase;
  font-size: var(--wp--preset--font-size--small) !important;
  font-weight: 700;
  line-height: inherit !important;
}

#asl-storelocator.asl-cont .sl-main-cont .asl-panel { border: 0; }
#asl-storelocator.asl-cont .sl-main-cont .asl-map-canv { height: 600px; }
#asl-storelocator.asl-cont.asl-template-0 .asl-wrapper .sl-main-cont .asl-panel-inner .Num_of_store { display: none; }

#asl-storelocator.asl-cont .sl-main-cont .asl-panel-inner .sl-main-cont-box ul.sl-list li.sl-item .sl-addr-sec .addr-loc .sl-logo-cont .sl-logo-box img { max-height: 100%; aspect-ratio: 16/9; object-fit: cover; }
#asl-storelocator.asl-cont .sl-main-cont .asl-panel-inner .sl-main-cont-box ul.sl-list li.sl-item .sl-addr-sec .addr-loc .sl-logo-cont:before { display: none; }
#asl-storelocator.asl-cont .sl-main-cont .asl-panel-inner .sl-main-cont-box ul.sl-list li.sl-item .sl-addr-sec .addr-loc .sl-logo-cont { margin-bottom: 10px; }
#asl-storelocator.asl-cont .sl-main-cont .asl-panel-inner .sl-main-cont-box ul.sl-list li.sl-item .sl-addr-sec .addr-loc .sl-logo-cont .sl-logo-box { border-radius: 0px; padding: 0px; }

#asl-storelocator.asl-cont *::-webkit-scrollbar {width: 10px; }
#asl-storelocator.asl-cont *::-webkit-scrollbar-track {border-radius: 0px; background-color: #e3e3e3; }
#asl-storelocator.asl-cont *::-webkit-scrollbar-thumb {background: var(--wp--preset--color--dark-gray) !important; border-radius: 0px; }
#asl-storelocator.asl-cont *::-webkit-scrollbar-thumb:hover {background: #eee; }

#asl-storelocator.asl-cont a:hover {
    transition: all 0.2s ease-out;
}

#asl-storelocator.asl-cont .infoBox:has(.image_map_popup) > img {
    filter: invert(1);
}

.sl-addr-list-title { text-transform: uppercase; }

/* Hide search bar for Distributors view */
.asl-distributors #asl-storelocator.asl-p-cont .Filter_section,
.asl-distributors #asl-storelocator.asl-cont .Filter_section,
.asl-distributors #asl-storelocator.asl-cont .sl-main-row .asl-panel .search_filter,
.asl-distributors #asl-storelocator.asl-cont.asl-template-3 .sl-filter-sec { display: none !important; }

.wp-block-query-pagination { gap: 10px; }

.wp-block-query-pagination .page-numbers { 
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;          
  height: 2.5rem;         
  background-color: var(--wp--preset--color--black);
  color: var(--wp--preset--color--white);
  border-radius: 0;
  text-decoration: none;
  font-weight: 600;
  transition: background-color 0.2s, color 0.2s, box-shadow 0.2s;
}

.wp-block-query-pagination .wp-block-query-pagination-next,
.wp-block-query-pagination .wp-block-query-pagination-previous {
   width: 0px;
   height: 0px;
   border-style: solid;
   transform: rotate(0deg);
   text-indent: -9999px;
   transition: border-color 0.2s;
}

.wp-block-query-pagination .wp-block-query-pagination-next {
   border-width: 12.5px 0 12.5px 18px;
   border-color: transparent transparent transparent var(--wp--preset--color--black);
}

.wp-block-query-pagination .wp-block-query-pagination-previous {
   border-width: 12.5px 18px 12.5px 0;
   border-color: transparent var(--wp--preset--color--black) transparent transparent;
}

.wp-block-query-pagination .wp-block-query-pagination-next:hover {
  border-color: transparent transparent transparent var(--wp--preset--color--red);
}

.wp-block-query-pagination .wp-block-query-pagination-previous:hover {
  border-color: transparent var(--wp--preset--color--red) transparent transparent;
}


/* Active/Current Page */
.wp-block-query-pagination-numbers .page-numbers.current {
  background-color: var(--wp--preset--color--red);
  color: var(--wp--preset--color--white);
}

/* Hover State */
.wp-block-query-pagination-numbers .page-numbers:not(.current):hover {
  background-color: var(--wp--preset--color--dark-gray);
  color: var(--wp--preset--color--white);
  box-shadow:  inset 0px -5px var(--wp--preset--color--red);
}

/* //////////////////// MEDIA QUERIES ////////////////////// */

@media (max-width: 1120px) {
  .footer-sections {
    flex-direction: column;
  }

  .footer-logo-col {
    flex-basis: 35% !important;
  }

  .footer-sections-col {
    flex-basis: 65% !important;
  }
}

@media (max-width: 998px) {

  .wp-container-core-group-is-layout-fec85c7a {
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    padding-top: 300px !important;
  }

  .hero-block {
    width: 100%;
  }

  .is-styled-content .is-style-left-angle,
  .is-styled-content .is-style-right-angle,
  .is-styled-content .is-style-left-angle-right-angle {
    max-width: 100%;
  }

  .is-styled-content.has-background {
    padding-top: 50% !important;
    background-position: top center !important;
    background-repeat: no-repeat;
    background-size: contain !important;
  }

  h1 br {
    display: none;
  }

}

@media only screen and (max-width: 898px) {
  ul.columns-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media only screen and (max-width: 781px) {

  .is-style-left-angle:before,
  .is-style-right-angle:before,
  .is-style-left-angle-right-angle:before,
  .is-style-left-angle:after,
  .is-style-right-angle:after,
  .is-style-left-angle-right-angle:after {
    display: none;
  }

  .is-style-mobile-spacer {
    display: block;
  }

	/* -- Columns -- */

	.is-style-columns-reverse {
		flex-direction: column-reverse;
	}

  .is-style-columns-reverse .has-text-align-right {
    text-align: left;
  }

  .is-style-columns-reverse .is-content-justification-right {
    justify-content: flex-start;
  }

  .is-styled-content .is-style-left-angle,
  .is-styled-content .is-style-right-angle,
  .is-styled-content .is-style-left-angle-right-angle {
    overflow: hidden;
    padding: var(--wp--preset--spacing--small) !important;
  }

  .site-footer .wp-block-columns {
    text-align: center;
  }

  .footer-logo-col .wp-block-group {
    justify-content: center;
    flex-direction: column;
  }

  .footer-sections-col .wp-block-social-links {
    justify-content: center;
  }

  .filter-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}

@media only screen and (max-width: 460px) {

  .wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid {
    grid-template-columns: 1fr;
  }

  .filter-form {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

}

/* Styles intended only for the front.*/
html {
	scroll-behavior: smooth;
}

@media screen and (prefers-reduced-motion: reduce) {

	html {
		scroll-behavior: auto;
	}
}

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}
