/*
Theme Name:   Divi Child Theme
Author:       6P Marketing
Author URI:   https://6pmarketing.com/
Template:     Divi
Version:      1.0.0
*/

@import "modified.css";

:root {
  --ll-green-lightest: #bfd1c7;
  --ll-green-light: #81a399;
  --ll-green: #12713e;
  --ll-green-dark: #23522e;
  --horse-dark: #31211b;
  --horse-primary: #8e655e;
  --horse-light: #ddd1cf;
  --cattle-dark: #803f23;
  --cattle-primary: #994b2a;
  --cattle-light: #fdde8a;
  --sheep-dark: #406a77;
  --sheep-primary: #4d8090;
  --sheep-light: #d3effc;
  --heading-font: 'Sofia Condensed',Helvetica,Arial,Lucida,sans-serif;
  --body-font: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
}

/* fixes issues when the fixed header when using the Divi Builder */
#theme-builder-area--et_header_layout .theme-builder-area-content--et_header_layout > div {
  width: 100% !important;
  transform: translate(0) !important;
}

/* ========================================= */
/* --- Universal =========================== */
/* ========================================= */

#page-container {
  overflow-x: hidden !important;
}

.grecaptcha-badge,
.grecaptcha-logo {
	z-index: 10000;
}

:focus-visible {
	outline: -webkit-focus-ring-color auto 1px;
}

/* --- row reordering --- */
@media (max-width: 980px) {
	.reorder-row,
	.reorder-section .et_pb_row {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	}
		.reorder-row .reorder-item {
			margin-bottom: 30px !important;
		}
			.reorder-row .reorder-item.reorder-item-last {
				margin-bottom: 0 !important
			}
	.reorder-item.first {
		-webkit-box-ordinal-group: 2;
			-ms-flex-order: 1;
				order: 1;
	}
	.reorder-item.second {
		-webkit-box-ordinal-group: 3;
			-ms-flex-order: 2;
				order: 2;
	}
}

/* embedded tools */
.embed-content iframe {
	display: flex;
}

/* ========================================= */
/* --- Header ============================== */
/* ========================================= */

/* --- Max Mega Menu ======================= */

/* forces the sub menus to as high on the page as possible */
.mega-sub-menu {
  z-index: 99999 !important;
}

/* ================================================== */
/* --- Universal Buttons (not Woocommerce) ========== */
/* ================================================== */

/* >>>>>>>>>>>>>>> BS - These classes seem to specific to have an impact ????? Where  are these classes used ????? */
/*** General***/
/* .et_pb_button_module_wrapper.et_pb_button_12_wrapper.et_pb_module {
  margin-bottom: 0 !important;
} */

/*** Handlle the buttons size ****/
/* .custom-button-size {
  min-width: 150px;
} */


/* ========================================= */
/* --- Home page's Map ======== */
/* ========================================= */
.geo-background {
  background-image: url('/wp-content/uploads/2025/07/Canada-800x500-1.jpg')!important;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 35% auto; /* Default: desktop, 35% width */
}

/* Tablet view (up to 980px) */
@media (max-width: 980px) {
  .geo-background {
    background-size: 80% auto!important;
  }
}

/* Mobile view (up to 767px) */
@media (max-width: 767px) {
  .geo-background {
    background-size: 80% auto!important;
  }
}


div.et_pb_section.et_pb_section_4.geo-background.canada {
  background-image: url('/wp-content/uploads/2025/07/Canada-800x500-1.jpg') !important;
  background-size: 35% auto; /* Default: desktop, 35% width */
  background-position: center;
  background-repeat: no-repeat;
}

div.et_pb_section.et_pb_section_4.geo-background.usa {
  background-image: url('/wp-content/uploads/2025/07/MAP_USA@2x.jpg') !important;
  background-size: 35% auto; /* Default: desktop, 35% width */
  background-position: center;
  background-repeat: no-repeat;
}

