:root {
	--brand_color: #566189;
	--brand_color_inverted: #FFF;
	--background_color: #FFF;
	--text_color: #3d3d3d;
	--link_color: var(--brand_color);
}

body {
	background-color: var(--background_color);
	color: var(--text_color);
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, legend {
	font-family: Benne;
}

body, p, label, .paragraph {
	font-family: Benne;
	font-size: 18px;
}

a {
	color: var(--link_color);
}

a:hover {
	text-decoration: underline;
}

.brand {
	background-color: #566189;
	color: #FFF;
	border-color: #566189;
}

.text-brand {
	color: #566189;
}

.text-action {
	color: #566189;
}

.brand-inverted {
	background-color: #FFF;
	color: #566189;
	border-color: #FFF;
}

.action {
	background-color: #566189;
	color: #FFF;
	border-color: #566189;
}

.action-inverted {
	background-color: #FFF;
	color: #566189;
	border-color: #FFF;
}

/* SiteHeader */

.announcement_bar {
	background-color: #566189;
	color: #f8f8df;
}

.announcement_bar a {
	color: #3d3d3d;
}

.siteHeader {
	background-color: #f6f1e4;
	color: #000000;
	border-bottom-style: solid;
	border-bottom-width: 0;
	border-bottom-color: #ffffff;
}

.siteHeader__container {
	max-width: 100%;
}

/* MainNavigation */

.mainNavigation, .mobileNav {
	background-color: #f6f1e4;
}

.mainNavigation__list {
	text-align: center !important;
}

.siteHeader__container--style4 {
	text-align: center;
}

.mainNavigation__list > li > a {
	font-size: 20px;
}

/*Mobile Nav*/
.mobileNav > li > a {
	color: #000000;
	background-color: #2C5170;
}

.mobileNav > li > a:hover {
	background-color: #042948;
}

.mobileNav > li > a:focus {
	background-color: #042948;
}

	.mainNavigation__list > li > a {
		color: #000000;
		background-color: #f6f1e4;
	}
	.mainNavigation__list > li > a:hover {
		color: #566189;
		background-color: #f6f1e4;
	}

	.mobileNav > li > a {
		color: #000000;
		background-color: #f6f1e4;
	}

	.mobileNav > li > a:hover {
		color: #566189;
		background-color: #f6f1e4;
	}

	.mobileNav > li > a:focus {
		color: #566189;
		background-color: #f6f1e4;
	}

.mainNavigation__list > li > a {
	transition: all 0.2s ease-in-out;
}

/* Auxiliary Navigation (Use this for the account menu, sign up cta, cart, etc,) */

.auxiliaryMenu--block, .auxiliaryMenu__container {
	background-color: transparent;
		border-bottom: none;
	}

.auxiliaryMenu {
	max-width: 100%;
}

	.auxiliaryMenu > li > a {
		color: #000000;
	}
	.auxiliaryMenu > li > a:hover, .auxiliaryMenu > li > a:focus {
		text-decoration: underline;
	}

.order__delivery_threshold_difference, .order__delivery_threshold_difference-met {
    background-color: #1d2716;
    color: #ffffff;
}

/* OrderStatus */
.orderStatusBar {
	background-color: #1d2716;
}

.orderStatus__container {
	color: #ffffff;
}

.orderStatus__container a {
	border-bottom-color: #4f5948;
	color: #ffffff;
}

.orderStatus__container a:hover {
	border-bottom-color: #ffffff;
}

.orderStatus__mobileToggle {
	color: #ffffff;
}

.orderStatus__mobileToggle a {
	border-bottom-color: #4f5948;
	color: #ffffff;
}

.orderStatus__mobileToggle a:hover {
	border-bottom-color: #ffffff;
}

/* Logo */

.logo {
	color: #000000;
	font-size: 20px;
	padding: 18px;
}

.logo__img {
	max-height: 95px;
}

@media (max-width: 414px) {.logo {padding: 18px;}.logo__img {max-height: 75px;}}

.siteFooter {
	background-color: #1d2716;
	color: #FFF;
}

.siteFooter .tw-prose {
	--tw-prose-headings: #FFF;
	--tw-prose-body: #FFF;
	--tw-prose-p: #FFF;
	--tw-prose-a: #FFF;
	--tw-prose-bullets: #FFF;
}

.siteFooter h1, .siteFooter h2, .siteFooter h3, .siteFooter h4, .siteFooter h5, .siteFooter h6 {
	color: #FFF;
}

.siteFooter a {
	--tw-prose-a: #FFF;
	color: #FFF;
}

.siteFooter a:hover, .siteFooter a:focus {
	color: #ebebeb;
}

.siteFooter img {
	margin-left: auto;
	margin-right: auto;
}

.backToTopLink__container {
	background-color: #313b2a;
}

.backToTopLink__container a {
	color: #FFF;
}

/* Buttons */
.btn-brand, .btn-default, .btn-primary {
	background-color: #566189 !important;
	border-color: #424d75 !important;
	color: #FFF !important;
}

.btn-brand-inverted {
	background-color: #FFF;
	color: #566189;
	border: solid 1px #566189;
}

.btn-brand-inverted:hover {
	background-color: #566189;
	color: #FFF;
	border: solid 1px #566189;
}



.btn-brand:hover, .btn-default:hover, .btn-primary:hover {
		background-color: #7e89b1 !important;
	border-color: #7e89b1 !important;
		color: #FFF !important;
}

.btn-danger, .btn-action, .cta {
	background-color: #566189 !important;
	border-color: #424d75 !important;
	color: #FFF !important;
}
.btn-danger:hover, .btn-action:hover, .cta:hover {
		background-color: #7e89b1 !important;
	border-color: #7e89b1 !important;
	
	color: #FFF !important;
}

.btn-action-inverted {
	background-color: #FFF;
	color: #566189;
	border: solid 1px #566189;
}

.btn-action-inverted:hover {
	background-color: #566189;
	color: #FFF;
	border: solid 1px #566189;
}

.bullet, .confirmation__step-number {
	background-color: #566189;
	color: #FFF;
}

/* Store Menu */
.storeIndex__sideBarList--style2 {
	background-color: #f6f1e4 !important;
	border-color: #f6f1e4 !important;
	color: #000000;
}

.storeSearch__input--style2 {
	border-color: #f6f1e4 !important;
}

.storeIndex__sideBarList--style2 > li > a {
	color: #000000;
	border-color: #ece7da !important;
}

.storeIndex__sideBarList--style2 > li > a:hover {
	color: #000000;
	background-color: #ece7da !important;
}

.storeSearch__button--style2 {
	color: #000000;
}

.banner__protocols li:before {
    color: #566189
}

/*Custom Styles*/
/*FONTS*/
.h1, .h2,   h1, h2,   legend, .h3, .h4, .h5, .h6, h3, h4, h5, h6, legend {
  font-family: "Aboreto", serif;
  font-weight: 400;
  font-style: normal;
}
body, p, label, .paragraph {
  font-family: "Work Sans", sans-serif;
  font-style: normal; 
}
/*Cursive font*/
#script {
  font-family: "Dancing Script", serif!important;
  font-weight: <weight>;
  font-style: normal;
  font-size:35px;
}