/* ========================================= */
/* --- Request a Quote Page ============================== */
/* ========================================= */
h3.form-row.form-row-wide {
	color: #23522e !important;
}

/* ========================================= */
/* --- Divi Woo Products Module ============================== */
/* ========================================= */
p.woocommerce-result-count {
  font-size: 18px;
  font-family: Lato;
  color: #585858!important;
}
  
  
  .woocommerce .woocommerce-ordering select {
    vertical-align: top;
    font-family: var(--heading-font);
    font-size: 20px;
    letter-spacing: 1.4px;
    text-transform: uppercase !important;
    border: 1px solid #707070;
    padding: 15px;
  }
 
  .woocommerce .woocommerce-ordering {
    margin: 0 0 5em;
}

.woocommerce .woocommerce-result-count {
    margin: 1em 0 0 0;
}

.woocommerce .woocommerce-ordering select {
    background-color: #ffffff !important;
}

/* ========================================= */
/* --- Woocommerce - Pagination ============ */
/* ========================================= */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    background-color: #ffffff;
    color: var(--ll-green-dark);
    padding: 0 10px; /* 0 top/bottom, 10px left/right */
    font-size: 24px;
    font-family: var(--heading-font);
    border-radius: 0px;
    font-weight: 800;
    border-width: 0; /* Remove all borders */
    border:none;
    border-right: 2px solid #CBC8C8; /* Gray right border */
}
  /* Remove right border on the last pagination item */
  .woocommerce nav.woocommerce-pagination ul li:last-child a,
  .woocommerce nav.woocommerce-pagination ul li:last-child span {
      border-right: none;
  }

  .woocommerce nav.woocommerce-pagination ul li a:hover,
  .woocommerce nav.woocommerce-pagination ul li span.current {
      color: #000000;
      background-color: #ffffff;
  }

  .woocommerce nav.woocommerce-pagination ul, 
  .woocommerce nav.woocommerce-pagination ul li {
      border: none!important;
  }

/* ========================================= */
/* --- Custom Icons ============================== */
/* ========================================= */
/* >>>>>>>>>>>>>>> BS - Curious what this CSS was meant for ????? - Assume was for the old homepage layout and can be removed */
/*** Farm direct Delivery icons ***/
/* .icon-text-container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 20px;
  width: 100%;
  box-sizing: border-box;
  flex-wrap: nowrap;
  padding: 10px 0;
}

.icon-text-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--heading-font);
  font-size: 23px;
  color: #23522E;
  font-weight: 800; 
  text-transform: uppercase;
}

.icon-text-item img {
  width: 40px;
  height: 40px;
}

@media (max-width: 980px) {
  .icon-text-container {
    flex-direction: column;
    align-items: center;
    gap: 15px;
  }

  .icon-text-item:first-child {
    width: 100%;
    justify-content: center;
  }


  .icon-text-item:nth-child(n+2) {
    width: auto;
  }


  .icon-text-container {
    flex-wrap: wrap;
  }

  .icon-text-item:nth-child(2),
  .icon-text-item:nth-child(3),
  .icon-text-item:nth-child(4) {
    flex: 1;
    min-width: 150px; 
  }


  .icon-text-container > div:nth-child(n+2) {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 15px;
    width: 100%;
  }
} */

/* ========================================= */
/* --- Ambassadors ================================ */
/* ========================================= */
.reset-filters.et_pb_button {
  margin-top: -45px!important;
}

/* ========================================= */
/* --- Blog ================================ */
/* ========================================= */
.blog-category-list .dmach-postmeta-item-content {
    border-left: 1px solid #808285;
    padding: 0 5px;
}
  .blog-category-list .et_pb_de_mach_post_meta_item:first-of-type .dmach-postmeta-item-content {
      border-left: none;
      padding-left: 0;
  }

/* News Grid - Thumbnail */
.news-image .grid-item-cont .et_pb_de_mach_thumbnail .et_pb_module_inner, 
.grid-item-cont span.et_shop_image {
	padding-top: 56.25%;
	display: block;
}    
  .news-image .grid-item-cont .et_pb_de_mach_thumbnail img, 
  .grid-item-cont span.et_shop_image img{
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    object-fit: cover;
  }

/* --- Pagination ========================== */
.pagination-listing-layout .divi-filter-pagination {
	width: 100%;
}
	/* allow for the pagination to be more responsive on smaller scales */
	.pagination-listing-layout .divi-filter-pagination ul.page-numbers {
		flex-wrap: wrap;
	}

.pagination-listing-layout .divi-filter-pagination ul.page-numbers li {
	border: none;
	font-style: normal;
	text-align: center;
	min-width: 40px;
    /* margin: 3px; */
}

	.pagination-listing-layout .divi-filter-pagination ul.page-numbers li a,
	.pagination-listing-layout .divi-filter-pagination ul.page-numbers li span {
    	background-color: #ffffff;
    	color: var(--ll-green-dark);
    	padding: 0 10px;
    	font-size: 24px;
    	font-family: var(--heading-font);
    	font-weight: 800;
    	border-radius: 0px;
    	border-width: 0;
    	border: none;
    	border-right: 2px solid var(--ll-green-lightest);
      transition: 0.3s ease-in-out;
	}
		.pagination-listing-layout .divi-filter-pagination ul.page-numbers li a:hover,
		.pagination-listing-layout .divi-filter-pagination ul.page-numbers li a:focus {
    		color: var(--ll-green);
    		background-color: #ffffff;
		}

	/* active pagination item */
	.pagination-listing-layout .divi-filter-pagination ul.page-numbers li span.current {
		border-right: 2px solid var(--ll-green-lightest); /* Gray right border */
    color: var(--ll-green);
	}

	/* Remove right border on the last pagination item */
	.pagination-listing-layout .divi-filter-pagination ul.page-numbers li:last-child a,
	.pagination-listing-layout .divi-filter-pagination ul.page-numbers li:last-child span {
    	border-right: none;
	}

/* ========================================= */
/* --- Team Members ======================== */
/* ========================================= */
/* btn overlay to display popups */
.bio-overlay-btn {
  .et_pb_module_inner {
    height: 100%;

    a {
      height: 100%
    }
  }
}

.et_pb_column.team-member-details {
  .learn-more-btn {

  }
}


/* --- Popup =============================== */
@media (max-width: 980px) {
	.bio-popup-role .dmach-acf-item-content {
		justify-content: center;
	}
}

.team-member-item .team-member-title .dmach-acf-item-content {
	display: block;
}

/* social media buttons */
body #page-container .et_pb_section .team-member-item .social-icon .et_pb_button {
	display: inline-block;
}
	body #page-container .et_pb_section .team-member-item .social-icon .et_pb_button:before {
		font-size: 24px !important;
		position: initial;
		line-height: 1em;
		margin: 0;
	}
		body #page-container .et_pb_section .team-member-item .social-icon .et_pb_button:hover:before {
			margin: 0;
		}

/* ========================================= */
/* --- Footer ============================== */
/* ========================================= */
.et_pb_widget{
		margin-bottom: 0 !important;
	}

.footer-menu-content {
		margin-bottom: 0 !important;
	}

.footer-menu-content .footer-sidebar .fwidget {
	margin: 0 !important;
}

/* ========================================= */
/* ========================================= */
/* --- WooCommerce ========================= */
/* ========================================= */
/* ========================================= */

/* ========================================= */
/* --- Shop Page =============== */
/* ========================================= */
.show-more.initialized {
   background: #12713e;
  font-family: 'Lato','Sofia Condensed','Helvetica','Arial','Lucida',sans-serif;
  color: #ffffff !important;
  font-size: 93.75%;
  text-shadow: none;
  line-height: 1.5;
  font-weight: normal;
  font-style: normal;
  text-decoration: none;
  text-align: center;
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: uppercase;
  font-weight: 700;
  opacity: 1;
  padding: 20px 20px 20px 20px;
  box-shadow: none;
  border: 0px solid RGBA(0,0,0,1);
  border-radius: 0px;
  text-align: center;
  width: 100%;
  min-width: 120px;
  cursor: pointer;
  transition: 300ms ease-in-out;
  display: block;

}