/* Half page image */
#textWidget92, #textWidget103, #pageWidgetRow--92 .pageWidget__rowInnerContainer, #pageWidgetRow--103 .pageWidget__rowInnerContainer {
    margin:0px;
    padding:0px;
    max-width:2000px;
}
#half-image {
    max-width:none;
    object-fit:cover;
    object-position:center;
}
@media(max-width:768px){
    #half-image {
    width:100%;}
}
@media(min-width:769px){
    #half-image {
    max-height:645px;}
}
#textWidget103, #textWidget92 {
    min-width:100%;
    min-height:100%;
    position: relative; 
    overflow:hidden;
}
.pageWidget__slot--half-width{
    vertical-align:middle;
}
#pageWidget--91 {
    background-color:#f6f1e4!important;
}
#pageWidget--77 {
    background-color:#f6f1e4!important;
    height:100%;
    overflow: hidden;
    object-fit: cover;
}

/*Textured paper background*/
.featuredProductsWidget__products section, #featuredProductsWidget78, #featuredProductsWidget80, #featuredProductsWidget81, #textWidget84, #textWidget85, #textWidget86, .contentWidget, #textWidget92, #photoGalleryWidget--104, #pageWidget--110, #imageWidget110 {
    background-color:transparent!important;
}

:root[data-url="homepage"], #pageWidget--104, #pageWidget--110 {
    background-image: url("https://s3.amazonaws.com/grazecart/hiddrmeatsva/images/1734563178_6763556adc37f.png");
    background-repeat: repeat;
    background-size: auto;
}