.show-more.initialized:hover {
background: #23522e;
}

.yith-wcan-filters .yith-wcan-filter .filter-items.level-0 {
  margin-bottom: 30px !important;
}

/* ========================================= */
/* --- Shop Listing Template =============== */
/* ========================================= */

/* --- Filters ============================= */
.et-db #et-boc .et-l,
body {
  .shop-filter-layout {

    /* titles */
    h4.filter-title {
      color: var(--ll-green-dark);
      font-family: var(--heading-font);
      font-weight: 800;
      text-transform: uppercase;
      font-size: 35px;
      line-height: 1.2em;
    }
  }
}
/* filter group */
.shop-filter-layout .filter-items {
  padding: 0 0 5px 15px;
}

/* individual filters */
.shop-filter-layout .filter-item.checkbox {
  label {
    display: flex;
    margin: 10px 0;

    input[type="checkbox"] {
      cursor: pointer;
      position: relative;
      border: 2px solid #CBC8C8 !important;
      border-radius: 0px!important;
      background-color: #fff !important;
      appearance: none;
        -webkit-appearance: none;
          -moz-appearance: none;
      margin: 0 10px 0 0;
      height: 30px!important;
      width: 32px!important;
      vertical-align: middle !important;

      /* when selected */
      &:checked {
        background-color: var(--ll-green) !important;
        border-color: var(--ll-green) !important;

        /* visual checkmark */
        &::after {
          content: "";
          position: absolute;
          top: 3px;
          left: 9px;
          width: 5px;
          height: 12px;
          border: solid white;
          border-width: 0 4px 4px 0;
          transform: rotate(45deg);
        }
      }
    }

    /* adjusted the labels for each field */
    & > a {
      color: #585858 !important;
      font-family: var(--heading-font);
      font-weight: 700 !important;
      font-size: 24px !important;
      line-height: 1.2em;
      width: calc(100% - 30px);
    }
  }
}

/* --- Reset Filters button */
.shop-filter-layout .yith-wcan-reset-filters {
  background: var(--ll-green);
  cursor: pointer;
	color: #ffffff !important;
  border-width: 0px !important;
  font-size: 15px;
  font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
	padding: 20px !important;
  transition: 300ms ease-in-out;

  &:hover {
    color: #ffffff !important;
    background: var(--ll-green-dark) !important;
  }
}


/* ========================================= */
/* --- Ambassadors Page ================= */
/* ========================================= */


/*** Filters ****/
@media (max-width: 1400px) and (min-width: 768px) {
  .et_pb_de_mach_search_posts_item_0.inline_checkboxes .divi-filter-item > * {
    height: 80px !important;
  }
	
	.radio-label {
  	display: flex !important;
  	justify-content: center;
  	align-items: center;
	}
	
}


@media (max-width: 767px) {
  .et_pb_contact_field_options_list.divi-filter-item.divi-checkboxsingle {
    display: block !important;
  }

  .inline_checkboxes .divi-filter-item > * {
    margin-right: 0 !important;
  }
	
	.inline_checkboxes .et_pb_contact_field_radio {
    display: block !important;
  }
	
	.et_pb_de_mach_search_posts_item_0.inline_checkboxes .divi-filter-item > * {
    height: auto !important;
  }
}


.divi-radio-buttons .et_pb_contact_field_radio label {
	text-align: center;
}

/* ========================================= */
/* --- Ambassadors Grid on Home Pageb======= */
/* ========================================= */

.ambassador-grid span.et_shop_image {
  padding-top: 100%!important;
  display: block!important;
}


/* ========================================= */
/* --- Product Description ================= */
/* ========================================= */
.et_pb_wc_description_0_tb_body h4 {
	margin-bottom: 15px;
}

.et_pb_wc_add_to_cart_0_tb_body.et_pb_module .et_pb_module_inner form.cart .variations td select {
	border-radius: 0px;
}

/* ========================================= */
/* --- YITH Wishlist ======================= */
/* ========================================= */

/* Modify the location of the add to wishlist functionality */
.yith-wcwl-add-to-wishlist {
  position: absolute;
  top: 0;
  right: 0;

  .add_to_wishlist {
    position: absolute;
    top: 0;
    right: 0;
  }

  .feedback {
    font-size: 0;
    gap: 0;
  }

  svg.yith-wcwl-icon-svg,
  .add_to_wishlist img {
    margin: 0 !important;
    width: 48px;
  }
}



/* .wishlist-title-container {
  display: none;
} */

.woocommerce table.shop_table {font-size: 18px;
  font-family: Lato;}

.wishlist_table .product-add-to-cart a.button {
  padding: 20px !important;
  color: #fff;
}

.wishlist_table .product-add-to-cart a.button:hover {
  	background: #23522e !important;
	background-color: #23522e !important;
  	color: #fff !important;
  	padding: 20px !important;
	border: none;
}


/* ========================================= */
/* --- YITH Reviews ======================== */
/* ========================================= */
.submit-button.create-action {
  font-family: Lato, sans-serif !important;
  font-size: 15px !important;
  font-weight: bolder !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  text-align: center;
  transition: 300ms ease-in-out;
  padding: 20px !important;
  border-radius: 0!important;
}

.yith-ywar-reviews-list {
  display: none!important;
}


/* ========================================= */
/* --- Product Details Template ============ */
/* ========================================= */
/*** Product Page ****/
/** Add ons dropdown on the product page **/
.et_pb_wc_add_to_cart form.cart .variations td.value span::after {
	display:none;
}

/*** Accordions ***/
/* Hide the default accordion icon */
.custom-accordion .et_pb_toggle_title:before {
  display: none;
}

/* Add custom icon when accordion is closed */
.custom-accordion .et_pb_toggle_title::after {
  font-family: 'ETmodules'; /* Divi icon font */
  content: "\3b"; /* Closed icon */
  position: absolute;
  right: 50px;
  font-size: 32px;
  color: #fff;
}

/* Change icon when accordion is open */
.custom-accordion .et_pb_toggle.et_pb_toggle_open .et_pb_toggle_title::after {
  content: "\3a"; /* Open icon */
}

/*** Product sliders ***/
.fme-primary-arrow {
width: 45px !important;
  height: 45px !important;
}


.splide__arrow svg {
  width: 32px !important;
  height: 32px !important;
}


.fme_pgifw_top_right  {
  padding: 9px 12px!important;
  border-radius: 0;
  width: 45px;
  height: 45px;
}