/*About page badges*/
.badges-flex-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin: 0px;
    padding-bottom: 20px;
    text-align: center;
    background-color:transparent!important;
}
.badges-item {
    justify-content: space-between;
    margin: 5px;
    padding: 0 15px;
    max-width:150px;
    background-color:transparent!important;
}

/* Product grid -> List */
    :root[data-url="homepage"] .featuredProductsWidget .lg\:tw-grid-cols-3 {
        display: grid !important;
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important; /* Single column */
    }
    
@media (min-width:1022px){
    /* Change flex-direction of flex elements */
    :root[data-url="homepage"] .featuredProductsWidget .tw-flex-col {
        flex-direction: row !important; /* Row layout instead of column */
    }
    
    /* Adjust the width and height of the first child div */
    :root[data-url="homepage"] .featuredProductsWidget section > div:first-child {
        width: 300px !important;
        height:100%;
    }
    :root[data-url="homepage"] .featuredProductsWidget img {
        border-radius:0;
    }
    
    /* Target the inner content div */
    :root[data-url="homepage"] .featuredProductsWidget .tw-relative .tw-flex-1{
        width: 500px !important;
        padding-left: 1rem !important;
        padding-right: 1rem !important;
        margin-top: 1rem !important;
    }
    
    :root[data-url="homepage"] .featuredProductsWidget .productListing__addToCart--grid{
        margin-top: 1.5rem !important; /* Ensure proper spacing */
        margin-right: 1rem !important;
    }
}
    /* Target the shadow property specifically */
    :root[data-url="homepage"] .featuredProductsWidget .tw-shadow-xl{
        box-shadow:none !important;
        border-width: 8px;
        border-style: double!important;
        Border-color: #566189;
        background-color: rgba(255, 255, 255, 0.5)!important;
    
    }
    :root[data-url="homepage"] .tw-reset .tw-text-gray-900 {
        color:#566189!important;
        font-size:1.5rem!important;
            
    }
    :root[data-url="homepage"] .tw-reset .tw-text-gray-500 {
        color:#566189!important;
        font-size:1rem!important;
    }

/*Header font size H1 on Mobile*/
@media (max-width:502px) {
    :root[data-url="homepage"] h1, :root[data-url="homepage"] .h1 {
        font-size:2.2em!important;
        text-shadow: 2px 2px 5px black!important;
    }
    :root[data-url="homepage"] h2, :root[data-url="homepage"] .h2 {
        font-size:2em!important;
    }
    :root[data-url="homepage"] .bannerWidget h3 {
        font-size: .9em!important;
        font-weight: bold!important;
        text-shadow: 2px 2px 5px black!important;

    }
    .badges-item {
        padding: 0 10px!important;
        max-width:100px!important;
    }
    :root[data-url="homepage"] h2, :root[data-url="homepage"] .h2 {
        font-size:2em!important;
    }
    :root[data-url="homepage"] .featuredProductsWidget section > div:first-child,:root[data-url="homepage"] .tw-reset .tw-object-cover {
        height:150px;
        overflow:hidden;
        vertical-align:middle;
    }
    :root[data-url="homepage"] .bannerWidget__cta {
        font-size: 16px!important;
        padding: 10px 20px!important;
    }
    /* About page banner */
    #bannerWidget94 .bannerWidget__innerContainer {
        padding:80px 5px 100px 5px;
    }
    #photoGalleryWidget--104 .photoGalleryWidget__photoList {
        grid-auto-rows: max-content;
        grid-template-columns: repeat(auto-fit, 100%);
    }
    /*Hide the collage separate from photo gallery on about page*/
    #pageWidget--110 {
        display:none;
    }
    /*The offerings fork image*/
    #imageWidget89 {
        margin: 30px 0px 0px 0px!important;
        overflow:hidden!important;
    }
    .imageWidget--89 img {
        max-width:120%!important;
    }
    /*reduce margin on banner widget on mobile*/
    .bannerWidget__innerContainer {
        padding-top: 50px  !important;
        padding-bottom: 50px  !important;
    }
}
/*Photo gallery on about page: hide last image on desktop */
@media (min-width:503px) {
    #photoGalleryWidget--104 .photoGalleryWidget__photoList > a:last-child {
        display:none;
    }
    /*The offerings fork image margin on mobile*/
    #imageWidget89 {
        margin-left:10vw!important;
    }
    
}
/*Make logo centered on tablets and smaller screens */
@media  (max-width:1218px) {
    .logo__img {
        display:inline!important;
    }
}