/* ======================================================= */
/* --- WooCommerce Buttons*/
.woocommerce a.button.alt, .woocommerce.et-db #et-boc .et-l a.button.alt, .woocommerce-page a.button.alt, .woocommerce-page.et-db #et-boc .et-l a.button.alt, .woocommerce button.button.alt, .woocommerce.et-db #et-boc .et-l button.button.alt, .woocommerce button.button.alt.disabled, .woocommerce.et-db #et-boc .et-l button.button.alt.disabled, .woocommerce-page button.button.alt, .woocommerce-page.et-db #et-boc .et-l button.button.alt, .woocommerce-page button.button.alt.disabled, .woocommerce-page.et-db #et-boc .et-l button.button.alt.disabled, .woocommerce input.button.alt, .woocommerce.et-db #et-boc .et-l input.button.alt, .woocommerce-page input.button.alt, .woocommerce-page.et-db #et-boc .et-l input.button.alt, .woocommerce #respond input#submit.alt, .woocommerce-page #respond input#submit.alt, .woocommerce #content input.button.alt, .woocommerce #content.et-db #et-boc .et-l input.button.alt, .woocommerce-page #content input.button.alt, .woocommerce-page #content.et-db #et-boc .et-l input.button.alt, .woocommerce a.button, .woocommerce.et-db #et-boc .et-l a.button, .woocommerce-page a.button, .woocommerce-page.et-db #et-boc .et-l a.button, .woocommerce button.button, .woocommerce.et-db #et-boc .et-l button.button, .woocommerce-page button.button, .woocommerce-page.et-db #et-boc .et-l button.button, .woocommerce input.button, .woocommerce.et-db #et-boc .et-l input.button, .woocommerce-page input.button, .woocommerce-page.et-db #et-boc .et-l input.button, .woocommerce #respond input#submit, .woocommerce-page #respond input#submit, .woocommerce #content input.button, .woocommerce #content.et-db #et-boc .et-l input.button, .woocommerce-page #content input.button, .woocommerce-page #content.et-db #et-boc .et-l input.button, .woocommerce-message a.button.wc-forward {
  cursor: pointer !important;
  background-color: var(--ll-green) !important;
  border: none !important;
  color: #fff !important;
  font-family: Lato, sans-serif !important;
  font-size: 15px !important;
  font-weight: bolder !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  text-align: center;
  transition: 300ms ease-in-out;
  padding: 20px !important;
  /* width: 100%; */
  min-width: 120px;

  /* hides any icons */
  &::after {
    display: none !important;
  }

  &:hover {
    background-color: var(--ll-green-dark) !important;
    color: #fff !important;
    padding: 20px !important;
    border: none !important;
  }
}

/*** Specifi WooCommerce buttons styles ***/
button.woocommerce-Button.woocommerce-button.button.woocommerce-form-register__submit {
    margin-top: 10px;
}


/*** other WooCommerce styles */
button.woocommerce-Button.woocommerce-button.button.woocommerce-form-register__submit {
    margin-top: 10px;
}


/* Styles for WooCommerce form fields (including login and registration) */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-account .woocommerce-Input,
.woocommerce-account .woocommerce-Button,
.login input.input,
.register input.input,
#customer_login form input.input-text,
#customer_login form textarea,
#customer_login form select,
#customer_register form input.input-text,
#customer_register form textarea,
#customer_register form select {
  background-color: #fff;
  border: 1px solid #bbb;
  padding: 5px 4px;
  color: #4e4e4e;
  font-size: 18px;
}

/* Ensure consistency with form labels */
.woocommerce form .form-row label,
#customer_login form label,
#customer_register form label {
  color: #4e4e4e;
  font-size: 18px;
}

/* General styles for WooCommerce dashboard navigation <li> elements */
nav.woocommerce-MyAccount-navigation ul li {
  border-radius: 0 !important;
  font-family: Lato, sans-serif !important;
  font-size: 22px !important;
  padding: 20px !important;
  background: #ffffff !important; /* Inactive background */
}

/* Style for active item */
nav.woocommerce-MyAccount-navigation ul li.is-active {
  background: #12713e !important;
}


/* Ensure the link inside <li> inherits styles */
.woocommerce-MyAccount-navigation ul li a,
nav.woocommerce-MyAccount-navigation ul li a {
  text-decoration: none !important;
  display: block !important;
}

a.woocommerce-MyAccount-navigation-link_a i.fa {
  color: #12713e;
}

/* ========================================= */
/* --- Side Cart =========================== */
/* ========================================= */
.xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn, .xoo-wsc-container .xoo-wsc-btn {
	font-size: 15px;
    font-family: var(--body-font);
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

/* modify cart dot to show more products total */
span.xoo-wsc-sc-count {
  border-radius: 10px;
  text-align: center;
  font-size: 12px;
  font-family: var(--body-font);
  line-height: 16px;
  min-width: 18px;
  width: auto;
}