/*Dark Mode Color Adjustments*/
:root {
  color-scheme: light dark;
}
body, h1, h2, .h1, .h2 {
  color: light-dark(auto, #f6f1e4)!important;
  background-color: light-dark(auto, #223a2c)!important;
}
html[native-dark-active] .textWidget--84, html[native-dark-active] .textWidget--85, html[native-dark-active] .textWidget--86 , html[native-dark-active] .textWidget--84 h2, html[native-dark-active] .textWidget--85 h2, html[native-dark-active] .textWidget--86 h2 {
    --native-dark-font-color: black!important;
}
html[native-dark-active] .textWidget--77 h2 {
    --native-dark-font-color: white!important;
}
html[native-dark-active] .siteHeader {
        --native-dark-bg-color: #f6f1e4 !important;
        --native-dark-font-color: black!important;
        --native-dark-link-color:black !important;
        --native-dark-visited-link-color: black!important;
}
html[native-dark-active] .orderStatus, html[native-dark-active] .orderStatusBar  {
        --native-dark-font-color: white!important;
        --native-dark-link-color:white !important;
        --native-dark-visited-link-color: white!important;
}
html[native-dark-active] .badges-flex-container {
    display:none!important;
}
html[native-dark-active] #bannerWidget94  {
background-color: grey!important;
}


/* ===== ICON ROW (Farm / Market & Dinners / Pickup Spots) ===== */

.icon-row, 
.pageWidget__slot--half-width .tw-flex, 
.pageWidget__slot--half-width .tw-flex-col {
  display: flex !important;
  flex-direction: row !important; /* force horizontal layout */
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  gap: 40px !important; /* space between items */
  margin: 20px auto !important;
  flex-wrap: nowrap !important; /* don't wrap to stacked */
}

/* Each icon item */
.icon-row div, 
.pageWidget__slot--half-width .tw-flex > div {
  flex: 0 1 auto !important;
  text-align: center !important;
}

/* Icon images */
.icon-row img {
  max-width: 60px !important;
  height: auto !important;
  margin: 0 auto 8px auto !important;
}

/* Label text */
.icon-row span, 
.pageWidget__slot--half-width .tw-flex > div p {
  font-family: "Work Sans", sans-serif !important;
  font-size: 1.1em !important;
  color: #223a2c !important; /* dark green from brand palette */
}

/* Desktop size */
@media (min-width: 769px) {
  .icon-row {
    gap: 80px !important;
  }
  .icon-row img {
    max-width: 80px !important;
  }
  .icon-row span {
    font-size: 1.3em !important;
  }
}

/* Mobile size */
@media (max-width: 768px) {
  .icon-row {
    gap: 20px !important;
    margin: 15px auto !important;
  }
  .icon-row img {
    max-width: 40px !important;
  }
  .icon-row span {
    font-size: 0.9em !important;
  }
}


/* HERO TEXT FIX */
.hero-text {
  font-size: clamp(18px, 4vw, 28px); /* scales between mobile and desktop */
  line-height: 1.3;
  text-align: center;
  padding: 0 10px; /* keeps it from hitting screen edges */
  word-break: normal;
}

/* BUTTON FIX */
.hero-text .btn {
  font-size: 16px;
  padding: 10px 20px;
  margin-top: 12px;
}

/* FARM / MARKET / PICKUP ICONS FIX */
.icon-row {
  display: flex;
  justify-content: space-around;
  align-items: center;
  text-align: center;
  gap: 10px;
  padding: 15px 5px;
}

.icon-row .icon {
  flex: 1;
  min-width: 80px; /* ensures even spacing */
}

.icon-row img {
  max-width: 36px;
  margin-bottom: 6px;
}

.icon-row span {
  display: block;
  font-size: 14px;
  font-weight: 500;
}

/* MOBILE-SPECIFIC */
@media (max-width: 768px) {
  .hero-text {
    font-size: clamp(16px, 5vw, 22px);
    line-height: 1.4;
  }

  .icon-row {
    gap: 5px;
    padding: 10px;
  }

  .icon-row img {
    max-width: 30px;
  }

  .icon-row span {
    font-size: 13px;
  }
}
